@rxap/layout 15.0.0 → 16.0.0-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/{esm2020 → esm2022}/lib/footer/footer.component.mjs +10 -9
  2. package/esm2022/lib/footer/footer.component.module.mjs +30 -0
  3. package/esm2022/lib/footer.directive.mjs +54 -0
  4. package/{esm2020 → esm2022}/lib/header/apps-button/apps-button.component.mjs +15 -14
  5. package/esm2022/lib/header/apps-button/apps-button.component.module.mjs +46 -0
  6. package/esm2022/lib/header/header.component.mjs +131 -0
  7. package/esm2022/lib/header/header.component.module.mjs +70 -0
  8. package/esm2022/lib/header/language-selector/language-selector.component.mjs +113 -0
  9. package/{esm2020 → esm2022}/lib/header/language-selector/language-selector.component.module.mjs +8 -7
  10. package/esm2022/lib/header/navigation-progress-bar/navigation-progress-bar.component.mjs +34 -0
  11. package/esm2022/lib/header/navigation-progress-bar/navigation-progress-bar.component.module.mjs +26 -0
  12. package/esm2022/lib/header/reset-button/reset-button.component.mjs +28 -0
  13. package/esm2022/lib/header/reset-button/reset-button.component.module.mjs +26 -0
  14. package/esm2022/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.mjs +45 -0
  15. package/{esm2020 → esm2022}/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.module.mjs +8 -7
  16. package/esm2022/lib/header/sign-out/sign-out.component.mjs +32 -0
  17. package/esm2022/lib/header/sign-out/sign-out.component.module.mjs +30 -0
  18. package/{esm2020 → esm2022}/lib/header/user-profile-icon/user-profile-icon.component.mjs +21 -20
  19. package/esm2022/lib/header/user-profile-icon/user-profile-icon.component.module.mjs +38 -0
  20. package/esm2022/lib/layout/layout.component.mjs +79 -0
  21. package/esm2022/lib/layout/layout.component.module.mjs +70 -0
  22. package/esm2022/lib/layout/layout.component.service.mjs +44 -0
  23. package/esm2022/lib/navigation/navigation-item/navigation-item.component.mjs +287 -0
  24. package/esm2022/lib/navigation/navigation.component.mjs +131 -0
  25. package/{esm2020 → esm2022}/lib/navigation/navigation.component.module.mjs +16 -15
  26. package/esm2022/lib/navigation/navigation.service.mjs +144 -0
  27. package/esm2022/lib/navigation/replace-router-paths.pipe.mjs +36 -0
  28. package/esm2022/lib/navigation/replace-router-paths.service.mjs +16 -0
  29. package/esm2022/lib/sidenav/sidenav-footer.directive.mjs +20 -0
  30. package/esm2022/lib/sidenav/sidenav-header.directive.mjs +20 -0
  31. package/esm2022/lib/sidenav/sidenav.component.mjs +121 -0
  32. package/esm2022/lib/sidenav/sidenav.component.module.mjs +44 -0
  33. package/esm2022/lib/sidenav/sidenav.component.service.mjs +23 -0
  34. package/esm2022/lib/sidenav/version/version.component.mjs +63 -0
  35. package/{esm2020 → esm2022}/lib/sidenav/version/version.component.module.mjs +7 -6
  36. package/esm2022/lib/sidenav-content/sidenav-content.component.mjs +46 -0
  37. package/{esm2020 → esm2022}/lib/sidenav-content/sidenav-content.component.module.mjs +7 -6
  38. package/esm2022/lib/sidenav-content/sidenav-content.component.service.mjs +37 -0
  39. package/esm2022/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.mjs +51 -0
  40. package/{esm2020 → esm2022}/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.module.mjs +8 -7
  41. package/esm2022/lib/window-container-sidenav/window-container-sidenav.component.mjs +74 -0
  42. package/{esm2020 → esm2022}/lib/window-container-sidenav/window-container-sidenav.component.module.mjs +8 -7
  43. package/{fesm2020 → fesm2022}/rxap-layout.mjs +436 -437
  44. package/fesm2022/rxap-layout.mjs.map +1 -0
  45. package/lib/header/header.component.d.ts +1 -1
  46. package/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.d.ts +1 -1
  47. package/lib/navigation/navigation-item/navigation-item.component.d.ts +1 -1
  48. package/lib/navigation/navigation-item.d.ts +2 -2
  49. package/lib/navigation/navigation.component.d.ts +1 -1
  50. package/lib/sidenav-content/sidenav-content.component.d.ts +1 -1
  51. package/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.d.ts +1 -1
  52. package/package.json +26 -32
  53. package/esm2020/lib/footer/footer.component.module.mjs +0 -29
  54. package/esm2020/lib/footer.directive.mjs +0 -52
  55. package/esm2020/lib/header/apps-button/apps-button.component.module.mjs +0 -45
  56. package/esm2020/lib/header/header.component.mjs +0 -130
  57. package/esm2020/lib/header/header.component.module.mjs +0 -69
  58. package/esm2020/lib/header/language-selector/language-selector.component.mjs +0 -111
  59. package/esm2020/lib/header/navigation-progress-bar/navigation-progress-bar.component.mjs +0 -33
  60. package/esm2020/lib/header/navigation-progress-bar/navigation-progress-bar.component.module.mjs +0 -25
  61. package/esm2020/lib/header/reset-button/reset-button.component.mjs +0 -27
  62. package/esm2020/lib/header/reset-button/reset-button.component.module.mjs +0 -25
  63. package/esm2020/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.mjs +0 -44
  64. package/esm2020/lib/header/sign-out/sign-out.component.mjs +0 -31
  65. package/esm2020/lib/header/sign-out/sign-out.component.module.mjs +0 -29
  66. package/esm2020/lib/header/user-profile-icon/user-profile-icon.component.module.mjs +0 -37
  67. package/esm2020/lib/layout/layout.component.mjs +0 -78
  68. package/esm2020/lib/layout/layout.component.module.mjs +0 -69
  69. package/esm2020/lib/layout/layout.component.service.mjs +0 -43
  70. package/esm2020/lib/navigation/navigation-item/navigation-item.component.mjs +0 -286
  71. package/esm2020/lib/navigation/navigation.component.mjs +0 -130
  72. package/esm2020/lib/navigation/navigation.service.mjs +0 -143
  73. package/esm2020/lib/navigation/replace-router-paths.pipe.mjs +0 -34
  74. package/esm2020/lib/navigation/replace-router-paths.service.mjs +0 -15
  75. package/esm2020/lib/sidenav/sidenav-footer.directive.mjs +0 -19
  76. package/esm2020/lib/sidenav/sidenav-header.directive.mjs +0 -19
  77. package/esm2020/lib/sidenav/sidenav.component.mjs +0 -120
  78. package/esm2020/lib/sidenav/sidenav.component.module.mjs +0 -43
  79. package/esm2020/lib/sidenav/sidenav.component.service.mjs +0 -22
  80. package/esm2020/lib/sidenav/version/version.component.mjs +0 -62
  81. package/esm2020/lib/sidenav-content/sidenav-content.component.mjs +0 -45
  82. package/esm2020/lib/sidenav-content/sidenav-content.component.service.mjs +0 -36
  83. package/esm2020/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.mjs +0 -50
  84. package/esm2020/lib/window-container-sidenav/window-container-sidenav.component.mjs +0 -73
  85. package/fesm2015/rxap-layout.mjs +0 -2543
  86. package/fesm2015/rxap-layout.mjs.map +0 -1
  87. package/fesm2020/rxap-layout.mjs.map +0 -1
  88. /package/{esm2020 → esm2022}/index.mjs +0 -0
  89. /package/{esm2020 → esm2022}/lib/navigation/navigation-item.mjs +0 -0
  90. /package/{esm2020 → esm2022}/lib/tokens.mjs +0 -0
  91. /package/{esm2020 → esm2022}/lib/types.mjs +0 -0
  92. /package/{esm2020 → esm2022}/rxap-layout.mjs +0 -0
@@ -30,20 +30,21 @@ function FooterComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
30
30
  const portals_r1 = ctx.$implicit;
31
31
  i0.ɵɵproperty("ngIf", portals_r1.length);
32
32
  } }
33
- export class FooterComponent {
33
+ class FooterComponent {
34
34
  constructor(footerService) {
35
35
  this.footerService = footerService;
36
36
  }
37
+ static { this.ɵfac = function FooterComponent_Factory(t) { return new (t || FooterComponent)(i0.ɵɵdirectiveInject(i1.FooterService)); }; }
38
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FooterComponent, selectors: [["rxap-footer"]], decls: 2, vars: 3, consts: [[3, "ngIf"], ["class", "footer mat-elevation-z1", 4, "ngIf"], [1, "footer", "mat-elevation-z1"], [4, "ngFor", "ngForOf"], [3, "cdkPortalOutlet"]], template: function FooterComponent_Template(rf, ctx) { if (rf & 1) {
39
+ i0.ɵɵtemplate(0, FooterComponent_ng_template_0_Template, 1, 1, "ng-template", 0);
40
+ i0.ɵɵpipe(1, "async");
41
+ } if (rf & 2) {
42
+ i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(1, 1, ctx.footerService.portals$));
43
+ } }, dependencies: [i2.MatToolbar, i2.MatToolbarRow, i3.NgForOf, i3.NgIf, i4.CdkPortalOutlet, i3.AsyncPipe], changeDetection: 0 }); }
37
44
  }
