@rxap/layout 16.0.0-dev.0 → 16.0.0-dev.10

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 (111) hide show
  1. package/CHANGELOG.md +378 -0
  2. package/LICENSE +621 -21
  3. package/LICENSE.md +621 -0
  4. package/README.md +7 -22
  5. package/esm2022/index.mjs +5 -20
  6. package/esm2022/lib/app-url.service.mjs +64 -0
  7. package/esm2022/lib/footer/footer.component.mjs +13 -42
  8. package/esm2022/lib/footer.directive.mjs +21 -35
  9. package/esm2022/lib/header/apps-button/apps-button.component.mjs +42 -101
  10. package/esm2022/lib/header/header.component.mjs +66 -108
  11. package/esm2022/lib/header/language-selector/language-selector.component.mjs +30 -108
  12. package/esm2022/lib/header/navigation-progress-bar/navigation-progress-bar.component.mjs +22 -26
  13. package/esm2022/lib/header/reset-button/reset-button.component.mjs +16 -21
  14. package/esm2022/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.mjs +20 -36
  15. package/esm2022/lib/header/sign-out/sign-out.component.mjs +19 -28
  16. package/esm2022/lib/header/user-profile-icon/user-profile-icon.component.mjs +39 -109
  17. package/esm2022/lib/i18n-check.guard.mjs +34 -0
  18. package/esm2022/lib/i18n.service.mjs +36 -0
  19. package/esm2022/lib/language-selector.service.mjs +34 -0
  20. package/esm2022/lib/layout/layout.component.mjs +58 -72
  21. package/esm2022/lib/layout/layout.component.service.mjs +21 -22
  22. package/esm2022/lib/navigation/navigation-item/navigation-item.component.mjs +120 -234
  23. package/esm2022/lib/navigation/navigation-item.mjs +4 -4
  24. package/esm2022/lib/navigation/navigation.component.mjs +47 -91
  25. package/esm2022/lib/navigation/navigation.service.mjs +28 -27
  26. package/esm2022/lib/navigation/replace-router-paths.service.mjs +9 -10
  27. package/esm2022/lib/sidenav/sidenav-footer.directive.mjs +15 -15
  28. package/esm2022/lib/sidenav/sidenav-header.directive.mjs +15 -15
  29. package/esm2022/lib/sidenav/sidenav.component.mjs +40 -112
  30. package/esm2022/lib/sidenav/sidenav.component.service.mjs +8 -9
  31. package/esm2022/lib/sidenav/version/version.component.mjs +17 -44
  32. package/esm2022/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.mjs +19 -40
  33. package/esm2022/lib/tokens.mjs +1 -1
  34. package/esm2022/lib/types.mjs +1 -1
  35. package/esm2022/lib/window-container-sidenav/window-container-sidenav.component.mjs +18 -36
  36. package/esm2022/rxap-layout.mjs +1 -1
  37. package/fesm2022/rxap-layout.mjs +761 -1845
  38. package/fesm2022/rxap-layout.mjs.map +1 -1
  39. package/index.d.ts +4 -17
  40. package/lib/app-url.service.d.ts +26 -0
  41. package/lib/footer/footer.component.d.ts +1 -1
  42. package/lib/footer.directive.d.ts +2 -7
  43. package/lib/header/apps-button/apps-button.component.d.ts +13 -21
  44. package/lib/header/header.component.d.ts +8 -11
  45. package/lib/header/language-selector/language-selector.component.d.ts +2 -17
  46. package/lib/header/navigation-progress-bar/navigation-progress-bar.component.d.ts +1 -1
  47. package/lib/header/reset-button/reset-button.component.d.ts +1 -1
  48. package/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.d.ts +1 -1
  49. package/lib/header/sign-out/sign-out.component.d.ts +5 -5
  50. package/lib/header/user-profile-icon/user-profile-icon.component.d.ts +12 -8
  51. package/lib/i18n-check.guard.d.ts +14 -0
  52. package/lib/i18n.service.d.ts +12 -0
  53. package/lib/language-selector.service.d.ts +15 -0
  54. package/lib/layout/layout.component.d.ts +8 -4
  55. package/lib/navigation/navigation-item/navigation-item.component.d.ts +11 -18
  56. package/lib/navigation/navigation-item.d.ts +1 -1
  57. package/lib/navigation/navigation.component.d.ts +6 -6
  58. package/lib/navigation/navigation.service.d.ts +1 -1
  59. package/lib/sidenav/sidenav-footer.directive.d.ts +1 -1
  60. package/lib/sidenav/sidenav-header.directive.d.ts +1 -1
  61. package/lib/sidenav/sidenav.component.d.ts +1 -1
  62. package/lib/sidenav/version/version.component.d.ts +3 -3
  63. package/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.d.ts +3 -5
  64. package/lib/types.d.ts +3 -2
  65. package/lib/window-container-sidenav/window-container-sidenav.component.d.ts +2 -2
  66. package/package.json +90 -67
  67. package/theme.css +1 -0
  68. package/collection.json +0 -10
  69. package/esm2022/lib/footer/footer.component.module.mjs +0 -30
  70. package/esm2022/lib/header/apps-button/apps-button.component.module.mjs +0 -46
  71. package/esm2022/lib/header/header.component.module.mjs +0 -70
  72. package/esm2022/lib/header/language-selector/language-selector.component.module.mjs +0 -30
  73. package/esm2022/lib/header/navigation-progress-bar/navigation-progress-bar.component.module.mjs +0 -26
  74. package/esm2022/lib/header/reset-button/reset-button.component.module.mjs +0 -26
  75. package/esm2022/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.module.mjs +0 -30
  76. package/esm2022/lib/header/sign-out/sign-out.component.module.mjs +0 -30
  77. package/esm2022/lib/header/user-profile-icon/user-profile-icon.component.module.mjs +0 -38
  78. package/esm2022/lib/layout/layout.component.module.mjs +0 -70
  79. package/esm2022/lib/navigation/navigation.component.module.mjs +0 -71
  80. package/esm2022/lib/navigation/replace-router-paths.pipe.mjs +0 -36
  81. package/esm2022/lib/sidenav/sidenav.component.module.mjs +0 -44
  82. package/esm2022/lib/sidenav/version/version.component.module.mjs +0 -26
  83. package/esm2022/lib/sidenav-content/sidenav-content.component.mjs +0 -46
  84. package/esm2022/lib/sidenav-content/sidenav-content.component.module.mjs +0 -26
  85. package/esm2022/lib/sidenav-content/sidenav-content.component.service.mjs +0 -37
  86. package/esm2022/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.module.mjs +0 -30
  87. package/esm2022/lib/window-container-sidenav/window-container-sidenav.component.module.mjs +0 -30
  88. package/lib/footer/footer.component.module.d.ts +0 -10
  89. package/lib/header/apps-button/apps-button.component.module.d.ts +0 -14
  90. package/lib/header/header.component.module.d.ts +0 -20
  91. package/lib/header/language-selector/language-selector.component.module.d.ts +0 -10
  92. package/lib/header/navigation-progress-bar/navigation-progress-bar.component.module.d.ts +0 -9
  93. package/lib/header/reset-button/reset-button.component.module.d.ts +0 -9
  94. package/lib/header/sidenav-toggle-button/sidenav-toggle-button.component.module.d.ts +0 -10
  95. package/lib/header/sign-out/sign-out.component.module.d.ts +0 -10
  96. package/lib/header/user-profile-icon/user-profile-icon.component.module.d.ts +0 -12
  97. package/lib/layout/layout.component.module.d.ts +0 -20
  98. package/lib/navigation/navigation.component.module.d.ts +0 -19
  99. package/lib/navigation/replace-router-paths.pipe.d.ts +0 -16
  100. package/lib/sidenav/sidenav.component.module.d.ts +0 -15
  101. package/lib/sidenav/version/version.component.module.d.ts +0 -9
  102. package/lib/sidenav-content/sidenav-content.component.d.ts +0 -12
  103. package/lib/sidenav-content/sidenav-content.component.module.d.ts +0 -9
  104. package/lib/sidenav-content/sidenav-content.component.service.d.ts +0 -15
  105. package/lib/toggle-window-sidenav-button/toggle-window-sidenav-button.component.module.d.ts +0 -10
  106. package/lib/window-container-sidenav/window-container-sidenav.component.module.d.ts +0 -10
  107. package/migration.json +0 -4
  108. package/src/schematics/ng-add/index.d.ts +0 -2
  109. package/src/schematics/ng-add/index.js +0 -8
  110. package/src/schematics/ng-add/index.js.map +0 -1
  111. package/src/schematics/ng-add/schema.json +0 -7
