@acorex/modules 18.0.10 → 18.0.11

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.
Files changed (35) hide show
  1. package/application-management/README.md +4 -0
  2. package/application-management/index.d.ts +1 -0
  3. package/application-management/lib/application-management.module.d.ts +6 -0
  4. package/auth/lib/account/profile/profile-slot.component.d.ts +5 -0
  5. package/esm2022/application-management/acorex-modules-application-management.mjs +5 -0
  6. package/esm2022/application-management/index.mjs +2 -0
  7. package/esm2022/application-management/lib/application-management.module.mjs +16 -0
  8. package/esm2022/auth/lib/account/profile/profile-slot.component.mjs +24 -6
  9. package/esm2022/auth/lib/login/password/password.component.mjs +3 -3
  10. package/fesm2022/acorex-modules-application-management.mjs +23 -0
  11. package/fesm2022/acorex-modules-application-management.mjs.map +1 -0
  12. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-d_YCfQWo.mjs → acorex-modules-auth-acorex-modules-auth-B8LgaiHl.mjs} +33 -16
  13. package/fesm2022/acorex-modules-auth-acorex-modules-auth-B8LgaiHl.mjs.map +1 -0
  14. package/fesm2022/{acorex-modules-auth-app-chooser.component-D6LlSqNY.mjs → acorex-modules-auth-app-chooser.component-DYP5fP8W.mjs} +4 -4
  15. package/fesm2022/{acorex-modules-auth-app-chooser.component-D6LlSqNY.mjs.map → acorex-modules-auth-app-chooser.component-DYP5fP8W.mjs.map} +1 -1
  16. package/fesm2022/{acorex-modules-auth-login.module-DZ0QDjNv.mjs → acorex-modules-auth-login.module-B3xEQTTg.mjs} +4 -4
  17. package/fesm2022/{acorex-modules-auth-login.module-DZ0QDjNv.mjs.map → acorex-modules-auth-login.module-B3xEQTTg.mjs.map} +1 -1
  18. package/fesm2022/{acorex-modules-auth-master.layout-CjfjDdzw.mjs → acorex-modules-auth-master.layout-DczZtXmF.mjs} +2 -2
  19. package/fesm2022/{acorex-modules-auth-master.layout-CjfjDdzw.mjs.map → acorex-modules-auth-master.layout-DczZtXmF.mjs.map} +1 -1
  20. package/fesm2022/{acorex-modules-auth-password.component-CAw3jKFN.mjs → acorex-modules-auth-password.component-BaeFOot_.mjs} +4 -4
  21. package/fesm2022/{acorex-modules-auth-password.component-CAw3jKFN.mjs.map → acorex-modules-auth-password.component-BaeFOot_.mjs.map} +1 -1
  22. package/fesm2022/{acorex-modules-auth-password.component-BudkNaNl.mjs → acorex-modules-auth-password.component-CJMstlMr.mjs} +5 -5
  23. package/fesm2022/acorex-modules-auth-password.component-CJMstlMr.mjs.map +1 -0
  24. package/fesm2022/{acorex-modules-auth-routes-CTyAW4kk.mjs → acorex-modules-auth-routes-DScu3qYW.mjs} +2 -2
  25. package/fesm2022/{acorex-modules-auth-routes-CTyAW4kk.mjs.map → acorex-modules-auth-routes-DScu3qYW.mjs.map} +1 -1
  26. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-B_uu2uK2.mjs → acorex-modules-auth-tenant-chooser.component-CHr5_kh7.mjs} +3 -3
  27. package/fesm2022/{acorex-modules-auth-tenant-chooser.component-B_uu2uK2.mjs.map → acorex-modules-auth-tenant-chooser.component-CHr5_kh7.mjs.map} +1 -1
  28. package/fesm2022/{acorex-modules-auth-two-factor-code.component-BfS5gngN.mjs → acorex-modules-auth-two-factor-code.component-B_7l39pX.mjs} +3 -3
  29. package/fesm2022/{acorex-modules-auth-two-factor-code.component-BfS5gngN.mjs.map → acorex-modules-auth-two-factor-code.component-B_7l39pX.mjs.map} +1 -1
  30. package/fesm2022/{acorex-modules-auth-two-factor.module-D-jZC2Fc.mjs → acorex-modules-auth-two-factor.module-BzdjoEGS.mjs} +3 -3
  31. package/fesm2022/{acorex-modules-auth-two-factor.module-D-jZC2Fc.mjs.map → acorex-modules-auth-two-factor.module-BzdjoEGS.mjs.map} +1 -1
  32. package/fesm2022/acorex-modules-auth.mjs +1 -1
  33. package/package.json +13 -7
  34. package/fesm2022/acorex-modules-auth-acorex-modules-auth-d_YCfQWo.mjs.map +0 -1
  35. package/fesm2022/acorex-modules-auth-password.component-BudkNaNl.mjs.map +0 -1
@@ -0,0 +1,4 @@
1
+ # @acorex/modules/application-management
2
+
3
+ Secondary entry point of `@acorex/modules`. It can be used by importing from `@acorex/modules/application-management`.
4
+
@@ -0,0 +1 @@
1
+ export * from './lib/application-management.module';
@@ -0,0 +1,6 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class AXMApplicationManagementModule {
3
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXMApplicationManagementModule, never>;
4
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXMApplicationManagementModule, never, never, never>;
5
+ static ɵinj: i0.ɵɵInjectorDeclaration<AXMApplicationManagementModule>;
6
+ }
@@ -1,3 +1,4 @@
1
+ import { AXHtmlEvent } from '@acorex/components/common';
1
2
  import { AXPopoverComponent } from '@acorex/components/popover';
2
3
  import * as i0 from "@angular/core";
3
4
  export declare class AXMAuthProfileSlotComponent {
@@ -5,6 +6,8 @@ export declare class AXMAuthProfileSlotComponent {
5
6
  private sessionService;
6
7
  private dataService;
7
8
  private mockerService;
9
+ protected hasPicture: import("@angular/core").WritableSignal<boolean>;
10
+ protected avatarText: import("@angular/core").WritableSignal<string>;
8
11
  constructor();
9
12
  protected src: string;
10
13
  protected user$: import("rxjs").Observable<import("@acorex/platform/auth").AXPUser | null>;
@@ -15,6 +18,8 @@ export declare class AXMAuthProfileSlotComponent {
15
18
  logOut(): Promise<void>;
16
19
  toggleProfileMenu(): void;
17
20
  protected handleSignIn(): void;
21
+ protected onImageError(event: AXHtmlEvent<ErrorEvent>): void;
22
+ protected getAvatarText: () => void;
18
23
  private loadImage;
19
24
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMAuthProfileSlotComponent, never>;
20
25
  static ɵcmp: i0.ɵɵComponentDeclaration<AXMAuthProfileSlotComponent, "ng-component", never, {}, {}, never, never, true, never>;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LW1vZHVsZXMtYXBwbGljYXRpb24tbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9hcHBsaWNhdGlvbi1tYW5hZ2VtZW50L3NyYy9hY29yZXgtbW9kdWxlcy1hcHBsaWNhdGlvbi1tYW5hZ2VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -0,0 +1,2 @@
1
+ export * from './lib/application-management.module';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXBwbGljYXRpb24tbWFuYWdlbWVudC9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsY0FBYyxxQ0FBcUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuZXhwb3J0ICogZnJvbSAnLi9saWIvYXBwbGljYXRpb24tbWFuYWdlbWVudC5tb2R1bGUnO1xuICAgICAgICAgICAgICAgICJdfQ==
@@ -0,0 +1,16 @@
1
+ import { NgModule } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export class AXMApplicationManagementModule {
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMApplicationManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
5
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: AXMApplicationManagementModule }); }
6
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMApplicationManagementModule }); }
7
+ }
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMApplicationManagementModule, decorators: [{
9
+ type: NgModule,
10
+ args: [{
11
+ imports: [],
12
+ exports: [],
13
+ declarations: [],
14
+ }]
15
+ }] });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24tbWFuYWdlbWVudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXBwbGljYXRpb24tbWFuYWdlbWVudC9zcmMvbGliL2FwcGxpY2F0aW9uLW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTXpDLE1BQU0sT0FBTyw4QkFBOEI7OEdBQTlCLDhCQUE4QjsrR0FBOUIsOEJBQThCOytHQUE5Qiw4QkFBOEI7OzJGQUE5Qiw4QkFBOEI7a0JBTDFDLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLEVBQUU7b0JBQ1gsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLEVBQUU7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXSxcbiAgICBleHBvcnRzOiBbXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1BcHBsaWNhdGlvbk1hbmFnZW1lbnRNb2R1bGUge1xufVxuICAgICAgICAgICAgICAgICAgICAiXX0=
@@ -9,8 +9,9 @@ import { AXPSessionService } from '@acorex/platform/auth';
9
9
  import { AXPDataProvider } from '@acorex/platform/common';
10
10
  import { MockDataService } from '@acorex/platform/mocks';
11
11
  import { CommonModule } from '@angular/common';
12
- import { Component, ViewChild, inject } from '@angular/core';
12
+ import { Component, ViewChild, inject, signal } from '@angular/core';
13
13
  import { Router } from '@angular/router';
14
+ import { first } from 'rxjs';
14
15
  import { AXPTenantChooserDropdownComponent } from '../tenant-chooser/tenant-chooser-dropdown.component';
15
16
  import * as i0 from "@angular/core";
16
17
  import * as i1 from "@angular/common";
@@ -27,10 +28,23 @@ export class AXMAuthProfileSlotComponent {
27
28
  this.sessionService = inject(AXPSessionService);
28
29
  this.dataService = inject(AXPDataProvider, { optional: true });
29
30
  this.mockerService = inject(MockDataService);
31
+ this.hasPicture = signal(true);
32
+ this.avatarText = signal('');
30
33
  this.user$ = this.sessionService.user$;
31
34
  this.tenant$ = this.sessionService.tenant$;
32
35
  this.isAuthenticated$ = this.sessionService.isAuthenticated$;
36
+ this.getAvatarText = () => {
37
+ this.user$.pipe(first()).subscribe((user) => {
38
+ const names = user?.title.split(' ');
39
+ if (names?.length && names?.length > 1) {
40
+ this.avatarText.set(`${names[0][0].toUpperCase()}${names[names.length - 1][0].toUpperCase()}`);
41
+ }
42
+ else
43
+ return this.avatarText.set('AC');
44
+ });
45
+ };
33
46
  this.loadImage();
47
+ this.getAvatarText();
34
48
  }
