@antelopejs/interface-dms 0.9.1 → 0.10.1

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 (519) hide show
  1. package/CHANGELOG.md +126 -0
  2. package/README.md +1 -1
  3. package/dist/attachments.js +3 -1
  4. package/dist/attachments.js.map +1 -1
  5. package/dist/auth/db/models/sessions.model.js +1 -5
  6. package/dist/auth/db/models/sessions.model.js.map +1 -1
  7. package/dist/auth/db/tables/users.table.js.map +1 -1
  8. package/dist/auth/index.js +4 -1
  9. package/dist/auth/index.js.map +1 -1
  10. package/dist/auth/internal/jwt-auth-decorator.js +7 -5
  11. package/dist/auth/internal/jwt-auth-decorator.js.map +1 -1
  12. package/dist/auth/internal/request-authenticators.js +4 -1
  13. package/dist/auth/internal/request-authenticators.js.map +1 -1
  14. package/dist/auth/internal/request-principal.js +1 -0
  15. package/dist/auth/internal/request-principal.js.map +1 -1
  16. package/dist/base/activity-feed.d.ts +26 -26
  17. package/dist/base/banner.d.ts +14 -14
  18. package/dist/base/banner.js +1 -0
  19. package/dist/base/banner.js.map +1 -1
  20. package/dist/base/block-registry/helpers.js +1 -0
  21. package/dist/base/block-registry/helpers.js.map +1 -1
  22. package/dist/base/block-registry/internal/describe.js +107 -85
  23. package/dist/base/block-registry/internal/describe.js.map +1 -1
  24. package/dist/base/block-registry/presentation.js +0 -5
  25. package/dist/base/block-registry/presentation.js.map +1 -1
  26. package/dist/base/block-registry/registry.js +4 -1
  27. package/dist/base/block-registry/registry.js.map +1 -1
  28. package/dist/base/block-types.js +0 -2
  29. package/dist/base/block-types.js.map +1 -1
  30. package/dist/base/card.d.ts +8 -8
  31. package/dist/base/chart-card.d.ts +2 -2
  32. package/dist/base/chart-card.js +2 -2
  33. package/dist/base/chart-card.js.map +1 -1
  34. package/dist/base/chart-schemas.d.ts +66 -66
  35. package/dist/base/chart-schemas.js +19 -21
  36. package/dist/base/chart-schemas.js.map +1 -1
  37. package/dist/base/chart.js +1 -0
  38. package/dist/base/chart.js.map +1 -1
  39. package/dist/base/code-block.js +1 -0
  40. package/dist/base/code-block.js.map +1 -1
  41. package/dist/base/confirm-dialog.d.ts +2 -6
  42. package/dist/base/confirm-dialog.js +36 -15
  43. package/dist/base/confirm-dialog.js.map +1 -1
  44. package/dist/base/data-sources.js +6 -2
  45. package/dist/base/data-sources.js.map +1 -1
  46. package/dist/base/data-types/compare-types.js +82 -68
  47. package/dist/base/data-types/compare-types.js.map +1 -1
  48. package/dist/base/data-types/core.d.ts +8 -101
  49. package/dist/base/data-types/core.js +40 -143
  50. package/dist/base/data-types/core.js.map +1 -1
  51. package/dist/base/data-types/default/address.d.ts +126 -0
  52. package/dist/base/data-types/default/address.js +57 -0
  53. package/dist/base/data-types/default/address.js.map +1 -0
  54. package/dist/base/data-types/default/choices.d.ts +54 -0
  55. package/dist/base/data-types/default/choices.js +135 -0
  56. package/dist/base/data-types/default/choices.js.map +1 -0
  57. package/dist/base/data-types/default/files.d.ts +86 -0
  58. package/dist/base/data-types/default/files.js +214 -0
  59. package/dist/base/data-types/default/files.js.map +1 -0
  60. package/dist/base/data-types/default/inputs.d.ts +11 -0
  61. package/dist/base/data-types/default/inputs.js +26 -0
  62. package/dist/base/data-types/default/inputs.js.map +1 -0
  63. package/dist/base/data-types/default/numbers.d.ts +62 -0
  64. package/dist/base/data-types/default/numbers.js +287 -0
  65. package/dist/base/data-types/default/numbers.js.map +1 -0
  66. package/dist/base/data-types/default/options.d.ts +133 -0
  67. package/dist/base/data-types/default/options.js +3 -0
  68. package/dist/base/data-types/default/options.js.map +1 -0
  69. package/dist/base/data-types/default/relations.d.ts +267 -0
  70. package/dist/base/data-types/default/relations.js +149 -0
  71. package/dist/base/data-types/default/relations.js.map +1 -0
  72. package/dist/base/data-types/default/strings.d.ts +35 -0
  73. package/dist/base/data-types/default/strings.js +154 -0
  74. package/dist/base/data-types/default/strings.js.map +1 -0
  75. package/dist/base/data-types/default-types.d.ts +73 -753
  76. package/dist/base/data-types/default-types.js +39 -991
  77. package/dist/base/data-types/default-types.js.map +1 -1
  78. package/dist/base/data-types/field-types.js +2 -6
  79. package/dist/base/data-types/field-types.js.map +1 -1
  80. package/dist/base/data-types/index.js +1 -20
  81. package/dist/base/data-types/index.js.map +1 -1
  82. package/dist/base/data-types/internal/compare-types.js +0 -2
  83. package/dist/base/data-types/internal/compare-types.js.map +1 -1
  84. package/dist/base/data-types/internal/relation-add-form.d.ts +7 -0
  85. package/dist/base/data-types/internal/relation-add-form.js +21 -0
  86. package/dist/base/data-types/internal/relation-add-form.js.map +1 -0
  87. package/dist/base/data-types/internal/relation-endpoints.d.ts +8 -0
  88. package/dist/base/data-types/internal/relation-endpoints.js +36 -0
  89. package/dist/base/data-types/internal/relation-endpoints.js.map +1 -0
  90. package/dist/base/data-types/status-type.js +0 -6
  91. package/dist/base/data-types/status-type.js.map +1 -1
  92. package/dist/base/display.d.ts +6 -6
  93. package/dist/base/display.js +15 -10
  94. package/dist/base/display.js.map +1 -1
  95. package/dist/base/empty-state.d.ts +8 -8
  96. package/dist/base/export-jobs.js.map +1 -1
  97. package/dist/base/form-block-schema.d.ts +36 -36
  98. package/dist/base/form-block-schema.js +0 -5
  99. package/dist/base/form-block-schema.js.map +1 -1
  100. package/dist/base/form-schema.d.ts +5 -1
  101. package/dist/base/form-schema.js +44 -206
  102. package/dist/base/form-schema.js.map +1 -1
  103. package/dist/base/form-types.d.ts +4 -84
  104. package/dist/base/form-types.js.map +1 -1
  105. package/dist/base/form.js +0 -7
  106. package/dist/base/form.js.map +1 -1
  107. package/dist/base/guard.d.ts +14 -14
  108. package/dist/base/helpers/archive-mode-helpers.js +11 -11
  109. package/dist/base/helpers/archive-mode-helpers.js.map +1 -1
  110. package/dist/base/helpers/file-refs.js +20 -7
  111. package/dist/base/helpers/file-refs.js.map +1 -1
  112. package/dist/base/index.js +0 -5
  113. package/dist/base/index.js.map +1 -1
  114. package/dist/base/internal/button-availability.d.ts +3 -17
  115. package/dist/base/internal/button-availability.js +36 -31
  116. package/dist/base/internal/button-availability.js.map +1 -1
  117. package/dist/base/internal/chart-schemas.js +0 -2
  118. package/dist/base/internal/chart-schemas.js.map +1 -1
  119. package/dist/base/internal/composed-text.js +0 -2
  120. package/dist/base/internal/composed-text.js.map +1 -1
  121. package/dist/base/internal/confirm-dialog.d.ts +3 -13
  122. package/dist/base/internal/confirm-dialog.js +37 -21
  123. package/dist/base/internal/confirm-dialog.js.map +1 -1
  124. package/dist/base/internal/display.js +3 -1
  125. package/dist/base/internal/display.js.map +1 -1
  126. package/dist/base/internal/form-schema-components.d.ts +12 -0
  127. package/dist/base/internal/form-schema-components.js +61 -0
  128. package/dist/base/internal/form-schema-components.js.map +1 -0
  129. package/dist/base/internal/form-schema-validation.d.ts +16 -0
  130. package/dist/base/internal/form-schema-validation.js +68 -0
  131. package/dist/base/internal/form-schema-validation.js.map +1 -0
  132. package/dist/base/internal/form-schema.d.ts +2 -7
  133. package/dist/base/internal/form-schema.js +36 -28
  134. package/dist/base/internal/form-schema.js.map +1 -1
  135. package/dist/base/internal/layouts.d.ts +1 -59
  136. package/dist/base/internal/searchable.js +3 -1
  137. package/dist/base/internal/searchable.js.map +1 -1
  138. package/dist/base/key-value-list.d.ts +12 -12
  139. package/dist/base/kpi-card.d.ts +2 -2
  140. package/dist/base/kpi-card.js +2 -0
  141. package/dist/base/kpi-card.js.map +1 -1
  142. package/dist/base/layouts.d.ts +6 -80
  143. package/dist/base/layouts.js +38 -54
  144. package/dist/base/layouts.js.map +1 -1
  145. package/dist/base/live-toggle.d.ts +2 -2
  146. package/dist/base/meter.d.ts +25 -25
  147. package/dist/base/meter.js +0 -1
  148. package/dist/base/meter.js.map +1 -1
  149. package/dist/base/nav-card-grid.d.ts +13 -13
  150. package/dist/base/page-toolbar.d.ts +2 -2
  151. package/dist/base/page-toolbar.js +0 -6
  152. package/dist/base/page-toolbar.js.map +1 -1
  153. package/dist/base/period-selector.d.ts +2 -2
  154. package/dist/base/period-selector.js +0 -4
  155. package/dist/base/period-selector.js.map +1 -1
  156. package/dist/base/query-response.js +3 -5
  157. package/dist/base/query-response.js.map +1 -1
  158. package/dist/base/resource-form-schema.js +0 -4
  159. package/dist/base/resource-form-schema.js.map +1 -1
  160. package/dist/base/searchable.d.ts +5 -0
  161. package/dist/base/searchable.js +11 -2
  162. package/dist/base/searchable.js.map +1 -1
  163. package/dist/base/stat-group.d.ts +15 -15
  164. package/dist/base/tab.d.ts +8 -8
  165. package/dist/base/tab.js +1 -0
  166. package/dist/base/tab.js.map +1 -1
  167. package/dist/base/table-view/column-display.js +0 -1
  168. package/dist/base/table-view/column-display.js.map +1 -1
  169. package/dist/base/table-view/data-functions.d.ts +10 -10
  170. package/dist/base/table-view/data-functions.js.map +1 -1
  171. package/dist/base/table-view/factory.js +32 -204
  172. package/dist/base/table-view/factory.js.map +1 -1
  173. package/dist/base/table-view/internal/auth.js +5 -19
  174. package/dist/base/table-view/internal/auth.js.map +1 -1
  175. package/dist/base/table-view/internal/column-conditions.js +0 -5
  176. package/dist/base/table-view/internal/column-conditions.js.map +1 -1
  177. package/dist/base/table-view/internal/column-display.js +5 -3
  178. package/dist/base/table-view/internal/column-display.js.map +1 -1
  179. package/dist/base/table-view/internal/factory-helpers.js +24 -158
  180. package/dist/base/table-view/internal/factory-helpers.js.map +1 -1
  181. package/dist/base/table-view/internal/factory-lifecycle-created.d.ts +21 -0
  182. package/dist/base/table-view/internal/factory-lifecycle-created.js +96 -0
  183. package/dist/base/table-view/internal/factory-lifecycle-created.js.map +1 -0
  184. package/dist/base/table-view/internal/factory-lifecycle-filter.d.ts +15 -0
  185. package/dist/base/table-view/internal/factory-lifecycle-filter.js +37 -0
  186. package/dist/base/table-view/internal/factory-lifecycle-filter.js.map +1 -0
  187. package/dist/base/table-view/internal/factory-lifecycle-options.d.ts +41 -0
  188. package/dist/base/table-view/internal/factory-lifecycle-options.js +99 -0
  189. package/dist/base/table-view/internal/factory-lifecycle-options.js.map +1 -0
  190. package/dist/base/table-view/internal/factory-private-actions.d.ts +32 -0
  191. package/dist/base/table-view/internal/factory-private-actions.js +77 -0
  192. package/dist/base/table-view/internal/factory-private-actions.js.map +1 -0
  193. package/dist/base/table-view/internal/factory-private-displays.d.ts +5 -0
  194. package/dist/base/table-view/internal/factory-private-displays.js +21 -0
  195. package/dist/base/table-view/internal/factory-private-displays.js.map +1 -0
  196. package/dist/base/table-view/internal/factory-private-urls.d.ts +15 -0
  197. package/dist/base/table-view/internal/factory-private-urls.js +43 -0
  198. package/dist/base/table-view/internal/factory-private-urls.js.map +1 -0
  199. package/dist/base/table-view/internal/files.js +3 -4
  200. package/dist/base/table-view/internal/files.js.map +1 -1
  201. package/dist/base/table-view/internal/footer.js +5 -3
  202. package/dist/base/table-view/internal/footer.js.map +1 -1
  203. package/dist/base/table-view/internal/guards.js +7 -10
  204. package/dist/base/table-view/internal/guards.js.map +1 -1
  205. package/dist/base/table-view/internal/meta-helpers.d.ts +27 -0
  206. package/dist/base/table-view/internal/meta-helpers.js +75 -0
  207. package/dist/base/table-view/internal/meta-helpers.js.map +1 -0
  208. package/dist/base/table-view/internal/meta.js +8 -2
  209. package/dist/base/table-view/internal/meta.js.map +1 -1
  210. package/dist/base/table-view/internal/nav-badges.js +5 -3
  211. package/dist/base/table-view/internal/nav-badges.js.map +1 -1
  212. package/dist/base/table-view/internal/option-contract.d.ts +403 -0
  213. package/dist/base/table-view/internal/option-contract.js +3 -0
  214. package/dist/base/table-view/internal/option-contract.js.map +1 -0
  215. package/dist/base/table-view/internal/option-displays.d.ts +125 -0
  216. package/dist/base/table-view/internal/option-displays.js +3 -0
  217. package/dist/base/table-view/internal/option-displays.js.map +1 -0
  218. package/dist/base/table-view/internal/option-empty-states.d.ts +43 -0
  219. package/dist/base/table-view/internal/option-empty-states.js +3 -0
  220. package/dist/base/table-view/internal/option-empty-states.js.map +1 -0
  221. package/dist/base/table-view/internal/option-expandable.d.ts +66 -0
  222. package/dist/base/table-view/internal/option-expandable.js +3 -0
  223. package/dist/base/table-view/internal/option-expandable.js.map +1 -0
  224. package/dist/base/table-view/internal/option-filtering.d.ts +85 -0
  225. package/dist/base/table-view/internal/option-filtering.js +4 -0
  226. package/dist/base/table-view/internal/option-filtering.js.map +1 -0
  227. package/dist/base/table-view/internal/option-footer.d.ts +64 -0
  228. package/dist/base/table-view/internal/option-footer.js +3 -0
  229. package/dist/base/table-view/internal/option-footer.js.map +1 -0
  230. package/dist/base/table-view/internal/option-forms.d.ts +62 -0
  231. package/dist/base/table-view/internal/option-forms.js +3 -0
  232. package/dist/base/table-view/internal/option-forms.js.map +1 -0
  233. package/dist/base/table-view/internal/option-row-actions.d.ts +76 -0
  234. package/dist/base/table-view/internal/option-row-actions.js +3 -0
  235. package/dist/base/table-view/internal/option-row-actions.js.map +1 -0
  236. package/dist/base/table-view/internal/option-views.d.ts +199 -0
  237. package/dist/base/table-view/internal/option-views.js +3 -0
  238. package/dist/base/table-view/internal/option-views.js.map +1 -0
  239. package/dist/base/table-view/internal/options.d.ts +2 -6
  240. package/dist/base/table-view/internal/options.js +35 -6
  241. package/dist/base/table-view/internal/options.js.map +1 -1
  242. package/dist/base/table-view/internal/realtime.js +15 -5
  243. package/dist/base/table-view/internal/realtime.js.map +1 -1
  244. package/dist/base/table-view/internal/request-filter.js +12 -12
  245. package/dist/base/table-view/internal/request-filter.js.map +1 -1
  246. package/dist/base/table-view/internal/resource-form.js +1 -10
  247. package/dist/base/table-view/internal/resource-form.js.map +1 -1
  248. package/dist/base/table-view/internal/row-actions-schema.js +0 -6
  249. package/dist/base/table-view/internal/row-actions-schema.js.map +1 -1
  250. package/dist/base/table-view/internal/row-rule-shape.d.ts +10 -0
  251. package/dist/base/table-view/internal/row-rule-shape.js +43 -0
  252. package/dist/base/table-view/internal/row-rule-shape.js.map +1 -0
  253. package/dist/base/table-view/internal/row-rules.js +1 -4
  254. package/dist/base/table-view/internal/row-rules.js.map +1 -1
  255. package/dist/base/table-view/internal/tabs.d.ts +1 -1
  256. package/dist/base/table-view/internal/tabs.js +6 -9
  257. package/dist/base/table-view/internal/tabs.js.map +1 -1
  258. package/dist/base/table-view/internal/validation.js +2 -16
  259. package/dist/base/table-view/internal/validation.js.map +1 -1
  260. package/dist/base/table-view/internal/writer.js +1 -0
  261. package/dist/base/table-view/internal/writer.js.map +1 -1
  262. package/dist/base/table-view/meta.js +11 -93
  263. package/dist/base/table-view/meta.js.map +1 -1
  264. package/dist/base/table-view/options.d.ts +61 -1099
  265. package/dist/base/table-view/options.js.map +1 -1
  266. package/dist/base/table-view/resource-form.js +0 -2
  267. package/dist/base/table-view/resource-form.js.map +1 -1
  268. package/dist/base/table-view/routes.d.ts +3 -1
  269. package/dist/base/table-view/routes.js +33 -28
  270. package/dist/base/table-view/routes.js.map +1 -1
  271. package/dist/base/table-view/schema.d.ts +93 -93
  272. package/dist/base/table-view/schema.js +4 -22
  273. package/dist/base/table-view/schema.js.map +1 -1
  274. package/dist/base/table-view/source.js +0 -5
  275. package/dist/base/table-view/source.js.map +1 -1
  276. package/dist/base/table-view/views.js +0 -3
  277. package/dist/base/table-view/views.js.map +1 -1
  278. package/dist/base/table-view/writer.js +0 -5
  279. package/dist/base/table-view/writer.js.map +1 -1
  280. package/dist/base/top-list-card.d.ts +13 -13
  281. package/dist/base/top-list-card.js +2 -0
  282. package/dist/base/top-list-card.js.map +1 -1
  283. package/dist/base/types/action-target.d.ts +1 -302
  284. package/dist/base/types/button.d.ts +2 -7
  285. package/dist/base/types/button.js +35 -8
  286. package/dist/base/types/button.js.map +1 -1
  287. package/dist/base/types/confirm-dialog.d.ts +1 -127
  288. package/dist/base/types/custom-button.d.ts +1 -87
  289. package/dist/base/types/error.js +2 -1
  290. package/dist/base/types/error.js.map +1 -1
  291. package/dist/base/types/export-status.d.ts +2 -8
  292. package/dist/base/types/export-status.js +35 -9
  293. package/dist/base/types/export-status.js.map +1 -1
  294. package/dist/base/types/form-values.d.ts +1 -4
  295. package/dist/base/types/internal/action-target.d.ts +2 -8
  296. package/dist/base/types/internal/action-target.js +36 -15
  297. package/dist/base/types/internal/action-target.js.map +1 -1
  298. package/dist/base/types/row-action-operators.d.ts +3 -29
  299. package/dist/base/types/row-action-operators.js +35 -18
  300. package/dist/base/types/row-action-operators.js.map +1 -1
  301. package/dist/base/types/row-action.d.ts +3 -36
  302. package/dist/base/types/size.d.ts +1 -3
  303. package/dist/base/types/size.js +0 -3
  304. package/dist/base/types/size.js.map +1 -1
  305. package/dist/base/types/tone.d.ts +3 -8
  306. package/dist/base/types/tone.js +35 -15
  307. package/dist/base/types/tone.js.map +1 -1
  308. package/dist/base/types/watch.d.ts +5 -19
  309. package/dist/base/types/watch.js +35 -3
  310. package/dist/base/types/watch.js.map +1 -1
  311. package/dist/component-options/action-target.d.ts +304 -0
  312. package/dist/component-options/action-target.js +3 -0
  313. package/dist/component-options/action-target.js.map +1 -0
  314. package/dist/component-options/button.d.ts +93 -0
  315. package/dist/component-options/button.js +12 -0
  316. package/dist/component-options/button.js.map +1 -0
  317. package/dist/component-options/confirm-dialog.d.ts +132 -0
  318. package/dist/component-options/confirm-dialog.js +18 -0
  319. package/dist/component-options/confirm-dialog.js.map +1 -0
  320. package/dist/component-options/data-type.d.ts +101 -0
  321. package/dist/component-options/data-type.js +146 -0
  322. package/dist/component-options/data-type.js.map +1 -0
  323. package/dist/component-options/form-field.d.ts +88 -0
  324. package/dist/component-options/form-field.js +3 -0
  325. package/dist/component-options/form-field.js.map +1 -0
  326. package/dist/component-options/internal/action-target.d.ts +8 -0
  327. package/dist/component-options/internal/action-target.js +18 -0
  328. package/dist/component-options/internal/action-target.js.map +1 -0
  329. package/dist/component-options/internal/button-availability.d.ts +17 -0
  330. package/dist/component-options/internal/button-availability.js +34 -0
  331. package/dist/component-options/internal/button-availability.js.map +1 -0
  332. package/dist/component-options/internal/confirm-dialog.d.ts +13 -0
  333. package/dist/component-options/internal/confirm-dialog.js +24 -0
  334. package/dist/component-options/internal/confirm-dialog.js.map +1 -0
  335. package/dist/component-options/internal/form-field.d.ts +7 -0
  336. package/dist/component-options/internal/form-field.js +31 -0
  337. package/dist/component-options/internal/form-field.js.map +1 -0
  338. package/dist/component-options/internal/page-layout.d.ts +71 -0
  339. package/dist/component-options/internal/page-layout.js +10 -0
  340. package/dist/component-options/internal/page-layout.js.map +1 -0
  341. package/dist/component-options/page-layout.d.ts +80 -0
  342. package/dist/component-options/page-layout.js +57 -0
  343. package/dist/component-options/page-layout.js.map +1 -0
  344. package/dist/component-options/row-action.d.ts +66 -0
  345. package/dist/component-options/row-action.js +22 -0
  346. package/dist/component-options/row-action.js.map +1 -0
  347. package/dist/component-slots.js.map +1 -1
  348. package/dist/component.d.ts +2 -2
  349. package/dist/component.js +38 -193
  350. package/dist/component.js.map +1 -1
  351. package/dist/data-controllers/members.js +2 -8
  352. package/dist/data-controllers/members.js.map +1 -1
  353. package/dist/data-controllers/roles.js +0 -5
  354. package/dist/data-controllers/roles.js.map +1 -1
  355. package/dist/db/internal/exportJobs.model.js +10 -6
  356. package/dist/db/internal/exportJobs.model.js.map +1 -1
  357. package/dist/db/internal/tenantLifecycle.model.js +0 -2
  358. package/dist/db/internal/tenantLifecycle.model.js.map +1 -1
  359. package/dist/db/tables/exportJobs.table.d.ts +1 -1
  360. package/dist/db/tables/roles.table.js.map +1 -1
  361. package/dist/db/tables/user_invites.table.d.ts +1 -1
  362. package/dist/db/tables/user_invites.table.js.map +1 -1
  363. package/dist/export-status.d.ts +8 -0
  364. package/dist/export-status.js +13 -0
  365. package/dist/export-status.js.map +1 -0
  366. package/dist/hooks.d.ts +1 -1
  367. package/dist/hooks.js +2 -4
  368. package/dist/hooks.js.map +1 -1
  369. package/dist/index.js +0 -9
  370. package/dist/index.js.map +1 -1
  371. package/dist/internal/component-builder.d.ts +17 -0
  372. package/dist/internal/component-builder.js +58 -0
  373. package/dist/internal/component-builder.js.map +1 -0
  374. package/dist/internal/component-permissions.d.ts +13 -0
  375. package/dist/internal/component-permissions.js +45 -0
  376. package/dist/internal/component-permissions.js.map +1 -0
  377. package/dist/internal/component-serialization.d.ts +10 -0
  378. package/dist/internal/component-serialization.js +42 -0
  379. package/dist/internal/component-serialization.js.map +1 -0
  380. package/dist/internal/component-slots.js +7 -4
  381. package/dist/internal/component-slots.js.map +1 -1
  382. package/dist/internal/component-watches.d.ts +17 -0
  383. package/dist/internal/component-watches.js +110 -0
  384. package/dist/internal/component-watches.js.map +1 -0
  385. package/dist/internal/invite-membership.js +0 -1
  386. package/dist/internal/invite-membership.js.map +1 -1
  387. package/dist/invite-extension-payloads.d.ts +2 -0
  388. package/dist/invite-extension-payloads.js +3 -0
  389. package/dist/invite-extension-payloads.js.map +1 -0
  390. package/dist/invite-extensions/internal/delivery.js +4 -1
  391. package/dist/invite-extensions/internal/delivery.js.map +1 -1
  392. package/dist/invite-extensions/internal/edit.js +5 -4
  393. package/dist/invite-extensions/internal/edit.js.map +1 -1
  394. package/dist/invite-extensions/internal/form-slot.js +5 -35
  395. package/dist/invite-extensions/internal/form-slot.js.map +1 -1
  396. package/dist/invite-extensions/internal/payload-slices.js +10 -3
  397. package/dist/invite-extensions/internal/payload-slices.js.map +1 -1
  398. package/dist/invite-extensions/internal/registry.js +3 -5
  399. package/dist/invite-extensions/internal/registry.js.map +1 -1
  400. package/dist/invite-extensions/registry.js +3 -8
  401. package/dist/invite-extensions/registry.js.map +1 -1
  402. package/dist/invite-extensions/types.d.ts +1 -2
  403. package/dist/invite-resolution.js +2 -1
  404. package/dist/invite-resolution.js.map +1 -1
  405. package/dist/layout-banners.js.map +1 -1
  406. package/dist/notifications/builder.js +25 -5
  407. package/dist/notifications/builder.js.map +1 -1
  408. package/dist/notifications/internal.js +0 -3
  409. package/dist/notifications/internal.js.map +1 -1
  410. package/dist/notifications/sendable.js.map +1 -1
  411. package/dist/page/categories.js +1 -4
  412. package/dist/page/categories.js.map +1 -1
  413. package/dist/page/controllers.js +9 -55
  414. package/dist/page/controllers.js.map +1 -1
  415. package/dist/page/form-page-routes.js +0 -7
  416. package/dist/page/form-page-routes.js.map +1 -1
  417. package/dist/page/internal/categories.d.ts +1 -1
  418. package/dist/page/internal/categories.js +12 -36
  419. package/dist/page/internal/categories.js.map +1 -1
  420. package/dist/page/internal/category-permission.d.ts +10 -0
  421. package/dist/page/internal/category-permission.js +20 -0
  422. package/dist/page/internal/category-permission.js.map +1 -0
  423. package/dist/page/internal/component-target.js +2 -2
  424. package/dist/page/internal/component-target.js.map +1 -1
  425. package/dist/page/internal/component-tree.js +0 -2
  426. package/dist/page/internal/component-tree.js.map +1 -1
  427. package/dist/page/internal/controller-options.d.ts +6 -0
  428. package/dist/page/internal/controller-options.js +40 -0
  429. package/dist/page/internal/controller-options.js.map +1 -0
  430. package/dist/page/internal/extension-assembly.js +2 -7
  431. package/dist/page/internal/extension-assembly.js.map +1 -1
  432. package/dist/page/internal/layout-filter.js +7 -3
  433. package/dist/page/internal/layout-filter.js.map +1 -1
  434. package/dist/page/internal/metadata-components.d.ts +47 -0
  435. package/dist/page/internal/metadata-components.js +136 -0
  436. package/dist/page/internal/metadata-components.js.map +1 -0
  437. package/dist/page/internal/metadata-extension-contributions.d.ts +14 -0
  438. package/dist/page/internal/metadata-extension-contributions.js +56 -0
  439. package/dist/page/internal/metadata-extension-contributions.js.map +1 -0
  440. package/dist/page/internal/metadata-extensions.d.ts +8 -0
  441. package/dist/page/internal/metadata-extensions.js +21 -0
  442. package/dist/page/internal/metadata-extensions.js.map +1 -0
  443. package/dist/page/internal/metadata-helpers.js +0 -14
  444. package/dist/page/internal/metadata-helpers.js.map +1 -1
  445. package/dist/page/internal/metadata-info.d.ts +5 -0
  446. package/dist/page/internal/metadata-info.js +39 -0
  447. package/dist/page/internal/metadata-info.js.map +1 -0
  448. package/dist/page/internal/metadata-layout-response.d.ts +32 -0
  449. package/dist/page/internal/metadata-layout-response.js +76 -0
  450. package/dist/page/internal/metadata-layout-response.js.map +1 -0
  451. package/dist/page/internal/metadata-layout.d.ts +10 -0
  452. package/dist/page/internal/metadata-layout.js +44 -0
  453. package/dist/page/internal/metadata-layout.js.map +1 -0
  454. package/dist/page/internal/metadata-lifecycle.d.ts +52 -0
  455. package/dist/page/internal/metadata-lifecycle.js +241 -0
  456. package/dist/page/internal/metadata-lifecycle.js.map +1 -0
  457. package/dist/page/internal/metadata-owner.d.ts +53 -0
  458. package/dist/page/internal/metadata-owner.js +14 -0
  459. package/dist/page/internal/metadata-owner.js.map +1 -0
  460. package/dist/page/internal/metadata-publish.d.ts +20 -0
  461. package/dist/page/internal/metadata-publish.js +55 -0
  462. package/dist/page/internal/metadata-publish.js.map +1 -0
  463. package/dist/page/internal/metadata-registration.d.ts +8 -0
  464. package/dist/page/internal/metadata-registration.js +72 -0
  465. package/dist/page/internal/metadata-registration.js.map +1 -0
  466. package/dist/page/internal/metadata-upload-registration.d.ts +16 -0
  467. package/dist/page/internal/metadata-upload-registration.js +64 -0
  468. package/dist/page/internal/metadata-upload-registration.js.map +1 -0
  469. package/dist/page/internal/metadata-uploads.d.ts +18 -0
  470. package/dist/page/internal/metadata-uploads.js +46 -0
  471. package/dist/page/internal/metadata-uploads.js.map +1 -0
  472. package/dist/page/internal/nav-badges.d.ts +1 -1
  473. package/dist/page/internal/nav-badges.js +3 -1
  474. package/dist/page/internal/nav-badges.js.map +1 -1
  475. package/dist/page/internal/page-record.d.ts +2 -9
  476. package/dist/page/internal/page-record.js +8 -5
  477. package/dist/page/internal/page-record.js.map +1 -1
  478. package/dist/page/internal/page-registration.js +0 -4
  479. package/dist/page/internal/page-registration.js.map +1 -1
  480. package/dist/page/internal/registry.js +2 -1
  481. package/dist/page/internal/registry.js.map +1 -1
  482. package/dist/page/internal/table-view-ids.js +3 -2
  483. package/dist/page/internal/table-view-ids.js.map +1 -1
  484. package/dist/page/layout-filter.js +1 -0
  485. package/dist/page/layout-filter.js.map +1 -1
  486. package/dist/page/metadata.js +192 -558
  487. package/dist/page/metadata.js.map +1 -1
  488. package/dist/page/roots.js +3 -5
  489. package/dist/page/roots.js.map +1 -1
  490. package/dist/page/types.d.ts +1 -1
  491. package/dist/page/types.js.map +1 -1
  492. package/dist/permissions.js +0 -18
  493. package/dist/permissions.js.map +1 -1
  494. package/dist/realtime.js +0 -3
  495. package/dist/realtime.js.map +1 -1
  496. package/dist/request-tenant.js +4 -1
  497. package/dist/request-tenant.js.map +1 -1
  498. package/dist/tenant-lifecycle.js +2 -2
  499. package/dist/tenant-lifecycle.js.map +1 -1
  500. package/dist/tones.d.ts +8 -0
  501. package/dist/tones.js +19 -0
  502. package/dist/tones.js.map +1 -0
  503. package/dist/uploads.js +15 -4
  504. package/dist/uploads.js.map +1 -1
  505. package/dist/utils/internal/row-instance.js +2 -3
  506. package/dist/utils/internal/row-instance.js.map +1 -1
  507. package/dist/utils/internal/type-check.d.ts +10 -1
  508. package/dist/utils/internal/type-check.js +12 -3
  509. package/dist/utils/internal/type-check.js.map +1 -1
  510. package/dist/utils/internal/value-parser.js +7 -2
  511. package/dist/utils/internal/value-parser.js.map +1 -1
  512. package/dist/watch-actions.d.ts +19 -0
  513. package/dist/watch-actions.js +7 -0
  514. package/dist/watch-actions.js.map +1 -0
  515. package/docs/3.base/2.types.md +1 -1
  516. package/docs/3.base/4.tables.md +1 -1
  517. package/docs/3.base/8.data-types.md +2 -0
  518. package/docs/4.notifications/3.sending.md +1 -1
  519. package/package.json +3 -3
