@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.
@@ -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 { CollectionTypes } from '@tilde-nlp/strapi-models';
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 i6 from '@angular/material/menu';
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$1 from '@angular/material/progress-spinner';
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.subscribeCollectionType(CollectionTypes.MENU_ITEMS)
55
- .pipe(map((items) => {
56
- // Remove disabled items so they are not processed later.
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 = items.filter(item => !item?.disabled);
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(CollectionTypes.MENU_ITEMS);
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$2 = ["*"];
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", 18);
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$2, decls: 28, vars: 37, 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"], [3, "isCollapsed", "languages"], ["fxFlex", "", "fxLayout", "column"], [3, "linkCallbackEvent", "userOptions", "username", "collapsed"], [3, "changeLanguageEvent", "isCollapsed", "languages"]], template: function SideNavMenuComponent_Template(rf, ctx) { if (rf & 1) {
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, 29, "MENU.ARIA_LABELS.LOGO"));
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, 31, "ARIA_LABELS.MENU_TOGGLER"));
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, 33, ctx.collapsed ? "MENU.EXPAND" : "MENU.COLLAPSE"));
456
- i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(17, 35, "ARIA_LABELS.MENU_TOGGLER"));
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
- } }, 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}"] }); }
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 <div [fxHide]=\"!collapsed\" class=\"mobile-header\">\r\n <a [libPlausibleEvent]=\"LOGOCLICK_PLAUSIBLE_EVENT\" fxFlex=\"3.125em\" [href]=\"baseUrl\" [class.no-click]=\"menuSettings?.disableLogoNavigation\"\r\n [attr.aria-label]=\"'MENU.ARIA_LABELS.LOGO' | translate\" (click)=\"logoClick($event)\" fxLayoutAlign=\"start center\"\r\n >\r\n <img height=\"40\" width=\"40\" class=\"menu-logo\" [src]=\"menuLogoImage\" alt=\"logo\" />\r\n <span class=\"menu-product-name\">\r\n {{ productName }}\r\n </span>\r\n </a>\r\n\r\n <button\r\n mat-icon-button\r\n class=\"toggler\"\r\n [attr.aria-label]=\"'ARIA_LABELS.MENU_TOGGLER' | translate\"\r\n [libPlausibleEvent]=\"collapsed ? EXPAND_PLAUSIBLE_EVENT : COLLAPSE_PLAUSIBLE_EVENT\"\r\n (click)=\"toggleCollapse()\"\r\n >\r\n <mat-icon>menu</mat-icon>\r\n </button>\r\n </div>\r\n</div>\r\n\r\n<div [ngClass.lt-sm]=\"'mobile'\" class=\"menu-container\" [style.width]=\"sideNavWidth\" fxLayout=\"column\" [class.collapsed]=\"collapsed\">\r\n <div class=\"content\" fxLayout=\"column\" fxFlexFill>\r\n <div class=\"menu-container-header\" fxLayout=\"row\" [fxLayoutAlign]=\"collapsed ? 'center center' : 'space-between center'\">\r\n <a *ngIf=\"!collapsed\" [libPlausibleEvent]=\"LOGOCLICK_PLAUSIBLE_EVENT\" fxFlex=\"3.125em\" [class.no-click]=\"menuSettings?.disableLogoNavigation\" [href]=\"baseUrl\"\r\n [attr.aria-label]=\"'MENU.ARIA_LABELS.LOGO' | translate\" (click)=\"logoClick($event)\" fxLayoutAlign=\"start center\"\r\n >\r\n <img height=\"40\" width=\"40\" class=\"menu-logo\" [src]=\"menuLogoImage\" alt=\"logo\" />\r\n <span class=\"menu-product-name\">\r\n {{ productName }}\r\n </span>\r\n </a>\r\n\r\n <button\r\n mat-icon-button\r\n class=\"toggler\"\r\n [attr.aria-label]=\"'ARIA_LABELS.MENU_TOGGLER' | translate\"\r\n [libPlausibleEvent]=\"collapsed ? EXPAND_PLAUSIBLE_EVENT : COLLAPSE_PLAUSIBLE_EVENT\"\r\n [matTooltip]=\"(collapsed ? 'MENU.EXPAND' : 'MENU.COLLAPSE') | translate\"\r\n (click)=\"toggleCollapse()\"\r\n >\r\n <mat-icon fxHide.gt-xs [ngClass.lt-sm]=\"'mob-close-icon'\">close</mat-icon>\r\n <mat-icon fxHide.lt-sm>{{ collapsed ? 'keyboard_double_arrow_right' : 'keyboard_double_arrow_left' }}</mat-icon>\r\n </button>\r\n </div>\r\n\r\n <div class=\"menu-wrapper\" fxLayout=\"column\">\r\n <menu-columns (toggleCollapseEvent)=\"toggleCollapse()\" [direction]=\"direction\" role=\"navigation\" [isOpen]=\"!collapsed\"\r\n [active]=\"active\"></menu-columns>\r\n\r\n @if (useDefaultLanguageSwitcher && supportedLanguages.length > 1) {\r\n <lib-menu-lang-switcher [isCollapsed]=\"collapsed\" [languages]=\"supportedLanguages\" (changeLanguageEvent)=\"changeLanguage($event)\"></lib-menu-lang-switcher>\r\n }\r\n </div>\r\n <div fxFlex fxLayout=\"column\">\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <lib-menu-profile\r\n [userOptions]=\"menuSettings.userOptions\"\r\n [username]=\"username\"\r\n [collapsed]=\"collapsed\"\r\n (linkCallbackEvent)=\"linkCallback($event)\"\r\n ></lib-menu-profile>\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}\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 &nbsp;&nbsp;|&nbsp;&nbsp; \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, i6.MatMenu, i6.MatMenuItem, i6.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}"] }); }
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", 13);
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", 14);
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", 8);
715
- i0.ɵɵtemplate(1, MenuItemListComponent_Conditional_1_mat_icon_1_Template, 2, 1, "mat-icon", 11)(2, MenuItemListComponent_Conditional_1_button_2_Template, 4, 5, "button", 12);
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", 15);
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", 16);
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, "button", 17, 4);
818
- i0.ɵɵpipe(2, "translate");
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.ɵɵclassProp("menu-labels-visible", ctx_r0.labelsVisible)("active-menu-item", (ctx_r0.activeItem == null ? null : ctx_r0.activeItem.link) && menuItem_r8 === ctx_r0.activeItem || state_r10.menuOpen);
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", 26);
1075
+ i0.ɵɵelement(0, "tld-menu-item-link", 15);
842
1076
  } if (rf & 2) {
843
- const menuItem_r13 = ctx.menuItem;
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", menuItem_r13)("direction", ctx_r0.direction)("labelsVisible", ctx_r0.labelsVisible || isChild_r14)("activeItem", ctx_r0.activeItem)("showIcons", ctx_r0.showIcons);
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", 28);
1082
+ i0.ɵɵelement(0, "lib-menu-item-btn", 17);
850
1083
  } if (rf & 2) {
851
- const menuItem_r15 = i0.ɵɵnextContext().menuItem;
1084
+ const menuItem_r10 = i0.ɵɵnextContext().menuItem;
852
1085
  const ctx_r0 = i0.ɵɵnextContext();
853
- i0.ɵɵproperty("ngClass.lt-md", "mob-menu-item")("menuItem", menuItem_r15)("direction", ctx_r0.direction)("activeItem", ctx_r0.activeItem);
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", 27);
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", 32);
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", 34);
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 _r16 = i0.ɵɵgetCurrentView();
888
- i0.ɵɵelementStart(0, "button", 31);
889
- i0.ɵɵlistener("click", function MenuItemListComponent_ng_template_11_button_0_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r16); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.menuItemGroup == null ? null : ctx_r0.menuItemGroup.itemGroupClick()); });
890
- i0.ɵɵconditionalCreate(1, MenuItemListComponent_ng_template_11_button_0_Conditional_1_Template, 1, 1, "mat-icon", 32)(2, MenuItemListComponent_ng_template_11_button_0_Conditional_2_Template, 2, 1, "mat-icon");
891
- i0.ɵɵtemplate(3, MenuItemListComponent_ng_template_11_button_0_span_3_Template, 3, 3, "span", 33);
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", 32);
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 _r17 = i0.ɵɵgetCurrentView();
918
- i0.ɵɵelementStart(0, "button", 35);
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(_r17); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.menuItemGroup == null ? null : ctx_r0.menuItemGroup.itemGroupClick()); });
921
- i0.ɵɵconditionalCreate(2, MenuItemListComponent_ng_template_11_button_1_Conditional_2_Template, 1, 1, "mat-icon", 32)(3, MenuItemListComponent_ng_template_11_button_1_Conditional_3_Template, 2, 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", 29)(1, MenuItemListComponent_ng_template_11_button_1_Template, 4, 4, "button", 30);
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
- toggleItemExpand(event, menuItem) {
959
- // so menu doesnt get closed.
960
- event.stopPropagation();
961
- if (this.labelsVisible || !menuItem.expanded) {
962
- menuItem.expanded = !menuItem.expanded;
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", ""], ["state", "matMenuTrigger"], ["menu", "matMenu"], ["iconDown", ""], [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"], ["matTooltipClass", "menu-tooltip", "matTooltipPosition", "after", 1, "text-m", "menu-item", "menu-parent-item", 3, "click", "matTooltip", "fxLayout", "fxLayoutAlign", "matMenuTriggerFor", "ngClass.lt-md"], [4, "ngIf"], [1, "child-menu"], ["mat-menu-item", ""], [3, "menuItem"], [1, "menu-item-title"], [1, "title-content"], ["class", "material-icons spin arrow-icon", 4, "ngIf", "ngIfElse"], [1, "material-icons", "spin", "arrow-icon"], [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) {
968
- i0.ɵɵelementStart(0, "div", 7);
969
- i0.ɵɵconditionalCreate(1, MenuItemListComponent_Conditional_1_Template, 5, 5, "div", 8)(2, MenuItemListComponent_Conditional_2_Template, 1, 1, "ng-container");
970
- i0.ɵɵelementStart(3, "div", 9);
971
- i0.ɵɵtemplate(4, MenuItemListComponent_ng_container_4_Template, 2, 4, "ng-container", 10);
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, 9, 14, "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);
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, i6.MatMenu, i6.MatMenuItem, i6.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%]{display:inline-block}.menu-item[_ngcontent-%COMP%]{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[_ngcontent-%COMP%]{justify-content:flex-start;align-items:center;max-width:100%;width:-webkit-fill-available}.menu-action-button.active-menu-item-group[_ngcontent-%COMP%]{background-color:var(--base-95)!important}[_nghost-%COMP%] .menu-list-wrapper .menu-item{cursor:pointer;font-style:normal;color:var(--base-30);text-decoration:none;align-items:center!important;font-weight:400;background:none;border:none}[_nghost-%COMP%] .menu-list-wrapper .menu-item:not(button):not(.active-menu-item):hover{background-color:var(--base-70)!important}[_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item, [_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item mat-icon, [_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item:hover{font-weight:600}[_nghost-%COMP%] .menu-list-wrapper .menu-item span{display:inline-block}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title{display:flex;flex-direction:row;align-items:start;width:100%}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title .title-content{width:100%;text-align:start;display:block}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title .title-content:before{display:block;content:attr(content);font-weight:600;height:0;overflow:hidden;visibility:hidden}[_nghost-%COMP%] .menu-list-wrapper .menu-parent-item.active-menu-item, [_nghost-%COMP%] .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[_ngcontent-%COMP%]{padding:8px 0 24px;font-size:16px;font-weight:600;overflow:hidden;text-overflow:ellipsis;margin-left:20px;height:56px}.menu-item-list-title[_ngcontent-%COMP%]:has(.menu-title-btn){margin-left:0} lib-menu-lang-switcher, .menu-item-list[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_slide-in .3s forwards} lib-menu-lang-switcher, .menu-title-btn[_ngcontent-%COMP%]{margin-right:2px;transition:opacity .3s}.arrow-icon[_ngcontent-%COMP%]{margin-right:-6px}@keyframes _ngcontent-%COMP%_slide-in{0%{opacity:0;margin-left:-100px}to{opacity:1;margin-left:0}}"] }); }
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<button\r\n\t\tmatTooltipClass=\"menu-tooltip\"\r\n\t\tmatTooltipPosition=\"after\"\r\n\t\t[matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\"\r\n\t\t[fxLayout]=\"menuItemLayout\"\r\n\t\t[fxLayoutAlign]=\"menuLayoutDirection\"\r\n\t\t#state=\"matMenuTrigger\"\r\n\t\t[matMenuTriggerFor]=\"menu\"\r\n\t\t[attr.id]=\"menuItem.customId\"\r\n\t\tclass=\"text-m menu-item menu-parent-item\"\r\n\t\t[class.menu-labels-visible]=\"labelsVisible\"\r\n\t\t[class.active-menu-item]=\"(activeItem?.link && menuItem === activeItem) || state.menuOpen\"\r\n\t\t[ngClass.lt-md]=\"'mob-menu-item'\"\r\n\t\t(click)=\"toggleItemExpand($event, menuItem)\"\r\n\t>\r\n\t\t<ng-container *ngIf=\"showIcons && menuItem.icon\">\r\n\t\t\t<tld-menu-icon [menuItem]=\"menuItem\"></tld-menu-icon>\r\n\t\t</ng-container>\r\n\t\t<ng-container *ngIf=\"labelsVisible\">\r\n\t\t\t<span class=\"menu-item-title\">\r\n\t\t\t\t<span class=\"title-content\">{{ menuItem.title | translate }}</span></span\r\n\t\t\t>\r\n\t\t\t<ng-container *ngIf=\"menuItem.showChildren && menuItem.children\">\r\n\t\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\t<ng-template #iconDown>\r\n\t\t\t\t\t<span class=\"material-icons spin arrow-icon\"> keyboard_arrow_up </span>\r\n\t\t\t\t</ng-template>\r\n\t\t\t</ng-container>\r\n\t\t</ng-container>\r\n\t</button>\r\n\t<mat-menu #menu=\"matMenu\" class=\"child-menu\">\r\n\t\t@for (child of menuItem.children; track $index) {\r\n\t\t<div mat-menu-item>\r\n\t\t\t<ng-container *ngTemplateOutlet=\"menuItem.clickAction ? menuItemBtn : menuItemLink; context: { menuItem: child, isChild: true }\"> </ng-container>\r\n\t\t</div>\r\n\t\t}\r\n\t</mat-menu>\r\n</ng-template>\r\n\r\n<ng-template #menuItemLink let-menuItem=\"menuItem\" let-isChild=\"isChild\">\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 || isChild\"\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: [".spin{animation:spinArrow .3s forwards}@keyframes spinArrow{to{transform:rotate(180deg)}}:host{display:inline-block}.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}.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}:host ::ng-deep .menu-list-wrapper .menu-item{cursor:pointer;font-style:normal;color:var(--base-30);text-decoration:none;align-items:center!important;font-weight:400;background:none;border:none}:host ::ng-deep .menu-list-wrapper .menu-item:not(button):not(.active-menu-item):hover{background-color:var(--base-70)!important}:host ::ng-deep .menu-list-wrapper .menu-item.active-menu-item,:host ::ng-deep .menu-list-wrapper .menu-item.active-menu-item mat-icon,:host ::ng-deep .menu-list-wrapper .menu-item.active-menu-item:hover{font-weight:600}:host ::ng-deep .menu-list-wrapper .menu-item span{display:inline-block}:host ::ng-deep .menu-list-wrapper .menu-item .menu-item-title{display:flex;flex-direction:row;align-items:start;width:100%}:host ::ng-deep .menu-list-wrapper .menu-item .menu-item-title .title-content{width:100%;text-align:start;display:block}:host ::ng-deep .menu-list-wrapper .menu-item .menu-item-title .title-content:before{display:block;content:attr(content);font-weight:600;height:0;overflow:hidden;visibility:hidden}:host ::ng-deep .menu-list-wrapper .menu-parent-item.active-menu-item,:host ::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}.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}::ng-deep lib-menu-lang-switcher,.menu-item-list{animation:slide-in .3s forwards}::ng-deep lib-menu-lang-switcher,.menu-title-btn{margin-right:2px;transition:opacity .3s}.arrow-icon{margin-right:-6px}@keyframes slide-in{0%{opacity:0;margin-left:-100px}to{opacity:1;margin-left:0}}\n"] }]
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, 5, "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);
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$1.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}"] }); }
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 MenuProfileComponent_Conditional_4_Template(rf, ctx) { if (rf & 1) {
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 ctx_r0 = i0.ɵɵnextContext();
1107
- i0.ɵɵtextInterpolate1(" ", ctx_r0.userInitials, " ");
1362
+ const ctx_r1 = i0.ɵɵnextContext(2);
1363
+ i0.ɵɵtextInterpolate1(" ", ctx_r1.userInitials, " ");
1108
1364
  } }
1109
- function MenuProfileComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
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 MenuProfileComponent_ng_container_6_mat_icon_4_Template(rf, ctx) { if (rf & 1) {
1115
- i0.ɵɵelementStart(0, "mat-icon", 11);
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 MenuProfileComponent_ng_container_6_ng_template_5_Template(rf, ctx) { if (rf & 1) {
1120
- i0.ɵɵelementStart(0, "mat-icon", 11);
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 MenuProfileComponent_ng_container_6_Template(rf, ctx) { if (rf & 1) {
1380
+ function MenuProfileComponent_Conditional_1_ng_container_6_Template(rf, ctx) { if (rf & 1) {
1125
1381
  i0.ɵɵelementContainerStart(0);
1126
- i0.ɵɵelementStart(1, "span", 9);
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, MenuProfileComponent_ng_container_6_mat_icon_4_Template, 2, 0, "mat-icon", 10)(5, MenuProfileComponent_ng_container_6_ng_template_5_Template, 2, 0, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor);
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 iconDown_r2 = i0.ɵɵreference(6);
1134
- const ctx_r0 = i0.ɵɵnextContext();
1135
- const state_r3 = i0.ɵɵreference(2);
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, ctx_r0.username() ?? "MENU.ANONYMOUS"), " ");
1394
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 3, ctx_r1.username() ?? "MENU.ANONYMOUS"), " ");
1138
1395
  i0.ɵɵadvance(2);
1139
- i0.ɵɵproperty("ngIf", state_r3.menuOpen)("ngIfElse", iconDown_r2);
1396
+ i0.ɵɵproperty("ngIf", state_r4.menuOpen)("ngIfElse", iconDown_r3);
1140
1397
  } }
1141
- function MenuProfileComponent_For_10_Conditional_0_Conditional_0_ng_container_1_Template(rf, ctx) { if (rf & 1) {
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 MenuProfileComponent_For_10_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
1145
- const _r4 = i0.ɵɵgetCurrentView();
1146
- i0.ɵɵelementStart(0, "a", 15);
1147
- i0.ɵɵlistener("click", function MenuProfileComponent_For_10_Conditional_0_Conditional_0_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r4); const item_r5 = i0.ɵɵnextContext(2).$implicit; const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.linkCallback(item_r5.link)); });
1148
- i0.ɵɵtemplate(1, MenuProfileComponent_For_10_Conditional_0_Conditional_0_ng_container_1_Template, 1, 0, "ng-container", 16);
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 item_r5 = i0.ɵɵnextContext(2).$implicit;
1408
+ const item_r6 = i0.ɵɵnextContext(2).$implicit;
1152
1409
  i0.ɵɵnextContext();
1153
- const profileMenuItem_r6 = i0.ɵɵreference(12);
1154
- i0.ɵɵproperty("href", item_r5.link.href, i0.ɵɵsanitizeUrl);
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", profileMenuItem_r6)("ngTemplateOutletContext", i0.ɵɵpureFunction2(3, _c0, item_r5.icon, item_r5.label));
1413
+ i0.ɵɵproperty("ngTemplateOutlet", profileMenuItem_r7)("ngTemplateOutletContext", i0.ɵɵpureFunction2(3, _c0, item_r6.icon, item_r6.label));
1157
1414
  } }
