@muraai/mnl-commons 0.1.0 → 0.2.0
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/esm2020/lib/commons.module.mjs +136 -0
- package/esm2020/lib/components/header/header.component.mjs +31 -0
- package/esm2020/lib/components/highlighter/highlighter.component.mjs +23 -0
- package/esm2020/lib/components/language-menu/language-menu.component.mjs +36 -0
- package/esm2020/lib/components/login/login.component.mjs +55 -0
- package/esm2020/lib/components/menu/menu.component.mjs +67 -0
- package/esm2020/lib/components/profile/profile.component.mjs +42 -0
- package/esm2020/lib/material.module.mjs +60 -0
- package/esm2020/lib/model/log-levels.model.mjs +17 -0
- package/esm2020/lib/model/menu-data.model.mjs +2 -0
- package/esm2020/lib/model/translation-resource.mjs +14 -0
- package/esm2020/lib/model/user-model.mjs +2 -0
- package/esm2020/lib/pipes/app-config-pipe.mjs +20 -0
- package/esm2020/lib/pipes/time-ago-pipe.mjs +43 -0
- package/esm2020/lib/pipes/user-fullname-pipe.mjs +34 -0
- package/esm2020/lib/pipes/user-initials-pipe.mjs +48 -0
- package/esm2020/lib/services/app.config.service.mjs +41 -0
- package/esm2020/lib/services/local-storage.service.mjs +48 -0
- package/esm2020/lib/services/locale.service.mjs +89 -0
- package/esm2020/lib/services/log.service.mjs +89 -0
- package/esm2020/lib/services/user-profile.service.mjs +36 -0
- package/esm2020/lib/utils/object-utils.mjs +46 -0
- package/esm2020/muraai-mnl-commons.mjs +5 -0
- package/esm2020/public-api.mjs +25 -0
- package/fesm2015/muraai-mnl-commons.mjs +908 -0
- package/fesm2015/muraai-mnl-commons.mjs.map +1 -0
- package/fesm2020/muraai-mnl-commons.mjs +905 -0
- package/fesm2020/muraai-mnl-commons.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/commons.module.d.ts +21 -0
- package/lib/components/header/header.component.d.ts +5 -0
- package/lib/components/highlighter/highlighter.component.d.ts +3 -0
- package/lib/components/language-menu/language-menu.component.d.ts +6 -1
- package/lib/components/login/login.component.d.ts +5 -2
- package/lib/components/menu/menu.component.d.ts +3 -0
- package/lib/components/profile/profile.component.d.ts +8 -2
- package/lib/material.module.d.ts +14 -2
- package/lib/model/menu-data.model.d.ts +1 -0
- package/lib/pipes/app-config-pipe.d.ts +3 -0
- package/lib/pipes/time-ago-pipe.d.ts +4 -1
- package/lib/pipes/user-fullname-pipe.d.ts +4 -0
- package/lib/pipes/user-initials-pipe.d.ts +6 -0
- package/lib/services/app.config.service.d.ts +3 -0
- package/lib/services/local-storage.service.d.ts +7 -0
- package/lib/services/locale.service.d.ts +4 -0
- package/lib/services/log.service.d.ts +4 -1
- package/lib/services/user-profile.service.d.ts +3 -0
- package/package.json +24 -14
- package/public-api.d.ts +1 -0
- package/theming.scss +6 -5186
- package/bundles/muraai-mnl-commons.umd.js +0 -1087
- package/bundles/muraai-mnl-commons.umd.js.map +0 -1
- package/bundles/muraai-mnl-commons.umd.min.js +0 -16
- package/bundles/muraai-mnl-commons.umd.min.js.map +0 -1
- package/esm2015/lib/commons.module.js +0 -89
- package/esm2015/lib/components/header/header.component.js +0 -26
- package/esm2015/lib/components/highlighter/highlighter.component.js +0 -27
- package/esm2015/lib/components/language-menu/language-menu.component.js +0 -29
- package/esm2015/lib/components/login/login.component.js +0 -58
- package/esm2015/lib/components/menu/menu.component.js +0 -66
- package/esm2015/lib/components/profile/profile.component.js +0 -29
- package/esm2015/lib/material.module.js +0 -33
- package/esm2015/lib/model/log-levels.model.js +0 -17
- package/esm2015/lib/model/menu-data.model.js +0 -1
- package/esm2015/lib/model/translation-resource.js +0 -14
- package/esm2015/lib/model/user-model.js +0 -1
- package/esm2015/lib/pipes/app-config-pipe.js +0 -21
- package/esm2015/lib/pipes/time-ago-pipe.js +0 -46
- package/esm2015/lib/pipes/user-fullname-pipe.js +0 -27
- package/esm2015/lib/pipes/user-initials-pipe.js +0 -27
- package/esm2015/lib/services/app.config.service.js +0 -45
- package/esm2015/lib/services/local-storage.service.js +0 -19
- package/esm2015/lib/services/locale.service.js +0 -93
- package/esm2015/lib/services/log.service.js +0 -93
- package/esm2015/lib/services/user-profile.service.js +0 -43
- package/esm2015/lib/utils/object-utils.js +0 -46
- package/esm2015/muraai-mnl-commons.js +0 -6
- package/esm2015/public-api.js +0 -22
- package/esm5/lib/commons.module.js +0 -92
- package/esm5/lib/components/header/header.component.js +0 -27
- package/esm5/lib/components/highlighter/highlighter.component.js +0 -28
- package/esm5/lib/components/language-menu/language-menu.component.js +0 -30
- package/esm5/lib/components/login/login.component.js +0 -59
- package/esm5/lib/components/menu/menu.component.js +0 -78
- package/esm5/lib/components/profile/profile.component.js +0 -30
- package/esm5/lib/material.module.js +0 -36
- package/esm5/lib/model/log-levels.model.js +0 -24
- package/esm5/lib/model/menu-data.model.js +0 -1
- package/esm5/lib/model/translation-resource.js +0 -14
- package/esm5/lib/model/user-model.js +0 -1
- package/esm5/lib/pipes/app-config-pipe.js +0 -22
- package/esm5/lib/pipes/time-ago-pipe.js +0 -48
- package/esm5/lib/pipes/user-fullname-pipe.js +0 -30
- package/esm5/lib/pipes/user-initials-pipe.js +0 -30
- package/esm5/lib/services/app.config.service.js +0 -57
- package/esm5/lib/services/local-storage.service.js +0 -22
- package/esm5/lib/services/locale.service.js +0 -96
- package/esm5/lib/services/log.service.js +0 -130
- package/esm5/lib/services/user-profile.service.js +0 -45
- package/esm5/lib/utils/object-utils.js +0 -54
- package/esm5/muraai-mnl-commons.js +0 -6
- package/esm5/public-api.js +0 -22
- package/fesm2015/muraai-mnl-commons.js +0 -762
- package/fesm2015/muraai-mnl-commons.js.map +0 -1
- package/fesm5/muraai-mnl-commons.js +0 -863
- package/fesm5/muraai-mnl-commons.js.map +0 -1
- package/muraai-mnl-commons.d.ts +0 -5
- package/muraai-mnl-commons.metadata.json +0 -1
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { CommonModule, registerLocaleData } from '@angular/common';
|
|
2
|
+
import { HttpClient } from '@angular/common/http';
|
|
3
|
+
import localeAR from '@angular/common/locales/ar';
|
|
4
|
+
import localeDE from '@angular/common/locales/de';
|
|
5
|
+
import localeFR from '@angular/common/locales/fr';
|
|
6
|
+
import { APP_INITIALIZER, NgModule } from '@angular/core';
|
|
7
|
+
import { MatToolbarModule } from '@angular/material/toolbar';
|
|
8
|
+
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
|
9
|
+
import { HeaderComponent } from './components/header/header.component';
|
|
10
|
+
import { HighlighterComponent } from './components/highlighter/highlighter.component';
|
|
11
|
+
import { LanguageMenuComponent } from './components/language-menu/language-menu.component';
|
|
12
|
+
import { LoginComponent } from './components/login/login.component';
|
|
13
|
+
import { MenuComponent } from './components/menu/menu.component';
|
|
14
|
+
import { ProfileComponent } from './components/profile/profile.component';
|
|
15
|
+
import { MaterialModule } from './material.module';
|
|
16
|
+
import { MNL_TRANSLATION_RESOURCE, translationLoaderFactory, } from './model/translation-resource';
|
|
17
|
+
import { AppConfigPipe } from './pipes/app-config-pipe';
|
|
18
|
+
import { TimeAgoPipe } from './pipes/time-ago-pipe';
|
|
19
|
+
import { UserFullnamePipe } from './pipes/user-fullname-pipe';
|
|
20
|
+
import { UserInitialPipe } from './pipes/user-initials-pipe';
|
|
21
|
+
import { AppConfigService } from './services/app.config.service';
|
|
22
|
+
import { LocalStorageService } from './services/local-storage.service';
|
|
23
|
+
import { LocaleService } from './services/locale.service';
|
|
24
|
+
import { LogService } from './services/log.service';
|
|
25
|
+
import { UserProfileService } from './services/user-profile.service';
|
|
26
|
+
import * as i0 from "@angular/core";
|
|
27
|
+
import * as i1 from "@ngx-translate/core";
|
|
28
|
+
registerLocaleData(localeFR);
|
|
29
|
+
registerLocaleData(localeDE);
|
|
30
|
+
registerLocaleData(localeAR);
|
|
31
|
+
export class CommonsModule {
|
|
32
|
+
static forRoot() {
|
|
33
|
+
return {
|
|
34
|
+
ngModule: CommonsModule,
|
|
35
|
+
providers: [
|
|
36
|
+
{
|
|
37
|
+
provide: APP_INITIALIZER,
|
|
38
|
+
useFactory: loadConfig,
|
|
39
|
+
deps: [
|
|
40
|
+
AppConfigService,
|
|
41
|
+
UserProfileService,
|
|
42
|
+
LocalStorageService,
|
|
43
|
+
LogService,
|
|
44
|
+
LocaleService,
|
|
45
|
+
],
|
|
46
|
+
multi: true,
|
|
47
|
+
},
|
|
48
|
+
],
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
static forChild() {
|
|
52
|
+
return {
|
|
53
|
+
ngModule: CommonsModule,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
CommonsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CommonsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
58
|
+
CommonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: CommonsModule, declarations: [HeaderComponent,
|
|
59
|
+
MenuComponent,
|
|
60
|
+
HighlighterComponent,
|
|
61
|
+
AppConfigPipe,
|
|
62
|
+
LoginComponent,
|
|
63
|
+
LanguageMenuComponent,
|
|
64
|
+
ProfileComponent,
|
|
65
|
+
UserInitialPipe,
|
|
66
|
+
TimeAgoPipe,
|
|
67
|
+
UserFullnamePipe], imports: [CommonModule,
|
|
68
|
+
MatToolbarModule,
|
|
69
|
+
MaterialModule, i1.TranslateModule], exports: [HeaderComponent,
|
|
70
|
+
MenuComponent,
|
|
71
|
+
HighlighterComponent,
|
|
72
|
+
AppConfigPipe,
|
|
73
|
+
LanguageMenuComponent,
|
|
74
|
+
LoginComponent,
|
|
75
|
+
ProfileComponent,
|
|
76
|
+
UserInitialPipe,
|
|
77
|
+
TimeAgoPipe,
|
|
78
|
+
UserFullnamePipe,
|
|
79
|
+
TranslateModule] });
|
|
80
|
+
CommonsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CommonsModule, imports: [CommonModule,
|
|
81
|
+
MatToolbarModule,
|
|
82
|
+
MaterialModule,
|
|
83
|
+
TranslateModule.forRoot({
|
|
84
|
+
loader: {
|
|
85
|
+
provide: TranslateLoader,
|
|
86
|
+
useFactory: translationLoaderFactory,
|
|
87
|
+
deps: [HttpClient, MNL_TRANSLATION_RESOURCE],
|
|
88
|
+
},
|
|
89
|
+
}), TranslateModule] });
|
|
90
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CommonsModule, decorators: [{
|
|
91
|
+
type: NgModule,
|
|
92
|
+
args: [{
|
|
93
|
+
declarations: [
|
|
94
|
+
HeaderComponent,
|
|
95
|
+
MenuComponent,
|
|
96
|
+
HighlighterComponent,
|
|
97
|
+
AppConfigPipe,
|
|
98
|
+
LoginComponent,
|
|
99
|
+
LanguageMenuComponent,
|
|
100
|
+
ProfileComponent,
|
|
101
|
+
UserInitialPipe,
|
|
102
|
+
TimeAgoPipe,
|
|
103
|
+
UserFullnamePipe,
|
|
104
|
+
],
|
|
105
|
+
imports: [
|
|
106
|
+
CommonModule,
|
|
107
|
+
MatToolbarModule,
|
|
108
|
+
MaterialModule,
|
|
109
|
+
TranslateModule.forRoot({
|
|
110
|
+
loader: {
|
|
111
|
+
provide: TranslateLoader,
|
|
112
|
+
useFactory: translationLoaderFactory,
|
|
113
|
+
deps: [HttpClient, MNL_TRANSLATION_RESOURCE],
|
|
114
|
+
},
|
|
115
|
+
}),
|
|
116
|
+
],
|
|
117
|
+
exports: [
|
|
118
|
+
HeaderComponent,
|
|
119
|
+
MenuComponent,
|
|
120
|
+
HighlighterComponent,
|
|
121
|
+
AppConfigPipe,
|
|
122
|
+
LanguageMenuComponent,
|
|
123
|
+
LoginComponent,
|
|
124
|
+
ProfileComponent,
|
|
125
|
+
UserInitialPipe,
|
|
126
|
+
TimeAgoPipe,
|
|
127
|
+
UserFullnamePipe,
|
|
128
|
+
TranslateModule,
|
|
129
|
+
],
|
|
130
|
+
}]
|
|
131
|
+
}] });
|
|
132
|
+
export function loadConfig(config) {
|
|
133
|
+
const conf = () => config.load();
|
|
134
|
+
return conf;
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9ucy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvY29tbW9ucy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDdEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDM0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUNMLHdCQUF3QixFQUN4Qix3QkFBd0IsR0FDekIsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7QUFFckUsa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDN0Isa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDN0Isa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7QUF5QzdCLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsZUFBZTtvQkFDeEIsVUFBVSxFQUFFLFVBQVU7b0JBQ3RCLElBQUksRUFBRTt3QkFDSixnQkFBZ0I7d0JBQ2hCLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQixVQUFVO3dCQUNWLGFBQWE7cUJBQ2Q7b0JBQ0QsS0FBSyxFQUFFLElBQUk7aUJBQ1o7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQVE7UUFDYixPQUFPO1lBQ0wsUUFBUSxFQUFFLGFBQWE7U0FDeEIsQ0FBQztJQUNKLENBQUM7OzBHQXpCVSxhQUFhOzJHQUFiLGFBQWEsaUJBdEN0QixlQUFlO1FBQ2YsYUFBYTtRQUNiLG9CQUFvQjtRQUNwQixhQUFhO1FBQ2IsY0FBYztRQUNkLHFCQUFxQjtRQUNyQixnQkFBZ0I7UUFDaEIsZUFBZTtRQUNmLFdBQVc7UUFDWCxnQkFBZ0IsYUFHaEIsWUFBWTtRQUNaLGdCQUFnQjtRQUNoQixjQUFjLGlDQVdkLGVBQWU7UUFDZixhQUFhO1FBQ2Isb0JBQW9CO1FBQ3BCLGFBQWE7UUFDYixxQkFBcUI7UUFDckIsY0FBYztRQUNkLGdCQUFnQjtRQUNoQixlQUFlO1FBQ2YsV0FBVztRQUNYLGdCQUFnQjtRQUNoQixlQUFlOzJHQUdOLGFBQWEsWUExQnRCLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsY0FBYztRQUNkLGVBQWUsQ0FBQyxPQUFPLENBQUM7WUFDdEIsTUFBTSxFQUFFO2dCQUNOLE9BQU8sRUFBRSxlQUFlO2dCQUN4QixVQUFVLEVBQUUsd0JBQXdCO2dCQUNwQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLEVBQUUsd0JBQXdCLENBQUM7YUFDN0M7U0FDRixDQUFDLEVBY0YsZUFBZTsyRkFHTixhQUFhO2tCQXhDekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osZUFBZTt3QkFDZixhQUFhO3dCQUNiLG9CQUFvQjt3QkFDcEIsYUFBYTt3QkFDYixjQUFjO3dCQUNkLHFCQUFxQjt3QkFDckIsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLFdBQVc7d0JBQ1gsZ0JBQWdCO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsZUFBZSxDQUFDLE9BQU8sQ0FBQzs0QkFDdEIsTUFBTSxFQUFFO2dDQUNOLE9BQU8sRUFBRSxlQUFlO2dDQUN4QixVQUFVLEVBQUUsd0JBQXdCO2dDQUNwQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLEVBQUUsd0JBQXdCLENBQUM7NkJBQzdDO3lCQUNGLENBQUM7cUJBQ0g7b0JBRUQsT0FBTyxFQUFFO3dCQUNQLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixvQkFBb0I7d0JBQ3BCLGFBQWE7d0JBQ2IscUJBQXFCO3dCQUNyQixjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsZUFBZTtxQkFDaEI7aUJBQ0Y7O0FBNkJELE1BQU0sVUFBVSxVQUFVLENBQUMsTUFBd0I7SUFDakQsTUFBTSxJQUFJLEdBQUcsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2pDLE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSwgcmVnaXN0ZXJMb2NhbGVEYXRhIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgbG9jYWxlQVIgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvYXInO1xuaW1wb3J0IGxvY2FsZURFIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2RlJztcbmltcG9ydCBsb2NhbGVGUiBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9mcic7XG5pbXBvcnQgeyBBUFBfSU5JVElBTElaRVIsIE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRUb29sYmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbGJhcic7XG5pbXBvcnQgeyBUcmFuc2xhdGVMb2FkZXIsIFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEhpZ2hsaWdodGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2hpZ2hsaWdodGVyL2hpZ2hsaWdodGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYW5ndWFnZU1lbnVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbGFuZ3VhZ2UtbWVudS9sYW5ndWFnZS1tZW51LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMb2dpbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWVudUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IFByb2ZpbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcHJvZmlsZS9wcm9maWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRlcmlhbE1vZHVsZSB9IGZyb20gJy4vbWF0ZXJpYWwubW9kdWxlJztcbmltcG9ydCB7XG4gIE1OTF9UUkFOU0xBVElPTl9SRVNPVVJDRSxcbiAgdHJhbnNsYXRpb25Mb2FkZXJGYWN0b3J5LFxufSBmcm9tICcuL21vZGVsL3RyYW5zbGF0aW9uLXJlc291cmNlJztcbmltcG9ydCB7IEFwcENvbmZpZ1BpcGUgfSBmcm9tICcuL3BpcGVzL2FwcC1jb25maWctcGlwZSc7XG5pbXBvcnQgeyBUaW1lQWdvUGlwZSB9IGZyb20gJy4vcGlwZXMvdGltZS1hZ28tcGlwZSc7XG5pbXBvcnQgeyBVc2VyRnVsbG5hbWVQaXBlIH0gZnJvbSAnLi9waXBlcy91c2VyLWZ1bGxuYW1lLXBpcGUnO1xuaW1wb3J0IHsgVXNlckluaXRpYWxQaXBlIH0gZnJvbSAnLi9waXBlcy91c2VyLWluaXRpYWxzLXBpcGUnO1xuaW1wb3J0IHsgQXBwQ29uZmlnU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvYXBwLmNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2xvY2FsLXN0b3JhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBMb2NhbGVTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9sb2NhbGUuc2VydmljZSc7XG5pbXBvcnQgeyBMb2dTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9sb2cuc2VydmljZSc7XG5pbXBvcnQgeyBVc2VyUHJvZmlsZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3VzZXItcHJvZmlsZS5zZXJ2aWNlJztcblxucmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZUZSKTtcbnJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVERSk7XG5yZWdpc3RlckxvY2FsZURhdGEobG9jYWxlQVIpO1xuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgSGVhZGVyQ29tcG9uZW50LFxuICAgIE1lbnVDb21wb25lbnQsXG4gICAgSGlnaGxpZ2h0ZXJDb21wb25lbnQsXG4gICAgQXBwQ29uZmlnUGlwZSxcbiAgICBMb2dpbkNvbXBvbmVudCxcbiAgICBMYW5ndWFnZU1lbnVDb21wb25lbnQsXG4gICAgUHJvZmlsZUNvbXBvbmVudCxcbiAgICBVc2VySW5pdGlhbFBpcGUsXG4gICAgVGltZUFnb1BpcGUsXG4gICAgVXNlckZ1bGxuYW1lUGlwZSxcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNYXRUb29sYmFyTW9kdWxlLFxuICAgIE1hdGVyaWFsTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZS5mb3JSb290KHtcbiAgICAgIGxvYWRlcjoge1xuICAgICAgICBwcm92aWRlOiBUcmFuc2xhdGVMb2FkZXIsXG4gICAgICAgIHVzZUZhY3Rvcnk6IHRyYW5zbGF0aW9uTG9hZGVyRmFjdG9yeSxcbiAgICAgICAgZGVwczogW0h0dHBDbGllbnQsIE1OTF9UUkFOU0xBVElPTl9SRVNPVVJDRV0sXG4gICAgICB9LFxuICAgIH0pLFxuICBdLFxuXG4gIGV4cG9ydHM6IFtcbiAgICBIZWFkZXJDb21wb25lbnQsXG4gICAgTWVudUNvbXBvbmVudCxcbiAgICBIaWdobGlnaHRlckNvbXBvbmVudCxcbiAgICBBcHBDb25maWdQaXBlLFxuICAgIExhbmd1YWdlTWVudUNvbXBvbmVudCxcbiAgICBMb2dpbkNvbXBvbmVudCxcbiAgICBQcm9maWxlQ29tcG9uZW50LFxuICAgIFVzZXJJbml0aWFsUGlwZSxcbiAgICBUaW1lQWdvUGlwZSxcbiAgICBVc2VyRnVsbG5hbWVQaXBlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29tbW9uc01vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8Q29tbW9uc01vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogQ29tbW9uc01vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGxvYWRDb25maWcsXG4gICAgICAgICAgZGVwczogW1xuICAgICAgICAgICAgQXBwQ29uZmlnU2VydmljZSxcbiAgICAgICAgICAgIFVzZXJQcm9maWxlU2VydmljZSxcbiAgICAgICAgICAgIExvY2FsU3RvcmFnZVNlcnZpY2UsXG4gICAgICAgICAgICBMb2dTZXJ2aWNlLFxuICAgICAgICAgICAgTG9jYWxlU2VydmljZSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGZvckNoaWxkKCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8Q29tbW9uc01vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogQ29tbW9uc01vZHVsZSxcbiAgICB9O1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsb2FkQ29uZmlnKGNvbmZpZzogQXBwQ29uZmlnU2VydmljZSkge1xuICBjb25zdCBjb25mID0gKCkgPT4gY29uZmlnLmxvYWQoKTtcbiAgcmV0dXJuIGNvbmY7XG59XG4iXX0=
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Component, Input, ViewEncapsulation, Output, EventEmitter, } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/material/toolbar";
|
|
5
|
+
import * as i3 from "@angular/material/button";
|
|
6
|
+
import * as i4 from "@angular/material/icon";
|
|
7
|
+
export class HeaderComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.menuButonClickEvent = new EventEmitter();
|
|
10
|
+
this.logoClick = new EventEmitter();
|
|
11
|
+
}
|
|
12
|
+
menuClick(event) {
|
|
13
|
+
this.menuButonClickEvent.emit(event);
|
|
14
|
+
}
|
|
15
|
+
onLogoClick(event) {
|
|
16
|
+
this.logoClick.emit(event);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
HeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
+
HeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HeaderComponent, selector: "mnl-header", inputs: { header: "header" }, outputs: { menuButonClickEvent: "menuButonClickEvent", logoClick: "logoClick" }, ngImport: i0, template: "<mat-toolbar *ngIf=\"header\" color=\"{{ header.toolbarColor }}\">\n <mat-toolbar-row>\n <div class=\"flex justify-start items-center\">\n <button mat-icon-button *ngIf=\"header.showMenuIcon\">\n <mat-icon (click)=\"menuClick($event)\">menu</mat-icon>\n </button>\n <img\n class=\"mr-[15px]\"\n (click)=\"onLogoClick($event)\"\n src=\"{{ header.logo }}\"\n />\n <span>{{ header.name }}</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", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "directive", type: i2.MatToolbarRow, selector: "mat-toolbar-row", exportAs: ["matToolbarRow"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HeaderComponent, decorators: [{
|
|
22
|
+
type: Component,
|
|
23
|
+
args: [{ selector: 'mnl-header', encapsulation: ViewEncapsulation.None, template: "<mat-toolbar *ngIf=\"header\" color=\"{{ header.toolbarColor }}\">\n <mat-toolbar-row>\n <div class=\"flex justify-start items-center\">\n <button mat-icon-button *ngIf=\"header.showMenuIcon\">\n <mat-icon (click)=\"menuClick($event)\">menu</mat-icon>\n </button>\n <img\n class=\"mr-[15px]\"\n (click)=\"onLogoClick($event)\"\n src=\"{{ header.logo }}\"\n />\n <span>{{ header.name }}</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" }]
|
|
24
|
+
}], propDecorators: { header: [{
|
|
25
|
+
type: Input
|
|
26
|
+
}], menuButonClickEvent: [{
|
|
27
|
+
type: Output
|
|
28
|
+
}], logoClick: [{
|
|
29
|
+
type: Output
|
|
30
|
+
}] } });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbnMvc3JjL2xpYi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsWUFBWSxHQUFHLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFRM0YsTUFBTSxPQUFPLGVBQWU7SUFONUI7UUFZRSx3QkFBbUIsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUdqRSxjQUFTLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7S0FTeEQ7SUFQQyxTQUFTLENBQUMsS0FBSztRQUNiLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFLO1FBQ2YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQzs7NEdBakJVLGVBQWU7Z0dBQWYsZUFBZSxpS0NSNUIseW9CQWtCQTsyRkRWYSxlQUFlO2tCQU4zQixTQUFTOytCQUNFLFlBQVksaUJBR1AsaUJBQWlCLENBQUMsSUFBSTs4QkFLckMsTUFBTTtzQkFETCxLQUFLO2dCQUlOLG1CQUFtQjtzQkFEbEIsTUFBTTtnQkFJUCxTQUFTO3NCQURSLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21ubC1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaGVhZGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgSGVhZGVyQ29tcG9uZW50IHtcblxuICBASW5wdXQoKVxuICBoZWFkZXI6IGFueTtcblxuICBAT3V0cHV0KClcbiAgbWVudUJ1dG9uQ2xpY2tFdmVudDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBAT3V0cHV0KClcbiAgbG9nb0NsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIG1lbnVDbGljayhldmVudCkge1xuICAgIHRoaXMubWVudUJ1dG9uQ2xpY2tFdmVudC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIG9uTG9nb0NsaWNrKGV2ZW50KSB7XG4gICAgdGhpcy5sb2dvQ2xpY2suZW1pdChldmVudCk7XG4gIH1cbn1cbiIsIjxtYXQtdG9vbGJhciAqbmdJZj1cImhlYWRlclwiIGNvbG9yPVwie3sgaGVhZGVyLnRvb2xiYXJDb2xvciB9fVwiPlxuICA8bWF0LXRvb2xiYXItcm93PlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktc3RhcnQgaXRlbXMtY2VudGVyXCI+XG4gICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAqbmdJZj1cImhlYWRlci5zaG93TWVudUljb25cIj5cbiAgICAgICAgPG1hdC1pY29uIChjbGljayk9XCJtZW51Q2xpY2soJGV2ZW50KVwiPm1lbnU8L21hdC1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8aW1nXG4gICAgICAgIGNsYXNzPVwibXItWzE1cHhdXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uTG9nb0NsaWNrKCRldmVudClcIlxuICAgICAgICBzcmM9XCJ7eyBoZWFkZXIubG9nbyB9fVwiXG4gICAgICAvPlxuICAgICAgPHNwYW4+e3sgaGVhZGVyLm5hbWUgfX08L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1lbmQgaXRlbXMtY2VudGVyIGdyb3cgbWF4LXctZnVsbFwiPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYFttbmwtaGVhZGVyLWNvbnRlbnRdYFwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgPC9tYXQtdG9vbGJhci1yb3c+XG48L21hdC10b29sYmFyPlxuIl19
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class HighlighterComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.height = '40px';
|
|
7
|
+
this.width = '4px';
|
|
8
|
+
this.enabled = true;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
HighlighterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HighlighterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
HighlighterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HighlighterComponent, 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: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HighlighterComponent, decorators: [{
|
|
14
|
+
type: Component,
|
|
15
|
+
args: [{ selector: 'mnl-highlighter', template: "<div\n [ngClass]=\"{ 'mnl-bg-primary': enabled }\"\n [ngStyle]=\"{ height: height, width: width }\"\n></div>\n" }]
|
|
16
|
+
}], propDecorators: { height: [{
|
|
17
|
+
type: Input
|
|
18
|
+
}], width: [{
|
|
19
|
+
type: Input
|
|
20
|
+
}], enabled: [{
|
|
21
|
+
type: Input
|
|
22
|
+
}] } });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvaGlnaGxpZ2h0ZXIvaGlnaGxpZ2h0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvaGlnaGxpZ2h0ZXIvaGlnaGxpZ2h0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU9qRCxNQUFNLE9BQU8sb0JBQW9CO0lBTGpDO1FBT0UsV0FBTSxHQUFHLE1BQU0sQ0FBQztRQUdoQixVQUFLLEdBQUcsS0FBSyxDQUFDO1FBR2QsWUFBTyxHQUFHLElBQUksQ0FBQztLQUNoQjs7aUhBVFksb0JBQW9CO3FHQUFwQixvQkFBb0IseUhDUGpDLGtIQUlBOzJGREdhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxpQkFBaUI7OEJBTTNCLE1BQU07c0JBREwsS0FBSztnQkFJTixLQUFLO3NCQURKLEtBQUs7Z0JBSU4sT0FBTztzQkFETixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtbmwtaGlnaGxpZ2h0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vaGlnaGxpZ2h0ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oaWdobGlnaHRlci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBIaWdobGlnaHRlckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIGhlaWdodCA9ICc0MHB4JztcblxuICBASW5wdXQoKVxuICB3aWR0aCA9ICc0cHgnO1xuXG4gIEBJbnB1dCgpXG4gIGVuYWJsZWQgPSB0cnVlO1xufVxuIiwiPGRpdlxuICBbbmdDbGFzc109XCJ7ICdtbmwtYmctcHJpbWFyeSc6IGVuYWJsZWQgfVwiXG4gIFtuZ1N0eWxlXT1cInsgaGVpZ2h0OiBoZWlnaHQsIHdpZHRoOiB3aWR0aCB9XCJcbj48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../../services/locale.service";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
import * as i3 from "@angular/material/icon";
|
|
6
|
+
import * as i4 from "@angular/material/menu";
|
|
7
|
+
import * as i5 from "@ngx-translate/core";
|
|
8
|
+
export class LanguageMenuComponent {
|
|
9
|
+
constructor(localeService) {
|
|
10
|
+
this.localeService = localeService;
|
|
11
|
+
this.showLocaleKeyAsLabel = false;
|
|
12
|
+
this.showLocaleAsLabel = false;
|
|
13
|
+
this.languages = [];
|
|
14
|
+
}
|
|
15
|
+
ngOnInit() {
|
|
16
|
+
this.languages = this.localeService.getLanguages();
|
|
17
|
+
this.localeService.setActiveLocale(this.locale);
|
|
18
|
+
}
|
|
19
|
+
onChangeLanguage(language) {
|
|
20
|
+
this.localeService.setActiveLocale(language);
|
|
21
|
+
}
|
|
22
|
+
get locale() {
|
|
23
|
+
return this.localeService.getActiveLocale() || this.localeService.getDefaultLocale();
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
LanguageMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LanguageMenuComponent, deps: [{ token: i1.LocaleService }], target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
+
LanguageMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: LanguageMenuComponent, selector: "mnl-language-menu", inputs: { showLocaleKeyAsLabel: "showLocaleKeyAsLabel", showLocaleAsLabel: "showLocaleAsLabel" }, ngImport: i0, template: "<button id=\"mnl-locale-button\" mat-menu-item [matMenuTriggerFor]=\"languageMenu\">\n <ng-container *ngIf=\"showLocaleKeyAsLabel || showLocaleAsLabel; else defaultLabel\">\n <div *ngIf=\"showLocaleKeyAsLabel\">{{ locale.key | uppercase }}</div>\n <div *ngIf=\"showLocaleAsLabel\">{{ locale.label }}</div>\n </ng-container>\n <ng-template #defaultLabel>\n <mat-icon>language</mat-icon>\n {{ \"MNL.LANGUAGE-SELECTOR.LANGUAGES\" | translate }}\n </ng-template>\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: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "pipe", type: i2.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LanguageMenuComponent, decorators: [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{ selector: 'mnl-language-menu', template: "<button id=\"mnl-locale-button\" mat-menu-item [matMenuTriggerFor]=\"languageMenu\">\n <ng-container *ngIf=\"showLocaleKeyAsLabel || showLocaleAsLabel; else defaultLabel\">\n <div *ngIf=\"showLocaleKeyAsLabel\">{{ locale.key | uppercase }}</div>\n <div *ngIf=\"showLocaleAsLabel\">{{ locale.label }}</div>\n </ng-container>\n <ng-template #defaultLabel>\n <mat-icon>language</mat-icon>\n {{ \"MNL.LANGUAGE-SELECTOR.LANGUAGES\" | translate }}\n </ng-template>\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" }]
|
|
31
|
+
}], ctorParameters: function () { return [{ type: i1.LocaleService }]; }, propDecorators: { showLocaleKeyAsLabel: [{
|
|
32
|
+
type: Input
|
|
33
|
+
}], showLocaleAsLabel: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}] } });
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2UtbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9sYW5ndWFnZS1tZW51L2xhbmd1YWdlLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvbGFuZ3VhZ2UtbWVudS9sYW5ndWFnZS1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBUXpELE1BQU0sT0FBTyxxQkFBcUI7SUFTaEMsWUFBb0IsYUFBNEI7UUFBNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFOaEQseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBRzdCLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUUxQixjQUFTLEdBQXdCLEVBQUUsQ0FBQztJQUNlLENBQUM7SUFFcEQsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNuRCxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELGdCQUFnQixDQUFDLFFBQXNCO1FBQ3JDLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxFQUFFLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQ3ZGLENBQUM7O2tIQXRCVSxxQkFBcUI7c0dBQXJCLHFCQUFxQiwySkNSbEMsaXRCQW9CQTsyRkRaYSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsbUJBQW1CO29HQU83QixvQkFBb0I7c0JBRG5CLEtBQUs7Z0JBSU4saUJBQWlCO3NCQURoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMb2NhbGVTZXJ2aWNlLCBMYW5ndWFnZUl0ZW0gfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9sb2NhbGUuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21ubC1sYW5ndWFnZS1tZW51JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xhbmd1YWdlLW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sYW5ndWFnZS1tZW51LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIExhbmd1YWdlTWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KClcbiAgc2hvd0xvY2FsZUtleUFzTGFiZWwgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBzaG93TG9jYWxlQXNMYWJlbCA9IGZhbHNlO1xuXG4gIGxhbmd1YWdlczogQXJyYXk8TGFuZ3VhZ2VJdGVtPiA9IFtdO1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGxvY2FsZVNlcnZpY2U6IExvY2FsZVNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5sYW5ndWFnZXMgPSB0aGlzLmxvY2FsZVNlcnZpY2UuZ2V0TGFuZ3VhZ2VzKCk7XG4gICAgdGhpcy5sb2NhbGVTZXJ2aWNlLnNldEFjdGl2ZUxvY2FsZSh0aGlzLmxvY2FsZSk7XG4gIH1cblxuICBvbkNoYW5nZUxhbmd1YWdlKGxhbmd1YWdlOiBMYW5ndWFnZUl0ZW0pIHtcbiAgICB0aGlzLmxvY2FsZVNlcnZpY2Uuc2V0QWN0aXZlTG9jYWxlKGxhbmd1YWdlKTtcbiAgfVxuXG4gIGdldCBsb2NhbGUoKTogTGFuZ3VhZ2VJdGVtIHtcbiAgICByZXR1cm4gdGhpcy5sb2NhbGVTZXJ2aWNlLmdldEFjdGl2ZUxvY2FsZSgpIHx8IHRoaXMubG9jYWxlU2VydmljZS5nZXREZWZhdWx0TG9jYWxlKCk7XG4gIH1cbn1cbiIsIjxidXR0b24gaWQ9XCJtbmwtbG9jYWxlLWJ1dHRvblwiIG1hdC1tZW51LWl0ZW0gW21hdE1lbnVUcmlnZ2VyRm9yXT1cImxhbmd1YWdlTWVudVwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0xvY2FsZUtleUFzTGFiZWwgfHwgc2hvd0xvY2FsZUFzTGFiZWw7IGVsc2UgZGVmYXVsdExhYmVsXCI+XG4gICAgPGRpdiAqbmdJZj1cInNob3dMb2NhbGVLZXlBc0xhYmVsXCI+e3sgbG9jYWxlLmtleSB8IHVwcGVyY2FzZSB9fTwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJzaG93TG9jYWxlQXNMYWJlbFwiPnt7IGxvY2FsZS5sYWJlbCB9fTwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLXRlbXBsYXRlICNkZWZhdWx0TGFiZWw+XG4gICAgPG1hdC1pY29uPmxhbmd1YWdlPC9tYXQtaWNvbj5cbiAgICB7eyBcIk1OTC5MQU5HVUFHRS1TRUxFQ1RPUi5MQU5HVUFHRVNcIiB8IHRyYW5zbGF0ZSB9fVxuICA8L25nLXRlbXBsYXRlPlxuPC9idXR0b24+XG48bWF0LW1lbnUgI2xhbmd1YWdlTWVudT1cIm1hdE1lbnVcIj5cbiAgPGJ1dHRvblxuICAgIG1hdC1tZW51LWl0ZW1cbiAgICAqbmdGb3I9XCJsZXQgbGFuZ3VhZ2Ugb2YgbGFuZ3VhZ2VzXCJcbiAgICAoY2xpY2spPVwib25DaGFuZ2VMYW5ndWFnZShsYW5ndWFnZSlcIlxuICAgIGlkPVwibGFuZ01lbnVcIlxuICA+XG4gICAge3sgbGFuZ3VhZ2UubGFiZWwgfX1cbiAgPC9idXR0b24+XG48L21hdC1tZW51PlxuIl19
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Component, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import { UntypedFormGroup, UntypedFormControl, Validators } from '@angular/forms';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/platform-browser";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
import * as i3 from "@angular/material/button";
|
|
7
|
+
import * as i4 from "@angular/material/card";
|
|
8
|
+
import * as i5 from "@angular/material/form-field";
|
|
9
|
+
import * as i6 from "@angular/material/input";
|
|
10
|
+
import * as i7 from "@angular/forms";
|
|
11
|
+
import * as i8 from "@ngx-translate/core";
|
|
12
|
+
export class LoginComponent {
|
|
13
|
+
constructor(sanitizer) {
|
|
14
|
+
this.sanitizer = sanitizer;
|
|
15
|
+
this.title = '';
|
|
16
|
+
this.logoImageUrl = './assets/images/logo.png';
|
|
17
|
+
this.backgroundImageUrl = './assets/images/background.jpg';
|
|
18
|
+
this.disabled = false;
|
|
19
|
+
this.login = new EventEmitter();
|
|
20
|
+
}
|
|
21
|
+
ngOnInit() {
|
|
22
|
+
this.initForm();
|
|
23
|
+
}
|
|
24
|
+
initForm() {
|
|
25
|
+
this.formGroup = new UntypedFormGroup({
|
|
26
|
+
username: new UntypedFormControl('', [Validators.required]),
|
|
27
|
+
password: new UntypedFormControl('', [Validators.required])
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
onSubmit() {
|
|
31
|
+
if (this.formGroup.valid) {
|
|
32
|
+
this.login.emit(this.formGroup.value);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
getBackgroundImageUrl() {
|
|
36
|
+
return this.sanitizer.bypassSecurityTrustStyle(`url(${this.backgroundImageUrl})`);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
LoginComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoginComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
40
|
+
LoginComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: LoginComponent, 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 <img *ngIf=\"logoImageUrl\" src=\"{{logoImageUrl}}\">\n </mat-card-title>\n </mat-card-header>\n <h3 class=\"flex justify-center items-center opacity-60\" *ngIf=\"title\">{{title | translate}}</h3>\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: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "component", type: i4.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i4.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "directive", type: i4.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { 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: "directive", type: i7.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i7.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: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i7.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: LoginComponent, decorators: [{
|
|
42
|
+
type: Component,
|
|
43
|
+
args: [{ selector: 'mnl-login', 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 <img *ngIf=\"logoImageUrl\" src=\"{{logoImageUrl}}\">\n </mat-card-title>\n </mat-card-header>\n <h3 class=\"flex justify-center items-center opacity-60\" *ngIf=\"title\">{{title | translate}}</h3>\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>" }]
|
|
44
|
+
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; }, propDecorators: { title: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], logoImageUrl: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], backgroundImageUrl: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], disabled: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}], login: [{
|
|
53
|
+
type: Output
|
|
54
|
+
}] } });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7QUFRbEYsTUFBTSxPQUFPLGNBQWM7SUFtQnpCLFlBQW9CLFNBQXVCO1FBQXZCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFkM0MsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUdYLGlCQUFZLEdBQUcsMEJBQTBCLENBQUM7UUFHMUMsdUJBQWtCLEdBQUcsZ0NBQWdDLENBQUM7UUFHdEQsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUdqQixVQUFLLEdBQUksSUFBSSxZQUFZLEVBQWEsQ0FBQztJQUl2QyxDQUFDO0lBQ0QsUUFBUTtRQUNOLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRU8sUUFBUTtRQUNkLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQztZQUNwQyxRQUFRLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDM0QsUUFBUSxFQUFFLElBQUksa0JBQWtCLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQzVELENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRTtZQUN4QixJQUFJLENBQUMsS0FBSyxDQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3hDO0lBQ0gsQ0FBQztJQUNELHFCQUFxQjtRQUNuQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsd0JBQXdCLENBQUMsT0FBTyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7OzJHQXZDWSxjQUFjOytGQUFkLGNBQWMsd01DVDNCLHk5Q0F5Qk07MkZEaEJPLGNBQWM7a0JBTDFCLFNBQVM7K0JBQ0UsV0FBVzttR0FTckIsS0FBSztzQkFESixLQUFLO2dCQUlOLFlBQVk7c0JBRFgsS0FBSztnQkFJTixrQkFBa0I7c0JBRGpCLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxLQUFLO2dCQUlOLEtBQUs7c0JBREosTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtR3JvdXAsIFVudHlwZWRGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFVzZXJNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVsL3VzZXItbW9kZWwnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlU3R5bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21ubC1sb2dpbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9sb2dpbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xvZ2luLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTG9naW5Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGZvcm1Hcm91cDogVW50eXBlZEZvcm1Hcm91cDtcblxuICBASW5wdXQoKVxuICB0aXRsZSA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIGxvZ29JbWFnZVVybCA9ICcuL2Fzc2V0cy9pbWFnZXMvbG9nby5wbmcnO1xuXG4gIEBJbnB1dCgpXG4gIGJhY2tncm91bmRJbWFnZVVybCA9ICcuL2Fzc2V0cy9pbWFnZXMvYmFja2dyb3VuZC5qcGcnO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpXG4gIGxvZ2luICA9IG5ldyBFdmVudEVtaXR0ZXI8VXNlck1vZGVsPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHtcblxuICB9XG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5pdEZvcm0oKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdEZvcm0oKSB7XG4gICAgdGhpcy5mb3JtR3JvdXAgPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgICB1c2VybmFtZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbCgnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSxcbiAgICAgIHBhc3N3b3JkOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXG4gICAgfSk7XG4gIH1cbiAgb25TdWJtaXQoKSB7XG4gICAgaWYgKHRoaXMuZm9ybUdyb3VwLnZhbGlkKSB7XG4gICAgICB0aGlzLmxvZ2luIC5lbWl0KHRoaXMuZm9ybUdyb3VwLnZhbHVlKTtcbiAgICB9XG4gIH1cbiAgZ2V0QmFja2dyb3VuZEltYWdlVXJsKCk6IFNhZmVTdHlsZSB7XG4gICAgcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RTdHlsZShgdXJsKCR7dGhpcy5iYWNrZ3JvdW5kSW1hZ2VVcmx9KWApO1xufVxuXG59XG4iLCI8ZGl2ICBjbGFzcz1cImZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyICBtaW4taC1mdWxsIGJnLWNvdmVyXCIgIFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cImdldEJhY2tncm91bmRJbWFnZVVybCgpXCI+XG4gICAgPG1hdC1jYXJkIGNsYXNzPVwibWluLXctWzI2MHB4XVwiPlxuICAgICAgICA8Zm9ybSBjbGFzcz1cImZsZXggaXRlbXMtc3RyZXRjaCBmbGV4LWNvbFwiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCIgKG5nU3VibWl0KT1cIm9uU3VibWl0KClcIj5cbiAgICAgICAgICAgIDxtYXQtY2FyZC1oZWFkZXIgY2xhc3M9XCJmbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxtYXQtY2FyZC10aXRsZT5cbiAgICAgICAgICAgICAgICAgICAgPGltZyAqbmdJZj1cImxvZ29JbWFnZVVybFwiIHNyYz1cInt7bG9nb0ltYWdlVXJsfX1cIj5cbiAgICAgICAgICAgICAgICA8L21hdC1jYXJkLXRpdGxlPlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1oZWFkZXI+XG4gICAgICAgICAgICA8aDMgY2xhc3M9XCJmbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlciBvcGFjaXR5LTYwXCIgKm5nSWY9XCJ0aXRsZVwiPnt7dGl0bGUgfCB0cmFuc2xhdGV9fTwvaDM+XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJncm93IG1heC13LTEwMFwiPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cInVzZXJuYW1lXCIgbWF0SW5wdXQgcGxhY2Vob2xkZXI9XCJ7eydNTkwuTE9HSU4uVVNFUk5BTUUnIHwgdHJhbnNsYXRlfX1cIlxuICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ1c2VybmFtZVwiPlxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZ3JvdyBtYXgtdy0xMDBcIj5cbiAgICAgICAgICAgICAgICA8aW5wdXQgaWQ9XCJwYXNzd29yZFwiIG1hdElucHV0IHR5cGU9XCJwYXNzd29yZFwiIHBsYWNlaG9sZGVyPVwie3snTU5MLkxPR0lOLlBBU1NXT1JEJyB8IHRyYW5zbGF0ZX19XCJcbiAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwicGFzc3dvcmRcIj5cbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgICA8bWF0LWNhcmQtYWN0aW9ucyBjbGFzcz1cImZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBpZD1cImxvZ2luQnV0dG9uXCIgbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJhY2NlbnRcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgIWZvcm1Hcm91cC52YWxpZFwiXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIj4ge3snTU5MLkxPR0lOLkxPR0lOX0JVVFRPTicgfCB0cmFuc2xhdGV9fTwvYnV0dG9uPlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1hY3Rpb25zPlxuXG4gICAgICAgIDwvZm9ybT5cbiAgICA8L21hdC1jYXJkPlxuPC9kaXY+Il19
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { Component, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/material/icon";
|
|
5
|
+
import * as i3 from "@angular/material/list";
|
|
6
|
+
import * as i4 from "../highlighter/highlighter.component";
|
|
7
|
+
import * as i5 from "@ngx-translate/core";
|
|
8
|
+
export class MenuComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.menuClick = new EventEmitter();
|
|
11
|
+
}
|
|
12
|
+
onMenuClick(menu) {
|
|
13
|
+
if (this.hasSubMenu(menu)) {
|
|
14
|
+
this.openMenu(menu);
|
|
15
|
+
this.onSubMenuClick(menu.subMenus[0], menu);
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
this.deSelectMenus(this.menuData);
|
|
19
|
+
this.selectMenu(menu);
|
|
20
|
+
this.menuClick.emit(menu);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
onSubMenuClick(subMenu, menu) {
|
|
24
|
+
this.deSelectMenus(this.menuData);
|
|
25
|
+
this.selectMenu(menu);
|
|
26
|
+
this.selectMenu(subMenu);
|
|
27
|
+
this.menuClick.emit(subMenu);
|
|
28
|
+
}
|
|
29
|
+
deSelectMenus(menus) {
|
|
30
|
+
if (menus) {
|
|
31
|
+
for (const menu of menus) {
|
|
32
|
+
if (menu.selected) {
|
|
33
|
+
menu.selected = false;
|
|
34
|
+
}
|
|
35
|
+
this.deSelectMenus(menu.subMenus);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
selectMenu(menu) {
|
|
40
|
+
if (menu) {
|
|
41
|
+
menu.selected = true;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
hasSubMenu(menu) {
|
|
45
|
+
return menu.subMenus && menu.subMenus.length > 0;
|
|
46
|
+
}
|
|
47
|
+
toggleMenu(menu, event) {
|
|
48
|
+
menu.expanded = !menu.expanded;
|
|
49
|
+
if (event) {
|
|
50
|
+
event.stopPropagation();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
openMenu(menu) {
|
|
54
|
+
menu.expanded = true;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
MenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
58
|
+
MenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: MenuComponent, selector: "mnl-menu", inputs: { menuData: "menuData" }, outputs: { menuClick: "menuClick" }, ngImport: i0, template: "<mat-nav-list *ngFor=\"let menu of menuData\">\n <a mat-list-item class=\"flex flex-row\" (click)=\"onMenuClick(menu)\" id=\"mnl-menu-anchor\">\n <mnl-highlighter [enabled]=\"menu.selected\"></mnl-highlighter>\n <mat-icon *ngIf=\"menu.icon; else svgTemplate \">{{menu.icon}}</mat-icon>\n <ng-template #svgTemplate>\n <mat-icon svgIcon=\"{{menu.svgIcon}}\"> </mat-icon>\n </ng-template>\n <span class=\"mnl-menu\" id=\"mnl-menu\">{{menu.name | translate }}</span>\n <mat-icon class=\"mnl-menu-button\" *ngIf=\"menu.subMenus\" (click)=\"toggleMenu(menu, $event)\"\n [ngClass]=\"{'mnl-rotated' : menu.expanded}\">expand_more</mat-icon>\n </a>\n <ng-container *ngFor=\"let sub of menu.subMenus\">\n <a mat-list-item class=\"mnl-submenu flex flex-row\" [class.mnl-expanded]=\"menu.expanded\" *ngIf=\"menu.expanded\"\n (click)=\"onSubMenuClick(sub, menu)\" id=\"mnl-submenu-anchor\">\n <mnl-highlighter [enabled]=\"sub.selected\"></mnl-highlighter>\n <mat-icon>{{sub.icon}}</mat-icon>\n <span class=\"mnl-menu\" id=\"mnl-submenu\">{{sub.name | translate }}</span>\n </a>\n </ng-container>\n</mat-nav-list>", styles: [".mnl-submenu{overflow-y:hidden;transition:transform .3s ease;transform:scaleY(0);transform-origin:top;padding-left:15px!important}.mnl-submenu.mnl-expanded{transform:scaleY(1)}.mnl-menu{margin-top:5px;margin-left:10px;margin-right:10px}.mnl-menu-button{transition:.3s ease-in-out;transform:rotate(0);margin-top:3px;margin-left:25px}.mnl-menu-button.mnl-rotated{transform:rotate(180deg)}\n"], dependencies: [{ 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.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { kind: "component", type: i3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { kind: "component", type: i4.HighlighterComponent, selector: "mnl-highlighter", inputs: ["height", "width", "enabled"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MenuComponent, decorators: [{
|
|
60
|
+
type: Component,
|
|
61
|
+
args: [{ selector: 'mnl-menu', template: "<mat-nav-list *ngFor=\"let menu of menuData\">\n <a mat-list-item class=\"flex flex-row\" (click)=\"onMenuClick(menu)\" id=\"mnl-menu-anchor\">\n <mnl-highlighter [enabled]=\"menu.selected\"></mnl-highlighter>\n <mat-icon *ngIf=\"menu.icon; else svgTemplate \">{{menu.icon}}</mat-icon>\n <ng-template #svgTemplate>\n <mat-icon svgIcon=\"{{menu.svgIcon}}\"> </mat-icon>\n </ng-template>\n <span class=\"mnl-menu\" id=\"mnl-menu\">{{menu.name | translate }}</span>\n <mat-icon class=\"mnl-menu-button\" *ngIf=\"menu.subMenus\" (click)=\"toggleMenu(menu, $event)\"\n [ngClass]=\"{'mnl-rotated' : menu.expanded}\">expand_more</mat-icon>\n </a>\n <ng-container *ngFor=\"let sub of menu.subMenus\">\n <a mat-list-item class=\"mnl-submenu flex flex-row\" [class.mnl-expanded]=\"menu.expanded\" *ngIf=\"menu.expanded\"\n (click)=\"onSubMenuClick(sub, menu)\" id=\"mnl-submenu-anchor\">\n <mnl-highlighter [enabled]=\"sub.selected\"></mnl-highlighter>\n <mat-icon>{{sub.icon}}</mat-icon>\n <span class=\"mnl-menu\" id=\"mnl-submenu\">{{sub.name | translate }}</span>\n </a>\n </ng-container>\n</mat-nav-list>", styles: [".mnl-submenu{overflow-y:hidden;transition:transform .3s ease;transform:scaleY(0);transform-origin:top;padding-left:15px!important}.mnl-submenu.mnl-expanded{transform:scaleY(1)}.mnl-menu{margin-top:5px;margin-left:10px;margin-right:10px}.mnl-menu-button{transition:.3s ease-in-out;transform:rotate(0);margin-top:3px;margin-left:25px}.mnl-menu-button.mnl-rotated{transform:rotate(180deg)}\n"] }]
|
|
62
|
+
}], propDecorators: { menuData: [{
|
|
63
|
+
type: Input
|
|
64
|
+
}], menuClick: [{
|
|
65
|
+
type: Output
|
|
66
|
+
}] } });
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvbWVudS9tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFRdkUsTUFBTSxPQUFPLGFBQWE7SUFMMUI7UUFVRSxjQUFTLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7S0FvRHhEO0lBbERDLFdBQVcsQ0FBQyxJQUFlO1FBQ3pCLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3BCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztTQUM3QzthQUFNO1lBQ0wsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMzQjtJQUNILENBQUM7SUFFRCxjQUFjLENBQUMsT0FBa0IsRUFBRSxJQUFlO1FBQ2hELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQWtCO1FBQzlCLElBQUksS0FBSyxFQUFFO1lBQ1QsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUU7Z0JBQ3hCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtvQkFDakIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7aUJBQ3ZCO2dCQUNELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ25DO1NBQ0Y7SUFDSCxDQUFDO0lBRU8sVUFBVSxDQUFDLElBQWU7UUFDaEMsSUFBSSxJQUFJLEVBQUU7WUFDUixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztTQUN0QjtJQUNILENBQUM7SUFFTyxVQUFVLENBQUMsSUFBZTtRQUNoQyxPQUFPLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxVQUFVLENBQUMsSUFBZSxFQUFFLEtBQVk7UUFDdEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFFL0IsSUFBSSxLQUFLLEVBQUU7WUFDVCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDekI7SUFDSCxDQUFDO0lBRU8sUUFBUSxDQUFDLElBQWU7UUFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDdkIsQ0FBQzs7MEdBeERVLGFBQWE7OEZBQWIsYUFBYSx1SENSMUIscXRDQW1CZTsyRkRYRixhQUFhO2tCQUx6QixTQUFTOytCQUNFLFVBQVU7OEJBTXBCLFFBQVE7c0JBRFAsS0FBSztnQkFJTixTQUFTO3NCQURSLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWVudU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWwvbWVudS1kYXRhLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbW5sLW1lbnUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWVudS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21lbnUuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTWVudUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIG1lbnVEYXRhOiBBcnJheTxNZW51TW9kZWw+O1xuXG4gIEBPdXRwdXQoKVxuICBtZW51Q2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgb25NZW51Q2xpY2sobWVudTogTWVudU1vZGVsKSB7XG4gICAgaWYgKHRoaXMuaGFzU3ViTWVudShtZW51KSkge1xuICAgICAgdGhpcy5vcGVuTWVudShtZW51KTtcbiAgICAgIHRoaXMub25TdWJNZW51Q2xpY2sobWVudS5zdWJNZW51c1swXSwgbWVudSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGVTZWxlY3RNZW51cyh0aGlzLm1lbnVEYXRhKTtcbiAgICAgIHRoaXMuc2VsZWN0TWVudShtZW51KTtcbiAgICAgIHRoaXMubWVudUNsaWNrLmVtaXQobWVudSk7XG4gICAgfVxuICB9XG5cbiAgb25TdWJNZW51Q2xpY2soc3ViTWVudTogTWVudU1vZGVsLCBtZW51OiBNZW51TW9kZWwpIHtcbiAgICB0aGlzLmRlU2VsZWN0TWVudXModGhpcy5tZW51RGF0YSk7XG4gICAgdGhpcy5zZWxlY3RNZW51KG1lbnUpO1xuICAgIHRoaXMuc2VsZWN0TWVudShzdWJNZW51KTtcbiAgICB0aGlzLm1lbnVDbGljay5lbWl0KHN1Yk1lbnUpO1xuICB9XG5cbiAgZGVTZWxlY3RNZW51cyhtZW51czogTWVudU1vZGVsW10pIHtcbiAgICBpZiAobWVudXMpIHtcbiAgICAgIGZvciAoY29uc3QgbWVudSBvZiBtZW51cykge1xuICAgICAgICBpZiAobWVudS5zZWxlY3RlZCkge1xuICAgICAgICAgIG1lbnUuc2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmRlU2VsZWN0TWVudXMobWVudS5zdWJNZW51cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZWxlY3RNZW51KG1lbnU6IE1lbnVNb2RlbCkge1xuICAgIGlmIChtZW51KSB7XG4gICAgICBtZW51LnNlbGVjdGVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGhhc1N1Yk1lbnUobWVudTogTWVudU1vZGVsKSB7XG4gICAgcmV0dXJuIG1lbnUuc3ViTWVudXMgJiYgbWVudS5zdWJNZW51cy5sZW5ndGggPiAwO1xuICB9XG5cbiAgdG9nZ2xlTWVudShtZW51OiBNZW51TW9kZWwsIGV2ZW50OiBFdmVudCkge1xuICAgIG1lbnUuZXhwYW5kZWQgPSAhbWVudS5leHBhbmRlZDtcblxuICAgIGlmIChldmVudCkge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvcGVuTWVudShtZW51OiBNZW51TW9kZWwpIHtcbiAgICBtZW51LmV4cGFuZGVkID0gdHJ1ZTtcbiAgfVxufVxuIiwiPG1hdC1uYXYtbGlzdCAqbmdGb3I9XCJsZXQgbWVudSBvZiBtZW51RGF0YVwiPlxuICAgIDxhIG1hdC1saXN0LWl0ZW0gY2xhc3M9XCJmbGV4IGZsZXgtcm93XCIgKGNsaWNrKT1cIm9uTWVudUNsaWNrKG1lbnUpXCIgaWQ9XCJtbmwtbWVudS1hbmNob3JcIj5cbiAgICAgICAgPG1ubC1oaWdobGlnaHRlciBbZW5hYmxlZF09XCJtZW51LnNlbGVjdGVkXCI+PC9tbmwtaGlnaGxpZ2h0ZXI+XG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cIm1lbnUuaWNvbjsgZWxzZSBzdmdUZW1wbGF0ZSBcIj57e21lbnUuaWNvbn19PC9tYXQtaWNvbj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNzdmdUZW1wbGF0ZT5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwie3ttZW51LnN2Z0ljb259fVwiPiA8L21hdC1pY29uPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm1ubC1tZW51XCIgaWQ9XCJtbmwtbWVudVwiPnt7bWVudS5uYW1lIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJtbmwtbWVudS1idXR0b25cIiAqbmdJZj1cIm1lbnUuc3ViTWVudXNcIiAoY2xpY2spPVwidG9nZ2xlTWVudShtZW51LCAkZXZlbnQpXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnbW5sLXJvdGF0ZWQnIDogbWVudS5leHBhbmRlZH1cIj5leHBhbmRfbW9yZTwvbWF0LWljb24+XG4gICAgPC9hPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHN1YiBvZiBtZW51LnN1Yk1lbnVzXCI+XG4gICAgICAgIDxhIG1hdC1saXN0LWl0ZW0gIGNsYXNzPVwibW5sLXN1Ym1lbnUgZmxleCBmbGV4LXJvd1wiIFtjbGFzcy5tbmwtZXhwYW5kZWRdPVwibWVudS5leHBhbmRlZFwiICpuZ0lmPVwibWVudS5leHBhbmRlZFwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25TdWJNZW51Q2xpY2soc3ViLCBtZW51KVwiICBpZD1cIm1ubC1zdWJtZW51LWFuY2hvclwiPlxuICAgICAgICAgICAgPG1ubC1oaWdobGlnaHRlciBbZW5hYmxlZF09XCJzdWIuc2VsZWN0ZWRcIj48L21ubC1oaWdobGlnaHRlcj5cbiAgICAgICAgICAgIDxtYXQtaWNvbj57e3N1Yi5pY29ufX08L21hdC1pY29uPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtbmwtbWVudVwiIGlkPVwibW5sLXN1Ym1lbnVcIj57e3N1Yi5uYW1lIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgPC9uZy1jb250YWluZXI+XG48L21hdC1uYXYtbGlzdD4iXX0=
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/material/button";
|
|
5
|
+
import * as i3 from "@angular/material/icon";
|
|
6
|
+
import * as i4 from "../../pipes/user-initials-pipe";
|
|
7
|
+
import * as i5 from "../../pipes/user-fullname-pipe";
|
|
8
|
+
export class ProfileComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.showDisplayName = true;
|
|
11
|
+
this.userInitialClick = new EventEmitter();
|
|
12
|
+
this.profileMenuClick = new EventEmitter();
|
|
13
|
+
}
|
|
14
|
+
onUserInitialClick(event) {
|
|
15
|
+
this.userInitialClick.emit(event);
|
|
16
|
+
}
|
|
17
|
+
ngOnChanges(changes) {
|
|
18
|
+
if (changes && changes.userProfileDetails && changes.userProfileDetails.currentValue
|
|
19
|
+
&& changes.userProfileDetails.currentValue.firstName && changes.userProfileDetails.currentValue.lastName
|
|
20
|
+
&& changes.userProfileDetails.currentValue.email) {
|
|
21
|
+
this.hasUserDetails = true;
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
this.hasUserDetails = false;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
ProfileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ProfileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
+
ProfileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ProfileComponent, 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]\">\n <span\n *ngIf=\"showDisplayName && hasUserDetails\"\n id=\"mnl-userinfo-name\"\n class=\" hidden md:inline\"\n >{{ userProfileDetails | mnlUserFullName }}</span\n >\n <button\n *ngIf=\"hasUserDetails\"\n id=\"mnl-initials-button\"\n mat-raised-button\n (click)=\"onUserInitialClick($event)\"\n mat-icon-button\n >\n {{ userProfileDetails | mnlUserInitialPipe }}\n </button>\n\n <button\n *ngIf=\"!hasUserDetails\"\n id=\"mnl-user-icon-button\"\n mat-raised-button\n (click)=\"onUserInitialClick($event)\"\n mat-icon-button\n >\n <mat-icon>person</mat-icon>\n </button>\n</div>\n", styles: ["#mnl-initials-button{border-radius:20px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i4.UserInitialPipe, name: "mnlUserInitialPipe" }, { kind: "pipe", type: i5.UserFullnamePipe, name: "mnlUserFullName" }] });
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ProfileComponent, decorators: [{
|
|
31
|
+
type: Component,
|
|
32
|
+
args: [{ selector: 'mnl-user-profile', template: "<div id=\"mnl-profile-container\" class=\"flex gap-[10px]\">\n <span\n *ngIf=\"showDisplayName && hasUserDetails\"\n id=\"mnl-userinfo-name\"\n class=\" hidden md:inline\"\n >{{ userProfileDetails | mnlUserFullName }}</span\n >\n <button\n *ngIf=\"hasUserDetails\"\n id=\"mnl-initials-button\"\n mat-raised-button\n (click)=\"onUserInitialClick($event)\"\n mat-icon-button\n >\n {{ userProfileDetails | mnlUserInitialPipe }}\n </button>\n\n <button\n *ngIf=\"!hasUserDetails\"\n id=\"mnl-user-icon-button\"\n mat-raised-button\n (click)=\"onUserInitialClick($event)\"\n mat-icon-button\n >\n <mat-icon>person</mat-icon>\n </button>\n</div>\n", styles: ["#mnl-initials-button{border-radius:20px}\n"] }]
|
|
33
|
+
}], propDecorators: { userProfileDetails: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}], showDisplayName: [{
|
|
36
|
+
type: Input
|
|
37
|
+
}], userInitialClick: [{
|
|
38
|
+
type: Output
|
|
39
|
+
}], profileMenuClick: [{
|
|
40
|
+
type: Output
|
|
41
|
+
}] } });
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvcHJvZmlsZS9wcm9maWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBUWpHLE1BQU0sT0FBTyxnQkFBZ0I7SUFMN0I7UUFVRSxvQkFBZSxHQUFHLElBQUksQ0FBQztRQUd2QixxQkFBZ0IsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUc5RCxxQkFBZ0IsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztLQWlCL0Q7SUFiQyxrQkFBa0IsQ0FBQyxLQUFVO1FBQzNCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsa0JBQWtCLElBQUksT0FBTyxDQUFDLGtCQUFrQixDQUFDLFlBQVk7ZUFDL0UsT0FBTyxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxTQUFTLElBQUksT0FBTyxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxRQUFRO2VBQ3JHLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFO1lBQ2hELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1NBQzlCO2FBQU07WUFDTCxJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztTQUM3QjtJQUNILENBQUM7OzZHQTNCVSxnQkFBZ0I7aUdBQWhCLGdCQUFnQixnUUNSN0IsMnJCQTJCQTsyRkRuQmEsZ0JBQWdCO2tCQUw1QixTQUFTOytCQUNFLGtCQUFrQjs4QkFNNUIsa0JBQWtCO3NCQURqQixLQUFLO2dCQUlOLGVBQWU7c0JBRGQsS0FBSztnQkFJTixnQkFBZ0I7c0JBRGYsTUFBTTtnQkFJUCxnQkFBZ0I7c0JBRGYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVzZXJNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVsL3VzZXItbW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtbmwtdXNlci1wcm9maWxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2ZpbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wcm9maWxlLmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUHJvZmlsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpXG4gIHVzZXJQcm9maWxlRGV0YWlsczogVXNlck1vZGVsO1xuXG4gIEBJbnB1dCgpXG4gIHNob3dEaXNwbGF5TmFtZSA9IHRydWU7XG5cbiAgQE91dHB1dCgpXG4gIHVzZXJJbml0aWFsQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHByb2ZpbGVNZW51Q2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgaGFzVXNlckRldGFpbHM6IGJvb2xlYW47XG5cbiAgb25Vc2VySW5pdGlhbENsaWNrKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnVzZXJJbml0aWFsQ2xpY2suZW1pdChldmVudCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXMgJiYgY2hhbmdlcy51c2VyUHJvZmlsZURldGFpbHMgJiYgY2hhbmdlcy51c2VyUHJvZmlsZURldGFpbHMuY3VycmVudFZhbHVlXG4gICAgICAmJiBjaGFuZ2VzLnVzZXJQcm9maWxlRGV0YWlscy5jdXJyZW50VmFsdWUuZmlyc3ROYW1lICYmIGNoYW5nZXMudXNlclByb2ZpbGVEZXRhaWxzLmN1cnJlbnRWYWx1ZS5sYXN0TmFtZVxuICAgICAgJiYgY2hhbmdlcy51c2VyUHJvZmlsZURldGFpbHMuY3VycmVudFZhbHVlLmVtYWlsKSB7XG4gICAgICAgIHRoaXMuaGFzVXNlckRldGFpbHMgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmhhc1VzZXJEZXRhaWxzID0gZmFsc2U7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGlkPVwibW5sLXByb2ZpbGUtY29udGFpbmVyXCIgY2xhc3M9XCJmbGV4IGdhcC1bMTBweF1cIj5cbiAgPHNwYW5cbiAgICAqbmdJZj1cInNob3dEaXNwbGF5TmFtZSAmJiBoYXNVc2VyRGV0YWlsc1wiXG4gICAgaWQ9XCJtbmwtdXNlcmluZm8tbmFtZVwiXG4gICAgY2xhc3M9XCIgaGlkZGVuIG1kOmlubGluZVwiXG4gICAgPnt7IHVzZXJQcm9maWxlRGV0YWlscyB8IG1ubFVzZXJGdWxsTmFtZSB9fTwvc3BhblxuICA+XG4gIDxidXR0b25cbiAgICAqbmdJZj1cImhhc1VzZXJEZXRhaWxzXCJcbiAgICBpZD1cIm1ubC1pbml0aWFscy1idXR0b25cIlxuICAgIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgKGNsaWNrKT1cIm9uVXNlckluaXRpYWxDbGljaygkZXZlbnQpXCJcbiAgICBtYXQtaWNvbi1idXR0b25cbiAgPlxuICAgIHt7IHVzZXJQcm9maWxlRGV0YWlscyB8IG1ubFVzZXJJbml0aWFsUGlwZSB9fVxuICA8L2J1dHRvbj5cblxuICA8YnV0dG9uXG4gICAgKm5nSWY9XCIhaGFzVXNlckRldGFpbHNcIlxuICAgIGlkPVwibW5sLXVzZXItaWNvbi1idXR0b25cIlxuICAgIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgKGNsaWNrKT1cIm9uVXNlckluaXRpYWxDbGljaygkZXZlbnQpXCJcbiAgICBtYXQtaWNvbi1idXR0b25cbiAgPlxuICAgIDxtYXQtaWNvbj5wZXJzb248L21hdC1pY29uPlxuICA8L2J1dHRvbj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,60 @@
|
|
|
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
|
+
}
|
|
26
|
+
MaterialModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
27
|
+
MaterialModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: MaterialModule, imports: [MatButtonModule,
|
|
28
|
+
MatCardModule,
|
|
29
|
+
MatFormFieldModule,
|
|
30
|
+
MatIconModule,
|
|
31
|
+
MatInputModule,
|
|
32
|
+
MatListModule,
|
|
33
|
+
FormsModule,
|
|
34
|
+
ReactiveFormsModule,
|
|
35
|
+
MatMenuModule], exports: [MatButtonModule,
|
|
36
|
+
MatCardModule,
|
|
37
|
+
MatFormFieldModule,
|
|
38
|
+
MatIconModule,
|
|
39
|
+
MatInputModule,
|
|
40
|
+
MatListModule,
|
|
41
|
+
FormsModule,
|
|
42
|
+
ReactiveFormsModule,
|
|
43
|
+
MatMenuModule] });
|
|
44
|
+
MaterialModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MaterialModule, imports: [modules(), MatButtonModule,
|
|
45
|
+
MatCardModule,
|
|
46
|
+
MatFormFieldModule,
|
|
47
|
+
MatIconModule,
|
|
48
|
+
MatInputModule,
|
|
49
|
+
MatListModule,
|
|
50
|
+
FormsModule,
|
|
51
|
+
ReactiveFormsModule,
|
|
52
|
+
MatMenuModule] });
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: MaterialModule, decorators: [{
|
|
54
|
+
type: NgModule,
|
|
55
|
+
args: [{
|
|
56
|
+
imports: modules(),
|
|
57
|
+
exports: modules()
|
|
58
|
+
}]
|
|
59
|
+
}] });
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL21hdGVyaWFsLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFDdkQsTUFBTSxVQUFVLE9BQU87SUFDckIsT0FBTztRQUNMLGVBQWU7UUFDZixhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLGFBQWE7UUFDYixjQUFjO1FBQ2QsYUFBYTtRQUNiLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsYUFBYTtLQUNkLENBQUM7QUFDSixDQUFDO0FBS0QsTUFBTSxPQUFPLGNBQWM7OzJHQUFkLGNBQWM7NEdBQWQsY0FBYyxZQWZ2QixlQUFlO1FBQ2YsYUFBYTtRQUNiLGtCQUFrQjtRQUNsQixhQUFhO1FBQ2IsY0FBYztRQUNkLGFBQWE7UUFDYixXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLGFBQWEsYUFSYixlQUFlO1FBQ2YsYUFBYTtRQUNiLGtCQUFrQjtRQUNsQixhQUFhO1FBQ2IsY0FBYztRQUNkLGFBQWE7UUFDYixXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLGFBQWE7NEdBT0osY0FBYyxZQUhoQixPQUFPLEVBQUUsRUFaaEIsZUFBZTtRQUNmLGFBQWE7UUFDYixrQkFBa0I7UUFDbEIsYUFBYTtRQUNiLGNBQWM7UUFDZCxhQUFhO1FBQ2IsV0FBVztRQUNYLG1CQUFtQjtRQUNuQixhQUFhOzJGQU9KLGNBQWM7a0JBSjFCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLE9BQU8sRUFBRTtvQkFDbEIsT0FBTyxFQUFFLE9BQU8sRUFBRTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRDYXJkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2FyZCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmV4cG9ydCBmdW5jdGlvbiBtb2R1bGVzKCkge1xuICByZXR1cm4gW1xuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXRDYXJkTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdExpc3RNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBNYXRNZW51TW9kdWxlLFxuICBdO1xufVxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogbW9kdWxlcygpLFxuICBleHBvcnRzOiBtb2R1bGVzKClcbn0pXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxNb2R1bGUge31cbiJdfQ==
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export class LogLevelsEnum extends Number {
|
|
2
|
+
}
|
|
3
|
+
LogLevelsEnum.TRACE = 5;
|
|
4
|
+
LogLevelsEnum.DEBUG = 1;
|
|
5
|
+
LogLevelsEnum.INFO = 2;
|
|
6
|
+
LogLevelsEnum.WARN = 3;
|
|
7
|
+
LogLevelsEnum.ERROR = 4;
|
|
8
|
+
LogLevelsEnum.SILENT = 0;
|
|
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLWxldmVscy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbnMvc3JjL2xpYi9tb2RlbC9sb2ctbGV2ZWxzLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxhQUFjLFNBQVEsTUFBTTs7QUFDOUIsbUJBQUssR0FBRyxDQUFDLENBQUM7QUFDVixtQkFBSyxHQUFHLENBQUMsQ0FBQztBQUNWLGtCQUFJLEdBQUcsQ0FBQyxDQUFDO0FBQ1Qsa0JBQUksR0FBRyxDQUFDLENBQUM7QUFDVCxtQkFBSyxHQUFHLENBQUMsQ0FBQztBQUNWLG9CQUFNLEdBQUcsQ0FBQyxDQUFDO0FBR3RCLE1BQU0sQ0FBQyxJQUFJLFNBQVMsR0FBVTtJQUMxQixFQUFDLEtBQUssRUFBRSxhQUFhLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUM7SUFDM0MsRUFBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFDO0lBQzNDLEVBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBQztJQUN6QyxFQUFDLEtBQUssRUFBRSxhQUFhLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUM7SUFDekMsRUFBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFDO0lBQzNDLEVBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBQztDQUNoRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIExvZ0xldmVsc0VudW0gZXh0ZW5kcyBOdW1iZXIge1xuICAgIHN0YXRpYyBUUkFDRSA9IDU7XG4gICAgc3RhdGljIERFQlVHID0gMTtcbiAgICBzdGF0aWMgSU5GTyA9IDI7XG4gICAgc3RhdGljIFdBUk4gPSAzO1xuICAgIHN0YXRpYyBFUlJPUiA9IDQ7XG4gICAgc3RhdGljIFNJTEVOVCA9IDA7XG59XG5cbmV4cG9ydCBsZXQgbG9nTGV2ZWxzOiBhbnlbXSA9IFtcbiAgICB7bGV2ZWw6IExvZ0xldmVsc0VudW0uVFJBQ0UsIG5hbWU6ICdUUkFDRSd9LFxuICAgIHtsZXZlbDogTG9nTGV2ZWxzRW51bS5ERUJVRywgbmFtZTogJ0RFQlVHJ30sXG4gICAge2xldmVsOiBMb2dMZXZlbHNFbnVtLklORk8sIG5hbWU6ICdJTkZPJ30sXG4gICAge2xldmVsOiBMb2dMZXZlbHNFbnVtLldBUk4sIG5hbWU6ICdXQVJOJ30sXG4gICAge2xldmVsOiBMb2dMZXZlbHNFbnVtLkVSUk9SLCBuYW1lOiAnRVJST1InfSxcbiAgICB7bGV2ZWw6IExvZ0xldmVsc0VudW0uU0lMRU5ULCBuYW1lOiAnU0lMRU5UJ31cbl07XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1kYXRhLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL21vZGVsL21lbnUtZGF0YS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBNZW51TW9kZWwge1xuICBuYW1lPzogc3RyaW5nO1xuICBpY29uPzogc3RyaW5nO1xuICBzdmdJY29uPzogc3RyaW5nO1xuICByb3V0ZT86IHN0cmluZztcbiAgc3ViTWVudXM/OiBBcnJheTxNZW51TW9kZWw+O1xuICBleHBhbmRlZD86IGJvb2xlYW47XG4gIHNlbGVjdGVkPzogYm9vbGVhbjtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,14 @@
|
|
|
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 translationLoaderFactory(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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24tcmVzb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvbW9kZWwvdHJhbnNsYXRpb24tcmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHdCQUF3QixHQUN6QixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsSUFBSSxjQUFjLENBQXVCLHNCQUFzQixDQUFDLENBQUM7QUFFekcsTUFBTSxVQUFVLHdCQUF3QixDQUFDLElBQWdCLEVBQUUsU0FBaUM7SUFDMUYsSUFBSSxDQUFDLFNBQVMsRUFBRTtRQUNkLFNBQVMsR0FBRyxFQUFFLENBQUM7S0FDaEI7U0FBTSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRTtRQUM1QixTQUFTLEdBQUcsQ0FBQyxTQUFnQixDQUFDLENBQUM7S0FDaEM7SUFFRCxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLDRCQUE0QixFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBRTFFLE9BQU8sSUFBSSx3QkFBd0IsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDdkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIElUcmFuc2xhdGlvblJlc291cmNlLFxuICBNdWx0aVRyYW5zbGF0ZUh0dHBMb2FkZXIsXG59IGZyb20gJ25neC10cmFuc2xhdGUtbXVsdGktaHR0cC1sb2FkZXInO1xuaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5cbmV4cG9ydCBjb25zdCBNTkxfVFJBTlNMQVRJT05fUkVTT1VSQ0UgPSBuZXcgSW5qZWN0aW9uVG9rZW48SVRyYW5zbGF0aW9uUmVzb3VyY2U+KCdUcmFuc2xhdGlvbiBSZXNvdXJjZScpO1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNsYXRpb25Mb2FkZXJGYWN0b3J5KGh0dHA6IEh0dHBDbGllbnQsIHJlc291cmNlczogSVRyYW5zbGF0aW9uUmVzb3VyY2VbXSkge1xuICBpZiAoIXJlc291cmNlcykge1xuICAgIHJlc291cmNlcyA9IFtdO1xuICB9IGVsc2UgaWYgKCFyZXNvdXJjZXMubGVuZ3RoKSB7XG4gICAgcmVzb3VyY2VzID0gW3Jlc291cmNlcyBhcyBhbnldO1xuICB9XG5cbiAgcmVzb3VyY2VzLnB1c2goeyBwcmVmaXg6ICcuL2Fzc2V0cy9tbmwtY29tbW9ucy9pMThuLycsIHN1ZmZpeDogJy5qc29uJyB9KTtcblxuICByZXR1cm4gbmV3IE11bHRpVHJhbnNsYXRlSHR0cExvYWRlcihodHRwLCByZXNvdXJjZXMpO1xufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbnMvc3JjL2xpYi9tb2RlbC91c2VyLW1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFVzZXJNb2RlbCB7XG4gICAgdXNlcm5hbWU/OiBzdHJpbmc7XG4gICAgcGFzc3dvcmQ/OiBzdHJpbmc7XG4gICAgZmlyc3ROYW1lPzogc3RyaW5nO1xuICAgIGxhc3ROYW1lPzogc3RyaW5nO1xuICAgIGVtYWlsPzogc3RyaW5nO1xufVxuIl19
|