@volosoft/abp.ng.theme.lepton-x 5.2.0 → 5.3.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -17,10 +17,10 @@ class TenantBoxComponent {
17
17
  constructor() {
18
18
  this.service = inject(TenantBoxService);
19
19
  }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TenantBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
21
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.9", type: TenantBoxComponent, isStandalone: true, selector: "abp-tenant-box", providers: [TenantBoxService], ngImport: i0, template: "@if ((service.currentTenant$ | async) || {}; as currentTenant) {\r\n <hr class=\"my-2\" />\r\n <div>\r\n <div class=\"tenant-switch-box\">\r\n <div class=\"row\">\r\n <div class=\"col pr-1 pb-2\">\r\n <h6 class=\"m0\">\r\n {{ 'AbpUiMultiTenancy::Tenant' | abpLocalization }}\r\n </h6>\r\n <i>{{\r\n currentTenant.name ||\r\n ('AbpUiMultiTenancy::NotSelected' | abpLocalization)\r\n }}</i>\r\n </div>\r\n\r\n <div class=\"col-auto pl-1\">\r\n <a\r\n id=\"abp-tenant-switch-link\"\r\n class=\"btn btn-sm btn-outline-primary float-end pointer\"\r\n (click)=\"service.onSwitch()\"\r\n href=\"javascript:void(0)\"\r\n >\r\n {{ 'AbpUiMultiTenancy::Switch' | abpLocalization }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <hr class=\"my-2\" />\r\n\r\n <abp-modal\r\n [(visible)]=\"service.isModalVisible\"\r\n [busy]=\"service.modalBusy\"\r\n size=\"md\"\r\n >\r\n <ng-template #abpHeader>\r\n <h5>{{ 'AbpUiMultiTenancy::SwitchTenant' | abpLocalization }}</h5>\r\n </ng-template>\r\n <ng-template #abpBody>\r\n <form (ngSubmit)=\"service.save()\">\r\n <div class=\"mt-2\">\r\n <div class=\"form-group\">\r\n <label for=\"name\">{{\r\n 'AbpUiMultiTenancy::Name' | abpLocalization\r\n }}</label>\r\n <input\r\n [(ngModel)]=\"service.name\"\r\n type=\"text\"\r\n id=\"name\"\r\n name=\"tenant\"\r\n class=\"form-control\"\r\n autofocus\r\n />\r\n </div>\r\n <p>{{ 'AbpUiMultiTenancy::SwitchTenantHint' | abpLocalization }}</p>\r\n </div>\r\n </form>\r\n </ng-template>\r\n <ng-template #abpFooter>\r\n <button abpClose type=\"button\" class=\"btn btn-outline-primary\">\r\n {{ 'AbpAccount::Cancel' | abpLocalization }}\r\n </button>\r\n <abp-button\r\n type=\"abp-button\"\r\n iconClass=\"fa fa-check\"\r\n (click)=\"service.save()\"\r\n [disabled]=\"currentTenant?.name === service.name\"\r\n >\r\n {{ 'AbpAccount::Save' | abpLocalization }}\r\n </abp-button>\r\n </ng-template>\r\n </abp-modal>\r\n}\r\n", dependencies: [{ kind: "directive", type: ModalCloseDirective, selector: "[abpClose]" }, { kind: "component", type: ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { kind: "component", type: ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "directive", type: AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]):not([formArray]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: LocalizationPipe, name: "abpLocalization" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: TenantBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: TenantBoxComponent, isStandalone: true, selector: "abp-tenant-box", providers: [TenantBoxService], ngImport: i0, template: "@if ((service.currentTenant$ | async) || {}; as currentTenant) {\r\n <hr class=\"my-2\" />\r\n <div>\r\n <div class=\"tenant-switch-box\">\r\n <div class=\"row\">\r\n <div class=\"col pr-1 pb-2\">\r\n <h6 class=\"m0\">\r\n {{ 'AbpUiMultiTenancy::Tenant' | abpLocalization }}\r\n </h6>\r\n <i>{{\r\n currentTenant.name ||\r\n ('AbpUiMultiTenancy::NotSelected' | abpLocalization)\r\n }}</i>\r\n </div>\r\n\r\n <div class=\"col-auto pl-1\">\r\n <a\r\n id=\"abp-tenant-switch-link\"\r\n class=\"btn btn-sm btn-outline-primary float-end pointer\"\r\n (click)=\"service.onSwitch()\"\r\n href=\"javascript:void(0)\"\r\n >\r\n {{ 'AbpUiMultiTenancy::Switch' | abpLocalization }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <hr class=\"my-2\" />\r\n\r\n <abp-modal\r\n [(visible)]=\"service.isModalVisible\"\r\n [busy]=\"service.modalBusy\"\r\n size=\"md\"\r\n >\r\n <ng-template #abpHeader>\r\n <h5>{{ 'AbpUiMultiTenancy::SwitchTenant' | abpLocalization }}</h5>\r\n </ng-template>\r\n <ng-template #abpBody>\r\n <form (ngSubmit)=\"service.save()\">\r\n <div class=\"mt-2\">\r\n <div class=\"form-group\">\r\n <label for=\"name\">{{\r\n 'AbpUiMultiTenancy::Name' | abpLocalization\r\n }}</label>\r\n <input\r\n [(ngModel)]=\"service.name\"\r\n type=\"text\"\r\n id=\"name\"\r\n name=\"tenant\"\r\n class=\"form-control\"\r\n autofocus\r\n />\r\n </div>\r\n <p>{{ 'AbpUiMultiTenancy::SwitchTenantHint' | abpLocalization }}</p>\r\n </div>\r\n </form>\r\n </ng-template>\r\n <ng-template #abpFooter>\r\n <button abpClose type=\"button\" class=\"btn btn-outline-primary\">\r\n {{ 'AbpAccount::Cancel' | abpLocalization }}\r\n </button>\r\n <abp-button\r\n type=\"abp-button\"\r\n iconClass=\"fa fa-check\"\r\n (click)=\"service.save()\"\r\n [disabled]=\"currentTenant?.name === service.name\"\r\n >\r\n {{ 'AbpAccount::Save' | abpLocalization }}\r\n </abp-button>\r\n </ng-template>\r\n </abp-modal>\r\n}\r\n", dependencies: [{ kind: "directive", type: ModalCloseDirective, selector: "[abpClose]" }, { kind: "component", type: ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { kind: "component", type: ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "directive", type: AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]):not([formArray]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: LocalizationPipe, name: "abpLocalization" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
22
22
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TenantBoxComponent, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: TenantBoxComponent, decorators: [{
24
24
  type: Component,
25
25
  args: [{ selector: 'abp-tenant-box', imports: [
26
26
  ModalCloseDirective,
@@ -37,10 +37,10 @@ class AuthWrapperComponent {
37
37
  constructor() {
38
38
  this.service = inject(AuthWrapperService);
39
39
  }
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AuthWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.9", type: AuthWrapperComponent, isStandalone: true, selector: "abp-auth-wrapper", providers: [AuthWrapperService], ngImport: i0, template: "<div class=\"card mx-auto\" style=\"max-width: 27rem\">\r\n <div class=\"card-body p-2 p-sm-3\">\r\n <div class=\"align-items-start d-flex justify-content-between mb-2\">\r\n <h2 class=\"lpx-main-title lpx-login-title m-0 me-auto\">\r\n {{ service.pageLabel | abpLocalization }}\r\n </h2>\r\n\r\n <div ngbDropdown class=\"dropdown btn-group ms-auto\">\r\n @if (service.defaultLanguage$ | async; as defaultLang) {\r\n <button\r\n ngbDropdownToggle\r\n type=\"button\"\r\n id=\"dropdownMenuLink\"\r\n class=\"btn btn-sm btn-light dropdown-toggle\"\r\n aria-expanded=\"false\"\r\n data-bs-toggle=\"dropdown\"\r\n >\r\n <i class=\"bi bi-translate me-1\"></i>\r\n <span class=\"ml-2\">{{ defaultLang.displayName }}</span>\r\n </button>\r\n }\r\n\r\n <ul ngbDropdownMenu class=\"dropdown-menu dropdown-menu-right\">\r\n <li>\r\n @for (lang of service.dropdownLanguages$ | async; track $index) {\r\n <a\r\n class=\"dropdown-item pointer\"\r\n (click)=\"service.onChangeLang(lang.cultureName)\"\r\n >\r\n {{ lang?.displayName }}\r\n </a>\r\n }\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n @if (\r\n (service.isMultiTenancyEnabled$ | async) && service.isTenantBoxVisible\r\n ) {\r\n <abp-tenant-box\r\n *abpReplaceableTemplate=\"{ componentKey: service.tenantBoxKey }\"\r\n />\r\n }\r\n\r\n @if (service.enableLocalLogin$ | async) {\r\n <div>\r\n <ng-content />\r\n </div>\r\n } @else {\r\n <div class=\"alert alert-warning\">\r\n <strong>{{\r\n 'AbpAccount::InvalidLoginRequest' | abpLocalization\r\n }}</strong>\r\n {{\r\n 'AbpAccount::ThereAreNoLoginSchemesConfiguredForThisClient'\r\n | abpLocalization\r\n }}\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n\r\n<div class=\"copyright text-center my-3\">\r\n <span class=\"copyright-text\">\r\n 2025 \u00A9\r\n <a\r\n href=\"https://leptontheme.com/\"\r\n class=\"text-dark text-decoration-none\"\r\n target=\"_blank\"\r\n >\r\n LeptonX Theme\r\n </a>\r\n by\r\n <a\r\n href=\"https://abp.io/\"\r\n class=\"text-brand text-decoration-none\"\r\n target=\"_blank\"\r\n >\r\n ABP Platform\r\n </a>\r\n </span>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: NgbDropdownModule }, { kind: "directive", type: i1$1.NgbDropdown, selector: "[ngbDropdown]", inputs: ["autoClose", "dropdownClass", "open", "placement", "popperOptions", "container", "display"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { kind: "directive", type: i1$1.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { kind: "directive", type: i1$1.NgbDropdownMenu, selector: "[ngbDropdownMenu]" }, { kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "component", type: TenantBoxComponent, selector: "abp-tenant-box" }, { kind: "pipe", type: LocalizationPipe, name: "abpLocalization" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AuthWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: AuthWrapperComponent, isStandalone: true, selector: "abp-auth-wrapper", providers: [AuthWrapperService], ngImport: i0, template: "<div class=\"card mx-auto\" style=\"max-width: 27rem\">\r\n <div class=\"card-body p-2 p-sm-3\">\r\n <div class=\"align-items-start d-flex justify-content-between mb-2\">\r\n <h2 class=\"lpx-main-title lpx-login-title m-0 me-auto\">\r\n {{ service.pageLabel | abpLocalization }}\r\n </h2>\r\n\r\n <div ngbDropdown class=\"dropdown btn-group ms-auto\">\r\n @if (service.defaultLanguage$ | async; as defaultLang) {\r\n <button\r\n ngbDropdownToggle\r\n type=\"button\"\r\n id=\"dropdownMenuLink\"\r\n class=\"btn btn-sm btn-light dropdown-toggle\"\r\n aria-expanded=\"false\"\r\n data-bs-toggle=\"dropdown\"\r\n >\r\n <i class=\"bi bi-translate me-1\"></i>\r\n <span class=\"ml-2\">{{ defaultLang.displayName }}</span>\r\n </button>\r\n }\r\n\r\n <ul ngbDropdownMenu class=\"dropdown-menu dropdown-menu-right\">\r\n <li>\r\n @for (lang of service.dropdownLanguages$ | async; track $index) {\r\n <a\r\n class=\"dropdown-item pointer\"\r\n (click)=\"service.onChangeLang(lang.cultureName)\"\r\n >\r\n {{ lang?.displayName }}\r\n </a>\r\n }\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n @if (\r\n (service.isMultiTenancyEnabled$ | async) && service.isTenantBoxVisible\r\n ) {\r\n <abp-tenant-box\r\n *abpReplaceableTemplate=\"{ componentKey: service.tenantBoxKey }\"\r\n />\r\n }\r\n\r\n @if (service.enableLocalLogin$ | async) {\r\n <div>\r\n <ng-content />\r\n </div>\r\n } @else {\r\n <div class=\"alert alert-warning\">\r\n <strong>{{\r\n 'AbpAccount::InvalidLoginRequest' | abpLocalization\r\n }}</strong>\r\n {{\r\n 'AbpAccount::ThereAreNoLoginSchemesConfiguredForThisClient'\r\n | abpLocalization\r\n }}\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n\r\n<div class=\"copyright text-center my-3\">\r\n <span class=\"copyright-text\">\r\n 2025 \u00A9\r\n <a\r\n href=\"https://leptontheme.com/\"\r\n class=\"text-dark text-decoration-none\"\r\n target=\"_blank\"\r\n >\r\n LeptonX Theme\r\n </a>\r\n by\r\n <a\r\n href=\"https://abp.io/\"\r\n class=\"text-brand text-decoration-none\"\r\n target=\"_blank\"\r\n >\r\n ABP Platform\r\n </a>\r\n </span>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: NgbDropdownModule }, { kind: "directive", type: i1$1.NgbDropdown, selector: "[ngbDropdown]", inputs: ["autoClose", "dropdownClass", "open", "placement", "popperOptions", "container", "display"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { kind: "directive", type: i1$1.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { kind: "directive", type: i1$1.NgbDropdownMenu, selector: "[ngbDropdownMenu]" }, { kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "component", type: TenantBoxComponent, selector: "abp-tenant-box" }, { kind: "pipe", type: LocalizationPipe, name: "abpLocalization" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
42
42
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AuthWrapperComponent, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AuthWrapperComponent, decorators: [{
44
44
  type: Component,
45
45
  args: [{ selector: 'abp-auth-wrapper', imports: [
46
46
  LocalizationPipe,
@@ -55,10 +55,10 @@ class AccountLayoutComponent {
55
55
  constructor() {
56
56
  this.authWrapperKey = 'Account.AuthWrapper';
57
57
  }
58
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AccountLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
59
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.9", type: AccountLayoutComponent, isStandalone: true, selector: "abp-account-layout", ngImport: i0, template: "<lpx-auth-layout>\r\n <abp-page-alert-container></abp-page-alert-container>\r\n <abp-auth-wrapper\r\n *abpReplaceableTemplate=\"{\r\n componentKey: authWrapperKey\r\n }\"\r\n >\r\n <router-outlet></router-outlet>\r\n </abp-auth-wrapper>\r\n</lpx-auth-layout>\r\n", dependencies: [{ kind: "component", type: AuthLayoutComponent, selector: "lpx-auth-layout" }, { kind: "component", type: PageAlertContainerComponent, selector: "abp-page-alert-container" }, { kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "component", type: AuthWrapperComponent, selector: "abp-auth-wrapper" }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] }); }
58
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AccountLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
59
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.6", type: AccountLayoutComponent, isStandalone: true, selector: "abp-account-layout", ngImport: i0, template: "<lpx-auth-layout>\r\n <abp-page-alert-container></abp-page-alert-container>\r\n <abp-auth-wrapper\r\n *abpReplaceableTemplate=\"{\r\n componentKey: authWrapperKey\r\n }\"\r\n >\r\n <router-outlet></router-outlet>\r\n </abp-auth-wrapper>\r\n</lpx-auth-layout>\r\n", dependencies: [{ kind: "component", type: AuthLayoutComponent, selector: "lpx-auth-layout" }, { kind: "component", type: PageAlertContainerComponent, selector: "abp-page-alert-container" }, { kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "component", type: AuthWrapperComponent, selector: "abp-auth-wrapper" }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] }); }
60
60
  }
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AccountLayoutComponent, decorators: [{
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AccountLayoutComponent, decorators: [{
62
62
  type: Component,
63
63
  args: [{ selector: 'abp-account-layout', imports: [
64
64
  AuthLayoutComponent,
@@ -79,15 +79,15 @@ class AccountLayoutModule {
79
79
  providers: [],
80
80
  };
81
81
  }
82
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AccountLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
83
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: AccountLayoutModule, imports: [LpxAuthLayoutModule,
82
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AccountLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
83
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.6", ngImport: i0, type: AccountLayoutModule, imports: [LpxAuthLayoutModule,
84
84
  LpxContextMenuModule,
85
85
  PageAlertContainerModule,
86
86
  CoreModule,
87
87
  ThemeSharedModule,
88
88
  AuthWrapperComponent,
89
89
  AccountLayoutComponent] }); }
90
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AccountLayoutModule, imports: [LpxAuthLayoutModule,
90
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AccountLayoutModule, imports: [LpxAuthLayoutModule,
91
91
  LpxContextMenuModule,
92
92
  PageAlertContainerModule,
93
93
  CoreModule,
@@ -95,7 +95,7 @@ class AccountLayoutModule {
95
95
  AuthWrapperComponent,
96
96
  AccountLayoutComponent] }); }
97
97
  }
98
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AccountLayoutModule, decorators: [{
98
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AccountLayoutModule, decorators: [{
99
99
  type: NgModule,
100
100
  args: [{
101
101
  imports: [
@@ -11,10 +11,10 @@ import { LPX_TRANSLATE_KEY_MAP_TOKEN, AbpAuthService, LPX_TRANSLATE_KEYS_PROVIDE
11
11
 
12
12
  class EmptyLayoutComponent {
13
13
  static { this.type = "empty" /* eLayoutType.empty */; }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: EmptyLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.9", type: EmptyLayoutComponent, isStandalone: true, selector: "abp-layout-empty", ngImport: i0, template: ` <router-outlet></router-outlet> `, isInline: true, dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] }); }
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: EmptyLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.6", type: EmptyLayoutComponent, isStandalone: true, selector: "abp-layout-empty", ngImport: i0, template: ` <router-outlet></router-outlet> `, isInline: true, dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] }); }
16
16
  }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: EmptyLayoutComponent, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: EmptyLayoutComponent, decorators: [{
18
18
  type: Component,
19
19
  args: [{
20
20
  selector: 'abp-layout-empty',
@@ -39,10 +39,10 @@ class SideMenuApplicationLayoutComponent {
39
39
  this.logoKey = "Theme.LogoComponent" /* eThemeLeptonXComponents.Logo */;
40
40
  this.currentUserImageKey = "Theme.CurrentUserImageComponent" /* eThemeLeptonXComponents.CurrentUserImage */;
41
41
  }
42
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: SideMenuApplicationLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
43
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.9", type: SideMenuApplicationLayoutComponent, isStandalone: true, selector: "abp-application-layout", ngImport: i0, template: "<lpx-layout>\r\n <ng-template lpx-navbar-panel>\r\n <lpx-navbar\r\n *abpReplaceableTemplate=\"{\r\n componentKey: navbarKey,\r\n }\"\r\n >\r\n <ng-container *abpIfReplaceableTemplateExists=\"logoKey\">\r\n <ng-template lpx-logo-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: logoKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template lpx-navbar-routes let-items let-groupItems=\"groupItems\">\r\n <lpx-navbar-routes\r\n *abpReplaceableTemplate=\"{\r\n componentKey: routesKey,\r\n inputs: {\r\n navbarItems: items,\r\n groupItems,\r\n },\r\n }\"\r\n [navbarItems]=\"items\"\r\n [groupedItems]=\"groupItems\"\r\n >\r\n </lpx-navbar-routes>\r\n </ng-template>\r\n </lpx-navbar>\r\n </ng-template>\r\n <ng-template lpx-content>\r\n <abp-page-alert-container\r\n *abpReplaceableTemplate=\"{ componentKey: pageAlertContainerKey }\"\r\n ></abp-page-alert-container>\r\n\r\n <router-outlet></router-outlet>\r\n </ng-template>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"breadcrumbKey\">\r\n <ng-template lpx-breadcrumb-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: breadcrumbKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"toolbarKey\">\r\n <ng-template lpx-toolbar-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: toolbarKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"logoKey\">\r\n <ng-template lpx-logo-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: logoKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"navItemsKey\">\r\n <ng-template lpx-navitem-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: navItemsKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"footerKey\">\r\n <ng-template lpx-footer-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: footerKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"currentUserImageKey\">\r\n <ng-template lpx-current-user-image-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{ componentKey: currentUserImageKey }\"\r\n >\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"mobileNavbarKey\">\r\n <ng-template lpx-mobile-navbar-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: mobileNavbarKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"mobileNavbarSettingsKey\">\r\n <ng-template lpx-mobile-navbar-settings-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{ componentKey: mobileNavbarSettingsKey }\"\r\n >\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"mobileNavbarProfileKey\">\r\n <ng-template lpx-mobile-navbar-profile-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{ componentKey: mobileNavbarProfileKey }\"\r\n >\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"settingsPanelKey\">\r\n <ng-template lpx-settings-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{\r\n componentKey: settingsPanelKey,\r\n }\"\r\n ></ng-container>\r\n </ng-template>\r\n </ng-container>\r\n</lpx-layout>\r\n", dependencies: [{ kind: "component", type: SideMenuLayoutComponent, selector: "lpx-layout" }, { kind: "directive", type: NavbarPanelDirective, selector: "ng-template[lpx-navbar-panel]" }, { kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "component", type: NavbarComponent, selector: "lpx-navbar" }, { kind: "directive", type: IfReplaceableTemplateExistsDirective, selector: "[abpIfReplaceableTemplateExists]", inputs: ["abpIfReplaceableTemplateExists"] }, { kind: "directive", type: LogoPanelDirective, selector: "ng-template[lpx-logo-panel]" }, { kind: "directive", type: NavbarRoutesDirective, selector: "[lpx-navbar-routes],[lpxNavbarRoutes]", exportAs: ["lpxNavbarRoutes"] }, { kind: "component", type: NavbarRoutesComponent, selector: "lpx-navbar-routes", inputs: ["navbarItems", "groupedItems", "routerItem"], outputs: ["routeClick"] }, { kind: "directive", type: ContentPanelDirective, selector: "ng-template[lpx-content]" }, { kind: "component", type: PageAlertContainerComponent, selector: "abp-page-alert-container" }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: BreadcrumbPanelDirective, selector: "ng-template[lpx-breadcrumb-panel]" }, { kind: "directive", type: ToolbarPanelDirective, selector: "ng-template[lpx-toolbar-panel]" }, { kind: "directive", type: NavitemPanelDirective, selector: "ng-template[lpx-navitem-panel]" }, { kind: "directive", type: FooterPanelDirective, selector: "ng-template[lpx-footer-panel]" }, { kind: "directive", type: CurrentUserImagePanelDirective, selector: "ng-template[lpx-current-user-image-panel]" }, { kind: "directive", type: MobileNavbarPanelDirective, selector: "ng-template[lpx-mobile-navbar-panel]" }, { kind: "directive", type: MobileNavbarSettingsPanelDirective, selector: "ng-template[lpx-mobile-navbar-settings-panel]" }, { kind: "directive", type: MobileNavbarProfilePanelDirective, selector: "ng-template[lpx-mobile-navbar-profile-panel]" }, { kind: "directive", type: SettingsPanelDirective, selector: "ng-template[lpx-settings-panel]" }], encapsulation: i0.ViewEncapsulation.None }); }
42
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: SideMenuApplicationLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
43
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.6", type: SideMenuApplicationLayoutComponent, isStandalone: true, selector: "abp-application-layout", ngImport: i0, template: "<lpx-layout>\r\n <ng-template lpx-navbar-panel>\r\n <lpx-navbar\r\n *abpReplaceableTemplate=\"{\r\n componentKey: navbarKey,\r\n }\"\r\n >\r\n <ng-container *abpIfReplaceableTemplateExists=\"logoKey\">\r\n <ng-template lpx-logo-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: logoKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template lpx-navbar-routes let-items let-groupItems=\"groupItems\">\r\n <lpx-navbar-routes\r\n *abpReplaceableTemplate=\"{\r\n componentKey: routesKey,\r\n inputs: {\r\n navbarItems: items,\r\n groupItems,\r\n },\r\n }\"\r\n [navbarItems]=\"items\"\r\n [groupedItems]=\"groupItems\"\r\n >\r\n </lpx-navbar-routes>\r\n </ng-template>\r\n </lpx-navbar>\r\n </ng-template>\r\n <ng-template lpx-content>\r\n <abp-page-alert-container\r\n *abpReplaceableTemplate=\"{ componentKey: pageAlertContainerKey }\"\r\n ></abp-page-alert-container>\r\n\r\n <router-outlet></router-outlet>\r\n </ng-template>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"breadcrumbKey\">\r\n <ng-template lpx-breadcrumb-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: breadcrumbKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"toolbarKey\">\r\n <ng-template lpx-toolbar-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: toolbarKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"logoKey\">\r\n <ng-template lpx-logo-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: logoKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"navItemsKey\">\r\n <ng-template lpx-navitem-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: navItemsKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"footerKey\">\r\n <ng-template lpx-footer-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: footerKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"currentUserImageKey\">\r\n <ng-template lpx-current-user-image-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{ componentKey: currentUserImageKey }\"\r\n >\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"mobileNavbarKey\">\r\n <ng-template lpx-mobile-navbar-panel>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: mobileNavbarKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"mobileNavbarSettingsKey\">\r\n <ng-template lpx-mobile-navbar-settings-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{ componentKey: mobileNavbarSettingsKey }\"\r\n >\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"mobileNavbarProfileKey\">\r\n <ng-template lpx-mobile-navbar-profile-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{ componentKey: mobileNavbarProfileKey }\"\r\n >\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"settingsPanelKey\">\r\n <ng-template lpx-settings-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{\r\n componentKey: settingsPanelKey,\r\n }\"\r\n ></ng-container>\r\n </ng-template>\r\n </ng-container>\r\n</lpx-layout>\r\n", dependencies: [{ kind: "component", type: SideMenuLayoutComponent, selector: "lpx-layout" }, { kind: "directive", type: NavbarPanelDirective, selector: "ng-template[lpx-navbar-panel]" }, { kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "component", type: NavbarComponent, selector: "lpx-navbar" }, { kind: "directive", type: IfReplaceableTemplateExistsDirective, selector: "[abpIfReplaceableTemplateExists]", inputs: ["abpIfReplaceableTemplateExists"] }, { kind: "directive", type: LogoPanelDirective, selector: "ng-template[lpx-logo-panel]" }, { kind: "directive", type: NavbarRoutesDirective, selector: "[lpx-navbar-routes],[lpxNavbarRoutes]", exportAs: ["lpxNavbarRoutes"] }, { kind: "component", type: NavbarRoutesComponent, selector: "lpx-navbar-routes", inputs: ["navbarItems", "groupedItems", "routerItem"], outputs: ["routeClick"] }, { kind: "directive", type: ContentPanelDirective, selector: "ng-template[lpx-content]" }, { kind: "component", type: PageAlertContainerComponent, selector: "abp-page-alert-container" }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: BreadcrumbPanelDirective, selector: "ng-template[lpx-breadcrumb-panel]" }, { kind: "directive", type: ToolbarPanelDirective, selector: "ng-template[lpx-toolbar-panel]" }, { kind: "directive", type: NavitemPanelDirective, selector: "ng-template[lpx-navitem-panel]" }, { kind: "directive", type: FooterPanelDirective, selector: "ng-template[lpx-footer-panel]" }, { kind: "directive", type: CurrentUserImagePanelDirective, selector: "ng-template[lpx-current-user-image-panel]" }, { kind: "directive", type: MobileNavbarPanelDirective, selector: "ng-template[lpx-mobile-navbar-panel]" }, { kind: "directive", type: MobileNavbarSettingsPanelDirective, selector: "ng-template[lpx-mobile-navbar-settings-panel]" }, { kind: "directive", type: MobileNavbarProfilePanelDirective, selector: "ng-template[lpx-mobile-navbar-profile-panel]" }, { kind: "directive", type: SettingsPanelDirective, selector: "ng-template[lpx-settings-panel]" }], encapsulation: i0.ViewEncapsulation.None }); }
44
44
  }
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: SideMenuApplicationLayoutComponent, decorators: [{
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: SideMenuApplicationLayoutComponent, decorators: [{
46
46
  type: Component,
47
47
  args: [{ selector: 'abp-application-layout', encapsulation: ViewEncapsulation.None, imports: [
48
48
  SideMenuLayoutComponent,
@@ -122,8 +122,8 @@ class SideMenuLayoutModule {
122
122
  providers: [provideSideMenuLayout()],
123
123
  };
124
124
  }
125
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: SideMenuLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
126
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: SideMenuLayoutModule, imports: [LeptonXAbpCoreModule,
125
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: SideMenuLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
126
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.6", ngImport: i0, type: SideMenuLayoutModule, imports: [LeptonXAbpCoreModule,
127
127
  CommonModule,
128
128
  CoreModule,
129
129
  LpxSideMenuLayoutModule,
@@ -131,7 +131,7 @@ class SideMenuLayoutModule {
131
131
  PanelsModule,
132
132
  LpxFooterModule,
133
133
  SideMenuApplicationLayoutComponent], exports: [SideMenuApplicationLayoutComponent] }); }
134
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: SideMenuLayoutModule, imports: [LeptonXAbpCoreModule,
134
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: SideMenuLayoutModule, imports: [LeptonXAbpCoreModule,
135
135
  CommonModule,
136
136
  CoreModule,
137
137
  LpxSideMenuLayoutModule,
@@ -140,7 +140,7 @@ class SideMenuLayoutModule {
140
140
  LpxFooterModule,
141
141
  SideMenuApplicationLayoutComponent] }); }
142
142
  }
143
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: SideMenuLayoutModule, decorators: [{
143
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: SideMenuLayoutModule, decorators: [{
144
144
  type: NgModule,
145
145
  args: [{
146
146
  imports: [
@@ -172,10 +172,10 @@ class TopMenuApplicationLayoutComponent {
172
172
  this.settingsKey = "Theme.SettingsComponent" /* eThemeLeptonXComponents.Settings */;
173
173
  this.logoKey = "Theme.LogoComponent" /* eThemeLeptonXComponents.Logo */;
174
174
  }
175
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TopMenuApplicationLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
176
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.9", type: TopMenuApplicationLayoutComponent, isStandalone: true, selector: "abp-top-menu-application-layout", ngImport: i0, template: "<lpx-layout>\r\n <ng-template lpx-content>\r\n <abp-page-alert-container\r\n *abpReplaceableTemplate=\"{ componentKey: pageAlertContainerKey }\"\r\n ></abp-page-alert-container>\r\n\r\n <router-outlet></router-outlet>\r\n </ng-template>\r\n\r\n <ng-template\r\n lpx-breadcrumb-panel\r\n *abpIfReplaceableTemplateExists=\"breadcrumbKey\"\r\n >\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: breadcrumbKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template lpx-navbar-panel *abpIfReplaceableTemplateExists=\"navbarKey\">\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: navbarKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template\r\n lpx-mobile-navbar-panel\r\n *abpIfReplaceableTemplateExists=\"mobileNavbarKey\"\r\n >\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: mobileNavbarKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"mobileNavbarSettingsKey\">\r\n <ng-template lpx-mobile-navbar-settings-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{ componentKey: mobileNavbarSettingsKey }\"\r\n >\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"mobileNavbarProfileKey\">\r\n <ng-template lpx-mobile-navbar-profile-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{ componentKey: mobileNavbarProfileKey }\"\r\n >\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template lpx-footer-panel *abpIfReplaceableTemplateExists=\"footerKey\">\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: footerKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template lpx-toolbar-panel *abpIfReplaceableTemplateExists=\"toolbarKey\">\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: toolbarKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template lpx-logo-panel *abpIfReplaceableTemplateExists=\"logoKey\">\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: logoKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template\r\n lpx-top-navbar-panel\r\n *abpIfReplaceableTemplateExists=\"topNavbarKey\"\r\n >\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: topNavbarKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template lpx-settings-panel *abpIfReplaceableTemplateExists=\"settingsKey\">\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: settingsKey }\">\r\n </ng-container>\r\n </ng-template>\r\n</lpx-layout>\r\n", dependencies: [{ kind: "component", type: TopMenuLayoutComponent, selector: "lpx-layout" }, { kind: "directive", type: ContentPanelDirective, selector: "ng-template[lpx-content]" }, { kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "component", type: PageAlertContainerComponent, selector: "abp-page-alert-container" }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: IfReplaceableTemplateExistsDirective, selector: "[abpIfReplaceableTemplateExists]", inputs: ["abpIfReplaceableTemplateExists"] }, { kind: "directive", type: BreadcrumbPanelDirective, selector: "ng-template[lpx-breadcrumb-panel]" }, { kind: "directive", type: NavbarPanelDirective, selector: "ng-template[lpx-navbar-panel]" }, { kind: "directive", type: MobileNavbarPanelDirective, selector: "ng-template[lpx-mobile-navbar-panel]" }, { kind: "directive", type: MobileNavbarSettingsPanelDirective, selector: "ng-template[lpx-mobile-navbar-settings-panel]" }, { kind: "directive", type: MobileNavbarProfilePanelDirective, selector: "ng-template[lpx-mobile-navbar-profile-panel]" }, { kind: "directive", type: FooterPanelDirective, selector: "ng-template[lpx-footer-panel]" }, { kind: "directive", type: ToolbarPanelDirective, selector: "ng-template[lpx-toolbar-panel]" }, { kind: "directive", type: LogoPanelDirective, selector: "ng-template[lpx-logo-panel]" }, { kind: "directive", type: TopNavbarPanelDirective, selector: "ng-template[lpx-top-navbar-panel]" }, { kind: "directive", type: SettingsPanelDirective, selector: "ng-template[lpx-settings-panel]" }] }); }
175
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: TopMenuApplicationLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
176
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.6", type: TopMenuApplicationLayoutComponent, isStandalone: true, selector: "abp-top-menu-application-layout", ngImport: i0, template: "<lpx-layout>\r\n <ng-template lpx-content>\r\n <abp-page-alert-container\r\n *abpReplaceableTemplate=\"{ componentKey: pageAlertContainerKey }\"\r\n ></abp-page-alert-container>\r\n\r\n <router-outlet></router-outlet>\r\n </ng-template>\r\n\r\n <ng-template\r\n lpx-breadcrumb-panel\r\n *abpIfReplaceableTemplateExists=\"breadcrumbKey\"\r\n >\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: breadcrumbKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template lpx-navbar-panel *abpIfReplaceableTemplateExists=\"navbarKey\">\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: navbarKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template\r\n lpx-mobile-navbar-panel\r\n *abpIfReplaceableTemplateExists=\"mobileNavbarKey\"\r\n >\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: mobileNavbarKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"mobileNavbarSettingsKey\">\r\n <ng-template lpx-mobile-navbar-settings-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{ componentKey: mobileNavbarSettingsKey }\"\r\n >\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"mobileNavbarProfileKey\">\r\n <ng-template lpx-mobile-navbar-profile-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{ componentKey: mobileNavbarProfileKey }\"\r\n >\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template lpx-footer-panel *abpIfReplaceableTemplateExists=\"footerKey\">\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: footerKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template lpx-toolbar-panel *abpIfReplaceableTemplateExists=\"toolbarKey\">\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: toolbarKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template lpx-logo-panel *abpIfReplaceableTemplateExists=\"logoKey\">\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: logoKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template\r\n lpx-top-navbar-panel\r\n *abpIfReplaceableTemplateExists=\"topNavbarKey\"\r\n >\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: topNavbarKey }\">\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template lpx-settings-panel *abpIfReplaceableTemplateExists=\"settingsKey\">\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: settingsKey }\">\r\n </ng-container>\r\n </ng-template>\r\n</lpx-layout>\r\n", dependencies: [{ kind: "component", type: TopMenuLayoutComponent, selector: "lpx-layout" }, { kind: "directive", type: ContentPanelDirective, selector: "ng-template[lpx-content]" }, { kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "component", type: PageAlertContainerComponent, selector: "abp-page-alert-container" }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: IfReplaceableTemplateExistsDirective, selector: "[abpIfReplaceableTemplateExists]", inputs: ["abpIfReplaceableTemplateExists"] }, { kind: "directive", type: BreadcrumbPanelDirective, selector: "ng-template[lpx-breadcrumb-panel]" }, { kind: "directive", type: NavbarPanelDirective, selector: "ng-template[lpx-navbar-panel]" }, { kind: "directive", type: MobileNavbarPanelDirective, selector: "ng-template[lpx-mobile-navbar-panel]" }, { kind: "directive", type: MobileNavbarSettingsPanelDirective, selector: "ng-template[lpx-mobile-navbar-settings-panel]" }, { kind: "directive", type: MobileNavbarProfilePanelDirective, selector: "ng-template[lpx-mobile-navbar-profile-panel]" }, { kind: "directive", type: FooterPanelDirective, selector: "ng-template[lpx-footer-panel]" }, { kind: "directive", type: ToolbarPanelDirective, selector: "ng-template[lpx-toolbar-panel]" }, { kind: "directive", type: LogoPanelDirective, selector: "ng-template[lpx-logo-panel]" }, { kind: "directive", type: TopNavbarPanelDirective, selector: "ng-template[lpx-top-navbar-panel]" }, { kind: "directive", type: SettingsPanelDirective, selector: "ng-template[lpx-settings-panel]" }] }); }
177
177
  }
178
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TopMenuApplicationLayoutComponent, decorators: [{
178
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: TopMenuApplicationLayoutComponent, decorators: [{
179
179
  type: Component,
180
180
  args: [{ selector: 'abp-top-menu-application-layout', imports: [
181
181
  TopMenuLayoutComponent,
@@ -250,8 +250,8 @@ class TopMenuLayoutModule {
250
250
  providers: [provideTopMenuLayout()],
251
251
  };
252
252
  }
253
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TopMenuLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
254
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: TopMenuLayoutModule, imports: [CommonModule,
253
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: TopMenuLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
254
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.6", ngImport: i0, type: TopMenuLayoutModule, imports: [CommonModule,
255
255
  LpxTopMenuLayoutModule,
256
256
  LeptonXAbpCoreModule,
257
257
  LpxBreadcrumbModule,
@@ -261,7 +261,7 @@ class TopMenuLayoutModule {
261
261
  PageAlertContainerModule,
262
262
  RouterOutlet,
263
263
  TopMenuApplicationLayoutComponent] }); }
264
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TopMenuLayoutModule, imports: [CommonModule,
264
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: TopMenuLayoutModule, imports: [CommonModule,
265
265
  LpxTopMenuLayoutModule,
266
266
  LeptonXAbpCoreModule,
267
267
  LpxBreadcrumbModule,
@@ -271,7 +271,7 @@ class TopMenuLayoutModule {
271
271
  PageAlertContainerModule,
272
272
  TopMenuApplicationLayoutComponent] }); }
273
273
  }
274
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TopMenuLayoutModule, decorators: [{
274
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: TopMenuLayoutModule, decorators: [{
275
275
  type: NgModule,
276
276
  args: [{
277
277
  imports: [
@@ -1,13 +1,13 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { ChangeDetectionStrategy, Component, inject, Injectable, InjectionToken, provideAppInitializer, PLATFORM_ID, makeEnvironmentProviders, NgModule, signal, computed } from '@angular/core';
3
3
  import { ValidationErrorComponent, VALIDATION_ERROR_TEMPLATE, VALIDATION_INVALID_CLASSES, VALIDATION_TARGET_SELECTOR, NgxValidateCoreModule } from '@ngx-validate/core';
4
- import { LocalizationPipe, SessionStateService, ConfigStateService, NAVIGATE_TO_MANAGE_PROFILE, getLocaleDirection, LocalizationService, AuthService, ReplaceableComponentsService, EnvironmentService, CoreModule, RouterEvents, ReplaceableTemplateDirective } from '@abp/ng.core';
4
+ import { LocalizationPipe, SessionStateService, ConfigStateService, NAVIGATE_TO_MANAGE_PROFILE, getLocaleDirection, LocalizationService, AuthService, ReplaceableComponentsService, EnvironmentService, TenantUserSharingStrategy, CoreModule, RouterEvents, ReplaceableTemplateDirective } from '@abp/ng.core';
5
5
  import { isPlatformServer, CommonModule, Location, isPlatformBrowser } from '@angular/common';
6
6
  import { AbpNavbarService, AbpToolbarService, provideLeptonXAbpCore } from '@volo/abp.ng.lepton-x.core';
7
7
  import { filter, switchMap, map } from 'rxjs/operators';
8
8
  import { combineLatest, of, map as map$1 } from 'rxjs';
9
9
  import { LanguageService, UserProfileService, flatArrayDeepToObject, LPX_TRANSLATE_SERVICE_TOKEN, LanguageTranslateKeys } from '@volo/ngx-lepton-x.core';
10
- import { PROFILE_PICTURE, NAVIGATE_TO_MY_SECURITY_LOGS, OPEN_MY_LINK_USERS_MODAL, NAVIGATE_TO_MY_SESSIONS, NAVIGATE_TO_MY_EXTERNAL_LOGINS, OPEN_AUTHORITY_DELEGATION_MODAL, PROFILE_PICTURE_PROVIDERS } from '@volo/abp.commercial.ng.ui/config';
10
+ import { PROFILE_PICTURE, NAVIGATE_TO_MY_SECURITY_LOGS, OPEN_MY_LINK_USERS_MODAL, NAVIGATE_TO_MY_SESSIONS, NAVIGATE_TO_MY_EXTERNAL_LOGINS, OPEN_AUTHORITY_DELEGATION_MODAL, OPEN_SWITCH_TENANT_MODAL, PROFILE_PICTURE_PROVIDERS } from '@volo/abp.commercial.ng.ui/config';
11
11
  import { UserMenuService, CreateErrorComponentService, HTTP_ERROR_STATUS, HTTP_ERROR_DETAIL } from '@abp/ng.theme.shared';
12
12
  import { Router, provideRouter, ActivatedRoute } from '@angular/router';
13
13
  import { ThemeTranslateKeys, provideLpx, withLpxOptions } from '@volosoft/ngx-lepton-x';
@@ -35,8 +35,8 @@ class AbpValidationErrorComponent extends ValidationErrorComponent {
35
35
  return error;
36
36
  });
37
37
  }
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpValidationErrorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
39
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.9", type: AbpValidationErrorComponent, isStandalone: true, selector: "abp-validation-error", usesInheritance: true, ngImport: i0, template: `
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpValidationErrorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
39
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: AbpValidationErrorComponent, isStandalone: true, selector: "abp-validation-error", usesInheritance: true, ngImport: i0, template: `
40
40
  <span
41
41
  class="text-danger"
42
42
  data-valmsg-for="Role.Name"
@@ -50,7 +50,7 @@ class AbpValidationErrorComponent extends ValidationErrorComponent {
50
50
  </span>
51
51
  `, isInline: true, styles: [":host-context{order:3}\n"], dependencies: [{ kind: "pipe", type: LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
52
52
  }
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpValidationErrorComponent, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpValidationErrorComponent, decorators: [{
54
54
  type: Component,
55
55
  args: [{ selector: 'abp-validation-error', template: `
56
56
  <span
@@ -159,10 +159,10 @@ class AbpSettingsService {
159
159
  this.sessionService.setLanguage(lang?.cultureName || '');
160
160
  });
161
161
  }
162
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpSettingsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
163
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpSettingsService, providedIn: 'root' }); }
162
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpSettingsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
163
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpSettingsService, providedIn: 'root' }); }
164
164
  }
165
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpSettingsService, decorators: [{
165
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpSettingsService, decorators: [{
166
166
  type: Injectable,
167
167
  args: [{ providedIn: 'root' }]
168
168
  }] });
@@ -185,10 +185,10 @@ class AbpCreateErrorComponentService extends CreateErrorComponentService {
185
185
  const queryParams = { status: instance.status };
186
186
  this.router.navigate([this.httpErrorPath], { queryParams });
187
187
  }
188
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpCreateErrorComponentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
189
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpCreateErrorComponentService }); }
188
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpCreateErrorComponentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
189
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpCreateErrorComponentService }); }
190
190
  }
191
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpCreateErrorComponentService, decorators: [{
191
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpCreateErrorComponentService, decorators: [{
192
192
  type: Injectable
193
193
  }], ctorParameters: () => [] });
194
194
 
@@ -221,10 +221,10 @@ class AbpTranslateService {
221
221
  const keys = flatArrayDeepToObject(this.translateKeys);
222
222
  return keys[key] ? keys[key] : key.includes('::') ? key : undefined;
223
223
  }
224
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpTranslateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
225
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpTranslateService }); }
224
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpTranslateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
225
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpTranslateService }); }
226
226
  }
227
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpTranslateService, decorators: [{
227
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpTranslateService, decorators: [{
228
228
  type: Injectable
229
229
  }] });
230
230
 
@@ -237,10 +237,10 @@ class AbpAuthService {
237
237
  navigateToLogin() {
238
238
  this.authService.navigateToLogin();
239
239
  }
240
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpAuthService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
241
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpAuthService }); }
240
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpAuthService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
241
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpAuthService }); }
242
242
  }
243
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpAuthService, decorators: [{
243
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpAuthService, decorators: [{
244
244
  type: Injectable
245
245
  }] });
246
246
 
@@ -330,6 +330,7 @@ function httpErrorProvider(options) {
330
330
  var eUserMenuItems;
331
331
  (function (eUserMenuItems) {
332
332
  eUserMenuItems["Sessions"] = "Sessions";
333
+ eUserMenuItems["SwitchTenant"] = "SwitchTenant";
333
334
  eUserMenuItems["ExternalLogins"] = "ExternalLogins";
334
335
  eUserMenuItems["LinkedAccounts"] = "LinkedAccounts";
335
336
  eUserMenuItems["MyAccount"] = "MyAccount";
@@ -359,6 +360,9 @@ function configureUserMenu() {
359
360
  const openAuthorityDelegationModal = inject(OPEN_AUTHORITY_DELEGATION_MODAL, {
360
361
  optional: true,
361
362
  });
363
+ const openSwitchTenantModal = inject(OPEN_SWITCH_TENANT_MODAL, {
364
+ optional: true,
365
+ });
362
366
  userMenu.addItems([
363
367
  {
364
368
  id: eUserMenuItems.Sessions,
@@ -370,8 +374,23 @@ function configureUserMenu() {
370
374
  action: () => navigateToMySessions(),
371
375
  },
372
376
  {
373
- id: eUserMenuItems.ExternalLogins,
377
+ id: eUserMenuItems.SwitchTenant,
374
378
  order: 101,
379
+ textTemplate: {
380
+ icon: 'bi bi-arrow-left-right',
381
+ text: 'AbpAccount::SwitchTenant',
382
+ },
383
+ visible: () => {
384
+ if (!openSwitchTenantModal)
385
+ return false;
386
+ return configState.getOne$('multiTenancy').pipe(map$1(multiTenancy => multiTenancy?.isEnabled &&
387
+ multiTenancy?.userSharingStrategy === TenantUserSharingStrategy.Shared));
388
+ },
389
+ action: () => openSwitchTenantModal?.(),
390
+ },
391
+ {
392
+ id: eUserMenuItems.ExternalLogins,
393
+ order: 102,
375
394
  textTemplate: {
376
395
  icon: 'bi bi-person-circle',
377
396
  text: 'AbpAccount::ExternalLogins',
@@ -385,7 +404,7 @@ function configureUserMenu() {
385
404
  },
386
405
  {
387
406
  id: eUserMenuItems.LinkedAccounts,
388
- order: 102,
407
+ order: 103,
389
408
  textTemplate: {
390
409
  icon: 'bi bi-link',
391
410
  text: 'AbpAccount::LinkedAccounts',
@@ -395,7 +414,7 @@ function configureUserMenu() {
395
414
  },
396
415
  {
397
416
  id: eUserMenuItems.AuthorityDelegation,
398
- order: 103,
417
+ order: 104,
399
418
  textTemplate: {
400
419
  text: 'AbpAccount::AuthorityDelegation',
401
420
  icon: 'fa fa-users',
@@ -409,7 +428,7 @@ function configureUserMenu() {
409
428
  },
410
429
  {
411
430
  id: eUserMenuItems.MyAccount,
412
- order: 104,
431
+ order: 105,
413
432
  textTemplate: {
414
433
  icon: 'bi bi-sliders',
415
434
  text: 'AbpAccount::MyAccount',
@@ -418,7 +437,7 @@ function configureUserMenu() {
418
437
  },
419
438
  {
420
439
  id: eUserMenuItems.SecurityLogs,
421
- order: 105,
440
+ order: 106,
422
441
  textTemplate: {
423
442
  icon: 'bi bi-list-ul',
424
443
  text: 'AbpAccount::MySecurityLogs',
@@ -427,7 +446,7 @@ function configureUserMenu() {
427
446
  },
428
447
  {
429
448
  id: eUserMenuItems.Logout,
430
- order: 107, // The order has taken to 107 delibaretely since we moved the back to impersonator item to the end of the menu
449
+ order: 108, // The order has taken to 108 deliberately since we moved the back to impersonator item to the end of the menu
431
450
  textTemplate: {
432
451
  icon: 'bi bi-box-arrow-right',
433
452
  text: 'AbpUi::Logout',
@@ -511,16 +530,16 @@ class AbpValidationErrorModule {
511
530
  providers: [provideAbpValidationError()],
512
531
  };
513
532
  }
514
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpValidationErrorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
515
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: AbpValidationErrorModule, imports: [CommonModule,
533
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpValidationErrorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
534
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.6", ngImport: i0, type: AbpValidationErrorModule, imports: [CommonModule,
516
535
  CoreModule,
517
536
  NgxValidateCoreModule,
518
537
  AbpValidationErrorComponent], exports: [AbpValidationErrorComponent, NgxValidateCoreModule] }); }
519
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpValidationErrorModule, imports: [CommonModule,
538
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpValidationErrorModule, imports: [CommonModule,
520
539
  CoreModule,
521
540
  NgxValidateCoreModule, NgxValidateCoreModule] }); }
522
541
  }
523
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: AbpValidationErrorModule, decorators: [{
542
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: AbpValidationErrorModule, decorators: [{
524
543
  type: NgModule,
525
544
  args: [{
526
545
  imports: [
@@ -541,11 +560,11 @@ class HttpErrorComponent {
541
560
  this.routerEvents = inject(RouterEvents);
542
561
  this.platformId = inject(PLATFORM_ID);
543
562
  this.errorComponentKey = "Theme.HttpErrorComponent" /* eThemeLeptonXComponents.HttpError */;
544
- this.status = signal(0, ...(ngDevMode ? [{ debugName: "status" }] : []));
563
+ this.status = signal(0, ...(ngDevMode ? [{ debugName: "status" }] : /* istanbul ignore next */ []));
545
564
  this.lastNavigation = this.routerEvents.previousNavigation;
546
565
  this.currentNavigation = this.routerEvents.currentNavigation;
547
- this.statusText = computed(() => HTTP_ERROR_STATUS[this.status()] ?? '', ...(ngDevMode ? [{ debugName: "statusText" }] : []));
548
- this.detail = computed(() => HTTP_ERROR_DETAIL[this.status()] ?? '', ...(ngDevMode ? [{ debugName: "detail" }] : []));
566
+ this.statusText = computed(() => HTTP_ERROR_STATUS[this.status()] ?? '', ...(ngDevMode ? [{ debugName: "statusText" }] : /* istanbul ignore next */ []));
567
+ this.detail = computed(() => HTTP_ERROR_DETAIL[this.status()] ?? '', ...(ngDevMode ? [{ debugName: "detail" }] : /* istanbul ignore next */ []));
549
568
  const { status } = this.activatedRoute.snapshot.queryParams;
550
569
  if (!isNaN(status)) {
551
570
  this.status.set(+status);
@@ -568,10 +587,10 @@ class HttpErrorComponent {
568
587
  this.router.navigateByUrl('/', { onSameUrlNavigation: 'reload' });
569
588
  this.destroy$?.next();
570
589
  }
571
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: HttpErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
572
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.9", type: HttpErrorComponent, isStandalone: true, selector: "abp-http-error", ngImport: i0, template: "<ng-container *abpReplaceableTemplate=\"{ componentKey: errorComponentKey }\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-10 col-md-11 mx-auto\">\r\n <div\r\n class=\"d-flex flex-column justify-content-center min-vh-100 align-items-center\"\r\n >\r\n <div class=\"card\">\r\n <div class=\"card-body p-lg-5\">\r\n <div class=\"row\">\r\n <div class=\"col-auto d-flex align-items-center\">\r\n <i\r\n class=\"bi bi-emoji-frown text-primary mb-3 mb-md-0 mx-3 mx-md-4\"\r\n style=\"font-size: 12em\"\r\n ></i>\r\n </div>\r\n <div class=\"col flex-center ps-lg-4\">\r\n <div class=\"status-content\">\r\n <h1 class=\"fw-bolder display-1 text-brand\">\r\n {{ status() }}\r\n </h1>\r\n <h2 class=\"mb-0\">{{ statusText() | abpLocalization }}</h2>\r\n <h5 class=\"text-muted\">{{ detail() | abpLocalization }}</h5>\r\n\r\n @if (lastNavigation() && status() !== 403) {\r\n <a class=\"btn btn-primary soft me-2\" (click)=\"goBack()\">\r\n {{ 'AbpUi::GoBack' | abpLocalization }}\r\n </a>\r\n }\r\n <a class=\"btn btn-primary\" (click)=\"goHome()\">\r\n {{ 'AbpUi::GoHomePage' | abpLocalization }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", dependencies: [{ kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "pipe", type: LocalizationPipe, name: "abpLocalization" }] }); }
590
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: HttpErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
591
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.6", type: HttpErrorComponent, isStandalone: true, selector: "abp-http-error", ngImport: i0, template: "<ng-container *abpReplaceableTemplate=\"{ componentKey: errorComponentKey }\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-10 col-md-11 mx-auto\">\r\n <div\r\n class=\"d-flex flex-column justify-content-center min-vh-100 align-items-center\"\r\n >\r\n <div class=\"card\">\r\n <div class=\"card-body p-lg-5\">\r\n <div class=\"row\">\r\n <div class=\"col-auto d-flex align-items-center\">\r\n <i\r\n class=\"bi bi-emoji-frown text-primary mb-3 mb-md-0 mx-3 mx-md-4\"\r\n style=\"font-size: 12em\"\r\n ></i>\r\n </div>\r\n <div class=\"col flex-center ps-lg-4\">\r\n <div class=\"status-content\">\r\n <h1 class=\"fw-bolder display-1 text-brand\">\r\n {{ status() }}\r\n </h1>\r\n <h2 class=\"mb-0\">{{ statusText() | abpLocalization }}</h2>\r\n <h5 class=\"text-muted\">{{ detail() | abpLocalization }}</h5>\r\n\r\n @if (lastNavigation() && status() !== 403) {\r\n <a class=\"btn btn-primary soft me-2\" (click)=\"goBack()\">\r\n {{ 'AbpUi::GoBack' | abpLocalization }}\r\n </a>\r\n }\r\n <a class=\"btn btn-primary\" (click)=\"goHome()\">\r\n {{ 'AbpUi::GoHomePage' | abpLocalization }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", dependencies: [{ kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "pipe", type: LocalizationPipe, name: "abpLocalization" }] }); }
573
592
  }
574
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: HttpErrorComponent, decorators: [{
593
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: HttpErrorComponent, decorators: [{
575
594
  type: Component,
576
595
  args: [{ selector: 'abp-http-error', imports: [LocalizationPipe, ReplaceableTemplateDirective], template: "<ng-container *abpReplaceableTemplate=\"{ componentKey: errorComponentKey }\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-10 col-md-11 mx-auto\">\r\n <div\r\n class=\"d-flex flex-column justify-content-center min-vh-100 align-items-center\"\r\n >\r\n <div class=\"card\">\r\n <div class=\"card-body p-lg-5\">\r\n <div class=\"row\">\r\n <div class=\"col-auto d-flex align-items-center\">\r\n <i\r\n class=\"bi bi-emoji-frown text-primary mb-3 mb-md-0 mx-3 mx-md-4\"\r\n style=\"font-size: 12em\"\r\n ></i>\r\n </div>\r\n <div class=\"col flex-center ps-lg-4\">\r\n <div class=\"status-content\">\r\n <h1 class=\"fw-bolder display-1 text-brand\">\r\n {{ status() }}\r\n </h1>\r\n <h2 class=\"mb-0\">{{ statusText() | abpLocalization }}</h2>\r\n <h5 class=\"text-muted\">{{ detail() | abpLocalization }}</h5>\r\n\r\n @if (lastNavigation() && status() !== 403) {\r\n <a class=\"btn btn-primary soft me-2\" (click)=\"goBack()\">\r\n {{ 'AbpUi::GoBack' | abpLocalization }}\r\n </a>\r\n }\r\n <a class=\"btn btn-primary\" (click)=\"goHome()\">\r\n {{ 'AbpUi::GoHomePage' | abpLocalization }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n" }]
577
596
  }], ctorParameters: () => [] });
@@ -591,11 +610,11 @@ class ThemeLeptonXModule {
591
610
  providers: [provideThemeLeptonX(withThemeLeptonXOptions(options))],
592
611
  };
593
612
  }
594
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ThemeLeptonXModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
595
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: ThemeLeptonXModule }); }
596
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ThemeLeptonXModule }); }
613
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: ThemeLeptonXModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
614
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.6", ngImport: i0, type: ThemeLeptonXModule }); }
615
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: ThemeLeptonXModule }); }
597
616
  }
598
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ThemeLeptonXModule, decorators: [{
617
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.6", ngImport: i0, type: ThemeLeptonXModule, decorators: [{
599
618
  type: NgModule
600
619
  }] });
601
620
 
@@ -1 +1 @@
1
- {"version":3,"file":"volosoft-abp.ng.theme.lepton-x.mjs","sources":["../../../../libs/volo-lepton-x/src/lib/components/abp-validation-error/abp-validation-error.component.ts","../../../../libs/volo-lepton-x/src/lib/services/abp-settings.service.ts","../../../../libs/volo-lepton-x/src/lib/tokens/http-error-path.token.ts","../../../../libs/volo-lepton-x/src/lib/tokens/translate-key-map.ts","../../../../libs/volo-lepton-x/src/lib/services/abp-create-error-component.service.ts","../../../../libs/volo-lepton-x/src/lib/services/abp-translate.service.ts","../../../../libs/volo-lepton-x/src/lib/services/abp-auth.service.ts","../../../../libs/volo-lepton-x/src/lib/providers/init-service.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/style.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/translate.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/account-layout.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/lepton-x.routes.ts","../../../../libs/volo-lepton-x/src/lib/providers/http-error.provider.ts","../../../../libs/volo-lepton-x/src/lib/enums/user-menu-items.ts","../../../../libs/volo-lepton-x/src/lib/providers/user-menu-service.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/theme-lepton-x.provider.ts","../../../../libs/volo-lepton-x/src/lib/components/abp-validation-error/abp-validation-error.module.ts","../../../../libs/volo-lepton-x/src/lib/components/http-error/http-error.component.ts","../../../../libs/volo-lepton-x/src/lib/components/http-error/http-error.component.html","../../../../libs/volo-lepton-x/src/lib/lepton-x.module.ts","../../../../libs/volo-lepton-x/src/volosoft-abp.ng.theme.lepton-x.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\r\nimport { Validation, ValidationErrorComponent } from '@ngx-validate/core';\r\nimport { LocalizationPipe } from '@abp/ng.core';\r\n@Component({\r\n selector: 'abp-validation-error',\r\n // TODO: add validation error class to span\r\n template: `\r\n <span\r\n class=\"text-danger\"\r\n data-valmsg-for=\"Role.Name\"\r\n data-valmsg-replace=\"true\"\r\n >\r\n @for (error of abpErrors; track $index) {\r\n <span>\r\n {{ error.message | abpLocalization: error.interpoliteParams }}\r\n </span>\r\n }\r\n </span>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n styles: [\r\n `\r\n :host-context {\r\n order: 3;\r\n }\r\n `,\r\n ],\r\n imports: [LocalizationPipe],\r\n})\r\nexport class AbpValidationErrorComponent extends ValidationErrorComponent {\r\n get abpErrors(): Validation.Error[] & { interpoliteParams?: string[] } {\r\n if (!this.errors || !this.errors.length) {\r\n return [];\r\n }\r\n\r\n return this.errors.map((error) => {\r\n if (!error.message) {\r\n return error;\r\n }\r\n\r\n const index = error.message.indexOf('[');\r\n\r\n if (index > -1) {\r\n return {\r\n ...error,\r\n message: error.message.slice(0, index),\r\n interpoliteParams: error.message\r\n .slice(index + 1, error.message.length - 1)\r\n .split(','),\r\n };\r\n }\r\n\r\n return error;\r\n });\r\n }\r\n}\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { filter, map, switchMap } from 'rxjs/operators';\r\nimport { BehaviorSubject, combineLatest, of } from 'rxjs';\r\nimport {\r\n LanguageService,\r\n LpxLanguage,\r\n UserProfileService,\r\n} from '@volo/ngx-lepton-x.core';\r\nimport {\r\n ConfigStateService,\r\n CurrentUserDto,\r\n CurrentTenantDto,\r\n getLocaleDirection,\r\n LanguageInfo,\r\n NAVIGATE_TO_MANAGE_PROFILE,\r\n SessionStateService,\r\n} from '@abp/ng.core';\r\n\r\nimport {\r\n NAVIGATE_TO_MY_SECURITY_LOGS,\r\n OPEN_MY_LINK_USERS_MODAL,\r\n PROFILE_PICTURE,\r\n ProfilePictureImage,\r\n} from '@volo/abp.commercial.ng.ui/config';\r\nimport { UserMenuService } from '@abp/ng.theme.shared';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AbpSettingsService {\r\n private sessionService = inject(SessionStateService);\r\n private configStateService = inject(ConfigStateService);\r\n private languageService = inject(LanguageService);\r\n private userProfileService = inject(UserProfileService);\r\n private profilePicture$ = inject<BehaviorSubject<ProfilePictureImage>>(PROFILE_PICTURE);\r\n navigateToManageProfile = inject(NAVIGATE_TO_MANAGE_PROFILE);\r\n navigateToMySecurityLogs = inject(NAVIGATE_TO_MY_SECURITY_LOGS);\r\n openMyLinkUsersModal = inject(OPEN_MY_LINK_USERS_MODAL, { optional: true })!;\r\n private userMenuService = inject(UserMenuService);\r\n\r\n\r\n setUpListeners() {\r\n this.listenToLangChange();\r\n this.setLanguageOptions();\r\n this.setUserProfile();\r\n this.setProfilePicture();\r\n this.setUserMenuGroups();\r\n }\r\n\r\n setUserProfile() {\r\n const emptyStringOnNull = (value?: string) => value || '';\r\n\r\n const currentUser$ = this.configStateService\r\n .getOne$('currentUser')\r\n .pipe(filter<CurrentUserDto>(Boolean));\r\n\r\n const currentTenant$ = this.configStateService\r\n .getOne$('currentTenant')\r\n .pipe(filter<CurrentTenantDto>(Boolean));\r\n\r\n combineLatest([currentUser$, currentTenant$]).subscribe(\r\n ([currentUser, currentTenant]) => {\r\n this.userProfileService.patchUser({\r\n id: currentUser.id,\r\n isAuthenticated: currentUser.isAuthenticated,\r\n userName: currentUser.userName,\r\n fullName:\r\n emptyStringOnNull(currentUser.name) +\r\n ' ' +\r\n emptyStringOnNull(currentUser.surName),\r\n email: currentUser.email,\r\n tenant: currentTenant,\r\n });\r\n }\r\n );\r\n }\r\n\r\n setUserMenuGroups() {\r\n this.userMenuService.items$.subscribe((userMenu) => {\r\n const userActionGroups = userMenu.reduce(\r\n (acc, curr, index) => {\r\n const menuItem = {\r\n icon: curr.textTemplate?.icon,\r\n text: curr.textTemplate?.text,\r\n component: curr?.component,\r\n action: () => {\r\n curr.action();\r\n return of(true);\r\n },\r\n visible: curr.visible,\r\n };\r\n const setIndex = index === userMenu.length - 1 ? 1 : 0;\r\n acc[setIndex].push(menuItem);\r\n return acc;\r\n },\r\n [[], []]\r\n );\r\n\r\n this.userProfileService.patchUser({\r\n userActionGroups,\r\n });\r\n });\r\n }\r\n\r\n setProfilePicture() {\r\n this.profilePicture$\r\n .pipe(filter<ProfilePictureImage>(Boolean))\r\n .subscribe((avatar) =>\r\n this.userProfileService.patchUser({\r\n avatar: {\r\n type: avatar.type,\r\n source: avatar.source || '',\r\n },\r\n })\r\n );\r\n }\r\n\r\n setLanguageOptions() {\r\n this.sessionService\r\n .getLanguage$()\r\n .pipe(\r\n switchMap((currentLang) =>\r\n this.configStateService.getDeep$('localization.languages').pipe(\r\n filter<LanguageInfo[]>(Boolean),\r\n map((languages: LanguageInfo[]) =>\r\n languages.map<LpxLanguage>(({ cultureName, ...rest }) => ({\r\n ...rest,\r\n cultureName,\r\n selected: cultureName === currentLang,\r\n isRTL: getLocaleDirection(cultureName) === 'rtl',\r\n }))\r\n )\r\n )\r\n )\r\n )\r\n .subscribe((settings) => {\r\n this.languageService.setLanguages(settings);\r\n });\r\n }\r\n\r\n listenToLangChange() {\r\n this.languageService.selectedLanguage$\r\n .pipe(filter<LpxLanguage | undefined>(Boolean))\r\n .subscribe((lang) => {\r\n this.sessionService.setLanguage(lang?.cultureName || '');\r\n });\r\n }\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nexport const HTTP_ERROR_PATH = new InjectionToken<string>('HTTP_ERROR_PATH');\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nexport const LPX_TRANSLATE_KEY_MAP_TOKEN = new InjectionToken<{\r\n [key: string]: string;\r\n}>('LPX_TRANSLATE_KEY_MAP_TOKEN');\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport {\r\n CreateErrorComponentService,\r\n ErrorScreenErrorCodes,\r\n HttpErrorWrapperComponent,\r\n} from '@abp/ng.theme.shared';\r\nimport { HTTP_ERROR_PATH } from '../tokens';\r\n\r\n@Injectable()\r\nexport class AbpCreateErrorComponentService extends CreateErrorComponentService {\r\n protected readonly router: Router;\r\n protected readonly httpErrorPath: string;\r\n\r\n constructor() {\r\n super();\r\n this.router = inject(Router);\r\n this.httpErrorPath = inject(HTTP_ERROR_PATH);\r\n }\r\n\r\n override execute(instance: Partial<HttpErrorWrapperComponent>): void {\r\n if (this.canCreateCustomError(instance.status as ErrorScreenErrorCodes)) {\r\n super.execute(instance);\r\n return;\r\n }\r\n\r\n const queryParams = { status: instance.status };\r\n this.router.navigate([this.httpErrorPath], { queryParams });\r\n }\r\n}\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { LocalizationService } from '@abp/ng.core';\r\nimport {\r\n flatArrayDeepToObject,\r\n TranslateService,\r\n} from '@volo/ngx-lepton-x.core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { LPX_TRANSLATE_KEY_MAP_TOKEN } from '../tokens/translate-key-map';\r\n\r\n@Injectable()\r\nexport class AbpTranslateService implements TranslateService {\r\n private localization = inject(LocalizationService);\r\n private translateKeys = inject<Array<any>>(LPX_TRANSLATE_KEY_MAP_TOKEN);\r\n\r\n\r\n get(key: string, defaultValue: string | undefined): string {\r\n const keyToTranslate = this.getKey(key);\r\n if (keyToTranslate) {\r\n return this.localization.instant({\r\n key: keyToTranslate,\r\n defaultValue,\r\n });\r\n }\r\n\r\n return defaultValue || key;\r\n }\r\n\r\n get$(key: string, defaultValue: string | undefined): Observable<string> {\r\n const keyToTranslate = this.getKey(key);\r\n if (keyToTranslate) {\r\n return this.localization.get({\r\n key: keyToTranslate,\r\n defaultValue,\r\n });\r\n }\r\n\r\n return of(defaultValue || key);\r\n }\r\n\r\n private getKey(key: string): string | undefined {\r\n const keys = flatArrayDeepToObject(this.translateKeys);\r\n return keys[key] ? keys[key] : key.includes('::') ? key : undefined;\r\n }\r\n}\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { AuthService, UserProfileService } from '@volo/ngx-lepton-x.core';\r\nimport { map } from 'rxjs/operators';\r\nimport { AuthService as AuthCoreService } from '@abp/ng.core';\r\n\r\n@Injectable()\r\nexport class AbpAuthService implements AuthService {\r\n private userProfileService = inject(UserProfileService);\r\n private authService = inject(AuthCoreService);\r\n\r\n\r\n isUserExists$ = this.userProfileService.user$.pipe(\r\n map((user) => user && !!user.userName)\r\n );\r\n\r\n navigateToLogin(): void {\r\n this.authService.navigateToLogin();\r\n }\r\n}\r\n","import { inject, provideAppInitializer } from '@angular/core';\r\nimport {\r\n AbpNavbarService,\r\n AbpToolbarService,\r\n} from '@volo/abp.ng.lepton-x.core';\r\nimport { AbpSettingsService } from '../services';\r\n\r\nexport const INIT_SERVICE_PROVIDER = provideAppInitializer(() => {\r\n initServices();\r\n});\r\n\r\nexport function initServices() {\r\n const navbar = inject(AbpNavbarService);\r\n const abpToolbar = inject(AbpToolbarService);\r\n const setting = inject(AbpSettingsService);\r\n\r\n abpToolbar.listenNavItems();\r\n setting.setUpListeners();\r\n navbar.initRoutes();\r\n}\r\n","import { inject, PLATFORM_ID, provideAppInitializer } from '@angular/core';\r\nimport { isPlatformServer } from '@angular/common';\r\n\r\nexport const LPX_STYLE_PROVIDER = provideAppInitializer(() => {\r\n const platformId = inject(PLATFORM_ID);\r\n if (isPlatformServer(platformId)) {\r\n return Promise.resolve();\r\n }\r\n const loader = document.querySelector('#lp-page-loader') as HTMLElement;\r\n if (loader) {\r\n loader.style.background = 'var(--background)';\r\n setTimeout(() => loader.parentNode?.removeChild(loader), 500);\r\n }\r\n return Promise.resolve();\r\n});\r\n","import { Provider } from '@angular/core';\r\nimport {\r\n LanguageTranslateKeys,\r\n LanguageTranslateValues,\r\n LPX_TRANSLATE_SERVICE_TOKEN,\r\n} from '@volo/ngx-lepton-x.core';\r\nimport { LocalizationService } from '@abp/ng.core';\r\nimport { AbpTranslateService } from '../services/abp-translate.service';\r\nimport { LPX_TRANSLATE_KEY_MAP_TOKEN } from '../tokens/translate-key-map';\r\nimport {\r\n ThemeTranslateKeys,\r\n ThemeTranslateValues,\r\n} from '@volosoft/ngx-lepton-x';\r\n\r\nexport const LPX_TRANSLATE_PROVIDER: Provider = {\r\n provide: LPX_TRANSLATE_SERVICE_TOKEN,\r\n useFactory: () => {\r\n return new AbpTranslateService();\r\n },\r\n deps: [LocalizationService, LPX_TRANSLATE_KEY_MAP_TOKEN],\r\n};\r\nexport const translateKeys: ThemeTranslateValues & LanguageTranslateValues = {\r\n [LanguageTranslateKeys.SettingsTitle]: 'LeptonX::Language',\r\n [ThemeTranslateKeys.AppearanceTitle]: 'LeptonX::Appearance',\r\n [ThemeTranslateKeys.DarkMode]: 'LeptonX::Theme:dark',\r\n [ThemeTranslateKeys.LightMode]: 'LeptonX::Theme:light',\r\n [ThemeTranslateKeys.SemiDarkMode]: 'LeptonX::Theme:dim',\r\n [ThemeTranslateKeys.System]: 'LeptonX::Theme:system',\r\n};\r\nexport const LPX_TRANSLATE_KEYS_PROVIDER: Provider = {\r\n provide: LPX_TRANSLATE_KEY_MAP_TOKEN,\r\n multi: true,\r\n useValue: translateKeys,\r\n};\r\n","import { ReplaceableComponentsService } from '@abp/ng.core';\r\nimport { inject, provideAppInitializer } from '@angular/core';\r\nimport { eThemeLeptonXComponents } from '../enums';\r\nimport { AccountLayoutComponent } from '@volosoft/abp.ng.theme.lepton-x/account';\r\n\r\nexport const ACCOUNT_LAYOUT_PROVIDER = provideAppInitializer(() => {\r\n initAccountLayout();\r\n});\r\n\r\nexport function initAccountLayout() {\r\n const replaceableComponents = inject(ReplaceableComponentsService);\r\n replaceableComponents.add({\r\n key: eThemeLeptonXComponents.AccountLayout,\r\n component: AccountLayoutComponent,\r\n });\r\n}\r\n","import { EnvironmentProviders } from '@angular/core';\r\nimport { provideRouter } from '@angular/router';\r\nimport { ThemeLeptonXModuleOptions } from './theme-lepton-x.provider';\r\n\r\nexport function leptonXRoutes(\r\n options: ThemeLeptonXModuleOptions,\r\n): EnvironmentProviders {\r\n const { httpError } = options || {};\r\n\r\n return provideRouter([\r\n {\r\n pathMatch: 'full',\r\n path: httpError?.errorPath || 'error',\r\n loadComponent: () =>\r\n import('./../components/http-error/http-error.component').then(\r\n (c) => c.HttpErrorComponent,\r\n ),\r\n },\r\n ]);\r\n}\r\n","import { EnvironmentProviders, Provider } from '@angular/core';\r\nimport { CreateErrorComponentService } from '@abp/ng.theme.shared';\r\nimport { AbpCreateErrorComponentService } from '../services';\r\nimport { HTTP_ERROR_PATH } from '../tokens';\r\nimport { leptonXRoutes } from './lepton-x.routes';\r\nimport { ThemeLeptonXModuleOptions } from './theme-lepton-x.provider';\r\n\r\nexport function httpErrorProvider(\r\n options: ThemeLeptonXModuleOptions,\r\n): (Provider | EnvironmentProviders)[] {\r\n const { httpError } = options || {};\r\n\r\n return [\r\n {\r\n provide: HTTP_ERROR_PATH,\r\n useValue: httpError?.errorPath || 'error',\r\n },\r\n {\r\n provide: CreateErrorComponentService,\r\n useClass: AbpCreateErrorComponentService,\r\n },\r\n leptonXRoutes(options),\r\n ];\r\n}\r\n","export enum eUserMenuItems {\r\n Sessions = 'Sessions',\r\n ExternalLogins = 'ExternalLogins',\r\n LinkedAccounts = 'LinkedAccounts',\r\n MyAccount = 'MyAccount',\r\n SecurityLogs = 'SecurityLogs',\r\n BackToImpersonator = 'BackToImpersonator',\r\n AuthorityDelegation = 'AuthorityDelegation',\r\n Logout = 'Logout',\r\n}\r\n","import { inject, provideAppInitializer } from '@angular/core';\r\nimport { map } from 'rxjs';\r\nimport {\r\n AuthService,\r\n ConfigStateService,\r\n EnvironmentService,\r\n NAVIGATE_TO_MANAGE_PROFILE,\r\n} from '@abp/ng.core';\r\nimport { UserMenuService } from '@abp/ng.theme.shared';\r\nimport {\r\n NAVIGATE_TO_MY_SESSIONS,\r\n NAVIGATE_TO_MY_SECURITY_LOGS,\r\n OPEN_MY_LINK_USERS_MODAL,\r\n OPEN_AUTHORITY_DELEGATION_MODAL,\r\n NAVIGATE_TO_MY_EXTERNAL_LOGINS,\r\n} from '@volo/abp.commercial.ng.ui/config';\r\nimport { eUserMenuItems } from '../enums/user-menu-items';\r\n\r\nexport const LEPTON_X_USER_MENU_PROVIDERS = [\r\n provideAppInitializer(() => {\r\n configureUserMenu();\r\n }),\r\n];\r\n\r\nexport function configureUserMenu() {\r\n const userMenu = inject(UserMenuService);\r\n const authService = inject(AuthService);\r\n const configState = inject(ConfigStateService);\r\n const environment = inject(EnvironmentService);\r\n\r\n const navigateToMySessions = inject(NAVIGATE_TO_MY_SESSIONS);\r\n const navigateToMyExternalLogins = inject(NAVIGATE_TO_MY_EXTERNAL_LOGINS);\r\n const navigateToManageProfile = inject(NAVIGATE_TO_MANAGE_PROFILE);\r\n const navigateToMySecurityLogs = inject(NAVIGATE_TO_MY_SECURITY_LOGS);\r\n\r\n const openMyLinkUsersModal = inject(OPEN_MY_LINK_USERS_MODAL, {\r\n optional: true,\r\n }) as () => void;\r\n\r\n const openAuthorityDelegationModal = inject(OPEN_AUTHORITY_DELEGATION_MODAL, {\r\n optional: true,\r\n }) as () => void;\r\n\r\n userMenu.addItems([\r\n {\r\n id: eUserMenuItems.Sessions,\r\n order: 100,\r\n textTemplate: {\r\n icon: 'bi bi-clock-fill',\r\n text: 'AbpAccount::Sessions',\r\n },\r\n action: () => navigateToMySessions(),\r\n },\r\n {\r\n id: eUserMenuItems.ExternalLogins,\r\n order: 101,\r\n textTemplate: {\r\n icon: 'bi bi-person-circle',\r\n text: 'AbpAccount::ExternalLogins',\r\n },\r\n action: () => navigateToMyExternalLogins(),\r\n visible: () => {\r\n return environment.getEnvironment$().pipe(\r\n map(({ oAuthConfig }) => {\r\n return oAuthConfig?.responseType === 'code';\r\n }),\r\n );\r\n },\r\n },\r\n {\r\n id: eUserMenuItems.LinkedAccounts,\r\n order: 102,\r\n textTemplate: {\r\n icon: 'bi bi-link',\r\n text: 'AbpAccount::LinkedAccounts',\r\n },\r\n action: () => openMyLinkUsersModal(),\r\n visible: () => !!openMyLinkUsersModal,\r\n },\r\n {\r\n id: eUserMenuItems.AuthorityDelegation,\r\n order: 103,\r\n textTemplate: {\r\n text: 'AbpAccount::AuthorityDelegation',\r\n icon: 'fa fa-users',\r\n },\r\n visible: () => {\r\n return configState\r\n .getOne$('currentUser')\r\n .pipe(map(({ impersonatorUserId }) => !Boolean(impersonatorUserId)));\r\n },\r\n action: () => openAuthorityDelegationModal(),\r\n },\r\n {\r\n id: eUserMenuItems.MyAccount,\r\n order: 104,\r\n textTemplate: {\r\n icon: 'bi bi-sliders',\r\n text: 'AbpAccount::MyAccount',\r\n },\r\n action: () => navigateToManageProfile(),\r\n },\r\n {\r\n id: eUserMenuItems.SecurityLogs,\r\n order: 105,\r\n textTemplate: {\r\n icon: 'bi bi-list-ul',\r\n text: 'AbpAccount::MySecurityLogs',\r\n },\r\n action: () => navigateToMySecurityLogs(),\r\n },\r\n {\r\n id: eUserMenuItems.Logout,\r\n order: 107, // The order has taken to 107 delibaretely since we moved the back to impersonator item to the end of the menu\r\n textTemplate: {\r\n icon: 'bi bi-box-arrow-right',\r\n text: 'AbpUi::Logout',\r\n },\r\n action: () => {\r\n authService.logout().subscribe();\r\n },\r\n },\r\n ]);\r\n}\r\n","import {\r\n Provider,\r\n EnvironmentProviders,\r\n makeEnvironmentProviders,\r\n} from '@angular/core';\r\nimport {\r\n VALIDATION_ERROR_TEMPLATE,\r\n VALIDATION_INVALID_CLASSES,\r\n VALIDATION_TARGET_SELECTOR,\r\n} from '@ngx-validate/core';\r\nimport { LpxStyles } from '@volo/ngx-lepton-x.core';\r\nimport { LpxOptions, provideLpx, withLpxOptions } from '@volosoft/ngx-lepton-x';\r\nimport { PROFILE_PICTURE_PROVIDERS } from '@volo/abp.commercial.ng.ui/config';\r\nimport { provideLeptonXAbpCore } from '@volo/abp.ng.lepton-x.core';\r\nimport { AbpValidationErrorComponent } from '../components';\r\nimport {\r\n LPX_TRANSLATE_KEYS_PROVIDER,\r\n LPX_TRANSLATE_PROVIDER,\r\n httpErrorProvider,\r\n INIT_SERVICE_PROVIDER,\r\n LPX_STYLE_PROVIDER,\r\n LEPTON_X_USER_MENU_PROVIDERS,\r\n ACCOUNT_LAYOUT_PROVIDER,\r\n} from './';\r\n\r\nexport type ThemeLeptonXModuleOptions = LpxOptions;\r\n\r\nexport enum ThemeLeptonXFeatureKind {\r\n Options,\r\n}\r\n\r\nexport interface ThemeLeptonXFeature<KindT extends ThemeLeptonXFeatureKind> {\r\n ɵkind: KindT;\r\n ɵproviders: (Provider | EnvironmentProviders)[];\r\n}\r\n\r\nfunction makeThemeLeptonXFeature<KindT extends ThemeLeptonXFeatureKind>(\r\n kind: KindT,\r\n providers: (Provider | EnvironmentProviders)[],\r\n): ThemeLeptonXFeature<KindT> {\r\n return {\r\n ɵkind: kind,\r\n ɵproviders: providers,\r\n };\r\n}\r\n\r\nexport function withThemeLeptonXOptions(\r\n options = {} as ThemeLeptonXModuleOptions,\r\n): ThemeLeptonXFeature<ThemeLeptonXFeatureKind.Options> {\r\n const lpxModuleOptions: LpxOptions = {\r\n ...options,\r\n styleFactory: (styles: LpxStyles) => {\r\n styles.push({\r\n bundleName: 'abp-bundle',\r\n });\r\n if (options?.styleFactory) {\r\n return options.styleFactory(styles);\r\n }\r\n return styles;\r\n },\r\n };\r\n return makeThemeLeptonXFeature(ThemeLeptonXFeatureKind.Options, [\r\n provideLpx(withLpxOptions(lpxModuleOptions)),\r\n httpErrorProvider(options),\r\n ]);\r\n}\r\n\r\nexport function provideAbpValidationError(): EnvironmentProviders {\r\n const providers = [\r\n {\r\n provide: VALIDATION_ERROR_TEMPLATE,\r\n useValue: AbpValidationErrorComponent,\r\n },\r\n {\r\n provide: VALIDATION_INVALID_CLASSES,\r\n useValue: 'is-invalid',\r\n },\r\n {\r\n provide: VALIDATION_TARGET_SELECTOR,\r\n useValue: '.form-group',\r\n },\r\n ];\r\n\r\n return makeEnvironmentProviders(providers);\r\n}\r\n\r\nexport function provideThemeLeptonX(\r\n ...features: ThemeLeptonXFeature<ThemeLeptonXFeatureKind>[]\r\n): EnvironmentProviders {\r\n const providers: (Provider | EnvironmentProviders)[] = [\r\n LPX_STYLE_PROVIDER,\r\n PROFILE_PICTURE_PROVIDERS,\r\n LEPTON_X_USER_MENU_PROVIDERS,\r\n INIT_SERVICE_PROVIDER,\r\n provideAbpValidationError(),\r\n provideLeptonXAbpCore(),\r\n ACCOUNT_LAYOUT_PROVIDER,\r\n provideLpx(),\r\n LPX_TRANSLATE_KEYS_PROVIDER,\r\n LPX_TRANSLATE_PROVIDER,\r\n ];\r\n\r\n features.forEach(({ ɵproviders }) => providers.push(...ɵproviders));\r\n\r\n return makeEnvironmentProviders(providers);\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\r\nimport { CoreModule } from '@abp/ng.core';\r\nimport { AbpValidationErrorComponent } from './abp-validation-error.component';\r\nimport { provideAbpValidationError } from '../../providers';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n CoreModule,\r\n NgxValidateCoreModule,\r\n AbpValidationErrorComponent,\r\n ],\r\n exports: [AbpValidationErrorComponent, NgxValidateCoreModule],\r\n})\r\nexport class AbpValidationErrorModule {\r\n /**\r\n * @deprecated `AbpValidationErrorModule.forRoot()` is deprecated. You can use `provideAbpValidationError` **function** instead.\r\n */\r\n static forRoot(): ModuleWithProviders<AbpValidationErrorModule> {\r\n return {\r\n ngModule: AbpValidationErrorModule,\r\n providers: [provideAbpValidationError()],\r\n };\r\n }\r\n}\r\n","import {\r\n Component,\r\n computed,\r\n inject,\r\n PLATFORM_ID,\r\n signal,\r\n} from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { isPlatformBrowser, Location } from '@angular/common';\r\nimport { Subject } from 'rxjs';\r\nimport {\r\n LocalizationPipe,\r\n ReplaceableTemplateDirective,\r\n RouterEvents,\r\n} from '@abp/ng.core';\r\nimport { HTTP_ERROR_STATUS, HTTP_ERROR_DETAIL } from '@abp/ng.theme.shared';\r\nimport { eThemeLeptonXComponents } from '../../enums';\r\n\r\n@Component({\r\n selector: 'abp-http-error',\r\n imports: [LocalizationPipe, ReplaceableTemplateDirective],\r\n templateUrl: './http-error.component.html',\r\n})\r\nexport class HttpErrorComponent {\r\n protected readonly router = inject(Router);\r\n protected readonly activatedRoute = inject(ActivatedRoute);\r\n protected readonly location = inject(Location);\r\n protected readonly routerEvents = inject(RouterEvents);\r\n protected readonly platformId = inject(PLATFORM_ID);\r\n\r\n public readonly destroy$: Subject<void>;\r\n\r\n protected readonly errorComponentKey = eThemeLeptonXComponents.HttpError;\r\n protected readonly status = signal(0);\r\n\r\n readonly lastNavigation = this.routerEvents.previousNavigation;\r\n readonly currentNavigation = this.routerEvents.currentNavigation;\r\n\r\n protected readonly statusText = computed(\r\n () => HTTP_ERROR_STATUS[this.status()] ?? '',\r\n );\r\n\r\n protected readonly detail = computed(\r\n () => HTTP_ERROR_DETAIL[this.status()] ?? '',\r\n );\r\n\r\n constructor() {\r\n const { status } = this.activatedRoute.snapshot.queryParams;\r\n\r\n if (!isNaN(status)) {\r\n this.status.set(+status);\r\n }\r\n }\r\n\r\n goBack(): void {\r\n\r\n if (!isPlatformBrowser(this.platformId)) {\r\n return;\r\n }\r\n\r\n const url =\r\n this.status() === 404 ? this.currentNavigation() : this.lastNavigation();\r\n\r\n if (url) {\r\n this.router.navigateByUrl(url, { onSameUrlNavigation: 'reload' });\r\n } else {\r\n this.location.back();\r\n }\r\n\r\n this.destroy$?.next();\r\n }\r\n\r\n goHome(): void {\r\n this.router.navigateByUrl('/', { onSameUrlNavigation: 'reload' });\r\n this.destroy$?.next();\r\n }\r\n}\r\n","<ng-container *abpReplaceableTemplate=\"{ componentKey: errorComponentKey }\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-10 col-md-11 mx-auto\">\r\n <div\r\n class=\"d-flex flex-column justify-content-center min-vh-100 align-items-center\"\r\n >\r\n <div class=\"card\">\r\n <div class=\"card-body p-lg-5\">\r\n <div class=\"row\">\r\n <div class=\"col-auto d-flex align-items-center\">\r\n <i\r\n class=\"bi bi-emoji-frown text-primary mb-3 mb-md-0 mx-3 mx-md-4\"\r\n style=\"font-size: 12em\"\r\n ></i>\r\n </div>\r\n <div class=\"col flex-center ps-lg-4\">\r\n <div class=\"status-content\">\r\n <h1 class=\"fw-bolder display-1 text-brand\">\r\n {{ status() }}\r\n </h1>\r\n <h2 class=\"mb-0\">{{ statusText() | abpLocalization }}</h2>\r\n <h5 class=\"text-muted\">{{ detail() | abpLocalization }}</h5>\r\n\r\n @if (lastNavigation() && status() !== 403) {\r\n <a class=\"btn btn-primary soft me-2\" (click)=\"goBack()\">\r\n {{ 'AbpUi::GoBack' | abpLocalization }}\r\n </a>\r\n }\r\n <a class=\"btn btn-primary\" (click)=\"goHome()\">\r\n {{ 'AbpUi::GoHomePage' | abpLocalization }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport {\r\n provideThemeLeptonX,\r\n ThemeLeptonXModuleOptions,\r\n withThemeLeptonXOptions,\r\n} from './providers';\r\n\r\n@NgModule()\r\nexport class ThemeLeptonXModule {\r\n /**\r\n * @deprecated `ThemeLeptonXModule.forRoot()` is deprecated. You can use `provideThemeLeptonX` **function** instead.\r\n */\r\n static forRoot(\r\n options?: ThemeLeptonXModuleOptions,\r\n ): ModuleWithProviders<ThemeLeptonXModule> {\r\n return {\r\n ngModule: ThemeLeptonXModule,\r\n providers: [provideThemeLeptonX(withThemeLeptonXOptions(options))],\r\n };\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["AuthCoreService","map"],"mappings":"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"}
1
+ {"version":3,"file":"volosoft-abp.ng.theme.lepton-x.mjs","sources":["../../../../libs/volo-lepton-x/src/lib/components/abp-validation-error/abp-validation-error.component.ts","../../../../libs/volo-lepton-x/src/lib/services/abp-settings.service.ts","../../../../libs/volo-lepton-x/src/lib/tokens/http-error-path.token.ts","../../../../libs/volo-lepton-x/src/lib/tokens/translate-key-map.ts","../../../../libs/volo-lepton-x/src/lib/services/abp-create-error-component.service.ts","../../../../libs/volo-lepton-x/src/lib/services/abp-translate.service.ts","../../../../libs/volo-lepton-x/src/lib/services/abp-auth.service.ts","../../../../libs/volo-lepton-x/src/lib/providers/init-service.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/style.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/translate.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/account-layout.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/lepton-x.routes.ts","../../../../libs/volo-lepton-x/src/lib/providers/http-error.provider.ts","../../../../libs/volo-lepton-x/src/lib/enums/user-menu-items.ts","../../../../libs/volo-lepton-x/src/lib/providers/user-menu-service.provider.ts","../../../../libs/volo-lepton-x/src/lib/providers/theme-lepton-x.provider.ts","../../../../libs/volo-lepton-x/src/lib/components/abp-validation-error/abp-validation-error.module.ts","../../../../libs/volo-lepton-x/src/lib/components/http-error/http-error.component.ts","../../../../libs/volo-lepton-x/src/lib/components/http-error/http-error.component.html","../../../../libs/volo-lepton-x/src/lib/lepton-x.module.ts","../../../../libs/volo-lepton-x/src/volosoft-abp.ng.theme.lepton-x.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\r\nimport { Validation, ValidationErrorComponent } from '@ngx-validate/core';\r\nimport { LocalizationPipe } from '@abp/ng.core';\r\n@Component({\r\n selector: 'abp-validation-error',\r\n // TODO: add validation error class to span\r\n template: `\r\n <span\r\n class=\"text-danger\"\r\n data-valmsg-for=\"Role.Name\"\r\n data-valmsg-replace=\"true\"\r\n >\r\n @for (error of abpErrors; track $index) {\r\n <span>\r\n {{ error.message | abpLocalization: error.interpoliteParams }}\r\n </span>\r\n }\r\n </span>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n styles: [\r\n `\r\n :host-context {\r\n order: 3;\r\n }\r\n `,\r\n ],\r\n imports: [LocalizationPipe],\r\n})\r\nexport class AbpValidationErrorComponent extends ValidationErrorComponent {\r\n get abpErrors(): Validation.Error[] & { interpoliteParams?: string[] } {\r\n if (!this.errors || !this.errors.length) {\r\n return [];\r\n }\r\n\r\n return this.errors.map((error) => {\r\n if (!error.message) {\r\n return error;\r\n }\r\n\r\n const index = error.message.indexOf('[');\r\n\r\n if (index > -1) {\r\n return {\r\n ...error,\r\n message: error.message.slice(0, index),\r\n interpoliteParams: error.message\r\n .slice(index + 1, error.message.length - 1)\r\n .split(','),\r\n };\r\n }\r\n\r\n return error;\r\n });\r\n }\r\n}\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { filter, map, switchMap } from 'rxjs/operators';\r\nimport { BehaviorSubject, combineLatest, of } from 'rxjs';\r\nimport {\r\n LanguageService,\r\n LpxLanguage,\r\n UserProfileService,\r\n} from '@volo/ngx-lepton-x.core';\r\nimport {\r\n ConfigStateService,\r\n CurrentUserDto,\r\n CurrentTenantDto,\r\n getLocaleDirection,\r\n LanguageInfo,\r\n NAVIGATE_TO_MANAGE_PROFILE,\r\n SessionStateService,\r\n} from '@abp/ng.core';\r\n\r\nimport {\r\n NAVIGATE_TO_MY_SECURITY_LOGS,\r\n OPEN_MY_LINK_USERS_MODAL,\r\n PROFILE_PICTURE,\r\n ProfilePictureImage,\r\n} from '@volo/abp.commercial.ng.ui/config';\r\nimport { UserMenuService } from '@abp/ng.theme.shared';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AbpSettingsService {\r\n private sessionService = inject(SessionStateService);\r\n private configStateService = inject(ConfigStateService);\r\n private languageService = inject(LanguageService);\r\n private userProfileService = inject(UserProfileService);\r\n private profilePicture$ = inject<BehaviorSubject<ProfilePictureImage>>(PROFILE_PICTURE);\r\n navigateToManageProfile = inject(NAVIGATE_TO_MANAGE_PROFILE);\r\n navigateToMySecurityLogs = inject(NAVIGATE_TO_MY_SECURITY_LOGS);\r\n openMyLinkUsersModal = inject(OPEN_MY_LINK_USERS_MODAL, { optional: true })!;\r\n private userMenuService = inject(UserMenuService);\r\n\r\n\r\n setUpListeners() {\r\n this.listenToLangChange();\r\n this.setLanguageOptions();\r\n this.setUserProfile();\r\n this.setProfilePicture();\r\n this.setUserMenuGroups();\r\n }\r\n\r\n setUserProfile() {\r\n const emptyStringOnNull = (value?: string) => value || '';\r\n\r\n const currentUser$ = this.configStateService\r\n .getOne$('currentUser')\r\n .pipe(filter<CurrentUserDto>(Boolean));\r\n\r\n const currentTenant$ = this.configStateService\r\n .getOne$('currentTenant')\r\n .pipe(filter<CurrentTenantDto>(Boolean));\r\n\r\n combineLatest([currentUser$, currentTenant$]).subscribe(\r\n ([currentUser, currentTenant]) => {\r\n this.userProfileService.patchUser({\r\n id: currentUser.id,\r\n isAuthenticated: currentUser.isAuthenticated,\r\n userName: currentUser.userName,\r\n fullName:\r\n emptyStringOnNull(currentUser.name) +\r\n ' ' +\r\n emptyStringOnNull(currentUser.surName),\r\n email: currentUser.email,\r\n tenant: currentTenant,\r\n });\r\n }\r\n );\r\n }\r\n\r\n setUserMenuGroups() {\r\n this.userMenuService.items$.subscribe((userMenu) => {\r\n const userActionGroups = userMenu.reduce(\r\n (acc, curr, index) => {\r\n const menuItem = {\r\n icon: curr.textTemplate?.icon,\r\n text: curr.textTemplate?.text,\r\n component: curr?.component,\r\n action: () => {\r\n curr.action();\r\n return of(true);\r\n },\r\n visible: curr.visible,\r\n };\r\n const setIndex = index === userMenu.length - 1 ? 1 : 0;\r\n acc[setIndex].push(menuItem);\r\n return acc;\r\n },\r\n [[], []]\r\n );\r\n\r\n this.userProfileService.patchUser({\r\n userActionGroups,\r\n });\r\n });\r\n }\r\n\r\n setProfilePicture() {\r\n this.profilePicture$\r\n .pipe(filter<ProfilePictureImage>(Boolean))\r\n .subscribe((avatar) =>\r\n this.userProfileService.patchUser({\r\n avatar: {\r\n type: avatar.type,\r\n source: avatar.source || '',\r\n },\r\n })\r\n );\r\n }\r\n\r\n setLanguageOptions() {\r\n this.sessionService\r\n .getLanguage$()\r\n .pipe(\r\n switchMap((currentLang) =>\r\n this.configStateService.getDeep$('localization.languages').pipe(\r\n filter<LanguageInfo[]>(Boolean),\r\n map((languages: LanguageInfo[]) =>\r\n languages.map<LpxLanguage>(({ cultureName, ...rest }) => ({\r\n ...rest,\r\n cultureName,\r\n selected: cultureName === currentLang,\r\n isRTL: getLocaleDirection(cultureName) === 'rtl',\r\n }))\r\n )\r\n )\r\n )\r\n )\r\n .subscribe((settings) => {\r\n this.languageService.setLanguages(settings);\r\n });\r\n }\r\n\r\n listenToLangChange() {\r\n this.languageService.selectedLanguage$\r\n .pipe(filter<LpxLanguage | undefined>(Boolean))\r\n .subscribe((lang) => {\r\n this.sessionService.setLanguage(lang?.cultureName || '');\r\n });\r\n }\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nexport const HTTP_ERROR_PATH = new InjectionToken<string>('HTTP_ERROR_PATH');\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nexport const LPX_TRANSLATE_KEY_MAP_TOKEN = new InjectionToken<{\r\n [key: string]: string;\r\n}>('LPX_TRANSLATE_KEY_MAP_TOKEN');\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport {\r\n CreateErrorComponentService,\r\n ErrorScreenErrorCodes,\r\n HttpErrorWrapperComponent,\r\n} from '@abp/ng.theme.shared';\r\nimport { HTTP_ERROR_PATH } from '../tokens';\r\n\r\n@Injectable()\r\nexport class AbpCreateErrorComponentService extends CreateErrorComponentService {\r\n protected readonly router: Router;\r\n protected readonly httpErrorPath: string;\r\n\r\n constructor() {\r\n super();\r\n this.router = inject(Router);\r\n this.httpErrorPath = inject(HTTP_ERROR_PATH);\r\n }\r\n\r\n override execute(instance: Partial<HttpErrorWrapperComponent>): void {\r\n if (this.canCreateCustomError(instance.status as ErrorScreenErrorCodes)) {\r\n super.execute(instance);\r\n return;\r\n }\r\n\r\n const queryParams = { status: instance.status };\r\n this.router.navigate([this.httpErrorPath], { queryParams });\r\n }\r\n}\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { LocalizationService } from '@abp/ng.core';\r\nimport {\r\n flatArrayDeepToObject,\r\n TranslateService,\r\n} from '@volo/ngx-lepton-x.core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { LPX_TRANSLATE_KEY_MAP_TOKEN } from '../tokens/translate-key-map';\r\n\r\n@Injectable()\r\nexport class AbpTranslateService implements TranslateService {\r\n private localization = inject(LocalizationService);\r\n private translateKeys = inject<Array<any>>(LPX_TRANSLATE_KEY_MAP_TOKEN);\r\n\r\n\r\n get(key: string, defaultValue: string | undefined): string {\r\n const keyToTranslate = this.getKey(key);\r\n if (keyToTranslate) {\r\n return this.localization.instant({\r\n key: keyToTranslate,\r\n defaultValue,\r\n });\r\n }\r\n\r\n return defaultValue || key;\r\n }\r\n\r\n get$(key: string, defaultValue: string | undefined): Observable<string> {\r\n const keyToTranslate = this.getKey(key);\r\n if (keyToTranslate) {\r\n return this.localization.get({\r\n key: keyToTranslate,\r\n defaultValue,\r\n });\r\n }\r\n\r\n return of(defaultValue || key);\r\n }\r\n\r\n private getKey(key: string): string | undefined {\r\n const keys = flatArrayDeepToObject(this.translateKeys);\r\n return keys[key] ? keys[key] : key.includes('::') ? key : undefined;\r\n }\r\n}\r\n","import { Injectable, inject } from '@angular/core';\r\nimport { AuthService, UserProfileService } from '@volo/ngx-lepton-x.core';\r\nimport { map } from 'rxjs/operators';\r\nimport { AuthService as AuthCoreService } from '@abp/ng.core';\r\n\r\n@Injectable()\r\nexport class AbpAuthService implements AuthService {\r\n private userProfileService = inject(UserProfileService);\r\n private authService = inject(AuthCoreService);\r\n\r\n\r\n isUserExists$ = this.userProfileService.user$.pipe(\r\n map((user) => user && !!user.userName)\r\n );\r\n\r\n navigateToLogin(): void {\r\n this.authService.navigateToLogin();\r\n }\r\n}\r\n","import { inject, provideAppInitializer } from '@angular/core';\r\nimport {\r\n AbpNavbarService,\r\n AbpToolbarService,\r\n} from '@volo/abp.ng.lepton-x.core';\r\nimport { AbpSettingsService } from '../services';\r\n\r\nexport const INIT_SERVICE_PROVIDER = provideAppInitializer(() => {\r\n initServices();\r\n});\r\n\r\nexport function initServices() {\r\n const navbar = inject(AbpNavbarService);\r\n const abpToolbar = inject(AbpToolbarService);\r\n const setting = inject(AbpSettingsService);\r\n\r\n abpToolbar.listenNavItems();\r\n setting.setUpListeners();\r\n navbar.initRoutes();\r\n}\r\n","import { inject, PLATFORM_ID, provideAppInitializer } from '@angular/core';\r\nimport { isPlatformServer } from '@angular/common';\r\n\r\nexport const LPX_STYLE_PROVIDER = provideAppInitializer(() => {\r\n const platformId = inject(PLATFORM_ID);\r\n if (isPlatformServer(platformId)) {\r\n return Promise.resolve();\r\n }\r\n const loader = document.querySelector('#lp-page-loader') as HTMLElement;\r\n if (loader) {\r\n loader.style.background = 'var(--background)';\r\n setTimeout(() => loader.parentNode?.removeChild(loader), 500);\r\n }\r\n return Promise.resolve();\r\n});\r\n","import { Provider } from '@angular/core';\r\nimport {\r\n LanguageTranslateKeys,\r\n LanguageTranslateValues,\r\n LPX_TRANSLATE_SERVICE_TOKEN,\r\n} from '@volo/ngx-lepton-x.core';\r\nimport { LocalizationService } from '@abp/ng.core';\r\nimport { AbpTranslateService } from '../services/abp-translate.service';\r\nimport { LPX_TRANSLATE_KEY_MAP_TOKEN } from '../tokens/translate-key-map';\r\nimport {\r\n ThemeTranslateKeys,\r\n ThemeTranslateValues,\r\n} from '@volosoft/ngx-lepton-x';\r\n\r\nexport const LPX_TRANSLATE_PROVIDER: Provider = {\r\n provide: LPX_TRANSLATE_SERVICE_TOKEN,\r\n useFactory: () => {\r\n return new AbpTranslateService();\r\n },\r\n deps: [LocalizationService, LPX_TRANSLATE_KEY_MAP_TOKEN],\r\n};\r\nexport const translateKeys: ThemeTranslateValues & LanguageTranslateValues = {\r\n [LanguageTranslateKeys.SettingsTitle]: 'LeptonX::Language',\r\n [ThemeTranslateKeys.AppearanceTitle]: 'LeptonX::Appearance',\r\n [ThemeTranslateKeys.DarkMode]: 'LeptonX::Theme:dark',\r\n [ThemeTranslateKeys.LightMode]: 'LeptonX::Theme:light',\r\n [ThemeTranslateKeys.SemiDarkMode]: 'LeptonX::Theme:dim',\r\n [ThemeTranslateKeys.System]: 'LeptonX::Theme:system',\r\n};\r\nexport const LPX_TRANSLATE_KEYS_PROVIDER: Provider = {\r\n provide: LPX_TRANSLATE_KEY_MAP_TOKEN,\r\n multi: true,\r\n useValue: translateKeys,\r\n};\r\n","import { ReplaceableComponentsService } from '@abp/ng.core';\r\nimport { inject, provideAppInitializer } from '@angular/core';\r\nimport { eThemeLeptonXComponents } from '../enums';\r\nimport { AccountLayoutComponent } from '@volosoft/abp.ng.theme.lepton-x/account';\r\n\r\nexport const ACCOUNT_LAYOUT_PROVIDER = provideAppInitializer(() => {\r\n initAccountLayout();\r\n});\r\n\r\nexport function initAccountLayout() {\r\n const replaceableComponents = inject(ReplaceableComponentsService);\r\n replaceableComponents.add({\r\n key: eThemeLeptonXComponents.AccountLayout,\r\n component: AccountLayoutComponent,\r\n });\r\n}\r\n","import { EnvironmentProviders } from '@angular/core';\r\nimport { provideRouter } from '@angular/router';\r\nimport { ThemeLeptonXModuleOptions } from './theme-lepton-x.provider';\r\n\r\nexport function leptonXRoutes(\r\n options: ThemeLeptonXModuleOptions,\r\n): EnvironmentProviders {\r\n const { httpError } = options || {};\r\n\r\n return provideRouter([\r\n {\r\n pathMatch: 'full',\r\n path: httpError?.errorPath || 'error',\r\n loadComponent: () =>\r\n import('./../components/http-error/http-error.component').then(\r\n (c) => c.HttpErrorComponent,\r\n ),\r\n },\r\n ]);\r\n}\r\n","import { EnvironmentProviders, Provider } from '@angular/core';\r\nimport { CreateErrorComponentService } from '@abp/ng.theme.shared';\r\nimport { AbpCreateErrorComponentService } from '../services';\r\nimport { HTTP_ERROR_PATH } from '../tokens';\r\nimport { leptonXRoutes } from './lepton-x.routes';\r\nimport { ThemeLeptonXModuleOptions } from './theme-lepton-x.provider';\r\n\r\nexport function httpErrorProvider(\r\n options: ThemeLeptonXModuleOptions,\r\n): (Provider | EnvironmentProviders)[] {\r\n const { httpError } = options || {};\r\n\r\n return [\r\n {\r\n provide: HTTP_ERROR_PATH,\r\n useValue: httpError?.errorPath || 'error',\r\n },\r\n {\r\n provide: CreateErrorComponentService,\r\n useClass: AbpCreateErrorComponentService,\r\n },\r\n leptonXRoutes(options),\r\n ];\r\n}\r\n","export enum eUserMenuItems {\r\n Sessions = 'Sessions',\r\n SwitchTenant = 'SwitchTenant',\r\n ExternalLogins = 'ExternalLogins',\r\n LinkedAccounts = 'LinkedAccounts',\r\n MyAccount = 'MyAccount',\r\n SecurityLogs = 'SecurityLogs',\r\n BackToImpersonator = 'BackToImpersonator',\r\n AuthorityDelegation = 'AuthorityDelegation',\r\n Logout = 'Logout',\r\n}\r\n","import { inject, provideAppInitializer } from '@angular/core';\r\nimport { map } from 'rxjs';\r\nimport {\r\n AuthService,\r\n ConfigStateService,\r\n EnvironmentService,\r\n NAVIGATE_TO_MANAGE_PROFILE,\r\n TenantUserSharingStrategy,\r\n} from '@abp/ng.core';\r\nimport { UserMenuService } from '@abp/ng.theme.shared';\r\nimport {\r\n NAVIGATE_TO_MY_SESSIONS,\r\n NAVIGATE_TO_MY_SECURITY_LOGS,\r\n OPEN_MY_LINK_USERS_MODAL,\r\n OPEN_AUTHORITY_DELEGATION_MODAL,\r\n NAVIGATE_TO_MY_EXTERNAL_LOGINS,\r\n OPEN_SWITCH_TENANT_MODAL,\r\n} from '@volo/abp.commercial.ng.ui/config';\r\nimport { eUserMenuItems } from '../enums/user-menu-items';\r\n\r\nexport const LEPTON_X_USER_MENU_PROVIDERS = [\r\n provideAppInitializer(() => {\r\n configureUserMenu();\r\n }),\r\n];\r\n\r\nexport function configureUserMenu() {\r\n const userMenu = inject(UserMenuService);\r\n const authService = inject(AuthService);\r\n const configState = inject(ConfigStateService);\r\n const environment = inject(EnvironmentService);\r\n\r\n const navigateToMySessions = inject(NAVIGATE_TO_MY_SESSIONS);\r\n const navigateToMyExternalLogins = inject(NAVIGATE_TO_MY_EXTERNAL_LOGINS);\r\n const navigateToManageProfile = inject(NAVIGATE_TO_MANAGE_PROFILE);\r\n const navigateToMySecurityLogs = inject(NAVIGATE_TO_MY_SECURITY_LOGS);\r\n\r\n const openMyLinkUsersModal = inject(OPEN_MY_LINK_USERS_MODAL, {\r\n optional: true,\r\n }) as () => void;\r\n\r\n const openAuthorityDelegationModal = inject(OPEN_AUTHORITY_DELEGATION_MODAL, {\r\n optional: true,\r\n }) as () => void;\r\n\r\n const openSwitchTenantModal = inject(OPEN_SWITCH_TENANT_MODAL, {\r\n optional: true,\r\n }) as (() => void) | null;\r\n\r\n userMenu.addItems([\r\n {\r\n id: eUserMenuItems.Sessions,\r\n order: 100,\r\n textTemplate: {\r\n icon: 'bi bi-clock-fill',\r\n text: 'AbpAccount::Sessions',\r\n },\r\n action: () => navigateToMySessions(),\r\n },\r\n {\r\n id: eUserMenuItems.SwitchTenant,\r\n order: 101,\r\n textTemplate: {\r\n icon: 'bi bi-arrow-left-right',\r\n text: 'AbpAccount::SwitchTenant',\r\n },\r\n visible: () => {\r\n if (!openSwitchTenantModal) return false;\r\n return configState.getOne$('multiTenancy').pipe(\r\n map(\r\n multiTenancy =>\r\n multiTenancy?.isEnabled &&\r\n multiTenancy?.userSharingStrategy === TenantUserSharingStrategy.Shared,\r\n ),\r\n );\r\n },\r\n action: () => openSwitchTenantModal?.(),\r\n },\r\n {\r\n id: eUserMenuItems.ExternalLogins,\r\n order: 102,\r\n textTemplate: {\r\n icon: 'bi bi-person-circle',\r\n text: 'AbpAccount::ExternalLogins',\r\n },\r\n action: () => navigateToMyExternalLogins(),\r\n visible: () => {\r\n return environment.getEnvironment$().pipe(\r\n map(({ oAuthConfig }) => {\r\n return oAuthConfig?.responseType === 'code';\r\n }),\r\n );\r\n },\r\n },\r\n {\r\n id: eUserMenuItems.LinkedAccounts,\r\n order: 103,\r\n textTemplate: {\r\n icon: 'bi bi-link',\r\n text: 'AbpAccount::LinkedAccounts',\r\n },\r\n action: () => openMyLinkUsersModal(),\r\n visible: () => !!openMyLinkUsersModal,\r\n },\r\n {\r\n id: eUserMenuItems.AuthorityDelegation,\r\n order: 104,\r\n textTemplate: {\r\n text: 'AbpAccount::AuthorityDelegation',\r\n icon: 'fa fa-users',\r\n },\r\n visible: () => {\r\n return configState\r\n .getOne$('currentUser')\r\n .pipe(map(({ impersonatorUserId }) => !Boolean(impersonatorUserId)));\r\n },\r\n action: () => openAuthorityDelegationModal(),\r\n },\r\n {\r\n id: eUserMenuItems.MyAccount,\r\n order: 105,\r\n textTemplate: {\r\n icon: 'bi bi-sliders',\r\n text: 'AbpAccount::MyAccount',\r\n },\r\n action: () => navigateToManageProfile(),\r\n },\r\n {\r\n id: eUserMenuItems.SecurityLogs,\r\n order: 106,\r\n textTemplate: {\r\n icon: 'bi bi-list-ul',\r\n text: 'AbpAccount::MySecurityLogs',\r\n },\r\n action: () => navigateToMySecurityLogs(),\r\n },\r\n {\r\n id: eUserMenuItems.Logout,\r\n order: 108, // The order has taken to 108 deliberately since we moved the back to impersonator item to the end of the menu\r\n textTemplate: {\r\n icon: 'bi bi-box-arrow-right',\r\n text: 'AbpUi::Logout',\r\n },\r\n action: () => {\r\n authService.logout().subscribe();\r\n },\r\n },\r\n ]);\r\n}\r\n","import {\r\n Provider,\r\n EnvironmentProviders,\r\n makeEnvironmentProviders,\r\n} from '@angular/core';\r\nimport {\r\n VALIDATION_ERROR_TEMPLATE,\r\n VALIDATION_INVALID_CLASSES,\r\n VALIDATION_TARGET_SELECTOR,\r\n} from '@ngx-validate/core';\r\nimport { LpxStyles } from '@volo/ngx-lepton-x.core';\r\nimport { LpxOptions, provideLpx, withLpxOptions } from '@volosoft/ngx-lepton-x';\r\nimport { PROFILE_PICTURE_PROVIDERS } from '@volo/abp.commercial.ng.ui/config';\r\nimport { provideLeptonXAbpCore } from '@volo/abp.ng.lepton-x.core';\r\nimport { AbpValidationErrorComponent } from '../components';\r\nimport {\r\n LPX_TRANSLATE_KEYS_PROVIDER,\r\n LPX_TRANSLATE_PROVIDER,\r\n httpErrorProvider,\r\n INIT_SERVICE_PROVIDER,\r\n LPX_STYLE_PROVIDER,\r\n LEPTON_X_USER_MENU_PROVIDERS,\r\n ACCOUNT_LAYOUT_PROVIDER,\r\n} from './';\r\n\r\nexport type ThemeLeptonXModuleOptions = LpxOptions;\r\n\r\nexport enum ThemeLeptonXFeatureKind {\r\n Options,\r\n}\r\n\r\nexport interface ThemeLeptonXFeature<KindT extends ThemeLeptonXFeatureKind> {\r\n ɵkind: KindT;\r\n ɵproviders: (Provider | EnvironmentProviders)[];\r\n}\r\n\r\nfunction makeThemeLeptonXFeature<KindT extends ThemeLeptonXFeatureKind>(\r\n kind: KindT,\r\n providers: (Provider | EnvironmentProviders)[],\r\n): ThemeLeptonXFeature<KindT> {\r\n return {\r\n ɵkind: kind,\r\n ɵproviders: providers,\r\n };\r\n}\r\n\r\nexport function withThemeLeptonXOptions(\r\n options = {} as ThemeLeptonXModuleOptions,\r\n): ThemeLeptonXFeature<ThemeLeptonXFeatureKind.Options> {\r\n const lpxModuleOptions: LpxOptions = {\r\n ...options,\r\n styleFactory: (styles: LpxStyles) => {\r\n styles.push({\r\n bundleName: 'abp-bundle',\r\n });\r\n if (options?.styleFactory) {\r\n return options.styleFactory(styles);\r\n }\r\n return styles;\r\n },\r\n };\r\n return makeThemeLeptonXFeature(ThemeLeptonXFeatureKind.Options, [\r\n provideLpx(withLpxOptions(lpxModuleOptions)),\r\n httpErrorProvider(options),\r\n ]);\r\n}\r\n\r\nexport function provideAbpValidationError(): EnvironmentProviders {\r\n const providers = [\r\n {\r\n provide: VALIDATION_ERROR_TEMPLATE,\r\n useValue: AbpValidationErrorComponent,\r\n },\r\n {\r\n provide: VALIDATION_INVALID_CLASSES,\r\n useValue: 'is-invalid',\r\n },\r\n {\r\n provide: VALIDATION_TARGET_SELECTOR,\r\n useValue: '.form-group',\r\n },\r\n ];\r\n\r\n return makeEnvironmentProviders(providers);\r\n}\r\n\r\nexport function provideThemeLeptonX(\r\n ...features: ThemeLeptonXFeature<ThemeLeptonXFeatureKind>[]\r\n): EnvironmentProviders {\r\n const providers: (Provider | EnvironmentProviders)[] = [\r\n LPX_STYLE_PROVIDER,\r\n PROFILE_PICTURE_PROVIDERS,\r\n LEPTON_X_USER_MENU_PROVIDERS,\r\n INIT_SERVICE_PROVIDER,\r\n provideAbpValidationError(),\r\n provideLeptonXAbpCore(),\r\n ACCOUNT_LAYOUT_PROVIDER,\r\n provideLpx(),\r\n LPX_TRANSLATE_KEYS_PROVIDER,\r\n LPX_TRANSLATE_PROVIDER,\r\n ];\r\n\r\n features.forEach(({ ɵproviders }) => providers.push(...ɵproviders));\r\n\r\n return makeEnvironmentProviders(providers);\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\r\nimport { CoreModule } from '@abp/ng.core';\r\nimport { AbpValidationErrorComponent } from './abp-validation-error.component';\r\nimport { provideAbpValidationError } from '../../providers';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n CoreModule,\r\n NgxValidateCoreModule,\r\n AbpValidationErrorComponent,\r\n ],\r\n exports: [AbpValidationErrorComponent, NgxValidateCoreModule],\r\n})\r\nexport class AbpValidationErrorModule {\r\n /**\r\n * @deprecated `AbpValidationErrorModule.forRoot()` is deprecated. You can use `provideAbpValidationError` **function** instead.\r\n */\r\n static forRoot(): ModuleWithProviders<AbpValidationErrorModule> {\r\n return {\r\n ngModule: AbpValidationErrorModule,\r\n providers: [provideAbpValidationError()],\r\n };\r\n }\r\n}\r\n","import {\r\n Component,\r\n computed,\r\n inject,\r\n PLATFORM_ID,\r\n signal,\r\n} from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { isPlatformBrowser, Location } from '@angular/common';\r\nimport { Subject } from 'rxjs';\r\nimport {\r\n LocalizationPipe,\r\n ReplaceableTemplateDirective,\r\n RouterEvents,\r\n} from '@abp/ng.core';\r\nimport { HTTP_ERROR_STATUS, HTTP_ERROR_DETAIL } from '@abp/ng.theme.shared';\r\nimport { eThemeLeptonXComponents } from '../../enums';\r\n\r\n@Component({\r\n selector: 'abp-http-error',\r\n imports: [LocalizationPipe, ReplaceableTemplateDirective],\r\n templateUrl: './http-error.component.html',\r\n})\r\nexport class HttpErrorComponent {\r\n protected readonly router = inject(Router);\r\n protected readonly activatedRoute = inject(ActivatedRoute);\r\n protected readonly location = inject(Location);\r\n protected readonly routerEvents = inject(RouterEvents);\r\n protected readonly platformId = inject(PLATFORM_ID);\r\n\r\n public readonly destroy$: Subject<void>;\r\n\r\n protected readonly errorComponentKey = eThemeLeptonXComponents.HttpError;\r\n protected readonly status = signal(0);\r\n\r\n readonly lastNavigation = this.routerEvents.previousNavigation;\r\n readonly currentNavigation = this.routerEvents.currentNavigation;\r\n\r\n protected readonly statusText = computed(\r\n () => HTTP_ERROR_STATUS[this.status()] ?? '',\r\n );\r\n\r\n protected readonly detail = computed(\r\n () => HTTP_ERROR_DETAIL[this.status()] ?? '',\r\n );\r\n\r\n constructor() {\r\n const { status } = this.activatedRoute.snapshot.queryParams;\r\n\r\n if (!isNaN(status)) {\r\n this.status.set(+status);\r\n }\r\n }\r\n\r\n goBack(): void {\r\n\r\n if (!isPlatformBrowser(this.platformId)) {\r\n return;\r\n }\r\n\r\n const url =\r\n this.status() === 404 ? this.currentNavigation() : this.lastNavigation();\r\n\r\n if (url) {\r\n this.router.navigateByUrl(url, { onSameUrlNavigation: 'reload' });\r\n } else {\r\n this.location.back();\r\n }\r\n\r\n this.destroy$?.next();\r\n }\r\n\r\n goHome(): void {\r\n this.router.navigateByUrl('/', { onSameUrlNavigation: 'reload' });\r\n this.destroy$?.next();\r\n }\r\n}\r\n","<ng-container *abpReplaceableTemplate=\"{ componentKey: errorComponentKey }\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-10 col-md-11 mx-auto\">\r\n <div\r\n class=\"d-flex flex-column justify-content-center min-vh-100 align-items-center\"\r\n >\r\n <div class=\"card\">\r\n <div class=\"card-body p-lg-5\">\r\n <div class=\"row\">\r\n <div class=\"col-auto d-flex align-items-center\">\r\n <i\r\n class=\"bi bi-emoji-frown text-primary mb-3 mb-md-0 mx-3 mx-md-4\"\r\n style=\"font-size: 12em\"\r\n ></i>\r\n </div>\r\n <div class=\"col flex-center ps-lg-4\">\r\n <div class=\"status-content\">\r\n <h1 class=\"fw-bolder display-1 text-brand\">\r\n {{ status() }}\r\n </h1>\r\n <h2 class=\"mb-0\">{{ statusText() | abpLocalization }}</h2>\r\n <h5 class=\"text-muted\">{{ detail() | abpLocalization }}</h5>\r\n\r\n @if (lastNavigation() && status() !== 403) {\r\n <a class=\"btn btn-primary soft me-2\" (click)=\"goBack()\">\r\n {{ 'AbpUi::GoBack' | abpLocalization }}\r\n </a>\r\n }\r\n <a class=\"btn btn-primary\" (click)=\"goHome()\">\r\n {{ 'AbpUi::GoHomePage' | abpLocalization }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport {\r\n provideThemeLeptonX,\r\n ThemeLeptonXModuleOptions,\r\n withThemeLeptonXOptions,\r\n} from './providers';\r\n\r\n@NgModule()\r\nexport class ThemeLeptonXModule {\r\n /**\r\n * @deprecated `ThemeLeptonXModule.forRoot()` is deprecated. You can use `provideThemeLeptonX` **function** instead.\r\n */\r\n static forRoot(\r\n options?: ThemeLeptonXModuleOptions,\r\n ): ModuleWithProviders<ThemeLeptonXModule> {\r\n return {\r\n ngModule: ThemeLeptonXModule,\r\n providers: [provideThemeLeptonX(withThemeLeptonXOptions(options))],\r\n };\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["AuthCoreService","map"],"mappings":"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"}
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@volosoft/abp.ng.theme.lepton-x",
3
- "version": "5.2.0",
3
+ "version": "5.3.0-rc.1",
4
4
  "homepage": "https://www.leptontheme.com/",
5
5
  "dependencies": {
6
6
  "tslib": "^2.3.0",
7
7
  "@ng-bootstrap/ng-bootstrap": "~20.0.0",
8
- "@abp/ng.theme.shared": "~10.2.0",
9
- "@volo/abp.commercial.ng.ui": "~10.2.0",
10
- "@volo/abp.ng.account.core": "~10.2.0",
11
- "@volo/abp.ng.lepton-x.core": "~5.2.0",
12
- "@volosoft/ngx-lepton-x": "~5.2.0"
8
+ "@abp/ng.theme.shared": "~10.3.0-rc.1",
9
+ "@volo/abp.commercial.ng.ui": "~10.3.0-rc.1",
10
+ "@volo/abp.ng.account.core": "~10.3.0-rc.1",
11
+ "@volo/abp.ng.lepton-x.core": "~5.3.0-rc.1",
12
+ "@volosoft/ngx-lepton-x": "~5.3.0-rc.1"
13
13
  },
14
14
  "publishConfig": {
15
15
  "access": "public"
@@ -22,15 +22,15 @@
22
22
  "default": "./package.json"
23
23
  },
24
24
  ".": {
25
- "types": "./index.d.ts",
25
+ "types": "./types/volosoft-abp.ng.theme.lepton-x.d.ts",
26
26
  "default": "./fesm2022/volosoft-abp.ng.theme.lepton-x.mjs"
27
27
  },
28
28
  "./account": {
29
- "types": "./account/index.d.ts",
29
+ "types": "./types/volosoft-abp.ng.theme.lepton-x-account.d.ts",
30
30
  "default": "./fesm2022/volosoft-abp.ng.theme.lepton-x-account.mjs"
31
31
  },
32
32
  "./layouts": {
33
- "types": "./layouts/index.d.ts",
33
+ "types": "./types/volosoft-abp.ng.theme.lepton-x-layouts.d.ts",
34
34
  "default": "./fesm2022/volosoft-abp.ng.theme.lepton-x-layouts.mjs"
35
35
  }
36
36
  },
@@ -53,6 +53,7 @@
53
53
  "webapp"
54
54
  ],
55
55
  "module": "fesm2022/volosoft-abp.ng.theme.lepton-x.mjs",
56
- "typings": "index.d.ts",
57
- "sideEffects": false
56
+ "typings": "types/volosoft-abp.ng.theme.lepton-x.d.ts",
57
+ "sideEffects": false,
58
+ "type": "module"
58
59
  }
@@ -56,6 +56,7 @@ declare const enum eThemeLeptonXComponents {
56
56
 
57
57
  declare enum eUserMenuItems {
58
58
  Sessions = "Sessions",
59
+ SwitchTenant = "SwitchTenant",
59
60
  ExternalLogins = "ExternalLogins",
60
61
  LinkedAccounts = "LinkedAccounts",
61
62
  MyAccount = "MyAccount",