From 837d6ded02d9c23a7e7310ab0c48e0def9ef2468 Mon Sep 17 00:00:00 2001 From: Kuba Orlik Date: Sun, 21 Sep 2025 20:47:54 +0200 Subject: [PATCH] Update sealgen --- package-lock.json | 349 ++++++++++++++++-- package.json | 11 +- src/back/app.ts | 2 - src/back/index.ts | 8 +- src/back/routes/admin/forms.admin-forms.css | 47 ++- src/back/routes/admin/forms.css | 151 ++++++++ src/back/routes/admin/pages/shared.ts | 7 +- src/back/routes/admin/password.form.ts | 7 +- .../routes/dev/simple-crud-test/index.page.ts | 66 ---- src/back/routes/login.form.ts | 4 +- src/back/routes/signIn.form.ts | 10 +- src/front/controllers.ts | 3 + src/main.css | 9 - .../simple-crud.test.ts/test-1.png | Bin 35120 -> 0 bytes .../simple-crud.test.ts/test-2.png | Bin 33720 -> 0 bytes .../simple-crud.test.ts/test-3.png | Bin 55059 -> 0 bytes .../tekst.test.ts/Tekst-component-1.png | Bin 44476 -> 0 bytes tests/simple-crud.test.ts | 15 - tests/tekst.test.ts | 16 - 19 files changed, 533 insertions(+), 172 deletions(-) create mode 100644 src/back/routes/admin/forms.css delete mode 100644 src/back/routes/dev/simple-crud-test/index.page.ts delete mode 100644 tests/__screenshots/simple-crud.test.ts/test-1.png delete mode 100644 tests/__screenshots/simple-crud.test.ts/test-2.png delete mode 100644 tests/__screenshots/simple-crud.test.ts/test-3.png delete mode 100644 tests/__screenshots/tekst.test.ts/Tekst-component-1.png delete mode 100644 tests/simple-crud.test.ts delete mode 100644 tests/tekst.test.ts diff --git a/package-lock.json b/package-lock.json index e037641..db6a6d7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,7 +17,7 @@ "@sealcode/file-manager": "^1.0.2", "@sealcode/jdd": "^0.8.0", "@sealcode/jdd-editor": "^0.2.1", - "@sealcode/sealgen": "^0.18.10", + "@sealcode/sealgen": "^0.19.0", "@sealcode/simplemde": "^1.12.1", "@sealcode/sortable": "^0.0.1", "@sealcode/ts-predicates": "^0.6.2", @@ -44,7 +44,7 @@ "nyc": "^17.1.0", "object-path": "^0.11.8", "qs": "^6.12.0", - "sealious": "^0.21.10", + "sealious": "^0.21.20", "slug": "^9.1.0", "stimulus": "^3.2.2", "tempstream": "^0.4.6", @@ -1366,6 +1366,85 @@ "node": ">= 18" } }, + "node_modules/@sealcode/crud-ui/node_modules/@sealcode/sealgen": { + "version": "0.18.10", + "resolved": "https://registry.npmjs.org/@sealcode/sealgen/-/sealgen-0.18.10.tgz", + "integrity": "sha512-Q+Wkeq01TFHXPM+LoRMbe9fqakSqgJnJxmjsw9Jzhm3dKBchTfj8BvRd1XWERWZZizCWmzkshLNoVx0kjyZ7rA==", + "license": "ISC", + "dependencies": { + "@koa/router": "^12.0.1", + "@sealcode/file-manager": "^1.0.2", + "@sealcode/ts-predicates": "^0.4.3", + "chokidar": "^3.6.0", + "colord": "^2.9.3", + "deepmerge": "^4.3.1", + "esbuild": "^0.20.0", + "escape-goat": "^4.0.0", + "fonsta": "^1.1.1", + "google-fonts-helper": "^3.4.1", + "husky": "^9.1.7", + "is-what": "^4.1.16", + "js-convert-case": "^4.2.0", + "json5": "^2.2.3", + "locreq": "^3.0.0", + "md5": "^2.3.0", + "merge": "^2.1.1", + "prettier": "^2.7.1", + "prompts": "^2.4.2", + "recursive-readdir": "^2.2.3", + "tempfile": "^5.0.0", + "tempstream": "^0.4.6", + "tiny-glob": "^0.2.9", + "wcag-contrast": "^3.0.0", + "ws": "^8.16.0", + "yargs": "^17.6.2" + }, + "bin": { + "sealgen": "lib/cli.js" + }, + "peerDependencies": { + "koa": "^2.13.0", + "koa-responsive-image-router": "^0.2.24", + "sealious": "^0.21" + } + }, + "node_modules/@sealcode/crud-ui/node_modules/@sealcode/sealgen/node_modules/@koa/router": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/@koa/router/-/router-12.0.2.tgz", + "integrity": "sha512-sYcHglGKTxGF+hQ6x67xDfkE9o+NhVlRHBqq6gLywaMc6CojK/5vFZByphdonKinYlMLkEkacm+HEse9HzwgTA==", + "license": "MIT", + "dependencies": { + "debug": "^4.3.4", + "http-errors": "^2.0.0", + "koa-compose": "^4.1.0", + "methods": "^1.1.2", + "path-to-regexp": "^6.3.0" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/@sealcode/crud-ui/node_modules/@sealcode/ts-predicates": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@sealcode/ts-predicates/-/ts-predicates-0.4.3.tgz", + "integrity": "sha512-UNSEacu7Ye8q0N8AJCJy37oJvv3w2OXKGkUnP7xO5lOY9DQviDPRDQhVaZdJ3/xMzXLm4UE3389ihctrPaov/A==", + "license": "ISC" + }, + "node_modules/@sealcode/crud-ui/node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "license": "MIT", + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, "node_modules/@sealcode/file-manager": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@sealcode/file-manager/-/file-manager-1.0.2.tgz", @@ -1435,34 +1514,11 @@ "node": ">= 18" } }, - "node_modules/@sealcode/jdd/node_modules/@sealcode/ts-predicates": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/@sealcode/ts-predicates/-/ts-predicates-0.5.3.tgz", - "integrity": "sha512-EZI7e8EY8gI1pw2bKdevjl+fBJbcSlpNkCZ8XoEOV3cHakPujiT6M4l775RDkfxJSbLX7jhOBkhgPNDfmCpZbg==" - }, - "node_modules/@sealcode/jdd/node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/@sealcode/sealcodemirror": { - "version": "5.70.0-beta5", - "resolved": "https://registry.npmjs.org/@sealcode/sealcodemirror/-/sealcodemirror-5.70.0-beta5.tgz", - "integrity": "sha512-pDsGlk2KokQkwzsJDBUWJFDRpEoxxth6TMQGDJyCTmWnd1Vn+cQb5moXDKaf7cXnWb9Y6QtdNX/fPzM/3RH2Cg==" - }, - "node_modules/@sealcode/sealgen": { + "node_modules/@sealcode/jdd-editor/node_modules/@sealcode/sealgen": { "version": "0.18.10", "resolved": "https://registry.npmjs.org/@sealcode/sealgen/-/sealgen-0.18.10.tgz", "integrity": "sha512-Q+Wkeq01TFHXPM+LoRMbe9fqakSqgJnJxmjsw9Jzhm3dKBchTfj8BvRd1XWERWZZizCWmzkshLNoVx0kjyZ7rA==", + "license": "ISC", "dependencies": { "@koa/router": "^12.0.1", "@sealcode/file-manager": "^1.0.2", @@ -1500,6 +1556,110 @@ "sealious": "^0.21" } }, + "node_modules/@sealcode/jdd-editor/node_modules/@sealcode/sealgen/node_modules/@koa/router": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/@koa/router/-/router-12.0.2.tgz", + "integrity": "sha512-sYcHglGKTxGF+hQ6x67xDfkE9o+NhVlRHBqq6gLywaMc6CojK/5vFZByphdonKinYlMLkEkacm+HEse9HzwgTA==", + "license": "MIT", + "dependencies": { + "debug": "^4.3.4", + "http-errors": "^2.0.0", + "koa-compose": "^4.1.0", + "methods": "^1.1.2", + "path-to-regexp": "^6.3.0" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/@sealcode/jdd-editor/node_modules/@sealcode/ts-predicates": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@sealcode/ts-predicates/-/ts-predicates-0.4.3.tgz", + "integrity": "sha512-UNSEacu7Ye8q0N8AJCJy37oJvv3w2OXKGkUnP7xO5lOY9DQviDPRDQhVaZdJ3/xMzXLm4UE3389ihctrPaov/A==", + "license": "ISC" + }, + "node_modules/@sealcode/jdd-editor/node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "license": "MIT", + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/@sealcode/jdd/node_modules/@sealcode/ts-predicates": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/@sealcode/ts-predicates/-/ts-predicates-0.5.3.tgz", + "integrity": "sha512-EZI7e8EY8gI1pw2bKdevjl+fBJbcSlpNkCZ8XoEOV3cHakPujiT6M4l775RDkfxJSbLX7jhOBkhgPNDfmCpZbg==" + }, + "node_modules/@sealcode/jdd/node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/@sealcode/sealcodemirror": { + "version": "5.70.0-beta5", + "resolved": "https://registry.npmjs.org/@sealcode/sealcodemirror/-/sealcodemirror-5.70.0-beta5.tgz", + "integrity": "sha512-pDsGlk2KokQkwzsJDBUWJFDRpEoxxth6TMQGDJyCTmWnd1Vn+cQb5moXDKaf7cXnWb9Y6QtdNX/fPzM/3RH2Cg==" + }, + "node_modules/@sealcode/sealgen": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/@sealcode/sealgen/-/sealgen-0.19.0.tgz", + "integrity": "sha512-fnHg/1b+w4E0G4VUSk+Qh+rsHneh1F9LSXZBnQW3fF1+WdSUWgeaVMqUPpN6CXNmze1k7dMWQIjdXAS/AYgpFA==", + "license": "ISC", + "dependencies": { + "@koa/router": "^12.0.1", + "@sealcode/file-manager": "^1.0.2", + "@sealcode/ts-predicates": "^0.4.3", + "chokidar": "^3.6.0", + "colord": "^2.9.3", + "deepmerge": "^4.3.1", + "esbuild": "^0.20.0", + "escape-goat": "^4.0.0", + "fonsta": "^1.1.1", + "google-fonts-helper": "^3.4.1", + "husky": "^9.1.7", + "is-what": "^4.1.16", + "js-convert-case": "^4.2.0", + "json5": "^2.2.3", + "locreq": "^3.0.0", + "md5": "^2.3.0", + "merge": "^2.1.1", + "prettier": "^2.7.1", + "prompts": "^2.4.2", + "recursive-readdir": "^2.2.3", + "tempfile": "^5.0.0", + "tempstream": "^0.4.6", + "tiny-glob": "^0.2.9", + "wcag-contrast": "^3.0.0", + "ws": "^8.16.0", + "yargs": "^17.6.2" + }, + "bin": { + "sealgen": "lib/cli.js" + }, + "peerDependencies": { + "koa": "^2.13.0", + "koa-responsive-image-router": "^0.2.24", + "sealious": "^0.21", + "stimulus": "^3.2.2" + } + }, "node_modules/@sealcode/sealgen/node_modules/@sealcode/ts-predicates": { "version": "0.4.3", "resolved": "https://registry.npmjs.org/@sealcode/ts-predicates/-/ts-predicates-0.4.3.tgz", @@ -12066,9 +12226,9 @@ "peer": true }, "node_modules/sealious": { - "version": "0.21.10", - "resolved": "https://registry.npmjs.org/sealious/-/sealious-0.21.10.tgz", - "integrity": "sha512-T154pqrpj9KWjFPoiTut1nCcgi45xTfQztCMJ6UIuUFU4uBA2y5bdO4BFpjGLukeA8vYJXJlcTao+fHDuCBx3Q==", + "version": "0.21.20", + "resolved": "https://registry.npmjs.org/sealious/-/sealious-0.21.20.tgz", + "integrity": "sha512-O4ac6jHkL3tP8UcN/3ybmOHMSo17IRaAFt5/FDixw+6upcQw8QeXuQgf7DR8gKdmNbNCiWLjqGoksw6GeQFWgg==", "dependencies": { "@koa/router": "^12.0.1", "@sealcode/file-manager": "^1.0.1", @@ -12124,6 +12284,9 @@ }, "engines": { "node": ">=21.0" + }, + "peerDependencies": { + "koa-responsive-image-router": "^0.2.37" } }, "node_modules/sealious/node_modules/@sealcode/ts-predicates": { @@ -15941,6 +16104,63 @@ "koa-compose": "^4.1.0", "path-to-regexp": "^6.3.0" } + }, + "@sealcode/sealgen": { + "version": "0.18.10", + "resolved": "https://registry.npmjs.org/@sealcode/sealgen/-/sealgen-0.18.10.tgz", + "integrity": "sha512-Q+Wkeq01TFHXPM+LoRMbe9fqakSqgJnJxmjsw9Jzhm3dKBchTfj8BvRd1XWERWZZizCWmzkshLNoVx0kjyZ7rA==", + "requires": { + "@koa/router": "^12.0.1", + "@sealcode/file-manager": "^1.0.2", + "@sealcode/ts-predicates": "^0.4.3", + "chokidar": "^3.6.0", + "colord": "^2.9.3", + "deepmerge": "^4.3.1", + "esbuild": "^0.20.0", + "escape-goat": "^4.0.0", + "fonsta": "^1.1.1", + "google-fonts-helper": "^3.4.1", + "husky": "^9.1.7", + "is-what": "^4.1.16", + "js-convert-case": "^4.2.0", + "json5": "^2.2.3", + "locreq": "^3.0.0", + "md5": "^2.3.0", + "merge": "^2.1.1", + "prettier": "^2.7.1", + "prompts": "^2.4.2", + "recursive-readdir": "^2.2.3", + "tempfile": "^5.0.0", + "tempstream": "^0.4.6", + "tiny-glob": "^0.2.9", + "wcag-contrast": "^3.0.0", + "ws": "^8.16.0", + "yargs": "^17.6.2" + }, + "dependencies": { + "@koa/router": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/@koa/router/-/router-12.0.2.tgz", + "integrity": "sha512-sYcHglGKTxGF+hQ6x67xDfkE9o+NhVlRHBqq6gLywaMc6CojK/5vFZByphdonKinYlMLkEkacm+HEse9HzwgTA==", + "requires": { + "debug": "^4.3.4", + "http-errors": "^2.0.0", + "koa-compose": "^4.1.0", + "methods": "^1.1.2", + "path-to-regexp": "^6.3.0" + } + } + } + }, + "@sealcode/ts-predicates": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@sealcode/ts-predicates/-/ts-predicates-0.4.3.tgz", + "integrity": "sha512-UNSEacu7Ye8q0N8AJCJy37oJvv3w2OXKGkUnP7xO5lOY9DQviDPRDQhVaZdJ3/xMzXLm4UE3389ihctrPaov/A==" + }, + "prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==" } } }, @@ -16018,6 +16238,63 @@ "koa-compose": "^4.1.0", "path-to-regexp": "^6.3.0" } + }, + "@sealcode/sealgen": { + "version": "0.18.10", + "resolved": "https://registry.npmjs.org/@sealcode/sealgen/-/sealgen-0.18.10.tgz", + "integrity": "sha512-Q+Wkeq01TFHXPM+LoRMbe9fqakSqgJnJxmjsw9Jzhm3dKBchTfj8BvRd1XWERWZZizCWmzkshLNoVx0kjyZ7rA==", + "requires": { + "@koa/router": "^12.0.1", + "@sealcode/file-manager": "^1.0.2", + "@sealcode/ts-predicates": "^0.4.3", + "chokidar": "^3.6.0", + "colord": "^2.9.3", + "deepmerge": "^4.3.1", + "esbuild": "^0.20.0", + "escape-goat": "^4.0.0", + "fonsta": "^1.1.1", + "google-fonts-helper": "^3.4.1", + "husky": "^9.1.7", + "is-what": "^4.1.16", + "js-convert-case": "^4.2.0", + "json5": "^2.2.3", + "locreq": "^3.0.0", + "md5": "^2.3.0", + "merge": "^2.1.1", + "prettier": "^2.7.1", + "prompts": "^2.4.2", + "recursive-readdir": "^2.2.3", + "tempfile": "^5.0.0", + "tempstream": "^0.4.6", + "tiny-glob": "^0.2.9", + "wcag-contrast": "^3.0.0", + "ws": "^8.16.0", + "yargs": "^17.6.2" + }, + "dependencies": { + "@koa/router": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/@koa/router/-/router-12.0.2.tgz", + "integrity": "sha512-sYcHglGKTxGF+hQ6x67xDfkE9o+NhVlRHBqq6gLywaMc6CojK/5vFZByphdonKinYlMLkEkacm+HEse9HzwgTA==", + "requires": { + "debug": "^4.3.4", + "http-errors": "^2.0.0", + "koa-compose": "^4.1.0", + "methods": "^1.1.2", + "path-to-regexp": "^6.3.0" + } + } + } + }, + "@sealcode/ts-predicates": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@sealcode/ts-predicates/-/ts-predicates-0.4.3.tgz", + "integrity": "sha512-UNSEacu7Ye8q0N8AJCJy37oJvv3w2OXKGkUnP7xO5lOY9DQviDPRDQhVaZdJ3/xMzXLm4UE3389ihctrPaov/A==" + }, + "prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==" } } }, @@ -16027,9 +16304,9 @@ "integrity": "sha512-pDsGlk2KokQkwzsJDBUWJFDRpEoxxth6TMQGDJyCTmWnd1Vn+cQb5moXDKaf7cXnWb9Y6QtdNX/fPzM/3RH2Cg==" }, "@sealcode/sealgen": { - "version": "0.18.10", - "resolved": "https://registry.npmjs.org/@sealcode/sealgen/-/sealgen-0.18.10.tgz", - "integrity": "sha512-Q+Wkeq01TFHXPM+LoRMbe9fqakSqgJnJxmjsw9Jzhm3dKBchTfj8BvRd1XWERWZZizCWmzkshLNoVx0kjyZ7rA==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/@sealcode/sealgen/-/sealgen-0.19.0.tgz", + "integrity": "sha512-fnHg/1b+w4E0G4VUSk+Qh+rsHneh1F9LSXZBnQW3fF1+WdSUWgeaVMqUPpN6CXNmze1k7dMWQIjdXAS/AYgpFA==", "requires": { "@koa/router": "^12.0.1", "@sealcode/file-manager": "^1.0.2", @@ -23966,9 +24243,9 @@ } }, "sealious": { - "version": "0.21.10", - "resolved": "https://registry.npmjs.org/sealious/-/sealious-0.21.10.tgz", - "integrity": "sha512-T154pqrpj9KWjFPoiTut1nCcgi45xTfQztCMJ6UIuUFU4uBA2y5bdO4BFpjGLukeA8vYJXJlcTao+fHDuCBx3Q==", + "version": "0.21.20", + "resolved": "https://registry.npmjs.org/sealious/-/sealious-0.21.20.tgz", + "integrity": "sha512-O4ac6jHkL3tP8UcN/3ybmOHMSo17IRaAFt5/FDixw+6upcQw8QeXuQgf7DR8gKdmNbNCiWLjqGoksw6GeQFWgg==", "requires": { "@koa/router": "^12.0.1", "@sealcode/file-manager": "^1.0.1", diff --git a/package.json b/package.json index a218917..ea2d2d9 100644 --- a/package.json +++ b/package.json @@ -45,13 +45,18 @@ ], "controllerDirs": [ "node_modules/@sealcode/jdd-editor/src/controllers", - "node_modules/@sealcode/sortable/src/controllers" + "node_modules/@sealcode/sortable/src/controllers", + "node_modules/@sealcode/sealgen/src/controllers" ], "copyToPublic": [ { "from": "node_modules/@sealcode/jdd-editor/assets/icons", "to": "dist/jdd-page/icons" }, + { + "from": "node_modules/@sealcode/sealgen/assets", + "to": "dist/sealgen" + }, { "from": "node_modules/@sealcode/simplemde/dist/simplemde.min.css", "to": "dist/simplemde.min.css" @@ -85,7 +90,7 @@ "@sealcode/file-manager": "^1.0.2", "@sealcode/jdd": "^0.8.0", "@sealcode/jdd-editor": "^0.2.1", - "@sealcode/sealgen": "^0.18.10", + "@sealcode/sealgen": "^0.19.0", "@sealcode/simplemde": "^1.12.1", "@sealcode/sortable": "^0.0.1", "@sealcode/ts-predicates": "^0.6.2", @@ -112,7 +117,7 @@ "nyc": "^17.1.0", "object-path": "^0.11.8", "qs": "^6.12.0", - "sealious": "^0.21.10", + "sealious": "^0.21.20", "slug": "^9.1.0", "stimulus": "^3.2.2", "tempstream": "^0.4.6", diff --git a/src/back/app.ts b/src/back/app.ts index bebfe36..80c9c16 100644 --- a/src/back/app.ts +++ b/src/back/app.ts @@ -16,7 +16,6 @@ import { MONGO_PORT, MONGO_USERNAME, PORT, - UPLOADS_FS_DIR, } from "./config.js"; import ADMIN_CREDENTIALS from "./default-admin-credentials.js"; import { TheFileManager } from "./file-manager.js"; @@ -53,7 +52,6 @@ declare module "@sealcode/sealgen" { export default class TheApp extends App { FileManager = TheFileManager; config = { - upload_path: UPLOADS_FS_DIR, datastore_mongo: { host: MONGO_HOST, port: MONGO_PORT, diff --git a/src/back/index.ts b/src/back/index.ts index 5f7bb43..992ad74 100644 --- a/src/back/index.ts +++ b/src/back/index.ts @@ -8,7 +8,13 @@ import TheApp from "./app.js"; import { PORT, SEALIOUS_KILLSWITCH_PORT, SEALIOUS_SANITY } from "./config.js"; import { mainRouter } from "./routes/index.js"; import { waitForMeilisearch } from "./services/meilisearch.js"; -export const the_app = new TheApp(); +import { TheFileManager } from "./file-manager.js"; +import { imageRouter } from "./image-router.js"; + +export const the_app = new TheApp({ + fileManager: TheFileManager, + imageRouter: imageRouter, +}); void (async function () { await kill(PORT); diff --git a/src/back/routes/admin/forms.admin-forms.css b/src/back/routes/admin/forms.admin-forms.css index 0132571..ced526b 100644 --- a/src/back/routes/admin/forms.admin-forms.css +++ b/src/back/routes/admin/forms.admin-forms.css @@ -4,13 +4,16 @@ padding: 10px; background-color: color-mix(in srgb, var(--color) 10%, white); color: color-mix(in srgb, var(--color) 31%, black); - animation: notification-pop 400ms; + animation: form-message 400ms; animation-timing-function: cubic-bezier(0.68, -0.55, 0.27, 1.55); } body:not(*:has(.jdd-container)) .form-container { + container-type: inline-size; + label { font-weight: bold; + font-size: 16px; } .form-input .form-input label { @@ -20,16 +23,31 @@ body:not(*:has(.jdd-container)) .form-container { .form { display: grid; grid-template-columns: 1fr 1fr; + --column-count: 2; + + @container (max-width: 900px) { + grid-template-columns: 1fr; + --column-count: 1; + } + grid-auto-flow: dense; gap: 8px; max-width: 1224px; margin: 0 auto; .form-messages { - grid-column: span 2; + grid-column: span var(--column-count); position: sticky; top: 16px; z-index: 3; + display: flex; + flex-flow: column; + gap: 8px; + + .form-message { + display: inline-block; + align-self: center; + } } & > .form-input__wrapper { @@ -44,7 +62,7 @@ body:not(*:has(.jdd-container)) .form-container { } & > h2 { - grid-column: span 2; + grid-column: span var(--column-count); font-family: var(--font-sans-serif); color: var(--color-brand-text-fg); font-size: 36px; @@ -54,7 +72,7 @@ body:not(*:has(.jdd-container)) .form-container { input[type="submit"] { background-color: var(--color-brand-accent); color: white; - grid-column: span 2; + grid-column: span var(--column-count); border-radius: 10px; height: 40px; border: none; @@ -81,7 +99,10 @@ body:not(*:has(.jdd-container)) .form-container { .form-input__wrapper--text, .form-input__wrapper--type__date, + .form-input__wrapper--type__datetime-local, .form-input__wrapper--type__number, + .form-input__wrapper--enum, + .form-input--type-simple-input, .form-input__wrapper--type__password { display: flex; flex-flow: row nowrap; @@ -99,13 +120,25 @@ body:not(*:has(.jdd-container)) .form-container { var(--color-brand-accent) 50%, transparent ); - height: 33px; - padding: 08px; + box-sizing: border-box; + height: 50px; + padding: 8px; flex-grow: 1; background-color: hsl(13.8, 40%, 100%); } } + .form-input__wrapper--file:not(.form-input__wrapper--control-type__photo) { + grid-row: span 2; + display: grid; + grid-template-columns: min-content 1fr; + grid-template-rows: min-content min-content; + + & > label { + grid-row: 1/3; + } + } + .form-input--type-checkboxed-list, .form-input__wrapper--type--table { ul { @@ -142,7 +175,7 @@ body:not(*:has(.jdd-container)) .form-container { .form-input__wrapper--title, .form-input__wrapper--subtitle, .form-input:has(textarea) { - grid-column: span 2; + grid-column: span var(--column-count); } } } diff --git a/src/back/routes/admin/forms.css b/src/back/routes/admin/forms.css new file mode 100644 index 0000000..601166e --- /dev/null +++ b/src/back/routes/admin/forms.css @@ -0,0 +1,151 @@ +@keyframes form-message { + from { + opacity: 0; + transform: scale(0.5); + } + + to { + opacity: 1; + transform: scale(1); + } +} + +.file-list-item { + display: flex; + flex-flow: row; + + form { + padding-left: 20px; + } +} + +.form-message { + --color: black; + border: 1px solid var(--color); + border-radius: 5px; + padding: 10px; + animation: form-message 200ms; + box-shadow: 3px 3px 0px 0px #00000038; +} + +.form-message--error { + --color: var(--color-basic-red); + + &::before { + content: "❌"; + margin-right: 8px; + } +} + +.form-message--success { + --color: var(--color-basic-green); + + &::before { + content: "✅"; + margin-right: 8px; + } +} + +.form__error { + color: var(--color-basic-red); +} + +.form-input--type-simple-input { + display: flex; + align-items: center; + gap: 8px; +} + +.form-input__wrapper--checkbox { + display: flex; + flex-flow: row nowrap; + align-items: center; + + & > input[type="checkbox"] { + width: 15px; + height: 15px; + + + label { + padding-left: 10px; + } + } +} + +.form-input__wrapper--multiple-files--photos { + ul { + list-style: none; + display: grid; + grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); + grid-gap: 10px; + margin-bottom: 20px; + + li { + background-color: white; + box-shadow: 1px 1px 6px 0px #00000038; + padding: 10px; + display: grid; + grid-template-columns: 1fr 20px; + grid-template-rows: 20px auto min-content; + grid-row-gap: 10px; + + a { + grid-row: 1/3; + grid-column: 1/3; + + picture, + img { + width: 100%; + height: 150px; + object-fit: contain; + } + } + + .filename { + grid-row: 3/4; + grid-column: 1/3; + } + + form { + grid-row: 1/2; + grid-column: 2/3; + position: relative; + z-index: 2; + } + } + } +} + +.form { + .file_preview__icon { + display: flex; + flex-flow: row; + align-items: center; + + a { + word-wrap: anywhere; + text-align: center; + color: var(--color-brand-text-accent2); + } + + picture { + display: grid; + grid-template-columns: 1fr; + grid-template-rows: 1.3fr 1fr 1fr; + + img { + grid-row: 1/4; + grid-column: 1/2; + } + + .file_preview__icon__extension { + text-transform: uppercase; + color: var(--color-brand-accent2); + font-weight: bold; + grid-row: 2/3; + grid-column: 1/2; + text-align: center; + margin: auto; + } + } + } +} diff --git a/src/back/routes/admin/pages/shared.ts b/src/back/routes/admin/pages/shared.ts index 0ef10bf..eac78cf 100644 --- a/src/back/routes/admin/pages/shared.ts +++ b/src/back/routes/admin/pages/shared.ts @@ -1,9 +1,6 @@ import { Controls, Fields } from "@sealcode/sealgen"; import { Pages } from "../../../collections/collections.js"; -import { imageRouter } from "../../../image-router.js"; -import { TheFileManager } from "../../../file-manager.js"; - export const PagesFormFields = { url: new Fields.CollectionField(Pages.fields.url.required, Pages.fields.url), domain: new Fields.CollectionField(Pages.fields.domain.required, Pages.fields.domain), @@ -16,7 +13,7 @@ export const PagesFormFields = { Pages.fields.description.required, Pages.fields.description ), - imageForMetadata: new Fields.File(false, TheFileManager), + imageForMetadata: new Fields.File(false), hideNavigation: new Fields.Boolean(Pages.fields.hideNavigation.required), }; @@ -26,7 +23,7 @@ export const PagesFormControls = [ new Controls.SimpleInput(PagesFormFields.title, { label: "title" }), new Controls.SimpleInput(PagesFormFields.heading, { label: "heading" }), new Controls.SimpleInput(PagesFormFields.description, { label: "description" }), - new Controls.Photo(PagesFormFields.imageForMetadata, imageRouter, { + new Controls.Image(PagesFormFields.imageForMetadata, { label: "imageForMetadata", }), new Controls.Checkbox(PagesFormFields.hideNavigation, { label: "hideNavigation" }), diff --git a/src/back/routes/admin/password.form.ts b/src/back/routes/admin/password.form.ts index aaa6dbd..0577761 100644 --- a/src/back/routes/admin/password.form.ts +++ b/src/back/routes/admin/password.form.ts @@ -9,7 +9,7 @@ import { AdminURL } from "../urls.js"; export const actionName = "ResetPassword"; const fields = { - password: new Fields.SimpleFormField(true), + password: new Fields.Password(true), }; export const ResetPasswordShape = fieldsToShape(fields); @@ -20,10 +20,7 @@ export default new (class ResetPasswordForm extends Form { controls = [ new Controls.HTML("decoration", /* HTML */ `

