@antelopejs/interface-dms 0.3.4 → 0.3.6

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 (701) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/README.md +2 -2
  3. package/dist/attachments.d.ts +19 -10
  4. package/dist/attachments.js +15 -0
  5. package/dist/attachments.js.map +1 -1
  6. package/dist/auth/db/internal/sessions.model.d.ts +9 -0
  7. package/dist/auth/db/internal/sessions.model.js +31 -0
  8. package/dist/auth/db/internal/sessions.model.js.map +1 -0
  9. package/dist/auth/db/models/sessions.model.d.ts +16 -2
  10. package/dist/auth/db/models/sessions.model.js +33 -41
  11. package/dist/auth/db/models/sessions.model.js.map +1 -1
  12. package/dist/auth/db/models/userExternalIdentities.model.d.ts +11 -0
  13. package/dist/auth/db/models/userExternalIdentities.model.js +11 -0
  14. package/dist/auth/db/models/userExternalIdentities.model.js.map +1 -1
  15. package/dist/auth/db/models/users.model.d.ts +13 -0
  16. package/dist/auth/db/models/users.model.js +13 -0
  17. package/dist/auth/db/models/users.model.js.map +1 -1
  18. package/dist/auth/db/tables/sessions.table.d.ts +6 -1
  19. package/dist/auth/db/tables/sessions.table.js +0 -4
  20. package/dist/auth/db/tables/sessions.table.js.map +1 -1
  21. package/dist/auth/db/tables/userExternalIdentities.table.d.ts +24 -0
  22. package/dist/auth/db/tables/userExternalIdentities.table.js +13 -0
  23. package/dist/auth/db/tables/userExternalIdentities.table.js.map +1 -1
  24. package/dist/auth/db/tables/users.table.d.ts +60 -0
  25. package/dist/auth/db/tables/users.table.js +32 -0
  26. package/dist/auth/db/tables/users.table.js.map +1 -1
  27. package/dist/auth/index.d.ts +114 -10
  28. package/dist/auth/index.js +110 -17
  29. package/dist/auth/index.js.map +1 -1
  30. package/dist/auth/internal/request-authenticators.d.ts +6 -0
  31. package/dist/auth/internal/request-authenticators.js +82 -0
  32. package/dist/auth/internal/request-authenticators.js.map +1 -0
  33. package/dist/auth/internal/request-principal.d.ts +10 -0
  34. package/dist/auth/internal/request-principal.js +27 -0
  35. package/dist/auth/internal/request-principal.js.map +1 -0
  36. package/dist/auth/internal/user-agent.d.ts +10 -0
  37. package/dist/auth/internal/user-agent.js +3 -0
  38. package/dist/auth/internal/user-agent.js.map +1 -0
  39. package/dist/auth/password.d.ts +19 -0
  40. package/dist/auth/password.js +23 -0
  41. package/dist/auth/password.js.map +1 -1
  42. package/dist/auth/request-authenticators.d.ts +4 -3
  43. package/dist/auth/request-authenticators.js +0 -77
  44. package/dist/auth/request-authenticators.js.map +1 -1
  45. package/dist/base/activity-feed.d.ts +210 -0
  46. package/dist/base/activity-feed.js +104 -0
  47. package/dist/base/activity-feed.js.map +1 -0
  48. package/dist/base/banner.d.ts +111 -0
  49. package/dist/base/banner.js +93 -0
  50. package/dist/base/banner.js.map +1 -0
  51. package/dist/base/block-registry/helpers.d.ts +26 -0
  52. package/dist/base/block-registry/helpers.js +27 -1
  53. package/dist/base/block-registry/helpers.js.map +1 -1
  54. package/dist/base/block-registry/internal/describe.d.ts +35 -0
  55. package/dist/base/block-registry/{describe.js → internal/describe.js} +50 -0
  56. package/dist/base/block-registry/internal/describe.js.map +1 -0
  57. package/dist/base/block-registry/internal/ui.d.ts +23 -0
  58. package/dist/base/block-registry/internal/ui.js +35 -0
  59. package/dist/base/block-registry/internal/ui.js.map +1 -0
  60. package/dist/base/block-registry/registry.d.ts +24 -0
  61. package/dist/base/block-registry/registry.js +30 -1
  62. package/dist/base/block-registry/registry.js.map +1 -1
  63. package/dist/base/block-registry/types.d.ts +149 -0
  64. package/dist/base/block-types.d.ts +22 -2
  65. package/dist/base/block-types.js +24 -2
  66. package/dist/base/block-types.js.map +1 -1
  67. package/dist/base/card.d.ts +100 -0
  68. package/dist/base/card.js +91 -0
  69. package/dist/base/card.js.map +1 -0
  70. package/dist/base/chart-card.d.ts +9 -2
  71. package/dist/base/chart-card.js +14 -1
  72. package/dist/base/chart-card.js.map +1 -1
  73. package/dist/base/chart-schemas.d.ts +127 -115
  74. package/dist/base/chart-schemas.js +18 -56
  75. package/dist/base/chart-schemas.js.map +1 -1
  76. package/dist/base/chart-type.d.ts +15 -0
  77. package/dist/base/chart-type.js +20 -0
  78. package/dist/base/chart-type.js.map +1 -0
  79. package/dist/base/chart.d.ts +31 -22
  80. package/dist/base/chart.js +27 -54
  81. package/dist/base/chart.js.map +1 -1
  82. package/dist/base/confirm-dialog.d.ts +6 -0
  83. package/dist/base/confirm-dialog.js +18 -0
  84. package/dist/base/confirm-dialog.js.map +1 -0
  85. package/dist/base/data-sources.d.ts +38 -0
  86. package/dist/base/data-sources.js +13 -0
  87. package/dist/base/data-sources.js.map +1 -1
  88. package/dist/base/data-types/compare-types.d.ts +0 -2
  89. package/dist/base/data-types/compare-types.js +18 -13
  90. package/dist/base/data-types/compare-types.js.map +1 -1
  91. package/dist/base/data-types/core.d.ts +55 -0
  92. package/dist/base/data-types/core.js +42 -0
  93. package/dist/base/data-types/core.js.map +1 -1
  94. package/dist/base/data-types/default-types.d.ts +241 -62
  95. package/dist/base/data-types/default-types.js +257 -135
  96. package/dist/base/data-types/default-types.js.map +1 -1
  97. package/dist/base/data-types/field-types.d.ts +164 -0
  98. package/dist/base/data-types/field-types.js +236 -0
  99. package/dist/base/data-types/field-types.js.map +1 -0
  100. package/dist/base/data-types/index.d.ts +1 -0
  101. package/dist/base/data-types/index.js +21 -0
  102. package/dist/base/data-types/index.js.map +1 -1
  103. package/dist/base/data-types/internal/compare-types.d.ts +3 -0
  104. package/dist/base/data-types/internal/compare-types.js +15 -0
  105. package/dist/base/data-types/internal/compare-types.js.map +1 -0
  106. package/dist/base/data-types/status-type.d.ts +2 -1
  107. package/dist/base/data-types/status-type.js +6 -0
  108. package/dist/base/data-types/status-type.js.map +1 -1
  109. package/dist/base/display.d.ts +124 -0
  110. package/dist/base/display.js +95 -0
  111. package/dist/base/display.js.map +1 -0
  112. package/dist/base/empty-state.d.ts +106 -0
  113. package/dist/base/empty-state.js +109 -0
  114. package/dist/base/empty-state.js.map +1 -0
  115. package/dist/base/export-jobs.d.ts +39 -1
  116. package/dist/base/export-jobs.js +12 -3
  117. package/dist/base/export-jobs.js.map +1 -1
  118. package/dist/base/form-block-schema.d.ts +345 -28
  119. package/dist/base/form-block-schema.js +83 -12
  120. package/dist/base/form-block-schema.js.map +1 -1
  121. package/dist/base/form-schema.d.ts +137 -22
  122. package/dist/base/form-schema.js +139 -42
  123. package/dist/base/form-schema.js.map +1 -1
  124. package/dist/base/form-types.d.ts +139 -4
  125. package/dist/base/form-types.js +7 -1
  126. package/dist/base/form-types.js.map +1 -1
  127. package/dist/base/form.js +7 -0
  128. package/dist/base/form.js.map +1 -1
  129. package/dist/base/grid.d.ts +57 -0
  130. package/dist/base/grid.js +43 -0
  131. package/dist/base/grid.js.map +1 -1
  132. package/dist/base/helpers/file-refs.js +5 -1
  133. package/dist/base/helpers/file-refs.js.map +1 -1
  134. package/dist/base/index.d.ts +11 -1
  135. package/dist/base/index.js +16 -1
  136. package/dist/base/index.js.map +1 -1
  137. package/dist/base/internal/button-availability.d.ts +17 -0
  138. package/dist/base/internal/button-availability.js +31 -0
  139. package/dist/base/internal/button-availability.js.map +1 -0
  140. package/dist/base/internal/chart-schemas.d.ts +6 -0
  141. package/dist/base/internal/chart-schemas.js +70 -0
  142. package/dist/base/internal/chart-schemas.js.map +1 -0
  143. package/dist/base/internal/chart.d.ts +22 -0
  144. package/dist/base/internal/chart.js +37 -0
  145. package/dist/base/internal/chart.js.map +1 -0
  146. package/dist/base/internal/confirm-dialog.d.ts +13 -0
  147. package/dist/base/internal/confirm-dialog.js +24 -0
  148. package/dist/base/internal/confirm-dialog.js.map +1 -0
  149. package/dist/base/internal/display.d.ts +13 -0
  150. package/dist/base/internal/display.js +18 -0
  151. package/dist/base/internal/display.js.map +1 -0
  152. package/dist/base/internal/export-jobs.d.ts +2 -0
  153. package/dist/base/internal/export-jobs.js +6 -0
  154. package/dist/base/internal/export-jobs.js.map +1 -0
  155. package/dist/base/internal/form-block-schema.d.ts +6 -0
  156. package/dist/base/internal/form-block-schema.js +10 -0
  157. package/dist/base/internal/form-block-schema.js.map +1 -0
  158. package/dist/base/internal/form-schema.d.ts +7 -0
  159. package/dist/base/internal/form-schema.js +26 -0
  160. package/dist/base/internal/form-schema.js.map +1 -0
  161. package/dist/base/internal/layouts.d.ts +39 -0
  162. package/dist/base/internal/layouts.js +3 -0
  163. package/dist/base/internal/layouts.js.map +1 -0
  164. package/dist/base/internal/query-response.d.ts +24 -0
  165. package/dist/base/internal/query-response.js +47 -0
  166. package/dist/base/internal/query-response.js.map +1 -0
  167. package/dist/base/internal/searchable.d.ts +6 -0
  168. package/dist/base/internal/searchable.js +15 -0
  169. package/dist/base/internal/searchable.js.map +1 -0
  170. package/dist/base/key-value-list.d.ts +160 -0
  171. package/dist/base/key-value-list.js +107 -0
  172. package/dist/base/key-value-list.js.map +1 -0
  173. package/dist/base/kpi-card.d.ts +12 -4
  174. package/dist/base/kpi-card.js +7 -0
  175. package/dist/base/kpi-card.js.map +1 -1
  176. package/dist/base/layouts.d.ts +35 -0
  177. package/dist/base/layouts.js +41 -7
  178. package/dist/base/layouts.js.map +1 -1
  179. package/dist/base/meter.d.ts +186 -0
  180. package/dist/base/meter.js +134 -0
  181. package/dist/base/meter.js.map +1 -0
  182. package/dist/base/nav-card-grid.d.ts +173 -0
  183. package/dist/base/nav-card-grid.js +89 -0
  184. package/dist/base/nav-card-grid.js.map +1 -0
  185. package/dist/base/period-selector.d.ts +20 -0
  186. package/dist/base/period-selector.js +23 -0
  187. package/dist/base/period-selector.js.map +1 -1
  188. package/dist/base/placeholder.d.ts +26 -0
  189. package/dist/base/placeholder.js +12 -0
  190. package/dist/base/placeholder.js.map +1 -1
  191. package/dist/base/query-response.d.ts +51 -1
  192. package/dist/base/query-response.js +43 -26
  193. package/dist/base/query-response.js.map +1 -1
  194. package/dist/base/resource-form-schema.d.ts +18 -0
  195. package/dist/base/resource-form-schema.js +20 -3
  196. package/dist/base/resource-form-schema.js.map +1 -1
  197. package/dist/base/searchable.d.ts +2 -0
  198. package/dist/base/searchable.js +4 -0
  199. package/dist/base/searchable.js.map +1 -1
  200. package/dist/base/section.d.ts +105 -0
  201. package/dist/base/section.js +123 -0
  202. package/dist/base/section.js.map +1 -0
  203. package/dist/base/stack.d.ts +113 -0
  204. package/dist/base/stack.js +58 -0
  205. package/dist/base/stack.js.map +1 -1
  206. package/dist/base/stat-group.d.ts +152 -0
  207. package/dist/base/stat-group.js +97 -0
  208. package/dist/base/stat-group.js.map +1 -0
  209. package/dist/base/tab.d.ts +25 -8
  210. package/dist/base/tab.js +11 -0
  211. package/dist/base/tab.js.map +1 -1
  212. package/dist/base/table-view/column-display.d.ts +195 -0
  213. package/dist/base/table-view/column-display.js +131 -0
  214. package/dist/base/table-view/column-display.js.map +1 -0
  215. package/dist/base/table-view/data-functions.d.ts +36 -14
  216. package/dist/base/table-view/data-functions.js +26 -1
  217. package/dist/base/table-view/data-functions.js.map +1 -1
  218. package/dist/base/table-view/factory-helpers.d.ts +0 -42
  219. package/dist/base/table-view/factory-helpers.js +1 -244
  220. package/dist/base/table-view/factory-helpers.js.map +1 -1
  221. package/dist/base/table-view/factory.d.ts +5 -1
  222. package/dist/base/table-view/factory.js +158 -202
  223. package/dist/base/table-view/factory.js.map +1 -1
  224. package/dist/base/table-view/internal/auth.d.ts +33 -0
  225. package/dist/base/table-view/{auth.js → internal/auth.js} +45 -6
  226. package/dist/base/table-view/internal/auth.js.map +1 -0
  227. package/dist/base/table-view/internal/column-display.d.ts +18 -0
  228. package/dist/base/table-view/internal/column-display.js +37 -0
  229. package/dist/base/table-view/internal/column-display.js.map +1 -0
  230. package/dist/base/table-view/internal/data-functions.d.ts +14 -0
  231. package/dist/base/table-view/internal/data-functions.js +3 -0
  232. package/dist/base/table-view/internal/data-functions.js.map +1 -0
  233. package/dist/base/table-view/internal/factory-helpers.d.ts +213 -0
  234. package/dist/base/table-view/internal/factory-helpers.js +477 -0
  235. package/dist/base/table-view/internal/factory-helpers.js.map +1 -0
  236. package/dist/base/table-view/{files.d.ts → internal/files.d.ts} +5 -0
  237. package/dist/base/table-view/{files.js → internal/files.js} +14 -4
  238. package/dist/base/table-view/internal/files.js.map +1 -0
  239. package/dist/base/table-view/internal/footer.d.ts +33 -0
  240. package/dist/base/table-view/internal/footer.js +112 -0
  241. package/dist/base/table-view/internal/footer.js.map +1 -0
  242. package/dist/base/table-view/{guards.d.ts → internal/guards.d.ts} +3 -0
  243. package/dist/base/table-view/internal/guards.js +134 -0
  244. package/dist/base/table-view/internal/guards.js.map +1 -0
  245. package/dist/base/table-view/internal/meta.d.ts +5 -0
  246. package/dist/base/table-view/internal/meta.js +13 -0
  247. package/dist/base/table-view/internal/meta.js.map +1 -0
  248. package/dist/base/table-view/internal/nav-badges.d.ts +9 -0
  249. package/dist/base/table-view/internal/nav-badges.js +79 -0
  250. package/dist/base/table-view/internal/nav-badges.js.map +1 -0
  251. package/dist/base/table-view/internal/options.d.ts +6 -0
  252. package/dist/base/table-view/internal/options.js +10 -0
  253. package/dist/base/table-view/internal/options.js.map +1 -0
  254. package/dist/base/table-view/internal/realtime-listeners.d.ts +4 -0
  255. package/dist/base/table-view/internal/realtime-listeners.js +7 -0
  256. package/dist/base/table-view/internal/realtime-listeners.js.map +1 -0
  257. package/dist/base/table-view/internal/realtime.d.ts +39 -0
  258. package/dist/base/table-view/internal/realtime.js +163 -0
  259. package/dist/base/table-view/internal/realtime.js.map +1 -0
  260. package/dist/base/table-view/internal/request-filter.d.ts +75 -0
  261. package/dist/base/table-view/internal/request-filter.js +154 -0
  262. package/dist/base/table-view/internal/request-filter.js.map +1 -0
  263. package/dist/base/table-view/internal/resource-form.d.ts +25 -0
  264. package/dist/base/table-view/internal/resource-form.js +91 -0
  265. package/dist/base/table-view/internal/resource-form.js.map +1 -0
  266. package/dist/base/table-view/{row-rules.d.ts → internal/row-rules.d.ts} +5 -2
  267. package/dist/base/table-view/{row-rules.js → internal/row-rules.js} +20 -19
  268. package/dist/base/table-view/internal/row-rules.js.map +1 -0
  269. package/dist/base/table-view/internal/tabs.d.ts +39 -0
  270. package/dist/base/table-view/internal/tabs.js +116 -0
  271. package/dist/base/table-view/internal/tabs.js.map +1 -0
  272. package/dist/base/table-view/internal/validation.d.ts +99 -0
  273. package/dist/base/table-view/internal/validation.js +297 -0
  274. package/dist/base/table-view/internal/validation.js.map +1 -0
  275. package/dist/base/table-view/internal/views.d.ts +14 -0
  276. package/dist/base/table-view/internal/views.js +42 -0
  277. package/dist/base/table-view/internal/views.js.map +1 -0
  278. package/dist/base/table-view/internal/writer.d.ts +39 -0
  279. package/dist/base/table-view/internal/writer.js +55 -0
  280. package/dist/base/table-view/internal/writer.js.map +1 -0
  281. package/dist/base/table-view/meta.d.ts +77 -4
  282. package/dist/base/table-view/meta.js +133 -13
  283. package/dist/base/table-view/meta.js.map +1 -1
  284. package/dist/base/table-view/options.d.ts +749 -28
  285. package/dist/base/table-view/options.js +9 -2
  286. package/dist/base/table-view/options.js.map +1 -1
  287. package/dist/base/table-view/realtime.d.ts +26 -17
  288. package/dist/base/table-view/realtime.js +29 -126
  289. package/dist/base/table-view/realtime.js.map +1 -1
  290. package/dist/base/table-view/resource-form.d.ts +11 -5
  291. package/dist/base/table-view/resource-form.js +15 -59
  292. package/dist/base/table-view/resource-form.js.map +1 -1
  293. package/dist/base/table-view/routes.d.ts +29 -0
  294. package/dist/base/table-view/routes.js +71 -6
  295. package/dist/base/table-view/routes.js.map +1 -1
  296. package/dist/base/table-view/schema.d.ts +483 -69
  297. package/dist/base/table-view/schema.js +163 -18
  298. package/dist/base/table-view/schema.js.map +1 -1
  299. package/dist/base/table-view/source.d.ts +62 -0
  300. package/dist/base/table-view/source.js +161 -0
  301. package/dist/base/table-view/source.js.map +1 -0
  302. package/dist/base/table-view/views.d.ts +20 -0
  303. package/dist/base/table-view/views.js +38 -0
  304. package/dist/base/table-view/views.js.map +1 -0
  305. package/dist/base/table-view/writer.d.ts +7 -0
  306. package/dist/base/table-view/writer.js +17 -0
  307. package/dist/base/table-view/writer.js.map +1 -0
  308. package/dist/base/table-view.d.ts +34 -6
  309. package/dist/base/table-view.js +42 -6
  310. package/dist/base/table-view.js.map +1 -1
  311. package/dist/base/tenant-export-archive.d.ts +21 -0
  312. package/dist/base/tenant-export-archive.js +11 -0
  313. package/dist/base/tenant-export-archive.js.map +1 -1
  314. package/dist/base/top-list-card.d.ts +35 -12
  315. package/dist/base/top-list-card.js +24 -0
  316. package/dist/base/top-list-card.js.map +1 -1
  317. package/dist/base/types/action-target.d.ts +36 -20
  318. package/dist/base/types/component-input.d.ts +3 -0
  319. package/dist/base/types/confirm-dialog.d.ts +69 -0
  320. package/dist/base/types/confirm-dialog.js +3 -0
  321. package/dist/base/types/confirm-dialog.js.map +1 -0
  322. package/dist/base/types/custom-button.d.ts +48 -2
  323. package/dist/base/types/enum-option.d.ts +9 -0
  324. package/dist/base/types/error.d.ts +9 -0
  325. package/dist/base/types/error.js +7 -1
  326. package/dist/base/types/error.js.map +1 -1
  327. package/dist/base/types/export-status.d.ts +3 -0
  328. package/dist/base/types/export-status.js +3 -0
  329. package/dist/base/types/export-status.js.map +1 -1
  330. package/dist/base/types/field-config.d.ts +3 -0
  331. package/dist/base/types/form-mode.d.ts +3 -0
  332. package/dist/base/types/form-mode.js +3 -0
  333. package/dist/base/types/form-mode.js.map +1 -1
  334. package/dist/base/types/form-values.d.ts +6 -0
  335. package/dist/base/types/guards.d.ts +37 -7
  336. package/dist/base/types/index.d.ts +2 -0
  337. package/dist/base/types/index.js +2 -0
  338. package/dist/base/types/index.js.map +1 -1
  339. package/dist/base/types/internal/action-target.d.ts +8 -0
  340. package/dist/base/types/internal/action-target.js +16 -0
  341. package/dist/base/types/internal/action-target.js.map +1 -0
  342. package/dist/base/types/json.d.ts +6 -0
  343. package/dist/base/types/orientation.d.ts +3 -0
  344. package/dist/base/types/orientation.js +3 -0
  345. package/dist/base/types/orientation.js.map +1 -1
  346. package/dist/base/types/readonly-behavior.d.ts +9 -0
  347. package/dist/base/types/readonly-behavior.js +3 -0
  348. package/dist/base/types/readonly-behavior.js.map +1 -1
  349. package/dist/base/types/row-action.d.ts +111 -0
  350. package/dist/base/types/size.d.ts +1 -0
  351. package/dist/base/types/size.js +4 -0
  352. package/dist/base/types/size.js.map +1 -1
  353. package/dist/base/types/tone.d.ts +14 -0
  354. package/dist/base/types/tone.js +24 -0
  355. package/dist/base/types/tone.js.map +1 -0
  356. package/dist/client-base-url.d.ts +8 -0
  357. package/dist/client-base-url.js +8 -0
  358. package/dist/client-base-url.js.map +1 -1
  359. package/dist/component-slots.d.ts +17 -2
  360. package/dist/component-slots.js +18 -66
  361. package/dist/component-slots.js.map +1 -1
  362. package/dist/component.d.ts +113 -0
  363. package/dist/component.js +84 -1
  364. package/dist/component.js.map +1 -1
  365. package/dist/data-controllers/members.d.ts +16 -1
  366. package/dist/data-controllers/members.js +87 -26
  367. package/dist/data-controllers/members.js.map +1 -1
  368. package/dist/data-controllers/roles.d.ts +1 -0
  369. package/dist/data-controllers/roles.js +3 -3
  370. package/dist/data-controllers/roles.js.map +1 -1
  371. package/dist/db/{models → internal}/exportJobs.model.d.ts +2 -0
  372. package/dist/db/{models → internal}/exportJobs.model.js +4 -1
  373. package/dist/db/internal/exportJobs.model.js.map +1 -0
  374. package/dist/db/internal/inviteResolutions.model.d.ts +34 -0
  375. package/dist/db/internal/inviteResolutions.model.js +80 -0
  376. package/dist/db/internal/inviteResolutions.model.js.map +1 -0
  377. package/dist/db/internal/table-names.d.ts +4 -0
  378. package/dist/db/internal/table-names.js +8 -0
  379. package/dist/db/internal/table-names.js.map +1 -0
  380. package/dist/db/{models → internal}/tenantLifecycle.model.d.ts +10 -1
  381. package/dist/db/{models → internal}/tenantLifecycle.model.js +10 -1
  382. package/dist/db/internal/tenantLifecycle.model.js.map +1 -0
  383. package/dist/db/{tables → internal}/tenantLifecycle.table.d.ts +6 -0
  384. package/dist/db/{tables → internal}/tenantLifecycle.table.js +6 -0
  385. package/dist/db/internal/tenantLifecycle.table.js.map +1 -0
  386. package/dist/db/models/index.d.ts +0 -2
  387. package/dist/db/models/index.js +0 -2
  388. package/dist/db/models/index.js.map +1 -1
  389. package/dist/db/models/inviteResolutions.model.d.ts +1 -25
  390. package/dist/db/models/inviteResolutions.model.js +0 -68
  391. package/dist/db/models/inviteResolutions.model.js.map +1 -1
  392. package/dist/db/models/roles.model.d.ts +6 -0
  393. package/dist/db/models/roles.model.js +6 -0
  394. package/dist/db/models/roles.model.js.map +1 -1
  395. package/dist/db/models/tenantMembers.model.js +1 -1
  396. package/dist/db/models/tenantMembers.model.js.map +1 -1
  397. package/dist/db/models/user_invites.model.d.ts +24 -0
  398. package/dist/db/models/user_invites.model.js +25 -1
  399. package/dist/db/models/user_invites.model.js.map +1 -1
  400. package/dist/db/tables/exportJobs.table.d.ts +5 -1
  401. package/dist/db/tables/exportJobs.table.js +3 -3
  402. package/dist/db/tables/exportJobs.table.js.map +1 -1
  403. package/dist/db/tables/index.d.ts +0 -1
  404. package/dist/db/tables/index.js +0 -1
  405. package/dist/db/tables/index.js.map +1 -1
  406. package/dist/db/tables/inviteResolutions.table.d.ts +1 -1
  407. package/dist/db/tables/inviteResolutions.table.js +4 -3
  408. package/dist/db/tables/inviteResolutions.table.js.map +1 -1
  409. package/dist/db/tables/roles.table.d.ts +2 -0
  410. package/dist/db/tables/roles.table.js +4 -0
  411. package/dist/db/tables/roles.table.js.map +1 -1
  412. package/dist/db/tables/tenantMembers.table.d.ts +1 -0
  413. package/dist/db/tables/user_invites.table.d.ts +11 -0
  414. package/dist/db/tables/user_invites.table.js +4 -0
  415. package/dist/db/tables/user_invites.table.js.map +1 -1
  416. package/dist/guards.d.ts +36 -0
  417. package/dist/guards.js +30 -1
  418. package/dist/guards.js.map +1 -1
  419. package/dist/hooks.d.ts +133 -1
  420. package/dist/hooks.js +87 -1
  421. package/dist/hooks.js.map +1 -1
  422. package/dist/html-render/index.d.ts +15 -0
  423. package/dist/html-render/index.js +15 -0
  424. package/dist/html-render/index.js.map +1 -1
  425. package/dist/html-render/types.d.ts +4 -0
  426. package/dist/index.d.ts +6 -7
  427. package/dist/index.js +12 -17
  428. package/dist/index.js.map +1 -1
  429. package/dist/internal/attachments.d.ts +16 -0
  430. package/dist/internal/attachments.js +3 -0
  431. package/dist/internal/attachments.js.map +1 -0
  432. package/dist/internal/component-slots.d.ts +27 -0
  433. package/dist/internal/component-slots.js +97 -0
  434. package/dist/internal/component-slots.js.map +1 -0
  435. package/dist/internal/invite-membership.d.ts +8 -0
  436. package/dist/{invite-membership.js → internal/invite-membership.js} +11 -5
  437. package/dist/internal/invite-membership.js.map +1 -0
  438. package/dist/internal/invite-replacement.d.ts +7 -0
  439. package/dist/{invite-replacement.js → internal/invite-replacement.js} +8 -3
  440. package/dist/internal/invite-replacement.js.map +1 -0
  441. package/dist/internal/invite-resolution.d.ts +3 -0
  442. package/dist/internal/invite-resolution.js +50 -0
  443. package/dist/internal/invite-resolution.js.map +1 -0
  444. package/dist/internal/invites.d.ts +31 -0
  445. package/dist/internal/invites.js +44 -0
  446. package/dist/internal/invites.js.map +1 -0
  447. package/dist/internal/permission-gate.d.ts +23 -0
  448. package/dist/internal/permission-gate.js +43 -0
  449. package/dist/internal/permission-gate.js.map +1 -0
  450. package/dist/internal/tenant-access.d.ts +28 -0
  451. package/dist/internal/tenant-access.js +28 -0
  452. package/dist/internal/tenant-access.js.map +1 -0
  453. package/dist/internal/tenant-ownership.d.ts +13 -0
  454. package/dist/internal/tenant-ownership.js +95 -0
  455. package/dist/internal/tenant-ownership.js.map +1 -0
  456. package/dist/internal/uploads.d.ts +19 -0
  457. package/dist/internal/uploads.js +3 -0
  458. package/dist/internal/uploads.js.map +1 -0
  459. package/dist/invite-extensions/availability.d.ts +28 -3
  460. package/dist/invite-extensions/availability.js +26 -23
  461. package/dist/invite-extensions/availability.js.map +1 -1
  462. package/dist/invite-extensions/internal/availability.d.ts +12 -0
  463. package/dist/invite-extensions/internal/availability.js +32 -0
  464. package/dist/invite-extensions/internal/availability.js.map +1 -0
  465. package/dist/invite-extensions/internal/delivery.d.ts +44 -0
  466. package/dist/invite-extensions/{delivery.js → internal/delivery.js} +38 -0
  467. package/dist/invite-extensions/internal/delivery.js.map +1 -0
  468. package/dist/invite-extensions/internal/edit.d.ts +34 -0
  469. package/dist/invite-extensions/{edit.js → internal/edit.js} +33 -0
  470. package/dist/invite-extensions/internal/edit.js.map +1 -0
  471. package/dist/invite-extensions/internal/field-ids.d.ts +21 -0
  472. package/dist/invite-extensions/{field-ids.js → internal/field-ids.js} +13 -0
  473. package/dist/invite-extensions/internal/field-ids.js.map +1 -0
  474. package/dist/invite-extensions/internal/form-slot.d.ts +13 -0
  475. package/dist/invite-extensions/{form-slot.js → internal/form-slot.js} +49 -4
  476. package/dist/invite-extensions/internal/form-slot.js.map +1 -0
  477. package/dist/invite-extensions/internal/payload-slices.d.ts +31 -0
  478. package/dist/invite-extensions/{payload-slices.js → internal/payload-slices.js} +30 -0
  479. package/dist/invite-extensions/internal/payload-slices.js.map +1 -0
  480. package/dist/invite-extensions/internal/registry.d.ts +48 -0
  481. package/dist/invite-extensions/internal/registry.js +77 -0
  482. package/dist/invite-extensions/internal/registry.js.map +1 -0
  483. package/dist/invite-extensions/internal/types.d.ts +61 -0
  484. package/dist/invite-extensions/internal/types.js +3 -0
  485. package/dist/invite-extensions/internal/types.js.map +1 -0
  486. package/dist/invite-extensions/registry.d.ts +44 -12
  487. package/dist/invite-extensions/registry.js +51 -43
  488. package/dist/invite-extensions/registry.js.map +1 -1
  489. package/dist/invite-extensions/types.d.ts +59 -34
  490. package/dist/invite-extensions.d.ts +30 -4
  491. package/dist/invite-extensions.js +57 -7
  492. package/dist/invite-extensions.js.map +1 -1
  493. package/dist/invite-resolution.d.ts +5 -2
  494. package/dist/invite-resolution.js +16 -46
  495. package/dist/invite-resolution.js.map +1 -1
  496. package/dist/invitee-display-name.d.ts +5 -0
  497. package/dist/invitee-display-name.js +15 -0
  498. package/dist/invitee-display-name.js.map +1 -0
  499. package/dist/invites.d.ts +54 -17
  500. package/dist/invites.js +49 -34
  501. package/dist/invites.js.map +1 -1
  502. package/dist/layout-banners.d.ts +68 -0
  503. package/dist/layout-banners.js +18 -0
  504. package/dist/layout-banners.js.map +1 -1
  505. package/dist/notifications/builder.d.ts +3 -1
  506. package/dist/notifications/builder.js +10 -0
  507. package/dist/notifications/builder.js.map +1 -1
  508. package/dist/notifications/index.d.ts +1 -0
  509. package/dist/notifications/index.js +16 -0
  510. package/dist/notifications/index.js.map +1 -1
  511. package/dist/notifications/internal.d.ts +8 -5
  512. package/dist/notifications/internal.js +6 -0
  513. package/dist/notifications/internal.js.map +1 -1
  514. package/dist/notifications/sendable.d.ts +6 -0
  515. package/dist/notifications/sendable.js +13 -4
  516. package/dist/notifications/sendable.js.map +1 -1
  517. package/dist/notifications/types.d.ts +26 -1
  518. package/dist/page/categories.d.ts +19 -17
  519. package/dist/page/categories.js +24 -168
  520. package/dist/page/categories.js.map +1 -1
  521. package/dist/page/component-tree.d.ts +15 -1
  522. package/dist/page/component-tree.js +0 -40
  523. package/dist/page/component-tree.js.map +1 -1
  524. package/dist/page/controllers.d.ts +135 -0
  525. package/dist/page/controllers.js +124 -8
  526. package/dist/page/controllers.js.map +1 -1
  527. package/dist/page/declaration-conflict.d.ts +9 -0
  528. package/dist/page/declaration-conflict.js +17 -0
  529. package/dist/page/declaration-conflict.js.map +1 -0
  530. package/dist/page/form-page-routes.d.ts +7 -10
  531. package/dist/page/form-page-routes.js +14 -31
  532. package/dist/page/form-page-routes.js.map +1 -1
  533. package/dist/page/internal/categories.d.ts +62 -0
  534. package/dist/page/internal/categories.js +260 -0
  535. package/dist/page/internal/categories.js.map +1 -0
  536. package/dist/page/internal/component-target.d.ts +37 -0
  537. package/dist/page/{component-target.js → internal/component-target.js} +27 -2
  538. package/dist/page/internal/component-target.js.map +1 -0
  539. package/dist/page/internal/component-tree.d.ts +13 -0
  540. package/dist/page/internal/component-tree.js +61 -0
  541. package/dist/page/internal/component-tree.js.map +1 -0
  542. package/dist/page/{extension-assembly.d.ts → internal/extension-assembly.d.ts} +5 -2
  543. package/dist/page/{extension-assembly.js → internal/extension-assembly.js} +8 -0
  544. package/dist/page/internal/extension-assembly.js.map +1 -0
  545. package/dist/page/internal/extension-validation.d.ts +24 -0
  546. package/dist/page/{extension-validation.js → internal/extension-validation.js} +8 -0
  547. package/dist/page/internal/extension-validation.js.map +1 -0
  548. package/dist/page/internal/form-page-routes.d.ts +26 -0
  549. package/dist/page/internal/form-page-routes.js +40 -0
  550. package/dist/page/internal/form-page-routes.js.map +1 -0
  551. package/dist/page/internal/layout-filter.d.ts +21 -0
  552. package/dist/page/internal/layout-filter.js +101 -0
  553. package/dist/page/internal/layout-filter.js.map +1 -0
  554. package/dist/page/{metadata-helpers.d.ts → internal/metadata-helpers.d.ts} +4 -1
  555. package/dist/page/{metadata-helpers.js → internal/metadata-helpers.js} +19 -2
  556. package/dist/page/internal/metadata-helpers.js.map +1 -0
  557. package/dist/page/internal/nav-badges.d.ts +17 -0
  558. package/dist/page/internal/nav-badges.js +68 -0
  559. package/dist/page/internal/nav-badges.js.map +1 -0
  560. package/dist/page/internal/page-registration.d.ts +29 -0
  561. package/dist/page/internal/page-registration.js +41 -0
  562. package/dist/page/internal/page-registration.js.map +1 -0
  563. package/dist/page/internal/registry.d.ts +128 -0
  564. package/dist/page/internal/registry.js +225 -0
  565. package/dist/page/internal/registry.js.map +1 -0
  566. package/dist/page/internal/table-view-ids.d.ts +10 -0
  567. package/dist/page/internal/table-view-ids.js +39 -0
  568. package/dist/page/internal/table-view-ids.js.map +1 -0
  569. package/dist/page/internal/types.d.ts +2 -0
  570. package/dist/page/internal/types.js +6 -0
  571. package/dist/page/internal/types.js.map +1 -0
  572. package/dist/page/layout-filter.d.ts +4 -0
  573. package/dist/page/layout-filter.js +11 -0
  574. package/dist/page/layout-filter.js.map +1 -1
  575. package/dist/page/metadata.d.ts +93 -0
  576. package/dist/page/metadata.js +236 -28
  577. package/dist/page/metadata.js.map +1 -1
  578. package/dist/page/registry.d.ts +17 -36
  579. package/dist/page/registry.js +25 -127
  580. package/dist/page/registry.js.map +1 -1
  581. package/dist/page/roots.d.ts +10 -0
  582. package/dist/page/roots.js +27 -6
  583. package/dist/page/roots.js.map +1 -1
  584. package/dist/page/types.d.ts +186 -1
  585. package/dist/page/types.js +1 -2
  586. package/dist/page/types.js.map +1 -1
  587. package/dist/page.d.ts +23 -1
  588. package/dist/page.js +24 -2
  589. package/dist/page.js.map +1 -1
  590. package/dist/permission-gate.d.ts +14 -0
  591. package/dist/permission-gate.js +3 -0
  592. package/dist/permission-gate.js.map +1 -0
  593. package/dist/permissions-resolver.d.ts +24 -0
  594. package/dist/permissions-resolver.js +24 -0
  595. package/dist/permissions-resolver.js.map +1 -1
  596. package/dist/permissions.d.ts +27 -0
  597. package/dist/permissions.js +37 -0
  598. package/dist/permissions.js.map +1 -1
  599. package/dist/quick-actions.d.ts +27 -0
  600. package/dist/quick-actions.js +1 -0
  601. package/dist/quick-actions.js.map +1 -1
  602. package/dist/realtime.d.ts +29 -0
  603. package/dist/realtime.js +30 -0
  604. package/dist/realtime.js.map +1 -1
  605. package/dist/request-tenant.d.ts +17 -0
  606. package/dist/request-tenant.js +18 -1
  607. package/dist/request-tenant.js.map +1 -1
  608. package/dist/tenant-access.d.ts +38 -6
  609. package/dist/tenant-access.js +38 -8
  610. package/dist/tenant-access.js.map +1 -1
  611. package/dist/tenant-export.d.ts +19 -0
  612. package/dist/tenant-lifecycle.d.ts +13 -0
  613. package/dist/tenant-lifecycle.js +22 -1
  614. package/dist/tenant-lifecycle.js.map +1 -1
  615. package/dist/tenant-ownership.d.ts +2 -1
  616. package/dist/tenant-ownership.js +5 -85
  617. package/dist/tenant-ownership.js.map +1 -1
  618. package/dist/tenant-scoped-model.d.ts +8 -0
  619. package/dist/tenant-scoped-model.js +8 -0
  620. package/dist/tenant-scoped-model.js.map +1 -1
  621. package/dist/uploads.d.ts +24 -16
  622. package/dist/uploads.js +24 -0
  623. package/dist/uploads.js.map +1 -1
  624. package/dist/utils/fire-and-forget.d.ts +4 -0
  625. package/dist/utils/fire-and-forget.js +4 -0
  626. package/dist/utils/fire-and-forget.js.map +1 -1
  627. package/dist/utils/internal/owned-registry.d.ts +36 -0
  628. package/dist/utils/internal/owned-registry.js +60 -0
  629. package/dist/utils/internal/owned-registry.js.map +1 -0
  630. package/dist/utils/{row-instance.d.ts → internal/row-instance.d.ts} +1 -0
  631. package/dist/utils/internal/row-instance.js +12 -0
  632. package/dist/utils/internal/row-instance.js.map +1 -0
  633. package/dist/utils/internal/saas-mode.d.ts +8 -0
  634. package/dist/utils/internal/saas-mode.js +3 -0
  635. package/dist/utils/internal/saas-mode.js.map +1 -0
  636. package/dist/utils/{time.d.ts → internal/time.d.ts} +4 -0
  637. package/dist/utils/{time.js → internal/time.js} +4 -0
  638. package/dist/utils/internal/time.js.map +1 -0
  639. package/dist/utils/{type-check.d.ts → internal/type-check.d.ts} +12 -0
  640. package/dist/utils/{type-check.js → internal/type-check.js} +12 -0
  641. package/dist/utils/internal/type-check.js.map +1 -0
  642. package/dist/utils/internal/value-parser.d.ts +86 -0
  643. package/dist/utils/internal/value-parser.js +160 -0
  644. package/dist/utils/internal/value-parser.js.map +1 -0
  645. package/dist/utils/saas-mode.d.ts +25 -3
  646. package/dist/utils/saas-mode.js +24 -0
  647. package/dist/utils/saas-mode.js.map +1 -1
  648. package/package.json +3 -3
  649. package/dist/base/block-registry/describe.d.ts +0 -6
  650. package/dist/base/block-registry/describe.js.map +0 -1
  651. package/dist/base/block-registry/ui.d.ts +0 -5
  652. package/dist/base/block-registry/ui.js +0 -17
  653. package/dist/base/block-registry/ui.js.map +0 -1
  654. package/dist/base/table-view/auth.d.ts +0 -9
  655. package/dist/base/table-view/auth.js.map +0 -1
  656. package/dist/base/table-view/files.js.map +0 -1
  657. package/dist/base/table-view/guards.js +0 -85
  658. package/dist/base/table-view/guards.js.map +0 -1
  659. package/dist/base/table-view/row-rules.js.map +0 -1
  660. package/dist/base/tree.d.ts +0 -115
  661. package/dist/base/tree.js +0 -145
  662. package/dist/base/tree.js.map +0 -1
  663. package/dist/db/models/exportJobs.model.js.map +0 -1
  664. package/dist/db/models/tenantLifecycle.model.js.map +0 -1
  665. package/dist/db/tables/tenantLifecycle.table.js.map +0 -1
  666. package/dist/invite-extensions/delivery.d.ts +0 -5
  667. package/dist/invite-extensions/delivery.js.map +0 -1
  668. package/dist/invite-extensions/edit.d.ts +0 -4
  669. package/dist/invite-extensions/edit.js.map +0 -1
  670. package/dist/invite-extensions/field-ids.d.ts +0 -7
  671. package/dist/invite-extensions/field-ids.js.map +0 -1
  672. package/dist/invite-extensions/form-slot.d.ts +0 -2
  673. package/dist/invite-extensions/form-slot.js.map +0 -1
  674. package/dist/invite-extensions/internal.d.ts +0 -17
  675. package/dist/invite-extensions/internal.js +0 -55
  676. package/dist/invite-extensions/internal.js.map +0 -1
  677. package/dist/invite-extensions/payload-slices.d.ts +0 -8
  678. package/dist/invite-extensions/payload-slices.js.map +0 -1
  679. package/dist/invite-membership.d.ts +0 -3
  680. package/dist/invite-membership.js.map +0 -1
  681. package/dist/invite-replacement.d.ts +0 -2
  682. package/dist/invite-replacement.js.map +0 -1
  683. package/dist/page/component-target.d.ts +0 -10
  684. package/dist/page/component-target.js.map +0 -1
  685. package/dist/page/extension-assembly.js.map +0 -1
  686. package/dist/page/extension-validation.d.ts +0 -7
  687. package/dist/page/extension-validation.js.map +0 -1
  688. package/dist/page/metadata-helpers.js.map +0 -1
  689. package/dist/page/page-registration.d.ts +0 -13
  690. package/dist/page/page-registration.js +0 -22
  691. package/dist/page/page-registration.js.map +0 -1
  692. package/dist/utils/owned-registry.d.ts +0 -10
  693. package/dist/utils/owned-registry.js +0 -34
  694. package/dist/utils/owned-registry.js.map +0 -1
  695. package/dist/utils/row-instance.js +0 -8
  696. package/dist/utils/row-instance.js.map +0 -1
  697. package/dist/utils/time.js.map +0 -1
  698. package/dist/utils/type-check.js.map +0 -1
  699. package/dist/utils/value-parser.d.ts +0 -11
  700. package/dist/utils/value-parser.js +0 -86
  701. package/dist/utils/value-parser.js.map +0 -1
