@fieldia/designer 0.26.1 → 0.27.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 (386) hide show
  1. package/README.md +75 -0
  2. package/package.json +4 -4
  3. package/src/lib/answer-picker.d.mts +22 -0
  4. package/src/lib/answer-picker.d.ts +22 -0
  5. package/src/lib/answer-picker.js +104 -0
  6. package/src/lib/answer-picker.js.map +1 -0
  7. package/src/lib/answer-picker.mjs +99 -0
  8. package/src/lib/answer-picker.mjs.map +1 -0
  9. package/src/lib/canvas-form.js +2 -1
  10. package/src/lib/canvas-form.js.map +1 -1
  11. package/src/lib/canvas-form.mjs +2 -1
  12. package/src/lib/canvas-form.mjs.map +1 -1
  13. package/src/lib/chrome.js +15 -4
  14. package/src/lib/chrome.js.map +1 -1
  15. package/src/lib/chrome.mjs +15 -4
  16. package/src/lib/chrome.mjs.map +1 -1
  17. package/src/lib/clipboard-names.d.mts +1 -1
  18. package/src/lib/clipboard-names.d.ts +1 -1
  19. package/src/lib/clipboard-names.js +25 -4
  20. package/src/lib/clipboard-names.js.map +1 -1
  21. package/src/lib/clipboard-names.mjs +25 -4
  22. package/src/lib/clipboard-names.mjs.map +1 -1
  23. package/src/lib/columns-editor.d.mts +5 -2
  24. package/src/lib/columns-editor.d.ts +5 -2
  25. package/src/lib/columns-editor.js +144 -3
  26. package/src/lib/columns-editor.js.map +1 -1
  27. package/src/lib/columns-editor.mjs +144 -3
  28. package/src/lib/columns-editor.mjs.map +1 -1
  29. package/src/lib/condition-editor.d.mts +5 -1
  30. package/src/lib/condition-editor.d.ts +5 -1
  31. package/src/lib/condition-editor.js +5 -2
  32. package/src/lib/condition-editor.js.map +1 -1
  33. package/src/lib/condition-editor.mjs +5 -2
  34. package/src/lib/condition-editor.mjs.map +1 -1
  35. package/src/lib/conditions.d.mts +6 -2
  36. package/src/lib/conditions.d.ts +6 -2
  37. package/src/lib/conditions.js +9 -3
  38. package/src/lib/conditions.js.map +1 -1
  39. package/src/lib/conditions.mjs +9 -3
  40. package/src/lib/conditions.mjs.map +1 -1
  41. package/src/lib/designer.d.mts +43 -2
  42. package/src/lib/designer.d.ts +43 -2
  43. package/src/lib/designer.js +111 -14
  44. package/src/lib/designer.js.map +1 -1
  45. package/src/lib/designer.mjs +113 -16
  46. package/src/lib/designer.mjs.map +1 -1
  47. package/src/lib/endings-commands.d.mts +27 -0
  48. package/src/lib/endings-commands.d.ts +27 -0
  49. package/src/lib/endings-commands.js +58 -0
  50. package/src/lib/endings-commands.js.map +1 -0
  51. package/src/lib/endings-commands.mjs +55 -0
  52. package/src/lib/endings-commands.mjs.map +1 -0
  53. package/src/lib/endings-editor.d.mts +14 -0
  54. package/src/lib/endings-editor.d.ts +14 -0
  55. package/src/lib/endings-editor.js +131 -0
  56. package/src/lib/endings-editor.js.map +1 -0
  57. package/src/lib/endings-editor.mjs +128 -0
  58. package/src/lib/endings-editor.mjs.map +1 -0
  59. package/src/lib/head-parts.js +1 -1
  60. package/src/lib/head-parts.js.map +1 -1
  61. package/src/lib/head-parts.mjs +2 -2
  62. package/src/lib/head-parts.mjs.map +1 -1
  63. package/src/lib/json-checks.d.mts +2 -1
  64. package/src/lib/json-checks.d.ts +2 -1
  65. package/src/lib/json-checks.js +3 -3
  66. package/src/lib/json-checks.js.map +1 -1
  67. package/src/lib/json-checks.mjs +3 -3
  68. package/src/lib/json-checks.mjs.map +1 -1
  69. package/src/lib/json-view.js +1 -1
  70. package/src/lib/json-view.js.map +1 -1
  71. package/src/lib/json-view.mjs +1 -1
  72. package/src/lib/json-view.mjs.map +1 -1
  73. package/src/lib/kind-commands.d.mts +4 -0
  74. package/src/lib/kind-commands.d.ts +4 -0
  75. package/src/lib/kind-commands.js +19 -0
  76. package/src/lib/kind-commands.js.map +1 -1
  77. package/src/lib/kind-commands.mjs +19 -0
  78. package/src/lib/kind-commands.mjs.map +1 -1
  79. package/src/lib/kind-settings-structures.js +50 -3
  80. package/src/lib/kind-settings-structures.js.map +1 -1
  81. package/src/lib/kind-settings-structures.mjs +50 -3
  82. package/src/lib/kind-settings-structures.mjs.map +1 -1
  83. package/src/lib/kind-settings.js +48 -0
  84. package/src/lib/kind-settings.js.map +1 -1
  85. package/src/lib/kind-settings.mjs +48 -0
  86. package/src/lib/kind-settings.mjs.map +1 -1
  87. package/src/lib/kinds.d.mts +3 -2
  88. package/src/lib/kinds.d.ts +3 -2
  89. package/src/lib/kinds.js +3 -1
  90. package/src/lib/kinds.js.map +1 -1
  91. package/src/lib/kinds.mjs +3 -1
  92. package/src/lib/kinds.mjs.map +1 -1
  93. package/src/lib/limits-settings.d.mts +14 -0
  94. package/src/lib/limits-settings.d.ts +14 -0
  95. package/src/lib/limits-settings.js +66 -0
  96. package/src/lib/limits-settings.js.map +1 -0
  97. package/src/lib/limits-settings.mjs +63 -0
  98. package/src/lib/limits-settings.mjs.map +1 -0
  99. package/src/lib/list-commands.d.mts +21 -3
  100. package/src/lib/list-commands.d.ts +21 -3
  101. package/src/lib/list-commands.js +61 -9
  102. package/src/lib/list-commands.js.map +1 -1
  103. package/src/lib/list-commands.mjs +60 -8
  104. package/src/lib/list-commands.mjs.map +1 -1
  105. package/src/lib/list-properties.js +51 -4
  106. package/src/lib/list-properties.js.map +1 -1
  107. package/src/lib/list-properties.mjs +53 -6
  108. package/src/lib/list-properties.mjs.map +1 -1
  109. package/src/lib/list-rows-settings.js +1 -1
  110. package/src/lib/list-rows-settings.js.map +1 -1
  111. package/src/lib/list-rows-settings.mjs +1 -1
  112. package/src/lib/list-rows-settings.mjs.map +1 -1
  113. package/src/lib/list-source.d.mts +2 -2
  114. package/src/lib/list-source.d.ts +2 -2
  115. package/src/lib/list-source.js +55 -9
  116. package/src/lib/list-source.js.map +1 -1
  117. package/src/lib/list-source.mjs +55 -9
  118. package/src/lib/list-source.mjs.map +1 -1
  119. package/src/lib/locales/ar/changes.js +2 -0
  120. package/src/lib/locales/ar/changes.js.map +1 -1
  121. package/src/lib/locales/ar/changes.mjs +2 -0
  122. package/src/lib/locales/ar/changes.mjs.map +1 -1
  123. package/src/lib/locales/ar/checks.js +1 -0
  124. package/src/lib/locales/ar/checks.js.map +1 -1
  125. package/src/lib/locales/ar/checks.mjs +1 -0
  126. package/src/lib/locales/ar/checks.mjs.map +1 -1
  127. package/src/lib/locales/ar/endings.d.mts +3 -0
  128. package/src/lib/locales/ar/endings.d.ts +3 -0
  129. package/src/lib/locales/ar/endings.js +40 -0
  130. package/src/lib/locales/ar/endings.js.map +1 -0
  131. package/src/lib/locales/ar/endings.mjs +37 -0
  132. package/src/lib/locales/ar/endings.mjs.map +1 -0
  133. package/src/lib/locales/ar/index.js +2 -1
  134. package/src/lib/locales/ar/index.js.map +1 -1
  135. package/src/lib/locales/ar/index.mjs +2 -1
  136. package/src/lib/locales/ar/index.mjs.map +1 -1
  137. package/src/lib/locales/ar/list.js +9 -1
  138. package/src/lib/locales/ar/list.js.map +1 -1
  139. package/src/lib/locales/ar/list.mjs +9 -1
  140. package/src/lib/locales/ar/list.mjs.map +1 -1
  141. package/src/lib/locales/ar/options.js +4 -0
  142. package/src/lib/locales/ar/options.js.map +1 -1
  143. package/src/lib/locales/ar/options.mjs +4 -0
  144. package/src/lib/locales/ar/options.mjs.map +1 -1
  145. package/src/lib/locales/ar/panel.js +20 -0
  146. package/src/lib/locales/ar/panel.js.map +1 -1
  147. package/src/lib/locales/ar/panel.mjs +20 -0
  148. package/src/lib/locales/ar/panel.mjs.map +1 -1
  149. package/src/lib/locales/ar/questions.js +24 -1
  150. package/src/lib/locales/ar/questions.js.map +1 -1
  151. package/src/lib/locales/ar/questions.mjs +24 -1
  152. package/src/lib/locales/ar/questions.mjs.map +1 -1
  153. package/src/lib/locales/ar/refusals.js +15 -2
  154. package/src/lib/locales/ar/refusals.js.map +1 -1
  155. package/src/lib/locales/ar/refusals.mjs +15 -2
  156. package/src/lib/locales/ar/refusals.mjs.map +1 -1
  157. package/src/lib/locales/ar/rules-ui.js +21 -1
  158. package/src/lib/locales/ar/rules-ui.js.map +1 -1
  159. package/src/lib/locales/ar/rules-ui.mjs +21 -1
  160. package/src/lib/locales/ar/rules-ui.mjs.map +1 -1
  161. package/src/lib/locales/ar/rules.js +4 -0
  162. package/src/lib/locales/ar/rules.js.map +1 -1
  163. package/src/lib/locales/ar/rules.mjs +4 -0
  164. package/src/lib/locales/ar/rules.mjs.map +1 -1
  165. package/src/lib/locales/en/changes.d.mts +2 -0
  166. package/src/lib/locales/en/changes.d.ts +2 -0
  167. package/src/lib/locales/en/changes.js +2 -0
  168. package/src/lib/locales/en/changes.js.map +1 -1
  169. package/src/lib/locales/en/changes.mjs +2 -0
  170. package/src/lib/locales/en/changes.mjs.map +1 -1
  171. package/src/lib/locales/en/checks.d.mts +2 -0
  172. package/src/lib/locales/en/checks.d.ts +2 -0
  173. package/src/lib/locales/en/checks.js +2 -0
  174. package/src/lib/locales/en/checks.js.map +1 -1
  175. package/src/lib/locales/en/checks.mjs +2 -0
  176. package/src/lib/locales/en/checks.mjs.map +1 -1
  177. package/src/lib/locales/en/endings.d.mts +38 -0
  178. package/src/lib/locales/en/endings.d.ts +38 -0
  179. package/src/lib/locales/en/endings.js +44 -0
  180. package/src/lib/locales/en/endings.js.map +1 -0
  181. package/src/lib/locales/en/endings.mjs +41 -0
  182. package/src/lib/locales/en/endings.mjs.map +1 -0
  183. package/src/lib/locales/en/index.d.mts +127 -1
  184. package/src/lib/locales/en/index.d.ts +127 -1
  185. package/src/lib/locales/en/index.js +2 -1
  186. package/src/lib/locales/en/index.js.map +1 -1
  187. package/src/lib/locales/en/index.mjs +2 -1
  188. package/src/lib/locales/en/index.mjs.map +1 -1
  189. package/src/lib/locales/en/list.d.mts +8 -0
  190. package/src/lib/locales/en/list.d.ts +8 -0
  191. package/src/lib/locales/en/list.js +9 -1
  192. package/src/lib/locales/en/list.js.map +1 -1
  193. package/src/lib/locales/en/list.mjs +9 -1
  194. package/src/lib/locales/en/list.mjs.map +1 -1
  195. package/src/lib/locales/en/options.d.mts +6 -0
  196. package/src/lib/locales/en/options.d.ts +6 -0
  197. package/src/lib/locales/en/options.js +6 -0
  198. package/src/lib/locales/en/options.js.map +1 -1
  199. package/src/lib/locales/en/options.mjs +6 -0
  200. package/src/lib/locales/en/options.mjs.map +1 -1
  201. package/src/lib/locales/en/panel.d.mts +13 -0
  202. package/src/lib/locales/en/panel.d.ts +13 -0
  203. package/src/lib/locales/en/panel.js +13 -0
  204. package/src/lib/locales/en/panel.js.map +1 -1
  205. package/src/lib/locales/en/panel.mjs +13 -0
  206. package/src/lib/locales/en/panel.mjs.map +1 -1
  207. package/src/lib/locales/en/questions.d.mts +25 -0
  208. package/src/lib/locales/en/questions.d.ts +25 -0
  209. package/src/lib/locales/en/questions.js +25 -1
  210. package/src/lib/locales/en/questions.js.map +1 -1
  211. package/src/lib/locales/en/questions.mjs +25 -1
  212. package/src/lib/locales/en/questions.mjs.map +1 -1
  213. package/src/lib/locales/en/refusals.d.mts +13 -0
  214. package/src/lib/locales/en/refusals.d.ts +13 -0
  215. package/src/lib/locales/en/refusals.js +15 -2
  216. package/src/lib/locales/en/refusals.js.map +1 -1
  217. package/src/lib/locales/en/refusals.mjs +15 -2
  218. package/src/lib/locales/en/refusals.mjs.map +1 -1
  219. package/src/lib/locales/en/rules-ui.d.mts +29 -1
  220. package/src/lib/locales/en/rules-ui.d.ts +29 -1
  221. package/src/lib/locales/en/rules-ui.js +23 -1
  222. package/src/lib/locales/en/rules-ui.js.map +1 -1
  223. package/src/lib/locales/en/rules-ui.mjs +23 -1
  224. package/src/lib/locales/en/rules-ui.mjs.map +1 -1
  225. package/src/lib/locales/en/rules.d.mts +3 -0
  226. package/src/lib/locales/en/rules.d.ts +3 -0
  227. package/src/lib/locales/en/rules.js +4 -0
  228. package/src/lib/locales/en/rules.js.map +1 -1
  229. package/src/lib/locales/en/rules.mjs +4 -0
  230. package/src/lib/locales/en/rules.mjs.map +1 -1
  231. package/src/lib/option-when.d.mts +32 -0
  232. package/src/lib/option-when.d.ts +32 -0
  233. package/src/lib/option-when.js +110 -0
  234. package/src/lib/option-when.js.map +1 -0
  235. package/src/lib/option-when.mjs +106 -0
  236. package/src/lib/option-when.mjs.map +1 -0
  237. package/src/lib/page-checks.d.mts +2 -1
  238. package/src/lib/page-checks.d.ts +2 -1
  239. package/src/lib/page-checks.js +14 -2
  240. package/src/lib/page-checks.js.map +1 -1
  241. package/src/lib/page-checks.mjs +15 -3
  242. package/src/lib/page-checks.mjs.map +1 -1
  243. package/src/lib/page-json.d.mts +5 -3
  244. package/src/lib/page-json.d.ts +5 -3
  245. package/src/lib/page-json.js +4 -4
  246. package/src/lib/page-json.js.map +1 -1
  247. package/src/lib/page-json.mjs +4 -4
  248. package/src/lib/page-json.mjs.map +1 -1
  249. package/src/lib/page-tree.js +3 -3
  250. package/src/lib/page-tree.js.map +1 -1
  251. package/src/lib/page-tree.mjs +4 -4
  252. package/src/lib/page-tree.mjs.map +1 -1
  253. package/src/lib/panel-block.js +3 -1
  254. package/src/lib/panel-block.js.map +1 -1
  255. package/src/lib/panel-block.mjs +3 -1
  256. package/src/lib/panel-block.mjs.map +1 -1
  257. package/src/lib/panel-field.js +4 -1
  258. package/src/lib/panel-field.js.map +1 -1
  259. package/src/lib/panel-field.mjs +4 -1
  260. package/src/lib/panel-field.mjs.map +1 -1
  261. package/src/lib/panel-page.js +16 -2
  262. package/src/lib/panel-page.js.map +1 -1
  263. package/src/lib/panel-page.mjs +16 -2
  264. package/src/lib/panel-page.mjs.map +1 -1
  265. package/src/lib/placeholder-when.js +2 -2
  266. package/src/lib/placeholder-when.js.map +1 -1
  267. package/src/lib/placeholder-when.mjs +2 -2
  268. package/src/lib/placeholder-when.mjs.map +1 -1
  269. package/src/lib/rules-answers.js +10 -4
  270. package/src/lib/rules-answers.js.map +1 -1
  271. package/src/lib/rules-answers.mjs +11 -5
  272. package/src/lib/rules-answers.mjs.map +1 -1
  273. package/src/lib/rules-checks.d.mts +2 -2
  274. package/src/lib/rules-checks.d.ts +2 -2
  275. package/src/lib/rules-checks.js +23 -3
  276. package/src/lib/rules-checks.js.map +1 -1
  277. package/src/lib/rules-checks.mjs +24 -4
  278. package/src/lib/rules-checks.mjs.map +1 -1
  279. package/src/lib/rules-commands.d.mts +5 -3
  280. package/src/lib/rules-commands.d.ts +5 -3
  281. package/src/lib/rules-commands.js +17 -17
  282. package/src/lib/rules-commands.js.map +1 -1
  283. package/src/lib/rules-commands.mjs +17 -17
  284. package/src/lib/rules-commands.mjs.map +1 -1
  285. package/src/lib/rules-defaults.js +3 -1
  286. package/src/lib/rules-defaults.js.map +1 -1
  287. package/src/lib/rules-defaults.mjs +3 -1
  288. package/src/lib/rules-defaults.mjs.map +1 -1
  289. package/src/lib/rules-formula-box.d.mts +4 -2
  290. package/src/lib/rules-formula-box.d.ts +4 -2
  291. package/src/lib/rules-formula-box.js +3 -1
  292. package/src/lib/rules-formula-box.js.map +1 -1
  293. package/src/lib/rules-formula-box.mjs +3 -1
  294. package/src/lib/rules-formula-box.mjs.map +1 -1
  295. package/src/lib/rules-formula.d.mts +13 -6
  296. package/src/lib/rules-formula.d.ts +13 -6
  297. package/src/lib/rules-formula.js +65 -24
  298. package/src/lib/rules-formula.js.map +1 -1
  299. package/src/lib/rules-formula.mjs +65 -25
  300. package/src/lib/rules-formula.mjs.map +1 -1
  301. package/src/lib/rules-sample.d.mts +4 -2
  302. package/src/lib/rules-sample.d.ts +4 -2
  303. package/src/lib/rules-sample.js +5 -4
  304. package/src/lib/rules-sample.js.map +1 -1
  305. package/src/lib/rules-sample.mjs +5 -4
  306. package/src/lib/rules-sample.mjs.map +1 -1
  307. package/src/lib/rules-worked-out.js +72 -17
  308. package/src/lib/rules-worked-out.js.map +1 -1
  309. package/src/lib/rules-worked-out.mjs +73 -18
  310. package/src/lib/rules-worked-out.mjs.map +1 -1
  311. package/src/lib/screen-canvas.js +3 -1
  312. package/src/lib/screen-canvas.js.map +1 -1
  313. package/src/lib/screen-canvas.mjs +3 -1
  314. package/src/lib/screen-canvas.mjs.map +1 -1
  315. package/src/lib/steps-commands.d.mts +5 -3
  316. package/src/lib/steps-commands.d.ts +5 -3
  317. package/src/lib/steps-commands.js +5 -5
  318. package/src/lib/steps-commands.js.map +1 -1
  319. package/src/lib/steps-commands.mjs +5 -5
  320. package/src/lib/steps-commands.mjs.map +1 -1
  321. package/src/lib/steps-editor.js +3 -2
  322. package/src/lib/steps-editor.js.map +1 -1
  323. package/src/lib/steps-editor.mjs +3 -2
  324. package/src/lib/steps-editor.mjs.map +1 -1
  325. package/src/lib/steps-map.d.mts +3 -1
  326. package/src/lib/steps-map.d.ts +3 -1
  327. package/src/lib/steps-map.js +1 -1
  328. package/src/lib/steps-map.js.map +1 -1
  329. package/src/lib/steps-map.mjs +1 -1
  330. package/src/lib/steps-map.mjs.map +1 -1
  331. package/src/lib/steps-settings.d.mts +3 -1
  332. package/src/lib/steps-settings.d.ts +3 -1
  333. package/src/lib/steps-settings.js +5 -2
  334. package/src/lib/steps-settings.js.map +1 -1
  335. package/src/lib/steps-settings.mjs +5 -2
  336. package/src/lib/steps-settings.mjs.map +1 -1
  337. package/src/lib/styles-endings.d.mts +6 -0
  338. package/src/lib/styles-endings.d.ts +6 -0
  339. package/src/lib/styles-endings.js +42 -0
  340. package/src/lib/styles-endings.js.map +1 -0
  341. package/src/lib/styles-endings.mjs +39 -0
  342. package/src/lib/styles-endings.mjs.map +1 -0
  343. package/src/lib/styles-kinds.d.mts +1 -1
  344. package/src/lib/styles-kinds.d.ts +1 -1
  345. package/src/lib/styles-kinds.js +1 -0
  346. package/src/lib/styles-kinds.js.map +1 -1
  347. package/src/lib/styles-kinds.mjs +1 -0
  348. package/src/lib/styles-kinds.mjs.map +1 -1
  349. package/src/lib/styles-rules.d.mts +1 -1
  350. package/src/lib/styles-rules.d.ts +1 -1
  351. package/src/lib/styles-rules.js +6 -1
  352. package/src/lib/styles-rules.js.map +1 -1
  353. package/src/lib/styles-rules.mjs +6 -1
  354. package/src/lib/styles-rules.mjs.map +1 -1
  355. package/src/lib/styles.d.mts +1 -1
  356. package/src/lib/styles.d.ts +1 -1
  357. package/src/lib/styles.js +18 -2
  358. package/src/lib/styles.js.map +1 -1
  359. package/src/lib/styles.mjs +18 -2
  360. package/src/lib/styles.mjs.map +1 -1
  361. package/src/lib/survey-editor.js +14 -4
  362. package/src/lib/survey-editor.js.map +1 -1
  363. package/src/lib/survey-editor.mjs +14 -4
  364. package/src/lib/survey-editor.mjs.map +1 -1
  365. package/src/lib/table-commands.d.mts +4 -2
  366. package/src/lib/table-commands.d.ts +4 -2
  367. package/src/lib/table-commands.js +4 -3
  368. package/src/lib/table-commands.js.map +1 -1
  369. package/src/lib/table-commands.mjs +4 -3
  370. package/src/lib/table-commands.mjs.map +1 -1
  371. package/src/lib/try-it.js +2 -0
  372. package/src/lib/try-it.js.map +1 -1
  373. package/src/lib/try-it.mjs +2 -0
  374. package/src/lib/try-it.mjs.map +1 -1
  375. package/src/lib/uncalled.d.mts +7 -0
  376. package/src/lib/uncalled.d.ts +7 -0
  377. package/src/lib/uncalled.js +21 -0
  378. package/src/lib/uncalled.js.map +1 -0
  379. package/src/lib/uncalled.mjs +18 -0
  380. package/src/lib/uncalled.mjs.map +1 -0
  381. package/src/lib/validate-edit.d.mts +3 -2
  382. package/src/lib/validate-edit.d.ts +3 -2
  383. package/src/lib/validate-edit.js +4 -3
  384. package/src/lib/validate-edit.js.map +1 -1
  385. package/src/lib/validate-edit.mjs +4 -3
  386. package/src/lib/validate-edit.mjs.map +1 -1
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.limitsSettings = limitsSettings;
4
+ const date_setting_1 = require("./date-setting");
5
+ const number_box_1 = require("./number-box");
6
+ const panel_controls_1 = require("./panel-controls");
7
+ /**
8
+ * When a form of responses takes answers, and how many (`limits`), and Continue later (`continueLater`), on the screen's
9
+ * panel (panel-page.ts) beside the bot check: when it opens and closes, on the page's clock, typed in the designer's
10
+ * own date box; the most responses and one per person, counted on the app's server; its words while it takes none,
11
+ * once something says when or how many. Continue later on any screen people type a whole answer in.
12
+ */
13
+ function limitsSettings(el, designer) {
14
+ const w = designer.words.panel;
15
+ const focused = (node) => node.ownerDocument.activeElement === node;
16
+ const limits = () => designer.getPage().limits ?? {};
17
+ /** A day alone, as a page may write one: its end, for a close (the form takes answers through it); its start, to open. */
18
+ const asMoment = (written, end) => (written && /^\d{4}-\d{2}-\d{2}$/.test(written) ? `${written}T${end ? '23:59' : '00:00'}` : written ?? null);
19
+ const opens = (0, date_setting_1.settingDate)(el, designer, { kind: 'datetime', label: w.limitsOpens, attrs: { class: 'fd-input', 'aria-label': w.limitsOpens }, saved: () => asMoment(limits().opens, false), commit: (value) => designer.setPageLimits({ opens: value }) });
20
+ const closes = (0, date_setting_1.settingDate)(el, designer, { kind: 'datetime', label: w.limitsCloses, attrs: { class: 'fd-input', 'aria-label': w.limitsCloses }, saved: () => asMoment(limits().closes, true), commit: (value) => designer.setPageLimits({ closes: value }) });
21
+ const most = (0, number_box_1.settingNumber)(el, designer, {
22
+ label: w.limitsMost,
23
+ attrs: { class: 'fd-input', 'aria-label': w.limitsMost },
24
+ integer: true,
25
+ min: 1,
26
+ optional: true,
27
+ saved: () => limits().maxResponses ?? null,
28
+ commit: (n) => designer.setPageLimits({ maxResponses: n }),
29
+ });
30
+ const one = el('input', { type: 'checkbox', class: 'fd-check', 'aria-label': w.limitsOne });
31
+ one.addEventListener('change', () => designer.setPageLimits({ onePerPerson: one.checked }));
32
+ const message = el('textarea', { class: 'fd-input fd-insp-area', 'aria-label': w.limitsMessage, rows: '2', placeholder: w.optional });
33
+ message.addEventListener('input', () => designer.setPageLimits({ message: message.value }));
34
+ const later = el('input', { type: 'checkbox', class: 'fd-check', 'aria-label': w.continueLaterOn });
35
+ later.addEventListener('change', () => designer.setContinueLater(later.checked));
36
+ const opensRow = (0, panel_controls_1.setting)(el, 'rules', 'Opens on', opens.input, { hint: w.limitsOpensHint, words: w.limitsOpens });
37
+ const closesRow = (0, panel_controls_1.setting)(el, 'rules', 'Closes on', closes.input, { hint: w.limitsClosesHint, words: w.limitsCloses });
38
+ const mostRow = (0, panel_controls_1.setting)(el, 'rules', 'Most responses', most.input, { hint: w.limitsMostHint, words: w.limitsMost });
39
+ const oneRow = (0, panel_controls_1.setting)(el, 'rules', 'One response per person', one, { hint: w.limitsOneHint, words: w.limitsOne });
40
+ const messageRow = (0, panel_controls_1.setting)(el, 'rules', 'Words while it takes none', message, { hint: w.limitsMessageHint, words: w.limitsMessage });
41
+ const laterRow = (0, panel_controls_1.setting)(el, 'rules', 'Continue later', later, { hint: w.continueLaterHint, words: w.continueLater });
42
+ return {
43
+ rows: [opensRow, closesRow, mostRow, oneRow, messageRow, laterRow],
44
+ destroy() {
45
+ opens.destroy();
46
+ closes.destroy();
47
+ most.destroy();
48
+ },
49
+ update(page) {
50
+ // A form of responses opens and closes; a screen of records opens and closes with its app.
51
+ const responses = page.data.kind === 'responses';
52
+ opensRow.hidden = closesRow.hidden = mostRow.hidden = oneRow.hidden = !responses;
53
+ // Its words say why it takes none: once something says when or how many.
54
+ messageRow.hidden = !responses || !page.limits;
55
+ laterRow.hidden = page.layout.type === 'list';
56
+ opens.refresh();
57
+ closes.refresh();
58
+ most.refresh();
59
+ one.checked = page.limits?.onePerPerson === true;
60
+ if (!focused(message))
61
+ message.value = page.limits?.message ?? '';
62
+ later.checked = page.continueLater === true;
63
+ },
64
+ };
65
+ }
66
+ //# sourceMappingURL=limits-settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limits-settings.js","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/limits-settings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import { settingDate } from './date-setting.mjs';
2
+ import { settingNumber } from './number-box.mjs';
3
+ import { setting } from './panel-controls.mjs';
4
+ /**
5
+ * When a form of responses takes answers, and how many (`limits`), and Continue later (`continueLater`), on the screen's
6
+ * panel (panel-page.ts) beside the bot check: when it opens and closes, on the page's clock, typed in the designer's
7
+ * own date box; the most responses and one per person, counted on the app's server; its words while it takes none,
8
+ * once something says when or how many. Continue later on any screen people type a whole answer in.
9
+ */
10
+ export function limitsSettings(el, designer) {
11
+ const w = designer.words.panel;
12
+ const focused = (node) => node.ownerDocument.activeElement === node;
13
+ const limits = () => designer.getPage().limits ?? {};
14
+ /** A day alone, as a page may write one: its end, for a close (the form takes answers through it); its start, to open. */
15
+ const asMoment = (written, end) => (written && /^\d{4}-\d{2}-\d{2}$/.test(written) ? `${written}T${end ? '23:59' : '00:00'}` : written ?? null);
16
+ const opens = settingDate(el, designer, { kind: 'datetime', label: w.limitsOpens, attrs: { class: 'fd-input', 'aria-label': w.limitsOpens }, saved: () => asMoment(limits().opens, false), commit: (value) => designer.setPageLimits({ opens: value }) });
17
+ const closes = settingDate(el, designer, { kind: 'datetime', label: w.limitsCloses, attrs: { class: 'fd-input', 'aria-label': w.limitsCloses }, saved: () => asMoment(limits().closes, true), commit: (value) => designer.setPageLimits({ closes: value }) });
18
+ const most = settingNumber(el, designer, {
19
+ label: w.limitsMost,
20
+ attrs: { class: 'fd-input', 'aria-label': w.limitsMost },
21
+ integer: true,
22
+ min: 1,
23
+ optional: true,
24
+ saved: () => limits().maxResponses ?? null,
25
+ commit: (n) => designer.setPageLimits({ maxResponses: n }),
26
+ });
27
+ const one = el('input', { type: 'checkbox', class: 'fd-check', 'aria-label': w.limitsOne });
28
+ one.addEventListener('change', () => designer.setPageLimits({ onePerPerson: one.checked }));
29
+ const message = el('textarea', { class: 'fd-input fd-insp-area', 'aria-label': w.limitsMessage, rows: '2', placeholder: w.optional });
30
+ message.addEventListener('input', () => designer.setPageLimits({ message: message.value }));
31
+ const later = el('input', { type: 'checkbox', class: 'fd-check', 'aria-label': w.continueLaterOn });
32
+ later.addEventListener('change', () => designer.setContinueLater(later.checked));
33
+ const opensRow = setting(el, 'rules', 'Opens on', opens.input, { hint: w.limitsOpensHint, words: w.limitsOpens });
34
+ const closesRow = setting(el, 'rules', 'Closes on', closes.input, { hint: w.limitsClosesHint, words: w.limitsCloses });
35
+ const mostRow = setting(el, 'rules', 'Most responses', most.input, { hint: w.limitsMostHint, words: w.limitsMost });
36
+ const oneRow = setting(el, 'rules', 'One response per person', one, { hint: w.limitsOneHint, words: w.limitsOne });
37
+ const messageRow = setting(el, 'rules', 'Words while it takes none', message, { hint: w.limitsMessageHint, words: w.limitsMessage });
38
+ const laterRow = setting(el, 'rules', 'Continue later', later, { hint: w.continueLaterHint, words: w.continueLater });
39
+ return {
40
+ rows: [opensRow, closesRow, mostRow, oneRow, messageRow, laterRow],
41
+ destroy() {
42
+ opens.destroy();
43
+ closes.destroy();
44
+ most.destroy();
45
+ },
46
+ update(page) {
47
+ // A form of responses opens and closes; a screen of records opens and closes with its app.
48
+ const responses = page.data.kind === 'responses';
49
+ opensRow.hidden = closesRow.hidden = mostRow.hidden = oneRow.hidden = !responses;
50
+ // Its words say why it takes none: once something says when or how many.
51
+ messageRow.hidden = !responses || !page.limits;
52
+ laterRow.hidden = page.layout.type === 'list';
53
+ opens.refresh();
54
+ closes.refresh();
55
+ most.refresh();
56
+ one.checked = page.limits?.onePerPerson === true;
57
+ if (!focused(message))
58
+ message.value = page.limits?.message ?? '';
59
+ later.checked = page.continueLater === true;
60
+ },
61
+ };
62
+ }
63
+ //# sourceMappingURL=limits-settings.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limits-settings.mjs","sourceRoot":"","sources":["../../../../../libs/designer/src/lib/limits-settings.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
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';
1
+ import { type ButtonNode, type Field, type FilterCondition, type FilterRange, type FilterItem, type FilterPeriod, type FunctionsKnown, type ListCalendar, type ListCard, type ListCell, type ListGallery, type ListMap, type Modifier, type Page, type ToneWhen } from '@fieldia/core';
2
2
  import type { TableButton } from './table-commands.mjs';
