@muraai/mnl-commons 0.1.0-alpha-7aebc4d → 0.1.0-alpha-0abf887

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.
Files changed (68) hide show
  1. package/esm2020/lib/commons.module.mjs +140 -0
  2. package/esm2020/lib/components/header/header.component.mjs +32 -0
  3. package/esm2020/lib/components/highlighter/highlighter.component.mjs +24 -0
  4. package/esm2020/lib/components/language-menu/language-menu.component.mjs +36 -0
  5. package/esm2020/lib/components/login/login.component.mjs +56 -0
  6. package/esm2020/lib/components/menu/menu.component.mjs +69 -0
  7. package/esm2020/lib/components/profile/profile.component.mjs +44 -0
  8. package/esm2020/lib/material.module.mjs +60 -0
  9. package/{esm2015/lib/model/log-levels.model.js → esm2020/lib/model/log-levels.model.mjs} +0 -0
  10. package/{esm2015/lib/model/menu-data.model.js → esm2020/lib/model/menu-data.model.mjs} +0 -0
  11. package/{esm2015/lib/model/translation-resource.js → esm2020/lib/model/translation-resource.mjs} +0 -0
  12. package/{esm2015/lib/model/user-model.js → esm2020/lib/model/user-model.mjs} +0 -0
  13. package/esm2020/lib/pipes/app-config-pipe.mjs +20 -0
  14. package/esm2020/lib/pipes/time-ago-pipe.mjs +43 -0
  15. package/esm2020/lib/pipes/user-fullname-pipe.mjs +34 -0
  16. package/esm2020/lib/pipes/user-initials-pipe.mjs +48 -0
  17. package/esm2020/lib/services/app.config.service.mjs +41 -0
  18. package/{esm2015/lib/services/local-storage.service.js → esm2020/lib/services/local-storage.service.mjs} +9 -8
  19. package/esm2020/lib/services/locale.service.mjs +89 -0
  20. package/esm2020/lib/services/log.service.mjs +89 -0
  21. package/esm2020/lib/services/user-profile.service.mjs +36 -0
  22. package/{esm2015/lib/utils/object-utils.js → esm2020/lib/utils/object-utils.mjs} +0 -0
  23. package/{esm2015/muraai-mnl-commons.js → esm2020/muraai-mnl-commons.mjs} +0 -0
  24. package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
  25. package/fesm2015/muraai-mnl-commons.mjs +914 -0
  26. package/fesm2015/muraai-mnl-commons.mjs.map +1 -0
  27. package/fesm2020/muraai-mnl-commons.mjs +911 -0
  28. package/fesm2020/muraai-mnl-commons.mjs.map +1 -0
  29. package/{muraai-mnl-commons.d.ts → index.d.ts} +1 -0
  30. package/lib/commons.module.d.ts +19 -0
  31. package/lib/components/header/header.component.d.ts +3 -0
  32. package/lib/components/highlighter/highlighter.component.d.ts +3 -0
  33. package/lib/components/language-menu/language-menu.component.d.ts +3 -0
  34. package/lib/components/login/login.component.d.ts +5 -2
  35. package/lib/components/menu/menu.component.d.ts +3 -0
  36. package/lib/components/profile/profile.component.d.ts +3 -0
  37. package/lib/material.module.d.ts +14 -2
  38. package/lib/pipes/app-config-pipe.d.ts +3 -0
  39. package/lib/pipes/time-ago-pipe.d.ts +3 -0
  40. package/lib/pipes/user-fullname-pipe.d.ts +3 -0
  41. package/lib/pipes/user-initials-pipe.d.ts +3 -0
  42. package/lib/services/app.config.service.d.ts +3 -0
  43. package/lib/services/local-storage.service.d.ts +3 -0
  44. package/lib/services/locale.service.d.ts +3 -0
  45. package/lib/services/log.service.d.ts +3 -0
  46. package/lib/services/user-profile.service.d.ts +3 -0
  47. package/package.json +22 -10
  48. package/bundles/muraai-mnl-commons.umd.js +0 -1298
  49. package/bundles/muraai-mnl-commons.umd.js.map +0 -1
  50. package/esm2015/lib/commons.module.js +0 -104
  51. package/esm2015/lib/components/header/header.component.js +0 -27
  52. package/esm2015/lib/components/highlighter/highlighter.component.js +0 -21
  53. package/esm2015/lib/components/language-menu/language-menu.component.js +0 -35
  54. package/esm2015/lib/components/login/login.component.js +0 -48
  55. package/esm2015/lib/components/menu/menu.component.js +0 -62
  56. package/esm2015/lib/components/profile/profile.component.js +0 -35
  57. package/esm2015/lib/material.module.js +0 -31
  58. package/esm2015/lib/pipes/app-config-pipe.js +0 -19
  59. package/esm2015/lib/pipes/time-ago-pipe.js +0 -43
  60. package/esm2015/lib/pipes/user-fullname-pipe.js +0 -30
  61. package/esm2015/lib/pipes/user-initials-pipe.js +0 -44
  62. package/esm2015/lib/services/app.config.service.js +0 -44
  63. package/esm2015/lib/services/locale.service.js +0 -94
  64. package/esm2015/lib/services/log.service.js +0 -91
  65. package/esm2015/lib/services/user-profile.service.js +0 -40
  66. package/fesm2015/muraai-mnl-commons.js +0 -843
  67. package/fesm2015/muraai-mnl-commons.js.map +0 -1
  68. package/muraai-mnl-commons.metadata.json +0 -1
