@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
@@ -1,7 +1,8 @@
1
- import { bulkSettable } from '@fieldia/core';
1
+ import { bulkSettable, importable } from '@fieldia/core';
2
2
  import { storedAs } from './kinds.mjs';
3
- import { allIds, fieldReads, keptFields, listCalendarFields, listMapFields, nextName } from './page-tree.mjs';
3
+ import { allIds, fieldReads, keptFields, listCalendarFields, listCardFields, listMapFields, nextName } from './page-tree.mjs';
4
4
  import { Refusal } from './refusal.mjs';
5
+ import { formulaProblem, problemWords } from './rules-formula.mjs';
5
6
  /** Its header's rule: none (false), or set in "0px" to "400px" from the column's end. */
6
7
  export const ruleIsGood = (rule) => rule === false || (typeof rule === 'string' && /^(\d|[1-9]\d|[1-3]\d{2}|400)px$/.test(rule));
7
8
  /** A column's width: 1 to 200 characters, or "8px" to "4000px" for the whole column. */
@@ -20,6 +21,68 @@ const actionName = (label) => label
20
21
  .toLowerCase()
21
22
  .replace(/[^a-z0-9]+/g, '_')
22
23
  .replace(/^_+|_+$/g, '') || 'action';
24
+ /**
25
+ * 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
26
+ * a row's record (`reads`: a page whose fields are its records' — the list page itself, or a related list's own
27
+ * `fields`), a button kept by its id, a new one named afresh in the page, each doing something.
28
+ */
29
+ export function setRowRules(target, options, draft, reads) {
30
+ const refuse = (when) => {
31
+ if (formulaProblem(reads, when))
32
+ throw new Refusal((w) => w.rules.inWhen(problemWords(formulaProblem(reads, when, w), w)));
33
+ };
34
+ if (options.rowTones !== undefined) {
35
+ const kept = (options.rowTones ?? []).map((item) => ({ tone: item.tone, when: typeof item.when === 'string' ? item.when.trim() : item.when }));
36
+ for (const item of kept)
37
+ if (typeof item.when === 'string')
38
+ refuse(item.when);
39
+ if (kept.length)
40
+ target.rowTones = kept;
41
+ else
42
+ delete target.rowTones;
43
+ }
44
+ if (options.rowBold !== undefined) {
45
+ const said = options.rowBold?.trim();
46
+ if (said) {
47
+ refuse(said);
48
+ target.rowBold = said;
49
+ }
50
+ else
51
+ delete target.rowBold;
52
+ }
53
+ if (options.rowButtons !== undefined) {
54
+ const before = new Map((target.rowButtons ?? []).map((button) => [button.id, button]));
55
+ const ids = allIds(draft);
56
+ const kept = (options.rowButtons ?? []).map((button) => {
57
+ const label = button.label.trim();
58
+ if (!label)
59
+ throw new Refusal((w) => w.tables.buttonNeedsWords);
60
+ const was = button.id ? before.get(button.id) : undefined;
61
+ const id = was ? was.id : nextName((one) => ids.has(one), `${target.id}-row-button`, '-');
62
+ ids.add(id);
63
+ const made = { ...(was ?? { type: 'button', id }), label };
64
+ if (button.action?.trim())
65
+ made.action = button.action.trim();
66
+ else
67
+ delete made.action;
68
+ const hidden = button.invisible?.trim();
69
+ if (hidden) {
70
+ refuse(hidden);
71
+ made.invisible = hidden;
72
+ }
73
+ else
74
+ delete made.invisible;
75
+ // A button does something: an app action, or the steps it had.
76
+ if (!made.action && !made.steps?.length)
77
+ made.action = actionName(label);
78
+ return made;
79
+ });
80
+ if (kept.length)
81
+ target.rowButtons = kept;
82
+ else
83
+ delete target.rowButtons;
84
+ }
85
+ }
23
86
  /** The fields a filter reads, through its groups. */
24
87
  export function filterFields(items) {
25
88
  return items.flatMap((item) => ('any' in item ? filterFields(item.any) : 'all' in item ? filterFields(item.all) : [item.field]));
@@ -109,6 +172,10 @@ export function listCommands(context) {
109
172
  delete list.cells[field];
110
173
  if (list.cells && !Object.keys(list.cells).length)
111
174
  delete list.cells;
175
+ if (list.optionalColumns)
176
+ delete list.optionalColumns[field];
177
+ if (list.optionalColumns && !Object.keys(list.optionalColumns).length)
178
+ delete list.optionalColumns;
112
179
  prune(draft);
113
180
  });
