@antelopejs/interface-dms 0.3.5 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +46 -0
- package/README.md +2 -2
- package/dist/attachments.d.ts +19 -10
- package/dist/attachments.js +15 -0
- package/dist/attachments.js.map +1 -1
- package/dist/auth/db/internal/sessions.model.d.ts +9 -0
- package/dist/auth/db/internal/sessions.model.js +31 -0
- package/dist/auth/db/internal/sessions.model.js.map +1 -0
- package/dist/auth/db/models/sessions.model.d.ts +16 -2
- package/dist/auth/db/models/sessions.model.js +33 -41
- package/dist/auth/db/models/sessions.model.js.map +1 -1
- package/dist/auth/db/models/userExternalIdentities.model.d.ts +11 -0
- package/dist/auth/db/models/userExternalIdentities.model.js +11 -0
- package/dist/auth/db/models/userExternalIdentities.model.js.map +1 -1
- package/dist/auth/db/models/users.model.d.ts +13 -0
- package/dist/auth/db/models/users.model.js +13 -0
- package/dist/auth/db/models/users.model.js.map +1 -1
- package/dist/auth/db/tables/sessions.table.d.ts +6 -1
- package/dist/auth/db/tables/sessions.table.js +0 -4
- package/dist/auth/db/tables/sessions.table.js.map +1 -1
- package/dist/auth/db/tables/userExternalIdentities.table.d.ts +24 -0
- package/dist/auth/db/tables/userExternalIdentities.table.js +13 -0
- package/dist/auth/db/tables/userExternalIdentities.table.js.map +1 -1
- package/dist/auth/db/tables/users.table.d.ts +60 -0
- package/dist/auth/db/tables/users.table.js +32 -0
- package/dist/auth/db/tables/users.table.js.map +1 -1
- package/dist/auth/index.d.ts +114 -10
- package/dist/auth/index.js +110 -17
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/internal/request-authenticators.d.ts +6 -0
- package/dist/auth/internal/request-authenticators.js +82 -0
- package/dist/auth/internal/request-authenticators.js.map +1 -0
- package/dist/auth/internal/request-principal.d.ts +10 -0
- package/dist/auth/internal/request-principal.js +27 -0
- package/dist/auth/internal/request-principal.js.map +1 -0
- package/dist/auth/internal/user-agent.d.ts +10 -0
- package/dist/auth/internal/user-agent.js +3 -0
- package/dist/auth/internal/user-agent.js.map +1 -0
- package/dist/auth/password.d.ts +19 -0
- package/dist/auth/password.js +23 -0
- package/dist/auth/password.js.map +1 -1
- package/dist/auth/request-authenticators.d.ts +4 -3
- package/dist/auth/request-authenticators.js +0 -77
- package/dist/auth/request-authenticators.js.map +1 -1
- package/dist/base/activity-feed.d.ts +210 -0
- package/dist/base/activity-feed.js +104 -0
- package/dist/base/activity-feed.js.map +1 -0
- package/dist/base/banner.d.ts +111 -0
- package/dist/base/banner.js +93 -0
- package/dist/base/banner.js.map +1 -0
- package/dist/base/block-registry/helpers.d.ts +26 -0
- package/dist/base/block-registry/helpers.js +27 -1
- package/dist/base/block-registry/helpers.js.map +1 -1
- package/dist/base/block-registry/internal/describe.d.ts +35 -0
- package/dist/base/block-registry/{describe.js → internal/describe.js} +50 -0
- package/dist/base/block-registry/internal/describe.js.map +1 -0
- package/dist/base/block-registry/internal/ui.d.ts +23 -0
- package/dist/base/block-registry/internal/ui.js +35 -0
- package/dist/base/block-registry/internal/ui.js.map +1 -0
- package/dist/base/block-registry/registry.d.ts +24 -0
- package/dist/base/block-registry/registry.js +30 -1
- package/dist/base/block-registry/registry.js.map +1 -1
- package/dist/base/block-registry/types.d.ts +149 -0
- package/dist/base/block-types.d.ts +22 -2
- package/dist/base/block-types.js +24 -2
- package/dist/base/block-types.js.map +1 -1
- package/dist/base/card.d.ts +100 -0
- package/dist/base/card.js +91 -0
- package/dist/base/card.js.map +1 -0
- package/dist/base/chart-card.d.ts +9 -2
- package/dist/base/chart-card.js +14 -1
- package/dist/base/chart-card.js.map +1 -1
- package/dist/base/chart-schemas.d.ts +127 -115
- package/dist/base/chart-schemas.js +18 -56
- package/dist/base/chart-schemas.js.map +1 -1
- package/dist/base/chart-type.d.ts +15 -0
- package/dist/base/chart-type.js +20 -0
- package/dist/base/chart-type.js.map +1 -0
- package/dist/base/chart.d.ts +31 -22
- package/dist/base/chart.js +27 -54
- package/dist/base/chart.js.map +1 -1
- package/dist/base/confirm-dialog.d.ts +6 -0
- package/dist/base/confirm-dialog.js +18 -0
- package/dist/base/confirm-dialog.js.map +1 -0
- package/dist/base/data-sources.d.ts +38 -0
- package/dist/base/data-sources.js +13 -0
- package/dist/base/data-sources.js.map +1 -1
- package/dist/base/data-types/compare-types.d.ts +0 -2
- package/dist/base/data-types/compare-types.js +18 -13
- package/dist/base/data-types/compare-types.js.map +1 -1
- package/dist/base/data-types/core.d.ts +55 -0
- package/dist/base/data-types/core.js +42 -0
- package/dist/base/data-types/core.js.map +1 -1
- package/dist/base/data-types/default-types.d.ts +241 -62
- package/dist/base/data-types/default-types.js +257 -135
- package/dist/base/data-types/default-types.js.map +1 -1
- package/dist/base/data-types/field-types.d.ts +164 -0
- package/dist/base/data-types/field-types.js +236 -0
- package/dist/base/data-types/field-types.js.map +1 -0
- package/dist/base/data-types/index.d.ts +1 -0
- package/dist/base/data-types/index.js +21 -0
- package/dist/base/data-types/index.js.map +1 -1
- package/dist/base/data-types/internal/compare-types.d.ts +3 -0
- package/dist/base/data-types/internal/compare-types.js +15 -0
- package/dist/base/data-types/internal/compare-types.js.map +1 -0
- package/dist/base/data-types/status-type.d.ts +2 -1
- package/dist/base/data-types/status-type.js +6 -0
- package/dist/base/data-types/status-type.js.map +1 -1
- package/dist/base/display.d.ts +124 -0
- package/dist/base/display.js +95 -0
- package/dist/base/display.js.map +1 -0
- package/dist/base/empty-state.d.ts +106 -0
- package/dist/base/empty-state.js +109 -0
- package/dist/base/empty-state.js.map +1 -0
- package/dist/base/export-jobs.d.ts +39 -1
- package/dist/base/export-jobs.js +12 -3
- package/dist/base/export-jobs.js.map +1 -1
- package/dist/base/form-block-schema.d.ts +345 -28
- package/dist/base/form-block-schema.js +83 -12
- package/dist/base/form-block-schema.js.map +1 -1
- package/dist/base/form-schema.d.ts +137 -22
- package/dist/base/form-schema.js +139 -42
- package/dist/base/form-schema.js.map +1 -1
- package/dist/base/form-types.d.ts +139 -4
- package/dist/base/form-types.js +7 -1
- package/dist/base/form-types.js.map +1 -1
- package/dist/base/form.js +7 -0
- package/dist/base/form.js.map +1 -1
- package/dist/base/grid.d.ts +57 -0
- package/dist/base/grid.js +43 -0
- package/dist/base/grid.js.map +1 -1
- package/dist/base/helpers/file-refs.js +5 -1
- package/dist/base/helpers/file-refs.js.map +1 -1
- package/dist/base/index.d.ts +11 -1
- package/dist/base/index.js +16 -1
- package/dist/base/index.js.map +1 -1
- package/dist/base/internal/button-availability.d.ts +17 -0
- package/dist/base/internal/button-availability.js +31 -0
- package/dist/base/internal/button-availability.js.map +1 -0
- package/dist/base/internal/chart-schemas.d.ts +6 -0
- package/dist/base/internal/chart-schemas.js +70 -0
- package/dist/base/internal/chart-schemas.js.map +1 -0
- package/dist/base/internal/chart.d.ts +22 -0
- package/dist/base/internal/chart.js +37 -0
- package/dist/base/internal/chart.js.map +1 -0
- package/dist/base/internal/confirm-dialog.d.ts +13 -0
- package/dist/base/internal/confirm-dialog.js +24 -0
- package/dist/base/internal/confirm-dialog.js.map +1 -0
- package/dist/base/internal/display.d.ts +13 -0
- package/dist/base/internal/display.js +18 -0
- package/dist/base/internal/display.js.map +1 -0
- package/dist/base/internal/export-jobs.d.ts +2 -0
- package/dist/base/internal/export-jobs.js +6 -0
- package/dist/base/internal/export-jobs.js.map +1 -0
- package/dist/base/internal/form-block-schema.d.ts +6 -0
- package/dist/base/internal/form-block-schema.js +10 -0
- package/dist/base/internal/form-block-schema.js.map +1 -0
- package/dist/base/internal/form-schema.d.ts +7 -0
- package/dist/base/internal/form-schema.js +26 -0
- package/dist/base/internal/form-schema.js.map +1 -0
- package/dist/base/internal/layouts.d.ts +39 -0
- package/dist/base/internal/layouts.js +3 -0
- package/dist/base/internal/layouts.js.map +1 -0
- package/dist/base/internal/query-response.d.ts +24 -0
- package/dist/base/internal/query-response.js +47 -0
- package/dist/base/internal/query-response.js.map +1 -0
- package/dist/base/internal/searchable.d.ts +6 -0
- package/dist/base/internal/searchable.js +15 -0
- package/dist/base/internal/searchable.js.map +1 -0
- package/dist/base/key-value-list.d.ts +160 -0
- package/dist/base/key-value-list.js +107 -0
- package/dist/base/key-value-list.js.map +1 -0
- package/dist/base/kpi-card.d.ts +12 -4
- package/dist/base/kpi-card.js +7 -0
- package/dist/base/kpi-card.js.map +1 -1
- package/dist/base/layouts.d.ts +35 -0
- package/dist/base/layouts.js +41 -7
- package/dist/base/layouts.js.map +1 -1
- package/dist/base/meter.d.ts +186 -0
- package/dist/base/meter.js +134 -0
- package/dist/base/meter.js.map +1 -0
- package/dist/base/nav-card-grid.d.ts +173 -0
- package/dist/base/nav-card-grid.js +89 -0
- package/dist/base/nav-card-grid.js.map +1 -0
- package/dist/base/period-selector.d.ts +20 -0
- package/dist/base/period-selector.js +23 -0
- package/dist/base/period-selector.js.map +1 -1
- package/dist/base/placeholder.d.ts +26 -0
- package/dist/base/placeholder.js +12 -0
- package/dist/base/placeholder.js.map +1 -1
- package/dist/base/query-response.d.ts +51 -1
- package/dist/base/query-response.js +43 -26
- package/dist/base/query-response.js.map +1 -1
- package/dist/base/resource-form-schema.d.ts +18 -0
- package/dist/base/resource-form-schema.js +20 -3
- package/dist/base/resource-form-schema.js.map +1 -1
- package/dist/base/searchable.d.ts +2 -0
- package/dist/base/searchable.js +4 -0
- package/dist/base/searchable.js.map +1 -1
- package/dist/base/section.d.ts +105 -0
- package/dist/base/section.js +123 -0
- package/dist/base/section.js.map +1 -0
- package/dist/base/stack.d.ts +113 -0
- package/dist/base/stack.js +58 -0
- package/dist/base/stack.js.map +1 -1
- package/dist/base/stat-group.d.ts +152 -0
- package/dist/base/stat-group.js +97 -0
- package/dist/base/stat-group.js.map +1 -0
- package/dist/base/tab.d.ts +25 -8
- package/dist/base/tab.js +11 -0
- package/dist/base/tab.js.map +1 -1
- package/dist/base/table-view/column-display.d.ts +195 -0
- package/dist/base/table-view/column-display.js +131 -0
- package/dist/base/table-view/column-display.js.map +1 -0
- package/dist/base/table-view/data-functions.d.ts +36 -14
- package/dist/base/table-view/data-functions.js +26 -1
- package/dist/base/table-view/data-functions.js.map +1 -1
- package/dist/base/table-view/factory-helpers.d.ts +0 -42
- package/dist/base/table-view/factory-helpers.js +1 -244
- package/dist/base/table-view/factory-helpers.js.map +1 -1
- package/dist/base/table-view/factory.d.ts +5 -1
- package/dist/base/table-view/factory.js +158 -202
- package/dist/base/table-view/factory.js.map +1 -1
- package/dist/base/table-view/internal/auth.d.ts +33 -0
- package/dist/base/table-view/{auth.js → internal/auth.js} +45 -6
- package/dist/base/table-view/internal/auth.js.map +1 -0
- package/dist/base/table-view/internal/column-display.d.ts +18 -0
- package/dist/base/table-view/internal/column-display.js +37 -0
- package/dist/base/table-view/internal/column-display.js.map +1 -0
- package/dist/base/table-view/internal/data-functions.d.ts +14 -0
- package/dist/base/table-view/internal/data-functions.js +3 -0
- package/dist/base/table-view/internal/data-functions.js.map +1 -0
- package/dist/base/table-view/internal/factory-helpers.d.ts +213 -0
- package/dist/base/table-view/internal/factory-helpers.js +477 -0
- package/dist/base/table-view/internal/factory-helpers.js.map +1 -0
- package/dist/base/table-view/{files.d.ts → internal/files.d.ts} +5 -0
- package/dist/base/table-view/{files.js → internal/files.js} +14 -4
- package/dist/base/table-view/internal/files.js.map +1 -0
- package/dist/base/table-view/internal/footer.d.ts +33 -0
- package/dist/base/table-view/internal/footer.js +112 -0
- package/dist/base/table-view/internal/footer.js.map +1 -0
- package/dist/base/table-view/{guards.d.ts → internal/guards.d.ts} +3 -0
- package/dist/base/table-view/internal/guards.js +134 -0
- package/dist/base/table-view/internal/guards.js.map +1 -0
- package/dist/base/table-view/internal/meta.d.ts +5 -0
- package/dist/base/table-view/internal/meta.js +13 -0
- package/dist/base/table-view/internal/meta.js.map +1 -0
- package/dist/base/table-view/internal/nav-badges.d.ts +9 -0
- package/dist/base/table-view/internal/nav-badges.js +79 -0
- package/dist/base/table-view/internal/nav-badges.js.map +1 -0
- package/dist/base/table-view/internal/options.d.ts +6 -0
- package/dist/base/table-view/internal/options.js +10 -0
- package/dist/base/table-view/internal/options.js.map +1 -0
- package/dist/base/table-view/internal/realtime-listeners.d.ts +4 -0
- package/dist/base/table-view/internal/realtime-listeners.js +7 -0
- package/dist/base/table-view/internal/realtime-listeners.js.map +1 -0
- package/dist/base/table-view/internal/realtime.d.ts +39 -0
- package/dist/base/table-view/internal/realtime.js +163 -0
- package/dist/base/table-view/internal/realtime.js.map +1 -0
- package/dist/base/table-view/internal/request-filter.d.ts +75 -0
- package/dist/base/table-view/internal/request-filter.js +154 -0
- package/dist/base/table-view/internal/request-filter.js.map +1 -0
- package/dist/base/table-view/internal/resource-form.d.ts +25 -0
- package/dist/base/table-view/internal/resource-form.js +91 -0
- package/dist/base/table-view/internal/resource-form.js.map +1 -0
- package/dist/base/table-view/{row-rules.d.ts → internal/row-rules.d.ts} +5 -2
- package/dist/base/table-view/{row-rules.js → internal/row-rules.js} +20 -19
- package/dist/base/table-view/internal/row-rules.js.map +1 -0
- package/dist/base/table-view/internal/tabs.d.ts +39 -0
- package/dist/base/table-view/internal/tabs.js +116 -0
- package/dist/base/table-view/internal/tabs.js.map +1 -0
- package/dist/base/table-view/internal/validation.d.ts +99 -0
- package/dist/base/table-view/internal/validation.js +297 -0
- package/dist/base/table-view/internal/validation.js.map +1 -0
- package/dist/base/table-view/internal/views.d.ts +14 -0
- package/dist/base/table-view/internal/views.js +42 -0
- package/dist/base/table-view/internal/views.js.map +1 -0
- package/dist/base/table-view/internal/writer.d.ts +39 -0
- package/dist/base/table-view/internal/writer.js +55 -0
- package/dist/base/table-view/internal/writer.js.map +1 -0
- package/dist/base/table-view/meta.d.ts +77 -4
- package/dist/base/table-view/meta.js +133 -13
- package/dist/base/table-view/meta.js.map +1 -1
- package/dist/base/table-view/options.d.ts +749 -28
- package/dist/base/table-view/options.js +9 -2
- package/dist/base/table-view/options.js.map +1 -1
- package/dist/base/table-view/realtime.d.ts +26 -17
- package/dist/base/table-view/realtime.js +29 -126
- package/dist/base/table-view/realtime.js.map +1 -1
- package/dist/base/table-view/resource-form.d.ts +11 -5
- package/dist/base/table-view/resource-form.js +15 -59
- package/dist/base/table-view/resource-form.js.map +1 -1
- package/dist/base/table-view/routes.d.ts +29 -0
- package/dist/base/table-view/routes.js +71 -6
- package/dist/base/table-view/routes.js.map +1 -1
- package/dist/base/table-view/schema.d.ts +483 -69
- package/dist/base/table-view/schema.js +163 -18
- package/dist/base/table-view/schema.js.map +1 -1
- package/dist/base/table-view/source.d.ts +62 -0
- package/dist/base/table-view/source.js +161 -0
- package/dist/base/table-view/source.js.map +1 -0
- package/dist/base/table-view/views.d.ts +20 -0
- package/dist/base/table-view/views.js +38 -0
- package/dist/base/table-view/views.js.map +1 -0
- package/dist/base/table-view/writer.d.ts +7 -0
- package/dist/base/table-view/writer.js +17 -0
- package/dist/base/table-view/writer.js.map +1 -0
- package/dist/base/table-view.d.ts +34 -6
- package/dist/base/table-view.js +42 -6
- package/dist/base/table-view.js.map +1 -1
- package/dist/base/tenant-export-archive.d.ts +21 -0
- package/dist/base/tenant-export-archive.js +11 -0
- package/dist/base/tenant-export-archive.js.map +1 -1
- package/dist/base/top-list-card.d.ts +35 -12
- package/dist/base/top-list-card.js +24 -0
- package/dist/base/top-list-card.js.map +1 -1
- package/dist/base/types/action-target.d.ts +36 -20
- package/dist/base/types/component-input.d.ts +3 -0
- package/dist/base/types/confirm-dialog.d.ts +69 -0
- package/dist/base/types/confirm-dialog.js +3 -0
- package/dist/base/types/confirm-dialog.js.map +1 -0
- package/dist/base/types/custom-button.d.ts +48 -2
- package/dist/base/types/enum-option.d.ts +9 -0
- package/dist/base/types/error.d.ts +9 -0
- package/dist/base/types/error.js +7 -1
- package/dist/base/types/error.js.map +1 -1
- package/dist/base/types/export-status.d.ts +3 -0
- package/dist/base/types/export-status.js +3 -0
- package/dist/base/types/export-status.js.map +1 -1
- package/dist/base/types/field-config.d.ts +3 -0
- package/dist/base/types/form-mode.d.ts +3 -0
- package/dist/base/types/form-mode.js +3 -0
- package/dist/base/types/form-mode.js.map +1 -1
- package/dist/base/types/form-values.d.ts +6 -0
- package/dist/base/types/guards.d.ts +37 -7
- package/dist/base/types/index.d.ts +2 -0
- package/dist/base/types/index.js +2 -0
- package/dist/base/types/index.js.map +1 -1
- package/dist/base/types/internal/action-target.d.ts +8 -0
- package/dist/base/types/internal/action-target.js +16 -0
- package/dist/base/types/internal/action-target.js.map +1 -0
- package/dist/base/types/json.d.ts +6 -0
- package/dist/base/types/orientation.d.ts +3 -0
- package/dist/base/types/orientation.js +3 -0
- package/dist/base/types/orientation.js.map +1 -1
- package/dist/base/types/readonly-behavior.d.ts +9 -0
- package/dist/base/types/readonly-behavior.js +3 -0
- package/dist/base/types/readonly-behavior.js.map +1 -1
- package/dist/base/types/row-action.d.ts +111 -0
- package/dist/base/types/size.d.ts +1 -0
- package/dist/base/types/size.js +4 -0
- package/dist/base/types/size.js.map +1 -1
- package/dist/base/types/tone.d.ts +14 -0
- package/dist/base/types/tone.js +24 -0
- package/dist/base/types/tone.js.map +1 -0
- package/dist/client-base-url.d.ts +8 -0
- package/dist/client-base-url.js +8 -0
- package/dist/client-base-url.js.map +1 -1
- package/dist/component-slots.d.ts +17 -2
- package/dist/component-slots.js +18 -66
- package/dist/component-slots.js.map +1 -1
- package/dist/component.d.ts +113 -0
- package/dist/component.js +84 -1
- package/dist/component.js.map +1 -1
- package/dist/data-controllers/members.d.ts +16 -1
- package/dist/data-controllers/members.js +87 -26
- package/dist/data-controllers/members.js.map +1 -1
- package/dist/data-controllers/roles.d.ts +1 -0
- package/dist/data-controllers/roles.js +3 -3
- package/dist/data-controllers/roles.js.map +1 -1
- package/dist/db/{models → internal}/exportJobs.model.d.ts +2 -0
- package/dist/db/{models → internal}/exportJobs.model.js +4 -1
- package/dist/db/internal/exportJobs.model.js.map +1 -0
- package/dist/db/internal/inviteResolutions.model.d.ts +34 -0
- package/dist/db/internal/inviteResolutions.model.js +80 -0
- package/dist/db/internal/inviteResolutions.model.js.map +1 -0
- package/dist/db/internal/table-names.d.ts +4 -0
- package/dist/db/internal/table-names.js +8 -0
- package/dist/db/internal/table-names.js.map +1 -0
- package/dist/db/{models → internal}/tenantLifecycle.model.d.ts +10 -1
- package/dist/db/{models → internal}/tenantLifecycle.model.js +10 -1
- package/dist/db/internal/tenantLifecycle.model.js.map +1 -0
- package/dist/db/{tables → internal}/tenantLifecycle.table.d.ts +6 -0
- package/dist/db/{tables → internal}/tenantLifecycle.table.js +6 -0
- package/dist/db/internal/tenantLifecycle.table.js.map +1 -0
- package/dist/db/models/index.d.ts +0 -2
- package/dist/db/models/index.js +0 -2
- package/dist/db/models/index.js.map +1 -1
- package/dist/db/models/inviteResolutions.model.d.ts +1 -25
- package/dist/db/models/inviteResolutions.model.js +0 -68
- package/dist/db/models/inviteResolutions.model.js.map +1 -1
- package/dist/db/models/roles.model.d.ts +6 -0
- package/dist/db/models/roles.model.js +6 -0
- package/dist/db/models/roles.model.js.map +1 -1
- package/dist/db/models/tenantMembers.model.js +1 -1
- package/dist/db/models/tenantMembers.model.js.map +1 -1
- package/dist/db/models/user_invites.model.d.ts +24 -0
- package/dist/db/models/user_invites.model.js +25 -1
- package/dist/db/models/user_invites.model.js.map +1 -1
- package/dist/db/tables/exportJobs.table.d.ts +5 -1
- package/dist/db/tables/exportJobs.table.js +3 -3
- package/dist/db/tables/exportJobs.table.js.map +1 -1
- package/dist/db/tables/index.d.ts +0 -1
- package/dist/db/tables/index.js +0 -1
- package/dist/db/tables/index.js.map +1 -1
- package/dist/db/tables/inviteResolutions.table.d.ts +1 -1
- package/dist/db/tables/inviteResolutions.table.js +4 -3
- package/dist/db/tables/inviteResolutions.table.js.map +1 -1
- package/dist/db/tables/roles.table.d.ts +2 -0
- package/dist/db/tables/roles.table.js +4 -0
- package/dist/db/tables/roles.table.js.map +1 -1
- package/dist/db/tables/tenantMembers.table.d.ts +1 -0
- package/dist/db/tables/user_invites.table.d.ts +11 -0
- package/dist/db/tables/user_invites.table.js +4 -0
- package/dist/db/tables/user_invites.table.js.map +1 -1
- package/dist/guards.d.ts +36 -0
- package/dist/guards.js +30 -1
- package/dist/guards.js.map +1 -1
- package/dist/hooks.d.ts +133 -1
- package/dist/hooks.js +87 -1
- package/dist/hooks.js.map +1 -1
- package/dist/html-render/index.d.ts +15 -0
- package/dist/html-render/index.js +15 -0
- package/dist/html-render/index.js.map +1 -1
- package/dist/html-render/types.d.ts +4 -0
- package/dist/index.d.ts +6 -7
- package/dist/index.js +12 -17
- package/dist/index.js.map +1 -1
- package/dist/internal/attachments.d.ts +16 -0
- package/dist/internal/attachments.js +3 -0
- package/dist/internal/attachments.js.map +1 -0
- package/dist/internal/component-slots.d.ts +27 -0
- package/dist/internal/component-slots.js +97 -0
- package/dist/internal/component-slots.js.map +1 -0
- package/dist/internal/invite-membership.d.ts +8 -0
- package/dist/{invite-membership.js → internal/invite-membership.js} +11 -5
- package/dist/internal/invite-membership.js.map +1 -0
- package/dist/internal/invite-replacement.d.ts +7 -0
- package/dist/{invite-replacement.js → internal/invite-replacement.js} +8 -3
- package/dist/internal/invite-replacement.js.map +1 -0
- package/dist/internal/invite-resolution.d.ts +3 -0
- package/dist/internal/invite-resolution.js +50 -0
- package/dist/internal/invite-resolution.js.map +1 -0
- package/dist/internal/invites.d.ts +31 -0
- package/dist/internal/invites.js +44 -0
- package/dist/internal/invites.js.map +1 -0
- package/dist/internal/permission-gate.d.ts +23 -0
- package/dist/internal/permission-gate.js +43 -0
- package/dist/internal/permission-gate.js.map +1 -0
- package/dist/internal/tenant-access.d.ts +28 -0
- package/dist/internal/tenant-access.js +28 -0
- package/dist/internal/tenant-access.js.map +1 -0
- package/dist/internal/tenant-ownership.d.ts +13 -0
- package/dist/internal/tenant-ownership.js +95 -0
- package/dist/internal/tenant-ownership.js.map +1 -0
- package/dist/internal/uploads.d.ts +19 -0
- package/dist/internal/uploads.js +3 -0
- package/dist/internal/uploads.js.map +1 -0
- package/dist/invite-extensions/availability.d.ts +28 -3
- package/dist/invite-extensions/availability.js +26 -23
- package/dist/invite-extensions/availability.js.map +1 -1
- package/dist/invite-extensions/internal/availability.d.ts +12 -0
- package/dist/invite-extensions/internal/availability.js +32 -0
- package/dist/invite-extensions/internal/availability.js.map +1 -0
- package/dist/invite-extensions/internal/delivery.d.ts +44 -0
- package/dist/invite-extensions/{delivery.js → internal/delivery.js} +38 -0
- package/dist/invite-extensions/internal/delivery.js.map +1 -0
- package/dist/invite-extensions/internal/edit.d.ts +34 -0
- package/dist/invite-extensions/{edit.js → internal/edit.js} +33 -0
- package/dist/invite-extensions/internal/edit.js.map +1 -0
- package/dist/invite-extensions/internal/field-ids.d.ts +21 -0
- package/dist/invite-extensions/{field-ids.js → internal/field-ids.js} +13 -0
- package/dist/invite-extensions/internal/field-ids.js.map +1 -0
- package/dist/invite-extensions/internal/form-slot.d.ts +13 -0
- package/dist/invite-extensions/{form-slot.js → internal/form-slot.js} +49 -4
- package/dist/invite-extensions/internal/form-slot.js.map +1 -0
- package/dist/invite-extensions/internal/payload-slices.d.ts +31 -0
- package/dist/invite-extensions/{payload-slices.js → internal/payload-slices.js} +30 -0
- package/dist/invite-extensions/internal/payload-slices.js.map +1 -0
- package/dist/invite-extensions/internal/registry.d.ts +48 -0
- package/dist/invite-extensions/internal/registry.js +77 -0
- package/dist/invite-extensions/internal/registry.js.map +1 -0
- package/dist/invite-extensions/internal/types.d.ts +61 -0
- package/dist/invite-extensions/internal/types.js +3 -0
- package/dist/invite-extensions/internal/types.js.map +1 -0
- package/dist/invite-extensions/registry.d.ts +44 -12
- package/dist/invite-extensions/registry.js +51 -43
- package/dist/invite-extensions/registry.js.map +1 -1
- package/dist/invite-extensions/types.d.ts +59 -34
- package/dist/invite-extensions.d.ts +30 -4
- package/dist/invite-extensions.js +57 -7
- package/dist/invite-extensions.js.map +1 -1
- package/dist/invite-resolution.d.ts +5 -2
- package/dist/invite-resolution.js +16 -46
- package/dist/invite-resolution.js.map +1 -1
- package/dist/invitee-display-name.d.ts +5 -0
- package/dist/invitee-display-name.js +15 -0
- package/dist/invitee-display-name.js.map +1 -0
- package/dist/invites.d.ts +46 -14
- package/dist/invites.js +41 -44
- package/dist/invites.js.map +1 -1
- package/dist/layout-banners.d.ts +68 -0
- package/dist/layout-banners.js +18 -0
- package/dist/layout-banners.js.map +1 -1
- package/dist/notifications/builder.d.ts +3 -1
- package/dist/notifications/builder.js +10 -0
- package/dist/notifications/builder.js.map +1 -1
- package/dist/notifications/index.d.ts +1 -0
- package/dist/notifications/index.js +16 -0
- package/dist/notifications/index.js.map +1 -1
- package/dist/notifications/internal.d.ts +8 -5
- package/dist/notifications/internal.js +6 -0
- package/dist/notifications/internal.js.map +1 -1
- package/dist/notifications/sendable.d.ts +6 -0
- package/dist/notifications/sendable.js +13 -4
- package/dist/notifications/sendable.js.map +1 -1
- package/dist/notifications/types.d.ts +26 -1
- package/dist/page/categories.d.ts +19 -17
- package/dist/page/categories.js +24 -168
- package/dist/page/categories.js.map +1 -1
- package/dist/page/component-tree.d.ts +15 -1
- package/dist/page/component-tree.js +0 -40
- package/dist/page/component-tree.js.map +1 -1
- package/dist/page/controllers.d.ts +135 -0
- package/dist/page/controllers.js +124 -8
- package/dist/page/controllers.js.map +1 -1
- package/dist/page/declaration-conflict.d.ts +9 -0
- package/dist/page/declaration-conflict.js +17 -0
- package/dist/page/declaration-conflict.js.map +1 -0
- package/dist/page/form-page-routes.d.ts +7 -10
- package/dist/page/form-page-routes.js +14 -31
- package/dist/page/form-page-routes.js.map +1 -1
- package/dist/page/internal/categories.d.ts +62 -0
- package/dist/page/internal/categories.js +260 -0
- package/dist/page/internal/categories.js.map +1 -0
- package/dist/page/internal/component-target.d.ts +37 -0
- package/dist/page/{component-target.js → internal/component-target.js} +27 -2
- package/dist/page/internal/component-target.js.map +1 -0
- package/dist/page/internal/component-tree.d.ts +13 -0
- package/dist/page/internal/component-tree.js +61 -0
- package/dist/page/internal/component-tree.js.map +1 -0
- package/dist/page/{extension-assembly.d.ts → internal/extension-assembly.d.ts} +5 -2
- package/dist/page/{extension-assembly.js → internal/extension-assembly.js} +8 -0
- package/dist/page/internal/extension-assembly.js.map +1 -0
- package/dist/page/internal/extension-validation.d.ts +24 -0
- package/dist/page/{extension-validation.js → internal/extension-validation.js} +8 -0
- package/dist/page/internal/extension-validation.js.map +1 -0
- package/dist/page/internal/form-page-routes.d.ts +26 -0
- package/dist/page/internal/form-page-routes.js +40 -0
- package/dist/page/internal/form-page-routes.js.map +1 -0
- package/dist/page/internal/layout-filter.d.ts +21 -0
- package/dist/page/internal/layout-filter.js +101 -0
- package/dist/page/internal/layout-filter.js.map +1 -0
- package/dist/page/{metadata-helpers.d.ts → internal/metadata-helpers.d.ts} +4 -1
- package/dist/page/{metadata-helpers.js → internal/metadata-helpers.js} +19 -2
- package/dist/page/internal/metadata-helpers.js.map +1 -0
- package/dist/page/internal/nav-badges.d.ts +17 -0
- package/dist/page/internal/nav-badges.js +68 -0
- package/dist/page/internal/nav-badges.js.map +1 -0
- package/dist/page/internal/page-registration.d.ts +29 -0
- package/dist/page/internal/page-registration.js +41 -0
- package/dist/page/internal/page-registration.js.map +1 -0
- package/dist/page/internal/registry.d.ts +128 -0
- package/dist/page/internal/registry.js +225 -0
- package/dist/page/internal/registry.js.map +1 -0
- package/dist/page/internal/table-view-ids.d.ts +10 -0
- package/dist/page/internal/table-view-ids.js +39 -0
- package/dist/page/internal/table-view-ids.js.map +1 -0
- package/dist/page/internal/types.d.ts +2 -0
- package/dist/page/internal/types.js +6 -0
- package/dist/page/internal/types.js.map +1 -0
- package/dist/page/layout-filter.d.ts +4 -0
- package/dist/page/layout-filter.js +11 -0
- package/dist/page/layout-filter.js.map +1 -1
- package/dist/page/metadata.d.ts +93 -0
- package/dist/page/metadata.js +236 -28
- package/dist/page/metadata.js.map +1 -1
- package/dist/page/registry.d.ts +17 -36
- package/dist/page/registry.js +25 -127
- package/dist/page/registry.js.map +1 -1
- package/dist/page/roots.d.ts +10 -0
- package/dist/page/roots.js +27 -6
- package/dist/page/roots.js.map +1 -1
- package/dist/page/types.d.ts +186 -1
- package/dist/page/types.js +1 -2
- package/dist/page/types.js.map +1 -1
- package/dist/page.d.ts +23 -1
- package/dist/page.js +24 -2
- package/dist/page.js.map +1 -1
- package/dist/permission-gate.d.ts +14 -0
- package/dist/permission-gate.js +3 -0
- package/dist/permission-gate.js.map +1 -0
- package/dist/permissions-resolver.d.ts +24 -0
- package/dist/permissions-resolver.js +24 -0
- package/dist/permissions-resolver.js.map +1 -1
- package/dist/permissions.d.ts +27 -0
- package/dist/permissions.js +37 -0
- package/dist/permissions.js.map +1 -1
- package/dist/quick-actions.d.ts +27 -0
- package/dist/quick-actions.js +1 -0
- package/dist/quick-actions.js.map +1 -1
- package/dist/realtime.d.ts +29 -0
- package/dist/realtime.js +30 -0
- package/dist/realtime.js.map +1 -1
- package/dist/request-tenant.d.ts +17 -0
- package/dist/request-tenant.js +18 -1
- package/dist/request-tenant.js.map +1 -1
- package/dist/tenant-access.d.ts +38 -6
- package/dist/tenant-access.js +38 -8
- package/dist/tenant-access.js.map +1 -1
- package/dist/tenant-export.d.ts +19 -0
- package/dist/tenant-lifecycle.d.ts +13 -0
- package/dist/tenant-lifecycle.js +22 -1
- package/dist/tenant-lifecycle.js.map +1 -1
- package/dist/tenant-ownership.d.ts +2 -1
- package/dist/tenant-ownership.js +5 -85
- package/dist/tenant-ownership.js.map +1 -1
- package/dist/tenant-scoped-model.d.ts +8 -0
- package/dist/tenant-scoped-model.js +8 -0
- package/dist/tenant-scoped-model.js.map +1 -1
- package/dist/uploads.d.ts +24 -16
- package/dist/uploads.js +24 -0
- package/dist/uploads.js.map +1 -1
- package/dist/utils/fire-and-forget.d.ts +4 -0
- package/dist/utils/fire-and-forget.js +4 -0
- package/dist/utils/fire-and-forget.js.map +1 -1
- package/dist/utils/internal/owned-registry.d.ts +36 -0
- package/dist/utils/internal/owned-registry.js +60 -0
- package/dist/utils/internal/owned-registry.js.map +1 -0
- package/dist/utils/{row-instance.d.ts → internal/row-instance.d.ts} +1 -0
- package/dist/utils/internal/row-instance.js +12 -0
- package/dist/utils/internal/row-instance.js.map +1 -0
- package/dist/utils/internal/saas-mode.d.ts +8 -0
- package/dist/utils/internal/saas-mode.js +3 -0
- package/dist/utils/internal/saas-mode.js.map +1 -0
- package/dist/utils/{time.d.ts → internal/time.d.ts} +4 -0
- package/dist/utils/{time.js → internal/time.js} +4 -0
- package/dist/utils/internal/time.js.map +1 -0
- package/dist/utils/{type-check.d.ts → internal/type-check.d.ts} +12 -0
- package/dist/utils/{type-check.js → internal/type-check.js} +12 -0
- package/dist/utils/internal/type-check.js.map +1 -0
- package/dist/utils/internal/value-parser.d.ts +86 -0
- package/dist/utils/internal/value-parser.js +160 -0
- package/dist/utils/internal/value-parser.js.map +1 -0
- package/dist/utils/saas-mode.d.ts +25 -3
- package/dist/utils/saas-mode.js +24 -0
- package/dist/utils/saas-mode.js.map +1 -1
- package/package.json +3 -3
- package/dist/base/block-registry/describe.d.ts +0 -6
- package/dist/base/block-registry/describe.js.map +0 -1
- package/dist/base/block-registry/ui.d.ts +0 -5
- package/dist/base/block-registry/ui.js +0 -17
- package/dist/base/block-registry/ui.js.map +0 -1
- package/dist/base/table-view/auth.d.ts +0 -9
- package/dist/base/table-view/auth.js.map +0 -1
- package/dist/base/table-view/files.js.map +0 -1
- package/dist/base/table-view/guards.js +0 -85
- package/dist/base/table-view/guards.js.map +0 -1
- package/dist/base/table-view/row-rules.js.map +0 -1
- package/dist/base/tree.d.ts +0 -115
- package/dist/base/tree.js +0 -145
- package/dist/base/tree.js.map +0 -1
- package/dist/db/models/exportJobs.model.js.map +0 -1
- package/dist/db/models/tenantLifecycle.model.js.map +0 -1
- package/dist/db/tables/tenantLifecycle.table.js.map +0 -1
- package/dist/invite-extensions/delivery.d.ts +0 -5
- package/dist/invite-extensions/delivery.js.map +0 -1
- package/dist/invite-extensions/edit.d.ts +0 -4
- package/dist/invite-extensions/edit.js.map +0 -1
- package/dist/invite-extensions/field-ids.d.ts +0 -7
- package/dist/invite-extensions/field-ids.js.map +0 -1
- package/dist/invite-extensions/form-slot.d.ts +0 -2
- package/dist/invite-extensions/form-slot.js.map +0 -1
- package/dist/invite-extensions/internal.d.ts +0 -17
- package/dist/invite-extensions/internal.js +0 -55
- package/dist/invite-extensions/internal.js.map +0 -1
- package/dist/invite-extensions/payload-slices.d.ts +0 -8
- package/dist/invite-extensions/payload-slices.js.map +0 -1
- package/dist/invite-membership.d.ts +0 -3
- package/dist/invite-membership.js.map +0 -1
- package/dist/invite-replacement.d.ts +0 -2
- package/dist/invite-replacement.js.map +0 -1
- package/dist/page/component-target.d.ts +0 -10
- package/dist/page/component-target.js.map +0 -1
- package/dist/page/extension-assembly.js.map +0 -1
- package/dist/page/extension-validation.d.ts +0 -7
- package/dist/page/extension-validation.js.map +0 -1
- package/dist/page/metadata-helpers.js.map +0 -1
- package/dist/page/page-registration.d.ts +0 -13
- package/dist/page/page-registration.js +0 -22
- package/dist/page/page-registration.js.map +0 -1
- package/dist/utils/owned-registry.d.ts +0 -10
- package/dist/utils/owned-registry.js +0 -34
- package/dist/utils/owned-registry.js.map +0 -1
- package/dist/utils/row-instance.js +0 -8
- package/dist/utils/row-instance.js.map +0 -1
- package/dist/utils/time.js.map +0 -1
- package/dist/utils/type-check.js.map +0 -1
- package/dist/utils/value-parser.d.ts +0 -11
- package/dist/utils/value-parser.js +0 -86
- package/dist/utils/value-parser.js.map +0 -1
package/dist/hooks.d.ts
CHANGED
|
@@ -3,7 +3,37 @@ import type { TenantDataExportContribution, TenantExportArchive } from "./tenant
|
|
|
3
3
|
export * from "./tenant-export";
|
|
4
4
|
export type HookCallback = (...args: any[]) => any;
|
|
5
5
|
export declare enum Hook {
|
|
6
|
+
/**
|
|
7
|
+
* The database schemas are registered and the DMS is about to serve.
|
|
8
|
+
*
|
|
9
|
+
* It behaves like an already-resolved promise: the DMS fires it once per
|
|
10
|
+
* start, and a handler registered after that — by a module loaded or
|
|
11
|
+
* reloaded while the DMS runs — runs at once, in the background. It fires
|
|
12
|
+
* again on every DMS start, and a reloaded module registers again, so a
|
|
13
|
+
* handler may run several times over the life of a process and must be
|
|
14
|
+
* safe to replay against a live database.
|
|
15
|
+
*/
|
|
6
16
|
DATABASE_INITIALIZED = "database:initialized",
|
|
17
|
+
/**
|
|
18
|
+
* A workspace is being provisioned, and nothing of it is final yet.
|
|
19
|
+
*
|
|
20
|
+
* Handlers run in series, each awaited before the next, and one that throws
|
|
21
|
+
* propagates to whoever is provisioning: that emitter must then unwind the
|
|
22
|
+
* workspace it was creating. That direction is the guarantee, and the reason
|
|
23
|
+
* to fire before the commit rather than after it — a workspace never ends up
|
|
24
|
+
* provisioned while the enrichment a consumer needed failed to be written.
|
|
25
|
+
*
|
|
26
|
+
* The other direction is not guaranteed and cannot be: there is no shared
|
|
27
|
+
* transaction to enlist in. A handler that already returned has committed
|
|
28
|
+
* its own rows, and neither a later handler throwing nor the emitter failing
|
|
29
|
+
* afterwards takes them back. Key that write on `tenantId` so it can be
|
|
30
|
+
* cleaned up along with the workspace, and make it idempotent so a retried
|
|
31
|
+
* signup does not double it.
|
|
32
|
+
*
|
|
33
|
+
* No DMS code fires this hook. Provisioning belongs to the signup flow of a
|
|
34
|
+
* SaaS module, and the contract above is what such an emitter owes its
|
|
35
|
+
* subscribers.
|
|
36
|
+
*/
|
|
7
37
|
TENANT_BEING_PROVISIONED = "tenant:being-provisioned",
|
|
8
38
|
TENANT_DELETED = "tenant:deleted",
|
|
9
39
|
TENANT_DATA_EXPORT = "tenant:data-export",
|
|
@@ -13,11 +43,37 @@ export declare enum Hook {
|
|
|
13
43
|
MEMBER_BEING_ADDED = "member:being-added",
|
|
14
44
|
MEMBER_ADDED = "member:added",
|
|
15
45
|
MEMBER_REMOVED = "member:removed",
|
|
16
|
-
USER_REGISTERED = "user:registered"
|
|
46
|
+
USER_REGISTERED = "user:registered",
|
|
47
|
+
/**
|
|
48
|
+
* A user was deleted, by any path — today, deleting one's own account
|
|
49
|
+
* (`reason: "self"`). Fired once the DMS has removed what it keeps about
|
|
50
|
+
* them (memberships, sessions, notifications, sign-in links and the user
|
|
51
|
+
* row); a module keeping per-user or per-tenant rows of its own deletes
|
|
52
|
+
* them here, `tenantIds` naming the workspaces the user belonged to. A
|
|
53
|
+
* failing handler is logged and does not bring the account back.
|
|
54
|
+
*/
|
|
55
|
+
USER_DELETED = "user:deleted"
|
|
17
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* The workspace being provisioned, and whatever the caller of the provisioning
|
|
59
|
+
* flow asked to carry along with it.
|
|
60
|
+
*/
|
|
18
61
|
export interface TenantProvisioningHookPayload {
|
|
19
62
|
tenantId: string;
|
|
63
|
+
/** Account the workspace is being provisioned for. */
|
|
20
64
|
userId: string;
|
|
65
|
+
/**
|
|
66
|
+
* Data the caller of the provisioning flow attached to the request — an
|
|
67
|
+
* acquisition source, a team size, a referral code, whatever that product
|
|
68
|
+
* collects at signup.
|
|
69
|
+
*
|
|
70
|
+
* It is opaque on purpose. The DMS never reads a key of it, never validates
|
|
71
|
+
* it and never stores it: it carries the object to the handlers, and a
|
|
72
|
+
* handler writes what it recognises into its own tables. The shape is a
|
|
73
|
+
* contract between the caller and the handler, one the DMS is deliberately
|
|
74
|
+
* not a party to — which is what lets a consumer collect new fields without
|
|
75
|
+
* a DMS release.
|
|
76
|
+
*/
|
|
21
77
|
extras: Record<string, unknown>;
|
|
22
78
|
}
|
|
23
79
|
export interface InviteHookPayload {
|
|
@@ -25,28 +81,40 @@ export interface InviteHookPayload {
|
|
|
25
81
|
email: string;
|
|
26
82
|
asTenantOwner: boolean;
|
|
27
83
|
roleIds: string[];
|
|
84
|
+
/** Stable replacement decision identity; creation hooks may replay. */
|
|
28
85
|
deliveryId?: string;
|
|
29
86
|
}
|
|
30
87
|
export interface InviteCreatedHookPayload extends InviteHookPayload {
|
|
31
88
|
inviteId: string;
|
|
32
89
|
token: string;
|
|
33
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* Why an invitation row went away. Two of them delete a row without the
|
|
93
|
+
* invitation ending: `accepted` means the invitee joined and it was consumed,
|
|
94
|
+
* `resent` that the same invitation was reissued under a fresh token. Only
|
|
95
|
+
* `cancelled` and `replaced` retire what the invitation stood for.
|
|
96
|
+
*/
|
|
34
97
|
export type InviteDeletedReason = "accepted" | "cancelled" | "replaced" | "expired" | "resent";
|
|
98
|
+
/** Reasons under which creating an invitation displaces an existing one. */
|
|
35
99
|
export type InviteReplacementReason = Extract<InviteDeletedReason, "replaced" | "resent">;
|
|
36
100
|
export interface InviteDeletedHookPayload {
|
|
37
101
|
tenantId: string;
|
|
38
102
|
inviteId: string;
|
|
39
103
|
email: string;
|
|
40
104
|
reason: InviteDeletedReason;
|
|
105
|
+
/** Stable terminal decision identity. Handlers must tolerate concurrent replay. */
|
|
41
106
|
deliveryId?: string;
|
|
107
|
+
/** Payloads the invitation carried, for handlers that must undo their work. */
|
|
42
108
|
extensions?: InviteExtensionPayloads | null;
|
|
43
109
|
}
|
|
44
110
|
export interface MemberHookPayload {
|
|
45
111
|
tenantId: string;
|
|
46
112
|
userId: string;
|
|
47
113
|
isTenantOwner: boolean;
|
|
114
|
+
/** Stable invite delivery identity when membership originates from a durable acceptance. */
|
|
48
115
|
deliveryId?: string;
|
|
49
116
|
}
|
|
117
|
+
/** Tenant deletion hooks can repeat; deduplicate non-idempotent effects by operationId. */
|
|
50
118
|
export interface TenantDeletionContext {
|
|
51
119
|
operationId: string;
|
|
52
120
|
}
|
|
@@ -54,6 +122,16 @@ export interface MemberRemovedHookPayload {
|
|
|
54
122
|
tenantId: string;
|
|
55
123
|
userIds: string[];
|
|
56
124
|
}
|
|
125
|
+
/** Why a user was deleted: `self`, the user deleted their own account. */
|
|
126
|
+
export type UserDeletionReason = "self";
|
|
127
|
+
/** What `Hook.USER_DELETED` hands its handlers. */
|
|
128
|
+
export interface UserDeletedHookPayload {
|
|
129
|
+
userId: string;
|
|
130
|
+
email: string;
|
|
131
|
+
/** The workspaces the user was a member of, left before the deletion. */
|
|
132
|
+
tenantIds: string[];
|
|
133
|
+
reason: UserDeletionReason;
|
|
134
|
+
}
|
|
57
135
|
export interface UserRegisteredHookPayload {
|
|
58
136
|
tenantId: string;
|
|
59
137
|
userId: string;
|
|
@@ -101,6 +179,10 @@ export interface HookSignatures {
|
|
|
101
179
|
args: [payload: MemberRemovedHookPayload];
|
|
102
180
|
result: undefined;
|
|
103
181
|
};
|
|
182
|
+
[Hook.USER_DELETED]: {
|
|
183
|
+
args: [payload: UserDeletedHookPayload];
|
|
184
|
+
result: undefined;
|
|
185
|
+
};
|
|
104
186
|
[Hook.USER_REGISTERED]: {
|
|
105
187
|
args: [payload: UserRegisteredHookPayload];
|
|
106
188
|
result: undefined;
|
|
@@ -108,18 +190,68 @@ export interface HookSignatures {
|
|
|
108
190
|
}
|
|
109
191
|
export type HookHandler<H extends Hook> = (...args: HookSignatures[H]["args"]) => Promise<HookSignatures[H]["result"]> | HookSignatures[H]["result"];
|
|
110
192
|
export interface HookRegistrationOptions {
|
|
193
|
+
/**
|
|
194
|
+
* Overrides the module id auto-detected from the registering call site. It
|
|
195
|
+
* only names the handler: the registration is released with the module
|
|
196
|
+
* generation that made it either way.
|
|
197
|
+
*/
|
|
111
198
|
moduleId?: string;
|
|
112
199
|
}
|
|
113
200
|
export interface RegisteredHook<H extends Hook> {
|
|
201
|
+
/** Owning module, undefined when it could not be resolved. */
|
|
114
202
|
moduleId?: string;
|
|
115
203
|
handler: HookHandler<H>;
|
|
116
204
|
}
|
|
205
|
+
/**
|
|
206
|
+
* Hooks whose firing is a state rather than an event: once settled with
|
|
207
|
+
* {@link SettleHook}, a handler registered afterwards runs at once.
|
|
208
|
+
*/
|
|
117
209
|
export type StickyHook = Hook.DATABASE_INITIALIZED;
|
|
210
|
+
/**
|
|
211
|
+
* Run `callback` whenever `name` fires.
|
|
212
|
+
*
|
|
213
|
+
* The handler belongs to the module generation that registers it and is
|
|
214
|
+
* released when that generation is destroyed: a module reloaded in development
|
|
215
|
+
* registers again from its next generation, and its previous handler is gone
|
|
216
|
+
* rather than running beside the new one. Nothing has to be unregistered on
|
|
217
|
+
* the way out.
|
|
218
|
+
*
|
|
219
|
+
* A handler for a {@link StickyHook} that has already settled also runs at
|
|
220
|
+
* once, in the background; a failure is logged, never thrown here.
|
|
221
|
+
*/
|
|
118
222
|
export declare function RegisterHook<H extends Hook>(name: H, callback: HookHandler<H>, options?: HookRegistrationOptions): void;
|
|
223
|
+
/**
|
|
224
|
+
* Drop a handler registered with {@link RegisterHook}, for a module that stops
|
|
225
|
+
* listening while it stays loaded.
|
|
226
|
+
*/
|
|
119
227
|
export declare function UnregisterHook<H extends Hook>(name: H, callback: HookHandler<H>): void;
|
|
228
|
+
/**
|
|
229
|
+
* Exposes the registered handlers along with their owning module, for callers
|
|
230
|
+
* that must invoke each handler with its own arguments — the tenant export
|
|
231
|
+
* archive hands every contributor a differently namespaced archive.
|
|
232
|
+
*/
|
|
120
233
|
export declare function GetRegisteredHooks<H extends Hook>(name: H): RegisteredHook<H>[];
|
|
234
|
+
/**
|
|
235
|
+
* Registers a tenant data export contributor with an explicit module id, used
|
|
236
|
+
* to namespace its archive entries. Prefer it over a bare `RegisterHook` when
|
|
237
|
+
* the contributor writes to the archive: the id then no longer depends on the
|
|
238
|
+
* call site the runtime attributes the registration to.
|
|
239
|
+
*/
|
|
121
240
|
export declare function RegisterTenantDataExportContributor(moduleId: string, handler: HookHandler<Hook.TENANT_DATA_EXPORT>): void;
|
|
122
241
|
export declare function ExecuteHooks<H extends Hook>(name: H, ...args: HookSignatures[H]["args"]): Promise<void>;
|
|
242
|
+
/**
|
|
243
|
+
* Fire a {@link StickyHook} and keep it settled: the handlers registered by
|
|
244
|
+
* then run in series, as {@link ExecuteHooks} runs them, along with any
|
|
245
|
+
* registered while they run, and every handler registered afterwards runs at
|
|
246
|
+
* once until {@link UnsettleHook}. A failure propagates and leaves the hook
|
|
247
|
+
* unsettled.
|
|
248
|
+
*
|
|
249
|
+
* The settled state belongs to the calling module generation and goes with it.
|
|
250
|
+
*/
|
|
123
251
|
export declare function SettleHook<H extends StickyHook>(name: H, ...args: HookSignatures[H]["args"]): Promise<void>;
|
|
252
|
+
/**
|
|
253
|
+
* End what {@link SettleHook} started: later registrations wait for the hook
|
|
254
|
+
* to be settled again.
|
|
255
|
+
*/
|
|
124
256
|
export declare function UnsettleHook(name: StickyHook): void;
|
|
125
257
|
export declare function CollectHooks<H extends Hook>(name: H, ...args: HookSignatures[H]["args"]): Promise<HookSignatures[H]["result"][]>;
|
package/dist/hooks.js
CHANGED
|
@@ -25,11 +25,41 @@ exports.UnsettleHook = UnsettleHook;
|
|
|
25
25
|
exports.CollectHooks = CollectHooks;
|
|
26
26
|
const interface_core_1 = require("@antelopejs/interface-core");
|
|
27
27
|
const logging_1 = require("@antelopejs/interface-core/logging");
|
|
28
|
-
const owned_registry_1 = require("./utils/owned-registry");
|
|
28
|
+
const owned_registry_1 = require("./utils/internal/owned-registry");
|
|
29
29
|
__exportStar(require("./tenant-export"), exports);
|
|
30
30
|
var Hook;
|
|
31
31
|
(function (Hook) {
|
|
32
|
+
/**
|
|
33
|
+
* The database schemas are registered and the DMS is about to serve.
|
|
34
|
+
*
|
|
35
|
+
* It behaves like an already-resolved promise: the DMS fires it once per
|
|
36
|
+
* start, and a handler registered after that — by a module loaded or
|
|
37
|
+
* reloaded while the DMS runs — runs at once, in the background. It fires
|
|
38
|
+
* again on every DMS start, and a reloaded module registers again, so a
|
|
39
|
+
* handler may run several times over the life of a process and must be
|
|
40
|
+
* safe to replay against a live database.
|
|
41
|
+
*/
|
|
32
42
|
Hook["DATABASE_INITIALIZED"] = "database:initialized";
|
|
43
|
+
/**
|
|
44
|
+
* A workspace is being provisioned, and nothing of it is final yet.
|
|
45
|
+
*
|
|
46
|
+
* Handlers run in series, each awaited before the next, and one that throws
|
|
47
|
+
* propagates to whoever is provisioning: that emitter must then unwind the
|
|
48
|
+
* workspace it was creating. That direction is the guarantee, and the reason
|
|
49
|
+
* to fire before the commit rather than after it — a workspace never ends up
|
|
50
|
+
* provisioned while the enrichment a consumer needed failed to be written.
|
|
51
|
+
*
|
|
52
|
+
* The other direction is not guaranteed and cannot be: there is no shared
|
|
53
|
+
* transaction to enlist in. A handler that already returned has committed
|
|
54
|
+
* its own rows, and neither a later handler throwing nor the emitter failing
|
|
55
|
+
* afterwards takes them back. Key that write on `tenantId` so it can be
|
|
56
|
+
* cleaned up along with the workspace, and make it idempotent so a retried
|
|
57
|
+
* signup does not double it.
|
|
58
|
+
*
|
|
59
|
+
* No DMS code fires this hook. Provisioning belongs to the signup flow of a
|
|
60
|
+
* SaaS module, and the contract above is what such an emitter owes its
|
|
61
|
+
* subscribers.
|
|
62
|
+
*/
|
|
33
63
|
Hook["TENANT_BEING_PROVISIONED"] = "tenant:being-provisioned";
|
|
34
64
|
Hook["TENANT_DELETED"] = "tenant:deleted";
|
|
35
65
|
Hook["TENANT_DATA_EXPORT"] = "tenant:data-export";
|
|
@@ -40,8 +70,19 @@ var Hook;
|
|
|
40
70
|
Hook["MEMBER_ADDED"] = "member:added";
|
|
41
71
|
Hook["MEMBER_REMOVED"] = "member:removed";
|
|
42
72
|
Hook["USER_REGISTERED"] = "user:registered";
|
|
73
|
+
/**
|
|
74
|
+
* A user was deleted, by any path — today, deleting one's own account
|
|
75
|
+
* (`reason: "self"`). Fired once the DMS has removed what it keeps about
|
|
76
|
+
* them (memberships, sessions, notifications, sign-in links and the user
|
|
77
|
+
* row); a module keeping per-user or per-tenant rows of its own deletes
|
|
78
|
+
* them here, `tenantIds` naming the workspaces the user belonged to. A
|
|
79
|
+
* failing handler is logged and does not bring the account back.
|
|
80
|
+
*/
|
|
81
|
+
Hook["USER_DELETED"] = "user:deleted";
|
|
43
82
|
})(Hook || (exports.Hook = Hook = {}));
|
|
44
83
|
const hooksRegistry = new Map();
|
|
84
|
+
// Owned by the module generation that settles a hook, so a destroyed DMS
|
|
85
|
+
// takes the settled state down with it even when `stop()` never ran.
|
|
45
86
|
const settledHooks = new owned_registry_1.OwnedRegistry();
|
|
46
87
|
function getHooks(name) {
|
|
47
88
|
const existing = hooksRegistry.get(name);
|
|
@@ -57,6 +98,11 @@ function logHookFailure(name, error) {
|
|
|
57
98
|
function findSettledHook(name) {
|
|
58
99
|
return settledHooks.values().find((settled) => settled.name === name);
|
|
59
100
|
}
|
|
101
|
+
/**
|
|
102
|
+
* Runs a handler registered after its hook settled, without blocking the
|
|
103
|
+
* registration: the registering module's `construct()` or `start()` neither
|
|
104
|
+
* waits for it nor sees its failure.
|
|
105
|
+
*/
|
|
60
106
|
function runLateHandler(settled, callback, owner) {
|
|
61
107
|
const run = async () => callback(...settled.args);
|
|
62
108
|
const runAsOwner = async () => owner ? (0, interface_core_1.RunWithResponsibleModule)(owner, run) : run();
|
|
@@ -66,6 +112,18 @@ function runLateHandler(settled, callback, owner) {
|
|
|
66
112
|
logging_1.Logging.Error(`Hook '${settled.name}' handler of module '${owner ?? "unknown"}' failed:`, error);
|
|
67
113
|
});
|
|
68
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* Run `callback` whenever `name` fires.
|
|
117
|
+
*
|
|
118
|
+
* The handler belongs to the module generation that registers it and is
|
|
119
|
+
* released when that generation is destroyed: a module reloaded in development
|
|
120
|
+
* registers again from its next generation, and its previous handler is gone
|
|
121
|
+
* rather than running beside the new one. Nothing has to be unregistered on
|
|
122
|
+
* the way out.
|
|
123
|
+
*
|
|
124
|
+
* A handler for a {@link StickyHook} that has already settled also runs at
|
|
125
|
+
* once, in the background; a failure is logged, never thrown here.
|
|
126
|
+
*/
|
|
69
127
|
function RegisterHook(name, callback, options) {
|
|
70
128
|
const owner = (0, interface_core_1.GetResponsibleModule)();
|
|
71
129
|
getHooks(name).add({
|
|
@@ -76,9 +134,18 @@ function RegisterHook(name, callback, options) {
|
|
|
76
134
|
if (settled)
|
|
77
135
|
runLateHandler(settled, callback, owner);
|
|
78
136
|
}
|
|
137
|
+
/**
|
|
138
|
+
* Drop a handler registered with {@link RegisterHook}, for a module that stops
|
|
139
|
+
* listening while it stays loaded.
|
|
140
|
+
*/
|
|
79
141
|
function UnregisterHook(name, callback) {
|
|
80
142
|
getHooks(name).remove((entry) => entry.callback === callback);
|
|
81
143
|
}
|
|
144
|
+
/**
|
|
145
|
+
* Exposes the registered handlers along with their owning module, for callers
|
|
146
|
+
* that must invoke each handler with its own arguments — the tenant export
|
|
147
|
+
* archive hands every contributor a differently namespaced archive.
|
|
148
|
+
*/
|
|
82
149
|
function GetRegisteredHooks(name) {
|
|
83
150
|
return getHooks(name)
|
|
84
151
|
.values()
|
|
@@ -87,6 +154,12 @@ function GetRegisteredHooks(name) {
|
|
|
87
154
|
handler: entry.callback,
|
|
88
155
|
}));
|
|
89
156
|
}
|
|
157
|
+
/**
|
|
158
|
+
* Registers a tenant data export contributor with an explicit module id, used
|
|
159
|
+
* to namespace its archive entries. Prefer it over a bare `RegisterHook` when
|
|
160
|
+
* the contributor writes to the archive: the id then no longer depends on the
|
|
161
|
+
* call site the runtime attributes the registration to.
|
|
162
|
+
*/
|
|
90
163
|
function RegisterTenantDataExportContributor(moduleId, handler) {
|
|
91
164
|
RegisterHook(Hook.TENANT_DATA_EXPORT, handler, { moduleId });
|
|
92
165
|
}
|
|
@@ -95,6 +168,15 @@ async function ExecuteHooks(name, ...args) {
|
|
|
95
168
|
await hook.callback(...args);
|
|
96
169
|
}
|
|
97
170
|
}
|
|
171
|
+
/**
|
|
172
|
+
* Fire a {@link StickyHook} and keep it settled: the handlers registered by
|
|
173
|
+
* then run in series, as {@link ExecuteHooks} runs them, along with any
|
|
174
|
+
* registered while they run, and every handler registered afterwards runs at
|
|
175
|
+
* once until {@link UnsettleHook}. A failure propagates and leaves the hook
|
|
176
|
+
* unsettled.
|
|
177
|
+
*
|
|
178
|
+
* The settled state belongs to the calling module generation and goes with it.
|
|
179
|
+
*/
|
|
98
180
|
async function SettleHook(name, ...args) {
|
|
99
181
|
const ran = new Set();
|
|
100
182
|
let pending = getHooks(name).values();
|
|
@@ -109,6 +191,10 @@ async function SettleHook(name, ...args) {
|
|
|
109
191
|
}
|
|
110
192
|
settledHooks.add({ name, args });
|
|
111
193
|
}
|
|
194
|
+
/**
|
|
195
|
+
* End what {@link SettleHook} started: later registrations wait for the hook
|
|
196
|
+
* to be settled again.
|
|
197
|
+
*/
|
|
112
198
|
function UnsettleHook(name) {
|
|
113
199
|
const isSettled = (settled) => settled.name === name;
|
|
114
200
|
while (settledHooks.has(isSettled))
|
package/dist/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,25 @@
|
|
|
1
1
|
import { RegisteringProxy } from "@antelopejs/interface-core";
|
|
2
2
|
import type { HtmlTemplateInfo, HtmlTemplateRef } from "./types";
|
|
3
3
|
export * from "./types";
|
|
4
|
+
/**
|
|
5
|
+
* @internal
|
|
6
|
+
*/
|
|
4
7
|
export declare namespace internal {
|
|
5
8
|
const RegisterHtmlTemplate: RegisteringProxy<(info: HtmlTemplateInfo) => void>;
|
|
6
9
|
}
|
|
10
|
+
/**
|
|
11
|
+
* Renders a template to HTML by calling the frontend render endpoint.
|
|
12
|
+
* @throws Error if the render endpoint is unreachable or returns an error
|
|
13
|
+
*/
|
|
7
14
|
export declare const GenerateHtml: (template: HtmlTemplateRef<unknown>, props: unknown, language?: string | undefined) => Promise<string>;
|
|
15
|
+
/** Returns template info by name, or undefined if not registered. */
|
|
8
16
|
export declare const GetHtmlTemplate: (key: string) => Promise<HtmlTemplateInfo | undefined>;
|
|
17
|
+
/** Returns all registered templates as a Record<name, info>. */
|
|
9
18
|
export declare const GetAllHtmlTemplates: () => Promise<Record<string, HtmlTemplateInfo>>;
|
|
19
|
+
/**
|
|
20
|
+
* Registers an HTML template and returns a typed reference for use with GenerateHtml.
|
|
21
|
+
* @example
|
|
22
|
+
* const WelcomeEmail = RegisterHtmlTemplate<{ userName: string }>("welcome-email");
|
|
23
|
+
* const html = await GenerateHtml(WelcomeEmail, { userName: "John" });
|
|
24
|
+
*/
|
|
10
25
|
export declare function RegisterHtmlTemplate<TProps = unknown>(name: string): HtmlTemplateRef<TProps>;
|
|
@@ -18,13 +18,28 @@ exports.GetAllHtmlTemplates = exports.GetHtmlTemplate = exports.GenerateHtml = e
|
|
|
18
18
|
exports.RegisterHtmlTemplate = RegisterHtmlTemplate;
|
|
19
19
|
const interface_core_1 = require("@antelopejs/interface-core");
|
|
20
20
|
__exportStar(require("./types"), exports);
|
|
21
|
+
/**
|
|
22
|
+
* @internal
|
|
23
|
+
*/
|
|
21
24
|
var internal;
|
|
22
25
|
(function (internal) {
|
|
23
26
|
internal.RegisterHtmlTemplate = new interface_core_1.RegisteringProxy();
|
|
24
27
|
})(internal || (exports.internal = internal = {}));
|
|
28
|
+
/**
|
|
29
|
+
* Renders a template to HTML by calling the frontend render endpoint.
|
|
30
|
+
* @throws Error if the render endpoint is unreachable or returns an error
|
|
31
|
+
*/
|
|
25
32
|
exports.GenerateHtml = (0, interface_core_1.InterfaceFunction)();
|
|
33
|
+
/** Returns template info by name, or undefined if not registered. */
|
|
26
34
|
exports.GetHtmlTemplate = (0, interface_core_1.InterfaceFunction)();
|
|
35
|
+
/** Returns all registered templates as a Record<name, info>. */
|
|
27
36
|
exports.GetAllHtmlTemplates = (0, interface_core_1.InterfaceFunction)();
|
|
37
|
+
/**
|
|
38
|
+
* Registers an HTML template and returns a typed reference for use with GenerateHtml.
|
|
39
|
+
* @example
|
|
40
|
+
* const WelcomeEmail = RegisterHtmlTemplate<{ userName: string }>("welcome-email");
|
|
41
|
+
* const html = await GenerateHtml(WelcomeEmail, { userName: "John" });
|
|
42
|
+
*/
|
|
28
43
|
function RegisterHtmlTemplate(name) {
|
|
29
44
|
internal.RegisterHtmlTemplate.register({
|
|
30
45
|
name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/html-render/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AA4CA,oDAQC;AApDD,+DAGoC;AAGpC,0CAAwB;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/html-render/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AA4CA,oDAQC;AApDD,+DAGoC;AAGpC,0CAAwB;AAExB;;GAEG;AACH,IAAiB,QAAQ,CAIxB;AAJD,WAAiB,QAAQ;IACV,6BAAoB,GAAG,IAAI,iCAAgB,EAErD,CAAC;AACN,CAAC,EAJgB,QAAQ,wBAAR,QAAQ,QAIxB;AAED;;;GAGG;AACU,QAAA,YAAY,GACvB,IAAA,kCAAiB,GAMd,CAAC;AAEN,qEAAqE;AACxD,QAAA,eAAe,GAC1B,IAAA,kCAAiB,GAAiD,CAAC;AAErE,gEAAgE;AACnD,QAAA,mBAAmB,GAC9B,IAAA,kCAAiB,GAA0C,CAAC;AAE9D;;;;;GAKG;AACH,SAAgB,oBAAoB,CAClC,IAAY;IAEZ,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC;QACrC,IAAI;KACL,CAAC,CAAC;IAEH,OAAO,EAAE,IAAI,EAAE,CAAC;AAClB,CAAC"}
|
|
@@ -7,6 +7,10 @@ export interface HtmlTemplateRef<TProps = unknown> {
|
|
|
7
7
|
}
|
|
8
8
|
export interface HtmlRenderConfig {
|
|
9
9
|
serviceSecret: string;
|
|
10
|
+
/**
|
|
11
|
+
* Lifetime of each render-service token, in milliseconds. The frontend
|
|
12
|
+
* render server rejects tokens valid for more than five minutes.
|
|
13
|
+
*/
|
|
10
14
|
serviceTokenLifetime: number;
|
|
11
15
|
renderEndpoint: string;
|
|
12
16
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,25 +1,24 @@
|
|
|
1
|
-
export { AttachmentField, AttachmentSaveRequest, AttachmentSaveResult, GetAttachmentValidationMetadata, SaveComponentFiles,
|
|
1
|
+
export { AttachmentField, AttachmentSaveRequest, AttachmentSaveResult, GetAttachmentValidationMetadata, SaveComponentFiles, } from "./attachments";
|
|
2
2
|
export * from "./component";
|
|
3
3
|
export * from "./component-slots";
|
|
4
4
|
export * from "./constants";
|
|
5
5
|
export { AuthTenantMember, AuthTenantOwner, AuthUserWithPermission, TenantGuardOptions, TenantRequestGuardOptions, authenticateTenantRequest, } from "./guards";
|
|
6
6
|
export * from "./hooks";
|
|
7
|
-
export {
|
|
8
|
-
export * from "./invite-membership";
|
|
9
|
-
export * from "./invite-replacement";
|
|
7
|
+
export { InviteAcceptHandler, InviteCleanupContext, InviteCleanupHandler, InviteCleanupReason, InviteExtensionContext, InviteExtensionOptions, InviteExtensionPayloads, InviteExtensionPlacement, InviteUpdateHandler, RegisterInviteExtension, } from "./invite-extensions";
|
|
10
8
|
export * from "./invite-resolution";
|
|
11
9
|
export { CreateUserInviteTokenOptions, CreateUserInviteTokenResult, INVITE_EXPIRY_DAYS, INVITE_TOKEN_LENGTH, InviteUserToTenantOptions, InviteUserToTenantResult, createUserInviteToken, inviteUserToTenant, inviteeDisplayName, } from "./invites";
|
|
12
10
|
export { LayoutBannerComponentInfo, LayoutBannerContext, LayoutBannerInfo, LayoutBannerTextInfo, LayoutBannerVariant, LayoutBannerVisibility, RegisterLayoutBanner, } from "./layout-banners";
|
|
13
|
-
export { AddFrontendModule, AddFrontendModuleOptions, Category, CategoryInfo, ClearPageLayoutBySlug, DynamicMenuItem, DynamicMenuProviderInfo, DynamicMenuResolver, FrontendModuleMetadata, FrontendModuleOptions, FrontendModuleValue, FrontendRendererMetadata, GetComponentPermissionIds, GetFrontendModules, GetPageLayoutBySlug,
|
|
11
|
+
export { AddFrontendModule, AddFrontendModuleOptions, Category, CategoryInfo, ClearPageLayoutBySlug, DynamicMenuItem, DynamicMenuProviderInfo, DynamicMenuResolver, FrontendModuleMetadata, FrontendModuleOptions, FrontendModuleValue, FrontendRendererMetadata, GetComponentPermissionIds, GetFrontendModules, GetPageLayoutBySlug, GetPermissionId, GetRegisteredPageIds, MODULE_URL_PREFIX, MaybePromise, MenuItemQuery, MenuItemStatus, MenuItemType, MenuItemVariant, MenuOptions, ModuleCatalogContext, ModuleInfo, ModuleReadoutLine, ModuleReadoutTone, ModuleStatus, NotifyMenuChanged, PageController, PageExtensionComponent, PageExtensionInfo, PageInfo, PageLayout, PageLayoutHandler, PageMetadata, PageSetupCleanup, PageSetupContext, PageSetupFunction, PageValidation, RegisterDynamicMenuProvider, RegisterModule, RegisterPage, RegisterPageExtension, RootCategory, RootPageController, isInsideModule, modulesCategory, pagesCategory, settingsCategory, } from "./page";
|
|
14
12
|
export { GetEffectiveUserPermissions, GetPermission, GetPermissions, GetUserPermissions, HasAnyPermission, HasPermission, IsModuleScopedPermission, MarkModuleScopedPermission, Permission, PermissionTree, RegisterPermission, UnmarkModuleScopedPermission, UnregisterPermission, } from "./permissions";
|
|
15
13
|
export { ApplyPermissionsResolvers, PermissionsResolverFn, PermissionsResolverInfo, RegisterPermissionsResolver, } from "./permissions-resolver";
|
|
16
14
|
export { QuickAction, QuickActionCategory, QuickActionCategoryInfo, QuickActionInfo, QuickActionPageTarget, QuickActionTarget, } from "./quick-actions";
|
|
17
15
|
export { PublishMessage, PublishMessageOptions, RealtimeMessage, RealtimeMessageHandler, RegisterPageTopic, SubscribeMessage, UnsubscribeMessage, } from "./realtime";
|
|
16
|
+
export * from "./permission-gate";
|
|
18
17
|
export * from "./request-tenant";
|
|
19
|
-
export { AssertTenantAccess, CheckTenantAccess,
|
|
18
|
+
export { AssertTenantAccess, CheckTenantAccess, RegisterTenantAccessGate, TenantAccessGateFn, TenantAccessGateInfo, TenantAccessResult, } from "./tenant-access";
|
|
20
19
|
export * from "./tenant-export";
|
|
21
20
|
export * from "./tenant-lifecycle";
|
|
22
21
|
export * from "./tenant-ownership";
|
|
23
22
|
export * from "./tenant-scoped-model";
|
|
24
23
|
export * from "./types";
|
|
25
|
-
export {
|
|
24
|
+
export { SignUploadToken, StampUploadFieldTokens } from "./uploads";
|
package/dist/index.js
CHANGED
|
@@ -14,8 +14,17 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.
|
|
18
|
-
exports.StampUploadFieldTokens = exports.SignUploadToken = exports.
|
|
17
|
+
exports.QuickAction = exports.RegisterPermissionsResolver = exports.ApplyPermissionsResolvers = exports.UnregisterPermission = exports.UnmarkModuleScopedPermission = exports.RegisterPermission = exports.MarkModuleScopedPermission = exports.IsModuleScopedPermission = exports.HasPermission = exports.HasAnyPermission = exports.GetUserPermissions = exports.GetPermissions = exports.GetPermission = exports.GetEffectiveUserPermissions = exports.settingsCategory = exports.pagesCategory = exports.modulesCategory = exports.isInsideModule = exports.RootPageController = exports.RootCategory = exports.RegisterPageExtension = exports.RegisterPage = exports.RegisterModule = exports.RegisterDynamicMenuProvider = exports.PageMetadata = exports.PageController = exports.NotifyMenuChanged = exports.MODULE_URL_PREFIX = exports.GetRegisteredPageIds = exports.GetPermissionId = exports.GetPageLayoutBySlug = exports.GetFrontendModules = exports.GetComponentPermissionIds = exports.ClearPageLayoutBySlug = exports.Category = exports.AddFrontendModule = exports.RegisterLayoutBanner = exports.LayoutBannerVariant = exports.inviteeDisplayName = exports.inviteUserToTenant = exports.createUserInviteToken = exports.INVITE_TOKEN_LENGTH = exports.INVITE_EXPIRY_DAYS = exports.RegisterInviteExtension = exports.authenticateTenantRequest = exports.AuthUserWithPermission = exports.AuthTenantOwner = exports.AuthTenantMember = exports.SaveComponentFiles = exports.GetAttachmentValidationMetadata = void 0;
|
|
18
|
+
exports.StampUploadFieldTokens = exports.SignUploadToken = exports.RegisterTenantAccessGate = exports.CheckTenantAccess = exports.AssertTenantAccess = exports.SubscribeMessage = exports.RegisterPageTopic = exports.PublishMessage = exports.QuickActionCategory = void 0;
|
|
19
|
+
// The DMS interface root. It re-exports the public surface of the `dms`
|
|
20
|
+
// interface modules; the domain folders (`auth`, `base`, `notifications`,
|
|
21
|
+
// `html-render`) and the database layer (`db`, `data-controllers`) keep their
|
|
22
|
+
// own subpaths, since they register schemas and controllers as they evaluate.
|
|
23
|
+
//
|
|
24
|
+
// Modules that carry an `internal` implementation namespace are re-exported by
|
|
25
|
+
// name: `internal` is the hook `ImplementInterface` binds, every module declares
|
|
26
|
+
// its own, and merging them here would be both ambiguous and wrong. Reach it
|
|
27
|
+
// through the module's own subpath.
|
|
19
28
|
var attachments_1 = require("./attachments");
|
|
20
29
|
Object.defineProperty(exports, "GetAttachmentValidationMetadata", { enumerable: true, get: function () { return attachments_1.GetAttachmentValidationMetadata; } });
|
|
21
30
|
Object.defineProperty(exports, "SaveComponentFiles", { enumerable: true, get: function () { return attachments_1.SaveComponentFiles; } });
|
|
@@ -29,19 +38,7 @@ Object.defineProperty(exports, "AuthUserWithPermission", { enumerable: true, get
|
|
|
29
38
|
Object.defineProperty(exports, "authenticateTenantRequest", { enumerable: true, get: function () { return guards_1.authenticateTenantRequest; } });
|
|
30
39
|
__exportStar(require("./hooks"), exports);
|
|
31
40
|
var invite_extensions_1 = require("./invite-extensions");
|
|
32
|
-
Object.defineProperty(exports, "HTTP_BAD_REQUEST", { enumerable: true, get: function () { return invite_extensions_1.HTTP_BAD_REQUEST; } });
|
|
33
|
-
Object.defineProperty(exports, "INVITE_EDIT_FORM_SLOT_ID", { enumerable: true, get: function () { return invite_extensions_1.INVITE_EDIT_FORM_SLOT_ID; } });
|
|
34
|
-
Object.defineProperty(exports, "INVITE_EXTENSION_FIELD_SEPARATOR", { enumerable: true, get: function () { return invite_extensions_1.INVITE_EXTENSION_FIELD_SEPARATOR; } });
|
|
35
|
-
Object.defineProperty(exports, "INVITE_FORM_SLOT_ID", { enumerable: true, get: function () { return invite_extensions_1.INVITE_FORM_SLOT_ID; } });
|
|
36
41
|
Object.defineProperty(exports, "RegisterInviteExtension", { enumerable: true, get: function () { return invite_extensions_1.RegisterInviteExtension; } });
|
|
37
|
-
Object.defineProperty(exports, "getInviteExtension", { enumerable: true, get: function () { return invite_extensions_1.getInviteExtension; } });
|
|
38
|
-
Object.defineProperty(exports, "inviteExtensionFieldId", { enumerable: true, get: function () { return invite_extensions_1.inviteExtensionFieldId; } });
|
|
39
|
-
Object.defineProperty(exports, "listInviteExtensionEntries", { enumerable: true, get: function () { return invite_extensions_1.listInviteExtensionEntries; } });
|
|
40
|
-
Object.defineProperty(exports, "listInviteExtensions", { enumerable: true, get: function () { return invite_extensions_1.listInviteExtensions; } });
|
|
41
|
-
Object.defineProperty(exports, "logInviteExtensionFailure", { enumerable: true, get: function () { return invite_extensions_1.logInviteExtensionFailure; } });
|
|
42
|
-
Object.defineProperty(exports, "splitInviteExtensionFieldId", { enumerable: true, get: function () { return invite_extensions_1.splitInviteExtensionFieldId; } });
|
|
43
|
-
__exportStar(require("./invite-membership"), exports);
|
|
44
|
-
__exportStar(require("./invite-replacement"), exports);
|
|
45
42
|
__exportStar(require("./invite-resolution"), exports);
|
|
46
43
|
var invites_1 = require("./invites");
|
|
47
44
|
Object.defineProperty(exports, "INVITE_EXPIRY_DAYS", { enumerable: true, get: function () { return invites_1.INVITE_EXPIRY_DAYS; } });
|
|
@@ -59,14 +56,12 @@ Object.defineProperty(exports, "ClearPageLayoutBySlug", { enumerable: true, get:
|
|
|
59
56
|
Object.defineProperty(exports, "GetComponentPermissionIds", { enumerable: true, get: function () { return page_1.GetComponentPermissionIds; } });
|
|
60
57
|
Object.defineProperty(exports, "GetFrontendModules", { enumerable: true, get: function () { return page_1.GetFrontendModules; } });
|
|
61
58
|
Object.defineProperty(exports, "GetPageLayoutBySlug", { enumerable: true, get: function () { return page_1.GetPageLayoutBySlug; } });
|
|
62
|
-
Object.defineProperty(exports, "GetPendingPageExtensions", { enumerable: true, get: function () { return page_1.GetPendingPageExtensions; } });
|
|
63
59
|
Object.defineProperty(exports, "GetPermissionId", { enumerable: true, get: function () { return page_1.GetPermissionId; } });
|
|
64
60
|
Object.defineProperty(exports, "GetRegisteredPageIds", { enumerable: true, get: function () { return page_1.GetRegisteredPageIds; } });
|
|
65
61
|
Object.defineProperty(exports, "MODULE_URL_PREFIX", { enumerable: true, get: function () { return page_1.MODULE_URL_PREFIX; } });
|
|
66
62
|
Object.defineProperty(exports, "NotifyMenuChanged", { enumerable: true, get: function () { return page_1.NotifyMenuChanged; } });
|
|
67
63
|
Object.defineProperty(exports, "PageController", { enumerable: true, get: function () { return page_1.PageController; } });
|
|
68
64
|
Object.defineProperty(exports, "PageMetadata", { enumerable: true, get: function () { return page_1.PageMetadata; } });
|
|
69
|
-
Object.defineProperty(exports, "ROOT_SLUG", { enumerable: true, get: function () { return page_1.ROOT_SLUG; } });
|
|
70
65
|
Object.defineProperty(exports, "RegisterDynamicMenuProvider", { enumerable: true, get: function () { return page_1.RegisterDynamicMenuProvider; } });
|
|
71
66
|
Object.defineProperty(exports, "RegisterModule", { enumerable: true, get: function () { return page_1.RegisterModule; } });
|
|
72
67
|
Object.defineProperty(exports, "RegisterPage", { enumerable: true, get: function () { return page_1.RegisterPage; } });
|
|
@@ -99,12 +94,12 @@ var realtime_1 = require("./realtime");
|
|
|
99
94
|
Object.defineProperty(exports, "PublishMessage", { enumerable: true, get: function () { return realtime_1.PublishMessage; } });
|
|
100
95
|
Object.defineProperty(exports, "RegisterPageTopic", { enumerable: true, get: function () { return realtime_1.RegisterPageTopic; } });
|
|
101
96
|
Object.defineProperty(exports, "SubscribeMessage", { enumerable: true, get: function () { return realtime_1.SubscribeMessage; } });
|
|
97
|
+
__exportStar(require("./permission-gate"), exports);
|
|
102
98
|
__exportStar(require("./request-tenant"), exports);
|
|
103
99
|
var tenant_access_1 = require("./tenant-access");
|
|
104
100
|
Object.defineProperty(exports, "AssertTenantAccess", { enumerable: true, get: function () { return tenant_access_1.AssertTenantAccess; } });
|
|
105
101
|
Object.defineProperty(exports, "CheckTenantAccess", { enumerable: true, get: function () { return tenant_access_1.CheckTenantAccess; } });
|
|
106
102
|
Object.defineProperty(exports, "RegisterTenantAccessGate", { enumerable: true, get: function () { return tenant_access_1.RegisterTenantAccessGate; } });
|
|
107
|
-
Object.defineProperty(exports, "gateAllowsSurface", { enumerable: true, get: function () { return tenant_access_1.gateAllowsSurface; } });
|
|
108
103
|
__exportStar(require("./tenant-export"), exports);
|
|
109
104
|
__exportStar(require("./tenant-lifecycle"), exports);
|
|
110
105
|
__exportStar(require("./tenant-ownership"), exports);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,wEAAwE;AACxE,0EAA0E;AAC1E,8EAA8E;AAC9E,8EAA8E;AAC9E,EAAE;AACF,+EAA+E;AAC/E,iFAAiF;AACjF,6EAA6E;AAC7E,oCAAoC;AACpC,6CAMuB;AAFrB,8HAAA,+BAA+B,OAAA;AAC/B,iHAAA,kBAAkB,OAAA;AAEpB,8CAA4B;AAC5B,oDAAkC;AAClC,8CAA4B;AAC5B,mCAOkB;AANhB,0GAAA,gBAAgB,OAAA;AAChB,yGAAA,eAAe,OAAA;AACf,gHAAA,sBAAsB,OAAA;AAGtB,mHAAA,yBAAyB,OAAA;AAE3B,0CAAwB;AACxB,yDAW6B;AAD3B,4HAAA,uBAAuB,OAAA;AAEzB,sDAAoC;AACpC,qCAUmB;AAPjB,6GAAA,kBAAkB,OAAA;AAClB,8GAAA,mBAAmB,OAAA;AAGnB,gHAAA,qBAAqB,OAAA;AACrB,6GAAA,kBAAkB,OAAA;AAClB,6GAAA,kBAAkB,OAAA;AAEpB,mDAQ0B;AAHxB,qHAAA,mBAAmB,OAAA;AAEnB,sHAAA,oBAAoB,OAAA;AAEtB,+BAoDgB;AAnDd,yGAAA,iBAAiB,OAAA;AAEjB,gGAAA,QAAQ,OAAA;AAER,6GAAA,qBAAqB,OAAA;AAQrB,iHAAA,yBAAyB,OAAA;AACzB,0GAAA,kBAAkB,OAAA;AAClB,2GAAA,mBAAmB,OAAA;AACnB,uGAAA,eAAe,OAAA;AACf,4GAAA,oBAAoB,OAAA;AACpB,yGAAA,iBAAiB,OAAA;AAYjB,yGAAA,iBAAiB,OAAA;AACjB,sGAAA,cAAc,OAAA;AAMd,oGAAA,YAAY,OAAA;AAKZ,mHAAA,2BAA2B,OAAA;AAC3B,sGAAA,cAAc,OAAA;AACd,oGAAA,YAAY,OAAA;AACZ,6GAAA,qBAAqB,OAAA;AACrB,oGAAA,YAAY,OAAA;AACZ,0GAAA,kBAAkB,OAAA;AAClB,sGAAA,cAAc,OAAA;AACd,uGAAA,eAAe,OAAA;AACf,qGAAA,aAAa,OAAA;AACb,wGAAA,gBAAgB,OAAA;AAElB,6CAcuB;AAbrB,0HAAA,2BAA2B,OAAA;AAC3B,4GAAA,aAAa,OAAA;AACb,6GAAA,cAAc,OAAA;AACd,iHAAA,kBAAkB,OAAA;AAClB,+GAAA,gBAAgB,OAAA;AAChB,4GAAA,aAAa,OAAA;AACb,uHAAA,wBAAwB,OAAA;AACxB,yHAAA,0BAA0B,OAAA;AAG1B,iHAAA,kBAAkB,OAAA;AAClB,2HAAA,4BAA4B,OAAA;AAC5B,mHAAA,oBAAoB,OAAA;AAEtB,+DAKgC;AAJ9B,iIAAA,yBAAyB,OAAA;AAGzB,mIAAA,2BAA2B,OAAA;AAE7B,iDAOyB;AANvB,4GAAA,WAAW,OAAA;AACX,oHAAA,mBAAmB,OAAA;AAMrB,uCAQoB;AAPlB,0GAAA,cAAc,OAAA;AAId,6GAAA,iBAAiB,OAAA;AACjB,4GAAA,gBAAgB,OAAA;AAGlB,oDAAkC;AAClC,mDAAiC;AACjC,iDAOyB;AANvB,mHAAA,kBAAkB,OAAA;AAClB,kHAAA,iBAAiB,OAAA;AACjB,yHAAA,wBAAwB,OAAA;AAK1B,kDAAgC;AAChC,qDAAmC;AACnC,qDAAmC;AACnC,wDAAsC;AACtC,0CAAwB;AACxB,qCAAoE;AAA3D,0GAAA,eAAe,OAAA;AAAE,iHAAA,sBAAsB,OAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { RequestContext } from "@antelopejs/interface-api";
|
|
2
|
+
import type { DataControllerCallback } from "@antelopejs/interface-data-api";
|
|
3
|
+
/**
|
|
4
|
+
* Trusted inputs used to wrap a table-view attachment write.
|
|
5
|
+
*
|
|
6
|
+
* @internal
|
|
7
|
+
*/
|
|
8
|
+
export interface TableViewAttachmentSaveRequest {
|
|
9
|
+
controller: unknown;
|
|
10
|
+
route: DataControllerCallback;
|
|
11
|
+
context: RequestContext;
|
|
12
|
+
params: unknown;
|
|
13
|
+
args: unknown[];
|
|
14
|
+
mode: "save" | "delete";
|
|
15
|
+
componentIds: string[];
|
|
16
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachments.js","sourceRoot":"","sources":["../../src/internal/attachments.ts"],"names":[],"mappings":""}
|