1158
- function MenuProfileComponent_For_10_Conditional_0_Conditional_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
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 MenuProfileComponent_For_10_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
1162
- const _r7 = i0.ɵɵgetCurrentView();
1163
- i0.ɵɵelementStart(0, "a", 17);
1164
- i0.ɵɵlistener("click", function MenuProfileComponent_For_10_Conditional_0_Conditional_1_Template_a_click_0_listener() { i0.ɵɵrestoreView(_r7); const item_r5 = i0.ɵɵnextContext(2).$implicit; const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.linkCallback(item_r5.link)); });
1165
- i0.ɵɵtemplate(1, MenuProfileComponent_For_10_Conditional_0_Conditional_1_ng_container_1_Template, 1, 0, "ng-container", 16);
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 item_r5 = i0.ɵɵnextContext(2).$implicit;
1425
+ const item_r6 = i0.ɵɵnextContext(2).$implicit;
1169
1426
  i0.ɵɵnextContext();
1170
- const profileMenuItem_r6 = i0.ɵɵreference(12);
1171
- i0.ɵɵproperty("routerLink", item_r5.link.href);
1427
+ const profileMenuItem_r7 = i0.ɵɵreference(12);
1428
+ i0.ɵɵproperty("routerLink", item_r6.link.href);
1172
1429
  i0.ɵɵadvance();