38
- FooterComponent.ɵfac = function FooterComponent_Factory(t) { return new (t || FooterComponent)(i0.ɵɵdirectiveInject(i1.FooterService)); };
39
- FooterComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FooterComponent, selectors: [["rxap-footer"]], decls: 2, vars: 3, consts: [[3, "ngIf"], ["class", "footer mat-elevation-z1", 4, "ngIf"], [1, "footer", "mat-elevation-z1"], [4, "ngFor", "ngForOf"], [3, "cdkPortalOutlet"]], template: function FooterComponent_Template(rf, ctx) { if (rf & 1) {
40
- i0.ɵɵtemplate(0, FooterComponent_ng_template_0_Template, 1, 1, "ng-template", 0);
41
- i0.ɵɵpipe(1, "async");
42
- } if (rf & 2) {
43
- i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(1, 1, ctx.footerService.portals$));
44
- } }, dependencies: [i2.MatToolbar, i2.MatToolbarRow, i3.NgForOf, i3.NgIf, i4.CdkPortalOutlet, i3.AsyncPipe], changeDetection: 0 });
45
+ export { FooterComponent };
45
46
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FooterComponent, [{
46
47
  type: Component,
47
48
  args: [{ selector: 'rxap-footer', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template [ngIf]=\"footerService.portals$ | async\" let-portals>\n <mat-toolbar *ngIf=\"portals.length\" class=\"footer mat-elevation-z1\">\n <mat-toolbar-row *ngFor=\"let portal of portals\">\n <ng-template [cdkPortalOutlet]=\"portal\"></ng-template>\n </mat-toolbar-row>\n </mat-toolbar>\n</ng-template>\n" }]
48
49
  }], function () { return [{ type: i1.FooterService }]; }, null); })();
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbGF5b3V0L3NyYy9saWIvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xheW91dC9zcmMvbGliL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCx1QkFBdUIsRUFDeEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7OztJQ0YzQyx1Q0FBZ0Q7SUFDOUMsOEhBQXNEO0lBQ3hELGlCQUFrQjs7O0lBREgsZUFBMEI7SUFBMUIsMkNBQTBCOzs7SUFGM0Msc0NBQW9FO0lBQ2xFLG9IQUVrQjtJQUNwQixpQkFBYzs7O0lBSHdCLGVBQVU7SUFBVixvQ0FBVTs7O0lBRGhELDhGQUljOzs7SUFKQSx3Q0FBb0I7O0FEV3BDLE1BQU0sT0FBTyxlQUFlO0lBRTFCLFlBQ2tCLGFBQTRCO1FBQTVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQzNDLENBQUM7OzhFQUpPLGVBQWU7a0VBQWYsZUFBZTtRQ1o1QixnRkFNYzs7O1FBTkQsdUVBQXVDOzt1RkRZdkMsZUFBZTtjQU4zQixTQUFTOzJCQUNTLGFBQWEsbUJBR2IsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3lcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb290ZXJTZXJ2aWNlIH0gZnJvbSAnQHJ4YXAvc2VydmljZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICAgICAgICAncnhhcC1mb290ZXInLFxuICB0ZW1wbGF0ZVVybDogICAgICcuL2Zvb3Rlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogICAgICAgWyAnLi9mb290ZXIuY29tcG9uZW50LnNjc3MnIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEZvb3RlckNvbXBvbmVudCB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGZvb3RlclNlcnZpY2U6IEZvb3RlclNlcnZpY2VcbiAgKSB7fVxuXG59XG4iLCI8bmctdGVtcGxhdGUgW25nSWZdPVwiZm9vdGVyU2VydmljZS5wb3J0YWxzJCB8IGFzeW5jXCIgbGV0LXBvcnRhbHM+XG4gIDxtYXQtdG9vbGJhciAqbmdJZj1cInBvcnRhbHMubGVuZ3RoXCIgY2xhc3M9XCJmb290ZXIgbWF0LWVsZXZhdGlvbi16MVwiPlxuICAgIDxtYXQtdG9vbGJhci1yb3cgKm5nRm9yPVwibGV0IHBvcnRhbCBvZiBwb3J0YWxzXCI+XG4gICAgICA8bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJwb3J0YWxcIj48L25nLXRlbXBsYXRlPlxuICAgIDwvbWF0LXRvb2xiYXItcm93PlxuICA8L21hdC10b29sYmFyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbGF5b3V0L3NyYy9saWIvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xheW91dC9zcmMvbGliL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCx1QkFBdUIsRUFDeEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7OztJQ0YzQyx1Q0FBZ0Q7SUFDOUMsOEhBQXNEO0lBQ3hELGlCQUFrQjs7O0lBREgsZUFBMEI7SUFBMUIsMkNBQTBCOzs7SUFGM0Msc0NBQW9FO0lBQ2xFLG9IQUVrQjtJQUNwQixpQkFBYzs7O0lBSHdCLGVBQVU7SUFBVixvQ0FBVTs7O0lBRGhELDhGQUljOzs7SUFKQSx3Q0FBb0I7O0FES3BDLE1BTWEsZUFBZTtJQUUxQixZQUNrQixhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtJQUMzQyxDQUFDO2dGQUpPLGVBQWU7b0VBQWYsZUFBZTtZQ1o1QixnRkFNYzs7O1lBTkQsdUVBQXVDOzs7U0RZdkMsZUFBZTt1RkFBZixlQUFlO2NBTjNCLFNBQVM7MkJBQ1MsYUFBYSxtQkFHYix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvb3RlclNlcnZpY2UgfSBmcm9tICdAcnhhcC9zZXJ2aWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogICAgICAgICdyeGFwLWZvb3RlcicsXG4gIHRlbXBsYXRlVXJsOiAgICAgJy4vZm9vdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiAgICAgICBbICcuL2Zvb3Rlci5jb21wb25lbnQuc2NzcycgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRm9vdGVyQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgZm9vdGVyU2VydmljZTogRm9vdGVyU2VydmljZVxuICApIHt9XG5cbn1cbiIsIjxuZy10ZW1wbGF0ZSBbbmdJZl09XCJmb290ZXJTZXJ2aWNlLnBvcnRhbHMkIHwgYXN5bmNcIiBsZXQtcG9ydGFscz5cbiAgPG1hdC10b29sYmFyICpuZ0lmPVwicG9ydGFscy5sZW5ndGhcIiBjbGFzcz1cImZvb3RlciBtYXQtZWxldmF0aW9uLXoxXCI+XG4gICAgPG1hdC10b29sYmFyLXJvdyAqbmdGb3I9XCJsZXQgcG9ydGFsIG9mIHBvcnRhbHNcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cInBvcnRhbFwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9tYXQtdG9vbGJhci1yb3c+XG4gIDwvbWF0LXRvb2xiYXI+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -0,0 +1,30 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { FooterComponent } from './footer.component';
3
+ import { MatToolbarModule } from '@angular/material/toolbar';
4
+ import { CommonModule } from '@angular/common';
5
+ import { PortalModule } from '@angular/cdk/portal';
6
+ import * as i0 from "@angular/core";
7
+ class FooterModule {
8
+ static { this.ɵfac = function FooterModule_Factory(t) { return new (t || FooterModule)(); }; }
9
+ static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: FooterModule }); }
10
+ static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [MatToolbarModule,
11
+ CommonModule,
12
+ PortalModule] }); }
13
+ }
14
+ export { FooterModule };
15
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FooterModule, [{
16
+ type: NgModule,
17
+ args: [{
18
+ declarations: [FooterComponent],
19
+ imports: [
20
+ MatToolbarModule,
21
+ CommonModule,
22
+ PortalModule
23
+ ],
24
+ exports: [FooterComponent]
25
+ }]
26
+ }], null, null); })();
27
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(FooterModule, { declarations: [FooterComponent], imports: [MatToolbarModule,
28
+ CommonModule,
29
+ PortalModule], exports: [FooterComponent] }); })();
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLmNvbXBvbmVudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xheW91dC9zcmMvbGliL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUduRCxNQVNhLFlBQVk7NkVBQVosWUFBWTttRUFBWixZQUFZO3VFQU5yQixnQkFBZ0I7WUFDaEIsWUFBWTtZQUNaLFlBQVk7O1NBSUgsWUFBWTt1RkFBWixZQUFZO2NBVHhCLFFBQVE7ZUFBQztnQkFDUixZQUFZLEVBQUUsQ0FBRSxlQUFlLENBQUU7Z0JBQ2pDLE9BQU8sRUFBTztvQkFDWixnQkFBZ0I7b0JBQ2hCLFlBQVk7b0JBQ1osWUFBWTtpQkFDYjtnQkFDRCxPQUFPLEVBQU8sQ0FBRSxlQUFlLENBQUU7YUFDbEM7O3dGQUNZLFlBQVksbUJBUlAsZUFBZSxhQUU3QixnQkFBZ0I7UUFDaEIsWUFBWTtRQUNaLFlBQVksYUFFRSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vZm9vdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRUb29sYmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbGJhcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUG9ydGFsTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbIEZvb3RlckNvbXBvbmVudCBdLFxuICBpbXBvcnRzOiAgICAgIFtcbiAgICBNYXRUb29sYmFyTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBQb3J0YWxNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogICAgICBbIEZvb3RlckNvbXBvbmVudCBdXG59KVxuZXhwb3J0IGNsYXNzIEZvb3Rlck1vZHVsZSB7fVxuIl19
@@ -0,0 +1,54 @@
1
+ import { Directive, TemplateRef, ViewContainerRef, NgModule, Inject, } from '@angular/core';
2
+ import { FooterService } from '@rxap/services';
3
+ import { TemplatePortal } from '@angular/cdk/portal';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@rxap/services";
6
+ class FooterDirective {
7
+ constructor(footerService, template, viewContainerRef) {
8
+ this.footerService = footerService;
9
+ this.template = template;
10
+ this.viewContainerRef = viewContainerRef;
11
+ }
12
+ ngOnInit() {
13
+ this._portal = new TemplatePortal(this.template, this.viewContainerRef);
14
+ this.footerService.pushPortal(this._portal);
15
+ }
16
+ ngOnDestroy() {
17
+ if (this._portal) {
18
+ this.footerService.removePortal(this._portal);
19
+ }
20
+ }
21
+ static { this.ɵfac = function FooterDirective_Factory(t) { return new (t || FooterDirective)(i0.ɵɵdirectiveInject(FooterService), i0.ɵɵdirectiveInject(TemplateRef), i0.ɵɵdirectiveInject(ViewContainerRef)); }; }
22
+ static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: FooterDirective, selectors: [["", "rxapFooter", ""]] }); }
23
+ }
24
+ export { FooterDirective };
25
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FooterDirective, [{
26
+ type: Directive,
27
+ args: [{
28
+ selector: '[rxapFooter]',
29
+ }]
30
+ }], function () { return [{ type: i1.FooterService, decorators: [{
31
+ type: Inject,
32
+ args: [FooterService]
33
+ }] }, { type: i0.TemplateRef, decorators: [{
34
+ type: Inject,
35
+ args: [TemplateRef]
36
+ }] }, { type: i0.ViewContainerRef, decorators: [{
37
+ type: Inject,
38
+ args: [ViewContainerRef]
39
+ }] }]; }, null); })();
40
+ class FooterDirectiveModule {
41
+ static { this.ɵfac = function FooterDirectiveModule_Factory(t) { return new (t || FooterDirectiveModule)(); }; }
42
+ static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: FooterDirectiveModule }); }
43
+ static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({}); }
44
+ }
45
+ export { FooterDirectiveModule };
46
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FooterDirectiveModule, [{
47
+ type: NgModule,
48
+ args: [{
49
+ declarations: [FooterDirective],
50
+ exports: [FooterDirective],
51
+ }]
52
+ }], null, null); })();
53
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(FooterDirectiveModule, { declarations: [FooterDirective], exports: [FooterDirective] }); })();
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9vdGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvbGF5b3V0L3NyYy9saWIvZm9vdGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUdULFdBQVcsRUFDWCxnQkFBZ0IsRUFDaEIsUUFBUSxFQUNSLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7QUFFckQsTUFHYSxlQUFlO0lBRzFCLFlBRW1CLGFBQTRCLEVBRTVCLFFBQTJCLEVBRTNCLGdCQUFrQztRQUpsQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUU1QixhQUFRLEdBQVIsUUFBUSxDQUFtQjtRQUUzQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBQ2xELENBQUM7SUFFRyxRQUFRO1FBQ2IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLGNBQWMsQ0FDL0IsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQUMsZ0JBQWdCLENBQ3RCLENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUMvQztJQUNILENBQUM7Z0ZBeEJVLGVBQWUsdUJBSWhCLGFBQWEsd0JBRWIsV0FBVyx3QkFFWCxnQkFBZ0I7b0VBUmYsZUFBZTs7U0FBZixlQUFlO3VGQUFmLGVBQWU7Y0FIM0IsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxjQUFjO2FBQ3pCOztzQkFLSSxNQUFNO3VCQUFDLGFBQWE7O3NCQUVwQixNQUFNO3VCQUFDLFdBQVc7O3NCQUVsQixNQUFNO3VCQUFDLGdCQUFnQjs7QUFtQjVCLE1BSWEscUJBQXFCO3NGQUFyQixxQkFBcUI7bUVBQXJCLHFCQUFxQjs7O1NBQXJCLHFCQUFxQjt1RkFBckIscUJBQXFCO2NBSmpDLFFBQVE7ZUFBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxlQUFlLENBQUM7Z0JBQy9CLE9BQU8sRUFBRSxDQUFDLGVBQWUsQ0FBQzthQUMzQjs7d0ZBQ1kscUJBQXFCLG1CQS9CckIsZUFBZSxhQUFmLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIE9uSW5pdCxcbiAgT25EZXN0cm95LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgTmdNb2R1bGUsXG4gIEluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb290ZXJTZXJ2aWNlIH0gZnJvbSAnQHJ4YXAvc2VydmljZXMnO1xuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3J4YXBGb290ZXJdJyxcbn0pXG5leHBvcnQgY2xhc3MgRm9vdGVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIF9wb3J0YWw/OiBUZW1wbGF0ZVBvcnRhbDx2b2lkPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KEZvb3RlclNlcnZpY2UpXG4gICAgcHJpdmF0ZSByZWFkb25seSBmb290ZXJTZXJ2aWNlOiBGb290ZXJTZXJ2aWNlLFxuICAgIEBJbmplY3QoVGVtcGxhdGVSZWYpXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8dm9pZD4sXG4gICAgQEluamVjdChWaWV3Q29udGFpbmVyUmVmKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZlxuICApIHt9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIHRoaXMuX3BvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbDx2b2lkPihcbiAgICAgIHRoaXMudGVtcGxhdGUsXG4gICAgICB0aGlzLnZpZXdDb250YWluZXJSZWZcbiAgICApO1xuICAgIHRoaXMuZm9vdGVyU2VydmljZS5wdXNoUG9ydGFsKHRoaXMuX3BvcnRhbCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMuX3BvcnRhbCkge1xuICAgICAgdGhpcy5mb290ZXJTZXJ2aWNlLnJlbW92ZVBvcnRhbCh0aGlzLl9wb3J0YWwpO1xuICAgIH1cbiAgfVxufVxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtGb290ZXJEaXJlY3RpdmVdLFxuICBleHBvcnRzOiBbRm9vdGVyRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgRm9vdGVyRGlyZWN0aXZlTW9kdWxlIHt9XG4iXX0=
@@ -61,13 +61,7 @@ function AppsButtonComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
61
61
  i0.ɵɵadvance(4);
