@tilde-nlp/ngx-menu 1.0.1 → 1.0.3
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/menu-columns/menu-columns.component.mjs +17 -8
- package/esm2020/lib/components/menu-item-list/menu-item-list.component.mjs +3 -3
- package/esm2020/lib/menu.module.mjs +4 -1
- package/fesm2015/tilde-nlp-ngx-menu.mjs +22 -9
- package/fesm2015/tilde-nlp-ngx-menu.mjs.map +1 -1
- package/fesm2020/tilde-nlp-ngx-menu.mjs +21 -9
- package/fesm2020/tilde-nlp-ngx-menu.mjs.map +1 -1
- package/lib/components/menu-columns/menu-columns.component.d.ts +1 -0
- package/lib/menu.module.d.ts +5 -5
- package/package.json +1 -1
|
@@ -39,6 +39,7 @@ export class MenuColumnsComponent {
|
|
|
39
39
|
get menuItemGroups() { return this._menuItemGroups; }
|
|
40
40
|
set menuItemGroups(groups) {
|
|
41
41
|
this._menuItemGroups = groups ?? [];
|
|
42
|
+
this.updateMerged();
|
|
42
43
|
}
|
|
43
44
|
get mergedGroups() { return this._mergedGroups; }
|
|
44
45
|
get allRootItems() {
|
|
@@ -80,13 +81,7 @@ export class MenuColumnsComponent {
|
|
|
80
81
|
...this.strapiGroupBase,
|
|
81
82
|
items: this.strapiItems
|
|
82
83
|
};
|
|
83
|
-
|
|
84
|
-
this._mergedGroups = [this.strapiGroup, ...this.menuItemGroups];
|
|
85
|
-
}
|
|
86
|
-
else if (this.strapiDataLocation === StrapiDataLocation.END) {
|
|
87
|
-
this._mergedGroups = [...this.menuItemGroups, this.strapiGroup];
|
|
88
|
-
}
|
|
89
|
-
this.changeActiveElement();
|
|
84
|
+
this.updateMerged();
|
|
90
85
|
}
|
|
91
86
|
subscribeOnRouteChange() {
|
|
92
87
|
const subscription = this.router.events
|
|
@@ -134,6 +129,20 @@ export class MenuColumnsComponent {
|
|
|
134
129
|
const routerLinkActiveOptions = element.routerLinkActiveOptions ?? this.menuSharedConfig.activeMatchOptions ?? this.isActiveMatchOptions;
|
|
135
130
|
return this.router.isActive(element.link, routerLinkActiveOptions);
|
|
136
131
|
}
|
|
132
|
+
updateMerged() {
|
|
133
|
+
if (this.strapiGroup?.items?.length) {
|
|
134
|
+
if (this.strapiDataLocation === StrapiDataLocation.START) {
|
|
135
|
+
this._mergedGroups = [this.strapiGroup, ...this.menuItemGroups];
|
|
136
|
+
}
|
|
137
|
+
else if (this.strapiDataLocation === StrapiDataLocation.END) {
|
|
138
|
+
this._mergedGroups = [...this.menuItemGroups, this.strapiGroup];
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
else {
|
|
142
|
+
this._mergedGroups = [...this.menuItemGroups];
|
|
143
|
+
}
|
|
144
|
+
this.changeActiveElement();
|
|
145
|
+
}
|
|
137
146
|
}
|
|
138
147
|
MenuColumnsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: MenuColumnsComponent, deps: [{ token: i1.StarpiMenuService }, { token: i2.Router }, { token: MENU_SHARED_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
139
148
|
MenuColumnsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: MenuColumnsComponent, selector: "menu-columns", inputs: { direction: "direction", hideSelectedCustomId: "hideSelectedCustomId", strapiGroupBase: "strapiGroupBase", strapiDataLocation: "strapiDataLocation", labelsVisible: "labelsVisible", showChildren: "showChildren", menuItemGroups: "menuItemGroups" }, ngImport: i0, template: "<ng-container *ngFor=\"let group of mergedGroups\">\r\n <menu-item-list *ngIf=\"group.items.length\" [activeItem]=\"activeItem\" [direction]=\"direction\" (toggleExpand)=\"elementExpanded($event)\"\r\n [labelsVisible]=\"labelsVisible\" [menuItemGroup]=\"group\" [items]=\"group.items\" [showChildren]=\"showChildren\">\r\n </menu-item-list>\r\n <div class=\"divider\" *ngIf=\"group.bottomDivider\">\r\n <mat-divider></mat-divider>\r\n </div>\r\n</ng-container>\r\n", styles: [":host{display:inline-block}:host menu-item-list{display:block}\n"], components: [{ type: i3.MenuItemListComponent, selector: "menu-item-list", inputs: ["direction", "labelsVisible", "activeItem", "showIcons", "showChildren", "items", "menuItemGroup"], outputs: ["toggleExpand"] }, { type: i4.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
@@ -160,4 +169,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
|
|
|
160
169
|
}], menuItemGroups: [{
|
|
161
170
|
type: Input
|
|
162
171
|
}] } });
|
|
163
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1jb2x1bW5zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tZW51L3NyYy9saWIvY29tcG9uZW50cy9tZW51LWNvbHVtbnMvbWVudS1jb2x1bW5zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tZW51L3NyYy9saWIvY29tcG9uZW50cy9tZW51LWNvbHVtbnMvbWVudS1jb2x1bW5zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBd0IsYUFBYSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFDOUUsT0FBTyxFQUFFLE1BQU0sRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDNUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFJNUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7Ozs7Ozs7QUFPbEYsTUFBTSxPQUFPLG9CQUFvQjtJQTRDL0IsWUFBK0IsYUFBZ0MsRUFDMUMsTUFBYyxFQUMwQixnQkFBa0M7UUFGaEUsa0JBQWEsR0FBYixhQUFhLENBQW1CO1FBQzFDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDMEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTVDdEYsY0FBUyxHQUF3QixtQkFBbUIsQ0FBQyxNQUFNLENBQUM7UUFDNUQseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBQzdCLG9CQUFlLEdBQXNCLEVBQUUsQ0FBQztRQUN4Qyx1QkFBa0IsR0FBdUIsa0JBQWtCLENBQUMsR0FBRyxDQUFDO1FBQ2hFLGtCQUFhLEdBQUcsSUFB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SUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUM7UUFFbkwsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLHVCQUF1QixDQUFDLENBQUM7SUFDckUsQ0FBQzs7aUhBdkpVLG9CQUFvQix5RUE4Q1Qsa0JBQWtCO3FHQTlDN0Isb0JBQW9CLG9UQ2hCakMsNGVBUUE7MkZEUWEsb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGNBQWM7OzBCQWtEckIsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxrQkFBa0I7NENBNUMvQixTQUFTO3NCQUFqQixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBYU8sY0FBYztzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IElzQWN0aXZlTWF0Y2hPcHRpb25zLCBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBNRU5VX1NIQVJFRF9DT05GSUcgfSBmcm9tICcuLi8uLi9pbmplY3Rpb24tdG9rZW5zJztcclxuaW1wb3J0IHsgQ3VzdG9tTWVudUl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvY3VzdG9tLW1lbnUtaXRlbSc7XHJcbmltcG9ydCB7IE1lbnVJdGVtR3JvdXAsIE1lbnVJdGVtR3JvdXBCYXNlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL21lbnUtaXRlbS1ncm91cC5tb2RlbCc7XHJcbmltcG9ydCB7IE1lbnVTaGFyZWRDb25maWcgfSBmcm9tICcuLi8uLi9tb2RlbHMvbWVudS1zaGFyZWQtY29uZmlnLm1vZGVsJztcclxuaW1wb3J0IHsgTWVudUxheW91dERpcmVjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy9tZW51LWxheW91dC1kaXJlY3Rpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBTdGFycGlNZW51U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3N0cmFwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3RyYXBpRGF0YUxvY2F0aW9uIH0gZnJvbSAnLi4vbmF2LWJhc2UvbW9kZWxzL3N0cmFwaS1kYXRhLWxvY2F0aW9uLmVudW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtZW51LWNvbHVtbnMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LWNvbHVtbnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21lbnUtY29sdW1ucy5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNZW51Q29sdW1uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgQElucHV0KCkgZGlyZWN0aW9uOiBNZW51TGF5b3V0RGlyZWN0aW9uID0gTWVudUxheW91dERpcmVjdGlvbi5jb2x1bW47XHJcbiAgQElucHV0KCkgaGlkZVNlbGVjdGVkQ3VzdG9tSWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzdHJhcGlHcm91cEJhc2U6IE1lbnVJdGVtR3JvdXBCYXNlID0ge307XHJcbiAgQElucHV0KCkgc3RyYXBpRGF0YUxvY2F0aW9uOiBTdHJhcGlEYXRhTG9jYXRpb24gPSBTdHJhcGlEYXRhTG9jYXRpb24uRU5EO1xyXG4gIEBJbnB1dCgpIGxhYmVsc1Zpc2libGUgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNob3dDaGlsZHJlbiE6IGJvb2xlYW47XHJcblxyXG4gIGFjdGl2ZUl0ZW0hOiBDdXN0b21NZW51SXRlbSB8IG51bGw7XHJcblxyXG4gIGdldCBjdXN0b21JZCgpIHtcclxuICAgIHJldHVybiB0aGlzLm1lbnVTaGFyZWRDb25maWc/LmN1c3RvbUlkO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc3RyYXBpR3JvdXAhOiBNZW51SXRlbUdyb3VwO1xyXG4gIGdldCBzdHJhcGlHcm91cCgpIHsgcmV0dXJuIHRoaXMuX3N0cmFwaUdyb3VwOyB9XHJcblxyXG4gIHByaXZhdGUgX21lbnVJdGVtR3JvdXBzOiBNZW51SXRlbUdyb3VwW10gPSBbXTtcclxuICBnZXQgbWVudUl0ZW1Hcm91cHMoKSB7IHJldHVybiB0aGlzLl9tZW51SXRlbUdyb3VwczsgfVxyXG4gIEBJbnB1dCgpIHNldCBtZW51SXRlbUdyb3Vwcyhncm91cHM6IE1lbnVJdGVtR3JvdXBbXSkge1xyXG4gICAgdGhpcy5fbWVudUl0ZW1Hcm91cHMgPSBncm91cHMgPz8gW107XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN1YnNjcmliZWRUb1N0cmFwaSA9IGZhbHNlO1xyXG4gIHByaXZhdGUgc3RyYXBpSXRlbXM6IEN1c3RvbU1lbnVJdGVtW10gPSBbXTtcclxuICBwcml2YXRlIF9tZXJnZWRHcm91cHM6IE1lbnVJdGVtR3JvdXBbXSA9IFtdO1xyXG4gIGdldCBtZXJnZWRHcm91cHMoKSB7IHJldHVybiB0aGlzLl9tZXJnZWRHcm91cHM7IH1cclxuXHJcbiAgZ2V0IGFsbFJvb3RJdGVtcygpOiBDdXN0b21NZW51SXRlbVtdIHtcclxuICAgIGNvbnN0IGFsbEl0ZW1zID0gdGhpcy5tZXJnZWRHcm91cHMubWFwKG1hcCA9PiBtYXAuaXRlbXMpO1xyXG4gICAgbGV0IG5ld0FycmF5OiBDdXN0b21NZW51SXRlbVtdID0gW107XHJcbiAgICBhbGxJdGVtcy5mb3JFYWNoKChhcnJheSkgPT4geyBuZXdBcnJheSA9IG5ld0FycmF5LmNvbmNhdChhcnJheSkgfSk7XHJcbiAgICByZXR1cm4gbmV3QXJyYXk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcbiAgcHJpdmF0ZSByZWFkb25seSBpc0FjdGl2ZU1hdGNoT3B0aW9uczogSXNBY3RpdmVNYXRjaE9wdGlvbnMgPSB7XHJcbiAgICBtYXRyaXhQYXJhbXM6ICdleGFjdCcsXHJcbiAgICBxdWVyeVBhcmFtczogJ2V4YWN0JyxcclxuICAgIHBhdGhzOiAnZXhhY3QnLFxyXG4gICAgZnJhZ21lbnQ6ICdleGFjdCdcclxuICB9O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcmVhZG9ubHkgc3RyYXBpU2VydmljZTogU3RhcnBpTWVudVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE1FTlVfU0hBUkVEX0NPTkZJRykgcHJvdGVjdGVkIHJlYWRvbmx5IG1lbnVTaGFyZWRDb25maWc6IE1lbnVTaGFyZWRDb25maWcpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpYmVPblJvdXRlQ2hhbmdlKCk7XHJcbiAgICB0aGlzLmdldFN0cmFwaURhdGEoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goc3ViID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcclxuXHJcbiAgICBpZiAodGhpcy5zdWJzY3JpYmVkVG9TdHJhcGkpIHtcclxuICAgICAgdGhpcy5zdHJhcGlTZXJ2aWNlLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBlbGVtZW50RXhwYW5kZWQoZWxlbWVudDogQ3VzdG9tTWVudUl0ZW0pIHtcclxuICAgIGlmICghdGhpcy5hY3RpdmVJdGVtKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIC8vIGlmIGFjdGl2ZSBpdGVtIGlzIGV4cGFuZGVkLCBtb3N0IGxpa2VseSBzb21lIG9mIGhpcyBjaGlsZCBzaG91bGQgYmUgYWN0aXZlLCBvciBpZiBpdCBpcyBjb2xsYXBzZWQsIG1vc3QgbGlrZWx5IHBhcmVudCBzaG91bGQgYmUgYWN0aXZlIGlmIG5vIHJvdXRlIGNoYW5nZS5cclxuICAgIGlmIChlbGVtZW50ICE9PSB0aGlzLmFjdGl2ZUl0ZW0gJiYgIWVsZW1lbnQuY2hpbGRyZW4/LmluY2x1ZGVzKHRoaXMuYWN0aXZlSXRlbSkpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jaGFuZ2VBY3RpdmVFbGVtZW50KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFN0cmFwaURhdGEoKSB7XHJcbiAgICBpZiAoIXRoaXMubWVudVNoYXJlZENvbmZpZz8uZGlzYWJsZVN0cmFwaSkge1xyXG4gICAgICB0aGlzLnN1YnNjcmliZWRUb1N0cmFwaSA9IHRydWU7XHJcbiAgICAgIHRoaXMuc3RyYXBpU2VydmljZS5nZXRNZW51SXRlbXMoKS5zdWJzY3JpYmUodGhpcy5sb2FkRGF0YS5iaW5kKHRoaXMpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgbG9hZERhdGEoZGF0YTogQ3VzdG9tTWVudUl0ZW1bXSkge1xyXG4gICAgLy8gaGlkZSBjdXN0b20gaWQgYmFzZWQgb24gaW5wdXQgcGFyYW1cclxuICAgIHRoaXMuc3RyYXBpSXRlbXMgPSAodGhpcy5oaWRlU2VsZWN0ZWRDdXN0b21JZCAmJiB0aGlzLmN1c3RvbUlkKSA/IGRhdGEuZmlsdGVyKGl0ZW0gPT4gaXRlbS5jdXN0b21JZCAhPT0gdGhpcy5jdXN0b21JZCkgOiBkYXRhO1xyXG4gICAgdGhpcy5fc3RyYXBpR3JvdXAgPSB7XHJcbiAgICAgIC4uLnRoaXMuc3RyYXBpR3JvdXBCYXNlLFxyXG4gICAgICBpdGVtczogdGhpcy5zdHJhcGlJdGVtc1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnN0cmFwaURhdGFMb2NhdGlvbiA9PT0gU3RyYXBpRGF0YUxvY2F0aW9uLlNUQVJUKSB7XHJcbiAgICAgIHRoaXMuX21lcmdlZEdyb3VwcyA9IFt0aGlzLnN0cmFwaUdyb3VwLCAuLi50aGlzLm1lbnVJdGVtR3JvdXBzXTtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKHRoaXMuc3RyYXBpRGF0YUxvY2F0aW9uID09PSBTdHJhcGlEYXRhTG9jYXRpb24uRU5EKSB7XHJcbiAgICAgIHRoaXMuX21lcmdlZEdyb3VwcyA9IFsuLi50aGlzLm1lbnVJdGVtR3JvdXBzLCB0aGlzLnN0cmFwaUdyb3VwXTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNoYW5nZUFjdGl2ZUVsZW1lbnQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3Vic2NyaWJlT25Sb3V0ZUNoYW5nZSgpIHtcclxuICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IHRoaXMucm91dGVyLmV2ZW50c1xyXG4gICAgICAucGlwZShmaWx0ZXIoZSA9PiBlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4geyB0aGlzLmNoYW5nZUFjdGl2ZUVsZW1lbnQoKTsgfSk7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChzdWJzY3JpcHRpb24pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjaGFuZ2VBY3RpdmVFbGVtZW50KCkge1xyXG4gICAgdGhpcy5hY3RpdmVJdGVtID0gdGhpcy5maW5kQWN0aXZlRWxlbWVudCh0aGlzLmFsbFJvb3RJdGVtcyk7XHJcbiAgfVxyXG5cclxuXHJcbiAgLyoqIEZpbmRzIGFjdGl2ZSBlbGVtZW50IGZyb20gd2hvbGUgbGlzdC4gUm91dGVyTGluayBoYXMgcHJpb3JpdHkgb3ZlciBjdXN0b20gSWQuICovXHJcbiAgLy8gYXQgdGhpcyB2ZXJzaW9uLCBjaGlsZCBlbGVtZW50cyBzaG91bGQgbm90IGhhdmUgY3VzdG9tSWQsIHNpbmNlIHRoYXQgcHJvcGVydHkgY29tZXMgZnJvbSBzdHJhcGkgYW5kIHN0cmFwaSBwcm92aWRlcyBvbmx5IG9uZSBsZXZlbCBzdHJ1Y3R1cmVcclxuICBwcml2YXRlIGZpbmRBY3RpdmVFbGVtZW50KGxpc3Q/OiAoQ3VzdG9tTWVudUl0ZW0pW10pOiBDdXN0b21NZW51SXRlbSB8IG51bGwge1xyXG4gICAgaWYgKCFsaXN0KSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBjdXN0b21JZEVsZW1lbnQ6IEN1c3RvbU1lbnVJdGVtIHwgbnVsbCA9IG51bGw7XHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgbGlzdCkge1xyXG4gICAgICAvLyBDaGlsZCBlbGVtZW50IGhhcyBwcmlvcml0eSBvdmVyIHBhcmVudCwgc28gbmVlZCB0byBjaGVjayBpZiBhbnkgY2hpbGQgaXMgYWN0aXZlXHJcbiAgICAgIGlmICh0aGlzLmlzRWxlbWVudFJvdXRlckxpbmtBY3RpdmUoaXRlbSkpIHtcclxuICAgICAgICAvLyBJZiBoYXMgY2hpbGRyZW4gYW5kIHRoZXkgYXJlIHZpc2libGUsIHJldHVybiBhY3RpdmUgY2hpbGQgb3IgY3VycmVudCBpdGVtXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2hvd0NoaWxkcmVuICYmIGl0ZW0uZXhwYW5kZWQgPyB0aGlzLmZpbmRBY3RpdmVFbGVtZW50KGl0ZW0uY2hpbGRyZW4pID8/IGl0ZW0gOiBpdGVtO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIGlmIHNlbGVjdGVkIGN1c3RvbSBpZCBlbGVtZW50IGlzIGhpZGRlbiwgbm8gbmVlZCB0byBsb29rIGZvciBpdCBhbmQgc2V0IGl0IHRvIGFjdGl2ZTtcclxuICAgICAgZWxzZSBpZiAoIXRoaXMuaGlkZVNlbGVjdGVkQ3VzdG9tSWQgJiYgdGhpcy5pc0VsZW1lbnRDdXN0b21JZEFjdGl2ZShpdGVtKSkge1xyXG4gICAgICAgIGN1c3RvbUlkRWxlbWVudCA9IGl0ZW07XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAodGhpcy5zaG93Q2hpbGRyZW4gJiYgaXRlbS5jaGlsZHJlbj8ubGVuZ3RoKSB7XHJcbiAgICAgICAgY29uc3QgYWN0aXZlQ2hpbGQgPSB0aGlzLmZpbmRBY3RpdmVFbGVtZW50KGl0ZW0uY2hpbGRyZW4pO1xyXG4gICAgICAgIGlmIChhY3RpdmVDaGlsZCkge1xyXG4gICAgICAgICAgcmV0dXJuIGFjdGl2ZUNoaWxkO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGN1c3RvbUlkRWxlbWVudDtcclxuICB9XHJcblxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgLy8gcHJpdmF0ZSBpc01lbnVJdGVtKGl0ZW06IGFueSk6IGl0ZW0gaXMgTWVudUl0ZW1zIHtcclxuICAvLyAgIHJldHVybiBpdGVtLmN1c3RvbUlkO1xyXG4gIC8vIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0VsZW1lbnRDdXN0b21JZEFjdGl2ZShlbGVtZW50OiBDdXN0b21NZW51SXRlbSkge1xyXG4gICAgcmV0dXJuIHRoaXMuY3VzdG9tSWQgJiYgZWxlbWVudC5jdXN0b21JZCA9PT0gdGhpcy5jdXN0b21JZDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNFbGVtZW50Um91dGVyTGlua0FjdGl2ZShlbGVtZW50OiBDdXN0b21NZW51SXRlbSkge1xyXG4gICAgY29uc3Qgcm91dGVyTGlua0FjdGl2ZU9wdGlvbnM6IElzQWN0aXZlTWF0Y2hPcHRpb25zID0gKGVsZW1lbnQgYXMgQ3VzdG9tTWVudUl0ZW0pLnJvdXRlckxpbmtBY3RpdmVPcHRpb25zID8/IHRoaXMubWVudVNoYXJlZENvbmZpZy5hY3RpdmVNYXRjaE9wdGlvbnMgPz8gdGhpcy5pc0FjdGl2ZU1hdGNoT3B0aW9ucztcclxuXHJcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXIuaXNBY3RpdmUoZWxlbWVudC5saW5rLCByb3V0ZXJMaW5rQWN0aXZlT3B0aW9ucyk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIG1lcmdlZEdyb3Vwc1wiPlxyXG4gICAgPG1lbnUtaXRlbS1saXN0ICpuZ0lmPVwiZ3JvdXAuaXRlbXMubGVuZ3RoXCIgW2FjdGl2ZUl0ZW1dPVwiYWN0aXZlSXRlbVwiIFtkaXJlY3Rpb25dPVwiZGlyZWN0aW9uXCIgKHRvZ2dsZUV4cGFuZCk9XCJlbGVtZW50RXhwYW5kZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgW2xhYmVsc1Zpc2libGVdPVwibGFiZWxzVmlzaWJsZVwiIFttZW51SXRlbUdyb3VwXT1cImdyb3VwXCIgW2l0ZW1zXT1cImdyb3VwLml0ZW1zXCIgW3Nob3dDaGlsZHJlbl09XCJzaG93Q2hpbGRyZW5cIj5cclxuICAgIDwvbWVudS1pdGVtLWxpc3Q+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlclwiICpuZ0lmPVwiZ3JvdXAuYm90dG9tRGl2aWRlclwiPlxyXG4gICAgICAgIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gICAgPC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
|
|
172
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1jb2x1bW5zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tZW51L3NyYy9saWIvY29tcG9uZW50cy9tZW51LWNvbHVtbnMvbWVudS1jb2x1bW5zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tZW51L3NyYy9saWIvY29tcG9uZW50cy9tZW51LWNvbHVtbnMvbWVudS1jb2x1bW5zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBd0IsYUFBYSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFDOUUsT0FBTyxFQUFFLE1BQU0sRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDNUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFJNUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7Ozs7Ozs7QUFPbEYsTUFBTSxPQUFPLG9CQUFvQjtJQTZDL0IsWUFBK0IsYUFBZ0MsRUFDMUMsTUFBYyxFQUMwQixnQkFBa0M7UUFGaEUsa0JBQWEsR0FBYixhQUFhLENBQW1CO1FBQzFDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDMEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTdDdEYsY0FBUyxHQUF3QixtQkFBbUIsQ0FBQyxNQUFNLENBQUM7UUFDNUQseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBQzdCLG9CQUFlLEdBQXNCLEVBQUUsQ0FBQztRQUN4Qyx1QkFBa0IsR0FBdUIsa0JBQWtCLENBQUMsR0FBRyxDQUFDO1FBQ2hFLGtCQUFhLEdBQUcsSUFB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LEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQ2pFO2lCQUNJLElBQUksSUFBSSxDQUFDLGtCQUFrQixLQUFLLGtCQUFrQixDQUFDLEdBQUcsRUFBRTtnQkFDM0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDakU7U0FDRjthQUNJO1lBQ0gsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQy9DO1FBRUQsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQzs7aUhBaktVLG9CQUFvQix5RUErQ1Qsa0JBQWtCO3FHQS9DN0Isb0JBQW9CLG9UQ2hCakMsNGVBUUE7MkZEUWEsb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGNBQWM7OzBCQW1EckIsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxrQkFBa0I7NENBN0MvQixTQUFTO3NCQUFqQixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBYU8sY0FBYztzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IElzQWN0aXZlTWF0Y2hPcHRpb25zLCBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBNRU5VX1NIQVJFRF9DT05GSUcgfSBmcm9tICcuLi8uLi9pbmplY3Rpb24tdG9rZW5zJztcclxuaW1wb3J0IHsgQ3VzdG9tTWVudUl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvY3VzdG9tLW1lbnUtaXRlbSc7XHJcbmltcG9ydCB7IE1lbnVJdGVtR3JvdXAsIE1lbnVJdGVtR3JvdXBCYXNlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL21lbnUtaXRlbS1ncm91cC5tb2RlbCc7XHJcbmltcG9ydCB7IE1lbnVTaGFyZWRDb25maWcgfSBmcm9tICcuLi8uLi9tb2RlbHMvbWVudS1zaGFyZWQtY29uZmlnLm1vZGVsJztcclxuaW1wb3J0IHsgTWVudUxheW91dERpcmVjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy9tZW51LWxheW91dC1kaXJlY3Rpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBTdGFycGlNZW51U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3N0cmFwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3RyYXBpRGF0YUxvY2F0aW9uIH0gZnJvbSAnLi4vbmF2LWJhc2UvbW9kZWxzL3N0cmFwaS1kYXRhLWxvY2F0aW9uLmVudW0nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtZW51LWNvbHVtbnMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LWNvbHVtbnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21lbnUtY29sdW1ucy5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNZW51Q29sdW1uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgQElucHV0KCkgZGlyZWN0aW9uOiBNZW51TGF5b3V0RGlyZWN0aW9uID0gTWVudUxheW91dERpcmVjdGlvbi5jb2x1bW47XHJcbiAgQElucHV0KCkgaGlkZVNlbGVjdGVkQ3VzdG9tSWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzdHJhcGlHcm91cEJhc2U6IE1lbnVJdGVtR3JvdXBCYXNlID0ge307XHJcbiAgQElucHV0KCkgc3RyYXBpRGF0YUxvY2F0aW9uOiBTdHJhcGlEYXRhTG9jYXRpb24gPSBTdHJhcGlEYXRhTG9jYXRpb24uRU5EO1xyXG4gIEBJbnB1dCgpIGxhYmVsc1Zpc2libGUgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNob3dDaGlsZHJlbiE6IGJvb2xlYW47XHJcblxyXG4gIGFjdGl2ZUl0ZW0hOiBDdXN0b21NZW51SXRlbSB8IG51bGw7XHJcblxyXG4gIGdldCBjdXN0b21JZCgpIHtcclxuICAgIHJldHVybiB0aGlzLm1lbnVTaGFyZWRDb25maWc/LmN1c3RvbUlkO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc3RyYXBpR3JvdXAhOiBNZW51SXRlbUdyb3VwO1xyXG4gIGdldCBzdHJhcGlHcm91cCgpIHsgcmV0dXJuIHRoaXMuX3N0cmFwaUdyb3VwOyB9XHJcblxyXG4gIHByaXZhdGUgX21lbnVJdGVtR3JvdXBzOiBNZW51SXRlbUdyb3VwW10gPSBbXTtcclxuICBnZXQgbWVudUl0ZW1Hcm91cHMoKSB7IHJldHVybiB0aGlzLl9tZW51SXRlbUdyb3VwczsgfVxyXG4gIEBJbnB1dCgpIHNldCBtZW51SXRlbUdyb3Vwcyhncm91cHM6IE1lbnVJdGVtR3JvdXBbXSkge1xyXG4gICAgdGhpcy5fbWVudUl0ZW1Hcm91cHMgPSBncm91cHMgPz8gW107XHJcbiAgICB0aGlzLnVwZGF0ZU1lcmdlZCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzdWJzY3JpYmVkVG9TdHJhcGkgPSBmYWxzZTtcclxuICBwcml2YXRlIHN0cmFwaUl0ZW1zOiBDdXN0b21NZW51SXRlbVtdID0gW107XHJcbiAgcHJpdmF0ZSBfbWVyZ2VkR3JvdXBzOiBNZW51SXRlbUdyb3VwW10gPSBbXTtcclxuICBnZXQgbWVyZ2VkR3JvdXBzKCkgeyByZXR1cm4gdGhpcy5fbWVyZ2VkR3JvdXBzOyB9XHJcblxyXG4gIGdldCBhbGxSb290SXRlbXMoKTogQ3VzdG9tTWVudUl0ZW1bXSB7XHJcbiAgICBjb25zdCBhbGxJdGVtcyA9IHRoaXMubWVyZ2VkR3JvdXBzLm1hcChtYXAgPT4gbWFwLml0ZW1zKTtcclxuICAgIGxldCBuZXdBcnJheTogQ3VzdG9tTWVudUl0ZW1bXSA9IFtdO1xyXG4gICAgYWxsSXRlbXMuZm9yRWFjaCgoYXJyYXkpID0+IHsgbmV3QXJyYXkgPSBuZXdBcnJheS5jb25jYXQoYXJyYXkpIH0pO1xyXG4gICAgcmV0dXJuIG5ld0FycmF5O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgaXNBY3RpdmVNYXRjaE9wdGlvbnM6IElzQWN0aXZlTWF0Y2hPcHRpb25zID0ge1xyXG4gICAgbWF0cml4UGFyYW1zOiAnZXhhY3QnLFxyXG4gICAgcXVlcnlQYXJhbXM6ICdleGFjdCcsXHJcbiAgICBwYXRoczogJ2V4YWN0JyxcclxuICAgIGZyYWdtZW50OiAnZXhhY3QnXHJcbiAgfTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIHJlYWRvbmx5IHN0cmFwaVNlcnZpY2U6IFN0YXJwaU1lbnVTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxyXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChNRU5VX1NIQVJFRF9DT05GSUcpIHByb3RlY3RlZCByZWFkb25seSBtZW51U2hhcmVkQ29uZmlnOiBNZW51U2hhcmVkQ29uZmlnKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaWJlT25Sb3V0ZUNoYW5nZSgpO1xyXG4gICAgdGhpcy5nZXRTdHJhcGlEYXRhKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKHN1YiA9PiBzdWIudW5zdWJzY3JpYmUoKSk7XHJcblxyXG4gICAgaWYgKHRoaXMuc3Vic2NyaWJlZFRvU3RyYXBpKSB7XHJcbiAgICAgIHRoaXMuc3RyYXBpU2VydmljZS51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZWxlbWVudEV4cGFuZGVkKGVsZW1lbnQ6IEN1c3RvbU1lbnVJdGVtKSB7XHJcbiAgICBpZiAoIXRoaXMuYWN0aXZlSXRlbSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICAvLyBpZiBhY3RpdmUgaXRlbSBpcyBleHBhbmRlZCwgbW9zdCBsaWtlbHkgc29tZSBvZiBoaXMgY2hpbGQgc2hvdWxkIGJlIGFjdGl2ZSwgb3IgaWYgaXQgaXMgY29sbGFwc2VkLCBtb3N0IGxpa2VseSBwYXJlbnQgc2hvdWxkIGJlIGFjdGl2ZSBpZiBubyByb3V0ZSBjaGFuZ2UuXHJcbiAgICBpZiAoZWxlbWVudCAhPT0gdGhpcy5hY3RpdmVJdGVtICYmICFlbGVtZW50LmNoaWxkcmVuPy5pbmNsdWRlcyh0aGlzLmFjdGl2ZUl0ZW0pKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuY2hhbmdlQWN0aXZlRWxlbWVudCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRTdHJhcGlEYXRhKCkge1xyXG4gICAgaWYgKCF0aGlzLm1lbnVTaGFyZWRDb25maWc/LmRpc2FibGVTdHJhcGkpIHtcclxuICAgICAgdGhpcy5zdWJzY3JpYmVkVG9TdHJhcGkgPSB0cnVlO1xyXG4gICAgICB0aGlzLnN0cmFwaVNlcnZpY2UuZ2V0TWVudUl0ZW1zKCkuc3Vic2NyaWJlKHRoaXMubG9hZERhdGEuYmluZCh0aGlzKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGxvYWREYXRhKGRhdGE6IEN1c3RvbU1lbnVJdGVtW10pIHtcclxuICAgIC8vIGhpZGUgY3VzdG9tIGlkIGJhc2VkIG9uIGlucHV0IHBhcmFtXHJcbiAgICB0aGlzLnN0cmFwaUl0ZW1zID0gKHRoaXMuaGlkZVNlbGVjdGVkQ3VzdG9tSWQgJiYgdGhpcy5jdXN0b21JZCkgPyBkYXRhLmZpbHRlcihpdGVtID0+IGl0ZW0uY3VzdG9tSWQgIT09IHRoaXMuY3VzdG9tSWQpIDogZGF0YTtcclxuICAgIHRoaXMuX3N0cmFwaUdyb3VwID0ge1xyXG4gICAgICAuLi50aGlzLnN0cmFwaUdyb3VwQmFzZSxcclxuICAgICAgaXRlbXM6IHRoaXMuc3RyYXBpSXRlbXNcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnVwZGF0ZU1lcmdlZCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzdWJzY3JpYmVPblJvdXRlQ2hhbmdlKCkge1xyXG4gICAgY29uc3Qgc3Vic2NyaXB0aW9uID0gdGhpcy5yb3V0ZXIuZXZlbnRzXHJcbiAgICAgIC5waXBlKGZpbHRlcihlID0+IGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7IHRoaXMuY2hhbmdlQWN0aXZlRWxlbWVudCgpOyB9KTtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHN1YnNjcmlwdGlvbik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNoYW5nZUFjdGl2ZUVsZW1lbnQoKSB7XHJcbiAgICB0aGlzLmFjdGl2ZUl0ZW0gPSB0aGlzLmZpbmRBY3RpdmVFbGVtZW50KHRoaXMuYWxsUm9vdEl0ZW1zKTtcclxuICB9XHJcblxyXG5cclxuICAvKiogRmluZHMgYWN0aXZlIGVsZW1lbnQgZnJvbSB3aG9sZSBsaXN0LiBSb3V0ZXJMaW5rIGhhcyBwcmlvcml0eSBvdmVyIGN1c3RvbSBJZC4gKi9cclxuICAvLyBhdCB0aGlzIHZlcnNpb24sIGNoaWxkIGVsZW1lbnRzIHNob3VsZCBub3QgaGF2ZSBjdXN0b21JZCwgc2luY2UgdGhhdCBwcm9wZXJ0eSBjb21lcyBmcm9tIHN0cmFwaSBhbmQgc3RyYXBpIHByb3ZpZGVzIG9ubHkgb25lIGxldmVsIHN0cnVjdHVyZVxyXG4gIHByaXZhdGUgZmluZEFjdGl2ZUVsZW1lbnQobGlzdD86IChDdXN0b21NZW51SXRlbSlbXSk6IEN1c3RvbU1lbnVJdGVtIHwgbnVsbCB7XHJcbiAgICBpZiAoIWxpc3QpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGN1c3RvbUlkRWxlbWVudDogQ3VzdG9tTWVudUl0ZW0gfCBudWxsID0gbnVsbDtcclxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBsaXN0KSB7XHJcbiAgICAgIC8vIENoaWxkIGVsZW1lbnQgaGFzIHByaW9yaXR5IG92ZXIgcGFyZW50LCBzbyBuZWVkIHRvIGNoZWNrIGlmIGFueSBjaGlsZCBpcyBhY3RpdmVcclxuICAgICAgaWYgKHRoaXMuaXNFbGVtZW50Um91dGVyTGlua0FjdGl2ZShpdGVtKSkge1xyXG4gICAgICAgIC8vIElmIGhhcyBjaGlsZHJlbiBhbmQgdGhleSBhcmUgdmlzaWJsZSwgcmV0dXJuIGFjdGl2ZSBjaGlsZCBvciBjdXJyZW50IGl0ZW1cclxuICAgICAgICByZXR1cm4gdGhpcy5zaG93Q2hpbGRyZW4gJiYgaXRlbS5leHBhbmRlZCA/IHRoaXMuZmluZEFjdGl2ZUVsZW1lbnQoaXRlbS5jaGlsZHJlbikgPz8gaXRlbSA6IGl0ZW07XHJcbiAgICAgIH1cclxuICAgICAgLy8gaWYgc2VsZWN0ZWQgY3VzdG9tIGlkIGVsZW1lbnQgaXMgaGlkZGVuLCBubyBuZWVkIHRvIGxvb2sgZm9yIGl0IGFuZCBzZXQgaXQgdG8gYWN0aXZlO1xyXG4gICAgICBlbHNlIGlmICghdGhpcy5oaWRlU2VsZWN0ZWRDdXN0b21JZCAmJiB0aGlzLmlzRWxlbWVudEN1c3RvbUlkQWN0aXZlKGl0ZW0pKSB7XHJcbiAgICAgICAgY3VzdG9tSWRFbGVtZW50ID0gaXRlbTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIGlmICh0aGlzLnNob3dDaGlsZHJlbiAmJiBpdGVtLmNoaWxkcmVuPy5sZW5ndGgpIHtcclxuICAgICAgICBjb25zdCBhY3RpdmVDaGlsZCA9IHRoaXMuZmluZEFjdGl2ZUVsZW1lbnQoaXRlbS5jaGlsZHJlbik7XHJcbiAgICAgICAgaWYgKGFjdGl2ZUNoaWxkKSB7XHJcbiAgICAgICAgICByZXR1cm4gYWN0aXZlQ2hpbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gY3VzdG9tSWRFbGVtZW50O1xyXG4gIH1cclxuXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICAvLyBwcml2YXRlIGlzTWVudUl0ZW0oaXRlbTogYW55KTogaXRlbSBpcyBNZW51SXRlbXMge1xyXG4gIC8vICAgcmV0dXJuIGl0ZW0uY3VzdG9tSWQ7XHJcbiAgLy8gfVxyXG5cclxuICBwcml2YXRlIGlzRWxlbWVudEN1c3RvbUlkQWN0aXZlKGVsZW1lbnQ6IEN1c3RvbU1lbnVJdGVtKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jdXN0b21JZCAmJiBlbGVtZW50LmN1c3RvbUlkID09PSB0aGlzLmN1c3RvbUlkO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0VsZW1lbnRSb3V0ZXJMaW5rQWN0aXZlKGVsZW1lbnQ6IEN1c3RvbU1lbnVJdGVtKSB7XHJcbiAgICBjb25zdCByb3V0ZXJMaW5rQWN0aXZlT3B0aW9uczogSXNBY3RpdmVNYXRjaE9wdGlvbnMgPSAoZWxlbWVudCBhcyBDdXN0b21NZW51SXRlbSkucm91dGVyTGlua0FjdGl2ZU9wdGlvbnMgPz8gdGhpcy5tZW51U2hhcmVkQ29uZmlnLmFjdGl2ZU1hdGNoT3B0aW9ucyA/PyB0aGlzLmlzQWN0aXZlTWF0Y2hPcHRpb25zO1xyXG5cclxuICAgIHJldHVybiB0aGlzLnJvdXRlci5pc0FjdGl2ZShlbGVtZW50LmxpbmssIHJvdXRlckxpbmtBY3RpdmVPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlTWVyZ2VkKCkge1xyXG4gICAgaWYgKHRoaXMuc3RyYXBpR3JvdXA/Lml0ZW1zPy5sZW5ndGgpIHtcclxuICAgICAgaWYgKHRoaXMuc3RyYXBpRGF0YUxvY2F0aW9uID09PSBTdHJhcGlEYXRhTG9jYXRpb24uU1RBUlQpIHtcclxuICAgICAgICB0aGlzLl9tZXJnZWRHcm91cHMgPSBbdGhpcy5zdHJhcGlHcm91cCwgLi4udGhpcy5tZW51SXRlbUdyb3Vwc107XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAodGhpcy5zdHJhcGlEYXRhTG9jYXRpb24gPT09IFN0cmFwaURhdGFMb2NhdGlvbi5FTkQpIHtcclxuICAgICAgICB0aGlzLl9tZXJnZWRHcm91cHMgPSBbLi4udGhpcy5tZW51SXRlbUdyb3VwcywgdGhpcy5zdHJhcGlHcm91cF07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLl9tZXJnZWRHcm91cHMgPSBbLi4udGhpcy5tZW51SXRlbUdyb3Vwc107XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5jaGFuZ2VBY3RpdmVFbGVtZW50KCk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIG1lcmdlZEdyb3Vwc1wiPlxyXG4gICAgPG1lbnUtaXRlbS1saXN0ICpuZ0lmPVwiZ3JvdXAuaXRlbXMubGVuZ3RoXCIgW2FjdGl2ZUl0ZW1dPVwiYWN0aXZlSXRlbVwiIFtkaXJlY3Rpb25dPVwiZGlyZWN0aW9uXCIgKHRvZ2dsZUV4cGFuZCk9XCJlbGVtZW50RXhwYW5kZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgW2xhYmVsc1Zpc2libGVdPVwibGFiZWxzVmlzaWJsZVwiIFttZW51SXRlbUdyb3VwXT1cImdyb3VwXCIgW2l0ZW1zXT1cImdyb3VwLml0ZW1zXCIgW3Nob3dDaGlsZHJlbl09XCJzaG93Q2hpbGRyZW5cIj5cclxuICAgIDwvbWVudS1pdGVtLWxpc3Q+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlclwiICpuZ0lmPVwiZ3JvdXAuYm90dG9tRGl2aWRlclwiPlxyXG4gICAgICAgIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gICAgPC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
|
|
@@ -37,10 +37,10 @@ export class MenuItemListComponent {
|
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
MenuItemListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: MenuItemListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
40
|
-
MenuItemListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: MenuItemListComponent, selector: "menu-item-list", inputs: { direction: "direction", labelsVisible: "labelsVisible", activeItem: "activeItem", showIcons: "showIcons", showChildren: "showChildren", items: "items", menuItemGroup: "menuItemGroup" }, outputs: { toggleExpand: "toggleExpand" }, ngImport: i0, 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=\"!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 [fxLayout]=\"menuItemLayout\" [class.text-center]=\"menuItemLayout === 'column'\" class=\"text-m menu-item\"\r\n [matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\" matTooltipPosition=\"after\"\r\n [fxLayoutAlign]=\"menuLayoutDirection\" matTooltipClass=\"menu-tooltip\" fxLayoutGap=\"0.375rem\"\r\n [class.active-menu-item]=\"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 <span *ngIf=\"labelsVisible\" class=\"menu-item-title\">\r\n <span class=\"title-content\">{{ menuItem.title | translate }}</span></span>\r\n <span class=\"material-icons\" *ngIf=\"showChildren && menuItem.children\">\r\n {{menuItem.expanded? 'expand_more' : 'navigate_next'}}\r\n </span>\r\n </button>\r\n <ng-container *ngIf=\"showChildren && menuItem.expanded\">\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\" [showIcons]=\"false\">\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 [menuItem]=\"menuItem\" [direction]=\"direction\" [labelsVisible]=\"labelsVisible\"\r\n [activeItem]=\"activeItem\" [showIcons]=\"showIcons\"></tld-menu-item-link>\r\n</ng-template
|
|
40
|
+
MenuItemListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: MenuItemListComponent, selector: "menu-item-list", inputs: { direction: "direction", labelsVisible: "labelsVisible", activeItem: "activeItem", showIcons: "showIcons", showChildren: "showChildren", items: "items", menuItemGroup: "menuItemGroup" }, outputs: { toggleExpand: "toggleExpand" }, ngImport: i0, 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=\"!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 [fxLayout]=\"menuItemLayout\" [class.text-center]=\"menuItemLayout === 'column'\" class=\"text-m menu-item\"\r\n [matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\" matTooltipPosition=\"after\"\r\n [fxLayoutAlign]=\"menuLayoutDirection\" matTooltipClass=\"menu-tooltip\" fxLayoutGap=\"0.375rem\"\r\n [class.active-menu-item]=\"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 <span *ngIf=\"labelsVisible\" class=\"menu-item-title\">\r\n <span class=\"title-content\">{{ menuItem.title | translate }}</span></span>\r\n <span class=\"material-icons\" *ngIf=\"showChildren && menuItem.children\">\r\n {{menuItem.expanded? 'expand_more' : 'navigate_next'}}\r\n </span>\r\n </button>\r\n <ng-container *ngIf=\"showChildren && menuItem.expanded\">\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\" [showIcons]=\"false\">\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 [menuItem]=\"menuItem\" [direction]=\"direction\" [labelsVisible]=\"labelsVisible\"\r\n [activeItem]=\"activeItem\" [showIcons]=\"showIcons\"></tld-menu-item-link>\r\n</ng-template>", styles: [":host{margin:1em 0;display:inline-block}:host::ng-deep .menu-list-wrapper .menu-item-list-title{margin-bottom:1em;font-size:1rem;font-weight:500;line-height:1.5rem}:host::ng-deep .menu-list-wrapper .text-center{text-align:center}:host::ng-deep .menu-list-wrapper tld-menu-item-link+tld-menu-item-link{margin-top:1.5625em}: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:focus-visible{outline:black solid 2px}:host::ng-deep .menu-list-wrapper .menu-item:hover{font-weight:600}: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{color:var(--primary-accent)!important}: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;flex-grow:100;align-items:start}: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-top:1rem;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}menu-item-list{padding-left:3rem;margin:0}\n"], components: [{ type: i1.MenuIconComponent, selector: "tld-menu-icon", inputs: ["menuItem"] }, { type: MenuItemListComponent, selector: "menu-item-list", inputs: ["direction", "labelsVisible", "activeItem", "showIcons", "showChildren", "items", "menuItemGroup"], outputs: ["toggleExpand"] }, { type: i2.MenuItemLinkComponent, selector: "tld-menu-item-link", inputs: ["direction", "labelsVisible", "activeItem", "showIcons", "menuItem"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { type: i5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }], pipes: { "translate": i6.TranslatePipe } });
|
|
41
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: MenuItemListComponent, decorators: [{
|
|
42
42
|
type: Component,
|
|
43
|
-
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=\"!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 [fxLayout]=\"menuItemLayout\" [class.text-center]=\"menuItemLayout === 'column'\" class=\"text-m menu-item\"\r\n [matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\" matTooltipPosition=\"after\"\r\n [fxLayoutAlign]=\"menuLayoutDirection\" matTooltipClass=\"menu-tooltip\" fxLayoutGap=\"0.375rem\"\r\n [class.active-menu-item]=\"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 <span *ngIf=\"labelsVisible\" class=\"menu-item-title\">\r\n <span class=\"title-content\">{{ menuItem.title | translate }}</span></span>\r\n <span class=\"material-icons\" *ngIf=\"showChildren && menuItem.children\">\r\n {{menuItem.expanded? 'expand_more' : 'navigate_next'}}\r\n </span>\r\n </button>\r\n <ng-container *ngIf=\"showChildren && menuItem.expanded\">\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\" [showIcons]=\"false\">\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 [menuItem]=\"menuItem\" [direction]=\"direction\" [labelsVisible]=\"labelsVisible\"\r\n [activeItem]=\"activeItem\" [showIcons]=\"showIcons\"></tld-menu-item-link>\r\n</ng-template
|
|
43
|
+
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=\"!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 [fxLayout]=\"menuItemLayout\" [class.text-center]=\"menuItemLayout === 'column'\" class=\"text-m menu-item\"\r\n [matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\" matTooltipPosition=\"after\"\r\n [fxLayoutAlign]=\"menuLayoutDirection\" matTooltipClass=\"menu-tooltip\" fxLayoutGap=\"0.375rem\"\r\n [class.active-menu-item]=\"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 <span *ngIf=\"labelsVisible\" class=\"menu-item-title\">\r\n <span class=\"title-content\">{{ menuItem.title | translate }}</span></span>\r\n <span class=\"material-icons\" *ngIf=\"showChildren && menuItem.children\">\r\n {{menuItem.expanded? 'expand_more' : 'navigate_next'}}\r\n </span>\r\n </button>\r\n <ng-container *ngIf=\"showChildren && menuItem.expanded\">\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\" [showIcons]=\"false\">\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 [menuItem]=\"menuItem\" [direction]=\"direction\" [labelsVisible]=\"labelsVisible\"\r\n [activeItem]=\"activeItem\" [showIcons]=\"showIcons\"></tld-menu-item-link>\r\n</ng-template>", styles: [":host{margin:1em 0;display:inline-block}:host::ng-deep .menu-list-wrapper .menu-item-list-title{margin-bottom:1em;font-size:1rem;font-weight:500;line-height:1.5rem}:host::ng-deep .menu-list-wrapper .text-center{text-align:center}:host::ng-deep .menu-list-wrapper tld-menu-item-link+tld-menu-item-link{margin-top:1.5625em}: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:focus-visible{outline:black solid 2px}:host::ng-deep .menu-list-wrapper .menu-item:hover{font-weight:600}: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{color:var(--primary-accent)!important}: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;flex-grow:100;align-items:start}: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-top:1rem;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}menu-item-list{padding-left:3rem;margin:0}\n"] }]
|
|
44
44
|
}], propDecorators: { direction: [{
|
|
45
45
|
type: Input
|
|
46
46
|
}], labelsVisible: [{
|
|
@@ -58,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
|
|
|
58
58
|
}], toggleExpand: [{
|
|
59
59
|
type: Output
|
|
60
60
|
}] } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1pdGVtLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW1lbnUvc3JjL2xpYi9jb21wb25lbnRzL21lbnUtaXRlbS1saXN0L21lbnUtaXRlbS1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tZW51L3NyYy9saWIvY29tcG9uZW50cy9tZW51LWl0ZW0tbGlzdC9tZW51LWl0ZW0tbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3ZFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7Ozs7OztBQU8vRSxNQUFNLE9BQU8scUJBQXFCO0lBTGxDO1FBTVcsY0FBUyxHQUF3QixtQkFBbUIsQ0FBQyxNQUFNLENBQUM7UUFDNUQsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFFckIsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUVwQixVQUFLLEdBQXFCLEVBQUUsQ0FBQztRQUc1QixpQkFBWSxHQUFpQyxJQUFJLFlBQVksRUFBa0IsQ0FBQztLQTBCM0Y7SUF4QkMsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsYUFBYSxFQUFFLFNBQVMsQ0FBQztJQUN2QyxDQUFDO0lBR0QsSUFBSSxtQkFBbUI7UUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEtBQUssbUJBQW1CLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUMzRSxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7SUFDckMsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxTQUFTLEtBQUssbUJBQW1CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUMxRSxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBaUIsRUFBRSxRQUF3QjtRQUMxRCw2QkFBNkI7UUFDN0IsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLFFBQVEsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ25DLENBQUM7O2tIQW5DVSxxQkFBcUI7c0dBQXJCLHFCQUFxQixxU0NWbEMsb3NFQXFDYyxna0VEM0JELHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGdCQUFnQjs4QkFLakIsU0FBUztzQkFBakIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDdXN0b21NZW51SXRlbSB9IGZyb20gJy4uLy4uL21vZGVscy9jdXN0b20tbWVudS1pdGVtJztcclxuaW1wb3J0IHsgTWVudUl0ZW1Hcm91cEJhc2UgfSBmcm9tICcuLi8uLi9tb2RlbHMvbWVudS1pdGVtLWdyb3VwLm1vZGVsJztcclxuaW1wb3J0IHsgTWVudUxheW91dERpcmVjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy9tZW51LWxheW91dC1kaXJlY3Rpb24ubW9kZWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtZW51LWl0ZW0tbGlzdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21lbnUtaXRlbS1saXN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9tZW51LWl0ZW0tbGlzdC5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNZW51SXRlbUxpc3RDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIGRpcmVjdGlvbjogTWVudUxheW91dERpcmVjdGlvbiA9IE1lbnVMYXlvdXREaXJlY3Rpb24uY29sdW1uO1xyXG4gIEBJbnB1dCgpIGxhYmVsc1Zpc2libGUgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGFjdGl2ZUl0ZW0hOiBDdXN0b21NZW51SXRlbSB8IG51bGw7XHJcbiAgQElucHV0KCkgc2hvd0ljb25zID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzaG93Q2hpbGRyZW4gPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKSBpdGVtczogQ3VzdG9tTWVudUl0ZW1bXSA9IFtdO1xyXG4gIEBJbnB1dCgpIG1lbnVJdGVtR3JvdXAhOiBNZW51SXRlbUdyb3VwQmFzZTtcclxuXHJcbiAgQE91dHB1dCgpIHRvZ2dsZUV4cGFuZDogRXZlbnRFbWl0dGVyPEN1c3RvbU1lbnVJdGVtPiA9IG5ldyBFdmVudEVtaXR0ZXI8Q3VzdG9tTWVudUl0ZW0+KCk7XHJcblxyXG4gIGdldCB0aXRsZUtleSgpIHtcclxuICAgIHJldHVybiB0aGlzLm1lbnVJdGVtR3JvdXA/LnRpdGxlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHNob3dUaXRsZSgpIHtcclxuICAgIHJldHVybiB0aGlzLm1lbnVJdGVtR3JvdXA/LnNob3dUaXRsZTtcclxuICB9XHJcblxyXG5cclxuICBnZXQgbWVudUxheW91dERpcmVjdGlvbigpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuICh0aGlzLmRpcmVjdGlvbiA9PT0gTWVudUxheW91dERpcmVjdGlvbi5jb2x1bW4gfHwgIXRoaXMubGFiZWxzVmlzaWJsZSlcclxuICAgICAgPyAnc3RhcnQgY2VudGVyJyA6ICdzdGFydCBzdGFydCc7XHJcbiAgfVxyXG5cclxuICBnZXQgbWVudUl0ZW1MYXlvdXQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmRpcmVjdGlvbiA9PT0gTWVudUxheW91dERpcmVjdGlvbi5jb2x1bW4gPyAnY29sdW1uJyA6ICdyb3cnO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlSXRlbUV4cGFuZChldmVudDogTW91c2VFdmVudCwgbWVudUl0ZW06IEN1c3RvbU1lbnVJdGVtKSB7XHJcbiAgICAvLyBzbyBtZW51IGRvZXNudCBnZXQgY2xvc2VkLlxyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICBtZW51SXRlbS5leHBhbmRlZCA9ICFtZW51SXRlbS5leHBhbmRlZDtcclxuICAgIHRoaXMudG9nZ2xlRXhwYW5kLm5leHQobWVudUl0ZW0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibWVudS1saXN0LXdyYXBwZXJcIj5cclxuICA8ZGl2ICpuZ0lmPVwidGl0bGVLZXkgJiYgc2hvd1RpdGxlICYmIGxhYmVsc1Zpc2libGVcIiBmeExheW91dEFsaWduPVwic3RhcnQgY2VudGVyXCIgY2xhc3M9XCJtZW51LWl0ZW0tbGlzdC10aXRsZVwiPlxyXG4gICAge3sgdGl0bGVLZXkgfCB0cmFuc2xhdGUgfX1cclxuICA8L2Rpdj5cclxuICA8ZGl2IGZ4TGF5b3V0PVwiY29sdW1uXCIgW2Z4TGF5b3V0QWxpZ25dPVwibWVudUxheW91dERpcmVjdGlvblwiIGNsYXNzPVwibWVudS1pdGVtLWxpc3RcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG1lbnVJdGVtIG9mIGl0ZW1zXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIiFzaG93Q2hpbGRyZW4gfHwgIW1lbnVJdGVtLmNoaWxkcmVuIHx8IG1lbnVJdGVtPy5jaGlsZHJlbj8ubGVuZ3RoID09PSAwID8gbWVudUl0ZW1MaW5rIDogaXRlbVdpdGhDaGlsZHJlbjsgY29udGV4dDoge21lbnVJdGVtOiBtZW51SXRlbX1cIj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48bmctdGVtcGxhdGUgI2l0ZW1XaXRoQ2hpbGRyZW4gbGV0LW1lbnVJdGVtPVwibWVudUl0ZW1cIj5cclxuICA8YnV0dG9uIFtmeExheW91dF09XCJtZW51SXRlbUxheW91dFwiIFtjbGFzcy50ZXh0LWNlbnRlcl09XCJtZW51SXRlbUxheW91dCA9PT0gJ2NvbHVtbidcIiBjbGFzcz1cInRleHQtbSBtZW51LWl0ZW1cIlxyXG4gICAgW21hdFRvb2x0aXBdPVwiIWxhYmVsc1Zpc2libGUgPyAobWVudUl0ZW0udGl0bGUgfCB0cmFuc2xhdGUpIDogJydcIiBtYXRUb29sdGlwUG9zaXRpb249XCJhZnRlclwiXHJcbiAgICBbZnhMYXlvdXRBbGlnbl09XCJtZW51TGF5b3V0RGlyZWN0aW9uXCIgbWF0VG9vbHRpcENsYXNzPVwibWVudS10b29sdGlwXCIgZnhMYXlvdXRHYXA9XCIwLjM3NXJlbVwiXHJcbiAgICBbY2xhc3MuYWN0aXZlLW1lbnUtaXRlbV09XCJtZW51SXRlbSA9PT0gYWN0aXZlSXRlbVwiIChjbGljayk9XCJ0b2dnbGVJdGVtRXhwYW5kKCRldmVudCxtZW51SXRlbSlcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaG93SWNvbnMgJiYgbWVudUl0ZW0uaWNvblwiPlxyXG4gICAgICA8dGxkLW1lbnUtaWNvbiBbbWVudUl0ZW1dPVwibWVudUl0ZW1cIj48L3RsZC1tZW51LWljb24+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxzcGFuICpuZ0lmPVwibGFiZWxzVmlzaWJsZVwiIGNsYXNzPVwibWVudS1pdGVtLXRpdGxlXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGUtY29udGVudFwiPnt7IG1lbnVJdGVtLnRpdGxlIHwgdHJhbnNsYXRlIH19PC9zcGFuPjwvc3Bhbj5cclxuICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnNcIiAqbmdJZj1cInNob3dDaGlsZHJlbiAmJiBtZW51SXRlbS5jaGlsZHJlblwiPlxyXG4gICAgICB7e21lbnVJdGVtLmV4cGFuZGVkPyAnZXhwYW5kX21vcmUnIDogJ25hdmlnYXRlX25leHQnfX1cclxuICAgIDwvc3Bhbj5cclxuICA8L2J1dHRvbj5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0NoaWxkcmVuICYmIG1lbnVJdGVtLmV4cGFuZGVkXCI+XHJcbiAgICA8bWVudS1pdGVtLWxpc3QgY2xhc3M9XCJjaGlsZC1saXN0XCIgKm5nSWY9XCJtZW51SXRlbS5jaGlsZHJlbiAmJiBtZW51SXRlbS5jaGlsZHJlbi5sZW5ndGhcIiBbaXRlbXNdPVwibWVudUl0ZW0uY2hpbGRyZW5cIlxyXG4gICAgICBbZGlyZWN0aW9uXT1cImRpcmVjdGlvblwiIFtsYWJlbHNWaXNpYmxlXT1cImxhYmVsc1Zpc2libGVcIiBbYWN0aXZlSXRlbV09XCJhY3RpdmVJdGVtXCIgW3Nob3dJY29uc109XCJmYWxzZVwiPlxyXG4gICAgPC9tZW51LWl0ZW0tbGlzdD5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjbWVudUl0ZW1MaW5rIGxldC1tZW51SXRlbT1cIm1lbnVJdGVtXCI+XHJcbiAgPHRsZC1tZW51LWl0ZW0tbGluayBbbWVudUl0ZW1dPVwibWVudUl0ZW1cIiBbZGlyZWN0aW9uXT1cImRpcmVjdGlvblwiIFtsYWJlbHNWaXNpYmxlXT1cImxhYmVsc1Zpc2libGVcIlxyXG4gICAgW2FjdGl2ZUl0ZW1dPVwiYWN0aXZlSXRlbVwiIFtzaG93SWNvbnNdPVwic2hvd0ljb25zXCI+PC90bGQtbWVudS1pdGVtLWxpbms+XHJcbjwvbmctdGVtcGxhdGU+Il19
|
|
@@ -46,6 +46,7 @@ MenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13
|
|
|
46
46
|
CommonModule,
|
|
47
47
|
MatTooltipModule,
|
|
48
48
|
MatDialogModule,
|
|
49
|
+
MatIconModule,
|
|
49
50
|
MatButtonModule,
|
|
50
51
|
MatListModule,
|
|
51
52
|
MatMenuModule,
|
|
@@ -64,6 +65,7 @@ MenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13
|
|
|
64
65
|
CommonModule,
|
|
65
66
|
MatTooltipModule,
|
|
66
67
|
MatDialogModule,
|
|
68
|
+
MatIconModule,
|
|
67
69
|
MatButtonModule,
|
|
68
70
|
MatListModule,
|
|
69
71
|
MatMenuModule,
|
|
@@ -94,6 +96,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
|
|
|
94
96
|
CommonModule,
|
|
95
97
|
MatTooltipModule,
|
|
96
98
|
MatDialogModule,
|
|
99
|
+
MatIconModule,
|
|
97
100
|
MatButtonModule,
|
|
98
101
|
MatListModule,
|
|
99
102
|
MatMenuModule,
|
|
@@ -109,4 +112,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
|
|
|
109
112
|
]
|
|
110
113
|
}]
|
|
111
114
|
}] });
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWVudS9zcmMvbGliL21lbnUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDN0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDakYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDN0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDOztBQXNDN0YsTUFBTSxPQUFPLFVBQVU7SUFDckIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUF3QjtRQUNyQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLFVBQVU7WUFDcEIsU0FBUyxFQUFFO2dCQUNULEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUU7YUFDbEQ7U0FDRixDQUFDO0lBQ0osQ0FBQzs7dUdBUlUsVUFBVTt3R0FBVixVQUFVLGlCQWxDbkIsb0JBQW9CO1FBQ3BCLHFCQUFxQjtRQUNyQixxQkFBcUI7UUFDckIsZ0JBQWdCO1FBQ2hCLHFCQUFxQjtRQUNyQixvQkFBb0I7UUFDcEIsaUJBQWlCO1FBQ2pCLHFCQUFxQixhQU1yQixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLFlBQVk7UUFDWixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGVBQWU7UUFDZixhQUFhO1FBQ2IsZUFBZTtRQUNmLGFBQWE7UUFDYixhQUFhO1FBQ2IsYUFBYTtRQUNiLGVBQWU7UUFDZixlQUFlLGFBR2Ysb0JBQW9CO1FBQ3BCLHFCQUFxQjtRQUNyQixxQkFBcUI7UUFDckIsb0JBQW9CO3dHQUdYLFVBQVUsYUF6QlY7UUFDVCxpQkFBaUI7S0FDbEIsWUFDUTtZQUNQLGdCQUFnQjtZQUNoQixnQkFBZ0I7WUFDaEIsWUFBWTtZQUNaLFlBQVk7WUFDWixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLGFBQWE7WUFDYixlQUFlO1lBQ2YsYUFBYTtZQUNiLGFBQWE7WUFDYixhQUFhO1lBQ2IsZUFBZTtZQUNmLGVBQWU7U0FDaEI7MkZBUVUsVUFBVTtrQkFwQ3RCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLGdCQUFnQjt3QkFDaEIscUJBQXFCO3dCQUNyQixvQkFBb0I7d0JBQ3BCLGlCQUFpQjt3QkFDakIscUJBQXFCO3FCQUN0QjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1QsaUJBQWlCO3FCQUNsQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLG9CQUFvQjtxQkFDckI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXHJcbmltcG9ydCB7IFNpZGVOYXZNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NpZGUtbmF2LW1lbnUvc2lkZS1uYXYtbWVudS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGbGV4TGF5b3V0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZmxleC1sYXlvdXQnO1xyXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IE1vZGFsTmF2TWVudUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tb2RhbC1uYXYtbWVudS9tb2RhbC1uYXYtbWVudS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXRMaXN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdCc7XHJcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcclxuaW1wb3J0IHsgTWVudUl0ZW1JY29uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnUtaXRlbS1pY29uL21lbnUtaXRlbS1pY29uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgU3RhcnBpTWVudVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3N0cmFwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IE1lbnVTaGFyZWRDb25maWcgfSBmcm9tICcuL21vZGVscy9tZW51LXNoYXJlZC1jb25maWcubW9kZWwnO1xyXG5pbXBvcnQgeyBNRU5VX1NIQVJFRF9DT05GSUcgfSBmcm9tICcuL2luamVjdGlvbi10b2tlbnMvbWVudS1zaGFyZWQtY29uZmlnLnRva2VuJztcclxuaW1wb3J0IHsgTmF2QmFzZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9uYXYtYmFzZS9uYXYtYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNZW51SXRlbUxpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWVudS1pdGVtLWxpc3QvbWVudS1pdGVtLWxpc3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUGxhdXNpYmxlTW9kdWxlIH0gZnJvbSAnQHRpbGRlLW5scC9uZ3gtY29tbW9uJztcclxuaW1wb3J0IHsgTWVudUNvbHVtbnNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWVudS1jb2x1bW5zL21lbnUtY29sdW1ucy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNZW51SWNvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51LWljb24vbWVudS1pY29uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1lbnVJdGVtTGlua0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51LWl0ZW0tbGluay9tZW51LWl0ZW0tbGluay5jb21wb25lbnQnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFNpZGVOYXZNZW51Q29tcG9uZW50LFxyXG4gICAgTW9kYWxOYXZNZW51Q29tcG9uZW50LFxyXG4gICAgTWVudUl0ZW1JY29uQ29tcG9uZW50LFxyXG4gICAgTmF2QmFzZUNvbXBvbmVudCxcclxuICAgIE1lbnVJdGVtTGlzdENvbXBvbmVudCxcclxuICAgIE1lbnVDb2x1bW5zQ29tcG9uZW50LFxyXG4gICAgTWVudUljb25Db21wb25lbnQsXHJcbiAgICBNZW51SXRlbUxpbmtDb21wb25lbnRcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgU3RhcnBpTWVudVNlcnZpY2VcclxuICBdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIEh0dHBDbGllbnRNb2R1bGUsXHJcbiAgICBGbGV4TGF5b3V0TW9kdWxlLFxyXG4gICAgUm91dGVyTW9kdWxlLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcclxuICAgIE1hdERpYWxvZ01vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXRCdXR0b25Nb2R1bGUsXHJcbiAgICBNYXRMaXN0TW9kdWxlLFxyXG4gICAgTWF0TWVudU1vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBUcmFuc2xhdGVNb2R1bGUsXHJcbiAgICBQbGF1c2libGVNb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIFNpZGVOYXZNZW51Q29tcG9uZW50LFxyXG4gICAgTW9kYWxOYXZNZW51Q29tcG9uZW50LFxyXG4gICAgTWVudUl0ZW1JY29uQ29tcG9uZW50LFxyXG4gICAgTWVudUNvbHVtbnNDb21wb25lbnQsXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWVudU1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QoY29uZmlnOiBNZW51U2hhcmVkQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxNZW51TW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogTWVudU1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgeyBwcm92aWRlOiBNRU5VX1NIQVJFRF9DT05GSUcsIHVzZVZhbHVlOiBjb25maWcgfVxyXG4gICAgICBdXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -248,10 +248,10 @@ class MenuItemListComponent {
|
|
|
248
248
|
}
|
|
249
249
|
}
|
|
250
250
|
MenuItemListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: MenuItemListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
251
|
-
MenuItemListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: MenuItemListComponent, selector: "menu-item-list", inputs: { direction: "direction", labelsVisible: "labelsVisible", activeItem: "activeItem", showIcons: "showIcons", showChildren: "showChildren", items: "items", menuItemGroup: "menuItemGroup" }, outputs: { toggleExpand: "toggleExpand" }, ngImport: i0, 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=\"!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 [fxLayout]=\"menuItemLayout\" [class.text-center]=\"menuItemLayout === 'column'\" class=\"text-m menu-item\"\r\n [matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\" matTooltipPosition=\"after\"\r\n [fxLayoutAlign]=\"menuLayoutDirection\" matTooltipClass=\"menu-tooltip\" fxLayoutGap=\"0.375rem\"\r\n [class.active-menu-item]=\"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 <span *ngIf=\"labelsVisible\" class=\"menu-item-title\">\r\n <span class=\"title-content\">{{ menuItem.title | translate }}</span></span>\r\n <span class=\"material-icons\" *ngIf=\"showChildren && menuItem.children\">\r\n {{menuItem.expanded? 'expand_more' : 'navigate_next'}}\r\n </span>\r\n </button>\r\n <ng-container *ngIf=\"showChildren && menuItem.expanded\">\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\" [showIcons]=\"false\">\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 [menuItem]=\"menuItem\" [direction]=\"direction\" [labelsVisible]=\"labelsVisible\"\r\n [activeItem]=\"activeItem\" [showIcons]=\"showIcons\"></tld-menu-item-link>\r\n</ng-template
|
|
251
|
+
MenuItemListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: MenuItemListComponent, selector: "menu-item-list", inputs: { direction: "direction", labelsVisible: "labelsVisible", activeItem: "activeItem", showIcons: "showIcons", showChildren: "showChildren", items: "items", menuItemGroup: "menuItemGroup" }, outputs: { toggleExpand: "toggleExpand" }, ngImport: i0, 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=\"!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 [fxLayout]=\"menuItemLayout\" [class.text-center]=\"menuItemLayout === 'column'\" class=\"text-m menu-item\"\r\n [matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\" matTooltipPosition=\"after\"\r\n [fxLayoutAlign]=\"menuLayoutDirection\" matTooltipClass=\"menu-tooltip\" fxLayoutGap=\"0.375rem\"\r\n [class.active-menu-item]=\"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 <span *ngIf=\"labelsVisible\" class=\"menu-item-title\">\r\n <span class=\"title-content\">{{ menuItem.title | translate }}</span></span>\r\n <span class=\"material-icons\" *ngIf=\"showChildren && menuItem.children\">\r\n {{menuItem.expanded? 'expand_more' : 'navigate_next'}}\r\n </span>\r\n </button>\r\n <ng-container *ngIf=\"showChildren && menuItem.expanded\">\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\" [showIcons]=\"false\">\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 [menuItem]=\"menuItem\" [direction]=\"direction\" [labelsVisible]=\"labelsVisible\"\r\n [activeItem]=\"activeItem\" [showIcons]=\"showIcons\"></tld-menu-item-link>\r\n</ng-template>", styles: [":host{margin:1em 0;display:inline-block}:host::ng-deep .menu-list-wrapper .menu-item-list-title{margin-bottom:1em;font-size:1rem;font-weight:500;line-height:1.5rem}:host::ng-deep .menu-list-wrapper .text-center{text-align:center}:host::ng-deep .menu-list-wrapper tld-menu-item-link+tld-menu-item-link{margin-top:1.5625em}: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:focus-visible{outline:black solid 2px}:host::ng-deep .menu-list-wrapper .menu-item:hover{font-weight:600}: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{color:var(--primary-accent)!important}: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;flex-grow:100;align-items:start}: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-top:1rem;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}menu-item-list{padding-left:3rem;margin:0}\n"], components: [{ type: MenuIconComponent, selector: "tld-menu-icon", inputs: ["menuItem"] }, { type: MenuItemListComponent, selector: "menu-item-list", inputs: ["direction", "labelsVisible", "activeItem", "showIcons", "showChildren", "items", "menuItemGroup"], outputs: ["toggleExpand"] }, { type: MenuItemLinkComponent, selector: "tld-menu-item-link", inputs: ["direction", "labelsVisible", "activeItem", "showIcons", "menuItem"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$1.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i3$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3$1.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { type: i5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }], pipes: { "translate": i7.TranslatePipe } });
|
|
252
252
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: MenuItemListComponent, decorators: [{
|
|
253
253
|
type: Component,
|
|
254
|
-
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=\"!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 [fxLayout]=\"menuItemLayout\" [class.text-center]=\"menuItemLayout === 'column'\" class=\"text-m menu-item\"\r\n [matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\" matTooltipPosition=\"after\"\r\n [fxLayoutAlign]=\"menuLayoutDirection\" matTooltipClass=\"menu-tooltip\" fxLayoutGap=\"0.375rem\"\r\n [class.active-menu-item]=\"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 <span *ngIf=\"labelsVisible\" class=\"menu-item-title\">\r\n <span class=\"title-content\">{{ menuItem.title | translate }}</span></span>\r\n <span class=\"material-icons\" *ngIf=\"showChildren && menuItem.children\">\r\n {{menuItem.expanded? 'expand_more' : 'navigate_next'}}\r\n </span>\r\n </button>\r\n <ng-container *ngIf=\"showChildren && menuItem.expanded\">\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\" [showIcons]=\"false\">\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 [menuItem]=\"menuItem\" [direction]=\"direction\" [labelsVisible]=\"labelsVisible\"\r\n [activeItem]=\"activeItem\" [showIcons]=\"showIcons\"></tld-menu-item-link>\r\n</ng-template
|
|
254
|
+
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=\"!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 [fxLayout]=\"menuItemLayout\" [class.text-center]=\"menuItemLayout === 'column'\" class=\"text-m menu-item\"\r\n [matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\" matTooltipPosition=\"after\"\r\n [fxLayoutAlign]=\"menuLayoutDirection\" matTooltipClass=\"menu-tooltip\" fxLayoutGap=\"0.375rem\"\r\n [class.active-menu-item]=\"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 <span *ngIf=\"labelsVisible\" class=\"menu-item-title\">\r\n <span class=\"title-content\">{{ menuItem.title | translate }}</span></span>\r\n <span class=\"material-icons\" *ngIf=\"showChildren && menuItem.children\">\r\n {{menuItem.expanded? 'expand_more' : 'navigate_next'}}\r\n </span>\r\n </button>\r\n <ng-container *ngIf=\"showChildren && menuItem.expanded\">\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\" [showIcons]=\"false\">\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 [menuItem]=\"menuItem\" [direction]=\"direction\" [labelsVisible]=\"labelsVisible\"\r\n [activeItem]=\"activeItem\" [showIcons]=\"showIcons\"></tld-menu-item-link>\r\n</ng-template>", styles: [":host{margin:1em 0;display:inline-block}:host::ng-deep .menu-list-wrapper .menu-item-list-title{margin-bottom:1em;font-size:1rem;font-weight:500;line-height:1.5rem}:host::ng-deep .menu-list-wrapper .text-center{text-align:center}:host::ng-deep .menu-list-wrapper tld-menu-item-link+tld-menu-item-link{margin-top:1.5625em}: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:focus-visible{outline:black solid 2px}:host::ng-deep .menu-list-wrapper .menu-item:hover{font-weight:600}: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{color:var(--primary-accent)!important}: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;flex-grow:100;align-items:start}: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-top:1rem;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}menu-item-list{padding-left:3rem;margin:0}\n"] }]
|
|
255
255
|
}], propDecorators: { direction: [{
|
|
256
256
|
type: Input
|
|
257
257
|
}], labelsVisible: [{
|
|
@@ -300,6 +300,7 @@ class MenuColumnsComponent {
|
|
|
300
300
|
get menuItemGroups() { return this._menuItemGroups; }
|
|
301
301
|
set menuItemGroups(groups) {
|
|
302
302
|
this._menuItemGroups = groups !== null && groups !== void 0 ? groups : [];
|
|
303
|
+
this.updateMerged();
|
|
303
304
|
}
|
|
304
305
|
get mergedGroups() { return this._mergedGroups; }
|
|
305
306
|
get allRootItems() {
|
|
@@ -340,13 +341,7 @@ class MenuColumnsComponent {
|
|
|
340
341
|
// hide custom id based on input param
|
|
341
342
|
this.strapiItems = (this.hideSelectedCustomId && this.customId) ? data.filter(item => item.customId !== this.customId) : data;
|
|
342
343
|
this._strapiGroup = Object.assign(Object.assign({}, this.strapiGroupBase), { items: this.strapiItems });
|
|
343
|
-
|
|
344
|
-
this._mergedGroups = [this.strapiGroup, ...this.menuItemGroups];
|
|
345
|
-
}
|
|
346
|
-
else if (this.strapiDataLocation === StrapiDataLocation.END) {
|
|
347
|
-
this._mergedGroups = [...this.menuItemGroups, this.strapiGroup];
|
|
348
|
-
}
|
|
349
|
-
this.changeActiveElement();
|
|
344
|
+
this.updateMerged();
|
|
350
345
|
}
|
|
351
346
|
subscribeOnRouteChange() {
|
|
352
347
|
const subscription = this.router.events
|
|
@@ -396,6 +391,21 @@ class MenuColumnsComponent {
|
|
|
396
391
|
const routerLinkActiveOptions = (_b = (_a = element.routerLinkActiveOptions) !== null && _a !== void 0 ? _a : this.menuSharedConfig.activeMatchOptions) !== null && _b !== void 0 ? _b : this.isActiveMatchOptions;
|
|
397
392
|
return this.router.isActive(element.link, routerLinkActiveOptions);
|
|
398
393
|
}
|
|
394
|
+
updateMerged() {
|
|
395
|
+
var _a, _b;
|
|
396
|
+
if ((_b = (_a = this.strapiGroup) === null || _a === void 0 ? void 0 : _a.items) === null || _b === void 0 ? void 0 : _b.length) {
|
|
397
|
+
if (this.strapiDataLocation === StrapiDataLocation.START) {
|
|
398
|
+
this._mergedGroups = [this.strapiGroup, ...this.menuItemGroups];
|
|
399
|
+
}
|
|
400
|
+
else if (this.strapiDataLocation === StrapiDataLocation.END) {
|
|
401
|
+
this._mergedGroups = [...this.menuItemGroups, this.strapiGroup];
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
else {
|
|
405
|
+
this._mergedGroups = [...this.menuItemGroups];
|
|
406
|
+
}
|
|
407
|
+
this.changeActiveElement();
|
|
408
|
+
}
|
|
399
409
|
}
|
|
400
410
|
MenuColumnsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: MenuColumnsComponent, deps: [{ token: StarpiMenuService }, { token: i2$1.Router }, { token: MENU_SHARED_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
401
411
|
MenuColumnsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: MenuColumnsComponent, selector: "menu-columns", inputs: { direction: "direction", hideSelectedCustomId: "hideSelectedCustomId", strapiGroupBase: "strapiGroupBase", strapiDataLocation: "strapiDataLocation", labelsVisible: "labelsVisible", showChildren: "showChildren", menuItemGroups: "menuItemGroups" }, ngImport: i0, template: "<ng-container *ngFor=\"let group of mergedGroups\">\r\n <menu-item-list *ngIf=\"group.items.length\" [activeItem]=\"activeItem\" [direction]=\"direction\" (toggleExpand)=\"elementExpanded($event)\"\r\n [labelsVisible]=\"labelsVisible\" [menuItemGroup]=\"group\" [items]=\"group.items\" [showChildren]=\"showChildren\">\r\n </menu-item-list>\r\n <div class=\"divider\" *ngIf=\"group.bottomDivider\">\r\n <mat-divider></mat-divider>\r\n </div>\r\n</ng-container>\r\n", styles: [":host{display:inline-block}:host menu-item-list{display:block}\n"], components: [{ type: MenuItemListComponent, selector: "menu-item-list", inputs: ["direction", "labelsVisible", "activeItem", "showIcons", "showChildren", "items", "menuItemGroup"], outputs: ["toggleExpand"] }, { type: i4.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
@@ -635,6 +645,7 @@ MenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13
|
|
|
635
645
|
CommonModule,
|
|
636
646
|
MatTooltipModule,
|
|
637
647
|
MatDialogModule,
|
|
648
|
+
MatIconModule,
|
|
638
649
|
MatButtonModule,
|
|
639
650
|
MatListModule,
|
|
640
651
|
MatMenuModule,
|
|
@@ -653,6 +664,7 @@ MenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13
|
|
|
653
664
|
CommonModule,
|
|
654
665
|
MatTooltipModule,
|
|
655
666
|
MatDialogModule,
|
|
667
|
+
MatIconModule,
|
|
656
668
|
MatButtonModule,
|
|
657
669
|
MatListModule,
|
|
658
670
|
MatMenuModule,
|
|
@@ -683,6 +695,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
|
|
|
683
695
|
CommonModule,
|
|
684
696
|
MatTooltipModule,
|
|
685
697
|
MatDialogModule,
|
|
698
|
+
MatIconModule,
|
|
686
699
|
MatButtonModule,
|
|
687
700
|
MatListModule,
|
|
688
701
|
MatMenuModule,
|