@fieldia/core 0.30.0 → 0.31.0
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/README.md +362 -1
- package/package.json +1 -1
- package/schema/page.schema.json +758 -1
- package/src/index.d.mts +13 -2
- package/src/index.d.ts +13 -2
- package/src/index.js +45 -2
- package/src/index.js.map +1 -1
- package/src/index.mjs +18 -2
- package/src/index.mjs.map +1 -1
- package/src/lib/format/actions.d.mts +16 -16
- package/src/lib/format/actions.d.ts +16 -16
- package/src/lib/format/actions.js +3 -0
- package/src/lib/format/actions.js.map +1 -1
- package/src/lib/format/actions.mjs +3 -0
- package/src/lib/format/actions.mjs.map +1 -1
- package/src/lib/format/address-search.js +3 -0
- package/src/lib/format/address-search.js.map +1 -1
- package/src/lib/format/address-search.mjs +3 -0
- package/src/lib/format/address-search.mjs.map +1 -1
- package/src/lib/format/duplicates.js +3 -0
- package/src/lib/format/duplicates.js.map +1 -1
- package/src/lib/format/duplicates.mjs +3 -0
- package/src/lib/format/duplicates.mjs.map +1 -1
- package/src/lib/format/endings.js +3 -0
- package/src/lib/format/endings.js.map +1 -1
- package/src/lib/format/endings.mjs +3 -0
- package/src/lib/format/endings.mjs.map +1 -1
- package/src/lib/format/field.d.mts +669 -0
- package/src/lib/format/field.d.ts +669 -0
- package/src/lib/format/field.js +42 -4
- package/src/lib/format/field.js.map +1 -1
- package/src/lib/format/field.mjs +42 -4
- package/src/lib/format/field.mjs.map +1 -1
- package/src/lib/format/flow-checks.d.mts +14 -0
- package/src/lib/format/flow-checks.d.ts +14 -0
- package/src/lib/format/flow-checks.js +61 -0
- package/src/lib/format/flow-checks.js.map +1 -0
- package/src/lib/format/flow-checks.mjs +58 -0
- package/src/lib/format/flow-checks.mjs.map +1 -0
- package/src/lib/format/flow.d.mts +43 -0
- package/src/lib/format/flow.d.ts +43 -0
- package/src/lib/format/flow.js +22 -0
- package/src/lib/format/flow.js.map +1 -0
- package/src/lib/format/flow.mjs +19 -0
- package/src/lib/format/flow.mjs.map +1 -0
- package/src/lib/format/from-schema.d.mts +70 -0
- package/src/lib/format/from-schema.d.ts +70 -0
- package/src/lib/format/from-schema.js +599 -0
- package/src/lib/format/from-schema.js.map +1 -0
- package/src/lib/format/from-schema.mjs +591 -0
- package/src/lib/format/from-schema.mjs.map +1 -0
- package/src/lib/format/jitless.d.mts +1 -0
- package/src/lib/format/jitless.d.ts +1 -0
- package/src/lib/format/jitless.js +27 -0
- package/src/lib/format/jitless.js.map +1 -0
- package/src/lib/format/jitless.mjs +24 -0
- package/src/lib/format/jitless.mjs.map +1 -0
- package/src/lib/format/json-schema.js +3 -0
- package/src/lib/format/json-schema.js.map +1 -1
- package/src/lib/format/json-schema.mjs +3 -0
- package/src/lib/format/json-schema.mjs.map +1 -1
- package/src/lib/format/json.js +3 -0
- package/src/lib/format/json.js.map +1 -1
- package/src/lib/format/json.mjs +3 -0
- package/src/lib/format/json.mjs.map +1 -1
- package/src/lib/format/languages-checks.d.mts +2 -1
- package/src/lib/format/languages-checks.d.ts +2 -1
- package/src/lib/format/languages-checks.js +8 -2
- package/src/lib/format/languages-checks.js.map +1 -1
- package/src/lib/format/languages-checks.mjs +8 -2
- package/src/lib/format/languages-checks.mjs.map +1 -1
- package/src/lib/format/later-checks.d.mts +3 -1
- package/src/lib/format/later-checks.d.ts +3 -1
- package/src/lib/format/later-checks.js +3 -1
- package/src/lib/format/later-checks.js.map +1 -1
- package/src/lib/format/later-checks.mjs +3 -1
- package/src/lib/format/later-checks.mjs.map +1 -1
- package/src/lib/format/layout.d.mts +13192 -7550
- package/src/lib/format/layout.d.ts +13192 -7550
- package/src/lib/format/layout.js +61 -3
- package/src/lib/format/layout.js.map +1 -1
- package/src/lib/format/layout.mjs +59 -1
- package/src/lib/format/layout.mjs.map +1 -1
- package/src/lib/format/layout.types.d.mts +3 -1
- package/src/lib/format/layout.types.d.ts +3 -1
- package/src/lib/format/limits.js +3 -0
- package/src/lib/format/limits.js.map +1 -1
- package/src/lib/format/limits.mjs +3 -0
- package/src/lib/format/limits.mjs.map +1 -1
- package/src/lib/format/list-checks.d.mts +1 -1
- package/src/lib/format/list-checks.d.ts +1 -1
- package/src/lib/format/list-checks.js +67 -22
- package/src/lib/format/list-checks.js.map +1 -1
- package/src/lib/format/list-checks.mjs +67 -22
- package/src/lib/format/list-checks.mjs.map +1 -1
- package/src/lib/format/list-rows-checks.d.mts +11 -0
- package/src/lib/format/list-rows-checks.d.ts +11 -0
- package/src/lib/format/list-rows-checks.js +62 -0
- package/src/lib/format/list-rows-checks.js.map +1 -0
- package/src/lib/format/list-rows-checks.mjs +59 -0
- package/src/lib/format/list-rows-checks.mjs.map +1 -0
- package/src/lib/format/media-options.d.mts +84 -0
- package/src/lib/format/media-options.d.ts +84 -0
- package/src/lib/format/media-options.js +86 -0
- package/src/lib/format/media-options.js.map +1 -0
- package/src/lib/format/media-options.mjs +80 -0
- package/src/lib/format/media-options.mjs.map +1 -0
- package/src/lib/format/outbox-checks.d.mts +11 -0
- package/src/lib/format/outbox-checks.d.ts +11 -0
- package/src/lib/format/outbox-checks.js +12 -0
- package/src/lib/format/outbox-checks.js.map +1 -0
- package/src/lib/format/outbox-checks.mjs +9 -0
- package/src/lib/format/outbox-checks.mjs.map +1 -0
- package/src/lib/format/page.d.mts +3057 -966
- package/src/lib/format/page.d.ts +3057 -966
- package/src/lib/format/page.js +15 -0
- package/src/lib/format/page.js.map +1 -1
- package/src/lib/format/page.mjs +15 -0
- package/src/lib/format/page.mjs.map +1 -1
- package/src/lib/format/part-checks.d.mts +3 -0
- package/src/lib/format/part-checks.d.ts +3 -0
- package/src/lib/format/payment-checks.d.mts +13 -0
- package/src/lib/format/payment-checks.d.ts +13 -0
- package/src/lib/format/payment-checks.js +30 -0
- package/src/lib/format/payment-checks.js.map +1 -0
- package/src/lib/format/payment-checks.mjs +27 -0
- package/src/lib/format/payment-checks.mjs.map +1 -0
- package/src/lib/format/payment.d.mts +37 -0
- package/src/lib/format/payment.d.ts +37 -0
- package/src/lib/format/payment.js +15 -0
- package/src/lib/format/payment.js.map +1 -0
- package/src/lib/format/payment.mjs +12 -0
- package/src/lib/format/payment.mjs.map +1 -0
- package/src/lib/format/phone.js +3 -0
- package/src/lib/format/phone.js.map +1 -1
- package/src/lib/format/phone.mjs +3 -0
- package/src/lib/format/phone.mjs.map +1 -1
- package/src/lib/format/picker-options.d.mts +12 -0
- package/src/lib/format/picker-options.d.ts +12 -0
- package/src/lib/format/picker-options.js +21 -3
- package/src/lib/format/picker-options.js.map +1 -1
- package/src/lib/format/picker-options.mjs +20 -2
- package/src/lib/format/picker-options.mjs.map +1 -1
- package/src/lib/format/prefill-checks.d.mts +13 -0
- package/src/lib/format/prefill-checks.d.ts +13 -0
- package/src/lib/format/prefill-checks.js +35 -0
- package/src/lib/format/prefill-checks.js.map +1 -0
- package/src/lib/format/prefill-checks.mjs +32 -0
- package/src/lib/format/prefill-checks.mjs.map +1 -0
- package/src/lib/format/prefill.d.mts +33 -0
- package/src/lib/format/prefill.d.ts +33 -0
- package/src/lib/format/prefill.js +20 -0
- package/src/lib/format/prefill.js.map +1 -0
- package/src/lib/format/prefill.mjs +17 -0
- package/src/lib/format/prefill.mjs.map +1 -0
- package/src/lib/format/quiz.d.mts +58 -0
- package/src/lib/format/quiz.d.ts +58 -0
- package/src/lib/format/quiz.js +24 -0
- package/src/lib/format/quiz.js.map +1 -0
- package/src/lib/format/quiz.mjs +21 -0
- package/src/lib/format/quiz.mjs.map +1 -0
- package/src/lib/format/records.js +3 -0
- package/src/lib/format/records.js.map +1 -1
- package/src/lib/format/records.mjs +3 -0
- package/src/lib/format/records.mjs.map +1 -1
- package/src/lib/format/references.d.mts +1 -1
- package/src/lib/format/references.d.ts +1 -1
- package/src/lib/format/references.js +56 -7
- package/src/lib/format/references.js.map +1 -1
- package/src/lib/format/references.mjs +57 -8
- package/src/lib/format/references.mjs.map +1 -1
- package/src/lib/format/schedule-checks.d.mts +8 -0
- package/src/lib/format/schedule-checks.d.ts +8 -0
- package/src/lib/format/schedule-checks.js +16 -0
- package/src/lib/format/schedule-checks.js.map +1 -0
- package/src/lib/format/schedule-checks.mjs +13 -0
- package/src/lib/format/schedule-checks.mjs.map +1 -0
- package/src/lib/format/signature-checks.d.mts +8 -0
- package/src/lib/format/signature-checks.d.ts +8 -0
- package/src/lib/format/signature-checks.js +21 -0
- package/src/lib/format/signature-checks.js.map +1 -1
- package/src/lib/format/signature-checks.mjs +20 -0
- package/src/lib/format/signature-checks.mjs.map +1 -1
- package/src/lib/format/signature-options.js +3 -0
- package/src/lib/format/signature-options.js.map +1 -1
- package/src/lib/format/signature-options.mjs +3 -0
- package/src/lib/format/signature-options.mjs.map +1 -1
- package/src/lib/format/slots-options.js +3 -0
- package/src/lib/format/slots-options.js.map +1 -1
- package/src/lib/format/slots-options.mjs +3 -0
- package/src/lib/format/slots-options.mjs.map +1 -1
- package/src/lib/format/templates-checks.d.mts +6 -0
- package/src/lib/format/templates-checks.d.ts +6 -0
- package/src/lib/format/templates-checks.js +16 -0
- package/src/lib/format/templates-checks.js.map +1 -0
- package/src/lib/format/templates-checks.mjs +13 -0
- package/src/lib/format/templates-checks.mjs.map +1 -0
- package/src/lib/format/translate.d.mts +2 -0
- package/src/lib/format/translate.d.ts +2 -0
- package/src/lib/format/translate.js +6 -2
- package/src/lib/format/translate.js.map +1 -1
- package/src/lib/format/translate.mjs +4 -2
- package/src/lib/format/translate.mjs.map +1 -1
- package/src/lib/format/typed-options.d.mts +43 -0
- package/src/lib/format/typed-options.d.ts +43 -0
- package/src/lib/format/typed-options.js +50 -0
- package/src/lib/format/typed-options.js.map +1 -0
- package/src/lib/format/typed-options.mjs +46 -0
- package/src/lib/format/typed-options.mjs.map +1 -0
- package/src/lib/format/upgrade.d.mts +5 -1
- package/src/lib/format/upgrade.d.ts +5 -1
- package/src/lib/format/upgrade.js +5 -1
- package/src/lib/format/upgrade.js.map +1 -1
- package/src/lib/format/upgrade.mjs +5 -1
- package/src/lib/format/upgrade.mjs.map +1 -1
- package/src/lib/format/validate.js +3 -0
- package/src/lib/format/validate.js.map +1 -1
- package/src/lib/format/validate.mjs +3 -0
- package/src/lib/format/validate.mjs.map +1 -1
- package/src/lib/format/verify-checks.d.mts +10 -0
- package/src/lib/format/verify-checks.d.ts +10 -0
- package/src/lib/format/verify-checks.js +44 -0
- package/src/lib/format/verify-checks.js.map +1 -0
- package/src/lib/format/verify-checks.mjs +41 -0
- package/src/lib/format/verify-checks.mjs.map +1 -0
- package/src/lib/format/version.d.mts +2 -2
- package/src/lib/format/version.d.ts +2 -2
- package/src/lib/format/version.js +2 -2
- package/src/lib/format/version.js.map +1 -1
- package/src/lib/format/version.mjs +2 -2
- package/src/lib/format/version.mjs.map +1 -1
- package/src/lib/format/week.d.mts +18 -0
- package/src/lib/format/week.d.ts +18 -0
- package/src/lib/format/week.js +58 -0
- package/src/lib/format/week.js.map +1 -0
- package/src/lib/format/week.mjs +55 -0
- package/src/lib/format/week.mjs.map +1 -0
- package/src/lib/record/approvals-part.d.mts +1 -1
- package/src/lib/record/approvals-part.d.ts +1 -1
- package/src/lib/record/approvals-part.js +2 -2
- package/src/lib/record/approvals-part.js.map +1 -1
- package/src/lib/record/approvals-part.mjs +1 -1
- package/src/lib/record/approvals-part.mjs.map +1 -1
- package/src/lib/record/data-source.d.mts +337 -3
- package/src/lib/record/data-source.d.ts +337 -3
- package/src/lib/record/data-source.js.map +1 -1
- package/src/lib/record/data-source.mjs.map +1 -1
- package/src/lib/record/day-words.d.mts +22 -1
- package/src/lib/record/day-words.d.ts +22 -1
- package/src/lib/record/day-words.js +29 -2
- package/src/lib/record/day-words.js.map +1 -1
- package/src/lib/record/day-words.mjs +24 -2
- package/src/lib/record/day-words.mjs.map +1 -1
- package/src/lib/record/files-part.d.mts +1 -0
- package/src/lib/record/files-part.d.ts +1 -0
- package/src/lib/record/files-part.js +7 -1
- package/src/lib/record/files-part.js.map +1 -1
- package/src/lib/record/files-part.mjs +5 -1
- package/src/lib/record/files-part.mjs.map +1 -1
- package/src/lib/record/form-approvals.d.mts +12 -17
- package/src/lib/record/form-approvals.d.ts +12 -17
- package/src/lib/record/form-approvals.js +15 -9
- package/src/lib/record/form-approvals.js.map +1 -1
- package/src/lib/record/form-approvals.mjs +14 -8
- package/src/lib/record/form-approvals.mjs.map +1 -1
- package/src/lib/record/form-limits.d.mts +4 -28
- package/src/lib/record/form-limits.d.ts +4 -28
- package/src/lib/record/form-limits.js +8 -5
- package/src/lib/record/form-limits.js.map +1 -1
- package/src/lib/record/form-limits.mjs +8 -5
- package/src/lib/record/form-limits.mjs.map +1 -1
- package/src/lib/record/form.d.mts +125 -7
- package/src/lib/record/form.d.ts +125 -7
- package/src/lib/record/form.js +277 -77
- package/src/lib/record/form.js.map +1 -1
- package/src/lib/record/form.mjs +278 -78
- package/src/lib/record/form.mjs.map +1 -1
- package/src/lib/record/history-steps.d.mts +38 -0
- package/src/lib/record/history-steps.d.ts +38 -0
- package/src/lib/record/history-steps.js +63 -0
- package/src/lib/record/history-steps.js.map +1 -0
- package/src/lib/record/history-steps.mjs +58 -0
- package/src/lib/record/history-steps.mjs.map +1 -0
- package/src/lib/record/history.d.mts +16 -0
- package/src/lib/record/history.d.ts +16 -0
- package/src/lib/record/history.js +3 -0
- package/src/lib/record/history.js.map +1 -0
- package/src/lib/record/history.mjs +2 -0
- package/src/lib/record/history.mjs.map +1 -0
- package/src/lib/record/input-rules.d.mts +2 -0
- package/src/lib/record/input-rules.d.ts +2 -0
- package/src/lib/record/input-rules.js +4 -1
- package/src/lib/record/input-rules.js.map +1 -1
- package/src/lib/record/input-rules.mjs +2 -0
- package/src/lib/record/input-rules.mjs.map +1 -1
- package/src/lib/record/joins.d.mts +143 -0
- package/src/lib/record/joins.d.ts +143 -0
- package/src/lib/record/joins.js +28 -0
- package/src/lib/record/joins.js.map +1 -0
- package/src/lib/record/joins.mjs +24 -0
- package/src/lib/record/joins.mjs.map +1 -0
- package/src/lib/record/limits.js +7 -4
- package/src/lib/record/limits.js.map +1 -1
- package/src/lib/record/limits.mjs +8 -5
- package/src/lib/record/limits.mjs.map +1 -1
- package/src/lib/record/link-values.d.mts +31 -0
- package/src/lib/record/link-values.d.ts +31 -0
- package/src/lib/record/link-values.js +132 -0
- package/src/lib/record/link-values.js.map +1 -0
- package/src/lib/record/link-values.mjs +125 -0
- package/src/lib/record/link-values.mjs.map +1 -0
- package/src/lib/record/live-later.d.mts +15 -0
- package/src/lib/record/live-later.d.ts +15 -0
- package/src/lib/record/live-later.js +10 -0
- package/src/lib/record/live-later.js.map +1 -0
- package/src/lib/record/live-later.mjs +7 -0
- package/src/lib/record/live-later.mjs.map +1 -0
- package/src/lib/record/live-part.d.mts +6 -0
- package/src/lib/record/live-part.d.ts +6 -0
- package/src/lib/record/live-part.js +12 -0
- package/src/lib/record/live-part.js.map +1 -0
- package/src/lib/record/live-part.mjs +7 -0
- package/src/lib/record/live-part.mjs.map +1 -0
- package/src/lib/record/live.d.mts +8 -0
- package/src/lib/record/live.d.ts +8 -0
- package/src/lib/record/live.js +133 -0
- package/src/lib/record/live.js.map +1 -0
- package/src/lib/record/live.mjs +129 -0
- package/src/lib/record/live.mjs.map +1 -0
- package/src/lib/record/locales/all.d.mts +5 -5
- package/src/lib/record/locales/all.d.ts +5 -5
- package/src/lib/record/locales/all.js +3 -3
- package/src/lib/record/locales/all.js.map +1 -1
- package/src/lib/record/locales/all.mjs +3 -3
- package/src/lib/record/locales/all.mjs.map +1 -1
- package/src/lib/record/locales/ar.js +11 -1
- package/src/lib/record/locales/ar.js.map +1 -1
- package/src/lib/record/locales/ar.mjs +11 -1
- package/src/lib/record/locales/ar.mjs.map +1 -1
- package/src/lib/record/locales/de.js +11 -1
- package/src/lib/record/locales/de.js.map +1 -1
- package/src/lib/record/locales/de.mjs +11 -1
- package/src/lib/record/locales/de.mjs.map +1 -1
- package/src/lib/record/locales/es.d.mts +8 -0
- package/src/lib/record/locales/es.d.ts +8 -0
- package/src/lib/record/locales/es.js +111 -0
- package/src/lib/record/locales/es.js.map +1 -0
- package/src/lib/record/locales/es.mjs +108 -0
- package/src/lib/record/locales/es.mjs.map +1 -0
- package/src/lib/record/locales/fa.d.mts +5 -0
- package/src/lib/record/locales/fa.d.ts +5 -0
- package/src/lib/record/locales/fa.js +117 -0
- package/src/lib/record/locales/fa.js.map +1 -0
- package/src/lib/record/locales/fa.mjs +114 -0
- package/src/lib/record/locales/fa.mjs.map +1 -0
- package/src/lib/record/locales/fr.js +11 -1
- package/src/lib/record/locales/fr.js.map +1 -1
- package/src/lib/record/locales/fr.mjs +11 -1
- package/src/lib/record/locales/fr.mjs.map +1 -1
- package/src/lib/record/locales/later.d.mts +8 -0
- package/src/lib/record/locales/later.d.ts +8 -0
- package/src/lib/record/locales/later.js +16 -0
- package/src/lib/record/locales/later.js.map +1 -0
- package/src/lib/record/locales/later.mjs +13 -0
- package/src/lib/record/locales/later.mjs.map +1 -0
- package/src/lib/record/locales/tr.d.mts +6 -0
- package/src/lib/record/locales/tr.d.ts +6 -0
- package/src/lib/record/locales/tr.js +118 -0
- package/src/lib/record/locales/tr.js.map +1 -0
- package/src/lib/record/locales/tr.mjs +115 -0
- package/src/lib/record/locales/tr.mjs.map +1 -0
- package/src/lib/record/locales/ur.d.mts +9 -0
- package/src/lib/record/locales/ur.d.ts +9 -0
- package/src/lib/record/locales/ur.js +118 -0
- package/src/lib/record/locales/ur.js.map +1 -0
- package/src/lib/record/locales/ur.mjs +115 -0
- package/src/lib/record/locales/ur.mjs.map +1 -0
- package/src/lib/record/memory-approvals.d.mts +7 -4
- package/src/lib/record/memory-approvals.d.ts +7 -4
- package/src/lib/record/memory-approvals.js +54 -7
- package/src/lib/record/memory-approvals.js.map +1 -1
- package/src/lib/record/memory-approvals.mjs +54 -7
- package/src/lib/record/memory-approvals.mjs.map +1 -1
- package/src/lib/record/memory-assist.d.mts +7 -2
- package/src/lib/record/memory-assist.d.ts +7 -2
- package/src/lib/record/memory-assist.js +47 -12
- package/src/lib/record/memory-assist.js.map +1 -1
- package/src/lib/record/memory-assist.mjs +46 -12
- package/src/lib/record/memory-assist.mjs.map +1 -1
- package/src/lib/record/memory-codes.d.mts +37 -0
- package/src/lib/record/memory-codes.d.ts +37 -0
- package/src/lib/record/memory-codes.js +50 -0
- package/src/lib/record/memory-codes.js.map +1 -0
- package/src/lib/record/memory-codes.mjs +47 -0
- package/src/lib/record/memory-codes.mjs.map +1 -0
- package/src/lib/record/memory-data-source.d.mts +60 -4
- package/src/lib/record/memory-data-source.d.ts +60 -4
- package/src/lib/record/memory-data-source.js +69 -1
- package/src/lib/record/memory-data-source.js.map +1 -1
- package/src/lib/record/memory-data-source.mjs +69 -1
- package/src/lib/record/memory-data-source.mjs.map +1 -1
- package/src/lib/record/memory-kept.d.mts +3 -1
- package/src/lib/record/memory-kept.d.ts +3 -1
- package/src/lib/record/memory-kept.js +7 -2
- package/src/lib/record/memory-kept.js.map +1 -1
- package/src/lib/record/memory-kept.mjs +7 -2
- package/src/lib/record/memory-kept.mjs.map +1 -1
- package/src/lib/record/memory-later.d.mts +3 -1
- package/src/lib/record/memory-later.d.ts +3 -1
- package/src/lib/record/memory-later.js +9 -5
- package/src/lib/record/memory-later.js.map +1 -1
- package/src/lib/record/memory-later.mjs +8 -4
- package/src/lib/record/memory-later.mjs.map +1 -1
- package/src/lib/record/memory-live.d.mts +8 -0
- package/src/lib/record/memory-live.d.ts +8 -0
- package/src/lib/record/memory-live.js +70 -0
- package/src/lib/record/memory-live.js.map +1 -0
- package/src/lib/record/memory-live.mjs +67 -0
- package/src/lib/record/memory-live.mjs.map +1 -0
- package/src/lib/record/memory-views.d.mts +11 -0
- package/src/lib/record/memory-views.d.ts +11 -0
- package/src/lib/record/memory-views.js +60 -0
- package/src/lib/record/memory-views.js.map +1 -0
- package/src/lib/record/memory-views.mjs +57 -0
- package/src/lib/record/memory-views.mjs.map +1 -0
- package/src/lib/record/messages.d.mts +24 -3
- package/src/lib/record/messages.d.ts +24 -3
- package/src/lib/record/messages.js +18 -3
- package/src/lib/record/messages.js.map +1 -1
- package/src/lib/record/messages.mjs +18 -3
- package/src/lib/record/messages.mjs.map +1 -1
- package/src/lib/record/order.d.mts +21 -0
- package/src/lib/record/order.d.ts +21 -0
- package/src/lib/record/order.js +129 -0
- package/src/lib/record/order.js.map +1 -0
- package/src/lib/record/order.mjs +122 -0
- package/src/lib/record/order.mjs.map +1 -0
- package/src/lib/record/outbox-form.d.mts +79 -0
- package/src/lib/record/outbox-form.d.ts +79 -0
- package/src/lib/record/outbox-form.js +291 -0
- package/src/lib/record/outbox-form.js.map +1 -0
- package/src/lib/record/outbox-form.mjs +286 -0
- package/src/lib/record/outbox-form.mjs.map +1 -0
- package/src/lib/record/outbox-part.d.mts +6 -0
- package/src/lib/record/outbox-part.d.ts +6 -0
- package/src/lib/record/outbox-part.js +13 -0
- package/src/lib/record/outbox-part.js.map +1 -0
- package/src/lib/record/outbox-part.mjs +7 -0
- package/src/lib/record/outbox-part.mjs.map +1 -0
- package/src/lib/record/pay-part.d.mts +6 -0
- package/src/lib/record/pay-part.d.ts +6 -0
- package/src/lib/record/pay-part.js +11 -0
- package/src/lib/record/pay-part.js.map +1 -0
- package/src/lib/record/pay-part.mjs +7 -0
- package/src/lib/record/pay-part.mjs.map +1 -0
- package/src/lib/record/payment-form.d.mts +25 -0
- package/src/lib/record/payment-form.d.ts +25 -0
- package/src/lib/record/payment-form.js +98 -0
- package/src/lib/record/payment-form.js.map +1 -0
- package/src/lib/record/payment-form.mjs +95 -0
- package/src/lib/record/payment-form.mjs.map +1 -0
- package/src/lib/record/prefill-part.d.mts +7 -0
- package/src/lib/record/prefill-part.d.ts +7 -0
- package/src/lib/record/prefill-part.js +15 -0
- package/src/lib/record/prefill-part.js.map +1 -0
- package/src/lib/record/prefill-part.mjs +8 -0
- package/src/lib/record/prefill-part.mjs.map +1 -0
- package/src/lib/record/press-undo.d.mts +42 -0
- package/src/lib/record/press-undo.d.ts +42 -0
- package/src/lib/record/press-undo.js +115 -0
- package/src/lib/record/press-undo.js.map +1 -0
- package/src/lib/record/press-undo.mjs +110 -0
- package/src/lib/record/press-undo.mjs.map +1 -0
- package/src/lib/record/quiz.d.mts +36 -0
- package/src/lib/record/quiz.d.ts +36 -0
- package/src/lib/record/quiz.js +90 -0
- package/src/lib/record/quiz.js.map +1 -0
- package/src/lib/record/quiz.mjs +87 -0
- package/src/lib/record/quiz.mjs.map +1 -0
- package/src/lib/record/record-words.js +1 -1
- package/src/lib/record/record-words.js.map +1 -1
- package/src/lib/record/record-words.mjs +1 -1
- package/src/lib/record/record-words.mjs.map +1 -1
- package/src/lib/record/run.d.mts +71 -8
- package/src/lib/record/run.d.ts +71 -8
- package/src/lib/record/run.js +40 -13
- package/src/lib/record/run.js.map +1 -1
- package/src/lib/record/run.mjs +38 -12
- package/src/lib/record/run.mjs.map +1 -1
- package/src/lib/record/survey-kit.d.mts +37 -0
- package/src/lib/record/survey-kit.d.ts +37 -0
- package/src/lib/record/survey-kit.js +99 -0
- package/src/lib/record/survey-kit.js.map +1 -0
- package/src/lib/record/survey-kit.mjs +96 -0
- package/src/lib/record/survey-kit.mjs.map +1 -0
- package/src/lib/record/survey.d.mts +16 -0
- package/src/lib/record/survey.d.ts +16 -0
- package/src/lib/record/survey.js +17 -0
- package/src/lib/record/survey.js.map +1 -0
- package/src/lib/record/survey.mjs +13 -0
- package/src/lib/record/survey.mjs.map +1 -0
- package/src/lib/record/surveyflow-part.d.mts +9 -0
- package/src/lib/record/surveyflow-part.d.ts +9 -0
- package/src/lib/record/surveyflow-part.js +20 -0
- package/src/lib/record/surveyflow-part.js.map +1 -0
- package/src/lib/record/surveyflow-part.mjs +10 -0
- package/src/lib/record/surveyflow-part.mjs.map +1 -0
- package/src/lib/record/timing.d.mts +76 -0
- package/src/lib/record/timing.d.ts +76 -0
- package/src/lib/record/timing.js +112 -0
- package/src/lib/record/timing.js.map +1 -0
- package/src/lib/record/timing.mjs +104 -0
- package/src/lib/record/timing.mjs.map +1 -0
- package/src/lib/record/undo-later.d.mts +9 -0
- package/src/lib/record/undo-later.d.ts +9 -0
- package/src/lib/record/undo-later.js +10 -0
- package/src/lib/record/undo-later.js.map +1 -0
- package/src/lib/record/undo-later.mjs +7 -0
- package/src/lib/record/undo-later.mjs.map +1 -0
- package/src/lib/record/undo-part.d.mts +8 -0
- package/src/lib/record/undo-part.d.ts +8 -0
- package/src/lib/record/undo-part.js +17 -0
- package/src/lib/record/undo-part.js.map +1 -0
- package/src/lib/record/undo-part.mjs +9 -0
- package/src/lib/record/undo-part.mjs.map +1 -0
- package/src/lib/record/upload-to-later.d.mts +10 -0
- package/src/lib/record/upload-to-later.d.ts +10 -0
- package/src/lib/record/upload-to-later.js +15 -0
- package/src/lib/record/upload-to-later.js.map +1 -0
- package/src/lib/record/upload-to-later.mjs +12 -0
- package/src/lib/record/upload-to-later.mjs.map +1 -0
- package/src/lib/record/uploads.d.mts +5 -0
- package/src/lib/record/uploads.d.ts +5 -0
- package/src/lib/record/uploads.js.map +1 -1
- package/src/lib/record/uploads.mjs.map +1 -1
- package/src/lib/record/values.d.mts +6 -0
- package/src/lib/record/values.d.ts +6 -0
- package/src/lib/record/values.js.map +1 -1
- package/src/lib/record/values.mjs.map +1 -1
- package/src/lib/record/verify-form.d.mts +24 -0
- package/src/lib/record/verify-form.d.ts +24 -0
- package/src/lib/record/verify-form.js +65 -0
- package/src/lib/record/verify-form.js.map +1 -0
- package/src/lib/record/verify-form.mjs +62 -0
- package/src/lib/record/verify-form.mjs.map +1 -0
- package/src/lib/record/verify-part.d.mts +6 -0
- package/src/lib/record/verify-part.d.ts +6 -0
- package/src/lib/record/verify-part.js +11 -0
- package/src/lib/record/verify-part.js.map +1 -0
- package/src/lib/record/verify-part.mjs +7 -0
- package/src/lib/record/verify-part.mjs.map +1 -0
- package/src/lib/record/words-chunks.d.mts +37 -0
- package/src/lib/record/words-chunks.d.ts +37 -0
- package/src/lib/record/words-chunks.js +94 -0
- package/src/lib/record/words-chunks.js.map +1 -0
- package/src/lib/record/words-chunks.mjs +86 -0
- package/src/lib/record/words-chunks.mjs.map +1 -0
- package/src/runtime.d.mts +28 -6
- package/src/runtime.d.ts +28 -6
- package/src/runtime.js +35 -6
- package/src/runtime.js.map +1 -1
- package/src/runtime.mjs +15 -3
- package/src/runtime.mjs.map +1 -1
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import * as z from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* A review before a page of responses is sent (`review` on a page): every answer shown — by step on a wizard, by
|
|
4
|
+
* titled group on a page of sections — each with Edit, then Back and Send. `true` says it with Fieldia's own words
|
|
5
|
+
* ("Check your answers"); its own `title` and `text` say it in the page's.
|
|
6
|
+
*
|
|
7
|
+
* "review": { "title": "Check your answers before you send them", "text": "Press Edit to change one." }
|
|
8
|
+
*/
|
|
9
|
+
export interface PageReview {
|
|
10
|
+
/** Its heading, in place of "Check your answers". */
|
|
11
|
+
title?: string;
|
|
12
|
+
/** Words under the heading. */
|
|
13
|
+
text?: string;
|
|
14
|
+
}
|
|
15
|
+
export declare const PageReviewSchema: z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
|
|
16
|
+
title: z.ZodOptional<z.ZodString>;
|
|
17
|
+
text: z.ZodOptional<z.ZodString>;
|
|
18
|
+
}, z.core.$strict>]>;
|
|
19
|
+
/**
|
|
20
|
+
* A time limit for a whole page of responses (`timeLimit` on the page) or one step of its wizard (`timeLimit` on the
|
|
21
|
+
* step): a countdown while it runs, a warning `warn` minutes before its end, then — as `then` says, and the page says
|
|
22
|
+
* which — the answers sent as they stand (`send`), or locked (`lock`): a page's kept for the person to send, a step's
|
|
23
|
+
* kept as they are while the form goes on to the next. A page's clock starts as the person presses Start, a step's as
|
|
24
|
+
* it is first entered; both are kept in a draft, so a page opened again goes on counting.
|
|
25
|
+
*
|
|
26
|
+
* "timeLimit": { "minutes": 20, "warn": 2, "then": "send" }
|
|
27
|
+
*/
|
|
28
|
+
export interface TimeLimit {
|
|
29
|
+
/** The time it allows, in minutes: 0.5 is thirty seconds. */
|
|
30
|
+
minutes: number;
|
|
31
|
+
/** How many minutes before its end the countdown warns: 1 unless said (a fifth of the time, where that is less). */
|
|
32
|
+
warn?: number;
|
|
33
|
+
/** What happens as it runs out: the answers sent as they stand (a page's, unless said), or locked (a step's, unless said). */
|
|
34
|
+
then?: 'send' | 'lock';
|
|
35
|
+
}
|
|
36
|
+
export declare const TimeLimitSchema: z.ZodObject<{
|
|
37
|
+
minutes: z.ZodNumber;
|
|
38
|
+
warn: z.ZodOptional<z.ZodNumber>;
|
|
39
|
+
then: z.ZodOptional<z.ZodEnum<{
|
|
40
|
+
send: "send";
|
|
41
|
+
lock: "lock";
|
|
42
|
+
}>>;
|
|
43
|
+
}, z.core.$strict>;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import * as z from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* A review before a page of responses is sent (`review` on a page): every answer shown — by step on a wizard, by
|
|
4
|
+
* titled group on a page of sections — each with Edit, then Back and Send. `true` says it with Fieldia's own words
|
|
5
|
+
* ("Check your answers"); its own `title` and `text` say it in the page's.
|
|
6
|
+
*
|
|
7
|
+
* "review": { "title": "Check your answers before you send them", "text": "Press Edit to change one." }
|
|
8
|
+
*/
|
|
9
|
+
export interface PageReview {
|
|
10
|
+
/** Its heading, in place of "Check your answers". */
|
|
11
|
+
title?: string;
|
|
12
|
+
/** Words under the heading. */
|
|
13
|
+
text?: string;
|
|
14
|
+
}
|
|
15
|
+
export declare const PageReviewSchema: z.ZodUnion<readonly [z.ZodBoolean, z.ZodObject<{
|
|
16
|
+
title: z.ZodOptional<z.ZodString>;
|
|
17
|
+
text: z.ZodOptional<z.ZodString>;
|
|
18
|
+
}, z.z.core.$strict>]>;
|
|
19
|
+
/**
|
|
20
|
+
* A time limit for a whole page of responses (`timeLimit` on the page) or one step of its wizard (`timeLimit` on the
|
|
21
|
+
* step): a countdown while it runs, a warning `warn` minutes before its end, then — as `then` says, and the page says
|
|
22
|
+
* which — the answers sent as they stand (`send`), or locked (`lock`): a page's kept for the person to send, a step's
|
|
23
|
+
* kept as they are while the form goes on to the next. A page's clock starts as the person presses Start, a step's as
|
|
24
|
+
* it is first entered; both are kept in a draft, so a page opened again goes on counting.
|
|
25
|
+
*
|
|
26
|
+
* "timeLimit": { "minutes": 20, "warn": 2, "then": "send" }
|
|
27
|
+
*/
|
|
28
|
+
export interface TimeLimit {
|
|
29
|
+
/** The time it allows, in minutes: 0.5 is thirty seconds. */
|
|
30
|
+
minutes: number;
|
|
31
|
+
/** How many minutes before its end the countdown warns: 1 unless said (a fifth of the time, where that is less). */
|
|
32
|
+
warn?: number;
|
|
33
|
+
/** What happens as it runs out: the answers sent as they stand (a page's, unless said), or locked (a step's, unless said). */
|
|
34
|
+
then?: 'send' | 'lock';
|
|
35
|
+
}
|
|
36
|
+
export declare const TimeLimitSchema: z.ZodObject<{
|
|
37
|
+
minutes: z.ZodNumber;
|
|
38
|
+
warn: z.ZodOptional<z.ZodNumber>;
|
|
39
|
+
then: z.ZodOptional<z.ZodEnum<{
|
|
40
|
+
send: "send";
|
|
41
|
+
lock: "lock";
|
|
42
|
+
}>>;
|
|
43
|
+
}, z.z.core.$strict>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TimeLimitSchema = exports.PageReviewSchema = void 0;
|
|
4
|
+
const z = require("zod");
|
|
5
|
+
exports.PageReviewSchema = z
|
|
6
|
+
.union([
|
|
7
|
+
z.boolean(),
|
|
8
|
+
z.strictObject({
|
|
9
|
+
title: z.string().regex(/\S/, 'a review’s title is words').max(300).optional(),
|
|
10
|
+
text: z.string().regex(/\S/, 'a review’s text is words').max(2000).optional(),
|
|
11
|
+
}),
|
|
12
|
+
])
|
|
13
|
+
.meta({ id: 'PageReview' });
|
|
14
|
+
exports.TimeLimitSchema = z
|
|
15
|
+
.strictObject({
|
|
16
|
+
minutes: z.number().positive().max(24 * 60),
|
|
17
|
+
warn: z.number().positive().max(24 * 60).optional(),
|
|
18
|
+
then: z.enum(['send', 'lock']).optional(),
|
|
19
|
+
})
|
|
20
|
+
.refine((limit) => limit.warn === undefined || limit.warn < limit.minutes, { message: 'warn comes before the end: fewer minutes than the limit', path: ['warn'] })
|
|
21
|
+
.meta({ id: 'TimeLimit' });
|
|
22
|
+
//# sourceMappingURL=flow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../../../../../../libs/core/src/lib/format/flow.ts"],"names":[],"mappings":";;;AAAA,yBAAyB;AAgBZ,QAAA,gBAAgB,GAAG,CAAC;KAC9B,KAAK,CAAC;IACL,CAAC,CAAC,OAAO,EAAE;IACX,CAAC,CAAC,YAAY,CAAC;QACb,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,2BAA2B,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;QAC9E,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;KAC9E,CAAC;CACH,CAAC;KACD,IAAI,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;AAoBjB,QAAA,eAAe,GAAG,CAAC;KAC7B,YAAY,CAAC;IACZ,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE;IACnD,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC1C,CAAC;KACD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,yDAAyD,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;KACjK,IAAI,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import * as z from 'zod';
|
|
2
|
+
export const PageReviewSchema = z
|
|
3
|
+
.union([
|
|
4
|
+
z.boolean(),
|
|
5
|
+
z.strictObject({
|
|
6
|
+
title: z.string().regex(/\S/, 'a review’s title is words').max(300).optional(),
|
|
7
|
+
text: z.string().regex(/\S/, 'a review’s text is words').max(2000).optional(),
|
|
8
|
+
}),
|
|
9
|
+
])
|
|
10
|
+
.meta({ id: 'PageReview' });
|
|
11
|
+
export const TimeLimitSchema = z
|
|
12
|
+
.strictObject({
|
|
13
|
+
minutes: z.number().positive().max(24 * 60),
|
|
14
|
+
warn: z.number().positive().max(24 * 60).optional(),
|
|
15
|
+
then: z.enum(['send', 'lock']).optional(),
|
|
16
|
+
})
|
|
17
|
+
.refine((limit) => limit.warn === undefined || limit.warn < limit.minutes, { message: 'warn comes before the end: fewer minutes than the limit', path: ['warn'] })
|
|
18
|
+
.meta({ id: 'TimeLimit' });
|
|
19
|
+
//# sourceMappingURL=flow.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow.mjs","sourceRoot":"","sources":["../../../../../../libs/core/src/lib/format/flow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAgBzB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC;KAC9B,KAAK,CAAC;IACL,CAAC,CAAC,OAAO,EAAE;IACX,CAAC,CAAC,YAAY,CAAC;QACb,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,2BAA2B,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;QAC9E,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;KAC9E,CAAC;CACH,CAAC;KACD,IAAI,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;AAoB9B,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,YAAY,CAAC;IACZ,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE;IACnD,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC1C,CAAC;KACD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,yDAAyD,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;KACjK,IAAI,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import type { Page } from './page.mjs';
|
|
2
|
+
/**
|
|
3
|
+
* A starting page from what an app already has: a JSON Schema, an OpenAPI document (a component's schema, or an
|
|
4
|
+
* operation's request body and parameters), or a model's fields (Fieldia's own, or a backend's field list such as
|
|
5
|
+
* Flectra's `fields_get`). Each property becomes a field of its kind — text, numbers, yes or no, dates, choices, files,
|
|
6
|
+
* lines — with its label, help, whether it is required or read-only, its limits, its pattern and its default, laid out
|
|
7
|
+
* in sections (a screen) or steps (a survey). What has no field of its own is kept as JSON and said; what cannot be
|
|
8
|
+
* read is left out and said: nothing is dropped quietly.
|
|
9
|
+
*
|
|
10
|
+
* const { page, notes, unmapped } = pageFromSchema(openApi, { schema: 'POST /enquiries' });
|
|
11
|
+
*
|
|
12
|
+
* The page is a start, to edit in the designer: it names a model (`data.model`) the app's data source answers for.
|
|
13
|
+
*/
|
|
14
|
+
/** Something a schema said, about one of its properties (`path`, as the schema names it), and how it was taken. */
|
|
15
|
+
export interface SchemaNote {
|
|
16
|
+
path: string;
|
|
17
|
+
/**
|
|
18
|
+
* Kept with a change: `renamed` (a name a field cannot have), `flattened` (an object's properties as fields of their
|
|
19
|
+
* own, in a section), `json` (a value of a kind no field holds, kept as JSON), `limit` (a limit no setting holds),
|
|
20
|
+
* `format` (a format Fieldia does not know, kept as text), `pattern` (a pattern that does not read, left out),
|
|
21
|
+
* `constant` (one value, shown read-only), `links` (lines whose fields are not given, kept as links), `languages` (a
|
|
22
|
+
* backend's text kept in several languages, `translate: true`, typed in one here: the page names its languages).
|
|
23
|
+
* Left out: `reference` (a `$ref` outside the document, or one that refers to itself), `kind` (no kind of value).
|
|
24
|
+
*/
|
|
25
|
+
code: 'renamed' | 'flattened' | 'json' | 'limit' | 'format' | 'pattern' | 'constant' | 'links' | 'languages' | 'reference' | 'kind';
|
|
26
|
+
/** What exactly: the new name, the limit as the schema wrote it, the kind of value, the reference. */
|
|
27
|
+
detail?: string;
|
|
28
|
+
}
|
|
29
|
+
export interface PageFromSchema {
|
|
30
|
+
page: Page;
|
|
31
|
+
/** What was kept with a change. */
|
|
32
|
+
notes: SchemaNote[];
|
|
33
|
+
/** What was left out. */
|
|
34
|
+
unmapped: SchemaNote[];
|
|
35
|
+
/** What it was read as. */
|
|
36
|
+
from: 'json-schema' | 'openapi' | 'fields';
|
|
37
|
+
}
|
|
38
|
+
/** Why a schema gave no page, for an app (or the designer) to say in its own words; the error's message says it in English. */
|
|
39
|
+
export type SchemaRefusal = 'not-json-object' | 'not-a-schema' | 'not-an-object' | 'outside' | 'no-properties' | 'no-such-schema' | 'nothing-in-document';
|
|
40
|
+
/** A schema that gave no page: what `pageFromSchema` throws, its `code` saying why. */
|
|
41
|
+
export declare class SchemaRefused extends Error {
|
|
42
|
+
readonly code: SchemaRefusal;
|
|
43
|
+
constructor(code: SchemaRefusal, message: string);
|
|
44
|
+
}
|
|
45
|
+
export interface PageFromSchemaOptions {
|
|
46
|
+
/** A screen of sections, kept as a record of `model` (the default), or a survey's steps, sent as responses. */
|
|
47
|
+
kind?: 'screen' | 'survey';
|
|
48
|
+
/** The page's title: the schema's own, else its name in the document, else "Form". */
|
|
49
|
+
title?: string;
|
|
50
|
+
/** The page's id: its title's words joined by hyphens. */
|
|
51
|
+
id?: string;
|
|
52
|
+
/** The model its records are kept as: its title's words joined by dots. */
|
|
53
|
+
model?: string;
|
|
54
|
+
/**
|
|
55
|
+
* An OpenAPI document's schema to start from: a component's name (`Pet`), an operation's id (`addPet`), or its
|
|
56
|
+
* method and path (`POST /pets`). The first operation with a request body or parameters, else the first component.
|
|
57
|
+
*/
|
|
58
|
+
schema?: string;
|
|
59
|
+
}
|
|
60
|
+
/** What an OpenAPI document offers to start from, for a person to choose: its operations, then its components. */
|
|
61
|
+
export declare function schemaChoices(input: unknown): {
|
|
62
|
+
value: string;
|
|
63
|
+
label: string;
|
|
64
|
+
}[];
|
|
65
|
+
/** A page to start from, from a JSON Schema, an OpenAPI document or a model's fields. Throws when it is none of them. */
|
|
66
|
+
export declare function pageFromSchema(input: unknown, options?: PageFromSchemaOptions): PageFromSchema;
|
|
67
|
+
/** Each note in words, for an app to show; the designer says them in its own language. */
|
|
68
|
+
export declare function schemaNoteWords(note: SchemaNote): string;
|
|
69
|
+
/** Words for a name: `first_name`, `firstName` and `first-name` all "First name". */
|
|
70
|
+
export declare function wordsOf(name: string): string;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import type { Page } from './page';
|
|
2
|
+
/**
|
|
3
|
+
* A starting page from what an app already has: a JSON Schema, an OpenAPI document (a component's schema, or an
|
|
4
|
+
* operation's request body and parameters), or a model's fields (Fieldia's own, or a backend's field list such as
|
|
5
|
+
* Flectra's `fields_get`). Each property becomes a field of its kind — text, numbers, yes or no, dates, choices, files,
|
|
6
|
+
* lines — with its label, help, whether it is required or read-only, its limits, its pattern and its default, laid out
|
|
7
|
+
* in sections (a screen) or steps (a survey). What has no field of its own is kept as JSON and said; what cannot be
|
|
8
|
+
* read is left out and said: nothing is dropped quietly.
|
|
9
|
+
*
|
|
10
|
+
* const { page, notes, unmapped } = pageFromSchema(openApi, { schema: 'POST /enquiries' });
|
|
11
|
+
*
|
|
12
|
+
* The page is a start, to edit in the designer: it names a model (`data.model`) the app's data source answers for.
|
|
13
|
+
*/
|
|
14
|
+
/** Something a schema said, about one of its properties (`path`, as the schema names it), and how it was taken. */
|
|
15
|
+
export interface SchemaNote {
|
|
16
|
+
path: string;
|
|
17
|
+
/**
|
|
18
|
+
* Kept with a change: `renamed` (a name a field cannot have), `flattened` (an object's properties as fields of their
|
|
19
|
+
* own, in a section), `json` (a value of a kind no field holds, kept as JSON), `limit` (a limit no setting holds),
|
|
20
|
+
* `format` (a format Fieldia does not know, kept as text), `pattern` (a pattern that does not read, left out),
|
|
21
|
+
* `constant` (one value, shown read-only), `links` (lines whose fields are not given, kept as links), `languages` (a
|
|
22
|
+
* backend's text kept in several languages, `translate: true`, typed in one here: the page names its languages).
|
|
23
|
+
* Left out: `reference` (a `$ref` outside the document, or one that refers to itself), `kind` (no kind of value).
|
|
24
|
+
*/
|
|
25
|
+
code: 'renamed' | 'flattened' | 'json' | 'limit' | 'format' | 'pattern' | 'constant' | 'links' | 'languages' | 'reference' | 'kind';
|
|
26
|
+
/** What exactly: the new name, the limit as the schema wrote it, the kind of value, the reference. */
|
|
27
|
+
detail?: string;
|
|
28
|
+
}
|
|
29
|
+
export interface PageFromSchema {
|
|
30
|
+
page: Page;
|
|
31
|
+
/** What was kept with a change. */
|
|
32
|
+
notes: SchemaNote[];
|
|
33
|
+
/** What was left out. */
|
|
34
|
+
unmapped: SchemaNote[];
|
|
35
|
+
/** What it was read as. */
|
|
36
|
+
from: 'json-schema' | 'openapi' | 'fields';
|
|
37
|
+
}
|
|
38
|
+
/** Why a schema gave no page, for an app (or the designer) to say in its own words; the error's message says it in English. */
|
|
39
|
+
export type SchemaRefusal = 'not-json-object' | 'not-a-schema' | 'not-an-object' | 'outside' | 'no-properties' | 'no-such-schema' | 'nothing-in-document';
|
|
40
|
+
/** A schema that gave no page: what `pageFromSchema` throws, its `code` saying why. */
|
|
41
|
+
export declare class SchemaRefused extends Error {
|
|
42
|
+
readonly code: SchemaRefusal;
|
|
43
|
+
constructor(code: SchemaRefusal, message: string);
|
|
44
|
+
}
|
|
45
|
+
export interface PageFromSchemaOptions {
|
|
46
|
+
/** A screen of sections, kept as a record of `model` (the default), or a survey's steps, sent as responses. */
|
|
47
|
+
kind?: 'screen' | 'survey';
|
|
48
|
+
/** The page's title: the schema's own, else its name in the document, else "Form". */
|
|
49
|
+
title?: string;
|
|
50
|
+
/** The page's id: its title's words joined by hyphens. */
|
|
51
|
+
id?: string;
|
|
52
|
+
/** The model its records are kept as: its title's words joined by dots. */
|
|
53
|
+
model?: string;
|
|
54
|
+
/**
|
|
55
|
+
* An OpenAPI document's schema to start from: a component's name (`Pet`), an operation's id (`addPet`), or its
|
|
56
|
+
* method and path (`POST /pets`). The first operation with a request body or parameters, else the first component.
|
|
57
|
+
*/
|
|
58
|
+
schema?: string;
|
|
59
|
+
}
|
|
60
|
+
/** What an OpenAPI document offers to start from, for a person to choose: its operations, then its components. */
|
|
61
|
+
export declare function schemaChoices(input: unknown): {
|
|
62
|
+
value: string;
|
|
63
|
+
label: string;
|
|
64
|
+
}[];
|
|
65
|
+
/** A page to start from, from a JSON Schema, an OpenAPI document or a model's fields. Throws when it is none of them. */
|
|
66
|
+
export declare function pageFromSchema(input: unknown, options?: PageFromSchemaOptions): PageFromSchema;
|
|
67
|
+
/** Each note in words, for an app to show; the designer says them in its own language. */
|
|
68
|
+
export declare function schemaNoteWords(note: SchemaNote): string;
|
|
69
|
+
/** Words for a name: `first_name`, `firstName` and `first-name` all "First name". */
|
|
70
|
+
export declare function wordsOf(name: string): string;
|