@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
@@ -6,24 +6,35 @@ const interface_core_1 = require("@antelopejs/interface-core");
6
6
  const logging_1 = require("@antelopejs/interface-core/logging");
7
7
  const interface_database_decorators_1 = require("@antelopejs/interface-database-decorators");
8
8
  const auth_1 = require("../auth");
9
+ // Import from the defining leaf, not the dms-base barrel: the barrel pulls in
10
+ // table-view, which imports the page interface back — entering through the
11
+ // barrel would then call DefaultLayout() while the barrel is still
12
+ // mid-evaluation.
9
13
  const layouts_1 = require("../base/layouts");
10
14
  const component_1 = require("../component");
11
- const component_slots_1 = require("../component-slots");
15
+ const component_slots_1 = require("../internal/component-slots");
12
16
  const db_1 = require("../db");
13
17
  const guards_1 = require("../guards");
14
18
  const permissions_1 = require("../permissions");
15
19
  const request_tenant_1 = require("../request-tenant");
16
20
  const tenant_access_1 = require("../tenant-access");
21
+ const tenant_access_2 = require("../internal/tenant-access");
17
22
  const uploads_1 = require("../uploads");
23
+ // Categories resolve controller classes through PageMetadata; neither module
24
+ // dereferences the other during evaluation.
25
+ // oxlint-disable import/no-cycle
18
26
  const categories_1 = require("./categories");
19
- const component_tree_1 = require("./component-tree");
20
- const extension_assembly_1 = require("./extension-assembly");
21
- const extension_validation_1 = require("./extension-validation");
22
- const form_page_routes_1 = require("./form-page-routes");
27
+ const categories_2 = require("./internal/categories");
28
+ const component_tree_1 = require("./internal/component-tree");
29
+ const extension_assembly_1 = require("./internal/extension-assembly");
30
+ const extension_validation_1 = require("./internal/extension-validation");
31
+ const declaration_conflict_1 = require("./declaration-conflict");
23
32
  const layout_filter_1 = require("./layout-filter");
24
- const registry_1 = require("./registry");
25
- const page_registration_1 = require("./page-registration");
26
- const metadata_helpers_1 = require("./metadata-helpers");
33
+ const layout_filter_2 = require("./internal/layout-filter");
34
+ const table_view_ids_1 = require("./internal/table-view-ids");
35
+ const registry_1 = require("./internal/registry");
36
+ const page_registration_1 = require("./internal/page-registration");
37
+ const metadata_helpers_1 = require("./internal/metadata-helpers");
27
38
  const NATIVE_UPLOAD_FIELD_TYPES = new Set(["file", "image"]);