35
49
  editProfile() {
36
50
  const appName = this.sessionService.application?.name;
@@ -55,6 +69,9 @@ export class AXMAuthProfileSlotComponent {
55
69
  handleSignIn() {
56
70
  this.router.navigate(['/auth/login']);
57
71
  }
72
+ onImageError(event) {
73
+ this.hasPicture.set(false);
74
+ }
58
75
  async loadImage() {
59
76
  try {
60
77
  const url = this.sessionService.user?.avatar;
@@ -62,7 +79,6 @@ export class AXMAuthProfileSlotComponent {
62
79
  this.src = url;
63
80
  }
64
81
  else if (this.sessionService.user?.avatar != 'null' && this.dataService) {
65
- //TODO: Remove dataService and mockService
66
82
  const blob = await this.dataService.viewFile(url, '');
67
83
  this.src = URL.createObjectURL(blob);
68
84
  }
@@ -71,11 +87,13 @@ export class AXMAuthProfileSlotComponent {
71
87
  }
72
88
  }
73
89
  catch (error) {
90
+ this.hasPicture.set(false);
74
91
  console.error('Failed to load image by ID:', error);
92
+ this.src = '';
75
93
  }
76
94
  }
77
95
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMAuthProfileSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
78
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXMAuthProfileSlotComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "profilePopover", first: true, predicate: ["profilePopover"], descendants: true }], ngImport: i0, template: "@if((isAuthenticated$ | async)) {\n<ax-avatar #avatar color=\"secondary\" [size]=\"32\" class=\"ax-cursor-pointer ax-ms-4\">\n <ax-image [src]=\"src\"></ax-image>\n</ax-avatar>\n<ax-popover [target]=\"avatar\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\">\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-p-4 ax-border-b\">\n <ax-avatar [size]=\"60\">\n <ax-image [src]=\"src\">\n <ax-loading></ax-loading>\n </ax-image>\n </ax-avatar>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-mt-2 ax-gap-1\">\n <div class=\"ax-text-base ax-font-bold\">{{ (user$ | async)?.title }}</div>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n </div>\n </div>\n <div class=\"profile-menus ax-text-slate-500\">\n <!-- <ul>\n <li>\n <i class=\"fa-solid fa-folder-open\"></i>\n <span> Project Management </span>\n </li>\n <li>\n <i class=\"fa-solid fa-envelope-open-text\"></i>\n <span>Email Config</span>\n </li>\n <li>\n <i class=\"fa-solid fa-gear\"></i>\n <span>Setting</span>\n </li>\n </ul> -->\n <ul>\n <!-- <li>\n <i class=\"fa-solid fa-gem ax-text-primary-500\"></i>\n <span> Upgrade account </span>\n </li> -->\n <li (click)=\"editProfile()\">\n <i class=\"fa-solid fa-user\"></i>\n <span>{{ 'profile.edit' | translate | async }}</span>\n </li>\n </ul>\n <ul>\n <li class=\"ax-text-danger-500\" (click)=\"logOut()\">\n <i class=\"fa-solid fa-arrow-right-from-bracket\"></i>\n <span>{{ 'profile.logout' | translate | async }}</span>\n </li>\n </ul>\n </div>\n </div>\n</ax-popover>\n} @else {\n<ax-button color=\"default\" look=\"blank\" text=\"Sign Up / Sign In\" (click)=\"handleSignIn()\">\n <ax-icon>\n <i class=\"fa-solid fa-user ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n}", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXAvatarModule }, { kind: "component", type: i3.AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "look"], outputs: ["sizeChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i4.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.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: i6.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXPTenantChooserDropdownComponent, selector: "axp-tenant-chooser-dropdown" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i7.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i8.AXTranslatorPipe, name: "translate" }] }); }
96
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXMAuthProfileSlotComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "profilePopover", first: true, predicate: ["profilePopover"], descendants: true }], ngImport: i0, template: "@if((isAuthenticated$ | async)) {\n<ax-avatar #avatar color=\"secondary\" (error)=\"this.src = 'path/to/default-image.jpg'\" [size]=\"32\" class=\"ax-cursor-pointer ax-ms-4\">\n @if(hasPicture()){\n <ax-image (onError)=\"onImageError($event)\" [src]=\"src\"></ax-image>\n }@else{\n <ax-text>\n <small class=\"ax-text-xs ax-font-semibold\">{{ avatarText() }}</small>\n </ax-text>\n }\n</ax-avatar>\n<ax-popover [target]=\"avatar\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\">\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-p-4 ax-border-b\">\n <ax-avatar [size]=\"60\">\n @if(hasPicture()){\n <ax-image (onError)=\"onImageError($event)\" [src]=\"src\">\n <ax-loading></ax-loading>\n </ax-image>\n }@else{\n <ax-text>\n <span class=\"\">{{ avatarText() }}</span>\n </ax-text>\n }\n </ax-avatar>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-mt-2 ax-gap-1\">\n <div class=\"ax-text-base ax-font-bold\">{{ (user$ | async)?.title }}</div>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n </div>\n </div>\n <div class=\"profile-menus ax-text-slate-500\">\n <!-- <ul>\n <li>\n <i class=\"fa-solid fa-folder-open\"></i>\n <span> Project Management </span>\n </li>\n <li>\n <i class=\"fa-solid fa-envelope-open-text\"></i>\n <span>Email Config</span>\n </li>\n <li>\n <i class=\"fa-solid fa-gear\"></i>\n <span>Setting</span>\n </li>\n </ul> -->\n <ul>\n <!-- <li>\n <i class=\"fa-solid fa-gem ax-text-primary-500\"></i>\n <span> Upgrade account </span>\n </li> -->\n <li (click)=\"editProfile()\">\n <i class=\"fa-solid fa-user\"></i>\n <span>{{ 'profile.edit' | translate | async }}</span>\n </li>\n </ul>\n <ul>\n <li class=\"ax-text-danger-500\" (click)=\"logOut()\">\n <i class=\"fa-solid fa-arrow-right-from-bracket\"></i>\n <span>{{ 'profile.logout' | translate | async }}</span>\n </li>\n </ul>\n </div>\n </div>\n</ax-popover>\n} @else {\n<ax-button color=\"default\" look=\"blank\" text=\"Sign Up / Sign In\" (click)=\"handleSignIn()\">\n <ax-icon>\n <i class=\"fa-solid fa-user ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n}\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXAvatarModule }, { kind: "component", type: i3.AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "look"], outputs: ["sizeChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i4.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.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: i6.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i6.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "component", type: AXPTenantChooserDropdownComponent, selector: "axp-tenant-chooser-dropdown" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i7.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i8.AXTranslatorPipe, name: "translate" }] }); }
79
97
  }