114
181
  if (ok)
@@ -158,6 +225,10 @@ export function listCommands(context) {
158
225
  list.export = true;
159
226
  else if (options.export === false)
160
227
  delete list.export;
228
+ if (options.print === true)
229
+ list.print = true;
230
+ else if (options.print === false)
231
+ delete list.print;
161
232
  if (options.bulkEdit === false)
162
233
  delete list.bulkEdit;
163
234
  else if (options.bulkEdit === true) {
@@ -175,6 +246,23 @@ export function listCommands(context) {
175
246
  else
176
247
  delete list.bulkEdit;
177
248
  }
249
+ if (options.import === false)
250
+ delete list.import;
251
+ else if (options.import === true) {
252
+ if (!Array.isArray(list.import))
253
+ list.import = true;
254
+ }
255
+ else if (options.import !== undefined) {
256
+ for (const name of options.import) {
257
+ const def = fieldFor(draft, name);
258
+ if (!importable(def))
259
+ throw new Refusal((w) => w.refusals.notImportable(def.label));
260
+ }
261
+ if (options.import.length)
262
+ list.import = [...new Set(options.import)];
263
+ else
264
+ delete list.import;
265
+ }
178
266
  if (options.search === 'fields')
179
267
  list.search = 'fields';
180
268
  else if (options.search === 'bar') {
@@ -241,6 +329,37 @@ export function listCommands(context) {
241
329
  fieldFor(draft, name);
242
330
  list.calendar = JSON.parse(JSON.stringify(options.calendar));
243
331
  }
332
+ if (options.card === null)
333
+ delete list.card;
334
+ else if (options.card !== undefined) {
335
+ // As a map's card: its fields come from the model, and the page check says what is wrong with the rest.
336
+ for (const name of listCardFields(options.card))
337
+ fieldFor(draft, name);
338
+ list.card = JSON.parse(JSON.stringify(options.card));
339
+ }
340
+ if (options.gallery === null)
341
+ delete list.gallery;
342
+ else if (options.gallery !== undefined)
343
+ list.gallery = { ...options.gallery };
344
+ // A row's own rules: conditions on its record, refused in words where they do not read.
345
+ setRowRules(list, options, draft, draft);
346
+ if (options.optionalColumn !== undefined) {
347
+ const { field, starts } = options.optionalColumn;
348
+ if (!list.columns.includes(field))
349
+ throw new Refusal((w) => w.refusals.notAColumn(field));
350
+ const optional = { ...list.optionalColumns };
351
+ if (starts)
352
+ optional[field] = starts;
353
+ else
354
+ delete optional[field];
355
+ // Never every column hidden as the list opens: the one asked for shows.
356
+ if (starts === 'hide' && list.columns.every((name) => optional[name] === 'hide'))
357
+ optional[field] = 'show';
358
+ if (Object.keys(optional).length)
359
+ list.optionalColumns = optional;
360
+ else
361
+ delete list.optionalColumns;
362
+ }
244
363
  prune(draft);
245
364
  });
246
365
  },