62
62
  i0.ɵɵproperty("cdkConnectedOverlayOpen", ctx_r0.isOpen)("cdkConnectedOverlayOrigin", _r1);
63
63
  } }
64
- export class AppsButtonComponent {
65
- constructor(grid, config) {
66
- this.config = config;
67
- this.isOpen = false;
68
- this.grid = [];
69
- this.grid = grid ?? this.config.get('navigation.apps') ?? [];
70
- }
64
+ class AppsButtonComponent {
71
65
  get gridWithPadding() {
72
66
  const gridWithPadding = this.grid.slice();
73
67
  while (gridWithPadding.length % this.columns !== 0) {
@@ -84,13 +78,20 @@ export class AppsButtonComponent {
84
78
  }
85
79
  return 3;
86
80
  }
81
+ constructor(grid, config) {
82
+ this.config = config;
83
+ this.isOpen = false;
84
+ this.grid = [];
85
+ this.grid = grid ?? this.config.get('navigation.apps') ?? [];
86
+ }
87
+ static { this.ɵfac = function AppsButtonComponent_Factory(t) { return new (t || AppsButtonComponent)(i0.ɵɵdirectiveInject(RXAP_LAYOUT_APPS_GRID, 8), i0.ɵɵdirectiveInject(ConfigService)); }; }
88
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AppsButtonComponent, selectors: [["rxap-apps-button"]], hostAttrs: [1, "rxap-apps-button"], decls: 1, vars: 1, consts: [[3, "ngIf"], ["cdkOverlayOrigin", "", "mat-icon-button", "", 3, "click"], ["trigger", "cdkOverlayOrigin"], ["cdkConnectedOverlay", "", 3, "cdkConnectedOverlayOpen", "cdkConnectedOverlayOrigin", "overlayOutsideClick"], [1, "grid-container"], [1, "grid", 3, "ngStyle"], [3, "ngClass", 4, "ngFor", "ngForOf"], [3, "ngClass"], [3, "href", 4, "ngIf"], [3, "href"], ["fxLayout", "column", "fxLayoutAlign", "start center", "fxLayoutGap", "12px"], ["width", "53px", 3, "src"]], template: function AppsButtonComponent_Template(rf, ctx) { if (rf & 1) {
89
+ i0.ɵɵtemplate(0, AppsButtonComponent_ng_template_0_Template, 5, 2, "ng-template", 0);
90
+ } if (rf & 2) {
91
+ i0.ɵɵproperty("ngIf", ctx.grid && ctx.grid.length);
92
+ } }, dependencies: [i1.MatLegacyButton, i2.MatIcon, i3.CdkConnectedOverlay, i3.CdkOverlayOrigin, i4.DefaultLayoutDirective, i4.DefaultLayoutGapDirective, i4.DefaultLayoutAlignDirective, i5.DefaultClassDirective, i5.DefaultStyleDirective, i6.NgClass, i6.NgForOf, i6.NgIf, i6.NgStyle], styles: [".grid-container[_ngcontent-%COMP%]{padding:8px;border:1px solid rgba(0,0,0,.2);border-radius:8px;box-shadow:0 1px 2px #3c40434d,0 2px 6px 2px #3c404326}.grid[_ngcontent-%COMP%]{list-style-type:none;margin:0;padding:0}.grid[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{border-radius:8px;padding:6px;height:84px;width:84px;transition-delay:0s;transition-duration:.2s;transition-property:tramsform;transition-timing-function:cubic-bezier(.333,0,0,1);position:relative}.grid[_ngcontent-%COMP%] li[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{position:absolute;inset:6px;text-align:center;text-decoration:none;color:#000}"], changeDetection: 0 }); }
87
93
  }
