@fieldia/designer 0.26.1 → 0.28.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 +75 -0
- package/package.json +4 -4
- package/src/lib/answer-picker.d.mts +22 -0
- package/src/lib/answer-picker.d.ts +22 -0
- package/src/lib/answer-picker.js +104 -0
- package/src/lib/answer-picker.js.map +1 -0
- package/src/lib/answer-picker.mjs +99 -0
- package/src/lib/answer-picker.mjs.map +1 -0
- package/src/lib/canvas-form.js +2 -1
- package/src/lib/canvas-form.js.map +1 -1
- package/src/lib/canvas-form.mjs +2 -1
- package/src/lib/canvas-form.mjs.map +1 -1
- package/src/lib/chrome.js +15 -4
- package/src/lib/chrome.js.map +1 -1
- package/src/lib/chrome.mjs +15 -4
- package/src/lib/chrome.mjs.map +1 -1
- package/src/lib/clipboard-names.d.mts +1 -1
- package/src/lib/clipboard-names.d.ts +1 -1
- package/src/lib/clipboard-names.js +25 -4
- package/src/lib/clipboard-names.js.map +1 -1
- package/src/lib/clipboard-names.mjs +25 -4
- package/src/lib/clipboard-names.mjs.map +1 -1
- package/src/lib/columns-editor.d.mts +5 -2
- package/src/lib/columns-editor.d.ts +5 -2
- package/src/lib/columns-editor.js +144 -3
- package/src/lib/columns-editor.js.map +1 -1
- package/src/lib/columns-editor.mjs +144 -3
- package/src/lib/columns-editor.mjs.map +1 -1
- package/src/lib/condition-editor.d.mts +5 -1
- package/src/lib/condition-editor.d.ts +5 -1
- package/src/lib/condition-editor.js +5 -2
- package/src/lib/condition-editor.js.map +1 -1
- package/src/lib/condition-editor.mjs +5 -2
- package/src/lib/condition-editor.mjs.map +1 -1
- package/src/lib/conditions.d.mts +6 -2
- package/src/lib/conditions.d.ts +6 -2
- package/src/lib/conditions.js +9 -3
- package/src/lib/conditions.js.map +1 -1
- package/src/lib/conditions.mjs +9 -3
- package/src/lib/conditions.mjs.map +1 -1
- package/src/lib/designer.d.mts +43 -2
- package/src/lib/designer.d.ts +43 -2
- package/src/lib/designer.js +111 -14
- package/src/lib/designer.js.map +1 -1
- package/src/lib/designer.mjs +113 -16
- package/src/lib/designer.mjs.map +1 -1
- package/src/lib/endings-commands.d.mts +27 -0
- package/src/lib/endings-commands.d.ts +27 -0
- package/src/lib/endings-commands.js +58 -0
- package/src/lib/endings-commands.js.map +1 -0
- package/src/lib/endings-commands.mjs +55 -0
- package/src/lib/endings-commands.mjs.map +1 -0
- package/src/lib/endings-editor.d.mts +14 -0
- package/src/lib/endings-editor.d.ts +14 -0
- package/src/lib/endings-editor.js +131 -0
- package/src/lib/endings-editor.js.map +1 -0
- package/src/lib/endings-editor.mjs +128 -0
- package/src/lib/endings-editor.mjs.map +1 -0
- package/src/lib/head-parts.js +1 -1
- package/src/lib/head-parts.js.map +1 -1
- package/src/lib/head-parts.mjs +2 -2
- package/src/lib/head-parts.mjs.map +1 -1
- package/src/lib/json-checks.d.mts +2 -1
- package/src/lib/json-checks.d.ts +2 -1
- package/src/lib/json-checks.js +3 -3
- package/src/lib/json-checks.js.map +1 -1
- package/src/lib/json-checks.mjs +3 -3
- package/src/lib/json-checks.mjs.map +1 -1
- package/src/lib/json-view.js +1 -1
- package/src/lib/json-view.js.map +1 -1
- package/src/lib/json-view.mjs +1 -1
- package/src/lib/json-view.mjs.map +1 -1
- package/src/lib/kind-commands.d.mts +4 -0
- package/src/lib/kind-commands.d.ts +4 -0
- package/src/lib/kind-commands.js +19 -0
- package/src/lib/kind-commands.js.map +1 -1
- package/src/lib/kind-commands.mjs +19 -0
- package/src/lib/kind-commands.mjs.map +1 -1
- package/src/lib/kind-settings-structures.js +50 -3
- package/src/lib/kind-settings-structures.js.map +1 -1
- package/src/lib/kind-settings-structures.mjs +50 -3
- package/src/lib/kind-settings-structures.mjs.map +1 -1
- package/src/lib/kind-settings.js +48 -0
- package/src/lib/kind-settings.js.map +1 -1
- package/src/lib/kind-settings.mjs +48 -0
- package/src/lib/kind-settings.mjs.map +1 -1
- package/src/lib/kinds.d.mts +3 -2
- package/src/lib/kinds.d.ts +3 -2
- package/src/lib/kinds.js +3 -1
- package/src/lib/kinds.js.map +1 -1
- package/src/lib/kinds.mjs +3 -1
- package/src/lib/kinds.mjs.map +1 -1
- package/src/lib/limits-settings.d.mts +14 -0
- package/src/lib/limits-settings.d.ts +14 -0
- package/src/lib/limits-settings.js +66 -0
- package/src/lib/limits-settings.js.map +1 -0
- package/src/lib/limits-settings.mjs +63 -0
- package/src/lib/limits-settings.mjs.map +1 -0
- package/src/lib/list-commands.d.mts +21 -3
- package/src/lib/list-commands.d.ts +21 -3
- package/src/lib/list-commands.js +61 -9
- package/src/lib/list-commands.js.map +1 -1
- package/src/lib/list-commands.mjs +60 -8
- package/src/lib/list-commands.mjs.map +1 -1
- package/src/lib/list-properties.js +51 -4
- package/src/lib/list-properties.js.map +1 -1
- package/src/lib/list-properties.mjs +53 -6
- package/src/lib/list-properties.mjs.map +1 -1
- package/src/lib/list-rows-settings.js +1 -1
- package/src/lib/list-rows-settings.js.map +1 -1
- package/src/lib/list-rows-settings.mjs +1 -1
- package/src/lib/list-rows-settings.mjs.map +1 -1
- package/src/lib/list-source.d.mts +2 -2
- package/src/lib/list-source.d.ts +2 -2
- package/src/lib/list-source.js +55 -9
- package/src/lib/list-source.js.map +1 -1
- package/src/lib/list-source.mjs +55 -9
- package/src/lib/list-source.mjs.map +1 -1
- package/src/lib/locales/ar/changes.js +2 -0
- package/src/lib/locales/ar/changes.js.map +1 -1
- package/src/lib/locales/ar/changes.mjs +2 -0
- package/src/lib/locales/ar/changes.mjs.map +1 -1
- package/src/lib/locales/ar/checks.js +1 -0
- package/src/lib/locales/ar/checks.js.map +1 -1
- package/src/lib/locales/ar/checks.mjs +1 -0
- package/src/lib/locales/ar/checks.mjs.map +1 -1
- package/src/lib/locales/ar/endings.d.mts +3 -0
- package/src/lib/locales/ar/endings.d.ts +3 -0
- package/src/lib/locales/ar/endings.js +40 -0
- package/src/lib/locales/ar/endings.js.map +1 -0
- package/src/lib/locales/ar/endings.mjs +37 -0
- package/src/lib/locales/ar/endings.mjs.map +1 -0
- package/src/lib/locales/ar/index.js +2 -1
- package/src/lib/locales/ar/index.js.map +1 -1
- package/src/lib/locales/ar/index.mjs +2 -1
- package/src/lib/locales/ar/index.mjs.map +1 -1
- package/src/lib/locales/ar/list.js +9 -1
- package/src/lib/locales/ar/list.js.map +1 -1
- package/src/lib/locales/ar/list.mjs +9 -1
- package/src/lib/locales/ar/list.mjs.map +1 -1
- package/src/lib/locales/ar/options.js +4 -0
- package/src/lib/locales/ar/options.js.map +1 -1
- package/src/lib/locales/ar/options.mjs +4 -0
- package/src/lib/locales/ar/options.mjs.map +1 -1
- package/src/lib/locales/ar/panel.js +20 -0
- package/src/lib/locales/ar/panel.js.map +1 -1
- package/src/lib/locales/ar/panel.mjs +20 -0
- package/src/lib/locales/ar/panel.mjs.map +1 -1
- package/src/lib/locales/ar/questions.js +24 -1
- package/src/lib/locales/ar/questions.js.map +1 -1
- package/src/lib/locales/ar/questions.mjs +24 -1
- package/src/lib/locales/ar/questions.mjs.map +1 -1
- package/src/lib/locales/ar/refusals.js +15 -2
- package/src/lib/locales/ar/refusals.js.map +1 -1
- package/src/lib/locales/ar/refusals.mjs +15 -2
- package/src/lib/locales/ar/refusals.mjs.map +1 -1
- package/src/lib/locales/ar/rules-ui.js +21 -1
- package/src/lib/locales/ar/rules-ui.js.map +1 -1
- package/src/lib/locales/ar/rules-ui.mjs +21 -1
- package/src/lib/locales/ar/rules-ui.mjs.map +1 -1
- package/src/lib/locales/ar/rules.js +4 -0
- package/src/lib/locales/ar/rules.js.map +1 -1
- package/src/lib/locales/ar/rules.mjs +4 -0
- package/src/lib/locales/ar/rules.mjs.map +1 -1
- package/src/lib/locales/en/changes.d.mts +2 -0
- package/src/lib/locales/en/changes.d.ts +2 -0
- package/src/lib/locales/en/changes.js +2 -0
- package/src/lib/locales/en/changes.js.map +1 -1
- package/src/lib/locales/en/changes.mjs +2 -0
- package/src/lib/locales/en/changes.mjs.map +1 -1
- package/src/lib/locales/en/checks.d.mts +2 -0
- package/src/lib/locales/en/checks.d.ts +2 -0
- package/src/lib/locales/en/checks.js +2 -0
- package/src/lib/locales/en/checks.js.map +1 -1
- package/src/lib/locales/en/checks.mjs +2 -0
- package/src/lib/locales/en/checks.mjs.map +1 -1
- package/src/lib/locales/en/endings.d.mts +38 -0
- package/src/lib/locales/en/endings.d.ts +38 -0
- package/src/lib/locales/en/endings.js +44 -0
- package/src/lib/locales/en/endings.js.map +1 -0
- package/src/lib/locales/en/endings.mjs +41 -0
- package/src/lib/locales/en/endings.mjs.map +1 -0
- package/src/lib/locales/en/index.d.mts +127 -1
- package/src/lib/locales/en/index.d.ts +127 -1
- package/src/lib/locales/en/index.js +2 -1
- package/src/lib/locales/en/index.js.map +1 -1
- package/src/lib/locales/en/index.mjs +2 -1
- package/src/lib/locales/en/index.mjs.map +1 -1
- package/src/lib/locales/en/list.d.mts +8 -0
- package/src/lib/locales/en/list.d.ts +8 -0
- package/src/lib/locales/en/list.js +9 -1
- package/src/lib/locales/en/list.js.map +1 -1
- package/src/lib/locales/en/list.mjs +9 -1
- package/src/lib/locales/en/list.mjs.map +1 -1
- package/src/lib/locales/en/options.d.mts +6 -0
- package/src/lib/locales/en/options.d.ts +6 -0
- package/src/lib/locales/en/options.js +6 -0
- package/src/lib/locales/en/options.js.map +1 -1
- package/src/lib/locales/en/options.mjs +6 -0
- package/src/lib/locales/en/options.mjs.map +1 -1
- package/src/lib/locales/en/panel.d.mts +13 -0
- package/src/lib/locales/en/panel.d.ts +13 -0
- package/src/lib/locales/en/panel.js +13 -0
- package/src/lib/locales/en/panel.js.map +1 -1
- package/src/lib/locales/en/panel.mjs +13 -0
- package/src/lib/locales/en/panel.mjs.map +1 -1
- package/src/lib/locales/en/questions.d.mts +25 -0
- package/src/lib/locales/en/questions.d.ts +25 -0
- package/src/lib/locales/en/questions.js +25 -1
- package/src/lib/locales/en/questions.js.map +1 -1
- package/src/lib/locales/en/questions.mjs +25 -1
- package/src/lib/locales/en/questions.mjs.map +1 -1
- package/src/lib/locales/en/refusals.d.mts +13 -0
- package/src/lib/locales/en/refusals.d.ts +13 -0
- package/src/lib/locales/en/refusals.js +15 -2
- package/src/lib/locales/en/refusals.js.map +1 -1
- package/src/lib/locales/en/refusals.mjs +15 -2
- package/src/lib/locales/en/refusals.mjs.map +1 -1
- package/src/lib/locales/en/rules-ui.d.mts +29 -1
- package/src/lib/locales/en/rules-ui.d.ts +29 -1
- package/src/lib/locales/en/rules-ui.js +23 -1
- package/src/lib/locales/en/rules-ui.js.map +1 -1
- package/src/lib/locales/en/rules-ui.mjs +23 -1
- package/src/lib/locales/en/rules-ui.mjs.map +1 -1
- package/src/lib/locales/en/rules.d.mts +3 -0
- package/src/lib/locales/en/rules.d.ts +3 -0
- package/src/lib/locales/en/rules.js +4 -0
- package/src/lib/locales/en/rules.js.map +1 -1
- package/src/lib/locales/en/rules.mjs +4 -0
- package/src/lib/locales/en/rules.mjs.map +1 -1
- package/src/lib/option-when.d.mts +32 -0
- package/src/lib/option-when.d.ts +32 -0
- package/src/lib/option-when.js +110 -0
- package/src/lib/option-when.js.map +1 -0
- package/src/lib/option-when.mjs +106 -0
- package/src/lib/option-when.mjs.map +1 -0
- package/src/lib/page-checks.d.mts +2 -1
- package/src/lib/page-checks.d.ts +2 -1
- package/src/lib/page-checks.js +14 -2
- package/src/lib/page-checks.js.map +1 -1
- package/src/lib/page-checks.mjs +15 -3
- package/src/lib/page-checks.mjs.map +1 -1
- package/src/lib/page-json.d.mts +5 -3
- package/src/lib/page-json.d.ts +5 -3
- package/src/lib/page-json.js +4 -4
- package/src/lib/page-json.js.map +1 -1
- package/src/lib/page-json.mjs +4 -4
- package/src/lib/page-json.mjs.map +1 -1
- package/src/lib/page-tree.js +3 -3
- package/src/lib/page-tree.js.map +1 -1
- package/src/lib/page-tree.mjs +4 -4
- package/src/lib/page-tree.mjs.map +1 -1
- package/src/lib/panel-block.js +3 -1
- package/src/lib/panel-block.js.map +1 -1
- package/src/lib/panel-block.mjs +3 -1
- package/src/lib/panel-block.mjs.map +1 -1
- package/src/lib/panel-field.js +4 -1
- package/src/lib/panel-field.js.map +1 -1
- package/src/lib/panel-field.mjs +4 -1
- package/src/lib/panel-field.mjs.map +1 -1
- package/src/lib/panel-page.js +16 -2
- package/src/lib/panel-page.js.map +1 -1
- package/src/lib/panel-page.mjs +16 -2
- package/src/lib/panel-page.mjs.map +1 -1
- package/src/lib/placeholder-when.js +2 -2
- package/src/lib/placeholder-when.js.map +1 -1
- package/src/lib/placeholder-when.mjs +2 -2
- package/src/lib/placeholder-when.mjs.map +1 -1
- package/src/lib/rules-answers.js +10 -4
- package/src/lib/rules-answers.js.map +1 -1
- package/src/lib/rules-answers.mjs +11 -5
- package/src/lib/rules-answers.mjs.map +1 -1
- package/src/lib/rules-checks.d.mts +2 -2
- package/src/lib/rules-checks.d.ts +2 -2
- package/src/lib/rules-checks.js +23 -3
- package/src/lib/rules-checks.js.map +1 -1
- package/src/lib/rules-checks.mjs +24 -4
- package/src/lib/rules-checks.mjs.map +1 -1
- package/src/lib/rules-commands.d.mts +5 -3
- package/src/lib/rules-commands.d.ts +5 -3
- package/src/lib/rules-commands.js +17 -17
- package/src/lib/rules-commands.js.map +1 -1
- package/src/lib/rules-commands.mjs +17 -17
- package/src/lib/rules-commands.mjs.map +1 -1
- package/src/lib/rules-defaults.js +3 -1
- package/src/lib/rules-defaults.js.map +1 -1
- package/src/lib/rules-defaults.mjs +3 -1
- package/src/lib/rules-defaults.mjs.map +1 -1
- package/src/lib/rules-formula-box.d.mts +4 -2
- package/src/lib/rules-formula-box.d.ts +4 -2
- package/src/lib/rules-formula-box.js +3 -1
- package/src/lib/rules-formula-box.js.map +1 -1
- package/src/lib/rules-formula-box.mjs +3 -1
- package/src/lib/rules-formula-box.mjs.map +1 -1
- package/src/lib/rules-formula.d.mts +13 -6
- package/src/lib/rules-formula.d.ts +13 -6
- package/src/lib/rules-formula.js +65 -24
- package/src/lib/rules-formula.js.map +1 -1
- package/src/lib/rules-formula.mjs +65 -25
- package/src/lib/rules-formula.mjs.map +1 -1
- package/src/lib/rules-sample.d.mts +4 -2
- package/src/lib/rules-sample.d.ts +4 -2
- package/src/lib/rules-sample.js +5 -4
- package/src/lib/rules-sample.js.map +1 -1
- package/src/lib/rules-sample.mjs +5 -4
- package/src/lib/rules-sample.mjs.map +1 -1
- package/src/lib/rules-worked-out.js +72 -17
- package/src/lib/rules-worked-out.js.map +1 -1
- package/src/lib/rules-worked-out.mjs +73 -18
- package/src/lib/rules-worked-out.mjs.map +1 -1
- package/src/lib/screen-canvas.js +3 -1
- package/src/lib/screen-canvas.js.map +1 -1
- package/src/lib/screen-canvas.mjs +3 -1
- package/src/lib/screen-canvas.mjs.map +1 -1
- package/src/lib/steps-commands.d.mts +5 -3
- package/src/lib/steps-commands.d.ts +5 -3
- package/src/lib/steps-commands.js +5 -5
- package/src/lib/steps-commands.js.map +1 -1
- package/src/lib/steps-commands.mjs +5 -5
- package/src/lib/steps-commands.mjs.map +1 -1
- package/src/lib/steps-editor.js +3 -2
- package/src/lib/steps-editor.js.map +1 -1
- package/src/lib/steps-editor.mjs +3 -2
- package/src/lib/steps-editor.mjs.map +1 -1
- package/src/lib/steps-map.d.mts +3 -1
- package/src/lib/steps-map.d.ts +3 -1
- package/src/lib/steps-map.js +1 -1
- package/src/lib/steps-map.js.map +1 -1
- package/src/lib/steps-map.mjs +1 -1
- package/src/lib/steps-map.mjs.map +1 -1
- package/src/lib/steps-settings.d.mts +3 -1
- package/src/lib/steps-settings.d.ts +3 -1
- package/src/lib/steps-settings.js +5 -2
- package/src/lib/steps-settings.js.map +1 -1
- package/src/lib/steps-settings.mjs +5 -2
- package/src/lib/steps-settings.mjs.map +1 -1
- package/src/lib/styles-endings.d.mts +6 -0
- package/src/lib/styles-endings.d.ts +6 -0
- package/src/lib/styles-endings.js +42 -0
- package/src/lib/styles-endings.js.map +1 -0
- package/src/lib/styles-endings.mjs +39 -0
- package/src/lib/styles-endings.mjs.map +1 -0
- package/src/lib/styles-kinds.d.mts +1 -1
- package/src/lib/styles-kinds.d.ts +1 -1
- package/src/lib/styles-kinds.js +1 -0
- package/src/lib/styles-kinds.js.map +1 -1
- package/src/lib/styles-kinds.mjs +1 -0
- package/src/lib/styles-kinds.mjs.map +1 -1
- package/src/lib/styles-rules.d.mts +1 -1
- package/src/lib/styles-rules.d.ts +1 -1
- package/src/lib/styles-rules.js +6 -1
- package/src/lib/styles-rules.js.map +1 -1
- package/src/lib/styles-rules.mjs +6 -1
- package/src/lib/styles-rules.mjs.map +1 -1
- package/src/lib/styles.d.mts +1 -1
- package/src/lib/styles.d.ts +1 -1
- package/src/lib/styles.js +18 -2
- package/src/lib/styles.js.map +1 -1
- package/src/lib/styles.mjs +18 -2
- package/src/lib/styles.mjs.map +1 -1
- package/src/lib/survey-editor.js +14 -4
- package/src/lib/survey-editor.js.map +1 -1
- package/src/lib/survey-editor.mjs +14 -4
- package/src/lib/survey-editor.mjs.map +1 -1
- package/src/lib/table-commands.d.mts +5 -3
- package/src/lib/table-commands.d.ts +5 -3
- package/src/lib/table-commands.js +4 -3
- package/src/lib/table-commands.js.map +1 -1
- package/src/lib/table-commands.mjs +4 -3
- package/src/lib/table-commands.mjs.map +1 -1
- package/src/lib/table-panel.js +3 -2
- package/src/lib/table-panel.js.map +1 -1
- package/src/lib/table-panel.mjs +3 -2
- package/src/lib/table-panel.mjs.map +1 -1
- package/src/lib/try-it.js +2 -0
- package/src/lib/try-it.js.map +1 -1
- package/src/lib/try-it.mjs +2 -0
- package/src/lib/try-it.mjs.map +1 -1
- package/src/lib/uncalled.d.mts +7 -0
- package/src/lib/uncalled.d.ts +7 -0
- package/src/lib/uncalled.js +21 -0
- package/src/lib/uncalled.js.map +1 -0
- package/src/lib/uncalled.mjs +18 -0
- package/src/lib/uncalled.mjs.map +1 -0
- package/src/lib/validate-edit.d.mts +3 -2
- package/src/lib/validate-edit.d.ts +3 -2
- package/src/lib/validate-edit.js +4 -3
- package/src/lib/validate-edit.js.map +1 -1
- package/src/lib/validate-edit.mjs +4 -3
- package/src/lib/validate-edit.mjs.map +1 -1
|
@@ -111,14 +111,42 @@ export declare const rulesUi: {
|
|
|
111
111
|
/** What each function does, with an example written as a formula is. */
|
|
112
112
|
functionTips: {
|
|
113
113
|
round: string;
|
|
114
|
+
roundMoney: string;
|
|
114
115
|
min: string;
|
|
115
116
|
max: string;
|
|
116
|
-
if: string;
|
|
117
117
|
abs: string;
|
|
118
118
|
sum: string;
|
|
119
119
|
count: string;
|
|
120
|
+
average: string;
|
|
121
|
+
today: string;
|
|
120
122
|
days: string;
|
|
123
|
+
age: string;
|
|
124
|
+
years: string;
|
|
125
|
+
months: string;
|
|
126
|
+
addDays: string;
|
|
127
|
+
addMonths: string;
|
|
128
|
+
addYears: string;
|
|
129
|
+
contains: string;
|
|
130
|
+
startsWith: string;
|
|
131
|
+
endsWith: string;
|
|
132
|
+
upper: string;
|
|
133
|
+
lower: string;
|
|
134
|
+
join: string;
|
|
135
|
+
len: string;
|
|
136
|
+
if: string;
|
|
137
|
+
empty: string;
|
|
138
|
+
firstOf: string;
|
|
139
|
+
};
|
|
140
|
+
/** The functions, by what they work on; the app's own last. */
|
|
141
|
+
functionGroups: {
|
|
142
|
+
numbers: string;
|
|
143
|
+
dates: string;
|
|
144
|
+
words: string;
|
|
145
|
+
choosing: string;
|
|
146
|
+
app: string;
|
|
121
147
|
};
|
|
148
|
+
/** One of the app's functions that says nothing of itself. */
|
|
149
|
+
appFunctionTip: (name: string) => string;
|
|
122
150
|
computedHint: string;
|
|
123
151
|
computeHint: string;
|
|
124
152
|
valuesSetWhen: string;
|
|
@@ -111,14 +111,42 @@ export declare const rulesUi: {
|
|
|
111
111
|
/** What each function does, with an example written as a formula is. */
|
|
112
112
|
functionTips: {
|
|
113
113
|
round: string;
|
|
114
|
+
roundMoney: string;
|
|
114
115
|
min: string;
|
|
115
116
|
max: string;
|
|
116
|
-
if: string;
|
|
117
117
|
abs: string;
|
|
118
118
|
sum: string;
|
|
119
119
|
count: string;
|
|
120
|
+
average: string;
|
|
121
|
+
today: string;
|
|
120
122
|
days: string;
|
|
123
|
+
age: string;
|
|
124
|
+
years: string;
|
|
125
|
+
months: string;
|
|
126
|
+
addDays: string;
|
|
127
|
+
addMonths: string;
|
|
128
|
+
addYears: string;
|
|
129
|
+
contains: string;
|
|
130
|
+
startsWith: string;
|
|
131
|
+
endsWith: string;
|
|
132
|
+
upper: string;
|
|
133
|
+
lower: string;
|
|
134
|
+
join: string;
|
|
135
|
+
len: string;
|
|
136
|
+
if: string;
|
|
137
|
+
empty: string;
|
|
138
|
+
firstOf: string;
|
|
139
|
+
};
|
|
140
|
+
/** The functions, by what they work on; the app's own last. */
|
|
141
|
+
functionGroups: {
|
|
142
|
+
numbers: string;
|
|
143
|
+
dates: string;
|
|
144
|
+
words: string;
|
|
145
|
+
choosing: string;
|
|
146
|
+
app: string;
|
|
121
147
|
};
|
|
148
|
+
/** One of the app's functions that says nothing of itself. */
|
|
149
|
+
appFunctionTip: (name: string) => string;
|
|
122
150
|
computedHint: string;
|
|
123
151
|
computeHint: string;
|
|
124
152
|
valuesSetWhen: string;
|
|
@@ -110,14 +110,36 @@ exports.rulesUi = {
|
|
|
110
110
|
/** What each function does, with an example written as a formula is. */
|
|
111
111
|
functionTips: {
|
|
112
112
|
round: 'Rounded to so many decimals: round(price * qty, 2)',
|
|
113
|
+
roundMoney: 'Rounded to a currency’s cents — three places for a dinar, none for a yen: roundMoney(total, currency_id)',
|
|
113
114
|
min: 'The smallest of the values: min(price, 100)',
|
|
114
115
|
max: 'The largest of the values: max(price, 0)',
|
|
115
|
-
if: 'One value or another: if(qty > 10, 5, 0)',
|
|
116
116
|
abs: 'Without its sign: abs(balance)',
|
|
117
117
|
sum: 'The lines’ field added up, where a condition holds if given: sum(lines, \'amount\', "state == \'done\'")',
|
|
118
118
|
count: 'How many lines, where a condition holds if given: count(lines, "state == \'done\'")',
|
|
119
|
+
average: 'The average of values, or of the lines’ field, the empty ones left out: average(lines, \'price\')',
|
|
120
|
+
today: 'Today’s date, on the page’s clock: today()',
|
|
119
121
|
days: 'The days from one date to another: days(date_opened, today())',
|
|
122
|
+
age: 'Whole years from a birth date to today, or to a date given: age(birth_date) >= 18',
|
|
123
|
+
years: 'Whole years from one date to another: years(start_date, end_date)',
|
|
124
|
+
months: 'Whole months from one date to another, 31 January to 28 February a month: months(start_date, end_date)',
|
|
125
|
+
addDays: 'A date so many days later, earlier when negative: addDays(arrival, nights)',
|
|
126
|
+
addMonths: 'A date so many months later, on a shorter month’s last day: addMonths(first_due, 3)',
|
|
127
|
+
addYears: 'A date so many years later: addYears(start_date, 1)',
|
|
128
|
+
contains: 'Whether text holds some words, whatever their case, or a list holds a value: contains(email, "@gmail.")',
|
|
129
|
+
startsWith: 'Whether text starts with some words, whatever their case: startsWith(phone, "+20")',
|
|
130
|
+
endsWith: 'Whether text ends with some words, whatever their case: endsWith(email, ".gov")',
|
|
131
|
+
upper: 'Text in capitals: upper(code)',
|
|
132
|
+
lower: 'Text in small letters: lower(email)',
|
|
133
|
+
join: 'Values joined with the words first given between them, the empty ones left out: join(" ", first_name, last_name)',
|
|
134
|
+
len: 'How many letters text has, or how many items a list: len(notes)',
|
|
135
|
+
if: 'One value or another: if(qty > 10, 5, 0)',
|
|
136
|
+
empty: 'Whether a value is empty — zero and no are values: empty(phone)',
|
|
137
|
+
firstOf: 'The first value that is not empty: firstOf(nickname, first_name, "friend")',
|
|
120
138
|
},
|
|
139
|
+
/** The functions, by what they work on; the app's own last. */
|
|
140
|
+
functionGroups: { numbers: 'Numbers', dates: 'Dates', words: 'Words', choosing: 'Choosing', app: 'The app’s' },
|
|
141
|
+
/** One of the app's functions that says nothing of itself. */
|
|
142
|
+
appFunctionTip: (name) => `The app’s own function: ${name}()`,
|
|
121
143
|
computedHint: 'Worked out as people fill in the form, so they cannot type in it. Empty the box to let them.',
|
|
122
144
|
computeHint: 'A value from other fields, such as Price × Quantity. People then cannot type in it.',
|
|
123
145
|
valuesSetWhen: 'Values set when',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules-ui.js","sourceRoot":"","sources":["../../../../../../../libs/designer/src/lib/locales/en/rules-ui.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"rules-ui.js","sourceRoot":"","sources":["../../../../../../../libs/designer/src/lib/locales/en/rules-ui.ts"],"names":[],"mappings":"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"}
|
|
@@ -107,14 +107,36 @@ export const rulesUi = {
|
|
|
107
107
|
/** What each function does, with an example written as a formula is. */
|
|
108
108
|
functionTips: {
|
|
109
109
|
round: 'Rounded to so many decimals: round(price * qty, 2)',
|
|
110
|
+
roundMoney: 'Rounded to a currency’s cents — three places for a dinar, none for a yen: roundMoney(total, currency_id)',
|
|
110
111
|
min: 'The smallest of the values: min(price, 100)',
|
|
111
112
|
max: 'The largest of the values: max(price, 0)',
|
|
112
|
-
if: 'One value or another: if(qty > 10, 5, 0)',
|
|
113
113
|
abs: 'Without its sign: abs(balance)',
|
|
114
114
|
sum: 'The lines’ field added up, where a condition holds if given: sum(lines, \'amount\', "state == \'done\'")',
|
|
115
115
|
count: 'How many lines, where a condition holds if given: count(lines, "state == \'done\'")',
|
|
116
|
+
average: 'The average of values, or of the lines’ field, the empty ones left out: average(lines, \'price\')',
|
|
117
|
+
today: 'Today’s date, on the page’s clock: today()',
|
|
116
118
|
days: 'The days from one date to another: days(date_opened, today())',
|
|
119
|
+
age: 'Whole years from a birth date to today, or to a date given: age(birth_date) >= 18',
|
|
120
|
+
years: 'Whole years from one date to another: years(start_date, end_date)',
|
|
121
|
+
months: 'Whole months from one date to another, 31 January to 28 February a month: months(start_date, end_date)',
|
|
122
|
+
addDays: 'A date so many days later, earlier when negative: addDays(arrival, nights)',
|
|
123
|
+
addMonths: 'A date so many months later, on a shorter month’s last day: addMonths(first_due, 3)',
|
|
124
|
+
addYears: 'A date so many years later: addYears(start_date, 1)',
|
|
125
|
+
contains: 'Whether text holds some words, whatever their case, or a list holds a value: contains(email, "@gmail.")',
|
|
126
|
+
startsWith: 'Whether text starts with some words, whatever their case: startsWith(phone, "+20")',
|
|
127
|
+
endsWith: 'Whether text ends with some words, whatever their case: endsWith(email, ".gov")',
|
|
128
|
+
upper: 'Text in capitals: upper(code)',
|
|
129
|
+
lower: 'Text in small letters: lower(email)',
|
|
130
|
+
join: 'Values joined with the words first given between them, the empty ones left out: join(" ", first_name, last_name)',
|
|
131
|
+
len: 'How many letters text has, or how many items a list: len(notes)',
|
|
132
|
+
if: 'One value or another: if(qty > 10, 5, 0)',
|
|
133
|
+
empty: 'Whether a value is empty — zero and no are values: empty(phone)',
|
|
134
|
+
firstOf: 'The first value that is not empty: firstOf(nickname, first_name, "friend")',
|
|
117
135
|
},
|
|
136
|
+
/** The functions, by what they work on; the app's own last. */
|
|
137
|
+
functionGroups: { numbers: 'Numbers', dates: 'Dates', words: 'Words', choosing: 'Choosing', app: 'The app’s' },
|
|
138
|
+
/** One of the app's functions that says nothing of itself. */
|
|
139
|
+
appFunctionTip: (name) => `The app’s own function: ${name}()`,
|
|
118
140
|
computedHint: 'Worked out as people fill in the form, so they cannot type in it. Empty the box to let them.',
|
|
119
141
|
computeHint: 'A value from other fields, such as Price × Quantity. People then cannot type in it.',
|
|
120
142
|
valuesSetWhen: 'Values set when',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules-ui.mjs","sourceRoot":"","sources":["../../../../../../../libs/designer/src/lib/locales/en/rules-ui.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"rules-ui.mjs","sourceRoot":"","sources":["../../../../../../../libs/designer/src/lib/locales/en/rules-ui.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ValueKind } from '@fieldia/core';
|
|
1
2
|
/**
|
|
2
3
|
* Rules as sentences — "Shows when Status is Active", "Worked out from Price
|
|
3
4
|
* × Quantity", "Ends with @acme.com — only warns" — and a formula in words:
|
|
@@ -104,6 +105,8 @@ export declare const rules: {
|
|
|
104
105
|
unknownField: (name: string) => string;
|
|
105
106
|
personHas: (part: string) => string;
|
|
106
107
|
unknownFunction: (name: string) => string;
|
|
108
|
+
/** A value of a kind a function does not take: "“age” takes a date: Notes is text". `given` is the field's label, or the value as written. */
|
|
109
|
+
wrongKind: (name: string, wants: readonly ValueKind[], given: string, got: ValueKind) => string;
|
|
107
110
|
/** A function given the wrong values, in the formula reader's own words after its name. */
|
|
108
111
|
takes: (name: string, rest: string) => string;
|
|
109
112
|
neverClosed: string;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ValueKind } from '@fieldia/core';
|
|
1
2
|
/**
|
|
2
3
|
* Rules as sentences — "Shows when Status is Active", "Worked out from Price
|
|
3
4
|
* × Quantity", "Ends with @acme.com — only warns" — and a formula in words:
|
|
@@ -104,6 +105,8 @@ export declare const rules: {
|
|
|
104
105
|
unknownField: (name: string) => string;
|
|
105
106
|
personHas: (part: string) => string;
|
|
106
107
|
unknownFunction: (name: string) => string;
|
|
108
|
+
/** A value of a kind a function does not take: "“age” takes a date: Notes is text". `given` is the field's label, or the value as written. */
|
|
109
|
+
wrongKind: (name: string, wants: readonly ValueKind[], given: string, got: ValueKind) => string;
|
|
107
110
|
/** A function given the wrong values, in the formula reader's own words after its name. */
|
|
108
111
|
takes: (name: string, rest: string) => string;
|
|
109
112
|
neverClosed: string;
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.rules = void 0;
|
|
4
4
|
const speak_1 = require("../speak");
|
|
5
|
+
/** The kinds of value, as a sentence names them. */
|
|
6
|
+
const KINDS = { number: 'a number', text: 'text', date: 'a date', boolean: 'yes or no', list: 'a list', any: 'any value' };
|
|
5
7
|
const lower = (words) => words.charAt(0).toLowerCase() + words.slice(1);
|
|
6
8
|
const letters = (n) => (0, speak_1.plural)('en', n, { one: '# letter', other: '# letters' });
|
|
7
9
|
const andWords = (words) => (words.length < 2 ? words.join('') : `${words.slice(0, -1).join(', ')} and ${words[words.length - 1]}`);
|
|
@@ -106,6 +108,8 @@ exports.rules = {
|
|
|
106
108
|
unknownField: (name) => `Unknown field “${name}”`,
|
|
107
109
|
personHas: (part) => `The person has an id, name or roles, not “${part}”`,
|
|
108
110
|
unknownFunction: (name) => `Unknown function “${name}”`,
|
|
111
|
+
/** A value of a kind a function does not take: "“age” takes a date: Notes is text". `given` is the field's label, or the value as written. */
|
|
112
|
+
wrongKind: (name, wants, given, got) => `“${name}” takes ${(0, speak_1.listOf)('en', wants.map((kind) => KINDS[kind]), 'or')}: ${given} is ${KINDS[got]}`,
|
|
109
113
|
/** A function given the wrong values, in the formula reader's own words after its name. */
|
|
110
114
|
takes: (name, rest) => `“${name}”${rest},`,
|
|
111
115
|
neverClosed: 'A “(” is never closed',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../../../../libs/designer/src/lib/locales/en/rules.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../../../../libs/designer/src/lib/locales/en/rules.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { listOf, plural } from '../speak.mjs';
|
|
2
|
+
/** The kinds of value, as a sentence names them. */
|
|
3
|
+
const KINDS = { number: 'a number', text: 'text', date: 'a date', boolean: 'yes or no', list: 'a list', any: 'any value' };
|
|
2
4
|
const lower = (words) => words.charAt(0).toLowerCase() + words.slice(1);
|
|
3
5
|
const letters = (n) => plural('en', n, { one: '# letter', other: '# letters' });
|
|
4
6
|
const andWords = (words) => (words.length < 2 ? words.join('') : `${words.slice(0, -1).join(', ')} and ${words[words.length - 1]}`);
|
|
@@ -103,6 +105,8 @@ export const rules = {
|
|
|
103
105
|
unknownField: (name) => `Unknown field “${name}”`,
|
|
104
106
|
personHas: (part) => `The person has an id, name or roles, not “${part}”`,
|
|
105
107
|
unknownFunction: (name) => `Unknown function “${name}”`,
|
|
108
|
+
/** A value of a kind a function does not take: "“age” takes a date: Notes is text". `given` is the field's label, or the value as written. */
|
|
109
|
+
wrongKind: (name, wants, given, got) => `“${name}” takes ${listOf('en', wants.map((kind) => KINDS[kind]), 'or')}: ${given} is ${KINDS[got]}`,
|
|
106
110
|
/** A function given the wrong values, in the formula reader's own words after its name. */
|
|
107
111
|
takes: (name, rest) => `“${name}”${rest},`,
|
|
108
112
|
neverClosed: 'A “(” is never closed',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.mjs","sourceRoot":"","sources":["../../../../../../../libs/designer/src/lib/locales/en/rules.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rules.mjs","sourceRoot":"","sources":["../../../../../../../libs/designer/src/lib/locales/en/rules.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { Field, Page } from '@fieldia/core';
|
|
2
|
+
import type { ElementFactory } from './chrome.mjs';
|
|
3
|
+
import type { Designer } from './designer.mjs';
|
|
4
|
+
/**
|
|
5
|
+
* An option's own condition, in its row of a choice's options: "Show when…" begins one on another question's answer
|
|
6
|
+
* — "Garden" shown when the unit type is Villa — and an option with one shows it under its row, as a question's
|
|
7
|
+
* "Show this question when" does, its rules taken away to show it always. Saved as the option's `invisible`. Its
|
|
8
|
+
* rules are drawn once it has one, or one is begun: a row without stays a row.
|
|
9
|
+
*/
|
|
10
|
+
export interface OptionWhen {
|
|
11
|
+
/** The button that begins a condition, for the row. */
|
|
12
|
+
button: HTMLElement;
|
|
13
|
+
/** The condition, under the row. */
|
|
14
|
+
box: HTMLElement;
|
|
15
|
+
update(page: Page, nodeId: string, index: number): void;
|
|
16
|
+
}
|
|
17
|
+
export declare function optionWhen(el: ElementFactory, designer: Designer): OptionWhen;
|
|
18
|
+
/** A line's choice column's own condition on one of its options: its row's "Show when…" and its rules under it. */
|
|
19
|
+
export interface LineOptionWhen {
|
|
20
|
+
button: HTMLElement;
|
|
21
|
+
box: HTMLElement;
|
|
22
|
+
update(page: Page, lines: Extract<Field, {
|
|
23
|
+
type: 'one2many';
|
|
24
|
+
}>, nodeId: string, column: string, index: number): void;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* A table's choice column's option shown by a condition on the line: "Show when…" in the option's row begins one on
|
|
28
|
+
* another column of the line — or, as "… (the record)", a field of the record the line is on (`parent.`) — as a
|
|
29
|
+
* question's option does on another question. Saved as the line option's `invisible` (`setColumnOptionWhen`); an
|
|
30
|
+
* option a line's change hides is taken out of that line, and said under its cell.
|
|
31
|
+
*/
|
|
32
|
+
export declare function lineOptionWhen(el: ElementFactory, designer: Designer): LineOptionWhen;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { Field, Page } from '@fieldia/core';
|
|
2
|
+
import type { ElementFactory } from './chrome';
|
|
3
|
+
import type { Designer } from './designer';
|
|
4
|
+
/**
|
|
5
|
+
* An option's own condition, in its row of a choice's options: "Show when…" begins one on another question's answer
|
|
6
|
+
* — "Garden" shown when the unit type is Villa — and an option with one shows it under its row, as a question's
|
|
7
|
+
* "Show this question when" does, its rules taken away to show it always. Saved as the option's `invisible`. Its
|
|
8
|
+
* rules are drawn once it has one, or one is begun: a row without stays a row.
|
|
9
|
+
*/
|
|
10
|
+
export interface OptionWhen {
|
|
11
|
+
/** The button that begins a condition, for the row. */
|
|
12
|
+
button: HTMLElement;
|
|
13
|
+
/** The condition, under the row. */
|
|
14
|
+
box: HTMLElement;
|
|
15
|
+
update(page: Page, nodeId: string, index: number): void;
|
|
16
|
+
}
|
|
17
|
+
export declare function optionWhen(el: ElementFactory, designer: Designer): OptionWhen;
|
|
18
|
+
/** A line's choice column's own condition on one of its options: its row's "Show when…" and its rules under it. */
|
|
19
|
+
export interface LineOptionWhen {
|
|
20
|
+
button: HTMLElement;
|
|
21
|
+
box: HTMLElement;
|
|
22
|
+
update(page: Page, lines: Extract<Field, {
|
|
23
|
+
type: 'one2many';
|
|
24
|
+
}>, nodeId: string, column: string, index: number): void;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* A table's choice column's option shown by a condition on the line: "Show when…" in the option's row begins one on
|
|
28
|
+
* another column of the line — or, as "… (the record)", a field of the record the line is on (`parent.`) — as a
|
|
29
|
+
* question's option does on another question. Saved as the line option's `invisible` (`setColumnOptionWhen`); an
|
|
30
|
+
* option a line's change hides is taken out of that line, and said under its cell.
|
|
31
|
+
*/
|
|
32
|
+
export declare function lineOptionWhen(el: ElementFactory, designer: Designer): LineOptionWhen;
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.optionWhen = optionWhen;
|
|
4
|
+
exports.lineOptionWhen = lineOptionWhen;
|
|
5
|
+
const condition_editor_1 = require("./condition-editor");
|
|
6
|
+
const conditions_1 = require("./conditions");
|
|
7
|
+
const page_tree_1 = require("./page-tree");
|
|
8
|
+
const writes_1 = require("./writes");
|
|
9
|
+
/** Every question of a page, in its order: those an option's condition may read. */
|
|
10
|
+
function questionsOf(page) {
|
|
11
|
+
return (0, page_tree_1.containers)(page).flatMap((container) => container.children.filter((node) => node.type === 'field'));
|
|
12
|
+
}
|
|
13
|
+
function optionWhen(el, designer) {
|
|
14
|
+
const w = designer.words.options;
|
|
15
|
+
let at = null;
|
|
16
|
+
let seen = null;
|
|
17
|
+
const save = (invisible) => !!at && designer.setOptionDetails(at.nodeId, at.index, { invisible });
|
|
18
|
+
const box = el('div', { class: 'fd-q-option-when-box', hidden: '' }, el('span', { class: 'fd-q-option-when-lead' }, w.shownWhen));
|
|
19
|
+
let editor = null;
|
|
20
|
+
/** The rules' editor, made the first time it is needed. */
|
|
21
|
+
const rules = () => {
|
|
22
|
+
if (!editor) {
|
|
23
|
+
editor = (0, condition_editor_1.conditionEditor)(el, designer, '', 'question', 'shows', {
|
|
24
|
+
lead: w.showOptionWhen,
|
|
25
|
+
label: w.whenOptionShows,
|
|
26
|
+
save: (condition) => save(condition.rules.length ? (0, conditions_1.conditionToHide)(condition) : null),
|
|
27
|
+
});
|
|
28
|
+
box.append(editor.element);
|
|
29
|
+
}
|
|
30
|
+
if (seen)
|
|
31
|
+
editor.update(seen.page, seen.others, seen.invisible);
|
|
32
|
+
return editor;
|
|
33
|
+
};
|
|
34
|
+
const button = el('button', { type: 'button', class: 'fd-button fd-button-link fd-q-option-when' }, w.showWhen);
|
|
35
|
+
button.addEventListener('click', () => rules().start());
|
|
36
|
+
return {
|
|
37
|
+
button,
|
|
38
|
+
box,
|
|
39
|
+
update(page, nodeId, index) {
|
|
40
|
+
at = { nodeId, index };
|
|
41
|
+
const questions = questionsOf(page);
|
|
42
|
+
const own = page.fields[questions.find((node) => node.id === nodeId)?.field ?? ''];
|
|
43
|
+
const option = own?.type === 'selection' ? own.options[index] : undefined;
|
|
44
|
+
const others = questions.filter((node) => node.id !== nodeId);
|
|
45
|
+
seen = { page, others, invisible: option?.invisible };
|
|
46
|
+
const has = option?.invisible !== undefined && option.invisible !== false;
|
|
47
|
+
if (has || editor)
|
|
48
|
+
rules();
|
|
49
|
+
(0, writes_1.setHidden)(box, !has);
|
|
50
|
+
// Begun only where another question has answers to test.
|
|
51
|
+
(0, writes_1.setHidden)(button, has || !others.some((node) => (0, condition_editor_1.choicesOf)(page.fields[node.field], designer.words) !== null));
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* A table's choice column's option shown by a condition on the line: "Show when…" in the option's row begins one on
|
|
57
|
+
* another column of the line — or, as "… (the record)", a field of the record the line is on (`parent.`) — as a
|
|
58
|
+
* question's option does on another question. Saved as the line option's `invisible` (`setColumnOptionWhen`); an
|
|
59
|
+
* option a line's change hides is taken out of that line, and said under its cell.
|
|
60
|
+
*/
|
|
61
|
+
function lineOptionWhen(el, designer) {
|
|
62
|
+
const w = designer.words.options;
|
|
63
|
+
let at = null;
|
|
64
|
+
let seen = null;
|
|
65
|
+
const save = (invisible) => !!at && designer.setColumnOptionWhen(at.nodeId, at.column, at.index, invisible);
|
|
66
|
+
const box = el('div', { class: 'fd-q-option-when-box', hidden: '' }, el('span', { class: 'fd-q-option-when-lead' }, w.shownWhen));
|
|
67
|
+
let editor = null;
|
|
68
|
+
const rules = () => {
|
|
69
|
+
if (!editor) {
|
|
70
|
+
editor = (0, condition_editor_1.conditionEditor)(el, designer, '', 'question', 'shows', {
|
|
71
|
+
lead: w.showOptionWhen,
|
|
72
|
+
label: w.whenOptionShows,
|
|
73
|
+
save: (condition) => save(condition.rules.length ? (0, conditions_1.conditionToHide)(condition) : null),
|
|
74
|
+
lines: true,
|
|
75
|
+
});
|
|
76
|
+
box.append(editor.element);
|
|
77
|
+
}
|
|
78
|
+
if (seen)
|
|
79
|
+
editor.update(seen.page, seen.others, seen.invisible);
|
|
80
|
+
return editor;
|
|
81
|
+
};
|
|
82
|
+
const button = el('button', { type: 'button', class: 'fd-button fd-button-link fd-q-option-when' }, w.showWhen);
|
|
83
|
+
button.addEventListener('click', () => rules().start());
|
|
84
|
+
return {
|
|
85
|
+
button,
|
|
86
|
+
box,
|
|
87
|
+
update(page, lines, nodeId, column, index) {
|
|
88
|
+
at = { nodeId, column, index };
|
|
89
|
+
const own = lines.fields[column];
|
|
90
|
+
const option = own?.type === 'selection' ? own.options[index] : undefined;
|
|
91
|
+
// What a line's condition reads: the line's other columns, then the record's fields as `parent.` and one, said so.
|
|
92
|
+
const fields = {};
|
|
93
|
+
for (const [name, def] of Object.entries(lines.fields))
|
|
94
|
+
if (name !== column)
|
|
95
|
+
fields[name] = def;
|
|
96
|
+
for (const [name, def] of Object.entries(page.fields))
|
|
97
|
+
if (def.type !== 'one2many')
|
|
98
|
+
fields[`parent.${name}`] = { ...def, label: designer.words.questions.ofTheRecord(def.label || name) };
|
|
99
|
+
const others = Object.keys(fields).map((name) => ({ type: 'field', id: `${nodeId}:${column}:${name}`, field: name }));
|
|
100
|
+
seen = { page: { ...page, fields }, others, invisible: option?.invisible };
|
|
101
|
+
const has = option?.invisible !== undefined && option.invisible !== false;
|
|
102
|
+
if (has || editor)
|
|
103
|
+
rules();
|
|
104
|
+
(0, writes_1.setHidden)(box, !has);
|
|
105
|
+
// Begun only where a column or a field has answers to test.
|
|
106
|
+
(0, writes_1.setHidden)(button, has || !others.some((node) => (0, condition_editor_1.choicesOf)(fields[node.field], designer.words) !== null));
|
|
107
|
+
},
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=option-when.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"option-when.js","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/option-when.ts"],"names":[],"mappings":"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"}
|