@antelopejs/interface-dms 0.13.3 → 0.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. package/CHANGELOG.md +231 -2
  2. package/README.md +9 -9
  3. package/dist/auth/db/models/sessions.model.d.ts +3 -3
  4. package/dist/auth/db/models/userExternalIdentities.model.d.ts +3 -3
  5. package/dist/auth/db/models/users.model.d.ts +3 -3
  6. package/dist/auth/db/tables/users.table.d.ts +3 -3
  7. package/dist/base/activity-feed.d.ts +2 -2
  8. package/dist/base/block-registry/types.d.ts +1 -1
  9. package/dist/base/chart-schemas.d.ts +70 -70
  10. package/dist/base/chart.d.ts +1 -1
  11. package/dist/base/data-types/default/choices.d.ts +1 -1
  12. package/dist/base/data-types/default/choices.js +3 -6
  13. package/dist/base/data-types/default/choices.js.map +1 -1
  14. package/dist/base/data-types/default/inputs.d.ts +1 -1
  15. package/dist/base/data-types/default/numbers.d.ts +2 -1
  16. package/dist/base/data-types/default/numbers.js +4 -3
  17. package/dist/base/data-types/default/numbers.js.map +1 -1
  18. package/dist/base/data-types/default/relations.d.ts +0 -6
  19. package/dist/base/data-types/default/relations.js +0 -1
  20. package/dist/base/data-types/default/relations.js.map +1 -1
  21. package/dist/base/data-types/default-types.d.ts +0 -1
  22. package/dist/base/data-types/default-types.js +0 -2
  23. package/dist/base/data-types/default-types.js.map +1 -1
  24. package/dist/base/data-types/index.js +0 -1
  25. package/dist/base/data-types/index.js.map +1 -1
  26. package/dist/base/data-types/internal/relation-endpoints.js +5 -3
  27. package/dist/base/data-types/internal/relation-endpoints.js.map +1 -1
  28. package/dist/base/data-types/internal/table-view-meta-slot.d.ts +17 -0
  29. package/dist/base/data-types/internal/table-view-meta-slot.js +25 -0
  30. package/dist/base/data-types/internal/table-view-meta-slot.js.map +1 -0
  31. package/dist/base/empty-state.d.ts +1 -1
  32. package/dist/base/export-jobs.d.ts +47 -19
  33. package/dist/base/export-jobs.js +39 -4
  34. package/dist/base/export-jobs.js.map +1 -1
  35. package/dist/base/form-schema.d.ts +0 -1
  36. package/dist/base/form-schema.js +12 -12
  37. package/dist/base/form-schema.js.map +1 -1
  38. package/dist/base/grid.js +1 -1
  39. package/dist/base/grid.js.map +1 -1
  40. package/dist/base/guard.d.ts +4 -4
  41. package/dist/base/guard.js +1 -1
  42. package/dist/base/guard.js.map +1 -1
  43. package/dist/base/helpers/file-refs.js +4 -6
  44. package/dist/base/helpers/file-refs.js.map +1 -1
  45. package/dist/base/internal/chart.d.ts +1 -1
  46. package/dist/base/internal/chart.js +1 -1
  47. package/dist/base/internal/chart.js.map +1 -1
  48. package/dist/base/internal/export-jobs.d.ts +11 -0
  49. package/dist/base/internal/export-jobs.js +11 -0
  50. package/dist/base/internal/export-jobs.js.map +1 -1
  51. package/dist/base/internal/form-block-schema.d.ts +1 -1
  52. package/dist/base/internal/form-block-schema.js +1 -1
  53. package/dist/base/internal/form-block-schema.js.map +1 -1
  54. package/dist/base/key-value-list.d.ts +6 -6
  55. package/dist/base/meter.d.ts +1 -1
  56. package/dist/base/placeholder.js +1 -1
  57. package/dist/base/placeholder.js.map +1 -1
  58. package/dist/base/searchable.d.ts +3 -3
  59. package/dist/base/searchable.js.map +1 -1
  60. package/dist/base/stack.js +1 -1
  61. package/dist/base/stack.js.map +1 -1
  62. package/dist/base/tab.js +1 -1
  63. package/dist/base/tab.js.map +1 -1
  64. package/dist/base/table-view/data-functions.d.ts +10 -11
  65. package/dist/base/table-view/data-functions.js.map +1 -1
  66. package/dist/base/table-view/factory.js +2 -0
  67. package/dist/base/table-view/factory.js.map +1 -1
  68. package/dist/base/table-view/internal/archive-filter.d.ts +21 -0
  69. package/dist/base/table-view/internal/archive-filter.js +48 -0
  70. package/dist/base/table-view/internal/archive-filter.js.map +1 -0
  71. package/dist/base/table-view/internal/auth.d.ts +2 -2
  72. package/dist/base/table-view/internal/auth.js +1 -3
  73. package/dist/base/table-view/internal/auth.js.map +1 -1
  74. package/dist/base/table-view/internal/column-conditions.js.map +1 -1
  75. package/dist/base/table-view/internal/data-functions.d.ts +2 -2
  76. package/dist/base/table-view/internal/factory-lifecycle-created.js +3 -2
  77. package/dist/base/table-view/internal/factory-lifecycle-created.js.map +1 -1
  78. package/dist/base/table-view/internal/footer.js +21 -13
  79. package/dist/base/table-view/internal/footer.js.map +1 -1
  80. package/dist/base/table-view/internal/guards.d.ts +1 -1
  81. package/dist/base/table-view/internal/guards.js +11 -8
  82. package/dist/base/table-view/internal/guards.js.map +1 -1
  83. package/dist/base/table-view/internal/meta-helpers.js +3 -2
  84. package/dist/base/table-view/internal/meta-helpers.js.map +1 -1
  85. package/dist/base/table-view/internal/nav-badges.js +1 -3
  86. package/dist/base/table-view/internal/nav-badges.js.map +1 -1
  87. package/dist/base/table-view/internal/option-views.d.ts +7 -4
  88. package/dist/base/table-view/internal/row-actions-schema.d.ts +6 -6
  89. package/dist/base/table-view/meta.d.ts +5 -5
  90. package/dist/base/table-view/meta.js +6 -2
  91. package/dist/base/table-view/meta.js.map +1 -1
  92. package/dist/base/table-view/routes.d.ts +39 -12
  93. package/dist/base/table-view/routes.js +0 -1
  94. package/dist/base/table-view/routes.js.map +1 -1
  95. package/dist/base/table-view/schema.d.ts +127 -127
  96. package/dist/base/top-list-card.d.ts +4 -4
  97. package/dist/component-options/data-type.d.ts +2 -1
  98. package/dist/component-options/data-type.js +1 -1
  99. package/dist/component-options/data-type.js.map +1 -1
  100. package/dist/component-slots.js +1 -1
  101. package/dist/component-slots.js.map +1 -1
  102. package/dist/connection-access.d.ts +46 -0
  103. package/dist/connection-access.js +73 -0
  104. package/dist/connection-access.js.map +1 -0
  105. package/dist/data-controllers/members.d.ts +15 -2
  106. package/dist/data-controllers/roles.d.ts +15 -2
  107. package/dist/db/internal/exportJobs.model.d.ts +3 -3
  108. package/dist/db/internal/inviteResolutions.model.d.ts +16 -3
  109. package/dist/db/internal/inviteResolutions.model.js +38 -0
  110. package/dist/db/internal/inviteResolutions.model.js.map +1 -1
  111. package/dist/db/internal/tenantLifecycle.model.d.ts +4 -4
  112. package/dist/db/internal/tenantLifecycle.model.js +2 -3
  113. package/dist/db/internal/tenantLifecycle.model.js.map +1 -1
  114. package/dist/db/models/roles.model.d.ts +3 -3
  115. package/dist/db/models/tenantMembers.model.d.ts +3 -3
  116. package/dist/db/models/tenants.model.d.ts +3 -3
  117. package/dist/db/models/user_invites.model.d.ts +18 -3
  118. package/dist/db/models/user_invites.model.js +28 -0
  119. package/dist/db/models/user_invites.model.js.map +1 -1
  120. package/dist/db/tables/user_invites.table.d.ts +6 -1
  121. package/dist/db/tables/user_invites.table.js +3 -0
  122. package/dist/db/tables/user_invites.table.js.map +1 -1
  123. package/dist/index.d.ts +1 -1
  124. package/dist/index.js +3 -2
  125. package/dist/index.js.map +1 -1
  126. package/dist/internal/component-slots.js +1 -1
  127. package/dist/internal/component-slots.js.map +1 -1
  128. package/dist/internal/invite-content.d.ts +8 -0
  129. package/dist/internal/invite-content.js +36 -0
  130. package/dist/internal/invite-content.js.map +1 -0
  131. package/dist/internal/invite-resolution.js +5 -2
  132. package/dist/internal/invite-resolution.js.map +1 -1
  133. package/dist/internal/tenant-ownership.d.ts +5 -4
  134. package/dist/internal/tenant-ownership.js +5 -4
  135. package/dist/internal/tenant-ownership.js.map +1 -1
  136. package/dist/invite-extensions/internal/delivery.d.ts +3 -2
  137. package/dist/invite-extensions/internal/delivery.js +3 -2
  138. package/dist/invite-extensions/internal/delivery.js.map +1 -1
  139. package/dist/invite-resolution.d.ts +5 -1
  140. package/dist/invite-resolution.js +10 -26
  141. package/dist/invite-resolution.js.map +1 -1
  142. package/dist/invites.d.ts +5 -0
  143. package/dist/invites.js +58 -1
  144. package/dist/invites.js.map +1 -1
  145. package/dist/notifications/internal.d.ts +0 -1
  146. package/dist/notifications/internal.js +0 -1
  147. package/dist/notifications/internal.js.map +1 -1
  148. package/dist/notifications/sendable.d.ts +1 -2
  149. package/dist/notifications/sendable.js +1 -12
  150. package/dist/notifications/sendable.js.map +1 -1
  151. package/dist/notifications/types.d.ts +1 -4
  152. package/dist/page/categories.d.ts +6 -0
  153. package/dist/page/categories.js +10 -3
  154. package/dist/page/categories.js.map +1 -1
  155. package/dist/page/controllers.d.ts +6 -9
  156. package/dist/page/controllers.js +5 -6
  157. package/dist/page/controllers.js.map +1 -1
  158. package/dist/page/internal/categories.js +43 -32
  159. package/dist/page/internal/categories.js.map +1 -1
  160. package/dist/page/internal/category-resolution.d.ts +31 -0
  161. package/dist/page/internal/category-resolution.js +63 -0
  162. package/dist/page/internal/category-resolution.js.map +1 -0
  163. package/dist/page/internal/metadata-extension-contributions.js +1 -2
  164. package/dist/page/internal/metadata-extension-contributions.js.map +1 -1
  165. package/dist/page/internal/metadata-info.js +19 -7
  166. package/dist/page/internal/metadata-info.js.map +1 -1
  167. package/dist/page/internal/metadata-layout.d.ts +3 -2
  168. package/dist/page/internal/metadata-layout.js.map +1 -1
  169. package/dist/page/internal/metadata-lifecycle.js +1 -4
  170. package/dist/page/internal/metadata-lifecycle.js.map +1 -1
  171. package/dist/page/internal/metadata-publish.js +7 -6
  172. package/dist/page/internal/metadata-publish.js.map +1 -1
  173. package/dist/page/internal/metadata-registration.js +8 -6
  174. package/dist/page/internal/metadata-registration.js.map +1 -1
  175. package/dist/page/internal/page-controller.d.ts +18 -0
  176. package/dist/page/internal/page-controller.js +36 -0
  177. package/dist/page/internal/page-controller.js.map +1 -0
  178. package/dist/page/metadata.d.ts +3 -3
  179. package/dist/page/metadata.js +4 -2
  180. package/dist/page/metadata.js.map +1 -1
  181. package/dist/page/types.d.ts +8 -2
  182. package/dist/page.d.ts +1 -1
  183. package/dist/page.js +2 -1
  184. package/dist/page.js.map +1 -1
  185. package/dist/permissions.d.ts +2 -1
  186. package/dist/permissions.js +5 -2
  187. package/dist/permissions.js.map +1 -1
  188. package/dist/tenant-provisioning.js +1 -1
  189. package/dist/tenant-provisioning.js.map +1 -1
  190. package/dist/types.d.ts +7 -3
  191. package/docs/1.core/11.modules-and-dynamic-menus.md +3 -3
  192. package/docs/1.core/2.pages-and-modules.md +2 -1
  193. package/docs/1.core/4.permissions.md +2 -2
  194. package/docs/1.core/5.tenancy.md +1 -1
  195. package/docs/1.core/6.invites.md +3 -1
  196. package/docs/2.auth/2.authentication.md +1 -1
  197. package/docs/2.auth/3.tokens-and-sessions.md +1 -1
  198. package/docs/3.base/1.introduction.md +1 -1
  199. package/docs/3.base/14.table-events-and-helpers.md +1 -1
  200. package/docs/3.base/15.table-sources-and-gates.md +14 -2
  201. package/docs/3.base/3.forms.md +1 -1
  202. package/docs/3.base/4.tables.md +1 -1
  203. package/docs/3.base/5.charts-and-widgets.md +3 -3
  204. package/docs/3.base/8.data-types.md +1 -1
  205. package/docs/3.base/9.helpers.md +16 -5
  206. package/docs/4.notifications/3.sending.md +0 -11
  207. package/docs/index.md +1 -1
  208. package/package.json +11 -11
