@fieldia/designer 0.24.0 → 0.25.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.
Files changed (261) hide show
  1. package/package.json +4 -4
  2. package/src/lib/canvas-blocks.d.mts +4 -3
  3. package/src/lib/canvas-blocks.d.ts +4 -3
  4. package/src/lib/canvas-blocks.js +27 -1
  5. package/src/lib/canvas-blocks.js.map +1 -1
  6. package/src/lib/canvas-blocks.mjs +27 -1
  7. package/src/lib/canvas-blocks.mjs.map +1 -1
  8. package/src/lib/canvas-header.js +3 -3
  9. package/src/lib/canvas-header.js.map +1 -1
  10. package/src/lib/canvas-header.mjs +4 -4
  11. package/src/lib/canvas-header.mjs.map +1 -1
  12. package/src/lib/designer.d.mts +39 -2
  13. package/src/lib/designer.d.ts +39 -2
  14. package/src/lib/designer.js +145 -0
  15. package/src/lib/designer.js.map +1 -1
  16. package/src/lib/designer.mjs +148 -3
  17. package/src/lib/designer.mjs.map +1 -1
  18. package/src/lib/header-commands.d.mts +7 -2
  19. package/src/lib/header-commands.d.ts +7 -2
  20. package/src/lib/header-commands.js +11 -5
  21. package/src/lib/header-commands.js.map +1 -1
  22. package/src/lib/header-commands.mjs +9 -4
  23. package/src/lib/header-commands.mjs.map +1 -1
  24. package/src/lib/header-properties.js +3 -3
  25. package/src/lib/header-properties.js.map +1 -1
  26. package/src/lib/header-properties.mjs +4 -4
  27. package/src/lib/header-properties.mjs.map +1 -1
  28. package/src/lib/layout-changes.js +5 -0
  29. package/src/lib/layout-changes.js.map +1 -1
  30. package/src/lib/layout-changes.mjs +5 -0
  31. package/src/lib/layout-changes.mjs.map +1 -1
  32. package/src/lib/layout-ops.d.mts +3 -3
  33. package/src/lib/layout-ops.d.ts +3 -3
  34. package/src/lib/layout-ops.js +16 -5
  35. package/src/lib/layout-ops.js.map +1 -1
  36. package/src/lib/layout-ops.mjs +16 -5
  37. package/src/lib/layout-ops.mjs.map +1 -1
  38. package/src/lib/layout-tree.js +3 -1
  39. package/src/lib/layout-tree.js.map +1 -1
  40. package/src/lib/layout-tree.mjs +3 -1
  41. package/src/lib/layout-tree.mjs.map +1 -1
  42. package/src/lib/list-cards-settings.d.mts +30 -0
  43. package/src/lib/list-cards-settings.d.ts +30 -0
  44. package/src/lib/list-cards-settings.js +136 -0
  45. package/src/lib/list-cards-settings.js.map +1 -0
  46. package/src/lib/list-cards-settings.mjs +132 -0
  47. package/src/lib/list-cards-settings.mjs.map +1 -0
  48. package/src/lib/list-commands.d.mts +36 -2
  49. package/src/lib/list-commands.d.ts +36 -2
  50. package/src/lib/list-commands.js +124 -0
  51. package/src/lib/list-commands.js.map +1 -1
  52. package/src/lib/list-commands.mjs +125 -2
  53. package/src/lib/list-commands.mjs.map +1 -1
  54. package/src/lib/list-properties.js +76 -9
  55. package/src/lib/list-properties.js.map +1 -1
  56. package/src/lib/list-properties.mjs +76 -9
  57. package/src/lib/list-properties.mjs.map +1 -1
  58. package/src/lib/list-rows-settings.d.mts +30 -0
  59. package/src/lib/list-rows-settings.d.ts +30 -0
  60. package/src/lib/list-rows-settings.js +136 -0
  61. package/src/lib/list-rows-settings.js.map +1 -0
  62. package/src/lib/list-rows-settings.mjs +132 -0
  63. package/src/lib/list-rows-settings.mjs.map +1 -0
  64. package/src/lib/locales/ar/bar.js +1 -0
  65. package/src/lib/locales/ar/bar.js.map +1 -1
  66. package/src/lib/locales/ar/bar.mjs +1 -0
  67. package/src/lib/locales/ar/bar.mjs.map +1 -1
  68. package/src/lib/locales/ar/canvas.js +1 -1
  69. package/src/lib/locales/ar/canvas.js.map +1 -1
  70. package/src/lib/locales/ar/canvas.mjs +1 -1
  71. package/src/lib/locales/ar/canvas.mjs.map +1 -1
  72. package/src/lib/locales/ar/changes.js +3 -0
  73. package/src/lib/locales/ar/changes.js.map +1 -1
  74. package/src/lib/locales/ar/changes.mjs +3 -0
  75. package/src/lib/locales/ar/changes.mjs.map +1 -1
  76. package/src/lib/locales/ar/index.js +2 -1
  77. package/src/lib/locales/ar/index.js.map +1 -1
  78. package/src/lib/locales/ar/index.mjs +2 -1
  79. package/src/lib/locales/ar/index.mjs.map +1 -1
  80. package/src/lib/locales/ar/list.js +41 -1
  81. package/src/lib/locales/ar/list.js.map +1 -1
  82. package/src/lib/locales/ar/list.mjs +41 -1
  83. package/src/lib/locales/ar/list.mjs.map +1 -1
  84. package/src/lib/locales/ar/outline.js +1 -0
  85. package/src/lib/locales/ar/outline.js.map +1 -1
  86. package/src/lib/locales/ar/outline.mjs +1 -0
  87. package/src/lib/locales/ar/outline.mjs.map +1 -1
  88. package/src/lib/locales/ar/panel.js +29 -2
  89. package/src/lib/locales/ar/panel.js.map +1 -1
  90. package/src/lib/locales/ar/panel.mjs +29 -2
  91. package/src/lib/locales/ar/panel.mjs.map +1 -1
  92. package/src/lib/locales/ar/parts.js +1 -0
  93. package/src/lib/locales/ar/parts.js.map +1 -1
  94. package/src/lib/locales/ar/parts.mjs +1 -0
  95. package/src/lib/locales/ar/parts.mjs.map +1 -1
  96. package/src/lib/locales/ar/refusals.js +4 -0
  97. package/src/lib/locales/ar/refusals.js.map +1 -1
  98. package/src/lib/locales/ar/refusals.mjs +4 -0
  99. package/src/lib/locales/ar/refusals.mjs.map +1 -1
  100. package/src/lib/locales/ar/related-part.d.mts +2 -0
  101. package/src/lib/locales/ar/related-part.d.ts +2 -0
  102. package/src/lib/locales/ar/related-part.js +41 -0
  103. package/src/lib/locales/ar/related-part.js.map +1 -0
  104. package/src/lib/locales/ar/related-part.mjs +38 -0
  105. package/src/lib/locales/ar/related-part.mjs.map +1 -0
  106. package/src/lib/locales/ar/steps.js +3 -0
  107. package/src/lib/locales/ar/steps.js.map +1 -1
  108. package/src/lib/locales/ar/steps.mjs +3 -0
  109. package/src/lib/locales/ar/steps.mjs.map +1 -1
  110. package/src/lib/locales/en/bar.d.mts +2 -0
  111. package/src/lib/locales/en/bar.d.ts +2 -0
  112. package/src/lib/locales/en/bar.js +2 -0
  113. package/src/lib/locales/en/bar.js.map +1 -1
  114. package/src/lib/locales/en/bar.mjs +2 -0
  115. package/src/lib/locales/en/bar.mjs.map +1 -1
  116. package/src/lib/locales/en/canvas.d.mts +1 -0
  117. package/src/lib/locales/en/canvas.d.ts +1 -0
  118. package/src/lib/locales/en/canvas.js +1 -1
  119. package/src/lib/locales/en/canvas.js.map +1 -1
  120. package/src/lib/locales/en/canvas.mjs +1 -1
  121. package/src/lib/locales/en/canvas.mjs.map +1 -1
  122. package/src/lib/locales/en/changes.d.mts +3 -0
  123. package/src/lib/locales/en/changes.d.ts +3 -0
  124. package/src/lib/locales/en/changes.js +3 -0
  125. package/src/lib/locales/en/changes.js.map +1 -1
  126. package/src/lib/locales/en/changes.mjs +3 -0
  127. package/src/lib/locales/en/changes.mjs.map +1 -1
  128. package/src/lib/locales/en/index.d.mts +128 -0
  129. package/src/lib/locales/en/index.d.ts +128 -0
  130. package/src/lib/locales/en/index.js +2 -1
  131. package/src/lib/locales/en/index.js.map +1 -1
  132. package/src/lib/locales/en/index.mjs +2 -1
  133. package/src/lib/locales/en/index.mjs.map +1 -1
  134. package/src/lib/locales/en/list.d.mts +45 -0
  135. package/src/lib/locales/en/list.d.ts +45 -0
  136. package/src/lib/locales/en/list.js +43 -1
  137. package/src/lib/locales/en/list.js.map +1 -1
  138. package/src/lib/locales/en/list.mjs +43 -1
  139. package/src/lib/locales/en/list.mjs.map +1 -1
  140. package/src/lib/locales/en/outline.d.mts +1 -0
  141. package/src/lib/locales/en/outline.d.ts +1 -0
  142. package/src/lib/locales/en/outline.js +1 -0
  143. package/src/lib/locales/en/outline.js.map +1 -1
  144. package/src/lib/locales/en/outline.mjs +1 -0
  145. package/src/lib/locales/en/outline.mjs.map +1 -1
  146. package/src/lib/locales/en/panel.d.mts +17 -0
  147. package/src/lib/locales/en/panel.d.ts +17 -0
  148. package/src/lib/locales/en/panel.js +17 -2
  149. package/src/lib/locales/en/panel.js.map +1 -1
  150. package/src/lib/locales/en/panel.mjs +17 -2
  151. package/src/lib/locales/en/panel.mjs.map +1 -1
  152. package/src/lib/locales/en/parts.d.mts +1 -0
  153. package/src/lib/locales/en/parts.d.ts +1 -0
  154. package/src/lib/locales/en/parts.js +1 -0
  155. package/src/lib/locales/en/parts.js.map +1 -1
  156. package/src/lib/locales/en/parts.mjs +1 -0
  157. package/src/lib/locales/en/parts.mjs.map +1 -1
  158. package/src/lib/locales/en/refusals.d.mts +4 -0
  159. package/src/lib/locales/en/refusals.d.ts +4 -0
  160. package/src/lib/locales/en/refusals.js +4 -0
  161. package/src/lib/locales/en/refusals.js.map +1 -1
  162. package/src/lib/locales/en/refusals.mjs +4 -0
  163. package/src/lib/locales/en/refusals.mjs.map +1 -1
  164. package/src/lib/locales/en/related-part.d.mts +57 -0
  165. package/src/lib/locales/en/related-part.d.ts +57 -0
  166. package/src/lib/locales/en/related-part.js +46 -0
  167. package/src/lib/locales/en/related-part.js.map +1 -0
  168. package/src/lib/locales/en/related-part.mjs +43 -0
  169. package/src/lib/locales/en/related-part.mjs.map +1 -0
  170. package/src/lib/locales/en/steps.d.mts +3 -0
  171. package/src/lib/locales/en/steps.d.ts +3 -0
  172. package/src/lib/locales/en/steps.js +3 -0
  173. package/src/lib/locales/en/steps.js.map +1 -1
  174. package/src/lib/locales/en/steps.mjs +3 -0
  175. package/src/lib/locales/en/steps.mjs.map +1 -1
  176. package/src/lib/outline-rows.js +1 -0
  177. package/src/lib/outline-rows.js.map +1 -1
  178. package/src/lib/outline-rows.mjs +1 -0
  179. package/src/lib/outline-rows.mjs.map +1 -1
  180. package/src/lib/page-checks.d.mts +5 -0
  181. package/src/lib/page-checks.d.ts +5 -0
  182. package/src/lib/page-checks.js +5 -1
  183. package/src/lib/page-checks.js.map +1 -1
  184. package/src/lib/page-checks.mjs +5 -1
  185. package/src/lib/page-checks.mjs.map +1 -1
  186. package/src/lib/page-tree.d.mts +3 -1
  187. package/src/lib/page-tree.d.ts +3 -1
  188. package/src/lib/page-tree.js +31 -2
  189. package/src/lib/page-tree.js.map +1 -1
  190. package/src/lib/page-tree.mjs +30 -2
  191. package/src/lib/page-tree.mjs.map +1 -1
  192. package/src/lib/panel-block.js +4 -0
  193. package/src/lib/panel-block.js.map +1 -1
  194. package/src/lib/panel-block.mjs +4 -0
  195. package/src/lib/panel-block.mjs.map +1 -1
  196. package/src/lib/panel-page.js +47 -1
  197. package/src/lib/panel-page.js.map +1 -1
  198. package/src/lib/panel-page.mjs +47 -1
  199. package/src/lib/panel-page.mjs.map +1 -1
  200. package/src/lib/panel-related.d.mts +4 -0
  201. package/src/lib/panel-related.d.ts +4 -0
  202. package/src/lib/panel-related.js +198 -0
  203. package/src/lib/panel-related.js.map +1 -0
  204. package/src/lib/panel-related.mjs +195 -0
  205. package/src/lib/panel-related.mjs.map +1 -0
  206. package/src/lib/panel-screen.js +1 -0
  207. package/src/lib/panel-screen.js.map +1 -1
  208. package/src/lib/panel-screen.mjs +1 -0
  209. package/src/lib/panel-screen.mjs.map +1 -1
  210. package/src/lib/publish-ui.js +6 -3
  211. package/src/lib/publish-ui.js.map +1 -1
  212. package/src/lib/publish-ui.mjs +6 -3
  213. package/src/lib/publish-ui.mjs.map +1 -1
  214. package/src/lib/screen-editor.js +3 -0
  215. package/src/lib/screen-editor.js.map +1 -1
  216. package/src/lib/screen-editor.mjs +3 -0
  217. package/src/lib/screen-editor.mjs.map +1 -1
  218. package/src/lib/steps-checks.js +6 -2
  219. package/src/lib/steps-checks.js.map +1 -1
  220. package/src/lib/steps-checks.mjs +6 -2
  221. package/src/lib/steps-checks.mjs.map +1 -1
  222. package/src/lib/steps-editor.js +1 -1
  223. package/src/lib/steps-editor.js.map +1 -1
  224. package/src/lib/steps-editor.mjs +1 -1
  225. package/src/lib/steps-editor.mjs.map +1 -1
  226. package/src/lib/steps-settings.js +3 -0
  227. package/src/lib/steps-settings.js.map +1 -1
  228. package/src/lib/steps-settings.mjs +3 -0
  229. package/src/lib/steps-settings.mjs.map +1 -1
  230. package/src/lib/steps-words.js +5 -1
  231. package/src/lib/steps-words.js.map +1 -1
  232. package/src/lib/steps-words.mjs +5 -1
  233. package/src/lib/steps-words.mjs.map +1 -1
  234. package/src/lib/styles-json.d.mts +1 -1
  235. package/src/lib/styles-json.d.ts +1 -1
  236. package/src/lib/styles-json.js +3 -0
  237. package/src/lib/styles-json.js.map +1 -1
  238. package/src/lib/styles-json.mjs +3 -0
  239. package/src/lib/styles-json.mjs.map +1 -1
  240. package/src/lib/styles-kinds.d.mts +1 -1
  241. package/src/lib/styles-kinds.d.ts +1 -1
  242. package/src/lib/styles-kinds.js +12 -0
  243. package/src/lib/styles-kinds.js.map +1 -1
  244. package/src/lib/styles-kinds.mjs +12 -0
  245. package/src/lib/styles-kinds.mjs.map +1 -1
  246. package/src/lib/styles.d.mts +1 -1
  247. package/src/lib/styles.d.ts +1 -1
  248. package/src/lib/styles.js +1 -0
  249. package/src/lib/styles.js.map +1 -1
  250. package/src/lib/styles.mjs +1 -0
  251. package/src/lib/styles.mjs.map +1 -1
  252. package/src/lib/toolbox.d.mts +3 -0
  253. package/src/lib/toolbox.d.ts +3 -0
  254. package/src/lib/toolbox.js +13 -3
  255. package/src/lib/toolbox.js.map +1 -1
  256. package/src/lib/toolbox.mjs +13 -3
  257. package/src/lib/toolbox.mjs.map +1 -1
  258. package/src/lib/try-drawer.js +4 -1
  259. package/src/lib/try-drawer.js.map +1 -1
  260. package/src/lib/try-drawer.mjs +4 -1
  261. package/src/lib/try-drawer.mjs.map +1 -1