80
98
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMAuthProfileSlotComponent, decorators: [{
81
99
  type: Component,
@@ -88,10 +106,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
88
106
  AXDecoratorModule,
89
107
  AXPTenantChooserDropdownComponent,
90
108
  AXLoadingModule,
91
- AXTranslationModule
92
- ], template: "@if((isAuthenticated$ | async)) {\n<ax-avatar #avatar color=\"secondary\" [size]=\"32\" class=\"ax-cursor-pointer ax-ms-4\">\n <ax-image [src]=\"src\"></ax-image>\n</ax-avatar>\n<ax-popover [target]=\"avatar\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\">\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-p-4 ax-border-b\">\n <ax-avatar [size]=\"60\">\n <ax-image [src]=\"src\">\n <ax-loading></ax-loading>\n </ax-image>\n </ax-avatar>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-mt-2 ax-gap-1\">\n <div class=\"ax-text-base ax-font-bold\">{{ (user$ | async)?.title }}</div>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n </div>\n </div>\n <div class=\"profile-menus ax-text-slate-500\">\n <!-- <ul>\n <li>\n <i class=\"fa-solid fa-folder-open\"></i>\n <span> Project Management </span>\n </li>\n <li>\n <i class=\"fa-solid fa-envelope-open-text\"></i>\n <span>Email Config</span>\n </li>\n <li>\n <i class=\"fa-solid fa-gear\"></i>\n <span>Setting</span>\n </li>\n </ul> -->\n <ul>\n <!-- <li>\n <i class=\"fa-solid fa-gem ax-text-primary-500\"></i>\n <span> Upgrade account </span>\n </li> -->\n <li (click)=\"editProfile()\">\n <i class=\"fa-solid fa-user\"></i>\n <span>{{ 'profile.edit' | translate | async }}</span>\n </li>\n </ul>\n <ul>\n <li class=\"ax-text-danger-500\" (click)=\"logOut()\">\n <i class=\"fa-solid fa-arrow-right-from-bracket\"></i>\n <span>{{ 'profile.logout' | translate | async }}</span>\n </li>\n </ul>\n </div>\n </div>\n</ax-popover>\n} @else {\n<ax-button color=\"default\" look=\"blank\" text=\"Sign Up / Sign In\" (click)=\"handleSignIn()\">\n <ax-icon>\n <i class=\"fa-solid fa-user ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n}" }]
109
+ AXTranslationModule,
110
+ ], template: "@if((isAuthenticated$ | async)) {\n<ax-avatar #avatar color=\"secondary\" (error)=\"this.src = 'path/to/default-image.jpg'\" [size]=\"32\" class=\"ax-cursor-pointer ax-ms-4\">\n @if(hasPicture()){\n <ax-image (onError)=\"onImageError($event)\" [src]=\"src\"></ax-image>\n }@else{\n <ax-text>\n <small class=\"ax-text-xs ax-font-semibold\">{{ avatarText() }}</small>\n </ax-text>\n }\n</ax-avatar>\n<ax-popover [target]=\"avatar\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\">\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-p-4 ax-border-b\">\n <ax-avatar [size]=\"60\">\n @if(hasPicture()){\n <ax-image (onError)=\"onImageError($event)\" [src]=\"src\">\n <ax-loading></ax-loading>\n </ax-image>\n }@else{\n <ax-text>\n <span class=\"\">{{ avatarText() }}</span>\n </ax-text>\n }\n </ax-avatar>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-mt-2 ax-gap-1\">\n <div class=\"ax-text-base ax-font-bold\">{{ (user$ | async)?.title }}</div>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n </div>\n </div>\n <div class=\"profile-menus ax-text-slate-500\">\n <!-- <ul>\n <li>\n <i class=\"fa-solid fa-folder-open\"></i>\n <span> Project Management </span>\n </li>\n <li>\n <i class=\"fa-solid fa-envelope-open-text\"></i>\n <span>Email Config</span>\n </li>\n <li>\n <i class=\"fa-solid fa-gear\"></i>\n <span>Setting</span>\n </li>\n </ul> -->\n <ul>\n <!-- <li>\n <i class=\"fa-solid fa-gem ax-text-primary-500\"></i>\n <span> Upgrade account </span>\n </li> -->\n <li (click)=\"editProfile()\">\n <i class=\"fa-solid fa-user\"></i>\n <span>{{ 'profile.edit' | translate | async }}</span>\n </li>\n </ul>\n <ul>\n <li class=\"ax-text-danger-500\" (click)=\"logOut()\">\n <i class=\"fa-solid fa-arrow-right-from-bracket\"></i>\n <span>{{ 'profile.logout' | translate | async }}</span>\n </li>\n </ul>\n </div>\n </div>\n</ax-popover>\n} @else {\n<ax-button color=\"default\" look=\"blank\" text=\"Sign Up / Sign In\" (click)=\"handleSignIn()\">\n <ax-icon>\n <i class=\"fa-solid fa-user ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n}\n" }]
93
111
  }], ctorParameters: () => [], propDecorators: { profilePopover: [{
94
112
  type: ViewChild,
95
113
  args: ['profilePopover']
96
114
  }] } });
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS1zbG90LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9hdXRoL3NyYy9saWIvYWNjb3VudC9wcm9maWxlL3Byb2ZpbGUtc2xvdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXV0aC9zcmMvbGliL2FjY291bnQvcHJvZmlsZS9wcm9maWxlLXNsb3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNqRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxp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QUFjLHVaQUNkLGlCQUFpQixnSUFDakIsaUNBQWlDLHVFQUNqQyxlQUFlLDhLQUNmLG1CQUFtQjs7MkZBR1YsMkJBQTJCO2tCQWZ2QyxTQUFTO2lDQUVJLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsaUJBQWlCO3dCQUNqQixpQ0FBaUM7d0JBQ2pDLGVBQWU7d0JBQ2YsbUJBQW1CO3FCQUNwQjt3REFpQjRCLGNBQWM7c0JBQTFDLFNBQVM7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhBdmF0YXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYXZhdGFyJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYSW1hZ2VNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvaW1hZ2UnO1xuaW1wb3J0IHsgQVhMb2FkaW5nTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2xvYWRpbmcnO1xuaW1wb3J0IHsgQVhQb3BvdmVyQ29tcG9uZW50LCBBWFBvcG92ZXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcG9wb3Zlcic7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYUFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbmltcG9ydCB7IEFYUERhdGFQcm92aWRlciB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IE1vY2tEYXRhU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vbW9ja3MnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgVmlld0NoaWxkLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBBWFBUZW5hbnRDaG9vc2VyRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi90ZW5hbnQtY2hvb3Nlci90ZW5hbnQtY2hvb3Nlci1kcm9wZG93bi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2ZpbGUtc2xvdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQVhJbWFnZU1vZHVsZSxcbiAgICBBWEF2YXRhck1vZHVsZSxcbiAgICBBWFBvcG92ZXJNb2R1bGUsXG4gICAgQVhCdXR0b25Nb2R1bGUsXG4gICAgQVhEZWNvcmF0b3JNb2R1bGUsXG4gICAgQVhQVGVuYW50Q2hvb3NlckRyb3Bkb3duQ29tcG9uZW50LFxuICAgIEFYTG9hZGluZ01vZHVsZSxcbiAgICBBWFRyYW5zbGF0aW9uTW9kdWxlXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYTUF1dGhQcm9maWxlU2xvdENvbXBvbmVudCB7XG4gIHByaXZhdGUgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgc2Vzc2lvblNlcnZpY2UgPSBpbmplY3QoQVhQU2Vzc2lvblNlcnZpY2UpO1xuICBwcml2YXRlIGRhdGFTZXJ2aWNlID0gaW5qZWN0KEFYUERhdGFQcm92aWRlciwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgcHJpdmF0ZSBtb2NrZXJTZXJ2aWNlID0gaW5qZWN0KE1vY2tEYXRhU2VydmljZSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5sb2FkSW1hZ2UoKTtcbiAgfVxuICBwcm90ZWN0ZWQgc3JjITogc3RyaW5nO1xuICBwcm90ZWN0ZWQgdXNlciQgPSB0aGlzLnNlc3Npb25TZXJ2aWNlLnVzZXIkO1xuICBwcm90ZWN0ZWQgdGVuYW50JCA9IHRoaXMuc2Vzc2lvblNlcnZpY2UudGVuYW50JDtcblxuICBwcm90ZWN0ZWQgaXNBdXRoZW50aWNhdGVkJCA9IHRoaXMuc2Vzc2lvblNlcnZpY2UuaXNBdXRoZW50aWNhdGVkJDtcblxuICBAVmlld0NoaWxkKCdwcm9maWxlUG9wb3ZlcicpIHByb2ZpbGVQb3BvdmVyITogQVhQb3BvdmVyQ29tcG9uZW50O1xuXG4gIGVkaXRQcm9maWxlKCkge1xuICAgIGNvbnN0IGFwcE5hbWUgPSB0aGlzLnNlc3Npb25TZXJ2aWNlLmFwcGxpY2F0aW9uPy5uYW1lO1xuICAgIHN3aXRjaCAoYXBwTmFtZSkge1xuICAgICAgY2FzZSAnYXJrJzpcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2AvYXJrL20vb2lkYy9lL3VzZXItaW5mby8wL3ZpZXdgXSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYXNjJzpcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2AvYXNjL29pZGMvZS91c2VyLWluZm8vMC92aWV3YF0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtgL2FzYy9vaWRjL2UvdXNlci1pbmZvLzAvdmlld2BdKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgbG9nT3V0KCkge1xuICAgIGF3YWl0IHRoaXMuc2Vzc2lvblNlcnZpY2Uuc2lnbm91dCgpO1xuICB9XG5cbiAgdG9nZ2xlUHJvZmlsZU1lbnUoKSB7XG4gICAgdGhpcy5wcm9maWxlUG9wb3Zlci5vcGVuKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlU2lnbkluKCkge1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2F1dGgvbG9naW4nXSk7XG4gIH1cbiAgcHJpdmF0ZSBhc3luYyBsb2FkSW1hZ2UoKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHVybCA9IHRoaXMuc2Vzc2lvblNlcnZpY2UudXNlcj8uYXZhdGFyIGFzIHN0cmluZztcbiAgICAgIGlmICh1cmw/LnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aCgnaHR0cCcpKSB7XG4gICAgICAgIHRoaXMuc3JjID0gdXJsO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLnNlc3Npb25TZXJ2aWNlLnVzZXI/LmF2YXRhciAhPSAnbnVsbCcgJiYgdGhpcy5kYXRhU2VydmljZSkge1xuICAgICAgICAvL1RPRE86IFJlbW92ZSBkYXRhU2VydmljZSBhbmQgbW9ja1NlcnZpY2VcbiAgICAgICAgY29uc3QgYmxvYiA9IGF3YWl0IHRoaXMuZGF0YVNlcnZpY2Uudmlld0ZpbGUodXJsLCAnJyk7XG4gICAgICAgIHRoaXMuc3JjID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc3JjID0gdGhpcy5tb2NrZXJTZXJ2aWNlLmF2YXRhcigpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbG9hZCBpbWFnZSBieSBJRDonLCBlcnJvcik7XG4gICAgfVxuICB9XG59XG4iLCJAaWYoKGlzQXV0aGVudGljYXRlZCQgfCBhc3luYykpIHtcbjxheC1hdmF0YXIgI2F2YXRhciBjb2xvcj1cInNlY29uZGFyeVwiIFtzaXplXT1cIjMyXCIgY2xhc3M9XCJheC1jdXJzb3ItcG9pbnRlciBheC1tcy00XCI+XG4gIDxheC1pbWFnZSBbc3JjXT1cInNyY1wiPjwvYXgtaW1hZ2U+XG48L2F4LWF2YXRhcj5cbjxheC1wb3BvdmVyIFt0YXJnZXRdPVwiYXZhdGFyXCIgW29wZW5Pbl09XCIndG9nZ2xlJ1wiIFtjbG9zZU9uXT1cIidjbGlja091dCdcIj5cbiAgPGRpdiBjbGFzcz1cImF4LWJnLXN1cmZhY2UgYXgtYm9yZGVyIGF4LWJvcmRlci1kZWZhdWx0IGF4LXJvdW5kZWQtbWQgYXgtc2hhZG93LW1kIGF4LXctZnVsbCBheC1taW4tdy02NFwiPlxuICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LWl0ZW1zLWNlbnRlciBheC1wLTQgYXgtYm9yZGVyLWJcIj5cbiAgICAgIDxheC1hdmF0YXIgW3NpemVdPVwiNjBcIj5cbiAgICAgICAgPGF4LWltYWdlIFtzcmNdPVwic3JjXCI+XG4gICAgICAgICAgPGF4LWxvYWRpbmc+PC9heC1sb2FkaW5nPlxuICAgICAgICA8L2F4LWltYWdlPlxuICAgICAgPC9heC1hdmF0YXI+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1pdGVtcy1jZW50ZXIgYXgtanVzdGlmeS1jZW50ZXIgYXgtbXQtMiBheC1nYXAtMVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtdGV4dC1iYXNlIGF4LWZvbnQtYm9sZFwiPnt7ICh1c2VyJCB8IGFzeW5jKT8udGl0bGUgfX08L2Rpdj5cbiAgICAgICAgPGF4cC10ZW5hbnQtY2hvb3Nlci1kcm9wZG93bj48L2F4cC10ZW5hbnQtY2hvb3Nlci1kcm9wZG93bj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJwcm9maWxlLW1lbnVzIGF4LXRleHQtc2xhdGUtNTAwXCI+XG4gICAgICA8IS0tIDx1bD5cbiAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtZm9sZGVyLW9wZW5cIj48L2k+XG4gICAgICAgICAgICA8c3Bhbj4gUHJvamVjdCBNYW5hZ2VtZW50IDwvc3Bhbj5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICA8bGk+XG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLWVudmVsb3BlLW9wZW4tdGV4dFwiPjwvaT5cbiAgICAgICAgICAgIDxzcGFuPkVtYWlsIENvbmZpZzwvc3Bhbj5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICA8bGk+XG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLWdlYXJcIj48L2k+XG4gICAgICAgICAgICA8c3Bhbj5TZXR0aW5nPC9zcGFuPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgPC91bD4gLS0+XG4gICAgICA8dWw+XG4gICAgICAgIDwhLS0gPGxpPlxuICAgICAgICAgICAgPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1nZW0gYXgtdGV4dC1wcmltYXJ5LTUwMFwiPjwvaT5cbiAgICAgICAgICAgIDxzcGFuPiBVcGdyYWRlIGFjY291bnQgPC9zcGFuPlxuICAgICAgICAgICAgPC9saT4gLS0+XG4gICAgICAgIDxsaSAoY2xpY2spPVwiZWRpdFByb2ZpbGUoKVwiPlxuICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtdXNlclwiPjwvaT5cbiAgICAgICAgICA8c3Bhbj57eyAncHJvZmlsZS5lZGl0JyB8IHRyYW5zbGF0ZSB8IGFzeW5jIH19PC9zcGFuPlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICAgIDx1bD5cbiAgICAgICAgPGxpIGNsYXNzPVwiYXgtdGV4dC1kYW5nZXItNTAwXCIgKGNsaWNrKT1cImxvZ091dCgpXCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1hcnJvdy1yaWdodC1mcm9tLWJyYWNrZXRcIj48L2k+XG4gICAgICAgICAgPHNwYW4+e3sgJ3Byb2ZpbGUubG9nb3V0JyB8IHRyYW5zbGF0ZSB8IGFzeW5jIH19PC9zcGFuPlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2F4LXBvcG92ZXI+XG59IEBlbHNlIHtcbjxheC1idXR0b24gY29sb3I9XCJkZWZhdWx0XCIgbG9vaz1cImJsYW5rXCIgdGV4dD1cIlNpZ24gVXAgLyBTaWduIEluXCIgKGNsaWNrKT1cImhhbmRsZVNpZ25JbigpXCI+XG4gIDxheC1pY29uPlxuICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtdXNlciBheC10ZXh0LXNsYXRlLTQwMCBkYXJrOmF4LXRleHQtc2xhdGUtMjAwXCI+PC9pPlxuICA8L2F4LWljb24+XG48L2F4LWJ1dHRvbj5cbn0iXX0=
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS1zbG90LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9hdXRoL3NyYy9saWIvYWNjb3VudC9wcm9maWxlL3Byb2ZpbGUtc2xvdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXV0aC9zcmMvbGliL2FjY291bnQvcHJvZmlsZS9wcm9maWxlLXNsb3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNqRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxP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QUNmLG1CQUFtQjs7MkZBR1YsMkJBQTJCO2tCQWZ2QyxTQUFTO2lDQUVJLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsaUJBQWlCO3dCQUNqQixpQ0FBaUM7d0JBQ2pDLGVBQWU7d0JBQ2YsbUJBQW1CO3FCQUNwQjt3REFxQjRCLGNBQWM7c0JBQTFDLFNBQVM7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhBdmF0YXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYXZhdGFyJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWEh0bWxFdmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWEltYWdlTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2ltYWdlJztcbmltcG9ydCB7IEFYTG9hZGluZ01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9sb2FkaW5nJztcbmltcG9ydCB7IEFYUG9wb3ZlckNvbXBvbmVudCwgQVhQb3BvdmVyTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcG92ZXInO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBBWFBTZXNzaW9uU2VydmljZSB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vYXV0aCc7XG5pbXBvcnQgeyBBWFBEYXRhUHJvdmlkZXIgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBNb2NrRGF0YVNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL21vY2tzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIFZpZXdDaGlsZCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQVhQVGVuYW50Q2hvb3NlckRyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi4vdGVuYW50LWNob29zZXIvdGVuYW50LWNob29zZXItZHJvcGRvd24uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9maWxlLXNsb3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEFYSW1hZ2VNb2R1bGUsXG4gICAgQVhBdmF0YXJNb2R1bGUsXG4gICAgQVhQb3BvdmVyTW9kdWxlLFxuICAgIEFYQnV0dG9uTW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIEFYUFRlbmFudENob29zZXJEcm9wZG93bkNvbXBvbmVudCxcbiAgICBBWExvYWRpbmdNb2R1bGUsXG4gICAgQVhUcmFuc2xhdGlvbk1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNQXV0aFByb2ZpbGVTbG90Q29tcG9uZW50IHtcbiAgcHJpdmF0ZSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSBzZXNzaW9uU2VydmljZSA9IGluamVjdChBWFBTZXNzaW9uU2VydmljZSk7XG4gIHByaXZhdGUgZGF0YVNlcnZpY2UgPSBpbmplY3QoQVhQRGF0YVByb3ZpZGVyLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwcml2YXRlIG1vY2tlclNlcnZpY2UgPSBpbmplY3QoTW9ja0RhdGFTZXJ2aWNlKTtcblxuICBwcm90ZWN0ZWQgaGFzUGljdHVyZSA9IHNpZ25hbCh0cnVlKTtcbiAgcHJvdGVjdGVkIGF2YXRhclRleHQgPSBzaWduYWw8c3RyaW5nPignJyk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5sb2FkSW1hZ2UoKTtcbiAgICB0aGlzLmdldEF2YXRhclRleHQoKTtcbiAgfVxuICBwcm90ZWN0ZWQgc3JjITogc3RyaW5nO1xuICBwcm90ZWN0ZWQgdXNlciQgPSB0aGlzLnNlc3Npb25TZXJ2aWNlLnVzZXIkO1xuICBwcm90ZWN0ZWQgdGVuYW50JCA9IHRoaXMuc2Vzc2lvblNlcnZpY2UudGVuYW50JDtcblxuICBwcm90ZWN0ZWQgaXNBdXRoZW50aWNhdGVkJCA9IHRoaXMuc2Vzc2lvblNlcnZpY2UuaXNBdXRoZW50aWNhdGVkJDtcblxuICBAVmlld0NoaWxkKCdwcm9maWxlUG9wb3ZlcicpIHByb2ZpbGVQb3BvdmVyITogQVhQb3BvdmVyQ29tcG9uZW50O1xuXG4gIGVkaXRQcm9maWxlKCkge1xuICAgIGNvbnN0IGFwcE5hbWUgPSB0aGlzLnNlc3Npb25TZXJ2aWNlLmFwcGxpY2F0aW9uPy5uYW1lO1xuICAgIHN3aXRjaCAoYXBwTmFtZSkge1xuICAgICAgY2FzZSAnYXJrJzpcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2AvYXJrL20vb2lkYy9lL3VzZXItaW5mby8wL3ZpZXdgXSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYXNjJzpcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2AvYXNjL29pZGMvZS91c2VyLWluZm8vMC92aWV3YF0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtgL2FzYy9vaWRjL2UvdXNlci1pbmZvLzAvdmlld2BdKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgbG9nT3V0KCkge1xuICAgIGF3YWl0IHRoaXMuc2Vzc2lvblNlcnZpY2Uuc2lnbm91dCgpO1xuICB9XG5cbiAgdG9nZ2xlUHJvZmlsZU1lbnUoKSB7XG4gICAgdGhpcy5wcm9maWxlUG9wb3Zlci5vcGVuKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlU2lnbkluKCkge1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2F1dGgvbG9naW4nXSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25JbWFnZUVycm9yKGV2ZW50OiBBWEh0bWxFdmVudDxFcnJvckV2ZW50Pikge1xuICAgIHRoaXMuaGFzUGljdHVyZS5zZXQoZmFsc2UpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldEF2YXRhclRleHQgPSAoKSA9PiB7XG4gICAgdGhpcy51c2VyJC5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgodXNlcikgPT4ge1xuICAgICAgY29uc3QgbmFtZXMgPSB1c2VyPy50aXRsZS5zcGxpdCgnICcpO1xuICAgICAgaWYgKG5hbWVzPy5sZW5ndGggJiYgbmFtZXM/Lmxlbmd0aCA+IDEpIHtcbiAgICAgICAgdGhpcy5hdmF0YXJUZXh0LnNldChgJHtuYW1lc1swXVswXS50b1VwcGVyQ2FzZSgpfSR7bmFtZXNbbmFtZXMubGVuZ3RoIC0gMV1bMF0udG9VcHBlckNhc2UoKX1gKTtcbiAgICAgIH0gZWxzZSByZXR1cm4gdGhpcy5hdmF0YXJUZXh0LnNldCgnQUMnKTtcbiAgICB9KTtcbiAgfTtcblxuICBwcml2YXRlIGFzeW5jIGxvYWRJbWFnZSgpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgdXJsID0gdGhpcy5zZXNzaW9uU2VydmljZS51c2VyPy5hdmF0YXIgYXMgc3RyaW5nO1xuICAgICAgaWYgKHVybD8udG9Mb3dlckNhc2UoKS5zdGFydHNXaXRoKCdodHRwJykpIHtcbiAgICAgICAgdGhpcy5zcmMgPSB1cmw7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuc2Vzc2lvblNlcnZpY2UudXNlcj8uYXZhdGFyICE9ICdudWxsJyAmJiB0aGlzLmRhdGFTZXJ2aWNlKSB7XG4gICAgICAgIGNvbnN0IGJsb2IgPSBhd2FpdCB0aGlzLmRhdGFTZXJ2aWNlLnZpZXdGaWxlKHVybCwgJycpO1xuICAgICAgICB0aGlzLnNyYyA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNyYyA9IHRoaXMubW9ja2VyU2VydmljZS5hdmF0YXIoKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy5oYXNQaWN0dXJlLnNldChmYWxzZSk7XG4gICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbG9hZCBpbWFnZSBieSBJRDonLCBlcnJvcik7XG4gICAgICB0aGlzLnNyYyA9ICcnO1xuICAgIH1cbiAgfVxufVxuIiwiQGlmKChpc0F1dGhlbnRpY2F0ZWQkIHwgYXN5bmMpKSB7XG48YXgtYXZhdGFyICNhdmF0YXIgY29sb3I9XCJzZWNvbmRhcnlcIiAoZXJyb3IpPVwidGhpcy5zcmMgPSAncGF0aC90by9kZWZhdWx0LWltYWdlLmpwZydcIiBbc2l6ZV09XCIzMlwiIGNsYXNzPVwiYXgtY3Vyc29yLXBvaW50ZXIgYXgtbXMtNFwiPlxuICBAaWYoaGFzUGljdHVyZSgpKXtcbiAgPGF4LWltYWdlIChvbkVycm9yKT1cIm9uSW1hZ2VFcnJvcigkZXZlbnQpXCIgW3NyY109XCJzcmNcIj48L2F4LWltYWdlPlxuICB9QGVsc2V7XG4gIDxheC10ZXh0PlxuICAgIDxzbWFsbCBjbGFzcz1cImF4LXRleHQteHMgYXgtZm9udC1zZW1pYm9sZFwiPnt7IGF2YXRhclRleHQoKSB9fTwvc21hbGw+XG4gIDwvYXgtdGV4dD5cbiAgfVxuPC9heC1hdmF0YXI+XG48YXgtcG9wb3ZlciBbdGFyZ2V0XT1cImF2YXRhclwiIFtvcGVuT25dPVwiJ3RvZ2dsZSdcIiBbY2xvc2VPbl09XCInY2xpY2tPdXQnXCI+XG4gIDxkaXYgY2xhc3M9XCJheC1iZy1zdXJmYWNlIGF4LWJvcmRlciBheC1ib3JkZXItZGVmYXVsdCBheC1yb3VuZGVkLW1kIGF4LXNoYWRvdy1tZCBheC13LWZ1bGwgYXgtbWluLXctNjRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1pdGVtcy1jZW50ZXIgYXgtcC00IGF4LWJvcmRlci1iXCI+XG4gICAgICA8YXgtYXZhdGFyIFtzaXplXT1cIjYwXCI+XG4gICAgICAgIEBpZihoYXNQaWN0dXJlKCkpe1xuICAgICAgICA8YXgtaW1hZ2UgKG9uRXJyb3IpPVwib25JbWFnZUVycm9yKCRldmVudClcIiBbc3JjXT1cInNyY1wiPlxuICAgICAgICAgIDxheC1sb2FkaW5nPjwvYXgtbG9hZGluZz5cbiAgICAgICAgPC9heC1pbWFnZT5cbiAgICAgICAgfUBlbHNle1xuICAgICAgICA8YXgtdGV4dD5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIlwiPnt7IGF2YXRhclRleHQoKSB9fTwvc3Bhbj5cbiAgICAgICAgPC9heC10ZXh0PlxuICAgICAgICB9XG4gICAgICA8L2F4LWF2YXRhcj5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LWl0ZW1zLWNlbnRlciBheC1qdXN0aWZ5LWNlbnRlciBheC1tdC0yIGF4LWdhcC0xXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LWJhc2UgYXgtZm9udC1ib2xkXCI+e3sgKHVzZXIkIHwgYXN5bmMpPy50aXRsZSB9fTwvZGl2PlxuICAgICAgICA8YXhwLXRlbmFudC1jaG9vc2VyLWRyb3Bkb3duPjwvYXhwLXRlbmFudC1jaG9vc2VyLWRyb3Bkb3duPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInByb2ZpbGUtbWVudXMgYXgtdGV4dC1zbGF0ZS01MDBcIj5cbiAgICAgIDwhLS0gPHVsPlxuICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1mb2xkZXItb3BlblwiPjwvaT5cbiAgICAgICAgICAgIDxzcGFuPiBQcm9qZWN0IE1hbmFnZW1lbnQgPC9zcGFuPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtZW52ZWxvcGUtb3Blbi10ZXh0XCI+PC9pPlxuICAgICAgICAgICAgPHNwYW4+RW1haWwgQ29uZmlnPC9zcGFuPlxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtZ2VhclwiPjwvaT5cbiAgICAgICAgICAgIDxzcGFuPlNldHRpbmc8L3NwYW4+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICA8L3VsPiAtLT5cbiAgICAgIDx1bD5cbiAgICAgICAgPCEtLSA8bGk+XG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLWdlbSBheC10ZXh0LXByaW1hcnktNTAwXCI+PC9pPlxuICAgICAgICAgICAgPHNwYW4+IFVwZ3JhZGUgYWNjb3VudCA8L3NwYW4+XG4gICAgICAgICAgICA8L2xpPiAtLT5cbiAgICAgICAgPGxpIChjbGljayk9XCJlZGl0UHJvZmlsZSgpXCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS11c2VyXCI+PC9pPlxuICAgICAgICAgIDxzcGFuPnt7ICdwcm9maWxlLmVkaXQnIHwgdHJhbnNsYXRlIHwgYXN5bmMgfX08L3NwYW4+XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgICAgPHVsPlxuICAgICAgICA8bGkgY2xhc3M9XCJheC10ZXh0LWRhbmdlci01MDBcIiAoY2xpY2spPVwibG9nT3V0KClcIj5cbiAgICAgICAgICA8aSBjbGFzcz1cImZhLXNvbGlkIGZhLWFycm93LXJpZ2h0LWZyb20tYnJhY2tldFwiPjwvaT5cbiAgICAgICAgICA8c3Bhbj57eyAncHJvZmlsZS5sb2dvdXQnIHwgdHJhbnNsYXRlIHwgYXN5bmMgfX08L3NwYW4+XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvYXgtcG9wb3Zlcj5cbn0gQGVsc2Uge1xuPGF4LWJ1dHRvbiBjb2xvcj1cImRlZmF1bHRcIiBsb29rPVwiYmxhbmtcIiB0ZXh0PVwiU2lnbiBVcCAvIFNpZ24gSW5cIiAoY2xpY2spPVwiaGFuZGxlU2lnbkluKClcIj5cbiAgPGF4LWljb24+XG4gICAgPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS11c2VyIGF4LXRleHQtc2xhdGUtNDAwIGRhcms6YXgtdGV4dC1zbGF0ZS0yMDBcIj48L2k+XG4gIDwvYXgtaWNvbj5cbjwvYXgtYnV0dG9uPlxufVxuIl19
@@ -103,13 +103,13 @@ export class AXPLoginPasswordComponent {
103
103
  });
