@muraai/mnl-commons 0.2.0-alpha-2f3f216 → 0.2.0-alpha-dd6f96b
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/commons.module.mjs +5 -5
- package/esm2022/lib/components/header/header.component.mjs +4 -4
- package/esm2022/lib/components/highlighter/highlighter.component.mjs +4 -4
- package/esm2022/lib/components/language-menu/language-menu.component.mjs +4 -4
- package/esm2022/lib/components/login/login.component.mjs +4 -4
- package/esm2022/lib/components/menu/menu.component.mjs +7 -5
- package/esm2022/lib/components/placeholder/placeholder.component.mjs +4 -4
- package/esm2022/lib/components/profile/profile.component.mjs +8 -6
- package/esm2022/lib/material.module.mjs +5 -5
- package/esm2022/lib/model/menu-data.model.mjs +1 -1
- package/esm2022/lib/model/user-model.mjs +1 -1
- package/esm2022/lib/pipes/app-config-pipe.mjs +4 -4
- package/esm2022/lib/pipes/time-ago-pipe.mjs +4 -4
- package/esm2022/lib/pipes/user-fullname-pipe.mjs +4 -4
- package/esm2022/lib/pipes/user-initials-pipe.mjs +4 -4
- package/esm2022/lib/services/app.config.service.mjs +4 -4
- package/esm2022/lib/services/local-storage.service.mjs +4 -4
- package/esm2022/lib/services/locale.service.mjs +4 -4
- package/esm2022/lib/services/log.service.mjs +4 -4
- package/esm2022/lib/services/user-profile.service.mjs +4 -4
- package/fesm2022/muraai-mnl-commons.mjs +61 -59
- package/fesm2022/muraai-mnl-commons.mjs.map +1 -1
- package/lib/model/menu-data.model.d.ts +1 -0
- package/lib/model/user-model.d.ts +1 -0
- package/package.json +1 -1
- package/theming.scss +5 -0
|
@@ -27,6 +27,8 @@ import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
|
|
|
27
27
|
import * as i2 from '@angular/material/toolbar';
|
|
28
28
|
import { MatToolbarModule } from '@angular/material/toolbar';
|
|
29
29
|
import * as i1$3 from '@angular/platform-browser';
|
|
30
|
+
import * as i5$1 from '@angular/material/tooltip';
|
|
31
|
+
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
30
32
|
import { MultiTranslateHttpLoader } from 'ngx-translate-multi-http-loader';
|
|
31
33
|
import { formatDistance } from 'date-fns';
|
|
32
34
|
import differenceInDays from 'date-fns/differenceInDays';
|
|
@@ -46,8 +48,8 @@ function modules() {
|
|
|
46
48
|
];
|
|
47
49
|
}
|
|
48
50
|
class MaterialModule {
|
|
49
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
50
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.
|
|
51
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
52
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: MaterialModule, imports: [MatButtonModule,
|
|
51
53
|
MatCardModule,
|
|
52
54
|
MatFormFieldModule,
|
|
53
55
|
MatIconModule,
|
|
@@ -64,7 +66,7 @@ class MaterialModule {
|
|
|
64
66
|
FormsModule,
|
|
65
67
|
ReactiveFormsModule,
|
|
66
68
|
MatMenuModule] }); }
|
|
67
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.
|
|
69
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MaterialModule, imports: [modules(), MatButtonModule,
|
|
68
70
|
MatCardModule,
|
|
69
71
|
MatFormFieldModule,
|
|
70
72
|
MatIconModule,
|
|
@@ -74,7 +76,7 @@ class MaterialModule {
|
|
|
74
76
|
ReactiveFormsModule,
|
|
75
77
|
MatMenuModule] }); }
|
|
76
78
|
}
|
|
77
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
79
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MaterialModule, decorators: [{
|
|
78
80
|
type: NgModule,
|
|
79
81
|
args: [{
|
|
80
82
|
imports: modules(),
|
|
@@ -94,10 +96,10 @@ class HeaderComponent {
|
|
|
94
96
|
onLogoClick(event) {
|
|
95
97
|
this.logoClick.emit(event);
|
|
96
98
|
}
|
|
97
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
98
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.
|
|
99
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
100
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", 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 }); }
|
|
99
101
|
}
|
|
100
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HeaderComponent, decorators: [{
|
|
101
103
|
type: Component,
|
|
102
104
|
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" }]
|
|
103
105
|
}], propDecorators: { header: [{
|
|
@@ -114,10 +116,10 @@ class HighlighterComponent {
|
|
|
114
116
|
this.width = '4px';
|
|
115
117
|
this.enabled = true;
|
|
116
118
|
}
|
|
117
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
118
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.
|
|
119
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HighlighterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
120
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", 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$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
119
121
|
}
|
|
120
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
122
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HighlighterComponent, decorators: [{
|
|
121
123
|
type: Component,
|
|
122
124
|
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" }]
|
|
123
125
|
}], propDecorators: { height: [{
|
|
@@ -201,10 +203,10 @@ class AppConfigService {
|
|
|
201
203
|
});
|
|
202
204
|
});
|
|
203
205
|
}
|
|
204
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
205
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.
|
|
206
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppConfigService, deps: [{ token: i1$2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
207
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppConfigService, providedIn: 'root' }); }
|
|
206
208
|
}
|
|
207
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
209
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppConfigService, decorators: [{
|
|
208
210
|
type: Injectable,
|
|
209
211
|
args: [{
|
|
210
212
|
providedIn: 'root',
|
|
@@ -247,10 +249,10 @@ class LocalStorageService {
|
|
|
247
249
|
return false;
|
|
248
250
|
}
|
|
249
251
|
}
|
|
250
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
251
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.
|
|
252
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
253
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalStorageService, providedIn: 'root' }); }
|
|
252
254
|
}
|
|
253
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
255
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocalStorageService, decorators: [{
|
|
254
256
|
type: Injectable,
|
|
255
257
|
args: [{
|
|
256
258
|
providedIn: 'root',
|
|
@@ -279,10 +281,10 @@ class UserProfileService {
|
|
|
279
281
|
getLocale() {
|
|
280
282
|
return this.localStorageService.get(this.getApplicationId() + this.userPrefix + UserProfileService.LOCALE_PREFIX);
|
|
281
283
|
}
|
|
282
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
283
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.
|
|
284
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserProfileService, deps: [{ token: AppConfigService }, { token: LocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
285
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserProfileService, providedIn: 'root' }); }
|
|
284
286
|
}
|
|
285
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
287
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserProfileService, decorators: [{
|
|
286
288
|
type: Injectable,
|
|
287
289
|
args: [{
|
|
288
290
|
providedIn: 'root'
|
|
@@ -359,10 +361,10 @@ class LocaleService {
|
|
|
359
361
|
this.userProfileService.setLocale(locale.key);
|
|
360
362
|
}
|
|
361
363
|
}
|
|
362
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
363
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.
|
|
364
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocaleService, deps: [{ token: AppConfigService }, { token: i3.TranslateService }, { token: UserProfileService }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
365
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocaleService, providedIn: 'root' }); }
|
|
364
366
|
}
|
|
365
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
367
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocaleService, decorators: [{
|
|
366
368
|
type: Injectable,
|
|
367
369
|
args: [{
|
|
368
370
|
providedIn: 'root',
|
|
@@ -389,10 +391,10 @@ class LanguageMenuComponent {
|
|
|
389
391
|
get locale() {
|
|
390
392
|
return this.localeService.getActiveLocale() || this.localeService.getDefaultLocale();
|
|
391
393
|
}
|
|
392
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
393
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.
|
|
394
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LanguageMenuComponent, deps: [{ token: LocaleService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
395
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", 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 <mat-icon>language</mat-icon>\n {{ \"MNL.LANGUAGE-SELECTOR.LANGUAGES\" | translate }}\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: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i3$1.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$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i3$1.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: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i1$1.UpperCasePipe, name: "uppercase" }] }); }
|
|
394
396
|
}
|
|
395
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
397
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LanguageMenuComponent, decorators: [{
|
|
396
398
|
type: Component,
|
|
397
399
|
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 <mat-icon>language</mat-icon>\n {{ \"MNL.LANGUAGE-SELECTOR.LANGUAGES\" | translate }}\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" }]
|
|
398
400
|
}], ctorParameters: () => [{ type: LocaleService }], propDecorators: { showLocaleKeyAsLabel: [{
|
|
@@ -427,10 +429,10 @@ class LoginComponent {
|
|
|
427
429
|
getBackgroundImageUrl() {
|
|
428
430
|
return this.sanitizer.bypassSecurityTrustStyle(`url(${this.backgroundImageUrl})`);
|
|
429
431
|
}
|
|
430
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
431
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.
|
|
432
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoginComponent, deps: [{ token: i1$3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
433
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", 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$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "component", type: i2$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2$1.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: i2$2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] }); }
|
|
432
434
|
}
|
|
433
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
435
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoginComponent, decorators: [{
|
|
434
436
|
type: Component,
|
|
435
437
|
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>" }]
|
|
436
438
|
}], ctorParameters: () => [{ type: i1$3.DomSanitizer }], propDecorators: { title: [{
|
|
@@ -501,12 +503,12 @@ class MenuComponent {
|
|
|
501
503
|
const navListWidths = this.navLists.toArray().map(navList => navList.nativeElement.offsetWidth);
|
|
502
504
|
this.subMenuWidth = Math.max(...navListWidths) - 85;
|
|
503
505
|
}
|
|
504
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
505
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.
|
|
506
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
507
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", 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$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { 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: i3.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i3$1.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$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i3$1.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$1.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
|
|
506
508
|
}
|
|
507
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
509
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MenuComponent, decorators: [{
|
|
508
510
|
type: Component,
|
|
509
|
-
args: [{ selector: 'mnl-menu', standalone: true, imports: [CommonModule, MatNavList, MatIconModule, TranslateModule, MatMenuModule, HighlighterComponent, MatListItem], 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 >\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 >\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 >\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 >\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 >\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"] }]
|
|
511
|
+
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"] }]
|
|
510
512
|
}], propDecorators: { navLists: [{
|
|
511
513
|
type: ViewChildren,
|
|
512
514
|
args: ['navList', { read: ElementRef }]
|
|
@@ -542,10 +544,10 @@ class UserFullnamePipe {
|
|
|
542
544
|
isEmptyObject(data) {
|
|
543
545
|
return (data && (Object.keys(data).length === 0));
|
|
544
546
|
}
|
|
545
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
546
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.
|
|
547
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserFullnamePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
548
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: UserFullnamePipe, isStandalone: true, name: "mnlUserFullName" }); }
|
|
547
549
|
}
|
|
548
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
550
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserFullnamePipe, decorators: [{
|
|
549
551
|
type: Pipe,
|
|
550
552
|
args: [{
|
|
551
553
|
name: 'mnlUserFullName',
|
|
@@ -589,10 +591,10 @@ class UserInitialPipe {
|
|
|
589
591
|
hasWhiteSpace(data) {
|
|
590
592
|
return /\s/g.test(data);
|
|
591
593
|
}
|
|
592
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
593
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.
|
|
594
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserInitialPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
595
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: UserInitialPipe, isStandalone: true, name: "mnlUserInitialPipe" }); }
|
|
594
596
|
}
|
|
595
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
597
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserInitialPipe, decorators: [{
|
|
596
598
|
type: Pipe,
|
|
597
599
|
args: [{
|
|
598
600
|
name: 'mnlUserInitialPipe',
|
|
@@ -611,7 +613,7 @@ class ProfileComponent {
|
|
|
611
613
|
}
|
|
612
614
|
ngOnChanges(changes) {
|
|
613
615
|
if (changes && changes.userProfileDetails && changes.userProfileDetails.currentValue
|
|
614
|
-
&& changes.userProfileDetails.currentValue.firstName
|
|
616
|
+
&& changes.userProfileDetails.currentValue.firstName
|
|
615
617
|
&& changes.userProfileDetails.currentValue.email) {
|
|
616
618
|
this.hasUserDetails = true;
|
|
617
619
|
}
|
|
@@ -619,12 +621,12 @@ class ProfileComponent {
|
|
|
619
621
|
this.hasUserDetails = false;
|
|
620
622
|
}
|
|
621
623
|
}
|
|
622
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
623
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.
|
|
624
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ProfileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
625
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", 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$2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i2$2.MatMiniFabButton, selector: "button[mat-mini-fab]", exportAs: ["matButton"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
|
|
624
626
|
}
|
|
625
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
627
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ProfileComponent, decorators: [{
|
|
626
628
|
type: Component,
|
|
627
|
-
args: [{ selector: 'mnl-user-profile', standalone: true, imports: [UserFullnamePipe, UserInitialPipe, MatIconModule, MatButtonModule], template: "<div id=\"mnl-profile-container\" class=\"flex gap-[10px] justify-content: items-center\">\n @if(showDisplayName && hasUserDetails){\n <span\n
|
|
629
|
+
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"] }]
|
|
628
630
|
}], propDecorators: { userProfileDetails: [{
|
|
629
631
|
type: Input
|
|
630
632
|
}], showDisplayName: [{
|
|
@@ -654,10 +656,10 @@ class AppConfigPipe {
|
|
|
654
656
|
transform(value, defaultValue) {
|
|
655
657
|
return this.config.get(value) || defaultValue || '';
|
|
656
658
|
}
|
|
657
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
658
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.
|
|
659
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppConfigPipe, deps: [{ token: AppConfigService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
660
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: AppConfigPipe, isStandalone: true, name: "mnlAppConfig" }); }
|
|
659
661
|
}
|
|
660
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
662
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppConfigPipe, decorators: [{
|
|
661
663
|
type: Pipe,
|
|
662
664
|
args: [{
|
|
663
665
|
name: 'mnlAppConfig',
|
|
@@ -691,10 +693,10 @@ class TimeAgoPipe {
|
|
|
691
693
|
}
|
|
692
694
|
return '';
|
|
693
695
|
}
|
|
694
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
695
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.
|
|
696
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TimeAgoPipe, deps: [{ token: AppConfigService }, { token: UserProfileService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
697
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: TimeAgoPipe, isStandalone: true, name: "mnlTimeAgo" }); }
|
|
696
698
|
}
|
|
697
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
699
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TimeAgoPipe, decorators: [{
|
|
698
700
|
type: Pipe,
|
|
699
701
|
args: [{
|
|
700
702
|
name: 'mnlTimeAgo',
|
|
@@ -793,10 +795,10 @@ class LogService {
|
|
|
793
795
|
messageBus(message, logLevel) {
|
|
794
796
|
this.onMessage.next({ text: message, type: logLevel });
|
|
795
797
|
}
|
|
796
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
797
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.
|
|
798
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LogService, deps: [{ token: AppConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
799
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LogService, providedIn: 'root' }); }
|
|
798
800
|
}
|
|
799
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
801
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LogService, decorators: [{
|
|
800
802
|
type: Injectable,
|
|
801
803
|
args: [{
|
|
802
804
|
providedIn: 'root'
|
|
@@ -804,10 +806,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImpor
|
|
|
804
806
|
}], ctorParameters: () => [{ type: AppConfigService }] });
|
|
805
807
|
|
|
806
808
|
class PlaceholderComponent {
|
|
807
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
808
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.
|
|
809
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PlaceholderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
810
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", 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: i3.TranslatePipe, name: "translate" }] }); }
|
|
809
811
|
}
|
|
810
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
812
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PlaceholderComponent, decorators: [{
|
|
811
813
|
type: Component,
|
|
812
814
|
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"] }]
|
|
813
815
|
}], propDecorators: { icon: [{
|
|
@@ -844,8 +846,8 @@ class CommonsModule {
|
|
|
844
846
|
ngModule: CommonsModule,
|
|
845
847
|
};
|
|
846
848
|
}
|
|
847
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.
|
|
848
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.
|
|
849
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CommonsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
850
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: CommonsModule, imports: [CommonModule,
|
|
849
851
|
MaterialModule,
|
|
850
852
|
PlaceholderComponent,
|
|
851
853
|
HeaderComponent,
|
|
@@ -870,7 +872,7 @@ class CommonsModule {
|
|
|
870
872
|
UserFullnamePipe,
|
|
871
873
|
TranslateModule,
|
|
872
874
|
PlaceholderComponent] }); }
|
|
873
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.
|
|
875
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CommonsModule, imports: [CommonModule,
|
|
874
876
|
MaterialModule,
|
|
875
877
|
PlaceholderComponent,
|
|
876
878
|
HeaderComponent,
|
|
@@ -888,7 +890,7 @@ class CommonsModule {
|
|
|
888
890
|
},
|
|
889
891
|
}), TranslateModule] }); }
|
|
890
892
|
}
|
|
891
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.
|
|
893
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CommonsModule, decorators: [{
|
|
892
894
|
type: NgModule,
|
|
893
895
|
args: [{
|
|
894
896
|
declarations: [],
|