@sealcode/sealgen 0.8.43 → 0.8.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.js +1 -1
- package/.mocharc.js +10 -0
- package/.nyc_output/00b15432-2e8d-4b16-9dd6-7e23314363c9.json +1 -0
- package/.nyc_output/0190dc00-d309-48d0-a5db-e9484e3c7334.json +1 -0
- package/.nyc_output/04bfea78-9274-4d35-b7e4-d0bf42636911.json +1 -0
- package/.nyc_output/0d4efe84-14e0-4bf0-bf22-b95472fe2be4.json +1 -0
- package/.nyc_output/1faea508-9cb4-46f4-b7ad-94a816e1ee7d.json +1 -0
- package/.nyc_output/2b2df469-dc31-48c9-ab34-68a74266e2c2.json +1 -0
- package/.nyc_output/32b5e63b-c8f8-4d9d-a09b-d97656c0e3f6.json +1 -0
- package/.nyc_output/442ce939-4f43-496b-a8a9-2f1fb9cfa619.json +1 -0
- package/.nyc_output/4573bb03-90d4-4408-ba15-b6835c618b33.json +1 -0
- package/.nyc_output/468fbd9c-6a27-4e33-8423-dbaec01e62a9.json +1 -0
- package/.nyc_output/51894388-b88d-4f0b-8d5b-4a1dd71cf668.json +1 -0
- package/.nyc_output/56263b22-3ed5-4ce2-9bbb-f2c9575cdeee.json +1 -0
- package/.nyc_output/6934a9dd-6431-48aa-93f1-4eeef0095773.json +1 -0
- package/.nyc_output/70979008-f285-481b-bb09-ca48a1376f81.json +1 -0
- package/.nyc_output/817c9485-a0ef-486d-8dee-906456fe77fb.json +1 -0
- package/.nyc_output/9f725153-f783-4948-81d3-c4cc792738bf.json +1 -0
- package/.nyc_output/cd4d852c-f8fc-4cb1-807b-7d053a0ef8fc.json +1 -0
- package/.nyc_output/ec3011f0-8180-492e-8d85-4d92484ccb44.json +1 -0
- package/.nyc_output/f78b831a-65ca-497d-9f9e-001a3efa6f54.json +1 -0
- package/.nyc_output/processinfo/00b15432-2e8d-4b16-9dd6-7e23314363c9.json +1 -0
- package/.nyc_output/processinfo/0190dc00-d309-48d0-a5db-e9484e3c7334.json +1 -0
- package/.nyc_output/processinfo/04bfea78-9274-4d35-b7e4-d0bf42636911.json +1 -0
- package/.nyc_output/processinfo/0d4efe84-14e0-4bf0-bf22-b95472fe2be4.json +1 -0
- package/.nyc_output/processinfo/1faea508-9cb4-46f4-b7ad-94a816e1ee7d.json +1 -0
- package/.nyc_output/processinfo/2b2df469-dc31-48c9-ab34-68a74266e2c2.json +1 -0
- package/.nyc_output/processinfo/32b5e63b-c8f8-4d9d-a09b-d97656c0e3f6.json +1 -0
- package/.nyc_output/processinfo/442ce939-4f43-496b-a8a9-2f1fb9cfa619.json +1 -0
- package/.nyc_output/processinfo/4573bb03-90d4-4408-ba15-b6835c618b33.json +1 -0
- package/.nyc_output/processinfo/468fbd9c-6a27-4e33-8423-dbaec01e62a9.json +1 -0
- package/.nyc_output/processinfo/51894388-b88d-4f0b-8d5b-4a1dd71cf668.json +1 -0
- package/.nyc_output/processinfo/56263b22-3ed5-4ce2-9bbb-f2c9575cdeee.json +1 -0
- package/.nyc_output/processinfo/6934a9dd-6431-48aa-93f1-4eeef0095773.json +1 -0
- package/.nyc_output/processinfo/70979008-f285-481b-bb09-ca48a1376f81.json +1 -0
- package/.nyc_output/processinfo/817c9485-a0ef-486d-8dee-906456fe77fb.json +1 -0
- package/.nyc_output/processinfo/9f725153-f783-4948-81d3-c4cc792738bf.json +1 -0
- package/.nyc_output/processinfo/cd4d852c-f8fc-4cb1-807b-7d053a0ef8fc.json +1 -0
- package/.nyc_output/processinfo/ec3011f0-8180-492e-8d85-4d92484ccb44.json +1 -0
- package/.nyc_output/processinfo/f78b831a-65ca-497d-9f9e-001a3efa6f54.json +1 -0
- package/.nyc_output/processinfo/index.json +1 -1
- package/.nycrc +6 -0
- package/.prettierrc +20 -13
- package/.xunit +45 -1
- package/@types/add-route.d.ts +3 -1
- package/@types/add-route.test.d.ts +1 -0
- package/@types/build.d.ts +3 -1
- package/@types/example.test.d.ts +0 -0
- package/@types/forms/fields/boolean.test.d.ts +1 -0
- package/@types/forms/fields/email.test.d.ts +1 -0
- package/@types/forms/fields/enum-multiple.test.d.ts +1 -0
- package/@types/forms/fields/enum.test.d.ts +1 -0
- package/@types/forms/fields/number.test.d.ts +1 -0
- package/@types/forms/fields/pick-from-list.test.d.ts +1 -0
- package/@types/forms/fields/regexp.test.d.ts +1 -0
- package/@types/forms/form.test.d.ts +6 -0
- package/@types/forms/multiform.test.d.ts +1 -0
- package/@types/mount.d.ts +1 -1
- package/@types/page/mountable-with-fields.d.ts +1 -1
- package/@types/test_utils/locator_is_visible.d.ts +2 -0
- package/@types/utils/assert-throws.d.ts +1 -0
- package/@types/utils/browser-creator.d.ts +1 -0
- package/@types/utils/utils.d.ts +1 -0
- package/coverage/clover.xml +2208 -47
- package/coverage/lcov-report/base.css +224 -0
- package/coverage/lcov-report/block-navigation.js +79 -0
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +231 -0
- package/coverage/lcov-report/prettify.css +1 -0
- package/coverage/lcov-report/prettify.js +2 -0
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +170 -0
- package/coverage/lcov-report/src/add-collection.ts.html +173 -0
- package/coverage/lcov-report/src/add-route.test.ts.html +254 -0
- package/coverage/lcov-report/src/add-route.ts.html +338 -0
- package/coverage/lcov-report/src/build.ts.html +359 -0
- package/coverage/lcov-report/src/cli.ts.html +188 -0
- package/coverage/lcov-report/src/components/components.ts.html +86 -0
- package/coverage/lcov-report/src/components/index.html +141 -0
- package/coverage/lcov-report/src/components/tabs.ts.html +365 -0
- package/coverage/lcov-report/src/components/toggle-modal.ts.html +236 -0
- package/coverage/lcov-report/src/example.test.ts.html +89 -0
- package/coverage/lcov-report/src/find-scss-includes.ts.html +176 -0
- package/coverage/lcov-report/src/forms/controls/array.ts.html +758 -0
- package/coverage/lcov-report/src/forms/controls/autocomplete.ts.html +179 -0
- package/coverage/lcov-report/src/forms/controls/big-radio-group.ts.html +224 -0
- package/coverage/lcov-report/src/forms/controls/checkbox-group.ts.html +293 -0
- package/coverage/lcov-report/src/forms/controls/checkbox.ts.html +182 -0
- package/coverage/lcov-report/src/forms/controls/checkboxed-list-input.ts.html +230 -0
- package/coverage/lcov-report/src/forms/controls/collapsible-checkbox-group.ts.html +164 -0
- package/coverage/lcov-report/src/forms/controls/collapsible-field-group.ts.html +362 -0
- package/coverage/lcov-report/src/forms/controls/controls.ts.html +170 -0
- package/coverage/lcov-report/src/forms/controls/derived-frame.ts.html +353 -0
- package/coverage/lcov-report/src/forms/controls/derived.ts.html +404 -0
- package/coverage/lcov-report/src/forms/controls/dropdown.ts.html +341 -0
- package/coverage/lcov-report/src/forms/controls/editable-collection-subset.ts.html +371 -0
- package/coverage/lcov-report/src/forms/controls/field-group.ts.html +287 -0
- package/coverage/lcov-report/src/forms/controls/file.ts.html +221 -0
- package/coverage/lcov-report/src/forms/controls/form-control.ts.html +152 -0
- package/coverage/lcov-report/src/forms/controls/form-field-control.ts.html +146 -0
- package/coverage/lcov-report/src/forms/controls/form-header.ts.html +137 -0
- package/coverage/lcov-report/src/forms/controls/form-paragraph.ts.html +113 -0
- package/coverage/lcov-report/src/forms/controls/frame.ts.html +158 -0
- package/coverage/lcov-report/src/forms/controls/hidden-input.ts.html +146 -0
- package/coverage/lcov-report/src/forms/controls/html.ts.html +194 -0
- package/coverage/lcov-report/src/forms/controls/index.html +561 -0
- package/coverage/lcov-report/src/forms/controls/multiple-files.ts.html +848 -0
- package/coverage/lcov-report/src/forms/controls/multiple-photos.ts.html +212 -0
- package/coverage/lcov-report/src/forms/controls/number.ts.html +194 -0
- package/coverage/lcov-report/src/forms/controls/photo.ts.html +302 -0
- package/coverage/lcov-report/src/forms/controls/radio.ts.html +209 -0
- package/coverage/lcov-report/src/forms/controls/reverse-single-reference.ts.html +230 -0
- package/coverage/lcov-report/src/forms/controls/simple-input.ts.html +524 -0
- package/coverage/lcov-report/src/forms/controls/textarea.ts.html +260 -0
- package/coverage/lcov-report/src/forms/controls/tickable.ts.html +461 -0
- package/coverage/lcov-report/src/forms/fields/boolean.test.ts.html +188 -0
- package/coverage/lcov-report/src/forms/fields/boolean.ts.html +269 -0
- package/coverage/lcov-report/src/forms/fields/checkboxed-list.ts.html +278 -0
- package/coverage/lcov-report/src/forms/fields/collection-field.ts.html +266 -0
- package/coverage/lcov-report/src/forms/fields/email.test.ts.html +152 -0
- package/coverage/lcov-report/src/forms/fields/email.ts.html +140 -0
- package/coverage/lcov-report/src/forms/fields/enum-multiple.test.ts.html +173 -0
- package/coverage/lcov-report/src/forms/fields/enum-multiple.ts.html +266 -0
- package/coverage/lcov-report/src/forms/fields/enum.test.ts.html +155 -0
- package/coverage/lcov-report/src/forms/fields/enum.ts.html +248 -0
- package/coverage/lcov-report/src/forms/fields/existing-sealious-value.ts.html +146 -0
- package/coverage/lcov-report/src/forms/fields/field.ts.html +596 -0
- package/coverage/lcov-report/src/forms/fields/file.ts.html +347 -0
- package/coverage/lcov-report/src/forms/fields/index.html +456 -0
- package/coverage/lcov-report/src/forms/fields/multiple-files.ts.html +140 -0
- package/coverage/lcov-report/src/forms/fields/number.test.ts.html +182 -0
- package/coverage/lcov-report/src/forms/fields/number.ts.html +290 -0
- package/coverage/lcov-report/src/forms/fields/pick-from-list.test.ts.html +137 -0
- package/coverage/lcov-report/src/forms/fields/pick-from-list.ts.html +236 -0
- package/coverage/lcov-report/src/forms/fields/proxy-field.ts.html +152 -0
- package/coverage/lcov-report/src/forms/fields/regexp.test.ts.html +155 -0
- package/coverage/lcov-report/src/forms/fields/regexp.ts.html +239 -0
- package/coverage/lcov-report/src/forms/fields/reverse-single-reference.ts.html +140 -0
- package/coverage/lcov-report/src/forms/fields/simple-form-field.ts.html +170 -0
- package/coverage/lcov-report/src/forms/fields/structured-array.ts.html +161 -0
- package/coverage/lcov-report/src/forms/form.test.ts.html +1133 -0
- package/coverage/lcov-report/src/forms/form.ts.html +962 -0
- package/coverage/lcov-report/src/forms/index.html +156 -0
- package/coverage/lcov-report/src/forms/multiform.test.ts.html +1700 -0
- package/coverage/lcov-report/src/forms/multiform.ts.html +788 -0
- package/coverage/lcov-report/src/generate-collections.ts.html +311 -0
- package/coverage/lcov-report/src/generate-routes.ts.html +440 -0
- package/coverage/lcov-report/src/index.html +321 -0
- package/coverage/lcov-report/src/index.ts.html +152 -0
- package/coverage/lcov-report/src/make-env.ts.html +125 -0
- package/coverage/lcov-report/src/make-hidden-inputs.ts.html +152 -0
- package/coverage/lcov-report/src/mount.ts.html +335 -0
- package/coverage/lcov-report/src/page/access-control.ts.html +134 -0
- package/coverage/lcov-report/src/page/index.html +186 -0
- package/coverage/lcov-report/src/page/list.ts.html +800 -0
- package/coverage/lcov-report/src/page/mountable-with-fields.ts.html +554 -0
- package/coverage/lcov-report/src/page/mountable.ts.html +119 -0
- package/coverage/lcov-report/src/page/page.ts.html +218 -0
- package/coverage/lcov-report/src/page/props-parser.ts.html +194 -0
- package/coverage/lcov-report/src/run.ts.html +80 -0
- package/coverage/lcov-report/src/sanitize.ts.html +107 -0
- package/coverage/lcov-report/src/templates/collection.ts.html +113 -0
- package/coverage/lcov-report/src/templates/form.ts.html +260 -0
- package/coverage/lcov-report/src/templates/index.html +216 -0
- package/coverage/lcov-report/src/templates/list.ts.html +305 -0
- package/coverage/lcov-report/src/templates/multiform.ts.html +254 -0
- package/coverage/lcov-report/src/templates/page.ts.html +155 -0
- package/coverage/lcov-report/src/templates/post.ts.html +143 -0
- package/coverage/lcov-report/src/templates/redirect.ts.html +146 -0
- package/coverage/lcov-report/src/templates/route-test.ts.html +161 -0
- package/coverage/lcov-report/src/test_utils/index.html +111 -0
- package/coverage/lcov-report/src/test_utils/locator_is_visible.ts.html +131 -0
- package/coverage/lcov-report/src/utils/assert-throws.ts.html +134 -0
- package/coverage/lcov-report/src/utils/browser-creator.js.html +110 -0
- package/coverage/lcov-report/src/utils/escape-url-params.ts.html +122 -0
- package/coverage/lcov-report/src/utils/exec.ts.html +170 -0
- package/coverage/lcov-report/src/utils/format-external-url.ts.html +119 -0
- package/coverage/lcov-report/src/utils/import-path.ts.html +155 -0
- package/coverage/lcov-report/src/utils/index.html +366 -0
- package/coverage/lcov-report/src/utils/input-wrapper.ts.html +143 -0
- package/coverage/lcov-report/src/utils/list-collections.ts.html +128 -0
- package/coverage/lcov-report/src/utils/make-slug.ts.html +95 -0
- package/coverage/lcov-report/src/utils/natural-numbers.ts.html +95 -0
- package/coverage/lcov-report/src/utils/prettier.ts.html +119 -0
- package/coverage/lcov-report/src/utils/question.ts.html +149 -0
- package/coverage/lcov-report/src/utils/render-attributes.ts.html +131 -0
- package/coverage/lcov-report/src/utils/sleep.ts.html +89 -0
- package/coverage/lcov-report/src/utils/translate.ts.html +119 -0
- package/coverage/lcov-report/src/utils/url-with-new-params.ts.html +107 -0
- package/coverage/lcov-report/src/utils/utils.ts.html +122 -0
- package/coverage/lcov-report/src/utils/walk.ts.html +140 -0
- package/coverage/lcov.info +4697 -0
- package/lib/add-route.js +3 -3
- package/lib/add-route.js.map +1 -1
- package/lib/add-route.test.js +55 -0
- package/lib/add-route.test.js.map +1 -0
- package/lib/build.js +3 -2
- package/lib/build.js.map +1 -1
- package/lib/cli.js +1 -1
- package/lib/cli.js.map +1 -1
- package/lib/example.test.js +4 -0
- package/lib/example.test.js.map +1 -0
- package/lib/forms/fields/boolean.test.js +37 -0
- package/lib/forms/fields/boolean.test.js.map +1 -0
- package/lib/forms/fields/email.test.js +25 -0
- package/lib/forms/fields/email.test.js.map +1 -0
- package/lib/forms/fields/enum-multiple.test.js +32 -0
- package/lib/forms/fields/enum-multiple.test.js.map +1 -0
- package/lib/forms/fields/enum.test.js +26 -0
- package/lib/forms/fields/enum.test.js.map +1 -0
- package/lib/forms/fields/number.js +0 -1
- package/lib/forms/fields/number.js.map +1 -1
- package/lib/forms/fields/number.test.js +35 -0
- package/lib/forms/fields/number.test.js.map +1 -0
- package/lib/forms/fields/pick-from-list.test.js +22 -0
- package/lib/forms/fields/pick-from-list.test.js.map +1 -0
- package/lib/forms/fields/regexp.test.js +26 -0
- package/lib/forms/fields/regexp.test.js.map +1 -0
- package/lib/forms/form.test.js +275 -0
- package/lib/forms/form.test.js.map +1 -0
- package/lib/forms/multiform.js +11 -2
- package/lib/forms/multiform.js.map +1 -1
- package/lib/forms/multiform.test.js +431 -0
- package/lib/forms/multiform.test.js.map +1 -0
- package/lib/mount.js +37 -2
- package/lib/mount.js.map +1 -1
- package/lib/test_utils/locator_is_visible.js +15 -0
- package/lib/test_utils/locator_is_visible.js.map +1 -0
- package/lib/utils/assert-throws.js +24 -0
- package/lib/utils/assert-throws.js.map +1 -0
- package/lib/utils/browser-creator.js +14 -0
- package/lib/utils/browser-creator.js.map +1 -0
- package/lib/utils/exec.js.map +1 -1
- package/lib/utils/question.js.map +1 -1
- package/lib/utils/utils.js +3 -1
- package/lib/utils/utils.js.map +1 -1
- package/mocha_root_hooks.js +6 -0
- package/package.json +16 -8
- package/src/add-route.test.ts +58 -0
- package/src/add-route.ts +6 -5
- package/src/build.ts +6 -3
- package/src/cli.ts +2 -2
- package/src/forms/fields/boolean.test.ts +36 -0
- package/src/forms/fields/email.test.ts +24 -0
- package/src/forms/fields/enum-multiple.test.ts +31 -0
- package/src/forms/fields/enum.test.ts +25 -0
- package/src/forms/fields/number.test.ts +34 -0
- package/src/forms/fields/number.ts +0 -1
- package/src/forms/fields/pick-from-list.test.ts +19 -0
- package/src/forms/fields/regexp.test.ts +25 -0
- package/src/forms/form.test.ts +351 -0
- package/src/forms/multiform.test.ts +540 -0
- package/src/forms/multiform.ts +12 -2
- package/src/mount.ts +42 -8
- package/src/page/mountable-with-fields.ts +1 -1
- package/src/test_utils/locator_is_visible.ts +17 -0
- package/src/utils/assert-throws.ts +18 -0
- package/src/utils/browser-creator.js +10 -0
- package/src/utils/exec.ts +8 -2
- package/src/utils/question.ts +4 -1
- package/src/utils/utils.ts +1 -0
- package/tsconfig.json +2 -2
- package/.nyc_output/1c5dff80-7861-427a-b1bb-d0686211f098.json +0 -1
- package/.nyc_output/a38a0d08-1f1f-4973-b5e2-efc434c1593d.json +0 -1
- package/.nyc_output/processinfo/1c5dff80-7861-427a-b1bb-d0686211f098.json +0 -1
- package/.nyc_output/processinfo/a38a0d08-1f1f-4973-b5e2-efc434c1593d.json +0 -1
- package/src/tests/manual/multiform.ts +0 -112
- package/test.js +0 -68
package/src/utils/exec.ts
CHANGED
|
@@ -9,8 +9,14 @@ export async function exec(
|
|
|
9
9
|
let stdout = "";
|
|
10
10
|
let stderr = "";
|
|
11
11
|
const process = spawn(program, args);
|
|
12
|
-
process.stdout.on(
|
|
13
|
-
|
|
12
|
+
process.stdout.on(
|
|
13
|
+
"data",
|
|
14
|
+
(data: Buffer) => (stdout += data.toString())
|
|
15
|
+
);
|
|
16
|
+
process.stderr.on(
|
|
17
|
+
"data",
|
|
18
|
+
(data: Buffer) => (stderr += data.toString())
|
|
19
|
+
);
|
|
14
20
|
process.on("close", (exitCode) => {
|
|
15
21
|
if (exitCode === 0) {
|
|
16
22
|
resolve({ stdout, stderr, exitCode });
|
package/src/utils/question.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { createInterface } from "readline";
|
|
2
2
|
|
|
3
|
-
export async function question(
|
|
3
|
+
export async function question(
|
|
4
|
+
text: string,
|
|
5
|
+
validator: (answer: string) => boolean
|
|
6
|
+
) {
|
|
4
7
|
const rl = createInterface({
|
|
5
8
|
input: process.stdin,
|
|
6
9
|
output: process.stdout,
|
package/src/utils/utils.ts
CHANGED
|
@@ -8,6 +8,7 @@ export { exec } from "./exec";
|
|
|
8
8
|
export { importPath, curryImportPath } from "./import-path";
|
|
9
9
|
export { listCollections } from "./list-collections";
|
|
10
10
|
export { walkDir } from "./walk";
|
|
11
|
+
export { assertThrowsAsync } from "./assert-throws";
|
|
11
12
|
export * from "./make-slug";
|
|
12
13
|
export * from "./render-attributes";
|
|
13
14
|
export * from "./format-external-url";
|
package/tsconfig.json
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"esModuleInterop": true,
|
|
11
11
|
"lib": ["ES6", "ESNext"],
|
|
12
12
|
"outDir": "lib",
|
|
13
|
-
"checkJs":
|
|
13
|
+
"checkJs": false,
|
|
14
14
|
"allowJs": true,
|
|
15
15
|
"declarationDir": "@types",
|
|
16
16
|
"resolveJsonModule": true,
|
|
@@ -20,5 +20,5 @@
|
|
|
20
20
|
"skipLibCheck": true
|
|
21
21
|
},
|
|
22
22
|
"include": ["src/**/*"],
|
|
23
|
-
"exclude": ["src
|
|
23
|
+
"exclude": ["node_modules/**, src/utils/browser-creator.js"]
|
|
24
24
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"/home/kuba/projects/sealcode/sealgen/src/example.test.ts":{"path":"/home/kuba/projects/sealcode/sealgen/src/example.test.ts","statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":3,"column":3}},"1":{"start":{"line":2,"column":4},"end":{"line":2,"column":32}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":1,"column":23},"end":{"line":1,"column":24}},"loc":{"start":{"line":1,"column":29},"end":{"line":3,"column":1}},"line":1},"1":{"name":"(anonymous_1)","decl":{"start":{"line":2,"column":21},"end":{"line":2,"column":22}},"loc":{"start":{"line":2,"column":27},"end":{"line":2,"column":30}},"line":2}},"branchMap":{},"s":{"0":1,"1":1},"f":{"0":1,"1":1},"b":{},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"f60a8a2f5051bd47a2ce6553c1f7f9e18533ec03","contentHash":"80209287f8d0b7c368c56582afecd56b1dd5756f6894ddc90f7687a0d13a9bd3"}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"/home/kuba/projects/sealcode/sealgen/.eslintrc.js":{"path":"/home/kuba/projects/sealcode/sealgen/.eslintrc.js","statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":38,"column":2}}},"fnMap":{},"branchMap":{},"s":{"0":0},"f":{},"b":{},"all":true},"/home/kuba/projects/sealcode/sealgen/@types/cli.d.ts":{"path":"/home/kuba/projects/sealcode/sealgen/@types/cli.d.ts","statementMap":{},"fnMap":{},"branchMap":{},"s":{},"f":{},"b":{},"all":true},"/home/kuba/projects/sealcode/sealgen/@types/forms/controls/controls.d.ts":{"path":"/home/kuba/projects/sealcode/sealgen/@types/forms/controls/controls.d.ts","statementMap":{},"fnMap":{},"branchMap":{},"s":{},"f":{},"b":{},"all":true},"/home/kuba/projects/sealcode/sealgen/@types/run.d.ts":{"path":"/home/kuba/projects/sealcode/sealgen/@types/run.d.ts","statementMap":{},"fnMap":{},"branchMap":{},"s":{},"f":{},"b":{},"all":true},"/home/kuba/projects/sealcode/sealgen/@types/tests/manual/multiform.d.ts":{"path":"/home/kuba/projects/sealcode/sealgen/@types/tests/manual/multiform.d.ts","statementMap":{},"fnMap":{},"branchMap":{},"s":{},"f":{},"b":{},"all":true},"/home/kuba/projects/sealcode/sealgen/src/example.test.ts":{"path":"/home/kuba/projects/sealcode/sealgen/src/example.test.ts","statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":3,"column":3}},"1":{"start":{"line":2,"column":1},"end":{"line":2,"column":28}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":1,"column":23},"end":{"line":1,"column":24}},"loc":{"start":{"line":1,"column":29},"end":{"line":3,"column":1}},"line":1},"1":{"name":"(anonymous_1)","decl":{"start":{"line":2,"column":18},"end":{"line":2,"column":19}},"loc":{"start":{"line":2,"column":24},"end":{"line":2,"column":26}},"line":2}},"branchMap":{},"s":{"0":0,"1":0},"f":{"0":0,"1":0},"b":{},"all":true},"/home/kuba/projects/sealcode/sealgen/src/forms/controls/controls.ts":{"path":"/home/kuba/projects/sealcode/sealgen/src/forms/controls/controls.ts","statementMap":{},"fnMap":{},"branchMap":{},"s":{},"f":{},"b":{},"all":true},"/home/kuba/projects/sealcode/sealgen/src/run.ts":{"path":"/home/kuba/projects/sealcode/sealgen/src/run.ts","statementMap":{},"fnMap":{},"branchMap":{},"s":{},"f":{},"b":{},"all":true},"/home/kuba/projects/sealcode/sealgen/test.js":{"path":"/home/kuba/projects/sealcode/sealgen/test.js","statementMap":{"0":{"start":{"line":1,"column":12},"end":{"line":1,"column":26}},"1":{"start":{"line":2,"column":18},"end":{"line":2,"column":42}},"2":{"start":{"line":4,"column":13},"end":{"line":4,"column":34}},"3":{"start":{"line":5,"column":13},"end":{"line":5,"column":22}},"4":{"start":{"line":7,"column":16},"end":{"line":7,"column":38}},"5":{"start":{"line":9,"column":14},"end":{"line":9,"column":31}},"6":{"start":{"line":11,"column":20},"end":{"line":18,"column":1}},"7":{"start":{"line":20,"column":0},"end":{"line":28,"column":1}},"8":{"start":{"line":21,"column":4},"end":{"line":27,"column":6}},"9":{"start":{"line":30,"column":20},"end":{"line":30,"column":40}},"10":{"start":{"line":32,"column":14},"end":{"line":32,"column":55}},"11":{"start":{"line":34,"column":0},"end":{"line":49,"column":1}},"12":{"start":{"line":35,"column":16},"end":{"line":42,"column":5}},"13":{"start":{"line":43,"column":4},"end":{"line":47,"column":5}},"14":{"start":{"line":44,"column":8},"end":{"line":44,"column":39}},"15":{"start":{"line":46,"column":8},"end":{"line":46,"column":41}},"16":{"start":{"line":48,"column":4},"end":{"line":48,"column":35}},"17":{"start":{"line":51,"column":0},"end":{"line":53,"column":1}},"18":{"start":{"line":52,"column":4},"end":{"line":52,"column":46}},"19":{"start":{"line":55,"column":0},"end":{"line":55,"column":42}},"20":{"start":{"line":57,"column":13},"end":{"line":60,"column":2}},"21":{"start":{"line":62,"column":0},"end":{"line":68,"column":3}},"22":{"start":{"line":63,"column":4},"end":{"line":67,"column":5}},"23":{"start":{"line":64,"column":8},"end":{"line":64,"column":24}},"24":{"start":{"line":66,"column":8},"end":{"line":66,"column":27}}},"fnMap":{"0":{"name":"(anonymous_0)","decl":{"start":{"line":62,"column":16},"end":{"line":62,"column":17}},"loc":{"start":{"line":62,"column":32},"end":{"line":68,"column":1}},"line":62}},"branchMap":{"0":{"loc":{"start":{"line":20,"column":0},"end":{"line":28,"column":1}},"type":"if","locations":[{"start":{"line":20,"column":0},"end":{"line":28,"column":1}},{"start":{"line":20,"column":0},"end":{"line":28,"column":1}}],"line":20},"1":{"loc":{"start":{"line":34,"column":0},"end":{"line":49,"column":1}},"type":"if","locations":[{"start":{"line":34,"column":0},"end":{"line":49,"column":1}},{"start":{"line":34,"column":0},"end":{"line":49,"column":1}}],"line":34},"2":{"loc":{"start":{"line":43,"column":4},"end":{"line":47,"column":5}},"type":"if","locations":[{"start":{"line":43,"column":4},"end":{"line":47,"column":5}},{"start":{"line":43,"column":4},"end":{"line":47,"column":5}}],"line":43},"3":{"loc":{"start":{"line":51,"column":0},"end":{"line":53,"column":1}},"type":"if","locations":[{"start":{"line":51,"column":0},"end":{"line":53,"column":1}},{"start":{"line":51,"column":0},"end":{"line":53,"column":1}}],"line":51},"4":{"loc":{"start":{"line":63,"column":4},"end":{"line":67,"column":5}},"type":"if","locations":[{"start":{"line":63,"column":4},"end":{"line":67,"column":5}},{"start":{"line":63,"column":4},"end":{"line":67,"column":5}}],"line":63}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0},"f":{"0":0},"b":{"0":[0,0],"1":[0,0],"2":[0,0],"3":[0,0],"4":[0,0]},"all":true}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"parent":null,"pid":78339,"argv":["/usr/bin/node","/home/kuba/projects/sealcode/sealgen/node_modules/.bin/mocha","--recursive","--timeout=10000","--require","source-map-support/register","-r"," ts-node/register","--reporter","xunit","--reporter-option","output=.xunit","src/**/*.test.ts"],"execArgv":[],"cwd":"/home/kuba/projects/sealcode/sealgen","time":1666291707797,"ppid":78328,"coverageFilename":"/home/kuba/projects/sealcode/sealgen/.nyc_output/1c5dff80-7861-427a-b1bb-d0686211f098.json","externalId":"","uuid":"1c5dff80-7861-427a-b1bb-d0686211f098","files":["/home/kuba/projects/sealcode/sealgen/src/example.test.ts"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"parent":null,"pid":78328,"argv":["/usr/bin/node","/home/kuba/projects/sealcode/sealgen/node_modules/.bin/nyc","-all","--exclude","lib","--source-map","false","--reporter","clover","./node_modules/.bin/mocha","--recursive","--timeout=10000","--require","source-map-support/register","-r"," ts-node/register","--reporter","xunit","--reporter-option","output=.xunit","src/**/*.test.ts"],"execArgv":[],"cwd":"/home/kuba/projects/sealcode/sealgen","time":1666291706894,"ppid":78321,"coverageFilename":"/home/kuba/projects/sealcode/sealgen/.nyc_output/a38a0d08-1f1f-4973-b5e2-efc434c1593d.json","externalId":"","uuid":"a38a0d08-1f1f-4973-b5e2-efc434c1593d","files":["/home/kuba/projects/sealcode/sealgen/.eslintrc.js","/home/kuba/projects/sealcode/sealgen/@types/cli.d.ts","/home/kuba/projects/sealcode/sealgen/@types/forms/controls/controls.d.ts","/home/kuba/projects/sealcode/sealgen/@types/run.d.ts","/home/kuba/projects/sealcode/sealgen/@types/tests/manual/multiform.d.ts","/home/kuba/projects/sealcode/sealgen/src/example.test.ts","/home/kuba/projects/sealcode/sealgen/src/forms/controls/controls.ts","/home/kuba/projects/sealcode/sealgen/src/run.ts","/home/kuba/projects/sealcode/sealgen/test.js"]}
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import Koa, { Context } from "koa";
|
|
2
|
-
import Router from "@koa/router";
|
|
3
|
-
import { Controls, Fields, Form } from "../..";
|
|
4
|
-
import { Multiform } from "../../forms/multiform";
|
|
5
|
-
import koaBody from "koa-body";
|
|
6
|
-
import { FlatTemplatable, tempstream } from "tempstream";
|
|
7
|
-
import { App } from "sealious";
|
|
8
|
-
import { FormMessage } from "../../forms/form";
|
|
9
|
-
const app = new Koa({ proxy: true });
|
|
10
|
-
const router = new Router();
|
|
11
|
-
|
|
12
|
-
const fields1 = {
|
|
13
|
-
email: new Fields.SimpleFormField(true),
|
|
14
|
-
password: new Fields.SimpleFormField(true),
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
const form1 = new (class extends Form<typeof fields1, void> {
|
|
18
|
-
defaultSuccessMessage = "Form1 done!";
|
|
19
|
-
controls = [
|
|
20
|
-
new Controls.FormHeader("form1"),
|
|
21
|
-
new Controls.SimpleInput(fields1.email),
|
|
22
|
-
];
|
|
23
|
-
fields = fields1;
|
|
24
|
-
onSubmit() {
|
|
25
|
-
console.log("form1 submit");
|
|
26
|
-
}
|
|
27
|
-
})();
|
|
28
|
-
|
|
29
|
-
const fields2 = {
|
|
30
|
-
name: new Fields.SimpleFormField(true),
|
|
31
|
-
surname: new Fields.SimpleFormField(true),
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
const form2 = new (class extends Form<Record<never, unknown>, void> {
|
|
35
|
-
defaultSuccessMessage = "Form2 done!";
|
|
36
|
-
controls = [
|
|
37
|
-
new Controls.FormHeader("form2"),
|
|
38
|
-
new Controls.SimpleInput(fields2.name),
|
|
39
|
-
];
|
|
40
|
-
fields = fields2;
|
|
41
|
-
onSubmit() {
|
|
42
|
-
console.log("form2 submit");
|
|
43
|
-
}
|
|
44
|
-
})();
|
|
45
|
-
|
|
46
|
-
const multiform = new (class extends Multiform {
|
|
47
|
-
name = "multiform_test";
|
|
48
|
-
forms = { form1, form2 };
|
|
49
|
-
async render(
|
|
50
|
-
ctx: Koa.Context,
|
|
51
|
-
messages: FormMessage[],
|
|
52
|
-
prerenderedForms?: Record<string, FlatTemplatable | undefined>,
|
|
53
|
-
show_field_errors: boolean = true
|
|
54
|
-
): Promise<FlatTemplatable> {
|
|
55
|
-
return tempstream/* HTML */ `<!DOCTYPE html>
|
|
56
|
-
<html>
|
|
57
|
-
<head>
|
|
58
|
-
<title>Multiform Test - Sealgen</title>
|
|
59
|
-
<script type="module">
|
|
60
|
-
import hotwiredTurbo from "https://cdn.skypack.dev/pin/@hotwired/turbo@v7.0.0-9XNv1By6uiqRlBzQLO2d/mode=imports,min/optimized/@hotwired/turbo.js";
|
|
61
|
-
</script>
|
|
62
|
-
</head>
|
|
63
|
-
<body>
|
|
64
|
-
${super.render(
|
|
65
|
-
ctx,
|
|
66
|
-
messages,
|
|
67
|
-
prerenderedForms,
|
|
68
|
-
show_field_errors
|
|
69
|
-
)}
|
|
70
|
-
</body>
|
|
71
|
-
</html>`;
|
|
72
|
-
}
|
|
73
|
-
})();
|
|
74
|
-
|
|
75
|
-
const URL = "/";
|
|
76
|
-
|
|
77
|
-
async function handleHtmlPromise(ctx: Context, next: Koa.Next) {
|
|
78
|
-
await next();
|
|
79
|
-
if (ctx.body instanceof Promise) {
|
|
80
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
|
81
|
-
ctx.body = await ctx.body;
|
|
82
|
-
}
|
|
83
|
-
ctx.set("content-type", "text/html;charset=utf-8");
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
router.use(
|
|
87
|
-
URL,
|
|
88
|
-
koaBody(),
|
|
89
|
-
async (ctx, next) => {
|
|
90
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
|
91
|
-
ctx.$body = ctx.request.body;
|
|
92
|
-
ctx.$app = {
|
|
93
|
-
getString: (
|
|
94
|
-
_: unknown,
|
|
95
|
-
args: unknown[],
|
|
96
|
-
trans: string | ((...args: unknown[]) => string)
|
|
97
|
-
) => (typeof trans == "function" ? trans(args) : trans),
|
|
98
|
-
} as unknown as App;
|
|
99
|
-
await next();
|
|
100
|
-
},
|
|
101
|
-
handleHtmlPromise
|
|
102
|
-
);
|
|
103
|
-
multiform.init();
|
|
104
|
-
multiform.mount(router, URL);
|
|
105
|
-
// to automatically add trailing slashes:
|
|
106
|
-
|
|
107
|
-
router.use(URL, (ctx) => ctx.set("content-type", "text/html;charset=utf-8"));
|
|
108
|
-
|
|
109
|
-
app.use(router.routes()).use(router.allowedMethods());
|
|
110
|
-
app.listen(3000);
|
|
111
|
-
|
|
112
|
-
console.log("Multiform test app listening on localhost:3000");
|
package/test.js
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
const mri = require("mri");
|
|
2
|
-
const { spawn } = require("child_process");
|
|
3
|
-
|
|
4
|
-
const argv = process.argv.slice(2);
|
|
5
|
-
const args = mri(argv);
|
|
6
|
-
|
|
7
|
-
const bin_dir = "./node_modules/.bin/";
|
|
8
|
-
|
|
9
|
-
const mocha = bin_dir + "mocha";
|
|
10
|
-
|
|
11
|
-
let mocha_options = [
|
|
12
|
-
"--recursive",
|
|
13
|
-
"--timeout=10000",
|
|
14
|
-
"--require",
|
|
15
|
-
"source-map-support/register",
|
|
16
|
-
"-r",
|
|
17
|
-
" ts-node/register"
|
|
18
|
-
];
|
|
19
|
-
|
|
20
|
-
if (args["test-report"]) {
|
|
21
|
-
mocha_options = [
|
|
22
|
-
...mocha_options,
|
|
23
|
-
"--reporter",
|
|
24
|
-
"xunit",
|
|
25
|
-
"--reporter-option",
|
|
26
|
-
"output=.xunit",
|
|
27
|
-
];
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
const mocha_files = ["src/**/*.test.ts"];
|
|
31
|
-
|
|
32
|
-
let command = [mocha, ...mocha_options, ...mocha_files];
|
|
33
|
-
|
|
34
|
-
if (args.cover) {
|
|
35
|
-
const nyc = [
|
|
36
|
-
bin_dir + "nyc",
|
|
37
|
-
"-all",
|
|
38
|
-
"--exclude",
|
|
39
|
-
"lib",
|
|
40
|
-
"--source-map",
|
|
41
|
-
"false",
|
|
42
|
-
];
|
|
43
|
-
if (args["cover-html"]) {
|
|
44
|
-
nyc.push("--reporter", "lcov");
|
|
45
|
-
} else {
|
|
46
|
-
nyc.push("--reporter", "clover");
|
|
47
|
-
}
|
|
48
|
-
command = [...nyc, ...command];
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
if (args.debug) {
|
|
52
|
-
command = ["node", "inspect", ...command];
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
console.log("spawning mocha...", command);
|
|
56
|
-
|
|
57
|
-
const proc = spawn(command[0], command.slice(1), {
|
|
58
|
-
stdio: "inherit",
|
|
59
|
-
env: process.env,
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
proc.on("exit", function (code) {
|
|
63
|
-
if (args["test-report"]) {
|
|
64
|
-
process.exit(0);
|
|
65
|
-
} else {
|
|
66
|
-
process.exit(code);
|
|
67
|
-
}
|
|
68
|
-
});
|