28
39
  function isNativeUploadField(value) {
29
40
  if (!value || typeof value !== "object")
@@ -61,20 +72,37 @@ class PageMetadata {
61
72
  pageInfo;
62
73
  layout;
63
74
  components = {};
75
+ /**
76
+ * Tenant guard options the page's layout route was registered with. Recorded
77
+ * at registration so the page's `bypassTenantAccessGate` can be asserted
78
+ * without issuing a request.
79
+ */
64
80
  guardOptions;
65
81
  layoutRef;
66
82
  ownComponents = {};
67
83
  componentMap = new Map();
68
84
  nativeUploadFields = new Map();
85
+ /** Exact live positions of a component, including mounts on multiple pages. */
69
86
  ComponentPermissionIds(component) {
70
87
  return [...this.componentMap.values()]
71
88
  .filter((node) => node.component === component && node.access === "own")
72
89
  .map((node) => node.permissionId);
73
90
  }
91
+ // What each declared component actually claimed, so the teardown gives back
92
+ // exactly that — the tree is read from the component itself, which a hot
93
+ // reload may have rebuilt by then.
74
94
  componentTrees = new Map();
75
95
  notifiedComponents = new Set();
76
96
  extensionEntries = new Map();
77
97
  extensionSyncQueue = Promise.resolve();
98
+ /**
99
+ * Being in the page registry and being ready to be extended are two facts:
100
+ * the page is published before its first await, while `ownComponents` is
101
+ * only filled after it. An extension grafted in between resolves its anchors
102
+ * against a key set that stops wherever the serialization loop had reached,
103
+ * so anchors on later fields silently fall to the end of the page. This gate
104
+ * carries the second fact — extensions wait on it instead of racing it.
105
+ */
78
106
  ownComponentsReady = false;
79
107
  ownComponentsGate = Promise.resolve();
80
108
  releaseOwnComponentsGate = () => undefined;
@@ -109,7 +137,7 @@ class PageMetadata {
109
137
  this.components[id] = component;
110
138
  }
111
139
  SetInfo(id, fullSlug, menuOptions, pageLayout) {
112
- const resolvedCategory = (0, categories_1.resolveCategoryInfo)(menuOptions.category);
140
+ const resolvedCategory = (0, categories_2.resolveCategoryInfo)(menuOptions.category);
113
141
  const parentFullId = resolvedCategory?.fullId ?? "";
114
142
  const fullId = parentFullId ? `${parentFullId}.${id}` : id;
115
143
  const location = `${fullSlug}/pagelayout`.replace(/\/+/g, "/");
@@ -123,13 +151,15 @@ class PageMetadata {
123
151
  hidden: menuOptions.hidden || resolvedCategory?.hidden,
124
152
  publicAccess: menuOptions.publicAccess || resolvedCategory?.publicAccess,
125
153
  authOnly: menuOptions.authOnly || resolvedCategory?.authOnly,
154
+ memberAccess: menuOptions.memberAccess || resolvedCategory?.memberAccess,
126
155
  bypassTenantAccessGate: menuOptions.bypassTenantAccessGate ||
127
156
  resolvedCategory?.bypassTenantAccessGate,
128
157
  };
129
- if (!pageLayout) {
130
- pageLayout = (0, layouts_1.DefaultLayout)();
131
- }
132
- this.layout = pageLayout;
158
+ this.layout =
159
+ pageLayout ??
160
+ menuOptions.layout ??
161
+ (0, categories_2.resolveInheritedLayout)(resolvedCategory) ??
162
+ (0, layouts_1.DefaultLayout)();
133
163
  this.pageInfo = pageInfo;
134
164
  }
135
165
  async Register() {
@@ -145,9 +175,17 @@ class PageMetadata {
145
175
  this.notifiedComponents = new Set();
146
176
  this.extensionEntries = new Map();
147
177
  this.detached = false;
178
+ // Shut before the page is published: from that point an extension can find
179
+ // it and try to graft onto it. Everything that follows runs inside the try,
180
+ // so nothing failing on the way can leave the gate shut — a page whose gate
181
+ // stays shut holds every sync on it, teardowns included.
148
182
  this.closeOwnComponentsGate();
149
183
  try {
150
184
  this.publish(pageInfo);
185
+ // Every permission is registered before the first await, so
186
+ // GetResponsibleModule() still sees the registering module's frame:
187
+ // resolved from an async continuation it returns nothing, and the
188
+ // core's own sweep then has no module to attribute them to.
151
189
  const prepared = Object.entries(this.components).map(([key, component]) => this.prepareComponent(component, key));
152
190
  for (const prepare of prepared) {
153
191
  const { key, serialized } = await prepare();
@@ -157,6 +195,9 @@ class PageMetadata {
157
195
  this.rebuildLayoutComponents();
158
196
  }
159
197
  catch (error) {
198
+ // A half-registered page is worse than none: it sits in the registry,
199
+ // routed, with no layout to serve. Detached with it, so a sync held back
200
+ // by the gate does not graft extensions onto the wreck once released.
160
201
  this.detached = true;
161
202
  this.registration.dispose();
162
203
  throw error;
@@ -168,6 +209,17 @@ class PageMetadata {
168
209
  await (0, registry_1.syncTargetExtensions)(pageInfo.fullId);
169
210
  }
170
211
  }
212
+ /**
213
+ * Claim everything the page owns that does not depend on its components: the
214
+ * registry entry, the navigation entry, the page permission and the layout
215
+ * route.
216
+ *
217
+ * Published before the first await of `Register()`. The old order left a
218
+ * window where the page was in the registry but not in this map: a module
219
+ * destroyed during it found nothing to clear, and the registration still in
220
+ * flight then wrote the metadata of a page that no longer serves — which
221
+ * later extensions would graft themselves onto.
222
+ */
171
223
  publish(pageInfo) {
172
224
  const previous = registry_1.pageMetadataByFullId.get(pageInfo.fullId);
173
225
  registry_1.pageMetadataByFullId.set(pageInfo.fullId, this);
@@ -201,9 +253,22 @@ class PageMetadata {
201
253
  this.applyAuthDecorators(pageInfo);
202
254
  this.registerLayoutRoute(pageInfo);
203
255
  }
256
+ /**
257
+ * Take down everything this registration created. Idempotent, and safe to
258
+ * call on a metadata that has already been replaced: each step only undoes
259
+ * what it still owns.
260
+ *
261
+ * @internal
262
+ */
204
263
  Dispose() {
205
264
  this.detached = true;
206
265
  this.releaseOwnComponentsGate();
266
+ // Extensions belong to other modules: they survive this page and re-apply
267
+ // if it registers again, but nothing of theirs may outlive it in the
268
+ // permission tree. Synchronous, unlike registration, so a hot reload that
269
+ // re-registers immediately cannot have this land on the replacement.
270
+ // Snapshot: dropExtension deletes from the map being iterated.
271
+ // oxlint-disable-next-line unicorn/no-useless-spread
207
272
  for (const info of [...this.extensionEntries.keys()]) {
208
273
  this.dropExtension(info);
209
274
  }
@@ -211,16 +276,42 @@ class PageMetadata {
211
276
  this.ownComponents = {};
212
277
  this.registration.dispose();
213
278
  }
279
+ /**
280
+ * Bring the page's injected components in line with the extensions currently
281
+ * registered against it: components of extensions that went away are torn
282
+ * down, new ones are processed exactly like the page's own components, and
283
+ * the layout order is rebuilt.
284
+ *
285
+ * Runs are serialized, so two modules registering back to back never process
286
+ * the same extension twice.
287
+ *
288
+ * @internal
289
+ */
214
290
  SyncExtensions() {
215
291
  const run = this.extensionSyncQueue
216
292
  .then(() => this.awaitOwnComponents())
217
293
  .then(() => this.applyRegisteredExtensions());
294
+ // The queue itself must never stay rejected, or a single failed sync would
295
+ // silently freeze every later registration and teardown on this page.
218
296
  this.extensionSyncQueue = run.catch(() => undefined);
219
297
  return run;
220
298
  }
299
+ /**
300
+ * Whether an extension grafting onto this page right now would resolve its
301
+ * anchors against the page's full component set.
302
+ *
303
+ * @internal
304
+ */
221
305
  AcceptsExtensions() {
222
306
  return this.ownComponentsReady && !this.detached;
223
307
  }
308
+ /**
309
+ * Wait until the page has serialized its own components — and until the
310
+ * registration that ends up owning them is the current one: a registration
311
+ * starting while this waits installs its own gate, and a run released by the
312
+ * old one would resolve its anchors against components the new one has yet
313
+ * to write.
314
+ */
224
315
  async awaitOwnComponents() {
225
316
  let gate = this.ownComponentsGate;
226
317
  await gate;
@@ -231,6 +322,9 @@ class PageMetadata {
231
322
  }
232
323
  closeOwnComponentsGate() {
233
324
  this.ownComponentsReady = false;
325
+ // Release the gate being replaced before dropping the only handle on its
326
+ // resolver: whoever waits on it would otherwise wait on a promise nobody
327
+ // can settle any more. `awaitOwnComponents` catches them up with this one.
234
328
  this.releaseOwnComponentsGate();
235
329
  this.ownComponentsGate = new Promise((resolve) => {
236
330
  this.releaseOwnComponentsGate = resolve;
@@ -241,6 +335,8 @@ class PageMetadata {
241
335
  ? []
242
336
  : (registry_1.pageExtensions.get(this.pageInfo?.fullId ?? "") ?? []);
243
337
  const desired = new Set(infos);
338
+ // Snapshot: dropExtension deletes from the map being iterated.
339
+ // oxlint-disable-next-line unicorn/no-useless-spread
244
340
  for (const info of [...this.extensionEntries.keys()]) {
245
341
  if (!desired.has(info)) {
246
342
  this.dropExtension(info);
@@ -261,7 +357,7 @@ class PageMetadata {
261
357
  id: pageInfo.fullId,
262
358
  title: pageInfo.displayName,
263
359
  icon: pageInfo.icon,
264
- defaultGranted: pageInfo.publicAccess,
360
+ defaultGranted: pageInfo.publicAccess || pageInfo.memberAccess,
265
361
  ...pageInfo.permission,
266
362
  };
267
363
  this.registeredPagePermission = false;
@@ -277,6 +373,8 @@ class PageMetadata {
277
373
  registerLayoutRoute(pageInfo) {
278
374
  const apimeta = (0, interface_core_1.GetMetadata)(this.target, interface_api_1.ControllerMeta);
279
375
  const resolvePageLayout = (user, memberModel, roleModel, tenantId) => this.resolvePageLayout(user, memberModel, roleModel, tenantId);
376
+ // The by-slug entry carries no guard of its own, so it asks the resolver
377
+ // to assert the gate; the route below is already guarded.
280
378
  const handler = (user, memberModel, roleModel, tenantId) => this.resolvePageLayout(user, memberModel, roleModel, tenantId, true);
281
379
  registry_1.pageLayoutHandlers.set(pageInfo.fullSlug, handler);
282
380
  const routeId = (0, interface_api_1.RegisterRoute)({
@@ -294,6 +392,10 @@ class PageMetadata {
294
392
  if (registry_1.pageLayoutHandlers.get(pageInfo.fullSlug) === handler) {
295
393
  registry_1.pageLayoutHandlers.delete(pageInfo.fullSlug);
296
394
  }
395
+ // …and the page's own HTTP route. The by-slug entry used to be the only
396
+ // half taken down, so an unregistered page kept answering on its direct
397
+ // route for as long as its module stayed loaded — the very thing the
398
+ // by-slug cleanup was added to prevent.
297
399
  (0, interface_api_1.UnregisterRoute)(routeId);
298
400
  });
299
401
  }
@@ -302,27 +404,61 @@ class PageMetadata {
302
404
  if (!layout) {
303
405
  throw new Error("PageMetadata not properly initialized");
304
406
  }
407
+ // Only for the by-slug entry: the page's own route already asserts the
408
+ // gate through its auth decorators, and asserting again would cost every
409
+ // page load a second sweep of user-supplied gate callbacks. `/dms/pagelayout`
410
+ // has no such guard — it asks for a session and nothing else — so without
411
+ // this the page-level `bypassTenantAccessGate` flag would be advisory: a
412
+ // member of a denied tenant could read the layout, upload tokens included,
413
+ // of every page that did not opt out.
414
+ //
415
+ // Which surfaces survive a denial is `gateAllowsSurface`'s call, shared
416
+ // with the menu and realtime page access so the three cannot drift.
305
417
  if (enforceTenantAccessGate &&
306
418
  user &&
307
419
  this.pageInfo &&
308
- !(0, tenant_access_1.gateAllowsSurface)(this.pageInfo, true)) {
420
+ !(0, tenant_access_2.gateAllowsSurface)(this.pageInfo, true)) {
309
421
  await (0, tenant_access_1.AssertTenantAccess)(user._id, tenantId);
310
422
  }
423
+ // Slots are resolved per request rather than baked into the cached layout:
424
+ // a component that opens one is answering contributors that may register at
425
+ // any time, long after this page did. Resolved *before* the permission
426
+ // filter, so contributed content goes through every filter the page's own
427
+ // content does — a contributed watch guarded by `requirePermission`
428
+ // included.
311
429
  const components = await (0, component_slots_1.ResolveComponentSlots)(layout.components);
430
+ // Upload tokens are already baked into the cached layout: each form
431
+ // stamped its own fields when it serialized, at registration
432
+ // (`SignUploadToken` in interfaces/dms/uploads).
433
+ const loadPermissions = async () => {
434
+ if (!user)
435
+ return new Set();
436
+ const roleIds = (await memberModel.getByUser(user._id))?.roleIds ?? [];
437
+ return (0, permissions_1.GetEffectiveUserPermissions)(user, tenantId, roleIds, roleModel);
438
+ };
439
+ // Header actions declaring a permission are filtered on every page, even
440
+ // one skipping component permissions: they name their own requirement.
441
+ const context = { tenantId, user };
312
442
  if (this.pageInfo?.publicAccess === true || this.skipComponentPermissions) {
313
- return { ...layout, components };
314
- }
315
- const roleIds = user
316
- ? ((await memberModel.getByUser(user._id))?.roleIds ?? [])
317
- : [];
318
- const permissions = user
319
- ? await (0, permissions_1.GetEffectiveUserPermissions)(user, tenantId, roleIds, roleModel)
320
- : new Set();
443
+ return {
444
+ ...layout,
445
+ layout: (0, layout_filter_2.withComponentHeaderButtons)(await (0, layout_filter_2.filterLayoutHeaderActions)(layout.layout, loadPermissions, context, this.pagePermissionId), components),
446
+ components: (0, table_view_ids_1.withTableViewPlacements)(components),
447
+ };
448
+ }
449
+ const permissions = await loadPermissions();
450
+ const servedComponents = await (0, layout_filter_1.filterComponents)(components, this.pagePermissionId, permissions, this.componentMap, context);
321
451
  return {
322
452
  ...layout,
323
- components: await (0, layout_filter_1.filterComponents)(components, this.pagePermissionId, permissions, this.componentMap, { tenantId, user }),
453
+ // A component's header buttons are added once it was filtered: the
454
+ // ones the caller may not press are gone already.
455
+ layout: (0, layout_filter_2.withComponentHeaderButtons)(await (0, layout_filter_2.filterLayoutHeaderActions)(layout.layout, async () => permissions, context, this.pagePermissionId), servedComponents),
456
+ components: (0, table_view_ids_1.withTableViewPlacements)(servedComponents),
324
457
  };
325
458
  }
459
+ // Component and action ids descend from the page permission id, so a module
460
+ // page's mark already covers them — they only need to stay out of the
461
+ // grantable permission tree.
326
462
  registersComponentPermissions() {
327
463
  return !this.skipComponentPermissions && !this.moduleScoped;
328
464
  }
@@ -330,13 +466,32 @@ class PageMetadata {
330
466
  return `${this.pagePermissionId}.${componentKey}`;
331
467
  }
332
468
  actionPermissions(component) {
469
+ const grantsMembers = this.pageInfo?.memberAccess === true;
333
470
  return Object.values(component.actions)
334
471
  .map((action) => action.toPermission())
335
- .filter((permission) => !!permission);
336
- }
472
+ .filter((permission) => !!permission)
473
+ .map((permission) => grantsMembers ? { ...permission, defaultGranted: true } : permission);
474
+ }
475
+ /**
476
+ * Claim a component's permissions now, and hand back the serialization to
477
+ * await later.
478
+ *
479
+ * The split is what keeps the registration attributable: `RegisterPermission`
480
+ * reads the responsible module off the call stack, and every component after
481
+ * the first used to register from a continuation of the previous one's
482
+ * `serialize()` — where that stack is gone, so the core had no module to
483
+ * sweep them from.
484
+ *
485
+ * A component's children are prepared with it, each under the permission id
486
+ * of its position: they take part in per-request filtering under that id, so
487
+ * a child that never claimed it would have its `onFilter` skipped.
488
+ */
337
489
  prepareComponent(component, componentKey) {
338
490
  const nodes = (0, component_tree_1.collectComponentTree)(component, this.componentPermissionId(componentKey));
339
491
  this.componentTrees.set(componentKey, nodes);
492
+ // Tracked before anything is claimed: `onPageCreated` is consumer code and
493
+ // can throw between the permission being registered and the end of this
494
+ // method, and the rollback can only undo what it was told about.
340
495
  this.registration.track(() => {
341
496
  this.unregisterComponent(component, componentKey);
342
497
  });
@@ -411,8 +566,15 @@ class PageMetadata {
411
566
  registerComponentNode(node) {
412
567
  const { component, permissionId } = node;
413
568
  this.componentMap.set(permissionId, node);
569
+ // A withheld position claims nothing: its id belongs to an action, and it
570
+ // is in the map only so the filter can refuse it. Its hook stays unrun —
571
+ // a component that is never served must not register side effects.
414
572
  if (node.access === "withheld")
415
573
  return;
574
+ // First position wins, and the walk is parent-first: a component mounted
575
+ // both by the page and inside another keeps the id it is declared under.
576
+ // Overwriting would make `GetPermissionId` — and every guard built on it —
577
+ // depend on walk order.
416
578
  if (node.access === "own" && !registry_1.permissionMap.has(component)) {
417
579
  registry_1.permissionMap.set(component, permissionId);
418
580
  }
@@ -422,6 +584,7 @@ class PageMetadata {
422
584
  title: component.metadata.name,
423
585
  icon: component.metadata.icon,
424
586
  description: component.metadata.description,
587
+ defaultGranted: this.pageInfo?.memberAccess,
425
588
  });
426
589
  }
427
590
  this.notifyPageCreated(node);
@@ -431,6 +594,18 @@ class PageMetadata {
431
594
  }
432
595
  }
433
596
  }
597
+ /**
598
+ * Run a component's `onCreated` hook, once per registration whatever the
599
+ * number of positions the same instance occupies — the hook registers side
600
+ * effects (a table view's form sub-pages, a chart's realtime topic), and
601
+ * running it twice registers them twice.
602
+ *
603
+ * A nested component's hook is isolated the way `addExtension` isolates an
604
+ * extension's: it never ran before this walk existed, so letting it abort a
605
+ * page that used to register would turn a quietly inert component into a
606
+ * screen that no longer serves. The page's own components keep aborting it —
607
+ * a half-registered page is worse than none.
608
+ */
434
609
  notifyPageCreated(node) {
435
610
  if (!node.component.onPageCreated)
436
611
  return;
@@ -445,15 +620,28 @@ class PageMetadata {
445
620
  node.component.onPageCreated(this);
446
621
  }
447
622
  catch (error) {
448
- if (error instanceof form_page_routes_1.FormPageRouteConflictError)
623
+ // …except what two components both claim (a form route, the writing
624
+ // TableView of a controller): the page cannot honour both declarations,
625
+ // and carrying on would silently serve one of them in place of the other.
626
+ if (error instanceof declaration_conflict_1.PageDeclarationConflictError)
449
627
  throw error;
450
628
  logging_1.Logging.Error(`[dms] component "${node.permissionId}" failed its onCreated hook on page "${this.pageInfo?.fullId}": ${String(error)}`);
451
629
  }
452
630
  }
631
+ /**
632
+ * A page's permission ids are derived from its `fullId`, so a metadata
633
+ * instance that has already been replaced (dev hot reload re-registers the
634
+ * page under a new class) shares them with the live one. Only the current
635
+ * owner — or nobody, when the page is gone for good — may take them down.
636
+ */
453
637
  ownsPagePermissions() {
454
638
  const owner = registry_1.pageMetadataByFullId.get(this.pageInfo?.fullId ?? "");
455
639
  return owner === undefined || owner === this;
456
640
  }
641
+ // Nothing was prepared under this key — a teardown replayed after the
642
+ // extension that owned it was already dropped, or a walk that threw before
643
+ // claiming anything. Giving back what was never taken would unregister a
644
+ // permission another position still holds.
457
645
  unregisterComponent(_component, componentKey) {
458
646
  const nodes = this.componentTrees.get(componentKey);
459
647
  if (!nodes)
@@ -474,6 +662,9 @@ class PageMetadata {
474
662
  this.unregisterComponentNode(node);
475
663
  }
476
664
  }
665
+ // Action ids are resolved through `permissionMap`, so the node's own entry
666
+ // only goes once its actions have been given back — and only when the entry
667
+ // is this position's, since another one may have claimed the instance first.
477
668
  unregisterComponentNode(node) {
478
669
  if (node.access === "withheld")
479
670
  return;
@@ -491,12 +682,19 @@ class PageMetadata {
491
682
  registry_1.permissionMap.delete(node.component);
492
683
  }
493
684
  }
685
+ // A component is tracked before it is processed, so a detach landing mid-way
686
+ // still finds it. One that fails to register is taken back down and left out
687
+ // of the layout, while the rest of its extension stands: the extension is
688
+ // recorded either way, so a later sync never replays an `onPageCreated` side
689
+ // effect that already ran.
494
690
  async addExtension(info) {
495
691
  const errors = (0, extension_validation_1.collectExtensionErrors)(info, {
496
692
  own: this.ownComponents,
497
693
  taken: this.takenComponentKeys(),
498
694
  });
499
695
  const entries = [];
696
+ // Recorded even when it contributes nothing: an extension the page refused
697
+ // must not be re-examined — and re-reported — on every later sync.
500
698
  this.extensionEntries.set(info, entries);
501
699
  if (errors.length > 0) {
502
700
  for (const error of errors) {
@@ -505,6 +703,8 @@ class PageMetadata {
505
703
  return;
506
704
  }
507
705
  for (const [declarationIndex, contribution] of info.components.entries()) {
706
+ // Revoked mid-way: its module is going away, and running in that
707
+ // module's context now would claim a generation that is being released.
508
708
  if (!(0, registry_1.isPageExtensionRegistered)(info))
509
709
  break;
510
710
  entries.push({
@@ -514,6 +714,9 @@ class PageMetadata {
514
714
  });
515
715
  try {
516
716
  const componentPath = this.extensionComponentPath(contribution);
717
+ // Both halves, as the extending module: the claim registers
718
+ // permissions and runs `onCreated`, the serialization binds native
719
+ // upload fields.
517
720
  const prepare = (0, registry_1.runAsPageExtensionOwner)(info, () => this.prepareComponent(contribution.component, componentPath));
518
721
  const { serialized } = await (0, registry_1.runAsPageExtensionOwner)(info, prepare);
519
722
  entries[entries.length - 1].serialized = serialized;
@@ -521,7 +724,7 @@ class PageMetadata {
521
724
  catch (error) {
522
725
  entries.pop();
523
726
  this.unregisterComponent(contribution.component, this.extensionComponentPath(contribution));
524
- if (error instanceof form_page_routes_1.FormPageRouteConflictError)
727
+ if (error instanceof declaration_conflict_1.PageDeclarationConflictError)
525
728
  throw error;
526
729
  logging_1.Logging.Error(`[dms] page extension "${info.extensionName}" could not register component "${contribution.key}" on page "${info.targetFullId}": ${String(error)}`);
527
730
  }
@@ -530,6 +733,11 @@ class PageMetadata {
530
733
  this.dropExtension(info);
531
734
  }
532
735
  }
736
+ /**
737
+ * Who owns each component key of the page right now: the page itself for its
738
+ * own fields, the extension that injected it otherwise. One namespace,
739
+ * because a page's components share one permission subtree.
740
+ */
533
741
  takenComponentKeys() {
534
742
  const owner = this.pageInfo?.fullId ?? "";
535
743
  const taken = new Map(Object.keys(this.ownComponents).map((key) => [key, owner]));
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/page/metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/page/metadata.ts"],"names":[],"mappings":"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"}