3
3
  /**
4
4
  * A list page, as the designer edits it: its columns, its order, how many
@@ -32,6 +32,18 @@ export interface ListOptionsPatch extends RowRulesPatch {
32
32
  field: string;
33
33
  label: string;
34
34
  };
35
+ /**
36
+ * A field the filter bar offers, filtered by its range — From and To, a press for each of its least values — or, null,
37
+ * by its values to tick (a whole number's: a decimal, an amount and a date are always filtered by their range).
38
+ */
39
+ filterRange?: {
40
+ field: string;
41
+ range: FilterRange | null;
42
+ };
43
+ /** How many records each value and named filter finds, beside it: true asks for it, false takes it away. */
44
+ filterCounts?: boolean;
45
+ /** On a phone, the filter bar's fields in a sheet with "Show 37 results": true asks for it, false takes it away. */
46
+ filterSheet?: boolean;
35
47
  /** The link to the list's own records its rows nest under; null for none. */
36
48
  parentField?: string | null;
37
49
  /** The records on a calendar too: when each starts and ends, its words, its colour, a column for each; null for none. */
@@ -87,8 +99,12 @@ export interface ListCommands {
87
99
  export declare const ruleIsGood: (rule: unknown) => boolean;
88
100
  /** A column's width: 1 to 200 characters, or "8px" to "4000px" for the whole column. */
89
101
  export declare const widthIsGood: (width: unknown) => boolean;
90
- /** Kinds of field whose values a list's filter bar can offer to tick. */
102
+ /** Kinds of field a list's filter bar can offer: their values to tick, or their range (a number's, a date's). */
91
103
  export declare const FILTERABLE: Set<string>;
104
+ /** Kinds of field the filter bar filters by their range: a whole number where the page says so, the rest always. */
105
+ export declare const RANGEABLE: ReadonlySet<string>;
106
+ /** Kinds whose range is all the filter bar takes of them. */
107
+ export declare const RANGE_ONLY: ReadonlySet<string>;
92
108
  /** Whether a column can show this field. */
93
109
  export declare const canBeColumn: (field: Field) => boolean;
94
110
  /** How a column is picked on the canvas: by its field. */
@@ -115,11 +131,13 @@ export declare function setRowRules(target: {
115
131
  rowBold?: Modifier;
116
132
  rowBoldLabel?: string;
117
133
  rowButtons?: ButtonNode[];
118
- }, options: RowRulesPatch, draft: Page, reads: Page): void;
134
+ }, options: RowRulesPatch, draft: Page, reads: Page, functions?: FunctionsKnown): void;
119
135
  /** The fields a filter reads, through its groups. */
