@fieldia/designer 0.19.1 → 0.21.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-head.d.mts +22 -0
- package/src/lib/canvas-head.d.ts +22 -0
- package/src/lib/canvas-head.js +121 -0
- package/src/lib/canvas-head.js.map +1 -0
- package/src/lib/canvas-head.mjs +118 -0
- package/src/lib/canvas-head.mjs.map +1 -0
- package/src/lib/canvas-header.js +7 -1
- package/src/lib/canvas-header.js.map +1 -1
- package/src/lib/canvas-header.mjs +7 -1
- package/src/lib/canvas-header.mjs.map +1 -1
- package/src/lib/choice-commands.d.mts +2 -1
- package/src/lib/choice-commands.d.ts +2 -1
- package/src/lib/choice-commands.js +3 -0
- package/src/lib/choice-commands.js.map +1 -1
- package/src/lib/choice-commands.mjs +3 -0
- package/src/lib/choice-commands.mjs.map +1 -1
- package/src/lib/chrome.js +11 -0
- package/src/lib/chrome.js.map +1 -1
- package/src/lib/chrome.mjs +11 -0
- package/src/lib/chrome.mjs.map +1 -1
- package/src/lib/date-setting.d.mts +49 -0
- package/src/lib/date-setting.d.ts +49 -0
- package/src/lib/date-setting.js +125 -0
- package/src/lib/date-setting.js.map +1 -0
- package/src/lib/date-setting.mjs +122 -0
- package/src/lib/date-setting.mjs.map +1 -0
- package/src/lib/designer.d.mts +16 -4
- package/src/lib/designer.d.ts +16 -4
- package/src/lib/designer.js +25 -2
- package/src/lib/designer.js.map +1 -1
- package/src/lib/designer.mjs +25 -2
- package/src/lib/designer.mjs.map +1 -1
- package/src/lib/group-fold.js +2 -0
- package/src/lib/group-fold.js.map +1 -1
- package/src/lib/group-fold.mjs +2 -0
- package/src/lib/group-fold.mjs.map +1 -1
- package/src/lib/head-commands.d.mts +116 -0
- package/src/lib/head-commands.d.ts +116 -0
- package/src/lib/head-commands.js +504 -0
- package/src/lib/head-commands.js.map +1 -0
- package/src/lib/head-commands.mjs +497 -0
- package/src/lib/head-commands.mjs.map +1 -0
- package/src/lib/head-parts.d.mts +15 -0
- package/src/lib/head-parts.d.ts +15 -0
- package/src/lib/head-parts.js +69 -0
- package/src/lib/head-parts.js.map +1 -0
- package/src/lib/head-parts.mjs +64 -0
- package/src/lib/head-parts.mjs.map +1 -0
- package/src/lib/head-properties.d.mts +25 -0
- package/src/lib/head-properties.d.ts +25 -0
- package/src/lib/head-properties.js +383 -0
- package/src/lib/head-properties.js.map +1 -0
- package/src/lib/head-properties.mjs +376 -0
- package/src/lib/head-properties.mjs.map +1 -0
- package/src/lib/header-commands.js +7 -0
- package/src/lib/header-commands.js.map +1 -1
- package/src/lib/header-commands.mjs +7 -0
- package/src/lib/header-commands.mjs.map +1 -1
- package/src/lib/header-properties.js +5 -1
- package/src/lib/header-properties.js.map +1 -1
- package/src/lib/header-properties.mjs +5 -1
- package/src/lib/header-properties.mjs.map +1 -1
- package/src/lib/inline-settings.js +19 -11
- package/src/lib/inline-settings.js.map +1 -1
- package/src/lib/inline-settings.mjs +19 -11
- package/src/lib/inline-settings.mjs.map +1 -1
- package/src/lib/input-commands.js +3 -2
- package/src/lib/input-commands.js.map +1 -1
- package/src/lib/input-commands.mjs +3 -2
- package/src/lib/input-commands.mjs.map +1 -1
- package/src/lib/kind-settings-choices.js +16 -7
- package/src/lib/kind-settings-choices.js.map +1 -1
- package/src/lib/kind-settings-choices.mjs +16 -7
- package/src/lib/kind-settings-choices.mjs.map +1 -1
- package/src/lib/kind-settings-inputs.js +116 -58
- package/src/lib/kind-settings-inputs.js.map +1 -1
- package/src/lib/kind-settings-inputs.mjs +116 -58
- package/src/lib/kind-settings-inputs.mjs.map +1 -1
- package/src/lib/kind-settings-picker.d.mts +4 -0
- package/src/lib/kind-settings-picker.d.ts +4 -0
- package/src/lib/kind-settings-picker.js +115 -0
- package/src/lib/kind-settings-picker.js.map +1 -0
- package/src/lib/kind-settings-picker.mjs +112 -0
- package/src/lib/kind-settings-picker.mjs.map +1 -0
- package/src/lib/kind-settings-structures.js +35 -16
- package/src/lib/kind-settings-structures.js.map +1 -1
- package/src/lib/kind-settings-structures.mjs +36 -17
- package/src/lib/kind-settings-structures.mjs.map +1 -1
- package/src/lib/kind-settings.js +47 -43
- package/src/lib/kind-settings.js.map +1 -1
- package/src/lib/kind-settings.mjs +47 -43
- package/src/lib/kind-settings.mjs.map +1 -1
- package/src/lib/layout-settings.d.mts +7 -0
- package/src/lib/layout-settings.d.ts +7 -0
- package/src/lib/layout-settings.js +15 -2
- package/src/lib/layout-settings.js.map +1 -1
- package/src/lib/layout-settings.mjs +15 -2
- package/src/lib/layout-settings.mjs.map +1 -1
- package/src/lib/list-canvas.js +18 -7
- package/src/lib/list-canvas.js.map +1 -1
- package/src/lib/list-canvas.mjs +18 -7
- package/src/lib/list-canvas.mjs.map +1 -1
- package/src/lib/list-commands.d.mts +24 -1
- package/src/lib/list-commands.d.ts +24 -1
- package/src/lib/list-commands.js +105 -2
- package/src/lib/list-commands.js.map +1 -1
- package/src/lib/list-commands.mjs +102 -1
- package/src/lib/list-commands.mjs.map +1 -1
- package/src/lib/list-properties.js +248 -28
- package/src/lib/list-properties.js.map +1 -1
- package/src/lib/list-properties.mjs +248 -28
- package/src/lib/list-properties.mjs.map +1 -1
- package/src/lib/locales/ar/head.d.mts +2 -0
- package/src/lib/locales/ar/head.d.ts +2 -0
- package/src/lib/locales/ar/head.js +97 -0
- package/src/lib/locales/ar/head.js.map +1 -0
- package/src/lib/locales/ar/head.mjs +94 -0
- package/src/lib/locales/ar/head.mjs.map +1 -0
- package/src/lib/locales/ar/index.js +4 -1
- package/src/lib/locales/ar/index.js.map +1 -1
- package/src/lib/locales/ar/index.mjs +4 -1
- package/src/lib/locales/ar/index.mjs.map +1 -1
- package/src/lib/locales/ar/inputs.d.mts +2 -0
- package/src/lib/locales/ar/inputs.d.ts +2 -0
- package/src/lib/locales/ar/inputs.js +20 -0
- package/src/lib/locales/ar/inputs.js.map +1 -0
- package/src/lib/locales/ar/inputs.mjs +17 -0
- package/src/lib/locales/ar/inputs.mjs.map +1 -0
- package/src/lib/locales/ar/list.js +31 -0
- package/src/lib/locales/ar/list.js.map +1 -1
- package/src/lib/locales/ar/list.mjs +31 -0
- package/src/lib/locales/ar/list.mjs.map +1 -1
- package/src/lib/locales/ar/panel.js +38 -0
- package/src/lib/locales/ar/panel.js.map +1 -1
- package/src/lib/locales/ar/panel.mjs +38 -0
- package/src/lib/locales/ar/panel.mjs.map +1 -1
- package/src/lib/locales/ar/questions.js +8 -0
- package/src/lib/locales/ar/questions.js.map +1 -1
- package/src/lib/locales/ar/questions.mjs +8 -0
- package/src/lib/locales/ar/questions.mjs.map +1 -1
- package/src/lib/locales/ar/refusals.js +11 -0
- package/src/lib/locales/ar/refusals.js.map +1 -1
- package/src/lib/locales/ar/refusals.mjs +11 -0
- package/src/lib/locales/ar/refusals.mjs.map +1 -1
- package/src/lib/locales/ar/work-text.d.mts +3 -0
- package/src/lib/locales/ar/work-text.d.ts +3 -0
- package/src/lib/locales/ar/work-text.js +58 -0
- package/src/lib/locales/ar/work-text.js.map +1 -0
- package/src/lib/locales/ar/work-text.mjs +55 -0
- package/src/lib/locales/ar/work-text.mjs.map +1 -0
- package/src/lib/locales/en/head.d.mts +101 -0
- package/src/lib/locales/en/head.d.ts +101 -0
- package/src/lib/locales/en/head.js +106 -0
- package/src/lib/locales/en/head.js.map +1 -0
- package/src/lib/locales/en/head.mjs +103 -0
- package/src/lib/locales/en/head.mjs.map +1 -0
- package/src/lib/locales/en/index.d.mts +237 -0
- package/src/lib/locales/en/index.d.ts +237 -0
- package/src/lib/locales/en/index.js +4 -1
- package/src/lib/locales/en/index.js.map +1 -1
- package/src/lib/locales/en/index.mjs +4 -1
- package/src/lib/locales/en/index.mjs.map +1 -1
- package/src/lib/locales/en/inputs.d.mts +26 -0
- package/src/lib/locales/en/inputs.d.ts +26 -0
- package/src/lib/locales/en/inputs.js +30 -0
- package/src/lib/locales/en/inputs.js.map +1 -0
- package/src/lib/locales/en/inputs.mjs +27 -0
- package/src/lib/locales/en/inputs.mjs.map +1 -0
- package/src/lib/locales/en/list.d.mts +48 -0
- package/src/lib/locales/en/list.d.ts +48 -0
- package/src/lib/locales/en/list.js +33 -0
- package/src/lib/locales/en/list.js.map +1 -1
- package/src/lib/locales/en/list.mjs +33 -0
- package/src/lib/locales/en/list.mjs.map +1 -1
- package/src/lib/locales/en/panel.d.mts +6 -0
- package/src/lib/locales/en/panel.d.ts +6 -0
- package/src/lib/locales/en/panel.js +3 -0
- package/src/lib/locales/en/panel.js.map +1 -1
- package/src/lib/locales/en/panel.mjs +3 -0
- package/src/lib/locales/en/panel.mjs.map +1 -1
- package/src/lib/locales/en/questions.d.mts +8 -0
- package/src/lib/locales/en/questions.d.ts +8 -0
- package/src/lib/locales/en/questions.js +9 -0
- package/src/lib/locales/en/questions.js.map +1 -1
- package/src/lib/locales/en/questions.mjs +9 -0
- package/src/lib/locales/en/questions.mjs.map +1 -1
- package/src/lib/locales/en/refusals.d.mts +11 -0
- package/src/lib/locales/en/refusals.d.ts +11 -0
- package/src/lib/locales/en/refusals.js +11 -0
- package/src/lib/locales/en/refusals.js.map +1 -1
- package/src/lib/locales/en/refusals.mjs +11 -0
- package/src/lib/locales/en/refusals.mjs.map +1 -1
- package/src/lib/locales/en/work-text.d.mts +58 -0
- package/src/lib/locales/en/work-text.d.ts +58 -0
- package/src/lib/locales/en/work-text.js +67 -0
- package/src/lib/locales/en/work-text.js.map +1 -0
- package/src/lib/locales/en/work-text.mjs +64 -0
- package/src/lib/locales/en/work-text.mjs.map +1 -0
- package/src/lib/number-box.d.mts +66 -0
- package/src/lib/number-box.d.ts +66 -0
- package/src/lib/number-box.js +153 -0
- package/src/lib/number-box.js.map +1 -0
- package/src/lib/number-box.mjs +149 -0
- package/src/lib/number-box.mjs.map +1 -0
- package/src/lib/page-json.d.mts +3 -1
- package/src/lib/page-json.d.ts +3 -1
- package/src/lib/page-json.js +5 -3
- package/src/lib/page-json.js.map +1 -1
- package/src/lib/page-json.mjs +5 -3
- package/src/lib/page-json.mjs.map +1 -1
- package/src/lib/page-tree.js +11 -1
- package/src/lib/page-tree.js.map +1 -1
- package/src/lib/page-tree.mjs +11 -1
- package/src/lib/page-tree.mjs.map +1 -1
- package/src/lib/panel-block.js +22 -6
- package/src/lib/panel-block.js.map +1 -1
- package/src/lib/panel-block.mjs +22 -6
- package/src/lib/panel-block.mjs.map +1 -1
- package/src/lib/panel-field.js +5 -1
- package/src/lib/panel-field.js.map +1 -1
- package/src/lib/panel-field.mjs +5 -1
- package/src/lib/panel-field.mjs.map +1 -1
- package/src/lib/panel-group.js +7 -3
- package/src/lib/panel-group.js.map +1 -1
- package/src/lib/panel-group.mjs +7 -3
- package/src/lib/panel-group.mjs.map +1 -1
- package/src/lib/panel-layout.js +20 -15
- package/src/lib/panel-layout.js.map +1 -1
- package/src/lib/panel-layout.mjs +20 -15
- package/src/lib/panel-layout.mjs.map +1 -1
- package/src/lib/panel-look.js +28 -14
- package/src/lib/panel-look.js.map +1 -1
- package/src/lib/panel-look.mjs +28 -14
- package/src/lib/panel-look.mjs.map +1 -1
- package/src/lib/panel-map.js +53 -20
- package/src/lib/panel-map.js.map +1 -1
- package/src/lib/panel-map.mjs +53 -20
- package/src/lib/panel-map.mjs.map +1 -1
- package/src/lib/panel-page.js +5 -1
- package/src/lib/panel-page.js.map +1 -1
- package/src/lib/panel-page.mjs +5 -1
- package/src/lib/panel-page.mjs.map +1 -1
- package/src/lib/panel-parts.js +5 -1
- package/src/lib/panel-parts.js.map +1 -1
- package/src/lib/panel-parts.mjs +5 -1
- package/src/lib/panel-parts.mjs.map +1 -1
- package/src/lib/picker-commands.d.mts +16 -0
- package/src/lib/picker-commands.d.ts +16 -0
- package/src/lib/picker-commands.js +61 -0
- package/src/lib/picker-commands.js.map +1 -0
- package/src/lib/picker-commands.mjs +58 -0
- package/src/lib/picker-commands.mjs.map +1 -0
- package/src/lib/rules-answers.d.mts +1 -1
- package/src/lib/rules-answers.d.ts +1 -1
- package/src/lib/rules-answers.js +45 -21
- package/src/lib/rules-answers.js.map +1 -1
- package/src/lib/rules-answers.mjs +45 -21
- package/src/lib/rules-answers.mjs.map +1 -1
- package/src/lib/rules-formula-box.d.mts +7 -3
- package/src/lib/rules-formula-box.d.ts +7 -3
- package/src/lib/rules-formula-box.js +26 -6
- package/src/lib/rules-formula-box.js.map +1 -1
- package/src/lib/rules-formula-box.mjs +26 -6
- package/src/lib/rules-formula-box.mjs.map +1 -1
- package/src/lib/rules-formula.js +7 -5
- package/src/lib/rules-formula.js.map +1 -1
- package/src/lib/rules-formula.mjs +8 -6
- package/src/lib/rules-formula.mjs.map +1 -1
- package/src/lib/rules-worked-out.js +66 -12
- package/src/lib/rules-worked-out.js.map +1 -1
- package/src/lib/rules-worked-out.mjs +66 -12
- package/src/lib/rules-worked-out.mjs.map +1 -1
- package/src/lib/screen-properties.js +9 -2
- package/src/lib/screen-properties.js.map +1 -1
- package/src/lib/screen-properties.mjs +9 -2
- package/src/lib/screen-properties.mjs.map +1 -1
- package/src/lib/setting-refusals.d.mts +3 -0
- package/src/lib/setting-refusals.d.ts +3 -0
- package/src/lib/setting-refusals.js +25 -0
- package/src/lib/setting-refusals.js.map +1 -0
- package/src/lib/setting-refusals.mjs +22 -0
- package/src/lib/setting-refusals.mjs.map +1 -0
- package/src/lib/styles-head.d.mts +7 -0
- package/src/lib/styles-head.d.ts +7 -0
- package/src/lib/styles-head.js +28 -0
- package/src/lib/styles-head.js.map +1 -0
- package/src/lib/styles-head.mjs +25 -0
- package/src/lib/styles-head.mjs.map +1 -0
- package/src/lib/styles.d.mts +1 -1
- package/src/lib/styles.d.ts +1 -1
- package/src/lib/styles.js +9 -2
- package/src/lib/styles.js.map +1 -1
- package/src/lib/styles.mjs +9 -2
- package/src/lib/styles.mjs.map +1 -1
- package/src/lib/table-panel.js +16 -5
- package/src/lib/table-panel.js.map +1 -1
- package/src/lib/table-panel.mjs +16 -5
- package/src/lib/table-panel.mjs.map +1 -1
- package/src/lib/work-text.d.mts +43 -0
- package/src/lib/work-text.d.ts +43 -0
- package/src/lib/work-text.js +235 -0
- package/src/lib/work-text.js.map +1 -0
- package/src/lib/work-text.mjs +227 -0
- package/src/lib/work-text.mjs.map +1 -0
|
@@ -0,0 +1,376 @@
|
|
|
1
|
+
import { ICONS } from '@fieldia/widgets';
|
|
2
|
+
import { findNode, findTab, tabsNodes } from './page-tree.mjs';
|
|
3
|
+
import { setting } from './panel-controls.mjs';
|
|
4
|
+
import { tracksFrom } from './head-commands.mjs';
|
|
5
|
+
import { settingNumber } from './number-box.mjs';
|
|
6
|
+
const focused = (node) => node.ownerDocument.activeElement === node;
|
|
7
|
+
/** The page's fields and the model's, each once, by name. */
|
|
8
|
+
function allFields(designer, page) {
|
|
9
|
+
const own = Object.entries(page.fields);
|
|
10
|
+
const names = new Set(own.map(([name]) => name));
|
|
11
|
+
return [...own, ...designer.modelFields().filter((m) => !names.has(m.name)).map((m) => [m.name, m.field])];
|
|
12
|
+
}
|
|
13
|
+
/** A select of choices, drawn again only when its choices change, then set to `value`. */
|
|
14
|
+
function fill(el, select, choices, value) {
|
|
15
|
+
const key = JSON.stringify(choices);
|
|
16
|
+
if (select.dataset['choices'] !== key) {
|
|
17
|
+
select.dataset['choices'] = key;
|
|
18
|
+
select.replaceChildren(...choices.map(([v, words]) => el('option', { value: v }, words)));
|
|
19
|
+
}
|
|
20
|
+
if (!focused(select))
|
|
21
|
+
select.value = value;
|
|
22
|
+
}
|
|
23
|
+
const box = (el, label, attrs = {}) => el('input', { class: 'fd-input', 'aria-label': label, autocomplete: 'off', ...attrs });
|
|
24
|
+
const pick = (el, label) => el('select', { class: 'fd-input fd-select', 'aria-label': label });
|
|
25
|
+
const tick = (el, label) => el('input', { type: 'checkbox', class: 'fd-check', 'aria-label': label });
|
|
26
|
+
const ICON_NAMES = () => Object.keys(ICONS).sort();
|
|
27
|
+
/** The sheet's Record head settings, for the page's panel; none on a page that is no sheet. */
|
|
28
|
+
export function headSettings(el, designer) {
|
|
29
|
+
const w = designer.words.head;
|
|
30
|
+
const on = tick(el, w.headOn);
|
|
31
|
+
on.addEventListener('change', () => designer.setHead(on.checked ? {} : null));
|
|
32
|
+
const onRow = setting(el, 'content', 'Record head', on, { hint: w.recordHeadHint, words: w.recordHead });
|
|
33
|
+
const kindFrom = pick(el, w.kindFrom);
|
|
34
|
+
kindFrom.addEventListener('change', () => designer.setHead({ kindField: kindFrom.value || null }));
|
|
35
|
+
const kindWords = box(el, w.kindWords);
|
|
36
|
+
kindWords.addEventListener('input', () => designer.setHead({ kindLabel: kindWords.value }));
|
|
37
|
+
const numberFrom = pick(el, w.numberFrom);
|
|
38
|
+
numberFrom.addEventListener('change', () => designer.setHead({ numberField: numberFrom.value || null }));
|
|
39
|
+
const colour = box(el, w.kindColour, { type: 'color' });
|
|
40
|
+
colour.addEventListener('change', () => designer.setHead({ colour: colour.value }));
|
|
41
|
+
const icon = pick(el, w.kindIcon);
|
|
42
|
+
icon.addEventListener('change', () => designer.setHead({ icon: icon.value || null }));
|
|
43
|
+
const looks = el('div', { class: 'fd-head-looks' });
|
|
44
|
+
const copy = tick(el, w.copyTitle);
|
|
45
|
+
copy.addEventListener('change', () => designer.setHead({ copyTitle: copy.checked }));
|
|
46
|
+
const tracks = box(el, w.bandColumns, { placeholder: '1fr 1fr', spellcheck: 'false' });
|
|
47
|
+
// Apart by spaces or commas, in any digits, as a group's widths are.
|
|
48
|
+
tracks.addEventListener('change', () => designer.setHead({ tracks: tracksFrom(tracks.value) }));
|
|
49
|
+
// A whole number of pixels, 48 to 320; emptied, the usual.
|
|
50
|
+
let labelsWide = null;
|
|
51
|
+
const labelWidth = settingNumber(el, designer, {
|
|
52
|
+
label: w.labelWidth,
|
|
53
|
+
attrs: { class: 'fd-input', placeholder: '76' },
|
|
54
|
+
integer: true,
|
|
55
|
+
min: 48,
|
|
56
|
+
max: 320,
|
|
57
|
+
optional: true,
|
|
58
|
+
saved: () => labelsWide,
|
|
59
|
+
commit: (n) => designer.setHead({ labelWidth: n }),
|
|
60
|
+
});
|
|
61
|
+
const by = pick(el, w.updatedBy);
|
|
62
|
+
const at = pick(el, w.updatedAt);
|
|
63
|
+
const opens = pick(el, w.updatedOpens);
|
|
64
|
+
const setUpdated = () => designer.setHead({ updated: by.value && at.value ? { byField: by.value, atField: at.value, opens: opens.value || null } : null });
|
|
65
|
+
for (const control of [by, at, opens])
|
|
66
|
+
control.addEventListener('change', setUpdated);
|
|
67
|
+
// The row under the title, the buttons, the band's fields: lists with their own adders.
|
|
68
|
+
const rowList = el('div', { class: 'fd-head-list' });
|
|
69
|
+
const addRowField = pick(el, w.addRowField);
|
|
70
|
+
addRowField.addEventListener('change', () => {
|
|
71
|
+
if (addRowField.value)
|
|
72
|
+
designer.addHeadPart('meta', { field: addRowField.value });
|
|
73
|
+
addRowField.value = '';
|
|
74
|
+
});
|
|
75
|
+
const addRowLink = pick(el, w.addRowLink);
|
|
76
|
+
addRowLink.addEventListener('change', () => {
|
|
77
|
+
if (addRowLink.value)
|
|
78
|
+
designer.addHeadPart('meta', { link: addRowLink.value });
|
|
79
|
+
addRowLink.value = '';
|
|
80
|
+
});
|
|
81
|
+
const buttonList = el('div', { class: 'fd-head-list' });
|
|
82
|
+
const addButton = el('button', { type: 'button', class: 'fd-button fd-button-link' }, w.addButton);
|
|
83
|
+
addButton.addEventListener('click', () => designer.addHeadPart('actions', { button: w.newButton }));
|
|
84
|
+
const bandList = el('div', { class: 'fd-head-list' });
|
|
85
|
+
const addBandField = pick(el, w.addBandField);
|
|
86
|
+
addBandField.addEventListener('change', () => {
|
|
87
|
+
if (addBandField.value)
|
|
88
|
+
designer.addHeadPart('band', { field: addBandField.value });
|
|
89
|
+
addBandField.value = '';
|
|
90
|
+
});
|
|
91
|
+
const rows = [
|
|
92
|
+
onRow,
|
|
93
|
+
setting(el, 'content', 'Kind from', kindFrom, { words: w.kindFrom }),
|
|
94
|
+
setting(el, 'content', 'Kind’s words', kindWords, { hint: w.kindWordsHint, words: w.kindWords }),
|
|
95
|
+
setting(el, 'content', 'Number from', numberFrom, { words: w.numberFrom }),
|
|
96
|
+
setting(el, 'content', 'Kind’s colour', colour, { words: w.kindColour }),
|
|
97
|
+
setting(el, 'content', 'Kind’s icon', icon, { words: w.kindIcon }),
|
|
98
|
+
setting(el, 'content', 'Each kind’s look', looks, { words: w.kindLooks }),
|
|
99
|
+
setting(el, 'content', 'Copy title button', copy, { words: w.copyTitle }),
|
|
100
|
+
setting(el, 'content', 'Row under the title', [rowList, addRowField, addRowLink], { words: w.rowParts }),
|
|
101
|
+
setting(el, 'content', 'Buttons', [buttonList, addButton], { hint: w.buttonHint, words: w.actions }),
|
|
102
|
+
setting(el, 'content', 'Band’s fields', [bandList, addBandField], { words: w.bandFields }),
|
|
103
|
+
setting(el, 'layout', 'Band’s columns', tracks, { hint: w.bandColumnsHint, words: w.bandColumns }),
|
|
104
|
+
setting(el, 'layout', 'Band’s labels’ width', labelWidth.input, { words: w.labelWidth }),
|
|
105
|
+
setting(el, 'content', 'Updated by', by, { words: w.updatedBy }),
|
|
106
|
+
setting(el, 'content', 'Updated on', at, { words: w.updatedAt }),
|
|
107
|
+
setting(el, 'content', 'Pressed, “Updated by” shows', opens, { words: w.updatedOpens }),
|
|
108
|
+
];
|
|
109
|
+
const [, , wordsRow, , colourRow, iconRow, looksRow] = rows;
|
|
110
|
+
let drawnLists = '';
|
|
111
|
+
/** A part's line in its list: its name, what it has of its own, earlier, later and remove. */
|
|
112
|
+
const partLine = (id, name, own, index, count) => {
|
|
113
|
+
const tool = (label, words, run, hidden = false) => {
|
|
114
|
+
const button = el('button', { type: 'button', class: 'fd-icon-button', 'aria-label': label, title: label, ...(hidden ? { hidden: '' } : {}) }, words);
|
|
115
|
+
button.addEventListener('click', run);
|
|
116
|
+
return button;
|
|
117
|
+
};
|
|
118
|
+
return el('div', { class: 'fd-head-line', 'data-part': id }, el('span', { class: 'fd-head-line-name' }, name), ...own, tool(w.moveEarlier(name), '↑', () => designer.moveHeadPart(id, -1), index === 0), tool(w.moveLater(name), '↓', () => designer.moveHeadPart(id, 1), index === count - 1), tool(w.removeNamed(name), '×', () => designer.removeHeadPart(id)));
|
|
119
|
+
};
|
|
120
|
+
return {
|
|
121
|
+
rows,
|
|
122
|
+
update(page) {
|
|
123
|
+
const root = page.layout;
|
|
124
|
+
const sheet = root.type === 'sheet' ? root : null;
|
|
125
|
+
const head = sheet?.head;
|
|
126
|
+
for (const row of rows)
|
|
127
|
+
row.hidden = !sheet || (row !== onRow && !head);
|
|
128
|
+
if (!sheet)
|
|
129
|
+
return;
|
|
130
|
+
on.checked = !!head;
|
|
131
|
+
if (!head)
|
|
132
|
+
return;
|
|
133
|
+
const fields = allFields(designer, page);
|
|
134
|
+
const label = (name) => page.fields[name]?.label ?? fields.find(([n]) => n === name)?.[1].label ?? name;
|
|
135
|
+
const kind = head.kind ?? {};
|
|
136
|
+
fill(el, kindFrom, [['', w.oneKind], ...fields.filter(([, f]) => (f.type === 'selection' && !f.multiple) || f.type === 'many2one').map(([n, f]) => [n, f.label])], kind.field ?? '');
|
|
137
|
+
wordsRow.hidden = colourRow.hidden = iconRow.hidden = !!kind.field;
|
|
138
|
+
if (!focused(kindWords))
|
|
139
|
+
kindWords.value = kind.label ?? '';
|
|
140
|
+
fill(el, numberFrom, [['', w.recordsId], ...fields.filter(([, f]) => ['integer', 'float', 'char'].includes(f.type)).map(([n, f]) => [n, f.label])], kind.numberField ?? '');
|
|
141
|
+
if (!focused(colour))
|
|
142
|
+
colour.value = kind.colour ?? '#cc293d';
|
|
143
|
+
const icons = [['', w.noIcon], ...ICON_NAMES().map((name) => [name, name])];
|
|
144
|
+
fill(el, icon, icons, kind.icon ?? '');
|
|
145
|
+
// Each kind's colour and icon, by the choice's values.
|
|
146
|
+
const def = kind.field ? page.fields[kind.field] : undefined;
|
|
147
|
+
const options = def?.type === 'selection' ? def.options : [];
|
|
148
|
+
looksRow.hidden = !options.length;
|
|
149
|
+
const looksKey = JSON.stringify([options, kind.looks]);
|
|
150
|
+
if (looks.dataset['drawn'] !== looksKey && !looks.contains(looks.ownerDocument.activeElement)) {
|
|
151
|
+
looks.dataset['drawn'] = looksKey;
|
|
152
|
+
looks.replaceChildren(...options.map((option) => {
|
|
153
|
+
const value = String(option.value);
|
|
154
|
+
const look = kind.looks?.[value];
|
|
155
|
+
const swatch = box(el, w.colourOf(option.label), { type: 'color', value: look?.colour ?? '#7e7e7e' });
|
|
156
|
+
const mark = pick(el, w.iconOf(option.label));
|
|
157
|
+
fill(el, mark, icons, look?.icon ?? '');
|
|
158
|
+
const set = () => designer.setHeadKindLook(value, { colour: swatch.value, ...(mark.value ? { icon: mark.value } : {}) });
|
|
159
|
+
swatch.addEventListener('change', set);
|
|
160
|
+
mark.addEventListener('change', set);
|
|
161
|
+
return el('div', { class: 'fd-head-look', 'data-value': value }, el('span', { class: 'fd-head-line-name' }, option.label), swatch, mark);
|
|
162
|
+
}));
|
|
163
|
+
}
|
|
164
|
+
copy.checked = head.copyTitle !== false;
|
|
165
|
+
if (!focused(tracks))
|
|
166
|
+
tracks.value = (head.band?.tracks ?? []).join(' ');
|
|
167
|
+
labelsWide = head.band?.labelWidth ?? null;
|
|
168
|
+
labelWidth.refresh();
|
|
169
|
+
// "Updated by": who, when, and the tab it opens.
|
|
170
|
+
const tabs = tabsNodes(page).flatMap((t) => t.children);
|
|
171
|
+
fill(el, by, [['', w.noUpdated], ...fields.filter(([, f]) => ['many2one', 'char'].includes(f.type)).map(([n, f]) => [n, f.label])], head.updated?.byField ?? '');
|
|
172
|
+
fill(el, at, [['', w.noUpdated], ...fields.filter(([, f]) => f.type === 'date' || f.type === 'datetime').map(([n, f]) => [n, f.label])], head.updated?.atField ?? '');
|
|
173
|
+
fill(el, opens, [['', w.noTab], ...tabs.map((t) => [t.id, t.label])], head.updated?.opens ?? '');
|
|
174
|
+
// What can be added: a field not in the head yet; a count of a number field.
|
|
175
|
+
const placed = new Set([...(head.meta ?? []), ...(head.band?.children ?? [])].flatMap((part) => (part.type === 'field' ? [part.field] : [])));
|
|
176
|
+
const free = fields.filter(([n, f]) => !placed.has(n) && !['one2many', 'html', 'json', 'properties'].includes(f.type));
|
|
177
|
+
fill(el, addRowField, [['', w.pick], ...free.map(([n, f]) => [n, f.label])], '');
|
|
178
|
+
fill(el, addRowLink, [['', w.pick], ...fields.filter(([, f]) => ['integer', 'float', 'monetary'].includes(f.type)).map(([n, f]) => [n, f.label])], '');
|
|
179
|
+
fill(el, addBandField, [['', w.pick], ...free.map(([n, f]) => [n, f.label])], '');
|
|
180
|
+
// The lists, drawn again only when the head's parts change and nothing in them is being typed in.
|
|
181
|
+
const listsKey = JSON.stringify([head.meta, head.actions, head.band?.children, tabs.map((t) => t.id)]);
|
|
182
|
+
const busy = [rowList, bandList, buttonList].some((list) => list.contains(list.ownerDocument.activeElement) && list.ownerDocument.activeElement?.tagName === 'INPUT');
|
|
183
|
+
if (listsKey === drawnLists || busy)
|
|
184
|
+
return;
|
|
185
|
+
drawnLists = listsKey;
|
|
186
|
+
const meta = head.meta ?? [];
|
|
187
|
+
rowList.replaceChildren(...meta.map((part, i) => {
|
|
188
|
+
if (part.type === 'field')
|
|
189
|
+
return partLine(part.id, label(part.field), [], i, meta.length);
|
|
190
|
+
const link = part;
|
|
191
|
+
const name = label(link.field);
|
|
192
|
+
const one = box(el, w.linkWordsOne(name), { value: link.words.one ?? '' });
|
|
193
|
+
one.addEventListener('input', () => designer.updateHeadLink(link.id, { one: one.value }));
|
|
194
|
+
const other = box(el, w.linkWordsOther(name), { value: link.words.other });
|
|
195
|
+
other.addEventListener('input', () => designer.updateHeadLink(link.id, { other: other.value }));
|
|
196
|
+
const target = pick(el, w.linkTarget(name));
|
|
197
|
+
const parts = [['', w.nowhere], ...tabs.map((t) => [t.id, t.label]), ...sectionTargets(page)];
|
|
198
|
+
fill(el, target, parts, link.target ?? '');
|
|
199
|
+
target.addEventListener('change', () => designer.updateHeadLink(link.id, { target: target.value }));
|
|
200
|
+
return partLine(link.id, name, [one, other, target], i, meta.length);
|
|
201
|
+
}));
|
|
202
|
+
const actions = head.actions ?? [];
|
|
203
|
+
buttonList.replaceChildren(...actions.map((button, i) => {
|
|
204
|
+
const open = el('button', { type: 'button', class: 'fd-button fd-button-link' }, button.label);
|
|
205
|
+
open.addEventListener('click', () => designer.select(button.id));
|
|
206
|
+
return partLine(button.id, button.label, [open], i, actions.length);
|
|
207
|
+
}));
|
|
208
|
+
const band = head.band?.children ?? [];
|
|
209
|
+
bandList.replaceChildren(...band.map((part, i) => {
|
|
210
|
+
if (part.type !== 'field')
|
|
211
|
+
return partLine(part.id, part.id, [], i, band.length);
|
|
212
|
+
const node = part;
|
|
213
|
+
const key = box(el, w.accessKeyOf(label(node.field)), { value: node.hotkey ?? '', maxlength: '1', class: 'fd-input fd-hotkey-input' });
|
|
214
|
+
key.addEventListener('change', () => designer.setFieldHotkey(node.id, key.value || null));
|
|
215
|
+
return partLine(node.id, label(node.field), [key], i, band.length);
|
|
216
|
+
}));
|
|
217
|
+
},
|
|
218
|
+
};
|
|
219
|
+
}
|
|
220
|
+
/** The groups a count can take the reader to, by their titles. */
|
|
221
|
+
function sectionTargets(page) {
|
|
222
|
+
const found = [];
|
|
223
|
+
const walk = (nodes) => {
|
|
224
|
+
for (const node of nodes) {
|
|
225
|
+
if (node.type === 'section') {
|
|
226
|
+
if (node.title)
|
|
227
|
+
found.push([node.id, node.title]);
|
|
228
|
+
walk(node.children);
|
|
229
|
+
}
|
|
230
|
+
if (node.type === 'tabs')
|
|
231
|
+
for (const tab of node.children)
|
|
232
|
+
walk(tab.children);
|
|
233
|
+
}
|
|
234
|
+
};
|
|
235
|
+
const root = page.layout;
|
|
236
|
+
if (root.type === 'sheet' || root.type === 'sections')
|
|
237
|
+
walk(root.children);
|
|
238
|
+
return found;
|
|
239
|
+
}
|
|
240
|
+
/** A button's own parts: its icon alone, a toggle and its words, the look while the record has changes, a menu beside it. */
|
|
241
|
+
export function buttonPartsSettings(el, designer, id) {
|
|
242
|
+
const w = designer.words.head;
|
|
243
|
+
const icon = pick(el, w.icon);
|
|
244
|
+
icon.addEventListener('change', () => designer.setButtonParts(id, { icon: icon.value || null }));
|
|
245
|
+
const iconOnly = tick(el, w.iconOnly);
|
|
246
|
+
iconOnly.addEventListener('change', () => designer.setButtonParts(id, { iconOnly: iconOnly.checked }));
|
|
247
|
+
const toggle = pick(el, w.toggle);
|
|
248
|
+
toggle.addEventListener('change', () => designer.setButtonParts(id, { pressed: toggle.value || null }));
|
|
249
|
+
const pressedWords = box(el, w.pressedWords);
|
|
250
|
+
pressedWords.addEventListener('input', () => designer.setButtonParts(id, { pressedLabel: pressedWords.value }));
|
|
251
|
+
const primary = tick(el, w.primaryWhenChanged);
|
|
252
|
+
primary.addEventListener('change', () => designer.setButtonParts(id, { primaryWhenChanged: primary.checked }));
|
|
253
|
+
const menuList = el('div', { class: 'fd-head-list' });
|
|
254
|
+
const addChoice = el('button', { type: 'button', class: 'fd-button fd-button-link' }, w.addChoice);
|
|
255
|
+
const menuIcon = pick(el, w.chevronIcon);
|
|
256
|
+
menuIcon.addEventListener('change', () => designer.setButtonParts(id, { menuIcon: menuIcon.value || null }));
|
|
257
|
+
const menuName = box(el, w.chevronName);
|
|
258
|
+
menuName.addEventListener('input', () => designer.setButtonParts(id, { menuLabel: menuName.value }));
|
|
259
|
+
const current = () => {
|
|
260
|
+
const page = designer.getPage();
|
|
261
|
+
const root = page.layout;
|
|
262
|
+
const node = findNode(page, id)?.node;
|
|
263
|
+
if (node?.type === 'button')
|
|
264
|
+
return node;
|
|
265
|
+
return root.type === 'sheet' ? [...(root.head?.actions ?? []), ...(root.buttons ?? [])].find((b) => b.id === id) : undefined;
|
|
266
|
+
};
|
|
267
|
+
const items = () => (current()?.menu ?? []).map((item) => ({ id: item.id, label: item.label ?? item.id, action: item.action ?? '' }));
|
|
268
|
+
addChoice.addEventListener('click', () => designer.setButtonParts(id, { menu: [...items(), { label: w.newChoice, action: '' }] }));
|
|
269
|
+
const pressedRow = setting(el, 'content', 'Words while pressed', pressedWords, { words: w.pressedWords });
|
|
270
|
+
const chevronRows = [setting(el, 'content', 'Chevron’s icon', menuIcon, { words: w.chevronIcon }), setting(el, 'content', 'Chevron’s name', menuName, { words: w.chevronName })];
|
|
271
|
+
const rows = [
|
|
272
|
+
setting(el, 'content', 'Icon', icon, { words: w.icon }),
|
|
273
|
+
setting(el, 'content', 'Its icon alone', iconOnly, { words: w.iconOnly }),
|
|
274
|
+
setting(el, 'content', 'Pressed while', toggle, { words: w.toggle }),
|
|
275
|
+
pressedRow,
|
|
276
|
+
setting(el, 'content', 'Primary while the record has changes', primary, { words: w.primaryWhenChanged }),
|
|
277
|
+
setting(el, 'content', 'Menu beside it', [menuList, addChoice], { hint: w.menuHint, words: w.menu }),
|
|
278
|
+
...chevronRows,
|
|
279
|
+
];
|
|
280
|
+
let drawn = '';
|
|
281
|
+
return {
|
|
282
|
+
rows,
|
|
283
|
+
update(page) {
|
|
284
|
+
const button = current();
|
|
285
|
+
for (const row of rows)
|
|
286
|
+
row.hidden = !button;
|
|
287
|
+
if (!button)
|
|
288
|
+
return;
|
|
289
|
+
const icons = [['', w.noIcon], ...ICON_NAMES().map((name) => [name, name])];
|
|
290
|
+
fill(el, icon, icons, button.icon ?? '');
|
|
291
|
+
iconOnly.checked = button.iconOnly === true;
|
|
292
|
+
const flags = allFields(designer, page).filter(([, f]) => f.type === 'boolean');
|
|
293
|
+
fill(el, toggle, [['', w.notToggle], ...flags.map(([n, f]) => [n, f.label])], typeof button.pressed === 'string' ? button.pressed : '');
|
|
294
|
+
pressedRow.hidden = button.pressed === undefined;
|
|
295
|
+
if (!focused(pressedWords))
|
|
296
|
+
pressedWords.value = button.pressedLabel ?? '';
|
|
297
|
+
primary.checked = button.primaryWhenChanged === true;
|
|
298
|
+
for (const row of chevronRows)
|
|
299
|
+
row.hidden = !button.menu?.length;
|
|
300
|
+
fill(el, menuIcon, [['', w.noIcon], ...ICON_NAMES().map((name) => [name, name])], button.menuIcon ?? '');
|
|
301
|
+
if (!focused(menuName))
|
|
302
|
+
menuName.value = button.menuLabel ?? '';
|
|
303
|
+
const key = JSON.stringify(button.menu ?? []);
|
|
304
|
+
if (key === drawn || menuList.contains(menuList.ownerDocument.activeElement))
|
|
305
|
+
return;
|
|
306
|
+
drawn = key;
|
|
307
|
+
const list = items();
|
|
308
|
+
menuList.replaceChildren(...list.map((item, i) => {
|
|
309
|
+
const words = box(el, `${w.choiceWords} ${i + 1}`, { value: item.label });
|
|
310
|
+
const action = box(el, `${w.choiceAction} ${i + 1}`, { value: item.action, spellcheck: 'false' });
|
|
311
|
+
const save = () => designer.setButtonParts(id, { menu: items().map((one) => (one.id === item.id ? { ...one, label: words.value, action: action.value } : one)) });
|
|
312
|
+
words.addEventListener('change', save);
|
|
313
|
+
action.addEventListener('change', save);
|
|
314
|
+
const remove = el('button', { type: 'button', class: 'fd-icon-button', 'aria-label': w.removeNamed(item.label), title: w.removeNamed(item.label) }, '×');
|
|
315
|
+
remove.addEventListener('click', () => designer.setButtonParts(id, { menu: items().filter((one) => one.id !== item.id) }));
|
|
316
|
+
return el('div', { class: 'fd-head-line', 'data-part': item.id }, words, action, remove);
|
|
317
|
+
}));
|
|
318
|
+
},
|
|
319
|
+
};
|
|
320
|
+
}
|
|
321
|
+
/** A tab's icon, shown alone or with its words, and the field whose count shows after it. */
|
|
322
|
+
export function tabPartsSettings(el, designer, id) {
|
|
323
|
+
const w = designer.words.head;
|
|
324
|
+
const icon = pick(el, w.tabIcon);
|
|
325
|
+
icon.addEventListener('change', () => designer.setTabParts(id, { icon: icon.value || null }));
|
|
326
|
+
const iconOnly = tick(el, w.tabIconOnly);
|
|
327
|
+
iconOnly.addEventListener('change', () => designer.setTabParts(id, { iconOnly: iconOnly.checked }));
|
|
328
|
+
const count = pick(el, w.countFrom);
|
|
329
|
+
count.addEventListener('change', () => designer.setTabParts(id, { count: count.value || null }));
|
|
330
|
+
const rows = [setting(el, 'content', 'Tab’s icon', icon, { words: w.tabIcon }), setting(el, 'content', 'Tab’s icon alone', iconOnly, { words: w.tabIconOnly }), setting(el, 'content', 'Count from', count, { words: w.countFrom })];
|
|
331
|
+
return {
|
|
332
|
+
rows,
|
|
333
|
+
update(page) {
|
|
334
|
+
const tab = findTab(page, id)?.tab;
|
|
335
|
+
if (!tab)
|
|
336
|
+
return;
|
|
337
|
+
fill(el, icon, [['', w.noIcon], ...ICON_NAMES().map((name) => [name, name])], tab.icon ?? '');
|
|
338
|
+
iconOnly.checked = tab.iconOnly === true;
|
|
339
|
+
const counted = allFields(designer, page).filter(([, f]) => ['integer', 'float', 'monetary', 'one2many', 'many2many', 'binary', 'image'].includes(f.type));
|
|
340
|
+
fill(el, count, [['', w.noCount], ...counted.map(([n, f]) => [n, f.label])], tab.count ?? '');
|
|
341
|
+
},
|
|
342
|
+
};
|
|
343
|
+
}
|
|
344
|
+
/** Tabs directly in a sheet with a head: in the head's band, or over the body. */
|
|
345
|
+
export function tabsInHeadSetting(el, designer, id) {
|
|
346
|
+
const w = designer.words.head;
|
|
347
|
+
const inHead = tick(el, w.inHead);
|
|
348
|
+
inHead.addEventListener('change', () => designer.setTabsInHead(id, inHead.checked));
|
|
349
|
+
const row = setting(el, 'layout', 'In the record’s head', inHead, { hint: w.inHeadHint, words: w.inHead });
|
|
350
|
+
return {
|
|
351
|
+
rows: [row],
|
|
352
|
+
update(page) {
|
|
353
|
+
const root = page.layout;
|
|
354
|
+
const direct = root.type === 'sheet' && !!root.head && root.children.some((child) => child.id === id && child.type === 'tabs');
|
|
355
|
+
row.hidden = !direct;
|
|
356
|
+
const tabs = tabsNodes(page).find((t) => t.id === id);
|
|
357
|
+
inHead.checked = tabs?.place === 'head';
|
|
358
|
+
},
|
|
359
|
+
};
|
|
360
|
+
}
|
|
361
|
+
/** A field's access key: a letter of its label, with Alt. */
|
|
362
|
+
export function fieldHotkeySetting(el, designer, id) {
|
|
363
|
+
const w = designer.words.head;
|
|
364
|
+
const key = box(el, w.accessKey, { maxlength: '1', class: 'fd-input fd-hotkey-input', placeholder: 'E', spellcheck: 'false' });
|
|
365
|
+
key.addEventListener('change', () => designer.setFieldHotkey(id, key.value || null));
|
|
366
|
+
const row = setting(el, 'content', 'Access key, with Alt', key, { hint: w.accessKeyHint, words: w.accessKey });
|
|
367
|
+
return {
|
|
368
|
+
rows: [row],
|
|
369
|
+
update(page) {
|
|
370
|
+
const node = findNode(page, id)?.node;
|
|
371
|
+
if (node?.type === 'field' && !focused(key))
|
|
372
|
+
key.value = (node.hotkey ?? '').toUpperCase();
|
|
373
|
+
},
|
|
374
|
+
};
|
|
375
|
+
}
|
|
376
|
+
//# sourceMappingURL=head-properties.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"head-properties.mjs","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/head-properties.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,11 @@ function findHeaderPart(page, id) {
|
|
|
23
23
|
const item = menu.findIndex((p) => p.id === id);
|
|
24
24
|
if (item !== -1)
|
|
25
25
|
return { kind: 'menu', list: menu, index: item, part: menu[item] };
|
|
26
|
+
// A record head's buttons: buttons of the header, in the head's own list.
|
|
27
|
+
const actions = root.head?.actions ?? [];
|
|
28
|
+
const action = actions.findIndex((p) => p.id === id);
|
|
29
|
+
if (action !== -1)
|
|
30
|
+
return { kind: 'button', list: actions, index: action, part: actions[action] };
|
|
26
31
|
if (root.ribbon?.id === id)
|
|
27
32
|
return { kind: 'ribbon', list: [root.ribbon, ...(root.ribbons ?? [])], index: 0, part: root.ribbon };
|
|
28
33
|
for (const kind of Object.keys(LISTS)) {
|
|
@@ -333,6 +338,8 @@ function headerCommands(context) {
|
|
|
333
338
|
if (root.toolbar && !Object.keys(root.toolbar).length)
|
|
334
339
|
delete root.toolbar;
|
|
335
340
|
}
|
|
341
|
+
else if (!list.length && root.head?.actions === list)
|
|
342
|
+
delete root.head.actions;
|
|
336
343
|
else if (!list.length)
|
|
337
344
|
delete root[LISTS[kind]];
|
|
338
345
|
prune(draft);
|
|
@@ -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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"}
|
|
@@ -17,6 +17,11 @@ export function findHeaderPart(page, id) {
|
|
|
17
17
|
const item = menu.findIndex((p) => p.id === id);
|
|
18
18
|
if (item !== -1)
|
|
19
19
|
return { kind: 'menu', list: menu, index: item, part: menu[item] };
|
|
20
|
+
// A record head's buttons: buttons of the header, in the head's own list.
|
|
21
|
+
const actions = root.head?.actions ?? [];
|
|
22
|
+
const action = actions.findIndex((p) => p.id === id);
|
|
23
|
+
if (action !== -1)
|
|
24
|
+
return { kind: 'button', list: actions, index: action, part: actions[action] };
|
|
20
25
|
if (root.ribbon?.id === id)
|
|
21
26
|
return { kind: 'ribbon', list: [root.ribbon, ...(root.ribbons ?? [])], index: 0, part: root.ribbon };
|
|
22
27
|
for (const kind of Object.keys(LISTS)) {
|
|
@@ -327,6 +332,8 @@ export function headerCommands(context) {
|
|
|
327
332
|
if (root.toolbar && !Object.keys(root.toolbar).length)
|
|
328
333
|
delete root.toolbar;
|
|
329
334
|
}
|
|
335
|
+
else if (!list.length && root.head?.actions === list)
|
|
336
|
+
delete root.head.actions;
|
|
330
337
|
else if (!list.length)
|
|
331
338
|
delete root[LISTS[kind]];
|
|
332
339
|
prune(draft);
|