88
- AppsButtonComponent.ɵfac = function AppsButtonComponent_Factory(t) { return new (t || AppsButtonComponent)(i0.ɵɵdirectiveInject(RXAP_LAYOUT_APPS_GRID, 8), i0.ɵɵdirectiveInject(ConfigService)); };
89
- AppsButtonComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AppsButtonComponent, selectors: [["rxap-apps-button"]], hostAttrs: [1, "rxap-apps-button"], decls: 1, vars: 1, consts: [[3, "ngIf"], ["cdkOverlayOrigin", "", "mat-icon-button", "", 3, "click"], ["trigger", "cdkOverlayOrigin"], ["cdkConnectedOverlay", "", 3, "cdkConnectedOverlayOpen", "cdkConnectedOverlayOrigin", "overlayOutsideClick"], [1, "grid-container"], [1, "grid", 3, "ngStyle"], [3, "ngClass", 4, "ngFor", "ngForOf"], [3, "ngClass"], [3, "href", 4, "ngIf"], [3, "href"], ["fxLayout", "column", "fxLayoutAlign", "start center", "fxLayoutGap", "12px"], ["width", "53px", 3, "src"]], template: function AppsButtonComponent_Template(rf, ctx) { if (rf & 1) {
90
- i0.ɵɵtemplate(0, AppsButtonComponent_ng_template_0_Template, 5, 2, "ng-template", 0);
91
- } if (rf & 2) {
92
- i0.ɵɵproperty("ngIf", ctx.grid && ctx.grid.length);
93
- } }, dependencies: [i1.MatLegacyButton, i2.MatIcon, i3.CdkConnectedOverlay, i3.CdkOverlayOrigin, i4.DefaultLayoutDirective, i4.DefaultLayoutGapDirective, i4.DefaultLayoutAlignDirective, i5.DefaultClassDirective, i5.DefaultStyleDirective, i6.NgClass, i6.NgForOf, i6.NgIf, i6.NgStyle], styles: [".grid-container[_ngcontent-%COMP%]{padding:8px;border:1px solid rgba(0,0,0,.2);border-radius:8px;box-shadow:0 1px 2px #3c40434d,0 2px 6px 2px #3c404326}.grid[_ngcontent-%COMP%]{list-style-type:none;margin:0;padding:0}.grid[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{border-radius:8px;padding:6px;height:84px;width:84px;transition-delay:0s;transition-duration:.2s;transition-property:tramsform;transition-timing-function:cubic-bezier(.333,0,0,1);position:relative}.grid[_ngcontent-%COMP%] li[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{position:absolute;inset:6px;text-align:center;text-decoration:none;color:#000}"], changeDetection: 0 });
94
+ export { AppsButtonComponent };
94
95
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AppsButtonComponent, [{
95
96
  type: Component,
96
97
  args: [{ selector: 'rxap-apps-button', changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'rxap-apps-button' }, template: "<ng-template [ngIf]=\"grid && grid.length\">\n <button #trigger=\"cdkOverlayOrigin\" (click)=\"isOpen = !isOpen\" cdkOverlayOrigin mat-icon-button>\n <mat-icon>apps</mat-icon>\n </button>\n\n <ng-template (overlayOutsideClick)=\"isOpen = false\"\n [cdkConnectedOverlayOpen]=\"isOpen\"\n [cdkConnectedOverlayOrigin]=\"trigger\"\n cdkConnectedOverlay>\n\n <div class=\"grid-container\">\n\n <ul [ngStyle]=\"{ columns: columns }\" class=\"grid\">\n <li *ngFor=\"let item of gridWithPadding\" [ngClass]=\"{ empty: item.empty }\">\n <a *ngIf=\"!item.empty\" [href]=\"item.href\">\n\n <span fxLayout=\"column\" fxLayoutAlign=\"start center\" fxLayoutGap=\"12px\">\n <img [src]=\"item.image\" width=\"53px\">\n <span>{{item.label}}</span>\n </span>\n\n </a>\n </li>\n </ul>\n\n </div>\n\n </ng-template>\n</ng-template>\n", styles: [".grid-container{padding:8px;border:1px solid rgba(0,0,0,.2);border-radius:8px;box-shadow:0 1px 2px #3c40434d,0 2px 6px 2px #3c404326}.grid{list-style-type:none;margin:0;padding:0}.grid li{border-radius:8px;padding:6px;height:84px;width:84px;transition-delay:0s;transition-duration:.2s;transition-property:tramsform;transition-timing-function:cubic-bezier(.333,0,0,1);position:relative}.grid li a{position:absolute;inset:6px;text-align:center;text-decoration:none;color:#000}\n"] }]
@@ -103,4 +104,4 @@ AppsButtonComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AppsBut
103
104
  type: Inject,
104
105
  args: [ConfigService]
105
106
  }] }]; }, null); })();
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwcy1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvYXBwcy1idXR0b24vYXBwcy1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvYXBwcy1idXR0b24vYXBwcy1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsTUFBTSxFQUNOLFFBQVEsR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7Ozs7OztJQ09uQyw0QkFBMEMsZUFBQTtJQUcxQywwQkFBcUM7SUFDckMsNEJBQU07SUFBQSxZQUFjO0lBQUEsaUJBQU8sRUFBQSxFQUFBOzs7SUFKSixxREFBa0I7SUFHcEMsZUFBa0I7SUFBbEIscURBQWtCO0lBQ2pCLGVBQWM7SUFBZCxtQ0FBYzs7OztJQUx0Qiw2QkFBMkU7SUFDekUsaUdBT0k7SUFDTixpQkFBSzs7O0lBVG9DLG1FQUFpQztJQUNwRSxlQUFpQjtJQUFqQixxQ0FBaUI7Ozs7SUFKM0IsOEJBQTRCLFlBQUE7SUFHeEIsOEZBU0s7SUFDUCxpQkFBSyxFQUFBOzs7SUFYRCxlQUFnQztJQUFoQyxvRUFBZ0M7SUFDYixlQUFrQjtJQUFsQixnREFBa0I7Ozs7SUFaN0Msb0NBQWdHO0lBQTVELDBOQUEwQjtJQUM1RCxnQ0FBVTtJQUFBLG9CQUFJO0lBQUEsaUJBQVcsRUFBQTtJQUczQixrR0FzQmM7SUF0QkQsd09BQWdDLEtBQUssS0FBQzs7OztJQUN0QyxlQUFrQztJQUFsQyx1REFBa0Msa0NBQUE7O0FEd0JqRCxNQUFNLE9BQU8sbUJBQW1CO0lBeUI5QixZQUdFLElBQVMsRUFFUSxNQUFxQjtRQUFyQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBUmpDLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFDZixTQUFJLEdBQThCLEVBQUUsQ0FBQztRQVMxQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMvRCxDQUFDO0lBaENELElBQVcsZUFBZTtRQUd4QixNQUFNLGVBQWUsR0FDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNwQixPQUFPLGVBQWUsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sS0FBSyxDQUFDLEVBQUU7WUFDbEQsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZDO1FBQ0QsT0FBTyxlQUFlLENBQUM7SUFDekIsQ0FBQztJQUVELElBQVcsT0FBTztRQUNoQixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN4QixPQUFPLENBQUMsQ0FBQztTQUNWO1FBQ0QsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDeEIsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQzs7c0ZBcEJVLG1CQUFtQix1QkEyQnBCLHFCQUFxQiwyQkFFckIsYUFBYTtzRUE3QlosbUJBQW1CO1FDOUJoQyxvRkE0QmM7O1FBNUJELGtEQUE0Qjs7dUZEOEI1QixtQkFBbUI7Y0FQL0IsU0FBUzsyQkFDRSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTSxRQUN6QyxFQUFFLEtBQUssRUFBRSxrQkFBa0IsRUFBRTs7c0JBNEJoQyxRQUFROztzQkFDUixNQUFNO3VCQUFDLHFCQUFxQjs7c0JBRTVCLE1BQU07dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIEluamVjdCxcbiAgT3B0aW9uYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUlhBUF9MQVlPVVRfQVBQU19HUklEIH0gZnJvbSAnLi4vLi4vdG9rZW5zJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAcnhhcC9jb25maWcnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwcHNCdXR0b25HcmlkSXRlbSB7XG4gIGltYWdlOiBzdHJpbmc7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGhyZWY6IHN0cmluZztcbiAgZW1wdHk/OiBmYWxzZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbXB0eUFwcHNCdXR0b25HcmlkSXRlbSB7XG4gIGVtcHR5OiB0cnVlO1xuICBocmVmPzogdW5kZWZpbmVkO1xuICBsYWJlbD86IHVuZGVmaW5lZDtcbiAgaW1hZ2U/OiB1bmRlZmluZWQ7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3J4YXAtYXBwcy1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vYXBwcy1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hcHBzLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDogeyBjbGFzczogJ3J4YXAtYXBwcy1idXR0b24nIH0sXG59KVxuZXhwb3J0IGNsYXNzIEFwcHNCdXR0b25Db21wb25lbnQge1xuICBwdWJsaWMgZ2V0IGdyaWRXaXRoUGFkZGluZygpOiBBcnJheTxcbiAgICBBcHBzQnV0dG9uR3JpZEl0ZW0gfCBFbXB0eUFwcHNCdXR0b25HcmlkSXRlbVxuICA+IHtcbiAgICBjb25zdCBncmlkV2l0aFBhZGRpbmc6IEFycmF5PEFwcHNCdXR0b25HcmlkSXRlbSB8IEVtcHR5QXBwc0J1dHRvbkdyaWRJdGVtPiA9XG4gICAgICB0aGlzLmdyaWQuc2xpY2UoKTtcbiAgICB3aGlsZSAoZ3JpZFdpdGhQYWRkaW5nLmxlbmd0aCAlIHRoaXMuY29sdW1ucyAhPT0gMCkge1xuICAgICAgZ3JpZFdpdGhQYWRkaW5nLnB1c2goeyBlbXB0eTogdHJ1ZSB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGdyaWRXaXRoUGFkZGluZztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29sdW1ucygpIHtcbiAgICBpZiAodGhpcy5ncmlkLmxlbmd0aCA8IDQpIHtcbiAgICAgIHJldHVybiAxO1xuICAgIH1cbiAgICBpZiAodGhpcy5ncmlkLmxlbmd0aCA8IDYpIHtcbiAgICAgIHJldHVybiAyO1xuICAgIH1cbiAgICByZXR1cm4gMztcbiAgfVxuXG4gIHB1YmxpYyBpc09wZW4gPSBmYWxzZTtcbiAgcHVibGljIGdyaWQ6IEFycmF5PEFwcHNCdXR0b25HcmlkSXRlbT4gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoUlhBUF9MQVlPVVRfQVBQU19HUklEKVxuICAgIGdyaWQ6IGFueSxcbiAgICBASW5qZWN0KENvbmZpZ1NlcnZpY2UpXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IENvbmZpZ1NlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5ncmlkID0gZ3JpZCA/PyB0aGlzLmNvbmZpZy5nZXQoJ25hdmlnYXRpb24uYXBwcycpID8/IFtdO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgW25nSWZdPVwiZ3JpZCAmJiBncmlkLmxlbmd0aFwiPlxuICA8YnV0dG9uICN0cmlnZ2VyPVwiY2RrT3ZlcmxheU9yaWdpblwiIChjbGljayk9XCJpc09wZW4gPSAhaXNPcGVuXCIgY2RrT3ZlcmxheU9yaWdpbiBtYXQtaWNvbi1idXR0b24+XG4gICAgPG1hdC1pY29uPmFwcHM8L21hdC1pY29uPlxuICA8L2J1dHRvbj5cblxuICA8bmctdGVtcGxhdGUgKG92ZXJsYXlPdXRzaWRlQ2xpY2spPVwiaXNPcGVuID0gZmFsc2VcIlxuICAgICAgICAgICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlPcGVuXT1cImlzT3BlblwiXG4gICAgICAgICAgICAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheU9yaWdpbl09XCJ0cmlnZ2VyXCJcbiAgICAgICAgICAgICAgIGNka0Nvbm5lY3RlZE92ZXJsYXk+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZ3JpZC1jb250YWluZXJcIj5cblxuICAgICAgPHVsIFtuZ1N0eWxlXT1cInsgY29sdW1uczogY29sdW1ucyB9XCIgY2xhc3M9XCJncmlkXCI+XG4gICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncmlkV2l0aFBhZGRpbmdcIiBbbmdDbGFzc109XCJ7IGVtcHR5OiBpdGVtLmVtcHR5IH1cIj5cbiAgICAgICAgICA8YSAqbmdJZj1cIiFpdGVtLmVtcHR5XCIgW2hyZWZdPVwiaXRlbS5ocmVmXCI+XG5cbiAgICAgICAgPHNwYW4gZnhMYXlvdXQ9XCJjb2x1bW5cIiBmeExheW91dEFsaWduPVwic3RhcnQgY2VudGVyXCIgZnhMYXlvdXRHYXA9XCIxMnB4XCI+XG4gICAgICAgICAgPGltZyBbc3JjXT1cIml0ZW0uaW1hZ2VcIiB3aWR0aD1cIjUzcHhcIj5cbiAgICAgICAgICA8c3Bhbj57e2l0ZW0ubGFiZWx9fTwvc3Bhbj5cbiAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgICAgPC9hPlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cblxuICAgIDwvZGl2PlxuXG4gIDwvbmctdGVtcGxhdGU+XG48L25nLXRlbXBsYXRlPlxuIl19
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwcy1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvYXBwcy1idXR0b24vYXBwcy1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9sYXlvdXQvc3JjL2xpYi9oZWFkZXIvYXBwcy1idXR0b24vYXBwcy1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsTUFBTSxFQUNOLFFBQVEsR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7Ozs7OztJQ09uQyw0QkFBMEMsZUFBQTtJQUcxQywwQkFBcUM7SUFDckMsNEJBQU07SUFBQSxZQUFjO0lBQUEsaUJBQU8sRUFBQSxFQUFBOzs7SUFKSixxREFBa0I7SUFHcEMsZUFBa0I7SUFBbEIscURBQWtCO0lBQ2pCLGVBQWM7SUFBZCxtQ0FBYzs7OztJQUx0Qiw2QkFBMkU7SUFDekUsaUdBT0k7SUFDTixpQkFBSzs7O0lBVG9DLG1FQUFpQztJQUNwRSxlQUFpQjtJQUFqQixxQ0FBaUI7Ozs7SUFKM0IsOEJBQTRCLFlBQUE7SUFHeEIsOEZBU0s7SUFDUCxpQkFBSyxFQUFBOzs7SUFYRCxlQUFnQztJQUFoQyxvRUFBZ0M7SUFDYixlQUFrQjtJQUFsQixnREFBa0I7Ozs7SUFaN0Msb0NBQWdHO0lBQTVELDBOQUEwQjtJQUM1RCxnQ0FBVTtJQUFBLG9CQUFJO0lBQUEsaUJBQVcsRUFBQTtJQUczQixrR0FzQmM7SUF0QkQsd09BQWdDLEtBQUssS0FBQzs7OztJQUN0QyxlQUFrQztJQUFsQyx1REFBa0Msa0NBQUE7O0FEaUJqRCxNQU9hLG1CQUFtQjtJQUM5QixJQUFXLGVBQWU7UUFHeEIsTUFBTSxlQUFlLEdBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDcEIsT0FBTyxlQUFlLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLEtBQUssQ0FBQyxFQUFFO1lBQ2xELGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztTQUN2QztRQUNELE9BQU8sZUFBZSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDeEIsT0FBTyxDQUFDLENBQUM7U0FDVjtRQUNELElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3hCLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFDRCxPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7SUFLRCxZQUdFLElBQVMsRUFFUSxNQUFxQjtRQUFyQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBUmpDLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFDZixTQUFJLEdBQThCLEVBQUUsQ0FBQztRQVMxQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMvRCxDQUFDO29GQWpDVSxtQkFBbUIsdUJBMkJwQixxQkFBcUIsMkJBRXJCLGFBQWE7b0VBN0JaLG1CQUFtQjtZQzlCaEMsb0ZBNEJjOztZQTVCRCxrREFBNEI7OztTRDhCNUIsbUJBQW1CO3VGQUFuQixtQkFBbUI7Y0FQL0IsU0FBUzsyQkFDRSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTSxRQUN6QyxFQUFFLEtBQUssRUFBRSxrQkFBa0IsRUFBRTs7c0JBNEJoQyxRQUFROztzQkFDUixNQUFNO3VCQUFDLHFCQUFxQjs7c0JBRTVCLE1BQU07dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIEluamVjdCxcbiAgT3B0aW9uYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUlhBUF9MQVlPVVRfQVBQU19HUklEIH0gZnJvbSAnLi4vLi4vdG9rZW5zJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAcnhhcC9jb25maWcnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwcHNCdXR0b25HcmlkSXRlbSB7XG4gIGltYWdlOiBzdHJpbmc7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGhyZWY6IHN0cmluZztcbiAgZW1wdHk/OiBmYWxzZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbXB0eUFwcHNCdXR0b25HcmlkSXRlbSB7XG4gIGVtcHR5OiB0cnVlO1xuICBocmVmPzogdW5kZWZpbmVkO1xuICBsYWJlbD86IHVuZGVmaW5lZDtcbiAgaW1hZ2U/OiB1bmRlZmluZWQ7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3J4YXAtYXBwcy1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vYXBwcy1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hcHBzLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDogeyBjbGFzczogJ3J4YXAtYXBwcy1idXR0b24nIH0sXG59KVxuZXhwb3J0IGNsYXNzIEFwcHNCdXR0b25Db21wb25lbnQge1xuICBwdWJsaWMgZ2V0IGdyaWRXaXRoUGFkZGluZygpOiBBcnJheTxcbiAgICBBcHBzQnV0dG9uR3JpZEl0ZW0gfCBFbXB0eUFwcHNCdXR0b25HcmlkSXRlbVxuICA+IHtcbiAgICBjb25zdCBncmlkV2l0aFBhZGRpbmc6IEFycmF5PEFwcHNCdXR0b25HcmlkSXRlbSB8IEVtcHR5QXBwc0J1dHRvbkdyaWRJdGVtPiA9XG4gICAgICB0aGlzLmdyaWQuc2xpY2UoKTtcbiAgICB3aGlsZSAoZ3JpZFdpdGhQYWRkaW5nLmxlbmd0aCAlIHRoaXMuY29sdW1ucyAhPT0gMCkge1xuICAgICAgZ3JpZFdpdGhQYWRkaW5nLnB1c2goeyBlbXB0eTogdHJ1ZSB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGdyaWRXaXRoUGFkZGluZztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29sdW1ucygpIHtcbiAgICBpZiAodGhpcy5ncmlkLmxlbmd0aCA8IDQpIHtcbiAgICAgIHJldHVybiAxO1xuICAgIH1cbiAgICBpZiAodGhpcy5ncmlkLmxlbmd0aCA8IDYpIHtcbiAgICAgIHJldHVybiAyO1xuICAgIH1cbiAgICByZXR1cm4gMztcbiAgfVxuXG4gIHB1YmxpYyBpc09wZW4gPSBmYWxzZTtcbiAgcHVibGljIGdyaWQ6IEFycmF5PEFwcHNCdXR0b25HcmlkSXRlbT4gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoUlhBUF9MQVlPVVRfQVBQU19HUklEKVxuICAgIGdyaWQ6IGFueSxcbiAgICBASW5qZWN0KENvbmZpZ1NlcnZpY2UpXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IENvbmZpZ1NlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5ncmlkID0gZ3JpZCA/PyB0aGlzLmNvbmZpZy5nZXQoJ25hdmlnYXRpb24uYXBwcycpID8/IFtdO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgW25nSWZdPVwiZ3JpZCAmJiBncmlkLmxlbmd0aFwiPlxuICA8YnV0dG9uICN0cmlnZ2VyPVwiY2RrT3ZlcmxheU9yaWdpblwiIChjbGljayk9XCJpc09wZW4gPSAhaXNPcGVuXCIgY2RrT3ZlcmxheU9yaWdpbiBtYXQtaWNvbi1idXR0b24+XG4gICAgPG1hdC1pY29uPmFwcHM8L21hdC1pY29uPlxuICA8L2J1dHRvbj5cblxuICA8bmctdGVtcGxhdGUgKG92ZXJsYXlPdXRzaWRlQ2xpY2spPVwiaXNPcGVuID0gZmFsc2VcIlxuICAgICAgICAgICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlPcGVuXT1cImlzT3BlblwiXG4gICAgICAgICAgICAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheU9yaWdpbl09XCJ0cmlnZ2VyXCJcbiAgICAgICAgICAgICAgIGNka0Nvbm5lY3RlZE92ZXJsYXk+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZ3JpZC1jb250YWluZXJcIj5cblxuICAgICAgPHVsIFtuZ1N0eWxlXT1cInsgY29sdW1uczogY29sdW1ucyB9XCIgY2xhc3M9XCJncmlkXCI+XG4gICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBncmlkV2l0aFBhZGRpbmdcIiBbbmdDbGFzc109XCJ7IGVtcHR5OiBpdGVtLmVtcHR5IH1cIj5cbiAgICAgICAgICA8YSAqbmdJZj1cIiFpdGVtLmVtcHR5XCIgW2hyZWZdPVwiaXRlbS5ocmVmXCI+XG5cbiAgICAgICAgPHNwYW4gZnhMYXlvdXQ9XCJjb2x1bW5cIiBmeExheW91dEFsaWduPVwic3RhcnQgY2VudGVyXCIgZnhMYXlvdXRHYXA9XCIxMnB4XCI+XG4gICAgICAgICAgPGltZyBbc3JjXT1cIml0ZW0uaW1hZ2VcIiB3aWR0aD1cIjUzcHhcIj5cbiAgICAgICAgICA8c3Bhbj57e2l0ZW0ubGFiZWx9fTwvc3Bhbj5cbiAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgICAgPC9hPlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cblxuICAgIDwvZGl2PlxuXG4gIDwvbmctdGVtcGxhdGU+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -0,0 +1,46 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { AppsButtonComponent } from './apps-button.component';
3
+ import { MatLegacyButtonModule as MatButtonModule } from '@angular/material/legacy-button';
4
+ import { MatIconModule } from '@angular/material/icon';
5
+ import { MatGridListModule } from '@angular/material/grid-list';
6
+ import { OverlayModule } from '@angular/cdk/overlay';
7
+ import { FlexLayoutModule } from '@angular/flex-layout';
8
+ import { CommonModule } from '@angular/common';
9
+ import { RouterModule } from '@angular/router';
10
+ import * as i0 from "@angular/core";
11
+ class AppsButtonComponentModule {
12
+ static { this.ɵfac = function AppsButtonComponentModule_Factory(t) { return new (t || AppsButtonComponentModule)(); }; }
13
+ static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: AppsButtonComponentModule }); }
14
+ static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [MatButtonModule,
15
+ MatIconModule,
16
+ MatGridListModule,
17
+ OverlayModule,
18
+ FlexLayoutModule,
19
+ CommonModule,
20
+ RouterModule] }); }
21
+ }
22
+ export { AppsButtonComponentModule };
23
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AppsButtonComponentModule, [{
24
+ type: NgModule,
25
+ args: [{
26
+ declarations: [AppsButtonComponent],
27
+ imports: [
28
+ MatButtonModule,
29
+ MatIconModule,
30
+ MatGridListModule,
31
+ OverlayModule,
32
+ FlexLayoutModule,
33
+ CommonModule,
34
+ RouterModule
35
+ ],
36
+ exports: [AppsButtonComponent]
37
+ }]
38
+ }], null, null); })();
39
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(AppsButtonComponentModule, { declarations: [AppsButtonComponent], imports: [MatButtonModule,
40
+ MatIconModule,
41
+ MatGridListModule,
42
+ OverlayModule,
43
+ FlexLayoutModule,
44
+ CommonModule,
45
+ RouterModule], exports: [AppsButtonComponent] }); })();
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwcy1idXR0b24uY29tcG9uZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbGF5b3V0L3NyYy9saWIvaGVhZGVyL2FwcHMtYnV0dG9uL2FwcHMtYnV0dG9uLmNvbXBvbmVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUscUJBQXFCLElBQUksZUFBZSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDM0YsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUcvQyxNQWFhLHlCQUF5QjswRkFBekIseUJBQXlCO21FQUF6Qix5QkFBeUI7dUVBVmxDLGVBQWU7WUFDZixhQUFhO1lBQ2IsaUJBQWlCO1lBQ2pCLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsWUFBWTtZQUNaLFlBQVk7O1NBSUgseUJBQXlCO3VGQUF6Qix5QkFBeUI7Y0FickMsUUFBUTtlQUFDO2dCQUNSLFlBQVksRUFBRSxDQUFFLG1CQUFtQixDQUFFO2dCQUNyQyxPQUFPLEVBQU87b0JBQ1osZUFBZTtvQkFDZixhQUFhO29CQUNiLGlCQUFpQjtvQkFDakIsYUFBYTtvQkFDYixnQkFBZ0I7b0JBQ2hCLFlBQVk7b0JBQ1osWUFBWTtpQkFDYjtnQkFDRCxPQUFPLEVBQU8sQ0FBRSxtQkFBbUIsQ0FBRTthQUN0Qzs7d0ZBQ1kseUJBQXlCLG1CQVpwQixtQkFBbUIsYUFFakMsZUFBZTtRQUNmLGFBQWE7UUFDYixpQkFBaUI7UUFDakIsYUFBYTtRQUNiLGdCQUFnQjtRQUNoQixZQUFZO1FBQ1osWUFBWSxhQUVFLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcHBzQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9hcHBzLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0TGVnYWN5QnV0dG9uTW9kdWxlIGFzIE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0R3JpZExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9ncmlkLWxpc3QnO1xuaW1wb3J0IHsgT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IEZsZXhMYXlvdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mbGV4LWxheW91dCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFsgQXBwc0J1dHRvbkNvbXBvbmVudCBdLFxuICBpbXBvcnRzOiAgICAgIFtcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRHcmlkTGlzdE1vZHVsZSxcbiAgICBPdmVybGF5TW9kdWxlLFxuICAgIEZsZXhMYXlvdXRNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZVxuICBdLFxuICBleHBvcnRzOiAgICAgIFsgQXBwc0J1dHRvbkNvbXBvbmVudCBdXG59KVxuZXhwb3J0IGNsYXNzIEFwcHNCdXR0b25Db21wb25lbnRNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,131 @@
1
+ import { Component, ChangeDetectionStrategy, Input, Optional, Inject, } from '@angular/core';
2
+ import { Subscription } from 'rxjs';
3
+ import { tap, map } from 'rxjs/operators';
4
+ import { MatSidenav } from '@angular/material/sidenav';
5
+ import { UserService } from '@rxap/authentication';
6
+ import { RXAP_HEADER_COMPONENT } from '../tokens';
7
+ import { HeaderService } from '@rxap/services';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@angular/material/toolbar";
10
+ import * as i2 from "./sign-out/sign-out.component";
11
+ import * as i3 from "./user-profile-icon/user-profile-icon.component";
12
+ import * as i4 from "./navigation-progress-bar/navigation-progress-bar.component";
13
+ import * as i5 from "./sidenav-toggle-button/sidenav-toggle-button.component";
14
+ import * as i6 from "@angular/flex-layout/flex";
15
+ import * as i7 from "@angular/flex-layout/extended";
16
+ import * as i8 from "@angular/common";
17
+ import * as i9 from "@angular/material/legacy-button";
18
+ import * as i10 from "@angular/material/icon";
19
+ import * as i11 from "@angular/material/legacy-menu";
20
+ import * as i12 from "./apps-button/apps-button.component";
21
+ import * as i13 from "./language-selector/language-selector.component";
22
+ import * as i14 from "@rxap/services";
23
+ import * as i15 from "@rxap/authentication";
24
+ function HeaderComponent_mat_toolbar_row_1_ng_container_1_Template(rf, ctx) { if (rf & 1) {
25
+ i0.ɵɵelementContainer(0);
26
+ } }
27
+ function HeaderComponent_mat_toolbar_row_1_Template(rf, ctx) { if (rf & 1) {
28
+ i0.ɵɵelementStart(0, "mat-toolbar-row");
29
+ i0.ɵɵtemplate(1, HeaderComponent_mat_toolbar_row_1_ng_container_1_Template, 1, 0, "ng-container", 7);
30
+ i0.ɵɵelementEnd();
31
+ } if (rf & 2) {
32
+ const headerComponent_r4 = ctx.$implicit;
33
+ i0.ɵɵadvance(1);
34
+ i0.ɵɵproperty("ngComponentOutlet", headerComponent_r4);
35
+ } }
36
+ function HeaderComponent_rxap_sidenav_toggle_button_4_Template(rf, ctx) { if (rf & 1) {
37
+ i0.ɵɵelement(0, "rxap-sidenav-toggle-button", 8);
38
+ } if (rf & 2) {
39
+ const ctx_r1 = i0.ɵɵnextContext();
40
+ i0.ɵɵproperty("sidenav", ctx_r1.sidenav);
41
+ } }
42
+ function HeaderComponent_rxap_user_profile_icon_9_Template(rf, ctx) { if (rf & 1) {
43
+ i0.ɵɵelement(0, "rxap-user-profile-icon", 5);
44
+ } }
45
+ function HeaderComponent_div_11_Template(rf, ctx) { if (rf & 1) {
46
+ i0.ɵɵelementStart(0, "div", 5)(1, "button", 9)(2, "mat-icon");
47
+ i0.ɵɵtext(3, "settings");
48
+ i0.ɵɵelementEnd()()();
49
+ } if (rf & 2) {
50
+ const ctx_r3 = i0.ɵɵnextContext();
51
+ i0.ɵɵadvance(1);
52
+ i0.ɵɵproperty("matMenuTriggerFor", ctx_r3.settingsMenuPanel);
53
+ } }
54
+ const _c0 = function (a0) { return { open: a0 }; };
55
+ const _c1 = ["*"];
56
+ class HeaderComponent {
57
+ constructor(headerComponentService, userService, headerComponent) {
58
+ this.headerComponentService = headerComponentService;
59
+ this.userService = userService;
60
+ this.headerComponent = headerComponent;
61
+ this.components = [];
62
+ this.subscriptions = new Subscription();
63
+ this.color = 'primary';
64
+ this.hasUser$ = this.userService.user$.pipe(map(Boolean));
65
+ }
66
+ ngOnInit() {
67
+ this.updateComponents();
68
+ this.subscriptions.add(this.headerComponentService.update$
69
+ .pipe(tap(() => this.updateComponents()))
70
+ .subscribe());
71
+ }
72
+ updateComponents() {
73
+ this.components = this.headerComponentService.getComponents();
74
+ }
75
+ ngOnDestroy() {
76
+ this.subscriptions.unsubscribe();
77
+ }
78
+ static { this.ɵfac = function HeaderComponent_Factory(t) { return new (t || HeaderComponent)(i0.ɵɵdirectiveInject(HeaderService), i0.ɵɵdirectiveInject(UserService), i0.ɵɵdirectiveInject(RXAP_HEADER_COMPONENT, 8)); }; }
79
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: HeaderComponent, selectors: [["rxap-header"]], hostAttrs: [1, "rxap-layout-header"], inputs: { sidenav: "sidenav", color: "color", settingsMenuPanel: "settingsMenuPanel" }, ngContentSelectors: _c1, decls: 14, vars: 10, consts: [[1, "mat-elevation-z3", 3, "ngClass", "color"], [4, "ngFor", "ngForOf"], ["fxLayout", "row", "fxLayoutAlign", "space-between center", "fxLayoutGap", "16px", 1, "content"], ["fxFlex", "nogrow", 3, "sidenav", 4, "ngIf"], ["fxFlex", "grow"], ["fxFlex", "nogrow"], ["fxFlex", "nogrow", 4, "ngIf"], [4, "ngComponentOutlet"], ["fxFlex", "nogrow", 3, "sidenav"], ["mat-icon-button", "", 3, "matMenuTriggerFor"]], template: function HeaderComponent_Template(rf, ctx) { if (rf & 1) {
80
+ i0.ɵɵprojectionDef();
81
+ i0.ɵɵelementStart(0, "mat-toolbar", 0);
82
+ i0.ɵɵtemplate(1, HeaderComponent_mat_toolbar_row_1_Template, 2, 1, "mat-toolbar-row", 1);
83
+ i0.ɵɵelementStart(2, "mat-toolbar-row")(3, "div", 2);
84
+ i0.ɵɵtemplate(4, HeaderComponent_rxap_sidenav_toggle_button_4_Template, 1, 1, "rxap-sidenav-toggle-button", 3);
85
+ i0.ɵɵelementStart(5, "div", 4);
86
+ i0.ɵɵprojection(6);
87
+ i0.ɵɵelementEnd();
88
+ i0.ɵɵelement(7, "rxap-language-selector", 5)(8, "rxap-apps-button", 5);
89
+ i0.ɵɵtemplate(9, HeaderComponent_rxap_user_profile_icon_9_Template, 1, 0, "rxap-user-profile-icon", 6);
90
+ i0.ɵɵpipe(10, "async");
91
+ i0.ɵɵtemplate(11, HeaderComponent_div_11_Template, 4, 1, "div", 6);
92
+ i0.ɵɵelement(12, "rxap-sign-out", 5);
93
+ i0.ɵɵelementEnd()()();
94
+ i0.ɵɵelement(13, "rxap-navigation-progress-bar");
95
+ } if (rf & 2) {
96
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(8, _c0, ctx.sidenav == null ? null : ctx.sidenav.opened))("color", ctx.color);
97
+ i0.ɵɵadvance(1);
98
+ i0.ɵɵproperty("ngForOf", ctx.components);
99
+ i0.ɵɵadvance(3);
100
+ i0.ɵɵproperty("ngIf", ctx.sidenav);
101
+ i0.ɵɵadvance(5);
102
+ i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(10, 6, ctx.hasUser$));
103
+ i0.ɵɵadvance(2);
104
+ i0.ɵɵproperty("ngIf", ctx.settingsMenuPanel);
105
+ } }, dependencies: [i1.MatToolbar, i1.MatToolbarRow, i2.SignOutComponent, i3.UserProfileIconComponent, i4.NavigationProgressBarComponent, i5.SidenavToggleButtonComponent, i6.DefaultLayoutDirective, i6.DefaultLayoutGapDirective, i6.DefaultLayoutAlignDirective, i6.DefaultFlexDirective, i7.DefaultClassDirective, i8.NgClass, i8.NgComponentOutlet, i8.NgForOf, i8.NgIf, i9.MatLegacyButton, i10.MatIcon, i11.MatLegacyMenuTrigger, i12.AppsButtonComponent, i13.LanguageSelectorComponent, i8.AsyncPipe], styles: [".content[_ngcontent-%COMP%]{width:100%;height:64px}"], changeDetection: 0 }); }
106
+ }
107
+ export { HeaderComponent };
108
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(HeaderComponent, [{
109
+ type: Component,
110
+ args: [{ selector: 'rxap-header', changeDetection: ChangeDetectionStrategy.OnPush, host: {
111
+ class: 'rxap-layout-header',
112
+ }, template: "<mat-toolbar [ngClass]=\"{ open: sidenav?.opened }\" [color]=\"color\" class=\"mat-elevation-z3\">\n <mat-toolbar-row *ngFor=\"let headerComponent of components\">\n <ng-container *ngComponentOutlet=\"headerComponent\"></ng-container>\n </mat-toolbar-row>\n <mat-toolbar-row>\n <div\n fxLayout=\"row\"\n fxLayoutAlign=\"space-between center\"\n fxLayoutGap=\"16px\"\n class=\"content\"\n >\n <rxap-sidenav-toggle-button *ngIf=\"sidenav\" fxFlex=\"nogrow\" [sidenav]=\"sidenav\"></rxap-sidenav-toggle-button>\n <div fxFlex=\"grow\">\n <ng-content></ng-content>\n </div>\n <rxap-language-selector fxFlex=\"nogrow\"></rxap-language-selector>\n <rxap-apps-button fxFlex=\"nogrow\"></rxap-apps-button>\n <rxap-user-profile-icon *ngIf=\"hasUser$ | async\" fxFlex=\"nogrow\"></rxap-user-profile-icon>\n <div fxFlex=\"nogrow\" *ngIf=\"settingsMenuPanel\">\n <button mat-icon-button [matMenuTriggerFor]=\"settingsMenuPanel\">\n <mat-icon>settings</mat-icon>\n </button>\n </div>\n <rxap-sign-out fxFlex=\"nogrow\"></rxap-sign-out>\n </div>\n </mat-toolbar-row>\n</mat-toolbar>\n<rxap-navigation-progress-bar></rxap-navigation-progress-bar>\n", styles: [".content{width:100%;height:64px}\n"] }]
113
+ }], function () { return [{ type: i14.HeaderService, decorators: [{
114
+ type: Inject,
115
+ args: [HeaderService]
116
+ }] }, { type: i15.UserService, decorators: [{
117
+ type: Inject,
118
+ args: [UserService]
119
+ }] }, { type: undefined, decorators: [{
120
+ type: Optional
121
+ }, {
122
+ type: Inject,
123
+ args: [RXAP_HEADER_COMPONENT]
124
+ }] }]; }, { sidenav: [{
125
+ type: Input
126
+ }], color: [{
127
+ type: Input
128
+ }], settingsMenuPanel: [{
129
+ type: Input
130
+ }] }); })();
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbGF5b3V0L3NyYy9saWIvaGVhZGVyL2hlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xheW91dC9zcmMvbGliL2hlYWRlci9oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCx1QkFBdUIsRUFFdkIsS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFlBQVksRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ2xELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDYjNDLHdCQUFrRTs7O0lBRHBFLHVDQUE0RDtJQUMxRCxvR0FBa0U7SUFDcEUsaUJBQWtCOzs7SUFERCxlQUFrQztJQUFsQyxzREFBa0M7OztJQVMvQyxnREFBNkc7OztJQUFqRCx3Q0FBbUI7OztJQU0vRSw0Q0FBMEY7OztJQUMxRiw4QkFBK0MsZ0JBQUEsZUFBQTtJQUVqQyx3QkFBUTtJQUFBLGlCQUFXLEVBQUEsRUFBQTs7O0lBRFAsZUFBdUM7SUFBdkMsNERBQXVDOzs7O0FEQXZFLE1BU2EsZUFBZTtJQWdCMUIsWUFFa0Isc0JBQXFDLEVBRXBDLFdBQTZCLEVBQ0ksZUFBb0I7UUFIdEQsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUFlO1FBRXBDLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtRQUNJLG9CQUFlLEdBQWYsZUFBZSxDQUFLO1FBakJqRSxlQUFVLEdBQTRCLEVBQUUsQ0FBQztRQUV6QyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFLbkMsVUFBSyxHQUFpQixTQUFTLENBQUM7UUFZckMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FDcEIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE9BQU87YUFDaEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO2FBQ3hDLFNBQVMsRUFBRSxDQUNmLENBQUM7SUFDSixDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ2hFLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbkMsQ0FBQztnRkF6Q1UsZUFBZSx1QkFpQmhCLGFBQWEsd0JBRWIsV0FBVyx3QkFFQyxxQkFBcUI7b0VBckJoQyxlQUFlOztZQzVCNUIsc0NBQTRGO1lBQzFGLHdGQUVrQjtZQUNsQix1Q0FBaUIsYUFBQTtZQU9iLDhHQUE2RztZQUM3Ryw4QkFBbUI7WUFDakIsa0JBQXlCO1lBQzNCLGlCQUFNO1lBQ04sNENBQWlFLDBCQUFBO1lBRWpFLHNHQUEwRjs7WUFDMUYsa0VBSU07WUFDTixvQ0FBK0M7WUFDakQsaUJBQU0sRUFBQSxFQUFBO1lBR1YsZ0RBQTZEOztZQTNCaEQscUdBQXFDLG9CQUFBO1lBQ0gsZUFBYTtZQUFiLHdDQUFhO1lBVXpCLGVBQWE7WUFBYixrQ0FBYTtZQU1qQixlQUFzQjtZQUF0QiwwREFBc0I7WUFDekIsZUFBdUI7WUFBdkIsNENBQXVCOzs7U0RVdEMsZUFBZTt1RkFBZixlQUFlO2NBVDNCLFNBQVM7MkJBQ0UsYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO29CQUNKLEtBQUssRUFBRSxvQkFBb0I7aUJBQzVCOztzQkFtQkUsTUFBTTt1QkFBQyxhQUFhOztzQkFFcEIsTUFBTTt1QkFBQyxXQUFXOztzQkFFbEIsUUFBUTs7c0JBQUksTUFBTTt1QkFBQyxxQkFBcUI7d0JBbkJwQyxPQUFPO2tCQURiLEtBQUs7WUFVQyxLQUFLO2tCQURYLEtBQUs7WUFJQyxpQkFBaUI7a0JBRHZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIE9uSW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIE9uRGVzdHJveSxcbiAgSW5wdXQsXG4gIE9wdGlvbmFsLFxuICBJbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29uc3RydWN0b3IgfSBmcm9tICdAcnhhcC91dGlsaXRpZXMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YXAsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE1hdFNpZGVuYXYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcbmltcG9ydCB7IFVzZXJTZXJ2aWNlIH0gZnJvbSAnQHJ4YXAvYXV0aGVudGljYXRpb24nO1xuaW1wb3J0IHsgUlhBUF9IRUFERVJfQ09NUE9ORU5UIH0gZnJvbSAnLi4vdG9rZW5zJztcbmltcG9ydCB7IEhlYWRlclNlcnZpY2UgfSBmcm9tICdAcnhhcC9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBNYXRMZWdhY3lNZW51UGFuZWwgYXMgTWF0TWVudVBhbmVsIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGVnYWN5LW1lbnUnO1xuaW1wb3J0IHsgVGhlbWVQYWxldHRlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3J4YXAtaGVhZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2hlYWRlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAncnhhcC1sYXlvdXQtaGVhZGVyJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2lkZW5hdj86IE1hdFNpZGVuYXY7XG5cbiAgcHVibGljIGNvbXBvbmVudHM6IEFycmF5PENvbnN0cnVjdG9yPGFueT4+ID0gW107XG5cbiAgcHVibGljIHN1YnNjcmlwdGlvbnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgcHVibGljIGhhc1VzZXIkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb2xvcjogVGhlbWVQYWxldHRlID0gJ3ByaW1hcnknO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXR0aW5nc01lbnVQYW5lbD86IE1hdE1lbnVQYW5lbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KEhlYWRlclNlcnZpY2UpXG4gICAgcHVibGljIHJlYWRvbmx5IGhlYWRlckNvbXBvbmVudFNlcnZpY2U6IEhlYWRlclNlcnZpY2UsXG4gICAgQEluamVjdChVc2VyU2VydmljZSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZTxhbnk+LFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoUlhBUF9IRUFERVJfQ09NUE9ORU5UKSBwdWJsaWMgaGVhZGVyQ29tcG9uZW50OiBhbnlcbiAgKSB7XG4gICAgdGhpcy5oYXNVc2VyJCA9IHRoaXMudXNlclNlcnZpY2UudXNlciQucGlwZShtYXAoQm9vbGVhbikpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIHRoaXMudXBkYXRlQ29tcG9uZW50cygpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLmhlYWRlckNvbXBvbmVudFNlcnZpY2UudXBkYXRlJFxuICAgICAgICAucGlwZSh0YXAoKCkgPT4gdGhpcy51cGRhdGVDb21wb25lbnRzKCkpKVxuICAgICAgICAuc3Vic2NyaWJlKClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZUNvbXBvbmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5jb21wb25lbnRzID0gdGhpcy5oZWFkZXJDb21wb25lbnRTZXJ2aWNlLmdldENvbXBvbmVudHMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIiwiPG1hdC10b29sYmFyIFtuZ0NsYXNzXT1cInsgb3Blbjogc2lkZW5hdj8ub3BlbmVkIH1cIiBbY29sb3JdPVwiY29sb3JcIiBjbGFzcz1cIm1hdC1lbGV2YXRpb24tejNcIj5cbiAgPG1hdC10b29sYmFyLXJvdyAqbmdGb3I9XCJsZXQgaGVhZGVyQ29tcG9uZW50IG9mIGNvbXBvbmVudHNcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0NvbXBvbmVudE91dGxldD1cImhlYWRlckNvbXBvbmVudFwiPjwvbmctY29udGFpbmVyPlxuICA8L21hdC10b29sYmFyLXJvdz5cbiAgPG1hdC10b29sYmFyLXJvdz5cbiAgICA8ZGl2XG4gICAgICBmeExheW91dD1cInJvd1wiXG4gICAgICBmeExheW91dEFsaWduPVwic3BhY2UtYmV0d2VlbiBjZW50ZXJcIlxuICAgICAgZnhMYXlvdXRHYXA9XCIxNnB4XCJcbiAgICAgIGNsYXNzPVwiY29udGVudFwiXG4gICAgPlxuICAgICAgPHJ4YXAtc2lkZW5hdi10b2dnbGUtYnV0dG9uICpuZ0lmPVwic2lkZW5hdlwiIGZ4RmxleD1cIm5vZ3Jvd1wiIFtzaWRlbmF2XT1cInNpZGVuYXZcIj48L3J4YXAtc2lkZW5hdi10b2dnbGUtYnV0dG9uPlxuICAgICAgPGRpdiBmeEZsZXg9XCJncm93XCI+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDwvZGl2PlxuICAgICAgPHJ4YXAtbGFuZ3VhZ2Utc2VsZWN0b3IgZnhGbGV4PVwibm9ncm93XCI+PC9yeGFwLWxhbmd1YWdlLXNlbGVjdG9yPlxuICAgICAgPHJ4YXAtYXBwcy1idXR0b24gZnhGbGV4PVwibm9ncm93XCI+PC9yeGFwLWFwcHMtYnV0dG9uPlxuICAgICAgPHJ4YXAtdXNlci1wcm9maWxlLWljb24gKm5nSWY9XCJoYXNVc2VyJCB8IGFzeW5jXCIgZnhGbGV4PVwibm9ncm93XCI+PC9yeGFwLXVzZXItcHJvZmlsZS1pY29uPlxuICAgICAgPGRpdiBmeEZsZXg9XCJub2dyb3dcIiAqbmdJZj1cInNldHRpbmdzTWVudVBhbmVsXCI+XG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFttYXRNZW51VHJpZ2dlckZvcl09XCJzZXR0aW5nc01lbnVQYW5lbFwiPlxuICAgICAgICAgIDxtYXQtaWNvbj5zZXR0aW5nczwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8cnhhcC1zaWduLW91dCBmeEZsZXg9XCJub2dyb3dcIj48L3J4YXAtc2lnbi1vdXQ+XG4gICAgPC9kaXY+XG4gIDwvbWF0LXRvb2xiYXItcm93PlxuPC9tYXQtdG9vbGJhcj5cbjxyeGFwLW5hdmlnYXRpb24tcHJvZ3Jlc3MtYmFyPjwvcnhhcC1uYXZpZ2F0aW9uLXByb2dyZXNzLWJhcj5cbiJdfQ==
@@ -0,0 +1,70 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { HeaderComponent } from './header.component';
3
+ import { MatToolbarModule } from '@angular/material/toolbar';
4
+ import { SignOutComponentModule } from './sign-out/sign-out.component.module';
5
+ import { UserProfileIconComponentModule } from './user-profile-icon/user-profile-icon.component.module';
6
+ import { NavigationProgressBarComponentModule } from './navigation-progress-bar/navigation-progress-bar.component.module';
7
+ import { SidenavToggleButtonComponentModule } from './sidenav-toggle-button/sidenav-toggle-button.component.module';
8
+ import { ResetButtonComponentModule } from './reset-button/reset-button.component.module';
9
+ import { FlexLayoutModule } from '@angular/flex-layout';
10
+ import { CommonModule } from '@angular/common';
11
+ import { MatLegacyButtonModule as MatButtonModule } from '@angular/material/legacy-button';
12
+ import { MatIconModule } from '@angular/material/icon';
13
+ import { MatLegacyMenuModule as MatMenuModule } from '@angular/material/legacy-menu';
14
+ import { AppsButtonComponentModule } from './apps-button/apps-button.component.module';
15
+ import { LanguageSelectorComponentModule } from './language-selector/language-selector.component.module';
16
+ import * as i0 from "@angular/core";
17
+ class HeaderModule {
18
+ static { this.ɵfac = function HeaderModule_Factory(t) { return new (t || HeaderModule)(); }; }
19
+ static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: HeaderModule }); }
20
+ static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [MatToolbarModule,
21
+ SignOutComponentModule,
22
+ UserProfileIconComponentModule,
23
+ NavigationProgressBarComponentModule,
24
+ SidenavToggleButtonComponentModule,
25
+ ResetButtonComponentModule,
26
+ FlexLayoutModule,
27
+ CommonModule,
28
+ MatButtonModule,
29
+ MatIconModule,
30
+ MatMenuModule,
31
+ AppsButtonComponentModule,
32
+ LanguageSelectorComponentModule] }); }
33
+ }
34
+ export { HeaderModule };
35
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(HeaderModule, [{
36
+ type: NgModule,
37
+ args: [{
38
+ declarations: [HeaderComponent],
39
+ imports: [
40
+ MatToolbarModule,
41
+ SignOutComponentModule,
42
+ UserProfileIconComponentModule,
43
+ NavigationProgressBarComponentModule,
44
+ SidenavToggleButtonComponentModule,
45
+ ResetButtonComponentModule,
46
+ FlexLayoutModule,
47
+ CommonModule,
48
+ MatButtonModule,
49
+ MatIconModule,
50
+ MatMenuModule,
51
+ AppsButtonComponentModule,
52
+ LanguageSelectorComponentModule
53
+ ],
54
+ exports: [HeaderComponent]
55
+ }]
56
+ }], null, null); })();
57
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(HeaderModule, { declarations: [HeaderComponent], imports: [MatToolbarModule,
58
+ SignOutComponentModule,
59
+ UserProfileIconComponentModule,
60
+ NavigationProgressBarComponentModule,
61
+ SidenavToggleButtonComponentModule,
62
+ ResetButtonComponentModule,
63
+ FlexLayoutModule,
64
+ CommonModule,
65
+ MatButtonModule,
66
+ MatIconModule,
67
+ MatMenuModule,
68
+ AppsButtonComponentModule,
69
+ LanguageSelectorComponentModule], exports: [HeaderComponent] }); })();
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xheW91dC9zcmMvbGliL2hlYWRlci9oZWFkZXIuY29tcG9uZW50Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUN4RyxPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQztBQUMxSCxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUNwSCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUMxRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixJQUFJLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsbUJBQW1CLElBQUksYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDckYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDdkYsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sd0RBQXdELENBQUM7O0FBR3pHLE1BbUJhLFlBQVk7NkVBQVosWUFBWTttRUFBWixZQUFZO3VFQWhCckIsZ0JBQWdCO1lBQ2hCLHNCQUFzQjtZQUN0Qiw4QkFBOEI7WUFDOUIsb0NBQW9DO1lBQ3BDLGtDQUFrQztZQUNsQywwQkFBMEI7WUFDMUIsZ0JBQWdCO1lBQ2hCLFlBQVk7WUFDWixlQUFlO1lBQ2YsYUFBYTtZQUNiLGFBQWE7WUFDYix5QkFBeUI7WUFDekIsK0JBQStCOztTQUl0QixZQUFZO3VGQUFaLFlBQVk7Y0FuQnhCLFFBQVE7ZUFBQztnQkFDUixZQUFZLEVBQUUsQ0FBRSxlQUFlLENBQUU7Z0JBQ2pDLE9BQU8sRUFBRTtvQkFDUCxnQkFBZ0I7b0JBQ2hCLHNCQUFzQjtvQkFDdEIsOEJBQThCO29CQUM5QixvQ0FBb0M7b0JBQ3BDLGtDQUFrQztvQkFDbEMsMEJBQTBCO29CQUMxQixnQkFBZ0I7b0JBQ2hCLFlBQVk7b0JBQ1osZUFBZTtvQkFDZixhQUFhO29CQUNiLGFBQWE7b0JBQ2IseUJBQXlCO29CQUN6QiwrQkFBK0I7aUJBQ2hDO2dCQUNELE9BQU8sRUFBTyxDQUFFLGVBQWUsQ0FBRTthQUNsQzs7d0ZBQ1ksWUFBWSxtQkFsQlAsZUFBZSxhQUU3QixnQkFBZ0I7UUFDaEIsc0JBQXNCO1FBQ3RCLDhCQUE4QjtRQUM5QixvQ0FBb0M7UUFDcEMsa0NBQWtDO1FBQ2xDLDBCQUEwQjtRQUMxQixnQkFBZ0I7UUFDaEIsWUFBWTtRQUNaLGVBQWU7UUFDZixhQUFhO1FBQ2IsYUFBYTtRQUNiLHlCQUF5QjtRQUN6QiwrQkFBK0IsYUFFakIsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2hlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0VG9vbGJhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2xiYXInO1xuaW1wb3J0IHsgU2lnbk91dENvbXBvbmVudE1vZHVsZSB9IGZyb20gJy4vc2lnbi1vdXQvc2lnbi1vdXQuY29tcG9uZW50Lm1vZHVsZSc7XG5pbXBvcnQgeyBVc2VyUHJvZmlsZUljb25Db21wb25lbnRNb2R1bGUgfSBmcm9tICcuL3VzZXItcHJvZmlsZS1pY29uL3VzZXItcHJvZmlsZS1pY29uLmNvbXBvbmVudC5tb2R1bGUnO1xuaW1wb3J0IHsgTmF2aWdhdGlvblByb2dyZXNzQmFyQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci5jb21wb25lbnQubW9kdWxlJztcbmltcG9ydCB7IFNpZGVuYXZUb2dnbGVCdXR0b25Db21wb25lbnRNb2R1bGUgfSBmcm9tICcuL3NpZGVuYXYtdG9nZ2xlLWJ1dHRvbi9zaWRlbmF2LXRvZ2dsZS1idXR0b24uY29tcG9uZW50Lm1vZHVsZSc7XG5pbXBvcnQgeyBSZXNldEJ1dHRvbkNvbXBvbmVudE1vZHVsZSB9IGZyb20gJy4vcmVzZXQtYnV0dG9uL3Jlc2V0LWJ1dHRvbi5jb21wb25lbnQubW9kdWxlJztcbmltcG9ydCB7IEZsZXhMYXlvdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mbGV4LWxheW91dCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0TGVnYWN5QnV0dG9uTW9kdWxlIGFzIE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0TGVnYWN5TWVudU1vZHVsZSBhcyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGVnYWN5LW1lbnUnO1xuaW1wb3J0IHsgQXBwc0J1dHRvbkNvbXBvbmVudE1vZHVsZSB9IGZyb20gJy4vYXBwcy1idXR0b24vYXBwcy1idXR0b24uY29tcG9uZW50Lm1vZHVsZSc7XG5pbXBvcnQgeyBMYW5ndWFnZVNlbGVjdG9yQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi9sYW5ndWFnZS1zZWxlY3Rvci9sYW5ndWFnZS1zZWxlY3Rvci5jb21wb25lbnQubW9kdWxlJztcblxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFsgSGVhZGVyQ29tcG9uZW50IF0sXG4gIGltcG9ydHM6IFtcbiAgICBNYXRUb29sYmFyTW9kdWxlLFxuICAgIFNpZ25PdXRDb21wb25lbnRNb2R1bGUsXG4gICAgVXNlclByb2ZpbGVJY29uQ29tcG9uZW50TW9kdWxlLFxuICAgIE5hdmlnYXRpb25Qcm9ncmVzc0JhckNvbXBvbmVudE1vZHVsZSxcbiAgICBTaWRlbmF2VG9nZ2xlQnV0dG9uQ29tcG9uZW50TW9kdWxlLFxuICAgIFJlc2V0QnV0dG9uQ29tcG9uZW50TW9kdWxlLFxuICAgIEZsZXhMYXlvdXRNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdE1lbnVNb2R1bGUsXG4gICAgQXBwc0J1dHRvbkNvbXBvbmVudE1vZHVsZSxcbiAgICBMYW5ndWFnZVNlbGVjdG9yQ29tcG9uZW50TW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6ICAgICAgWyBIZWFkZXJDb21wb25lbnQgXVxufSlcbmV4cG9ydCBjbGFzcyBIZWFkZXJNb2R1bGUge31cbiJdfQ==