@@ -0,0 +1,140 @@
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 { FlexLayoutModule } from '@angular/flex-layout';
8
+ import { MatToolbarModule } from '@angular/material/toolbar';
9
+ import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
10
+ import { HeaderComponent } from './components/header/header.component';
11
+ import { HighlighterComponent } from './components/highlighter/highlighter.component';
12
+ import { LanguageMenuComponent } from './components/language-menu/language-menu.component';
13
+ import { LoginComponent } from './components/login/login.component';
14
+ import { MenuComponent } from './components/menu/menu.component';
15
+ import { ProfileComponent } from './components/profile/profile.component';
16
+ import { MaterialModule } from './material.module';
17
+ import { MNL_TRANSLATION_RESOURCE, translationLoaderFactory, } from './model/translation-resource';
18
+ import { AppConfigPipe } from './pipes/app-config-pipe';
19
+ import { TimeAgoPipe } from './pipes/time-ago-pipe';
20
+ import { UserFullnamePipe } from './pipes/user-fullname-pipe';
21
+ import { UserInitialPipe } from './pipes/user-initials-pipe';
22
+ import { AppConfigService } from './services/app.config.service';
23
+ import { LocalStorageService } from './services/local-storage.service';
24
+ import { LocaleService } from './services/locale.service';
25
+ import { LogService } from './services/log.service';
26
+ import { UserProfileService } from './services/user-profile.service';
27
+ import * as i0 from "@angular/core";
28
+ import * as i1 from "@ngx-translate/core";
29
+ registerLocaleData(localeFR);
30
+ registerLocaleData(localeDE);
31
+ registerLocaleData(localeAR);
32
+ export class CommonsModule {
33
+ static forRoot() {
34
+ return {
35
+ ngModule: CommonsModule,
36
+ providers: [
37
+ {
38
+ provide: APP_INITIALIZER,
39
+ useFactory: loadConfig,
40
+ deps: [
41
+ AppConfigService,
42
+ UserProfileService,
43
+ LocalStorageService,
44
+ LogService,
45
+ LocaleService,
46
+ ],
47
+ multi: true,
48
+ },
49
+ ],
50
+ };
51
+ }
52
+ static forChild() {
53
+ return {
54
+ ngModule: CommonsModule,
55
+ };
56
+ }
57
+ }
58
+ CommonsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CommonsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
59
+ CommonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.1", ngImport: i0, type: CommonsModule, declarations: [HeaderComponent,
60
+ MenuComponent,
61
+ HighlighterComponent,
62
+ AppConfigPipe,
63
+ LoginComponent,
64
+ LanguageMenuComponent,
65
+ ProfileComponent,
66
+ UserInitialPipe,
67
+ TimeAgoPipe,
68
+ UserFullnamePipe], imports: [CommonModule,
69
+ MatToolbarModule,
70
+ FlexLayoutModule,
71
+ MaterialModule, i1.TranslateModule], exports: [HeaderComponent,
72
+ MenuComponent,
73
+ HighlighterComponent,
74
+ AppConfigPipe,
75
+ LanguageMenuComponent,
76
+ LoginComponent,
77
+ ProfileComponent,
78
+ UserInitialPipe,
79
+ TimeAgoPipe,
80
+ UserFullnamePipe,
81
+ TranslateModule] });
82
+ CommonsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CommonsModule, imports: [CommonModule,
83
+ MatToolbarModule,
84
+ FlexLayoutModule,
85
+ MaterialModule,
86
+ TranslateModule.forRoot({
87
+ loader: {
88
+ provide: TranslateLoader,
89
+ useFactory: translationLoaderFactory,
90
+ deps: [HttpClient, MNL_TRANSLATION_RESOURCE],
91
+ },
92
+ }), TranslateModule] });
93
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CommonsModule, decorators: [{
94
+ type: NgModule,
95
+ args: [{
96
+ declarations: [
97
+ HeaderComponent,
98
+ MenuComponent,
99
+ HighlighterComponent,
100
+ AppConfigPipe,
101
+ LoginComponent,
102
+ LanguageMenuComponent,
103
+ ProfileComponent,
104
+ UserInitialPipe,
105
+ TimeAgoPipe,
106
+ UserFullnamePipe,
107
+ ],
108
+ imports: [
109
+ CommonModule,
110
+ MatToolbarModule,
111
+ FlexLayoutModule,
112
+ MaterialModule,
113
+ TranslateModule.forRoot({
114
+ loader: {
115
+ provide: TranslateLoader,
116
+ useFactory: translationLoaderFactory,
117
+ deps: [HttpClient, MNL_TRANSLATION_RESOURCE],
118
+ },
119
+ }),
120
+ ],
121
+ exports: [
122
+ HeaderComponent,
123
+ MenuComponent,
124
+ HighlighterComponent,
125
+ AppConfigPipe,
126
+ LanguageMenuComponent,
127
+ LoginComponent,
128
+ ProfileComponent,
129
+ UserInitialPipe,
130
+ TimeAgoPipe,
131
+ UserFullnamePipe,
132
+ TranslateModule,
133
+ ],
134
+ }]
135
+ }] });
136
+ export function loadConfig(config) {
137
+ const conf = () => config.load();
138
+ return conf;
139
+ }
140
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9ucy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvY29tbW9ucy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLFFBQVEsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDdEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDM0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUNMLHdCQUF3QixFQUN4Qix3QkFBd0IsR0FDekIsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7QUFFckUsa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDN0Isa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDN0Isa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7QUEwQzdCLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsZUFBZTtvQkFDeEIsVUFBVSxFQUFFLFVBQVU7b0JBQ3RCLElBQUksRUFBRTt3QkFDSixnQkFBZ0I7d0JBQ2hCLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQixVQUFVO3dCQUNWLGFBQWE7cUJBQ2Q7b0JBQ0QsS0FBSyxFQUFFLElBQUk7aUJBQ1o7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQVE7UUFDYixPQUFPO1lBQ0wsUUFBUSxFQUFFLGFBQWE7U0FDeEIsQ0FBQztJQUNKLENBQUM7OzBHQXpCVSxhQUFhOzJHQUFiLGFBQWEsaUJBdkN0QixlQUFlO1FBQ2YsYUFBYTtRQUNiLG9CQUFvQjtRQUNwQixhQUFhO1FBQ2IsY0FBYztRQUNkLHFCQUFxQjtRQUNyQixnQkFBZ0I7UUFDaEIsZUFBZTtRQUNmLFdBQVc7UUFDWCxnQkFBZ0IsYUFHaEIsWUFBWTtRQUNaLGdCQUFnQjtRQUNoQixnQkFBZ0I7UUFDaEIsY0FBYyxpQ0FXZCxlQUFlO1FBQ2YsYUFBYTtRQUNiLG9CQUFvQjtRQUNwQixhQUFhO1FBQ2IscUJBQXFCO1FBQ3JCLGNBQWM7UUFDZCxnQkFBZ0I7UUFDaEIsZUFBZTtRQUNmLFdBQVc7UUFDWCxnQkFBZ0I7UUFDaEIsZUFBZTsyR0FHTixhQUFhLFlBM0J0QixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGdCQUFnQjtRQUNoQixjQUFjO1FBQ2QsZUFBZSxDQUFDLE9BQU8sQ0FBQztZQUN0QixNQUFNLEVBQUU7Z0JBQ04sT0FBTyxFQUFFLGVBQWU7Z0JBQ3hCLFVBQVUsRUFBRSx3QkFBd0I7Z0JBQ3BDLElBQUksRUFBRSxDQUFDLFVBQVUsRUFBRSx3QkFBd0IsQ0FBQzthQUM3QztTQUNGLENBQUMsRUFjRixlQUFlOzJGQUdOLGFBQWE7a0JBekN6QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixlQUFlO3dCQUNmLGFBQWE7d0JBQ2Isb0JBQW9CO3dCQUNwQixhQUFhO3dCQUNiLGNBQWM7d0JBQ2QscUJBQXFCO3dCQUNyQixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsV0FBVzt3QkFDWCxnQkFBZ0I7cUJBQ2pCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLGVBQWUsQ0FBQyxPQUFPLENBQUM7NEJBQ3RCLE1BQU0sRUFBRTtnQ0FDTixPQUFPLEVBQUUsZUFBZTtnQ0FDeEIsVUFBVSxFQUFFLHdCQUF3QjtnQ0FDcEMsSUFBSSxFQUFFLENBQUMsVUFBVSxFQUFFLHdCQUF3QixDQUFDOzZCQUM3Qzt5QkFDRixDQUFDO3FCQUNIO29CQUVELE9BQU8sRUFBRTt3QkFDUCxlQUFlO3dCQUNmLGFBQWE7d0JBQ2Isb0JBQW9CO3dCQUNwQixhQUFhO3dCQUNiLHFCQUFxQjt3QkFDckIsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsV0FBVzt3QkFDWCxnQkFBZ0I7d0JBQ2hCLGVBQWU7cUJBQ2hCO2lCQUNGOztBQTZCRCxNQUFNLFVBQVUsVUFBVSxDQUFDLE1BQXdCO0lBQ2pELE1BQU0sSUFBSSxHQUFHLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUsIHJlZ2lzdGVyTG9jYWxlRGF0YSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IGxvY2FsZUFSIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9sb2NhbGVzL2FyJztcbmltcG9ydCBsb2NhbGVERSBmcm9tICdAYW5ndWxhci9jb21tb24vbG9jYWxlcy9kZSc7XG5pbXBvcnQgbG9jYWxlRlIgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2xvY2FsZXMvZnInO1xuaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmxleExheW91dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2ZsZXgtbGF5b3V0JztcbmltcG9ydCB7IE1hdFRvb2xiYXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sYmFyJztcbmltcG9ydCB7IFRyYW5zbGF0ZUxvYWRlciwgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGlnaGxpZ2h0ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaGlnaGxpZ2h0ZXIvaGlnaGxpZ2h0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IExhbmd1YWdlTWVudUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9sYW5ndWFnZS1tZW51L2xhbmd1YWdlLW1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IExvZ2luQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21lbnUvbWVudS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvZmlsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnLi9tYXRlcmlhbC5tb2R1bGUnO1xuaW1wb3J0IHtcbiAgTU5MX1RSQU5TTEFUSU9OX1JFU09VUkNFLFxuICB0cmFuc2xhdGlvbkxvYWRlckZhY3RvcnksXG59IGZyb20gJy4vbW9kZWwvdHJhbnNsYXRpb24tcmVzb3VyY2UnO1xuaW1wb3J0IHsgQXBwQ29uZmlnUGlwZSB9IGZyb20gJy4vcGlwZXMvYXBwLWNvbmZpZy1waXBlJztcbmltcG9ydCB7IFRpbWVBZ29QaXBlIH0gZnJvbSAnLi9waXBlcy90aW1lLWFnby1waXBlJztcbmltcG9ydCB7IFVzZXJGdWxsbmFtZVBpcGUgfSBmcm9tICcuL3BpcGVzL3VzZXItZnVsbG5hbWUtcGlwZSc7XG5pbXBvcnQgeyBVc2VySW5pdGlhbFBpcGUgfSBmcm9tICcuL3BpcGVzL3VzZXItaW5pdGlhbHMtcGlwZSc7XG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9hcHAuY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgTG9jYWxTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvbG9jYWwtc3RvcmFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IExvY2FsZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2xvY2FsZS5zZXJ2aWNlJztcbmltcG9ydCB7IExvZ1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2xvZy5zZXJ2aWNlJztcbmltcG9ydCB7IFVzZXJQcm9maWxlU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvdXNlci1wcm9maWxlLnNlcnZpY2UnO1xuXG5yZWdpc3RlckxvY2FsZURhdGEobG9jYWxlRlIpO1xucmVnaXN0ZXJMb2NhbGVEYXRhKGxvY2FsZURFKTtcbnJlZ2lzdGVyTG9jYWxlRGF0YShsb2NhbGVBUik7XG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBIZWFkZXJDb21wb25lbnQsXG4gICAgTWVudUNvbXBvbmVudCxcbiAgICBIaWdobGlnaHRlckNvbXBvbmVudCxcbiAgICBBcHBDb25maWdQaXBlLFxuICAgIExvZ2luQ29tcG9uZW50LFxuICAgIExhbmd1YWdlTWVudUNvbXBvbmVudCxcbiAgICBQcm9maWxlQ29tcG9uZW50LFxuICAgIFVzZXJJbml0aWFsUGlwZSxcbiAgICBUaW1lQWdvUGlwZSxcbiAgICBVc2VyRnVsbG5hbWVQaXBlLFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdFRvb2xiYXJNb2R1bGUsXG4gICAgRmxleExheW91dE1vZHVsZSxcbiAgICBNYXRlcmlhbE1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUuZm9yUm9vdCh7XG4gICAgICBsb2FkZXI6IHtcbiAgICAgICAgcHJvdmlkZTogVHJhbnNsYXRlTG9hZGVyLFxuICAgICAgICB1c2VGYWN0b3J5OiB0cmFuc2xhdGlvbkxvYWRlckZhY3RvcnksXG4gICAgICAgIGRlcHM6IFtIdHRwQ2xpZW50LCBNTkxfVFJBTlNMQVRJT05fUkVTT1VSQ0VdLFxuICAgICAgfSxcbiAgICB9KSxcbiAgXSxcblxuICBleHBvcnRzOiBbXG4gICAgSGVhZGVyQ29tcG9uZW50LFxuICAgIE1lbnVDb21wb25lbnQsXG4gICAgSGlnaGxpZ2h0ZXJDb21wb25lbnQsXG4gICAgQXBwQ29uZmlnUGlwZSxcbiAgICBMYW5ndWFnZU1lbnVDb21wb25lbnQsXG4gICAgTG9naW5Db21wb25lbnQsXG4gICAgUHJvZmlsZUNvbXBvbmVudCxcbiAgICBVc2VySW5pdGlhbFBpcGUsXG4gICAgVGltZUFnb1BpcGUsXG4gICAgVXNlckZ1bGxuYW1lUGlwZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIENvbW1vbnNNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPENvbW1vbnNNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IENvbW1vbnNNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICB1c2VGYWN0b3J5OiBsb2FkQ29uZmlnLFxuICAgICAgICAgIGRlcHM6IFtcbiAgICAgICAgICAgIEFwcENvbmZpZ1NlcnZpY2UsXG4gICAgICAgICAgICBVc2VyUHJvZmlsZVNlcnZpY2UsXG4gICAgICAgICAgICBMb2NhbFN0b3JhZ2VTZXJ2aWNlLFxuICAgICAgICAgICAgTG9nU2VydmljZSxcbiAgICAgICAgICAgIExvY2FsZVNlcnZpY2UsXG4gICAgICAgICAgXSxcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBmb3JDaGlsZCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPENvbW1vbnNNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IENvbW1vbnNNb2R1bGUsXG4gICAgfTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9hZENvbmZpZyhjb25maWc6IEFwcENvbmZpZ1NlcnZpY2UpIHtcbiAgY29uc3QgY29uZiA9ICgpID0+IGNvbmZpZy5sb2FkKCk7XG4gIHJldHVybiBjb25mO1xufVxuIl19
@@ -0,0 +1,32 @@
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/flex-layout/flex";
6
+ import * as i4 from "@angular/material/button";
7
+ import * as i5 from "@angular/material/icon";
8
+ export class HeaderComponent {
9
+ constructor() {
10
+ this.menuButonClickEvent = new EventEmitter();
11
+ this.logoClick = new EventEmitter();
12
+ }
13
+ menuClick(event) {
14
+ this.menuButonClickEvent.emit(event);
15
+ }
16
+ onLogoClick(event) {
17
+ this.logoClick.emit(event);
18
+ }
19
+ }
20
+ HeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: HeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
21
+ HeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.1", 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 fxLayout fxLayoutAlign=\"start center\">\n <button mat-icon-button *ngIf=\"header.showMenuIcon\">\n <mat-icon (click)=\"menuClick($event)\">menu</mat-icon>\n </button>\n <img\n class=\"mnl-logo\"\n (click)=\"onLogoClick($event)\"\n src=\"{{ header.logo }}\"\n />\n <span>{{ header.name }}</span>\n </div>\n <div fxLayoutAlign=\"end center\" fxFlex>\n <ng-content select=\"`[mnl-header-content]`\"></ng-content>\n </div>\n </mat-toolbar-row>\n</mat-toolbar>\n", styles: [".mnl-logo{margin-right:15px}\n"], 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: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i4.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: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None });
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: HeaderComponent, decorators: [{
23
+ type: Component,
24
+ args: [{ selector: 'mnl-header', encapsulation: ViewEncapsulation.None, template: "<mat-toolbar *ngIf=\"header\" color=\"{{ header.toolbarColor }}\">\n <mat-toolbar-row>\n <div fxLayout fxLayoutAlign=\"start center\">\n <button mat-icon-button *ngIf=\"header.showMenuIcon\">\n <mat-icon (click)=\"menuClick($event)\">menu</mat-icon>\n </button>\n <img\n class=\"mnl-logo\"\n (click)=\"onLogoClick($event)\"\n src=\"{{ header.logo }}\"\n />\n <span>{{ header.name }}</span>\n </div>\n <div fxLayoutAlign=\"end center\" fxFlex>\n <ng-content select=\"`[mnl-header-content]`\"></ng-content>\n </div>\n </mat-toolbar-row>\n</mat-toolbar>\n", styles: [".mnl-logo{margin-right:15px}\n"] }]
25
+ }], propDecorators: { header: [{
26
+ type: Input
27
+ }], menuButonClickEvent: [{
28
+ type: Output
29
+ }], logoClick: [{
30
+ type: Output
31
+ }] } });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbnMvc3JjL2xpYi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsWUFBWSxHQUFHLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBUTNGLE1BQU0sT0FBTyxlQUFlO0lBTjVCO1FBWUUsd0JBQW1CLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFHakUsY0FBUyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0tBU3hEO0lBUEMsU0FBUyxDQUFDLEtBQUs7UUFDYixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBSztRQUNmLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7OzRHQWpCVSxlQUFlO2dHQUFmLGVBQWUsaUtDUjVCLGtuQkFrQkE7MkZEVmEsZUFBZTtrQkFOM0IsU0FBUzsrQkFDRSxZQUFZLGlCQUdQLGlCQUFpQixDQUFDLElBQUk7OEJBS3JDLE1BQU07c0JBREwsS0FBSztnQkFJTixtQkFBbUI7c0JBRGxCLE1BQU07Z0JBSVAsU0FBUztzQkFEUixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24sIE91dHB1dCwgRXZlbnRFbWl0dGVyLCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtbmwtaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2hlYWRlci5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEhlYWRlckNvbXBvbmVudCB7XG5cbiAgQElucHV0KClcbiAgaGVhZGVyOiBhbnk7XG5cbiAgQE91dHB1dCgpXG4gIG1lbnVCdXRvbkNsaWNrRXZlbnQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGxvZ29DbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBtZW51Q2xpY2soZXZlbnQpIHtcbiAgICB0aGlzLm1lbnVCdXRvbkNsaWNrRXZlbnQuZW1pdChldmVudCk7XG4gIH1cblxuICBvbkxvZ29DbGljayhldmVudCkge1xuICAgIHRoaXMubG9nb0NsaWNrLmVtaXQoZXZlbnQpO1xuICB9XG59XG4iLCI8bWF0LXRvb2xiYXIgKm5nSWY9XCJoZWFkZXJcIiBjb2xvcj1cInt7IGhlYWRlci50b29sYmFyQ29sb3IgfX1cIj5cbiAgPG1hdC10b29sYmFyLXJvdz5cbiAgICA8ZGl2IGZ4TGF5b3V0IGZ4TGF5b3V0QWxpZ249XCJzdGFydCBjZW50ZXJcIj5cbiAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uICpuZ0lmPVwiaGVhZGVyLnNob3dNZW51SWNvblwiPlxuICAgICAgICA8bWF0LWljb24gKGNsaWNrKT1cIm1lbnVDbGljaygkZXZlbnQpXCI+bWVudTwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxpbWdcbiAgICAgICAgY2xhc3M9XCJtbmwtbG9nb1wiXG4gICAgICAgIChjbGljayk9XCJvbkxvZ29DbGljaygkZXZlbnQpXCJcbiAgICAgICAgc3JjPVwie3sgaGVhZGVyLmxvZ28gfX1cIlxuICAgICAgLz5cbiAgICAgIDxzcGFuPnt7IGhlYWRlci5uYW1lIH19PC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgZnhMYXlvdXRBbGlnbj1cImVuZCBjZW50ZXJcIiBmeEZsZXg+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJgW21ubC1oZWFkZXItY29udGVudF1gXCI+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICA8L21hdC10b29sYmFyLXJvdz5cbjwvbWF0LXRvb2xiYXI+XG4iXX0=
@@ -0,0 +1,24 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@angular/flex-layout/extended";
5
+ export class HighlighterComponent {
6
+ constructor() {
7
+ this.height = '40px';
8
+ this.width = '4px';
9
+ this.enabled = true;
10
+ }
11
+ }
12
+ HighlighterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: HighlighterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
13
+ HighlighterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.1", type: HighlighterComponent, selector: "mnl-highlighter", inputs: { height: "height", width: "width", enabled: "enabled" }, ngImport: i0, template: "<div [ngClass]=\"{'mnl-bg-primary' : enabled}\" [ngStyle]=\" {'height': height, 'width' : width}\"></div>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "directive", type: i2.DefaultStyleDirective, selector: " [ngStyle], [ngStyle.xs], [ngStyle.sm], [ngStyle.md], [ngStyle.lg], [ngStyle.xl], [ngStyle.lt-sm], [ngStyle.lt-md], [ngStyle.lt-lg], [ngStyle.lt-xl], [ngStyle.gt-xs], [ngStyle.gt-sm], [ngStyle.gt-md], [ngStyle.gt-lg]", inputs: ["ngStyle", "ngStyle.xs", "ngStyle.sm", "ngStyle.md", "ngStyle.lg", "ngStyle.xl", "ngStyle.lt-sm", "ngStyle.lt-md", "ngStyle.lt-lg", "ngStyle.lt-xl", "ngStyle.gt-xs", "ngStyle.gt-sm", "ngStyle.gt-md", "ngStyle.gt-lg"] }] });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: HighlighterComponent, decorators: [{
15
+ type: Component,
16
+ args: [{ selector: 'mnl-highlighter', template: "<div [ngClass]=\"{'mnl-bg-primary' : enabled}\" [ngStyle]=\" {'height': height, 'width' : width}\"></div>" }]
17
+ }], propDecorators: { height: [{
18
+ type: Input
19
+ }], width: [{
20
+ type: Input
21
+ }], enabled: [{
22
+ type: Input
23
+ }] } });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvaGlnaGxpZ2h0ZXIvaGlnaGxpZ2h0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvaGlnaGxpZ2h0ZXIvaGlnaGxpZ2h0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFPakQsTUFBTSxPQUFPLG9CQUFvQjtJQUxqQztRQU9FLFdBQU0sR0FBRyxNQUFNLENBQUM7UUFHaEIsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUdkLFlBQU8sR0FBRyxJQUFJLENBQUM7S0FDaEI7O2lIQVRZLG9CQUFvQjtxR0FBcEIsb0JBQW9CLHlIQ1BqQywyR0FBcUc7MkZET3hGLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxpQkFBaUI7OEJBTTNCLE1BQU07c0JBREwsS0FBSztnQkFJTixLQUFLO3NCQURKLEtBQUs7Z0JBSU4sT0FBTztzQkFETixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtbmwtaGlnaGxpZ2h0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vaGlnaGxpZ2h0ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oaWdobGlnaHRlci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBIaWdobGlnaHRlckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIGhlaWdodCA9ICc0MHB4JztcblxuICBASW5wdXQoKVxuICB3aWR0aCA9ICc0cHgnO1xuXG4gIEBJbnB1dCgpXG4gIGVuYWJsZWQgPSB0cnVlO1xufVxuIiwiPGRpdiBbbmdDbGFzc109XCJ7J21ubC1iZy1wcmltYXJ5JyA6IGVuYWJsZWR9XCIgW25nU3R5bGVdPVwiIHsnaGVpZ2h0JzogaGVpZ2h0LCAnd2lkdGgnIDogd2lkdGh9XCI+PC9kaXY+Il19
@@ -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.0.1", ngImport: i0, type: LanguageMenuComponent, deps: [{ token: i1.LocaleService }], target: i0.ɵɵFactoryTarget.Component });
27
+ LanguageMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.1", 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.0.1", 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,56 @@
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/flex-layout/flex";
7
+ import * as i4 from "@angular/material/button";
8
+ import * as i5 from "@angular/material/card";
9
+ import * as i6 from "@angular/material/form-field";
10
+ import * as i7 from "@angular/material/input";
11
+ import * as i8 from "@angular/forms";
12
+ import * as i9 from "@ngx-translate/core";
13
+ export class LoginComponent {
14
+ constructor(sanitizer) {
15
+ this.sanitizer = sanitizer;
16
+ this.title = '';
17
+ this.logoImageUrl = './assets/images/logo.png';
18
+ this.backgroundImageUrl = './assets/images/background.jpg';
19
+ this.disabled = false;
20
+ this.login = new EventEmitter();
21
+ }
22
+ ngOnInit() {
23
+ this.initForm();
24
+ }
25
+ initForm() {
26
+ this.formGroup = new UntypedFormGroup({
27
+ username: new UntypedFormControl('', [Validators.required]),
28
+ password: new UntypedFormControl('', [Validators.required])
29
+ });
30
+ }
31
+ onSubmit() {
32
+ if (this.formGroup.valid) {
33
+ this.login.emit(this.formGroup.value);
34
+ }
35
+ }
36
+ getBackgroundImageUrl() {
37
+ return this.sanitizer.bypassSecurityTrustStyle(`url(${this.backgroundImageUrl})`);
38
+ }
39
+ }
40
+ LoginComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: LoginComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
41
+ LoginComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.1", type: LoginComponent, selector: "mnl-login", inputs: { title: "title", logoImageUrl: "logoImageUrl", backgroundImageUrl: "backgroundImageUrl", disabled: "disabled" }, outputs: { login: "login" }, ngImport: i0, template: "<div fxLayoutAlign=\"center center\" class=\"mnl-login-container\" fxFlexFill [style.background-image]=\"getBackgroundImageUrl()\">\n <mat-card class=\"mnl-login-card\">\n <form fxLayoutAlign=\"stretch\" fxLayout=\"column\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <mat-card-header fxLayoutAlign=\"center center\">\n <mat-card-title>\n <img *ngIf=\"logoImageUrl\" src=\"{{logoImageUrl}}\">\n </mat-card-title>\n </mat-card-header>\n <h3 fxLayoutAlign=\"center center\" class=\"mnl-login-title\" *ngIf=\"title\">{{title | translate}}</h3>\n <mat-form-field fxFlex=\"100\">\n <input id=\"username\" matInput placeholder=\"{{'MNL.LOGIN.USERNAME' | translate}}\"\n formControlName=\"username\">\n </mat-form-field>\n\n <mat-form-field fxFlex=\"100\">\n <input id=\"password\" matInput type=\"password\" placeholder=\"{{'MNL.LOGIN.PASSWORD' | translate}}\"\n formControlName=\"password\">\n </mat-form-field>\n <mat-card-actions fxLayoutAlign=\"center 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: [".mnl-login-card{min-width:260px}.mnl-login-container{background-size:cover}.mnl-login-title{opacity:.6}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i3.FlexFillDirective, selector: "[fxFill], [fxFlexFill]" }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i4.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: i5.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "component", type: i5.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i5.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "directive", type: i5.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.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: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i8.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: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i8.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: LoginComponent, decorators: [{
43
+ type: Component,
44
+ args: [{ selector: 'mnl-login', template: "<div fxLayoutAlign=\"center center\" class=\"mnl-login-container\" fxFlexFill [style.background-image]=\"getBackgroundImageUrl()\">\n <mat-card class=\"mnl-login-card\">\n <form fxLayoutAlign=\"stretch\" fxLayout=\"column\" [formGroup]=\"formGroup\" (ngSubmit)=\"onSubmit()\">\n <mat-card-header fxLayoutAlign=\"center center\">\n <mat-card-title>\n <img *ngIf=\"logoImageUrl\" src=\"{{logoImageUrl}}\">\n </mat-card-title>\n </mat-card-header>\n <h3 fxLayoutAlign=\"center center\" class=\"mnl-login-title\" *ngIf=\"title\">{{title | translate}}</h3>\n <mat-form-field fxFlex=\"100\">\n <input id=\"username\" matInput placeholder=\"{{'MNL.LOGIN.USERNAME' | translate}}\"\n formControlName=\"username\">\n </mat-form-field>\n\n <mat-form-field fxFlex=\"100\">\n <input id=\"password\" matInput type=\"password\" placeholder=\"{{'MNL.LOGIN.PASSWORD' | translate}}\"\n formControlName=\"password\">\n </mat-form-field>\n <mat-card-actions fxLayoutAlign=\"center 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: [".mnl-login-card{min-width:260px}.mnl-login-container{background-size:cover}.mnl-login-title{opacity:.6}\n"] }]
45
+ }], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; }, propDecorators: { title: [{
46
+ type: Input
47
+ }], logoImageUrl: [{
48
+ type: Input
49
+ }], backgroundImageUrl: [{
50
+ type: Input
51
+ }], disabled: [{
52
+ type: Input
53
+ }], login: [{
54
+ type: Output
55
+ }] } });
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7O0FBUWxGLE1BQU0sT0FBTyxjQUFjO0lBbUJ6QixZQUFvQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBZDNDLFVBQUssR0FBRyxFQUFFLENBQUM7UUFHWCxpQkFBWSxHQUFHLDBCQUEwQixDQUFDO1FBRzFDLHVCQUFrQixHQUFHLGdDQUFnQyxDQUFDO1FBR3RELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFHakIsVUFBSyxHQUFJLElBQUksWUFBWSxFQUFhLENBQUM7SUFJdkMsQ0FBQztJQUNELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVPLFFBQVE7UUFDZCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksZ0JBQWdCLENBQUM7WUFDcEMsUUFBUSxFQUFFLElBQUksa0JBQWtCLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzNELFFBQVEsRUFBRSxJQUFJLGtCQUFrQixDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUM1RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUU7WUFDeEIsSUFBSSxDQUFDLEtBQUssQ0FBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN4QztJQUNILENBQUM7SUFDRCxxQkFBcUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHdCQUF3QixDQUFDLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixHQUFHLENBQUMsQ0FBQztJQUN0RixDQUFDOzsyR0F2Q1ksY0FBYzsrRkFBZCxjQUFjLHdNQ1QzQixtOENBeUJNOzJGRGhCTyxjQUFjO2tCQUwxQixTQUFTOytCQUNFLFdBQVc7bUdBU3JCLEtBQUs7c0JBREosS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBSU4sa0JBQWtCO3NCQURqQixLQUFLO2dCQUlOLFFBQVE7c0JBRFAsS0FBSztnQkFJTixLQUFLO3NCQURKLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwLCBVbnR5cGVkRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBVc2VyTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbC91c2VyLW1vZGVsJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVN0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtbmwtbG9naW4nLFxuICB0ZW1wbGF0ZVVybDogJy4vbG9naW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sb2dpbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIExvZ2luQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBmb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXA7XG5cbiAgQElucHV0KClcbiAgdGl0bGUgPSAnJztcblxuICBASW5wdXQoKVxuICBsb2dvSW1hZ2VVcmwgPSAnLi9hc3NldHMvaW1hZ2VzL2xvZ28ucG5nJztcblxuICBASW5wdXQoKVxuICBiYWNrZ3JvdW5kSW1hZ2VVcmwgPSAnLi9hc3NldHMvaW1hZ2VzL2JhY2tncm91bmQuanBnJztcblxuICBASW5wdXQoKVxuICBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKVxuICBsb2dpbiAgPSBuZXcgRXZlbnRFbWl0dGVyPFVzZXJNb2RlbD4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7XG5cbiAgfVxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmluaXRGb3JtKCk7XG4gIH1cblxuICBwcml2YXRlIGluaXRGb3JtKCkge1xuICAgIHRoaXMuZm9ybUdyb3VwID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe1xuICAgICAgdXNlcm5hbWU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSksXG4gICAgICBwYXNzd29yZDogbmV3IFVudHlwZWRGb3JtQ29udHJvbCgnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKVxuICAgIH0pO1xuICB9XG4gIG9uU3VibWl0KCkge1xuICAgIGlmICh0aGlzLmZvcm1Hcm91cC52YWxpZCkge1xuICAgICAgdGhpcy5sb2dpbiAuZW1pdCh0aGlzLmZvcm1Hcm91cC52YWx1ZSk7XG4gICAgfVxuICB9XG4gIGdldEJhY2tncm91bmRJbWFnZVVybCgpOiBTYWZlU3R5bGUge1xuICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUoYHVybCgke3RoaXMuYmFja2dyb3VuZEltYWdlVXJsfSlgKTtcbn1cblxufVxuIiwiPGRpdiBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiIGNsYXNzPVwibW5sLWxvZ2luLWNvbnRhaW5lclwiIGZ4RmxleEZpbGwgW3N0eWxlLmJhY2tncm91bmQtaW1hZ2VdPVwiZ2V0QmFja2dyb3VuZEltYWdlVXJsKClcIj5cbiAgICA8bWF0LWNhcmQgY2xhc3M9XCJtbmwtbG9naW4tY2FyZFwiPlxuICAgICAgICA8Zm9ybSBmeExheW91dEFsaWduPVwic3RyZXRjaFwiIGZ4TGF5b3V0PVwiY29sdW1uXCIgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIiAobmdTdWJtaXQpPVwib25TdWJtaXQoKVwiPlxuICAgICAgICAgICAgPG1hdC1jYXJkLWhlYWRlciBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxtYXQtY2FyZC10aXRsZT5cbiAgICAgICAgICAgICAgICAgICAgPGltZyAqbmdJZj1cImxvZ29JbWFnZVVybFwiIHNyYz1cInt7bG9nb0ltYWdlVXJsfX1cIj5cbiAgICAgICAgICAgICAgICA8L21hdC1jYXJkLXRpdGxlPlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1oZWFkZXI+XG4gICAgICAgICAgICA8aDMgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIiBjbGFzcz1cIm1ubC1sb2dpbi10aXRsZVwiICpuZ0lmPVwidGl0bGVcIj57e3RpdGxlIHwgdHJhbnNsYXRlfX08L2gzPlxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGZ4RmxleD1cIjEwMFwiPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cInVzZXJuYW1lXCIgbWF0SW5wdXQgcGxhY2Vob2xkZXI9XCJ7eydNTkwuTE9HSU4uVVNFUk5BTUUnIHwgdHJhbnNsYXRlfX1cIlxuICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJ1c2VybmFtZVwiPlxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGZ4RmxleD1cIjEwMFwiPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBpZD1cInBhc3N3b3JkXCIgbWF0SW5wdXQgdHlwZT1cInBhc3N3b3JkXCIgcGxhY2Vob2xkZXI9XCJ7eydNTkwuTE9HSU4uUEFTU1dPUkQnIHwgdHJhbnNsYXRlfX1cIlxuICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJwYXNzd29yZFwiPlxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIDxtYXQtY2FyZC1hY3Rpb25zIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBpZD1cImxvZ2luQnV0dG9uXCIgbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJhY2NlbnRcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgIWZvcm1Hcm91cC52YWxpZFwiXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIj4ge3snTU5MLkxPR0lOLkxPR0lOX0JVVFRPTicgfCB0cmFuc2xhdGV9fTwvYnV0dG9uPlxuICAgICAgICAgICAgPC9tYXQtY2FyZC1hY3Rpb25zPlxuXG4gICAgICAgIDwvZm9ybT5cbiAgICA8L21hdC1jYXJkPlxuPC9kaXY+Il19
@@ -0,0 +1,69 @@
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/flex-layout/flex";
5
+ import * as i3 from "@angular/flex-layout/extended";
6
+ import * as i4 from "@angular/material/icon";
7
+ import * as i5 from "@angular/material/list";
8
+ import * as i6 from "../highlighter/highlighter.component";
9
+ import * as i7 from "@ngx-translate/core";
10
+ export class MenuComponent {
11
+ constructor() {
12
+ this.menuClick = new EventEmitter();
13
+ }
14
+ onMenuClick(menu) {
15
+ if (this.hasSubMenu(menu)) {
16
+ this.openMenu(menu);
17
+ this.onSubMenuClick(menu.subMenus[0], menu);
18
+ }
19
+ else {
20
+ this.deSelectMenus(this.menuData);
21
+ this.selectMenu(menu);
22
+ this.menuClick.emit(menu);
23
+ }
24
+ }
25
+ onSubMenuClick(subMenu, menu) {
26
+ this.deSelectMenus(this.menuData);
27
+ this.selectMenu(menu);
28
+ this.selectMenu(subMenu);
29
+ this.menuClick.emit(subMenu);
30
+ }
31
+ deSelectMenus(menus) {
32
+ if (menus) {
33
+ for (const menu of menus) {
34
+ if (menu.selected) {
35
+ menu.selected = false;
36
+ }
37
+ this.deSelectMenus(menu.subMenus);
38
+ }
39
+ }
40
+ }
41
+ selectMenu(menu) {
42
+ if (menu) {
43
+ menu.selected = true;
44
+ }
45
+ }
46
+ hasSubMenu(menu) {
47
+ return menu.subMenus && menu.subMenus.length > 0;
48
+ }
49
+ toggleMenu(menu, event) {
50
+ menu.expanded = !menu.expanded;
51
+ if (event) {
52
+ event.stopPropagation();
53
+ }
54
+ }
55
+ openMenu(menu) {
56
+ menu.expanded = true;
57
+ }
58
+ }
59
+ MenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
60
+ MenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.1", 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 fxLayout=\"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 fxLayout=\"row\" class=\"mnl-submenu\" [class.mnl-expanded]=\"menu.expanded\" *ngIf=\"menu.expanded\"\n (click)=\"onSubMenuClick(sub, menu)\" fxLayout=\"row\" 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: "directive", type: i2.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { kind: "component", type: i5.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { kind: "component", type: i6.HighlighterComponent, selector: "mnl-highlighter", inputs: ["height", "width", "enabled"] }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] });
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: MenuComponent, decorators: [{
62
+ type: Component,
63
+ args: [{ selector: 'mnl-menu', template: "<mat-nav-list *ngFor=\"let menu of menuData\">\n <a mat-list-item fxLayout=\"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 fxLayout=\"row\" class=\"mnl-submenu\" [class.mnl-expanded]=\"menu.expanded\" *ngIf=\"menu.expanded\"\n (click)=\"onSubMenuClick(sub, menu)\" fxLayout=\"row\" 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"] }]
64
+ }], propDecorators: { menuData: [{
65
+ type: Input
66
+ }], menuClick: [{
67
+ type: Output
68
+ }] } });
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvbWVudS9tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7OztBQVF2RSxNQUFNLE9BQU8sYUFBYTtJQUwxQjtRQVVFLGNBQVMsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztLQW9EeEQ7SUFsREMsV0FBVyxDQUFDLElBQWU7UUFDekIsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDcEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQzdDO2FBQU07WUFDTCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNsQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxPQUFrQixFQUFFLElBQWU7UUFDaEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBa0I7UUFDOUIsSUFBSSxLQUFLLEVBQUU7WUFDVCxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRTtnQkFDeEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO29CQUNqQixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztpQkFDdkI7Z0JBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDbkM7U0FDRjtJQUNILENBQUM7SUFFTyxVQUFVLENBQUMsSUFBZTtRQUNoQyxJQUFJLElBQUksRUFBRTtZQUNSLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1NBQ3RCO0lBQ0gsQ0FBQztJQUVPLFVBQVUsQ0FBQyxJQUFlO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFlLEVBQUUsS0FBWTtRQUN0QyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUUvQixJQUFJLEtBQUssRUFBRTtZQUNULEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztTQUN6QjtJQUNILENBQUM7SUFFTyxRQUFRLENBQUMsSUFBZTtRQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztJQUN2QixDQUFDOzswR0F4RFUsYUFBYTs4RkFBYixhQUFhLHVIQ1IxQixndUNBbUJlOzJGRFhGLGFBQWE7a0JBTHpCLFNBQVM7K0JBQ0UsVUFBVTs4QkFNcEIsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLFNBQVM7c0JBRFIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNZW51TW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbC9tZW51LWRhdGEubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtbmwtbWVudScsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWVudS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBNZW51Q29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgbWVudURhdGE6IEFycmF5PE1lbnVNb2RlbD47XG5cbiAgQE91dHB1dCgpXG4gIG1lbnVDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBvbk1lbnVDbGljayhtZW51OiBNZW51TW9kZWwpIHtcbiAgICBpZiAodGhpcy5oYXNTdWJNZW51KG1lbnUpKSB7XG4gICAgICB0aGlzLm9wZW5NZW51KG1lbnUpO1xuICAgICAgdGhpcy5vblN1Yk1lbnVDbGljayhtZW51LnN1Yk1lbnVzWzBdLCBtZW51KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kZVNlbGVjdE1lbnVzKHRoaXMubWVudURhdGEpO1xuICAgICAgdGhpcy5zZWxlY3RNZW51KG1lbnUpO1xuICAgICAgdGhpcy5tZW51Q2xpY2suZW1pdChtZW51KTtcbiAgICB9XG4gIH1cblxuICBvblN1Yk1lbnVDbGljayhzdWJNZW51OiBNZW51TW9kZWwsIG1lbnU6IE1lbnVNb2RlbCkge1xuICAgIHRoaXMuZGVTZWxlY3RNZW51cyh0aGlzLm1lbnVEYXRhKTtcbiAgICB0aGlzLnNlbGVjdE1lbnUobWVudSk7XG4gICAgdGhpcy5zZWxlY3RNZW51KHN1Yk1lbnUpO1xuICAgIHRoaXMubWVudUNsaWNrLmVtaXQoc3ViTWVudSk7XG4gIH1cblxuICBkZVNlbGVjdE1lbnVzKG1lbnVzOiBNZW51TW9kZWxbXSkge1xuICAgIGlmIChtZW51cykge1xuICAgICAgZm9yIChjb25zdCBtZW51IG9mIG1lbnVzKSB7XG4gICAgICAgIGlmIChtZW51LnNlbGVjdGVkKSB7XG4gICAgICAgICAgbWVudS5zZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZGVTZWxlY3RNZW51cyhtZW51LnN1Yk1lbnVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNlbGVjdE1lbnUobWVudTogTWVudU1vZGVsKSB7XG4gICAgaWYgKG1lbnUpIHtcbiAgICAgIG1lbnUuc2VsZWN0ZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaGFzU3ViTWVudShtZW51OiBNZW51TW9kZWwpIHtcbiAgICByZXR1cm4gbWVudS5zdWJNZW51cyAmJiBtZW51LnN1Yk1lbnVzLmxlbmd0aCA+IDA7XG4gIH1cblxuICB0b2dnbGVNZW51KG1lbnU6IE1lbnVNb2RlbCwgZXZlbnQ6IEV2ZW50KSB7XG4gICAgbWVudS5leHBhbmRlZCA9ICFtZW51LmV4cGFuZGVkO1xuXG4gICAgaWYgKGV2ZW50KSB7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG9wZW5NZW51KG1lbnU6IE1lbnVNb2RlbCkge1xuICAgIG1lbnUuZXhwYW5kZWQgPSB0cnVlO1xuICB9XG59XG4iLCI8bWF0LW5hdi1saXN0ICpuZ0Zvcj1cImxldCBtZW51IG9mIG1lbnVEYXRhXCI+XG4gICAgPGEgbWF0LWxpc3QtaXRlbSBmeExheW91dD1cInJvd1wiIChjbGljayk9XCJvbk1lbnVDbGljayhtZW51KVwiIGlkPVwibW5sLW1lbnUtYW5jaG9yXCI+XG4gICAgICAgIDxtbmwtaGlnaGxpZ2h0ZXIgW2VuYWJsZWRdPVwibWVudS5zZWxlY3RlZFwiPjwvbW5sLWhpZ2hsaWdodGVyPlxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJtZW51Lmljb247IGVsc2Ugc3ZnVGVtcGxhdGUgXCI+e3ttZW51Lmljb259fTwvbWF0LWljb24+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjc3ZnVGVtcGxhdGU+XG4gICAgICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cInt7bWVudS5zdmdJY29ufX1cIj4gPC9tYXQtaWNvbj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJtbmwtbWVudVwiIGlkPVwibW5sLW1lbnVcIj57e21lbnUubmFtZSB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibW5sLW1lbnUtYnV0dG9uXCIgKm5nSWY9XCJtZW51LnN1Yk1lbnVzXCIgKGNsaWNrKT1cInRvZ2dsZU1lbnUobWVudSwgJGV2ZW50KVwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7J21ubC1yb3RhdGVkJyA6IG1lbnUuZXhwYW5kZWR9XCI+ZXhwYW5kX21vcmU8L21hdC1pY29uPlxuICAgIDwvYT5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzdWIgb2YgbWVudS5zdWJNZW51c1wiPlxuICAgICAgICA8YSBtYXQtbGlzdC1pdGVtIGZ4TGF5b3V0PVwicm93XCIgY2xhc3M9XCJtbmwtc3VibWVudVwiIFtjbGFzcy5tbmwtZXhwYW5kZWRdPVwibWVudS5leHBhbmRlZFwiICpuZ0lmPVwibWVudS5leHBhbmRlZFwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25TdWJNZW51Q2xpY2soc3ViLCBtZW51KVwiIGZ4TGF5b3V0PVwicm93XCIgaWQ9XCJtbmwtc3VibWVudS1hbmNob3JcIj5cbiAgICAgICAgICAgIDxtbmwtaGlnaGxpZ2h0ZXIgW2VuYWJsZWRdPVwic3ViLnNlbGVjdGVkXCI+PC9tbmwtaGlnaGxpZ2h0ZXI+XG4gICAgICAgICAgICA8bWF0LWljb24+e3tzdWIuaWNvbn19PC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibW5sLW1lbnVcIiBpZD1cIm1ubC1zdWJtZW51XCI+e3tzdWIubmFtZSB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9hPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9tYXQtbmF2LWxpc3Q+Il19
@@ -0,0 +1,44 @@
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/flex-layout/flex";
5
+ import * as i3 from "@angular/flex-layout/extended";
6
+ import * as i4 from "@angular/material/button";
7
+ import * as i5 from "@angular/material/icon";
8
+ import * as i6 from "../../pipes/user-initials-pipe";
9
+ import * as i7 from "../../pipes/user-fullname-pipe";
10
+ export class ProfileComponent {
11
+ constructor() {
12
+ this.showDisplayName = true;
13
+ this.userInitialClick = new EventEmitter();
14
+ this.profileMenuClick = new EventEmitter();
15
+ }
16
+ onUserInitialClick(event) {
17
+ this.userInitialClick.emit(event);
18
+ }
19
+ ngOnChanges(changes) {
20
+ if (changes && changes.userProfileDetails && changes.userProfileDetails.currentValue
21
+ && changes.userProfileDetails.currentValue.firstName && changes.userProfileDetails.currentValue.lastName
22
+ && changes.userProfileDetails.currentValue.email) {
23
+ this.hasUserDetails = true;
24
+ }
25
+ else {
26
+ this.hasUserDetails = false;
27
+ }
28
+ }
29
+ }
30
+ ProfileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: ProfileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
31
+ ProfileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.1", 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\" fxLayoutGap=\"10px\">\n <span\n *ngIf=\"showDisplayName && hasUserDetails\"\n id=\"mnl-userinfo-name\"\n fxHide.xs\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: "directive", type: i2.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i3.DefaultShowHideDirective, selector: " [fxShow], [fxShow.print], [fxShow.xs], [fxShow.sm], [fxShow.md], [fxShow.lg], [fxShow.xl], [fxShow.lt-sm], [fxShow.lt-md], [fxShow.lt-lg], [fxShow.lt-xl], [fxShow.gt-xs], [fxShow.gt-sm], [fxShow.gt-md], [fxShow.gt-lg], [fxHide], [fxHide.print], [fxHide.xs], [fxHide.sm], [fxHide.md], [fxHide.lg], [fxHide.xl], [fxHide.lt-sm], [fxHide.lt-md], [fxHide.lt-lg], [fxHide.lt-xl], [fxHide.gt-xs], [fxHide.gt-sm], [fxHide.gt-md], [fxHide.gt-lg]", inputs: ["fxShow", "fxShow.print", "fxShow.xs", "fxShow.sm", "fxShow.md", "fxShow.lg", "fxShow.xl", "fxShow.lt-sm", "fxShow.lt-md", "fxShow.lt-lg", "fxShow.lt-xl", "fxShow.gt-xs", "fxShow.gt-sm", "fxShow.gt-md", "fxShow.gt-lg", "fxHide", "fxHide.print", "fxHide.xs", "fxHide.sm", "fxHide.md", "fxHide.lg", "fxHide.xl", "fxHide.lt-sm", "fxHide.lt-md", "fxHide.lt-lg", "fxHide.lt-xl", "fxHide.gt-xs", "fxHide.gt-sm", "fxHide.gt-md", "fxHide.gt-lg"] }, { kind: "component", type: i4.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: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i6.UserInitialPipe, name: "mnlUserInitialPipe" }, { kind: "pipe", type: i7.UserFullnamePipe, name: "mnlUserFullName" }] });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: ProfileComponent, decorators: [{
33
+ type: Component,
34
+ args: [{ selector: 'mnl-user-profile', template: "<div id=\"mnl-profile-container\" fxLayoutGap=\"10px\">\n <span\n *ngIf=\"showDisplayName && hasUserDetails\"\n id=\"mnl-userinfo-name\"\n fxHide.xs\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"] }]
35
+ }], propDecorators: { userProfileDetails: [{
36
+ type: Input
37
+ }], showDisplayName: [{
38
+ type: Input
39
+ }], userInitialClick: [{
40
+ type: Output
41
+ }], profileMenuClick: [{
42
+ type: Output
43
+ }] } });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvcHJvZmlsZS9wcm9maWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7QUFRakcsTUFBTSxPQUFPLGdCQUFnQjtJQUw3QjtRQVVFLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBR3ZCLHFCQUFnQixHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBRzlELHFCQUFnQixHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0tBaUIvRDtJQWJDLGtCQUFrQixDQUFDLEtBQVU7UUFDM0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxrQkFBa0IsSUFBSSxPQUFPLENBQUMsa0JBQWtCLENBQUMsWUFBWTtlQUMvRSxPQUFPLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLFNBQVMsSUFBSSxPQUFPLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLFFBQVE7ZUFDckcsT0FBTyxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUU7WUFDaEQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7U0FDOUI7YUFBTTtZQUNMLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1NBQzdCO0lBQ0gsQ0FBQzs7NkdBM0JVLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLGdRQ1I3QixvcUJBMkJBOzJGRG5CYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0Usa0JBQWtCOzhCQU01QixrQkFBa0I7c0JBRGpCLEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLO2dCQUlOLGdCQUFnQjtzQkFEZixNQUFNO2dCQUlQLGdCQUFnQjtzQkFEZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVXNlck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWwvdXNlci1tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21ubC11c2VyLXByb2ZpbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vcHJvZmlsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Byb2ZpbGUuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9maWxlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KClcbiAgdXNlclByb2ZpbGVEZXRhaWxzOiBVc2VyTW9kZWw7XG5cbiAgQElucHV0KClcbiAgc2hvd0Rpc3BsYXlOYW1lID0gdHJ1ZTtcblxuICBAT3V0cHV0KClcbiAgdXNlckluaXRpYWxDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBAT3V0cHV0KClcbiAgcHJvZmlsZU1lbnVDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBoYXNVc2VyRGV0YWlsczogYm9vbGVhbjtcblxuICBvblVzZXJJbml0aWFsQ2xpY2soZXZlbnQ6IGFueSkge1xuICAgIHRoaXMudXNlckluaXRpYWxDbGljay5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlcyAmJiBjaGFuZ2VzLnVzZXJQcm9maWxlRGV0YWlscyAmJiBjaGFuZ2VzLnVzZXJQcm9maWxlRGV0YWlscy5jdXJyZW50VmFsdWVcbiAgICAgICYmIGNoYW5nZXMudXNlclByb2ZpbGVEZXRhaWxzLmN1cnJlbnRWYWx1ZS5maXJzdE5hbWUgJiYgY2hhbmdlcy51c2VyUHJvZmlsZURldGFpbHMuY3VycmVudFZhbHVlLmxhc3ROYW1lXG4gICAgICAmJiBjaGFuZ2VzLnVzZXJQcm9maWxlRGV0YWlscy5jdXJyZW50VmFsdWUuZW1haWwpIHtcbiAgICAgICAgdGhpcy5oYXNVc2VyRGV0YWlscyA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGFzVXNlckRldGFpbHMgPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgaWQ9XCJtbmwtcHJvZmlsZS1jb250YWluZXJcIiBmeExheW91dEdhcD1cIjEwcHhcIj5cbiAgPHNwYW5cbiAgICAqbmdJZj1cInNob3dEaXNwbGF5TmFtZSAmJiBoYXNVc2VyRGV0YWlsc1wiXG4gICAgaWQ9XCJtbmwtdXNlcmluZm8tbmFtZVwiXG4gICAgZnhIaWRlLnhzXG4gICAgPnt7IHVzZXJQcm9maWxlRGV0YWlscyB8IG1ubFVzZXJGdWxsTmFtZSB9fTwvc3BhblxuICA+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.0.1", ngImport: i0, type: MaterialModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
27
+ MaterialModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.1", 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.0.1", 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.0.1", 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==