@@ -0,0 +1,132 @@
1
+ import { cardLines } from '@fieldia/core';
2
+ import { openMenu } from './menu.mjs';
3
+ /**
4
+ * A list's cards in its panel, beside its map and its calendar: each record
5
+ * as a card on a phone, a gallery of cards on the switcher (and whether the
6
+ * list opens on it, its cards' size), and what a card shows — its title, the
7
+ * words under it, its picture, its status pill and its lines, the columns'
8
+ * where it says nothing. A related list's panel has the same, but for the
9
+ * gallery: its records on a phone as cards, of its own fields.
10
+ */
11
+ /** Fields a card's words can come from. */
12
+ const SAYABLE = new Set(['char', 'text', 'selection', 'many2one', 'many2many', 'integer', 'float', 'monetary', 'date', 'datetime', 'boolean']);
13
+ /** Fields a card's picture can come from: a picture held, or text holding its address. */
14
+ const PICTURES = new Set(['image', 'binary', 'char']);
15
+ /** Fields a status pill can come from: values that repeat. */
16
+ const STATUSES = new Set(['selection', 'many2one', 'char', 'boolean']);
17
+ const SIZES = ['small', 'medium', 'large'];
18
+ const listOf = (page) => page.layout;
19
+ /** A list page's cards and gallery, in its panel. */
20
+ export function cardsSection(el, designer) {
21
+ return cardSettings(el, designer, {
22
+ card: (page) => listOf(page).card,
23
+ setCard: (card) => designer.setListOptions({ card }),
24
+ // The page's fields first, then the model's not on it yet.
25
+ fields: (page, kinds) => [...Object.entries(page.fields).map(([name, field]) => ({ name, field })), ...designer.modelFields()].filter(({ field }) => kinds.has(field.type)),
26
+ gallery: { get: (page) => listOf(page).gallery, set: (gallery) => designer.setListOptions({ gallery }) },
27
+ });
28
+ }
29
+ /** A card's settings — each record as a card on a phone, and, where offered, a gallery — over where they are kept. */
30
+ export function cardSettings(el, designer, source) {
31
+ const w = designer.words.list.cards;
32
+ const words = designer.words.list;
33
+ const prop = (text, control) => el('label', { class: 'fd-prop' }, el('span', { class: 'fd-prop-name' }, text), control);
34
+ const select = (label) => el('select', { class: 'fd-input fd-select', 'aria-label': label });
35
+ const tick = (label) => el('input', { type: 'checkbox', 'aria-label': label });
36
+ const onPhone = tick(w.onPhone);
37
+ const gallery = tick(w.gallery);
38
+ const opens = tick(w.opens);
39
+ const size = select(w.size);
40
+ size.append(...SIZES.map((value) => el('option', { value }, w.sizes[value])));
41
+ const heading = select(w.heading);
42
+ const under = select(w.under);
43
+ const picture = select(w.picture);
44
+ const status = select(w.status);
45
+ const lines = el('div', { class: 'fd-chips' });
46
+ const addLine = el('button', { type: 'button', class: 'fd-button' }, words.addToCard);
47
+ const labels = tick(words.cardLabels);
48
+ const lead = tick(words.cardLead);
49
+ const galleryRows = el('div', { class: 'fd-props' }, el('label', { class: 'fd-q-required' }, opens, el('span', {}, w.opens)), prop(w.size, size));
50
+ const details = el('div', { class: 'fd-props' }, prop(w.heading, heading), prop(w.under, under), prop(w.picture, picture), prop(w.status, status), el('div', { class: 'fd-prop' }, el('span', { class: 'fd-prop-name' }, words.cardShows), lines, addLine), el('label', { class: 'fd-q-required' }, labels, el('span', {}, words.cardLabels)), el('label', { class: 'fd-q-required' }, lead, el('span', {}, words.cardLead)), el('p', { class: 'fd-properties-hint' }, w.note));
51
+ const offersGallery = source.gallery;
52
+ const element = el('div', { class: 'fd-prop', 'data-part': 'cards' },
53
+ // In a list's panel, under a heading of its own; a related list's is a setting row, named by it.
54
+ ...(offersGallery ? [el('span', { class: 'fd-prop-name' }, w.title)] : []), el('label', { class: 'fd-q-required' }, onPhone, el('span', {}, w.onPhone)), ...(offersGallery ? [el('label', { class: 'fd-q-required' }, gallery, el('span', {}, w.gallery)), galleryRows] : []), details);
55
+ const fieldsOf = (page, kinds) => source.fields(page, kinds);
56
+ const fill = (box, choices, none) => box.replaceChildren(el('option', { value: '' }, none), ...choices.map(({ name, field }) => el('option', { value: name }, field.label)));
57
+ const card = () => JSON.parse(JSON.stringify(source.card(designer.getPage()) ?? {}));
58
+ /** The card with a change, its empty parts left out: `{}` takes it all from the columns. */
59
+ const change = (edit) => {
60
+ const next = card();
61
+ edit(next);
62
+ for (const key of Object.keys(next))
63
+ if (next[key] === '' || next[key] === undefined || (Array.isArray(next[key]) && !next[key].length))
64
+ delete next[key];
65
+ return source.setCard(next);
66
+ };
67
+ const galleryChange = (edit) => {
68
+ const next = { ...offersGallery?.get(designer.getPage()) };
69
+ edit(next);
70
+ return offersGallery?.set(next) ?? false;
71
+ };
72
+ onPhone.addEventListener('change', () => source.setCard(onPhone.checked ? card() : null));
73
+ gallery.addEventListener('change', () => offersGallery?.set(gallery.checked ? {} : null));
74
+ opens.addEventListener('change', () => galleryChange((next) => (opens.checked ? (next.opens = 'gallery') : delete next.opens)));
75
+ size.addEventListener('change', () => galleryChange((next) => (size.value === 'medium' ? delete next.size : (next.size = size.value))));
76
+ heading.addEventListener('change', () => change((next) => (next.title = heading.value || undefined)));
77
+ under.addEventListener('change', () => change((next) => (next.subtitle = under.value || undefined)));
78
+ picture.addEventListener('change', () => change((next) => (next.image = picture.value || undefined)));
79
+ status.addEventListener('change', () => change((next) => (next.status = status.value || undefined)));
80
+ // Shown unless said, as a map card's labels; the first line leads only when asked.
81
+ labels.addEventListener('change', () => change((next) => (next.labels = labels.checked ? undefined : false)));
82
+ lead.addEventListener('change', () => change((next) => (next.lead = lead.checked || undefined)));
83
+ addLine.addEventListener('click', () => {
84
+ const page = designer.getPage();
85
+ const now = card().fields ?? [];
86
+ const shown = new Set(cardLines({ fields: now }).flatMap((parts) => parts.map((part) => part.field)));
87
+ openMenu({
88
+ el,
89
+ anchor: addLine,
90
+ title: words.cardShows,
91
+ items: fieldsOf(page, SAYABLE)
92
+ .filter(({ name }) => !shown.has(name))
93
+ .map(({ name, field }) => ({ id: name, label: field.label })),
94
+ onPick: (name) => change((next) => (next.fields = [...now, name])),
95
+ });
96
+ });
97
+ return {
98
+ element,
99
+ update(page) {
100
+ const shown = source.card(page);
101
+ const galleryNow = offersGallery?.get(page);
102
+ onPhone.checked = !!shown;
103
+ gallery.checked = !!galleryNow;
104
+ galleryRows.hidden = !galleryNow;
105
+ opens.checked = galleryNow?.opens === 'gallery';
106
+ size.value = galleryNow?.size ?? 'medium';
107
+ // What a card shows, where the list has cards or a gallery.
108
+ details.hidden = !shown && !galleryNow;
109
+ const shows = shown ?? {};
110
+ fill(heading, fieldsOf(page, SAYABLE), w.fromColumns);
111
+ heading.value = shows.title ?? '';
112
+ fill(under, fieldsOf(page, SAYABLE), w.nothing);
113
+ under.value = shows.subtitle ?? '';
114
+ fill(picture, fieldsOf(page, PICTURES), w.fromColumns);
115
+ picture.value = shows.image ?? '';
116
+ fill(status, fieldsOf(page, STATUSES), w.fromColumns);
117
+ status.value = shows.status ?? '';
118
+ // Each line a chip: a field, or several on one line, named by their labels.
119
+ const now = shows.fields ?? [];
120
+ lines.replaceChildren(...cardLines({ fields: now }).map((parts, i) => {
121
+ const labelled = new Map(fieldsOf(page, SAYABLE).map(({ name, field }) => [name, field.label]));
122
+ const named = parts.map((part) => page.fields[part.field]?.label ?? labelled.get(part.field) ?? part.field).join(' · ');
123
+ const remove = el('button', { type: 'button', class: 'fd-chip-remove', 'aria-label': words.takeOffCard(named) }, '×');
124
+ remove.addEventListener('click', () => change((next) => (next.fields = now.filter((_, j) => j !== i))));
125
+ return el('span', { class: 'fd-chip' }, named, remove);
126
+ }));
127
+ labels.checked = shows.labels !== false;
128
+ lead.checked = !!shows.lead;
129
+ },
130
+ };
131
+ }
132
+ //# sourceMappingURL=list-cards-settings.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-cards-settings.mjs","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/list-cards-settings.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { type ButtonNode, type Field, type FilterCondition, type FilterItem, type FilterPeriod, type ListCalendar, type ListCell, type ListMap, type Page } from '@fieldia/core';
1
+ import { type ButtonNode, type Field, type FilterCondition, type FilterItem, type FilterPeriod, type ListCalendar, type ListCard, type ListCell, type ListGallery, type ListMap, type Modifier, type Page, type ToneWhen } from '@fieldia/core';
2
+ import type { TableButton } from './table-commands.mjs';
2
3
  /**
3
4
  * A list page, as the designer edits it: its columns, its order, how many
4
5
  * rows a page holds, where the search bar looks, its named filters and
@@ -6,7 +7,7 @@ import { type ButtonNode, type Field, type FilterCondition, type FilterItem, typ
6
7
  * onto the page from the model as the model has it, and leaves when nothing
7
8
  * names it any more.
8
9
  */
