@volo/ngx-lepton-x.core 2.0.0-rc.2 → 2.0.0-rc.4
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/esm2020/lib/components/footer/footer.component.mjs +3 -3
- package/esm2020/lib/components/navbar/navbar.service.mjs +30 -30
- package/esm2020/lib/panels/index.mjs +2 -1
- package/esm2020/lib/panels/panels.module.mjs +7 -3
- package/esm2020/lib/panels/settings-panel.directive.mjs +16 -0
- package/esm2020/lib/style/index.mjs +2 -1
- package/esm2020/lib/style/style-load.factory.mjs +10 -0
- package/fesm2015/volo-ngx-lepton-x.core.mjs +56 -29
- package/fesm2015/volo-ngx-lepton-x.core.mjs.map +1 -1
- package/fesm2020/volo-ngx-lepton-x.core.mjs +61 -34
- package/fesm2020/volo-ngx-lepton-x.core.mjs.map +1 -1
- package/lib/components/navbar/navbar.service.d.ts +2 -1
- package/lib/panels/index.d.ts +1 -0
- package/lib/panels/panels.module.d.ts +3 -2
- package/lib/panels/settings-panel.directive.d.ts +8 -0
- package/lib/style/index.d.ts +1 -0
- package/lib/style/style-load.factory.d.ts +2 -0
- package/package.json +1 -1
|
@@ -12,9 +12,9 @@ export class FooterComponent {
|
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
FooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: FooterComponent, deps: [{ token: i1.FooterLinksService }], target: i0.ɵɵFactoryTarget.Component });
|
|
15
|
-
FooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: FooterComponent, selector: "lpx-footer", ngImport: i0, template: "<ng-container *ngIf=\"footerValues$ | async as footerValues\">\r\n
|
|
15
|
+
FooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: FooterComponent, selector: "lpx-footer", ngImport: i0, template: "<ng-container *ngIf=\"footerValues$ | async as footerValues\">\r\n\r\n <div class=\"lpx-footbar\">\r\n <div class=\"lpx-footbar-copyright\">\r\n <span>{{ currentYear }} \u00A9</span>\r\n <a\r\n *ngIf=\"footerValues.descUrl; else footerDesc\"\r\n [routerLink]=\"[footerValues.descUrl]\"\r\n >\r\n {{ footerValues.desc }}</a\r\n >\r\n <ng-template #footerDesc>\r\n <a> {{ footerValues.desc }}</a>\r\n </ng-template>\r\n </div>\r\n <div class=\"lpx-footbar-solo-links\">\r\n <ng-container *ngFor=\"let footerLink of footerValues.footerLinks\">\r\n <a *ngIf=\"footerLink\" [routerLink]=\"[footerLink.link]\">{{\r\n footerLink.text\r\n }}</a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n</ng-container>\r\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
|
|
16
16
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: FooterComponent, decorators: [{
|
|
17
17
|
type: Component,
|
|
18
|
-
args: [{ selector: 'lpx-footer', template: "<ng-container *ngIf=\"footerValues$ | async as footerValues\">\r\n
|
|
18
|
+
args: [{ selector: 'lpx-footer', template: "<ng-container *ngIf=\"footerValues$ | async as footerValues\">\r\n\r\n <div class=\"lpx-footbar\">\r\n <div class=\"lpx-footbar-copyright\">\r\n <span>{{ currentYear }} \u00A9</span>\r\n <a\r\n *ngIf=\"footerValues.descUrl; else footerDesc\"\r\n [routerLink]=\"[footerValues.descUrl]\"\r\n >\r\n {{ footerValues.desc }}</a\r\n >\r\n <ng-template #footerDesc>\r\n <a> {{ footerValues.desc }}</a>\r\n </ng-template>\r\n </div>\r\n <div class=\"lpx-footbar-solo-links\">\r\n <ng-container *ngFor=\"let footerLink of footerValues.footerLinks\">\r\n <a *ngIf=\"footerLink\" [routerLink]=\"[footerLink.link]\">{{\r\n footerLink.text\r\n }}</a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n</ng-container>\r\n" }]
|
|
19
19
|
}], ctorParameters: function () { return [{ type: i1.FooterLinksService }]; } });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbGVwdG9uLXgtY29yZS9zcmMvbGliL2NvbXBvbmVudHMvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xlcHRvbi14LWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7QUFNNUQsTUFBTSxPQUFPLGVBQWU7SUFJMUIsWUFBb0IsT0FBMkI7UUFBM0IsWUFBTyxHQUFQLE9BQU8sQ0FBb0I7UUFIL0Msa0JBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUN6QyxnQkFBVyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7SUFFVyxDQUFDOzs0R0FKeEMsZUFBZTtnR0FBZixlQUFlLGtEQ1A1Qix1MUJBeUJBOzJGRGxCYSxlQUFlO2tCQUozQixTQUFTOytCQUNFLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9vdGVyTGlua3NTZXJ2aWNlIH0gZnJvbSAnLi9mb290ZXItbGlua3Muc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xweC1mb290ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9mb290ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9vdGVyQ29tcG9uZW50IHtcclxuICBmb290ZXJWYWx1ZXMkID0gdGhpcy5zZXJ2aWNlLmZvb3RlckluZm8kO1xyXG4gIGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNlcnZpY2U6IEZvb3RlckxpbmtzU2VydmljZSkge31cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiZm9vdGVyVmFsdWVzJCB8IGFzeW5jIGFzIGZvb3RlclZhbHVlc1wiPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJscHgtZm9vdGJhclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibHB4LWZvb3RiYXItY29weXJpZ2h0XCI+XHJcbiAgICAgICAgPHNwYW4+e3sgY3VycmVudFllYXIgfX0gwqk8L3NwYW4+XHJcbiAgICAgICAgPGFcclxuICAgICAgICAgICpuZ0lmPVwiZm9vdGVyVmFsdWVzLmRlc2NVcmw7IGVsc2UgZm9vdGVyRGVzY1wiXHJcbiAgICAgICAgICBbcm91dGVyTGlua109XCJbZm9vdGVyVmFsdWVzLmRlc2NVcmxdXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7eyBmb290ZXJWYWx1ZXMuZGVzYyB9fTwvYVxyXG4gICAgICAgID5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI2Zvb3RlckRlc2M+XHJcbiAgICAgICAgICA8YT4ge3sgZm9vdGVyVmFsdWVzLmRlc2MgfX08L2E+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJscHgtZm9vdGJhci1zb2xvLWxpbmtzXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZm9vdGVyTGluayBvZiBmb290ZXJWYWx1ZXMuZm9vdGVyTGlua3NcIj5cclxuICAgICAgICAgIDxhICpuZ0lmPVwiZm9vdGVyTGlua1wiIFtyb3V0ZXJMaW5rXT1cIltmb290ZXJMaW5rLmxpbmtdXCI+e3tcclxuICAgICAgICAgICAgZm9vdGVyTGluay50ZXh0XHJcbiAgICAgICAgICB9fTwvYT5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
|
|
@@ -2,7 +2,7 @@ import { Inject, Injectable } from '@angular/core';
|
|
|
2
2
|
import { DataStore } from '../../utils/data-store';
|
|
3
3
|
import { LPX_MENU_ITEMS } from './navbar.token';
|
|
4
4
|
import { ActivatedRoute, NavigationEnd, Router } from '@angular/router';
|
|
5
|
-
import { filter, take } from 'rxjs/operators';
|
|
5
|
+
import { filter, take, tap } from 'rxjs/operators';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@angular/router";
|
|
8
8
|
export class NavbarService {
|
|
@@ -12,7 +12,7 @@ export class NavbarService {
|
|
|
12
12
|
this.router = router;
|
|
13
13
|
this.store = new DataStore(this.addContainerLinks(this.menuItems));
|
|
14
14
|
this.navbarItems$ = this.store.sliceState((state) => state);
|
|
15
|
-
this.expandItemByLink();
|
|
15
|
+
this.expandItemByLink$().pipe(take(1)).subscribe();
|
|
16
16
|
}
|
|
17
17
|
addNavbarItems(...menuItems) {
|
|
18
18
|
this.store.set([...this.store.state, ...this.addContainerLinks(menuItems)]);
|
|
@@ -50,33 +50,33 @@ export class NavbarService {
|
|
|
50
50
|
findByLink(link, items) {
|
|
51
51
|
return this.findByProp('link', link, items);
|
|
52
52
|
}
|
|
53
|
-
expandItemByLink() {
|
|
54
|
-
this.router.events
|
|
55
|
-
.pipe(filter((e) => e instanceof NavigationEnd),
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
}
|
|
53
|
+
expandItemByLink$() {
|
|
54
|
+
return this.router.events
|
|
55
|
+
.pipe(filter((e) => e instanceof NavigationEnd), tap(() => this.calculateExpandState()));
|
|
56
|
+
}
|
|
57
|
+
calculateExpandState() {
|
|
58
|
+
const route = this.findByLink(this.router.url);
|
|
59
|
+
const expand = (items, indexes) => {
|
|
60
|
+
const matchIndex = indexes.shift();
|
|
61
|
+
return items.reduce((acc, item, index) => {
|
|
62
|
+
if (index === matchIndex) {
|
|
63
|
+
return [
|
|
64
|
+
...acc,
|
|
65
|
+
{
|
|
66
|
+
...item,
|
|
67
|
+
expanded: true,
|
|
68
|
+
selected: true,
|
|
69
|
+
children: expand(item.children || [], indexes),
|
|
70
|
+
},
|
|
71
|
+
];
|
|
72
|
+
}
|
|
73
|
+
return [...acc, { ...item, expanded: false, selected: false }];
|
|
74
|
+
}, []);
|
|
75
|
+
};
|
|
76
|
+
if (route?.item) {
|
|
77
|
+
const expanded = expand(this.store.state, route.location);
|
|
78
|
+
this.store.patch(expanded);
|
|
79
|
+
}
|
|
80
80
|
}
|
|
81
81
|
findById(id, items) {
|
|
82
82
|
return this.findByProp('id', id, items);
|
|
@@ -124,4 +124,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
124
124
|
type: Inject,
|
|
125
125
|
args: [LPX_MENU_ITEMS]
|
|
126
126
|
}] }, { type: i1.ActivatedRoute }, { type: i1.Router }]; } });
|
|
127
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xlcHRvbi14LWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUs5QyxNQUFNLE9BQU8sYUFBYTtJQU94QixZQUNrQyxTQUEwQixFQUNsRCxLQUFxQixFQUNyQixNQUFjO1FBRlUsY0FBUyxHQUFULFNBQVMsQ0FBaUI7UUFDbEQsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQVRoQixVQUFLLEdBQUcsSUFBSSxTQUFTLENBQzNCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQ3ZDLENBQUM7UUFFRixpQkFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQU9yRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsY0FBYyxDQUFDLEdBQUcsU0FBMEI7UUFDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEdBQUcsSUFBSSxD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QUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBU0ksTUFBTTsyQkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGFTdG9yZSB9IGZyb20gJy4uLy4uL3V0aWxzL2RhdGEtc3RvcmUnO1xyXG5pbXBvcnQgeyBMcHhOYXZiYXJJdGVtIH0gZnJvbSAnLi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBMUFhfTUVOVV9JVEVNUyB9IGZyb20gJy4vbmF2YmFyLnRva2VuJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIE5hdmlnYXRpb25FbmQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IGZpbHRlciwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOYXZiYXJTZXJ2aWNlIHtcclxuICBwcml2YXRlIHN0b3JlID0gbmV3IERhdGFTdG9yZTxMcHhOYXZiYXJJdGVtW10+KFxyXG4gICAgdGhpcy5hZGRDb250YWluZXJMaW5rcyh0aGlzLm1lbnVJdGVtcylcclxuICApO1xyXG5cclxuICBuYXZiYXJJdGVtcyQgPSB0aGlzLnN0b3JlLnNsaWNlU3RhdGUoKHN0YXRlKSA9PiBzdGF0ZSk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEluamVjdChMUFhfTUVOVV9JVEVNUykgcHJpdmF0ZSBtZW51SXRlbXM6IExweE5hdmJhckl0ZW1bXSxcclxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlclxyXG4gICkge1xyXG4gICAgdGhpcy5leHBhbmRJdGVtQnlMaW5rKCk7XHJcbiAgfVxyXG5cclxuICBhZGROYXZiYXJJdGVtcyguLi5tZW51SXRlbXM6IExweE5hdmJhckl0ZW1bXSk6IHZvaWQge1xyXG4gICAgdGhpcy5zdG9yZS5zZXQoWy4uLnRoaXMuc3RvcmUuc3RhdGUsIC4uLnRoaXMuYWRkQ29udGFpbmVyTGlua3MobWVudUl0ZW1zKV0pO1xyXG4gIH1cclxuXHJcbiAgc2V0TmF2YmFySXRlbXMoLi4ubWVudUl0ZW1zOiBMcHhOYXZiYXJJdGVtW10pOiB2b2lkIHtcclxuICAgIHRoaXMuc3RvcmUuc2V0KFsuLi50aGlzLmFkZENvbnRhaW5lckxpbmtzKG1lbnVJdGVtcyldKTtcclxuICB9XHJcblxyXG4gIC8vIFRPRE86IG11aGFtbWVkOiByZWZhY3RvciB0aGlzIG1ldGhvZCB0byBiZSByZWFkYWJsZVxyXG4gIGFkZENoaWxkcmVuKGlkOiBzdHJpbmcsIC4uLm1lbnVJdGVtczogTHB4TmF2YmFySXRlbVtdKTogdm9pZCB7XHJcbiAgICBjb25zdCBwYXJlbnQgPSB0aGlzLmZpbmRCeUlkKGlkLCB0aGlzLnN0b3JlLnN0YXRlKTtcclxuICAgIGNvbnN0IHVwZGF0ZSA9IChcclxuICAgICAgaXRlbXM6IExweE5hdmJhckl0ZW1bXSxcclxuICAgICAgbG9jYXRpb246IEFycmF5PG51bWJlcj4sXHJcbiAgICAgIGxpbmsgPSAnJ1xyXG4gICAgKTogTHB4TmF2YmFySXRlbVtdID0+IHtcclxuICAgICAgY29uc3QgaSA9IGxvY2F0aW9uLnNoaWZ0KCk7XHJcbiAgICAgIHJldHVybiBpdGVtcy5yZWR1Y2UoKGFjYywgaXRlbSwgaW5kZXgpID0+IHtcclxuICAgICAgICByZXR1cm4gW1xyXG4gICAgICAgICAgLi4uYWNjLFxyXG4gICAgICAgICAgLi4uKGluZGV4ID09PSBpXHJcbiAgICAgICAgICAgID8gW1xyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAuLi5pdGVtLFxyXG4gICAgICAgICAgICAgICAgICBjaGlsZHJlbjogIWxvY2F0aW9uLmxlbmd0aFxyXG4gICAgICAgICAgICAgICAgICAgID8gW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuLi4oaXRlbS5jaGlsZHJlbiB8fCBbXSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLnRoaXMuYWRkQ29udGFpbmVyTGlua3MoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWVudUl0ZW1zLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGAke2xpbmt9LyR7aXRlbS5jb250YWluZXJMaW5rfWBcclxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgICAgICAgICAgIF1cclxuICAgICAgICAgICAgICAgICAgICA6IHVwZGF0ZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5jaGlsZHJlbiB8fCBbXSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgbG9jYXRpb24sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGAke2xpbmt9LyR7aXRlbS5jb250YWluZXJMaW5rfWBcclxuICAgICAgICAgICAgICAgICAgICAgICksXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIF1cclxuICAgICAgICAgICAgOiBbaXRlbV0pLFxyXG4gICAgICAgIF07XHJcbiAgICAgIH0sIFtdIGFzIExweE5hdmJhckl0ZW1bXSk7XHJcbiAgICB9O1xyXG4gICAgY29uc3QgdXBkYXRlZCA9IHVwZGF0ZSh0aGlzLnN0b3JlLnN0YXRlLCBwYXJlbnQubG9jYXRpb24pO1xyXG4gICAgdGhpcy5zdG9yZS5wYXRjaCh1cGRhdGVkKTtcclxuICB9XHJcblxyXG4gIGZpbmRCeUxpbmsobGluazogc3RyaW5nLCBpdGVtcz86IExweE5hdmJhckl0ZW1bXSkge1xyXG4gICAgcmV0dXJuIHRoaXMuZmluZEJ5UHJvcCgnbGluaycsIGxpbmssIGl0ZW1zKTtcclxuICB9XHJcblxyXG4gIGV4cGFuZEl0ZW1CeUxpbmsoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5ldmVudHNcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZmlsdGVyKChlKSA9PiBlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCksXHJcbiAgICAgICAgdGFrZSgxKVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHJvdXRlID0gdGhpcy5maW5kQnlMaW5rKHRoaXMucm91dGVyLnVybCk7XHJcbiAgICAgICAgY29uc3QgZXhwYW5kID0gKFxyXG4gICAgICAgICAgaXRlbXM6IExweE5hdmJhckl0ZW1bXSxcclxuICAgICAgICAgIGluZGV4ZXM6IEFycmF5PG51bWJlcj5cclxuICAgICAgICApOiBMcHhOYXZiYXJJdGVtW10gPT4ge1xyXG4gICAgICAgICAgY29uc3QgbWF0Y2hJbmRleCA9IGluZGV4ZXMuc2hpZnQoKTtcclxuICAgICAgICAgIHJldHVybiBpdGVtcy5yZWR1Y2UoKGFjYywgaXRlbSwgaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgaWYgKGluZGV4ID09PSBtYXRjaEluZGV4KSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIFtcclxuICAgICAgICAgICAgICAgIC4uLmFjYyxcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgLi4uaXRlbSxcclxuICAgICAgICAgICAgICAgICAgZXhwYW5kZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgIHNlbGVjdGVkOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICBjaGlsZHJlbjogZXhwYW5kKGl0ZW0uY2hpbGRyZW4gfHwgW10sIGluZGV4ZXMpLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBbLi4uYWNjLCBpdGVtXTtcclxuICAgICAgICAgIH0sIFtdIGFzIExweE5hdmJhckl0ZW1bXSk7XHJcbiAgICAgICAgfTtcclxuICAgICAgICBpZiAocm91dGU/Lml0ZW0pIHtcclxuICAgICAgICAgIGNvbnN0IGV4cGFuZGVkID0gZXhwYW5kKHRoaXMuc3RvcmUuc3RhdGUsIHJvdXRlLmxvY2F0aW9uKTtcclxuICAgICAgICAgIHRoaXMuc3RvcmUucGF0Y2goZXhwYW5kZWQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZpbmRCeUlkKGlkOiBzdHJpbmcsIGl0ZW1zPzogTHB4TmF2YmFySXRlbVtdKSB7XHJcbiAgICByZXR1cm4gdGhpcy5maW5kQnlQcm9wKCdpZCcsIGlkLCBpdGVtcyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZpbmRCeVByb3AoXHJcbiAgICBwcm9wOiBrZXlvZiBMcHhOYXZiYXJJdGVtLFxyXG4gICAgdmFsdWU6IHN0cmluZyxcclxuICAgIGl0ZW1zPzogTHB4TmF2YmFySXRlbVtdLFxyXG4gICAgbG9jYXRpb246IEFycmF5PG51bWJlcj4gPSBbXVxyXG4gICkge1xyXG4gICAgY29uc3QgbmF2YmFySXRlbXMgPSBpdGVtcyB8fCB0aGlzLnN0b3JlLnN0YXRlO1xyXG4gICAgY29uc3QgaXRlbUluZGV4ID0gbmF2YmFySXRlbXMuZmluZEluZGV4KChpKSA9PiBpW3Byb3BdID09PSB2YWx1ZSk7XHJcbiAgICBsZXQgaXRlbTtcclxuICAgIGlmIChpdGVtSW5kZXggPT09IC0xKSB7XHJcbiAgICAgIG5hdmJhckl0ZW1zLmZvckVhY2goKGksIGluZGV4KSA9PiB7XHJcbiAgICAgICAgaWYgKGkuY2hpbGRyZW4pIHtcclxuICAgICAgICAgIGNvbnN0IGNoaWxkID0gdGhpcy5maW5kQnlQcm9wKHByb3AsIHZhbHVlLCBpLmNoaWxkcmVuLCBbXHJcbiAgICAgICAgICAgIC4uLmxvY2F0aW9uLFxyXG4gICAgICAgICAgICBpbmRleCxcclxuICAgICAgICAgIF0pO1xyXG4gICAgICAgICAgaWYgKGNoaWxkPy5pdGVtKSB7XHJcbiAgICAgICAgICAgIGl0ZW0gPSBjaGlsZC5pdGVtO1xyXG4gICAgICAgICAgICBsb2NhdGlvbiA9IGNoaWxkLmxvY2F0aW9uO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpdGVtID0gbmF2YmFySXRlbXNbaXRlbUluZGV4XTtcclxuICAgICAgbG9jYXRpb24ucHVzaChpdGVtSW5kZXgpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB7IGl0ZW0sIGxvY2F0aW9uIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFkZENvbnRhaW5lckxpbmtzKFxyXG4gICAgaXRlbXM6IExweE5hdmJhckl0ZW1bXSxcclxuICAgIGxpbmsgPSAnJ1xyXG4gICk6IExweE5hdmJhckl0ZW1bXSB7XHJcbiAgICByZXR1cm4gaXRlbXMubWFwKChpdGVtKSA9PiAoe1xyXG4gICAgICAuLi5pdGVtLFxyXG4gICAgICAuLi4oaXRlbS5saW5rICYmIGxpbmsgPyB7IGxpbms6IGAke2xpbmt9LyR7aXRlbS5saW5rfWAgfSA6IHt9KSxcclxuICAgICAgY2hpbGRyZW46IHRoaXMuYWRkQ29udGFpbmVyTGlua3MoXHJcbiAgICAgICAgaXRlbS5jaGlsZHJlbiB8fCBbXSxcclxuICAgICAgICBgJHtsaW5rID8gbGluayArICcvJyA6ICcnfSR7aXRlbS5jb250YWluZXJMaW5rIHx8ICcnfWBcclxuICAgICAgKSxcclxuICAgIH0pKTtcclxuICB9XHJcbn1cclxuIl19
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xlcHRvbi14LWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFLbkQsTUFBTSxPQUFPLGFBQWE7SUFPeEIsWUFDa0MsU0FBMEIsRUFDbEQsS0FBcUIsRUFDckIsTUFBYztRQUZVLGNBQVMsR0FBVCxTQUFTLENBQWlCO1FBQ2xELFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFUaEIsVUFBSyxHQUFHLElBQUksU0FBUyxDQUMzQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUN2QyxDQUFDO1FBRUYsaUJBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFPckQsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3JELENBQUM7SUFFRCxjQUFjLENBQUMsR0FBRyxTQUEwQjtRQUMxQyxJQUFJLENBQUMsS0FBSyxD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QUMsRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLElBQUksRUFBRSxFQUFFLENBQ3ZEO1NBQ0YsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDOzswR0FwSlUsYUFBYSxrQkFRZCxjQUFjOzhHQVJiLGFBQWEsY0FGWixNQUFNOzJGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFTSSxNQUFNOzJCQUFDLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGF0YVN0b3JlIH0gZnJvbSAnLi4vLi4vdXRpbHMvZGF0YS1zdG9yZSc7XHJcbmltcG9ydCB7IExweE5hdmJhckl0ZW0gfSBmcm9tICcuL21vZGVscyc7XHJcbmltcG9ydCB7IExQWF9NRU5VX0lURU1TIH0gZnJvbSAnLi9uYXZiYXIudG9rZW4nO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgTmF2aWdhdGlvbkVuZCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgZmlsdGVyLCB0YWtlLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmF2YmFyU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBzdG9yZSA9IG5ldyBEYXRhU3RvcmU8THB4TmF2YmFySXRlbVtdPihcclxuICAgIHRoaXMuYWRkQ29udGFpbmVyTGlua3ModGhpcy5tZW51SXRlbXMpXHJcbiAgKTtcclxuXHJcbiAgbmF2YmFySXRlbXMkID0gdGhpcy5zdG9yZS5zbGljZVN0YXRlKChzdGF0ZSkgPT4gc3RhdGUpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoTFBYX01FTlVfSVRFTVMpIHByaXZhdGUgbWVudUl0ZW1zOiBMcHhOYXZiYXJJdGVtW10sXHJcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXJcclxuICApIHtcclxuICAgIHRoaXMuZXhwYW5kSXRlbUJ5TGluayQoKS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgYWRkTmF2YmFySXRlbXMoLi4ubWVudUl0ZW1zOiBMcHhOYXZiYXJJdGVtW10pOiB2b2lkIHtcclxuICAgIHRoaXMuc3RvcmUuc2V0KFsuLi50aGlzLnN0b3JlLnN0YXRlLCAuLi50aGlzLmFkZENvbnRhaW5lckxpbmtzKG1lbnVJdGVtcyldKTtcclxuICB9XHJcblxyXG4gIHNldE5hdmJhckl0ZW1zKC4uLm1lbnVJdGVtczogTHB4TmF2YmFySXRlbVtdKTogdm9pZCB7XHJcbiAgICB0aGlzLnN0b3JlLnNldChbLi4udGhpcy5hZGRDb250YWluZXJMaW5rcyhtZW51SXRlbXMpXSk7XHJcbiAgfVxyXG5cclxuICAvLyBUT0RPOiBtdWhhbW1lZDogcmVmYWN0b3IgdGhpcyBtZXRob2QgdG8gYmUgcmVhZGFibGVcclxuICBhZGRDaGlsZHJlbihpZDogc3RyaW5nLCAuLi5tZW51SXRlbXM6IExweE5hdmJhckl0ZW1bXSk6IHZvaWQge1xyXG4gICAgY29uc3QgcGFyZW50ID0gdGhpcy5maW5kQnlJZChpZCwgdGhpcy5zdG9yZS5zdGF0ZSk7XHJcbiAgICBjb25zdCB1cGRhdGUgPSAoXHJcbiAgICAgIGl0ZW1zOiBMcHhOYXZiYXJJdGVtW10sXHJcbiAgICAgIGxvY2F0aW9uOiBBcnJheTxudW1iZXI+LFxyXG4gICAgICBsaW5rID0gJydcclxuICAgICk6IExweE5hdmJhckl0ZW1bXSA9PiB7XHJcbiAgICAgIGNvbnN0IGkgPSBsb2NhdGlvbi5zaGlmdCgpO1xyXG4gICAgICByZXR1cm4gaXRlbXMucmVkdWNlKChhY2MsIGl0ZW0sIGluZGV4KSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIFtcclxuICAgICAgICAgIC4uLmFjYyxcclxuICAgICAgICAgIC4uLihpbmRleCA9PT0gaVxyXG4gICAgICAgICAgICA/IFtcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgLi4uaXRlbSxcclxuICAgICAgICAgICAgICAgICAgY2hpbGRyZW46ICFsb2NhdGlvbi5sZW5ndGhcclxuICAgICAgICAgICAgICAgICAgICA/IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLi4uKGl0ZW0uY2hpbGRyZW4gfHwgW10pLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuLi50aGlzLmFkZENvbnRhaW5lckxpbmtzKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1lbnVJdGVtcyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBgJHtsaW5rfS8ke2l0ZW0uY29udGFpbmVyTGlua31gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICksXHJcbiAgICAgICAgICAgICAgICAgICAgICBdXHJcbiAgICAgICAgICAgICAgICAgICAgOiB1cGRhdGUoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uY2hpbGRyZW4gfHwgW10sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBgJHtsaW5rfS8ke2l0ZW0uY29udGFpbmVyTGlua31gXHJcbiAgICAgICAgICAgICAgICAgICAgICApLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICBdXHJcbiAgICAgICAgICAgIDogW2l0ZW1dKSxcclxuICAgICAgICBdO1xyXG4gICAgICB9LCBbXSBhcyBMcHhOYXZiYXJJdGVtW10pO1xyXG4gICAgfTtcclxuICAgIGNvbnN0IHVwZGF0ZWQgPSB1cGRhdGUodGhpcy5zdG9yZS5zdGF0ZSwgcGFyZW50LmxvY2F0aW9uKTtcclxuICAgIHRoaXMuc3RvcmUucGF0Y2godXBkYXRlZCk7XHJcbiAgfVxyXG5cclxuICBmaW5kQnlMaW5rKGxpbms6IHN0cmluZywgaXRlbXM/OiBMcHhOYXZiYXJJdGVtW10pIHtcclxuICAgIHJldHVybiB0aGlzLmZpbmRCeVByb3AoJ2xpbmsnLCBsaW5rLCBpdGVtcyk7XHJcbiAgfVxyXG5cclxuICBleHBhbmRJdGVtQnlMaW5rJCgpIHtcclxuICAgIHJldHVybiB0aGlzLnJvdXRlci5ldmVudHNcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZmlsdGVyKChlKSA9PiBlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCksXHJcbiAgICAgICAgdGFwKCgpPT4gdGhpcy5jYWxjdWxhdGVFeHBhbmRTdGF0ZSgpKVxyXG4gICAgICApXHJcbiAgfVxyXG5cclxuICBjYWxjdWxhdGVFeHBhbmRTdGF0ZSgpIHtcclxuICAgIGNvbnN0IHJvdXRlID0gdGhpcy5maW5kQnlMaW5rKHRoaXMucm91dGVyLnVybCk7XHJcbiAgICBjb25zdCBleHBhbmQgPSAoXHJcbiAgICAgIGl0ZW1zOiBMcHhOYXZiYXJJdGVtW10sXHJcbiAgICAgIGluZGV4ZXM6IEFycmF5PG51bWJlcj5cclxuICAgICk6IExweE5hdmJhckl0ZW1bXSA9PiB7XHJcbiAgICAgIGNvbnN0IG1hdGNoSW5kZXggPSBpbmRleGVzLnNoaWZ0KCk7XHJcbiAgICAgIHJldHVybiBpdGVtcy5yZWR1Y2UoKGFjYywgaXRlbSwgaW5kZXgpID0+IHtcclxuICAgICAgICBpZiAoaW5kZXggPT09IG1hdGNoSW5kZXgpIHtcclxuICAgICAgICAgIHJldHVybiBbXHJcbiAgICAgICAgICAgIC4uLmFjYyxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIC4uLml0ZW0sXHJcbiAgICAgICAgICAgICAgZXhwYW5kZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgc2VsZWN0ZWQ6IHRydWUsXHJcbiAgICAgICAgICAgICAgY2hpbGRyZW46IGV4cGFuZChpdGVtLmNoaWxkcmVuIHx8IFtdLCBpbmRleGVzKSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgIF07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBbLi4uYWNjLCB7Li4uaXRlbSwgZXhwYW5kZWQ6IGZhbHNlLCBzZWxlY3RlZDogZmFsc2V9XTtcclxuICAgICAgfSwgW10gYXMgTHB4TmF2YmFySXRlbVtdKTtcclxuICAgIH07XHJcbiAgICBpZiAocm91dGU/Lml0ZW0pIHtcclxuICAgICAgY29uc3QgZXhwYW5kZWQgPSBleHBhbmQodGhpcy5zdG9yZS5zdGF0ZSwgcm91dGUubG9jYXRpb24pO1xyXG4gICAgICB0aGlzLnN0b3JlLnBhdGNoKGV4cGFuZGVkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZmluZEJ5SWQoaWQ6IHN0cmluZywgaXRlbXM/OiBMcHhOYXZiYXJJdGVtW10pIHtcclxuICAgIHJldHVybiB0aGlzLmZpbmRCeVByb3AoJ2lkJywgaWQsIGl0ZW1zKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZmluZEJ5UHJvcChcclxuICAgIHByb3A6IGtleW9mIExweE5hdmJhckl0ZW0sXHJcbiAgICB2YWx1ZTogc3RyaW5nLFxyXG4gICAgaXRlbXM/OiBMcHhOYXZiYXJJdGVtW10sXHJcbiAgICBsb2NhdGlvbjogQXJyYXk8bnVtYmVyPiA9IFtdXHJcbiAgKSB7XHJcbiAgICBjb25zdCBuYXZiYXJJdGVtcyA9IGl0ZW1zIHx8IHRoaXMuc3RvcmUuc3RhdGU7XHJcbiAgICBjb25zdCBpdGVtSW5kZXggPSBuYXZiYXJJdGVtcy5maW5kSW5kZXgoKGkpID0+IGlbcHJvcF0gPT09IHZhbHVlKTtcclxuICAgIGxldCBpdGVtO1xyXG4gICAgaWYgKGl0ZW1JbmRleCA9PT0gLTEpIHtcclxuICAgICAgbmF2YmFySXRlbXMuZm9yRWFjaCgoaSwgaW5kZXgpID0+IHtcclxuICAgICAgICBpZiAoaS5jaGlsZHJlbikge1xyXG4gICAgICAgICAgY29uc3QgY2hpbGQgPSB0aGlzLmZpbmRCeVByb3AocHJvcCwgdmFsdWUsIGkuY2hpbGRyZW4sIFtcclxuICAgICAgICAgICAgLi4ubG9jYXRpb24sXHJcbiAgICAgICAgICAgIGluZGV4LFxyXG4gICAgICAgICAgXSk7XHJcbiAgICAgICAgICBpZiAoY2hpbGQ/Lml0ZW0pIHtcclxuICAgICAgICAgICAgaXRlbSA9IGNoaWxkLml0ZW07XHJcbiAgICAgICAgICAgIGxvY2F0aW9uID0gY2hpbGQubG9jYXRpb247XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGl0ZW0gPSBuYXZiYXJJdGVtc1tpdGVtSW5kZXhdO1xyXG4gICAgICBsb2NhdGlvbi5wdXNoKGl0ZW1JbmRleCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHsgaXRlbSwgbG9jYXRpb24gfTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkQ29udGFpbmVyTGlua3MoXHJcbiAgICBpdGVtczogTHB4TmF2YmFySXRlbVtdLFxyXG4gICAgbGluayA9ICcnXHJcbiAgKTogTHB4TmF2YmFySXRlbVtdIHtcclxuICAgIHJldHVybiBpdGVtcy5tYXAoKGl0ZW0pID0+ICh7XHJcbiAgICAgIC4uLml0ZW0sXHJcbiAgICAgIC4uLihpdGVtLmxpbmsgJiYgbGluayA/IHsgbGluazogYCR7bGlua30vJHtpdGVtLmxpbmt9YCB9IDoge30pLFxyXG4gICAgICBjaGlsZHJlbjogdGhpcy5hZGRDb250YWluZXJMaW5rcyhcclxuICAgICAgICBpdGVtLmNoaWxkcmVuIHx8IFtdLFxyXG4gICAgICAgIGAke2xpbmsgPyBsaW5rICsgJy8nIDogJyd9JHtpdGVtLmNvbnRhaW5lckxpbmsgfHwgJyd9YFxyXG4gICAgICApLFxyXG4gICAgfSkpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -5,4 +5,5 @@ export * from './mobile-navbar-panel.directive';
|
|
|
5
5
|
export * from './toolbar-panel.directive';
|
|
6
6
|
export * from './top-navbar-panel.directive';
|
|
7
7
|
export * from './panels.module';
|
|
8
|
-
|
|
8
|
+
export * from './settings-panel.directive';
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xlcHRvbi14LWNvcmUvc3JjL2xpYi9wYW5lbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9uYXZiYXItcGFuZWwuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9icmVhZGNydW1iLXBhbmVsLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZm9vdGVyLXBhbmVsLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9iaWxlLW5hdmJhci1wYW5lbC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3Rvb2xiYXItcGFuZWwuZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi90b3AtbmF2YmFyLXBhbmVsLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcGFuZWxzLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2V0dGluZ3MtcGFuZWwuZGlyZWN0aXZlJztcclxuIl19
|
|
@@ -6,6 +6,7 @@ import { FooterPanelDirective } from './footer-panel.directive';
|
|
|
6
6
|
import { MobileNavbarPanelDirective } from './mobile-navbar-panel.directive';
|
|
7
7
|
import { ToolbarPanelDirective } from './toolbar-panel.directive';
|
|
8
8
|
import { TopNavbarPanelDirective } from './top-navbar-panel.directive';
|
|
9
|
+
import { SettingsPanelDirective } from './settings-panel.directive';
|
|
9
10
|
import * as i0 from "@angular/core";
|
|
10
11
|
const declarationsAndExports = [
|
|
11
12
|
BreadcrumbPanelDirective,
|
|
@@ -14,6 +15,7 @@ const declarationsAndExports = [
|
|
|
14
15
|
MobileNavbarPanelDirective,
|
|
15
16
|
ToolbarPanelDirective,
|
|
16
17
|
TopNavbarPanelDirective,
|
|
18
|
+
SettingsPanelDirective,
|
|
17
19
|
];
|
|
18
20
|
export class PanelsModule {
|
|
19
21
|
}
|
|
@@ -23,12 +25,14 @@ PanelsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
|
23
25
|
FooterPanelDirective,
|
|
24
26
|
MobileNavbarPanelDirective,
|
|
25
27
|
ToolbarPanelDirective,
|
|
26
|
-
TopNavbarPanelDirective
|
|
28
|
+
TopNavbarPanelDirective,
|
|
29
|
+
SettingsPanelDirective], imports: [CommonModule], exports: [BreadcrumbPanelDirective,
|
|
27
30
|
NavbarPanelDirective,
|
|
28
31
|
FooterPanelDirective,
|
|
29
32
|
MobileNavbarPanelDirective,
|
|
30
33
|
ToolbarPanelDirective,
|
|
31
|
-
TopNavbarPanelDirective
|
|
34
|
+
TopNavbarPanelDirective,
|
|
35
|
+
SettingsPanelDirective] });
|
|
32
36
|
PanelsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PanelsModule, imports: [CommonModule] });
|
|
33
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PanelsModule, decorators: [{
|
|
34
38
|
type: NgModule,
|
|
@@ -38,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
38
42
|
exports: [...declarationsAndExports],
|
|
39
43
|
}]
|
|
40
44
|
}] });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWxzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbGVwdG9uLXgtY29yZS9zcmMvbGliL3BhbmVscy9wYW5lbHMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUVwRSxNQUFNLHNCQUFzQixHQUFHO0lBQzdCLHdCQUF3QjtJQUN4QixvQkFBb0I7SUFDcEIsb0JBQW9CO0lBQ3BCLDBCQUEwQjtJQUMxQixxQkFBcUI7SUFDckIsdUJBQXVCO0lBQ3ZCLHNCQUFzQjtDQUN2QixDQUFDO0FBT0YsTUFBTSxPQUFPLFlBQVk7O3lHQUFaLFlBQVk7MEdBQVosWUFBWSxpQkFkdkIsd0JBQXdCO1FBQ3hCLG9CQUFvQjtRQUNwQixvQkFBb0I7UUFDcEIsMEJBQTBCO1FBQzFCLHFCQUFxQjtRQUNyQix1QkFBdUI7UUFDdkIsc0JBQXNCLGFBS1osWUFBWSxhQVh0Qix3QkFBd0I7UUFDeEIsb0JBQW9CO1FBQ3BCLG9CQUFvQjtRQUNwQiwwQkFBMEI7UUFDMUIscUJBQXFCO1FBQ3JCLHVCQUF1QjtRQUN2QixzQkFBc0I7MEdBUVgsWUFBWSxZQUhiLFlBQVk7MkZBR1gsWUFBWTtrQkFMeEIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxHQUFHLHNCQUFzQixDQUFDO29CQUN6QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLEdBQUcsc0JBQXNCLENBQUM7aUJBQ3JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQnJlYWRjcnVtYlBhbmVsRGlyZWN0aXZlIH0gZnJvbSAnLi9icmVhZGNydW1iLXBhbmVsLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE5hdmJhclBhbmVsRGlyZWN0aXZlIH0gZnJvbSAnLi9uYXZiYXItcGFuZWwuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgRm9vdGVyUGFuZWxEaXJlY3RpdmUgfSBmcm9tICcuL2Zvb3Rlci1wYW5lbC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBNb2JpbGVOYXZiYXJQYW5lbERpcmVjdGl2ZSB9IGZyb20gJy4vbW9iaWxlLW5hdmJhci1wYW5lbC5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBUb29sYmFyUGFuZWxEaXJlY3RpdmUgfSBmcm9tICcuL3Rvb2xiYXItcGFuZWwuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgVG9wTmF2YmFyUGFuZWxEaXJlY3RpdmUgfSBmcm9tICcuL3RvcC1uYXZiYXItcGFuZWwuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU2V0dGluZ3NQYW5lbERpcmVjdGl2ZSB9IGZyb20gJy4vc2V0dGluZ3MtcGFuZWwuZGlyZWN0aXZlJztcclxuXHJcbmNvbnN0IGRlY2xhcmF0aW9uc0FuZEV4cG9ydHMgPSBbXHJcbiAgQnJlYWRjcnVtYlBhbmVsRGlyZWN0aXZlLFxyXG4gIE5hdmJhclBhbmVsRGlyZWN0aXZlLFxyXG4gIEZvb3RlclBhbmVsRGlyZWN0aXZlLFxyXG4gIE1vYmlsZU5hdmJhclBhbmVsRGlyZWN0aXZlLFxyXG4gIFRvb2xiYXJQYW5lbERpcmVjdGl2ZSxcclxuICBUb3BOYXZiYXJQYW5lbERpcmVjdGl2ZSxcclxuICBTZXR0aW5nc1BhbmVsRGlyZWN0aXZlLFxyXG5dO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFsuLi5kZWNsYXJhdGlvbnNBbmRFeHBvcnRzXSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcclxuICBleHBvcnRzOiBbLi4uZGVjbGFyYXRpb25zQW5kRXhwb3J0c10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYW5lbHNNb2R1bGUge31cclxuIl19
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Directive, TemplateRef } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class SettingsPanelDirective {
|
|
4
|
+
constructor(template) {
|
|
5
|
+
this.template = template;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
SettingsPanelDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SettingsPanelDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
9
|
+
SettingsPanelDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: SettingsPanelDirective, selector: "ng-template[lpx-settings-panel]", ngImport: i0 });
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SettingsPanelDirective, decorators: [{
|
|
11
|
+
type: Directive,
|
|
12
|
+
args: [{
|
|
13
|
+
selector: 'ng-template[lpx-settings-panel]',
|
|
14
|
+
}]
|
|
15
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MtcGFuZWwuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9sZXB0b24teC1jb3JlL3NyYy9saWIvcGFuZWxzL3NldHRpbmdzLXBhbmVsLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLdkQsTUFBTSxPQUFPLHNCQUFzQjtJQUNqQyxZQUFtQixRQUEwQjtRQUExQixhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUFHLENBQUM7O21IQUR0QyxzQkFBc0I7dUdBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUhsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQ0FBaUM7aUJBQzVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICduZy10ZW1wbGF0ZVtscHgtc2V0dGluZ3MtcGFuZWxdJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNldHRpbmdzUGFuZWxEaXJlY3RpdmUge1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge31cclxufVxyXG4iXX0=
|
|
@@ -2,4 +2,5 @@ export * from './models';
|
|
|
2
2
|
export * from './style.service';
|
|
3
3
|
export * from './tokens';
|
|
4
4
|
export * from './utils';
|
|
5
|
-
|
|
5
|
+
export * from './style-load.factory';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xlcHRvbi14LWNvcmUvc3JjL2xpYi9zdHlsZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGVscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3R5bGUuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdG9rZW5zJztcclxuZXhwb3J0ICogZnJvbSAnLi91dGlscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3R5bGUtbG9hZC5mYWN0b3J5JztcclxuIl19
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export function styleLoadFactory(styleList, layoutStyles) {
|
|
2
|
+
styleList.push({
|
|
3
|
+
bundleName: 'ng-bundle',
|
|
4
|
+
});
|
|
5
|
+
styleList.push({
|
|
6
|
+
bundleName: 'font-bundle',
|
|
7
|
+
});
|
|
8
|
+
return [...styleList, ...layoutStyles];
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbG9hZC5mYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9sZXB0b24teC1jb3JlL3NyYy9saWIvc3R5bGUvc3R5bGUtbG9hZC5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSxnQkFBZ0IsQ0FDOUIsU0FBb0IsRUFDcEIsWUFBdUI7SUFFdkIsU0FBUyxDQUFDLElBQUksQ0FBQztRQUNiLFVBQVUsRUFBRSxXQUFXO0tBQ3hCLENBQUMsQ0FBQztJQUNILFNBQVMsQ0FBQyxJQUFJLENBQUM7UUFDYixVQUFVLEVBQUUsYUFBYTtLQUMxQixDQUFDLENBQUM7SUFDSCxPQUFPLENBQUMsR0FBRyxTQUFTLEVBQUUsR0FBRyxZQUFZLENBQUMsQ0FBQztBQUN6QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTHB4U3R5bGVzIH0gZnJvbSBcIi4uL3N0eWxlL21vZGVsc1wiO1xyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzdHlsZUxvYWRGYWN0b3J5KFxyXG4gIHN0eWxlTGlzdDogTHB4U3R5bGVzLFxyXG4gIGxheW91dFN0eWxlczogTHB4U3R5bGVzXHJcbikge1xyXG4gIHN0eWxlTGlzdC5wdXNoKHtcclxuICAgIGJ1bmRsZU5hbWU6ICduZy1idW5kbGUnLFxyXG4gIH0pO1xyXG4gIHN0eWxlTGlzdC5wdXNoKHtcclxuICAgIGJ1bmRsZU5hbWU6ICdmb250LWJ1bmRsZScsXHJcbiAgfSk7XHJcbiAgcmV0dXJuIFsuLi5zdHlsZUxpc3QsIC4uLmxheW91dFN0eWxlc107XHJcbn1cclxuIl19
|
|
@@ -2,7 +2,7 @@ import * as i0 from '@angular/core';
|
|
|
2
2
|
import { InjectionToken, Injectable, Inject, NgModule, Component, ViewEncapsulation, Input, Directive, Optional, Pipe, EventEmitter, Output, TemplateRef, ContentChild, HostListener, APP_INITIALIZER, Injector, SkipSelf } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule, DOCUMENT } from '@angular/common';
|
|
5
|
-
import { map, distinctUntilChanged, filter, take, switchMap, startWith, distinctUntilKeyChanged } from 'rxjs/operators';
|
|
5
|
+
import { map, distinctUntilChanged, filter, take, tap, switchMap, startWith, distinctUntilKeyChanged } from 'rxjs/operators';
|
|
6
6
|
import { BehaviorSubject, Subject, Observable, from, of, combineLatest, fromEvent, Subscription } from 'rxjs';
|
|
7
7
|
import { FormsModule } from '@angular/forms';
|
|
8
8
|
import * as i1$1 from '@angular/router';
|
|
@@ -264,7 +264,7 @@ class NavbarService {
|
|
|
264
264
|
this.router = router;
|
|
265
265
|
this.store = new DataStore(this.addContainerLinks(this.menuItems));
|
|
266
266
|
this.navbarItems$ = this.store.sliceState((state) => state);
|
|
267
|
-
this.expandItemByLink();
|
|
267
|
+
this.expandItemByLink$().pipe(take(1)).subscribe();
|
|
268
268
|
}
|
|
269
269
|
addNavbarItems(...menuItems) {
|
|
270
270
|
this.store.set([...this.store.state, ...this.addContainerLinks(menuItems)]);
|
|
@@ -299,28 +299,28 @@ class NavbarService {
|
|
|
299
299
|
findByLink(link, items) {
|
|
300
300
|
return this.findByProp('link', link, items);
|
|
301
301
|
}
|
|
302
|
-
expandItemByLink() {
|
|
303
|
-
this.router.events
|
|
304
|
-
.pipe(filter((e) => e instanceof NavigationEnd),
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
]
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
},
|
|
318
|
-
};
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
}
|
|
302
|
+
expandItemByLink$() {
|
|
303
|
+
return this.router.events
|
|
304
|
+
.pipe(filter((e) => e instanceof NavigationEnd), tap(() => this.calculateExpandState()));
|
|
305
|
+
}
|
|
306
|
+
calculateExpandState() {
|
|
307
|
+
const route = this.findByLink(this.router.url);
|
|
308
|
+
const expand = (items, indexes) => {
|
|
309
|
+
const matchIndex = indexes.shift();
|
|
310
|
+
return items.reduce((acc, item, index) => {
|
|
311
|
+
if (index === matchIndex) {
|
|
312
|
+
return [
|
|
313
|
+
...acc,
|
|
314
|
+
Object.assign(Object.assign({}, item), { expanded: true, selected: true, children: expand(item.children || [], indexes) }),
|
|
315
|
+
];
|
|
316
|
+
}
|
|
317
|
+
return [...acc, Object.assign(Object.assign({}, item), { expanded: false, selected: false })];
|
|
318
|
+
}, []);
|
|
319
|
+
};
|
|
320
|
+
if (route === null || route === void 0 ? void 0 : route.item) {
|
|
321
|
+
const expanded = expand(this.store.state, route.location);
|
|
322
|
+
this.store.patch(expanded);
|
|
323
|
+
}
|
|
324
324
|
}
|
|
325
325
|
findById(id, items) {
|
|
326
326
|
return this.findByProp('id', id, items);
|
|
@@ -1101,6 +1101,16 @@ function createStyleFactory(handler) {
|
|
|
1101
1101
|
return handler || ((defaultValue) => defaultValue);
|
|
1102
1102
|
}
|
|
1103
1103
|
|
|
1104
|
+
function styleLoadFactory(styleList, layoutStyles) {
|
|
1105
|
+
styleList.push({
|
|
1106
|
+
bundleName: 'ng-bundle',
|
|
1107
|
+
});
|
|
1108
|
+
styleList.push({
|
|
1109
|
+
bundleName: 'font-bundle',
|
|
1110
|
+
});
|
|
1111
|
+
return [...styleList, ...layoutStyles];
|
|
1112
|
+
}
|
|
1113
|
+
|
|
1104
1114
|
const LPX_STYLE_PROVIDERS = [
|
|
1105
1115
|
{
|
|
1106
1116
|
provide: LPX_INITIAL_STYLES,
|
|
@@ -1381,10 +1391,10 @@ class FooterComponent {
|
|
|
1381
1391
|
}
|
|
1382
1392
|
}
|
|
1383
1393
|
FooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: FooterComponent, deps: [{ token: FooterLinksService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1384
|
-
FooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: FooterComponent, selector: "lpx-footer", ngImport: i0, template: "<ng-container *ngIf=\"footerValues$ | async as footerValues\">\r\n
|
|
1394
|
+
FooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: FooterComponent, selector: "lpx-footer", ngImport: i0, template: "<ng-container *ngIf=\"footerValues$ | async as footerValues\">\r\n\r\n <div class=\"lpx-footbar\">\r\n <div class=\"lpx-footbar-copyright\">\r\n <span>{{ currentYear }} \u00A9</span>\r\n <a\r\n *ngIf=\"footerValues.descUrl; else footerDesc\"\r\n [routerLink]=\"[footerValues.descUrl]\"\r\n >\r\n {{ footerValues.desc }}</a\r\n >\r\n <ng-template #footerDesc>\r\n <a> {{ footerValues.desc }}</a>\r\n </ng-template>\r\n </div>\r\n <div class=\"lpx-footbar-solo-links\">\r\n <ng-container *ngFor=\"let footerLink of footerValues.footerLinks\">\r\n <a *ngIf=\"footerLink\" [routerLink]=\"[footerLink.link]\">{{\r\n footerLink.text\r\n }}</a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n</ng-container>\r\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
|
|
1385
1395
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: FooterComponent, decorators: [{
|
|
1386
1396
|
type: Component,
|
|
1387
|
-
args: [{ selector: 'lpx-footer', template: "<ng-container *ngIf=\"footerValues$ | async as footerValues\">\r\n
|
|
1397
|
+
args: [{ selector: 'lpx-footer', template: "<ng-container *ngIf=\"footerValues$ | async as footerValues\">\r\n\r\n <div class=\"lpx-footbar\">\r\n <div class=\"lpx-footbar-copyright\">\r\n <span>{{ currentYear }} \u00A9</span>\r\n <a\r\n *ngIf=\"footerValues.descUrl; else footerDesc\"\r\n [routerLink]=\"[footerValues.descUrl]\"\r\n >\r\n {{ footerValues.desc }}</a\r\n >\r\n <ng-template #footerDesc>\r\n <a> {{ footerValues.desc }}</a>\r\n </ng-template>\r\n </div>\r\n <div class=\"lpx-footbar-solo-links\">\r\n <ng-container *ngFor=\"let footerLink of footerValues.footerLinks\">\r\n <a *ngIf=\"footerLink\" [routerLink]=\"[footerLink.link]\">{{\r\n footerLink.text\r\n }}</a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n</ng-container>\r\n" }]
|
|
1388
1398
|
}], ctorParameters: function () { return [{ type: FooterLinksService }]; } });
|
|
1389
1399
|
|
|
1390
1400
|
class LpxFooterModule {
|
|
@@ -1491,6 +1501,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
1491
1501
|
}]
|
|
1492
1502
|
}], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
|
|
1493
1503
|
|
|
1504
|
+
class SettingsPanelDirective {
|
|
1505
|
+
constructor(template) {
|
|
1506
|
+
this.template = template;
|
|
1507
|
+
}
|
|
1508
|
+
}
|
|
1509
|
+
SettingsPanelDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SettingsPanelDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
1510
|
+
SettingsPanelDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: SettingsPanelDirective, selector: "ng-template[lpx-settings-panel]", ngImport: i0 });
|
|
1511
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SettingsPanelDirective, decorators: [{
|
|
1512
|
+
type: Directive,
|
|
1513
|
+
args: [{
|
|
1514
|
+
selector: 'ng-template[lpx-settings-panel]',
|
|
1515
|
+
}]
|
|
1516
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
|
|
1517
|
+
|
|
1494
1518
|
const declarationsAndExports = [
|
|
1495
1519
|
BreadcrumbPanelDirective,
|
|
1496
1520
|
NavbarPanelDirective,
|
|
@@ -1498,6 +1522,7 @@ const declarationsAndExports = [
|
|
|
1498
1522
|
MobileNavbarPanelDirective,
|
|
1499
1523
|
ToolbarPanelDirective,
|
|
1500
1524
|
TopNavbarPanelDirective,
|
|
1525
|
+
SettingsPanelDirective,
|
|
1501
1526
|
];
|
|
1502
1527
|
class PanelsModule {
|
|
1503
1528
|
}
|
|
@@ -1507,12 +1532,14 @@ PanelsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
|
1507
1532
|
FooterPanelDirective,
|
|
1508
1533
|
MobileNavbarPanelDirective,
|
|
1509
1534
|
ToolbarPanelDirective,
|
|
1510
|
-
TopNavbarPanelDirective
|
|
1535
|
+
TopNavbarPanelDirective,
|
|
1536
|
+
SettingsPanelDirective], imports: [CommonModule], exports: [BreadcrumbPanelDirective,
|
|
1511
1537
|
NavbarPanelDirective,
|
|
1512
1538
|
FooterPanelDirective,
|
|
1513
1539
|
MobileNavbarPanelDirective,
|
|
1514
1540
|
ToolbarPanelDirective,
|
|
1515
|
-
TopNavbarPanelDirective
|
|
1541
|
+
TopNavbarPanelDirective,
|
|
1542
|
+
SettingsPanelDirective] });
|
|
1516
1543
|
PanelsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PanelsModule, imports: [CommonModule] });
|
|
1517
1544
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: PanelsModule, decorators: [{
|
|
1518
1545
|
type: NgModule,
|
|
@@ -1527,5 +1554,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
1527
1554
|
* Generated bundle index. Do not edit.
|
|
1528
1555
|
*/
|
|
1529
1556
|
|
|
1530
|
-
export { AvatarComponent, BodyService, BrandLogoComponent, BreadcrumbComponent, BreadcrumbPanelDirective, BreadcrumbRouteListenerService, BreadcrumbService, CONTENT_AFTER_ROUTES, CONTENT_BEFORE_ROUTES, ClickOutsideDirective, DataStore, DefaultAuthService, DefaultTranslateService, FooterComponent, FooterLinksService, FooterPanelDirective, ICON_MAP, IconComponent, LEPTON_X_ICON_SET, LPX_AUTH_SERVICE_PROVIDER, LPX_AUTH_SERVICE_TOKEN, LPX_INITIAL_STYLES, LPX_LANGUAGE, LPX_LAYOUT_STYLE_FINAL, LPX_MENU_ITEMS, LPX_RESPONSIVE_BREAKPOINTS_DEFAULTS, LPX_STYLE_FINAL, LPX_STYLE_PROVIDERS, LPX_TRANSLATE_SERVICE_TOKEN, LPX_TRANSLATE_TOKEN, LanguageService, LanguageTranslateDefaults, LanguageTranslateKeys, LayoutService, LpxAvatarModule, LpxBrandLogoModule, LpxBreadcrumbModule, LpxClickOutsideModule, LpxCoreModule, LpxFooterModule, LpxIconModule, LpxLanguageModule, LpxNavbarModule, LpxResponsiveModule, LpxThemeTranslateService, LpxTranslateModule, MobileNavbarPanelDirective, NavbarComponent, NavbarPanelDirective, NavbarRoutesComponent, NavbarRoutesDirective, NavbarService, PanelsModule, RESPONSIVE_BREAKPOINTS, ResponsiveDirective, ResponsiveService, StyleService, SubNavbarComponent, ToObservableModule, ToObservablePipe, ToolbarPanelDirective, TopNavbarPanelDirective, TranslatePipe, UserProfileService, WINDOW, breadCrumbInit, createDirectionProvider, createResponsiveProvider, createStyleFactory, createWindowProvider, exportedDeclarations, flatArrayDeepToObject, getStream$, listenDirectionChange, loadInitialStyles, sortItems };
|
|
1557
|
+
export { AvatarComponent, BodyService, BrandLogoComponent, BreadcrumbComponent, BreadcrumbPanelDirective, BreadcrumbRouteListenerService, BreadcrumbService, CONTENT_AFTER_ROUTES, CONTENT_BEFORE_ROUTES, ClickOutsideDirective, DataStore, DefaultAuthService, DefaultTranslateService, FooterComponent, FooterLinksService, FooterPanelDirective, ICON_MAP, IconComponent, LEPTON_X_ICON_SET, LPX_AUTH_SERVICE_PROVIDER, LPX_AUTH_SERVICE_TOKEN, LPX_INITIAL_STYLES, LPX_LANGUAGE, LPX_LAYOUT_STYLE_FINAL, LPX_MENU_ITEMS, LPX_RESPONSIVE_BREAKPOINTS_DEFAULTS, LPX_STYLE_FINAL, LPX_STYLE_PROVIDERS, LPX_TRANSLATE_SERVICE_TOKEN, LPX_TRANSLATE_TOKEN, LanguageService, LanguageTranslateDefaults, LanguageTranslateKeys, LayoutService, LpxAvatarModule, LpxBrandLogoModule, LpxBreadcrumbModule, LpxClickOutsideModule, LpxCoreModule, LpxFooterModule, LpxIconModule, LpxLanguageModule, LpxNavbarModule, LpxResponsiveModule, LpxThemeTranslateService, LpxTranslateModule, MobileNavbarPanelDirective, NavbarComponent, NavbarPanelDirective, NavbarRoutesComponent, NavbarRoutesDirective, NavbarService, PanelsModule, RESPONSIVE_BREAKPOINTS, ResponsiveDirective, ResponsiveService, SettingsPanelDirective, StyleService, SubNavbarComponent, ToObservableModule, ToObservablePipe, ToolbarPanelDirective, TopNavbarPanelDirective, TranslatePipe, UserProfileService, WINDOW, breadCrumbInit, createDirectionProvider, createResponsiveProvider, createStyleFactory, createWindowProvider, exportedDeclarations, flatArrayDeepToObject, getStream$, listenDirectionChange, loadInitialStyles, sortItems, styleLoadFactory };
|
|
1531
1558
|
//# sourceMappingURL=volo-ngx-lepton-x.core.mjs.map
|