@@ -1,79 +1,65 @@
1
- import { Component, ChangeDetectionStrategy, ViewChild } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, Inject, ViewChild, } from '@angular/core';
2
+ import { MatSidenav, MatSidenavModule, } from '@angular/material/sidenav';
3
+ import { DetermineReleaseName, RXAP_ENVIRONMENT, } from '@rxap/environment';
4
+ import { HeaderComponent } from '../header/header.component';
5
+ import { AsyncPipe, NgIf, NgOptimizedImage, } from '@angular/common';
6
+ import { FlexLayoutModule } from '@angular/flex-layout';
7
+ import { MatIconModule } from '@angular/material/icon';
8
+ import { MatButtonModule } from '@angular/material/button';
9
+ import { RouterLink, RouterOutlet, } from '@angular/router';
10
+ import { MatMenuModule } from '@angular/material/menu';
11
+ import { FooterComponent } from '../footer/footer.component';
2
12
  import { LayoutComponentService } from './layout.component.service';
3
- import { MatSidenav } from '@angular/material/sidenav';
13
+ import { NavigationComponent } from '../navigation/navigation.component';
4
14
  import * as i0 from "@angular/core";
5
15
  import * as i1 from "./layout.component.service";
6
16
  import * as i2 from "@angular/material/sidenav";
