@tilde-nlp/ngx-menu 6.1.6 → 6.1.8
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/esm2022/lib/components/menu-columns/menu-columns.component.mjs +14 -11
- package/esm2022/lib/components/menu-item-list/menu-item-list.component.mjs +6 -6
- package/esm2022/lib/components/side-nav-menu/side-nav-menu.component.mjs +160 -105
- package/esm2022/lib/menu.module.mjs +1 -11
- package/esm2022/public-api.mjs +1 -4
- package/fesm2022/tilde-nlp-ngx-menu.mjs +182 -323
- package/fesm2022/tilde-nlp-ngx-menu.mjs.map +1 -1
- package/lib/components/menu-columns/menu-columns.component.d.ts +5 -6
- package/lib/components/side-nav-menu/side-nav-menu.component.d.ts +3 -1
- package/lib/menu.module.d.ts +17 -19
- package/package.json +1 -1
- package/public-api.d.ts +0 -3
- package/esm2022/lib/assets/menu-logo.svg.mjs +0 -7
- package/esm2022/lib/components/menu-item-icon/menu-item-icon.component.mjs +0 -115
- package/esm2022/lib/components/menu-item-icon/menu.model.mjs +0 -4
- package/esm2022/lib/components/menu-item-icon/models/menu-dialog-settings.model.mjs +0 -2
- package/esm2022/lib/components/menu-item-icon/models/menu-item-settings.model.mjs +0 -2
- package/esm2022/lib/components/menu-item-icon/models/menu-title-placement.model.mjs +0 -7
- package/esm2022/lib/components/modal-nav-menu/modal-nav-menu.component.mjs +0 -82
- package/lib/assets/menu-logo.svg.d.ts +0 -1
- package/lib/components/menu-item-icon/menu-item-icon.component.d.ts +0 -28
- package/lib/components/menu-item-icon/menu.model.d.ts +0 -3
- package/lib/components/menu-item-icon/models/menu-dialog-settings.model.d.ts +0 -8
- package/lib/components/menu-item-icon/models/menu-item-settings.model.d.ts +0 -6
- package/lib/components/menu-item-icon/models/menu-title-placement.model.d.ts +0 -5
- package/lib/components/modal-nav-menu/modal-nav-menu.component.d.ts +0 -14
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Component, EventEmitter, Inject, Input, Optional, Output } from '@angular/core';
|
|
2
2
|
import { MENU_SHARED_CONFIG } from '../../injection-tokens';
|
|
3
3
|
import { MenuLayoutDirection } from '../../models/menu-layout-direction.model';
|
|
4
|
+
import { ResolutionHelper } from '@tilde-nlp/ngx-common';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
import * as i1 from "@angular/router";
|
|
6
7
|
import * as i2 from "../../services/menu-items.service";
|
|
@@ -15,7 +16,7 @@ function MenuColumnsComponent_ng_container_0_menu_item_list_1_Template(rf, ctx)
|
|
|
15
16
|
} if (rf & 2) {
|
|
16
17
|
const group_r3 = i0.ɵɵnextContext().$implicit;
|
|
17
18
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
18
|
-
i0.ɵɵproperty("activeItem", ctx_r1.activeItem)("direction", ctx_r1.direction)("labelsVisible", ctx_r1.
|
|
19
|
+
i0.ɵɵproperty("activeItem", ctx_r1.activeItem)("direction", ctx_r1.direction)("labelsVisible", ctx_r1.isOpen)("menuItemGroup", group_r3)("items", group_r3.items);
|
|
19
20
|
} }
|
|
20
21
|
function MenuColumnsComponent_ng_container_0_div_2_Template(rf, ctx) { if (rf & 1) {
|
|
21
22
|
i0.ɵɵelementStart(0, "div", 4);
|
|
@@ -36,6 +37,9 @@ function MenuColumnsComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
|
36
37
|
export class MenuColumnsComponent {
|
|
37
38
|
get active() { return this._active; }
|
|
38
39
|
set active(value) {
|
|
40
|
+
if (this.toggleOnMobileSelect()) {
|
|
41
|
+
this.toggleCollapseEvent.emit();
|
|
42
|
+
}
|
|
39
43
|
this._active = value;
|
|
40
44
|
if (!value) {
|
|
41
45
|
this.activeItem = undefined;
|
|
@@ -49,23 +53,19 @@ export class MenuColumnsComponent {
|
|
|
49
53
|
this.menuSharedConfig = menuSharedConfig;
|
|
50
54
|
this.menuItemsService = menuItemsService;
|
|
51
55
|
this.direction = MenuLayoutDirection.column;
|
|
52
|
-
this.
|
|
56
|
+
this.isOpen = true;
|
|
53
57
|
this.toggleCollapseEvent = new EventEmitter();
|
|
54
|
-
this.subscriptions = [];
|
|
55
58
|
}
|
|
56
59
|
ngOnInit() {
|
|
57
60
|
this.activeItem = this.active.root;
|
|
58
61
|
}
|
|
59
|
-
ngOnDestroy() {
|
|
60
|
-
this.subscriptions.forEach(sub => sub.unsubscribe());
|
|
61
|
-
}
|
|
62
62
|
elementExpanded(element) {
|
|
63
63
|
if (!this.active || !element) {
|
|
64
64
|
this.activeItem = undefined;
|
|
65
65
|
return;
|
|
66
66
|
}
|
|
67
67
|
// if menu is collapsed and chilren are expandable, we should open menu
|
|
68
|
-
if (element.showChildren && !this.
|
|
68
|
+
if (element.showChildren && !this.isOpen) {
|
|
69
69
|
this.toggleCollapseEvent.emit();
|
|
70
70
|
}
|
|
71
71
|
if (element.showChildren && element.expanded && element === this.active.root) {
|
|
@@ -75,8 +75,11 @@ export class MenuColumnsComponent {
|
|
|
75
75
|
this.activeItem = this.active.root;
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
|
+
toggleOnMobileSelect() {
|
|
79
|
+
return this.isOpen && ResolutionHelper.isMobileRes() && (this.active && Object.values(this.active)?.length > 0);
|
|
80
|
+
}
|
|
78
81
|
static { this.ɵfac = function MenuColumnsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MenuColumnsComponent)(i0.ɵɵdirectiveInject(i1.Router), i0.ɵɵdirectiveInject(MENU_SHARED_CONFIG, 8), i0.ɵɵdirectiveInject(i2.MenuItemsService)); }; }
|
|
79
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuColumnsComponent, selectors: [["menu-columns"]], inputs: { direction: "direction",
|
|
82
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuColumnsComponent, selectors: [["menu-columns"]], inputs: { direction: "direction", isOpen: "isOpen", active: "active" }, outputs: { toggleCollapseEvent: "toggleCollapseEvent" }, decls: 1, vars: 1, consts: [[4, "ngFor", "ngForOf"], [3, "activeItem", "direction", "labelsVisible", "menuItemGroup", "items", "toggleExpand", 4, "ngIf"], ["class", "divider", 4, "ngIf"], [3, "toggleExpand", "activeItem", "direction", "labelsVisible", "menuItemGroup", "items"], [1, "divider"]], template: function MenuColumnsComponent_Template(rf, ctx) { if (rf & 1) {
|
|
80
83
|
i0.ɵɵtemplate(0, MenuColumnsComponent_ng_container_0_Template, 3, 2, "ng-container", 0);
|
|
81
84
|
} if (rf & 2) {
|
|
82
85
|
i0.ɵɵproperty("ngForOf", ctx.mergedGroups);
|
|
@@ -84,7 +87,7 @@ export class MenuColumnsComponent {
|
|
|
84
87
|
}
|
|
85
88
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MenuColumnsComponent, [{
|
|
86
89
|
type: Component,
|
|
87
|
-
args: [{ selector: 'menu-columns', template: "<ng-container *ngFor=\"let group of mergedGroups\">\r\n <menu-item-list *ngIf=\"group.items.length\" [activeItem]=\"activeItem\" [direction]=\"direction\"\r\n (toggleExpand)=\"elementExpanded($event)\" [labelsVisible]=\"
|
|
90
|
+
args: [{ selector: 'menu-columns', template: "<ng-container *ngFor=\"let group of mergedGroups\">\r\n <menu-item-list *ngIf=\"group.items.length\" [activeItem]=\"activeItem\" [direction]=\"direction\"\r\n (toggleExpand)=\"elementExpanded($event)\" [labelsVisible]=\"isOpen\" [menuItemGroup]=\"group\"\r\n [items]=\"group.items\">\r\n </menu-item-list>\r\n <div class=\"divider\" *ngIf=\"group.bottomDivider && group.items.length\">\r\n <mat-divider></mat-divider>\r\n </div>\r\n</ng-container>", styles: [":host{display:inline-block}:host menu-item-list{display:block}.divider{margin:10px 0}\n"] }]
|
|
88
91
|
}], () => [{ type: i1.Router }, { type: undefined, decorators: [{
|
|
89
92
|
type: Optional
|
|
90
93
|
}, {
|
|
@@ -92,7 +95,7 @@ export class MenuColumnsComponent {
|
|
|
92
95
|
args: [MENU_SHARED_CONFIG]
|
|
93
96
|
}] }, { type: i2.MenuItemsService }], { direction: [{
|
|
94
97
|
type: Input
|
|
95
|
-
}],
|
|
98
|
+
}], isOpen: [{
|
|
96
99
|
type: Input
|
|
97
100
|
}], toggleCollapseEvent: [{
|
|
98
101
|
type: Output
|
|
@@ -100,4 +103,4 @@ export class MenuColumnsComponent {
|
|
|
100
103
|
type: Input
|
|
101
104
|
}] }); })();
|
|
102
105
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MenuColumnsComponent, { className: "MenuColumnsComponent", filePath: "lib\\components\\menu-columns\\menu-columns.component.ts", lineNumber: 16 }); })();
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1jb2x1bW5zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tZW51L3NyYy9saWIvY29tcG9uZW50cy9tZW51LWNvbHVtbnMvbWVudS1jb2x1bW5zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tZW51L3NyYy9saWIvY29tcG9uZW50cy9tZW51LWNvbHVtbnMvbWVudS1jb2x1bW5zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU1RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUkvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7O0lDUHJELHlDQUUwQjtJQUR0Qix1T0FBZ0IsOEJBQXVCLEtBQUM7SUFFNUMsaUJBQWlCOzs7O0lBRGIsQUFEa0UsQUFBekIsQUFEd0IsQUFBMUIsOENBQXlCLCtCQUF3QixnQ0FDdkIsMkJBQXdCLHlCQUNwRTs7O0lBRXpCLDhCQUF1RTtJQUNuRSw4QkFBMkI7SUFDL0IsaUJBQU07OztJQVBWLDZCQUFpRDtJQUs3QyxBQUpBLDBHQUUwQix1RUFFNkM7Ozs7SUFKdEQsY0FBd0I7SUFBeEIsNENBQXdCO0lBSW5CLGNBQStDO0lBQS9DLHNFQUErQzs7QURVekUsTUFBTSxPQUFPLG9CQUFvQjtJQU8vQixJQUFJLE1BQU0sS0FBSyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ3JDLElBQWEsTUFBTSxDQUFDLEtBQXNCO1FBQ3hDLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsQ0FBQztZQUNoQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbEMsQ0FBQztRQUVELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBRXJCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNYLElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO1lBQzVCLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFBO0lBQ3pDLENBQUM7SUFHRCxJQUFJLFlBQVksS0FBSyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBRWpFLFlBQ3FCLE1BQWMsRUFDMEIsZ0JBQWtDLEVBQzVFLGdCQUFrQztRQUZoQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQzBCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDNUUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTNCNUMsY0FBUyxHQUF3QixtQkFBbUIsQ0FBQyxNQUFNLENBQUM7UUFDNUQsV0FBTSxHQUFHLElBQUksQ0FBQztRQUNiLHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUEwQm5ELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNyQyxDQUFDO0lBRUQsZUFBZSxDQUFDLE9BQXdCO1FBQ3RDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7WUFDNUIsT0FBTztRQUNULENBQUM7UUFFRCx1RUFBdUU7UUFDdkUsSUFBSSxPQUFPLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNsQyxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsWUFBWSxJQUFJLE9BQU8sQ0FBQyxRQUFRLElBQUksT0FBTyxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDN0UsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUN0QyxDQUFDO2FBQ0ksQ0FBQztZQUNKLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDckMsQ0FBQztJQUNILENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsTUFBTSxJQUFJLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDbEgsQ0FBQztxSEF6RFUsb0JBQW9CLHdEQTRCVCxrQkFBa0I7b0VBNUI3QixvQkFBb0I7WUNmakMsdUZBQWlEOztZQUFqQiwwQ0FBZTs7O2lGRGVsQyxvQkFBb0I7Y0FMaEMsU0FBUzsyQkFDRSxjQUFjOztzQkFnQ3JCLFFBQVE7O3NCQUFJLE1BQU07dUJBQUMsa0JBQWtCO29EQTFCL0IsU0FBUztrQkFBakIsS0FBSztZQUNHLE1BQU07a0JBQWQsS0FBSztZQUNJLG1CQUFtQjtrQkFBNUIsTUFBTTtZQUlNLE1BQU07a0JBQWxCLEtBQUs7O2tGQVJLLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkluaXQsIE9wdGlvbmFsLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgTUVOVV9TSEFSRURfQ09ORklHIH0gZnJvbSAnLi4vLi4vaW5qZWN0aW9uLXRva2Vucyc7XHJcbmltcG9ydCB7IEN1c3RvbU1lbnVJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2N1c3RvbS1tZW51LWl0ZW0nO1xyXG5pbXBvcnQgeyBNZW51TGF5b3V0RGlyZWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL21lbnUtbGF5b3V0LWRpcmVjdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IE1lbnVTaGFyZWRDb25maWcgfSBmcm9tICcuLi8uLi9tb2RlbHMvbWVudS1zaGFyZWQtY29uZmlnLm1vZGVsJztcclxuaW1wb3J0IHsgTWVudUl0ZW1zU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21lbnUtaXRlbXMuc2VydmljZSc7XHJcbmltcG9ydCB7IEFjdGl2ZU1lbnVJdGVtcyB9IGZyb20gJy4uLy4uL21vZGVscyc7XHJcbmltcG9ydCB7IFJlc29sdXRpb25IZWxwZXIgfSBmcm9tICdAdGlsZGUtbmxwL25neC1jb21tb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtZW51LWNvbHVtbnMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LWNvbHVtbnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21lbnUtY29sdW1ucy5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNZW51Q29sdW1uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIGRpcmVjdGlvbjogTWVudUxheW91dERpcmVjdGlvbiA9IE1lbnVMYXlvdXREaXJlY3Rpb24uY29sdW1uO1xyXG4gIEBJbnB1dCgpIGlzT3BlbiA9IHRydWU7XHJcbiAgQE91dHB1dCgpIHRvZ2dsZUNvbGxhcHNlRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIHByaXZhdGUgX2FjdGl2ZSE6IEFjdGl2ZU1lbnVJdGVtcztcclxuICBnZXQgYWN0aXZlKCkgeyByZXR1cm4gdGhpcy5fYWN0aXZlOyB9XHJcbiAgQElucHV0KCkgc2V0IGFjdGl2ZSh2YWx1ZTogQWN0aXZlTWVudUl0ZW1zKSB7XHJcbiAgICBpZiAodGhpcy50b2dnbGVPbk1vYmlsZVNlbGVjdCgpKSB7XHJcbiAgICAgIHRoaXMudG9nZ2xlQ29sbGFwc2VFdmVudC5lbWl0KCk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHRoaXMuX2FjdGl2ZSA9IHZhbHVlO1xyXG5cclxuICAgIGlmICghdmFsdWUpIHtcclxuICAgICAgdGhpcy5hY3RpdmVJdGVtID0gdW5kZWZpbmVkO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5lbGVtZW50RXhwYW5kZWQodGhpcy5hY3RpdmU/LnJvb3QpXHJcbiAgfVxyXG5cclxuICBhY3RpdmVJdGVtPzogQ3VzdG9tTWVudUl0ZW07XHJcbiAgZ2V0IG1lcmdlZEdyb3VwcygpIHsgcmV0dXJuIHRoaXMubWVudUl0ZW1zU2VydmljZS5tZXJnZWRHcm91cHM7IH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE1FTlVfU0hBUkVEX0NPTkZJRykgcHJvdGVjdGVkIHJlYWRvbmx5IG1lbnVTaGFyZWRDb25maWc6IE1lbnVTaGFyZWRDb25maWcsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1lbnVJdGVtc1NlcnZpY2U6IE1lbnVJdGVtc1NlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hY3RpdmVJdGVtID0gdGhpcy5hY3RpdmUucm9vdDtcclxuICB9XHJcblxyXG4gIGVsZW1lbnRFeHBhbmRlZChlbGVtZW50PzogQ3VzdG9tTWVudUl0ZW0pIHtcclxuICAgIGlmICghdGhpcy5hY3RpdmUgfHwgIWVsZW1lbnQpIHtcclxuICAgICAgdGhpcy5hY3RpdmVJdGVtID0gdW5kZWZpbmVkO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgLy8gaWYgbWVudSBpcyBjb2xsYXBzZWQgYW5kIGNoaWxyZW4gYXJlIGV4cGFuZGFibGUsIHdlIHNob3VsZCBvcGVuIG1lbnVcclxuICAgIGlmIChlbGVtZW50LnNob3dDaGlsZHJlbiAmJiAhdGhpcy5pc09wZW4pIHtcclxuICAgICAgdGhpcy50b2dnbGVDb2xsYXBzZUV2ZW50LmVtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoZWxlbWVudC5zaG93Q2hpbGRyZW4gJiYgZWxlbWVudC5leHBhbmRlZCAmJiBlbGVtZW50ID09PSB0aGlzLmFjdGl2ZS5yb290KSB7XHJcbiAgICAgIHRoaXMuYWN0aXZlSXRlbSA9IHRoaXMuYWN0aXZlLmNoaWxkO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuYWN0aXZlSXRlbSA9IHRoaXMuYWN0aXZlLnJvb3Q7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHRvZ2dsZU9uTW9iaWxlU2VsZWN0KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNPcGVuICYmIFJlc29sdXRpb25IZWxwZXIuaXNNb2JpbGVSZXMoKSAmJiAodGhpcy5hY3RpdmUgJiYgT2JqZWN0LnZhbHVlcyh0aGlzLmFjdGl2ZSk/Lmxlbmd0aCA+IDApO1xyXG4gIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBncm91cCBvZiBtZXJnZWRHcm91cHNcIj5cclxuICAgIDxtZW51LWl0ZW0tbGlzdCAqbmdJZj1cImdyb3VwLml0ZW1zLmxlbmd0aFwiIFthY3RpdmVJdGVtXT1cImFjdGl2ZUl0ZW1cIiBbZGlyZWN0aW9uXT1cImRpcmVjdGlvblwiXHJcbiAgICAgICAgKHRvZ2dsZUV4cGFuZCk9XCJlbGVtZW50RXhwYW5kZWQoJGV2ZW50KVwiIFtsYWJlbHNWaXNpYmxlXT1cImlzT3BlblwiIFttZW51SXRlbUdyb3VwXT1cImdyb3VwXCJcclxuICAgICAgICBbaXRlbXNdPVwiZ3JvdXAuaXRlbXNcIj5cclxuICAgIDwvbWVudS1pdGVtLWxpc3Q+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlclwiICpuZ0lmPVwiZ3JvdXAuYm90dG9tRGl2aWRlciAmJiBncm91cC5pdGVtcy5sZW5ndGhcIj5cclxuICAgICAgICA8bWF0LWRpdmlkZXI+PC9tYXQtZGl2aWRlcj5cclxuICAgIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj4iXX0=
|
|
@@ -72,11 +72,11 @@ function MenuItemListComponent_ng_template_4_ng_container_4_menu_item_list_1_Tem
|
|
|
72
72
|
} if (rf & 2) {
|
|
73
73
|
const menuItem_r6 = i0.ɵɵnextContext(2).menuItem;
|
|
74
74
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
75
|
-
i0.ɵɵproperty("
|
|
75
|
+
i0.ɵɵproperty("items", menuItem_r6.children)("direction", ctx_r0.direction)("labelsVisible", ctx_r0.labelsVisible)("activeItem", ctx_r0.activeItem);
|
|
76
76
|
} }
|
|
77
77
|
function MenuItemListComponent_ng_template_4_ng_container_4_Template(rf, ctx) { if (rf & 1) {
|
|
78
78
|
i0.ɵɵelementContainerStart(0);
|
|
79
|
-
i0.ɵɵtemplate(1, MenuItemListComponent_ng_template_4_ng_container_4_menu_item_list_1_Template, 1,
|
|
79
|
+
i0.ɵɵtemplate(1, MenuItemListComponent_ng_template_4_ng_container_4_menu_item_list_1_Template, 1, 4, "menu-item-list", 15);
|
|
80
80
|
i0.ɵɵelementContainerEnd();
|
|
81
81
|
} if (rf & 2) {
|
|
82
82
|
const menuItem_r6 = i0.ɵɵnextContext().menuItem;
|
|
@@ -141,7 +141,7 @@ export class MenuItemListComponent {
|
|
|
141
141
|
this.toggleExpand.next(menuItem);
|
|
142
142
|
}
|
|
143
143
|
static { this.ɵfac = function MenuItemListComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MenuItemListComponent)(); }; }
|
|
144
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuItemListComponent, selectors: [["menu-item-list"]], inputs: { direction: "direction", labelsVisible: "labelsVisible", activeItem: "activeItem", showIcons: "showIcons", items: "items", menuItemGroup: "menuItemGroup" }, outputs: { toggleExpand: "toggleExpand" }, decls: 8, vars: 3, consts: [["itemWithChildren", ""], ["menuItemLink", ""], [1, "menu-list-wrapper"], ["fxLayoutAlign", "start center", "class", "menu-item-list-title", 4, "ngIf"], ["fxLayout", "column", 1, "menu-item-list", 3, "fxLayoutAlign"], [4, "ngFor", "ngForOf"], ["fxLayoutAlign", "start center", 1, "menu-item-list-title"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], ["matTooltipPosition", "after", "matTooltipClass", "menu-tooltip", "fxLayoutGap", "0.375rem", 1, "text-m", "menu-item", 3, "click", "ngClass.lt-md", "fxLayout", "matTooltip", "fxLayoutAlign"], [4, "ngIf"], [3, "menuItem"], [1, "menu-item-title"], [1, "title-content"], ["class", "material-icons", 4, "ngIf"], [1, "material-icons"], ["class", "child-list", 3, "
|
|
144
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuItemListComponent, selectors: [["menu-item-list"]], inputs: { direction: "direction", labelsVisible: "labelsVisible", activeItem: "activeItem", showIcons: "showIcons", items: "items", menuItemGroup: "menuItemGroup" }, outputs: { toggleExpand: "toggleExpand" }, decls: 8, vars: 3, consts: [["itemWithChildren", ""], ["menuItemLink", ""], [1, "menu-list-wrapper"], ["fxLayoutAlign", "start center", "class", "menu-item-list-title", 4, "ngIf"], ["fxLayout", "column", 1, "menu-item-list", 3, "fxLayoutAlign"], [4, "ngFor", "ngForOf"], ["fxLayoutAlign", "start center", 1, "menu-item-list-title"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], ["matTooltipPosition", "after", "matTooltipClass", "menu-tooltip", "fxLayoutGap", "0.375rem", 1, "text-m", "menu-item", 3, "click", "ngClass.lt-md", "fxLayout", "matTooltip", "fxLayoutAlign"], [4, "ngIf"], [3, "menuItem"], [1, "menu-item-title"], [1, "title-content"], ["class", "material-icons", 4, "ngIf"], [1, "material-icons"], ["class", "child-list", 3, "items", "direction", "labelsVisible", "activeItem", 4, "ngIf"], [1, "child-list", 3, "items", "direction", "labelsVisible", "activeItem"], [3, "ngClass.lt-md", "menuItem", "direction", "labelsVisible", "activeItem", "showIcons"]], template: function MenuItemListComponent_Template(rf, ctx) { if (rf & 1) {
|
|
145
145
|
i0.ɵɵelementStart(0, "div", 2);
|
|
146
146
|
i0.ɵɵtemplate(1, MenuItemListComponent_div_1_Template, 3, 3, "div", 3);
|
|
147
147
|
i0.ɵɵelementStart(2, "div", 4);
|
|
@@ -155,11 +155,11 @@ export class MenuItemListComponent {
|
|
|
155
155
|
i0.ɵɵproperty("fxLayoutAlign", ctx.menuLayoutDirection);
|
|
156
156
|
i0.ɵɵadvance();
|
|
157
157
|
i0.ɵɵproperty("ngForOf", ctx.items);
|
|
158
|
-
} }, dependencies: [i1.DefaultLayoutDirective, i1.DefaultLayoutGapDirective, i1.DefaultLayoutAlignDirective, i2.DefaultClassDirective, i3.NgForOf, i3.NgIf, i3.NgTemplateOutlet, i4.MatTooltip, MenuItemListComponent, i5.MenuIconComponent, i6.MenuItemLinkComponent, i7.TranslatePipe], styles: ["[_nghost-%COMP%]{display:inline-block} .collapsed .menu-item-list{display:flex!important;justify-content:center!important;align-items:center!important} .collapsed .menu-list-wrapper, .collapsed tld-menu-item-link{display:flex!important;justify-content:center!important} .collapsed .menu-item{display:flex!important;place-content:center center!important} .collapsed tld-menu-item-link:not(:first-child){margin-top:16px!important}[_nghost-%COMP%] .menu-list-wrapper .menu-item{cursor:pointer;font-style:normal;color:var(--base-30);text-decoration:none;align-items:center!important;font-weight:400;background:none;border:none}[_nghost-%COMP%] .menu-list-wrapper .menu-item:not(button):not(.active-menu-item):hover{background-color:var(--base-70)!important}[_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item, [_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item mat-icon, [_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item:hover{font-weight:600}[_nghost-%COMP%] .menu-list-wrapper .menu-item span{display:inline-block}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title{display:flex;flex-direction:row;align-items:start;width:100%}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title .title-content{display:block}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title .title-content:before{display:block;content:attr(content);font-weight:600;height:0;overflow:hidden;visibility:hidden}.child-list[_nghost-%COMP%]{margin-bottom:1rem}.child-list[_nghost-%COMP%] .menu-item[_ngcontent-%COMP%] + .menu-item[_ngcontent-%COMP%]{margin-top:.5rem} .menu-tooltip{left:.625rem;font-family:Roboto;font-style:normal;font-weight:400;font-size:.75rem;line-height:1.25rem;color:var(--base-70);border-radius:.25rem;position:relative} .menu-tooltip:after{width:0;height:0;content:\"\";position:absolute;border-left:.5rem solid transparent;border-right:.5rem solid transparent;border-bottom:.5rem solid var(--menu-border-dark-color);left:-.75rem;top:calc(50% - .25rem);transform:rotate(270deg);overflow:initial}
|
|
158
|
+
} }, dependencies: [i1.DefaultLayoutDirective, i1.DefaultLayoutGapDirective, i1.DefaultLayoutAlignDirective, i2.DefaultClassDirective, i3.NgForOf, i3.NgIf, i3.NgTemplateOutlet, i4.MatTooltip, MenuItemListComponent, i5.MenuIconComponent, i6.MenuItemLinkComponent, i7.TranslatePipe], styles: ["[_nghost-%COMP%]{display:inline-block} .collapsed .menu-item-list{display:flex!important;justify-content:center!important;align-items:center!important} .collapsed .menu-list-wrapper, .collapsed tld-menu-item-link{display:flex!important;justify-content:center!important} .collapsed .menu-item{display:flex!important;place-content:center center!important} .collapsed tld-menu-item-link:not(:first-child){margin-top:16px!important}[_nghost-%COMP%] .menu-list-wrapper .menu-item{cursor:pointer;font-style:normal;color:var(--base-30);text-decoration:none;align-items:center!important;font-weight:400;background:none;border:none}[_nghost-%COMP%] .menu-list-wrapper .menu-item:not(button):not(.active-menu-item):hover{background-color:var(--base-70)!important}[_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item, [_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item mat-icon, [_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item:hover{font-weight:600}[_nghost-%COMP%] .menu-list-wrapper .menu-item span{display:inline-block}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title{display:flex;flex-direction:row;align-items:start;width:100%}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title .title-content{display:block}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title .title-content:before{display:block;content:attr(content);font-weight:600;height:0;overflow:hidden;visibility:hidden}.child-list[_nghost-%COMP%]{margin-bottom:1rem}.child-list[_nghost-%COMP%] .menu-item[_ngcontent-%COMP%] + .menu-item[_ngcontent-%COMP%]{margin-top:.5rem} .menu-tooltip{left:.625rem;font-family:Roboto;font-style:normal;font-weight:400;font-size:.75rem;line-height:1.25rem;color:var(--base-70);border-radius:.25rem;position:relative} .menu-tooltip:after{width:0;height:0;content:\"\";position:absolute;border-left:.5rem solid transparent;border-right:.5rem solid transparent;border-bottom:.5rem solid var(--menu-border-dark-color);left:-.75rem;top:calc(50% - .25rem);transform:rotate(270deg);overflow:initial}"] }); }
|
|
159
159
|
}
|
|
160
160
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MenuItemListComponent, [{
|
|
161
161
|
type: Component,
|
|
162
|
-
args: [{ selector: 'menu-item-list', template: "<div class=\"menu-list-wrapper\">\r\n <div *ngIf=\"titleKey && showTitle && labelsVisible\" fxLayoutAlign=\"start center\" class=\"menu-item-list-title\">\r\n {{ titleKey | translate }}\r\n </div>\r\n <div fxLayout=\"column\" [fxLayoutAlign]=\"menuLayoutDirection\" class=\"menu-item-list\">\r\n <ng-container *ngFor=\"let menuItem of items\">\r\n <ng-container\r\n *ngTemplateOutlet=\"!menuItem.showChildren || !menuItem.children || menuItem?.children?.length === 0 ? menuItemLink : itemWithChildren; context: {menuItem: menuItem}\">\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n</div>\r\n\r\n<ng-template #itemWithChildren let-menuItem=\"menuItem\">\r\n <button [attr.id]=\"menuItem.customId\" [ngClass.lt-md]=\"'mob-menu-item'\" [fxLayout]=\"menuItemLayout\" class=\"text-m menu-item\"\r\n [matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\" matTooltipPosition=\"after\" [class.menu-labels-visible]=\"labelsVisible\"\r\n [fxLayoutAlign]=\"menuLayoutDirection\" matTooltipClass=\"menu-tooltip\" fxLayoutGap=\"0.375rem\"\r\n [class.active-menu-item]=\"activeItem?.link && menuItem === activeItem\" (click)=\"toggleItemExpand($event,menuItem)\">\r\n <ng-container *ngIf=\"showIcons && menuItem.icon\">\r\n <tld-menu-icon [menuItem]=\"menuItem\"></tld-menu-icon>\r\n </ng-container>\r\n <ng-container *ngIf=\"labelsVisible\">\r\n <span class=\"menu-item-title\">\r\n <span class=\"title-content\">{{ menuItem.title | translate }}</span></span>\r\n <span class=\"material-icons\" *ngIf=\"menuItem.showChildren && menuItem.children\">\r\n {{ menuItem.expanded ? 'arrow_drop_up' : 'arrow_drop_down' }}\r\n </span>\r\n </ng-container>\r\n </button>\r\n <ng-container *ngIf=\"menuItem.showChildren && menuItem.expanded && labelsVisible\">\r\n <menu-item-list
|
|
162
|
+
args: [{ selector: 'menu-item-list', template: "<div class=\"menu-list-wrapper\">\r\n <div *ngIf=\"titleKey && showTitle && labelsVisible\" fxLayoutAlign=\"start center\" class=\"menu-item-list-title\">\r\n {{ titleKey | translate }}\r\n </div>\r\n <div fxLayout=\"column\" [fxLayoutAlign]=\"menuLayoutDirection\" class=\"menu-item-list\">\r\n <ng-container *ngFor=\"let menuItem of items\">\r\n <ng-container\r\n *ngTemplateOutlet=\"!menuItem.showChildren || !menuItem.children || menuItem?.children?.length === 0 ? menuItemLink : itemWithChildren; context: {menuItem: menuItem}\">\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n</div>\r\n\r\n<ng-template #itemWithChildren let-menuItem=\"menuItem\">\r\n <button [attr.id]=\"menuItem.customId\" [ngClass.lt-md]=\"'mob-menu-item'\" [fxLayout]=\"menuItemLayout\" class=\"text-m menu-item\"\r\n [matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\" matTooltipPosition=\"after\" [class.menu-labels-visible]=\"labelsVisible\"\r\n [fxLayoutAlign]=\"menuLayoutDirection\" matTooltipClass=\"menu-tooltip\" fxLayoutGap=\"0.375rem\"\r\n [class.active-menu-item]=\"activeItem?.link && menuItem === activeItem\" (click)=\"toggleItemExpand($event,menuItem)\">\r\n <ng-container *ngIf=\"showIcons && menuItem.icon\">\r\n <tld-menu-icon [menuItem]=\"menuItem\"></tld-menu-icon>\r\n </ng-container>\r\n <ng-container *ngIf=\"labelsVisible\">\r\n <span class=\"menu-item-title\">\r\n <span class=\"title-content\">{{ menuItem.title | translate }}</span></span>\r\n <span class=\"material-icons\" *ngIf=\"menuItem.showChildren && menuItem.children\">\r\n {{ menuItem.expanded ? 'arrow_drop_up' : 'arrow_drop_down' }}\r\n </span>\r\n </ng-container>\r\n </button>\r\n <ng-container *ngIf=\"menuItem.showChildren && menuItem.expanded && labelsVisible\">\r\n <menu-item-list class=\"child-list\" *ngIf=\"menuItem.children && menuItem.children.length\" [items]=\"menuItem.children\"\r\n [direction]=\"direction\" [labelsVisible]=\"labelsVisible\" [activeItem]=\"activeItem\">\r\n </menu-item-list>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #menuItemLink let-menuItem=\"menuItem\">\r\n <tld-menu-item-link [ngClass.lt-md]=\"'mob-menu-item'\" [menuItem]=\"menuItem\" [direction]=\"direction\" [labelsVisible]=\"labelsVisible\"\r\n [activeItem]=\"activeItem\" [showIcons]=\"showIcons\"></tld-menu-item-link>\r\n</ng-template>", styles: [":host{display:inline-block}::ng-deep .collapsed .menu-item-list{display:flex!important;justify-content:center!important;align-items:center!important}::ng-deep .collapsed .menu-list-wrapper,::ng-deep .collapsed tld-menu-item-link{display:flex!important;justify-content:center!important}::ng-deep .collapsed .menu-item{display:flex!important;place-content:center center!important}::ng-deep .collapsed tld-menu-item-link:not(:first-child){margin-top:16px!important}:host ::ng-deep .menu-list-wrapper .menu-item{cursor:pointer;font-style:normal;color:var(--base-30);text-decoration:none;align-items:center!important;font-weight:400;background:none;border:none}:host ::ng-deep .menu-list-wrapper .menu-item:not(button):not(.active-menu-item):hover{background-color:var(--base-70)!important}:host ::ng-deep .menu-list-wrapper .menu-item.active-menu-item,:host ::ng-deep .menu-list-wrapper .menu-item.active-menu-item mat-icon,:host ::ng-deep .menu-list-wrapper .menu-item.active-menu-item:hover{font-weight:600}:host ::ng-deep .menu-list-wrapper .menu-item span{display:inline-block}:host ::ng-deep .menu-list-wrapper .menu-item .menu-item-title{display:flex;flex-direction:row;align-items:start;width:100%}:host ::ng-deep .menu-list-wrapper .menu-item .menu-item-title .title-content{display:block}:host ::ng-deep .menu-list-wrapper .menu-item .menu-item-title .title-content:before{display:block;content:attr(content);font-weight:600;height:0;overflow:hidden;visibility:hidden}:host.child-list{margin-bottom:1rem}:host.child-list .menu-item+.menu-item{margin-top:.5rem}::ng-deep .menu-tooltip{left:.625rem;font-family:Roboto;font-style:normal;font-weight:400;font-size:.75rem;line-height:1.25rem;color:var(--base-70);border-radius:.25rem;position:relative}::ng-deep .menu-tooltip:after{width:0;height:0;content:\"\";position:absolute;border-left:.5rem solid transparent;border-right:.5rem solid transparent;border-bottom:.5rem solid var(--menu-border-dark-color);left:-.75rem;top:calc(50% - .25rem);transform:rotate(270deg);overflow:initial}\n"] }]
|
|
163
163
|
}], null, { direction: [{
|
|
164
164
|
type: Input
|
|
165
165
|
}], labelsVisible: [{
|
|
@@ -176,4 +176,4 @@ export class MenuItemListComponent {
|
|
|
176
176
|
type: Output
|
|
177
177
|
}] }); })();
|
|
178
178
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MenuItemListComponent, { className: "MenuItemListComponent", filePath: "lib\\components\\menu-item-list\\menu-item-list.component.ts", lineNumber: 11 }); })();
|
|
179
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1pdGVtLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1lbnUvc3JjL2xpYi9jb21wb25lbnRzL21lbnUtaXRlbS1saXN0L21lbnUtaXRlbS1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tZW51L3NyYy9saWIvY29tcG9uZW50cy9tZW51LWl0ZW0tbGlzdC9tZW51LWl0ZW0tbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3ZFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7Ozs7Ozs7OztJQ0Y3RSw4QkFBOEc7SUFDNUcsWUFDRjs7SUFBQSxpQkFBTTs7O0lBREosY0FDRjtJQURFLHNFQUNGOzs7SUFHSSx3QkFFZTs7O0lBSGpCLDZCQUE2QztJQUMzQyx1R0FDd0s7Ozs7Ozs7SUFBckssY0FBc0k7SUFBQSxBQUF0SSx1T0FBc0ksb0VBQTZCOzs7SUFXeEssNkJBQWlEO0lBQy9DLG9DQUFzRDs7OztJQUF0QyxjQUFxQjtJQUFyQixzQ0FBcUI7OztJQUtyQyxnQ0FBZ0Y7SUFDOUUsWUFDRjtJQUFBLGlCQUFPOzs7SUFETCxjQUNGO0lBREUsMkZBQ0Y7OztJQUxGLDZCQUFvQztJQUVoQyxBQURGLGdDQUE4QixlQUNBO0lBQUEsWUFBZ0M7O0lBQU8sQUFBUCxpQkFBTyxFQUFPO0lBQzVFLHNHQUFnRjs7OztJQURsRCxlQUFnQztJQUFoQyw2REFBZ0M7SUFDaEMsZUFBZ0Q7SUFBaEQsdUVBQWdEOzs7SUFNaEYscUNBRWlCOzs7O0lBRHlDLEFBQWhDLEFBQXhCLEFBRHVGLDRDQUEyQiwrQkFDM0YsdUNBQWdDLGlDQUEwQjs7O0lBRnJGLDZCQUFrRjtJQUNoRiwwSEFDb0Y7Ozs7SUFEaEQsY0FBbUQ7SUFBbkQsMEVBQW1EOzs7O0lBaEJ6RixpQ0FHcUg7O0lBQTVDLDROQUFTLDRDQUFpQyxLQUFDO0lBSWxILEFBSEEsc0dBQWlELHlGQUdiO0lBT3RDLGlCQUFTO0lBQ1Qsc0dBQWtGOzs7O0lBWmhGLEFBRjZGLDJEQUEyQyxzSEFFbEU7SUFEdEUsQUFEQSxBQURzRSxBQUFsQywrQ0FBaUMsbUNBQTRCLHFGQUNoQyw2Q0FDNUI7O0lBRXRCLGVBQWdDO0lBQWhDLDJEQUFnQztJQUdoQyxjQUFtQjtJQUFuQiwyQ0FBbUI7SUFRckIsY0FBaUU7SUFBakUsK0ZBQWlFOzs7SUFRaEYseUNBQ3lFOzs7O0lBQTdDLEFBQTFCLEFBRGtHLEFBQXhCLEFBQXRCLEFBQWxDLCtDQUFpQyx5QkFBc0IsK0JBQXdCLHVDQUFnQyxpQ0FDeEcsK0JBQXdCOztBRDVCckQsTUFBTSxPQUFPLHFCQUFxQjtJQUxsQztRQU1XLGNBQVMsR0FBd0IsbUJBQW1CLENBQUMsTUFBTSxDQUFDO1FBQzVELGtCQUFhLEdBQUcsSUFBSSxDQUFDO1FBRXJCLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFFakIsVUFBSyxHQUFxQixFQUFFLENBQUM7UUFHNUIsaUJBQVksR0FBaUMsSUFBSSxZQUFZLEVBQWtCLENBQUM7S0E4QjNGO0lBNUJDLElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUM7SUFDdkMsQ0FBQztJQUdELElBQUksbUJBQW1CO1FBQ3JCLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLG1CQUFtQixDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7WUFDM0UsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsU0FBUyxLQUFLLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDMUUsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQWlCLEVBQUUsUUFBd0I7UUFDMUQsNkJBQTZCO1FBQzdCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV4QixJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDN0MsUUFBUSxDQUFDLFFBQVEsR0FBRyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDekMsQ0FBQztRQUVELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ25DLENBQUM7c0hBdENVLHFCQUFxQjtvRUFBckIscUJBQXFCO1lDVmxDLDhCQUErQjtZQUM3QixzRUFBOEc7WUFHOUcsOEJBQW9GO1lBQ2xGLHdGQUE2QztZQU1qRCxBQURFLGlCQUFNLEVBQ0Y7WUF5Qk4sQUF2QkEsd0hBQXVELDBHQXVCSjs7WUFuQzNDLGNBQTRDO1lBQTVDLHlFQUE0QztZQUczQixjQUFxQztZQUFyQyx1REFBcUM7WUFDdkIsY0FBUTtZQUFSLG1DQUFRO3dNREtsQyxxQkFBcUI7O2lGQUFyQixxQkFBcUI7Y0FMakMsU0FBUzsyQkFDRSxnQkFBZ0I7Z0JBS2pCLFNBQVM7a0JBQWpCLEtBQUs7WUFDRyxhQUFhO2tCQUFyQixLQUFLO1lBQ0csVUFBVTtrQkFBbEIsS0FBSztZQUNHLFNBQVM7a0JBQWpCLEtBQUs7WUFFRyxLQUFLO2tCQUFiLEtBQUs7WUFDRyxhQUFhO2tCQUFyQixLQUFLO1lBRUksWUFBWTtrQkFBckIsTUFBTTs7a0ZBVEkscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ3VzdG9tTWVudUl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvY3VzdG9tLW1lbnUtaXRlbSc7XHJcbmltcG9ydCB7IE1lbnVJdGVtR3JvdXBCYXNlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL21lbnUtaXRlbS1ncm91cC5tb2RlbCc7XHJcbmltcG9ydCB7IE1lbnVMYXlvdXREaXJlY3Rpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvbWVudS1sYXlvdXQtZGlyZWN0aW9uLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbWVudS1pdGVtLWxpc3QnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LWl0ZW0tbGlzdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbWVudS1pdGVtLWxpc3QuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWVudUl0ZW1MaXN0Q29tcG9uZW50IHtcclxuICBASW5wdXQoKSBkaXJlY3Rpb246IE1lbnVMYXlvdXREaXJlY3Rpb24gPSBNZW51TGF5b3V0RGlyZWN0aW9uLmNvbHVtbjtcclxuICBASW5wdXQoKSBsYWJlbHNWaXNpYmxlID0gdHJ1ZTtcclxuICBASW5wdXQoKSBhY3RpdmVJdGVtITogQ3VzdG9tTWVudUl0ZW0gfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgc2hvd0ljb25zID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KCkgaXRlbXM6IEN1c3RvbU1lbnVJdGVtW10gPSBbXTtcclxuICBASW5wdXQoKSBtZW51SXRlbUdyb3VwITogTWVudUl0ZW1Hcm91cEJhc2U7XHJcblxyXG4gIEBPdXRwdXQoKSB0b2dnbGVFeHBhbmQ6IEV2ZW50RW1pdHRlcjxDdXN0b21NZW51SXRlbT4gPSBuZXcgRXZlbnRFbWl0dGVyPEN1c3RvbU1lbnVJdGVtPigpO1xyXG5cclxuICBnZXQgdGl0bGVLZXkoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tZW51SXRlbUdyb3VwPy50aXRsZTtcclxuICB9XHJcblxyXG4gIGdldCBzaG93VGl0bGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tZW51SXRlbUdyb3VwPy5zaG93VGl0bGU7XHJcbiAgfVxyXG5cclxuXHJcbiAgZ2V0IG1lbnVMYXlvdXREaXJlY3Rpb24oKTogc3RyaW5nIHtcclxuICAgIHJldHVybiAodGhpcy5kaXJlY3Rpb24gPT09IE1lbnVMYXlvdXREaXJlY3Rpb24uY29sdW1uIHx8ICF0aGlzLmxhYmVsc1Zpc2libGUpXHJcbiAgICAgID8gJ3N0YXJ0IGNlbnRlcicgOiAnc3RhcnQgc3RhcnQnO1xyXG4gIH1cclxuXHJcbiAgZ2V0IG1lbnVJdGVtTGF5b3V0KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5kaXJlY3Rpb24gPT09IE1lbnVMYXlvdXREaXJlY3Rpb24uY29sdW1uID8gJ2NvbHVtbicgOiAncm93JztcclxuICB9XHJcblxyXG4gIHRvZ2dsZUl0ZW1FeHBhbmQoZXZlbnQ6IE1vdXNlRXZlbnQsIG1lbnVJdGVtOiBDdXN0b21NZW51SXRlbSkge1xyXG4gICAgLy8gc28gbWVudSBkb2VzbnQgZ2V0IGNsb3NlZC5cclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG5cclxuICAgIGlmICh0aGlzLmxhYmVsc1Zpc2libGUgfHwgIW1lbnVJdGVtLmV4cGFuZGVkKSB7XHJcbiAgICAgIG1lbnVJdGVtLmV4cGFuZGVkID0gIW1lbnVJdGVtLmV4cGFuZGVkO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMudG9nZ2xlRXhwYW5kLm5leHQobWVudUl0ZW0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibWVudS1saXN0LXdyYXBwZXJcIj5cclxuICA8ZGl2ICpuZ0lmPVwidGl0bGVLZXkgJiYgc2hvd1RpdGxlICYmIGxhYmVsc1Zpc2libGVcIiBmeExheW91dEFsaWduPVwic3RhcnQgY2VudGVyXCIgY2xhc3M9XCJtZW51LWl0ZW0tbGlzdC10aXRsZVwiPlxyXG4gICAge3sgdGl0bGVLZXkgfCB0cmFuc2xhdGUgfX1cclxuICA8L2Rpdj5cclxuICA8ZGl2IGZ4TGF5b3V0PVwiY29sdW1uXCIgW2Z4TGF5b3V0QWxpZ25dPVwibWVudUxheW91dERpcmVjdGlvblwiIGNsYXNzPVwibWVudS1pdGVtLWxpc3RcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG1lbnVJdGVtIG9mIGl0ZW1zXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIiFtZW51SXRlbS5zaG93Q2hpbGRyZW4gfHwgIW1lbnVJdGVtLmNoaWxkcmVuIHx8IG1lbnVJdGVtPy5jaGlsZHJlbj8ubGVuZ3RoID09PSAwID8gbWVudUl0ZW1MaW5rIDogaXRlbVdpdGhDaGlsZHJlbjsgY29udGV4dDoge21lbnVJdGVtOiBtZW51SXRlbX1cIj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48bmctdGVtcGxhdGUgI2l0ZW1XaXRoQ2hpbGRyZW4gbGV0LW1lbnVJdGVtPVwibWVudUl0ZW1cIj5cclxuICA8YnV0dG9uIFthdHRyLmlkXT1cIm1lbnVJdGVtLmN1c3RvbUlkXCIgW25nQ2xhc3MubHQtbWRdPVwiJ21vYi1tZW51LWl0ZW0nXCIgW2Z4TGF5b3V0XT1cIm1lbnVJdGVtTGF5b3V0XCIgY2xhc3M9XCJ0ZXh0LW0gbWVudS1pdGVtXCJcclxuICAgIFttYXRUb29sdGlwXT1cIiFsYWJlbHNWaXNpYmxlID8gKG1lbnVJdGVtLnRpdGxlIHwgdHJhbnNsYXRlKSA6ICcnXCIgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWZ0ZXJcIiBbY2xhc3MubWVudS1sYWJlbHMtdmlzaWJsZV09XCJsYWJlbHNWaXNpYmxlXCJcclxuICAgIFtmeExheW91dEFsaWduXT1cIm1lbnVMYXlvdXREaXJlY3Rpb25cIiBtYXRUb29sdGlwQ2xhc3M9XCJtZW51LXRvb2x0aXBcIiBmeExheW91dEdhcD1cIjAuMzc1cmVtXCJcclxuICAgIFtjbGFzcy5hY3RpdmUtbWVudS1pdGVtXT1cImFjdGl2ZUl0ZW0/LmxpbmsgJiYgbWVudUl0ZW0gPT09IGFjdGl2ZUl0ZW1cIiAoY2xpY2spPVwidG9nZ2xlSXRlbUV4cGFuZCgkZXZlbnQsbWVudUl0ZW0pXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0ljb25zICYmIG1lbnVJdGVtLmljb25cIj5cclxuICAgICAgPHRsZC1tZW51LWljb24gIFttZW51SXRlbV09XCJtZW51SXRlbVwiPjwvdGxkLW1lbnUtaWNvbj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxhYmVsc1Zpc2libGVcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJtZW51LWl0ZW0tdGl0bGVcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlLWNvbnRlbnRcIj57eyBtZW51SXRlbS50aXRsZSB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj48L3NwYW4+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnNcIiAqbmdJZj1cIm1lbnVJdGVtLnNob3dDaGlsZHJlbiAmJiBtZW51SXRlbS5jaGlsZHJlblwiPlxyXG4gICAgICAgIHt7IG1lbnVJdGVtLmV4cGFuZGVkID8gJ2Fycm93X2Ryb3BfdXAnIDogJ2Fycm93X2Ryb3BfZG93bicgfX1cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9idXR0b24+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1lbnVJdGVtLnNob3dDaGlsZHJlbiAmJiBtZW51SXRlbS5leHBhbmRlZCAmJiBsYWJlbHNWaXNpYmxlXCI+XHJcbiAgICA8bWVudS1pdGVtLWxpc3QgY2xhc3M9XCJjaGlsZC1saXN0XCIgKm5nSWY9XCJtZW51SXRlbS5jaGlsZHJlbiAmJiBtZW51SXRlbS5jaGlsZHJlbi5sZW5ndGhcIiBbaXRlbXNdPVwibWVudUl0ZW0uY2hpbGRyZW5cIlxyXG4gICAgICBbZGlyZWN0aW9uXT1cImRpcmVjdGlvblwiIFtsYWJlbHNWaXNpYmxlXT1cImxhYmVsc1Zpc2libGVcIiBbYWN0aXZlSXRlbV09XCJhY3RpdmVJdGVtXCI+XHJcbiAgICA8L21lbnUtaXRlbS1saXN0PlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNtZW51SXRlbUxpbmsgbGV0LW1lbnVJdGVtPVwibWVudUl0ZW1cIj5cclxuICA8dGxkLW1lbnUtaXRlbS1saW5rIFtuZ0NsYXNzLmx0LW1kXT1cIidtb2ItbWVudS1pdGVtJ1wiIFttZW51SXRlbV09XCJtZW51SXRlbVwiIFtkaXJlY3Rpb25dPVwiZGlyZWN0aW9uXCIgW2xhYmVsc1Zpc2libGVdPVwibGFiZWxzVmlzaWJsZVwiXHJcbiAgICBbYWN0aXZlSXRlbV09XCJhY3RpdmVJdGVtXCIgW3Nob3dJY29uc109XCJzaG93SWNvbnNcIj48L3RsZC1tZW51LWl0ZW0tbGluaz5cclxuPC9uZy10ZW1wbGF0ZT4iXX0=
|