104
104
  }
105
105
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLoginPasswordComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
106
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPLoginPasswordComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "form", first: true, predicate: AXFormComponent, descendants: true }], ngImport: i0, template: "<ng-container *translate=\"let t\">\n <div class=\"ax-text-center ax-mb-4\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">\n {{ t('signin.title', { scope: 'auth' }) | async }}\n </h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('signin.hint', { scope: 'auth' }) | async }}\n </p>\n </div>\n <div class=\"ax-w-80 lg:ax-w-96\">\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 [(value)]=\"v1\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ t(l2, { scope: 'auth' }) | async }}</ax-label>\n <ax-password-box [(value)]=\"v2\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-password-box>\n </ax-form-field>\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <ax-check-box>\n <ax-label class=\"ax-mb-0\">{{ t('signin.remember', { scope: 'auth' }) | async }}</ax-label>\n </ax-check-box>\n <ax-button\n color=\"primary\"\n class=\"ax-sm\"\n [text]=\"t('forgot.password', { scope: 'auth' }) | async\"\n look=\"blank\"\n (onClick)=\"handleForgotOnClick()\"\n >\n </ax-button>\n </div>\n </div>\n <ax-button\n color=\"primary\"\n class=\"ax-mt-6 ax-w-full\"\n [text]=\"t(submitText, { scope: 'auth' }) | async\"\n (onClick)=\"handleLoginClick()\"\n [disabled]=\"isLoading$ | async\"\n [type]=\"'submit'\"\n >\n <ax-loading *ngIf=\"isLoading$ | async\"></ax-loading>\n </ax-button>\n <div class=\"ax-heading ax-heading-center !ax-my-8\">\n <span>{{ t('signin.or', { scope: 'auth' }) | async }}</span>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-2 lg:ax-flex-row ax-justify-between ax-mt-6\">\n <ax-button text=\"Sign in with Google\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-google fa-lg ax-text-danger-500\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n <ax-button text=\"Sign in with Apple\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-apple fa-xl\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n </ax-form>\n </div>\n</ng-container>\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: "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: "directive", type: i2.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { 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: "component", type: i4.AXPasswordBoxComponent, selector: "ax-password-box", inputs: ["readonly", "disabled", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "autoComplete", "showToggleButton", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.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: i6.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i7.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i7.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: AXCheckBoxModule }, { kind: "component", type: i8.AXCheckBoxComponent, selector: "ax-check-box", inputs: ["disabled", "tabIndex", "readonly", "value", "name", "id", "checked", "indeterminate"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i9.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i10.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type: AXValidationModule }] }); }
106
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPLoginPasswordComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "form", first: true, predicate: AXFormComponent, descendants: true }], ngImport: i0, template: "<ng-container *translate=\"let t\">\n <div class=\"ax-text-center ax-mb-4\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">\n {{ t('signin.title', { scope: 'auth' }) | async }}\n </h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('signin.hint', { scope: 'auth' }) | async }}\n </p>\n </div>\n <div class=\"ax-w-80 lg:ax-w-96\">\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 [(value)]=\"v1\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ t(l2, { scope: 'auth' }) | async }}</ax-label>\n <ax-password-box [(value)]=\"v2\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-password-box>\n </ax-form-field>\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <ax-check-box>\n <ax-label class=\"ax-mb-0\">{{ t('signin.remember', { scope: 'auth' }) | async }}</ax-label>\n </ax-check-box>\n <ax-button\n color=\"primary\"\n class=\"ax-sm\"\n [text]=\"t('forgot.password', { scope: 'auth' }) | async\"\n look=\"blank\"\n (onClick)=\"handleForgotOnClick()\"\n >\n </ax-button>\n </div>\n </div>\n <ax-button\n color=\"primary\"\n class=\"ax-mt-6 ax-w-full\"\n [text]=\"t(submitText, { scope: 'auth' }) | async\"\n (onClick)=\"handleLoginClick()\"\n [disabled]=\"isLoading$ | async\"\n [type]=\"'submit'\"\n >\n <ax-loading *ngIf=\"isLoading$ | async\"></ax-loading>\n </ax-button>\n <div class=\"ax-heading ax-heading-center !ax-my-8\">\n <span>{{ t('signin.or', { scope: 'auth' }) | async }}</span>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-2 lg:ax-flex-row ax-justify-between ax-mt-6\">\n <ax-button text=\"{{ 'authentication.with-google' | translate | async }}\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-google fa-lg ax-text-danger-500\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n <ax-button text=\"{{ 'authentication.with-apple' | translate | async }}\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-apple fa-xl\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n </ax-form>\n </div>\n</ng-container>\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: "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: "directive", type: i2.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { 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: "component", type: i4.AXPasswordBoxComponent, selector: "ax-password-box", inputs: ["readonly", "disabled", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "autoComplete", "showToggleButton", "class"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i5.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: i6.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i7.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i7.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: AXCheckBoxModule }, { kind: "component", type: i8.AXCheckBoxComponent, selector: "ax-check-box", inputs: ["disabled", "tabIndex", "readonly", "value", "name", "id", "checked", "indeterminate"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i9.AXTranslatorPipe, name: "translate" }, { kind: "directive", type: i9.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i10.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: RouterModule }, { kind: "ngmodule", type: AXValidationModule }] }); }
107
107
  }
