@antelopejs/interface-dms 0.7.4 → 0.8.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 (227) hide show
  1. package/CHANGELOG.md +107 -0
  2. package/dist/auth/index.d.ts +3 -3
  3. package/dist/auth/index.js +11 -9
  4. package/dist/auth/index.js.map +1 -1
  5. package/dist/auth/internal/jwt-auth-decorator.d.ts +20 -0
  6. package/dist/auth/internal/jwt-auth-decorator.js +51 -0
  7. package/dist/auth/internal/jwt-auth-decorator.js.map +1 -0
  8. package/dist/auth/internal/request-authenticators.d.ts +12 -0
  9. package/dist/auth/internal/request-authenticators.js +22 -0
  10. package/dist/auth/internal/request-authenticators.js.map +1 -1
  11. package/dist/base/activity-feed.d.ts +6 -6
  12. package/dist/base/block-registry/types.d.ts +16 -0
  13. package/dist/base/block-types.d.ts +1 -0
  14. package/dist/base/block-types.js +1 -0
  15. package/dist/base/block-types.js.map +1 -1
  16. package/dist/base/chart-card.d.ts +15 -0
  17. package/dist/base/chart-card.js +4 -0
  18. package/dist/base/chart-card.js.map +1 -1
  19. package/dist/base/chart-schemas.d.ts +26 -26
  20. package/dist/base/code-block.d.ts +3 -3
  21. package/dist/base/data-types/compare-types.js +19 -13
  22. package/dist/base/data-types/compare-types.js.map +1 -1
  23. package/dist/base/data-types/core.d.ts +11 -0
  24. package/dist/base/data-types/core.js +14 -1
  25. package/dist/base/data-types/core.js.map +1 -1
  26. package/dist/base/data-types/default-types.d.ts +112 -2
  27. package/dist/base/data-types/default-types.js +90 -19
  28. package/dist/base/data-types/default-types.js.map +1 -1
  29. package/dist/base/data-types/field-types.d.ts +10 -4
  30. package/dist/base/data-types/field-types.js +12 -2
  31. package/dist/base/data-types/field-types.js.map +1 -1
  32. package/dist/base/data-types/internal/compare-types.d.ts +3 -0
  33. package/dist/base/data-types/internal/compare-types.js +7 -0
  34. package/dist/base/data-types/internal/compare-types.js.map +1 -1
  35. package/dist/base/empty-state.d.ts +4 -4
  36. package/dist/base/form-block-schema.d.ts +59 -3
  37. package/dist/base/form-block-schema.js +12 -2
  38. package/dist/base/form-block-schema.js.map +1 -1
  39. package/dist/base/form-schema.d.ts +46 -1
  40. package/dist/base/form-schema.js.map +1 -1
  41. package/dist/base/form-types.d.ts +56 -13
  42. package/dist/base/form-types.js +12 -4
  43. package/dist/base/form-types.js.map +1 -1
  44. package/dist/base/guard.d.ts +6 -6
  45. package/dist/base/helpers/archive-mode-helpers.js +6 -2
  46. package/dist/base/helpers/archive-mode-helpers.js.map +1 -1
  47. package/dist/base/index.d.ts +1 -0
  48. package/dist/base/index.js +1 -0
  49. package/dist/base/index.js.map +1 -1
  50. package/dist/base/internal/form-schema.js +2 -0
  51. package/dist/base/internal/form-schema.js.map +1 -1
  52. package/dist/base/internal/layouts.d.ts +4 -0
  53. package/dist/base/key-value-list.d.ts +12 -9
  54. package/dist/base/key-value-list.js +1 -1
  55. package/dist/base/key-value-list.js.map +1 -1
  56. package/dist/base/kpi-card.d.ts +39 -5
  57. package/dist/base/kpi-card.js +18 -6
  58. package/dist/base/kpi-card.js.map +1 -1
  59. package/dist/base/layouts.d.ts +24 -0
  60. package/dist/base/layouts.js.map +1 -1
  61. package/dist/base/live-toggle.d.ts +11 -0
  62. package/dist/base/live-toggle.js +8 -1
  63. package/dist/base/live-toggle.js.map +1 -1
  64. package/dist/base/page-toolbar.d.ts +158 -0
  65. package/dist/base/page-toolbar.js +198 -0
  66. package/dist/base/page-toolbar.js.map +1 -0
  67. package/dist/base/period-selector.d.ts +9 -2
  68. package/dist/base/period-selector.js.map +1 -1
  69. package/dist/base/placeholder.d.ts +2 -2
  70. package/dist/base/section.d.ts +2 -2
  71. package/dist/base/stack.d.ts +2 -2
  72. package/dist/base/stat-group.d.ts +18 -6
  73. package/dist/base/stat-group.js +9 -0
  74. package/dist/base/stat-group.js.map +1 -1
  75. package/dist/base/table-view/column-display.d.ts +9 -5
  76. package/dist/base/table-view/column-display.js +1 -1
  77. package/dist/base/table-view/column-display.js.map +1 -1
  78. package/dist/base/table-view/data-functions.d.ts +26 -7
  79. package/dist/base/table-view/data-functions.js +10 -6
  80. package/dist/base/table-view/data-functions.js.map +1 -1
  81. package/dist/base/table-view/factory.js +24 -13
  82. package/dist/base/table-view/factory.js.map +1 -1
  83. package/dist/base/table-view/internal/auth.d.ts +2 -0
  84. package/dist/base/table-view/internal/auth.js +3 -1
  85. package/dist/base/table-view/internal/auth.js.map +1 -1
  86. package/dist/base/table-view/internal/factory-helpers.d.ts +5 -0
  87. package/dist/base/table-view/internal/factory-helpers.js +55 -11
  88. package/dist/base/table-view/internal/factory-helpers.js.map +1 -1
  89. package/dist/base/table-view/internal/guards.js +19 -2
  90. package/dist/base/table-view/internal/guards.js.map +1 -1
  91. package/dist/base/table-view/internal/realtime.js +17 -0
  92. package/dist/base/table-view/internal/realtime.js.map +1 -1
  93. package/dist/base/table-view/internal/resource-form.js +1 -0
  94. package/dist/base/table-view/internal/resource-form.js.map +1 -1
  95. package/dist/base/table-view/internal/row-actions-schema.d.ts +296 -0
  96. package/dist/base/table-view/internal/row-actions-schema.js +62 -0
  97. package/dist/base/table-view/internal/row-actions-schema.js.map +1 -0
  98. package/dist/base/table-view/internal/validation.d.ts +15 -3
  99. package/dist/base/table-view/internal/validation.js +70 -2
  100. package/dist/base/table-view/internal/validation.js.map +1 -1
  101. package/dist/base/table-view/meta.d.ts +8 -0
  102. package/dist/base/table-view/meta.js +25 -3
  103. package/dist/base/table-view/meta.js.map +1 -1
  104. package/dist/base/table-view/options.d.ts +90 -16
  105. package/dist/base/table-view/options.js.map +1 -1
  106. package/dist/base/table-view/realtime.d.ts +8 -0
  107. package/dist/base/table-view/realtime.js.map +1 -1
  108. package/dist/base/table-view/routes.js +5 -2
  109. package/dist/base/table-view/routes.js.map +1 -1
  110. package/dist/base/table-view/schema.d.ts +36 -30
  111. package/dist/base/table-view/schema.js +11 -57
  112. package/dist/base/table-view/schema.js.map +1 -1
  113. package/dist/base/table-view/source.d.ts +1 -1
  114. package/dist/base/table-view/source.js +4 -1
  115. package/dist/base/table-view/source.js.map +1 -1
  116. package/dist/base/table-view.d.ts +2 -2
  117. package/dist/base/table-view.js.map +1 -1
  118. package/dist/base/top-list-card.d.ts +5 -5
  119. package/dist/base/types/action-target.d.ts +77 -20
  120. package/dist/base/types/confirm-dialog.d.ts +5 -1
  121. package/dist/base/types/custom-button.d.ts +5 -3
  122. package/dist/base/types/field-config.d.ts +4 -4
  123. package/dist/base/types/guards.d.ts +10 -0
  124. package/dist/base/types/row-action.d.ts +6 -1
  125. package/dist/base/types/size.d.ts +3 -1
  126. package/dist/client-ip.d.ts +6 -2
  127. package/dist/client-ip.js +4 -2
  128. package/dist/client-ip.js.map +1 -1
  129. package/dist/component.d.ts +8 -0
  130. package/dist/component.js.map +1 -1
  131. package/dist/data-controllers/members.d.ts +0 -3
  132. package/dist/data-controllers/members.js +30 -8
  133. package/dist/data-controllers/members.js.map +1 -1
  134. package/dist/db/internal/tenantLifecycle.model.js +5 -2
  135. package/dist/db/internal/tenantLifecycle.model.js.map +1 -1
  136. package/dist/guards.js +2 -3
  137. package/dist/guards.js.map +1 -1
  138. package/dist/hooks.d.ts +41 -5
  139. package/dist/hooks.js +5 -1
  140. package/dist/hooks.js.map +1 -1
  141. package/dist/index.d.ts +3 -3
  142. package/dist/index.js +3 -2
  143. package/dist/index.js.map +1 -1
  144. package/dist/internal/invite-membership.d.ts +9 -0
  145. package/dist/internal/invite-membership.js +25 -7
  146. package/dist/internal/invite-membership.js.map +1 -1
  147. package/dist/internal/member-changes.d.ts +24 -0
  148. package/dist/internal/member-changes.js +66 -0
  149. package/dist/internal/member-changes.js.map +1 -0
  150. package/dist/internal/tenant-ownership.d.ts +4 -1
  151. package/dist/internal/tenant-ownership.js +4 -10
  152. package/dist/internal/tenant-ownership.js.map +1 -1
  153. package/dist/invite-extensions.d.ts +0 -9
  154. package/dist/invite-extensions.js +1 -36
  155. package/dist/invite-extensions.js.map +1 -1
  156. package/dist/invite-resolution.js +6 -2
  157. package/dist/invite-resolution.js.map +1 -1
  158. package/dist/invites.js +36 -22
  159. package/dist/invites.js.map +1 -1
  160. package/dist/layout-banners.d.ts +40 -4
  161. package/dist/layout-banners.js +25 -3
  162. package/dist/layout-banners.js.map +1 -1
  163. package/dist/notifications/internal.d.ts +2 -2
  164. package/dist/notifications/internal.js.map +1 -1
  165. package/dist/notifications/sendable.d.ts +3 -2
  166. package/dist/notifications/sendable.js +2 -1
  167. package/dist/notifications/sendable.js.map +1 -1
  168. package/dist/notifications/types.d.ts +9 -0
  169. package/dist/page/controllers.d.ts +44 -0
  170. package/dist/page/controllers.js +14 -1
  171. package/dist/page/controllers.js.map +1 -1
  172. package/dist/page/internal/layout-filter.d.ts +2 -1
  173. package/dist/page/internal/layout-filter.js +3 -1
  174. package/dist/page/internal/layout-filter.js.map +1 -1
  175. package/dist/page/internal/metadata-helpers.d.ts +7 -0
  176. package/dist/page/internal/metadata-helpers.js +13 -2
  177. package/dist/page/internal/metadata-helpers.js.map +1 -1
  178. package/dist/page/internal/page-registration.d.ts +2 -0
  179. package/dist/page/internal/page-registration.js.map +1 -1
  180. package/dist/page/layout-filter.js +31 -10
  181. package/dist/page/layout-filter.js.map +1 -1
  182. package/dist/page/metadata.js +29 -24
  183. package/dist/page/metadata.js.map +1 -1
  184. package/dist/page/types.d.ts +39 -4
  185. package/dist/page/types.js.map +1 -1
  186. package/dist/page.d.ts +1 -1
  187. package/dist/page.js +2 -1
  188. package/dist/page.js.map +1 -1
  189. package/dist/permissions-resolver.d.ts +26 -3
  190. package/dist/permissions-resolver.js +2 -1
  191. package/dist/permissions-resolver.js.map +1 -1
  192. package/dist/permissions.d.ts +7 -3
  193. package/dist/permissions.js +8 -6
  194. package/dist/permissions.js.map +1 -1
  195. package/dist/realtime.d.ts +24 -1
  196. package/dist/realtime.js +7 -1
  197. package/dist/realtime.js.map +1 -1
  198. package/dist/request-tenant.d.ts +17 -13
  199. package/dist/request-tenant.js +54 -42
  200. package/dist/request-tenant.js.map +1 -1
  201. package/dist/tenant-members.d.ts +26 -0
  202. package/dist/tenant-members.js +29 -0
  203. package/dist/tenant-members.js.map +1 -0
  204. package/dist/tenant-ownership.d.ts +4 -1
  205. package/dist/tenant-ownership.js +12 -17
  206. package/dist/tenant-ownership.js.map +1 -1
  207. package/dist/tenant-scoped-model.d.ts +2 -1
  208. package/dist/tenant-scoped-model.js +4 -3
  209. package/dist/tenant-scoped-model.js.map +1 -1
  210. package/docs/1.core/10.layout-banners.md +57 -2
  211. package/docs/1.core/2.pages-and-modules.md +20 -11
  212. package/docs/1.core/4.permissions.md +34 -1
  213. package/docs/1.core/5.tenancy.md +37 -6
  214. package/docs/1.core/7.hooks.md +12 -2
  215. package/docs/1.core/8.realtime.md +24 -3
  216. package/docs/2.auth/2.authentication.md +3 -3
  217. package/docs/3.base/1.introduction.md +1 -0
  218. package/docs/3.base/10.display-blocks.md +20 -2
  219. package/docs/3.base/2.types.md +7 -5
  220. package/docs/3.base/3.forms.md +21 -6
  221. package/docs/3.base/4.tables.md +14 -9
  222. package/docs/3.base/5.charts-and-widgets.md +8 -4
  223. package/docs/3.base/6.layout.md +38 -1
  224. package/docs/3.base/8.data-types.md +14 -7
  225. package/docs/4.notifications/3.sending.md +4 -3
  226. package/docs/5.html-render/1.introduction.md +5 -7
  227. package/package.json +3 -7
