@antelopejs/interface-dms 0.10.4 → 0.12.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 (374) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +21 -10
  3. package/dist/attachments.d.ts +15 -2
  4. package/dist/attachments.js +14 -1
  5. package/dist/attachments.js.map +1 -1
  6. package/dist/auth/db/models/sessions.model.d.ts +7 -5
  7. package/dist/auth/db/models/sessions.model.js +2 -9
  8. package/dist/auth/db/models/sessions.model.js.map +1 -1
  9. package/dist/auth/db/models/userExternalIdentities.model.d.ts +7 -5
  10. package/dist/auth/db/models/users.model.d.ts +7 -5
  11. package/dist/auth/db/tables/users.table.d.ts +2 -2
  12. package/dist/auth/db/tables/users.table.js.map +1 -1
  13. package/dist/auth/index.d.ts +4 -4
  14. package/dist/auth/internal/jwt-auth-decorator.d.ts +1 -1
  15. package/dist/auth/internal/jwt-auth-decorator.js +6 -3
  16. package/dist/auth/internal/jwt-auth-decorator.js.map +1 -1
  17. package/dist/auth/internal/request-authenticators.d.ts +12 -0
  18. package/dist/auth/internal/request-authenticators.js +53 -10
  19. package/dist/auth/internal/request-authenticators.js.map +1 -1
  20. package/dist/base/activity-feed.d.ts +34 -32
  21. package/dist/base/activity-feed.js +2 -0
  22. package/dist/base/activity-feed.js.map +1 -1
  23. package/dist/base/banner.d.ts +12 -10
  24. package/dist/base/banner.js +2 -0
  25. package/dist/base/banner.js.map +1 -1
  26. package/dist/base/block-registry/internal/describe.js +3 -9
  27. package/dist/base/block-registry/internal/describe.js.map +1 -1
  28. package/dist/base/block-registry/internal/ui.js +1 -1
  29. package/dist/base/block-registry/internal/ui.js.map +1 -1
  30. package/dist/base/card.d.ts +11 -9
  31. package/dist/base/card.js +2 -0
  32. package/dist/base/card.js.map +1 -1
  33. package/dist/base/chart-card.d.ts +4 -2
  34. package/dist/base/chart-card.js +2 -0
  35. package/dist/base/chart-card.js.map +1 -1
  36. package/dist/base/chart-schemas.d.ts +148 -148
  37. package/dist/base/chart.d.ts +65 -0
  38. package/dist/base/chart.js +65 -0
  39. package/dist/base/chart.js.map +1 -1
  40. package/dist/base/code-block.d.ts +5 -3
  41. package/dist/base/code-block.js +2 -0
  42. package/dist/base/code-block.js.map +1 -1
  43. package/dist/base/custom.d.ts +5 -0
  44. package/dist/base/custom.js +5 -0
  45. package/dist/base/custom.js.map +1 -1
  46. package/dist/base/data-types/default/address.d.ts +5 -0
  47. package/dist/base/data-types/default/address.js +5 -0
  48. package/dist/base/data-types/default/address.js.map +1 -1
  49. package/dist/base/data-types/default/choices.d.ts +20 -0
  50. package/dist/base/data-types/default/choices.js +20 -0
  51. package/dist/base/data-types/default/choices.js.map +1 -1
  52. package/dist/base/data-types/default/files.d.ts +22 -5
  53. package/dist/base/data-types/default/files.js +20 -0
  54. package/dist/base/data-types/default/files.js.map +1 -1
  55. package/dist/base/data-types/default/numbers.d.ts +15 -0
  56. package/dist/base/data-types/default/numbers.js +25 -9
  57. package/dist/base/data-types/default/numbers.js.map +1 -1
  58. package/dist/base/data-types/default/relations.d.ts +10 -2
  59. package/dist/base/data-types/default/relations.js +9 -6
  60. package/dist/base/data-types/default/relations.js.map +1 -1
  61. package/dist/base/data-types/default/strings.d.ts +25 -0
  62. package/dist/base/data-types/default/strings.js +25 -0
  63. package/dist/base/data-types/default/strings.js.map +1 -1
  64. package/dist/base/data-types/default-types.d.ts +1 -1
  65. package/dist/base/data-types/field-types.d.ts +10 -0
  66. package/dist/base/data-types/field-types.js +10 -0
  67. package/dist/base/data-types/field-types.js.map +1 -1
  68. package/dist/base/data-types/internal/relation-endpoints.js +1 -0
  69. package/dist/base/data-types/internal/relation-endpoints.js.map +1 -1
  70. package/dist/base/data-types/status-type.d.ts +5 -0
  71. package/dist/base/data-types/status-type.js +5 -0
  72. package/dist/base/data-types/status-type.js.map +1 -1
  73. package/dist/base/display.d.ts +6 -6
  74. package/dist/base/empty-state.d.ts +15 -13
  75. package/dist/base/empty-state.js +2 -0
  76. package/dist/base/empty-state.js.map +1 -1
  77. package/dist/base/form-block-schema.d.ts +50 -50
  78. package/dist/base/form-schema.d.ts +2 -0
  79. package/dist/base/form-schema.js +2 -0
  80. package/dist/base/form-schema.js.map +1 -1
  81. package/dist/base/grid.d.ts +4 -0
  82. package/dist/base/grid.js +4 -0
  83. package/dist/base/grid.js.map +1 -1
  84. package/dist/base/guard.d.ts +30 -28
  85. package/dist/base/guard.js +2 -0
  86. package/dist/base/guard.js.map +1 -1
  87. package/dist/base/helpers/archive-mode-helpers.d.ts +1 -1
  88. package/dist/base/helpers/file-refs.js +15 -15
  89. package/dist/base/helpers/file-refs.js.map +1 -1
  90. package/dist/base/internal/form-schema-validation.js +7 -1
  91. package/dist/base/internal/form-schema-validation.js.map +1 -1
  92. package/dist/base/internal/realtime-topics.js.map +1 -1
  93. package/dist/base/internal/searchable.d.ts +2 -1
  94. package/dist/base/internal/searchable.js +1 -3
  95. package/dist/base/internal/searchable.js.map +1 -1
  96. package/dist/base/key-value-list.d.ts +21 -19
  97. package/dist/base/key-value-list.js +2 -0
  98. package/dist/base/key-value-list.js.map +1 -1
  99. package/dist/base/kpi-card.d.ts +4 -2
  100. package/dist/base/kpi-card.js +2 -0
  101. package/dist/base/kpi-card.js.map +1 -1
  102. package/dist/base/live-toggle.d.ts +2 -0
  103. package/dist/base/live-toggle.js +2 -0
  104. package/dist/base/live-toggle.js.map +1 -1
  105. package/dist/base/meter.d.ts +23 -21
  106. package/dist/base/meter.js +2 -0
  107. package/dist/base/meter.js.map +1 -1
  108. package/dist/base/nav-card-grid.d.ts +24 -19
  109. package/dist/base/nav-card-grid.js +5 -0
  110. package/dist/base/nav-card-grid.js.map +1 -1
  111. package/dist/base/page-toolbar.d.ts +2 -0
  112. package/dist/base/page-toolbar.js +2 -0
  113. package/dist/base/page-toolbar.js.map +1 -1
  114. package/dist/base/period-selector.d.ts +3 -1
  115. package/dist/base/period-selector.js +2 -0
  116. package/dist/base/period-selector.js.map +1 -1
  117. package/dist/base/placeholder.d.ts +2 -0
  118. package/dist/base/placeholder.js +2 -0
  119. package/dist/base/placeholder.js.map +1 -1
  120. package/dist/base/resource-form-schema.d.ts +2 -2
  121. package/dist/base/searchable.d.ts +3 -2
  122. package/dist/base/searchable.js +2 -2
  123. package/dist/base/searchable.js.map +1 -1
  124. package/dist/base/section.d.ts +6 -2
  125. package/dist/base/section.js +4 -0
  126. package/dist/base/section.js.map +1 -1
  127. package/dist/base/stack.d.ts +6 -0
  128. package/dist/base/stack.js +6 -0
  129. package/dist/base/stack.js.map +1 -1
  130. package/dist/base/stat-group.d.ts +16 -14
  131. package/dist/base/stat-group.js +2 -0
  132. package/dist/base/stat-group.js.map +1 -1
  133. package/dist/base/tab.d.ts +10 -8
  134. package/dist/base/tab.js +2 -0
  135. package/dist/base/tab.js.map +1 -1
  136. package/dist/base/table-view/column-display.d.ts +1 -1
  137. package/dist/base/table-view/column-display.js.map +1 -1
  138. package/dist/base/table-view/data-functions.d.ts +10 -4
  139. package/dist/base/table-view/data-functions.js.map +1 -1
  140. package/dist/base/table-view/factory.d.ts +5 -0
  141. package/dist/base/table-view/factory.js +8 -4
  142. package/dist/base/table-view/factory.js.map +1 -1
  143. package/dist/base/table-view/internal/auth.d.ts +17 -3
  144. package/dist/base/table-view/internal/auth.js +26 -5
  145. package/dist/base/table-view/internal/auth.js.map +1 -1
  146. package/dist/base/table-view/internal/column-conditions.d.ts +8 -1
  147. package/dist/base/table-view/internal/column-conditions.js +25 -13
  148. package/dist/base/table-view/internal/column-conditions.js.map +1 -1
  149. package/dist/base/table-view/internal/column-display.d.ts +1 -2
  150. package/dist/base/table-view/internal/column-display.js +3 -9
  151. package/dist/base/table-view/internal/column-display.js.map +1 -1
  152. package/dist/base/table-view/internal/factory-helpers.d.ts +1 -1
  153. package/dist/base/table-view/internal/factory-helpers.js +17 -14
  154. package/dist/base/table-view/internal/factory-helpers.js.map +1 -1
  155. package/dist/base/table-view/internal/factory-lifecycle-created.d.ts +2 -3
  156. package/dist/base/table-view/internal/factory-lifecycle-created.js +5 -5
  157. package/dist/base/table-view/internal/factory-lifecycle-created.js.map +1 -1
  158. package/dist/base/table-view/internal/factory-lifecycle-filter.d.ts +2 -2
  159. package/dist/base/table-view/internal/factory-private-actions.d.ts +2 -2
  160. package/dist/base/table-view/internal/files.d.ts +2 -1
  161. package/dist/base/table-view/internal/files.js +14 -5
  162. package/dist/base/table-view/internal/files.js.map +1 -1
  163. package/dist/base/table-view/internal/footer.d.ts +3 -3
  164. package/dist/base/table-view/internal/footer.js +16 -15
  165. package/dist/base/table-view/internal/footer.js.map +1 -1
  166. package/dist/base/table-view/internal/guards.d.ts +27 -5
  167. package/dist/base/table-view/internal/guards.js +127 -49
  168. package/dist/base/table-view/internal/guards.js.map +1 -1
  169. package/dist/base/table-view/internal/meta-helpers.d.ts +1 -1
  170. package/dist/base/table-view/internal/meta-helpers.js +3 -4
  171. package/dist/base/table-view/internal/meta-helpers.js.map +1 -1
  172. package/dist/base/table-view/internal/meta.js +2 -3
  173. package/dist/base/table-view/internal/meta.js.map +1 -1
  174. package/dist/base/table-view/internal/option-contract.d.ts +1 -1
  175. package/dist/base/table-view/internal/option-footer.d.ts +2 -2
  176. package/dist/base/table-view/internal/option-row-actions.d.ts +1 -1
  177. package/dist/base/table-view/internal/realtime.d.ts +52 -11
  178. package/dist/base/table-view/internal/realtime.js +23 -16
  179. package/dist/base/table-view/internal/realtime.js.map +1 -1
  180. package/dist/base/table-view/internal/resource-form.d.ts +1 -1
  181. package/dist/base/table-view/internal/resource-form.js +1 -1
  182. package/dist/base/table-view/internal/resource-form.js.map +1 -1
  183. package/dist/base/table-view/internal/row-actions-schema.d.ts +12 -12
  184. package/dist/base/table-view/internal/row-rule-shape.d.ts +11 -5
  185. package/dist/base/table-view/internal/row-rule-shape.js +60 -30
  186. package/dist/base/table-view/internal/row-rule-shape.js.map +1 -1
  187. package/dist/base/table-view/internal/row-rules.d.ts +28 -1
  188. package/dist/base/table-view/internal/row-rules.js +8 -19
  189. package/dist/base/table-view/internal/row-rules.js.map +1 -1
  190. package/dist/base/table-view/internal/tabs.d.ts +1 -1
  191. package/dist/base/table-view/internal/tabs.js +1 -4
  192. package/dist/base/table-view/internal/tabs.js.map +1 -1
  193. package/dist/base/table-view/internal/validation.d.ts +2 -2
  194. package/dist/base/table-view/internal/validation.js +7 -7
  195. package/dist/base/table-view/internal/validation.js.map +1 -1
  196. package/dist/base/table-view/meta.d.ts +7 -6
  197. package/dist/base/table-view/meta.js +12 -7
  198. package/dist/base/table-view/meta.js.map +1 -1
  199. package/dist/base/table-view/resource-form.d.ts +3 -1
  200. package/dist/base/table-view/resource-form.js +2 -0
  201. package/dist/base/table-view/resource-form.js.map +1 -1
  202. package/dist/base/table-view/routes.d.ts +73 -21
  203. package/dist/base/table-view/routes.js +13 -10
  204. package/dist/base/table-view/routes.js.map +1 -1
  205. package/dist/base/table-view/schema.d.ts +152 -152
  206. package/dist/base/table-view/source.js +4 -1
  207. package/dist/base/table-view/source.js.map +1 -1
  208. package/dist/base/table-view.d.ts +1 -1
  209. package/dist/base/table-view.js.map +1 -1
  210. package/dist/base/top-list-card.d.ts +35 -33
  211. package/dist/base/top-list-card.js +2 -0
  212. package/dist/base/top-list-card.js.map +1 -1
  213. package/dist/base/types/error.js +5 -2
  214. package/dist/base/types/error.js.map +1 -1
  215. package/dist/base/types/guards.d.ts +4 -4
  216. package/dist/base/types/json.d.ts +1 -10
  217. package/dist/base/types/row-action.d.ts +7 -7
  218. package/dist/component-options/confirm-dialog.d.ts +2 -0
  219. package/dist/component-options/confirm-dialog.js.map +1 -1
  220. package/dist/component-options/data-type.d.ts +2 -2
  221. package/dist/component-options/data-type.js +7 -7
  222. package/dist/component-options/data-type.js.map +1 -1
  223. package/dist/component-options/row-action.d.ts +14 -9
  224. package/dist/component-slots.d.ts +11 -2
  225. package/dist/component-slots.js +1 -0
  226. package/dist/component-slots.js.map +1 -1
  227. package/dist/component.d.ts +7 -8
  228. package/dist/component.js +17 -25
  229. package/dist/component.js.map +1 -1
  230. package/dist/data-controllers/members.d.ts +11 -7
  231. package/dist/data-controllers/members.js +1 -1
  232. package/dist/data-controllers/members.js.map +1 -1
  233. package/dist/data-controllers/roles.d.ts +32 -10
  234. package/dist/db/internal/exportJobs.model.d.ts +7 -5
  235. package/dist/db/internal/inviteResolutions.model.d.ts +7 -5
  236. package/dist/db/internal/tenantLifecycle.model.d.ts +7 -5
  237. package/dist/db/models/roles.model.d.ts +7 -5
  238. package/dist/db/models/tenantMembers.model.d.ts +7 -5
  239. package/dist/db/models/tenants.model.d.ts +7 -5
  240. package/dist/db/models/user_invites.model.d.ts +7 -5
  241. package/dist/guards.d.ts +1 -1
  242. package/dist/hooks.d.ts +1 -2
  243. package/dist/hooks.js +33 -26
  244. package/dist/hooks.js.map +1 -1
  245. package/dist/internal/attachments.d.ts +2 -2
  246. package/dist/internal/component-builder.js +2 -1
  247. package/dist/internal/component-builder.js.map +1 -1
  248. package/dist/internal/component-serialization.d.ts +2 -4
  249. package/dist/internal/component-serialization.js +4 -3
  250. package/dist/internal/component-serialization.js.map +1 -1
  251. package/dist/internal/component-slots.d.ts +19 -2
  252. package/dist/internal/component-slots.js +35 -12
  253. package/dist/internal/component-slots.js.map +1 -1
  254. package/dist/internal/component-watch-filter.d.ts +11 -0
  255. package/dist/internal/component-watch-filter.js +22 -0
  256. package/dist/internal/component-watch-filter.js.map +1 -0
  257. package/dist/internal/component-watches.js +0 -1
  258. package/dist/internal/component-watches.js.map +1 -1
  259. package/dist/internal/own-entry.d.ts +7 -0
  260. package/dist/internal/own-entry.js +13 -0
  261. package/dist/internal/own-entry.js.map +1 -0
  262. package/dist/invite-extension-payloads.d.ts +14 -2
  263. package/dist/invite-extensions/internal/delivery.js +1 -2
  264. package/dist/invite-extensions/internal/delivery.js.map +1 -1
  265. package/dist/invite-extensions/internal/edit.d.ts +2 -1
  266. package/dist/invite-extensions/internal/edit.js +8 -9
  267. package/dist/invite-extensions/internal/edit.js.map +1 -1
  268. package/dist/invite-extensions/internal/form-slot.js +8 -15
  269. package/dist/invite-extensions/internal/form-slot.js.map +1 -1
  270. package/dist/invite-extensions/internal/payload-slices.d.ts +33 -3
  271. package/dist/invite-extensions/internal/payload-slices.js +84 -19
  272. package/dist/invite-extensions/internal/payload-slices.js.map +1 -1
  273. package/dist/invite-extensions/internal/types.d.ts +10 -1
  274. package/dist/invite-resolution.js +6 -4
  275. package/dist/invite-resolution.js.map +1 -1
  276. package/dist/json.d.ts +10 -0
  277. package/dist/json.js +3 -0
  278. package/dist/json.js.map +1 -0
  279. package/dist/layout-banners.d.ts +5 -2
  280. package/dist/layout-banners.js.map +1 -1
  281. package/dist/page/controllers.d.ts +2 -2
  282. package/dist/page/internal/extension-validation.js +3 -2
  283. package/dist/page/internal/extension-validation.js.map +1 -1
  284. package/dist/page/internal/metadata-layout.js +1 -1
  285. package/dist/page/internal/metadata-layout.js.map +1 -1
  286. package/dist/page/internal/metadata-publish.js +3 -2
  287. package/dist/page/internal/metadata-publish.js.map +1 -1
  288. package/dist/page/internal/metadata-registration.js +5 -4
  289. package/dist/page/internal/metadata-registration.js.map +1 -1
  290. package/dist/page/internal/metadata-upload-registration.d.ts +3 -1
  291. package/dist/page/internal/metadata-upload-registration.js +9 -0
  292. package/dist/page/internal/metadata-upload-registration.js.map +1 -1
  293. package/dist/page/internal/metadata-uploads.d.ts +18 -5
  294. package/dist/page/internal/metadata-uploads.js +7 -8
  295. package/dist/page/internal/metadata-uploads.js.map +1 -1
  296. package/dist/page/internal/page-record.d.ts +2 -3
  297. package/dist/page/internal/page-record.js +19 -14
  298. package/dist/page/internal/page-record.js.map +1 -1
  299. package/dist/page/layout-filter.js +17 -6
  300. package/dist/page/layout-filter.js.map +1 -1
  301. package/dist/page/metadata.js +5 -7
  302. package/dist/page/metadata.js.map +1 -1
  303. package/dist/request-tenant.d.ts +10 -4
  304. package/dist/request-tenant.js +16 -34
  305. package/dist/request-tenant.js.map +1 -1
  306. package/dist/tenant-export.d.ts +2 -1
  307. package/dist/tenant-lifecycle.d.ts +13 -4
  308. package/dist/tenant-lifecycle.js +51 -18
  309. package/dist/tenant-lifecycle.js.map +1 -1
  310. package/dist/types.d.ts +20 -0
  311. package/dist/uploads.js +42 -59
  312. package/dist/uploads.js.map +1 -1
  313. package/dist/utils/fire-and-forget.js.map +1 -1
  314. package/dist/utils/internal/decorated-class.d.ts +14 -0
  315. package/dist/utils/internal/decorated-class.js +37 -0
  316. package/dist/utils/internal/decorated-class.js.map +1 -0
  317. package/dist/utils/internal/type-check.d.ts +9 -0
  318. package/dist/utils/internal/type-check.js +13 -5
  319. package/dist/utils/internal/type-check.js.map +1 -1
  320. package/dist/utils/internal/value-parser.d.ts +1 -1
  321. package/dist/utils/internal/value-parser.js +22 -9
  322. package/dist/utils/internal/value-parser.js.map +1 -1
  323. package/dist/watch-actions.d.ts +1 -1
  324. package/docs/1.core/1.introduction.md +82 -77
  325. package/docs/1.core/10.layout-banners.md +57 -45
  326. package/docs/1.core/11.modules-and-dynamic-menus.md +178 -0
  327. package/docs/1.core/12.frontend-modules-and-request-helpers.md +155 -0
  328. package/docs/1.core/13.tenant-data-export.md +120 -0
  329. package/docs/1.core/2.pages-and-modules.md +140 -367
  330. package/docs/1.core/3.components.md +21 -22
  331. package/docs/1.core/4.permissions.md +92 -71
  332. package/docs/1.core/5.tenancy.md +112 -86
  333. package/docs/1.core/6.invites.md +90 -65
  334. package/docs/1.core/7.hooks.md +96 -166
  335. package/docs/1.core/8.realtime.md +44 -45
  336. package/docs/1.core/9.quick-actions.md +37 -30
  337. package/docs/2.auth/1.introduction.md +33 -35
  338. package/docs/2.auth/2.authentication.md +60 -38
  339. package/docs/2.auth/3.tokens-and-sessions.md +56 -55
  340. package/docs/2.auth/4.users.md +79 -51
  341. package/docs/2.auth/5.external-identities.md +25 -26
  342. package/docs/3.base/1.introduction.md +64 -60
  343. package/docs/3.base/10.display-blocks.md +15 -16
  344. package/docs/3.base/11.page-layouts.md +273 -0
  345. package/docs/3.base/12.table-row-actions.md +122 -0
  346. package/docs/3.base/13.table-filters-and-forms.md +104 -0
  347. package/docs/3.base/14.table-events-and-helpers.md +114 -0
  348. package/docs/3.base/15.table-sources-and-gates.md +24 -0
  349. package/docs/3.base/2.types.md +44 -41
  350. package/docs/3.base/3.forms.md +27 -28
  351. package/docs/3.base/4.tables.md +34 -367
  352. package/docs/3.base/5.charts-and-widgets.md +28 -29
  353. package/docs/3.base/6.layout.md +21 -270
  354. package/docs/3.base/8.data-types.md +39 -40
  355. package/docs/3.base/9.helpers.md +36 -38
  356. package/docs/4.notifications/1.introduction.md +22 -26
  357. package/docs/4.notifications/2.categories-and-subjects.md +58 -55
  358. package/docs/4.notifications/3.sending.md +72 -68
  359. package/docs/5.html-render/1.introduction.md +119 -81
  360. package/docs/5.html-render/2.built-in-emails.md +71 -51
  361. package/docs/index.md +18 -29
  362. package/docs/tsconfig.json +4 -0
  363. package/package.json +11 -11
  364. package/docs/images/emails-admin-invite.png +0 -0
  365. package/docs/images/emails-change-notice.png +0 -0
  366. package/docs/images/emails-change-verification.png +0 -0
  367. package/docs/images/emails-digest-logo-dark.png +0 -0
  368. package/docs/images/emails-digest-logo-light.png +0 -0
  369. package/docs/images/emails-digest.png +0 -0
  370. package/docs/images/emails-export-partial.png +0 -0
  371. package/docs/images/emails-export-ready.png +0 -0
  372. package/docs/images/emails-reset-password.png +0 -0
  373. package/docs/images/emails-two-factor.png +0 -0
  374. package/docs/images/emails-user-validation.png +0 -0
