@antelopejs/interface-dms 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -0
- package/LICENSE +190 -0
- package/README.md +73 -0
- package/dist/attachments.d.ts +38 -0
- package/dist/attachments.js +11 -0
- package/dist/attachments.js.map +1 -0
- package/dist/auth/db/index.d.ts +2 -0
- package/dist/auth/db/index.js +19 -0
- package/dist/auth/db/index.js.map +1 -0
- package/dist/auth/db/models/index.d.ts +3 -0
- package/dist/auth/db/models/index.js +20 -0
- package/dist/auth/db/models/index.js.map +1 -0
- package/dist/auth/db/models/sessions.model.d.ts +28 -0
- package/dist/auth/db/models/sessions.model.js +78 -0
- package/dist/auth/db/models/sessions.model.js.map +1 -0
- package/dist/auth/db/models/userExternalIdentities.model.d.ts +26 -0
- package/dist/auth/db/models/userExternalIdentities.model.js +31 -0
- package/dist/auth/db/models/userExternalIdentities.model.js.map +1 -0
- package/dist/auth/db/models/users.model.d.ts +25 -0
- package/dist/auth/db/models/users.model.js +43 -0
- package/dist/auth/db/models/users.model.js.map +1 -0
- package/dist/auth/db/tables/index.d.ts +3 -0
- package/dist/auth/db/tables/index.js +20 -0
- package/dist/auth/db/tables/index.js.map +1 -0
- package/dist/auth/db/tables/sessions.table.d.ts +17 -0
- package/dist/auth/db/tables/sessions.table.js +79 -0
- package/dist/auth/db/tables/sessions.table.js.map +1 -0
- package/dist/auth/db/tables/userExternalIdentities.table.d.ts +11 -0
- package/dist/auth/db/tables/userExternalIdentities.table.js +55 -0
- package/dist/auth/db/tables/userExternalIdentities.table.js.map +1 -0
- package/dist/auth/db/tables/users.table.d.ts +30 -0
- package/dist/auth/db/tables/users.table.js +116 -0
- package/dist/auth/db/tables/users.table.js.map +1 -0
- package/dist/auth/index.d.ts +87 -0
- package/dist/auth/index.js +197 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/request-authenticators.d.ts +12 -0
- package/dist/auth/request-authenticators.js +80 -0
- package/dist/auth/request-authenticators.js.map +1 -0
- package/dist/base/block-registry/describe.d.ts +6 -0
- package/dist/base/block-registry/describe.js +234 -0
- package/dist/base/block-registry/describe.js.map +1 -0
- package/dist/base/block-registry/helpers.d.ts +6 -0
- package/dist/base/block-registry/helpers.js +25 -0
- package/dist/base/block-registry/helpers.js.map +1 -0
- package/dist/base/block-registry/index.d.ts +3 -0
- package/dist/base/block-registry/index.js +20 -0
- package/dist/base/block-registry/index.js.map +1 -0
- package/dist/base/block-registry/registry.d.ts +19 -0
- package/dist/base/block-registry/registry.js +89 -0
- package/dist/base/block-registry/registry.js.map +1 -0
- package/dist/base/block-registry/types.d.ts +73 -0
- package/dist/base/block-registry/types.js +3 -0
- package/dist/base/block-registry/types.js.map +1 -0
- package/dist/base/block-registry/ui.d.ts +5 -0
- package/dist/base/block-registry/ui.js +17 -0
- package/dist/base/block-registry/ui.js.map +1 -0
- package/dist/base/block-types.d.ts +15 -0
- package/dist/base/block-types.js +32 -0
- package/dist/base/block-types.js.map +1 -0
- package/dist/base/chart-card.d.ts +67 -0
- package/dist/base/chart-card.js +97 -0
- package/dist/base/chart-card.js.map +1 -0
- package/dist/base/chart-schemas.d.ts +2695 -0
- package/dist/base/chart-schemas.js +367 -0
- package/dist/base/chart-schemas.js.map +1 -0
- package/dist/base/chart.d.ts +201 -0
- package/dist/base/chart.js +99 -0
- package/dist/base/chart.js.map +1 -0
- package/dist/base/custom.d.ts +2 -0
- package/dist/base/custom.js +8 -0
- package/dist/base/custom.js.map +1 -0
- package/dist/base/data-types/compare-types.d.ts +50 -0
- package/dist/base/data-types/compare-types.js +231 -0
- package/dist/base/data-types/compare-types.js.map +1 -0
- package/dist/base/data-types/core.d.ts +35 -0
- package/dist/base/data-types/core.js +92 -0
- package/dist/base/data-types/core.js.map +1 -0
- package/dist/base/data-types/default-types.d.ts +456 -0
- package/dist/base/data-types/default-types.js +842 -0
- package/dist/base/data-types/default-types.js.map +1 -0
- package/dist/base/data-types/index.d.ts +3 -0
- package/dist/base/data-types/index.js +20 -0
- package/dist/base/data-types/index.js.map +1 -0
- package/dist/base/data-types/status-type.d.ts +18 -0
- package/dist/base/data-types/status-type.js +42 -0
- package/dist/base/data-types/status-type.js.map +1 -0
- package/dist/base/export-jobs.d.ts +97 -0
- package/dist/base/export-jobs.js +30 -0
- package/dist/base/export-jobs.js.map +1 -0
- package/dist/base/form-block-schema.d.ts +207 -0
- package/dist/base/form-block-schema.js +116 -0
- package/dist/base/form-block-schema.js.map +1 -0
- package/dist/base/form-schema.d.ts +211 -0
- package/dist/base/form-schema.js +281 -0
- package/dist/base/form-schema.js.map +1 -0
- package/dist/base/form.d.ts +69 -0
- package/dist/base/form.js +26 -0
- package/dist/base/form.js.map +1 -0
- package/dist/base/grid.d.ts +21 -0
- package/dist/base/grid.js +70 -0
- package/dist/base/grid.js.map +1 -0
- package/dist/base/helpers/archive-mode-helpers.d.ts +2 -0
- package/dist/base/helpers/archive-mode-helpers.js +43 -0
- package/dist/base/helpers/archive-mode-helpers.js.map +1 -0
- package/dist/base/helpers/file-refs.d.ts +15 -0
- package/dist/base/helpers/file-refs.js +131 -0
- package/dist/base/helpers/file-refs.js.map +1 -0
- package/dist/base/index.d.ts +22 -0
- package/dist/base/index.js +39 -0
- package/dist/base/index.js.map +1 -0
- package/dist/base/kpi-card.d.ts +81 -0
- package/dist/base/kpi-card.js +99 -0
- package/dist/base/kpi-card.js.map +1 -0
- package/dist/base/layouts.d.ts +8 -0
- package/dist/base/layouts.js +24 -0
- package/dist/base/layouts.js.map +1 -0
- package/dist/base/period-selector.d.ts +62 -0
- package/dist/base/period-selector.js +103 -0
- package/dist/base/period-selector.js.map +1 -0
- package/dist/base/placeholder.d.ts +21 -0
- package/dist/base/placeholder.js +46 -0
- package/dist/base/placeholder.js.map +1 -0
- package/dist/base/searchable.d.ts +9 -0
- package/dist/base/searchable.js +27 -0
- package/dist/base/searchable.js.map +1 -0
- package/dist/base/stack.d.ts +65 -0
- package/dist/base/stack.js +132 -0
- package/dist/base/stack.js.map +1 -0
- package/dist/base/tab.d.ts +174 -0
- package/dist/base/tab.js +101 -0
- package/dist/base/tab.js.map +1 -0
- package/dist/base/table-view/auth.d.ts +9 -0
- package/dist/base/table-view/auth.js +71 -0
- package/dist/base/table-view/auth.js.map +1 -0
- package/dist/base/table-view/data-functions.d.ts +45 -0
- package/dist/base/table-view/data-functions.js +14 -0
- package/dist/base/table-view/data-functions.js.map +1 -0
- package/dist/base/table-view/factory-helpers.d.ts +25 -0
- package/dist/base/table-view/factory-helpers.js +121 -0
- package/dist/base/table-view/factory-helpers.js.map +1 -0
- package/dist/base/table-view/factory.d.ts +13 -0
- package/dist/base/table-view/factory.js +402 -0
- package/dist/base/table-view/factory.js.map +1 -0
- package/dist/base/table-view/files.d.ts +2 -0
- package/dist/base/table-view/files.js +28 -0
- package/dist/base/table-view/files.js.map +1 -0
- package/dist/base/table-view/guards.d.ts +7 -0
- package/dist/base/table-view/guards.js +85 -0
- package/dist/base/table-view/guards.js.map +1 -0
- package/dist/base/table-view/meta.d.ts +79 -0
- package/dist/base/table-view/meta.js +218 -0
- package/dist/base/table-view/meta.js.map +1 -0
- package/dist/base/table-view/options.d.ts +152 -0
- package/dist/base/table-view/options.js +8 -0
- package/dist/base/table-view/options.js.map +1 -0
- package/dist/base/table-view/realtime.d.ts +49 -0
- package/dist/base/table-view/realtime.js +160 -0
- package/dist/base/table-view/realtime.js.map +1 -0
- package/dist/base/table-view/routes.d.ts +26 -0
- package/dist/base/table-view/routes.js +147 -0
- package/dist/base/table-view/routes.js.map +1 -0
- package/dist/base/table-view/row-rules.d.ts +8 -0
- package/dist/base/table-view/row-rules.js +95 -0
- package/dist/base/table-view/row-rules.js.map +1 -0
- package/dist/base/table-view/schema.d.ts +779 -0
- package/dist/base/table-view/schema.js +220 -0
- package/dist/base/table-view/schema.js.map +1 -0
- package/dist/base/table-view.d.ts +11 -0
- package/dist/base/table-view.js +56 -0
- package/dist/base/table-view.js.map +1 -0
- package/dist/base/tenant-export-archive.d.ts +22 -0
- package/dist/base/tenant-export-archive.js +9 -0
- package/dist/base/tenant-export-archive.js.map +1 -0
- package/dist/base/top-list-card.d.ts +171 -0
- package/dist/base/top-list-card.js +121 -0
- package/dist/base/top-list-card.js.map +1 -0
- package/dist/base/tree.d.ts +114 -0
- package/dist/base/tree.js +145 -0
- package/dist/base/tree.js.map +1 -0
- package/dist/base/types/action-target.d.ts +100 -0
- package/dist/base/types/action-target.js +3 -0
- package/dist/base/types/action-target.js.map +1 -0
- package/dist/base/types/base-component-props.d.ts +4 -0
- package/dist/base/types/base-component-props.js +3 -0
- package/dist/base/types/base-component-props.js.map +1 -0
- package/dist/base/types/button.d.ts +7 -0
- package/dist/base/types/button.js +12 -0
- package/dist/base/types/button.js.map +1 -0
- package/dist/base/types/color.d.ts +10 -0
- package/dist/base/types/color.js +14 -0
- package/dist/base/types/color.js.map +1 -0
- package/dist/base/types/component-input.d.ts +2 -0
- package/dist/base/types/component-input.js +3 -0
- package/dist/base/types/component-input.js.map +1 -0
- package/dist/base/types/custom-button.d.ts +15 -0
- package/dist/base/types/custom-button.js +3 -0
- package/dist/base/types/custom-button.js.map +1 -0
- package/dist/base/types/error.d.ts +5 -0
- package/dist/base/types/error.js +15 -0
- package/dist/base/types/error.js.map +1 -0
- package/dist/base/types/export-status.d.ts +5 -0
- package/dist/base/types/export-status.js +10 -0
- package/dist/base/types/export-status.js.map +1 -0
- package/dist/base/types/field-config.d.ts +13 -0
- package/dist/base/types/field-config.js +3 -0
- package/dist/base/types/field-config.js.map +1 -0
- package/dist/base/types/form-mode.d.ts +5 -0
- package/dist/base/types/form-mode.js +10 -0
- package/dist/base/types/form-mode.js.map +1 -0
- package/dist/base/types/form-values.d.ts +2 -0
- package/dist/base/types/form-values.js +3 -0
- package/dist/base/types/form-values.js.map +1 -0
- package/dist/base/types/guards.d.ts +28 -0
- package/dist/base/types/guards.js +3 -0
- package/dist/base/types/guards.js.map +1 -0
- package/dist/base/types/http.d.ts +9 -0
- package/dist/base/types/http.js +14 -0
- package/dist/base/types/http.js.map +1 -0
- package/dist/base/types/index.d.ts +16 -0
- package/dist/base/types/index.js +33 -0
- package/dist/base/types/index.js.map +1 -0
- package/dist/base/types/json.d.ts +4 -0
- package/dist/base/types/json.js +3 -0
- package/dist/base/types/json.js.map +1 -0
- package/dist/base/types/orientation.d.ts +4 -0
- package/dist/base/types/orientation.js +9 -0
- package/dist/base/types/orientation.js.map +1 -0
- package/dist/base/types/readonly-behavior.d.ts +11 -0
- package/dist/base/types/readonly-behavior.js +10 -0
- package/dist/base/types/readonly-behavior.js.map +1 -0
- package/dist/base/types/row-action-operators.d.ts +32 -0
- package/dist/base/types/row-action-operators.js +24 -0
- package/dist/base/types/row-action-operators.js.map +1 -0
- package/dist/base/types/row-action.d.ts +38 -0
- package/dist/base/types/row-action.js +3 -0
- package/dist/base/types/row-action.js.map +1 -0
- package/dist/base/types/size.d.ts +10 -0
- package/dist/base/types/size.js +13 -0
- package/dist/base/types/size.js.map +1 -0
- package/dist/base/types/watch.d.ts +19 -0
- package/dist/base/types/watch.js +7 -0
- package/dist/base/types/watch.js.map +1 -0
- package/dist/client-base-url.d.ts +1 -0
- package/dist/client-base-url.js +6 -0
- package/dist/client-base-url.js.map +1 -0
- package/dist/component-slots.d.ts +6 -0
- package/dist/component-slots.js +79 -0
- package/dist/component-slots.js.map +1 -0
- package/dist/component.d.ts +131 -0
- package/dist/component.js +346 -0
- package/dist/component.js.map +1 -0
- package/dist/constants.d.ts +4 -0
- package/dist/constants.js +8 -0
- package/dist/constants.js.map +1 -0
- package/dist/data-controllers/index.d.ts +1 -0
- package/dist/data-controllers/index.js +18 -0
- package/dist/data-controllers/index.js.map +1 -0
- package/dist/data-controllers/members.d.ts +34 -0
- package/dist/data-controllers/members.js +163 -0
- package/dist/data-controllers/members.js.map +1 -0
- package/dist/data-controllers/roles.d.ts +27 -0
- package/dist/data-controllers/roles.js +97 -0
- package/dist/data-controllers/roles.js.map +1 -0
- package/dist/db/index.d.ts +2 -0
- package/dist/db/index.js +19 -0
- package/dist/db/index.js.map +1 -0
- package/dist/db/models/exportJobs.model.d.ts +39 -0
- package/dist/db/models/exportJobs.model.js +71 -0
- package/dist/db/models/exportJobs.model.js.map +1 -0
- package/dist/db/models/index.d.ts +7 -0
- package/dist/db/models/index.js +24 -0
- package/dist/db/models/index.js.map +1 -0
- package/dist/db/models/inviteResolutions.model.d.ts +34 -0
- package/dist/db/models/inviteResolutions.model.js +71 -0
- package/dist/db/models/inviteResolutions.model.js.map +1 -0
- package/dist/db/models/roles.model.d.ts +23 -0
- package/dist/db/models/roles.model.js +17 -0
- package/dist/db/models/roles.model.js.map +1 -0
- package/dist/db/models/tenantLifecycle.model.d.ts +27 -0
- package/dist/db/models/tenantLifecycle.model.js +82 -0
- package/dist/db/models/tenantLifecycle.model.js.map +1 -0
- package/dist/db/models/tenantMembers.model.d.ts +35 -0
- package/dist/db/models/tenantMembers.model.js +79 -0
- package/dist/db/models/tenantMembers.model.js.map +1 -0
- package/dist/db/models/tenants.model.d.ts +23 -0
- package/dist/db/models/tenants.model.js +17 -0
- package/dist/db/models/tenants.model.js.map +1 -0
- package/dist/db/models/user_invites.model.d.ts +30 -0
- package/dist/db/models/user_invites.model.js +42 -0
- package/dist/db/models/user_invites.model.js.map +1 -0
- package/dist/db/tables/exportJobs.table.d.ts +22 -0
- package/dist/db/tables/exportJobs.table.js +96 -0
- package/dist/db/tables/exportJobs.table.js.map +1 -0
- package/dist/db/tables/index.d.ts +7 -0
- package/dist/db/tables/index.js +24 -0
- package/dist/db/tables/index.js.map +1 -0
- package/dist/db/tables/inviteResolutions.table.d.ts +20 -0
- package/dist/db/tables/inviteResolutions.table.js +71 -0
- package/dist/db/tables/inviteResolutions.table.js.map +1 -0
- package/dist/db/tables/roles.table.d.ts +9 -0
- package/dist/db/tables/roles.table.js +47 -0
- package/dist/db/tables/roles.table.js.map +1 -0
- package/dist/db/tables/tenantLifecycle.table.d.ts +8 -0
- package/dist/db/tables/tenantLifecycle.table.js +38 -0
- package/dist/db/tables/tenantLifecycle.table.js.map +1 -0
- package/dist/db/tables/tenantMembers.table.d.ts +11 -0
- package/dist/db/tables/tenantMembers.table.js +59 -0
- package/dist/db/tables/tenantMembers.table.js.map +1 -0
- package/dist/db/tables/tenants.table.d.ts +8 -0
- package/dist/db/tables/tenants.table.js +42 -0
- package/dist/db/tables/tenants.table.js.map +1 -0
- package/dist/db/tables/user_invites.table.d.ts +18 -0
- package/dist/db/tables/user_invites.table.js +81 -0
- package/dist/db/tables/user_invites.table.js.map +1 -0
- package/dist/guards.d.ts +18 -0
- package/dist/guards.js +57 -0
- package/dist/guards.js.map +1 -0
- package/dist/hooks.d.ts +122 -0
- package/dist/hooks.js +93 -0
- package/dist/hooks.js.map +1 -0
- package/dist/html-render/index.d.ts +10 -0
- package/dist/html-render/index.js +34 -0
- package/dist/html-render/index.js.map +1 -0
- package/dist/html-render/types.d.ts +12 -0
- package/dist/html-render/types.js +3 -0
- package/dist/html-render/types.js.map +1 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.js +107 -0
- package/dist/index.js.map +1 -0
- package/dist/invite-extensions/delivery.d.ts +6 -0
- package/dist/invite-extensions/delivery.js +94 -0
- package/dist/invite-extensions/delivery.js.map +1 -0
- package/dist/invite-extensions/field-ids.d.ts +7 -0
- package/dist/invite-extensions/field-ids.js +19 -0
- package/dist/invite-extensions/field-ids.js.map +1 -0
- package/dist/invite-extensions/form-slot.d.ts +1 -0
- package/dist/invite-extensions/form-slot.js +181 -0
- package/dist/invite-extensions/form-slot.js.map +1 -0
- package/dist/invite-extensions/registry.d.ts +17 -0
- package/dist/invite-extensions/registry.js +83 -0
- package/dist/invite-extensions/registry.js.map +1 -0
- package/dist/invite-extensions/types.d.ts +67 -0
- package/dist/invite-extensions/types.js +3 -0
- package/dist/invite-extensions/types.js.map +1 -0
- package/dist/invite-extensions.d.ts +5 -0
- package/dist/invite-extensions.js +22 -0
- package/dist/invite-extensions.js.map +1 -0
- package/dist/invite-membership.d.ts +3 -0
- package/dist/invite-membership.js +77 -0
- package/dist/invite-membership.js.map +1 -0
- package/dist/invite-replacement.d.ts +2 -0
- package/dist/invite-replacement.js +74 -0
- package/dist/invite-replacement.js.map +1 -0
- package/dist/invite-resolution.d.ts +9 -0
- package/dist/invite-resolution.js +108 -0
- package/dist/invite-resolution.js.map +1 -0
- package/dist/invites.d.ts +45 -0
- package/dist/invites.js +135 -0
- package/dist/invites.js.map +1 -0
- package/dist/notifications/builder.d.ts +12 -0
- package/dist/notifications/builder.js +36 -0
- package/dist/notifications/builder.js.map +1 -0
- package/dist/notifications/index.d.ts +13 -0
- package/dist/notifications/index.js +64 -0
- package/dist/notifications/index.js.map +1 -0
- package/dist/notifications/internal.d.ts +11 -0
- package/dist/notifications/internal.js +15 -0
- package/dist/notifications/internal.js.map +1 -0
- package/dist/notifications/sendable.d.ts +11 -0
- package/dist/notifications/sendable.js +38 -0
- package/dist/notifications/sendable.js.map +1 -0
- package/dist/notifications/types.d.ts +29 -0
- package/dist/notifications/types.js +3 -0
- package/dist/notifications/types.js.map +1 -0
- package/dist/page/categories.d.ts +39 -0
- package/dist/page/categories.js +215 -0
- package/dist/page/categories.js.map +1 -0
- package/dist/page/component-target.d.ts +11 -0
- package/dist/page/component-target.js +48 -0
- package/dist/page/component-target.js.map +1 -0
- package/dist/page/component-tree.d.ts +9 -0
- package/dist/page/component-tree.js +43 -0
- package/dist/page/component-tree.js.map +1 -0
- package/dist/page/controllers.d.ts +47 -0
- package/dist/page/controllers.js +140 -0
- package/dist/page/controllers.js.map +1 -0
- package/dist/page/extension-assembly.d.ts +10 -0
- package/dist/page/extension-assembly.js +120 -0
- package/dist/page/extension-assembly.js.map +1 -0
- package/dist/page/layout-filter.d.ts +4 -0
- package/dist/page/layout-filter.js +64 -0
- package/dist/page/layout-filter.js.map +1 -0
- package/dist/page/metadata-helpers.d.ts +4 -0
- package/dist/page/metadata-helpers.js +24 -0
- package/dist/page/metadata-helpers.js.map +1 -0
- package/dist/page/metadata.d.ts +62 -0
- package/dist/page/metadata.js +544 -0
- package/dist/page/metadata.js.map +1 -0
- package/dist/page/page-registration.d.ts +13 -0
- package/dist/page/page-registration.js +22 -0
- package/dist/page/page-registration.js.map +1 -0
- package/dist/page/registry.d.ts +34 -0
- package/dist/page/registry.js +110 -0
- package/dist/page/registry.js.map +1 -0
- package/dist/page/roots.d.ts +13 -0
- package/dist/page/roots.js +60 -0
- package/dist/page/roots.js.map +1 -0
- package/dist/page/types.d.ts +106 -0
- package/dist/page/types.js +6 -0
- package/dist/page/types.js.map +1 -0
- package/dist/page.d.ts +6 -0
- package/dist/page.js +41 -0
- package/dist/page.js.map +1 -0
- package/dist/permissions-resolver.d.ts +12 -0
- package/dist/permissions-resolver.js +14 -0
- package/dist/permissions-resolver.js.map +1 -0
- package/dist/permissions.d.ts +32 -0
- package/dist/permissions.js +66 -0
- package/dist/permissions.js.map +1 -0
- package/dist/quick-actions.d.ts +37 -0
- package/dist/quick-actions.js +22 -0
- package/dist/quick-actions.js.map +1 -0
- package/dist/realtime.d.ts +21 -0
- package/dist/realtime.js +22 -0
- package/dist/realtime.js.map +1 -0
- package/dist/request-tenant.d.ts +2 -0
- package/dist/request-tenant.js +41 -0
- package/dist/request-tenant.js.map +1 -0
- package/dist/tenant-access.d.ts +25 -0
- package/dist/tenant-access.js +31 -0
- package/dist/tenant-access.js.map +1 -0
- package/dist/tenant-export.d.ts +23 -0
- package/dist/tenant-export.js +3 -0
- package/dist/tenant-export.js.map +1 -0
- package/dist/tenant-lifecycle.d.ts +2 -0
- package/dist/tenant-lifecycle.js +19 -0
- package/dist/tenant-lifecycle.js.map +1 -0
- package/dist/tenant-ownership.d.ts +11 -0
- package/dist/tenant-ownership.js +100 -0
- package/dist/tenant-ownership.js.map +1 -0
- package/dist/tenant-scoped-model.d.ts +6 -0
- package/dist/tenant-scoped-model.js +13 -0
- package/dist/tenant-scoped-model.js.map +1 -0
- package/dist/types.d.ts +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/uploads.d.ts +20 -0
- package/dist/uploads.js +70 -0
- package/dist/uploads.js.map +1 -0
- package/dist/utils/fire-and-forget.d.ts +1 -0
- package/dist/utils/fire-and-forget.js +10 -0
- package/dist/utils/fire-and-forget.js.map +1 -0
- package/dist/utils/row-instance.d.ts +1 -0
- package/dist/utils/row-instance.js +8 -0
- package/dist/utils/row-instance.js.map +1 -0
- package/dist/utils/saas-mode.d.ts +2 -0
- package/dist/utils/saas-mode.js +18 -0
- package/dist/utils/saas-mode.js.map +1 -0
- package/dist/utils/time.d.ts +4 -0
- package/dist/utils/time.js +8 -0
- package/dist/utils/time.js.map +1 -0
- package/dist/utils/type-check.d.ts +15 -0
- package/dist/utils/type-check.js +40 -0
- package/dist/utils/type-check.js.map +1 -0
- package/dist/utils/value-parser.d.ts +11 -0
- package/dist/utils/value-parser.js +86 -0
- package/dist/utils/value-parser.js.map +1 -0
- package/package.json +206 -0
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getControllerLocation = exports.getTableViewMetaFor = exports.Exported = exports.Select = exports.ArchiveField = exports.Column = exports.TableViewMeta = void 0;
|
|
7
|
+
exports.ColumnGroup = ColumnGroup;
|
|
8
|
+
const node_assert_1 = __importDefault(require("node:assert"));
|
|
9
|
+
const interface_api_1 = require("@antelopejs/interface-api");
|
|
10
|
+
const interface_core_1 = require("@antelopejs/interface-core");
|
|
11
|
+
const decorators_1 = require("@antelopejs/interface-core/decorators");
|
|
12
|
+
const metadata_1 = require("@antelopejs/interface-data-api/metadata");
|
|
13
|
+
const interface_database_decorators_1 = require("@antelopejs/interface-database-decorators");
|
|
14
|
+
const type_check_1 = require("../../utils/type-check");
|
|
15
|
+
const data_types_1 = require("../data-types");
|
|
16
|
+
const form_schema_1 = require("../form-schema");
|
|
17
|
+
const types_1 = require("../types");
|
|
18
|
+
const FORM_MODE_BY_VIEW_MODE = {
|
|
19
|
+
view: types_1.FormMode.view,
|
|
20
|
+
edit: types_1.FormMode.edit,
|
|
21
|
+
new: types_1.FormMode.new,
|
|
22
|
+
};
|
|
23
|
+
class TableViewMeta {
|
|
24
|
+
target;
|
|
25
|
+
static key = Symbol();
|
|
26
|
+
constructor(target) {
|
|
27
|
+
this.target = target;
|
|
28
|
+
}
|
|
29
|
+
options = {};
|
|
30
|
+
columns = {};
|
|
31
|
+
groups = {};
|
|
32
|
+
archiveField;
|
|
33
|
+
controllerRowActionRules;
|
|
34
|
+
controllerGuards;
|
|
35
|
+
bypassTenantAccessGate = false;
|
|
36
|
+
componentBuilder;
|
|
37
|
+
setControllerRowActionRules(rules) {
|
|
38
|
+
this.controllerRowActionRules = rules;
|
|
39
|
+
}
|
|
40
|
+
setControllerGuards(guards) {
|
|
41
|
+
this.controllerGuards = guards;
|
|
42
|
+
}
|
|
43
|
+
setBypassTenantAccessGate() {
|
|
44
|
+
this.bypassTenantAccessGate = true;
|
|
45
|
+
}
|
|
46
|
+
gateBypassRegistrations = new Set();
|
|
47
|
+
get hasMixedGateBypassRegistrations() {
|
|
48
|
+
return this.gateBypassRegistrations.size > 1;
|
|
49
|
+
}
|
|
50
|
+
recordGateBypassRegistration(requested) {
|
|
51
|
+
this.gateBypassRegistrations.add(requested);
|
|
52
|
+
}
|
|
53
|
+
resolveReadonlyBehavior(readonlyBehavior, mode) {
|
|
54
|
+
if (!readonlyBehavior) {
|
|
55
|
+
return types_1.ReadonlyBehaviorType.default;
|
|
56
|
+
}
|
|
57
|
+
if ((0, type_check_1.isString)(readonlyBehavior)) {
|
|
58
|
+
return readonlyBehavior;
|
|
59
|
+
}
|
|
60
|
+
return readonlyBehavior[mode] || types_1.ReadonlyBehaviorType.default;
|
|
61
|
+
}
|
|
62
|
+
getRequiredForMode(data, mode) {
|
|
63
|
+
if (mode === types_1.FormMode.view)
|
|
64
|
+
return false;
|
|
65
|
+
return data.mandatory?.has(mode) || false;
|
|
66
|
+
}
|
|
67
|
+
buildFormField(key, options, meta, formMode, localizedFields) {
|
|
68
|
+
const behavior = this.resolveReadonlyBehavior(options.readonlyBehavior, formMode);
|
|
69
|
+
const isDisabled = formMode === types_1.FormMode.view ||
|
|
70
|
+
meta.mode === metadata_1.AccessMode.ReadOnly ||
|
|
71
|
+
behavior === types_1.ReadonlyBehaviorType.disabled;
|
|
72
|
+
const isRequired = this.getRequiredForMode(meta, formMode);
|
|
73
|
+
return {
|
|
74
|
+
id: key,
|
|
75
|
+
label: options.name ?? key,
|
|
76
|
+
description: options.description,
|
|
77
|
+
type: options.type,
|
|
78
|
+
inputComponent: options.inputComponent?.serializeSync(),
|
|
79
|
+
disabled: isDisabled,
|
|
80
|
+
required: isRequired,
|
|
81
|
+
defaultValue: options.defaultValue,
|
|
82
|
+
localized: localizedFields.includes(key),
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
getFormFields(mode) {
|
|
86
|
+
const metadata = (0, interface_core_1.GetMetadata)(this.target, metadata_1.DataAPIMeta);
|
|
87
|
+
const formMode = FORM_MODE_BY_VIEW_MODE[mode];
|
|
88
|
+
const localizedFields = (0, interface_database_decorators_1.getModifiedFields)(metadata.tableClass.prototype, interface_database_decorators_1.LocalizationModifier);
|
|
89
|
+
const sortedEntries = Object.entries(this.columns)
|
|
90
|
+
.sort((a, b) => (a[1].order ?? 0) - (b[1].order ?? 0))
|
|
91
|
+
.filter(([key, options]) => {
|
|
92
|
+
const meta = metadata.fields[key];
|
|
93
|
+
if (meta.mode === metadata_1.AccessMode.ReadOnly) {
|
|
94
|
+
const behavior = this.resolveReadonlyBehavior(options.readonlyBehavior, formMode);
|
|
95
|
+
if (behavior === types_1.ReadonlyBehaviorType.hidden) {
|
|
96
|
+
return false;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return !!(options.inputComponent || options.type.inputComponent());
|
|
100
|
+
});
|
|
101
|
+
const result = [];
|
|
102
|
+
const processedGroups = new Set();
|
|
103
|
+
for (const [key, options] of sortedEntries) {
|
|
104
|
+
const meta = metadata.fields[key];
|
|
105
|
+
if (options.group) {
|
|
106
|
+
if (processedGroups.has(options.group)) {
|
|
107
|
+
continue;
|
|
108
|
+
}
|
|
109
|
+
processedGroups.add(options.group);
|
|
110
|
+
const groupConfig = this.groups[options.group];
|
|
111
|
+
const groupFields = sortedEntries
|
|
112
|
+
.filter(([, opts]) => opts.group === options.group)
|
|
113
|
+
.map(([k, opts]) => this.buildFormField(k, opts, metadata.fields[k], formMode, localizedFields));
|
|
114
|
+
const fieldGroup = {
|
|
115
|
+
id: options.group,
|
|
116
|
+
label: groupConfig?.label ?? options.group,
|
|
117
|
+
description: groupConfig?.description,
|
|
118
|
+
orientation: groupConfig?.orientation,
|
|
119
|
+
order: groupConfig?.order,
|
|
120
|
+
fields: groupFields,
|
|
121
|
+
};
|
|
122
|
+
result.push(fieldGroup);
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
result.push(this.buildFormField(key, options, meta, formMode, localizedFields));
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
return result;
|
|
129
|
+
}
|
|
130
|
+
buildConfig() {
|
|
131
|
+
const apimeta = (0, interface_core_1.GetMetadata)(this.target, interface_api_1.ControllerMeta);
|
|
132
|
+
const datameta = (0, interface_core_1.GetMetadata)(this.target, metadata_1.DataAPIMeta);
|
|
133
|
+
return {
|
|
134
|
+
location: apimeta.location,
|
|
135
|
+
columns: Object.entries(this.columns)
|
|
136
|
+
.sort((a, b) => (a[1].order ?? 0) - (b[1].order ?? 0))
|
|
137
|
+
.map(([key, options]) => {
|
|
138
|
+
const meta = datameta.fields[key];
|
|
139
|
+
return {
|
|
140
|
+
id: key,
|
|
141
|
+
header: options.name ?? key,
|
|
142
|
+
isVisible: options.isVisible,
|
|
143
|
+
type: (0, data_types_1.serializeType)(options.type),
|
|
144
|
+
accessorKey: key,
|
|
145
|
+
listable: !!meta.listable?.list,
|
|
146
|
+
enableSorting: meta.sortable !== undefined,
|
|
147
|
+
enableColumnFilter: !!options.filterable,
|
|
148
|
+
cellWrap: options.cellWrap,
|
|
149
|
+
defaultValue: options.defaultValue,
|
|
150
|
+
accessMode: meta.mode,
|
|
151
|
+
readonlyBehavior: options.readonlyBehavior ?? types_1.ReadonlyBehaviorType.default,
|
|
152
|
+
};
|
|
153
|
+
}),
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
get config() {
|
|
157
|
+
return this.buildConfig();
|
|
158
|
+
}
|
|
159
|
+
setColumn(key, options) {
|
|
160
|
+
this.columns[key] = options;
|
|
161
|
+
}
|
|
162
|
+
setGroup(id, config) {
|
|
163
|
+
this.groups[id] = config;
|
|
164
|
+
}
|
|
165
|
+
setOptions(options) {
|
|
166
|
+
this.options = options;
|
|
167
|
+
}
|
|
168
|
+
setArchiveField(field) {
|
|
169
|
+
this.archiveField = field;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
exports.TableViewMeta = TableViewMeta;
|
|
173
|
+
exports.Column = (0, decorators_1.MakeMethodAndPropertyDecorator)((target, key, descriptor, options) => {
|
|
174
|
+
const meta = (0, interface_core_1.GetMetadata)(target.constructor, TableViewMeta);
|
|
175
|
+
meta.setColumn(key, options);
|
|
176
|
+
if (options.validate !== false) {
|
|
177
|
+
(0, node_assert_1.default)(options.type.getValidation, "Type has no getValidation method");
|
|
178
|
+
const dataMeta = (0, interface_core_1.GetMetadata)(target.constructor, metadata_1.DataAPIMeta);
|
|
179
|
+
const localizedFields = (0, interface_database_decorators_1.getModifiedFields)(dataMeta.tableClass.prototype, interface_database_decorators_1.LocalizationModifier);
|
|
180
|
+
const isLocalized = localizedFields.includes(key);
|
|
181
|
+
const baseSchema = options.type.getValidation();
|
|
182
|
+
const zodSchema = (0, form_schema_1.adaptFieldValidationSchema)(baseSchema, {
|
|
183
|
+
localized: isLocalized,
|
|
184
|
+
required: false,
|
|
185
|
+
});
|
|
186
|
+
(0, metadata_1.Validator)(async (value) => {
|
|
187
|
+
const result = await zodSchema.safeParseAsync(value);
|
|
188
|
+
return result.success;
|
|
189
|
+
})(target, key, descriptor ?? {});
|
|
190
|
+
}
|
|
191
|
+
if (options.filterable) {
|
|
192
|
+
(0, metadata_1.Filter)(options.type.filter.bind(options.type))(target, key);
|
|
193
|
+
}
|
|
194
|
+
if (options.type.decorateField) {
|
|
195
|
+
options.type.decorateField(target, key, descriptor);
|
|
196
|
+
}
|
|
197
|
+
});
|
|
198
|
+
function ColumnGroup(id, config) {
|
|
199
|
+
return (target) => {
|
|
200
|
+
(0, interface_core_1.GetMetadata)(target, TableViewMeta).setGroup(id, config);
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
exports.ArchiveField = (0, decorators_1.MakeMethodAndPropertyDecorator)((target, key) => {
|
|
204
|
+
(0, interface_core_1.GetMetadata)(target.constructor, TableViewMeta).setArchiveField(key);
|
|
205
|
+
(0, metadata_1.Filter)()(target, key);
|
|
206
|
+
(0, metadata_1.Listable)()(target, key);
|
|
207
|
+
});
|
|
208
|
+
exports.Select = (0, decorators_1.MakeMethodAndPropertyDecorator)((target, key, descriptor, requiredFields) => {
|
|
209
|
+
return (0, metadata_1.Listable)(requiredFields, "select")(target, key, descriptor ?? {});
|
|
210
|
+
});
|
|
211
|
+
exports.Exported = (0, decorators_1.MakeMethodAndPropertyDecorator)((target, key, descriptor, requiredFields) => {
|
|
212
|
+
return (0, metadata_1.Listable)(requiredFields, "export")(target, key, descriptor ?? {});
|
|
213
|
+
});
|
|
214
|
+
const getTableViewMetaFor = (target) => (0, interface_core_1.GetMetadata)(target.constructor, TableViewMeta);
|
|
215
|
+
exports.getTableViewMetaFor = getTableViewMetaFor;
|
|
216
|
+
const getControllerLocation = (target) => (0, interface_core_1.GetMetadata)(target.constructor, interface_api_1.ControllerMeta).location;
|
|
217
|
+
exports.getControllerLocation = getControllerLocation;
|
|
218
|
+
//# sourceMappingURL=meta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meta.js","sourceRoot":"","sources":["../../../src/base/table-view/meta.ts"],"names":[],"mappings":";;;;;;AA0UA,kCAIC;AA9UD,8DAAiC;AACjC,6DAGmC;AACnC,+DAAyD;AACzD,sEAAuF;AACvF,sEAMiD;AACjD,6FAGmD;AAEnD,uDAAkD;AAOlD,8CAA6D;AAM7D,gDAA4D;AAC5D,oCAMkB;AAQlB,MAAM,sBAAsB,GAA8C;IACxE,IAAI,EAAE,gBAAQ,CAAC,IAAI;IACnB,IAAI,EAAE,gBAAQ,CAAC,IAAI;IACnB,GAAG,EAAE,gBAAQ,CAAC,GAAG;CAClB,CAAC;AAyBF,MAAa,aAAa;IAGI;IAFrB,MAAM,CAAC,GAAG,GAAG,MAAM,EAAE,CAAC;IAE7B,YAA4B,MAA2C;QAA3C,WAAM,GAAN,MAAM,CAAqC;IAAG,CAAC;IAEpE,OAAO,GAA0B,EAAE,CAAC;IAC3B,OAAO,GAAkC,EAAE,CAAC;IAC5C,MAAM,GAAsC,EAAE,CAAC;IACxD,YAAY,CAAU;IACtB,wBAAwB,CAAkC;IAC1D,gBAAgB,CAAwB;IACxC,sBAAsB,GAAG,KAAK,CAAC;IAC/B,gBAAgB,CAAgD;IAEhE,2BAA2B,CAAC,KAAqC;QACtE,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC;IACxC,CAAC;IAEM,mBAAmB,CAAC,MAA4B;QACrD,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC;IACjC,CAAC;IAKM,yBAAyB;QAC9B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;IACrC,CAAC;IAEO,uBAAuB,GAAG,IAAI,GAAG,EAAW,CAAC;IAGrD,IAAW,+BAA+B;QACxC,OAAO,IAAI,CAAC,uBAAuB,CAAC,IAAI,GAAG,CAAC,CAAC;IAC/C,CAAC;IAEM,4BAA4B,CAAC,SAAkB;QACpD,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAEO,uBAAuB,CAC7B,gBAA8C,EAC9C,IAAc;QAEd,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,OAAO,4BAAoB,CAAC,OAAO,CAAC;QACtC,CAAC;QAED,IAAI,IAAA,qBAAQ,EAAC,gBAAgB,CAAC,EAAE,CAAC;YAC/B,OAAO,gBAAgB,CAAC;QAC1B,CAAC;QAED,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,4BAAoB,CAAC,OAAO,CAAC;IAChE,CAAC;IAEO,kBAAkB,CAAC,IAAmB,EAAE,IAAc;QAC5D,IAAI,IAAI,KAAK,gBAAQ,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACzC,OAAO,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;IAC5C,CAAC;IAEO,cAAc,CACpB,GAAW,EACX,OAAsB,EACtB,IAAmB,EACnB,QAAkB,EAClB,eAAyB;QAEzB,MAAM,QAAQ,GAAG,IAAI,CAAC,uBAAuB,CAC3C,OAAO,CAAC,gBAAgB,EACxB,QAAQ,CACT,CAAC;QACF,MAAM,UAAU,GACd,QAAQ,KAAK,gBAAQ,CAAC,IAAI;YAC1B,IAAI,CAAC,IAAI,KAAK,qBAAU,CAAC,QAAQ;YACjC,QAAQ,KAAK,4BAAoB,CAAC,QAAQ,CAAC;QAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAE3D,OAAO;YACL,EAAE,EAAE,GAAG;YACP,KAAK,EAAE,OAAO,CAAC,IAAI,IAAI,GAAG;YAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,aAAa,EAAE;YACvD,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,UAAU;YACpB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,SAAS,EAAE,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC;SACzC,CAAC;IACJ,CAAC;IAEM,aAAa,CAAC,IAA6B;QAChD,MAAM,QAAQ,GAAG,IAAA,4BAAW,EAAC,IAAI,CAAC,MAAyB,EAAE,sBAAW,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,eAAe,GAAG,IAAA,iDAAiB,EACvC,QAAQ,CAAC,UAAU,CAAC,SAAS,EAC7B,oDAAoB,CACT,CAAC;QAEd,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;aAC/C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;aACrD,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE;YACzB,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAElC,IAAI,IAAI,CAAC,IAAI,KAAK,qBAAU,CAAC,QAAQ,EAAE,CAAC;gBACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,uBAAuB,CAC3C,OAAO,CAAC,gBAAgB,EACxB,QAAQ,CACT,CAAC;gBACF,IAAI,QAAQ,KAAK,4BAAoB,CAAC,MAAM,EAAE,CAAC;oBAC7C,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;YAED,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QAEL,MAAM,MAAM,GAAuB,EAAE,CAAC;QACtC,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QAE1C,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,aAAa,EAAE,CAAC;YAC3C,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAkB,CAAC;YAEnD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClB,IAAI,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBACvC,SAAS;gBACX,CAAC;gBACD,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAEnC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC/C,MAAM,WAAW,GAAG,aAAa;qBAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC;qBAClD,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CACjB,IAAI,CAAC,cAAc,CACjB,CAAC,EACD,IAAI,EACJ,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAkB,EACnC,QAAQ,EACR,eAAe,CAChB,CACF,CAAC;gBAEJ,MAAM,UAAU,GAAe;oBAC7B,EAAE,EAAE,OAAO,CAAC,KAAK;oBACjB,KAAK,EAAE,WAAW,EAAE,KAAK,IAAI,OAAO,CAAC,KAAK;oBAC1C,WAAW,EAAE,WAAW,EAAE,WAAW;oBACrC,WAAW,EAAE,WAAW,EAAE,WAAW;oBACrC,KAAK,EAAE,WAAW,EAAE,KAAK;oBACzB,MAAM,EAAE,WAAW;iBACpB,CAAC;gBACF,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CACT,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,CAAC,CACnE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,WAAW;QACjB,MAAM,OAAO,GAAG,IAAA,4BAAW,EAAC,IAAI,CAAC,MAAyB,EAAE,8BAAc,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,IAAA,4BAAW,EAAC,IAAI,CAAC,MAAyB,EAAE,sBAAW,CAAC,CAAC;QAE1E,OAAO;YACL,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;iBAClC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;iBACrD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE;gBACtB,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAElC,OAAO;oBACL,EAAE,EAAE,GAAG;oBACP,MAAM,EAAE,OAAO,CAAC,IAAI,IAAI,GAAG;oBAC3B,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,IAAI,EAAE,IAAA,0BAAa,EAAC,OAAO,CAAC,IAAI,CAAC;oBACjC,WAAW,EAAE,GAAG;oBAChB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI;oBAC/B,aAAa,EAAE,IAAI,CAAC,QAAQ,KAAK,SAAS;oBAC1C,kBAAkB,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU;oBACxC,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,YAAY,EAAE,OAAO,CAAC,YAAY;oBAClC,UAAU,EAAE,IAAI,CAAC,IAAI;oBACrB,gBAAgB,EACd,OAAO,CAAC,gBAAgB,IAAI,4BAAoB,CAAC,OAAO;iBAC3D,CAAC;YACJ,CAAC,CAAC;SACL,CAAC;IACJ,CAAC;IAED,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;IAEM,SAAS,CAAC,GAAW,EAAE,OAAsB;QAClD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;IAC9B,CAAC;IAEM,QAAQ,CAAC,EAAU,EAAE,MAAyB;QACnD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;IAC3B,CAAC;IAEM,UAAU,CAAC,OAA8B;QAC9C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAEM,eAAe,CAAC,KAAa;QAClC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC5B,CAAC;;AAhNH,sCAiNC;AAEY,QAAA,MAAM,GAAG,IAAA,2CAA8B,EAClD,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,OAAsB,EAAE,EAAE;IAClD,MAAM,IAAI,GAAG,IAAA,4BAAW,EAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC5D,IAAI,CAAC,SAAS,CAAC,GAAa,EAAE,OAAO,CAAC,CAAC;IAEvC,IAAI,OAAO,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;QAI/B,IAAA,qBAAM,EAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,kCAAkC,CAAC,CAAC;QAEvE,MAAM,QAAQ,GAAG,IAAA,4BAAW,EAC1B,MAAM,CAAC,WAA8B,EACrC,sBAAW,CACZ,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,iDAAiB,EACvC,QAAQ,CAAC,UAAU,CAAC,SAAS,EAC7B,oDAAoB,CACT,CAAC;QACd,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,GAAa,CAAC,CAAC;QAE5D,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAChD,MAAM,SAAS,GAAG,IAAA,wCAA0B,EAAC,UAAU,EAAE;YACvD,SAAS,EAAE,WAAW;YACtB,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;QAEH,IAAA,oBAAS,EAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACxB,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YACrD,OAAO,MAAM,CAAC,OAAO,CAAC;QACxB,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACvB,IAAA,iBAAM,EAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,GAAa,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IACtD,CAAC;AACH,CAAC,CACF,CAAC;AAEF,SAAgB,WAAW,CAAC,EAAU,EAAE,MAAyB;IAC/D,OAAO,CAAC,MAA2C,EAAE,EAAE;QACrD,IAAA,4BAAW,EAAC,MAAM,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC1D,CAAC,CAAC;AACJ,CAAC;AAEY,QAAA,YAAY,GAAG,IAAA,2CAA8B,EAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;IACzE,IAAA,4BAAW,EAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,eAAe,CAAC,GAAa,CAAC,CAAC;IAG9E,IAAA,iBAAM,GAAE,CAAC,MAAM,EAAE,GAAa,CAAC,CAAC;IAChC,IAAA,mBAAQ,GAAE,CAAC,MAAM,EAAE,GAAa,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC;AAEU,QAAA,MAAM,GAAG,IAAA,2CAA8B,EAClD,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,cAAmC,EAAE,EAAE;IAC/D,OAAO,IAAA,mBAAQ,EAAC,cAAc,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC;AAC3E,CAAC,CACF,CAAC;AAEW,QAAA,QAAQ,GAAG,IAAA,2CAA8B,EACpD,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,cAAmC,EAAE,EAAE;IAC/D,OAAO,IAAA,mBAAQ,EAAC,cAAc,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC;AAC3E,CAAC,CACF,CAAC;AAEK,MAAM,mBAAmB,GAAG,CAAC,MAAe,EAAiB,EAAE,CACpE,IAAA,4BAAW,EACR,MAA2C,CAAC,WAAW,EACxD,aAAa,CACd,CAAC;AAJS,QAAA,mBAAmB,uBAI5B;AAEG,MAAM,qBAAqB,GAAG,CAAC,MAAe,EAAU,EAAE,CAC/D,IAAA,4BAAW,EACR,MAA2C,CAAC,WAAW,EACxD,8BAAc,CACf,CAAC,QAAQ,CAAC;AAJA,QAAA,qBAAqB,yBAIrB"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import type { Component, ComponentInfoSerialized } from "../../component";
|
|
2
|
+
import type { FormPropsSerialized } from "../form";
|
|
3
|
+
import type { ColorValue } from "../types";
|
|
4
|
+
import type { CustomButton, CustomButtonSerialized } from "../types/custom-button";
|
|
5
|
+
import type { TableViewGuards } from "../types/guards";
|
|
6
|
+
import type { CustomRowAction, CustomRowActionSerialized, RowActionConfig } from "../types/row-action";
|
|
7
|
+
import type { ModalSize } from "../types/size";
|
|
8
|
+
export declare const TABLE_VIEW_COMPONENT_NAME = "dms-table-view";
|
|
9
|
+
export declare const DEFAULT_ROW_ID_FIELD = "_id";
|
|
10
|
+
export interface TableViewRowActionOptions<T extends Record<string, unknown> = Record<string, unknown>> {
|
|
11
|
+
delete?: boolean | RowActionConfig<T>;
|
|
12
|
+
archive?: boolean | RowActionConfig<T>;
|
|
13
|
+
restore?: boolean | RowActionConfig<T>;
|
|
14
|
+
duplicate?: boolean | RowActionConfig<T>;
|
|
15
|
+
details?: boolean | RowActionConfig<T>;
|
|
16
|
+
edit?: boolean | RowActionConfig<T>;
|
|
17
|
+
copyLink?: boolean | RowActionConfig<T>;
|
|
18
|
+
add?: boolean | RowActionConfig<T>;
|
|
19
|
+
hasSelection?: boolean;
|
|
20
|
+
custom?: CustomRowAction<T>[];
|
|
21
|
+
}
|
|
22
|
+
export interface TableViewRowActionOptionsSerialized {
|
|
23
|
+
delete?: boolean | RowActionConfig;
|
|
24
|
+
archive?: boolean | RowActionConfig;
|
|
25
|
+
restore?: boolean | RowActionConfig;
|
|
26
|
+
showArchived?: boolean;
|
|
27
|
+
duplicate?: boolean | RowActionConfig;
|
|
28
|
+
details?: boolean | RowActionConfig;
|
|
29
|
+
edit?: boolean | RowActionConfig;
|
|
30
|
+
copyLink?: boolean | RowActionConfig;
|
|
31
|
+
add?: boolean | RowActionConfig;
|
|
32
|
+
hasSelection?: boolean;
|
|
33
|
+
custom?: CustomRowActionSerialized[];
|
|
34
|
+
}
|
|
35
|
+
export interface TableViewTabFilter {
|
|
36
|
+
accessorKey: string;
|
|
37
|
+
value?: string;
|
|
38
|
+
mode: string;
|
|
39
|
+
}
|
|
40
|
+
export interface TableViewTab {
|
|
41
|
+
id: string;
|
|
42
|
+
label: string;
|
|
43
|
+
filters: TableViewTabFilter[];
|
|
44
|
+
icon?: string;
|
|
45
|
+
textColor?: ColorValue;
|
|
46
|
+
iconColor?: ColorValue;
|
|
47
|
+
}
|
|
48
|
+
export interface KanbanOptionsSerialized extends Omit<KanbanOptions, "cardComponent"> {
|
|
49
|
+
cardComponent?: ComponentInfoSerialized;
|
|
50
|
+
}
|
|
51
|
+
export interface TableViewDisplayCapabilities {
|
|
52
|
+
columnManagement?: boolean;
|
|
53
|
+
filters?: boolean;
|
|
54
|
+
search?: boolean;
|
|
55
|
+
sorting?: boolean;
|
|
56
|
+
tabs?: boolean;
|
|
57
|
+
}
|
|
58
|
+
export interface TableViewDisplayOption {
|
|
59
|
+
id: string;
|
|
60
|
+
options?: Record<string, unknown>;
|
|
61
|
+
component?: Component;
|
|
62
|
+
selfManagedData?: boolean;
|
|
63
|
+
capabilities?: TableViewDisplayCapabilities;
|
|
64
|
+
}
|
|
65
|
+
export interface TableViewDisplayOptionSerialized extends Omit<TableViewDisplayOption, "component"> {
|
|
66
|
+
component?: ComponentInfoSerialized;
|
|
67
|
+
}
|
|
68
|
+
export interface TableViewOptionsSerialized extends Omit<TableViewOptions, "customButtons" | "rowActions" | "kanban" | "displays"> {
|
|
69
|
+
enableTableExport: boolean;
|
|
70
|
+
customButtons?: CustomButtonSerialized[];
|
|
71
|
+
defaultFilters?: Array<{
|
|
72
|
+
accessorKey: string;
|
|
73
|
+
value?: string;
|
|
74
|
+
mode: string;
|
|
75
|
+
}>;
|
|
76
|
+
rowActions?: TableViewRowActionOptionsSerialized;
|
|
77
|
+
formComponents: Record<string, ComponentInfoSerialized<FormPropsSerialized> | undefined>;
|
|
78
|
+
defaultSort?: {
|
|
79
|
+
field: string;
|
|
80
|
+
desc?: boolean;
|
|
81
|
+
};
|
|
82
|
+
queryParamFilters?: QueryParamFilters;
|
|
83
|
+
routeParamFilters?: RouteParamFilters;
|
|
84
|
+
tabs?: TableViewTab[];
|
|
85
|
+
displays?: TableViewDisplayOptionSerialized[];
|
|
86
|
+
}
|
|
87
|
+
export interface FormContainerPageConfig {
|
|
88
|
+
urlSlug?: string;
|
|
89
|
+
displayName?: string;
|
|
90
|
+
description?: string;
|
|
91
|
+
customPage?: boolean;
|
|
92
|
+
}
|
|
93
|
+
export type FormContainer = {
|
|
94
|
+
type: "drawer";
|
|
95
|
+
} | {
|
|
96
|
+
type: "modal";
|
|
97
|
+
size?: ModalSize;
|
|
98
|
+
} | {
|
|
99
|
+
type: "page";
|
|
100
|
+
pages?: {
|
|
101
|
+
new?: FormContainerPageConfig;
|
|
102
|
+
edit?: FormContainerPageConfig;
|
|
103
|
+
view?: FormContainerPageConfig;
|
|
104
|
+
};
|
|
105
|
+
};
|
|
106
|
+
export interface QueryParamFilter {
|
|
107
|
+
field: string;
|
|
108
|
+
mode?: string;
|
|
109
|
+
}
|
|
110
|
+
export type QueryParamFilters = Record<string, QueryParamFilter>;
|
|
111
|
+
export interface RouteParamFilter {
|
|
112
|
+
field: string;
|
|
113
|
+
mode?: string;
|
|
114
|
+
}
|
|
115
|
+
export type RouteParamFilters = Record<string, RouteParamFilter>;
|
|
116
|
+
export declare const TABLE_DISPLAY_ID = "table";
|
|
117
|
+
export declare const KANBAN_DISPLAY_ID = "kanban";
|
|
118
|
+
export interface KanbanOptions {
|
|
119
|
+
groupByField: string;
|
|
120
|
+
cardFields?: string[];
|
|
121
|
+
cardComponent?: Component;
|
|
122
|
+
draggable?: boolean;
|
|
123
|
+
columnMaxHeight?: string;
|
|
124
|
+
}
|
|
125
|
+
export interface TableViewOptions<T extends Record<string, unknown> = Record<string, unknown>> {
|
|
126
|
+
caption?: string;
|
|
127
|
+
rowIdKey?: string;
|
|
128
|
+
labelKey?: string;
|
|
129
|
+
rowActions?: TableViewRowActionOptions<T>;
|
|
130
|
+
customButtons?: CustomButton[];
|
|
131
|
+
formContainer?: FormContainer;
|
|
132
|
+
archiveMode?: boolean;
|
|
133
|
+
defaultFilters?: Array<{
|
|
134
|
+
accessorKey: string;
|
|
135
|
+
value?: string;
|
|
136
|
+
mode: string;
|
|
137
|
+
}>;
|
|
138
|
+
defaultSort?: {
|
|
139
|
+
field: string;
|
|
140
|
+
desc?: boolean;
|
|
141
|
+
};
|
|
142
|
+
queryParamFilters?: QueryParamFilters;
|
|
143
|
+
routeParamFilters?: RouteParamFilters;
|
|
144
|
+
strictRuleValidation?: boolean;
|
|
145
|
+
tabs?: TableViewTab[];
|
|
146
|
+
realtime?: boolean;
|
|
147
|
+
kanban?: KanbanOptions;
|
|
148
|
+
displays?: TableViewDisplayOption[];
|
|
149
|
+
defaultDisplay?: string;
|
|
150
|
+
guards?: TableViewGuards<T>;
|
|
151
|
+
bypassTenantAccessGate?: boolean;
|
|
152
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.KANBAN_DISPLAY_ID = exports.TABLE_DISPLAY_ID = exports.DEFAULT_ROW_ID_FIELD = exports.TABLE_VIEW_COMPONENT_NAME = void 0;
|
|
4
|
+
exports.TABLE_VIEW_COMPONENT_NAME = "dms-table-view";
|
|
5
|
+
exports.DEFAULT_ROW_ID_FIELD = "_id";
|
|
6
|
+
exports.TABLE_DISPLAY_ID = "table";
|
|
7
|
+
exports.KANBAN_DISPLAY_ID = "kanban";
|
|
8
|
+
//# sourceMappingURL=options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/base/table-view/options.ts"],"names":[],"mappings":";;;AAgBa,QAAA,yBAAyB,GAAG,gBAAgB,CAAC;AAE7C,QAAA,oBAAoB,GAAG,KAAK,CAAC;AA2K7B,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,iBAAiB,GAAG,QAAQ,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
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
|
+
export type RealtimeMutationEventType = "created" | "updated" | "deleted";
|
|
5
|
+
export interface RealtimeMutationContext {
|
|
6
|
+
controllerLocation: string;
|
|
7
|
+
rowIdKey: string;
|
|
8
|
+
eventType: RealtimeMutationEventType;
|
|
9
|
+
ids: string[];
|
|
10
|
+
sessionId?: string;
|
|
11
|
+
actor?: RealtimePresenceActor;
|
|
12
|
+
}
|
|
13
|
+
export interface RealtimePresenceActor {
|
|
14
|
+
id: string;
|
|
15
|
+
displayName?: string;
|
|
16
|
+
avatarUrl?: string;
|
|
17
|
+
}
|
|
18
|
+
export interface RealtimePresenceContext {
|
|
19
|
+
controllerLocation: string;
|
|
20
|
+
rowIdKey: string;
|
|
21
|
+
sessionId: string;
|
|
22
|
+
rowId: string;
|
|
23
|
+
actor: RealtimePresenceActor;
|
|
24
|
+
}
|
|
25
|
+
export interface RealtimePageTopicContext {
|
|
26
|
+
pageId: string;
|
|
27
|
+
controllerLocation: string;
|
|
28
|
+
}
|
|
29
|
+
type RealtimeMutationHook = (context: RealtimeMutationContext) => void | Promise<void>;
|
|
30
|
+
type RealtimePresenceHook = (context: RealtimePresenceContext) => void | Promise<void>;
|
|
31
|
+
type RealtimePageTopicHook = (context: RealtimePageTopicContext) => void;
|
|
32
|
+
export declare function setRealtimeMutationHook(hook: RealtimeMutationHook): void;
|
|
33
|
+
export declare function registerRealtimeMutationListener(listener: RealtimeMutationHook): void;
|
|
34
|
+
export declare function unregisterRealtimeMutationListener(listener: RealtimeMutationHook): void;
|
|
35
|
+
export declare function setRealtimePresenceHook(hook: RealtimePresenceHook): void;
|
|
36
|
+
export declare function setRealtimePageTopicHook(hook: RealtimePageTopicHook): void;
|
|
37
|
+
export declare function reportRealtimePageTopic(context: RealtimePageTopicContext): void;
|
|
38
|
+
type IdExtractor = (args: unknown[], result: unknown, idKey: string) => string[];
|
|
39
|
+
export declare const extractFromResult: IdExtractor;
|
|
40
|
+
export declare const extractSingleParamId: IdExtractor;
|
|
41
|
+
export declare const extractMultiParamId: IdExtractor;
|
|
42
|
+
export declare const extractBulkArgIds: IdExtractor;
|
|
43
|
+
interface MutationConfig {
|
|
44
|
+
eventType: RealtimeMutationEventType;
|
|
45
|
+
extractIds: IdExtractor;
|
|
46
|
+
}
|
|
47
|
+
export declare function withRealtimeMutation<T extends DataControllerCallback>(config: MutationConfig, baseRoute: T): DataControllerCallback;
|
|
48
|
+
export declare function withPresenceAcquire<T extends DataControllerCallback>(baseRoute: T): DataControllerCallback;
|
|
49
|
+
export {};
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.extractBulkArgIds = exports.extractMultiParamId = exports.extractSingleParamId = exports.extractFromResult = exports.REALTIME_PRESENCE_ACQUIRE_VALUE = exports.REALTIME_PRESENCE_QUERY = void 0;
|
|
4
|
+
exports.setRealtimeMutationHook = setRealtimeMutationHook;
|
|
5
|
+
exports.registerRealtimeMutationListener = registerRealtimeMutationListener;
|
|
6
|
+
exports.unregisterRealtimeMutationListener = unregisterRealtimeMutationListener;
|
|
7
|
+
exports.setRealtimePresenceHook = setRealtimePresenceHook;
|
|
8
|
+
exports.setRealtimePageTopicHook = setRealtimePageTopicHook;
|
|
9
|
+
exports.reportRealtimePageTopic = reportRealtimePageTopic;
|
|
10
|
+
exports.withRealtimeMutation = withRealtimeMutation;
|
|
11
|
+
exports.withPresenceAcquire = withPresenceAcquire;
|
|
12
|
+
const interface_api_1 = require("@antelopejs/interface-api");
|
|
13
|
+
const logging_1 = require("@antelopejs/interface-core/logging");
|
|
14
|
+
const auth_1 = require("../../auth");
|
|
15
|
+
const meta_1 = require("./meta");
|
|
16
|
+
const REALTIME_SESSION_HEADER = "x-realtime-session";
|
|
17
|
+
exports.REALTIME_PRESENCE_QUERY = "_presence";
|
|
18
|
+
exports.REALTIME_PRESENCE_ACQUIRE_VALUE = "1";
|
|
19
|
+
const PARAMS_INDEX = 1;
|
|
20
|
+
const BULK_IDS_ARG_INDEX = 1;
|
|
21
|
+
const realtimeHooks = {};
|
|
22
|
+
const pendingPageTopics = [];
|
|
23
|
+
const realtimeMutationListeners = new Set();
|
|
24
|
+
function setRealtimeMutationHook(hook) {
|
|
25
|
+
realtimeHooks.mutation = hook;
|
|
26
|
+
}
|
|
27
|
+
function registerRealtimeMutationListener(listener) {
|
|
28
|
+
realtimeMutationListeners.add(listener);
|
|
29
|
+
}
|
|
30
|
+
function unregisterRealtimeMutationListener(listener) {
|
|
31
|
+
realtimeMutationListeners.delete(listener);
|
|
32
|
+
}
|
|
33
|
+
function hasRealtimeMutationConsumers() {
|
|
34
|
+
return !!realtimeHooks.mutation || realtimeMutationListeners.size > 0;
|
|
35
|
+
}
|
|
36
|
+
async function dispatchRealtimeMutation(context) {
|
|
37
|
+
if (realtimeHooks.mutation) {
|
|
38
|
+
await realtimeHooks.mutation(context);
|
|
39
|
+
}
|
|
40
|
+
for (const listener of realtimeMutationListeners) {
|
|
41
|
+
try {
|
|
42
|
+
await listener(context);
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
logging_1.Logging.Error(`[DMS] Realtime mutation listener failed for '${context.controllerLocation}':`, error);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
function setRealtimePresenceHook(hook) {
|
|
50
|
+
realtimeHooks.presence = hook;
|
|
51
|
+
}
|
|
52
|
+
function setRealtimePageTopicHook(hook) {
|
|
53
|
+
realtimeHooks.pageTopic = hook;
|
|
54
|
+
while (pendingPageTopics.length > 0) {
|
|
55
|
+
const context = pendingPageTopics.shift();
|
|
56
|
+
if (context)
|
|
57
|
+
hook(context);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
function reportRealtimePageTopic(context) {
|
|
61
|
+
if (realtimeHooks.pageTopic) {
|
|
62
|
+
realtimeHooks.pageTopic(context);
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
pendingPageTopics.push(context);
|
|
66
|
+
}
|
|
67
|
+
const extractFromResult = (_args, result, idKey) => {
|
|
68
|
+
if (!result || typeof result !== "object")
|
|
69
|
+
return [];
|
|
70
|
+
const value = result[idKey];
|
|
71
|
+
return typeof value === "string" ? [value] : [];
|
|
72
|
+
};
|
|
73
|
+
exports.extractFromResult = extractFromResult;
|
|
74
|
+
const extractSingleParamId = (args) => {
|
|
75
|
+
const params = args[PARAMS_INDEX];
|
|
76
|
+
return params?.id ? [params.id] : [];
|
|
77
|
+
};
|
|
78
|
+
exports.extractSingleParamId = extractSingleParamId;
|
|
79
|
+
const extractMultiParamId = (args) => {
|
|
80
|
+
const params = args[PARAMS_INDEX];
|
|
81
|
+
if (!params?.id)
|
|
82
|
+
return [];
|
|
83
|
+
return Array.isArray(params.id) ? params.id : [params.id];
|
|
84
|
+
};
|
|
85
|
+
exports.extractMultiParamId = extractMultiParamId;
|
|
86
|
+
const extractBulkArgIds = (args) => {
|
|
87
|
+
const ids = args[BULK_IDS_ARG_INDEX];
|
|
88
|
+
if (!ids)
|
|
89
|
+
return [];
|
|
90
|
+
return Array.isArray(ids) ? ids : [ids];
|
|
91
|
+
};
|
|
92
|
+
exports.extractBulkArgIds = extractBulkArgIds;
|
|
93
|
+
const isRealtimeEnabled = (target) => (0, meta_1.getTableViewMetaFor)(target).options.realtime !== false;
|
|
94
|
+
function withRealtimeMutation(config, baseRoute) {
|
|
95
|
+
return {
|
|
96
|
+
method: baseRoute.method,
|
|
97
|
+
args: [
|
|
98
|
+
...baseRoute.args,
|
|
99
|
+
(0, interface_api_1.Parameter)(REALTIME_SESSION_HEADER, "header"),
|
|
100
|
+
(0, auth_1.AuthUser)(),
|
|
101
|
+
],
|
|
102
|
+
func: async function (...allArgs) {
|
|
103
|
+
const user = allArgs.pop();
|
|
104
|
+
const sessionId = allArgs.pop();
|
|
105
|
+
const result = await baseRoute.func.apply(this, allArgs);
|
|
106
|
+
if (!hasRealtimeMutationConsumers() || !isRealtimeEnabled(this))
|
|
107
|
+
return result;
|
|
108
|
+
const meta = (0, meta_1.getTableViewMetaFor)(this);
|
|
109
|
+
const idKey = meta.options.rowIdKey || "_id";
|
|
110
|
+
const ids = config.extractIds(allArgs, result, idKey);
|
|
111
|
+
if (ids.length === 0 && config.eventType !== "created")
|
|
112
|
+
return result;
|
|
113
|
+
await dispatchRealtimeMutation({
|
|
114
|
+
controllerLocation: (0, meta_1.getControllerLocation)(this),
|
|
115
|
+
rowIdKey: idKey,
|
|
116
|
+
eventType: config.eventType,
|
|
117
|
+
ids,
|
|
118
|
+
sessionId,
|
|
119
|
+
actor: { id: user._id, displayName: user.name || user.email },
|
|
120
|
+
});
|
|
121
|
+
return result;
|
|
122
|
+
},
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
function withPresenceAcquire(baseRoute) {
|
|
126
|
+
return {
|
|
127
|
+
method: baseRoute.method,
|
|
128
|
+
args: [
|
|
129
|
+
...baseRoute.args,
|
|
130
|
+
(0, interface_api_1.Parameter)(REALTIME_SESSION_HEADER, "header"),
|
|
131
|
+
(0, interface_api_1.Parameter)(exports.REALTIME_PRESENCE_QUERY, "query"),
|
|
132
|
+
(0, auth_1.AuthUser)(),
|
|
133
|
+
],
|
|
134
|
+
func: async function (...allArgs) {
|
|
135
|
+
const user = allArgs.pop();
|
|
136
|
+
const presenceFlag = allArgs.pop();
|
|
137
|
+
const sessionId = allArgs.pop();
|
|
138
|
+
const result = await baseRoute.func.apply(this, allArgs);
|
|
139
|
+
if (presenceFlag !== exports.REALTIME_PRESENCE_ACQUIRE_VALUE ||
|
|
140
|
+
!realtimeHooks.presence ||
|
|
141
|
+
!sessionId ||
|
|
142
|
+
!isRealtimeEnabled(this)) {
|
|
143
|
+
return result;
|
|
144
|
+
}
|
|
145
|
+
const params = allArgs[PARAMS_INDEX];
|
|
146
|
+
if (!params?.id)
|
|
147
|
+
return result;
|
|
148
|
+
const meta = (0, meta_1.getTableViewMetaFor)(this);
|
|
149
|
+
await realtimeHooks.presence({
|
|
150
|
+
controllerLocation: (0, meta_1.getControllerLocation)(this),
|
|
151
|
+
rowIdKey: meta.options.rowIdKey || "_id",
|
|
152
|
+
sessionId,
|
|
153
|
+
rowId: params.id,
|
|
154
|
+
actor: { id: user._id, displayName: user.name || user.email },
|
|
155
|
+
});
|
|
156
|
+
return result;
|
|
157
|
+
},
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=realtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"realtime.js","sourceRoot":"","sources":["../../../src/base/table-view/realtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { type DataControllerCallback, type DataControllerCallbackWithOptions } from "@antelopejs/interface-data-api";
|
|
2
|
+
export declare namespace TableViewRoutes {
|
|
3
|
+
const Get: DataControllerCallback;
|
|
4
|
+
const List: DataControllerCallback;
|
|
5
|
+
const Select: DataControllerCallbackWithOptions<any>;
|
|
6
|
+
const Count: DataControllerCallback;
|
|
7
|
+
const CountBatch: DataControllerCallbackWithOptions<any>;
|
|
8
|
+
const New: DataControllerCallback;
|
|
9
|
+
const Edit: DataControllerCallback;
|
|
10
|
+
const Delete: DataControllerCallback;
|
|
11
|
+
const Archive: DataControllerCallback;
|
|
12
|
+
const Restore: DataControllerCallback;
|
|
13
|
+
const ExportRoutes: Record<string, DataControllerCallback | DataControllerCallbackWithOptions>;
|
|
14
|
+
const All: {
|
|
15
|
+
readonly get: DataControllerCallback;
|
|
16
|
+
readonly list: DataControllerCallback;
|
|
17
|
+
readonly select: DataControllerCallbackWithOptions<any>;
|
|
18
|
+
readonly count: DataControllerCallback;
|
|
19
|
+
readonly countBatch: DataControllerCallbackWithOptions<any>;
|
|
20
|
+
readonly new: DataControllerCallback;
|
|
21
|
+
readonly edit: DataControllerCallback;
|
|
22
|
+
readonly delete: DataControllerCallback;
|
|
23
|
+
readonly archive: DataControllerCallback;
|
|
24
|
+
readonly restore: DataControllerCallback;
|
|
25
|
+
};
|
|
26
|
+
}
|