108
108
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPLoginPasswordComponent, decorators: [{
109
109
  type: Component,
110
- args: [{ imports: [...MODULES], standalone: true, template: "<ng-container *translate=\"let t\">\n <div class=\"ax-text-center ax-mb-4\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">\n {{ t('signin.title', { scope: 'auth' }) | async }}\n </h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('signin.hint', { scope: 'auth' }) | async }}\n </p>\n </div>\n <div class=\"ax-w-80 lg:ax-w-96\">\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 [(value)]=\"v1\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ t(l2, { scope: 'auth' }) | async }}</ax-label>\n <ax-password-box [(value)]=\"v2\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-password-box>\n </ax-form-field>\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <ax-check-box>\n <ax-label class=\"ax-mb-0\">{{ t('signin.remember', { scope: 'auth' }) | async }}</ax-label>\n </ax-check-box>\n <ax-button\n color=\"primary\"\n class=\"ax-sm\"\n [text]=\"t('forgot.password', { scope: 'auth' }) | async\"\n look=\"blank\"\n (onClick)=\"handleForgotOnClick()\"\n >\n </ax-button>\n </div>\n </div>\n <ax-button\n color=\"primary\"\n class=\"ax-mt-6 ax-w-full\"\n [text]=\"t(submitText, { scope: 'auth' }) | async\"\n (onClick)=\"handleLoginClick()\"\n [disabled]=\"isLoading$ | async\"\n [type]=\"'submit'\"\n >\n <ax-loading *ngIf=\"isLoading$ | async\"></ax-loading>\n </ax-button>\n <div class=\"ax-heading ax-heading-center !ax-my-8\">\n <span>{{ t('signin.or', { scope: 'auth' }) | async }}</span>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-2 lg:ax-flex-row ax-justify-between ax-mt-6\">\n <ax-button text=\"Sign in with Google\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-google fa-lg ax-text-danger-500\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n <ax-button text=\"Sign in with Apple\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-apple fa-xl\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n </ax-form>\n </div>\n</ng-container>\n" }]
110
+ args: [{ imports: [...MODULES], standalone: true, template: "<ng-container *translate=\"let t\">\n <div class=\"ax-text-center ax-mb-4\">\n <h1 class=\"ax-font-bold ax-text-xl ax-mb-2\">\n {{ t('signin.title', { scope: 'auth' }) | async }}\n </h1>\n <p class=\"ax-text-base ax-text-neutral-600\">\n {{ t('signin.hint', { scope: 'auth' }) | async }}\n </p>\n </div>\n <div class=\"ax-w-80 lg:ax-w-96\">\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 [(value)]=\"v1\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ t(l2, { scope: 'auth' }) | async }}</ax-label>\n <ax-password-box [(value)]=\"v2\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-password-box>\n </ax-form-field>\n <div class=\"ax-flex ax-justify-between ax-items-center\">\n <ax-check-box>\n <ax-label class=\"ax-mb-0\">{{ t('signin.remember', { scope: 'auth' }) | async }}</ax-label>\n </ax-check-box>\n <ax-button\n color=\"primary\"\n class=\"ax-sm\"\n [text]=\"t('forgot.password', { scope: 'auth' }) | async\"\n look=\"blank\"\n (onClick)=\"handleForgotOnClick()\"\n >\n </ax-button>\n </div>\n </div>\n <ax-button\n color=\"primary\"\n class=\"ax-mt-6 ax-w-full\"\n [text]=\"t(submitText, { scope: 'auth' }) | async\"\n (onClick)=\"handleLoginClick()\"\n [disabled]=\"isLoading$ | async\"\n [type]=\"'submit'\"\n >\n <ax-loading *ngIf=\"isLoading$ | async\"></ax-loading>\n </ax-button>\n <div class=\"ax-heading ax-heading-center !ax-my-8\">\n <span>{{ t('signin.or', { scope: 'auth' }) | async }}</span>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-2 lg:ax-flex-row ax-justify-between ax-mt-6\">\n <ax-button text=\"{{ 'authentication.with-google' | translate | async }}\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-google fa-lg ax-text-danger-500\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n <ax-button text=\"{{ 'authentication.with-apple' | translate | async }}\" color=\"ghost\">\n <ax-prefix>\n <ax-icon>\n <i class=\"fa-brands fa-apple fa-xl\"></i>\n </ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n </ax-form>\n </div>\n</ng-container>\n" }]
111
111
  }], propDecorators: { form: [{
112
112
  type: ViewChild,
113
113
  args: [AXFormComponent]
114
114
  }] } });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2F1dGgvc3JjL2xpYi9sb2dpbi9wYXNzd29yZC9wYXNzd29yZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXV0aC9zcmMvbGliL2xvZ2luL3Bhc3N3b3JkL3Bhc3N3b3JkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBVSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFdkQsT0FBTyxFQUFFLGtCQUFr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STtzQkFEWCxTQUFTO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhDaGVja0JveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jaGVjay1ib3gnO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGlhbG9nJztcbmltcG9ydCB7IEFYRm9ybUNvbXBvbmVudCwgQVhGb3JtTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2Zvcm0nO1xuaW1wb3J0IHsgQVhMYWJlbE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9sYWJlbCc7XG5pbXBvcnQgeyBBWExvYWRpbmdNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbG9hZGluZyc7XG5pbXBvcnQgeyBBWFBhc3N3b3JkQm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3Bhc3N3b3JkLWJveCc7XG5pbXBvcnQgeyBBWFRleHRCb3hNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvdGV4dC1ib3gnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdDaGlsZCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIsIFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IEFYVmFsaWRhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS92YWxpZGF0aW9uJztcbmltcG9ydCB7IEFYUFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQVhNQXV0aENvbmZpZ3MsIEFYTUF1dGhlbnRpY2F0aW9uVHlwZXMsIEFYTV9BVVRIX0NPTkZJR19UT0tFTiB9IGZyb20gJy4uLy4uL2F1dGguY29uZmlnJztcblxuY29uc3QgTU9EVUxFUyA9IFtcbiAgQ29tbW9uTW9kdWxlLFxuICBBWEZvcm1Nb2R1bGUsXG4gIEFYVGV4dEJveE1vZHVsZSxcbiAgQVhQYXNzd29yZEJveE1vZHVsZSxcbiAgQVhCdXR0b25Nb2R1bGUsXG4gIEFYTGFiZWxNb2R1bGUsXG4gIEFYRGVjb3JhdG9yTW9kdWxlLFxuICBBWENoZWNrQm94TW9kdWxlLFxuICBBWFRyYW5zbGF0aW9uTW9kdWxlLFxuICBBWFRyYW5zbGF0aW9uTW9kdWxlLFxuICBBWExvYWRpbmdNb2R1bGUsXG4gIFJvdXRlck1vZHVsZSxcbiAgQVhWYWxpZGF0aW9uTW9kdWxlLFxuXTtcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9wYXNzd29yZC5jb21wb25lbnQuaHRtbCcsXG4gIGltcG9ydHM6IFsuLi5NT0RVTEVTXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQTG9naW5QYXNzd29yZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByb3RlY3RlZCBjb25maWdzOiBBWE1BdXRoQ29uZmlncyA9IGluamVjdDxBWE1BdXRoQ29uZmlncz4oQVhNX0FVVEhfQ09ORklHX1RPS0VOKTtcbiAgcHJvdGVjdGVkIGwxITogc3RyaW5nO1xuICBwcm90ZWN0ZWQgbDIhOiBzdHJpbmc7XG5cbiAgcHJvdGVjdGVkIHYxID0gJyc7XG4gIHByb3RlY3RlZCB2Mjogc3RyaW5nIHwgbnVsbCA9ICcnO1xuXG4gIHByb3RlY3RlZCBpc0xvYWRpbmckOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICBwcm90ZWN0ZWQgc3VibWl0VGV4dCA9ICdzaWduaW4uc3VibWl0JztcbiAgcHJpdmF0ZSBkaWFsb2dTZXJ2aWNlID0gaW5qZWN0KEFYRGlhbG9nU2VydmljZSk7XG4gIHByaXZhdGUgc2Vzc2lvblNlcnZpY2UgPSBpbmplY3QoQVhQU2Vzc2lvblNlcnZpY2UpO1xuXG4gIEBWaWV3Q2hpbGQoQVhGb3JtQ29tcG9uZW50KVxuICBwcml2YXRlIGZvcm0hOiBBWEZvcm1Db21wb25lbnQ7XG5cbiAgcHJpdmF0ZSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmwyID0gJ3Bhc3N3b3JkJztcbiAgICBzd2l0Y2ggKHRoaXMuY29uZmlncy50eXBlKSB7XG4gICAgICBjYXNlIEFYTUF1dGhlbnRpY2F0aW9uVHlwZXMuRW1haWxQYXNzd29yZDpcbiAgICAgICAgdGhpcy5sMSA9ICdlbWFpbCc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBBWE1BdXRoZW50aWNhdGlvblR5cGVzLk1vYmlsZVBhc3N3b3JkOlxuICAgICAgICB0aGlzLmwxID0gJ21vYmlsZSc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBBWE1BdXRoZW50aWNhdGlvblR5cGVzLlVzZXJuYW1lRW1haWxQYXNzd29yZDpcbiAgICAgICAgdGhpcy5sMSA9ICd1c2VybmFtZS1lbWFpbCc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBBWE1BdXRoZW50aWNhdGlvblR5cGVzLlVzZXJuYW1lUGFzc3dvcmQ6XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLmwxID0gJ3VzZXJuYW1lJztcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlRm9yZ290T25DbGljaygpIHtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9hdXRoL2ZvcmdvdCddKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVMb2dpbkNsaWNrKCkge1xuICAgIHRoaXMuZm9ybS52YWxpZGF0ZSgpLnRoZW4oYXN5bmMgKGZvcm0pID0+IHtcbiAgICAgIGlmIChmb3JtLnJlc3VsdCkge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyQubmV4dCh0cnVlKTtcbiAgICAgICAgdGhpcy5zdWJtaXRUZXh0ID0gJ3Byb2Nlc3NpbmcnO1xuICAgICAgICB0aGlzLnN1Ym1pdFRleHQgPSAncmVkaXJlY3RpbmcnO1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGF3YWl0IHRoaXMuc2Vzc2lvblNlcnZpY2Uuc2lnbmluKHsgc3RyYXRlZ3k6ICd1c2VyLXBhc3MnLCB1c2VybmFtZTogdGhpcy52MSwgcGFzc3dvcmQ6IHRoaXMudjIhIH0pO1xuICAgICAgICAgIGF3YWl0IHRoaXMuc2Vzc2lvblNlcnZpY2Uuc2lnbkluQ29tcGxldGUoKTtcbiAgICAgICAgICBpZiAodGhpcy5zZXNzaW9uU2VydmljZS50ZW5hbnQ/LmlkID09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2F1dGgvYWNjb3VudC90ZW5hbnQtY2hvb3NlciddKTtcbiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuc2Vzc2lvblNlcnZpY2UuYXBwbGljYXRpb24/LmlkID09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2F1dGgvYWNjb3VudC9hcHAtY2hvb3NlciddKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2AvJHt0aGlzLnNlc3Npb25TZXJ2aWNlLmFwcGxpY2F0aW9uLm5hbWV9L2hvbWVgXSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC8vXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZyh7IGVycm9yIH0pO1xuICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5hbGVydCgnU29tZXRoaW5nIHdlbnQgd3JvbmchJywgYCR7ZXJyb3IubWVzc2FnZX0gYCwgJ3dhcm5pbmcnKTtcbiAgICAgICAgICB0aGlzLnN1Ym1pdFRleHQgPSAnc2lnbmluLnN1Ym1pdCc7XG4gICAgICAgICAgdGhpcy52MiA9IG51bGw7XG4gICAgICAgICAgdGhpcy5pc0xvYWRpbmckLm5leHQoZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKnRyYW5zbGF0ZT1cImxldCB0XCI+XG4gIDxkaXYgY2xhc3M9XCJheC10ZXh0LWNlbnRlciBheC1tYi00XCI+XG4gICAgPGgxIGNsYXNzPVwiYXgtZm9udC1ib2xkIGF4LXRleHQteGwgYXgtbWItMlwiPlxuICAgICAge3sgdCgnc2lnbmluLnRpdGxlJywgeyBzY29wZTogJ2F1dGgnIH0pIHwgYXN5bmMgfX1cbiAgICA8L2gxPlxuICAgIDxwIGNsYXNzPVwiYXgtdGV4dC1iYXNlIGF4LXRleHQtbmV1dHJhbC02MDBcIj5cbiAgICAgIHt7IHQoJ3NpZ25pbi5oaW50JywgeyBzY29wZTogJ2F1dGgnIH0pIHwgYXN5bmMgfX1cbiAgICA8L3A+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiYXgtdy04MCBsZzpheC13LTk2XCI+XG4gICAgPGF4LWZvcm0+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtNlwiPlxuICAgICAgICA8YXgtZm9ybS1maWVsZD5cbiAgICAgICAgICA8YXgtbGFiZWw+e3sgdChsMSwgeyBzY29wZTogJ2F1dGgnIH0pIHwgYXN5bmMgfX08L2F4LWxhYmVsPlxuICAgICAgICAgIDxheC10ZXh0LWJveCBbKHZhbHVlKV09XCJ2MVwiPlxuICAgICAgICAgICAgPGF4LXZhbGlkYXRpb24tcnVsZSBydWxlPVwicmVxdWlyZWRcIj48L2F4LXZhbGlkYXRpb24tcnVsZT5cbiAgICAgICAgICA8L2F4LXRleHQtYm94PlxuICAgICAgICA8L2F4LWZvcm0tZmllbGQ+XG4gICAgICAgIDxheC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDxheC1sYWJlbD57eyB0KGwyLCB7IHNjb3BlOiAnYXV0aCcgfSkgfCBhc3luYyB9fTwvYXgtbGFiZWw+XG4gICAgICAgICAgPGF4LXBhc3N3b3JkLWJveCBbKHZhbHVlKV09XCJ2MlwiPlxuICAgICAgICAgICAgPGF4LXZhbGlkYXRpb24tcnVsZSBydWxlPVwicmVxdWlyZWRcIj48L2F4LXZhbGlkYXRpb24tcnVsZT5cbiAgICAgICAgICA8L2F4LXBhc3N3b3JkLWJveD5cbiAgICAgICAgPC9heC1mb3JtLWZpZWxkPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1qdXN0aWZ5LWJldHdlZW4gYXgtaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgPGF4LWNoZWNrLWJveD5cbiAgICAgICAgICAgIDxheC1sYWJlbCBjbGFzcz1cImF4LW1iLTBcIj57eyB0KCdzaWduaW4ucmVtZW1iZXInLCB7IHNjb3BlOiAnYXV0aCcgfSkgfCBhc3luYyB9fTwvYXgtbGFiZWw+XG4gICAgICAgICAgPC9heC1jaGVjay1ib3g+XG4gICAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgIGNsYXNzPVwiYXgtc21cIlxuICAgICAgICAgICAgW3RleHRdPVwidCgnZm9yZ290LnBhc3N3b3JkJywgeyBzY29wZTogJ2F1dGgnIH0pIHwgYXN5bmNcIlxuICAgICAgICAgICAgbG9vaz1cImJsYW5rXCJcbiAgICAgICAgICAgIChvbkNsaWNrKT1cImhhbmRsZUZvcmdvdE9uQ2xpY2soKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGF4LWJ1dHRvblxuICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICBjbGFzcz1cImF4LW10LTYgYXgtdy1mdWxsXCJcbiAgICAgICAgW3RleHRdPVwidChzdWJtaXRUZXh0LCB7IHNjb3BlOiAnYXV0aCcgfSkgfCBhc3luY1wiXG4gICAgICAgIChvbkNsaWNrKT1cImhhbmRsZUxvZ2luQ2xpY2soKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpc0xvYWRpbmckIHwgYXN5bmNcIlxuICAgICAgICBbdHlwZV09XCInc3VibWl0J1wiXG4gICAgICA+XG4gICAgICAgIDxheC1sb2FkaW5nICpuZ0lmPVwiaXNMb2FkaW5nJCB8IGFzeW5jXCI+PC9heC1sb2FkaW5nPlxuICAgICAgPC9heC1idXR0b24+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtaGVhZGluZyBheC1oZWFkaW5nLWNlbnRlciAhYXgtbXktOFwiPlxuICAgICAgICA8c3Bhbj57eyB0KCdzaWduaW4ub3InLCB7IHNjb3BlOiAnYXV0aCcgfSkgfCBhc3luYyB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtZ2FwLTIgbGc6YXgtZmxleC1yb3cgYXgtanVzdGlmeS1iZXR3ZWVuIGF4LW10LTZcIj5cbiAgICAgICAgPGF4LWJ1dHRvbiB0ZXh0PVwiU2lnbiBpbiB3aXRoIEdvb2dsZVwiIGNvbG9yPVwiZ2hvc3RcIj5cbiAgICAgICAgICA8YXgtcHJlZml4PlxuICAgICAgICAgICAgPGF4LWljb24+XG4gICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEtYnJhbmRzIGZhLWdvb2dsZSBmYS1sZyBheC10ZXh0LWRhbmdlci01MDBcIj48L2k+XG4gICAgICAgICAgICA8L2F4LWljb24+XG4gICAgICAgICAgPC9heC1wcmVmaXg+XG4gICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICA8YXgtYnV0dG9uIHRleHQ9XCJTaWduIGluIHdpdGggQXBwbGVcIiBjb2xvcj1cImdob3N0XCI+XG4gICAgICAgICAgPGF4LXByZWZpeD5cbiAgICAgICAgICAgIDxheC1pY29uPlxuICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhLWJyYW5kcyBmYS1hcHBsZSBmYS14bFwiPjwvaT5cbiAgICAgICAgICAgIDwvYXgtaWNvbj5cbiAgICAgICAgICA8L2F4LXByZWZpeD5cbiAgICAgICAgPC9heC1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2F4LWZvcm0+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2F1dGgvc3JjL2xpYi9sb2dpbi9wYXNzd29yZC9wYXNzd29yZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXV0aC9zcmMvbGliL2xvZ2luL3Bhc3N3b3JkL3Bhc3N3b3JkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBVSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFdkQsT0FBTyxFQUFFLGtCQUFr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STtzQkFEWCxTQUFTO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhDaGVja0JveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jaGVjay1ib3gnO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGlhbG9nJztcbmltcG9ydCB7IEFYRm9ybUNvbXBvbmVudCwgQVhGb3JtTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2Zvcm0nO1xuaW1wb3J0IHsgQVhMYWJlbE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9sYWJlbCc7XG5pbXBvcnQgeyBBWExvYWRpbmdNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbG9hZGluZyc7XG5pbXBvcnQgeyBBWFBhc3N3b3JkQm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3Bhc3N3b3JkLWJveCc7XG5pbXBvcnQgeyBBWFRleHRCb3hNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvdGV4dC1ib3gnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdDaGlsZCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIsIFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IEFYVmFsaWRhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS92YWxpZGF0aW9uJztcbmltcG9ydCB7IEFYUFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9hdXRoJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQVhNQXV0aENvbmZpZ3MsIEFYTUF1dGhlbnRpY2F0aW9uVHlwZXMsIEFYTV9BVVRIX0NPTkZJR19UT0tFTiB9IGZyb20gJy4uLy4uL2F1dGguY29uZmlnJztcblxuY29uc3QgTU9EVUxFUyA9IFtcbiAgQ29tbW9uTW9kdWxlLFxuICBBWEZvcm1Nb2R1bGUsXG4gIEFYVGV4dEJveE1vZHVsZSxcbiAgQVhQYXNzd29yZEJveE1vZHVsZSxcbiAgQVhCdXR0b25Nb2R1bGUsXG4gIEFYTGFiZWxNb2R1bGUsXG4gIEFYRGVjb3JhdG9yTW9kdWxlLFxuICBBWENoZWNrQm94TW9kdWxlLFxuICBBWFRyYW5zbGF0aW9uTW9kdWxlLFxuICBBWFRyYW5zbGF0aW9uTW9kdWxlLFxuICBBWExvYWRpbmdNb2R1bGUsXG4gIFJvdXRlck1vZHVsZSxcbiAgQVhWYWxpZGF0aW9uTW9kdWxlLFxuXTtcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9wYXNzd29yZC5jb21wb25lbnQuaHRtbCcsXG4gIGltcG9ydHM6IFsuLi5NT0RVTEVTXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgQVhQTG9naW5QYXNzd29yZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByb3RlY3RlZCBjb25maWdzOiBBWE1BdXRoQ29uZmlncyA9IGluamVjdDxBWE1BdXRoQ29uZmlncz4oQVhNX0FVVEhfQ09ORklHX1RPS0VOKTtcbiAgcHJvdGVjdGVkIGwxITogc3RyaW5nO1xuICBwcm90ZWN0ZWQgbDIhOiBzdHJpbmc7XG5cbiAgcHJvdGVjdGVkIHYxID0gJyc7XG4gIHByb3RlY3RlZCB2Mjogc3RyaW5nIHwgbnVsbCA9ICcnO1xuXG4gIHByb3RlY3RlZCBpc0xvYWRpbmckOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICBwcm90ZWN0ZWQgc3VibWl0VGV4dCA9ICdzaWduaW4uc3VibWl0JztcbiAgcHJpdmF0ZSBkaWFsb2dTZXJ2aWNlID0gaW5qZWN0KEFYRGlhbG9nU2VydmljZSk7XG4gIHByaXZhdGUgc2Vzc2lvblNlcnZpY2UgPSBpbmplY3QoQVhQU2Vzc2lvblNlcnZpY2UpO1xuXG4gIEBWaWV3Q2hpbGQoQVhGb3JtQ29tcG9uZW50KVxuICBwcml2YXRlIGZvcm0hOiBBWEZvcm1Db21wb25lbnQ7XG5cbiAgcHJpdmF0ZSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmwyID0gJ3Bhc3N3b3JkJztcbiAgICBzd2l0Y2ggKHRoaXMuY29uZmlncy50eXBlKSB7XG4gICAgICBjYXNlIEFYTUF1dGhlbnRpY2F0aW9uVHlwZXMuRW1haWxQYXNzd29yZDpcbiAgICAgICAgdGhpcy5sMSA9ICdlbWFpbCc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBBWE1BdXRoZW50aWNhdGlvblR5cGVzLk1vYmlsZVBhc3N3b3JkOlxuICAgICAgICB0aGlzLmwxID0gJ21vYmlsZSc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBBWE1BdXRoZW50aWNhdGlvblR5cGVzLlVzZXJuYW1lRW1haWxQYXNzd29yZDpcbiAgICAgICAgdGhpcy5sMSA9ICd1c2VybmFtZS1lbWFpbCc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBBWE1BdXRoZW50aWNhdGlvblR5cGVzLlVzZXJuYW1lUGFzc3dvcmQ6XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLmwxID0gJ3VzZXJuYW1lJztcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlRm9yZ290T25DbGljaygpIHtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9hdXRoL2ZvcmdvdCddKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVMb2dpbkNsaWNrKCkge1xuICAgIHRoaXMuZm9ybS52YWxpZGF0ZSgpLnRoZW4oYXN5bmMgKGZvcm0pID0+IHtcbiAgICAgIGlmIChmb3JtLnJlc3VsdCkge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyQubmV4dCh0cnVlKTtcbiAgICAgICAgdGhpcy5zdWJtaXRUZXh0ID0gJ3Byb2Nlc3NpbmcnO1xuICAgICAgICB0aGlzLnN1Ym1pdFRleHQgPSAncmVkaXJlY3RpbmcnO1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGF3YWl0IHRoaXMuc2Vzc2lvblNlcnZpY2Uuc2lnbmluKHsgc3RyYXRlZ3k6ICd1c2VyLXBhc3MnLCB1c2VybmFtZTogdGhpcy52MSwgcGFzc3dvcmQ6IHRoaXMudjIhIH0pO1xuICAgICAgICAgIGF3YWl0IHRoaXMuc2Vzc2lvblNlcnZpY2Uuc2lnbkluQ29tcGxldGUoKTtcbiAgICAgICAgICBpZiAodGhpcy5zZXNzaW9uU2VydmljZS50ZW5hbnQ/LmlkID09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2F1dGgvYWNjb3VudC90ZW5hbnQtY2hvb3NlciddKTtcbiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuc2Vzc2lvblNlcnZpY2UuYXBwbGljYXRpb24/LmlkID09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2F1dGgvYWNjb3VudC9hcHAtY2hvb3NlciddKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2AvJHt0aGlzLnNlc3Npb25TZXJ2aWNlLmFwcGxpY2F0aW9uLm5hbWV9L2hvbWVgXSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC8vXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZyh7IGVycm9yIH0pO1xuICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5hbGVydCgnU29tZXRoaW5nIHdlbnQgd3JvbmchJywgYCR7ZXJyb3IubWVzc2FnZX0gYCwgJ3dhcm5pbmcnKTtcbiAgICAgICAgICB0aGlzLnN1Ym1pdFRleHQgPSAnc2lnbmluLnN1Ym1pdCc7XG4gICAgICAgICAgdGhpcy52MiA9IG51bGw7XG4gICAgICAgICAgdGhpcy5pc0xvYWRpbmckLm5leHQoZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKnRyYW5zbGF0ZT1cImxldCB0XCI+XG4gIDxkaXYgY2xhc3M9XCJheC10ZXh0LWNlbnRlciBheC1tYi00XCI+XG4gICAgPGgxIGNsYXNzPVwiYXgtZm9udC1ib2xkIGF4LXRleHQteGwgYXgtbWItMlwiPlxuICAgICAge3sgdCgnc2lnbmluLnRpdGxlJywgeyBzY29wZTogJ2F1dGgnIH0pIHwgYXN5bmMgfX1cbiAgICA8L2gxPlxuICAgIDxwIGNsYXNzPVwiYXgtdGV4dC1iYXNlIGF4LXRleHQtbmV1dHJhbC02MDBcIj5cbiAgICAgIHt7IHQoJ3NpZ25pbi5oaW50JywgeyBzY29wZTogJ2F1dGgnIH0pIHwgYXN5bmMgfX1cbiAgICA8L3A+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiYXgtdy04MCBsZzpheC13LTk2XCI+XG4gICAgPGF4LWZvcm0+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtNlwiPlxuICAgICAgICA8YXgtZm9ybS1maWVsZD5cbiAgICAgICAgICA8YXgtbGFiZWw+e3sgdChsMSwgeyBzY29wZTogJ2F1dGgnIH0pIHwgYXN5bmMgfX08L2F4LWxhYmVsPlxuICAgICAgICAgIDxheC10ZXh0LWJveCBbKHZhbHVlKV09XCJ2MVwiPlxuICAgICAgICAgICAgPGF4LXZhbGlkYXRpb24tcnVsZSBydWxlPVwicmVxdWlyZWRcIj48L2F4LXZhbGlkYXRpb24tcnVsZT5cbiAgICAgICAgICA8L2F4LXRleHQtYm94PlxuICAgICAgICA8L2F4LWZvcm0tZmllbGQ+XG4gICAgICAgIDxheC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDxheC1sYWJlbD57eyB0KGwyLCB7IHNjb3BlOiAnYXV0aCcgfSkgfCBhc3luYyB9fTwvYXgtbGFiZWw+XG4gICAgICAgICAgPGF4LXBhc3N3b3JkLWJveCBbKHZhbHVlKV09XCJ2MlwiPlxuICAgICAgICAgICAgPGF4LXZhbGlkYXRpb24tcnVsZSBydWxlPVwicmVxdWlyZWRcIj48L2F4LXZhbGlkYXRpb24tcnVsZT5cbiAgICAgICAgICA8L2F4LXBhc3N3b3JkLWJveD5cbiAgICAgICAgPC9heC1mb3JtLWZpZWxkPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1qdXN0aWZ5LWJldHdlZW4gYXgtaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgPGF4LWNoZWNrLWJveD5cbiAgICAgICAgICAgIDxheC1sYWJlbCBjbGFzcz1cImF4LW1iLTBcIj57eyB0KCdzaWduaW4ucmVtZW1iZXInLCB7IHNjb3BlOiAnYXV0aCcgfSkgfCBhc3luYyB9fTwvYXgtbGFiZWw+XG4gICAgICAgICAgPC9heC1jaGVjay1ib3g+XG4gICAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgIGNsYXNzPVwiYXgtc21cIlxuICAgICAgICAgICAgW3RleHRdPVwidCgnZm9yZ290LnBhc3N3b3JkJywgeyBzY29wZTogJ2F1dGgnIH0pIHwgYXN5bmNcIlxuICAgICAgICAgICAgbG9vaz1cImJsYW5rXCJcbiAgICAgICAgICAgIChvbkNsaWNrKT1cImhhbmRsZUZvcmdvdE9uQ2xpY2soKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGF4LWJ1dHRvblxuICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICBjbGFzcz1cImF4LW10LTYgYXgtdy1mdWxsXCJcbiAgICAgICAgW3RleHRdPVwidChzdWJtaXRUZXh0LCB7IHNjb3BlOiAnYXV0aCcgfSkgfCBhc3luY1wiXG4gICAgICAgIChvbkNsaWNrKT1cImhhbmRsZUxvZ2luQ2xpY2soKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpc0xvYWRpbmckIHwgYXN5bmNcIlxuICAgICAgICBbdHlwZV09XCInc3VibWl0J1wiXG4gICAgICA+XG4gICAgICAgIDxheC1sb2FkaW5nICpuZ0lmPVwiaXNMb2FkaW5nJCB8IGFzeW5jXCI+PC9heC1sb2FkaW5nPlxuICAgICAgPC9heC1idXR0b24+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtaGVhZGluZyBheC1oZWFkaW5nLWNlbnRlciAhYXgtbXktOFwiPlxuICAgICAgICA8c3Bhbj57eyB0KCdzaWduaW4ub3InLCB7IHNjb3BlOiAnYXV0aCcgfSkgfCBhc3luYyB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtZ2FwLTIgbGc6YXgtZmxleC1yb3cgYXgtanVzdGlmeS1iZXR3ZWVuIGF4LW10LTZcIj5cbiAgICAgICAgPGF4LWJ1dHRvbiB0ZXh0PVwie3sgJ2F1dGhlbnRpY2F0aW9uLndpdGgtZ29vZ2xlJyB8IHRyYW5zbGF0ZSB8IGFzeW5jIH19XCIgY29sb3I9XCJnaG9zdFwiPlxuICAgICAgICAgIDxheC1wcmVmaXg+XG4gICAgICAgICAgICA8YXgtaWNvbj5cbiAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYS1icmFuZHMgZmEtZ29vZ2xlIGZhLWxnIGF4LXRleHQtZGFuZ2VyLTUwMFwiPjwvaT5cbiAgICAgICAgICAgIDwvYXgtaWNvbj5cbiAgICAgICAgICA8L2F4LXByZWZpeD5cbiAgICAgICAgPC9heC1idXR0b24+XG4gICAgICAgIDxheC1idXR0b24gdGV4dD1cInt7ICdhdXRoZW50aWNhdGlvbi53aXRoLWFwcGxlJyB8IHRyYW5zbGF0ZSB8IGFzeW5jIH19XCIgY29sb3I9XCJnaG9zdFwiPlxuICAgICAgICAgIDxheC1wcmVmaXg+XG4gICAgICAgICAgICA8YXgtaWNvbj5cbiAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYS1icmFuZHMgZmEtYXBwbGUgZmEteGxcIj48L2k+XG4gICAgICAgICAgICA8L2F4LWljb24+XG4gICAgICAgICAgPC9heC1wcmVmaXg+XG4gICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9heC1mb3JtPlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -0,0 +1,23 @@
