@volo/ngx-lepton-x.core 2.0.0-rc.5 → 2.0.1

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 (69) hide show
  1. package/esm2020/lib/components/avatar/avatar.component.mjs +3 -3
  2. package/esm2020/lib/components/avatar/avatar.module.mjs +4 -4
  3. package/esm2020/lib/components/brand-logo/brand-logo.component.mjs +3 -3
  4. package/esm2020/lib/components/brand-logo/brand-logo.module.mjs +4 -4
  5. package/esm2020/lib/components/breadcrumb/breadcrumb-route-listener.service.mjs +3 -3
  6. package/esm2020/lib/components/breadcrumb/breadcrumb.component.mjs +3 -3
  7. package/esm2020/lib/components/breadcrumb/breadcrumb.module.mjs +4 -4
  8. package/esm2020/lib/components/breadcrumb/breadcrumb.service.mjs +3 -3
  9. package/esm2020/lib/components/footer/footer-links.service.mjs +3 -3
  10. package/esm2020/lib/components/footer/footer.component.mjs +3 -3
  11. package/esm2020/lib/components/footer/footer.module.mjs +4 -4
  12. package/esm2020/lib/components/icon/icon.component.mjs +3 -3
  13. package/esm2020/lib/components/icon/icon.module.mjs +4 -4
  14. package/esm2020/lib/components/navbar/models.mjs +1 -1
  15. package/esm2020/lib/components/navbar/navbar-routes/navbar-routes.component.mjs +24 -14
  16. package/esm2020/lib/components/navbar/navbar-routes/navbar-routes.directive.mjs +3 -3
  17. package/esm2020/lib/components/navbar/navbar.component.mjs +9 -5
  18. package/esm2020/lib/components/navbar/navbar.module.mjs +10 -7
  19. package/esm2020/lib/components/navbar/navbar.service.mjs +44 -26
  20. package/esm2020/lib/components/navbar/sub-navbar/sub-navbar.component.mjs +7 -6
  21. package/esm2020/lib/directives/click-outside/click-outside.directive.mjs +3 -3
  22. package/esm2020/lib/directives/click-outside/click-outside.module.mjs +4 -4
  23. package/esm2020/lib/directives/index.mjs +2 -1
  24. package/esm2020/lib/directives/responsive/responsive.directive.mjs +3 -3
  25. package/esm2020/lib/directives/responsive/responsive.module.mjs +4 -4
  26. package/esm2020/lib/directives/responsive/responsive.service.mjs +3 -3
  27. package/esm2020/lib/directives/visible.directive.mjs +64 -0
  28. package/esm2020/lib/lepton-x-core.module.mjs +7 -6
  29. package/esm2020/lib/panels/breadcrumb-panel.directive.mjs +3 -3
  30. package/esm2020/lib/panels/current-user-image-panel.directive.mjs +3 -3
  31. package/esm2020/lib/panels/current-user-panel.directive.mjs +3 -3
  32. package/esm2020/lib/panels/footer-panel.directive.mjs +3 -3
  33. package/esm2020/lib/panels/language-panel.directive.mjs +3 -3
  34. package/esm2020/lib/panels/logo-panel.directive.mjs +3 -3
  35. package/esm2020/lib/panels/mobile-navbar-panel.directive.mjs +3 -3
  36. package/esm2020/lib/panels/navbar-panel.directive.mjs +3 -3
  37. package/esm2020/lib/panels/navitem-panel.directive.mjs +3 -3
  38. package/esm2020/lib/panels/panels.module.mjs +4 -4
  39. package/esm2020/lib/panels/settings-panel.directive.mjs +3 -3
  40. package/esm2020/lib/panels/toolbar-panel.directive.mjs +3 -3
  41. package/esm2020/lib/panels/top-navbar-panel.directive.mjs +3 -3
  42. package/esm2020/lib/pipes/to-observable/to-observable.module.mjs +4 -4
  43. package/esm2020/lib/pipes/to-observable/to-observable.pipe.mjs +3 -3
  44. package/esm2020/lib/pipes/translate/translate.module.mjs +4 -4
  45. package/esm2020/lib/pipes/translate/translate.pipe.mjs +3 -3
  46. package/esm2020/lib/services/auth/default-auth.service.mjs +3 -3
  47. package/esm2020/lib/services/body/body.service.mjs +3 -3
  48. package/esm2020/lib/services/language/language.module.mjs +4 -4
  49. package/esm2020/lib/services/language/language.service.mjs +3 -3
  50. package/esm2020/lib/services/language/models.mjs +1 -1
  51. package/esm2020/lib/services/layout/layout.service.mjs +3 -3
  52. package/esm2020/lib/services/translate/default-translate.service.mjs +3 -3
  53. package/esm2020/lib/services/translate/translate.service.mjs +3 -3
  54. package/esm2020/lib/services/user-profile/user-profile.service.mjs +3 -3
  55. package/esm2020/lib/style/style.service.mjs +3 -3
  56. package/fesm2015/volo-ngx-lepton-x.core.mjs +296 -212
  57. package/fesm2015/volo-ngx-lepton-x.core.mjs.map +1 -1
  58. package/fesm2020/volo-ngx-lepton-x.core.mjs +307 -214
  59. package/fesm2020/volo-ngx-lepton-x.core.mjs.map +1 -1
  60. package/lib/components/navbar/models.d.ts +4 -2
  61. package/lib/components/navbar/navbar-routes/navbar-routes.component.d.ts +5 -1
  62. package/lib/components/navbar/navbar.component.d.ts +3 -1
  63. package/lib/components/navbar/navbar.module.d.ts +2 -1
  64. package/lib/components/navbar/navbar.service.d.ts +7 -1
  65. package/lib/directives/index.d.ts +1 -0
  66. package/lib/directives/visible.directive.d.ts +18 -0
  67. package/lib/lepton-x-core.module.d.ts +2 -1
  68. package/lib/services/language/models.d.ts +1 -0
  69. package/package.json +6 -6
@@ -4,9 +4,9 @@ import * as i1 from "@angular/common";
4
4
  import * as i2 from "../icon/icon.component";
5
5
  export class AvatarComponent {
6
6
  }
7
- AvatarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
- AvatarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: AvatarComponent, selector: "lpx-avatar", inputs: { avatar: "avatar" }, ngImport: i0, template: "<div class=\"lpx-avatar\" *ngIf=\"avatar && avatar?.source\">\r\n <ng-container [ngSwitch]=\"avatar.type\">\r\n <ng-container *ngSwitchCase=\"'icon'\">\r\n <lpx-icon class=\"lpx-avatar-icon\" [iconClass]=\"avatar.source\"></lpx-icon>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'image'\">\r\n <img class=\"lpx-avatar-img\" [src]=\"avatar.source\" />\r\n </ng-container>\r\n </ng-container>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.IconComponent, selector: "lpx-icon", inputs: ["iconClass"] }], encapsulation: i0.ViewEncapsulation.None });
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: AvatarComponent, decorators: [{
7
+ AvatarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
+ AvatarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: AvatarComponent, selector: "lpx-avatar", inputs: { avatar: "avatar" }, ngImport: i0, template: "<div class=\"lpx-avatar\" *ngIf=\"avatar && avatar?.source\">\r\n <ng-container [ngSwitch]=\"avatar.type\">\r\n <ng-container *ngSwitchCase=\"'icon'\">\r\n <lpx-icon class=\"lpx-avatar-icon\" [iconClass]=\"avatar.source\"></lpx-icon>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'image'\">\r\n <img class=\"lpx-avatar-img\" [src]=\"avatar.source\" />\r\n </ng-container>\r\n </ng-container>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.IconComponent, selector: "lpx-icon", inputs: ["iconClass"] }], encapsulation: i0.ViewEncapsulation.None });
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AvatarComponent, decorators: [{
10
10
  type: Component,
11
11
  args: [{ selector: 'lpx-avatar', encapsulation: ViewEncapsulation.None, template: "<div class=\"lpx-avatar\" *ngIf=\"avatar && avatar?.source\">\r\n <ng-container [ngSwitch]=\"avatar.type\">\r\n <ng-container *ngSwitchCase=\"'icon'\">\r\n <lpx-icon class=\"lpx-avatar-icon\" [iconClass]=\"avatar.source\"></lpx-icon>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'image'\">\r\n <img class=\"lpx-avatar-img\" [src]=\"avatar.source\" />\r\n </ng-container>\r\n </ng-container>\r\n</div>\r\n" }]
12
12
  }], propDecorators: { avatar: [{
@@ -5,10 +5,10 @@ import { AvatarComponent } from './avatar.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class LpxAvatarModule {
7
7
  }
8
- LpxAvatarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- LpxAvatarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: LpxAvatarModule, declarations: [AvatarComponent], imports: [CommonModule, LpxIconModule], exports: [AvatarComponent] });
10
- LpxAvatarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxAvatarModule, imports: [CommonModule, LpxIconModule] });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxAvatarModule, decorators: [{
8
+ LpxAvatarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxAvatarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ LpxAvatarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: LpxAvatarModule, declarations: [AvatarComponent], imports: [CommonModule, LpxIconModule], exports: [AvatarComponent] });
10
+ LpxAvatarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxAvatarModule, imports: [CommonModule, LpxIconModule] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxAvatarModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  declarations: [AvatarComponent],
@@ -2,9 +2,9 @@ import { Component, ViewEncapsulation } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class BrandLogoComponent {
4
4
  }
5
- BrandLogoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BrandLogoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
- BrandLogoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: BrandLogoComponent, selector: "lpx-brand-logo", ngImport: i0, template: "<a href=\"/\">\r\n <div class=\"lpx-brand-logo\"></div>\r\n</a>\r\n", encapsulation: i0.ViewEncapsulation.None });
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BrandLogoComponent, decorators: [{
5
+ BrandLogoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BrandLogoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ BrandLogoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: BrandLogoComponent, selector: "lpx-brand-logo", ngImport: i0, template: "<a href=\"/\">\r\n <div class=\"lpx-brand-logo\"></div>\r\n</a>\r\n", encapsulation: i0.ViewEncapsulation.None });
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BrandLogoComponent, decorators: [{
8
8
  type: Component,
9
9
  args: [{ selector: 'lpx-brand-logo', encapsulation: ViewEncapsulation.None, template: "<a href=\"/\">\r\n <div class=\"lpx-brand-logo\"></div>\r\n</a>\r\n" }]
10
10
  }] });
@@ -4,10 +4,10 @@ import { BrandLogoComponent } from './brand-logo.component';
4
4
  import * as i0 from "@angular/core";
5
5
  export class LpxBrandLogoModule {
6
6
  }
7
- LpxBrandLogoModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxBrandLogoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- LpxBrandLogoModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: LpxBrandLogoModule, declarations: [BrandLogoComponent], imports: [CommonModule], exports: [BrandLogoComponent] });
9
- LpxBrandLogoModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxBrandLogoModule, imports: [CommonModule] });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxBrandLogoModule, decorators: [{
7
+ LpxBrandLogoModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxBrandLogoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ LpxBrandLogoModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: LpxBrandLogoModule, declarations: [BrandLogoComponent], imports: [CommonModule], exports: [BrandLogoComponent] });
9
+ LpxBrandLogoModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxBrandLogoModule, imports: [CommonModule] });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxBrandLogoModule, decorators: [{
11
11
  type: NgModule,
12
12
  args: [{
13
13
  declarations: [BrandLogoComponent],
@@ -43,9 +43,9 @@ export class BreadcrumbRouteListenerService {
43
43
  }));
44
44
  }
45
45
  }
