@antelopejs/interface-dms 0.3.5 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (701) hide show
  1. package/CHANGELOG.md +46 -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 +46 -14
  500. package/dist/invites.js +41 -44
  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
@@ -4,6 +4,7 @@ exports.TableViewSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const block_registry_1 = require("../block-registry");
6
6
  const options_1 = require("./options");
7
+ const options_2 = require("./internal/options");
7
8
  const DEFAULT_KANBAN_COLUMN_MAX_HEIGHT = "60vh";
8
9
  const rowActionConfigSchema = zod_1.z.object({
9
10
  isEnabled: zod_1.z.boolean().optional(),
@@ -27,6 +28,8 @@ const rowActionsSchema = zod_1.z.object({
27
28
  add: rowActionOption("Adding data", 1),
28
29
  edit: rowActionOption("Editing data", 2),
29
30
  delete: rowActionOption("Deleting data", 3),
31
+ // Turned off whenever editing is on without a rule: editing opens the row
32
+ // already, so the factory drops the second way in.
30
33
  details: rowActionOption("View details", 6, {
31
34
  offered: false,
32
35
  note: "Offered while editing is off: editing already opens the row.",
@@ -62,10 +65,43 @@ const tabFilterSchema = zod_1.z.object({
62
65
  const tabSchema = zod_1.z.object({
63
66
  id: zod_1.z.string(),
64
67
  label: zod_1.z.string(),
65
- filters: zod_1.z.array(tabFilterSchema),
68
+ filter: (0, block_registry_1.ui)(tabFilterSchema
69
+ .optional()
70
+ .describe("Filter on one column. A tab with a link filters nothing."), { label: "Filter" }),
66
71
  icon: (0, block_registry_1.ui)(zod_1.z.string().optional(), { widget: "icon" }),
67
72
  textColor: (0, block_registry_1.ui)((0, block_registry_1.narrowString)().optional(), { widget: "color" }),
68
73
  iconColor: (0, block_registry_1.ui)((0, block_registry_1.narrowString)().optional(), { widget: "color" }),
74
+ // A page controller target is a live class: editors set a path.
75
+ to: (0, block_registry_1.ui)((0, block_registry_1.opaqueOption)().optional(), {
76
+ label: "Link to",
77
+ widget: "url",
78
+ }),
79
+ permission: (0, block_registry_1.ui)(zod_1.z.string().optional().describe("An action of this table, by name."), { label: "Action", advanced: true }),
80
+ permissionId: (0, block_registry_1.ui)(zod_1.z.string().optional(), {
81
+ label: "Permission",
82
+ widget: "permission",
83
+ }),
84
+ countFrom: (0, block_registry_1.ui)((0, block_registry_1.opaqueOption)().optional(), {
85
+ label: "Count from",
86
+ hidden: true,
87
+ }),
88
+ navBadge: (0, block_registry_1.ui)(zod_1.z.boolean().optional(), {
89
+ label: "Navigation badge",
90
+ widget: "switch",
91
+ }),
92
+ });
93
+ const quickFilterSchema = zod_1.z.object({
94
+ field: (0, block_registry_1.ui)(zod_1.z.string(), {
95
+ label: "Field",
96
+ widget: "field",
97
+ fieldAspect: "filterable",
98
+ }),
99
+ label: zod_1.z.string().optional(),
100
+ icon: (0, block_registry_1.ui)(zod_1.z.string().optional(), { widget: "icon" }),
101
+ allLabel: zod_1.z.string().optional(),
102
+ mode: zod_1.z
103
+ .enum(["is", "is_not", "include", "exclude", "array_contains_string"])
104
+ .optional(),
69
105
  });
70
106
  const formContainerPageConfigSchema = zod_1.z.object({
71
107
  urlSlug: zod_1.z.string().optional(),
@@ -73,21 +109,31 @@ const formContainerPageConfigSchema = zod_1.z.object({
73
109
  description: zod_1.z.string().optional(),
74
110
  customPage: zod_1.z.boolean().optional(),
75
111
  });
112
+ const formContainerPageTextsSchema = zod_1.z.object({
113
+ displayName: zod_1.z.string().optional(),
114
+ description: zod_1.z.string().optional(),
115
+ });
116
+ const formContainerPagesSchema = (page) => zod_1.z
117
+ .object({
118
+ new: page.optional(),
119
+ edit: page.optional(),
120
+ details: page.optional(),
121
+ })
122
+ .optional()
123
+ .describe("Titles of the add, edit and details forms.");
76
124
  const formContainerSchema = zod_1.z.discriminatedUnion("type", [
77
- zod_1.z.object({ type: zod_1.z.literal("drawer") }),
125
+ zod_1.z.object({
126
+ type: zod_1.z.literal("drawer"),
127
+ pages: formContainerPagesSchema(formContainerPageTextsSchema),
128
+ }),
78
129
  zod_1.z.object({
79
130
  type: zod_1.z.literal("modal"),
80
131
  size: (0, block_registry_1.narrowString)().optional(),
132
+ pages: formContainerPagesSchema(formContainerPageTextsSchema),
81
133
  }),
82
134
  zod_1.z.object({
83
135
  type: zod_1.z.literal("page"),
84
- pages: zod_1.z
85
- .object({
86
- new: formContainerPageConfigSchema.optional(),
87
- edit: formContainerPageConfigSchema.optional(),
88
- view: formContainerPageConfigSchema.optional(),
89
- })
90
- .optional(),
136
+ pages: formContainerPagesSchema(formContainerPageConfigSchema),
91
137
  }),
92
138
  ]);
93
139
  const paramFilterSchema = zod_1.z.object({
@@ -95,21 +141,31 @@ const paramFilterSchema = zod_1.z.object({
95
141
  mode: zod_1.z.string().optional(),
96
142
  });
97
143
  const kanbanSchema = zod_1.z.object({
98
- groupByField: (0, block_registry_1.ui)(zod_1.z.string().describe("Field the cards are grouped into columns by."), { label: "Group by", widget: "field", fieldAspect: "filterable" }),
99
- cardFields: (0, block_registry_1.ui)(zod_1.z.array(zod_1.z.string()).optional(), {
144
+ groupByField: (0, block_registry_1.ui)(zod_1.z.string().describe("Field the cards are grouped into columns by."),
145
+ // Each column is fetched with `filter_<field>`, so the field has to be
146
+ // filterable. It does not have to be listed: the columns themselves are
147
+ // built from the field's declared type — a select's items, a boolean's two
148
+ // labels — never from the rows. The one row read is a badge count during a
149
+ // drag, which goes stale rather than wrong when the field is not listed.
150
+ { label: "Group by", widget: "field", fieldAspect: "filterable" }),
151
+ draggable: (0, block_registry_1.ui)(zod_1.z.boolean().default(true), {
152
+ label: "Drag between columns",
153
+ widget: "switch",
154
+ }),
155
+ columnMaxHeight: zod_1.z.string().default(DEFAULT_KANBAN_COLUMN_MAX_HEIGHT),
156
+ });
157
+ const cardSchema = zod_1.z.object({
158
+ fields: (0, block_registry_1.ui)(zod_1.z.array(zod_1.z.string()).optional(), {
100
159
  label: "Card fields",
101
160
  widget: "field",
161
+ // Resolved against the table's listable columns; an unlisted field renders
162
+ // as nothing at all rather than reporting anything.
102
163
  fieldAspect: "listable",
103
164
  }),
104
- cardComponent: (0, block_registry_1.ui)((0, block_registry_1.opaqueOption)().optional(), {
165
+ component: (0, block_registry_1.ui)((0, block_registry_1.opaqueOption)().optional(), {
105
166
  label: "Card component",
106
167
  hidden: true,
107
168
  }),
108
- draggable: (0, block_registry_1.ui)(zod_1.z.boolean().default(true), {
109
- label: "Drag between columns",
110
- widget: "switch",
111
- }),
112
- columnMaxHeight: zod_1.z.string().default(DEFAULT_KANBAN_COLUMN_MAX_HEIGHT),
113
169
  });
114
170
  const displaySchema = zod_1.z.object({
115
171
  id: zod_1.z.string(),
@@ -123,19 +179,100 @@ const displaySchema = zod_1.z.object({
123
179
  search: zod_1.z.boolean().optional(),
124
180
  sorting: zod_1.z.boolean().optional(),
125
181
  tabs: zod_1.z.boolean().optional(),
182
+ header: zod_1.z.boolean().optional(),
126
183
  })
127
184
  .optional(),
128
185
  });
186
+ const expandableFieldSchema = zod_1.z.union([
187
+ (0, block_registry_1.ui)(zod_1.z.string(), {
188
+ widget: "field",
189
+ // Read straight off the listed row: an unlisted field shows an empty value.
190
+ fieldAspect: "listable",
191
+ }),
192
+ zod_1.z.object({
193
+ key: (0, block_registry_1.ui)(zod_1.z.string(), { widget: "field", fieldAspect: "listable" }),
194
+ label: zod_1.z.string().optional(),
195
+ }),
196
+ ]);
197
+ const expandableBehaviorShape = {
198
+ defaultExpanded: (0, block_registry_1.ui)(zod_1.z.enum(["none", "first", "all"]).default("none"), {
199
+ label: "Open on arrival",
200
+ widget: "segmented",
201
+ }),
202
+ single: (0, block_registry_1.ui)(zod_1.z.boolean().optional(), {
203
+ label: "One row at a time",
204
+ widget: "switch",
205
+ }),
206
+ lazyLoad: (0, block_registry_1.ui)(zod_1.z.boolean().optional(), {
207
+ label: "Load the row on open",
208
+ widget: "switch",
209
+ }),
210
+ };
211
+ // The band lists fields or renders a component, never both: one shape each.
212
+ const expandableSchema = zod_1.z.union([
213
+ zod_1.z.object({
214
+ fields: (0, block_registry_1.ui)(zod_1.z.array(expandableFieldSchema), { label: "Detail fields" }),
215
+ fieldsLabel: (0, block_registry_1.ui)(zod_1.z.string().optional(), { label: "Fields heading" }),
216
+ ...expandableBehaviorShape,
217
+ }),
218
+ zod_1.z.object({
219
+ component: (0, block_registry_1.ui)((0, block_registry_1.opaqueOption)(), {
220
+ label: "Detail component",
221
+ hidden: true,
222
+ }),
223
+ ...expandableBehaviorShape,
224
+ }),
225
+ ]);
226
+ /** The options `TableView` accepts, after its controller argument. */
129
227
  exports.TableViewSchema = zod_1.z.object({
130
228
  caption: (0, block_registry_1.ui)(zod_1.z.string().optional().describe("Heading above the table."), {
131
229
  label: "Table title",
132
230
  order: 1,
133
231
  group: "content",
134
232
  }),
233
+ density: (0, block_registry_1.ui)(zod_1.z.enum(["default", "compact"]).optional(), {
234
+ label: "Density",
235
+ group: "appearance",
236
+ widget: "segmented",
237
+ }),
238
+ maxHeight: (0, block_registry_1.ui)(zod_1.z
239
+ .string()
240
+ .optional()
241
+ .describe("Height of the rows' own scroll area, under a sticky header, e.g. 60vh."), { label: "Max height", group: "appearance" }),
242
+ expandable: (0, block_registry_1.ui)(expandableSchema
243
+ .optional()
244
+ .describe("A caret column opens a detail band under each row."), { label: "Expandable rows", group: "features" }),
245
+ layout: (0, block_registry_1.ui)(zod_1.z
246
+ .enum(["full", "compact"])
247
+ .optional()
248
+ .describe("Full dashboard grid, or the compact list of a settings page."), { label: "Layout", group: "appearance", widget: "segmented" }),
249
+ searchPlaceholder: (0, block_registry_1.ui)(zod_1.z.string().optional(), {
250
+ label: "Search placeholder",
251
+ group: "content",
252
+ }),
253
+ quickFilters: (0, block_registry_1.ui)(zod_1.z.array(quickFilterSchema).optional(), {
254
+ label: "Quick filters",
255
+ group: "features",
256
+ }),
257
+ pageSize: (0, block_registry_1.ui)(zod_1.z.number().int().min(1).max(options_1.MAX_TABLE_PAGE_SIZE).optional(), {
258
+ label: "Rows per page",
259
+ group: "appearance",
260
+ widget: "number",
261
+ min: 1,
262
+ max: options_1.MAX_TABLE_PAGE_SIZE,
263
+ }),
264
+ footer: (0, block_registry_1.ui)(zod_1.z
265
+ .object({
266
+ countLabel: zod_1.z.string().optional(),
267
+ hint: zod_1.z.string().optional(),
268
+ })
269
+ .optional(), { label: "Footer texts", group: "content" }),
135
270
  rowIdKey: (0, block_registry_1.ui)(zod_1.z.string().default(options_1.DEFAULT_ROW_ID_FIELD), {
136
271
  label: "Row id field",
137
272
  group: "advanced",
138
273
  widget: "field",
274
+ // Read straight off the fetched row: an unlisted field leaves every row
275
+ // without an id, which breaks selection, edit, delete and copy-link.
139
276
  fieldAspect: "listable",
140
277
  }),
141
278
  labelKey: (0, block_registry_1.ui)(zod_1.z.string().optional().describe("Field naming a row in dialog titles."), {
@@ -150,6 +287,10 @@ exports.TableViewSchema = zod_1.z.object({
150
287
  group: "features",
151
288
  flatten: true,
152
289
  }),
290
+ // Each button's `target` holds a live component the factory calls
291
+ // `serializeSync()` on, and `permission` may be an `Action`. Neither survives
292
+ // a JSON round-trip, so the option is read-only here — the same reason
293
+ // `rowActions.custom`, which has the identical shape, is hidden.
153
294
  customButtons: (0, block_registry_1.ui)((0, block_registry_1.opaqueOption)().optional(), {
154
295
  label: "Toolbar buttons",
155
296
  hidden: true,
@@ -198,6 +339,10 @@ exports.TableViewSchema = zod_1.z.object({
198
339
  widget: "switch",
199
340
  }),
200
341
  kanban: (0, block_registry_1.ui)(kanbanSchema.optional(), { label: "Kanban", group: "advanced" }),
342
+ card: (0, block_registry_1.ui)(cardSchema.optional(), {
343
+ label: "Cards",
344
+ group: "advanced",
345
+ }),
201
346
  displays: (0, block_registry_1.ui)(zod_1.z.array(displaySchema).optional(), {
202
347
  label: "Displays",
203
348
  group: "advanced",
@@ -218,7 +363,7 @@ exports.TableViewSchema = zod_1.z.object({
218
363
  });
219
364
  (0, block_registry_1.RegisterBlockType)({
220
365
  type: "TableView",
221
- componentName: options_1.TABLE_VIEW_COMPONENT_NAME,
366
+ componentName: options_2.TABLE_VIEW_COMPONENT_NAME,
222
367
  schema: exports.TableViewSchema,
223
368
  controllerArg: true,
224
369
  meta: {
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/base/table-view/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/base/table-view/schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ import { ComponentBuilder } from "../../component";
2
+ import type { ColumnOptions } from "./meta";
3
+ import type { TableViewFooterOptions, TableViewOptions, TableViewOptionsSerialized, TableViewRowActionOptions } from "./options";
4
+ /** A column of a source table: a `@Column`'s options, keyed by row field. */
5
+ export interface TableViewSourceColumn extends Pick<ColumnOptions, "name" | "description" | "type" | "order" | "isVisible" | "filterable" | "cellWrap" | "size" | "display"> {
6
+ /** The rows can be sorted on it (by the route, or by the browser). */
7
+ sortable?: boolean;
8
+ }
9
+ /**
10
+ * What the route does with the list query it is sent. What it leaves to the
11
+ * browser, the browser does over the rows the route answered.
12
+ */
13
+ export interface TableViewSourceCapabilities {
14
+ /** The route reads `search` and narrows its rows. */
15
+ search?: boolean;
16
+ /** The route reads `sortKey` and `sortDirection`. */
17
+ sort?: boolean;
18
+ /**
19
+ * The route reads `offset` and `limit` and answers one page. The browser
20
+ * can then neither search nor sort rows it never received: the table
21
+ * searches and sorts only if the route does (`search`, `sort`).
22
+ */
23
+ paginate?: boolean;
24
+ /**
25
+ * The route reads `filter_<column>=<mode>:<value>`: columns may then be
26
+ * `filterable`, and tabs and quick filters filter on them.
27
+ */
28
+ filter?: boolean;
29
+ }
30
+ /** The source table's options, the ones a read-only list can honour. */
31
+ export interface TableViewSourceOptions extends Pick<TableViewOptions, "caption" | "layout" | "density" | "maxHeight" | "pageSize" | "pagination" | "emptyStates" | "searchPlaceholder" | "labelKey" | "customButtons" | "displays" | "defaultDisplay" | "card" | "expandable" | "tabs" | "quickFilters" | "defaultSort"> {
32
+ /** The columns, keyed by row field, in their declared `order`. */
33
+ columns: Record<string, TableViewSourceColumn>;
34
+ /**
35
+ * Route answering `{ results, total }` for the list query (`offset`,
36
+ * `limit`, `sortKey`, `sortDirection`, `search`, `filter_<column>`).
37
+ */
38
+ fetchUrl: string;
39
+ /** The key of the row id, `_id` by default. */
40
+ rowIdKey?: string;
41
+ /** What the route handles itself; the browser does the rest. */
42
+ capabilities?: TableViewSourceCapabilities;
43
+ /** Custom actions only: there are no built-in forms over a source. */
44
+ rowActions?: Pick<TableViewRowActionOptions, "custom" | "hasSelection">;
45
+ /** The footer's texts and legend; summaries need a data controller. */
46
+ footer?: Pick<TableViewFooterOptions, "countLabel" | "hint" | "legend">;
47
+ }
48
+ /** Where a source table reads its rows, as it reaches the client. */
49
+ export interface TableViewSourceSerialized {
50
+ fetchUrl: string;
51
+ capabilities: TableViewSourceCapabilities;
52
+ }
53
+ /**
54
+ * A read-only table view over the rows a module's own route lists, with no
55
+ * data controller behind it: an API's logs, a database's query result, a
56
+ * marketing report. The route answers `{ results, total }` for the list
57
+ * query; what it does not handle itself (`capabilities`) — search, sort,
58
+ * pages — the browser does over the rows it answered. Rows open custom
59
+ * actions (a drawer, a route), never the built-in forms; there is no
60
+ * realtime, export nor footer summary.
61
+ */
62
+ export declare function tableViewFromSource(options: TableViewSourceOptions): ComponentBuilder<TableViewOptionsSerialized>;
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ // A table view over rows a module's own route lists, without a data
3
+ // controller: `TableView.fromSource(...)`. Read-only — its rows open custom
4
+ // drawers or call custom routes, never the built-in forms.
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.tableViewFromSource = tableViewFromSource;
7
+ const component_1 = require("../../component");
8
+ const types_1 = require("../types");
9
+ const data_types_1 = require("../data-types");
10
+ const auth_1 = require("./internal/auth");
11
+ const column_display_1 = require("./internal/column-display");
12
+ const factory_helpers_1 = require("./internal/factory-helpers");
13
+ const options_1 = require("./internal/options");
14
+ const request_filter_1 = require("./internal/request-filter");
15
+ const tabs_1 = require("./internal/tabs");
16
+ const footer_1 = require("./internal/footer");
17
+ const validation_1 = require("./internal/validation");
18
+ // The built-in row actions a source table never offers.
19
+ const NO_BUILT_IN_ACTIONS = {
20
+ add: false,
21
+ edit: false,
22
+ delete: false,
23
+ duplicate: false,
24
+ details: false,
25
+ copyLink: false,
26
+ };
27
+ const byOrder = ([, a], [, b]) => (a.order ?? 0) - (b.order ?? 0);
28
+ /**
29
+ * Whether the table offers a search or a sort: the route handles it, or it
30
+ * answers every row and the browser does.
31
+ */
32
+ function browserCan(capabilities, capability) {
33
+ return !!capabilities[capability] || !capabilities.paginate;
34
+ }
35
+ /** The columns as the column metadata of a table view carries them. */
36
+ function serializeSourceColumns(columns, capabilities) {
37
+ return Object.entries(columns)
38
+ .sort(byOrder)
39
+ .map(([key, column]) => ({
40
+ id: key,
41
+ header: column.name ?? key,
42
+ isVisible: column.isVisible,
43
+ type: (0, data_types_1.serializeType)(column.type),
44
+ accessorKey: key,
45
+ listable: true,
46
+ enableSorting: !!column.sortable && browserCan(capabilities, "sort"),
47
+ enableColumnFilter: !!column.filterable && !!capabilities.filter,
48
+ cellWrap: column.cellWrap,
49
+ size: column.size,
50
+ display: (0, column_display_1.serializeColumnDisplay)(column.display),
51
+ readonlyBehavior: types_1.ReadonlyBehaviorType.default,
52
+ }));
53
+ }
54
+ /** How registration errors name a source table. */
55
+ const sourceName = (options) => `TableView.fromSource(${options.fetchUrl})`;
56
+ /**
57
+ * The checks `TableView()` runs that apply to a source — the page size,
58
+ * the display ids, a tab filtering or linking — and its own: tabs and quick
59
+ * filters send column filters, which only a route reading them can apply,
60
+ * and every key an option names (card fields included) must be a column.
61
+ */
62
+ function assertSourceOptions(options) {
63
+ const where = sourceName(options);
64
+ (0, validation_1.validatePageSize)(where, options.pageSize);
65
+ (0, validation_1.validateDisplayIds)(where, options.displays);
66
+ (0, validation_1.validateDefaultDisplay)(where, options);
67
+ (0, validation_1.assertTabTargets)(where, options.tabs);
68
+ const filtering = (options.tabs?.some((tab) => tab.filter) ?? false) ||
69
+ (options.quickFilters?.length ?? 0) > 0;
70
+ if (filtering && !options.capabilities?.filter) {
71
+ throw new Error(`${where} filters with tabs or quick filters, which needs capabilities.filter: the route applies the filters`);
72
+ }
73
+ const keys = [
74
+ ...(options.tabs ?? []).flatMap((tab) => tab.filter ? [tab.filter.accessorKey] : []),
75
+ ...(options.quickFilters ?? []).map((filter) => filter.field),
76
+ ...(options.labelKey ? [options.labelKey] : []),
77
+ ...(options.card?.fields ?? []),
78
+ ];
79
+ for (const key of keys) {
80
+ if (!options.columns[key]) {
81
+ throw new Error(`${where} references unknown column "${key}"`);
82
+ }
83
+ }
84
+ }
85
+ /**
86
+ * A read-only table view over the rows a module's own route lists, with no
87
+ * data controller behind it: an API's logs, a database's query result, a
88
+ * marketing report. The route answers `{ results, total }` for the list
89
+ * query; what it does not handle itself (`capabilities`) — search, sort,
90
+ * pages — the browser does over the rows it answered. Rows open custom
91
+ * actions (a drawer, a route), never the built-in forms; there is no
92
+ * realtime, export nor footer summary.
93
+ */
94
+ function tableViewFromSource(options) {
95
+ assertSourceOptions(options);
96
+ const capabilities = options.capabilities ?? {};
97
+ const rowActions = (0, factory_helpers_1.serializeRowActions)({
98
+ ...options.rowActions,
99
+ ...NO_BUILT_IN_ACTIONS,
100
+ });
101
+ const declaredCustomButtons = options.customButtons;
102
+ const declaredCustomRowActions = options.rowActions?.custom;
103
+ const declaredTabs = options.tabs;
104
+ const builder = new component_1.ComponentBuilder(options_1.TABLE_VIEW_COMPONENT_NAME);
105
+ builder.action(auth_1.LIST_ACTION, {
106
+ title: "$dms.table.action_list",
107
+ icon: "i-ph-list",
108
+ });
109
+ for (const { id, permission, permissionId } of declaredCustomButtons ?? []) {
110
+ if (id)
111
+ builder.button(id, { permission, permissionId });
112
+ }
113
+ // The column metadata a data controller would give its table views.
114
+ const config = {
115
+ location: options.fetchUrl,
116
+ columns: serializeSourceColumns(options.columns, capabilities),
117
+ };
118
+ if (options.expandable?.lazyLoad) {
119
+ throw new Error(`TableView expandable on ${sourceName(options)} sets lazyLoad: a source has no get route to load a row from`);
120
+ }
121
+ const expandable = (0, factory_helpers_1.serializeExpandable)(sourceName(options), { columns: options.columns }, options.expandable);
122
+ return builder
123
+ .options({
124
+ ...config,
125
+ source: { fetchUrl: options.fetchUrl, capabilities },
126
+ rowActions,
127
+ rowIdKey: options.rowIdKey,
128
+ labelKey: options.labelKey,
129
+ caption: options.caption,
130
+ layout: options.layout,
131
+ density: options.density,
132
+ maxHeight: options.maxHeight,
133
+ pageSize: options.pageSize,
134
+ pagination: options.pagination,
135
+ footer: options.footer,
136
+ expandable,
137
+ emptyStates: (0, footer_1.serializeEmptyStates)(options.emptyStates),
138
+ searchable: browserCan(capabilities, "search"),
139
+ searchPlaceholder: options.searchPlaceholder,
140
+ quickFilters: options.quickFilters,
141
+ tabs: (0, tabs_1.serializeTableViewTabs)(options.tabs),
142
+ displays: (0, factory_helpers_1.serializeTableViewDisplays)(options),
143
+ defaultDisplay: options.defaultDisplay,
144
+ defaultSort: options.defaultSort,
145
+ customButtons: (0, factory_helpers_1.serializeCustomButtons)(declaredCustomButtons),
146
+ enableTableExport: false,
147
+ realtime: false,
148
+ formComponents: {},
149
+ })
150
+ .meta({ name: options.caption || "TableView", icon: "i-ph-table" })
151
+ .onFilter(async (permissions, served, permissionId, context) => ({
152
+ ...served,
153
+ rowActions: {
154
+ ...served.rowActions,
155
+ custom: await (0, request_filter_1.resolveCustomRowActions)(permissions, declaredCustomRowActions, served.rowActions?.custom, permissionId),
156
+ },
157
+ customButtons: await (0, request_filter_1.resolveCustomButtons)(permissions, declaredCustomButtons, served.customButtons, permissionId, context),
158
+ tabs: await (0, tabs_1.resolveTableViewTabs)(permissions, declaredTabs, served.tabs, permissionId),
159
+ }));
160
+ }
161
+ //# sourceMappingURL=source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source.js","sourceRoot":"","sources":["../../../src/base/table-view/source.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { ControllerClass } from "@antelopejs/interface-api";
2
+ /** Query key opening a view, prefixed by the table's id on the page. */
3
+ export declare const TABLE_VIEW_VIEW_QUERY_KEY = "view";
4
+ /** Query key opening a tab, prefixed by the table's id on the page. */
5
+ export declare const TABLE_VIEW_TAB_QUERY_KEY = "tab";
6
+ /** What a link to a table opens. */
7
+ export interface TableViewLinkTarget {
8
+ /** Id of the view to open. */
9
+ view?: string;
10
+ /** Id of the tab to open. */
11
+ tab?: string;
12
+ }
13
+ /**
14
+ * The dashboard path of a page opening one of its table views on a view or a
15
+ * tab (`/workspaces?content.view=past-due`), for a StatGroup item, a KPI card
16
+ * or a notification. `tableId` is the key the table view is mounted under in
17
+ * the page (`page.SetComponent("content", TableView(...))`).
18
+ * @throws When `page` is no page controller.
19
+ */
20
+ export declare function tableViewLink(page: ControllerClass, tableId: string, target: TableViewLinkTarget): string;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ // The views of a table view: named states a module declares (and users save)
3
+ // over the same rows, the URL keys that open them, and the link a backend
4
+ // builds to one of them.
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.TABLE_VIEW_TAB_QUERY_KEY = exports.TABLE_VIEW_VIEW_QUERY_KEY = void 0;
7
+ exports.tableViewLink = tableViewLink;
8
+ const interface_core_1 = require("@antelopejs/interface-core");
9
+ const page_1 = require("../../page");
10
+ /** Query key opening a view, prefixed by the table's id on the page. */
11
+ exports.TABLE_VIEW_VIEW_QUERY_KEY = "view";
12
+ /** Query key opening a tab, prefixed by the table's id on the page. */
13
+ exports.TABLE_VIEW_TAB_QUERY_KEY = "tab";
14
+ const withLeadingSlash = (path) => path.startsWith("/") ? path : `/${path}`;
15
+ /**
16
+ * The dashboard path of a page opening one of its table views on a view or a
17
+ * tab (`/workspaces?content.view=past-due`), for a StatGroup item, a KPI card
18
+ * or a notification. `tableId` is the key the table view is mounted under in
19
+ * the page (`page.SetComponent("content", TableView(...))`).
20
+ * @throws When `page` is no page controller.
21
+ */
22
+ function tableViewLink(page, tableId, target) {
23
+ const pageInfo = (0, interface_core_1.GetMetadata)(page, page_1.PageMetadata).pageInfo;
24
+ if (!pageInfo) {
25
+ throw new Error(`tableViewLink: ${page.name} is no page controller, it has no URL`);
26
+ }
27
+ const query = new URLSearchParams();
28
+ if (target.view) {
29
+ query.set(`${tableId}.${exports.TABLE_VIEW_VIEW_QUERY_KEY}`, target.view);
30
+ }
31
+ if (target.tab) {
32
+ query.set(`${tableId}.${exports.TABLE_VIEW_TAB_QUERY_KEY}`, target.tab);
33
+ }
34
+ const search = query.toString();
35
+ const path = withLeadingSlash(pageInfo.fullSlug);
36
+ return search ? `${path}?${search}` : path;
37
+ }
38
+ //# sourceMappingURL=views.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"views.js","sourceRoot":"","sources":["../../../src/base/table-view/views.ts"],"names":[],"mappings":";AAAA,6EAA6E;AAC7E,0EAA0E;AAC1E,yBAAyB;;;AA6BzB,sCAqBC;AA/CD,+DAAyD;AACzD,qCAA0C;AAE1C,wEAAwE;AAC3D,QAAA,yBAAyB,GAAG,MAAM,CAAC;AAChD,uEAAuE;AAC1D,QAAA,wBAAwB,GAAG,KAAK,CAAC;AAU9C,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAU,EAAE,CAChD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;AAE3C;;;;;;GAMG;AACH,SAAgB,aAAa,CAC3B,IAAqB,EACrB,OAAe,EACf,MAA2B;IAE3B,MAAM,QAAQ,GAAG,IAAA,4BAAW,EAAC,IAAI,EAAE,mBAAY,CAAC,CAAC,QAAQ,CAAC;IAC1D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,kBAAkB,IAAI,CAAC,IAAI,uCAAuC,CACnE,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,eAAe,EAAE,CAAC;IACpC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChB,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,IAAI,iCAAyB,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;QACf,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,IAAI,gCAAwB,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjD,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { PageDeclarationConflictError } from "../../page/declaration-conflict";
2
+ /**
3
+ * Two TableViews with write actions mounted over the same data controller.
4
+ * Thrown while the second one's page registers, which fails it.
5
+ */
6
+ export declare class WritingTableViewConflictError extends PageDeclarationConflictError {
7
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ // A data controller has one writing TableView: its permission guards the
3
+ // writes of the data routes, its row rules apply to them, and its forms are the
4
+ // ones whose files those routes accept. Read-only TableViews may share the
5
+ // controller. A second writing one is a declaration the routes cannot honour --
6
+ // whose permission, whose rules? -- so its page is refused when it registers.
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.WritingTableViewConflictError = void 0;
9
+ const declaration_conflict_1 = require("../../page/declaration-conflict");
10
+ /**
11
+ * Two TableViews with write actions mounted over the same data controller.
12
+ * Thrown while the second one's page registers, which fails it.
13
+ */
14
+ class WritingTableViewConflictError extends declaration_conflict_1.PageDeclarationConflictError {
15
+ }
16
+ exports.WritingTableViewConflictError = WritingTableViewConflictError;
17
+ //# sourceMappingURL=writer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer.js","sourceRoot":"","sources":["../../../src/base/table-view/writer.ts"],"names":[],"mappings":";AAAA,yEAAyE;AACzE,gFAAgF;AAChF,2EAA2E;AAC3E,gFAAgF;AAChF,8EAA8E;;;AAE9E,0EAA+E;AAE/E;;;GAGG;AACH,MAAa,6BAA8B,SAAQ,mDAA4B;CAAG;AAAlF,sEAAkF"}