@abp/ng.theme.lepton-x 5.2.0 → 5.3.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/abp-ng.theme.lepton-x-account.mjs +17 -17
- package/fesm2022/abp-ng.theme.lepton-x-account.mjs.map +1 -1
- package/fesm2022/abp-ng.theme.lepton-x-layouts.mjs +22 -22
- package/fesm2022/abp-ng.theme.lepton-x.mjs +20 -20
- package/package.json +12 -11
- /package/{account/index.d.ts → types/abp-ng.theme.lepton-x-account.d.ts} +0 -0
- /package/{layouts/index.d.ts → types/abp-ng.theme.lepton-x-layouts.d.ts} +0 -0
- /package/{index.d.ts → types/abp-ng.theme.lepton-x.d.ts} +0 -0
|
@@ -26,7 +26,7 @@ class AccountLayoutService {
|
|
|
26
26
|
this.tenantBoxKey = 'Account.TenantBoxComponent';
|
|
27
27
|
this.route = inject(ActivatedRoute);
|
|
28
28
|
this.currentTenant$ = this.sessionState.getTenant$();
|
|
29
|
-
this.name = signal('', ...(ngDevMode ? [{ debugName: "name" }] : []));
|
|
29
|
+
this.name = signal('', ...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
|
|
30
30
|
}
|
|
31
31
|
get isTenantBoxVisibleForCurrentRoute() {
|
|
32
32
|
return this.getMostInnerChild().data.tenantBoxVisible ?? true;
|
|
@@ -78,10 +78,10 @@ class AccountLayoutService {
|
|
|
78
78
|
messageLocalizationParams: [this.name()],
|
|
79
79
|
});
|
|
80
80
|
}
|
|
81
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
82
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.
|
|
81
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AccountLayoutService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
82
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AccountLayoutService }); }
|
|
83
83
|
}
|
|
84
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
84
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AccountLayoutService, decorators: [{
|
|
85
85
|
type: Injectable
|
|
86
86
|
}] });
|
|
87
87
|
|
|
@@ -89,10 +89,10 @@ class TenantBoxComponent {
|
|
|
89
89
|
constructor() {
|
|
90
90
|
this.service = inject(AccountLayoutService);
|
|
91
91
|
}
|
|
92
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
93
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.
|
|
92
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: TenantBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
93
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: TenantBoxComponent, isStandalone: true, selector: "lpx-tenant-box", ngImport: i0, template: "@if ((service.currentTenant$ | async) || {}; as currentTenant) {\r\n <div class=\"card shadow-sm rounded mb-3\">\r\n <div class=\"card-body px-2 p-sm-3\">\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <span style=\"font-size: 0.8em\" class=\"text-uppercase text-muted\">{{\r\n 'AbpUiMultiTenancy::Tenant' | abpLocalization\r\n }}</span\r\n ><br />\r\n <h6 class=\"m-0 d-inline-block\">\r\n <i>{{\r\n currentTenant.name ||\r\n ('AbpUiMultiTenancy::NotSelected' | abpLocalization)\r\n }}</i>\r\n </h6>\r\n </div>\r\n <div class=\"col-auto\">\r\n <a\r\n id=\"AbpTenantSwitchLink\"\r\n href=\"javascript:void(0)\"\r\n class=\"btn btn-sm mt-3 btn-outline-primary\"\r\n (click)=\"service.onSwitch()\"\r\n >\r\n {{ 'AbpUiMultiTenancy::Switch' | abpLocalization }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <abp-modal\r\n size=\"md\"\r\n [(visible)]=\"service.isModalVisible\"\r\n [busy]=\"service.modalBusy\"\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 (ngModelChange)=\"service.name.set($event)\"\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 {{ 'AbpTenantManagement::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 <span>{{ 'AbpTenantManagement::Save' | abpLocalization }}</span>\r\n </abp-button>\r\n </ng-template>\r\n </abp-modal>\r\n}\r\n", dependencies: [{ 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: "directive", type: AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { 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: "pipe", type: LocalizationPipe, name: "abpLocalization" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
|
|
94
94
|
}
|
|
95
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
95
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: TenantBoxComponent, decorators: [{
|
|
96
96
|
type: Component,
|
|
97
97
|
args: [{ selector: 'lpx-tenant-box', imports: [
|
|
98
98
|
FormsModule,
|
|
@@ -112,10 +112,10 @@ class AuthWrapperComponent {
|
|
|
112
112
|
optional: true,
|
|
113
113
|
}) ?? 'ProjectName';
|
|
114
114
|
}
|
|
115
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
116
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.
|
|
115
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AuthWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
116
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: AuthWrapperComponent, isStandalone: true, selector: "lpx-auth-wrapper", providers: [AccountLayoutService], ngImport: i0, template: "<div class=\"row\">\r\n <div class=\"col-md-8 col-lg-5 mx-auto\">\r\n <div class=\"lpx-logo-container lpx-login-brand-text\">\r\n <a href=\"/\">\r\n <div class=\"lpx-brand-logo lpx-login-logo mx-auto\"></div>\r\n </a>\r\n <div class=\"lpx-brand-name lpx-login-name mx-auto\">{{ appName }}</div>\r\n </div>\r\n @if (\r\n (service.isMultiTenancyEnabled$ | async) && service.isTenantBoxVisible\r\n ) {\r\n <lpx-tenant-box\r\n *abpReplaceableTemplate=\"{ componentKey: service.tenantBoxKey }\"\r\n />\r\n }\r\n\r\n @if (service.enableLocalLogin$ | async) {\r\n <div class=\"card mt-3 shadow-sm rounded\">\r\n <div class=\"card-body p-2 p-sm-3\">\r\n <lpx-language-selection class=\"float-end\" />\r\n <ng-content />\r\n </div>\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", dependencies: [{ kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "component", type: TenantBoxComponent, selector: "lpx-tenant-box" }, { kind: "component", type: LanguageSelectionComponent, selector: "lpx-language-selection" }, { kind: "pipe", type: LocalizationPipe, name: "abpLocalization" }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
|
|
117
117
|
}
|
|
118
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
118
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AuthWrapperComponent, decorators: [{
|
|
119
119
|
type: Component,
|
|
120
120
|
args: [{ selector: 'lpx-auth-wrapper', imports: [
|
|
121
121
|
LocalizationPipe,
|
|
@@ -127,10 +127,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImpor
|
|
|
127
127
|
}] });
|
|
128
128
|
|
|
129
129
|
class AccountLayoutComponent {
|
|
130
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
131
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.
|
|
130
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AccountLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
131
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: AccountLayoutComponent, isStandalone: true, selector: "abp-account-layout", ngImport: i0, template: "<div class=\"lpx-scroll-container\">\r\n <div class=\"lpx-wrapper\">\r\n <div class=\"lpx-content-container m-0\">\r\n <div class=\"lpx-content\">\r\n <div class=\"container\">\r\n <abp-page-alert-container />\r\n <lpx-auth-wrapper>\r\n <router-outlet />\r\n </lpx-auth-wrapper>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "component", type: AuthWrapperComponent, selector: "lpx-auth-wrapper" }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: PageAlertContainerComponent, selector: "abp-page-alert-container" }] }); }
|
|
132
132
|
}
|
|
133
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
133
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AccountLayoutComponent, decorators: [{
|
|
134
134
|
type: Component,
|
|
135
135
|
args: [{ selector: 'abp-account-layout', imports: [AuthWrapperComponent, RouterOutlet, PageAlertContainerComponent], template: "<div class=\"lpx-scroll-container\">\r\n <div class=\"lpx-wrapper\">\r\n <div class=\"lpx-content-container m-0\">\r\n <div class=\"lpx-content\">\r\n <div class=\"container\">\r\n <abp-page-alert-container />\r\n <lpx-auth-wrapper>\r\n <router-outlet />\r\n </lpx-auth-wrapper>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
|
|
136
136
|
}] });
|
|
@@ -158,8 +158,8 @@ class AccountLayoutModule {
|
|
|
158
158
|
providers: [provideAccountLayout()],
|
|
159
159
|
};
|
|
160
160
|
}
|
|
161
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
162
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.
|
|
161
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AccountLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
162
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.8", ngImport: i0, type: AccountLayoutModule, imports: [RouterModule,
|
|
163
163
|
CoreModule,
|
|
164
164
|
LpxSideMenuLayoutModule,
|
|
165
165
|
ThemeSharedModule,
|
|
@@ -168,7 +168,7 @@ class AccountLayoutModule {
|
|
|
168
168
|
TenantBoxComponent,
|
|
169
169
|
AuthWrapperComponent,
|
|
170
170
|
AccountLayoutComponent] }); }
|
|
171
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.
|
|
171
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AccountLayoutModule, imports: [RouterModule,
|
|
172
172
|
CoreModule,
|
|
173
173
|
LpxSideMenuLayoutModule,
|
|
174
174
|
ThemeSharedModule,
|
|
@@ -178,7 +178,7 @@ class AccountLayoutModule {
|
|
|
178
178
|
AuthWrapperComponent,
|
|
179
179
|
AccountLayoutComponent] }); }
|
|
180
180
|
}
|
|
181
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
181
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AccountLayoutModule, decorators: [{
|
|
182
182
|
type: NgModule,
|
|
183
183
|
args: [{
|
|
184
184
|
imports: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abp-ng.theme.lepton-x-account.mjs","sources":["../../../../libs/abp-lepton-x/account/src/account-layout/services/account-layout.service.ts","../../../../libs/abp-lepton-x/account/src/account-layout/components/tenant-box/tenant-box.component.ts","../../../../libs/abp-lepton-x/account/src/account-layout/components/tenant-box/tenant-box.component.html","../../../../libs/abp-lepton-x/account/src/account-layout/components/auth-layout/auth-wrapper.component.ts","../../../../libs/abp-lepton-x/account/src/account-layout/components/auth-layout/auth-wrapper.component.html","../../../../libs/abp-lepton-x/account/src/account-layout/account-layout.component.ts","../../../../libs/abp-lepton-x/account/src/account-layout/account-layout.component.html","../../../../libs/abp-lepton-x/account/src/account-layout/providers/account-layout.provider.ts","../../../../libs/abp-lepton-x/account/src/account-layout/account-layout.module.ts","../../../../libs/abp-lepton-x/account/src/abp-ng.theme.lepton-x-account.ts"],"sourcesContent":["import { inject, Injectable, signal } from '@angular/core';\r\nimport { finalize } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport {\r\n AbpTenantService,\r\n ConfigStateService,\r\n CurrentTenantDto,\r\n MultiTenancyService,\r\n SessionStateService,\r\n} from '@abp/ng.core';\r\nimport { ToasterService } from '@abp/ng.theme.shared';\r\n\r\n@Injectable()\r\nexport class AccountLayoutService {\r\n private configState = inject(ConfigStateService);\r\n private multiTenancy = inject(MultiTenancyService);\r\n private toasterService = inject(ToasterService);\r\n private tenantService = inject(AbpTenantService);\r\n private sessionState = inject(SessionStateService);\r\n\r\n isMultiTenancyEnabled$ = this.configState.getDeep$('multiTenancy.isEnabled');\r\n enableLocalLogin$ = this.configState\r\n .getSetting$('Abp.Account.EnableLocalLogin')\r\n .pipe(map((value) => value?.toLowerCase() !== 'false'));\r\n\r\n tenantBoxKey = 'Account.TenantBoxComponent';\r\n route: ActivatedRoute = inject(ActivatedRoute);\r\n\r\n get isTenantBoxVisibleForCurrentRoute() {\r\n return this.getMostInnerChild().data.tenantBoxVisible ?? true;\r\n }\r\n\r\n get isTenantBoxVisible() {\r\n return (\r\n this.isTenantBoxVisibleForCurrentRoute &&\r\n this.multiTenancy.isTenantBoxVisible\r\n );\r\n }\r\n\r\n private getMostInnerChild() {\r\n let child = this.route.snapshot;\r\n let depth = 0;\r\n const depthLimit = 10;\r\n while (child.firstChild && depth < depthLimit) {\r\n child = child.firstChild;\r\n depth++;\r\n }\r\n return child;\r\n }\r\n\r\n currentTenant$ = this.sessionState.getTenant$();\r\n name = signal<string>('');\r\n isModalVisible!: boolean;\r\n modalBusy!: boolean;\r\n\r\n onSwitch() {\r\n const tenant = this.sessionState.getTenant();\r\n this.name.set(tenant?.name || '');\r\n this.isModalVisible = true;\r\n }\r\n\r\n save() {\r\n if (!this.name()) {\r\n this.setTenant(null);\r\n this.isModalVisible = false;\r\n return;\r\n }\r\n\r\n this.modalBusy = true;\r\n this.tenantService\r\n .findTenantByName(this.name())\r\n .pipe(finalize(() => (this.modalBusy = false)))\r\n .subscribe(({ success, tenantId: id, ...tenant }) => {\r\n if (!success) {\r\n this.showError();\r\n return;\r\n }\r\n\r\n this.setTenant({ ...tenant, id, isAvailable: true });\r\n this.isModalVisible = false;\r\n });\r\n }\r\n\r\n private setTenant(tenant: CurrentTenantDto | null) {\r\n this.sessionState.setTenant(tenant);\r\n this.configState.refreshAppState().subscribe();\r\n }\r\n\r\n private showError() {\r\n this.toasterService.error(\r\n 'AbpUiMultiTenancy::GivenTenantIsNotAvailable',\r\n 'AbpUi::Error',\r\n {\r\n messageLocalizationParams: [this.name()],\r\n },\r\n );\r\n }\r\n}\r\n","import { Component, inject } from '@angular/core';\r\nimport { AsyncPipe } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AutofocusDirective, LocalizationPipe } from '@abp/ng.core';\r\nimport {\r\n ButtonComponent,\r\n ModalCloseDirective,\r\n ModalComponent,\r\n} from '@abp/ng.theme.shared';\r\nimport { AccountLayoutService } from '../../services/account-layout.service';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'lpx-tenant-box',\r\n templateUrl: './tenant-box.component.html',\r\n imports: [\r\n FormsModule,\r\n AutofocusDirective,\r\n ModalCloseDirective,\r\n LocalizationPipe,\r\n ModalComponent,\r\n ButtonComponent,\r\n AsyncPipe\r\n],\r\n})\r\nexport class TenantBoxComponent {\r\n public service = inject(AccountLayoutService);\r\n}\r\n","@if ((service.currentTenant$ | async) || {}; as currentTenant) {\r\n <div class=\"card shadow-sm rounded mb-3\">\r\n <div class=\"card-body px-2 p-sm-3\">\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <span style=\"font-size: 0.8em\" class=\"text-uppercase text-muted\">{{\r\n 'AbpUiMultiTenancy::Tenant' | abpLocalization\r\n }}</span\r\n ><br />\r\n <h6 class=\"m-0 d-inline-block\">\r\n <i>{{\r\n currentTenant.name ||\r\n ('AbpUiMultiTenancy::NotSelected' | abpLocalization)\r\n }}</i>\r\n </h6>\r\n </div>\r\n <div class=\"col-auto\">\r\n <a\r\n id=\"AbpTenantSwitchLink\"\r\n href=\"javascript:void(0)\"\r\n class=\"btn btn-sm mt-3 btn-outline-primary\"\r\n (click)=\"service.onSwitch()\"\r\n >\r\n {{ 'AbpUiMultiTenancy::Switch' | abpLocalization }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <abp-modal\r\n size=\"md\"\r\n [(visible)]=\"service.isModalVisible\"\r\n [busy]=\"service.modalBusy\"\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 (ngModelChange)=\"service.name.set($event)\"\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 {{ 'AbpTenantManagement::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 <span>{{ 'AbpTenantManagement::Save' | abpLocalization }}</span>\r\n </abp-button>\r\n </ng-template>\r\n </abp-modal>\r\n}\r\n","import { Component, inject } from '@angular/core';\r\nimport { AsyncPipe } from '@angular/common';\r\nimport { LocalizationPipe, ReplaceableTemplateDirective } from '@abp/ng.core';\r\nimport { LOGO_APP_NAME_TOKEN } from '@abp/ng.theme.shared';\r\nimport { LanguageSelectionComponent } from '@volo/ngx-lepton-x.lite';\r\nimport { TenantBoxComponent } from '../tenant-box/tenant-box.component';\r\nimport { AccountLayoutService } from '../../services/account-layout.service';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'lpx-auth-wrapper',\r\n templateUrl: './auth-wrapper.component.html',\r\n imports: [\r\n LocalizationPipe,\r\n ReplaceableTemplateDirective,\r\n TenantBoxComponent,\r\n LanguageSelectionComponent,\r\n AsyncPipe\r\n],\r\n providers: [AccountLayoutService],\r\n})\r\nexport class AuthWrapperComponent {\r\n service = inject(AccountLayoutService);\r\n protected readonly appName =\r\n inject(LOGO_APP_NAME_TOKEN, {\r\n optional: true,\r\n }) ?? 'ProjectName';\r\n}\r\n","<div class=\"row\">\r\n <div class=\"col-md-8 col-lg-5 mx-auto\">\r\n <div class=\"lpx-logo-container lpx-login-brand-text\">\r\n <a href=\"/\">\r\n <div class=\"lpx-brand-logo lpx-login-logo mx-auto\"></div>\r\n </a>\r\n <div class=\"lpx-brand-name lpx-login-name mx-auto\">{{ appName }}</div>\r\n </div>\r\n @if (\r\n (service.isMultiTenancyEnabled$ | async) && service.isTenantBoxVisible\r\n ) {\r\n <lpx-tenant-box\r\n *abpReplaceableTemplate=\"{ componentKey: service.tenantBoxKey }\"\r\n />\r\n }\r\n\r\n @if (service.enableLocalLogin$ | async) {\r\n <div class=\"card mt-3 shadow-sm rounded\">\r\n <div class=\"card-body p-2 p-sm-3\">\r\n <lpx-language-selection class=\"float-end\" />\r\n <ng-content />\r\n </div>\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","import { Component } from '@angular/core';\r\nimport { RouterOutlet } from '@angular/router';\r\nimport { PageAlertContainerComponent } from '@volo/abp.ng.lepton-x.core';\r\nimport { AuthWrapperComponent } from './components/auth-layout/auth-wrapper.component';\r\n\r\n@Component({\r\n selector: 'abp-account-layout',\r\n templateUrl: './account-layout.component.html',\r\n imports: [AuthWrapperComponent, RouterOutlet, PageAlertContainerComponent],\r\n})\r\nexport class AccountLayoutComponent {}\r\n","<div class=\"lpx-scroll-container\">\r\n <div class=\"lpx-wrapper\">\r\n <div class=\"lpx-content-container m-0\">\r\n <div class=\"lpx-content\">\r\n <div class=\"container\">\r\n <abp-page-alert-container />\r\n <lpx-auth-wrapper>\r\n <router-outlet />\r\n </lpx-auth-wrapper>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import {\r\n EnvironmentProviders,\r\n inject,\r\n provideAppInitializer,\r\n} from '@angular/core';\r\nimport { ReplaceableComponentsService } from '@abp/ng.core';\r\nimport { AccountLayoutComponent } from '../account-layout.component';\r\n\r\nexport function provideAccountLayout(): EnvironmentProviders {\r\n return provideAppInitializer(() => {\r\n initAccountLayout();\r\n });\r\n}\r\n\r\nexport function initAccountLayout() {\r\n const replaceableComponents = inject(ReplaceableComponentsService);\r\n replaceableComponents.add({\r\n key: 'Theme.AccountLayoutComponent',\r\n component: AccountLayoutComponent,\r\n });\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { AccountLayoutComponent } from './account-layout.component';\r\nimport { TenantBoxComponent } from './components/tenant-box/tenant-box.component';\r\nimport { AuthWrapperComponent } from './components/auth-layout/auth-wrapper.component';\r\nimport { CoreModule } from '@abp/ng.core';\r\nimport { LpxSideMenuLayoutModule } from '@volo/ngx-lepton-x.lite/layouts';\r\nimport { LanguageSelectionModule } from '@volo/ngx-lepton-x.lite';\r\nimport { RouterModule } from '@angular/router';\r\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\r\nimport { PageAlertContainerModule } from '@volo/abp.ng.lepton-x.core';\r\nimport { provideAccountLayout } from './providers';\r\n\r\n@NgModule({\r\n imports: [\r\n RouterModule,\r\n CoreModule,\r\n LpxSideMenuLayoutModule,\r\n ThemeSharedModule,\r\n PageAlertContainerModule,\r\n LanguageSelectionModule,\r\n TenantBoxComponent,\r\n AuthWrapperComponent,\r\n AccountLayoutComponent,\r\n ],\r\n})\r\nexport class AccountLayoutModule {\r\n /***\r\n * @deprecated `AccountLayoutModule.forRoot()` is deprecated. You can use `provideAccountLayout()` **function** instead.\r\n */\r\n static forRoot(): ModuleWithProviders<AccountLayoutModule> {\r\n return {\r\n ngModule: AccountLayoutModule,\r\n providers: [provideAccountLayout()],\r\n };\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;MAca,oBAAoB,CAAA;AADjC,IAAA,WAAA,GAAA;AAEU,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,kBAAkB,CAAC;AACxC,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,mBAAmB,CAAC;AAC1C,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;AACvC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACxC,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,mBAAmB,CAAC;QAElD,IAAA,CAAA,sBAAsB,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,wBAAwB,CAAC;QAC5E,IAAA,CAAA,iBAAiB,GAAG,IAAI,CAAC;aACtB,WAAW,CAAC,8BAA8B;AAC1C,aAAA,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,KAAK,EAAE,WAAW,EAAE,KAAK,OAAO,CAAC,CAAC;QAEzD,IAAA,CAAA,YAAY,GAAG,4BAA4B;AAC3C,QAAA,IAAA,CAAA,KAAK,GAAmB,MAAM,CAAC,cAAc,CAAC;AAwB9C,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE;AAC/C,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAS,EAAE,gDAAC;AA8C1B,IAAA;AArEC,IAAA,IAAI,iCAAiC,GAAA;QACnC,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI;IAC/D;AAEA,IAAA,IAAI,kBAAkB,GAAA;QACpB,QACE,IAAI,CAAC,iCAAiC;AACtC,YAAA,IAAI,CAAC,YAAY,CAAC,kBAAkB;IAExC;IAEQ,iBAAiB,GAAA;AACvB,QAAA,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ;QAC/B,IAAI,KAAK,GAAG,CAAC;QACb,MAAM,UAAU,GAAG,EAAE;QACrB,OAAO,KAAK,CAAC,UAAU,IAAI,KAAK,GAAG,UAAU,EAAE;AAC7C,YAAA,KAAK,GAAG,KAAK,CAAC,UAAU;AACxB,YAAA,KAAK,EAAE;QACT;AACA,QAAA,OAAO,KAAK;IACd;IAOA,QAAQ,GAAA;QACN,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE;QAC5C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;AACjC,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI;IAC5B;IAEA,IAAI,GAAA;AACF,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE;AAChB,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;AACpB,YAAA,IAAI,CAAC,cAAc,GAAG,KAAK;YAC3B;QACF;AAEA,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AACrB,QAAA,IAAI,CAAC;AACF,aAAA,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE;AAC5B,aAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC;AAC7C,aAAA,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,MAAM,EAAE,KAAI;YAClD,IAAI,CAAC,OAAO,EAAE;gBACZ,IAAI,CAAC,SAAS,EAAE;gBAChB;YACF;AAEA,YAAA,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;AACpD,YAAA,IAAI,CAAC,cAAc,GAAG,KAAK;AAC7B,QAAA,CAAC,CAAC;IACN;AAEQ,IAAA,SAAS,CAAC,MAA+B,EAAA;AAC/C,QAAA,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC,SAAS,EAAE;IAChD;IAEQ,SAAS,GAAA;QACf,IAAI,CAAC,cAAc,CAAC,KAAK,CACvB,8CAA8C,EAC9C,cAAc,EACd;AACE,YAAA,yBAAyB,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AACzC,SAAA,CACF;IACH;8GAnFW,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAApB,oBAAoB,EAAA,CAAA,CAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBADhC;;;MCYY,kBAAkB,CAAA;AAd/B,IAAA,WAAA,GAAA;AAeS,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAC9C,IAAA;8GAFY,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECzB/B,iiFA0EA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED1DI,WAAW,qkCACX,kBAAkB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAClB,mBAAmB,EAAA,QAAA,EAAA,YAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAEnB,cAAc,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,SAAA,EAAA,+BAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,EAAA,MAAA,EAAA,QAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACd,eAAe,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,aAAA,EAAA,YAAA,EAAA,UAAA,EAAA,WAAA,EAAA,SAAA,EAAA,UAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,UAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAFf,gBAAgB,mDAGhB,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;2FAGA,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAd9B,SAAS;AAEE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gBAAgB,EAAA,OAAA,EAEjB;wBACP,WAAW;wBACX,kBAAkB;wBAClB,mBAAmB;wBACnB,gBAAgB;wBAChB,cAAc;wBACd,eAAe;wBACf;AACH,qBAAA,EAAA,QAAA,EAAA,iiFAAA,EAAA;;;MEFY,oBAAoB,CAAA;AAbjC,IAAA,WAAA,GAAA;AAcE,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,oBAAoB,CAAC;AACnB,QAAA,IAAA,CAAA,OAAO,GACxB,MAAM,CAAC,mBAAmB,EAAE;AAC1B,YAAA,QAAQ,EAAE,IAAI;SACf,CAAC,IAAI,aAAa;AACtB,IAAA;8GANY,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,SAAA,EAFpB,CAAC,oBAAoB,CAAC,0BCnBnC,6qCAoCA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDtBI,4BAA4B,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC5B,kBAAkB,EAAA,QAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAClB,0BAA0B,EAAA,QAAA,EAAA,wBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAH1B,gBAAgB,mDAIhB,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;2FAIA,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAbhC,SAAS;AAEE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,EAAA,OAAA,EAEnB;wBACP,gBAAgB;wBAChB,4BAA4B;wBAC5B,kBAAkB;wBAClB,0BAA0B;wBAC1B;qBACH,EAAA,SAAA,EACY,CAAC,oBAAoB,CAAC,EAAA,QAAA,EAAA,6qCAAA,EAAA;;;METtB,sBAAsB,CAAA;8GAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,8ECVnC,wZAcA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDNY,oBAAoB,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,YAAY,+KAAE,2BAA2B,EAAA,QAAA,EAAA,0BAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;2FAE9D,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAoB,WAErB,CAAC,oBAAoB,EAAE,YAAY,EAAE,2BAA2B,CAAC,EAAA,QAAA,EAAA,wZAAA,EAAA;;;SEA5D,oBAAoB,GAAA;IAClC,OAAO,qBAAqB,CAAC,MAAK;AAChC,QAAA,iBAAiB,EAAE;AACrB,IAAA,CAAC,CAAC;AACJ;SAEgB,iBAAiB,GAAA;AAC/B,IAAA,MAAM,qBAAqB,GAAG,MAAM,CAAC,4BAA4B,CAAC;IAClE,qBAAqB,CAAC,GAAG,CAAC;AACxB,QAAA,GAAG,EAAE,8BAA8B;AACnC,QAAA,SAAS,EAAE,sBAAsB;AAClC,KAAA,CAAC;AACJ;;MCKa,mBAAmB,CAAA;AAC9B;;AAEG;AACH,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,mBAAmB;AAC7B,YAAA,SAAS,EAAE,CAAC,oBAAoB,EAAE,CAAC;SACpC;IACH;8GATW,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,YAX5B,YAAY;YACZ,UAAU;YACV,uBAAuB;YACvB,iBAAiB;YACjB,wBAAwB;YACxB,uBAAuB;YACvB,kBAAkB;YAClB,oBAAoB;YACpB,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAGb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,YAX5B,YAAY;YACZ,UAAU;YACV,uBAAuB;YACvB,iBAAiB;YACjB,wBAAwB;YACxB,uBAAuB;YACvB,kBAAkB;YAClB,oBAAoB;YACpB,sBAAsB,CAAA,EAAA,CAAA,CAAA;;2FAGb,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAb/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,UAAU;wBACV,uBAAuB;wBACvB,iBAAiB;wBACjB,wBAAwB;wBACxB,uBAAuB;wBACvB,kBAAkB;wBAClB,oBAAoB;wBACpB,sBAAsB;AACvB,qBAAA;AACF,iBAAA;;;ACxBD;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"abp-ng.theme.lepton-x-account.mjs","sources":["../../../../libs/abp-lepton-x/account/src/account-layout/services/account-layout.service.ts","../../../../libs/abp-lepton-x/account/src/account-layout/components/tenant-box/tenant-box.component.ts","../../../../libs/abp-lepton-x/account/src/account-layout/components/tenant-box/tenant-box.component.html","../../../../libs/abp-lepton-x/account/src/account-layout/components/auth-layout/auth-wrapper.component.ts","../../../../libs/abp-lepton-x/account/src/account-layout/components/auth-layout/auth-wrapper.component.html","../../../../libs/abp-lepton-x/account/src/account-layout/account-layout.component.ts","../../../../libs/abp-lepton-x/account/src/account-layout/account-layout.component.html","../../../../libs/abp-lepton-x/account/src/account-layout/providers/account-layout.provider.ts","../../../../libs/abp-lepton-x/account/src/account-layout/account-layout.module.ts","../../../../libs/abp-lepton-x/account/src/abp-ng.theme.lepton-x-account.ts"],"sourcesContent":["import { inject, Injectable, signal } from '@angular/core';\r\nimport { finalize } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport {\r\n AbpTenantService,\r\n ConfigStateService,\r\n CurrentTenantDto,\r\n MultiTenancyService,\r\n SessionStateService,\r\n} from '@abp/ng.core';\r\nimport { ToasterService } from '@abp/ng.theme.shared';\r\n\r\n@Injectable()\r\nexport class AccountLayoutService {\r\n private configState = inject(ConfigStateService);\r\n private multiTenancy = inject(MultiTenancyService);\r\n private toasterService = inject(ToasterService);\r\n private tenantService = inject(AbpTenantService);\r\n private sessionState = inject(SessionStateService);\r\n\r\n isMultiTenancyEnabled$ = this.configState.getDeep$('multiTenancy.isEnabled');\r\n enableLocalLogin$ = this.configState\r\n .getSetting$('Abp.Account.EnableLocalLogin')\r\n .pipe(map((value) => value?.toLowerCase() !== 'false'));\r\n\r\n tenantBoxKey = 'Account.TenantBoxComponent';\r\n route: ActivatedRoute = inject(ActivatedRoute);\r\n\r\n get isTenantBoxVisibleForCurrentRoute() {\r\n return this.getMostInnerChild().data.tenantBoxVisible ?? true;\r\n }\r\n\r\n get isTenantBoxVisible() {\r\n return (\r\n this.isTenantBoxVisibleForCurrentRoute &&\r\n this.multiTenancy.isTenantBoxVisible\r\n );\r\n }\r\n\r\n private getMostInnerChild() {\r\n let child = this.route.snapshot;\r\n let depth = 0;\r\n const depthLimit = 10;\r\n while (child.firstChild && depth < depthLimit) {\r\n child = child.firstChild;\r\n depth++;\r\n }\r\n return child;\r\n }\r\n\r\n currentTenant$ = this.sessionState.getTenant$();\r\n name = signal<string>('');\r\n isModalVisible!: boolean;\r\n modalBusy!: boolean;\r\n\r\n onSwitch() {\r\n const tenant = this.sessionState.getTenant();\r\n this.name.set(tenant?.name || '');\r\n this.isModalVisible = true;\r\n }\r\n\r\n save() {\r\n if (!this.name()) {\r\n this.setTenant(null);\r\n this.isModalVisible = false;\r\n return;\r\n }\r\n\r\n this.modalBusy = true;\r\n this.tenantService\r\n .findTenantByName(this.name())\r\n .pipe(finalize(() => (this.modalBusy = false)))\r\n .subscribe(({ success, tenantId: id, ...tenant }) => {\r\n if (!success) {\r\n this.showError();\r\n return;\r\n }\r\n\r\n this.setTenant({ ...tenant, id, isAvailable: true });\r\n this.isModalVisible = false;\r\n });\r\n }\r\n\r\n private setTenant(tenant: CurrentTenantDto | null) {\r\n this.sessionState.setTenant(tenant);\r\n this.configState.refreshAppState().subscribe();\r\n }\r\n\r\n private showError() {\r\n this.toasterService.error(\r\n 'AbpUiMultiTenancy::GivenTenantIsNotAvailable',\r\n 'AbpUi::Error',\r\n {\r\n messageLocalizationParams: [this.name()],\r\n },\r\n );\r\n }\r\n}\r\n","import { Component, inject } from '@angular/core';\r\nimport { AsyncPipe } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AutofocusDirective, LocalizationPipe } from '@abp/ng.core';\r\nimport {\r\n ButtonComponent,\r\n ModalCloseDirective,\r\n ModalComponent,\r\n} from '@abp/ng.theme.shared';\r\nimport { AccountLayoutService } from '../../services/account-layout.service';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'lpx-tenant-box',\r\n templateUrl: './tenant-box.component.html',\r\n imports: [\r\n FormsModule,\r\n AutofocusDirective,\r\n ModalCloseDirective,\r\n LocalizationPipe,\r\n ModalComponent,\r\n ButtonComponent,\r\n AsyncPipe\r\n],\r\n})\r\nexport class TenantBoxComponent {\r\n public service = inject(AccountLayoutService);\r\n}\r\n","@if ((service.currentTenant$ | async) || {}; as currentTenant) {\r\n <div class=\"card shadow-sm rounded mb-3\">\r\n <div class=\"card-body px-2 p-sm-3\">\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <span style=\"font-size: 0.8em\" class=\"text-uppercase text-muted\">{{\r\n 'AbpUiMultiTenancy::Tenant' | abpLocalization\r\n }}</span\r\n ><br />\r\n <h6 class=\"m-0 d-inline-block\">\r\n <i>{{\r\n currentTenant.name ||\r\n ('AbpUiMultiTenancy::NotSelected' | abpLocalization)\r\n }}</i>\r\n </h6>\r\n </div>\r\n <div class=\"col-auto\">\r\n <a\r\n id=\"AbpTenantSwitchLink\"\r\n href=\"javascript:void(0)\"\r\n class=\"btn btn-sm mt-3 btn-outline-primary\"\r\n (click)=\"service.onSwitch()\"\r\n >\r\n {{ 'AbpUiMultiTenancy::Switch' | abpLocalization }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <abp-modal\r\n size=\"md\"\r\n [(visible)]=\"service.isModalVisible\"\r\n [busy]=\"service.modalBusy\"\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 (ngModelChange)=\"service.name.set($event)\"\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 {{ 'AbpTenantManagement::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 <span>{{ 'AbpTenantManagement::Save' | abpLocalization }}</span>\r\n </abp-button>\r\n </ng-template>\r\n </abp-modal>\r\n}\r\n","import { Component, inject } from '@angular/core';\r\nimport { AsyncPipe } from '@angular/common';\r\nimport { LocalizationPipe, ReplaceableTemplateDirective } from '@abp/ng.core';\r\nimport { LOGO_APP_NAME_TOKEN } from '@abp/ng.theme.shared';\r\nimport { LanguageSelectionComponent } from '@volo/ngx-lepton-x.lite';\r\nimport { TenantBoxComponent } from '../tenant-box/tenant-box.component';\r\nimport { AccountLayoutService } from '../../services/account-layout.service';\r\n\r\n@Component({\r\n // eslint-disable-next-line @angular-eslint/component-selector\r\n selector: 'lpx-auth-wrapper',\r\n templateUrl: './auth-wrapper.component.html',\r\n imports: [\r\n LocalizationPipe,\r\n ReplaceableTemplateDirective,\r\n TenantBoxComponent,\r\n LanguageSelectionComponent,\r\n AsyncPipe\r\n],\r\n providers: [AccountLayoutService],\r\n})\r\nexport class AuthWrapperComponent {\r\n service = inject(AccountLayoutService);\r\n protected readonly appName =\r\n inject(LOGO_APP_NAME_TOKEN, {\r\n optional: true,\r\n }) ?? 'ProjectName';\r\n}\r\n","<div class=\"row\">\r\n <div class=\"col-md-8 col-lg-5 mx-auto\">\r\n <div class=\"lpx-logo-container lpx-login-brand-text\">\r\n <a href=\"/\">\r\n <div class=\"lpx-brand-logo lpx-login-logo mx-auto\"></div>\r\n </a>\r\n <div class=\"lpx-brand-name lpx-login-name mx-auto\">{{ appName }}</div>\r\n </div>\r\n @if (\r\n (service.isMultiTenancyEnabled$ | async) && service.isTenantBoxVisible\r\n ) {\r\n <lpx-tenant-box\r\n *abpReplaceableTemplate=\"{ componentKey: service.tenantBoxKey }\"\r\n />\r\n }\r\n\r\n @if (service.enableLocalLogin$ | async) {\r\n <div class=\"card mt-3 shadow-sm rounded\">\r\n <div class=\"card-body p-2 p-sm-3\">\r\n <lpx-language-selection class=\"float-end\" />\r\n <ng-content />\r\n </div>\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","import { Component } from '@angular/core';\r\nimport { RouterOutlet } from '@angular/router';\r\nimport { PageAlertContainerComponent } from '@volo/abp.ng.lepton-x.core';\r\nimport { AuthWrapperComponent } from './components/auth-layout/auth-wrapper.component';\r\n\r\n@Component({\r\n selector: 'abp-account-layout',\r\n templateUrl: './account-layout.component.html',\r\n imports: [AuthWrapperComponent, RouterOutlet, PageAlertContainerComponent],\r\n})\r\nexport class AccountLayoutComponent {}\r\n","<div class=\"lpx-scroll-container\">\r\n <div class=\"lpx-wrapper\">\r\n <div class=\"lpx-content-container m-0\">\r\n <div class=\"lpx-content\">\r\n <div class=\"container\">\r\n <abp-page-alert-container />\r\n <lpx-auth-wrapper>\r\n <router-outlet />\r\n </lpx-auth-wrapper>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n","import {\r\n EnvironmentProviders,\r\n inject,\r\n provideAppInitializer,\r\n} from '@angular/core';\r\nimport { ReplaceableComponentsService } from '@abp/ng.core';\r\nimport { AccountLayoutComponent } from '../account-layout.component';\r\n\r\nexport function provideAccountLayout(): EnvironmentProviders {\r\n return provideAppInitializer(() => {\r\n initAccountLayout();\r\n });\r\n}\r\n\r\nexport function initAccountLayout() {\r\n const replaceableComponents = inject(ReplaceableComponentsService);\r\n replaceableComponents.add({\r\n key: 'Theme.AccountLayoutComponent',\r\n component: AccountLayoutComponent,\r\n });\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { AccountLayoutComponent } from './account-layout.component';\r\nimport { TenantBoxComponent } from './components/tenant-box/tenant-box.component';\r\nimport { AuthWrapperComponent } from './components/auth-layout/auth-wrapper.component';\r\nimport { CoreModule } from '@abp/ng.core';\r\nimport { LpxSideMenuLayoutModule } from '@volo/ngx-lepton-x.lite/layouts';\r\nimport { LanguageSelectionModule } from '@volo/ngx-lepton-x.lite';\r\nimport { RouterModule } from '@angular/router';\r\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\r\nimport { PageAlertContainerModule } from '@volo/abp.ng.lepton-x.core';\r\nimport { provideAccountLayout } from './providers';\r\n\r\n@NgModule({\r\n imports: [\r\n RouterModule,\r\n CoreModule,\r\n LpxSideMenuLayoutModule,\r\n ThemeSharedModule,\r\n PageAlertContainerModule,\r\n LanguageSelectionModule,\r\n TenantBoxComponent,\r\n AuthWrapperComponent,\r\n AccountLayoutComponent,\r\n ],\r\n})\r\nexport class AccountLayoutModule {\r\n /***\r\n * @deprecated `AccountLayoutModule.forRoot()` is deprecated. You can use `provideAccountLayout()` **function** instead.\r\n */\r\n static forRoot(): ModuleWithProviders<AccountLayoutModule> {\r\n return {\r\n ngModule: AccountLayoutModule,\r\n providers: [provideAccountLayout()],\r\n };\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -13,10 +13,10 @@ import { OAuthService } from 'angular-oauth2-oidc';
|
|
|
13
13
|
|
|
14
14
|
class EmptyLayoutComponent {
|
|
15
15
|
static { this.type = "empty" /* eLayoutType.empty */; }
|
|
16
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
17
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: EmptyLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", 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"] }] }); }
|
|
18
18
|
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: EmptyLayoutComponent, decorators: [{
|
|
20
20
|
type: Component,
|
|
21
21
|
args: [{
|
|
22
22
|
selector: 'abp-layout-empty',
|
|
@@ -29,10 +29,10 @@ class LanguageSelectionComponent {
|
|
|
29
29
|
constructor() {
|
|
30
30
|
this.languageSelectionKey = "Theme.LanguagesComponent" /* eThemeLeptonXComponents.Languages */;
|
|
31
31
|
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: LanguageSelectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: LanguageSelectionComponent, isStandalone: true, selector: "abp-language-selection", ngImport: i0, template: "<lpx-language-selection *abpReplaceableTemplate=\"{\r\n componentKey: languageSelectionKey\r\n }\">\r\n</lpx-language-selection>\r\n", dependencies: [{ kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "component", type: LanguageSelectionComponent$1, selector: "lpx-language-selection" }] }); }
|
|
34
34
|
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: LanguageSelectionComponent, decorators: [{
|
|
36
36
|
type: Component,
|
|
37
37
|
args: [{ selector: 'abp-language-selection', imports: [ReplaceableTemplateDirective, LanguageSelectionComponent$1], template: "<lpx-language-selection *abpReplaceableTemplate=\"{\r\n componentKey: languageSelectionKey\r\n }\">\r\n</lpx-language-selection>\r\n" }]
|
|
38
38
|
}] });
|
|
@@ -42,10 +42,10 @@ class NavItemsComponent {
|
|
|
42
42
|
this.navItems = inject(NavItemsService);
|
|
43
43
|
this.trackByFn = (_, element) => element.id;
|
|
44
44
|
}
|
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
46
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.
|
|
45
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: NavItemsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
46
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: NavItemsComponent, isStandalone: true, selector: "abp-nav-items", ngImport: i0, template: "@for (item of navItems.items$ | async; track $index) {\r\n <!-- TODO: muhammaed: use pipe or etc instead of func exec -->\r\n <ng-container *abpVisible=\"!item.visible || item.visible(item)\">\r\n <ng-container *abpPermission=\"item.requiredPolicy\">\r\n @if (item.component) {\r\n <ng-container [ngComponentOutlet]=\"item.component\"></ng-container>\r\n } @else {\r\n <div\r\n [innerHTML]=\"item.html\"\r\n (click)=\"item.action ? item.action() : null\"\r\n ></div>\r\n }\r\n </ng-container>\r\n </ng-container>\r\n}\r\n", styles: [":host{all:inherit}\n"], dependencies: [{ kind: "directive", type: PermissionDirective, selector: "[abpPermission]", inputs: ["abpPermission", "abpPermissionRunChangeDetection"] }, { kind: "directive", type: AbpVisibleDirective, selector: "[abpVisible]", inputs: ["abpVisible"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule"], exportAs: ["ngComponentOutlet"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
|
|
47
47
|
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: NavItemsComponent, decorators: [{
|
|
49
49
|
type: Component,
|
|
50
50
|
args: [{ selector: 'abp-nav-items', imports: [
|
|
51
51
|
PermissionDirective,
|
|
@@ -59,10 +59,10 @@ class UserProfileComponent {
|
|
|
59
59
|
constructor() {
|
|
60
60
|
this.key = "Theme.CurrentUserComponent" /* eThemeLeptonXComponents.CurrentUser */;
|
|
61
61
|
}
|
|
62
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
63
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.
|
|
62
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: UserProfileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
63
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: UserProfileComponent, isStandalone: true, selector: "abp-user-profile", ngImport: i0, template: "<lpx-user-profile *abpReplaceableTemplate=\"{componentKey:key}\"></lpx-user-profile>\r\n", dependencies: [{ kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "component", type: UserProfileComponent$1, selector: "lpx-user-profile" }] }); }
|
|
64
64
|
}
|
|
65
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
65
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: UserProfileComponent, decorators: [{
|
|
66
66
|
type: Component,
|
|
67
67
|
args: [{ selector: 'abp-user-profile', imports: [ReplaceableTemplateDirective, UserProfileComponent$1], template: "<lpx-user-profile *abpReplaceableTemplate=\"{componentKey:key}\"></lpx-user-profile>\r\n" }]
|
|
68
68
|
}] });
|
|
@@ -75,14 +75,14 @@ class NavigateToLoginComponent {
|
|
|
75
75
|
event.preventDefault();
|
|
76
76
|
this.authService.navigateToLogin();
|
|
77
77
|
}
|
|
78
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
79
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.
|
|
78
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: NavigateToLoginComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
79
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: NavigateToLoginComponent, isStandalone: true, selector: "abp-navigate-to-login", ngImport: i0, template: `
|
|
80
80
|
<a href="#" class="nav-link" (click)="navigateToLogin($event)">
|
|
81
81
|
<span>{{ 'AbpUi::Login' | abpLocalization }}</span>
|
|
82
82
|
</a>
|
|
83
83
|
`, isInline: true, dependencies: [{ kind: "pipe", type: LocalizationPipe, name: "abpLocalization" }] }); }
|
|
84
84
|
}
|
|
85
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
85
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: NavigateToLoginComponent, decorators: [{
|
|
86
86
|
type: Component,
|
|
87
87
|
args: [{
|
|
88
88
|
selector: 'abp-navigate-to-login',
|
|
@@ -112,10 +112,10 @@ class SideMenuApplicationLayoutComponent {
|
|
|
112
112
|
this.mobileUserProfile = "Theme.MobileUserProfileComponent" /* eThemeLeptonXComponents.MobileUserProfile */;
|
|
113
113
|
this.mobileLanguageSelection = "Theme.MobileLanguageSelectionComponent" /* eThemeLeptonXComponents.MobileLanguageSelection */;
|
|
114
114
|
}
|
|
115
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
116
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.
|
|
115
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: SideMenuApplicationLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
116
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: SideMenuApplicationLayoutComponent, isStandalone: true, selector: "abp-application-layout", ngImport: i0, template: "<lpx-layout #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>\r\n <lpx-navbar-routes\r\n *abpReplaceableTemplate=\"{\r\n componentKey: routesKey,\r\n inputs: {\r\n navbarItems: items\r\n }\r\n }\"\r\n [navbarItems]=\"items\"\r\n >\r\n </lpx-navbar-routes>\r\n </ng-template>\r\n </lpx-navbar>\r\n </ng-template>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"navItemsKey\">\r\n <ng-template lpx-topbar-content>\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=\"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=\"currentUserKey\">\r\n <ng-template lpx-user-profile>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: currentUserKey }\">\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=\"languageKey\">\r\n <ng-template lpx-language-selection>\r\n <ng-container *abpReplaceableTemplate=\"{ componentKey: languageKey }\">\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *abpIfReplaceableTemplateExists=\"breadcrumbKey\">\r\n <ng-template lpx-breadcrumb-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{\r\n componentKey: breadcrumbKey\r\n }\"\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=\"mobileUserProfile\">\r\n <ng-template lpx-mn-user-profile-panel>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{ componentKey: mobileUserProfile }\"\r\n >\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=\"mobileLanguageSelection\">\r\n <ng-template lpx-mn-language-selection>\r\n <ng-container\r\n *abpReplaceableTemplate=\"{ componentKey: mobileLanguageSelection }\"\r\n >\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\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</lpx-layout>\r\n", dependencies: [{ kind: "directive", type: IfReplaceableTemplateExistsDirective, selector: "[abpIfReplaceableTemplateExists]", inputs: ["abpIfReplaceableTemplateExists"] }, { kind: "directive", type: NavbarPanelDirective, selector: "ng-template[lpx-navbar-panel]" }, { kind: "directive", type: LogoPanelDirective, selector: "ng-template[lpx-logo-panel]" }, { kind: "directive", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "directive", type: NavbarRoutesDirective, selector: "[lpx-navbar-routes],[lpxNavbarRoutes]", exportAs: ["lpxNavbarRoutes"] }, { kind: "directive", type: TopbarContentPanelDirective, selector: "ng-template[lpx-topbar-content]" }, { kind: "directive", type: UserProfilePanelDirective, selector: "ng-template[lpx-user-profile]" }, { kind: "directive", type: CurrentUserImagePanelDirective, selector: "ng-template[lpx-current-user-image-panel]" }, { kind: "directive", type: LanguageSelectionPanelDirective, selector: "ng-template[lpx-language-selection]" }, { kind: "directive", type: BreadcrumbPanelDirective, selector: "ng-template[lpx-breadcrumb-panel]" }, { kind: "directive", type: MobileNavbarPanelDirective, selector: "ng-template[lpx-mobile-navbar-panel]" }, { kind: "directive", type: MobileUserProfilePanelDirective, selector: "ng-template[lpx-mn-user-profile-panel]" }, { kind: "directive", type: FooterPanelDirective, selector: "ng-template[lpx-footer-panel]" }, { kind: "directive", type: MobileLanguageSelectionDirective, selector: "ng-template[lpx-mn-language-selection]" }, { kind: "directive", type: ContentPanelDirective, selector: "ng-template[lpx-content]" }, { kind: "component", type: PageAlertContainerComponent, selector: "abp-page-alert-container" }, { kind: "component", type: SideMenuLayoutComponent, selector: "lpx-layout" }, { kind: "component", type: NavbarComponent, selector: "lpx-navbar" }, { kind: "component", type: NavbarRoutesComponent, selector: "lpx-navbar-routes", inputs: ["navbarItems", "groupedItems", "routerItem"], outputs: ["routeClick"] }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name", "routerOutletData"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] }); }
|
|
117
117
|
}
|
|
118
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
118
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: SideMenuApplicationLayoutComponent, decorators: [{
|
|
119
119
|
type: Component,
|
|
120
120
|
args: [{ selector: 'abp-application-layout', imports: [
|
|
121
121
|
IfReplaceableTemplateExistsDirective,
|
|
@@ -206,8 +206,8 @@ class SideMenuLayoutModule {
|
|
|
206
206
|
providers: [provideSideMenuLayout()],
|
|
207
207
|
};
|
|
208
208
|
}
|
|
209
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
210
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.
|
|
209
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: SideMenuLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
210
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.8", ngImport: i0, type: SideMenuLayoutModule, imports: [CommonModule,
|
|
211
211
|
LpxSideMenuLayoutModule,
|
|
212
212
|
RouterModule,
|
|
213
213
|
LpxNavbarModule,
|
|
@@ -223,7 +223,7 @@ class SideMenuLayoutModule {
|
|
|
223
223
|
LanguageSelectionComponent,
|
|
224
224
|
UserProfileComponent,
|
|
225
225
|
NavigateToLoginComponent] }); }
|
|
226
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.
|
|
226
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: SideMenuLayoutModule, imports: [CommonModule,
|
|
227
227
|
LpxSideMenuLayoutModule,
|
|
228
228
|
RouterModule,
|
|
229
229
|
LpxNavbarModule,
|
|
@@ -238,7 +238,7 @@ class SideMenuLayoutModule {
|
|
|
238
238
|
LanguageSelectionComponent,
|
|
239
239
|
UserProfileComponent] }); }
|
|
240
240
|
}
|
|
241
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
241
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: SideMenuLayoutModule, decorators: [{
|
|
242
242
|
type: NgModule,
|
|
243
243
|
args: [{
|
|
244
244
|
imports: [
|
|
@@ -30,8 +30,8 @@ class ValidationErrorComponent extends ValidationErrorComponent$1 {
|
|
|
30
30
|
return { ...error, interpoliteParams: [] };
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
34
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: ValidationErrorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
34
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: ValidationErrorComponent, isStandalone: true, selector: "abp-validation-error", usesInheritance: true, ngImport: i0, template: `
|
|
35
35
|
@for (error of abpErrors; track $index) {
|
|
36
36
|
<div class="invalid-feedback">
|
|
37
37
|
{{ error.message | abpLocalization: error.interpoliteParams }}
|
|
@@ -39,7 +39,7 @@ class ValidationErrorComponent extends ValidationErrorComponent$1 {
|
|
|
39
39
|
}
|
|
40
40
|
`, isInline: true, dependencies: [{ kind: "pipe", type: LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
41
41
|
}
|
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: ValidationErrorComponent, decorators: [{
|
|
43
43
|
type: Component,
|
|
44
44
|
args: [{
|
|
45
45
|
selector: 'abp-validation-error',
|
|
@@ -82,10 +82,10 @@ class AbpLanguageService {
|
|
|
82
82
|
this.sessionState.setLanguage(lang?.cultureName || '');
|
|
83
83
|
});
|
|
84
84
|
}
|
|
85
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
86
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.
|
|
85
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AbpLanguageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
86
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AbpLanguageService, providedIn: 'root' }); }
|
|
87
87
|
}
|
|
88
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
88
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AbpLanguageService, decorators: [{
|
|
89
89
|
type: Injectable,
|
|
90
90
|
args: [{
|
|
91
91
|
providedIn: 'root',
|
|
@@ -124,10 +124,10 @@ class AbpTranslateService {
|
|
|
124
124
|
getKey(key) {
|
|
125
125
|
return key.includes('::') ? key : undefined;
|
|
126
126
|
}
|
|
127
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
128
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.
|
|
127
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AbpTranslateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
128
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AbpTranslateService }); }
|
|
129
129
|
}
|
|
130
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
130
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AbpTranslateService, decorators: [{
|
|
131
131
|
type: Injectable
|
|
132
132
|
}] });
|
|
133
133
|
|
|
@@ -184,10 +184,10 @@ class AbpUserProfileService {
|
|
|
184
184
|
});
|
|
185
185
|
});
|
|
186
186
|
}
|
|
187
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
188
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.
|
|
187
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AbpUserProfileService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
188
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AbpUserProfileService, providedIn: 'root' }); }
|
|
189
189
|
}
|
|
190
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
190
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: AbpUserProfileService, decorators: [{
|
|
191
191
|
type: Injectable,
|
|
192
192
|
args: [{
|
|
193
193
|
providedIn: 'root',
|
|
@@ -310,16 +310,16 @@ class ValidationErrorModule {
|
|
|
310
310
|
providers: [provideValidationError()],
|
|
311
311
|
};
|
|
312
312
|
}
|
|
313
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
314
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.
|
|
313
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: ValidationErrorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
314
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.8", ngImport: i0, type: ValidationErrorModule, imports: [CommonModule,
|
|
315
315
|
CoreModule,
|
|
316
316
|
NgxValidateCoreModule,
|
|
317
317
|
ValidationErrorComponent], exports: [ValidationErrorComponent, NgxValidateCoreModule] }); }
|
|
318
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.
|
|
318
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: ValidationErrorModule, imports: [CommonModule,
|
|
319
319
|
CoreModule,
|
|
320
320
|
NgxValidateCoreModule, NgxValidateCoreModule] }); }
|
|
321
321
|
}
|
|
322
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
322
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: ValidationErrorModule, decorators: [{
|
|
323
323
|
type: NgModule,
|
|
324
324
|
args: [{
|
|
325
325
|
imports: [
|
|
@@ -342,11 +342,11 @@ class ThemeLeptonXModule {
|
|
|
342
342
|
providers: [provideThemeLeptonX(withThemeLeptonXOptions(options))],
|
|
343
343
|
};
|
|
344
344
|
}
|
|
345
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.
|
|
346
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.
|
|
347
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.
|
|
345
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: ThemeLeptonXModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
346
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.8", ngImport: i0, type: ThemeLeptonXModule, imports: [LpxModule, ValidationErrorModule] }); }
|
|
347
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: ThemeLeptonXModule, imports: [LpxModule, ValidationErrorModule] }); }
|
|
348
348
|
}
|
|
349
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.
|
|
349
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: ThemeLeptonXModule, decorators: [{
|
|
350
350
|
type: NgModule,
|
|
351
351
|
args: [{
|
|
352
352
|
declarations: [],
|
package/package.json
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@abp/ng.theme.lepton-x",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.3.0-rc.2",
|
|
4
4
|
"dependencies": {
|
|
5
5
|
"tslib": "^2.3.0",
|
|
6
|
-
"@volo/ngx-lepton-x.lite": "5.
|
|
7
|
-
"@volo/abp.ng.lepton-x.core": "5.
|
|
6
|
+
"@volo/ngx-lepton-x.lite": "5.3.0-rc.2",
|
|
7
|
+
"@volo/abp.ng.lepton-x.core": "5.3.0-rc.2"
|
|
8
8
|
},
|
|
9
9
|
"peerDependencies": {
|
|
10
|
-
"@abp/ng.core": "~10.
|
|
11
|
-
"@abp/ng.theme.shared": "~10.
|
|
12
|
-
"@abp/ng.account.core": "~10.
|
|
10
|
+
"@abp/ng.core": "~10.3.0-rc.2",
|
|
11
|
+
"@abp/ng.theme.shared": "~10.3.0-rc.2",
|
|
12
|
+
"@abp/ng.account.core": "~10.3.0-rc.2"
|
|
13
13
|
},
|
|
14
14
|
"publishConfig": {
|
|
15
15
|
"access": "public"
|
|
@@ -22,15 +22,15 @@
|
|
|
22
22
|
"default": "./package.json"
|
|
23
23
|
},
|
|
24
24
|
".": {
|
|
25
|
-
"types": "./
|
|
25
|
+
"types": "./types/abp-ng.theme.lepton-x.d.ts",
|
|
26
26
|
"default": "./fesm2022/abp-ng.theme.lepton-x.mjs"
|
|
27
27
|
},
|
|
28
28
|
"./account": {
|
|
29
|
-
"types": "./
|
|
29
|
+
"types": "./types/abp-ng.theme.lepton-x-account.d.ts",
|
|
30
30
|
"default": "./fesm2022/abp-ng.theme.lepton-x-account.mjs"
|
|
31
31
|
},
|
|
32
32
|
"./layouts": {
|
|
33
|
-
"types": "./
|
|
33
|
+
"types": "./types/abp-ng.theme.lepton-x-layouts.d.ts",
|
|
34
34
|
"default": "./fesm2022/abp-ng.theme.lepton-x-layouts.mjs"
|
|
35
35
|
}
|
|
36
36
|
},
|
|
@@ -54,6 +54,7 @@
|
|
|
54
54
|
"webapp"
|
|
55
55
|
],
|
|
56
56
|
"module": "fesm2022/abp-ng.theme.lepton-x.mjs",
|
|
57
|
-
"typings": "
|
|
58
|
-
"sideEffects": false
|
|
57
|
+
"typings": "types/abp-ng.theme.lepton-x.d.ts",
|
|
58
|
+
"sideEffects": false,
|
|
59
|
+
"type": "module"
|
|
59
60
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|