7
- import * as i3 from "../footer/footer.component";
8
- import * as i4 from "../header/header.component";
9
- import * as i5 from "../sidenav/sidenav.component";
10
- import * as i6 from "../sidenav/sidenav-header.directive";
11
- import * as i7 from "../sidenav-content/sidenav-content.component";
12
- import * as i8 from "../window-container-sidenav/window-container-sidenav.component";
13
- import * as i9 from "../toggle-window-sidenav-button/toggle-window-sidenav-button.component";
14
- import * as i10 from "@angular/router";
15
- import * as i11 from "@angular/common";
16
- const _c0 = function () { return ["/"]; };
17
- function LayoutComponent_ng_template_8_Template(rf, ctx) { if (rf & 1) {
18
- i0.ɵɵelement(0, "img", 9);
19
- } if (rf & 2) {
20
- const ctx_r0 = i0.ɵɵnextContext();
21
- i0.ɵɵproperty("routerLink", i0.ɵɵpureFunction0(3, _c0))("width", ctx_r0.layoutComponentService.logo.width)("src", ctx_r0.layoutComponentService.logo.src, i0.ɵɵsanitizeUrl);
22
- } }
23
- const _c1 = ["*"];
24
- class LayoutComponent {
25
- constructor(layoutComponentService) {
17
+ import * as i3 from "@angular/flex-layout/extended";
18
+ import * as i4 from "@angular/material/icon";
19
+ import * as i5 from "@angular/material/button";
20
+ export class LayoutComponent {
21
+ constructor(layoutComponentService, environment) {
26
22
  this.layoutComponentService = layoutComponentService;
27
- this.openWindowSidenav = false;
23
+ this.environment = environment;
24
+ this.sidenavMode = 'over';
28
25
  }
29
- static { this.ɵfac = function LayoutComponent_Factory(t) { return new (t || LayoutComponent)(i0.ɵɵdirectiveInject(i1.LayoutComponentService)); }; }
30
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LayoutComponent, selectors: [["rxap-layout"]], viewQuery: function LayoutComponent_Query(rf, ctx) { if (rf & 1) {
31
- i0.ɵɵviewQuery(MatSidenav, 7);
32
- } if (rf & 2) {
33
- let _t;
34
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.sidenav = _t.first);
35
- } }, ngContentSelectors: _c1, decls: 18, vars: 24, consts: [[1, "header", 3, "sidenav"], ["autosize", "", 1, "container"], [1, "sidenav", 3, "fixedBottomGap", "fixedInViewport", "fixedTopGap", "mode", "opened"], ["rxapSidenavHeader", ""], [1, "content"], [3, "sidenav"], [3, "openWindowSidenav", "openWindowSidenavChange"], ["mode", "side", "position", "end", 1, "window-container-sidenav", 3, "fixedBottomGap", "fixedInViewport", "fixedTopGap", "opened"], [1, "footer"], ["alt", "logo", 1, "logo", 3, "routerLink", "width", "src"]], template: function LayoutComponent_Template(rf, ctx) { if (rf & 1) {
36
- i0.ɵɵprojectionDef();
37
- i0.ɵɵelement(0, "rxap-header", 0);
38
- i0.ɵɵelementStart(1, "mat-sidenav-container", 1)(2, "mat-sidenav", 2);
39
- i0.ɵɵpipe(3, "async");
40
- i0.ɵɵpipe(4, "async");
41
- i0.ɵɵpipe(5, "async");
42
- i0.ɵɵpipe(6, "async");
43
- i0.ɵɵelementStart(7, "rxap-sidenav");
44
- i0.ɵɵtemplate(8, LayoutComponent_ng_template_8_Template, 1, 4, "ng-template", 3);
45
- i0.ɵɵelementEnd()();
46
- i0.ɵɵelementStart(9, "mat-sidenav-content", 4)(10, "rxap-sidenav-content", 5);
47
- i0.ɵɵprojection(11);
48
- i0.ɵɵelementStart(12, "rxap-toggle-window-sidenav-button", 6);
49
- i0.ɵɵlistener("openWindowSidenavChange", function LayoutComponent_Template_rxap_toggle_window_sidenav_button_openWindowSidenavChange_12_listener($event) { return ctx.openWindowSidenav = $event; });
50
- i0.ɵɵelementEnd()()();
51
- i0.ɵɵelementStart(13, "mat-sidenav", 7);
52
- i0.ɵɵpipe(14, "async");
53
- i0.ɵɵpipe(15, "async");
54
- i0.ɵɵelement(16, "rxap-window-container-sidenav");
55
- i0.ɵɵelementEnd()();
56
- i0.ɵɵelement(17, "rxap-footer", 8);
57
- } if (rf & 2) {
58
- let tmp_4_0;
59
- let tmp_5_0;
60
- i0.ɵɵproperty("sidenav", ctx.sidenav);
61
- i0.ɵɵadvance(2);
62
- i0.ɵɵproperty("fixedBottomGap", i0.ɵɵpipeBind1(3, 12, ctx.layoutComponentService.fixedBottomGap$))("fixedInViewport", true)("fixedTopGap", i0.ɵɵpipeBind1(4, 14, ctx.layoutComponentService.fixedTopGap$))("mode", (tmp_4_0 = i0.ɵɵpipeBind1(5, 16, ctx.layoutComponentService.mode$)) !== null && tmp_4_0 !== undefined ? tmp_4_0 : "side")("opened", (tmp_5_0 = i0.ɵɵpipeBind1(6, 18, ctx.layoutComponentService.opened$)) !== null && tmp_5_0 !== undefined ? tmp_5_0 : true);
63
- i0.ɵɵadvance(8);
64
- i0.ɵɵproperty("sidenav", ctx.sidenav);
65
- i0.ɵɵadvance(2);
66
- i0.ɵɵproperty("openWindowSidenav", ctx.openWindowSidenav);
67
- i0.ɵɵadvance(1);
68
- i0.ɵɵproperty("fixedBottomGap", i0.ɵɵpipeBind1(14, 20, ctx.layoutComponentService.fixedBottomGap$))("fixedInViewport", true)("fixedTopGap", i0.ɵɵpipeBind1(15, 22, ctx.layoutComponentService.fixedTopGap$))("opened", ctx.openWindowSidenav);
69
- } }, dependencies: [i2.MatSidenav, i2.MatSidenavContainer, i2.MatSidenavContent, i3.FooterComponent, i4.HeaderComponent, i5.SidenavComponent, i6.SidenavHeaderDirective, i7.SidenavContentComponent, i8.WindowContainerSidenavComponent, i9.ToggleWindowSidenavButtonComponent, i10.RouterLink, i11.AsyncPipe], styles: [".container[_ngcontent-%COMP%], .content[_ngcontent-%COMP%]{height:100%}.sidenav[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;width:auto}.sidenav[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%]{padding:16px}.footer[_ngcontent-%COMP%]{position:fixed;bottom:0;left:0;right:0;z-index:100}.header[_ngcontent-%COMP%]{position:fixed;top:0;left:0;right:0;z-index:100}"], changeDetection: 0 }); }
26
+ get release() {
27
+ return DetermineReleaseName(this.environment);
28
+ }
29
+ toggleSidenavMode() {
30
+ if (this.sidenavMode === 'over') {
31
+ this.sidenavMode = 'side';
32
+ this.sidenav.open();
33
+ }
34
+ else {
35
+ this.sidenavMode = 'over';
36
+ }
37
+ }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: LayoutComponent, deps: [{ token: i1.LayoutComponentService }, { token: RXAP_ENVIRONMENT }], target: i0.ɵɵFactoryTarget.Component }); }
39
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: LayoutComponent, isStandalone: true, selector: "rxap-layout", viewQueries: [{ propertyName: "sidenav", first: true, predicate: MatSidenav, descendants: true, static: true }], ngImport: i0, template: "<div class=\"flex flex-col h-screen justify-between\">\n <rxap-header [sidenav]=\"sidenav\" class=\"z-10 w-full fixed top-0\"></rxap-header>\n <mat-sidenav-container [ngClass]=\"{\n 'mb-16': (layoutComponentService.fixedBottomGap$ | async) === 64,\n 'mb-32': (layoutComponentService.fixedBottomGap$ | async) === 128,\n }\" class=\"grow mt-16\">\n <mat-sidenav\n #matSidenav=\"matSidenav\"\n (mouseenter)=\"sidenavMode === 'over' && matSidenav.open()\"\n (mouseleave)=\"sidenavMode === 'over' && matSidenav.close()\"\n [fixedBottomGap]=\"layoutComponentService.fixedBottomGap$ | async\"\n [fixedInViewport]=\"true\"\n [fixedTopGap]=\"layoutComponentService.fixedTopGap$ | async\"\n [mode]=\"sidenavMode\"\n [opened]=\"false\"\n class=\"sidenav\"\n >\n <div class=\"h-full py-2 flex flex-col items-center gap-y-5 justify-items-stretch\">\n\n <div (click)=\"toggleSidenavMode()\"\n class=\"pl-2 pr-2 self-stretch grow-0 flex flex-row justify-between items-center\">\n <span class=\"text-lg\" i18n>Navigation</span>\n <button mat-icon-button>\n <mat-icon *ngIf=\"sidenavMode === 'over'\">radio_button_unchecked</mat-icon>\n <mat-icon *ngIf=\"sidenavMode === 'side'\">radio_button_checked</mat-icon>\n </button>\n </div>\n\n <ul class=\"grow self-stretch\" root rxap-navigation></ul>\n\n <img\n [src]=\"layoutComponentService.logo.src ?? 'https://via.placeholder.com/256x128px'\"\n [routerLink]=\"['/']\"\n [width]=\"layoutComponentService.logo.width ?? 256\"\n alt=\"logo\"\n class=\"grow-0 mx-16\"\n />\n <div class=\"grow-0 px-16\">\n <span>{{release}}</span>\n </div>\n </div>\n </mat-sidenav>\n <mat-sidenav-content\n [ngClass]=\"{ opened: matSidenav.opened, side: sidenavMode === 'side' }\"\n class=\"ml-16 p-4\"\n >\n <router-outlet></router-outlet>\n </mat-sidenav-content>\n </mat-sidenav-container>\n <rxap-footer class=\"z-10 w-full fixed bottom-0\"></rxap-footer>\n</div>\n<!--<rxap-window-task-bar-container></rxap-window-task-bar-container>-->\n", styles: [":host .sidenav:not(.mat-drawer-opened){transform:translate(calc(-100% + 64px))!important;visibility:visible!important;box-shadow:inherit!important;transition-property:transform;transition-delay:.25s;display:flex;border-right:solid 1px rgba(0,0,0,.12)}:host .sidenav ::ng-deep .mat-drawer-inner-container::-webkit-scrollbar{display:none}.footer{position:fixed;bottom:0;left:0;right:0;z-index:100}.header{position:fixed;top:0;left:0;right:0;z-index:100}.task-bar{position:fixed;bottom:0;right:0;left:0;z-index:100}\n"], dependencies: [{ kind: "component", type: HeaderComponent, selector: "rxap-header", inputs: ["sidenav", "color"] }, { kind: "ngmodule", type: MatSidenavModule }, { kind: "component", type: i2.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { kind: "component", type: i2.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { kind: "component", type: i2.MatSidenavContent, selector: "mat-sidenav-content" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: FlexLayoutModule }, { kind: "directive", type: i3.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FooterComponent, selector: "rxap-footer" }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: NavigationComponent, selector: "ul[rxap-navigation]", inputs: ["items", "level", "root"] }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
70
40
  }
71
- export { LayoutComponent };
72
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LayoutComponent, [{
73
- type: Component,
74
- args: [{ selector: 'rxap-layout', changeDetection: ChangeDetectionStrategy.OnPush, template: "<rxap-header [sidenav]=\"sidenav\" class=\"header\"></rxap-header>\n<mat-sidenav-container autosize class=\"container\">\n <mat-sidenav\n [fixedBottomGap]=\"layoutComponentService.fixedBottomGap$ | async\"\n [fixedInViewport]=\"true\"\n [fixedTopGap]=\"layoutComponentService.fixedTopGap$ | async\"\n [mode]=\"(layoutComponentService.mode$ | async) ?? 'side'\"\n [opened]=\"(layoutComponentService.opened$ | async) ?? true\"\n class=\"sidenav\"\n >\n <rxap-sidenav>\n <ng-template rxapSidenavHeader>\n <img\n [routerLink]=\"['/']\"\n alt=\"logo\"\n class=\"logo\"\n [width]=\"layoutComponentService.logo.width\"\n [src]=\"layoutComponentService.logo.src\"\n />\n </ng-template>\n </rxap-sidenav>\n </mat-sidenav>\n <mat-sidenav-content class=\"content\">\n <rxap-sidenav-content [sidenav]=\"sidenav\">\n <ng-content></ng-content>\n <rxap-toggle-window-sidenav-button [(openWindowSidenav)]=\"openWindowSidenav\"></rxap-toggle-window-sidenav-button>\n </rxap-sidenav-content>\n </mat-sidenav-content>\n <mat-sidenav\n [fixedBottomGap]=\"layoutComponentService.fixedBottomGap$ | async\"\n [fixedInViewport]=\"true\"\n [fixedTopGap]=\"layoutComponentService.fixedTopGap$ | async\"\n [opened]=\"openWindowSidenav\"\n mode=\"side\"\n class=\"window-container-sidenav\"\n position=\"end\"\n >\n <rxap-window-container-sidenav></rxap-window-container-sidenav>\n </mat-sidenav>\n</mat-sidenav-container>\n<rxap-footer class=\"footer\"></rxap-footer>\n", styles: [".container,.content{height:100%}.sidenav{display:flex;align-items:center;justify-content:center;width:auto}.sidenav .logo{padding:16px}.footer{position:fixed;bottom:0;left:0;right:0;z-index:100}.header{position:fixed;top:0;left:0;right:0;z-index:100}\n"] }]
75
- }], function () { return [{ type: i1.LayoutComponentService }]; }, { sidenav: [{
76
- type: ViewChild,
77
- args: [MatSidenav, { static: true }]
78
- }] }); })();
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbGF5b3V0L3NyYy9saWIvbGF5b3V0L2xheW91dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xheW91dC9zcmMvbGliL2xheW91dC9sYXlvdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0lDTS9DLHlCQU1FOzs7SUFMQSx1REFBb0IsbURBQUEsaUVBQUE7OztBREw5QixNQU1hLGVBQWU7SUFNMUIsWUFDa0Isc0JBQThDO1FBQTlDLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFMekQsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO0lBTTdCLENBQUM7Z0ZBUk0sZUFBZTtvRUFBZixlQUFlOzJCQUlmLFVBQVU7Ozs7OztZQ2xCdkIsaUNBQThEO1lBQzlELGdEQUFrRCxxQkFBQTs7Ozs7WUFTOUMsb0NBQWM7WUFDWixnRkFRYztZQUNoQixpQkFBZSxFQUFBO1lBRWpCLDhDQUFxQywrQkFBQTtZQUVqQyxtQkFBeUI7WUFDekIsNkRBQTZFO1lBQTFDLG9NQUF5QztZQUFDLGlCQUFvQyxFQUFBLEVBQUE7WUFHckgsdUNBUUM7OztZQUNDLGlEQUErRDtZQUNqRSxpQkFBYyxFQUFBO1lBRWhCLGtDQUEwQzs7OztZQXhDN0IscUNBQW1CO1lBRzVCLGVBQWlFO1lBQWpFLGtHQUFpRSx5QkFBQSwrRUFBQSxrSUFBQSxvSUFBQTtZQW9CM0MsZUFBbUI7WUFBbkIscUNBQW1CO1lBRUosZUFBeUM7WUFBekMseURBQXlDO1lBSTlFLGVBQWlFO1lBQWpFLG1HQUFpRSx5QkFBQSxnRkFBQSxpQ0FBQTs7O1NEZnhELGVBQWU7dUZBQWYsZUFBZTtjQU4zQixTQUFTOzJCQUNTLGFBQWEsbUJBR2IsdUJBQXVCLENBQUMsTUFBTTt5RUFNQyxPQUFPO2tCQUF0RCxTQUFTO21CQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMYXlvdXRDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi9sYXlvdXQuY29tcG9uZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgTWF0U2lkZW5hdiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICAgICAgICAncnhhcC1sYXlvdXQnLFxuICB0ZW1wbGF0ZVVybDogICAgICcuL2xheW91dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogICAgICAgWyAnLi9sYXlvdXQuY29tcG9uZW50LnNjc3MnIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBMYXlvdXRDb21wb25lbnQge1xuXG4gIHB1YmxpYyBvcGVuV2luZG93U2lkZW5hdiA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGQoTWF0U2lkZW5hdiwgeyBzdGF0aWM6IHRydWUgfSkgcHVibGljIHNpZGVuYXYhOiBNYXRTaWRlbmF2O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBsYXlvdXRDb21wb25lbnRTZXJ2aWNlOiBMYXlvdXRDb21wb25lbnRTZXJ2aWNlLFxuICApIHsgfVxuXG59XG4iLCI8cnhhcC1oZWFkZXIgW3NpZGVuYXZdPVwic2lkZW5hdlwiIGNsYXNzPVwiaGVhZGVyXCI+PC9yeGFwLWhlYWRlcj5cbjxtYXQtc2lkZW5hdi1jb250YWluZXIgYXV0b3NpemUgY2xhc3M9XCJjb250YWluZXJcIj5cbiAgPG1hdC1zaWRlbmF2XG4gICAgW2ZpeGVkQm90dG9tR2FwXT1cImxheW91dENvbXBvbmVudFNlcnZpY2UuZml4ZWRCb3R0b21HYXAkIHwgYXN5bmNcIlxuICAgIFtmaXhlZEluVmlld3BvcnRdPVwidHJ1ZVwiXG4gICAgW2ZpeGVkVG9wR2FwXT1cImxheW91dENvbXBvbmVudFNlcnZpY2UuZml4ZWRUb3BHYXAkIHwgYXN5bmNcIlxuICAgIFttb2RlXT1cIihsYXlvdXRDb21wb25lbnRTZXJ2aWNlLm1vZGUkIHwgYXN5bmMpID8/ICdzaWRlJ1wiXG4gICAgW29wZW5lZF09XCIobGF5b3V0Q29tcG9uZW50U2VydmljZS5vcGVuZWQkIHwgYXN5bmMpID8/IHRydWVcIlxuICAgIGNsYXNzPVwic2lkZW5hdlwiXG4gID5cbiAgICA8cnhhcC1zaWRlbmF2PlxuICAgICAgPG5nLXRlbXBsYXRlIHJ4YXBTaWRlbmF2SGVhZGVyPlxuICAgICAgICA8aW1nXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwiWycvJ11cIlxuICAgICAgICAgIGFsdD1cImxvZ29cIlxuICAgICAgICAgIGNsYXNzPVwibG9nb1wiXG4gICAgICAgICAgW3dpZHRoXT1cImxheW91dENvbXBvbmVudFNlcnZpY2UubG9nby53aWR0aFwiXG4gICAgICAgICAgW3NyY109XCJsYXlvdXRDb21wb25lbnRTZXJ2aWNlLmxvZ28uc3JjXCJcbiAgICAgICAgLz5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9yeGFwLXNpZGVuYXY+XG4gIDwvbWF0LXNpZGVuYXY+XG4gIDxtYXQtc2lkZW5hdi1jb250ZW50IGNsYXNzPVwiY29udGVudFwiPlxuICAgIDxyeGFwLXNpZGVuYXYtY29udGVudCBbc2lkZW5hdl09XCJzaWRlbmF2XCI+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICA8cnhhcC10b2dnbGUtd2luZG93LXNpZGVuYXYtYnV0dG9uIFsob3BlbldpbmRvd1NpZGVuYXYpXT1cIm9wZW5XaW5kb3dTaWRlbmF2XCI+PC9yeGFwLXRvZ2dsZS13aW5kb3ctc2lkZW5hdi1idXR0b24+XG4gICAgPC9yeGFwLXNpZGVuYXYtY29udGVudD5cbiAgPC9tYXQtc2lkZW5hdi1jb250ZW50PlxuICA8bWF0LXNpZGVuYXZcbiAgICBbZml4ZWRCb3R0b21HYXBdPVwibGF5b3V0Q29tcG9uZW50U2VydmljZS5maXhlZEJvdHRvbUdhcCQgfCBhc3luY1wiXG4gICAgW2ZpeGVkSW5WaWV3cG9ydF09XCJ0cnVlXCJcbiAgICBbZml4ZWRUb3BHYXBdPVwibGF5b3V0Q29tcG9uZW50U2VydmljZS5maXhlZFRvcEdhcCQgfCBhc3luY1wiXG4gICAgW29wZW5lZF09XCJvcGVuV2luZG93U2lkZW5hdlwiXG4gICAgbW9kZT1cInNpZGVcIlxuICAgIGNsYXNzPVwid2luZG93LWNvbnRhaW5lci1zaWRlbmF2XCJcbiAgICBwb3NpdGlvbj1cImVuZFwiXG4gID5cbiAgICA8cnhhcC13aW5kb3ctY29udGFpbmVyLXNpZGVuYXY+PC9yeGFwLXdpbmRvdy1jb250YWluZXItc2lkZW5hdj5cbiAgPC9tYXQtc2lkZW5hdj5cbjwvbWF0LXNpZGVuYXYtY29udGFpbmVyPlxuPHJ4YXAtZm9vdGVyIGNsYXNzPVwiZm9vdGVyXCI+PC9yeGFwLWZvb3Rlcj5cbiJdfQ==
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: LayoutComponent, decorators: [{
42
+ type: Component,
43
+ args: [{ selector: 'rxap-layout', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
44
+ HeaderComponent,
45
+ MatSidenavModule,
46
+ AsyncPipe,
47
+ FlexLayoutModule,
48
+ MatIconModule,
49
+ MatButtonModule,
50
+ RouterLink,
51
+ NgIf,
52
+ FooterComponent,
53
+ MatMenuModule,
54
+ NgOptimizedImage,
55
+ NavigationComponent,
56
+ RouterOutlet,
57
+ ], template: "<div class=\"flex flex-col h-screen justify-between\">\n <rxap-header [sidenav]=\"sidenav\" class=\"z-10 w-full fixed top-0\"></rxap-header>\n <mat-sidenav-container [ngClass]=\"{\n 'mb-16': (layoutComponentService.fixedBottomGap$ | async) === 64,\n 'mb-32': (layoutComponentService.fixedBottomGap$ | async) === 128,\n }\" class=\"grow mt-16\">\n <mat-sidenav\n #matSidenav=\"matSidenav\"\n (mouseenter)=\"sidenavMode === 'over' && matSidenav.open()\"\n (mouseleave)=\"sidenavMode === 'over' && matSidenav.close()\"\n [fixedBottomGap]=\"layoutComponentService.fixedBottomGap$ | async\"\n [fixedInViewport]=\"true\"\n [fixedTopGap]=\"layoutComponentService.fixedTopGap$ | async\"\n [mode]=\"sidenavMode\"\n [opened]=\"false\"\n class=\"sidenav\"\n >\n <div class=\"h-full py-2 flex flex-col items-center gap-y-5 justify-items-stretch\">\n\n <div (click)=\"toggleSidenavMode()\"\n class=\"pl-2 pr-2 self-stretch grow-0 flex flex-row justify-between items-center\">\n <span class=\"text-lg\" i18n>Navigation</span>\n <button mat-icon-button>\n <mat-icon *ngIf=\"sidenavMode === 'over'\">radio_button_unchecked</mat-icon>\n <mat-icon *ngIf=\"sidenavMode === 'side'\">radio_button_checked</mat-icon>\n </button>\n </div>\n\n <ul class=\"grow self-stretch\" root rxap-navigation></ul>\n\n <img\n [src]=\"layoutComponentService.logo.src ?? 'https://via.placeholder.com/256x128px'\"\n [routerLink]=\"['/']\"\n [width]=\"layoutComponentService.logo.width ?? 256\"\n alt=\"logo\"\n class=\"grow-0 mx-16\"\n />\n <div class=\"grow-0 px-16\">\n <span>{{release}}</span>\n </div>\n </div>\n </mat-sidenav>\n <mat-sidenav-content\n [ngClass]=\"{ opened: matSidenav.opened, side: sidenavMode === 'side' }\"\n class=\"ml-16 p-4\"\n >\n <router-outlet></router-outlet>\n </mat-sidenav-content>\n </mat-sidenav-container>\n <rxap-footer class=\"z-10 w-full fixed bottom-0\"></rxap-footer>\n</div>\n<!--<rxap-window-task-bar-container></rxap-window-task-bar-container>-->\n", styles: [":host .sidenav:not(.mat-drawer-opened){transform:translate(calc(-100% + 64px))!important;visibility:visible!important;box-shadow:inherit!important;transition-property:transform;transition-delay:.25s;display:flex;border-right:solid 1px rgba(0,0,0,.12)}:host .sidenav ::ng-deep .mat-drawer-inner-container::-webkit-scrollbar{display:none}.footer{position:fixed;bottom:0;left:0;right:0;z-index:100}.header{position:fixed;top:0;left:0;right:0;z-index:100}.task-bar{position:fixed;bottom:0;right:0;left:0;z-index:100}\n"] }]
58
+ }], ctorParameters: function () { return [{ type: i1.LayoutComponentService }, { type: undefined, decorators: [{
59
+ type: Inject,
60
+ args: [RXAP_ENVIRONMENT]
61
+ }] }]; }, propDecorators: { sidenav: [{
62
+ type: ViewChild,
63
+ args: [MatSidenav, { static: true }]
64
+ }] } });
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvbGF5b3V0L3NyYy9saWIvbGF5b3V0L2xheW91dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyL2xheW91dC9zcmMvbGliL2xheW91dC9sYXlvdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBRUwsVUFBVSxFQUNWLGdCQUFnQixHQUNqQixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFDTCxvQkFBb0IsRUFFcEIsZ0JBQWdCLEdBQ2pCLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFDTCxTQUFTLEVBQ1QsSUFBSSxFQUNKLGdCQUFnQixHQUNqQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUNMLFVBQVUsRUFDVixZQUFZLEdBQ2IsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7O0FBeUJ6RSxNQUFNLE9BQU8sZUFBZTtJQU0xQixZQUNrQixzQkFBOEMsRUFFN0MsV0FBd0I7UUFGekIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUU3QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQVBwQyxnQkFBVyxHQUFrQixNQUFNLENBQUM7SUFReEMsQ0FBQztJQUVKLElBQVcsT0FBTztRQUNoQixPQUFPLG9CQUFvQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRU0saUJBQWlCO1FBQ3RCLElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxNQUFNLEVBQUU7WUFDL0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUM7WUFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNyQjthQUFNO1lBQ0wsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUM7U0FDM0I7SUFDSCxDQUFDOzhHQXZCVSxlQUFlLHdEQVFoQixnQkFBZ0I7a0dBUmYsZUFBZSxnSEFJZixVQUFVLDhEQzdEdkIsMnFFQW9EQSw0akJEVkksZUFBZSxxRkFDZixnQkFBZ0Isc1lBQ2hCLFNBQVMsNkNBQ1QsZ0JBQWdCLGlpQkFDaEIsYUFBYSxtTEFDYixlQUFlLDRMQUNmLFVBQVUsNE5BQ1YsSUFBSSw2RkFDSixlQUFlLHVEQUNmLGFBQWEsK0JBRWIsbUJBQW1CLG9HQUNuQixZQUFZOzsyRkFHSCxlQUFlO2tCQXRCM0IsU0FBUzsrQkFDRSxhQUFhLG1CQUdOLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixTQUFTO3dCQUNULGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixlQUFlO3dCQUNmLFVBQVU7d0JBQ1YsSUFBSTt3QkFDSixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixtQkFBbUI7d0JBQ25CLFlBQVk7cUJBQ2I7OzBCQVVFLE1BQU07MkJBQUMsZ0JBQWdCOzRDQUpzQixPQUFPO3NCQUF0RCxTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbmplY3QsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBNYXREcmF3ZXJNb2RlLFxuICBNYXRTaWRlbmF2LFxuICBNYXRTaWRlbmF2TW9kdWxlLFxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcbmltcG9ydCB7XG4gIERldGVybWluZVJlbGVhc2VOYW1lLFxuICBFbnZpcm9ubWVudCxcbiAgUlhBUF9FTlZJUk9OTUVOVCxcbn0gZnJvbSAnQHJ4YXAvZW52aXJvbm1lbnQnO1xuaW1wb3J0IHsgSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgQXN5bmNQaXBlLFxuICBOZ0lmLFxuICBOZ09wdGltaXplZEltYWdlLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRmxleExheW91dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2ZsZXgtbGF5b3V0JztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQge1xuICBSb3V0ZXJMaW5rLFxuICBSb3V0ZXJPdXRsZXQsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XG5pbXBvcnQgeyBGb290ZXJDb21wb25lbnQgfSBmcm9tICcuLi9mb290ZXIvZm9vdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYXlvdXRDb21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi9sYXlvdXQuY29tcG9uZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL25hdmlnYXRpb24vbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3J4YXAtbGF5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xheW91dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9sYXlvdXQuY29tcG9uZW50LnNjc3MnIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgSGVhZGVyQ29tcG9uZW50LFxuICAgIE1hdFNpZGVuYXZNb2R1bGUsXG4gICAgQXN5bmNQaXBlLFxuICAgIEZsZXhMYXlvdXRNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgUm91dGVyTGluayxcbiAgICBOZ0lmLFxuICAgIEZvb3RlckNvbXBvbmVudCxcbiAgICBNYXRNZW51TW9kdWxlLFxuICAgIE5nT3B0aW1pemVkSW1hZ2UsXG4gICAgTmF2aWdhdGlvbkNvbXBvbmVudCxcbiAgICBSb3V0ZXJPdXRsZXQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIExheW91dENvbXBvbmVudCB7XG5cbiAgcHVibGljIHNpZGVuYXZNb2RlOiBNYXREcmF3ZXJNb2RlID0gJ292ZXInO1xuXG4gIEBWaWV3Q2hpbGQoTWF0U2lkZW5hdiwgeyBzdGF0aWM6IHRydWUgfSkgcHVibGljIHNpZGVuYXYhOiBNYXRTaWRlbmF2O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBsYXlvdXRDb21wb25lbnRTZXJ2aWNlOiBMYXlvdXRDb21wb25lbnRTZXJ2aWNlLFxuICAgIEBJbmplY3QoUlhBUF9FTlZJUk9OTUVOVClcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVudmlyb25tZW50OiBFbnZpcm9ubWVudCxcbiAgKSB7fVxuXG4gIHB1YmxpYyBnZXQgcmVsZWFzZSgpIHtcbiAgICByZXR1cm4gRGV0ZXJtaW5lUmVsZWFzZU5hbWUodGhpcy5lbnZpcm9ubWVudCk7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlU2lkZW5hdk1vZGUoKSB7XG4gICAgaWYgKHRoaXMuc2lkZW5hdk1vZGUgPT09ICdvdmVyJykge1xuICAgICAgdGhpcy5zaWRlbmF2TW9kZSA9ICdzaWRlJztcbiAgICAgIHRoaXMuc2lkZW5hdi5vcGVuKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2lkZW5hdk1vZGUgPSAnb3Zlcic7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBoLXNjcmVlbiBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgPHJ4YXAtaGVhZGVyIFtzaWRlbmF2XT1cInNpZGVuYXZcIiBjbGFzcz1cInotMTAgdy1mdWxsIGZpeGVkIHRvcC0wXCI+PC9yeGFwLWhlYWRlcj5cbiAgPG1hdC1zaWRlbmF2LWNvbnRhaW5lciBbbmdDbGFzc109XCJ7XG4gICAgJ21iLTE2JzogKGxheW91dENvbXBvbmVudFNlcnZpY2UuZml4ZWRCb3R0b21HYXAkIHwgYXN5bmMpID09PSA2NCxcbiAgICAnbWItMzInOiAobGF5b3V0Q29tcG9uZW50U2VydmljZS5maXhlZEJvdHRvbUdhcCQgfCBhc3luYykgPT09IDEyOCxcbiAgfVwiIGNsYXNzPVwiZ3JvdyBtdC0xNlwiPlxuICAgIDxtYXQtc2lkZW5hdlxuICAgICAgI21hdFNpZGVuYXY9XCJtYXRTaWRlbmF2XCJcbiAgICAgIChtb3VzZWVudGVyKT1cInNpZGVuYXZNb2RlID09PSAnb3ZlcicgJiYgbWF0U2lkZW5hdi5vcGVuKClcIlxuICAgICAgKG1vdXNlbGVhdmUpPVwic2lkZW5hdk1vZGUgPT09ICdvdmVyJyAmJiBtYXRTaWRlbmF2LmNsb3NlKClcIlxuICAgICAgW2ZpeGVkQm90dG9tR2FwXT1cImxheW91dENvbXBvbmVudFNlcnZpY2UuZml4ZWRCb3R0b21HYXAkIHwgYXN5bmNcIlxuICAgICAgW2ZpeGVkSW5WaWV3cG9ydF09XCJ0cnVlXCJcbiAgICAgIFtmaXhlZFRvcEdhcF09XCJsYXlvdXRDb21wb25lbnRTZXJ2aWNlLmZpeGVkVG9wR2FwJCB8IGFzeW5jXCJcbiAgICAgIFttb2RlXT1cInNpZGVuYXZNb2RlXCJcbiAgICAgIFtvcGVuZWRdPVwiZmFsc2VcIlxuICAgICAgY2xhc3M9XCJzaWRlbmF2XCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwiaC1mdWxsIHB5LTIgZmxleCBmbGV4LWNvbCBpdGVtcy1jZW50ZXIgZ2FwLXktNSBqdXN0aWZ5LWl0ZW1zLXN0cmV0Y2hcIj5cblxuICAgICAgICA8ZGl2IChjbGljayk9XCJ0b2dnbGVTaWRlbmF2TW9kZSgpXCJcbiAgICAgICAgICAgICBjbGFzcz1cInBsLTIgcHItMiBzZWxmLXN0cmV0Y2ggZ3Jvdy0wIGZsZXggZmxleC1yb3cganVzdGlmeS1iZXR3ZWVuIGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1sZ1wiIGkxOG4+TmF2aWdhdGlvbjwvc3Bhbj5cbiAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cInNpZGVuYXZNb2RlID09PSAnb3ZlcidcIj5yYWRpb19idXR0b25fdW5jaGVja2VkPC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cInNpZGVuYXZNb2RlID09PSAnc2lkZSdcIj5yYWRpb19idXR0b25fY2hlY2tlZDwvbWF0LWljb24+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDx1bCBjbGFzcz1cImdyb3cgc2VsZi1zdHJldGNoXCIgcm9vdCByeGFwLW5hdmlnYXRpb24+PC91bD5cblxuICAgICAgICA8aW1nXG4gICAgICAgICAgW3NyY109XCJsYXlvdXRDb21wb25lbnRTZXJ2aWNlLmxvZ28uc3JjID8/ICdodHRwczovL3ZpYS5wbGFjZWhvbGRlci5jb20vMjU2eDEyOHB4J1wiXG4gICAgICAgICAgW3JvdXRlckxpbmtdPVwiWycvJ11cIlxuICAgICAgICAgIFt3aWR0aF09XCJsYXlvdXRDb21wb25lbnRTZXJ2aWNlLmxvZ28ud2lkdGggPz8gMjU2XCJcbiAgICAgICAgICBhbHQ9XCJsb2dvXCJcbiAgICAgICAgICBjbGFzcz1cImdyb3ctMCBteC0xNlwiXG4gICAgICAgIC8+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJncm93LTAgcHgtMTZcIj5cbiAgICAgICAgICA8c3Bhbj57e3JlbGVhc2V9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L21hdC1zaWRlbmF2PlxuICAgIDxtYXQtc2lkZW5hdi1jb250ZW50XG4gICAgICBbbmdDbGFzc109XCJ7IG9wZW5lZDogbWF0U2lkZW5hdi5vcGVuZWQsIHNpZGU6IHNpZGVuYXZNb2RlID09PSAnc2lkZScgfVwiXG4gICAgICBjbGFzcz1cIm1sLTE2IHAtNFwiXG4gICAgPlxuICAgICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuICAgIDwvbWF0LXNpZGVuYXYtY29udGVudD5cbiAgPC9tYXQtc2lkZW5hdi1jb250YWluZXI+XG4gIDxyeGFwLWZvb3RlciBjbGFzcz1cInotMTAgdy1mdWxsIGZpeGVkIGJvdHRvbS0wXCI+PC9yeGFwLWZvb3Rlcj5cbjwvZGl2PlxuPCEtLTxyeGFwLXdpbmRvdy10YXNrLWJhci1jb250YWluZXI+PC9yeGFwLXdpbmRvdy10YXNrLWJhci1jb250YWluZXI+LS0+XG4iXX0=
@@ -1,13 +1,13 @@
1
- import { Injectable, Optional, Inject } from '@angular/core';
2
- import { BehaviorSubject } from 'rxjs';
3
- import { tap, map } from 'rxjs/operators';
4
- import { FooterService, HeaderService } from '@rxap/services';
1
+ import { Inject, Injectable, Optional, } from '@angular/core';
2
+ import { BehaviorSubject, } from 'rxjs';
3
+ import { map, tap, } from 'rxjs/operators';
4
+ import { FooterService, HeaderService, } from '@rxap/services';
5
5
  import { RXAP_LOGO_CONFIG } from '../tokens';