@@ -16,33 +16,22 @@ class SendableNotification {
16
16
  * unless `dedupe: false` (see {@link DeliveryOptions}).
17
17
  */
18
18
  async toUser(userId, options = {}) {
19
- await this.requireIdempotencySupport(options);
20
19
  await internal_1.internal.SendToUser(userId, this.data, undefined, options.idempotencyKey, deliveryOf(options));
21
20
  }
22
21
  async toUsers(userIds, options = {}) {
23
- await this.requireIdempotencySupport(options);
24
22
  await internal_1.internal.SendToUsers(userIds, this.data, options.readScope, options.idempotencyKey, deliveryOf(options));
25
23
  }
26
- /** Explicit capability for durable outbox delivery; older DMS versions do not expose this method. */
24
+ /** Sends a durable event once per recipient under `idempotencyKey`, including after dismissal. */
27
25
  async toUsersIdempotently(userIds, idempotencyKey, options = {}) {
28
26
  await this.toUsers(userIds, { ...options, idempotencyKey });
29
27
  }
30
28
  /** Sends to the holders of any of `roleIds`, in `options.tenantId` only when set. */
31
29
  async toRoles(roleIds, options = {}) {
32
- await this.requireIdempotencySupport(options);
33
30
  await internal_1.internal.SendToRoles(roleIds, this.data, options);
34
31
  }
35
32
  async broadcast(options = {}) {
36
- await this.requireIdempotencySupport(options);
37
33
  await internal_1.internal.SendToAll(this.data, options.readScope, options.idempotencyKey, deliveryOf(options));
38
34
  }
39
- async requireIdempotencySupport(options) {
40
- if (options.idempotencyKey === undefined)
41
- return;
42
- if ((await internal_1.internal.SupportsIdempotency()) !== true) {
43
- throw new Error("DMS idempotent notification delivery is unavailable");
44
- }
45
- }
46
35
  }
