@elderbyte/ngx-starter 15.0.2-mdc → 15.0.3-mdc

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.
@@ -109,10 +109,10 @@ export class ElderNavLinkComponent {
109
109
  }
110
110
  }
111
111
  ElderNavLinkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ElderNavLinkComponent, deps: [{ token: i1.ElderNavListComponent }], target: i0.ɵɵFactoryTarget.Component });
112
- ElderNavLinkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ElderNavLinkComponent, selector: "elder-nav-link", inputs: { title: "title", queryParamsHandling: "queryParamsHandling", queryParams: "queryParams", icon: "icon", fontIcon: "fontIcon", fontSet: "fontSet", svgIcon: "svgIcon", routerLink: "routerLink", href: "href", target: "target", value: "value" }, outputs: { clicked: "clicked" }, host: { properties: { "attr.tabindex": "this.tabIndex" } }, viewQueries: [{ propertyName: "routerLinkActive", first: true, predicate: RouterLinkActive, descendants: true }], ngImport: i0, template: "<!-- Router Link -->\n<ng-container *ngIf=\"model$ | async as model\">\n <a *ngIf=\"model.routerLink as routerLink\"\n matRipple\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [routerLink]=\"routerLink\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [queryParams]=\"queryParams\"\n routerLinkActive=\"dummy\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Href Link -->\n <a matRipple *ngIf=\"model.href as href\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [href]=\"href\"\n [target]=\"model.hrefTarget\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Simple Button -->\n <a matRipple *ngIf=\"!model.href && !model.routerLink\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n (click)=\"itemClick($event)\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n</ng-container>\n\n\n<ng-template #defaultLinkTemplate>\n <div class=\"layout-row place-start-center gap-md noselect\">\n <mat-icon *ngIf=\"!(!icon && !title)\"\n [fontIcon]=\"fontIcon\"\n [fontSet]=\"fontSet\">\n {{icon}}\n </mat-icon>\n <mat-icon *ngIf=\"svgIcon\"\n [svgIcon]=\"svgIcon\"\n ></mat-icon>\n <span *ngIf=\"title\" class=\"noselect\">\n {{ title | translate}}\n </span>\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".nav-link{text-decoration:none;padding-left:16px;padding-right:16px;min-height:48px;border-radius:4px;overflow:hidden;cursor:pointer}.nav-link .mat-icon{height:24px;width:24px;font-size:24px;padding:4px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
112
+ ElderNavLinkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ElderNavLinkComponent, selector: "elder-nav-link", inputs: { title: "title", queryParamsHandling: "queryParamsHandling", queryParams: "queryParams", icon: "icon", fontIcon: "fontIcon", fontSet: "fontSet", svgIcon: "svgIcon", routerLink: "routerLink", href: "href", target: "target", value: "value" }, outputs: { clicked: "clicked" }, host: { properties: { "attr.tabindex": "this.tabIndex" } }, viewQueries: [{ propertyName: "routerLinkActive", first: true, predicate: RouterLinkActive, descendants: true }], ngImport: i0, template: "<!-- Router Link -->\n<ng-container *ngIf=\"model$ | async as model\">\n <a *ngIf=\"model.routerLink as routerLink\"\n matRipple\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [routerLink]=\"routerLink\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [queryParams]=\"queryParams\"\n routerLinkActive=\"dummy\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Href Link -->\n <a matRipple *ngIf=\"model.href as href\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [href]=\"href\"\n [target]=\"model.hrefTarget\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Simple Button -->\n <a matRipple *ngIf=\"!model.href && !model.routerLink\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n (click)=\"itemClick($event)\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n</ng-container>\n\n\n<ng-template #defaultLinkTemplate>\n <div class=\"layout-row place-start-center gap-md noselect\">\n <mat-icon *ngIf=\"!(!icon && !title)\"\n [fontIcon]=\"fontIcon\"\n [fontSet]=\"fontSet\">\n {{icon}}\n </mat-icon>\n <mat-icon *ngIf=\"svgIcon\"\n [svgIcon]=\"svgIcon\"\n ></mat-icon>\n <span *ngIf=\"title\" class=\"noselect\">\n {{ title | translate}}\n </span>\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".nav-link{text-decoration:none;padding-left:16px;padding-right:16px;min-height:48px;border-radius:4px;overflow:hidden;cursor:pointer}.nav-link .mat-icon{height:24px;width:24px;font-size:24px;padding:4px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
113
113
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ElderNavLinkComponent, decorators: [{
114
114
  type: Component,
115
- args: [{ selector: 'elder-nav-link', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!-- Router Link -->\n<ng-container *ngIf=\"model$ | async as model\">\n <a *ngIf=\"model.routerLink as routerLink\"\n matRipple\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [routerLink]=\"routerLink\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [queryParams]=\"queryParams\"\n routerLinkActive=\"dummy\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Href Link -->\n <a matRipple *ngIf=\"model.href as href\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [href]=\"href\"\n [target]=\"model.hrefTarget\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Simple Button -->\n <a matRipple *ngIf=\"!model.href && !model.routerLink\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n (click)=\"itemClick($event)\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n</ng-container>\n\n\n<ng-template #defaultLinkTemplate>\n <div class=\"layout-row place-start-center gap-md noselect\">\n <mat-icon *ngIf=\"!(!icon && !title)\"\n [fontIcon]=\"fontIcon\"\n [fontSet]=\"fontSet\">\n {{icon}}\n </mat-icon>\n <mat-icon *ngIf=\"svgIcon\"\n [svgIcon]=\"svgIcon\"\n ></mat-icon>\n <span *ngIf=\"title\" class=\"noselect\">\n {{ title | translate}}\n </span>\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".nav-link{text-decoration:none;padding-left:16px;padding-right:16px;min-height:48px;border-radius:4px;overflow:hidden;cursor:pointer}.nav-link .mat-icon{height:24px;width:24px;font-size:24px;padding:4px}\n"] }]
115
+ args: [{ selector: 'elder-nav-link', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!-- Router Link -->\n<ng-container *ngIf=\"model$ | async as model\">\n <a *ngIf=\"model.routerLink as routerLink\"\n matRipple\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [routerLink]=\"routerLink\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [queryParams]=\"queryParams\"\n routerLinkActive=\"dummy\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Href Link -->\n <a matRipple *ngIf=\"model.href as href\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [href]=\"href\"\n [target]=\"model.hrefTarget\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Simple Button -->\n <a matRipple *ngIf=\"!model.href && !model.routerLink\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n (click)=\"itemClick($event)\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n</ng-container>\n\n\n<ng-template #defaultLinkTemplate>\n <div class=\"layout-row place-start-center gap-md noselect\">\n <mat-icon *ngIf=\"!(!icon && !title)\"\n [fontIcon]=\"fontIcon\"\n [fontSet]=\"fontSet\">\n {{icon}}\n </mat-icon>\n <mat-icon *ngIf=\"svgIcon\"\n [svgIcon]=\"svgIcon\"\n ></mat-icon>\n <span *ngIf=\"title\" class=\"noselect\">\n {{ title | translate}}\n </span>\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".nav-link{text-decoration:none;padding-left:16px;padding-right:16px;min-height:48px;border-radius:4px;overflow:hidden;cursor:pointer}.nav-link .mat-icon{height:24px;width:24px;font-size:24px;padding:4px}\n"] }]
116
116
  }], ctorParameters: function () { return [{ type: i1.ElderNavListComponent }]; }, propDecorators: { tabIndex: [{
117
117
  type: HostBinding,
118
118
  args: ['attr.tabindex']
@@ -144,4 +144,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
144
144
  }], value: [{
145
145
  type: Input
146
146
  }] } });
147
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItbmF2LWxpbmsuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9uYXZpZ2F0aW9uL25hdi9uYXYtbGluay9lbGRlci1uYXYtbGluay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL25hdmlnYXRpb24vbmF2L25hdi1saW5rL2VsZGVyLW5hdi1saW5rLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMzSCxPQUFPLEVBQUMsZUFBZSxFQUFjLE9BQU8sRUFBRSxTQUFTLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckUsT0FBTyxFQUFDLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBWSxNQUFNLGdCQUFnQixDQUFDO0FBQy9GLE9BQU8sRUFBc0IsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7QUFHdEUsTUFBTSxZQUFZO0lBQ2hCLFlBQ2tCLFVBQWtCLEVBQ2xCLElBQVksRUFDWixVQUFrQjtRQUZsQixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBQ2xCLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixlQUFVLEdBQVYsVUFBVSxDQUFRO0lBRXBDLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxjQUFjO0lBQ3pCLFlBQ2tCLEtBQWlCLEVBQ2pCLEtBQVU7UUFEVixVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLFVBQUssR0FBTCxLQUFL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QUs7Z0JBSUMsT0FBTztzQkFEYixLQUFLO2dCQUlDLE9BQU87c0JBRGIsS0FBSztnQkFJVSxPQUFPO3NCQUR0QixNQUFNO2dCQXNFSCxnQkFBZ0I7c0JBRG5CLFNBQVM7dUJBQUMsZ0JBQWdCLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDO2dCQU1qQyxVQUFVO3NCQURwQixLQUFLO2dCQU1LLElBQUk7c0JBRGQsS0FBSztnQkFNSyxNQUFNO3NCQURoQixLQUFLO2dCQU1LLEtBQUs7c0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QsIHN3aXRjaE1hcH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2NvbWJpbmVMYXRlc3RXaXRoLCBmaWx0ZXIsIG1hcCwgc3RhcnRXaXRoLCB0YWtlVW50aWwsIHRha2VXaGlsZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtRdWVyeVBhcmFtc0hhbmRsaW5nLCBSb3V0ZXJMaW5rQWN0aXZlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtFbGRlck5hdkxpc3RDb21wb25lbnR9IGZyb20gJy4uL25hdi1saXN0L2VsZGVyLW5hdi1saXN0LmNvbXBvbmVudCc7XG5cbmNsYXNzIE5hdkl0ZW1Nb2RlbCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSByb3V0ZXJMaW5rOiBzdHJpbmcsXG4gICAgcHVibGljIHJlYWRvbmx5IGhyZWY6IHN0cmluZyxcbiAgICBwdWJsaWMgcmVhZG9ubHkgaHJlZlRhcmdldDogc3RyaW5nLFxuICApIHtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgTmF2SXRlbUNsaWNrZWQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgZXZlbnQ6IE1vdXNlRXZlbnQsXG4gICAgcHVibGljIHJlYWRvbmx5IHZhbHVlOiBhbnlcbiAgKSB7XG4gIH1cbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItbmF2LWxpbmsnLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItbmF2LWxpbmsuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1uYXYtbGluay5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBFbGRlck5hdkxpbmtDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnRhYmluZGV4JykgdGFiSW5kZXggPSAtMTtcblxuICByZWFkb25seSBtb2RlbCQ6IE9ic2VydmFibGU8TmF2SXRlbU1vZGVsPjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdGl0bGU6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcXVlcnlQYXJhbXNIYW5kbGluZzogUXVlcnlQYXJhbXNIYW5kbGluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcXVlcnlQYXJhbXM6IHtcbiAgICBbazogc3RyaW5nXTogYW55O1xuICB9ID0ge307XG5cbiAgQElucHV0KClcbiAgcHVibGljIGljb246IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZm9udEljb246IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZm9udFNldDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzdmdJY29uOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBjbGlja2VkID0gbmV3IFN1YmplY3Q8TmF2SXRlbUNsaWNrZWQ+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcm91dGVyTGluayQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9ocmVmJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3RhcmdldCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJ19ibGFuaycpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXJMaW5rQWN0aXZlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Um91dGVyTGlua0FjdGl2ZT4odW5kZWZpbmVkKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSBfdmFsdWU6IGFueTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5hdkxpc3Q6IEVsZGVyTmF2TGlzdENvbXBvbmVudFxuICApIHtcbiAgICB0aGlzLm1vZGVsJCA9IHRoaXMuX3JvdXRlckxpbmskLnBpcGUoXG4gICAgICBjb21iaW5lTGF0ZXN0V2l0aCh0aGlzLl9ocmVmJCksXG4gICAgICBjb21iaW5lTGF0ZXN0V2l0aCh0aGlzLl90YXJnZXQkKSxcbiAgICAgIG1hcCgoW1tyb3V0ZXJMaW5rLCBocmVmXSwgdGFyZ2V0XSkgPT4gbmV3IE5hdkl0ZW1Nb2RlbChyb3V0ZXJMaW5rLCBocmVmLCB0YXJnZXQpKVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fcm91dGVyTGlua0FjdGl2ZSQucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgIGZpbHRlcihybGEgPT4gISFybGEpLFxuICAgICAgc3dpdGNoTWFwKHJsYSA9PiB7XG4gICAgICAgIHJldHVybiBybGEuaXNBY3RpdmVDaGFuZ2UucGlwZShcbiAgICAgICAgICBzdGFydFdpdGgocmxhLmlzQWN0aXZlKVxuICAgICAgICApO1xuICAgICAgfSlcbiAgICApLnN1YnNjcmliZShhY3RpdmUgPT4gdGhpcy5fYWN0aXZlJC5uZXh0KGFjdGl2ZSkpO1xuXG4gICAgdGhpcy5uYXZMaXN0LnZhbHVlQ2hhbmdlLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICBtYXAodmFsdWUgPT4gdGhpcy5pc0N1cnJlbnRWYWx1ZUFjdGl2ZSksXG4gICAgKS5zdWJzY3JpYmUoYWN0aXZlID0+IHRoaXMuX2FjdGl2ZSQubmV4dChhY3RpdmUpKTtcblxuICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICB0aGlzLl9hY3RpdmUkLm5leHQodGhpcy5pc0N1cnJlbnRWYWx1ZUFjdGl2ZSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBnZXQgYWN0aXZlJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZlJDtcbiAgfVxuXG4gIEBWaWV3Q2hpbGQoUm91dGVyTGlua0FjdGl2ZSwge3N0YXRpYzogZmFsc2V9KVxuICBzZXQgcm91dGVyTGlua0FjdGl2ZShybGE6IFJvdXRlckxpbmtBY3RpdmUpIHtcbiAgICB0aGlzLl9yb3V0ZXJMaW5rQWN0aXZlJC5uZXh0KHJsYSk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHJvdXRlckxpbmsodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX3JvdXRlckxpbmskLm5leHQodmFsdWUpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBocmVmKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9ocmVmJC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdGFyZ2V0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl90YXJnZXQkLm5leHQodmFsdWUpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCB2YWx1ZSh2OiBhbnkpIHtcbiAgICB0aGlzLl92YWx1ZSA9IHY7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbHVlKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGl0ZW1DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuY2xpY2tlZC5uZXh0KG5ldyBOYXZJdGVtQ2xpY2tlZChldmVudCwgdGhpcy52YWx1ZSkpO1xuICAgIHRoaXMubmF2TGlzdC52YWx1ZSA9IHRoaXMudmFsdWU7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGdldCBpc0N1cnJlbnRWYWx1ZUFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5uYXZMaXN0LmlzQWN0aXZlKHRoaXMudmFsdWUpO1xuICB9XG59XG4iLCI8IS0tIFJvdXRlciBMaW5rIC0tPlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vZGVsJCB8IGFzeW5jIGFzIG1vZGVsXCI+XG4gIDxhICpuZ0lmPVwibW9kZWwucm91dGVyTGluayBhcyByb3V0ZXJMaW5rXCJcbiAgICAgbWF0UmlwcGxlXG4gICAgIGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgbmF2LWxpbmtcbiAgICAgICAgIG1kYy1saXN0LWl0ZW0gbWRjLWxpc3QtaXRlbS0td2l0aC1vbmUtbGluZVwiXG4gICAgIFtyb3V0ZXJMaW5rXT1cInJvdXRlckxpbmtcIlxuICAgICBbcXVlcnlQYXJhbXNIYW5kbGluZ109XCJxdWVyeVBhcmFtc0hhbmRsaW5nXCJcbiAgICAgW3F1ZXJ5UGFyYW1zXT1cInF1ZXJ5UGFyYW1zXCJcbiAgICAgcm91dGVyTGlua0FjdGl2ZT1cImR1bW15XCJcbiAgICAgW2NsYXNzLm5hdi1saW5rLWFjdGl2ZV09XCJhY3RpdmUkIHwgYXN5bmNcIlxuICAgICBbY2xhc3MubmF2LWxpbmstaW5hY3RpdmVdPVwiKGFjdGl2ZSQgfCBhc3luYykgPT09IGZhbHNlXCJcbiAgPlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZGVmYXVsdExpbmtUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICA8L2E+XG5cbiAgPCEtLSBIcmVmIExpbmsgLS0+XG4gIDxhIG1hdFJpcHBsZSAqbmdJZj1cIm1vZGVsLmhyZWYgYXMgaHJlZlwiXG4gICAgIGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgbmF2LWxpbmtcbiAgICAgICAgICAgICAgbWRjLWxpc3QtaXRlbSBtZGMtbGlzdC1pdGVtLS13aXRoLW9uZS1saW5lXCJcbiAgICAgW2hyZWZdPVwiaHJlZlwiXG4gICAgIFt0YXJnZXRdPVwibW9kZWwuaHJlZlRhcmdldFwiXG4gID5cbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImRlZmF1bHRMaW5rVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9hPlxuXG4gIDwhLS0gU2ltcGxlIEJ1dHRvbiAtLT5cbiAgPGEgbWF0UmlwcGxlICpuZ0lmPVwiIW1vZGVsLmhyZWYgJiYgIW1vZGVsLnJvdXRlckxpbmtcIlxuICAgICBjbGFzcz1cImxheW91dC1yb3cgcGxhY2Utc3RhcnQtY2VudGVyIG5hdi1saW5rXG4gICAgICAgICAgICBtZGMtbGlzdC1pdGVtIG1kYy1saXN0LWl0ZW0tLXdpdGgtb25lLWxpbmVcIlxuICAgICAoY2xpY2spPVwiaXRlbUNsaWNrKCRldmVudClcIlxuICAgICBbY2xhc3MubmF2LWxpbmstYWN0aXZlXT1cImFjdGl2ZSQgfCBhc3luY1wiXG4gICAgIFtjbGFzcy5uYXYtbGluay1pbmFjdGl2ZV09XCIoYWN0aXZlJCB8IGFzeW5jKSA9PT0gZmFsc2VcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJkZWZhdWx0TGlua1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvYT5cbjwvbmctY29udGFpbmVyPlxuXG5cbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdExpbmtUZW1wbGF0ZT5cbiAgPGRpdiBjbGFzcz1cImxheW91dC1yb3cgcGxhY2Utc3RhcnQtY2VudGVyIGdhcC1tZCBub3NlbGVjdFwiPlxuICAgIDxtYXQtaWNvbiAqbmdJZj1cIiEoIWljb24gJiYgIXRpdGxlKVwiXG4gICAgICAgICAgICAgIFtmb250SWNvbl09XCJmb250SWNvblwiXG4gICAgICAgICAgICAgIFtmb250U2V0XT1cImZvbnRTZXRcIj5cbiAgICAgIHt7aWNvbn19XG4gICAgPC9tYXQtaWNvbj5cbiAgICA8bWF0LWljb24gKm5nSWY9XCJzdmdJY29uXCJcbiAgICAgICAgICAgICAgW3N2Z0ljb25dPVwic3ZnSWNvblwiXG4gICAgPjwvbWF0LWljb24+XG4gICAgPHNwYW4gKm5nSWY9XCJ0aXRsZVwiIGNsYXNzPVwibm9zZWxlY3RcIj5cbiAgICAgIHt7IHRpdGxlIHwgdHJhbnNsYXRlfX1cbiAgICA8L3NwYW4+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
147
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItbmF2LWxpbmsuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9uYXZpZ2F0aW9uL25hdi9uYXYtbGluay9lbGRlci1uYXYtbGluay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL25hdmlnYXRpb24vbmF2L25hdi1saW5rL2VsZGVyLW5hdi1saW5rLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMzSCxPQUFPLEVBQUMsZUFBZSxFQUFjLE9BQU8sRUFBRSxTQUFTLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckUsT0FBTyxFQUFDLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBWSxNQUFNLGdCQUFnQixDQUFDO0FBQy9GLE9BQU8sRUFBc0IsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7QUFHdEUsTUFBTSxZQUFZO0lBQ2hCLFlBQ2tCLFVBQWtCLEVBQ2xCLElBQVksRUFDWixVQUFrQjtRQUZsQixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBQ2xCLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWixlQUFVLEdBQVYsVUFBVSxDQUFRO0lBRXBDLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxjQUFjO0lBQ3pCLFlBQ2tCLEtBQWlCLEVBQ2pCLEtBQVU7UUFEVixVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLFVBQUssR0FBTCxLQUFL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QUs7Z0JBSUMsT0FBTztzQkFEYixLQUFLO2dCQUlDLE9BQU87c0JBRGIsS0FBSztnQkFJVSxPQUFPO3NCQUR0QixNQUFNO2dCQXNFSCxnQkFBZ0I7c0JBRG5CLFNBQVM7dUJBQUMsZ0JBQWdCLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDO2dCQU1qQyxVQUFVO3NCQURwQixLQUFLO2dCQU1LLElBQUk7c0JBRGQsS0FBSztnQkFNSyxNQUFNO3NCQURoQixLQUFLO2dCQU1LLEtBQUs7c0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QsIHN3aXRjaE1hcH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2NvbWJpbmVMYXRlc3RXaXRoLCBmaWx0ZXIsIG1hcCwgc3RhcnRXaXRoLCB0YWtlVW50aWwsIHRha2VXaGlsZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtRdWVyeVBhcmFtc0hhbmRsaW5nLCBSb3V0ZXJMaW5rQWN0aXZlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtFbGRlck5hdkxpc3RDb21wb25lbnR9IGZyb20gJy4uL25hdi1saXN0L2VsZGVyLW5hdi1saXN0LmNvbXBvbmVudCc7XG5cbmNsYXNzIE5hdkl0ZW1Nb2RlbCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSByb3V0ZXJMaW5rOiBzdHJpbmcsXG4gICAgcHVibGljIHJlYWRvbmx5IGhyZWY6IHN0cmluZyxcbiAgICBwdWJsaWMgcmVhZG9ubHkgaHJlZlRhcmdldDogc3RyaW5nLFxuICApIHtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgTmF2SXRlbUNsaWNrZWQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgZXZlbnQ6IE1vdXNlRXZlbnQsXG4gICAgcHVibGljIHJlYWRvbmx5IHZhbHVlOiBhbnlcbiAgKSB7XG4gIH1cbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItbmF2LWxpbmsnLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItbmF2LWxpbmsuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1uYXYtbGluay5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBFbGRlck5hdkxpbmtDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnRhYmluZGV4JykgdGFiSW5kZXggPSAtMTtcblxuICByZWFkb25seSBtb2RlbCQ6IE9ic2VydmFibGU8TmF2SXRlbU1vZGVsPjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdGl0bGU6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcXVlcnlQYXJhbXNIYW5kbGluZzogUXVlcnlQYXJhbXNIYW5kbGluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcXVlcnlQYXJhbXM6IHtcbiAgICBbazogc3RyaW5nXTogYW55O1xuICB9ID0ge307XG5cbiAgQElucHV0KClcbiAgcHVibGljIGljb246IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZm9udEljb246IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZm9udFNldDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzdmdJY29uOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBjbGlja2VkID0gbmV3IFN1YmplY3Q8TmF2SXRlbUNsaWNrZWQ+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcm91dGVyTGluayQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9ocmVmJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3RhcmdldCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJ19ibGFuaycpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9yb3V0ZXJMaW5rQWN0aXZlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Um91dGVyTGlua0FjdGl2ZT4odW5kZWZpbmVkKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSBfdmFsdWU6IGFueTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5hdkxpc3Q6IEVsZGVyTmF2TGlzdENvbXBvbmVudFxuICApIHtcbiAgICB0aGlzLm1vZGVsJCA9IHRoaXMuX3JvdXRlckxpbmskLnBpcGUoXG4gICAgICBjb21iaW5lTGF0ZXN0V2l0aCh0aGlzLl9ocmVmJCksXG4gICAgICBjb21iaW5lTGF0ZXN0V2l0aCh0aGlzLl90YXJnZXQkKSxcbiAgICAgIG1hcCgoW1tyb3V0ZXJMaW5rLCBocmVmXSwgdGFyZ2V0XSkgPT4gbmV3IE5hdkl0ZW1Nb2RlbChyb3V0ZXJMaW5rLCBocmVmLCB0YXJnZXQpKVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fcm91dGVyTGlua0FjdGl2ZSQucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgIGZpbHRlcihybGEgPT4gISFybGEpLFxuICAgICAgc3dpdGNoTWFwKHJsYSA9PiB7XG4gICAgICAgIHJldHVybiBybGEuaXNBY3RpdmVDaGFuZ2UucGlwZShcbiAgICAgICAgICBzdGFydFdpdGgocmxhLmlzQWN0aXZlKVxuICAgICAgICApO1xuICAgICAgfSlcbiAgICApLnN1YnNjcmliZShhY3RpdmUgPT4gdGhpcy5fYWN0aXZlJC5uZXh0KGFjdGl2ZSkpO1xuXG4gICAgdGhpcy5uYXZMaXN0LnZhbHVlQ2hhbmdlLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICBtYXAodmFsdWUgPT4gdGhpcy5pc0N1cnJlbnRWYWx1ZUFjdGl2ZSksXG4gICAgKS5zdWJzY3JpYmUoYWN0aXZlID0+IHRoaXMuX2FjdGl2ZSQubmV4dChhY3RpdmUpKTtcblxuICAgIGlmICh0aGlzLnZhbHVlKSB7XG4gICAgICB0aGlzLl9hY3RpdmUkLm5leHQodGhpcy5pc0N1cnJlbnRWYWx1ZUFjdGl2ZSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBnZXQgYWN0aXZlJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZlJDtcbiAgfVxuXG4gIEBWaWV3Q2hpbGQoUm91dGVyTGlua0FjdGl2ZSwge3N0YXRpYzogZmFsc2V9KVxuICBzZXQgcm91dGVyTGlua0FjdGl2ZShybGE6IFJvdXRlckxpbmtBY3RpdmUpIHtcbiAgICB0aGlzLl9yb3V0ZXJMaW5rQWN0aXZlJC5uZXh0KHJsYSk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHJvdXRlckxpbmsodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX3JvdXRlckxpbmskLm5leHQodmFsdWUpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBocmVmKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9ocmVmJC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdGFyZ2V0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl90YXJnZXQkLm5leHQodmFsdWUpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCB2YWx1ZSh2OiBhbnkpIHtcbiAgICB0aGlzLl92YWx1ZSA9IHY7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbHVlKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGl0ZW1DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuY2xpY2tlZC5uZXh0KG5ldyBOYXZJdGVtQ2xpY2tlZChldmVudCwgdGhpcy52YWx1ZSkpO1xuICAgIHRoaXMubmF2TGlzdC52YWx1ZSA9IHRoaXMudmFsdWU7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGdldCBpc0N1cnJlbnRWYWx1ZUFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5uYXZMaXN0LmlzQWN0aXZlKHRoaXMudmFsdWUpO1xuICB9XG59XG4iLCI8IS0tIFJvdXRlciBMaW5rIC0tPlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vZGVsJCB8IGFzeW5jIGFzIG1vZGVsXCI+XG4gIDxhICpuZ0lmPVwibW9kZWwucm91dGVyTGluayBhcyByb3V0ZXJMaW5rXCJcbiAgICAgbWF0UmlwcGxlXG4gICAgIGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgbmF2LWxpbmtcbiAgICAgICAgIG1kYy1saXN0LWl0ZW0gbWRjLWxpc3QtaXRlbS0td2l0aC1vbmUtbGluZVwiXG4gICAgIFtyb3V0ZXJMaW5rXT1cInJvdXRlckxpbmtcIlxuICAgICBbcXVlcnlQYXJhbXNIYW5kbGluZ109XCJxdWVyeVBhcmFtc0hhbmRsaW5nXCJcbiAgICAgW3F1ZXJ5UGFyYW1zXT1cInF1ZXJ5UGFyYW1zXCJcbiAgICAgcm91dGVyTGlua0FjdGl2ZT1cImR1bW15XCJcbiAgICAgW2NsYXNzLm5hdi1saW5rLWFjdGl2ZV09XCJhY3RpdmUkIHwgYXN5bmNcIlxuICAgICBbY2xhc3MubmF2LWxpbmstaW5hY3RpdmVdPVwiKGFjdGl2ZSQgfCBhc3luYykgPT09IGZhbHNlXCJcbiAgPlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZGVmYXVsdExpbmtUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICA8L2E+XG5cbiAgPCEtLSBIcmVmIExpbmsgLS0+XG4gIDxhIG1hdFJpcHBsZSAqbmdJZj1cIm1vZGVsLmhyZWYgYXMgaHJlZlwiXG4gICAgIGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgbmF2LWxpbmtcbiAgICAgICAgICAgICAgbWRjLWxpc3QtaXRlbSBtZGMtbGlzdC1pdGVtLS13aXRoLW9uZS1saW5lXCJcbiAgICAgW2hyZWZdPVwiaHJlZlwiXG4gICAgIFt0YXJnZXRdPVwibW9kZWwuaHJlZlRhcmdldFwiXG4gICAgIFtjbGFzcy5uYXYtbGluay1hY3RpdmVdPVwiYWN0aXZlJCB8IGFzeW5jXCJcbiAgICAgW2NsYXNzLm5hdi1saW5rLWluYWN0aXZlXT1cIihhY3RpdmUkIHwgYXN5bmMpID09PSBmYWxzZVwiXG4gID5cbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImRlZmF1bHRMaW5rVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9hPlxuXG4gIDwhLS0gU2ltcGxlIEJ1dHRvbiAtLT5cbiAgPGEgbWF0UmlwcGxlICpuZ0lmPVwiIW1vZGVsLmhyZWYgJiYgIW1vZGVsLnJvdXRlckxpbmtcIlxuICAgICBjbGFzcz1cImxheW91dC1yb3cgcGxhY2Utc3RhcnQtY2VudGVyIG5hdi1saW5rXG4gICAgICAgICAgICBtZGMtbGlzdC1pdGVtIG1kYy1saXN0LWl0ZW0tLXdpdGgtb25lLWxpbmVcIlxuICAgICAoY2xpY2spPVwiaXRlbUNsaWNrKCRldmVudClcIlxuICAgICBbY2xhc3MubmF2LWxpbmstYWN0aXZlXT1cImFjdGl2ZSQgfCBhc3luY1wiXG4gICAgIFtjbGFzcy5uYXYtbGluay1pbmFjdGl2ZV09XCIoYWN0aXZlJCB8IGFzeW5jKSA9PT0gZmFsc2VcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJkZWZhdWx0TGlua1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvYT5cbjwvbmctY29udGFpbmVyPlxuXG5cbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdExpbmtUZW1wbGF0ZT5cbiAgPGRpdiBjbGFzcz1cImxheW91dC1yb3cgcGxhY2Utc3RhcnQtY2VudGVyIGdhcC1tZCBub3NlbGVjdFwiPlxuICAgIDxtYXQtaWNvbiAqbmdJZj1cIiEoIWljb24gJiYgIXRpdGxlKVwiXG4gICAgICAgICAgICAgIFtmb250SWNvbl09XCJmb250SWNvblwiXG4gICAgICAgICAgICAgIFtmb250U2V0XT1cImZvbnRTZXRcIj5cbiAgICAgIHt7aWNvbn19XG4gICAgPC9tYXQtaWNvbj5cbiAgICA8bWF0LWljb24gKm5nSWY9XCJzdmdJY29uXCJcbiAgICAgICAgICAgICAgW3N2Z0ljb25dPVwic3ZnSWNvblwiXG4gICAgPjwvbWF0LWljb24+XG4gICAgPHNwYW4gKm5nSWY9XCJ0aXRsZVwiIGNsYXNzPVwibm9zZWxlY3RcIj5cbiAgICAgIHt7IHRpdGxlIHwgdHJhbnNsYXRlfX1cbiAgICA8L3NwYW4+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -16792,10 +16792,10 @@ class ElderNavLinkComponent {
16792
16792
  }
16793
16793
  }
16794
16794
  ElderNavLinkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ElderNavLinkComponent, deps: [{ token: ElderNavListComponent }], target: i0.ɵɵFactoryTarget.Component });
16795
- ElderNavLinkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ElderNavLinkComponent, selector: "elder-nav-link", inputs: { title: "title", queryParamsHandling: "queryParamsHandling", queryParams: "queryParams", icon: "icon", fontIcon: "fontIcon", fontSet: "fontSet", svgIcon: "svgIcon", routerLink: "routerLink", href: "href", target: "target", value: "value" }, outputs: { clicked: "clicked" }, host: { properties: { "attr.tabindex": "this.tabIndex" } }, viewQueries: [{ propertyName: "routerLinkActive", first: true, predicate: RouterLinkActive, descendants: true }], ngImport: i0, template: "<!-- Router Link -->\n<ng-container *ngIf=\"model$ | async as model\">\n <a *ngIf=\"model.routerLink as routerLink\"\n matRipple\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [routerLink]=\"routerLink\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [queryParams]=\"queryParams\"\n routerLinkActive=\"dummy\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Href Link -->\n <a matRipple *ngIf=\"model.href as href\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [href]=\"href\"\n [target]=\"model.hrefTarget\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Simple Button -->\n <a matRipple *ngIf=\"!model.href && !model.routerLink\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n (click)=\"itemClick($event)\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n</ng-container>\n\n\n<ng-template #defaultLinkTemplate>\n <div class=\"layout-row place-start-center gap-md noselect\">\n <mat-icon *ngIf=\"!(!icon && !title)\"\n [fontIcon]=\"fontIcon\"\n [fontSet]=\"fontSet\">\n {{icon}}\n </mat-icon>\n <mat-icon *ngIf=\"svgIcon\"\n [svgIcon]=\"svgIcon\"\n ></mat-icon>\n <span *ngIf=\"title\" class=\"noselect\">\n {{ title | translate}}\n </span>\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".nav-link{text-decoration:none;padding-left:16px;padding-right:16px;min-height:48px;border-radius:4px;overflow:hidden;cursor:pointer}.nav-link .mat-icon{height:24px;width:24px;font-size:24px;padding:4px}\n"], dependencies: [{ kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: i2$3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5$2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
16795
+ ElderNavLinkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ElderNavLinkComponent, selector: "elder-nav-link", inputs: { title: "title", queryParamsHandling: "queryParamsHandling", queryParams: "queryParams", icon: "icon", fontIcon: "fontIcon", fontSet: "fontSet", svgIcon: "svgIcon", routerLink: "routerLink", href: "href", target: "target", value: "value" }, outputs: { clicked: "clicked" }, host: { properties: { "attr.tabindex": "this.tabIndex" } }, viewQueries: [{ propertyName: "routerLinkActive", first: true, predicate: RouterLinkActive, descendants: true }], ngImport: i0, template: "<!-- Router Link -->\n<ng-container *ngIf=\"model$ | async as model\">\n <a *ngIf=\"model.routerLink as routerLink\"\n matRipple\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [routerLink]=\"routerLink\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [queryParams]=\"queryParams\"\n routerLinkActive=\"dummy\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Href Link -->\n <a matRipple *ngIf=\"model.href as href\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [href]=\"href\"\n [target]=\"model.hrefTarget\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Simple Button -->\n <a matRipple *ngIf=\"!model.href && !model.routerLink\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n (click)=\"itemClick($event)\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n</ng-container>\n\n\n<ng-template #defaultLinkTemplate>\n <div class=\"layout-row place-start-center gap-md noselect\">\n <mat-icon *ngIf=\"!(!icon && !title)\"\n [fontIcon]=\"fontIcon\"\n [fontSet]=\"fontSet\">\n {{icon}}\n </mat-icon>\n <mat-icon *ngIf=\"svgIcon\"\n [svgIcon]=\"svgIcon\"\n ></mat-icon>\n <span *ngIf=\"title\" class=\"noselect\">\n {{ title | translate}}\n </span>\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".nav-link{text-decoration:none;padding-left:16px;padding-right:16px;min-height:48px;border-radius:4px;overflow:hidden;cursor:pointer}.nav-link .mat-icon{height:24px;width:24px;font-size:24px;padding:4px}\n"], dependencies: [{ kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1$3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: i2$3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5$2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
16796
16796
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ElderNavLinkComponent, decorators: [{
16797
16797
  type: Component,
16798
- args: [{ selector: 'elder-nav-link', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!-- Router Link -->\n<ng-container *ngIf=\"model$ | async as model\">\n <a *ngIf=\"model.routerLink as routerLink\"\n matRipple\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [routerLink]=\"routerLink\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [queryParams]=\"queryParams\"\n routerLinkActive=\"dummy\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Href Link -->\n <a matRipple *ngIf=\"model.href as href\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [href]=\"href\"\n [target]=\"model.hrefTarget\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Simple Button -->\n <a matRipple *ngIf=\"!model.href && !model.routerLink\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n (click)=\"itemClick($event)\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n</ng-container>\n\n\n<ng-template #defaultLinkTemplate>\n <div class=\"layout-row place-start-center gap-md noselect\">\n <mat-icon *ngIf=\"!(!icon && !title)\"\n [fontIcon]=\"fontIcon\"\n [fontSet]=\"fontSet\">\n {{icon}}\n </mat-icon>\n <mat-icon *ngIf=\"svgIcon\"\n [svgIcon]=\"svgIcon\"\n ></mat-icon>\n <span *ngIf=\"title\" class=\"noselect\">\n {{ title | translate}}\n </span>\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".nav-link{text-decoration:none;padding-left:16px;padding-right:16px;min-height:48px;border-radius:4px;overflow:hidden;cursor:pointer}.nav-link .mat-icon{height:24px;width:24px;font-size:24px;padding:4px}\n"] }]
16798
+ args: [{ selector: 'elder-nav-link', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!-- Router Link -->\n<ng-container *ngIf=\"model$ | async as model\">\n <a *ngIf=\"model.routerLink as routerLink\"\n matRipple\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [routerLink]=\"routerLink\"\n [queryParamsHandling]=\"queryParamsHandling\"\n [queryParams]=\"queryParams\"\n routerLinkActive=\"dummy\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Href Link -->\n <a matRipple *ngIf=\"model.href as href\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n [href]=\"href\"\n [target]=\"model.hrefTarget\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n\n <!-- Simple Button -->\n <a matRipple *ngIf=\"!model.href && !model.routerLink\"\n class=\"layout-row place-start-center nav-link\n mdc-list-item mdc-list-item--with-one-line\"\n (click)=\"itemClick($event)\"\n [class.nav-link-active]=\"active$ | async\"\n [class.nav-link-inactive]=\"(active$ | async) === false\"\n >\n <ng-container [ngTemplateOutlet]=\"defaultLinkTemplate\"></ng-container>\n </a>\n</ng-container>\n\n\n<ng-template #defaultLinkTemplate>\n <div class=\"layout-row place-start-center gap-md noselect\">\n <mat-icon *ngIf=\"!(!icon && !title)\"\n [fontIcon]=\"fontIcon\"\n [fontSet]=\"fontSet\">\n {{icon}}\n </mat-icon>\n <mat-icon *ngIf=\"svgIcon\"\n [svgIcon]=\"svgIcon\"\n ></mat-icon>\n <span *ngIf=\"title\" class=\"noselect\">\n {{ title | translate}}\n </span>\n <ng-content></ng-content>\n </div>\n</ng-template>\n", styles: [".nav-link{text-decoration:none;padding-left:16px;padding-right:16px;min-height:48px;border-radius:4px;overflow:hidden;cursor:pointer}.nav-link .mat-icon{height:24px;width:24px;font-size:24px;padding:4px}\n"] }]
16799
16799
  }], ctorParameters: function () { return [{ type: ElderNavListComponent }]; }, propDecorators: { tabIndex: [{
16800
16800
  type: HostBinding,
16801
16801
  args: ['attr.tabindex']