6
6
  import { ConfigService } from '@rxap/config';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "@rxap/services";
9
9
  import * as i2 from "@rxap/config";
10
- class LayoutComponentService {
10
+ export class LayoutComponentService {
11
11
  constructor(footerComponentService, headerComponentService, logoConfig = null, config) {
12
12
  this.footerComponentService = footerComponentService;
13
13
  this.headerComponentService = headerComponentService;
@@ -22,23 +22,22 @@ class LayoutComponentService {
22
22
  this.headerComponentService.update$.pipe(tap(() => this.fixedTopGap$.next(this.headerComponentService.countComponent * 64))).subscribe();
23
23
  this.logo = logoConfig ?? {
24
24
  src: '/assets/logo.png',
25
- width: '192'
25
+ width: 192,
26
26
  };
27
27
  }
28
- static { this.ɵfac = function LayoutComponentService_Factory(t) { return new (t || LayoutComponentService)(i0.ɵɵinject(i1.FooterService), i0.ɵɵinject(i1.HeaderService), i0.ɵɵinject(RXAP_LOGO_CONFIG, 8), i0.ɵɵinject(ConfigService)); }; }
29
- static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: LayoutComponentService, factory: LayoutComponentService.ɵfac, providedIn: 'root' }); }
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: LayoutComponentService, deps: [{ token: i1.FooterService }, { token: i1.HeaderService }, { token: RXAP_LOGO_CONFIG, optional: true }, { token: ConfigService }], target: i0.ɵɵFactoryTarget.Injectable }); }
29
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: LayoutComponentService, providedIn: 'root' }); }
30
30
  }