46
- BreadcrumbRouteListenerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BreadcrumbRouteListenerService, deps: [{ token: i1.NavbarService }, { token: i2.Router }, { token: i3.BreadcrumbService }], target: i0.ɵɵFactoryTarget.Injectable });
47
- BreadcrumbRouteListenerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BreadcrumbRouteListenerService, providedIn: 'root' });
48
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BreadcrumbRouteListenerService, decorators: [{
46
+ BreadcrumbRouteListenerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BreadcrumbRouteListenerService, deps: [{ token: i1.NavbarService }, { token: i2.Router }, { token: i3.BreadcrumbService }], target: i0.ɵɵFactoryTarget.Injectable });
47
+ BreadcrumbRouteListenerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BreadcrumbRouteListenerService, providedIn: 'root' });
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BreadcrumbRouteListenerService, decorators: [{
49
49
  type: Injectable,
50
50
  args: [{
51
51
  providedIn: 'root',
@@ -19,9 +19,9 @@ export class BreadcrumbComponent {
19
19
  }
20
20
  }
21
21
  }
22
- BreadcrumbComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BreadcrumbComponent, deps: [{ token: i1.BreadcrumbService }], target: i0.ɵɵFactoryTarget.Component });
23
- BreadcrumbComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: BreadcrumbComponent, selector: "lpx-breadcrumb", ngImport: i0, template: "<nav aria-label=\"breadcrumb\">\r\n <ol class=\"lpx-breadcrumb\">\r\n <ng-container *ngFor=\"let item of service.items$ | async; last as last\">\r\n <li\r\n class=\"lpx-breadcrumb-item\"\r\n (click)=\"onClick(item)\"\r\n [class.expanded]=\"item.expanded\"\r\n (lpxClickOutside)=\"item.expanded = false\"\r\n >\r\n <lpx-icon\r\n class=\"lpx-breadcrumb-item-icon\"\r\n *ngIf=\"item.icon\"\r\n [iconClass]=\"item.icon\"\r\n ></lpx-icon>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n item.children?.length ? textTemplate : linkTemplate;\r\n context: { $implicit: item }\r\n \"\r\n ></ng-container>\r\n <ng-container *ngIf=\"item.children?.length && last\">\r\n <lpx-icon\r\n class=\"lpx-caret\"\r\n [iconClass]=\"item.expanded ? icon.chevronUp : icon.chevronDown\"\r\n ></lpx-icon>\r\n <div class=\"lpx-breadcrumb-dropdown\">\r\n <ul class=\"lpx-breadcrumb-dropdown-container\">\r\n <li\r\n class=\"lpx-breadcrumb-dropdown-item\"\r\n *ngFor=\"let child of item.children\"\r\n [class.active]=\"child.active\"\r\n [routerLink]=\"child.link\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n textTemplate;\r\n context: { $implicit: child }\r\n \"\r\n ></ng-container>\r\n </li>\r\n </ul>\r\n </div>\r\n </ng-container>\r\n </li>\r\n <li *ngIf=\"!last\" class=\"lpx-breadcrumb-separator\">\r\n <lpx-icon iconClass=\"bi bi-chevron-right\"></lpx-icon>\r\n </li>\r\n </ng-container>\r\n </ol>\r\n</nav>\r\n\r\n<ng-template #linkTemplate let-item>\r\n <a [routerLink]=\"item.link\"> {{ item.text | toObservable | async }} </a>\r\n</ng-template>\r\n<ng-template #textTemplate let-item>\r\n <span class=\"lpx-breadcrumb-item-text\">\r\n {{ item.text | toObservable | async }}\r\n </span>\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.IconComponent, selector: "lpx-icon", inputs: ["iconClass"] }, { kind: "directive", type: i4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i5.ClickOutsideDirective, selector: "[lpxClickOutside]", inputs: ["exceptedRefs"], outputs: ["lpxClickOutside"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.ToObservablePipe, name: "toObservable" }], encapsulation: i0.ViewEncapsulation.None });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BreadcrumbComponent, decorators: [{
22
+ BreadcrumbComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BreadcrumbComponent, deps: [{ token: i1.BreadcrumbService }], target: i0.ɵɵFactoryTarget.Component });
23
+ BreadcrumbComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: BreadcrumbComponent, selector: "lpx-breadcrumb", ngImport: i0, template: "<nav aria-label=\"breadcrumb\">\r\n <ol class=\"lpx-breadcrumb\">\r\n <ng-container *ngFor=\"let item of service.items$ | async; last as last\">\r\n <li\r\n class=\"lpx-breadcrumb-item\"\r\n (click)=\"onClick(item)\"\r\n [class.expanded]=\"item.expanded\"\r\n (lpxClickOutside)=\"item.expanded = false\"\r\n >\r\n <lpx-icon\r\n class=\"lpx-breadcrumb-item-icon\"\r\n *ngIf=\"item.icon\"\r\n [iconClass]=\"item.icon\"\r\n ></lpx-icon>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n item.children?.length ? textTemplate : linkTemplate;\r\n context: { $implicit: item }\r\n \"\r\n ></ng-container>\r\n <ng-container *ngIf=\"item.children?.length && last\">\r\n <lpx-icon\r\n class=\"lpx-caret\"\r\n [iconClass]=\"item.expanded ? icon.chevronUp : icon.chevronDown\"\r\n ></lpx-icon>\r\n <div class=\"lpx-breadcrumb-dropdown\">\r\n <ul class=\"lpx-breadcrumb-dropdown-container\">\r\n <li\r\n class=\"lpx-breadcrumb-dropdown-item\"\r\n *ngFor=\"let child of item.children\"\r\n [class.active]=\"child.active\"\r\n [routerLink]=\"child.link\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n textTemplate;\r\n context: { $implicit: child }\r\n \"\r\n ></ng-container>\r\n </li>\r\n </ul>\r\n </div>\r\n </ng-container>\r\n </li>\r\n <li *ngIf=\"!last\" class=\"lpx-breadcrumb-separator\">\r\n <lpx-icon iconClass=\"bi bi-chevron-right\"></lpx-icon>\r\n </li>\r\n </ng-container>\r\n </ol>\r\n</nav>\r\n\r\n<ng-template #linkTemplate let-item>\r\n <a [routerLink]=\"item.link\"> {{ item.text | toObservable | async }} </a>\r\n</ng-template>\r\n<ng-template #textTemplate let-item>\r\n <span class=\"lpx-breadcrumb-item-text\">\r\n {{ item.text | toObservable | async }}\r\n </span>\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.IconComponent, selector: "lpx-icon", inputs: ["iconClass"] }, { kind: "directive", type: i4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i5.ClickOutsideDirective, selector: "[lpxClickOutside]", inputs: ["exceptedRefs"], outputs: ["lpxClickOutside"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.ToObservablePipe, name: "toObservable" }], encapsulation: i0.ViewEncapsulation.None });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BreadcrumbComponent, decorators: [{
25
25
  type: Component,
26
26
  args: [{ selector: 'lpx-breadcrumb', encapsulation: ViewEncapsulation.None, template: "<nav aria-label=\"breadcrumb\">\r\n <ol class=\"lpx-breadcrumb\">\r\n <ng-container *ngFor=\"let item of service.items$ | async; last as last\">\r\n <li\r\n class=\"lpx-breadcrumb-item\"\r\n (click)=\"onClick(item)\"\r\n [class.expanded]=\"item.expanded\"\r\n (lpxClickOutside)=\"item.expanded = false\"\r\n >\r\n <lpx-icon\r\n class=\"lpx-breadcrumb-item-icon\"\r\n *ngIf=\"item.icon\"\r\n [iconClass]=\"item.icon\"\r\n ></lpx-icon>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n item.children?.length ? textTemplate : linkTemplate;\r\n context: { $implicit: item }\r\n \"\r\n ></ng-container>\r\n <ng-container *ngIf=\"item.children?.length && last\">\r\n <lpx-icon\r\n class=\"lpx-caret\"\r\n [iconClass]=\"item.expanded ? icon.chevronUp : icon.chevronDown\"\r\n ></lpx-icon>\r\n <div class=\"lpx-breadcrumb-dropdown\">\r\n <ul class=\"lpx-breadcrumb-dropdown-container\">\r\n <li\r\n class=\"lpx-breadcrumb-dropdown-item\"\r\n *ngFor=\"let child of item.children\"\r\n [class.active]=\"child.active\"\r\n [routerLink]=\"child.link\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n textTemplate;\r\n context: { $implicit: child }\r\n \"\r\n ></ng-container>\r\n </li>\r\n </ul>\r\n </div>\r\n </ng-container>\r\n </li>\r\n <li *ngIf=\"!last\" class=\"lpx-breadcrumb-separator\">\r\n <lpx-icon iconClass=\"bi bi-chevron-right\"></lpx-icon>\r\n </li>\r\n </ng-container>\r\n </ol>\r\n</nav>\r\n\r\n<ng-template #linkTemplate let-item>\r\n <a [routerLink]=\"item.link\"> {{ item.text | toObservable | async }} </a>\r\n</ng-template>\r\n<ng-template #textTemplate let-item>\r\n <span class=\"lpx-breadcrumb-item-text\">\r\n {{ item.text | toObservable | async }}\r\n </span>\r\n</ng-template>\r\n" }]
27
27
  }], ctorParameters: function () { return [{ type: i1.BreadcrumbService }]; } });
@@ -23,18 +23,18 @@ export class LpxBreadcrumbModule {
23
23
  };
24
24
  }
25
25
  }
26
- LpxBreadcrumbModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxBreadcrumbModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
27
- LpxBreadcrumbModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: LpxBreadcrumbModule, declarations: [BreadcrumbComponent], imports: [CommonModule,
26
+ LpxBreadcrumbModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxBreadcrumbModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
27
+ LpxBreadcrumbModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: LpxBreadcrumbModule, declarations: [BreadcrumbComponent], imports: [CommonModule,
28
28
  LpxIconModule,
29
29
  ToObservableModule,
30
30
  RouterModule,
31
31
  LpxClickOutsideModule], exports: [BreadcrumbComponent] });
32
- LpxBreadcrumbModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxBreadcrumbModule, imports: [CommonModule,
32
+ LpxBreadcrumbModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxBreadcrumbModule, imports: [CommonModule,
33
33
  LpxIconModule,
34
34
  ToObservableModule,
35
35
  RouterModule,
36
36
  LpxClickOutsideModule] });
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxBreadcrumbModule, decorators: [{
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxBreadcrumbModule, decorators: [{
38
38
  type: NgModule,
39
39
  args: [{
40
40
  declarations: [...exportedDeclarations],
@@ -22,9 +22,9 @@ export class BreadcrumbService {
22
22
  this.store.set(items);
23
23
  }
24
24
  }
25
- BreadcrumbService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BreadcrumbService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
26
- BreadcrumbService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BreadcrumbService, providedIn: 'root' });
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: BreadcrumbService, decorators: [{
25
+ BreadcrumbService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BreadcrumbService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
26
+ BreadcrumbService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BreadcrumbService, providedIn: 'root' });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: BreadcrumbService, decorators: [{
28
28
  type: Injectable,
29
29
  args: [{
30
30
  providedIn: 'root',
@@ -10,9 +10,9 @@ export class FooterLinksService {
10
10
  this.store.set(links);
11
11
  }
12
12
  }
13
- FooterLinksService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FooterLinksService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
14
- FooterLinksService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FooterLinksService, providedIn: 'root' });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FooterLinksService, decorators: [{
13
+ FooterLinksService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FooterLinksService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
14
+ FooterLinksService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FooterLinksService, providedIn: 'root' });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FooterLinksService, decorators: [{
16
16
  type: Injectable,
17
17
  args: [{
18
18
  providedIn: 'root',
@@ -11,9 +11,9 @@ export class FooterComponent {
11
11
  this.currentYear = new Date().getFullYear();
12
12
  }
13
13
  }
14
- FooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FooterComponent, deps: [{ token: i1.FooterLinksService }], target: i0.ɵɵFactoryTarget.Component });
15
- FooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: FooterComponent, selector: "lpx-footer", ngImport: i0, template: "<ng-container *ngIf=\"footerValues$ | async as footerValues\">\r\n\r\n <div class=\"lpx-footbar\">\r\n <div class=\"lpx-footbar-copyright\">\r\n <span>{{ currentYear }} \u00A9</span>\r\n <a\r\n *ngIf=\"footerValues.descUrl; else footerDesc\"\r\n [routerLink]=\"[footerValues.descUrl]\"\r\n >\r\n {{ footerValues.desc }}</a\r\n >\r\n <ng-template #footerDesc>\r\n <a> {{ footerValues.desc }}</a>\r\n </ng-template>\r\n </div>\r\n <div class=\"lpx-footbar-solo-links\">\r\n <ng-container *ngFor=\"let footerLink of footerValues.footerLinks\">\r\n <a *ngIf=\"footerLink\" [routerLink]=\"[footerLink.link]\">{{\r\n footerLink.text\r\n }}</a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n</ng-container>\r\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: FooterComponent, decorators: [{
14
+ FooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FooterComponent, deps: [{ token: i1.FooterLinksService }], target: i0.ɵɵFactoryTarget.Component });
15
+ FooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: FooterComponent, selector: "lpx-footer", ngImport: i0, template: "<ng-container *ngIf=\"footerValues$ | async as footerValues\">\r\n\r\n <div class=\"lpx-footbar\">\r\n <div class=\"lpx-footbar-copyright\">\r\n <span>{{ currentYear }} \u00A9</span>\r\n <a\r\n *ngIf=\"footerValues.descUrl; else footerDesc\"\r\n [routerLink]=\"[footerValues.descUrl]\"\r\n >\r\n {{ footerValues.desc }}</a\r\n >\r\n <ng-template #footerDesc>\r\n <a> {{ footerValues.desc }}</a>\r\n </ng-template>\r\n </div>\r\n <div class=\"lpx-footbar-solo-links\">\r\n <ng-container *ngFor=\"let footerLink of footerValues.footerLinks\">\r\n <a *ngIf=\"footerLink\" [routerLink]=\"[footerLink.link]\">{{\r\n footerLink.text\r\n }}</a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n</ng-container>\r\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FooterComponent, decorators: [{
17
17
  type: Component,
18
18
  args: [{ selector: 'lpx-footer', template: "<ng-container *ngIf=\"footerValues$ | async as footerValues\">\r\n\r\n <div class=\"lpx-footbar\">\r\n <div class=\"lpx-footbar-copyright\">\r\n <span>{{ currentYear }} \u00A9</span>\r\n <a\r\n *ngIf=\"footerValues.descUrl; else footerDesc\"\r\n [routerLink]=\"[footerValues.descUrl]\"\r\n >\r\n {{ footerValues.desc }}</a\r\n >\r\n <ng-template #footerDesc>\r\n <a> {{ footerValues.desc }}</a>\r\n </ng-template>\r\n </div>\r\n <div class=\"lpx-footbar-solo-links\">\r\n <ng-container *ngFor=\"let footerLink of footerValues.footerLinks\">\r\n <a *ngIf=\"footerLink\" [routerLink]=\"[footerLink.link]\">{{\r\n footerLink.text\r\n }}</a>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n</ng-container>\r\n" }]
19
19
  }], ctorParameters: function () { return [{ type: i1.FooterLinksService }]; } });