Change password

`), - new Controls.SimpleInput(fields.password, { - label: "Password:", - type: "password", - }), + fields.password.getControl(), ]; async onSubmit(ctx: Context) { diff --git a/src/back/routes/dev/simple-crud-test/index.page.ts b/src/back/routes/dev/simple-crud-test/index.page.ts deleted file mode 100644 index 1ef2e59..0000000 --- a/src/back/routes/dev/simple-crud-test/index.page.ts +++ /dev/null @@ -1,66 +0,0 @@ -import { CRUD } from "@sealcode/crud-ui"; -import type { CollectionItem } from "sealious"; -import type { ListFilterRender } from "@sealcode/sealgen"; -import { Controls, DefaultListFilters, Fields } from "@sealcode/sealgen"; -import { NavbarLinks } from "src/back/collections/collections.js"; -import html from "src/back/html.js"; - -export const actionName = "NavbarLinksCRUD"; - -const edit_fields = { - label: new Fields.CollectionField( - NavbarLinks.fields.label.required, - NavbarLinks.fields.label - ), - href: new Fields.CollectionField( - NavbarLinks.fields.href.required, - NavbarLinks.fields.href - ), -}; - -const edit_controls = [ - new Controls.SimpleInput(edit_fields.label, { label: "label" }), - new Controls.SimpleInput(edit_fields.href, { label: "href" }), -]; - -// eslint-disable-next-line @typescript-eslint/consistent-type-assertions -const fields_for_display = [ - { field: "label", label: "label" }, - { field: "href", label: "href" }, -] as { - field: keyof (typeof NavbarLinks)["fields"]; - label: string; - format?: ( - value: unknown, - item: CollectionItem - ) => string | Promise; -}[]; - -// eslint-disable-next-line @typescript-eslint/consistent-type-assertions -const fields_for_filters = [ - { field: "label", ...DefaultListFilters["text"] }, - { field: "href", ...DefaultListFilters["text"] }, -] as { - field: keyof (typeof NavbarLinks)["fields"]; - render?: ListFilterRender; - prepareValue?: (filter_value: unknown) => unknown; // set this function to change what filter value is passed to Sealious -}[]; - -export default new CRUD({ - collection: NavbarLinks, - nice_collection_name: "NavbarLinks", - fields_for_display, - fields_for_filters, - html, - list_title: "NavbarLinks list", - edit_title: "Edit", - edit_button_text: "Edit", - delete_button_text: "Delete", - back_to_list_button_text: "← Back to NavbarLinks list", - edit_fields, - edit_controls, - form_value_to_sealious_value: {}, - sealious_value_to_form_value: {}, - post_edit: async () => {}, - post_create: async () => {}, -}); diff --git a/src/back/routes/login.form.ts b/src/back/routes/login.form.ts index 708bec6..f6fad9d 100644 --- a/src/back/routes/login.form.ts +++ b/src/back/routes/login.form.ts @@ -11,8 +11,8 @@ import { AdminURL } from "./urls.js"; export const actionName = "Login"; const fields = { - username: new Fields.SimpleFormField(true), - password: new Fields.SimpleFormField(true), + username: new Fields.Text(true), + password: new Fields.Text(true), }; export const LoginShape = fieldsToShape(fields); diff --git a/src/back/routes/signIn.form.ts b/src/back/routes/signIn.form.ts index a883f66..87fc26c 100644 --- a/src/back/routes/signIn.form.ts +++ b/src/back/routes/signIn.form.ts @@ -1,6 +1,5 @@ import type { Context } from "koa"; import { Form, Fields, Controls, fieldsToShape } from "@sealcode/sealgen"; -import type { FlatTemplatable } from "tempstream"; import { tempstream } from "tempstream"; import { Users } from "../collections/collections.js"; import html from "../html.js"; @@ -10,12 +9,13 @@ import type { FormReaction, } from "@sealcode/sealgen/@types/forms/form-types.js"; import type { PageErrorMessage } from "@sealcode/sealgen/@types/page/mountable-with-fields.js"; +import type { Readable } from "stream"; export const actionName = "SignIn"; const fields = { - username: new Fields.SimpleFormField(true), - password: new Fields.SimpleFormField(true), + username: new Fields.TextBasedSimpleField(true), + password: new Fields.TextBasedSimpleField(true), }; export const SignInShape = fieldsToShape(fields); @@ -36,7 +36,7 @@ export default new (class SignInForm extends Form { ctx: Context, data: Record ): Promise<{ valid: boolean; error: string }> { - const { parsed: username } = await this.fields.username.getValue(ctx, data); + const { parsed: username } = await this.fields.username.getParsedValue(ctx, data); const filter: object = typeof username === "string" ? { username } : {}; @@ -108,7 +108,7 @@ export default new (class SignInForm extends Form { return; } - async renderError(ctx: Context, error: PageErrorMessage): Promise { + async renderError(ctx: Context, error: PageErrorMessage): Promise { return html({ ctx, title: "SignIn", description: "", body: `${error.message}` }); } diff --git a/src/front/controllers.ts b/src/front/controllers.ts index 19c4083..687c92f 100644 --- a/src/front/controllers.ts +++ b/src/front/controllers.ts @@ -49,6 +49,9 @@ application.register("submit-on-input", SubmitOnInput); import { default as Toast } from "./../../node_modules/@sealcode/jdd-editor/src/controllers/toast.stimulus.js"; application.register("toast", Toast); +import { default as TableAddButton } from "./../../node_modules/@sealcode/sealgen/src/controllers/table-add-button.stimulus.js"; +application.register("table-add-button", TableAddButton); + import { default as Sortable } from "./../../node_modules/@sealcode/sortable/src/controllers/sortable.stimulus.js"; application.register("sortable", Sortable); diff --git a/src/main.css b/src/main.css index b692f5f..75a0e91 100644 --- a/src/main.css +++ b/src/main.css @@ -39,15 +39,6 @@ nav { } } -.form-input__wrapper--control-type__photo { - display: flex; - flex-flow: row wrap; - - label { - width: 100%; - } -} - body.jdd-editor { margin: 0 !important; padding: 0 !important; diff --git a/tests/__screenshots/simple-crud.test.ts/test-1.png b/tests/__screenshots/simple-crud.test.ts/test-1.png deleted file mode 100644 index 7989b23440ff333e80d1f8ee5abb9d40f50e371e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35120 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 R0hbmrc)I$ztaD0e0s!_l*N*@I diff --git a/tests/__screenshots/simple-crud.test.ts/test-2.png b/tests/__screenshots/simple-crud.test.ts/test-2.png deleted file mode 100644 index 96a4823b4c6e81518864811d648f3f46244c6af7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33720 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 ocY^w({`>We?l0M=Er0)i0EZmjRsaA1 diff --git a/tests/__screenshots/simple-crud.test.ts/test-3.png b/tests/__screenshots/simple-crud.test.ts/test-3.png deleted file mode 100644 index f4a61745d1ef0f16728b3db6ee8634ea016261d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55059 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 I6BdF024mXM2mk;8 diff --git a/tests/__screenshots/tekst.test.ts/Tekst-component-1.png b/tests/__screenshots/tekst.test.ts/Tekst-component-1.png deleted file mode 100644 index b078b09ea5be49e38bd406e870eff492c45cb540..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44476 zcmeFZ^2kw3EYwvws>so7VLR6JyNiWe}f*^?WncQPF2*L;d#pxv? z0RQy(PP~91X6V`DhZ-J+D--yM8gr+un@sEs{c^X6aQ=EDFQ@SAF2UU;#C5R}x?}Xm z0K@Co6d%cdzWSDPg2kYJV(#ov;-qJC)a3WdO7~hKe~NQ4ubX>!;GX-Bk@i}NXB3eT76Ksy7QhzSxkoPOo=5yBy2hJ%lTXVWSEr^Gr*(HNI3Y9-opF5PTwwVV(9s+sf{-pyZ7-gU2`0w*nwPr zd{@304(@=bhJ!@*^6Eo33ip|2QXGm%IR5%~ii_7A>2PXkCi9;VU&kRJ48Vgg+6p9p z`Y!+)NCNnb7q(`VI7i67MXKufa4^A|MH_~m=qWFZvv+?d->Kiyg%dl7} ze?P6-|KA&wach?_58Y(`90awNQON0jdpMP&cIDss%FzbMnHcNhBIQ_8aF=%QE)U%b zhxn{`#5mqxyhz3~=CN;YNz|!e#AIjVd(el${4hp;D{FGMr~ihY{8BY3ES>xGN|A+8 zMid;EsUwCrg;T-{s(tyA?IN&9VH_dI<*z0WJb2^hw3`>n%5{1rHztLOWn&Y$ zP7J-WWKO<_5z*}c>B=XeRGF6`M0e_6NF%>EE`?~W2;bwqeaYM6zk;Kau z42;((m`&6wIc-d{ObsTzza1kzS)cvODmyB=ygTnFV(oL5`RA%fp};`oG=@-08H&9YLmTy&xdZR?;8j+EcIgW;`UkOQW^&&tF�o99l)pO7V$F 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 diff --git a/tests/simple-crud.test.ts b/tests/simple-crud.test.ts deleted file mode 100644 index 3193f01..0000000 --- a/tests/simple-crud.test.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { test, expect } from "./backend-fixture"; - -test("test", async ({ page, backend }) => { - await page.goto(`${backend.url}/dev/simple-crud-test/`); - await expect(page).toHaveScreenshot(); - await page.getByRole("link", { name: "Create" }).click(); - await expect(page).toHaveScreenshot(); - await page.getByRole("textbox", { name: "label" }).click(); - await page.getByRole("textbox", { name: "label" }).fill("navbar from simple crud"); - await page.getByRole("textbox", { name: "label" }).press("Tab"); - await page.getByRole("textbox", { name: "href" }).fill("/"); - await page.getByRole("button", { name: "Wyślij" }).click(); - await page.getByRole("link", { name: "navbar from simple crud" }).click(); - await expect(page).toHaveScreenshot(); -}); diff --git a/tests/tekst.test.ts b/tests/tekst.test.ts deleted file mode 100644 index ea0d931..0000000 --- a/tests/tekst.test.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { test, expect } from "./backend-fixture.js"; -import { setTimeout as sleep } from "node:timers/promises"; - -test("Tekst component", async ({ page, backend, setMarkdownValue }) => { - await page.goto(`${backend.url}/components`); - await page.waitForFunction(() => typeof (window as any).CodeMirror !== "undefined"); - await sleep(5000); - await page.locator('select[name="component"]').selectOption("tekst"); - await page - .locator(`select[name="$[components][0][args][color]"]`) - .selectOption("accent"); - await setMarkdownValue(`$[components][0][args][content]`, "Hamster, a dentist"); - - await page.getByRole("button", { name: "Preview" }).click(); - await expect(page).toHaveScreenshot(); -});