@acorex/modules 18.2.1 → 18.2.2
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/application-management/lib/const.d.ts +5 -0
- package/application-management/lib/menu.provider.d.ts +3 -3
- package/auth/lib/auth.config.d.ts +6 -0
- package/auth/lib/login/password/password.component.d.ts +1 -0
- package/auth/lib/menu.provider.d.ts +2 -2
- package/conversation/index.d.ts +5 -3
- package/conversation/lib/const.d.ts +7 -0
- package/conversation/lib/conversation.module.d.ts +1 -4
- package/conversation/lib/entities/chat/chat.module.d.ts +10 -4
- package/conversation/lib/entities/chat/chat.service.d.ts +14 -0
- package/conversation/lib/entities/chat/chat.type.d.ts +2 -1
- package/conversation/lib/entities/chat/components/chat-item/chat-item.component.d.ts +11 -11
- package/conversation/lib/entities/chat/components/chat-item-header/chat-item-header.component.d.ts +8 -1
- package/conversation/lib/entities/chat/components/chat-preview/chat-preview.component.d.ts +7 -4
- package/conversation/lib/entities/chat/components/chat-preview-header/chat-preview-header.component.d.ts +7 -0
- package/conversation/lib/entities/chat/pages/chat/chat.component.d.ts +19 -1
- package/conversation/lib/entities/comments/comments.service.d.ts +3 -3
- package/esm2022/application-management/lib/const.mjs +6 -0
- package/esm2022/application-management/lib/layouts/module-entity-detail-view/module-entity-detail-view.component.mjs +2 -2
- package/esm2022/application-management/lib/menu.provider.mjs +17 -19
- package/esm2022/application-management/lib/module-designer/module-designer.component.mjs +3 -3
- package/esm2022/auth/lib/account/app-chooser/app-chooser.component.mjs +3 -3
- package/esm2022/auth/lib/account/tenant-chooser/tenant-chooser.component.mjs +3 -3
- package/esm2022/auth/lib/auth.config.mjs +1 -1
- package/esm2022/auth/lib/forgot/password/password.component.mjs +2 -2
- package/esm2022/auth/lib/login/password/password.component.mjs +6 -3
- package/esm2022/auth/lib/menu.provider.mjs +28 -35
- package/esm2022/auth/lib/two-factor/two-factor-code/two-factor-code.component.mjs +2 -2
- package/esm2022/backend/lib/data/api/data-provider.mjs +7 -2
- package/esm2022/conversation/index.mjs +6 -4
- package/esm2022/conversation/lib/const.mjs +8 -0
- package/esm2022/conversation/lib/conversation.module.mjs +5 -10
- package/esm2022/conversation/lib/entities/chat/chat.module.mjs +64 -13
- package/esm2022/conversation/lib/entities/chat/chat.service.mjs +23 -0
- package/esm2022/conversation/lib/entities/chat/chat.type.mjs +1 -1
- package/esm2022/conversation/lib/entities/chat/components/chat-item/chat-item.component.mjs +33 -15
- package/esm2022/conversation/lib/entities/chat/components/chat-item-header/chat-item-header.component.mjs +18 -5
- package/esm2022/conversation/lib/entities/chat/components/chat-preview/chat-preview.component.mjs +34 -147
- package/esm2022/conversation/lib/entities/chat/components/chat-preview-header/chat-preview-header.component.mjs +22 -0
- package/esm2022/conversation/lib/entities/chat/pages/chat/chat.component.mjs +73 -8
- package/esm2022/conversation/lib/entities/comments/comment.module.mjs +4 -4
- package/esm2022/conversation/lib/entities/comments/comments.service.mjs +7 -6
- package/esm2022/conversation/lib/entities/comments/pages/comment-list-view.component.mjs +2 -3
- package/esm2022/form-template-management/lib/components/widgets/template-designer/index.mjs +3 -0
- package/esm2022/form-template-management/lib/components/widgets/template-designer/template-designer-widget-view.component.mjs +44 -0
- package/esm2022/form-template-management/lib/components/widgets/template-designer/template-designer-widget.config.mjs +23 -0
- package/esm2022/form-template-management/lib/const.mjs +2 -2
- package/esm2022/form-template-management/lib/entities/category/category.entity.mjs +13 -13
- package/esm2022/form-template-management/lib/entities/template/template.entity.mjs +208 -15
- package/esm2022/form-template-management/lib/entities/template/template.types.mjs +1 -1
- package/esm2022/form-template-management/lib/form-template-management.module.mjs +60 -4
- package/esm2022/form-template-management/lib/menu.provider.mjs +16 -29
- package/esm2022/form-template-management/lib/pages/designer/designer.page.mjs +9 -4
- package/esm2022/form-template-management/lib/services/designer-connector.service.mjs +33 -0
- package/esm2022/form-template-management/lib/services/template.provider.mjs +31 -0
- package/esm2022/form-template-management/lib/workflows/create-template.workflow.mjs +40 -0
- package/esm2022/form-template-management/lib/workflows/design-template.workflow.mjs +32 -0
- package/esm2022/localization-management/lib/const.mjs +9 -0
- package/esm2022/localization-management/lib/menu.provider.mjs +33 -35
- package/esm2022/notification-management/lib/admin-notification-slot/admin-notification-item/admin-notification-item.component.mjs +3 -3
- package/esm2022/notification-management/lib/const.mjs +9 -0
- package/esm2022/notification-management/lib/entities/my-notification.mjs +5 -5
- package/esm2022/notification-management/lib/entities/notification-template.entity.mjs +4 -4
- package/esm2022/notification-management/lib/entities/notification.entity.mjs +4 -4
- package/esm2022/notification-management/lib/menu.provider.mjs +39 -37
- package/esm2022/platform-management/lib/common/country/country.entity.mjs +2 -2
- package/esm2022/platform-management/lib/common/province/province.entity.mjs +8 -8
- package/esm2022/platform-management/lib/const.mjs +12 -0
- package/esm2022/platform-management/lib/global-variables/entities/global-variable.entity.mjs +5 -4
- package/esm2022/platform-management/lib/global-variables/entity.loader.mjs +8 -11
- package/esm2022/platform-management/lib/menu.provider.mjs +53 -47
- package/esm2022/setting-management/acorex-modules-setting-management.mjs +5 -0
- package/esm2022/setting-management/index.mjs +5 -0
- package/esm2022/setting-management/lib/const.mjs +7 -0
- package/esm2022/setting-management/lib/entities/index.mjs +2 -0
- package/esm2022/setting-management/lib/entities/setting/index.mjs +5 -0
- package/esm2022/setting-management/lib/entities/setting/setting.entity.mjs +244 -0
- package/esm2022/setting-management/lib/entities/setting/setting.module.mjs +28 -0
- package/esm2022/setting-management/lib/entities/setting/setting.service.mjs +17 -0
- package/esm2022/setting-management/lib/entities/setting/setting.types.mjs +2 -0
- package/esm2022/setting-management/lib/entity.provider.mjs +25 -0
- package/esm2022/setting-management/lib/menu.provider.mjs +32 -0
- package/esm2022/setting-management/lib/setting-management.module.mjs +44 -0
- package/esm2022/text-template-management/acorex-modules-text-template-management.mjs +5 -0
- package/esm2022/text-template-management/index.mjs +6 -0
- package/esm2022/text-template-management/lib/const.mjs +8 -0
- package/esm2022/text-template-management/lib/entities/category/category.entity.mjs +257 -0
- package/esm2022/text-template-management/lib/entities/category/category.module.mjs +28 -0
- package/esm2022/text-template-management/lib/entities/category/category.service.mjs +17 -0
- package/esm2022/text-template-management/lib/entities/category/category.types.mjs +2 -0
- package/esm2022/text-template-management/lib/entities/category/index.mjs +5 -0
- package/esm2022/text-template-management/lib/entities/index.mjs +3 -0
- package/esm2022/text-template-management/lib/entities/template/index.mjs +5 -0
- package/esm2022/text-template-management/lib/entities/template/template.entity.mjs +405 -0
- package/esm2022/text-template-management/lib/entities/template/template.module.mjs +28 -0
- package/esm2022/text-template-management/lib/entities/template/template.service.mjs +17 -0
- package/esm2022/text-template-management/lib/entities/template/template.types.mjs +2 -0
- package/esm2022/text-template-management/lib/entity.provider.mjs +29 -0
- package/esm2022/text-template-management/lib/menu.provider.mjs +37 -0
- package/esm2022/text-template-management/lib/setting.provider.mjs +48 -0
- package/esm2022/text-template-management/lib/text-template-management.module.mjs +56 -0
- package/fesm2022/{acorex-modules-application-management-module-designer.component-CaR_HZfL.mjs → acorex-modules-application-management-module-designer.component-DjRdIBQt.mjs} +4 -4
- package/fesm2022/{acorex-modules-application-management-module-designer.component-CaR_HZfL.mjs.map → acorex-modules-application-management-module-designer.component-DjRdIBQt.mjs.map} +1 -1
- package/fesm2022/acorex-modules-application-management.mjs +26 -23
- package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-BVOt-gis.mjs → acorex-modules-auth-acorex-modules-auth-Chw_5AKM.mjs} +37 -44
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-Chw_5AKM.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-app-chooser.component-DhPEtLuK.mjs → acorex-modules-auth-app-chooser.component-DN04Uoqa.mjs} +5 -5
- package/fesm2022/acorex-modules-auth-app-chooser.component-DN04Uoqa.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-login.module-sFVL-lYB.mjs → acorex-modules-auth-login.module-Bir7SJ8b.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-login.module-sFVL-lYB.mjs.map → acorex-modules-auth-login.module-Bir7SJ8b.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-master.layout-Bnt5qiio.mjs → acorex-modules-auth-master.layout-DwijDvUp.mjs} +3 -3
- package/fesm2022/{acorex-modules-auth-master.layout-Bnt5qiio.mjs.map → acorex-modules-auth-master.layout-DwijDvUp.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-ClaRp38G.mjs → acorex-modules-auth-password.component-C1S8V4Bw.mjs} +9 -6
- package/fesm2022/acorex-modules-auth-password.component-C1S8V4Bw.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-password.component-BXL-aLTx.mjs → acorex-modules-auth-password.component-CuLQNJ-W.mjs} +3 -3
- package/fesm2022/{acorex-modules-auth-password.component-BXL-aLTx.mjs.map → acorex-modules-auth-password.component-CuLQNJ-W.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-routes-MDneFw2m.mjs → acorex-modules-auth-routes-ILpWODmz.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-routes-MDneFw2m.mjs.map → acorex-modules-auth-routes-ILpWODmz.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-6qDoCUBo.mjs +83 -0
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-6qDoCUBo.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-two-factor-code.component-B_7l39pX.mjs → acorex-modules-auth-two-factor-code.component-BJKmvI7y.mjs} +3 -3
- package/fesm2022/{acorex-modules-auth-two-factor-code.component-B_7l39pX.mjs.map → acorex-modules-auth-two-factor-code.component-BJKmvI7y.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-two-factor.module-BHulbf0N.mjs → acorex-modules-auth-two-factor.module-bgwR1LBc.mjs} +3 -3
- package/fesm2022/{acorex-modules-auth-two-factor.module-BHulbf0N.mjs.map → acorex-modules-auth-two-factor.module-bgwR1LBc.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth.mjs +1 -1
- package/fesm2022/acorex-modules-backend.mjs +7 -2
- package/fesm2022/acorex-modules-backend.mjs.map +1 -1
- package/fesm2022/acorex-modules-conversation.mjs +285 -230
- package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
- package/fesm2022/{acorex-modules-form-template-management-designer.page-DC18KFvK.mjs → acorex-modules-form-template-management-designer.page-NhIPhsRs.mjs} +9 -4
- package/fesm2022/acorex-modules-form-template-management-designer.page-NhIPhsRs.mjs.map +1 -0
- package/fesm2022/acorex-modules-form-template-management.mjs +486 -64
- package/fesm2022/acorex-modules-form-template-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-localization-management.mjs +41 -35
- package/fesm2022/acorex-modules-localization-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-notification-management.mjs +59 -51
- package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-platform-management.mjs +81 -69
- package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-setting-management.mjs +393 -0
- package/fesm2022/acorex-modules-setting-management.mjs.map +1 -0
- package/fesm2022/{acorex-modules-template-management.mjs → acorex-modules-text-template-management.mjs} +275 -502
- package/fesm2022/acorex-modules-text-template-management.mjs.map +1 -0
- package/form-template-management/lib/components/widgets/template-designer/index.d.ts +2 -0
- package/form-template-management/lib/components/widgets/template-designer/template-designer-widget-view.component.d.ts +8 -0
- package/form-template-management/lib/components/widgets/template-designer/template-designer-widget.config.d.ts +7 -0
- package/form-template-management/lib/entities/template/template.types.d.ts +2 -0
- package/form-template-management/lib/form-template-management.module.d.ts +3 -1
- package/form-template-management/lib/menu.provider.d.ts +2 -2
- package/form-template-management/lib/pages/designer/designer.page.d.ts +2 -0
- package/form-template-management/lib/services/designer-connector.service.d.ts +7 -0
- package/form-template-management/lib/services/template.provider.d.ts +8 -0
- package/form-template-management/lib/workflows/create-template.workflow.d.ts +2 -0
- package/form-template-management/lib/workflows/design-template.workflow.d.ts +9 -0
- package/localization-management/lib/const.d.ts +8 -0
- package/localization-management/lib/menu.provider.d.ts +3 -3
- package/notification-management/lib/const.d.ts +8 -0
- package/notification-management/lib/menu.provider.d.ts +3 -2
- package/package.json +32 -32
- package/platform-management/lib/const.d.ts +11 -0
- package/platform-management/lib/menu.provider.d.ts +3 -3
- package/setting-management/README.md +3 -0
- package/setting-management/index.d.ts +4 -0
- package/setting-management/lib/const.d.ts +6 -0
- package/setting-management/lib/entities/index.d.ts +1 -0
- package/setting-management/lib/entities/setting/index.d.ts +4 -0
- package/{template-management/lib/entities/text-template.entity.d.ts → setting-management/lib/entities/setting/setting.entity.d.ts} +1 -1
- package/setting-management/lib/entities/setting/setting.module.d.ts +6 -0
- package/setting-management/lib/entities/setting/setting.service.d.ts +10 -0
- package/setting-management/lib/entities/setting/setting.types.d.ts +5 -0
- package/setting-management/lib/entity.provider.d.ts +9 -0
- package/setting-management/lib/menu.provider.d.ts +5 -0
- package/setting-management/lib/setting-management.module.d.ts +7 -0
- package/text-template-management/README.md +3 -0
- package/text-template-management/index.d.ts +5 -0
- package/text-template-management/lib/const.d.ts +7 -0
- package/text-template-management/lib/entities/category/category.entity.d.ts +3 -0
- package/text-template-management/lib/entities/category/category.module.d.ts +6 -0
- package/text-template-management/lib/entities/category/category.service.d.ts +10 -0
- package/text-template-management/lib/entities/category/category.types.d.ts +5 -0
- package/text-template-management/lib/entities/category/index.d.ts +4 -0
- package/text-template-management/lib/entities/index.d.ts +2 -0
- package/text-template-management/lib/entities/template/index.d.ts +4 -0
- package/text-template-management/lib/entities/template/template.entity.d.ts +3 -0
- package/text-template-management/lib/entities/template/template.module.d.ts +6 -0
- package/text-template-management/lib/entities/template/template.service.d.ts +10 -0
- package/text-template-management/lib/entities/template/template.types.d.ts +9 -0
- package/text-template-management/lib/entity.provider.d.ts +9 -0
- package/text-template-management/lib/menu.provider.d.ts +5 -0
- package/text-template-management/lib/setting.provider.d.ts +4 -0
- package/text-template-management/lib/text-template-management.module.d.ts +8 -0
- package/conversation/lib/entities/chat/components/chat-items/chat-items.component.d.ts +0 -6
- package/converstion-test/README.md +0 -4
- package/converstion-test/index.d.ts +0 -1
- package/converstion-test/lib/converstion-test.module.d.ts +0 -6
- package/esm2022/conversation/lib/entities/chat/components/chat-items/chat-items.component.mjs +0 -15
- package/esm2022/converstion-test/acorex-modules-converstion-test.mjs +0 -5
- package/esm2022/converstion-test/index.mjs +0 -2
- package/esm2022/converstion-test/lib/converstion-test.module.mjs +0 -16
- package/esm2022/template-management/acorex-modules-template-management.mjs +0 -5
- package/esm2022/template-management/index.mjs +0 -8
- package/esm2022/template-management/lib/entities/category.entity.mjs +0 -251
- package/esm2022/template-management/lib/entities/index.mjs +0 -4
- package/esm2022/template-management/lib/entities/template-variable.entity.mjs +0 -308
- package/esm2022/template-management/lib/entities/text-template.entity.mjs +0 -411
- package/esm2022/template-management/lib/entity.provider.mjs +0 -32
- package/esm2022/template-management/lib/menu.provider.mjs +0 -43
- package/esm2022/template-management/lib/template-management.module.mjs +0 -61
- package/esm2022/template-management/lib/template-management.types.mjs +0 -2
- package/esm2022/template-management/lib/template.service.mjs +0 -17
- package/esm2022/template-management/lib/text-management.source.mjs +0 -3
- package/esm2022/template-management/lib/text-template-category.service.mjs +0 -17
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-BVOt-gis.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-app-chooser.component-DhPEtLuK.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-password.component-ClaRp38G.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-CHr5_kh7.mjs +0 -83
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-CHr5_kh7.mjs.map +0 -1
- package/fesm2022/acorex-modules-converstion-test.mjs +0 -23
- package/fesm2022/acorex-modules-converstion-test.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-template-management-designer.page-DC18KFvK.mjs.map +0 -1
- package/fesm2022/acorex-modules-template-management.mjs.map +0 -1
- package/template-management/README.md +0 -3
- package/template-management/index.d.ts +0 -7
- package/template-management/lib/entities/category.entity.d.ts +0 -3
- package/template-management/lib/entities/index.d.ts +0 -3
- package/template-management/lib/entities/template-variable.entity.d.ts +0 -3
- package/template-management/lib/entity.provider.d.ts +0 -9
- package/template-management/lib/menu.provider.d.ts +0 -5
- package/template-management/lib/template-management.module.d.ts +0 -6
- package/template-management/lib/template-management.types.d.ts +0 -19
- package/template-management/lib/template.service.d.ts +0 -10
- package/template-management/lib/text-management.source.d.ts +0 -2
- package/template-management/lib/text-template-category.service.d.ts +0 -10
|
@@ -128,7 +128,7 @@ export class AXMModuleDesignerComponent {
|
|
|
128
128
|
set(target, 'data', data);
|
|
129
129
|
}
|
|
130
130
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMModuleDesignerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
131
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXMModuleDesignerComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "contextMenu", first: true, predicate: ["contextMenu"], descendants: true, isSignal: true }], ngImport: i0, template: "<ax-drawer-container class=\"ax-overflow-hidden\">\n <ax-drawer #drawer location=\"start\" [collapsed]=\"false\" [mode]=\"'push'\">\n <ax-content class=\"ax-w-80 ax-relative ax-border-e ax-px-4 ax-py-2\">\n <div class=\"ax-overflow-auto ax-h-[calc(100vh-180px)]\">\n <span class=\"ax-font-bold ax-text-xl\">{{ 'designer.modules' | translate | async }}</span>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-mt-4\">\n @if(modules().length){\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n @for(m of modules();track $index){\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-folder ax-text-warning\"\n [isCollapsed]=\"true\"\n [caption]=\"m.title\"\n look=\"none\"\n data-elementType=\"module\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"module\"\n >\n <div class=\"ax-mx-3\">\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-box ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'entity')\"\n [caption]=\"('designer.entities' | translate | async) ?? 'Entities'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"entity\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'entity', items: getEntities(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-star ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'feature')\"\n [caption]=\"('designer.features' | translate | async) ?? 'Features'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"feature\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'feature', items: getFeatures(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-key ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'permission')\"\n [caption]=\"('designer.permissions' | translate | async) ?? 'Permissions'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"permission\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'permission', items: getPermissions(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n </ax-collapse-group>\n </div>\n </ax-collapse>\n }\n </ax-collapse-group>\n } @else {\n <div class=\"ax-h-full ax-flex ax-items-center ax-justify-center\">\n <span class=\"ax-text-neutral-500 ax-text-sm\">{{ 'designer.emptyModulesText' | translate | async }}</span>\n </div>\n }\n </div>\n <ax-button\n class=\"ax-absolute ax-bottom-4 ax-w-72\"\n [text]=\"('designer.createModule' | translate | async) ?? 'Create New Module'\"\n (onClick)=\"createModule()\"\n look=\"solid\"\n color=\"primary\"\n >\n <ax-icon class=\"fas fa-plus\"> </ax-icon>\n </ax-button>\n </div>\n </ax-content>\n\n <ng-template #childTemplate let-child>\n <div class=\"ax-flex ax-flex-col ax-cursor-pointer ax-select-none ax-border-s ax-ms-[14px] ax-ps-2\">\n @for (item of child.items; track $index) {\n\n <div\n #d\n (click)=\"contextMenuService.showDetails(child.type, item.id)\"\n class=\"ctx ax-px-2 ax-py-1 ax-flex ax-items-center ax-justify-between hover:ax-bg-neutral-100 dark:hover:ax-bg-neutral-700 hover:ax-rounded-md\"\n data-elementType=\"subModuleItem\"\n >\n {{ assignData(d, { record: item, entityType: child.type, moduleId: child.moduleId }) }}\n <span>{{ item.title }}</span>\n <ax-badge\n [look]=\"'twotone'\"\n [color]=\"item.isArchived ? 'danger' : 'success'\"\n [text]=\"item.isArchived ? 'Off' : 'On'\"\n >\n </ax-badge>\n </div>\n }\n </div>\n </ng-template>\n </ax-drawer>\n <ax-content>\n <router-outlet></router-outlet>\n </ax-content>\n</ax-drawer-container>\n\n<ax-context-menu\n #contextMenu\n (onItemClick)=\"handleActionClick($event)\"\n [items]=\"[]\"\n [target]=\"'.ctx'\"\n [orientation]=\"'vertical'\"\n [closeOn]=\"'leave'\"\n (onOpening)=\"openingContextMenu($event)\"\n>\n</ax-context-menu>\n", styles: [".ax-collapse-header{padding:.25rem .5rem!important}.ax-collapse-header:hover{border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-neutral-100),var(--tw-bg-opacity))}.ax-collapse-header:hover:is(.ax-dark *){--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-neutral-700),var(--tw-bg-opacity))}.ax-collapse-body-content{padding:.25rem!important;padding-inline-start:0!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXDrawerModule }, { kind: "component", type: i2.AXDrawerComponent, selector: "ax-drawer", inputs: ["location", "showBackdrop", "mode", "closeOthers", "collapsed"], outputs: ["locationChange", "modeChange", "collapsedChange"] }, { kind: "component", type: i2.AXDrawerContainerComponent, selector: "ax-drawer-container" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i3.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: i4.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i4.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: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i5.AXTranslatorPipe, name: "translate" }, { kind: "ngmodule", type: AXSideMenuModule }, { kind: "ngmodule", type: AXCollapseModule }, { kind: "component", type: i6.AXCollapseComponent, selector: "ax-collapse", inputs: ["disabled", "look", "isCollapsed", "showHeader", "caption", "icon", "isLoading", "headerTemplate"], outputs: ["onClick", "isCollapsedChange"] }, { kind: "component", type: i6.AXCollapseGroupComponent, selector: "ax-collapse-group", inputs: ["look", "accordion", "activeIndex"], outputs: ["accordionChange", "activeIndexChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i7.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXMenuModule }, { kind: "component", type: i8.AXContextMenuComponent, selector: "ax-context-menu", inputs: ["orientation", "openOn", "closeOn", "items", "target"], outputs: ["onItemClick", "onOpening"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i9.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
131
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXMModuleDesignerComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "contextMenu", first: true, predicate: ["contextMenu"], descendants: true, isSignal: true }], ngImport: i0, template: "<ax-drawer-container class=\"ax-overflow-hidden\">\n <ax-drawer #drawer location=\"start\" [collapsed]=\"false\" [mode]=\"'push'\">\n <ax-content class=\"ax-w-80 ax-relative ax-border-e ax-px-4 ax-py-2\">\n <div class=\"ax-overflow-auto ax-h-[calc(100vh-180px)]\">\n <span class=\"ax-font-bold ax-text-xl\">{{ 'designer.modules' | translate | async }}</span>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-mt-4\">\n @if(modules().length){\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n @for(m of modules();track $index){\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-folder ax-text-warning\"\n [isCollapsed]=\"true\"\n [caption]=\"m.title\"\n look=\"none\"\n data-elementType=\"module\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"module\"\n >\n <div class=\"ax-mx-3\">\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-box ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'entity')\"\n [caption]=\"('designer.entities' | translate | async) ?? 'Entities'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"entity\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'entity', items: getEntities(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-star ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'feature')\"\n [caption]=\"('designer.features' | translate | async) ?? 'Features'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"feature\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'feature', items: getFeatures(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-key ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'permission')\"\n [caption]=\"('designer.permissions' | translate | async) ?? 'Permissions'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"permission\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'permission', items: getPermissions(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n </ax-collapse-group>\n </div>\n </ax-collapse>\n }\n </ax-collapse-group>\n } @else {\n <div class=\"ax-h-full ax-flex ax-items-center ax-justify-center\">\n <span class=\"ax-text-neutral-500 ax-text-sm\">{{ 'designer.emptyModulesText' | translate | async }}</span>\n </div>\n }\n </div>\n <ax-button\n class=\"ax-absolute ax-bottom-4 ax-w-72\"\n [text]=\"('designer.createModule' | translate | async) ?? 'Create New Module'\"\n (onClick)=\"createModule()\"\n look=\"solid\"\n color=\"primary\"\n >\n <ax-icon class=\"fas fa-plus\"> </ax-icon>\n </ax-button>\n </div>\n </ax-content>\n\n <ng-template #childTemplate let-child>\n <div class=\"ax-flex ax-flex-col ax-cursor-pointer ax-select-none ax-border-s ax-ms-[14px] ax-ps-2\">\n @for (item of child.items; track $index) {\n\n <div\n #d\n (click)=\"contextMenuService.showDetails(child.type, item.id)\"\n class=\"ctx ax-px-2 ax-py-1 ax-flex ax-items-center ax-justify-between hover:ax-bg-neutral-100 dark:hover:ax-bg-neutral-700 hover:ax-rounded-md\"\n data-elementType=\"subModuleItem\"\n >\n {{ assignData(d, { record: item, entityType: child.type, moduleId: child.moduleId }) }}\n <span>{{ item.title }}</span>\n <ax-badge\n [look]=\"'twotone'\"\n [color]=\"item.isArchived ? 'danger' : 'success'\"\n [text]=\"item.isArchived ? 'Off' : 'On'\"\n >\n </ax-badge>\n </div>\n }\n </div>\n </ng-template>\n </ax-drawer>\n <ax-content>\n <router-outlet></router-outlet>\n </ax-content>\n</ax-drawer-container>\n\n<ax-context-menu\n #contextMenu\n (onItemClick)=\"handleActionClick($event)\"\n [items]=\"[]\"\n [target]=\"'.ctx'\"\n [orientation]=\"'vertical'\"\n [closeOn]=\"'leave'\"\n (onOpening)=\"openingContextMenu($event)\"\n>\n</ax-context-menu>\n", styles: [".ax-collapse-header{padding:.25rem .5rem!important}.ax-collapse-header:hover{border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-neutral-100),var(--tw-bg-opacity, 1))}.ax-collapse-header:hover:is(.ax-dark *){--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-neutral-700),var(--tw-bg-opacity, 1))}.ax-collapse-body-content{padding:.25rem!important;padding-inline-start:0!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXDrawerModule }, { kind: "component", type: i2.AXDrawerComponent, selector: "ax-drawer", inputs: ["location", "showBackdrop", "mode", "closeOthers", "collapsed"], outputs: ["locationChange", "modeChange", "collapsedChange"] }, { kind: "component", type: i2.AXDrawerContainerComponent, selector: "ax-drawer-container" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i3.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: i4.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i4.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: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i5.AXTranslatorPipe, name: "translate" }, { kind: "ngmodule", type: AXSideMenuModule }, { kind: "ngmodule", type: AXCollapseModule }, { kind: "component", type: i6.AXCollapseComponent, selector: "ax-collapse", inputs: ["disabled", "look", "isCollapsed", "showHeader", "caption", "icon", "isLoading", "headerTemplate"], outputs: ["onClick", "isCollapsedChange"] }, { kind: "component", type: i6.AXCollapseGroupComponent, selector: "ax-collapse-group", inputs: ["look", "accordion", "activeIndex"], outputs: ["accordionChange", "activeIndexChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "component", type: i7.AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "ngmodule", type: AXMenuModule }, { kind: "component", type: i8.AXContextMenuComponent, selector: "ax-context-menu", inputs: ["orientation", "openOn", "closeOn", "items", "target"], outputs: ["onItemClick", "onOpening"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i9.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
132
132
|
}
|
|
133
133
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMModuleDesignerComponent, decorators: [{
|
|
134
134
|
type: Component,
|
|
@@ -145,6 +145,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
145
145
|
AXBadgeModule,
|
|
146
146
|
AXMenuModule,
|
|
147
147
|
RouterModule,
|
|
148
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ax-drawer-container class=\"ax-overflow-hidden\">\n <ax-drawer #drawer location=\"start\" [collapsed]=\"false\" [mode]=\"'push'\">\n <ax-content class=\"ax-w-80 ax-relative ax-border-e ax-px-4 ax-py-2\">\n <div class=\"ax-overflow-auto ax-h-[calc(100vh-180px)]\">\n <span class=\"ax-font-bold ax-text-xl\">{{ 'designer.modules' | translate | async }}</span>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-mt-4\">\n @if(modules().length){\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n @for(m of modules();track $index){\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-folder ax-text-warning\"\n [isCollapsed]=\"true\"\n [caption]=\"m.title\"\n look=\"none\"\n data-elementType=\"module\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"module\"\n >\n <div class=\"ax-mx-3\">\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-box ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'entity')\"\n [caption]=\"('designer.entities' | translate | async) ?? 'Entities'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"entity\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'entity', items: getEntities(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-star ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'feature')\"\n [caption]=\"('designer.features' | translate | async) ?? 'Features'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"feature\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'feature', items: getFeatures(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-key ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'permission')\"\n [caption]=\"('designer.permissions' | translate | async) ?? 'Permissions'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"permission\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'permission', items: getPermissions(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n </ax-collapse-group>\n </div>\n </ax-collapse>\n }\n </ax-collapse-group>\n } @else {\n <div class=\"ax-h-full ax-flex ax-items-center ax-justify-center\">\n <span class=\"ax-text-neutral-500 ax-text-sm\">{{ 'designer.emptyModulesText' | translate | async }}</span>\n </div>\n }\n </div>\n <ax-button\n class=\"ax-absolute ax-bottom-4 ax-w-72\"\n [text]=\"('designer.createModule' | translate | async) ?? 'Create New Module'\"\n (onClick)=\"createModule()\"\n look=\"solid\"\n color=\"primary\"\n >\n <ax-icon class=\"fas fa-plus\"> </ax-icon>\n </ax-button>\n </div>\n </ax-content>\n\n <ng-template #childTemplate let-child>\n <div class=\"ax-flex ax-flex-col ax-cursor-pointer ax-select-none ax-border-s ax-ms-[14px] ax-ps-2\">\n @for (item of child.items; track $index) {\n\n <div\n #d\n (click)=\"contextMenuService.showDetails(child.type, item.id)\"\n class=\"ctx ax-px-2 ax-py-1 ax-flex ax-items-center ax-justify-between hover:ax-bg-neutral-100 dark:hover:ax-bg-neutral-700 hover:ax-rounded-md\"\n data-elementType=\"subModuleItem\"\n >\n {{ assignData(d, { record: item, entityType: child.type, moduleId: child.moduleId }) }}\n <span>{{ item.title }}</span>\n <ax-badge\n [look]=\"'twotone'\"\n [color]=\"item.isArchived ? 'danger' : 'success'\"\n [text]=\"item.isArchived ? 'Off' : 'On'\"\n >\n </ax-badge>\n </div>\n }\n </div>\n </ng-template>\n </ax-drawer>\n <ax-content>\n <router-outlet></router-outlet>\n </ax-content>\n</ax-drawer-container>\n\n<ax-context-menu\n #contextMenu\n (onItemClick)=\"handleActionClick($event)\"\n [items]=\"[]\"\n [target]=\"'.ctx'\"\n [orientation]=\"'vertical'\"\n [closeOn]=\"'leave'\"\n (onOpening)=\"openingContextMenu($event)\"\n>\n</ax-context-menu>\n", styles: [".ax-collapse-header{padding:.25rem .5rem!important}.ax-collapse-header:hover{border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-neutral-100),var(--tw-bg-opacity))}.ax-collapse-header:hover:is(.ax-dark *){--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-neutral-700),var(--tw-bg-opacity))}.ax-collapse-body-content{padding:.25rem!important;padding-inline-start:0!important}\n"] }]
|
|
148
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ax-drawer-container class=\"ax-overflow-hidden\">\n <ax-drawer #drawer location=\"start\" [collapsed]=\"false\" [mode]=\"'push'\">\n <ax-content class=\"ax-w-80 ax-relative ax-border-e ax-px-4 ax-py-2\">\n <div class=\"ax-overflow-auto ax-h-[calc(100vh-180px)]\">\n <span class=\"ax-font-bold ax-text-xl\">{{ 'designer.modules' | translate | async }}</span>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-mt-4\">\n @if(modules().length){\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n @for(m of modules();track $index){\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-folder ax-text-warning\"\n [isCollapsed]=\"true\"\n [caption]=\"m.title\"\n look=\"none\"\n data-elementType=\"module\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"module\"\n >\n <div class=\"ax-mx-3\">\n <ax-collapse-group [accordion]=\"false\" look=\"blank\">\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-box ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'entity')\"\n [caption]=\"('designer.entities' | translate | async) ?? 'Entities'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"entity\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'entity', items: getEntities(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-star ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'feature')\"\n [caption]=\"('designer.features' | translate | async) ?? 'Features'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"feature\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'feature', items: getFeatures(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n\n <ax-collapse\n class=\"ctx\"\n icon=\"fas fa-key ax-text-neutral-400\"\n [isCollapsed]=\"true\"\n (onClick)=\"handleCollapseItemClick(m.id, $event, 'permission')\"\n [caption]=\"('designer.permissions' | translate | async) ?? 'Permissions'\"\n look=\"none\"\n data-elementType=\"subModule\"\n [attr.data-moduleId]=\"m.id\"\n data-entityType=\"permission\"\n >\n <ng-container\n [ngTemplateOutlet]=\"childTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { type: 'permission', items: getPermissions(m.id), moduleId: m.id }\n }\"\n ></ng-container>\n </ax-collapse>\n </ax-collapse-group>\n </div>\n </ax-collapse>\n }\n </ax-collapse-group>\n } @else {\n <div class=\"ax-h-full ax-flex ax-items-center ax-justify-center\">\n <span class=\"ax-text-neutral-500 ax-text-sm\">{{ 'designer.emptyModulesText' | translate | async }}</span>\n </div>\n }\n </div>\n <ax-button\n class=\"ax-absolute ax-bottom-4 ax-w-72\"\n [text]=\"('designer.createModule' | translate | async) ?? 'Create New Module'\"\n (onClick)=\"createModule()\"\n look=\"solid\"\n color=\"primary\"\n >\n <ax-icon class=\"fas fa-plus\"> </ax-icon>\n </ax-button>\n </div>\n </ax-content>\n\n <ng-template #childTemplate let-child>\n <div class=\"ax-flex ax-flex-col ax-cursor-pointer ax-select-none ax-border-s ax-ms-[14px] ax-ps-2\">\n @for (item of child.items; track $index) {\n\n <div\n #d\n (click)=\"contextMenuService.showDetails(child.type, item.id)\"\n class=\"ctx ax-px-2 ax-py-1 ax-flex ax-items-center ax-justify-between hover:ax-bg-neutral-100 dark:hover:ax-bg-neutral-700 hover:ax-rounded-md\"\n data-elementType=\"subModuleItem\"\n >\n {{ assignData(d, { record: item, entityType: child.type, moduleId: child.moduleId }) }}\n <span>{{ item.title }}</span>\n <ax-badge\n [look]=\"'twotone'\"\n [color]=\"item.isArchived ? 'danger' : 'success'\"\n [text]=\"item.isArchived ? 'Off' : 'On'\"\n >\n </ax-badge>\n </div>\n }\n </div>\n </ng-template>\n </ax-drawer>\n <ax-content>\n <router-outlet></router-outlet>\n </ax-content>\n</ax-drawer-container>\n\n<ax-context-menu\n #contextMenu\n (onItemClick)=\"handleActionClick($event)\"\n [items]=\"[]\"\n [target]=\"'.ctx'\"\n [orientation]=\"'vertical'\"\n [closeOn]=\"'leave'\"\n (onOpening)=\"openingContextMenu($event)\"\n>\n</ax-context-menu>\n", styles: [".ax-collapse-header{padding:.25rem .5rem!important}.ax-collapse-header:hover{border-radius:.375rem;--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-neutral-100),var(--tw-bg-opacity, 1))}.ax-collapse-header:hover:is(.ax-dark *){--tw-bg-opacity: 1;background-color:rgba(var(--ax-color-neutral-700),var(--tw-bg-opacity, 1))}.ax-collapse-body-content{padding:.25rem!important;padding-inline-start:0!important}\n"] }]
|
|
149
149
|
}], ctorParameters: () => [] });
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLWRlc2lnbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9hcHBsaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvbW9kdWxlLWRlc2lnbmVyL21vZHVsZS1kZXNpZ25lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXBwbGljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL21vZHVsZS1kZXNpZ25lci9tb2R1bGUtZGVzaWduZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQXdCLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFJTCxZQUFZLEdBQ2IsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdkYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZ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LE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDOzhHQXZIVSwwQkFBMEI7a0dBQTFCLDBCQUEwQixvTUN4RHZDLG91TEEwSUEsaWREakdJLFlBQVksMFBBQ1osY0FBYyw2VUFDZCxjQUFjLHVaQUNkLGlCQUFpQix1VkFDakIsbUJBQW1CLDhGQUNuQixnQkFBZ0IsOEJBQ2hCLGdCQUFnQiw4YkFDaEIsZUFBZSw4QkFDZixxQkFBcUIsOEJBQ3JCLGFBQWEseUlBQ2IsWUFBWSwyTkFDWixZQUFZOzsyRkFJSCwwQkFBMEI7a0JBckJ0QyxTQUFTO29DQUdPLGlCQUFpQixDQUFDLElBQUksY0FDekIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxjQUFjO3dCQUNkLGlCQUFpQjt3QkFDakIsbUJBQW1CO3dCQUNuQixnQkFBZ0I7d0JBQ2hCLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLGFBQWE7d0JBQ2IsWUFBWTt3QkFDWixZQUFZO3FCQUNiLG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhCYWRnZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9iYWRnZSc7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhDb2xsYXBzZUNsaWNrRXZlbnQsIEFYQ29sbGFwc2VNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29sbGFwc2UnO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWERyYXdlck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kcmF3ZXInO1xuaW1wb3J0IHtcbiAgQVhDb250ZXh0TWVudUNvbXBvbmVudCxcbiAgQVhDb250ZXh0TWVudUl0ZW1zQ2xpY2tFdmVudCxcbiAgQVhDb250ZXh0TWVudU9wZW5pbmdFdmVudCxcbiAgQVhNZW51TW9kdWxlLFxufSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbWVudSc7XG5pbXBvcnQgeyBBWFBvcG92ZXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcG9wb3Zlcic7XG5pbXBvcnQgeyBBWFNlbGVjdGlvbkxpc3RNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvc2VsZWN0aW9uLWxpc3QnO1xuaW1wb3J0IHsgQVhTaWRlTWVudU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9zaWRlLW1lbnUnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBBWFBFbnRpdHlDcmVhdGVFdmVudCwgQVhQRW50aXR5RGVsZXRlZEV2ZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXRzJztcbmltcG9ydCB7IEFYUFdvcmtmbG93U2VydmljZSwgb2ZUeXBlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93b3JrZmxvdyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIGluamVjdCxcbiAgT25Jbml0LFxuICBzaWduYWwsXG4gIHZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IHNldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFYTU1vZHVsZURlc2lnbmVyQ29udGV4dE1lbnVTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvY29udGV4dC1tZW51LnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhQTW9kdWxlRGVzaWduZXJTZXJ2aWNlIH0gZnJvbSAnLi9tb2R1bGUtZGVzaWduZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBWE1Nb2R1bGVJdGVtIH0gZnJvbSAnLi9tb2R1bGUtZGVzaWduZXIudHlwZSc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vbW9kdWxlLWRlc2lnbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbW9kdWxlLWRlc2lnbmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQVhEcmF3ZXJNb2R1bGUsXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhEZWNvcmF0b3JNb2R1bGUsXG4gICAgQVhUcmFuc2xhdGlvbk1vZHVsZSxcbiAgICBBWFNpZGVNZW51TW9kdWxlLFxuICAgIEFYQ29sbGFwc2VNb2R1bGUsXG4gICAgQVhQb3BvdmVyTW9kdWxlLFxuICAgIEFYU2VsZWN0aW9uTGlzdE1vZHVsZSxcbiAgICBBWEJhZGdlTW9kdWxlLFxuICAgIEFYTWVudU1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1Nb2R1bGVEZXNpZ25lckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByb3RlY3RlZCBjZHI6IENoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJvdGVjdGVkIGNvbnRleHRNZW51ID0gdmlld0NoaWxkPEFYQ29udGV4dE1lbnVDb21wb25lbnQ+KCdjb250ZXh0TWVudScpO1xuXG4gIHByb3RlY3RlZCBkYXRhUHJvdmlkZXIgPSBpbmplY3QoQVhQTW9kdWxlRGVzaWduZXJTZXJ2aWNlKTtcbiAgcHJpdmF0ZSB3b3JrZmxvdyA9IGluamVjdChBWFBXb3JrZmxvd1NlcnZpY2UpO1xuICBwcm90ZWN0ZWQgY29udGV4dE1lbnVTZXJ2aWNlID0gaW5qZWN0KEFYTU1vZHVsZURlc2lnbmVyQ29udGV4dE1lbnVTZXJ2aWNlKTtcblxuICBwcm90ZWN0ZWQgbW9kdWxlcyA9IHNpZ25hbDxhbnlbXT4oW10pO1xuXG4gIHByb3RlY3RlZCBtb2R1bGVEYXRhQ2FjaGUgPSBuZXcgTWFwPHN0cmluZywgYW55W10+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95ZWQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuc3Vic2NyaWJlQWN0aW9uRXZlbnRzKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmxvYWRNb2R1bGVzKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc3Vic2NyaWJlQWN0aW9uRXZlbnRzKCkge1xuICAgIHRoaXMud29ya2Zsb3cuZXZlbnRzJFxuICAgICAgLnBpcGUob2ZUeXBlKEFYUEVudGl0eURlbGV0ZWRFdmVudCwgQVhQRW50aXR5Q3JlYXRlRXZlbnQpKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSlcbiAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHsgbWV0YSB9ID0gZXZlbnQucGF5bG9hZDtcbiAgICAgICAgaWYgKG1ldGEudHlwZSA9PT0gJ21vZHVsZScpIHtcbiAgICAgICAgICB0aGlzLmxvYWRNb2R1bGVzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5sb2FkTW9kdWxlRGF0YShtZXRhLm1vZHVsZUlkLCBtZXRhLnR5cGUsIHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgbG9hZE1vZHVsZXMoKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IG1vZHVsZXMgPSBhd2FpdCB0aGlzLmRhdGFQcm92aWRlci5nZXRNb2R1bGVzKCk7XG4gICAgICB0aGlzLm1vZHVsZXMuc2V0KG1vZHVsZXMuaXRlbXMpO1xuICAgICAgdGhpcy5yZWZyZXNoQ29udGV4dE1lbnUoKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgbG9hZGluZyBtb2R1bGVzOicsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlQ29sbGFwc2VJdGVtQ2xpY2sobW9kdWxlSWQ6IHN0cmluZywgZTogQVhDb2xsYXBzZUNsaWNrRXZlbnQsIGRhdGFUeXBlOiBBWE1Nb2R1bGVJdGVtKSB7XG4gICAgaWYgKGUuY29tcG9uZW50LmlzQ29sbGFwc2VkKSB7XG4gICAgICBlLmhhbmRsZWQgPSB0cnVlO1xuICAgICAgZS5jb21wb25lbnQuaXNMb2FkaW5nID0gdHJ1ZTtcblxuICAgICAgYXdhaXQgdGhpcy5sb2FkTW9kdWxlRGF0YShtb2R1bGVJZCwgZGF0YVR5cGUpO1xuXG4gICAgICBlLmNvbXBvbmVudC50b2dnbGUoKTtcbiAgICAgIGUuY29tcG9uZW50LmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgZS5jb21wb25lbnRbJ2NkciddLm1hcmtGb3JDaGVjaygpO1xuICAgICAgdGhpcy5yZWZyZXNoQ29udGV4dE1lbnUoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVmcmVzaENvbnRleHRNZW51KCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5jb250ZXh0TWVudSgpPy5yZWZyZXNoKCk7XG4gICAgfSwgMCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgbG9hZE1vZHVsZURhdGEobW9kdWxlSWQ6IHN0cmluZywgZGF0YVR5cGU6IEFYTU1vZHVsZUl0ZW0sIGhhcmRSZWxvYWQgPSBmYWxzZSkge1xuICAgIGNvbnN0IGNhY2hlS2V5ID0gYCR7bW9kdWxlSWR9LSR7ZGF0YVR5cGV9YDtcblxuICAgIGxldCBkYXRhSXRlbXMgPSB0aGlzLm1vZHVsZURhdGFDYWNoZS5nZXQoY2FjaGVLZXkpO1xuICAgIC8vIGlmICghZGF0YUl0ZW1zIHx8IGhhcmRSZWxvYWQpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgbWV0aG9kTWFwID0ge1xuICAgICAgICBlbnRpdHk6IHRoaXMuZGF0YVByb3ZpZGVyLmdldEVudGl0aWVzLFxuICAgICAgICBwZXJtaXNzaW9uOiB0aGlzLmRhdGFQcm92aWRlci5nZXRQZXJtaXNzaW9ucyxcbiAgICAgICAgZmVhdHVyZTogdGhpcy5kYXRhUHJvdmlkZXIuZ2V0RmVhdHVyZXMsXG4gICAgICB9O1xuICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IG1ldGhvZE1hcFtkYXRhVHlwZV0uY2FsbCh0aGlzLmRhdGFQcm92aWRlciwgbW9kdWxlSWQpO1xuXG4gICAgICBkYXRhSXRlbXMgPSBkYXRhLml0ZW1zIGFzIGFueVtdO1xuICAgICAgdGhpcy5tb2R1bGVEYXRhQ2FjaGUuc2V0KGNhY2hlS2V5LCBkYXRhSXRlbXMpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBFcnJvciBsb2FkaW5nICR7ZGF0YVR5cGV9OmAsIGVycm9yKTtcbiAgICB9XG4gICAgLy8gfVxuICB9XG5cbiAgcHJvdGVjdGVkIGdldEVudGl0aWVzKG1vZHVsZUlkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5tb2R1bGVEYXRhQ2FjaGUuZ2V0KGAke21vZHVsZUlkfS1lbnRpdHlgKSB8fCBbXTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRQZXJtaXNzaW9ucyhtb2R1bGVJZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMubW9kdWxlRGF0YUNhY2hlLmdldChgJHttb2R1bGVJZH0tcGVybWlzc2lvbmApIHx8IFtdO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldEZlYXR1cmVzKG1vZHVsZUlkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5tb2R1bGVEYXRhQ2FjaGUuZ2V0KGAke21vZHVsZUlkfS1mZWF0dXJlYCkgfHwgW107XG4gIH1cblxuICBwcm90ZWN0ZWQgb3BlbmluZ0NvbnRleHRNZW51KGU6IEFYQ29udGV4dE1lbnVPcGVuaW5nRXZlbnQpIHtcbiAgICB0aGlzLmNvbnRleHRNZW51U2VydmljZS5vcGVuKGUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZUFjdGlvbkNsaWNrKGU6IEFYQ29udGV4dE1lbnVJdGVtc0NsaWNrRXZlbnQpIHtcbiAgICB0aGlzLmNvbnRleHRNZW51U2VydmljZS5pdGVtQ2xpY2soZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlTW9kdWxlKCkge1xuICAgIHRoaXMuY29udGV4dE1lbnVTZXJ2aWNlLmNyZWF0ZUVudGl0eSgnbW9kdWxlJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3llZC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95ZWQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3NpZ25EYXRhKHRhcmdldDogSFRNTEVsZW1lbnQsIGRhdGE6IGFueSk6IHZvaWQge1xuICAgIHNldCh0YXJnZXQsICdkYXRhJywgZGF0YSk7XG4gIH1cbn1cbiIsIjxheC1kcmF3ZXItY29udGFpbmVyIGNsYXNzPVwiYXgtb3ZlcmZsb3ctaGlkZGVuXCI+XG4gIDxheC1kcmF3ZXIgI2RyYXdlciBsb2NhdGlvbj1cInN0YXJ0XCIgW2NvbGxhcHNlZF09XCJmYWxzZVwiIFttb2RlXT1cIidwdXNoJ1wiPlxuICAgIDxheC1jb250ZW50IGNsYXNzPVwiYXgtdy04MCBheC1yZWxhdGl2ZSBheC1ib3JkZXItZSBheC1weC00IGF4LXB5LTJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1vdmVyZmxvdy1hdXRvIGF4LWgtW2NhbGMoMTAwdmgtMTgwcHgpXVwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImF4LWZvbnQtYm9sZCBheC10ZXh0LXhsXCI+e3sgJ2Rlc2lnbmVyLm1vZHVsZXMnIHwgdHJhbnNsYXRlIHwgYXN5bmMgfX08L3NwYW4+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LWdhcC0yIGF4LW10LTRcIj5cbiAgICAgICAgICBAaWYobW9kdWxlcygpLmxlbmd0aCl7XG4gICAgICAgICAgPGF4LWNvbGxhcHNlLWdyb3VwIFthY2NvcmRpb25dPVwiZmFsc2VcIiBsb29rPVwiYmxhbmtcIj5cbiAgICAgICAgICAgIEBmb3IobSBvZiBtb2R1bGVzKCk7dHJhY2sgJGluZGV4KXtcbiAgICAgICAgICAgIDxheC1jb2xsYXBzZVxuICAgICAgICAgICAgICBjbGFzcz1cImN0eFwiXG4gICAgICAgICAgICAgIGljb249XCJmYXMgZmEtZm9sZGVyIGF4LXRleHQtd2FybmluZ1wiXG4gICAgICAgICAgICAgIFtpc0NvbGxhcHNlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgW2NhcHRpb25dPVwibS50aXRsZVwiXG4gICAgICAgICAgICAgIGxvb2s9XCJub25lXCJcbiAgICAgICAgICAgICAgZGF0YS1lbGVtZW50VHlwZT1cIm1vZHVsZVwiXG4gICAgICAgICAgICAgIFthdHRyLmRhdGEtbW9kdWxlSWRdPVwibS5pZFwiXG4gICAgICAgICAgICAgIGRhdGEtZW50aXR5VHlwZT1cIm1vZHVsZVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1teC0zXCI+XG4gICAgICAgICAgICAgICAgPGF4LWNvbGxhcHNlLWdyb3VwIFthY2NvcmRpb25dPVwiZmFsc2VcIiBsb29rPVwiYmxhbmtcIj5cbiAgICAgICAgICAgICAgICAgIDxheC1jb2xsYXBzZVxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImN0eFwiXG4gICAgICAgICAgICAgICAgICAgIGljb249XCJmYXMgZmEtYm94IGF4LXRleHQtbmV1dHJhbC00MDBcIlxuICAgICAgICAgICAgICAgICAgICBbaXNDb2xsYXBzZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cImhhbmRsZUNvbGxhcHNlSXRlbUNsaWNrKG0uaWQsICRldmVudCwgJ2VudGl0eScpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NhcHRpb25dPVwiKCdkZXNpZ25lci5lbnRpdGllcycgfCB0cmFuc2xhdGUgfCBhc3luYykgPz8gJ0VudGl0aWVzJ1wiXG4gICAgICAgICAgICAgICAgICAgIGxvb2s9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgICAgZGF0YS1lbGVtZW50VHlwZT1cInN1Yk1vZHVsZVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmRhdGEtbW9kdWxlSWRdPVwibS5pZFwiXG4gICAgICAgICAgICAgICAgICAgIGRhdGEtZW50aXR5VHlwZT1cImVudGl0eVwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJjaGlsZFRlbXBsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiB7IHR5cGU6ICdlbnRpdHknLCBpdGVtczogZ2V0RW50aXRpZXMobS5pZCksIG1vZHVsZUlkOiBtLmlkIH1cbiAgICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgPC9heC1jb2xsYXBzZT5cblxuICAgICAgICAgICAgICAgICAgPGF4LWNvbGxhcHNlXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3R4XCJcbiAgICAgICAgICAgICAgICAgICAgaWNvbj1cImZhcyBmYS1zdGFyIGF4LXRleHQtbmV1dHJhbC00MDBcIlxuICAgICAgICAgICAgICAgICAgICBbaXNDb2xsYXBzZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cImhhbmRsZUNvbGxhcHNlSXRlbUNsaWNrKG0uaWQsICRldmVudCwgJ2ZlYXR1cmUnKVwiXG4gICAgICAgICAgICAgICAgICAgIFtjYXB0aW9uXT1cIignZGVzaWduZXIuZmVhdHVyZXMnIHwgdHJhbnNsYXRlIHwgYXN5bmMpID8/ICdGZWF0dXJlcydcIlxuICAgICAgICAgICAgICAgICAgICBsb29rPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICAgIGRhdGEtZWxlbWVudFR5cGU9XCJzdWJNb2R1bGVcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLW1vZHVsZUlkXT1cIm0uaWRcIlxuICAgICAgICAgICAgICAgICAgICBkYXRhLWVudGl0eVR5cGU9XCJmZWF0dXJlXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNoaWxkVGVtcGxhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IHsgdHlwZTogJ2ZlYXR1cmUnLCBpdGVtczogZ2V0RmVhdHVyZXMobS5pZCksIG1vZHVsZUlkOiBtLmlkIH1cbiAgICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgPC9heC1jb2xsYXBzZT5cblxuICAgICAgICAgICAgICAgICAgPGF4LWNvbGxhcHNlXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3R4XCJcbiAgICAgICAgICAgICAgICAgICAgaWNvbj1cImZhcyBmYS1rZXkgYXgtdGV4dC1uZXV0cmFsLTQwMFwiXG4gICAgICAgICAgICAgICAgICAgIFtpc0NvbGxhcHNlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgKG9uQ2xpY2spPVwiaGFuZGxlQ29sbGFwc2VJdGVtQ2xpY2sobS5pZCwgJGV2ZW50LCAncGVybWlzc2lvbicpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NhcHRpb25dPVwiKCdkZXNpZ25lci5wZXJtaXNzaW9ucycgfCB0cmFuc2xhdGUgfCBhc3luYykgPz8gJ1Blcm1pc3Npb25zJ1wiXG4gICAgICAgICAgICAgICAgICAgIGxvb2s9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgICAgZGF0YS1lbGVtZW50VHlwZT1cInN1Yk1vZHVsZVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmRhdGEtbW9kdWxlSWRdPVwibS5pZFwiXG4gICAgICAgICAgICAgICAgICAgIGRhdGEtZW50aXR5VHlwZT1cInBlcm1pc3Npb25cIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2hpbGRUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntcbiAgICAgICAgICAgICAgICAgICAgICAgICRpbXBsaWNpdDogeyB0eXBlOiAncGVybWlzc2lvbicsIGl0ZW1zOiBnZXRQZXJtaXNzaW9ucyhtLmlkKSwgbW9kdWxlSWQ6IG0uaWQgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICA8L2F4LWNvbGxhcHNlPlxuICAgICAgICAgICAgICAgIDwvYXgtY29sbGFwc2UtZ3JvdXA+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9heC1jb2xsYXBzZT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2F4LWNvbGxhcHNlLWdyb3VwPlxuICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1oLWZ1bGwgYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtanVzdGlmeS1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXgtdGV4dC1uZXV0cmFsLTUwMCBheC10ZXh0LXNtXCI+e3sgJ2Rlc2lnbmVyLmVtcHR5TW9kdWxlc1RleHQnIHwgdHJhbnNsYXRlIHwgYXN5bmMgfX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwiYXgtYWJzb2x1dGUgYXgtYm90dG9tLTQgYXgtdy03MlwiXG4gICAgICAgICAgW3RleHRdPVwiKCdkZXNpZ25lci5jcmVhdGVNb2R1bGUnIHwgdHJhbnNsYXRlIHwgYXN5bmMpID8/ICdDcmVhdGUgTmV3IE1vZHVsZSdcIlxuICAgICAgICAgIChvbkNsaWNrKT1cImNyZWF0ZU1vZHVsZSgpXCJcbiAgICAgICAgICBsb29rPVwic29saWRcIlxuICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgID5cbiAgICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImZhcyBmYS1wbHVzXCI+IDwvYXgtaWNvbj5cbiAgICAgICAgPC9heC1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2F4LWNvbnRlbnQ+XG5cbiAgICA8bmctdGVtcGxhdGUgI2NoaWxkVGVtcGxhdGUgbGV0LWNoaWxkPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtY3Vyc29yLXBvaW50ZXIgYXgtc2VsZWN0LW5vbmUgYXgtYm9yZGVyLXMgYXgtbXMtWzE0cHhdIGF4LXBzLTJcIj5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBjaGlsZC5pdGVtczsgdHJhY2sgJGluZGV4KSB7XG5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICNkXG4gICAgICAgICAgKGNsaWNrKT1cImNvbnRleHRNZW51U2VydmljZS5zaG93RGV0YWlscyhjaGlsZC50eXBlLCBpdGVtLmlkKVwiXG4gICAgICAgICAgY2xhc3M9XCJjdHggYXgtcHgtMiBheC1weS0xIGF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktYmV0d2VlbiBob3ZlcjpheC1iZy1uZXV0cmFsLTEwMCBkYXJrOmhvdmVyOmF4LWJnLW5ldXRyYWwtNzAwIGhvdmVyOmF4LXJvdW5kZWQtbWRcIlxuICAgICAgICAgIGRhdGEtZWxlbWVudFR5cGU9XCJzdWJNb2R1bGVJdGVtXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IGFzc2lnbkRhdGEoZCwgeyByZWNvcmQ6IGl0ZW0sIGVudGl0eVR5cGU6IGNoaWxkLnR5cGUsIG1vZHVsZUlkOiBjaGlsZC5tb2R1bGVJZCB9KSB9fVxuICAgICAgICAgIDxzcGFuPnt7IGl0ZW0udGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgPGF4LWJhZGdlXG4gICAgICAgICAgICBbbG9va109XCIndHdvdG9uZSdcIlxuICAgICAgICAgICAgW2NvbG9yXT1cIml0ZW0uaXNBcmNoaXZlZCA/ICdkYW5nZXInIDogJ3N1Y2Nlc3MnXCJcbiAgICAgICAgICAgIFt0ZXh0XT1cIml0ZW0uaXNBcmNoaXZlZCA/ICdPZmYnIDogJ09uJ1wiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvYXgtYmFkZ2U+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2F4LWRyYXdlcj5cbiAgPGF4LWNvbnRlbnQ+XG4gICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuICA8L2F4LWNvbnRlbnQ+XG48L2F4LWRyYXdlci1jb250YWluZXI+XG5cbjxheC1jb250ZXh0LW1lbnVcbiAgI2NvbnRleHRNZW51XG4gIChvbkl0ZW1DbGljayk9XCJoYW5kbGVBY3Rpb25DbGljaygkZXZlbnQpXCJcbiAgW2l0ZW1zXT1cIltdXCJcbiAgW3RhcmdldF09XCInLmN0eCdcIlxuICBbb3JpZW50YXRpb25dPVwiJ3ZlcnRpY2FsJ1wiXG4gIFtjbG9zZU9uXT1cIidsZWF2ZSdcIlxuICAob25PcGVuaW5nKT1cIm9wZW5pbmdDb250ZXh0TWVudSgkZXZlbnQpXCJcbj5cbjwvYXgtY29udGV4dC1tZW51PlxuIl19
|
|
150
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLWRlc2lnbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9hcHBsaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9saWIvbW9kdWxlLWRlc2lnbmVyL21vZHVsZS1kZXNpZ25lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXBwbGljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL21vZHVsZS1kZXNpZ25lci9tb2R1bGUtZGVzaWduZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQXdCLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFJTCxZQUFZLEdBQ2IsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdkYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZ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LE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDOzhHQXZIVSwwQkFBMEI7a0dBQTFCLDBCQUEwQixvTUN4RHZDLG91TEEwSUEsdWREakdJLFlBQVksMFBBQ1osY0FBYyw2VUFDZCxjQUFjLHVaQUNkLGlCQUFpQix1VkFDakIsbUJBQW1CLDhGQUNuQixnQkFBZ0IsOEJBQ2hCLGdCQUFnQiw4YkFDaEIsZUFBZSw4QkFDZixxQkFBcUIsOEJBQ3JCLGFBQWEseUlBQ2IsWUFBWSwyTkFDWixZQUFZOzsyRkFJSCwwQkFBMEI7a0JBckJ0QyxTQUFTO29DQUdPLGlCQUFpQixDQUFDLElBQUksY0FDekIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxjQUFjO3dCQUNkLGlCQUFpQjt3QkFDakIsbUJBQW1CO3dCQUNuQixnQkFBZ0I7d0JBQ2hCLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLGFBQWE7d0JBQ2IsWUFBWTt3QkFDWixZQUFZO3FCQUNiLG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhCYWRnZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9iYWRnZSc7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhDb2xsYXBzZUNsaWNrRXZlbnQsIEFYQ29sbGFwc2VNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29sbGFwc2UnO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWERyYXdlck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kcmF3ZXInO1xuaW1wb3J0IHtcbiAgQVhDb250ZXh0TWVudUNvbXBvbmVudCxcbiAgQVhDb250ZXh0TWVudUl0ZW1zQ2xpY2tFdmVudCxcbiAgQVhDb250ZXh0TWVudU9wZW5pbmdFdmVudCxcbiAgQVhNZW51TW9kdWxlLFxufSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbWVudSc7XG5pbXBvcnQgeyBBWFBvcG92ZXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcG9wb3Zlcic7XG5pbXBvcnQgeyBBWFNlbGVjdGlvbkxpc3RNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvc2VsZWN0aW9uLWxpc3QnO1xuaW1wb3J0IHsgQVhTaWRlTWVudU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9zaWRlLW1lbnUnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBBWFBFbnRpdHlDcmVhdGVFdmVudCwgQVhQRW50aXR5RGVsZXRlZEV2ZW50IH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9sYXlvdXRzJztcbmltcG9ydCB7IEFYUFdvcmtmbG93U2VydmljZSwgb2ZUeXBlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS93b3JrZmxvdyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIGluamVjdCxcbiAgT25Jbml0LFxuICBzaWduYWwsXG4gIHZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IHNldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFYTU1vZHVsZURlc2lnbmVyQ29udGV4dE1lbnVTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvY29udGV4dC1tZW51LnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhQTW9kdWxlRGVzaWduZXJTZXJ2aWNlIH0gZnJvbSAnLi9tb2R1bGUtZGVzaWduZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBWE1Nb2R1bGVJdGVtIH0gZnJvbSAnLi9tb2R1bGUtZGVzaWduZXIudHlwZSc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vbW9kdWxlLWRlc2lnbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbW9kdWxlLWRlc2lnbmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQVhEcmF3ZXJNb2R1bGUsXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhEZWNvcmF0b3JNb2R1bGUsXG4gICAgQVhUcmFuc2xhdGlvbk1vZHVsZSxcbiAgICBBWFNpZGVNZW51TW9kdWxlLFxuICAgIEFYQ29sbGFwc2VNb2R1bGUsXG4gICAgQVhQb3BvdmVyTW9kdWxlLFxuICAgIEFYU2VsZWN0aW9uTGlzdE1vZHVsZSxcbiAgICBBWEJhZGdlTW9kdWxlLFxuICAgIEFYTWVudU1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1Nb2R1bGVEZXNpZ25lckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByb3RlY3RlZCBjZHI6IENoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJvdGVjdGVkIGNvbnRleHRNZW51ID0gdmlld0NoaWxkPEFYQ29udGV4dE1lbnVDb21wb25lbnQ+KCdjb250ZXh0TWVudScpO1xuXG4gIHByb3RlY3RlZCBkYXRhUHJvdmlkZXIgPSBpbmplY3QoQVhQTW9kdWxlRGVzaWduZXJTZXJ2aWNlKTtcbiAgcHJpdmF0ZSB3b3JrZmxvdyA9IGluamVjdChBWFBXb3JrZmxvd1NlcnZpY2UpO1xuICBwcm90ZWN0ZWQgY29udGV4dE1lbnVTZXJ2aWNlID0gaW5qZWN0KEFYTU1vZHVsZURlc2lnbmVyQ29udGV4dE1lbnVTZXJ2aWNlKTtcblxuICBwcm90ZWN0ZWQgbW9kdWxlcyA9IHNpZ25hbDxhbnlbXT4oW10pO1xuXG4gIHByb3RlY3RlZCBtb2R1bGVEYXRhQ2FjaGUgPSBuZXcgTWFwPHN0cmluZywgYW55W10+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95ZWQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuc3Vic2NyaWJlQWN0aW9uRXZlbnRzKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmxvYWRNb2R1bGVzKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc3Vic2NyaWJlQWN0aW9uRXZlbnRzKCkge1xuICAgIHRoaXMud29ya2Zsb3cuZXZlbnRzJFxuICAgICAgLnBpcGUob2ZUeXBlKEFYUEVudGl0eURlbGV0ZWRFdmVudCwgQVhQRW50aXR5Q3JlYXRlRXZlbnQpKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSlcbiAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgIGNvbnN0IHsgbWV0YSB9ID0gZXZlbnQucGF5bG9hZDtcbiAgICAgICAgaWYgKG1ldGEudHlwZSA9PT0gJ21vZHVsZScpIHtcbiAgICAgICAgICB0aGlzLmxvYWRNb2R1bGVzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5sb2FkTW9kdWxlRGF0YShtZXRhLm1vZHVsZUlkLCBtZXRhLnR5cGUsIHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgbG9hZE1vZHVsZXMoKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IG1vZHVsZXMgPSBhd2FpdCB0aGlzLmRhdGFQcm92aWRlci5nZXRNb2R1bGVzKCk7XG4gICAgICB0aGlzLm1vZHVsZXMuc2V0KG1vZHVsZXMuaXRlbXMpO1xuICAgICAgdGhpcy5yZWZyZXNoQ29udGV4dE1lbnUoKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgbG9hZGluZyBtb2R1bGVzOicsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlQ29sbGFwc2VJdGVtQ2xpY2sobW9kdWxlSWQ6IHN0cmluZywgZTogQVhDb2xsYXBzZUNsaWNrRXZlbnQsIGRhdGFUeXBlOiBBWE1Nb2R1bGVJdGVtKSB7XG4gICAgaWYgKGUuY29tcG9uZW50LmlzQ29sbGFwc2VkKSB7XG4gICAgICBlLmhhbmRsZWQgPSB0cnVlO1xuICAgICAgZS5jb21wb25lbnQuaXNMb2FkaW5nID0gdHJ1ZTtcblxuICAgICAgYXdhaXQgdGhpcy5sb2FkTW9kdWxlRGF0YShtb2R1bGVJZCwgZGF0YVR5cGUpO1xuXG4gICAgICBlLmNvbXBvbmVudC50b2dnbGUoKTtcbiAgICAgIGUuY29tcG9uZW50LmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgZS5jb21wb25lbnRbJ2NkciddLm1hcmtGb3JDaGVjaygpO1xuICAgICAgdGhpcy5yZWZyZXNoQ29udGV4dE1lbnUoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVmcmVzaENvbnRleHRNZW51KCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5jb250ZXh0TWVudSgpPy5yZWZyZXNoKCk7XG4gICAgfSwgMCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgbG9hZE1vZHVsZURhdGEobW9kdWxlSWQ6IHN0cmluZywgZGF0YVR5cGU6IEFYTU1vZHVsZUl0ZW0sIGhhcmRSZWxvYWQgPSBmYWxzZSkge1xuICAgIGNvbnN0IGNhY2hlS2V5ID0gYCR7bW9kdWxlSWR9LSR7ZGF0YVR5cGV9YDtcblxuICAgIGxldCBkYXRhSXRlbXMgPSB0aGlzLm1vZHVsZURhdGFDYWNoZS5nZXQoY2FjaGVLZXkpO1xuICAgIC8vIGlmICghZGF0YUl0ZW1zIHx8IGhhcmRSZWxvYWQpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgbWV0aG9kTWFwID0ge1xuICAgICAgICBlbnRpdHk6IHRoaXMuZGF0YVByb3ZpZGVyLmdldEVudGl0aWVzLFxuICAgICAgICBwZXJtaXNzaW9uOiB0aGlzLmRhdGFQcm92aWRlci5nZXRQZXJtaXNzaW9ucyxcbiAgICAgICAgZmVhdHVyZTogdGhpcy5kYXRhUHJvdmlkZXIuZ2V0RmVhdHVyZXMsXG4gICAgICB9O1xuICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IG1ldGhvZE1hcFtkYXRhVHlwZV0uY2FsbCh0aGlzLmRhdGFQcm92aWRlciwgbW9kdWxlSWQpO1xuXG4gICAgICBkYXRhSXRlbXMgPSBkYXRhLml0ZW1zIGFzIGFueVtdO1xuICAgICAgdGhpcy5tb2R1bGVEYXRhQ2FjaGUuc2V0KGNhY2hlS2V5LCBkYXRhSXRlbXMpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBFcnJvciBsb2FkaW5nICR7ZGF0YVR5cGV9OmAsIGVycm9yKTtcbiAgICB9XG4gICAgLy8gfVxuICB9XG5cbiAgcHJvdGVjdGVkIGdldEVudGl0aWVzKG1vZHVsZUlkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5tb2R1bGVEYXRhQ2FjaGUuZ2V0KGAke21vZHVsZUlkfS1lbnRpdHlgKSB8fCBbXTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRQZXJtaXNzaW9ucyhtb2R1bGVJZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMubW9kdWxlRGF0YUNhY2hlLmdldChgJHttb2R1bGVJZH0tcGVybWlzc2lvbmApIHx8IFtdO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldEZlYXR1cmVzKG1vZHVsZUlkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5tb2R1bGVEYXRhQ2FjaGUuZ2V0KGAke21vZHVsZUlkfS1mZWF0dXJlYCkgfHwgW107XG4gIH1cblxuICBwcm90ZWN0ZWQgb3BlbmluZ0NvbnRleHRNZW51KGU6IEFYQ29udGV4dE1lbnVPcGVuaW5nRXZlbnQpIHtcbiAgICB0aGlzLmNvbnRleHRNZW51U2VydmljZS5vcGVuKGUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZUFjdGlvbkNsaWNrKGU6IEFYQ29udGV4dE1lbnVJdGVtc0NsaWNrRXZlbnQpIHtcbiAgICB0aGlzLmNvbnRleHRNZW51U2VydmljZS5pdGVtQ2xpY2soZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlTW9kdWxlKCkge1xuICAgIHRoaXMuY29udGV4dE1lbnVTZXJ2aWNlLmNyZWF0ZUVudGl0eSgnbW9kdWxlJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3llZC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95ZWQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3NpZ25EYXRhKHRhcmdldDogSFRNTEVsZW1lbnQsIGRhdGE6IGFueSk6IHZvaWQge1xuICAgIHNldCh0YXJnZXQsICdkYXRhJywgZGF0YSk7XG4gIH1cbn1cbiIsIjxheC1kcmF3ZXItY29udGFpbmVyIGNsYXNzPVwiYXgtb3ZlcmZsb3ctaGlkZGVuXCI+XG4gIDxheC1kcmF3ZXIgI2RyYXdlciBsb2NhdGlvbj1cInN0YXJ0XCIgW2NvbGxhcHNlZF09XCJmYWxzZVwiIFttb2RlXT1cIidwdXNoJ1wiPlxuICAgIDxheC1jb250ZW50IGNsYXNzPVwiYXgtdy04MCBheC1yZWxhdGl2ZSBheC1ib3JkZXItZSBheC1weC00IGF4LXB5LTJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1vdmVyZmxvdy1hdXRvIGF4LWgtW2NhbGMoMTAwdmgtMTgwcHgpXVwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImF4LWZvbnQtYm9sZCBheC10ZXh0LXhsXCI+e3sgJ2Rlc2lnbmVyLm1vZHVsZXMnIHwgdHJhbnNsYXRlIHwgYXN5bmMgfX08L3NwYW4+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LWdhcC0yIGF4LW10LTRcIj5cbiAgICAgICAgICBAaWYobW9kdWxlcygpLmxlbmd0aCl7XG4gICAgICAgICAgPGF4LWNvbGxhcHNlLWdyb3VwIFthY2NvcmRpb25dPVwiZmFsc2VcIiBsb29rPVwiYmxhbmtcIj5cbiAgICAgICAgICAgIEBmb3IobSBvZiBtb2R1bGVzKCk7dHJhY2sgJGluZGV4KXtcbiAgICAgICAgICAgIDxheC1jb2xsYXBzZVxuICAgICAgICAgICAgICBjbGFzcz1cImN0eFwiXG4gICAgICAgICAgICAgIGljb249XCJmYXMgZmEtZm9sZGVyIGF4LXRleHQtd2FybmluZ1wiXG4gICAgICAgICAgICAgIFtpc0NvbGxhcHNlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgW2NhcHRpb25dPVwibS50aXRsZVwiXG4gICAgICAgICAgICAgIGxvb2s9XCJub25lXCJcbiAgICAgICAgICAgICAgZGF0YS1lbGVtZW50VHlwZT1cIm1vZHVsZVwiXG4gICAgICAgICAgICAgIFthdHRyLmRhdGEtbW9kdWxlSWRdPVwibS5pZFwiXG4gICAgICAgICAgICAgIGRhdGEtZW50aXR5VHlwZT1cIm1vZHVsZVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1teC0zXCI+XG4gICAgICAgICAgICAgICAgPGF4LWNvbGxhcHNlLWdyb3VwIFthY2NvcmRpb25dPVwiZmFsc2VcIiBsb29rPVwiYmxhbmtcIj5cbiAgICAgICAgICAgICAgICAgIDxheC1jb2xsYXBzZVxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImN0eFwiXG4gICAgICAgICAgICAgICAgICAgIGljb249XCJmYXMgZmEtYm94IGF4LXRleHQtbmV1dHJhbC00MDBcIlxuICAgICAgICAgICAgICAgICAgICBbaXNDb2xsYXBzZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cImhhbmRsZUNvbGxhcHNlSXRlbUNsaWNrKG0uaWQsICRldmVudCwgJ2VudGl0eScpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NhcHRpb25dPVwiKCdkZXNpZ25lci5lbnRpdGllcycgfCB0cmFuc2xhdGUgfCBhc3luYykgPz8gJ0VudGl0aWVzJ1wiXG4gICAgICAgICAgICAgICAgICAgIGxvb2s9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgICAgZGF0YS1lbGVtZW50VHlwZT1cInN1Yk1vZHVsZVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmRhdGEtbW9kdWxlSWRdPVwibS5pZFwiXG4gICAgICAgICAgICAgICAgICAgIGRhdGEtZW50aXR5VHlwZT1cImVudGl0eVwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJjaGlsZFRlbXBsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAgICAgICAgICAgJGltcGxpY2l0OiB7IHR5cGU6ICdlbnRpdHknLCBpdGVtczogZ2V0RW50aXRpZXMobS5pZCksIG1vZHVsZUlkOiBtLmlkIH1cbiAgICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgPC9heC1jb2xsYXBzZT5cblxuICAgICAgICAgICAgICAgICAgPGF4LWNvbGxhcHNlXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3R4XCJcbiAgICAgICAgICAgICAgICAgICAgaWNvbj1cImZhcyBmYS1zdGFyIGF4LXRleHQtbmV1dHJhbC00MDBcIlxuICAgICAgICAgICAgICAgICAgICBbaXNDb2xsYXBzZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cImhhbmRsZUNvbGxhcHNlSXRlbUNsaWNrKG0uaWQsICRldmVudCwgJ2ZlYXR1cmUnKVwiXG4gICAgICAgICAgICAgICAgICAgIFtjYXB0aW9uXT1cIignZGVzaWduZXIuZmVhdHVyZXMnIHwgdHJhbnNsYXRlIHwgYXN5bmMpID8/ICdGZWF0dXJlcydcIlxuICAgICAgICAgICAgICAgICAgICBsb29rPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgICAgIGRhdGEtZWxlbWVudFR5cGU9XCJzdWJNb2R1bGVcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLW1vZHVsZUlkXT1cIm0uaWRcIlxuICAgICAgICAgICAgICAgICAgICBkYXRhLWVudGl0eVR5cGU9XCJmZWF0dXJlXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNoaWxkVGVtcGxhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IHsgdHlwZTogJ2ZlYXR1cmUnLCBpdGVtczogZ2V0RmVhdHVyZXMobS5pZCksIG1vZHVsZUlkOiBtLmlkIH1cbiAgICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgPC9heC1jb2xsYXBzZT5cblxuICAgICAgICAgICAgICAgICAgPGF4LWNvbGxhcHNlXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3R4XCJcbiAgICAgICAgICAgICAgICAgICAgaWNvbj1cImZhcyBmYS1rZXkgYXgtdGV4dC1uZXV0cmFsLTQwMFwiXG4gICAgICAgICAgICAgICAgICAgIFtpc0NvbGxhcHNlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgKG9uQ2xpY2spPVwiaGFuZGxlQ29sbGFwc2VJdGVtQ2xpY2sobS5pZCwgJGV2ZW50LCAncGVybWlzc2lvbicpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NhcHRpb25dPVwiKCdkZXNpZ25lci5wZXJtaXNzaW9ucycgfCB0cmFuc2xhdGUgfCBhc3luYykgPz8gJ1Blcm1pc3Npb25zJ1wiXG4gICAgICAgICAgICAgICAgICAgIGxvb2s9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgICAgZGF0YS1lbGVtZW50VHlwZT1cInN1Yk1vZHVsZVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmRhdGEtbW9kdWxlSWRdPVwibS5pZFwiXG4gICAgICAgICAgICAgICAgICAgIGRhdGEtZW50aXR5VHlwZT1cInBlcm1pc3Npb25cIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2hpbGRUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntcbiAgICAgICAgICAgICAgICAgICAgICAgICRpbXBsaWNpdDogeyB0eXBlOiAncGVybWlzc2lvbicsIGl0ZW1zOiBnZXRQZXJtaXNzaW9ucyhtLmlkKSwgbW9kdWxlSWQ6IG0uaWQgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICA8L2F4LWNvbGxhcHNlPlxuICAgICAgICAgICAgICAgIDwvYXgtY29sbGFwc2UtZ3JvdXA+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9heC1jb2xsYXBzZT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2F4LWNvbGxhcHNlLWdyb3VwPlxuICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1oLWZ1bGwgYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtanVzdGlmeS1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYXgtdGV4dC1uZXV0cmFsLTUwMCBheC10ZXh0LXNtXCI+e3sgJ2Rlc2lnbmVyLmVtcHR5TW9kdWxlc1RleHQnIHwgdHJhbnNsYXRlIHwgYXN5bmMgfX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwiYXgtYWJzb2x1dGUgYXgtYm90dG9tLTQgYXgtdy03MlwiXG4gICAgICAgICAgW3RleHRdPVwiKCdkZXNpZ25lci5jcmVhdGVNb2R1bGUnIHwgdHJhbnNsYXRlIHwgYXN5bmMpID8/ICdDcmVhdGUgTmV3IE1vZHVsZSdcIlxuICAgICAgICAgIChvbkNsaWNrKT1cImNyZWF0ZU1vZHVsZSgpXCJcbiAgICAgICAgICBsb29rPVwic29saWRcIlxuICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgID5cbiAgICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImZhcyBmYS1wbHVzXCI+IDwvYXgtaWNvbj5cbiAgICAgICAgPC9heC1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2F4LWNvbnRlbnQ+XG5cbiAgICA8bmctdGVtcGxhdGUgI2NoaWxkVGVtcGxhdGUgbGV0LWNoaWxkPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtY3Vyc29yLXBvaW50ZXIgYXgtc2VsZWN0LW5vbmUgYXgtYm9yZGVyLXMgYXgtbXMtWzE0cHhdIGF4LXBzLTJcIj5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBjaGlsZC5pdGVtczsgdHJhY2sgJGluZGV4KSB7XG5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICNkXG4gICAgICAgICAgKGNsaWNrKT1cImNvbnRleHRNZW51U2VydmljZS5zaG93RGV0YWlscyhjaGlsZC50eXBlLCBpdGVtLmlkKVwiXG4gICAgICAgICAgY2xhc3M9XCJjdHggYXgtcHgtMiBheC1weS0xIGF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktYmV0d2VlbiBob3ZlcjpheC1iZy1uZXV0cmFsLTEwMCBkYXJrOmhvdmVyOmF4LWJnLW5ldXRyYWwtNzAwIGhvdmVyOmF4LXJvdW5kZWQtbWRcIlxuICAgICAgICAgIGRhdGEtZWxlbWVudFR5cGU9XCJzdWJNb2R1bGVJdGVtXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IGFzc2lnbkRhdGEoZCwgeyByZWNvcmQ6IGl0ZW0sIGVudGl0eVR5cGU6IGNoaWxkLnR5cGUsIG1vZHVsZUlkOiBjaGlsZC5tb2R1bGVJZCB9KSB9fVxuICAgICAgICAgIDxzcGFuPnt7IGl0ZW0udGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgPGF4LWJhZGdlXG4gICAgICAgICAgICBbbG9va109XCIndHdvdG9uZSdcIlxuICAgICAgICAgICAgW2NvbG9yXT1cIml0ZW0uaXNBcmNoaXZlZCA/ICdkYW5nZXInIDogJ3N1Y2Nlc3MnXCJcbiAgICAgICAgICAgIFt0ZXh0XT1cIml0ZW0uaXNBcmNoaXZlZCA/ICdPZmYnIDogJ09uJ1wiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvYXgtYmFkZ2U+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2F4LWRyYXdlcj5cbiAgPGF4LWNvbnRlbnQ+XG4gICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuICA8L2F4LWNvbnRlbnQ+XG48L2F4LWRyYXdlci1jb250YWluZXI+XG5cbjxheC1jb250ZXh0LW1lbnVcbiAgI2NvbnRleHRNZW51XG4gIChvbkl0ZW1DbGljayk9XCJoYW5kbGVBY3Rpb25DbGljaygkZXZlbnQpXCJcbiAgW2l0ZW1zXT1cIltdXCJcbiAgW3RhcmdldF09XCInLmN0eCdcIlxuICBbb3JpZW50YXRpb25dPVwiJ3ZlcnRpY2FsJ1wiXG4gIFtjbG9zZU9uXT1cIidsZWF2ZSdcIlxuICAob25PcGVuaW5nKT1cIm9wZW5pbmdDb250ZXh0TWVudSgkZXZlbnQpXCJcbj5cbjwvYXgtY29udGV4dC1tZW51PlxuIl19
|
|
@@ -38,7 +38,7 @@ export class AXPAuthAppChooserComponent {
|
|
|
38
38
|
this.router.navigate(['/auth/login']);
|
|
39
39
|
}
|
|
40
40
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPAuthAppChooserComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
41
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", 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(
|
|
41
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", 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: i2.AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "look"], outputs: ["sizeChange"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i3.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: i4.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 }); }
|
|
42
42
|
}
|
|
43
43
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPAuthAppChooserComponent, decorators: [{
|
|
44
44
|
type: Component,
|
|
@@ -57,6 +57,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
57
57
|
AXTranslationModule,
|
|
58
58
|
AXPTenantChooserDropdownComponent,
|
|
59
59
|
AXPAppChooserListComponent
|
|
60
|
-
], encapsulation: ViewEncapsulation.None, standalone: true, 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(
|
|
60
|
+
], encapsulation: ViewEncapsulation.None, standalone: true, 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"] }]
|
|
61
61
|
}] });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWNob29zZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2F1dGgvc3JjL2xpYi9hY2NvdW50L2FwcC1jaG9vc2VyL2FwcC1jaG9vc2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9hdXRoL3NyYy9saWIvYWNjb3VudC9hcHAtY2hvb3Nlci9hcHAtY2hvb3Nlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLHlCQUF5QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUN4RyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7QUF5QjFCLE1BQU0sT0FBTywwQkFBMEI7SUF2QnZDO1FBeUJVLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEIsbUJBQWMsR0FBRyxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUNyRCxtQkFBYyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRXpDLFNBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQztRQUNoQyxhQUFRLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFBLENBQUEsK0JBQStCO1FBQ2hELFdBQU0sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQztLQWEvQztJQVZDLGFBQWE7UUFDWCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLDhCQUE4QixDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsS0FBSyxDQUFDLGFBQWE7UUFDakIsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUN4QyxDQUFDOzhHQWxCVSwwQkFBMEI7a0dBQTFCLDBCQUEwQixnRkMzQ3ZDLDQ5REF3Q08seU9EZkgsWUFBWSx1TEFDWixZQUFZLDhCQUNaLGVBQWUsOEJBQ2YsY0FBYyw4QkFDZCxhQUFhLDhCQUNiLGdCQUFnQiw4QkFDaEIsY0FBYyxvS0FDZCxhQUFhLGlNQUNiLGlCQUFpQiwrQkFDakIsZ0JBQWdCLHdFQUNoQixlQUFlLDhCQUNmLG1CQUFtQiwrR0FDbkIsaUNBQWlDLHdFQUNqQywwQkFBMEI7OzJGQUtqQiwwQkFBMEI7a0JBdkJ0QyxTQUFTOytCQUNFLHNCQUFzQixXQUd2Qjt3QkFDUCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsaUJBQWlCO3dCQUNqQixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsbUJBQW1CO3dCQUNuQixpQ0FBaUM7d0JBQ2pDLDBCQUEwQjtxQkFDM0IsaUJBQ2MsaUJBQWlCLENBQUMsSUFBSSxjQUN6QixJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFYQXZhdGFyTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2F2YXRhcic7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhDaGVja0JveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jaGVjay1ib3gnO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEZvcm1Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZm9ybSc7XG5pbXBvcnQgeyBBWEltYWdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2ltYWdlJztcbmltcG9ydCB7IEFYTGFiZWxNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbGFiZWwnO1xuaW1wb3J0IHsgQVhMb2FkaW5nTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2xvYWRpbmcnO1xuaW1wb3J0IHsgQVhUZXh0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RleHQtYm94JztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhQU2Vzc2lvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2F1dGgnO1xuaW1wb3J0IHsgQVhQTG9nb0NvbXBvbmVudCwgQVhQX1BMQVRGT1JNX0NPTkZJR19UT0tFTiB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQVhQVGVuYW50Q2hvb3NlckRyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi4vdGVuYW50LWNob29zZXIvdGVuYW50LWNob29zZXItZHJvcGRvd24uY29tcG9uZW50JztcbmltcG9ydCB7IEFYUEFwcENob29zZXJMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9hcHAtY2hvb3Nlci1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBvZiB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtYXV0aC1hcHAtY2hvb3NlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9hcHAtY2hvb3Nlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FwcC1jaG9vc2VyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQVhGb3JtTW9kdWxlLFxuICAgIEFYVGV4dEJveE1vZHVsZSxcbiAgICBBWEJ1dHRvbk1vZHVsZSxcbiAgICBBWExhYmVsTW9kdWxlLFxuICAgIEFYQ2hlY2tCb3hNb2R1bGUsXG4gICAgQVhBdmF0YXJNb2R1bGUsXG4gICAgQVhJbWFnZU1vZHVsZSxcbiAgICBBWERlY29yYXRvck1vZHVsZSxcbiAgICBBWFBMb2dvQ29tcG9uZW50LFxuICAgIEFYTG9hZGluZ01vZHVsZSxcbiAgICBBWFRyYW5zbGF0aW9uTW9kdWxlLFxuICAgIEFYUFRlbmFudENob29zZXJEcm9wZG93bkNvbXBvbmVudCxcbiAgICBBWFBBcHBDaG9vc2VyTGlzdENvbXBvbmVudFxuICBdLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBBWFBBdXRoQXBwQ2hvb3NlckNvbXBvbmVudCB7XG5cbiAgcHJpdmF0ZSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJvdGVjdGVkIHBsYXRmb3JtQ29uZmlnID0gaW5qZWN0KEFYUF9QTEFURk9STV9DT05GSUdfVE9LRU4pO1xuICBwcml2YXRlIHNlc3Npb25TZXJ2aWNlID0gaW5qZWN0KEFYUFNlc3Npb25TZXJ2aWNlKTtcblxuICBwcm90ZWN0ZWQgdXNlciA9IHRoaXMuc2Vzc2lvblNlcnZpY2UudXNlcjtcbiAgcHJvdGVjdGVkIHRlbmFudHMkID0gb2YoW10pLy90aGlzLnNlc3Npb25TZXJ2aWNlLnRlbmFudHMkO1xuICBwcm90ZWN0ZWQgdGVuYW50ID0gdGhpcy5zZXNzaW9uU2VydmljZS50ZW5hbnQ7XG5cblxuICB0ZW5hbnRDaG9vc2VyKCkge1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2F1dGgvYWNjb3VudC90ZW5hbnQtY2hvb3NlciddKTtcbiAgfVxuXG4gIGFzeW5jIGhhbmRsZVNpZ25vdXQoKSB7XG4gICAgYXdhaXQgdGhpcy5zZXNzaW9uU2VydmljZS5zaWdub3V0KCk7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYXV0aC9sb2dpbiddKTtcbiAgfVxuXG5cbn1cbiIsIjxtYWluICp0cmFuc2xhdGU9XCJsZXQgdFwiXG4gIGNsYXNzPVwiYXgtdy1mdWxsIGF4LXNwYWNlLXktMTAgYXgtaC1bMTAwdmhdIGF4LWZsZXggYXgtZmxleC1jb2wgYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktY2VudGVyIGF4LWJnLXN1cmZhY2UgbWQ6YXgtYmctZGVmYXVsdFwiPlxuICA8c2VjdGlvbj5cbiAgICA8YXhwLWxvZ28gW3NvdXJjZV09XCJwbGF0Zm9ybUNvbmZpZy5sb2dvPy5jb2xvcmVkXCIgW2F0dHIuYWx0XT1cInBsYXRmb3JtQ29uZmlnLnRpdGxlXCJcbiAgICAgIGNsYXNzPVwiYXgtdy0zNiBheC1teC1hdXRvIGF4LXRleHQtMnhsIGF4LWZvbnQtYm9sZFwiPjwvYXhwLWxvZ28+XG4gIDwvc2VjdGlvbj5cbiAgPHNlY3Rpb24gY2xhc3M9XCJheC1mbGV4IGF4LWp1c3RpZnktY2VudGVyXCI+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJheC1mbGV4IGF4LWdhcC0yIGF4LWp1c3RpZnktY2VudGVyIGF4LXRleHQtY2VudGVyIGF4LWZsZXgtY29sIGF4LWl0ZW1zLWNlbnRlciBheC1ib3JkZXIgYXgtcm91bmRlZC1sZyBheC1zaGFkb3ctbGcgYXgtcC02IG1kOmF4LXctOTYgYXgtdy04MFwiPlxuICAgICAgPGF4LWF2YXRhciBjbGFzcz1cImF4LXJvdW5kZWQtZnVsbFwiIFtzaXplXT1cIjcyXCI+XG4gICAgICAgIEBpZih1c2VyPy5hdmF0YXIpe1xuICAgICAgICA8YXgtaW1hZ2UgW3NyY109XCJ1c2VyPy5hdmF0YXJcIj48L2F4LWltYWdlPlxuICAgICAgICB9XG4gICAgICA8L2F4LWF2YXRhcj5cbiAgICAgIDxoMiBjbGFzcz1cIm1kOmF4LXRleHQtbGcgYXgtZm9udC1tZWRpdW1cIj57eyB0KCd3ZWxjb21lJykgfCBhc3luYyB9fSwge3sgdXNlcj8udGl0bGUgfX08L2gyPlxuICAgICAgPGF4cC10ZW5hbnQtY2hvb3Nlci1kcm9wZG93bj48L2F4cC10ZW5hbnQtY2hvb3Nlci1kcm9wZG93bj5cbiAgICAgIDxwIGNsYXNzPVwiYXgtdGV4dC1uZXV0cmFsLTUwMCBheC10ZXh0LXNtIG1kOmF4LXRleHQtYmFzZSBheC1mb250LW1lZGl1bVwiPlxuICAgICAgICB7eyB0KFwiYXBwbGljYXRpb24tY2hvb3Nlci5kZXNjcmlwdGlvblwiLCB7IHNjb3BlOiBcImF1dGhcIiB9KSB8IGFzeW5jIH19XG4gICAgICA8L3A+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtbXQtMyBheC13LWZ1bGwgYXgtb3ZlcmZsb3ctYXV0byBheC1tYXgtaC1bMzAwcHhdIGF4LXBlLTJcIj5cbiAgICAgICAgPGF4cC1hcHAtY2hvb3Nlci1saXN0PjwvYXhwLWFwcC1jaG9vc2VyLWxpc3Q+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9zZWN0aW9uPlxuICA8c2VjdGlvbj5cbiAgICA8cCBjbGFzcz1cImF4LXRleHQtbmV1dHJhbC00MDAgYXgtdGV4dC1zbVwiPlxuICAgICAge3sgdChcImFwcGxpY2F0aW9uLWNob29zZXIuZm9vdGVyXCIsIHsgc2NvcGU6IFwiYXV0aFwiIH0pIHwgYXN5bmMgfX1cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ0ZW5hbnRzJCB8IGFzeW5jIGFzIHRlbmFudHNcIj5cbiAgICAgICAgQGlmKHRlbmFudHMubGVuZ3RoID4gMSl7XG4gICAgICAgIDxhIChjbGljayk9XCJ0ZW5hbnRDaG9vc2VyKClcIiBjbGFzcz1cImF4LXRleHQtcHJpbWFyeS01MDAgYXgtY3Vyc29yLXBvaW50ZXIgYXgtZm9udC1tZWRpdW0gaG92ZXI6YXgtdW5kZXJsaW5lXCI+XG4gICAgICAgICAge3sgdChcImFwcGxpY2F0aW9uLWNob29zZXIuYmFja0NvbXBhbnlcIiwgeyBzY29wZTogXCJhdXRoXCIgfSkgfCBhc3luYyB9fVxuICAgICAgICA8L2E+XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICA8YSAoY2xpY2spPVwiaGFuZGxlU2lnbm91dCgpXCIgY2xhc3M9XCJheC10ZXh0LXByaW1hcnktNTAwIGF4LWZvbnQtbWVkaXVtIGF4LWN1cnNvci1wb2ludGVyIGhvdmVyOmF4LXVuZGVybGluZVwiPlxuICAgICAgICAgIHt7IHQoXCJiYWNrTG9naW5cIiwgeyBzY29wZTogXCJhdXRoXCIgfSkgfCBhc3luYyB9fVxuICAgICAgICA8L2E+XG4gICAgICAgIH1cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvcD5cbiAgPC9zZWN0aW9uPlxuPC9tYWluPiJdfQ==
|
|
@@ -58,7 +58,7 @@ export class AXPAuthTenantChooserComponent {
|
|
|
58
58
|
this.subscription.unsubscribe();
|
|
59
59
|
}
|
|
60
60
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPAuthTenantChooserComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
61
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPAuthTenantChooserComponent, isStandalone: true, selector: "axp-auth-tenant-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 <p class=\"ax-text-neutral-500 ax-text-sm md:ax-text-base ax-font-medium\">\n {{ t(
|
|
61
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXPAuthTenantChooserComponent, isStandalone: true, selector: "axp-auth-tenant-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 <p class=\"ax-text-neutral-500 ax-text-sm md:ax-text-base ax-font-medium\">\n {{ t(\"tenant-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 @for(tenant of displayedTenants; track $index){\n <div\n class=\"ax-flex ax-gap-2 ax-justify-between ax-border-b last:ax-border-b-0 ax-py-3 ax-items-center ax-cursor-pointer\"\n (click)=\"handleChooseTenant(tenant)\">\n <div class=\"ax-flex ax-gap-2 ax-items-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-building ax-text-neutral-500 ax-text-lg\"> </ax-icon>\n </div>\n <span class=\"md:ax-text-base ax-text-sm\">{{ tenant.title }}</span>\n </div>\n @if(tenant.name===selectedTenant?.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 }\n </div>\n @if(allTenants && allTenants.length>4){\n <div class=\"ax-mt-6 ax-w-full ax-flex ax-justify-center\">\n <ax-button (onClick)=\"showAllTenants()\" class=\"ax-w-full\" look=\"outline\"\n [text]=\"showAll ? (t('viewLess') | async) : (t('viewAll') | async)\"></ax-button>\n </div>\n }\n </div>\n </section>\n <section>\n <p class=\"ax-text-neutral-400 ax-text-sm\">\n {{ t(\"tenant-chooser.footer\", { scope: \"auth\" }) | async }}\n <a (click)=\"handleSignout()\" class=\"ax-text-primary ax-cursor-pointer hover:ax-underline ax-font-medium\">\n {{ t(\"backLogin\", { scope: \"auth\" }) | async }}\n </a>\n </p>\n </section>\n</main>\n", styles: [":host{display:contents}.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: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXFormModule }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2.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: 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: i4.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i5.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXPLogoComponent, selector: "axp-logo", inputs: ["source"] }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i6.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i7.AXTranslatorDirective, selector: "[translate]" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
62
62
|
}
|
|
63
63
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPAuthTenantChooserComponent, decorators: [{
|
|
64
64
|
type: Component,
|
|
@@ -75,6 +75,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
75
75
|
AXPLogoComponent,
|
|
76
76
|
AXLoadingModule,
|
|
77
77
|
AXTranslationModule,
|
|
78
|
-
], encapsulation: ViewEncapsulation.None, standalone: true, 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 <p class=\"ax-text-neutral-500 ax-text-sm md:ax-text-base ax-font-medium\">\n {{ t(
|
|
78
|
+
], encapsulation: ViewEncapsulation.None, standalone: true, 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 <p class=\"ax-text-neutral-500 ax-text-sm md:ax-text-base ax-font-medium\">\n {{ t(\"tenant-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 @for(tenant of displayedTenants; track $index){\n <div\n class=\"ax-flex ax-gap-2 ax-justify-between ax-border-b last:ax-border-b-0 ax-py-3 ax-items-center ax-cursor-pointer\"\n (click)=\"handleChooseTenant(tenant)\">\n <div class=\"ax-flex ax-gap-2 ax-items-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-building ax-text-neutral-500 ax-text-lg\"> </ax-icon>\n </div>\n <span class=\"md:ax-text-base ax-text-sm\">{{ tenant.title }}</span>\n </div>\n @if(tenant.name===selectedTenant?.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 }\n </div>\n @if(allTenants && allTenants.length>4){\n <div class=\"ax-mt-6 ax-w-full ax-flex ax-justify-center\">\n <ax-button (onClick)=\"showAllTenants()\" class=\"ax-w-full\" look=\"outline\"\n [text]=\"showAll ? (t('viewLess') | async) : (t('viewAll') | async)\"></ax-button>\n </div>\n }\n </div>\n </section>\n <section>\n <p class=\"ax-text-neutral-400 ax-text-sm\">\n {{ t(\"tenant-chooser.footer\", { scope: \"auth\" }) | async }}\n <a (click)=\"handleSignout()\" class=\"ax-text-primary ax-cursor-pointer hover:ax-underline ax-font-medium\">\n {{ t(\"backLogin\", { scope: \"auth\" }) | async }}\n </a>\n </p>\n </section>\n</main>\n", styles: [":host{display:contents}.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"] }]
|
|
79
79
|
}] });
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVuYW50LWNob29zZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2F1dGgvc3JjL2xpYi9hY2NvdW50L3RlbmFudC1jaG9vc2VyL3RlbmFudC1jaG9vc2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9hdXRoL3NyYy9saWIvYWNjb3VudC90ZW5hbnQtY2hvb3Nlci90ZW5hbnQtY2hvb3Nlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixpQkFBaUIsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxpQkFBaUIsRUFBYSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHlC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bnQsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFYQXZhdGFyTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2F2YXRhcic7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhDaGVja0JveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jaGVjay1ib3gnO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEZvcm1Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZm9ybSc7XG5pbXBvcnQgeyBBWEltYWdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2ltYWdlJztcbmltcG9ydCB7IEFYTGFiZWxNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbGFiZWwnO1xuaW1wb3J0IHsgQVhMb2FkaW5nTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2xvYWRpbmcnO1xuaW1wb3J0IHsgQVhUZXh0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RleHQtYm94JztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhQU2Vzc2lvblNlcnZpY2UsIEFYUFRlbmFudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vYXV0aCc7XG5pbXBvcnQgeyBBWFBMb2dvQ29tcG9uZW50LCBBWFBfUExBVEZPUk1fQ09ORklHX1RPS0VOIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24sIGZpcnN0IH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4cC1hdXRoLXRlbmFudC1jaG9vc2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RlbmFudC1jaG9vc2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGVuYW50LWNob29zZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBBWEZvcm1Nb2R1bGUsXG4gICAgQVhUZXh0Qm94TW9kdWxlLFxuICAgIEFYQnV0dG9uTW9kdWxlLFxuICAgIEFYTGFiZWxNb2R1bGUsXG4gICAgQVhDaGVja0JveE1vZHVsZSxcbiAgICBBWEF2YXRhck1vZHVsZSxcbiAgICBBWEltYWdlTW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIEFYUExvZ29Db21wb25lbnQsXG4gICAgQVhMb2FkaW5nTW9kdWxlLFxuICAgIEFYVHJhbnNsYXRpb25Nb2R1bGUsXG4gIF0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEFYUEF1dGhUZW5hbnRDaG9vc2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBwcm90ZWN0ZWQgcGxhdGZvcm1Db25maWcgPSBpbmplY3QoQVhQX1BMQVRGT1JNX0NPTkZJR19UT0tFTik7XG4gIHByaXZhdGUgc2Vzc2lvblNlcnZpY2UgPSBpbmplY3QoQVhQU2Vzc2lvblNlcnZpY2UpO1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIHByb3RlY3RlZCB1c2VyID0gdGhpcy5zZXNzaW9uU2VydmljZS51c2VyO1xuXG4gIHByb3RlY3RlZCBzaG93QWxsID0gZmFsc2U7XG4gIHByb3RlY3RlZCBzZWxlY3RlZFRlbmFudDogQVhQVGVuYW50IHwgbnVsbCA9IG51bGw7XG4gIHByb3RlY3RlZCBkaXNwbGF5ZWRUZW5hbnRzOiBBWFBUZW5hbnRbXSA9IFtdO1xuICBwcm90ZWN0ZWQgYWxsVGVuYW50cyE6IEFYUFRlbmFudFtdO1xuXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVDaG9vc2VUZW5hbnQoaXRlbTogQVhQVGVuYW50KSB7XG4gICAgdGhpcy5zZWxlY3RlZFRlbmFudCA9IGl0ZW07XG4gICAgYXdhaXQgdGhpcy5zZXNzaW9uU2VydmljZS5zZXRUZW5hbnQoaXRlbSk7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYXV0aC9hY2NvdW50L2FwcC1jaG9vc2VyJ10pO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXNzaW9uU2VydmljZS50ZW5hbnRzJFxuICAgICAgLnBpcGUoZmlyc3QoKSlcbiAgICAgIC5zdWJzY3JpYmUoKHRlbmFudHMpID0+IHtcbiAgICAgICAgdGhpcy5kaXNwbGF5ZWRUZW5hbnRzID0gdGVuYW50cy5zbGljZSgwLCA0KTtcbiAgICAgICAgdGhpcy5hbGxUZW5hbnRzID0gdGVuYW50cztcbiAgICAgIH0pO1xuICB9XG5cbiAgc2hvd0FsbFRlbmFudHMoKSB7XG4gICAgdGhpcy5zaG93QWxsID0gIXRoaXMuc2hvd0FsbDtcbiAgICB0aGlzLmRpc3BsYXllZFRlbmFudHMgPSB0aGlzLnNob3dBbGwgPyB0aGlzLmFsbFRlbmFudHMgOiB0aGlzLmFsbFRlbmFudHMuc2xpY2UoMCwgNCk7XG4gIH1cblxuICBhc3luYyBoYW5kbGVTaWdub3V0KCkge1xuICAgIGF3YWl0IHRoaXMuc2Vzc2lvblNlcnZpY2Uuc2lnbm91dCgpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2F1dGgvbG9naW4nXSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iLCI8bWFpbiAqdHJhbnNsYXRlPVwibGV0IHRcIlxuICBjbGFzcz1cImF4LXctZnVsbCBheC1zcGFjZS15LTEwIGF4LWgtWzEwMHZoXSBheC1mbGV4IGF4LWZsZXgtY29sIGF4LWl0ZW1zLWNlbnRlciBheC1qdXN0aWZ5LWNlbnRlciBheC1iZy1zdXJmYWNlIG1kOmF4LWJnLWRlZmF1bHRcIj5cbiAgPHNlY3Rpb24+XG4gICAgPGF4cC1sb2dvIFtzb3VyY2VdPVwicGxhdGZvcm1Db25maWcubG9nbz8uY29sb3JlZFwiIFthdHRyLmFsdF09XCJwbGF0Zm9ybUNvbmZpZy50aXRsZVwiXG4gICAgICBjbGFzcz1cImF4LXctMzYgYXgtbXgtYXV0byBheC10ZXh0LTJ4bCBheC1mb250LWJvbGRcIj48L2F4cC1sb2dvPlxuICA8L3NlY3Rpb24+XG4gIDxzZWN0aW9uIGNsYXNzPVwiYXgtZmxleCBheC1qdXN0aWZ5LWNlbnRlclwiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiYXgtZmxleCBheC1nYXAtMiBheC1qdXN0aWZ5LWNlbnRlciBheC10ZXh0LWNlbnRlciBheC1mbGV4LWNvbCBheC1pdGVtcy1jZW50ZXIgYXgtYm9yZGVyIGF4LXJvdW5kZWQtbGcgYXgtc2hhZG93LWxnIGF4LXAtNiBtZDpheC13LTk2IGF4LXctODBcIj5cbiAgICAgIDxheC1hdmF0YXIgY2xhc3M9XCJheC1yb3VuZGVkLWZ1bGxcIiBbc2l6ZV09XCI3MlwiPlxuICAgICAgICBAaWYodXNlcj8uYXZhdGFyKXtcbiAgICAgICAgPGF4LWltYWdlIFtzcmNdPVwidXNlcj8uYXZhdGFyXCI+PC9heC1pbWFnZT5cbiAgICAgICAgfVxuICAgICAgPC9heC1hdmF0YXI+XG4gICAgICA8aDIgY2xhc3M9XCJtZDpheC10ZXh0LWxnIGF4LWZvbnQtbWVkaXVtXCI+e3sgdCgnd2VsY29tZScpIHwgYXN5bmMgfX0sIHt7IHVzZXI/LnRpdGxlIH19PC9oMj5cbiAgICAgIDxwIGNsYXNzPVwiYXgtdGV4dC1uZXV0cmFsLTUwMCBheC10ZXh0LXNtIG1kOmF4LXRleHQtYmFzZSBheC1mb250LW1lZGl1bVwiPlxuICAgICAgICB7eyB0KCd0ZW5hbnQtY2hvb3Nlci5kZXNjcmlwdGlvbicsIHsgc2NvcGU6ICdhdXRoJyB9KSB8IGFzeW5jIH19XG4gICAgICA8L3A+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtbXQtMyBheC13LWZ1bGwgYXgtb3ZlcmZsb3ctYXV0byBheC1tYXgtaC1bMzAwcHhdIGF4LXBlLTJcIj5cbiAgICAgICAgQGZvcih0ZW5hbnQgb2YgZGlzcGxheWVkVGVuYW50czsgdHJhY2sgJGluZGV4KXtcbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiYXgtZmxleCBheC1nYXAtMiBheC1qdXN0aWZ5LWJldHdlZW4gYXgtYm9yZGVyLWIgbGFzdDpheC1ib3JkZXItYi0wIGF4LXB5LTMgYXgtaXRlbXMtY2VudGVyIGF4LWN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlQ2hvb3NlVGVuYW50KHRlbmFudClcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1nYXAtMiBheC1pdGVtcy1jZW50ZXIgYXgtZm9udC1tZWRpdW1cIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJheC13LTEyIGF4LWgtMTIgYXgtZmxleCBheC1qdXN0aWZ5LWNlbnRlciBheC1pdGVtcy1jZW50ZXIgYXgtcm91bmRlZC1mdWxsIGF4LWJnLW5ldXRyYWwtMTAwIGF4LW0tYXV0b1wiPlxuICAgICAgICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImZhLXNvbGlkIGZhLWJ1aWxkaW5nIGF4LXRleHQtbmV1dHJhbC01MDAgYXgtdGV4dC1sZ1wiPiA8L2F4LWljb24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWQ6YXgtdGV4dC1iYXNlIGF4LXRleHQtc21cIj57eyB0ZW5hbnQudGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgQGlmKHRlbmFudC5uYW1lPT09c2VsZWN0ZWRUZW5hbnQ/Lm5hbWUpe1xuICAgICAgICAgIDxheC1sb2FkaW5nPjwvYXgtbG9hZGluZz5cbiAgICAgICAgICB9QGVsc2Uge1xuICAgICAgICAgIDxheC1pY29uIGNsYXNzPVwiZmEtc29saWQgZmEtY2hldnJvbi1yaWdodCBheC10ZXh0LW5ldXRyYWwtNDAwXCI+IDwvYXgtaWNvbj5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICAgIEBpZihhbGxUZW5hbnRzICYmIGFsbFRlbmFudHMubGVuZ3RoPjQpe1xuICAgICAgPGRpdiBjbGFzcz1cImF4LW10LTYgYXgtdy1mdWxsIGF4LWZsZXggYXgtanVzdGlmeS1jZW50ZXJcIj5cbiAgICAgICAgPGF4LWJ1dHRvbiAob25DbGljayk9XCJzaG93QWxsVGVuYW50cygpXCIgY2xhc3M9XCJheC13LWZ1bGxcIiBsb29rPVwib3V0bGluZVwiXG4gICAgICAgICAgW3RleHRdPVwic2hvd0FsbCA/ICh0KCd2aWV3TGVzcycpIHwgYXN5bmMpIDogKHQoJ3ZpZXdBbGwnKSB8IGFzeW5jKVwiPjwvYXgtYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIDwvc2VjdGlvbj5cbiAgPHNlY3Rpb24+XG4gICAgPHAgY2xhc3M9XCJheC10ZXh0LW5ldXRyYWwtNDAwIGF4LXRleHQtc21cIj5cbiAgICAgIHt7IHQoJ3RlbmFudC1jaG9vc2VyLmZvb3RlcicsIHsgc2NvcGU6ICdhdXRoJyB9KSB8IGFzeW5jIH19XG4gICAgICA8YSAoY2xpY2spPVwiaGFuZGxlU2lnbm91dCgpXCIgY2xhc3M9XCJheC10ZXh0LXByaW1hcnkgYXgtY3Vyc29yLXBvaW50ZXIgaG92ZXI6YXgtdW5kZXJsaW5lIGF4LWZvbnQtbWVkaXVtXCI+XG4gICAgICAgIHt7IHQoJ2JhY2tMb2dpbicsIHsgc2NvcGU6ICdhdXRoJyB9KSB8IGFzeW5jIH19XG4gICAgICA8L2E+XG4gICAgPC9wPlxuICA8L3NlY3Rpb24+XG48L21haW4+XG4iXX0=
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVuYW50LWNob29zZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2F1dGgvc3JjL2xpYi9hY2NvdW50L3RlbmFudC1jaG9vc2VyL3RlbmFudC1jaG9vc2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9hdXRoL3NyYy9saWIvYWNjb3VudC90ZW5hbnQtY2hvb3Nlci90ZW5hbnQtY2hvb3Nlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixpQkFBaUIsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxpQkFBaUIsRUFBYSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHlC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bnQsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFYQXZhdGFyTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2F2YXRhcic7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhDaGVja0JveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jaGVjay1ib3gnO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEZvcm1Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZm9ybSc7XG5pbXBvcnQgeyBBWEltYWdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2ltYWdlJztcbmltcG9ydCB7IEFYTGFiZWxNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbGFiZWwnO1xuaW1wb3J0IHsgQVhMb2FkaW5nTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2xvYWRpbmcnO1xuaW1wb3J0IHsgQVhUZXh0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RleHQtYm94JztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQVhQU2Vzc2lvblNlcnZpY2UsIEFYUFRlbmFudCB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vYXV0aCc7XG5pbXBvcnQgeyBBWFBMb2dvQ29tcG9uZW50LCBBWFBfUExBVEZPUk1fQ09ORklHX1RPS0VOIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24sIGZpcnN0IH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4cC1hdXRoLXRlbmFudC1jaG9vc2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RlbmFudC1jaG9vc2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGVuYW50LWNob29zZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBBWEZvcm1Nb2R1bGUsXG4gICAgQVhUZXh0Qm94TW9kdWxlLFxuICAgIEFYQnV0dG9uTW9kdWxlLFxuICAgIEFYTGFiZWxNb2R1bGUsXG4gICAgQVhDaGVja0JveE1vZHVsZSxcbiAgICBBWEF2YXRhck1vZHVsZSxcbiAgICBBWEltYWdlTW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIEFYUExvZ29Db21wb25lbnQsXG4gICAgQVhMb2FkaW5nTW9kdWxlLFxuICAgIEFYVHJhbnNsYXRpb25Nb2R1bGUsXG4gIF0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEFYUEF1dGhUZW5hbnRDaG9vc2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBwcm90ZWN0ZWQgcGxhdGZvcm1Db25maWcgPSBpbmplY3QoQVhQX1BMQVRGT1JNX0NPTkZJR19UT0tFTik7XG4gIHByaXZhdGUgc2Vzc2lvblNlcnZpY2UgPSBpbmplY3QoQVhQU2Vzc2lvblNlcnZpY2UpO1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIHByb3RlY3RlZCB1c2VyID0gdGhpcy5zZXNzaW9uU2VydmljZS51c2VyO1xuXG4gIHByb3RlY3RlZCBzaG93QWxsID0gZmFsc2U7XG4gIHByb3RlY3RlZCBzZWxlY3RlZFRlbmFudDogQVhQVGVuYW50IHwgbnVsbCA9IG51bGw7XG4gIHByb3RlY3RlZCBkaXNwbGF5ZWRUZW5hbnRzOiBBWFBUZW5hbnRbXSA9IFtdO1xuICBwcm90ZWN0ZWQgYWxsVGVuYW50cyE6IEFYUFRlbmFudFtdO1xuXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVDaG9vc2VUZW5hbnQoaXRlbTogQVhQVGVuYW50KSB7XG4gICAgdGhpcy5zZWxlY3RlZFRlbmFudCA9IGl0ZW07XG4gICAgYXdhaXQgdGhpcy5zZXNzaW9uU2VydmljZS5zZXRUZW5hbnQoaXRlbSk7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvYXV0aC9hY2NvdW50L2FwcC1jaG9vc2VyJ10pO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXNzaW9uU2VydmljZS50ZW5hbnRzJFxuICAgICAgLnBpcGUoZmlyc3QoKSlcbiAgICAgIC5zdWJzY3JpYmUoKHRlbmFudHMpID0+IHtcbiAgICAgICAgdGhpcy5kaXNwbGF5ZWRUZW5hbnRzID0gdGVuYW50cy5zbGljZSgwLCA0KTtcbiAgICAgICAgdGhpcy5hbGxUZW5hbnRzID0gdGVuYW50cztcbiAgICAgIH0pO1xuICB9XG5cbiAgc2hvd0FsbFRlbmFudHMoKSB7XG4gICAgdGhpcy5zaG93QWxsID0gIXRoaXMuc2hvd0FsbDtcbiAgICB0aGlzLmRpc3BsYXllZFRlbmFudHMgPSB0aGlzLnNob3dBbGwgPyB0aGlzLmFsbFRlbmFudHMgOiB0aGlzLmFsbFRlbmFudHMuc2xpY2UoMCwgNCk7XG4gIH1cblxuICBhc3luYyBoYW5kbGVTaWdub3V0KCkge1xuICAgIGF3YWl0IHRoaXMuc2Vzc2lvblNlcnZpY2Uuc2lnbm91dCgpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2F1dGgvbG9naW4nXSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG59XG4iLCI8bWFpbiAqdHJhbnNsYXRlPVwibGV0IHRcIlxuICBjbGFzcz1cImF4LXctZnVsbCBheC1zcGFjZS15LTEwIGF4LWgtWzEwMHZoXSBheC1mbGV4IGF4LWZsZXgtY29sIGF4LWl0ZW1zLWNlbnRlciBheC1qdXN0aWZ5LWNlbnRlciBheC1iZy1zdXJmYWNlIG1kOmF4LWJnLWRlZmF1bHRcIj5cbiAgPHNlY3Rpb24+XG4gICAgPGF4cC1sb2dvIFtzb3VyY2VdPVwicGxhdGZvcm1Db25maWcubG9nbz8uY29sb3JlZFwiIFthdHRyLmFsdF09XCJwbGF0Zm9ybUNvbmZpZy50aXRsZVwiXG4gICAgICBjbGFzcz1cImF4LXctMzYgYXgtbXgtYXV0byBheC10ZXh0LTJ4bCBheC1mb250LWJvbGRcIj48L2F4cC1sb2dvPlxuICA8L3NlY3Rpb24+XG4gIDxzZWN0aW9uIGNsYXNzPVwiYXgtZmxleCBheC1qdXN0aWZ5LWNlbnRlclwiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiYXgtZmxleCBheC1nYXAtMiBheC1qdXN0aWZ5LWNlbnRlciBheC10ZXh0LWNlbnRlciBheC1mbGV4LWNvbCBheC1pdGVtcy1jZW50ZXIgYXgtYm9yZGVyIGF4LXJvdW5kZWQtbGcgYXgtc2hhZG93LWxnIGF4LXAtNiBtZDpheC13LTk2IGF4LXctODBcIj5cbiAgICAgIDxheC1hdmF0YXIgY2xhc3M9XCJheC1yb3VuZGVkLWZ1bGxcIiBbc2l6ZV09XCI3MlwiPlxuICAgICAgICBAaWYodXNlcj8uYXZhdGFyKXtcbiAgICAgICAgPGF4LWltYWdlIFtzcmNdPVwidXNlcj8uYXZhdGFyXCI+PC9heC1pbWFnZT5cbiAgICAgICAgfVxuICAgICAgPC9heC1hdmF0YXI+XG4gICAgICA8aDIgY2xhc3M9XCJtZDpheC10ZXh0LWxnIGF4LWZvbnQtbWVkaXVtXCI+e3sgdCgnd2VsY29tZScpIHwgYXN5bmMgfX0sIHt7IHVzZXI/LnRpdGxlIH19PC9oMj5cbiAgICAgIDxwIGNsYXNzPVwiYXgtdGV4dC1uZXV0cmFsLTUwMCBheC10ZXh0LXNtIG1kOmF4LXRleHQtYmFzZSBheC1mb250LW1lZGl1bVwiPlxuICAgICAgICB7eyB0KFwidGVuYW50LWNob29zZXIuZGVzY3JpcHRpb25cIiwgeyBzY29wZTogXCJhdXRoXCIgfSkgfCBhc3luYyB9fVxuICAgICAgPC9wPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LW10LTMgYXgtdy1mdWxsIGF4LW92ZXJmbG93LWF1dG8gYXgtbWF4LWgtWzMwMHB4XSBheC1wZS0yXCI+XG4gICAgICAgIEBmb3IodGVuYW50IG9mIGRpc3BsYXllZFRlbmFudHM7IHRyYWNrICRpbmRleCl7XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cImF4LWZsZXggYXgtZ2FwLTIgYXgtanVzdGlmeS1iZXR3ZWVuIGF4LWJvcmRlci1iIGxhc3Q6YXgtYm9yZGVyLWItMCBheC1weS0zIGF4LWl0ZW1zLWNlbnRlciBheC1jdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgKGNsaWNrKT1cImhhbmRsZUNob29zZVRlbmFudCh0ZW5hbnQpXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZ2FwLTIgYXgtaXRlbXMtY2VudGVyIGF4LWZvbnQtbWVkaXVtXCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGNsYXNzPVwiYXgtdy0xMiBheC1oLTEyIGF4LWZsZXggYXgtanVzdGlmeS1jZW50ZXIgYXgtaXRlbXMtY2VudGVyIGF4LXJvdW5kZWQtZnVsbCBheC1iZy1uZXV0cmFsLTEwMCBheC1tLWF1dG9cIj5cbiAgICAgICAgICAgICAgPGF4LWljb24gY2xhc3M9XCJmYS1zb2xpZCBmYS1idWlsZGluZyBheC10ZXh0LW5ldXRyYWwtNTAwIGF4LXRleHQtbGdcIj4gPC9heC1pY29uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1kOmF4LXRleHQtYmFzZSBheC10ZXh0LXNtXCI+e3sgdGVuYW50LnRpdGxlIH19PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIEBpZih0ZW5hbnQubmFtZT09PXNlbGVjdGVkVGVuYW50Py5uYW1lKXtcbiAgICAgICAgICA8YXgtbG9hZGluZz48L2F4LWxvYWRpbmc+XG4gICAgICAgICAgfUBlbHNlIHtcbiAgICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImZhLXNvbGlkIGZhLWNoZXZyb24tcmlnaHQgYXgtdGV4dC1uZXV0cmFsLTQwMFwiPiA8L2F4LWljb24+XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgICBAaWYoYWxsVGVuYW50cyAmJiBhbGxUZW5hbnRzLmxlbmd0aD40KXtcbiAgICAgIDxkaXYgY2xhc3M9XCJheC1tdC02IGF4LXctZnVsbCBheC1mbGV4IGF4LWp1c3RpZnktY2VudGVyXCI+XG4gICAgICAgIDxheC1idXR0b24gKG9uQ2xpY2spPVwic2hvd0FsbFRlbmFudHMoKVwiIGNsYXNzPVwiYXgtdy1mdWxsXCIgbG9vaz1cIm91dGxpbmVcIlxuICAgICAgICAgIFt0ZXh0XT1cInNob3dBbGwgPyAodCgndmlld0xlc3MnKSB8IGFzeW5jKSA6ICh0KCd2aWV3QWxsJykgfCBhc3luYylcIj48L2F4LWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuICA8L3NlY3Rpb24+XG4gIDxzZWN0aW9uPlxuICAgIDxwIGNsYXNzPVwiYXgtdGV4dC1uZXV0cmFsLTQwMCBheC10ZXh0LXNtXCI+XG4gICAgICB7eyB0KFwidGVuYW50LWNob29zZXIuZm9vdGVyXCIsIHsgc2NvcGU6IFwiYXV0aFwiIH0pIHwgYXN5bmMgfX1cbiAgICAgIDxhIChjbGljayk9XCJoYW5kbGVTaWdub3V0KClcIiBjbGFzcz1cImF4LXRleHQtcHJpbWFyeSBheC1jdXJzb3ItcG9pbnRlciBob3ZlcjpheC11bmRlcmxpbmUgYXgtZm9udC1tZWRpdW1cIj5cbiAgICAgICAge3sgdChcImJhY2tMb2dpblwiLCB7IHNjb3BlOiBcImF1dGhcIiB9KSB8IGFzeW5jIH19XG4gICAgICA8L2E+XG4gICAgPC9wPlxuICA8L3NlY3Rpb24+XG48L21haW4+XG4iXX0=
|
|
@@ -20,4 +20,4 @@ export const AXMDefaultAuthConfigs = {
|
|
|
20
20
|
export function configAuthModule(config = AXMDefaultAuthConfigs) {
|
|
21
21
|
return { ...AXMDefaultAuthConfigs, ...config };
|
|
22
22
|
}
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXV0aC9zcmMvbGliL2F1dGguY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFOLElBQVksc0JBT1g7QUFQRCxXQUFZLHNCQUFzQjtJQUNoQywyRkFBZ0IsQ0FBQTtJQUNoQixxR0FBcUIsQ0FBQTtJQUNyQixxRkFBYSxDQUFBO0lBQ2IsdUZBQWMsQ0FBQTtJQUNkLDZFQUFTLENBQUE7SUFDVCwrRUFBVSxDQUFBO0FBQ1osQ0FBQyxFQVBXLHNCQUFzQixLQUF0QixzQkFBc0IsUUFPakM7QUFFRCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FBaUIsd0JBQXdCLEVBQUU7SUFDaEcsVUFBVSxFQUFFLE1BQU07SUFDbEIsT0FBTyxFQUFFLEdBQUcsRUFBRTtRQUNaLE9BQU8scUJBQXFCLENBQUM7SUFDL0IsQ0FBQztDQUNGLENBQUMsQ0FBQztBQW9CSCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBbUI7SUFDbkQsSUFBSSxFQUFFLHNCQUFzQixDQUFDLGdCQUFnQjtDQUM5QyxDQUFDO0FBRUYsTUFBTSxVQUFVLGdCQUFnQixDQUFDLFNBQWtDLHFCQUFxQjtJQUN0RixPQUFPLEVBQUUsR0FBRyxxQkFBcUIsRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUFDO0FBQ2pELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXV0aENvbmZpZyB9IGZyb20gJ2FuZ3VsYXItb2F1dGgyLW9pZGMnO1xuXG5leHBvcnQgZW51bSBBWE1BdXRoZW50aWNhdGlvblR5cGVzIHtcbiAgVXNlcm5hbWVQYXNzd29yZCxcbiAgVXNlcm5hbWVFbWFpbFBhc3N3b3JkLFxuICBFbWFpbFBhc3N3b3JkLFxuICBNb2JpbGVQYXNzd29yZCxcbiAgRW1haWxDb2RlLFxuICBNb2JpbGVDb2RlLFxufVxuXG5leHBvcnQgY29uc3QgQVhNX0FVVEhfQ09ORklHX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPEFYTUF1dGhDb25maWdzPignYXBwLW1vZHVsZS1hdXRoLWNvbmZpZycsIHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICBmYWN0b3J5OiAoKSA9PiB7XG4gICAgcmV0dXJuIEFYTURlZmF1bHRBdXRoQ29uZmlncztcbiAgfSxcbn0pO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFYTUF1dGhDb25maWdzIHtcbiAgdHlwZTogQVhNQXV0aGVudGljYXRpb25UeXBlcztcbiAgLy8gb2lkY19zZXR0aW5ncz86IFVzZXJNYW5hZ2VyU2V0dGluZ3M7XG4gIGF1dGhDb25maWc/OiBBdXRoQ29uZmlnO1xuICBlbmRfdXJsPzogc3RyaW5nO1xuICBzaWdudXA/OiB7XG4gICAgZW5hYmxlOiBib29sZWFuO1xuICAgIHVybD86IHN0cmluZztcbiAgfTtcbiAgc2lnbmluX2dvb2dsZT86IGJvb2xlYW47XG4gIHNpZ25pbl9hcHBsZT86IGJvb2xlYW47XG4gIHNpZ25pblBhZ2U/OiB7XG4gICAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgICBzbG9nYW46IHN0cmluZztcbiAgfTtcbiAgaWRsZVRpbWVvdXQ/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjb25zdCBBWE1EZWZhdWx0QXV0aENvbmZpZ3M6IEFYTUF1dGhDb25maWdzID0ge1xuICB0eXBlOiBBWE1BdXRoZW50aWNhdGlvblR5cGVzLlVzZXJuYW1lUGFzc3dvcmQsXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gY29uZmlnQXV0aE1vZHVsZShjb25maWc6IFBhcnRpYWw8QVhNQXV0aENvbmZpZ3M+ID0gQVhNRGVmYXVsdEF1dGhDb25maWdzKTogQVhNQXV0aENvbmZpZ3Mge1xuICByZXR1cm4geyAuLi5BWE1EZWZhdWx0QXV0aENvbmZpZ3MsIC4uLmNvbmZpZyB9O1xufVxuIl19
|
|
@@ -47,10 +47,10 @@ export class AXPForgetPasswordComponent {
|
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
49
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPForgetPasswordComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
50
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPForgetPasswordComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<div class=\"ax-text-center ax-mb-4\" *translate=\"let t\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">{{ t('forgot.password',{scope:'auth'}) | async }}</h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('forgot.hint',{ scope:'auth', params:{ name:(t(l1,{scope:'auth'}) | async) } }) | async }}\n </p>\n</div>\n<div class=\"ax-w-80 lg:ax-w-96\" *translate=\"let t\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-6\">\n <ax-form-field>\n <ax-label>{{ t(l1,{scope:'auth'}) | async }}</ax-label>\n <ax-text-box></ax-text-box>\n </ax-form-field>\n </div>\n <ax-button color=\"primary\" class=\"ax-mt-6 ax-w-full\" [text]=\"t('forgot.submit',{scope:'auth'}) | async\"></ax-button>\n <div class=\"ax-text-center ax-mt-6 ax-text-sm ax-font-normal\">\n <span> {{ t('forgot.remember',{scope:'auth'}) | async}} </span>\n <a [routerLink]=\"['/auth/login']\" class=\"ax-link ax-font-semibold\">{{ t('signin.title',{scope:'auth'}) |\n async }}</a>\n </div>\n </ax-form>\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i2.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "component", type: i2.AXFormComponent, selector: "ax-form", inputs: ["labelMode", "messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i3.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXPasswordBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4.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: AXLabelModule }, { kind: "component", type: i5.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i6.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i7.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
|
|
50
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPForgetPasswordComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<div class=\"ax-text-center ax-mb-4\" *translate=\"let t\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">{{ t('forgot.password',{scope:'auth'}) | async }}</h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('forgot.hint',{ scope:'auth', params:{ name:(t(l1,{scope:'auth'}) | async) } }) | async }}\n </p>\n</div>\n<div class=\"ax-w-80 lg:ax-w-96\" *translate=\"let t\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-6\">\n <ax-form-field>\n <ax-label>{{ t(l1,{scope:'auth'}) | async }}</ax-label>\n <ax-text-box></ax-text-box>\n </ax-form-field>\n </div>\n <ax-button color=\"primary\" class=\"ax-mt-6 ax-w-full\" [text]=\"t('forgot.submit',{scope:'auth'}) | async\"></ax-button>\n <div class=\"ax-text-center ax-mt-6 ax-text-sm ax-font-normal\">\n <span> {{ t('forgot.remember',{scope:'auth'}) | async}} </span>\n <a [routerLink]=\"['/auth/login']\" class=\"ax-link ax-font-semibold\">{{ t('signin.title',{scope:'auth'}) |\n async }}</a>\n </div>\n </ax-form>\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i2.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "component", type: i2.AXFormComponent, selector: "ax-form", inputs: ["labelMode", "look", "messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i3.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXPasswordBoxModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4.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: AXLabelModule }, { kind: "component", type: i5.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i6.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i7.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
|
|
51
51
|
}
|
|
52
52
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPForgetPasswordComponent, decorators: [{
|
|
53
53
|
type: Component,
|
|
54
54
|
args: [{ imports: [...MODULES], standalone: true, template: "<div class=\"ax-text-center ax-mb-4\" *translate=\"let t\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">{{ t('forgot.password',{scope:'auth'}) | async }}</h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('forgot.hint',{ scope:'auth', params:{ name:(t(l1,{scope:'auth'}) | async) } }) | async }}\n </p>\n</div>\n<div class=\"ax-w-80 lg:ax-w-96\" *translate=\"let t\">\n <ax-form>\n <div class=\"ax-flex ax-flex-col ax-gap-6\">\n <ax-form-field>\n <ax-label>{{ t(l1,{scope:'auth'}) | async }}</ax-label>\n <ax-text-box></ax-text-box>\n </ax-form-field>\n </div>\n <ax-button color=\"primary\" class=\"ax-mt-6 ax-w-full\" [text]=\"t('forgot.submit',{scope:'auth'}) | async\"></ax-button>\n <div class=\"ax-text-center ax-mt-6 ax-text-sm ax-font-normal\">\n <span> {{ t('forgot.remember',{scope:'auth'}) | async}} </span>\n <a [routerLink]=\"['/auth/login']\" class=\"ax-link ax-font-semibold\">{{ t('signin.title',{scope:'auth'}) |\n async }}</a>\n </div>\n </ax-form>\n</div>" }]
|
|
55
55
|
}] });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2F1dGgvc3JjL2xpYi9mb3Jnb3QvcGFzc3dvcmQvcGFzc3dvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2F1dGgvc3JjL2xpYi9mb3Jnb3QvcGFzc3dvcmQvcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFrQixzQkFBc0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7Ozs7Ozs7QUFFbEcsTUFBTSxPQUFPLEdBQUc7SUFDZCxZQUFZO0lBQ1osWUFBWTtJQUNaLGVBQWU7SUFDZixtQkFBbUI7SUFDbkIsY0FBYztJQUNkLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsbUJBQW1CO0lBQ25CLFlBQVk7Q0FDYixDQUFDO0FBT0YsTUFBTSxPQUFPLDBCQUEwQjtJQUx2QztRQVNZLFlBQU8sR0FBbUIsTUFBTSxDQUFpQixxQkFBcUIsQ0FBQyxDQUFDO0tBaUJuRjtJQWZDLFFBQVE7UUFDTixJQUFJLENBQUMsRUFBRSxHQUFHLFVBQVUsQ0FBQztRQUNyQixRQUFRLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDMUIsS0FBSyxzQkFBc0IsQ0FBQyxhQUFhO2dCQUN2QyxJQUFJLENBQUMsRUFBRSxHQUFHLE9BQU8sQ0FBQztnQkFDbEIsTUFBTTtZQUNSLEtBQUssc0JBQXNCLENBQUMsY0FBYztnQkFDeEMsSUFBSSxDQUFDLEVBQUUsR0FBRyxRQUFRLENBQUM7Z0JBRW5CLE1BQU07WUFDUixLQUFLLHNCQUFzQixDQUFDLGdCQUFnQixDQUFDO1lBQzdDO2dCQUNFLElBQUksQ0FBQyxFQUFFLEdBQUcsVUFBVSxDQUFDO1FBQ3pCLENBQUM7SUFDSCxDQUFDOzhHQXBCVSwwQkFBMEI7a0dBQTFCLDBCQUEwQix3RUM3QnZDLDhoQ0FxQk0sMkNEUkosWUFBWSxtRkFDWixZQUFZLGtUQUNaLGVBQWUscWJBQ2YsbUJBQW1CLDhCQUNuQixjQUFjLHVaQUNkLGFBQWEsZ0tBQ2IsZ0JBQWdCLDhCQUNoQixtQkFBbUIsOEdBQ25CLFlBQVk7OzJGQVFELDBCQUEwQjtrQkFMdEMsU0FBUzs4QkFFQyxDQUFDLEdBQUcsT0FBTyxDQUFDLGNBQ1QsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWENoZWNrQm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NoZWNrLWJveCc7XG5pbXBvcnQgeyBBWEZvcm1Nb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZm9ybSc7XG5pbXBvcnQgeyBBWExhYmVsTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2xhYmVsJztcbmltcG9ydCB7IEFYUGFzc3dvcmRCb3hNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcGFzc3dvcmQtYm94JztcbmltcG9ydCB7IEFYVGV4dEJveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90ZXh0LWJveCc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQVhNQXV0aENvbmZpZ3MsIEFYTUF1dGhlbnRpY2F0aW9uVHlwZXMsIEFYTV9BVVRIX0NPTkZJR19UT0tFTiB9IGZyb20gJy4uLy4uL2F1dGguY29uZmlnJztcblxuY29uc3QgTU9EVUxFUyA9IFtcbiAgQ29tbW9uTW9kdWxlLFxuICBBWEZvcm1Nb2R1bGUsXG4gIEFYVGV4dEJveE1vZHVsZSxcbiAgQVhQYXNzd29yZEJveE1vZHVsZSxcbiAgQVhCdXR0b25Nb2R1bGUsXG4gIEFYTGFiZWxNb2R1bGUsXG4gIEFYQ2hlY2tCb3hNb2R1bGUsXG4gIEFYVHJhbnNsYXRpb25Nb2R1bGUsXG4gIFJvdXRlck1vZHVsZSxcbl07XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwnLFxuICBpbXBvcnRzOiBbLi4uTU9EVUxFU10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEFYUEZvcmdldFBhc3N3b3JkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJvdGVjdGVkIGwxITogc3RyaW5nO1xuICBwcm90ZWN0ZWQgbDIhOiBzdHJpbmc7XG5cbiAgcHJvdGVjdGVkIGNvbmZpZ3M6IEFYTUF1dGhDb25maWdzID0gaW5qZWN0PEFYTUF1dGhDb25maWdzPihBWE1fQVVUSF9DT05GSUdfVE9LRU4pO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubDIgPSAncGFzc3dvcmQnO1xuICAgIHN3aXRjaCAodGhpcy5jb25maWdzLnR5cGUpIHtcbiAgICAgIGNhc2UgQVhNQXV0aGVudGljYXRpb25UeXBlcy5FbWFpbFBhc3N3b3JkOlxuICAgICAgICB0aGlzLmwxID0gJ2VtYWlsJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEFYTUF1dGhlbnRpY2F0aW9uVHlwZXMuTW9iaWxlUGFzc3dvcmQ6XG4gICAgICAgIHRoaXMubDEgPSAnbW9iaWxlJztcblxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgQVhNQXV0aGVudGljYXRpb25UeXBlcy5Vc2VybmFtZVBhc3N3b3JkOlxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5sMSA9ICd1c2VybmFtZSc7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYXgtdGV4dC1jZW50ZXIgYXgtbWItNFwiICp0cmFuc2xhdGU9XCJsZXQgdFwiPlxuICA8aDEgY2xhc3M9XCJheC1mb250LWJvbGQgYXgtdGV4dC14bCBheC1tYi0yXCI+e3sgdCgnZm9yZ290LnBhc3N3b3JkJyx7c2NvcGU6J2F1dGgnfSkgfCBhc3luYyB9fTwvaDE+XG4gIDxwIGNsYXNzPVwiYXgtdGV4dC1iYXNlIGF4LXRleHQtbmV1dHJhbC02MDBcIj5cbiAgICB7eyB0KCdmb3Jnb3QuaGludCcseyBzY29wZTonYXV0aCcsIHBhcmFtczp7IG5hbWU6KHQobDEse3Njb3BlOidhdXRoJ30pIHwgYXN5bmMpIH0gfSkgfCBhc3luYyB9fVxuICA8L3A+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJheC13LTgwIGxnOmF4LXctOTZcIiAqdHJhbnNsYXRlPVwibGV0IHRcIj5cbiAgPGF4LWZvcm0+XG4gICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtZ2FwLTZcIj5cbiAgICAgIDxheC1mb3JtLWZpZWxkPlxuICAgICAgICA8YXgtbGFiZWw+e3sgdChsMSx7c2NvcGU6J2F1dGgnfSkgfCBhc3luYyB9fTwvYXgtbGFiZWw+XG4gICAgICAgIDxheC10ZXh0LWJveD48L2F4LXRleHQtYm94PlxuICAgICAgPC9heC1mb3JtLWZpZWxkPlxuICAgIDwvZGl2PlxuICAgIDxheC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgY2xhc3M9XCJheC1tdC02IGF4LXctZnVsbFwiIFt0ZXh0XT1cInQoJ2ZvcmdvdC5zdWJtaXQnLHtzY29wZTonYXV0aCd9KSB8IGFzeW5jXCI+PC9heC1idXR0b24+XG4gICAgPGRpdiBjbGFzcz1cImF4LXRleHQtY2VudGVyIGF4LW10LTYgYXgtdGV4dC1zbSBheC1mb250LW5vcm1hbFwiPlxuICAgICAgPHNwYW4+IHt7IHQoJ2ZvcmdvdC5yZW1lbWJlcicse3Njb3BlOidhdXRoJ30pIHwgYXN5bmN9fSA8L3NwYW4+XG4gICAgICA8YSBbcm91dGVyTGlua109XCJbJy9hdXRoL2xvZ2luJ11cIiBjbGFzcz1cImF4LWxpbmsgYXgtZm9udC1zZW1pYm9sZFwiPnt7IHQoJ3NpZ25pbi50aXRsZScse3Njb3BlOidhdXRoJ30pIHxcbiAgICAgICAgYXN5bmMgfX08L2E+XG4gICAgPC9kaXY+XG4gIDwvYXgtZm9ybT5cbjwvZGl2PiJdfQ==
|