@@ -1,35 +1,105 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createGuardedRoute = exports.guardedGetRoute = exports.parseGuardBody = void 0;
3
+ exports.createGuardedWriteRoute = exports.createGuardedConfirmRoute = exports.guardedGetRoute = exports.parseGuardBody = void 0;
4
4
  const interface_api_1 = require("@antelopejs/interface-api");
5
5
  const interface_api_util_1 = require("@antelopejs/interface-api-util");
6
6
  const interface_core_1 = require("@antelopejs/interface-core");
7
7
  const interface_data_api_1 = require("@antelopejs/interface-data-api");
8
+ const components_1 = require("@antelopejs/interface-data-api/components");
8
9
  const logging_1 = require("@antelopejs/interface-core/logging");
10
+ const zod_1 = require("zod");
9
11
  const data_functions_1 = require("../data-functions");
10
12
  const meta_1 = require("../meta");
11
13
  const options_1 = require("../options");
12
14
  const meta_2 = require("./meta");
13
15
  const row_rules_1 = require("./row-rules");
16
+ /** The deepest nesting of arrays and objects a guard body may have, the body itself counted. */
17
+ const MAX_BODY_DEPTH = 64;
18
+ const JSON_PRIMITIVE = zod_1.z.union([zod_1.z.string(), zod_1.z.number(), zod_1.z.boolean(), zod_1.z.null()]);
19
+ const JSON_FIELDS = zod_1.z.record(zod_1.z.string(), zod_1.z.unknown());
20
+ /**
21
+ * Whether the arrays and objects below `members` nest more than `limit` levels
22
+ * deep, `members` being the values of the level-1 container. It walks one level
23
+ * at a time and stops at level `limit + 1`, so it neither recurses nor visits
24
+ * what lies below that level.
25
+ */
26
+ const nestsDeeperThan = (members, limit) => {
27
+ let level = [members];
28
+ for (let depth = 1; level.length > 0; depth += 1) {
29
+ if (depth > limit)
30
+ return true;
31
+ const below = [];
32
+ for (const values of level) {
33
+ for (const value of values) {
34
+ if (value instanceof Object)
35
+ below.push(Object.values(value));
36
+ }
37
+ }
38
+ level = below;
39
+ }
40
+ return false;
41
+ };
42
+ /**
43
+ * A copy of the arrays and objects below `entries`, the entries of the level-1
44
+ * object, without recursion. A key named `__proto__` is left out at every depth,
45
+ * as the top-level record parse leaves it out.
46
+ */
47
+ const copyJsonFields = (entries) => {
48
+ const fields = {};
49
+ const pending = [[entries, fields]];
50
+ for (let item = pending.pop(); item; item = pending.pop()) {
51
+ const [members, target] = item;
52
+ for (const [key, child] of members) {
53
+ if (key === "__proto__")
54
+ continue;
55
+ let value;
56
+ if (Array.isArray(child)) {
57
+ value = [];
58
+ pending.push([Object.entries(child), value]);
59
+ }
60
+ else if (child instanceof Object) {
61
+ value = {};
62
+ pending.push([Object.entries(child), value]);
63
+ }
64
+ else {
65
+ value = JSON_PRIMITIVE.parse(child);
66
+ }
67
+ if (Array.isArray(target))
68
+ target.push(value);
69
+ else
70
+ target[key] = value;
71
+ }
72
+ }
73
+ return fields;
74
+ };
75
+ /**
76
+ * The fields of a JSON object sent as text.
77
+ *
78
+ * @throws SyntaxError when `text` is not JSON, TypeError when it is JSON but
79
+ * not an object, and an HTTP 400 result when it nests arrays and objects more
80
+ * than {@link MAX_BODY_DEPTH} levels deep.
81
+ */
82
+ const parseJsonObject = (text) => {
83
+ const json = JSON.parse(text);
84
+ const fields = JSON_FIELDS.safeParse(json);
85
+ if (!fields.success)
86
+ throw new TypeError("The JSON body is not an object");
87
+ (0, interface_api_util_1.assert)(!nestsDeeperThan(Object.values(fields.data), MAX_BODY_DEPTH), 400, `The JSON body nests more than ${MAX_BODY_DEPTH} levels deep.`);
88
+ return copyJsonFields(Object.entries(fields.data));
89
+ };
14
90
  /**
15
91
  * The values of a confirmation's fields, sent as the body of a delete,
16
92
  * archive or restore; unset when the request carried none.
17
93
  */