1
+ import * as i0 from '@angular/core';
2
+ import { NgModule } from '@angular/core';
3
+
4
+ class AXMApplicationManagementModule {
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMApplicationManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: AXMApplicationManagementModule }); }
7
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMApplicationManagementModule }); }
8
+ }
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMApplicationManagementModule, decorators: [{
10
+ type: NgModule,
11
+ args: [{
12
+ imports: [],
13
+ exports: [],
14
+ declarations: [],
15
+ }]
16
+ }] });
17
+
18
+ /**
19
+ * Generated bundle index. Do not edit.
20
+ */
21
+
22
+ export { AXMApplicationManagementModule };
23
+ //# sourceMappingURL=acorex-modules-application-management.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-modules-application-management.mjs","sources":["../../../../libs/modules/application-management/src/lib/application-management.module.ts","../../../../libs/modules/application-management/src/acorex-modules-application-management.ts"],"sourcesContent":["import { NgModule } from \"@angular/core\";\n@NgModule({\n imports: [],\n exports: [],\n declarations: [],\n})\nexport class AXMApplicationManagementModule {\n}\n ","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAMa,8BAA8B,CAAA;8GAA9B,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;+GAA9B,8BAA8B,EAAA,CAAA,CAAA,EAAA;+GAA9B,8BAA8B,EAAA,CAAA,CAAA,EAAA;;2FAA9B,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAL1C,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,EAAE;AACX,oBAAA,OAAO,EAAE,EAAE;AACX,oBAAA,YAAY,EAAE,EAAE;AACnB,iBAAA,CAAA;;;ACLD;;AAEG;;;;"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, NgZone, isDevMode, Injectable, InjectionToken, Component, ViewChild, NgModule } from '@angular/core';
2
+ import { inject, NgZone, isDevMode, Injectable, InjectionToken, Component, signal, ViewChild, NgModule } from '@angular/core';
3
3
  import * as i1$2 from '@acorex/platform/common';
