@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
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.KANBAN_DISPLAY_ID = exports.TABLE_DISPLAY_ID = exports.
|
|
4
|
-
exports.TABLE_VIEW_COMPONENT_NAME = "dms-table-view";
|
|
3
|
+
exports.GROUPED_DISPLAY_ID = exports.CARDS_DISPLAY_ID = exports.KANBAN_DISPLAY_ID = exports.TABLE_DISPLAY_ID = exports.MAX_TABLE_PAGE_SIZE = exports.DEFAULT_ROW_ID_FIELD = void 0;
|
|
5
4
|
exports.DEFAULT_ROW_ID_FIELD = "_id";
|
|
5
|
+
/** The most rows a table lists per page, whoever picks the size. */
|
|
6
|
+
exports.MAX_TABLE_PAGE_SIZE = 50;
|
|
7
|
+
/** Id of the built-in grid display. */
|
|
6
8
|
exports.TABLE_DISPLAY_ID = "table";
|
|
9
|
+
/** Id of the built-in kanban display. */
|
|
7
10
|
exports.KANBAN_DISPLAY_ID = "kanban";
|
|
11
|
+
/** Id of the built-in card grid display. */
|
|
12
|
+
exports.CARDS_DISPLAY_ID = "cards";
|
|
13
|
+
/** Id of the built-in grouped display (see `grouped`). */
|
|
14
|
+
exports.GROUPED_DISPLAY_ID = "grouped";
|
|
8
15
|
//# sourceMappingURL=options.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/base/table-view/options.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/base/table-view/options.ts"],"names":[],"mappings":";;;AA2Ba,QAAA,oBAAoB,GAAG,KAAK,CAAC;AAE1C,oEAAoE;AACvD,QAAA,mBAAmB,GAAG,EAAE,CAAC;AA6sBtC,uCAAuC;AAC1B,QAAA,gBAAgB,GAAG,OAAO,CAAC;AACxC,yCAAyC;AAC5B,QAAA,iBAAiB,GAAG,QAAQ,CAAC;AAC1C,4CAA4C;AAC/B,QAAA,gBAAgB,GAAG,OAAO,CAAC;AACxC,0DAA0D;AAC7C,QAAA,kBAAkB,GAAG,SAAS,CAAC"}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import type { DataControllerCallback } from "@antelopejs/interface-data-api";
|
|
2
|
-
export declare const REALTIME_PRESENCE_QUERY = "_presence";
|
|
3
|
-
export declare const REALTIME_PRESENCE_ACQUIRE_VALUE = "1";
|
|
4
1
|
export type RealtimeMutationEventType = "created" | "updated" | "deleted";
|
|
5
2
|
export interface RealtimeMutationContext {
|
|
6
3
|
controllerLocation: string;
|
|
@@ -22,25 +19,37 @@ export interface RealtimePresenceContext {
|
|
|
22
19
|
rowId: string;
|
|
23
20
|
actor: RealtimePresenceActor;
|
|
24
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* The topic the row changes of the table view served at `controllerLocation`
|
|
24
|
+
* are published on.
|
|
25
|
+
*/
|
|
25
26
|
export declare function tableViewRowTopic(controllerLocation: string): string;
|
|
27
|
+
/**
|
|
28
|
+
* The topic the presence on the rows of the table view served at
|
|
29
|
+
* `controllerLocation` is tracked on.
|
|
30
|
+
*/
|
|
26
31
|
export declare function tableViewPresenceTopic(controllerLocation: string): string;
|
|
27
|
-
|
|
32
|
+
/**
|
|
33
|
+
* @internal
|
|
34
|
+
*/
|
|
28
35
|
export declare namespace internal {
|
|
36
|
+
/** Delivers a mutation of a table view's rows to the sessions watching it. */
|
|
29
37
|
const PublishMutation: (context: RealtimeMutationContext) => Promise<void>;
|
|
38
|
+
/** Records that a session holds a row of a table view open. */
|
|
30
39
|
const AcquirePresence: (context: RealtimePresenceContext) => Promise<void>;
|
|
31
40
|
}
|
|
32
|
-
|
|
41
|
+
/** Called after a table view row mutation is published; see `registerRealtimeMutationListener`. */
|
|
42
|
+
export type RealtimeMutationListener = (context: RealtimeMutationContext) => void | Promise<void>;
|
|
43
|
+
/**
|
|
44
|
+
* Register an additional realtime-mutation listener. Listeners are additive
|
|
45
|
+
* side observers: they run after the DMS has published the mutation, and their
|
|
46
|
+
* failures are logged, never propagated to the mutating request.
|
|
47
|
+
*
|
|
48
|
+
* The listener belongs to the module generation that registers it and is
|
|
49
|
+
* released when that generation is destroyed, so a reloaded module does not
|
|
50
|
+
* leave its previous listener behind. Registering one already registered is a
|
|
51
|
+
* no-op.
|
|
52
|
+
*/
|
|
33
53
|
export declare function registerRealtimeMutationListener(listener: RealtimeMutationListener): void;
|
|
54
|
+
/** Drop a listener, for a module that stops listening while it stays loaded. */
|
|
34
55
|
export declare function unregisterRealtimeMutationListener(listener: RealtimeMutationListener): void;
|
|
35
|
-
type IdExtractor = (args: unknown[], result: unknown, idKey: string) => string[];
|
|
36
|
-
export declare const extractFromResult: IdExtractor;
|
|
37
|
-
export declare const extractSingleParamId: IdExtractor;
|
|
38
|
-
export declare const extractMultiParamId: IdExtractor;
|
|
39
|
-
export declare const extractBulkArgIds: IdExtractor;
|
|
40
|
-
interface MutationConfig {
|
|
41
|
-
eventType: RealtimeMutationEventType;
|
|
42
|
-
extractIds: IdExtractor;
|
|
43
|
-
}
|
|
44
|
-
export declare function withRealtimeMutation<T extends DataControllerCallback>(config: MutationConfig, baseRoute: T): DataControllerCallback;
|
|
45
|
-
export declare function withPresenceAcquire<T extends DataControllerCallback>(baseRoute: T): DataControllerCallback;
|
|
46
|
-
export {};
|
|
@@ -1,153 +1,56 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.internal = void 0;
|
|
4
4
|
exports.tableViewRowTopic = tableViewRowTopic;
|
|
5
5
|
exports.tableViewPresenceTopic = tableViewPresenceTopic;
|
|
6
|
-
exports.registerTableViewPageTopics = registerTableViewPageTopics;
|
|
7
6
|
exports.registerRealtimeMutationListener = registerRealtimeMutationListener;
|
|
8
7
|
exports.unregisterRealtimeMutationListener = unregisterRealtimeMutationListener;
|
|
9
|
-
exports.withRealtimeMutation = withRealtimeMutation;
|
|
10
|
-
exports.withPresenceAcquire = withPresenceAcquire;
|
|
11
|
-
const interface_api_1 = require("@antelopejs/interface-api");
|
|
12
8
|
const interface_core_1 = require("@antelopejs/interface-core");
|
|
13
|
-
const
|
|
14
|
-
const auth_1 = require("../../auth");
|
|
15
|
-
const realtime_1 = require("../../realtime");
|
|
16
|
-
const owned_registry_1 = require("../../utils/owned-registry");
|
|
17
|
-
const meta_1 = require("./meta");
|
|
18
|
-
const REALTIME_SESSION_HEADER = "x-realtime-session";
|
|
19
|
-
exports.REALTIME_PRESENCE_QUERY = "_presence";
|
|
20
|
-
exports.REALTIME_PRESENCE_ACQUIRE_VALUE = "1";
|
|
21
|
-
const PARAMS_INDEX = 1;
|
|
22
|
-
const BULK_IDS_ARG_INDEX = 1;
|
|
9
|
+
const realtime_listeners_1 = require("./internal/realtime-listeners");
|
|
23
10
|
const ROW_TOPIC_PREFIX = "tableview:row:";
|
|
24
11
|
const PRESENCE_TOPIC_PREFIX = "tableview:presence:";
|
|
12
|
+
/**
|
|
13
|
+
* The topic the row changes of the table view served at `controllerLocation`
|
|
14
|
+
* are published on.
|
|
15
|
+
*/
|
|
25
16
|
function tableViewRowTopic(controllerLocation) {
|
|
26
17
|
return `${ROW_TOPIC_PREFIX}${controllerLocation}`;
|
|
27
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* The topic the presence on the rows of the table view served at
|
|
21
|
+
* `controllerLocation` is tracked on.
|
|
22
|
+
*/
|
|
28
23
|
function tableViewPresenceTopic(controllerLocation) {
|
|
29
24
|
return `${PRESENCE_TOPIC_PREFIX}${controllerLocation}`;
|
|
30
25
|
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}
|
|
26
|
+
/**
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
35
29
|
var internal;
|
|
36
30
|
(function (internal) {
|
|
31
|
+
/** Delivers a mutation of a table view's rows to the sessions watching it. */
|
|
37
32
|
internal.PublishMutation = (0, interface_core_1.InterfaceFunction)();
|
|
33
|
+
/** Records that a session holds a row of a table view open. */
|
|
38
34
|
internal.AcquirePresence = (0, interface_core_1.InterfaceFunction)();
|
|
39
35
|
})(internal || (exports.internal = internal = {}));
|
|
40
|
-
|
|
36
|
+
/**
|
|
37
|
+
* Register an additional realtime-mutation listener. Listeners are additive
|
|
38
|
+
* side observers: they run after the DMS has published the mutation, and their
|
|
39
|
+
* failures are logged, never propagated to the mutating request.
|
|
40
|
+
*
|
|
41
|
+
* The listener belongs to the module generation that registers it and is
|
|
42
|
+
* released when that generation is destroyed, so a reloaded module does not
|
|
43
|
+
* leave its previous listener behind. Registering one already registered is a
|
|
44
|
+
* no-op.
|
|
45
|
+
*/
|
|
41
46
|
function registerRealtimeMutationListener(listener) {
|
|
42
|
-
if (realtimeMutationListeners.has((registered) => registered === listener)) {
|
|
47
|
+
if (realtime_listeners_1.realtimeMutationListeners.has((registered) => registered === listener)) {
|
|
43
48
|
return;
|
|
44
49
|
}
|
|
45
|
-
realtimeMutationListeners.add(listener);
|
|
50
|
+
realtime_listeners_1.realtimeMutationListeners.add(listener);
|
|
46
51
|
}
|
|
52
|
+
/** Drop a listener, for a module that stops listening while it stays loaded. */
|
|
47
53
|
function unregisterRealtimeMutationListener(listener) {
|
|
48
|
-
realtimeMutationListeners.remove((registered) => registered === listener);
|
|
49
|
-
}
|
|
50
|
-
async function dispatchRealtimeMutation(context) {
|
|
51
|
-
await internal.PublishMutation(context);
|
|
52
|
-
for (const listener of realtimeMutationListeners.values()) {
|
|
53
|
-
try {
|
|
54
|
-
await listener(context);
|
|
55
|
-
}
|
|
56
|
-
catch (error) {
|
|
57
|
-
logging_1.Logging.Error(`[DMS] Realtime mutation listener failed for '${context.controllerLocation}':`, error);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
const extractFromResult = (_args, result, idKey) => {
|
|
62
|
-
if (!result || typeof result !== "object")
|
|
63
|
-
return [];
|
|
64
|
-
const value = result[idKey];
|
|
65
|
-
return typeof value === "string" ? [value] : [];
|
|
66
|
-
};
|
|
67
|
-
exports.extractFromResult = extractFromResult;
|
|
68
|
-
const extractSingleParamId = (args) => {
|
|
69
|
-
const params = args[PARAMS_INDEX];
|
|
70
|
-
return params?.id ? [params.id] : [];
|
|
71
|
-
};
|
|
72
|
-
exports.extractSingleParamId = extractSingleParamId;
|
|
73
|
-
const extractMultiParamId = (args) => {
|
|
74
|
-
const params = args[PARAMS_INDEX];
|
|
75
|
-
if (!params?.id)
|
|
76
|
-
return [];
|
|
77
|
-
return Array.isArray(params.id) ? params.id : [params.id];
|
|
78
|
-
};
|
|
79
|
-
exports.extractMultiParamId = extractMultiParamId;
|
|
80
|
-
const extractBulkArgIds = (args) => {
|
|
81
|
-
const ids = args[BULK_IDS_ARG_INDEX];
|
|
82
|
-
if (!ids)
|
|
83
|
-
return [];
|
|
84
|
-
return Array.isArray(ids) ? ids : [ids];
|
|
85
|
-
};
|
|
86
|
-
exports.extractBulkArgIds = extractBulkArgIds;
|
|
87
|
-
const isRealtimeEnabled = (target) => (0, meta_1.getTableViewMetaFor)(target).options.realtime !== false;
|
|
88
|
-
function withRealtimeMutation(config, baseRoute) {
|
|
89
|
-
return {
|
|
90
|
-
method: baseRoute.method,
|
|
91
|
-
args: [
|
|
92
|
-
...baseRoute.args,
|
|
93
|
-
(0, interface_api_1.Parameter)(REALTIME_SESSION_HEADER, "header"),
|
|
94
|
-
(0, auth_1.AuthUser)(),
|
|
95
|
-
],
|
|
96
|
-
func: async function (...allArgs) {
|
|
97
|
-
const user = allArgs.pop();
|
|
98
|
-
const sessionId = allArgs.pop();
|
|
99
|
-
const result = await baseRoute.func.apply(this, allArgs);
|
|
100
|
-
if (!isRealtimeEnabled(this))
|
|
101
|
-
return result;
|
|
102
|
-
const meta = (0, meta_1.getTableViewMetaFor)(this);
|
|
103
|
-
const idKey = meta.options.rowIdKey || "_id";
|
|
104
|
-
const ids = config.extractIds(allArgs, result, idKey);
|
|
105
|
-
if (ids.length === 0 && config.eventType !== "created")
|
|
106
|
-
return result;
|
|
107
|
-
await dispatchRealtimeMutation({
|
|
108
|
-
controllerLocation: (0, meta_1.getControllerLocation)(this),
|
|
109
|
-
rowIdKey: idKey,
|
|
110
|
-
eventType: config.eventType,
|
|
111
|
-
ids,
|
|
112
|
-
sessionId,
|
|
113
|
-
actor: { id: user._id, displayName: user.name || user.email },
|
|
114
|
-
});
|
|
115
|
-
return result;
|
|
116
|
-
},
|
|
117
|
-
};
|
|
118
|
-
}
|
|
119
|
-
function withPresenceAcquire(baseRoute) {
|
|
120
|
-
return {
|
|
121
|
-
method: baseRoute.method,
|
|
122
|
-
args: [
|
|
123
|
-
...baseRoute.args,
|
|
124
|
-
(0, interface_api_1.Parameter)(REALTIME_SESSION_HEADER, "header"),
|
|
125
|
-
(0, interface_api_1.Parameter)(exports.REALTIME_PRESENCE_QUERY, "query"),
|
|
126
|
-
(0, auth_1.AuthUser)(),
|
|
127
|
-
],
|
|
128
|
-
func: async function (...allArgs) {
|
|
129
|
-
const user = allArgs.pop();
|
|
130
|
-
const presenceFlag = allArgs.pop();
|
|
131
|
-
const sessionId = allArgs.pop();
|
|
132
|
-
const result = await baseRoute.func.apply(this, allArgs);
|
|
133
|
-
if (presenceFlag !== exports.REALTIME_PRESENCE_ACQUIRE_VALUE ||
|
|
134
|
-
!sessionId ||
|
|
135
|
-
!isRealtimeEnabled(this)) {
|
|
136
|
-
return result;
|
|
137
|
-
}
|
|
138
|
-
const params = allArgs[PARAMS_INDEX];
|
|
139
|
-
if (!params?.id)
|
|
140
|
-
return result;
|
|
141
|
-
const meta = (0, meta_1.getTableViewMetaFor)(this);
|
|
142
|
-
await internal.AcquirePresence({
|
|
143
|
-
controllerLocation: (0, meta_1.getControllerLocation)(this),
|
|
144
|
-
rowIdKey: meta.options.rowIdKey || "_id",
|
|
145
|
-
sessionId,
|
|
146
|
-
rowId: params.id,
|
|
147
|
-
actor: { id: user._id, displayName: user.name || user.email },
|
|
148
|
-
});
|
|
149
|
-
return result;
|
|
150
|
-
},
|
|
151
|
-
};
|
|
54
|
+
realtime_listeners_1.realtimeMutationListeners.remove((registered) => registered === listener);
|
|
152
55
|
}
|
|
153
56
|
//# sourceMappingURL=realtime.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realtime.js","sourceRoot":"","sources":["../../../src/base/table-view/realtime.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"realtime.js","sourceRoot":"","sources":["../../../src/base/table-view/realtime.ts"],"names":[],"mappings":";;;AAkCA,8CAEC;AAMD,wDAEC;AA8BD,4EAOC;AAGD,gFAIC;AAxFD,+DAA+D;AAC/D,sEAA0E;AAC1E,MAAM,gBAAgB,GAAG,gBAAgB,CAAC;AAC1C,MAAM,qBAAqB,GAAG,qBAAqB,CAAC;AA2BpD;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,kBAA0B;IAC1D,OAAO,GAAG,gBAAgB,GAAG,kBAAkB,EAAE,CAAC;AACpD,CAAC;AAED;;;GAGG;AACH,SAAgB,sBAAsB,CAAC,kBAA0B;IAC/D,OAAO,GAAG,qBAAqB,GAAG,kBAAkB,EAAE,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,IAAiB,QAAQ,CAQxB;AARD,WAAiB,QAAQ;IACvB,8EAA8E;IACjE,wBAAe,GAC1B,IAAA,kCAAiB,GAAuD,CAAC;IAE3E,+DAA+D;IAClD,wBAAe,GAC1B,IAAA,kCAAiB,GAAuD,CAAC;AAC7E,CAAC,EARgB,QAAQ,wBAAR,QAAQ,QAQxB;AAOD;;;;;;;;;GASG;AACH,SAAgB,gCAAgC,CAC9C,QAAkC;IAElC,IAAI,8CAAyB,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,KAAK,QAAQ,CAAC,EAAE,CAAC;QAC3E,OAAO;IACT,CAAC;IACD,8CAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC;AAED,gFAAgF;AAChF,SAAgB,kCAAkC,CAChD,QAAkC;IAElC,8CAAyB,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC;AAC5E,CAAC"}
|
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
import type { ControllerClass } from "@antelopejs/interface-api";
|
|
2
2
|
import type { FormBuilder } from "../form-types";
|
|
3
|
-
import { type ResourceFormBlockOptions
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
import { type ResourceFormBlockOptions } from "../resource-form-schema";
|
|
4
|
+
export { ROUTE_PARAM_ROW_ID } from "../resource-form-schema";
|
|
5
|
+
/**
|
|
6
|
+
* A form over one table, for a page: pick the table and the mode, and its
|
|
7
|
+
* fields, routes and methods follow — the same form a TableView opens for that
|
|
8
|
+
* mode. `Form` stays the way to reach an endpoint of one's own.
|
|
9
|
+
*
|
|
10
|
+
* The row `edit` and `view` open is read from the page's query string by
|
|
11
|
+
* default ({@link QUERY_ROW_ID}): a page the builder writes has no `:id`
|
|
12
|
+
* segment to read it from.
|
|
13
|
+
*/
|
|
8
14
|
export declare function ResourceForm<T extends ControllerClass>(controller: T, options: ResourceFormBlockOptions): FormBuilder;
|
|
@@ -1,70 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ROUTE_PARAM_ROW_ID = void 0;
|
|
4
|
-
exports.stampAttachmentFields = stampAttachmentFields;
|
|
5
|
-
exports.resourceForm = resourceForm;
|
|
6
4
|
exports.ResourceForm = ResourceForm;
|
|
7
|
-
const interface_core_1 = require("@antelopejs/interface-core");
|
|
8
|
-
const core_1 = require("../data-types/core");
|
|
9
5
|
const form_schema_1 = require("../form-schema");
|
|
10
6
|
const resource_form_schema_1 = require("../resource-form-schema");
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
};
|
|
24
|
-
case "edit":
|
|
25
|
-
return {
|
|
26
|
-
fetchUrl: `${location}/get?id=${rowId}&${realtime_1.REALTIME_PRESENCE_QUERY}=${realtime_1.REALTIME_PRESENCE_ACQUIRE_VALUE}`,
|
|
27
|
-
fetchUrlMethod: types_1.HttpMethod.get,
|
|
28
|
-
submitUrl: `${location}/edit?id=${rowId}`,
|
|
29
|
-
submitUrlMethod: types_1.HttpMethod.put,
|
|
30
|
-
};
|
|
31
|
-
case "view":
|
|
32
|
-
return {
|
|
33
|
-
fetchUrl: `${location}/get?id=${rowId}`,
|
|
34
|
-
fetchUrlMethod: types_1.HttpMethod.get,
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
function stampAttachmentFields(meta, location) {
|
|
39
|
-
for (const [columnKey, column] of Object.entries(meta.columns)) {
|
|
40
|
-
const typeId = (0, core_1.getDataTypeId)(column.type);
|
|
41
|
-
if (typeId === "file" || typeId === "image") {
|
|
42
|
-
const typeOptions = column.type.options;
|
|
43
|
-
typeOptions.attachmentField = `${location}#${columnKey}`;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
function resourceForm(controller, mode, options = {}) {
|
|
48
|
-
const meta = (0, interface_core_1.GetMetadata)(controller, meta_1.TableViewMeta);
|
|
49
|
-
const { location } = meta.config;
|
|
50
|
-
stampAttachmentFields(meta, location);
|
|
51
|
-
const fields = meta.getFormFields(mode);
|
|
52
|
-
if (fields.length === 0) {
|
|
53
|
-
return undefined;
|
|
54
|
-
}
|
|
55
|
-
const { rowId = exports.ROUTE_PARAM_ROW_ID, ...formOptions } = options;
|
|
56
|
-
const form = (0, form_schema_1.Form)({
|
|
57
|
-
...formOptions,
|
|
58
|
-
fields,
|
|
59
|
-
...formRoutes(location, mode, rowId),
|
|
60
|
-
});
|
|
61
|
-
if (mode !== "view")
|
|
62
|
-
meta.addResourceFormBuilder(form);
|
|
63
|
-
return form;
|
|
64
|
-
}
|
|
7
|
+
const resource_form_1 = require("./internal/resource-form");
|
|
8
|
+
var resource_form_schema_2 = require("../resource-form-schema");
|
|
9
|
+
Object.defineProperty(exports, "ROUTE_PARAM_ROW_ID", { enumerable: true, get: function () { return resource_form_schema_2.ROUTE_PARAM_ROW_ID; } });
|
|
10
|
+
/**
|
|
11
|
+
* A form over one table, for a page: pick the table and the mode, and its
|
|
12
|
+
* fields, routes and methods follow — the same form a TableView opens for that
|
|
13
|
+
* mode. `Form` stays the way to reach an endpoint of one's own.
|
|
14
|
+
*
|
|
15
|
+
* The row `edit` and `view` open is read from the page's query string by
|
|
16
|
+
* default ({@link QUERY_ROW_ID}): a page the builder writes has no `:id`
|
|
17
|
+
* segment to read it from.
|
|
18
|
+
*/
|
|
65
19
|
function ResourceForm(controller, options) {
|
|
66
20
|
const { mode, rowId = resource_form_schema_1.QUERY_ROW_ID, ...formOptions } = options;
|
|
67
|
-
const form = resourceForm(controller, mode, { ...formOptions, rowId });
|
|
21
|
+
const form = (0, resource_form_1.resourceForm)(controller, mode, { ...formOptions, rowId });
|
|
22
|
+
// A resource with nothing to fill in for this mode still renders as a form —
|
|
23
|
+
// its title, and no field — rather than as a hole in the page.
|
|
68
24
|
return form ?? (0, form_schema_1.Form)({ ...formOptions, fields: [] });
|
|
69
25
|
}
|
|
70
26
|
//# sourceMappingURL=resource-form.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-form.js","sourceRoot":"","sources":["../../../src/base/table-view/resource-form.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"resource-form.js","sourceRoot":"","sources":["../../../src/base/table-view/resource-form.ts"],"names":[],"mappings":";;;AAoBA,oCASC;AA5BD,gDAAsC;AAEtC,kEAGiC;AACjC,4DAAwD;AAExD,gEAA6D;AAApD,0HAAA,kBAAkB,OAAA;AAE3B;;;;;;;;GAQG;AACH,SAAgB,YAAY,CAC1B,UAAa,EACb,OAAiC;IAEjC,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,mCAAY,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC;IAC/D,MAAM,IAAI,GAAG,IAAA,4BAAY,EAAC,UAAU,EAAE,IAAI,EAAE,EAAE,GAAG,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;IACvE,6EAA6E;IAC7E,+DAA+D;IAC/D,OAAO,IAAI,IAAI,IAAA,kBAAI,EAAC,EAAE,GAAG,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;AACtD,CAAC"}
|
|
@@ -4,10 +4,38 @@ export declare namespace TableViewRoutes {
|
|
|
4
4
|
const Get: DataControllerCallback;
|
|
5
5
|
const List: DataControllerCallback;
|
|
6
6
|
const Select: DataControllerCallbackWithOptions<any>;
|
|
7
|
+
/**
|
|
8
|
+
* `GET <location>/count`: the row count for one filter set. It does not
|
|
9
|
+
* serve the filter tab counters, which go through {@link CountBatch}.
|
|
10
|
+
*/
|
|
7
11
|
const Count: DataControllerCallback;
|
|
12
|
+
/**
|
|
13
|
+
* `POST <location>/count/batch`: one count per query, in a single request.
|
|
14
|
+
* Filter tabs with counters require the controller to mount
|
|
15
|
+
* `countBatch: TableViewRoutes.CountBatch`; a table view declaring `tabs`
|
|
16
|
+
* without it gets failing counters and a registration warning.
|
|
17
|
+
*/
|
|
8
18
|
const CountBatch: DataControllerCallbackWithOptions<any>;
|
|
19
|
+
/**
|
|
20
|
+
* `GET <location>/summary?ids=<id>`: the footer summaries a table view
|
|
21
|
+
* declared (`footer.summary`), computed over every row its filters and
|
|
22
|
+
* search list. Mount it as `summary: TableViewRoutes.Summary`; a table view
|
|
23
|
+
* declaring summaries without it gets a registration warning.
|
|
24
|
+
*/
|
|
25
|
+
const Summary: DataControllerCallbackWithOptions<any>;
|
|
9
26
|
const New: DataControllerCallback;
|
|
27
|
+
/**
|
|
28
|
+
* `PUT <location>/edit`: a partial update. Only the fields the body carries
|
|
29
|
+
* change: a field left out keeps its stored value, `null` (or an empty
|
|
30
|
+
* value) clears it. A mandatory field may be left out but not cleared.
|
|
31
|
+
*/
|
|
10
32
|
const Edit: DataControllerCallback;
|
|
33
|
+
/**
|
|
34
|
+
* `Edit` around another write: the permission check, guard, row rules, file
|
|
35
|
+
* promotion and realtime broadcast still wrap it, so it runs only once the
|
|
36
|
+
* edit is allowed. `baseRoute` takes the arguments of `DefaultRoutes.Edit`,
|
|
37
|
+
* and typically calls it to write the row.
|
|
38
|
+
*/
|
|
11
39
|
const EditWith: typeof createEditRoute;
|
|
12
40
|
const Delete: DataControllerCallback;
|
|
13
41
|
const Archive: DataControllerCallback;
|
|
@@ -19,6 +47,7 @@ export declare namespace TableViewRoutes {
|
|
|
19
47
|
readonly select: DataControllerCallbackWithOptions<any>;
|
|
20
48
|
readonly count: DataControllerCallback;
|
|
21
49
|
readonly countBatch: DataControllerCallbackWithOptions<any>;
|
|
50
|
+
readonly summary: DataControllerCallbackWithOptions<any>;
|
|
22
51
|
readonly new: DataControllerCallback;
|
|
23
52
|
readonly edit: DataControllerCallback;
|
|
24
53
|
readonly delete: DataControllerCallback;
|
|
@@ -3,16 +3,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.TableViewRoutes = void 0;
|
|
4
4
|
const interface_api_1 = require("@antelopejs/interface-api");
|
|
5
5
|
const interface_api_util_1 = require("@antelopejs/interface-api-util");
|
|
6
|
+
const interface_core_1 = require("@antelopejs/interface-core");
|
|
6
7
|
const interface_data_api_1 = require("@antelopejs/interface-data-api");
|
|
7
8
|
const components_1 = require("@antelopejs/interface-data-api/components");
|
|
8
9
|
const request_tenant_1 = require("../../request-tenant");
|
|
9
10
|
const auth_1 = require("../../auth");
|
|
10
|
-
const auth_2 = require("./auth");
|
|
11
|
+
const auth_2 = require("./internal/auth");
|
|
11
12
|
const data_functions_1 = require("./data-functions");
|
|
12
|
-
const files_1 = require("./files");
|
|
13
|
-
const guards_1 = require("./guards");
|
|
14
|
-
const realtime_1 = require("./realtime");
|
|
15
|
-
const
|
|
13
|
+
const files_1 = require("./internal/files");
|
|
14
|
+
const guards_1 = require("./internal/guards");
|
|
15
|
+
const realtime_1 = require("./internal/realtime");
|
|
16
|
+
const meta_1 = require("./meta");
|
|
17
|
+
const row_rules_1 = require("./internal/row-rules");
|
|
16
18
|
const MAX_BATCH_COUNT_QUERIES = 50;
|
|
17
19
|
function parseBatchCountBody(body) {
|
|
18
20
|
(0, interface_api_util_1.assert)(body && typeof body === "object", 400, "Invalid count batch body.");
|
|
@@ -33,11 +35,14 @@ function buildBatchCountContext(ctx, query) {
|
|
|
33
35
|
}
|
|
34
36
|
return { ...ctx, url };
|
|
35
37
|
}
|
|
38
|
+
// The selection arrives as a repeated query parameter (`?ids=a&ids=b`): every
|
|
39
|
+
// value is read, a single-value read would act on the first row only.
|
|
36
40
|
const createBulkOperationRoute = (operationFunc) => ({
|
|
37
41
|
func: function (ctx, ids) {
|
|
42
|
+
(0, interface_api_util_1.assert)(ids.length > 0, 400, "Missing ids.");
|
|
38
43
|
return operationFunc(this, ctx, ids);
|
|
39
44
|
},
|
|
40
|
-
args: [(0, interface_api_1.Context)(), (0, interface_api_1.
|
|
45
|
+
args: [(0, interface_api_1.Context)(), (0, interface_api_1.MultiParameter)("ids", "query")],
|
|
41
46
|
method: "put",
|
|
42
47
|
});
|
|
43
48
|
function createListRoute(actionId) {
|
|
@@ -60,6 +65,33 @@ function createCountRoute(actionId) {
|
|
|
60
65
|
method: "get",
|
|
61
66
|
};
|
|
62
67
|
}
|
|
68
|
+
/** The footer summaries a request names, refusing an id never declared. */
|
|
69
|
+
function requestedSummaries(thisObj, ids) {
|
|
70
|
+
const meta = (0, interface_core_1.GetMetadata)(thisObj.constructor, meta_1.TableViewMeta);
|
|
71
|
+
const summaries = {};
|
|
72
|
+
for (const id of ids) {
|
|
73
|
+
const summary = meta.footerSummary(id);
|
|
74
|
+
(0, interface_api_util_1.assert)(summary, 400, `Unknown footer summary "${id}".`);
|
|
75
|
+
summaries[id] = summary;
|
|
76
|
+
}
|
|
77
|
+
return summaries;
|
|
78
|
+
}
|
|
79
|
+
function createSummaryRoute(actionId) {
|
|
80
|
+
return {
|
|
81
|
+
func: async function (ctx, listParams, ids, user) {
|
|
82
|
+
const summaries = requestedSummaries(this, ids);
|
|
83
|
+
const permissions = await (0, auth_2.authorizeAction)(this, actionId, user, (0, request_tenant_1.getRequestTenantId)(ctx));
|
|
84
|
+
return (0, data_functions_1.summarizeWithSearch)(this, ctx, listParams, summaries, user, permissions);
|
|
85
|
+
},
|
|
86
|
+
args: [
|
|
87
|
+
(0, interface_api_1.Context)(),
|
|
88
|
+
components_1.Parameters.List(),
|
|
89
|
+
(0, interface_api_1.MultiParameter)("ids", "query"),
|
|
90
|
+
(0, auth_1.AuthUser)(),
|
|
91
|
+
],
|
|
92
|
+
method: "get",
|
|
93
|
+
};
|
|
94
|
+
}
|
|
63
95
|
function createBatchCountRoute(actionId) {
|
|
64
96
|
return {
|
|
65
97
|
func: async function (ctx, body, user) {
|
|
@@ -90,16 +122,48 @@ var TableViewRoutes;
|
|
|
90
122
|
TableViewRoutes.Select = interface_data_api_1.DefaultRoutes.WithOptions(createListRoute(auth_2.SELECT_ACTION), {
|
|
91
123
|
pluckMode: "select",
|
|
92
124
|
});
|
|
125
|
+
/**
|
|
126
|
+
* `GET <location>/count`: the row count for one filter set. It does not
|
|
127
|
+
* serve the filter tab counters, which go through {@link CountBatch}.
|
|
128
|
+
*/
|
|
93
129
|
TableViewRoutes.Count = createCountRoute(auth_2.LIST_ACTION);
|
|
130
|
+
/**
|
|
131
|
+
* `POST <location>/count/batch`: one count per query, in a single request.
|
|
132
|
+
* Filter tabs with counters require the controller to mount
|
|
133
|
+
* `countBatch: TableViewRoutes.CountBatch`; a table view declaring `tabs`
|
|
134
|
+
* without it gets failing counters and a registration warning.
|
|
135
|
+
*/
|
|
94
136
|
TableViewRoutes.CountBatch = interface_data_api_1.DefaultRoutes.WithOptions(createBatchCountRoute(auth_2.LIST_ACTION), {}, "/count/batch");
|
|
137
|
+
/**
|
|
138
|
+
* `GET <location>/summary?ids=<id>`: the footer summaries a table view
|
|
139
|
+
* declared (`footer.summary`), computed over every row its filters and
|
|
140
|
+
* search list. Mount it as `summary: TableViewRoutes.Summary`; a table view
|
|
141
|
+
* declaring summaries without it gets a registration warning.
|
|
142
|
+
*/
|
|
143
|
+
TableViewRoutes.Summary = interface_data_api_1.DefaultRoutes.WithOptions(createSummaryRoute(auth_2.LIST_ACTION), {}, "/summary");
|
|
95
144
|
TableViewRoutes.New = (0, realtime_1.withRealtimeMutation)({ eventType: "created", extractIds: realtime_1.extractFromResult }, (0, auth_2.withActionCheck)("add", (0, guards_1.createGuardedRoute)((0, files_1.withFilePromotion)(interface_data_api_1.DefaultRoutes.New), "new")));
|
|
145
|
+
/**
|
|
146
|
+
* `PUT <location>/edit`: a partial update. Only the fields the body carries
|
|
147
|
+
* change: a field left out keeps its stored value, `null` (or an empty
|
|
148
|
+
* value) clears it. A mandatory field may be left out but not cleared.
|
|
149
|
+
*/
|
|
96
150
|
TableViewRoutes.Edit = createEditRoute(interface_data_api_1.DefaultRoutes.Edit);
|
|
151
|
+
/**
|
|
152
|
+
* `Edit` around another write: the permission check, guard, row rules, file
|
|
153
|
+
* promotion and realtime broadcast still wrap it, so it runs only once the
|
|
154
|
+
* edit is allowed. `baseRoute` takes the arguments of `DefaultRoutes.Edit`,
|
|
155
|
+
* and typically calls it to write the row.
|
|
156
|
+
*/
|
|
97
157
|
TableViewRoutes.EditWith = createEditRoute;
|
|
98
158
|
TableViewRoutes.Delete = (0, realtime_1.withRealtimeMutation)({ eventType: "deleted", extractIds: realtime_1.extractMultiParamId }, (0, auth_2.withActionCheck)("delete", (0, guards_1.createGuardedRoute)((0, row_rules_1.createValidatedRoute)((0, files_1.withFilePromotion)(interface_data_api_1.DefaultRoutes.Delete, "delete"), "delete"), "delete")));
|
|
99
159
|
TableViewRoutes.Archive = (0, realtime_1.withRealtimeMutation)({ eventType: "updated", extractIds: realtime_1.extractBulkArgIds }, (0, auth_2.withActionCheck)("archive", (0, guards_1.createGuardedRoute)((0, row_rules_1.createValidatedRoute)(createBulkOperationRoute(data_functions_1.archiveRows), "archive"), "archive")));
|
|
100
160
|
TableViewRoutes.Restore = (0, realtime_1.withRealtimeMutation)({ eventType: "updated", extractIds: realtime_1.extractBulkArgIds }, (0, auth_2.withActionCheck)("restore", (0, guards_1.createGuardedRoute)((0, row_rules_1.createValidatedRoute)(createBulkOperationRoute(data_functions_1.restoreRows), "restore"), "restore")));
|
|
101
161
|
TableViewRoutes.ExportRoutes = {
|
|
102
162
|
exportStart: (0, auth_2.withActionCheckOptions)("export", interface_data_api_1.DefaultRoutes.WithOptions({
|
|
163
|
+
// A published contract: the runtime calls this positionally and every
|
|
164
|
+
// implementing module declares the same shape, so an options object
|
|
165
|
+
// cannot be introduced from this side.
|
|
166
|
+
// oxlint-disable-next-line eslint/max-params
|
|
103
167
|
func: function (ctx, listParams, format, delivery, ids, user) {
|
|
104
168
|
return (0, data_functions_1.startExport)(this, ctx, listParams, format, delivery, ids, user);
|
|
105
169
|
},
|
|
@@ -140,6 +204,7 @@ var TableViewRoutes;
|
|
|
140
204
|
select: TableViewRoutes.Select,
|
|
141
205
|
count: TableViewRoutes.Count,
|
|
142
206
|
countBatch: TableViewRoutes.CountBatch,
|
|
207
|
+
summary: TableViewRoutes.Summary,
|
|
143
208
|
new: TableViewRoutes.New,
|
|
144
209
|
edit: TableViewRoutes.Edit,
|
|
145
210
|
delete: TableViewRoutes.Delete,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../src/base/table-view/routes.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../src/base/table-view/routes.ts"],"names":[],"mappings":"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"}
|