120
136
  export declare function filterFields(items: readonly FilterItem[]): string[];
121
137
  export declare function listCommands(context: {
122
138
  apply(edit: (draft: Page) => void, merge?: string | null): boolean;
139
+ /** The app's own functions a formula may call. */
140
+ functions?: FunctionsKnown;
123
141
  select(id: string | null): void;
124
142
  selected(): string | null;
125
143
  model: Record<string, Field>;
@@ -1,4 +1,4 @@
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';
1
+ import { type ButtonNode, type Field, type FilterCondition, type FilterRange, type FilterItem, type FilterPeriod, type FunctionsKnown, type ListCalendar, type ListCard, type ListCell, type ListGallery, type ListMap, type Modifier, type Page, type ToneWhen } from '@fieldia/core';
2
2
  import type { TableButton } from './table-commands';
3
3
  /**
4
4
  * A list page, as the designer edits it: its columns, its order, how many
@@ -32,6 +32,18 @@ export interface ListOptionsPatch extends RowRulesPatch {
32
32
  field: string;
33
33
  label: string;
34
34
  };
35
+ /**
36
+ * A field the filter bar offers, filtered by its range — From and To, a press for each of its least values — or, null,
37
+ * by its values to tick (a whole number's: a decimal, an amount and a date are always filtered by their range).
38
+ */
39
+ filterRange?: {
40
+ field: string;
41
+ range: FilterRange | null;
42
+ };
43
+ /** How many records each value and named filter finds, beside it: true asks for it, false takes it away. */
44
+ filterCounts?: boolean;
45
+ /** On a phone, the filter bar's fields in a sheet with "Show 37 results": true asks for it, false takes it away. */
46
+ filterSheet?: boolean;
35
47
  /** The link to the list's own records its rows nest under; null for none. */
36
48
  parentField?: string | null;
37
49
  /** The records on a calendar too: when each starts and ends, its words, its colour, a column for each; null for none. */
@@ -87,8 +99,12 @@ export interface ListCommands {
87
99
  export declare const ruleIsGood: (rule: unknown) => boolean;
88
100
  /** A column's width: 1 to 200 characters, or "8px" to "4000px" for the whole column. */
89
101
  export declare const widthIsGood: (width: unknown) => boolean;
90
- /** Kinds of field whose values a list's filter bar can offer to tick. */
102
+ /** Kinds of field a list's filter bar can offer: their values to tick, or their range (a number's, a date's). */
91
103
  export declare const FILTERABLE: Set<string>;
104
+ /** Kinds of field the filter bar filters by their range: a whole number where the page says so, the rest always. */
105
+ export declare const RANGEABLE: ReadonlySet<string>;
106
+ /** Kinds whose range is all the filter bar takes of them. */
107
+ export declare const RANGE_ONLY: ReadonlySet<string>;
92
108
  /** Whether a column can show this field. */
93
109
  export declare const canBeColumn: (field: Field) => boolean;
94
110
  /** How a column is picked on the canvas: by its field. */
@@ -115,11 +131,13 @@ export declare function setRowRules(target: {
115
131
  rowBold?: Modifier;
116
132
  rowBoldLabel?: string;
117
133
  rowButtons?: ButtonNode[];
118
- }, options: RowRulesPatch, draft: Page, reads: Page): void;
134
+ }, options: RowRulesPatch, draft: Page, reads: Page, functions?: FunctionsKnown): void;
119
135
  /** The fields a filter reads, through its groups. */
120
136
  export declare function filterFields(items: readonly FilterItem[]): string[];
121
137
  export declare function listCommands(context: {
122
138
  apply(edit: (draft: Page) => void, merge?: string | null): boolean;
139
+ /** The app's own functions a formula may call. */
140
+ functions?: FunctionsKnown;
123
141
  select(id: string | null): void;
124
142
  selected(): string | null;
125
143
  model: Record<string, Field>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.columnId = exports.canBeColumn = exports.FILTERABLE = exports.widthIsGood = exports.ruleIsGood = void 0;
3
+ exports.columnId = exports.canBeColumn = exports.RANGE_ONLY = exports.RANGEABLE = exports.FILTERABLE = exports.widthIsGood = exports.ruleIsGood = void 0;
4
4
  exports.setRowRules = setRowRules;
5
5
  exports.filterFields = filterFields;
6
6
  exports.listCommands = listCommands;
@@ -9,14 +9,19 @@ const kinds_1 = require("./kinds");
9
9
  const page_tree_1 = require("./page-tree");
10
10
  const refusal_1 = require("./refusal");
11
11
  const rules_formula_1 = require("./rules-formula");
12
+ const en_1 = require("./locales/en");
12
13
  /** Its header's rule: none (false), or set in "0px" to "400px" from the column's end. */
13
14
  const ruleIsGood = (rule) => rule === false || (typeof rule === 'string' && /^(\d|[1-9]\d|[1-3]\d{2}|400)px$/.test(rule));
14
15
  exports.ruleIsGood = ruleIsGood;
15
16
  /** A column's width: 1 to 200 characters, or "8px" to "4000px" for the whole column. */
16
17
  const widthIsGood = (width) => typeof width === 'number' ? Number.isInteger(width) && width >= 1 && width <= 200 : typeof width === 'string' && /^([89]|[1-9]\d{1,2}|[1-3]\d{3}|4000)px$/.test(width);
17
18
  exports.widthIsGood = widthIsGood;
18
- /** Kinds of field whose values a list's filter bar can offer to tick. */
19
- exports.FILTERABLE = new Set(['selection', 'many2one', 'many2many', 'boolean', 'char', 'integer']);
19
+ /** Kinds of field a list's filter bar can offer: their values to tick, or their range (a number's, a date's). */
20
+ exports.FILTERABLE = new Set(['selection', 'many2one', 'many2many', 'boolean', 'char', 'integer', 'float', 'monetary', 'date', 'datetime']);
21
+ /** Kinds of field the filter bar filters by their range: a whole number where the page says so, the rest always. */
22
+ exports.RANGEABLE = new Set(['integer', 'float', 'monetary', 'date', 'datetime']);
23
+ /** Kinds whose range is all the filter bar takes of them. */
24
+ exports.RANGE_ONLY = new Set(['float', 'monetary', 'date', 'datetime']);
20
25
  /** Kinds of field a column cannot show: lines, rich text, files and raw data. */
21
26
  const NOT_IN_A_COLUMN = new Set(['one2many', 'html', 'binary', 'json']);
22
27
  /** Whether a column can show this field. */
@@ -36,10 +41,10 @@ const actionName = (label) => label
36
41
  * a row's record (`reads`: a page whose fields are its records' — the list page itself, or a related list's own
37
42
  * `fields`), a button kept by its id, a new one named afresh in the page, each doing something.
38
43
  */
39
- function setRowRules(target, options, draft, reads) {
44
+ function setRowRules(target, options, draft, reads, functions) {
40
45
  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)));
46
+ if ((0, rules_formula_1.formulaProblem)(reads, when, en_1.en, functions))
47
+ throw new refusal_1.Refusal((w) => w.rules.inWhen((0, rules_formula_1.problemWords)((0, rules_formula_1.formulaProblem)(reads, when, w, functions), w)));
43
48
  };