4
4
  import { AXPLayoutService, AXPSignOutAction, AXPSignInAction, AXPLogoComponent, AXPDataProvider, AXPComponentSlotModule, AXPCommonModule } from '@acorex/platform/common';
5
5
  import * as i2 from '@angular/router';
@@ -11,7 +11,7 @@ import { CommonModule } from '@angular/common';
11
11
  import * as i1 from '@ngrx/effects';
12
12
  import { createEffect, ofType, EffectsModule } from '@ngrx/effects';
13
13
  import { AXDialogService } from '@acorex/components/dialog';
14
- import { Subject, timer, switchMap as switchMap$1, of, tap as tap$1, firstValueFrom } from 'rxjs';
14
+ import { Subject, timer, switchMap as switchMap$1, of, tap as tap$1, first, firstValueFrom } from 'rxjs';
15
15
  import { startWith, switchMap, tap } from 'rxjs/operators';
16
16
  import * as i2$2 from '@acorex/components/button';
17
17
  import { AXButtonModule } from '@acorex/components/button';
@@ -25,7 +25,7 @@ import * as i3$2 from '@acorex/components/avatar';
25
25
  import { AXAvatarModule } from '@acorex/components/avatar';
26
26
  import * as i2$3 from '@acorex/components/image';
27
27
  import { AXImageModule } from '@acorex/components/image';
28
- import * as i6 from '@acorex/core/translation';
28
+ import * as i9 from '@acorex/core/translation';
29
29
  import { AXTranslationModule } from '@acorex/core/translation';
30
30
  import { MockDataService } from '@acorex/platform/mocks';
31
31
 
@@ -104,18 +104,18 @@ const routes = [
104
104
  },
105
105
  {
106
106
  path: '',
107
- loadComponent: () => import('./acorex-modules-auth-master.layout-CjfjDdzw.mjs').then((c) => c.AXPAuthMasterLayoutComponent),
108
- loadChildren: () => import('./acorex-modules-auth-login.module-DZ0QDjNv.mjs').then((c) => c.AXPSignInModule),
107
+ loadComponent: () => import('./acorex-modules-auth-master.layout-DczZtXmF.mjs').then((c) => c.AXPAuthMasterLayoutComponent),
108
+ loadChildren: () => import('./acorex-modules-auth-login.module-B3xEQTTg.mjs').then((c) => c.AXPSignInModule),
109
109
  },
110
110
  {
111
111
  path: '',
112
- loadComponent: () => import('./acorex-modules-auth-master.layout-CjfjDdzw.mjs').then((c) => c.AXPAuthMasterLayoutComponent),
113
- loadChildren: () => import('./acorex-modules-auth-two-factor.module-D-jZC2Fc.mjs').then((c) => c.AXPTwoFactorModule),
112
+ loadComponent: () => import('./acorex-modules-auth-master.layout-DczZtXmF.mjs').then((c) => c.AXPAuthMasterLayoutComponent),
113
+ loadChildren: () => import('./acorex-modules-auth-two-factor.module-BzdjoEGS.mjs').then((c) => c.AXPTwoFactorModule),
114
114
  },
115
115
  {
116
116
  path: '',
117
- loadComponent: () => import('./acorex-modules-auth-master.layout-CjfjDdzw.mjs').then((c) => c.AXPAuthMasterLayoutComponent),
118
- loadChildren: () => import('./acorex-modules-auth-routes-CTyAW4kk.mjs').then((c) => c),
117
+ loadComponent: () => import('./acorex-modules-auth-master.layout-DczZtXmF.mjs').then((c) => c.AXPAuthMasterLayoutComponent),
118
+ loadChildren: () => import('./acorex-modules-auth-routes-DScu3qYW.mjs').then((c) => c),
119
119
  },
