@muraai/mnl-commons 0.2.0-alpha-32ca3fa → 0.2.0-alpha-11e96eb
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/muraai-mnl-commons.mjs +83 -99
- package/fesm2022/muraai-mnl-commons.mjs.map +1 -1
- package/lib/components/menu/menu.component.d.ts +3 -1
- package/package.json +4 -5
- package/src/lib/theming.scss +5 -0
- package/esm2022/lib/commons.module.mjs +0 -148
- package/esm2022/lib/components/header/header.component.mjs +0 -33
- package/esm2022/lib/components/highlighter/highlighter.component.mjs +0 -24
- package/esm2022/lib/components/language-menu/language-menu.component.mjs +0 -41
- package/esm2022/lib/components/login/login.component.mjs +0 -60
- package/esm2022/lib/components/menu/menu.component.mjs +0 -89
- package/esm2022/lib/components/placeholder/placeholder.component.mjs +0 -19
- package/esm2022/lib/components/profile/profile.component.mjs +0 -45
- package/esm2022/lib/material.module.mjs +0 -60
- package/esm2022/lib/model/log-levels.model.mjs +0 -17
- package/esm2022/lib/model/menu-data.model.mjs +0 -2
- package/esm2022/lib/model/translation-resource.mjs +0 -14
- package/esm2022/lib/model/user-model.mjs +0 -2
- package/esm2022/lib/pipes/app-config-pipe.mjs +0 -21
- package/esm2022/lib/pipes/time-ago-pipe.mjs +0 -44
- package/esm2022/lib/pipes/user-fullname-pipe.mjs +0 -35
- package/esm2022/lib/pipes/user-initials-pipe.mjs +0 -49
- package/esm2022/lib/services/app.config.service.mjs +0 -41
- package/esm2022/lib/services/local-storage.service.mjs +0 -48
- package/esm2022/lib/services/locale.service.mjs +0 -89
- package/esm2022/lib/services/log.service.mjs +0 -89
- package/esm2022/lib/services/user-profile.service.mjs +0 -36
- package/esm2022/lib/utils/object-utils.mjs +0 -46
- package/esm2022/muraai-mnl-commons.mjs +0 -5
- package/esm2022/public-api.mjs +0 -27
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { Component, Input, ViewEncapsulation, Output, EventEmitter, } from '@angular/core';
|
|
2
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
3
|
-
import { MatToolbarModule } from '@angular/material/toolbar';
|
|
4
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@angular/material/icon";
|
|
7
|
-
import * as i2 from "@angular/material/toolbar";
|
|
8
|
-
import * as i3 from "@ngx-translate/core";
|
|
9
|
-
export class HeaderComponent {
|
|
10
|
-
constructor() {
|
|
11
|
-
this.menuButonClickEvent = new EventEmitter();
|
|
12
|
-
this.logoClick = new EventEmitter();
|
|
13
|
-
}
|
|
14
|
-
menuClick(event) {
|
|
15
|
-
this.menuButonClickEvent.emit(event);
|
|
16
|
-
}
|
|
17
|
-
onLogoClick(event) {
|
|
18
|
-
this.logoClick.emit(event);
|
|
19
|
-
}
|
|
20
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: HeaderComponent, isStandalone: true, selector: "mnl-header", inputs: { header: "header" }, outputs: { menuButonClickEvent: "menuButonClickEvent", logoClick: "logoClick" }, ngImport: i0, template: "@if(header){\n <mat-toolbar color=\"{{ header.toolbarColor }}\">\n <mat-toolbar-row>\n <div class=\"flex justify-start items-center\">\n @if(header.showMenuIcon){\n <button mat-icon-button class=\"flex items-center\" (click)=\"menuClick($event)\">\n <mat-icon >menu</mat-icon>\n </button>\n }\n <img\n class=\"mr-[15px]\"\n (click)=\"onLogoClick($event)\"\n src=\"{{ header.logo }}\"\n />\n <span>{{ header.name | translate }}</span>\n </div>\n <div class=\"flex justify-end items-center grow max-w-full\">\n <ng-content select=\"`[mnl-header-content]`\"></ng-content>\n </div>\n </mat-toolbar-row>\n </mat-toolbar>\n}\n", styles: [""], dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatToolbarModule }, { kind: "component", type: i2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "directive", type: i2.MatToolbarRow, selector: "mat-toolbar-row", exportAs: ["matToolbarRow"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
22
|
-
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HeaderComponent, decorators: [{
|
|
24
|
-
type: Component,
|
|
25
|
-
args: [{ selector: 'mnl-header', standalone: true, imports: [MatIconModule, MatToolbarModule, TranslateModule], encapsulation: ViewEncapsulation.None, template: "@if(header){\n <mat-toolbar color=\"{{ header.toolbarColor }}\">\n <mat-toolbar-row>\n <div class=\"flex justify-start items-center\">\n @if(header.showMenuIcon){\n <button mat-icon-button class=\"flex items-center\" (click)=\"menuClick($event)\">\n <mat-icon >menu</mat-icon>\n </button>\n }\n <img\n class=\"mr-[15px]\"\n (click)=\"onLogoClick($event)\"\n src=\"{{ header.logo }}\"\n />\n <span>{{ header.name | translate }}</span>\n </div>\n <div class=\"flex justify-end items-center grow max-w-full\">\n <ng-content select=\"`[mnl-header-content]`\"></ng-content>\n </div>\n </mat-toolbar-row>\n </mat-toolbar>\n}\n" }]
|
|
26
|
-
}], propDecorators: { header: [{
|
|
27
|
-
type: Input
|
|
28
|
-
}], menuButonClickEvent: [{
|
|
29
|
-
type: Output
|
|
30
|
-
}], logoClick: [{
|
|
31
|
-
type: Output
|
|
32
|
-
}] } });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbnMvc3JjL2xpYi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsWUFBWSxHQUFHLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7O0FBU3RELE1BQU0sT0FBTyxlQUFlO0lBUjVCO1FBYUUsd0JBQW1CLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFHakUsY0FBUyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0tBVXhEO0lBUkMsU0FBUyxDQUFDLEtBQUs7UUFDYixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBSztRQUNmLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7K0dBaEJVLGVBQWU7bUdBQWYsZUFBZSxxTENaNUIsNHVCQXNCQSx5RERmVyxhQUFhLG1MQUFDLGdCQUFnQix5UEFBQyxlQUFlOzs0RkFLNUMsZUFBZTtrQkFSM0IsU0FBUzsrQkFDRSxZQUFZLGNBQ1gsSUFBSSxXQUNQLENBQUMsYUFBYSxFQUFDLGdCQUFnQixFQUFDLGVBQWUsQ0FBQyxpQkFHekMsaUJBQWlCLENBQUMsSUFBSTs4QkFJckMsTUFBTTtzQkFETCxLQUFLO2dCQUlOLG1CQUFtQjtzQkFEbEIsTUFBTTtnQkFJUCxTQUFTO3NCQURSLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRUb29sYmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbGJhcic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21ubC1oZWFkZXInLFxuICBzdGFuZGFsb25lOnRydWUsXG4gIGltcG9ydHM6W01hdEljb25Nb2R1bGUsTWF0VG9vbGJhck1vZHVsZSxUcmFuc2xhdGVNb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaGVhZGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgSGVhZGVyQ29tcG9uZW50IHsgICAgXG4gIEBJbnB1dCgpXG4gIGhlYWRlcjogYW55O1xuXG4gIEBPdXRwdXQoKVxuICBtZW51QnV0b25DbGlja0V2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIEBPdXRwdXQoKVxuICBsb2dvQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgbWVudUNsaWNrKGV2ZW50KSB7XG4gICAgdGhpcy5tZW51QnV0b25DbGlja0V2ZW50LmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgb25Mb2dvQ2xpY2soZXZlbnQpIHtcbiAgICB0aGlzLmxvZ29DbGljay5lbWl0KGV2ZW50KTtcbiAgfVxuXG59XG4iLCJAaWYoaGVhZGVyKXtcbiAgPG1hdC10b29sYmFyIGNvbG9yPVwie3sgaGVhZGVyLnRvb2xiYXJDb2xvciB9fVwiPlxuICAgIDxtYXQtdG9vbGJhci1yb3c+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LXN0YXJ0IGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICBAaWYoaGVhZGVyLnNob3dNZW51SWNvbil7XG4gICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlclwiIChjbGljayk9XCJtZW51Q2xpY2soJGV2ZW50KVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uID5tZW51PC9tYXQtaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgfVxuICAgICAgICA8aW1nXG4gICAgICAgICAgY2xhc3M9XCJtci1bMTVweF1cIlxuICAgICAgICAgIChjbGljayk9XCJvbkxvZ29DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICBzcmM9XCJ7eyBoZWFkZXIubG9nbyB9fVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxzcGFuPnt7IGhlYWRlci5uYW1lIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWVuZCBpdGVtcy1jZW50ZXIgZ3JvdyBtYXgtdy1mdWxsXCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImBbbW5sLWhlYWRlci1jb250ZW50XWBcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8L2Rpdj5cbiAgICA8L21hdC10b29sYmFyLXJvdz5cbiAgPC9tYXQtdG9vbGJhcj5cbn1cbiJdfQ==
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { Component, Input } from '@angular/core';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
export class HighlighterComponent {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.height = '40px';
|
|
8
|
-
this.width = '4px';
|
|
9
|
-
this.enabled = true;
|
|
10
|
-
}
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HighlighterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
12
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: HighlighterComponent, isStandalone: true, selector: "mnl-highlighter", inputs: { height: "height", width: "width", enabled: "enabled" }, ngImport: i0, template: "<div\n [ngClass]=\"{ 'mnl-bg-primary': enabled }\"\n [ngStyle]=\"{ height: height, width: width }\"\n></div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
13
|
-
}
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HighlighterComponent, decorators: [{
|
|
15
|
-
type: Component,
|
|
16
|
-
args: [{ selector: 'mnl-highlighter', standalone: true, imports: [CommonModule], template: "<div\n [ngClass]=\"{ 'mnl-bg-primary': enabled }\"\n [ngStyle]=\"{ height: height, width: width }\"\n></div>\n" }]
|
|
17
|
-
}], propDecorators: { height: [{
|
|
18
|
-
type: Input
|
|
19
|
-
}], width: [{
|
|
20
|
-
type: Input
|
|
21
|
-
}], enabled: [{
|
|
22
|
-
type: Input
|
|
23
|
-
}] } });
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvaGlnaGxpZ2h0ZXIvaGlnaGxpZ2h0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvaGlnaGxpZ2h0ZXIvaGlnaGxpZ2h0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFTakQsTUFBTSxPQUFPLG9CQUFvQjtJQVBqQztRQVNFLFdBQU0sR0FBRyxNQUFNLENBQUM7UUFHaEIsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUdkLFlBQU8sR0FBRyxJQUFJLENBQUM7S0FDaEI7K0dBVFksb0JBQW9CO21HQUFwQixvQkFBb0IsNklDVmpDLGtIQUlBLHlEREdXLFlBQVk7OzRGQUdWLG9CQUFvQjtrQkFQaEMsU0FBUzsrQkFDRSxpQkFBaUIsY0FFaEIsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDOzhCQUt0QixNQUFNO3NCQURMLEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLO2dCQUlOLE9BQU87c0JBRE4sS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21ubC1oaWdobGlnaHRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9oaWdobGlnaHRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6dHJ1ZSxcbiAgaW1wb3J0czpbQ29tbW9uTW9kdWxlXSxcbiAgc3R5bGVVcmxzOiBbJy4vaGlnaGxpZ2h0ZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgSGlnaGxpZ2h0ZXJDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBoZWlnaHQgPSAnNDBweCc7XG5cbiAgQElucHV0KClcbiAgd2lkdGggPSAnNHB4JztcblxuICBASW5wdXQoKVxuICBlbmFibGVkID0gdHJ1ZTtcbn1cbiIsIjxkaXZcbiAgW25nQ2xhc3NdPVwieyAnbW5sLWJnLXByaW1hcnknOiBlbmFibGVkIH1cIlxuICBbbmdTdHlsZV09XCJ7IGhlaWdodDogaGVpZ2h0LCB3aWR0aDogd2lkdGggfVwiXG4+PC9kaXY+XG4iXX0=
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
3
|
-
import { MatMenuModule } from '@angular/material/menu';
|
|
4
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
5
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
6
|
-
import { CommonModule } from '@angular/common';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "../../services/locale.service";
|
|
9
|
-
import * as i2 from "@angular/material/icon";
|
|
10
|
-
import * as i3 from "@angular/material/menu";
|
|
11
|
-
import * as i4 from "@ngx-translate/core";
|
|
12
|
-
import * as i5 from "@angular/common";
|
|
13
|
-
export class LanguageMenuComponent {
|
|
14
|
-
constructor(localeService) {
|
|
15
|
-
this.localeService = localeService;
|
|
16
|
-
this.showLocaleKeyAsLabel = false;
|
|
17
|
-
this.showLocaleAsLabel = false;
|
|
18
|
-
this.languages = [];
|
|
19
|
-
}
|
|
20
|
-
ngOnInit() {
|
|
21
|
-
this.languages = this.localeService.getLanguages();
|
|
22
|
-
this.localeService.setActiveLocale(this.locale);
|
|
23
|
-
}
|
|
24
|
-
onChangeLanguage(language) {
|
|
25
|
-
this.localeService.setActiveLocale(language);
|
|
26
|
-
}
|
|
27
|
-
get locale() {
|
|
28
|
-
return this.localeService.getActiveLocale() || this.localeService.getDefaultLocale();
|
|
29
|
-
}
|
|
30
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LanguageMenuComponent, deps: [{ token: i1.LocaleService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: LanguageMenuComponent, isStandalone: true, selector: "mnl-language-menu", inputs: { showLocaleKeyAsLabel: "showLocaleKeyAsLabel", showLocaleAsLabel: "showLocaleAsLabel" }, ngImport: i0, template: "<button id=\"mnl-locale-button\" mat-menu-item [matMenuTriggerFor]=\"languageMenu\">\n @if(showLocaleKeyAsLabel || showLocaleAsLabel){\n @if(showLocaleKeyAsLabel){\n <div>{{ locale.key | uppercase }}</div>\n }\n @if(showLocaleAsLabel){\n <div>{{ locale.label }}</div>\n } \n }\n @else{\n <ng-container>\n <div class=\"flex items-center\">\n <mat-icon>language</mat-icon>\n {{ \"MNL.LANGUAGE-SELECTOR.LANGUAGES\" | translate }}\n </div>\n </ng-container>\n } \n</button>\n<mat-menu #languageMenu=\"matMenu\">\n <button\n mat-menu-item\n *ngFor=\"let language of languages\"\n (click)=\"onChangeLanguage(language)\"\n id=\"langMenu\"\n >\n {{ language.label }}\n </button>\n</mat-menu>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i3.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i3.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i3.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i5.UpperCasePipe, name: "uppercase" }] }); }
|
|
32
|
-
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LanguageMenuComponent, decorators: [{
|
|
34
|
-
type: Component,
|
|
35
|
-
args: [{ selector: 'mnl-language-menu', standalone: true, imports: [MatIconModule, MatMenuModule, MatButtonModule, TranslateModule, CommonModule], template: "<button id=\"mnl-locale-button\" mat-menu-item [matMenuTriggerFor]=\"languageMenu\">\n @if(showLocaleKeyAsLabel || showLocaleAsLabel){\n @if(showLocaleKeyAsLabel){\n <div>{{ locale.key | uppercase }}</div>\n }\n @if(showLocaleAsLabel){\n <div>{{ locale.label }}</div>\n } \n }\n @else{\n <ng-container>\n <div class=\"flex items-center\">\n <mat-icon>language</mat-icon>\n {{ \"MNL.LANGUAGE-SELECTOR.LANGUAGES\" | translate }}\n </div>\n </ng-container>\n } \n</button>\n<mat-menu #languageMenu=\"matMenu\">\n <button\n mat-menu-item\n *ngFor=\"let language of languages\"\n (click)=\"onChangeLanguage(language)\"\n id=\"langMenu\"\n >\n {{ language.label }}\n </button>\n</mat-menu>\n" }]
|
|
36
|
-
}], ctorParameters: () => [{ type: i1.LocaleService }], propDecorators: { showLocaleKeyAsLabel: [{
|
|
37
|
-
type: Input
|
|
38
|
-
}], showLocaleAsLabel: [{
|
|
39
|
-
type: Input
|
|
40
|
-
}] } });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2UtbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9sYW5ndWFnZS1tZW51L2xhbmd1YWdlLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvbGFuZ3VhZ2UtbWVudS9sYW5ndWFnZS1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRXpELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7Ozs7QUFTL0MsTUFBTSxPQUFPLHFCQUFxQjtJQVNoQyxZQUFvQixhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQU5oRCx5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFHN0Isc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBRTFCLGNBQVMsR0FBd0IsRUFBRSxDQUFDO0lBQ2UsQ0FBQztJQUVwRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsUUFBc0I7UUFDckMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLEVBQUUsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDdkYsQ0FBQzsrR0F0QlUscUJBQXFCO21HQUFyQixxQkFBcUIsK0tDZmxDLDZ3QkE0QkEseUREakJXLGFBQWEsbUxBQUMsYUFBYSw2dkJBQUMsZUFBZSw4QkFBQyxlQUFlLDJGQUFDLFlBQVk7OzRGQUl0RSxxQkFBcUI7a0JBUGpDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2xCLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBQyxhQUFhLEVBQUMsZUFBZSxFQUFDLGVBQWUsRUFBQyxZQUFZLENBQUM7a0ZBT2xGLG9CQUFvQjtzQkFEbkIsS0FBSztnQkFJTixpQkFBaUI7c0JBRGhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvY2FsZVNlcnZpY2UsIExhbmd1YWdlSXRlbSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xvY2FsZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21ubC1sYW5ndWFnZS1tZW51JyxcbiAgc3RhbmRhbG9uZTp0cnVlLFxuICBpbXBvcnRzOltNYXRJY29uTW9kdWxlLE1hdE1lbnVNb2R1bGUsTWF0QnV0dG9uTW9kdWxlLFRyYW5zbGF0ZU1vZHVsZSxDb21tb25Nb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vbGFuZ3VhZ2UtbWVudS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xhbmd1YWdlLW1lbnUuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTGFuZ3VhZ2VNZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKVxuICBzaG93TG9jYWxlS2V5QXNMYWJlbCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHNob3dMb2NhbGVBc0xhYmVsID0gZmFsc2U7XG5cbiAgbGFuZ3VhZ2VzOiBBcnJheTxMYW5ndWFnZUl0ZW0+ID0gW107XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbG9jYWxlU2VydmljZTogTG9jYWxlU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmxhbmd1YWdlcyA9IHRoaXMubG9jYWxlU2VydmljZS5nZXRMYW5ndWFnZXMoKTtcbiAgICB0aGlzLmxvY2FsZVNlcnZpY2Uuc2V0QWN0aXZlTG9jYWxlKHRoaXMubG9jYWxlKTtcbiAgfVxuXG4gIG9uQ2hhbmdlTGFuZ3VhZ2UobGFuZ3VhZ2U6IExhbmd1YWdlSXRlbSkge1xuICAgIHRoaXMubG9jYWxlU2VydmljZS5zZXRBY3RpdmVMb2NhbGUobGFuZ3VhZ2UpO1xuICB9XG5cbiAgZ2V0IGxvY2FsZSgpOiBMYW5ndWFnZUl0ZW0ge1xuICAgIHJldHVybiB0aGlzLmxvY2FsZVNlcnZpY2UuZ2V0QWN0aXZlTG9jYWxlKCkgfHwgdGhpcy5sb2NhbGVTZXJ2aWNlLmdldERlZmF1bHRMb2NhbGUoKTtcbiAgfVxufVxuIiwiPGJ1dHRvbiBpZD1cIm1ubC1sb2NhbGUtYnV0dG9uXCIgbWF0LW1lbnUtaXRlbSBbbWF0TWVudVRyaWdnZXJGb3JdPVwibGFuZ3VhZ2VNZW51XCI+XG4gIEBpZihzaG93TG9jYWxlS2V5QXNMYWJlbCB8fCBzaG93TG9jYWxlQXNMYWJlbCl7XG4gICAgICBAaWYoc2hvd0xvY2FsZUtleUFzTGFiZWwpe1xuICAgICAgICA8ZGl2Pnt7IGxvY2FsZS5rZXkgfCB1cHBlcmNhc2UgfX08L2Rpdj5cbiAgICAgIH1cbiAgICAgIEBpZihzaG93TG9jYWxlQXNMYWJlbCl7XG4gICAgICAgIDxkaXY+e3sgbG9jYWxlLmxhYmVsIH19PC9kaXY+XG4gICAgICB9ICAgICAgXG4gIH1cbiAgQGVsc2V7XG4gICAgPG5nLWNvbnRhaW5lcj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICA8bWF0LWljb24+bGFuZ3VhZ2U8L21hdC1pY29uPlxuICAgICAgICB7eyBcIk1OTC5MQU5HVUFHRS1TRUxFQ1RPUi5MQU5HVUFHRVNcIiB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIH0gICAgXG48L2J1dHRvbj5cbjxtYXQtbWVudSAjbGFuZ3VhZ2VNZW51PVwibWF0TWVudVwiPlxuICA8YnV0dG9uXG4gICAgbWF0LW1lbnUtaXRlbVxuICAgICpuZ0Zvcj1cImxldCBsYW5ndWFnZSBvZiBsYW5ndWFnZXNcIlxuICAgIChjbGljayk9XCJvbkNoYW5nZUxhbmd1YWdlKGxhbmd1YWdlKVwiXG4gICAgaWQ9XCJsYW5nTWVudVwiXG4gID5cbiAgICB7eyBsYW5ndWFnZS5sYWJlbCB9fVxuICA8L2J1dHRvbj5cbjwvbWF0LW1lbnU+XG4iXX0=
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { Component, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
-
import { UntypedFormGroup, UntypedFormControl, Validators } from '@angular/forms';
|
|
3
|
-
import { MatCardModule } from '@angular/material/card';
|
|
4
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
5
|
-
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
6
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
7
|
-
import { MatInputModule } from '@angular/material/input';
|
|
8
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@angular/platform-browser";
|
|
11
|
-
import * as i2 from "@angular/material/card";
|
|
12
|
-
import * as i3 from "@ngx-translate/core";
|
|
13
|
-
import * as i4 from "@angular/material/form-field";
|
|
14
|
-
import * as i5 from "@angular/forms";
|
|
15
|
-
import * as i6 from "@angular/material/input";
|
|
16
|
-
import * as i7 from "@angular/material/button";
|
|
17
|
-
export class LoginComponent {
|
|
18
|
-
constructor(sanitizer) {
|
|
19
|
-
this.sanitizer = sanitizer;
|
|
20
|
-
this.title = '';
|
|
21
|
-
this.logoImageUrl = './assets/images/logo.png';
|
|
22
|
-
this.backgroundImageUrl = './assets/images/background.jpg';
|
|
23
|
-
this.disabled = false;
|
|
24
|
-
this.login = new EventEmitter();
|
|
25
|
-
}
|
|
26
|
-
ngOnInit() {
|
|
27
|
-
this.initForm();
|
|
28
|
-
}
|
|
29
|
-
initForm() {
|
|
30
|
-
this.formGroup = new UntypedFormGroup({
|
|
31
|
-
username: new UntypedFormControl('', [Validators.required]),
|
|
32
|
-
password: new UntypedFormControl('', [Validators.required])
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
onSubmit() {
|
|
36
|
-
if (this.formGroup.valid) {
|
|
37
|
-
this.login.emit(this.formGroup.value);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
getBackgroundImageUrl() {
|
|
41
|
-
return this.sanitizer.bypassSecurityTrustStyle(`url(${this.backgroundImageUrl})`);
|
|
42
|
-
}
|
|
43
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LoginComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
44
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: LoginComponent, isStandalone: true, selector: "mnl-login", inputs: { title: "title", logoImageUrl: "logoImageUrl", backgroundImageUrl: "backgroundImageUrl", disabled: "disabled" }, outputs: { login: "login" }, ngImport: i0, template: "<div class=\"flex justify-center items-center min-h-full bg-cover\" [style.background-image]=\"getBackgroundImageUrl()\">\n <mat-card class=\"min-w-[260px]\">\n <form class=\"flex items-stretch flex-col\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <mat-card-header class=\"flex justify-center items-center\">\n <mat-card-title>\n @if(logoImageUrl){ \n <img src=\"{{logoImageUrl}}\">\n }\n </mat-card-title>\n </mat-card-header>\n @if(title){\n <h3 class=\"flex justify-center items-center opacity-60\">{{title | translate}}</h3>\n }\n <mat-form-field class=\"grow max-w-100\">\n <input id=\"username\" matInput placeholder=\"{{'MNL.LOGIN.USERNAME' | translate}}\"\n formControlName=\"username\">\n </mat-form-field>\n\n <mat-form-field class=\"grow max-w-100\">\n <input id=\"password\" matInput type=\"password\" placeholder=\"{{'MNL.LOGIN.PASSWORD' | translate}}\"\n formControlName=\"password\">\n </mat-form-field>\n <mat-card-actions class=\"flex justify-center items-center\">\n <button id=\"loginButton\" mat-raised-button color=\"accent\" [disabled]=\"disabled || !formGroup.valid\"\n type=\"submit\"> {{'MNL.LOGIN.LOGIN_BUTTON' | translate}}</button>\n </mat-card-actions>\n\n </form>\n </mat-card>\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "component", type: i2.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i7.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] }); }
|
|
45
|
-
}
|
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LoginComponent, decorators: [{
|
|
47
|
-
type: Component,
|
|
48
|
-
args: [{ selector: 'mnl-login', standalone: true, imports: [MatCardModule, TranslateModule, MatFormFieldModule, ReactiveFormsModule, MatInputModule, MatButtonModule], template: "<div class=\"flex justify-center items-center min-h-full bg-cover\" [style.background-image]=\"getBackgroundImageUrl()\">\n <mat-card class=\"min-w-[260px]\">\n <form class=\"flex items-stretch flex-col\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <mat-card-header class=\"flex justify-center items-center\">\n <mat-card-title>\n @if(logoImageUrl){ \n <img src=\"{{logoImageUrl}}\">\n }\n </mat-card-title>\n </mat-card-header>\n @if(title){\n <h3 class=\"flex justify-center items-center opacity-60\">{{title | translate}}</h3>\n }\n <mat-form-field class=\"grow max-w-100\">\n <input id=\"username\" matInput placeholder=\"{{'MNL.LOGIN.USERNAME' | translate}}\"\n formControlName=\"username\">\n </mat-form-field>\n\n <mat-form-field class=\"grow max-w-100\">\n <input id=\"password\" matInput type=\"password\" placeholder=\"{{'MNL.LOGIN.PASSWORD' | translate}}\"\n formControlName=\"password\">\n </mat-form-field>\n <mat-card-actions class=\"flex justify-center items-center\">\n <button id=\"loginButton\" mat-raised-button color=\"accent\" [disabled]=\"disabled || !formGroup.valid\"\n type=\"submit\"> {{'MNL.LOGIN.LOGIN_BUTTON' | translate}}</button>\n </mat-card-actions>\n\n </form>\n </mat-card>\n</div>" }]
|
|
49
|
-
}], ctorParameters: () => [{ type: i1.DomSanitizer }], propDecorators: { title: [{
|
|
50
|
-
type: Input
|
|
51
|
-
}], logoImageUrl: [{
|
|
52
|
-
type: Input
|
|
53
|
-
}], backgroundImageUrl: [{
|
|
54
|
-
type: Input
|
|
55
|
-
}], disabled: [{
|
|
56
|
-
type: Input
|
|
57
|
-
}], login: [{
|
|
58
|
-
type: Output
|
|
59
|
-
}] } });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHbEYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7Ozs7QUFRM0QsTUFBTSxPQUFPLGNBQWM7SUFtQnpCLFlBQW9CLFNBQXVCO1FBQXZCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFkM0MsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUdYLGlCQUFZLEdBQUcsMEJBQTBCLENBQUM7UUFHMUMsdUJBQWtCLEdBQUcsZ0NBQWdDLENBQUM7UUFHdEQsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUdqQixVQUFLLEdBQUksSUFBSSxZQUFZLEVBQWEsQ0FBQztJQUl2QyxDQUFDO0lBQ0QsUUFBUTtRQUNOLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRU8sUUFBUTtRQUNkLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQztZQUNwQyxRQUFRLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDM0QsUUFBUSxFQUFFLElBQUksa0JBQWtCLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQzVELENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxLQUFLLENBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekMsQ0FBQztJQUNILENBQUM7SUFDRCxxQkFBcUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHdCQUF3QixDQUFDLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixHQUFHLENBQUMsQ0FBQztJQUN0RixDQUFDOytHQXZDWSxjQUFjO21HQUFkLGNBQWMsNE5DakIzQixxakRBNkJNLHlERGhCSyxhQUFhLG1jQUFDLGVBQWUsMkZBQUMsa0JBQWtCLHlPQUFDLG1CQUFtQiw0OEJBQUMsY0FBYywwV0FBQyxlQUFlOzs0RkFJakcsY0FBYztrQkFQMUIsU0FBUzsrQkFDRSxXQUFXLGNBQ1YsSUFBSSxXQUNQLENBQUMsYUFBYSxFQUFDLGVBQWUsRUFBQyxrQkFBa0IsRUFBQyxtQkFBbUIsRUFBQyxjQUFjLEVBQUMsZUFBZSxDQUFDO2lGQVM3RyxLQUFLO3NCQURKLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxLQUFLO2dCQUlOLGtCQUFrQjtzQkFEakIsS0FBSztnQkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sS0FBSztzQkFESixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCwgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVXNlck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWwvdXNlci1tb2RlbCc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtNYXRDYXJkTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jYXJkJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtNYXRGb3JtRmllbGRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21ubC1sb2dpbicsXG4gIHN0YW5kYWxvbmU6dHJ1ZSxcbiAgaW1wb3J0czpbTWF0Q2FyZE1vZHVsZSxUcmFuc2xhdGVNb2R1bGUsTWF0Rm9ybUZpZWxkTW9kdWxlLFJlYWN0aXZlRm9ybXNNb2R1bGUsTWF0SW5wdXRNb2R1bGUsTWF0QnV0dG9uTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2xvZ2luLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbG9naW4uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBMb2dpbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgZm9ybUdyb3VwOiBVbnR5cGVkRm9ybUdyb3VwO1xuXG4gIEBJbnB1dCgpXG4gIHRpdGxlID0gJyc7XG5cbiAgQElucHV0KClcbiAgbG9nb0ltYWdlVXJsID0gJy4vYXNzZXRzL2ltYWdlcy9sb2dvLnBuZyc7XG5cbiAgQElucHV0KClcbiAgYmFja2dyb3VuZEltYWdlVXJsID0gJy4vYXNzZXRzL2ltYWdlcy9iYWNrZ3JvdW5kLmpwZyc7XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZWQgPSBmYWxzZTtcblxuICBAT3V0cHV0KClcbiAgbG9naW4gID0gbmV3IEV2ZW50RW1pdHRlcjxVc2VyTW9kZWw+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge1xuXG4gIH1cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5pbml0Rm9ybSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0Rm9ybSgpIHtcbiAgICB0aGlzLmZvcm1Hcm91cCA9IG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICAgIHVzZXJuYW1lOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pLFxuICAgICAgcGFzc3dvcmQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSlcbiAgICB9KTtcbiAgfVxuICBvblN1Ym1pdCgpIHtcbiAgICBpZiAodGhpcy5mb3JtR3JvdXAudmFsaWQpIHtcbiAgICAgIHRoaXMubG9naW4gLmVtaXQodGhpcy5mb3JtR3JvdXAudmFsdWUpO1xuICAgIH1cbiAgfVxuICBnZXRCYWNrZ3JvdW5kSW1hZ2VVcmwoKTogU2FmZVN0eWxlIHtcbiAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFN0eWxlKGB1cmwoJHt0aGlzLmJhY2tncm91bmRJbWFnZVVybH0pYCk7XG59XG5cbn1cbiIsIjxkaXYgIGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1jZW50ZXIgIG1pbi1oLWZ1bGwgYmctY292ZXJcIiAgW3N0eWxlLmJhY2tncm91bmQtaW1hZ2VdPVwiZ2V0QmFja2dyb3VuZEltYWdlVXJsKClcIj5cbiAgICA8bWF0LWNhcmQgY2xhc3M9XCJtaW4tdy1bMjYwcHhdXCI+XG4gICAgICAgIDxmb3JtIGNsYXNzPVwiZmxleCBpdGVtcy1zdHJldGNoIGZsZXgtY29sXCIgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIiAobmdTdWJtaXQpPVwib25TdWJtaXQoKVwiPlxuICAgICAgICAgICAgPG1hdC1jYXJkLWhlYWRlciBjbGFzcz1cImZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1jYXJkLXRpdGxlPlxuICAgICAgICAgICAgICAgICAgICBAaWYobG9nb0ltYWdlVXJsKXsgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJ7e2xvZ29JbWFnZVVybH19XCI+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L21hdC1jYXJkLXRpdGxlPlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1oZWFkZXI+XG4gICAgICAgICAgICBAaWYodGl0bGUpe1xuICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyIG9wYWNpdHktNjBcIj57e3RpdGxlIHwgdHJhbnNsYXRlfX08L2gzPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZ3JvdyBtYXgtdy0xMDBcIj5cbiAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJ1c2VybmFtZVwiIG1hdElucHV0IHBsYWNlaG9sZGVyPVwie3snTU5MLkxPR0lOLlVTRVJOQU1FJyB8IHRyYW5zbGF0ZX19XCJcbiAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidXNlcm5hbWVcIj5cbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImdyb3cgbWF4LXctMTAwXCI+XG4gICAgICAgICAgICAgICAgPGlucHV0IGlkPVwicGFzc3dvcmRcIiBtYXRJbnB1dCB0eXBlPVwicGFzc3dvcmRcIiBwbGFjZWhvbGRlcj1cInt7J01OTC5MT0dJTi5QQVNTV09SRCcgfCB0cmFuc2xhdGV9fVwiXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInBhc3N3b3JkXCI+XG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgPG1hdC1jYXJkLWFjdGlvbnMgY2xhc3M9XCJmbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gaWQ9XCJsb2dpbkJ1dHRvblwiIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwiYWNjZW50XCIgW2Rpc2FibGVkXT1cImRpc2FibGVkIHx8ICFmb3JtR3JvdXAudmFsaWRcIlxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwic3VibWl0XCI+IHt7J01OTC5MT0dJTi5MT0dJTl9CVVRUT04nIHwgdHJhbnNsYXRlfX08L2J1dHRvbj5cbiAgICAgICAgICAgIDwvbWF0LWNhcmQtYWN0aW9ucz5cblxuICAgICAgICA8L2Zvcm0+XG4gICAgPC9tYXQtY2FyZD5cbjwvZGl2PiJdfQ==
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { Component, ElementRef, EventEmitter, Input, Output, ViewChildren } from '@angular/core';
|
|
3
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
4
|
-
import { MatListItem, MatNavList } from '@angular/material/list';
|
|
5
|
-
import { MatMenuModule } from '@angular/material/menu';
|
|
6
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
7
|
-
import { HighlighterComponent } from '../highlighter/highlighter.component';
|
|
8
|
-
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@angular/common";
|
|
11
|
-
import * as i2 from "@angular/material/icon";
|
|
12
|
-
import * as i3 from "@ngx-translate/core";
|
|
13
|
-
import * as i4 from "@angular/material/menu";
|
|
14
|
-
import * as i5 from "@angular/material/tooltip";
|
|
15
|
-
export class MenuComponent {
|
|
16
|
-
constructor() {
|
|
17
|
-
this.isCollapsed = false;
|
|
18
|
-
this.menuClick = new EventEmitter();
|
|
19
|
-
}
|
|
20
|
-
ngAfterViewInit() {
|
|
21
|
-
this.calculateSubMenuWidth();
|
|
22
|
-
}
|
|
23
|
-
onMenuClick(menu) {
|
|
24
|
-
if (this.hasSubMenu(menu)) {
|
|
25
|
-
this.openMenu(menu);
|
|
26
|
-
this.onSubMenuClick(menu.subMenus[0], menu);
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
this.deSelectMenus(this.menuData);
|
|
30
|
-
this.selectMenu(menu);
|
|
31
|
-
this.menuClick.emit(menu);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
onSubMenuClick(subMenu, menu) {
|
|
35
|
-
this.deSelectMenus(this.menuData);
|
|
36
|
-
this.selectMenu(menu);
|
|
37
|
-
this.selectMenu(subMenu);
|
|
38
|
-
this.menuClick.emit(subMenu);
|
|
39
|
-
}
|
|
40
|
-
deSelectMenus(menus) {
|
|
41
|
-
if (menus) {
|
|
42
|
-
for (const menu of menus) {
|
|
43
|
-
if (menu.selected) {
|
|
44
|
-
menu.selected = false;
|
|
45
|
-
}
|
|
46
|
-
this.deSelectMenus(menu.subMenus);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
selectMenu(menu) {
|
|
51
|
-
if (menu) {
|
|
52
|
-
menu.selected = true;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
hasSubMenu(menu) {
|
|
56
|
-
return menu.subMenus && menu.subMenus.length > 0;
|
|
57
|
-
}
|
|
58
|
-
toggleMenu(menu, event) {
|
|
59
|
-
menu.expanded = !menu.expanded;
|
|
60
|
-
if (event) {
|
|
61
|
-
event.stopPropagation();
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
openMenu(menu) {
|
|
65
|
-
menu.expanded = true;
|
|
66
|
-
}
|
|
67
|
-
calculateSubMenuWidth() {
|
|
68
|
-
const navListWidths = this.navLists.toArray().map(navList => navList.nativeElement.offsetWidth);
|
|
69
|
-
this.subMenuWidth = Math.max(...navListWidths) - 85;
|
|
70
|
-
}
|
|
71
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
72
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: MenuComponent, isStandalone: true, selector: "mnl-menu", inputs: { menuData: "menuData", highlighterColor: "highlighterColor", isCollapsed: "isCollapsed" }, outputs: { menuClick: "menuClick" }, viewQueries: [{ propertyName: "navLists", predicate: ["navList"], descendants: true, read: ElementRef }], ngImport: i0, template: "<mat-nav-list #navList *ngFor=\"let menu of menuData\">\n @if(!isCollapsed){\n <a\n mat-list-item\n (click)=\"onMenuClick(menu)\"\n id=\"mnl-menu-anchor\"\n matTooltip=\"{{ menu?.toolTip | translate }}\"\n [ngClass]=\"menu.selected && !menu.expanded ? 'mnl-menu-active' : ''\"\n >\n <div class=\"flex items-center\">\n @if(menu.icon){\n <mat-icon\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >{{ menu.icon }}</mat-icon\n >\n } @else{\n <mat-icon\n svgIcon=\"{{ menu.svgIcon }}\"\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >\n </mat-icon>\n }\n <span\n class=\"mnl-menu\"\n id=\"mnl-menu\"\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >{{ menu.name | translate }}</span\n >\n @if(menu.subMenus && menu.subMenus.length > 0){\n <span class=\"ml-5\"></span>\n <mat-icon\n class=\"mnl-menu-button flex ml-auto\" \n (click)=\"toggleMenu(menu, $event)\"\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n [ngClass]=\"{ 'mnl-rotated': menu.expanded }\"\n >expand_more</mat-icon\n >\n }\n </div>\n </a>\n } @else if(isCollapsed) {\n @if(menu.subMenus){\n <a\n mat-list-item\n id=\"mnl-menu-anchor\"\n [matMenuTriggerFor]=\"sidenavMenu\"\n [ngClass]=\"menu.selected ? 'mnl-menu-active' : ''\"\n >\n <div class=\"flex items-center\">\n @if(menu.icon){\n <mat-icon\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >{{ menu.icon }}</mat-icon\n >\n } @else{\n <mat-icon\n svgIcon=\"{{ menu.svgIcon }}\"\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >\n </mat-icon>\n }\n </div>\n </a>\n <mat-menu #sidenavMenu=\"matMenu\" class=\"ml-5\">\n <button\n mat-menu-item\n *ngFor=\"let sub of menu.subMenus\"\n (click)=\"onSubMenuClick(sub, menu)\"\n matTooltip=\"{{ sub?.toolTip | translate }}\"\n [ngClass]=\"sub.selected ? 'mnl-menu-active' : ''\"\n >\n <span\n [ngStyle]=\"{\n color: sub.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"sub.selected && !highlighterColor\"\n >{{ sub.name | translate }}</span\n >\n </button>\n </mat-menu>\n } @else{\n <a\n mat-list-item\n (click)=\"onMenuClick(menu)\"\n id=\"mnl-menu-anchor\"\n matTooltip=\"{{ menu?.toolTip | translate }}\"\n [ngClass]=\"menu.selected ? 'mnl-menu-active' : ''\"\n >\n <div class=\"flex items-center\">\n @if(menu.icon){\n <mat-icon\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >{{ menu.icon }}</mat-icon\n >\n } @else{\n <mat-icon\n svgIcon=\"{{ menu.svgIcon }}\"\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >\n </mat-icon>\n }\n </div>\n </a>\n } }\n\n <ng-container *ngFor=\"let sub of menu.subMenus\">\n @if(menu.expanded && !isCollapsed){\n <a\n mat-list-item\n class=\"mnl-submenu flex flex-row ml-6 truncate\"\n [class.mnl-expanded]=\"menu.expanded\"\n (click)=\"onSubMenuClick(sub, menu)\"\n id=\"mnl-submenu-anchor\"\n matTooltip=\"{{ sub?.toolTip | translate }}\"\n [ngClass]=\"sub.selected ? 'mnl-menu-active' : ''\"\n >\n <div class=\"flex items-center\">\n @if(sub.icon){\n <mat-icon\n [ngStyle]=\"{\n color: sub.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"sub.selected && !highlighterColor\"\n >{{ sub.icon }}</mat-icon\n >\n }\n <span\n [style.width.px]=\"subMenuWidth\" \n [ngStyle]=\"{\n color: sub.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"sub.selected && !highlighterColor\"\n class=\"mnl-menu truncate\"\n id=\"mnl-submenu\"\n >{{ sub.name | translate }}</span\n >\n </div>\n </a>\n }\n </ng-container>\n</mat-nav-list>\n", styles: [".mnl-submenu{overflow-y:hidden;transition:transform .3s ease;transform:scaleY(0);transform-origin:top;padding-left:15px!important;width:calc(100% - 24px)}.mnl-submenu.mnl-expanded{transform:scaleY(1)}.mnl-menu{margin-left:10px;margin-right:10px}.mnl-menu-button{transition:.3s ease-in-out;transform:rotate(0);margin-top:3px}.mnl-menu-button.mnl-rotated{transform:rotate(180deg)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
|
|
73
|
-
}
|
|
74
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MenuComponent, decorators: [{
|
|
75
|
-
type: Component,
|
|
76
|
-
args: [{ selector: 'mnl-menu', standalone: true, imports: [CommonModule, MatNavList, MatIconModule, TranslateModule, MatMenuModule, HighlighterComponent, MatListItem, MatTooltipModule], template: "<mat-nav-list #navList *ngFor=\"let menu of menuData\">\n @if(!isCollapsed){\n <a\n mat-list-item\n (click)=\"onMenuClick(menu)\"\n id=\"mnl-menu-anchor\"\n matTooltip=\"{{ menu?.toolTip | translate }}\"\n [ngClass]=\"menu.selected && !menu.expanded ? 'mnl-menu-active' : ''\"\n >\n <div class=\"flex items-center\">\n @if(menu.icon){\n <mat-icon\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >{{ menu.icon }}</mat-icon\n >\n } @else{\n <mat-icon\n svgIcon=\"{{ menu.svgIcon }}\"\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >\n </mat-icon>\n }\n <span\n class=\"mnl-menu\"\n id=\"mnl-menu\"\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >{{ menu.name | translate }}</span\n >\n @if(menu.subMenus && menu.subMenus.length > 0){\n <span class=\"ml-5\"></span>\n <mat-icon\n class=\"mnl-menu-button flex ml-auto\" \n (click)=\"toggleMenu(menu, $event)\"\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n [ngClass]=\"{ 'mnl-rotated': menu.expanded }\"\n >expand_more</mat-icon\n >\n }\n </div>\n </a>\n } @else if(isCollapsed) {\n @if(menu.subMenus){\n <a\n mat-list-item\n id=\"mnl-menu-anchor\"\n [matMenuTriggerFor]=\"sidenavMenu\"\n [ngClass]=\"menu.selected ? 'mnl-menu-active' : ''\"\n >\n <div class=\"flex items-center\">\n @if(menu.icon){\n <mat-icon\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >{{ menu.icon }}</mat-icon\n >\n } @else{\n <mat-icon\n svgIcon=\"{{ menu.svgIcon }}\"\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >\n </mat-icon>\n }\n </div>\n </a>\n <mat-menu #sidenavMenu=\"matMenu\" class=\"ml-5\">\n <button\n mat-menu-item\n *ngFor=\"let sub of menu.subMenus\"\n (click)=\"onSubMenuClick(sub, menu)\"\n matTooltip=\"{{ sub?.toolTip | translate }}\"\n [ngClass]=\"sub.selected ? 'mnl-menu-active' : ''\"\n >\n <span\n [ngStyle]=\"{\n color: sub.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"sub.selected && !highlighterColor\"\n >{{ sub.name | translate }}</span\n >\n </button>\n </mat-menu>\n } @else{\n <a\n mat-list-item\n (click)=\"onMenuClick(menu)\"\n id=\"mnl-menu-anchor\"\n matTooltip=\"{{ menu?.toolTip | translate }}\"\n [ngClass]=\"menu.selected ? 'mnl-menu-active' : ''\"\n >\n <div class=\"flex items-center\">\n @if(menu.icon){\n <mat-icon\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >{{ menu.icon }}</mat-icon\n >\n } @else{\n <mat-icon\n svgIcon=\"{{ menu.svgIcon }}\"\n [ngStyle]=\"{\n color: menu.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"menu.selected && !highlighterColor\"\n >\n </mat-icon>\n }\n </div>\n </a>\n } }\n\n <ng-container *ngFor=\"let sub of menu.subMenus\">\n @if(menu.expanded && !isCollapsed){\n <a\n mat-list-item\n class=\"mnl-submenu flex flex-row ml-6 truncate\"\n [class.mnl-expanded]=\"menu.expanded\"\n (click)=\"onSubMenuClick(sub, menu)\"\n id=\"mnl-submenu-anchor\"\n matTooltip=\"{{ sub?.toolTip | translate }}\"\n [ngClass]=\"sub.selected ? 'mnl-menu-active' : ''\"\n >\n <div class=\"flex items-center\">\n @if(sub.icon){\n <mat-icon\n [ngStyle]=\"{\n color: sub.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"sub.selected && !highlighterColor\"\n >{{ sub.icon }}</mat-icon\n >\n }\n <span\n [style.width.px]=\"subMenuWidth\" \n [ngStyle]=\"{\n color: sub.selected && highlighterColor ? highlighterColor : ''\n }\"\n [class.mnl-color-primary]=\"sub.selected && !highlighterColor\"\n class=\"mnl-menu truncate\"\n id=\"mnl-submenu\"\n >{{ sub.name | translate }}</span\n >\n </div>\n </a>\n }\n </ng-container>\n</mat-nav-list>\n", styles: [".mnl-submenu{overflow-y:hidden;transition:transform .3s ease;transform:scaleY(0);transform-origin:top;padding-left:15px!important;width:calc(100% - 24px)}.mnl-submenu.mnl-expanded{transform:scaleY(1)}.mnl-menu{margin-left:10px;margin-right:10px}.mnl-menu-button{transition:.3s ease-in-out;transform:rotate(0);margin-top:3px}.mnl-menu-button.mnl-rotated{transform:rotate(180deg)}\n"] }]
|
|
77
|
-
}], propDecorators: { navLists: [{
|
|
78
|
-
type: ViewChildren,
|
|
79
|
-
args: ['navList', { read: ElementRef }]
|
|
80
|
-
}], menuData: [{
|
|
81
|
-
type: Input
|
|
82
|
-
}], highlighterColor: [{
|
|
83
|
-
type: Input
|
|
84
|
-
}], isCollapsed: [{
|
|
85
|
-
type: Input
|
|
86
|
-
}], menuClick: [{
|
|
87
|
-
type: Output
|
|
88
|
-
}] } });
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvbWVudS9tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQWlCLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWEsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNILE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7QUFTN0QsTUFBTSxPQUFPLGFBQWE7SUFQMUI7UUFnQkUsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFHN0IsY0FBUyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0tBOER4RDtJQTNEQyxlQUFlO1FBQ2IsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFlO1FBQ3pCLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDcEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzlDLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxPQUFrQixFQUFFLElBQWU7UUFDaEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBa0I7UUFDOUIsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxFQUFFLENBQUM7Z0JBQ3pCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUNsQixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztnQkFDeEIsQ0FBQztnQkFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNwQyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFTyxVQUFVLENBQUMsSUFBZTtRQUNoQyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ1QsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDdkIsQ0FBQztJQUNILENBQUM7SUFFTyxVQUFVLENBQUMsSUFBZTtRQUNoQyxPQUFPLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxVQUFVLENBQUMsSUFBZSxFQUFFLEtBQVk7UUFDdEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFFL0IsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUVPLFFBQVEsQ0FBQyxJQUFlO1FBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO0lBQ3ZCLENBQUM7SUFFTyxxQkFBcUI7UUFDM0IsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2hHLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLGFBQWEsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUN4RCxDQUFDOytHQXpFWSxhQUFhO21HQUFiLGFBQWEsZ1JBQ1MsVUFBVSw2QkNsQjdDLDgzSkFxS0EscWJEeEpZLFlBQVksK1VBQUUsVUFBVSxrRkFBRSxhQUFhLG1MQUFFLGVBQWUsMkZBQUUsYUFBYSw4dkJBQXdCLFdBQVcsb0pBQUUsZ0JBQWdCOzs0RkFJM0gsYUFBYTtrQkFQekIsU0FBUzsrQkFDRSxVQUFVLGNBQ1IsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxvQkFBb0IsRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLENBQUM7OEJBS3hGLFFBQVE7c0JBQXRELFlBQVk7dUJBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFFN0MsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLGdCQUFnQjtzQkFEZixLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixTQUFTO3NCQURSLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRMaXN0SXRlbSwgTWF0TmF2TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBNZW51TW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbC9tZW51LWRhdGEubW9kZWwnO1xuaW1wb3J0IHsgSGlnaGxpZ2h0ZXJDb21wb25lbnQgfSBmcm9tICcuLi9oaWdobGlnaHRlci9oaWdobGlnaHRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtbmwtbWVudScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdE5hdkxpc3QsIE1hdEljb25Nb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgTWF0TWVudU1vZHVsZSwgSGlnaGxpZ2h0ZXJDb21wb25lbnQsIE1hdExpc3RJdGVtLCBNYXRUb29sdGlwTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL21lbnUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tZW51LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE1lbnVDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQFZpZXdDaGlsZHJlbignbmF2TGlzdCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBuYXZMaXN0cyE6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcbiAgQElucHV0KClcbiAgbWVudURhdGE6IEFycmF5PE1lbnVNb2RlbD47XG5cbiAgQElucHV0KClcbiAgaGlnaGxpZ2h0ZXJDb2xvcjogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIGlzQ29sbGFwc2VkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpXG4gIG1lbnVDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgc3ViTWVudVdpZHRoOiBudW1iZXI7XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2FsY3VsYXRlU3ViTWVudVdpZHRoKCk7ICAgIFxuICB9XG4gIFxuICBvbk1lbnVDbGljayhtZW51OiBNZW51TW9kZWwpIHtcbiAgICBpZiAodGhpcy5oYXNTdWJNZW51KG1lbnUpKSB7XG4gICAgICB0aGlzLm9wZW5NZW51KG1lbnUpO1xuICAgICAgdGhpcy5vblN1Yk1lbnVDbGljayhtZW51LnN1Yk1lbnVzWzBdLCBtZW51KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kZVNlbGVjdE1lbnVzKHRoaXMubWVudURhdGEpO1xuICAgICAgdGhpcy5zZWxlY3RNZW51KG1lbnUpO1xuICAgICAgdGhpcy5tZW51Q2xpY2suZW1pdChtZW51KTtcbiAgICB9XG4gIH1cblxuICBvblN1Yk1lbnVDbGljayhzdWJNZW51OiBNZW51TW9kZWwsIG1lbnU6IE1lbnVNb2RlbCkge1xuICAgIHRoaXMuZGVTZWxlY3RNZW51cyh0aGlzLm1lbnVEYXRhKTtcbiAgICB0aGlzLnNlbGVjdE1lbnUobWVudSk7XG4gICAgdGhpcy5zZWxlY3RNZW51KHN1Yk1lbnUpO1xuICAgIHRoaXMubWVudUNsaWNrLmVtaXQoc3ViTWVudSk7XG4gIH1cblxuICBkZVNlbGVjdE1lbnVzKG1lbnVzOiBNZW51TW9kZWxbXSkge1xuICAgIGlmIChtZW51cykge1xuICAgICAgZm9yIChjb25zdCBtZW51IG9mIG1lbnVzKSB7XG4gICAgICAgIGlmIChtZW51LnNlbGVjdGVkKSB7XG4gICAgICAgICAgbWVudS5zZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZGVTZWxlY3RNZW51cyhtZW51LnN1Yk1lbnVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNlbGVjdE1lbnUobWVudTogTWVudU1vZGVsKSB7XG4gICAgaWYgKG1lbnUpIHtcbiAgICAgIG1lbnUuc2VsZWN0ZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaGFzU3ViTWVudShtZW51OiBNZW51TW9kZWwpIHtcbiAgICByZXR1cm4gbWVudS5zdWJNZW51cyAmJiBtZW51LnN1Yk1lbnVzLmxlbmd0aCA+IDA7XG4gIH1cblxuICB0b2dnbGVNZW51KG1lbnU6IE1lbnVNb2RlbCwgZXZlbnQ6IEV2ZW50KSB7XG4gICAgbWVudS5leHBhbmRlZCA9ICFtZW51LmV4cGFuZGVkO1xuXG4gICAgaWYgKGV2ZW50KSB7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG9wZW5NZW51KG1lbnU6IE1lbnVNb2RlbCkge1xuICAgIG1lbnUuZXhwYW5kZWQgPSB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBjYWxjdWxhdGVTdWJNZW51V2lkdGgoKSB7XG4gICAgY29uc3QgbmF2TGlzdFdpZHRocyA9IHRoaXMubmF2TGlzdHMudG9BcnJheSgpLm1hcChuYXZMaXN0ID0+IG5hdkxpc3QubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCk7XG4gICAgdGhpcy5zdWJNZW51V2lkdGggPSBNYXRoLm1heCguLi5uYXZMaXN0V2lkdGhzKSAtIDg1O1xufVxufVxuIiwiPG1hdC1uYXYtbGlzdCAjbmF2TGlzdCAqbmdGb3I9XCJsZXQgbWVudSBvZiBtZW51RGF0YVwiPlxuICBAaWYoIWlzQ29sbGFwc2VkKXtcbiAgPGFcbiAgICBtYXQtbGlzdC1pdGVtXG4gICAgKGNsaWNrKT1cIm9uTWVudUNsaWNrKG1lbnUpXCJcbiAgICBpZD1cIm1ubC1tZW51LWFuY2hvclwiXG4gICAgbWF0VG9vbHRpcD1cInt7IG1lbnU/LnRvb2xUaXAgfCB0cmFuc2xhdGUgfX1cIlxuICAgIFtuZ0NsYXNzXT1cIm1lbnUuc2VsZWN0ZWQgJiYgIW1lbnUuZXhwYW5kZWQgPyAnbW5sLW1lbnUtYWN0aXZlJyA6ICcnXCJcbiAgPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXJcIj5cbiAgICBAaWYobWVudS5pY29uKXtcbiAgICA8bWF0LWljb25cbiAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgY29sb3I6IG1lbnUuc2VsZWN0ZWQgJiYgaGlnaGxpZ2h0ZXJDb2xvciA/IGhpZ2hsaWdodGVyQ29sb3IgOiAnJ1xuICAgICAgfVwiXG4gICAgICBbY2xhc3MubW5sLWNvbG9yLXByaW1hcnldPVwibWVudS5zZWxlY3RlZCAmJiAhaGlnaGxpZ2h0ZXJDb2xvclwiXG4gICAgICA+e3sgbWVudS5pY29uIH19PC9tYXQtaWNvblxuICAgID5cbiAgICB9IEBlbHNle1xuICAgIDxtYXQtaWNvblxuICAgICAgc3ZnSWNvbj1cInt7IG1lbnUuc3ZnSWNvbiB9fVwiXG4gICAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAgIGNvbG9yOiBtZW51LnNlbGVjdGVkICYmIGhpZ2hsaWdodGVyQ29sb3IgPyBoaWdobGlnaHRlckNvbG9yIDogJydcbiAgICAgIH1cIlxuICAgICAgW2NsYXNzLm1ubC1jb2xvci1wcmltYXJ5XT1cIm1lbnUuc2VsZWN0ZWQgJiYgIWhpZ2hsaWdodGVyQ29sb3JcIlxuICAgID5cbiAgICA8L21hdC1pY29uPlxuICAgIH1cbiAgICA8c3BhblxuICAgICAgY2xhc3M9XCJtbmwtbWVudVwiXG4gICAgICBpZD1cIm1ubC1tZW51XCJcbiAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgY29sb3I6IG1lbnUuc2VsZWN0ZWQgJiYgaGlnaGxpZ2h0ZXJDb2xvciA/IGhpZ2hsaWdodGVyQ29sb3IgOiAnJ1xuICAgICAgfVwiXG4gICAgICBbY2xhc3MubW5sLWNvbG9yLXByaW1hcnldPVwibWVudS5zZWxlY3RlZCAmJiAhaGlnaGxpZ2h0ZXJDb2xvclwiXG4gICAgICA+e3sgbWVudS5uYW1lIHwgdHJhbnNsYXRlIH19PC9zcGFuXG4gICAgPlxuICAgIEBpZihtZW51LnN1Yk1lbnVzICYmIG1lbnUuc3ViTWVudXMubGVuZ3RoID4gMCl7XG4gICAgPHNwYW4gY2xhc3M9XCJtbC01XCI+PC9zcGFuPlxuICAgIDxtYXQtaWNvblxuICAgICAgY2xhc3M9XCJtbmwtbWVudS1idXR0b24gZmxleCBtbC1hdXRvXCIgXG4gICAgICAoY2xpY2spPVwidG9nZ2xlTWVudShtZW51LCAkZXZlbnQpXCJcbiAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgY29sb3I6IG1lbnUuc2VsZWN0ZWQgJiYgaGlnaGxpZ2h0ZXJDb2xvciA/IGhpZ2hsaWdodGVyQ29sb3IgOiAnJ1xuICAgICAgfVwiXG4gICAgICBbY2xhc3MubW5sLWNvbG9yLXByaW1hcnldPVwibWVudS5zZWxlY3RlZCAmJiAhaGlnaGxpZ2h0ZXJDb2xvclwiXG4gICAgICBbbmdDbGFzc109XCJ7ICdtbmwtcm90YXRlZCc6IG1lbnUuZXhwYW5kZWQgfVwiXG4gICAgICA+ZXhwYW5kX21vcmU8L21hdC1pY29uXG4gICAgPlxuICAgIH1cbiAgPC9kaXY+XG4gIDwvYT5cbiAgfSBAZWxzZSBpZihpc0NvbGxhcHNlZCkge1xuICAgICBAaWYobWVudS5zdWJNZW51cyl7XG4gIDxhXG4gICAgbWF0LWxpc3QtaXRlbVxuICAgIGlkPVwibW5sLW1lbnUtYW5jaG9yXCJcbiAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwic2lkZW5hdk1lbnVcIlxuICAgIFtuZ0NsYXNzXT1cIm1lbnUuc2VsZWN0ZWQgPyAnbW5sLW1lbnUtYWN0aXZlJyA6ICcnXCJcbiAgPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXJcIj5cbiAgICBAaWYobWVudS5pY29uKXtcbiAgICA8bWF0LWljb25cbiAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgY29sb3I6IG1lbnUuc2VsZWN0ZWQgJiYgaGlnaGxpZ2h0ZXJDb2xvciA/IGhpZ2hsaWdodGVyQ29sb3IgOiAnJ1xuICAgICAgfVwiXG4gICAgICBbY2xhc3MubW5sLWNvbG9yLXByaW1hcnldPVwibWVudS5zZWxlY3RlZCAmJiAhaGlnaGxpZ2h0ZXJDb2xvclwiXG4gICAgICA+e3sgbWVudS5pY29uIH19PC9tYXQtaWNvblxuICAgID5cbiAgICB9IEBlbHNle1xuICAgIDxtYXQtaWNvblxuICAgICAgc3ZnSWNvbj1cInt7IG1lbnUuc3ZnSWNvbiB9fVwiXG4gICAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAgIGNvbG9yOiBtZW51LnNlbGVjdGVkICYmIGhpZ2hsaWdodGVyQ29sb3IgPyBoaWdobGlnaHRlckNvbG9yIDogJydcbiAgICAgIH1cIlxuICAgICAgW2NsYXNzLm1ubC1jb2xvci1wcmltYXJ5XT1cIm1lbnUuc2VsZWN0ZWQgJiYgIWhpZ2hsaWdodGVyQ29sb3JcIlxuICAgID5cbiAgICA8L21hdC1pY29uPlxuICAgIH1cbiAgICA8L2Rpdj5cbiAgPC9hPlxuICA8bWF0LW1lbnUgI3NpZGVuYXZNZW51PVwibWF0TWVudVwiIGNsYXNzPVwibWwtNVwiPlxuICAgIDxidXR0b25cbiAgICAgIG1hdC1tZW51LWl0ZW1cbiAgICAgICpuZ0Zvcj1cImxldCBzdWIgb2YgbWVudS5zdWJNZW51c1wiXG4gICAgICAoY2xpY2spPVwib25TdWJNZW51Q2xpY2soc3ViLCBtZW51KVwiXG4gICAgICBtYXRUb29sdGlwPVwie3sgc3ViPy50b29sVGlwIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgIFtuZ0NsYXNzXT1cInN1Yi5zZWxlY3RlZCA/ICdtbmwtbWVudS1hY3RpdmUnIDogJydcIlxuICAgID5cbiAgICAgIDxzcGFuXG4gICAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgICBjb2xvcjogc3ViLnNlbGVjdGVkICYmIGhpZ2hsaWdodGVyQ29sb3IgPyBoaWdobGlnaHRlckNvbG9yIDogJydcbiAgICAgICAgfVwiXG4gICAgICAgIFtjbGFzcy5tbmwtY29sb3ItcHJpbWFyeV09XCJzdWIuc2VsZWN0ZWQgJiYgIWhpZ2hsaWdodGVyQ29sb3JcIlxuICAgICAgICA+e3sgc3ViLm5hbWUgfCB0cmFuc2xhdGUgfX08L3NwYW5cbiAgICAgID5cbiAgICA8L2J1dHRvbj5cbiAgPC9tYXQtbWVudT5cbiAgfSBAZWxzZXtcbiAgPGFcbiAgICBtYXQtbGlzdC1pdGVtXG4gICAgKGNsaWNrKT1cIm9uTWVudUNsaWNrKG1lbnUpXCJcbiAgICBpZD1cIm1ubC1tZW51LWFuY2hvclwiXG4gICAgbWF0VG9vbHRpcD1cInt7IG1lbnU/LnRvb2xUaXAgfCB0cmFuc2xhdGUgfX1cIlxuICAgIFtuZ0NsYXNzXT1cIm1lbnUuc2VsZWN0ZWQgPyAnbW5sLW1lbnUtYWN0aXZlJyA6ICcnXCJcbiAgPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXJcIj5cbiAgICBAaWYobWVudS5pY29uKXtcbiAgICA8bWF0LWljb25cbiAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgY29sb3I6IG1lbnUuc2VsZWN0ZWQgJiYgaGlnaGxpZ2h0ZXJDb2xvciA/IGhpZ2hsaWdodGVyQ29sb3IgOiAnJ1xuICAgICAgfVwiXG4gICAgICBbY2xhc3MubW5sLWNvbG9yLXByaW1hcnldPVwibWVudS5zZWxlY3RlZCAmJiAhaGlnaGxpZ2h0ZXJDb2xvclwiXG4gICAgICA+e3sgbWVudS5pY29uIH19PC9tYXQtaWNvblxuICAgID5cbiAgICB9IEBlbHNle1xuICAgIDxtYXQtaWNvblxuICAgICAgc3ZnSWNvbj1cInt7IG1lbnUuc3ZnSWNvbiB9fVwiXG4gICAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAgIGNvbG9yOiBtZW51LnNlbGVjdGVkICYmIGhpZ2hsaWdodGVyQ29sb3IgPyBoaWdobGlnaHRlckNvbG9yIDogJydcbiAgICAgIH1cIlxuICAgICAgW2NsYXNzLm1ubC1jb2xvci1wcmltYXJ5XT1cIm1lbnUuc2VsZWN0ZWQgJiYgIWhpZ2hsaWdodGVyQ29sb3JcIlxuICAgID5cbiAgICA8L21hdC1pY29uPlxuICAgIH1cbiAgPC9kaXY+XG4gIDwvYT5cbiAgfSB9XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc3ViIG9mIG1lbnUuc3ViTWVudXNcIj5cbiAgICBAaWYobWVudS5leHBhbmRlZCAmJiAhaXNDb2xsYXBzZWQpe1xuICAgIDxhXG4gICAgICBtYXQtbGlzdC1pdGVtXG4gICAgICBjbGFzcz1cIm1ubC1zdWJtZW51IGZsZXggZmxleC1yb3cgbWwtNiB0cnVuY2F0ZVwiXG4gICAgICBbY2xhc3MubW5sLWV4cGFuZGVkXT1cIm1lbnUuZXhwYW5kZWRcIlxuICAgICAgKGNsaWNrKT1cIm9uU3ViTWVudUNsaWNrKHN1YiwgbWVudSlcIlxuICAgICAgaWQ9XCJtbmwtc3VibWVudS1hbmNob3JcIlxuICAgICAgbWF0VG9vbHRpcD1cInt7IHN1Yj8udG9vbFRpcCB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICBbbmdDbGFzc109XCJzdWIuc2VsZWN0ZWQgPyAnbW5sLW1lbnUtYWN0aXZlJyA6ICcnXCJcbiAgICA+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyXCI+XG4gICAgICBAaWYoc3ViLmljb24pe1xuICAgICAgPG1hdC1pY29uXG4gICAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgICBjb2xvcjogc3ViLnNlbGVjdGVkICYmIGhpZ2hsaWdodGVyQ29sb3IgPyBoaWdobGlnaHRlckNvbG9yIDogJydcbiAgICAgICAgfVwiXG4gICAgICAgIFtjbGFzcy5tbmwtY29sb3ItcHJpbWFyeV09XCJzdWIuc2VsZWN0ZWQgJiYgIWhpZ2hsaWdodGVyQ29sb3JcIlxuICAgICAgICA+e3sgc3ViLmljb24gfX08L21hdC1pY29uXG4gICAgICA+XG4gICAgICB9XG4gICAgICA8c3BhblxuICAgICAgW3N0eWxlLndpZHRoLnB4XT1cInN1Yk1lbnVXaWR0aFwiIFxuICAgICAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAgICAgY29sb3I6IHN1Yi5zZWxlY3RlZCAmJiBoaWdobGlnaHRlckNvbG9yID8gaGlnaGxpZ2h0ZXJDb2xvciA6ICcnXG4gICAgICAgIH1cIlxuICAgICAgICBbY2xhc3MubW5sLWNvbG9yLXByaW1hcnldPVwic3ViLnNlbGVjdGVkICYmICFoaWdobGlnaHRlckNvbG9yXCJcbiAgICAgICAgY2xhc3M9XCJtbmwtbWVudSB0cnVuY2F0ZVwiXG4gICAgICAgIGlkPVwibW5sLXN1Ym1lbnVcIlxuICAgICAgICA+e3sgc3ViLm5hbWUgfCB0cmFuc2xhdGUgfX08L3NwYW5cbiAgICAgID5cbiAgICAgIDwvZGl2PlxuICAgIDwvYT5cbiAgICB9XG4gIDwvbmctY29udGFpbmVyPlxuPC9tYXQtbmF2LWxpc3Q+XG4iXX0=
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
3
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/material/icon";
|
|
6
|
-
import * as i2 from "@ngx-translate/core";
|
|
7
|
-
export class PlaceholderComponent {
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PlaceholderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: PlaceholderComponent, isStandalone: true, selector: "mnl-placeholder", inputs: { icon: "icon", message: "message" }, ngImport: i0, template: "@if(icon){\n <div class=\"container\">\n <mat-icon>{{ icon }}</mat-icon>\n <h4>{{ message|translate }}</h4>\n </div>\n}", styles: [":host{height:100%}mat-icon{font-size:45px;height:45px;width:45px;opacity:.75}.container{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;inset:0;margin:auto}\n"], dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PlaceholderComponent, decorators: [{
|
|
12
|
-
type: Component,
|
|
13
|
-
args: [{ selector: 'mnl-placeholder', standalone: true, imports: [MatIconModule, TranslateModule], template: "@if(icon){\n <div class=\"container\">\n <mat-icon>{{ icon }}</mat-icon>\n <h4>{{ message|translate }}</h4>\n </div>\n}", styles: [":host{height:100%}mat-icon{font-size:45px;height:45px;width:45px;opacity:.75}.container{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;inset:0;margin:auto}\n"] }]
|
|
14
|
-
}], propDecorators: { icon: [{
|
|
15
|
-
type: Input
|
|
16
|
-
}], message: [{
|
|
17
|
-
type: Input
|
|
18
|
-
}] } });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2Vob2xkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvcGxhY2Vob2xkZXIvcGxhY2Vob2xkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvcGxhY2Vob2xkZXIvcGxhY2Vob2xkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7OztBQVN0RCxNQUFNLE9BQU8sb0JBQW9COytHQUFwQixvQkFBb0I7bUdBQXBCLG9CQUFvQix5SENYakMsaUlBS0Msc1FERVUsYUFBYSxtTEFBRSxlQUFlOzs0RkFJNUIsb0JBQW9CO2tCQVBoQyxTQUFTOytCQUNFLGlCQUFpQixjQUNmLElBQUksV0FDUixDQUFDLGFBQWEsRUFBRSxlQUFlLENBQUM7OEJBSy9CLElBQUk7c0JBQVosS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbW5sLXBsYWNlaG9sZGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czpbTWF0SWNvbk1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3BsYWNlaG9sZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGxhY2Vob2xkZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUGxhY2Vob2xkZXJDb21wb25lbnQge1xuICBASW5wdXQoKSBpY29uITogc3RyaW5nO1xuICBASW5wdXQoKSBtZXNzYWdlITogc3RyaW5nO1xufVxuXG5cbiIsIkBpZihpY29uKXtcbiAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxuICAgIDxtYXQtaWNvbj57eyBpY29uIH19PC9tYXQtaWNvbj5cbiAgICA8aDQ+e3sgbWVzc2FnZXx0cmFuc2xhdGUgfX08L2g0PlxuICA8L2Rpdj5cbn0iXX0=
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import { UserFullnamePipe } from '../../pipes/user-fullname-pipe';
|
|
3
|
-
import { UserInitialPipe } from '../../pipes/user-initials-pipe';
|
|
4
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
5
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
6
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/material/icon";
|
|
9
|
-
import * as i2 from "@angular/material/button";
|
|
10
|
-
import * as i3 from "@ngx-translate/core";
|
|
11
|
-
export class ProfileComponent {
|
|
12
|
-
constructor() {
|
|
13
|
-
this.showDisplayName = true;
|
|
14
|
-
this.userInitialClick = new EventEmitter();
|
|
15
|
-
this.profileMenuClick = new EventEmitter();
|
|
16
|
-
}
|
|
17
|
-
onUserInitialClick(event) {
|
|
18
|
-
this.userInitialClick.emit(event);
|
|
19
|
-
}
|
|
20
|
-
ngOnChanges(changes) {
|
|
21
|
-
if (changes && changes.userProfileDetails && changes.userProfileDetails.currentValue
|
|
22
|
-
&& changes.userProfileDetails.currentValue.firstName
|
|
23
|
-
&& changes.userProfileDetails.currentValue.email) {
|
|
24
|
-
this.hasUserDetails = true;
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
this.hasUserDetails = false;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProfileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ProfileComponent, isStandalone: true, selector: "mnl-user-profile", inputs: { userProfileDetails: "userProfileDetails", showDisplayName: "showDisplayName" }, outputs: { userInitialClick: "userInitialClick", profileMenuClick: "profileMenuClick" }, usesOnChanges: true, ngImport: i0, template: "<div id=\"mnl-profile-container\" class=\"flex gap-[10px] justify-content: items-center\">\n @if(showDisplayName && hasUserDetails){\n <div class=\"flex flex-col\">\n <span\n id=\"mnl-userinfo-name\"\n class=\" hidden md:inline\"\n >{{ userProfileDetails | mnlUserFullName }}\n </span>\n @if (userProfileDetails?.userRole) {\n <span id=\"mnl-userinfo-role\" class=\"text-center leading-3 md:inline hidden\">\n {{ userProfileDetails?.userRole | translate }}\n </span>\n }\n </div>\n }\n @if(hasUserDetails){\n <button\n id=\"mnl-initials-button\"\n (click)=\"onUserInitialClick($event)\"\n mat-mini-fab\n >\n {{ userProfileDetails | mnlUserInitialPipe }}\n </button>\n }\n \n @if(!hasUserDetails){\n <button\n id=\"mnl-user-icon-button\"\n mat-raised-button\n (click)=\"onUserInitialClick($event)\"\n >\n <mat-icon mat-icon-button>person</mat-icon>\n </button>\n }\n </div>", styles: ["#mnl-initials-button{border-radius:20px}:host ::ng-deep .mat-mdc-mini-fab{background-color:#fff!important;color:#000!important}#mnl-userinfo-role{font-size:1rem}\n"], dependencies: [{ kind: "pipe", type: UserFullnamePipe, name: "mnlUserFullName" }, { kind: "pipe", type: UserInitialPipe, name: "mnlUserInitialPipe" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i2.MatMiniFabButton, selector: "button[mat-mini-fab]", exportAs: ["matButton"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
32
|
-
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ProfileComponent, decorators: [{
|
|
34
|
-
type: Component,
|
|
35
|
-
args: [{ selector: 'mnl-user-profile', standalone: true, imports: [UserFullnamePipe, UserInitialPipe, MatIconModule, MatButtonModule, TranslateModule], template: "<div id=\"mnl-profile-container\" class=\"flex gap-[10px] justify-content: items-center\">\n @if(showDisplayName && hasUserDetails){\n <div class=\"flex flex-col\">\n <span\n id=\"mnl-userinfo-name\"\n class=\" hidden md:inline\"\n >{{ userProfileDetails | mnlUserFullName }}\n </span>\n @if (userProfileDetails?.userRole) {\n <span id=\"mnl-userinfo-role\" class=\"text-center leading-3 md:inline hidden\">\n {{ userProfileDetails?.userRole | translate }}\n </span>\n }\n </div>\n }\n @if(hasUserDetails){\n <button\n id=\"mnl-initials-button\"\n (click)=\"onUserInitialClick($event)\"\n mat-mini-fab\n >\n {{ userProfileDetails | mnlUserInitialPipe }}\n </button>\n }\n \n @if(!hasUserDetails){\n <button\n id=\"mnl-user-icon-button\"\n mat-raised-button\n (click)=\"onUserInitialClick($event)\"\n >\n <mat-icon mat-icon-button>person</mat-icon>\n </button>\n }\n </div>", styles: ["#mnl-initials-button{border-radius:20px}:host ::ng-deep .mat-mdc-mini-fab{background-color:#fff!important;color:#000!important}#mnl-userinfo-role{font-size:1rem}\n"] }]
|
|
36
|
-
}], propDecorators: { userProfileDetails: [{
|
|
37
|
-
type: Input
|
|
38
|
-
}], showDisplayName: [{
|
|
39
|
-
type: Input
|
|
40
|
-
}], userInitialClick: [{
|
|
41
|
-
type: Output
|
|
42
|
-
}], profileMenuClick: [{
|
|
43
|
-
type: Output
|
|
44
|
-
}] } });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvcHJvZmlsZS9wcm9maWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRWpHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUFTdEQsTUFBTSxPQUFPLGdCQUFnQjtJQVA3QjtRQVlFLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBR3ZCLHFCQUFnQixHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBRzlELHFCQUFnQixHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0tBaUIvRDtJQWJDLGtCQUFrQixDQUFDLEtBQVU7UUFDM0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxrQkFBa0IsSUFBSSxPQUFPLENBQUMsa0JBQWtCLENBQUMsWUFBWTtlQUMvRSxPQUFPLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLFNBQVM7ZUFDakQsT0FBTyxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNqRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztRQUMvQixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1FBQzlCLENBQUM7SUFDSCxDQUFDOytHQTNCVSxnQkFBZ0I7bUdBQWhCLGdCQUFnQixvUkNmN0IsKy9CQWtDUSx3TkR2QkcsZ0JBQWdCLG1EQUFFLGVBQWUsMERBQUUsYUFBYSxtTEFBQyxlQUFlLHdVQUFFLGVBQWU7OzRGQUkvRSxnQkFBZ0I7a0JBUDVCLFNBQVM7K0JBQ0Usa0JBQWtCLGNBQ2pCLElBQUksV0FDUCxDQUFDLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUMsZUFBZSxFQUFFLGVBQWUsQ0FBQzs4QkFNM0Ysa0JBQWtCO3NCQURqQixLQUFLO2dCQUlOLGVBQWU7c0JBRGQsS0FBSztnQkFJTixnQkFBZ0I7c0JBRGYsTUFBTTtnQkFJUCxnQkFBZ0I7c0JBRGYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVzZXJNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVsL3VzZXItbW9kZWwnO1xuaW1wb3J0IHsgVXNlckZ1bGxuYW1lUGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzL3VzZXItZnVsbG5hbWUtcGlwZSc7XG5pbXBvcnQgeyBVc2VySW5pdGlhbFBpcGUgfSBmcm9tICcuLi8uLi9waXBlcy91c2VyLWluaXRpYWxzLXBpcGUnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtbmwtdXNlci1wcm9maWxlJyxcbiAgc3RhbmRhbG9uZTp0cnVlLFxuICBpbXBvcnRzOltVc2VyRnVsbG5hbWVQaXBlLCBVc2VySW5pdGlhbFBpcGUsIE1hdEljb25Nb2R1bGUsTWF0QnV0dG9uTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJvZmlsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Byb2ZpbGUuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9maWxlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KClcbiAgdXNlclByb2ZpbGVEZXRhaWxzOiBVc2VyTW9kZWw7XG5cbiAgQElucHV0KClcbiAgc2hvd0Rpc3BsYXlOYW1lID0gdHJ1ZTtcblxuICBAT3V0cHV0KClcbiAgdXNlckluaXRpYWxDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBAT3V0cHV0KClcbiAgcHJvZmlsZU1lbnVDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBoYXNVc2VyRGV0YWlsczogYm9vbGVhbjtcblxuICBvblVzZXJJbml0aWFsQ2xpY2soZXZlbnQ6IGFueSkge1xuICAgIHRoaXMudXNlckluaXRpYWxDbGljay5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlcyAmJiBjaGFuZ2VzLnVzZXJQcm9maWxlRGV0YWlscyAmJiBjaGFuZ2VzLnVzZXJQcm9maWxlRGV0YWlscy5jdXJyZW50VmFsdWVcbiAgICAgICYmIGNoYW5nZXMudXNlclByb2ZpbGVEZXRhaWxzLmN1cnJlbnRWYWx1ZS5maXJzdE5hbWVcbiAgICAgICYmIGNoYW5nZXMudXNlclByb2ZpbGVEZXRhaWxzLmN1cnJlbnRWYWx1ZS5lbWFpbCkge1xuICAgICAgICB0aGlzLmhhc1VzZXJEZXRhaWxzID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5oYXNVc2VyRGV0YWlscyA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBpZD1cIm1ubC1wcm9maWxlLWNvbnRhaW5lclwiIGNsYXNzPVwiZmxleCBnYXAtWzEwcHhdICBqdXN0aWZ5LWNvbnRlbnQ6IGl0ZW1zLWNlbnRlclwiPlxuICBAaWYoc2hvd0Rpc3BsYXlOYW1lICYmIGhhc1VzZXJEZXRhaWxzKXtcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiPlxuICAgICAgPHNwYW5cbiAgICAgICAgaWQ9XCJtbmwtdXNlcmluZm8tbmFtZVwiXG4gICAgICAgIGNsYXNzPVwiIGhpZGRlbiBtZDppbmxpbmVcIlxuICAgICAgICA+e3sgdXNlclByb2ZpbGVEZXRhaWxzIHwgbW5sVXNlckZ1bGxOYW1lIH19XG4gICAgICA8L3NwYW4+XG4gICAgICBAaWYgKHVzZXJQcm9maWxlRGV0YWlscz8udXNlclJvbGUpIHtcbiAgICAgICAgPHNwYW4gaWQ9XCJtbmwtdXNlcmluZm8tcm9sZVwiIGNsYXNzPVwidGV4dC1jZW50ZXIgbGVhZGluZy0zIG1kOmlubGluZSBoaWRkZW5cIj5cbiAgICAgICAgICB7eyB1c2VyUHJvZmlsZURldGFpbHM/LnVzZXJSb2xlIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgICB9XG4gICAgQGlmKGhhc1VzZXJEZXRhaWxzKXtcbiAgICA8YnV0dG9uXG4gICAgICBpZD1cIm1ubC1pbml0aWFscy1idXR0b25cIlxuICAgICAgKGNsaWNrKT1cIm9uVXNlckluaXRpYWxDbGljaygkZXZlbnQpXCJcbiAgICAgIG1hdC1taW5pLWZhYlxuICAgID5cbiAgICAgIHt7IHVzZXJQcm9maWxlRGV0YWlscyB8IG1ubFVzZXJJbml0aWFsUGlwZSB9fVxuICAgIDwvYnV0dG9uPlxuICAgIH1cbiAgICBcbiAgICBAaWYoIWhhc1VzZXJEZXRhaWxzKXtcbiAgICA8YnV0dG9uXG4gICAgICBpZD1cIm1ubC11c2VyLWljb24tYnV0dG9uXCJcbiAgICAgIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICAoY2xpY2spPVwib25Vc2VySW5pdGlhbENsaWNrKCRldmVudClcIlxuICAgID5cbiAgICAgIDxtYXQtaWNvbiBtYXQtaWNvbi1idXR0b24+cGVyc29uPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICB9XG4gIDwvZGl2PiJdfQ==
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
3
|
-
import { MatListModule } from '@angular/material/list';
|
|
4
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
5
|
-
import { MatInputModule } from '@angular/material/input';
|
|
6
|
-
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
7
|
-
import { MatCardModule } from '@angular/material/card';
|
|
8
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
9
|
-
import { MatMenuModule } from '@angular/material/menu';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
export function modules() {
|
|
12
|
-
return [
|
|
13
|
-
MatButtonModule,
|
|
14
|
-
MatCardModule,
|
|
15
|
-
MatFormFieldModule,
|
|
16
|
-
MatIconModule,
|
|
17
|
-
MatInputModule,
|
|
18
|
-
MatListModule,
|
|
19
|
-
FormsModule,
|
|
20
|
-
ReactiveFormsModule,
|
|
21
|
-
MatMenuModule,
|
|
22
|
-
];
|
|
23
|
-
}
|
|
24
|
-
export class MaterialModule {
|
|
25
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
26
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: MaterialModule, imports: [MatButtonModule,
|
|
27
|
-
MatCardModule,
|
|
28
|
-
MatFormFieldModule,
|
|
29
|
-
MatIconModule,
|
|
30
|
-
MatInputModule,
|
|
31
|
-
MatListModule,
|
|
32
|
-
FormsModule,
|
|
33
|
-
ReactiveFormsModule,
|
|
34
|
-
MatMenuModule], exports: [MatButtonModule,
|
|
35
|
-
MatCardModule,
|
|
36
|
-
MatFormFieldModule,
|
|
37
|
-
MatIconModule,
|
|
38
|
-
MatInputModule,
|
|
39
|
-
MatListModule,
|
|
40
|
-
FormsModule,
|
|
41
|
-
ReactiveFormsModule,
|
|
42
|
-
MatMenuModule] }); }
|
|
43
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialModule, imports: [modules(), MatButtonModule,
|
|
44
|
-
MatCardModule,
|
|
45
|
-
MatFormFieldModule,
|
|
46
|
-
MatIconModule,
|
|
47
|
-
MatInputModule,
|
|
48
|
-
MatListModule,
|
|
49
|
-
FormsModule,
|
|
50
|
-
ReactiveFormsModule,
|
|
51
|
-
MatMenuModule] }); }
|
|
52
|
-
}
|
|
53
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialModule, decorators: [{
|
|
54
|
-
type: NgModule,
|
|
55
|
-
args: [{
|
|
56
|
-
imports: modules(),
|
|
57
|
-
exports: modules()
|
|
58
|
-
}]
|
|
59
|
-
}] });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL21hdGVyaWFsLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTs7QUFDdEQsTUFBTSxVQUFVLE9BQU87SUFDckIsT0FBTztRQUNMLGVBQWU7UUFDZixhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLGFBQWE7UUFDYixjQUFjO1FBQ2QsYUFBYTtRQUNiLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsYUFBYTtLQUNkLENBQUM7QUFDSixDQUFDO0FBS0QsTUFBTSxPQUFPLGNBQWM7K0dBQWQsY0FBYztnSEFBZCxjQUFjLFlBZnZCLGVBQWU7WUFDZixhQUFhO1lBQ2Isa0JBQWtCO1lBQ2xCLGFBQWE7WUFDYixjQUFjO1lBQ2QsYUFBYTtZQUNiLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsYUFBYSxhQVJiLGVBQWU7WUFDZixhQUFhO1lBQ2Isa0JBQWtCO1lBQ2xCLGFBQWE7WUFDYixjQUFjO1lBQ2QsYUFBYTtZQUNiLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsYUFBYTtnSEFPSixjQUFjLFlBSGhCLE9BQU8sRUFBRSxFQVpoQixlQUFlO1lBQ2YsYUFBYTtZQUNiLGtCQUFrQjtZQUNsQixhQUFhO1lBQ2IsY0FBYztZQUNkLGFBQWE7WUFDYixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLGFBQWE7OzRGQU9KLGNBQWM7a0JBSjFCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLE9BQU8sRUFBRTtvQkFDbEIsT0FBTyxFQUFFLE9BQU8sRUFBRTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRDYXJkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2FyZCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51J1xuZXhwb3J0IGZ1bmN0aW9uIG1vZHVsZXMoKSB7XG4gIHJldHVybiBbXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdENhcmRNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgTWF0TGlzdE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIE1hdE1lbnVNb2R1bGUsXG4gIF07XG59XG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBtb2R1bGVzKCksXG4gIGV4cG9ydHM6IG1vZHVsZXMoKVxufSlcbmV4cG9ydCBjbGFzcyBNYXRlcmlhbE1vZHVsZSB7fVxuIl19
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
export class LogLevelsEnum extends Number {
|
|
2
|
-
static { this.TRACE = 5; }
|
|
3
|
-
static { this.DEBUG = 1; }
|
|
4
|
-
static { this.INFO = 2; }
|
|
5
|
-
static { this.WARN = 3; }
|
|
6
|
-
static { this.ERROR = 4; }
|
|
7
|
-
static { this.SILENT = 0; }
|
|
8
|
-
}
|
|
9
|
-
export let logLevels = [
|
|
10
|
-
{ level: LogLevelsEnum.TRACE, name: 'TRACE' },
|
|
11
|
-
{ level: LogLevelsEnum.DEBUG, name: 'DEBUG' },
|
|
12
|
-
{ level: LogLevelsEnum.INFO, name: 'INFO' },
|
|
13
|
-
{ level: LogLevelsEnum.WARN, name: 'WARN' },
|
|
14
|
-
{ level: LogLevelsEnum.ERROR, name: 'ERROR' },
|
|
15
|
-
{ level: LogLevelsEnum.SILENT, name: 'SILENT' }
|
|
16
|
-
];
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLWxldmVscy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbnMvc3JjL2xpYi9tb2RlbC9sb2ctbGV2ZWxzLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxhQUFjLFNBQVEsTUFBTTthQUM5QixVQUFLLEdBQUcsQ0FBQyxDQUFDO2FBQ1YsVUFBSyxHQUFHLENBQUMsQ0FBQzthQUNWLFNBQUksR0FBRyxDQUFDLENBQUM7YUFDVCxTQUFJLEdBQUcsQ0FBQyxDQUFDO2FBQ1QsVUFBSyxHQUFHLENBQUMsQ0FBQzthQUNWLFdBQU0sR0FBRyxDQUFDLENBQUM7O0FBR3RCLE1BQU0sQ0FBQyxJQUFJLFNBQVMsR0FBVTtJQUMxQixFQUFDLEtBQUssRUFBRSxhQUFhLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUM7SUFDM0MsRUFBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFDO0lBQzNDLEVBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBQztJQUN6QyxFQUFDLEtBQUssRUFBRSxhQUFhLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUM7SUFDekMsRUFBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFDO0lBQzNDLEVBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBQztDQUNoRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIExvZ0xldmVsc0VudW0gZXh0ZW5kcyBOdW1iZXIge1xuICAgIHN0YXRpYyBUUkFDRSA9IDU7XG4gICAgc3RhdGljIERFQlVHID0gMTtcbiAgICBzdGF0aWMgSU5GTyA9IDI7XG4gICAgc3RhdGljIFdBUk4gPSAzO1xuICAgIHN0YXRpYyBFUlJPUiA9IDQ7XG4gICAgc3RhdGljIFNJTEVOVCA9IDA7XG59XG5cbmV4cG9ydCBsZXQgbG9nTGV2ZWxzOiBhbnlbXSA9IFtcbiAgICB7bGV2ZWw6IExvZ0xldmVsc0VudW0uVFJBQ0UsIG5hbWU6ICdUUkFDRSd9LFxuICAgIHtsZXZlbDogTG9nTGV2ZWxzRW51bS5ERUJVRywgbmFtZTogJ0RFQlVHJ30sXG4gICAge2xldmVsOiBMb2dMZXZlbHNFbnVtLklORk8sIG5hbWU6ICdJTkZPJ30sXG4gICAge2xldmVsOiBMb2dMZXZlbHNFbnVtLldBUk4sIG5hbWU6ICdXQVJOJ30sXG4gICAge2xldmVsOiBMb2dMZXZlbHNFbnVtLkVSUk9SLCBuYW1lOiAnRVJST1InfSxcbiAgICB7bGV2ZWw6IExvZ0xldmVsc0VudW0uU0lMRU5ULCBuYW1lOiAnU0lMRU5UJ31cbl07XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1kYXRhLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL21vZGVsL21lbnUtZGF0YS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBNZW51TW9kZWwge1xuICBuYW1lPzogc3RyaW5nO1xuICBpY29uPzogc3RyaW5nO1xuICBzdmdJY29uPzogc3RyaW5nO1xuICByb3V0ZT86IHN0cmluZztcbiAgc3ViTWVudXM/OiBBcnJheTxNZW51TW9kZWw+O1xuICBleHBhbmRlZD86IGJvb2xlYW47XG4gIHNlbGVjdGVkPzogYm9vbGVhbjtcbiAgdG9vbFRpcD86IHN0cmluZztcbn1cbiJdfQ==
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { MultiTranslateHttpLoader, } from 'ngx-translate-multi-http-loader';
|
|
2
|
-
import { InjectionToken } from '@angular/core';
|
|
3
|
-
export const MNL_TRANSLATION_RESOURCE = new InjectionToken('Translation Resource');
|
|
4
|
-
export function httpLoaderFactory(http, resources) {
|
|
5
|
-
if (!resources) {
|
|
6
|
-
resources = [];
|
|
7
|
-
}
|
|
8
|
-
else if (!resources.length) {
|
|
9
|
-
resources = [resources];
|
|
10
|
-
}
|
|
11
|
-
resources.push({ prefix: './assets/mnl-commons/i18n/', suffix: '.json' });
|
|
12
|
-
return new MultiTranslateHttpLoader(http, resources);
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24tcmVzb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvbW9kZWwvdHJhbnNsYXRpb24tcmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHdCQUF3QixHQUN6QixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsSUFBSSxjQUFjLENBQXVCLHNCQUFzQixDQUFDLENBQUM7QUFFekcsTUFBTSxVQUFVLGlCQUFpQixDQUFDLElBQWlCLEVBQUMsU0FBaUM7SUFDbkYsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2YsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUNqQixDQUFDO1NBQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM3QixTQUFTLEdBQUcsQ0FBQyxTQUFnQixDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFFMUUsT0FBTyxJQUFJLHdCQUF3QixDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztBQUV2RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSVRyYW5zbGF0aW9uUmVzb3VyY2UsXG4gIE11bHRpVHJhbnNsYXRlSHR0cExvYWRlcixcbn0gZnJvbSAnbmd4LXRyYW5zbGF0ZS1tdWx0aS1odHRwLWxvYWRlcic7XG5pbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cEJhY2tlbmQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5cbmV4cG9ydCBjb25zdCBNTkxfVFJBTlNMQVRJT05fUkVTT1VSQ0UgPSBuZXcgSW5qZWN0aW9uVG9rZW48SVRyYW5zbGF0aW9uUmVzb3VyY2U+KCdUcmFuc2xhdGlvbiBSZXNvdXJjZScpO1xuXG5leHBvcnQgZnVuY3Rpb24gaHR0cExvYWRlckZhY3RvcnkoaHR0cDogSHR0cEJhY2tlbmQscmVzb3VyY2VzOiBJVHJhbnNsYXRpb25SZXNvdXJjZVtdKSB7XG4gIGlmICghcmVzb3VyY2VzKSB7XG4gICAgcmVzb3VyY2VzID0gW107XG4gIH0gZWxzZSBpZiAoIXJlc291cmNlcy5sZW5ndGgpIHtcbiAgICByZXNvdXJjZXMgPSBbcmVzb3VyY2VzIGFzIGFueV07XG4gIH1cblxuICByZXNvdXJjZXMucHVzaCh7IHByZWZpeDogJy4vYXNzZXRzL21ubC1jb21tb25zL2kxOG4vJywgc3VmZml4OiAnLmpzb24nIH0pO1xuXG4gIHJldHVybiBuZXcgTXVsdGlUcmFuc2xhdGVIdHRwTG9hZGVyKGh0dHAsIHJlc291cmNlcyk7XG4gXG59XG5cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbnMvc3JjL2xpYi9tb2RlbC91c2VyLW1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFVzZXJNb2RlbCB7XG4gICAgdXNlcm5hbWU/OiBzdHJpbmc7XG4gICAgcGFzc3dvcmQ/OiBzdHJpbmc7XG4gICAgZmlyc3ROYW1lPzogc3RyaW5nO1xuICAgIGxhc3ROYW1lPzogc3RyaW5nO1xuICAgIGVtYWlsPzogc3RyaW5nO1xuICAgIHVzZXJSb2xlPzogc3RyaW5nO1xufVxuIl19
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "../services/app.config.service";
|
|
4
|
-
export class AppConfigPipe {
|
|
5
|
-
constructor(config) {
|
|
6
|
-
this.config = config;
|
|
7
|
-
}
|
|
8
|
-
transform(value, defaultValue) {
|
|
9
|
-
return this.config.get(value) || defaultValue || '';
|
|
10
|
-
}
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AppConfigPipe, deps: [{ token: i1.AppConfigService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
12
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: AppConfigPipe, isStandalone: true, name: "mnlAppConfig" }); }
|
|
13
|
-
}
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AppConfigPipe, decorators: [{
|
|
15
|
-
type: Pipe,
|
|
16
|
-
args: [{
|
|
17
|
-
name: 'mnlAppConfig',
|
|
18
|
-
standalone: true
|
|
19
|
-
}]
|
|
20
|
-
}], ctorParameters: () => [{ type: i1.AppConfigService }] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWNvbmZpZy1waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL3BpcGVzL2FwcC1jb25maWctcGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7O0FBT3BELE1BQU0sT0FBTyxhQUFhO0lBQ3RCLFlBQW9CLE1BQXdCO1FBQXhCLFdBQU0sR0FBTixNQUFNLENBQWtCO0lBQUcsQ0FBQztJQUVoRCxTQUFTLENBQUMsS0FBYSxFQUFFLFlBQWtCO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksWUFBWSxJQUFJLEVBQUUsQ0FBQztJQUN4RCxDQUFDOytHQUxRLGFBQWE7NkdBQWIsYUFBYTs7NEZBQWIsYUFBYTtrQkFKekIsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsY0FBYztvQkFDcEIsVUFBVSxFQUFDLElBQUk7aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXBwQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FwcC5jb25maWcuc2VydmljZSc7XG5cbkBQaXBlKHtcbiAgICBuYW1lOiAnbW5sQXBwQ29uZmlnJyxcbiAgICBzdGFuZGFsb25lOnRydWVcbn0pXG5leHBvcnQgY2xhc3MgQXBwQ29uZmlnUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY29uZmlnOiBBcHBDb25maWdTZXJ2aWNlKSB7fVxuXG4gICAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcsIGRlZmF1bHRWYWx1ZT86IGFueSk6IGFueSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZy5nZXQodmFsdWUpIHx8IGRlZmF1bHRWYWx1ZSB8fCAnJztcbiAgICB9XG59XG4iXX0=
|