@@ -11,10 +11,10 @@ export class LpxFooterModule {
11
11
  };
12
12
  }
13
13
  }
14
- LpxFooterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxFooterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
- LpxFooterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: LpxFooterModule, declarations: [FooterComponent], imports: [CommonModule, RouterModule], exports: [FooterComponent] });
16
- LpxFooterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxFooterModule, imports: [CommonModule, RouterModule] });
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxFooterModule, decorators: [{
14
+ LpxFooterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxFooterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
+ LpxFooterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: LpxFooterModule, declarations: [FooterComponent], imports: [CommonModule, RouterModule], exports: [FooterComponent] });
16
+ LpxFooterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxFooterModule, imports: [CommonModule, RouterModule] });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxFooterModule, decorators: [{
18
18
  type: NgModule,
19
19
  args: [{
20
20
  declarations: [FooterComponent],
@@ -10,9 +10,9 @@ export class IconComponent {
10
10
  return this.iconSet[this.iconClass] || this.iconClass;
11
11
  }
12
12
  }
13
- IconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: IconComponent, deps: [{ token: LEPTON_X_ICON_SET }], target: i0.ɵɵFactoryTarget.Component });
14
- IconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: IconComponent, selector: "lpx-icon", inputs: { iconClass: "iconClass" }, ngImport: i0, template: ` <i class="lpx-icon" [ngClass]="styleClass" aria-hidden="true"></i> `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: IconComponent, decorators: [{
13
+ IconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: IconComponent, deps: [{ token: LEPTON_X_ICON_SET }], target: i0.ɵɵFactoryTarget.Component });
14
+ IconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: IconComponent, selector: "lpx-icon", inputs: { iconClass: "iconClass" }, ngImport: i0, template: ` <i class="lpx-icon" [ngClass]="styleClass" aria-hidden="true"></i> `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: IconComponent, decorators: [{
16
16
  type: Component,
17
17
  args: [{
18
18
  selector: 'lpx-icon',
@@ -16,10 +16,10 @@ export class LpxIconModule {
16
16
  };
17
17
  }
18
18
  }
19
- LpxIconModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
20
- LpxIconModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: LpxIconModule, declarations: [IconComponent], imports: [CommonModule], exports: [IconComponent] });
21
- LpxIconModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxIconModule, imports: [CommonModule] });
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxIconModule, decorators: [{
19
+ LpxIconModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
20
+ LpxIconModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: LpxIconModule, declarations: [IconComponent], imports: [CommonModule], exports: [IconComponent] });
21
+ LpxIconModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxIconModule, imports: [CommonModule] });
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxIconModule, decorators: [{
23
23
  type: NgModule,
24
24
  args: [{
25
25
  declarations: [IconComponent],
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9sZXB0b24teC1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9uYXZiYXIvbW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFRlbXBsYXRlUmVmLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIExweE5hdmJhckl0ZW0ge1xyXG4gIGFjdGlvbj86ICgpID0+IGJvb2xlYW4gfCBQcm9taXNlPGJvb2xlYW4+IHwgT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuICBjaGlsZHJlbj86IExweE5hdmJhckl0ZW1bXTtcclxuICBjb250YWluZXJMaW5rPzogc3RyaW5nO1xyXG4gIGNvbXBvbmVudD86IFR5cGU8YW55PjtcclxuICBleHBhbmRlZD86IGJvb2xlYW47XHJcbiAgaWNvbj86IHN0cmluZztcclxuICBpZD86IHN0cmluZztcclxuICBsaW5rPzogc3RyaW5nO1xyXG4gIG1vYmlsZU1lbnVUZXh0PzogT2JzZXJ2YWJsZTxzdHJpbmc+IHwgc3RyaW5nO1xyXG4gIHNlbGVjdGVkPzogYm9vbGVhbjtcclxuICBzaG93T25Nb2JpbGVOYXZiYXI/OiBib29sZWFuO1xyXG4gIHRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcclxuICB0ZXh0Pzogc3RyaW5nO1xyXG59XHJcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9sZXB0b24teC1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9uYXZiYXIvbW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFRlbXBsYXRlUmVmLCBUeXBlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBMcHhOYXZiYXJJdGVtIHtcclxuICBhY3Rpb24/Ok5hdkJhclByb3BQcmVkaWNhdGU8THB4TmF2YmFySXRlbT5cclxuICBjaGlsZHJlbj86IExweE5hdmJhckl0ZW1bXTtcclxuICBjb250YWluZXJMaW5rPzogc3RyaW5nO1xyXG4gIGNvbXBvbmVudD86IFR5cGU8YW55PjtcclxuICBleHBhbmRlZD86IGJvb2xlYW47XHJcbiAgaWNvbj86IHN0cmluZztcclxuICBpZD86IHN0cmluZztcclxuICBsaW5rPzogc3RyaW5nO1xyXG4gIG1vYmlsZU1lbnVUZXh0PzogT2JzZXJ2YWJsZTxzdHJpbmc+IHwgc3RyaW5nO1xyXG4gIHNlbGVjdGVkPzogYm9vbGVhbjtcclxuICBzaG93T25Nb2JpbGVOYXZiYXI/OiBib29sZWFuO1xyXG4gIHRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcclxuICB0ZXh0Pzogc3RyaW5nO1xyXG4gIHZpc2libGU/OiBOYXZCYXJQcm9wUHJlZGljYXRlPExweE5hdmJhckl0ZW0+XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIE5hdkJhclByb3BQcmVkaWNhdGU8VD4gPSAoKHByb3A/OiBULCBpbmplY3Rvcj86SW5qZWN0b3IpID0+IGJvb2xlYW4gfCBQcm9taXNlPGJvb2xlYW4+IHwgT2JzZXJ2YWJsZTxib29sZWFuPikgIFxyXG4iXX0=
@@ -1,9 +1,11 @@
1
- import { Component, EventEmitter, Input, Output, ViewEncapsulation, } from '@angular/core';
1
+ import { Component, EventEmitter, Injector, Input, Output, ViewEncapsulation, } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/common";
4
- import * as i2 from "../sub-navbar/sub-navbar.component";
4
+ import * as i2 from "../../../directives/visible.directive";
5
+ import * as i3 from "../sub-navbar/sub-navbar.component";
5
6
  export class NavbarRoutesComponent {
6
- constructor() {
7
+ constructor(injector) {
8
+ this.injector = injector;
7
9
  this.routeClick = new EventEmitter();
8
10
  }
9
11
  onSubnavbarExpand(menuItem, menuItems) {
@@ -14,16 +16,14 @@ export class NavbarRoutesComponent {
14
16
  }
15
17
  }
16
18
  onRouteClick(menuItem, menuItems) {
17
- const expandedItems = menuItems?.filter((item) => (item.expanded || item.selected) &&
18
- (!item.children || item.children?.includes(menuItem)));
19
+ const expandedItems = menuItems?.filter((item) => item.expanded || item.selected);
19
20
  if (expandedItems) {
20
21
  expandedItems
21
22
  .filter((item) => item !== menuItem)
22
23
  .reduce((acc, item) => {
23
- item.selected = false;
24
- return [...acc, ...(item.children || [])];
24
+ return [...acc, item, ...this.flatChildren(item.children || [])];
25
25
  }, [])
26
- ?.filter((item) => item !== menuItem)
26
+ ?.filter((item) => !this.checkChildrenIncludesItem(item, menuItem) && item !== menuItem)
27
27
  .forEach((item) => {
28
28
  item.selected = false;
29
29
  item.expanded = false;
@@ -31,17 +31,27 @@ export class NavbarRoutesComponent {
31
31
  }
32
32
  this.routeClick.emit(menuItem);
33
33
  }
34
+ checkChildrenIncludesItem(item, menuItem) {
35
+ return (item.children?.reduce((acc, child) => acc ||
36
+ child === menuItem ||
37
+ this.checkChildrenIncludesItem(child, menuItem), false) || false);
38
+ }
39
+ flatChildren(menuItems) {
40
+ return (menuItems?.reduce((acc, item) => {
41
+ return [...acc, item, ...this.flatChildren(item.children || [])];
42
+ }, []) || []);
43
+ }
34
44
  }
35
- NavbarRoutesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: NavbarRoutesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
36
- NavbarRoutesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: NavbarRoutesComponent, selector: "lpx-navbar-routes", inputs: { navbarItems: "navbarItems", routerItem: "routerItem" }, outputs: { routeClick: "routeClick" }, ngImport: i0, template: "<ul class=\"lpx-nav-menu\">\r\n <li class=\"outer-menu-item\" *ngFor=\"let item of navbarItems\">\r\n <lpx-sub-navbar\r\n [item]=\"item\"\r\n (expand)=\"onSubnavbarExpand($event, navbarItems)\"\r\n (routeClick)=\"onRouteClick($event, navbarItems)\"\r\n [routerItem]=\"routerItem\"\r\n ></lpx-sub-navbar>\r\n </li>\r\n</ul>\r\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.SubNavbarComponent, selector: "lpx-sub-navbar", inputs: ["item", "routerItem"], outputs: ["routeClick", "expand"] }], encapsulation: i0.ViewEncapsulation.None });
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: NavbarRoutesComponent, decorators: [{
45
+ NavbarRoutesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NavbarRoutesComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
46
+ NavbarRoutesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: NavbarRoutesComponent, selector: "lpx-navbar-routes", inputs: { navbarItems: "navbarItems", routerItem: "routerItem" }, outputs: { routeClick: "routeClick" }, ngImport: i0, template: "<ul class=\"lpx-nav-menu\">\r\n <ng-container *ngFor=\"let item of navbarItems\">\r\n <li class=\"outer-menu-item\" *lpxVisible=\"!item.visible || item.visible(item, injector)\">\r\n <lpx-sub-navbar\r\n [item]=\"item\"\r\n (expand)=\"onSubnavbarExpand($event, navbarItems)\"\r\n (routeClick)=\"onRouteClick($event, navbarItems)\"\r\n [routerItem]=\"routerItem\"\r\n ></lpx-sub-navbar>\r\n </li>\r\n </ng-container>\r\n</ul>\r\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.LpxVisibleDirective, selector: "[lpxVisible]", inputs: ["lpxVisible"] }, { kind: "component", type: i3.SubNavbarComponent, selector: "lpx-sub-navbar", inputs: ["item", "routerItem"], outputs: ["routeClick", "expand"] }], encapsulation: i0.ViewEncapsulation.None });
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NavbarRoutesComponent, decorators: [{
38
48
  type: Component,
39
- args: [{ selector: 'lpx-navbar-routes', encapsulation: ViewEncapsulation.None, template: "<ul class=\"lpx-nav-menu\">\r\n <li class=\"outer-menu-item\" *ngFor=\"let item of navbarItems\">\r\n <lpx-sub-navbar\r\n [item]=\"item\"\r\n (expand)=\"onSubnavbarExpand($event, navbarItems)\"\r\n (routeClick)=\"onRouteClick($event, navbarItems)\"\r\n [routerItem]=\"routerItem\"\r\n ></lpx-sub-navbar>\r\n </li>\r\n</ul>\r\n" }]
40
- }], propDecorators: { navbarItems: [{
49
+ args: [{ selector: 'lpx-navbar-routes', encapsulation: ViewEncapsulation.None, template: "<ul class=\"lpx-nav-menu\">\r\n <ng-container *ngFor=\"let item of navbarItems\">\r\n <li class=\"outer-menu-item\" *lpxVisible=\"!item.visible || item.visible(item, injector)\">\r\n <lpx-sub-navbar\r\n [item]=\"item\"\r\n (expand)=\"onSubnavbarExpand($event, navbarItems)\"\r\n (routeClick)=\"onRouteClick($event, navbarItems)\"\r\n [routerItem]=\"routerItem\"\r\n ></lpx-sub-navbar>\r\n </li>\r\n </ng-container>\r\n</ul>\r\n" }]
50
+ }], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { navbarItems: [{
41
51
  type: Input
42
52
  }], routerItem: [{
43
53
  type: Input
44
54
  }], routeClick: [{
45
55
  type: Output
46
56
  }] } });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLXJvdXRlcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xlcHRvbi14LWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXItcm91dGVzL25hdmJhci1yb3V0ZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9sZXB0b24teC1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9uYXZiYXIvbmF2YmFyLXJvdXRlcy9uYXZiYXItcm91dGVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDOzs7O0FBVXZCLE1BQU0sT0FBTyxxQkFBcUI7SUFMbEM7UUFhRSxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENBQUM7S0ErQmhEO0lBN0JDLGlCQUFpQixDQUFDLFFBQXVCLEVBQUUsU0FBMEI7UUFDbkUsSUFBSSxRQUFRLENBQUMsUUFBUSxFQUFFO1lBQ3JCLFNBQVM7Z0JBQ1AsRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUM7aUJBQ3BDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7U0FDL0M7SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLFFBQXVCLEVBQUUsU0FBMEI7UUFDOUQsTUFBTSxhQUFhLEdBQUcsU0FBUyxFQUFFLE1BQU0sQ0FDckMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUNQLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQ2hDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQ3hELENBQUM7UUFDRixJQUFJLGFBQWEsRUFBRTtZQUNqQixhQUFhO2lCQUNWLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQztpQkFDbkMsTUFBTSxDQUFrQixDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRTtnQkFDckMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7Z0JBQ3RCLE9BQU8sQ0FBQyxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzVDLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQ04sRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUM7aUJBQ3BDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUNoQixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztnQkFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFDeEIsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUNELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7O2tIQXRDVSxxQkFBcUI7c0dBQXJCLHFCQUFxQixrS0NoQmxDLG9XQVVBOzJGRE1hLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxtQkFBbUIsaUJBRWQsaUJBQWlCLENBQUMsSUFBSTs4QkFJckMsV0FBVztzQkFEVixLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixVQUFVO3NCQURULE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMcHhOYXZiYXJJdGVtIH0gZnJvbSAnLi4vbW9kZWxzJztcclxuXHJcbmV4cG9ydCB0eXBlIE5hdmJhckl0ZW1zVHlwZSA9IExweE5hdmJhckl0ZW1bXSB8IG51bGwgfCB1bmRlZmluZWQ7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xweC1uYXZiYXItcm91dGVzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbmF2YmFyLXJvdXRlcy5jb21wb25lbnQuaHRtbCcsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE5hdmJhclJvdXRlc0NvbXBvbmVudCB7XHJcbiAgQElucHV0KClcclxuICBuYXZiYXJJdGVtczogTmF2YmFySXRlbXNUeXBlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHJvdXRlckl0ZW0hOiBib29sZWFuO1xyXG5cclxuICBAT3V0cHV0KClcclxuICByb3V0ZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxMcHhOYXZiYXJJdGVtPigpO1xyXG5cclxuICBvblN1Ym5hdmJhckV4cGFuZChtZW51SXRlbTogTHB4TmF2YmFySXRlbSwgbWVudUl0ZW1zOiBOYXZiYXJJdGVtc1R5cGUpOiB2b2lkIHtcclxuICAgIGlmIChtZW51SXRlbS5leHBhbmRlZCkge1xyXG4gICAgICBtZW51SXRlbXNcclxuICAgICAgICA/LmZpbHRlcigoaXRlbSkgPT4gaXRlbSAhPT0gbWVudUl0ZW0pXHJcbiAgICAgICAgLmZvckVhY2goKGl0ZW0pID0+IChpdGVtLmV4cGFuZGVkID0gZmFsc2UpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uUm91dGVDbGljayhtZW51SXRlbTogTHB4TmF2YmFySXRlbSwgbWVudUl0ZW1zOiBOYXZiYXJJdGVtc1R5cGUpOiB2b2lkIHtcclxuICAgIGNvbnN0IGV4cGFuZGVkSXRlbXMgPSBtZW51SXRlbXM/LmZpbHRlcihcclxuICAgICAgKGl0ZW0pID0+XHJcbiAgICAgICAgKGl0ZW0uZXhwYW5kZWQgfHwgaXRlbS5zZWxlY3RlZCkgJiZcclxuICAgICAgICAoIWl0ZW0uY2hpbGRyZW4gfHwgaXRlbS5jaGlsZHJlbj8uaW5jbHVkZXMobWVudUl0ZW0pKVxyXG4gICAgKTtcclxuICAgIGlmIChleHBhbmRlZEl0ZW1zKSB7XHJcbiAgICAgIGV4cGFuZGVkSXRlbXNcclxuICAgICAgICAuZmlsdGVyKChpdGVtKSA9PiBpdGVtICE9PSBtZW51SXRlbSlcclxuICAgICAgICAucmVkdWNlPExweE5hdmJhckl0ZW1bXT4oKGFjYywgaXRlbSkgPT4ge1xyXG4gICAgICAgICAgaXRlbS5zZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgcmV0dXJuIFsuLi5hY2MsIC4uLihpdGVtLmNoaWxkcmVuIHx8IFtdKV07XHJcbiAgICAgICAgfSwgW10pXHJcbiAgICAgICAgPy5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0gIT09IG1lbnVJdGVtKVxyXG4gICAgICAgIC5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICBpdGVtLnNlbGVjdGVkID0gZmFsc2U7XHJcbiAgICAgICAgICBpdGVtLmV4cGFuZGVkID0gZmFsc2U7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnJvdXRlQ2xpY2suZW1pdChtZW51SXRlbSk7XHJcbiAgfVxyXG59XHJcbiIsIjx1bCBjbGFzcz1cImxweC1uYXYtbWVudVwiPlxyXG4gIDxsaSBjbGFzcz1cIm91dGVyLW1lbnUtaXRlbVwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIG5hdmJhckl0ZW1zXCI+XHJcbiAgICA8bHB4LXN1Yi1uYXZiYXJcclxuICAgICAgW2l0ZW1dPVwiaXRlbVwiXHJcbiAgICAgIChleHBhbmQpPVwib25TdWJuYXZiYXJFeHBhbmQoJGV2ZW50LCBuYXZiYXJJdGVtcylcIlxyXG4gICAgICAocm91dGVDbGljayk9XCJvblJvdXRlQ2xpY2soJGV2ZW50LCBuYXZiYXJJdGVtcylcIlxyXG4gICAgICBbcm91dGVySXRlbV09XCJyb3V0ZXJJdGVtXCJcclxuICAgID48L2xweC1zdWItbmF2YmFyPlxyXG4gIDwvbGk+XHJcbjwvdWw+XHJcbiJdfQ==
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLXJvdXRlcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xlcHRvbi14LWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXItcm91dGVzL25hdmJhci1yb3V0ZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9sZXB0b24teC1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9uYXZiYXIvbmF2YmFyLXJvdXRlcy9uYXZiYXItcm91dGVzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFFBQVEsRUFDUixLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFVdkIsTUFBTSxPQUFPLHFCQUFxQjtJQVNoQyxZQUFtQixRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBRHJDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztJQUNQLENBQUM7SUFDekMsaUJBQWlCLENBQUMsUUFBdUIsRUFBRSxTQUEwQjtRQUNuRSxJQUFJLFFBQVEsQ0FBQyxRQUFRLEVBQUU7WUFDckIsU0FBUztnQkFDUCxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQztpQkFDcEMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUMvQztJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsUUFBdUIsRUFBRSxTQUEwQjtRQUM5RCxNQUFNLGFBQWEsR0FBRyxTQUFTLEVBQUUsTUFBTSxDQUNyQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUN6QyxDQUFDO1FBQ0YsSUFBSSxhQUFhLEVBQUU7WUFDakIsYUFBYTtpQkFDVixNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUM7aUJBQ25DLE1BQU0sQ0FBa0IsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7Z0JBQ3JDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNuRSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUNOLEVBQUUsTUFBTSxDQUNOLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDUCxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUksSUFBSSxLQUFLLFFBQVEsQ0FDdkU7aUJBQ0EsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2dCQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUN4QixDQUFDLENBQUMsQ0FBQztTQUNOO1FBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELHlCQUF5QixDQUN2QixJQUFtQixFQUNuQixRQUF1QjtRQUV2QixPQUFPLENBQ0wsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQ25CLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQ2IsR0FBRztZQUNILEtBQUssS0FBSyxRQUFRO1lBQ2xCLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQ2pELEtBQUssQ0FDTixJQUFJLEtBQUssQ0FDWCxDQUFDO0lBQ0osQ0FBQztJQUVELFlBQVksQ0FBQyxTQUEwQjtRQUNyQyxPQUFPLENBQ0wsU0FBUyxFQUFFLE1BQU0sQ0FBa0IsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDL0MsT0FBTyxDQUFDLEdBQUcsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ25FLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQ2IsQ0FBQztJQUNKLENBQUM7O2tIQTdEVSxxQkFBcUI7c0dBQXJCLHFCQUFxQixrS0NqQmxDLDJkQVlBOzJGREthLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxtQkFBbUIsaUJBRWQsaUJBQWlCLENBQUMsSUFBSTsrRkFJckMsV0FBVztzQkFEVixLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixVQUFVO3NCQURULE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5qZWN0b3IsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMcHhOYXZiYXJJdGVtIH0gZnJvbSAnLi4vbW9kZWxzJztcclxuXHJcbmV4cG9ydCB0eXBlIE5hdmJhckl0ZW1zVHlwZSA9IExweE5hdmJhckl0ZW1bXSB8IG51bGwgfCB1bmRlZmluZWQ7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xweC1uYXZiYXItcm91dGVzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbmF2YmFyLXJvdXRlcy5jb21wb25lbnQuaHRtbCcsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE5hdmJhclJvdXRlc0NvbXBvbmVudCB7XHJcbiAgQElucHV0KClcclxuICBuYXZiYXJJdGVtczogTmF2YmFySXRlbXNUeXBlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHJvdXRlckl0ZW0hOiBib29sZWFuO1xyXG5cclxuICBAT3V0cHV0KClcclxuICByb3V0ZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxMcHhOYXZiYXJJdGVtPigpO1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBpbmplY3RvcjogSW5qZWN0b3IpIHt9XHJcbiAgb25TdWJuYXZiYXJFeHBhbmQobWVudUl0ZW06IExweE5hdmJhckl0ZW0sIG1lbnVJdGVtczogTmF2YmFySXRlbXNUeXBlKTogdm9pZCB7XHJcbiAgICBpZiAobWVudUl0ZW0uZXhwYW5kZWQpIHtcclxuICAgICAgbWVudUl0ZW1zXHJcbiAgICAgICAgPy5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0gIT09IG1lbnVJdGVtKVxyXG4gICAgICAgIC5mb3JFYWNoKChpdGVtKSA9PiAoaXRlbS5leHBhbmRlZCA9IGZhbHNlKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvblJvdXRlQ2xpY2sobWVudUl0ZW06IExweE5hdmJhckl0ZW0sIG1lbnVJdGVtczogTmF2YmFySXRlbXNUeXBlKTogdm9pZCB7XHJcbiAgICBjb25zdCBleHBhbmRlZEl0ZW1zID0gbWVudUl0ZW1zPy5maWx0ZXIoXHJcbiAgICAgIChpdGVtKSA9PiBpdGVtLmV4cGFuZGVkIHx8IGl0ZW0uc2VsZWN0ZWRcclxuICAgICk7XHJcbiAgICBpZiAoZXhwYW5kZWRJdGVtcykge1xyXG4gICAgICBleHBhbmRlZEl0ZW1zXHJcbiAgICAgICAgLmZpbHRlcigoaXRlbSkgPT4gaXRlbSAhPT0gbWVudUl0ZW0pXHJcbiAgICAgICAgLnJlZHVjZTxMcHhOYXZiYXJJdGVtW10+KChhY2MsIGl0ZW0pID0+IHtcclxuICAgICAgICAgIHJldHVybiBbLi4uYWNjLCBpdGVtLCAuLi50aGlzLmZsYXRDaGlsZHJlbihpdGVtLmNoaWxkcmVuIHx8IFtdKV07XHJcbiAgICAgICAgfSwgW10pXHJcbiAgICAgICAgPy5maWx0ZXIoXHJcbiAgICAgICAgICAoaXRlbSkgPT5cclxuICAgICAgICAgICAgIXRoaXMuY2hlY2tDaGlsZHJlbkluY2x1ZGVzSXRlbShpdGVtLCBtZW51SXRlbSkgJiYgaXRlbSAhPT0gbWVudUl0ZW1cclxuICAgICAgICApXHJcbiAgICAgICAgLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgICAgIGl0ZW0uc2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICAgIGl0ZW0uZXhwYW5kZWQgPSBmYWxzZTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIHRoaXMucm91dGVDbGljay5lbWl0KG1lbnVJdGVtKTtcclxuICB9XHJcblxyXG4gIGNoZWNrQ2hpbGRyZW5JbmNsdWRlc0l0ZW0oXHJcbiAgICBpdGVtOiBMcHhOYXZiYXJJdGVtLFxyXG4gICAgbWVudUl0ZW06IExweE5hdmJhckl0ZW1cclxuICApOiBib29sZWFuIHtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIGl0ZW0uY2hpbGRyZW4/LnJlZHVjZShcclxuICAgICAgICAoYWNjLCBjaGlsZCkgPT5cclxuICAgICAgICAgIGFjYyB8fFxyXG4gICAgICAgICAgY2hpbGQgPT09IG1lbnVJdGVtIHx8XHJcbiAgICAgICAgICB0aGlzLmNoZWNrQ2hpbGRyZW5JbmNsdWRlc0l0ZW0oY2hpbGQsIG1lbnVJdGVtKSxcclxuICAgICAgICBmYWxzZVxyXG4gICAgICApIHx8IGZhbHNlXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZmxhdENoaWxkcmVuKG1lbnVJdGVtczogTmF2YmFySXRlbXNUeXBlKTogTHB4TmF2YmFySXRlbVtdIHtcclxuICAgIHJldHVybiAoXHJcbiAgICAgIG1lbnVJdGVtcz8ucmVkdWNlPExweE5hdmJhckl0ZW1bXT4oKGFjYywgaXRlbSkgPT4ge1xyXG4gICAgICAgIHJldHVybiBbLi4uYWNjLCBpdGVtLCAuLi50aGlzLmZsYXRDaGlsZHJlbihpdGVtLmNoaWxkcmVuIHx8IFtdKV07XHJcbiAgICAgIH0sIFtdKSB8fCBbXVxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIiwiPHVsIGNsYXNzPVwibHB4LW5hdi1tZW51XCI+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBuYXZiYXJJdGVtc1wiPlxyXG4gICAgPGxpIGNsYXNzPVwib3V0ZXItbWVudS1pdGVtXCIgKmxweFZpc2libGU9XCIhaXRlbS52aXNpYmxlIHx8IGl0ZW0udmlzaWJsZShpdGVtLCBpbmplY3RvcilcIj5cclxuICAgICAgPGxweC1zdWItbmF2YmFyXHJcbiAgICAgICAgW2l0ZW1dPVwiaXRlbVwiXHJcbiAgICAgICAgKGV4cGFuZCk9XCJvblN1Ym5hdmJhckV4cGFuZCgkZXZlbnQsIG5hdmJhckl0ZW1zKVwiXHJcbiAgICAgICAgKHJvdXRlQ2xpY2spPVwib25Sb3V0ZUNsaWNrKCRldmVudCwgbmF2YmFySXRlbXMpXCJcclxuICAgICAgICBbcm91dGVySXRlbV09XCJyb3V0ZXJJdGVtXCJcclxuICAgICAgPjwvbHB4LXN1Yi1uYXZiYXI+XHJcbiAgICA8L2xpPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG48L3VsPlxyXG4iXX0=
@@ -2,9 +2,9 @@ import { Directive } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class NavbarRoutesDirective {
4
4
  }
5
- NavbarRoutesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: NavbarRoutesDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
6
- NavbarRoutesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.1", type: NavbarRoutesDirective, selector: "[lpx-navbar-routes],[lpxNavbarRoutes]", exportAs: ["lpxNavbarRoutes"], ngImport: i0 });
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: NavbarRoutesDirective, decorators: [{
5
+ NavbarRoutesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NavbarRoutesDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
6
+ NavbarRoutesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: NavbarRoutesDirective, selector: "[lpx-navbar-routes],[lpxNavbarRoutes]", exportAs: ["lpxNavbarRoutes"], ngImport: i0 });
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NavbarRoutesDirective, decorators: [{
8
8
  type: Directive,
9
9
  args: [{
10
10
  selector: '[lpx-navbar-routes],[lpxNavbarRoutes]',
@@ -3,6 +3,7 @@ import { LayoutService } from '../../services/layout';
3
3
  import { NavbarService } from './navbar.service';
4
4
  import { NavbarRoutesDirective } from './navbar-routes/navbar-routes.directive';
5
5
  import { CONTENT_AFTER_ROUTES, CONTENT_BEFORE_ROUTES } from './navbar.token';
6
+ import { LogoPanelDirective } from '../../panels/logo-panel.directive';
6
7
  import * as i0 from "@angular/core";
7
8
  import * as i1 from "./navbar.service";
8
9
  import * as i2 from "../../services/layout";
@@ -26,13 +27,16 @@ export class NavbarComponent {
26
27
  return contents.reduce((acc, val) => acc.concat(val), []);
27
28
  }
28
29
  }
29
- NavbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: NavbarComponent, deps: [{ token: i1.NavbarService }, { token: i0.Injector }, { token: i2.LayoutService }], target: i0.ɵɵFactoryTarget.Component });
30
- NavbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.1", type: NavbarComponent, selector: "lpx-navbar", queries: [{ propertyName: "routesTemplate", first: true, predicate: NavbarRoutesDirective, descendants: true, read: TemplateRef }], ngImport: i0, template: "<nav class=\"lpx-nav\">\r\n <div class=\"lpx-logo-container\">\r\n <lpx-brand-logo></lpx-brand-logo\r\n ><lpx-icon\r\n class=\"menu-collapse-icon hidden-in-hover-trigger\"\r\n iconClass=\"bi bi-filter-left\"\r\n (click)=\"toggleSidebarHover()\"\r\n ></lpx-icon>\r\n </div>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"customContentTemplate; context: { $implicit: contentBefore }\"\r\n ></ng-container>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n routesTemplate || defaultRouteTemplate;\r\n context: { $implicit: service.navbarItems$ | async }\r\n \"\r\n ></ng-container>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"customContentTemplate; context: { $implicit: contentAfter }\"\r\n ></ng-container>\r\n</nav>\r\n\r\n<ng-template #defaultRouteTemplate let-items>\r\n <lpx-navbar-routes [navbarItems]=\"items\" [routerItem]=\"true\"></lpx-navbar-routes>\r\n</ng-template>\r\n\r\n<ng-template #customContentTemplate let-contents>\r\n <ng-container *ngFor=\"let component of contents\">\r\n <ng-container *ngComponentOutlet=\"component; injector: injector\"></ng-container>\r\n </ng-container>\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i3.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.BrandLogoComponent, selector: "lpx-brand-logo" }, { kind: "component", type: i5.IconComponent, selector: "lpx-icon", inputs: ["iconClass"] }, { kind: "component", type: i6.NavbarRoutesComponent, selector: "lpx-navbar-routes", inputs: ["navbarItems", "routerItem"], outputs: ["routeClick"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], encapsulation: i0.ViewEncapsulation.None });
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: NavbarComponent, decorators: [{
30
+ NavbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NavbarComponent, deps: [{ token: i1.NavbarService }, { token: i0.Injector }, { token: i2.LayoutService }], target: i0.ɵɵFactoryTarget.Component });
31
+ NavbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: NavbarComponent, selector: "lpx-navbar", queries: [{ propertyName: "routesTemplate", first: true, predicate: NavbarRoutesDirective, descendants: true, read: TemplateRef }, { propertyName: "logoPanel", first: true, predicate: LogoPanelDirective, descendants: true }], ngImport: i0, template: "<nav class=\"lpx-nav\">\r\n <div class=\"lpx-logo-container\">\r\n <ng-container\r\n *ngTemplateOutlet=\"logoPanel?.template || defaultLogo\"\r\n ></ng-container>\r\n <lpx-icon\r\n class=\"menu-collapse-icon hidden-in-hover-trigger\"\r\n iconClass=\"bi bi-filter-left\"\r\n (click)=\"toggleSidebarHover()\"\r\n ></lpx-icon>\r\n </div>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n customContentTemplate;\r\n context: { $implicit: contentBefore }\r\n \"\r\n ></ng-container>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n routesTemplate || defaultRouteTemplate;\r\n context: { $implicit: service.navbarItems$ | async }\r\n \"\r\n ></ng-container>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n customContentTemplate;\r\n context: { $implicit: contentAfter }\r\n \"\r\n ></ng-container>\r\n</nav>\r\n\r\n<ng-template #defaultRouteTemplate let-items>\r\n <lpx-navbar-routes\r\n [navbarItems]=\"items\"\r\n [routerItem]=\"true\"\r\n ></lpx-navbar-routes>\r\n</ng-template>\r\n\r\n<ng-template #customContentTemplate let-contents>\r\n <ng-container *ngFor=\"let component of contents\">\r\n <ng-container\r\n *ngComponentOutlet=\"component; injector: injector\"\r\n ></ng-container>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #defaultLogo>\r\n <lpx-brand-logo></lpx-brand-logo>\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i3.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.BrandLogoComponent, selector: "lpx-brand-logo" }, { kind: "component", type: i5.IconComponent, selector: "lpx-icon", inputs: ["iconClass"] }, { kind: "component", type: i6.NavbarRoutesComponent, selector: "lpx-navbar-routes", inputs: ["navbarItems", "routerItem"], outputs: ["routeClick"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], encapsulation: i0.ViewEncapsulation.None });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: NavbarComponent, decorators: [{
32
33
  type: Component,
33
- args: [{ selector: 'lpx-navbar', encapsulation: ViewEncapsulation.None, template: "<nav class=\"lpx-nav\">\r\n <div class=\"lpx-logo-container\">\r\n <lpx-brand-logo></lpx-brand-logo\r\n ><lpx-icon\r\n class=\"menu-collapse-icon hidden-in-hover-trigger\"\r\n iconClass=\"bi bi-filter-left\"\r\n (click)=\"toggleSidebarHover()\"\r\n ></lpx-icon>\r\n </div>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"customContentTemplate; context: { $implicit: contentBefore }\"\r\n ></ng-container>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n routesTemplate || defaultRouteTemplate;\r\n context: { $implicit: service.navbarItems$ | async }\r\n \"\r\n ></ng-container>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"customContentTemplate; context: { $implicit: contentAfter }\"\r\n ></ng-container>\r\n</nav>\r\n\r\n<ng-template #defaultRouteTemplate let-items>\r\n <lpx-navbar-routes [navbarItems]=\"items\" [routerItem]=\"true\"></lpx-navbar-routes>\r\n</ng-template>\r\n\r\n<ng-template #customContentTemplate let-contents>\r\n <ng-container *ngFor=\"let component of contents\">\r\n <ng-container *ngComponentOutlet=\"component; injector: injector\"></ng-container>\r\n </ng-container>\r\n</ng-template>\r\n" }]
34
+ args: [{ selector: 'lpx-navbar', encapsulation: ViewEncapsulation.None, template: "<nav class=\"lpx-nav\">\r\n <div class=\"lpx-logo-container\">\r\n <ng-container\r\n *ngTemplateOutlet=\"logoPanel?.template || defaultLogo\"\r\n ></ng-container>\r\n <lpx-icon\r\n class=\"menu-collapse-icon hidden-in-hover-trigger\"\r\n iconClass=\"bi bi-filter-left\"\r\n (click)=\"toggleSidebarHover()\"\r\n ></lpx-icon>\r\n </div>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n customContentTemplate;\r\n context: { $implicit: contentBefore }\r\n \"\r\n ></ng-container>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n routesTemplate || defaultRouteTemplate;\r\n context: { $implicit: service.navbarItems$ | async }\r\n \"\r\n ></ng-container>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n customContentTemplate;\r\n context: { $implicit: contentAfter }\r\n \"\r\n ></ng-container>\r\n</nav>\r\n\r\n<ng-template #defaultRouteTemplate let-items>\r\n <lpx-navbar-routes\r\n [navbarItems]=\"items\"\r\n [routerItem]=\"true\"\r\n ></lpx-navbar-routes>\r\n</ng-template>\r\n\r\n<ng-template #customContentTemplate let-contents>\r\n <ng-container *ngFor=\"let component of contents\">\r\n <ng-container\r\n *ngComponentOutlet=\"component; injector: injector\"\r\n ></ng-container>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #defaultLogo>\r\n <lpx-brand-logo></lpx-brand-logo>\r\n</ng-template>\r\n" }]
34
35
  }], ctorParameters: function () { return [{ type: i1.NavbarService }, { type: i0.Injector }, { type: i2.LayoutService }]; }, propDecorators: { routesTemplate: [{
35
36
  type: ContentChild,
36
37
  args: [NavbarRoutesDirective, { read: TemplateRef }]
38
+ }], logoPanel: [{
39
+ type: ContentChild,
40
+ args: [LogoPanelDirective]
37
41
  }] } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbGVwdG9uLXgtY29yZS9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xlcHRvbi14LWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBRVosUUFBUSxFQUNSLFdBQVcsRUFFWCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXRELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUFPN0UsTUFBTSxPQUFPLGVBQWU7SUFPMUIsWUFDUyxPQUFzQixFQUNiLFFBQWtCLEVBQzFCLGFBQTRCO1FBRjdCLFlBQU8sR0FBUCxPQUFPLENBQWU7UUFDYixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBRXBDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVPLFlBQVksQ0FBQyxLQUFvQztRQUN2RCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDOUMsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUM1RCxDQUFDOzs0R0F2QlUsZUFBZTtnR0FBZixlQUFlLDhGQUNaLHFCQUFxQiwyQkFBVSxXQUFXLDZCQ3JCMUQsOHBDQW1DQTsyRkRmYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLFlBQVksaUJBRVAsaUJBQWlCLENBQUMsSUFBSTt1SkFJckMsY0FBYztzQkFEYixZQUFZO3VCQUFDLHFCQUFxQixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIENvbnRlbnRDaGlsZCxcclxuICBJbmplY3Rpb25Ub2tlbixcclxuICBJbmplY3RvcixcclxuICBUZW1wbGF0ZVJlZixcclxuICBUeXBlLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMYXlvdXRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbGF5b3V0JztcclxuXHJcbmltcG9ydCB7IE5hdmJhclNlcnZpY2UgfSBmcm9tICcuL25hdmJhci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTmF2YmFyUm91dGVzRGlyZWN0aXZlIH0gZnJvbSAnLi9uYXZiYXItcm91dGVzL25hdmJhci1yb3V0ZXMuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ09OVEVOVF9BRlRFUl9ST1VURVMsIENPTlRFTlRfQkVGT1JFX1JPVVRFUyB9IGZyb20gJy4vbmF2YmFyLnRva2VuJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbHB4LW5hdmJhcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL25hdmJhci5jb21wb25lbnQuaHRtbCcsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE5hdmJhckNvbXBvbmVudCB7XHJcbiAgQENvbnRlbnRDaGlsZChOYXZiYXJSb3V0ZXNEaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSlcclxuICByb3V0ZXNUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPE5hdmJhclJvdXRlc0RpcmVjdGl2ZT47XHJcblxyXG4gIGNvbnRlbnRCZWZvcmU6IFR5cGU8YW55PltdO1xyXG4gIGNvbnRlbnRBZnRlcjogVHlwZTxhbnk+W107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHNlcnZpY2U6IE5hdmJhclNlcnZpY2UsXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcHJpdmF0ZSBsYXlvdXRTZXJ2aWNlOiBMYXlvdXRTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICB0aGlzLmNvbnRlbnRCZWZvcmUgPSB0aGlzLmZsYXRDb250ZW50cyhDT05URU5UX0JFRk9SRV9ST1VURVMpO1xyXG4gICAgdGhpcy5jb250ZW50QWZ0ZXIgPSB0aGlzLmZsYXRDb250ZW50cyhDT05URU5UX0FGVEVSX1JPVVRFUyk7XHJcbiAgfVxyXG5cclxuICB0b2dnbGVTaWRlYmFySG92ZXIoKSB7XHJcbiAgICB0aGlzLmxheW91dFNlcnZpY2UudG9nZ2xlQ2xhc3MoJ2hvdmVyLXRyaWdnZXInKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZmxhdENvbnRlbnRzKHRva2VuOiBJbmplY3Rpb25Ub2tlbjxUeXBlPGFueT5bXVtdPikge1xyXG4gICAgY29uc3QgY29udGVudHMgPSB0aGlzLmluamVjdG9yLmdldCh0b2tlbiwgW10pO1xyXG4gICAgcmV0dXJuIGNvbnRlbnRzLnJlZHVjZSgoYWNjLCB2YWwpID0+IGFjYy5jb25jYXQodmFsKSwgW10pO1xyXG4gIH1cclxufVxyXG4iLCI8bmF2IGNsYXNzPVwibHB4LW5hdlwiPlxyXG4gIDxkaXYgY2xhc3M9XCJscHgtbG9nby1jb250YWluZXJcIj5cclxuICAgIDxscHgtYnJhbmQtbG9nbz48L2xweC1icmFuZC1sb2dvXHJcbiAgICA+PGxweC1pY29uXHJcbiAgICAgIGNsYXNzPVwibWVudS1jb2xsYXBzZS1pY29uIGhpZGRlbi1pbi1ob3Zlci10cmlnZ2VyXCJcclxuICAgICAgaWNvbkNsYXNzPVwiYmkgYmktZmlsdGVyLWxlZnRcIlxyXG4gICAgICAoY2xpY2spPVwidG9nZ2xlU2lkZWJhckhvdmVyKClcIlxyXG4gICAgPjwvbHB4LWljb24+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxuZy1jb250YWluZXJcclxuICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY3VzdG9tQ29udGVudFRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29udGVudEJlZm9yZSB9XCJcclxuICA+PC9uZy1jb250YWluZXI+XHJcblxyXG4gIDxuZy1jb250YWluZXJcclxuICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXHJcbiAgICAgIHJvdXRlc1RlbXBsYXRlIHx8IGRlZmF1bHRSb3V0ZVRlbXBsYXRlO1xyXG4gICAgICBjb250ZXh0OiB7ICRpbXBsaWNpdDogc2VydmljZS5uYXZiYXJJdGVtcyQgfCBhc3luYyB9XHJcbiAgICBcIlxyXG4gID48L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgPG5nLWNvbnRhaW5lclxyXG4gICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjdXN0b21Db250ZW50VGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBjb250ZW50QWZ0ZXIgfVwiXHJcbiAgPjwvbmctY29udGFpbmVyPlxyXG48L25hdj5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdFJvdXRlVGVtcGxhdGUgbGV0LWl0ZW1zPlxyXG4gIDxscHgtbmF2YmFyLXJvdXRlcyBbbmF2YmFySXRlbXNdPVwiaXRlbXNcIiBbcm91dGVySXRlbV09XCJ0cnVlXCI+PC9scHgtbmF2YmFyLXJvdXRlcz5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjY3VzdG9tQ29udGVudFRlbXBsYXRlIGxldC1jb250ZW50cz5cclxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb21wb25lbnQgb2YgY29udGVudHNcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nQ29tcG9uZW50T3V0bGV0PVwiY29tcG9uZW50OyBpbmplY3RvcjogaW5qZWN0b3JcIj48L25nLWNvbnRhaW5lcj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbGVwdG9uLXgtY29yZS9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2xlcHRvbi14LWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBRVosUUFBUSxFQUNSLFdBQVcsRUFFWCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXRELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7Ozs7QUFPdkUsTUFBTSxPQUFPLGVBQWU7SUFTMUIsWUFDUyxPQUFzQixFQUNiLFFBQWtCLEVBQzFCLGFBQTRCO1FBRjdCLFlBQU8sR0FBUCxPQUFPLENBQWU7UUFDYixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBRXBDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVPLFlBQVksQ0FBQyxLQUFvQztRQUN2RCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDOUMsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUM1RCxDQUFDOzs0R0F6QlUsZUFBZTtnR0FBZixlQUFlLDhGQUNaLHFCQUFxQiwyQkFBVSxXQUFXLHlEQUcxQyxrQkFBa0IsZ0RDekJsQywwNUNBb0RBOzJGRC9CYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLFlBQVksaUJBRVAsaUJBQWlCLENBQUMsSUFBSTt1SkFJckMsY0FBYztzQkFEYixZQUFZO3VCQUFDLHFCQUFxQixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtnQkFHeEIsU0FBUztzQkFBMUMsWUFBWTt1QkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGQsXHJcbiAgSW5qZWN0aW9uVG9rZW4sXHJcbiAgSW5qZWN0b3IsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbiAgVHlwZSxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTGF5b3V0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2xheW91dCc7XHJcblxyXG5pbXBvcnQgeyBOYXZiYXJTZXJ2aWNlIH0gZnJvbSAnLi9uYXZiYXIuc2VydmljZSc7XHJcbmltcG9ydCB7IE5hdmJhclJvdXRlc0RpcmVjdGl2ZSB9IGZyb20gJy4vbmF2YmFyLXJvdXRlcy9uYXZiYXItcm91dGVzLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENPTlRFTlRfQUZURVJfUk9VVEVTLCBDT05URU5UX0JFRk9SRV9ST1VURVMgfSBmcm9tICcuL25hdmJhci50b2tlbic7XHJcbmltcG9ydCB7IExvZ29QYW5lbERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL3BhbmVscy9sb2dvLXBhbmVsLmRpcmVjdGl2ZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xweC1uYXZiYXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9uYXZiYXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOYXZiYXJDb21wb25lbnQge1xyXG4gIEBDb250ZW50Q2hpbGQoTmF2YmFyUm91dGVzRGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pXHJcbiAgcm91dGVzVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxOYXZiYXJSb3V0ZXNEaXJlY3RpdmU+O1xyXG5cclxuICBAQ29udGVudENoaWxkKExvZ29QYW5lbERpcmVjdGl2ZSkgbG9nb1BhbmVsPzogTG9nb1BhbmVsRGlyZWN0aXZlO1xyXG5cclxuICBjb250ZW50QmVmb3JlOiBUeXBlPGFueT5bXTtcclxuICBjb250ZW50QWZ0ZXI6IFR5cGU8YW55PltdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBzZXJ2aWNlOiBOYXZiYXJTZXJ2aWNlLFxyXG4gICAgcHVibGljIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByaXZhdGUgbGF5b3V0U2VydmljZTogTGF5b3V0U2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5jb250ZW50QmVmb3JlID0gdGhpcy5mbGF0Q29udGVudHMoQ09OVEVOVF9CRUZPUkVfUk9VVEVTKTtcclxuICAgIHRoaXMuY29udGVudEFmdGVyID0gdGhpcy5mbGF0Q29udGVudHMoQ09OVEVOVF9BRlRFUl9ST1VURVMpO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlU2lkZWJhckhvdmVyKCkge1xyXG4gICAgdGhpcy5sYXlvdXRTZXJ2aWNlLnRvZ2dsZUNsYXNzKCdob3Zlci10cmlnZ2VyJyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZsYXRDb250ZW50cyh0b2tlbjogSW5qZWN0aW9uVG9rZW48VHlwZTxhbnk+W11bXT4pIHtcclxuICAgIGNvbnN0IGNvbnRlbnRzID0gdGhpcy5pbmplY3Rvci5nZXQodG9rZW4sIFtdKTtcclxuICAgIHJldHVybiBjb250ZW50cy5yZWR1Y2UoKGFjYywgdmFsKSA9PiBhY2MuY29uY2F0KHZhbCksIFtdKTtcclxuICB9XHJcbn1cclxuIiwiPG5hdiBjbGFzcz1cImxweC1uYXZcIj5cclxuICA8ZGl2IGNsYXNzPVwibHB4LWxvZ28tY29udGFpbmVyXCI+XHJcbiAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwibG9nb1BhbmVsPy50ZW1wbGF0ZSB8fCBkZWZhdWx0TG9nb1wiXHJcbiAgICA+PC9uZy1jb250YWluZXI+XHJcbiAgICA8bHB4LWljb25cclxuICAgICAgY2xhc3M9XCJtZW51LWNvbGxhcHNlLWljb24gaGlkZGVuLWluLWhvdmVyLXRyaWdnZXJcIlxyXG4gICAgICBpY29uQ2xhc3M9XCJiaSBiaS1maWx0ZXItbGVmdFwiXHJcbiAgICAgIChjbGljayk9XCJ0b2dnbGVTaWRlYmFySG92ZXIoKVwiXHJcbiAgICA+PC9scHgtaWNvbj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPG5nLWNvbnRhaW5lclxyXG4gICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcclxuICAgICAgY3VzdG9tQ29udGVudFRlbXBsYXRlO1xyXG4gICAgICBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29udGVudEJlZm9yZSB9XHJcbiAgICBcIlxyXG4gID48L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgPG5nLWNvbnRhaW5lclxyXG4gICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcclxuICAgICAgcm91dGVzVGVtcGxhdGUgfHwgZGVmYXVsdFJvdXRlVGVtcGxhdGU7XHJcbiAgICAgIGNvbnRleHQ6IHsgJGltcGxpY2l0OiBzZXJ2aWNlLm5hdmJhckl0ZW1zJCB8IGFzeW5jIH1cclxuICAgIFwiXHJcbiAgPjwvbmctY29udGFpbmVyPlxyXG5cclxuICA8bmctY29udGFpbmVyXHJcbiAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxyXG4gICAgICBjdXN0b21Db250ZW50VGVtcGxhdGU7XHJcbiAgICAgIGNvbnRleHQ6IHsgJGltcGxpY2l0OiBjb250ZW50QWZ0ZXIgfVxyXG4gICAgXCJcclxuICA+PC9uZy1jb250YWluZXI+XHJcbjwvbmF2PlxyXG5cclxuPG5nLXRlbXBsYXRlICNkZWZhdWx0Um91dGVUZW1wbGF0ZSBsZXQtaXRlbXM+XHJcbiAgPGxweC1uYXZiYXItcm91dGVzXHJcbiAgICBbbmF2YmFySXRlbXNdPVwiaXRlbXNcIlxyXG4gICAgW3JvdXRlckl0ZW1dPVwidHJ1ZVwiXHJcbiAgPjwvbHB4LW5hdmJhci1yb3V0ZXM+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2N1c3RvbUNvbnRlbnRUZW1wbGF0ZSBsZXQtY29udGVudHM+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29tcG9uZW50IG9mIGNvbnRlbnRzXCI+XHJcbiAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICpuZ0NvbXBvbmVudE91dGxldD1cImNvbXBvbmVudDsgaW5qZWN0b3I6IGluamVjdG9yXCJcclxuICAgID48L25nLWNvbnRhaW5lcj5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdExvZ28+XHJcbiAgPGxweC1icmFuZC1sb2dvPjwvbHB4LWJyYW5kLWxvZ28+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -11,6 +11,7 @@ import { NavbarRoutesDirective } from './navbar-routes/navbar-routes.directive';
11
11
  import { CONTENT_AFTER_ROUTES, CONTENT_BEFORE_ROUTES, LPX_MENU_ITEMS, } from './navbar.token';
12
12
  import { ToObservableModule } from '../../pipes/to-observable/to-observable.module';
13
13
  import { LpxTranslateModule } from '../../pipes';
14
+ import { LpxVisibleDirective } from '../../directives/visible.directive';
14
15
  import * as i0 from "@angular/core";
15
16
  const exportedDeclarations = [
16
17
  NavbarComponent,
@@ -58,8 +59,8 @@ export class LpxNavbarModule {
58
59
  };
59
60
  }
60
61
  }
61
- LpxNavbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxNavbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
62
- LpxNavbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.1", ngImport: i0, type: LpxNavbarModule, declarations: [NavbarComponent,
62
+ LpxNavbarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxNavbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
63
+ LpxNavbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: LpxNavbarModule, declarations: [NavbarComponent,
63
64
  SubNavbarComponent,
64
65
  NavbarRoutesComponent,
65
66
  NavbarRoutesDirective], imports: [CommonModule,
@@ -68,18 +69,19 @@ LpxNavbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version
68
69
  LpxBrandLogoModule,
69
70
  LpxIconModule,
70
71
  ToObservableModule,
71
- LpxTranslateModule], exports: [NavbarComponent,
72
+ LpxTranslateModule,
73
+ LpxVisibleDirective], exports: [NavbarComponent,
72
74
  SubNavbarComponent,
73
75
  NavbarRoutesComponent,
74
76
  NavbarRoutesDirective] });
75
- LpxNavbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxNavbarModule, imports: [CommonModule,
77
+ LpxNavbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxNavbarModule, imports: [CommonModule,
76
78
  FormsModule,
77
79
  RouterModule,
78
80
  LpxBrandLogoModule,
79
81
  LpxIconModule,
80
82
  ToObservableModule,
81
83
  LpxTranslateModule] });
82
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImport: i0, type: LpxNavbarModule, decorators: [{
84
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LpxNavbarModule, decorators: [{
83
85
  type: NgModule,
84
86
  args: [{
85
87
  declarations: [...exportedDeclarations],
@@ -90,9 +92,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImpor
90
92
  LpxBrandLogoModule,
91
93
  LpxIconModule,
92
94
  ToObservableModule,
93
- LpxTranslateModule
95
+ LpxTranslateModule,
96
+ LpxVisibleDirective
94
97
  ],
95
98
  exports: [...exportedDeclarations],
96
99
  }]
97
100
  }] });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbGVwdG9uLXgtY29yZS9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUVoRixPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQixjQUFjLEdBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNwRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBRWpELE1BQU0sb0JBQW9CLEdBQUc7SUFDM0IsZUFBZTtJQUNmLGtCQUFrQjtJQUNsQixxQkFBcUI7SUFDckIscUJBQXFCO0NBQ3RCLENBQUM7QUFxQkYsTUFBTSxPQUFPLGVBQWU7SUFDMUIsTUFBTSxDQUFDLE9BQU8sQ0FDWixVQUE2QixFQUFFO1FBRS9CLE9BQU87WUFDTCxRQUFRLEVBQUUsZUFBZTtZQUN6QixTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGNBQWM7b0JBQ3ZCLFFBQVEsRUFBRSxPQUFPLEVBQUUsU0FBUyxJQUFJLEVBQUU7aUJBQ25DO2dCQUNEO29CQUNFLE9BQU8sRUFBRSxvQkFBb0I7b0JBQzdCLFFBQVEsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLElBQUksRUFBRTtvQkFDM0MsS0FBSyxFQUFFLElBQUk7aUJBQ1o7Z0JBQ0Q7b0JBQ0UsT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsUUFBUSxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxFQUFFO29CQUM1QyxLQUFLLEVBQUUsSUFBSTtpQkFDWjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUNiLFVBQWdELEVBQUU7UUFFbEQsT0FBTztZQUNMLFFBQVEsRUFBRSxlQUFlO1lBQ3pCLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsb0JBQW9CO29CQUM3QixRQUFRLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixJQUFJLEVBQUU7b0JBQzNDLEtBQUssRUFBRSxJQUFJO2lCQUNaO2dCQUNEO29CQUNFLE9BQU8sRUFBRSxxQkFBcUI7b0JBQzlCLFFBQVEsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLElBQUksRUFBRTtvQkFDNUMsS0FBSyxFQUFFLElBQUk7aUJBQ1o7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDOzs0R0EzQ1UsZUFBZTs2R0FBZixlQUFlLGlCQXpCMUIsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixxQkFBcUI7UUFDckIscUJBQXFCLGFBWW5CLFlBQVk7UUFDWixXQUFXO1FBQ1gsWUFBWTtRQUNaLGtCQUFrQjtRQUNsQixhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLGtCQUFrQixhQXJCcEIsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixxQkFBcUI7UUFDckIscUJBQXFCOzZHQXNCVixlQUFlLFlBVnhCLFlBQVk7UUFDWixXQUFXO1FBQ1gsWUFBWTtRQUNaLGtCQUFrQjtRQUNsQixhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLGtCQUFrQjsyRkFJVCxlQUFlO2tCQWIzQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLEdBQUcsb0JBQW9CLENBQUM7b0JBQ3ZDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsWUFBWTt3QkFDWixrQkFBa0I7d0JBQ2xCLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixrQkFBa0I7cUJBQ25CO29CQUNELE9BQU8sRUFBRSxDQUFDLEdBQUcsb0JBQW9CLENBQUM7aUJBQ25DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IExweEJyYW5kTG9nb01vZHVsZSB9IGZyb20gJy4uL2JyYW5kLWxvZ28vYnJhbmQtbG9nby5tb2R1bGUnO1xyXG5pbXBvcnQgeyBMcHhJY29uTW9kdWxlIH0gZnJvbSAnLi4vaWNvbi9pY29uLm1vZHVsZSc7XHJcbmltcG9ydCB7IE5hdmJhckNvbXBvbmVudCB9IGZyb20gJy4vbmF2YmFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFN1Yk5hdmJhckNvbXBvbmVudCB9IGZyb20gJy4vc3ViLW5hdmJhci9zdWItbmF2YmFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5hdmJhclJvdXRlc0NvbXBvbmVudCB9IGZyb20gJy4vbmF2YmFyLXJvdXRlcy9uYXZiYXItcm91dGVzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5hdmJhclJvdXRlc0RpcmVjdGl2ZSB9IGZyb20gJy4vbmF2YmFyLXJvdXRlcy9uYXZiYXItcm91dGVzLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IExweE5hdmJhckl0ZW0gfSBmcm9tICcuL21vZGVscyc7XHJcbmltcG9ydCB7XHJcbiAgQ09OVEVOVF9BRlRFUl9ST1VURVMsXHJcbiAgQ09OVEVOVF9CRUZPUkVfUk9VVEVTLFxyXG4gIExQWF9NRU5VX0lURU1TLFxyXG59IGZyb20gJy4vbmF2YmFyLnRva2VuJztcclxuaW1wb3J0IHsgVG9PYnNlcnZhYmxlTW9kdWxlIH0gZnJvbSAnLi4vLi4vcGlwZXMvdG8tb2JzZXJ2YWJsZS90by1vYnNlcnZhYmxlLm1vZHVsZSc7XHJcbmltcG9ydCB7IExweFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJy4uLy4uL3BpcGVzJztcclxuXHJcbmNvbnN0IGV4cG9ydGVkRGVjbGFyYXRpb25zID0gW1xyXG4gIE5hdmJhckNvbXBvbmVudCxcclxuICBTdWJOYXZiYXJDb21wb25lbnQsXHJcbiAgTmF2YmFyUm91dGVzQ29tcG9uZW50LFxyXG4gIE5hdmJhclJvdXRlc0RpcmVjdGl2ZSxcclxuXTtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTHB4TmF2YmFyU2V0dGluZ3Mge1xyXG4gIG1lbnVJdGVtcz86IExweE5hdmJhckl0ZW1bXTtcclxuICBjb250ZW50QWZ0ZXJSb3V0ZXM/OiBUeXBlPGFueT5bXTtcclxuICBjb250ZW50QmVmb3JlUm91dGVzPzogVHlwZTxhbnk+W107XHJcbn1cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbLi4uZXhwb3J0ZWREZWNsYXJhdGlvbnNdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUm91dGVyTW9kdWxlLFxyXG4gICAgTHB4QnJhbmRMb2dvTW9kdWxlLFxyXG4gICAgTHB4SWNvbk1vZHVsZSxcclxuICAgIFRvT2JzZXJ2YWJsZU1vZHVsZSxcclxuICAgIExweFRyYW5zbGF0ZU1vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogWy4uLmV4cG9ydGVkRGVjbGFyYXRpb25zXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIExweE5hdmJhck1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QoXHJcbiAgICBvcHRpb25zOiBMcHhOYXZiYXJTZXR0aW5ncyA9IHt9XHJcbiAgKTogTW9kdWxlV2l0aFByb3ZpZGVyczxMcHhOYXZiYXJNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBMcHhOYXZiYXJNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6IExQWF9NRU5VX0lURU1TLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnM/Lm1lbnVJdGVtcyB8fCBbXSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6IENPTlRFTlRfQUZURVJfUk9VVEVTLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnM/LmNvbnRlbnRBZnRlclJvdXRlcyB8fCBbXSxcclxuICAgICAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogQ09OVEVOVF9CRUZPUkVfUk9VVEVTLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnM/LmNvbnRlbnRCZWZvcmVSb3V0ZXMgfHwgW10sXHJcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBmb3JDaGlsZChcclxuICAgIG9wdGlvbnM6IE9taXQ8THB4TmF2YmFyU2V0dGluZ3MsICdtZW51SXRlbXMnPiA9IHt9XHJcbiAgKTogTW9kdWxlV2l0aFByb3ZpZGVyczxMcHhOYXZiYXJNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBMcHhOYXZiYXJNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6IENPTlRFTlRfQUZURVJfUk9VVEVTLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnM/LmNvbnRlbnRBZnRlclJvdXRlcyB8fCBbXSxcclxuICAgICAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogQ09OVEVOVF9CRUZPUkVfUk9VVEVTLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnM/LmNvbnRlbnRCZWZvcmVSb3V0ZXMgfHwgW10sXHJcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbGVwdG9uLXgtY29yZS9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUVoRixPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQixjQUFjLEdBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNwRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDakQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7O0FBRXpFLE1BQU0sb0JBQW9CLEdBQUc7SUFDM0IsZUFBZTtJQUNmLGtCQUFrQjtJQUNsQixxQkFBcUI7SUFDckIscUJBQXFCO0NBQ3RCLENBQUM7QUFzQkYsTUFBTSxPQUFPLGVBQWU7SUFDMUIsTUFBTSxDQUFDLE9BQU8sQ0FDWixVQUE2QixFQUFFO1FBRS9CLE9BQU87WUFDTCxRQUFRLEVBQUUsZUFBZTtZQUN6QixTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGNBQWM7b0JBQ3ZCLFFBQVEsRUFBRSxPQUFPLEVBQUUsU0FBUyxJQUFJLEVBQUU7aUJBQ25DO2dCQUNEO29CQUNFLE9BQU8sRUFBRSxvQkFBb0I7b0JBQzdCLFFBQVEsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLElBQUksRUFBRTtvQkFDM0MsS0FBSyxFQUFFLElBQUk7aUJBQ1o7Z0JBQ0Q7b0JBQ0UsT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsUUFBUSxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxFQUFFO29CQUM1QyxLQUFLLEVBQUUsSUFBSTtpQkFDWjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUNiLFVBQWdELEVBQUU7UUFFbEQsT0FBTztZQUNMLFFBQVEsRUFBRSxlQUFlO1lBQ3pCLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsb0JBQW9CO29CQUM3QixRQUFRLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixJQUFJLEVBQUU7b0JBQzNDLEtBQUssRUFBRSxJQUFJO2lCQUNaO2dCQUNEO29CQUNFLE9BQU8sRUFBRSxxQkFBcUI7b0JBQzlCLFFBQVEsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLElBQUksRUFBRTtvQkFDNUMsS0FBSyxFQUFFLElBQUk7aUJBQ1o7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDOzs0R0EzQ1UsZUFBZTs2R0FBZixlQUFlLGlCQTFCMUIsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixxQkFBcUI7UUFDckIscUJBQXFCLGFBWW5CLFlBQVk7UUFDWixXQUFXO1FBQ1gsWUFBWTtRQUNaLGtCQUFrQjtRQUNsQixhQUFhO1FBQ2Isa0JBQWtCO1FBQ2xCLGtCQUFrQjtRQUNsQixtQkFBbUIsYUF0QnJCLGVBQWU7UUFDZixrQkFBa0I7UUFDbEIscUJBQXFCO1FBQ3JCLHFCQUFxQjs2R0F1QlYsZUFBZSxZQVh4QixZQUFZO1FBQ1osV0FBVztRQUNYLFlBQVk7UUFDWixrQkFBa0I7UUFDbEIsYUFBYTtRQUNiLGtCQUFrQjtRQUNsQixrQkFBa0I7MkZBS1QsZUFBZTtrQkFkM0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxHQUFHLG9CQUFvQixDQUFDO29CQUN2QyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osa0JBQWtCO3dCQUNsQixhQUFhO3dCQUNiLGtCQUFrQjt3QkFDbEIsa0JBQWtCO3dCQUNsQixtQkFBbUI7cUJBQ3BCO29CQUNELE9BQU8sRUFBRSxDQUFDLEdBQUcsb0JBQW9CLENBQUM7aUJBQ25DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IExweEJyYW5kTG9nb01vZHVsZSB9IGZyb20gJy4uL2JyYW5kLWxvZ28vYnJhbmQtbG9nby5tb2R1bGUnO1xyXG5pbXBvcnQgeyBMcHhJY29uTW9kdWxlIH0gZnJvbSAnLi4vaWNvbi9pY29uLm1vZHVsZSc7XHJcbmltcG9ydCB7IE5hdmJhckNvbXBvbmVudCB9IGZyb20gJy4vbmF2YmFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFN1Yk5hdmJhckNvbXBvbmVudCB9IGZyb20gJy4vc3ViLW5hdmJhci9zdWItbmF2YmFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5hdmJhclJvdXRlc0NvbXBvbmVudCB9IGZyb20gJy4vbmF2YmFyLXJvdXRlcy9uYXZiYXItcm91dGVzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5hdmJhclJvdXRlc0RpcmVjdGl2ZSB9IGZyb20gJy4vbmF2YmFyLXJvdXRlcy9uYXZiYXItcm91dGVzLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IExweE5hdmJhckl0ZW0gfSBmcm9tICcuL21vZGVscyc7XHJcbmltcG9ydCB7XHJcbiAgQ09OVEVOVF9BRlRFUl9ST1VURVMsXHJcbiAgQ09OVEVOVF9CRUZPUkVfUk9VVEVTLFxyXG4gIExQWF9NRU5VX0lURU1TLFxyXG59IGZyb20gJy4vbmF2YmFyLnRva2VuJztcclxuaW1wb3J0IHsgVG9PYnNlcnZhYmxlTW9kdWxlIH0gZnJvbSAnLi4vLi4vcGlwZXMvdG8tb2JzZXJ2YWJsZS90by1vYnNlcnZhYmxlLm1vZHVsZSc7XHJcbmltcG9ydCB7IExweFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJy4uLy4uL3BpcGVzJztcclxuaW1wb3J0IHsgTHB4VmlzaWJsZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvdmlzaWJsZS5kaXJlY3RpdmUnO1xyXG5cclxuY29uc3QgZXhwb3J0ZWREZWNsYXJhdGlvbnMgPSBbXHJcbiAgTmF2YmFyQ29tcG9uZW50LFxyXG4gIFN1Yk5hdmJhckNvbXBvbmVudCxcclxuICBOYXZiYXJSb3V0ZXNDb21wb25lbnQsXHJcbiAgTmF2YmFyUm91dGVzRGlyZWN0aXZlLFxyXG5dO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBMcHhOYXZiYXJTZXR0aW5ncyB7XHJcbiAgbWVudUl0ZW1zPzogTHB4TmF2YmFySXRlbVtdO1xyXG4gIGNvbnRlbnRBZnRlclJvdXRlcz86IFR5cGU8YW55PltdO1xyXG4gIGNvbnRlbnRCZWZvcmVSb3V0ZXM/OiBUeXBlPGFueT5bXTtcclxufVxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFsuLi5leHBvcnRlZERlY2xhcmF0aW9uc10sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSb3V0ZXJNb2R1bGUsXHJcbiAgICBMcHhCcmFuZExvZ29Nb2R1bGUsXHJcbiAgICBMcHhJY29uTW9kdWxlLFxyXG4gICAgVG9PYnNlcnZhYmxlTW9kdWxlLFxyXG4gICAgTHB4VHJhbnNsYXRlTW9kdWxlLFxyXG4gICAgTHB4VmlzaWJsZURpcmVjdGl2ZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogWy4uLmV4cG9ydGVkRGVjbGFyYXRpb25zXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIExweE5hdmJhck1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QoXHJcbiAgICBvcHRpb25zOiBMcHhOYXZiYXJTZXR0aW5ncyA9IHt9XHJcbiAgKTogTW9kdWxlV2l0aFByb3ZpZGVyczxMcHhOYXZiYXJNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBMcHhOYXZiYXJNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6IExQWF9NRU5VX0lURU1TLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnM/Lm1lbnVJdGVtcyB8fCBbXSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6IENPTlRFTlRfQUZURVJfUk9VVEVTLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnM/LmNvbnRlbnRBZnRlclJvdXRlcyB8fCBbXSxcclxuICAgICAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogQ09OVEVOVF9CRUZPUkVfUk9VVEVTLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnM/LmNvbnRlbnRCZWZvcmVSb3V0ZXMgfHwgW10sXHJcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBmb3JDaGlsZChcclxuICAgIG9wdGlvbnM6IE9taXQ8THB4TmF2YmFyU2V0dGluZ3MsICdtZW51SXRlbXMnPiA9IHt9XHJcbiAgKTogTW9kdWxlV2l0aFByb3ZpZGVyczxMcHhOYXZiYXJNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBMcHhOYXZiYXJNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6IENPTlRFTlRfQUZURVJfUk9VVEVTLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnM/LmNvbnRlbnRBZnRlclJvdXRlcyB8fCBbXSxcclxuICAgICAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogQ09OVEVOVF9CRUZPUkVfUk9VVEVTLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnM/LmNvbnRlbnRCZWZvcmVSb3V0ZXMgfHwgW10sXHJcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19