@@ -0,0 +1,267 @@
1
+ /** Stable relation data types. @packageDocumentation */
2
+ import type { ControllerClass } from "@antelopejs/interface-api";
3
+ import { z } from "zod";
4
+ import type { FormContainerPageTexts } from "../../table-view/options";
5
+ import { DataType } from "../core";
6
+ /** {@link FormComponents.RelationFilterBy}, `field` typed on the related row. */
7
+ export interface RelationFilterBy<T extends ControllerClass> {
8
+ field: keyof InstanceType<T> & string;
9
+ from: string;
10
+ }
11
+ export declare class RelationType<T extends ControllerClass> extends DataType {
12
+ readonly options: {
13
+ placeholder?: string;
14
+ multiple?: boolean;
15
+ deselectable?: boolean;
16
+ dataApiController: T;
17
+ index?: string;
18
+ keyMapping?: {
19
+ label?: keyof InstanceType<T> & string;
20
+ value?: keyof InstanceType<T> & string;
21
+ avatar?: keyof InstanceType<T> & string;
22
+ disabled?: keyof InstanceType<T> & string;
23
+ };
24
+ fallback?: string;
25
+ /**
26
+ * Use the relation purely as a native FILTER, without resolving the
27
+ * related row into the `/list` output.
28
+ *
29
+ * By default a relation column applies a `Foreign(...)` join
30
+ * (see {@link decorateField}) so list rows carry the resolved related
31
+ * object (e.g. `{ name: "..." }`) instead of the raw foreign-key id.
32
+ * That join is right for grid/form display but wrong for a column that
33
+ * is only meant to drive the funnel filter on a read-only list: it
34
+ * rewrites the scalar id away and (because the join also rebuilds the
35
+ * list projection) can drop the row's own id key from the pluck.
36
+ *
37
+ * With `filterOnly: true` the join is skipped entirely. The column keeps
38
+ * its relation `compareModes` and `filterComponents` (the searchable
39
+ * relation picker in the funnel) and, when declared `filterable: true`,
40
+ * the backend `@Filter` still runs equality on the RAW scalar column —
41
+ * so the funnel filters correctly while `/list` rows keep the raw id
42
+ * under its key and keep the row id key (`_id`/`rowIdKey`) untouched.
43
+ *
44
+ * The backend filter operates on the stored scalar, which already holds
45
+ * exactly the value the relation picker emits (`keyMapping.value`, or
46
+ * the `index` value), so equality filtering stays correct without the
47
+ * join.
48
+ */
49
+ filterOnly?: boolean;
50
+ /**
51
+ * Title and description of the drawer the picker's "add" entry
52
+ * opens, e.g. "New user". `$`-prefixed: i18n keys. Default to "New
53
+ * entry".
54
+ */
55
+ addForm?: FormContainerPageTexts;
56
+ /**
57
+ * Lists only the related rows whose `field` equals the form's value
58
+ * of `from`, e.g. `{ field: "customer", from: "customer" }` for a
59
+ * ticket's site. `field` must be filterable on the related
60
+ * controller: declaring it otherwise throws at registration.
61
+ */
62
+ filterBy?: RelationFilterBy<T>;
63
+ };
64
+ constructor(options: {
65
+ placeholder?: string;
66
+ multiple?: boolean;
67
+ deselectable?: boolean;
68
+ dataApiController: T;
69
+ index?: string;
70
+ keyMapping?: {
71
+ label?: keyof InstanceType<T> & string;
72
+ value?: keyof InstanceType<T> & string;
73
+ avatar?: keyof InstanceType<T> & string;
74
+ disabled?: keyof InstanceType<T> & string;
75
+ };
76
+ fallback?: string;
77
+ /**
78
+ * Use the relation purely as a native FILTER, without resolving the
79
+ * related row into the `/list` output.
80
+ *
81
+ * By default a relation column applies a `Foreign(...)` join
82
+ * (see {@link decorateField}) so list rows carry the resolved related
83
+ * object (e.g. `{ name: "..." }`) instead of the raw foreign-key id.
84
+ * That join is right for grid/form display but wrong for a column that
85
+ * is only meant to drive the funnel filter on a read-only list: it
86
+ * rewrites the scalar id away and (because the join also rebuilds the
87
+ * list projection) can drop the row's own id key from the pluck.
88
+ *
89
+ * With `filterOnly: true` the join is skipped entirely. The column keeps
90
+ * its relation `compareModes` and `filterComponents` (the searchable
91
+ * relation picker in the funnel) and, when declared `filterable: true`,
92
+ * the backend `@Filter` still runs equality on the RAW scalar column —
93
+ * so the funnel filters correctly while `/list` rows keep the raw id
94
+ * under its key and keep the row id key (`_id`/`rowIdKey`) untouched.
95
+ *
96
+ * The backend filter operates on the stored scalar, which already holds
97
+ * exactly the value the relation picker emits (`keyMapping.value`, or
98
+ * the `index` value), so equality filtering stays correct without the
99
+ * join.
100
+ */
101
+ filterOnly?: boolean;
102
+ /**
103
+ * Title and description of the drawer the picker's "add" entry
104
+ * opens, e.g. "New user". `$`-prefixed: i18n keys. Default to "New
105
+ * entry".
106
+ */
107
+ addForm?: FormContainerPageTexts;
108
+ /**
109
+ * Lists only the related rows whose `field` equals the form's value
110
+ * of `from`, e.g. `{ field: "customer", from: "customer" }` for a
111
+ * ticket's site. `field` must be filterable on the related
112
+ * controller: declaring it otherwise throws at registration.
113
+ */
114
+ filterBy?: RelationFilterBy<T>;
115
+ });
116
+ protected defaultInputComponent(): import("../../..").ComponentInfoSerialized<{
117
+ placeholder: string | undefined;
118
+ multiple: boolean | undefined;
119
+ deselectable: boolean | undefined;
120
+ searchUrl: string;
121
+ keyMapping: {
122
+ label?: keyof InstanceType<T> & string;
123
+ value?: keyof InstanceType<T> & string;
124
+ avatar?: keyof InstanceType<T> & string;
125
+ disabled?: keyof InstanceType<T> & string;
126
+ } | undefined;
127
+ filterBy: RelationFilterBy<T> | undefined;
128
+ addForm: import("../../..").ComponentInfoSerialized<import("../..").FormPropsSerialized> | undefined;
129
+ addPermissionIds: string[] | undefined;
130
+ addFormTexts: FormContainerPageTexts | undefined;
131
+ }>;
132
+ filterComponents(): {
133
+ default: import("../../..").ComponentInfoSerialized<{
134
+ placeholder: string | undefined;
135
+ multiple: boolean | undefined;
136
+ deselectable: boolean | undefined;
137
+ searchUrl: string;
138
+ keyMapping: {
139
+ label?: keyof InstanceType<T> & string;
140
+ value?: keyof InstanceType<T> & string;
141
+ avatar?: keyof InstanceType<T> & string;
142
+ disabled?: keyof InstanceType<T> & string;
143
+ } | undefined;
144
+ filterBy: RelationFilterBy<T> | undefined;
145
+ addForm: import("../../..").ComponentInfoSerialized<import("../..").FormPropsSerialized> | undefined;
146
+ addPermissionIds: string[] | undefined;
147
+ addFormTexts: FormContainerPageTexts | undefined;
148
+ }>;
149
+ };
150
+ describedInputComponent(): import("../../..").ComponentInfoSerialized<{
151
+ placeholder: string | undefined;
152
+ multiple: boolean | undefined;
153
+ deselectable: boolean | undefined;
154
+ searchUrl: string;
155
+ keyMapping: {
156
+ label?: keyof InstanceType<T> & string;
157
+ value?: keyof InstanceType<T> & string;
158
+ avatar?: keyof InstanceType<T> & string;
159
+ disabled?: keyof InstanceType<T> & string;
160
+ } | undefined;
161
+ filterBy: RelationFilterBy<T> | undefined;
162
+ addForm: import("../../..").ComponentInfoSerialized<import("../..").FormPropsSerialized> | undefined;
163
+ addPermissionIds: string[] | undefined;
164
+ addFormTexts: FormContainerPageTexts | undefined;
165
+ }>;
166
+ private relationInput;
167
+ getValidation(): z.ZodType;
168
+ private assertFilterByFilterable;
169
+ decorateField(target: unknown, key: PropertyKey, descriptor?: PropertyDescriptor): void;
170
+ }
171
+ /**
172
+ * Relation to a self-referencing table rendered as a cascader.
173
+ *
174
+ * The target controller exposes a flat list through its `select` endpoint
175
+ * (the `parent` field of `keyMapping` must be decorated with `@Select()`);
176
+ * the widget rebuilds the tree client-side and displays the full path
177
+ * (e.g. `Electronics / Audio / Headphones`) in table cells.
178
+ */
179
+ export declare class CascaderRelationType<T extends ControllerClass> extends DataType {
180
+ readonly options: {
181
+ placeholder?: string;
182
+ multiple?: boolean;
183
+ deselectable?: boolean;
184
+ dataApiController: T;
185
+ index?: string;
186
+ keyMapping: {
187
+ label: keyof InstanceType<T> & string;
188
+ value: keyof InstanceType<T> & string;
189
+ parent: keyof InstanceType<T> & string;
190
+ disabled?: keyof InstanceType<T> & string;
191
+ };
192
+ maxDepth?: number;
193
+ leafOnly?: boolean;
194
+ fallback?: string;
195
+ /**
196
+ * Use the cascader relation purely as a native FILTER, without
197
+ * resolving the related row into the `/list` output.
198
+ *
199
+ * @see RelationType `filterOnly` for the full rationale: the relation
200
+ * picker and the backend `@Filter` keep working on the raw scalar id,
201
+ * while the join (which would rewrite the value and can drop the row id
202
+ * key) is skipped.
203
+ */
204
+ filterOnly?: boolean;
205
+ };
206
+ constructor(options: {
207
+ placeholder?: string;
208
+ multiple?: boolean;
209
+ deselectable?: boolean;
210
+ dataApiController: T;
211
+ index?: string;
212
+ keyMapping: {
213
+ label: keyof InstanceType<T> & string;
214
+ value: keyof InstanceType<T> & string;
215
+ parent: keyof InstanceType<T> & string;
216
+ disabled?: keyof InstanceType<T> & string;
217
+ };
218
+ maxDepth?: number;
219
+ leafOnly?: boolean;
220
+ fallback?: string;
221
+ /**
222
+ * Use the cascader relation purely as a native FILTER, without
223
+ * resolving the related row into the `/list` output.
224
+ *
225
+ * @see RelationType `filterOnly` for the full rationale: the relation
226
+ * picker and the backend `@Filter` keep working on the raw scalar id,
227
+ * while the join (which would rewrite the value and can drop the row id
228
+ * key) is skipped.
229
+ */
230
+ filterOnly?: boolean;
231
+ });
232
+ protected defaultInputComponent(): import("../../..").ComponentInfoSerialized<{
233
+ placeholder: string | undefined;
234
+ multiple: boolean | undefined;
235
+ deselectable: boolean | undefined;
236
+ searchUrl: string;
237
+ keyMapping: {
238
+ label: keyof InstanceType<T> & string;
239
+ value: keyof InstanceType<T> & string;
240
+ parent: keyof InstanceType<T> & string;
241
+ disabled?: keyof InstanceType<T> & string;
242
+ };
243
+ maxDepth: number | undefined;
244
+ leafOnly: boolean | undefined;
245
+ fallback: string | undefined;
246
+ }>;
247
+ filterComponents(): {
248
+ default: import("../../..").ComponentInfoSerialized<{
249
+ placeholder: string | undefined;
250
+ multiple: boolean | undefined;
251
+ deselectable: boolean | undefined;
252
+ searchUrl: string;
253
+ keyMapping: {
254
+ label: keyof InstanceType<T> & string;
255
+ value: keyof InstanceType<T> & string;
256
+ parent: keyof InstanceType<T> & string;
257
+ disabled?: keyof InstanceType<T> & string;
258
+ };
259
+ maxDepth: number | undefined;
260
+ leafOnly: boolean | undefined;
261
+ fallback: string | undefined;
262
+ }>;
263
+ };
264
+ private cascaderInput;
265
+ getValidation(): z.ZodType;
266
+ decorateField(target: unknown, key: PropertyKey, descriptor?: PropertyDescriptor): void;
267
+ }
@@ -0,0 +1,149 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CascaderRelationType = exports.RelationType = void 0;
13
+ const interface_core_1 = require("@antelopejs/interface-core");
14
+ const metadata_1 = require("@antelopejs/interface-data-api/metadata");
15
+ const zod_1 = require("zod");
16
+ const form_schema_1 = require("../../form-schema");
17
+ const core_1 = require("../core");
18
+ const compare_types_1 = require("../internal/compare-types");
19
+ const relation_add_form_1 = require("../internal/relation-add-form");
20
+ const relation_endpoints_1 = require("../internal/relation-endpoints");
21
+ const compare_types_2 = require("../compare-types");
22
+ function relationCompareModes(multiple) {
23
+ return [
24
+ multiple ? compare_types_2.DefaultDataCompareTypes.Include : compare_types_2.DefaultDataCompareTypes.Is,
25
+ multiple ? compare_types_2.DefaultDataCompareTypes.Exclude : compare_types_2.DefaultDataCompareTypes.IsNot,
26
+ compare_types_2.DefaultDataCompareTypes.IsEmpty,
27
+ compare_types_2.DefaultDataCompareTypes.IsNotEmpty,
28
+ ];
29
+ }
30
+ function relationDefaultCompareMode(multiple) {
31
+ return multiple
32
+ ? compare_types_2.DefaultDataCompareTypes.Include
33
+ : compare_types_2.DefaultDataCompareTypes.Is;
34
+ }
35
+ let RelationType = class RelationType extends core_1.DataType {
36
+ options;
37
+ constructor(options) {
38
+ super(relationCompareModes(options.multiple), relationDefaultCompareMode(options.multiple), options);
39
+ this.options = options;
40
+ }
41
+ defaultInputComponent() {
42
+ return this.relationInput(true, this.options.multiple);
43
+ }
44
+ filterComponents() {
45
+ return { default: this.relationInput(false, false) };
46
+ }
47
+ describedInputComponent() {
48
+ return this.relationInput(false, this.options.multiple);
49
+ }
50
+ relationInput(canAdd, multiple) {
51
+ const controller = this.options.dataApiController;
52
+ const addOptions = canAdd
53
+ ? (0, relation_add_form_1.buildOutsideCycle)(controller, () => (0, relation_endpoints_1.relationAddOptions)(controller))
54
+ : undefined;
55
+ return form_schema_1.FormComponents.InputRelation({
56
+ placeholder: this.options.placeholder,
57
+ multiple,
58
+ deselectable: this.options.deselectable,
59
+ searchUrl: (0, relation_endpoints_1.selectUrl)(controller),
60
+ keyMapping: this.options.keyMapping,
61
+ filterBy: this.options.filterBy,
62
+ addForm: addOptions?.addForm,
63
+ addPermissionIds: addOptions?.addPermissionIds,
64
+ addFormTexts: this.options.addForm,
65
+ });
66
+ }
67
+ getValidation() {
68
+ return this.options.multiple ? zod_1.z.array(zod_1.z.string()) : zod_1.z.string();
69
+ }
70
+ assertFilterByFilterable(key) {
71
+ const field = this.options.filterBy?.field;
72
+ if (!field)
73
+ return;
74
+ const { filters } = (0, interface_core_1.GetMetadata)(this.options.dataApiController, metadata_1.DataAPIMeta);
75
+ if (filters[field])
76
+ return;
77
+ throw new Error(`Relation "${String(key)}": filterBy.field "${field}" is not filterable on ${this.options.dataApiController.name}; declare it filterable: true there.`);
78
+ }
79
+ decorateField(
80
+ // oxlint-disable-next-line anti-slop/no-unknown-parameters -- Preserve DataType's decorator target contract.
81
+ target, key, descriptor) {
82
+ this.assertFilterByFilterable(key);
83
+ if (this.options.filterOnly) {
84
+ return;
85
+ }
86
+ const meta = (0, interface_core_1.GetMetadata)(this.options.dataApiController, metadata_1.DataAPIMeta);
87
+ (0, compare_types_1.absolutizeJoinedSchemas)(meta);
88
+ const { tableName, pluck } = meta;
89
+ (0, metadata_1.Foreign)(tableName, this.options.index, this.options.multiple, Array.from(pluck.select?.keys() || []), meta.schemaName, meta)(target, key, descriptor ?? {});
90
+ }
91
+ };
92
+ exports.RelationType = RelationType;
93
+ exports.RelationType = RelationType = __decorate([
94
+ (0, core_1.RegisterDataType)("relation"),
95
+ __metadata("design:paramtypes", [Object])
96
+ ], RelationType);
97
+ /**
98
+ * Relation to a self-referencing table rendered as a cascader.
99
+ *
100
+ * The target controller exposes a flat list through its `select` endpoint
101
+ * (the `parent` field of `keyMapping` must be decorated with `@Select()`);
102
+ * the widget rebuilds the tree client-side and displays the full path
103
+ * (e.g. `Electronics / Audio / Headphones`) in table cells.
104
+ */
105
+ let CascaderRelationType = class CascaderRelationType extends core_1.DataType {
106
+ options;
107
+ constructor(options) {
108
+ super(relationCompareModes(options.multiple), relationDefaultCompareMode(options.multiple), options);
109
+ this.options = options;
110
+ }
111
+ defaultInputComponent() {
112
+ return this.cascaderInput(this.options.multiple);
113
+ }
114
+ filterComponents() {
115
+ return { default: this.cascaderInput(false) };
116
+ }
117
+ cascaderInput(multiple) {
118
+ return form_schema_1.FormComponents.InputCascader({
119
+ placeholder: this.options.placeholder,
120
+ multiple,
121
+ deselectable: this.options.deselectable,
122
+ searchUrl: (0, relation_endpoints_1.selectUrl)(this.options.dataApiController),
123
+ keyMapping: this.options.keyMapping,
124
+ maxDepth: this.options.maxDepth,
125
+ leafOnly: this.options.leafOnly,
126
+ fallback: this.options.fallback,
127
+ });
128
+ }
129
+ getValidation() {
130
+ return this.options.multiple ? zod_1.z.array(zod_1.z.string()) : zod_1.z.string();
131
+ }
132
+ decorateField(
133
+ // oxlint-disable-next-line anti-slop/no-unknown-parameters -- Preserve DataType's decorator target contract.
134
+ target, key, descriptor) {
135
+ if (this.options.filterOnly) {
136
+ return;
137
+ }
138
+ const meta = (0, interface_core_1.GetMetadata)(this.options.dataApiController, metadata_1.DataAPIMeta);
139
+ (0, compare_types_1.absolutizeJoinedSchemas)(meta);
140
+ const { tableName, pluck } = meta;
141
+ (0, metadata_1.Foreign)(tableName, this.options.index, this.options.multiple, Array.from(pluck.select?.keys() || []), meta.schemaName, meta)(target, key, descriptor ?? {});
142
+ }
143
+ };
144
+ exports.CascaderRelationType = CascaderRelationType;
145
+ exports.CascaderRelationType = CascaderRelationType = __decorate([
146
+ (0, core_1.RegisterDataType)("cascader_relation"),
147
+ __metadata("design:paramtypes", [Object])
148
+ ], CascaderRelationType);
149
+ //# sourceMappingURL=relations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relations.js","sourceRoot":"","sources":["../../../../src/base/data-types/default/relations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /** Stable formatted-string data types. @packageDocumentation */
2
+ import { z } from "zod";
3
+ import { FormComponents } from "../../form-schema";
4
+ import { DataType } from "../core";
5
+ import { EmailTypeOptions, ColorTypeOptions, PasswordTypeOptions, UrlTypeOptions, PhoneTypeOptions } from "./options";
6
+ export declare class EmailType extends DataType {
7
+ readonly options: EmailTypeOptions;
8
+ constructor(options?: EmailTypeOptions);
9
+ protected defaultInputComponent(): import("../../..").ComponentInfoSerialized<FormComponents.InputEmailOptions>;
10
+ getValidation(): z.ZodString;
11
+ }
12
+ export declare class ColorType extends DataType {
13
+ readonly options: ColorTypeOptions;
14
+ constructor(options?: ColorTypeOptions);
15
+ protected defaultInputComponent(): import("../../..").ComponentInfoSerialized<FormComponents.InputColorOptions>;
16
+ getValidation(): z.ZodString;
17
+ }
18
+ export declare class PasswordType extends DataType {
19
+ readonly options: PasswordTypeOptions;
20
+ constructor(options?: PasswordTypeOptions);
21
+ protected defaultInputComponent(): import("../../..").ComponentInfoSerialized<FormComponents.InputPasswordOptions>;
22
+ getValidation(): z.ZodString;
23
+ }
24
+ export declare class UrlType extends DataType {
25
+ readonly options: UrlTypeOptions;
26
+ constructor(options?: UrlTypeOptions);
27
+ protected defaultInputComponent(): import("../../..").ComponentInfoSerialized<FormComponents.InputTextOptions>;
28
+ getValidation(): z.ZodString;
29
+ }
30
+ export declare class PhoneType extends DataType {
31
+ readonly options: PhoneTypeOptions;
32
+ constructor(options?: PhoneTypeOptions);
33
+ protected defaultInputComponent(): import("../../..").ComponentInfoSerialized<FormComponents.InputPhoneOptions>;
34
+ getValidation(): z.ZodString;
35
+ }
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.PhoneType = exports.UrlType = exports.PasswordType = exports.ColorType = exports.EmailType = void 0;
13
+ /** Stable formatted-string data types. @packageDocumentation */
14
+ const zod_1 = require("zod");
15
+ const form_schema_1 = require("../../form-schema");
16
+ const core_1 = require("../core");
17
+ const compare_types_1 = require("../compare-types");
18
+ let EmailType = class EmailType extends core_1.DataType {
19
+ options;
20
+ constructor(options = {}) {
21
+ super([
22
+ compare_types_1.DefaultDataCompareTypes.Is,
23
+ compare_types_1.DefaultDataCompareTypes.IsNot,
24
+ compare_types_1.DefaultDataCompareTypes.Contains,
25
+ compare_types_1.DefaultDataCompareTypes.NotContains,
26
+ compare_types_1.DefaultDataCompareTypes.IsEmpty,
27
+ compare_types_1.DefaultDataCompareTypes.IsNotEmpty,
28
+ ], compare_types_1.DefaultDataCompareTypes.Contains, options);
29
+ this.options = options;
30
+ }
31
+ defaultInputComponent() {
32
+ return form_schema_1.FormComponents.InputEmail({
33
+ placeholder: this.options.placeholder,
34
+ });
35
+ }
36
+ getValidation() {
37
+ return zod_1.z.string().email();
38
+ }
39
+ };
40
+ exports.EmailType = EmailType;
41
+ exports.EmailType = EmailType = __decorate([
42
+ (0, core_1.RegisterDataType)("email"),
43
+ __metadata("design:paramtypes", [Object])
44
+ ], EmailType);
45
+ let ColorType = class ColorType extends core_1.DataType {
46
+ options;
47
+ constructor(options = {}) {
48
+ super([
49
+ compare_types_1.DefaultDataCompareTypes.Is,
50
+ compare_types_1.DefaultDataCompareTypes.IsNot,
51
+ compare_types_1.DefaultDataCompareTypes.IsEmpty,
52
+ compare_types_1.DefaultDataCompareTypes.IsNotEmpty,
53
+ ], compare_types_1.DefaultDataCompareTypes.Is, options);
54
+ this.options = options;
55
+ }
56
+ defaultInputComponent() {
57
+ return form_schema_1.FormComponents.InputColor({
58
+ placeholder: this.options.placeholder,
59
+ });
60
+ }
61
+ getValidation() {
62
+ return zod_1.z.string().regex(/^#[0-9a-fA-F]{6}$/);
63
+ }
64
+ };
65
+ exports.ColorType = ColorType;
66
+ exports.ColorType = ColorType = __decorate([
67
+ (0, core_1.RegisterDataType)("color"),
68
+ __metadata("design:paramtypes", [Object])
69
+ ], ColorType);
70
+ let PasswordType = class PasswordType extends core_1.DataType {
71
+ options;
72
+ constructor(options = {}) {
73
+ super([], undefined, options);
74
+ this.options = options;
75
+ }
76
+ defaultInputComponent() {
77
+ return form_schema_1.FormComponents.InputPassword({
78
+ placeholder: this.options.placeholder,
79
+ minLength: this.options.minLength,
80
+ confirmPassword: this.options.confirmPassword,
81
+ confirmPlaceholder: this.options.confirmPlaceholder,
82
+ });
83
+ }
84
+ getValidation() {
85
+ let schema = zod_1.z.string();
86
+ if (this.options.minLength !== undefined) {
87
+ schema = schema.min(this.options.minLength);
88
+ }
89
+ return schema;
90
+ }
91
+ };
92
+ exports.PasswordType = PasswordType;
93
+ exports.PasswordType = PasswordType = __decorate([
94
+ (0, core_1.RegisterDataType)("password"),
95
+ __metadata("design:paramtypes", [Object])
96
+ ], PasswordType);
97
+ let UrlType = class UrlType extends core_1.DataType {
98
+ options;
99
+ constructor(options = {}) {
100
+ super([
101
+ compare_types_1.DefaultDataCompareTypes.Is,
102
+ compare_types_1.DefaultDataCompareTypes.IsNot,
103
+ compare_types_1.DefaultDataCompareTypes.IsEmpty,
104
+ compare_types_1.DefaultDataCompareTypes.IsNotEmpty,
105
+ ], compare_types_1.DefaultDataCompareTypes.Is, options);
106
+ this.options = options;
107
+ }
108
+ defaultInputComponent() {
109
+ return form_schema_1.FormComponents.InputText({
110
+ placeholder: this.options.placeholder,
111
+ preview: this.options.preview,
112
+ });
113
+ }
114
+ getValidation() {
115
+ return zod_1.z.string().url();
116
+ }
117
+ };
118
+ exports.UrlType = UrlType;
119
+ exports.UrlType = UrlType = __decorate([
120
+ (0, core_1.RegisterDataType)("url"),
121
+ __metadata("design:paramtypes", [Object])
122
+ ], UrlType);
123
+ let PhoneType = class PhoneType extends core_1.DataType {
124
+ options;
125
+ constructor(options = {}) {
126
+ super([
127
+ compare_types_1.DefaultDataCompareTypes.Is,
128
+ compare_types_1.DefaultDataCompareTypes.IsNot,
129
+ compare_types_1.DefaultDataCompareTypes.Contains,
130
+ compare_types_1.DefaultDataCompareTypes.NotContains,
131
+ compare_types_1.DefaultDataCompareTypes.IsEmpty,
132
+ compare_types_1.DefaultDataCompareTypes.IsNotEmpty,
133
+ ], compare_types_1.DefaultDataCompareTypes.Contains, options);
134
+ this.options = options;
135
+ }
136
+ defaultInputComponent() {
137
+ return form_schema_1.FormComponents.InputPhone({
138
+ placeholder: this.options.placeholder,
139
+ requiredPrefix: this.options.requiredPrefix,
140
+ });
141
+ }
142
+ getValidation() {
143
+ if (this.options.requiredPrefix) {
144
+ return zod_1.z.string().regex(/^\+[1-9]\d{1,14}$/);
145
+ }
146
+ return zod_1.z.string();
147
+ }
148
+ };
149
+ exports.PhoneType = PhoneType;
150
+ exports.PhoneType = PhoneType = __decorate([
151
+ (0, core_1.RegisterDataType)("phone"),
152
+ __metadata("design:paramtypes", [Object])
153
+ ], PhoneType);
154
+ //# sourceMappingURL=strings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strings.js","sourceRoot":"","sources":["../../../../src/base/data-types/default/strings.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gEAAgE;AAChE,6BAAwB;AACxB,mDAAmD;AACnD,kCAAqD;AACrD,oDAA2D;AAUpD,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,eAAQ;IACT;IAA5B,YAA4B,UAA4B,EAAE;QACxD,KAAK,CACH;YACE,uCAAuB,CAAC,EAAE;YAC1B,uCAAuB,CAAC,KAAK;YAC7B,uCAAuB,CAAC,QAAQ;YAChC,uCAAuB,CAAC,WAAW;YACnC,uCAAuB,CAAC,OAAO;YAC/B,uCAAuB,CAAC,UAAU;SACnC,EACD,uCAAuB,CAAC,QAAQ,EAChC,OAAO,CACR,CAAC;QAZwB,YAAO,GAAP,OAAO,CAAuB;IAa1D,CAAC;IAES,qBAAqB;QAC7B,OAAO,4BAAc,CAAC,UAAU,CAAC;YAC/B,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;SACtC,CAAC,CAAC;IACL,CAAC;IAED,aAAa;QACX,OAAO,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;CACF,CAAA;AAzBY,8BAAS;oBAAT,SAAS;IADrB,IAAA,uBAAgB,EAAC,OAAO,CAAC;;GACb,SAAS,CAyBrB;AAGM,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,eAAQ;IACT;IAA5B,YAA4B,UAA4B,EAAE;QACxD,KAAK,CACH;YACE,uCAAuB,CAAC,EAAE;YAC1B,uCAAuB,CAAC,KAAK;YAC7B,uCAAuB,CAAC,OAAO;YAC/B,uCAAuB,CAAC,UAAU;SACnC,EACD,uCAAuB,CAAC,EAAE,EAC1B,OAAO,CACR,CAAC;QAVwB,YAAO,GAAP,OAAO,CAAuB;IAW1D,CAAC;IAES,qBAAqB;QAC7B,OAAO,4BAAc,CAAC,UAAU,CAAC;YAC/B,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;SACtC,CAAC,CAAC;IACL,CAAC;IAED,aAAa;QACX,OAAO,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC/C,CAAC;CACF,CAAA;AAvBY,8BAAS;oBAAT,SAAS;IADrB,IAAA,uBAAgB,EAAC,OAAO,CAAC;;GACb,SAAS,CAuBrB;AAGM,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,eAAQ;IACZ;IAA5B,YAA4B,UAA+B,EAAE;QAC3D,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QADJ,YAAO,GAAP,OAAO,CAA0B;IAE7D,CAAC;IAES,qBAAqB;QAC7B,OAAO,4BAAc,CAAC,aAAa,CAAC;YAClC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;YACrC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;YACjC,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe;YAC7C,kBAAkB,EAAE,IAAI,CAAC,OAAO,CAAC,kBAAkB;SACpD,CAAC,CAAC;IACL,CAAC;IAED,aAAa;QACX,IAAI,MAAM,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC;QAExB,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC9C,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;AAvBY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,uBAAgB,EAAC,UAAU,CAAC;;GAChB,YAAY,CAuBxB;AAGM,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,eAAQ;IACP;IAA5B,YAA4B,UAA0B,EAAE;QACtD,KAAK,CACH;YACE,uCAAuB,CAAC,EAAE;YAC1B,uCAAuB,CAAC,KAAK;YAC7B,uCAAuB,CAAC,OAAO;YAC/B,uCAAuB,CAAC,UAAU;SACnC,EACD,uCAAuB,CAAC,EAAE,EAC1B,OAAO,CACR,CAAC;QAVwB,YAAO,GAAP,OAAO,CAAqB;IAWxD,CAAC;IAES,qBAAqB;QAC7B,OAAO,4BAAc,CAAC,SAAS,CAAC;YAC9B,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;YACrC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;SAC9B,CAAC,CAAC;IACL,CAAC;IAED,aAAa;QACX,OAAO,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC;IAC1B,CAAC;CACF,CAAA;AAxBY,0BAAO;kBAAP,OAAO;IADnB,IAAA,uBAAgB,EAAC,KAAK,CAAC;;GACX,OAAO,CAwBnB;AAGM,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,eAAQ;IACT;IAA5B,YAA4B,UAA4B,EAAE;QACxD,KAAK,CACH;YACE,uCAAuB,CAAC,EAAE;YAC1B,uCAAuB,CAAC,KAAK;YAC7B,uCAAuB,CAAC,QAAQ;YAChC,uCAAuB,CAAC,WAAW;YACnC,uCAAuB,CAAC,OAAO;YAC/B,uCAAuB,CAAC,UAAU;SACnC,EACD,uCAAuB,CAAC,QAAQ,EAChC,OAAO,CACR,CAAC;QAZwB,YAAO,GAAP,OAAO,CAAuB;IAa1D,CAAC;IAES,qBAAqB;QAC7B,OAAO,4BAAc,CAAC,UAAU,CAAC;YAC/B,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;YACrC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc;SAC5C,CAAC,CAAC;IACL,CAAC;IAED,aAAa;QACX,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAChC,OAAO,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,OAAC,CAAC,MAAM,EAAE,CAAC;IACpB,CAAC;CACF,CAAA;AA9BY,8BAAS;oBAAT,SAAS;IADrB,IAAA,uBAAgB,EAAC,OAAO,CAAC;;GACb,SAAS,CA8BrB"}