44
49
  if (options.rowTones !== undefined) {
45
50
  const kept = (options.rowTones ?? []).map((item) => ({ tone: item.tone, when: typeof item.when === 'string' ? item.when.trim() : item.when, ...(item.label?.trim() ? { label: item.label.trim() } : {}) }));
@@ -285,10 +290,23 @@ function listCommands(context) {
285
290
  if (options.search === 'fields')
286
291
  list.search = 'fields';
287
292
  else if (options.search === 'bar') {
288
- // The fields' values, and their names on the bar, belong to the filter bar alone.
293
+ // The fields' values, their names, ranges and sheet on the bar, belong to the filter bar alone.
289
294
  delete list.search;
290
295
  delete list.filterFields;
291
296
  delete list.filterLabels;
297
+ delete list.filterRanges;
298
+ delete list.filterSheet;
299
+ }
300
+ if (options.filterCounts === true)
301
+ list.filterCounts = true;
302
+ else if (options.filterCounts === false)
303
+ delete list.filterCounts;
304
+ if (options.filterSheet === false)
305
+ delete list.filterSheet;
306
+ else if (options.filterSheet === true) {
307
+ if (list.search !== 'fields')
308
+ throw new refusal_1.Refusal((w) => w.refusals.sheetNeedsFilterBar);
309
+ list.filterSheet = true;
292
310
  }
293
311
  if (options.filterFields !== undefined) {
294
312
  for (const name of options.filterFields) {
@@ -300,12 +318,46 @@ function listCommands(context) {
300
318
  list.filterFields = [...options.filterFields];
301
319
  else
302
320
  delete list.filterFields;
303
- // A filter no longer offered takes its own name with it.
321
+ // A filter no longer offered takes its own name and its range with it.
304
322
  const named = Object.entries(list.filterLabels ?? {}).filter(([name]) => list.filterFields?.includes(name));
305
323
  if (named.length)
306
324
  list.filterLabels = Object.fromEntries(named);
307
325
  else
308
326
  delete list.filterLabels;
327
+ const ranges = Object.entries(list.filterRanges ?? {}).filter(([name]) => list.filterFields?.includes(name));
328
+ if (ranges.length)
329
+ list.filterRanges = Object.fromEntries(ranges);
330
+ else
331
+ delete list.filterRanges;
332
+ }
333
+ if (options.filterRange !== undefined) {
334
+ const { field, range } = options.filterRange;
335
+ const def = fieldFor(draft, field);
336
+ if (!list.filterFields?.includes(field))
337
+ throw new refusal_1.Refusal((w) => w.refusals.filterLabelNotOffered(def.label));
338
+ if (!exports.RANGEABLE.has(def.type))
339
+ throw new refusal_1.Refusal((w) => w.refusals.notRangeable(def.label));
340
+ const ranges = { ...list.filterRanges };
341
+ const least = range?.atLeast ?? [];
342
+ if (least.length) {
343
+ if (def.type === 'date' || def.type === 'datetime')
344
+ throw new refusal_1.Refusal((w) => w.refusals.atLeastNeedsNumber(def.label));
345
+ if (least.some((n) => !Number.isFinite(n)))
346
+ throw new refusal_1.Refusal((w) => w.refusals.atLeastNotNumbers(def.label));
347
+ if (def.type === 'integer' && least.some((n) => !Number.isInteger(n)))
348
+ throw new refusal_1.Refusal((w) => w.refusals.atLeastWhole(def.label));
349
+ }
350
+ // Least values a press each, from the smallest, each once.
351
+ const sorted = [...new Set(least)].sort((a, b) => a - b);
352
+ // A whole number's range is its own choice; another's is there whatever is named, kept only for its presses.
353
+ if (!range || (!sorted.length && exports.RANGE_ONLY.has(def.type)))
354
+ delete ranges[field];
355
+ else
356
+ ranges[field] = sorted.length ? { atLeast: sorted } : {};
357
+ if (Object.keys(ranges).length)
358
+ list.filterRanges = ranges;
359
+ else
360
+ delete list.filterRanges;
309
361
  }
310
362
  if (options.filterLabel !== undefined) {
311
363
  const { field, label } = options.filterLabel;
@@ -361,7 +413,7 @@ function listCommands(context) {
361
413
  else if (options.gallery !== undefined)
362
414
  list.gallery = { ...options.gallery };
363
415
  // A row's own rules: conditions on its record, refused in words where they do not read.
364
- setRowRules(list, options, draft, draft);
416
+ setRowRules(list, options, draft, draft, context.functions);
365
417
  if (options.optionalColumn !== undefined) {
366
418
  const { field, starts } = options.optionalColumn;
367
419
  if (!list.columns.includes(field))
@@ -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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"}