@antelopejs/interface-dms 0.9.0 → 0.10.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 +123 -0
- package/dist/attachments.js +3 -1
- package/dist/attachments.js.map +1 -1
- package/dist/auth/db/models/sessions.model.js +1 -5
- package/dist/auth/db/models/sessions.model.js.map +1 -1
- package/dist/auth/db/tables/users.table.js.map +1 -1
- package/dist/auth/index.js +4 -1
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/internal/jwt-auth-decorator.js +7 -5
- package/dist/auth/internal/jwt-auth-decorator.js.map +1 -1
- package/dist/auth/internal/request-authenticators.js +4 -1
- package/dist/auth/internal/request-authenticators.js.map +1 -1
- package/dist/auth/internal/request-principal.js +1 -0
- package/dist/auth/internal/request-principal.js.map +1 -1
- package/dist/base/activity-feed.d.ts +26 -26
- package/dist/base/banner.d.ts +14 -14
- package/dist/base/banner.js +1 -0
- package/dist/base/banner.js.map +1 -1
- package/dist/base/block-registry/helpers.js +1 -0
- package/dist/base/block-registry/helpers.js.map +1 -1
- package/dist/base/block-registry/internal/describe.js +107 -85
- package/dist/base/block-registry/internal/describe.js.map +1 -1
- package/dist/base/block-registry/presentation.js +0 -5
- package/dist/base/block-registry/presentation.js.map +1 -1
- package/dist/base/block-registry/registry.js +4 -1
- package/dist/base/block-registry/registry.js.map +1 -1
- package/dist/base/block-types.js +0 -2
- package/dist/base/block-types.js.map +1 -1
- package/dist/base/card.d.ts +8 -8
- package/dist/base/chart-card.d.ts +2 -2
- package/dist/base/chart-card.js +2 -2
- package/dist/base/chart-card.js.map +1 -1
- package/dist/base/chart-schemas.d.ts +66 -66
- package/dist/base/chart-schemas.js +19 -21
- package/dist/base/chart-schemas.js.map +1 -1
- package/dist/base/chart.js +1 -0
- package/dist/base/chart.js.map +1 -1
- package/dist/base/code-block.js +1 -0
- package/dist/base/code-block.js.map +1 -1
- package/dist/base/confirm-dialog.d.ts +2 -6
- package/dist/base/confirm-dialog.js +36 -15
- package/dist/base/confirm-dialog.js.map +1 -1
- package/dist/base/data-sources.js +6 -2
- package/dist/base/data-sources.js.map +1 -1
- package/dist/base/data-types/compare-types.js +82 -68
- package/dist/base/data-types/compare-types.js.map +1 -1
- package/dist/base/data-types/core.d.ts +8 -101
- package/dist/base/data-types/core.js +40 -143
- package/dist/base/data-types/core.js.map +1 -1
- package/dist/base/data-types/default/address.d.ts +126 -0
- package/dist/base/data-types/default/address.js +57 -0
- package/dist/base/data-types/default/address.js.map +1 -0
- package/dist/base/data-types/default/choices.d.ts +54 -0
- package/dist/base/data-types/default/choices.js +135 -0
- package/dist/base/data-types/default/choices.js.map +1 -0
- package/dist/base/data-types/default/files.d.ts +86 -0
- package/dist/base/data-types/default/files.js +214 -0
- package/dist/base/data-types/default/files.js.map +1 -0
- package/dist/base/data-types/default/inputs.d.ts +11 -0
- package/dist/base/data-types/default/inputs.js +26 -0
- package/dist/base/data-types/default/inputs.js.map +1 -0
- package/dist/base/data-types/default/numbers.d.ts +62 -0
- package/dist/base/data-types/default/numbers.js +287 -0
- package/dist/base/data-types/default/numbers.js.map +1 -0
- package/dist/base/data-types/default/options.d.ts +133 -0
- package/dist/base/data-types/default/options.js +3 -0
- package/dist/base/data-types/default/options.js.map +1 -0
- package/dist/base/data-types/default/relations.d.ts +267 -0
- package/dist/base/data-types/default/relations.js +149 -0
- package/dist/base/data-types/default/relations.js.map +1 -0
- package/dist/base/data-types/default/strings.d.ts +35 -0
- package/dist/base/data-types/default/strings.js +154 -0
- package/dist/base/data-types/default/strings.js.map +1 -0
- package/dist/base/data-types/default-types.d.ts +73 -753
- package/dist/base/data-types/default-types.js +39 -991
- package/dist/base/data-types/default-types.js.map +1 -1
- package/dist/base/data-types/field-types.js +2 -6
- package/dist/base/data-types/field-types.js.map +1 -1
- package/dist/base/data-types/index.js +1 -20
- package/dist/base/data-types/index.js.map +1 -1
- package/dist/base/data-types/internal/compare-types.js +0 -2
- package/dist/base/data-types/internal/compare-types.js.map +1 -1
- package/dist/base/data-types/internal/relation-add-form.d.ts +7 -0
- package/dist/base/data-types/internal/relation-add-form.js +21 -0
- package/dist/base/data-types/internal/relation-add-form.js.map +1 -0
- package/dist/base/data-types/internal/relation-endpoints.d.ts +8 -0
- package/dist/base/data-types/internal/relation-endpoints.js +36 -0
- package/dist/base/data-types/internal/relation-endpoints.js.map +1 -0
- package/dist/base/data-types/status-type.js +0 -6
- package/dist/base/data-types/status-type.js.map +1 -1
- package/dist/base/display.d.ts +6 -6
- package/dist/base/display.js +15 -10
- package/dist/base/display.js.map +1 -1
- package/dist/base/empty-state.d.ts +8 -8
- package/dist/base/export-jobs.js.map +1 -1
- package/dist/base/form-block-schema.d.ts +36 -36
- package/dist/base/form-block-schema.js +0 -5
- package/dist/base/form-block-schema.js.map +1 -1
- package/dist/base/form-schema.d.ts +5 -1
- package/dist/base/form-schema.js +44 -206
- package/dist/base/form-schema.js.map +1 -1
- package/dist/base/form-types.d.ts +4 -84
- package/dist/base/form-types.js.map +1 -1
- package/dist/base/form.js +0 -7
- package/dist/base/form.js.map +1 -1
- package/dist/base/guard.d.ts +14 -14
- package/dist/base/helpers/archive-mode-helpers.js +11 -11
- package/dist/base/helpers/archive-mode-helpers.js.map +1 -1
- package/dist/base/helpers/file-refs.js +20 -7
- package/dist/base/helpers/file-refs.js.map +1 -1
- package/dist/base/index.js +0 -5
- package/dist/base/index.js.map +1 -1
- package/dist/base/internal/button-availability.d.ts +3 -17
- package/dist/base/internal/button-availability.js +36 -31
- package/dist/base/internal/button-availability.js.map +1 -1
- package/dist/base/internal/chart-schemas.js +0 -2
- package/dist/base/internal/chart-schemas.js.map +1 -1
- package/dist/base/internal/composed-text.js +0 -2
- package/dist/base/internal/composed-text.js.map +1 -1
- package/dist/base/internal/confirm-dialog.d.ts +3 -13
- package/dist/base/internal/confirm-dialog.js +37 -21
- package/dist/base/internal/confirm-dialog.js.map +1 -1
- package/dist/base/internal/display.js +3 -1
- package/dist/base/internal/display.js.map +1 -1
- package/dist/base/internal/form-schema-components.d.ts +12 -0
- package/dist/base/internal/form-schema-components.js +61 -0
- package/dist/base/internal/form-schema-components.js.map +1 -0
- package/dist/base/internal/form-schema-validation.d.ts +16 -0
- package/dist/base/internal/form-schema-validation.js +68 -0
- package/dist/base/internal/form-schema-validation.js.map +1 -0
- package/dist/base/internal/form-schema.d.ts +2 -7
- package/dist/base/internal/form-schema.js +36 -28
- package/dist/base/internal/form-schema.js.map +1 -1
- package/dist/base/internal/layouts.d.ts +1 -59
- package/dist/base/internal/searchable.js +3 -1
- package/dist/base/internal/searchable.js.map +1 -1
- package/dist/base/key-value-list.d.ts +12 -12
- package/dist/base/kpi-card.d.ts +2 -2
- package/dist/base/kpi-card.js +2 -0
- package/dist/base/kpi-card.js.map +1 -1
- package/dist/base/layouts.d.ts +6 -80
- package/dist/base/layouts.js +38 -54
- package/dist/base/layouts.js.map +1 -1
- package/dist/base/live-toggle.d.ts +2 -2
- package/dist/base/meter.d.ts +25 -25
- package/dist/base/meter.js +0 -1
- package/dist/base/meter.js.map +1 -1
- package/dist/base/nav-card-grid.d.ts +13 -13
- package/dist/base/page-toolbar.d.ts +2 -2
- package/dist/base/page-toolbar.js +0 -6
- package/dist/base/page-toolbar.js.map +1 -1
- package/dist/base/period-selector.d.ts +2 -2
- package/dist/base/period-selector.js +0 -4
- package/dist/base/period-selector.js.map +1 -1
- package/dist/base/query-response.js +3 -5
- package/dist/base/query-response.js.map +1 -1
- package/dist/base/resource-form-schema.js +0 -4
- package/dist/base/resource-form-schema.js.map +1 -1
- package/dist/base/searchable.d.ts +5 -0
- package/dist/base/searchable.js +11 -2
- package/dist/base/searchable.js.map +1 -1
- package/dist/base/stat-group.d.ts +15 -15
- package/dist/base/tab.d.ts +8 -8
- package/dist/base/tab.js +1 -0
- package/dist/base/tab.js.map +1 -1
- package/dist/base/table-view/column-display.js +0 -1
- package/dist/base/table-view/column-display.js.map +1 -1
- package/dist/base/table-view/data-functions.d.ts +10 -10
- package/dist/base/table-view/data-functions.js.map +1 -1
- package/dist/base/table-view/factory.js +32 -204
- package/dist/base/table-view/factory.js.map +1 -1
- package/dist/base/table-view/internal/auth.js +5 -19
- package/dist/base/table-view/internal/auth.js.map +1 -1
- package/dist/base/table-view/internal/column-conditions.js +0 -5
- package/dist/base/table-view/internal/column-conditions.js.map +1 -1
- package/dist/base/table-view/internal/column-display.js +5 -3
- package/dist/base/table-view/internal/column-display.js.map +1 -1
- package/dist/base/table-view/internal/factory-helpers.js +24 -158
- package/dist/base/table-view/internal/factory-helpers.js.map +1 -1
- package/dist/base/table-view/internal/factory-lifecycle-created.d.ts +21 -0
- package/dist/base/table-view/internal/factory-lifecycle-created.js +96 -0
- package/dist/base/table-view/internal/factory-lifecycle-created.js.map +1 -0
- package/dist/base/table-view/internal/factory-lifecycle-filter.d.ts +15 -0
- package/dist/base/table-view/internal/factory-lifecycle-filter.js +37 -0
- package/dist/base/table-view/internal/factory-lifecycle-filter.js.map +1 -0
- package/dist/base/table-view/internal/factory-lifecycle-options.d.ts +41 -0
- package/dist/base/table-view/internal/factory-lifecycle-options.js +99 -0
- package/dist/base/table-view/internal/factory-lifecycle-options.js.map +1 -0
- package/dist/base/table-view/internal/factory-private-actions.d.ts +32 -0
- package/dist/base/table-view/internal/factory-private-actions.js +77 -0
- package/dist/base/table-view/internal/factory-private-actions.js.map +1 -0
- package/dist/base/table-view/internal/factory-private-displays.d.ts +5 -0
- package/dist/base/table-view/internal/factory-private-displays.js +21 -0
- package/dist/base/table-view/internal/factory-private-displays.js.map +1 -0
- package/dist/base/table-view/internal/factory-private-urls.d.ts +15 -0
- package/dist/base/table-view/internal/factory-private-urls.js +43 -0
- package/dist/base/table-view/internal/factory-private-urls.js.map +1 -0
- package/dist/base/table-view/internal/files.js +3 -4
- package/dist/base/table-view/internal/files.js.map +1 -1
- package/dist/base/table-view/internal/footer.js +5 -3
- package/dist/base/table-view/internal/footer.js.map +1 -1
- package/dist/base/table-view/internal/guards.js +7 -10
- package/dist/base/table-view/internal/guards.js.map +1 -1
- package/dist/base/table-view/internal/meta-helpers.d.ts +27 -0
- package/dist/base/table-view/internal/meta-helpers.js +75 -0
- package/dist/base/table-view/internal/meta-helpers.js.map +1 -0
- package/dist/base/table-view/internal/meta.js +8 -2
- package/dist/base/table-view/internal/meta.js.map +1 -1
- package/dist/base/table-view/internal/nav-badges.js +5 -3
- package/dist/base/table-view/internal/nav-badges.js.map +1 -1
- package/dist/base/table-view/internal/option-contract.d.ts +403 -0
- package/dist/base/table-view/internal/option-contract.js +3 -0
- package/dist/base/table-view/internal/option-contract.js.map +1 -0
- package/dist/base/table-view/internal/option-displays.d.ts +125 -0
- package/dist/base/table-view/internal/option-displays.js +3 -0
- package/dist/base/table-view/internal/option-displays.js.map +1 -0
- package/dist/base/table-view/internal/option-empty-states.d.ts +43 -0
- package/dist/base/table-view/internal/option-empty-states.js +3 -0
- package/dist/base/table-view/internal/option-empty-states.js.map +1 -0
- package/dist/base/table-view/internal/option-expandable.d.ts +66 -0
- package/dist/base/table-view/internal/option-expandable.js +3 -0
- package/dist/base/table-view/internal/option-expandable.js.map +1 -0
- package/dist/base/table-view/internal/option-filtering.d.ts +85 -0
- package/dist/base/table-view/internal/option-filtering.js +4 -0
- package/dist/base/table-view/internal/option-filtering.js.map +1 -0
- package/dist/base/table-view/internal/option-footer.d.ts +64 -0
- package/dist/base/table-view/internal/option-footer.js +3 -0
- package/dist/base/table-view/internal/option-footer.js.map +1 -0
- package/dist/base/table-view/internal/option-forms.d.ts +62 -0
- package/dist/base/table-view/internal/option-forms.js +3 -0
- package/dist/base/table-view/internal/option-forms.js.map +1 -0
- package/dist/base/table-view/internal/option-row-actions.d.ts +76 -0
- package/dist/base/table-view/internal/option-row-actions.js +3 -0
- package/dist/base/table-view/internal/option-row-actions.js.map +1 -0
- package/dist/base/table-view/internal/option-views.d.ts +199 -0
- package/dist/base/table-view/internal/option-views.js +3 -0
- package/dist/base/table-view/internal/option-views.js.map +1 -0
- package/dist/base/table-view/internal/options.d.ts +2 -6
- package/dist/base/table-view/internal/options.js +35 -6
- package/dist/base/table-view/internal/options.js.map +1 -1
- package/dist/base/table-view/internal/realtime.js +15 -5
- package/dist/base/table-view/internal/realtime.js.map +1 -1
- package/dist/base/table-view/internal/request-filter.js +12 -12
- package/dist/base/table-view/internal/request-filter.js.map +1 -1
- package/dist/base/table-view/internal/resource-form.js +1 -10
- package/dist/base/table-view/internal/resource-form.js.map +1 -1
- package/dist/base/table-view/internal/row-actions-schema.js +0 -6
- package/dist/base/table-view/internal/row-actions-schema.js.map +1 -1
- package/dist/base/table-view/internal/row-rule-shape.d.ts +10 -0
- package/dist/base/table-view/internal/row-rule-shape.js +43 -0
- package/dist/base/table-view/internal/row-rule-shape.js.map +1 -0
- package/dist/base/table-view/internal/row-rules.js +1 -4
- package/dist/base/table-view/internal/row-rules.js.map +1 -1
- package/dist/base/table-view/internal/tabs.js +3 -6
- package/dist/base/table-view/internal/tabs.js.map +1 -1
- package/dist/base/table-view/internal/validation.js +2 -16
- package/dist/base/table-view/internal/validation.js.map +1 -1
- package/dist/base/table-view/internal/writer.js +1 -0
- package/dist/base/table-view/internal/writer.js.map +1 -1
- package/dist/base/table-view/meta.js +11 -93
- package/dist/base/table-view/meta.js.map +1 -1
- package/dist/base/table-view/options.d.ts +61 -1099
- package/dist/base/table-view/options.js.map +1 -1
- package/dist/base/table-view/resource-form.js +0 -2
- package/dist/base/table-view/resource-form.js.map +1 -1
- package/dist/base/table-view/routes.js +10 -9
- package/dist/base/table-view/routes.js.map +1 -1
- package/dist/base/table-view/schema.d.ts +93 -93
- package/dist/base/table-view/schema.js +4 -22
- package/dist/base/table-view/schema.js.map +1 -1
- package/dist/base/table-view/source.js +0 -5
- package/dist/base/table-view/source.js.map +1 -1
- package/dist/base/table-view/views.js +0 -3
- package/dist/base/table-view/views.js.map +1 -1
- package/dist/base/table-view/writer.js +0 -5
- package/dist/base/table-view/writer.js.map +1 -1
- package/dist/base/top-list-card.d.ts +13 -13
- package/dist/base/top-list-card.js +2 -0
- package/dist/base/top-list-card.js.map +1 -1
- package/dist/base/types/action-target.d.ts +1 -302
- package/dist/base/types/button.d.ts +2 -7
- package/dist/base/types/button.js +35 -8
- package/dist/base/types/button.js.map +1 -1
- package/dist/base/types/confirm-dialog.d.ts +1 -127
- package/dist/base/types/custom-button.d.ts +1 -87
- package/dist/base/types/error.js +2 -1
- package/dist/base/types/error.js.map +1 -1
- package/dist/base/types/export-status.d.ts +2 -8
- package/dist/base/types/export-status.js +35 -9
- package/dist/base/types/export-status.js.map +1 -1
- package/dist/base/types/form-values.d.ts +1 -4
- package/dist/base/types/internal/action-target.d.ts +2 -8
- package/dist/base/types/internal/action-target.js +36 -15
- package/dist/base/types/internal/action-target.js.map +1 -1
- package/dist/base/types/row-action-operators.d.ts +3 -29
- package/dist/base/types/row-action-operators.js +35 -18
- package/dist/base/types/row-action-operators.js.map +1 -1
- package/dist/base/types/row-action.d.ts +3 -36
- package/dist/base/types/size.d.ts +1 -3
- package/dist/base/types/size.js +0 -3
- package/dist/base/types/size.js.map +1 -1
- package/dist/base/types/tone.d.ts +3 -8
- package/dist/base/types/tone.js +35 -15
- package/dist/base/types/tone.js.map +1 -1
- package/dist/base/types/watch.d.ts +5 -19
- package/dist/base/types/watch.js +35 -3
- package/dist/base/types/watch.js.map +1 -1
- package/dist/component-options/action-target.d.ts +304 -0
- package/dist/component-options/action-target.js +3 -0
- package/dist/component-options/action-target.js.map +1 -0
- package/dist/component-options/button.d.ts +93 -0
- package/dist/component-options/button.js +12 -0
- package/dist/component-options/button.js.map +1 -0
- package/dist/component-options/confirm-dialog.d.ts +132 -0
- package/dist/component-options/confirm-dialog.js +18 -0
- package/dist/component-options/confirm-dialog.js.map +1 -0
- package/dist/component-options/data-type.d.ts +101 -0
- package/dist/component-options/data-type.js +146 -0
- package/dist/component-options/data-type.js.map +1 -0
- package/dist/component-options/form-field.d.ts +88 -0
- package/dist/component-options/form-field.js +3 -0
- package/dist/component-options/form-field.js.map +1 -0
- package/dist/component-options/internal/action-target.d.ts +8 -0
- package/dist/component-options/internal/action-target.js +18 -0
- package/dist/component-options/internal/action-target.js.map +1 -0
- package/dist/component-options/internal/button-availability.d.ts +17 -0
- package/dist/component-options/internal/button-availability.js +34 -0
- package/dist/component-options/internal/button-availability.js.map +1 -0
- package/dist/component-options/internal/confirm-dialog.d.ts +13 -0
- package/dist/component-options/internal/confirm-dialog.js +24 -0
- package/dist/component-options/internal/confirm-dialog.js.map +1 -0
- package/dist/component-options/internal/form-field.d.ts +7 -0
- package/dist/component-options/internal/form-field.js +31 -0
- package/dist/component-options/internal/form-field.js.map +1 -0
- package/dist/component-options/internal/page-layout.d.ts +71 -0
- package/dist/component-options/internal/page-layout.js +10 -0
- package/dist/component-options/internal/page-layout.js.map +1 -0
- package/dist/component-options/page-layout.d.ts +80 -0
- package/dist/component-options/page-layout.js +57 -0
- package/dist/component-options/page-layout.js.map +1 -0
- package/dist/component-options/row-action.d.ts +66 -0
- package/dist/component-options/row-action.js +22 -0
- package/dist/component-options/row-action.js.map +1 -0
- package/dist/component-slots.js.map +1 -1
- package/dist/component.d.ts +2 -2
- package/dist/component.js +38 -193
- package/dist/component.js.map +1 -1
- package/dist/data-controllers/members.js +2 -8
- package/dist/data-controllers/members.js.map +1 -1
- package/dist/data-controllers/roles.js +0 -5
- package/dist/data-controllers/roles.js.map +1 -1
- package/dist/db/internal/exportJobs.model.js +10 -6
- package/dist/db/internal/exportJobs.model.js.map +1 -1
- package/dist/db/internal/tenantLifecycle.model.js +0 -2
- package/dist/db/internal/tenantLifecycle.model.js.map +1 -1
- package/dist/db/tables/exportJobs.table.d.ts +1 -1
- package/dist/db/tables/roles.table.js.map +1 -1
- package/dist/db/tables/user_invites.table.d.ts +1 -1
- package/dist/db/tables/user_invites.table.js.map +1 -1
- package/dist/export-status.d.ts +8 -0
- package/dist/export-status.js +13 -0
- package/dist/export-status.js.map +1 -0
- package/dist/hooks.d.ts +1 -1
- package/dist/hooks.js +2 -4
- package/dist/hooks.js.map +1 -1
- package/dist/index.js +0 -9
- package/dist/index.js.map +1 -1
- package/dist/internal/component-builder.d.ts +17 -0
- package/dist/internal/component-builder.js +58 -0
- package/dist/internal/component-builder.js.map +1 -0
- package/dist/internal/component-permissions.d.ts +13 -0
- package/dist/internal/component-permissions.js +45 -0
- package/dist/internal/component-permissions.js.map +1 -0
- package/dist/internal/component-serialization.d.ts +10 -0
- package/dist/internal/component-serialization.js +42 -0
- package/dist/internal/component-serialization.js.map +1 -0
- package/dist/internal/component-slots.js +7 -4
- package/dist/internal/component-slots.js.map +1 -1
- package/dist/internal/component-watches.d.ts +17 -0
- package/dist/internal/component-watches.js +110 -0
- package/dist/internal/component-watches.js.map +1 -0
- package/dist/internal/invite-membership.js +0 -1
- package/dist/internal/invite-membership.js.map +1 -1
- package/dist/invite-extension-payloads.d.ts +2 -0
- package/dist/invite-extension-payloads.js +3 -0
- package/dist/invite-extension-payloads.js.map +1 -0
- package/dist/invite-extensions/internal/delivery.js +4 -1
- package/dist/invite-extensions/internal/delivery.js.map +1 -1
- package/dist/invite-extensions/internal/edit.js +5 -4
- package/dist/invite-extensions/internal/edit.js.map +1 -1
- package/dist/invite-extensions/internal/form-slot.js +5 -35
- package/dist/invite-extensions/internal/form-slot.js.map +1 -1
- package/dist/invite-extensions/internal/payload-slices.js +10 -3
- package/dist/invite-extensions/internal/payload-slices.js.map +1 -1
- package/dist/invite-extensions/internal/registry.js +3 -5
- package/dist/invite-extensions/internal/registry.js.map +1 -1
- package/dist/invite-extensions/registry.js +3 -8
- package/dist/invite-extensions/registry.js.map +1 -1
- package/dist/invite-extensions/types.d.ts +1 -2
- package/dist/invite-resolution.js +2 -1
- package/dist/invite-resolution.js.map +1 -1
- package/dist/layout-banners.js.map +1 -1
- package/dist/notifications/builder.js +25 -5
- package/dist/notifications/builder.js.map +1 -1
- package/dist/notifications/internal.js +0 -3
- package/dist/notifications/internal.js.map +1 -1
- package/dist/notifications/sendable.js.map +1 -1
- package/dist/page/categories.js +1 -4
- package/dist/page/categories.js.map +1 -1
- package/dist/page/controllers.js +9 -55
- package/dist/page/controllers.js.map +1 -1
- package/dist/page/form-page-routes.js +0 -7
- package/dist/page/form-page-routes.js.map +1 -1
- package/dist/page/internal/categories.d.ts +1 -1
- package/dist/page/internal/categories.js +12 -36
- package/dist/page/internal/categories.js.map +1 -1
- package/dist/page/internal/category-permission.d.ts +10 -0
- package/dist/page/internal/category-permission.js +20 -0
- package/dist/page/internal/category-permission.js.map +1 -0
- package/dist/page/internal/component-target.js +2 -2
- package/dist/page/internal/component-target.js.map +1 -1
- package/dist/page/internal/component-tree.js +0 -2
- package/dist/page/internal/component-tree.js.map +1 -1
- package/dist/page/internal/controller-options.d.ts +6 -0
- package/dist/page/internal/controller-options.js +40 -0
- package/dist/page/internal/controller-options.js.map +1 -0
- package/dist/page/internal/extension-assembly.js +2 -7
- package/dist/page/internal/extension-assembly.js.map +1 -1
- package/dist/page/internal/layout-filter.js +7 -3
- package/dist/page/internal/layout-filter.js.map +1 -1
- package/dist/page/internal/metadata-components.d.ts +47 -0
- package/dist/page/internal/metadata-components.js +136 -0
- package/dist/page/internal/metadata-components.js.map +1 -0
- package/dist/page/internal/metadata-extension-contributions.d.ts +14 -0
- package/dist/page/internal/metadata-extension-contributions.js +56 -0
- package/dist/page/internal/metadata-extension-contributions.js.map +1 -0
- package/dist/page/internal/metadata-extensions.d.ts +8 -0
- package/dist/page/internal/metadata-extensions.js +21 -0
- package/dist/page/internal/metadata-extensions.js.map +1 -0
- package/dist/page/internal/metadata-helpers.js +0 -14
- package/dist/page/internal/metadata-helpers.js.map +1 -1
- package/dist/page/internal/metadata-info.d.ts +5 -0
- package/dist/page/internal/metadata-info.js +39 -0
- package/dist/page/internal/metadata-info.js.map +1 -0
- package/dist/page/internal/metadata-layout-response.d.ts +32 -0
- package/dist/page/internal/metadata-layout-response.js +76 -0
- package/dist/page/internal/metadata-layout-response.js.map +1 -0
- package/dist/page/internal/metadata-layout.d.ts +10 -0
- package/dist/page/internal/metadata-layout.js +44 -0
- package/dist/page/internal/metadata-layout.js.map +1 -0
- package/dist/page/internal/metadata-lifecycle.d.ts +52 -0
- package/dist/page/internal/metadata-lifecycle.js +241 -0
- package/dist/page/internal/metadata-lifecycle.js.map +1 -0
- package/dist/page/internal/metadata-owner.d.ts +53 -0
- package/dist/page/internal/metadata-owner.js +14 -0
- package/dist/page/internal/metadata-owner.js.map +1 -0
- package/dist/page/internal/metadata-publish.d.ts +20 -0
- package/dist/page/internal/metadata-publish.js +55 -0
- package/dist/page/internal/metadata-publish.js.map +1 -0
- package/dist/page/internal/metadata-registration.d.ts +8 -0
- package/dist/page/internal/metadata-registration.js +72 -0
- package/dist/page/internal/metadata-registration.js.map +1 -0
- package/dist/page/internal/metadata-upload-registration.d.ts +16 -0
- package/dist/page/internal/metadata-upload-registration.js +64 -0
- package/dist/page/internal/metadata-upload-registration.js.map +1 -0
- package/dist/page/internal/metadata-uploads.d.ts +18 -0
- package/dist/page/internal/metadata-uploads.js +46 -0
- package/dist/page/internal/metadata-uploads.js.map +1 -0
- package/dist/page/internal/nav-badges.d.ts +1 -1
- package/dist/page/internal/nav-badges.js +3 -1
- package/dist/page/internal/nav-badges.js.map +1 -1
- package/dist/page/internal/page-record.d.ts +2 -9
- package/dist/page/internal/page-record.js +8 -5
- package/dist/page/internal/page-record.js.map +1 -1
- package/dist/page/internal/page-registration.js +0 -4
- package/dist/page/internal/page-registration.js.map +1 -1
- package/dist/page/internal/registry.js +2 -1
- package/dist/page/internal/registry.js.map +1 -1
- package/dist/page/internal/table-view-ids.js +3 -2
- package/dist/page/internal/table-view-ids.js.map +1 -1
- package/dist/page/layout-filter.js +1 -0
- package/dist/page/layout-filter.js.map +1 -1
- package/dist/page/metadata.js +192 -558
- package/dist/page/metadata.js.map +1 -1
- package/dist/page/roots.js +3 -5
- package/dist/page/roots.js.map +1 -1
- package/dist/page/types.d.ts +15 -2
- package/dist/page/types.js.map +1 -1
- package/dist/permissions.js +0 -18
- package/dist/permissions.js.map +1 -1
- package/dist/realtime.js +0 -3
- package/dist/realtime.js.map +1 -1
- package/dist/request-tenant.js +4 -1
- package/dist/request-tenant.js.map +1 -1
- package/dist/tenant-lifecycle.js +2 -2
- package/dist/tenant-lifecycle.js.map +1 -1
- package/dist/tones.d.ts +8 -0
- package/dist/tones.js +19 -0
- package/dist/tones.js.map +1 -0
- package/dist/uploads.js +15 -4
- package/dist/uploads.js.map +1 -1
- package/dist/utils/internal/row-instance.js +2 -3
- package/dist/utils/internal/row-instance.js.map +1 -1
- package/dist/utils/internal/type-check.d.ts +10 -1
- package/dist/utils/internal/type-check.js +12 -3
- package/dist/utils/internal/type-check.js.map +1 -1
- package/dist/utils/internal/value-parser.js +7 -2
- package/dist/utils/internal/value-parser.js.map +1 -1
- package/dist/watch-actions.d.ts +19 -0
- package/dist/watch-actions.js +7 -0
- package/dist/watch-actions.js.map +1 -0
- package/docs/3.base/2.types.md +1 -1
- package/docs/3.base/8.data-types.md +2 -0
- package/docs/4.notifications/3.sending.md +1 -1
- package/docs/tsconfig.json +5 -1
- package/package.json +3 -9
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
/** @internal @packageDocumentation */
|
|
2
|
+
import type { Tone } from "../../types/tone";
|
|
3
|
+
import type { ButtonPermission } from "../../../component";
|
|
4
|
+
import type { ColorValue } from "../../types";
|
|
5
|
+
import type { ControllerClass } from "@antelopejs/interface-api";
|
|
6
|
+
/** The filter a tab applies on one column. */
|
|
7
|
+
export interface TableViewTabFilter {
|
|
8
|
+
/** Filterable column the tab filters on. */
|
|
9
|
+
accessorKey: string;
|
|
10
|
+
/** Value compared; a list of values is joined with commas. */
|
|
11
|
+
value?: string;
|
|
12
|
+
/** Compare mode, e.g. `"is"`. */
|
|
13
|
+
mode: string;
|
|
14
|
+
}
|
|
15
|
+
/** A sort a view applies: the column, newest or largest first with `desc`. */
|
|
16
|
+
export interface TableViewSort {
|
|
17
|
+
field: string;
|
|
18
|
+
desc?: boolean;
|
|
19
|
+
}
|
|
20
|
+
/** The columns a view shows, and their order. */
|
|
21
|
+
export interface TableViewColumnsState {
|
|
22
|
+
/** Columns shown, whatever their default visibility. */
|
|
23
|
+
visible?: string[];
|
|
24
|
+
/** Columns hidden, whatever their default visibility. */
|
|
25
|
+
hidden?: string[];
|
|
26
|
+
/**
|
|
27
|
+
* Column order, left to right; the columns left out follow in their
|
|
28
|
+
* declared order.
|
|
29
|
+
*/
|
|
30
|
+
order?: string[];
|
|
31
|
+
}
|
|
32
|
+
/** The columns of the controller one table view shows: see `TableViewOptions.columns`. */
|
|
33
|
+
export interface TableViewColumnsOptions {
|
|
34
|
+
/**
|
|
35
|
+
* Columns this table view opens hidden, as a column declared
|
|
36
|
+
* `isVisible: false` does but for this table view only: another table view
|
|
37
|
+
* over the same controller still shows them. They stay in the column
|
|
38
|
+
* picker, filterable and in the forms.
|
|
39
|
+
*/
|
|
40
|
+
hidden?: string[];
|
|
41
|
+
}
|
|
42
|
+
/** Row height of a table: `compact` gives 36px rows under a 32px header. */
|
|
43
|
+
export type TableViewDensity = "default" | "compact";
|
|
44
|
+
/**
|
|
45
|
+
* What runs a row's click action (its `isDefault` custom action, else `edit`
|
|
46
|
+
* or `details`): a double-click (`"double"`, the default), or a single click
|
|
47
|
+
* (`"single"`), for a list read row after row in a side panel. A single click
|
|
48
|
+
* on a control of the row (a button, a link, a checkbox) or one ending a text
|
|
49
|
+
* selection runs nothing.
|
|
50
|
+
*/
|
|
51
|
+
export type TableViewRowClick = "single" | "double";
|
|
52
|
+
/**
|
|
53
|
+
* Everything a view sets on the table when it is opened. What a view leaves
|
|
54
|
+
* out falls back to the table's defaults, so opening a view always shows the
|
|
55
|
+
* same rows the same way.
|
|
56
|
+
*
|
|
57
|
+
* A filter value may hold tokens the server resolves for each request, so a
|
|
58
|
+
* view's rows and its counter follow the caller and the clock:
|
|
59
|
+
* `{{user.id}}` (the signed-in user's id), `{{now}}` and `{{now-7d}}` /
|
|
60
|
+
* `{{now+14d}}` (the current instant, moved by whole days).
|
|
61
|
+
*/
|
|
62
|
+
export interface TableViewViewState {
|
|
63
|
+
/** Filters on filterable columns, shown as the table's filter chips. */
|
|
64
|
+
filters?: TableViewTabFilter[];
|
|
65
|
+
/** Text typed in the search field. */
|
|
66
|
+
search?: string;
|
|
67
|
+
/** Sort of the rows; the list sorts on the first entry. */
|
|
68
|
+
sort?: TableViewSort[];
|
|
69
|
+
/** Columns shown and their order. */
|
|
70
|
+
columns?: TableViewColumnsState;
|
|
71
|
+
/**
|
|
72
|
+
* Display the view opens in (`"table"`, `"kanban"`, `"grouped"`, a
|
|
73
|
+
* module's `<module>:<id>`): it must be one the table offers.
|
|
74
|
+
*/
|
|
75
|
+
display?: string;
|
|
76
|
+
/** Row height of the grid. */
|
|
77
|
+
density?: TableViewDensity;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* A named state of the table ("Past due > 7 days", "Mine"). Opening it
|
|
81
|
+
* applies its state; the user may then change filters or sort, which marks
|
|
82
|
+
* the view as modified with a way back (Reset) or forward (Save as new view).
|
|
83
|
+
* A view the module declares is never overwritten.
|
|
84
|
+
*/
|
|
85
|
+
export interface TableViewView extends TableViewViewState {
|
|
86
|
+
/** Stable id, used in the URL (`?view=<id>`). */
|
|
87
|
+
id: string;
|
|
88
|
+
/** `$`-prefixed: an i18n key. */
|
|
89
|
+
label: string;
|
|
90
|
+
icon?: string;
|
|
91
|
+
/** Colors the view's icon and counter. */
|
|
92
|
+
tone?: Tone;
|
|
93
|
+
/** A status dot drawn before the label. */
|
|
94
|
+
dot?: Tone;
|
|
95
|
+
/**
|
|
96
|
+
* Shows the number of rows the view lists, counted by the controller's
|
|
97
|
+
* `countBatch` route like the tab counters: what opening it would list,
|
|
98
|
+
* under the open tab and the page's URL filters. The open view counts the
|
|
99
|
+
* rows listed, its filters and search as the user edited them.
|
|
100
|
+
*/
|
|
101
|
+
count?: boolean;
|
|
102
|
+
/**
|
|
103
|
+
* Gate the view: one of the table's actions by name (e.g. `"export"`), or
|
|
104
|
+
* an `Action` of any component.
|
|
105
|
+
*/
|
|
106
|
+
permission?: ButtonPermission;
|
|
107
|
+
/** Absolute permission id the view requires; wins over `permission`. */
|
|
108
|
+
permissionId?: string;
|
|
109
|
+
}
|
|
110
|
+
/** A view as it reaches the client. */
|
|
111
|
+
export type TableViewViewSerialized = Omit<TableViewView, "permission" | "permissionId">;
|
|
112
|
+
/**
|
|
113
|
+
* Where the views are drawn: a tab strip above the table (`tabs`), a row of
|
|
114
|
+
* pills above the status tabs (`strip`), or a menu button in the toolbar
|
|
115
|
+
* (`menu`).
|
|
116
|
+
*/
|
|
117
|
+
export type TableViewViewsLayout = "tabs" | "strip" | "menu";
|
|
118
|
+
/** The views a table offers. */
|
|
119
|
+
export interface TableViewViewsOptions {
|
|
120
|
+
/** The views the module declares, in order. */
|
|
121
|
+
items: TableViewView[];
|
|
122
|
+
/** Defaults to `tabs`. */
|
|
123
|
+
layout?: TableViewViewsLayout;
|
|
124
|
+
/**
|
|
125
|
+
* View opened on arrival when the URL names none. Without it the table
|
|
126
|
+
* opens in its own default state.
|
|
127
|
+
*/
|
|
128
|
+
defaultView?: string;
|
|
129
|
+
/**
|
|
130
|
+
* Lets users save the current state as a view of their own ("Save as new
|
|
131
|
+
* view"), and update or delete it. A user's views are kept with the rest
|
|
132
|
+
* of their table preferences and are never shown to anyone else.
|
|
133
|
+
*/
|
|
134
|
+
userViews?: boolean;
|
|
135
|
+
}
|
|
136
|
+
/** The views of a table as they reach the client. */
|
|
137
|
+
export interface TableViewViewsSerialized extends Omit<TableViewViewsOptions, "items"> {
|
|
138
|
+
items: TableViewViewSerialized[];
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* A tab above the table: it filters the rows on one column (`filter`), or
|
|
142
|
+
* opens another page (`to`) — never both, which registration refuses. A tab
|
|
143
|
+
* with neither, given the id `"all"`, stands in for the implicit "all" tab, at
|
|
144
|
+
* its own position, with its own label and icon.
|
|
145
|
+
*/
|
|
146
|
+
export interface TableViewTab {
|
|
147
|
+
id: string;
|
|
148
|
+
label: string;
|
|
149
|
+
/** Hidden filter the tab applies, on a single column. */
|
|
150
|
+
filter?: TableViewTabFilter;
|
|
151
|
+
icon?: string;
|
|
152
|
+
textColor?: ColorValue;
|
|
153
|
+
iconColor?: ColorValue;
|
|
154
|
+
/**
|
|
155
|
+
* Turns the tab into a link to another page, typically a sibling list
|
|
156
|
+
* (Members ↔ Invitations): a registered page controller, whose URL and
|
|
157
|
+
* permission the tab follows, or a dashboard path.
|
|
158
|
+
*/
|
|
159
|
+
to?: ControllerClass | string;
|
|
160
|
+
/**
|
|
161
|
+
* Gate the tab, a filter tab or a link tab: one of the table's actions by
|
|
162
|
+
* name (e.g. `"list"`), or an `Action` of any component. A link tab to a
|
|
163
|
+
* page controller follows that page's own permission without it.
|
|
164
|
+
*/
|
|
165
|
+
permission?: ButtonPermission;
|
|
166
|
+
/** Absolute permission id the tab requires; wins over `permission`. */
|
|
167
|
+
permissionId?: string;
|
|
168
|
+
/**
|
|
169
|
+
* Data controller (or data API location, e.g. `"/api/tables/invites"`)
|
|
170
|
+
* whose row total a link tab shows as its counter.
|
|
171
|
+
*/
|
|
172
|
+
countFrom?: ControllerClass | string;
|
|
173
|
+
/**
|
|
174
|
+
* Publishes the tab's counter as the navigation badge of the page it
|
|
175
|
+
* stands for, in the main navigation and the settings one: this table's
|
|
176
|
+
* page for a filter tab, the linked page for a link tab (which then needs a
|
|
177
|
+
* page controller `to` and a data controller `countFrom`). Counted on the
|
|
178
|
+
* server when the menu loads, with the caller's own `list` permission; a
|
|
179
|
+
* count of zero shows no badge. `true` draws it neutral; `{ tone }` draws
|
|
180
|
+
* it in that tone (`{ tone: "warning" }` for a tab of rows to check).
|
|
181
|
+
* The badge counts the tab over the whole page, whatever view, filters,
|
|
182
|
+
* search or URL filters narrow the tab's own counter.
|
|
183
|
+
*/
|
|
184
|
+
navBadge?: boolean | TableViewTabNavBadge;
|
|
185
|
+
}
|
|
186
|
+
/** A tab's navigation badge drawn in a tone (see `TableViewTab.navBadge`). */
|
|
187
|
+
export interface TableViewTabNavBadge {
|
|
188
|
+
/** Neutral when absent. */
|
|
189
|
+
tone?: Tone;
|
|
190
|
+
}
|
|
191
|
+
/** A tab as it reaches the client: link targets resolved to paths. */
|
|
192
|
+
export interface TableViewTabSerialized extends Omit<TableViewTab, "to" | "countFrom" | "permission" | "permissionId"> {
|
|
193
|
+
/** Path the link tab opens. */
|
|
194
|
+
to?: string;
|
|
195
|
+
/** Full id of the page a link tab opens, when it is a registered page. */
|
|
196
|
+
toPage?: string;
|
|
197
|
+
/** Data API location whose total the link tab shows. */
|
|
198
|
+
countFrom?: string;
|
|
199
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"option-views.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/option-views.ts"],"names":[],"mappings":""}
|
|
@@ -1,6 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
*
|
|
4
|
-
* @internal
|
|
5
|
-
*/
|
|
6
|
-
export declare const TABLE_VIEW_COMPONENT_NAME = "dms-table-view";
|
|
1
|
+
import * as pageLayout from "../../../component-options/internal/page-layout";
|
|
2
|
+
export import TABLE_VIEW_COMPONENT_NAME = pageLayout.TABLE_VIEW_COMPONENT_NAME;
|
|
@@ -1,10 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
36
|
exports.TABLE_VIEW_COMPONENT_NAME = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
* @internal
|
|
8
|
-
*/
|
|
9
|
-
exports.TABLE_VIEW_COMPONENT_NAME = "dms-table-view";
|
|
37
|
+
const pageLayout = __importStar(require("../../../component-options/internal/page-layout"));
|
|
38
|
+
exports.TABLE_VIEW_COMPONENT_NAME = pageLayout.TABLE_VIEW_COMPONENT_NAME;
|
|
10
39
|
//# sourceMappingURL=options.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/options.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/options.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4FAA8E;AAEhE,QAAA,yBAAyB,GAAG,UAAU,CAAC,yBAAyB,CAAC"}
|
|
@@ -60,9 +60,13 @@ async function dispatchRealtimeMutation(context) {
|
|
|
60
60
|
}
|
|
61
61
|
/** @internal */
|
|
62
62
|
const extractFromResult = (_args, result, idKey) => {
|
|
63
|
+
// oxlint-disable-next-line anti-slop/no-runtime-typeof -- The published extractor accepts arbitrary callback results and only inspects non-null objects for an id.
|
|
63
64
|
if (!result || typeof result !== "object")
|
|
64
65
|
return [];
|
|
66
|
+
// SAFETY: The preceding check establishes a non-null object; indexing reads an unknown value and the next check accepts only strings.
|
|
67
|
+
// oxlint-disable-next-line anti-slop/no-unsafe-dictionary-type -- The published extractor reads a configurable key from module-owned result objects; no shared row schema exists here.
|
|
65
68
|
const value = result[idKey];
|
|
69
|
+
// oxlint-disable-next-line anti-slop/no-runtime-typeof -- Callback results are deliberately untyped in the published extractor; an id is emitted only for the string variant.
|
|
66
70
|
return typeof value === "string" ? [value] : [];
|
|
67
71
|
};
|
|
68
72
|
exports.extractFromResult = extractFromResult;
|
|
@@ -96,22 +100,28 @@ const isRealtimeEnabled = (target) => (0, meta_1.getTableViewMetaFor)(target).op
|
|
|
96
100
|
const realtimeTenantOf = (target, ctx) => (0, interface_core_1.GetMetadata)(target.constructor, metadata_1.DataAPIMeta).schemaName === constants_1.CORE_SCHEMA_NAME
|
|
97
101
|
? undefined
|
|
98
102
|
: (0, request_tenant_1.getRequestTenantId)(ctx);
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
+
const CHANGED_COUNT_KEYS = [
|
|
104
|
+
"deleted",
|
|
105
|
+
"archivedCount",
|
|
106
|
+
"restoredCount",
|
|
107
|
+
];
|
|
103
108
|
/**
|
|
104
109
|
* Whether a write reports changing no row: its row rules refused every id,
|
|
105
110
|
* or none existed. Broadcasting its ids would have every session watching
|
|
106
111
|
* the table (the caller included) drop rows that are still there.
|
|
107
112
|
*/
|
|
108
113
|
/** @internal */
|
|
114
|
+
// oxlint-disable-next-line anti-slop/no-unknown-parameters -- This published predicate accepts heterogeneous callback results; restricting it to a row or count schema would change its accepted inputs.
|
|
109
115
|
const reportsNoChange = (result) => {
|
|
116
|
+
// oxlint-disable-next-line anti-slop/no-runtime-typeof -- The published predicate recognizes the numeric count convention alongside object count results.
|
|
110
117
|
if (typeof result === "number")
|
|
111
118
|
return result === 0;
|
|
119
|
+
// oxlint-disable-next-line anti-slop/no-runtime-typeof -- Only non-null object results can carry named mutation counts; other published input variants report no count.
|
|
112
120
|
if (!result || typeof result !== "object")
|
|
113
121
|
return false;
|
|
114
|
-
|
|
122
|
+
// oxlint-disable-next-line anti-slop/no-unsafe-dictionary-type -- Mutation callbacks own these count values; the numeric filter below interprets them without changing the published result contract.
|
|
123
|
+
const input = result;
|
|
124
|
+
const counts = CHANGED_COUNT_KEYS.map((key) => input[key]).filter((value) => typeof value === "number");
|
|
115
125
|
return counts.length > 0 && counts.every((count) => count === 0);
|
|
116
126
|
};
|
|
117
127
|
exports.reportsNoChange = reportsNoChange;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realtime.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/realtime.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"realtime.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/realtime.ts"],"names":[],"mappings":";;;AAuCA,kEAMC;AAQD,sEAQC;AAgHD,oDAwCC;AAGD,kDA0CC;AAlQD,6DAImC;AACnC,gEAA6D;AAE7D,sEAAsE;AACtE,+DAAyD;AACzD,wCAAyC;AACzC,kDAAsD;AAEtD,gDAAsD;AACtD,4DAA6D;AAC7D,iCAAoE;AACpE,6DAAiE;AACjE,0CAMqB;AAErB,MAAM,uBAAuB,GAAG,oBAAoB,CAAC;AACrD,gBAAgB;AACH,QAAA,uBAAuB,GAAG,WAAW,CAAC;AACnD,gBAAgB;AACH,QAAA,+BAA+B,GAAG,GAAG,CAAC;AACnD,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAE7B;;;;;;GAMG;AACH,SAAgB,2BAA2B,CACzC,MAAc,EACd,kBAA0B;IAE1B,IAAA,4BAAiB,EAAC,MAAM,EAAE,IAAA,4BAAiB,EAAC,kBAAkB,CAAC,CAAC,CAAC;IACjE,IAAA,4BAAiB,EAAC,MAAM,EAAE,IAAA,iCAAsB,EAAC,kBAAkB,CAAC,CAAC,CAAC;AACxE,CAAC;AAED;;;;;GAKG;AACH,SAAgB,6BAA6B,CAC3C,MAAc,EACd,KAAoC;IAEpC,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3D,IAAA,4BAAiB,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACnC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,wBAAwB,CACrC,OAAgC;IAEhC,MAAM,mBAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IACxC,KAAK,MAAM,QAAQ,IAAI,8CAAyB,CAAC,MAAM,EAAE,EAAE,CAAC;QAC1D,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iBAAO,CAAC,KAAK,CACX,gDAAgD,OAAO,CAAC,kBAAkB,IAAI,EAC9E,KAAK,CACN,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AASD,gBAAgB;AACT,MAAM,iBAAiB,GAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;IACrE,mKAAmK;IACnK,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IACrD,sIAAsI;IACtI,uLAAuL;IACvL,MAAM,KAAK,GAAI,MAAkC,CAAC,KAAK,CAAC,CAAC;IACzD,8KAA8K;IAC9K,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,CAAC,CAAC;AARW,QAAA,iBAAiB,qBAQ5B;AAEF,gBAAgB;AACT,MAAM,oBAAoB,GAAgB,CAAC,IAAI,EAAE,EAAE;IACxD,MAAM,MAAM,GAEa,IAAI,CAAC,YAAY,CAAC,CAAC;IAC5C,OAAO,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACvC,CAAC,CAAC;AALW,QAAA,oBAAoB,wBAK/B;AAEF,gBAAgB;AACT,MAAM,mBAAmB,GAAgB,CAAC,IAAI,EAAE,EAAE;IACvD,MAAM,MAAM,GAEa,IAAI,CAAC,YAAY,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM,EAAE,EAAE;QAAE,OAAO,EAAE,CAAC;IAC3B,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAC5D,CAAC,CAAC;AANW,QAAA,mBAAmB,uBAM9B;AAEF,gBAAgB;AACT,MAAM,iBAAiB,GAAgB,CAAC,IAAI,EAAE,EAAE;IACrD,MAAM,GAAG,GAEsB,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACxD,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IACpB,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAC1C,CAAC,CAAC;AANW,QAAA,iBAAiB,qBAM5B;AAEF,MAAM,iBAAiB,GAAG,CAAC,MAE1B,EAAW,EAAE,CAAC,IAAA,0BAAmB,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC;AAEtE;;;GAGG;AACH,MAAM,gBAAgB,GAAG,CACvB,MAAqE,EACrE,GAAmB,EACC,EAAE,CACtB,IAAA,4BAAW,EAAC,MAAM,CAAC,WAAW,EAAE,sBAAW,CAAC,CAAC,UAAU,KAAK,4BAAgB;IAC1E,CAAC,CAAC,SAAS;IACX,CAAC,CAAC,IAAA,mCAAkB,EAAC,GAAG,CAAC,CAAC;AAE9B,MAAM,kBAAkB,GAAkD;IACxE,SAAS;IACT,eAAe;IACf,eAAe;CAChB,CAAC;AAEF;;;;GAIG;AACH,gBAAgB;AAChB,yMAAyM;AAClM,MAAM,eAAe,GAAG,CAAC,MAAe,EAAW,EAAE;IAC1D,0JAA0J;IAC1J,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,KAAK,CAAC,CAAC;IACpD,wKAAwK;IACxK,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxD,sMAAsM;IACtM,MAAM,KAAK,GACT,MAAM,CAAC;IACT,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,CACnC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAEpB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;IAChE,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC;AACnE,CAAC,CAAC;AAbW,QAAA,eAAe,mBAa1B;AAOF,gBAAgB;AAChB,SAAgB,oBAAoB,CAClC,MAAsB,EACtB,SAAY;IAEZ,OAAO;QACL,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,IAAI,EAAE;YACJ,GAAG,SAAS,CAAC,IAAI;YACjB,IAAA,uBAAO,GAAE;YACT,IAAA,yBAAS,EAAC,uBAAuB,EAAE,QAAQ,CAAC;YAC5C,IAAA,eAAQ,GAAE;SACX;QACD,IAAI,EAAE,KAAK,WAET,GAAG,OAAmD;YAEtD,MAAM,IAAI,GAAS,OAAO,CAAC,GAAG,EAAE,CAAC;YACjC,MAAM,SAAS,GAAuB,OAAO,CAAC,GAAG,EAAE,CAAC;YACpD,MAAM,GAAG,GAAmB,OAAO,CAAC,GAAG,EAAE,CAAC;YAC1C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACzD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;gBAAE,OAAO,MAAM,CAAC;YAC5C,MAAM,IAAI,GAAG,IAAA,0BAAmB,EAAC,IAAI,CAAC,CAAC;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC;YAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YACtD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS;gBAAE,OAAO,MAAM,CAAC;YACtE,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,IAAA,uBAAe,EAAC,MAAM,CAAC,EAAE,CAAC;gBAC9D,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,MAAM,wBAAwB,CAAC;gBAC7B,kBAAkB,EAAE,IAAA,4BAAqB,EAAC,IAAI,CAAC;gBAC/C,QAAQ,EAAE,KAAK;gBACf,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,GAAG;gBACH,SAAS;gBACT,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;gBAC7D,QAAQ,EAAE,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC;aACtC,CAAC,CAAC;YACH,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,gBAAgB;AAChB,SAAgB,mBAAmB,CACjC,SAAY;IAEZ,OAAO;QACL,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,IAAI,EAAE;YACJ,GAAG,SAAS,CAAC,IAAI;YACjB,IAAA,uBAAO,GAAE;YACT,IAAA,yBAAS,EAAC,uBAAuB,EAAE,QAAQ,CAAC;YAC5C,IAAA,yBAAS,EAAC,+BAAuB,EAAE,OAAO,CAAC;YAC3C,IAAA,eAAQ,GAAE;SACX;QACD,IAAI,EAAE,KAAK,WAET,GAAG,OAAmD;YAEtD,MAAM,IAAI,GAAS,OAAO,CAAC,GAAG,EAAE,CAAC;YACjC,MAAM,YAAY,GAAuB,OAAO,CAAC,GAAG,EAAE,CAAC;YACvD,MAAM,SAAS,GAAuB,OAAO,CAAC,GAAG,EAAE,CAAC;YACpD,MAAM,GAAG,GAAmB,OAAO,CAAC,GAAG,EAAE,CAAC;YAC1C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACzD,IACE,YAAY,KAAK,uCAA+B;gBAChD,CAAC,SAAS;gBACV,CAAC,iBAAiB,CAAC,IAAI,CAAC,EACxB,CAAC;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,MAAM,MAAM,GAAgC,OAAO,CAAC,YAAY,CAAC,CAAC;YAClE,IAAI,CAAC,MAAM,EAAE,EAAE;gBAAE,OAAO,MAAM,CAAC;YAC/B,MAAM,IAAI,GAAG,IAAA,0BAAmB,EAAC,IAAI,CAAC,CAAC;YACvC,MAAM,mBAAQ,CAAC,eAAe,CAAC;gBAC7B,kBAAkB,EAAE,IAAA,4BAAqB,EAAC,IAAI,CAAC;gBAC/C,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK;gBACxC,SAAS;gBACT,KAAK,EAAE,MAAM,CAAC,EAAE;gBAChB,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;gBAC7D,QAAQ,EAAE,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC;aACtC,CAAC,CAAC;YACH,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// What one request is served of a table view's options: the actions, row
|
|
3
|
-
// actions and custom buttons the caller's permissions admit, with the rules
|
|
4
|
-
// the server enforces on them.
|
|
5
|
-
//
|
|
6
|
-
// Split out of factory-helpers.ts.
|
|
7
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
3
|
exports.resolveTableViewGrants = resolveTableViewGrants;
|
|
9
4
|
exports.applyPermissionToAction = applyPermissionToAction;
|
|
@@ -32,11 +27,17 @@ const GRANTED_ACTIONS = [
|
|
|
32
27
|
* @internal
|
|
33
28
|
*/
|
|
34
29
|
async function resolveTableViewGrants(permissions, permissionId) {
|
|
35
|
-
const
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
30
|
+
const holds = (action) => (0, permissions_1.HasPermission)(permissions, `${permissionId}.${action}`);
|
|
31
|
+
return {
|
|
32
|
+
add: await holds("add"),
|
|
33
|
+
edit: await holds("edit"),
|
|
34
|
+
delete: await holds("delete"),
|
|
35
|
+
view: await holds("view"),
|
|
36
|
+
archive: await holds("archive"),
|
|
37
|
+
restore: await holds("restore"),
|
|
38
|
+
viewArchived: await holds("viewArchived"),
|
|
39
|
+
export: await holds("export"),
|
|
40
|
+
};
|
|
40
41
|
}
|
|
41
42
|
/**
|
|
42
43
|
* A built-in row action as served to a caller: refused (`false`) without
|
|
@@ -100,14 +101,13 @@ function adaptRowActions({ rowActions, archiveMode, grants, custom, controllerRu
|
|
|
100
101
|
custom,
|
|
101
102
|
menuLabel: rowActions?.menuLabel,
|
|
102
103
|
};
|
|
103
|
-
// The table's own rules are already in its options; the controller's rule
|
|
104
|
-
// applies where it declared none, as the routes enforce it.
|
|
105
104
|
if (controllerRules) {
|
|
106
105
|
for (const actionName of CONTROLLER_RULED_ACTIONS) {
|
|
107
106
|
adapted[actionName] = mergeControllerRule(adapted[actionName], (0, row_rules_1.extractRuleFromConfig)(controllerRules, actionName));
|
|
108
107
|
}
|
|
109
108
|
}
|
|
110
109
|
const editHasNoRules = adapted.edit === true ||
|
|
110
|
+
// oxlint-disable-next-line anti-slop/no-runtime-typeof -- The published action configuration permits boolean shorthand or a rule object; this branch selects the rule object.
|
|
111
111
|
(typeof adapted.edit === "object" && !adapted.edit.rule);
|
|
112
112
|
if (editHasNoRules) {
|
|
113
113
|
adapted.details = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-filter.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/request-filter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"request-filter.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/request-filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// The form over a resource: its fields and the routes it loads and submits
|
|
3
|
-
// through, derived from the DataController for a mode. The forms a TableView
|
|
4
|
-
// opens and the ones a ResourceForm block renders are built here and nowhere
|
|
5
|
-
// else, so the shape of a route changes in one place for both.
|
|
6
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
3
|
exports.stampAttachmentFields = stampAttachmentFields;
|
|
8
4
|
exports.resourceForm = resourceForm;
|
|
@@ -17,8 +13,6 @@ function formRoutes(location, mode, rowId) {
|
|
|
17
13
|
switch (mode) {
|
|
18
14
|
case "new":
|
|
19
15
|
return {
|
|
20
|
-
// A row being duplicated seeds the new one; without the query the
|
|
21
|
-
// token stays unresolved and nothing is fetched.
|
|
22
16
|
fetchUrl: `${location}/get?id={{query.duplicate}}`,
|
|
23
17
|
fetchUrlMethod: types_1.HttpMethod.get,
|
|
24
18
|
submitUrl: `${location}/new`,
|
|
@@ -51,6 +45,7 @@ function stampAttachmentFields(meta, location) {
|
|
|
51
45
|
for (const [columnKey, column] of Object.entries(meta.columns)) {
|
|
52
46
|
const typeId = (0, core_1.getDataTypeId)(column.type);
|
|
53
47
|
if (typeId === "file" || typeId === "image") {
|
|
48
|
+
// oxlint-disable-next-line anti-slop/require-safety-comment-for-type-assertion, anti-slop/no-unsafe-dictionary-type -- Registry ids select attachment types without narrowing DataType.options; this unchecked write preserves the published stamping behavior for module registrations.
|
|
54
49
|
const typeOptions = column.type.options;
|
|
55
50
|
typeOptions.attachmentField = `${location}#${columnKey}`;
|
|
56
51
|
}
|
|
@@ -81,10 +76,6 @@ function resourceForm(controller, mode, options = {}) {
|
|
|
81
76
|
fields,
|
|
82
77
|
...formRoutes(location, mode, rowId),
|
|
83
78
|
});
|
|
84
|
-
// A form that submits to the controller's write routes is a provenance the
|
|
85
|
-
// routes accept files from, as each of its TableViews is. That covers a
|
|
86
|
-
// TableView's own form too: a page-mode TableView mounts it as the component
|
|
87
|
-
// of its form sub-page, whose upload tokens are claimed under that form.
|
|
88
79
|
if (mode !== "view")
|
|
89
80
|
meta.addResourceFormBuilder(form);
|
|
90
81
|
return form;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-form.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/resource-form.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resource-form.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/resource-form.ts"],"names":[],"mappings":";;AA2DA,sDAYC;AAaD,oCAoBC;AAvGD,+DAAyD;AACzD,gDAAsD;AACtD,mDAAyC;AAEzC,qEAIoC;AACpC,uCAAyC;AACzC,kCAAwC;AACxC,yCAGoB;AAOpB,SAAS,UAAU,CACjB,QAAgB,EAChB,IAAsB,EACtB,KAAa;IAEb,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,KAAK;YACR,OAAO;gBACL,QAAQ,EAAE,GAAG,QAAQ,6BAA6B;gBAClD,cAAc,EAAE,kBAAU,CAAC,GAAG;gBAC9B,SAAS,EAAE,GAAG,QAAQ,MAAM;gBAC5B,eAAe,EAAE,kBAAU,CAAC,IAAI;gBAChC,IAAI,EAAE,QAAQ;aACf,CAAC;QACJ,KAAK,MAAM;YACT,OAAO;gBACL,QAAQ,EAAE,GAAG,QAAQ,WAAW,KAAK,IAAI,kCAAuB,IAAI,0CAA+B,EAAE;gBACrG,cAAc,EAAE,kBAAU,CAAC,GAAG;gBAC9B,SAAS,EAAE,GAAG,QAAQ,YAAY,KAAK,EAAE;gBACzC,eAAe,EAAE,kBAAU,CAAC,GAAG;aAChC,CAAC;QACJ,KAAK,MAAM;YACT,OAAO;gBACL,QAAQ,EAAE,GAAG,QAAQ,WAAW,KAAK,EAAE;gBACvC,cAAc,EAAE,kBAAU,CAAC,GAAG;aAC/B,CAAC;IACN,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,qBAAqB,CACnC,IAAmB,EACnB,QAAgB;IAEhB,KAAK,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/D,MAAM,MAAM,GAAG,IAAA,oBAAa,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5C,yRAAyR;YACzR,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,OAAkC,CAAC;YACnE,WAAW,CAAC,eAAe,GAAG,GAAG,QAAQ,IAAI,SAAS,EAAE,CAAC;QAC3D,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,YAAY,CAC1B,UAAa,EACb,IAAsB,EACtB,UAA+B,EAAE;IAEjC,MAAM,IAAI,GAAG,IAAA,4BAAW,EAAC,UAAU,EAAE,oBAAa,CAAC,CAAC;IACpD,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;IACjC,qBAAqB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,EAAE,KAAK,GAAG,yCAAkB,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC;IAC/D,MAAM,IAAI,GAAG,IAAA,kBAAI,EAAC;QAChB,GAAG,WAAW;QACd,MAAM;QACN,GAAG,UAAU,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC;KACrC,CAAC,CAAC;IACH,IAAI,IAAI,KAAK,MAAM;QAAE,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// The builder schema of a table view's row actions, each a switch that may
|
|
3
|
-
// carry a rule.
|
|
4
|
-
//
|
|
5
|
-
// Split out of table-view/schema.ts.
|
|
6
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
3
|
exports.rowActionsSchema = void 0;
|
|
8
4
|
const zod_1 = require("zod");
|
|
@@ -30,8 +26,6 @@ exports.rowActionsSchema = zod_1.z.object({
|
|
|
30
26
|
add: rowActionOption("Adding data", 1),
|
|
31
27
|
edit: rowActionOption("Editing data", 2),
|
|
32
28
|
delete: rowActionOption("Deleting data", 3),
|
|
33
|
-
// Turned off whenever editing is on without a rule: editing opens the row
|
|
34
|
-
// already, so the factory drops the second way in.
|
|
35
29
|
details: rowActionOption("View details", 6, {
|
|
36
30
|
offered: false,
|
|
37
31
|
note: "Offered while editing is off: editing already opens the row.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"row-actions-schema.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/row-actions-schema.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"row-actions-schema.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/row-actions-schema.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,yDAA8E;AAI9E,MAAM,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,SAAS,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACjC,IAAI,EAAE,IAAA,mBAAE,EAAC,IAAA,6BAAY,GAAiB,CAAC,QAAQ,EAAE,EAAE;QACjD,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,MAAM;KACf,CAAC;CACH,CAAC,CAAC;AAaH,MAAM,eAAe,GAAG,CACtB,KAAa,EACb,KAAa,EACb,EAAE,OAAO,GAAG,IAAI,EAAE,IAAI,KAAwB,EAAE,EAChD,EAAE;IACF,MAAM,MAAM,GAAG,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,OAAO,EAAE,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACxD,OAAO,IAAA,mBAAE,EAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE;QAClE,KAAK;QACL,KAAK;QACL,KAAK,EAAE,UAAU;QACjB,MAAM,EAAE,QAAQ;KACjB,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,mEAAmE;AACtD,QAAA,gBAAgB,GAAG,OAAC,CAAC,MAAM,CAAC;IACvC,GAAG,EAAE,eAAe,CAAC,aAAa,EAAE,CAAC,CAAC;IACtC,IAAI,EAAE,eAAe,CAAC,cAAc,EAAE,CAAC,CAAC;IACxC,MAAM,EAAE,eAAe,CAAC,eAAe,EAAE,CAAC,CAAC;IAC3C,OAAO,EAAE,eAAe,CAAC,cAAc,EAAE,CAAC,EAAE;QAC1C,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,8DAA8D;KACrE,CAAC;IACF,SAAS,EAAE,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC;IAC1C,OAAO,EAAE,eAAe,CAAC,SAAS,EAAE,CAAC,EAAE;QACrC,IAAI,EAAE,mCAAmC;KAC1C,CAAC;IACF,OAAO,EAAE,eAAe,CAAC,SAAS,EAAE,CAAC,EAAE;QACrC,IAAI,EAAE,mCAAmC;KAC1C,CAAC;IACF,QAAQ,EAAE,eAAe,CAAC,WAAW,EAAE,EAAE,CAAC;IAC1C,YAAY,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE;QACvC,KAAK,EAAE,eAAe;QACtB,KAAK,EAAE,EAAE;QACT,KAAK,EAAE,UAAU;QACjB,MAAM,EAAE,QAAQ;KACjB,CAAC;IACF,MAAM,EAAE,IAAA,mBAAE,EAAC,IAAA,6BAAY,GAAqB,CAAC,QAAQ,EAAE,EAAE;QACvD,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,IAAI;KACb,CAAC;IACF,SAAS,EAAE,IAAA,mBAAE,EACX,OAAC;SACE,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,6DAA6D,CAAC,EAC1E,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAC1E;CACF,CAAsD,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { RowActionRule } from "../../types/row-action";
|
|
2
|
+
/**
|
|
3
|
+
* What stops a row rule from compiling or evaluating, or `undefined` when its
|
|
4
|
+
* shape holds. It checks the operand of the operator that dispatch selects (a
|
|
5
|
+
* logical operator before a field comparison, the first present of each), at
|
|
6
|
+
* every nesting level, so a rule it accepts never throws a `TypeError`.
|
|
7
|
+
*
|
|
8
|
+
* @internal
|
|
9
|
+
*/
|
|
10
|
+
export declare function rowRuleProblem<T extends Record<string, unknown>>(rule: RowActionRule<T>, path?: string): string | undefined;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.rowRuleProblem = rowRuleProblem;
|
|
4
|
+
const row_action_operators_1 = require("../../types/row-action-operators");
|
|
5
|
+
const type_check_1 = require("../../../utils/internal/type-check");
|
|
6
|
+
const isRuleObject = (value) => (0, type_check_1.isObject)(value) && !(0, type_check_1.isNull)(value) && !Array.isArray(value);
|
|
7
|
+
function operandProblem(operator, operand, path) {
|
|
8
|
+
if (operator === "not") {
|
|
9
|
+
return Array.isArray(operand)
|
|
10
|
+
? `${path} must be a rule object`
|
|
11
|
+
: rowRuleProblem(operand, path);
|
|
12
|
+
}
|
|
13
|
+
if (!Array.isArray(operand))
|
|
14
|
+
return `${path} must be an array of rules`;
|
|
15
|
+
return operand
|
|
16
|
+
.map((entry, index) => rowRuleProblem(entry, `${path}[${index}]`))
|
|
17
|
+
.find((problem) => problem !== undefined);
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* What stops a row rule from compiling or evaluating, or `undefined` when its
|
|
21
|
+
* shape holds. It checks the operand of the operator that dispatch selects (a
|
|
22
|
+
* logical operator before a field comparison, the first present of each), at
|
|
23
|
+
* every nesting level, so a rule it accepts never throws a `TypeError`.
|
|
24
|
+
*
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
27
|
+
function rowRuleProblem(rule, path = "rule") {
|
|
28
|
+
if (!isRuleObject(rule))
|
|
29
|
+
return `${path} must be a rule object`;
|
|
30
|
+
const operands = new Map(Object.entries(rule));
|
|
31
|
+
const logical = row_action_operators_1.LOGICAL_OPERATOR_KEYS.find((key) => operands.has(key));
|
|
32
|
+
if (logical) {
|
|
33
|
+
return operandProblem(logical, operands.get(logical), `${path}.${logical}`);
|
|
34
|
+
}
|
|
35
|
+
const comparison = Object.entries(row_action_operators_1.FIELD_OPERATORS).find(([key]) => operands.has(key));
|
|
36
|
+
if (!comparison)
|
|
37
|
+
return undefined;
|
|
38
|
+
const [operator, { isArray }] = comparison;
|
|
39
|
+
return isArray && !Array.isArray(operands.get(operator))
|
|
40
|
+
? `${path}.${operator} must be an array`
|
|
41
|
+
: undefined;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=row-rule-shape.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"row-rule-shape.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/row-rule-shape.ts"],"names":[],"mappings":";;AAoCA,wCAkBC;AArDD,2EAG0C;AAC1C,mEAAsE;AAEtE,MAAM,YAAY,GAAG,CACnB,KAAuB,EACa,EAAE,CACtC,IAAA,qBAAQ,EAAC,KAAK,CAAC,IAAI,CAAC,IAAA,mBAAM,EAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAE7D,SAAS,cAAc,CACrB,QAAgD,EAChD,OAA8C,EAC9C,IAAY;IAEZ,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAC3B,CAAC,CAAC,GAAG,IAAI,wBAAwB;YACjC,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,GAAG,IAAI,4BAA4B,CAAC;IACxE,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,GAAG,IAAI,IAAI,KAAK,GAAG,CAAC,CAAC;SACjE,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,cAAc,CAC5B,IAAsB,EACtB,IAAI,GAAG,MAAM;IAEb,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,IAAI,wBAAwB,CAAC;IAChE,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,4CAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACvE,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC;IAC9E,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,sCAAe,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAChE,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAClB,CAAC;IACF,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAClC,MAAM,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC;IAC3C,OAAO,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtD,CAAC,CAAC,GAAG,IAAI,IAAI,QAAQ,mBAAmB;QACxC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC"}
|
|
@@ -28,8 +28,6 @@ const ACTION_VALIDATION_CONFIGS = {
|
|
|
28
28
|
extractIds: (params) => [params.id],
|
|
29
29
|
emptyResultBehavior: EmptyResultBehavior.Strict,
|
|
30
30
|
},
|
|
31
|
-
// A bulk route's first argument after the context is the id list itself:
|
|
32
|
-
// the rows a rule rejects are dropped from it before the operation runs.
|
|
33
31
|
archive: {
|
|
34
32
|
extractIds: (ids) => (0, exports.normalizeToArray)(ids),
|
|
35
33
|
emptyResultBehavior: EmptyResultBehavior.Graceful,
|
|
@@ -43,8 +41,6 @@ const ACTION_VALIDATION_CONFIGS = {
|
|
|
43
41
|
transformParams: (_ids, eligibleIds) => eligibleIds,
|
|
44
42
|
},
|
|
45
43
|
};
|
|
46
|
-
// The writing TableView's rules and options are the controller's: it is the
|
|
47
|
-
// only one the write routes serve.
|
|
48
44
|
const getValidationContext = (controller, actionName) => {
|
|
49
45
|
const meta = (0, interface_core_1.GetMetadata)(controller.constructor, meta_1.TableViewMeta);
|
|
50
46
|
return {
|
|
@@ -56,6 +52,7 @@ const getValidationContext = (controller, actionName) => {
|
|
|
56
52
|
/** @internal */
|
|
57
53
|
const extractRuleFromConfig = (controllerRules, actionName) => {
|
|
58
54
|
const actionConfig = controllerRules?.[actionName];
|
|
55
|
+
// oxlint-disable-next-line anti-slop/no-runtime-typeof -- The action option explicitly permits boolean shorthand or an object rule configuration.
|
|
59
56
|
if (typeof actionConfig === "object" && actionConfig !== null) {
|
|
60
57
|
return actionConfig.rule;
|
|
61
58
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"row-rules.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/row-rules.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"row-rules.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/row-rules.ts"],"names":[],"mappings":"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"}
|