18
- const parseConfirmValues = (raw) => {
19
- const isEmpty = raw === undefined ||
20
- raw === null ||
21
- // oxlint-disable-next-line anti-slop/no-runtime-typeof -- RawBody may supply bytes, a string, or decoded data; this detects empty transport bodies before decoding.
22
- ((Buffer.isBuffer(raw) || typeof raw === "string") && raw.length === 0);
23
- return isEmpty ? undefined : (0, exports.parseGuardBody)(raw);
24
- };
94
+ const parseConfirmValues = (raw) => raw.length === 0 ? undefined : parseJsonObject(raw.toString());
25
95
  /** @internal */
26
96
  // oxlint-disable-next-line anti-slop/no-unknown-parameters, anti-slop/no-unsafe-dictionary-type -- The published permissive body decoder accepts transport values and returns module-owned fields without a fixed schema; narrowing either side would change its contract.
27
97
  const parseGuardBody = (raw) => {
28
98
  if (Buffer.isBuffer(raw))
29
- return JSON.parse(raw.toString());
99
+ return parseJsonObject(raw.toString());
30
100
  // oxlint-disable-next-line anti-slop/no-runtime-typeof -- This published decoder distinguishes the string transport representation from already decoded values.
31
101
  if (typeof raw === "string" && raw.length > 0)
32
- return JSON.parse(raw);
102
+ return parseJsonObject(raw);
33
103
  // oxlint-disable-next-line anti-slop/no-runtime-typeof, anti-slop/require-safety-comment-for-type-assertion, anti-slop/no-unsafe-dictionary-type -- The published decoder accepts any non-null object, including arrays, without proving an indexed row contract; preserve that unchecked compatibility behavior.
34
104
  if (raw && typeof raw === "object")
35
105
  return raw;
@@ -39,44 +109,42 @@ exports.parseGuardBody = parseGuardBody;
39
109
  const ACTION_GUARD_CONFIGS = {
40
110
  edit: {
41
111
  // oxlint-disable-next-line eslint/max-params -- The edit adapter consumes the six positional inputs declared by GuardInvocationConfig.
42
- invokeGuard: async (controller, ctx, params, args, guard, idField) => {
112
+ invokeGuard: async (controller, ctx, params, body, guard, idField) => {
43
113
  const id = String(params.id);
44
- const body = (0, exports.parseGuardBody)(args[0]);
45
114
  const current = await (0, data_functions_1.fetchRowForGuard)(controller, id, idField);
46
115
  (0, interface_api_util_1.assert)(current, 404, "Not Found");
47
116
  return guard.call(controller, ctx, { id, body, current });
48
117
  },
49
118
  },
50
119
  delete: {
51
- invokeGuard: async (controller, ctx, params, args, guard) => {
120
+ invokeGuard: async (controller, ctx, params, body, guard) => {
52
121
  const ids = (0, row_rules_1.normalizeToArray)(params.id);
53
122
  return guard.call(controller, ctx, {
54
123
  ids,
55
- values: parseConfirmValues(args.at(-1)),
124
+ values: parseConfirmValues(body),
56
125
  });
57
126
  },
58
127
  },
59
128
  archive: {
60
- invokeGuard: async (controller, ctx, params, args, guard) => {
129
+ invokeGuard: async (controller, ctx, params, body, guard) => {
61
130
  const ids = (0, row_rules_1.normalizeToArray)(params);
62
131
  return guard.call(controller, ctx, {
63
132
  ids,
64
- values: parseConfirmValues(args.at(-1)),
133
+ values: parseConfirmValues(body),
65
134
  });
66
135
  },
67
136
  },
68
137
  restore: {
69
- invokeGuard: async (controller, ctx, params, args, guard) => {
138
+ invokeGuard: async (controller, ctx, params, body, guard) => {
70
139
  const ids = (0, row_rules_1.normalizeToArray)(params);
71
140
  return guard.call(controller, ctx, {
72
141
  ids,
73
- values: parseConfirmValues(args.at(-1)),
142
+ values: parseConfirmValues(body),
74
143
  });
75
144
  },
76
145
  },
77
146
  new: {
78
- invokeGuard: async (controller, ctx, _params, args, guard) => {
79
- const body = (0, exports.parseGuardBody)(args[0]);
147
+ invokeGuard: async (controller, ctx, _params, body, guard) => {
80
148
  return guard.call(controller, ctx, { body });
81
149
  },
82
150
  },
@@ -104,45 +172,55 @@ async function runAfterWrite(afterWrite, actionName) {
104
172
  logging_1.Logging.Error(`[dms] the ${actionName} guard's after-write work failed: ${String(error)}`);
105
173
  }
106
174
  }
107
- const CONFIRM_BODY_ACTIONS = new Set([
108
- "delete",
109
- "archive",
110
- "restore",
111
- ]);
112
- const WRITE_BODY_ACTIONS = new Set([
113
- "new",
114
- "edit",
115
- ]);
116
- /** @internal */
117
- const createGuardedRoute = (baseRoute, actionName) => {
175
+ /**
176
+ * `baseRoute` behind the `actionName` guard, given the body the confirmation
177
+ * answered: the route takes it after the arguments of `baseRoute`.
178
+ *
179
+ * @internal
180
+ */
181
+ const createGuardedConfirmRoute = (baseRoute, actionName) => {
118
182
  const config = ACTION_GUARD_CONFIGS[actionName];
119
- const readsConfirmBody = CONFIRM_BODY_ACTIONS.has(actionName);
120
183
  return {
121
- func: async function (ctx, params, ...routeArgs) {
122
- const confirmBody = readsConfirmBody ? routeArgs.pop() : undefined;
184
+ func: async function (ctx, params, confirmBody) {
123
185
  const guard = getGuardForAction(this, actionName);
124
- const writtenBody = guard && WRITE_BODY_ACTIONS.has(actionName)
125
- ? (0, exports.parseGuardBody)(routeArgs[0])
126
- : undefined;
127
- const args = readsConfirmBody
128
- ? [confirmBody]
129
- : writtenBody
130
- ? [writtenBody, ...routeArgs.slice(1)]
131
- : routeArgs;
132
186
  const afterWrite = guard
133
- ? await config.invokeGuard(this, ctx, params, args, guard, getIdField(this))
187
+ ? await config.invokeGuard(this, ctx, params, confirmBody, guard, getIdField(this))
134
188
  : undefined;
135
- const writtenArgs = writtenBody
136
- ? [writtenBody, ...routeArgs.slice(1)]
137
- : routeArgs;
138
- const result = await baseRoute.func.call(this, ctx, params, ...writtenArgs);
189
+ const result = await baseRoute.func.call(this, ctx, params);
190
+ if (afterWrite)
191
+ await runAfterWrite(afterWrite, actionName);
192
+ return result;
193
+ },
194
+ args: [...baseRoute.args, (0, interface_api_1.RawBody)()],
195
+ method: baseRoute.method,
196
+ };
197
+ };
198
+ exports.createGuardedConfirmRoute = createGuardedConfirmRoute;
199
+ /**
200
+ * `baseRoute` behind the `actionName` guard. A guard receives the body
201
+ * parsed by `Validation.ParseBody`, so one that is not a JSON object is
202
+ * refused with 400 before the guard runs, and the route then writes the body
203
+ * as the guard left it.
204
+ *
205
+ * @internal
206
+ */
207
+ const createGuardedWriteRoute = (baseRoute, actionName) => {
208
+ const config = ACTION_GUARD_CONFIGS[actionName];
209
+ return {
210
+ func: async function (ctx, params, body, ...rest) {
211
+ const guard = getGuardForAction(this, actionName);
212
+ if (!guard)
213
+ return baseRoute.func.call(this, ctx, params, body, ...rest);
214
+ const writtenBody = components_1.Validation.ParseBody(body);
215
+ const afterWrite = await config.invokeGuard(this, ctx, params, writtenBody, guard, getIdField(this));
216
+ const result = await baseRoute.func.call(this, ctx, params, writtenBody, ...rest);
139
217
  if (afterWrite)
140
218
  await runAfterWrite(afterWrite, actionName);
141
219
  return result;
142
220
  },
143
- args: readsConfirmBody ? [...baseRoute.args, (0, interface_api_1.RawBody)()] : baseRoute.args,
221
+ args: baseRoute.args,
144
222
  method: baseRoute.method,
145
223
  };
146
224
  };
147
- exports.createGuardedRoute = createGuardedRoute;
225
+ exports.createGuardedWriteRoute = createGuardedWriteRoute;
148
226
  //# sourceMappingURL=guards.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"guards.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/guards.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"guards.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/guards.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import type { ColumnOptions, TableViewMeta } from "../meta";
4
4
  type FieldDecoratorArguments = Parameters<Parameters<typeof MakeMethodAndPropertyDecorator>[0]>;
5
5
  /** @internal */
6
6
  export declare function buildTableConfig(view: TableViewMeta, serialize: typeof serializeType): {
7
- location: string;
7
+ location: string | undefined;
8
8
  columns: {
9
9
  id: string;
10
10
  header: string;
@@ -14,13 +14,12 @@ const interface_database_decorators_1 = require("@antelopejs/interface-database-
14
14
  const form_schema_1 = require("../../form-schema");
15
15
  const types_1 = require("../../types");
16
16
  const column_display_1 = require("./column-display");
17
+ const decorated_class_1 = require("../../../utils/internal/decorated-class");
17
18
  /** @internal */
18
19
  function buildTableConfig(view, serialize) {
19
- // oxlint-disable-next-line anti-slop/require-safety-comment-for-type-assertion -- The published target constructor type does not establish ControllerClass.location; registration is assumed rather than validated here.
20
- const apimeta = (0, interface_core_1.GetMetadata)(view.target, interface_api_1.ControllerMeta);
21
20
  const datameta = (0, interface_core_1.GetMetadata)(view.target, metadata_1.DataAPIMeta);
22
21
  return {
23
- location: apimeta.location,
22
+ location: (0, interface_core_1.GetMetadata)(view.target, interface_api_1.ControllerMeta).location,
24
23
  columns: Object.entries(view.columns)
25
24
  .sort((a, b) => (a[1].order ?? 0) - (b[1].order ?? 0))
26
25
  .map(([key, options]) => {
@@ -52,7 +51,7 @@ function decorateColumn(target, key, descriptor, options, meta) {
52
51
  if (options.validate !== false) {
53
52
  // oxlint-disable-next-line typescript/unbound-method -- This assertion checks method presence without calling it; getValidation is called through options.type below.
54
53
  (0, node_assert_1.default)(options.type.getValidation, "Type has no getValidation method");
55
- const dataMeta = (0, interface_core_1.GetMetadata)(target.constructor, metadata_1.DataAPIMeta);
54
+ const dataMeta = (0, interface_core_1.GetMetadata)((0, decorated_class_1.decoratedClass)(target), metadata_1.DataAPIMeta);
56
55
  const localizedFields = (0, interface_database_decorators_1.getModifiedFields)(dataMeta.tableClass.prototype, interface_database_decorators_1.LocalizationModifier);
57
56
  const isLocalized = localizedFields.includes(key);
58
57
  const baseSchema = options.type.getValidation();
@@ -1 +1 @@
1
- {"version":3,"file":"meta-helpers.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/meta-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meta-helpers.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/meta-helpers.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getControllerLocation = exports.getTableViewMetaFor = void 0;
4
- const interface_api_1 = require("@antelopejs/interface-api");
5
4
  const interface_core_1 = require("@antelopejs/interface-core");
6
5
  const meta_1 = require("../meta");
7
6
  /** @internal */
@@ -12,8 +11,8 @@ target.constructor, meta_1.TableViewMeta);
12
11
  exports.getTableViewMetaFor = getTableViewMetaFor;
13
12
  /** @internal */
14
13
  // oxlint-disable-next-line anti-slop/no-unknown-parameters -- This published metadata adapter accepts arbitrary controller receivers; narrowing its input would change that contract.
15
- const getControllerLocation = (target) => (0, interface_core_1.GetMetadata)(
14
+ const getControllerLocation = (target) =>
16
15
  // oxlint-disable-next-line anti-slop/require-safety-comment-for-type-assertion -- The published unknown receiver does not verify its constructor; route dispatch remains responsible for supplying a controller instance.
17
- target.constructor, interface_api_1.ControllerMeta).location;
16
+ target.constructor.location;
18
17
  exports.getControllerLocation = getControllerLocation;
19
18
  //# sourceMappingURL=meta.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"meta.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/meta.ts"],"names":[],"mappings":";;;AAAA,6DAGmC;AACnC,+DAAyD;AACzD,kCAAwC;AAExC,gBAAgB;AAChB,+MAA+M;AACxM,MAAM,mBAAmB,GAAG,CAAC,MAAe,EAAiB,EAAE,CACpE,IAAA,4BAAW;AACT,2OAA2O;AAC1O,MAA2C,CAAC,WAAW,EACxD,oBAAa,CACd,CAAC;AALS,QAAA,mBAAmB,uBAK5B;AAEJ,gBAAgB;AAChB,sLAAsL;AAC/K,MAAM,qBAAqB,GAAG,CAAC,MAAe,EAAU,EAAE,CAC/D,IAAA,4BAAW;AACT,0NAA0N;AACzN,MAA2C,CAAC,WAAW,EACxD,8BAAc,CACf,CAAC,QAAQ,CAAC;AALA,QAAA,qBAAqB,yBAKrB"}
1
+ {"version":3,"file":"meta.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/meta.ts"],"names":[],"mappings":";;;AACA,+DAAyD;AACzD,kCAAwC;AAExC,gBAAgB;AAChB,+MAA+M;AACxM,MAAM,mBAAmB,GAAG,CAAC,MAAe,EAAiB,EAAE,CACpE,IAAA,4BAAW;AACT,2OAA2O;AAC1O,MAA2C,CAAC,WAAW,EACxD,oBAAa,CACd,CAAC;AALS,QAAA,mBAAmB,uBAK5B;AAEJ,gBAAgB;AAChB,sLAAsL;AAC/K,MAAM,qBAAqB,GAAG,CAAC,MAAe,EAAU,EAAE;AAC/D,0NAA0N;AACzN,MAA2C,CAAC,WAAW,CAAC,QAAQ,CAAC;AAFvD,QAAA,qBAAqB,yBAEkC"}
@@ -86,7 +86,7 @@ export interface TableViewLiveHoldOptions {
86
86
  */
87
87
  missedLabel?: string;
88
88
  }
89
- export interface TableViewOptions<T extends Record<string, unknown> = Record<string, unknown>> {
89
+ export interface TableViewOptions<T extends object = Record<string, unknown>> {
90
90
  caption?: string;
91
91
  /**
92
92
  * Row density the table opens with: "compact" gives 36px rows under a 32px
@@ -20,7 +20,7 @@ export interface TableViewSummaryFormat {
20
20
  * server over every row the table's filters, search and tab list — not only
21
21
  * the page shown.
22
22
  */
23
- export interface TableViewFooterSummary<T extends Record<string, unknown> = Record<string, unknown>> {
23
+ export interface TableViewFooterSummary<T extends object = Record<string, unknown>> {
24
24
  /** Shown before the figure. `$`-prefixed: an i18n key. */
25
25
  label: string;
26
26
  /** Column summed; required by `sum`. */
@@ -39,7 +39,7 @@ export interface TableViewFooterSummarySerialized extends Omit<TableViewFooterSu
39
39
  id: string;
40
40
  }
41
41
  /** Texts and figures of the footer band. */
42
- export interface TableViewFooterOptions<T extends Record<string, unknown> = Record<string, unknown>> {
42
+ export interface TableViewFooterOptions<T extends object = Record<string, unknown>> {
43
43
  /**
44
44
  * Row count text, an i18n key with `$` receiving `{ count }` and pluralized
45
45
  * on it ("7 members"). Defaults to "{count} items".
@@ -1,6 +1,6 @@
1
1
  /** @internal @packageDocumentation */
2
2
  import type { BulkRowActionConfig, RowActionConfig, AddRowActionConfig, CustomRowAction, RowActionConfigSerialized, CustomRowActionSerialized } from "../../types/row-action";
3
- export interface TableViewRowActionOptions<T extends Record<string, unknown> = Record<string, unknown>> {
3
+ export interface TableViewRowActionOptions<T extends object = Record<string, unknown>> {
4
4
  /**
5
5
  * Delete action configuration
6
6
  * @example true
@@ -1,4 +1,6 @@
1
+ import { type RequestContext } from "@antelopejs/interface-api";
1
2
  import type { DataControllerCallback } from "@antelopejs/interface-data-api";
3
+ import type { User } from "../../../auth/db";
2
4
  import { type RealtimeMutationEventType } from "../realtime";
3
5
  /** @internal */
4
6
  export declare const REALTIME_PRESENCE_QUERY = "_presence";
@@ -19,15 +21,23 @@ export declare function registerTableViewPageTopics(pageId: string, controllerLo
19
21
  * @internal
20
22
  */
21
23
  export declare function registerTableViewCustomTopics(pageId: string, topic: string | string[] | undefined): void;
22
- type IdExtractor = (args: unknown[], result: unknown, idKey: string) => string[];
24
+ /**
25
+ * The ids a write changed, read from the route's arguments (the request
26
+ * context, the route's parameters, then the rest) or from its answer.
27
+ */
28
+ type IdExtractor<P> = (args: readonly [RequestContext, P, ...unknown[]], result: unknown, idKey: string) => string[];
23
29
  /** @internal */
24
- export declare const extractFromResult: IdExtractor;
30
+ export declare const extractFromResult: IdExtractor<unknown>;
25
31
  /** @internal */
26
- export declare const extractSingleParamId: IdExtractor;
32
+ export declare const extractSingleParamId: IdExtractor<{
33
+ id?: string;
34
+ } | undefined>;
27
35
  /** @internal */
28
- export declare const extractMultiParamId: IdExtractor;
36
+ export declare const extractMultiParamId: IdExtractor<{
37
+ id?: string | string[];
38
+ } | undefined>;
29
39
  /** @internal */
30
- export declare const extractBulkArgIds: IdExtractor;
40
+ export declare const extractBulkArgIds: IdExtractor<string | string[] | undefined>;
31
41
  /**
32
42
  * Whether a write reports changing no row: its row rules refused every id,
33
43
  * or none existed. Broadcasting its ids would have every session watching
@@ -35,12 +45,43 @@ export declare const extractBulkArgIds: IdExtractor;
35
45
  */
36
46
  /** @internal */
37
47
  export declare const reportsNoChange: (result: unknown) => boolean;
38
- interface MutationConfig {
48
+ interface MutationConfig<P> {
39
49
  eventType: RealtimeMutationEventType;
40
- extractIds: IdExtractor;
50
+ extractIds: IdExtractor<P>;
41
51
  }
42
- /** @internal */
43
- export declare function withRealtimeMutation<T extends DataControllerCallback>(config: MutationConfig, baseRoute: T): DataControllerCallback;
44
- /** @internal */
45
- export declare function withPresenceAcquire<T extends DataControllerCallback>(baseRoute: T): DataControllerCallback;
52
+ /**
53
+ * `baseRoute` (a write behind its permission check) followed by the realtime
54
+ * broadcast of the rows it changed: the route takes the request context, the
55
+ * realtime session header and the user after the arguments of `baseRoute`.
56
+ *
57
+ * @internal
58
+ */
59
+ export declare function withRealtimeMutation<O, R, P, B>(config: MutationConfig<P>, baseRoute: DataControllerCallback<O, R, [RequestContext, P, B, User]>): DataControllerCallback<O, R, [
60
+ RequestContext,
61
+ P,
62
+ B,
63
+ User,
64
+ RequestContext,
65
+ string | undefined,
66
+ User
67
+ ]>;
68
+ /**
69
+ * `baseRoute` (a read behind its permission check) that also takes the
70
+ * presence of the session on the row it reads when the request asks: the
71
+ * route takes the request context, the realtime session header, the presence
72
+ * query and the user after the arguments of `baseRoute`.
73
+ *
74
+ * @internal
75
+ */
76
+ export declare function withPresenceAcquire<O, R, P extends {
77
+ id?: string;
78
+ }>(baseRoute: DataControllerCallback<O, R, [RequestContext, P, User]>): DataControllerCallback<O, R, [
79
+ RequestContext,
80
+ P,
81
+ User,
82
+ RequestContext,
83
+ string | undefined,
84
+ string | undefined,
85
+ User
86
+ ]>;
46
87
  export {};
@@ -125,7 +125,13 @@ const reportsNoChange = (result) => {
125
125
  return counts.length > 0 && counts.every((count) => count === 0);
126
126
  };
127
127
  exports.reportsNoChange = reportsNoChange;
128
- /** @internal */
128
+ /**
129
+ * `baseRoute` (a write behind its permission check) followed by the realtime
130
+ * broadcast of the rows it changed: the route takes the request context, the
131
+ * realtime session header and the user after the arguments of `baseRoute`.
132
+ *
133
+ * @internal
134
+ */
129
135
  function withRealtimeMutation(config, baseRoute) {
130
136
  return {
131
137
  method: baseRoute.method,
@@ -135,16 +141,14 @@ function withRealtimeMutation(config, baseRoute) {
135
141
  (0, interface_api_1.Parameter)(REALTIME_SESSION_HEADER, "header"),
136
142
  (0, auth_1.AuthUser)(),
137
143
  ],
138
- func: async function (...allArgs) {
139
- const user = allArgs.pop();
140
- const sessionId = allArgs.pop();
141
- const ctx = allArgs.pop();
142
- const result = await baseRoute.func.apply(this, allArgs);
144
+ func: async function (...routeArgs) {
145
+ const [routeCtx, params, body, routeUser, ctx, sessionId, user] = routeArgs;
146
+ const result = await baseRoute.func.call(this, routeCtx, params, body, routeUser);
143
147
  if (!isRealtimeEnabled(this))
144
148
  return result;
145
149
  const meta = (0, meta_1.getTableViewMetaFor)(this);
146
150
  const idKey = meta.options.rowIdKey || "_id";
147
- const ids = config.extractIds(allArgs, result, idKey);
151
+ const ids = config.extractIds([routeCtx, params, body, routeUser], result, idKey);
148
152
  if (ids.length === 0 && config.eventType !== "created")
149
153
  return result;
150
154
  if (config.eventType !== "created" && (0, exports.reportsNoChange)(result)) {
@@ -163,7 +167,14 @@ function withRealtimeMutation(config, baseRoute) {
163
167
  },
164
168
  };
165
169
  }
166
- /** @internal */
170
+ /**
171
+ * `baseRoute` (a read behind its permission check) that also takes the
172
+ * presence of the session on the row it reads when the request asks: the
173
+ * route takes the request context, the realtime session header, the presence
174
+ * query and the user after the arguments of `baseRoute`.
175
+ *
176
+ * @internal
177
+ */
167
178
  function withPresenceAcquire(baseRoute) {
168
179
  return {
169
180
  method: baseRoute.method,
@@ -174,19 +185,15 @@ function withPresenceAcquire(baseRoute) {
174
185
  (0, interface_api_1.Parameter)(exports.REALTIME_PRESENCE_QUERY, "query"),
175
186
  (0, auth_1.AuthUser)(),
176
187
  ],
177
- func: async function (...allArgs) {
178
- const user = allArgs.pop();
179
- const presenceFlag = allArgs.pop();
180
- const sessionId = allArgs.pop();
181
- const ctx = allArgs.pop();
182
- const result = await baseRoute.func.apply(this, allArgs);
188
+ func: async function (...routeArgs) {
189
+ const [routeCtx, params, routeUser, ctx, sessionId, presenceFlag, user] = routeArgs;
190
+ const result = await baseRoute.func.call(this, routeCtx, params, routeUser);
183
191
  if (presenceFlag !== exports.REALTIME_PRESENCE_ACQUIRE_VALUE ||
184
192
  !sessionId ||
185
193
  !isRealtimeEnabled(this)) {
186
194
  return result;
187
195
  }
188
- const params = allArgs[PARAMS_INDEX];
189
- if (!params?.id)
196
+ if (!params.id)
190
197
  return result;
191
198
  const meta = (0, meta_1.getTableViewMetaFor)(this);
192
199
  await realtime_2.internal.AcquirePresence({
@@ -1 +1 @@
1
- {"version":3,"file":"realtime.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/realtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"realtime.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/realtime.ts"],"names":[],"mappings":"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"}
@@ -22,4 +22,4 @@ export declare function stampAttachmentFields(meta: TableViewMeta, location: str
22
22
  *
23
23
  * @internal
24
24
  */
25
- export declare function resourceForm<T extends ControllerClass>(controller: T, mode: ResourceFormMode, options?: ResourceFormOptions): FormBuilder | undefined;
25
+ export declare function resourceForm(controller: ControllerClass, mode: ResourceFormMode, options?: ResourceFormOptions): FormBuilder | undefined;
@@ -64,7 +64,7 @@ function stampAttachmentFields(meta, location) {
64
64
  */
65
65
  function resourceForm(controller, mode, options = {}) {
66
66
  const meta = (0, interface_core_1.GetMetadata)(controller, meta_1.TableViewMeta);
67
- const { location } = meta.config;
67
+ const { location } = controller;
68
68
  stampAttachmentFields(meta, location);
69
69
  const fields = meta.getFormFields(mode);
70
70
  if (fields.length === 0) {