@@ -6,6 +6,7 @@ const component_1 = require("../component");
6
6
  const zod_1 = require("zod");
7
7
  const block_registry_1 = require("./block-registry");
8
8
  const size_1 = require("./types/size");
9
+ /** Every date range the selector can offer. */
9
10
  exports.PERIOD_PRESETS = [
10
11
  "last-hour",
11
12
  "last-24h",
@@ -22,16 +23,29 @@ exports.PERIOD_PRESETS = [
22
23
  "last-year",
23
24
  "custom",
24
25
  ];
26
+ /** Every comparison the selector can offer. */
25
27
  exports.PERIOD_COMPARISONS = [
26
28
  "none",
27
29
  "previous-period",
28
30
  "previous-year",
29
31
  "custom",
30
32
  ];
33
+ /** Where the selector sits in its row. */
31
34
  exports.PERIOD_ALIGNS = ["left", "center", "right"];
35
+ /** How the selector renders its presets. */
32
36
  exports.PERIOD_SELECTOR_VARIANTS = ["default", "segmented"];
37
+ /**
38
+ * The scope a selector drives when nothing else is named: the one a builder
39
+ * binds a card's period to. One selector per page needs no other.
40
+ */
33
41
  exports.DEFAULT_PERIOD_SCOPE = "page";
34
42
  const PERIOD_SELECTOR_COMPONENT_NAME = "dms-period-selector";
43
+ /**
44
+ * `options` is optional because a page is written as it is built: the editor
45
+ * places a block before anything is configured, and writes that as the bare
46
+ * call `PeriodSelector()`. A page under construction has to compile — it is typechecked
47
+ * on every edit — so a block with nothing set yet has to be a legal call.
48
+ */
35
49
  function PeriodSelector(options) {
36
50
  return new component_1.ComponentBuilder(PERIOD_SELECTOR_COMPONENT_NAME)
37
51
  .options({ ...options, id: options?.id ?? exports.DEFAULT_PERIOD_SCOPE })
@@ -40,6 +54,10 @@ function PeriodSelector(options) {
40
54
  icon: "i-ph-calendar",
41
55
  });
42
56
  }