1173
- i0.ɵɵproperty("ngTemplateOutlet", profileMenuItem_r6)("ngTemplateOutletContext", i0.ɵɵpureFunction2(3, _c0, item_r5.icon, item_r5.label));
1430
+ i0.ɵɵproperty("ngTemplateOutlet", profileMenuItem_r7)("ngTemplateOutletContext", i0.ɵɵpureFunction2(3, _c0, item_r6.icon, item_r6.label));
1174
1431
  } }
1175
- function MenuProfileComponent_For_10_Conditional_0_Template(rf, ctx) { if (rf & 1) {
1176
- i0.ɵɵconditionalCreate(0, MenuProfileComponent_For_10_Conditional_0_Conditional_0_Template, 2, 6, "a", 13)(1, MenuProfileComponent_For_10_Conditional_0_Conditional_1_Template, 2, 6, "a", 14);
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 item_r5 = i0.ɵɵnextContext().$implicit;
1179
- i0.ɵɵconditional(item_r5.link.isExternal ? 0 : 1);
1435
+ const item_r6 = i0.ɵɵnextContext().$implicit;
1436
+ i0.ɵɵconditional(item_r6.link.isExternal ? 0 : 1);
1180
1437
  } }
1181
- function MenuProfileComponent_For_10_Conditional_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
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 MenuProfileComponent_For_10_Conditional_1_Template(rf, ctx) { if (rf & 1) {
1185
- const _r8 = i0.ɵɵgetCurrentView();
1186
- i0.ɵɵelementStart(0, "button", 18);
1187
- i0.ɵɵlistener("click", function MenuProfileComponent_For_10_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r8); const item_r5 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(item_r5.button == null ? null : item_r5.button.callback()); });
1188
- i0.ɵɵtemplate(1, MenuProfileComponent_For_10_Conditional_1_ng_container_1_Template, 1, 0, "ng-container", 16);
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 item_r5 = i0.ɵɵnextContext().$implicit;
1448
+ const item_r6 = i0.ɵɵnextContext().$implicit;
1192
1449
  i0.ɵɵnextContext();