9
- export interface ListOptionsPatch {
10
+ export interface ListOptionsPatch extends RowRulesPatch {
10
11
  sort?: {
11
12
  field: string;
12
13
  desc?: boolean;
@@ -39,6 +40,19 @@ export interface ListOptionsPatch {
39
40
  export?: boolean;
40
41
  /** Edit of many rows at once: true for the columns one value can set (keeping the fields named, if it names them), the fields it offers, or false for none. */
41
42
  bulkEdit?: boolean | string[];
43
+ /** Import of a file's rows as new records: true for every field a cell can fill (keeping the fields named, if it names them), the fields it offers, or false for none. */
44
+ import?: boolean | string[];
45
+ /** Print of every record the search finds: true offers it, false takes it away. */
46
+ print?: boolean;
47
+ /** What each record's card shows, on a phone and in the gallery ({} for the columns'); null for no cards. */
48
+ card?: ListCard | null;
49
+ /** A gallery of cards on the switcher; null for none. */
50
+ gallery?: ListGallery | null;
51
+ /** Whether people may hide a column, and how it starts: shown, or hidden; null when they may not. */
52
+ optionalColumn?: {
53
+ field: string;
54
+ starts: 'show' | 'hide' | null;
55
+ };
42
56
  }
43
57
  export interface ListActionPatch {
44
58
  label?: string;
@@ -79,6 +93,26 @@ export declare const FILTERABLE: Set<string>;
79
93
  export declare const canBeColumn: (field: Field) => boolean;
80
94
  /** How a column is picked on the canvas: by its field. */
81
95
  export declare const columnId: (field: string) => string;
96
+ /** A list's rows' own rules, as `setListOptions` and a related list's panel (`updateRelated`) take them. */
97
+ export interface RowRulesPatch {
98
+ /** Each row's tone while a condition on its record holds, the first that holds; null or none for no tone. */
99
+ rowTones?: ToneWhen[] | null;
100
+ /** Each row in bold while a condition on its record holds; null for never. */
101
+ rowBold?: string | null;
102
+ /** The buttons on each row, in order, as a table's (a button kept keeps its id and steps); null or none for none. */
103
+ rowButtons?: TableButton[] | null;
104
+ }
105
+ /**
106
+ * A list's or a related list's rows' own rules set as asked: each condition refused in words where it does not read on
107
+ * a row's record (`reads`: a page whose fields are its records' — the list page itself, or a related list's own
108
+ * `fields`), a button kept by its id, a new one named afresh in the page, each doing something.
109
+ */
110
+ export declare function setRowRules(target: {
111
+ id: string;
112
+ rowTones?: ToneWhen[];
113
+ rowBold?: Modifier;
114
+ rowButtons?: ButtonNode[];
115
+ }, options: RowRulesPatch, draft: Page, reads: Page): void;
82
116
  /** The fields a filter reads, through its groups. */
83
117
  export declare function filterFields(items: readonly FilterItem[]): string[];
84
118
  export declare function listCommands(context: {
@@ -1,4 +1,5 @@
1
- import { type ButtonNode, type Field, type FilterCondition, type FilterItem, type FilterPeriod, type ListCalendar, type ListCell, type ListMap, type Page } from '@fieldia/core';
1
+ import { type ButtonNode, type Field, type FilterCondition, type FilterItem, type FilterPeriod, type ListCalendar, type ListCard, type ListCell, type ListGallery, type ListMap, type Modifier, type Page, type ToneWhen } from '@fieldia/core';
2
+ import type { TableButton } from './table-commands';
2
3
  /**
3
4
  * A list page, as the designer edits it: its columns, its order, how many
4
5
  * rows a page holds, where the search bar looks, its named filters and
@@ -6,7 +7,7 @@ import { type ButtonNode, type Field, type FilterCondition, type FilterItem, typ
6
7
  * onto the page from the model as the model has it, and leaves when nothing
7
8
  * names it any more.
8
9
  */
9
- export interface ListOptionsPatch {
10
+ export interface ListOptionsPatch extends RowRulesPatch {
10
11
  sort?: {
11
12
  field: string;
12
13
  desc?: boolean;
@@ -39,6 +40,19 @@ export interface ListOptionsPatch {
39
40
  export?: boolean;
40
41
  /** Edit of many rows at once: true for the columns one value can set (keeping the fields named, if it names them), the fields it offers, or false for none. */
41
42
  bulkEdit?: boolean | string[];
43
+ /** Import of a file's rows as new records: true for every field a cell can fill (keeping the fields named, if it names them), the fields it offers, or false for none. */
44
+ import?: boolean | string[];
45
+ /** Print of every record the search finds: true offers it, false takes it away. */
46
+ print?: boolean;
47
+ /** What each record's card shows, on a phone and in the gallery ({} for the columns'); null for no cards. */
48
+ card?: ListCard | null;
49
+ /** A gallery of cards on the switcher; null for none. */
50
+ gallery?: ListGallery | null;
51
+ /** Whether people may hide a column, and how it starts: shown, or hidden; null when they may not. */
52
+ optionalColumn?: {
53
+ field: string;
54
+ starts: 'show' | 'hide' | null;
55
+ };
42
56
  }
43
57
  export interface ListActionPatch {
44
58
  label?: string;
@@ -79,6 +93,26 @@ export declare const FILTERABLE: Set<string>;
79
93
  export declare const canBeColumn: (field: Field) => boolean;
80
94
  /** How a column is picked on the canvas: by its field. */
81
95
  export declare const columnId: (field: string) => string;
96
+ /** A list's rows' own rules, as `setListOptions` and a related list's panel (`updateRelated`) take them. */
97
+ export interface RowRulesPatch {
98
+ /** Each row's tone while a condition on its record holds, the first that holds; null or none for no tone. */
99
+ rowTones?: ToneWhen[] | null;
100
+ /** Each row in bold while a condition on its record holds; null for never. */
101
+ rowBold?: string | null;
102
+ /** The buttons on each row, in order, as a table's (a button kept keeps its id and steps); null or none for none. */
103
+ rowButtons?: TableButton[] | null;
104
+ }
105
+ /**
106
+ * A list's or a related list's rows' own rules set as asked: each condition refused in words where it does not read on
107
+ * a row's record (`reads`: a page whose fields are its records' — the list page itself, or a related list's own
108
+ * `fields`), a button kept by its id, a new one named afresh in the page, each doing something.
109
+ */
110
+ export declare function setRowRules(target: {
111
+ id: string;
112
+ rowTones?: ToneWhen[];
113
+ rowBold?: Modifier;
114
+ rowButtons?: ButtonNode[];
115
+ }, options: RowRulesPatch, draft: Page, reads: Page): void;
82
116
  /** The fields a filter reads, through its groups. */
83
117
  export declare function filterFields(items: readonly FilterItem[]): string[];
84
118
  export declare function listCommands(context: {
@@ -1,12 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.columnId = exports.canBeColumn = exports.FILTERABLE = exports.widthIsGood = exports.ruleIsGood = void 0;
4
+ exports.setRowRules = setRowRules;
4
5
  exports.filterFields = filterFields;
5
6
  exports.listCommands = listCommands;
6
7
  const core_1 = require("@fieldia/core");
7
8
  const kinds_1 = require("./kinds");
8
9
  const page_tree_1 = require("./page-tree");
9
10
  const refusal_1 = require("./refusal");
11
+ const rules_formula_1 = require("./rules-formula");
10
12
  /** Its header's rule: none (false), or set in "0px" to "400px" from the column's end. */
11
13
  const ruleIsGood = (rule) => rule === false || (typeof rule === 'string' && /^(\d|[1-9]\d|[1-3]\d{2}|400)px$/.test(rule));
12
14
  exports.ruleIsGood = ruleIsGood;
@@ -29,6 +31,68 @@ const actionName = (label) => label
29
31
  .toLowerCase()
30
32
  .replace(/[^a-z0-9]+/g, '_')
31
33
  .replace(/^_+|_+$/g, '') || 'action';
34
+ /**
35
+ * A list's or a related list's rows' own rules set as asked: each condition refused in words where it does not read on
36
+ * a row's record (`reads`: a page whose fields are its records' — the list page itself, or a related list's own
37
+ * `fields`), a button kept by its id, a new one named afresh in the page, each doing something.
38
+ */
39
+ function setRowRules(target, options, draft, reads) {
40
+ const refuse = (when) => {
41
+ if ((0, rules_formula_1.formulaProblem)(reads, when))
42
+ throw new refusal_1.Refusal((w) => w.rules.inWhen((0, rules_formula_1.problemWords)((0, rules_formula_1.formulaProblem)(reads, when, w), w)));
43
+ };
44
+ if (options.rowTones !== undefined) {
45
+ const kept = (options.rowTones ?? []).map((item) => ({ tone: item.tone, when: typeof item.when === 'string' ? item.when.trim() : item.when }));
46
+ for (const item of kept)
47
+ if (typeof item.when === 'string')
48
+ refuse(item.when);
49
+ if (kept.length)
50
+ target.rowTones = kept;
51
+ else
52
+ delete target.rowTones;
53
+ }
54
+ if (options.rowBold !== undefined) {
55
+ const said = options.rowBold?.trim();
56
+ if (said) {
57
+ refuse(said);
58
+ target.rowBold = said;
59
+ }
60
+ else
61
+ delete target.rowBold;
62
+ }
63
+ if (options.rowButtons !== undefined) {
64
+ const before = new Map((target.rowButtons ?? []).map((button) => [button.id, button]));
65
+ const ids = (0, page_tree_1.allIds)(draft);
66
+ const kept = (options.rowButtons ?? []).map((button) => {
67
+ const label = button.label.trim();
68
+ if (!label)
69
+ throw new refusal_1.Refusal((w) => w.tables.buttonNeedsWords);
70
+ const was = button.id ? before.get(button.id) : undefined;
71
+ const id = was ? was.id : (0, page_tree_1.nextName)((one) => ids.has(one), `${target.id}-row-button`, '-');
72
+ ids.add(id);
73
+ const made = { ...(was ?? { type: 'button', id }), label };
74
+ if (button.action?.trim())
75
+ made.action = button.action.trim();
76
+ else
77
+ delete made.action;
78
+ const hidden = button.invisible?.trim();
79
+ if (hidden) {
80
+ refuse(hidden);
81
+ made.invisible = hidden;
82
+ }
83
+ else
84
+ delete made.invisible;
85
+ // A button does something: an app action, or the steps it had.
86
+ if (!made.action && !made.steps?.length)
87
+ made.action = actionName(label);
88
+ return made;
89
+ });
90
+ if (kept.length)
91
+ target.rowButtons = kept;
92
+ else
93
+ delete target.rowButtons;
94
+ }
95
+ }
32
96
  /** The fields a filter reads, through its groups. */
33
97
  function filterFields(items) {
34
98
  return items.flatMap((item) => ('any' in item ? filterFields(item.any) : 'all' in item ? filterFields(item.all) : [item.field]));
@@ -118,6 +182,10 @@ function listCommands(context) {
118
182
  delete list.cells[field];
119
183
  if (list.cells && !Object.keys(list.cells).length)
120
184
  delete list.cells;
185
+ if (list.optionalColumns)
186
+ delete list.optionalColumns[field];
187
+ if (list.optionalColumns && !Object.keys(list.optionalColumns).length)
188
+ delete list.optionalColumns;
121
189
  prune(draft);
122
190
  });
123
191
  if (ok)
@@ -167,6 +235,10 @@ function listCommands(context) {
167
235
  list.export = true;
168
236
  else if (options.export === false)
169
237
  delete list.export;
238
+ if (options.print === true)
239
+ list.print = true;
240
+ else if (options.print === false)
241
+ delete list.print;
170
242
  if (options.bulkEdit === false)
171
243
  delete list.bulkEdit;
172
244
  else if (options.bulkEdit === true) {
@@ -184,6 +256,23 @@ function listCommands(context) {
184
256
  else
185
257
  delete list.bulkEdit;
186
258
  }
259
+ if (options.import === false)
260
+ delete list.import;
261
+ else if (options.import === true) {
262
+ if (!Array.isArray(list.import))
263
+ list.import = true;
264
+ }
265
+ else if (options.import !== undefined) {
266
+ for (const name of options.import) {
267
+ const def = fieldFor(draft, name);
268
+ if (!(0, core_1.importable)(def))
269
+ throw new refusal_1.Refusal((w) => w.refusals.notImportable(def.label));
270
+ }
271
+ if (options.import.length)
272
+ list.import = [...new Set(options.import)];
273
+ else
274
+ delete list.import;
275
+ }
187
276
  if (options.search === 'fields')
188
277
  list.search = 'fields';
189
278
  else if (options.search === 'bar') {
@@ -250,6 +339,37 @@ function listCommands(context) {
250
339
  fieldFor(draft, name);
251
340
  list.calendar = JSON.parse(JSON.stringify(options.calendar));
252
341
  }
342
+ if (options.card === null)
343
+ delete list.card;
344
+ else if (options.card !== undefined) {
345
+ // As a map's card: its fields come from the model, and the page check says what is wrong with the rest.
346
+ for (const name of (0, page_tree_1.listCardFields)(options.card))
347
+ fieldFor(draft, name);
348
+ list.card = JSON.parse(JSON.stringify(options.card));
349
+ }
350
+ if (options.gallery === null)
351
+ delete list.gallery;
352
+ else if (options.gallery !== undefined)
353
+ list.gallery = { ...options.gallery };
354
+ // A row's own rules: conditions on its record, refused in words where they do not read.
355
+ setRowRules(list, options, draft, draft);
356
+ if (options.optionalColumn !== undefined) {
357
+ const { field, starts } = options.optionalColumn;
358
+ if (!list.columns.includes(field))
359
+ throw new refusal_1.Refusal((w) => w.refusals.notAColumn(field));
360
+ const optional = { ...list.optionalColumns };
361
+ if (starts)
362
+ optional[field] = starts;
363
+ else
364
+ delete optional[field];
365
+ // Never every column hidden as the list opens: the one asked for shows.
366
+ if (starts === 'hide' && list.columns.every((name) => optional[name] === 'hide'))
367
+ optional[field] = 'show';
368
+ if (Object.keys(optional).length)
369
+ list.optionalColumns = optional;
370
+ else
371
+ delete list.optionalColumns;
372
+ }
253
373
  prune(draft);
254
374
  });
255
375
  },
@@ -269,6 +389,10 @@ function listCommands(context) {
269
389
  const own = fieldFor(draft, column);
270
390
  if (cell.widget === 'dot' && own.type !== 'selection')
271
391
  throw new refusal_1.Refusal((w) => w.refusals.dotNeedsChoice(own.label));
392
+ // Chips are a link's records, a bar a number's, a phone a text's.
393
+ const fits = { tags: ['many2many'], progressbar: ['integer', 'float'], phone: ['char'] };
394
+ if (cell.widget && fits[cell.widget] && !fits[cell.widget].includes(own.type))
395
+ throw new refusal_1.Refusal((w) => w.refusals.cellWidgetKind(own.label));
272
396
  // A sum, an average, the lowest and the highest are a number's; any column has a count.
273
397
  if (cell.total && cell.total !== 'count' && !['integer', 'float', 'monetary'].includes(own.type))
274
398
  throw new refusal_1.Refusal((w) => w.refusals.totalNeedsNumber(own.label));
@@ -1 +1 @@
1
- {"version":3,"file":"list-commands.js","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/list-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list-commands.js","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/list-commands.ts"],"names":[],"mappings":"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"}