@abp/ng.theme.basic 5.0.0-rc.1 → 5.0.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/abp-ng.theme.basic.d.ts +5 -5
- package/bundles/abp-ng.theme.basic-testing.umd.js +37 -37
- package/bundles/abp-ng.theme.basic.umd.js +883 -883
- package/bundles/abp-ng.theme.basic.umd.js.map +1 -1
- package/esm2015/abp-ng.theme.basic.js +4 -4
- package/esm2015/lib/components/account-layout/account-layout.component.js +35 -35
- package/esm2015/lib/components/account-layout/auth-wrapper/auth-wrapper.component.js +22 -22
- package/esm2015/lib/components/account-layout/tenant-box/tenant-box.component.js +23 -23
- package/esm2015/lib/components/application-layout/application-layout.component.js +35 -35
- package/esm2015/lib/components/empty-layout/empty-layout.component.js +16 -16
- package/esm2015/lib/components/index.js +12 -12
- package/esm2015/lib/components/logo/logo.component.js +23 -23
- package/esm2015/lib/components/nav-items/current-user.component.js +37 -37
- package/esm2015/lib/components/nav-items/languages.component.js +38 -38
- package/esm2015/lib/components/nav-items/nav-items.component.js +21 -21
- package/esm2015/lib/components/page-alert-container/page-alert-container.component.js +22 -22
- package/esm2015/lib/components/routes/routes.component.js +39 -39
- package/esm2015/lib/components/validation-error/validation-error.component.js +31 -31
- package/esm2015/lib/constants/styles.js +1 -1
- package/esm2015/lib/enums/components.js +1 -1
- package/esm2015/lib/enums/index.js +1 -1
- package/esm2015/lib/handlers/index.js +1 -1
- package/esm2015/lib/handlers/lazy-style.handler.js +81 -81
- package/esm2015/lib/models/index.js +1 -1
- package/esm2015/lib/models/layout.js +1 -1
- package/esm2015/lib/providers/index.js +2 -2
- package/esm2015/lib/providers/nav-item.provider.js +28 -28
- package/esm2015/lib/providers/styles.provider.js +34 -34
- package/esm2015/lib/services/layout.service.js +37 -37
- package/esm2015/lib/theme-basic.module.js +126 -126
- package/esm2015/lib/tokens/index.js +1 -1
- package/esm2015/lib/tokens/lazy-styles.token.js +2 -2
- package/esm2015/public-api.js +10 -10
- package/esm2015/testing/abp-ng.theme.basic-testing.js +4 -4
- package/esm2015/testing/lib/theme-basic-testing.module.js +37 -37
- package/esm2015/testing/public-api.js +1 -1
- package/fesm2015/abp-ng.theme.basic-testing.js +34 -34
- package/fesm2015/abp-ng.theme.basic.js +501 -501
- package/fesm2015/abp-ng.theme.basic.js.map +1 -1
- package/lib/components/account-layout/account-layout.component.d.ts +13 -13
- package/lib/components/account-layout/auth-wrapper/auth-wrapper.component.d.ts +8 -8
- package/lib/components/account-layout/tenant-box/tenant-box.component.d.ts +8 -8
- package/lib/components/application-layout/application-layout.component.d.ts +12 -12
- package/lib/components/empty-layout/empty-layout.component.d.ts +7 -7
- package/lib/components/index.d.ts +12 -12
- package/lib/components/logo/logo.component.d.ts +9 -9
- package/lib/components/nav-items/current-user.component.d.ts +17 -17
- package/lib/components/nav-items/languages.component.d.ts +16 -16
- package/lib/components/nav-items/nav-items.component.d.ts +10 -10
- package/lib/components/page-alert-container/page-alert-container.component.d.ts +8 -8
- package/lib/components/routes/routes.component.d.ts +18 -18
- package/lib/components/validation-error/validation-error.component.d.ts +9 -9
- package/lib/constants/styles.d.ts +2 -2
- package/lib/enums/components.d.ts +10 -10
- package/lib/enums/index.d.ts +1 -1
- package/lib/handlers/index.d.ts +1 -1
- package/lib/handlers/lazy-style.handler.d.ts +23 -23
- package/lib/models/index.d.ts +1 -1
- package/lib/models/layout.d.ts +11 -11
- package/lib/providers/index.d.ts +2 -2
- package/lib/providers/nav-item.provider.d.ts +8 -8
- package/lib/providers/styles.provider.d.ts +8 -8
- package/lib/services/layout.service.d.ts +18 -18
- package/lib/theme-basic.module.d.ts +32 -32
- package/lib/tokens/index.d.ts +1 -1
- package/lib/tokens/lazy-styles.token.d.ts +2 -2
- package/package.json +4 -4
- package/public-api.d.ts +7 -7
- package/testing/abp-ng.theme.basic-testing.d.ts +5 -5
- package/testing/lib/theme-basic-testing.module.d.ts +9 -9
- package/testing/public-api.d.ts +1 -1
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { Component, ViewEncapsulation } from '@angular/core';
|
|
2
|
-
import { PageAlertService } from '@abp/ng.theme.shared';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@abp/ng.theme.shared";
|
|
5
|
-
import * as i2 from "@angular/common";
|
|
6
|
-
import * as i3 from "@abp/ng.core";
|
|
7
|
-
export class PageAlertContainerComponent {
|
|
8
|
-
constructor(service) {
|
|
9
|
-
this.service = service;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
PageAlertContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PageAlertContainerComponent, deps: [{ token: i1.PageAlertService }], target: i0.ɵɵFactoryTarget.Component });
|
|
13
|
-
PageAlertContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: PageAlertContainerComponent, selector: "abp-page-alert-container", ngImport: i0, template: "<ng-container *ngFor=\"let alert of service.alerts$ | async; let i = index\">\n <div\n class=\"alert alert-{{ alert.type }} fade show\"\n [ngClass]=\"{ 'alert-dismissible fade show': alert.dismissible }\"\n role=\"alert\"\n >\n <h4 class=\"alert-heading\" *ngIf=\"alert.title\">\n {{ alert.title | abpLocalization: alert.titleLocalizationParams }}\n </h4>\n {{ alert.message | abpLocalization: alert.messageLocalizationParams }}\n <button\n *ngIf=\"alert.dismissible\"\n type=\"button\"\n class=\"close\"\n data-dismiss=\"alert\"\n aria-label=\"Close\"\n (click)=\"service.remove(i)\"\n
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PageAlertContainerComponent, decorators: [{
|
|
15
|
-
type: Component,
|
|
16
|
-
args: [{
|
|
17
|
-
selector: 'abp-page-alert-container',
|
|
18
|
-
templateUrl: './page-alert-container.component.html',
|
|
19
|
-
encapsulation: ViewEncapsulation.None,
|
|
20
|
-
}]
|
|
21
|
-
}], ctorParameters: function () { return [{ type: i1.PageAlertService }]; } });
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Component, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { PageAlertService } from '@abp/ng.theme.shared';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@abp/ng.theme.shared";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
import * as i3 from "@abp/ng.core";
|
|
7
|
+
export class PageAlertContainerComponent {
|
|
8
|
+
constructor(service) {
|
|
9
|
+
this.service = service;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
PageAlertContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PageAlertContainerComponent, deps: [{ token: i1.PageAlertService }], target: i0.ɵɵFactoryTarget.Component });
|
|
13
|
+
PageAlertContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: PageAlertContainerComponent, selector: "abp-page-alert-container", ngImport: i0, template: "<ng-container *ngFor=\"let alert of service.alerts$ | async; let i = index\">\n <div\n class=\"alert alert-{{ alert.type }} fade show\"\n [ngClass]=\"{ 'alert-dismissible fade show': alert.dismissible }\"\n role=\"alert\"\n >\n <h4 class=\"alert-heading\" *ngIf=\"alert.title\">\n {{ alert.title | abpLocalization: alert.titleLocalizationParams }}\n </h4>\n {{ alert.message | abpLocalization: alert.messageLocalizationParams }}\n <button\n *ngIf=\"alert.dismissible\"\n type=\"button\"\n class=\"btn-close\"\n data-dismiss=\"alert\"\n aria-label=\"Close\"\n (click)=\"service.remove(i)\"\n ></button>\n </div>\n</ng-container>\n", directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i2.AsyncPipe, "abpLocalization": i3.LocalizationPipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PageAlertContainerComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{
|
|
17
|
+
selector: 'abp-page-alert-container',
|
|
18
|
+
templateUrl: './page-alert-container.component.html',
|
|
19
|
+
encapsulation: ViewEncapsulation.None,
|
|
20
|
+
}]
|
|
21
|
+
}], ctorParameters: function () { return [{ type: i1.PageAlertService }]; } });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1hbGVydC1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGhlbWUtYmFzaWMvc3JjL2xpYi9jb21wb25lbnRzL3BhZ2UtYWxlcnQtY29udGFpbmVyL3BhZ2UtYWxlcnQtY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLWJhc2ljL3NyYy9saWIvY29tcG9uZW50cy9wYWdlLWFsZXJ0LWNvbnRhaW5lci9wYWdlLWFsZXJ0LWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7OztBQU94RCxNQUFNLE9BQU8sMkJBQTJCO0lBQ3RDLFlBQW1CLE9BQXlCO1FBQXpCLFlBQU8sR0FBUCxPQUFPLENBQWtCO0lBQUcsQ0FBQzs7eUhBRHJDLDJCQUEyQjs2R0FBM0IsMkJBQTJCLGdFQ1J4QyxxckJBb0JBOzRGRFphLDJCQUEyQjtrQkFMdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsMEJBQTBCO29CQUNwQyxXQUFXLEVBQUUsdUNBQXVDO29CQUNwRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDdEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQYWdlQWxlcnRTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtcGFnZS1hbGVydC1jb250YWluZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcGFnZS1hbGVydC1jb250YWluZXIuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBQYWdlQWxlcnRDb250YWluZXJDb21wb25lbnQge1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgc2VydmljZTogUGFnZUFsZXJ0U2VydmljZSkge31cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGFsZXJ0IG9mIHNlcnZpY2UuYWxlcnRzJCB8IGFzeW5jOyBsZXQgaSA9IGluZGV4XCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImFsZXJ0IGFsZXJ0LXt7IGFsZXJ0LnR5cGUgfX0gZmFkZSBzaG93XCJcbiAgICBbbmdDbGFzc109XCJ7ICdhbGVydC1kaXNtaXNzaWJsZSBmYWRlIHNob3cnOiBhbGVydC5kaXNtaXNzaWJsZSB9XCJcbiAgICByb2xlPVwiYWxlcnRcIlxuICA+XG4gICAgPGg0IGNsYXNzPVwiYWxlcnQtaGVhZGluZ1wiICpuZ0lmPVwiYWxlcnQudGl0bGVcIj5cbiAgICAgIHt7IGFsZXJ0LnRpdGxlIHwgYWJwTG9jYWxpemF0aW9uOiBhbGVydC50aXRsZUxvY2FsaXphdGlvblBhcmFtcyB9fVxuICAgIDwvaDQ+XG4gICAge3sgYWxlcnQubWVzc2FnZSB8IGFicExvY2FsaXphdGlvbjogYWxlcnQubWVzc2FnZUxvY2FsaXphdGlvblBhcmFtcyB9fVxuICAgIDxidXR0b25cbiAgICAgICpuZ0lmPVwiYWxlcnQuZGlzbWlzc2libGVcIlxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBjbGFzcz1cImJ0bi1jbG9zZVwiXG4gICAgICBkYXRhLWRpc21pc3M9XCJhbGVydFwiXG4gICAgICBhcmlhLWxhYmVsPVwiQ2xvc2VcIlxuICAgICAgKGNsaWNrKT1cInNlcnZpY2UucmVtb3ZlKGkpXCJcbiAgICA+PC9idXR0b24+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
import { RoutesService } from '@abp/ng.core';
|
|
2
|
-
import { Component, Input, QueryList, Renderer2, ViewChildren, } from '@angular/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@abp/ng.core";
|
|
5
|
-
import * as i2 from "@angular/common";
|
|
6
|
-
import * as i3 from "@angular/router";
|
|
7
|
-
import * as i4 from "@ng-bootstrap/ng-bootstrap";
|
|
8
|
-
import * as i5 from "@abp/ng.theme.shared";
|
|
9
|
-
export class RoutesComponent {
|
|
10
|
-
constructor(routesService, renderer) {
|
|
11
|
-
this.routesService = routesService;
|
|
12
|
-
this.renderer = renderer;
|
|
13
|
-
this.rootDropdownExpand = {};
|
|
14
|
-
this.trackByFn = (_, item) => item.name;
|
|
15
|
-
}
|
|
16
|
-
isDropdown(node) {
|
|
17
|
-
return !(node === null || node === void 0 ? void 0 : node.isLeaf) || this.routesService.hasChildren(node.name);
|
|
18
|
-
}
|
|
19
|
-
closeDropdown() {
|
|
20
|
-
this.childrenContainers.forEach(({ nativeElement }) => {
|
|
21
|
-
this.renderer.addClass(nativeElement, 'd-none');
|
|
22
|
-
setTimeout(() => this.renderer.removeClass(nativeElement, 'd-none'), 0);
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
RoutesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RoutesComponent, deps: [{ token: i1.RoutesService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
-
RoutesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: RoutesComponent, selector: "abp-routes", inputs: { smallScreen: "smallScreen" }, viewQueries: [{ propertyName: "childrenContainers", predicate: ["childrenContainer"], descendants: true }], ngImport: i0, template: "<ul class=\"navbar-nav\">\n <ng-container\n *ngFor=\"let route of routesService.visible$ | async; trackBy: trackByFn\"\n [ngTemplateOutlet]=\"isDropdown(route) ? dropdownLink : defaultLink\"\n [ngTemplateOutletContext]=\"{ $implicit: route }\"\n >\n </ng-container>\n\n <ng-template #defaultLink let-route>\n <li class=\"nav-item\" *abpPermission=\"route.requiredPolicy\">\n <a class=\"nav-link\" [routerLink]=\"[route.path]\"\n ><i *ngIf=\"route.iconClass\" [ngClass]=\"route.iconClass\"></i>\n {{ route.name | abpLocalization }}</a\n >\n </li>\n </ng-template>\n\n <ng-template #dropdownLink let-route>\n <ng-container *ngIf=\"route.children?.length\">\n <li\n class=\"nav-item dropdown\"\n display=\"static\"\n *abpPermission=\"route.requiredPolicy\"\n (click)=\"\n rootDropdownExpand[route.name]\n ? (rootDropdownExpand[route.name] = false)\n : (rootDropdownExpand[route.name] = true)\n \"\n >\n <a\n class=\"nav-link dropdown-toggle\"\n data-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n href=\"javascript:void(0)\"\n >\n <i *ngIf=\"route.iconClass\" [ngClass]=\"route.iconClass\"></i>\n {{ route.name | abpLocalization }}\n </a>\n <div\n #routeContainer\n class=\"dropdown-menu border-0 shadow-sm\"\n (click)=\"$event.preventDefault(); $event.stopPropagation()\"\n [class.d-block]=\"smallScreen && rootDropdownExpand[route.name]\"\n >\n <ng-container\n *ngTemplateOutlet=\"forTemplate; context: { $implicit: route }\"\n ></ng-container>\n </div>\n </li>\n </ng-container>\n </ng-template>\n\n <ng-template #forTemplate let-route>\n <ng-container *ngFor=\"let child of route.children\">\n <ng-template\n [ngTemplateOutlet]=\"child.children?.length ? dropdownChild : defaultChild\"\n [ngTemplateOutletContext]=\"{ $implicit: child }\"\n ></ng-template>\n </ng-container>\n </ng-template>\n\n <ng-template #defaultChild let-child>\n <ng-container *ngIf=\"child.path\">\n <div class=\"dropdown-submenu\" *abpPermission=\"child.requiredPolicy\">\n <a class=\"dropdown-item\" [routerLink]=\"[child.path]\" (click)=\"closeDropdown()\">\n <i *ngIf=\"child.iconClass\" [ngClass]=\"child.iconClass\"></i>\n {{ child.name | abpLocalization }}</a\n >\n </div>\n </ng-container>\n </ng-template>\n\n <ng-template #dropdownChild let-child>\n <div\n class=\"dropdown-submenu\"\n ngbDropdown\n #dropdownSubmenu=\"ngbDropdown\"\n placement=\"right-top\"\n [autoClose]=\"true\"\n *abpPermission=\"child.requiredPolicy\"\n >\n <div ngbDropdownToggle [class.dropdown-toggle]=\"false\">\n <a\n abpEllipsis=\"210px\"\n [abpEllipsisEnabled]=\"!smallScreen\"\n role=\"button\"\n class=\"btn d-block text-start dropdown-toggle\"\n >\n <i *ngIf=\"child.iconClass\" [ngClass]=\"child.iconClass\"></i>\n {{ child.name | abpLocalization }}\n </a>\n </div>\n <div\n #childrenContainer\n class=\"dropdown-menu dropdown-menu-start border-0 shadow-sm\"\n [class.d-block]=\"smallScreen && dropdownSubmenu.isOpen()\"\n >\n <ng-container *ngTemplateOutlet=\"forTemplate; context: { $implicit: child }\"></ng-container>\n </div>\n </div>\n </ng-template>\n</ul>\n", directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i1.PermissionDirective, selector: "[abpPermission]", inputs: ["abpPermission"] }, { type: i3.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgbDropdown, selector: "[ngbDropdown]", inputs: ["open", "placement", "container", "autoClose", "display", "dropdownClass"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { type: i4.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { type: i5.EllipsisDirective, selector: "[abpEllipsis]", inputs: ["abpEllipsis", "title", "abpEllipsisEnabled"] }], pipes: { "async": i2.AsyncPipe, "abpLocalization": i1.LocalizationPipe } });
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RoutesComponent, decorators: [{
|
|
29
|
-
type: Component,
|
|
30
|
-
args: [{
|
|
31
|
-
selector: 'abp-routes',
|
|
32
|
-
templateUrl: 'routes.component.html',
|
|
33
|
-
}]
|
|
34
|
-
}], ctorParameters: function () { return [{ type: i1.RoutesService }, { type: i0.Renderer2 }]; }, propDecorators: { smallScreen: [{
|
|
35
|
-
type: Input
|
|
36
|
-
}], childrenContainers: [{
|
|
37
|
-
type: ViewChildren,
|
|
38
|
-
args: ['childrenContainer']
|
|
39
|
-
}] } });
|
|
1
|
+
import { RoutesService } from '@abp/ng.core';
|
|
2
|
+
import { Component, Input, QueryList, Renderer2, ViewChildren, } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@abp/ng.core";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
import * as i3 from "@angular/router";
|
|
7
|
+
import * as i4 from "@ng-bootstrap/ng-bootstrap";
|
|
8
|
+
import * as i5 from "@abp/ng.theme.shared";
|
|
9
|
+
export class RoutesComponent {
|
|
10
|
+
constructor(routesService, renderer) {
|
|
11
|
+
this.routesService = routesService;
|
|
12
|
+
this.renderer = renderer;
|
|
13
|
+
this.rootDropdownExpand = {};
|
|
14
|
+
this.trackByFn = (_, item) => item.name;
|
|
15
|
+
}
|
|
16
|
+
isDropdown(node) {
|
|
17
|
+
return !(node === null || node === void 0 ? void 0 : node.isLeaf) || this.routesService.hasChildren(node.name);
|
|
18
|
+
}
|
|
19
|
+
closeDropdown() {
|
|
20
|
+
this.childrenContainers.forEach(({ nativeElement }) => {
|
|
21
|
+
this.renderer.addClass(nativeElement, 'd-none');
|
|
22
|
+
setTimeout(() => this.renderer.removeClass(nativeElement, 'd-none'), 0);
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
RoutesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RoutesComponent, deps: [{ token: i1.RoutesService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
+
RoutesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: RoutesComponent, selector: "abp-routes", inputs: { smallScreen: "smallScreen" }, viewQueries: [{ propertyName: "childrenContainers", predicate: ["childrenContainer"], descendants: true }], ngImport: i0, template: "<ul class=\"navbar-nav\">\n <ng-container\n *ngFor=\"let route of routesService.visible$ | async; trackBy: trackByFn\"\n [ngTemplateOutlet]=\"isDropdown(route) ? dropdownLink : defaultLink\"\n [ngTemplateOutletContext]=\"{ $implicit: route }\"\n >\n </ng-container>\n\n <ng-template #defaultLink let-route>\n <li class=\"nav-item\" *abpPermission=\"route.requiredPolicy\">\n <a class=\"nav-link\" [routerLink]=\"[route.path]\"\n ><i *ngIf=\"route.iconClass\" [ngClass]=\"route.iconClass\"></i>\n {{ route.name | abpLocalization }}</a\n >\n </li>\n </ng-template>\n\n <ng-template #dropdownLink let-route>\n <ng-container *ngIf=\"route.children?.length\">\n <li\n class=\"nav-item dropdown\"\n display=\"static\"\n *abpPermission=\"route.requiredPolicy\"\n (click)=\"\n rootDropdownExpand[route.name]\n ? (rootDropdownExpand[route.name] = false)\n : (rootDropdownExpand[route.name] = true)\n \"\n >\n <a\n class=\"nav-link dropdown-toggle\"\n data-toggle=\"dropdown\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n href=\"javascript:void(0)\"\n >\n <i *ngIf=\"route.iconClass\" [ngClass]=\"route.iconClass\"></i>\n {{ route.name | abpLocalization }}\n </a>\n <div\n #routeContainer\n class=\"dropdown-menu border-0 shadow-sm\"\n (click)=\"$event.preventDefault(); $event.stopPropagation()\"\n [class.d-block]=\"smallScreen && rootDropdownExpand[route.name]\"\n >\n <ng-container\n *ngTemplateOutlet=\"forTemplate; context: { $implicit: route }\"\n ></ng-container>\n </div>\n </li>\n </ng-container>\n </ng-template>\n\n <ng-template #forTemplate let-route>\n <ng-container *ngFor=\"let child of route.children\">\n <ng-template\n [ngTemplateOutlet]=\"child.children?.length ? dropdownChild : defaultChild\"\n [ngTemplateOutletContext]=\"{ $implicit: child }\"\n ></ng-template>\n </ng-container>\n </ng-template>\n\n <ng-template #defaultChild let-child>\n <ng-container *ngIf=\"child.path\">\n <div class=\"dropdown-submenu\" *abpPermission=\"child.requiredPolicy\">\n <a class=\"dropdown-item\" [routerLink]=\"[child.path]\" (click)=\"closeDropdown()\">\n <i *ngIf=\"child.iconClass\" [ngClass]=\"child.iconClass\"></i>\n {{ child.name | abpLocalization }}</a\n >\n </div>\n </ng-container>\n </ng-template>\n\n <ng-template #dropdownChild let-child>\n <div\n class=\"dropdown-submenu\"\n ngbDropdown\n #dropdownSubmenu=\"ngbDropdown\"\n placement=\"right-top\"\n [autoClose]=\"true\"\n *abpPermission=\"child.requiredPolicy\"\n >\n <div ngbDropdownToggle [class.dropdown-toggle]=\"false\">\n <a\n abpEllipsis=\"210px\"\n [abpEllipsisEnabled]=\"!smallScreen\"\n role=\"button\"\n class=\"btn d-block text-start dropdown-toggle\"\n >\n <i *ngIf=\"child.iconClass\" [ngClass]=\"child.iconClass\"></i>\n {{ child.name | abpLocalization }}\n </a>\n </div>\n <div\n #childrenContainer\n class=\"dropdown-menu dropdown-menu-start border-0 shadow-sm\"\n [class.d-block]=\"smallScreen && dropdownSubmenu.isOpen()\"\n >\n <ng-container *ngTemplateOutlet=\"forTemplate; context: { $implicit: child }\"></ng-container>\n </div>\n </div>\n </ng-template>\n</ul>\n", directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i1.PermissionDirective, selector: "[abpPermission]", inputs: ["abpPermission"] }, { type: i3.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgbDropdown, selector: "[ngbDropdown]", inputs: ["open", "placement", "container", "autoClose", "display", "dropdownClass"], outputs: ["openChange"], exportAs: ["ngbDropdown"] }, { type: i4.NgbDropdownToggle, selector: "[ngbDropdownToggle]" }, { type: i5.EllipsisDirective, selector: "[abpEllipsis]", inputs: ["abpEllipsis", "title", "abpEllipsisEnabled"] }], pipes: { "async": i2.AsyncPipe, "abpLocalization": i1.LocalizationPipe } });
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: RoutesComponent, decorators: [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{
|
|
31
|
+
selector: 'abp-routes',
|
|
32
|
+
templateUrl: 'routes.component.html',
|
|
33
|
+
}]
|
|
34
|
+
}], ctorParameters: function () { return [{ type: i1.RoutesService }, { type: i0.Renderer2 }]; }, propDecorators: { smallScreen: [{
|
|
35
|
+
type: Input
|
|
36
|
+
}], childrenContainers: [{
|
|
37
|
+
type: ViewChildren,
|
|
38
|
+
args: ['childrenContainer']
|
|
39
|
+
}] } });
|
|
40
40
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLWJhc2ljL3NyYy9saWIvY29tcG9uZW50cy9yb3V0ZXMvcm91dGVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLWJhc2ljL3NyYy9saWIvY29tcG9uZW50cy9yb3V0ZXMvcm91dGVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBTyxhQUFhLEVBQVksTUFBTSxjQUFjLENBQUM7QUFDNUQsT0FBTyxFQUNMLFNBQVMsRUFFVCxLQUFLLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFFVCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFNdkIsTUFBTSxPQUFPLGVBQWU7SUFTMUIsWUFBNEIsYUFBNEIsRUFBWSxRQUFtQjtRQUEzRCxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUFZLGFBQVEsR0FBUixRQUFRLENBQVc7UUFKdkYsdUJBQWtCLEdBQUcsRUFBZ0MsQ0FBQztRQUV0RCxjQUFTLEdBQXlDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztJQUVpQixDQUFDO0lBRTNGLFVBQVUsQ0FBQyxJQUF5QjtRQUNsQyxPQUFPLENBQUMsQ0FBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsTUFBTSxDQUFBLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsYUFBYSxFQUFFLEVBQUUsRUFBRTtZQUNwRCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDaEQsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMxRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OzZHQXBCVSxlQUFlO2lHQUFmLGVBQWUsc01DZjVCLCtoSEF1R0E7NEZEeEZhLGVBQWU7a0JBSjNCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFdBQVcsRUFBRSx1QkFBdUI7aUJBQ3JDOzRIQUVVLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRTZCLGtCQUFrQjtzQkFBcEQsWUFBWTt1QkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBQlAsIFJvdXRlc1NlcnZpY2UsIFRyZWVOb2RlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgUmVuZGVyZXIyLFxuICBUcmFja0J5RnVuY3Rpb24sXG4gIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1yb3V0ZXMnLFxuICB0ZW1wbGF0ZVVybDogJ3JvdXRlcy5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFJvdXRlc0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHNtYWxsU2NyZWVuPzogYm9vbGVhbjtcblxuICBAVmlld0NoaWxkcmVuKCdjaGlsZHJlbkNvbnRhaW5lcicpIGNoaWxkcmVuQ29udGFpbmVycyE6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50Pj47XG5cbiAgcm9vdERyb3Bkb3duRXhwYW5kID0ge30gYXMgeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH07XG5cbiAgdHJhY2tCeUZuOiBUcmFja0J5RnVuY3Rpb248VHJlZU5vZGU8QUJQLlJvdXRlPj4gPSAoXywgaXRlbSkgPT4gaXRlbS5uYW1lO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSByb3V0ZXNTZXJ2aWNlOiBSb3V0ZXNTZXJ2aWNlLCBwcm90ZWN0ZWQgcmVuZGVyZXI6IFJlbmRlcmVyMikge31cblxuICBpc0Ryb3Bkb3duKG5vZGU6IFRyZWVOb2RlPEFCUC5Sb3V0ZT4pIHtcbiAgICByZXR1cm4gIW5vZGU/LmlzTGVhZiB8fCB0aGlzLnJvdXRlc1NlcnZpY2UuaGFzQ2hpbGRyZW4obm9kZS5uYW1lKTtcbiAgfVxuXG4gIGNsb3NlRHJvcGRvd24oKSB7XG4gICAgdGhpcy5jaGlsZHJlbkNvbnRhaW5lcnMuZm9yRWFjaCgoeyBuYXRpdmVFbGVtZW50IH0pID0+IHtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MobmF0aXZlRWxlbWVudCwgJ2Qtbm9uZScpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKG5hdGl2ZUVsZW1lbnQsICdkLW5vbmUnKSwgMCk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjx1bCBjbGFzcz1cIm5hdmJhci1uYXZcIj5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0Zvcj1cImxldCByb3V0ZSBvZiByb3V0ZXNTZXJ2aWNlLnZpc2libGUkIHwgYXN5bmM7IHRyYWNrQnk6IHRyYWNrQnlGblwiXG4gICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXNEcm9wZG93bihyb3V0ZSkgPyBkcm9wZG93bkxpbmsgOiBkZWZhdWx0TGlua1wiXG4gICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiByb3V0ZSB9XCJcbiAgPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8bmctdGVtcGxhdGUgI2RlZmF1bHRMaW5rIGxldC1yb3V0ZT5cbiAgICA8bGkgY2xhc3M9XCJuYXYtaXRlbVwiICphYnBQZXJtaXNzaW9uPVwicm91dGUucmVxdWlyZWRQb2xpY3lcIj5cbiAgICAgIDxhIGNsYXNzPVwibmF2LWxpbmtcIiBbcm91dGVyTGlua109XCJbcm91dGUucGF0aF1cIlxuICAgICAgICA+PGkgKm5nSWY9XCJyb3V0ZS5pY29uQ2xhc3NcIiBbbmdDbGFzc109XCJyb3V0ZS5pY29uQ2xhc3NcIj48L2k+XG4gICAgICAgIHt7IHJvdXRlLm5hbWUgfCBhYnBMb2NhbGl6YXRpb24gfX08L2FcbiAgICAgID5cbiAgICA8L2xpPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxuZy10ZW1wbGF0ZSAjZHJvcGRvd25MaW5rIGxldC1yb3V0ZT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwicm91dGUuY2hpbGRyZW4/Lmxlbmd0aFwiPlxuICAgICAgPGxpXG4gICAgICAgIGNsYXNzPVwibmF2LWl0ZW0gZHJvcGRvd25cIlxuICAgICAgICBkaXNwbGF5PVwic3RhdGljXCJcbiAgICAgICAgKmFicFBlcm1pc3Npb249XCJyb3V0ZS5yZXF1aXJlZFBvbGljeVwiXG4gICAgICAgIChjbGljayk9XCJcbiAgICAgICAgICByb290RHJvcGRvd25FeHBhbmRbcm91dGUubmFtZV1cbiAgICAgICAgICAgID8gKHJvb3REcm9wZG93bkV4cGFuZFtyb3V0ZS5uYW1lXSA9IGZhbHNlKVxuICAgICAgICAgICAgOiAocm9vdERyb3Bkb3duRXhwYW5kW3JvdXRlLm5hbWVdID0gdHJ1ZSlcbiAgICAgICAgXCJcbiAgICAgID5cbiAgICAgICAgPGFcbiAgICAgICAgICBjbGFzcz1cIm5hdi1saW5rIGRyb3Bkb3duLXRvZ2dsZVwiXG4gICAgICAgICAgZGF0YS10b2dnbGU9XCJkcm9wZG93blwiXG4gICAgICAgICAgYXJpYS1oYXNwb3B1cD1cInRydWVcIlxuICAgICAgICAgIGFyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXG4gICAgICAgICAgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8aSAqbmdJZj1cInJvdXRlLmljb25DbGFzc1wiIFtuZ0NsYXNzXT1cInJvdXRlLmljb25DbGFzc1wiPjwvaT5cbiAgICAgICAgICB7eyByb3V0ZS5uYW1lIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgIDwvYT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICNyb3V0ZUNvbnRhaW5lclxuICAgICAgICAgIGNsYXNzPVwiZHJvcGRvd24tbWVudSBib3JkZXItMCBzaGFkb3ctc21cIlxuICAgICAgICAgIChjbGljayk9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICBbY2xhc3MuZC1ibG9ja109XCJzbWFsbFNjcmVlbiAmJiByb290RHJvcGRvd25FeHBhbmRbcm91dGUubmFtZV1cIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmb3JUZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IHJvdXRlIH1cIlxuICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2xpPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxuZy10ZW1wbGF0ZSAjZm9yVGVtcGxhdGUgbGV0LXJvdXRlPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkIG9mIHJvdXRlLmNoaWxkcmVuXCI+XG4gICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2hpbGQuY2hpbGRyZW4/Lmxlbmd0aCA/IGRyb3Bkb3duQ2hpbGQgOiBkZWZhdWx0Q2hpbGRcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGNoaWxkIH1cIlxuICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvbmctdGVtcGxhdGU+XG5cbiAgPG5nLXRlbXBsYXRlICNkZWZhdWx0Q2hpbGQgbGV0LWNoaWxkPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjaGlsZC5wYXRoXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tc3VibWVudVwiICphYnBQZXJtaXNzaW9uPVwiY2hpbGQucmVxdWlyZWRQb2xpY3lcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJkcm9wZG93bi1pdGVtXCIgW3JvdXRlckxpbmtdPVwiW2NoaWxkLnBhdGhdXCIgKGNsaWNrKT1cImNsb3NlRHJvcGRvd24oKVwiPlxuICAgICAgICAgIDxpICpuZ0lmPVwiY2hpbGQuaWNvbkNsYXNzXCIgW25nQ2xhc3NdPVwiY2hpbGQuaWNvbkNsYXNzXCI+PC9pPlxuICAgICAgICAgIHt7IGNoaWxkLm5hbWUgfCBhYnBMb2NhbGl6YXRpb24gfX08L2FcbiAgICAgICAgPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvbmctdGVtcGxhdGU+XG5cbiAgPG5nLXRlbXBsYXRlICNkcm9wZG93bkNoaWxkIGxldC1jaGlsZD5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImRyb3Bkb3duLXN1Ym1lbnVcIlxuICAgICAgbmdiRHJvcGRvd25cbiAgICAgICNkcm9wZG93blN1Ym1lbnU9XCJuZ2JEcm9wZG93blwiXG4gICAgICBwbGFjZW1lbnQ9XCJyaWdodC10b3BcIlxuICAgICAgW2F1dG9DbG9zZV09XCJ0cnVlXCJcbiAgICAgICphYnBQZXJtaXNzaW9uPVwiY2hpbGQucmVxdWlyZWRQb2xpY3lcIlxuICAgID5cbiAgICAgIDxkaXYgbmdiRHJvcGRvd25Ub2dnbGUgW2NsYXNzLmRyb3Bkb3duLXRvZ2dsZV09XCJmYWxzZVwiPlxuICAgICAgICA8YVxuICAgICAgICAgIGFicEVsbGlwc2lzPVwiMjEwcHhcIlxuICAgICAgICAgIFthYnBFbGxpcHNpc0VuYWJsZWRdPVwiIXNtYWxsU2NyZWVuXCJcbiAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICBjbGFzcz1cImJ0biBkLWJsb2NrIHRleHQtc3RhcnQgZHJvcGRvd24tdG9nZ2xlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxpICpuZ0lmPVwiY2hpbGQuaWNvbkNsYXNzXCIgW25nQ2xhc3NdPVwiY2hpbGQuaWNvbkNsYXNzXCI+PC9pPlxuICAgICAgICAgIHt7IGNoaWxkLm5hbWUgfCBhYnBMb2NhbGl6YXRpb24gfX1cbiAgICAgICAgPC9hPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgICNjaGlsZHJlbkNvbnRhaW5lclxuICAgICAgICBjbGFzcz1cImRyb3Bkb3duLW1lbnUgZHJvcGRvd24tbWVudS1zdGFydCBib3JkZXItMCBzaGFkb3ctc21cIlxuICAgICAgICBbY2xhc3MuZC1ibG9ja109XCJzbWFsbFNjcmVlbiAmJiBkcm9wZG93blN1Ym1lbnUuaXNPcGVuKClcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZm9yVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBjaGlsZCB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvdWw+XG4iXX0=
|
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';
|
|
2
|
-
import { ValidationErrorComponent as ErrorComponent } from '@ngx-validate/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "@abp/ng.core";
|
|
6
|
-
export class ValidationErrorComponent extends ErrorComponent {
|
|
7
|
-
get abpErrors() {
|
|
8
|
-
if (!this.errors || !this.errors.length)
|
|
9
|
-
return [];
|
|
10
|
-
return this.errors.map(error => {
|
|
11
|
-
if (!error.message)
|
|
12
|
-
return error;
|
|
13
|
-
const index = error.message.indexOf('[');
|
|
14
|
-
if (index > -1) {
|
|
15
|
-
return Object.assign(Object.assign({}, error), { message: error.message.slice(0, index), interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(',') });
|
|
16
|
-
}
|
|
17
|
-
return error;
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
ValidationErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ValidationErrorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { ValidationErrorComponent as ErrorComponent } from '@ngx-validate/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@abp/ng.core";
|
|
6
|
+
export class ValidationErrorComponent extends ErrorComponent {
|
|
7
|
+
get abpErrors() {
|
|
8
|
+
if (!this.errors || !this.errors.length)
|
|
9
|
+
return [];
|
|
10
|
+
return this.errors.map(error => {
|
|
11
|
+
if (!error.message)
|
|
12
|
+
return error;
|
|
13
|
+
const index = error.message.indexOf('[');
|
|
14
|
+
if (index > -1) {
|
|
15
|
+
return Object.assign(Object.assign({}, error), { message: error.message.slice(0, index), interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(',') });
|
|
16
|
+
}
|
|
17
|
+
return error;
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
ValidationErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ValidationErrorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
22
22
|
ValidationErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: ValidationErrorComponent, selector: "abp-validation-error", usesInheritance: true, ngImport: i0, template: `
|
|
23
23
|
<div class="invalid-feedback" *ngFor="let error of abpErrors; trackBy: trackByFn">
|
|
24
24
|
{{ error.message | abpLocalization: error.interpoliteParams }}
|
|
25
25
|
</div>
|
|
26
|
-
`, isInline: true, directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "abpLocalization": i2.LocalizationPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ValidationErrorComponent, decorators: [{
|
|
28
|
-
type: Component,
|
|
29
|
-
args: [{
|
|
30
|
-
selector: 'abp-validation-error',
|
|
26
|
+
`, isInline: true, directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "abpLocalization": i2.LocalizationPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ValidationErrorComponent, decorators: [{
|
|
28
|
+
type: Component,
|
|
29
|
+
args: [{
|
|
30
|
+
selector: 'abp-validation-error',
|
|
31
31
|
template: `
|
|
32
32
|
<div class="invalid-feedback" *ngFor="let error of abpErrors; trackBy: trackByFn">
|
|
33
33
|
{{ error.message | abpLocalization: error.interpoliteParams }}
|
|
34
34
|
</div>
|
|
35
|
-
`,
|
|
36
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
37
|
-
encapsulation: ViewEncapsulation.None,
|
|
38
|
-
}]
|
|
39
|
-
}] });
|
|
35
|
+
`,
|
|
36
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
37
|
+
encapsulation: ViewEncapsulation.None,
|
|
38
|
+
}]
|
|
39
|
+
}] });
|
|
40
40
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi1lcnJvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1iYXNpYy9zcmMvbGliL2NvbXBvbmVudHMvdmFsaWRhdGlvbi1lcnJvci92YWxpZGF0aW9uLWVycm9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBYyx3QkFBd0IsSUFBSSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7OztBQVk1RixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsY0FBYztJQUMxRCxJQUFJLFNBQVM7UUFDWCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTTtZQUFFLE9BQU8sRUFBRSxDQUFDO1FBRW5ELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPO2dCQUFFLE9BQU8sS0FBSyxDQUFDO1lBRWpDLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBRXpDLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFO2dCQUNkLHVDQUNLLEtBQUssS0FDUixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUN0QyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFDdEY7YUFDSDtZQUVELE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztzSEFuQlUsd0JBQXdCOzBHQUF4Qix3QkFBd0IsbUZBUnpCOzs7O0dBSVQ7NEZBSVUsd0JBQXdCO2tCQVZwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFFBQVEsRUFBRTs7OztHQUlUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDdEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVmFsaWRhdGlvbiwgVmFsaWRhdGlvbkVycm9yQ29tcG9uZW50IGFzIEVycm9yQ29tcG9uZW50IH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLXZhbGlkYXRpb24tZXJyb3InLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCIgKm5nRm9yPVwibGV0IGVycm9yIG9mIGFicEVycm9yczsgdHJhY2tCeTogdHJhY2tCeUZuXCI+XG4gICAgICB7eyBlcnJvci5tZXNzYWdlIHwgYWJwTG9jYWxpemF0aW9uOiBlcnJvci5pbnRlcnBvbGl0ZVBhcmFtcyB9fVxuICAgIDwvZGl2PlxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgVmFsaWRhdGlvbkVycm9yQ29tcG9uZW50IGV4dGVuZHMgRXJyb3JDb21wb25lbnQge1xuICBnZXQgYWJwRXJyb3JzKCk6IChWYWxpZGF0aW9uLkVycm9yICYgeyBpbnRlcnBvbGl0ZVBhcmFtcz86IHN0cmluZ1tdIH0pW10ge1xuICAgIGlmICghdGhpcy5lcnJvcnMgfHwgIXRoaXMuZXJyb3JzLmxlbmd0aCkgcmV0dXJuIFtdO1xuXG4gICAgcmV0dXJuIHRoaXMuZXJyb3JzLm1hcChlcnJvciA9PiB7XG4gICAgICBpZiAoIWVycm9yLm1lc3NhZ2UpIHJldHVybiBlcnJvcjtcblxuICAgICAgY29uc3QgaW5kZXggPSBlcnJvci5tZXNzYWdlLmluZGV4T2YoJ1snKTtcblxuICAgICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5lcnJvcixcbiAgICAgICAgICBtZXNzYWdlOiBlcnJvci5tZXNzYWdlLnNsaWNlKDAsIGluZGV4KSxcbiAgICAgICAgICBpbnRlcnBvbGl0ZVBhcmFtczogZXJyb3IubWVzc2FnZS5zbGljZShpbmRleCArIDEsIGVycm9yLm1lc3NhZ2UubGVuZ3RoIC0gMSkuc3BsaXQoJywnKSxcbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGVycm9yO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -147,5 +147,5 @@ background-color: rgba(0, 0, 0, 0.6);
|
|
|
147
147
|
background-color: transparent;
|
|
148
148
|
padding: 0.27rem;
|
|
149
149
|
}
|
|
150
|
-
`;
|
|
150
|
+
`;
|
|
151
151
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGhlbWUtYmFzaWMvc3JjL2xpYi9jb25zdGFudHMvc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGVBQWU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBcUpkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBgXG4uY29udGVudC1oZWFkZXItdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbn1cbi5lbnRyeS1yb3cge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG4jbWFpbi1uYXZiYXItdG9vbHMgYS5kcm9wZG93bi10b2dnbGUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogI2ZmZjtcbn1cbi5uYXZiYXIgLmRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5uYXZiYXIgLmRyb3Bkb3duLW1lbnUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuLm5hdmJhciAuZHJvcGRvd24tbWVudSBhIHtcbiAgICBmb250LXNpemU6IC45ZW07XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1pbi13aWR0aDogMjEwcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG59XG5bZGlyPXJ0bF0gLm5hdmJhciAuZHJvcGRvd24tbWVudSBhIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCFpbXBvcnRhbnQ7XG59XG4ubmF2YmFyIC5kcm9wZG93bi1zdWJtZW51IGE6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTZweDtcbiAgICB0b3A6IDE4cHg7XG59XG5bZGlyPXJ0bF0gLm5hdmJhciAuZHJvcGRvd24tc3VibWVudSBhOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIGxlZnQ6IDE2cHg7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgdG9wOiAyMHB4O1xufVxuLm5hdmJhciAuZHJvcGRvd24tc3VibWVudSAuZHJvcGRvd24tbWVudSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDEwMCU7XG59XG4vKiB3b3JrIGFyb3VuZCBmb3IgcnRsLiBUcmFjayBodHRwczovL2dpdGh1Yi5jb20vbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcC9pc3N1ZXMvNDEwMCBpc3N1ZSAqL1xuW2Rpcj1ydGxdIC5uYXZiYXIgLmRyb3Bkb3duLXN1Ym1lbnUgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbn1cbi5jYXJkLWhlYWRlciAuYnRuIHtcbiAgICBwYWRkaW5nOiAycHggNnB4O1xufVxuLmNhcmQtaGVhZGVyIGg1IHtcbiAgICBtYXJnaW46IDA7XG59XG4uY29udGFpbmVyID4gLmNhcmQge1xuICAgIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDc1KSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAubmF2YmFyIC5kcm9wZG93bjpob3ZlciA+IC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLm5hdmJhciAuZHJvcGRvd24tc3VibWVudTpob3ZlciA+IC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuLmlucHV0LXZhbGlkYXRpb24tZXJyb3Ige1xuICAgIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbn1cbi5maWVsZC12YWxpZGF0aW9uLWVycm9yIHtcbiAgICBmb250LXNpemU6IDAuOGVtO1xufVxuLnVpLXRhYmxlIC51aS10YWJsZS10Ym9keSA+IHRyLmVtcHR5LXJvdyA+IGRpdi5lbXB0eS1yb3ctY29udGVudCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2M4YzhjODtcbiAgfVxuLmFicC1sb2FkaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuLm1vZGFsLWJhY2tkcm9wIHtcbmJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cblxuLmNvbmZpcm1hdGlvbiAuY29uZmlybWF0aW9uLWJhY2tkcm9wIHtcblx0IGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KSAhaW1wb3J0YW50O1xufVxuIC5jb25maXJtYXRpb24gLmNvbmZpcm1hdGlvbi1kaWFsb2cge1xuXHQgYm9yZGVyOiBub25lO1xuXHQgYm9yZGVyLXJhZGl1czogMTBweDtcblx0IGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdCBib3gtc2hhZG93OiAwIDAgMTBweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cbiAuY29uZmlybWF0aW9uIC5jb25maXJtYXRpb24tZGlhbG9nIC5pY29uLWNvbnRhaW5lciAuaWNvbiB7XG5cdCBzdHJva2U6ICNmZmY7XG5cdCBjb2xvcjogI2ZmZjtcbn1cbiAuY29uZmlybWF0aW9uIC5jb25maXJtYXRpb24tZGlhbG9nIC5pY29uLWNvbnRhaW5lci5pbmZvIC5pY29uIHtcblx0IHN0cm9rZTogIzJmOTZiNDtcblx0IGNvbG9yOiAjMmY5NmI0O1xufVxuIC5jb25maXJtYXRpb24gLmNvbmZpcm1hdGlvbi1kaWFsb2cgLmljb24tY29udGFpbmVyLnN1Y2Nlc3MgLmljb24ge1xuXHQgc3Ryb2tlOiAjNTFhMzUxO1xuXHQgY29sb3I6ICM1MWEzNTE7XG59XG4gLmNvbmZpcm1hdGlvbiAuY29uZmlybWF0aW9uLWRpYWxvZyAuaWNvbi1jb250YWluZXIud2FybmluZyAuaWNvbiB7XG5cdCBzdHJva2U6ICNmODk0MDY7XG5cdCBjb2xvcjogI2Y4OTQwNjtcbn1cbiAuY29uZmlybWF0aW9uIC5jb25maXJtYXRpb24tZGlhbG9nIC5pY29uLWNvbnRhaW5lci5lcnJvciAuaWNvbiB7XG5cdCBzdHJva2U6ICNiZDM2MmY7XG5cdCBjb2xvcjogI2JkMzYyZjtcbn1cbiAuY29uZmlybWF0aW9uIC5jb25maXJtYXRpb24tZGlhbG9nIC5jb250ZW50IC50aXRsZSB7XG5cdCBjb2xvcjogIzIyMjtcbn1cbiAuY29uZmlybWF0aW9uIC5jb25maXJtYXRpb24tZGlhbG9nIC5jb250ZW50IC5tZXNzYWdlIHtcblx0IGNvbG9yOiAjNzc3O1xufVxuIC5jb25maXJtYXRpb24gLmNvbmZpcm1hdGlvbi1kaWFsb2cgLmZvb3RlciB7XG5cdCBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbiAuY29uZmlybWF0aW9uIC5jb25maXJtYXRpb24tZGlhbG9nIC5mb290ZXIgLmNvbmZpcm1hdGlvbi1idXR0b24ge1xuXHQgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcblx0IGNvbG9yOiAjNzc3O1xufVxuIC5jb25maXJtYXRpb24gLmNvbmZpcm1hdGlvbi1kaWFsb2cgLmZvb3RlciAuY29uZmlybWF0aW9uLWJ1dHRvbjpob3ZlciwgLmNvbmZpcm1hdGlvbiAuY29uZmlybWF0aW9uLWRpYWxvZyAuZm9vdGVyIC5jb25maXJtYXRpb24tYnV0dG9uOmZvY3VzLCAuY29uZmlybWF0aW9uIC5jb25maXJtYXRpb24tZGlhbG9nIC5mb290ZXIgLmNvbmZpcm1hdGlvbi1idXR0b246YWN0aXZlIHtcblx0IGJhY2tncm91bmQtY29sb3I6ICNiYmI7XG59XG4gLmNvbmZpcm1hdGlvbiAuY29uZmlybWF0aW9uLWRpYWxvZyAuZm9vdGVyIC5jb25maXJtYXRpb24tYnV0dG9uLS1jb25maXJtIHtcblx0IGJhY2tncm91bmQtY29sb3I6ICMyZjk2YjQ7XG5cdCBjb2xvcjogI2ZmZjtcbn1cbiAuY29uZmlybWF0aW9uIC5jb25maXJtYXRpb24tZGlhbG9nIC5mb290ZXIgLmNvbmZpcm1hdGlvbi1idXR0b24tLWNvbmZpcm06aG92ZXIge1xuXHQgYmFja2dyb3VuZC1jb2xvcjogIzJlODE5Yjtcbn1cbi51aS10YWJsZSAucGFnaW5hdGlvbi13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjOGM4Yzg7XG59XG4uYm9yZGVyZWQgLmRhdGF0YWJsZS1ib2R5LXJvdyB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZWU7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbn1cbi5icmVhZGNydW1iIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAwLjI3cmVtO1xufVxuYDtcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3RoZW1lLWJhc2ljL3NyYy9saWIvZW51bXMvY29tcG9uZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGVudW0gZVRoZW1lQmFzaWNDb21wb25lbnRzIHtcbiAgQXBwbGljYXRpb25MYXlvdXQgPSAnVGhlbWUuQXBwbGljYXRpb25MYXlvdXRDb21wb25lbnQnLFxuICBBY2NvdW50TGF5b3V0ID0gJ1RoZW1lLkFjY291bnRMYXlvdXRDb21wb25lbnQnLFxuICBFbXB0eUxheW91dCA9ICdUaGVtZS5FbXB0eUxheW91dENvbXBvbmVudCcsXG4gIExvZ28gPSAnVGhlbWUuTG9nb0NvbXBvbmVudCcsXG4gIFJvdXRlcyA9ICdUaGVtZS5Sb3V0ZXNDb21wb25lbnQnLFxuICBOYXZJdGVtcyA9ICdUaGVtZS5OYXZJdGVtc0NvbXBvbmVudCcsXG4gIEN1cnJlbnRVc2VyID0gJ1RoZW1lLkN1cnJlbnRVc2VyQ29tcG9uZW50JyxcbiAgTGFuZ3VhZ2VzID0gJ1RoZW1lLkxhbmd1YWdlc0NvbXBvbmVudCcsXG59XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './components';
|
|
1
|
+
export * from './components';
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1iYXNpYy9zcmMvbGliL2VudW1zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzJztcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './lazy-style.handler';
|
|
1
|
+
export * from './lazy-style.handler';
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1iYXNpYy9zcmMvbGliL2hhbmRsZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xhenktc3R5bGUuaGFuZGxlcic7XG4iXX0=
|
|
@@ -1,82 +1,82 @@
|
|
|
1
|
-
import { LazyLoadService, LOADING_STRATEGY } from '@abp/ng.core';
|
|
2
|
-
import { DocumentDirHandlerService } from '@abp/ng.theme.shared';
|
|
3
|
-
import { Injectable, Injector } from '@angular/core';
|
|
4
|
-
import { LAZY_STYLES } from '../tokens/lazy-styles.token';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export const BOOTSTRAP = 'bootstrap-{{dir}}.min.css';
|
|
7
|
-
export class LazyStyleHandler {
|
|
8
|
-
constructor(injector) {
|
|
9
|
-
this._dir = 'ltr';
|
|
10
|
-
this.loaded = new Map();
|
|
11
|
-
this.setStyles(injector);
|
|
12
|
-
this.setLazyLoad(injector);
|
|
13
|
-
this.listenToDirectionChanges(injector);
|
|
14
|
-
}
|
|
15
|
-
set dir(dir) {
|
|
16
|
-
if (dir === this._dir)
|
|
17
|
-
return;
|
|
18
|
-
this.switchCSS(dir);
|
|
19
|
-
this._dir = dir;
|
|
20
|
-
}
|
|
21
|
-
get dir() {
|
|
22
|
-
return this._dir;
|
|
23
|
-
}
|
|
24
|
-
getHrefFromLink(link) {
|
|
25
|
-
if (!link)
|
|
26
|
-
return '';
|
|
27
|
-
const a = document.createElement('a');
|
|
28
|
-
a.href = link.href;
|
|
29
|
-
return a.pathname.replace(/^\//, '');
|
|
30
|
-
}
|
|
31
|
-
getLoadedBootstrap() {
|
|
32
|
-
const href = createLazyStyleHref(BOOTSTRAP, this.dir);
|
|
33
|
-
const selector = `[href*="${href.replace(/\.css$/, '')}"]`;
|
|
34
|
-
const link = document.querySelector(selector);
|
|
35
|
-
return { href, link };
|
|
36
|
-
}
|
|
37
|
-
listenToDirectionChanges(injector) {
|
|
38
|
-
const docDirHandler = injector.get(DocumentDirHandlerService);
|
|
39
|
-
// will always listen, no need to unsubscribe
|
|
40
|
-
docDirHandler.dir$.subscribe(dir => {
|
|
41
|
-
this.dir = dir;
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
setLazyLoad(injector) {
|
|
45
|
-
this.lazyLoad = injector.get(LazyLoadService);
|
|
46
|
-
const { href, link } = this.getLoadedBootstrap();
|
|
47
|
-
this.lazyLoad.loaded.set(href, link);
|
|
48
|
-
}
|
|
49
|
-
setStyles(injector) {
|
|
50
|
-
this.styles = injector.get(LAZY_STYLES, [BOOTSTRAP]);
|
|
51
|
-
}
|
|
52
|
-
switchCSS(dir) {
|
|
53
|
-
this.styles.forEach(style => {
|
|
54
|
-
const oldHref = createLazyStyleHref(style, this.dir);
|
|
55
|
-
const newHref = createLazyStyleHref(style, dir);
|
|
56
|
-
const link = this.loaded.get(newHref);
|
|
57
|
-
const href = this.getHrefFromLink(link) || newHref;
|
|
58
|
-
const strategy = LOADING_STRATEGY.PrependAnonymousStyleToHead(href);
|
|
59
|
-
this.lazyLoad.load(strategy).subscribe(() => {
|
|
60
|
-
const oldLink = this.lazyLoad.loaded.get(oldHref);
|
|
61
|
-
this.loaded.delete(newHref);
|
|
62
|
-
this.loaded.set(oldHref, oldLink);
|
|
63
|
-
const newLink = this.lazyLoad.loaded.get(href);
|
|
64
|
-
this.lazyLoad.loaded.delete(href);
|
|
65
|
-
this.lazyLoad.loaded.set(newHref, newLink);
|
|
66
|
-
this.lazyLoad.remove(oldHref);
|
|
67
|
-
});
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
LazyStyleHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LazyStyleHandler, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
72
|
-
LazyStyleHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LazyStyleHandler });
|
|
73
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LazyStyleHandler, decorators: [{
|
|
74
|
-
type: Injectable
|
|
75
|
-
}], ctorParameters: function () { return [{ type: i0.Injector }]; } });
|
|
76
|
-
export function createLazyStyleHref(style, dir) {
|
|
77
|
-
return style.replace(/{{\s*dir\s*}}/g, dir);
|
|
78
|
-
}
|
|
79
|
-
export function initLazyStyleHandler(injector) {
|
|
80
|
-
return () => new LazyStyleHandler(injector);
|
|
81
|
-
}
|
|
1
|
+
import { LazyLoadService, LOADING_STRATEGY } from '@abp/ng.core';
|
|
2
|
+
import { DocumentDirHandlerService } from '@abp/ng.theme.shared';
|
|
3
|
+
import { Injectable, Injector } from '@angular/core';
|
|
4
|
+
import { LAZY_STYLES } from '../tokens/lazy-styles.token';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export const BOOTSTRAP = 'bootstrap-{{dir}}.min.css';
|
|
7
|
+
export class LazyStyleHandler {
|
|
8
|
+
constructor(injector) {
|
|
9
|
+
this._dir = 'ltr';
|
|
10
|
+
this.loaded = new Map();
|
|
11
|
+
this.setStyles(injector);
|
|
12
|
+
this.setLazyLoad(injector);
|
|
13
|
+
this.listenToDirectionChanges(injector);
|
|
14
|
+
}
|
|
15
|
+
set dir(dir) {
|
|
16
|
+
if (dir === this._dir)
|
|
17
|
+
return;
|
|
18
|
+
this.switchCSS(dir);
|
|
19
|
+
this._dir = dir;
|
|
20
|
+
}
|
|
21
|
+
get dir() {
|
|
22
|
+
return this._dir;
|
|
23
|
+
}
|
|
24
|
+
getHrefFromLink(link) {
|
|
25
|
+
if (!link)
|
|
26
|
+
return '';
|
|
27
|
+
const a = document.createElement('a');
|
|
28
|
+
a.href = link.href;
|
|
29
|
+
return a.pathname.replace(/^\//, '');
|
|
30
|
+
}
|
|
31
|
+
getLoadedBootstrap() {
|
|
32
|
+
const href = createLazyStyleHref(BOOTSTRAP, this.dir);
|
|
33
|
+
const selector = `[href*="${href.replace(/\.css$/, '')}"]`;
|
|
34
|
+
const link = document.querySelector(selector);
|
|
35
|
+
return { href, link };
|
|
36
|
+
}
|
|
37
|
+
listenToDirectionChanges(injector) {
|
|
38
|
+
const docDirHandler = injector.get(DocumentDirHandlerService);
|
|
39
|
+
// will always listen, no need to unsubscribe
|
|
40
|
+
docDirHandler.dir$.subscribe(dir => {
|
|
41
|
+
this.dir = dir;
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
setLazyLoad(injector) {
|
|
45
|
+
this.lazyLoad = injector.get(LazyLoadService);
|
|
46
|
+
const { href, link } = this.getLoadedBootstrap();
|
|
47
|
+
this.lazyLoad.loaded.set(href, link);
|
|
48
|
+
}
|
|
49
|
+
setStyles(injector) {
|
|
50
|
+
this.styles = injector.get(LAZY_STYLES, [BOOTSTRAP]);
|
|
51
|
+
}
|
|
52
|
+
switchCSS(dir) {
|
|
53
|
+
this.styles.forEach(style => {
|
|
54
|
+
const oldHref = createLazyStyleHref(style, this.dir);
|
|
55
|
+
const newHref = createLazyStyleHref(style, dir);
|
|
56
|
+
const link = this.loaded.get(newHref);
|
|
57
|
+
const href = this.getHrefFromLink(link) || newHref;
|
|
58
|
+
const strategy = LOADING_STRATEGY.PrependAnonymousStyleToHead(href);
|
|
59
|
+
this.lazyLoad.load(strategy).subscribe(() => {
|
|
60
|
+
const oldLink = this.lazyLoad.loaded.get(oldHref);
|
|
61
|
+
this.loaded.delete(newHref);
|
|
62
|
+
this.loaded.set(oldHref, oldLink);
|
|
63
|
+
const newLink = this.lazyLoad.loaded.get(href);
|
|
64
|
+
this.lazyLoad.loaded.delete(href);
|
|
65
|
+
this.lazyLoad.loaded.set(newHref, newLink);
|
|
66
|
+
this.lazyLoad.remove(oldHref);
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
LazyStyleHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LazyStyleHandler, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
72
|
+
LazyStyleHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LazyStyleHandler });
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LazyStyleHandler, decorators: [{
|
|
74
|
+
type: Injectable
|
|
75
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }]; } });
|
|
76
|
+
export function createLazyStyleHref(style, dir) {
|
|
77
|
+
return style.replace(/{{\s*dir\s*}}/g, dir);
|
|
78
|
+
}
|
|
79
|
+
export function initLazyStyleHandler(injector) {
|
|
80
|
+
return () => new LazyStyleHandler(injector);
|
|
81
|
+
}
|
|
82
82
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF6eS1zdHlsZS5oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGhlbWUtYmFzaWMvc3JjL2xpYi9oYW5kbGVycy9sYXp5LXN0eWxlLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNqRSxPQUFPLEVBQUUseUJBQXlCLEVBQW1CLE1BQU0sc0JBQXNCLENBQUM7QUFDbEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUMxRCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsMkJBQTJCLENBQUM7QUFHckQsTUFBTSxPQUFPLGdCQUFnQjtJQWtCM0IsWUFBWSxRQUFrQjtRQWZ0QixTQUFJLEdBQW9CLEtBQUssQ0FBQztRQUU3QixXQUFNLEdBQUcsSUFBSSxHQUFHLEVBQTJCLENBQUM7UUFjbkQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBZkQsSUFBSSxHQUFHLENBQUMsR0FBb0I7UUFDMUIsSUFBSSxHQUFHLEtBQUssSUFBSSxDQUFDLElBQUk7WUFBRSxPQUFPO1FBRTlCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEIsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7SUFDbEIsQ0FBQztJQUVELElBQUksR0FBRztRQUNMLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBUU8sZUFBZSxDQUFDLElBQXdDO1FBQzlELElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFFckIsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN0QyxDQUFDLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDbkIsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixNQUFNLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3RELE1BQU0sUUFBUSxHQUFHLFdBQVcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQztRQUMzRCxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFrQixRQUFRLENBQUMsQ0FBQztRQUMvRCxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTyx3QkFBd0IsQ0FBQyxRQUFrQjtRQUNqRCxNQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFFOUQsNkNBQTZDO1FBQzdDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2pDLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLFdBQVcsQ0FBQyxRQUFrQjtRQUNwQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDOUMsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUNqRCxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTyxTQUFTLENBQUMsUUFBa0I7UUFDbEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVPLFNBQVMsQ0FBQyxHQUFvQjtRQUNwQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMxQixNQUFNLE9BQU8sR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3JELE1BQU0sT0FBTyxHQUFHLG1CQUFtQixDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNoRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN0QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLE9BQU8sQ0FBQztZQUVuRCxNQUFNLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNwRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUMxQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFvQixDQUFDO2dCQUNyRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO2dCQUNsQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFvQixDQUFDO2dCQUNsRSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2hDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs4R0E1RVUsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7NEZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVTs7QUFnRlgsTUFBTSxVQUFVLG1CQUFtQixDQUFDLEtBQWEsRUFBRSxHQUFXO0lBQzVELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxHQUFHLENBQUMsQ0FBQztBQUM5QyxDQUFDO0FBRUQsTUFBTSxVQUFVLG9CQUFvQixDQUFDLFFBQWtCO0lBQ3JELE9BQU8sR0FBRyxFQUFFLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUM5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGF6eUxvYWRTZXJ2aWNlLCBMT0FESU5HX1NUUkFURUdZIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IERvY3VtZW50RGlySGFuZGxlclNlcnZpY2UsIExvY2FsZURpcmVjdGlvbiB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMQVpZX1NUWUxFUyB9IGZyb20gJy4uL3Rva2Vucy9sYXp5LXN0eWxlcy50b2tlbic7XG5leHBvcnQgY29uc3QgQk9PVFNUUkFQID0gJ2Jvb3RzdHJhcC17e2Rpcn19Lm1pbi5jc3MnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTGF6eVN0eWxlSGFuZGxlciB7XG4gIHByaXZhdGUgbGF6eUxvYWQhOiBMYXp5TG9hZFNlcnZpY2U7XG4gIHByaXZhdGUgc3R5bGVzITogc3RyaW5nW107XG4gIHByaXZhdGUgX2RpcjogTG9jYWxlRGlyZWN0aW9uID0gJ2x0cic7XG5cbiAgcmVhZG9ubHkgbG9hZGVkID0gbmV3IE1hcDxzdHJpbmcsIEhUTUxMaW5rRWxlbWVudD4oKTtcblxuICBzZXQgZGlyKGRpcjogTG9jYWxlRGlyZWN0aW9uKSB7XG4gICAgaWYgKGRpciA9PT0gdGhpcy5fZGlyKSByZXR1cm47XG5cbiAgICB0aGlzLnN3aXRjaENTUyhkaXIpO1xuICAgIHRoaXMuX2RpciA9IGRpcjtcbiAgfVxuXG4gIGdldCBkaXIoKTogTG9jYWxlRGlyZWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5fZGlyO1xuICB9XG5cbiAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgdGhpcy5zZXRTdHlsZXMoaW5qZWN0b3IpO1xuICAgIHRoaXMuc2V0TGF6eUxvYWQoaW5qZWN0b3IpO1xuICAgIHRoaXMubGlzdGVuVG9EaXJlY3Rpb25DaGFuZ2VzKGluamVjdG9yKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0SHJlZkZyb21MaW5rKGxpbms6IEhUTUxMaW5rRWxlbWVudCB8IG51bGwgfCB1bmRlZmluZWQpOiBzdHJpbmcge1xuICAgIGlmICghbGluaykgcmV0dXJuICcnO1xuXG4gICAgY29uc3QgYSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcbiAgICBhLmhyZWYgPSBsaW5rLmhyZWY7XG4gICAgcmV0dXJuIGEucGF0aG5hbWUucmVwbGFjZSgvXlxcLy8sICcnKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TG9hZGVkQm9vdHN0cmFwKCk6IExvYWRlZFN0eWxlIHtcbiAgICBjb25zdCBocmVmID0gY3JlYXRlTGF6eVN0eWxlSHJlZihCT09UU1RSQVAsIHRoaXMuZGlyKTtcbiAgICBjb25zdCBzZWxlY3RvciA9IGBbaHJlZio9XCIke2hyZWYucmVwbGFjZSgvXFwuY3NzJC8sICcnKX1cIl1gO1xuICAgIGNvbnN0IGxpbmsgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yPEhUTUxMaW5rRWxlbWVudD4oc2VsZWN0b3IpO1xuICAgIHJldHVybiB7IGhyZWYsIGxpbmsgfTtcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuVG9EaXJlY3Rpb25DaGFuZ2VzKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIGNvbnN0IGRvY0RpckhhbmRsZXIgPSBpbmplY3Rvci5nZXQoRG9jdW1lbnREaXJIYW5kbGVyU2VydmljZSk7XG5cbiAgICAvLyB3aWxsIGFsd2F5cyBsaXN0ZW4sIG5vIG5lZWQgdG8gdW5zdWJzY3JpYmVcbiAgICBkb2NEaXJIYW5kbGVyLmRpciQuc3Vic2NyaWJlKGRpciA9PiB7XG4gICAgICB0aGlzLmRpciA9IGRpcjtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0TGF6eUxvYWQoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgdGhpcy5sYXp5TG9hZCA9IGluamVjdG9yLmdldChMYXp5TG9hZFNlcnZpY2UpO1xuICAgIGNvbnN0IHsgaHJlZiwgbGluayB9ID0gdGhpcy5nZXRMb2FkZWRCb290c3RyYXAoKTtcbiAgICB0aGlzLmxhenlMb2FkLmxvYWRlZC5zZXQoaHJlZiwgbGluayk7XG4gIH1cblxuICBwcml2YXRlIHNldFN0eWxlcyhpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICB0aGlzLnN0eWxlcyA9IGluamVjdG9yLmdldChMQVpZX1NUWUxFUywgW0JPT1RTVFJBUF0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzd2l0Y2hDU1MoZGlyOiBMb2NhbGVEaXJlY3Rpb24pIHtcbiAgICB0aGlzLnN0eWxlcy5mb3JFYWNoKHN0eWxlID0+IHtcbiAgICAgIGNvbnN0IG9sZEhyZWYgPSBjcmVhdGVMYXp5U3R5bGVIcmVmKHN0eWxlLCB0aGlzLmRpcik7XG4gICAgICBjb25zdCBuZXdIcmVmID0gY3JlYXRlTGF6eVN0eWxlSHJlZihzdHlsZSwgZGlyKTtcbiAgICAgIGNvbnN0IGxpbmsgPSB0aGlzLmxvYWRlZC5nZXQobmV3SHJlZik7XG4gICAgICBjb25zdCBocmVmID0gdGhpcy5nZXRIcmVmRnJvbUxpbmsobGluaykgfHwgbmV3SHJlZjtcblxuICAgICAgY29uc3Qgc3RyYXRlZ3kgPSBMT0FESU5HX1NUUkFURUdZLlByZXBlbmRBbm9ueW1vdXNTdHlsZVRvSGVhZChocmVmKTtcbiAgICAgIHRoaXMubGF6eUxvYWQubG9hZChzdHJhdGVneSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgY29uc3Qgb2xkTGluayA9IHRoaXMubGF6eUxvYWQubG9hZGVkLmdldChvbGRIcmVmKSBhcyBIVE1MTGlua0VsZW1lbnQ7XG4gICAgICAgIHRoaXMubG9hZGVkLmRlbGV0ZShuZXdIcmVmKTtcbiAgICAgICAgdGhpcy5sb2FkZWQuc2V0KG9sZEhyZWYsIG9sZExpbmspO1xuICAgICAgICBjb25zdCBuZXdMaW5rID0gdGhpcy5sYXp5TG9hZC5sb2FkZWQuZ2V0KGhyZWYpIGFzIEhUTUxMaW5rRWxlbWVudDtcbiAgICAgICAgdGhpcy5sYXp5TG9hZC5sb2FkZWQuZGVsZXRlKGhyZWYpO1xuICAgICAgICB0aGlzLmxhenlMb2FkLmxvYWRlZC5zZXQobmV3SHJlZiwgbmV3TGluayk7XG4gICAgICAgIHRoaXMubGF6eUxvYWQucmVtb3ZlKG9sZEhyZWYpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUxhenlTdHlsZUhyZWYoc3R5bGU6IHN0cmluZywgZGlyOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gc3R5bGUucmVwbGFjZSgve3tcXHMqZGlyXFxzKn19L2csIGRpcik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbml0TGF6eVN0eWxlSGFuZGxlcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgcmV0dXJuICgpID0+IG5ldyBMYXp5U3R5bGVIYW5kbGVyKGluamVjdG9yKTtcbn1cblxuaW50ZXJmYWNlIExvYWRlZFN0eWxlIHtcbiAgaHJlZjogc3RyaW5nO1xuICBsaW5rOiBIVE1MTGlua0VsZW1lbnQgfCBudWxsO1xufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './layout';
|
|
1
|
+
export * from './layout';
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1iYXNpYy9zcmMvbGliL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGF5b3V0JztcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGhlbWUtYmFzaWMvc3JjL2xpYi9tb2RlbHMvbGF5b3V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgbmFtZXNwYWNlIExheW91dCB7XG4gIGV4cG9ydCBpbnRlcmZhY2UgU3RhdGUge1xuICAgIG5hdmlnYXRpb25FbGVtZW50czogTmF2aWdhdGlvbkVsZW1lbnRbXTtcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgTmF2aWdhdGlvbkVsZW1lbnQge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBlbGVtZW50OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIG9yZGVyPzogbnVtYmVyO1xuICB9XG59XG4iXX0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from './nav-item.provider';
|
|
2
|
-
export * from './styles.provider';
|
|
1
|
+
export * from './nav-item.provider';
|
|
2
|
+
export * from './styles.provider';
|
|
3
3
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1iYXNpYy9zcmMvbGliL3Byb3ZpZGVycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL25hdi1pdGVtLnByb3ZpZGVyJztcbmV4cG9ydCAqIGZyb20gJy4vc3R5bGVzLnByb3ZpZGVyJztcbiJdfQ==
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
import { NavItemsService } from '@abp/ng.theme.shared';
|
|
2
|
-
import { APP_INITIALIZER } from '@angular/core';
|
|
3
|
-
import { CurrentUserComponent } from '../components/nav-items/current-user.component';
|
|
4
|
-
import { LanguagesComponent } from '../components/nav-items/languages.component';
|
|
5
|
-
export const BASIC_THEME_NAV_ITEM_PROVIDERS = [
|
|
6
|
-
{
|
|
7
|
-
provide: APP_INITIALIZER,
|
|
8
|
-
useFactory: configureNavItems,
|
|
9
|
-
deps: [NavItemsService],
|
|
10
|
-
multi: true,
|
|
11
|
-
},
|
|
12
|
-
];
|
|
13
|
-
export function configureNavItems(navItems) {
|
|
14
|
-
return () => {
|
|
15
|
-
navItems.addItems([
|
|
16
|
-
{
|
|
17
|
-
id: "Theme.LanguagesComponent" /* Languages */,
|
|
18
|
-
order: 100,
|
|
19
|
-
component: LanguagesComponent,
|
|
20
|
-
},
|
|
21
|
-
{
|
|
22
|
-
id: "Theme.CurrentUserComponent" /* CurrentUser */,
|
|
23
|
-
order: 100,
|
|
24
|
-
component: CurrentUserComponent,
|
|
25
|
-
},
|
|
26
|
-
]);
|
|
27
|
-
};
|
|
28
|
-
}
|
|
1
|
+
import { NavItemsService } from '@abp/ng.theme.shared';
|
|
2
|
+
import { APP_INITIALIZER } from '@angular/core';
|
|
3
|
+
import { CurrentUserComponent } from '../components/nav-items/current-user.component';
|
|
4
|
+
import { LanguagesComponent } from '../components/nav-items/languages.component';
|
|
5
|
+
export const BASIC_THEME_NAV_ITEM_PROVIDERS = [
|
|
6
|
+
{
|
|
7
|
+
provide: APP_INITIALIZER,
|
|
8
|
+
useFactory: configureNavItems,
|
|
9
|
+
deps: [NavItemsService],
|
|
10
|
+
multi: true,
|
|
11
|
+
},
|
|
12
|
+
];
|
|
13
|
+
export function configureNavItems(navItems) {
|
|
14
|
+
return () => {
|
|
15
|
+
navItems.addItems([
|
|
16
|
+
{
|
|
17
|
+
id: "Theme.LanguagesComponent" /* Languages */,
|
|
18
|
+
order: 100,
|
|
19
|
+
component: LanguagesComponent,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
id: "Theme.CurrentUserComponent" /* CurrentUser */,
|
|
23
|
+
order: 100,
|
|
24
|
+
component: CurrentUserComponent,
|
|
25
|
+
},
|
|
26
|
+
]);
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
29
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LWl0ZW0ucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1iYXNpYy9zcmMvbGliL3Byb3ZpZGVycy9uYXYtaXRlbS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUdqRixNQUFNLENBQUMsTUFBTSw4QkFBOEIsR0FBRztJQUM1QztRQUNFLE9BQU8sRUFBRSxlQUFlO1FBQ3hCLFVBQVUsRUFBRSxpQkFBaUI7UUFDN0IsSUFBSSxFQUFFLENBQUMsZUFBZSxDQUFDO1FBQ3ZCLEtBQUssRUFBRSxJQUFJO0tBQ1o7Q0FDRixDQUFDO0FBRUYsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFFBQXlCO0lBQ3pELE9BQU8sR0FBRyxFQUFFO1FBQ1YsUUFBUSxDQUFDLFFBQVEsQ0FBQztZQUNoQjtnQkFDRSxFQUFFLDRDQUFpQztnQkFDbkMsS0FBSyxFQUFFLEdBQUc7Z0JBQ1YsU0FBUyxFQUFFLGtCQUFrQjthQUM5QjtZQUNEO2dCQUNFLEVBQUUsZ0RBQW1DO2dCQUNyQyxLQUFLLEVBQUUsR0FBRztnQkFDVixTQUFTLEVBQUUsb0JBQW9CO2FBQ2hDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5hdkl0ZW1zU2VydmljZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IEFQUF9JTklUSUFMSVpFUiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3VycmVudFVzZXJDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL25hdi1pdGVtcy9jdXJyZW50LXVzZXIuY29tcG9uZW50JztcbmltcG9ydCB7IExhbmd1YWdlc0NvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvbmF2LWl0ZW1zL2xhbmd1YWdlcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgZVRoZW1lQmFzaWNDb21wb25lbnRzIH0gZnJvbSAnLi4vZW51bXMvY29tcG9uZW50cyc7XG5cbmV4cG9ydCBjb25zdCBCQVNJQ19USEVNRV9OQVZfSVRFTV9QUk9WSURFUlMgPSBbXG4gIHtcbiAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgdXNlRmFjdG9yeTogY29uZmlndXJlTmF2SXRlbXMsXG4gICAgZGVwczogW05hdkl0ZW1zU2VydmljZV0sXG4gICAgbXVsdGk6IHRydWUsXG4gIH0sXG5dO1xuXG5leHBvcnQgZnVuY3Rpb24gY29uZmlndXJlTmF2SXRlbXMobmF2SXRlbXM6IE5hdkl0ZW1zU2VydmljZSkge1xuICByZXR1cm4gKCkgPT4ge1xuICAgIG5hdkl0ZW1zLmFkZEl0ZW1zKFtcbiAgICAgIHtcbiAgICAgICAgaWQ6IGVUaGVtZUJhc2ljQ29tcG9uZW50cy5MYW5ndWFnZXMsXG4gICAgICAgIG9yZGVyOiAxMDAsXG4gICAgICAgIGNvbXBvbmVudDogTGFuZ3VhZ2VzQ29tcG9uZW50LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6IGVUaGVtZUJhc2ljQ29tcG9uZW50cy5DdXJyZW50VXNlcixcbiAgICAgICAgb3JkZXI6IDEwMCxcbiAgICAgICAgY29tcG9uZW50OiBDdXJyZW50VXNlckNvbXBvbmVudCxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH07XG59XG4iXX0=
|