47
36
  exports.SendableNotification = SendableNotification;
48
37
  //# sourceMappingURL=sendable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sendable.js","sourceRoot":"","sources":["../../src/notifications/sendable.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AAQtC,SAAS,UAAU,CAAC,OAAoB;IACtC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;AACpC,CAAC;AAED,MAAa,oBAAoB;IACd,IAAI,CAAmB;IAExC,YAAY,IAAsB;QAChC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,UAAuB,EAAE;QACpD,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,mBAAQ,CAAC,UAAU,CACvB,MAAM,EACN,IAAI,CAAC,IAAI,EACT,SAAS,EACT,OAAO,CAAC,cAAc,EACtB,UAAU,CAAC,OAAO,CAAC,CACpB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAiB,EAAE,UAAuB,EAAE;QACxD,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,mBAAQ,CAAC,WAAW,CACxB,OAAO,EACP,IAAI,CAAC,IAAI,EACT,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,cAAc,EACtB,UAAU,CAAC,OAAO,CAAC,CACpB,CAAC;IACJ,CAAC;IAED,qGAAqG;IACrG,KAAK,CAAC,mBAAmB,CACvB,OAAiB,EACjB,cAAsB,EACtB,UAAuB,EAAE;QAEzB,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,qFAAqF;IACrF,KAAK,CAAC,OAAO,CACX,OAAiB,EACjB,UAA2B,EAAE;QAE7B,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,mBAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,UAAuB,EAAE;QACvC,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,mBAAQ,CAAC,SAAS,CACtB,IAAI,CAAC,IAAI,EACT,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,cAAc,EACtB,UAAU,CAAC,OAAO,CAAC,CACpB,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,yBAAyB,CAAC,OAAoB;QAC1D,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS;YAAE,OAAO;QACjD,IAAI,CAAC,MAAM,mBAAQ,CAAC,mBAAmB,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;CACF;AApED,oDAoEC"}