1193
- const profileMenuItem_r6 = i0.ɵɵreference(12);
1450
+ const profileMenuItem_r7 = i0.ɵɵreference(12);
1194
1451
  i0.ɵɵadvance();
1195
- i0.ɵɵproperty("ngTemplateOutlet", profileMenuItem_r6)("ngTemplateOutletContext", i0.ɵɵpureFunction2(2, _c0, item_r5.icon, item_r5.label));
1452
+ i0.ɵɵproperty("ngTemplateOutlet", profileMenuItem_r7)("ngTemplateOutletContext", i0.ɵɵpureFunction2(2, _c0, item_r6.icon, item_r6.label));
1196
1453
  } }
1197
- function MenuProfileComponent_For_10_Template(rf, ctx) { if (rf & 1) {
1198
- i0.ɵɵconditionalCreate(0, MenuProfileComponent_For_10_Conditional_0_Template, 2, 1)(1, MenuProfileComponent_For_10_Conditional_1_Template, 2, 5, "button", 12);
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 item_r5 = ctx.$implicit;
1201
- i0.ɵɵconditional(item_r5.link ? 0 : 1);
1457
+ const item_r6 = ctx.$implicit;
1458
+ i0.ɵɵconditional(item_r6.link ? 0 : 1);
1202
1459
  } }