57
+ /**
58
+ * What an editor calls each range and each comparison. The same words the
59
+ * selector shows in English, so an author sees the entry they are relabelling.
60
+ */
43
61
  const PERIOD_PRESET_LABELS = {
44
62
  "last-hour": "Last hour",
45
63
  "last-24h": "Last 24 hours",
@@ -68,7 +86,10 @@ const presetSchema = (0, block_registry_1.ui)(zod_1.z.enum(exports.PERIOD_PRESET
68
86
  const comparisonSchema = (0, block_registry_1.ui)(zod_1.z.enum(exports.PERIOD_COMPARISONS), {
69
87
  valueLabels: PERIOD_COMPARISON_LABELS,
70
88
  });
89
+ /** The options `PeriodSelector` accepts. */
71
90
  exports.PeriodSelectorSchema = zod_1.z.object({
91
+ // A card bound to a period follows the page's scope, so a selector seeded
92
+ // with an id of its own drove no card at all — and said nothing.
72
93
  id: (0, block_registry_1.ui)(zod_1.z
73
94
  .string()
74
95
  .default(exports.DEFAULT_PERIOD_SCOPE)
@@ -91,6 +112,8 @@ exports.PeriodSelectorSchema = zod_1.z.object({
91
112
  label: "Available comparisons",
92
113
  group: "behavior",
93
114
  }),
115
+ // Keyed by a closed set, so an editor lists one entry per range to relabel
116
+ // rather than asking for an object typed by hand.
94
117
  presetLabels: (0, block_registry_1.ui)(zod_1.z.record(presetSchema, zod_1.z.string()).optional(), {
95
118
  label: "Range labels",
96
119
  group: "content",
@@ -1 +1 @@
1
- {"version":3,"file":"period-selector.js","sourceRoot":"","sources":["../../src/base/period-selector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"period-selector.js","sourceRoot":"","sources":["../../src/base/period-selector.ts"],"names":[],"mappings":";;;AA2EA,wCAWC;AAtFD,4CAAgD;AAChD,6BAAwB;AACxB,qDAA+E;AAE/E,uCAAqC;AAErC,+CAA+C;AAClC,QAAA,cAAc,GAAG;IAC5B,WAAW;IACX,UAAU;IACV,OAAO;IACP,WAAW;IACX,aAAa;IACb,cAAc;IACd,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,cAAc;IACd,cAAc;IACd,KAAK;IACL,WAAW;IACX,QAAQ;CACA,CAAC;AAGX,+CAA+C;AAClC,QAAA,kBAAkB,GAAG;IAChC,MAAM;IACN,iBAAiB;IACjB,eAAe;IACf,QAAQ;CACA,CAAC;AAGX,0CAA0C;AAC7B,QAAA,aAAa,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAGlE,4CAA4C;AAC/B,QAAA,wBAAwB,GAAG,CAAC,SAAS,EAAE,WAAW,CAAU,CAAC;AAG1E;;;GAGG;AACU,QAAA,oBAAoB,GAAG,MAAM,CAAC;AAqB3C,MAAM,8BAA8B,GAAG,qBAAqB,CAAC;AAE7D;;;;;GAKG;AACH,SAAgB,cAAc,CAC5B,OAA6B;IAE7B,OAAO,IAAI,4BAAgB,CACzB,8BAA8B,CAC/B;SACE,OAAO,CAAC,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,4BAAoB,EAAE,CAAC;SAChE,IAAI,CAAC;QACJ,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,eAAe;KACtB,CAAC,CAAC;AACP,CAAC;AAED;;;GAGG;AACH,MAAM,oBAAoB,GAAiC;IACzD,WAAW,EAAE,WAAW;IACxB,UAAU,EAAE,eAAe;IAC3B,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,WAAW;IACtB,aAAa,EAAE,aAAa;IAC5B,cAAc,EAAE,cAAc;IAC9B,cAAc,EAAE,cAAc;IAC9B,YAAY,EAAE,YAAY;IAC1B,YAAY,EAAE,YAAY;IAC1B,cAAc,EAAE,cAAc;IAC9B,cAAc,EAAE,cAAc;IAC9B,GAAG,EAAE,cAAc;IACnB,WAAW,EAAE,WAAW;IACxB,MAAM,EAAE,QAAQ;CACjB,CAAC;AACF,MAAM,wBAAwB,GAAqC;IACjE,IAAI,EAAE,eAAe;IACrB,iBAAiB,EAAE,oBAAoB;IACvC,eAAe,EAAE,kBAAkB;IACnC,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,MAAM,YAAY,GAAG,IAAA,mBAAE,EAAC,OAAC,CAAC,IAAI,CAAC,sBAAc,CAAC,EAAE;IAC9C,WAAW,EAAE,oBAAoB;CAClC,CAAC,CAAC;AACH,MAAM,gBAAgB,GAAG,IAAA,mBAAE,EAAC,OAAC,CAAC,IAAI,CAAC,0BAAkB,CAAC,EAAE;IACtD,WAAW,EAAE,wBAAwB;CACtC,CAAC,CAAC;AAEH,4CAA4C;AAC/B,QAAA,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,0EAA0E;IAC1E,iEAAiE;IACjE,EAAE,EAAE,IAAA,mBAAE,EACJ,OAAC;SACE,MAAM,EAAE;SACR,OAAO,CAAC,4BAAoB,CAAC;SAC7B,QAAQ,CAAC,0CAA0C,CAAC,EACvD,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,CACzC;IACD,aAAa,EAAE,IAAA,mBAAE,EAAC,YAAY,CAAC,QAAQ,EAAE,EAAE;QACzC,KAAK,EAAE,eAAe;QACtB,KAAK,EAAE,UAAU;QACjB,MAAM,EAAE,QAAQ;KACjB,CAAC;IACF,iBAAiB,EAAE,IAAA,mBAAE,EAAC,gBAAgB,CAAC,QAAQ,EAAE,EAAE;QACjD,KAAK,EAAE,oBAAoB;QAC3B,KAAK,EAAE,UAAU;QACjB,MAAM,EAAE,QAAQ;KACjB,CAAC;IACF,OAAO,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;QACxE,KAAK,EAAE,kBAAkB;QACzB,KAAK,EAAE,UAAU;KAClB,CAAC;IACF,WAAW,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,EAAE;QACpD,KAAK,EAAE,uBAAuB;QAC9B,KAAK,EAAE,UAAU;KAClB,CAAC;IACF,2EAA2E;IAC3E,kDAAkD;IAClD,YAAY,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,CAAC,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC9D,KAAK,EAAE,cAAc;QACrB,KAAK,EAAE,SAAS;KACjB,CAAC;IACF,gBAAgB,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE;QACtE,KAAK,EAAE,mBAAmB;QAC1B,KAAK,EAAE,SAAS;KACjB,CAAC;IACF,KAAK,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,IAAI,CAAC,qBAAa,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC1C,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,YAAY;QACnB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,IAAI,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,IAAI,CAAC,YAAK,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjC,KAAK,EAAE,MAAM;QACb,KAAK,EAAE,YAAY;QACnB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,cAAc,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE;QACzC,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,YAAY;QACnB,MAAM,EAAE,QAAQ;KACjB,CAAC;IACF,OAAO,EAAE,IAAA,mBAAE,EACT,OAAC;SACE,IAAI,CAAC,gCAAwB,CAAC;SAC9B,QAAQ,EAAE;SACV,QAAQ,CAAC,+CAA+C,CAAC,EAC5D,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,CAC/D;CACF,CAAgD,CAAC;AAElD,IAAA,kCAAiB,EAAC;IAChB,IAAI,EAAE,gBAAgB;IACtB,aAAa,EAAE,8BAA8B;IAC7C,MAAM,EAAE,4BAAoB;IAC5B,IAAI,EAAE;QACJ,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,2DAA2D;QACxE,KAAK,EAAE,MAAM;KACd;CACF,CAAC,CAAC"}
@@ -1,10 +1,25 @@
1
1
  import { ComponentBuilder } from "../component";
2
2
  import { z } from "zod";
3
+ /**
4
+ * Options for Placeholder component
5
+ */
3
6
  export interface PlaceholderOptions {
7
+ /**
8
+ * Label text to display in the box
9
+ */
4
10
  label?: string;
11
+ /**
12
+ * Height of the box (CSS unit)
13
+ * @default undefined (fills its cell, never under 120px)
14
+ */
5
15
  height?: string;
16
+ /**
17
+ * Width of the box (CSS unit)
18
+ * @default undefined (auto)
19
+ */
6
20
  width?: string;
7
21
  }
22
+ /** The options `Placeholder` accepts. */
8
23
  export declare const PlaceholderSchema: z.ZodObject<{
9
24
  label: z.ZodOptional<z.ZodString>;
10
25
  height: z.ZodOptional<z.ZodString>;
@@ -18,4 +33,15 @@ export declare const PlaceholderSchema: z.ZodObject<{
18
33
  height?: string | undefined;
19
34
  width?: string | undefined;
20
35
  }>;
36
+ /**
37
+ * Placeholder - Development Placeholder Component
38
+ *
39
+ * A visual placeholder component for demonstrations and examples.
40
+ * Shows a bordered box with a pattern background and optional label.
41
+ *
42
+ * @example
43
+ * ```typescript
44
+ * Placeholder({ label: 'Item 1', height: '200px' })
45
+ * ```
46
+ */
21
47
  export declare function Placeholder(options?: PlaceholderOptions): ComponentBuilder<PlaceholderOptions>;
@@ -6,6 +6,7 @@ const component_1 = require("../component");
6
6
  const zod_1 = require("zod");
7
7
  const block_registry_1 = require("./block-registry");
8
8
  const PLACEHOLDER_COMPONENT_NAME = "dms-placeholder";
9
+ /** The options `Placeholder` accepts. */
9
10
  exports.PlaceholderSchema = zod_1.z.object({
10
11
  label: (0, block_registry_1.ui)(zod_1.z.string().optional().describe("Text shown inside the box."), {
11
12
  label: "Label",
@@ -20,6 +21,17 @@ exports.PlaceholderSchema = zod_1.z.object({
20
21
  .optional()
21
22
  .describe("Box width, as a CSS length. Fills its column when omitted."), { label: "Width", group: "appearance" }),
22
23
  });
24
+ /**
25
+ * Placeholder - Development Placeholder Component
26
+ *
27
+ * A visual placeholder component for demonstrations and examples.
28
+ * Shows a bordered box with a pattern background and optional label.
29
+ *
30
+ * @example
31
+ * ```typescript
32
+ * Placeholder({ label: 'Item 1', height: '200px' })
33
+ * ```
34
+ */
23
35
  function Placeholder(options) {
24
36
  return new component_1.ComponentBuilder(PLACEHOLDER_COMPONENT_NAME)
25
37
  .options({ ...options })
@@ -1 +1 @@
1
- {"version":3,"file":"placeholder.js","sourceRoot":"","sources":["../../src/base/placeholder.ts"],"names":[],"mappings":";;;AA6DA,kCASC;AAtED,4CAAgD;AAChD,6BAAwB;AACxB,qDAA+E;AAE/E,MAAM,0BAA0B,GAAG,iBAAiB,CAAC;AAyBxC,QAAA,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE;QACtE,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,SAAS;KACjB,CAAC;IACF,MAAM,EAAE,IAAA,mBAAE,EACR,OAAC;SACE,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,2DAA2D,CAAC,EACxE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,CACzC;IACD,KAAK,EAAE,IAAA,mBAAE,EACP,OAAC;SACE,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4DAA4D,CAAC,EACzE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CACxC;CACF,CAA+C,CAAC;AAajD,SAAgB,WAAW,CACzB,OAA4B;IAE5B,OAAO,IAAI,4BAAgB,CAAqB,0BAA0B,CAAC;SACxE,OAAO,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC;SACvB,IAAI,CAAC;QACJ,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,gBAAgB;KACvB,CAAC,CAAC;AACP,CAAC;AAED,IAAA,kCAAiB,EAAC;IAChB,IAAI,EAAE,aAAa;IACnB,aAAa,EAAE,0BAA0B;IACzC,MAAM,EAAE,yBAAiB;IACzB,IAAI,EAAE;QACJ,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,kDAAkD;QAC/D,KAAK,EAAE,QAAQ;KAChB;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"placeholder.js","sourceRoot":"","sources":["../../src/base/placeholder.ts"],"names":[],"mappings":";;;AA6DA,kCASC;AAtED,4CAAgD;AAChD,6BAAwB;AACxB,qDAA+E;AAE/E,MAAM,0BAA0B,GAAG,iBAAiB,CAAC;AAwBrD,yCAAyC;AAC5B,QAAA,iBAAiB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE;QACtE,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,SAAS;KACjB,CAAC;IACF,MAAM,EAAE,IAAA,mBAAE,EACR,OAAC;SACE,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,2DAA2D,CAAC,EACxE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,CACzC;IACD,KAAK,EAAE,IAAA,mBAAE,EACP,OAAC;SACE,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4DAA4D,CAAC,EACzE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CACxC;CACF,CAA+C,CAAC;AAEjD;;;;;;;;;;GAUG;AACH,SAAgB,WAAW,CACzB,OAA4B;IAE5B,OAAO,IAAI,4BAAgB,CAAqB,0BAA0B,CAAC;SACxE,OAAO,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC;SACvB,IAAI,CAAC;QACJ,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,gBAAgB;KACvB,CAAC,CAAC;AACP,CAAC;AAED,IAAA,kCAAiB,EAAC;IAChB,IAAI,EAAE,aAAa;IACnB,aAAa,EAAE,0BAA0B;IACzC,MAAM,EAAE,yBAAiB;IACzB,IAAI,EAAE;QACJ,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,kDAAkD;QAC/D,KAAK,EAAE,QAAQ;KAChB;CACF,CAAC,CAAC"}
@@ -1,37 +1,87 @@
1
+ /**
2
+ * Turning the points a generated query answers into what a block reads.
3
+ *
4
+ * A calculation answers one thing — a measure per group — while the blocks that
5
+ * read it want different arrangements of it: a chart wants the points, a card
6
+ * wants a headline figure above them, a ranked list wants entries. Rather than
7
+ * teach the generator to write each arrangement into every route, a route hands
8
+ * its points to one of these and returns the result.
9
+ *
10
+ * That keeps a generated route to a single expression, which is what lets the
11
+ * builder go on reading its own code back.
12
+ *
13
+ * Nothing here invents a figure it was not given: an absent measure stays absent
14
+ * all the way to the block, because a fabricated zero reads exactly like a
15
+ * measured one.
16
+ */
1
17
  import type { ChartSeries } from "./chart";
18
+ /** One measured group: what it is, and what was measured. */
2
19
  export interface SeriesPoint {
3
20
  x: number | string;
21
+ /** Null for a group the calculation found nothing to measure in. */
4
22
  y: number | null;
5
23
  }
24
+ /** How the headline figure is taken from the points. */
6
25
  export type SeriesMeasure = "count" | "sum" | "avg" | "min" | "max";
7
26
  export interface SeriesOptions {
8
27
  measure: SeriesMeasure;
28
+ /**
29
+ * What a legend and a tooltip call the series. The caller is expected to supply
30
+ * one a reader recognizes — the builder derives it from the measured field —
31
+ * because all that is left to name a series by is the measure's own word.
32
+ */
9
33
  label?: string;
34
+ /** The same calculation over the preceding period, when one was asked for. */
10
35
  previous?: SeriesPoint[];
11
36
  }
37
+ /** A figure alongside the one before it, and the share between them. */
12
38
  export interface ComparedFigure {
39
+ /** Absent when the preceding period measured nothing to compare against. */
13
40
  previousValue?: number;
41
+ /**
42
+ * Absent when no share can be stated, which includes a preceding zero: growth
43
+ * away from nothing is unbounded, so 0 to 100 carries no variation at all.
44
+ * Blocks show none in that case rather than a stand-in for one. Written down
45
+ * because consumers depend on it, not left to be discovered.
46
+ */
14
47
  delta?: number;
15
48
  }
16
49
  export interface ChartCardData extends ComparedFigure {
50
+ /** Absent when no group was measured; see `headline`. */
17
51
  value?: number;
18
52
  series: ChartSeries[];
19
53
  comparisonSeries?: ChartSeries[];
20
54
  }
55
+ /** What `kpiCardData` hands a `KpiCard`: its figure and the sparkline behind it. */
21
56
  export interface KpiCardData extends ComparedFigure {
57
+ /** Absent when no group was measured; see `headline`. */
22
58
  value?: number;
23
59
  sparkline?: number[];
24
60
  }
61
+ /** One group of a `TopListCard`, with its change over the preceding period. */
25
62
  export interface TopListEntry {
26
63
  id: string | number;
27
64
  title: string;
28
65
  value: number;
29
66
  delta?: number | null;
30
67
  }
68
+ /** What `topListData` hands a `TopListCard`: one entry per measured group. */
31
69
  export interface TopListData {
32
70
  items: TopListEntry[];
33
71
  }
34
- export declare function headline(points: SeriesPoint[], measure?: SeriesMeasure): number | undefined;
72
+ /** Points as a chart card reads them: a figure, its series, and its variation. */
35
73
  export declare function chartCardData(points: SeriesPoint[], options: SeriesOptions): ChartCardData;
74
+ /**
75
+ * Points as a KPI card reads them: one figure, and the points as its sparkline.
76
+ *
77
+ * The card draws the trend behind the number from the same calculation, so a KPI
78
+ * grouped over time costs no more than one without.
79
+ */
36
80
  export declare function kpiCardData(points: SeriesPoint[], options: SeriesOptions): KpiCardData;
81
+ /**
82
+ * Points as a ranked list reads them, each group an entry.
83
+ *
84
+ * A group with nothing measured in it has no place in a ranking: entered as a
85
+ * zero it would outrank every real loss, so it is left out.
86
+ */
37
87
  export declare function topListData(points: SeriesPoint[], options: SeriesOptions): TopListData;
@@ -1,46 +1,31 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.headline = headline;
4
3
  exports.chartCardData = chartCardData;
5
4
  exports.kpiCardData = kpiCardData;
6
5
  exports.topListData = topListData;
7
- const DEFAULT_MEASURE = "sum";
6
+ const query_response_1 = require("./internal/query-response");
8
7
  const MS_PER_DAY = 86_400_000;
8
+ /**
9
+ * The window a time bucket's key can fall in. Read as milliseconds, a group key
10
+ * outside it is a quantity or an identifier rather than an instant.
11
+ */
9
12
  const BUCKET_EPOCH_FIRST = Date.UTC(2000, 0, 1);
10
13
  const BUCKET_EPOCH_LAST = Date.UTC(2100, 0, 1);
11
14
  const ISO_DATE_END = 10;
12
15
  const ISO_MINUTE_END = 16;
13
- const total = (values) => values.reduce((running, value) => running + value, 0);
14
- const HEADLINE_BY_MEASURE = {
15
- count: total,
16
- sum: total,
17
- avg: (values) => total(values) / values.length,
18
- min: (values) => Math.min(...values),
19
- max: (values) => Math.max(...values),
20
- };
21
- function measuredValues(points) {
22
- return points
23
- .map((point) => point.y)
24
- .filter((value) => value !== null);
25
- }
26
- function headline(points, measure = DEFAULT_MEASURE) {
27
- const values = measuredValues(points);
28
- if (values.length === 0) {
29
- return undefined;
30
- }
31
- return HEADLINE_BY_MEASURE[measure](values);
32
- }
16
+ /** The share a figure gained or lost against the one before it. */
33
17
  function variation(current, previous) {
34
18
  if (previous === 0) {
35
19
  return current === 0 ? 0 : undefined;
36
20
  }
37
21
  return (current - previous) / previous;
38
22
  }
23
+ /** Fill in the figure before this one and the share it moved, when there is one. */
39
24
  function addComparison(target, value, options) {
40
25
  if (!options.previous) {
41
26
  return;
42
27
  }
43
- const previousValue = headline(options.previous, options.measure);
28
+ const previousValue = (0, query_response_1.headline)(options.previous, options.measure);
44
29
  if (previousValue === undefined) {
45
30
  return;
46
31
  }
@@ -53,35 +38,61 @@ function addComparison(target, value, options) {
53
38
  target.delta = delta;
54
39
  }
55
40
  }
41
+ /**
42
+ * The points as the one named series a chart draws.
43
+ *
44
+ * A chart reads `{ name, data }` and indexes into `data`; handed the bare points
45
+ * it takes each of them for a series with nothing in it and draws an empty
46
+ * canvas, without an error anywhere to say why.
47
+ */
56
48
  function chartSeries(points, name) {
57
49
  return [{ name, data: points }];
58
50
  }
51
+ /** Points as a chart card reads them: a figure, its series, and its variation. */
59
52
  function chartCardData(points, options) {
60
53
  const name = options.label ?? options.measure;
61
54
  const data = { series: chartSeries(points, name) };
62
- const value = headline(points, options.measure);
55
+ const value = (0, query_response_1.headline)(points, options.measure);
63
56
  if (value !== undefined) {
64
57
  data.value = value;
65
58
  }
66
59
  addComparison(data, value, options);
67
60
  if (options.previous && options.previous.length > 0) {
61
+ // Named after the series it is compared against, not marked apart in its
62
+ // name: the block already sets it apart by colour and stroke, and a word
63
+ // added here would reach the legend in one language whatever the reader's is.
68
64
  data.comparisonSeries = chartSeries(options.previous, name);
69
65
  }
70
66
  return data;
71
67
  }
68
+ /**
69
+ * Points as a KPI card reads them: one figure, and the points as its sparkline.
70
+ *
71
+ * The card draws the trend behind the number from the same calculation, so a KPI
72
+ * grouped over time costs no more than one without.
73
+ */
72
74
  function kpiCardData(points, options) {
73
75
  const data = {};
74
- const value = headline(points, options.measure);
76
+ const value = (0, query_response_1.headline)(points, options.measure);
75
77
  if (value !== undefined) {
76
78
  data.value = value;
77
79
  }
78
80
  addComparison(data, value, options);
79
- const values = measuredValues(points);
81
+ const values = (0, query_response_1.measuredValues)(points);
82
+ // One point is a figure, not a trend: a sparkline of it would draw a dot.
80
83
  if (values.length > 1) {
81
84
  data.sparkline = values;
82
85
  }
83
86
  return data;
84
87
  }
88
+ /**
89
+ * A group's key as a person reads it.
90
+ *
91
+ * A time bucket arrives as epoch milliseconds, and a row titled `1772409600000`
92
+ * names nothing. A bucket that lands on a UTC midnight — which every day, month
93
+ * and year bucket does — is named by its date alone, since the zeroes below it
94
+ * carry no information.
95
+ */
85
96
  function groupTitle(key) {
86
97
  if (typeof key !== "number" ||
87
98
  !Number.isInteger(key) ||
@@ -116,6 +127,12 @@ function topListEntry(point, value, before) {
116
127
  }
117
128
  return entry;
118
129
  }
130
+ /**
131
+ * Points as a ranked list reads them, each group an entry.
132
+ *
133
+ * A group with nothing measured in it has no place in a ranking: entered as a
134
+ * zero it would outrank every real loss, so it is left out.
135
+ */
119
136
  function topListData(points, options) {
120
137
  const before = measuredByGroup(options.previous ?? []);
121
138
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"query-response.js","sourceRoot":"","sources":["../../src/base/query-response.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-response.js","sourceRoot":"","sources":["../../src/base/query-response.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,32 @@
1
1
  import { z } from "zod";
2
2
  import type { FormProps } from "./form-types";
3
+ /** Which of a resource's forms: creating a row, editing one, or reading one. */
3
4
  export declare const RESOURCE_FORM_MODES: readonly ["new", "edit", "view"];
4
5
  export type ResourceFormMode = (typeof RESOURCE_FORM_MODES)[number];
6
+ /**
7
+ * The row a page reached as `…?id=<row>` is about. A page the builder writes
8
+ * has no route segment of its own to carry an id, so the query string does.
9
+ */
5
10
  export declare const QUERY_ROW_ID = "{{query.id}}";
11
+ /** The row a page served under a `:id` route segment is about. */
12
+ export declare const ROUTE_PARAM_ROW_ID = "{{params.id}}";
13
+ /** What a form over a resource leaves open: everything but its fields and routes. */
6
14
  export interface ResourceFormOptions extends Omit<FormProps, "fields" | "fetchUrl" | "fetchUrlMethod" | "submitUrl" | "submitUrlMethod"> {
15
+ /**
16
+ * Where `edit` and `view` read the id of their row, as a token the form
17
+ * resolves against its page's URL.
18
+ */
7
19
  rowId?: string;
8
20
  }
21
+ /** The options `ResourceForm` accepts, after its controller argument. */
9
22
  export interface ResourceFormBlockOptions extends ResourceFormOptions {
10
23
  mode: ResourceFormMode;
11
24
  }
25
+ /**
26
+ * The options `ResourceForm` accepts. Deliberately few: which fields it shows,
27
+ * and where it loads and submits them, come from the resource and the mode —
28
+ * a field is configured on the resource, not on each form that shows it.
29
+ */
12
30
  export declare const ResourceFormSchema: z.ZodObject<{
13
31
  fieldsOrientation: z.ZodOptional<z.ZodEnum<["horizontal", "vertical"]>>;
14
32
  redirectOnSuccess: z.ZodOptional<z.ZodString>;
@@ -1,11 +1,28 @@
1
1
  "use strict";
2
+ // The options of the `ResourceForm` block, declared without loading the table
3
+ // view runtime, so builder tooling reads the block from the catalog alone. The
4
+ // factory lives with the forms it shares with `TableView`, in
5
+ // `table-view/resource-form`.
2
6
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ResourceFormSchema = exports.QUERY_ROW_ID = exports.RESOURCE_FORM_MODES = void 0;
7
+ exports.ResourceFormSchema = exports.ROUTE_PARAM_ROW_ID = exports.QUERY_ROW_ID = exports.RESOURCE_FORM_MODES = void 0;
4
8
  const zod_1 = require("zod");
5
9
  const block_registry_1 = require("./block-registry");
6
- const form_block_schema_1 = require("./form-block-schema");
10
+ const form_block_schema_1 = require("./internal/form-block-schema");
11
+ const form_block_schema_2 = require("./form-block-schema");
12
+ /** Which of a resource's forms: creating a row, editing one, or reading one. */
7
13
  exports.RESOURCE_FORM_MODES = ["new", "edit", "view"];
14
+ /**
15
+ * The row a page reached as `…?id=<row>` is about. A page the builder writes
16
+ * has no route segment of its own to carry an id, so the query string does.
17
+ */
8
18
  exports.QUERY_ROW_ID = "{{query.id}}";
19
+ /** The row a page served under a `:id` route segment is about. */
20
+ exports.ROUTE_PARAM_ROW_ID = "{{params.id}}";
21
+ /**
22
+ * The options `ResourceForm` accepts. Deliberately few: which fields it shows,
23
+ * and where it loads and submits them, come from the resource and the mode —
24
+ * a field is configured on the resource, not on each form that shows it.
25
+ */
9
26
  exports.ResourceFormSchema = zod_1.z.object({
10
27
  mode: (0, block_registry_1.ui)(zod_1.z
11
28
  .enum(exports.RESOURCE_FORM_MODES)
@@ -26,7 +43,7 @@ exports.ResourceFormSchema = zod_1.z.object({
26
43
  order: 4,
27
44
  group: "content",
28
45
  }),
29
- ...form_block_schema_1.SubmitMessageOptions,
46
+ ...form_block_schema_2.SubmitMessageOptions,
30
47
  fieldsOrientation: (0, block_registry_1.ui)(zod_1.z.enum(["horizontal", "vertical"]).optional(), {
31
48
  label: "Field orientation",
32
49
  group: "layout",
@@ -1 +1 @@
1
- {"version":3,"file":"resource-form-schema.js","sourceRoot":"","sources":["../../src/base/resource-form-schema.ts"],"names":[],"mappings":";;;AAKA,6BAAwB;AACxB,qDAA+E;AAC/E,2DAAgF;AAInE,QAAA,mBAAmB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAOvD,QAAA,YAAY,GAAG,cAAc,CAAC;AAwB9B,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE,IAAA,mBAAE,EACN,OAAC;SACE,IAAI,CAAC,2BAAmB,CAAC;SACzB,QAAQ,CAAC,gDAAgD,CAAC,EAC7D,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAC9C;IACD,KAAK,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE;QAC/B,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,SAAS;KACjB,CAAC;IACF,WAAW,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE;QACrC,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,SAAS;QAChB,MAAM,EAAE,UAAU;KACnB,CAAC;IACF,WAAW,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE;QACrC,KAAK,EAAE,qBAAqB;QAC5B,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,SAAS;KACjB,CAAC;IACF,GAAG,wCAAoB;IACvB,iBAAiB,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE;QACnE,KAAK,EAAE,mBAAmB;QAC1B,KAAK,EAAE,QAAQ;QACf,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,iBAAiB,EAAE,IAAA,mBAAE,EACnB,OAAC;SACE,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,oEAAoE,CACrE,EACH,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,CAC1C;IACD,KAAK,EAAE,IAAA,mBAAE,EACP,OAAC;SACE,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,yDAAyD,oBAAY,GAAG,CACzE,EACH,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,oBAAY,EAAE,CACvE;IACD,cAAc,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE;QACnD,KAAK,EAAE,kBAAkB;QACzB,KAAK,EAAE,UAAU;QACjB,MAAM,EAAE,MAAM;KACf,CAAC;CACH,CAAqD,CAAC;AAEvD,IAAA,kCAAiB,EAAC;IAChB,IAAI,EAAE,cAAc;IACpB,aAAa,EAAE,uCAAmB;IAClC,MAAM,EAAE,0BAAkB;IAC1B,aAAa,EAAE,IAAI;IACnB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,iGAAiG;QACnG,KAAK,EAAE,MAAM;KACd;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"resource-form-schema.js","sourceRoot":"","sources":["../../src/base/resource-form-schema.ts"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,+EAA+E;AAC/E,8DAA8D;AAC9D,8BAA8B;;;AAE9B,6BAAwB;AACxB,qDAA+E;AAC/E,oEAAmE;AACnE,2DAA2D;AAG3D,gFAAgF;AACnE,QAAA,mBAAmB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAGpE;;;GAGG;AACU,QAAA,YAAY,GAAG,cAAc,CAAC;AAE3C,kEAAkE;AACrD,QAAA,kBAAkB,GAAG,eAAe,CAAC;AAmBlD;;;;GAIG;AACU,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE,IAAA,mBAAE,EACN,OAAC;SACE,IAAI,CAAC,2BAAmB,CAAC;SACzB,QAAQ,CAAC,gDAAgD,CAAC,EAC7D,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAC9C;IACD,KAAK,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE;QAC/B,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,SAAS;KACjB,CAAC;IACF,WAAW,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE;QACrC,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,SAAS;QAChB,MAAM,EAAE,UAAU;KACnB,CAAC;IACF,WAAW,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE;QACrC,KAAK,EAAE,qBAAqB;QAC5B,KAAK,EAAE,CAAC;QACR,KAAK,EAAE,SAAS;KACjB,CAAC;IACF,GAAG,wCAAoB;IACvB,iBAAiB,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE;QACnE,KAAK,EAAE,mBAAmB;QAC1B,KAAK,EAAE,QAAQ;QACf,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,iBAAiB,EAAE,IAAA,mBAAE,EACnB,OAAC;SACE,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,oEAAoE,CACrE,EACH,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,CAC1C;IACD,KAAK,EAAE,IAAA,mBAAE,EACP,OAAC;SACE,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,yDAAyD,oBAAY,GAAG,CACzE,EACH,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,oBAAY,EAAE,CACvE;IACD,cAAc,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE;QACnD,KAAK,EAAE,kBAAkB;QACzB,KAAK,EAAE,UAAU;QACjB,MAAM,EAAE,MAAM;KACf,CAAC;CACH,CAAqD,CAAC;AAEvD,IAAA,kCAAiB,EAAC;IAChB,IAAI,EAAE,cAAc;IACpB,aAAa,EAAE,uCAAmB;IAClC,MAAM,EAAE,0BAAkB;IAC1B,aAAa,EAAE,IAAI;IACnB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,iGAAiG;QACnG,KAAK,EAAE,MAAM;KACd;CACF,CAAC,CAAC"}
@@ -3,6 +3,8 @@ export declare class SearchableMeta {
3
3
  static key: symbol;
4
4
  constructor(target: new (...args: unknown[]) => unknown);
5
5
  readonly searchableFields: Record<string, string>;
6
+ /** A controller derived from this one searches the same fields. */
7
+ inherit(parent: SearchableMeta): void;
6
8
  setSearchableField(key: string, compareMode: string): void;
7
9
  getSearchableFields(): Record<string, string>;
8
10
  }
@@ -10,6 +10,10 @@ class SearchableMeta {
10
10
  this.target = target;
11
11
  }
12
12
  searchableFields = {};
13
+ /** A controller derived from this one searches the same fields. */
14
+ inherit(parent) {
15
+ Object.assign(this.searchableFields, parent.searchableFields);
16
+ }
13
17
  setSearchableField(key, compareMode) {
14
18
  this.searchableFields[key] = compareMode;
15
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"searchable.js","sourceRoot":"","sources":["../../src/base/searchable.ts"],"names":[],"mappings":";;;AAAA,+DAAyD;AACzD,sEAA8E;AAE9E,MAAa,cAAc;IAGG;IAFrB,MAAM,CAAC,GAAG,GAAG,MAAM,EAAE,CAAC;IAE7B,YAA4B,MAA2C;QAA3C,WAAM,GAAN,MAAM,CAAqC;IAAG,CAAC;IAE3D,gBAAgB,GAA2B,EAAE,CAAC;IAEvD,kBAAkB,CAAC,GAAW,EAAE,WAAmB;QACxD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;IAC3C,CAAC;IAEM,mBAAmB;QACxB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;;AAbH,wCAcC;AAED,MAAM,oBAAoB,GAAG,UAAU,CAAC;AAE3B,QAAA,UAAU,GAAG,IAAA,kCAAqB,EAC7C,CAAC,MAAM,EAAE,GAAG,EAAE,WAAoB,EAAE,EAAE;IACpC,MAAM,cAAc,GAAG,IAAA,4BAAW,EAAC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACvE,MAAM,oBAAoB,GAAG,WAAW,IAAI,oBAAoB,CAAC;IACjE,cAAc,CAAC,kBAAkB,CAAC,GAAa,EAAE,oBAAoB,CAAC,CAAC;AACzE,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"searchable.js","sourceRoot":"","sources":["../../src/base/searchable.ts"],"names":[],"mappings":";;;AAAA,+DAAyD;AACzD,sEAA8E;AAE9E,MAAa,cAAc;IAGG;IAFrB,MAAM,CAAC,GAAG,GAAG,MAAM,EAAE,CAAC;IAE7B,YAA4B,MAA2C;QAA3C,WAAM,GAAN,MAAM,CAAqC;IAAG,CAAC;IAE3D,gBAAgB,GAA2B,EAAE,CAAC;IAE9D,mEAAmE;IAC5D,OAAO,CAAC,MAAsB;QACnC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAChE,CAAC;IAEM,kBAAkB,CAAC,GAAW,EAAE,WAAmB;QACxD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;IAC3C,CAAC;IAEM,mBAAmB;QACxB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;;AAlBH,wCAmBC;AAED,MAAM,oBAAoB,GAAG,UAAU,CAAC;AAE3B,QAAA,UAAU,GAAG,IAAA,kCAAqB,EAC7C,CAAC,MAAM,EAAE,GAAG,EAAE,WAAoB,EAAE,EAAE;IACpC,MAAM,cAAc,GAAG,IAAA,4BAAW,EAAC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACvE,MAAM,oBAAoB,GAAG,WAAW,IAAI,oBAAoB,CAAC;IACjE,cAAc,CAAC,kBAAkB,CAAC,GAAa,EAAE,oBAAoB,CAAC,CAAC;AACzE,CAAC,CACF,CAAC"}
@@ -0,0 +1,105 @@
1
+ import { ComponentBuilder } from "../component";
2
+ import { z } from "zod";
3
+ import type { BaseComponentProps } from "./types";
4
+ /** The options `Section` takes. */
5
+ export interface SectionProps extends BaseComponentProps {
6
+ /** Heading above the card (i18n key with `$` or literal). */
7
+ title?: string;
8
+ /** One line under the heading. */
9
+ description?: string;
10
+ /** Destructive actions: the frame and the title turn to the error color. */
11
+ danger?: boolean;
12
+ /**
13
+ * The card frame around the children. Defaults to `true`; off for grids
14
+ * and custom layouts.
15
+ */
16
+ card?: boolean;
17
+ }
18
+ /** How a field row lays its label and control out. */
19
+ export declare const FIELD_ROW_LAYOUTS: readonly ["inline", "form", "stack"];
20
+ export type FieldRowLayout = (typeof FIELD_ROW_LAYOUTS)[number];
21
+ /** The options `FieldRow` takes. */
22
+ export interface FieldRowProps extends BaseComponentProps {
23
+ /** Row label (i18n key with `$` or literal). */
24
+ label?: string;
25
+ /** Help text under the label. */
26
+ description?: string;
27
+ /**
28
+ * `inline` (default): label left, compact control right — switches, selects,
29
+ * buttons. `form`: a 240px label column beside a full-width control. `stack`:
30
+ * the label above the control.
31
+ */
32
+ layout?: FieldRowLayout;
33
+ /** Red asterisk after the label. */
34
+ required?: boolean;
35
+ /** Dims the whole row. */
36
+ disabled?: boolean;
37
+ }
38
+ /**
39
+ * Section - a titled settings block.
40
+ *
41
+ * A heading and a one-line description above a card whose children — field
42
+ * rows, a form, a list — are set apart by hairlines. A `Form` placed in a
43
+ * framed section drops its own card and lays its fields out as the section's
44
+ * rows.
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * Section({ title: "Workspace", description: "How the workspace appears." })
49
+ * .child("name", FieldRow({ label: "Name", layout: "form" }).child("v", …))
50
+ * .child("form", Form({ fields, submitUrl }))
51
+ * ```
52
+ */
53
+ export declare function Section(options?: SectionProps): ComponentBuilder<SectionProps>;
54
+ /**
55
+ * FieldRow - one row of a section: a label with its help text
56
+ * and the control its child block renders — a button, a status, a meter.
57
+ *
58
+ * Fields that are filled in and submitted belong to a `Form`, which owns their
59
+ * values, validation and submit; a field row holds a block that stands on its
60
+ * own.
61
+ *
62
+ * @example
63
+ * ```typescript
64
+ * FieldRow({ label: "Seats", description: "Billed monthly." })
65
+ * .child("meter", Meter({ value: 8, max: 10 }))
66
+ * ```
67
+ */
68
+ export declare function FieldRow(options?: FieldRowProps): ComponentBuilder<FieldRowProps>;
69
+ /** The options `Section` accepts. */
70
+ export declare const SectionSchema: z.ZodObject<{
71
+ title: z.ZodOptional<z.ZodString>;
72
+ description: z.ZodOptional<z.ZodString>;
73
+ danger: z.ZodOptional<z.ZodBoolean>;
74
+ card: z.ZodDefault<z.ZodBoolean>;
75
+ }, "strip", z.ZodTypeAny, {
76
+ card: boolean;
77
+ description?: string | undefined;
78
+ title?: string | undefined;
79
+ danger?: boolean | undefined;
80
+ }, {
81
+ description?: string | undefined;
82
+ title?: string | undefined;
83
+ card?: boolean | undefined;
84
+ danger?: boolean | undefined;
85
+ }>;
86
+ /** The options `FieldRow` accepts. */
87
+ export declare const FieldRowSchema: z.ZodObject<{
88
+ label: z.ZodOptional<z.ZodString>;
89
+ description: z.ZodOptional<z.ZodString>;
90
+ layout: z.ZodOptional<z.ZodEnum<["inline", "form", "stack"]>>;
91
+ required: z.ZodOptional<z.ZodBoolean>;
92
+ disabled: z.ZodOptional<z.ZodBoolean>;
93
+ }, "strip", z.ZodTypeAny, {
94
+ required?: boolean | undefined;
95
+ description?: string | undefined;
96
+ label?: string | undefined;
97
+ disabled?: boolean | undefined;
98
+ layout?: "stack" | "inline" | "form" | undefined;
99
+ }, {
100
+ required?: boolean | undefined;
101
+ description?: string | undefined;
102
+ label?: string | undefined;
103
+ disabled?: boolean | undefined;
104
+ layout?: "stack" | "inline" | "form" | undefined;
105
+ }>;