@fieldia/designer 0.11.0 → 0.13.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/package.json +4 -4
- package/src/lib/canvas-form.js +9 -0
- package/src/lib/canvas-form.js.map +1 -1
- package/src/lib/canvas-form.mjs +9 -0
- package/src/lib/canvas-form.mjs.map +1 -1
- package/src/lib/canvas-header.d.mts +4 -1
- package/src/lib/canvas-header.d.ts +4 -1
- package/src/lib/canvas-header.js +56 -17
- package/src/lib/canvas-header.js.map +1 -1
- package/src/lib/canvas-header.mjs +56 -17
- package/src/lib/canvas-header.mjs.map +1 -1
- package/src/lib/choice-commands.d.mts +5 -1
- package/src/lib/choice-commands.d.ts +5 -1
- package/src/lib/choice-commands.js +41 -0
- package/src/lib/choice-commands.js.map +1 -1
- package/src/lib/choice-commands.mjs +41 -0
- package/src/lib/choice-commands.mjs.map +1 -1
- package/src/lib/clipboard-names.js +21 -4
- package/src/lib/clipboard-names.js.map +1 -1
- package/src/lib/clipboard-names.mjs +21 -4
- package/src/lib/clipboard-names.mjs.map +1 -1
- package/src/lib/conditions.d.mts +14 -2
- package/src/lib/conditions.d.ts +14 -2
- package/src/lib/conditions.js +25 -2
- package/src/lib/conditions.js.map +1 -1
- package/src/lib/conditions.mjs +23 -2
- package/src/lib/conditions.mjs.map +1 -1
- package/src/lib/designer.d.mts +20 -15
- package/src/lib/designer.d.ts +20 -15
- package/src/lib/designer.js +67 -3
- package/src/lib/designer.js.map +1 -1
- package/src/lib/designer.mjs +68 -4
- package/src/lib/designer.mjs.map +1 -1
- package/src/lib/header-commands.d.mts +69 -11
- package/src/lib/header-commands.d.ts +69 -11
- package/src/lib/header-commands.js +299 -20
- package/src/lib/header-commands.js.map +1 -1
- package/src/lib/header-commands.mjs +297 -20
- package/src/lib/header-commands.mjs.map +1 -1
- package/src/lib/header-properties.js +171 -20
- package/src/lib/header-properties.js.map +1 -1
- package/src/lib/header-properties.mjs +172 -21
- package/src/lib/header-properties.mjs.map +1 -1
- package/src/lib/hotkey-setting.d.mts +8 -0
- package/src/lib/hotkey-setting.d.ts +8 -0
- package/src/lib/hotkey-setting.js +25 -0
- package/src/lib/hotkey-setting.js.map +1 -0
- package/src/lib/hotkey-setting.mjs +20 -0
- package/src/lib/hotkey-setting.mjs.map +1 -0
- package/src/lib/icons.js +15 -0
- package/src/lib/icons.js.map +1 -1
- package/src/lib/icons.mjs +15 -0
- package/src/lib/icons.mjs.map +1 -1
- package/src/lib/inline-settings.js +32 -4
- package/src/lib/inline-settings.js.map +1 -1
- package/src/lib/inline-settings.mjs +33 -5
- package/src/lib/inline-settings.mjs.map +1 -1
- package/src/lib/input-changes.js +12 -0
- package/src/lib/input-changes.js.map +1 -1
- package/src/lib/input-changes.mjs +12 -0
- package/src/lib/input-changes.mjs.map +1 -1
- package/src/lib/kind-settings-choices.js +30 -0
- package/src/lib/kind-settings-choices.js.map +1 -1
- package/src/lib/kind-settings-choices.mjs +30 -0
- package/src/lib/kind-settings-choices.mjs.map +1 -1
- package/src/lib/kind-settings-inputs.js +80 -0
- package/src/lib/kind-settings-inputs.js.map +1 -1
- package/src/lib/kind-settings-inputs.mjs +80 -0
- package/src/lib/kind-settings-inputs.mjs.map +1 -1
- package/src/lib/kinds.d.mts +2 -0
- package/src/lib/kinds.d.ts +2 -0
- package/src/lib/kinds.js +71 -7
- package/src/lib/kinds.js.map +1 -1
- package/src/lib/kinds.mjs +70 -6
- package/src/lib/kinds.mjs.map +1 -1
- package/src/lib/layout-settings.d.mts +7 -1
- package/src/lib/layout-settings.d.ts +7 -1
- package/src/lib/layout-settings.js +36 -2
- package/src/lib/layout-settings.js.map +1 -1
- package/src/lib/layout-settings.mjs +35 -2
- package/src/lib/layout-settings.mjs.map +1 -1
- package/src/lib/locales/ar/canvas.js +6 -0
- package/src/lib/locales/ar/canvas.js.map +1 -1
- package/src/lib/locales/ar/canvas.mjs +6 -0
- package/src/lib/locales/ar/canvas.mjs.map +1 -1
- package/src/lib/locales/ar/changes.js +2 -2
- package/src/lib/locales/ar/changes.js.map +1 -1
- package/src/lib/locales/ar/changes.mjs +2 -2
- package/src/lib/locales/ar/changes.mjs.map +1 -1
- package/src/lib/locales/ar/defaults.js +7 -0
- package/src/lib/locales/ar/defaults.js.map +1 -1
- package/src/lib/locales/ar/defaults.mjs +7 -0
- package/src/lib/locales/ar/defaults.mjs.map +1 -1
- 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/kinds.js +15 -0
- package/src/lib/locales/ar/kinds.js.map +1 -1
- package/src/lib/locales/ar/kinds.mjs +15 -0
- package/src/lib/locales/ar/kinds.mjs.map +1 -1
- package/src/lib/locales/ar/layout.js +2 -0
- package/src/lib/locales/ar/layout.js.map +1 -1
- package/src/lib/locales/ar/layout.mjs +2 -0
- package/src/lib/locales/ar/layout.mjs.map +1 -1
- package/src/lib/locales/ar/panel.js +85 -1
- package/src/lib/locales/ar/panel.js.map +1 -1
- package/src/lib/locales/ar/panel.mjs +85 -1
- package/src/lib/locales/ar/panel.mjs.map +1 -1
- package/src/lib/locales/ar/questions.js +20 -0
- package/src/lib/locales/ar/questions.js.map +1 -1
- package/src/lib/locales/ar/questions.mjs +20 -0
- package/src/lib/locales/ar/questions.mjs.map +1 -1
- package/src/lib/locales/ar/refusals.js +23 -1
- package/src/lib/locales/ar/refusals.js.map +1 -1
- package/src/lib/locales/ar/refusals.mjs +23 -1
- package/src/lib/locales/ar/refusals.mjs.map +1 -1
- package/src/lib/locales/ar/rules-ui.js +19 -0
- package/src/lib/locales/ar/rules-ui.js.map +1 -1
- package/src/lib/locales/ar/rules-ui.mjs +19 -0
- package/src/lib/locales/ar/rules-ui.mjs.map +1 -1
- package/src/lib/locales/ar/rules.js +7 -0
- package/src/lib/locales/ar/rules.js.map +1 -1
- package/src/lib/locales/ar/rules.mjs +7 -0
- package/src/lib/locales/ar/rules.mjs.map +1 -1
- package/src/lib/locales/ar/settings-changes.js +20 -0
- package/src/lib/locales/ar/settings-changes.js.map +1 -1
- package/src/lib/locales/ar/settings-changes.mjs +20 -0
- package/src/lib/locales/ar/settings-changes.mjs.map +1 -1
- package/src/lib/locales/ar/steps.js +31 -1
- package/src/lib/locales/ar/steps.js.map +1 -1
- package/src/lib/locales/ar/steps.mjs +31 -1
- package/src/lib/locales/ar/steps.mjs.map +1 -1
- package/src/lib/locales/ar/tables.d.mts +2 -0
- package/src/lib/locales/ar/tables.d.ts +2 -0
- package/src/lib/locales/ar/tables.js +69 -0
- package/src/lib/locales/ar/tables.js.map +1 -0
- package/src/lib/locales/ar/tables.mjs +66 -0
- package/src/lib/locales/ar/tables.mjs.map +1 -0
- package/src/lib/locales/en/canvas.d.mts +13 -0
- package/src/lib/locales/en/canvas.d.ts +13 -0
- package/src/lib/locales/en/canvas.js +6 -0
- package/src/lib/locales/en/canvas.js.map +1 -1
- package/src/lib/locales/en/canvas.mjs +6 -0
- package/src/lib/locales/en/canvas.mjs.map +1 -1
- package/src/lib/locales/en/changes.d.mts +2 -2
- package/src/lib/locales/en/changes.d.ts +2 -2
- package/src/lib/locales/en/changes.js +1 -1
- package/src/lib/locales/en/changes.js.map +1 -1
- package/src/lib/locales/en/changes.mjs +1 -1
- package/src/lib/locales/en/changes.mjs.map +1 -1
- package/src/lib/locales/en/defaults.d.mts +8 -0
- package/src/lib/locales/en/defaults.d.ts +8 -0
- package/src/lib/locales/en/defaults.js +8 -0
- package/src/lib/locales/en/defaults.js.map +1 -1
- package/src/lib/locales/en/defaults.mjs +8 -0
- package/src/lib/locales/en/defaults.mjs.map +1 -1
- package/src/lib/locales/en/index.d.mts +311 -4
- package/src/lib/locales/en/index.d.ts +311 -4
- 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/kinds.d.mts +15 -0
- package/src/lib/locales/en/kinds.d.ts +15 -0
- package/src/lib/locales/en/kinds.js +15 -0
- package/src/lib/locales/en/kinds.js.map +1 -1
- package/src/lib/locales/en/kinds.mjs +15 -0
- package/src/lib/locales/en/kinds.mjs.map +1 -1
- package/src/lib/locales/en/layout.d.mts +2 -0
- package/src/lib/locales/en/layout.d.ts +2 -0
- package/src/lib/locales/en/layout.js +2 -0
- package/src/lib/locales/en/layout.js.map +1 -1
- package/src/lib/locales/en/layout.mjs +2 -0
- package/src/lib/locales/en/layout.mjs.map +1 -1
- package/src/lib/locales/en/panel.d.mts +84 -0
- package/src/lib/locales/en/panel.d.ts +84 -0
- package/src/lib/locales/en/panel.js +66 -1
- package/src/lib/locales/en/panel.js.map +1 -1
- package/src/lib/locales/en/panel.mjs +66 -1
- package/src/lib/locales/en/panel.mjs.map +1 -1
- package/src/lib/locales/en/questions.d.mts +20 -0
- package/src/lib/locales/en/questions.d.ts +20 -0
- package/src/lib/locales/en/questions.js +21 -0
- package/src/lib/locales/en/questions.js.map +1 -1
- package/src/lib/locales/en/questions.mjs +21 -0
- package/src/lib/locales/en/questions.mjs.map +1 -1
- package/src/lib/locales/en/refusals.d.mts +22 -0
- package/src/lib/locales/en/refusals.d.ts +22 -0
- package/src/lib/locales/en/refusals.js +24 -1
- package/src/lib/locales/en/refusals.js.map +1 -1
- package/src/lib/locales/en/refusals.mjs +24 -1
- package/src/lib/locales/en/refusals.mjs.map +1 -1
- package/src/lib/locales/en/rules-ui.d.mts +24 -0
- package/src/lib/locales/en/rules-ui.d.ts +24 -0
- package/src/lib/locales/en/rules-ui.js +20 -0
- package/src/lib/locales/en/rules-ui.js.map +1 -1
- package/src/lib/locales/en/rules-ui.mjs +20 -0
- package/src/lib/locales/en/rules-ui.mjs.map +1 -1
- package/src/lib/locales/en/rules.d.mts +8 -0
- package/src/lib/locales/en/rules.d.ts +8 -0
- package/src/lib/locales/en/rules.js +8 -0
- package/src/lib/locales/en/rules.js.map +1 -1
- package/src/lib/locales/en/rules.mjs +9 -1
- package/src/lib/locales/en/rules.mjs.map +1 -1
- package/src/lib/locales/en/settings-changes.d.mts +20 -0
- package/src/lib/locales/en/settings-changes.d.ts +20 -0
- package/src/lib/locales/en/settings-changes.js +21 -0
- package/src/lib/locales/en/settings-changes.js.map +1 -1
- package/src/lib/locales/en/settings-changes.mjs +21 -0
- package/src/lib/locales/en/settings-changes.mjs.map +1 -1
- package/src/lib/locales/en/steps.d.mts +35 -0
- package/src/lib/locales/en/steps.d.ts +35 -0
- package/src/lib/locales/en/steps.js +32 -1
- package/src/lib/locales/en/steps.js.map +1 -1
- package/src/lib/locales/en/steps.mjs +32 -1
- package/src/lib/locales/en/steps.mjs.map +1 -1
- package/src/lib/locales/en/tables.d.mts +73 -0
- package/src/lib/locales/en/tables.d.ts +73 -0
- package/src/lib/locales/en/tables.js +85 -0
- package/src/lib/locales/en/tables.js.map +1 -0
- package/src/lib/locales/en/tables.mjs +82 -0
- package/src/lib/locales/en/tables.mjs.map +1 -0
- package/src/lib/page-checks.js +6 -3
- package/src/lib/page-checks.js.map +1 -1
- package/src/lib/page-checks.mjs +6 -3
- package/src/lib/page-checks.mjs.map +1 -1
- package/src/lib/page-tree.d.mts +5 -1
- package/src/lib/page-tree.d.ts +5 -1
- package/src/lib/page-tree.js +29 -3
- package/src/lib/page-tree.js.map +1 -1
- package/src/lib/page-tree.mjs +28 -3
- package/src/lib/page-tree.mjs.map +1 -1
- package/src/lib/panel-block.js +22 -3
- package/src/lib/panel-block.js.map +1 -1
- package/src/lib/panel-block.mjs +22 -3
- package/src/lib/panel-block.mjs.map +1 -1
- package/src/lib/panel-field.js +22 -2
- package/src/lib/panel-field.js.map +1 -1
- package/src/lib/panel-field.mjs +22 -2
- package/src/lib/panel-field.mjs.map +1 -1
- package/src/lib/panel-group.js +7 -1
- package/src/lib/panel-group.js.map +1 -1
- package/src/lib/panel-group.mjs +7 -1
- package/src/lib/panel-group.mjs.map +1 -1
- package/src/lib/panel-layout.js +7 -1
- package/src/lib/panel-layout.js.map +1 -1
- package/src/lib/panel-layout.mjs +7 -1
- package/src/lib/panel-layout.mjs.map +1 -1
- package/src/lib/panel-look.js +25 -5
- package/src/lib/panel-look.js.map +1 -1
- package/src/lib/panel-look.mjs +27 -7
- package/src/lib/panel-look.mjs.map +1 -1
- package/src/lib/panel-page.d.mts +4 -2
- package/src/lib/panel-page.d.ts +4 -2
- package/src/lib/panel-page.js +41 -3
- package/src/lib/panel-page.js.map +1 -1
- package/src/lib/panel-page.mjs +41 -3
- package/src/lib/panel-page.mjs.map +1 -1
- package/src/lib/panel-screen.js +2 -2
- package/src/lib/panel-screen.js.map +1 -1
- package/src/lib/panel-screen.mjs +3 -3
- package/src/lib/panel-screen.mjs.map +1 -1
- package/src/lib/placeholder-when.d.mts +13 -0
- package/src/lib/placeholder-when.d.ts +13 -0
- package/src/lib/placeholder-when.js +83 -0
- package/src/lib/placeholder-when.js.map +1 -0
- package/src/lib/placeholder-when.mjs +80 -0
- package/src/lib/placeholder-when.mjs.map +1 -0
- package/src/lib/roles-setting.d.mts +18 -0
- package/src/lib/roles-setting.d.ts +18 -0
- package/src/lib/roles-setting.js +48 -0
- package/src/lib/roles-setting.js.map +1 -0
- package/src/lib/roles-setting.mjs +43 -0
- package/src/lib/roles-setting.mjs.map +1 -0
- package/src/lib/rules-answers.js +22 -7
- package/src/lib/rules-answers.js.map +1 -1
- package/src/lib/rules-answers.mjs +22 -7
- package/src/lib/rules-answers.mjs.map +1 -1
- package/src/lib/rules-changes.js +1 -1
- package/src/lib/rules-changes.js.map +1 -1
- package/src/lib/rules-changes.mjs +2 -2
- package/src/lib/rules-changes.mjs.map +1 -1
- package/src/lib/rules-checks.js +1 -1
- package/src/lib/rules-checks.js.map +1 -1
- package/src/lib/rules-checks.mjs +1 -1
- package/src/lib/rules-checks.mjs.map +1 -1
- package/src/lib/rules-commands.d.mts +6 -0
- package/src/lib/rules-commands.d.ts +6 -0
- package/src/lib/rules-commands.js +63 -3
- package/src/lib/rules-commands.js.map +1 -1
- package/src/lib/rules-commands.mjs +63 -3
- package/src/lib/rules-commands.mjs.map +1 -1
- package/src/lib/rules-defaults.d.mts +8 -0
- package/src/lib/rules-defaults.d.ts +8 -0
- package/src/lib/rules-defaults.js +77 -0
- package/src/lib/rules-defaults.js.map +1 -0
- package/src/lib/rules-defaults.mjs +74 -0
- package/src/lib/rules-defaults.mjs.map +1 -0
- package/src/lib/rules-formula.js +12 -3
- package/src/lib/rules-formula.js.map +1 -1
- package/src/lib/rules-formula.mjs +12 -3
- package/src/lib/rules-formula.mjs.map +1 -1
- package/src/lib/rules-panel.js +4 -1
- package/src/lib/rules-panel.js.map +1 -1
- package/src/lib/rules-panel.mjs +4 -1
- package/src/lib/rules-panel.mjs.map +1 -1
- package/src/lib/rules-words.d.mts +10 -3
- package/src/lib/rules-words.d.ts +10 -3
- package/src/lib/rules-words.js +18 -3
- package/src/lib/rules-words.js.map +1 -1
- package/src/lib/rules-words.mjs +17 -3
- package/src/lib/rules-words.mjs.map +1 -1
- package/src/lib/rules-worked-out.js +31 -6
- package/src/lib/rules-worked-out.js.map +1 -1
- package/src/lib/rules-worked-out.mjs +31 -6
- package/src/lib/rules-worked-out.mjs.map +1 -1
- package/src/lib/shown-while.d.mts +16 -0
- package/src/lib/shown-while.d.ts +16 -0
- package/src/lib/shown-while.js +28 -0
- package/src/lib/shown-while.js.map +1 -0
- package/src/lib/shown-while.mjs +25 -0
- package/src/lib/shown-while.mjs.map +1 -0
- package/src/lib/steps-commands.d.mts +2 -2
- package/src/lib/steps-commands.d.ts +2 -2
- package/src/lib/steps-commands.js +3 -0
- package/src/lib/steps-commands.js.map +1 -1
- package/src/lib/steps-commands.mjs +3 -0
- package/src/lib/steps-commands.mjs.map +1 -1
- package/src/lib/steps-editor.js +12 -3
- package/src/lib/steps-editor.js.map +1 -1
- package/src/lib/steps-editor.mjs +12 -3
- package/src/lib/steps-editor.mjs.map +1 -1
- package/src/lib/steps-places.d.mts +3 -3
- package/src/lib/steps-places.d.ts +3 -3
- package/src/lib/steps-places.js +15 -4
- package/src/lib/steps-places.js.map +1 -1
- package/src/lib/steps-places.mjs +15 -4
- package/src/lib/steps-places.mjs.map +1 -1
- package/src/lib/steps-settings.js +75 -1
- package/src/lib/steps-settings.js.map +1 -1
- package/src/lib/steps-settings.mjs +75 -1
- package/src/lib/steps-settings.mjs.map +1 -1
- package/src/lib/steps-words.js +24 -3
- package/src/lib/steps-words.js.map +1 -1
- package/src/lib/steps-words.mjs +24 -3
- package/src/lib/steps-words.mjs.map +1 -1
- package/src/lib/structure-changes.js +6 -0
- package/src/lib/structure-changes.js.map +1 -1
- package/src/lib/structure-changes.mjs +6 -0
- package/src/lib/structure-changes.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 +12 -0
- package/src/lib/styles-rules.js.map +1 -1
- package/src/lib/styles-rules.mjs +12 -0
- 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 +7 -0
- package/src/lib/styles.js.map +1 -1
- package/src/lib/styles.mjs +7 -0
- package/src/lib/styles.mjs.map +1 -1
- package/src/lib/table-commands.d.mts +76 -0
- package/src/lib/table-commands.d.ts +76 -0
- package/src/lib/table-commands.js +248 -0
- package/src/lib/table-commands.js.map +1 -0
- package/src/lib/table-commands.mjs +244 -0
- package/src/lib/table-commands.mjs.map +1 -0
- package/src/lib/table-panel.d.mts +8 -0
- package/src/lib/table-panel.d.ts +8 -0
- package/src/lib/table-panel.js +276 -0
- package/src/lib/table-panel.js.map +1 -0
- package/src/lib/table-panel.mjs +273 -0
- package/src/lib/table-panel.mjs.map +1 -0
- package/src/lib/toolbox.js +1 -0
- package/src/lib/toolbox.js.map +1 -1
- package/src/lib/toolbox.mjs +1 -0
- package/src/lib/toolbox.mjs.map +1 -1
|
@@ -1,11 +1,17 @@
|
|
|
1
|
-
import type { Badge, ButtonNode, Field, Page, StatButton, Tone } from '@fieldia/core';
|
|
1
|
+
import type { Alert, Badge, ButtonNode, Field, MenuItem, Page, Ribbon, StatButton, Tone } from '@fieldia/core';
|
|
2
2
|
/**
|
|
3
3
|
* A record's header, as the designer edits it: the status steps, the
|
|
4
4
|
* header's buttons, the counters that open related records, and the badges
|
|
5
5
|
* by the title. Each part has an id like any element, so it can be picked on
|
|
6
6
|
* the canvas, moved among its kind, and shown only for some records.
|
|
7
7
|
*/
|
|
8
|
-
export type HeaderPartKind = 'button' | 'stat' | 'badge';
|
|
8
|
+
export type HeaderPartKind = 'button' | 'stat' | 'badge' | 'ribbon' | 'alert' | 'menu';
|
|
9
|
+
/** A part of a sheet's header or card: a button, a counter, a badge, a ribbon, an alert, or an item of the gear menu over it. */
|
|
10
|
+
export type HeaderPart = ButtonNode | StatButton | Badge | Ribbon | Alert | MenuItem;
|
|
11
|
+
/** A part's words: an alert's message, any other's label; a built-in item of the gear menu with none of its own, none. */
|
|
12
|
+
export declare const wordsOf: (part: HeaderPart) => string;
|
|
13
|
+
/** What a new item of the gear menu is: one of the record's own, the app's action, or a report under Print. */
|
|
14
|
+
export type MenuItemKind = NonNullable<MenuItem['builtin']> | 'action' | 'print';
|
|
9
15
|
export interface HeaderPartPatch {
|
|
10
16
|
label?: string;
|
|
11
17
|
/** The action's name, for a button or a counter. The app decides what it does. */
|
|
@@ -14,30 +20,82 @@ export interface HeaderPartPatch {
|
|
|
14
20
|
style?: ButtonNode['style'];
|
|
15
21
|
/** A button's question before it acts; empty asks nothing. */
|
|
16
22
|
confirm?: string;
|
|
17
|
-
/** A
|
|
23
|
+
/** A button's key, as typed: "v", "Shift+G"; empty for none. */
|
|
24
|
+
hotkey?: string;
|
|
25
|
+
/** A badge's, a ribbon's or an alert's colour. */
|
|
18
26
|
tone?: Tone;
|
|
19
|
-
/**
|
|
27
|
+
/** A ribbon's or an alert's words from a field, while it holds any; empty for none. */
|
|
28
|
+
wordsField?: string;
|
|
29
|
+
/** A ribbon's words on pointing at it; empty for none. */
|
|
30
|
+
tooltip?: string;
|
|
31
|
+
/** An alert with a × that hides it. */
|
|
32
|
+
dismissible?: boolean;
|
|
33
|
+
/** The value a counter shows, from a field; empty shows none. */
|
|
20
34
|
field?: string;
|
|
35
|
+
/** A counter's words after its value; empty for none. */
|
|
36
|
+
unit?: string;
|
|
37
|
+
/** A counter's words after its value from a field, its words from a field, its second value: a field's name, empty for none. */
|
|
38
|
+
unitField?: string;
|
|
39
|
+
labelField?: string;
|
|
40
|
+
secondField?: string;
|
|
41
|
+
/** Words for a counter's second value, which then shows under the first; empty for none. */
|
|
42
|
+
secondLabel?: string;
|
|
43
|
+
/** A counter's help: its tooltip, read out as its description; empty for none. */
|
|
44
|
+
help?: string;
|
|
21
45
|
icon?: string;
|
|
46
|
+
/** An item of the gear menu: one of the record's own it is (empty for none), and whether it goes under Print. */
|
|
47
|
+
builtin?: MenuItem['builtin'] | '';
|
|
48
|
+
group?: 'actions' | 'print';
|
|
49
|
+
}
|
|
50
|
+
/** How the status steps behave: clicked, where they sit, the time spent per step, folded stages, a click that saves. */
|
|
51
|
+
export interface StatusbarOptions {
|
|
52
|
+
clickable?: boolean;
|
|
53
|
+
position?: 'header' | 'title';
|
|
54
|
+
/** A json field holding the time per step; empty for none. */
|
|
55
|
+
durationsField?: string;
|
|
56
|
+
/** Stages folded by their record under More: a link's steps only. */
|
|
57
|
+
fold?: boolean;
|
|
58
|
+
/** A click saves the record at once: steps that can be clicked only. */
|
|
59
|
+
saves?: boolean;
|
|
22
60
|
}
|
|
23
61
|
export interface HeaderCommands {
|
|
24
62
|
/** Status steps from a field that holds one of a list, or `null` for none. */
|
|
25
|
-
setStatusbar(field: string | null, options?:
|
|
26
|
-
clickable?: boolean;
|
|
27
|
-
position?: 'header' | 'title';
|
|
28
|
-
}): boolean;
|
|
63
|
+
setStatusbar(field: string | null, options?: StatusbarOptions): boolean;
|
|
29
64
|
/** A button, a counter or a badge, at the end of its kind. Returns its id, picked. */
|
|
30
65
|
addHeaderPart(kind: HeaderPartKind, label: string): string | false;
|
|
31
66
|
updateHeaderPart(id: string, patch: HeaderPartPatch): boolean;
|
|
32
67
|
moveHeaderPart(id: string, delta: number): boolean;
|
|
33
68
|
removeHeaderPart(id: string): boolean;
|
|
69
|
+
/** A button inside an alert, after its words: a link that runs an action. Returns its id. */
|
|
70
|
+
addAlertButton(alert: string, label: string): string | false;
|
|
71
|
+
/** An alert's button's words, or the action it runs. */
|
|
72
|
+
updateAlertButton(alert: string, button: string, patch: {
|
|
73
|
+
label?: string;
|
|
74
|
+
action?: string;
|
|
75
|
+
}): boolean;
|
|
76
|
+
removeAlertButton(alert: string, button: string): boolean;
|
|
77
|
+
/**
|
|
78
|
+
* An item at the end of the gear menu over the record: one of the record's
|
|
79
|
+
* own (Archive, Unarchive, Duplicate, Delete) in the page's words, or the
|
|
80
|
+
* app's action, or a report under Print, with these words. Returns its id, picked.
|
|
81
|
+
*/
|
|
82
|
+
addMenuItem(kind: MenuItemKind, label?: string): string | false;
|
|
83
|
+
/** Whether the pager and the breadcrumbs the app gives show over the record: true takes the page's "no" away. */
|
|
84
|
+
setRecordToolbar(patch: {
|
|
85
|
+
pager?: boolean;
|
|
86
|
+
breadcrumbs?: boolean;
|
|
87
|
+
}): boolean;
|
|
88
|
+
/** The record's attachment beside the sheet: null for none, '' for the app's attachments, or a file field's name. */
|
|
89
|
+
setAttachmentPreview(field: string | null): boolean;
|
|
90
|
+
/** Where the side panel stays beside the sheet: on a wide form, or always. */
|
|
91
|
+
setSidePanelBeside(where: 'wide' | 'always'): boolean;
|
|
34
92
|
}
|
|
35
|
-
/** A part of a sheet's header by its id: what kind, which list, and where in it. */
|
|
93
|
+
/** A part of a sheet's header by its id: what kind, which list, and where in it. A page's one `ribbon` is found as the first of the ribbons. */
|
|
36
94
|
export declare function findHeaderPart(page: Page, id: string): {
|
|
37
95
|
kind: HeaderPartKind;
|
|
38
|
-
list:
|
|
96
|
+
list: HeaderPart[];
|
|
39
97
|
index: number;
|
|
40
|
-
part:
|
|
98
|
+
part: HeaderPart;
|
|
41
99
|
} | null;
|
|
42
100
|
export interface HeaderContext {
|
|
43
101
|
apply(edit: (draft: Page) => void, merge?: string | null): boolean;
|
|
@@ -1,22 +1,35 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.wordsOf = void 0;
|
|
3
4
|
exports.findHeaderPart = findHeaderPart;
|
|
4
5
|
exports.headerCommands = headerCommands;
|
|
5
6
|
const kinds_1 = require("./kinds");
|
|
6
7
|
const page_tree_1 = require("./page-tree");
|
|
7
8
|
const refusal_1 = require("./refusal");
|
|
9
|
+
const hotkey_setting_1 = require("./hotkey-setting");
|
|
10
|
+
/** A part's words: an alert's message, any other's label; a built-in item of the gear menu with none of its own, none. */
|
|
11
|
+
const wordsOf = (part) => ('message' in part ? part.message : (part.label ?? ''));
|
|
12
|
+
exports.wordsOf = wordsOf;
|
|
8
13
|
/** The lists a header part sits in, by kind, as the sheet names them. */
|
|
9
|
-
|
|
10
|
-
|
|
14
|
+
/** What a counter can show: a number, an amount, a date, words, a choice. */
|
|
15
|
+
const COUNTED = ['integer', 'float', 'monetary', 'date', 'datetime', 'char', 'selection'];
|
|
16
|
+
const LISTS = { button: 'buttons', stat: 'statButtons', badge: 'badges', ribbon: 'ribbons', alert: 'alerts' };
|
|
17
|
+
/** A part of a sheet's header by its id: what kind, which list, and where in it. A page's one `ribbon` is found as the first of the ribbons. */
|
|
11
18
|
function findHeaderPart(page, id) {
|
|
12
19
|
const root = page.layout;
|
|
13
20
|
if (root.type !== 'sheet')
|
|
14
21
|
return null;
|
|
22
|
+
const menu = root.toolbar?.menu ?? [];
|
|
23
|
+
const item = menu.findIndex((p) => p.id === id);
|
|
24
|
+
if (item !== -1)
|
|
25
|
+
return { kind: 'menu', list: menu, index: item, part: menu[item] };
|
|
26
|
+
if (root.ribbon?.id === id)
|
|
27
|
+
return { kind: 'ribbon', list: [root.ribbon, ...(root.ribbons ?? [])], index: 0, part: root.ribbon };
|
|
15
28
|
for (const kind of Object.keys(LISTS)) {
|
|
16
29
|
const list = (root[LISTS[kind]] ?? []);
|
|
17
30
|
const index = list.findIndex((p) => p.id === id);
|
|
18
31
|
if (index !== -1)
|
|
19
|
-
return { kind, list, index, part: list[index] };
|
|
32
|
+
return { kind, list: kind === 'ribbon' && root.ribbon ? [root.ribbon, ...list] : list, index: kind === 'ribbon' && root.ribbon ? index + 1 : index, part: list[index] };
|
|
20
33
|
}
|
|
21
34
|
return null;
|
|
22
35
|
}
|
|
@@ -50,11 +63,24 @@ function headerCommands(context) {
|
|
|
50
63
|
delete draft.fields[name];
|
|
51
64
|
};
|
|
52
65
|
const partOf = (draft, id) => {
|
|
53
|
-
|
|
66
|
+
let found = findHeaderPart(draft, id);
|
|
54
67
|
if (!found)
|
|
55
68
|
throw new refusal_1.Refusal((w) => w.refusals.noHeaderPart(id));
|
|
69
|
+
// A page's one ribbon joins the list of ribbons once one is edited: they are moved and taken away alike.
|
|
70
|
+
const root = draft.layout;
|
|
71
|
+
if (found.kind === 'ribbon' && root.ribbon) {
|
|
72
|
+
root.ribbons = [root.ribbon, ...(root.ribbons ?? [])];
|
|
73
|
+
delete root.ribbon;
|
|
74
|
+
found = findHeaderPart(draft, id);
|
|
75
|
+
}
|
|
56
76
|
return found;
|
|
57
77
|
};
|
|
78
|
+
const alertOf = (draft, id) => {
|
|
79
|
+
const found = partOf(draft, id);
|
|
80
|
+
if (found.kind !== 'alert')
|
|
81
|
+
throw new refusal_1.Refusal((w) => w.refusals.onlyAlertButtons);
|
|
82
|
+
return found.part;
|
|
83
|
+
};
|
|
58
84
|
return {
|
|
59
85
|
setStatusbar(field, options = {}) {
|
|
60
86
|
return apply((draft) => {
|
|
@@ -65,14 +91,28 @@ function headerCommands(context) {
|
|
|
65
91
|
return;
|
|
66
92
|
}
|
|
67
93
|
const def = fieldFor(draft, field);
|
|
68
|
-
|
|
94
|
+
// A choice's steps, or the stages a link points to.
|
|
95
|
+
if ((def.type !== 'selection' || def.multiple) && def.type !== 'many2one')
|
|
69
96
|
throw new refusal_1.Refusal((w) => w.refusals.statusOneOfList(def.label, (0, kinds_1.storedAs)(def, w)));
|
|
70
97
|
const kept = root.statusbar?.field === field ? root.statusbar : undefined;
|
|
71
|
-
|
|
72
|
-
if (
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
98
|
+
const bar = { ...kept, field, ...options };
|
|
99
|
+
if (bar.durationsField) {
|
|
100
|
+
const times = fieldFor(draft, bar.durationsField);
|
|
101
|
+
if (times.type !== 'json')
|
|
102
|
+
throw new refusal_1.Refusal((w) => w.refusals.timesFromJson(times.label));
|
|
103
|
+
}
|
|
104
|
+
else
|
|
105
|
+
delete bar.durationsField;
|
|
106
|
+
if (bar.fold && def.type !== 'many2one')
|
|
107
|
+
throw new refusal_1.Refusal((w) => w.refusals.foldStages);
|
|
108
|
+
if (bar.saves && !bar.clickable)
|
|
109
|
+
throw new refusal_1.Refusal((w) => w.refusals.savesOnClick);
|
|
110
|
+
for (const key of ['clickable', 'fold', 'saves'])
|
|
111
|
+
if (!bar[key])
|
|
112
|
+
delete bar[key];
|
|
113
|
+
if (bar.position === 'header')
|
|
114
|
+
delete bar.position;
|
|
115
|
+
root.statusbar = bar;
|
|
76
116
|
prune(draft);
|
|
77
117
|
});
|
|
78
118
|
},
|
|
@@ -89,6 +129,13 @@ function headerCommands(context) {
|
|
|
89
129
|
root.buttons = [...(root.buttons ?? []), { type: 'button', id: created, label: words, action: actionName(words) }];
|
|
90
130
|
else if (kind === 'stat')
|
|
91
131
|
root.statButtons = [...(root.statButtons ?? []), { id: created, label: words, action: actionName(words) }];
|
|
132
|
+
else if (kind === 'ribbon') {
|
|
133
|
+
// The one ribbon a page had joins the list, first.
|
|
134
|
+
root.ribbons = [...(root.ribbon ? [root.ribbon] : []), ...(root.ribbons ?? []), { id: created, label: words, tone: 'success' }];
|
|
135
|
+
delete root.ribbon;
|
|
136
|
+
}
|
|
137
|
+
else if (kind === 'alert')
|
|
138
|
+
root.alerts = [...(root.alerts ?? []), { id: created, message: words, tone: 'info' }];
|
|
92
139
|
else
|
|
93
140
|
root.badges = [...(root.badges ?? []), { id: created, label: words, tone: 'muted' }];
|
|
94
141
|
});
|
|
@@ -98,36 +145,106 @@ function headerCommands(context) {
|
|
|
98
145
|
return created;
|
|
99
146
|
},
|
|
100
147
|
updateHeaderPart(id, patch) {
|
|
101
|
-
const typing = Object.keys(patch).length === 1 && ('label' in patch || 'action' in patch || 'confirm' in patch);
|
|
148
|
+
const typing = Object.keys(patch).length === 1 && ('label' in patch || 'action' in patch || 'confirm' in patch || 'tooltip' in patch || 'unit' in patch || 'secondLabel' in patch || 'help' in patch);
|
|
102
149
|
return apply((draft) => {
|
|
103
150
|
const { kind, part } = partOf(draft, id);
|
|
104
|
-
if (patch.label !== undefined)
|
|
105
|
-
|
|
151
|
+
if (patch.label !== undefined) {
|
|
152
|
+
if (kind === 'alert')
|
|
153
|
+
part.message = patch.label;
|
|
154
|
+
else
|
|
155
|
+
part.label = patch.label;
|
|
156
|
+
}
|
|
157
|
+
if (patch.label !== undefined && kind === 'menu' && !patch.label.trim()) {
|
|
158
|
+
// A built-in item's words may go: its own come back, in the page's language.
|
|
159
|
+
if (!part.builtin)
|
|
160
|
+
throw new refusal_1.Refusal((w) => w.refusals.menuNeedsWords);
|
|
161
|
+
delete part.label;
|
|
162
|
+
}
|
|
106
163
|
if (patch.action !== undefined) {
|
|
107
|
-
if (kind === 'badge')
|
|
164
|
+
if (kind === 'badge' || kind === 'ribbon' || kind === 'alert')
|
|
108
165
|
throw new refusal_1.Refusal((w) => w.refusals.badgeNoAction);
|
|
109
166
|
if (!patch.action.trim())
|
|
110
167
|
throw new refusal_1.Refusal((w) => (kind === 'stat' ? w.refusals.counterAction : w.refusals.buttonAction));
|
|
111
168
|
part.action = patch.action.trim();
|
|
112
169
|
}
|
|
170
|
+
if (patch.builtin !== undefined) {
|
|
171
|
+
if (kind !== 'menu')
|
|
172
|
+
throw new refusal_1.Refusal((w) => w.refusals.onlyMenuBuiltin);
|
|
173
|
+
const item = part;
|
|
174
|
+
if (patch.builtin)
|
|
175
|
+
item.builtin = patch.builtin;
|
|
176
|
+
else {
|
|
177
|
+
if (!item.label?.trim())
|
|
178
|
+
throw new refusal_1.Refusal((w) => w.refusals.menuNeedsWords);
|
|
179
|
+
delete item.builtin;
|
|
180
|
+
// Its own steps or action, else the app's action of its words.
|
|
181
|
+
if (!item.steps && item.action === undefined)
|
|
182
|
+
item.action = actionName(item.label);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
if (patch.group !== undefined) {
|
|
186
|
+
if (kind !== 'menu')
|
|
187
|
+
throw new refusal_1.Refusal((w) => w.refusals.onlyMenuGroup);
|
|
188
|
+
if (patch.group === 'print')
|
|
189
|
+
part.group = 'print';
|
|
190
|
+
else
|
|
191
|
+
delete part.group;
|
|
192
|
+
}
|
|
113
193
|
if (patch.style !== undefined) {
|
|
114
194
|
if (kind !== 'button')
|
|
115
195
|
throw new refusal_1.Refusal((w) => w.refusals.onlyButtonStyle);
|
|
116
196
|
part.style = patch.style;
|
|
117
197
|
}
|
|
118
198
|
if (patch.confirm !== undefined) {
|
|
119
|
-
if (kind !== 'button')
|
|
199
|
+
if (kind !== 'button' && kind !== 'menu')
|
|
120
200
|
throw new refusal_1.Refusal((w) => w.refusals.onlyButtonAsks);
|
|
121
201
|
if (patch.confirm.trim())
|
|
122
202
|
part.confirm = patch.confirm;
|
|
123
203
|
else
|
|
124
204
|
delete part.confirm;
|
|
125
205
|
}
|
|
206
|
+
if (patch.hotkey !== undefined) {
|
|
207
|
+
if (kind !== 'button')
|
|
208
|
+
throw new refusal_1.Refusal((w) => w.refusals.onlyButtonKey);
|
|
209
|
+
const key = (0, hotkey_setting_1.hotkeyFrom)(patch.hotkey);
|
|
210
|
+
if (key)
|
|
211
|
+
part.hotkey = key;
|
|
212
|
+
else
|
|
213
|
+
delete part.hotkey;
|
|
214
|
+
}
|
|
126
215
|
if (patch.tone !== undefined) {
|
|
127
|
-
if (kind !== 'badge')
|
|
216
|
+
if (kind !== 'badge' && kind !== 'ribbon' && kind !== 'alert')
|
|
128
217
|
throw new refusal_1.Refusal((w) => w.refusals.onlyBadgeTone);
|
|
129
218
|
part.tone = patch.tone;
|
|
130
219
|
}
|
|
220
|
+
if (patch.wordsField !== undefined) {
|
|
221
|
+
if (kind !== 'ribbon' && kind !== 'alert')
|
|
222
|
+
throw new refusal_1.Refusal((w) => w.refusals.onlyRibbonAlertField);
|
|
223
|
+
const key = kind === 'ribbon' ? 'labelField' : 'messageField';
|
|
224
|
+
if (!patch.wordsField)
|
|
225
|
+
delete part[key];
|
|
226
|
+
else {
|
|
227
|
+
fieldFor(draft, patch.wordsField);
|
|
228
|
+
part[key] = patch.wordsField;
|
|
229
|
+
}
|
|
230
|
+
prune(draft);
|
|
231
|
+
}
|
|
232
|
+
if (patch.tooltip !== undefined) {
|
|
233
|
+
if (kind !== 'ribbon')
|
|
234
|
+
throw new refusal_1.Refusal((w) => w.refusals.onlyRibbonTooltip);
|
|
235
|
+
if (patch.tooltip.trim())
|
|
236
|
+
part.tooltip = patch.tooltip;
|
|
237
|
+
else
|
|
238
|
+
delete part.tooltip;
|
|
239
|
+
}
|
|
240
|
+
if (patch.dismissible !== undefined) {
|
|
241
|
+
if (kind !== 'alert')
|
|
242
|
+
throw new refusal_1.Refusal((w) => w.refusals.onlyAlertCloses);
|
|
243
|
+
if (patch.dismissible)
|
|
244
|
+
part.dismissible = true;
|
|
245
|
+
else
|
|
246
|
+
delete part.dismissible;
|
|
247
|
+
}
|
|
131
248
|
if (patch.field !== undefined) {
|
|
132
249
|
if (kind !== 'stat')
|
|
133
250
|
throw new refusal_1.Refusal((w) => w.refusals.onlyCounterField);
|
|
@@ -135,17 +252,62 @@ function headerCommands(context) {
|
|
|
135
252
|
delete part.field;
|
|
136
253
|
else {
|
|
137
254
|
const def = fieldFor(draft, patch.field);
|
|
138
|
-
if (!
|
|
255
|
+
if (!COUNTED.includes(def.type))
|
|
139
256
|
throw new refusal_1.Refusal((w) => w.refusals.counterNumber(def.label, (0, kinds_1.storedAs)(def, w)));
|
|
140
257
|
part.field = patch.field;
|
|
141
258
|
}
|
|
142
259
|
prune(draft);
|
|
143
260
|
}
|
|
261
|
+
for (const key of ['unitField', 'labelField', 'secondField']) {
|
|
262
|
+
const name = patch[key];
|
|
263
|
+
if (name === undefined)
|
|
264
|
+
continue;
|
|
265
|
+
if (kind !== 'stat')
|
|
266
|
+
throw new refusal_1.Refusal((w) => w.refusals.onlyCounterSecond);
|
|
267
|
+
const stat = part;
|
|
268
|
+
if (!name) {
|
|
269
|
+
delete stat[key];
|
|
270
|
+
if (key === 'secondField')
|
|
271
|
+
delete stat.secondLabel;
|
|
272
|
+
}
|
|
273
|
+
else {
|
|
274
|
+
const def = fieldFor(draft, name);
|
|
275
|
+
if (key === 'secondField' && !COUNTED.includes(def.type))
|
|
276
|
+
throw new refusal_1.Refusal((w) => w.refusals.counterNumber(def.label, (0, kinds_1.storedAs)(def, w)));
|
|
277
|
+
stat[key] = name;
|
|
278
|
+
}
|
|
279
|
+
prune(draft);
|
|
280
|
+
}
|
|
281
|
+
if (patch.help !== undefined) {
|
|
282
|
+
if (kind !== 'stat')
|
|
283
|
+
throw new refusal_1.Refusal((w) => w.refusals.onlyCounterSecond);
|
|
284
|
+
if (patch.help.trim())
|
|
285
|
+
part.help = patch.help;
|
|
286
|
+
else
|
|
287
|
+
delete part.help;
|
|
288
|
+
}
|
|
289
|
+
for (const key of ['unit', 'secondLabel']) {
|
|
290
|
+
const words = patch[key];
|
|
291
|
+
if (words === undefined)
|
|
292
|
+
continue;
|
|
293
|
+
if (kind !== 'stat')
|
|
294
|
+
throw new refusal_1.Refusal((w) => w.refusals.onlyCounterSecond);
|
|
295
|
+
const stat = part;
|
|
296
|
+
if (key === 'secondLabel' && words.trim() && !stat.secondField)
|
|
297
|
+
throw new refusal_1.Refusal((w) => w.refusals.secondWordsNeedValue);
|
|
298
|
+
if (words.trim())
|
|
299
|
+
stat[key] = words;
|
|
300
|
+
else
|
|
301
|
+
delete stat[key];
|
|
302
|
+
}
|
|
144
303
|
if (patch.icon !== undefined) {
|
|
304
|
+
if (kind === 'ribbon' || kind === 'alert')
|
|
305
|
+
throw new refusal_1.Refusal((w) => w.refusals.onlySomeIcons);
|
|
306
|
+
const own = part;
|
|
145
307
|
if (patch.icon)
|
|
146
|
-
|
|
308
|
+
own.icon = patch.icon;
|
|
147
309
|
else
|
|
148
|
-
delete
|
|
310
|
+
delete own.icon;
|
|
149
311
|
}
|
|
150
312
|
}, typing ? `header:${Object.keys(patch)[0]}:${id}` : null);
|
|
151
313
|
},
|
|
@@ -164,11 +326,128 @@ function headerCommands(context) {
|
|
|
164
326
|
const { kind, list, index } = partOf(draft, id);
|
|
165
327
|
list.splice(index, 1);
|
|
166
328
|
const root = draft.layout;
|
|
167
|
-
if (
|
|
329
|
+
if (kind === 'menu') {
|
|
330
|
+
// The menu and the toolbar go with their last item, the pager's and the trail's settings staying.
|
|
331
|
+
if (!list.length && root.toolbar)
|
|
332
|
+
delete root.toolbar.menu;
|
|
333
|
+
if (root.toolbar && !Object.keys(root.toolbar).length)
|
|
334
|
+
delete root.toolbar;
|
|
335
|
+
}
|
|
336
|
+
else if (!list.length)
|
|
168
337
|
delete root[LISTS[kind]];
|
|
169
338
|
prune(draft);
|
|
170
339
|
});
|
|
171
340
|
},
|
|
341
|
+
addAlertButton(alertId, label) {
|
|
342
|
+
let created = '';
|
|
343
|
+
const words = label.trim();
|
|
344
|
+
const ok = apply((draft) => {
|
|
345
|
+
const alert = alertOf(draft, alertId);
|
|
346
|
+
if (!words)
|
|
347
|
+
throw new refusal_1.Refusal((w) => w.refusals.headerNeedsWords);
|
|
348
|
+
const ids = (0, page_tree_1.allIds)(draft);
|
|
349
|
+
created = (0, page_tree_1.nextName)((id) => ids.has(id), `${alertId}-button`, '-');
|
|
350
|
+
alert.buttons = [...(alert.buttons ?? []), { type: 'button', id: created, label: words, action: actionName(words) }];
|
|
351
|
+
});
|
|
352
|
+
return ok ? created : false;
|
|
353
|
+
},
|
|
354
|
+
updateAlertButton(alertId, buttonId, patch) {
|
|
355
|
+
const typing = Object.keys(patch).length === 1;
|
|
356
|
+
return apply((draft) => {
|
|
357
|
+
const button = alertOf(draft, alertId).buttons?.find((b) => b.id === buttonId);
|
|
358
|
+
if (!button)
|
|
359
|
+
throw new refusal_1.Refusal((w) => w.refusals.noHeaderPart(buttonId));
|
|
360
|
+
if (patch.label !== undefined)
|
|
361
|
+
button.label = patch.label;
|
|
362
|
+
if (patch.action !== undefined) {
|
|
363
|
+
if (!patch.action.trim())
|
|
364
|
+
throw new refusal_1.Refusal((w) => w.refusals.buttonAction);
|
|
365
|
+
button.action = patch.action.trim();
|
|
366
|
+
}
|
|
367
|
+
}, typing ? `alert-button:${Object.keys(patch)[0]}:${buttonId}` : null);
|
|
368
|
+
},
|
|
369
|
+
addMenuItem(kind, label) {
|
|
370
|
+
let created = '';
|
|
371
|
+
const ok = apply((draft) => {
|
|
372
|
+
const root = sheetOf(draft);
|
|
373
|
+
const ids = (0, page_tree_1.allIds)(draft);
|
|
374
|
+
created = (0, page_tree_1.nextName)((id) => ids.has(id), kind === 'action' || kind === 'print' ? 'menu' : `menu-${kind}`, '-');
|
|
375
|
+
const words = (label ?? '').trim();
|
|
376
|
+
let item;
|
|
377
|
+
if (kind === 'action' || kind === 'print') {
|
|
378
|
+
if (!words)
|
|
379
|
+
throw new refusal_1.Refusal((w) => w.refusals.menuNeedsWords);
|
|
380
|
+
item = { id: created, label: words, ...(kind === 'print' ? { group: 'print' } : {}), action: actionName(words) };
|
|
381
|
+
}
|
|
382
|
+
else
|
|
383
|
+
item = { id: created, ...(words ? { label: words } : {}), builtin: kind };
|
|
384
|
+
root.toolbar = { ...root.toolbar, menu: [...(root.toolbar?.menu ?? []), item] };
|
|
385
|
+
});
|
|
386
|
+
if (!ok)
|
|
387
|
+
return false;
|
|
388
|
+
context.select(created);
|
|
389
|
+
return created;
|
|
390
|
+
},
|
|
391
|
+
setRecordToolbar(patch) {
|
|
392
|
+
return apply((draft) => {
|
|
393
|
+
const root = sheetOf(draft);
|
|
394
|
+
const toolbar = { ...root.toolbar };
|
|
395
|
+
// Shown is how it is unless said: only a "no" is written.
|
|
396
|
+
for (const key of ['pager', 'breadcrumbs']) {
|
|
397
|
+
if (patch[key] === undefined)
|
|
398
|
+
continue;
|
|
399
|
+
if (patch[key])
|
|
400
|
+
delete toolbar[key];
|
|
401
|
+
else
|
|
402
|
+
toolbar[key] = false;
|
|
403
|
+
}
|
|
404
|
+
if (Object.keys(toolbar).length)
|
|
405
|
+
root.toolbar = toolbar;
|
|
406
|
+
else
|
|
407
|
+
delete root.toolbar;
|
|
408
|
+
});
|
|
409
|
+
},
|
|
410
|
+
setAttachmentPreview(field) {
|
|
411
|
+
return apply((draft) => {
|
|
412
|
+
const root = sheetOf(draft);
|
|
413
|
+
if (field === null)
|
|
414
|
+
delete root.attachmentPreview;
|
|
415
|
+
else if (!field)
|
|
416
|
+
root.attachmentPreview = { ...root.attachmentPreview, field: undefined };
|
|
417
|
+
else {
|
|
418
|
+
const def = fieldFor(draft, field);
|
|
419
|
+
if (def.type !== 'binary' && def.type !== 'image')
|
|
420
|
+
throw new refusal_1.Refusal((w) => w.refusals.previewNeedsFile(def.label, (0, kinds_1.storedAs)(def, w)));
|
|
421
|
+
root.attachmentPreview = { ...root.attachmentPreview, field };
|
|
422
|
+
}
|
|
423
|
+
if (root.attachmentPreview?.field === undefined && root.attachmentPreview)
|
|
424
|
+
delete root.attachmentPreview.field;
|
|
425
|
+
prune(draft);
|
|
426
|
+
});
|
|
427
|
+
},
|
|
428
|
+
setSidePanelBeside(where) {
|
|
429
|
+
return apply((draft) => {
|
|
430
|
+
const root = sheetOf(draft);
|
|
431
|
+
if (!root.sidePanel)
|
|
432
|
+
throw new refusal_1.Refusal((w) => w.refusals.noSidePanel);
|
|
433
|
+
if (where === 'always')
|
|
434
|
+
root.sidePanelBeside = 'always';
|
|
435
|
+
else
|
|
436
|
+
delete root.sidePanelBeside;
|
|
437
|
+
});
|
|
438
|
+
},
|
|
439
|
+
removeAlertButton(alertId, buttonId) {
|
|
440
|
+
return apply((draft) => {
|
|
441
|
+
const alert = alertOf(draft, alertId);
|
|
442
|
+
const kept = (alert.buttons ?? []).filter((b) => b.id !== buttonId);
|
|
443
|
+
if (kept.length === (alert.buttons ?? []).length)
|
|
444
|
+
throw new refusal_1.Refusal((w) => w.refusals.noHeaderPart(buttonId));
|
|
445
|
+
if (kept.length)
|
|
446
|
+
alert.buttons = kept;
|
|
447
|
+
else
|
|
448
|
+
delete alert.buttons;
|
|
449
|
+
});
|
|
450
|
+
},
|
|
172
451
|
};
|
|
173
452
|
}
|
|
174
453
|
//# sourceMappingURL=header-commands.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"header-commands.js","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/header-commands.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"header-commands.js","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/header-commands.ts"],"names":[],"mappings":"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"}
|