@tilde-nlp/ngx-menu 6.1.11 → 6.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/menu-columns/menu-columns.component.mjs +1 -1
- package/esm2022/lib/components/menu-icon/menu-icon.component.mjs +5 -6
- package/esm2022/lib/components/menu-item-list/menu-item-list.component.mjs +4 -4
- package/esm2022/lib/components/side-nav-menu/side-nav-menu.component.mjs +149 -126
- package/esm2022/lib/constants/index.mjs +2 -0
- package/esm2022/lib/constants/user-menu-options.const.mjs +36 -0
- package/esm2022/lib/models/active-menu-items.model.mjs +1 -1
- package/esm2022/lib/models/custom-menu-item.model.mjs +2 -0
- package/esm2022/lib/models/index.mjs +2 -2
- package/esm2022/lib/models/menu-item-group.model.mjs +1 -1
- package/esm2022/lib/services/menu-items.service.mjs +5 -10
- package/esm2022/lib/services/strapi.service.mjs +1 -1
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/tilde-nlp-ngx-menu.mjs +196 -144
- package/fesm2022/tilde-nlp-ngx-menu.mjs.map +1 -1
- package/lib/components/menu-columns/menu-columns.component.d.ts +1 -1
- package/lib/components/menu-item-list/menu-item-list.component.d.ts +1 -1
- package/lib/components/side-nav-menu/side-nav-menu.component.d.ts +4 -2
- package/lib/constants/index.d.ts +1 -0
- package/lib/constants/user-menu-options.const.d.ts +12 -0
- package/lib/models/active-menu-items.model.d.ts +1 -1
- package/lib/models/{custom-menu-item.d.ts → custom-menu-item.model.d.ts} +0 -1
- package/lib/models/index.d.ts +1 -1
- package/lib/models/menu-item-group.model.d.ts +1 -1
- package/lib/services/menu-items.service.d.ts +4 -6
- package/lib/services/strapi.service.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/esm2022/lib/models/custom-menu-item.mjs +0 -2
|
@@ -28,6 +28,8 @@ import { MatDialogModule } from '@angular/material/dialog';
|
|
|
28
28
|
import { MatListModule } from '@angular/material/list';
|
|
29
29
|
import { provideHttpClient, withInterceptorsFromDi } from '@angular/common/http';
|
|
30
30
|
|
|
31
|
+
const MENU_SHARED_CONFIG = "menu-shared-config";
|
|
32
|
+
|
|
31
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. */
|
|
32
34
|
var StrapiDataLocation;
|
|
33
35
|
(function (StrapiDataLocation) {
|
|
@@ -35,8 +37,6 @@ var StrapiDataLocation;
|
|
|
35
37
|
StrapiDataLocation[StrapiDataLocation["END"] = 1] = "END";
|
|
36
38
|
})(StrapiDataLocation || (StrapiDataLocation = {}));
|
|
37
39
|
|
|
38
|
-
const MENU_SHARED_CONFIG = "menu-shared-config";
|
|
39
|
-
|
|
40
40
|
const MENU_ICON_STRAPI_EXTENSION = ".svg";
|
|
41
41
|
|
|
42
42
|
class StarpiMenuService {
|
|
@@ -135,9 +135,9 @@ class MenuItemsService {
|
|
|
135
135
|
get strapiDataLocation() { return this.menuSharedConfig?.strapiDataLocation ?? StrapiDataLocation.END; }
|
|
136
136
|
get mergedGroups() { return this._mergedGroups; }
|
|
137
137
|
get menuItemGroups() { return this.menuSharedConfig.itemGroups; }
|
|
138
|
-
constructor(router,
|
|
138
|
+
constructor(router, menuSharedConfig, strapiService) {
|
|
139
139
|
this.router = router;
|
|
140
|
-
this.
|
|
140
|
+
this.menuSharedConfig = menuSharedConfig;
|
|
141
141
|
this.strapiService = strapiService;
|
|
142
142
|
this._activeElements = new BehaviorSubject({});
|
|
143
143
|
this.strapiItems = [];
|
|
@@ -148,14 +148,9 @@ class MenuItemsService {
|
|
|
148
148
|
fragment: 'exact'
|
|
149
149
|
};
|
|
150
150
|
this._mergedGroups = [];
|
|
151
|
-
this.
|
|
152
|
-
this.initData();
|
|
151
|
+
this.getStrapiData();
|
|
153
152
|
this.subscribeToRouteChanges();
|
|
154
153
|
}
|
|
155
|
-
setMenuItems(config) {
|
|
156
|
-
this.menuSharedConfig = config;
|
|
157
|
-
this.initData();
|
|
158
|
-
}
|
|
159
154
|
subscribeToRouteChanges() {
|
|
160
155
|
this.router.events
|
|
161
156
|
.pipe(filter(e => e instanceof NavigationEnd))
|
|
@@ -194,7 +189,7 @@ class MenuItemsService {
|
|
|
194
189
|
}
|
|
195
190
|
return customIdElement;
|
|
196
191
|
}
|
|
197
|
-
|
|
192
|
+
getStrapiData() {
|
|
198
193
|
if (!this.menuSharedConfig?.disableStrapi) {
|
|
199
194
|
this.strapiService.getMenuItems().subscribe(this.loadData.bind(this));
|
|
200
195
|
}
|
|
@@ -290,18 +285,17 @@ function MenuIconComponent_ng_container_0_mat_icon_1_Template(rf, ctx) { if (rf
|
|
|
290
285
|
i0.ɵɵproperty("svgIcon", ctx_r0.menuItem.icon);
|
|
291
286
|
} }
|
|
292
287
|
function MenuIconComponent_ng_container_0_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
293
|
-
i0.ɵɵelementStart(0, "
|
|
288
|
+
i0.ɵɵelementStart(0, "mat-icon", 4);
|
|
294
289
|
i0.ɵɵtext(1);
|
|
295
290
|
i0.ɵɵelementEnd();
|
|
296
291
|
} if (rf & 2) {
|
|
297
292
|
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
298
|
-
i0.ɵɵclassProp("material-icons-outlined", ctx_r0.menuItem == null ? null : ctx_r0.menuItem.isIconOutlined);
|
|
299
293
|
i0.ɵɵadvance();
|
|
300
294
|
i0.ɵɵtextInterpolate(ctx_r0.menuItem.icon);
|
|
301
295
|
} }
|
|
302
296
|
function MenuIconComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
303
297
|
i0.ɵɵelementContainerStart(0);
|
|
304
|
-
i0.ɵɵtemplate(1, MenuIconComponent_ng_container_0_mat_icon_1_Template, 1, 1, "mat-icon", 2)(2, MenuIconComponent_ng_container_0_ng_template_2_Template, 2,
|
|
298
|
+
i0.ɵɵtemplate(1, MenuIconComponent_ng_container_0_mat_icon_1_Template, 1, 1, "mat-icon", 2)(2, MenuIconComponent_ng_container_0_ng_template_2_Template, 2, 1, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
|
|
305
299
|
i0.ɵɵelementContainerEnd();
|
|
306
300
|
} if (rf & 2) {
|
|
307
301
|
const materialIcon_r2 = i0.ɵɵreference(3);
|
|
@@ -318,7 +312,7 @@ class MenuIconComponent {
|
|
|
318
312
|
return typeof icon !== "string";
|
|
319
313
|
}
|
|
320
314
|
static { this.ɵfac = function MenuIconComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MenuIconComponent)(); }; }
|
|
321
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuIconComponent, selectors: [["tld-menu-icon"]], inputs: { menuItem: "menuItem" }, decls: 1, vars: 1, consts: [["materialIcon", ""], [4, "ngIf"], ["class", "menu-icon", 3, "svgIcon", 4, "ngIf", "ngIfElse"], [1, "menu-icon", 3, "svgIcon"], [1, "
|
|
315
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuIconComponent, selectors: [["tld-menu-icon"]], inputs: { menuItem: "menuItem" }, decls: 1, vars: 1, consts: [["materialIcon", ""], [4, "ngIf"], ["class", "menu-icon", 3, "svgIcon", 4, "ngIf", "ngIfElse"], [1, "menu-icon", 3, "svgIcon"], [1, "menu-icon"]], template: function MenuIconComponent_Template(rf, ctx) { if (rf & 1) {
|
|
322
316
|
i0.ɵɵtemplate(0, MenuIconComponent_ng_container_0_Template, 4, 2, "ng-container", 1);
|
|
323
317
|
} if (rf & 2) {
|
|
324
318
|
i0.ɵɵproperty("ngIf", ctx.menuItem.icon);
|
|
@@ -326,7 +320,7 @@ class MenuIconComponent {
|
|
|
326
320
|
}
|
|
327
321
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MenuIconComponent, [{
|
|
328
322
|
type: Component,
|
|
329
|
-
args: [{ selector: 'tld-menu-icon', template: "<ng-container *ngIf=\"menuItem.icon\">\r\n <mat-icon class=\"menu-icon\" [svgIcon]=\"menuItem.icon\" *ngIf=\"!menuItem.materialIcon; else materialIcon;\"></mat-icon>\r\n <ng-template #materialIcon>\r\n <
|
|
323
|
+
args: [{ selector: 'tld-menu-icon', template: "<ng-container *ngIf=\"menuItem.icon\">\r\n <mat-icon class=\"menu-icon\" [svgIcon]=\"menuItem.icon\" *ngIf=\"!menuItem.materialIcon; else materialIcon;\"></mat-icon>\r\n <ng-template #materialIcon>\r\n <mat-icon class=\"menu-icon\">{{menuItem.icon}}</mat-icon>\r\n </ng-template>\r\n</ng-container>\r\n", styles: [".menu-icon{color:var(--base-30);margin:auto;min-width:24px;min-height:24px;max-width:24px;max-height:24px;vertical-align:middle}\n"] }]
|
|
330
324
|
}], null, { menuItem: [{
|
|
331
325
|
type: Input
|
|
332
326
|
}] }); })();
|
|
@@ -545,7 +539,7 @@ class MenuItemListComponent {
|
|
|
545
539
|
this.toggleExpand.next(menuItem);
|
|
546
540
|
}
|
|
547
541
|
static { this.ɵfac = function MenuItemListComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || MenuItemListComponent)(); }; }
|
|
548
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuItemListComponent, selectors: [["menu-item-list"]], inputs: { direction: "direction", labelsVisible: "labelsVisible", activeItem: "activeItem", showIcons: "showIcons", items: "items", menuItemGroup: "menuItemGroup" }, outputs: { toggleExpand: "toggleExpand" }, decls: 8, vars: 3, consts: [["itemWithChildren", ""], ["menuItemLink", ""], [1, "menu-list-wrapper"], ["fxLayoutAlign", "
|
|
542
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MenuItemListComponent, selectors: [["menu-item-list"]], inputs: { direction: "direction", labelsVisible: "labelsVisible", activeItem: "activeItem", showIcons: "showIcons", items: "items", menuItemGroup: "menuItemGroup" }, outputs: { toggleExpand: "toggleExpand" }, decls: 8, vars: 3, consts: [["itemWithChildren", ""], ["menuItemLink", ""], [1, "menu-list-wrapper"], ["fxLayoutAlign", "start center", "class", "menu-item-list-title", 4, "ngIf"], ["fxLayout", "column", 1, "menu-item-list", 3, "fxLayoutAlign"], [4, "ngFor", "ngForOf"], ["fxLayoutAlign", "start center", 1, "menu-item-list-title"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], ["matTooltipPosition", "after", "matTooltipClass", "menu-tooltip", "fxLayoutGap", "0.375rem", 1, "text-m", "menu-item", 3, "click", "ngClass.lt-md", "fxLayout", "matTooltip", "fxLayoutAlign"], [4, "ngIf"], [3, "menuItem"], [1, "menu-item-title"], [1, "title-content"], ["class", "material-icons", 4, "ngIf"], [1, "material-icons"], ["class", "child-list", 3, "items", "direction", "labelsVisible", "activeItem", 4, "ngIf"], [1, "child-list", 3, "items", "direction", "labelsVisible", "activeItem"], [3, "ngClass.lt-md", "menuItem", "direction", "labelsVisible", "activeItem", "showIcons"]], template: function MenuItemListComponent_Template(rf, ctx) { if (rf & 1) {
|
|
549
543
|
i0.ɵɵelementStart(0, "div", 2);
|
|
550
544
|
i0.ɵɵtemplate(1, MenuItemListComponent_div_1_Template, 3, 3, "div", 3);
|
|
551
545
|
i0.ɵɵelementStart(2, "div", 4);
|
|
@@ -559,11 +553,11 @@ class MenuItemListComponent {
|
|
|
559
553
|
i0.ɵɵproperty("fxLayoutAlign", ctx.menuLayoutDirection);
|
|
560
554
|
i0.ɵɵadvance();
|
|
561
555
|
i0.ɵɵproperty("ngForOf", ctx.items);
|
|
562
|
-
} }, dependencies: [i4.DefaultLayoutDirective, i4.DefaultLayoutGapDirective, i4.DefaultLayoutAlignDirective, i5.DefaultClassDirective, i3.NgForOf, i3.NgIf, i3.NgTemplateOutlet, i5$1.MatTooltip, MenuItemListComponent, MenuIconComponent, MenuItemLinkComponent, i8.TranslatePipe], styles: ["[_nghost-%COMP%]{display:inline-block} .collapsed .menu-item-list{display:flex!important;justify-content:center!important;align-items:center!important} .collapsed .menu-list-wrapper, .collapsed tld-menu-item-link{display:flex!important;justify-content:center!important} .collapsed .menu-item{display:flex!important;place-content:center center!important} .collapsed tld-menu-item-link:not(:first-child){margin-top:16px!important}[_nghost-%COMP%] .menu-list-wrapper .menu-item{cursor:pointer;font-style:normal;color:var(--base-30);text-decoration:none;align-items:center!important;font-weight:400;background:none;border:none}[_nghost-%COMP%] .menu-list-wrapper .menu-item:not(button):not(.active-menu-item):hover{background-color:var(--base-70)!important}[_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item, [_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item mat-icon, [_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item:hover{font-weight:600}[_nghost-%COMP%] .menu-list-wrapper .menu-item span{display:inline-block}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title{display:flex;flex-direction:row;align-items:start;width:100%}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title .title-content{display:block}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title .title-content:before{display:block;content:attr(content);font-weight:600;height:0;overflow:hidden;visibility:hidden}.child-list[_nghost-%COMP%]{margin-bottom:1rem}.child-list[_nghost-%COMP%] .menu-item[_ngcontent-%COMP%] + .menu-item[_ngcontent-%COMP%]{margin-top:.5rem} .menu-tooltip{left:.625rem;font-family:Roboto;font-style:normal;font-weight:400;font-size:.75rem;line-height:1.25rem;color:var(--base-70);border-radius:.25rem;position:relative} .menu-tooltip:after{width:0;height:0;content:\"\";position:absolute;border-left:.5rem solid transparent;border-right:.5rem solid transparent;border-bottom:.5rem solid var(--menu-border-dark-color);left:-.75rem;top:calc(50% - .25rem);transform:rotate(270deg);overflow:initial}
|
|
556
|
+
} }, dependencies: [i4.DefaultLayoutDirective, i4.DefaultLayoutGapDirective, i4.DefaultLayoutAlignDirective, i5.DefaultClassDirective, i3.NgForOf, i3.NgIf, i3.NgTemplateOutlet, i5$1.MatTooltip, MenuItemListComponent, MenuIconComponent, MenuItemLinkComponent, i8.TranslatePipe], styles: ["[_nghost-%COMP%]{display:inline-block} .collapsed .menu-item-list{display:flex!important;justify-content:center!important;align-items:center!important} .collapsed .menu-list-wrapper, .collapsed tld-menu-item-link{display:flex!important;justify-content:center!important} .collapsed .menu-item{display:flex!important;place-content:center center!important} .collapsed tld-menu-item-link:not(:first-child){margin-top:16px!important}[_nghost-%COMP%] .menu-list-wrapper .menu-item{cursor:pointer;font-style:normal;color:var(--base-30);text-decoration:none;align-items:center!important;font-weight:400;background:none;border:none}[_nghost-%COMP%] .menu-list-wrapper .menu-item:not(button):not(.active-menu-item):hover{background-color:var(--base-70)!important}[_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item, [_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item mat-icon, [_nghost-%COMP%] .menu-list-wrapper .menu-item.active-menu-item:hover{font-weight:600}[_nghost-%COMP%] .menu-list-wrapper .menu-item span{display:inline-block}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title{display:flex;flex-direction:row;align-items:start;width:100%}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title .title-content{display:block}[_nghost-%COMP%] .menu-list-wrapper .menu-item .menu-item-title .title-content:before{display:block;content:attr(content);font-weight:600;height:0;overflow:hidden;visibility:hidden}.child-list[_nghost-%COMP%]{margin-bottom:1rem}.child-list[_nghost-%COMP%] .menu-item[_ngcontent-%COMP%] + .menu-item[_ngcontent-%COMP%]{margin-top:.5rem} .menu-tooltip{left:.625rem;font-family:Roboto;font-style:normal;font-weight:400;font-size:.75rem;line-height:1.25rem;color:var(--base-70);border-radius:.25rem;position:relative} .menu-tooltip:after{width:0;height:0;content:\"\";position:absolute;border-left:.5rem solid transparent;border-right:.5rem solid transparent;border-bottom:.5rem solid var(--menu-border-dark-color);left:-.75rem;top:calc(50% - .25rem);transform:rotate(270deg);overflow:initial}"] }); }
|
|
563
557
|
}
|
|
564
558
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MenuItemListComponent, [{
|
|
565
559
|
type: Component,
|
|
566
|
-
args: [{ selector: 'menu-item-list', template: "<div class=\"menu-list-wrapper\">\r\n <div *ngIf=\"titleKey && showTitle && labelsVisible\" fxLayoutAlign=\"
|
|
560
|
+
args: [{ selector: 'menu-item-list', template: "<div class=\"menu-list-wrapper\">\r\n <div *ngIf=\"titleKey && showTitle && labelsVisible\" fxLayoutAlign=\"start center\" class=\"menu-item-list-title\">\r\n {{ titleKey | translate }}\r\n </div>\r\n <div fxLayout=\"column\" [fxLayoutAlign]=\"menuLayoutDirection\" class=\"menu-item-list\">\r\n <ng-container *ngFor=\"let menuItem of items\">\r\n <ng-container\r\n *ngTemplateOutlet=\"!menuItem.showChildren || !menuItem.children || menuItem?.children?.length === 0 ? menuItemLink : itemWithChildren; context: {menuItem: menuItem}\">\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n</div>\r\n\r\n<ng-template #itemWithChildren let-menuItem=\"menuItem\">\r\n <button [attr.id]=\"menuItem.customId\" [ngClass.lt-md]=\"'mob-menu-item'\" [fxLayout]=\"menuItemLayout\" class=\"text-m menu-item\"\r\n [matTooltip]=\"!labelsVisible ? (menuItem.title | translate) : ''\" matTooltipPosition=\"after\" [class.menu-labels-visible]=\"labelsVisible\"\r\n [fxLayoutAlign]=\"menuLayoutDirection\" matTooltipClass=\"menu-tooltip\" fxLayoutGap=\"0.375rem\"\r\n [class.active-menu-item]=\"activeItem?.link && menuItem === activeItem\" (click)=\"toggleItemExpand($event,menuItem)\">\r\n <ng-container *ngIf=\"showIcons && menuItem.icon\">\r\n <tld-menu-icon [menuItem]=\"menuItem\"></tld-menu-icon>\r\n </ng-container>\r\n <ng-container *ngIf=\"labelsVisible\">\r\n <span class=\"menu-item-title\">\r\n <span class=\"title-content\">{{ menuItem.title | translate }}</span></span>\r\n <span class=\"material-icons\" *ngIf=\"menuItem.showChildren && menuItem.children\">\r\n {{ menuItem.expanded ? 'arrow_drop_up' : 'arrow_drop_down' }}\r\n </span>\r\n </ng-container>\r\n </button>\r\n <ng-container *ngIf=\"menuItem.showChildren && menuItem.expanded && labelsVisible\">\r\n <menu-item-list class=\"child-list\" *ngIf=\"menuItem.children && menuItem.children.length\" [items]=\"menuItem.children\"\r\n [direction]=\"direction\" [labelsVisible]=\"labelsVisible\" [activeItem]=\"activeItem\">\r\n </menu-item-list>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #menuItemLink let-menuItem=\"menuItem\">\r\n <tld-menu-item-link [ngClass.lt-md]=\"'mob-menu-item'\" [menuItem]=\"menuItem\" [direction]=\"direction\" [labelsVisible]=\"labelsVisible\"\r\n [activeItem]=\"activeItem\" [showIcons]=\"showIcons\"></tld-menu-item-link>\r\n</ng-template>", styles: [":host{display:inline-block}::ng-deep .collapsed .menu-item-list{display:flex!important;justify-content:center!important;align-items:center!important}::ng-deep .collapsed .menu-list-wrapper,::ng-deep .collapsed tld-menu-item-link{display:flex!important;justify-content:center!important}::ng-deep .collapsed .menu-item{display:flex!important;place-content:center center!important}::ng-deep .collapsed tld-menu-item-link:not(:first-child){margin-top:16px!important}:host ::ng-deep .menu-list-wrapper .menu-item{cursor:pointer;font-style:normal;color:var(--base-30);text-decoration:none;align-items:center!important;font-weight:400;background:none;border:none}:host ::ng-deep .menu-list-wrapper .menu-item:not(button):not(.active-menu-item):hover{background-color:var(--base-70)!important}:host ::ng-deep .menu-list-wrapper .menu-item.active-menu-item,:host ::ng-deep .menu-list-wrapper .menu-item.active-menu-item mat-icon,:host ::ng-deep .menu-list-wrapper .menu-item.active-menu-item:hover{font-weight:600}:host ::ng-deep .menu-list-wrapper .menu-item span{display:inline-block}:host ::ng-deep .menu-list-wrapper .menu-item .menu-item-title{display:flex;flex-direction:row;align-items:start;width:100%}:host ::ng-deep .menu-list-wrapper .menu-item .menu-item-title .title-content{display:block}:host ::ng-deep .menu-list-wrapper .menu-item .menu-item-title .title-content:before{display:block;content:attr(content);font-weight:600;height:0;overflow:hidden;visibility:hidden}:host.child-list{margin-bottom:1rem}:host.child-list .menu-item+.menu-item{margin-top:.5rem}::ng-deep .menu-tooltip{left:.625rem;font-family:Roboto;font-style:normal;font-weight:400;font-size:.75rem;line-height:1.25rem;color:var(--base-70);border-radius:.25rem;position:relative}::ng-deep .menu-tooltip:after{width:0;height:0;content:\"\";position:absolute;border-left:.5rem solid transparent;border-right:.5rem solid transparent;border-bottom:.5rem solid var(--menu-border-dark-color);left:-.75rem;top:calc(50% - .25rem);transform:rotate(270deg);overflow:initial}\n"] }]
|
|
567
561
|
}], null, { direction: [{
|
|
568
562
|
type: Input
|
|
569
563
|
}], labelsVisible: [{
|
|
@@ -679,13 +673,42 @@ class MenuColumnsComponent {
|
|
|
679
673
|
|
|
680
674
|
const _forTrack0 = ($index, $item) => $item.label;
|
|
681
675
|
const _c0 = (a0, a1) => ({ icon: a0, label: a1 });
|
|
682
|
-
function
|
|
676
|
+
function SideNavMenuComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
683
677
|
const _r2 = i0.ɵɵgetCurrentView();
|
|
684
|
-
i0.ɵɵelementStart(0, "a",
|
|
678
|
+
i0.ɵɵelementStart(0, "div", 14)(1, "a", 15);
|
|
679
|
+
i0.ɵɵpipe(2, "translate");
|
|
680
|
+
i0.ɵɵlistener("click", function SideNavMenuComponent_div_0_Template_a_click_1_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.logoClick($event)); });
|
|
681
|
+
i0.ɵɵelement(3, "img", 16);
|
|
682
|
+
i0.ɵɵelementStart(4, "span", 17);
|
|
683
|
+
i0.ɵɵtext(5);
|
|
684
|
+
i0.ɵɵelementEnd()();
|
|
685
|
+
i0.ɵɵelementStart(6, "button", 9);
|
|
686
|
+
i0.ɵɵpipe(7, "translate");
|
|
687
|
+
i0.ɵɵlistener("click", function SideNavMenuComponent_div_0_Template_button_click_6_listener() { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.toggleCollapse()); });
|
|
688
|
+
i0.ɵɵelementStart(8, "mat-icon");
|
|
689
|
+
i0.ɵɵtext(9, "menu");
|
|
690
|
+
i0.ɵɵelementEnd()()();
|
|
691
|
+
} if (rf & 2) {
|
|
692
|
+
const ctx_r2 = i0.ɵɵnextContext();
|
|
693
|
+
i0.ɵɵproperty("fxHide", !ctx_r2.collapsed);
|
|
694
|
+
i0.ɵɵadvance();
|
|
695
|
+
i0.ɵɵproperty("libPlausibleEvent", ctx_r2.LOGOCLICK_PLAUSIBLE_EVENT)("href", ctx_r2.baseUrl, i0.ɵɵsanitizeUrl);
|
|
696
|
+
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(2, 8, "MENU.ARIA_LABELS.LOGO"));
|
|
697
|
+
i0.ɵɵadvance(2);
|
|
698
|
+
i0.ɵɵproperty("src", ctx_r2.menuLogoImage, i0.ɵɵsanitizeUrl);
|
|
699
|
+
i0.ɵɵadvance(2);
|
|
700
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r2.productName, " ");
|
|
701
|
+
i0.ɵɵadvance();
|
|
702
|
+
i0.ɵɵproperty("libPlausibleEvent", ctx_r2.collapsed ? ctx_r2.EXPAND_PLAUSIBLE_EVENT : ctx_r2.COLLAPSE_PLAUSIBLE_EVENT);
|
|
703
|
+
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(7, 10, "ARIA_LABELS.MENU_TOGGLER"));
|
|
704
|
+
} }
|
|
705
|
+
function SideNavMenuComponent_a_4_Template(rf, ctx) { if (rf & 1) {
|
|
706
|
+
const _r4 = i0.ɵɵgetCurrentView();
|
|
707
|
+
i0.ɵɵelementStart(0, "a", 15);
|
|
685
708
|
i0.ɵɵpipe(1, "translate");
|
|
686
|
-
i0.ɵɵlistener("click", function
|
|
687
|
-
i0.ɵɵelement(2, "img",
|
|
688
|
-
i0.ɵɵelementStart(3, "span",
|
|
709
|
+
i0.ɵɵlistener("click", function SideNavMenuComponent_a_4_Template_a_click_0_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.logoClick($event)); });
|
|
710
|
+
i0.ɵɵelement(2, "img", 16);
|
|
711
|
+
i0.ɵɵelementStart(3, "span", 17);
|
|
689
712
|
i0.ɵɵtext(4);
|
|
690
713
|
i0.ɵɵelementEnd()();
|
|
691
714
|
} if (rf & 2) {
|
|
@@ -697,144 +720,158 @@ function SideNavMenuComponent_a_14_Template(rf, ctx) { if (rf & 1) {
|
|
|
697
720
|
i0.ɵɵadvance(2);
|
|
698
721
|
i0.ɵɵtextInterpolate1(" ", ctx_r2.productName, " ");
|
|
699
722
|
} }
|
|
700
|
-
function
|
|
701
|
-
i0.ɵɵelementStart(0, "mat-icon"
|
|
723
|
+
function SideNavMenuComponent_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
724
|
+
i0.ɵɵelementStart(0, "mat-icon");
|
|
725
|
+
i0.ɵɵtext(1, "close");
|
|
726
|
+
i0.ɵɵelementEnd();
|
|
727
|
+
} }
|
|
728
|
+
function SideNavMenuComponent_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
729
|
+
i0.ɵɵelementStart(0, "mat-icon");
|
|
730
|
+
i0.ɵɵtext(1);
|
|
731
|
+
i0.ɵɵelementEnd();
|
|
732
|
+
} if (rf & 2) {
|
|
733
|
+
const ctx_r2 = i0.ɵɵnextContext();
|
|
734
|
+
i0.ɵɵadvance();
|
|
735
|
+
i0.ɵɵtextInterpolate(ctx_r2.collapsed ? "keyboard_double_arrow_right" : "keyboard_double_arrow_left");
|
|
736
|
+
} }
|
|
737
|
+
function SideNavMenuComponent_button_11_ng_container_4_mat_icon_3_Template(rf, ctx) { if (rf & 1) {
|
|
738
|
+
i0.ɵɵelementStart(0, "mat-icon", 23);
|
|
702
739
|
i0.ɵɵtext(1);
|
|
703
740
|
i0.ɵɵelementEnd();
|
|
704
741
|
} if (rf & 2) {
|
|
705
742
|
i0.ɵɵadvance();
|
|
706
743
|
i0.ɵɵtextInterpolate("keyboard_arrow_down");
|
|
707
744
|
} }
|
|
708
|
-
function
|
|
709
|
-
i0.ɵɵelementStart(0, "mat-icon",
|
|
745
|
+
function SideNavMenuComponent_button_11_ng_container_4_ng_template_4_Template(rf, ctx) { if (rf & 1) {
|
|
746
|
+
i0.ɵɵelementStart(0, "mat-icon", 23);
|
|
710
747
|
i0.ɵɵtext(1);
|
|
711
748
|
i0.ɵɵelementEnd();
|
|
712
749
|
} if (rf & 2) {
|
|
713
750
|
i0.ɵɵadvance();
|
|
714
751
|
i0.ɵɵtextInterpolate("keyboard_arrow_up");
|
|
715
752
|
} }
|
|
716
|
-
function
|
|
753
|
+
function SideNavMenuComponent_button_11_ng_container_4_Template(rf, ctx) { if (rf & 1) {
|
|
717
754
|
i0.ɵɵelementContainerStart(0);
|
|
718
|
-
i0.ɵɵelementStart(1, "span",
|
|
755
|
+
i0.ɵɵelementStart(1, "span", 21);
|
|
719
756
|
i0.ɵɵtext(2);
|
|
720
757
|
i0.ɵɵelementEnd();
|
|
721
|
-
i0.ɵɵtemplate(3,
|
|
758
|
+
i0.ɵɵtemplate(3, SideNavMenuComponent_button_11_ng_container_4_mat_icon_3_Template, 2, 1, "mat-icon", 22)(4, SideNavMenuComponent_button_11_ng_container_4_ng_template_4_Template, 2, 1, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor);
|
|
722
759
|
i0.ɵɵelementContainerEnd();
|
|
723
760
|
} if (rf & 2) {
|
|
724
|
-
const
|
|
761
|
+
const iconDown_r5 = i0.ɵɵreference(5);
|
|
725
762
|
i0.ɵɵnextContext();
|
|
726
|
-
const
|
|
763
|
+
const state_r6 = i0.ɵɵreference(1);
|
|
727
764
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
728
765
|
i0.ɵɵadvance(2);
|
|
729
766
|
i0.ɵɵtextInterpolate1(" ", ctx_r2.username, " ");
|
|
730
767
|
i0.ɵɵadvance();
|
|
731
|
-
i0.ɵɵproperty("ngIf",
|
|
768
|
+
i0.ɵɵproperty("ngIf", state_r6.menuOpen)("ngIfElse", iconDown_r5);
|
|
732
769
|
} }
|
|
733
|
-
function
|
|
734
|
-
i0.ɵɵelementStart(0, "button",
|
|
770
|
+
function SideNavMenuComponent_button_11_Template(rf, ctx) { if (rf & 1) {
|
|
771
|
+
i0.ɵɵelementStart(0, "button", 18, 2)(2, "div", 19);
|
|
735
772
|
i0.ɵɵtext(3);
|
|
736
773
|
i0.ɵɵelementEnd();
|
|
737
|
-
i0.ɵɵtemplate(4,
|
|
774
|
+
i0.ɵɵtemplate(4, SideNavMenuComponent_button_11_ng_container_4_Template, 6, 3, "ng-container", 20);
|
|
738
775
|
i0.ɵɵelementEnd();
|
|
739
776
|
} if (rf & 2) {
|
|
740
777
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
741
|
-
const
|
|
742
|
-
i0.ɵɵproperty("matMenuTriggerFor",
|
|
778
|
+
const menu_r7 = i0.ɵɵreference(13);
|
|
779
|
+
i0.ɵɵproperty("matMenuTriggerFor", menu_r7);
|
|
743
780
|
i0.ɵɵadvance(3);
|
|
744
781
|
i0.ɵɵtextInterpolate1(" ", ctx_r2.userInitials, " ");
|
|
745
782
|
i0.ɵɵadvance();
|
|
746
783
|
i0.ɵɵproperty("ngIf", !ctx_r2.collapsed);
|
|
747
784
|
} }
|
|
748
|
-
function
|
|
785
|
+
function SideNavMenuComponent_For_15_Conditional_0_Conditional_0_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
749
786
|
i0.ɵɵelementContainer(0);
|
|
750
787
|
} }
|
|
751
|
-
function
|
|
752
|
-
i0.ɵɵelementStart(0, "a",
|
|
753
|
-
i0.ɵɵtemplate(1,
|
|
788
|
+
function SideNavMenuComponent_For_15_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
789
|
+
i0.ɵɵelementStart(0, "a", 25);
|
|
790
|
+
i0.ɵɵtemplate(1, SideNavMenuComponent_For_15_Conditional_0_Conditional_0_ng_container_1_Template, 1, 0, "ng-container", 27);
|
|
754
791
|
i0.ɵɵelementEnd();
|
|
755
792
|
} if (rf & 2) {
|
|
756
|
-
const
|
|
793
|
+
const item_r8 = i0.ɵɵnextContext(2).$implicit;
|
|
757
794
|
i0.ɵɵnextContext();
|
|
758
|
-
const
|
|
759
|
-
i0.ɵɵproperty("href",
|
|
795
|
+
const profileMenuItem_r9 = i0.ɵɵreference(17);
|
|
796
|
+
i0.ɵɵproperty("href", item_r8.link.href, i0.ɵɵsanitizeUrl);
|
|
760
797
|
i0.ɵɵadvance();
|
|
761
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
|
798
|
+
i0.ɵɵproperty("ngTemplateOutlet", profileMenuItem_r9)("ngTemplateOutletContext", i0.ɵɵpureFunction2(3, _c0, item_r8.icon, item_r8.label));
|
|
762
799
|
} }
|
|
763
|
-
function
|
|
800
|
+
function SideNavMenuComponent_For_15_Conditional_0_Conditional_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
764
801
|
i0.ɵɵelementContainer(0);
|
|
765
802
|
} }
|
|
766
|
-
function
|
|
767
|
-
i0.ɵɵelementStart(0, "a",
|
|
768
|
-
i0.ɵɵtemplate(1,
|
|
803
|
+
function SideNavMenuComponent_For_15_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
804
|
+
i0.ɵɵelementStart(0, "a", 26);
|
|
805
|
+
i0.ɵɵtemplate(1, SideNavMenuComponent_For_15_Conditional_0_Conditional_1_ng_container_1_Template, 1, 0, "ng-container", 27);
|
|
769
806
|
i0.ɵɵelementEnd();
|
|
770
807
|
} if (rf & 2) {
|
|
771
|
-
const
|
|
808
|
+
const item_r8 = i0.ɵɵnextContext(2).$implicit;
|
|
772
809
|
i0.ɵɵnextContext();
|
|
773
|
-
const
|
|
774
|
-
i0.ɵɵproperty("routerLink",
|
|
810
|
+
const profileMenuItem_r9 = i0.ɵɵreference(17);
|
|
811
|
+
i0.ɵɵproperty("routerLink", item_r8.link.href);
|
|
775
812
|
i0.ɵɵadvance();
|
|
776
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
|
813
|
+
i0.ɵɵproperty("ngTemplateOutlet", profileMenuItem_r9)("ngTemplateOutletContext", i0.ɵɵpureFunction2(3, _c0, item_r8.icon, item_r8.label));
|
|
777
814
|
} }
|
|
778
|
-
function
|
|
779
|
-
i0.ɵɵtemplate(0,
|
|
815
|
+
function SideNavMenuComponent_For_15_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
816
|
+
i0.ɵɵtemplate(0, SideNavMenuComponent_For_15_Conditional_0_Conditional_0_Template, 2, 6, "a", 25)(1, SideNavMenuComponent_For_15_Conditional_0_Conditional_1_Template, 2, 6, "a", 26);
|
|
780
817
|
} if (rf & 2) {
|
|
781
|
-
const
|
|
782
|
-
i0.ɵɵconditional(
|
|
818
|
+
const item_r8 = i0.ɵɵnextContext().$implicit;
|
|
819
|
+
i0.ɵɵconditional(item_r8.link.isExternal ? 0 : 1);
|
|
783
820
|
} }
|
|
784
|
-
function
|
|
821
|
+
function SideNavMenuComponent_For_15_Conditional_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
785
822
|
i0.ɵɵelementContainer(0);
|
|
786
823
|
} }
|
|
787
|
-
function
|
|
788
|
-
const
|
|
789
|
-
i0.ɵɵelementStart(0, "button",
|
|
790
|
-
i0.ɵɵlistener("click", function
|
|
791
|
-
i0.ɵɵtemplate(1,
|
|
824
|
+
function SideNavMenuComponent_For_15_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
825
|
+
const _r10 = i0.ɵɵgetCurrentView();
|
|
826
|
+
i0.ɵɵelementStart(0, "button", 28);
|
|
827
|
+
i0.ɵɵlistener("click", function SideNavMenuComponent_For_15_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r10); const item_r8 = i0.ɵɵnextContext().$implicit; return i0.ɵɵresetView(item_r8.button == null ? null : item_r8.button.callback()); });
|
|
828
|
+
i0.ɵɵtemplate(1, SideNavMenuComponent_For_15_Conditional_1_ng_container_1_Template, 1, 0, "ng-container", 27);
|
|
792
829
|
i0.ɵɵelementEnd();
|
|
793
830
|
} if (rf & 2) {
|
|
794
|
-
const
|
|
831
|
+
const item_r8 = i0.ɵɵnextContext().$implicit;
|
|
795
832
|
i0.ɵɵnextContext();
|
|
796
|
-
const
|
|
833
|
+
const profileMenuItem_r9 = i0.ɵɵreference(17);
|
|
797
834
|
i0.ɵɵadvance();
|
|
798
|
-
i0.ɵɵproperty("ngTemplateOutlet",
|
|
835
|
+
i0.ɵɵproperty("ngTemplateOutlet", profileMenuItem_r9)("ngTemplateOutletContext", i0.ɵɵpureFunction2(2, _c0, item_r8.icon, item_r8.label));
|
|
799
836
|
} }
|
|
800
|
-
function
|
|
801
|
-
i0.ɵɵtemplate(0,
|
|
837
|
+
function SideNavMenuComponent_For_15_Template(rf, ctx) { if (rf & 1) {
|
|
838
|
+
i0.ɵɵtemplate(0, SideNavMenuComponent_For_15_Conditional_0_Template, 2, 1)(1, SideNavMenuComponent_For_15_Conditional_1_Template, 2, 5, "button", 24);
|
|
802
839
|
} if (rf & 2) {
|
|
803
|
-
const
|
|
804
|
-
i0.ɵɵconditional(
|
|
840
|
+
const item_r8 = ctx.$implicit;
|
|
841
|
+
i0.ɵɵconditional(item_r8.link ? 0 : 1);
|
|
805
842
|
} }
|
|
806
|
-
function
|
|
807
|
-
i0.ɵɵelementStart(0, "span",
|
|
843
|
+
function SideNavMenuComponent_ng_template_16_Conditional_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
844
|
+
i0.ɵɵelementStart(0, "span", 31);
|
|
808
845
|
i0.ɵɵtext(1);
|
|
809
846
|
i0.ɵɵelementEnd();
|
|
810
847
|
} if (rf & 2) {
|
|
811
|
-
const
|
|
812
|
-
i0.ɵɵclassProp("material-icons-outlined",
|
|
848
|
+
const icon_r11 = i0.ɵɵnextContext(2).icon;
|
|
849
|
+
i0.ɵɵclassProp("material-icons-outlined", icon_r11 == null ? null : icon_r11.isOutlined);
|
|
813
850
|
i0.ɵɵadvance();
|
|
814
|
-
i0.ɵɵtextInterpolate1(" ",
|
|
851
|
+
i0.ɵɵtextInterpolate1(" ", icon_r11 == null ? null : icon_r11.name, " ");
|
|
815
852
|
} }
|
|
816
|
-
function
|
|
817
|
-
i0.ɵɵelement(0, "mat-icon",
|
|
853
|
+
function SideNavMenuComponent_ng_template_16_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
854
|
+
i0.ɵɵelement(0, "mat-icon", 30);
|
|
818
855
|
} if (rf & 2) {
|
|
819
|
-
const
|
|
820
|
-
i0.ɵɵproperty("svgIcon",
|
|
856
|
+
const icon_r11 = i0.ɵɵnextContext(2).icon;
|
|
857
|
+
i0.ɵɵproperty("svgIcon", icon_r11 == null ? null : icon_r11.name);
|
|
821
858
|
} }
|
|
822
|
-
function
|
|
823
|
-
i0.ɵɵtemplate(0,
|
|
859
|
+
function SideNavMenuComponent_ng_template_16_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
860
|
+
i0.ɵɵtemplate(0, SideNavMenuComponent_ng_template_16_Conditional_0_Conditional_0_Template, 2, 3, "span", 29)(1, SideNavMenuComponent_ng_template_16_Conditional_0_Conditional_1_Template, 1, 1, "mat-icon", 30);
|
|
824
861
|
} if (rf & 2) {
|
|
825
|
-
const
|
|
826
|
-
i0.ɵɵconditional(!(
|
|
862
|
+
const icon_r11 = i0.ɵɵnextContext().icon;
|
|
863
|
+
i0.ɵɵconditional(!(icon_r11 == null ? null : icon_r11.isCustom) ? 0 : 1);
|
|
827
864
|
} }
|
|
828
|
-
function
|
|
829
|
-
i0.ɵɵtemplate(0,
|
|
865
|
+
function SideNavMenuComponent_ng_template_16_Template(rf, ctx) { if (rf & 1) {
|
|
866
|
+
i0.ɵɵtemplate(0, SideNavMenuComponent_ng_template_16_Conditional_0_Template, 2, 1);
|
|
830
867
|
i0.ɵɵtext(1);
|
|
831
868
|
i0.ɵɵpipe(2, "translate");
|
|
832
869
|
} if (rf & 2) {
|
|
833
|
-
const
|
|
834
|
-
const
|
|
835
|
-
i0.ɵɵconditional(
|
|
870
|
+
const icon_r11 = ctx.icon;
|
|
871
|
+
const label_r12 = ctx.label;
|
|
872
|
+
i0.ɵɵconditional(icon_r11 ? 0 : -1);
|
|
836
873
|
i0.ɵɵadvance();
|
|
837
|
-
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2,
|
|
874
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2, label_r12), "\n");
|
|
838
875
|
} }
|
|
839
876
|
class SideNavMenuComponent extends NavBaseComponent {
|
|
840
877
|
#username;
|
|
@@ -851,7 +888,7 @@ class SideNavMenuComponent extends NavBaseComponent {
|
|
|
851
888
|
get sideNavWidth() {
|
|
852
889
|
return this.collapsed ? this.menuSettings.collapsedWidth : this.menuSettings.expandedWidth;
|
|
853
890
|
}
|
|
854
|
-
constructor(strapiLinkService, domService, menuItems) {
|
|
891
|
+
constructor(strapiLinkService, domService, menuItems, menuSharedConfig) {
|
|
855
892
|
super(menuItems);
|
|
856
893
|
this.strapiLinkService = strapiLinkService;
|
|
857
894
|
this.domService = domService;
|
|
@@ -864,6 +901,7 @@ class SideNavMenuComponent extends NavBaseComponent {
|
|
|
864
901
|
disableStrapi: false
|
|
865
902
|
};
|
|
866
903
|
this.collapsed = false;
|
|
904
|
+
this.isMobile = ResolutionHelper.isMobileRes();
|
|
867
905
|
this.COLLAPSED_LOCAL_STORAGE_KEY = "TLD_MENU_SIDE_NAV_COLLAPSED";
|
|
868
906
|
//#region Plausible event variables for collapse button
|
|
869
907
|
this.COLLAPSE_PLAUSIBLE_EVENT_ID = "collapseMenu";
|
|
@@ -881,7 +919,7 @@ class SideNavMenuComponent extends NavBaseComponent {
|
|
|
881
919
|
eventId: this.COLLAPSE_PLAUSIBLE_EVENT_ID,
|
|
882
920
|
properties: [{ key: this.COLLAPSE_PLAUSIBLE_ACTION_KEY, value: "collapse" }]
|
|
883
921
|
};
|
|
884
|
-
this.baseUrl =
|
|
922
|
+
this.baseUrl = menuSharedConfig.baseUrl || '';
|
|
885
923
|
}
|
|
886
924
|
ngOnInit() {
|
|
887
925
|
super.ngOnInit();
|
|
@@ -899,7 +937,7 @@ class SideNavMenuComponent extends NavBaseComponent {
|
|
|
899
937
|
if (!this.domService.localStorage) {
|
|
900
938
|
return;
|
|
901
939
|
}
|
|
902
|
-
this.collapsed = (this.domService.localStorage.getItem(this.COLLAPSED_LOCAL_STORAGE_KEY) == 'true' ||
|
|
940
|
+
this.collapsed = (this.domService.localStorage.getItem(this.COLLAPSED_LOCAL_STORAGE_KEY) == 'true' || this.isMobile) ? true : false;
|
|
903
941
|
}
|
|
904
942
|
setColapsedFromLocalStorage() {
|
|
905
943
|
if (!this.domService.localStorage) {
|
|
@@ -921,56 +959,29 @@ class SideNavMenuComponent extends NavBaseComponent {
|
|
|
921
959
|
// If there are more than one word, use the first letter of the first two names
|
|
922
960
|
this.userInitials = splittedUsername[0][0] + splittedUsername[1][0];
|
|
923
961
|
}
|
|
924
|
-
static { this.ɵfac = function SideNavMenuComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SideNavMenuComponent)(i0.ɵɵdirectiveInject(i1.StrapiLinkService), i0.ɵɵdirectiveInject(i2.DOMService), i0.ɵɵdirectiveInject(MenuItemsService)); }; }
|
|
925
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SideNavMenuComponent, selectors: [["lib-side-nav-menu"]], inputs: { username: "username", menuSettings: "menuSettings", productName: "productName" }, features: [i0.ɵɵInheritDefinitionFeature], decls:
|
|
962
|
+
static { this.ɵfac = function SideNavMenuComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SideNavMenuComponent)(i0.ɵɵdirectiveInject(i1.StrapiLinkService), i0.ɵɵdirectiveInject(i2.DOMService), i0.ɵɵdirectiveInject(MenuItemsService), i0.ɵɵdirectiveInject(MENU_SHARED_CONFIG, 8)); }; }
|
|
963
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SideNavMenuComponent, selectors: [["lib-side-nav-menu"]], inputs: { username: "username", menuSettings: "menuSettings", productName: "productName" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 18, vars: 17, consts: [["menu", "matMenu"], ["profileMenuItem", ""], ["state", "matMenuTrigger"], ["iconDown", ""], ["class", "mobile-header", 3, "fxHide", 4, "ngIf"], ["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", "href", "click", 4, "ngIf"], ["mat-icon-button", "", 1, "toggler", 3, "click", "libPlausibleEvent"], ["fxLayout", "column", "fxFlex", "", 1, "menu-wrapper"], ["role", "navigation", "fxFlex", "", 3, "toggleCollapseEvent", "direction", "isOpen", "active"], ["class", "profile-wrapper", 3, "matMenuTriggerFor", 4, "ngIf"], [1, "profile-menu"], [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"], [1, "profile-wrapper", 3, "matMenuTriggerFor"], [1, "profile-icon"], [4, "ngIf"], [1, "profile-name"], ["class", "spin", 4, "ngIf", "ngIfElse"], [1, "spin"], ["mat-menu-item", "", 1, "profile-option"], ["target", "_blank", 1, "mat-mdc-menu-item", 3, "href"], [1, "mat-mdc-menu-item", 3, "routerLink"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], ["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 SideNavMenuComponent_Template(rf, ctx) { if (rf & 1) {
|
|
926
964
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
927
|
-
i0.ɵɵ
|
|
928
|
-
i0.ɵɵ
|
|
929
|
-
i0.ɵɵ
|
|
930
|
-
i0.ɵɵ
|
|
931
|
-
i0.ɵɵ
|
|
932
|
-
i0.ɵɵ
|
|
965
|
+
i0.ɵɵtemplate(0, SideNavMenuComponent_div_0_Template, 10, 12, "div", 4);
|
|
966
|
+
i0.ɵɵelementStart(1, "div", 5)(2, "div", 6)(3, "div", 7);
|
|
967
|
+
i0.ɵɵtemplate(4, SideNavMenuComponent_a_4_Template, 5, 7, "a", 8);
|
|
968
|
+
i0.ɵɵelementStart(5, "button", 9);
|
|
969
|
+
i0.ɵɵpipe(6, "translate");
|
|
970
|
+
i0.ɵɵlistener("click", function SideNavMenuComponent_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.toggleCollapse()); });
|
|
971
|
+
i0.ɵɵtemplate(7, SideNavMenuComponent_Conditional_7_Template, 2, 0, "mat-icon")(8, SideNavMenuComponent_Conditional_8_Template, 2, 1, "mat-icon");
|
|
933
972
|
i0.ɵɵelementEnd()();
|
|
934
|
-
i0.ɵɵelementStart(
|
|
935
|
-
i0.ɵɵ
|
|
936
|
-
i0.ɵɵlistener("click", function SideNavMenuComponent_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.toggleCollapse()); });
|
|
937
|
-
i0.ɵɵelementStart(9, "mat-icon");
|
|
938
|
-
i0.ɵɵtext(10, "menu");
|
|
939
|
-
i0.ɵɵelementEnd()()()();
|
|
940
|
-
i0.ɵɵelementStart(11, "div", 10)(12, "div", 11)(13, "div", 12);
|
|
941
|
-
i0.ɵɵtemplate(14, SideNavMenuComponent_a_14_Template, 5, 7, "a", 13);
|
|
942
|
-
i0.ɵɵelementStart(15, "button", 9);
|
|
943
|
-
i0.ɵɵpipe(16, "translate");
|
|
944
|
-
i0.ɵɵlistener("click", function SideNavMenuComponent_Template_button_click_15_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.toggleCollapse()); });
|
|
945
|
-
i0.ɵɵelementStart(17, "mat-icon", 4);
|
|
946
|
-
i0.ɵɵtext(18, "close");
|
|
947
|
-
i0.ɵɵelementEnd();
|
|
948
|
-
i0.ɵɵelementStart(19, "mat-icon", 14);
|
|
949
|
-
i0.ɵɵtext(20);
|
|
950
|
-
i0.ɵɵelementEnd()()();
|
|
951
|
-
i0.ɵɵelementStart(21, "div", 15)(22, "menu-columns", 16);
|
|
952
|
-
i0.ɵɵlistener("toggleCollapseEvent", function SideNavMenuComponent_Template_menu_columns_toggleCollapseEvent_22_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.toggleCollapse()); });
|
|
973
|
+
i0.ɵɵelementStart(9, "div", 10)(10, "menu-columns", 11);
|
|
974
|
+
i0.ɵɵlistener("toggleCollapseEvent", function SideNavMenuComponent_Template_menu_columns_toggleCollapseEvent_10_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.toggleCollapse()); });
|
|
953
975
|
i0.ɵɵelementEnd()();
|
|
954
|
-
i0.ɵɵtemplate(
|
|
955
|
-
i0.ɵɵelementStart(
|
|
956
|
-
i0.ɵɵrepeaterCreate(
|
|
976
|
+
i0.ɵɵtemplate(11, SideNavMenuComponent_button_11_Template, 5, 3, "button", 12);
|
|
977
|
+
i0.ɵɵelementStart(12, "mat-menu", 13, 0);
|
|
978
|
+
i0.ɵɵrepeaterCreate(14, SideNavMenuComponent_For_15_Template, 2, 1, null, null, _forTrack0);
|
|
957
979
|
i0.ɵɵelementEnd()();
|
|
958
|
-
i0.ɵɵtemplate(
|
|
980
|
+
i0.ɵɵtemplate(16, SideNavMenuComponent_ng_template_16_Template, 3, 4, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor);
|
|
959
981
|
i0.ɵɵelementEnd();
|
|
960
982
|
} if (rf & 2) {
|
|
983
|
+
i0.ɵɵproperty("ngIf", ctx.isMobile);
|
|
961
984
|
i0.ɵɵadvance();
|
|
962
|
-
i0.ɵɵproperty("fxHide", !ctx.collapsed);
|
|
963
|
-
i0.ɵɵadvance();
|
|
964
|
-
i0.ɵɵproperty("libPlausibleEvent", ctx.LOGOCLICK_PLAUSIBLE_EVENT)("href", ctx.baseUrl, i0.ɵɵsanitizeUrl);
|
|
965
|
-
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(3, 22, "MENU.ARIA_LABELS.LOGO"));
|
|
966
|
-
i0.ɵɵadvance(2);
|
|
967
|
-
i0.ɵɵproperty("src", ctx.menuLogoImage, i0.ɵɵsanitizeUrl);
|
|
968
|
-
i0.ɵɵadvance(2);
|
|
969
|
-
i0.ɵɵtextInterpolate1(" ", ctx.productName, " ");
|
|
970
|
-
i0.ɵɵadvance();
|
|
971
|
-
i0.ɵɵproperty("libPlausibleEvent", ctx.collapsed ? ctx.EXPAND_PLAUSIBLE_EVENT : ctx.COLLAPSE_PLAUSIBLE_EVENT);
|
|
972
|
-
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(8, 24, "ARIA_LABELS.MENU_TOGGLER"));
|
|
973
|
-
i0.ɵɵadvance(4);
|
|
974
985
|
i0.ɵɵstyleProp("width", ctx.sideNavWidth);
|
|
975
986
|
i0.ɵɵclassProp("collapsed", ctx.collapsed);
|
|
976
987
|
i0.ɵɵproperty("ngClass.lt-sm", "mobile");
|
|
@@ -980,10 +991,10 @@ class SideNavMenuComponent extends NavBaseComponent {
|
|
|
980
991
|
i0.ɵɵproperty("ngIf", !ctx.collapsed);
|
|
981
992
|
i0.ɵɵadvance();
|
|
982
993
|
i0.ɵɵproperty("libPlausibleEvent", ctx.collapsed ? ctx.EXPAND_PLAUSIBLE_EVENT : ctx.COLLAPSE_PLAUSIBLE_EVENT);
|
|
983
|
-
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(
|
|
984
|
-
i0.ɵɵadvance(5);
|
|
985
|
-
i0.ɵɵtextInterpolate(ctx.collapsed ? "keyboard_double_arrow_right" : "keyboard_double_arrow_left");
|
|
994
|
+
i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(6, 15, "ARIA_LABELS.MENU_TOGGLER"));
|
|
986
995
|
i0.ɵɵadvance(2);
|
|
996
|
+
i0.ɵɵconditional(ctx.isMobile ? 7 : 8);
|
|
997
|
+
i0.ɵɵadvance(3);
|
|
987
998
|
i0.ɵɵproperty("direction", ctx.direction)("isOpen", !ctx.collapsed)("active", ctx.active);
|
|
988
999
|
i0.ɵɵadvance();
|
|
989
1000
|
i0.ɵɵproperty("ngIf", ctx.userInitials);
|
|
@@ -993,15 +1004,20 @@ class SideNavMenuComponent extends NavBaseComponent {
|
|
|
993
1004
|
}
|
|
994
1005
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SideNavMenuComponent, [{
|
|
995
1006
|
type: Component,
|
|
996
|
-
args: [{ selector: 'lib-side-nav-menu', template: "<div
|
|
997
|
-
}], () => [{ type: i1.StrapiLinkService }, { type: i2.DOMService }, { type: MenuItemsService }
|
|
1007
|
+
args: [{ selector: 'lib-side-nav-menu', template: "<div *ngIf=\"isMobile\" [fxHide]=\"!collapsed\" class=\"mobile-header\">\r\n <a [libPlausibleEvent]=\"LOGOCLICK_PLAUSIBLE_EVENT\" fxFlex=\"3.125em\" [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 (click)=\"toggleCollapse()\"\r\n >\r\n <mat-icon>menu</mat-icon>\r\n </button>\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\" [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 (click)=\"toggleCollapse()\"\r\n >\r\n @if (isMobile) {\r\n <mat-icon>close</mat-icon>\r\n } @else {\r\n <mat-icon>{{ collapsed ? 'keyboard_double_arrow_right' : 'keyboard_double_arrow_left' }}</mat-icon>\r\n }\r\n </button>\r\n </div>\r\n \r\n <div class=\"menu-wrapper\" fxLayout=\"column\" fxFlex>\r\n <menu-columns (toggleCollapseEvent)=\"toggleCollapse()\" [direction]=\"direction\" role=\"navigation\" fxFlex [isOpen]=\"!collapsed\"\r\n [active]=\"active\"></menu-columns>\r\n </div>\r\n\r\n\r\n <button *ngIf=\"userInitials\" #state=\"matMenuTrigger\" [matMenuTriggerFor]=\"menu\" class=\"profile-wrapper\">\r\n <div class=\"profile-icon\">\r\n {{userInitials}}\r\n </div>\r\n\r\n <ng-container *ngIf=\"!collapsed\">\r\n <span class=\"profile-name\">\r\n {{ username }}\r\n </span>\r\n \r\n <mat-icon *ngIf=\"state.menuOpen; else iconDown\" class=\"spin\">{{\"keyboard_arrow_down\"}}</mat-icon>\r\n\r\n <ng-template #iconDown>\r\n <mat-icon class=\"spin\">{{\"keyboard_arrow_up\" }}</mat-icon>\r\n </ng-template>\r\n </ng-container>\r\n </button>\r\n\r\n <mat-menu #menu=\"matMenu\" class=\"profile-menu\">\r\n @for (item of menuSettings.userOptions; track item.label) {\r\n @if (item.link) {\r\n @if (item.link.isExternal) {\r\n <a class=\"mat-mdc-menu-item\" [href]=\"item.link.href\" target=\"_blank\">\r\n <ng-container\r\n *ngTemplateOutlet=\"profileMenuItem; context: { icon: item.icon, label: item.label }\">\r\n </ng-container>\r\n </a>\r\n } @else {\r\n <a class=\"mat-mdc-menu-item\" [routerLink]=\"item.link.href\">\r\n <ng-container\r\n *ngTemplateOutlet=\"profileMenuItem; context: { icon: item.icon, label: item.label }\">\r\n </ng-container>\r\n </a>\r\n }\r\n } @else {\r\n <button\r\n mat-menu-item\r\n class=\"profile-option\"\r\n (click)=\"item.button?.callback()\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"profileMenuItem; context: { icon: item.icon, label: item.label }\">\r\n </ng-container>\r\n </button>\r\n }\r\n }\r\n </mat-menu>\r\n </div>\r\n\r\n<ng-template #profileMenuItem let-icon=\"icon\" let-label=\"label\">\r\n @if (icon) {\r\n @if (!icon?.isCustom) {\r\n <span class=\"material-icons profile-option-icon\" [class.material-icons-outlined]=\"icon?.isOutlined\">\r\n {{icon?.name}}\r\n </span>\r\n } @else {\r\n <mat-icon class=\"profile-option-icon\" [svgIcon]=\"icon?.name\"></mat-icon>\r\n }\r\n }\r\n {{ label | translate }}\r\n</ng-template>", styles: ["a{text-decoration:none}.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:absolute;min-width:100vw;min-height:100vh;z-index:1000}.mobile .profile-wrapper{position:relative}.mobile .profile-wrapper mat-icon{position:absolute!important;right:0}.menu-product-name{white-space:nowrap;margin-left:12px;font-weight:600;color:var(--primary-accent-darker)}.menu-container{max-height:100vh;white-space:nowrap;height:100%;transition:width .2s ease;min-height:100vh;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%}.menu-container .profile-wrapper{background:none;color:var(--base-30);display:flex;align-items:center;justify-content:start;margin:32px 16px}.menu-container .profile-icon{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}.menu-container .profile-name{max-width:145px;overflow:hidden;margin-left:12px}.profile-option-icon{vertical-align:middle;margin:0 5px 5px 0}:host ::ng-deep .collapsed .profile-wrapper{left:8px!important}:host ::ng-deep .menu-item{display:flex;padding:16px!important;border-radius:4px!important}:host ::ng-deep .child-list .menu-item{padding:8px 46px!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}.spin{animation:spinArrow .3s forwards}:host::ng-deep button.collapse-btn .mat-mdc-button-persistent-ripple,:host::ng-deep button.toggler .mat-mdc-button-persistent-ripple{display:none}:host ::ng-deep .mobile .child-list .menu-item{padding:8px 54px!important}::ng-deep .cdk-overlay-container .profile-menu{margin:10px 0!important}::ng-deep .mat-mdc-menu-item .mat-icon{margin-right:5px!important}::ng-deep .collapsed .profile-wrapper{justify-content:center!important}::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}@keyframes spinArrow{to{transform:rotate(180deg)}}\n"] }]
|
|
1008
|
+
}], () => [{ type: i1.StrapiLinkService }, { type: i2.DOMService }, { type: MenuItemsService }, { type: undefined, decorators: [{
|
|
1009
|
+
type: Optional
|
|
1010
|
+
}, {
|
|
1011
|
+
type: Inject,
|
|
1012
|
+
args: [MENU_SHARED_CONFIG]
|
|
1013
|
+
}] }], { username: [{
|
|
998
1014
|
type: Input
|
|
999
1015
|
}], menuSettings: [{
|
|
1000
1016
|
type: Input
|
|
1001
1017
|
}], productName: [{
|
|
1002
1018
|
type: Input
|
|
1003
1019
|
}] }); })();
|
|
1004
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SideNavMenuComponent, { className: "SideNavMenuComponent", filePath: "lib\\components\\side-nav-menu\\side-nav-menu.component.ts", lineNumber:
|
|
1020
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SideNavMenuComponent, { className: "SideNavMenuComponent", filePath: "lib\\components\\side-nav-menu\\side-nav-menu.component.ts", lineNumber: 16 }); })();
|
|
1005
1021
|
|
|
1006
1022
|
class MenuModule {
|
|
1007
1023
|
static forRoot(config) {
|
|
@@ -1076,6 +1092,42 @@ class MenuModule {
|
|
|
1076
1092
|
PlausibleModule], exports: [SideNavMenuComponent,
|
|
1077
1093
|
MenuColumnsComponent] }); })();
|
|
1078
1094
|
|
|
1095
|
+
/**
|
|
1096
|
+
* Prefefined user menu options, so that same style of items are used across all products. Use this by passing necessary configuration.
|
|
1097
|
+
*/
|
|
1098
|
+
const USER_MENU_OPTIONS = {
|
|
1099
|
+
subscription: (href) => ({
|
|
1100
|
+
icon: { name: "credit_card" },
|
|
1101
|
+
label: 'MENU.SUBSCRIPTION',
|
|
1102
|
+
link: { href: href }
|
|
1103
|
+
}),
|
|
1104
|
+
termsOfUse: (href) => ({
|
|
1105
|
+
icon: { name: "text_snippet" },
|
|
1106
|
+
label: 'MENU.TERMS_OF_USE',
|
|
1107
|
+
link: { href, isExternal: true }
|
|
1108
|
+
}),
|
|
1109
|
+
privacy: (href) => ({
|
|
1110
|
+
icon: { name: "gpp_maybe" },
|
|
1111
|
+
label: 'MENU.PRIVACY',
|
|
1112
|
+
link: { href, isExternal: true },
|
|
1113
|
+
}),
|
|
1114
|
+
help: (href) => ({
|
|
1115
|
+
label: 'MENU.HELP_CENTER',
|
|
1116
|
+
icon: { name: `help` },
|
|
1117
|
+
link: { href, isExternal: true }
|
|
1118
|
+
}),
|
|
1119
|
+
contactUs: (href) => ({
|
|
1120
|
+
label: 'MENU.CONTACT_US',
|
|
1121
|
+
icon: { name: `mail` },
|
|
1122
|
+
link: { href, isExternal: true }
|
|
1123
|
+
}),
|
|
1124
|
+
logout: (callback) => ({
|
|
1125
|
+
icon: { name: "logout" },
|
|
1126
|
+
label: 'MENU.LOG_OUT',
|
|
1127
|
+
button: { callback: () => callback() }
|
|
1128
|
+
})
|
|
1129
|
+
};
|
|
1130
|
+
|
|
1079
1131
|
/*
|
|
1080
1132
|
* Public API Surface of ngx-menu
|
|
1081
1133
|
*/
|
|
@@ -1084,5 +1136,5 @@ class MenuModule {
|
|
|
1084
1136
|
* Generated bundle index. Do not edit.
|
|
1085
1137
|
*/
|
|
1086
1138
|
|
|
1087
|
-
export { MENU_ICON_STRAPI_EXTENSION, MENU_SHARED_CONFIG, MenuColumnsComponent, MenuItemsService, MenuLayoutDirection, MenuModule, NavBaseComponent, SideNavMenuComponent, StarpiMenuService, StrapiDataLocation };
|
|
1139
|
+
export { MENU_ICON_STRAPI_EXTENSION, MENU_SHARED_CONFIG, MenuColumnsComponent, MenuItemsService, MenuLayoutDirection, MenuModule, NavBaseComponent, SideNavMenuComponent, StarpiMenuService, StrapiDataLocation, USER_MENU_OPTIONS };
|
|
1088
1140
|
//# sourceMappingURL=tilde-nlp-ngx-menu.mjs.map
|