@muraai/mnl-commons 0.1.0-alpha-a04cfbd → 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 (72) 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/esm2020/lib/services/local-storage.service.mjs +48 -0
  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 +7 -0
  44. package/lib/services/locale.service.d.ts +3 -0
  45. package/lib/services/log.service.d.ts +4 -1
  46. package/lib/services/user-profile.service.d.ts +3 -0
  47. package/package.json +22 -10
  48. package/theming.scss +6 -6
  49. package/bundles/muraai-mnl-commons.umd.js +0 -1270
  50. package/bundles/muraai-mnl-commons.umd.js.map +0 -1
  51. package/bundles/muraai-mnl-commons.umd.min.js +0 -17
  52. package/bundles/muraai-mnl-commons.umd.min.js.map +0 -1
  53. package/esm2015/lib/commons.module.js +0 -104
  54. package/esm2015/lib/components/header/header.component.js +0 -27
  55. package/esm2015/lib/components/highlighter/highlighter.component.js +0 -21
  56. package/esm2015/lib/components/language-menu/language-menu.component.js +0 -35
  57. package/esm2015/lib/components/login/login.component.js +0 -48
  58. package/esm2015/lib/components/menu/menu.component.js +0 -62
  59. package/esm2015/lib/components/profile/profile.component.js +0 -35
  60. package/esm2015/lib/material.module.js +0 -31
  61. package/esm2015/lib/pipes/app-config-pipe.js +0 -19
  62. package/esm2015/lib/pipes/time-ago-pipe.js +0 -43
  63. package/esm2015/lib/pipes/user-fullname-pipe.js +0 -30
  64. package/esm2015/lib/pipes/user-initials-pipe.js +0 -44
  65. package/esm2015/lib/services/app.config.service.js +0 -44
  66. package/esm2015/lib/services/local-storage.service.js +0 -17
  67. package/esm2015/lib/services/locale.service.js +0 -94
  68. package/esm2015/lib/services/log.service.js +0 -91
  69. package/esm2015/lib/services/user-profile.service.js +0 -40
  70. package/fesm2015/muraai-mnl-commons.js +0 -813
  71. package/fesm2015/muraai-mnl-commons.js.map +0 -1
  72. package/muraai-mnl-commons.metadata.json +0 -1
