@tilde-nlp/ngx-menu 8.1.0 → 8.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/tilde-nlp-ngx-menu.mjs +521 -251
- package/fesm2022/tilde-nlp-ngx-menu.mjs.map +1 -1
- package/index.d.ts +60 -21
- package/package.json +1 -1
|
@@ -7,7 +7,7 @@ import { NavigationEnd, RouterModule } from '@angular/router';
|
|
|
7
7
|
import { map, BehaviorSubject, filter } from 'rxjs';
|
|
8
8
|
import * as i1 from '@tilde-nlp/ngx-strapi';
|
|
9
9
|
import { STRAPI_API_CONFIG_TOKEN } from '@tilde-nlp/ngx-strapi';
|
|
10
|
-
import {
|
|
10
|
+
import { SingleTypes } from '@tilde-nlp/strapi-models';
|
|
11
11
|
import * as i3 from '@angular/common';
|
|
12
12
|
import { CommonModule } from '@angular/common';
|
|
13
13
|
import { FlexLayoutModule } from '@ngbracket/ngx-layout';
|
|
@@ -18,7 +18,7 @@ import * as i7 from '@angular/material/button';
|
|
|
18
18
|
import { MatButtonModule } from '@angular/material/button';
|
|
19
19
|
import * as i4 from '@angular/material/list';
|
|
20
20
|
import { MatListModule } from '@angular/material/list';
|
|
21
|
-
import * as
|
|
21
|
+
import * as i5$1 from '@angular/material/menu';
|
|
22
22
|
import { MatMenuModule } from '@angular/material/menu';
|
|
23
23
|
import * as i2$1 from '@angular/material/icon';
|
|
24
24
|
import { MatIconModule } from '@angular/material/icon';
|
|
@@ -27,7 +27,7 @@ import { TranslateService, TranslateModule } from '@ngx-translate/core';
|
|
|
27
27
|
import { provideHttpClient, withInterceptorsFromDi } from '@angular/common/http';
|
|
28
28
|
import * as i1$2 from '@ngbracket/ngx-layout/flex';
|
|
29
29
|
import * as i2$2 from '@ngbracket/ngx-layout/extended';
|
|
30
|
-
import * as i5$
|
|
30
|
+
import * as i5$2 from '@angular/material/progress-spinner';
|
|
31
31
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
32
32
|
|
|
33
33
|
/** Necessary for menu components to determine where loaded data from strapi should be placed - either in front of pre defined items or in end. */
|
|
@@ -48,17 +48,19 @@ class StarpiMenuService {
|
|
|
48
48
|
this.iconService = iconService;
|
|
49
49
|
this.svgIconNamePrefix = "strapi-menu-icon-";
|
|
50
50
|
this.imgBaseUrl = '';
|
|
51
|
+
this.footerItems = [];
|
|
51
52
|
this.imgBaseUrl = strapiConfig?.apiUrl;
|
|
52
53
|
}
|
|
53
54
|
getMenuItems() {
|
|
54
|
-
const responseObs = this.strapiSubscription.
|
|
55
|
-
.pipe(map((
|
|
56
|
-
|
|
55
|
+
const responseObs = this.strapiSubscription.subscribeSingleType(SingleTypes.MENU)
|
|
56
|
+
.pipe(map((menu) => {
|
|
57
|
+
this.footerItems = menu?.footerItems ?? [];
|
|
58
|
+
let items = menu?.items;
|
|
57
59
|
const convertedItems = [];
|
|
58
60
|
if (!items || items.length === 0) {
|
|
59
61
|
return convertedItems;
|
|
60
62
|
}
|
|
61
|
-
items =
|
|
63
|
+
items = this.filterMenuItems(items);
|
|
62
64
|
items.forEach((menu) => {
|
|
63
65
|
menu.link = this.addBaseUrlIfNecessary(menu.link);
|
|
64
66
|
const originalMenuIcon = menu.icon;
|
|
@@ -77,7 +79,22 @@ class StarpiMenuService {
|
|
|
77
79
|
return responseObs;
|
|
78
80
|
}
|
|
79
81
|
unsubscribe() {
|
|
80
|
-
this.strapiSubscription.unsubscribe(
|
|
82
|
+
this.strapiSubscription.unsubscribe(SingleTypes.MENU);
|
|
83
|
+
}
|
|
84
|
+
filterMenuItems(items) {
|
|
85
|
+
return items.filter((item) => {
|
|
86
|
+
const isDisabled = item?.disabled;
|
|
87
|
+
if (isDisabled) {
|
|
88
|
+
return false;
|
|
89
|
+
}
|
|
90
|
+
const hasChildren = item.children?.length && item.children?.length > 0;
|
|
91
|
+
const isPermissionDefined = item.permission !== undefined && item.permission !== null;
|
|
92
|
+
if (hasChildren) {
|
|
93
|
+
item.children = this.filterMenuItems(item.children);
|
|
94
|
+
}
|
|
95
|
+
const hasPermission = isPermissionDefined && this.menuConfig.permissions?.includes(item.permission);
|
|
96
|
+
return !isPermissionDefined || hasPermission;
|
|
97
|
+
});
|
|
81
98
|
}
|
|
82
99
|
addBaseUrlIfNecessary(link) {
|
|
83
100
|
if (!this.menuConfig?.baseUrl) {
|
|
@@ -101,10 +118,11 @@ class StarpiMenuService {
|
|
|
101
118
|
link: item.link,
|
|
102
119
|
title: item.title,
|
|
103
120
|
externalLink: item.externalLink,
|
|
104
|
-
// Material icons should not come from strapi
|
|
105
121
|
materialIcon: false,
|
|
106
122
|
plausibleEvent: item.plausibleEvent,
|
|
107
|
-
customId: item.customId
|
|
123
|
+
customId: item.customId,
|
|
124
|
+
children: item.children?.map((child) => this.convertToCustomMenuItem(child)),
|
|
125
|
+
showChildren: item.showChildren
|
|
108
126
|
};
|
|
109
127
|
}
|
|
110
128
|
static { this.ɵfac = function StarpiMenuService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || StarpiMenuService)(i0.ɵɵinject(i1.StrapiSubscriptionService), i0.ɵɵinject(MENU_SHARED_CONFIG, 8), i0.ɵɵinject(STRAPI_API_CONFIG_TOKEN, 8), i0.ɵɵinject(i2.IconService)); }; }
|
|
@@ -137,6 +155,9 @@ class MenuItemsService {
|
|
|
137
155
|
get strapiDataLocation() { return this.menuSharedConfig?.strapiDataLocation ?? StrapiDataLocation.END; }
|
|
138
156
|
get mergedGroups() { return this._mergedGroups; }
|
|
139
157
|
get menuItemGroups() { return this.menuSharedConfig.itemGroups; }
|
|
158
|
+
get footerItems() {
|
|
159
|
+
return this.strapiService.footerItems;
|
|
160
|
+
}
|
|
140
161
|
constructor(router, config, strapiService) {
|
|
141
162
|
this.router = router;
|
|
142
163
|
this.config = config;
|
|
@@ -279,7 +300,7 @@ class NavBaseComponent {
|
|
|
279
300
|
}] }); })();
|
|
280
301
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NavBaseComponent, { className: "NavBaseComponent", filePath: "lib/components/nav-base/nav-base.component.ts", lineNumber: 14 }); })();
|
|
281
302
|
|
|
282
|
-
const _c0$
|
|
303
|
+
const _c0$3 = ["*"];
|
|
283
304
|
function SideNavMenuComponent_a_14_Template(rf, ctx) { if (rf & 1) {
|
|
284
305
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
285
306
|
i0.ɵɵelementStart(0, "a", 2);
|
|
@@ -301,13 +322,46 @@ function SideNavMenuComponent_a_14_Template(rf, ctx) { if (rf & 1) {
|
|
|
301
322
|
} }
|
|
302
323
|
function SideNavMenuComponent_Conditional_24_Template(rf, ctx) { if (rf & 1) {
|
|
303
324
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
304
|
-
i0.ɵɵelementStart(0, "lib-menu-lang-switcher",
|
|
325
|
+
i0.ɵɵelementStart(0, "lib-menu-lang-switcher", 19);
|
|
305
326
|
i0.ɵɵlistener("changeLanguageEvent", function SideNavMenuComponent_Conditional_24_Template_lib_menu_lang_switcher_changeLanguageEvent_0_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.changeLanguage($event)); });
|
|
306
327
|
i0.ɵɵelementEnd();
|
|
307
328
|
} if (rf & 2) {
|
|
308
329
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
309
330
|
i0.ɵɵproperty("isCollapsed", ctx_r1.collapsed)("languages", ctx_r1.supportedLanguages);
|
|
310
331
|
} }
|
|
332
|
+
function SideNavMenuComponent_Conditional_28_Conditional_1_For_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
333
|
+
i0.ɵɵtext(0, " \u00A0\u00A0|\u00A0\u00A0 ");
|
|
334
|
+
} }
|
|
335
|
+
function SideNavMenuComponent_Conditional_28_Conditional_1_For_1_Template(rf, ctx) { if (rf & 1) {
|
|
336
|
+
i0.ɵɵelementStart(0, "a", 20);
|
|
337
|
+
i0.ɵɵtext(1);
|
|
338
|
+
i0.ɵɵelementEnd();
|
|
339
|
+
i0.ɵɵconditionalCreate(2, SideNavMenuComponent_Conditional_28_Conditional_1_For_1_Conditional_2_Template, 1, 0);
|
|
340
|
+
} if (rf & 2) {
|
|
341
|
+
const item_r4 = ctx.$implicit;
|
|
342
|
+
const ɵ$index_61_r5 = ctx.$index;
|
|
343
|
+
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
344
|
+
i0.ɵɵproperty("href", item_r4.link, i0.ɵɵsanitizeUrl);
|
|
345
|
+
i0.ɵɵadvance();
|
|
346
|
+
i0.ɵɵtextInterpolate(item_r4.title);
|
|
347
|
+
i0.ɵɵadvance();
|
|
348
|
+
i0.ɵɵconditional(ɵ$index_61_r5 !== ctx_r1.footerItems.length - 1 ? 2 : -1);
|
|
349
|
+
} }
|
|
350
|
+
function SideNavMenuComponent_Conditional_28_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
351
|
+
i0.ɵɵrepeaterCreate(0, SideNavMenuComponent_Conditional_28_Conditional_1_For_1_Template, 3, 3, null, null, i0.ɵɵrepeaterTrackByIndex);
|
|
352
|
+
} if (rf & 2) {
|
|
353
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
354
|
+
i0.ɵɵrepeater(ctx_r1.footerItems);
|
|
355
|
+
} }
|
|
356
|
+
function SideNavMenuComponent_Conditional_28_Template(rf, ctx) { if (rf & 1) {
|
|
357
|
+
i0.ɵɵelementStart(0, "div", 18);
|
|
358
|
+
i0.ɵɵconditionalCreate(1, SideNavMenuComponent_Conditional_28_Conditional_1_Template, 2, 0);
|
|
359
|
+
i0.ɵɵelementEnd();
|
|
360
|
+
} if (rf & 2) {
|
|
361
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
362
|
+
i0.ɵɵadvance();
|
|
363
|
+
i0.ɵɵconditional(!ctx_r1.collapsed ? 1 : -1);
|
|
364
|
+
} }
|
|
311
365
|
class SideNavMenuComponent extends NavBaseComponent {
|
|
312
366
|
#username;
|
|
313
367
|
get username() { return this.#username; }
|
|
@@ -323,6 +377,9 @@ class SideNavMenuComponent extends NavBaseComponent {
|
|
|
323
377
|
get sideNavWidth() {
|
|
324
378
|
return this.collapsed ? this.menuSettings.collapsedWidth : this.menuSettings.expandedWidth;
|
|
325
379
|
}
|
|
380
|
+
get footerItems() {
|
|
381
|
+
return this.menuItemsService.footerItems;
|
|
382
|
+
}
|
|
326
383
|
constructor(strapiLinkService, domService, menuItems) {
|
|
327
384
|
super(menuItems);
|
|
328
385
|
this.strapiLinkService = strapiLinkService;
|
|
@@ -335,10 +392,13 @@ class SideNavMenuComponent extends NavBaseComponent {
|
|
|
335
392
|
menuLogoCollapsed: '',
|
|
336
393
|
disableStrapi: false,
|
|
337
394
|
disableLogoNavigation: false,
|
|
395
|
+
expandableMenuChildren: false,
|
|
396
|
+
useLargeLoginButton: false,
|
|
338
397
|
userOptions: []
|
|
339
398
|
};
|
|
340
399
|
this.useDefaultLanguageSwitcher = true;
|
|
341
400
|
this.changeLanguageEvent = new EventEmitter();
|
|
401
|
+
this.loginEvent = new EventEmitter();
|
|
342
402
|
this.collapsed = false;
|
|
343
403
|
this.COLLAPSED_LOCAL_STORAGE_KEY = "TLD_MENU_SIDE_NAV_COLLAPSED";
|
|
344
404
|
//#region Plausible event variables for collapse button
|
|
@@ -363,6 +423,9 @@ class SideNavMenuComponent extends NavBaseComponent {
|
|
|
363
423
|
super.ngOnInit();
|
|
364
424
|
this.getColapsedFromLocalStorage();
|
|
365
425
|
}
|
|
426
|
+
login() {
|
|
427
|
+
this.loginEvent.emit();
|
|
428
|
+
}
|
|
366
429
|
logoClick(event) {
|
|
367
430
|
this.strapiLinkService.strapiLinkClick(event);
|
|
368
431
|
}
|
|
@@ -391,7 +454,7 @@ class SideNavMenuComponent extends NavBaseComponent {
|
|
|
391
454
|
this.domService.localStorage.setItem(this.COLLAPSED_LOCAL_STORAGE_KEY, this.collapsed.toString());
|
|
392
455
|
}
|
|
393
456
|
static { this.ɵfac = function SideNavMenuComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SideNavMenuComponent)(i0.ɵɵdirectiveInject(i1.StrapiLinkService), i0.ɵɵdirectiveInject(i2.DOMService), i0.ɵɵdirectiveInject(MenuItemsService)); }; }
|
|
394
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SideNavMenuComponent, selectors: [["lib-side-nav-menu"]], inputs: { username: "username", menuSettings: "menuSettings", productName: "productName", supportedLanguages: "supportedLanguages", useDefaultLanguageSwitcher: "useDefaultLanguageSwitcher" }, outputs: { changeLanguageEvent: "changeLanguageEvent" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$
|
|
457
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SideNavMenuComponent, selectors: [["lib-side-nav-menu"]], inputs: { username: "username", menuSettings: "menuSettings", productName: "productName", supportedLanguages: "supportedLanguages", useDefaultLanguageSwitcher: "useDefaultLanguageSwitcher" }, outputs: { changeLanguageEvent: "changeLanguageEvent", loginEvent: "loginEvent" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c0$3, decls: 29, vars: 44, consts: [["fxHide.gt-xs", ""], [1, "mobile-header", 3, "fxHide"], ["fxFlex", "3.125em", "fxLayoutAlign", "start center", 3, "click", "libPlausibleEvent", "href"], ["height", "40", "width", "40", "alt", "logo", 1, "menu-logo", 3, "src"], [1, "menu-product-name"], ["mat-icon-button", "", 1, "toggler", 3, "click", "libPlausibleEvent"], ["fxLayout", "column", 1, "menu-container", 3, "ngClass.lt-sm"], ["fxLayout", "column", "fxFlexFill", "", 1, "content"], ["fxLayout", "row", 1, "menu-container-header", 3, "fxLayoutAlign"], ["fxFlex", "3.125em", "fxLayoutAlign", "start center", 3, "libPlausibleEvent", "no-click", "href", "click", 4, "ngIf"], ["mat-icon-button", "", 1, "toggler", 3, "click", "libPlausibleEvent", "matTooltip"], ["fxHide.gt-xs", "", 3, "ngClass.lt-sm"], ["fxHide.lt-sm", ""], ["fxLayout", "column", 1, "menu-wrapper"], ["role", "navigation", 3, "toggleCollapseEvent", "direction", "isOpen", "active", "expandableMenuChildren"], [3, "isCollapsed", "languages"], ["fxFlex", "", "fxLayout", "column"], [3, "linkCallbackEvent", "loginEvent", "userOptions", "username", "collapsed", "useLargeLoginButton"], [1, "menu-footer"], [3, "changeLanguageEvent", "isCollapsed", "languages"], ["target", "_blank", 3, "href"]], template: function SideNavMenuComponent_Template(rf, ctx) { if (rf & 1) {
|
|
395
458
|
i0.ɵɵprojectionDef();
|
|
396
459
|
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "a", 2);
|
|
397
460
|
i0.ɵɵpipe(3, "translate");
|
|
@@ -427,48 +490,53 @@ class SideNavMenuComponent extends NavBaseComponent {
|
|
|
427
490
|
i0.ɵɵprojection(26);
|
|
428
491
|
i0.ɵɵelementEnd();
|
|
429
492
|
i0.ɵɵelementStart(27, "lib-menu-profile", 17);
|
|
430
|
-
i0.ɵɵlistener("linkCallbackEvent", function SideNavMenuComponent_Template_lib_menu_profile_linkCallbackEvent_27_listener($event) { return ctx.linkCallback($event); });
|
|
431
|
-
i0.ɵɵelementEnd()
|
|
493
|
+
i0.ɵɵlistener("linkCallbackEvent", function SideNavMenuComponent_Template_lib_menu_profile_linkCallbackEvent_27_listener($event) { return ctx.linkCallback($event); })("loginEvent", function SideNavMenuComponent_Template_lib_menu_profile_loginEvent_27_listener() { return ctx.login(); });
|
|
494
|
+
i0.ɵɵelementEnd();
|
|
495
|
+
i0.ɵɵconditionalCreate(28, SideNavMenuComponent_Conditional_28_Template, 2, 1, "div", 18);
|
|
496
|
+
i0.ɵɵelementEnd()();
|
|
432
497
|
} if (rf & 2) {
|
|
433
498
|
i0.ɵɵadvance();
|
|
499
|
+
i0.ɵɵclassProp("compact-menu", ctx.menuSettings == null ? null : ctx.menuSettings.useCompactMenuVersion);
|
|
434
500
|
i0.ɵɵproperty("fxHide", !ctx.collapsed);
|
|
435
501
|
i0.ɵɵadvance();
|
|
436
502
|
i0.ɵɵclassProp("no-click", ctx.menuSettings == null ? null : ctx.menuSettings.disableLogoNavigation);
|
|
437
503
|
i0.ɵɵproperty("libPlausibleEvent", ctx.LOGOCLICK_PLAUSIBLE_EVENT)("href", ctx.baseUrl, i0.ɵɵsanitizeUrl);
|
|
438
|
-
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(3,
|
|
504
|
+
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(3, 36, "MENU.ARIA_LABELS.LOGO"));
|
|
439
505
|
i0.ɵɵadvance(2);
|
|
440
506
|
i0.ɵɵproperty("src", ctx.menuLogoImage, i0.ɵɵsanitizeUrl);
|
|
441
507
|
i0.ɵɵadvance(2);
|
|
442
508
|
i0.ɵɵtextInterpolate1(" ", ctx.productName, " ");
|
|
443
509
|
i0.ɵɵadvance();
|
|
444
510
|
i0.ɵɵproperty("libPlausibleEvent", ctx.collapsed ? ctx.EXPAND_PLAUSIBLE_EVENT : ctx.COLLAPSE_PLAUSIBLE_EVENT);
|
|
445
|
-
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(8,
|
|
511
|
+
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(8, 38, "ARIA_LABELS.MENU_TOGGLER"));
|
|
446
512
|
i0.ɵɵadvance(4);
|
|
447
513
|
i0.ɵɵstyleProp("width", ctx.sideNavWidth);
|
|
448
|
-
i0.ɵɵclassProp("collapsed", ctx.collapsed);
|
|
514
|
+
i0.ɵɵclassProp("collapsed", ctx.collapsed)("compact-menu", ctx.menuSettings == null ? null : ctx.menuSettings.useCompactMenuVersion);
|
|
449
515
|
i0.ɵɵproperty("ngClass.lt-sm", "mobile");
|
|
450
516
|
i0.ɵɵadvance(2);
|
|
451
517
|
i0.ɵɵproperty("fxLayoutAlign", ctx.collapsed ? "center center" : "space-between center");
|
|
452
518
|
i0.ɵɵadvance();
|
|
453
519
|
i0.ɵɵproperty("ngIf", !ctx.collapsed);
|
|
454
520
|
i0.ɵɵadvance();
|
|
455
|
-
i0.ɵɵproperty("libPlausibleEvent", ctx.collapsed ? ctx.EXPAND_PLAUSIBLE_EVENT : ctx.COLLAPSE_PLAUSIBLE_EVENT)("matTooltip", i0.ɵɵpipeBind1(16,
|
|
456
|
-
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(17,
|
|
521
|
+
i0.ɵɵproperty("libPlausibleEvent", ctx.collapsed ? ctx.EXPAND_PLAUSIBLE_EVENT : ctx.COLLAPSE_PLAUSIBLE_EVENT)("matTooltip", i0.ɵɵpipeBind1(16, 40, ctx.collapsed ? "MENU.EXPAND" : "MENU.COLLAPSE"));
|
|
522
|
+
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(17, 42, "ARIA_LABELS.MENU_TOGGLER"));
|
|
457
523
|
i0.ɵɵadvance(3);
|
|
458
524
|
i0.ɵɵproperty("ngClass.lt-sm", "mob-close-icon");
|
|
459
525
|
i0.ɵɵadvance(3);
|
|
460
526
|
i0.ɵɵtextInterpolate(ctx.collapsed ? "keyboard_double_arrow_right" : "keyboard_double_arrow_left");
|
|
461
527
|
i0.ɵɵadvance(2);
|
|
462
|
-
i0.ɵɵproperty("direction", ctx.direction)("isOpen", !ctx.collapsed)("active", ctx.active);
|
|
528
|
+
i0.ɵɵproperty("direction", ctx.direction)("isOpen", !ctx.collapsed)("active", ctx.active)("expandableMenuChildren", ctx.menuSettings == null ? null : ctx.menuSettings.expandableMenuChildren);
|
|
463
529
|
i0.ɵɵadvance();
|
|
464
530
|
i0.ɵɵconditional(ctx.useDefaultLanguageSwitcher && ctx.supportedLanguages.length > 1 ? 24 : -1);
|
|
465
531
|
i0.ɵɵadvance(3);
|
|
466
|
-
i0.ɵɵproperty("userOptions", ctx.menuSettings.userOptions)("username", ctx.username)("collapsed", ctx.collapsed);
|
|
467
|
-
|
|
532
|
+
i0.ɵɵproperty("userOptions", ctx.menuSettings.userOptions)("username", ctx.username)("collapsed", ctx.collapsed)("useLargeLoginButton", ctx.menuSettings == null ? null : ctx.menuSettings.useLargeLoginButton);
|
|
533
|
+
i0.ɵɵadvance();
|
|
534
|
+
i0.ɵɵconditional(ctx.footerItems.length ? 28 : -1);
|
|
535
|
+
} }, styles: ["a[_ngcontent-%COMP%]{text-decoration:none}.no-click[_ngcontent-%COMP%]{pointer-events:none!important}.mobile-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:23px 27px;background-color:#fcfcfc;border:1px solid var(--base-70)}.mobile.menu-container.collapsed[_ngcontent-%COMP%]{display:none!important}.mobile.menu-container[_ngcontent-%COMP%]:not(.collapsed){display:block!important;position:fixed;min-width:100vw;min-height:100dvh;z-index:1000}button[_ngcontent-%COMP%]:has(.mob-close-icon){margin-right:14px}.menu-container[_ngcontent-%COMP%] [_ngcontent-%COMP%]::-webkit-scrollbar{width:5px}.menu-container[_ngcontent-%COMP%] [_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:var(--base-95);background-clip:padding-box}.menu-container[_ngcontent-%COMP%] [_ngcontent-%COMP%]::-webkit-scrollbar-track{background:var(--base-100)}.menu-product-name[_ngcontent-%COMP%]{white-space:nowrap;margin-left:12px;font-weight:600;color:var(--base-10)}.menu-container[_ngcontent-%COMP%]{max-height:100dvh;white-space:nowrap;height:100%;transition:width .2s ease;min-height:100dvh;overflow:auto;background:var(--base-100);border-right:2px solid var(--base-95)}.menu-container[_ngcontent-%COMP%] .menu-container-header[_ngcontent-%COMP%]{margin:24px 0;max-height:40px}.menu-container.collapsed[_ngcontent-%COMP%] .menu-container-header[_ngcontent-%COMP%]{margin:24px 0 32px!important}.menu-container[_ngcontent-%COMP%] .content[_ngcontent-%COMP%]:not(.collapsed){overflow-x:hidden;padding:0 12px}.menu-container[_ngcontent-%COMP%] .content[_ngcontent-%COMP%]:not(.collapsed) .menu-logo[_ngcontent-%COMP%]{margin-left:16px;max-width:100%}.menu-container[_ngcontent-%COMP%] .divider[_ngcontent-%COMP%]{width:100%}[_nghost-%COMP%] .collapsed .profile-wrapper{margin:36px 0!important}[_nghost-%COMP%] .mobile .profile-name{max-width:60vw}[_nghost-%COMP%] .menu-item{display:flex;padding:16px!important;border-radius:4px!important}[_nghost-%COMP%] .collapsed .menu-item{padding:0!important;width:40px;height:40px;border-radius:50%!important}[_nghost-%COMP%] .active-menu-item{background-color:var(--base-95)!important}[_nghost-%COMP%] .menu-item-title{margin-left:12px}tld-menu-icon[_ngcontent-%COMP%]{margin-right:10px}[_nghost-%COMP%] button.collapse-btn .mat-mdc-button-persistent-ripple, [_nghost-%COMP%] button.toggler .mat-mdc-button-persistent-ripple{display:none} .cdk-overlay-container .child-menu, .cdk-overlay-container .profile-menu, .cdk-overlay-container .lang-menu{min-width:250px;margin:10px 0} .mat-mdc-menu-item .mat-icon{margin-right:5px!important} .collapsed .profile-wrapper{justify-content:center!important}.menu-footer[_ngcontent-%COMP%]{display:flex;justify-content:center;margin-bottom:20px;color:var(--base-40);font-size:13px}", ".compact-menu .profile{margin-top:80px!important} .compact-menu .profile-icon{margin-left:10px!important;min-width:28px!important;height:28px!important;font-size:12px!important} .compact-menu .profile-arrow{margin-right:5px!important} .compact-menu .profile-name{margin-left:10px!important;font-size:14px!important;font-weight:600!important} .compact-menu .profile-wrapper{padding:6px 0!important;border-radius:16px!important;border:2px solid var(--base-70)} .compact-menu .menu-wrapper{position:relative;height:100%} .compact-menu .lang-switcher{position:absolute;bottom:0} .compact-menu .menu-item, .compact-menu .lang-switcher{padding:8px 12px!important;border-radius:16px!important} .compact-menu .lang-switcher .menu-arrow{margin-right:-8px} .compact-menu .child-list{margin-left:32px} .compact-menu.collapsed .child-list{margin-left:0} .compact-menu.collapsed .lang-switcher{padding:0!important;border-radius:50%!important}"] }); }
|
|
468
536
|
}
|
|
469
537
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SideNavMenuComponent, [{
|
|
470
538
|
type: Component,
|
|
471
|
-
args: [{ selector: 'lib-side-nav-menu', standalone: false, template: "<div fxHide.gt-xs>\r\n
|
|
539
|
+
args: [{ selector: 'lib-side-nav-menu', standalone: false, template: "<div fxHide.gt-xs>\r\n\t<div [fxHide]=\"!collapsed\" class=\"mobile-header\" [class.compact-menu]=\"menuSettings?.useCompactMenuVersion\">\r\n\t\t<a\r\n\t\t\t[libPlausibleEvent]=\"LOGOCLICK_PLAUSIBLE_EVENT\"\r\n\t\t\tfxFlex=\"3.125em\"\r\n\t\t\t[href]=\"baseUrl\"\r\n\t\t\t[class.no-click]=\"menuSettings?.disableLogoNavigation\"\r\n\t\t\t[attr.aria-label]=\"'MENU.ARIA_LABELS.LOGO' | translate\"\r\n\t\t\t(click)=\"logoClick($event)\"\r\n\t\t\tfxLayoutAlign=\"start center\"\r\n\t\t>\r\n\t\t\t<img height=\"40\" width=\"40\" class=\"menu-logo\" [src]=\"menuLogoImage\" alt=\"logo\" />\r\n\t\t\t<span class=\"menu-product-name\">\r\n\t\t\t\t{{ productName }}\r\n\t\t\t</span>\r\n\t\t</a>\r\n\r\n\t\t<button\r\n\t\t\tmat-icon-button\r\n\t\t\tclass=\"toggler\"\r\n\t\t\t[attr.aria-label]=\"'ARIA_LABELS.MENU_TOGGLER' | translate\"\r\n\t\t\t[libPlausibleEvent]=\"collapsed ? EXPAND_PLAUSIBLE_EVENT : COLLAPSE_PLAUSIBLE_EVENT\"\r\n\t\t\t(click)=\"toggleCollapse()\"\r\n\t\t>\r\n\t\t\t<mat-icon>menu</mat-icon>\r\n\t\t</button>\r\n\t</div>\r\n</div>\r\n\r\n<div \r\n\tclass=\"menu-container\"\r\n\tfxLayout=\"column\" \r\n\t[ngClass.lt-sm]=\"'mobile'\" \r\n\t[style.width]=\"sideNavWidth\" \r\n\t[class.collapsed]=\"collapsed\" \r\n\t[class.compact-menu]=\"menuSettings?.useCompactMenuVersion\"\r\n>\r\n\t<div class=\"content\" fxLayout=\"column\" fxFlexFill>\r\n\t\t<div class=\"menu-container-header\" fxLayout=\"row\" [fxLayoutAlign]=\"collapsed ? 'center center' : 'space-between center'\">\r\n\t\t\t<a\r\n\t\t\t\t*ngIf=\"!collapsed\"\r\n\t\t\t\t[libPlausibleEvent]=\"LOGOCLICK_PLAUSIBLE_EVENT\"\r\n\t\t\t\tfxFlex=\"3.125em\"\r\n\t\t\t\t[class.no-click]=\"menuSettings?.disableLogoNavigation\"\r\n\t\t\t\t[href]=\"baseUrl\"\r\n\t\t\t\t[attr.aria-label]=\"'MENU.ARIA_LABELS.LOGO' | translate\"\r\n\t\t\t\t(click)=\"logoClick($event)\"\r\n\t\t\t\tfxLayoutAlign=\"start center\"\r\n\t\t\t>\r\n\t\t\t\t<img height=\"40\" width=\"40\" class=\"menu-logo\" [src]=\"menuLogoImage\" alt=\"logo\" />\r\n\t\t\t\t<span class=\"menu-product-name\">\r\n\t\t\t\t\t{{ productName }}\r\n\t\t\t\t</span>\r\n\t\t\t</a>\r\n\r\n\t\t\t<button\r\n\t\t\t\tmat-icon-button\r\n\t\t\t\tclass=\"toggler\"\r\n\t\t\t\t[attr.aria-label]=\"'ARIA_LABELS.MENU_TOGGLER' | translate\"\r\n\t\t\t\t[libPlausibleEvent]=\"collapsed ? EXPAND_PLAUSIBLE_EVENT : COLLAPSE_PLAUSIBLE_EVENT\"\r\n\t\t\t\t[matTooltip]=\"(collapsed ? 'MENU.EXPAND' : 'MENU.COLLAPSE') | translate\"\r\n\t\t\t\t(click)=\"toggleCollapse()\"\r\n\t\t\t>\r\n\t\t\t\t<mat-icon fxHide.gt-xs [ngClass.lt-sm]=\"'mob-close-icon'\">close</mat-icon>\r\n\t\t\t\t<mat-icon fxHide.lt-sm>{{ collapsed ? \"keyboard_double_arrow_right\" : \"keyboard_double_arrow_left\" }}</mat-icon>\r\n\t\t\t</button>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"menu-wrapper\" fxLayout=\"column\">\r\n\t\t\t<menu-columns\r\n\t\t\t\t(toggleCollapseEvent)=\"toggleCollapse()\"\r\n\t\t\t\t[direction]=\"direction\"\r\n\t\t\t\trole=\"navigation\"\r\n\t\t\t\t[isOpen]=\"!collapsed\"\r\n\t\t\t\t[active]=\"active\"\r\n\t\t\t\t[expandableMenuChildren]=\"menuSettings?.expandableMenuChildren\"\r\n\t\t\t></menu-columns>\r\n\r\n\t\t\t@if (useDefaultLanguageSwitcher && supportedLanguages.length > 1) {\r\n\t\t\t<lib-menu-lang-switcher [isCollapsed]=\"collapsed\" [languages]=\"supportedLanguages\" (changeLanguageEvent)=\"changeLanguage($event)\"></lib-menu-lang-switcher>\r\n\t\t\t}\r\n\t\t</div>\r\n\t\t<div fxFlex fxLayout=\"column\">\r\n\t\t\t<ng-content></ng-content>\r\n\t\t</div>\r\n\r\n\t\t<lib-menu-profile \r\n\t\t\t[userOptions]=\"menuSettings.userOptions\" \r\n\t\t\t[username]=\"username\" \r\n\t\t\t[collapsed]=\"collapsed\" \r\n\t\t\t[useLargeLoginButton]=\"menuSettings?.useLargeLoginButton\"\r\n\t\t\t(linkCallbackEvent)=\"linkCallback($event)\"\r\n\t\t\t(loginEvent)=\"login()\"\t\r\n\t\t>\r\n\t\t</lib-menu-profile>\r\n\r\n @if (footerItems.length) {\r\n <div class=\"menu-footer\">\r\n @if (!collapsed) {\r\n @for (item of footerItems; let i = $index; track i) {\r\n <a [href]=\"item.link\" target=\"_blank\">{{ item.title }}</a>\r\n \r\n @if (i !== footerItems.length - 1) { \r\n | \r\n } \r\n }\r\n }\r\n </div>\r\n }\r\n\t</div>\r\n</div>\r\n", styles: ["a{text-decoration:none}.no-click{pointer-events:none!important}.mobile-header{display:flex;justify-content:space-between;padding:23px 27px;background-color:#fcfcfc;border:1px solid var(--base-70)}.mobile.menu-container.collapsed{display:none!important}.mobile.menu-container:not(.collapsed){display:block!important;position:fixed;min-width:100vw;min-height:100dvh;z-index:1000}button:has(.mob-close-icon){margin-right:14px}.menu-container ::-webkit-scrollbar{width:5px}.menu-container ::-webkit-scrollbar-thumb{background:var(--base-95);background-clip:padding-box}.menu-container ::-webkit-scrollbar-track{background:var(--base-100)}.menu-product-name{white-space:nowrap;margin-left:12px;font-weight:600;color:var(--base-10)}.menu-container{max-height:100dvh;white-space:nowrap;height:100%;transition:width .2s ease;min-height:100dvh;overflow:auto;background:var(--base-100);border-right:2px solid var(--base-95)}.menu-container .menu-container-header{margin:24px 0;max-height:40px}.menu-container.collapsed .menu-container-header{margin:24px 0 32px!important}.menu-container .content:not(.collapsed){overflow-x:hidden;padding:0 12px}.menu-container .content:not(.collapsed) .menu-logo{margin-left:16px;max-width:100%}.menu-container .divider{width:100%}:host ::ng-deep .collapsed .profile-wrapper{margin:36px 0!important}:host ::ng-deep .mobile .profile-name{max-width:60vw}:host ::ng-deep .menu-item{display:flex;padding:16px!important;border-radius:4px!important}:host ::ng-deep .collapsed .menu-item{padding:0!important;width:40px;height:40px;border-radius:50%!important}:host ::ng-deep .active-menu-item{background-color:var(--base-95)!important}:host ::ng-deep .menu-item-title{margin-left:12px}tld-menu-icon{margin-right:10px}:host::ng-deep button.collapse-btn .mat-mdc-button-persistent-ripple,:host::ng-deep button.toggler .mat-mdc-button-persistent-ripple{display:none}::ng-deep .cdk-overlay-container .child-menu,::ng-deep .cdk-overlay-container .profile-menu,::ng-deep .cdk-overlay-container .lang-menu{min-width:250px;margin:10px 0}::ng-deep .mat-mdc-menu-item .mat-icon{margin-right:5px!important}::ng-deep .collapsed .profile-wrapper{justify-content:center!important}.menu-footer{display:flex;justify-content:center;margin-bottom:20px;color:var(--base-40);font-size:13px}\n", "::ng-deep .compact-menu .profile{margin-top:80px!important}::ng-deep .compact-menu .profile-icon{margin-left:10px!important;min-width:28px!important;height:28px!important;font-size:12px!important}::ng-deep .compact-menu .profile-arrow{margin-right:5px!important}::ng-deep .compact-menu .profile-name{margin-left:10px!important;font-size:14px!important;font-weight:600!important}::ng-deep .compact-menu .profile-wrapper{padding:6px 0!important;border-radius:16px!important;border:2px solid var(--base-70)}::ng-deep .compact-menu .menu-wrapper{position:relative;height:100%}::ng-deep .compact-menu .lang-switcher{position:absolute;bottom:0}::ng-deep .compact-menu .menu-item,::ng-deep .compact-menu .lang-switcher{padding:8px 12px!important;border-radius:16px!important}::ng-deep .compact-menu .lang-switcher .menu-arrow{margin-right:-8px}::ng-deep .compact-menu .child-list{margin-left:32px}::ng-deep .compact-menu.collapsed .child-list{margin-left:0}::ng-deep .compact-menu.collapsed .lang-switcher{padding:0!important;border-radius:50%!important}\n"] }]
|
|
472
540
|
}], () => [{ type: i1.StrapiLinkService }, { type: i2.DOMService }, { type: MenuItemsService }], { username: [{
|
|
473
541
|
type: Input
|
|
474
542
|
}], menuSettings: [{
|
|
@@ -481,6 +549,8 @@ class SideNavMenuComponent extends NavBaseComponent {
|
|
|
481
549
|
type: Input
|
|
482
550
|
}], changeLanguageEvent: [{
|
|
483
551
|
type: Output
|
|
552
|
+
}], loginEvent: [{
|
|
553
|
+
type: Output
|
|
484
554
|
}] }); })();
|
|
485
555
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SideNavMenuComponent, { className: "SideNavMenuComponent", filePath: "lib/components/side-nav-menu/side-nav-menu.component.ts", lineNumber: 16 }); })();
|
|
486
556
|
|
|
@@ -673,7 +743,7 @@ class MenuItemBtnComponent {
|
|
|
673
743
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 6, ctx.menuItem.title), " ");
|
|
674
744
|
i0.ɵɵadvance(2);
|
|
675
745
|
i0.ɵɵproperty("ngIf", ctx.menuItem.subMenu == null ? null : ctx.menuItem.subMenu.length);
|
|
676
|
-
} }, dependencies: [i1$2.DefaultLayoutAlignDirective, i2$2.DefaultClassDirective, i3.NgForOf, i3.NgIf, i2$1.MatIcon, i7.MatIconButton,
|
|
746
|
+
} }, dependencies: [i1$2.DefaultLayoutAlignDirective, i2$2.DefaultClassDirective, i3.NgForOf, i3.NgIf, i2$1.MatIcon, i7.MatIconButton, i5$1.MatMenu, i5$1.MatMenuItem, i5$1.MatMenuTrigger, i8.TranslatePipe], styles: ["[_nghost-%COMP%]{width:100%}.menu-item[_ngcontent-%COMP%]:not(:hover) .sub-menu-btn[_ngcontent-%COMP%]{display:none}.menu-item[_ngcontent-%COMP%]:has(.open){background-color:var(--base-95)!important}.open[_ngcontent-%COMP%] .sub-menu-btn[_ngcontent-%COMP%]{display:block!important}.mobile[_ngcontent-%COMP%] .btn-label[_ngcontent-%COMP%]{margin-left:5px}.btn-label[_ngcontent-%COMP%]{font-size:14px;font-weight:500;line-height:20px;letter-spacing:.1px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}"] }); }
|
|
677
747
|
}
|
|
678
748
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MenuItemBtnComponent, [{
|
|
679
749
|
type: Component,
|
|
@@ -687,10 +757,250 @@ class MenuItemBtnComponent {
|
|
|
687
757
|
}] }); })();
|
|
688
758
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MenuItemBtnComponent, { className: "MenuItemBtnComponent", filePath: "lib/components/menu-item-btn/menu-item-btn.component.ts", lineNumber: 10 }); })();
|
|
689
759
|
|
|
760
|
+
const _c0$2 = a0 => ({ menuItem: a0 });
|
|
761
|
+
function MenuItemWithChildrenComponent_Conditional_0_ng_container_2_Template(rf, ctx) { if (rf & 1) {
|
|
762
|
+
i0.ɵɵelementContainerStart(0);
|
|
763
|
+
i0.ɵɵelement(1, "tld-menu-icon", 8);
|
|
764
|
+
i0.ɵɵelementContainerEnd();
|
|
765
|
+
} if (rf & 2) {
|
|
766
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
767
|
+
i0.ɵɵadvance();
|
|
768
|
+
i0.ɵɵproperty("menuItem", ctx_r1.menuItem);
|
|
769
|
+
} }
|
|
770
|
+
function MenuItemWithChildrenComponent_Conditional_0_ng_container_3_ng_container_5_span_1_Template(rf, ctx) { if (rf & 1) {
|
|
771
|
+
i0.ɵɵelementStart(0, "span", 12);
|
|
772
|
+
i0.ɵɵtext(1, "keyboard_arrow_down");
|
|
773
|
+
i0.ɵɵelementEnd();
|
|
774
|
+
} }
|
|
775
|
+
function MenuItemWithChildrenComponent_Conditional_0_ng_container_3_ng_container_5_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
776
|
+
i0.ɵɵelementStart(0, "span", 12);
|
|
777
|
+
i0.ɵɵtext(1, " keyboard_arrow_up ");
|
|
778
|
+
i0.ɵɵelementEnd();
|
|
779
|
+
} }
|
|
780
|
+
function MenuItemWithChildrenComponent_Conditional_0_ng_container_3_ng_container_5_Template(rf, ctx) { if (rf & 1) {
|
|
781
|
+
i0.ɵɵelementContainerStart(0);
|
|
782
|
+
i0.ɵɵtemplate(1, MenuItemWithChildrenComponent_Conditional_0_ng_container_3_ng_container_5_span_1_Template, 2, 0, "span", 11)(2, MenuItemWithChildrenComponent_Conditional_0_ng_container_3_ng_container_5_ng_template_2_Template, 2, 0, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor);
|
|
783
|
+
i0.ɵɵelementContainerEnd();
|
|
784
|
+
} if (rf & 2) {
|
|
785
|
+
const iconDown_r3 = i0.ɵɵreference(3);
|
|
786
|
+
const ctx_r1 = i0.ɵɵnextContext(3);
|
|
787
|
+
i0.ɵɵadvance();
|
|
788
|
+
i0.ɵɵproperty("ngIf", ctx_r1.menuItem.expanded)("ngIfElse", iconDown_r3);
|
|
789
|
+
} }
|
|
790
|
+
function MenuItemWithChildrenComponent_Conditional_0_ng_container_3_Template(rf, ctx) { if (rf & 1) {
|
|
791
|
+
i0.ɵɵelementContainerStart(0);
|
|
792
|
+
i0.ɵɵelementStart(1, "span", 9)(2, "span", 10);
|
|
793
|
+
i0.ɵɵtext(3);
|
|
794
|
+
i0.ɵɵpipe(4, "translate");
|
|
795
|
+
i0.ɵɵelementEnd()();
|
|
796
|
+
i0.ɵɵtemplate(5, MenuItemWithChildrenComponent_Conditional_0_ng_container_3_ng_container_5_Template, 4, 2, "ng-container", 6);
|
|
797
|
+
i0.ɵɵelementContainerEnd();
|
|
798
|
+
} if (rf & 2) {
|
|
799
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
800
|
+
i0.ɵɵadvance(3);
|
|
801
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 2, ctx_r1.menuItem.title));
|
|
802
|
+
i0.ɵɵadvance(2);
|
|
803
|
+
i0.ɵɵproperty("ngIf", ctx_r1.menuItem.children);
|
|
804
|
+
} }
|
|
805
|
+
function MenuItemWithChildrenComponent_Conditional_0_For_6_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
806
|
+
i0.ɵɵelementContainer(0);
|
|
807
|
+
} }
|
|
808
|
+
function MenuItemWithChildrenComponent_Conditional_0_For_6_Template(rf, ctx) { if (rf & 1) {
|
|
809
|
+
i0.ɵɵtemplate(0, MenuItemWithChildrenComponent_Conditional_0_For_6_ng_container_0_Template, 1, 0, "ng-container", 13);
|
|
810
|
+
} if (rf & 2) {
|
|
811
|
+
const child_r4 = ctx.$implicit;
|
|
812
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
813
|
+
const menuItemBtn_r5 = i0.ɵɵreference(3);
|
|
814
|
+
const menuItemLink_r6 = i0.ɵɵreference(5);
|
|
815
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.menuItem.clickAction ? menuItemBtn_r5 : menuItemLink_r6)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c0$2, child_r4));
|
|
816
|
+
} }
|
|
817
|
+
function MenuItemWithChildrenComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
818
|
+
const _r1 = i0.ɵɵgetCurrentView();
|
|
819
|
+
i0.ɵɵelementStart(0, "button", 5);
|
|
820
|
+
i0.ɵɵpipe(1, "translate");
|
|
821
|
+
i0.ɵɵlistener("click", function MenuItemWithChildrenComponent_Conditional_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.toggleItemExpand(ctx_r1.menuItem)); });
|
|
822
|
+
i0.ɵɵtemplate(2, MenuItemWithChildrenComponent_Conditional_0_ng_container_2_Template, 2, 1, "ng-container", 6)(3, MenuItemWithChildrenComponent_Conditional_0_ng_container_3_Template, 6, 4, "ng-container", 6);
|
|
823
|
+
i0.ɵɵelementEnd();
|
|
824
|
+
i0.ɵɵelementStart(4, "div", 7);
|
|
825
|
+
i0.ɵɵrepeaterCreate(5, MenuItemWithChildrenComponent_Conditional_0_For_6_Template, 1, 4, "ng-container", null, i0.ɵɵrepeaterTrackByIndex);
|
|
826
|
+
i0.ɵɵelementEnd();
|
|
827
|
+
} if (rf & 2) {
|
|
828
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
829
|
+
i0.ɵɵclassProp("menu-labels-visible", ctx_r1.labelsVisible)("active-menu-item", (ctx_r1.activeItem == null ? null : ctx_r1.activeItem.link) && ctx_r1.menuItem === ctx_r1.activeItem);
|
|
830
|
+
i0.ɵɵproperty("matTooltip", !ctx_r1.labelsVisible ? i0.ɵɵpipeBind1(1, 13, ctx_r1.menuItem.title) : "")("fxLayout", ctx_r1.menuItemLayout)("fxLayoutAlign", ctx_r1.menuLayoutDirection)("ngClass.lt-md", "mob-menu-item");
|
|
831
|
+
i0.ɵɵattribute("id", ctx_r1.menuItem.customId);
|
|
832
|
+
i0.ɵɵadvance(2);
|
|
833
|
+
i0.ɵɵproperty("ngIf", ctx_r1.showIcons && ctx_r1.menuItem.icon);
|
|
834
|
+
i0.ɵɵadvance();
|
|
835
|
+
i0.ɵɵproperty("ngIf", ctx_r1.labelsVisible);
|
|
836
|
+
i0.ɵɵadvance();
|
|
837
|
+
i0.ɵɵclassProp("open", ctx_r1.menuItem.expanded && ctx_r1.labelsVisible);
|
|
838
|
+
i0.ɵɵadvance();
|
|
839
|
+
i0.ɵɵrepeater(ctx_r1.menuItem.children);
|
|
840
|
+
} }
|
|
841
|
+
function MenuItemWithChildrenComponent_Conditional_1_ng_container_3_Template(rf, ctx) { if (rf & 1) {
|
|
842
|
+
i0.ɵɵelementContainerStart(0);
|
|
843
|
+
i0.ɵɵelement(1, "tld-menu-icon", 8);
|
|
844
|
+
i0.ɵɵelementContainerEnd();
|
|
845
|
+
} if (rf & 2) {
|
|
846
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
847
|
+
i0.ɵɵadvance();
|
|
848
|
+
i0.ɵɵproperty("menuItem", ctx_r1.menuItem);
|
|
849
|
+
} }
|
|
850
|
+
function MenuItemWithChildrenComponent_Conditional_1_ng_container_4_ng_container_5_span_1_Template(rf, ctx) { if (rf & 1) {
|
|
851
|
+
i0.ɵɵelementStart(0, "span", 12);
|
|
852
|
+
i0.ɵɵtext(1, "keyboard_arrow_down");
|
|
853
|
+
i0.ɵɵelementEnd();
|
|
854
|
+
} }
|
|
855
|
+
function MenuItemWithChildrenComponent_Conditional_1_ng_container_4_ng_container_5_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
856
|
+
i0.ɵɵelementStart(0, "span", 12);
|
|
857
|
+
i0.ɵɵtext(1, " keyboard_arrow_up ");
|
|
858
|
+
i0.ɵɵelementEnd();
|
|
859
|
+
} }
|
|
860
|
+
function MenuItemWithChildrenComponent_Conditional_1_ng_container_4_ng_container_5_Template(rf, ctx) { if (rf & 1) {
|
|
861
|
+
i0.ɵɵelementContainerStart(0);
|
|
862
|
+
i0.ɵɵtemplate(1, MenuItemWithChildrenComponent_Conditional_1_ng_container_4_ng_container_5_span_1_Template, 2, 0, "span", 11)(2, MenuItemWithChildrenComponent_Conditional_1_ng_container_4_ng_container_5_ng_template_2_Template, 2, 0, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor);
|
|
863
|
+
i0.ɵɵelementContainerEnd();
|
|
864
|
+
} if (rf & 2) {
|
|
865
|
+
const iconDown_r8 = i0.ɵɵreference(3);
|
|
866
|
+
i0.ɵɵnextContext(2);
|
|
867
|
+
const state_r9 = i0.ɵɵreference(1);
|
|
868
|
+
i0.ɵɵadvance();
|
|
869
|
+
i0.ɵɵproperty("ngIf", state_r9.menuOpen)("ngIfElse", iconDown_r8);
|
|
870
|
+
} }
|
|
871
|
+
function MenuItemWithChildrenComponent_Conditional_1_ng_container_4_Template(rf, ctx) { if (rf & 1) {
|
|
872
|
+
i0.ɵɵelementContainerStart(0);
|
|
873
|
+
i0.ɵɵelementStart(1, "span", 9)(2, "span", 10);
|
|
874
|
+
i0.ɵɵtext(3);
|
|
875
|
+
i0.ɵɵpipe(4, "translate");
|
|
876
|
+
i0.ɵɵelementEnd()();
|
|
877
|
+
i0.ɵɵtemplate(5, MenuItemWithChildrenComponent_Conditional_1_ng_container_4_ng_container_5_Template, 4, 2, "ng-container", 6);
|
|
878
|
+
i0.ɵɵelementContainerEnd();
|
|
879
|
+
} if (rf & 2) {
|
|
880
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
881
|
+
i0.ɵɵadvance(3);
|
|
882
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 2, ctx_r1.menuItem.title));
|
|
883
|
+
i0.ɵɵadvance(2);
|
|
884
|
+
i0.ɵɵproperty("ngIf", ctx_r1.menuItem.showChildren && ctx_r1.menuItem.children);
|
|
885
|
+
} }
|
|
886
|
+
function MenuItemWithChildrenComponent_Conditional_1_For_8_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
887
|
+
i0.ɵɵelementContainer(0);
|
|
888
|
+
} }
|
|
889
|
+
function MenuItemWithChildrenComponent_Conditional_1_For_8_Template(rf, ctx) { if (rf & 1) {
|
|
890
|
+
i0.ɵɵelementStart(0, "div", 16);
|
|
891
|
+
i0.ɵɵtemplate(1, MenuItemWithChildrenComponent_Conditional_1_For_8_ng_container_1_Template, 1, 0, "ng-container", 13);
|
|
892
|
+
i0.ɵɵelementEnd();
|
|
893
|
+
} if (rf & 2) {
|
|
894
|
+
const child_r10 = ctx.$implicit;
|
|
895
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
896
|
+
const menuItemBtn_r5 = i0.ɵɵreference(3);
|
|
897
|
+
const menuItemLink_r6 = i0.ɵɵreference(5);
|
|
898
|
+
i0.ɵɵadvance();
|
|
899
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.menuItem.clickAction ? menuItemBtn_r5 : menuItemLink_r6)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c0$2, child_r10));
|
|
900
|
+
} }
|
|
901
|
+
function MenuItemWithChildrenComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
902
|
+
const _r7 = i0.ɵɵgetCurrentView();
|
|
903
|
+
i0.ɵɵelementStart(0, "button", 14, 3);
|
|
904
|
+
i0.ɵɵpipe(2, "translate");
|
|
905
|
+
i0.ɵɵlistener("click", function MenuItemWithChildrenComponent_Conditional_1_Template_button_click_0_listener($event) { i0.ɵɵrestoreView(_r7); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.toggleMenuExpand($event, ctx_r1.menuItem)); });
|
|
906
|
+
i0.ɵɵtemplate(3, MenuItemWithChildrenComponent_Conditional_1_ng_container_3_Template, 2, 1, "ng-container", 6)(4, MenuItemWithChildrenComponent_Conditional_1_ng_container_4_Template, 6, 4, "ng-container", 6);
|
|
907
|
+
i0.ɵɵelementEnd();
|
|
908
|
+
i0.ɵɵelementStart(5, "mat-menu", 15, 4);
|
|
909
|
+
i0.ɵɵrepeaterCreate(7, MenuItemWithChildrenComponent_Conditional_1_For_8_Template, 2, 4, "div", 16, i0.ɵɵrepeaterTrackByIndex);
|
|
910
|
+
i0.ɵɵelementEnd();
|
|
911
|
+
} if (rf & 2) {
|
|
912
|
+
const state_r9 = i0.ɵɵreference(1);
|
|
913
|
+
const menu_r11 = i0.ɵɵreference(6);
|
|
914
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
915
|
+
i0.ɵɵclassProp("menu-labels-visible", ctx_r1.labelsVisible)("active-menu-item", (ctx_r1.activeItem == null ? null : ctx_r1.activeItem.link) && ctx_r1.menuItem === ctx_r1.activeItem || state_r9.menuOpen);
|
|
916
|
+
i0.ɵɵproperty("matTooltip", !ctx_r1.labelsVisible ? i0.ɵɵpipeBind1(2, 12, ctx_r1.menuItem.title) : "")("fxLayout", ctx_r1.menuItemLayout)("fxLayoutAlign", ctx_r1.menuLayoutDirection)("matMenuTriggerFor", menu_r11)("ngClass.lt-md", "mob-menu-item");
|
|
917
|
+
i0.ɵɵattribute("id", ctx_r1.menuItem.customId);
|
|
918
|
+
i0.ɵɵadvance(3);
|
|
919
|
+
i0.ɵɵproperty("ngIf", ctx_r1.showIcons && ctx_r1.menuItem.icon);
|
|
920
|
+
i0.ɵɵadvance();
|
|
921
|
+
i0.ɵɵproperty("ngIf", ctx_r1.labelsVisible);
|
|
922
|
+
i0.ɵɵadvance(3);
|
|
923
|
+
i0.ɵɵrepeater(ctx_r1.menuItem.children);
|
|
924
|
+
} }
|
|
925
|
+
function MenuItemWithChildrenComponent_ng_template_2_lib_menu_item_btn_0_Template(rf, ctx) { if (rf & 1) {
|
|
926
|
+
i0.ɵɵelement(0, "lib-menu-item-btn", 18);
|
|
927
|
+
} if (rf & 2) {
|
|
928
|
+
const menuItem_r12 = i0.ɵɵnextContext().menuItem;
|
|
929
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
930
|
+
i0.ɵɵproperty("ngClass.lt-md", "mob-menu-item")("menuItem", menuItem_r12)("direction", ctx_r1.direction)("activeItem", ctx_r1.activeItem);
|
|
931
|
+
} }
|
|
932
|
+
function MenuItemWithChildrenComponent_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
933
|
+
i0.ɵɵtemplate(0, MenuItemWithChildrenComponent_ng_template_2_lib_menu_item_btn_0_Template, 1, 4, "lib-menu-item-btn", 17);
|
|
934
|
+
} if (rf & 2) {
|
|
935
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
936
|
+
i0.ɵɵproperty("ngIf", ctx_r1.labelsVisible);
|
|
937
|
+
} }
|
|
938
|
+
function MenuItemWithChildrenComponent_ng_template_4_Template(rf, ctx) { if (rf & 1) {
|
|
939
|
+
i0.ɵɵelement(0, "tld-menu-item-link", 19);
|
|
940
|
+
} if (rf & 2) {
|
|
941
|
+
const menuItem_r13 = ctx.menuItem;
|
|
942
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
943
|
+
i0.ɵɵproperty("ngClass.lt-md", "mob-menu-item")("menuItem", menuItem_r13)("direction", ctx_r1.direction)("labelsVisible", true)("activeItem", ctx_r1.activeItem)("showIcons", ctx_r1.showIcons);
|
|
944
|
+
} }
|
|
945
|
+
class MenuItemWithChildrenComponent {
|
|
946
|
+
constructor() {
|
|
947
|
+
this.openMenu = new EventEmitter();
|
|
948
|
+
this.toggleExpand = new EventEmitter();
|
|
949
|
+
}
|
|
950
|
+
toggleMenuExpand(event, menuItem) {
|
|
951
|
+
// so menu doesnt get closed.
|
|
952
|
+
event.stopPropagation();
|
|
953
|
+
if (this.labelsVisible || !menuItem.expanded) {
|
|
954
|
+
menuItem.expanded = !menuItem.expanded;
|
|
955
|
+
}
|
|
956
|
+
this.toggleExpand.next(menuItem);
|
|
957
|
+
}
|
|
958
|
+
toggleItemExpand(menuItem) {
|
|
959
|
+
if (this.labelsVisible || !menuItem.expanded) {
|
|
960
|
+
menuItem.expanded = !menuItem.expanded;
|
|
961
|
+
}
|
|
962
|
+
if (!this.labelsVisible) {
|
|
963
|
+
this.openMenu.emit();
|
|
964
|
+
}
|
|
965
|
+
this.toggleExpand.next(menuItem);
|
|
966
|
+
}
|
|
967
|
+
static { this.ɵfac = function MenuItemWithChildrenComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MenuItemWithChildrenComponent)(); }; }
|
|
968
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuItemWithChildrenComponent, selectors: [["lib-menu-item-with-children"]], inputs: { menuItem: "menuItem", labelsVisible: "labelsVisible", showIcons: "showIcons", menuLayoutDirection: "menuLayoutDirection", menuItemLayout: "menuItemLayout", activeItem: "activeItem", direction: "direction", expandableMenuChildren: "expandableMenuChildren" }, outputs: { openMenu: "openMenu", toggleExpand: "toggleExpand" }, standalone: false, decls: 6, vars: 1, consts: [["menuItemBtn", ""], ["menuItemLink", ""], ["iconDown", ""], ["state", "matMenuTrigger"], ["menu", "matMenu"], ["matTooltipClass", "menu-tooltip", "matTooltipPosition", "after", 1, "text-m", "menu-item", "menu-parent-item", 3, "click", "matTooltip", "fxLayout", "fxLayoutAlign", "ngClass.lt-md"], [4, "ngIf"], [1, "child-list"], [3, "menuItem"], [1, "menu-item-title"], [1, "title-content"], ["class", "material-icons spin arrow-icon", 4, "ngIf", "ngIfElse"], [1, "material-icons", "spin", "arrow-icon"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], ["matTooltipClass", "menu-tooltip", "matTooltipPosition", "after", 1, "text-m", "menu-item", "menu-parent-item", 3, "click", "matTooltip", "fxLayout", "fxLayoutAlign", "matMenuTriggerFor", "ngClass.lt-md"], [1, "child-menu"], ["mat-menu-item", ""], [3, "ngClass.lt-md", "menuItem", "direction", "activeItem", 4, "ngIf"], [3, "ngClass.lt-md", "menuItem", "direction", "activeItem"], [3, "ngClass.lt-md", "menuItem", "direction", "labelsVisible", "activeItem", "showIcons"]], template: function MenuItemWithChildrenComponent_Template(rf, ctx) { if (rf & 1) {
|
|
969
|
+
i0.ɵɵconditionalCreate(0, MenuItemWithChildrenComponent_Conditional_0_Template, 7, 15)(1, MenuItemWithChildrenComponent_Conditional_1_Template, 9, 14);
|
|
970
|
+
i0.ɵɵtemplate(2, MenuItemWithChildrenComponent_ng_template_2_Template, 1, 1, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor)(4, MenuItemWithChildrenComponent_ng_template_4_Template, 1, 6, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor);
|
|
971
|
+
} if (rf & 2) {
|
|
972
|
+
i0.ɵɵconditional(ctx.expandableMenuChildren ? 0 : 1);
|
|
973
|
+
} }, dependencies: [i1$2.DefaultLayoutDirective, i1$2.DefaultLayoutAlignDirective, i2$2.DefaultClassDirective, i3.NgIf, i3.NgTemplateOutlet, i5.MatTooltip, i5$1.MatMenu, i5$1.MatMenuItem, i5$1.MatMenuTrigger, MenuIconComponent, MenuItemLinkComponent, MenuItemBtnComponent, i8.TranslatePipe], styles: [".spin[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_spinArrow .3s forwards}@keyframes _ngcontent-%COMP%_spinArrow{to{transform:rotate(180deg)}}[_nghost-%COMP%]{width:100%}.child-list[_ngcontent-%COMP%]{max-height:0;opacity:0;overflow:hidden;transition:max-height .3s,opacity .3s}.child-list.open[_ngcontent-%COMP%]{max-height:500px;opacity:1;overflow:hidden;transition:max-height .3s,opacity .3s}"] }); }
|
|
974
|
+
}
|
|
975
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MenuItemWithChildrenComponent, [{
|
|
976
|
+
type: Component,
|
|
977
|
+
args: [{ selector: 'lib-menu-item-with-children', standalone: false, template: "@if (expandableMenuChildren) {\r\n<button\r\n\tmatTooltipClass=\"menu-tooltip\"\r\n\tmatTooltipPosition=\"after\"\r\n\t[matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\"\r\n\t[fxLayout]=\"menuItemLayout\"\r\n\t[fxLayoutAlign]=\"menuLayoutDirection\"\r\n\t[attr.id]=\"menuItem.customId\"\r\n\tclass=\"text-m menu-item menu-parent-item\"\r\n\t[class.menu-labels-visible]=\"labelsVisible\"\r\n\t[class.active-menu-item]=\"activeItem?.link && menuItem === activeItem\"\r\n\t[ngClass.lt-md]=\"'mob-menu-item'\"\r\n\t(click)=\"toggleItemExpand(menuItem)\"\r\n>\r\n\t<ng-container *ngIf=\"showIcons && menuItem.icon\">\r\n\t\t<tld-menu-icon [menuItem]=\"menuItem\"></tld-menu-icon>\r\n\t</ng-container>\r\n\t<ng-container *ngIf=\"labelsVisible\">\r\n\t\t<span class=\"menu-item-title\">\r\n\t\t\t<span class=\"title-content\">{{ menuItem.title | translate }}</span></span\r\n\t\t>\r\n\t\t<ng-container *ngIf=\"menuItem.children\">\r\n\t\t\t<span *ngIf=\"menuItem.expanded; else iconDown\" class=\"material-icons spin arrow-icon\">keyboard_arrow_down</span>\r\n\r\n\t\t\t<ng-template #iconDown>\r\n\t\t\t\t<span class=\"material-icons spin arrow-icon\"> keyboard_arrow_up </span>\r\n\t\t\t</ng-template>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n</button>\r\n\r\n\t\t<div class=\"child-list\" [class.open]=\"menuItem.expanded && labelsVisible\">\r\n\t\t\t@for (child of menuItem.children; track $index) {\r\n\t\t\t\t<ng-container *ngTemplateOutlet=\"menuItem.clickAction ? menuItemBtn : menuItemLink; context: { menuItem: child }\"> </ng-container>\r\n\t\t\t}\r\n\t\t</div>\r\n} @else {\r\n<button\r\n\tmatTooltipClass=\"menu-tooltip\"\r\n\tmatTooltipPosition=\"after\"\r\n\t[matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\"\r\n\t[fxLayout]=\"menuItemLayout\"\r\n\t[fxLayoutAlign]=\"menuLayoutDirection\"\r\n\t#state=\"matMenuTrigger\"\r\n\t[matMenuTriggerFor]=\"menu\"\r\n\t[attr.id]=\"menuItem.customId\"\r\n\tclass=\"text-m menu-item menu-parent-item\"\r\n\t[class.menu-labels-visible]=\"labelsVisible\"\r\n\t[class.active-menu-item]=\"(activeItem?.link && menuItem === activeItem) || state.menuOpen\"\r\n\t[ngClass.lt-md]=\"'mob-menu-item'\"\r\n\t(click)=\"toggleMenuExpand($event, menuItem)\"\r\n>\r\n\t<ng-container *ngIf=\"showIcons && menuItem.icon\">\r\n\t\t<tld-menu-icon [menuItem]=\"menuItem\"></tld-menu-icon>\r\n\t</ng-container>\r\n\t<ng-container *ngIf=\"labelsVisible\">\r\n\t\t<span class=\"menu-item-title\">\r\n\t\t\t<span class=\"title-content\">{{ menuItem.title | translate }}</span></span\r\n\t\t>\r\n\t\t<ng-container *ngIf=\"menuItem.showChildren && menuItem.children\">\r\n\t\t\t<span *ngIf=\"state.menuOpen; else iconDown\" class=\"material-icons spin arrow-icon\">keyboard_arrow_down</span>\r\n\r\n\t\t\t<ng-template #iconDown>\r\n\t\t\t\t<span class=\"material-icons spin arrow-icon\"> keyboard_arrow_up </span>\r\n\t\t\t</ng-template>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n</button>\r\n<mat-menu #menu=\"matMenu\" class=\"child-menu\">\r\n\t@for (child of menuItem.children; track $index) {\r\n\t<div mat-menu-item>\r\n\t\t<ng-container *ngTemplateOutlet=\"menuItem.clickAction ? menuItemBtn : menuItemLink; context: { menuItem: child }\"> </ng-container>\r\n\t</div>\r\n\t}\r\n</mat-menu>\r\n}\r\n\r\n<ng-template #menuItemBtn let-menuItem=\"menuItem\">\r\n\t<lib-menu-item-btn *ngIf=\"labelsVisible\" [ngClass.lt-md]=\"'mob-menu-item'\" [menuItem]=\"menuItem\" [direction]=\"direction\" [activeItem]=\"activeItem\"></lib-menu-item-btn>\r\n</ng-template>\r\n\r\n<ng-template #menuItemLink let-menuItem=\"menuItem\">\r\n\t<tld-menu-item-link\r\n\t\t[ngClass.lt-md]=\"'mob-menu-item'\"\r\n\t\t[menuItem]=\"menuItem\"\r\n\t\t[direction]=\"direction\"\r\n\t\t[labelsVisible]=\"true\"\r\n\t\t[activeItem]=\"activeItem\"\r\n\t\t[showIcons]=\"showIcons\"\r\n\t></tld-menu-item-link>\r\n</ng-template>\r\n", styles: [".spin{animation:spinArrow .3s forwards}@keyframes spinArrow{to{transform:rotate(180deg)}}:host{width:100%}.child-list{max-height:0;opacity:0;overflow:hidden;transition:max-height .3s,opacity .3s}.child-list.open{max-height:500px;opacity:1;overflow:hidden;transition:max-height .3s,opacity .3s}\n"] }]
|
|
978
|
+
}], null, { menuItem: [{
|
|
979
|
+
type: Input
|
|
980
|
+
}], labelsVisible: [{
|
|
981
|
+
type: Input
|
|
982
|
+
}], showIcons: [{
|
|
983
|
+
type: Input
|
|
984
|
+
}], menuLayoutDirection: [{
|
|
985
|
+
type: Input
|
|
986
|
+
}], menuItemLayout: [{
|
|
987
|
+
type: Input
|
|
988
|
+
}], activeItem: [{
|
|
989
|
+
type: Input
|
|
990
|
+
}], direction: [{
|
|
991
|
+
type: Input
|
|
992
|
+
}], expandableMenuChildren: [{
|
|
993
|
+
type: Input
|
|
994
|
+
}], openMenu: [{
|
|
995
|
+
type: Output
|
|
996
|
+
}], toggleExpand: [{
|
|
997
|
+
type: Output
|
|
998
|
+
}] }); })();
|
|
999
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MenuItemWithChildrenComponent, { className: "MenuItemWithChildrenComponent", filePath: "lib/components/menu-item-list/menu-item-with-children/menu-item-with-children.component.ts", lineNumber: 10 }); })();
|
|
1000
|
+
|
|
690
1001
|
const _c0$1 = a0 => ({ menuItem: a0 });
|
|
691
|
-
const _c1 = a0 => ({ menuItem: a0, isChild: true });
|
|
692
1002
|
function MenuItemListComponent_Conditional_1_mat_icon_1_Template(rf, ctx) { if (rf & 1) {
|
|
693
|
-
i0.ɵɵelementStart(0, "mat-icon",
|
|
1003
|
+
i0.ɵɵelementStart(0, "mat-icon", 10);
|
|
694
1004
|
i0.ɵɵtext(1);
|
|
695
1005
|
i0.ɵɵelementEnd();
|
|
696
1006
|
} if (rf & 2) {
|
|
@@ -699,7 +1009,7 @@ function MenuItemListComponent_Conditional_1_mat_icon_1_Template(rf, ctx) { if (
|
|
|
699
1009
|
i0.ɵɵtextInterpolate1(" ", ctx_r0.menuItemGroup.titleIcon, " ");
|
|
700
1010
|
} }
|
|
701
1011
|
function MenuItemListComponent_Conditional_1_button_2_Template(rf, ctx) { if (rf & 1) {
|
|
702
|
-
i0.ɵɵelementStart(0, "button",
|
|
1012
|
+
i0.ɵɵelementStart(0, "button", 11);
|
|
703
1013
|
i0.ɵɵpipe(1, "translate");
|
|
704
1014
|
i0.ɵɵelementStart(2, "mat-icon");
|
|
705
1015
|
i0.ɵɵtext(3);
|
|
@@ -711,8 +1021,8 @@ function MenuItemListComponent_Conditional_1_button_2_Template(rf, ctx) { if (rf
|
|
|
711
1021
|
i0.ɵɵtextInterpolate(ctx_r0.menuItemGroup.titleNavigation.icon);
|
|
712
1022
|
} }
|
|
713
1023
|
function MenuItemListComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
714
|
-
i0.ɵɵelementStart(0, "div",
|
|
715
|
-
i0.ɵɵtemplate(1, MenuItemListComponent_Conditional_1_mat_icon_1_Template, 2, 1, "mat-icon",
|
|
1024
|
+
i0.ɵɵelementStart(0, "div", 5);
|
|
1025
|
+
i0.ɵɵtemplate(1, MenuItemListComponent_Conditional_1_mat_icon_1_Template, 2, 1, "mat-icon", 8)(2, MenuItemListComponent_Conditional_1_button_2_Template, 4, 5, "button", 9);
|
|
716
1026
|
i0.ɵɵtext(3);
|
|
717
1027
|
i0.ɵɵpipe(4, "translate");
|
|
718
1028
|
i0.ɵɵelementEnd();
|
|
@@ -729,7 +1039,7 @@ function MenuItemListComponent_Conditional_2_ng_container_0_Template(rf, ctx) {
|
|
|
729
1039
|
i0.ɵɵelementContainer(0);
|
|
730
1040
|
} }
|
|
731
1041
|
function MenuItemListComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
732
|
-
i0.ɵɵtemplate(0, MenuItemListComponent_Conditional_2_ng_container_0_Template, 1, 0, "ng-container",
|
|
1042
|
+
i0.ɵɵtemplate(0, MenuItemListComponent_Conditional_2_ng_container_0_Template, 1, 0, "ng-container", 12);
|
|
733
1043
|
} if (rf & 2) {
|
|
734
1044
|
i0.ɵɵnextContext();
|
|
735
1045
|
const itemGroupButton_r2 = i0.ɵɵreference(12);
|
|
@@ -740,7 +1050,7 @@ function MenuItemListComponent_ng_container_4_ng_container_1_Template(rf, ctx) {
|
|
|
740
1050
|
} }
|
|
741
1051
|
function MenuItemListComponent_ng_container_4_Template(rf, ctx) { if (rf & 1) {
|
|
742
1052
|
i0.ɵɵelementContainerStart(0);
|
|
743
|
-
i0.ɵɵtemplate(1, MenuItemListComponent_ng_container_4_ng_container_1_Template, 1, 0, "ng-container",
|
|
1053
|
+
i0.ɵɵtemplate(1, MenuItemListComponent_ng_container_4_ng_container_1_Template, 1, 0, "ng-container", 13);
|
|
744
1054
|
i0.ɵɵelementContainerEnd();
|
|
745
1055
|
} if (rf & 2) {
|
|
746
1056
|
const menuItem_r3 = ctx.$implicit;
|
|
@@ -751,115 +1061,38 @@ function MenuItemListComponent_ng_container_4_Template(rf, ctx) { if (rf & 1) {
|
|
|
751
1061
|
i0.ɵɵadvance();
|
|
752
1062
|
i0.ɵɵproperty("ngTemplateOutlet", !menuItem_r3.showChildren || !menuItem_r3.children || (menuItem_r3 == null ? null : menuItem_r3.children == null ? null : menuItem_r3.children.length) === 0 ? menuItem_r3.clickAction ? menuItemBtn_r6 : menuItemLink_r5 : itemWithChildren_r4)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c0$1, menuItem_r3));
|
|
753
1063
|
} }
|
|
754
|
-
function MenuItemListComponent_ng_template_5_ng_container_3_Template(rf, ctx) { if (rf & 1) {
|
|
755
|
-
i0.ɵɵelementContainerStart(0);
|
|
756
|
-
i0.ɵɵelement(1, "tld-menu-icon", 21);
|
|
757
|
-
i0.ɵɵelementContainerEnd();
|
|
758
|
-
} if (rf & 2) {
|
|
759
|
-
const menuItem_r8 = i0.ɵɵnextContext().menuItem;
|
|
760
|
-
i0.ɵɵadvance();
|
|
761
|
-
i0.ɵɵproperty("menuItem", menuItem_r8);
|
|
762
|
-
} }
|
|
763
|
-
function MenuItemListComponent_ng_template_5_ng_container_4_ng_container_5_span_1_Template(rf, ctx) { if (rf & 1) {
|
|
764
|
-
i0.ɵɵelementStart(0, "span", 25);
|
|
765
|
-
i0.ɵɵtext(1, "keyboard_arrow_down");
|
|
766
|
-
i0.ɵɵelementEnd();
|
|
767
|
-
} }
|
|
768
|
-
function MenuItemListComponent_ng_template_5_ng_container_4_ng_container_5_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
769
|
-
i0.ɵɵelementStart(0, "span", 25);
|
|
770
|
-
i0.ɵɵtext(1, " keyboard_arrow_up ");
|
|
771
|
-
i0.ɵɵelementEnd();
|
|
772
|
-
} }
|
|
773
|
-
function MenuItemListComponent_ng_template_5_ng_container_4_ng_container_5_Template(rf, ctx) { if (rf & 1) {
|
|
774
|
-
i0.ɵɵelementContainerStart(0);
|
|
775
|
-
i0.ɵɵtemplate(1, MenuItemListComponent_ng_template_5_ng_container_4_ng_container_5_span_1_Template, 2, 0, "span", 24)(2, MenuItemListComponent_ng_template_5_ng_container_4_ng_container_5_ng_template_2_Template, 2, 0, "ng-template", null, 6, i0.ɵɵtemplateRefExtractor);
|
|
776
|
-
i0.ɵɵelementContainerEnd();
|
|
777
|
-
} if (rf & 2) {
|
|
778
|
-
const iconDown_r9 = i0.ɵɵreference(3);
|
|
779
|
-
i0.ɵɵnextContext(2);
|
|
780
|
-
const state_r10 = i0.ɵɵreference(1);
|
|
781
|
-
i0.ɵɵadvance();
|
|
782
|
-
i0.ɵɵproperty("ngIf", state_r10.menuOpen)("ngIfElse", iconDown_r9);
|
|
783
|
-
} }
|
|
784
|
-
function MenuItemListComponent_ng_template_5_ng_container_4_Template(rf, ctx) { if (rf & 1) {
|
|
785
|
-
i0.ɵɵelementContainerStart(0);
|
|
786
|
-
i0.ɵɵelementStart(1, "span", 22)(2, "span", 23);
|
|
787
|
-
i0.ɵɵtext(3);
|
|
788
|
-
i0.ɵɵpipe(4, "translate");
|
|
789
|
-
i0.ɵɵelementEnd()();
|
|
790
|
-
i0.ɵɵtemplate(5, MenuItemListComponent_ng_template_5_ng_container_4_ng_container_5_Template, 4, 2, "ng-container", 18);
|
|
791
|
-
i0.ɵɵelementContainerEnd();
|
|
792
|
-
} if (rf & 2) {
|
|
793
|
-
const menuItem_r8 = i0.ɵɵnextContext().menuItem;
|
|
794
|
-
i0.ɵɵadvance(3);
|
|
795
|
-
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(4, 2, menuItem_r8.title));
|
|
796
|
-
i0.ɵɵadvance(2);
|
|
797
|
-
i0.ɵɵproperty("ngIf", menuItem_r8.showChildren && menuItem_r8.children);
|
|
798
|
-
} }
|
|
799
|
-
function MenuItemListComponent_ng_template_5_For_8_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
800
|
-
i0.ɵɵelementContainer(0);
|
|
801
|
-
} }
|
|
802
|
-
function MenuItemListComponent_ng_template_5_For_8_Template(rf, ctx) { if (rf & 1) {
|
|
803
|
-
i0.ɵɵelementStart(0, "div", 20);
|
|
804
|
-
i0.ɵɵtemplate(1, MenuItemListComponent_ng_template_5_For_8_ng_container_1_Template, 1, 0, "ng-container", 16);
|
|
805
|
-
i0.ɵɵelementEnd();
|
|
806
|
-
} if (rf & 2) {
|
|
807
|
-
const child_r11 = ctx.$implicit;
|
|
808
|
-
const menuItem_r8 = i0.ɵɵnextContext().menuItem;
|
|
809
|
-
i0.ɵɵnextContext();
|
|
810
|
-
const menuItemLink_r5 = i0.ɵɵreference(8);
|
|
811
|
-
const menuItemBtn_r6 = i0.ɵɵreference(10);
|
|
812
|
-
i0.ɵɵadvance();
|
|
813
|
-
i0.ɵɵproperty("ngTemplateOutlet", menuItem_r8.clickAction ? menuItemBtn_r6 : menuItemLink_r5)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c1, child_r11));
|
|
814
|
-
} }
|
|
815
1064
|
function MenuItemListComponent_ng_template_5_Template(rf, ctx) { if (rf & 1) {
|
|
816
1065
|
const _r7 = i0.ɵɵgetCurrentView();
|
|
817
|
-
i0.ɵɵelementStart(0, "
|
|
818
|
-
i0.ɵɵ
|
|
819
|
-
i0.ɵɵlistener("click", function MenuItemListComponent_ng_template_5_Template_button_click_0_listener($event) { const menuItem_r8 = i0.ɵɵrestoreView(_r7).menuItem; const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.toggleItemExpand($event, menuItem_r8)); });
|
|
820
|
-
i0.ɵɵtemplate(3, MenuItemListComponent_ng_template_5_ng_container_3_Template, 2, 1, "ng-container", 18)(4, MenuItemListComponent_ng_template_5_ng_container_4_Template, 6, 4, "ng-container", 18);
|
|
821
|
-
i0.ɵɵelementEnd();
|
|
822
|
-
i0.ɵɵelementStart(5, "mat-menu", 19, 5);
|
|
823
|
-
i0.ɵɵrepeaterCreate(7, MenuItemListComponent_ng_template_5_For_8_Template, 2, 4, "div", 20, i0.ɵɵrepeaterTrackByIndex);
|
|
1066
|
+
i0.ɵɵelementStart(0, "lib-menu-item-with-children", 14);
|
|
1067
|
+
i0.ɵɵlistener("toggleExpand", function MenuItemListComponent_ng_template_5_Template_lib_menu_item_with_children_toggleExpand_0_listener($event) { i0.ɵɵrestoreView(_r7); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.toggleExpandEvent($event)); })("openMenu", function MenuItemListComponent_ng_template_5_Template_lib_menu_item_with_children_openMenu_0_listener() { i0.ɵɵrestoreView(_r7); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.openMenu()); });
|
|
824
1068
|
i0.ɵɵelementEnd();
|
|
825
1069
|
} if (rf & 2) {
|
|
826
1070
|
const menuItem_r8 = ctx.menuItem;
|
|
827
|
-
const state_r10 = i0.ɵɵreference(1);
|
|
828
|
-
const menu_r12 = i0.ɵɵreference(6);
|
|
829
1071
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
830
|
-
i0.ɵɵ
|
|
831
|
-
i0.ɵɵproperty("matTooltip", !ctx_r0.labelsVisible ? i0.ɵɵpipeBind1(2, 12, menuItem_r8.title) : "")("fxLayout", ctx_r0.menuItemLayout)("fxLayoutAlign", ctx_r0.menuLayoutDirection)("matMenuTriggerFor", menu_r12)("ngClass.lt-md", "mob-menu-item");
|
|
832
|
-
i0.ɵɵattribute("id", menuItem_r8.customId);
|
|
833
|
-
i0.ɵɵadvance(3);
|
|
834
|
-
i0.ɵɵproperty("ngIf", ctx_r0.showIcons && menuItem_r8.icon);
|
|
835
|
-
i0.ɵɵadvance();
|
|
836
|
-
i0.ɵɵproperty("ngIf", ctx_r0.labelsVisible);
|
|
837
|
-
i0.ɵɵadvance(3);
|
|
838
|
-
i0.ɵɵrepeater(menuItem_r8.children);
|
|
1072
|
+
i0.ɵɵproperty("menuItem", menuItem_r8)("labelsVisible", ctx_r0.labelsVisible)("menuLayoutDirection", ctx_r0.menuLayoutDirection)("menuItemLayout", ctx_r0.menuItemLayout)("activeItem", ctx_r0.activeItem)("showIcons", ctx_r0.showIcons)("direction", ctx_r0.direction)("expandableMenuChildren", ctx_r0.expandableMenuChildren);
|
|
839
1073
|
} }
|
|
840
1074
|
function MenuItemListComponent_ng_template_7_Template(rf, ctx) { if (rf & 1) {
|
|
841
|
-
i0.ɵɵelement(0, "tld-menu-item-link",
|
|
1075
|
+
i0.ɵɵelement(0, "tld-menu-item-link", 15);
|
|
842
1076
|
} if (rf & 2) {
|
|
843
|
-
const
|
|
844
|
-
const isChild_r14 = ctx.isChild;
|
|
1077
|
+
const menuItem_r9 = ctx.menuItem;
|
|
845
1078
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
846
|
-
i0.ɵɵproperty("ngClass.lt-md", "mob-menu-item")("menuItem",
|
|
1079
|
+
i0.ɵɵproperty("ngClass.lt-md", "mob-menu-item")("menuItem", menuItem_r9)("direction", ctx_r0.direction)("labelsVisible", ctx_r0.labelsVisible)("activeItem", ctx_r0.activeItem)("showIcons", ctx_r0.showIcons);
|
|
847
1080
|
} }
|
|
848
1081
|
function MenuItemListComponent_ng_template_9_lib_menu_item_btn_0_Template(rf, ctx) { if (rf & 1) {
|
|
849
|
-
i0.ɵɵelement(0, "lib-menu-item-btn",
|
|
1082
|
+
i0.ɵɵelement(0, "lib-menu-item-btn", 17);
|
|
850
1083
|
} if (rf & 2) {
|
|
851
|
-
const
|
|
1084
|
+
const menuItem_r10 = i0.ɵɵnextContext().menuItem;
|
|
852
1085
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
853
|
-
i0.ɵɵproperty("ngClass.lt-md", "mob-menu-item")("menuItem",
|
|
1086
|
+
i0.ɵɵproperty("ngClass.lt-md", "mob-menu-item")("menuItem", menuItem_r10)("direction", ctx_r0.direction)("activeItem", ctx_r0.activeItem);
|
|
854
1087
|
} }
|
|
855
1088
|
function MenuItemListComponent_ng_template_9_Template(rf, ctx) { if (rf & 1) {
|
|
856
|
-
i0.ɵɵtemplate(0, MenuItemListComponent_ng_template_9_lib_menu_item_btn_0_Template, 1, 4, "lib-menu-item-btn",
|
|
1089
|
+
i0.ɵɵtemplate(0, MenuItemListComponent_ng_template_9_lib_menu_item_btn_0_Template, 1, 4, "lib-menu-item-btn", 16);
|
|
857
1090
|
} if (rf & 2) {
|
|
858
1091
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
859
1092
|
i0.ɵɵproperty("ngIf", ctx_r0.labelsVisible);
|
|
860
1093
|
} }
|
|
861
1094
|
function MenuItemListComponent_ng_template_11_button_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
862
|
-
i0.ɵɵelement(0, "mat-icon",
|
|
1095
|
+
i0.ɵɵelement(0, "mat-icon", 21);
|
|
863
1096
|
} if (rf & 2) {
|
|
864
1097
|
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
865
1098
|
i0.ɵɵproperty("svgIcon", ctx_r0.menuItemGroup.itemGroupIcon ?? "");
|
|
@@ -874,7 +1107,7 @@ function MenuItemListComponent_ng_template_11_button_0_Conditional_2_Template(rf
|
|
|
874
1107
|
i0.ɵɵtextInterpolate(ctx_r0.menuItemGroup.itemGroupIcon);
|
|
875
1108
|
} }
|
|
876
1109
|
function MenuItemListComponent_ng_template_11_button_0_span_3_Template(rf, ctx) { if (rf & 1) {
|
|
877
|
-
i0.ɵɵelementStart(0, "span",
|
|
1110
|
+
i0.ɵɵelementStart(0, "span", 23);
|
|
878
1111
|
i0.ɵɵtext(1);
|
|
879
1112
|
i0.ɵɵpipe(2, "translate");
|
|
880
1113
|
i0.ɵɵelementEnd();
|
|
@@ -884,11 +1117,11 @@ function MenuItemListComponent_ng_template_11_button_0_span_3_Template(rf, ctx)
|
|
|
884
1117
|
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 1, ctx_r0.titleKey), " ");
|
|
885
1118
|
} }
|
|
886
1119
|
function MenuItemListComponent_ng_template_11_button_0_Template(rf, ctx) { if (rf & 1) {
|
|
887
|
-
const
|
|
888
|
-
i0.ɵɵelementStart(0, "button",
|
|
889
|
-
i0.ɵɵlistener("click", function MenuItemListComponent_ng_template_11_button_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(
|
|
890
|
-
i0.ɵɵconditionalCreate(1, MenuItemListComponent_ng_template_11_button_0_Conditional_1_Template, 1, 1, "mat-icon",
|
|
891
|
-
i0.ɵɵtemplate(3, MenuItemListComponent_ng_template_11_button_0_span_3_Template, 3, 3, "span",
|
|
1120
|
+
const _r11 = i0.ɵɵgetCurrentView();
|
|
1121
|
+
i0.ɵɵelementStart(0, "button", 20);
|
|
1122
|
+
i0.ɵɵlistener("click", function MenuItemListComponent_ng_template_11_button_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r11); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.menuItemGroup == null ? null : ctx_r0.menuItemGroup.itemGroupClick()); });
|
|
1123
|
+
i0.ɵɵconditionalCreate(1, MenuItemListComponent_ng_template_11_button_0_Conditional_1_Template, 1, 1, "mat-icon", 21)(2, MenuItemListComponent_ng_template_11_button_0_Conditional_2_Template, 2, 1, "mat-icon");
|
|
1124
|
+
i0.ɵɵtemplate(3, MenuItemListComponent_ng_template_11_button_0_span_3_Template, 3, 3, "span", 22);
|
|
892
1125
|
i0.ɵɵelementEnd();
|
|
893
1126
|
} if (rf & 2) {
|
|
894
1127
|
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
@@ -899,7 +1132,7 @@ function MenuItemListComponent_ng_template_11_button_0_Template(rf, ctx) { if (r
|
|
|
899
1132
|
i0.ɵɵproperty("ngIf", ctx_r0.titleKey);
|
|
900
1133
|
} }
|
|
901
1134
|
function MenuItemListComponent_ng_template_11_button_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
902
|
-
i0.ɵɵelement(0, "mat-icon",
|
|
1135
|
+
i0.ɵɵelement(0, "mat-icon", 21);
|
|
903
1136
|
} if (rf & 2) {
|
|
904
1137
|
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
905
1138
|
i0.ɵɵproperty("svgIcon", ctx_r0.menuItemGroup.itemGroupIcon ?? "");
|
|
@@ -914,11 +1147,11 @@ function MenuItemListComponent_ng_template_11_button_1_Conditional_3_Template(rf
|
|
|
914
1147
|
i0.ɵɵtextInterpolate(ctx_r0.menuItemGroup.itemGroupIcon);
|
|
915
1148
|
} }
|
|
916
1149
|
function MenuItemListComponent_ng_template_11_button_1_Template(rf, ctx) { if (rf & 1) {
|
|
917
|
-
const
|
|
918
|
-
i0.ɵɵelementStart(0, "button",
|
|
1150
|
+
const _r12 = i0.ɵɵgetCurrentView();
|
|
1151
|
+
i0.ɵɵelementStart(0, "button", 24);
|
|
919
1152
|
i0.ɵɵpipe(1, "translate");
|
|
920
|
-
i0.ɵɵlistener("click", function MenuItemListComponent_ng_template_11_button_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(
|
|
921
|
-
i0.ɵɵconditionalCreate(2, MenuItemListComponent_ng_template_11_button_1_Conditional_2_Template, 1, 1, "mat-icon",
|
|
1153
|
+
i0.ɵɵlistener("click", function MenuItemListComponent_ng_template_11_button_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r12); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.menuItemGroup == null ? null : ctx_r0.menuItemGroup.itemGroupClick()); });
|
|
1154
|
+
i0.ɵɵconditionalCreate(2, MenuItemListComponent_ng_template_11_button_1_Conditional_2_Template, 1, 1, "mat-icon", 21)(3, MenuItemListComponent_ng_template_11_button_1_Conditional_3_Template, 2, 1, "mat-icon");
|
|
922
1155
|
i0.ɵɵelementEnd();
|
|
923
1156
|
} if (rf & 2) {
|
|
924
1157
|
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
@@ -927,7 +1160,7 @@ function MenuItemListComponent_ng_template_11_button_1_Template(rf, ctx) { if (r
|
|
|
927
1160
|
i0.ɵɵconditional(ctx_r0.menuItemGroup.isCustomItemGroupIcon ? 2 : 3);
|
|
928
1161
|
} }
|
|
929
1162
|
function MenuItemListComponent_ng_template_11_Template(rf, ctx) { if (rf & 1) {
|
|
930
|
-
i0.ɵɵtemplate(0, MenuItemListComponent_ng_template_11_button_0_Template, 4, 4, "button",
|
|
1163
|
+
i0.ɵɵtemplate(0, MenuItemListComponent_ng_template_11_button_0_Template, 4, 4, "button", 18)(1, MenuItemListComponent_ng_template_11_button_1_Template, 4, 4, "button", 19);
|
|
931
1164
|
} if (rf & 2) {
|
|
932
1165
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
933
1166
|
i0.ɵɵproperty("ngIf", ctx_r0.menuItemGroup && ctx_r0.labelsVisible);
|
|
@@ -940,6 +1173,7 @@ class MenuItemListComponent {
|
|
|
940
1173
|
this.labelsVisible = true;
|
|
941
1174
|
this.showIcons = true;
|
|
942
1175
|
this.items = [];
|
|
1176
|
+
this.openMenuTrigger = new EventEmitter();
|
|
943
1177
|
this.toggleExpand = new EventEmitter();
|
|
944
1178
|
}
|
|
945
1179
|
get titleKey() {
|
|
@@ -955,22 +1189,20 @@ class MenuItemListComponent {
|
|
|
955
1189
|
get menuItemLayout() {
|
|
956
1190
|
return this.direction === MenuLayoutDirection.column ? 'column' : 'row';
|
|
957
1191
|
}
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
}
|
|
964
|
-
this.toggleExpand.next(menuItem);
|
|
1192
|
+
toggleExpandEvent(item) {
|
|
1193
|
+
this.toggleExpand.emit(item);
|
|
1194
|
+
}
|
|
1195
|
+
openMenu() {
|
|
1196
|
+
this.openMenuTrigger.emit();
|
|
965
1197
|
}
|
|
966
1198
|
static { this.ɵfac = function MenuItemListComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MenuItemListComponent)(); }; }
|
|
967
|
-
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" }, standalone: false, decls: 13, vars: 3, consts: [["itemWithChildren", ""], ["menuItemLink", ""], ["menuItemBtn", ""], ["itemGroupButton", ""], [
|
|
968
|
-
i0.ɵɵelementStart(0, "div",
|
|
969
|
-
i0.ɵɵconditionalCreate(1, MenuItemListComponent_Conditional_1_Template, 5, 5, "div",
|
|
970
|
-
i0.ɵɵelementStart(3, "div",
|
|
971
|
-
i0.ɵɵtemplate(4, MenuItemListComponent_ng_container_4_Template, 2, 4, "ng-container",
|
|
1199
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuItemListComponent, selectors: [["menu-item-list"]], inputs: { direction: "direction", labelsVisible: "labelsVisible", activeItem: "activeItem", showIcons: "showIcons", expandableMenuChildren: "expandableMenuChildren", items: "items", menuItemGroup: "menuItemGroup" }, outputs: { openMenuTrigger: "openMenuTrigger", toggleExpand: "toggleExpand" }, standalone: false, decls: 13, vars: 3, consts: [["itemWithChildren", ""], ["menuItemLink", ""], ["menuItemBtn", ""], ["itemGroupButton", ""], [1, "menu-list-wrapper"], ["fxLayoutAlign", "start center", 1, "menu-item-list-title"], ["fxLayout", "column", 1, "menu-item-list", 3, "fxLayoutAlign"], [4, "ngFor", "ngForOf"], ["class", "menu-title-btn", 4, "ngIf"], ["mat-icon-button", "", "class", "menu-title-btn", 3, "routerLink", "matTooltip", 4, "ngIf"], [1, "menu-title-btn"], ["mat-icon-button", "", 1, "menu-title-btn", 3, "routerLink", "matTooltip"], [4, "ngTemplateOutlet"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [3, "toggleExpand", "openMenu", "menuItem", "labelsVisible", "menuLayoutDirection", "menuItemLayout", "activeItem", "showIcons", "direction", "expandableMenuChildren"], [3, "ngClass.lt-md", "menuItem", "direction", "labelsVisible", "activeItem", "showIcons"], [3, "ngClass.lt-md", "menuItem", "direction", "activeItem", 4, "ngIf"], [3, "ngClass.lt-md", "menuItem", "direction", "activeItem"], ["mat-button", "", "class", "menu-title-btn menu-action-button", 3, "active-menu-item-group", "click", 4, "ngIf"], ["mat-icon-button", "", "matTooltipPosition", "after", 3, "matTooltip", "click", 4, "ngIf"], ["mat-button", "", 1, "menu-title-btn", "menu-action-button", 3, "click"], [3, "svgIcon"], ["class", "btn-label", 4, "ngIf"], [1, "btn-label"], ["mat-icon-button", "", "matTooltipPosition", "after", 3, "click", "matTooltip"]], template: function MenuItemListComponent_Template(rf, ctx) { if (rf & 1) {
|
|
1200
|
+
i0.ɵɵelementStart(0, "div", 4);
|
|
1201
|
+
i0.ɵɵconditionalCreate(1, MenuItemListComponent_Conditional_1_Template, 5, 5, "div", 5)(2, MenuItemListComponent_Conditional_2_Template, 1, 1, "ng-container");
|
|
1202
|
+
i0.ɵɵelementStart(3, "div", 6);
|
|
1203
|
+
i0.ɵɵtemplate(4, MenuItemListComponent_ng_container_4_Template, 2, 4, "ng-container", 7);
|
|
972
1204
|
i0.ɵɵelementEnd()();
|
|
973
|
-
i0.ɵɵtemplate(5, MenuItemListComponent_ng_template_5_Template,
|
|
1205
|
+
i0.ɵɵtemplate(5, MenuItemListComponent_ng_template_5_Template, 1, 8, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor)(7, MenuItemListComponent_ng_template_7_Template, 1, 6, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor)(9, MenuItemListComponent_ng_template_9_Template, 1, 1, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor)(11, MenuItemListComponent_ng_template_11_Template, 2, 2, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor);
|
|
974
1206
|
} if (rf & 2) {
|
|
975
1207
|
i0.ɵɵadvance();
|
|
976
1208
|
i0.ɵɵconditional(ctx.titleKey && ctx.showTitle && ctx.labelsVisible && !ctx.menuItemGroup.itemGroupClick ? 1 : (ctx.menuItemGroup == null ? null : ctx.menuItemGroup.itemGroupClick) ? 2 : -1);
|
|
@@ -978,11 +1210,11 @@ class MenuItemListComponent {
|
|
|
978
1210
|
i0.ɵɵproperty("fxLayoutAlign", ctx.menuLayoutDirection);
|
|
979
1211
|
i0.ɵɵadvance();
|
|
980
1212
|
i0.ɵɵproperty("ngForOf", ctx.items);
|
|
981
|
-
} }, dependencies: [i1$2.DefaultLayoutDirective, i1$2.DefaultLayoutAlignDirective, i2$2.DefaultClassDirective, i1$1.RouterLink, i3.NgForOf, i3.NgIf, i3.NgTemplateOutlet, i5.MatTooltip, i2$1.MatIcon, i7.MatButton, i7.MatIconButton,
|
|
1213
|
+
} }, dependencies: [i1$2.DefaultLayoutDirective, i1$2.DefaultLayoutAlignDirective, i2$2.DefaultClassDirective, i1$1.RouterLink, i3.NgForOf, i3.NgIf, i3.NgTemplateOutlet, i5.MatTooltip, i2$1.MatIcon, i7.MatButton, i7.MatIconButton, MenuItemLinkComponent, MenuItemBtnComponent, MenuItemWithChildrenComponent, i8.TranslatePipe], styles: ["[_nghost-%COMP%]{display:inline-block} .menu-item{width:100%} a, a:hover{text-decoration:none} .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} .menu-action-button{justify-content:flex-start;align-items:center;max-width:100%;width:-webkit-fill-available} .menu-action-button.active-menu-item-group{background-color:var(--base-95)!important} .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} .menu-list-wrapper .menu-item:not(button):not(.active-menu-item):hover{background-color:var(--base-70)!important} .menu-list-wrapper .menu-item.active-menu-item, .menu-list-wrapper .menu-item.active-menu-item mat-icon, .menu-list-wrapper .menu-item.active-menu-item:hover{font-weight:600} .menu-list-wrapper .menu-item span{display:inline-block} .menu-list-wrapper .menu-item .menu-item-title{display:flex;flex-direction:row;align-items:start;width:100%} .menu-list-wrapper .menu-item .menu-item-title .title-content{width:100%;text-align:start;display:block} .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} .menu-list-wrapper .menu-parent-item.active-menu-item, .menu-list-wrapper .menu-parent-item:hover{font-weight:400!important;background-color:var(--base-70)!important} .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} .menu-item-list-title{padding:8px 0 24px;font-size:16px;font-weight:600;overflow:hidden;text-overflow:ellipsis;margin-left:20px;height:56px} .menu-item-list-title:has(.menu-title-btn){margin-left:0} lib-menu-lang-switcher, .menu-item-list{animation:_ngcontent-%COMP%_slide-in .3s forwards} lib-menu-lang-switcher, .menu-title-btn{margin-right:2px;transition:opacity .3s} .arrow-icon{margin-right:-6px}@keyframes _ngcontent-%COMP%_slide-in{0%{opacity:0;margin-left:-100px}to{opacity:1;margin-left:0}}"] }); }
|
|
982
1214
|
}
|
|
983
1215
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MenuItemListComponent, [{
|
|
984
1216
|
type: Component,
|
|
985
|
-
args: [{ selector: 'menu-item-list', standalone: false, template: "<div class=\"menu-list-wrapper\">\r\n\t@if (titleKey && showTitle && labelsVisible && !menuItemGroup.itemGroupClick) {\r\n\t<div fxLayoutAlign=\"start center\" class=\"menu-item-list-title\">\r\n\t\t<mat-icon *ngIf=\"menuItemGroup.titleIcon\" class=\"menu-title-btn\">\r\n\t\t\t{{ menuItemGroup.titleIcon }}\r\n\t\t</mat-icon>\r\n\r\n\t\t<button\r\n\t\t\t*ngIf=\"menuItemGroup.titleNavigation\"\r\n\t\t\tmat-icon-button\r\n\t\t\tclass=\"menu-title-btn\"\r\n\t\t\t[routerLink]=\"menuItemGroup.titleNavigation.path\"\r\n\t\t\t[matTooltip]=\"menuItemGroup.titleNavigation?.tooltip ?? '' | translate\"\r\n\t\t>\r\n\t\t\t<mat-icon>{{ menuItemGroup.titleNavigation.icon }}</mat-icon>\r\n\t\t</button>\r\n\r\n\t\t{{ titleKey | translate }}\r\n\t</div>\r\n\t} @else if (menuItemGroup?.itemGroupClick) {\r\n\t<ng-container *ngTemplateOutlet=\"itemGroupButton\"> </ng-container>\r\n\t}\r\n\t<div class=\"menu-item-list\" fxLayout=\"column\" [fxLayoutAlign]=\"menuLayoutDirection\">\r\n\t\t<ng-container *ngFor=\"let menuItem of items\">\r\n\t\t\t<ng-container\r\n\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t!menuItem.showChildren || !menuItem.children || menuItem?.children?.length === 0 ? (menuItem.clickAction ? menuItemBtn : menuItemLink) : itemWithChildren;\r\n\t\t\t\t\tcontext: { menuItem: menuItem }\r\n\t\t\t\t\"\r\n\t\t\t>\r\n\t\t\t</ng-container>\r\n\t\t</ng-container>\r\n\t</div>\r\n</div>\r\n\r\n<ng-template #itemWithChildren let-menuItem=\"menuItem\">\r\n\t<
|
|
1217
|
+
args: [{ selector: 'menu-item-list', standalone: false, template: "<div class=\"menu-list-wrapper\">\r\n\t@if (titleKey && showTitle && labelsVisible && !menuItemGroup.itemGroupClick) {\r\n\t<div fxLayoutAlign=\"start center\" class=\"menu-item-list-title\">\r\n\t\t<mat-icon *ngIf=\"menuItemGroup.titleIcon\" class=\"menu-title-btn\">\r\n\t\t\t{{ menuItemGroup.titleIcon }}\r\n\t\t</mat-icon>\r\n\r\n\t\t<button\r\n\t\t\t*ngIf=\"menuItemGroup.titleNavigation\"\r\n\t\t\tmat-icon-button\r\n\t\t\tclass=\"menu-title-btn\"\r\n\t\t\t[routerLink]=\"menuItemGroup.titleNavigation.path\"\r\n\t\t\t[matTooltip]=\"menuItemGroup.titleNavigation?.tooltip ?? '' | translate\"\r\n\t\t>\r\n\t\t\t<mat-icon>{{ menuItemGroup.titleNavigation.icon }}</mat-icon>\r\n\t\t</button>\r\n\r\n\t\t{{ titleKey | translate }}\r\n\t</div>\r\n\t} @else if (menuItemGroup?.itemGroupClick) {\r\n\t<ng-container *ngTemplateOutlet=\"itemGroupButton\"> </ng-container>\r\n\t}\r\n\t<div class=\"menu-item-list\" fxLayout=\"column\" [fxLayoutAlign]=\"menuLayoutDirection\">\r\n\t\t<ng-container *ngFor=\"let menuItem of items\">\r\n\t\t\t<ng-container\r\n\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t!menuItem.showChildren || !menuItem.children || menuItem?.children?.length === 0 ? (menuItem.clickAction ? menuItemBtn : menuItemLink) : itemWithChildren;\r\n\t\t\t\t\tcontext: { menuItem: menuItem }\r\n\t\t\t\t\"\r\n\t\t\t>\r\n\t\t\t</ng-container>\r\n\t\t</ng-container>\r\n\t</div>\r\n</div>\r\n\r\n<ng-template #itemWithChildren let-menuItem=\"menuItem\">\r\n\t<lib-menu-item-with-children\r\n\t\t[menuItem]=\"menuItem\"\r\n\t\t[labelsVisible]=\"labelsVisible\"\r\n\t\t[menuLayoutDirection]=\"menuLayoutDirection\"\r\n\t\t[menuItemLayout]=\"menuItemLayout\"\r\n\t\t[activeItem]=\"activeItem\"\r\n\t\t[showIcons]=\"showIcons\"\r\n\t\t[direction]=\"direction\"\r\n\t\t[expandableMenuChildren]=\"expandableMenuChildren\"\r\n\t\t(toggleExpand)=\"toggleExpandEvent($event)\"\r\n\t\t(openMenu)=\"openMenu()\"\r\n\t></lib-menu-item-with-children>\r\n</ng-template>\r\n\r\n<ng-template #menuItemLink let-menuItem=\"menuItem\">\r\n\t<tld-menu-item-link\r\n\t\t[ngClass.lt-md]=\"'mob-menu-item'\"\r\n\t\t[menuItem]=\"menuItem\"\r\n\t\t[direction]=\"direction\"\r\n\t\t[labelsVisible]=\"labelsVisible\"\r\n\t\t[activeItem]=\"activeItem\"\r\n\t\t[showIcons]=\"showIcons\"\r\n\t></tld-menu-item-link>\r\n</ng-template>\r\n\r\n<ng-template #menuItemBtn let-menuItem=\"menuItem\">\r\n\t<lib-menu-item-btn *ngIf=\"labelsVisible\" [ngClass.lt-md]=\"'mob-menu-item'\" [menuItem]=\"menuItem\" [direction]=\"direction\" [activeItem]=\"activeItem\"></lib-menu-item-btn>\r\n</ng-template>\r\n\r\n<ng-template #itemGroupButton>\r\n\t<button\r\n\t\t*ngIf=\"menuItemGroup && labelsVisible\"\r\n\t\tmat-button\r\n\t\tclass=\"menu-title-btn menu-action-button\"\r\n\t\t(click)=\"menuItemGroup?.itemGroupClick()\"\r\n\t\t[class.active-menu-item-group]=\"menuItemGroup.isItemGroupActive && menuItemGroup.isItemGroupActive()\"\r\n\t>\r\n\t\t@if(menuItemGroup.isCustomItemGroupIcon){\r\n\t\t<mat-icon [svgIcon]=\"menuItemGroup.itemGroupIcon ?? ''\"></mat-icon>\r\n\t\t} @else {\r\n\t\t<mat-icon>{{ menuItemGroup.itemGroupIcon }}</mat-icon>\r\n\t\t}\r\n\t\t<span class=\"btn-label\" *ngIf=\"titleKey\">\r\n\t\t\t{{ titleKey | translate }}\r\n\t\t</span>\r\n\t</button>\r\n\r\n\t<button\r\n\t\t*ngIf=\"menuItemGroup && !labelsVisible && titleKey && menuItemGroup.itemGroupIcon\"\r\n\t\tmat-icon-button\r\n\t\tmatTooltipPosition=\"after\"\r\n\t\t[matTooltip]=\"titleKey | translate\"\r\n\t\t(click)=\"menuItemGroup?.itemGroupClick()\"\r\n\t>\r\n\t\t@if(menuItemGroup.isCustomItemGroupIcon){\r\n\t\t<mat-icon [svgIcon]=\"menuItemGroup.itemGroupIcon ?? ''\"></mat-icon>\r\n\t\t} @else {\r\n\t\t<mat-icon>{{ menuItemGroup.itemGroupIcon }}</mat-icon>\r\n\t\t}\r\n\t</button>\r\n</ng-template>\r\n", styles: [":host{display:inline-block}::ng-deep .menu-item{width:100%}::ng-deep a,::ng-deep a:hover{text-decoration:none}::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}::ng-deep .menu-action-button{justify-content:flex-start;align-items:center;max-width:100%;width:-webkit-fill-available}::ng-deep .menu-action-button.active-menu-item-group{background-color:var(--base-95)!important}::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}::ng-deep .menu-list-wrapper .menu-item:not(button):not(.active-menu-item):hover{background-color:var(--base-70)!important}::ng-deep .menu-list-wrapper .menu-item.active-menu-item,::ng-deep .menu-list-wrapper .menu-item.active-menu-item mat-icon,::ng-deep .menu-list-wrapper .menu-item.active-menu-item:hover{font-weight:600}::ng-deep .menu-list-wrapper .menu-item span{display:inline-block}::ng-deep .menu-list-wrapper .menu-item .menu-item-title{display:flex;flex-direction:row;align-items:start;width:100%}::ng-deep .menu-list-wrapper .menu-item .menu-item-title .title-content{width:100%;text-align:start;display:block}::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}::ng-deep .menu-list-wrapper .menu-parent-item.active-menu-item,::ng-deep .menu-list-wrapper .menu-parent-item:hover{font-weight:400!important;background-color:var(--base-70)!important}::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}::ng-deep .menu-item-list-title{padding:8px 0 24px;font-size:16px;font-weight:600;overflow:hidden;text-overflow:ellipsis;margin-left:20px;height:56px}::ng-deep .menu-item-list-title:has(.menu-title-btn){margin-left:0}::ng-deep lib-menu-lang-switcher,::ng-deep .menu-item-list{animation:slide-in .3s forwards}::ng-deep lib-menu-lang-switcher,::ng-deep .menu-title-btn{margin-right:2px;transition:opacity .3s}::ng-deep .arrow-icon{margin-right:-6px}@keyframes slide-in{0%{opacity:0;margin-left:-100px}to{opacity:1;margin-left:0}}\n"] }]
|
|
986
1218
|
}], null, { direction: [{
|
|
987
1219
|
type: Input
|
|
988
1220
|
}], labelsVisible: [{
|
|
@@ -991,10 +1223,14 @@ class MenuItemListComponent {
|
|
|
991
1223
|
type: Input
|
|
992
1224
|
}], showIcons: [{
|
|
993
1225
|
type: Input
|
|
1226
|
+
}], expandableMenuChildren: [{
|
|
1227
|
+
type: Input
|
|
994
1228
|
}], items: [{
|
|
995
1229
|
type: Input
|
|
996
1230
|
}], menuItemGroup: [{
|
|
997
1231
|
type: Input
|
|
1232
|
+
}], openMenuTrigger: [{
|
|
1233
|
+
type: Output
|
|
998
1234
|
}], toggleExpand: [{
|
|
999
1235
|
type: Output
|
|
1000
1236
|
}] }); })();
|
|
@@ -1003,12 +1239,12 @@ class MenuItemListComponent {
|
|
|
1003
1239
|
function MenuColumnsComponent_ng_container_0_menu_item_list_1_Template(rf, ctx) { if (rf & 1) {
|
|
1004
1240
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
1005
1241
|
i0.ɵɵelementStart(0, "menu-item-list", 4);
|
|
1006
|
-
i0.ɵɵlistener("toggleExpand", function MenuColumnsComponent_ng_container_0_menu_item_list_1_Template_menu_item_list_toggleExpand_0_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.elementExpanded($event)); });
|
|
1242
|
+
i0.ɵɵlistener("toggleExpand", function MenuColumnsComponent_ng_container_0_menu_item_list_1_Template_menu_item_list_toggleExpand_0_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.elementExpanded($event)); })("openMenuTrigger", function MenuColumnsComponent_ng_container_0_menu_item_list_1_Template_menu_item_list_openMenuTrigger_0_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.openMenu()); });
|
|
1007
1243
|
i0.ɵɵelementEnd();
|
|
1008
1244
|
} if (rf & 2) {
|
|
1009
1245
|
const group_r3 = i0.ɵɵnextContext().$implicit;
|
|
1010
1246
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
1011
|
-
i0.ɵɵproperty("activeItem", ctx_r1.activeItem)("direction", ctx_r1.direction)("labelsVisible", ctx_r1.isOpen)("menuItemGroup", group_r3)("items", group_r3.items);
|
|
1247
|
+
i0.ɵɵproperty("activeItem", ctx_r1.activeItem)("direction", ctx_r1.direction)("labelsVisible", ctx_r1.isOpen)("menuItemGroup", group_r3)("items", group_r3.items)("expandableMenuChildren", ctx_r1.expandableMenuChildren);
|
|
1012
1248
|
} }
|
|
1013
1249
|
function MenuColumnsComponent_ng_container_0_div_2_Template(rf, ctx) { if (rf & 1) {
|
|
1014
1250
|
i0.ɵɵelementStart(0, "div", 5);
|
|
@@ -1025,7 +1261,7 @@ function MenuColumnsComponent_ng_container_0_div_3_Template(rf, ctx) { if (rf &
|
|
|
1025
1261
|
} }
|
|
1026
1262
|
function MenuColumnsComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
1027
1263
|
i0.ɵɵelementContainerStart(0);
|
|
1028
|
-
i0.ɵɵtemplate(1, MenuColumnsComponent_ng_container_0_menu_item_list_1_Template, 1,
|
|
1264
|
+
i0.ɵɵtemplate(1, MenuColumnsComponent_ng_container_0_menu_item_list_1_Template, 1, 6, "menu-item-list", 1)(2, MenuColumnsComponent_ng_container_0_div_2_Template, 2, 1, "div", 2)(3, MenuColumnsComponent_ng_container_0_div_3_Template, 2, 0, "div", 3);
|
|
1029
1265
|
i0.ɵɵelementContainerEnd();
|
|
1030
1266
|
} if (rf & 2) {
|
|
1031
1267
|
const group_r3 = ctx.$implicit;
|
|
@@ -1057,6 +1293,7 @@ class MenuColumnsComponent {
|
|
|
1057
1293
|
this.menuItemsService = menuItemsService;
|
|
1058
1294
|
this.direction = MenuLayoutDirection.column;
|
|
1059
1295
|
this.isOpen = true;
|
|
1296
|
+
this.expandableMenuChildren = false;
|
|
1060
1297
|
this.toggleCollapseEvent = new EventEmitter();
|
|
1061
1298
|
}
|
|
1062
1299
|
ngOnInit() {
|
|
@@ -1069,19 +1306,22 @@ class MenuColumnsComponent {
|
|
|
1069
1306
|
}
|
|
1070
1307
|
this.activeItem = this.active.root;
|
|
1071
1308
|
}
|
|
1309
|
+
openMenu() {
|
|
1310
|
+
this.toggleCollapseEvent.emit();
|
|
1311
|
+
}
|
|
1072
1312
|
toggleOnMobileSelect() {
|
|
1073
1313
|
return this.isOpen && ResolutionHelper.isMobileRes() && (this.active && Object.values(this.active)?.length > 0);
|
|
1074
1314
|
}
|
|
1075
1315
|
static { this.ɵfac = function MenuColumnsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MenuColumnsComponent)(i0.ɵɵdirectiveInject(i1$1.Router), i0.ɵɵdirectiveInject(MENU_SHARED_CONFIG, 8), i0.ɵɵdirectiveInject(MenuItemsService)); }; }
|
|
1076
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuColumnsComponent, selectors: [["menu-columns"]], inputs: { direction: "direction", isOpen: "isOpen", active: "active" }, outputs: { toggleCollapseEvent: "toggleCollapseEvent" }, standalone: false, decls: 1, vars: 1, consts: [[4, "ngFor", "ngForOf"], [3, "activeItem", "direction", "labelsVisible", "menuItemGroup", "items", "toggleExpand", 4, "ngIf"], ["class", "loader-container", 4, "ngIf"], ["class", "divider", 4, "ngIf"], [3, "toggleExpand", "activeItem", "direction", "labelsVisible", "menuItemGroup", "items"], [1, "loader-container"], [1, "loader", 3, "diameter"], [1, "divider"]], template: function MenuColumnsComponent_Template(rf, ctx) { if (rf & 1) {
|
|
1316
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuColumnsComponent, selectors: [["menu-columns"]], inputs: { direction: "direction", isOpen: "isOpen", expandableMenuChildren: "expandableMenuChildren", active: "active" }, outputs: { toggleCollapseEvent: "toggleCollapseEvent" }, standalone: false, decls: 1, vars: 1, consts: [[4, "ngFor", "ngForOf"], [3, "activeItem", "direction", "labelsVisible", "menuItemGroup", "items", "expandableMenuChildren", "toggleExpand", "openMenuTrigger", 4, "ngIf"], ["class", "loader-container", 4, "ngIf"], ["class", "divider", 4, "ngIf"], [3, "toggleExpand", "openMenuTrigger", "activeItem", "direction", "labelsVisible", "menuItemGroup", "items", "expandableMenuChildren"], [1, "loader-container"], [1, "loader", 3, "diameter"], [1, "divider"]], template: function MenuColumnsComponent_Template(rf, ctx) { if (rf & 1) {
|
|
1077
1317
|
i0.ɵɵtemplate(0, MenuColumnsComponent_ng_container_0_Template, 4, 3, "ng-container", 0);
|
|
1078
1318
|
} if (rf & 2) {
|
|
1079
1319
|
i0.ɵɵproperty("ngForOf", ctx.mergedGroups);
|
|
1080
|
-
} }, dependencies: [i3.NgForOf, i3.NgIf, i4.MatDivider, i5$
|
|
1320
|
+
} }, dependencies: [i3.NgForOf, i3.NgIf, i4.MatDivider, i5$2.MatProgressSpinner, MenuItemListComponent], styles: ["[_nghost-%COMP%]{display:inline-block}[_nghost-%COMP%] menu-item-list[_ngcontent-%COMP%]{display:block}.divider[_ngcontent-%COMP%]{margin:10px 0}.loader-container[_ngcontent-%COMP%]{padding-left:20px}"] }); }
|
|
1081
1321
|
}
|
|
1082
1322
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MenuColumnsComponent, [{
|
|
1083
1323
|
type: Component,
|
|
1084
|
-
args: [{ selector: 'menu-columns', standalone: false, template: "<ng-container *ngFor=\"let group of mergedGroups\">\r\n <menu-item-list *ngIf=\"group.items.length || group.showEmpty\" [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=\"loader-container\" *ngIf=\"group.isItemsLoading && isOpen\">\r\n <mat-spinner [diameter]=\"24\" class=\"loader\"></mat-spinner>\r\n </div>\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}.loader-container{padding-left:20px}\n"] }]
|
|
1324
|
+
args: [{ selector: 'menu-columns', standalone: false, template: "<ng-container *ngFor=\"let group of mergedGroups\">\r\n <menu-item-list *ngIf=\"group.items.length || group.showEmpty\" [activeItem]=\"activeItem\" [direction]=\"direction\"\r\n (toggleExpand)=\"elementExpanded($event)\" (openMenuTrigger)=\"openMenu()\" [labelsVisible]=\"isOpen\" [menuItemGroup]=\"group\"\r\n [items]=\"group.items\" [expandableMenuChildren]=\"expandableMenuChildren!\">\r\n </menu-item-list>\r\n <div class=\"loader-container\" *ngIf=\"group.isItemsLoading && isOpen\">\r\n <mat-spinner [diameter]=\"24\" class=\"loader\"></mat-spinner>\r\n </div>\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}.loader-container{padding-left:20px}\n"] }]
|
|
1085
1325
|
}], () => [{ type: i1$1.Router }, { type: undefined, decorators: [{
|
|
1086
1326
|
type: Optional
|
|
1087
1327
|
}, {
|
|
@@ -1091,6 +1331,8 @@ class MenuColumnsComponent {
|
|
|
1091
1331
|
type: Input
|
|
1092
1332
|
}], isOpen: [{
|
|
1093
1333
|
type: Input
|
|
1334
|
+
}], expandableMenuChildren: [{
|
|
1335
|
+
type: Input
|
|
1094
1336
|
}], toggleCollapseEvent: [{
|
|
1095
1337
|
type: Output
|
|
1096
1338
|
}], active: [{
|
|
@@ -1100,145 +1342,186 @@ class MenuColumnsComponent {
|
|
|
1100
1342
|
|
|
1101
1343
|
const _c0 = (a0, a1) => ({ icon: a0, label: a1 });
|
|
1102
1344
|
const _forTrack0 = ($index, $item) => $item.label;
|
|
1103
|
-
function
|
|
1345
|
+
function MenuProfileComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
1346
|
+
const _r1 = i0.ɵɵgetCurrentView();
|
|
1347
|
+
i0.ɵɵelementStart(0, "div", 4)(1, "button", 5);
|
|
1348
|
+
i0.ɵɵlistener("click", function MenuProfileComponent_Conditional_0_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.login()); });
|
|
1349
|
+
i0.ɵɵelementStart(2, "mat-icon");
|
|
1350
|
+
i0.ɵɵtext(3, "login");
|
|
1351
|
+
i0.ɵɵelementEnd();
|
|
1352
|
+
i0.ɵɵtext(4);
|
|
1353
|
+
i0.ɵɵpipe(5, "translate");
|
|
1354
|
+
i0.ɵɵelementEnd()();
|
|
1355
|
+
} if (rf & 2) {
|
|
1356
|
+
i0.ɵɵadvance(4);
|
|
1357
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(5, 1, "MENU.LOGIN"), " ");
|
|
1358
|
+
} }
|
|
1359
|
+
function MenuProfileComponent_Conditional_1_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
1104
1360
|
i0.ɵɵtext(0);
|
|
1105
1361
|
} if (rf & 2) {
|
|
1106
|
-
const
|
|
1107
|
-
i0.ɵɵtextInterpolate1(" ",
|
|
1362
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
1363
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r1.userInitials, " ");
|
|
1108
1364
|
} }
|
|
1109
|
-
function
|
|
1365
|
+
function MenuProfileComponent_Conditional_1_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
1110
1366
|
i0.ɵɵelementStart(0, "mat-icon");
|
|
1111
1367
|
i0.ɵɵtext(1, "person");
|
|
1112
1368
|
i0.ɵɵelementEnd();
|
|
1113
1369
|
} }
|
|
1114
|
-
function
|
|
1115
|
-
i0.ɵɵelementStart(0, "mat-icon",
|
|
1370
|
+
function MenuProfileComponent_Conditional_1_ng_container_6_mat_icon_4_Template(rf, ctx) { if (rf & 1) {
|
|
1371
|
+
i0.ɵɵelementStart(0, "mat-icon", 13);
|
|
1116
1372
|
i0.ɵɵtext(1, "keyboard_arrow_down");
|
|
1117
1373
|
i0.ɵɵelementEnd();
|
|
1118
1374
|
} }
|
|
1119
|
-
function
|
|
1120
|
-
i0.ɵɵelementStart(0, "mat-icon",
|
|
1375
|
+
function MenuProfileComponent_Conditional_1_ng_container_6_ng_template_5_Template(rf, ctx) { if (rf & 1) {
|
|
1376
|
+
i0.ɵɵelementStart(0, "mat-icon", 13);
|
|
1121
1377
|
i0.ɵɵtext(1, "keyboard_arrow_up");
|
|
1122
1378
|
i0.ɵɵelementEnd();
|
|
1123
1379
|
} }
|
|
1124
|
-
function
|
|
1380
|
+
function MenuProfileComponent_Conditional_1_ng_container_6_Template(rf, ctx) { if (rf & 1) {
|
|
1125
1381
|
i0.ɵɵelementContainerStart(0);
|
|
1126
|
-
i0.ɵɵelementStart(1, "span",
|
|
1382
|
+
i0.ɵɵelementStart(1, "span", 11);
|
|
1127
1383
|
i0.ɵɵtext(2);
|
|
1128
1384
|
i0.ɵɵpipe(3, "translate");
|
|
1129
1385
|
i0.ɵɵelementEnd();
|
|
1130
|
-
i0.ɵɵtemplate(4,
|
|
1386
|
+
i0.ɵɵtemplate(4, MenuProfileComponent_Conditional_1_ng_container_6_mat_icon_4_Template, 2, 0, "mat-icon", 12)(5, MenuProfileComponent_Conditional_1_ng_container_6_ng_template_5_Template, 2, 0, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor);
|
|
1131
1387
|
i0.ɵɵelementContainerEnd();
|
|
1132
1388
|
} if (rf & 2) {
|
|
1133
|
-
const
|
|
1134
|
-
|
|
1135
|
-
const
|
|
1389
|
+
const iconDown_r3 = i0.ɵɵreference(6);
|
|
1390
|
+
i0.ɵɵnextContext();
|
|
1391
|
+
const state_r4 = i0.ɵɵreference(2);
|
|
1392
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
1136
1393
|
i0.ɵɵadvance(2);
|
|
1137
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 3,
|
|
1394
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 3, ctx_r1.username() ?? "MENU.ANONYMOUS"), " ");
|
|
1138
1395
|
i0.ɵɵadvance(2);
|
|
1139
|
-
i0.ɵɵproperty("ngIf",
|
|
1396
|
+
i0.ɵɵproperty("ngIf", state_r4.menuOpen)("ngIfElse", iconDown_r3);
|
|
1140
1397
|
} }
|
|
1141
|
-
function
|
|
1398
|
+
function MenuProfileComponent_Conditional_1_For_10_Conditional_0_Conditional_0_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
1142
1399
|
i0.ɵɵelementContainer(0);
|
|
1143
1400
|
} }
|
|
1144
|
-
function
|
|
1145
|
-
const
|
|
1146
|
-
i0.ɵɵelementStart(0, "a",
|
|
1147
|
-
i0.ɵɵlistener("click", function
|
|
1148
|
-
i0.ɵɵtemplate(1,
|
|
1401
|
+
function MenuProfileComponent_Conditional_1_For_10_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
1402
|
+
const _r5 = i0.ɵɵgetCurrentView();
|
|
1403
|
+
i0.ɵɵelementStart(0, "a", 17);
|
|
1404
|
+
i0.ɵɵlistener("click", function MenuProfileComponent_Conditional_1_For_10_Conditional_0_Conditional_0_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r5); const item_r6 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.linkCallback(item_r6.link)); });
|
|
1405
|
+
i0.ɵɵtemplate(1, MenuProfileComponent_Conditional_1_For_10_Conditional_0_Conditional_0_ng_container_1_Template, 1, 0, "ng-container", 18);
|
|
1149
1406
|
i0.ɵɵelementEnd();
|
|
1150
1407
|
} if (rf & 2) {
|
|
1151
|
-
const
|
|
1408
|
+
const item_r6 = i0.ɵɵnextContext(2).$implicit;
|
|
1152
1409
|
i0.ɵɵnextContext();
|
|
1153
|
-
const
|
|
1154
|
-
i0.ɵɵproperty("href",
|
|
1410
|
+
const profileMenuItem_r7 = i0.ɵɵreference(12);
|
|
1411
|
+
i0.ɵɵproperty("href", item_r6.link.href, i0.ɵɵsanitizeUrl);
|
|
1155
1412
|
i0.ɵɵadvance();
|
|
1156
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
|
1413
|
+
i0.ɵɵproperty("ngTemplateOutlet", profileMenuItem_r7)("ngTemplateOutletContext", i0.ɵɵpureFunction2(3, _c0, item_r6.icon, item_r6.label));
|
|
1157
1414
|
} }
|
|
1158
|
-
function
|
|
1415
|
+
function MenuProfileComponent_Conditional_1_For_10_Conditional_0_Conditional_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
1159
1416
|
i0.ɵɵelementContainer(0);
|
|
1160
1417
|
} }
|
|
1161
|
-
function
|
|
1162
|
-
const
|
|
1163
|
-
i0.ɵɵelementStart(0, "a",
|
|
1164
|
-
i0.ɵɵlistener("click", function
|
|
1165
|
-
i0.ɵɵtemplate(1,
|
|
1418
|
+
function MenuProfileComponent_Conditional_1_For_10_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
1419
|
+
const _r8 = i0.ɵɵgetCurrentView();
|
|
1420
|
+
i0.ɵɵelementStart(0, "a", 19);
|
|
1421
|
+
i0.ɵɵlistener("click", function MenuProfileComponent_Conditional_1_For_10_Conditional_0_Conditional_1_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r8); const item_r6 = i0.ɵɵnextContext(2).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.linkCallback(item_r6.link)); });
|
|
1422
|
+
i0.ɵɵtemplate(1, MenuProfileComponent_Conditional_1_For_10_Conditional_0_Conditional_1_ng_container_1_Template, 1, 0, "ng-container", 18);
|
|
1166
1423
|
i0.ɵɵelementEnd();
|
|
1167
1424
|
} if (rf & 2) {
|
|
1168
|
-
const
|
|
1425
|
+
const item_r6 = i0.ɵɵnextContext(2).$implicit;
|
|
1169
1426
|
i0.ɵɵnextContext();
|
|
1170
|
-
const
|
|
1171
|
-
i0.ɵɵproperty("routerLink",
|
|
1427
|
+
const profileMenuItem_r7 = i0.ɵɵreference(12);
|
|
1428
|
+
i0.ɵɵproperty("routerLink", item_r6.link.href);
|
|
1172
1429
|
i0.ɵɵadvance();
|
|
1173
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
|
1430
|
+
i0.ɵɵproperty("ngTemplateOutlet", profileMenuItem_r7)("ngTemplateOutletContext", i0.ɵɵpureFunction2(3, _c0, item_r6.icon, item_r6.label));
|
|
1174
1431
|
} }
|
|
1175
|
-
function
|
|
1176
|
-
i0.ɵɵconditionalCreate(0,
|
|
1432
|
+
function MenuProfileComponent_Conditional_1_For_10_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
1433
|
+
i0.ɵɵconditionalCreate(0, MenuProfileComponent_Conditional_1_For_10_Conditional_0_Conditional_0_Template, 2, 6, "a", 15)(1, MenuProfileComponent_Conditional_1_For_10_Conditional_0_Conditional_1_Template, 2, 6, "a", 16);
|
|
1177
1434
|
} if (rf & 2) {
|
|
1178
|
-
const
|
|
1179
|
-
i0.ɵɵconditional(
|
|
1435
|
+
const item_r6 = i0.ɵɵnextContext().$implicit;
|
|
1436
|
+
i0.ɵɵconditional(item_r6.link.isExternal ? 0 : 1);
|
|
1180
1437
|
} }
|
|
1181
|
-
function
|
|
1438
|
+
function MenuProfileComponent_Conditional_1_For_10_Conditional_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
1182
1439
|
i0.ɵɵelementContainer(0);
|
|
1183
1440
|
} }
|
|
1184
|
-
function
|
|
1185
|
-
const
|
|
1186
|
-
i0.ɵɵelementStart(0, "button",
|
|
1187
|
-
i0.ɵɵlistener("click", function
|
|
1188
|
-
i0.ɵɵtemplate(1,
|
|
1441
|
+
function MenuProfileComponent_Conditional_1_For_10_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
1442
|
+
const _r9 = i0.ɵɵgetCurrentView();
|
|
1443
|
+
i0.ɵɵelementStart(0, "button", 20);
|
|
1444
|
+
i0.ɵɵlistener("click", function MenuProfileComponent_Conditional_1_For_10_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r9); const item_r6 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(item_r6.button == null ? null : item_r6.button.callback()); });
|
|
1445
|
+
i0.ɵɵtemplate(1, MenuProfileComponent_Conditional_1_For_10_Conditional_1_ng_container_1_Template, 1, 0, "ng-container", 18);
|
|
1189
1446
|
i0.ɵɵelementEnd();
|
|
1190
1447
|
} if (rf & 2) {
|
|
1191
|
-
const
|
|
1448
|
+
const item_r6 = i0.ɵɵnextContext().$implicit;
|
|
1192
1449
|
i0.ɵɵnextContext();
|
|
1193
|
-
const
|
|
1450
|
+
const profileMenuItem_r7 = i0.ɵɵreference(12);
|
|
1194
1451
|
i0.ɵɵadvance();
|
|
1195
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
|
1452
|
+
i0.ɵɵproperty("ngTemplateOutlet", profileMenuItem_r7)("ngTemplateOutletContext", i0.ɵɵpureFunction2(2, _c0, item_r6.icon, item_r6.label));
|
|
1196
1453
|
} }
|
|
1197
|
-
function
|
|
1198
|
-
i0.ɵɵconditionalCreate(0,
|
|
1454
|
+
function MenuProfileComponent_Conditional_1_For_10_Template(rf, ctx) { if (rf & 1) {
|
|
1455
|
+
i0.ɵɵconditionalCreate(0, MenuProfileComponent_Conditional_1_For_10_Conditional_0_Template, 2, 1)(1, MenuProfileComponent_Conditional_1_For_10_Conditional_1_Template, 2, 5, "button", 14);
|
|
1199
1456
|
} if (rf & 2) {
|
|
1200
|
-
const
|
|
1201
|
-
i0.ɵɵconditional(
|
|
1457
|
+
const item_r6 = ctx.$implicit;
|
|
1458
|
+
i0.ɵɵconditional(item_r6.link ? 0 : 1);
|
|
1202
1459
|
} }
|
|
1203
|
-
function
|
|
1204
|
-
i0.ɵɵelementStart(0, "span",
|
|
1460
|
+
function MenuProfileComponent_Conditional_1_ng_template_11_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
1461
|
+
i0.ɵɵelementStart(0, "span", 23);
|
|
1205
1462
|
i0.ɵɵtext(1);
|
|
1206
1463
|
i0.ɵɵelementEnd();
|
|
1207
1464
|
} if (rf & 2) {
|
|
1208
|
-
const
|
|
1209
|
-
i0.ɵɵclassProp("material-icons-outlined",
|
|
1465
|
+
const icon_r10 = i0.ɵɵnextContext(2).icon;
|
|
1466
|
+
i0.ɵɵclassProp("material-icons-outlined", icon_r10 == null ? null : icon_r10.isOutlined);
|
|
1210
1467
|
i0.ɵɵadvance();
|
|
1211
|
-
i0.ɵɵtextInterpolate1(" ",
|
|
1468
|
+
i0.ɵɵtextInterpolate1(" ", icon_r10 == null ? null : icon_r10.name, " ");
|
|
1212
1469
|
} }
|
|
1213
|
-
function
|
|
1214
|
-
i0.ɵɵelement(0, "mat-icon",
|
|
1470
|
+
function MenuProfileComponent_Conditional_1_ng_template_11_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
1471
|
+
i0.ɵɵelement(0, "mat-icon", 22);
|
|
1215
1472
|
} if (rf & 2) {
|
|
1216
|
-
const
|
|
1217
|
-
i0.ɵɵproperty("svgIcon",
|
|
1473
|
+
const icon_r10 = i0.ɵɵnextContext(2).icon;
|
|
1474
|
+
i0.ɵɵproperty("svgIcon", icon_r10 == null ? null : icon_r10.name);
|
|
1218
1475
|
} }
|
|
1219
|
-
function
|
|
1220
|
-
i0.ɵɵconditionalCreate(0,
|
|
1476
|
+
function MenuProfileComponent_Conditional_1_ng_template_11_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
1477
|
+
i0.ɵɵconditionalCreate(0, MenuProfileComponent_Conditional_1_ng_template_11_Conditional_0_Conditional_0_Template, 2, 3, "span", 21)(1, MenuProfileComponent_Conditional_1_ng_template_11_Conditional_0_Conditional_1_Template, 1, 1, "mat-icon", 22);
|
|
1221
1478
|
} if (rf & 2) {
|
|
1222
|
-
const
|
|
1223
|
-
i0.ɵɵconditional(!(
|
|
1479
|
+
const icon_r10 = i0.ɵɵnextContext().icon;
|
|
1480
|
+
i0.ɵɵconditional(!(icon_r10 == null ? null : icon_r10.isCustom) ? 0 : 1);
|
|
1224
1481
|
} }
|
|
1225
|
-
function
|
|
1226
|
-
i0.ɵɵconditionalCreate(0,
|
|
1482
|
+
function MenuProfileComponent_Conditional_1_ng_template_11_Template(rf, ctx) { if (rf & 1) {
|
|
1483
|
+
i0.ɵɵconditionalCreate(0, MenuProfileComponent_Conditional_1_ng_template_11_Conditional_0_Template, 2, 1);
|
|
1227
1484
|
i0.ɵɵtext(1);
|
|
1228
1485
|
i0.ɵɵpipe(2, "translate");
|
|
1229
1486
|
} if (rf & 2) {
|
|
1230
|
-
const
|
|
1231
|
-
const
|
|
1232
|
-
i0.ɵɵconditional(
|
|
1487
|
+
const icon_r10 = ctx.icon;
|
|
1488
|
+
const label_r11 = ctx.label;
|
|
1489
|
+
i0.ɵɵconditional(icon_r10 ? 0 : -1);
|
|
1490
|
+
i0.ɵɵadvance();
|
|
1491
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2, label_r11), "\n");
|
|
1492
|
+
} }
|
|
1493
|
+
function MenuProfileComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
1494
|
+
i0.ɵɵelementStart(0, "div", 6)(1, "button", 7, 0)(3, "div", 8);
|
|
1495
|
+
i0.ɵɵconditionalCreate(4, MenuProfileComponent_Conditional_1_Conditional_4_Template, 1, 1)(5, MenuProfileComponent_Conditional_1_Conditional_5_Template, 2, 0, "mat-icon");
|
|
1496
|
+
i0.ɵɵelementEnd();
|
|
1497
|
+
i0.ɵɵtemplate(6, MenuProfileComponent_Conditional_1_ng_container_6_Template, 7, 5, "ng-container", 9);
|
|
1498
|
+
i0.ɵɵelementEnd();
|
|
1499
|
+
i0.ɵɵelementStart(7, "mat-menu", 10, 1);
|
|
1500
|
+
i0.ɵɵrepeaterCreate(9, MenuProfileComponent_Conditional_1_For_10_Template, 2, 1, null, null, _forTrack0);
|
|
1501
|
+
i0.ɵɵelementEnd()();
|
|
1502
|
+
i0.ɵɵtemplate(11, MenuProfileComponent_Conditional_1_ng_template_11_Template, 3, 4, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor);
|
|
1503
|
+
} if (rf & 2) {
|
|
1504
|
+
const state_r4 = i0.ɵɵreference(2);
|
|
1505
|
+
const menu_r12 = i0.ɵɵreference(8);
|
|
1506
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
1233
1507
|
i0.ɵɵadvance();
|
|
1234
|
-
i0.ɵɵ
|
|
1508
|
+
i0.ɵɵclassProp("collapsed", ctx_r1.collapsed())("active", state_r4.menuOpen);
|
|
1509
|
+
i0.ɵɵproperty("matMenuTriggerFor", menu_r12);
|
|
1510
|
+
i0.ɵɵadvance(3);
|
|
1511
|
+
i0.ɵɵconditional(ctx_r1.userInitials ? 4 : 5);
|
|
1512
|
+
i0.ɵɵadvance(2);
|
|
1513
|
+
i0.ɵɵproperty("ngIf", !ctx_r1.collapsed());
|
|
1514
|
+
i0.ɵɵadvance(3);
|
|
1515
|
+
i0.ɵɵrepeater(ctx_r1.userOptions());
|
|
1235
1516
|
} }
|
|
1236
1517
|
class MenuProfileComponent {
|
|
1237
1518
|
constructor() {
|
|
1238
1519
|
this.collapsed = input(...(ngDevMode ? [undefined, { debugName: "collapsed" }] : []));
|
|
1239
1520
|
this.username = input(...(ngDevMode ? [undefined, { debugName: "username" }] : []));
|
|
1521
|
+
this.useLargeLoginButton = input(false, ...(ngDevMode ? [{ debugName: "useLargeLoginButton" }] : []));
|
|
1240
1522
|
this.userOptions = input(...(ngDevMode ? [undefined, { debugName: "userOptions" }] : []));
|
|
1241
1523
|
this.linkCallbackEvent = output();
|
|
1524
|
+
this.loginEvent = output();
|
|
1242
1525
|
}
|
|
1243
1526
|
ngOnInit() {
|
|
1244
1527
|
this.setUserInitials();
|
|
@@ -1246,6 +1529,9 @@ class MenuProfileComponent {
|
|
|
1246
1529
|
linkCallback(link) {
|
|
1247
1530
|
this.linkCallbackEvent.emit(link);
|
|
1248
1531
|
}
|
|
1532
|
+
login() {
|
|
1533
|
+
this.loginEvent.emit();
|
|
1534
|
+
}
|
|
1249
1535
|
setUserInitials() {
|
|
1250
1536
|
if (!this.username()) {
|
|
1251
1537
|
return;
|
|
@@ -1261,33 +1547,15 @@ class MenuProfileComponent {
|
|
|
1261
1547
|
this.userInitials = splittedUsername[0][0] + splittedUsername[1][0];
|
|
1262
1548
|
}
|
|
1263
1549
|
static { this.ɵfac = function MenuProfileComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MenuProfileComponent)(); }; }
|
|
1264
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuProfileComponent, selectors: [["lib-menu-profile"]], inputs: { collapsed: [1, "collapsed"], username: [1, "username"], userOptions: [1, "userOptions"] }, outputs: { linkCallbackEvent: "linkCallbackEvent" }, standalone: false, decls:
|
|
1265
|
-
i0.ɵɵ
|
|
1266
|
-
i0.ɵɵconditionalCreate(4, MenuProfileComponent_Conditional_4_Template, 1, 1)(5, MenuProfileComponent_Conditional_5_Template, 2, 0, "mat-icon");
|
|
1267
|
-
i0.ɵɵelementEnd();
|
|
1268
|
-
i0.ɵɵtemplate(6, MenuProfileComponent_ng_container_6_Template, 7, 5, "ng-container", 7);
|
|
1269
|
-
i0.ɵɵelementEnd();
|
|
1270
|
-
i0.ɵɵelementStart(7, "mat-menu", 8, 1);
|
|
1271
|
-
i0.ɵɵrepeaterCreate(9, MenuProfileComponent_For_10_Template, 2, 1, null, null, _forTrack0);
|
|
1272
|
-
i0.ɵɵelementEnd()();
|
|
1273
|
-
i0.ɵɵtemplate(11, MenuProfileComponent_ng_template_11_Template, 3, 4, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor);
|
|
1550
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuProfileComponent, selectors: [["lib-menu-profile"]], inputs: { collapsed: [1, "collapsed"], username: [1, "username"], useLargeLoginButton: [1, "useLargeLoginButton"], userOptions: [1, "userOptions"] }, outputs: { linkCallbackEvent: "linkCallbackEvent", loginEvent: "loginEvent" }, standalone: false, decls: 2, vars: 1, consts: [["state", "matMenuTrigger"], ["menu", "matMenu"], ["profileMenuItem", ""], ["iconDown", ""], [1, "login-wrapper"], ["mat-stroked-button", "", "color", "accent", 1, "login-btn", 3, "click"], [1, "profile"], [1, "profile-wrapper", 3, "matMenuTriggerFor"], [1, "profile-icon"], [4, "ngIf"], [1, "profile-menu"], [1, "profile-name"], ["class", "profile-arrow spin", 4, "ngIf", "ngIfElse"], [1, "profile-arrow", "spin"], ["mat-menu-item", "", 1, "profile-option"], ["target", "_blank", 1, "mat-mdc-menu-item", 3, "href"], [1, "mat-mdc-menu-item", 3, "routerLink"], ["target", "_blank", 1, "mat-mdc-menu-item", 3, "click", "href"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], [1, "mat-mdc-menu-item", 3, "click", "routerLink"], ["mat-menu-item", "", 1, "profile-option", 3, "click"], [1, "material-icons", "profile-option-icon", 3, "material-icons-outlined"], [1, "profile-option-icon", 3, "svgIcon"], [1, "material-icons", "profile-option-icon"]], template: function MenuProfileComponent_Template(rf, ctx) { if (rf & 1) {
|
|
1551
|
+
i0.ɵɵconditionalCreate(0, MenuProfileComponent_Conditional_0_Template, 6, 3, "div", 4)(1, MenuProfileComponent_Conditional_1_Template, 13, 7);
|
|
1274
1552
|
} if (rf & 2) {
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
i0.ɵɵadvance();
|
|
1278
|
-
i0.ɵɵclassProp("collapsed", ctx.collapsed())("active", state_r3.menuOpen);
|
|
1279
|
-
i0.ɵɵproperty("matMenuTriggerFor", menu_r11);
|
|
1280
|
-
i0.ɵɵadvance(3);
|
|
1281
|
-
i0.ɵɵconditional(ctx.userInitials ? 4 : 5);
|
|
1282
|
-
i0.ɵɵadvance(2);
|
|
1283
|
-
i0.ɵɵproperty("ngIf", !ctx.collapsed());
|
|
1284
|
-
i0.ɵɵadvance(3);
|
|
1285
|
-
i0.ɵɵrepeater(ctx.userOptions());
|
|
1286
|
-
} }, dependencies: [i1$1.RouterLink, i3.NgIf, i3.NgTemplateOutlet, i2$1.MatIcon, i6.MatMenu, i6.MatMenuItem, i6.MatMenuTrigger, i8.TranslatePipe], styles: [".spin[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_spinArrow .3s forwards}@keyframes _ngcontent-%COMP%_spinArrow{to{transform:rotate(180deg)}}a[_ngcontent-%COMP%]{text-decoration:none}.profile[_ngcontent-%COMP%]{position:relative;margin-top:100px}.profile-wrapper[_ngcontent-%COMP%]{background:none;color:var(--base-30);display:flex;align-items:center;justify-content:start;width:100%;position:absolute;bottom:0;margin:24px 0;border-radius:5px;padding:8px 0}.profile-wrapper[_ngcontent-%COMP%]:hover .profile-icon[_ngcontent-%COMP%]{background-color:var(--base-70);filter:brightness(.97)}.profile-wrapper[_ngcontent-%COMP%]:hover:not(.collapsed), .profile-wrapper.active[_ngcontent-%COMP%]:not(.collapsed){background-color:var(--base-70)}.collapsed.profile-wrapper[_ngcontent-%COMP%]{padding:0!important;margin:32px 0!important}.profile-icon[_ngcontent-%COMP%]{margin-left:20px;display:flex;justify-content:center;align-items:center;min-width:40px;height:40px;border-radius:100%;color:var(--base-0);background-color:var(--base-70);font-size:16px;font-weight:600}.active[_ngcontent-%COMP%] .profile-icon[_ngcontent-%COMP%]{background-color:var(--base-70);filter:brightness(.97)}.collapsed[_ngcontent-%COMP%] .profile-icon[_ngcontent-%COMP%]{margin-left:0!important}.profile-name[_ngcontent-%COMP%]{max-width:145px;overflow:hidden;margin-left:12px;text-overflow:ellipsis}.profile-option-icon[_ngcontent-%COMP%]{vertical-align:middle;margin:0 5px 5px 0}.profile-arrow[_ngcontent-%COMP%]{position:absolute;right:0;margin-right:10px}.mobile[_ngcontent-%COMP%] .profile-arrow[_ngcontent-%COMP%]{margin-right:20px} .profile-menu a{font-weight:400!important;display:flex;align-items:center;gap:5px} .profile-menu a:hover{color:var(--mat-menu-item-label-text-color, var(--mat-app-on-surface))!important;text-decoration:inherit}"] }); }
|
|
1553
|
+
i0.ɵɵconditional(ctx.useLargeLoginButton() && !ctx.username() && !ctx.collapsed() ? 0 : 1);
|
|
1554
|
+
} }, dependencies: [i1$1.RouterLink, i3.NgIf, i3.NgTemplateOutlet, i2$1.MatIcon, i7.MatButton, i5$1.MatMenu, i5$1.MatMenuItem, i5$1.MatMenuTrigger, i8.TranslatePipe], styles: [".spin[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_spinArrow .3s forwards}@keyframes _ngcontent-%COMP%_spinArrow{to{transform:rotate(180deg)}}a[_ngcontent-%COMP%]{text-decoration:none}.login-wrapper[_ngcontent-%COMP%]{padding:10px;margin-bottom:20px}.login-btn[_ngcontent-%COMP%]{width:100%}.profile[_ngcontent-%COMP%]{position:relative;margin-top:100px}.profile-wrapper[_ngcontent-%COMP%]{background:none;color:var(--base-30);display:flex;align-items:center;justify-content:start;width:100%;position:absolute;bottom:0;margin:24px 0;border-radius:5px;padding:8px 0}.profile-wrapper[_ngcontent-%COMP%]:hover .profile-icon[_ngcontent-%COMP%]{background-color:var(--base-70);filter:brightness(.97)}.profile-wrapper[_ngcontent-%COMP%]:hover:not(.collapsed), .profile-wrapper.active[_ngcontent-%COMP%]:not(.collapsed){background-color:var(--base-70)}.collapsed.profile-wrapper[_ngcontent-%COMP%]{padding:0!important;margin:32px 0!important}.profile-icon[_ngcontent-%COMP%]{margin-left:20px;display:flex;justify-content:center;align-items:center;min-width:40px;height:40px;border-radius:100%;color:var(--base-0);background-color:var(--base-70);font-size:16px;font-weight:600}.active[_ngcontent-%COMP%] .profile-icon[_ngcontent-%COMP%]{background-color:var(--base-70);filter:brightness(.97)}.collapsed[_ngcontent-%COMP%] .profile-icon[_ngcontent-%COMP%]{margin-left:0!important}.profile-name[_ngcontent-%COMP%]{max-width:145px;overflow:hidden;margin-left:12px;text-overflow:ellipsis}.profile-option-icon[_ngcontent-%COMP%]{vertical-align:middle;margin:0 5px 5px 0}.profile-arrow[_ngcontent-%COMP%]{position:absolute;right:0;margin-right:10px}.mobile[_ngcontent-%COMP%] .profile-arrow[_ngcontent-%COMP%]{margin-right:20px} .profile-menu a{font-weight:400!important;display:flex;align-items:center;gap:5px} .profile-menu a:hover{color:var(--mat-menu-item-label-text-color, var(--mat-app-on-surface))!important;text-decoration:inherit}"] }); }
|
|
1287
1555
|
}
|
|
1288
1556
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MenuProfileComponent, [{
|
|
1289
1557
|
type: Component,
|
|
1290
|
-
args: [{ selector: 'lib-menu-profile', standalone: false, template: "<div class=\"profile\">\r\n\t<button #state=\"matMenuTrigger\" [class.collapsed]=\"collapsed()\" [matMenuTriggerFor]=\"menu\" class=\"profile-wrapper\" [class.active]=\"state.menuOpen\">\r\n\t\t<div class=\"profile-icon\">\r\n\t\t\t@if (userInitials) {\r\n\t\t\t{{ userInitials }}\r\n\t\t\t} @else {\r\n\t\t\t<mat-icon>person</mat-icon>\r\n\t\t\t}\r\n\t\t</div>\r\n\r\n\t\t<ng-container *ngIf=\"!collapsed()\">\r\n\t\t\t<span class=\"profile-name\">\r\n\t\t\t\t{{ username() ?? \"MENU.ANONYMOUS\" | translate }}\r\n\t\t\t</span>\r\n\r\n\t\t\t<mat-icon *ngIf=\"state.menuOpen; else iconDown\" class=\"profile-arrow spin\">keyboard_arrow_down</mat-icon>\r\n\r\n\t\t\t<ng-template #iconDown>\r\n\t\t\t\t<mat-icon class=\"profile-arrow spin\">keyboard_arrow_up</mat-icon>\r\n\t\t\t</ng-template>\r\n\t\t</ng-container>\r\n\t</button>\r\n\r\n\t<mat-menu #menu=\"matMenu\" class=\"profile-menu\">\r\n\t\t@for (item of userOptions(); track item.label) { @if (item.link) { @if (item.link.isExternal) {\r\n\t\t<a class=\"mat-mdc-menu-item\" [href]=\"item.link.href\" target=\"_blank\" (click)=\"linkCallback(item.link)\">\r\n\t\t\t<ng-container *ngTemplateOutlet=\"profileMenuItem; context: { icon: item.icon, label: item.label }\"> </ng-container>\r\n\t\t</a>\r\n\t\t} @else {\r\n\t\t<a class=\"mat-mdc-menu-item\" [routerLink]=\"item.link.href\" (click)=\"linkCallback(item.link)\">\r\n\t\t\t<ng-container *ngTemplateOutlet=\"profileMenuItem; context: { icon: item.icon, label: item.label }\"> </ng-container>\r\n\t\t</a>\r\n\t\t} } @else {\r\n\t\t<button mat-menu-item class=\"profile-option\" (click)=\"item.button?.callback()\">\r\n\t\t\t<ng-container *ngTemplateOutlet=\"profileMenuItem; context: { icon: item.icon, label: item.label }\"> </ng-container>\r\n\t\t</button>\r\n\t\t} }\r\n\t</mat-menu>\r\n</div>\r\n\r\n<ng-template #profileMenuItem let-icon=\"icon\" let-label=\"label\">\r\n\t@if (icon) { @if (!icon?.isCustom) {\r\n\t<span class=\"material-icons profile-option-icon\" [class.material-icons-outlined]=\"icon?.isOutlined\">\r\n\t\t{{ icon?.name }}\r\n\t</span>\r\n\t} @else {\r\n\t<mat-icon class=\"profile-option-icon\" [svgIcon]=\"icon?.name\"></mat-icon>\r\n\t} }\r\n\t{{ label | translate }}\r\n</ng-template>\r\n", styles: [".spin{animation:spinArrow .3s forwards}@keyframes spinArrow{to{transform:rotate(180deg)}}a{text-decoration:none}.profile{position:relative;margin-top:100px}.profile-wrapper{background:none;color:var(--base-30);display:flex;align-items:center;justify-content:start;width:100%;position:absolute;bottom:0;margin:24px 0;border-radius:5px;padding:8px 0}.profile-wrapper:hover .profile-icon{background-color:var(--base-70);filter:brightness(.97)}.profile-wrapper:hover:not(.collapsed),.profile-wrapper.active:not(.collapsed){background-color:var(--base-70)}.collapsed.profile-wrapper{padding:0!important;margin:32px 0!important}.profile-icon{margin-left:20px;display:flex;justify-content:center;align-items:center;min-width:40px;height:40px;border-radius:100%;color:var(--base-0);background-color:var(--base-70);font-size:16px;font-weight:600}.active .profile-icon{background-color:var(--base-70);filter:brightness(.97)}.collapsed .profile-icon{margin-left:0!important}.profile-name{max-width:145px;overflow:hidden;margin-left:12px;text-overflow:ellipsis}.profile-option-icon{vertical-align:middle;margin:0 5px 5px 0}.profile-arrow{position:absolute;right:0;margin-right:10px}.mobile .profile-arrow{margin-right:20px}::ng-deep .profile-menu a{font-weight:400!important;display:flex;align-items:center;gap:5px}::ng-deep .profile-menu a:hover{color:var(--mat-menu-item-label-text-color, var(--mat-app-on-surface))!important;text-decoration:inherit}\n"] }]
|
|
1558
|
+
args: [{ selector: 'lib-menu-profile', standalone: false, template: "@if (useLargeLoginButton() && !username() && !collapsed()) {\r\n\t<div class=\"login-wrapper\">\r\n\t\t<button mat-stroked-button color=\"accent\" class=\"login-btn\" (click)=\"login()\">\r\n\t\t\t<mat-icon>login</mat-icon>\r\n\t\t\t{{ \"MENU.LOGIN\" | translate }}\r\n\t\t</button>\r\n\t</div>\r\n} @else {\r\n<div class=\"profile\">\r\n\t<button #state=\"matMenuTrigger\" [class.collapsed]=\"collapsed()\" [matMenuTriggerFor]=\"menu\" class=\"profile-wrapper\" [class.active]=\"state.menuOpen\">\r\n\t\t<div class=\"profile-icon\">\r\n\t\t\t@if (userInitials) {\r\n\t\t\t{{ userInitials }}\r\n\t\t\t} @else {\r\n\t\t\t<mat-icon>person</mat-icon>\r\n\t\t\t}\r\n\t\t</div>\r\n\r\n\t\t<ng-container *ngIf=\"!collapsed()\">\r\n\t\t\t<span class=\"profile-name\">\r\n\t\t\t\t{{ username() ?? \"MENU.ANONYMOUS\" | translate }}\r\n\t\t\t</span>\r\n\r\n\t\t\t<mat-icon *ngIf=\"state.menuOpen; else iconDown\" class=\"profile-arrow spin\">keyboard_arrow_down</mat-icon>\r\n\r\n\t\t\t<ng-template #iconDown>\r\n\t\t\t\t<mat-icon class=\"profile-arrow spin\">keyboard_arrow_up</mat-icon>\r\n\t\t\t</ng-template>\r\n\t\t</ng-container>\r\n\t</button>\r\n\r\n\t<mat-menu #menu=\"matMenu\" class=\"profile-menu\">\r\n\t\t@for (item of userOptions(); track item.label) { @if (item.link) { @if (item.link.isExternal) {\r\n\t\t<a class=\"mat-mdc-menu-item\" [href]=\"item.link.href\" target=\"_blank\" (click)=\"linkCallback(item.link)\">\r\n\t\t\t<ng-container *ngTemplateOutlet=\"profileMenuItem; context: { icon: item.icon, label: item.label }\"> </ng-container>\r\n\t\t</a>\r\n\t\t} @else {\r\n\t\t<a class=\"mat-mdc-menu-item\" [routerLink]=\"item.link.href\" (click)=\"linkCallback(item.link)\">\r\n\t\t\t<ng-container *ngTemplateOutlet=\"profileMenuItem; context: { icon: item.icon, label: item.label }\"> </ng-container>\r\n\t\t</a>\r\n\t\t} } @else {\r\n\t\t<button mat-menu-item class=\"profile-option\" (click)=\"item.button?.callback()\">\r\n\t\t\t<ng-container *ngTemplateOutlet=\"profileMenuItem; context: { icon: item.icon, label: item.label }\"> </ng-container>\r\n\t\t</button>\r\n\t\t} }\r\n\t</mat-menu>\r\n</div>\r\n\r\n<ng-template #profileMenuItem let-icon=\"icon\" let-label=\"label\">\r\n\t@if (icon) { @if (!icon?.isCustom) {\r\n\t<span class=\"material-icons profile-option-icon\" [class.material-icons-outlined]=\"icon?.isOutlined\">\r\n\t\t{{ icon?.name }}\r\n\t</span>\r\n\t} @else {\r\n\t<mat-icon class=\"profile-option-icon\" [svgIcon]=\"icon?.name\"></mat-icon>\r\n\t} }\r\n\t{{ label | translate }}\r\n</ng-template>\r\n}\r\n", styles: [".spin{animation:spinArrow .3s forwards}@keyframes spinArrow{to{transform:rotate(180deg)}}a{text-decoration:none}.login-wrapper{padding:10px;margin-bottom:20px}.login-btn{width:100%}.profile{position:relative;margin-top:100px}.profile-wrapper{background:none;color:var(--base-30);display:flex;align-items:center;justify-content:start;width:100%;position:absolute;bottom:0;margin:24px 0;border-radius:5px;padding:8px 0}.profile-wrapper:hover .profile-icon{background-color:var(--base-70);filter:brightness(.97)}.profile-wrapper:hover:not(.collapsed),.profile-wrapper.active:not(.collapsed){background-color:var(--base-70)}.collapsed.profile-wrapper{padding:0!important;margin:32px 0!important}.profile-icon{margin-left:20px;display:flex;justify-content:center;align-items:center;min-width:40px;height:40px;border-radius:100%;color:var(--base-0);background-color:var(--base-70);font-size:16px;font-weight:600}.active .profile-icon{background-color:var(--base-70);filter:brightness(.97)}.collapsed .profile-icon{margin-left:0!important}.profile-name{max-width:145px;overflow:hidden;margin-left:12px;text-overflow:ellipsis}.profile-option-icon{vertical-align:middle;margin:0 5px 5px 0}.profile-arrow{position:absolute;right:0;margin-right:10px}.mobile .profile-arrow{margin-right:20px}::ng-deep .profile-menu a{font-weight:400!important;display:flex;align-items:center;gap:5px}::ng-deep .profile-menu a:hover{color:var(--mat-menu-item-label-text-color, var(--mat-app-on-surface))!important;text-decoration:inherit}\n"] }]
|
|
1291
1559
|
}], null, null); })();
|
|
1292
1560
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MenuProfileComponent, { className: "MenuProfileComponent", filePath: "lib/components/menu-profile/menu-profile.component.ts", lineNumber: 11 }); })();
|
|
1293
1561
|
|
|
@@ -1387,7 +1655,7 @@ class MenuLangSwitcherComponent {
|
|
|
1387
1655
|
i0.ɵɵconditional(!ctx.isCollapsed ? 7 : -1);
|
|
1388
1656
|
i0.ɵɵadvance(3);
|
|
1389
1657
|
i0.ɵɵrepeater(ctx.languages);
|
|
1390
|
-
} }, dependencies: [i5.MatTooltip, i2$1.MatIcon,
|
|
1658
|
+
} }, dependencies: [i5.MatTooltip, i2$1.MatIcon, i5$1.MatMenu, i5$1.MatMenuItem, i5$1.MatMenuTrigger, i8.TranslatePipe], styles: [".spin[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_spinArrow .3s forwards}@keyframes _ngcontent-%COMP%_spinArrow{to{transform:rotate(180deg)}}span[_ngcontent-%COMP%]{font-size:14px}.lang-switcher[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;display:flex;align-items:center;color:var(--base-30);background:none;width:100%;padding:16px 8px 16px 18px;border-radius:5px}.lang-switcher.active[_ngcontent-%COMP%], .lang-switcher[_ngcontent-%COMP%]:hover{background-color:var(--base-70)}.collapsed[_ngcontent-%COMP%]{padding:0;min-width:40px;height:40px;border-radius:50%;margin-top:10px;justify-content:center;width:100%;margin-left:-6px}.current-lang[_ngcontent-%COMP%]{display:flex;align-items:center;width:100%;gap:12px}.collapsed[_ngcontent-%COMP%] .current-lang[_ngcontent-%COMP%]{justify-content:center;width:100%}"] }); }
|
|
1391
1659
|
}
|
|
1392
1660
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MenuLangSwitcherComponent, [{
|
|
1393
1661
|
type: Component,
|
|
@@ -1436,7 +1704,8 @@ class MenuModule {
|
|
|
1436
1704
|
MenuItemLinkComponent,
|
|
1437
1705
|
MenuItemBtnComponent,
|
|
1438
1706
|
MenuProfileComponent,
|
|
1439
|
-
MenuLangSwitcherComponent
|
|
1707
|
+
MenuLangSwitcherComponent,
|
|
1708
|
+
MenuItemWithChildrenComponent
|
|
1440
1709
|
],
|
|
1441
1710
|
exports: [
|
|
1442
1711
|
SideNavMenuComponent,
|
|
@@ -1468,7 +1737,8 @@ class MenuModule {
|
|
|
1468
1737
|
MenuItemLinkComponent,
|
|
1469
1738
|
MenuItemBtnComponent,
|
|
1470
1739
|
MenuProfileComponent,
|
|
1471
|
-
MenuLangSwitcherComponent
|
|
1740
|
+
MenuLangSwitcherComponent,
|
|
1741
|
+
MenuItemWithChildrenComponent], imports: [FlexLayoutModule,
|
|
1472
1742
|
RouterModule,
|
|
1473
1743
|
CommonModule,
|
|
1474
1744
|
MatTooltipModule,
|