31
- export { LayoutComponentService };
32
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LayoutComponentService, [{
33
- type: Injectable,
34
- args: [{ providedIn: 'root' }]
35
- }], function () { return [{ type: i1.FooterService }, { type: i1.HeaderService }, { type: undefined, decorators: [{
36
- type: Optional
37
- }, {
38
- type: Inject,
39
- args: [RXAP_LOGO_CONFIG]
40
- }] }, { type: i2.ConfigService, decorators: [{
41
- type: Inject,
42
- args: [ConfigService]
43
- }] }]; }, null); })();
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmNvbXBvbmVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9sYXlvdXQvc3JjL2xpYi9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEVBQ1YsUUFBUSxFQUNSLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsZUFBZSxFQUVoQixNQUFNLE1BQU0sQ0FBQztBQUNkLE9BQU8sRUFDTCxHQUFHLEVBQ0gsR0FBRyxFQUNKLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUNMLGFBQWEsRUFDYixhQUFhLEVBQ2QsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7OztBQUc3QyxNQUNhLHNCQUFzQjtJQVFqQyxZQUNrQixzQkFBcUMsRUFDckMsc0JBQXFDLEVBQ2YsYUFBZ0MsSUFBSSxFQUV6RCxNQUFxQjtRQUp0QiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQWU7UUFDckMsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUFlO1FBR3BDLFdBQU0sR0FBTixNQUFNLENBQWU7UUFYakMsWUFBTyxHQUFRLElBQUksZUFBZSxDQUFVLElBQUksQ0FBQyxDQUFDO1FBQ2xELFVBQUssR0FBVSxJQUFJLGVBQWUsQ0FBZ0IsTUFBTSxDQUFDLENBQUM7UUFFMUQsaUJBQVksR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQVVwRCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDL0YsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGNBQWMsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsc0JBQXNCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDdEMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FDbkYsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNkLElBQUksQ0FBQyxJQUFJLEdBQUcsVUFBVSxJQUFJO1lBQ3hCLEdBQUcsRUFBSSxrQkFBa0I7WUFDekIsS0FBSyxFQUFFLEtBQUs7U0FDYixDQUFDO0lBQ0osQ0FBQzt1RkExQlUsc0JBQXNCLDRFQVdYLGdCQUFnQixrQkFDNUIsYUFBYTt1RUFaWixzQkFBc0IsV0FBdEIsc0JBQXNCLG1CQURULE1BQU07O1NBQ25CLHNCQUFzQjt1RkFBdEIsc0JBQXNCO2NBRGxDLFVBQVU7ZUFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7O3NCQVk3QixRQUFROztzQkFBSSxNQUFNO3VCQUFDLGdCQUFnQjs7c0JBQ25DLE1BQU07dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEluamVjdGFibGUsXG4gIE9wdGlvbmFsLFxuICBJbmplY3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBCZWhhdmlvclN1YmplY3QsXG4gIE9ic2VydmFibGVcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICB0YXAsXG4gIG1hcFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICBGb290ZXJTZXJ2aWNlLFxuICBIZWFkZXJTZXJ2aWNlXG59IGZyb20gJ0ByeGFwL3NlcnZpY2VzJztcbmltcG9ydCB7IFJYQVBfTE9HT19DT05GSUcgfSBmcm9tICcuLi90b2tlbnMnO1xuaW1wb3J0IHsgTG9nb0NvbmZpZyB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAcnhhcC9jb25maWcnO1xuaW1wb3J0IHsgTWF0RHJhd2VyTW9kZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIExheW91dENvbXBvbmVudFNlcnZpY2Uge1xuXG4gIHB1YmxpYyBvcGVuZWQkICAgICAgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xuICBwdWJsaWMgbW9kZSQgICAgICAgID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXREcmF3ZXJNb2RlPignc2lkZScpO1xuICBwdWJsaWMgZml4ZWRCb3R0b21HYXAkOiBPYnNlcnZhYmxlPG51bWJlcj47XG4gIHB1YmxpYyBmaXhlZFRvcEdhcCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oNjQpO1xuICBwdWJsaWMgbG9nbzogTG9nb0NvbmZpZztcblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IGZvb3RlckNvbXBvbmVudFNlcnZpY2U6IEZvb3RlclNlcnZpY2UsXG4gICAgcHVibGljIHJlYWRvbmx5IGhlYWRlckNvbXBvbmVudFNlcnZpY2U6IEhlYWRlclNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChSWEFQX0xPR09fQ09ORklHKSBsb2dvQ29uZmlnOiBMb2dvQ29uZmlnIHwgbnVsbCA9IG51bGwsXG4gICAgQEluamVjdChDb25maWdTZXJ2aWNlKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnOiBDb25maWdTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMubW9kZSQubmV4dCh0aGlzLmNvbmZpZy5nZXQoJ25hdmlnYXRpb24ubW9kZScsIHRoaXMubW9kZSQudmFsdWUpKTtcbiAgICB0aGlzLm9wZW5lZCQubmV4dCh0aGlzLmNvbmZpZy5nZXQoJ25hdmlnYXRpb24ub3BlbicsIHRoaXMub3BlbmVkJC52YWx1ZSkpO1xuICAgIHRoaXMuZml4ZWRCb3R0b21HYXAkID0gdGhpcy5mb290ZXJDb21wb25lbnRTZXJ2aWNlLnBvcnRhbENvdW50JC5waXBlKG1hcChjb3VudCA9PiBjb3VudCAqIDY0KSk7XG4gICAgdGhpcy5maXhlZFRvcEdhcCQubmV4dCh0aGlzLmhlYWRlckNvbXBvbmVudFNlcnZpY2UuY291bnRDb21wb25lbnQgKiA2NCk7XG4gICAgdGhpcy5oZWFkZXJDb21wb25lbnRTZXJ2aWNlLnVwZGF0ZSQucGlwZShcbiAgICAgIHRhcCgoKSA9PiB0aGlzLmZpeGVkVG9wR2FwJC5uZXh0KHRoaXMuaGVhZGVyQ29tcG9uZW50U2VydmljZS5jb3VudENvbXBvbmVudCAqIDY0KSlcbiAgICApLnN1YnNjcmliZSgpO1xuICAgIHRoaXMubG9nbyA9IGxvZ29Db25maWcgPz8ge1xuICAgICAgc3JjOiAgICcvYXNzZXRzL2xvZ28ucG5nJyxcbiAgICAgIHdpZHRoOiAnMTkyJ1xuICAgIH07XG4gIH1cblxufVxuIl19
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: LayoutComponentService, decorators: [{
32
+ type: Injectable,
33
+ args: [{ providedIn: 'root' }]
34
+ }], ctorParameters: function () { return [{ type: i1.FooterService }, { type: i1.HeaderService }, { type: undefined, decorators: [{
35
+ type: Optional
36
+ }, {
37
+ type: Inject,
38
+ args: [RXAP_LOGO_CONFIG]
39
+ }] }, { type: i2.ConfigService, decorators: [{
40
+ type: Inject,
41
+ args: [ConfigService]
42
+ }] }]; } });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmNvbXBvbmVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxNQUFNLEVBQ04sVUFBVSxFQUNWLFFBQVEsR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsZUFBZSxHQUVoQixNQUFNLE1BQU0sQ0FBQztBQUNkLE9BQU8sRUFDTCxHQUFHLEVBQ0gsR0FBRyxHQUNKLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUNMLGFBQWEsRUFDYixhQUFhLEdBQ2QsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7OztBQUk3QyxNQUFNLE9BQU8sc0JBQXNCO0lBUWpDLFlBQ2tCLHNCQUFxQyxFQUNyQyxzQkFBcUMsRUFDZixhQUFnQyxJQUFJLEVBRXpELE1BQXFCO1FBSnRCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBZTtRQUNyQywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQWU7UUFHcEMsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQVhqQyxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQVUsSUFBSSxDQUFDLENBQUM7UUFDN0MsVUFBSyxHQUFHLElBQUksZUFBZSxDQUFnQixNQUFNLENBQUMsQ0FBQztRQUVuRCxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBVXBELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDMUUsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMvRixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUN0QyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGNBQWMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUNuRixDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLElBQUk7WUFDeEIsR0FBRyxFQUFFLGtCQUFrQjtZQUN2QixLQUFLLEVBQUUsR0FBRztTQUNYLENBQUM7SUFDSixDQUFDOzhHQTFCVSxzQkFBc0IsNEVBV1gsZ0JBQWdCLDZCQUM1QixhQUFhO2tIQVpaLHNCQUFzQixjQURULE1BQU07OzJGQUNuQixzQkFBc0I7a0JBRGxDLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFZN0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxnQkFBZ0I7OzBCQUNuQyxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbmplY3QsXG4gIEluamVjdGFibGUsXG4gIE9wdGlvbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEJlaGF2aW9yU3ViamVjdCxcbiAgT2JzZXJ2YWJsZSxcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBtYXAsXG4gIHRhcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtcbiAgRm9vdGVyU2VydmljZSxcbiAgSGVhZGVyU2VydmljZSxcbn0gZnJvbSAnQHJ4YXAvc2VydmljZXMnO1xuaW1wb3J0IHsgUlhBUF9MT0dPX0NPTkZJRyB9IGZyb20gJy4uL3Rva2Vucyc7XG5pbXBvcnQgeyBMb2dvQ29uZmlnIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJ0ByeGFwL2NvbmZpZyc7XG5pbXBvcnQgeyBNYXREcmF3ZXJNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgTGF5b3V0Q29tcG9uZW50U2VydmljZSB7XG5cbiAgcHVibGljIG9wZW5lZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xuICBwdWJsaWMgbW9kZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1hdERyYXdlck1vZGU+KCdzaWRlJyk7XG4gIHB1YmxpYyBmaXhlZEJvdHRvbUdhcCQ6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgcHVibGljIGZpeGVkVG9wR2FwJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPig2NCk7XG4gIHB1YmxpYyBsb2dvOiBMb2dvQ29uZmlnO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgZm9vdGVyQ29tcG9uZW50U2VydmljZTogRm9vdGVyU2VydmljZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgaGVhZGVyQ29tcG9uZW50U2VydmljZTogSGVhZGVyU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFJYQVBfTE9HT19DT05GSUcpIGxvZ29Db25maWc6IExvZ29Db25maWcgfCBudWxsID0gbnVsbCxcbiAgICBASW5qZWN0KENvbmZpZ1NlcnZpY2UpXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IENvbmZpZ1NlcnZpY2UsXG4gICkge1xuICAgIHRoaXMubW9kZSQubmV4dCh0aGlzLmNvbmZpZy5nZXQoJ25hdmlnYXRpb24ubW9kZScsIHRoaXMubW9kZSQudmFsdWUpKTtcbiAgICB0aGlzLm9wZW5lZCQubmV4dCh0aGlzLmNvbmZpZy5nZXQoJ25hdmlnYXRpb24ub3BlbicsIHRoaXMub3BlbmVkJC52YWx1ZSkpO1xuICAgIHRoaXMuZml4ZWRCb3R0b21HYXAkID0gdGhpcy5mb290ZXJDb21wb25lbnRTZXJ2aWNlLnBvcnRhbENvdW50JC5waXBlKG1hcChjb3VudCA9PiBjb3VudCAqIDY0KSk7XG4gICAgdGhpcy5maXhlZFRvcEdhcCQubmV4dCh0aGlzLmhlYWRlckNvbXBvbmVudFNlcnZpY2UuY291bnRDb21wb25lbnQgKiA2NCk7XG4gICAgdGhpcy5oZWFkZXJDb21wb25lbnRTZXJ2aWNlLnVwZGF0ZSQucGlwZShcbiAgICAgIHRhcCgoKSA9PiB0aGlzLmZpeGVkVG9wR2FwJC5uZXh0KHRoaXMuaGVhZGVyQ29tcG9uZW50U2VydmljZS5jb3VudENvbXBvbmVudCAqIDY0KSksXG4gICAgKS5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmxvZ28gPSBsb2dvQ29uZmlnID8/IHtcbiAgICAgIHNyYzogJy9hc3NldHMvbG9nby5wbmcnLFxuICAgICAgd2lkdGg6IDE5MixcbiAgICB9O1xuICB9XG5cbn1cbiJdfQ==