@@ -260,6 +379,10 @@ export function listCommands(context) {
260
379
  const own = fieldFor(draft, column);
261
380
  if (cell.widget === 'dot' && own.type !== 'selection')
262
381
  throw new Refusal((w) => w.refusals.dotNeedsChoice(own.label));
382
+ // Chips are a link's records, a bar a number's, a phone a text's.
383
+ const fits = { tags: ['many2many'], progressbar: ['integer', 'float'], phone: ['char'] };
384
+ if (cell.widget && fits[cell.widget] && !fits[cell.widget].includes(own.type))
385
+ throw new Refusal((w) => w.refusals.cellWidgetKind(own.label));
263
386
  // A sum, an average, the lowest and the highest are a number's; any column has a count.
264
387
  if (cell.total && cell.total !== 'count' && !['integer', 'float', 'monetary'].includes(own.type))
265
388
  throw new Refusal((w) => w.refusals.totalNeedsNumber(own.label));
@@ -1 +1 @@
1
- {"version":3,"file":"list-commands.mjs","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/list-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list-commands.mjs","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/list-commands.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@ const core_1 = require("@fieldia/core");
7
7
  const kinds_1 = require("./kinds");
8
8
  const list_commands_1 = require("./list-commands");
9
9
  const list_calendar_1 = require("./list-calendar");
10
+ const list_cards_settings_1 = require("./list-cards-settings");
11
+ const list_rows_settings_1 = require("./list-rows-settings");
10
12
  const menu_1 = require("./menu");
11
13
  const steps_panel_1 = require("./steps-panel");
12
14
  const number_box_1 = require("./number-box");
@@ -568,6 +570,20 @@ function listProperties(el, designer) {
568
570
  bulk.checked = !!pageList().bulkEdit;
569
571
  });
570
572
  const bulkRow = el('div', { class: 'fd-prop', 'data-part': 'bulk-edit' }, el('label', { class: 'fd-q-required' }, bulk, el('span', {}, w.bulkEdit)), el('p', { class: 'fd-properties-hint' }, w.bulkEditHint));
573
+ // Import from Excel and CSV, off unless asked, after Export and Edit.
574
+ const imports = el('input', { type: 'checkbox', 'aria-label': w.importRows });
575
+ imports.addEventListener('change', () => {
576
+ if (!designer.setListOptions({ import: imports.checked }))
577
+ imports.checked = !!pageList().import;
578
+ });
579
+ const importRow = el('div', { class: 'fd-prop', 'data-part': 'import' }, el('label', { class: 'fd-q-required' }, imports, el('span', {}, w.importRows)), el('p', { class: 'fd-properties-hint' }, w.importHint));
580
+ // Print every record the search finds, off unless asked, as Export is.
581
+ const prints = el('input', { type: 'checkbox', 'aria-label': w.printRows });
582
+ prints.addEventListener('change', () => {
583
+ if (!designer.setListOptions({ print: prints.checked }))
584
+ prints.checked = pageList().print === true;
585
+ });
586
+ const printRow = el('div', { class: 'fd-prop', 'data-part': 'print' }, el('label', { class: 'fd-q-required' }, prints, el('span', {}, w.printRows)), el('p', { class: 'fd-properties-hint' }, w.printHint));
571
587
  const searchWay = select(el, w.searchWay, [['bar', w.searchWays.bar], ['fields', w.searchWays.fields]]);
572
588
  searchWay.addEventListener('change', () => designer.setListOptions({ search: searchWay.value }));
573
589
  const filterBox = el('div', { class: 'fd-list-filter-fields' });
@@ -578,7 +594,11 @@ function listProperties(el, designer) {
578
594
  const parentRow = el('label', { class: 'fd-prop', 'data-part': 'parent' }, el('span', { class: 'fd-prop-name' }, w.parentField), parent, parentWhy);
579
595
  const onMap = mapSection(el, designer);
580
596
  const onCalendar = (0, list_calendar_1.calendarSection)(el, designer);
581
- const element = el('div', { class: 'fd-props' }, prop(el, w.rowsOnPage, size.input), prop(el, w.sortedBy, sortBy), directionRow, chooseRow, sortsRow, exportRow, bulkRow, prop(el, w.searchWay, searchWay), filterFieldsRow, parentRow, el('div', { class: 'fd-prop' }, el('span', { class: 'fd-prop-name' }, w.searchLooksIn), searchBox, el('p', { class: 'fd-properties-hint' }, w.noneTicked)), el('div', { class: 'fd-prop fd-prop-filters', 'data-part': 'filters' }, el('span', { class: 'fd-prop-name' }, w.filters), filtersBox, addFilter), el('div', { class: 'fd-prop' }, el('span', { class: 'fd-prop-name' }, w.groupBy), groupsBox, addGroup), onMap.element, onCalendar.element, el('p', { class: 'fd-properties-hint' }, w.rowOpens));
597
+ const asCards = (0, list_cards_settings_1.cardsSection)(el, designer);
598
+ const rowRules = (0, list_rows_settings_1.rowsSection)(el, designer);
599
+ const element = el('div', { class: 'fd-props' }, prop(el, w.rowsOnPage, size.input), prop(el, w.sortedBy, sortBy), directionRow, chooseRow, sortsRow, exportRow, bulkRow,
600
+ // What goes out — Export, Edit, Print — then what comes in.
601
+ printRow, importRow, prop(el, w.searchWay, searchWay), filterFieldsRow, parentRow, el('div', { class: 'fd-prop' }, el('span', { class: 'fd-prop-name' }, w.searchLooksIn), searchBox, el('p', { class: 'fd-properties-hint' }, w.noneTicked)), el('div', { class: 'fd-prop fd-prop-filters', 'data-part': 'filters' }, el('span', { class: 'fd-prop-name' }, w.filters), filtersBox, addFilter), el('div', { class: 'fd-prop' }, el('span', { class: 'fd-prop-name' }, w.groupBy), groupsBox, addGroup), rowRules.element, asCards.element, onMap.element, onCalendar.element, el('p', { class: 'fd-properties-hint' }, w.rowOpens));
582
602
  return {
583
603
  element,
584
604
  update(page) {
@@ -625,6 +645,8 @@ function listProperties(el, designer) {
625
645
  sorts.checked = list.sortable !== false;
626
646
  exports.checked = list.export === true;
627
647
  bulk.checked = !!list.bulkEdit;
648
+ imports.checked = !!list.import;
649
+ prints.checked = list.print === true;
628
650
  searchWay.value = list.search ?? 'bar';
629
651
  // The filter bar's fields: those whose values it can list, ticked in the order the page keeps them.
630
652
  filterFieldsRow.hidden = list.search !== 'fields';
@@ -661,6 +683,8 @@ function listProperties(el, designer) {
661
683
  remove.addEventListener('click', () => designer.setListOptions({ groupBy: groups.filter((g) => g !== name) }));
662
684
  return el('span', { class: 'fd-chip' }, label, remove);
663
685
  }));
686
+ rowRules.update(page);
687
+ asCards.update(page);
664
688
  onMap.update(page);
665
689
  onCalendar.update(page);
666
690
  },
@@ -709,6 +733,26 @@ function columnProperties(el, designer, name) {
709
733
  };
710
734
  }
711
735
  // ---- a column's cells ------------------------------------------------------------------------------
736
+ /** The ways a column of a kind can be drawn, beside its words. */
737
+ function cellWays(type) {
738
+ switch (type) {
739
+ case 'selection':
740
+ return ['dot', 'badge'];
741
+ case 'many2one':
742
+ return ['badge', 'avatar'];
743
+ case 'many2many':
744
+ return ['tags'];
745
+ case 'char':
746
+ return ['badge', 'avatar', 'image', 'phone'];
747
+ case 'image':
748
+ return ['image', 'avatar'];
749
+ case 'integer':
750
+ case 'float':
751
+ return ['progressbar'];
752
+ default:
753
+ return [];
754
+ }
755
+ }
712
756
  /**
713
757
  * How a column draws its cells, as a work tracker's backlog does: a state's
714
758
  * dot in each value's colour, an icon before the words by another field's
@@ -723,11 +767,27 @@ function cellSettings(el, designer, name) {
723
767
  delete cell[key];
724
768
  return designer.setListCell(name, Object.keys(cell).length ? cell : null);
725
769
  };
726
- const widget = select(el, w.cellWidget, [['', w.cellWidgets.words], ['dot', w.cellWidgets.dot]]);
727
- widget.addEventListener('change', () => save({ ...cellNow(), widget: widget.value || undefined, ...(widget.value ? {} : { options: undefined }) }));
770
+ const widget = select(el, w.cellWidget, []);
771
+ // Another way of drawing it: the options of the one before go with it, but a pill's and a dot's colours, which are the same.
772
+ widget.addEventListener('change', () => {
773
+ const now = cellNow();
774
+ const colours = (widget.value === 'dot' || widget.value === 'badge') && (now.widget === 'dot' || now.widget === 'badge');
775
+ save({ ...now, widget: widget.value || undefined, options: colours ? now.options : undefined });
776
+ });
728
777
  const widgetRow = prop(el, w.cellWidget, widget);
729
778
  const dots = el('div', { class: 'fd-list-cell-looks' });
730
779
  const dotsRow = el('div', { class: 'fd-prop', 'data-part': 'dots' }, dots);
780
+ // A phone's call and WhatsApp links beside its number.
781
+ const links = el('input', { type: 'checkbox', 'aria-label': w.phoneLinks });
782
+ links.addEventListener('change', () => {
783
+ const { links: _was, ...rest } = cellNow().options ?? {};
784
+ save({ ...cellNow(), options: links.checked ? { ...rest, links: true } : Object.keys(rest).length ? rest : undefined });
785
+ });
786
+ const linksRow = el('label', { class: 'fd-q-required', 'data-part': 'phone-links' }, links, el('span', {}, w.phoneLinks));
787
+ // Whether people may hide it, from the Columns menu, and how it starts.
788
+ const mayHide = select(el, w.mayHide, ['no', 'show', 'hide'].map((k) => [k, w.mayHideChoices[k]]));
789
+ mayHide.addEventListener('change', () => designer.setListOptions({ optionalColumn: { field: name, starts: mayHide.value === 'no' ? null : mayHide.value } }));
790
+ const mayHideRow = el('div', { class: 'fd-prop', 'data-part': 'may-hide' }, el('span', { class: 'fd-prop-name' }, w.mayHide), mayHide, el('p', { class: 'fd-properties-hint' }, w.mayHideHint));
731
791
  const lead = el('select', { class: 'fd-input fd-select', 'aria-label': w.leadFrom });
732
792
  lead.addEventListener('change', () => save({ ...cellNow(), lead: lead.value ? { field: lead.value, looks: {} } : undefined }));
733
793
  const leadLooks = el('div', { class: 'fd-list-cell-looks' });
@@ -794,20 +854,27 @@ function cellSettings(el, designer, name) {
794
854
  /** A value's colour, and its icon for a lead: a row for each option of a choice. */
795
855
  const optionRows = (field, row) => field?.type === 'selection' ? field.options.map((option) => el('div', { class: 'fd-list-cell-look' }, el('span', { class: 'fd-list-cell-look-name' }, option.label), ...row(String(option.value), option.label))) : [];
796
856
  return {
797
- rows: [widgetRow, dotsRow, leadRow, widthRow, prop(el, w.cellSide, side), totalRow, ruleRow, ruleInRow],
857
+ rows: [widgetRow, dotsRow, linksRow, leadRow, widthRow, prop(el, w.cellSide, side), totalRow, ruleRow, ruleInRow, mayHideRow],
798
858
  update(page) {
799
859
  const field = page.fields[name];
800
860
  const cell = page.layout.type === 'list' ? (page.layout.cells?.[name] ?? {}) : {};
801
861
  const kinds = field && ['integer', 'float', 'monetary'].includes(field.type) ? ['sum', 'avg', 'min', 'max', 'count'] : ['count'];
802
862
  total.replaceChildren(el('option', { value: '' }, w.cellTotals.none), ...kinds.map((kind) => el('option', { value: kind }, w.cellTotals[kind])));
803
863
  total.value = cell.total ?? '';
804
- widget.value = cell.widget === 'dot' ? 'dot' : '';
805
- widgetRow.hidden = field?.type !== 'selection';
806
- // Each state's dot colour, when the column draws its dot.
807
- dotsRow.hidden = cell.widget !== 'dot';
864
+ // The ways its kind can be drawn: a choice's dot or pill, links' chips, a picture, a number's bar, a phone.
865
+ const ways = cellWays(field?.type);
866
+ widget.replaceChildren(...['', ...ways].map((way) => el('option', { value: way }, w.cellWidgets[(way || 'words')])));
867
+ widget.value = cell.widget && ways.includes(cell.widget) ? cell.widget : '';
868
+ widgetRow.hidden = !ways.length;
869
+ // Each state's dot or pill colour, when the column draws one.
870
+ dotsRow.hidden = cell.widget !== 'dot' && cell.widget !== 'badge';
871
+ linksRow.hidden = cell.widget !== 'phone';
872
+ links.checked = cell.options?.['links'] === true;
873
+ const list = page.layout.type === 'list' ? page.layout : undefined;
874
+ mayHide.value = list?.optionalColumns?.[name] ?? 'no';
808
875
  const colours = (cell.options?.['colours'] ?? {});
809
876
  dots.replaceChildren(...optionRows(field, (value, label) => {
810
- const colour = el('input', { type: 'color', class: 'fd-insp-colour', 'aria-label': w.dotColour(label) });
877
+ const colour = el('input', { type: 'color', class: 'fd-insp-colour', 'aria-label': cell.widget === 'badge' ? w.pillColour(label) : w.dotColour(label) });
811
878
  colour.value = colours[value] ?? '#7e7e7e';
812
879
  colour.addEventListener('input', () => save({ ...cellNow(), options: { ...cellNow().options, colours: { ...(cellNow().options?.['colours'] ?? {}), [value]: colour.value } } }));
813
880
  return [colour];