1
+ {"version":3,"file":"sendable.js","sourceRoot":"","sources":["../../src/notifications/sendable.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AAQtC,SAAS,UAAU,CAAC,OAAoB;IACtC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;AACpC,CAAC;AAED,MAAa,oBAAoB;IACd,IAAI,CAAmB;IAExC,YAAY,IAAsB;QAChC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,UAAuB,EAAE;QACpD,MAAM,mBAAQ,CAAC,UAAU,CACvB,MAAM,EACN,IAAI,CAAC,IAAI,EACT,SAAS,EACT,OAAO,CAAC,cAAc,EACtB,UAAU,CAAC,OAAO,CAAC,CACpB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAiB,EAAE,UAAuB,EAAE;QACxD,MAAM,mBAAQ,CAAC,WAAW,CACxB,OAAO,EACP,IAAI,CAAC,IAAI,EACT,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,cAAc,EACtB,UAAU,CAAC,OAAO,CAAC,CACpB,CAAC;IACJ,CAAC;IAED,kGAAkG;IAClG,KAAK,CAAC,mBAAmB,CACvB,OAAiB,EACjB,cAAsB,EACtB,UAAuB,EAAE;QAEzB,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,qFAAqF;IACrF,KAAK,CAAC,OAAO,CACX,OAAiB,EACjB,UAA2B,EAAE;QAE7B,MAAM,mBAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,UAAuB,EAAE;QACvC,MAAM,mBAAQ,CAAC,SAAS,CACtB,IAAI,CAAC,IAAI,EACT,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,cAAc,EACtB,UAAU,CAAC,OAAO,CAAC,CACpB,CAAC;IACJ,CAAC;CACF;AAzDD,oDAyDC"}
@@ -1,10 +1,7 @@
1
1
  import type { Tone } from "../base/types/tone";
2
2
  export type TogglePermission = "allowed" | "forbidden" | "default";
3
3
  export type ReadScope = "individual" | "shared";
4
- /**
5
- * Colour of the icon well a notification is listed with. The former `accent`
6
- * is still read as `primary` in 0.4, with a warning.
7
- */
4
+ /** Colour of the icon well a notification is listed with. */
8
5
  export type NotificationTone = Extract<Tone, "neutral" | "primary" | "success" | "warning" | "error">;
9
6
  export interface NotificationCategoryInfo {
10
7
  id: string;
@@ -40,6 +40,12 @@ interface ModuleEntry {
40
40
  module?: string;
41
41
  category?: CategoryInfo | ControllerClass;
42
42
  isModuleRoot?: boolean;
43
+ ownerOnly?: boolean;
43
44
  }
45
+ /**
46
+ * Whether only platform owners reach the entry: it sits inside a module, or it
47
+ * declares or inherits `ownerOnly`.
48
+ */
49
+ export declare function isOwnerOnly(entry: ModuleEntry): boolean;
44
50
  export declare function isInsideModule(entry: ModuleEntry): boolean;
45
51
  export {};
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.internal = void 0;
4
+ exports.isOwnerOnly = isOwnerOnly;
4
5
  exports.isInsideModule = isInsideModule;
5
6
  const interface_core_1 = require("@antelopejs/interface-core");
6
7
  const registry_1 = require("./internal/registry");
7
- // oxlint-disable-next-line import/no-cycle -- Category creation registers through these proxies; resolveCategoryInfo is called only after module evaluation.
8
- const categories_1 = require("./internal/categories");
8
+ const category_resolution_1 = require("./internal/category-resolution");
9
9
  /**
10
10
  * A registration proxy that accepts a per-context view of its entries.
11
11
  *
@@ -56,6 +56,13 @@ var internal;
56
56
  internal.RegisterDynamicMenuProvider = new IdentifiedRegisteringProxy(registry_1.dynamicMenuProviderIdentity);
57
57
  internal.RegisterPageExtension = new PageExtensionRegisteringProxy();
58
58
  })(internal || (exports.internal = internal = {}));
59
+ /**
60
+ * Whether only platform owners reach the entry: it sits inside a module, or it
61
+ * declares or inherits `ownerOnly`.
62
+ */
63
+ function isOwnerOnly(entry) {
64
+ return entry.ownerOnly === true || isInsideModule(entry);
65
+ }
59
66
  function isInsideModule(entry) {
60
67
  if (entry.isModuleRoot)
61
68
  return true;
@@ -63,7 +70,7 @@ function isInsideModule(entry) {
63
70
  return true;
64
71
  let current = entry.category;
65
72
  while (current) {
66
- const resolved = (0, categories_1.resolveCategoryInfo)(current);
73
+ const resolved = (0, category_resolution_1.resolveCategoryInfo)(current);
67
74
  if (!resolved)
68
75
  return false;
69
76
  if (resolved.isModuleRoot)
@@ -1 +1 @@
1
- {"version":3,"file":"categories.js","sourceRoot":"","sources":["../../src/page/categories.ts"],"names":[],"mappings":";;;AA4FA,wCAWC;AAtGD,+DAA8D;AAC9D,kDAQ6B;AAQ7B,6JAA6J;AAC7J,sDAA4D;AAE5D;;;;;;;;;GASG;AACH,MAAM,0BAA6C,SAAQ,iCAE1D;IAC8B;IAA7B,YAA6B,QAAiC;QAC5D,KAAK,EAAE,CAAC;QADmB,aAAQ,GAAR,QAAQ,CAAyB;IAE9D,CAAC;IAEQ,QAAQ,CAAC,KAAQ;QACxB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9B,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAEQ,UAAU,CAAC,KAAQ;QAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACjC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,6BAA8B,SAAQ,0BAA6C;IACvF;QACE,KAAK,CAAC,gCAAqB,CAAC,CAAC;IAC/B,CAAC;IAEQ,QAAQ,CAAC,KAAwB;QACxC,IAAA,sCAA2B,EAAC,KAAK,CAAC,CAAC;QACnC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;AAED;;GAEG;AACH,IAAiB,QAAQ,CAgBxB;AAhBD,WAAiB,QAAQ;IACV,yBAAgB,GAAG,IAAI,0BAA0B,CAC5D,2BAAgB,CACjB,CAAC;IACW,qBAAY,GAAG,IAAI,0BAA0B,CACxD,uBAAY,CACb,CAAC;IACW,uBAAc,GAAG,IAAI,0BAA0B,CAC1D,yBAAc,CACf,CAAC;IACW,oCAA2B,GACtC,IAAI,0BAA0B,CAC5B,sCAA2B,CAC5B,CAAC;IAES,8BAAqB,GAAG,IAAI,6BAA6B,EAAE,CAAC;AAC3E,CAAC,EAhBgB,QAAQ,wBAAR,QAAQ,QAgBxB;AAQD,SAAgB,cAAc,CAAC,KAAkB;IAC/C,IAAI,KAAK,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAC9B,IAAI,OAAO,GAA+C,KAAK,CAAC,QAAQ,CAAC;IACzE,OAAO,OAAO,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,IAAA,gCAAmB,EAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5B,IAAI,QAAQ,CAAC,YAAY;YAAE,OAAO,IAAI,CAAC;QACvC,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC;IAC9B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"categories.js","sourceRoot":"","sources":["../../src/page/categories.ts"],"names":[],"mappings":";;;AAgGA,kCAEC;AAED,wCAWC;AA9GD,+DAA8D;AAC9D,kDAQ6B;AAQ7B,wEAAqE;AAErE;;;;;;;;;GASG;AACH,MAAM,0BAA6C,SAAQ,iCAE1D;IAC8B;IAA7B,YAA6B,QAAiC;QAC5D,KAAK,EAAE,CAAC;QADmB,aAAQ,GAAR,QAAQ,CAAyB;IAE9D,CAAC;IAEQ,QAAQ,CAAC,KAAQ;QACxB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9B,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAEQ,UAAU,CAAC,KAAQ;QAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACjC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,6BAA8B,SAAQ,0BAA6C;IACvF;QACE,KAAK,CAAC,gCAAqB,CAAC,CAAC;IAC/B,CAAC;IAEQ,QAAQ,CAAC,KAAwB;QACxC,IAAA,sCAA2B,EAAC,KAAK,CAAC,CAAC;QACnC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;AAED;;GAEG;AACH,IAAiB,QAAQ,CAgBxB;AAhBD,WAAiB,QAAQ;IACV,yBAAgB,GAAG,IAAI,0BAA0B,CAC5D,2BAAgB,CACjB,CAAC;IACW,qBAAY,GAAG,IAAI,0BAA0B,CACxD,uBAAY,CACb,CAAC;IACW,uBAAc,GAAG,IAAI,0BAA0B,CAC1D,yBAAc,CACf,CAAC;IACW,oCAA2B,GACtC,IAAI,0BAA0B,CAC5B,sCAA2B,CAC5B,CAAC;IAES,8BAAqB,GAAG,IAAI,6BAA6B,EAAE,CAAC;AAC3E,CAAC,EAhBgB,QAAQ,wBAAR,QAAQ,QAgBxB;AASD;;;GAGG;AACH,SAAgB,WAAW,CAAC,KAAkB;IAC5C,OAAO,KAAK,CAAC,SAAS,KAAK,IAAI,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;AAC3D,CAAC;AAED,SAAgB,cAAc,CAAC,KAAkB;IAC/C,IAAI,KAAK,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAC9B,IAAI,OAAO,GAA+C,KAAK,CAAC,QAAQ,CAAC;IACzE,OAAO,OAAO,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,IAAA,yCAAmB,EAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5B,IAAI,QAAQ,CAAC,YAAY;YAAE,OAAO,IAAI,CAAC;QACvC,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC;IAC9B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -265,24 +265,21 @@ export interface FrontendModuleMetadata {
265
265
  * Absolute backend API paths (`/api/...`) the frontend server may open a
266
266
  * session from on behalf of this module, as declared by
267
267
  * {@link AddFrontendModuleOptions.authEstablishEndpoints}. Empty when the
268
- * module declared none, absent when the DMS serving this metadata predates
269
- * the field.
268
+ * module declared none.
270
269
  */
271
- authEstablishEndpoints?: string[];
270
+ authEstablishEndpoints: string[];
272
271
  /**
273
272
  * The routes this module serves to anyone, as declared by
274
273
  * {@link AddFrontendModuleOptions.publicEndpoints}. Empty when the module
275
- * declared none, absent when the DMS serving this metadata predates the
276
- * field.
274
+ * declared none.
277
275
  */
278
- publicEndpoints?: FrontendPublicEndpoint[];
276
+ publicEndpoints: FrontendPublicEndpoint[];
279
277
  /**
280
278
  * The backend prefixes this module declares, as
281
279
  * {@link AddFrontendModuleOptions.backendProxies}, each with its `auth`.
282
- * Empty when the module declared none, absent when the DMS serving this
283
- * metadata predates the field.
280
+ * Empty when the module declared none.
284
281
  */
285
- backendProxies?: Required<FrontendBackendProxy>[];
282
+ backendProxies: Required<FrontendBackendProxy>[];
286
283
  }
287
284
  /** Returns registered frontend source metadata for server-side module discovery, excluding private options. */
288
285
  export declare const GetFrontendModules: () => Promise<FrontendModuleMetadata[]>;
@@ -22,14 +22,15 @@ const controller_class_1 = require("../utils/internal/controller-class");
22
22
  * Static component fields of a class, in declaration order. Underscore-prefixed
23
23
  * fields are skipped, so a class can keep private static state.
24
24
  */
25
- // oxlint-disable-next-line anti-slop/no-object-parameters -- Decorated classes expose static component fields known only at runtime.
26
25
  function collectStaticComponents(cl) {
27
26
  const fields = [];
28
27
  for (const key of Object.getOwnPropertyNames(cl)) {
29
28
  if (key.startsWith("_"))
30
29
  continue;
31
- // oxlint-disable-next-line anti-slop/no-reflect-get -- The static field name comes from Object.getOwnPropertyNames; its value is narrowed with instanceof Component.
32
- const value = Reflect.get(cl, key);
30
+ const descriptor = Object.getOwnPropertyDescriptor(cl, key);
31
+ const value = descriptor?.get
32
+ ? descriptor.get.call(cl)
33
+ : descriptor?.value;
33
34
  if (value instanceof component_1.Component) {
34
35
  fields.push({ key, component: value });
35
36
  }
@@ -46,9 +47,7 @@ exports.RegisterPage = (0, decorators_1.MakeClassDecorator)((cl) => {
46
47
  }
47
48
  (0, fire_and_forget_1.fireAndForget)(meta.Register(), "page registration");
48
49
  });
49
- function buildExtensionComponents(
50
- // oxlint-disable-next-line anti-slop/no-object-parameters -- Extension components are collected from the decorated class static fields at runtime.
51
- extensionClass) {
50
+ function buildExtensionComponents(extensionClass) {
52
51
  return collectStaticComponents(extensionClass).map(({ key, component }) => {
53
52
  const placement = component.placement ?? component_1.DEFAULT_PLACEMENT;
54
53
  const entry = {
@@ -1 +1 @@
1
- {"version":3,"file":"controllers.js","sourceRoot":"","sources":["../../src/page/controllers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controllers.js","sourceRoot":"","sources":["../../src/page/controllers.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,37 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  Object.defineProperty(exports, "__esModule", { value: true });
3
36
  exports.resolveCategoryInfo = resolveCategoryInfo;
4
37
  exports.resolveInheritedLayout = resolveInheritedLayout;
@@ -11,21 +44,16 @@ exports.applyPageExtension = applyPageExtension;
11
44
  exports.revokePageExtension = revokePageExtension;
12
45
  exports.clearPageMetadata = clearPageMetadata;
13
46
  exports.RootCategory = RootCategory;
14
- const interface_core_1 = require("@antelopejs/interface-core");
15
47
  const component_1 = require("../../component");
16
48
  const permissions_1 = require("../../permissions");
17
- // oxlint-disable-next-line import/no-cycle -- Category resolution reads PageMetadata inside functions; page registration uses the proxies declared in categories.
18
- const metadata_1 = require("../metadata");
49
+ const resolution = __importStar(require("./category-resolution"));
19
50
  const logging_1 = require("@antelopejs/interface-core/logging");
20
51
  const fire_and_forget_1 = require("../../utils/fire-and-forget");
21
52
  const registry_1 = require("./registry");
22
53
  const category_permission_1 = require("./category-permission");
23
54
  const member_access_1 = require("./member-access");
24
55
  const types_1 = require("./types");
25
- // oxlint-disable-next-line import/no-cycle -- Category proxies and isInsideModule are read inside functions, after module evaluation.
26
56
  const categories_1 = require("../categories");
27
- /** Whether a category names its controller class rather than its CategoryInfo. */
28
- const isControllerClass = (category) => typeof category === "function";
29
57
  /**
30
58
  * Resolve a category to CategoryInfo
31
59
  * @param category A CategoryInfo object or a ControllerClass
@@ -34,17 +62,7 @@ const isControllerClass = (category) => typeof category === "function";
34
62
  * @internal
35
63
  */
36
64
  function resolveCategoryInfo(category) {
37
- if (!category) {
38
- return undefined;
39
- }
40
- if (isControllerClass(category)) {
41
- const meta = (0, interface_core_1.GetMetadata)(category, metadata_1.PageMetadata);
42
- if (!meta.pageInfo) {
43
- throw new Error(`PageMetadata not initialized for controller class.`);
44
- }
45
- return meta.pageInfo;
46
- }
47
- return category;
65
+ return resolution.resolveCategoryInfo(category);
48
66
  }
49
67
  /**
50
68
  * The default layout a page or category declared under `category` inherits:
@@ -56,18 +74,7 @@ function resolveCategoryInfo(category) {
56
74
  * @internal
57
75
  */
58
76
  function resolveInheritedLayout(category) {
59
- let current = findCategoryInfo(category);
60
- while (current) {
61
- if (current.layout)
62
- return current.layout;
63
- current = findCategoryInfo(current.category);
64
- }
65
- return undefined;
66
- }
67
- function findCategoryInfo(category) {
68
- if (!isControllerClass(category))
69
- return category;
70
- return (0, interface_core_1.GetMetadata)(category, metadata_1.PageMetadata).pageInfo;
77
+ return resolution.resolveInheritedLayout(category);
71
78
  }
72
79
  /**
73
80
  * Calculate the full slug for a page or category
@@ -158,6 +165,7 @@ function createCategoryFunction(id, options) {
158
165
  hidden: effectiveOptions.hidden || resolvedCategory?.hidden,
159
166
  bypassTenantAccessGate: effectiveOptions.bypassTenantAccessGate ||
160
167
  resolvedCategory?.bypassTenantAccessGate,
168
+ ownerOnly: effectiveOptions.ownerOnly || resolvedCategory?.ownerOnly,
161
169
  };
162
170
  categories_1.internal.RegisterCategory.register(categoryInfo);
163
171
  const categoryPermission = {
@@ -167,10 +175,13 @@ function createCategoryFunction(id, options) {
167
175
  defaultGranted: categoryInfo.publicAccess || (0, member_access_1.opensToMembers)(categoryInfo.memberAccess),
168
176
  ...ownPermission(categoryInfo.permission),
169
177
  };
170
- if ((0, categories_1.isInsideModule)(categoryInfo)) {
171
- (0, permissions_1.MarkModuleScopedPermission)((0, category_permission_1.categoryOwnPermissionId)(categoryInfo));
178
+ const ownPermissionId = (0, category_permission_1.categoryOwnPermissionId)(categoryInfo);
179
+ if ((0, categories_1.isOwnerOnly)(categoryInfo)) {
180
+ (0, permissions_1.MarkModuleScopedPermission)(ownPermissionId);
181
+ return categoryInfo;
172
182
  }
173
- else if (!(categoryInfo.permission instanceof component_1.Action)) {
183
+ (0, permissions_1.UnmarkModuleScopedPermission)(ownPermissionId);
184
+ if (!(categoryInfo.permission instanceof component_1.Action)) {
174
185
  (0, permissions_1.RegisterPermission)(categoryPermission.id, categoryPermission);
175
186
  }
176
187
  return categoryInfo;
@@ -1 +1 @@
1
- {"version":3,"file":"categories.js","sourceRoot":"","sources":["../../../src/page/internal/categories.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"categories.js","sourceRoot":"","sources":["../../../src/page/internal/categories.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /** @internal @packageDocumentation */
2
+ import type { ControllerClass } from "@antelopejs/interface-api";
3
+ import type { ComponentInfo } from "../../component";
4
+ import type { PageMetadata } from "../metadata";
5
+ import type { CategoryInfo } from "../types";
6
+ /**
7
+ * Hand category resolution the class it reads a controller's page metadata
8
+ * through. `PageMetadata` installs itself as it evaluates: `page/metadata`
9
+ * reaches this module through its own imports, so this module cannot import it.
10
+ *
11
+ * @internal
12
+ */
13
+ export declare function installPageMetadata(metadata: typeof PageMetadata): void;
14
+ /**
15
+ * Resolve a category to CategoryInfo
16
+ * @param category A CategoryInfo object or a ControllerClass
17
+ * @returns The resolved CategoryInfo
18
+ *
19
+ * @internal
20
+ */
21
+ export declare function resolveCategoryInfo(category: CategoryInfo | ControllerClass | undefined): CategoryInfo | undefined;
22
+ /**
23
+ * The default layout a page or category declared under `category` inherits:
24
+ * the `layout` of the nearest ancestor that declares one.
25
+ *
26
+ * @param category The parent the entry is declared under
27
+ * @returns That layout, or undefined when no ancestor declares one
28
+ *
29
+ * @internal
30
+ */
31
+ export declare function resolveInheritedLayout(category: CategoryInfo | ControllerClass | undefined): ComponentInfo | undefined;
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.installPageMetadata = installPageMetadata;
4
+ exports.resolveCategoryInfo = resolveCategoryInfo;
5
+ exports.resolveInheritedLayout = resolveInheritedLayout;
6
+ const interface_core_1 = require("@antelopejs/interface-core");
7
+ let pageMetadata;
8
+ /**
9
+ * Hand category resolution the class it reads a controller's page metadata
10
+ * through. `PageMetadata` installs itself as it evaluates: `page/metadata`
11
+ * reaches this module through its own imports, so this module cannot import it.
12
+ *
13
+ * @internal
14
+ */
15
+ function installPageMetadata(metadata) {
16
+ pageMetadata = metadata;
17
+ }
18
+ /** Whether a category names its controller class rather than its CategoryInfo. */
19
+ const isControllerClass = (category) => typeof category === "function";
20
+ /**
21
+ * Resolve a category to CategoryInfo
22
+ * @param category A CategoryInfo object or a ControllerClass
23
+ * @returns The resolved CategoryInfo
24
+ *
25
+ * @internal
26
+ */
27
+ function resolveCategoryInfo(category) {
28
+ if (!category) {
29
+ return undefined;
30
+ }
31
+ if (isControllerClass(category)) {
32
+ const meta = (0, interface_core_1.GetMetadata)(category, pageMetadata);
33
+ if (!meta.pageInfo) {
34
+ throw new Error(`PageMetadata not initialized for controller class.`);
35
+ }
36
+ return meta.pageInfo;
37
+ }
38
+ return category;
39
+ }
40
+ /**
41
+ * The default layout a page or category declared under `category` inherits:
42
+ * the `layout` of the nearest ancestor that declares one.
43
+ *
44
+ * @param category The parent the entry is declared under
45
+ * @returns That layout, or undefined when no ancestor declares one
46
+ *
47
+ * @internal
48
+ */
49
+ function resolveInheritedLayout(category) {
50
+ let current = findCategoryInfo(category);
51
+ while (current) {
52
+ if (current.layout)
53
+ return current.layout;
54
+ current = findCategoryInfo(current.category);
55
+ }
56
+ return undefined;
57
+ }
58
+ function findCategoryInfo(category) {
59
+ if (!isControllerClass(category))
60
+ return category;
61
+ return (0, interface_core_1.GetMetadata)(category, pageMetadata).pageInfo;
62
+ }
63
+ //# sourceMappingURL=category-resolution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"category-resolution.js","sourceRoot":"","sources":["../../../src/page/internal/category-resolution.ts"],"names":[],"mappings":";;AAgBA,kDAEC;AAcD,kDAgBC;AAWD,wDASC;AAlED,+DAAyD;AAKzD,IAAI,YAAiC,CAAC;AAEtC;;;;;;GAMG;AACH,SAAgB,mBAAmB,CAAC,QAA6B;IAC/D,YAAY,GAAG,QAAQ,CAAC;AAC1B,CAAC;AAED,kFAAkF;AAClF,MAAM,iBAAiB,GAAG,CACxB,QAAoD,EACvB,EAAE,CAAC,OAAO,QAAQ,KAAK,UAAU,CAAC;AAEjE;;;;;;GAMG;AACH,SAAgB,mBAAmB,CACjC,QAAoD;IAEpD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,IAAA,4BAAW,EAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,sBAAsB,CACpC,QAAoD;IAEpD,IAAI,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACzC,OAAO,OAAO,EAAE,CAAC;QACf,IAAI,OAAO,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC;QAC1C,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,gBAAgB,CACvB,QAAoD;IAEpD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAClD,OAAO,IAAA,4BAAW,EAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC;AACtD,CAAC"}
@@ -14,8 +14,7 @@ const registry_1 = require("./registry");
14
14
  function removeStaleExtensions(page, infos) {
15
15
  const owner = (0, metadata_owner_1.metadataOwner)(page);
16
16
  const desired = new Set(infos);
17
- // oxlint-disable-next-line unicorn/no-useless-spread -- Snapshot the keys before drop deletes entries from the same map.
18
- for (const info of [...owner.extensionEntries.keys()]) {
17
+ for (const info of owner.extensionEntries.keys()) {
19
18
  if (!desired.has(info))
20
19
  owner.drop(info);
21
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"metadata-extension-contributions.js","sourceRoot":"","sources":["../../../src/page/internal/metadata-extension-contributions.ts"],"names":[],"mappings":";;AAWA,sDAUC;AAGD,0DAgBC;AAGD,8DAUC;AAGD,wDAeC;AAvED,gBAAgB;AAChB,gEAA6D;AAC7D,kEAAuE;AAIvE,iEAAgE;AAChE,qDAAiD;AACjD,yCAAqD;AAErD,gBAAgB;AAChB,SAAgB,qBAAqB,CACnC,IAAkB,EAClB,KAA0B;IAE1B,MAAM,KAAK,GAAG,IAAA,8BAAa,EAAC,IAAI,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IAC/B,yHAAyH;IACzH,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QACtD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,gBAAgB;AAChB,SAAgB,uBAAuB,CACrC,IAAkB,EAClB,IAAuB;IAEvB,MAAM,KAAK,GAAG,IAAA,8BAAa,EAAC,IAAI,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,IAAA,6CAAsB,EAAC,IAAI,EAAE;QAC1C,GAAG,EAAE,KAAK,CAAC,aAAa;QACxB,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE;KACzB,CAAC,CAAC;IACH,MAAM,OAAO,GAAyB,EAAE,CAAC;IACzC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,KAAK,MAAM,KAAK,IAAI,MAAM;YAAE,iBAAO,CAAC,KAAK,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;QAC5D,OAAO;IACT,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,gBAAgB;AAChB,SAAgB,yBAAyB,CACvC,IAAkB,EAClB,IAAuB,EACvB,YAAoC;IAEpC,MAAM,KAAK,GAAG,IAAA,8BAAa,EAAC,IAAI,CAAC,CAAC;IAClC,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC/C,OAAO,IAAA,kCAAuB,EAAC,IAAI,EAAE,GAAG,EAAE,CACxC,KAAK,CAAC,gBAAgB,CAAC,YAAY,EAAE,aAAa,CAAC,CACpD,CAAC;AACJ,CAAC;AAED,gBAAgB;AAChB,SAAgB,sBAAsB,CACpC,IAAkB,EAClB,OAA6B,EAC7B,IAAuB,EACvB,YAAoC;AACpC,wMAAwM;AACxM,KAAc;IAEd,MAAM,KAAK,GAAG,IAAA,8BAAa,EAAC,IAAI,CAAC,CAAC;IAClC,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,KAAK,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IACxC,IAAI,KAAK,YAAY,mDAA4B;QAAE,MAAM,KAAK,CAAC;IAC/D,iBAAO,CAAC,KAAK,CACX,yBAAyB,IAAI,CAAC,aAAa,mCAAmC,YAAY,CAAC,GAAG,cAAc,IAAI,CAAC,YAAY,MAAM,MAAM,CAAC,KAAK,CAAC,EAAE,CACnJ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"metadata-extension-contributions.js","sourceRoot":"","sources":["../../../src/page/internal/metadata-extension-contributions.ts"],"names":[],"mappings":";;AAWA,sDASC;AAGD,0DAgBC;AAGD,8DAUC;AAGD,wDAeC;AAtED,gBAAgB;AAChB,gEAA6D;AAC7D,kEAAuE;AAIvE,iEAAgE;AAChE,qDAAiD;AACjD,yCAAqD;AAErD,gBAAgB;AAChB,SAAgB,qBAAqB,CACnC,IAAkB,EAClB,KAA0B;IAE1B,MAAM,KAAK,GAAG,IAAA,8BAAa,EAAC,IAAI,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC;QACjD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,gBAAgB;AAChB,SAAgB,uBAAuB,CACrC,IAAkB,EAClB,IAAuB;IAEvB,MAAM,KAAK,GAAG,IAAA,8BAAa,EAAC,IAAI,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,IAAA,6CAAsB,EAAC,IAAI,EAAE;QAC1C,GAAG,EAAE,KAAK,CAAC,aAAa;QACxB,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE;KACzB,CAAC,CAAC;IACH,MAAM,OAAO,GAAyB,EAAE,CAAC;IACzC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,KAAK,MAAM,KAAK,IAAI,MAAM;YAAE,iBAAO,CAAC,KAAK,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;QAC5D,OAAO;IACT,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,gBAAgB;AAChB,SAAgB,yBAAyB,CACvC,IAAkB,EAClB,IAAuB,EACvB,YAAoC;IAEpC,MAAM,KAAK,GAAG,IAAA,8BAAa,EAAC,IAAI,CAAC,CAAC;IAClC,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC/C,OAAO,IAAA,kCAAuB,EAAC,IAAI,EAAE,GAAG,EAAE,CACxC,KAAK,CAAC,gBAAgB,CAAC,YAAY,EAAE,aAAa,CAAC,CACpD,CAAC;AACJ,CAAC;AAED,gBAAgB;AAChB,SAAgB,sBAAsB,CACpC,IAAkB,EAClB,OAA6B,EAC7B,IAAuB,EACvB,YAAoC;AACpC,wMAAwM;AACxM,KAAc;IAEd,MAAM,KAAK,GAAG,IAAA,8BAAa,EAAC,IAAI,CAAC,CAAC;IAClC,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,KAAK,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;IACxC,IAAI,KAAK,YAAY,mDAA4B;QAAE,MAAM,KAAK,CAAC;IAC/D,iBAAO,CAAC,KAAK,CACX,yBAAyB,IAAI,CAAC,aAAa,mCAAmC,YAAY,CAAC,GAAG,cAAc,IAAI,CAAC,YAAY,MAAM,MAAM,CAAC,KAAK,CAAC,EAAE,CACnJ,CAAC;AACJ,CAAC"}
@@ -4,7 +4,6 @@ exports.setPageInfo = setPageInfo;
4
4
  /** @internal @packageDocumentation */
5
5
  const page_layout_1 = require("../../component-options/page-layout");
6
6
  const page_routes_1 = require("../page-routes");
7
- // oxlint-disable-next-line import/no-cycle -- Category resolution reads PageMetadata inside functions, after metadata initialization.
8
7
  const categories_1 = require("./categories");
9
8
  const member_access_1 = require("./member-access");
10
9
  /** @internal */
@@ -22,12 +21,7 @@ function setPageInfo(page, id, fullSlug, menuOptions, pageLayout) {
22
21
  fullSlug,
23
22
  layoutUrl: location,
24
23
  parentSlug: parent ? (0, categories_1.resolveCategoryInfo)(parent)?.fullSlug : undefined,
25
- hidden: menu.hidden || resolvedCategory?.hidden,
26
- publicAccess: menu.publicAccess || resolvedCategory?.publicAccess,
27
- authOnly: menu.authOnly || resolvedCategory?.authOnly,
28
- memberAccess: menu.memberAccess ||
29
- (0, member_access_1.inheritedMemberAccess)(resolvedCategory?.memberAccess),
30
- bypassTenantAccessGate: menu.bypassTenantAccessGate || resolvedCategory?.bypassTenantAccessGate,
24
+ ...inheritedAccess(menu, resolvedCategory),
31
25
  };
32
26
  page.layout =
33
27
  pageLayout ??
@@ -36,4 +30,22 @@ function setPageInfo(page, id, fullSlug, menuOptions, pageLayout) {
36
30
  (0, page_layout_1.DefaultLayout)();
37
31
  page.pageInfo = pageInfo;
38
32
  }
33
+ function inheritedAccess(menu, category) {
34
+ const access = {
35
+ hidden: menu.hidden || category?.hidden,
36
+ publicAccess: menu.publicAccess || category?.publicAccess,
37
+ authOnly: menu.authOnly || category?.authOnly,
38
+ memberAccess: menu.memberAccess || (0, member_access_1.inheritedMemberAccess)(category?.memberAccess),
39
+ bypassTenantAccessGate: menu.bypassTenantAccessGate || category?.bypassTenantAccessGate,
40
+ ownerOnly: menu.ownerOnly || category?.ownerOnly,
41
+ };
42
+ if (!access.ownerOnly)
43
+ return access;
44
+ return {
45
+ ...access,
46
+ publicAccess: undefined,
47
+ authOnly: undefined,
48
+ memberAccess: undefined,
49
+ };
50
+ }
39
51
  //# sourceMappingURL=metadata-info.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metadata-info.js","sourceRoot":"","sources":["../../../src/page/internal/metadata-info.ts"],"names":[],"mappings":";;AAWA,kCAsCC;AAjDD,sCAAsC;AACtC,qEAAoE;AAGpE,gDAA+C;AAE/C,sIAAsI;AACtI,6CAA2E;AAC3E,mDAAwD;AAExD,gBAAgB;AAChB,SAAgB,WAAW,CACzB,IAAkB,EAClB,EAAU,EACV,QAAgB,EAChB,WAAwB,EACxB,UAA0B;IAE1B,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,WAAW,CAAC;IACxC,MAAM,gBAAgB,GAAG,IAAA,gCAAmB,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,gBAAgB,EAAE,MAAM,IAAI,EAAE,CAAC;IACpD,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAE3D,MAAM,QAAQ,GAAG,IAAA,2BAAa,EAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAExD,MAAM,QAAQ,GAAa;QACzB,GAAG,IAAI;QACP,QAAQ,EAAE,gBAAgB;QAC1B,EAAE;QACF,MAAM;QACN,QAAQ;QACR,SAAS,EAAE,QAAQ;QACnB,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,IAAA,gCAAmB,EAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS;QACtE,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,gBAAgB,EAAE,MAAM;QAC/C,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,gBAAgB,EAAE,YAAY;QACjE,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,gBAAgB,EAAE,QAAQ;QACrD,YAAY,EACV,IAAI,CAAC,YAAY;YACjB,IAAA,qCAAqB,EAAC,gBAAgB,EAAE,YAAY,CAAC;QACvD,sBAAsB,EACpB,IAAI,CAAC,sBAAsB,IAAI,gBAAgB,EAAE,sBAAsB;KAC1E,CAAC;IAEF,IAAI,CAAC,MAAM;QACT,UAAU;YACV,IAAI,CAAC,MAAM;YACX,IAAA,mCAAsB,EAAC,gBAAgB,CAAC;YACxC,IAAA,2BAAa,GAAE,CAAC;IAClB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC3B,CAAC"}
1
+ {"version":3,"file":"metadata-info.js","sourceRoot":"","sources":["../../../src/page/internal/metadata-info.ts"],"names":[],"mappings":";;AAUA,kCA+BC;AAzCD,sCAAsC;AACtC,qEAAoE;AAGpE,gDAA+C;AAE/C,6CAA2E;AAC3E,mDAAwD;AAExD,gBAAgB;AAChB,SAAgB,WAAW,CACzB,IAAkB,EAClB,EAAU,EACV,QAAgB,EAChB,WAAwB,EACxB,UAA0B;IAE1B,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,WAAW,CAAC;IACxC,MAAM,gBAAgB,GAAG,IAAA,gCAAmB,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,gBAAgB,EAAE,MAAM,IAAI,EAAE,CAAC;IACpD,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAE3D,MAAM,QAAQ,GAAG,IAAA,2BAAa,EAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAExD,MAAM,QAAQ,GAAa;QACzB,GAAG,IAAI;QACP,QAAQ,EAAE,gBAAgB;QAC1B,EAAE;QACF,MAAM;QACN,QAAQ;QACR,SAAS,EAAE,QAAQ;QACnB,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,IAAA,gCAAmB,EAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS;QACtE,GAAG,eAAe,CAAC,IAAI,EAAE,gBAAgB,CAAC;KAC3C,CAAC;IAEF,IAAI,CAAC,MAAM;QACT,UAAU;YACV,IAAI,CAAC,MAAM;YACX,IAAA,mCAAsB,EAAC,gBAAgB,CAAC;YACxC,IAAA,2BAAa,GAAE,CAAC;IAClB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC3B,CAAC;AAYD,SAAS,eAAe,CACtB,IAAiB,EACjB,QAAkC;IAElC,MAAM,MAAM,GAAoB;QAC9B,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,QAAQ,EAAE,MAAM;QACvC,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,QAAQ,EAAE,YAAY;QACzD,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,QAAQ,EAAE,QAAQ;QAC7C,YAAY,EACV,IAAI,CAAC,YAAY,IAAI,IAAA,qCAAqB,EAAC,QAAQ,EAAE,YAAY,CAAC;QACpE,sBAAsB,EACpB,IAAI,CAAC,sBAAsB,IAAI,QAAQ,EAAE,sBAAsB;QACjE,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,QAAQ,EAAE,SAAS;KACjD,CAAC;IACF,IAAI,CAAC,MAAM,CAAC,SAAS;QAAE,OAAO,MAAM,CAAC;IACrC,OAAO;QACL,GAAG,MAAM;QACT,YAAY,EAAE,SAAS;QACvB,QAAQ,EAAE,SAAS;QACnB,YAAY,EAAE,SAAS;KACxB,CAAC;AACJ,CAAC"}
@@ -1,10 +1,11 @@
1
+ /** @internal */
2
+ import { type ControllerClass } from "@antelopejs/interface-api";
1
3
  import type { ComponentInfoSerialized } from "../../component";
2
- import type { PageMetadata } from "../metadata";
3
4
  import type { PageInfo, PageLayout, PageLayoutRequest } from "../types";
4
5
  import { type PageRegistration } from "./page-registration";
5
6
  /** @internal */
6
7
  export declare function hiddenComponentsFlag(declared: Record<string, ComponentInfoSerialized>, served: Record<string, ComponentInfoSerialized>): Pick<PageLayout, "allComponentsHidden">;
7
8
  /** @internal */
8
- export declare function registerLayoutRoute(target: () => PageMetadata["target"], pageInfo: PageInfo, registration: () => PageRegistration, resolvePageLayout: (request: PageLayoutRequest) => Promise<PageLayout>, resolveGatedPageLayout: (request: PageLayoutRequest, options?: {
9
+ export declare function registerLayoutRoute(target: () => ControllerClass, pageInfo: PageInfo, registration: () => PageRegistration, resolvePageLayout: (request: PageLayoutRequest) => Promise<PageLayout>, resolveGatedPageLayout: (request: PageLayoutRequest, options?: {
9
10
  enforceTenantAccessGate?: boolean;
10
11
  }) => Promise<PageLayout>): void;
@@ -1 +1 @@
1
- {"version":3,"file":"metadata-layout.js","sourceRoot":"","sources":["../../../src/page/internal/metadata-layout.ts"],"names":[],"mappings":";;AAsBA,oDAOC;AAGD,kDAsCC;AAtED,gBAAgB;AAChB,6DAImC;AACnC,+DAAyD;AAazD,yCAAgD;AAEhD,gBAAgB;AAChB,SAAgB,oBAAoB,CAClC,QAAiD,EACjD,MAA+C;IAE/C,MAAM,QAAQ,GACZ,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IACvE,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,gBAAgB;AAChB,SAAgB,mBAAmB,CACjC,MAAoC,EACpC,QAAkB,EAClB,YAAoC,EACpC,iBAAsE,EACtE,sBAGwB;IAExB,MAAM,OAAO,GAAG,IAAA,4BAAW,EAAC,MAAM,EAAE,EAAE,8BAAc,CAAC,CAAC;IACtD,MAAM,OAAO,GAAsB,CAAC,OAAO,EAAE,EAAE,CAC7C,sBAAsB,CAAC,OAAO,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAC;IACrE,6BAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,IAAA,6BAAa,EAAC;QAC5B,QAAQ,EAAE,QAAQ,CAAC,SAAS;QAC5B,QAAQ,EAAE,KAAK;YACb,OAAO,iBAAiB,CAAC;gBACvB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,MAAM,EAAE,IAAI,CAAC,UAAU;aACxB,CAAC,CAAC;QACL,CAAC;QACD,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,SAAS;QACf,UAAU,EAAE,EAAE;QACd,UAAU,EAAE,OAAO,CAAC,cAAc;QAClC,UAAU,EAAE,MAAM,EAAE;KACrB,CAAC,CAAC;IACH,YAAY,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;QACxB,IAAI,6BAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,OAAO,EAAE,CAAC;YAC1D,6BAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC;QACD,IAAA,+BAAe,EAAC,OAAO,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"metadata-layout.js","sourceRoot":"","sources":["../../../src/page/internal/metadata-layout.ts"],"names":[],"mappings":";;AAsBA,oDAOC;AAGD,kDAsCC;AAtED,gBAAgB;AAChB,6DAKmC;AACnC,+DAAyD;AAYzD,yCAAgD;AAEhD,gBAAgB;AAChB,SAAgB,oBAAoB,CAClC,QAAiD,EACjD,MAA+C;IAE/C,MAAM,QAAQ,GACZ,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IACvE,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,gBAAgB;AAChB,SAAgB,mBAAmB,CACjC,MAA6B,EAC7B,QAAkB,EAClB,YAAoC,EACpC,iBAAsE,EACtE,sBAGwB;IAExB,MAAM,OAAO,GAAG,IAAA,4BAAW,EAAC,MAAM,EAAE,EAAE,8BAAc,CAAC,CAAC;IACtD,MAAM,OAAO,GAAsB,CAAC,OAAO,EAAE,EAAE,CAC7C,sBAAsB,CAAC,OAAO,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAC;IACrE,6BAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,IAAA,6BAAa,EAAC;QAC5B,QAAQ,EAAE,QAAQ,CAAC,SAAS;QAC5B,QAAQ,EAAE,KAAK;YACb,OAAO,iBAAiB,CAAC;gBACvB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,MAAM,EAAE,IAAI,CAAC,UAAU;aACxB,CAAC,CAAC;QACL,CAAC;QACD,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,SAAS;QACf,UAAU,EAAE,EAAE;QACd,UAAU,EAAE,OAAO,CAAC,cAAc;QAClC,UAAU,EAAE,MAAM,EAAE;KACrB,CAAC,CAAC;IACH,YAAY,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;QACxB,IAAI,6BAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,OAAO,EAAE,CAAC;YAC1D,6BAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC;QACD,IAAA,+BAAe,EAAC,OAAO,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -52,10 +52,8 @@ exports.rebuildLayoutComponents = rebuildLayoutComponents;
52
52
  /** @internal */
53
53
  var metadata_owner_1 = require("./metadata-owner");
54
54
  Object.defineProperty(exports, "installMetadataOwner", { enumerable: true, get: function () { return metadata_owner_1.installMetadataOwner; } });
55
- // oxlint-disable-next-line import/no-cycle -- Category resolution reads metadata only inside functions after initialization.
56
55
  var metadata_info_1 = require("./metadata-info");
57
56
  Object.defineProperty(exports, "setPageInfo", { enumerable: true, get: function () { return metadata_info_1.setPageInfo; } });
58
- // oxlint-disable-next-line import/no-cycle -- Publication reads category proxies only after metadata initialization.
59
57
  const metadata_publish_1 = require("./metadata-publish");
60
58
  const extension_assembly_1 = require("./extension-assembly");
61
59
  const components = __importStar(require("./metadata-components"));
@@ -146,8 +144,7 @@ function dispose(page) {
146
144
  const owner = (0, metadata_owner_2.metadataOwner)(page);
147
145
  owner.detached = true;
148
146
  owner.releaseGate();
149
- // oxlint-disable-next-line unicorn/no-useless-spread -- Snapshot the keys before drop deletes entries from the same map.
150
- for (const info of [...owner.extensionEntries.keys()])
147
+ for (const info of owner.extensionEntries.keys())
151
148
  owner.drop(info);
152
149
  owner.rebuild();
153
150
  owner.ownComponents = {};