@volosoft/abp.ng.theme.lepton-x 2.2.1 → 2.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.
- package/account/account/account-layout.component.d.ts +6 -6
- package/account/account/account-layout.module.d.ts +20 -22
- package/account/account/components/auth-wrapper/auth-wrapper.component.d.ts +7 -8
- package/account/account/components/index.d.ts +2 -2
- package/account/account/components/tenant-box/tenant-box.component.d.ts +7 -8
- package/account/account/index.d.ts +3 -3
- package/account/index.d.ts +1 -1
- package/esm2022/account/account/account-layout.component.mjs +20 -0
- package/esm2022/account/account/account-layout.module.mjs +52 -0
- package/esm2022/account/account/components/auth-wrapper/auth-wrapper.component.mjs +29 -0
- package/{esm2020 → esm2022}/account/account/components/index.mjs +2 -2
- package/esm2022/account/account/components/tenant-box/tenant-box.component.mjs +22 -0
- package/{esm2020 → esm2022}/account/account/index.mjs +3 -3
- package/{esm2020 → esm2022}/account/index.mjs +1 -1
- package/{esm2020 → esm2022}/account/volosoft-abp.ng.theme.lepton-x-account.mjs +4 -4
- package/{esm2020 → esm2022}/index.mjs +1 -1
- package/{esm2020 → esm2022}/layouts/index.mjs +2 -2
- package/{esm2020 → esm2022}/layouts/side-menu/index.mjs +1 -1
- package/{esm2020 → esm2022}/layouts/side-menu/layout/index.mjs +3 -3
- package/{esm2020 → esm2022}/layouts/side-menu/layout/providers/index.mjs +1 -1
- package/{esm2020 → esm2022}/layouts/side-menu/layout/providers/translate.provider.mjs +16 -16
- package/esm2022/layouts/side-menu/layout/side-menu-application-layout.component.mjs +30 -0
- package/esm2022/layouts/side-menu/layout/side-menu-layout.module.mjs +74 -0
- package/{esm2020 → esm2022}/layouts/top-menu/index.mjs +1 -1
- package/{esm2020 → esm2022}/layouts/top-menu/layout/index.mjs +1 -1
- package/{esm2020 → esm2022}/layouts/top-menu/layout/providers/index.mjs +1 -1
- package/{esm2020 → esm2022}/layouts/top-menu/layout/providers/translate.provider.mjs +12 -12
- package/esm2022/layouts/top-menu/layout/top-menu-application-layout.component.mjs +28 -0
- package/esm2022/layouts/top-menu/layout/top-menu-layout.module.mjs +79 -0
- package/{esm2020 → esm2022}/layouts/volosoft-abp.ng.theme.lepton-x-layouts.mjs +4 -4
- package/esm2022/lib/components/abp-validation-error/abp-validation-error.component.mjs +52 -0
- package/esm2022/lib/components/abp-validation-error/abp-validation-error.module.mjs +40 -0
- package/{esm2020 → esm2022}/lib/components/abp-validation-error/index.mjs +2 -2
- package/esm2022/lib/components/http-error/http-error.component.mjs +45 -0
- package/esm2022/lib/components/http-error/http-error.module.mjs +26 -0
- package/{esm2020 → esm2022}/lib/components/http-error/index.mjs +2 -2
- package/{esm2020 → esm2022}/lib/components/index.mjs +2 -2
- package/{esm2020 → esm2022}/lib/enums/components.mjs +1 -1
- package/{esm2020 → esm2022}/lib/enums/index.mjs +2 -2
- package/{esm2020 → esm2022}/lib/enums/user-menu-items.mjs +9 -9
- package/{esm2020 → esm2022}/lib/index.mjs +5 -5
- package/esm2022/lib/lepton-x.module.mjs +60 -0
- package/esm2022/lib/providers/account-layout.provider.mjs +20 -0
- package/{esm2020 → esm2022}/lib/providers/init-service.provider.mjs +18 -18
- package/{esm2020 → esm2022}/lib/providers/style.provider.mjs +17 -17
- package/{esm2020 → esm2022}/lib/providers/translate.provider.mjs +21 -21
- package/{esm2020 → esm2022}/lib/providers/user-menu-service.provider.mjs +88 -88
- package/esm2022/lib/services/abp-auth.service.mjs +24 -0
- package/esm2022/lib/services/abp-settings.service.mjs +125 -0
- package/esm2022/lib/services/abp-toolbar.service.mjs +33 -0
- package/esm2022/lib/services/abp-translate.service.mjs +47 -0
- package/{esm2020 → esm2022}/lib/services/index.mjs +4 -4
- package/{esm2020 → esm2022}/lib/tokens/index.mjs +1 -1
- package/{esm2020 → esm2022}/lib/tokens/translate-key-map.mjs +2 -2
- package/{esm2020 → esm2022}/volosoft-abp.ng.theme.lepton-x.mjs +4 -4
- package/fesm2022/volosoft-abp.ng.theme.lepton-x-account.mjs +108 -0
- package/fesm2022/volosoft-abp.ng.theme.lepton-x-account.mjs.map +1 -0
- package/{fesm2015 → fesm2022}/volosoft-abp.ng.theme.lepton-x-layouts.mjs +188 -188
- package/fesm2022/volosoft-abp.ng.theme.lepton-x-layouts.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/volosoft-abp.ng.theme.lepton-x.mjs +502 -483
- package/fesm2022/volosoft-abp.ng.theme.lepton-x.mjs.map +1 -0
- package/index.d.ts +1 -1
- package/layouts/index.d.ts +2 -2
- package/layouts/side-menu/index.d.ts +1 -1
- package/layouts/side-menu/layout/index.d.ts +3 -3
- package/layouts/side-menu/layout/providers/index.d.ts +1 -1
- package/layouts/side-menu/layout/providers/translate.provider.d.ts +2 -2
- package/layouts/side-menu/layout/side-menu-application-layout.component.d.ts +17 -17
- package/layouts/side-menu/layout/side-menu-layout.module.d.ts +15 -15
- package/layouts/top-menu/index.d.ts +1 -1
- package/layouts/top-menu/layout/index.d.ts +1 -1
- package/layouts/top-menu/layout/providers/index.d.ts +1 -1
- package/layouts/top-menu/layout/providers/translate.provider.d.ts +2 -2
- package/layouts/top-menu/layout/top-menu-application-layout.component.d.ts +15 -15
- package/layouts/top-menu/layout/top-menu-layout.module.d.ts +16 -16
- package/lib/components/abp-validation-error/abp-validation-error.component.d.ts +9 -9
- package/lib/components/abp-validation-error/abp-validation-error.module.d.ts +12 -12
- package/lib/components/abp-validation-error/index.d.ts +2 -2
- package/lib/components/http-error/http-error.component.d.ts +10 -10
- package/lib/components/http-error/http-error.module.d.ts +13 -13
- package/lib/components/http-error/index.d.ts +2 -2
- package/lib/components/index.d.ts +2 -2
- package/lib/enums/components.d.ts +20 -20
- package/lib/enums/index.d.ts +2 -2
- package/lib/enums/user-menu-items.d.ts +8 -8
- package/lib/index.d.ts +5 -5
- package/lib/lepton-x.module.d.ts +11 -11
- package/lib/providers/account-layout.provider.d.ts +8 -0
- package/lib/providers/init-service.provider.d.ts +6 -6
- package/lib/providers/style.provider.d.ts +3 -3
- package/lib/providers/translate.provider.d.ts +6 -6
- package/lib/providers/user-menu-service.provider.d.ts +8 -8
- package/lib/services/abp-auth.service.d.ts +12 -12
- package/lib/services/abp-settings.service.d.ts +26 -26
- package/lib/services/abp-toolbar.service.d.ts +13 -13
- package/lib/services/abp-translate.service.d.ts +14 -14
- package/lib/services/index.d.ts +4 -4
- package/lib/tokens/index.d.ts +1 -1
- package/lib/tokens/translate-key-map.d.ts +4 -4
- package/package.json +18 -28
- package/esm2020/account/account/account-layout.component.mjs +0 -19
- package/esm2020/account/account/account-layout.module.mjs +0 -71
- package/esm2020/account/account/components/auth-wrapper/auth-wrapper.component.mjs +0 -20
- package/esm2020/account/account/components/tenant-box/tenant-box.component.mjs +0 -20
- package/esm2020/layouts/side-menu/layout/side-menu-application-layout.component.mjs +0 -29
- package/esm2020/layouts/side-menu/layout/side-menu-layout.module.mjs +0 -73
- package/esm2020/layouts/top-menu/layout/top-menu-application-layout.component.mjs +0 -27
- package/esm2020/layouts/top-menu/layout/top-menu-layout.module.mjs +0 -78
- package/esm2020/lib/components/abp-validation-error/abp-validation-error.component.mjs +0 -51
- package/esm2020/lib/components/abp-validation-error/abp-validation-error.module.mjs +0 -39
- package/esm2020/lib/components/http-error/http-error.component.mjs +0 -44
- package/esm2020/lib/components/http-error/http-error.module.mjs +0 -25
- package/esm2020/lib/lepton-x.module.mjs +0 -57
- package/esm2020/lib/services/abp-auth.service.mjs +0 -23
- package/esm2020/lib/services/abp-settings.service.mjs +0 -124
- package/esm2020/lib/services/abp-toolbar.service.mjs +0 -32
- package/esm2020/lib/services/abp-translate.service.mjs +0 -46
- package/fesm2015/volosoft-abp.ng.theme.lepton-x-account.mjs +0 -121
- package/fesm2015/volosoft-abp.ng.theme.lepton-x-account.mjs.map +0 -1
- package/fesm2015/volosoft-abp.ng.theme.lepton-x-layouts.mjs.map +0 -1
- package/fesm2015/volosoft-abp.ng.theme.lepton-x.mjs +0 -542
- package/fesm2015/volosoft-abp.ng.theme.lepton-x.mjs.map +0 -1
- package/fesm2020/volosoft-abp.ng.theme.lepton-x-account.mjs +0 -121
- package/fesm2020/volosoft-abp.ng.theme.lepton-x-account.mjs.map +0 -1
- package/fesm2020/volosoft-abp.ng.theme.lepton-x-layouts.mjs +0 -219
- package/fesm2020/volosoft-abp.ng.theme.lepton-x-layouts.mjs.map +0 -1
- package/fesm2020/volosoft-abp.ng.theme.lepton-x.mjs.map +0 -1
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { inject, Component, NgModule } from '@angular/core';
|
|
3
|
+
import * as i1$1 from '@volosoft/ngx-lepton-x/layouts';
|
|
4
|
+
import { LpxAuthLayoutModule } from '@volosoft/ngx-lepton-x/layouts';
|
|
5
|
+
import * as i2 from '@abp/ng.core';
|
|
6
|
+
import { CoreModule } from '@abp/ng.core';
|
|
7
|
+
import * as i3 from '@abp/ng.theme.shared';
|
|
8
|
+
import { ThemeSharedModule } from '@abp/ng.theme.shared';
|
|
9
|
+
import { LpxContextMenuModule } from '@volosoft/ngx-lepton-x';
|
|
10
|
+
import * as i2$1 from '@ng-bootstrap/ng-bootstrap';
|
|
11
|
+
import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
|
|
12
|
+
import * as i2$2 from '@volo/abp.ng.lepton-x.core';
|
|
13
|
+
import { PageAlertContainerModule } from '@volo/abp.ng.lepton-x.core';
|
|
14
|
+
import * as i3$1 from '@angular/router';
|
|
15
|
+
import { NgIf, AsyncPipe, NgFor } from '@angular/common';
|
|
16
|
+
import { TenantBoxService, AuthWrapperService } from '@volo/abp.ng.account.core';
|
|
17
|
+
import * as i1 from '@angular/forms';
|
|
18
|
+
|
|
19
|
+
class TenantBoxComponent {
|
|
20
|
+
constructor() {
|
|
21
|
+
this.service = inject(TenantBoxService);
|
|
22
|
+
}
|
|
23
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: TenantBoxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
24
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: TenantBoxComponent, isStandalone: true, selector: "abp-tenant-box", providers: [TenantBoxService], ngImport: i0, template: "<ng-container *ngIf=\"(service.currentTenant$ | async) || {} as currentTenant\">\r\n <hr />\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 >{{ 'AbpUiMultiTenancy::Switch' | abpLocalization }}</a\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <hr />\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>Switch Tenant</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-secondary\">\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</ng-container>\r\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: CoreModule }, { 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],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]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: i2.LocalizationPipe, name: "abpLocalization" }, { kind: "directive", type: i2.AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { kind: "ngmodule", type: ThemeSharedModule }, { kind: "component", type: i3.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "component", type: i3.ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { kind: "directive", type: i3.ModalCloseDirective, selector: "[abpClose]" }] }); }
|
|
25
|
+
}
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: TenantBoxComponent, decorators: [{
|
|
27
|
+
type: Component,
|
|
28
|
+
args: [{ standalone: true, selector: 'abp-tenant-box', imports: [NgIf, NgFor, AsyncPipe, CoreModule, ThemeSharedModule], providers: [TenantBoxService], template: "<ng-container *ngIf=\"(service.currentTenant$ | async) || {} as currentTenant\">\r\n <hr />\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 >{{ 'AbpUiMultiTenancy::Switch' | abpLocalization }}</a\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <hr />\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>Switch Tenant</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-secondary\">\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</ng-container>\r\n" }]
|
|
29
|
+
}] });
|
|
30
|
+
|
|
31
|
+
class AuthWrapperComponent {
|
|
32
|
+
constructor() {
|
|
33
|
+
this.service = inject(AuthWrapperService);
|
|
34
|
+
}
|
|
35
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: AuthWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
36
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: AuthWrapperComponent, isStandalone: true, selector: "abp-auth-wrapper", providers: [AuthWrapperService], ngImport: i0, template: "<div class=\"card mx-auto\" style=\"max-width: 30rem\">\r\n <div class=\"card-body p-3 p-sm-4\">\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 <button\r\n ngbDropdownToggle\r\n *ngIf=\"service.defaultLanguage$ | async as defaultLang\"\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 <ul ngbDropdownMenu class=\"dropdown-menu dropdown-menu-right\">\r\n <li>\r\n <a\r\n *ngFor=\"let lang of service.dropdownLanguages$ | async\"\r\n class=\"dropdown-item pointer\"\r\n (click)=\"service.onChangeLang(lang.cultureName)\"\r\n >\r\n {{ lang?.displayName }}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n <ng-container\r\n *ngIf=\"\r\n (service.isMultiTenancyEnabled$ | async) && service.isTenantBoxVisible\r\n \"\r\n >\r\n <abp-tenant-box\r\n *abpReplaceableTemplate=\"{ componentKey: service.tenantBoxKey }\"\r\n ></abp-tenant-box>\r\n </ng-container>\r\n\r\n <div\r\n *ngIf=\"service.enableLocalLogin$ | async; else disableLocalLoginTemplate\"\r\n >\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <ng-template #disableLocalLoginTemplate>\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 </ng-template>\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 >2023 \u00A9\r\n <a\r\n href=\"https://leptontheme.com/\"\r\n class=\"text-dark text-decoration-none\"\r\n target=\"_blank\"\r\n >LeptonX Theme</a\r\n >\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 >ABP Platform</a\r\n >\r\n </span>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: CoreModule }, { kind: "pipe", type: i2.LocalizationPipe, name: "abpLocalization" }, { kind: "directive", type: i2.ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "component", type: TenantBoxComponent, selector: "abp-tenant-box" }, { kind: "ngmodule", type: NgbDropdownModule }, { kind: "directive", type: i2$1.NgbDropdown, selector: "[ngbDropdown]", inputs: ["autoClose", "dropdownClass", "open", "placement", "popperOptions", "container", "display"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { kind: "directive", type: i2$1.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { kind: "directive", type: i2$1.NgbDropdownMenu, selector: "[ngbDropdownMenu]" }] }); }
|
|
37
|
+
}
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: AuthWrapperComponent, decorators: [{
|
|
39
|
+
type: Component,
|
|
40
|
+
args: [{ standalone: true, selector: 'abp-auth-wrapper', imports: [
|
|
41
|
+
NgIf,
|
|
42
|
+
NgFor,
|
|
43
|
+
AsyncPipe,
|
|
44
|
+
CoreModule,
|
|
45
|
+
TenantBoxComponent,
|
|
46
|
+
NgbDropdownModule,
|
|
47
|
+
], providers: [AuthWrapperService], template: "<div class=\"card mx-auto\" style=\"max-width: 30rem\">\r\n <div class=\"card-body p-3 p-sm-4\">\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 <button\r\n ngbDropdownToggle\r\n *ngIf=\"service.defaultLanguage$ | async as defaultLang\"\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 <ul ngbDropdownMenu class=\"dropdown-menu dropdown-menu-right\">\r\n <li>\r\n <a\r\n *ngFor=\"let lang of service.dropdownLanguages$ | async\"\r\n class=\"dropdown-item pointer\"\r\n (click)=\"service.onChangeLang(lang.cultureName)\"\r\n >\r\n {{ lang?.displayName }}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n <ng-container\r\n *ngIf=\"\r\n (service.isMultiTenancyEnabled$ | async) && service.isTenantBoxVisible\r\n \"\r\n >\r\n <abp-tenant-box\r\n *abpReplaceableTemplate=\"{ componentKey: service.tenantBoxKey }\"\r\n ></abp-tenant-box>\r\n </ng-container>\r\n\r\n <div\r\n *ngIf=\"service.enableLocalLogin$ | async; else disableLocalLoginTemplate\"\r\n >\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <ng-template #disableLocalLoginTemplate>\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 </ng-template>\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 >2023 \u00A9\r\n <a\r\n href=\"https://leptontheme.com/\"\r\n class=\"text-dark text-decoration-none\"\r\n target=\"_blank\"\r\n >LeptonX Theme</a\r\n >\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 >ABP Platform</a\r\n >\r\n </span>\r\n</div>\r\n" }]
|
|
48
|
+
}] });
|
|
49
|
+
|
|
50
|
+
class AccountLayoutComponent {
|
|
51
|
+
constructor() {
|
|
52
|
+
this.authWrapperKey = 'Account.AuthWrapper';
|
|
53
|
+
}
|
|
54
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: AccountLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
55
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.4", type: AccountLayoutComponent, 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: i1$1.AuthLayoutComponent, selector: "lpx-auth-layout" }, { kind: "component", type: i2$2.PageAlertContainerComponent, selector: "abp-page-alert-container" }, { kind: "directive", type: i3$1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i2.ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "component", type: AuthWrapperComponent, selector: "abp-auth-wrapper" }] }); }
|
|
56
|
+
}
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: AccountLayoutComponent, decorators: [{
|
|
58
|
+
type: Component,
|
|
59
|
+
args: [{ selector: 'abp-account-layout', 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" }]
|
|
60
|
+
}] });
|
|
61
|
+
|
|
62
|
+
class AccountLayoutModule {
|
|
63
|
+
static forRoot(options) {
|
|
64
|
+
return {
|
|
65
|
+
ngModule: AccountLayoutModule,
|
|
66
|
+
providers: [
|
|
67
|
+
LpxAuthLayoutModule.forRoot(options?.layout).providers,
|
|
68
|
+
],
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: AccountLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
72
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.4", ngImport: i0, type: AccountLayoutModule, declarations: [AccountLayoutComponent], imports: [LpxAuthLayoutModule,
|
|
73
|
+
LpxContextMenuModule,
|
|
74
|
+
PageAlertContainerModule,
|
|
75
|
+
CoreModule,
|
|
76
|
+
ThemeSharedModule,
|
|
77
|
+
NgbDropdownModule,
|
|
78
|
+
AuthWrapperComponent] }); }
|
|
79
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: AccountLayoutModule, imports: [LpxAuthLayoutModule,
|
|
80
|
+
LpxContextMenuModule,
|
|
81
|
+
PageAlertContainerModule,
|
|
82
|
+
CoreModule,
|
|
83
|
+
ThemeSharedModule,
|
|
84
|
+
NgbDropdownModule,
|
|
85
|
+
AuthWrapperComponent] }); }
|
|
86
|
+
}
|
|
87
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.4", ngImport: i0, type: AccountLayoutModule, decorators: [{
|
|
88
|
+
type: NgModule,
|
|
89
|
+
args: [{
|
|
90
|
+
imports: [
|
|
91
|
+
LpxAuthLayoutModule,
|
|
92
|
+
LpxContextMenuModule,
|
|
93
|
+
PageAlertContainerModule,
|
|
94
|
+
CoreModule,
|
|
95
|
+
ThemeSharedModule,
|
|
96
|
+
NgbDropdownModule,
|
|
97
|
+
AuthWrapperComponent,
|
|
98
|
+
],
|
|
99
|
+
declarations: [AccountLayoutComponent],
|
|
100
|
+
}]
|
|
101
|
+
}] });
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Generated bundle index. Do not edit.
|
|
105
|
+
*/
|
|
106
|
+
|
|
107
|
+
export { AccountLayoutComponent, AccountLayoutModule, AuthWrapperComponent, TenantBoxComponent };
|
|
108
|
+
//# sourceMappingURL=volosoft-abp.ng.theme.lepton-x-account.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"volosoft-abp.ng.theme.lepton-x-account.mjs","sources":["../../../../libs/volo-lepton-x/account/src/account/components/tenant-box/tenant-box.component.ts","../../../../libs/volo-lepton-x/account/src/account/components/tenant-box/tenant-box.component.html","../../../../libs/volo-lepton-x/account/src/account/components/auth-wrapper/auth-wrapper.component.ts","../../../../libs/volo-lepton-x/account/src/account/components/auth-wrapper/auth-wrapper.component.html","../../../../libs/volo-lepton-x/account/src/account/account-layout.component.ts","../../../../libs/volo-lepton-x/account/src/account/account-layout.component.html","../../../../libs/volo-lepton-x/account/src/account/account-layout.module.ts","../../../../libs/volo-lepton-x/account/src/volosoft-abp.ng.theme.lepton-x-account.ts"],"sourcesContent":["import { AsyncPipe, NgFor, NgIf } from '@angular/common';\r\nimport { Component, inject } from '@angular/core';\r\nimport { CoreModule } from '@abp/ng.core';\r\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\r\nimport { TenantBoxService } from '@volo/abp.ng.account.core';\r\n\r\n@Component({\r\n standalone: true,\r\n selector: 'abp-tenant-box',\r\n templateUrl: './tenant-box.component.html',\r\n imports: [NgIf, NgFor, AsyncPipe, CoreModule, ThemeSharedModule],\r\n providers: [TenantBoxService],\r\n})\r\nexport class TenantBoxComponent {\r\n protected readonly service = inject(TenantBoxService);\r\n}\r\n","<ng-container *ngIf=\"(service.currentTenant$ | async) || {} as currentTenant\">\r\n <hr />\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 >{{ 'AbpUiMultiTenancy::Switch' | abpLocalization }}</a\r\n >\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <hr />\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>Switch Tenant</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-secondary\">\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</ng-container>\r\n","import { AsyncPipe, NgFor, NgIf } from '@angular/common';\r\nimport { Component, inject } from '@angular/core';\r\nimport { CoreModule } from '@abp/ng.core';\r\nimport { AuthWrapperService } from '@volo/abp.ng.account.core';\r\nimport { TenantBoxComponent } from '../tenant-box/tenant-box.component';\r\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n standalone: true,\r\n selector: 'abp-auth-wrapper',\r\n templateUrl: './auth-wrapper.component.html',\r\n imports: [\r\n NgIf,\r\n NgFor,\r\n AsyncPipe,\r\n CoreModule,\r\n TenantBoxComponent,\r\n NgbDropdownModule,\r\n ],\r\n providers: [AuthWrapperService],\r\n})\r\nexport class AuthWrapperComponent {\r\n protected readonly service = inject(AuthWrapperService);\r\n}\r\n","<div class=\"card mx-auto\" style=\"max-width: 30rem\">\r\n <div class=\"card-body p-3 p-sm-4\">\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 <button\r\n ngbDropdownToggle\r\n *ngIf=\"service.defaultLanguage$ | async as defaultLang\"\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 <ul ngbDropdownMenu class=\"dropdown-menu dropdown-menu-right\">\r\n <li>\r\n <a\r\n *ngFor=\"let lang of service.dropdownLanguages$ | async\"\r\n class=\"dropdown-item pointer\"\r\n (click)=\"service.onChangeLang(lang.cultureName)\"\r\n >\r\n {{ lang?.displayName }}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n <ng-container\r\n *ngIf=\"\r\n (service.isMultiTenancyEnabled$ | async) && service.isTenantBoxVisible\r\n \"\r\n >\r\n <abp-tenant-box\r\n *abpReplaceableTemplate=\"{ componentKey: service.tenantBoxKey }\"\r\n ></abp-tenant-box>\r\n </ng-container>\r\n\r\n <div\r\n *ngIf=\"service.enableLocalLogin$ | async; else disableLocalLoginTemplate\"\r\n >\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <ng-template #disableLocalLoginTemplate>\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 </ng-template>\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 >2023 ©\r\n <a\r\n href=\"https://leptontheme.com/\"\r\n class=\"text-dark text-decoration-none\"\r\n target=\"_blank\"\r\n >LeptonX Theme</a\r\n >\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 >ABP Platform</a\r\n >\r\n </span>\r\n</div>\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'abp-account-layout',\r\n templateUrl: './account-layout.component.html',\r\n})\r\nexport class AccountLayoutComponent {\r\n authWrapperKey = 'Account.AuthWrapper';\r\n}\r\n","<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","import { ModuleWithProviders, NgModule, Provider } from '@angular/core';\r\nimport {\r\n LpxAuthLayoutModule,\r\n LpxAuthLayoutOptions,\r\n} from '@volosoft/ngx-lepton-x/layouts';\r\nimport { CoreModule } from '@abp/ng.core';\r\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\r\nimport { LpxContextMenuModule } from '@volosoft/ngx-lepton-x';\r\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AccountLayoutComponent } from './account-layout.component';\r\nimport { PageAlertContainerModule } from '@volo/abp.ng.lepton-x.core';\r\nimport { AuthWrapperComponent } from './components';\r\n\r\nexport interface AccountLayoutOptions {\r\n layout?: LpxAuthLayoutOptions;\r\n}\r\n\r\n@NgModule({\r\n imports: [\r\n LpxAuthLayoutModule,\r\n LpxContextMenuModule,\r\n PageAlertContainerModule,\r\n CoreModule,\r\n ThemeSharedModule,\r\n NgbDropdownModule,\r\n AuthWrapperComponent,\r\n ],\r\n declarations: [AccountLayoutComponent],\r\n})\r\nexport class AccountLayoutModule {\r\n static forRoot(\r\n options?: AccountLayoutOptions\r\n ): ModuleWithProviders<AccountLayoutModule> {\r\n return {\r\n ngModule: AccountLayoutModule,\r\n providers: [\r\n LpxAuthLayoutModule.forRoot(options?.layout).providers as Provider,\r\n ],\r\n };\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","i3","i4","i5.AuthWrapperComponent"],"mappings":"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"}
|