@@ -1,35 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { LocaleService } from '../../services/locale.service';
3
- export class LanguageMenuComponent {
4
- constructor(localeService) {
5
- this.localeService = localeService;
6
- this.showLocaleKeyAsLabel = false;
7
- this.showLocaleAsLabel = false;
8
- this.languages = [];
9
- }
10
- ngOnInit() {
11
- this.languages = this.localeService.getLanguages();
12
- this.localeService.setActiveLocale(this.locale);
13
- }
14
- onChangeLanguage(language) {
15
- this.localeService.setActiveLocale(language);
16
- }
17
- get locale() {
18
- return this.localeService.getActiveLocale() || this.localeService.getDefaultLocale();
19
- }
20
- }
21
- LanguageMenuComponent.decorators = [
22
- { type: Component, args: [{
23
- selector: 'mnl-language-menu',
24
- 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",
25
- styles: [""]
26
- },] }
27
- ];
28
- LanguageMenuComponent.ctorParameters = () => [
29
- { type: LocaleService }
30
- ];
31
- LanguageMenuComponent.propDecorators = {
32
- showLocaleKeyAsLabel: [{ type: Input }],
33
- showLocaleAsLabel: [{ type: Input }]
34
- };
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2UtbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9sYW5ndWFnZS1tZW51L2xhbmd1YWdlLW1lbnUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQWdCLE1BQU0sK0JBQStCLENBQUM7QUFPNUUsTUFBTSxPQUFPLHFCQUFxQjtJQVNoQyxZQUFvQixhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQU5oRCx5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFHN0Isc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBRTFCLGNBQVMsR0FBd0IsRUFBRSxDQUFDO0lBQ2UsQ0FBQztJQUVwRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsUUFBc0I7UUFDckMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLEVBQUUsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDdkYsQ0FBQzs7O1lBM0JGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QiwydEJBQTZDOzthQUU5Qzs7O1lBTlEsYUFBYTs7O21DQVNuQixLQUFLO2dDQUdMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExvY2FsZVNlcnZpY2UsIExhbmd1YWdlSXRlbSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xvY2FsZS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbW5sLWxhbmd1YWdlLW1lbnUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGFuZ3VhZ2UtbWVudS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xhbmd1YWdlLW1lbnUuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTGFuZ3VhZ2VNZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKVxuICBzaG93TG9jYWxlS2V5QXNMYWJlbCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHNob3dMb2NhbGVBc0xhYmVsID0gZmFsc2U7XG5cbiAgbGFuZ3VhZ2VzOiBBcnJheTxMYW5ndWFnZUl0ZW0+ID0gW107XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbG9jYWxlU2VydmljZTogTG9jYWxlU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmxhbmd1YWdlcyA9IHRoaXMubG9jYWxlU2VydmljZS5nZXRMYW5ndWFnZXMoKTtcbiAgICB0aGlzLmxvY2FsZVNlcnZpY2Uuc2V0QWN0aXZlTG9jYWxlKHRoaXMubG9jYWxlKTtcbiAgfVxuXG4gIG9uQ2hhbmdlTGFuZ3VhZ2UobGFuZ3VhZ2U6IExhbmd1YWdlSXRlbSkge1xuICAgIHRoaXMubG9jYWxlU2VydmljZS5zZXRBY3RpdmVMb2NhbGUobGFuZ3VhZ2UpO1xuICB9XG5cbiAgZ2V0IGxvY2FsZSgpOiBMYW5ndWFnZUl0ZW0ge1xuICAgIHJldHVybiB0aGlzLmxvY2FsZVNlcnZpY2UuZ2V0QWN0aXZlTG9jYWxlKCkgfHwgdGhpcy5sb2NhbGVTZXJ2aWNlLmdldERlZmF1bHRMb2NhbGUoKTtcbiAgfVxufVxuIl19
@@ -1,48 +0,0 @@
1
- import { Component, Input, Output, EventEmitter } from '@angular/core';
2
- import { FormGroup, FormControl, Validators } from '@angular/forms';
3
- import { DomSanitizer } from '@angular/platform-browser';
4
- export class LoginComponent {
5
- constructor(sanitizer) {
6
- this.sanitizer = sanitizer;
7
- this.title = '';
8
- this.logoImageUrl = './assets/images/logo.png';
9
- this.backgroundImageUrl = './assets/images/background.jpg';
10
- this.disabled = false;
11
- this.login = new EventEmitter();
12
- }
13
- ngOnInit() {
14
- this.initForm();
15
- }
16
- initForm() {
17
- this.formGroup = new FormGroup({
18
- username: new FormControl('', [Validators.required]),
19
- password: new FormControl('', [Validators.required])
20
- });
21
- }
22
- onSubmit() {
23
- if (this.formGroup.valid) {
24
- this.login.emit(this.formGroup.value);
25
- }
26
- }
27
- getBackgroundImageUrl() {
28
- return this.sanitizer.bypassSecurityTrustStyle(`url(${this.backgroundImageUrl})`);
29
- }
30
- }
31
- LoginComponent.decorators = [
32
- { type: Component, args: [{
33
- selector: 'mnl-login',
34
- 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>",
35
- styles: [".mnl-login-card{min-width:260px}.mnl-login-container{background-size:cover}.mnl-login-title{opacity:.6}"]
36
- },] }
37
- ];
38
- LoginComponent.ctorParameters = () => [
39
- { type: DomSanitizer }
40
- ];
41
- LoginComponent.propDecorators = {
42
- title: [{ type: Input }],
43
- logoImageUrl: [{ type: Input }],
44
- backgroundImageUrl: [{ type: Input }],
45
- disabled: [{ type: Input }],
46
- login: [{ type: Output }]
47
- };
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFcEUsT0FBTyxFQUFFLFlBQVksRUFBYSxNQUFNLDJCQUEyQixDQUFDO0FBTXBFLE1BQU0sT0FBTyxjQUFjO0lBbUJ6QixZQUFvQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBZDNDLFVBQUssR0FBRyxFQUFFLENBQUM7UUFHWCxpQkFBWSxHQUFHLDBCQUEwQixDQUFDO1FBRzFDLHVCQUFrQixHQUFHLGdDQUFnQyxDQUFDO1FBR3RELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFHakIsVUFBSyxHQUFJLElBQUksWUFBWSxFQUFhLENBQUM7SUFJdkMsQ0FBQztJQUNELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVPLFFBQVE7UUFDZCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksU0FBUyxDQUFDO1lBQzdCLFFBQVEsRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDcEQsUUFBUSxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUNyRCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUU7WUFDeEIsSUFBSSxDQUFDLEtBQUssQ0FBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN4QztJQUNILENBQUM7SUFDRCxxQkFBcUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHdCQUF3QixDQUFDLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixHQUFHLENBQUMsQ0FBQztJQUN0RixDQUFDOzs7WUE1Q0EsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxXQUFXO2dCQUNyQiw2OENBQXFDOzthQUV0Qzs7O1lBTFEsWUFBWTs7O29CQVVsQixLQUFLOzJCQUdMLEtBQUs7aUNBR0wsS0FBSzt1QkFHTCxLQUFLO29CQUdMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVXNlck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWwvdXNlci1tb2RlbCc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbW5sLWxvZ2luJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xvZ2luLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbG9naW4uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBMb2dpbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgZm9ybUdyb3VwOiBGb3JtR3JvdXA7XG5cbiAgQElucHV0KClcbiAgdGl0bGUgPSAnJztcblxuICBASW5wdXQoKVxuICBsb2dvSW1hZ2VVcmwgPSAnLi9hc3NldHMvaW1hZ2VzL2xvZ28ucG5nJztcblxuICBASW5wdXQoKVxuICBiYWNrZ3JvdW5kSW1hZ2VVcmwgPSAnLi9hc3NldHMvaW1hZ2VzL2JhY2tncm91bmQuanBnJztcblxuICBASW5wdXQoKVxuICBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKVxuICBsb2dpbiAgPSBuZXcgRXZlbnRFbWl0dGVyPFVzZXJNb2RlbD4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7XG5cbiAgfVxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmluaXRGb3JtKCk7XG4gIH1cblxuICBwcml2YXRlIGluaXRGb3JtKCkge1xuICAgIHRoaXMuZm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgICB1c2VybmFtZTogbmV3IEZvcm1Db250cm9sKCcnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pLFxuICAgICAgcGFzc3dvcmQ6IG5ldyBGb3JtQ29udHJvbCgnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKVxuICAgIH0pO1xuICB9XG4gIG9uU3VibWl0KCkge1xuICAgIGlmICh0aGlzLmZvcm1Hcm91cC52YWxpZCkge1xuICAgICAgdGhpcy5sb2dpbiAuZW1pdCh0aGlzLmZvcm1Hcm91cC52YWx1ZSk7XG4gICAgfVxuICB9XG4gIGdldEJhY2tncm91bmRJbWFnZVVybCgpOiBTYWZlU3R5bGUge1xuICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUoYHVybCgke3RoaXMuYmFja2dyb3VuZEltYWdlVXJsfSlgKTtcbn1cblxufVxuIl19
@@ -1,62 +0,0 @@
1
- import { Component, Input, Output, EventEmitter } from '@angular/core';
2
- export class MenuComponent {
3
- constructor() {
4
- this.menuClick = new EventEmitter();
5
- }
6
- onMenuClick(menu) {
7
- if (this.hasSubMenu(menu)) {
8
- this.openMenu(menu);
9
- this.onSubMenuClick(menu.subMenus[0], menu);
10
- }
11
- else {
12
- this.deSelectMenus(this.menuData);
13
- this.selectMenu(menu);
14
- this.menuClick.emit(menu);
15
- }
16
- }
17
- onSubMenuClick(subMenu, menu) {
18
- this.deSelectMenus(this.menuData);
19
- this.selectMenu(menu);
20
- this.selectMenu(subMenu);
21
- this.menuClick.emit(subMenu);
22
- }
23
- deSelectMenus(menus) {
24
- if (menus) {
25
- for (const menu of menus) {
26
- if (menu.selected) {
27
- menu.selected = false;
28
- }
29
- this.deSelectMenus(menu.subMenus);
30
- }
31
- }
32
- }
33
- selectMenu(menu) {
34
- if (menu) {
35
- menu.selected = true;
36
- }
37
- }
38
- hasSubMenu(menu) {
39
- return menu.subMenus && menu.subMenus.length > 0;
40
- }
41
- toggleMenu(menu, event) {
42
- menu.expanded = !menu.expanded;
43
- if (event) {
44
- event.stopPropagation();
45
- }
46
- }
47
- openMenu(menu) {
48
- menu.expanded = true;
49
- }
50
- }
51
- MenuComponent.decorators = [
52
- { type: Component, args: [{
53
- selector: 'mnl-menu',
54
- 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>",
55
- 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(0deg);margin-top:3px;margin-left:25px}.mnl-menu-button.mnl-rotated{transform:rotate(180deg)}"]
56
- },] }
57
- ];
58
- MenuComponent.propDecorators = {
59
- menuData: [{ type: Input }],
60
- menuClick: [{ type: Output }]
61
- };
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFRdkUsTUFBTSxPQUFPLGFBQWE7SUFMMUI7UUFVRSxjQUFTLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7SUFvRHpELENBQUM7SUFsREMsV0FBVyxDQUFDLElBQWU7UUFDekIsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDcEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQzdDO2FBQU07WUFDTCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNsQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxPQUFrQixFQUFFLElBQWU7UUFDaEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBa0I7UUFDOUIsSUFBSSxLQUFLLEVBQUU7WUFDVCxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRTtnQkFDeEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO29CQUNqQixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztpQkFDdkI7Z0JBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDbkM7U0FDRjtJQUNILENBQUM7SUFFTyxVQUFVLENBQUMsSUFBZTtRQUNoQyxJQUFJLElBQUksRUFBRTtZQUNSLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1NBQ3RCO0lBQ0gsQ0FBQztJQUVPLFVBQVUsQ0FBQyxJQUFlO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFlLEVBQUUsS0FBWTtRQUN0QyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUUvQixJQUFJLEtBQUssRUFBRTtZQUNULEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztTQUN6QjtJQUNILENBQUM7SUFFTyxRQUFRLENBQUMsSUFBZTtRQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztJQUN2QixDQUFDOzs7WUE3REYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxVQUFVO2dCQUNwQiwwdUNBQW9DOzthQUVyQzs7O3VCQUVFLEtBQUs7d0JBR0wsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNZW51TW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbC9tZW51LWRhdGEubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtbmwtbWVudScsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWVudS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBNZW51Q29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgbWVudURhdGE6IEFycmF5PE1lbnVNb2RlbD47XG5cbiAgQE91dHB1dCgpXG4gIG1lbnVDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBvbk1lbnVDbGljayhtZW51OiBNZW51TW9kZWwpIHtcbiAgICBpZiAodGhpcy5oYXNTdWJNZW51KG1lbnUpKSB7XG4gICAgICB0aGlzLm9wZW5NZW51KG1lbnUpO1xuICAgICAgdGhpcy5vblN1Yk1lbnVDbGljayhtZW51LnN1Yk1lbnVzWzBdLCBtZW51KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kZVNlbGVjdE1lbnVzKHRoaXMubWVudURhdGEpO1xuICAgICAgdGhpcy5zZWxlY3RNZW51KG1lbnUpO1xuICAgICAgdGhpcy5tZW51Q2xpY2suZW1pdChtZW51KTtcbiAgICB9XG4gIH1cblxuICBvblN1Yk1lbnVDbGljayhzdWJNZW51OiBNZW51TW9kZWwsIG1lbnU6IE1lbnVNb2RlbCkge1xuICAgIHRoaXMuZGVTZWxlY3RNZW51cyh0aGlzLm1lbnVEYXRhKTtcbiAgICB0aGlzLnNlbGVjdE1lbnUobWVudSk7XG4gICAgdGhpcy5zZWxlY3RNZW51KHN1Yk1lbnUpO1xuICAgIHRoaXMubWVudUNsaWNrLmVtaXQoc3ViTWVudSk7XG4gIH1cblxuICBkZVNlbGVjdE1lbnVzKG1lbnVzOiBNZW51TW9kZWxbXSkge1xuICAgIGlmIChtZW51cykge1xuICAgICAgZm9yIChjb25zdCBtZW51IG9mIG1lbnVzKSB7XG4gICAgICAgIGlmIChtZW51LnNlbGVjdGVkKSB7XG4gICAgICAgICAgbWVudS5zZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZGVTZWxlY3RNZW51cyhtZW51LnN1Yk1lbnVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNlbGVjdE1lbnUobWVudTogTWVudU1vZGVsKSB7XG4gICAgaWYgKG1lbnUpIHtcbiAgICAgIG1lbnUuc2VsZWN0ZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaGFzU3ViTWVudShtZW51OiBNZW51TW9kZWwpIHtcbiAgICByZXR1cm4gbWVudS5zdWJNZW51cyAmJiBtZW51LnN1Yk1lbnVzLmxlbmd0aCA+IDA7XG4gIH1cblxuICB0b2dnbGVNZW51KG1lbnU6IE1lbnVNb2RlbCwgZXZlbnQ6IEV2ZW50KSB7XG4gICAgbWVudS5leHBhbmRlZCA9ICFtZW51LmV4cGFuZGVkO1xuXG4gICAgaWYgKGV2ZW50KSB7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG9wZW5NZW51KG1lbnU6IE1lbnVNb2RlbCkge1xuICAgIG1lbnUuZXhwYW5kZWQgPSB0cnVlO1xuICB9XG59XG4iXX0=
@@ -1,35 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- export class ProfileComponent {
3
- constructor() {
4
- this.showDisplayName = true;
5
- this.userInitialClick = new EventEmitter();
6
- this.profileMenuClick = new EventEmitter();
7
- }
8
- onUserInitialClick(event) {
9
- this.userInitialClick.emit(event);
10
- }
11
- ngOnChanges(changes) {
12
- if (changes && changes.userProfileDetails && changes.userProfileDetails.currentValue
13
- && changes.userProfileDetails.currentValue.firstName && changes.userProfileDetails.currentValue.lastName
14
- && changes.userProfileDetails.currentValue.email) {
15
- this.hasUserDetails = true;
16
- }
17
- else {
18
- this.hasUserDetails = false;
19
- }
20
- }
21
- }
22
- ProfileComponent.decorators = [
23
- { type: Component, args: [{
24
- selector: 'mnl-user-profile',
25
- 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",
26
- styles: ["#mnl-initials-button{border-radius:20px}"]
27
- },] }
28
- ];
29
- ProfileComponent.propDecorators = {
30
- userProfileDetails: [{ type: Input }],
31
- showDisplayName: [{ type: Input }],
32
- userInitialClick: [{ type: Output }],
33
- profileMenuClick: [{ type: Output }]
34
- };
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvY29tcG9uZW50cy9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBUWpHLE1BQU0sT0FBTyxnQkFBZ0I7SUFMN0I7UUFVRSxvQkFBZSxHQUFHLElBQUksQ0FBQztRQUd2QixxQkFBZ0IsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUc5RCxxQkFBZ0IsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQWlCaEUsQ0FBQztJQWJDLGtCQUFrQixDQUFDLEtBQVU7UUFDM0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxrQkFBa0IsSUFBSSxPQUFPLENBQUMsa0JBQWtCLENBQUMsWUFBWTtlQUMvRSxPQUFPLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLFNBQVMsSUFBSSxPQUFPLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLFFBQVE7ZUFDckcsT0FBTyxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUU7WUFDaEQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7U0FDOUI7YUFBTTtZQUNMLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1NBQzdCO0lBQ0gsQ0FBQzs7O1lBaENGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1Qiw4cUJBQXVDOzthQUV4Qzs7O2lDQUVFLEtBQUs7OEJBR0wsS0FBSzsrQkFHTCxNQUFNOytCQUdOLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVc2VyTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbC91c2VyLW1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbW5sLXVzZXItcHJvZmlsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9maWxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHJvZmlsZS5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFByb2ZpbGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKVxuICB1c2VyUHJvZmlsZURldGFpbHM6IFVzZXJNb2RlbDtcblxuICBASW5wdXQoKVxuICBzaG93RGlzcGxheU5hbWUgPSB0cnVlO1xuXG4gIEBPdXRwdXQoKVxuICB1c2VySW5pdGlhbENsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIEBPdXRwdXQoKVxuICBwcm9maWxlTWVudUNsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGhhc1VzZXJEZXRhaWxzOiBib29sZWFuO1xuXG4gIG9uVXNlckluaXRpYWxDbGljayhldmVudDogYW55KSB7XG4gICAgdGhpcy51c2VySW5pdGlhbENsaWNrLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzICYmIGNoYW5nZXMudXNlclByb2ZpbGVEZXRhaWxzICYmIGNoYW5nZXMudXNlclByb2ZpbGVEZXRhaWxzLmN1cnJlbnRWYWx1ZVxuICAgICAgJiYgY2hhbmdlcy51c2VyUHJvZmlsZURldGFpbHMuY3VycmVudFZhbHVlLmZpcnN0TmFtZSAmJiBjaGFuZ2VzLnVzZXJQcm9maWxlRGV0YWlscy5jdXJyZW50VmFsdWUubGFzdE5hbWVcbiAgICAgICYmIGNoYW5nZXMudXNlclByb2ZpbGVEZXRhaWxzLmN1cnJlbnRWYWx1ZS5lbWFpbCkge1xuICAgICAgICB0aGlzLmhhc1VzZXJEZXRhaWxzID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5oYXNVc2VyRGV0YWlscyA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,31 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { MatButtonModule } from '@angular/material/button';
3
- import { MatListModule } from '@angular/material/list';
4
- import { MatIconModule } from '@angular/material/icon';
5
- import { MatInputModule } from '@angular/material/input';
6
- import { MatFormFieldModule } from '@angular/material/form-field';
7
- import { MatCardModule } from '@angular/material/card';
8
- import { FormsModule, ReactiveFormsModule } from '@angular/forms';
9
- import { MatMenuModule } from '@angular/material/menu';
10
- export function modules() {
11
- return [
12
- MatButtonModule,
13
- MatCardModule,
14
- MatFormFieldModule,
15
- MatIconModule,
16
- MatInputModule,
17
- MatListModule,
18
- FormsModule,
19
- ReactiveFormsModule,
20
- MatMenuModule,
21
- ];
22
- }
23
- export class MaterialModule {
24
- }
25
- MaterialModule.decorators = [
26
- { type: NgModule, args: [{
27
- imports: modules(),
28
- exports: modules()
29
- },] }
30
- ];
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL21hdGVyaWFsLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxNQUFNLFVBQVUsT0FBTztJQUNyQixPQUFPO1FBQ0wsZUFBZTtRQUNmLGFBQWE7UUFDYixrQkFBa0I7UUFDbEIsYUFBYTtRQUNiLGNBQWM7UUFDZCxhQUFhO1FBQ2IsV0FBVztRQUNYLG1CQUFtQjtRQUNuQixhQUFhO0tBQ2QsQ0FBQztBQUNKLENBQUM7QUFLRCxNQUFNLE9BQU8sY0FBYzs7O1lBSjFCLFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUUsT0FBTyxFQUFFO2dCQUNsQixPQUFPLEVBQUUsT0FBTyxFQUFFO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRMaXN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdCc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0Q2FyZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NhcmQnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XG5leHBvcnQgZnVuY3Rpb24gbW9kdWxlcygpIHtcbiAgcmV0dXJuIFtcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0Q2FyZE1vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBNYXRMaXN0TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgTWF0TWVudU1vZHVsZSxcbiAgXTtcbn1cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IG1vZHVsZXMoKSxcbiAgZXhwb3J0czogbW9kdWxlcygpXG59KVxuZXhwb3J0IGNsYXNzIE1hdGVyaWFsTW9kdWxlIHt9XG4iXX0=
@@ -1,19 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- import { AppConfigService } from '../services/app.config.service';
3
- export class AppConfigPipe {
4
- constructor(config) {
5
- this.config = config;
6
- }
7
- transform(value, defaultValue) {
8
- return this.config.get(value) || defaultValue || '';
9
- }
10
- }
11
- AppConfigPipe.decorators = [
12
- { type: Pipe, args: [{
13
- name: 'mnlAppConfig'
14
- },] }
15
- ];
16
- AppConfigPipe.ctorParameters = () => [
17
- { type: AppConfigService }
18
- ];
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWNvbmZpZy1waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL3BpcGVzL2FwcC1jb25maWctcGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUtsRSxNQUFNLE9BQU8sYUFBYTtJQUN0QixZQUFvQixNQUF3QjtRQUF4QixXQUFNLEdBQU4sTUFBTSxDQUFrQjtJQUFHLENBQUM7SUFFaEQsU0FBUyxDQUFDLEtBQWEsRUFBRSxZQUFrQjtRQUN2QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLFlBQVksSUFBSSxFQUFFLENBQUM7SUFDeEQsQ0FBQzs7O1lBUkosSUFBSSxTQUFDO2dCQUNGLElBQUksRUFBRSxjQUFjO2FBQ3ZCOzs7WUFKUSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXBwLmNvbmZpZy5zZXJ2aWNlJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICdtbmxBcHBDb25maWcnXG59KVxuZXhwb3J0IGNsYXNzIEFwcENvbmZpZ1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpZzogQXBwQ29uZmlnU2VydmljZSkge31cblxuICAgIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nLCBkZWZhdWx0VmFsdWU/OiBhbnkpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcuZ2V0KHZhbHVlKSB8fCBkZWZhdWx0VmFsdWUgfHwgJyc7XG4gICAgfVxufVxuIl19
@@ -1,43 +0,0 @@
1
- import { DatePipe } from '@angular/common';
2
- import { Pipe } from '@angular/core';
3
- import { formatDistance } from 'date-fns';
4
- import differenceInDays from 'date-fns/differenceInDays';
5
- import { AppConfigService } from '../services/app.config.service';
6
- import { UserProfileService } from '../services/user-profile.service';
7
- export class TimeAgoPipe {
8
- constructor(appConfigService, userProfileService) {
9
- this.appConfigService = appConfigService;
10
- this.userProfileService = userProfileService;
11
- this.defaultLocale = TimeAgoPipe.DEFAULT_LOCALE;
12
- this.defaultDateTimeFormat = TimeAgoPipe.DEFAULT_DATE_TIME_FORMAT;
13
- }
14
- transform(value, dateTimeFormat, locale) {
15
- if (value) {
16
- const currentLocale = this.userProfileService.getLocale();
17
- const currentDateTimeFormat = this.appConfigService.get('dateTimeFormat');
18
- const requiredLocale = locale || currentLocale || this.defaultLocale;
19
- const requiredDateTimeFormat = dateTimeFormat || currentDateTimeFormat || this.defaultDateTimeFormat;
20
- if (differenceInDays(new Date(), new Date(value)) > 7) {
21
- const datePipe = new DatePipe(requiredLocale);
22
- return datePipe.transform(value, requiredDateTimeFormat);
23
- }
24
- return formatDistance(new Date(value), new Date(), {
25
- includeSeconds: true,
26
- addSuffix: true,
27
- });
28
- }
29
- return '';
30
- }
31
- }
32
- TimeAgoPipe.DEFAULT_LOCALE = 'en-US';
33
- TimeAgoPipe.DEFAULT_DATE_TIME_FORMAT = 'dd/MM/yyyy HH:mm';
34
- TimeAgoPipe.decorators = [
35
- { type: Pipe, args: [{
36
- name: 'mnlTimeAgo',
37
- },] }
38
- ];
39
- TimeAgoPipe.ctorParameters = () => [
40
- { type: AppConfigService },
41
- { type: UserProfileService }
42
- ];
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1hZ28tcGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbW1vbnMvc3JjL2xpYi9waXBlcy90aW1lLWFnby1waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzFDLE9BQU8sZ0JBQWdCLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFLdEUsTUFBTSxPQUFPLFdBQVc7SUFPdEIsWUFDVSxnQkFBa0MsRUFDbEMsa0JBQXNDO1FBRHRDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUU5QyxJQUFJLENBQUMsYUFBYSxHQUFHLFdBQVcsQ0FBQyxjQUFjLENBQUM7UUFDaEQsSUFBSSxDQUFDLHFCQUFxQixHQUFHLFdBQVcsQ0FBQyx3QkFBd0IsQ0FBQztJQUNwRSxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQVcsRUFBRSxjQUF1QixFQUFFLE1BQWU7UUFDN0QsSUFBSSxLQUFLLEVBQUU7WUFDVCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDMUQsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUNyRCxnQkFBZ0IsQ0FDUCxDQUFDO1lBQ1osTUFBTSxjQUFjLEdBQUcsTUFBTSxJQUFJLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQ3JFLE1BQU0sc0JBQXNCLEdBQzFCLGNBQWMsSUFBSSxxQkFBcUIsSUFBSSxJQUFJLENBQUMscUJBQXFCLENBQUM7WUFDeEUsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNyRCxNQUFNLFFBQVEsR0FBYSxJQUFJLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDeEQsT0FBTyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxzQkFBc0IsQ0FBQyxDQUFDO2FBQzFEO1lBQ0QsT0FBTyxjQUFjLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsSUFBSSxJQUFJLEVBQUUsRUFBRTtnQkFDakQsY0FBYyxFQUFFLElBQUk7Z0JBQ3BCLFNBQVMsRUFBRSxJQUFJO2FBQ2hCLENBQUMsQ0FBQztTQUNKO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDOztBQWpDTSwwQkFBYyxHQUFHLE9BQU8sQ0FBQztBQUN6QixvQ0FBd0IsR0FBRyxrQkFBa0IsQ0FBQzs7WUFMdEQsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSxZQUFZO2FBQ25COzs7WUFMUSxnQkFBZ0I7WUFDaEIsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZm9ybWF0RGlzdGFuY2UgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgZGlmZmVyZW5jZUluRGF5cyBmcm9tICdkYXRlLWZucy9kaWZmZXJlbmNlSW5EYXlzJztcbmltcG9ydCB7IEFwcENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hcHAuY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgVXNlclByb2ZpbGVTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdXNlci1wcm9maWxlLnNlcnZpY2UnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdtbmxUaW1lQWdvJyxcbn0pXG5leHBvcnQgY2xhc3MgVGltZUFnb1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgc3RhdGljIERFRkFVTFRfTE9DQUxFID0gJ2VuLVVTJztcbiAgc3RhdGljIERFRkFVTFRfREFURV9USU1FX0ZPUk1BVCA9ICdkZC9NTS95eXl5IEhIOm1tJztcblxuICBkZWZhdWx0TG9jYWxlOiBzdHJpbmc7XG4gIGRlZmF1bHREYXRlVGltZUZvcm1hdDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYXBwQ29uZmlnU2VydmljZTogQXBwQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIHVzZXJQcm9maWxlU2VydmljZTogVXNlclByb2ZpbGVTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuZGVmYXVsdExvY2FsZSA9IFRpbWVBZ29QaXBlLkRFRkFVTFRfTE9DQUxFO1xuICAgIHRoaXMuZGVmYXVsdERhdGVUaW1lRm9ybWF0ID0gVGltZUFnb1BpcGUuREVGQVVMVF9EQVRFX1RJTUVfRk9STUFUO1xuICB9XG5cbiAgdHJhbnNmb3JtKHZhbHVlOiBEYXRlLCBkYXRlVGltZUZvcm1hdD86IHN0cmluZywgbG9jYWxlPzogc3RyaW5nKSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBjb25zdCBjdXJyZW50TG9jYWxlID0gdGhpcy51c2VyUHJvZmlsZVNlcnZpY2UuZ2V0TG9jYWxlKCk7XG4gICAgICBjb25zdCBjdXJyZW50RGF0ZVRpbWVGb3JtYXQgPSB0aGlzLmFwcENvbmZpZ1NlcnZpY2UuZ2V0KFxuICAgICAgICAnZGF0ZVRpbWVGb3JtYXQnXG4gICAgICApIGFzIHN0cmluZztcbiAgICAgIGNvbnN0IHJlcXVpcmVkTG9jYWxlID0gbG9jYWxlIHx8IGN1cnJlbnRMb2NhbGUgfHwgdGhpcy5kZWZhdWx0TG9jYWxlO1xuICAgICAgY29uc3QgcmVxdWlyZWREYXRlVGltZUZvcm1hdCA9XG4gICAgICAgIGRhdGVUaW1lRm9ybWF0IHx8IGN1cnJlbnREYXRlVGltZUZvcm1hdCB8fCB0aGlzLmRlZmF1bHREYXRlVGltZUZvcm1hdDtcbiAgICAgIGlmIChkaWZmZXJlbmNlSW5EYXlzKG5ldyBEYXRlKCksIG5ldyBEYXRlKHZhbHVlKSkgPiA3KSB7XG4gICAgICAgIGNvbnN0IGRhdGVQaXBlOiBEYXRlUGlwZSA9IG5ldyBEYXRlUGlwZShyZXF1aXJlZExvY2FsZSk7XG4gICAgICAgIHJldHVybiBkYXRlUGlwZS50cmFuc2Zvcm0odmFsdWUsIHJlcXVpcmVkRGF0ZVRpbWVGb3JtYXQpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGZvcm1hdERpc3RhbmNlKG5ldyBEYXRlKHZhbHVlKSwgbmV3IERhdGUoKSwge1xuICAgICAgICBpbmNsdWRlU2Vjb25kczogdHJ1ZSxcbiAgICAgICAgYWRkU3VmZml4OiB0cnVlLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxufVxuIl19
@@ -1,30 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- export class UserFullnamePipe {
3
- transform(value) {
4
- let fullName = '';
5
- if (!this.isEmptyObject(value)) {
6
- if (value.firstName && value.lastName) {
7
- fullName = value.firstName + ' ' + value.lastName;
8
- }
9
- else if (!value.firstName && value.lastName) {
10
- fullName = value.lastName;
11
- }
12
- else if (value.firstName && !value.lastName) {
13
- fullName = value.firstName;
14
- }
15
- else if (!value.firstName && !value.lastName) {
16
- fullName = value.email;
17
- }
18
- }
19
- return fullName;
20
- }
21
- isEmptyObject(data) {
22
- return (data && (Object.keys(data).length === 0));
23
- }
24
- }
25
- UserFullnamePipe.decorators = [
26
- { type: Pipe, args: [{
27
- name: 'mnlUserFullName'
28
- },] }
29
- ];
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1mdWxsbmFtZS1waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL3BpcGVzL3VzZXItZnVsbG5hbWUtcGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQU1wRCxNQUFNLE9BQU8sZ0JBQWdCO0lBRTNCLFNBQVMsQ0FBQyxLQUFnQjtRQUN4QixJQUFJLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDOUIsSUFBSSxLQUFLLENBQUMsU0FBUyxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUU7Z0JBQ3JDLFFBQVEsR0FBRyxLQUFLLENBQUMsU0FBUyxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDO2FBQ25EO2lCQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUU7Z0JBQzdDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDO2FBQzNCO2lCQUFNLElBQUksS0FBSyxDQUFDLFNBQVMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUU7Z0JBQzdDLFFBQVEsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO2FBQzVCO2lCQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTtnQkFDOUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7YUFDeEI7U0FDRjtRQUNELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxhQUFhLENBQUMsSUFBZTtRQUMzQixPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwRCxDQUFDOzs7WUF2QkYsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSxpQkFBaUI7YUFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVc2VyTW9kZWwgfSBmcm9tICcuLi9tb2RlbC91c2VyLW1vZGVsJztcblxuQFBpcGUoe1xuICBuYW1lOiAnbW5sVXNlckZ1bGxOYW1lJ1xufSlcbmV4cG9ydCBjbGFzcyBVc2VyRnVsbG5hbWVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG5cbiAgdHJhbnNmb3JtKHZhbHVlOiBVc2VyTW9kZWwpOiBhbnkge1xuICAgIGxldCBmdWxsTmFtZSA9ICcnO1xuICAgIGlmICghdGhpcy5pc0VtcHR5T2JqZWN0KHZhbHVlKSkge1xuICAgICAgaWYgKHZhbHVlLmZpcnN0TmFtZSAmJiB2YWx1ZS5sYXN0TmFtZSkge1xuICAgICAgICBmdWxsTmFtZSA9IHZhbHVlLmZpcnN0TmFtZSArICcgJyArIHZhbHVlLmxhc3ROYW1lO1xuICAgICAgfSBlbHNlIGlmICghdmFsdWUuZmlyc3ROYW1lICYmIHZhbHVlLmxhc3ROYW1lKSB7XG4gICAgICAgIGZ1bGxOYW1lID0gdmFsdWUubGFzdE5hbWU7XG4gICAgICB9IGVsc2UgaWYgKHZhbHVlLmZpcnN0TmFtZSAmJiAhdmFsdWUubGFzdE5hbWUpIHtcbiAgICAgICAgZnVsbE5hbWUgPSB2YWx1ZS5maXJzdE5hbWU7XG4gICAgICB9IGVsc2UgaWYgKCF2YWx1ZS5maXJzdE5hbWUgJiYgIXZhbHVlLmxhc3ROYW1lKSB7XG4gICAgICAgIGZ1bGxOYW1lID0gdmFsdWUuZW1haWw7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmdWxsTmFtZTtcbiAgfVxuXG4gIGlzRW1wdHlPYmplY3QoZGF0YTogVXNlck1vZGVsKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChkYXRhICYmIChPYmplY3Qua2V5cyhkYXRhKS5sZW5ndGggPT09IDApKTtcbiAgfVxufVxuIl19
@@ -1,44 +0,0 @@
1
- import { Pipe } from '@angular/core';
2
- export class UserInitialPipe {
3
- transform(value) {
4
- let userInitials = '';
5
- if (!this.isEmptyObject(value)) {
6
- if (value.firstName && value.lastName) {
7
- userInitials = value.firstName.substring(0, 1).toUpperCase() + value.lastName.substring(0, 1).toUpperCase();
8
- }
9
- else if (!value.firstName && value.lastName) {
10
- userInitials = this.getUserInitials(value.lastName);
11
- }
12
- else if (value.firstName && !value.lastName) {
13
- userInitials = this.getUserInitials(value.firstName);
14
- }
15
- else if (!value.firstName && !value.lastName) {
16
- userInitials = value.email.substring(0, 1).toUpperCase();
17
- }
18
- }
19
- return userInitials;
20
- }
21
- isEmptyObject(data) {
22
- return (data && (Object.keys(data).length === 0));
23
- }
24
- getUserInitials(name) {
25
- let userInitial = '';
26
- if (this.hasWhiteSpace(name.trim())) {
27
- const data = name.split(/\s+/);
28
- userInitial = data[0].substring(0, 1).toUpperCase() + data[1].substring(0, 1).toUpperCase();
29
- }
30
- else {
31
- userInitial = name.trim().substring(0, 1).toUpperCase();
32
- }
33
- return userInitial;
34
- }
35
- hasWhiteSpace(data) {
36
- return /\s/g.test(data);
37
- }
38
- }
39
- UserInitialPipe.decorators = [
40
- { type: Pipe, args: [{
41
- name: 'mnlUserInitialPipe'
42
- },] }
43
- ];
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1pbml0aWFscy1waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL3BpcGVzL3VzZXItaW5pdGlhbHMtcGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU1wRCxNQUFNLE9BQU8sZUFBZTtJQUUxQixTQUFTLENBQUMsS0FBZ0I7UUFDeEIsSUFBSSxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzlCLElBQUksS0FBSyxDQUFDLFNBQVMsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFO2dCQUNyQyxZQUFZLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUM3RztpQkFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFO2dCQUM3QyxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDckQ7aUJBQU0sSUFBSSxLQUFLLENBQUMsU0FBUyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTtnQkFDN0MsWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQ3REO2lCQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTtnQkFDOUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUMxRDtTQUNGO1FBQ0QsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQUVELGFBQWEsQ0FBQyxJQUFlO1FBQzNCLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxlQUFlLENBQUMsSUFBWTtRQUMxQixJQUFJLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDckIsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFO1lBQ25DLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDL0IsV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQzdGO2FBQU07WUFDTCxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDekQ7UUFDRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0lBRUQsYUFBYSxDQUFDLElBQVk7UUFDeEIsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUM7OztZQXRDRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLG9CQUFvQjthQUMzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGVUcmFuc2Zvcm0sIFBpcGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVzZXJNb2RlbCB9IGZyb20gJy4uL21vZGVsL3VzZXItbW9kZWwnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdtbmxVc2VySW5pdGlhbFBpcGUnXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJJbml0aWFsUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHRyYW5zZm9ybSh2YWx1ZTogVXNlck1vZGVsKSB7XG4gICAgbGV0IHVzZXJJbml0aWFscyA9ICcnO1xuICAgIGlmICghdGhpcy5pc0VtcHR5T2JqZWN0KHZhbHVlKSkge1xuICAgICAgaWYgKHZhbHVlLmZpcnN0TmFtZSAmJiB2YWx1ZS5sYXN0TmFtZSkge1xuICAgICAgICB1c2VySW5pdGlhbHMgPSB2YWx1ZS5maXJzdE5hbWUuc3Vic3RyaW5nKDAsIDEpLnRvVXBwZXJDYXNlKCkgKyB2YWx1ZS5sYXN0TmFtZS5zdWJzdHJpbmcoMCwgMSkudG9VcHBlckNhc2UoKTtcbiAgICAgIH0gZWxzZSBpZiAoIXZhbHVlLmZpcnN0TmFtZSAmJiB2YWx1ZS5sYXN0TmFtZSkge1xuICAgICAgICB1c2VySW5pdGlhbHMgPSB0aGlzLmdldFVzZXJJbml0aWFscyh2YWx1ZS5sYXN0TmFtZSk7XG4gICAgICB9IGVsc2UgaWYgKHZhbHVlLmZpcnN0TmFtZSAmJiAhdmFsdWUubGFzdE5hbWUpIHtcbiAgICAgICAgdXNlckluaXRpYWxzID0gdGhpcy5nZXRVc2VySW5pdGlhbHModmFsdWUuZmlyc3ROYW1lKTtcbiAgICAgIH0gZWxzZSBpZiAoIXZhbHVlLmZpcnN0TmFtZSAmJiAhdmFsdWUubGFzdE5hbWUpIHtcbiAgICAgICAgdXNlckluaXRpYWxzID0gdmFsdWUuZW1haWwuc3Vic3RyaW5nKDAsIDEpLnRvVXBwZXJDYXNlKCk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB1c2VySW5pdGlhbHM7XG4gIH1cblxuICBpc0VtcHR5T2JqZWN0KGRhdGE6IFVzZXJNb2RlbCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoZGF0YSAmJiAoT2JqZWN0LmtleXMoZGF0YSkubGVuZ3RoID09PSAwKSk7XG4gIH1cblxuICBnZXRVc2VySW5pdGlhbHMobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBsZXQgdXNlckluaXRpYWwgPSAnJztcbiAgICBpZiAodGhpcy5oYXNXaGl0ZVNwYWNlKG5hbWUudHJpbSgpKSkge1xuICAgICAgY29uc3QgZGF0YSA9IG5hbWUuc3BsaXQoL1xccysvKTtcbiAgICAgIHVzZXJJbml0aWFsID0gZGF0YVswXS5zdWJzdHJpbmcoMCwgMSkudG9VcHBlckNhc2UoKSArIGRhdGFbMV0uc3Vic3RyaW5nKDAsIDEpLnRvVXBwZXJDYXNlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHVzZXJJbml0aWFsID0gbmFtZS50cmltKCkuc3Vic3RyaW5nKDAsIDEpLnRvVXBwZXJDYXNlKCk7XG4gICAgfVxuICAgIHJldHVybiB1c2VySW5pdGlhbDtcbiAgfVxuXG4gIGhhc1doaXRlU3BhY2UoZGF0YTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIC9cXHMvZy50ZXN0KGRhdGEpO1xuICB9XG59XG4iXX0=
@@ -1,44 +0,0 @@
1
- import { __awaiter } from "tslib";
2
- import { Injectable } from '@angular/core';
3
- import { HttpClient } from '@angular/common/http';
4
- import { ObjectUtils } from '../utils/object-utils';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common/http";
7
- export class AppConfigService {
8
- constructor(http) {
9
- this.http = http;
10
- this.config = null;
11
- }
12
- /**
13
- * Use to get the data found in the file (config file)
14
- */
15
- get(key, defaultValue) {
16
- const result = ObjectUtils.getValue(this.config, key);
17
- return (result === undefined ? defaultValue : result);
18
- }
19
- /**
20
- * This method:
21
- * Loads "config.json" to get all variables (e.g.: 'app.config.json')
22
- */
23
- load() {
24
- return new Promise((resolve) => __awaiter(this, void 0, void 0, function* () {
25
- const configUrl = `assets/app.config.json`;
26
- yield this.http.get(configUrl).subscribe((data) => {
27
- this.config = Object.assign({}, this.config, data || {});
28
- resolve(this.config);
29
- }, () => {
30
- resolve(this.config);
31
- });
32
- }));
33
- }
34
- }
35
- AppConfigService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AppConfigService_Factory() { return new AppConfigService(i0.ɵɵinject(i1.HttpClient)); }, token: AppConfigService, providedIn: "root" });
36
- AppConfigService.decorators = [
37
- { type: Injectable, args: [{
38
- providedIn: 'root',
39
- },] }
40
- ];
41
- AppConfigService.ctorParameters = () => [
42
- { type: HttpClient }
43
- ];
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNvbmZpZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL3NlcnZpY2VzL2FwcC5jb25maWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFLcEQsTUFBTSxPQUFPLGdCQUFnQjtJQUczQixZQUFvQixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBRjVCLFdBQU0sR0FBVyxJQUFJLENBQUM7SUFFUyxDQUFDO0lBRXhDOztPQUVHO0lBQ0ksR0FBRyxDQUFJLEdBQVcsRUFBRSxZQUFrQjtRQUMzQyxNQUFNLE1BQU0sR0FBUSxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDM0QsT0FBTyxDQUFDLE1BQU0sS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFNLENBQUM7SUFDN0QsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQUk7UUFDRixPQUFPLElBQUksT0FBTyxDQUFDLENBQU8sT0FBTyxFQUFFLEVBQUU7WUFDbkMsTUFBTSxTQUFTLEdBQUcsd0JBQXdCLENBQUM7WUFDM0MsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLENBQ3RDLENBQUMsSUFBUyxFQUFFLEVBQUU7Z0JBQ1osSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztnQkFDekQsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN2QixDQUFDLEVBQ0QsR0FBRyxFQUFFO2dCQUNILE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDdkIsQ0FBQyxDQUNGLENBQUM7UUFDSixDQUFDLENBQUEsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7OztZQWpDRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQUxRLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JqZWN0VXRpbHMgfSBmcm9tICcuLi91dGlscy9vYmplY3QtdXRpbHMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQXBwQ29uZmlnU2VydmljZSB7XG4gIHByaXZhdGUgY29uZmlnOiBvYmplY3QgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkge31cblxuICAvKipcbiAgICogVXNlIHRvIGdldCB0aGUgZGF0YSBmb3VuZCBpbiB0aGUgZmlsZSAoY29uZmlnIGZpbGUpXG4gICAqL1xuICBwdWJsaWMgZ2V0PFQ+KGtleTogc3RyaW5nLCBkZWZhdWx0VmFsdWU/OiBhbnkpOiBUIHtcbiAgICBjb25zdCByZXN1bHQ6IGFueSA9IE9iamVjdFV0aWxzLmdldFZhbHVlKHRoaXMuY29uZmlnLCBrZXkpO1xuICAgIHJldHVybiAocmVzdWx0ID09PSB1bmRlZmluZWQgPyBkZWZhdWx0VmFsdWUgOiByZXN1bHQpIGFzIFQ7XG4gIH1cblxuICAvKipcbiAgICogVGhpcyBtZXRob2Q6XG4gICAqICAgTG9hZHMgXCJjb25maWcuanNvblwiIHRvIGdldCBhbGwgdmFyaWFibGVzIChlLmcuOiAnYXBwLmNvbmZpZy5qc29uJylcbiAgICovXG4gIGxvYWQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoYXN5bmMgKHJlc29sdmUpID0+IHtcbiAgICAgIGNvbnN0IGNvbmZpZ1VybCA9IGBhc3NldHMvYXBwLmNvbmZpZy5qc29uYDtcbiAgICAgIGF3YWl0IHRoaXMuaHR0cC5nZXQoY29uZmlnVXJsKS5zdWJzY3JpYmUoXG4gICAgICAgIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICB0aGlzLmNvbmZpZyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuY29uZmlnLCBkYXRhIHx8IHt9KTtcbiAgICAgICAgICByZXNvbHZlKHRoaXMuY29uZmlnKTtcbiAgICAgICAgfSxcbiAgICAgICAgKCkgPT4ge1xuICAgICAgICAgIHJlc29sdmUodGhpcy5jb25maWcpO1xuICAgICAgICB9XG4gICAgICApO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,17 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class LocalStorageService {
4
- set(key, value) {
5
- localStorage.setItem(key, value);
6
- }
7
- get(key) {
8
- return localStorage.getItem(key);
9
- }
10
- }
11
- LocalStorageService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocalStorageService_Factory() { return new LocalStorageService(); }, token: LocalStorageService, providedIn: "root" });
12
- LocalStorageService.decorators = [
13
- { type: Injectable, args: [{
14
- providedIn: 'root'
15
- },] }
16
- ];
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtc3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy9zcmMvbGliL3NlcnZpY2VzL2xvY2FsLXN0b3JhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUkzQyxNQUFNLE9BQU8sbUJBQW1CO0lBQzVCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSztRQUNWLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFDRCxHQUFHLENBQUMsR0FBRztRQUNILE9BQU8sWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNyQyxDQUFDOzs7O1lBVEosVUFBVSxTQUFDO2dCQUNSLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xuICB9KVxuZXhwb3J0IGNsYXNzIExvY2FsU3RvcmFnZVNlcnZpY2Uge1xuICAgIHNldChrZXksIHZhbHVlKSB7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdmFsdWUpO1xuICAgIH1cbiAgICBnZXQoa2V5KTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSk7XG4gICAgfVxufVxuIl19
@@ -1,94 +0,0 @@
1
- import { Injectable, Inject } from '@angular/core';
2
- import { AppConfigService } from './app.config.service';
3
- import { TranslateService } from '@ngx-translate/core';
4
- import { UserProfileService } from './user-profile.service';
5
- import { DOCUMENT } from '@angular/common';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "./app.config.service";
8
- import * as i2 from "@ngx-translate/core";
9
- import * as i3 from "./user-profile.service";
10
- import * as i4 from "@angular/common";
11
- /** @dynamic */
12
- export class LocaleService {
13
- constructor(config, translate, userProfileService, document) {
14
- this.config = config;
15
- this.translate = translate;
16
- this.userProfileService = userProfileService;
17
- this.document = document;
18
- this.languages = [];
19
- this.initUserLanguage();
20
- }
21
- initUserLanguage() {
22
- this.setActiveLocale(this.getActiveLocale() || this.getDefaultLocale());
23
- }
24
- setTextOrientation(direction) {
25
- document.body.setAttribute('dir', direction);
26
- }
27
- getTextOrientation() {
28
- return document.body.getAttribute('dir');
29
- }
30
- getLanguages() {
31
- this.languages = this.config.get('languages');
32
- if (!this.languages) {
33
- this.languages = [
34
- {
35
- key: 'fr',
36
- label: 'French',
37
- direction: 'ltr',
38
- },
39
- {
40
- key: 'de',
41
- label: 'German',
42
- direction: 'ltr',
43
- },
44
- {
45
- key: 'en',
46
- label: 'English',
47
- direction: 'ltr',
48
- },
49
- {
50
- key: 'ar',
51
- label: 'Arabic',
52
- direction: 'rtl',
53
- },
54
- ];
55
- }
56
- return this.languages;
57
- }
58
- getDefaultLocale() {
59
- this.locale = this.userProfileService.getLocale();
60
- if (!this.locale) {
61
- this.locale = this.config.get('locale')
62
- ? this.config.get('locale')
63
- : this.translate.getBrowserLang()
64
- ? this.translate.getBrowserLang()
65
- : 'en';
66
- }
67
- return this.getLanguages().find((e) => e.key === this.locale);
68
- }
69
- getActiveLocale() {
70
- if (this.userProfileService.getLocale()) {
71
- return this.getLanguages().find((e) => e.key === this.userProfileService.getLocale());
72
- }
73
- }
74
- setActiveLocale(locale) {
75
- if (locale) {
76
- this.translate.use(locale.key);
77
- this.setTextOrientation(locale.direction);
78
- this.userProfileService.setLocale(locale.key);
79
- }
80
- }
81
- }
82
- LocaleService.ɵprov = i0.ɵɵdefineInjectable({ factory: function LocaleService_Factory() { return new LocaleService(i0.ɵɵinject(i1.AppConfigService), i0.ɵɵinject(i2.TranslateService), i0.ɵɵinject(i3.UserProfileService), i0.ɵɵinject(i4.DOCUMENT)); }, token: LocaleService, providedIn: "root" });
83
- LocaleService.decorators = [
84
- { type: Injectable, args: [{
85
- providedIn: 'root',
86
- },] }
87
- ];
88
- LocaleService.ctorParameters = () => [
89
- { type: AppConfigService },
90
- { type: TranslateService },
91
- { type: UserProfileService },
92
- { type: Document, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
93
- ];
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zL3NyYy9saWIvc2VydmljZXMvbG9jYWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7QUFHM0MsZUFBZTtBQUlmLE1BQU0sT0FBTyxhQUFhO0lBR3hCLFlBQ1UsTUFBd0IsRUFDeEIsU0FBMkIsRUFDM0Isa0JBQXNDLEVBQ3BCLFFBQWtCO1FBSHBDLFdBQU0sR0FBTixNQUFNLENBQWtCO1FBQ3hCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDcEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUw5QyxjQUFTLEdBQXdCLEVBQUUsQ0FBQztRQU9sQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsa0JBQWtCLENBQUMsU0FBUztRQUMxQixRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNuQixJQUFJLENBQUMsU0FBUyxHQUFHO2dCQUNmO29CQUNFLEdBQUcsRUFBRSxJQUFJO29CQUNULEtBQUssRUFBRSxRQUFRO29CQUNmLFNBQVMsRUFBRSxLQUFLO2lCQUNqQjtnQkFDRDtvQkFDRSxHQUFHLEVBQUUsSUFBSTtvQkFDVCxLQUFLLEVBQUUsUUFBUTtvQkFDZixTQUFTLEVBQUUsS0FBSztpQkFDakI7Z0JBQ0Q7b0JBQ0UsR0FBRyxFQUFFLElBQUk7b0JBQ1QsS0FBSyxFQUFFLFNBQVM7b0JBQ2hCLFNBQVMsRUFBRSxLQUFLO2lCQUNqQjtnQkFDRDtvQkFDRSxHQUFHLEVBQUUsSUFBSTtvQkFDVCxLQUFLLEVBQUUsUUFBUTtvQkFDZixTQUFTLEVBQUUsS0FBSztpQkFDakI7YUFDRixDQUFDO1NBQ0g7UUFDRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUNELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2xELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO2dCQUNyQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO2dCQUMzQixDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLEVBQUU7b0JBQ2pDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRTtvQkFDakMsQ0FBQyxDQUFDLElBQUksQ0FBQztTQUNWO1FBQ0QsT0FBTyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQ3ZDLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FDN0IsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxDQUNyRCxDQUFDO1NBQ0g7SUFDSCxDQUFDO0lBRUQsZUFBZSxDQUFDLE1BQW9CO1FBQ2xDLElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQy9CLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDMUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDL0M7SUFDSCxDQUFDOzs7O1lBakZGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7O1lBVFEsZ0JBQWdCO1lBQ2hCLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFlYSxRQUFRLHVCQUEzQyxNQUFNLFNBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcHBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9hcHAuY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgVXNlclByb2ZpbGVTZXJ2aWNlIH0gZnJvbSAnLi91c2VyLXByb2ZpbGUuc2VydmljZSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEaXJlY3Rpb24gfSBmcm9tICdAYW5ndWxhci9jZGsvYmlkaSc7XG5cbi8qKiBAZHluYW1pYyAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIExvY2FsZVNlcnZpY2Uge1xuICBsb2NhbGU6IHN0cmluZztcbiAgbGFuZ3VhZ2VzOiBBcnJheTxMYW5ndWFnZUl0ZW0+ID0gW107XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY29uZmlnOiBBcHBDb25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgdXNlclByb2ZpbGVTZXJ2aWNlOiBVc2VyUHJvZmlsZVNlcnZpY2UsXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogRG9jdW1lbnRcbiAgKSB7XG4gICAgdGhpcy5pbml0VXNlckxhbmd1YWdlKCk7XG4gIH1cblxuICBpbml0VXNlckxhbmd1YWdlKCkge1xuICAgIHRoaXMuc2V0QWN0aXZlTG9jYWxlKHRoaXMuZ2V0QWN0aXZlTG9jYWxlKCkgfHwgdGhpcy5nZXREZWZhdWx0TG9jYWxlKCkpO1xuICB9XG5cbiAgc2V0VGV4dE9yaWVudGF0aW9uKGRpcmVjdGlvbikge1xuICAgIGRvY3VtZW50LmJvZHkuc2V0QXR0cmlidXRlKCdkaXInLCBkaXJlY3Rpb24pO1xuICB9XG5cbiAgZ2V0VGV4dE9yaWVudGF0aW9uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGRvY3VtZW50LmJvZHkuZ2V0QXR0cmlidXRlKCdkaXInKTtcbiAgfVxuXG4gIGdldExhbmd1YWdlcygpOiBBcnJheTxMYW5ndWFnZUl0ZW0+IHtcbiAgICB0aGlzLmxhbmd1YWdlcyA9IHRoaXMuY29uZmlnLmdldCgnbGFuZ3VhZ2VzJyk7XG4gICAgaWYgKCF0aGlzLmxhbmd1YWdlcykge1xuICAgICAgdGhpcy5sYW5ndWFnZXMgPSBbXG4gICAgICAgIHtcbiAgICAgICAgICBrZXk6ICdmcicsXG4gICAgICAgICAgbGFiZWw6ICdGcmVuY2gnLFxuICAgICAgICAgIGRpcmVjdGlvbjogJ2x0cicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBrZXk6ICdkZScsXG4gICAgICAgICAgbGFiZWw6ICdHZXJtYW4nLFxuICAgICAgICAgIGRpcmVjdGlvbjogJ2x0cicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBrZXk6ICdlbicsXG4gICAgICAgICAgbGFiZWw6ICdFbmdsaXNoJyxcbiAgICAgICAgICBkaXJlY3Rpb246ICdsdHInLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAga2V5OiAnYXInLFxuICAgICAgICAgIGxhYmVsOiAnQXJhYmljJyxcbiAgICAgICAgICBkaXJlY3Rpb246ICdydGwnLFxuICAgICAgICB9LFxuICAgICAgXTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubGFuZ3VhZ2VzO1xuICB9XG4gIGdldERlZmF1bHRMb2NhbGUoKTogTGFuZ3VhZ2VJdGVtIHtcbiAgICB0aGlzLmxvY2FsZSA9IHRoaXMudXNlclByb2ZpbGVTZXJ2aWNlLmdldExvY2FsZSgpO1xuICAgIGlmICghdGhpcy5sb2NhbGUpIHtcbiAgICAgIHRoaXMubG9jYWxlID0gdGhpcy5jb25maWcuZ2V0KCdsb2NhbGUnKVxuICAgICAgICA/IHRoaXMuY29uZmlnLmdldCgnbG9jYWxlJylcbiAgICAgICAgOiB0aGlzLnRyYW5zbGF0ZS5nZXRCcm93c2VyTGFuZygpXG4gICAgICAgID8gdGhpcy50cmFuc2xhdGUuZ2V0QnJvd3NlckxhbmcoKVxuICAgICAgICA6ICdlbic7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmdldExhbmd1YWdlcygpLmZpbmQoKGUpID0+IGUua2V5ID09PSB0aGlzLmxvY2FsZSk7XG4gIH1cblxuICBnZXRBY3RpdmVMb2NhbGUoKTogTGFuZ3VhZ2VJdGVtIHtcbiAgICBpZiAodGhpcy51c2VyUHJvZmlsZVNlcnZpY2UuZ2V0TG9jYWxlKCkpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldExhbmd1YWdlcygpLmZpbmQoXG4gICAgICAgIChlKSA9PiBlLmtleSA9PT0gdGhpcy51c2VyUHJvZmlsZVNlcnZpY2UuZ2V0TG9jYWxlKClcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgc2V0QWN0aXZlTG9jYWxlKGxvY2FsZTogTGFuZ3VhZ2VJdGVtKSB7XG4gICAgaWYgKGxvY2FsZSkge1xuICAgICAgdGhpcy50cmFuc2xhdGUudXNlKGxvY2FsZS5rZXkpO1xuICAgICAgdGhpcy5zZXRUZXh0T3JpZW50YXRpb24obG9jYWxlLmRpcmVjdGlvbik7XG4gICAgICB0aGlzLnVzZXJQcm9maWxlU2VydmljZS5zZXRMb2NhbGUobG9jYWxlLmtleSk7XG4gICAgfVxuICB9XG59XG5leHBvcnQgaW50ZXJmYWNlIExhbmd1YWdlSXRlbSB7XG4gIGtleTogc3RyaW5nO1xuICBsYWJlbDogc3RyaW5nO1xuICBkaXJlY3Rpb24/OiBEaXJlY3Rpb247XG59XG4iXX0=