@acorex/platform 18.0.4 → 18.0.6
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/README.md +7 -7
- package/auth/README.md +3 -3
- package/common/README.md +3 -3
- package/common/lib/app/application.types.d.ts +10 -6
- package/common/lib/data/dexie-storage.service.d.ts +0 -1
- package/common/lib/layout/grid-layout/grid-layout.types.d.ts +1 -2
- package/common/lib/schema/widgets/lookup/lookup-widget-filter.component.d.ts +1 -1
- package/common/lib/schema/widgets/lookup/lookup-widget-view.component.d.ts +2 -1
- package/common/lib/utils/data-generator.d.ts +13 -1
- package/common/lib/utils/index.d.ts +1 -0
- package/common/lib/utils/pdf.service.d.ts +25 -0
- package/esm2022/auth/index.mjs +1 -1
- package/esm2022/auth/lib/application/application.loader.mjs +1 -1
- package/esm2022/auth/lib/application/application.types.mjs +1 -1
- package/esm2022/auth/lib/auth-registry.service.mjs +1 -1
- package/esm2022/auth/lib/auth.guard.mjs +1 -1
- package/esm2022/auth/lib/auth.module.mjs +1 -1
- package/esm2022/auth/lib/auth.strategy.mjs +1 -1
- package/esm2022/auth/lib/errors.types.mjs +1 -1
- package/esm2022/auth/lib/feature/feature.directive.mjs +1 -1
- package/esm2022/auth/lib/feature/feature.guard.mjs +1 -1
- package/esm2022/auth/lib/feature/feature.loader.mjs +1 -1
- package/esm2022/auth/lib/feature/feature.types.mjs +1 -1
- package/esm2022/auth/lib/feature/index.mjs +1 -1
- package/esm2022/auth/lib/permission/index.mjs +1 -1
- package/esm2022/auth/lib/permission/permission.directive.mjs +1 -1
- package/esm2022/auth/lib/permission/permission.guard.mjs +1 -1
- package/esm2022/auth/lib/permission/permission.loader.mjs +1 -1
- package/esm2022/auth/lib/permission/permission.types.mjs +1 -1
- package/esm2022/auth/lib/session.service.mjs +1 -1
- package/esm2022/auth/lib/session.types.mjs +1 -1
- package/esm2022/auth/lib/tenant/tenant.loader.mjs +1 -1
- package/esm2022/auth/lib/tenant/tenant.types.mjs +1 -1
- package/esm2022/auth/lib/user/user.types.mjs +1 -1
- package/esm2022/common/index.mjs +1 -1
- package/esm2022/common/lib/app/application.types.mjs +5 -1
- package/esm2022/common/lib/app/index.mjs +1 -1
- package/esm2022/common/lib/app/operators.mjs +1 -1
- package/esm2022/common/lib/common.module.mjs +1 -1
- package/esm2022/common/lib/configs/app.config.mjs +1 -1
- package/esm2022/common/lib/configs/config.types.mjs +1 -1
- package/esm2022/common/lib/data/data-provider.types.mjs +1 -1
- package/esm2022/common/lib/data/dexie-storage.service.mjs +2 -4
- package/esm2022/common/lib/data/entity-data-provider.mjs +1 -1
- package/esm2022/common/lib/data/index.mjs +1 -1
- package/esm2022/common/lib/data/storage-service.mjs +1 -1
- package/esm2022/common/lib/errors/error-handler-registry.service.mjs +1 -1
- package/esm2022/common/lib/errors/error-handler.types.mjs +1 -1
- package/esm2022/common/lib/errors/global-error-handler.mjs +1 -1
- package/esm2022/common/lib/errors/index.mjs +1 -1
- package/esm2022/common/lib/layout/beardcrumb.type.mjs +1 -1
- package/esm2022/common/lib/layout/component-slot/component-slot-loader.service.mjs +1 -1
- package/esm2022/common/lib/layout/component-slot/component-slot-registery.service.mjs +1 -1
- package/esm2022/common/lib/layout/component-slot/component-slot.directive.mjs +1 -1
- package/esm2022/common/lib/layout/component-slot/component-slot.module.mjs +1 -1
- package/esm2022/common/lib/layout/component-slot/component-slot.types.mjs +1 -1
- package/esm2022/common/lib/layout/component-slot/index.mjs +1 -1
- package/esm2022/common/lib/layout/grid-layout/grid-layout.directive.mjs +5 -5
- package/esm2022/common/lib/layout/grid-layout/grid-layout.types.mjs +1 -1
- package/esm2022/common/lib/layout/grid-layout/index.mjs +1 -1
- package/esm2022/common/lib/layout/index.mjs +1 -1
- package/esm2022/common/lib/layout/layout.service.mjs +1 -1
- package/esm2022/common/lib/layout/logo/index.mjs +1 -1
- package/esm2022/common/lib/layout/logo/logo.component.mjs +3 -3
- package/esm2022/common/lib/layout/logo/logo.types.mjs +1 -1
- package/esm2022/common/lib/layout/menu/index.mjs +1 -1
- package/esm2022/common/lib/layout/menu/menu.loader.mjs +1 -1
- package/esm2022/common/lib/layout/menu/menu.types.mjs +1 -1
- package/esm2022/common/lib/layout/sticky.directive.mjs +1 -1
- package/esm2022/common/lib/layout/theme/components/slots/footer-text-slot.component.mjs +5 -5
- package/esm2022/common/lib/layout/theme/components/slots/index.mjs +1 -1
- package/esm2022/common/lib/layout/theme/components/slots/navbar-slot.component.mjs +9 -9
- package/esm2022/common/lib/layout/theme/components/slots/theme-slot.component.mjs +16 -16
- package/esm2022/common/lib/layout/theme/store/admin-layout.actions.mjs +1 -1
- package/esm2022/common/lib/layout/theme/store/admin-layout.effects.mjs +1 -1
- package/esm2022/common/lib/layout/theme/store/admin-layout.reducers.mjs +1 -1
- package/esm2022/common/lib/layout/theme/store/admin-layout.selectors.mjs +1 -1
- package/esm2022/common/lib/layout/theme/store/admin-layout.state.mjs +1 -1
- package/esm2022/common/lib/layout/theme/store/index.mjs +1 -1
- package/esm2022/common/lib/schema/component-loader.mjs +1 -1
- package/esm2022/common/lib/schema/entity/entity-registery.service.mjs +1 -1
- package/esm2022/common/lib/schema/entity/entity.class.mjs +1 -1
- package/esm2022/common/lib/schema/entity/entity.loader.mjs +1 -1
- package/esm2022/common/lib/schema/entity/index.mjs +1 -1
- package/esm2022/common/lib/schema/formats.mjs +1 -1
- package/esm2022/common/lib/schema/index.mjs +1 -1
- package/esm2022/common/lib/schema/schema-registery.service.mjs +1 -1
- package/esm2022/common/lib/schema/schema.module.mjs +1 -1
- package/esm2022/common/lib/schema/schema.types.mjs +1 -1
- package/esm2022/common/lib/schema/widget/index.mjs +1 -1
- package/esm2022/common/lib/schema/widget/widget-base.mjs +1 -1
- package/esm2022/common/lib/schema/widget/widget-column-renderer.mjs +17 -17
- package/esm2022/common/lib/schema/widget/widget-filter-renderer.mjs +13 -13
- package/esm2022/common/lib/schema/widget/widget-renderer.mjs +13 -13
- package/esm2022/common/lib/schema/widget/widget-token.mjs +1 -1
- package/esm2022/common/lib/schema/widgets/avatar/avatar-widget-edit.component.mjs +67 -67
- package/esm2022/common/lib/schema/widgets/avatar/avatar-widget-view.component.mjs +15 -15
- package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-column.component.mjs +31 -31
- package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-edit.component.mjs +1 -1
- package/esm2022/common/lib/schema/widgets/checkbox/checkbox-widget-view.component.mjs +25 -25
- package/esm2022/common/lib/schema/widgets/common-widget-filter/boolean-widget-filter.component.mjs +76 -76
- package/esm2022/common/lib/schema/widgets/common-widget-filter/number-widget-filter.component.mjs +86 -86
- package/esm2022/common/lib/schema/widgets/common-widget-filter/string-widget-filter.component.mjs +68 -68
- package/esm2022/common/lib/schema/widgets/common-widgets.module.mjs +1 -1
- package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-column.component.mjs +1 -1
- package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-edit.component.mjs +100 -100
- package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.mjs +59 -59
- package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-view.component.mjs +21 -21
- package/esm2022/common/lib/schema/widgets/email/email-widget-column.component.mjs +23 -23
- package/esm2022/common/lib/schema/widgets/email/email-widget-edit.component.mjs +134 -134
- package/esm2022/common/lib/schema/widgets/email/email-widget-view.component.mjs +65 -65
- package/esm2022/common/lib/schema/widgets/file/file-widget-column.component.mjs +1 -1
- package/esm2022/common/lib/schema/widgets/file/file-widget-edit.component.mjs +116 -116
- package/esm2022/common/lib/schema/widgets/file/file-widget-filter.component.mjs +5 -5
- package/esm2022/common/lib/schema/widgets/file/file-widget-view.component.mjs +70 -70
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-edit.component.mjs +125 -125
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-filter.component.mjs +5 -5
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-types.mjs +1 -1
- package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-view.component.mjs +109 -109
- package/esm2022/common/lib/schema/widgets/index.mjs +1 -1
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-column.component.mjs +1 -1
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-edit.component.mjs +46 -29
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-filter.component.mjs +85 -68
- package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-view.component.mjs +5 -5
- package/esm2022/common/lib/schema/widgets/map/map-widget-edit.component.mjs +5 -5
- package/esm2022/common/lib/schema/widgets/map/map-widget-view.component.mjs +5 -5
- package/esm2022/common/lib/schema/widgets/messenger/messenger-widget-column.component.mjs +23 -23
- package/esm2022/common/lib/schema/widgets/messenger/messenger-widget-edit.component.mjs +88 -88
- package/esm2022/common/lib/schema/widgets/messenger/messenger-widget-view.component.mjs +67 -67
- package/esm2022/common/lib/schema/widgets/number/number-widget-edit.component.mjs +15 -15
- package/esm2022/common/lib/schema/widgets/number/number-widget-view.component.mjs +1 -1
- package/esm2022/common/lib/schema/widgets/password/change-password.component.mjs +100 -100
- package/esm2022/common/lib/schema/widgets/password/password-widget-column.component.mjs +37 -37
- package/esm2022/common/lib/schema/widgets/password/password-widget-edit.component.mjs +15 -15
- package/esm2022/common/lib/schema/widgets/password/password-widget-view.component.mjs +58 -58
- package/esm2022/common/lib/schema/widgets/phone/phone-widget-column.component.mjs +41 -41
- package/esm2022/common/lib/schema/widgets/phone/phone-widget-edit.component.mjs +140 -140
- package/esm2022/common/lib/schema/widgets/phone/phone-widget-view.component.mjs +69 -69
- package/esm2022/common/lib/schema/widgets/rich-text/rich-text-widget-column.component.mjs +23 -23
- package/esm2022/common/lib/schema/widgets/rich-text/rich-text-widget-edit.component.mjs +9 -9
- package/esm2022/common/lib/schema/widgets/rich-text/rich-text-widget-view.component.mjs +9 -9
- package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-column.component.mjs +17 -17
- package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-edit.component.mjs +29 -29
- package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-filter.component.mjs +19 -19
- package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-view.component.mjs +9 -9
- package/esm2022/common/lib/schema/widgets/signature-pad/signature-pad-widget-edit.component.mjs +56 -56
- package/esm2022/common/lib/schema/widgets/signature-pad/signature-pad-widget-view.component.mjs +17 -17
- package/esm2022/common/lib/schema/widgets/text/largetext-widget-edit.component.mjs +13 -13
- package/esm2022/common/lib/schema/widgets/text/text-widget-column.component.mjs +1 -1
- package/esm2022/common/lib/schema/widgets/text/text-widget-edit.component.mjs +88 -88
- package/esm2022/common/lib/schema/widgets/text/text-widget-view.component.mjs +21 -21
- package/esm2022/common/lib/schema/widgets/toggle/toggle-widget-column.component.mjs +33 -33
- package/esm2022/common/lib/schema/widgets/toggle/toggle-widget-edit.component.mjs +1 -1
- package/esm2022/common/lib/schema/widgets/toggle/toggle-widget-view.component.mjs +25 -25
- package/esm2022/common/lib/settings/index.mjs +1 -1
- package/esm2022/common/lib/settings/settings.loader.mjs +1 -1
- package/esm2022/common/lib/settings/settings.service.mjs +1 -1
- package/esm2022/common/lib/settings/settings.types.mjs +1 -1
- package/esm2022/common/lib/store/common.actions.mjs +1 -1
- package/esm2022/common/lib/store/common.effects.mjs +1 -1
- package/esm2022/common/lib/store/index.mjs +1 -1
- package/esm2022/common/lib/utils/clipboard-service.mjs +1 -1
- package/esm2022/common/lib/utils/data-generator.mjs +67 -2
- package/esm2022/common/lib/utils/index.mjs +2 -1
- package/esm2022/common/lib/utils/pdf.service.mjs +85 -0
- package/esm2022/common/lib/utils/router-util.service.mjs +1 -1
- package/esm2022/common/lib/workflows/common.workflow.mjs +1 -1
- package/esm2022/common/lib/workflows/error-handler.mjs +1 -1
- package/esm2022/common/lib/workflows/index.mjs +1 -1
- package/esm2022/index.mjs +1 -1
- package/esm2022/layout/builder/index.mjs +1 -1
- package/esm2022/layout/builder/lib/builder/builder.module.mjs +1 -1
- package/esm2022/layout/builder/lib/builder/builder.service.mjs +1 -1
- package/esm2022/layout/builder/lib/builder/index.mjs +1 -1
- package/esm2022/layout/builder/lib/builder/layout.types.mjs +1 -1
- package/esm2022/layout/builder/lib/builder/widget-column-renderer.mjs +17 -17
- package/esm2022/layout/builder/lib/builder/widget-container.component.mjs +1 -1
- package/esm2022/layout/builder/lib/builder/widget-registery.service.mjs +1 -1
- package/esm2022/layout/builder/lib/builder/widget-renderer.component.mjs +19 -19
- package/esm2022/layout/builder/lib/builder/widget.types.mjs +1 -1
- package/esm2022/layout/entity/lib/entity-detail-list.viewmodel.mjs +28 -13
- package/esm2022/layout/entity/lib/entity-master-create.viewmodel.mjs +23 -19
- package/esm2022/layout/entity/lib/entity-master-list.viewmodel.mjs +45 -14
- package/esm2022/layout/entity/lib/entity-master-single.viewmodel.mjs +33 -34
- package/esm2022/layout/entity/lib/entity-master-update.viewmodel.mjs +1 -1
- package/esm2022/layout/entity/lib/entity-registery.service.mjs +1 -1
- package/esm2022/layout/entity/lib/entity.config.mjs +1 -1
- package/esm2022/layout/entity/lib/entity.module.mjs +1 -1
- package/esm2022/layout/entity/lib/entity.viewmodel.mjs +1 -1
- package/esm2022/layout/entity/lib/index.mjs +1 -1
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.mjs +60 -43
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.mjs +72 -73
- package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.mjs +15 -3
- package/esm2022/layout/entity/lib/workflows/create-entity.workflow.mjs +5 -5
- package/esm2022/layout/entity/lib/workflows/delete-entity.workflow.mjs +3 -6
- package/esm2022/layout/entity/lib/workflows/modify-section.workflow.mjs +1 -1
- package/esm2022/layout/entity/lib/workflows/show-details.workflow.mjs +1 -2
- package/esm2022/layout/entity/lib/workflows/show-list.workflow.mjs +1 -1
- package/esm2022/layouts/index.mjs +1 -1
- package/esm2022/layouts/lib/admin/admin.module.mjs +1 -1
- package/esm2022/layouts/lib/admin/admin.routes.mjs +1 -1
- package/esm2022/layouts/lib/admin/custom-reuse.strategy.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.component.mjs +3 -3
- package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.config.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/detail-view.config.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.mjs +3 -3
- package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/index.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/entity-custom-view/entity-custom-view.component.mjs +3 -3
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/index.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-columns/list-view-option-columns.component.mjs +3 -3
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-conditions.component.mjs +3 -3
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-filter-operator.component.mjs +19 -19
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-sorting/list-view-option-sorting.component.mjs +3 -3
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.mjs +3 -3
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/index.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.config.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.module.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.component.mjs +3 -3
- package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.config.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/entity-quick-view/entity-quick-view.component.mjs +3 -3
- package/esm2022/layouts/lib/admin/entity-layout/index.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/workflows/create-entity.workflow.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/workflows/delete-entity.workflow.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/workflows/index.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-entity.workflow.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/workflows/modify-section.workflow.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/workflows/show-details.workflow.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/workflows/show-list.workflow.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity-layout/workflows/show-quick-view.workflow.mjs +1 -1
- package/esm2022/layouts/lib/admin/entity.resolver.mjs +1 -1
- package/esm2022/layouts/lib/admin/index.mjs +1 -1
- package/esm2022/layouts/lib/layout.module.mjs +1 -1
- package/esm2022/mocks/index.mjs +1 -1
- package/esm2022/mocks/lib/mocks.module.mjs +1 -1
- package/esm2022/mocks/lib/services/mocker.service.mjs +1 -1
- package/esm2022/mocks/lib/storage/storage.mock.service.mjs +1 -1
- package/esm2022/native/index.mjs +1 -1
- package/esm2022/native/lib/native.service.mjs +1 -1
- package/esm2022/themes/default/index.mjs +1 -1
- package/esm2022/themes/default/lib/default.module.mjs +1 -1
- package/esm2022/themes/default/lib/entity-reuse.strategy.mjs +1 -1
- package/esm2022/themes/default/lib/layout.routes.mjs +1 -1
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.mjs +14 -21
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.mjs +3 -3
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.mjs +17 -21
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.mjs +3 -3
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.mjs +3 -3
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.mjs +3 -3
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.mjs +8 -5
- package/esm2022/themes/default/lib/layouts/root-layout/components/footer/footer.component.mjs +3 -3
- package/esm2022/themes/default/lib/layouts/root-layout/components/header/header.component.mjs +3 -3
- package/esm2022/themes/default/lib/layouts/root-layout/index.mjs +1 -1
- package/esm2022/themes/default/lib/layouts/root-layout/root-layout.component.mjs +3 -3
- package/esm2022/themes/default/lib/layouts/root-layout/root-layout.module.mjs +1 -1
- package/esm2022/themes/default/lib/pages/errors/error-401/error-401.component.mjs +3 -3
- package/esm2022/themes/default/lib/pages/errors/error-404/error-404.component.mjs +3 -3
- package/esm2022/themes/default/lib/pages/errors/error-offline/error-offline.component.mjs +3 -3
- package/esm2022/widgets/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/checkbox/checkbox-widget-column.component.mjs +25 -25
- package/esm2022/widgets/lib/editors/checkbox/checkbox-widget-edit.component.mjs +9 -9
- package/esm2022/widgets/lib/editors/checkbox/checkbox-widget-view.component.mjs +29 -29
- package/esm2022/widgets/lib/editors/checkbox/checkbox-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/checkbox/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-column.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-edit.component.mjs +54 -54
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-view.component.mjs +17 -18
- package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/date-time-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-column.component.mjs +21 -21
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-edit.component.mjs +142 -142
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-view.component.mjs +69 -69
- package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/email-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-column.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-edit.component.mjs +112 -112
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget-view.component.mjs +64 -64
- package/esm2022/widgets/lib/editors/file-box-widget/file-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/file-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-column.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-edit.component.mjs +107 -107
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-types.mjs +1 -1
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget-view.component.mjs +97 -97
- package/esm2022/widgets/lib/editors/gallery-widget/gallery-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/gallery-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/map-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-column.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-edit.component.mjs +5 -5
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget-view.component.mjs +5 -5
- package/esm2022/widgets/lib/editors/map-box-widget/map-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/number-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-column.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-edit.component.mjs +68 -68
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-view.component.mjs +17 -17
- package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/password-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-column.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-edit.component.mjs +9 -9
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget-view.component.mjs +45 -45
- package/esm2022/widgets/lib/editors/password-box-widget/password-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/phone-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-column.component.mjs +21 -21
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-edit.component.mjs +138 -138
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-view.component.mjs +69 -69
- package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/rich-text-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-column.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-edit.component.mjs +9 -9
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget-view.component.mjs +17 -11
- package/esm2022/widgets/lib/editors/rich-text-widget/rich-text-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/select-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-column.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-edit.component.mjs +25 -25
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-view.component.mjs +23 -23
- package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/selection-list-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-column.component.mjs +13 -13
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-edit.component.mjs +31 -31
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget-view.component.mjs +11 -10
- package/esm2022/widgets/lib/editors/selection-list-widget/selection-list-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/signature-pad-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-column.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-edit.component.mjs +57 -56
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-view.component.mjs +18 -17
- package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/text-box-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-column.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-edit.component.mjs +63 -62
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget-view.component.mjs +18 -17
- package/esm2022/widgets/lib/editors/text-box-widget/text-box-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/editors/toggle-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-column.component.mjs +25 -25
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-designer.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-edit.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-filter.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-print.component.mjs +1 -1
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget-view.component.mjs +25 -25
- package/esm2022/widgets/lib/editors/toggle-widget/toggle-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/layout/block-widget/block-widget.component.mjs +11 -11
- package/esm2022/widgets/lib/layout/block-widget/block-widget.config.mjs +1 -1
- package/esm2022/widgets/lib/layout/block-widget/index.mjs +1 -1
- package/esm2022/widgets/lib/widgets.module.mjs +1 -1
- package/esm2022/workflow/index.mjs +1 -1
- package/esm2022/workflow/lib/actions/start-workflow.action.mjs +7 -3
- package/esm2022/workflow/lib/errors.types.mjs +1 -1
- package/esm2022/workflow/lib/workflow-event-dispatcher.service.mjs +1 -1
- package/esm2022/workflow/lib/workflow-registery.service.mjs +1 -1
- package/esm2022/workflow/lib/workflow.module.mjs +1 -1
- package/esm2022/workflow/lib/workflow.service.mjs +3 -3
- package/esm2022/workflow/lib/workflow.types.mjs +11 -10
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-B-of5ssU.mjs → acorex-platform-common-avatar-widget-edit.component-B8txzrTw.mjs} +67 -67
- package/fesm2022/acorex-platform-common-avatar-widget-edit.component-B8txzrTw.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-avatar-widget-view.component-CJvrSkTv.mjs → acorex-platform-common-avatar-widget-view.component-B3Ubyw3X.mjs} +15 -15
- package/fesm2022/acorex-platform-common-avatar-widget-view.component-B3Ubyw3X.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-BTcOjuUm.mjs → acorex-platform-common-boolean-widget-filter.component-CcJ5Vj4q.mjs} +76 -76
- package/fesm2022/acorex-platform-common-boolean-widget-filter.component-CcJ5Vj4q.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-change-password.component-NvrMMq9e.mjs → acorex-platform-common-change-password.component-CULJjn0l.mjs} +100 -100
- package/fesm2022/acorex-platform-common-change-password.component-CULJjn0l.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-checkbox-widget-column.component-X9d1iY_F.mjs → acorex-platform-common-checkbox-widget-column.component-C91gG8nm.mjs} +31 -31
- package/fesm2022/acorex-platform-common-checkbox-widget-column.component-C91gG8nm.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-checkbox-widget-edit.component-_jtT03Vn.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-nYmtb8bK.mjs → acorex-platform-common-checkbox-widget-view.component-BDAtJB1B.mjs} +25 -25
- package/fesm2022/{acorex-platform-common-checkbox-widget-view.component-nYmtb8bK.mjs.map → acorex-platform-common-checkbox-widget-view.component-BDAtJB1B.mjs.map} +1 -1
- package/fesm2022/acorex-platform-common-dateTime-widget-column.component-5ljYmtHI.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-D8FSiqAo.mjs → acorex-platform-common-dateTime-widget-edit.component-DRsoJMVG.mjs} +100 -100
- package/fesm2022/acorex-platform-common-dateTime-widget-edit.component-DRsoJMVG.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-Df0DuDtw.mjs → acorex-platform-common-dateTime-widget-filter.component-uB7iwji0.mjs} +59 -59
- package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-uB7iwji0.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-dateTime-widget-view.component-CjVjQkPh.mjs → acorex-platform-common-dateTime-widget-view.component-Dxmnor_-.mjs} +21 -21
- package/fesm2022/acorex-platform-common-dateTime-widget-view.component-Dxmnor_-.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-email-widget-column.component-BgNdL62k.mjs → acorex-platform-common-email-widget-column.component-DlPoexcx.mjs} +23 -23
- package/fesm2022/acorex-platform-common-email-widget-column.component-DlPoexcx.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-email-widget-edit.component-CgHPGccx.mjs → acorex-platform-common-email-widget-edit.component-CY-Nu0xD.mjs} +134 -134
- package/fesm2022/acorex-platform-common-email-widget-edit.component-CY-Nu0xD.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-email-widget-view.component-C2aQ14k-.mjs → acorex-platform-common-email-widget-view.component-C4M7KGUS.mjs} +65 -65
- package/fesm2022/acorex-platform-common-email-widget-view.component-C4M7KGUS.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-file-widget-column.component-CwFzLLHt.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-file-widget-edit.component-DxoQR4CU.mjs → acorex-platform-common-file-widget-edit.component-ZXhaXwWN.mjs} +116 -116
- package/fesm2022/acorex-platform-common-file-widget-edit.component-ZXhaXwWN.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-file-widget-filter.component-BvG0iaKU.mjs → acorex-platform-common-file-widget-filter.component-qL-PznYm.mjs} +5 -5
- package/fesm2022/acorex-platform-common-file-widget-filter.component-qL-PznYm.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-file-widget-view.component-BC9l3YrO.mjs → acorex-platform-common-file-widget-view.component-B0C9oJLT.mjs} +70 -70
- package/fesm2022/acorex-platform-common-file-widget-view.component-B0C9oJLT.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-gallery-widget-edit.component-BihOIJ9T.mjs → acorex-platform-common-gallery-widget-edit.component-DB0-6pik.mjs} +125 -125
- package/fesm2022/acorex-platform-common-gallery-widget-edit.component-DB0-6pik.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-gallery-widget-filter.component-DS1PCIJp.mjs → acorex-platform-common-gallery-widget-filter.component-Bvy3nmy6.mjs} +5 -5
- package/fesm2022/acorex-platform-common-gallery-widget-filter.component-Bvy3nmy6.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-gallery-widget-view.component-CnQONVdg.mjs → acorex-platform-common-gallery-widget-view.component-Bp5cEEiY.mjs} +109 -109
- package/fesm2022/acorex-platform-common-gallery-widget-view.component-Bp5cEEiY.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-largetext-widget-edit.component-BCtGkz1a.mjs → acorex-platform-common-largetext-widget-edit.component-DJhPlQ0G.mjs} +13 -13
- package/fesm2022/acorex-platform-common-largetext-widget-edit.component-DJhPlQ0G.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-lookup-widget-column.component-Cl-vO5XW.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-D9UhViUG.mjs → acorex-platform-common-lookup-widget-edit.component-CpzTuRyJ.mjs} +45 -28
- package/fesm2022/acorex-platform-common-lookup-widget-edit.component-CpzTuRyJ.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-lookup-widget-filter.component-RWweQQaO.mjs → acorex-platform-common-lookup-widget-filter.component-i8oRoMWh.mjs} +84 -67
- package/fesm2022/acorex-platform-common-lookup-widget-filter.component-i8oRoMWh.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-lookup-widget-view.component-mXo8VADX.mjs → acorex-platform-common-lookup-widget-view.component-BHqYDEuU.mjs} +5 -5
- package/fesm2022/acorex-platform-common-lookup-widget-view.component-BHqYDEuU.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-map-widget-edit.component-SSrR3xxv.mjs → acorex-platform-common-map-widget-edit.component-BjrRrklq.mjs} +5 -5
- package/fesm2022/acorex-platform-common-map-widget-edit.component-BjrRrklq.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-map-widget-view.component-DrGG3gzg.mjs → acorex-platform-common-map-widget-view.component-C5gL9-oB.mjs} +5 -5
- package/fesm2022/acorex-platform-common-map-widget-view.component-C5gL9-oB.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-messenger-widget-column.component-BJ_XzNKc.mjs → acorex-platform-common-messenger-widget-column.component-BQSYcyso.mjs} +23 -23
- package/fesm2022/acorex-platform-common-messenger-widget-column.component-BQSYcyso.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-B_FG_n0O.mjs → acorex-platform-common-messenger-widget-edit.component-WHM8ANuQ.mjs} +88 -88
- package/fesm2022/acorex-platform-common-messenger-widget-edit.component-WHM8ANuQ.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-messenger-widget-view.component-EBiPO9ds.mjs → acorex-platform-common-messenger-widget-view.component-B4Yt68Vn.mjs} +67 -67
- package/fesm2022/acorex-platform-common-messenger-widget-view.component-B4Yt68Vn.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-number-widget-edit.component-B1XXga-9.mjs → acorex-platform-common-number-widget-edit.component-D9dC514F.mjs} +15 -15
- package/fesm2022/acorex-platform-common-number-widget-edit.component-D9dC514F.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-number-widget-filter.component-B2JCpDjU.mjs → acorex-platform-common-number-widget-filter.component-BkKeBL6p.mjs} +86 -86
- package/fesm2022/acorex-platform-common-number-widget-filter.component-BkKeBL6p.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-number-widget-view.component-DD0tkoc4.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-password-widget-column.component-eyqgQlAt.mjs → acorex-platform-common-password-widget-column.component-C0-x1_Np.mjs} +37 -37
- package/fesm2022/acorex-platform-common-password-widget-column.component-C0-x1_Np.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-password-widget-edit.component-C2yNb9Pl.mjs → acorex-platform-common-password-widget-edit.component-BbYqIGEP.mjs} +15 -15
- package/fesm2022/acorex-platform-common-password-widget-edit.component-BbYqIGEP.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-password-widget-view.component-o9S7pwJW.mjs → acorex-platform-common-password-widget-view.component-B6vGWi9I.mjs} +59 -59
- package/fesm2022/acorex-platform-common-password-widget-view.component-B6vGWi9I.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-phone-widget-column.component-BL9Xl2XH.mjs → acorex-platform-common-phone-widget-column.component-uAeAPCog.mjs} +41 -41
- package/fesm2022/acorex-platform-common-phone-widget-column.component-uAeAPCog.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-phone-widget-edit.component-DSh9zoZj.mjs → acorex-platform-common-phone-widget-edit.component-BdxXFoxc.mjs} +140 -140
- package/fesm2022/acorex-platform-common-phone-widget-edit.component-BdxXFoxc.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-phone-widget-view.component-Br3xbaDd.mjs → acorex-platform-common-phone-widget-view.component-D_A5NXzA.mjs} +69 -69
- package/fesm2022/acorex-platform-common-phone-widget-view.component-D_A5NXzA.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-rich-text-widget-column.component-DDT58tca.mjs → acorex-platform-common-rich-text-widget-column.component-DDJn1WqG.mjs} +23 -23
- package/fesm2022/acorex-platform-common-rich-text-widget-column.component-DDJn1WqG.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-rich-text-widget-edit.component-Dz1toc21.mjs → acorex-platform-common-rich-text-widget-edit.component-f30-VPMJ.mjs} +9 -9
- package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-f30-VPMJ.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-rich-text-widget-view.component-CxTPcEIQ.mjs → acorex-platform-common-rich-text-widget-view.component-Y214kMe4.mjs} +9 -9
- package/fesm2022/acorex-platform-common-rich-text-widget-view.component-Y214kMe4.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-selection-list-widget-column.component-BCCmg8MI.mjs → acorex-platform-common-selection-list-widget-column.component-4uQzk7WQ.mjs} +17 -17
- package/fesm2022/acorex-platform-common-selection-list-widget-column.component-4uQzk7WQ.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-selection-list-widget-edit.component-B5eUdN2R.mjs → acorex-platform-common-selection-list-widget-edit.component-BY7A969M.mjs} +29 -29
- package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-BY7A969M.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-selection-list-widget-filter.component-DPpZq1TB.mjs → acorex-platform-common-selection-list-widget-filter.component-NDAFZhfE.mjs} +19 -19
- package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-NDAFZhfE.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-selection-list-widget-view.component-Bxvd_AKZ.mjs → acorex-platform-common-selection-list-widget-view.component-HzxEiWgp.mjs} +9 -9
- package/fesm2022/acorex-platform-common-selection-list-widget-view.component-HzxEiWgp.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-signature-pad-widget-edit.component-CNjYCEi6.mjs → acorex-platform-common-signature-pad-widget-edit.component-C6VI3F_S.mjs} +56 -56
- package/fesm2022/acorex-platform-common-signature-pad-widget-edit.component-C6VI3F_S.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-signature-pad-widget-view.component-CsiBv_7i.mjs → acorex-platform-common-signature-pad-widget-view.component-CEiBtv9t.mjs} +17 -17
- package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-CEiBtv9t.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-string-widget-filter.component-CrGt6Bov.mjs → acorex-platform-common-string-widget-filter.component-BZiyRHfg.mjs} +68 -68
- package/fesm2022/acorex-platform-common-string-widget-filter.component-BZiyRHfg.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-text-widget-column.component-qXusAevm.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-text-widget-edit.component-ed0MUYnD.mjs → acorex-platform-common-text-widget-edit.component-DSwPteMX.mjs} +88 -88
- package/fesm2022/acorex-platform-common-text-widget-edit.component-DSwPteMX.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-text-widget-view.component-BpxTaeQW.mjs → acorex-platform-common-text-widget-view.component-CKg9nvbY.mjs} +21 -21
- package/fesm2022/acorex-platform-common-text-widget-view.component-CKg9nvbY.mjs.map +1 -0
- package/fesm2022/{acorex-platform-common-toggle-widget-column.component-BqiUQrmV.mjs → acorex-platform-common-toggle-widget-column.component-_IrciAj-.mjs} +33 -33
- package/fesm2022/acorex-platform-common-toggle-widget-column.component-_IrciAj-.mjs.map +1 -0
- package/fesm2022/acorex-platform-common-toggle-widget-edit.component-CDG62BJN.mjs.map +1 -1
- package/fesm2022/{acorex-platform-common-toggle-widget-view.component-DWYcIPTd.mjs → acorex-platform-common-toggle-widget-view.component-B5JwQ8X-.mjs} +25 -25
- package/fesm2022/acorex-platform-common-toggle-widget-view.component-B5JwQ8X-.mjs.map +1 -0
- package/fesm2022/acorex-platform-common.mjs +281 -131
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +34 -34
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +272 -200
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layouts-entity-create-view.component-Bxkv579D.mjs +107 -0
- package/fesm2022/acorex-platform-layouts-entity-create-view.component-Bxkv579D.mjs.map +1 -0
- package/fesm2022/acorex-platform-layouts-entity-modify-view.component-C-dS2HFl.mjs +88 -0
- package/fesm2022/acorex-platform-layouts-entity-modify-view.component-C-dS2HFl.mjs.map +1 -0
- package/fesm2022/acorex-platform-layouts.mjs +35 -35
- package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
- package/fesm2022/acorex-platform-mocks.mjs.map +1 -1
- package/fesm2022/acorex-platform-native.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CTlj-QBs.mjs +96 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CTlj-QBs.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DHmUvWx8.mjs +85 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DHmUvWx8.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-401.component-BeQ4_BgW.mjs +31 -0
- package/fesm2022/acorex-platform-themes-default-error-401.component-BeQ4_BgW.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-404.component-BYDiT6Ns.mjs +25 -0
- package/fesm2022/acorex-platform-themes-default-error-404.component-BYDiT6Ns.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-error-offline.component-DUtW3w_g.mjs +19 -0
- package/fesm2022/acorex-platform-themes-default-error-offline.component-DUtW3w_g.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +52 -60
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-column.component-Cx6WLV3_.mjs → acorex-platform-widgets-checkbox-widget-column.component-CFCwedxX.mjs} +25 -25
- package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-CFCwedxX.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-C_68pr-9.mjs → acorex-platform-widgets-checkbox-widget-view.component-CCTIjDb0.mjs} +29 -29
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-CCTIjDb0.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets.mjs +1383 -1374
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/fesm2022/acorex-platform-workflow.mjs +18 -13
- package/fesm2022/acorex-platform-workflow.mjs.map +1 -1
- package/fesm2022/acorex-platform.mjs.map +1 -1
- package/layout/builder/README.md +3 -3
- package/layout/entity/lib/entity-detail-list.viewmodel.d.ts +2 -1
- package/layout/entity/lib/entity-master-list.viewmodel.d.ts +9 -6
- package/layout/entity/lib/entity-master-single.viewmodel.d.ts +7 -5
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +2 -0
- package/layouts/README.md +3 -3
- package/mocks/README.md +3 -3
- package/package.json +1 -1
- package/themes/default/README.md +3 -3
- package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +1 -0
- package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.d.ts +2 -1
- package/widgets/README.md +3 -3
- package/widgets/lib/editors/rich-text-widget/rich-text-widget-edit.component.d.ts +1 -1
- package/widgets/lib/editors/rich-text-widget/rich-text-widget-view.component.d.ts +3 -2
- package/widgets/lib/editors/signature-pad-widget/signature-pad-widget-edit.component.d.ts +1 -1
- package/widgets/lib/editors/signature-pad-widget/signature-pad-widget-view.component.d.ts +1 -1
- package/widgets/lib/editors/text-box-widget/text-box-widget-edit.component.d.ts +1 -1
- package/widgets/lib/editors/text-box-widget/text-box-widget-view.component.d.ts +1 -1
- package/workflow/README.md +3 -3
- package/workflow/lib/workflow.service.d.ts +1 -1
- package/workflow/lib/workflow.types.d.ts +4 -3
- package/fesm2022/acorex-platform-common-avatar-widget-edit.component-B-of5ssU.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-avatar-widget-view.component-CJvrSkTv.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-boolean-widget-filter.component-BTcOjuUm.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-change-password.component-NvrMMq9e.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-checkbox-widget-column.component-X9d1iY_F.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-dateTime-widget-edit.component-D8FSiqAo.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-dateTime-widget-filter.component-Df0DuDtw.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-dateTime-widget-view.component-CjVjQkPh.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-email-widget-column.component-BgNdL62k.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-email-widget-edit.component-CgHPGccx.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-email-widget-view.component-C2aQ14k-.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-file-widget-edit.component-DxoQR4CU.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-file-widget-filter.component-BvG0iaKU.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-file-widget-view.component-BC9l3YrO.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-gallery-widget-edit.component-BihOIJ9T.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-gallery-widget-filter.component-DS1PCIJp.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-gallery-widget-view.component-CnQONVdg.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-largetext-widget-edit.component-BCtGkz1a.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-lookup-widget-edit.component-D9UhViUG.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-lookup-widget-filter.component-RWweQQaO.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-lookup-widget-view.component-mXo8VADX.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-map-widget-edit.component-SSrR3xxv.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-map-widget-view.component-DrGG3gzg.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-messenger-widget-column.component-BJ_XzNKc.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-messenger-widget-edit.component-B_FG_n0O.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-messenger-widget-view.component-EBiPO9ds.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-number-widget-edit.component-B1XXga-9.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-number-widget-filter.component-B2JCpDjU.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-password-widget-column.component-eyqgQlAt.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-password-widget-edit.component-C2yNb9Pl.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-password-widget-view.component-o9S7pwJW.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-phone-widget-column.component-BL9Xl2XH.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-phone-widget-edit.component-DSh9zoZj.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-phone-widget-view.component-Br3xbaDd.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-rich-text-widget-column.component-DDT58tca.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-rich-text-widget-edit.component-Dz1toc21.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-rich-text-widget-view.component-CxTPcEIQ.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-selection-list-widget-column.component-BCCmg8MI.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-selection-list-widget-edit.component-B5eUdN2R.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-selection-list-widget-filter.component-DPpZq1TB.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-selection-list-widget-view.component-Bxvd_AKZ.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-signature-pad-widget-edit.component-CNjYCEi6.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-signature-pad-widget-view.component-CsiBv_7i.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-string-widget-filter.component-CrGt6Bov.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-text-widget-edit.component-ed0MUYnD.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-text-widget-view.component-BpxTaeQW.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-toggle-widget-column.component-BqiUQrmV.mjs.map +0 -1
- package/fesm2022/acorex-platform-common-toggle-widget-view.component-DWYcIPTd.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-entity-create-view.component-fkKPKxlb.mjs +0 -107
- package/fesm2022/acorex-platform-layouts-entity-create-view.component-fkKPKxlb.mjs.map +0 -1
- package/fesm2022/acorex-platform-layouts-entity-modify-view.component-D1h1xORH.mjs +0 -88
- package/fesm2022/acorex-platform-layouts-entity-modify-view.component-D1h1xORH.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-BxYT9KhH.mjs +0 -96
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-BxYT9KhH.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-F7dr-osu.mjs +0 -85
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-F7dr-osu.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-401.component-Djuin07Z.mjs +0 -31
- package/fesm2022/acorex-platform-themes-default-error-401.component-Djuin07Z.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-404.component-C-RyiLkk.mjs +0 -25
- package/fesm2022/acorex-platform-themes-default-error-404.component-C-RyiLkk.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-error-offline.component-WCfy9-cr.mjs +0 -19
- package/fesm2022/acorex-platform-themes-default-error-offline.component-WCfy9-cr.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-column.component-Cx6WLV3_.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-C_68pr-9.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-auth.mjs","sources":["../../../../libs/platform/auth/src/lib/application/application.loader.ts","../../../../libs/platform/auth/src/lib/tenant/tenant.loader.ts","../../../../libs/platform/auth/src/lib/permission/permission.loader.ts","../../../../libs/platform/auth/src/lib/errors.types.ts","../../../../libs/platform/auth/src/lib/auth-registry.service.ts","../../../../libs/platform/auth/src/lib/feature/feature.loader.ts","../../../../libs/platform/auth/src/lib/feature/feature.directive.ts","../../../../libs/platform/auth/src/lib/feature/feature.guard.ts","../../../../libs/platform/auth/src/lib/session.types.ts","../../../../libs/platform/auth/src/lib/session.service.ts","../../../../libs/platform/auth/src/lib/permission/permission.guard.ts","../../../../libs/platform/auth/src/lib/permission/permission.directive.ts","../../../../libs/platform/auth/src/lib/auth.guard.ts","../../../../libs/platform/auth/src/lib/auth.module.ts","../../../../libs/platform/auth/src/acorex-platform-auth.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { AXPApplication } from './application.types';\r\nimport { AXPSessionContext } from '../session.types';\r\n\r\nexport interface AXPApplicationLoader {\r\n getList(context: AXPSessionContext): Observable<AXPApplication[]>;\r\n}\r\n\r\nexport const AXP_APPLICATION_LOADER = new InjectionToken<AXPApplicationLoader>('AXP_APPLICATION_LOADER', {\r\n providedIn: 'root',\r\n factory: () => {\r\n return new AXPApplicationDefaultLoader();\r\n },\r\n});\r\n\r\nclass AXPApplicationDefaultLoader implements AXPApplicationLoader {\r\n getList(context: AXPSessionContext): Observable<AXPApplication[]> {\r\n return of([\r\n {\r\n id: '1',\r\n name: 'default-app',\r\n title: 'Default Application',\r\n version: '1.0.0',\r\n editionName: 'Standard',\r\n features: [],\r\n },\r\n ]);\r\n }\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { AXPTenant } from './tenant.types';\r\nimport { AXPSessionContext } from '../session.types';\r\n\r\nexport interface AXPTenantLoader {\r\n getList(context: AXPSessionContext): Observable<AXPTenant[]>;\r\n}\r\n\r\nexport const AXP_TENANT_LOADER = new InjectionToken<AXPTenantLoader>('AXP_TENANT_LOADER', {\r\n providedIn: 'root',\r\n factory: () => {\r\n return new AXPTenantDefaultLoader();\r\n },\r\n});\r\n\r\nclass AXPTenantDefaultLoader implements AXPTenantLoader {\r\n\r\n getList(context: AXPSessionContext): Observable<AXPTenant[]> {\r\n return of([\r\n {\r\n id: '1',\r\n name: 'default-tenant',\r\n title: 'Default Tenant',\r\n },\r\n ]);\r\n }\r\n}\r\n","import { InjectionToken } from \"@angular/core\";\r\nimport { Observable, of } from \"rxjs\";\r\nimport { AXPPermission } from \"./permission.types\";\r\nimport { AXPSessionContext } from \"../session.types\";\r\n\r\nexport interface AXPPermissionLoader {\r\n getList(context: AXPSessionContext): Observable<AXPPermission[]>;\r\n}\r\n\r\nexport const AXP_PERMISSION_LOADER = new InjectionToken<AXPPermissionLoader>('AXP_PERMISSION_LOADER', {\r\n providedIn: 'root',\r\n factory: () => {\r\n return new AXPPermissionDefaultLoader();\r\n }\r\n});\r\n\r\n\r\nclass AXPPermissionDefaultLoader implements AXPPermissionLoader {\r\n getList(context: AXPSessionContext): Observable<AXPPermission[]> {\r\n return of([])\r\n }\r\n}","export class AXPUnauthorizedError extends Error {\r\n constructor(message?: string, public data?: { redirectUrl?: string }) {\r\n super(message);\r\n this.name = 'AXPUnauthorizedError';\r\n }\r\n}\r\n\r\n\r\nexport class AXPUnauthenticatedError extends Error {\r\n constructor(message?: string, public data?: { redirectUrl?: string }) {\r\n super(message);\r\n this.name = 'AXPUnauthenticatedError';\r\n }\r\n}","import { Injectable, Injector } from \"@angular/core\";\r\nimport { AXPAuthStrategy } from \"./auth.strategy\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AXPAuthStrategyRegistryService {\r\n private strategies = new Map<string, AXPAuthStrategy>();\r\n\r\n private injector: Injector;\r\n\r\n constructor(injector: Injector) {\r\n this.injector = injector;\r\n }\r\n\r\n register(...plugins: (new () => AXPAuthStrategy)[]) {\r\n plugins.forEach(t => {\r\n const childInjector = Injector.create({ providers: [{ provide: t, useClass: t, deps: [] }], parent: this.injector });\r\n const strategy = childInjector.get(t);\r\n if (strategy) {\r\n this.strategies.set(strategy.name, strategy);\r\n }\r\n })\r\n }\r\n\r\n get(strategyKey: string): AXPAuthStrategy | undefined {\r\n return this.strategies.get(strategyKey);\r\n }\r\n}","import { InjectionToken } from '@angular/core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { AXPFeature } from './feature.types';\r\nimport { AXPSessionContext } from '../session.types';\r\n\r\nexport interface AXPFeatureLoader {\r\n getList(context: AXPSessionContext): Observable<AXPFeature[]>;\r\n}\r\n\r\nexport const AXP_FEATURE_LOADER = new InjectionToken<AXPFeatureLoader>('AXP_FEATURE_LOADER', {\r\n providedIn: 'root',\r\n factory: () => {\r\n return new AXPFeatureDefaultLoader();\r\n },\r\n});\r\n\r\nclass AXPFeatureDefaultLoader implements AXPFeatureLoader {\r\n getList(context: AXPSessionContext): Observable<AXPFeature[]> {\r\n return of([]);\r\n }\r\n}\r\n","import { Directive, Input, TemplateRef, ViewContainerRef, inject, signal } from '@angular/core';\r\nimport { Subscription, first } from 'rxjs';\r\nimport { AXPSessionService } from '../session.service';\r\n\r\n@Directive({\r\n selector: '[feature]',\r\n})\r\nexport class AXPFeatureDirective {\r\n private hasView = signal(false);\r\n private subscription!: Subscription;\r\n private sessionService = inject(AXPSessionService);\r\n\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainer: ViewContainerRef\r\n ) { }\r\n\r\n @Input()\r\n public set feature(featureKeys: string | string[] | null) {\r\n const keys: string[] = !featureKeys ? [] : (Array.isArray(featureKeys) ? featureKeys : [featureKeys]);\r\n if (keys.length == 0) {\r\n // If featureKey is null or empty, decide the default behavior here\r\n this.viewContainer.createEmbeddedView(this.templateRef);\r\n this.hasView.set(true);\r\n return;\r\n }\r\n this.subscription = this.sessionService.features$\r\n //.pipe(first())\r\n .subscribe(() => {\r\n if (this.sessionService.isFeatureEnabled(...keys)) {\r\n if (!this.hasView()) {\r\n this.viewContainer.createEmbeddedView(this.templateRef);\r\n this.hasView.set(true);\r\n }\r\n } else {\r\n this.viewContainer.clear();\r\n this.hasView.set(false);\r\n }\r\n });\r\n }\r\n\r\n @Input()\r\n public set featureElse(elseTemplateRef: TemplateRef<any>) {\r\n if (!this.hasView()) {\r\n this.viewContainer.createEmbeddedView(elseTemplateRef);\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription?.unsubscribe();\r\n }\r\n}\r\n","import { ActivatedRouteSnapshot, CanActivateFn, RouterStateSnapshot, UrlTree } from \"@angular/router\";\r\nimport { inject } from \"@angular/core\";\r\nimport { AXPSessionService } from \"../session.service\";\r\nimport { Observable, first, map } from \"rxjs\";\r\nimport { AXPUnauthorizedError } from \"../errors.types\";\r\n\r\n\r\nexport const AXPFeatureGuard: CanActivateFn =\r\n (route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean | UrlTree> => {\r\n const sessionService = inject(AXPSessionService);\r\n const requiredFeatures = route.data['requiredFeature'] as (string | string[] | null);\r\n\r\n return sessionService.features$.pipe(\r\n map(() => {\r\n const keys: string[] = !requiredFeatures ? [] : (Array.isArray(requiredFeatures) ? requiredFeatures : [requiredFeatures]);\r\n const hasFeature = keys.length == 0 || sessionService.isFeatureEnabled(...keys);\r\n if (!hasFeature) {\r\n throw new AXPUnauthorizedError(\r\n `Access Denied. You do not have access to this feature. Required feature(s): ${keys.join(', ')}. Please contact support if you need access.`,\r\n {\r\n redirectUrl: state.url\r\n }\r\n );\r\n }\r\n return true;\r\n })\r\n );\r\n };\r\n","import { AXPApplication } from \"./application/application.types\";\r\nimport { AXPTenant } from \"./tenant/tenant.types\";\r\nimport { AXPUser } from \"./user/user.types\";\r\n\r\nexport class AXPSessionContext {\r\n\r\n private _user: AXPUser | null = null;\r\n public get user(): AXPUser | null {\r\n return this._user;\r\n }\r\n\r\n private _tenant: AXPTenant | null = null;\r\n public get tenant(): AXPTenant | null {\r\n return this._tenant;\r\n }\r\n\r\n private _application: AXPApplication | null = null;\r\n public get application(): AXPApplication | null {\r\n return this._application;\r\n }\r\n\r\n constructor(context: {\r\n user: AXPUser | null,\r\n tenant: AXPTenant | null,\r\n application: AXPApplication | null,\r\n }) {\r\n this._user = context.user;\r\n this._tenant = context.tenant;\r\n this._application = context.application;\r\n }\r\n}\r\n\r\n\r\nexport enum AXPSessionStatus {\r\n Authenticated = \"authenticated\",\r\n Unauthenticated = \"unauthenticated\",\r\n Unauthorized = \"unauthorized\",\r\n Authorized = \"authorized\",\r\n Expired = \"expired\",\r\n SignedOut = \"signedOut\"\r\n}","import { AXPSignInAction, AXPSignOutAction } from '@acorex/platform/common';\r\nimport { Injectable, inject } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { isEmpty, merge } from 'lodash-es';\r\nimport { BehaviorSubject, Observable, defaultIfEmpty, firstValueFrom, map, of, shareReplay } from 'rxjs';\r\nimport { AXPApplication } from './application/application.types';\r\nimport { AXPAuthStrategyRegistryService } from './auth-registry.service';\r\nimport { AXPBaseCredentials, AXPSessionData } from './auth.strategy';\r\nimport { AXPFeature, AXP_FEATURE_LOADER } from './feature';\r\nimport { AXP_PERMISSION_LOADER } from './permission/permission.loader';\r\nimport { AXPPermission } from './permission/permission.types';\r\nimport { AXPSessionContext, AXPSessionStatus } from './session.types';\r\nimport { AXPTenant } from './tenant/tenant.types';\r\nimport { AXPUser } from './user/user.types';\r\nimport { AXP_TENANT_LOADER } from './tenant/tenant.loader';\r\nimport { AXP_APPLICATION_LOADER } from './application/application.loader';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AXPSessionService {\r\n private store = inject(Store);\r\n\r\n private currentAuthStrategyKey: string | null = null;\r\n private authStrategyRegistry = inject(AXPAuthStrategyRegistryService);\r\n private readonly SESSION_KEY = 'AXP_SESSION';\r\n\r\n private readonly permissionLoader = inject(AXP_PERMISSION_LOADER);\r\n private readonly featureLoader = inject(AXP_FEATURE_LOADER);\r\n private readonly tenantLoader = inject(AXP_TENANT_LOADER);\r\n private readonly applicationLoader = inject(AXP_APPLICATION_LOADER);\r\n\r\n private status = new BehaviorSubject<AXPSessionStatus>(AXPSessionStatus.Unauthenticated);\r\n public readonly status$ = this.status.asObservable().pipe(shareReplay(1));\r\n\r\n private currentUserSubject = new BehaviorSubject<AXPUser | null>(null);\r\n public readonly user$ = this.currentUserSubject.asObservable().pipe(shareReplay(1));\r\n public get user(): AXPUser | null {\r\n const session = this.getSessionData();\r\n if (session?.user && !this.currentUserSubject.value) {\r\n this.currentUserSubject.next(session.user);\r\n }\r\n return this.currentUserSubject.value;\r\n }\r\n\r\n private currentTenantSubject = new BehaviorSubject<AXPTenant | null>(null);\r\n public readonly tenant$ = this.currentTenantSubject.asObservable().pipe(shareReplay(1));\r\n public get tenant(): AXPTenant | null {\r\n const session = this.getSessionData();\r\n if (session?.tenant && !this.currentTenantSubject.value) {\r\n this.currentTenantSubject.next(session.tenant);\r\n }\r\n return this.currentTenantSubject.value;\r\n }\r\n\r\n\r\n\r\n public get tenants$(): Observable<AXPTenant[]> {\r\n return this.tenantLoader.getList(this.getContext());\r\n }\r\n\r\n private currentApplicationSubject = new BehaviorSubject<AXPApplication | null>(null);\r\n public readonly application$ = this.currentApplicationSubject.asObservable().pipe(shareReplay(1));\r\n public get application(): AXPApplication | null {\r\n const session = this.getSessionData();\r\n if (session?.application && !this.currentApplicationSubject.value) {\r\n this.currentApplicationSubject.next(session.application);\r\n }\r\n return this.currentApplicationSubject.value;\r\n }\r\n\r\n public get applications$(): Observable<AXPApplication[]> {\r\n return this.applicationLoader.getList(this.getContext());\r\n }\r\n\r\n private permissionsSubject = new BehaviorSubject<AXPPermission[]>([]);\r\n public readonly permissions$ = this.permissionsSubject.asObservable().pipe(shareReplay(1), defaultIfEmpty([]));\r\n public get permissions(): AXPPermission[] {\r\n return this.permissionsSubject.value ?? [];\r\n }\r\n\r\n private featuresSubject = new BehaviorSubject<AXPFeature[]>([]);\r\n public readonly features$ = this.featuresSubject.asObservable().pipe(shareReplay(1), defaultIfEmpty([]));\r\n public get features(): AXPFeature[] {\r\n return this.featuresSubject.value ?? [];\r\n }\r\n\r\n public readonly isAuthenticated$ = this.status$.pipe(\r\n map((status) => status === AXPSessionStatus.Authenticated || status === AXPSessionStatus.Authorized),\r\n shareReplay(1)\r\n );\r\n\r\n public readonly isAuthorized$ = this.status$.pipe(\r\n map((status) => status === AXPSessionStatus.Authorized),\r\n shareReplay(1)\r\n );\r\n\r\n public async restoreSession(): Promise<void> {\r\n const sessionData = this.getSessionData();\r\n if (sessionData) {\r\n this.currentAuthStrategyKey = sessionData.strategy;\r\n if (sessionData.user) {\r\n this.currentUserSubject.next(sessionData.user);\r\n this.status.next(AXPSessionStatus.Authenticated);\r\n }\r\n if (sessionData.tenant) {\r\n this.setTenant(sessionData.tenant);\r\n }\r\n if (sessionData.application) {\r\n this.setApplication(sessionData.application);\r\n }\r\n await this.signInComplete();\r\n } else {\r\n this.status.next(AXPSessionStatus.Unauthorized);\r\n }\r\n }\r\n\r\n async signin(credentials: AXPBaseCredentials): Promise<void> {\r\n const strategy = this.authStrategyRegistry.get(credentials.strategy);\r\n if (!strategy) {\r\n throw new Error(`Authentication strategy '${credentials.strategy}' is not supported`);\r\n }\r\n this.currentAuthStrategyKey = credentials.strategy; // Store the used strategy key\r\n const result = await strategy.signin(credentials);\r\n if (result.succeed) {\r\n this.currentUserSubject.next(result.data!.user);\r\n this.setSession({\r\n accessToken: result.data!.accessToken,\r\n refreshToken: result.data!.refreshToken,\r\n user: result.data!.user,\r\n });\r\n this.status.next(AXPSessionStatus.Authenticated);\r\n } else {\r\n this.status.next(AXPSessionStatus.Unauthenticated);\r\n throw new Error(`Invalid Username or Password`);\r\n }\r\n }\r\n\r\n async signout(): Promise<void> {\r\n const strategy = this.currentAuthStrategyKey ? this.authStrategyRegistry.get(this.currentAuthStrategyKey) : null;\r\n if (strategy) {\r\n await strategy.signout();\r\n }\r\n //\r\n this.clearSession();\r\n this.status.next(AXPSessionStatus.SignedOut);\r\n this.store.dispatch(AXPSignOutAction());\r\n }\r\n\r\n async refreshToken(): Promise<void> {\r\n const sessionData = this.getSessionData();\r\n if (!this.currentAuthStrategyKey || !sessionData || !sessionData.refreshToken) {\r\n throw new Error('No authentication strategy or refresh token available');\r\n }\r\n const strategy = this.authStrategyRegistry.get(this.currentAuthStrategyKey);\r\n if (!strategy) {\r\n throw new Error(`Authentication strategy '${this.currentAuthStrategyKey}' is not found`);\r\n }\r\n const result = await strategy.refreshToken(this.getContext());\r\n if (result.succeed) {\r\n this.setSession(result.data as AXPSessionData);\r\n this.status.next(AXPSessionStatus.Authorized);\r\n } else {\r\n this.status.next(AXPSessionStatus.Expired);\r\n }\r\n }\r\n\r\n async setTenant(tenant: AXPTenant | null): Promise<void> {\r\n this.currentTenantSubject.next(tenant);\r\n if (tenant) this.updateSession({ tenant: tenant });\r\n await this.refreshToken();\r\n }\r\n\r\n async setApplication(application: AXPApplication | null): Promise<void> {\r\n\r\n this.currentApplicationSubject.next(application);\r\n if (application) this.updateSession({ application: application });\r\n await this.refreshToken();\r\n }\r\n\r\n private async loadPermissions(): Promise<void> {\r\n try {\r\n const permissions = await firstValueFrom(this.permissionLoader.getList(this.getContext()));\r\n this.permissionsSubject.next(permissions ?? []);\r\n this.store.dispatch(AXPSignInAction());\r\n } catch (error) {\r\n console.error('Error loading permissions:', error);\r\n this.permissionsSubject.next([]);\r\n }\r\n }\r\n\r\n private async loadFeatures(): Promise<void> {\r\n try {\r\n const features = await firstValueFrom(this.featureLoader.getList(this.getContext()));\r\n this.featuresSubject.next(features ?? []);\r\n } catch (error) {\r\n console.error('Error loading features:', error);\r\n this.featuresSubject.next([]);\r\n }\r\n }\r\n\r\n async signInComplete() {\r\n await this.loadPermissions();\r\n await this.loadFeatures();\r\n this.status.next(AXPSessionStatus.Authorized);\r\n }\r\n\r\n private setSession(tokens: Partial<AXPSessionData>): void {\r\n const sessionData: Partial<AXPSessionData> = {\r\n accessToken: tokens.accessToken,\r\n refreshToken: tokens.refreshToken,\r\n strategy: this.currentAuthStrategyKey ?? undefined,\r\n user: this.user,\r\n };\r\n this.updateSession(sessionData);\r\n }\r\n\r\n private updateSession(update: Partial<AXPSessionData>) {\r\n const currentSession = this.getSessionData() ?? {};\r\n const updatedSession = merge({}, currentSession, update);\r\n localStorage.setItem(this.SESSION_KEY, JSON.stringify(updatedSession));\r\n }\r\n\r\n private getSessionData(): AXPSessionData | null {\r\n const sessionDataString = localStorage.getItem(this.SESSION_KEY);\r\n return sessionDataString ? JSON.parse(sessionDataString) : null;\r\n }\r\n\r\n private clearSession(): void {\r\n //\r\n this.currentAuthStrategyKey = null;\r\n //\r\n this.currentUserSubject.next(null);\r\n //\r\n this.setTenant(null);\r\n //\r\n this.setApplication(null);\r\n //\r\n this.permissionsSubject.next([]);\r\n //\r\n this.featuresSubject.next([]);\r\n //\r\n localStorage.removeItem(this.SESSION_KEY);\r\n }\r\n\r\n public authorize(...keys: string[]): boolean {\r\n return keys.every((k) => isEmpty(k) || this.permissions.indexOf(k) > -1);\r\n }\r\n\r\n public isFeatureEnabled(...keys: string[]): boolean {\r\n return keys.every((k) => isEmpty(k) || this.features.some((c) => c.name == k && c.value == true));\r\n }\r\n\r\n public getToken(): Observable<string | undefined> {\r\n return of(this.getSessionData()?.accessToken);\r\n }\r\n\r\n private getContext(): AXPSessionContext {\r\n return new AXPSessionContext({\r\n user: this.user,\r\n tenant: this.tenant,\r\n application: this.application,\r\n });\r\n }\r\n\r\n\r\n}\r\n","import { inject } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, CanActivateFn, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { first, map, tap } from 'rxjs';\r\nimport { AXPUnauthorizedError } from '../errors.types';\r\nimport { AXPSessionService } from '../session.service';\r\nimport { AXPSessionStatus } from '../session.types';\r\n\r\nexport const AXPPermissionGuard: CanActivateFn = (route: ActivatedRouteSnapshot, state: RouterStateSnapshot) => {\r\n\r\n const sessionService = inject(AXPSessionService);\r\n\r\n const permissionKeys = route.data['requiredPermission'] as string | string[] | null;\r\n\r\n return sessionService.isAuthorized$.pipe(\r\n first(),\r\n map((value) => {\r\n const keys: string[] = !permissionKeys ? [] : Array.isArray(permissionKeys) ? permissionKeys : [permissionKeys];\r\n const hasPermission = keys.length == 0 || sessionService.authorize(...keys);\r\n if (!hasPermission) {\r\n throw new AXPUnauthorizedError(\r\n `Access denied. Required permissions: ${keys.join(', ')}. Please contact your administrator if you believe this is an error.`,\r\n {\r\n redirectUrl: state.url\r\n }\r\n );\r\n }\r\n return true;\r\n })\r\n );\r\n};\r\n","import { Directive, Input, TemplateRef, ViewContainerRef, inject, signal } from '@angular/core';\r\nimport { Subscription, first } from 'rxjs';\r\nimport { AXPSessionService } from '../session.service';\r\n\r\n@Directive({\r\n selector: '[permission]',\r\n})\r\nexport class AXPPermissionDirective {\r\n private hasView = signal(false);\r\n private subscription!: Subscription;\r\n private sessionService = inject(AXPSessionService);\r\n\r\n constructor(\r\n private templateRef: TemplateRef<any>,\r\n private viewContainer: ViewContainerRef\r\n ) { }\r\n\r\n @Input()\r\n public set permission(permissionKeys: string | string[] | null) {\r\n const keys: string[] = !permissionKeys ? [] : (Array.isArray(permissionKeys) ? permissionKeys : [permissionKeys]);\r\n if (keys.length == 0) {\r\n // If permissionKey is null or empty, decide the default behavior here\r\n this.viewContainer.createEmbeddedView(this.templateRef);\r\n this.hasView.set(true);\r\n return;\r\n }\r\n this.subscription = this.sessionService.isAuthorized$\r\n .subscribe((isAuthorized) => {\r\n if (isAuthorized && this.sessionService.authorize(...keys)) {\r\n if (!this.hasView()) {\r\n this.viewContainer.createEmbeddedView(this.templateRef);\r\n this.hasView.set(true);\r\n }\r\n } else {\r\n this.viewContainer.clear();\r\n this.hasView.set(false);\r\n }\r\n });\r\n }\r\n\r\n @Input()\r\n public set permissionElse(elseTemplateRef: TemplateRef<any>) {\r\n if (!this.hasView()) {\r\n this.viewContainer.createEmbeddedView(elseTemplateRef);\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription?.unsubscribe();\r\n }\r\n}\r\n","import { inject } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, Router, CanActivateFn } from '@angular/router';\r\nimport { AXPSessionService } from './session.service';\r\nimport { first, map } from 'rxjs';\r\nimport { AXPUnauthenticatedError } from './errors.types';\r\n\r\n\r\n\r\nexport const AXPAuthGuard: CanActivateFn =\r\n (route: ActivatedRouteSnapshot, state: RouterStateSnapshot) => {\r\n const sessionService = inject(AXPSessionService);\r\n return sessionService.isAuthenticated$.pipe(\r\n first(),\r\n map(value => {\r\n if (value) {\r\n return true;\r\n }\r\n throw new AXPUnauthenticatedError(\r\n `Access denied. You are not currently logged in. Please log in to access this page. If you continue to see this message after logging in, please contact support.`,\r\n {\r\n redirectUrl: state.url\r\n }\r\n );\r\n })\r\n );\r\n };\r\n","import { APP_INITIALIZER, Inject, ModuleWithProviders, NgModule, Optional } from '@angular/core';\r\nimport { AXPAuthStrategyRegistryService } from './auth-registry.service';\r\nimport { AXPAuthStrategy } from './auth.strategy';\r\nimport { AXPFeatureDirective } from './feature';\r\nimport { AXPPermissionDirective } from './permission/permission.directive';\r\nimport { AXPSessionService } from './session.service';\r\n\r\nexport interface AXPAuthModuleConfigs {\r\n strategies: (new () => AXPAuthStrategy)[];\r\n}\r\n\r\nexport function initializeAppState(service: AXPSessionService) {\r\n return async () => {\r\n try {\r\n await service.restoreSession();\r\n } catch (error) {\r\n console.error(error);\r\n }\r\n };\r\n}\r\n\r\n@NgModule({\r\n imports: [],\r\n exports: [AXPPermissionDirective, AXPFeatureDirective],\r\n declarations: [AXPPermissionDirective, AXPFeatureDirective],\r\n providers: [\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: initializeAppState,\r\n deps: [AXPSessionService],\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class AXPAuthModule {\r\n static forRoot(configs?: AXPAuthModuleConfigs): ModuleWithProviders<AXPAuthModule> {\r\n return {\r\n ngModule: AXPAuthModule,\r\n providers: [\r\n ...(configs?.strategies || []),\r\n {\r\n provide: 'AXPAuthModuleFactory',\r\n useFactory: (registry: AXPAuthStrategyRegistryService) => () => {\r\n registry.register(...(configs?.strategies || []));\r\n },\r\n deps: [AXPAuthStrategyRegistryService],\r\n multi: true,\r\n },\r\n ],\r\n };\r\n }\r\n\r\n static forChild(configs?: AXPAuthModuleConfigs): ModuleWithProviders<AXPAuthModule> {\r\n return {\r\n ngModule: AXPAuthModule,\r\n providers: [\r\n ...(configs?.strategies || []),\r\n {\r\n provide: 'AXPAuthModuleFactory',\r\n useFactory: (registry: AXPAuthStrategyRegistryService) => () => {\r\n registry.register(...(configs?.strategies || []));\r\n },\r\n deps: [AXPAuthStrategyRegistryService],\r\n multi: true,\r\n },\r\n ],\r\n };\r\n }\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(@Optional() @Inject('AXPAuthModuleFactory') instances: any[]) {\r\n instances?.forEach((f) => {\r\n f();\r\n });\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-platform-auth.mjs","sources":["../../../../libs/platform/auth/src/lib/application/application.loader.ts","../../../../libs/platform/auth/src/lib/tenant/tenant.loader.ts","../../../../libs/platform/auth/src/lib/permission/permission.loader.ts","../../../../libs/platform/auth/src/lib/errors.types.ts","../../../../libs/platform/auth/src/lib/auth-registry.service.ts","../../../../libs/platform/auth/src/lib/feature/feature.loader.ts","../../../../libs/platform/auth/src/lib/feature/feature.directive.ts","../../../../libs/platform/auth/src/lib/feature/feature.guard.ts","../../../../libs/platform/auth/src/lib/session.types.ts","../../../../libs/platform/auth/src/lib/session.service.ts","../../../../libs/platform/auth/src/lib/permission/permission.guard.ts","../../../../libs/platform/auth/src/lib/permission/permission.directive.ts","../../../../libs/platform/auth/src/lib/auth.guard.ts","../../../../libs/platform/auth/src/lib/auth.module.ts","../../../../libs/platform/auth/src/acorex-platform-auth.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { Observable, of } from 'rxjs';\nimport { AXPApplication } from './application.types';\nimport { AXPSessionContext } from '../session.types';\n\nexport interface AXPApplicationLoader {\n getList(context: AXPSessionContext): Observable<AXPApplication[]>;\n}\n\nexport const AXP_APPLICATION_LOADER = new InjectionToken<AXPApplicationLoader>('AXP_APPLICATION_LOADER', {\n providedIn: 'root',\n factory: () => {\n return new AXPApplicationDefaultLoader();\n },\n});\n\nclass AXPApplicationDefaultLoader implements AXPApplicationLoader {\n getList(context: AXPSessionContext): Observable<AXPApplication[]> {\n return of([\n {\n id: '1',\n name: 'default-app',\n title: 'Default Application',\n version: '1.0.0',\n editionName: 'Standard',\n features: [],\n },\n ]);\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { Observable, of } from 'rxjs';\nimport { AXPTenant } from './tenant.types';\nimport { AXPSessionContext } from '../session.types';\n\nexport interface AXPTenantLoader {\n getList(context: AXPSessionContext): Observable<AXPTenant[]>;\n}\n\nexport const AXP_TENANT_LOADER = new InjectionToken<AXPTenantLoader>('AXP_TENANT_LOADER', {\n providedIn: 'root',\n factory: () => {\n return new AXPTenantDefaultLoader();\n },\n});\n\nclass AXPTenantDefaultLoader implements AXPTenantLoader {\n\n getList(context: AXPSessionContext): Observable<AXPTenant[]> {\n return of([\n {\n id: '1',\n name: 'default-tenant',\n title: 'Default Tenant',\n },\n ]);\n }\n}\n","import { InjectionToken } from \"@angular/core\";\nimport { Observable, of } from \"rxjs\";\nimport { AXPPermission } from \"./permission.types\";\nimport { AXPSessionContext } from \"../session.types\";\n\nexport interface AXPPermissionLoader {\n getList(context: AXPSessionContext): Observable<AXPPermission[]>;\n}\n\nexport const AXP_PERMISSION_LOADER = new InjectionToken<AXPPermissionLoader>('AXP_PERMISSION_LOADER', {\n providedIn: 'root',\n factory: () => {\n return new AXPPermissionDefaultLoader();\n }\n});\n\n\nclass AXPPermissionDefaultLoader implements AXPPermissionLoader {\n getList(context: AXPSessionContext): Observable<AXPPermission[]> {\n return of([])\n }\n}","export class AXPUnauthorizedError extends Error {\n constructor(message?: string, public data?: { redirectUrl?: string }) {\n super(message);\n this.name = 'AXPUnauthorizedError';\n }\n}\n\n\nexport class AXPUnauthenticatedError extends Error {\n constructor(message?: string, public data?: { redirectUrl?: string }) {\n super(message);\n this.name = 'AXPUnauthenticatedError';\n }\n}","import { Injectable, Injector } from \"@angular/core\";\nimport { AXPAuthStrategy } from \"./auth.strategy\";\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AXPAuthStrategyRegistryService {\n private strategies = new Map<string, AXPAuthStrategy>();\n\n private injector: Injector;\n\n constructor(injector: Injector) {\n this.injector = injector;\n }\n\n register(...plugins: (new () => AXPAuthStrategy)[]) {\n plugins.forEach(t => {\n const childInjector = Injector.create({ providers: [{ provide: t, useClass: t, deps: [] }], parent: this.injector });\n const strategy = childInjector.get(t);\n if (strategy) {\n this.strategies.set(strategy.name, strategy);\n }\n })\n }\n\n get(strategyKey: string): AXPAuthStrategy | undefined {\n return this.strategies.get(strategyKey);\n }\n}","import { InjectionToken } from '@angular/core';\nimport { Observable, of } from 'rxjs';\nimport { AXPFeature } from './feature.types';\nimport { AXPSessionContext } from '../session.types';\n\nexport interface AXPFeatureLoader {\n getList(context: AXPSessionContext): Observable<AXPFeature[]>;\n}\n\nexport const AXP_FEATURE_LOADER = new InjectionToken<AXPFeatureLoader>('AXP_FEATURE_LOADER', {\n providedIn: 'root',\n factory: () => {\n return new AXPFeatureDefaultLoader();\n },\n});\n\nclass AXPFeatureDefaultLoader implements AXPFeatureLoader {\n getList(context: AXPSessionContext): Observable<AXPFeature[]> {\n return of([]);\n }\n}\n","import { Directive, Input, TemplateRef, ViewContainerRef, inject, signal } from '@angular/core';\nimport { Subscription, first } from 'rxjs';\nimport { AXPSessionService } from '../session.service';\n\n@Directive({\n selector: '[feature]',\n})\nexport class AXPFeatureDirective {\n private hasView = signal(false);\n private subscription!: Subscription;\n private sessionService = inject(AXPSessionService);\n\n constructor(\n private templateRef: TemplateRef<any>,\n private viewContainer: ViewContainerRef\n ) { }\n\n @Input()\n public set feature(featureKeys: string | string[] | null) {\n const keys: string[] = !featureKeys ? [] : (Array.isArray(featureKeys) ? featureKeys : [featureKeys]);\n if (keys.length == 0) {\n // If featureKey is null or empty, decide the default behavior here\n this.viewContainer.createEmbeddedView(this.templateRef);\n this.hasView.set(true);\n return;\n }\n this.subscription = this.sessionService.features$\n //.pipe(first())\n .subscribe(() => {\n if (this.sessionService.isFeatureEnabled(...keys)) {\n if (!this.hasView()) {\n this.viewContainer.createEmbeddedView(this.templateRef);\n this.hasView.set(true);\n }\n } else {\n this.viewContainer.clear();\n this.hasView.set(false);\n }\n });\n }\n\n @Input()\n public set featureElse(elseTemplateRef: TemplateRef<any>) {\n if (!this.hasView()) {\n this.viewContainer.createEmbeddedView(elseTemplateRef);\n }\n }\n\n ngOnDestroy() {\n this.subscription?.unsubscribe();\n }\n}\n","import { ActivatedRouteSnapshot, CanActivateFn, RouterStateSnapshot, UrlTree } from \"@angular/router\";\nimport { inject } from \"@angular/core\";\nimport { AXPSessionService } from \"../session.service\";\nimport { Observable, first, map } from \"rxjs\";\nimport { AXPUnauthorizedError } from \"../errors.types\";\n\n\nexport const AXPFeatureGuard: CanActivateFn =\n (route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean | UrlTree> => {\n const sessionService = inject(AXPSessionService);\n const requiredFeatures = route.data['requiredFeature'] as (string | string[] | null);\n\n return sessionService.features$.pipe(\n map(() => {\n const keys: string[] = !requiredFeatures ? [] : (Array.isArray(requiredFeatures) ? requiredFeatures : [requiredFeatures]);\n const hasFeature = keys.length == 0 || sessionService.isFeatureEnabled(...keys);\n if (!hasFeature) {\n throw new AXPUnauthorizedError(\n `Access Denied. You do not have access to this feature. Required feature(s): ${keys.join(', ')}. Please contact support if you need access.`,\n {\n redirectUrl: state.url\n }\n );\n }\n return true;\n })\n );\n };\n","import { AXPApplication } from \"./application/application.types\";\nimport { AXPTenant } from \"./tenant/tenant.types\";\nimport { AXPUser } from \"./user/user.types\";\n\nexport class AXPSessionContext {\n\n private _user: AXPUser | null = null;\n public get user(): AXPUser | null {\n return this._user;\n }\n\n private _tenant: AXPTenant | null = null;\n public get tenant(): AXPTenant | null {\n return this._tenant;\n }\n\n private _application: AXPApplication | null = null;\n public get application(): AXPApplication | null {\n return this._application;\n }\n\n constructor(context: {\n user: AXPUser | null,\n tenant: AXPTenant | null,\n application: AXPApplication | null,\n }) {\n this._user = context.user;\n this._tenant = context.tenant;\n this._application = context.application;\n }\n}\n\n\nexport enum AXPSessionStatus {\n Authenticated = \"authenticated\",\n Unauthenticated = \"unauthenticated\",\n Unauthorized = \"unauthorized\",\n Authorized = \"authorized\",\n Expired = \"expired\",\n SignedOut = \"signedOut\"\n}","import { AXPSignInAction, AXPSignOutAction } from '@acorex/platform/common';\nimport { Injectable, inject } from '@angular/core';\nimport { Store } from '@ngrx/store';\nimport { isEmpty, merge } from 'lodash-es';\nimport { BehaviorSubject, Observable, defaultIfEmpty, firstValueFrom, map, of, shareReplay } from 'rxjs';\nimport { AXPApplication } from './application/application.types';\nimport { AXPAuthStrategyRegistryService } from './auth-registry.service';\nimport { AXPBaseCredentials, AXPSessionData } from './auth.strategy';\nimport { AXPFeature, AXP_FEATURE_LOADER } from './feature';\nimport { AXP_PERMISSION_LOADER } from './permission/permission.loader';\nimport { AXPPermission } from './permission/permission.types';\nimport { AXPSessionContext, AXPSessionStatus } from './session.types';\nimport { AXPTenant } from './tenant/tenant.types';\nimport { AXPUser } from './user/user.types';\nimport { AXP_TENANT_LOADER } from './tenant/tenant.loader';\nimport { AXP_APPLICATION_LOADER } from './application/application.loader';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXPSessionService {\n private store = inject(Store);\n\n private currentAuthStrategyKey: string | null = null;\n private authStrategyRegistry = inject(AXPAuthStrategyRegistryService);\n private readonly SESSION_KEY = 'AXP_SESSION';\n\n private readonly permissionLoader = inject(AXP_PERMISSION_LOADER);\n private readonly featureLoader = inject(AXP_FEATURE_LOADER);\n private readonly tenantLoader = inject(AXP_TENANT_LOADER);\n private readonly applicationLoader = inject(AXP_APPLICATION_LOADER);\n\n private status = new BehaviorSubject<AXPSessionStatus>(AXPSessionStatus.Unauthenticated);\n public readonly status$ = this.status.asObservable().pipe(shareReplay(1));\n\n private currentUserSubject = new BehaviorSubject<AXPUser | null>(null);\n public readonly user$ = this.currentUserSubject.asObservable().pipe(shareReplay(1));\n public get user(): AXPUser | null {\n const session = this.getSessionData();\n if (session?.user && !this.currentUserSubject.value) {\n this.currentUserSubject.next(session.user);\n }\n return this.currentUserSubject.value;\n }\n\n private currentTenantSubject = new BehaviorSubject<AXPTenant | null>(null);\n public readonly tenant$ = this.currentTenantSubject.asObservable().pipe(shareReplay(1));\n public get tenant(): AXPTenant | null {\n const session = this.getSessionData();\n if (session?.tenant && !this.currentTenantSubject.value) {\n this.currentTenantSubject.next(session.tenant);\n }\n return this.currentTenantSubject.value;\n }\n\n\n\n public get tenants$(): Observable<AXPTenant[]> {\n return this.tenantLoader.getList(this.getContext());\n }\n\n private currentApplicationSubject = new BehaviorSubject<AXPApplication | null>(null);\n public readonly application$ = this.currentApplicationSubject.asObservable().pipe(shareReplay(1));\n public get application(): AXPApplication | null {\n const session = this.getSessionData();\n if (session?.application && !this.currentApplicationSubject.value) {\n this.currentApplicationSubject.next(session.application);\n }\n return this.currentApplicationSubject.value;\n }\n\n public get applications$(): Observable<AXPApplication[]> {\n return this.applicationLoader.getList(this.getContext());\n }\n\n private permissionsSubject = new BehaviorSubject<AXPPermission[]>([]);\n public readonly permissions$ = this.permissionsSubject.asObservable().pipe(shareReplay(1), defaultIfEmpty([]));\n public get permissions(): AXPPermission[] {\n return this.permissionsSubject.value ?? [];\n }\n\n private featuresSubject = new BehaviorSubject<AXPFeature[]>([]);\n public readonly features$ = this.featuresSubject.asObservable().pipe(shareReplay(1), defaultIfEmpty([]));\n public get features(): AXPFeature[] {\n return this.featuresSubject.value ?? [];\n }\n\n public readonly isAuthenticated$ = this.status$.pipe(\n map((status) => status === AXPSessionStatus.Authenticated || status === AXPSessionStatus.Authorized),\n shareReplay(1)\n );\n\n public readonly isAuthorized$ = this.status$.pipe(\n map((status) => status === AXPSessionStatus.Authorized),\n shareReplay(1)\n );\n\n public async restoreSession(): Promise<void> {\n const sessionData = this.getSessionData();\n if (sessionData) {\n this.currentAuthStrategyKey = sessionData.strategy;\n if (sessionData.user) {\n this.currentUserSubject.next(sessionData.user);\n this.status.next(AXPSessionStatus.Authenticated);\n }\n if (sessionData.tenant) {\n this.setTenant(sessionData.tenant);\n }\n if (sessionData.application) {\n this.setApplication(sessionData.application);\n }\n await this.signInComplete();\n } else {\n this.status.next(AXPSessionStatus.Unauthorized);\n }\n }\n\n async signin(credentials: AXPBaseCredentials): Promise<void> {\n const strategy = this.authStrategyRegistry.get(credentials.strategy);\n if (!strategy) {\n throw new Error(`Authentication strategy '${credentials.strategy}' is not supported`);\n }\n this.currentAuthStrategyKey = credentials.strategy; // Store the used strategy key\n const result = await strategy.signin(credentials);\n if (result.succeed) {\n this.currentUserSubject.next(result.data!.user);\n this.setSession({\n accessToken: result.data!.accessToken,\n refreshToken: result.data!.refreshToken,\n user: result.data!.user,\n });\n this.status.next(AXPSessionStatus.Authenticated);\n } else {\n this.status.next(AXPSessionStatus.Unauthenticated);\n throw new Error(`Invalid Username or Password`);\n }\n }\n\n async signout(): Promise<void> {\n const strategy = this.currentAuthStrategyKey ? this.authStrategyRegistry.get(this.currentAuthStrategyKey) : null;\n if (strategy) {\n await strategy.signout();\n }\n //\n this.clearSession();\n this.status.next(AXPSessionStatus.SignedOut);\n this.store.dispatch(AXPSignOutAction());\n }\n\n async refreshToken(): Promise<void> {\n const sessionData = this.getSessionData();\n if (!this.currentAuthStrategyKey || !sessionData || !sessionData.refreshToken) {\n throw new Error('No authentication strategy or refresh token available');\n }\n const strategy = this.authStrategyRegistry.get(this.currentAuthStrategyKey);\n if (!strategy) {\n throw new Error(`Authentication strategy '${this.currentAuthStrategyKey}' is not found`);\n }\n const result = await strategy.refreshToken(this.getContext());\n if (result.succeed) {\n this.setSession(result.data as AXPSessionData);\n this.status.next(AXPSessionStatus.Authorized);\n } else {\n this.status.next(AXPSessionStatus.Expired);\n }\n }\n\n async setTenant(tenant: AXPTenant | null): Promise<void> {\n this.currentTenantSubject.next(tenant);\n if (tenant) this.updateSession({ tenant: tenant });\n await this.refreshToken();\n }\n\n async setApplication(application: AXPApplication | null): Promise<void> {\n\n this.currentApplicationSubject.next(application);\n if (application) this.updateSession({ application: application });\n await this.refreshToken();\n }\n\n private async loadPermissions(): Promise<void> {\n try {\n const permissions = await firstValueFrom(this.permissionLoader.getList(this.getContext()));\n this.permissionsSubject.next(permissions ?? []);\n this.store.dispatch(AXPSignInAction());\n } catch (error) {\n console.error('Error loading permissions:', error);\n this.permissionsSubject.next([]);\n }\n }\n\n private async loadFeatures(): Promise<void> {\n try {\n const features = await firstValueFrom(this.featureLoader.getList(this.getContext()));\n this.featuresSubject.next(features ?? []);\n } catch (error) {\n console.error('Error loading features:', error);\n this.featuresSubject.next([]);\n }\n }\n\n async signInComplete() {\n await this.loadPermissions();\n await this.loadFeatures();\n this.status.next(AXPSessionStatus.Authorized);\n }\n\n private setSession(tokens: Partial<AXPSessionData>): void {\n const sessionData: Partial<AXPSessionData> = {\n accessToken: tokens.accessToken,\n refreshToken: tokens.refreshToken,\n strategy: this.currentAuthStrategyKey ?? undefined,\n user: this.user,\n };\n this.updateSession(sessionData);\n }\n\n private updateSession(update: Partial<AXPSessionData>) {\n const currentSession = this.getSessionData() ?? {};\n const updatedSession = merge({}, currentSession, update);\n localStorage.setItem(this.SESSION_KEY, JSON.stringify(updatedSession));\n }\n\n private getSessionData(): AXPSessionData | null {\n const sessionDataString = localStorage.getItem(this.SESSION_KEY);\n return sessionDataString ? JSON.parse(sessionDataString) : null;\n }\n\n private clearSession(): void {\n //\n this.currentAuthStrategyKey = null;\n //\n this.currentUserSubject.next(null);\n //\n this.setTenant(null);\n //\n this.setApplication(null);\n //\n this.permissionsSubject.next([]);\n //\n this.featuresSubject.next([]);\n //\n localStorage.removeItem(this.SESSION_KEY);\n }\n\n public authorize(...keys: string[]): boolean {\n return keys.every((k) => isEmpty(k) || this.permissions.indexOf(k) > -1);\n }\n\n public isFeatureEnabled(...keys: string[]): boolean {\n return keys.every((k) => isEmpty(k) || this.features.some((c) => c.name == k && c.value == true));\n }\n\n public getToken(): Observable<string | undefined> {\n return of(this.getSessionData()?.accessToken);\n }\n\n private getContext(): AXPSessionContext {\n return new AXPSessionContext({\n user: this.user,\n tenant: this.tenant,\n application: this.application,\n });\n }\n\n\n}\n","import { inject } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivateFn, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { first, map, tap } from 'rxjs';\nimport { AXPUnauthorizedError } from '../errors.types';\nimport { AXPSessionService } from '../session.service';\nimport { AXPSessionStatus } from '../session.types';\n\nexport const AXPPermissionGuard: CanActivateFn = (route: ActivatedRouteSnapshot, state: RouterStateSnapshot) => {\n\n const sessionService = inject(AXPSessionService);\n\n const permissionKeys = route.data['requiredPermission'] as string | string[] | null;\n\n return sessionService.isAuthorized$.pipe(\n first(),\n map((value) => {\n const keys: string[] = !permissionKeys ? [] : Array.isArray(permissionKeys) ? permissionKeys : [permissionKeys];\n const hasPermission = keys.length == 0 || sessionService.authorize(...keys);\n if (!hasPermission) {\n throw new AXPUnauthorizedError(\n `Access denied. Required permissions: ${keys.join(', ')}. Please contact your administrator if you believe this is an error.`,\n {\n redirectUrl: state.url\n }\n );\n }\n return true;\n })\n );\n};\n","import { Directive, Input, TemplateRef, ViewContainerRef, inject, signal } from '@angular/core';\nimport { Subscription, first } from 'rxjs';\nimport { AXPSessionService } from '../session.service';\n\n@Directive({\n selector: '[permission]',\n})\nexport class AXPPermissionDirective {\n private hasView = signal(false);\n private subscription!: Subscription;\n private sessionService = inject(AXPSessionService);\n\n constructor(\n private templateRef: TemplateRef<any>,\n private viewContainer: ViewContainerRef\n ) { }\n\n @Input()\n public set permission(permissionKeys: string | string[] | null) {\n const keys: string[] = !permissionKeys ? [] : (Array.isArray(permissionKeys) ? permissionKeys : [permissionKeys]);\n if (keys.length == 0) {\n // If permissionKey is null or empty, decide the default behavior here\n this.viewContainer.createEmbeddedView(this.templateRef);\n this.hasView.set(true);\n return;\n }\n this.subscription = this.sessionService.isAuthorized$\n .subscribe((isAuthorized) => {\n if (isAuthorized && this.sessionService.authorize(...keys)) {\n if (!this.hasView()) {\n this.viewContainer.createEmbeddedView(this.templateRef);\n this.hasView.set(true);\n }\n } else {\n this.viewContainer.clear();\n this.hasView.set(false);\n }\n });\n }\n\n @Input()\n public set permissionElse(elseTemplateRef: TemplateRef<any>) {\n if (!this.hasView()) {\n this.viewContainer.createEmbeddedView(elseTemplateRef);\n }\n }\n\n ngOnDestroy() {\n this.subscription?.unsubscribe();\n }\n}\n","import { inject } from '@angular/core';\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, Router, CanActivateFn } from '@angular/router';\nimport { AXPSessionService } from './session.service';\nimport { first, map } from 'rxjs';\nimport { AXPUnauthenticatedError } from './errors.types';\n\n\n\nexport const AXPAuthGuard: CanActivateFn =\n (route: ActivatedRouteSnapshot, state: RouterStateSnapshot) => {\n const sessionService = inject(AXPSessionService);\n return sessionService.isAuthenticated$.pipe(\n first(),\n map(value => {\n if (value) {\n return true;\n }\n throw new AXPUnauthenticatedError(\n `Access denied. You are not currently logged in. Please log in to access this page. If you continue to see this message after logging in, please contact support.`,\n {\n redirectUrl: state.url\n }\n );\n })\n );\n };\n","import { APP_INITIALIZER, Inject, ModuleWithProviders, NgModule, Optional } from '@angular/core';\nimport { AXPAuthStrategyRegistryService } from './auth-registry.service';\nimport { AXPAuthStrategy } from './auth.strategy';\nimport { AXPFeatureDirective } from './feature';\nimport { AXPPermissionDirective } from './permission/permission.directive';\nimport { AXPSessionService } from './session.service';\n\nexport interface AXPAuthModuleConfigs {\n strategies: (new () => AXPAuthStrategy)[];\n}\n\nexport function initializeAppState(service: AXPSessionService) {\n return async () => {\n try {\n await service.restoreSession();\n } catch (error) {\n console.error(error);\n }\n };\n}\n\n@NgModule({\n imports: [],\n exports: [AXPPermissionDirective, AXPFeatureDirective],\n declarations: [AXPPermissionDirective, AXPFeatureDirective],\n providers: [\n {\n provide: APP_INITIALIZER,\n useFactory: initializeAppState,\n deps: [AXPSessionService],\n multi: true,\n },\n ],\n})\nexport class AXPAuthModule {\n static forRoot(configs?: AXPAuthModuleConfigs): ModuleWithProviders<AXPAuthModule> {\n return {\n ngModule: AXPAuthModule,\n providers: [\n ...(configs?.strategies || []),\n {\n provide: 'AXPAuthModuleFactory',\n useFactory: (registry: AXPAuthStrategyRegistryService) => () => {\n registry.register(...(configs?.strategies || []));\n },\n deps: [AXPAuthStrategyRegistryService],\n multi: true,\n },\n ],\n };\n }\n\n static forChild(configs?: AXPAuthModuleConfigs): ModuleWithProviders<AXPAuthModule> {\n return {\n ngModule: AXPAuthModule,\n providers: [\n ...(configs?.strategies || []),\n {\n provide: 'AXPAuthModuleFactory',\n useFactory: (registry: AXPAuthStrategyRegistryService) => () => {\n registry.register(...(configs?.strategies || []));\n },\n deps: [AXPAuthStrategyRegistryService],\n multi: true,\n },\n ],\n };\n }\n\n /**\n * @ignore\n */\n constructor(@Optional() @Inject('AXPAuthModuleFactory') instances: any[]) {\n instances?.forEach((f) => {\n f();\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -96,78 +96,78 @@ class AXPAvatarWidgetEditComponent extends AXPWidgetEditBase {
|
|
|
96
96
|
}
|
|
97
97
|
}
|
|
98
98
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPAvatarWidgetEditComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
99
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPAvatarWidgetEditComponent, isStandalone: true, selector: "axp-number-widget-edit", usesInheritance: true, ngImport: i0, template: `
|
|
100
|
-
<div class="ax-w-fit ax-flex flex-row ax-border ax-rounded-lg ax-shadow-md ax-overflow-hidden">
|
|
101
|
-
@if(src){
|
|
102
|
-
<ax-avatar color="secondary" [size]="120" look="sharp">
|
|
103
|
-
<ax-image [src]="src">
|
|
104
|
-
<ax-loading></ax-loading>
|
|
105
|
-
</ax-image>
|
|
106
|
-
</ax-avatar>
|
|
107
|
-
} @else {
|
|
108
|
-
<ax-avatar color="secondary" [size]="120" look="sharp">
|
|
109
|
-
<ax-loading></ax-loading>
|
|
110
|
-
</ax-avatar>
|
|
111
|
-
}
|
|
112
|
-
<div class="ax-flex ax-w-14 ax-flex-col ax-items-center ax-justify-around ax-cursor-pointer ax-border-l-2">
|
|
113
|
-
<div
|
|
114
|
-
(click)="handleAddItem()"
|
|
115
|
-
class="ax-h-[50%] ax-flex ax-items-center ax-justify-center ax-w-full ax-border-b-2 hover:ax-bg-gray-100 hover:ax-text-blue-700 ax-cursor-pointer"
|
|
116
|
-
>
|
|
117
|
-
<ax-icon>
|
|
118
|
-
<i class="fa-solid fa-camera"></i>
|
|
119
|
-
</ax-icon>
|
|
120
|
-
</div>
|
|
121
|
-
|
|
122
|
-
<div
|
|
123
|
-
(click)="handleRemoveItem(src)"
|
|
124
|
-
class="ax-h-[50%] ax-flex ax-items-center ax-justify-center ax-w-full ax-cursor-pointer hover:ax-bg-gray-100"
|
|
125
|
-
>
|
|
126
|
-
<ax-prefix>
|
|
127
|
-
<i class="fa-solid fa-trash ax-text-danger"></i>
|
|
128
|
-
</ax-prefix>
|
|
129
|
-
</div>
|
|
130
|
-
</div>
|
|
131
|
-
</div>
|
|
99
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPAvatarWidgetEditComponent, isStandalone: true, selector: "axp-number-widget-edit", usesInheritance: true, ngImport: i0, template: `
|
|
100
|
+
<div class="ax-w-fit ax-flex flex-row ax-border ax-rounded-lg ax-shadow-md ax-overflow-hidden">
|
|
101
|
+
@if(src){
|
|
102
|
+
<ax-avatar color="secondary" [size]="120" look="sharp">
|
|
103
|
+
<ax-image [src]="src">
|
|
104
|
+
<ax-loading></ax-loading>
|
|
105
|
+
</ax-image>
|
|
106
|
+
</ax-avatar>
|
|
107
|
+
} @else {
|
|
108
|
+
<ax-avatar color="secondary" [size]="120" look="sharp">
|
|
109
|
+
<ax-loading></ax-loading>
|
|
110
|
+
</ax-avatar>
|
|
111
|
+
}
|
|
112
|
+
<div class="ax-flex ax-w-14 ax-flex-col ax-items-center ax-justify-around ax-cursor-pointer ax-border-l-2">
|
|
113
|
+
<div
|
|
114
|
+
(click)="handleAddItem()"
|
|
115
|
+
class="ax-h-[50%] ax-flex ax-items-center ax-justify-center ax-w-full ax-border-b-2 hover:ax-bg-gray-100 hover:ax-text-blue-700 ax-cursor-pointer"
|
|
116
|
+
>
|
|
117
|
+
<ax-icon>
|
|
118
|
+
<i class="fa-solid fa-camera"></i>
|
|
119
|
+
</ax-icon>
|
|
120
|
+
</div>
|
|
121
|
+
|
|
122
|
+
<div
|
|
123
|
+
(click)="handleRemoveItem(src)"
|
|
124
|
+
class="ax-h-[50%] ax-flex ax-items-center ax-justify-center ax-w-full ax-cursor-pointer hover:ax-bg-gray-100"
|
|
125
|
+
>
|
|
126
|
+
<ax-prefix>
|
|
127
|
+
<i class="fa-solid fa-trash ax-text-danger"></i>
|
|
128
|
+
</ax-prefix>
|
|
129
|
+
</div>
|
|
130
|
+
</div>
|
|
131
|
+
</div>
|
|
132
132
|
`, isInline: true, dependencies: [{ kind: "ngmodule", type: AXAvatarModule }, { kind: "component", type: i1.AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "look"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i3.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
133
133
|
}
|
|
134
134
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPAvatarWidgetEditComponent, decorators: [{
|
|
135
135
|
type: Component,
|
|
136
136
|
args: [{
|
|
137
137
|
selector: 'axp-number-widget-edit',
|
|
138
|
-
template: `
|
|
139
|
-
<div class="ax-w-fit ax-flex flex-row ax-border ax-rounded-lg ax-shadow-md ax-overflow-hidden">
|
|
140
|
-
@if(src){
|
|
141
|
-
<ax-avatar color="secondary" [size]="120" look="sharp">
|
|
142
|
-
<ax-image [src]="src">
|
|
143
|
-
<ax-loading></ax-loading>
|
|
144
|
-
</ax-image>
|
|
145
|
-
</ax-avatar>
|
|
146
|
-
} @else {
|
|
147
|
-
<ax-avatar color="secondary" [size]="120" look="sharp">
|
|
148
|
-
<ax-loading></ax-loading>
|
|
149
|
-
</ax-avatar>
|
|
150
|
-
}
|
|
151
|
-
<div class="ax-flex ax-w-14 ax-flex-col ax-items-center ax-justify-around ax-cursor-pointer ax-border-l-2">
|
|
152
|
-
<div
|
|
153
|
-
(click)="handleAddItem()"
|
|
154
|
-
class="ax-h-[50%] ax-flex ax-items-center ax-justify-center ax-w-full ax-border-b-2 hover:ax-bg-gray-100 hover:ax-text-blue-700 ax-cursor-pointer"
|
|
155
|
-
>
|
|
156
|
-
<ax-icon>
|
|
157
|
-
<i class="fa-solid fa-camera"></i>
|
|
158
|
-
</ax-icon>
|
|
159
|
-
</div>
|
|
160
|
-
|
|
161
|
-
<div
|
|
162
|
-
(click)="handleRemoveItem(src)"
|
|
163
|
-
class="ax-h-[50%] ax-flex ax-items-center ax-justify-center ax-w-full ax-cursor-pointer hover:ax-bg-gray-100"
|
|
164
|
-
>
|
|
165
|
-
<ax-prefix>
|
|
166
|
-
<i class="fa-solid fa-trash ax-text-danger"></i>
|
|
167
|
-
</ax-prefix>
|
|
168
|
-
</div>
|
|
169
|
-
</div>
|
|
170
|
-
</div>
|
|
138
|
+
template: `
|
|
139
|
+
<div class="ax-w-fit ax-flex flex-row ax-border ax-rounded-lg ax-shadow-md ax-overflow-hidden">
|
|
140
|
+
@if(src){
|
|
141
|
+
<ax-avatar color="secondary" [size]="120" look="sharp">
|
|
142
|
+
<ax-image [src]="src">
|
|
143
|
+
<ax-loading></ax-loading>
|
|
144
|
+
</ax-image>
|
|
145
|
+
</ax-avatar>
|
|
146
|
+
} @else {
|
|
147
|
+
<ax-avatar color="secondary" [size]="120" look="sharp">
|
|
148
|
+
<ax-loading></ax-loading>
|
|
149
|
+
</ax-avatar>
|
|
150
|
+
}
|
|
151
|
+
<div class="ax-flex ax-w-14 ax-flex-col ax-items-center ax-justify-around ax-cursor-pointer ax-border-l-2">
|
|
152
|
+
<div
|
|
153
|
+
(click)="handleAddItem()"
|
|
154
|
+
class="ax-h-[50%] ax-flex ax-items-center ax-justify-center ax-w-full ax-border-b-2 hover:ax-bg-gray-100 hover:ax-text-blue-700 ax-cursor-pointer"
|
|
155
|
+
>
|
|
156
|
+
<ax-icon>
|
|
157
|
+
<i class="fa-solid fa-camera"></i>
|
|
158
|
+
</ax-icon>
|
|
159
|
+
</div>
|
|
160
|
+
|
|
161
|
+
<div
|
|
162
|
+
(click)="handleRemoveItem(src)"
|
|
163
|
+
class="ax-h-[50%] ax-flex ax-items-center ax-justify-center ax-w-full ax-cursor-pointer hover:ax-bg-gray-100"
|
|
164
|
+
>
|
|
165
|
+
<ax-prefix>
|
|
166
|
+
<i class="fa-solid fa-trash ax-text-danger"></i>
|
|
167
|
+
</ax-prefix>
|
|
168
|
+
</div>
|
|
169
|
+
</div>
|
|
170
|
+
</div>
|
|
171
171
|
`,
|
|
172
172
|
standalone: true,
|
|
173
173
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
@@ -176,4 +176,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
|
|
|
176
176
|
}] });
|
|
177
177
|
|
|
178
178
|
export { AXPAvatarWidgetEditComponent };
|
|
179
|
-
//# sourceMappingURL=acorex-platform-common-avatar-widget-edit.component-
|
|
179
|
+
//# sourceMappingURL=acorex-platform-common-avatar-widget-edit.component-B8txzrTw.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-platform-common-avatar-widget-edit.component-B8txzrTw.mjs","sources":["../../../../libs/platform/common/src/lib/schema/widgets/avatar/avatar-widget-edit.component.ts"],"sourcesContent":["import { AXAvatarModule } from '@acorex/components/avatar';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDialogService } from '@acorex/components/dialog';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLoadingModule } from '@acorex/components/loading';\n// import { FakePersonService } from '@acorex/platform/mocks';\nimport { ChangeDetectionStrategy, Component, OnInit, inject } from '@angular/core';\nimport { AXPDataProvider } from '../../../data';\nimport { AXPWidgetEditBase } from '../../widget';\n\n@Component({\n selector: 'axp-number-widget-edit',\n template: `\n <div class=\"ax-w-fit ax-flex flex-row ax-border ax-rounded-lg ax-shadow-md ax-overflow-hidden\">\n @if(src){\n <ax-avatar color=\"secondary\" [size]=\"120\" look=\"sharp\">\n <ax-image [src]=\"src\">\n <ax-loading></ax-loading>\n </ax-image>\n </ax-avatar>\n } @else {\n <ax-avatar color=\"secondary\" [size]=\"120\" look=\"sharp\">\n <ax-loading></ax-loading>\n </ax-avatar>\n }\n <div class=\"ax-flex ax-w-14 ax-flex-col ax-items-center ax-justify-around ax-cursor-pointer ax-border-l-2\">\n <div\n (click)=\"handleAddItem()\"\n class=\"ax-h-[50%] ax-flex ax-items-center ax-justify-center ax-w-full ax-border-b-2 hover:ax-bg-gray-100 hover:ax-text-blue-700 ax-cursor-pointer\"\n >\n <ax-icon>\n <i class=\"fa-solid fa-camera\"></i>\n </ax-icon>\n </div>\n\n <div\n (click)=\"handleRemoveItem(src)\"\n class=\"ax-h-[50%] ax-flex ax-items-center ax-justify-center ax-w-full ax-cursor-pointer hover:ax-bg-gray-100\"\n >\n <ax-prefix>\n <i class=\"fa-solid fa-trash ax-text-danger\"></i>\n </ax-prefix>\n </div>\n </div>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXAvatarModule, AXImageModule, AXLoadingModule, AXButtonModule, AXDecoratorModule],\n})\nexport class AXPAvatarWidgetEditComponent extends AXPWidgetEditBase implements OnInit {\n dataService = inject(AXPDataProvider);\n private dialogService = inject(AXDialogService);\n protected src!: string | null;\n\n ngOnInit() {\n this.render();\n }\n override render() {\n const rawValue = this.rawValue;\n if (rawValue == null) return;\n this.loadImageById(rawValue);\n }\n\n protected handleRemoveItem(item: any) {\n this.src = null;\n this.value = null;\n }\n\n protected async handleAddItem() {\n const input = document.createElement('input');\n input.type = 'file';\n input.accept = 'image/*';\n input.click();\n input.addEventListener(\n 'change',\n async () => {\n const file = input.files?.[0];\n if (file) {\n const maxSize = 1 * 1024 * 1024; // Example size limit: 1MB\n const maxResolution = { width: 1920, height: 1080 }; // Example resolution limit\n\n if (file.size > maxSize) {\n this.dialogService.alert('File too large!', `The selected file exceeds the maximum size of ${maxSize / (1024 * 1024)}MB.`, 'warning');\n return;\n }\n\n const image = new Image();\n image.src = URL.createObjectURL(file);\n image.onload = async () => {\n const { width, height } = image;\n\n if (width > maxResolution.width || height > maxResolution.height) {\n this.dialogService.alert(\n 'Resolution too high!',\n `The selected file exceeds the maximum resolution of ${maxResolution.width}x${maxResolution.height}.`,\n 'warning'\n );\n return;\n }\n\n // If file size and resolution are within limits, proceed with upload\n try {\n const resolved = await this.dataService.uploadFile(file, file.name);\n console.log('resolved', resolved);\n this.src = URL.createObjectURL(file); // Show the image temporarily\n this.value = resolved; // Store the file ID\n } catch (error) {\n this.dialogService.alert('Something went wrong!', `${error}`, 'warning');\n }\n };\n }\n },\n { once: true }\n );\n }\n\n private async loadImageById(fileId: string) {\n try {\n const blob = await this.dataService.viewFile(fileId, '');\n this.src = URL.createObjectURL(blob);\n this.cdr.markForCheck(); // Explicitly mark for check since OnPush is used\n } catch (error) {\n console.error('Failed to load image by ID:', error);\n }\n }\n}\n"],"names":["i4"],"mappings":"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"}
|
|
@@ -54,26 +54,26 @@ class AXPAvatarWidgetViewComponent extends AXPWidgetBase {
|
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPAvatarWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
57
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPAvatarWidgetViewComponent, isStandalone: true, selector: "ax-Avatar-widget-view", inputs: { context: "context", value: "value" }, usesInheritance: true, ngImport: i0, template: ` @if(src){<ax-avatar class="ax-shadow-" color="secondary" [size]="120" look="soft">
|
|
58
|
-
<ax-image [src]="src"> <ax-loading></ax-loading></ax-image>
|
|
59
|
-
</ax-avatar>
|
|
60
|
-
} @else {
|
|
61
|
-
<ax-avatar color="secondary" [size]="120" look="sharp">
|
|
62
|
-
<ax-loading></ax-loading>
|
|
63
|
-
</ax-avatar>
|
|
57
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPAvatarWidgetViewComponent, isStandalone: true, selector: "ax-Avatar-widget-view", inputs: { context: "context", value: "value" }, usesInheritance: true, ngImport: i0, template: ` @if(src){<ax-avatar class="ax-shadow-" color="secondary" [size]="120" look="soft">
|
|
58
|
+
<ax-image [src]="src"> <ax-loading></ax-loading></ax-image>
|
|
59
|
+
</ax-avatar>
|
|
60
|
+
} @else {
|
|
61
|
+
<ax-avatar color="secondary" [size]="120" look="sharp">
|
|
62
|
+
<ax-loading></ax-loading>
|
|
63
|
+
</ax-avatar>
|
|
64
64
|
}`, isInline: true, dependencies: [{ kind: "ngmodule", type: AXAvatarModule }, { kind: "component", type: i1.AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "look"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i3.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
65
65
|
}
|
|
66
66
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPAvatarWidgetViewComponent, decorators: [{
|
|
67
67
|
type: Component,
|
|
68
68
|
args: [{
|
|
69
69
|
selector: 'ax-Avatar-widget-view',
|
|
70
|
-
template: ` @if(src){<ax-avatar class="ax-shadow-" color="secondary" [size]="120" look="soft">
|
|
71
|
-
<ax-image [src]="src"> <ax-loading></ax-loading></ax-image>
|
|
72
|
-
</ax-avatar>
|
|
73
|
-
} @else {
|
|
74
|
-
<ax-avatar color="secondary" [size]="120" look="sharp">
|
|
75
|
-
<ax-loading></ax-loading>
|
|
76
|
-
</ax-avatar>
|
|
70
|
+
template: ` @if(src){<ax-avatar class="ax-shadow-" color="secondary" [size]="120" look="soft">
|
|
71
|
+
<ax-image [src]="src"> <ax-loading></ax-loading></ax-image>
|
|
72
|
+
</ax-avatar>
|
|
73
|
+
} @else {
|
|
74
|
+
<ax-avatar color="secondary" [size]="120" look="sharp">
|
|
75
|
+
<ax-loading></ax-loading>
|
|
76
|
+
</ax-avatar>
|
|
77
77
|
}`,
|
|
78
78
|
standalone: true,
|
|
79
79
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
@@ -83,4 +83,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
|
|
|
83
83
|
}] });
|
|
84
84
|
|
|
85
85
|
export { AXPAvatarWidgetViewComponent };
|
|
86
|
-
//# sourceMappingURL=acorex-platform-common-avatar-widget-view.component-
|
|
86
|
+
//# sourceMappingURL=acorex-platform-common-avatar-widget-view.component-B3Ubyw3X.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-platform-common-avatar-widget-view.component-B3Ubyw3X.mjs","sources":["../../../../libs/platform/common/src/lib/schema/widgets/avatar/avatar-widget-view.component.ts"],"sourcesContent":["import { AXAvatarModule } from '@acorex/components/avatar';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { ChangeDetectionStrategy, Component, OnInit, inject } from '@angular/core';\nimport { AXPDataProvider } from '../../../data';\nimport { AXPWidgetBase } from '../../widget/widget-base';\n@Component({\n selector: 'ax-Avatar-widget-view',\n template: ` @if(src){<ax-avatar class=\"ax-shadow-\" color=\"secondary\" [size]=\"120\" look=\"soft\">\n <ax-image [src]=\"src\"> <ax-loading></ax-loading></ax-image>\n </ax-avatar>\n } @else {\n <ax-avatar color=\"secondary\" [size]=\"120\" look=\"sharp\">\n <ax-loading></ax-loading>\n </ax-avatar>\n }`,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXAvatarModule, AXImageModule, AXLoadingModule],\n inputs: ['context', 'value'],\n})\nexport class AXPAvatarWidgetViewComponent extends AXPWidgetBase implements OnInit {\n protected src!: string;\n dataService = inject(AXPDataProvider);\n\n ngOnInit() {\n this.render();\n }\n override render() {\n const rawValue = this.rawValue;\n if (rawValue == null) return;\n this.loadImageById(rawValue);\n }\n\n private async loadImageById(fileId: string) {\n try {\n const blob = await this.dataService.viewFile(fileId, '');\n this.src = URL.createObjectURL(blob);\n this.cdr.markForCheck(); // Explicitly mark for check since OnPush is used\n } catch (error) {\n console.error('Failed to load image by ID:', error);\n }\n }\n}\n"],"names":[],"mappings":"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"}
|