1203
- function MenuProfileComponent_ng_template_11_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
1204
- i0.ɵɵelementStart(0, "span", 21);
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 icon_r9 = i0.ɵɵnextContext(2).icon;
1209
- i0.ɵɵclassProp("material-icons-outlined", icon_r9 == null ? null : icon_r9.isOutlined);
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(" ", icon_r9 == null ? null : icon_r9.name, " ");
1468
+ i0.ɵɵtextInterpolate1(" ", icon_r10 == null ? null : icon_r10.name, " ");
1212
1469
  } }
1213
- function MenuProfileComponent_ng_template_11_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
1214
- i0.ɵɵelement(0, "mat-icon", 20);
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 icon_r9 = i0.ɵɵnextContext(2).icon;
1217
- i0.ɵɵproperty("svgIcon", icon_r9 == null ? null : icon_r9.name);
1473
+ const icon_r10 = i0.ɵɵnextContext(2).icon;
1474
+ i0.ɵɵproperty("svgIcon", icon_r10 == null ? null : icon_r10.name);
1218
1475
  } }
1219
- function MenuProfileComponent_ng_template_11_Conditional_0_Template(rf, ctx) { if (rf & 1) {
1220
- i0.ɵɵconditionalCreate(0, MenuProfileComponent_ng_template_11_Conditional_0_Conditional_0_Template, 2, 3, "span", 19)(1, MenuProfileComponent_ng_template_11_Conditional_0_Conditional_1_Template, 1, 1, "mat-icon", 20);
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 icon_r9 = i0.ɵɵnextContext().icon;
1223
- i0.ɵɵconditional(!(icon_r9 == null ? null : icon_r9.isCustom) ? 0 : 1);
1479
+ const icon_r10 = i0.ɵɵnextContext().icon;
1480
+ i0.ɵɵconditional(!(icon_r10 == null ? null : icon_r10.isCustom) ? 0 : 1);
1224
1481
  } }
1225
- function MenuProfileComponent_ng_template_11_Template(rf, ctx) { if (rf & 1) {
1226
- i0.ɵɵconditionalCreate(0, MenuProfileComponent_ng_template_11_Conditional_0_Template, 2, 1);
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 icon_r9 = ctx.icon;
1231
- const label_r10 = ctx.label;
1232
- i0.ɵɵconditional(icon_r9 ? 0 : -1);
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.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2, label_r10), "\n");
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: 13, vars: 7, consts: [["state", "matMenuTrigger"], ["menu", "matMenu"], ["profileMenuItem", ""], ["iconDown", ""], [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) {
1265
- i0.ɵɵelementStart(0, "div", 4)(1, "button", 5, 0)(3, "div", 6);
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
- const state_r3 = i0.ɵɵreference(2);
1276
- const menu_r11 = i0.ɵɵreference(8);
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, 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)}}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%}"] }); }
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], imports: [FlexLayoutModule,
1740
+ MenuLangSwitcherComponent,
1741
+ MenuItemWithChildrenComponent], imports: [FlexLayoutModule,
1472
1742
  RouterModule,
1473
1743
  CommonModule,
1474
1744
  MatTooltipModule,