@@ -40,10 +40,12 @@ export interface SidePanelTargetOptions {
40
40
  */
41
41
  rowTitle?: string;
42
42
  /**
43
- * Position of the open row among the rows the table shows, drawn under the
44
- * title: an i18n key (`$`-prefixed) receiving `{ index }` (from 1) and
45
- * `{ total }`, e.g. `"$api.request.position"` for "Request {index} of
46
- * {total} shown". Defaults to the DMS's generic "{index} of {total}".
43
+ * Position of the open row among all the rows the table lists (its count,
44
+ * not the page loaded), drawn under the title: an i18n key (`$`-prefixed)
45
+ * receiving `{ index }` (from 1) and `{ total }`, both written with the
46
+ * locale's digit grouping ("26 120"), e.g.
47
+ * `"$api.request.position"` for "Request {index} of {total}". Defaults to
48
+ * the DMS's generic "{index} of {total}".
47
49
  */
48
50
  positionLabel?: string;
49
51
  /**
@@ -61,6 +63,37 @@ export interface SidePanelTargetOptions {
61
63
  */
62
64
  notFound?: SidePanelNotFoundTexts;
63
65
  }
66
+ /**
67
+ * What a `drawer` action target sets besides its component and texts, shared
68
+ * by the declared and the serialized target. A drawer opened on a row takes
69
+ * the row options of a side panel, so a detail panel moves from `sidePanel`
70
+ * to `drawer` without losing any of them.
71
+ */
72
+ export interface DrawerTargetOptions extends Omit<SidePanelTargetOptions, "title" | "deepLink"> {
73
+ /**
74
+ * Width a `left` or `right` drawer opens at from `lg`, before the user
75
+ * resizes it: a modal's width at that size (`sm` 384px … `5xl` 1024px),
76
+ * `full` the whole window. Without one it opens at 600px. Capped to the window; below `lg` an
77
+ * unsized one is 440px wide, and on a phone every side drawer, sized or
78
+ * not, leaves a 2rem strip of backdrop (only `full` fills the screen).
79
+ * A `top` or `bottom` drawer ignores it.
80
+ */
81
+ size?: ModalSize;
82
+ /**
83
+ * The DMS draws the row header, as a side panel's: the title naming the
84
+ * open row (`rowTitle`), its position (`positionLabel`), previous and next
85
+ * buttons next to the close button. On when `rowTitle` or `positionLabel`
86
+ * is set; `false` leaves the header to the drawer's title, `true` draws it
87
+ * with the defaults. A drawer opened on no row, or on a selection, never
88
+ * draws it.
89
+ */
90
+ rowHeader?: boolean;
91
+ /**
92
+ * The open row is kept in the URL (`?record=<id>`), as the action's own
93
+ * `deepLink` does (which wins when set). Off by default for a drawer.
94
+ */
95
+ deepLink?: boolean;
96
+ }
64
97
  /**
65
98
  * A `download` action target: the file is fetched with the user's session and
66
99
  * saved, the page left as it is.
@@ -82,18 +115,25 @@ export interface DownloadActionTarget {
82
115
  */