120
120
  {
121
121
  path: 'account',
@@ -320,10 +320,23 @@ class AXMAuthProfileSlotComponent {
320
320
  this.sessionService = inject(AXPSessionService);
321
321
  this.dataService = inject(AXPDataProvider, { optional: true });
322
322
  this.mockerService = inject(MockDataService);
323
+ this.hasPicture = signal(true);
324
+ this.avatarText = signal('');
323
325
  this.user$ = this.sessionService.user$;
324
326
  this.tenant$ = this.sessionService.tenant$;
325
327
  this.isAuthenticated$ = this.sessionService.isAuthenticated$;
328
+ this.getAvatarText = () => {
329
+ this.user$.pipe(first()).subscribe((user) => {
330
+ const names = user?.title.split(' ');
331
+ if (names?.length && names?.length > 1) {
332
+ this.avatarText.set(`${names[0][0].toUpperCase()}${names[names.length - 1][0].toUpperCase()}`);
333
+ }
334
+ else
335
+ return this.avatarText.set('AC');
336
+ });
337
+ };
326
338
  this.loadImage();
339
+ this.getAvatarText();
327
340
  }
328
341
  editProfile() {
329
342
  const appName = this.sessionService.application?.name;
@@ -348,6 +361,9 @@ class AXMAuthProfileSlotComponent {
348
361
  handleSignIn() {
349
362
  this.router.navigate(['/auth/login']);
350
363
  }
364
+ onImageError(event) {
365
+ this.hasPicture.set(false);
366
+ }
351
367
  async loadImage() {
352
368
  try {
353
369
  const url = this.sessionService.user?.avatar;
@@ -355,7 +371,6 @@ class AXMAuthProfileSlotComponent {
355
371
  this.src = url;
356
372
  }
357
373
  else if (this.sessionService.user?.avatar != 'null' && this.dataService) {
358
- //TODO: Remove dataService and mockService
359
374
  const blob = await this.dataService.viewFile(url, '');
360
375
  this.src = URL.createObjectURL(blob);
361
376
  }
@@ -364,11 +379,13 @@ class AXMAuthProfileSlotComponent {
364
379
  }
365
380
  }
366
381
  catch (error) {
382
+ this.hasPicture.set(false);
367
383
  console.error('Failed to load image by ID:', error);
384
+ this.src = '';
368
385
  }
369
386
  }
370
387
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMAuthProfileSlotComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
371
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXMAuthProfileSlotComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "profilePopover", first: true, predicate: ["profilePopover"], descendants: true }], ngImport: i0, template: "@if((isAuthenticated$ | async)) {\n<ax-avatar #avatar color=\"secondary\" [size]=\"32\" class=\"ax-cursor-pointer ax-ms-4\">\n <ax-image [src]=\"src\"></ax-image>\n</ax-avatar>\n<ax-popover [target]=\"avatar\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\">\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-p-4 ax-border-b\">\n <ax-avatar [size]=\"60\">\n <ax-image [src]=\"src\">\n <ax-loading></ax-loading>\n </ax-image>\n </ax-avatar>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-mt-2 ax-gap-1\">\n <div class=\"ax-text-base ax-font-bold\">{{ (user$ | async)?.title }}</div>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n </div>\n </div>\n <div class=\"profile-menus ax-text-slate-500\">\n <!-- <ul>\n <li>\n <i class=\"fa-solid fa-folder-open\"></i>\n <span> Project Management </span>\n </li>\n <li>\n <i class=\"fa-solid fa-envelope-open-text\"></i>\n <span>Email Config</span>\n </li>\n <li>\n <i class=\"fa-solid fa-gear\"></i>\n <span>Setting</span>\n </li>\n </ul> -->\n <ul>\n <!-- <li>\n <i class=\"fa-solid fa-gem ax-text-primary-500\"></i>\n <span> Upgrade account </span>\n </li> -->\n <li (click)=\"editProfile()\">\n <i class=\"fa-solid fa-user\"></i>\n <span>{{ 'profile.edit' | translate | async }}</span>\n </li>\n </ul>\n <ul>\n <li class=\"ax-text-danger-500\" (click)=\"logOut()\">\n <i class=\"fa-solid fa-arrow-right-from-bracket\"></i>\n <span>{{ 'profile.logout' | translate | async }}</span>\n </li>\n </ul>\n </div>\n </div>\n</ax-popover>\n} @else {\n<ax-button color=\"default\" look=\"blank\" text=\"Sign Up / Sign In\" (click)=\"handleSignIn()\">\n <ax-icon>\n <i class=\"fa-solid fa-user ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n}", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2$3.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXAvatarModule }, { kind: "component", type: i3$2.AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "look"], outputs: ["sizeChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i3$1.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2$2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXPTenantChooserDropdownComponent, selector: "axp-tenant-chooser-dropdown" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i3.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }] }); }
388
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AXMAuthProfileSlotComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "profilePopover", first: true, predicate: ["profilePopover"], descendants: true }], ngImport: i0, template: "@if((isAuthenticated$ | async)) {\n<ax-avatar #avatar color=\"secondary\" (error)=\"this.src = 'path/to/default-image.jpg'\" [size]=\"32\" class=\"ax-cursor-pointer ax-ms-4\">\n @if(hasPicture()){\n <ax-image (onError)=\"onImageError($event)\" [src]=\"src\"></ax-image>\n }@else{\n <ax-text>\n <small class=\"ax-text-xs ax-font-semibold\">{{ avatarText() }}</small>\n </ax-text>\n }\n</ax-avatar>\n<ax-popover [target]=\"avatar\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\">\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-p-4 ax-border-b\">\n <ax-avatar [size]=\"60\">\n @if(hasPicture()){\n <ax-image (onError)=\"onImageError($event)\" [src]=\"src\">\n <ax-loading></ax-loading>\n </ax-image>\n }@else{\n <ax-text>\n <span class=\"\">{{ avatarText() }}</span>\n </ax-text>\n }\n </ax-avatar>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-mt-2 ax-gap-1\">\n <div class=\"ax-text-base ax-font-bold\">{{ (user$ | async)?.title }}</div>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n </div>\n </div>\n <div class=\"profile-menus ax-text-slate-500\">\n <!-- <ul>\n <li>\n <i class=\"fa-solid fa-folder-open\"></i>\n <span> Project Management </span>\n </li>\n <li>\n <i class=\"fa-solid fa-envelope-open-text\"></i>\n <span>Email Config</span>\n </li>\n <li>\n <i class=\"fa-solid fa-gear\"></i>\n <span>Setting</span>\n </li>\n </ul> -->\n <ul>\n <!-- <li>\n <i class=\"fa-solid fa-gem ax-text-primary-500\"></i>\n <span> Upgrade account </span>\n </li> -->\n <li (click)=\"editProfile()\">\n <i class=\"fa-solid fa-user\"></i>\n <span>{{ 'profile.edit' | translate | async }}</span>\n </li>\n </ul>\n <ul>\n <li class=\"ax-text-danger-500\" (click)=\"logOut()\">\n <i class=\"fa-solid fa-arrow-right-from-bracket\"></i>\n <span>{{ 'profile.logout' | translate | async }}</span>\n </li>\n </ul>\n </div>\n </div>\n</ax-popover>\n} @else {\n<ax-button color=\"default\" look=\"blank\" text=\"Sign Up / Sign In\" (click)=\"handleSignIn()\">\n <ax-icon>\n <i class=\"fa-solid fa-user ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n}\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: AXImageModule }, { kind: "component", type: i2$3.AXImageComponent, selector: "ax-image", inputs: ["overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXAvatarModule }, { kind: "component", type: i3$2.AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "look"], outputs: ["sizeChange"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i3$1.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2$2.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "responsiveOn", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "responsiveOnChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "component", type: AXPTenantChooserDropdownComponent, selector: "axp-tenant-chooser-dropdown" }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i3.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i9.AXTranslatorPipe, name: "translate" }] }); }
372
389
  }
373
390
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXMAuthProfileSlotComponent, decorators: [{
374
391
  type: Component,
@@ -381,8 +398,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
381
398
  AXDecoratorModule,
382
399
  AXPTenantChooserDropdownComponent,
383
400
  AXLoadingModule,
384
- AXTranslationModule
385
- ], template: "@if((isAuthenticated$ | async)) {\n<ax-avatar #avatar color=\"secondary\" [size]=\"32\" class=\"ax-cursor-pointer ax-ms-4\">\n <ax-image [src]=\"src\"></ax-image>\n</ax-avatar>\n<ax-popover [target]=\"avatar\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\">\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-p-4 ax-border-b\">\n <ax-avatar [size]=\"60\">\n <ax-image [src]=\"src\">\n <ax-loading></ax-loading>\n </ax-image>\n </ax-avatar>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-mt-2 ax-gap-1\">\n <div class=\"ax-text-base ax-font-bold\">{{ (user$ | async)?.title }}</div>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n </div>\n </div>\n <div class=\"profile-menus ax-text-slate-500\">\n <!-- <ul>\n <li>\n <i class=\"fa-solid fa-folder-open\"></i>\n <span> Project Management </span>\n </li>\n <li>\n <i class=\"fa-solid fa-envelope-open-text\"></i>\n <span>Email Config</span>\n </li>\n <li>\n <i class=\"fa-solid fa-gear\"></i>\n <span>Setting</span>\n </li>\n </ul> -->\n <ul>\n <!-- <li>\n <i class=\"fa-solid fa-gem ax-text-primary-500\"></i>\n <span> Upgrade account </span>\n </li> -->\n <li (click)=\"editProfile()\">\n <i class=\"fa-solid fa-user\"></i>\n <span>{{ 'profile.edit' | translate | async }}</span>\n </li>\n </ul>\n <ul>\n <li class=\"ax-text-danger-500\" (click)=\"logOut()\">\n <i class=\"fa-solid fa-arrow-right-from-bracket\"></i>\n <span>{{ 'profile.logout' | translate | async }}</span>\n </li>\n </ul>\n </div>\n </div>\n</ax-popover>\n} @else {\n<ax-button color=\"default\" look=\"blank\" text=\"Sign Up / Sign In\" (click)=\"handleSignIn()\">\n <ax-icon>\n <i class=\"fa-solid fa-user ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n}" }]
401
+ AXTranslationModule,
402
+ ], template: "@if((isAuthenticated$ | async)) {\n<ax-avatar #avatar color=\"secondary\" (error)=\"this.src = 'path/to/default-image.jpg'\" [size]=\"32\" class=\"ax-cursor-pointer ax-ms-4\">\n @if(hasPicture()){\n <ax-image (onError)=\"onImageError($event)\" [src]=\"src\"></ax-image>\n }@else{\n <ax-text>\n <small class=\"ax-text-xs ax-font-semibold\">{{ avatarText() }}</small>\n </ax-text>\n }\n</ax-avatar>\n<ax-popover [target]=\"avatar\" [openOn]=\"'toggle'\" [closeOn]=\"'clickOut'\">\n <div class=\"ax-bg-surface ax-border ax-border-default ax-rounded-md ax-shadow-md ax-w-full ax-min-w-64\">\n <div class=\"ax-flex ax-flex-col ax-items-center ax-p-4 ax-border-b\">\n <ax-avatar [size]=\"60\">\n @if(hasPicture()){\n <ax-image (onError)=\"onImageError($event)\" [src]=\"src\">\n <ax-loading></ax-loading>\n </ax-image>\n }@else{\n <ax-text>\n <span class=\"\">{{ avatarText() }}</span>\n </ax-text>\n }\n </ax-avatar>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-mt-2 ax-gap-1\">\n <div class=\"ax-text-base ax-font-bold\">{{ (user$ | async)?.title }}</div>\n <axp-tenant-chooser-dropdown></axp-tenant-chooser-dropdown>\n </div>\n </div>\n <div class=\"profile-menus ax-text-slate-500\">\n <!-- <ul>\n <li>\n <i class=\"fa-solid fa-folder-open\"></i>\n <span> Project Management </span>\n </li>\n <li>\n <i class=\"fa-solid fa-envelope-open-text\"></i>\n <span>Email Config</span>\n </li>\n <li>\n <i class=\"fa-solid fa-gear\"></i>\n <span>Setting</span>\n </li>\n </ul> -->\n <ul>\n <!-- <li>\n <i class=\"fa-solid fa-gem ax-text-primary-500\"></i>\n <span> Upgrade account </span>\n </li> -->\n <li (click)=\"editProfile()\">\n <i class=\"fa-solid fa-user\"></i>\n <span>{{ 'profile.edit' | translate | async }}</span>\n </li>\n </ul>\n <ul>\n <li class=\"ax-text-danger-500\" (click)=\"logOut()\">\n <i class=\"fa-solid fa-arrow-right-from-bracket\"></i>\n <span>{{ 'profile.logout' | translate | async }}</span>\n </li>\n </ul>\n </div>\n </div>\n</ax-popover>\n} @else {\n<ax-button color=\"default\" look=\"blank\" text=\"Sign Up / Sign In\" (click)=\"handleSignIn()\">\n <ax-icon>\n <i class=\"fa-solid fa-user ax-text-slate-400 dark:ax-text-slate-200\"></i>\n </ax-icon>\n</ax-button>\n}\n" }]
386
403
  }], ctorParameters: () => [], propDecorators: { profilePopover: [{
387
404
  type: ViewChild,
388
405
  args: ['profilePopover']
@@ -424,12 +441,12 @@ function routesFacory() {
424
441
  routes = [
425
442
  {
426
443
  path: 'tenant-chooser',
427
- loadComponent: () => import('./acorex-modules-auth-tenant-chooser.component-B_uu2uK2.mjs').then((c) => c.AXPAuthTenantChooserComponent),
444
+ loadComponent: () => import('./acorex-modules-auth-tenant-chooser.component-CHr5_kh7.mjs').then((c) => c.AXPAuthTenantChooserComponent),
428
445
  canActivate: [AXPAuthGuard, canActivateTenantChooser],
429
446
  },
430
447
  {
431
448
  path: 'app-chooser',
432
- loadComponent: () => import('./acorex-modules-auth-app-chooser.component-D6LlSqNY.mjs').then((c) => c.AXPAuthAppChooserComponent),
449
+ loadComponent: () => import('./acorex-modules-auth-app-chooser.component-DYP5fP8W.mjs').then((c) => c.AXPAuthAppChooserComponent),
433
450
  canActivate: [AXPAuthGuard, canActivateAppChooser],
434
451
  },
435
452
  ];
@@ -531,4 +548,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
531
548
  */
532
549
 
533
550
  export { AXM_AUTH_CONFIG_TOKEN as A, AXMAuthenticationTypes as a, AXPTenantChooserDropdownComponent as b, AXPAppChooserListComponent as c, AXMAuthErrorHandler as d, AXMDefaultAuthConfigs as e, configAuthModule as f, AXMAuthModule as g, AXPIdleService as h };
534
- //# sourceMappingURL=acorex-modules-auth-acorex-modules-auth-d_YCfQWo.mjs.map
551
+ //# sourceMappingURL=acorex-modules-auth-acorex-modules-auth-B8LgaiHl.mjs.map