@fieldia/designer 0.20.0 → 0.22.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.d.mts +1 -1
- package/src/lib/canvas-form.d.ts +1 -1
- 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 +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 +19 -1
- package/src/lib/designer.d.ts +19 -1
- package/src/lib/designer.js +32 -8
- package/src/lib/designer.js.map +1 -1
- package/src/lib/designer.mjs +32 -8
- package/src/lib/designer.mjs.map +1 -1
- package/src/lib/head-commands.d.mts +11 -1
- package/src/lib/head-commands.d.ts +11 -1
- package/src/lib/head-commands.js +33 -1
- package/src/lib/head-commands.js.map +1 -1
- package/src/lib/head-commands.mjs +30 -1
- package/src/lib/head-commands.mjs.map +1 -1
- package/src/lib/head-properties.js +19 -6
- package/src/lib/head-properties.js.map +1 -1
- package/src/lib/head-properties.mjs +19 -6
- package/src/lib/head-properties.mjs.map +1 -1
- package/src/lib/inline-settings.js +52 -11
- package/src/lib/inline-settings.js.map +1 -1
- package/src/lib/inline-settings.mjs +52 -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.js +16 -9
- package/src/lib/kind-settings-picker.js.map +1 -1
- package/src/lib/kind-settings-picker.mjs +16 -9
- package/src/lib/kind-settings-picker.mjs.map +1 -1
- package/src/lib/kind-settings-structures.js +28 -14
- package/src/lib/kind-settings-structures.js.map +1 -1
- package/src/lib/kind-settings-structures.mjs +29 -15
- 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/list-calendar.d.mts +7 -0
- package/src/lib/list-calendar.d.ts +7 -0
- package/src/lib/list-calendar.js +155 -0
- package/src/lib/list-calendar.js.map +1 -0
- package/src/lib/list-calendar.mjs +152 -0
- package/src/lib/list-calendar.mjs.map +1 -0
- package/src/lib/list-commands.d.mts +3 -1
- package/src/lib/list-commands.d.ts +3 -1
- package/src/lib/list-commands.js +8 -0
- package/src/lib/list-commands.js.map +1 -1
- package/src/lib/list-commands.mjs +9 -1
- package/src/lib/list-commands.mjs.map +1 -1
- package/src/lib/list-properties.js +103 -55
- package/src/lib/list-properties.js.map +1 -1
- package/src/lib/list-properties.mjs +103 -55
- package/src/lib/list-properties.mjs.map +1 -1
- package/src/lib/locales/ar/changes.js +3 -0
- package/src/lib/locales/ar/changes.js.map +1 -1
- package/src/lib/locales/ar/changes.mjs +3 -0
- package/src/lib/locales/ar/changes.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/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 +26 -0
- package/src/lib/locales/ar/list.js.map +1 -1
- package/src/lib/locales/ar/list.mjs +26 -0
- package/src/lib/locales/ar/list.mjs.map +1 -1
- package/src/lib/locales/ar/questions.js +7 -0
- package/src/lib/locales/ar/questions.js.map +1 -1
- package/src/lib/locales/ar/questions.mjs +7 -0
- package/src/lib/locales/ar/questions.mjs.map +1 -1
- package/src/lib/locales/ar/refusals.js +1 -0
- package/src/lib/locales/ar/refusals.js.map +1 -1
- package/src/lib/locales/ar/refusals.mjs +1 -0
- package/src/lib/locales/ar/refusals.mjs.map +1 -1
- package/src/lib/locales/en/changes.d.mts +3 -0
- package/src/lib/locales/en/changes.d.ts +3 -0
- package/src/lib/locales/en/changes.js +3 -0
- package/src/lib/locales/en/changes.js.map +1 -1
- package/src/lib/locales/en/changes.mjs +3 -0
- package/src/lib/locales/en/changes.mjs.map +1 -1
- package/src/lib/locales/en/index.d.mts +60 -0
- package/src/lib/locales/en/index.d.ts +60 -0
- 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/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 +34 -0
- package/src/lib/locales/en/list.d.ts +34 -0
- package/src/lib/locales/en/list.js +27 -0
- package/src/lib/locales/en/list.js.map +1 -1
- package/src/lib/locales/en/list.mjs +27 -0
- package/src/lib/locales/en/list.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 +8 -0
- package/src/lib/locales/en/questions.js.map +1 -1
- package/src/lib/locales/en/questions.mjs +8 -0
- package/src/lib/locales/en/questions.mjs.map +1 -1
- package/src/lib/locales/en/refusals.d.mts +1 -0
- package/src/lib/locales/en/refusals.d.ts +1 -0
- package/src/lib/locales/en/refusals.js +1 -0
- package/src/lib/locales/en/refusals.js.map +1 -1
- package/src/lib/locales/en/refusals.mjs +1 -0
- package/src/lib/locales/en/refusals.mjs.map +1 -1
- 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-checks.js +5 -0
- package/src/lib/page-checks.js.map +1 -1
- package/src/lib/page-checks.mjs +5 -0
- package/src/lib/page-checks.mjs.map +1 -1
- 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.d.mts +3 -1
- package/src/lib/page-tree.d.ts +3 -1
- package/src/lib/page-tree.js +8 -0
- package/src/lib/page-tree.js.map +1 -1
- package/src/lib/page-tree.mjs +7 -0
- package/src/lib/page-tree.mjs.map +1 -1
- package/src/lib/panel-block.js +16 -5
- package/src/lib/panel-block.js.map +1 -1
- package/src/lib/panel-block.mjs +16 -5
- package/src/lib/panel-block.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 +21 -14
- package/src/lib/panel-look.js.map +1 -1
- package/src/lib/panel-look.mjs +21 -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/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/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/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/templates.js +1 -1
- package/src/lib/templates.js.map +1 -1
- package/src/lib/templates.mjs +2 -2
- package/src/lib/templates.mjs.map +1 -1
- package/src/lib/try-it.d.mts +6 -1
- package/src/lib/try-it.d.ts +6 -1
- package/src/lib/try-it.js +25 -0
- package/src/lib/try-it.js.map +1 -1
- package/src/lib/try-it.mjs +24 -0
- package/src/lib/try-it.mjs.map +1 -1
- package/src/lib/work-text.d.mts +10 -2
- package/src/lib/work-text.d.ts +10 -2
- package/src/lib/work-text.js +12 -23
- package/src/lib/work-text.js.map +1 -1
- package/src/lib/work-text.mjs +12 -21
- package/src/lib/work-text.mjs.map +1 -1
|
@@ -5,17 +5,20 @@ import { ADDRESS_PARTS, USUAL_ADDRESS } from './kind-commands.mjs';
|
|
|
5
5
|
import { choiceSettings } from './kind-settings-choices.mjs';
|
|
6
6
|
import { LARGEST_PICTURE } from './choice-commands.mjs';
|
|
7
7
|
import { pictureForPage } from './picture-upload.mjs';
|
|
8
|
+
import { settingNumber } from './number-box.mjs';
|
|
8
9
|
/** Kinds whose options may be shown in an order of each form's own. */
|
|
9
10
|
const SHUFFLED = new Set(['multiple-choice', 'checkboxes', 'dropdown', 'image-choice', 'ranking']);
|
|
10
11
|
/** Kinds whose options may be worth points: a matrix's options are its columns. */
|
|
11
12
|
const SCORED = new Set(['multiple-choice', 'checkboxes', 'dropdown', 'image-choice', 'matrix']);
|
|
12
13
|
const optionsOf = (field) => (field.type === 'selection' ? field.options : field.type === 'matrix' ? field.columns : []);
|
|
13
|
-
|
|
14
|
+
/** A setting's number as the page holds it, or null. */
|
|
15
|
+
const held = (value) => (typeof value === 'number' && Number.isFinite(value) ? value : null);
|
|
14
16
|
export function kindSettings(el, designer, id, kind) {
|
|
15
17
|
const w = designer.words.questions;
|
|
16
18
|
const focused = (node) => node.ownerDocument.activeElement === node;
|
|
17
19
|
const word = (text, control) => el('label', { class: 'fd-inline-setting' }, el('span', {}, text), control);
|
|
18
|
-
|
|
20
|
+
/** The designer's number box: Arabic digits and a decimal comma read, kept as it is left, what does not fit said. */
|
|
21
|
+
const numberBox = (options) => settingNumber(el, designer, { ...options, attrs: { class: 'fd-inline-input fd-inline-number', ...(options.placeholder ? { placeholder: options.placeholder } : {}), ...options.attrs } });
|
|
19
22
|
const textBox = (label, placeholder) => el('input', { class: 'fd-inline-input fd-inline-words', 'aria-label': label, placeholder, autocomplete: 'off' });
|
|
20
23
|
const toggle = (label, onClick) => {
|
|
21
24
|
const button = el('button', { type: 'button', class: 'fd-switch', role: 'switch', 'aria-checked': 'false', 'aria-label': label });
|
|
@@ -25,32 +28,28 @@ export function kindSettings(el, designer, id, kind) {
|
|
|
25
28
|
/** A setting of the question's widget, from its node's options. */
|
|
26
29
|
const optionOf = (node, key) => node.options?.[key];
|
|
27
30
|
function slider() {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
-
const
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
if (min !== null && max !== null)
|
|
36
|
-
designer.setLimits(id, { min, max });
|
|
37
|
-
};
|
|
38
|
-
from.addEventListener('change', range);
|
|
39
|
-
to.addEventListener('change', range);
|
|
31
|
+
// Its ends as drawn — 0 to 100 unless said — each kept with the other once typed and left; its step more than 0, 1 unless said.
|
|
32
|
+
let [least, most, by] = [0, 100, 1];
|
|
33
|
+
const fromOptions = { label: w.from, saved: () => least, commit: (n) => designer.setLimits(id, { min: n, max: most }) };
|
|
34
|
+
const toOptions = { label: w.toLabel, saved: () => most, commit: (n) => designer.setLimits(id, { min: least, max: n }) };
|
|
35
|
+
const from = numberBox(fromOptions);
|
|
36
|
+
const to = numberBox(toOptions);
|
|
37
|
+
const stepping = { label: w.step, above: 0, optional: true, saved: () => by, commit: (n) => designer.setStep(id, n) };
|
|
40
38
|
// A step with decimals makes the field a decimal, so the values it reaches are ones the field takes.
|
|
41
|
-
step
|
|
39
|
+
const step = numberBox(stepping);
|
|
42
40
|
return {
|
|
43
|
-
element: el('div', { class: 'fd-inline-row' }, word(w.from, from), word(w.to, to), word(w.step, step)),
|
|
41
|
+
element: el('div', { class: 'fd-inline-row' }, word(w.from, from.input), word(w.to, to.input), word(w.step, step.input)),
|
|
44
42
|
standsIn: false,
|
|
45
43
|
refresh(page, node) {
|
|
46
44
|
const def = page.fields[node.field];
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
45
|
+
// A whole-number field's ends are whole numbers.
|
|
46
|
+
fromOptions.integer = toOptions.integer = def.type === 'integer';
|
|
47
|
+
least = 'min' in def && typeof def.min === 'number' ? def.min : 0;
|
|
48
|
+
most = 'max' in def && typeof def.max === 'number' ? def.max : 100;
|
|
49
|
+
by = held(optionOf(node, 'step')) ?? 1;
|
|
50
|
+
from.refresh();
|
|
51
|
+
to.refresh();
|
|
52
|
+
step.refresh();
|
|
54
53
|
},
|
|
55
54
|
};
|
|
56
55
|
}
|
|
@@ -218,26 +217,25 @@ export function kindSettings(el, designer, id, kind) {
|
|
|
218
217
|
const addField = columns.element.querySelector('[data-add-column]');
|
|
219
218
|
if (addField)
|
|
220
219
|
addField.textContent = w.addField;
|
|
221
|
-
|
|
222
|
-
const
|
|
220
|
+
// Whole numbers, at least 0 and at most 1 or more; emptied (or at least 0), none.
|
|
221
|
+
const counts = { min: null, max: null };
|
|
222
|
+
const count = (label, key, min) => numberBox({ label, integer: true, min, optional: true, saved: () => counts[key], commit: (n) => designer.setWidgetOptions(id, { [key]: n === 0 ? null : n }) });
|
|
223
|
+
const least = count(w.atLeast, 'min', 0);
|
|
224
|
+
const most = count(w.atMost, 'max', 1);
|
|
223
225
|
const title = textBox(w.cardTitle, w.entry);
|
|
224
226
|
const button = textBox(w.buttonWords, w.addAnother);
|
|
225
|
-
const count = (input, key) => input.addEventListener('change', () => {
|
|
226
|
-
const n = numberOrNull(input.value);
|
|
227
|
-
designer.setWidgetOptions(id, { [key]: n !== null && Number.isInteger(n) && n > 0 ? n : null });
|
|
228
|
-
});
|
|
229
|
-
count(least, 'min');
|
|
230
|
-
count(most, 'max');
|
|
231
227
|
title.addEventListener('input', () => designer.setWidgetOptions(id, { itemLabel: title.value }));
|
|
232
228
|
button.addEventListener('input', () => designer.setWidgetOptions(id, { addLabel: button.value }));
|
|
233
229
|
return {
|
|
234
|
-
element: el('div', { class: 'fd-kind-block' }, columns.element, el('div', { class: 'fd-inline-row' }, word(w.atLeast, least), word(w.atMost, most)), el('div', { class: 'fd-inline-row' }, word(w.cardTitle, title), word(w.buttonWords, button))),
|
|
230
|
+
element: el('div', { class: 'fd-kind-block' }, columns.element, el('div', { class: 'fd-inline-row' }, word(w.atLeast, least.input), word(w.atMost, most.input)), el('div', { class: 'fd-inline-row' }, word(w.cardTitle, title), word(w.buttonWords, button))),
|
|
235
231
|
standsIn: true,
|
|
236
232
|
refresh(page, node) {
|
|
237
233
|
columns.update(page.fields[node.field]);
|
|
238
234
|
const text = (input, value) => !focused(input) && (input.value = value === undefined || value === null ? '' : String(value));
|
|
239
|
-
|
|
240
|
-
|
|
235
|
+
counts.min = held(optionOf(node, 'min'));
|
|
236
|
+
counts.max = held(optionOf(node, 'max'));
|
|
237
|
+
least.refresh();
|
|
238
|
+
most.refresh();
|
|
241
239
|
text(title, optionOf(node, 'itemLabel'));
|
|
242
240
|
text(button, optionOf(node, 'addLabel'));
|
|
243
241
|
},
|
|
@@ -262,14 +260,17 @@ export function kindSettings(el, designer, id, kind) {
|
|
|
262
260
|
});
|
|
263
261
|
const list = el('ul', { class: 'fd-kind-points' });
|
|
264
262
|
const block = el('div', { class: 'fd-kind-block' }, el('span', { class: 'fd-prop-name' }, w.points), list);
|
|
263
|
+
/** Each option's points box, kept as it is left: emptying one, or half typing it, never takes the quiz away under the keys. */
|
|
265
264
|
const rows = [];
|
|
266
265
|
return {
|
|
267
266
|
element: el('div', { class: 'fd-kind-points-box' }, start, block),
|
|
268
267
|
standsIn: false,
|
|
269
268
|
refresh(page, node) {
|
|
270
269
|
const quiz = Object.values(page.fields).some((f) => optionsOf(f).some((o) => o.score !== undefined));
|
|
271
|
-
|
|
272
|
-
|
|
270
|
+
// While one of its boxes is typed in, the block stays, so the box and what is typed in it do too.
|
|
271
|
+
const typing = list.contains(list.ownerDocument.activeElement);
|
|
272
|
+
start.hidden = quiz || typing;
|
|
273
|
+
block.hidden = !quiz && !typing;
|
|
273
274
|
const options = optionsOf(page.fields[node.field]);
|
|
274
275
|
while (rows.length > options.length) {
|
|
275
276
|
rows.pop();
|
|
@@ -278,16 +279,19 @@ export function kindSettings(el, designer, id, kind) {
|
|
|
278
279
|
while (rows.length < options.length) {
|
|
279
280
|
const index = rows.length;
|
|
280
281
|
const name = el('span', { class: 'fd-kind-points-name' });
|
|
281
|
-
const
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
282
|
+
const row = { name, score: null };
|
|
283
|
+
const options = { label: w.points, optional: true, placeholder: '0', saved: () => row.score, commit: (n) => designer.setOptionDetails(id, index, { score: n }) };
|
|
284
|
+
const box = numberBox(options);
|
|
285
|
+
Object.assign(row, { input: box.input, options, refresh: box.refresh });
|
|
286
|
+
list.append(el('li', { class: 'fd-kind-points-row' }, name, box.input));
|
|
287
|
+
rows.push(row);
|
|
285
288
|
}
|
|
286
289
|
options.forEach((option, i) => {
|
|
287
290
|
rows[i].name.textContent = option.label;
|
|
288
|
-
rows[i].
|
|
289
|
-
|
|
290
|
-
|
|
291
|
+
rows[i].options.label = w.pointsFor(option.label);
|
|
292
|
+
rows[i].input.setAttribute('aria-label', rows[i].options.label);
|
|
293
|
+
rows[i].score = held(option.score);
|
|
294
|
+
rows[i].refresh();
|
|
291
295
|
});
|
|
292
296
|
},
|
|
293
297
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kind-settings.mjs","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/kind-settings.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"kind-settings.mjs","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/kind-settings.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Page } from '@fieldia/core';
|
|
2
|
+
import type { ElementFactory } from './chrome.mjs';
|
|
3
|
+
import type { Designer } from './designer.mjs';
|
|
4
|
+
export declare function calendarSection(el: ElementFactory, designer: Designer): {
|
|
5
|
+
element: HTMLDivElement;
|
|
6
|
+
update(page: Page): void;
|
|
7
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Page } from '@fieldia/core';
|
|
2
|
+
import type { ElementFactory } from './chrome';
|
|
3
|
+
import type { Designer } from './designer';
|
|
4
|
+
export declare function calendarSection(el: ElementFactory, designer: Designer): {
|
|
5
|
+
element: HTMLDivElement;
|
|
6
|
+
update(page: Page): void;
|
|
7
|
+
};
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.calendarSection = calendarSection;
|
|
4
|
+
/**
|
|
5
|
+
* A list's calendar in its panel, as its map is: whether there is one, when
|
|
6
|
+
* each record starts and ends, its words, its colour, a column for each
|
|
7
|
+
* person or room, the views offered and the one shown first, how the list
|
|
8
|
+
* opens, the week's first day, the hours and a slot's minutes.
|
|
9
|
+
*/
|
|
10
|
+
const TIMES = new Set(['date', 'datetime']);
|
|
11
|
+
/** Fields a record's words can come from. */
|
|
12
|
+
const SAYABLE = new Set(['char', 'text', 'selection', 'many2one', 'integer', 'float', 'monetary', 'date', 'datetime']);
|
|
13
|
+
/** Fields a colour can come from: values that repeat. */
|
|
14
|
+
const COLOURS = new Set(['many2one', 'selection', 'char', 'integer', 'boolean']);
|
|
15
|
+
/** Fields a column for each can come from. */
|
|
16
|
+
const COLUMNS = new Set(['many2one', 'selection', 'char', 'integer']);
|
|
17
|
+
const VIEWS = ['day', 'week', 'month', 'agenda'];
|
|
18
|
+
const SLOTS = [15, 30, 60];
|
|
19
|
+
const listOf = (page) => page.layout;
|
|
20
|
+
const focused = (node) => node.ownerDocument.activeElement === node;
|
|
21
|
+
function calendarSection(el, designer) {
|
|
22
|
+
const w = designer.words.list.calendar;
|
|
23
|
+
const prop = (text, control) => el('label', { class: 'fd-prop' }, el('span', { class: 'fd-prop-name' }, text), control);
|
|
24
|
+
const select = (label) => el('select', { class: 'fd-input fd-select', 'aria-label': label });
|
|
25
|
+
const on = el('input', { type: 'checkbox' });
|
|
26
|
+
const onRow = el('label', { class: 'fd-q-required' }, on, el('span', {}, w.on));
|
|
27
|
+
const noDate = el('p', { class: 'fd-properties-hint', 'data-why': 'no-date' }, w.noDate);
|
|
28
|
+
const start = select(w.start);
|
|
29
|
+
const end = select(w.end);
|
|
30
|
+
const words = select(w.words);
|
|
31
|
+
const colour = select(w.colour);
|
|
32
|
+
const resource = select(w.resource);
|
|
33
|
+
const viewTicks = VIEWS.map((view) => ({ view, box: el('input', { type: 'checkbox' }) }));
|
|
34
|
+
const views = el('div', { class: 'fd-map-tools', role: 'group', 'aria-label': w.views }, ...viewTicks.map(({ view, box }) => el('label', { class: 'fd-q-required' }, box, el('span', {}, w.viewNames[view]))));
|
|
35
|
+
const oneView = el('p', { class: 'fd-properties-hint', role: 'status', 'data-why': 'views', hidden: '' }, w.oneView);
|
|
36
|
+
const first = select(w.first);
|
|
37
|
+
const opens = select(w.opens);
|
|
38
|
+
opens.append(...['list', 'calendar'].map((value) => el('option', { value }, w.opensChoices[value])));
|
|
39
|
+
const firstDay = select(w.firstDay);
|
|
40
|
+
firstDay.append(el('option', { value: '' }, w.languageDay), ...w.days.map((day, i) => el('option', { value: String(i) }, day)));
|
|
41
|
+
const from = el('input', { class: 'fd-input', type: 'number', min: '0', max: '23', placeholder: '8', 'aria-label': w.from });
|
|
42
|
+
const to = el('input', { class: 'fd-input', type: 'number', min: '1', max: '24', placeholder: '20', 'aria-label': w.to });
|
|
43
|
+
const slot = select(w.slot);
|
|
44
|
+
slot.append(...SLOTS.map((minutes) => el('option', { value: String(minutes) }, w.slots[minutes])));
|
|
45
|
+
const details = el('div', { class: 'fd-props' }, prop(w.start, start), prop(w.end, end), prop(w.words, words), prop(w.colour, colour), prop(w.resource, resource), el('div', { class: 'fd-prop' }, el('span', { class: 'fd-prop-name' }, w.views), views, oneView), prop(w.first, first), prop(w.opens, opens), prop(w.firstDay, firstDay), prop(w.from, from), prop(w.to, to), prop(w.slot, slot), el('p', { class: 'fd-properties-hint' }, w.note));
|
|
46
|
+
const element = el('div', { class: 'fd-prop', 'data-part': 'calendar' }, el('span', { class: 'fd-prop-name' }, w.title), onRow, noDate, details);
|
|
47
|
+
/** The page's fields first, then the model's not on it yet, of the kinds asked. */
|
|
48
|
+
const fieldsOf = (page, kinds) => [...Object.entries(page.fields).map(([name, field]) => ({ name, field })), ...designer.modelFields()].filter(({ field }) => kinds.has(field.type));
|
|
49
|
+
const fill = (box, choices, none) => box.replaceChildren(...(none === undefined ? [] : [el('option', { value: '' }, none)]), ...choices.map(({ name, field }) => el('option', { value: name }, field.label)));
|
|
50
|
+
const current = () => listOf(designer.getPage()).calendar;
|
|
51
|
+
/** The calendar with a change, its empty parts left out. */
|
|
52
|
+
const change = (edit) => {
|
|
53
|
+
const calendar = JSON.parse(JSON.stringify(current() ?? {}));
|
|
54
|
+
edit(calendar);
|
|
55
|
+
for (const key of Object.keys(calendar))
|
|
56
|
+
if (calendar[key] === '' || calendar[key] === undefined)
|
|
57
|
+
delete calendar[key];
|
|
58
|
+
return designer.setListOptions({ calendar });
|
|
59
|
+
};
|
|
60
|
+
/** A new calendar: the first date and time (or date), an end of its kind named so or the next of it, and the list's first words. */
|
|
61
|
+
function firstCalendar(page) {
|
|
62
|
+
const times = fieldsOf(page, TIMES);
|
|
63
|
+
const begin = times.find(({ field }) => field.type === 'datetime') ?? times[0];
|
|
64
|
+
if (!begin)
|
|
65
|
+
return null;
|
|
66
|
+
const sameKind = times.filter(({ name, field }) => name !== begin.name && field.type === begin.field.type);
|
|
67
|
+
const until = sameKind.find(({ name, field }) => /end|stop|until|to$|finish/i.test(`${name} ${field.label}`)) ?? sameKind[0];
|
|
68
|
+
const list = listOf(page);
|
|
69
|
+
const title = list.columns.find((name) => page.fields[name]?.type === 'char') ?? list.columns[0];
|
|
70
|
+
return { start: begin.name, ...(until ? { end: until.name } : {}), title };
|
|
71
|
+
}
|
|
72
|
+
on.addEventListener('change', () => {
|
|
73
|
+
const made = firstCalendar(designer.getPage());
|
|
74
|
+
designer.setListOptions({ calendar: on.checked && made ? made : null });
|
|
75
|
+
});
|
|
76
|
+
start.addEventListener('change', () => change((calendar) => {
|
|
77
|
+
calendar.start = start.value;
|
|
78
|
+
// An end of another kind goes with the old start.
|
|
79
|
+
const kind = designer.getPage().fields[start.value]?.type ?? designer.modelFields().find((f) => f.name === start.value)?.field.type;
|
|
80
|
+
const endKind = calendar.end ? (designer.getPage().fields[calendar.end]?.type ?? designer.modelFields().find((f) => f.name === calendar.end)?.field.type) : kind;
|
|
81
|
+
if (endKind !== kind)
|
|
82
|
+
delete calendar.end;
|
|
83
|
+
}));
|
|
84
|
+
end.addEventListener('change', () => change((calendar) => (calendar.end = end.value || undefined)));
|
|
85
|
+
words.addEventListener('change', () => change((calendar) => (calendar.title = words.value)));
|
|
86
|
+
colour.addEventListener('change', () => change((calendar) => (calendar.colour = colour.value || undefined)));
|
|
87
|
+
resource.addEventListener('change', () => change((calendar) => (calendar.resource = resource.value || undefined)));
|
|
88
|
+
for (const { box } of viewTicks)
|
|
89
|
+
box.addEventListener('change', () => {
|
|
90
|
+
const picked = viewTicks.filter((t) => t.box.checked).map((t) => t.view);
|
|
91
|
+
// One at least: the last one stays ticked, and says why.
|
|
92
|
+
oneView.hidden = picked.length > 0;
|
|
93
|
+
if (!picked.length)
|
|
94
|
+
return void (box.checked = true);
|
|
95
|
+
change((calendar) => {
|
|
96
|
+
calendar.views = picked.length === VIEWS.length ? undefined : picked;
|
|
97
|
+
if (calendar.view && !picked.includes(calendar.view))
|
|
98
|
+
delete calendar.view;
|
|
99
|
+
});
|
|
100
|
+
});
|
|
101
|
+
first.addEventListener('change', () => change((calendar) => {
|
|
102
|
+
const offered = calendar.views ?? VIEWS;
|
|
103
|
+
calendar.view = first.value === offered[0] ? undefined : first.value;
|
|
104
|
+
}));
|
|
105
|
+
opens.addEventListener('change', () => change((calendar) => (calendar.opens = opens.value === 'calendar' ? 'calendar' : undefined)));
|
|
106
|
+
firstDay.addEventListener('change', () => change((calendar) => (calendar.firstDay = firstDay.value === '' ? undefined : Number(firstDay.value))));
|
|
107
|
+
const hours = () => change((calendar) => {
|
|
108
|
+
const [a, b] = [from.value.trim(), to.value.trim()];
|
|
109
|
+
// Both, or neither: the page's own 8 to 20.
|
|
110
|
+
if (!a && !b)
|
|
111
|
+
return void delete calendar.hours;
|
|
112
|
+
calendar.hours = { start: Math.round(Number(a || 8)), end: Math.round(Number(b || 20)) };
|
|
113
|
+
});
|
|
114
|
+
from.addEventListener('change', hours);
|
|
115
|
+
to.addEventListener('change', hours);
|
|
116
|
+
slot.addEventListener('change', () => change((calendar) => (calendar.slot = slot.value === '30' ? undefined : Number(slot.value))));
|
|
117
|
+
return {
|
|
118
|
+
element,
|
|
119
|
+
update(page) {
|
|
120
|
+
const calendar = listOf(page).calendar;
|
|
121
|
+
const canHave = fieldsOf(page, TIMES).length > 0;
|
|
122
|
+
on.checked = !!calendar;
|
|
123
|
+
onRow.hidden = !calendar && !canHave;
|
|
124
|
+
noDate.hidden = !!calendar || canHave;
|
|
125
|
+
details.hidden = !calendar;
|
|
126
|
+
if (!calendar)
|
|
127
|
+
return;
|
|
128
|
+
const kindOf = (name) => (name ? (page.fields[name]?.type ?? designer.modelFields().find((f) => f.name === name)?.field.type) : undefined);
|
|
129
|
+
const startKind = kindOf(calendar.start);
|
|
130
|
+
fill(start, fieldsOf(page, TIMES));
|
|
131
|
+
start.value = calendar.start;
|
|
132
|
+
fill(end, fieldsOf(page, TIMES).filter(({ field }) => field.type === startKind), w.noEnd);
|
|
133
|
+
end.value = calendar.end ?? '';
|
|
134
|
+
fill(words, fieldsOf(page, SAYABLE));
|
|
135
|
+
words.value = calendar.title;
|
|
136
|
+
fill(colour, fieldsOf(page, COLOURS), w.nothing);
|
|
137
|
+
colour.value = calendar.colour ?? '';
|
|
138
|
+
fill(resource, fieldsOf(page, COLUMNS), w.nothing);
|
|
139
|
+
resource.value = calendar.resource ?? '';
|
|
140
|
+
const offered = calendar.views ?? VIEWS;
|
|
141
|
+
for (const { view, box } of viewTicks)
|
|
142
|
+
box.checked = offered.includes(view);
|
|
143
|
+
first.replaceChildren(...offered.map((view) => el('option', { value: view }, w.viewNames[view])));
|
|
144
|
+
first.value = calendar.view ?? offered[0];
|
|
145
|
+
opens.value = calendar.opens ?? 'list';
|
|
146
|
+
firstDay.value = calendar.firstDay === undefined ? '' : String(calendar.firstDay);
|
|
147
|
+
if (!focused(from))
|
|
148
|
+
from.value = calendar.hours ? String(calendar.hours.start) : '';
|
|
149
|
+
if (!focused(to))
|
|
150
|
+
to.value = calendar.hours ? String(calendar.hours.end) : '';
|
|
151
|
+
slot.value = String(calendar.slot ?? 30);
|
|
152
|
+
},
|
|
153
|
+
};
|
|
154
|
+
}
|
|
155
|
+
//# sourceMappingURL=list-calendar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-calendar.js","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/list-calendar.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A list's calendar in its panel, as its map is: whether there is one, when
|
|
3
|
+
* each record starts and ends, its words, its colour, a column for each
|
|
4
|
+
* person or room, the views offered and the one shown first, how the list
|
|
5
|
+
* opens, the week's first day, the hours and a slot's minutes.
|
|
6
|
+
*/
|
|
7
|
+
const TIMES = new Set(['date', 'datetime']);
|
|
8
|
+
/** Fields a record's words can come from. */
|
|
9
|
+
const SAYABLE = new Set(['char', 'text', 'selection', 'many2one', 'integer', 'float', 'monetary', 'date', 'datetime']);
|
|
10
|
+
/** Fields a colour can come from: values that repeat. */
|
|
11
|
+
const COLOURS = new Set(['many2one', 'selection', 'char', 'integer', 'boolean']);
|
|
12
|
+
/** Fields a column for each can come from. */
|
|
13
|
+
const COLUMNS = new Set(['many2one', 'selection', 'char', 'integer']);
|
|
14
|
+
const VIEWS = ['day', 'week', 'month', 'agenda'];
|
|
15
|
+
const SLOTS = [15, 30, 60];
|
|
16
|
+
const listOf = (page) => page.layout;
|
|
17
|
+
const focused = (node) => node.ownerDocument.activeElement === node;
|
|
18
|
+
export function calendarSection(el, designer) {
|
|
19
|
+
const w = designer.words.list.calendar;
|
|
20
|
+
const prop = (text, control) => el('label', { class: 'fd-prop' }, el('span', { class: 'fd-prop-name' }, text), control);
|
|
21
|
+
const select = (label) => el('select', { class: 'fd-input fd-select', 'aria-label': label });
|
|
22
|
+
const on = el('input', { type: 'checkbox' });
|
|
23
|
+
const onRow = el('label', { class: 'fd-q-required' }, on, el('span', {}, w.on));
|
|
24
|
+
const noDate = el('p', { class: 'fd-properties-hint', 'data-why': 'no-date' }, w.noDate);
|
|
25
|
+
const start = select(w.start);
|
|
26
|
+
const end = select(w.end);
|
|
27
|
+
const words = select(w.words);
|
|
28
|
+
const colour = select(w.colour);
|
|
29
|
+
const resource = select(w.resource);
|
|
30
|
+
const viewTicks = VIEWS.map((view) => ({ view, box: el('input', { type: 'checkbox' }) }));
|
|
31
|
+
const views = el('div', { class: 'fd-map-tools', role: 'group', 'aria-label': w.views }, ...viewTicks.map(({ view, box }) => el('label', { class: 'fd-q-required' }, box, el('span', {}, w.viewNames[view]))));
|
|
32
|
+
const oneView = el('p', { class: 'fd-properties-hint', role: 'status', 'data-why': 'views', hidden: '' }, w.oneView);
|
|
33
|
+
const first = select(w.first);
|
|
34
|
+
const opens = select(w.opens);
|
|
35
|
+
opens.append(...['list', 'calendar'].map((value) => el('option', { value }, w.opensChoices[value])));
|
|
36
|
+
const firstDay = select(w.firstDay);
|
|
37
|
+
firstDay.append(el('option', { value: '' }, w.languageDay), ...w.days.map((day, i) => el('option', { value: String(i) }, day)));
|
|
38
|
+
const from = el('input', { class: 'fd-input', type: 'number', min: '0', max: '23', placeholder: '8', 'aria-label': w.from });
|
|
39
|
+
const to = el('input', { class: 'fd-input', type: 'number', min: '1', max: '24', placeholder: '20', 'aria-label': w.to });
|
|
40
|
+
const slot = select(w.slot);
|
|
41
|
+
slot.append(...SLOTS.map((minutes) => el('option', { value: String(minutes) }, w.slots[minutes])));
|
|
42
|
+
const details = el('div', { class: 'fd-props' }, prop(w.start, start), prop(w.end, end), prop(w.words, words), prop(w.colour, colour), prop(w.resource, resource), el('div', { class: 'fd-prop' }, el('span', { class: 'fd-prop-name' }, w.views), views, oneView), prop(w.first, first), prop(w.opens, opens), prop(w.firstDay, firstDay), prop(w.from, from), prop(w.to, to), prop(w.slot, slot), el('p', { class: 'fd-properties-hint' }, w.note));
|
|
43
|
+
const element = el('div', { class: 'fd-prop', 'data-part': 'calendar' }, el('span', { class: 'fd-prop-name' }, w.title), onRow, noDate, details);
|
|
44
|
+
/** The page's fields first, then the model's not on it yet, of the kinds asked. */
|
|
45
|
+
const fieldsOf = (page, kinds) => [...Object.entries(page.fields).map(([name, field]) => ({ name, field })), ...designer.modelFields()].filter(({ field }) => kinds.has(field.type));
|
|
46
|
+
const fill = (box, choices, none) => box.replaceChildren(...(none === undefined ? [] : [el('option', { value: '' }, none)]), ...choices.map(({ name, field }) => el('option', { value: name }, field.label)));
|
|
47
|
+
const current = () => listOf(designer.getPage()).calendar;
|
|
48
|
+
/** The calendar with a change, its empty parts left out. */
|
|
49
|
+
const change = (edit) => {
|
|
50
|
+
const calendar = JSON.parse(JSON.stringify(current() ?? {}));
|
|
51
|
+
edit(calendar);
|
|
52
|
+
for (const key of Object.keys(calendar))
|
|
53
|
+
if (calendar[key] === '' || calendar[key] === undefined)
|
|
54
|
+
delete calendar[key];
|
|
55
|
+
return designer.setListOptions({ calendar });
|
|
56
|
+
};
|
|
57
|
+
/** A new calendar: the first date and time (or date), an end of its kind named so or the next of it, and the list's first words. */
|
|
58
|
+
function firstCalendar(page) {
|
|
59
|
+
const times = fieldsOf(page, TIMES);
|
|
60
|
+
const begin = times.find(({ field }) => field.type === 'datetime') ?? times[0];
|
|
61
|
+
if (!begin)
|
|
62
|
+
return null;
|
|
63
|
+
const sameKind = times.filter(({ name, field }) => name !== begin.name && field.type === begin.field.type);
|
|
64
|
+
const until = sameKind.find(({ name, field }) => /end|stop|until|to$|finish/i.test(`${name} ${field.label}`)) ?? sameKind[0];
|
|
65
|
+
const list = listOf(page);
|
|
66
|
+
const title = list.columns.find((name) => page.fields[name]?.type === 'char') ?? list.columns[0];
|
|
67
|
+
return { start: begin.name, ...(until ? { end: until.name } : {}), title };
|
|
68
|
+
}
|
|
69
|
+
on.addEventListener('change', () => {
|
|
70
|
+
const made = firstCalendar(designer.getPage());
|
|
71
|
+
designer.setListOptions({ calendar: on.checked && made ? made : null });
|
|
72
|
+
});
|
|
73
|
+
start.addEventListener('change', () => change((calendar) => {
|
|
74
|
+
calendar.start = start.value;
|
|
75
|
+
// An end of another kind goes with the old start.
|
|
76
|
+
const kind = designer.getPage().fields[start.value]?.type ?? designer.modelFields().find((f) => f.name === start.value)?.field.type;
|
|
77
|
+
const endKind = calendar.end ? (designer.getPage().fields[calendar.end]?.type ?? designer.modelFields().find((f) => f.name === calendar.end)?.field.type) : kind;
|
|
78
|
+
if (endKind !== kind)
|
|
79
|
+
delete calendar.end;
|
|
80
|
+
}));
|
|
81
|
+
end.addEventListener('change', () => change((calendar) => (calendar.end = end.value || undefined)));
|
|
82
|
+
words.addEventListener('change', () => change((calendar) => (calendar.title = words.value)));
|
|
83
|
+
colour.addEventListener('change', () => change((calendar) => (calendar.colour = colour.value || undefined)));
|
|
84
|
+
resource.addEventListener('change', () => change((calendar) => (calendar.resource = resource.value || undefined)));
|
|
85
|
+
for (const { box } of viewTicks)
|
|
86
|
+
box.addEventListener('change', () => {
|
|
87
|
+
const picked = viewTicks.filter((t) => t.box.checked).map((t) => t.view);
|
|
88
|
+
// One at least: the last one stays ticked, and says why.
|
|
89
|
+
oneView.hidden = picked.length > 0;
|
|
90
|
+
if (!picked.length)
|
|
91
|
+
return void (box.checked = true);
|
|
92
|
+
change((calendar) => {
|
|
93
|
+
calendar.views = picked.length === VIEWS.length ? undefined : picked;
|
|
94
|
+
if (calendar.view && !picked.includes(calendar.view))
|
|
95
|
+
delete calendar.view;
|
|
96
|
+
});
|
|
97
|
+
});
|
|
98
|
+
first.addEventListener('change', () => change((calendar) => {
|
|
99
|
+
const offered = calendar.views ?? VIEWS;
|
|
100
|
+
calendar.view = first.value === offered[0] ? undefined : first.value;
|
|
101
|
+
}));
|
|
102
|
+
opens.addEventListener('change', () => change((calendar) => (calendar.opens = opens.value === 'calendar' ? 'calendar' : undefined)));
|
|
103
|
+
firstDay.addEventListener('change', () => change((calendar) => (calendar.firstDay = firstDay.value === '' ? undefined : Number(firstDay.value))));
|
|
104
|
+
const hours = () => change((calendar) => {
|
|
105
|
+
const [a, b] = [from.value.trim(), to.value.trim()];
|
|
106
|
+
// Both, or neither: the page's own 8 to 20.
|
|
107
|
+
if (!a && !b)
|
|
108
|
+
return void delete calendar.hours;
|
|
109
|
+
calendar.hours = { start: Math.round(Number(a || 8)), end: Math.round(Number(b || 20)) };
|
|
110
|
+
});
|
|
111
|
+
from.addEventListener('change', hours);
|
|
112
|
+
to.addEventListener('change', hours);
|
|
113
|
+
slot.addEventListener('change', () => change((calendar) => (calendar.slot = slot.value === '30' ? undefined : Number(slot.value))));
|
|
114
|
+
return {
|
|
115
|
+
element,
|
|
116
|
+
update(page) {
|
|
117
|
+
const calendar = listOf(page).calendar;
|
|
118
|
+
const canHave = fieldsOf(page, TIMES).length > 0;
|
|
119
|
+
on.checked = !!calendar;
|
|
120
|
+
onRow.hidden = !calendar && !canHave;
|
|
121
|
+
noDate.hidden = !!calendar || canHave;
|
|
122
|
+
details.hidden = !calendar;
|
|
123
|
+
if (!calendar)
|
|
124
|
+
return;
|
|
125
|
+
const kindOf = (name) => (name ? (page.fields[name]?.type ?? designer.modelFields().find((f) => f.name === name)?.field.type) : undefined);
|
|
126
|
+
const startKind = kindOf(calendar.start);
|
|
127
|
+
fill(start, fieldsOf(page, TIMES));
|
|
128
|
+
start.value = calendar.start;
|
|
129
|
+
fill(end, fieldsOf(page, TIMES).filter(({ field }) => field.type === startKind), w.noEnd);
|
|
130
|
+
end.value = calendar.end ?? '';
|
|
131
|
+
fill(words, fieldsOf(page, SAYABLE));
|
|
132
|
+
words.value = calendar.title;
|
|
133
|
+
fill(colour, fieldsOf(page, COLOURS), w.nothing);
|
|
134
|
+
colour.value = calendar.colour ?? '';
|
|
135
|
+
fill(resource, fieldsOf(page, COLUMNS), w.nothing);
|
|
136
|
+
resource.value = calendar.resource ?? '';
|
|
137
|
+
const offered = calendar.views ?? VIEWS;
|
|
138
|
+
for (const { view, box } of viewTicks)
|
|
139
|
+
box.checked = offered.includes(view);
|
|
140
|
+
first.replaceChildren(...offered.map((view) => el('option', { value: view }, w.viewNames[view])));
|
|
141
|
+
first.value = calendar.view ?? offered[0];
|
|
142
|
+
opens.value = calendar.opens ?? 'list';
|
|
143
|
+
firstDay.value = calendar.firstDay === undefined ? '' : String(calendar.firstDay);
|
|
144
|
+
if (!focused(from))
|
|
145
|
+
from.value = calendar.hours ? String(calendar.hours.start) : '';
|
|
146
|
+
if (!focused(to))
|
|
147
|
+
to.value = calendar.hours ? String(calendar.hours.end) : '';
|
|
148
|
+
slot.value = String(calendar.slot ?? 30);
|
|
149
|
+
},
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=list-calendar.mjs.map
|