@acorex/modules 18.2.4 → 19.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/auth/lib/account/app-chooser/app-chooser-slot.component.d.ts +1 -1
- package/fesm2022/{acorex-modules-application-management-module-designer.component-B6WPz0N8.mjs → acorex-modules-application-management-module-designer.component-1pXIvIeG.mjs} +9 -23
- package/fesm2022/acorex-modules-application-management-module-designer.component-1pXIvIeG.mjs.map +1 -0
- package/fesm2022/acorex-modules-application-management.mjs +44 -48
- package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-DQzSrtut.mjs → acorex-modules-auth-acorex-modules-auth-CtWwcZOU.mjs} +44 -51
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-CtWwcZOU.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-app-chooser.component-BFQgjqFV.mjs → acorex-modules-auth-app-chooser.component-BK4Hs5OP.mjs} +7 -13
- package/fesm2022/acorex-modules-auth-app-chooser.component-BK4Hs5OP.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-blank.layout-Bq822Iz4.mjs → acorex-modules-auth-blank.layout-B1a0710P.mjs} +5 -5
- package/fesm2022/acorex-modules-auth-blank.layout-B1a0710P.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-login.module-KR2dB8vW.mjs → acorex-modules-auth-login.module-Cvr3l9wl.mjs} +8 -24
- package/fesm2022/acorex-modules-auth-login.module-Cvr3l9wl.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth-master.layout-4jTF1Xhx.mjs +23 -0
- package/fesm2022/acorex-modules-auth-master.layout-4jTF1Xhx.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-password.component-DpjEjw0o.mjs → acorex-modules-auth-password.component-C5soTmv9.mjs} +8 -16
- package/fesm2022/acorex-modules-auth-password.component-C5soTmv9.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-password.component-9uIMNoQE.mjs → acorex-modules-auth-password.component-DeCK_glZ.mjs} +6 -19
- package/fesm2022/acorex-modules-auth-password.component-DeCK_glZ.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-routes-CWqGOFnQ.mjs → acorex-modules-auth-routes-DqgtVe9G.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-routes-CWqGOFnQ.mjs.map → acorex-modules-auth-routes-DqgtVe9G.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-tenant-chooser.component-6qDoCUBo.mjs → acorex-modules-auth-tenant-chooser.component-CorZ4Z7h.mjs} +6 -6
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-CorZ4Z7h.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-two-factor-code.component-BJKmvI7y.mjs → acorex-modules-auth-two-factor-code.component-BEsTVMeC.mjs} +6 -6
- package/fesm2022/acorex-modules-auth-two-factor-code.component-BEsTVMeC.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-two-factor.module-Bnoi3ZXB.mjs → acorex-modules-auth-two-factor.module-C99NYq3o.mjs} +7 -23
- package/fesm2022/acorex-modules-auth-two-factor.module-C99NYq3o.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth.mjs +1 -19
- package/fesm2022/acorex-modules-auth.mjs.map +1 -1
- package/fesm2022/acorex-modules-backend.mjs +36 -35
- package/fesm2022/acorex-modules-backend.mjs.map +1 -1
- package/fesm2022/acorex-modules-conversation.mjs +50 -51
- package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
- package/fesm2022/acorex-modules-form-template-management-category.entity-xUkZHVgy.mjs +195 -0
- package/fesm2022/acorex-modules-form-template-management-category.entity-xUkZHVgy.mjs.map +1 -0
- package/fesm2022/{acorex-modules-form-template-management-designer.page-NhIPhsRs.mjs → acorex-modules-form-template-management-designer.page-BLbPLLdP.mjs} +8 -5
- package/fesm2022/acorex-modules-form-template-management-designer.page-BLbPLLdP.mjs.map +1 -0
- package/fesm2022/acorex-modules-form-template-management-template-picker.component-D_FkgF0W.mjs +123 -0
- package/fesm2022/acorex-modules-form-template-management-template-picker.component-D_FkgF0W.mjs.map +1 -0
- package/fesm2022/acorex-modules-form-template-management-template-widget-edit.component-Bgx5YRBc.mjs +111 -0
- package/fesm2022/acorex-modules-form-template-management-template-widget-edit.component-Bgx5YRBc.mjs.map +1 -0
- package/fesm2022/acorex-modules-form-template-management-template.entity-CGhbmYel.mjs +470 -0
- package/fesm2022/acorex-modules-form-template-management-template.entity-CGhbmYel.mjs.map +1 -0
- package/fesm2022/acorex-modules-form-template-management.mjs +383 -730
- package/fesm2022/acorex-modules-form-template-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-localization-management.mjs +332 -334
- package/fesm2022/acorex-modules-localization-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-notification-management.mjs +33 -34
- package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-platform-management.mjs +77 -84
- package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-scheduler-job-management.mjs +34 -23
- package/fesm2022/acorex-modules-scheduler-job-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-text-template-management.mjs +22 -22
- package/form-template-management/index.d.ts +4 -0
- package/form-template-management/lib/components/widgets/template/index.d.ts +4 -0
- package/form-template-management/lib/components/widgets/template/template-picker/template-picker.component.d.ts +30 -0
- package/form-template-management/lib/components/widgets/template/template-widget-designer.component.d.ts +25 -0
- package/form-template-management/lib/components/widgets/template/template-widget-edit.component.d.ts +13 -0
- package/form-template-management/lib/components/widgets/template/template-widget-view.component.d.ts +11 -0
- package/form-template-management/lib/components/widgets/template/template-widget.config.d.ts +5 -0
- package/form-template-management/lib/components/widgets/template/template.provider.d.ts +30 -0
- package/form-template-management/lib/entities/category/category.types.d.ts +0 -1
- package/form-template-management/lib/entities/category/index.d.ts +0 -1
- package/form-template-management/lib/entities/template/index.d.ts +0 -1
- package/form-template-management/lib/entities/template/template.types.d.ts +11 -0
- package/form-template-management/lib/pages/designer/designer.page.d.ts +1 -0
- package/form-template-management/lib/services/designer-connector.service.d.ts +7 -3
- package/form-template-management/lib/services/template.provider.d.ts +3 -4
- package/localization-management/index.d.ts +2 -1
- package/package.json +11 -33
- package/platform-management/index.d.ts +2 -1
- package/platform-management/lib/common/{entity.loader.d.ts → entity.provider.d.ts} +3 -3
- package/platform-management/lib/common/index.d.ts +1 -2
- package/scheduler-job-management/index.d.ts +1 -0
- package/esm2022/acorex-modules.mjs +0 -5
- package/esm2022/application-management/acorex-modules-application-management.mjs +0 -5
- package/esm2022/application-management/index.mjs +0 -14
- package/esm2022/application-management/lib/application-management-mock-data.mjs +0 -109
- package/esm2022/application-management/lib/application-management.module.mjs +0 -117
- package/esm2022/application-management/lib/application-management.route.mjs +0 -29
- package/esm2022/application-management/lib/application-management.service.mjs +0 -66
- package/esm2022/application-management/lib/application-management.source.mjs +0 -9
- package/esm2022/application-management/lib/application-management.types.mjs +0 -2
- package/esm2022/application-management/lib/const.mjs +0 -6
- package/esm2022/application-management/lib/entities/application-module.entity.mjs +0 -270
- package/esm2022/application-management/lib/entities/applications.entity.mjs +0 -311
- package/esm2022/application-management/lib/entities/edition.entity.mjs +0 -281
- package/esm2022/application-management/lib/entities/entity.entity.mjs +0 -295
- package/esm2022/application-management/lib/entities/feature.entity.mjs +0 -281
- package/esm2022/application-management/lib/entities/modules.entity.mjs +0 -321
- package/esm2022/application-management/lib/entities/permission.entity.mjs +0 -281
- package/esm2022/application-management/lib/entities/property.entity.mjs +0 -447
- package/esm2022/application-management/lib/entity.loader.mjs +0 -46
- package/esm2022/application-management/lib/layouts/index.mjs +0 -2
- package/esm2022/application-management/lib/layouts/module-entity-detail-view/module-entity-detail-view.component.mjs +0 -84
- package/esm2022/application-management/lib/menu.provider.mjs +0 -28
- package/esm2022/application-management/lib/module-designer/module-designer.component.mjs +0 -150
- package/esm2022/application-management/lib/module-designer/module-designer.service.mjs +0 -3
- package/esm2022/application-management/lib/module-designer/module-designer.type.mjs +0 -2
- package/esm2022/application-management/lib/services/application-management.service.mjs +0 -17
- package/esm2022/application-management/lib/services/application-module-management.service.mjs +0 -17
- package/esm2022/application-management/lib/services/context-menu.service.mjs +0 -166
- package/esm2022/application-management/lib/services/edition-management.service.mjs +0 -17
- package/esm2022/application-management/lib/services/entity-management.service.mjs +0 -17
- package/esm2022/application-management/lib/services/feature-management.service.mjs +0 -17
- package/esm2022/application-management/lib/services/module-management.service.mjs +0 -17
- package/esm2022/application-management/lib/services/permission-management.service.mjs +0 -17
- package/esm2022/application-management/lib/services/property-management.service.mjs +0 -17
- package/esm2022/application-management/lib/workflows/create-module-entity.workflow.mjs +0 -66
- package/esm2022/application-management/lib/workflows/index.mjs +0 -3
- package/esm2022/application-management/lib/workflows/show-module-entity-details.workflow.mjs +0 -9
- package/esm2022/auth/acorex-modules-auth.mjs +0 -5
- package/esm2022/auth/index.mjs +0 -5
- package/esm2022/auth/lib/account/account.module.mjs +0 -110
- package/esm2022/auth/lib/account/app-chooser/app-chooser-list.component.mjs +0 -31
- package/esm2022/auth/lib/account/app-chooser/app-chooser-slot.component.mjs +0 -42
- package/esm2022/auth/lib/account/app-chooser/app-chooser.component.mjs +0 -62
- package/esm2022/auth/lib/account/profile/profile-slot.component.mjs +0 -108
- package/esm2022/auth/lib/account/tenant-chooser/tenant-chooser-dropdown.component.mjs +0 -26
- package/esm2022/auth/lib/account/tenant-chooser/tenant-chooser.component.mjs +0 -80
- package/esm2022/auth/lib/auth.config.mjs +0 -23
- package/esm2022/auth/lib/auth.module.mjs +0 -51
- package/esm2022/auth/lib/auth.routes.mjs +0 -39
- package/esm2022/auth/lib/error-handler.mjs +0 -47
- package/esm2022/auth/lib/forgot/password/password.component.mjs +0 -56
- package/esm2022/auth/lib/forgot/routes.mjs +0 -7
- package/esm2022/auth/lib/login/login.module.mjs +0 -52
- package/esm2022/auth/lib/login/password/password.component.mjs +0 -118
- package/esm2022/auth/lib/menu.provider.mjs +0 -41
- package/esm2022/auth/lib/shared/layouts/blank/blank.layout.mjs +0 -15
- package/esm2022/auth/lib/shared/layouts/master/master.layout.mjs +0 -20
- package/esm2022/auth/lib/shared/services/idle.service.mjs +0 -42
- package/esm2022/auth/lib/shared/services/index.mjs +0 -2
- package/esm2022/auth/lib/store/auth.effects.mjs +0 -90
- package/esm2022/auth/lib/store/index.mjs +0 -3
- package/esm2022/auth/lib/two-factor/two-factor-code/two-factor-code.component.mjs +0 -37
- package/esm2022/auth/lib/two-factor/two-factor.module.mjs +0 -42
- package/esm2022/backend/acorex-modules-backend.mjs +0 -5
- package/esm2022/backend/index.mjs +0 -5
- package/esm2022/backend/lib/auth/oidc/application.loader.mjs +0 -54
- package/esm2022/backend/lib/auth/oidc/configuration.service.mjs +0 -52
- package/esm2022/backend/lib/auth/oidc/feature.loader.mjs +0 -21
- package/esm2022/backend/lib/auth/oidc/index.mjs +0 -7
- package/esm2022/backend/lib/auth/oidc/oidc.strategy.mjs +0 -217
- package/esm2022/backend/lib/auth/oidc/permission.loader.mjs +0 -34
- package/esm2022/backend/lib/auth/oidc/signincallback.component.mjs +0 -43
- package/esm2022/backend/lib/auth/oidc/tenant.loader.mjs +0 -34
- package/esm2022/backend/lib/backend.configs.mjs +0 -2
- package/esm2022/backend/lib/backend.module.mjs +0 -130
- package/esm2022/backend/lib/data/api/comment.service.mjs +0 -46
- package/esm2022/backend/lib/data/api/data-provider.mjs +0 -165
- package/esm2022/backend/lib/data/api/file.service.mjs +0 -101
- package/esm2022/backend/lib/data/api/module-designer.service.mjs +0 -95
- package/esm2022/backend/lib/data/index.mjs +0 -5
- package/esm2022/conversation/acorex-modules-conversation.mjs +0 -5
- package/esm2022/conversation/index.mjs +0 -17
- package/esm2022/conversation/lib/const.mjs +0 -8
- package/esm2022/conversation/lib/conversation.module.mjs +0 -17
- package/esm2022/conversation/lib/entities/chat/chat.module.mjs +0 -141
- package/esm2022/conversation/lib/entities/chat/chat.service.mjs +0 -23
- package/esm2022/conversation/lib/entities/chat/chat.type.mjs +0 -2
- package/esm2022/conversation/lib/entities/chat/components/chat-item/chat-item.component.mjs +0 -53
- package/esm2022/conversation/lib/entities/chat/components/chat-item-footer/chat-item-footer.component.mjs +0 -13
- package/esm2022/conversation/lib/entities/chat/components/chat-item-header/chat-item-header.component.mjs +0 -28
- package/esm2022/conversation/lib/entities/chat/components/chat-preview/chat-preview.component.mjs +0 -124
- package/esm2022/conversation/lib/entities/chat/components/chat-preview-header/chat-preview-header.component.mjs +0 -22
- package/esm2022/conversation/lib/entities/chat/pages/chat/chat.component.mjs +0 -80
- package/esm2022/conversation/lib/entities/comments/comment.module.mjs +0 -100
- package/esm2022/conversation/lib/entities/comments/comments.service.mjs +0 -21
- package/esm2022/conversation/lib/entities/comments/comments.type.mjs +0 -2
- package/esm2022/conversation/lib/entities/comments/pages/comment-list-view.component.mjs +0 -392
- package/esm2022/conversation/lib/entities/comments/pages/comment-lookup-popup.component.mjs +0 -56
- package/esm2022/form-template-management/acorex-modules-form-template-management.mjs +0 -5
- package/esm2022/form-template-management/index.mjs +0 -2
- package/esm2022/form-template-management/lib/components/widgets/template-designer/index.mjs +0 -3
- package/esm2022/form-template-management/lib/components/widgets/template-designer/template-designer-widget-view.component.mjs +0 -44
- package/esm2022/form-template-management/lib/components/widgets/template-designer/template-designer-widget.config.mjs +0 -23
- package/esm2022/form-template-management/lib/const.mjs +0 -8
- package/esm2022/form-template-management/lib/entities/category/category.entity.mjs +0 -241
- package/esm2022/form-template-management/lib/entities/category/category.module.mjs +0 -28
- package/esm2022/form-template-management/lib/entities/category/category.service.mjs +0 -17
- package/esm2022/form-template-management/lib/entities/category/category.types.mjs +0 -2
- package/esm2022/form-template-management/lib/entities/category/index.mjs +0 -5
- package/esm2022/form-template-management/lib/entities/template/index.mjs +0 -5
- package/esm2022/form-template-management/lib/entities/template/template.entity.mjs +0 -434
- package/esm2022/form-template-management/lib/entities/template/template.module.mjs +0 -28
- package/esm2022/form-template-management/lib/entities/template/template.service.mjs +0 -17
- package/esm2022/form-template-management/lib/entities/template/template.types.mjs +0 -2
- package/esm2022/form-template-management/lib/entity.provider.mjs +0 -25
- package/esm2022/form-template-management/lib/form-template-management.module.mjs +0 -143
- package/esm2022/form-template-management/lib/menu.provider.mjs +0 -32
- package/esm2022/form-template-management/lib/pages/designer/designer.page.mjs +0 -29
- package/esm2022/form-template-management/lib/services/designer-connector.service.mjs +0 -40
- package/esm2022/form-template-management/lib/services/template.provider.mjs +0 -31
- package/esm2022/form-template-management/lib/workflows/create-template.workflow.mjs +0 -40
- package/esm2022/form-template-management/lib/workflows/design-template.workflow.mjs +0 -32
- package/esm2022/index.mjs +0 -2
- package/esm2022/localization-management/acorex-modules-localization-management.mjs +0 -5
- package/esm2022/localization-management/index.mjs +0 -8
- package/esm2022/localization-management/lib/const.mjs +0 -9
- package/esm2022/localization-management/lib/culture/culture.entity.mjs +0 -239
- package/esm2022/localization-management/lib/culture/culture.service.mjs +0 -17
- package/esm2022/localization-management/lib/culture/culture.types.mjs +0 -2
- package/esm2022/localization-management/lib/culture/index.mjs +0 -4
- package/esm2022/localization-management/lib/entity.loader.mjs +0 -36
- package/esm2022/localization-management/lib/language/index.mjs +0 -4
- package/esm2022/localization-management/lib/language/language-slot/language-slot.component.mjs +0 -30
- package/esm2022/localization-management/lib/language/language.entity.mjs +0 -239
- package/esm2022/localization-management/lib/language/language.service.mjs +0 -17
- package/esm2022/localization-management/lib/language/language.types.mjs +0 -2
- package/esm2022/localization-management/lib/localization-management.module.mjs +0 -99
- package/esm2022/localization-management/lib/localization-management.source.mjs +0 -4
- package/esm2022/localization-management/lib/localization-store.service.mjs +0 -34
- package/esm2022/localization-management/lib/menu.provider.mjs +0 -44
- package/esm2022/localization-management/lib/time-zone/index.mjs +0 -4
- package/esm2022/localization-management/lib/time-zone/time-zone.entity.mjs +0 -256
- package/esm2022/localization-management/lib/time-zone/time-zone.service.mjs +0 -17
- package/esm2022/localization-management/lib/time-zone/time-zone.types.mjs +0 -2
- package/esm2022/notification-management/acorex-modules-notification-management.mjs +0 -5
- package/esm2022/notification-management/index.mjs +0 -9
- package/esm2022/notification-management/lib/admin-notification-slot/admin-notification-item/admin-notification-item.component.mjs +0 -39
- package/esm2022/notification-management/lib/admin-notification-slot/admin-notification-panel/admin-notification-panel.component.mjs +0 -155
- package/esm2022/notification-management/lib/admin-notification-slot/admin-notification-slot/admin-notification-slot.component.mjs +0 -36
- package/esm2022/notification-management/lib/const.mjs +0 -9
- package/esm2022/notification-management/lib/entities/my-notification.mjs +0 -236
- package/esm2022/notification-management/lib/entities/notification-channel.entity.mjs +0 -344
- package/esm2022/notification-management/lib/entities/notification-log.entity.mjs +0 -180
- package/esm2022/notification-management/lib/entities/notification-template.entity.mjs +0 -298
- package/esm2022/notification-management/lib/entities/notification.entity.mjs +0 -207
- package/esm2022/notification-management/lib/entity.loader.mjs +0 -41
- package/esm2022/notification-management/lib/menu.provider.mjs +0 -54
- package/esm2022/notification-management/lib/notification-management-mock-data.mjs +0 -55
- package/esm2022/notification-management/lib/notification-management.module.mjs +0 -61
- package/esm2022/notification-management/lib/notification-management.service.mjs +0 -39
- package/esm2022/notification-management/lib/notification-management.type.mjs +0 -2
- package/esm2022/notification-management/lib/notification.service.mjs +0 -3
- package/esm2022/platform-management/acorex-modules-platform-management.mjs +0 -5
- package/esm2022/platform-management/index.mjs +0 -4
- package/esm2022/platform-management/lib/common/common.module.mjs +0 -65
- package/esm2022/platform-management/lib/common/common.source.mjs +0 -5
- package/esm2022/platform-management/lib/common/country/country-datasource.provider.mjs +0 -27
- package/esm2022/platform-management/lib/common/country/country.entity.mjs +0 -696
- package/esm2022/platform-management/lib/common/country/country.service.mjs +0 -17
- package/esm2022/platform-management/lib/common/country/country.types.mjs +0 -2
- package/esm2022/platform-management/lib/common/country/index.mjs +0 -4
- package/esm2022/platform-management/lib/common/currency/currency.entity.mjs +0 -283
- package/esm2022/platform-management/lib/common/currency/currency.service.mjs +0 -17
- package/esm2022/platform-management/lib/common/currency/currency.types.mjs +0 -2
- package/esm2022/platform-management/lib/common/currency/index.mjs +0 -4
- package/esm2022/platform-management/lib/common/entity.loader.mjs +0 -36
- package/esm2022/platform-management/lib/common/index.mjs +0 -5
- package/esm2022/platform-management/lib/common/province/index.mjs +0 -4
- package/esm2022/platform-management/lib/common/province/province.entity.mjs +0 -307
- package/esm2022/platform-management/lib/common/province/province.service.mjs +0 -17
- package/esm2022/platform-management/lib/common/province/province.types.mjs +0 -2
- package/esm2022/platform-management/lib/const.mjs +0 -12
- package/esm2022/platform-management/lib/global-variables/entities/global-variable.entity.mjs +0 -346
- package/esm2022/platform-management/lib/global-variables/entity.loader.mjs +0 -23
- package/esm2022/platform-management/lib/global-variables/global-variables.service.mjs +0 -16
- package/esm2022/platform-management/lib/global-variables/global-variables.types.mjs +0 -2
- package/esm2022/platform-management/lib/global-variables/index.mjs +0 -5
- package/esm2022/platform-management/lib/menu.provider.mjs +0 -74
- package/esm2022/platform-management/lib/platform-management.module.mjs +0 -61
- package/esm2022/scheduler-job-management/acorex-modules-scheduler-job-management.mjs +0 -5
- package/esm2022/scheduler-job-management/index.mjs +0 -5
- package/esm2022/scheduler-job-management/lib/const.mjs +0 -8
- package/esm2022/scheduler-job-management/lib/entities/index.mjs +0 -2
- package/esm2022/scheduler-job-management/lib/entities/scheduler-job/index.mjs +0 -5
- package/esm2022/scheduler-job-management/lib/entities/scheduler-job/scheduler-job.entity.mjs +0 -333
- package/esm2022/scheduler-job-management/lib/entities/scheduler-job/scheduler-job.module.mjs +0 -28
- package/esm2022/scheduler-job-management/lib/entities/scheduler-job/scheduler-job.service.mjs +0 -17
- package/esm2022/scheduler-job-management/lib/entities/scheduler-job/scheduler-job.types.mjs +0 -2
- package/esm2022/scheduler-job-management/lib/entity.provider.mjs +0 -25
- package/esm2022/scheduler-job-management/lib/menu.provider.mjs +0 -31
- package/esm2022/scheduler-job-management/lib/scheduler-job-management.module.mjs +0 -44
- package/esm2022/text-template-management/acorex-modules-text-template-management.mjs +0 -5
- package/esm2022/text-template-management/index.mjs +0 -6
- package/esm2022/text-template-management/lib/const.mjs +0 -8
- package/esm2022/text-template-management/lib/entities/category/category.entity.mjs +0 -262
- package/esm2022/text-template-management/lib/entities/category/category.module.mjs +0 -28
- package/esm2022/text-template-management/lib/entities/category/category.service.mjs +0 -17
- package/esm2022/text-template-management/lib/entities/category/category.types.mjs +0 -2
- package/esm2022/text-template-management/lib/entities/category/index.mjs +0 -5
- package/esm2022/text-template-management/lib/entities/index.mjs +0 -3
- package/esm2022/text-template-management/lib/entities/template/index.mjs +0 -5
- package/esm2022/text-template-management/lib/entities/template/template.entity.mjs +0 -405
- package/esm2022/text-template-management/lib/entities/template/template.module.mjs +0 -28
- package/esm2022/text-template-management/lib/entities/template/template.service.mjs +0 -17
- package/esm2022/text-template-management/lib/entities/template/template.types.mjs +0 -2
- package/esm2022/text-template-management/lib/entity.provider.mjs +0 -29
- package/esm2022/text-template-management/lib/menu.provider.mjs +0 -37
- package/esm2022/text-template-management/lib/setting.provider.mjs +0 -308
- package/esm2022/text-template-management/lib/text-template-management.module.mjs +0 -56
- package/fesm2022/acorex-modules-application-management-module-designer.component-B6WPz0N8.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-DQzSrtut.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-app-chooser.component-BFQgjqFV.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-blank.layout-Bq822Iz4.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-login.module-KR2dB8vW.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-master.layout-CU27gbWp.mjs +0 -38
- package/fesm2022/acorex-modules-auth-master.layout-CU27gbWp.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-password.component-9uIMNoQE.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-password.component-DpjEjw0o.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-6qDoCUBo.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-two-factor-code.component-BJKmvI7y.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-two-factor.module-Bnoi3ZXB.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-template-management-designer.page-NhIPhsRs.mjs.map +0 -1
- package/platform-management/lib/common/common.source.d.ts +0 -4
@@ -6,7 +6,7 @@ import { inject, isDevMode, Injectable, InjectionToken, Component, signal, ViewC
|
|
6
6
|
import * as i2 from '@angular/router';
|
7
7
|
import { Router, RouterModule, ROUTES } from '@angular/router';
|
8
8
|
import * as i1$2 from '@acorex/platform/common';
|
9
|
-
import { AXPSignOutAction, AXPSignInAction,
|
9
|
+
import { AXPSignOutAction, AXPSignInAction, AXPDataProvider, AXPComponentSlotModule, AXP_MENU_PROVIDER, AXPCommonModule } from '@acorex/platform/common';
|
10
10
|
import * as i1$1 from '@angular/common';
|
11
11
|
import { CommonModule } from '@angular/common';
|
12
12
|
import * as i1 from '@ngrx/effects';
|
@@ -63,10 +63,10 @@ class AXMAuthErrorHandler {
|
|
63
63
|
}
|
64
64
|
this.layoutService.setNavigationLoading(false);
|
65
65
|
}
|
66
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
67
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
66
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAuthErrorHandler, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
67
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAuthErrorHandler }); }
|
68
68
|
}
|
69
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAuthErrorHandler, decorators: [{
|
70
70
|
type: Injectable
|
71
71
|
}] });
|
72
72
|
|
@@ -103,22 +103,22 @@ const routes = [
|
|
103
103
|
},
|
104
104
|
{
|
105
105
|
path: '',
|
106
|
-
loadComponent: () => import('./acorex-modules-auth-master.layout-
|
107
|
-
loadChildren: () => import('./acorex-modules-auth-login.module-
|
106
|
+
loadComponent: () => import('./acorex-modules-auth-master.layout-4jTF1Xhx.mjs').then((c) => c.AXPAuthMasterLayoutComponent),
|
107
|
+
loadChildren: () => import('./acorex-modules-auth-login.module-Cvr3l9wl.mjs').then((c) => c.AXPSignInModule),
|
108
108
|
},
|
109
109
|
{
|
110
110
|
path: '',
|
111
|
-
loadComponent: () => import('./acorex-modules-auth-master.layout-
|
112
|
-
loadChildren: () => import('./acorex-modules-auth-two-factor.module-
|
111
|
+
loadComponent: () => import('./acorex-modules-auth-master.layout-4jTF1Xhx.mjs').then((c) => c.AXPAuthMasterLayoutComponent),
|
112
|
+
loadChildren: () => import('./acorex-modules-auth-two-factor.module-C99NYq3o.mjs').then((c) => c.AXPTwoFactorModule),
|
113
113
|
},
|
114
114
|
{
|
115
115
|
path: '',
|
116
|
-
loadComponent: () => import('./acorex-modules-auth-master.layout-
|
117
|
-
loadChildren: () => import('./acorex-modules-auth-routes-
|
116
|
+
loadComponent: () => import('./acorex-modules-auth-master.layout-4jTF1Xhx.mjs').then((c) => c.AXPAuthMasterLayoutComponent),
|
117
|
+
loadChildren: () => import('./acorex-modules-auth-routes-DqgtVe9G.mjs').then((c) => c),
|
118
118
|
},
|
119
119
|
{
|
120
120
|
path: 'account',
|
121
|
-
loadComponent: () => import('./acorex-modules-auth-blank.layout-
|
121
|
+
loadComponent: () => import('./acorex-modules-auth-blank.layout-B1a0710P.mjs').then((c) => c.AXPAuthBlankLayoutComponent),
|
122
122
|
loadChildren: () => Promise.resolve().then(function () { return account_module; }).then((c) => c.AXPAccountModule),
|
123
123
|
},
|
124
124
|
// {
|
@@ -160,10 +160,10 @@ class AXPIdleService {
|
|
160
160
|
this.idleSubscription = null;
|
161
161
|
}
|
162
162
|
}
|
163
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
164
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
163
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPIdleService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
164
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPIdleService, providedIn: 'root' }); }
|
165
165
|
}
|
166
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
166
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPIdleService, decorators: [{
|
167
167
|
type: Injectable,
|
168
168
|
args: [{ providedIn: 'root' }]
|
169
169
|
}], ctorParameters: () => [] });
|
@@ -239,10 +239,10 @@ class AXPAuthEffects {
|
|
239
239
|
}
|
240
240
|
})), { dispatch: false });
|
241
241
|
}
|
242
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
243
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
242
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAuthEffects, deps: [{ token: i1.Actions }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
243
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAuthEffects }); }
|
244
244
|
}
|
245
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
245
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAuthEffects, decorators: [{
|
246
246
|
type: Injectable
|
247
247
|
}], ctorParameters: () => [{ type: i1.Actions }, { type: i2.Router }] });
|
248
248
|
|
@@ -260,12 +260,12 @@ class AXPAppChooserListComponent {
|
|
260
260
|
await this.sessionService.setApplication(item);
|
261
261
|
this.router.navigate([`/${item.name}/home`]);
|
262
262
|
}
|
263
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
264
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
263
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAppChooserListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
264
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPAppChooserListComponent, isStandalone: true, selector: "axp-app-chooser-list", ngImport: i0, template: "<div class=\" ax-w-full ax-overflow-auto ax-max-h-[300px] ax-pe-2\">\n @for(application of (applications$ | async); track $index){\n <div class=\"ax-flex ax-gap-2 ax-justify-between ax-border-b last:ax-border-b-0 ax-py-3 ax-items-start ax-cursor-pointer\"\n (click)=\"chooseApplication(application)\">\n <div class=\"ax-flex ax-flex-1 ax-gap-2 ax-items-center ax-justify-center ax-font-medium\">\n <div\n class=\"ax-w-12 ax-h-12 ax-flex ax-justify-center ax-items-center ax-rounded-full ax-bg-neutral-100 ax-m-auto\">\n <ax-icon class=\"fa-solid fa-computer ax-text-neutral-500 ax-text-lg\"> </ax-icon>\n <!-- TODO: logo instead of application icon -->\n <!-- <axp-logo [source]=\"application.logo\" [attr.alt]=\"application.title\"\n class=\"!ax-flex ax-items-center ax-justify-center !ax-text-sm ax-mx-auto ax-w-10 ax-h-10 ax-bg-neutral-200 ax-rounded-full\"></axp-logo> -->\n </div>\n <span class=\"ax-flex-1 ax-text-start md:ax-text-base ax-text-sm\">{{ application.title }}</span>\n <span class=\"ax-text-gray-500 md:ax-text-sm ax-text-xs\">{{application.editionName}}</span>\n @if(application.name===selectedApplication?.name){\n <ax-loading></ax-loading>\n }@else {\n <ax-icon class=\"fa-solid fa-chevron-right ax-text-neutral-400\"> </ax-icon>\n }\n </div>\n </div>\n }\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i3.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }] }); }
|
265
265
|
}
|
266
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
266
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAppChooserListComponent, decorators: [{
|
267
267
|
type: Component,
|
268
|
-
args: [{ selector: 'axp-app-chooser-list',
|
268
|
+
args: [{ selector: 'axp-app-chooser-list', imports: [CommonModule, AXDecoratorModule, AXLoadingModule], template: "<div class=\" ax-w-full ax-overflow-auto ax-max-h-[300px] ax-pe-2\">\n @for(application of (applications$ | async); track $index){\n <div class=\"ax-flex ax-gap-2 ax-justify-between ax-border-b last:ax-border-b-0 ax-py-3 ax-items-start ax-cursor-pointer\"\n (click)=\"chooseApplication(application)\">\n <div class=\"ax-flex ax-flex-1 ax-gap-2 ax-items-center ax-justify-center ax-font-medium\">\n <div\n class=\"ax-w-12 ax-h-12 ax-flex ax-justify-center ax-items-center ax-rounded-full ax-bg-neutral-100 ax-m-auto\">\n <ax-icon class=\"fa-solid fa-computer ax-text-neutral-500 ax-text-lg\"> </ax-icon>\n <!-- TODO: logo instead of application icon -->\n <!-- <axp-logo [source]=\"application.logo\" [attr.alt]=\"application.title\"\n class=\"!ax-flex ax-items-center ax-justify-center !ax-text-sm ax-mx-auto ax-w-10 ax-h-10 ax-bg-neutral-200 ax-rounded-full\"></axp-logo> -->\n </div>\n <span class=\"ax-flex-1 ax-text-start md:ax-text-base ax-text-sm\">{{ application.title }}</span>\n <span class=\"ax-text-gray-500 md:ax-text-sm ax-text-xs\">{{application.editionName}}</span>\n @if(application.name===selectedApplication?.name){\n <ax-loading></ax-loading>\n }@else {\n <ax-icon class=\"fa-solid fa-chevron-right ax-text-neutral-400\"> </ax-icon>\n }\n </div>\n </div>\n }\n</div>" }]
|
269
269
|
}] });
|
270
270
|
|
271
271
|
class AXMAppChooserSlotComponent {
|
@@ -280,19 +280,12 @@ class AXMAppChooserSlotComponent {
|
|
280
280
|
//await this.sessionService.selectApplication(item.name);
|
281
281
|
this.router.navigate([`/${item.name}/home`]);
|
282
282
|
}
|
283
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
284
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
283
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAppChooserSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
284
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXMAppChooserSlotComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "@if(((applications$ | async)?.length ?? 0) > 1)\n{\n<ax-button color=\"default\" look=\"blank\" #appChooser>\n <ax-icon>\n <i class=\"fa-solid fa-grid-2 ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n<ax-popover [target]=\"appChooser\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\" [adaptivityEnabled]=\"true\">\n <div class=\"ax-bg-surface ax-border ax-overflow-hidden ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64 ax-p-3\">\n <axp-app-chooser-list></axp-app-chooser-list>\n </div>\n</ax-popover>\n}", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2$2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i3$1.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXPAppChooserListComponent, selector: "axp-app-chooser-list" }] }); }
|
285
285
|
}
|
286
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
286
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAppChooserSlotComponent, decorators: [{
|
287
287
|
type: Component,
|
288
|
-
args: [{
|
289
|
-
CommonModule,
|
290
|
-
AXButtonModule,
|
291
|
-
AXPopoverModule,
|
292
|
-
AXDecoratorModule,
|
293
|
-
AXPLogoComponent,
|
294
|
-
AXPAppChooserListComponent
|
295
|
-
], template: "@if(((applications$ | async)?.length ?? 0) > 1)\n{\n<ax-button color=\"default\" look=\"blank\" #appChooser>\n <ax-icon>\n <i class=\"fa-solid fa-grid-2 ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n<ax-popover [target]=\"appChooser\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\" [adaptivityEnabled]=\"true\">\n <div class=\"ax-bg-surface ax-border ax-overflow-hidden ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64 ax-p-3\">\n <axp-app-chooser-list></axp-app-chooser-list>\n </div>\n</ax-popover>\n}" }]
|
288
|
+
args: [{ imports: [CommonModule, AXButtonModule, AXPopoverModule, AXDecoratorModule, AXPAppChooserListComponent], template: "@if(((applications$ | async)?.length ?? 0) > 1)\n{\n<ax-button color=\"default\" look=\"blank\" #appChooser>\n <ax-icon>\n <i class=\"fa-solid fa-grid-2 ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n<ax-popover [target]=\"appChooser\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\" [adaptivityEnabled]=\"true\">\n <div class=\"ax-bg-surface ax-border ax-overflow-hidden ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64 ax-p-3\">\n <axp-app-chooser-list></axp-app-chooser-list>\n </div>\n</ax-popover>\n}" }]
|
296
289
|
}] });
|
297
290
|
|
298
291
|
class AXPTenantChooserDropdownComponent {
|
@@ -305,12 +298,12 @@ class AXPTenantChooserDropdownComponent {
|
|
305
298
|
tenantChooser() {
|
306
299
|
this.router.navigate(['/auth/account/tenant-chooser']);
|
307
300
|
}
|
308
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
309
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
301
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPTenantChooserDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
302
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPTenantChooserDropdownComponent, isStandalone: true, selector: "axp-tenant-chooser-dropdown", ngImport: i0, template: "<ng-container *ngIf=\"tenants$ | async as tenants\">\n @if(tenants.length>1){\n <div (click)=\"tenantChooser()\"\n class=\"ax-flex ax-items-center ax-border ax-rounded-full ax-px-4 ax-py-1 ax-gap-2 ax-cursor-pointer\">\n <ax-icon class=\"fa-solid fa-building ax-text-neutral-500 ax-text-xs\"></ax-icon>\n <p class=\"ax-text-neutral-500 ax-text-sm ax-font-medium\">\n {{ tenant?.title }}\n </p>\n <ax-icon class=\"fa-regular fa-chevron-down ax-text-neutral-400\"></ax-icon>\n </div>\n }@else {\n <div class=\"ax-flex ax-items-center ax-border ax-rounded-full ax-px-4 ax-py-1 ax-gap-2 ax-cursor-pointer\">\n <ax-icon class=\"fa-solid fa-building ax-text-neutral-500\"></ax-icon>\n <p class=\"ax-text-neutral-500 ax-text-sm ax-font-medium\">\n {{ tenant?.title }}\n </p>\n </div>\n }\n</ng-container>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }] }); }
|
310
303
|
}
|
311
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
304
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPTenantChooserDropdownComponent, decorators: [{
|
312
305
|
type: Component,
|
313
|
-
args: [{ selector: 'axp-tenant-chooser-dropdown',
|
306
|
+
args: [{ selector: 'axp-tenant-chooser-dropdown', imports: [CommonModule, AXDecoratorModule], template: "<ng-container *ngIf=\"tenants$ | async as tenants\">\n @if(tenants.length>1){\n <div (click)=\"tenantChooser()\"\n class=\"ax-flex ax-items-center ax-border ax-rounded-full ax-px-4 ax-py-1 ax-gap-2 ax-cursor-pointer\">\n <ax-icon class=\"fa-solid fa-building ax-text-neutral-500 ax-text-xs\"></ax-icon>\n <p class=\"ax-text-neutral-500 ax-text-sm ax-font-medium\">\n {{ tenant?.title }}\n </p>\n <ax-icon class=\"fa-regular fa-chevron-down ax-text-neutral-400\"></ax-icon>\n </div>\n }@else {\n <div class=\"ax-flex ax-items-center ax-border ax-rounded-full ax-px-4 ax-py-1 ax-gap-2 ax-cursor-pointer\">\n <ax-icon class=\"fa-solid fa-building ax-text-neutral-500\"></ax-icon>\n <p class=\"ax-text-neutral-500 ax-text-sm ax-font-medium\">\n {{ tenant?.title }}\n </p>\n </div>\n }\n</ng-container>" }]
|
314
307
|
}] });
|
315
308
|
|
316
309
|
class AXMAuthProfileSlotComponent {
|
@@ -377,12 +370,12 @@ class AXMAuthProfileSlotComponent {
|
|
377
370
|
this.src = '';
|
378
371
|
}
|
379
372
|
}
|
380
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
381
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
373
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAuthProfileSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
374
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXMAuthProfileSlotComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "profilePopover", first: true, predicate: ["profilePopover"], descendants: true }], ngImport: i0, template: "@if((isAuthenticated$ | async)) {\n<div class=\"ax-size-fit ax-px-2\">\n <ax-avatar #avatar color=\"secondary\" (error)=\"this.src = 'path/to/default-image.jpg'\" [size]=\"32\"\n class=\"ax-cursor-pointer\">\n @if(hasPicture()){\n <ax-image (onError)=\"onImageError($event)\" [src]=\"src\"></ax-image>\n }@else{\n <ax-text>\n <small class=\"ax-text-xs ax-font-semibold\">{{ avatarText() }}</small>\n </ax-text>\n }\n </ax-avatar>\n <ax-popover [target]=\"avatar\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\">\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-p-4 ax-border-b\">\n <ax-avatar [size]=\"60\">\n @if(hasPicture()){\n <ax-image (onError)=\"onImageError($event)\" [src]=\"src\">\n <ax-loading></ax-loading>\n </ax-image>\n }@else{\n <ax-text>\n <span class=\"\">{{ avatarText() }}</span>\n </ax-text>\n }\n </ax-avatar>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-mt-2 ax-gap-1\">\n <div class=\"ax-text-base ax-font-bold\">{{ (user$ | async)?.title }}</div>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n </div>\n </div>\n <div class=\"profile-menus ax-text-slate-500\">\n <!-- <ul>\n <li>\n <i class=\"fa-solid fa-folder-open\"></i>\n <span> Project Management </span>\n </li>\n <li>\n <i class=\"fa-solid fa-envelope-open-text\"></i>\n <span>Email Config</span>\n </li>\n <li>\n <i class=\"fa-solid fa-gear\"></i>\n <span>Setting</span>\n </li>\n </ul> -->\n <ul>\n <!-- <li>\n <i class=\"fa-solid fa-gem ax-text-primary-500\"></i>\n <span> Upgrade account </span>\n </li> -->\n <li (click)=\"editProfile()\">\n <i class=\"fa-solid fa-user\"></i>\n <span>{{ 'profile.edit' | translate:{scope:'auth'} | async }}</span>\n </li>\n </ul>\n <ul>\n <li class=\"ax-text-danger-500\" (click)=\"logOut()\">\n <i class=\"fa-solid fa-arrow-right-from-bracket\"></i>\n <span>{{ 'profile.logout' | translate:{scope:'auth'} | async }}</span>\n </li>\n </ul>\n </div>\n </div>\n </ax-popover>\n</div>\n\n} @else {\n<ax-button color=\"default\" look=\"blank\" text=\"Sign Up / Sign In\" (click)=\"handleSignIn()\">\n <ax-icon>\n <i class=\"fa-solid fa-user ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n}", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2$3.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXAvatarModule }, { kind: "component", type: i3$2.AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "look"], outputs: ["sizeChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i3$1.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2$2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2$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" }, { kind: "component", type: AXPTenantChooserDropdownComponent, selector: "axp-tenant-chooser-dropdown" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i3.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i9.AXTranslatorPipe, name: "translate" }] }); }
|
382
375
|
}
|
383
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
376
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAuthProfileSlotComponent, decorators: [{
|
384
377
|
type: Component,
|
385
|
-
args: [{
|
378
|
+
args: [{ imports: [
|
386
379
|
CommonModule,
|
387
380
|
AXImageModule,
|
388
381
|
AXAvatarModule,
|
@@ -429,21 +422,21 @@ function routesFacory() {
|
|
429
422
|
routes = [
|
430
423
|
{
|
431
424
|
path: 'tenant-chooser',
|
432
|
-
loadComponent: () => import('./acorex-modules-auth-tenant-chooser.component-
|
425
|
+
loadComponent: () => import('./acorex-modules-auth-tenant-chooser.component-CorZ4Z7h.mjs').then((c) => c.AXPAuthTenantChooserComponent),
|
433
426
|
canActivate: [AXPAuthGuard, canActivateTenantChooser],
|
434
427
|
},
|
435
428
|
{
|
436
429
|
path: 'app-chooser',
|
437
|
-
loadComponent: () => import('./acorex-modules-auth-app-chooser.component-
|
430
|
+
loadComponent: () => import('./acorex-modules-auth-app-chooser.component-BK4Hs5OP.mjs').then((c) => c.AXPAuthAppChooserComponent),
|
438
431
|
canActivate: [AXPAuthGuard, canActivateAppChooser],
|
439
432
|
},
|
440
433
|
];
|
441
434
|
return routes;
|
442
435
|
}
|
443
436
|
class AXPAccountModule {
|
444
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
445
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
446
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
437
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAccountModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
438
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.3", ngImport: i0, type: AXPAccountModule, imports: [RouterModule, i1$2.AXPComponentSlotModule] }); }
|
439
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAccountModule, providers: [
|
447
440
|
{
|
448
441
|
provide: ROUTES,
|
449
442
|
multi: true,
|
@@ -466,7 +459,7 @@ class AXPAccountModule {
|
|
466
459
|
],
|
467
460
|
})] }); }
|
468
461
|
}
|
469
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
462
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAccountModule, decorators: [{
|
470
463
|
type: NgModule,
|
471
464
|
args: [{
|
472
465
|
declarations: [],
|
@@ -546,9 +539,9 @@ class AXMSecurityManagmentModuleMenuProvider {
|
|
546
539
|
}
|
547
540
|
|
548
541
|
class AXMAuthModule {
|
549
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
550
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
551
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
542
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAuthModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
543
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.3", ngImport: i0, type: AXMAuthModule, imports: [CommonModule, i1$2.AXPCommonModule, i2.RouterModule, i1.EffectsFeatureModule, AXPAccountModule] }); }
|
544
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAuthModule, providers: [
|
552
545
|
AXMAuthErrorHandler,
|
553
546
|
{
|
554
547
|
provide: AXP_MENU_PROVIDER,
|
@@ -561,7 +554,7 @@ class AXMAuthModule {
|
|
561
554
|
EffectsModule.forFeature([AXPAuthEffects]),
|
562
555
|
AXPAccountModule] }); }
|
563
556
|
}
|
564
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
557
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMAuthModule, decorators: [{
|
565
558
|
type: NgModule,
|
566
559
|
args: [{
|
567
560
|
imports: [
|
@@ -587,4 +580,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
587
580
|
*/
|
588
581
|
|
589
582
|
export { AXM_AUTH_CONFIG_TOKEN as A, AXMAuthenticationTypes as a, AXPTenantChooserDropdownComponent as b, AXPAppChooserListComponent as c, AXMAuthErrorHandler as d, AXMDefaultAuthConfigs as e, configAuthModule as f, AXMAuthModule as g, AXPIdleService as h };
|
590
|
-
//# sourceMappingURL=acorex-modules-auth-acorex-modules-auth-
|
583
|
+
//# sourceMappingURL=acorex-modules-auth-acorex-modules-auth-CtWwcZOU.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-auth-acorex-modules-auth-CtWwcZOU.mjs","sources":["../../../../libs/modules/auth/src/lib/error-handler.ts","../../../../libs/modules/auth/src/lib/auth.config.ts","../../../../libs/modules/auth/src/lib/auth.routes.ts","../../../../libs/modules/auth/src/lib/shared/services/idle.service.ts","../../../../libs/modules/auth/src/lib/store/auth.effects.ts","../../../../libs/modules/auth/src/lib/store/index.ts","../../../../libs/modules/auth/src/lib/account/app-chooser/app-chooser-list.component.ts","../../../../libs/modules/auth/src/lib/account/app-chooser/app-chooser-list.component.html","../../../../libs/modules/auth/src/lib/account/app-chooser/app-chooser-slot.component.ts","../../../../libs/modules/auth/src/lib/account/app-chooser/app-chooser-slot.component.html","../../../../libs/modules/auth/src/lib/account/tenant-chooser/tenant-chooser-dropdown.component.ts","../../../../libs/modules/auth/src/lib/account/tenant-chooser/tenant-chooser-dropdown.component.html","../../../../libs/modules/auth/src/lib/account/profile/profile-slot.component.ts","../../../../libs/modules/auth/src/lib/account/profile/profile-slot.component.html","../../../../libs/modules/auth/src/lib/account/account.module.ts","../../../../libs/modules/auth/src/lib/menu.provider.ts","../../../../libs/modules/auth/src/lib/auth.module.ts","../../../../libs/modules/auth/src/acorex-modules-auth.ts"],"sourcesContent":["import { AXPUnauthenticatedError, AXPUnauthorizedError } from '@acorex/platform/auth';\nimport { AXPErrorHandler } from '@acorex/platform/common';\nimport { AXPLayoutThemeService } from '@acorex/platform/themes/shared';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { Injectable, NgZone, inject, isDevMode } from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Injectable()\nexport class AXMAuthErrorHandler implements AXPErrorHandler {\n private router = inject(Router);\n private layoutService = inject(AXPLayoutThemeService);\n\n handleError(error: Error, next: (error: any) => void): void {\n if (error instanceof HttpErrorResponse) {\n // if (error.status == 401) {\n // this.router.navigate(['/auth/login']);\n // }\n // else if (error.status == 404) {\n // this.router.navigate(['/404']);\n // }\n } else if (error instanceof AXPUnauthorizedError) {\n const redirectUrl = error.data?.redirectUrl;\n console.error(error.message);\n this.router.navigate(['/401'], { queryParams: redirectUrl ? { redirectUrl: redirectUrl } : null });\n } else if (error instanceof AXPUnauthenticatedError) {\n console.error(error.message);\n const redirectUrl = error.data?.redirectUrl;\n this.router.navigate(['/auth/login'], { queryParams: redirectUrl ? { redirectUrl: redirectUrl } : null });\n } else {\n if (isDevMode()) {\n next(error); // Pass the error to the next handler\n } else {\n next(error); // maybe we need a error page\n }\n }\n this.layoutService.setNavigationLoading(false);\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { AuthConfig } from 'angular-oauth2-oidc';\n\nexport enum AXMAuthenticationTypes {\n UsernamePassword,\n UsernameEmailPassword,\n EmailPassword,\n MobilePassword,\n EmailCode,\n MobileCode,\n}\n\nexport const AXM_AUTH_CONFIG_TOKEN = new InjectionToken<AXMAuthConfigs>('app-module-auth-config', {\n providedIn: 'root',\n factory: () => {\n return AXMDefaultAuthConfigs;\n },\n});\n\nexport interface AXMAuthConfigs {\n type: AXMAuthenticationTypes;\n // oidc_settings?: UserManagerSettings;\n authConfig?: AuthConfig;\n end_url?: string;\n signup?: {\n enable: boolean;\n url?: string;\n };\n signin_google?: boolean;\n signin_apple?: boolean;\n signinPage?: {\n description: string;\n slogan: string;\n };\n idleTimeout?: number;\n}\n\nexport const AXMDefaultAuthConfigs: AXMAuthConfigs = {\n type: AXMAuthenticationTypes.UsernamePassword,\n};\n\nexport function configAuthModule(config: Partial<AXMAuthConfigs> = AXMDefaultAuthConfigs): AXMAuthConfigs {\n return { ...AXMDefaultAuthConfigs, ...config };\n}\n","import { Route } from '@angular/router';\nexport const routes: Route[] = [\n {\n path: 'auth',\n children: [\n {\n path: '',\n pathMatch: 'full',\n redirectTo: 'login',\n },\n {\n path: '',\n loadComponent: () => import('./shared/layouts/master/master.layout').then((c) => c.AXPAuthMasterLayoutComponent),\n loadChildren: () => import('./login/login.module').then((c) => c.AXPSignInModule),\n },\n {\n path: '',\n loadComponent: () => import('./shared/layouts/master/master.layout').then((c) => c.AXPAuthMasterLayoutComponent),\n loadChildren: () => import('./two-factor/two-factor.module').then((c) => c.AXPTwoFactorModule),\n },\n {\n path: '',\n loadComponent: () => import('./shared/layouts/master/master.layout').then((c) => c.AXPAuthMasterLayoutComponent),\n loadChildren: () => import('./forgot/routes').then((c) => c),\n },\n {\n path: 'account',\n loadComponent: () => import('./shared/layouts/blank/blank.layout').then((c) => c.AXPAuthBlankLayoutComponent),\n loadChildren: () => import('./account/account.module').then((c) => c.AXPAccountModule),\n },\n // {\n // path: '',\n // loadComponent: () =>\n // import('./shared/layouts/master/master.layout').then((c) => c.AXPAuthMasterLayoutComponent),\n // loadChildren: () => import('./register/register.module').then((c) => c.AXPRegisterModule),\n // },\n ],\n },\n];\n","import { Injectable, inject } from '@angular/core';\nimport { Subject, Observable, timer, Subscription } from 'rxjs';\nimport { startWith, switchMap, tap } from 'rxjs/operators';\nimport { AXM_AUTH_CONFIG_TOKEN } from '../../auth.config';\n\n@Injectable({ providedIn: 'root' })\nexport class AXPIdleService {\n private configs = inject(AXM_AUTH_CONFIG_TOKEN);\n private idle$ = new Subject<void>();\n private timeoutDuration = this.configs.idleTimeout ?? 10 * 60 * 1000;\n private userActivity$ = new Subject<void>();\n private idleSubscription: Subscription | null = null;\n\n constructor() {\n this.setupActivityListeners();\n }\n\n get idleState$(): Observable<void> {\n return this.idle$.asObservable();\n }\n\n private setupActivityListeners() {\n const activityEvents = ['mousemove', 'keydown', 'wheel'];\n activityEvents.forEach(event =>\n document.addEventListener(event, () => this.resetTimer())\n );\n }\n\n startWatching() {\n this.stopWatching(); // Stop any existing subscription\n this.idleSubscription = this.userActivity$.pipe(\n startWith(null),\n switchMap(() => timer(this.timeoutDuration)),\n tap(() => this.idle$.next()),\n ).subscribe();\n }\n\n resetTimer() {\n this.userActivity$.next();\n }\n\n stopWatching() {\n if (this.idleSubscription) {\n this.idleSubscription.unsubscribe();\n this.idleSubscription = null;\n }\n }\n}\n","import { AXDialogButtonItem, AXDialogService } from \"@acorex/components/dialog\";\nimport { AXPSessionService } from \"@acorex/platform/auth\";\nimport { AXPSignInAction, AXPSignOutAction } from \"@acorex/platform/common\";\nimport { Injectable, inject } from \"@angular/core\";\nimport { Router } from \"@angular/router\";\nimport { Actions, createEffect, ofType } from \"@ngrx/effects\";\nimport { of, switchMap, tap } from \"rxjs\";\nimport { AXPIdleService } from \"../shared/services\";\nimport { AXM_AUTH_CONFIG_TOKEN } from \"../auth.config\";\n\n@Injectable()\nexport class AXPAuthEffects {\n\n private configs = inject(AXM_AUTH_CONFIG_TOKEN);\n private sessionService = inject(AXPSessionService);\n private idleService = inject(AXPIdleService);\n private dialogService = inject(AXDialogService);\n private dialogAlreadyOpen = false;\n\n constructor(private actions$: Actions, private router: Router) { }\n\n signout$ = createEffect(\n () =>\n this.actions$.pipe(\n ofType(AXPSignOutAction),\n switchMap((action) => {\n this.idleService.stopWatching();\n this.router.navigate(['/auth/login']);\n return of();\n })\n ),\n { dispatch: false }\n );\n\n signin$ = createEffect(\n () =>\n this.actions$.pipe(\n ofType(AXPSignInAction),\n switchMap((action) => {\n if (this.configs.idleTimeout) {\n this.idleService.startWatching();\n }\n return of();\n })\n ),\n { dispatch: false }\n );\n\n\n idle$ = createEffect(\n () =>\n this.idleService.idleState$.pipe(\n tap(() => {\n if (!this.dialogAlreadyOpen) {\n let time = 60;\n let intervalId: number;\n const buttonText = (time: number) => `Stay Sign In (${time})`;\n const stayButton: AXDialogButtonItem = {\n text: buttonText(time),\n color: 'primary',\n autofocus: true,\n onClick: () => {\n this.idleService.resetTimer();\n dialog.close();\n this.dialogAlreadyOpen = false;\n clearInterval(intervalId);\n }\n }\n const dialog = this.dialogService.open({\n title: \"Session Timeout\",\n content: \"You're being timed out due to inactivity. Please choose to stay signed in or to sign off. Otherwise, you will signed off automatically.\",\n type: 'warning',\n buttons: [\n {\n text: \"Sign Off\",\n color: 'ghost',\n onClick: async () => {\n await this.sessionService.signout();\n dialog.close();\n this.dialogAlreadyOpen = false;\n clearInterval(intervalId);\n }\n },\n stayButton,\n ]\n });\n this.dialogAlreadyOpen = true;\n // Automatically close dialog and sign out after additional time\n intervalId = setInterval(() => {\n if (time > 0) {\n stayButton.text = buttonText(--time);\n } else {\n clearInterval(intervalId);\n this.sessionService.signout();\n dialog.close();\n this.dialogAlreadyOpen = false;\n }\n }, 1000);\n //\n }\n })\n ),\n { dispatch: false }\n );\n\n}\n","export * from './auth.effects';\n//export * from './auth.actions';","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPApplication, AXPSessionService } from '@acorex/platform/auth';\nimport { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'axp-app-chooser-list',\n templateUrl: 'app-chooser-list.component.html',\n imports: [CommonModule, AXDecoratorModule, AXLoadingModule],\n})\nexport class AXPAppChooserListComponent {\n private router = inject(Router);\n private sessionService = inject(AXPSessionService);\n\n protected selectedApplication: AXPApplication | null = null;\n protected applications$ = this.sessionService.applications$;\n\n async chooseApplication(item: AXPApplication) {\n this.selectedApplication = item;\n await this.sessionService.setApplication(item);\n this.router.navigate([`/${item.name}/home`]);\n }\n}\n","<div class=\" ax-w-full ax-overflow-auto ax-max-h-[300px] ax-pe-2\">\n @for(application of (applications$ | async); track $index){\n <div class=\"ax-flex ax-gap-2 ax-justify-between ax-border-b last:ax-border-b-0 ax-py-3 ax-items-start ax-cursor-pointer\"\n (click)=\"chooseApplication(application)\">\n <div class=\"ax-flex ax-flex-1 ax-gap-2 ax-items-center ax-justify-center ax-font-medium\">\n <div\n class=\"ax-w-12 ax-h-12 ax-flex ax-justify-center ax-items-center ax-rounded-full ax-bg-neutral-100 ax-m-auto\">\n <ax-icon class=\"fa-solid fa-computer ax-text-neutral-500 ax-text-lg\"> </ax-icon>\n <!-- TODO: logo instead of application icon -->\n <!-- <axp-logo [source]=\"application.logo\" [attr.alt]=\"application.title\"\n class=\"!ax-flex ax-items-center ax-justify-center !ax-text-sm ax-mx-auto ax-w-10 ax-h-10 ax-bg-neutral-200 ax-rounded-full\"></axp-logo> -->\n </div>\n <span class=\"ax-flex-1 ax-text-start md:ax-text-base ax-text-sm\">{{ application.title }}</span>\n <span class=\"ax-text-gray-500 md:ax-text-sm ax-text-xs\">{{application.editionName}}</span>\n @if(application.name===selectedApplication?.name){\n <ax-loading></ax-loading>\n }@else {\n <ax-icon class=\"fa-solid fa-chevron-right ax-text-neutral-400\"> </ax-icon>\n }\n </div>\n </div>\n }\n</div>","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXPApplication, AXPSessionService } from '@acorex/platform/auth';\nimport { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { of } from 'rxjs';\nimport { AXPAppChooserListComponent } from './app-chooser-list.component';\n\n@Component({\n templateUrl: './app-chooser-slot.component.html',\n imports: [CommonModule, AXButtonModule, AXPopoverModule, AXDecoratorModule, AXPAppChooserListComponent],\n})\nexport class AXMAppChooserSlotComponent {\n private sessionService = inject(AXPSessionService);\n protected tenant$ = this.sessionService.tenant$;\n\n protected application$ = this.sessionService.application$;\n protected applications$ = of([]);\n\n private router = inject(Router);\n\n async chooseApplication(item: AXPApplication) {\n //await this.sessionService.selectApplication(item.name);\n this.router.navigate([`/${item.name}/home`]);\n }\n}\n","@if(((applications$ | async)?.length ?? 0) > 1)\n{\n<ax-button color=\"default\" look=\"blank\" #appChooser>\n <ax-icon>\n <i class=\"fa-solid fa-grid-2 ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n<ax-popover [target]=\"appChooser\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\" [adaptivityEnabled]=\"true\">\n <div class=\"ax-bg-surface ax-border ax-overflow-hidden ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64 ax-p-3\">\n <axp-app-chooser-list></axp-app-chooser-list>\n </div>\n</ax-popover>\n}","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { CommonModule } from '@angular/common';\nimport { Component, inject } from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'axp-tenant-chooser-dropdown',\n templateUrl: 'tenant-chooser-dropdown.component.html',\n imports: [CommonModule, AXDecoratorModule]\n})\nexport class AXPTenantChooserDropdownComponent {\n private router = inject(Router);\n private sessionService = inject(AXPSessionService);\n protected tenants$ = this.sessionService.tenants$;\n protected tenant = this.sessionService.tenant;\n\n tenantChooser() {\n this.router.navigate(['/auth/account/tenant-chooser']);\n }\n}\n","<ng-container *ngIf=\"tenants$ | async as tenants\">\n @if(tenants.length>1){\n <div (click)=\"tenantChooser()\"\n class=\"ax-flex ax-items-center ax-border ax-rounded-full ax-px-4 ax-py-1 ax-gap-2 ax-cursor-pointer\">\n <ax-icon class=\"fa-solid fa-building ax-text-neutral-500 ax-text-xs\"></ax-icon>\n <p class=\"ax-text-neutral-500 ax-text-sm ax-font-medium\">\n {{ tenant?.title }}\n </p>\n <ax-icon class=\"fa-regular fa-chevron-down ax-text-neutral-400\"></ax-icon>\n </div>\n }@else {\n <div class=\"ax-flex ax-items-center ax-border ax-rounded-full ax-px-4 ax-py-1 ax-gap-2 ax-cursor-pointer\">\n <ax-icon class=\"fa-solid fa-building ax-text-neutral-500\"></ax-icon>\n <p class=\"ax-text-neutral-500 ax-text-sm ax-font-medium\">\n {{ tenant?.title }}\n </p>\n </div>\n }\n</ng-container>","import { AXAvatarModule } from '@acorex/components/avatar';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXHtmlEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPopoverComponent, AXPopoverModule } from '@acorex/components/popover';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXPDataProvider } from '@acorex/platform/common';\nimport { CommonModule } from '@angular/common';\nimport { Component, ViewChild, inject, signal } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { first } from 'rxjs';\nimport { AXPTenantChooserDropdownComponent } from '../tenant-chooser/tenant-chooser-dropdown.component';\n\n@Component({\n templateUrl: './profile-slot.component.html',\n imports: [\n CommonModule,\n AXImageModule,\n AXAvatarModule,\n AXPopoverModule,\n AXButtonModule,\n AXDecoratorModule,\n AXPTenantChooserDropdownComponent,\n AXLoadingModule,\n AXTranslationModule,\n ]\n})\nexport class AXMAuthProfileSlotComponent {\n private router = inject(Router);\n private sessionService = inject(AXPSessionService);\n private dataService = inject(AXPDataProvider, { optional: true });\n\n protected hasPicture = signal(true);\n protected avatarText = signal<string>('');\n\n constructor() {\n this.loadImage();\n this.getAvatarText();\n }\n protected src!: string;\n protected user$ = this.sessionService.user$;\n protected tenant$ = this.sessionService.tenant$;\n\n protected isAuthenticated$ = this.sessionService.isAuthenticated$;\n\n @ViewChild('profilePopover') profilePopover!: AXPopoverComponent;\n\n editProfile() {\n const appName = this.sessionService.application?.name;\n if (appName === 'asc') {\n this.router.navigate([`/asc/oidc/e/user-info/0/view`]);\n } else {\n this.router.navigate([`/${appName}/m/oidc/e/user-info/0/view`]);\n }\n }\n\n async logOut() {\n await this.sessionService.signout();\n }\n\n toggleProfileMenu() {\n this.profilePopover.open();\n }\n\n protected handleSignIn() {\n this.router.navigate(['/auth/login']);\n }\n\n protected onImageError(event: AXHtmlEvent<ErrorEvent>) {\n this.hasPicture.set(false);\n }\n\n protected getAvatarText = () => {\n this.user$.pipe(first()).subscribe((user) => {\n const names = user?.title.split(' ');\n if (names?.length && names?.length > 1) {\n this.avatarText.set(`${names[0][0].toUpperCase()}${names[names.length - 1][0].toUpperCase()}`);\n } else return this.avatarText.set('AC');\n });\n };\n\n private async loadImage() {\n try {\n const url = this.sessionService.user?.avatar as string;\n if (url?.toLowerCase().startsWith('http')) {\n this.src = url;\n } else if (this.sessionService.user?.avatar != 'null' && this.dataService) {\n const blob = await this.dataService.viewFile(url, '');\n this.src = URL.createObjectURL(blob);\n } else {\n //this.src = this.mockerService.avatar();\n }\n } catch (error) {\n this.hasPicture.set(false);\n console.error('Failed to load image by ID:', error);\n this.src = '';\n }\n }\n}\n","@if((isAuthenticated$ | async)) {\n<div class=\"ax-size-fit ax-px-2\">\n <ax-avatar #avatar color=\"secondary\" (error)=\"this.src = 'path/to/default-image.jpg'\" [size]=\"32\"\n class=\"ax-cursor-pointer\">\n @if(hasPicture()){\n <ax-image (onError)=\"onImageError($event)\" [src]=\"src\"></ax-image>\n }@else{\n <ax-text>\n <small class=\"ax-text-xs ax-font-semibold\">{{ avatarText() }}</small>\n </ax-text>\n }\n </ax-avatar>\n <ax-popover [target]=\"avatar\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\">\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-p-4 ax-border-b\">\n <ax-avatar [size]=\"60\">\n @if(hasPicture()){\n <ax-image (onError)=\"onImageError($event)\" [src]=\"src\">\n <ax-loading></ax-loading>\n </ax-image>\n }@else{\n <ax-text>\n <span class=\"\">{{ avatarText() }}</span>\n </ax-text>\n }\n </ax-avatar>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-mt-2 ax-gap-1\">\n <div class=\"ax-text-base ax-font-bold\">{{ (user$ | async)?.title }}</div>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n </div>\n </div>\n <div class=\"profile-menus ax-text-slate-500\">\n <!-- <ul>\n <li>\n <i class=\"fa-solid fa-folder-open\"></i>\n <span> Project Management </span>\n </li>\n <li>\n <i class=\"fa-solid fa-envelope-open-text\"></i>\n <span>Email Config</span>\n </li>\n <li>\n <i class=\"fa-solid fa-gear\"></i>\n <span>Setting</span>\n </li>\n </ul> -->\n <ul>\n <!-- <li>\n <i class=\"fa-solid fa-gem ax-text-primary-500\"></i>\n <span> Upgrade account </span>\n </li> -->\n <li (click)=\"editProfile()\">\n <i class=\"fa-solid fa-user\"></i>\n <span>{{ 'profile.edit' | translate:{scope:'auth'} | async }}</span>\n </li>\n </ul>\n <ul>\n <li class=\"ax-text-danger-500\" (click)=\"logOut()\">\n <i class=\"fa-solid fa-arrow-right-from-bracket\"></i>\n <span>{{ 'profile.logout' | translate:{scope:'auth'} | async }}</span>\n </li>\n </ul>\n </div>\n </div>\n </ax-popover>\n</div>\n\n} @else {\n<ax-button color=\"default\" look=\"blank\" text=\"Sign Up / Sign In\" (click)=\"handleSignIn()\">\n <ax-icon>\n <i class=\"fa-solid fa-user ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n}","import { AXPAuthGuard, AXPSessionService } from '@acorex/platform/auth';\nimport { AXPComponentSlotModule } from '@acorex/platform/common';\nimport { NgModule, inject } from '@angular/core';\nimport {\n ActivatedRouteSnapshot,\n CanActivateFn,\n ROUTES,\n Router,\n RouterModule,\n RouterStateSnapshot,\n Routes,\n} from '@angular/router';\nimport { firstValueFrom } from 'rxjs';\nimport { AXMAppChooserSlotComponent } from './app-chooser/app-chooser-slot.component';\nimport { AXMAuthProfileSlotComponent } from './profile/profile-slot.component';\n\nconst canActivateTenantChooser: CanActivateFn = async (route: ActivatedRouteSnapshot, state: RouterStateSnapshot) => {\n const sessionService = inject(AXPSessionService);\n const router = inject(Router);\n\n const tenants = await firstValueFrom(sessionService.tenants$);\n if (tenants.length == 0) {\n return router.createUrlTree(['/auth/login']);\n }\n if (tenants.length == 1) {\n await sessionService.setTenant(tenants[0]);\n return router.createUrlTree(['/auth/account/app-chooser']);\n }\n return true;\n};\n\nconst canActivateAppChooser: CanActivateFn = async (route: ActivatedRouteSnapshot, state: RouterStateSnapshot) => {\n const sessionService = inject(AXPSessionService);\n const router = inject(Router);\n const apps = await firstValueFrom(sessionService.applications$);\n if (apps.length == 0) {\n return router.createUrlTree(['/auth/login']);\n }\n if (apps.length == 1) {\n await sessionService.setApplication(apps[0]);\n return router.createUrlTree([`/${apps[0].name}/home`]);\n }\n return true;\n};\n\nfunction routesFacory() {\n let routes: Routes = [];\n routes = [\n {\n path: 'tenant-chooser',\n loadComponent: () =>\n import('./tenant-chooser/tenant-chooser.component').then((c) => c.AXPAuthTenantChooserComponent),\n canActivate: [AXPAuthGuard, canActivateTenantChooser],\n },\n {\n path: 'app-chooser',\n loadComponent: () => import('./app-chooser/app-chooser.component').then((c) => c.AXPAuthAppChooserComponent),\n canActivate: [AXPAuthGuard, canActivateAppChooser],\n },\n ];\n return routes;\n}\n\n@NgModule({\n declarations: [],\n imports: [\n RouterModule,\n //\n AXPComponentSlotModule.forChild({\n 'header-end': [\n {\n priority: 98,\n name: 'app-choser',\n component: AXMAppChooserSlotComponent,\n },\n {\n priority: 99,\n name: 'profile',\n component: AXMAuthProfileSlotComponent,\n },\n ],\n }),\n ],\n exports: [],\n providers: [\n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFacory,\n },\n ],\n})\nexport class AXPAccountModule {}\n","import { AXPMenuProvider, AXPMenuProviderContext } from '@acorex/platform/common';\n\nexport class AXMSecurityManagmentModuleMenuProvider implements AXPMenuProvider {\n async provide(context: AXPMenuProviderContext): Promise<void> {\n const scope = 'auth';\n context.addItems([\n {\n text: `t('profile.title', {scope: \"${scope}\"})`,\n name: 'user-profile',\n icon: 'fa-solid fa-user',\n children: [\n {\n text: `t('profile.edit', {scope: \"${scope}\"})`,\n name: 'edit-profile',\n },\n ],\n },\n {\n text: `t('management.title', {scope: \"${scope}\"})`,\n name: 'user-management',\n path: '/security',\n icon: 'fa-solid fa-lock',\n priority: 9001,\n data: {\n //requiredPermission: 'platform.admin.settings',\n },\n children: [\n {\n text: `t('management.users', {scope: \"${scope}\"})`,\n icon: 'fa-solid fa-users',\n priority: 1,\n },\n {\n text: `t('management.rols', {scope: \"${scope}\"})`,\n icon: 'fa-solid fa-key',\n priority: 2,\n },\n ],\n },\n ]);\n }\n}\n","import { AXP_MENU_PROVIDER, AXPCommonModule } from '@acorex/platform/common';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { EffectsModule } from '@ngrx/effects';\nimport { routes } from './auth.routes';\nimport { AXMAuthErrorHandler } from './error-handler';\nimport { AXPAuthEffects } from './store';\nimport { AXPAccountModule } from './account/account.module';\nimport { AXMSecurityManagmentModuleMenuProvider } from './menu.provider';\n\n\n@NgModule({\n imports: [\n CommonModule,\n AXPCommonModule.forChild({ errorHandlers: [AXMAuthErrorHandler] }),\n RouterModule.forChild(routes),\n EffectsModule.forFeature([AXPAuthEffects]),\n AXPAccountModule\n ],\n providers: [\n AXMAuthErrorHandler,\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMSecurityManagmentModuleMenuProvider,\n multi: true\n }\n ],\n})\nexport class AXMAuthModule {\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["switchMap","tap","i1","i2","i3","i4","i6","i8"],"mappings":"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"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import * as i0 from '@angular/core';
|
2
|
-
import { inject,
|
2
|
+
import { inject, Component, ViewEncapsulation } from '@angular/core';
|
3
3
|
import * as i3 from '@acorex/components/avatar';
|
4
4
|
import { AXAvatarModule } from '@acorex/components/avatar';
|
5
5
|
import { AXButtonModule } from '@acorex/components/button';
|
@@ -18,14 +18,8 @@ import { AXP_PLATFORM_CONFIG_TOKEN, AXPLogoComponent } from '@acorex/platform/co
|
|
18
18
|
import * as i1 from '@angular/common';
|
19
19
|
import { CommonModule } from '@angular/common';
|
20
20
|
import { Router } from '@angular/router';
|
21
|
-
import { b as AXPTenantChooserDropdownComponent, c as AXPAppChooserListComponent } from './acorex-modules-auth-acorex-modules-auth-
|
21
|
+
import { b as AXPTenantChooserDropdownComponent, c as AXPAppChooserListComponent } from './acorex-modules-auth-acorex-modules-auth-CtWwcZOU.mjs';
|
22
22
|
import { of } from 'rxjs';
|
23
|
-
import '@acorex/platform/themes/shared';
|
24
|
-
import '@angular/common/http';
|
25
|
-
import '@ngrx/effects';
|
26
|
-
import '@acorex/components/dialog';
|
27
|
-
import 'rxjs/operators';
|
28
|
-
import '@acorex/components/popover';
|
29
23
|
|
30
24
|
class AXPAuthAppChooserComponent {
|
31
25
|
constructor() {
|
@@ -43,10 +37,10 @@ class AXPAuthAppChooserComponent {
|
|
43
37
|
await this.sessionService.signout();
|
44
38
|
this.router.navigate(['/auth/login']);
|
45
39
|
}
|
46
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
47
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
40
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAuthAppChooserComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
41
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPAuthAppChooserComponent, isStandalone: true, selector: "axp-auth-app-chooser", ngImport: i0, template: "<main *translate=\"let t\"\n class=\"ax-w-full ax-space-y-10 ax-h-[100vh] ax-flex ax-flex-col ax-items-center ax-justify-center ax-bg-surface md:ax-bg-default\">\n <section>\n <axp-logo [source]=\"platformConfig.logo?.colored\" [attr.alt]=\"platformConfig.title\"\n class=\"ax-w-36 ax-mx-auto ax-text-2xl ax-font-bold\"></axp-logo>\n </section>\n <section class=\"ax-flex ax-justify-center\">\n <div\n class=\"ax-flex ax-gap-2 ax-justify-center ax-text-center ax-flex-col ax-items-center ax-border ax-rounded-lg ax-shadow-lg ax-p-6 md:ax-w-96 ax-w-80\">\n <ax-avatar class=\"ax-rounded-full\" [size]=\"72\">\n @if(user?.avatar){\n <ax-image [src]=\"user?.avatar\"></ax-image>\n }\n </ax-avatar>\n <h2 class=\"md:ax-text-lg ax-font-medium\">{{ t('welcome') | async }}, {{ user?.title }}</h2>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n <p class=\"ax-text-neutral-500 ax-text-sm md:ax-text-base ax-font-medium\">\n {{ t(\"application-chooser.description\", { scope: \"auth\" }) | async }}\n </p>\n <div class=\"ax-mt-3 ax-w-full ax-overflow-auto ax-max-h-[300px] ax-pe-2\">\n <axp-app-chooser-list></axp-app-chooser-list>\n </div>\n </div>\n </section>\n <section>\n <p class=\"ax-text-neutral-400 ax-text-sm\">\n {{ t(\"application-chooser.footer\", { scope: \"auth\" }) | async }}\n <ng-container *ngIf=\"tenants$ | async as tenants\">\n @if(tenants.length > 1){\n <a (click)=\"tenantChooser()\" class=\"ax-text-primary-500 ax-cursor-pointer ax-font-medium hover:ax-underline\">\n {{ t(\"application-chooser.backCompany\", { scope: \"auth\" }) | async }}\n </a>\n } @else {\n <a (click)=\"handleSignout()\" class=\"ax-text-primary-500 ax-font-medium ax-cursor-pointer hover:ax-underline\">\n {{ t(\"backLogin\", { scope: \"auth\" }) | async }}\n </a>\n }\n </ng-container>\n </p>\n </section>\n</main>", styles: [".gradient{background:-webkit-linear-gradient(var(--ax-current-v1),var(--ax-current-v2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXFormModule }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXLabelModule }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "ngmodule", type: AXAvatarModule }, { kind: "component", type: i3.AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "look"], outputs: ["sizeChange"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: AXPLogoComponent, selector: "axp-logo", inputs: ["source"] }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i9.AXTranslatorDirective, selector: "[translate]" }, { kind: "component", type: AXPTenantChooserDropdownComponent, selector: "axp-tenant-chooser-dropdown" }, { kind: "component", type: AXPAppChooserListComponent, selector: "axp-app-chooser-list" }], encapsulation: i0.ViewEncapsulation.None }); }
|
48
42
|
}
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAuthAppChooserComponent, decorators: [{
|
50
44
|
type: Component,
|
51
45
|
args: [{ selector: 'axp-auth-app-chooser', imports: [
|
52
46
|
CommonModule,
|
@@ -63,8 +57,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
63
57
|
AXTranslationModule,
|
64
58
|
AXPTenantChooserDropdownComponent,
|
65
59
|
AXPAppChooserListComponent
|
66
|
-
], encapsulation: ViewEncapsulation.None,
|
60
|
+
], encapsulation: ViewEncapsulation.None, template: "<main *translate=\"let t\"\n class=\"ax-w-full ax-space-y-10 ax-h-[100vh] ax-flex ax-flex-col ax-items-center ax-justify-center ax-bg-surface md:ax-bg-default\">\n <section>\n <axp-logo [source]=\"platformConfig.logo?.colored\" [attr.alt]=\"platformConfig.title\"\n class=\"ax-w-36 ax-mx-auto ax-text-2xl ax-font-bold\"></axp-logo>\n </section>\n <section class=\"ax-flex ax-justify-center\">\n <div\n class=\"ax-flex ax-gap-2 ax-justify-center ax-text-center ax-flex-col ax-items-center ax-border ax-rounded-lg ax-shadow-lg ax-p-6 md:ax-w-96 ax-w-80\">\n <ax-avatar class=\"ax-rounded-full\" [size]=\"72\">\n @if(user?.avatar){\n <ax-image [src]=\"user?.avatar\"></ax-image>\n }\n </ax-avatar>\n <h2 class=\"md:ax-text-lg ax-font-medium\">{{ t('welcome') | async }}, {{ user?.title }}</h2>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n <p class=\"ax-text-neutral-500 ax-text-sm md:ax-text-base ax-font-medium\">\n {{ t(\"application-chooser.description\", { scope: \"auth\" }) | async }}\n </p>\n <div class=\"ax-mt-3 ax-w-full ax-overflow-auto ax-max-h-[300px] ax-pe-2\">\n <axp-app-chooser-list></axp-app-chooser-list>\n </div>\n </div>\n </section>\n <section>\n <p class=\"ax-text-neutral-400 ax-text-sm\">\n {{ t(\"application-chooser.footer\", { scope: \"auth\" }) | async }}\n <ng-container *ngIf=\"tenants$ | async as tenants\">\n @if(tenants.length > 1){\n <a (click)=\"tenantChooser()\" class=\"ax-text-primary-500 ax-cursor-pointer ax-font-medium hover:ax-underline\">\n {{ t(\"application-chooser.backCompany\", { scope: \"auth\" }) | async }}\n </a>\n } @else {\n <a (click)=\"handleSignout()\" class=\"ax-text-primary-500 ax-font-medium ax-cursor-pointer hover:ax-underline\">\n {{ t(\"backLogin\", { scope: \"auth\" }) | async }}\n </a>\n }\n </ng-container>\n </p>\n </section>\n</main>", styles: [".gradient{background:-webkit-linear-gradient(var(--ax-current-v1),var(--ax-current-v2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}\n"] }]
|
67
61
|
}] });
|
68
62
|
|
69
63
|
export { AXPAuthAppChooserComponent };
|
70
|
-
//# sourceMappingURL=acorex-modules-auth-app-chooser.component-
|
64
|
+
//# sourceMappingURL=acorex-modules-auth-app-chooser.component-BK4Hs5OP.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-auth-app-chooser.component-BK4Hs5OP.mjs","sources":["../../../../libs/modules/auth/src/lib/account/app-chooser/app-chooser.component.ts","../../../../libs/modules/auth/src/lib/account/app-chooser/app-chooser.component.html"],"sourcesContent":["import { Component, ViewEncapsulation, inject } from '@angular/core';\n\nimport { AXAvatarModule } from '@acorex/components/avatar';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXCheckBoxModule } from '@acorex/components/check-box';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXImageModule } from '@acorex/components/image';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXPLogoComponent, AXP_PLATFORM_CONFIG_TOKEN } from '@acorex/platform/common';\nimport { CommonModule } from '@angular/common';\nimport { Router } from '@angular/router';\nimport { AXPTenantChooserDropdownComponent } from '../tenant-chooser/tenant-chooser-dropdown.component';\nimport { AXPAppChooserListComponent } from './app-chooser-list.component';\nimport { of } from 'rxjs';\n\n@Component({\n selector: 'axp-auth-app-chooser',\n templateUrl: './app-chooser.component.html',\n styleUrls: ['./app-chooser.component.scss'],\n imports: [\n CommonModule,\n AXFormModule,\n AXTextBoxModule,\n AXButtonModule,\n AXLabelModule,\n AXCheckBoxModule,\n AXAvatarModule,\n AXImageModule,\n AXDecoratorModule,\n AXPLogoComponent,\n AXLoadingModule,\n AXTranslationModule,\n AXPTenantChooserDropdownComponent,\n AXPAppChooserListComponent\n ],\n encapsulation: ViewEncapsulation.None\n})\nexport class AXPAuthAppChooserComponent {\n\n private router = inject(Router);\n protected platformConfig = inject(AXP_PLATFORM_CONFIG_TOKEN);\n private sessionService = inject(AXPSessionService);\n\n protected user = this.sessionService.user;\n protected tenants$ = of([])//this.sessionService.tenants$;\n protected tenant = this.sessionService.tenant;\n\n\n tenantChooser() {\n this.router.navigate(['/auth/account/tenant-chooser']);\n }\n\n async handleSignout() {\n await this.sessionService.signout();\n this.router.navigate(['/auth/login']);\n }\n\n\n}\n","<main *translate=\"let t\"\n class=\"ax-w-full ax-space-y-10 ax-h-[100vh] ax-flex ax-flex-col ax-items-center ax-justify-center ax-bg-surface md:ax-bg-default\">\n <section>\n <axp-logo [source]=\"platformConfig.logo?.colored\" [attr.alt]=\"platformConfig.title\"\n class=\"ax-w-36 ax-mx-auto ax-text-2xl ax-font-bold\"></axp-logo>\n </section>\n <section class=\"ax-flex ax-justify-center\">\n <div\n class=\"ax-flex ax-gap-2 ax-justify-center ax-text-center ax-flex-col ax-items-center ax-border ax-rounded-lg ax-shadow-lg ax-p-6 md:ax-w-96 ax-w-80\">\n <ax-avatar class=\"ax-rounded-full\" [size]=\"72\">\n @if(user?.avatar){\n <ax-image [src]=\"user?.avatar\"></ax-image>\n }\n </ax-avatar>\n <h2 class=\"md:ax-text-lg ax-font-medium\">{{ t('welcome') | async }}, {{ user?.title }}</h2>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n <p class=\"ax-text-neutral-500 ax-text-sm md:ax-text-base ax-font-medium\">\n {{ t(\"application-chooser.description\", { scope: \"auth\" }) | async }}\n </p>\n <div class=\"ax-mt-3 ax-w-full ax-overflow-auto ax-max-h-[300px] ax-pe-2\">\n <axp-app-chooser-list></axp-app-chooser-list>\n </div>\n </div>\n </section>\n <section>\n <p class=\"ax-text-neutral-400 ax-text-sm\">\n {{ t(\"application-chooser.footer\", { scope: \"auth\" }) | async }}\n <ng-container *ngIf=\"tenants$ | async as tenants\">\n @if(tenants.length > 1){\n <a (click)=\"tenantChooser()\" class=\"ax-text-primary-500 ax-cursor-pointer ax-font-medium hover:ax-underline\">\n {{ t(\"application-chooser.backCompany\", { scope: \"auth\" }) | async }}\n </a>\n } @else {\n <a (click)=\"handleSignout()\" class=\"ax-text-primary-500 ax-font-medium ax-cursor-pointer hover:ax-underline\">\n {{ t(\"backLogin\", { scope: \"auth\" }) | async }}\n </a>\n }\n </ng-container>\n </p>\n </section>\n</main>"],"names":["i2","i3","i4"],"mappings":"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"}
|
@@ -6,13 +6,13 @@ import { RouterModule } from '@angular/router';
|
|
6
6
|
class AXPAuthBlankLayoutComponent {
|
7
7
|
constructor() { }
|
8
8
|
ngOnInit() { }
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
10
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAuthBlankLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
10
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXPAuthBlankLayoutComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<router-outlet></router-outlet>", dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] }); }
|
11
11
|
}
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPAuthBlankLayoutComponent, decorators: [{
|
13
13
|
type: Component,
|
14
|
-
args: [{ imports: [RouterModule],
|
14
|
+
args: [{ imports: [RouterModule], template: "<router-outlet></router-outlet>" }]
|
15
15
|
}], ctorParameters: () => [] });
|
16
16
|
|
17
17
|
export { AXPAuthBlankLayoutComponent };
|
18
|
-
//# sourceMappingURL=acorex-modules-auth-blank.layout-
|
18
|
+
//# sourceMappingURL=acorex-modules-auth-blank.layout-B1a0710P.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-auth-blank.layout-B1a0710P.mjs","sources":["../../../../libs/modules/auth/src/lib/shared/layouts/blank/blank.layout.ts","../../../../libs/modules/auth/src/lib/shared/layouts/blank/blank.layout.html"],"sourcesContent":["import { Component, OnInit } from '@angular/core';\nimport { RouterModule } from '@angular/router';\n\n@Component({\n templateUrl: 'blank.layout.html',\n imports: [RouterModule]\n})\nexport class AXPAuthBlankLayoutComponent implements OnInit {\n constructor() { }\n\n ngOnInit() { }\n}\n","<router-outlet></router-outlet>"],"names":["i1"],"mappings":";;;;;MAOa,2BAA2B,CAAA;AACtC,IAAA,WAAA,GAAA;AAEA,IAAA,QAAQ;8GAHG,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA3B,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECPxC,iCAA+B,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDKjB,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,kBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;2FAEb,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAJvC,SAAS;AAEG,YAAA,IAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,iCAAA,EAAA;;;;;"}
|