83
116
  filename?: string;
84
117
  }
85
- export type ActionTarget = {
118
+ export type ActionTarget = ({
119
+ /**
120
+ * A drawer: a modal sheet sliding in from an edge of the window. The
121
+ * container for a detail or record panel: from `lg` the user resizes it
122
+ * by its inner edge, and it opens again at that size. Opened on a row,
123
+ * it steps through the rows (J and K) and takes the row options of a
124
+ * side panel (see {@link DrawerTargetOptions}).
125
+ */
86
126
  type: "drawer";
87
127
  component: Component;
88
128
  title?: string;
89
129
  description?: string;
90
130
  /**
91
131
  * Edge the drawer slides in from (`bottom` by default). A `left` or
92
- * `right` drawer is a side sheet as wide as a side panel, and spans the
93
- * window's height.
132
+ * `right` drawer is a side sheet spanning the window's height, 600px
133
+ * wide from `lg` unless `size` says otherwise.
94
134
  */
95
135
  direction?: DrawerDirection;
96
- } | {
136
+ } & DrawerTargetOptions) | {
97
137
  type: "modal";
98
138
  size?: ModalSize;
99
139
  component: Component;
@@ -102,12 +142,19 @@ export type ActionTarget = {
102
142
  } | ({
103
143
  /**
104
144
  * A non-modal panel docked on the right of the page, next to the table,
105
- * which stays usable. The DMS draws its header: the title, the row's
106
- * position among the rows shown ("3 of 20"), previous and next buttons
107
- * (J and K too) and a close button (Esc too). Its component receives the
145
+ * which stays usable. Meant for global, page-independent panels (an
146
+ * assistant dock): a detail or record panel opens in a `drawer`, which
147
+ * takes the same row options. The DMS draws its header: the title, the row's
148
+ * position among all the rows the table lists ("3 of 87", past the
149
+ * page loaded), previous and next buttons (J and K too, turning the
150
+ * table's page past it) and a close button (Esc too). Its component receives the
108
151
  * same props as a drawer's (`rowData`, `navigation`…), and is mounted
109
- * anew on each row. One panel is open at a time: opening it closes a
110
- * module's side panel, and the other way round.
152
+ * anew on each row, its options' `{{row.X}}` tokens filled with that
153
+ * row (a `ResourceForm` reading `rowId: "{{row._id}}"`). A container
154
+ * block (a `Card` holding blocks) is drawn with its children, their
155
+ * options filled likewise, as in a drawer or a modal. One panel is open
156
+ * at a time: opening it closes a module's side panel, and the other way
157
+ * round.
111
158
  */
112
159
  type: "sidePanel";
113
160
  component: Component;
@@ -168,18 +215,25 @@ export type ActionTarget = {
168
215
  retry?: string;
169
216
  };
170
217
  };
171
- export type ActionTargetSerialized = {
218
+ export type ActionTargetSerialized = ({
219
+ /**
220
+ * A drawer: a modal sheet sliding in from an edge of the window. The
221
+ * container for a detail or record panel: from `lg` the user resizes it
222
+ * by its inner edge, and it opens again at that size. Opened on a row,
223
+ * it steps through the rows (J and K) and takes the row options of a
224
+ * side panel (see {@link DrawerTargetOptions}).
225
+ */
172
226
  type: "drawer";
173
227
  component: ComponentInfoSerialized;
174
228
  title?: string;
175
229
  description?: string;
176
230
  /**
177
231
  * Edge the drawer slides in from (`bottom` by default). A `left` or
178
- * `right` drawer is a side sheet as wide as a side panel, and spans the
179
- * window's height.
232
+ * `right` drawer is a side sheet spanning the window's height, 600px
233
+ * wide from `lg` unless `size` says otherwise.
180
234
  */
181
235
  direction?: DrawerDirection;
182
- } | {
236
+ } & DrawerTargetOptions) | {
183
237
  type: "modal";
184
238
  size?: ModalSize;
185
239
  component: ComponentInfoSerialized;
@@ -188,9 +242,12 @@ export type ActionTargetSerialized = {
188
242
  } | ({
189
243
  /**
190
244
  * A non-modal panel docked on the right of the page, next to the table,
191
- * which stays usable. The DMS draws its header: the title, the row's
192
- * position among the rows shown ("3 of 20"), previous and next buttons
193
- * (J and K too) and a close button (Esc too). Its component receives the
245
+ * which stays usable. Meant for global, page-independent panels (an
246
+ * assistant dock): a detail or record panel opens in a `drawer`, which
247
+ * takes the same row options. The DMS draws its header: the title, the row's
248
+ * position among all the rows the table lists ("3 of 87", past the
249
+ * page loaded), previous and next buttons (J and K too, turning the
250
+ * table's page past it) and a close button (Esc too). Its component receives the
194
251
  * same props as a drawer's (`rowData`, `navigation`…), and is mounted
195
252
  * anew on each row. One panel is open at a time: opening it closes a
196
253
  * module's side panel, and the other way round.
@@ -81,7 +81,11 @@ export interface ConfirmDialog {
81
81
  * explains why, with a close button.
82
82
  */
83
83
  blocked?: boolean;
84
- /** Text the user must type to confirm (type-to-confirm). */
84
+ /**
85
+ * Text the user must type to confirm (type-to-confirm). A `$`-prefixed i18n
86
+ * key is translated, and `{field}` reads the row like the other texts
87
+ * (`"{name}"`: the row's name).
88
+ */
85
89
  confirmText?: string;
86
90
  /**
87
91
  * Compares the typed text with `confirmText` ignoring case (`acme` matches
@@ -31,9 +31,11 @@ export interface CustomButtonHidden {
31
31
  * disabled, or not at all. Returning `undefined` leaves it enabled, `{ reason
32
32
  * }` disables it with that reason, and `{ hidden: true }` leaves it out.
33
33
  *
34
- * In a page header, `context.query` holds the query of the page URL, and the
35
- * header asks again whenever that query changes: a button can depend on the
36
- * record `?id=` names. A table's toolbar button gets no query.
34
+ * In a page header, `context.query` holds the query of the page URL and
35
+ * `context.params` its route parameters (`:id`), and the header asks again
36
+ * whenever that query changes: a button can depend on the record `?id=` or
37
+ * `/:id` names, and hide itself when that record does not exist. A table's
38
+ * toolbar button gets neither.
37
39
  *
38
40
  * It only shapes the UI: whatever the button triggers must still refuse the
39
41
  * operation on its own.
@@ -1,4 +1,4 @@
1
- import type { AccessMode } from "@antelopejs/interface-data-api/metadata";
1
+ import type { FieldData } from "@antelopejs/interface-data-api/metadata";
2
2
  import type { FormMode } from "./form-mode";
3
3
  export interface ListableConfig {
4
4
  list?: boolean;
@@ -6,11 +6,11 @@ export interface ListableConfig {
6
6
  export?: boolean;
7
7
  }
8
8
  /**
9
- * Field metadata from DataAPIMeta
9
+ * Field metadata from DataAPIMeta: its access (`mode`, `modeOverrides`) is the
10
+ * data API's own, read with `GetEffectiveMode`.
10
11
  */
11
- export interface FieldMetadata {
12
+ export interface FieldMetadata extends Pick<FieldData, "mode" | "modeOverrides"> {
12
13
  mandatory?: Set<FormMode>;
13
- mode?: AccessMode;
14
14
  listable?: ListableConfig;
15
15
  sortable?: boolean;
16
16
  }
@@ -6,6 +6,11 @@ export interface GetGuardArgs<T extends Record<string, unknown> = Record<string,
6
6
  }
7
7
  export interface EditGuardArgs<T extends Record<string, unknown> = Record<string, unknown>> {
8
8
  id: string;
9
+ /**
10
+ * The fields the edit writes. The guard may amend it in place (stamp a
11
+ * field, drop one): the route writes the body as the guard leaves it, and
12
+ * validates it as it would the request's.
13
+ */
9
14
  body: Partial<T>;
10
15
  current: T;
11
16
  }
@@ -25,6 +30,11 @@ export interface BulkGuardArgs {
25
30
  values?: Record<string, unknown>;
26
31
  }
27
32
  export interface NewGuardArgs<T extends Record<string, unknown> = Record<string, unknown>> {
33
+ /**
34
+ * The row the request creates. The guard may amend it in place (fill a
35
+ * generated number, a default): the route writes the body as the guard
36
+ * leaves it, and validates it as it would the request's.
37
+ */
28
38
  body: Partial<T>;
29
39
  }
30
40
  /**
@@ -130,7 +130,12 @@ export interface CustomRowAction<T extends Record<string, unknown> = Record<stri
130
130
  * (`?ids=a&ids=b`), a page, external or download URL too, a drawer or
131
131
  * modal component a `selection` prop. With `{ allMatching: true }`, "Select all
132
132
  * N matching" sends `allMatching=true` and the table's filters and search
133
- * instead. A fixed confirmation receives `{ count }`.
133
+ * instead. A fixed confirmation receives `{ count }`. A `{{row.X}}` token
134
+ * has no row to fill there: a query pair whose value is one is left out
135
+ * (`?ids={{row._id}}` gives way to the selection's ids), any other is
136
+ * left empty. The action is still offered on each row, where a URL target
137
+ * receives that row's id the same way (`?ids=<id>`), unless its URL names a
138
+ * row field itself; a drawer or modal there receives `rowData`.
134
139
  */
135
140
  bulk?: CustomRowActionBulk;
136
141
  /**
@@ -8,4 +8,6 @@ export declare enum Size {
8
8
  /** The size tokens a component option accepts. */
9
9
  export declare const SIZES: readonly ["xs", "sm", "md", "lg", "xl"];
10
10
  export type SizeValue = Size | (string & {});
11
- export type ModalSize = "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl" | "5xl";
11
+ export type ModalSize = "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl" | "5xl"
12
+ /** The whole window: a near full-screen modal, a drawer as wide as the window. */
13
+ | "full";
@@ -1,3 +1,4 @@
1
+ import type { IncomingHttpHeaders } from "node:http";
1
2
  import type { RequestContext } from "@antelopejs/interface-api";
2
3
  /** What a request exposes about the address it came from. */
3
4
  export interface ClientAddressSource {
@@ -5,11 +6,14 @@ export interface ClientAddressSource {
5
6
  socketAddress: string | undefined;
6
7
  /** The raw `x-forwarded-for` header, possibly absent */
7
8
  forwardedFor: string | undefined;
9
+ /** The request headers, where `auth.clientIpHeader` is read */
10
+ headers?: IncomingHttpHeaders;
8
11
  }
9
12
  /**
10
13
  * The client address of a request, resolved the way the DMS resolves the
11
- * address it records on a session: behind the `auth.trustedProxies` reverse
12
- * proxies of its configuration, each trusted hop vouching for the
14
+ * address it records on a session: from the `auth.clientIpHeader` header the
15
+ * hosting platform writes when it is configured, otherwise behind the
16
+ * `auth.trustedProxies` reverse proxies of its configuration, each trusted hop vouching for the
13
17
  * `x-forwarded-for` entry it appended and nothing left of it, with an
14
18
  * IPv4-mapped address (`::ffff:10.0.0.1`) written as plain IPv4.
15
19
  *
package/dist/client-ip.js CHANGED
@@ -7,8 +7,9 @@ const FORWARDED_FOR_HEADER = "x-forwarded-for";
7
7
  const FORWARDED_FOR_SEPARATOR = ",";
8
8
  /**
9
9
  * The client address of a request, resolved the way the DMS resolves the
10
- * address it records on a session: behind the `auth.trustedProxies` reverse
11
- * proxies of its configuration, each trusted hop vouching for the
10
+ * address it records on a session: from the `auth.clientIpHeader` header the
11
+ * hosting platform writes when it is configured, otherwise behind the
12
+ * `auth.trustedProxies` reverse proxies of its configuration, each trusted hop vouching for the
12
13
  * `x-forwarded-for` entry it appended and nothing left of it, with an
13
14
  * IPv4-mapped address (`::ffff:10.0.0.1`) written as plain IPv4.
14
15
  *
@@ -35,6 +36,7 @@ function getClientIp(context) {
35
36
  return (0, exports.ResolveClientIp)({
36
37
  socketAddress: context.rawRequest.socket.remoteAddress,
37
38
  forwardedFor: forwardedForOf(context),
39
+ headers: context.rawRequest.headers,
38
40
  });
39
41
  }
40
42
  //# sourceMappingURL=client-ip.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client-ip.js","sourceRoot":"","sources":["../src/client-ip.ts"],"names":[],"mappings":";;;AA2CA,kCAKC;AA/CD,+DAA+D;AAE/D,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;AAC/C,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAUpC;;;;;;;;;;;;GAYG;AACU,QAAA,eAAe,GAC1B,IAAA,kCAAiB,GAA2C,CAAC;AAE/D,SAAS,cAAc,CAAC,OAAuB;IAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAChE,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AAC/E,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,WAAW,CAAC,OAAuB;IACjD,OAAO,IAAA,uBAAe,EAAC;QACrB,aAAa,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa;QACtD,YAAY,EAAE,cAAc,CAAC,OAAO,CAAC;KACtC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"client-ip.js","sourceRoot":"","sources":["../src/client-ip.ts"],"names":[],"mappings":";;;AA+CA,kCAMC;AAnDD,+DAA+D;AAE/D,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;AAC/C,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAYpC;;;;;;;;;;;;;GAaG;AACU,QAAA,eAAe,GAC1B,IAAA,kCAAiB,GAA2C,CAAC;AAE/D,SAAS,cAAc,CAAC,OAAuB;IAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAChE,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AAC/E,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,WAAW,CAAC,OAAuB;IACjD,OAAO,IAAA,uBAAe,EAAC;QACrB,aAAa,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa;QACtD,YAAY,EAAE,cAAc,CAAC,OAAO,CAAC;QACrC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO;KACpC,CAAC,CAAC;AACL,CAAC"}
@@ -97,6 +97,14 @@ export interface ComponentFilterContext {
97
97
  * the values like any other input.
98
98
  */
99
99
  query?: Readonly<Record<string, string>>;
100
+ /**
101
+ * The route parameters of the page URL the layout is served for: on a page
102
+ * registered at `/projects/project/:id`, `/projects/project/p1` is
103
+ * `{ id: "p1" }`. Set alongside `query` while a page layout is served, so a
104
+ * header button's `availability` can depend on the record the page shows.
105
+ * Caller-supplied, like `query`.
106
+ */
107
+ params?: Readonly<Record<string, string>>;
100
108
  }
101
109
  /**
102
110
  * Adapts a component's serialized options to one request, after its
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,6 @@ import { type DataControllerCallback } from "@antelopejs/interface-data-api";
2
2
  import { TenantMember, TenantMemberModel } from "../db";
3
3
  import { DefaultDataTypes } from "../base/data-types/default-types";
4
4
  declare const memberSettingDataAPI_base: import("@antelopejs/interface-core/decorators").Class<import("@antelopejs/interface-data-api").ExtractDefCallbacks<{
5
- new: DataControllerCallback;
6
5
  edit: DataControllerCallback;
7
6
  delete: DataControllerCallback;
8
7
  get: DataControllerCallback;
@@ -11,8 +10,6 @@ declare const memberSettingDataAPI_base: import("@antelopejs/interface-core/deco
11
10
  count: DataControllerCallback;
12
11
  countBatch: import("@antelopejs/interface-data-api").DataControllerCallbackWithOptions<any>;
13
12
  summary: import("@antelopejs/interface-data-api").DataControllerCallbackWithOptions<any>;
14
- archive: DataControllerCallback;
15
- restore: DataControllerCallback;
16
13
  }> & {
17
14
  table: TenantMember;
18
15
  }> & import("@antelopejs/interface-core/decorators").Class<object> & {
@@ -21,7 +21,10 @@ const searchable_1 = require("../base/searchable");
21
21
  const table_view_1 = require("../base/table-view");
22
22
  const types_1 = require("../base/types");
23
23
  const request_tenant_1 = require("../request-tenant");
24
- const tenant_lifecycle_1 = require("../tenant-lifecycle");
24
+ const interface_database_decorators_1 = require("@antelopejs/interface-database-decorators");
25
+ const tenant_members_1 = require("../tenant-members");
26
+ const guards_1 = require("../base/table-view/internal/guards");
27
+ const member_changes_1 = require("../internal/member-changes");
25
28
  const roles_1 = require("./roles");
26
29
  const ROLE_KEY_MAPPING = { label: "name", value: "_id" };
27
30
  /** "Active now" lasts this long after the member's last request. */
@@ -31,20 +34,39 @@ const SYSTEM_MANAGED_FIELD = {
31
34
  view: types_1.ReadonlyBehaviorType.disabled,
32
35
  new: types_1.ReadonlyBehaviorType.hidden,
33
36
  };
34
- function admittedMemberRoute(route) {
37
+ async function describeEditRoute(model, [, params, body]) {
38
+ const member = await model.get(String(params.id));
39
+ if (!member)
40
+ return [];
41
+ return (0, member_changes_1.describeMemberEdit)(member, (0, guards_1.parseGuardBody)(body));
42
+ }
43
+ async function describeDeleteRoute(model, [, params]) {
44
+ const ids = [params.id].flat().map(String);
45
+ const members = await Promise.all(ids.map((id) => model.get(id)));
46
+ return members
47
+ .filter((member) => member !== undefined)
48
+ .map(member_changes_1.describeMemberRemoval);
49
+ }
50
+ function memberWriteRoute(route, describe) {
35
51
  return {
36
52
  ...route,
37
53
  async func(...args) {
38
- const [ctx] = args;
39
- return (0, tenant_lifecycle_1.runTenantLifecycleOperation)((0, request_tenant_1.getRequestTenantId)(ctx), () => route.func.apply(this, args));
54
+ const tenantId = (0, request_tenant_1.getRequestTenantId)(args[0]);
55
+ return (0, tenant_members_1.changeTenantMembers)(tenantId, async () => ({
56
+ changes: await describe((0, interface_database_decorators_1.GetModel)(db_1.TenantMemberModel, tenantId), args),
57
+ write: () => route.func.apply(this, args),
58
+ }));
40
59
  },
41
60
  };
42
61
  }
62
+ // No `new`, `archive` or `restore` route: members join through an invitation
63
+ // or `applyTenantOwnership`, and leave through `delete`, the writes that go
64
+ // through `changeTenantMembers`.
65
+ const { new: _unmountedNew, archive: _unmountedArchive, restore: _unmountedRestore, ...memberTableRoutes } = table_view_1.TableViewRoutes.All;
43
66
  class memberSettingDataAPI extends (0, interface_data_api_1.DataController)(db_1.TenantMember, {
44
- ...table_view_1.TableViewRoutes.All,
45
- new: admittedMemberRoute(table_view_1.TableViewRoutes.New),
46
- edit: admittedMemberRoute(table_view_1.TableViewRoutes.Edit),
47
- delete: admittedMemberRoute(table_view_1.TableViewRoutes.Delete),
67
+ ...memberTableRoutes,
68
+ edit: memberWriteRoute(table_view_1.TableViewRoutes.Edit, describeEditRoute),
69
+ delete: memberWriteRoute(table_view_1.TableViewRoutes.Delete, describeDeleteRoute),
48
70
  }, (0, interface_api_1.Controller)("/api/tables/members")) {
49
71
  }
50
72
  exports.memberSettingDataAPI = memberSettingDataAPI;
@@ -1 +1 @@
1
- {"version":3,"file":"members.js","sourceRoot":"","sources":["../../src/data-controllers/members.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"members.js","sourceRoot":"","sources":["../../src/data-controllers/members.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TenantLifecycleModel = void 0;
4
4
  const node_crypto_1 = require("node:crypto");
5
+ const interface_api_util_1 = require("@antelopejs/interface-api-util");
5
6
  const interface_database_decorators_1 = require("@antelopejs/interface-database-decorators");
6
7
  const tenantLifecycle_table_1 = require("./tenantLifecycle.table");
7
8
  const LIFECYCLE_ID = "membership-and-invites";
9
+ const HTTP_CONFLICT = 409;
8
10
  /**
9
11
  * Admissions never expire; deletion cannot overtake a suspended producer.
10
12
  *
@@ -54,8 +56,9 @@ class TenantLifecycleModel extends (0, interface_database_decorators_1.BasicData
54
56
  const state = await this.state(tenantId);
55
57
  if (state.closed)
56
58
  throw new Error("Tenant lifecycle admission is closed");
57
- if (state.barrierId)
58
- throw new Error("Tenant lifecycle admission is paused");
59
+ // A deliberate refusal with nothing written: a 409 the caller can show
60
+ // and retry once the barrier is released, not an indeterminate 500.
61
+ (0, interface_api_util_1.assert)(!state.barrierId, HTTP_CONFLICT, "Tenant lifecycle admission is paused");
59
62
  if (await this.transition(state, {
60
63
  activeAttemptIds: [...state.activeAttemptIds, attemptId],
61
64
  }))
@@ -1 +1 @@
1
- {"version":3,"file":"tenantLifecycle.model.js","sourceRoot":"","sources":["../../../src/db/internal/tenantLifecycle.model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tenantLifecycle.model.js","sourceRoot":"","sources":["../../../src/db/internal/tenantLifecycle.model.ts"],"names":[],"mappings":"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"}
package/dist/guards.js CHANGED
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AuthTenantMember = exports.AuthTenantOwner = exports.AuthUserWithPermission = exports.internal = void 0;
4
4
  exports.authenticateTenantRequest = authenticateTenantRequest;
5
5
  const interface_api_1 = require("@antelopejs/interface-api");
6
- const interface_auth_1 = require("@antelopejs/interface-auth");
6
+ const jwt_auth_decorator_1 = require("./auth/internal/jwt-auth-decorator");
7
7
  const interface_core_1 = require("@antelopejs/interface-core");
8
8
  const decorators_1 = require("@antelopejs/interface-core/decorators");
9
9
  const interface_database_decorators_1 = require("@antelopejs/interface-database-decorators");
@@ -33,8 +33,7 @@ var internal;
33
33
  * @returns Authentication decorator
34
34
  */
35
35
  const AuthUserWithPermission = (target, options) => {
36
- const decorator = (0, interface_auth_1.CreateAuthDecorator)({
37
- source: (req, _) => req.headers.authorization?.split(" ")[1],
36
+ const decorator = (0, jwt_auth_decorator_1.CreateJwtAuthDecorator)({
38
37
  authenticator: auth_1.internal.AuthUserAuthenticator,
39
38
  validator: (data) => internal.AuthUserWithPermissionValidator(target, data, options),
40
39
  });
@@ -1 +1 @@
1
- {"version":3,"file":"guards.js","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"guards.js","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"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"}