@bcgov/nr-ngx-component-lib 0.0.7 → 0.0.9

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 (52) hide show
  1. package/components/cell-content/cell-content.component.d.ts +2 -1
  2. package/components/expansion-panel/expansion-panel.component.d.ts +4 -3
  3. package/components/filter-container/filter-container.component.d.ts +2 -1
  4. package/components/filter-date/filter-date.component.d.ts +2 -1
  5. package/components/filter-search/filter-search.component.d.ts +2 -1
  6. package/components/filter-select/filter-select.component.d.ts +2 -1
  7. package/components/filters-panel/filters-panel.component.d.ts +2 -1
  8. package/components/form-field/form-field.component.d.ts +2 -1
  9. package/components/form-layout/form-layout.component.d.ts +2 -1
  10. package/components/gap/gap.component.d.ts +2 -1
  11. package/components/icon/icon.component.d.ts +2 -1
  12. package/components/list-attachments/list-attachments.component.d.ts +2 -1
  13. package/components/page-container/page-container.component.d.ts +2 -1
  14. package/components/page-header/page-header.component.d.ts +2 -1
  15. package/components/row-list-desktop/row-list-desktop.component.d.ts +2 -1
  16. package/components/row-list-mobile/row-list-mobile.component.d.ts +2 -1
  17. package/components/row-list-pagination/row-list-pagination.component.d.ts +2 -1
  18. package/components/row-list-sorting/row-list-sorting.component.d.ts +2 -1
  19. package/components/snackbar/snackbar.component.d.ts +2 -1
  20. package/directives/configuration-subscriber.base.d.ts +2 -1
  21. package/directives/nrcl.base.d.ts +9 -0
  22. package/directives/row-list.base.d.ts +2 -1
  23. package/esm2022/components/button/button.component.mjs +2 -2
  24. package/esm2022/components/cell-content/cell-content.component.mjs +6 -4
  25. package/esm2022/components/expansion-panel/expansion-panel.component.mjs +13 -10
  26. package/esm2022/components/filter-container/filter-container.component.mjs +6 -4
  27. package/esm2022/components/filter-date/filter-date.component.mjs +6 -4
  28. package/esm2022/components/filter-search/filter-search.component.mjs +6 -4
  29. package/esm2022/components/filter-select/filter-select.component.mjs +6 -4
  30. package/esm2022/components/filters-panel/filters-panel.component.mjs +6 -4
  31. package/esm2022/components/form-field/form-field.component.mjs +6 -4
  32. package/esm2022/components/form-layout/form-layout.component.mjs +5 -4
  33. package/esm2022/components/gap/gap.component.mjs +6 -4
  34. package/esm2022/components/icon/icon.component.mjs +6 -4
  35. package/esm2022/components/list-attachments/list-attachments.component.mjs +8 -3
  36. package/esm2022/components/page-container/page-container.component.mjs +5 -4
  37. package/esm2022/components/page-header/page-header.component.mjs +6 -4
  38. package/esm2022/components/row-list-desktop/row-list-desktop.component.mjs +5 -4
  39. package/esm2022/components/row-list-mobile/row-list-mobile.component.mjs +5 -4
  40. package/esm2022/components/row-list-pagination/row-list-pagination.component.mjs +6 -4
  41. package/esm2022/components/row-list-sorting/row-list-sorting.component.mjs +6 -4
  42. package/esm2022/components/snackbar/snackbar.component.mjs +5 -3
  43. package/esm2022/directives/configuration-subscriber.base.mjs +7 -4
  44. package/esm2022/directives/nrcl.base.mjs +20 -0
  45. package/esm2022/directives/row-list.base.mjs +5 -3
  46. package/esm2022/nr-ngx-component-lib.module.mjs +5 -12
  47. package/esm2022/public-api.mjs +2 -1
  48. package/fesm2022/bcgov-nr-ngx-component-lib.mjs +114 -79
  49. package/fesm2022/bcgov-nr-ngx-component-lib.mjs.map +1 -1
  50. package/nr-ngx-component-lib.module.d.ts +0 -5
  51. package/package.json +1 -1
  52. package/public-api.d.ts +1 -0
@@ -1,6 +1,7 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from "@angular/core";
2
2
  import moment from "moment";
3
3
  import { DATE_FORMATS } from "../../utils/date.util";
4
+ import { NrclBase } from "../../directives/nrcl.base";
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "@angular/forms";
6
7
  import * as i2 from "@angular/material/button";
@@ -8,8 +9,9 @@ import * as i3 from "@angular/material/form-field";
8
9
  import * as i4 from "@angular/material/input";
9
10
  import * as i5 from "@busacca/ng-pick-datetime";
10
11
  import * as i6 from "../icon/icon.component";
11
- export class FilterDateComponent {
12
+ export class FilterDateComponent extends NrclBase {
12
13
  constructor() {
14
+ super(...arguments);
13
15
  this.label = '[label]]';
14
16
  this.placeholder = 'Select...';
15
17
  this.value = moment().format(DATE_FORMATS.datePickerInput);
@@ -23,8 +25,8 @@ export class FilterDateComponent {
23
25
  let date = ev.format(DATE_FORMATS.datePickerInput);
24
26
  this.valueChange.emit(date);
25
27
  }
26
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterDateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
27
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FilterDateComponent, selector: "nrcl-filter-date", inputs: { label: "label", placeholder: "placeholder", hint: "hint", value: "value" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<mat-form-field\n floatLabel=\"auto\"\n appearance=\"outline\"\n subscriptSizing=\"dynamic\"\n>\n <mat-label>{{ label }}</mat-label>\n\n <input matInput class=\"search-input\" \n [ngModel]=\"value\" \n (ngModelChange)=\"onDateChange( $event )\"\n [placeholder]=\"placeholder\"\n [owlDateTime]=\"selectedDateDT\" \n maxlength=\"10\" \n appWFDateMask\n >\n\n @if ( hint ) {\n <mat-hint>{{ hint }}</mat-hint>\n }\n\n <button class=\"select-date\"\n [owlDateTimeTrigger]=\"selectedDateDT\" \n aria-label=\"Open Select Date Picker\"\n mat-icon-button\n matSuffix\n >\n <nrcl-icon>event</nrcl-icon>\n </button>\n</mat-form-field>\n\n<owl-date-time #selectedDateDT pickerType=\"calendar\"></owl-date-time>\n", styles: ["::ng-deep :root{--nrcl-filter-date-width: var( --nrcl-filter-width-default )}:host{--mat-form-field-container-height: calc( var( --nrcl-filter-height-default ) - 4px );--mat-form-field-container-vertical-padding: 8px;--mat-form-field-container-text-size: 15px;--mdc-outlined-text-field-focus-label-text-color: black;--mdc-outlined-text-field-hover-label-text-color: black;width:var(--nrcl-filter-date-width, var(--nrcl-filter-width-default));display:block}:host ::ng-deep .mat-mdc-form-field{width:100%}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper{background-color:#fff;height:var(--nrcl-filter-height-default)}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix{width:var(--nrcl-filter-date-width, var(--nrcl-filter-width-default))}:host .select-date{padding:0;width:calc(var(--nrcl-filter-height-default) - 2px);height:calc(var(--nrcl-filter-height-default) - 2px);display:flex;justify-content:center;align-items:center}\n"], dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i5.OwlDateTimeTriggerDirective, selector: "[owlDateTimeTrigger]", inputs: ["owlDateTimeTrigger", "disabled"] }, { kind: "directive", type: i5.OwlDateTimeInputDirective, selector: "input[owlDateTime]", inputs: ["owlDateTime", "owlDateTimeFilter", "_disabled", "min", "max", "selectMode", "rangeSeparator", "value", "values"], outputs: ["dateTimeChange", "dateTimeInput"], exportAs: ["owlDateTimeInput"] }, { kind: "component", type: i5.OwlDateTimeComponent, selector: "owl-date-time", inputs: ["backdropClass", "panelClass", "startAt", "pickerType", "pickerMode", "disabled", "opened", "scrollStrategy"], outputs: ["afterPickerClosed", "afterPickerOpen", "yearSelected", "monthSelected"], exportAs: ["owlDateTime"] }, { kind: "component", type: i6.IconComponent, selector: "nrcl-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterDateComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
29
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FilterDateComponent, selector: "nrcl-filter-date", inputs: { label: "label", placeholder: "placeholder", hint: "hint", value: "value" }, outputs: { valueChange: "valueChange" }, usesInheritance: true, ngImport: i0, template: "<mat-form-field\n floatLabel=\"auto\"\n appearance=\"outline\"\n subscriptSizing=\"dynamic\"\n>\n <mat-label>{{ label }}</mat-label>\n\n <input matInput class=\"search-input\" \n [ngModel]=\"value\" \n (ngModelChange)=\"onDateChange( $event )\"\n [placeholder]=\"placeholder\"\n [owlDateTime]=\"selectedDateDT\" \n maxlength=\"10\" \n appWFDateMask\n >\n\n @if ( hint ) {\n <mat-hint>{{ hint }}</mat-hint>\n }\n\n <button class=\"select-date\"\n [owlDateTimeTrigger]=\"selectedDateDT\" \n aria-label=\"Open Select Date Picker\"\n mat-icon-button\n matSuffix\n >\n <nrcl-icon>event</nrcl-icon>\n </button>\n</mat-form-field>\n\n<owl-date-time #selectedDateDT pickerType=\"calendar\"></owl-date-time>\n", styles: ["::ng-deep :root{--nrcl-filter-date-width: var( --nrcl-filter-width-default )}:host{--mat-form-field-container-height: calc( var( --nrcl-filter-height-default ) - 4px );--mat-form-field-container-vertical-padding: 8px;--mat-form-field-container-text-size: 15px;--mdc-outlined-text-field-focus-label-text-color: black;--mdc-outlined-text-field-hover-label-text-color: black;width:var(--nrcl-filter-date-width, var(--nrcl-filter-width-default));display:block}:host ::ng-deep .mat-mdc-form-field{width:100%}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper{background-color:#fff;height:var(--nrcl-filter-height-default)}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix{width:var(--nrcl-filter-date-width, var(--nrcl-filter-width-default))}:host .select-date{padding:0;width:calc(var(--nrcl-filter-height-default) - 2px);height:calc(var(--nrcl-filter-height-default) - 2px);display:flex;justify-content:center;align-items:center}\n"], dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i5.OwlDateTimeTriggerDirective, selector: "[owlDateTimeTrigger]", inputs: ["owlDateTimeTrigger", "disabled"] }, { kind: "directive", type: i5.OwlDateTimeInputDirective, selector: "input[owlDateTime]", inputs: ["owlDateTime", "owlDateTimeFilter", "_disabled", "min", "max", "selectMode", "rangeSeparator", "value", "values"], outputs: ["dateTimeChange", "dateTimeInput"], exportAs: ["owlDateTimeInput"] }, { kind: "component", type: i5.OwlDateTimeComponent, selector: "owl-date-time", inputs: ["backdropClass", "panelClass", "startAt", "pickerType", "pickerMode", "disabled", "opened", "scrollStrategy"], outputs: ["afterPickerClosed", "afterPickerOpen", "yearSelected", "monthSelected"], exportAs: ["owlDateTime"] }, { kind: "component", type: i6.IconComponent, selector: "nrcl-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
28
30
  }
29
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterDateComponent, decorators: [{
30
32
  type: Component,
@@ -40,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
40
42
  }], valueChange: [{
41
43
  type: Output
42
44
  }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZmlsdGVyLWRhdGUvZmlsdGVyLWRhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZmlsdGVyLWRhdGUvZmlsdGVyLWRhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7QUFRckQsTUFBTSxPQUFPLG1CQUFtQjtJQU5oQztRQU9hLFVBQUssR0FBRyxVQUFVLENBQUE7UUFDbEIsZ0JBQVcsR0FBRyxXQUFXLENBQUE7UUFFekIsVUFBSyxHQUFHLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBRSxZQUFZLENBQUMsZUFBZSxDQUFFLENBQUE7UUFFdEQsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0tBV3REO0lBVEcsWUFBWSxDQUFFLEVBQUU7UUFDWixJQUFLLENBQUMsRUFBRSxFQUFHLENBQUM7WUFDUixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBRSxJQUFJLENBQUUsQ0FBQTtZQUM3QixPQUFNO1FBQ1YsQ0FBQztRQUVELElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUUsWUFBWSxDQUFDLGVBQWUsQ0FBRSxDQUFBO1FBQ3BELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFFLElBQUksQ0FBRSxDQUFBO0lBQ2pDLENBQUM7K0dBaEJRLG1CQUFtQjttR0FBbkIsbUJBQW1CLHVMQ2hCaEMsOHpCQStCQTs7NEZEZmEsbUJBQW1CO2tCQU4vQixTQUFTOytCQUNJLGtCQUFrQixtQkFHWCx1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUVJLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgbW9tZW50IGZyb20gXCJtb21lbnRcIjtcbmltcG9ydCB7IERBVEVfRk9STUFUUyB9IGZyb20gXCIuLi8uLi91dGlscy9kYXRlLnV0aWxcIjtcblxuQENvbXBvbmVudCgge1xuICAgIHNlbGVjdG9yOiBcIm5yY2wtZmlsdGVyLWRhdGVcIixcbiAgICB0ZW1wbGF0ZVVybDogXCIuL2ZpbHRlci1kYXRlLmNvbXBvbmVudC5odG1sXCIsXG4gICAgc3R5bGVVcmw6IFwiLi9maWx0ZXItZGF0ZS5jb21wb25lbnQuc2Nzc1wiLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSApXG5leHBvcnQgY2xhc3MgRmlsdGVyRGF0ZUNvbXBvbmVudCB7XG4gICAgQElucHV0KCkgbGFiZWwgPSAnW2xhYmVsXV0nXG4gICAgQElucHV0KCkgcGxhY2Vob2xkZXIgPSAnU2VsZWN0Li4uJ1xuICAgIEBJbnB1dCgpIGhpbnRcbiAgICBASW5wdXQoKSB2YWx1ZSA9IG1vbWVudCgpLmZvcm1hdCggREFURV9GT1JNQVRTLmRhdGVQaWNrZXJJbnB1dCApXG5cbiAgICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIG9uRGF0ZUNoYW5nZSggZXYgKSB7XG4gICAgICAgIGlmICggIWV2ICkge1xuICAgICAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KCBudWxsIClcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGRhdGUgPSBldi5mb3JtYXQoIERBVEVfRk9STUFUUy5kYXRlUGlja2VySW5wdXQgKVxuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoIGRhdGUgKVxuICAgIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZFxuICAgIGZsb2F0TGFiZWw9XCJhdXRvXCJcbiAgICBhcHBlYXJhbmNlPVwib3V0bGluZVwiXG4gICAgc3Vic2NyaXB0U2l6aW5nPVwiZHluYW1pY1wiXG4+XG4gICAgPG1hdC1sYWJlbD57eyBsYWJlbCB9fTwvbWF0LWxhYmVsPlxuXG4gICAgPGlucHV0IG1hdElucHV0IGNsYXNzPVwic2VhcmNoLWlucHV0XCIgICAgICAgICAgICBcbiAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIiBcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25EYXRlQ2hhbmdlKCAkZXZlbnQgKVwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgIFtvd2xEYXRlVGltZV09XCJzZWxlY3RlZERhdGVEVFwiIFxuICAgICAgICBtYXhsZW5ndGg9XCIxMFwiIFxuICAgICAgICBhcHBXRkRhdGVNYXNrXG4gICAgPlxuXG4gICAgQGlmICggaGludCApIHtcbiAgICAgICAgPG1hdC1oaW50Pnt7IGhpbnQgfX08L21hdC1oaW50PlxuICAgIH1cblxuICAgIDxidXR0b24gY2xhc3M9XCJzZWxlY3QtZGF0ZVwiXG4gICAgICAgIFtvd2xEYXRlVGltZVRyaWdnZXJdPVwic2VsZWN0ZWREYXRlRFRcIiBcbiAgICAgICAgYXJpYS1sYWJlbD1cIk9wZW4gU2VsZWN0IERhdGUgUGlja2VyXCJcbiAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgIG1hdFN1ZmZpeFxuICAgID5cbiAgICAgICAgPG5yY2wtaWNvbj5ldmVudDwvbnJjbC1pY29uPlxuICAgIDwvYnV0dG9uPlxuPC9tYXQtZm9ybS1maWVsZD5cblxuPG93bC1kYXRlLXRpbWUgI3NlbGVjdGVkRGF0ZURUIHBpY2tlclR5cGU9XCJjYWxlbmRhclwiPjwvb3dsLWRhdGUtdGltZT5cbiJdfQ==
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZmlsdGVyLWRhdGUvZmlsdGVyLWRhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZmlsdGVyLWRhdGUvZmlsdGVyLWRhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7O0FBUXRELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxRQUFRO0lBTmpEOztRQU9hLFVBQUssR0FBRyxVQUFVLENBQUE7UUFDbEIsZ0JBQVcsR0FBRyxXQUFXLENBQUE7UUFFekIsVUFBSyxHQUFHLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBRSxZQUFZLENBQUMsZUFBZSxDQUFFLENBQUE7UUFFdEQsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0tBV3REO0lBVEcsWUFBWSxDQUFFLEVBQUU7UUFDWixJQUFLLENBQUMsRUFBRSxFQUFHLENBQUM7WUFDUixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBRSxJQUFJLENBQUUsQ0FBQTtZQUM3QixPQUFNO1FBQ1YsQ0FBQztRQUVELElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUUsWUFBWSxDQUFDLGVBQWUsQ0FBRSxDQUFBO1FBQ3BELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFFLElBQUksQ0FBRSxDQUFBO0lBQ2pDLENBQUM7K0dBaEJRLG1CQUFtQjttR0FBbkIsbUJBQW1CLDhNQ2pCaEMsOHpCQStCQTs7NEZEZGEsbUJBQW1CO2tCQU4vQixTQUFTOytCQUNJLGtCQUFrQixtQkFHWCx1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUVJLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgbW9tZW50IGZyb20gXCJtb21lbnRcIjtcbmltcG9ydCB7IERBVEVfRk9STUFUUyB9IGZyb20gXCIuLi8uLi91dGlscy9kYXRlLnV0aWxcIjtcbmltcG9ydCB7IE5yY2xCYXNlIH0gZnJvbSBcIi4uLy4uL2RpcmVjdGl2ZXMvbnJjbC5iYXNlXCI7XG5cbkBDb21wb25lbnQoIHtcbiAgICBzZWxlY3RvcjogXCJucmNsLWZpbHRlci1kYXRlXCIsXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9maWx0ZXItZGF0ZS5jb21wb25lbnQuaHRtbFwiLFxuICAgIHN0eWxlVXJsOiBcIi4vZmlsdGVyLWRhdGUuY29tcG9uZW50LnNjc3NcIixcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0gKVxuZXhwb3J0IGNsYXNzIEZpbHRlckRhdGVDb21wb25lbnQgZXh0ZW5kcyBOcmNsQmFzZSB7XG4gICAgQElucHV0KCkgbGFiZWwgPSAnW2xhYmVsXV0nXG4gICAgQElucHV0KCkgcGxhY2Vob2xkZXIgPSAnU2VsZWN0Li4uJ1xuICAgIEBJbnB1dCgpIGhpbnRcbiAgICBASW5wdXQoKSB2YWx1ZSA9IG1vbWVudCgpLmZvcm1hdCggREFURV9GT1JNQVRTLmRhdGVQaWNrZXJJbnB1dCApXG5cbiAgICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIG9uRGF0ZUNoYW5nZSggZXYgKSB7XG4gICAgICAgIGlmICggIWV2ICkge1xuICAgICAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KCBudWxsIClcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGRhdGUgPSBldi5mb3JtYXQoIERBVEVfRk9STUFUUy5kYXRlUGlja2VySW5wdXQgKVxuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoIGRhdGUgKVxuICAgIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZFxuICAgIGZsb2F0TGFiZWw9XCJhdXRvXCJcbiAgICBhcHBlYXJhbmNlPVwib3V0bGluZVwiXG4gICAgc3Vic2NyaXB0U2l6aW5nPVwiZHluYW1pY1wiXG4+XG4gICAgPG1hdC1sYWJlbD57eyBsYWJlbCB9fTwvbWF0LWxhYmVsPlxuXG4gICAgPGlucHV0IG1hdElucHV0IGNsYXNzPVwic2VhcmNoLWlucHV0XCIgICAgICAgICAgICBcbiAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIiBcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25EYXRlQ2hhbmdlKCAkZXZlbnQgKVwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgIFtvd2xEYXRlVGltZV09XCJzZWxlY3RlZERhdGVEVFwiIFxuICAgICAgICBtYXhsZW5ndGg9XCIxMFwiIFxuICAgICAgICBhcHBXRkRhdGVNYXNrXG4gICAgPlxuXG4gICAgQGlmICggaGludCApIHtcbiAgICAgICAgPG1hdC1oaW50Pnt7IGhpbnQgfX08L21hdC1oaW50PlxuICAgIH1cblxuICAgIDxidXR0b24gY2xhc3M9XCJzZWxlY3QtZGF0ZVwiXG4gICAgICAgIFtvd2xEYXRlVGltZVRyaWdnZXJdPVwic2VsZWN0ZWREYXRlRFRcIiBcbiAgICAgICAgYXJpYS1sYWJlbD1cIk9wZW4gU2VsZWN0IERhdGUgUGlja2VyXCJcbiAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgIG1hdFN1ZmZpeFxuICAgID5cbiAgICAgICAgPG5yY2wtaWNvbj5ldmVudDwvbnJjbC1pY29uPlxuICAgIDwvYnV0dG9uPlxuPC9tYXQtZm9ybS1maWVsZD5cblxuPG93bC1kYXRlLXRpbWUgI3NlbGVjdGVkRGF0ZURUIHBpY2tlclR5cGU9XCJjYWxlbmRhclwiPjwvb3dsLWRhdGUtdGltZT5cbiJdfQ==
@@ -1,11 +1,13 @@
1
1
  import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, inject, Input, Output, ViewChild } from "@angular/core";
2
+ import { NrclBase } from "../../directives/nrcl.base";
2
3
  import * as i0 from "@angular/core";
3
4
  import * as i1 from "@angular/material/button";
4
5
  import * as i2 from "@angular/material/form-field";
5
6
  import * as i3 from "@angular/material/input";
6
7
  import * as i4 from "../icon/icon.component";
7
- export class FilterSearchComponent {
8
+ export class FilterSearchComponent extends NrclBase {
8
9
  constructor() {
10
+ super(...arguments);
9
11
  this.label = 'Search';
10
12
  this.placeholder = 'Search...';
11
13
  this.valueChange = new EventEmitter();
@@ -27,8 +29,8 @@ export class FilterSearchComponent {
27
29
  focus() {
28
30
  this.inputEl.nativeElement.focus();
29
31
  }
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
31
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FilterSearchComponent, selector: "nrcl-filter-search", inputs: { label: "label", placeholder: "placeholder", hint: "hint", value: "value" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.has-value": "hasValue" } }, viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: "<mat-form-field\n floatLabel=\"auto\"\n appearance=\"outline\"\n subscriptSizing=\"dynamic\"\n>\n <mat-label>{{ label }}</mat-label>\n\n <input class=\"search-input\" #input\n matInput\n [value]=\"value || ''\"\n (input)=\"onInput( $event )\"\n [placeholder]=\"placeholder\"\n >\n\n @if ( hint ) {\n <mat-hint>{{ hint }}</mat-hint>\n }\n\n @if ( value ) {\n <button class=\"cancel\"\n mat-icon-button\n matSuffix\n (click)=\"onCancelClick($event); $event.stopPropagation()\"\n >\n <nrcl-icon>close</nrcl-icon>\n </button>\n } \n</mat-form-field>\n", styles: ["::ng-deep :root{--nrcl-filter-search-width: calc( var( --nrcl-filter-width-default ) * 2 + 8px )}:host{--mat-form-field-container-height: calc( var( --nrcl-filter-height-default ) - 4px );--mat-form-field-container-vertical-padding: 8px;--mat-form-field-container-text-size: 15px;--mdc-outlined-text-field-focus-label-text-color: black;--mdc-outlined-text-field-hover-label-text-color: black;width:var(--nrcl-filter-search-width, calc(var(--nrcl-filter-width-default) * 2 + 8px));display:block}:host.has-value{--mdc-outlined-text-field-label-text-color: black}:host ::ng-deep .mat-mdc-form-field{width:100%}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper{background-color:#fff;height:var(--nrcl-filter-height-default)}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix{width:var(--nrcl-filter-search-width, calc(var(--nrcl-filter-width-default) * 2 + 8px))}:host .cancel{padding:0;width:calc(var(--nrcl-filter-height-default) - 2px);height:calc(var(--nrcl-filter-height-default) - 2px);display:flex;justify-content:center;align-items:center}\n"], dependencies: [{ kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.IconComponent, selector: "nrcl-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterSearchComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
33
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FilterSearchComponent, selector: "nrcl-filter-search", inputs: { label: "label", placeholder: "placeholder", hint: "hint", value: "value" }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.has-value": "hasValue" } }, viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-form-field\n floatLabel=\"auto\"\n appearance=\"outline\"\n subscriptSizing=\"dynamic\"\n>\n <mat-label>{{ label }}</mat-label>\n\n <input class=\"search-input\" #input\n matInput\n [value]=\"value || ''\"\n (input)=\"onInput( $event )\"\n [placeholder]=\"placeholder\"\n >\n\n @if ( hint ) {\n <mat-hint>{{ hint }}</mat-hint>\n }\n\n @if ( value ) {\n <button class=\"cancel\"\n mat-icon-button\n matSuffix\n (click)=\"onCancelClick($event); $event.stopPropagation()\"\n >\n <nrcl-icon>close</nrcl-icon>\n </button>\n } \n</mat-form-field>\n", styles: ["::ng-deep :root{--nrcl-filter-search-width: calc( var( --nrcl-filter-width-default ) * 2 + 8px )}:host{--mat-form-field-container-height: calc( var( --nrcl-filter-height-default ) - 4px );--mat-form-field-container-vertical-padding: 8px;--mat-form-field-container-text-size: 15px;--mdc-outlined-text-field-focus-label-text-color: black;--mdc-outlined-text-field-hover-label-text-color: black;width:var(--nrcl-filter-search-width, calc(var(--nrcl-filter-width-default) * 2 + 8px));display:block}:host.has-value{--mdc-outlined-text-field-label-text-color: black}:host ::ng-deep .mat-mdc-form-field{width:100%}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper{background-color:#fff;height:var(--nrcl-filter-height-default)}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix{width:var(--nrcl-filter-search-width, calc(var(--nrcl-filter-width-default) * 2 + 8px))}:host .cancel{padding:0;width:calc(var(--nrcl-filter-height-default) - 2px);height:calc(var(--nrcl-filter-height-default) - 2px);display:flex;justify-content:center;align-items:center}\n"], dependencies: [{ kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.IconComponent, selector: "nrcl-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
32
34
  }
33
35
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterSearchComponent, decorators: [{
34
36
  type: Component,
@@ -49,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
49
51
  type: ViewChild,
50
52
  args: ['input']
51
53
  }] } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXNlYXJjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uci1uZ3gtY29tcG9uZW50LWxpYi9zcmMvY29tcG9uZW50cy9maWx0ZXItc2VhcmNoL2ZpbHRlci1zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZmlsdGVyLXNlYXJjaC9maWx0ZXItc2VhcmNoLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFXdkIsTUFBTSxPQUFPLHFCQUFxQjtJQVRsQztRQVVhLFVBQUssR0FBRyxRQUFRLENBQUE7UUFDaEIsZ0JBQVcsR0FBRyxXQUFXLENBQUE7UUFJeEIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBSW5ELGFBQVEsR0FBRyxLQUFLLENBQUE7UUFDaEIsc0JBQWlCLEdBQUcsTUFBTSxDQUFFLGlCQUFpQixDQUFFLENBQUE7S0FvQmxEO0lBbEJHLGVBQWUsQ0FBRSxHQUFJO1FBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQTtRQUNyQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBRSxHQUFHLENBQUUsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsT0FBTyxDQUFFLEVBQUU7UUFDUCxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFBO1FBQzlCLElBQUksQ0FBQyxlQUFlLENBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUUsQ0FBQTtJQUM3QyxDQUFDO0lBRUQsYUFBYTtRQUNULElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFBO1FBQ2pCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0lBRUQsS0FBSztRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFBO0lBQ3RDLENBQUM7K0dBOUJRLHFCQUFxQjttR0FBckIscUJBQXFCLG9WQ3JCbEMsc3JCQTRCQTs7NEZEUGEscUJBQXFCO2tCQVRqQyxTQUFTOytCQUNJLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNGLG1CQUFtQixFQUFFLFVBQVU7cUJBQ2xDOzhCQUdRLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUksV0FBVztzQkFBcEIsTUFBTTtnQkFFZSxPQUFPO3NCQUE1QixTQUFTO3VCQUFFLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFZpZXdDaGlsZFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5AQ29tcG9uZW50KCB7XG4gICAgc2VsZWN0b3I6IFwibnJjbC1maWx0ZXItc2VhcmNoXCIsXG4gICAgdGVtcGxhdGVVcmw6IFwiLi9maWx0ZXItc2VhcmNoLmNvbXBvbmVudC5odG1sXCIsXG4gICAgc3R5bGVVcmw6IFwiLi9maWx0ZXItc2VhcmNoLmNvbXBvbmVudC5zY3NzXCIsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2NsYXNzLmhhcy12YWx1ZV0nOiBcImhhc1ZhbHVlXCJcbiAgICB9XG59IClcbmV4cG9ydCBjbGFzcyBGaWx0ZXJTZWFyY2hDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIGxhYmVsID0gJ1NlYXJjaCdcbiAgICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICdTZWFyY2guLi4nXG4gICAgQElucHV0KCkgaGludFxuICAgIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmdcblxuICAgIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgQFZpZXdDaGlsZCggJ2lucHV0JyApIGlucHV0RWw6IEVsZW1lbnRSZWZcblxuICAgIGhhc1ZhbHVlID0gZmFsc2VcbiAgICBjaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdCggQ2hhbmdlRGV0ZWN0b3JSZWYgKVxuXG4gICAgZW1pdFZhbHVlQ2hhbmdlKCB2YWw/ICkge1xuICAgICAgICB0aGlzLmhhc1ZhbHVlID0gISF2YWxcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KCB2YWwgKVxuICAgIH1cblxuICAgIG9uSW5wdXQoIGV2ICkge1xuICAgICAgICB0aGlzLnZhbHVlID0gZXY/LnRhcmdldD8udmFsdWVcbiAgICAgICAgdGhpcy5lbWl0VmFsdWVDaGFuZ2UoIGV2Py50YXJnZXQ/LnZhbHVlIClcbiAgICB9XG5cbiAgICBvbkNhbmNlbENsaWNrKCkge1xuICAgICAgICB0aGlzLnZhbHVlID0gbnVsbFxuICAgICAgICB0aGlzLmVtaXRWYWx1ZUNoYW5nZSgpXG4gICAgfVxuXG4gICAgZm9jdXMoKSB7XG4gICAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgICB9XG59XG4iLCI8bWF0LWZvcm0tZmllbGRcbiAgICBmbG9hdExhYmVsPVwiYXV0b1wiXG4gICAgYXBwZWFyYW5jZT1cIm91dGxpbmVcIlxuICAgIHN1YnNjcmlwdFNpemluZz1cImR5bmFtaWNcIlxuPlxuICAgIDxtYXQtbGFiZWw+e3sgbGFiZWwgfX08L21hdC1sYWJlbD5cblxuICAgIDxpbnB1dCBjbGFzcz1cInNlYXJjaC1pbnB1dFwiICNpbnB1dFxuICAgICAgICBtYXRJbnB1dFxuICAgICAgICBbdmFsdWVdPVwidmFsdWUgfHwgJydcIlxuICAgICAgICAoaW5wdXQpPVwib25JbnB1dCggJGV2ZW50IClcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgID5cblxuICAgIEBpZiAoIGhpbnQgKSB7XG4gICAgICAgIDxtYXQtaGludD57eyBoaW50IH19PC9tYXQtaGludD5cbiAgICB9XG5cbiAgICBAaWYgKCB2YWx1ZSApIHtcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNhbmNlbFwiXG4gICAgICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICAgIG1hdFN1ZmZpeFxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2FuY2VsQ2xpY2soJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5yY2wtaWNvbj5jbG9zZTwvbnJjbC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICB9ICAgICAgICAgICAgICAgIFxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXNlYXJjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uci1uZ3gtY29tcG9uZW50LWxpYi9zcmMvY29tcG9uZW50cy9maWx0ZXItc2VhcmNoL2ZpbHRlci1zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZmlsdGVyLXNlYXJjaC9maWx0ZXItc2VhcmNoLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7O0FBV3RELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxRQUFRO0lBVG5EOztRQVVhLFVBQUssR0FBRyxRQUFRLENBQUE7UUFDaEIsZ0JBQVcsR0FBRyxXQUFXLENBQUE7UUFJeEIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBSW5ELGFBQVEsR0FBRyxLQUFLLENBQUE7UUFDaEIsc0JBQWlCLEdBQUcsTUFBTSxDQUFFLGlCQUFpQixDQUFFLENBQUE7S0FvQmxEO0lBbEJHLGVBQWUsQ0FBRSxHQUFJO1FBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQTtRQUNyQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBRSxHQUFHLENBQUUsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsT0FBTyxDQUFFLEVBQUU7UUFDUCxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFBO1FBQzlCLElBQUksQ0FBQyxlQUFlLENBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUUsQ0FBQTtJQUM3QyxDQUFDO0lBRUQsYUFBYTtRQUNULElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFBO1FBQ2pCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0lBRUQsS0FBSztRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFBO0lBQ3RDLENBQUM7K0dBOUJRLHFCQUFxQjttR0FBckIscUJBQXFCLDJXQ3RCbEMsc3JCQTRCQTs7NEZETmEscUJBQXFCO2tCQVRqQyxTQUFTOytCQUNJLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNGLG1CQUFtQixFQUFFLFVBQVU7cUJBQ2xDOzhCQUdRLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUksV0FBVztzQkFBcEIsTUFBTTtnQkFFZSxPQUFPO3NCQUE1QixTQUFTO3VCQUFFLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFZpZXdDaGlsZFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTnJjbEJhc2UgfSBmcm9tIFwiLi4vLi4vZGlyZWN0aXZlcy9ucmNsLmJhc2VcIjtcblxuQENvbXBvbmVudCgge1xuICAgIHNlbGVjdG9yOiBcIm5yY2wtZmlsdGVyLXNlYXJjaFwiLFxuICAgIHRlbXBsYXRlVXJsOiBcIi4vZmlsdGVyLXNlYXJjaC5jb21wb25lbnQuaHRtbFwiLFxuICAgIHN0eWxlVXJsOiBcIi4vZmlsdGVyLXNlYXJjaC5jb21wb25lbnQuc2Nzc1wiLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tjbGFzcy5oYXMtdmFsdWVdJzogXCJoYXNWYWx1ZVwiXG4gICAgfVxufSApXG5leHBvcnQgY2xhc3MgRmlsdGVyU2VhcmNoQ29tcG9uZW50IGV4dGVuZHMgTnJjbEJhc2Uge1xuICAgIEBJbnB1dCgpIGxhYmVsID0gJ1NlYXJjaCdcbiAgICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICdTZWFyY2guLi4nXG4gICAgQElucHV0KCkgaGludFxuICAgIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmdcblxuICAgIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgQFZpZXdDaGlsZCggJ2lucHV0JyApIGlucHV0RWw6IEVsZW1lbnRSZWZcblxuICAgIGhhc1ZhbHVlID0gZmFsc2VcbiAgICBjaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdCggQ2hhbmdlRGV0ZWN0b3JSZWYgKVxuXG4gICAgZW1pdFZhbHVlQ2hhbmdlKCB2YWw/ICkge1xuICAgICAgICB0aGlzLmhhc1ZhbHVlID0gISF2YWxcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KCB2YWwgKVxuICAgIH1cblxuICAgIG9uSW5wdXQoIGV2ICkge1xuICAgICAgICB0aGlzLnZhbHVlID0gZXY/LnRhcmdldD8udmFsdWVcbiAgICAgICAgdGhpcy5lbWl0VmFsdWVDaGFuZ2UoIGV2Py50YXJnZXQ/LnZhbHVlIClcbiAgICB9XG5cbiAgICBvbkNhbmNlbENsaWNrKCkge1xuICAgICAgICB0aGlzLnZhbHVlID0gbnVsbFxuICAgICAgICB0aGlzLmVtaXRWYWx1ZUNoYW5nZSgpXG4gICAgfVxuXG4gICAgZm9jdXMoKSB7XG4gICAgICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgICB9XG59XG4iLCI8bWF0LWZvcm0tZmllbGRcbiAgICBmbG9hdExhYmVsPVwiYXV0b1wiXG4gICAgYXBwZWFyYW5jZT1cIm91dGxpbmVcIlxuICAgIHN1YnNjcmlwdFNpemluZz1cImR5bmFtaWNcIlxuPlxuICAgIDxtYXQtbGFiZWw+e3sgbGFiZWwgfX08L21hdC1sYWJlbD5cblxuICAgIDxpbnB1dCBjbGFzcz1cInNlYXJjaC1pbnB1dFwiICNpbnB1dFxuICAgICAgICBtYXRJbnB1dFxuICAgICAgICBbdmFsdWVdPVwidmFsdWUgfHwgJydcIlxuICAgICAgICAoaW5wdXQpPVwib25JbnB1dCggJGV2ZW50IClcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgID5cblxuICAgIEBpZiAoIGhpbnQgKSB7XG4gICAgICAgIDxtYXQtaGludD57eyBoaW50IH19PC9tYXQtaGludD5cbiAgICB9XG5cbiAgICBAaWYgKCB2YWx1ZSApIHtcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNhbmNlbFwiXG4gICAgICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICAgIG1hdFN1ZmZpeFxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2FuY2VsQ2xpY2soJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5yY2wtaWNvbj5jbG9zZTwvbnJjbC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICB9ICAgICAgICAgICAgICAgIFxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
@@ -4,6 +4,7 @@ import { booleanAttribute, ChangeDetectionStrategy, ChangeDetectorRef, Component
4
4
  import { FormControl } from "@angular/forms";
5
5
  import { fromEvent } from "rxjs";
6
6
  import { filter } from "rxjs/operators";
7
+ import { NrclBase } from "../../directives/nrcl.base";
7
8
  import * as i0 from "@angular/core";
8
9
  import * as i1 from "@angular/forms";
9
10
  import * as i2 from "@angular/material/button";
@@ -21,8 +22,9 @@ import * as i7 from "../icon/icon.component";
21
22
  * - Tooltips for long descriptions
22
23
  * - Summary display of selected items
23
24
  */
24
- export class FilterSelectComponent {
25
+ export class FilterSelectComponent extends NrclBase {
25
26
  constructor() {
27
+ super(...arguments);
26
28
  this.placeholder = 'Filter...';
27
29
  this.selectMax = 0;
28
30
  this.tooltips = true;
@@ -230,8 +232,8 @@ export class FilterSelectComponent {
230
232
  descriptionForCode(code) {
231
233
  return this.options.find(o => o.code == code)?.description;
232
234
  }
233
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
234
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FilterSelectComponent, selector: "nrcl-filter-select", inputs: { label: "label", placeholder: "placeholder", hint: "hint", options: "options", value: "value", selectMax: ["selectMax", "selectMax", numberAttribute], tooltips: ["tooltips", "tooltips", booleanAttribute], summary: ["summary", "summary", booleanAttribute], clear: ["clear", "clear", booleanAttribute], filter: ["filter", "filter", booleanAttribute] }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.has-value": "hasValue", "class.is-open": "isOpen", "class.is-closed": "!isOpen", "class.use-filter": "filter" } }, viewQueries: [{ propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true, read: ElementRef }, { propertyName: "filterInput", first: true, predicate: ["filterInput"], descendants: true }, { propertyName: "overlayTemplate", first: true, predicate: ["overlayTemplate"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<mat-form-field #trigger\n [floatLabel]=\"floatLabel\"\n appearance=\"outline\"\n subscriptSizing=\"dynamic\"\n>\n @if ( label ) {\n <mat-label>{{ label }}</mat-label>\n }\n\n <input class=\"filter-input\" #searchInput\n matInput \n [placeholder]=\"placeholder\" \n [value]=\"inputValue\"\n (input)=\"onInput( $event )\"\n (keydown.escape)=\"close()\"\n (focus)=\"onInputFocus()\"\n [matTooltip]=\"inputValue\"\n [readonly]=\"!filter\"\n >\n\n @if ( isOpen ) {\n <button class=\"cancel\"\n mat-icon-button\n matSuffix\n (click)=\"onCloseClick($event); $event.stopPropagation()\"\n >\n <nrcl-icon>arrow_drop_up</nrcl-icon>\n </button>\n }\n @else if ( selection?.value?.length > 0 && clear ) {\n <button class=\"cancel\"\n mat-icon-button\n matSuffix\n (click)=\"onCancelClick($event); $event.stopPropagation()\"\n >\n <nrcl-icon>close</nrcl-icon>\n </button>\n }\n @else {\n <button class=\"cancel\"\n mat-icon-button\n matSuffix\n >\n <nrcl-icon>arrow_drop_down</nrcl-icon>\n </button>\n } \n\n @if ( hint ) {\n <mat-hint>{{ hint }}</mat-hint>\n }\n</mat-form-field> \n\n<ng-template #overlayTemplate>\n <div class=\"filter-select-options\" [class.multiple]=\"!single\" [class.single]=\"single\">\n @if ( !isFiltered && !single && summary ) {\n @if ( selection?.value?.length > 0 && selection?.value?.length < options?.length ) {\n <div class=\"selection-overview\">\n <div class=\"summary\">{{ selection?.value?.length }} selected of {{ options?.length }}</div>\n\n <mat-selection-list\n (selectionChange)=\"onUpperSelectionChange( $event )\"\n >\n @for ( code of selection?.value; track code ) {\n <mat-list-option \n [value]=\"code\" \n togglePosition=\"before\"\n selected\n [matTooltip]=\"tooltips ? descriptionForCode( code ) : null\"\n matTooltipPosition=\"after\"\n >\n {{ descriptionForCode( code ) }}\n </mat-list-option>\n }\n </mat-selection-list>\n </div>\n }\n\n @if ( selection?.value?.length == options?.length ) {\n <div class=\"selection-overview\">\n <div class=\"summary\">All options selected</div>\n </div>\n }\n }\n\n <mat-selection-list\n [formControl]=\"selection\"\n (selectionChange)=\"onSelectionChange( $event )\"\n [multiple]=\"!single\"\n hideSingleSelectionIndicator\n >\n @for ( option of options; track option ) {\n <mat-list-option [class.hide]=\"!matchesFilter( option )\"\n [value]=\"option.code\" \n togglePosition=\"before\" \n [matTooltip]=\"tooltips ? option.description : null\"\n matTooltipPosition=\"after\" \n >\n {{ option.description }}\n </mat-list-option>\n }\n </mat-selection-list>\n </div>\n</ng-template>\n", styles: ["::ng-deep :root{--nrcl-filter-select-width: var( --nrcl-filter-width-default )}:host{--mat-form-field-container-height: calc( var( --nrcl-filter-height-default ) - 4px );--mat-form-field-container-vertical-padding: 8px;--mat-form-field-container-text-size: 15px;--mdc-outlined-text-field-focus-label-text-color: black;--mdc-outlined-text-field-hover-label-text-color: black;width:var(--nrcl-filter-select-width, var(--nrcl-filter-width-default));display:block}:host.has-value{--mdc-outlined-text-field-label-text-color: black}:host ::ng-deep .mat-mdc-form-field{width:100%}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper{background-color:#fff;height:var(--nrcl-filter-height-default);cursor:pointer}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix{width:var(--nrcl-filter-select-width, var(--nrcl-filter-width-default))}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix .filter-input{cursor:pointer}:host.is-open.use-filter ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix .filter-input{cursor:text}:host .cancel{padding:0;width:calc(var(--nrcl-filter-height-default) - 2px);height:calc(var(--nrcl-filter-height-default) - 2px);display:flex;justify-content:center;align-items:center;cursor:default}::ng-deep .filter-select-options{--mdc-list-list-item-selected-container-color: #007bff;font-family:var(--nrcl-font-family);overflow-x:hidden;overflow-y:auto;padding:0;background:#fff;color:#000;border:1px solid #aaa;border-radius:4px;font-size:var(--nrcl-font-size);pointer-events:all;box-shadow:0 4px 5px #00000026;display:block;width:100%}::ng-deep .filter-select-options .selection-overview{background-color:#eee;border-bottom:1px solid black}::ng-deep .filter-select-options .selection-overview .summary{padding-top:4px;padding-left:4px;font-size:14px;color:#000000bc;font-family:var(--nrcl-font-family)}::ng-deep .filter-select-options .mat-mdc-selection-list{padding-top:0;padding-bottom:0}::ng-deep .filter-select-options .mat-mdc-selection-list .mat-mdc-list-option{height:30px;font-size:var(--nrcl-font-size);padding-left:4px;padding-right:8px}::ng-deep .filter-select-options .mat-mdc-selection-list .mat-mdc-list-option.hide{display:none}::ng-deep .filter-select-options .mat-mdc-selection-list .mat-mdc-list-option .mdc-list-item__start{margin:0;padding:0 8px}::ng-deep .filter-select-options .mat-mdc-selection-list .mat-mdc-list-option .mdc-list-item__primary-text{flex-grow:1;font-size:var(--nrcl-font-size)}::ng-deep .filter-select-options .mat-mdc-selection-list .mat-mdc-list-option.mdc-list-item--selected .mdc-list-item__primary-text{color:#fff}::ng-deep .filter-select-options.single .mat-mdc-selection-list .mat-mdc-list-option{padding-left:12px}\n"], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatSelectionList, selector: "mat-selection-list", inputs: ["color", "compareWith", "multiple", "hideSingleSelectionIndicator", "disabled"], outputs: ["selectionChange"], exportAs: ["matSelectionList"] }, { kind: "component", type: i5.MatListOption, selector: "mat-list-option", inputs: ["togglePosition", "checkboxPosition", "color", "value", "selected"], outputs: ["selectedChange"], exportAs: ["matListOption"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i7.IconComponent, selector: "nrcl-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
235
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterSelectComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
236
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FilterSelectComponent, selector: "nrcl-filter-select", inputs: { label: "label", placeholder: "placeholder", hint: "hint", options: "options", value: "value", selectMax: ["selectMax", "selectMax", numberAttribute], tooltips: ["tooltips", "tooltips", booleanAttribute], summary: ["summary", "summary", booleanAttribute], clear: ["clear", "clear", booleanAttribute], filter: ["filter", "filter", booleanAttribute] }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.has-value": "hasValue", "class.is-open": "isOpen", "class.is-closed": "!isOpen", "class.use-filter": "filter" } }, viewQueries: [{ propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true, read: ElementRef }, { propertyName: "filterInput", first: true, predicate: ["filterInput"], descendants: true }, { propertyName: "overlayTemplate", first: true, predicate: ["overlayTemplate"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<mat-form-field #trigger\n [floatLabel]=\"floatLabel\"\n appearance=\"outline\"\n subscriptSizing=\"dynamic\"\n>\n @if ( label ) {\n <mat-label>{{ label }}</mat-label>\n }\n\n <input class=\"filter-input\" #searchInput\n matInput \n [placeholder]=\"placeholder\" \n [value]=\"inputValue\"\n (input)=\"onInput( $event )\"\n (keydown.escape)=\"close()\"\n (focus)=\"onInputFocus()\"\n [matTooltip]=\"inputValue\"\n [readonly]=\"!filter\"\n >\n\n @if ( isOpen ) {\n <button class=\"cancel\"\n mat-icon-button\n matSuffix\n (click)=\"onCloseClick($event); $event.stopPropagation()\"\n >\n <nrcl-icon>arrow_drop_up</nrcl-icon>\n </button>\n }\n @else if ( selection?.value?.length > 0 && clear ) {\n <button class=\"cancel\"\n mat-icon-button\n matSuffix\n (click)=\"onCancelClick($event); $event.stopPropagation()\"\n >\n <nrcl-icon>close</nrcl-icon>\n </button>\n }\n @else {\n <button class=\"cancel\"\n mat-icon-button\n matSuffix\n >\n <nrcl-icon>arrow_drop_down</nrcl-icon>\n </button>\n } \n\n @if ( hint ) {\n <mat-hint>{{ hint }}</mat-hint>\n }\n</mat-form-field> \n\n<ng-template #overlayTemplate>\n <div class=\"filter-select-options\" [class.multiple]=\"!single\" [class.single]=\"single\">\n @if ( !isFiltered && !single && summary ) {\n @if ( selection?.value?.length > 0 && selection?.value?.length < options?.length ) {\n <div class=\"selection-overview\">\n <div class=\"summary\">{{ selection?.value?.length }} selected of {{ options?.length }}</div>\n\n <mat-selection-list\n (selectionChange)=\"onUpperSelectionChange( $event )\"\n >\n @for ( code of selection?.value; track code ) {\n <mat-list-option \n [value]=\"code\" \n togglePosition=\"before\"\n selected\n [matTooltip]=\"tooltips ? descriptionForCode( code ) : null\"\n matTooltipPosition=\"after\"\n >\n {{ descriptionForCode( code ) }}\n </mat-list-option>\n }\n </mat-selection-list>\n </div>\n }\n\n @if ( selection?.value?.length == options?.length ) {\n <div class=\"selection-overview\">\n <div class=\"summary\">All options selected</div>\n </div>\n }\n }\n\n <mat-selection-list\n [formControl]=\"selection\"\n (selectionChange)=\"onSelectionChange( $event )\"\n [multiple]=\"!single\"\n hideSingleSelectionIndicator\n >\n @for ( option of options; track option ) {\n <mat-list-option [class.hide]=\"!matchesFilter( option )\"\n [value]=\"option.code\" \n togglePosition=\"before\" \n [matTooltip]=\"tooltips ? option.description : null\"\n matTooltipPosition=\"after\" \n >\n {{ option.description }}\n </mat-list-option>\n }\n </mat-selection-list>\n </div>\n</ng-template>\n", styles: ["::ng-deep :root{--nrcl-filter-select-width: var( --nrcl-filter-width-default )}:host{--mat-form-field-container-height: calc( var( --nrcl-filter-height-default ) - 4px );--mat-form-field-container-vertical-padding: 8px;--mat-form-field-container-text-size: 15px;--mdc-outlined-text-field-focus-label-text-color: black;--mdc-outlined-text-field-hover-label-text-color: black;width:var(--nrcl-filter-select-width, var(--nrcl-filter-width-default));display:block}:host.has-value{--mdc-outlined-text-field-label-text-color: black}:host ::ng-deep .mat-mdc-form-field{width:100%}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper{background-color:#fff;height:var(--nrcl-filter-height-default);cursor:pointer}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix{width:var(--nrcl-filter-select-width, var(--nrcl-filter-width-default))}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix .filter-input{cursor:pointer}:host.is-open.use-filter ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-infix .filter-input{cursor:text}:host .cancel{padding:0;width:calc(var(--nrcl-filter-height-default) - 2px);height:calc(var(--nrcl-filter-height-default) - 2px);display:flex;justify-content:center;align-items:center;cursor:default}::ng-deep .filter-select-options{--mdc-list-list-item-selected-container-color: #007bff;font-family:var(--nrcl-font-family);overflow-x:hidden;overflow-y:auto;padding:0;background:#fff;color:#000;border:1px solid #aaa;border-radius:4px;font-size:var(--nrcl-font-size);pointer-events:all;box-shadow:0 4px 5px #00000026;display:block;width:100%}::ng-deep .filter-select-options .selection-overview{background-color:#eee;border-bottom:1px solid black}::ng-deep .filter-select-options .selection-overview .summary{padding-top:4px;padding-left:4px;font-size:14px;color:#000000bc;font-family:var(--nrcl-font-family)}::ng-deep .filter-select-options .mat-mdc-selection-list{padding-top:0;padding-bottom:0}::ng-deep .filter-select-options .mat-mdc-selection-list .mat-mdc-list-option{height:30px;font-size:var(--nrcl-font-size);padding-left:4px;padding-right:8px}::ng-deep .filter-select-options .mat-mdc-selection-list .mat-mdc-list-option.hide{display:none}::ng-deep .filter-select-options .mat-mdc-selection-list .mat-mdc-list-option .mdc-list-item__start{margin:0;padding:0 8px}::ng-deep .filter-select-options .mat-mdc-selection-list .mat-mdc-list-option .mdc-list-item__primary-text{flex-grow:1;font-size:var(--nrcl-font-size)}::ng-deep .filter-select-options .mat-mdc-selection-list .mat-mdc-list-option.mdc-list-item--selected .mdc-list-item__primary-text{color:#fff}::ng-deep .filter-select-options.single .mat-mdc-selection-list .mat-mdc-list-option{padding-left:12px}\n"], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatSelectionList, selector: "mat-selection-list", inputs: ["color", "compareWith", "multiple", "hideSingleSelectionIndicator", "disabled"], outputs: ["selectionChange"], exportAs: ["matSelectionList"] }, { kind: "component", type: i5.MatListOption, selector: "mat-list-option", inputs: ["togglePosition", "checkboxPosition", "color", "value", "selected"], outputs: ["selectedChange"], exportAs: ["matListOption"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i7.IconComponent, selector: "nrcl-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
235
237
  }
236
238
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterSelectComponent, decorators: [{
237
239
  type: Component,
@@ -278,4 +280,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
278
280
  type: ViewChild,
279
281
  args: ['overlayTemplate']
280
282
  }] } });
281
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uci1uZ3gtY29tcG9uZW50LWxpYi9zcmMvY29tcG9uZW50cy9maWx0ZXItc2VsZWN0L2ZpbHRlci1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZmlsdGVyLXNlbGVjdC9maWx0ZXItc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUNILGdCQUFnQixFQUNoQix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsZUFBZSxFQUVmLE1BQU0sRUFHTixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ25CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBSXhDOzs7Ozs7OztHQVFHO0FBYUgsTUFBTSxPQUFPLHFCQUFxQjtJQVpsQztRQWNhLGdCQUFXLEdBQUcsV0FBVyxDQUFBO1FBSU8sY0FBUyxHQUFHLENBQUMsQ0FBQTtRQUNaLGFBQVEsR0FBRyxJQUFJLENBQUE7UUFDZixZQUFPLEdBQUcsSUFBSSxDQUFBO1FBQ2QsVUFBSyxHQUFHLElBQUksQ0FBQTtRQUNaLFdBQU0sR0FBRyxJQUFJLENBQUE7UUFFN0MsZ0JBQVcs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QUFTO3VCQUFFLFNBQVMsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBQ2YsV0FBVztzQkFBdEMsU0FBUzt1QkFBRSxhQUFhO2dCQUNPLGVBQWU7c0JBQTlDLFNBQVM7dUJBQUUsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVJlZiB9IGZyb20gXCJAYW5ndWxhci9jZGsvb3ZlcmxheVwiO1xuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL3BvcnRhbFwiO1xuaW1wb3J0IHtcbiAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgbnVtYmVyQXR0cmlidXRlLFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPdXRwdXQsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IE1hdFNlbGVjdGlvbkxpc3RDaGFuZ2UgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdFwiO1xuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgQ29kZURlc2NyaXB0aW9uIH0gZnJvbSBcIi4uLy4uL3V0aWxzL2NvZGUtdGFibGUudXRpbFwiO1xuXG5cbi8qKlxuICogQSBmaWx0ZXIgc2VsZWN0IGNvbXBvbmVudCB0aGF0IGFsbG93cyB1c2VycyB0byBzZWxlY3QgbXVsdGlwbGUgb3B0aW9ucyBmcm9tIGEgbGlzdC5cbiAqXG4gKiBGZWF0dXJlczpcbiAqIC0gTXVsdGktc2VsZWN0IHdpdGggb3B0aW9uYWwgbWF4aW11bSBzZWxlY3Rpb24gbGltaXRcbiAqIC0gU2VhcmNoL2ZpbHRlciBmdW5jdGlvbmFsaXR5XG4gKiAtIFRvb2x0aXBzIGZvciBsb25nIGRlc2NyaXB0aW9uc1xuICogLSBTdW1tYXJ5IGRpc3BsYXkgb2Ygc2VsZWN0ZWQgaXRlbXNcbiAqL1xuQENvbXBvbmVudCgge1xuICAgIHNlbGVjdG9yOiBcIm5yY2wtZmlsdGVyLXNlbGVjdFwiLFxuICAgIHRlbXBsYXRlVXJsOiBcIi4vZmlsdGVyLXNlbGVjdC5jb21wb25lbnQuaHRtbFwiLFxuICAgIHN0eWxlVXJsOiBcIi4vZmlsdGVyLXNlbGVjdC5jb21wb25lbnQuc2Nzc1wiLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tjbGFzcy5oYXMtdmFsdWVdJzogXCJoYXNWYWx1ZVwiLFxuICAgICAgICAnW2NsYXNzLmlzLW9wZW5dJzogXCJpc09wZW5cIixcbiAgICAgICAgJ1tjbGFzcy5pcy1jbG9zZWRdJzogXCIhaXNPcGVuXCIsXG4gICAgICAgICdbY2xhc3MudXNlLWZpbHRlcl0nOiBcImZpbHRlclwiLFxuICAgIH1cbn0gKVxuZXhwb3J0IGNsYXNzIEZpbHRlclNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgQElucHV0KCkgbGFiZWxcbiAgICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICdGaWx0ZXIuLi4nXG4gICAgQElucHV0KCkgaGludFxuICAgIEBJbnB1dCgpIG9wdGlvbnM6IENvZGVEZXNjcmlwdGlvbltdXG4gICAgQElucHV0KCkgdmFsdWU6IHN0cmluZ1tdXG4gICAgQElucHV0KCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0gKSBzZWxlY3RNYXggPSAwXG4gICAgQElucHV0KCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9ICkgdG9vbHRpcHMgPSB0cnVlXG4gICAgQElucHV0KCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9ICkgc3VtbWFyeSA9IHRydWVcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0gKSBjbGVhciA9IHRydWVcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0gKSBmaWx0ZXIgPSB0cnVlXG5cbiAgICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZ1tdPigpO1xuXG4gICAgZmxvYXRMYWJlbCA9ICdhdXRvJ1xuICAgIGlucHV0VmFsdWVcbiAgICBvcGVuaW5nVmFsdWVcbiAgICBpc0ZpbHRlcmVkID0gZmFsc2VcbiAgICBpc09wZW4gPSBmYWxzZVxuICAgIGhhc1ZhbHVlID0gZmFsc2VcbiAgICBvdmVybGF5UmVmOiBPdmVybGF5UmVmXG4gICAgc2VsZWN0aW9uID0gbmV3IEZvcm1Db250cm9sKClcbiAgICBtYXRjaDogKCBvcHRpb246IENvZGVEZXNjcmlwdGlvbiApID0+IGJvb2xlYW4gPSAoIG8gKSA9PiB0cnVlXG4gICAgY2xpY2tTdWJzY3JpcHRpb25cblxuICAgIGNoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KCBDaGFuZ2VEZXRlY3RvclJlZiApXG4gICAgb3ZlcmxheSA9IGluamVjdCggT3ZlcmxheSApXG4gICAgdmlld0NvbnRhaW5lclJlZiA9IGluamVjdCggVmlld0NvbnRhaW5lclJlZiApXG5cbiAgICBAVmlld0NoaWxkKCAndHJpZ2dlcicsIHsgcmVhZDogRWxlbWVudFJlZiB9ICkgdHJpZ2dlciE6IEVsZW1lbnRSZWZcbiAgICBAVmlld0NoaWxkKCAnZmlsdGVySW5wdXQnICkgZmlsdGVySW5wdXQhOiBFbGVtZW50UmVmXG4gICAgQFZpZXdDaGlsZCggJ292ZXJsYXlUZW1wbGF0ZScgKSBvdmVybGF5VGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+XG5cbiAgICBuZ09uQ2hhbmdlcyggY2hhbmdlczogU2ltcGxlQ2hhbmdlcyApOiB2b2lkIHtcbiAgICAgICAgaWYgKCB0aGlzLmlzT3BlbiApIHJldHVyblxuXG4gICAgICAgIGlmICggY2hhbmdlcy5vcHRpb25zICkge1xuICAgICAgICAgICAgbGV0IHB2ID0gSlNPTi5zdHJpbmdpZnkoIGNoYW5nZXMub3B0aW9ucy5wcmV2aW91c1ZhbHVlIClcbiAgICAgICAgICAgIGxldCBjdiA9IEpTT04uc3RyaW5naWZ5KCBjaGFuZ2VzLm9wdGlvbnMuY3VycmVudFZhbHVlIClcbiAgICAgICAgICAgIGlmICggcHYgIT0gY3YgKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb24uc2V0VmFsdWUoIG51bGwgKVxuICAgICAgICAgICAgICAgIHRoaXMuc2V0SW5wdXRUb1NlbGVjdGlvbigpXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRGaWx0ZXIoKVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCBjaGFuZ2VzLnZhbHVlICkge1xuICAgICAgICAgICAgbGV0IHB2ID0gSlNPTi5zdHJpbmdpZnkoIGNoYW5nZXMudmFsdWUucHJldmlvdXNWYWx1ZSApXG4gICAgICAgICAgICBsZXQgY3YgPSBKU09OLnN0cmluZ2lmeSggY2hhbmdlcy52YWx1ZS5jdXJyZW50VmFsdWUgKVxuICAgICAgICAgICAgaWYgKCBwdiAhPSBjdiApIHtcbiAgICAgICAgICAgICAgICBpZiAoIHRoaXMudmFsdWUgKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGFzVmFsdWUgPSB0aGlzLnZhbHVlLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb24uc2V0VmFsdWUoIHRoaXMudmFsdWUgKVxuICAgICAgICAgICAgICAgICAgICBpZiAoIHRoaXMuc2VsZWN0TWF4ID4gMSAmJiB0aGlzLnZhbHVlLmxlbmd0aCA+PSB0aGlzLnNlbGVjdE1heCApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uLmRpc2FibGUoKVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb24uZW5hYmxlKClcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oYXNWYWx1ZSA9IGZhbHNlXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uLnNldFZhbHVlKCBudWxsIClcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb24uZW5hYmxlKClcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0aGlzLnNldEZpbHRlcigpXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRJbnB1dFRvU2VsZWN0aW9uKClcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IHNpbmdsZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0TWF4ID09IDFcbiAgICB9XG5cbiAgICBlbWl0VmFsdWVDaGFuZ2UoKSB7XG4gICAgICAgIHRoaXMuaGFzVmFsdWUgPSAoIHRoaXMuc2VsZWN0aW9uLnZhbHVlIHx8IFtdICkubGVuZ3RoID4gMFxuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoIHRoaXMuc2VsZWN0aW9uLnZhbHVlIHx8IFtdIClcbiAgICB9XG5cbiAgICBvcGVuKCkge1xuICAgICAgICBpZiAoIHRoaXMuaXNPcGVuICkgcmV0dXJuXG5cbiAgICAgICAgdGhpcy5pc09wZW4gPSB0cnVlXG4gICAgICAgIHRoaXMuZmxvYXRMYWJlbCA9ICdhbHdheXMnXG4gICAgICAgIGlmICggdGhpcy5maWx0ZXIgKSB7XG4gICAgICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSAnJ1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuXG4gICAgICAgIH1cblxuICAgICAgICAvLyBDcmVhdGUgb3ZlcmxheVxuICAgICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5XG4gICAgICAgICAgICAucG9zaXRpb24oKVxuICAgICAgICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8oIHRoaXMudHJpZ2dlciApXG4gICAgICAgICAgICAud2l0aFBvc2l0aW9ucyggW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgICAgICAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgICAgICAgICAgICAgICBvdmVybGF5WTogJ3RvcCcsXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldFk6IDBcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgICAgICAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgICAgICAgICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldFk6IDBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdIClcbiAgICAgICAgICAgIC53aXRoUHVzaCggZmFsc2UgKVxuXG4gICAgICAgIGNvbnN0IHNjcm9sbFN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbigpXG5cbiAgICAgICAgdGhpcy5vdmVybGF5UmVmID0gdGhpcy5vdmVybGF5LmNyZWF0ZSgge1xuICAgICAgICAgICAgcG9zaXRpb25TdHJhdGVneSxcbiAgICAgICAgICAgIHNjcm9sbFN0cmF0ZWd5LFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IGZhbHNlLFxuICAgICAgICAgICAgbWF4V2lkdGg6IHRoaXMudHJpZ2dlci5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoICogMixcbiAgICAgICAgICAgIG1pbldpZHRoOiB0aGlzLnRyaWdnZXIubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCxcbiAgICAgICAgICAgIG1heEhlaWdodDogMzAwLFxuICAgICAgICB9IClcblxuICAgICAgICAvLyBBdHRhY2ggdGVtcGxhdGVcbiAgICAgICAgY29uc3QgcG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKCB0aGlzLm92ZXJsYXlUZW1wbGF0ZSwgdGhpcy52aWV3Q29udGFpbmVyUmVmIClcbiAgICAgICAgdGhpcy5vdmVybGF5UmVmLmF0dGFjaCggcG9ydGFsIClcblxuICAgICAgICAvLyBMaXN0ZW4gdG8gZG9jdW1lbnQgY2xpY2tzIGFmdGVyIGEgc21hbGwgZGVsYXkgdG8gYXZvaWQgY2xvc2luZyBpbW1lZGlhdGVseVxuICAgICAgICBzZXRUaW1lb3V0KCAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsaWNrU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KCBkb2N1bWVudCwgJ2NsaWNrJyApXG4gICAgICAgICAgICAgICAgLnBpcGUoIGZpbHRlciggKCBldmVudDogTW91c2VFdmVudCApID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2xpY2tUYXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdHJpZ2dlckVsID0gdGhpcy50cmlnZ2VyLm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3ZlcmxheUVsID0gdGhpcy5vdmVybGF5UmVmPy5vdmVybGF5RWxlbWVudFxuXG4gICAgICAgICAgICAgICAgICAgIC8vIE9ubHkgY2xvc2UgaWYgY2xpY2sgaXMgb3V0c2lkZSBib3RoIHRyaWdnZXIgYW5kIG92ZXJsYXlcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICF0cmlnZ2VyRWwuY29udGFpbnMoY2xpY2tUYXJnZXQpXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiAhb3ZlcmxheUVsPy5jb250YWlucyhjbGlja1RhcmdldClcbiAgICAgICAgICAgICAgICB9ICkgKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpXG4gICAgICAgICAgICAgICAgfSApXG4gICAgICAgIH0gKVxuXG4gICAgICAgIC8vIEZvY3VzIGlucHV0IGFmdGVyIG92ZXJsYXkgaXMgYXR0YWNoZWRcbiAgICAgICAgc2V0VGltZW91dCggKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJJbnB1dD8ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuXG4gICAgICAgICAgICAvLyBwcmV2ZW50IGxpc3QgZnJvbSBzY3JvbGxpbmcgd2hlbiBzZWxlY3Rpb24gY2hhbmdlc1xuICAgICAgICAgICAgdGhpcy5vdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LmNoaWxkcmVuWzBdLnNjcm9sbCggMCwgMSApXG4gICAgICAgIH0gKVxuXG4gICAgICAgIHRoaXMuc2V0RmlsdGVyKClcblxuICAgICAgICB0aGlzLm9wZW5pbmdWYWx1ZSA9IEpTT04uc3RyaW5naWZ5KCB0aGlzLnNlbGVjdGlvbi52YWx1ZSApXG4gICAgfVxuXG4gICAgY2xvc2UoKSB7XG4gICAgICAgIGlmICggIXRoaXMuaXNPcGVuICkgcmV0dXJuXG5cbiAgICAgICAgdGhpcy5pc09wZW4gPSBmYWxzZVxuICAgICAgICB0aGlzLnNldElucHV0VG9TZWxlY3Rpb24oKVxuICAgICAgICB0aGlzLmZsb2F0TGFiZWwgPSAnYXV0bydcblxuICAgICAgICBpZiAoIHRoaXMuY2xpY2tTdWJzY3JpcHRpb24gKSB7XG4gICAgICAgICAgICB0aGlzLmNsaWNrU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcbiAgICAgICAgICAgIHRoaXMuY2xpY2tTdWJzY3JpcHRpb24gPSBudWxsXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIHRoaXMub3ZlcmxheVJlZiApIHtcbiAgICAgICAgICAgIHRoaXMub3ZlcmxheVJlZi5kaXNwb3NlKClcbiAgICAgICAgICAgIHRoaXMub3ZlcmxheVJlZiA9IG51bGxcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpXG5cbiAgICAgICAgbGV0IGNsb3NpbmdWYWx1ZSA9IEpTT04uc3RyaW5naWZ5KCB0aGlzLnNlbGVjdGlvbi52YWx1ZSApXG4gICAgICAgIGlmICggdGhpcy5vcGVuaW5nVmFsdWUgIT0gY2xvc2luZ1ZhbHVlIClcbiAgICAgICAgICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlKClcbiAgICB9XG5cbiAgICBzZXRJbnB1dFRvU2VsZWN0aW9uKCkge1xuICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLnNlbGVjdGlvbj8udmFsdWU/Lm1hcCggYyA9PiB0aGlzLmRlc2NyaXB0aW9uRm9yQ29kZSggYyApICkuam9pbiggJywgJyApIHx8IG51bGxcbiAgICB9XG5cbiAgICBvbklucHV0KCBldj8pIHtcbiAgICAgICAgdGhpcy5zZXRGaWx0ZXIoIGV2Py50YXJnZXQ/LnZhbHVlIClcbiAgICB9XG5cbiAgICBzZXRGaWx0ZXIoIHRleHQ/OiBzdHJpbmcgKSB7XG4gICAgICAgIGxldCB0ID0gdGV4dD8udHJpbSgpLnRvTG93ZXJDYXNlKClcblxuICAgICAgICBpZiAoIHQgKSB7XG4gICAgICAgICAgICB0aGlzLmlzRmlsdGVyZWQgPSB0cnVlXG4gICAgICAgICAgICB0aGlzLm1hdGNoID0gKCBvcHRpb24gKSA9PiBvcHRpb24uZGVzY3JpcHRpb24udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyggdCApXG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmlzRmlsdGVyZWQgPSBmYWxzZVxuICAgICAgICAgICAgdGhpcy5tYXRjaCA9ICggbyApID0+IHRydWVcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpXG4gICAgfVxuXG4gICAgbWF0Y2hlc0ZpbHRlciggb3B0aW9uOiBDb2RlRGVzY3JpcHRpb24gKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm1hdGNoKCBvcHRpb24gKVxuICAgIH1cblxuICAgIG9uU2VsZWN0aW9uQ2hhbmdlKCBldiApIHtcbiAgICAgICAgaWYgKCB0aGlzLnNpbmdsZSApIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2UoKVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJJbnB1dD8ubmF0aXZlRWxlbWVudC5mb2N1cygpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIHRoaXMuc2VsZWN0TWF4ID4gMSApIHtcbiAgICAgICAgICAgIGlmICggdGhpcy5zZWxlY3Rpb24udmFsdWUubGVuZ3RoID49IHRoaXMuc2VsZWN0TWF4ICkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uLmRpc2FibGUoKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb24uZW5hYmxlKClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpXG4gICAgfVxuXG4gICAgb25VcHBlclNlbGVjdGlvbkNoYW5nZSggZXY6IE1hdFNlbGVjdGlvbkxpc3RDaGFuZ2UgKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgbGV0IGNvZGVzID0gdGhpcy5zZWxlY3Rpb24udmFsdWUuZmlsdGVyKCBjID0+IGMgIT0gZXYub3B0aW9uc1sgMCBdLnZhbHVlIClcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uLnNldFZhbHVlKCBjb2RlcyApXG5cbiAgICAgICAgICAgIHRoaXMub25TZWxlY3Rpb25DaGFuZ2UoIGV2IClcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICBvbkNhbmNlbENsaWNrKCkge1xuICAgICAgICB0aGlzLnNlbGVjdGlvbi5zZXRWYWx1ZSggbnVsbCApXG4gICAgICAgIHRoaXMuc2VsZWN0aW9uLmVuYWJsZSgpXG4gICAgICAgIHRoaXMuc2V0SW5wdXRUb1NlbGVjdGlvbigpXG4gICAgICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlKClcbiAgICB9XG5cbiAgICBvbklucHV0Rm9jdXMoKSB7XG4gICAgICAgIHRoaXMub3BlbigpXG4gICAgfVxuXG4gICAgb25DbG9zZUNsaWNrKCkge1xuICAgICAgICB0aGlzLmNsb3NlKClcbiAgICB9XG5cbiAgICBkZXNjcmlwdGlvbkZvckNvZGUoIGNvZGU6IHN0cmluZyApOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zLmZpbmQoIG8gPT4gby5jb2RlID09IGNvZGUgKT8uZGVzY3JpcHRpb25cbiAgICB9XG59XG4iLCI8bWF0LWZvcm0tZmllbGQgI3RyaWdnZXJcbiAgICBbZmxvYXRMYWJlbF09XCJmbG9hdExhYmVsXCJcbiAgICBhcHBlYXJhbmNlPVwib3V0bGluZVwiXG4gICAgc3Vic2NyaXB0U2l6aW5nPVwiZHluYW1pY1wiXG4+XG4gICAgQGlmICggbGFiZWwgKSB7XG4gICAgICAgIDxtYXQtbGFiZWw+e3sgbGFiZWwgfX08L21hdC1sYWJlbD5cbiAgICB9XG5cbiAgICA8aW5wdXQgY2xhc3M9XCJmaWx0ZXItaW5wdXRcIiAjc2VhcmNoSW5wdXRcbiAgICAgICAgbWF0SW5wdXQgXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFxuICAgICAgICBbdmFsdWVdPVwiaW5wdXRWYWx1ZVwiXG4gICAgICAgIChpbnB1dCk9XCJvbklucHV0KCAkZXZlbnQgKVwiXG4gICAgICAgIChrZXlkb3duLmVzY2FwZSk9XCJjbG9zZSgpXCJcbiAgICAgICAgKGZvY3VzKT1cIm9uSW5wdXRGb2N1cygpXCJcbiAgICAgICAgW21hdFRvb2x0aXBdPVwiaW5wdXRWYWx1ZVwiXG4gICAgICAgIFtyZWFkb25seV09XCIhZmlsdGVyXCJcbiAgICA+XG5cbiAgICBAaWYgKCBpc09wZW4gKSB7XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJjYW5jZWxcIlxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBtYXRTdWZmaXhcbiAgICAgICAgICAgIChjbGljayk9XCJvbkNsb3NlQ2xpY2soJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5yY2wtaWNvbj5hcnJvd19kcm9wX3VwPC9ucmNsLWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIH1cbiAgICBAZWxzZSBpZiAoIHNlbGVjdGlvbj8udmFsdWU/Lmxlbmd0aCA+IDAgJiYgY2xlYXIgKSB7XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJjYW5jZWxcIlxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBtYXRTdWZmaXhcbiAgICAgICAgICAgIChjbGljayk9XCJvbkNhbmNlbENsaWNrKCRldmVudCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxucmNsLWljb24+Y2xvc2U8L25yY2wtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNhbmNlbFwiXG4gICAgICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICAgIG1hdFN1ZmZpeFxuICAgICAgICA+XG4gICAgICAgICAgICA8bnJjbC1pY29uPmFycm93X2Ryb3BfZG93bjwvbnJjbC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICB9ICAgICAgICAgICAgICAgIFxuXG4gICAgQGlmICggaGludCApIHtcbiAgICAgICAgPG1hdC1oaW50Pnt7IGhpbnQgfX08L21hdC1oaW50PlxuICAgIH1cbjwvbWF0LWZvcm0tZmllbGQ+ICAgICAgICBcblxuPG5nLXRlbXBsYXRlICNvdmVybGF5VGVtcGxhdGU+XG4gICAgPGRpdiBjbGFzcz1cImZpbHRlci1zZWxlY3Qtb3B0aW9uc1wiIFtjbGFzcy5tdWx0aXBsZV09XCIhc2luZ2xlXCIgW2NsYXNzLnNpbmdsZV09XCJzaW5nbGVcIj5cbiAgICAgICAgQGlmICggIWlzRmlsdGVyZWQgJiYgIXNpbmdsZSAmJiBzdW1tYXJ5ICkge1xuICAgICAgICAgICAgQGlmICggc2VsZWN0aW9uPy52YWx1ZT8ubGVuZ3RoID4gMCAmJiBzZWxlY3Rpb24/LnZhbHVlPy5sZW5ndGggPCBvcHRpb25zPy5sZW5ndGggKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGlvbi1vdmVydmlld1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3VtbWFyeVwiPnt7IHNlbGVjdGlvbj8udmFsdWU/Lmxlbmd0aCB9fSBzZWxlY3RlZCBvZiB7eyBvcHRpb25zPy5sZW5ndGggfX08L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICA8bWF0LXNlbGVjdGlvbi1saXN0XG4gICAgICAgICAgICAgICAgICAgICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cIm9uVXBwZXJTZWxlY3Rpb25DaGFuZ2UoICRldmVudCApXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAoIGNvZGUgb2Ygc2VsZWN0aW9uPy52YWx1ZTsgdHJhY2sgY29kZSApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWxpc3Qtb3B0aW9uIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiY29kZVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2dnbGVQb3NpdGlvbj1cImJlZm9yZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cInRvb2x0aXBzID8gZGVzY3JpcHRpb25Gb3JDb2RlKCBjb2RlICkgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWZ0ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZGVzY3JpcHRpb25Gb3JDb2RlKCBjb2RlICkgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1saXN0LW9wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtc2VsZWN0aW9uLWxpc3Q+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpZiAoIHNlbGVjdGlvbj8udmFsdWU/Lmxlbmd0aCA9PSBvcHRpb25zPy5sZW5ndGggKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGlvbi1vdmVydmlld1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3VtbWFyeVwiPkFsbCBvcHRpb25zIHNlbGVjdGVkPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA8bWF0LXNlbGVjdGlvbi1saXN0XG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwic2VsZWN0aW9uXCJcbiAgICAgICAgICAgIChzZWxlY3Rpb25DaGFuZ2UpPVwib25TZWxlY3Rpb25DaGFuZ2UoICRldmVudCApXCJcbiAgICAgICAgICAgIFttdWx0aXBsZV09XCIhc2luZ2xlXCJcbiAgICAgICAgICAgIGhpZGVTaW5nbGVTZWxlY3Rpb25JbmRpY2F0b3JcbiAgICAgICAgPlxuICAgICAgICAgICAgQGZvciAoIG9wdGlvbiBvZiBvcHRpb25zOyB0cmFjayBvcHRpb24gKSB7XG4gICAgICAgICAgICAgICAgPG1hdC1saXN0LW9wdGlvbiBbY2xhc3MuaGlkZV09XCIhbWF0Y2hlc0ZpbHRlciggb3B0aW9uIClcIlxuICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwib3B0aW9uLmNvZGVcIiBcbiAgICAgICAgICAgICAgICAgICAgdG9nZ2xlUG9zaXRpb249XCJiZWZvcmVcIiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cInRvb2x0aXBzID8gb3B0aW9uLmRlc2NyaXB0aW9uIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFmdGVyXCIgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sgb3B0aW9uLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgPC9tYXQtbGlzdC1vcHRpb24+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvbWF0LXNlbGVjdGlvbi1saXN0PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
283
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uci1uZ3gtY29tcG9uZW50LWxpYi9zcmMvY29tcG9uZW50cy9maWx0ZXItc2VsZWN0L2ZpbHRlci1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZmlsdGVyLXNlbGVjdC9maWx0ZXItc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUNILGdCQUFnQixFQUNoQix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsZUFBZSxFQUVmLE1BQU0sRUFHTixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ25CLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7OztBQUd0RDs7Ozs7Ozs7R0FRRztBQWFILE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxRQUFRO0lBWm5EOztRQWNhLGdCQUFXLEdBQUcsV0FBVyxDQUFBO1FBSU8sY0FBUyxHQUFHLENBQUMsQ0FBQTtRQUNaLGFBQVEsR0FBRyxJQUFJLENBQUE7UUFDZixZQUFPLEdBQUcsSUFBSSxDQUFBO1FBQ2QsVUFB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QWdCLEVBQUU7Z0JBRTdCLFdBQVc7c0JBQXBCLE1BQU07Z0JBaUJ1QyxPQUFPO3NCQUFwRCxTQUFTO3VCQUFFLFNBQVMsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBQ2YsV0FBVztzQkFBdEMsU0FBUzt1QkFBRSxhQUFhO2dCQUNPLGVBQWU7c0JBQTlDLFNBQVM7dUJBQUUsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVJlZiB9IGZyb20gXCJAYW5ndWxhci9jZGsvb3ZlcmxheVwiO1xuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL3BvcnRhbFwiO1xuaW1wb3J0IHtcbiAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgbnVtYmVyQXR0cmlidXRlLFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPdXRwdXQsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IE1hdFNlbGVjdGlvbkxpc3RDaGFuZ2UgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdFwiO1xuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgQ29kZURlc2NyaXB0aW9uIH0gZnJvbSBcIi4uLy4uL3V0aWxzL2NvZGUtdGFibGUudXRpbFwiO1xuaW1wb3J0IHsgTnJjbEJhc2UgfSBmcm9tIFwiLi4vLi4vZGlyZWN0aXZlcy9ucmNsLmJhc2VcIjtcblxuXG4vKipcbiAqIEEgZmlsdGVyIHNlbGVjdCBjb21wb25lbnQgdGhhdCBhbGxvd3MgdXNlcnMgdG8gc2VsZWN0IG11bHRpcGxlIG9wdGlvbnMgZnJvbSBhIGxpc3QuXG4gKlxuICogRmVhdHVyZXM6XG4gKiAtIE11bHRpLXNlbGVjdCB3aXRoIG9wdGlvbmFsIG1heGltdW0gc2VsZWN0aW9uIGxpbWl0XG4gKiAtIFNlYXJjaC9maWx0ZXIgZnVuY3Rpb25hbGl0eVxuICogLSBUb29sdGlwcyBmb3IgbG9uZyBkZXNjcmlwdGlvbnNcbiAqIC0gU3VtbWFyeSBkaXNwbGF5IG9mIHNlbGVjdGVkIGl0ZW1zXG4gKi9cbkBDb21wb25lbnQoIHtcbiAgICBzZWxlY3RvcjogXCJucmNsLWZpbHRlci1zZWxlY3RcIixcbiAgICB0ZW1wbGF0ZVVybDogXCIuL2ZpbHRlci1zZWxlY3QuY29tcG9uZW50Lmh0bWxcIixcbiAgICBzdHlsZVVybDogXCIuL2ZpbHRlci1zZWxlY3QuY29tcG9uZW50LnNjc3NcIixcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBob3N0OiB7XG4gICAgICAgICdbY2xhc3MuaGFzLXZhbHVlXSc6IFwiaGFzVmFsdWVcIixcbiAgICAgICAgJ1tjbGFzcy5pcy1vcGVuXSc6IFwiaXNPcGVuXCIsXG4gICAgICAgICdbY2xhc3MuaXMtY2xvc2VkXSc6IFwiIWlzT3BlblwiLFxuICAgICAgICAnW2NsYXNzLnVzZS1maWx0ZXJdJzogXCJmaWx0ZXJcIixcbiAgICB9XG59IClcbmV4cG9ydCBjbGFzcyBGaWx0ZXJTZWxlY3RDb21wb25lbnQgZXh0ZW5kcyBOcmNsQmFzZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgQElucHV0KCkgbGFiZWxcbiAgICBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICdGaWx0ZXIuLi4nXG4gICAgQElucHV0KCkgaGludFxuICAgIEBJbnB1dCgpIG9wdGlvbnM6IENvZGVEZXNjcmlwdGlvbltdXG4gICAgQElucHV0KCkgdmFsdWU6IHN0cmluZ1tdXG4gICAgQElucHV0KCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0gKSBzZWxlY3RNYXggPSAwXG4gICAgQElucHV0KCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9ICkgdG9vbHRpcHMgPSB0cnVlXG4gICAgQElucHV0KCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9ICkgc3VtbWFyeSA9IHRydWVcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0gKSBjbGVhciA9IHRydWVcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0gKSBmaWx0ZXIgPSB0cnVlXG5cbiAgICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZ1tdPigpO1xuXG4gICAgZmxvYXRMYWJlbCA9ICdhdXRvJ1xuICAgIGlucHV0VmFsdWVcbiAgICBvcGVuaW5nVmFsdWVcbiAgICBpc0ZpbHRlcmVkID0gZmFsc2VcbiAgICBpc09wZW4gPSBmYWxzZVxuICAgIGhhc1ZhbHVlID0gZmFsc2VcbiAgICBvdmVybGF5UmVmOiBPdmVybGF5UmVmXG4gICAgc2VsZWN0aW9uID0gbmV3IEZvcm1Db250cm9sKClcbiAgICBtYXRjaDogKCBvcHRpb246IENvZGVEZXNjcmlwdGlvbiApID0+IGJvb2xlYW4gPSAoIG8gKSA9PiB0cnVlXG4gICAgY2xpY2tTdWJzY3JpcHRpb25cblxuICAgIGNoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KCBDaGFuZ2VEZXRlY3RvclJlZiApXG4gICAgb3ZlcmxheSA9IGluamVjdCggT3ZlcmxheSApXG4gICAgdmlld0NvbnRhaW5lclJlZiA9IGluamVjdCggVmlld0NvbnRhaW5lclJlZiApXG5cbiAgICBAVmlld0NoaWxkKCAndHJpZ2dlcicsIHsgcmVhZDogRWxlbWVudFJlZiB9ICkgdHJpZ2dlciE6IEVsZW1lbnRSZWZcbiAgICBAVmlld0NoaWxkKCAnZmlsdGVySW5wdXQnICkgZmlsdGVySW5wdXQhOiBFbGVtZW50UmVmXG4gICAgQFZpZXdDaGlsZCggJ292ZXJsYXlUZW1wbGF0ZScgKSBvdmVybGF5VGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+XG5cbiAgICBuZ09uQ2hhbmdlcyggY2hhbmdlczogU2ltcGxlQ2hhbmdlcyApOiB2b2lkIHtcbiAgICAgICAgaWYgKCB0aGlzLmlzT3BlbiApIHJldHVyblxuXG4gICAgICAgIGlmICggY2hhbmdlcy5vcHRpb25zICkge1xuICAgICAgICAgICAgbGV0IHB2ID0gSlNPTi5zdHJpbmdpZnkoIGNoYW5nZXMub3B0aW9ucy5wcmV2aW91c1ZhbHVlIClcbiAgICAgICAgICAgIGxldCBjdiA9IEpTT04uc3RyaW5naWZ5KCBjaGFuZ2VzLm9wdGlvbnMuY3VycmVudFZhbHVlIClcbiAgICAgICAgICAgIGlmICggcHYgIT0gY3YgKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb24uc2V0VmFsdWUoIG51bGwgKVxuICAgICAgICAgICAgICAgIHRoaXMuc2V0SW5wdXRUb1NlbGVjdGlvbigpXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRGaWx0ZXIoKVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCBjaGFuZ2VzLnZhbHVlICkge1xuICAgICAgICAgICAgbGV0IHB2ID0gSlNPTi5zdHJpbmdpZnkoIGNoYW5nZXMudmFsdWUucHJldmlvdXNWYWx1ZSApXG4gICAgICAgICAgICBsZXQgY3YgPSBKU09OLnN0cmluZ2lmeSggY2hhbmdlcy52YWx1ZS5jdXJyZW50VmFsdWUgKVxuICAgICAgICAgICAgaWYgKCBwdiAhPSBjdiApIHtcbiAgICAgICAgICAgICAgICBpZiAoIHRoaXMudmFsdWUgKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGFzVmFsdWUgPSB0aGlzLnZhbHVlLmxlbmd0aCA+IDBcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb24uc2V0VmFsdWUoIHRoaXMudmFsdWUgKVxuICAgICAgICAgICAgICAgICAgICBpZiAoIHRoaXMuc2VsZWN0TWF4ID4gMSAmJiB0aGlzLnZhbHVlLmxlbmd0aCA+PSB0aGlzLnNlbGVjdE1heCApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uLmRpc2FibGUoKVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb24uZW5hYmxlKClcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oYXNWYWx1ZSA9IGZhbHNlXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uLnNldFZhbHVlKCBudWxsIClcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb24uZW5hYmxlKClcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0aGlzLnNldEZpbHRlcigpXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRJbnB1dFRvU2VsZWN0aW9uKClcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IHNpbmdsZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0TWF4ID09IDFcbiAgICB9XG5cbiAgICBlbWl0VmFsdWVDaGFuZ2UoKSB7XG4gICAgICAgIHRoaXMuaGFzVmFsdWUgPSAoIHRoaXMuc2VsZWN0aW9uLnZhbHVlIHx8IFtdICkubGVuZ3RoID4gMFxuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoIHRoaXMuc2VsZWN0aW9uLnZhbHVlIHx8IFtdIClcbiAgICB9XG5cbiAgICBvcGVuKCkge1xuICAgICAgICBpZiAoIHRoaXMuaXNPcGVuICkgcmV0dXJuXG5cbiAgICAgICAgdGhpcy5pc09wZW4gPSB0cnVlXG4gICAgICAgIHRoaXMuZmxvYXRMYWJlbCA9ICdhbHdheXMnXG4gICAgICAgIGlmICggdGhpcy5maWx0ZXIgKSB7XG4gICAgICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSAnJ1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuXG4gICAgICAgIH1cblxuICAgICAgICAvLyBDcmVhdGUgb3ZlcmxheVxuICAgICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5XG4gICAgICAgICAgICAucG9zaXRpb24oKVxuICAgICAgICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8oIHRoaXMudHJpZ2dlciApXG4gICAgICAgICAgICAud2l0aFBvc2l0aW9ucyggW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgICAgICAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgICAgICAgICAgICAgICBvdmVybGF5WTogJ3RvcCcsXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldFk6IDBcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgICAgICAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgICAgICAgICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgICAgICAgICAgICAgICAgIG9mZnNldFk6IDBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdIClcbiAgICAgICAgICAgIC53aXRoUHVzaCggZmFsc2UgKVxuXG4gICAgICAgIGNvbnN0IHNjcm9sbFN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbigpXG5cbiAgICAgICAgdGhpcy5vdmVybGF5UmVmID0gdGhpcy5vdmVybGF5LmNyZWF0ZSgge1xuICAgICAgICAgICAgcG9zaXRpb25TdHJhdGVneSxcbiAgICAgICAgICAgIHNjcm9sbFN0cmF0ZWd5LFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IGZhbHNlLFxuICAgICAgICAgICAgbWF4V2lkdGg6IHRoaXMudHJpZ2dlci5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoICogMixcbiAgICAgICAgICAgIG1pbldpZHRoOiB0aGlzLnRyaWdnZXIubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCxcbiAgICAgICAgICAgIG1heEhlaWdodDogMzAwLFxuICAgICAgICB9IClcblxuICAgICAgICAvLyBBdHRhY2ggdGVtcGxhdGVcbiAgICAgICAgY29uc3QgcG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKCB0aGlzLm92ZXJsYXlUZW1wbGF0ZSwgdGhpcy52aWV3Q29udGFpbmVyUmVmIClcbiAgICAgICAgdGhpcy5vdmVybGF5UmVmLmF0dGFjaCggcG9ydGFsIClcblxuICAgICAgICAvLyBMaXN0ZW4gdG8gZG9jdW1lbnQgY2xpY2tzIGFmdGVyIGEgc21hbGwgZGVsYXkgdG8gYXZvaWQgY2xvc2luZyBpbW1lZGlhdGVseVxuICAgICAgICBzZXRUaW1lb3V0KCAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsaWNrU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KCBkb2N1bWVudCwgJ2NsaWNrJyApXG4gICAgICAgICAgICAgICAgLnBpcGUoIGZpbHRlciggKCBldmVudDogTW91c2VFdmVudCApID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2xpY2tUYXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgdHJpZ2dlckVsID0gdGhpcy50cmlnZ2VyLm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3ZlcmxheUVsID0gdGhpcy5vdmVybGF5UmVmPy5vdmVybGF5RWxlbWVudFxuXG4gICAgICAgICAgICAgICAgICAgIC8vIE9ubHkgY2xvc2UgaWYgY2xpY2sgaXMgb3V0c2lkZSBib3RoIHRyaWdnZXIgYW5kIG92ZXJsYXlcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICF0cmlnZ2VyRWwuY29udGFpbnMoY2xpY2tUYXJnZXQpXG4gICAgICAgICAgICAgICAgICAgICAgICAmJiAhb3ZlcmxheUVsPy5jb250YWlucyhjbGlja1RhcmdldClcbiAgICAgICAgICAgICAgICB9ICkgKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpXG4gICAgICAgICAgICAgICAgfSApXG4gICAgICAgIH0gKVxuXG4gICAgICAgIC8vIEZvY3VzIGlucHV0IGFmdGVyIG92ZXJsYXkgaXMgYXR0YWNoZWRcbiAgICAgICAgc2V0VGltZW91dCggKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJJbnB1dD8ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuXG4gICAgICAgICAgICAvLyBwcmV2ZW50IGxpc3QgZnJvbSBzY3JvbGxpbmcgd2hlbiBzZWxlY3Rpb24gY2hhbmdlc1xuICAgICAgICAgICAgdGhpcy5vdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LmNoaWxkcmVuWzBdLnNjcm9sbCggMCwgMSApXG4gICAgICAgIH0gKVxuXG4gICAgICAgIHRoaXMuc2V0RmlsdGVyKClcblxuICAgICAgICB0aGlzLm9wZW5pbmdWYWx1ZSA9IEpTT04uc3RyaW5naWZ5KCB0aGlzLnNlbGVjdGlvbi52YWx1ZSApXG4gICAgfVxuXG4gICAgY2xvc2UoKSB7XG4gICAgICAgIGlmICggIXRoaXMuaXNPcGVuICkgcmV0dXJuXG5cbiAgICAgICAgdGhpcy5pc09wZW4gPSBmYWxzZVxuICAgICAgICB0aGlzLnNldElucHV0VG9TZWxlY3Rpb24oKVxuICAgICAgICB0aGlzLmZsb2F0TGFiZWwgPSAnYXV0bydcblxuICAgICAgICBpZiAoIHRoaXMuY2xpY2tTdWJzY3JpcHRpb24gKSB7XG4gICAgICAgICAgICB0aGlzLmNsaWNrU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcbiAgICAgICAgICAgIHRoaXMuY2xpY2tTdWJzY3JpcHRpb24gPSBudWxsXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIHRoaXMub3ZlcmxheVJlZiApIHtcbiAgICAgICAgICAgIHRoaXMub3ZlcmxheVJlZi5kaXNwb3NlKClcbiAgICAgICAgICAgIHRoaXMub3ZlcmxheVJlZiA9IG51bGxcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpXG5cbiAgICAgICAgbGV0IGNsb3NpbmdWYWx1ZSA9IEpTT04uc3RyaW5naWZ5KCB0aGlzLnNlbGVjdGlvbi52YWx1ZSApXG4gICAgICAgIGlmICggdGhpcy5vcGVuaW5nVmFsdWUgIT0gY2xvc2luZ1ZhbHVlIClcbiAgICAgICAgICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlKClcbiAgICB9XG5cbiAgICBzZXRJbnB1dFRvU2VsZWN0aW9uKCkge1xuICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLnNlbGVjdGlvbj8udmFsdWU/Lm1hcCggYyA9PiB0aGlzLmRlc2NyaXB0aW9uRm9yQ29kZSggYyApICkuam9pbiggJywgJyApIHx8IG51bGxcbiAgICB9XG5cbiAgICBvbklucHV0KCBldj8pIHtcbiAgICAgICAgdGhpcy5zZXRGaWx0ZXIoIGV2Py50YXJnZXQ/LnZhbHVlIClcbiAgICB9XG5cbiAgICBzZXRGaWx0ZXIoIHRleHQ/OiBzdHJpbmcgKSB7XG4gICAgICAgIGxldCB0ID0gdGV4dD8udHJpbSgpLnRvTG93ZXJDYXNlKClcblxuICAgICAgICBpZiAoIHQgKSB7XG4gICAgICAgICAgICB0aGlzLmlzRmlsdGVyZWQgPSB0cnVlXG4gICAgICAgICAgICB0aGlzLm1hdGNoID0gKCBvcHRpb24gKSA9PiBvcHRpb24uZGVzY3JpcHRpb24udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyggdCApXG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmlzRmlsdGVyZWQgPSBmYWxzZVxuICAgICAgICAgICAgdGhpcy5tYXRjaCA9ICggbyApID0+IHRydWVcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpXG4gICAgfVxuXG4gICAgbWF0Y2hlc0ZpbHRlciggb3B0aW9uOiBDb2RlRGVzY3JpcHRpb24gKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm1hdGNoKCBvcHRpb24gKVxuICAgIH1cblxuICAgIG9uU2VsZWN0aW9uQ2hhbmdlKCBldiApIHtcbiAgICAgICAgaWYgKCB0aGlzLnNpbmdsZSApIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2UoKVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJJbnB1dD8ubmF0aXZlRWxlbWVudC5mb2N1cygpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIHRoaXMuc2VsZWN0TWF4ID4gMSApIHtcbiAgICAgICAgICAgIGlmICggdGhpcy5zZWxlY3Rpb24udmFsdWUubGVuZ3RoID49IHRoaXMuc2VsZWN0TWF4ICkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uLmRpc2FibGUoKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb24uZW5hYmxlKClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpXG4gICAgfVxuXG4gICAgb25VcHBlclNlbGVjdGlvbkNoYW5nZSggZXY6IE1hdFNlbGVjdGlvbkxpc3RDaGFuZ2UgKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgbGV0IGNvZGVzID0gdGhpcy5zZWxlY3Rpb24udmFsdWUuZmlsdGVyKCBjID0+IGMgIT0gZXYub3B0aW9uc1sgMCBdLnZhbHVlIClcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uLnNldFZhbHVlKCBjb2RlcyApXG5cbiAgICAgICAgICAgIHRoaXMub25TZWxlY3Rpb25DaGFuZ2UoIGV2IClcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICBvbkNhbmNlbENsaWNrKCkge1xuICAgICAgICB0aGlzLnNlbGVjdGlvbi5zZXRWYWx1ZSggbnVsbCApXG4gICAgICAgIHRoaXMuc2VsZWN0aW9uLmVuYWJsZSgpXG4gICAgICAgIHRoaXMuc2V0SW5wdXRUb1NlbGVjdGlvbigpXG4gICAgICAgIHRoaXMuZW1pdFZhbHVlQ2hhbmdlKClcbiAgICB9XG5cbiAgICBvbklucHV0Rm9jdXMoKSB7XG4gICAgICAgIHRoaXMub3BlbigpXG4gICAgfVxuXG4gICAgb25DbG9zZUNsaWNrKCkge1xuICAgICAgICB0aGlzLmNsb3NlKClcbiAgICB9XG5cbiAgICBkZXNjcmlwdGlvbkZvckNvZGUoIGNvZGU6IHN0cmluZyApOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zLmZpbmQoIG8gPT4gby5jb2RlID09IGNvZGUgKT8uZGVzY3JpcHRpb25cbiAgICB9XG59XG4iLCI8bWF0LWZvcm0tZmllbGQgI3RyaWdnZXJcbiAgICBbZmxvYXRMYWJlbF09XCJmbG9hdExhYmVsXCJcbiAgICBhcHBlYXJhbmNlPVwib3V0bGluZVwiXG4gICAgc3Vic2NyaXB0U2l6aW5nPVwiZHluYW1pY1wiXG4+XG4gICAgQGlmICggbGFiZWwgKSB7XG4gICAgICAgIDxtYXQtbGFiZWw+e3sgbGFiZWwgfX08L21hdC1sYWJlbD5cbiAgICB9XG5cbiAgICA8aW5wdXQgY2xhc3M9XCJmaWx0ZXItaW5wdXRcIiAjc2VhcmNoSW5wdXRcbiAgICAgICAgbWF0SW5wdXQgXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFxuICAgICAgICBbdmFsdWVdPVwiaW5wdXRWYWx1ZVwiXG4gICAgICAgIChpbnB1dCk9XCJvbklucHV0KCAkZXZlbnQgKVwiXG4gICAgICAgIChrZXlkb3duLmVzY2FwZSk9XCJjbG9zZSgpXCJcbiAgICAgICAgKGZvY3VzKT1cIm9uSW5wdXRGb2N1cygpXCJcbiAgICAgICAgW21hdFRvb2x0aXBdPVwiaW5wdXRWYWx1ZVwiXG4gICAgICAgIFtyZWFkb25seV09XCIhZmlsdGVyXCJcbiAgICA+XG5cbiAgICBAaWYgKCBpc09wZW4gKSB7XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJjYW5jZWxcIlxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBtYXRTdWZmaXhcbiAgICAgICAgICAgIChjbGljayk9XCJvbkNsb3NlQ2xpY2soJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5yY2wtaWNvbj5hcnJvd19kcm9wX3VwPC9ucmNsLWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIH1cbiAgICBAZWxzZSBpZiAoIHNlbGVjdGlvbj8udmFsdWU/Lmxlbmd0aCA+IDAgJiYgY2xlYXIgKSB7XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJjYW5jZWxcIlxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBtYXRTdWZmaXhcbiAgICAgICAgICAgIChjbGljayk9XCJvbkNhbmNlbENsaWNrKCRldmVudCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxucmNsLWljb24+Y2xvc2U8L25yY2wtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNhbmNlbFwiXG4gICAgICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICAgIG1hdFN1ZmZpeFxuICAgICAgICA+XG4gICAgICAgICAgICA8bnJjbC1pY29uPmFycm93X2Ryb3BfZG93bjwvbnJjbC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICB9ICAgICAgICAgICAgICAgIFxuXG4gICAgQGlmICggaGludCApIHtcbiAgICAgICAgPG1hdC1oaW50Pnt7IGhpbnQgfX08L21hdC1oaW50PlxuICAgIH1cbjwvbWF0LWZvcm0tZmllbGQ+ICAgICAgICBcblxuPG5nLXRlbXBsYXRlICNvdmVybGF5VGVtcGxhdGU+XG4gICAgPGRpdiBjbGFzcz1cImZpbHRlci1zZWxlY3Qtb3B0aW9uc1wiIFtjbGFzcy5tdWx0aXBsZV09XCIhc2luZ2xlXCIgW2NsYXNzLnNpbmdsZV09XCJzaW5nbGVcIj5cbiAgICAgICAgQGlmICggIWlzRmlsdGVyZWQgJiYgIXNpbmdsZSAmJiBzdW1tYXJ5ICkge1xuICAgICAgICAgICAgQGlmICggc2VsZWN0aW9uPy52YWx1ZT8ubGVuZ3RoID4gMCAmJiBzZWxlY3Rpb24/LnZhbHVlPy5sZW5ndGggPCBvcHRpb25zPy5sZW5ndGggKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGlvbi1vdmVydmlld1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3VtbWFyeVwiPnt7IHNlbGVjdGlvbj8udmFsdWU/Lmxlbmd0aCB9fSBzZWxlY3RlZCBvZiB7eyBvcHRpb25zPy5sZW5ndGggfX08L2Rpdj5cblxuICAgICAgICAgICAgICAgICAgICA8bWF0LXNlbGVjdGlvbi1saXN0XG4gICAgICAgICAgICAgICAgICAgICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cIm9uVXBwZXJTZWxlY3Rpb25DaGFuZ2UoICRldmVudCApXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAoIGNvZGUgb2Ygc2VsZWN0aW9uPy52YWx1ZTsgdHJhY2sgY29kZSApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWxpc3Qtb3B0aW9uIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiY29kZVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2dnbGVQb3NpdGlvbj1cImJlZm9yZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cInRvb2x0aXBzID8gZGVzY3JpcHRpb25Gb3JDb2RlKCBjb2RlICkgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWZ0ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZGVzY3JpcHRpb25Gb3JDb2RlKCBjb2RlICkgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1saXN0LW9wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtc2VsZWN0aW9uLWxpc3Q+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpZiAoIHNlbGVjdGlvbj8udmFsdWU/Lmxlbmd0aCA9PSBvcHRpb25zPy5sZW5ndGggKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGlvbi1vdmVydmlld1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3VtbWFyeVwiPkFsbCBvcHRpb25zIHNlbGVjdGVkPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA8bWF0LXNlbGVjdGlvbi1saXN0XG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwic2VsZWN0aW9uXCJcbiAgICAgICAgICAgIChzZWxlY3Rpb25DaGFuZ2UpPVwib25TZWxlY3Rpb25DaGFuZ2UoICRldmVudCApXCJcbiAgICAgICAgICAgIFttdWx0aXBsZV09XCIhc2luZ2xlXCJcbiAgICAgICAgICAgIGhpZGVTaW5nbGVTZWxlY3Rpb25JbmRpY2F0b3JcbiAgICAgICAgPlxuICAgICAgICAgICAgQGZvciAoIG9wdGlvbiBvZiBvcHRpb25zOyB0cmFjayBvcHRpb24gKSB7XG4gICAgICAgICAgICAgICAgPG1hdC1saXN0LW9wdGlvbiBbY2xhc3MuaGlkZV09XCIhbWF0Y2hlc0ZpbHRlciggb3B0aW9uIClcIlxuICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwib3B0aW9uLmNvZGVcIiBcbiAgICAgICAgICAgICAgICAgICAgdG9nZ2xlUG9zaXRpb249XCJiZWZvcmVcIiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cInRvb2x0aXBzID8gb3B0aW9uLmRlc2NyaXB0aW9uIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFmdGVyXCIgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sgb3B0aW9uLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgPC9tYXQtbGlzdC1vcHRpb24+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvbWF0LXNlbGVjdGlvbi1saXN0PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -1,9 +1,11 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from "@angular/core";
2
+ import { NrclBase } from "../../directives/nrcl.base";
2
3
  import * as i0 from "@angular/core";
3
4
  import * as i1 from "../button/button.component";
4
5
  import * as i2 from "../device-view/device-view.component";
5
- export class FiltersPanelComponent {
6
+ export class FiltersPanelComponent extends NrclBase {
6
7
  constructor() {
8
+ super(...arguments);
7
9
  this.showClear = true;
8
10
  this.showFilters = true;
9
11
  this.hasAdvancedFilters = false;
@@ -31,8 +33,8 @@ export class FiltersPanelComponent {
31
33
  this.showAdvancedFilters = true;
32
34
  this.showAdvancedFiltersChange.emit(true);
33
35
  }
34
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FiltersPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FiltersPanelComponent, selector: "nrcl-filters-panel", inputs: { showClear: "showClear", showFilters: "showFilters", hasAdvancedFilters: "hasAdvancedFilters", showAdvancedFilters: "showAdvancedFilters" }, outputs: { clearFilters: "clearFilters", showFiltersChange: "showFiltersChange", showAdvancedFiltersChange: "showAdvancedFiltersChange" }, host: { properties: { "class.hide-filters": "!showFilters" } }, ngImport: i0, template: "@if ( showFilters ) {\n <ng-content></ng-content>\n}\n\n@if ( showFilters && hasAdvancedFilters && showAdvancedFilters ) {\n <ng-content select=\"[advanced]\"></ng-content>\n}\n\n<div class=\"actions\">\n @if ( showClear && showFilters ) {\n <nrcl-button outline \n label=\"Clear\"\n icon=\"clear-filters\"\n (click)=\"onClearClick()\"\n compact=\"mobile\"\n ></nrcl-button>\n }\n\n @if ( showFilters && hasAdvancedFilters ) {\n @if ( showAdvancedFilters ) {\n <nrcl-button outline \n label=\"Less Filters\"\n icon=\"remove\"\n (click)=\"onHideAdvancedClick()\"\n compact=\"mobile\"\n ></nrcl-button>\n }\n @else {\n <nrcl-button outline \n label=\"More Filters\"\n icon=\"add\"\n (click)=\"onShowAdvancedClick()\"\n compact=\"mobile\"\n ></nrcl-button>\n }\n }\n\n <nrcl-device-view>\n <ng-template mobile-view>\n @if ( showFilters ) {\n <nrcl-button outline \n label=\"Hide Filters\"\n icon=\"expand_less\"\n (click)=\"onHideClick()\"\n compact=\"mobile\"\n ></nrcl-button>\n }\n @else {\n <nrcl-button outline \n label=\"Show Filters\"\n icon=\"expand_more\"\n (click)=\"onShowClick()\"\n compact=\"mobile\"\n ></nrcl-button>\n }\n </ng-template>\n </nrcl-device-view>\n</div>\n", styles: [":host{display:flex;flex-flow:row wrap;gap:8px;position:relative;border:1px solid #c6c8cb;padding:8px;background-color:#f2f2f2}:host .actions{flex-grow:1;flex-direction:row-reverse;justify-content:space-between;align-items:flex-end;width:unset;display:flex}:host .actions button{height:40px}:host .actions nrcl-button{--nrcl-button-height: 40px}:host .actions .spacer{flex-grow:1}:host.hide-filters .actions{flex-direction:row}:host-context(.nrcl-device-mobile) :host{display:grid;grid-template-columns:1fr 1fr}:host-context(.nrcl-device-mobile) :host .actions{grid-column:1/span 2}:host-context(.nrcl-device-mobile) :host ::ng-deep nrcl-filter-search{--nrcl-filter-search-width: auto;grid-row:1;grid-column:1/span 2}:host-context(.nrcl-device-mobile) :host ::ng-deep nrcl-filter-select{--nrcl-filter-select-width: auto}:host-context(.nrcl-device-mobile) :host ::ng-deep nrcl-filter-date{--nrcl-filter-date-width: auto}:host-context(.nrcl-device-mobile) :host ::ng-deep nrcl-filter-container{--nrcl-filter-container-width: auto}\n"], dependencies: [{ kind: "component", type: i1.ButtonComponent, selector: "nrcl-button", inputs: ["label", "icon", "iconRight", "iconCompact", "tooltip", "compact", "primary", "outline", "disabled"], outputs: ["click"] }, { kind: "directive", type: i2.MobileViewDirective, selector: "[mobile-view]" }, { kind: "component", type: i2.DeviceViewComponent, selector: "nrcl-device-view" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FiltersPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
37
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FiltersPanelComponent, selector: "nrcl-filters-panel", inputs: { showClear: "showClear", showFilters: "showFilters", hasAdvancedFilters: "hasAdvancedFilters", showAdvancedFilters: "showAdvancedFilters" }, outputs: { clearFilters: "clearFilters", showFiltersChange: "showFiltersChange", showAdvancedFiltersChange: "showAdvancedFiltersChange" }, host: { properties: { "class.hide-filters": "!showFilters" } }, usesInheritance: true, ngImport: i0, template: "@if ( showFilters ) {\n <ng-content></ng-content>\n}\n\n@if ( showFilters && hasAdvancedFilters && showAdvancedFilters ) {\n <ng-content select=\"[advanced]\"></ng-content>\n}\n\n<div class=\"actions\">\n @if ( showClear && showFilters ) {\n <nrcl-button outline \n label=\"Clear\"\n icon=\"clear-filters\"\n (click)=\"onClearClick()\"\n compact=\"mobile\"\n ></nrcl-button>\n }\n\n @if ( showFilters && hasAdvancedFilters ) {\n @if ( showAdvancedFilters ) {\n <nrcl-button outline \n label=\"Less Filters\"\n icon=\"remove\"\n (click)=\"onHideAdvancedClick()\"\n compact=\"mobile\"\n ></nrcl-button>\n }\n @else {\n <nrcl-button outline \n label=\"More Filters\"\n icon=\"add\"\n (click)=\"onShowAdvancedClick()\"\n compact=\"mobile\"\n ></nrcl-button>\n }\n }\n\n <nrcl-device-view>\n <ng-template mobile-view>\n @if ( showFilters ) {\n <nrcl-button outline \n label=\"Hide Filters\"\n icon=\"expand_less\"\n (click)=\"onHideClick()\"\n compact=\"mobile\"\n ></nrcl-button>\n }\n @else {\n <nrcl-button outline \n label=\"Show Filters\"\n icon=\"expand_more\"\n (click)=\"onShowClick()\"\n compact=\"mobile\"\n ></nrcl-button>\n }\n </ng-template>\n </nrcl-device-view>\n</div>\n", styles: [":host{display:flex;flex-flow:row wrap;gap:8px;position:relative;border:1px solid #c6c8cb;padding:8px;background-color:#f2f2f2}:host .actions{flex-grow:1;flex-direction:row-reverse;justify-content:space-between;align-items:flex-end;width:unset;display:flex}:host .actions button{height:40px}:host .actions nrcl-button{--nrcl-button-height: 40px}:host .actions .spacer{flex-grow:1}:host.hide-filters .actions{flex-direction:row}:host-context(.nrcl-device-mobile) :host{display:grid;grid-template-columns:1fr 1fr}:host-context(.nrcl-device-mobile) :host .actions{grid-column:1/span 2}:host-context(.nrcl-device-mobile) :host ::ng-deep nrcl-filter-search{--nrcl-filter-search-width: auto;grid-row:1;grid-column:1/span 2}:host-context(.nrcl-device-mobile) :host ::ng-deep nrcl-filter-select{--nrcl-filter-select-width: auto}:host-context(.nrcl-device-mobile) :host ::ng-deep nrcl-filter-date{--nrcl-filter-date-width: auto}:host-context(.nrcl-device-mobile) :host ::ng-deep nrcl-filter-container{--nrcl-filter-container-width: auto}\n"], dependencies: [{ kind: "component", type: i1.ButtonComponent, selector: "nrcl-button", inputs: ["label", "icon", "iconRight", "iconCompact", "tooltip", "compact", "primary", "outline", "disabled"], outputs: ["click"] }, { kind: "directive", type: i2.MobileViewDirective, selector: "[mobile-view]" }, { kind: "component", type: i2.DeviceViewComponent, selector: "nrcl-device-view" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
36
38
  }
37
39
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FiltersPanelComponent, decorators: [{
38
40
  type: Component,
@@ -54,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
54
56
  }], showAdvancedFiltersChange: [{
55
57
  type: Output
56
58
  }] } });
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uci1uZ3gtY29tcG9uZW50LWxpYi9zcmMvY29tcG9uZW50cy9maWx0ZXJzLXBhbmVsL2ZpbHRlcnMtcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZmlsdGVycy1wYW5lbC9maWx0ZXJzLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDOzs7O0FBV3ZCLE1BQU0sT0FBTyxxQkFBcUI7SUFUbEM7UUFVYSxjQUFTLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLGdCQUFXLEdBQUcsSUFBSSxDQUFBO1FBQ2xCLHVCQUFrQixHQUFHLEtBQUssQ0FBQTtRQUMxQix3QkFBbUIsR0FBRyxLQUFLLENBQUE7UUFFMUIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFBO1FBQ2pDLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUE7UUFDL0MsOEJBQXlCLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQTtLQXlCcEU7SUF2QkcsWUFBWTtRQUNSLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDNUIsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQTtRQUN4QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFFLEtBQUssQ0FBRSxDQUFBO0lBQ3hDLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUE7UUFDdkIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBRSxJQUFJLENBQUUsQ0FBQTtJQUN2QyxDQUFDO0lBRUQsbUJBQW1CO1FBQ2YsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQTtRQUNoQyxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFFLEtBQUssQ0FBRSxDQUFBO0lBQ2hELENBQUM7SUFFRCxtQkFBbUI7UUFDZixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFBO1FBQy9CLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUUsSUFBSSxDQUFFLENBQUE7SUFDL0MsQ0FBQzsrR0FoQ1EscUJBQXFCO21HQUFyQixxQkFBcUIsMlpDakJsQywrckRBMERBOzs0RkR6Q2EscUJBQXFCO2tCQVRqQyxTQUFTOytCQUNJLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNGLHNCQUFzQixFQUFFLGNBQWM7cUJBQ3pDOzhCQUdRLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csaUJBQWlCO3NCQUExQixNQUFNO2dCQUNHLHlCQUF5QjtzQkFBbEMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXRcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuQENvbXBvbmVudCgge1xuICAgIHNlbGVjdG9yOiBcIm5yY2wtZmlsdGVycy1wYW5lbFwiLFxuICAgIHRlbXBsYXRlVXJsOiBcIi4vZmlsdGVycy1wYW5lbC5jb21wb25lbnQuaHRtbFwiLFxuICAgIHN0eWxlVXJsOiBcIi4vZmlsdGVycy1wYW5lbC5jb21wb25lbnQuc2Nzc1wiLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tjbGFzcy5oaWRlLWZpbHRlcnNdJzogJyFzaG93RmlsdGVycydcbiAgICB9XG59IClcbmV4cG9ydCBjbGFzcyBGaWx0ZXJzUGFuZWxDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIHNob3dDbGVhciA9IHRydWVcbiAgICBASW5wdXQoKSBzaG93RmlsdGVycyA9IHRydWVcbiAgICBASW5wdXQoKSBoYXNBZHZhbmNlZEZpbHRlcnMgPSBmYWxzZVxuICAgIEBJbnB1dCgpIHNob3dBZHZhbmNlZEZpbHRlcnMgPSBmYWxzZVxuXG4gICAgQE91dHB1dCgpIGNsZWFyRmlsdGVycyA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuICAgIEBPdXRwdXQoKSBzaG93RmlsdGVyc0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKVxuICAgIEBPdXRwdXQoKSBzaG93QWR2YW5jZWRGaWx0ZXJzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpXG5cbiAgICBvbkNsZWFyQ2xpY2soKSB7XG4gICAgICAgIHRoaXMuY2xlYXJGaWx0ZXJzLmVtaXQoKVxuICAgIH1cblxuICAgIG9uSGlkZUNsaWNrKCkge1xuICAgICAgICB0aGlzLnNob3dGaWx0ZXJzID0gZmFsc2VcbiAgICAgICAgdGhpcy5zaG93RmlsdGVyc0NoYW5nZS5lbWl0KCBmYWxzZSApXG4gICAgfVxuXG4gICAgb25TaG93Q2xpY2soKSB7XG4gICAgICAgIHRoaXMuc2hvd0ZpbHRlcnMgPSB0cnVlXG4gICAgICAgIHRoaXMuc2hvd0ZpbHRlcnNDaGFuZ2UuZW1pdCggdHJ1ZSApXG4gICAgfVxuXG4gICAgb25IaWRlQWR2YW5jZWRDbGljaygpIHtcbiAgICAgICAgdGhpcy5zaG93QWR2YW5jZWRGaWx0ZXJzID0gZmFsc2VcbiAgICAgICAgdGhpcy5zaG93QWR2YW5jZWRGaWx0ZXJzQ2hhbmdlLmVtaXQoIGZhbHNlIClcbiAgICB9XG5cbiAgICBvblNob3dBZHZhbmNlZENsaWNrKCkge1xuICAgICAgICB0aGlzLnNob3dBZHZhbmNlZEZpbHRlcnMgPSB0cnVlXG4gICAgICAgIHRoaXMuc2hvd0FkdmFuY2VkRmlsdGVyc0NoYW5nZS5lbWl0KCB0cnVlIClcbiAgICB9XG59XG4iLCJAaWYgKCBzaG93RmlsdGVycyApIHtcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG59XG5cbkBpZiAoIHNob3dGaWx0ZXJzICYmIGhhc0FkdmFuY2VkRmlsdGVycyAmJiBzaG93QWR2YW5jZWRGaWx0ZXJzICkge1xuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlthZHZhbmNlZF1cIj48L25nLWNvbnRlbnQ+XG59XG5cbjxkaXYgY2xhc3M9XCJhY3Rpb25zXCI+XG4gICAgQGlmICggc2hvd0NsZWFyICYmIHNob3dGaWx0ZXJzICkge1xuICAgICAgICA8bnJjbC1idXR0b24gb3V0bGluZSBcbiAgICAgICAgICAgIGxhYmVsPVwiQ2xlYXJcIlxuICAgICAgICAgICAgaWNvbj1cImNsZWFyLWZpbHRlcnNcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xlYXJDbGljaygpXCJcbiAgICAgICAgICAgIGNvbXBhY3Q9XCJtb2JpbGVcIlxuICAgICAgICA+PC9ucmNsLWJ1dHRvbj5cbiAgICB9XG5cbiAgICBAaWYgKCBzaG93RmlsdGVycyAmJiBoYXNBZHZhbmNlZEZpbHRlcnMgKSB7XG4gICAgICAgIEBpZiAoIHNob3dBZHZhbmNlZEZpbHRlcnMgKSB7XG4gICAgICAgICAgICA8bnJjbC1idXR0b24gb3V0bGluZSBcbiAgICAgICAgICAgICAgICBsYWJlbD1cIkxlc3MgRmlsdGVyc1wiXG4gICAgICAgICAgICAgICAgaWNvbj1cInJlbW92ZVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uSGlkZUFkdmFuY2VkQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgY29tcGFjdD1cIm1vYmlsZVwiXG4gICAgICAgICAgICA+PC9ucmNsLWJ1dHRvbj5cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICA8bnJjbC1idXR0b24gb3V0bGluZSBcbiAgICAgICAgICAgICAgICBsYWJlbD1cIk1vcmUgRmlsdGVyc1wiXG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uU2hvd0FkdmFuY2VkQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgY29tcGFjdD1cIm1vYmlsZVwiXG4gICAgICAgICAgICA+PC9ucmNsLWJ1dHRvbj5cbiAgICAgICAgfVxuICAgIH1cblxuICAgIDxucmNsLWRldmljZS12aWV3PlxuICAgICAgICA8bmctdGVtcGxhdGUgbW9iaWxlLXZpZXc+XG4gICAgICAgICAgICBAaWYgKCBzaG93RmlsdGVycyApIHtcbiAgICAgICAgICAgICAgICA8bnJjbC1idXR0b24gb3V0bGluZSBcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCJIaWRlIEZpbHRlcnNcIlxuICAgICAgICAgICAgICAgICAgICBpY29uPVwiZXhwYW5kX2xlc3NcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25IaWRlQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgICAgIGNvbXBhY3Q9XCJtb2JpbGVcIlxuICAgICAgICAgICAgICAgID48L25yY2wtYnV0dG9uPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgIDxucmNsLWJ1dHRvbiBvdXRsaW5lIFxuICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIlNob3cgRmlsdGVyc1wiXG4gICAgICAgICAgICAgICAgICAgIGljb249XCJleHBhbmRfbW9yZVwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNob3dDbGljaygpXCJcbiAgICAgICAgICAgICAgICAgICAgY29tcGFjdD1cIm1vYmlsZVwiXG4gICAgICAgICAgICAgICAgPjwvbnJjbC1idXR0b24+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9ucmNsLWRldmljZS12aWV3PlxuPC9kaXY+XG4iXX0=
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uci1uZ3gtY29tcG9uZW50LWxpYi9zcmMvY29tcG9uZW50cy9maWx0ZXJzLXBhbmVsL2ZpbHRlcnMtcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZmlsdGVycy1wYW5lbC9maWx0ZXJzLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQVd0RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsUUFBUTtJQVRuRDs7UUFVYSxjQUFTLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLGdCQUFXLEdBQUcsSUFBSSxDQUFBO1FBQ2xCLHVCQUFrQixHQUFHLEtBQUssQ0FBQTtRQUMxQix3QkFBbUIsR0FBRyxLQUFLLENBQUE7UUFFMUIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFBO1FBQ2pDLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUE7UUFDL0MsOEJBQXlCLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQTtLQXlCcEU7SUF2QkcsWUFBWTtRQUNSLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDNUIsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQTtRQUN4QixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFFLEtBQUssQ0FBRSxDQUFBO0lBQ3hDLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUE7UUFDdkIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBRSxJQUFJLENBQUUsQ0FBQTtJQUN2QyxDQUFDO0lBRUQsbUJBQW1CO1FBQ2YsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQTtRQUNoQyxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFFLEtBQUssQ0FBRSxDQUFBO0lBQ2hELENBQUM7SUFFRCxtQkFBbUI7UUFDZixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFBO1FBQy9CLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUUsSUFBSSxDQUFFLENBQUE7SUFDL0MsQ0FBQzsrR0FoQ1EscUJBQXFCO21HQUFyQixxQkFBcUIsa2JDbEJsQywrckRBMERBOzs0RkR4Q2EscUJBQXFCO2tCQVRqQyxTQUFTOytCQUNJLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNGLHNCQUFzQixFQUFFLGNBQWM7cUJBQ3pDOzhCQUdRLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csaUJBQWlCO3NCQUExQixNQUFNO2dCQUNHLHlCQUF5QjtzQkFBbEMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXRcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5yY2xCYXNlIH0gZnJvbSBcIi4uLy4uL2RpcmVjdGl2ZXMvbnJjbC5iYXNlXCI7XG5cbkBDb21wb25lbnQoIHtcbiAgICBzZWxlY3RvcjogXCJucmNsLWZpbHRlcnMtcGFuZWxcIixcbiAgICB0ZW1wbGF0ZVVybDogXCIuL2ZpbHRlcnMtcGFuZWwuY29tcG9uZW50Lmh0bWxcIixcbiAgICBzdHlsZVVybDogXCIuL2ZpbHRlcnMtcGFuZWwuY29tcG9uZW50LnNjc3NcIixcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBob3N0OiB7XG4gICAgICAgICdbY2xhc3MuaGlkZS1maWx0ZXJzXSc6ICchc2hvd0ZpbHRlcnMnXG4gICAgfVxufSApXG5leHBvcnQgY2xhc3MgRmlsdGVyc1BhbmVsQ29tcG9uZW50IGV4dGVuZHMgTnJjbEJhc2Uge1xuICAgIEBJbnB1dCgpIHNob3dDbGVhciA9IHRydWVcbiAgICBASW5wdXQoKSBzaG93RmlsdGVycyA9IHRydWVcbiAgICBASW5wdXQoKSBoYXNBZHZhbmNlZEZpbHRlcnMgPSBmYWxzZVxuICAgIEBJbnB1dCgpIHNob3dBZHZhbmNlZEZpbHRlcnMgPSBmYWxzZVxuXG4gICAgQE91dHB1dCgpIGNsZWFyRmlsdGVycyA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuICAgIEBPdXRwdXQoKSBzaG93RmlsdGVyc0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKVxuICAgIEBPdXRwdXQoKSBzaG93QWR2YW5jZWRGaWx0ZXJzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpXG5cbiAgICBvbkNsZWFyQ2xpY2soKSB7XG4gICAgICAgIHRoaXMuY2xlYXJGaWx0ZXJzLmVtaXQoKVxuICAgIH1cblxuICAgIG9uSGlkZUNsaWNrKCkge1xuICAgICAgICB0aGlzLnNob3dGaWx0ZXJzID0gZmFsc2VcbiAgICAgICAgdGhpcy5zaG93RmlsdGVyc0NoYW5nZS5lbWl0KCBmYWxzZSApXG4gICAgfVxuXG4gICAgb25TaG93Q2xpY2soKSB7XG4gICAgICAgIHRoaXMuc2hvd0ZpbHRlcnMgPSB0cnVlXG4gICAgICAgIHRoaXMuc2hvd0ZpbHRlcnNDaGFuZ2UuZW1pdCggdHJ1ZSApXG4gICAgfVxuXG4gICAgb25IaWRlQWR2YW5jZWRDbGljaygpIHtcbiAgICAgICAgdGhpcy5zaG93QWR2YW5jZWRGaWx0ZXJzID0gZmFsc2VcbiAgICAgICAgdGhpcy5zaG93QWR2YW5jZWRGaWx0ZXJzQ2hhbmdlLmVtaXQoIGZhbHNlIClcbiAgICB9XG5cbiAgICBvblNob3dBZHZhbmNlZENsaWNrKCkge1xuICAgICAgICB0aGlzLnNob3dBZHZhbmNlZEZpbHRlcnMgPSB0cnVlXG4gICAgICAgIHRoaXMuc2hvd0FkdmFuY2VkRmlsdGVyc0NoYW5nZS5lbWl0KCB0cnVlIClcbiAgICB9XG59XG4iLCJAaWYgKCBzaG93RmlsdGVycyApIHtcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG59XG5cbkBpZiAoIHNob3dGaWx0ZXJzICYmIGhhc0FkdmFuY2VkRmlsdGVycyAmJiBzaG93QWR2YW5jZWRGaWx0ZXJzICkge1xuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlthZHZhbmNlZF1cIj48L25nLWNvbnRlbnQ+XG59XG5cbjxkaXYgY2xhc3M9XCJhY3Rpb25zXCI+XG4gICAgQGlmICggc2hvd0NsZWFyICYmIHNob3dGaWx0ZXJzICkge1xuICAgICAgICA8bnJjbC1idXR0b24gb3V0bGluZSBcbiAgICAgICAgICAgIGxhYmVsPVwiQ2xlYXJcIlxuICAgICAgICAgICAgaWNvbj1cImNsZWFyLWZpbHRlcnNcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xlYXJDbGljaygpXCJcbiAgICAgICAgICAgIGNvbXBhY3Q9XCJtb2JpbGVcIlxuICAgICAgICA+PC9ucmNsLWJ1dHRvbj5cbiAgICB9XG5cbiAgICBAaWYgKCBzaG93RmlsdGVycyAmJiBoYXNBZHZhbmNlZEZpbHRlcnMgKSB7XG4gICAgICAgIEBpZiAoIHNob3dBZHZhbmNlZEZpbHRlcnMgKSB7XG4gICAgICAgICAgICA8bnJjbC1idXR0b24gb3V0bGluZSBcbiAgICAgICAgICAgICAgICBsYWJlbD1cIkxlc3MgRmlsdGVyc1wiXG4gICAgICAgICAgICAgICAgaWNvbj1cInJlbW92ZVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uSGlkZUFkdmFuY2VkQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgY29tcGFjdD1cIm1vYmlsZVwiXG4gICAgICAgICAgICA+PC9ucmNsLWJ1dHRvbj5cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICA8bnJjbC1idXR0b24gb3V0bGluZSBcbiAgICAgICAgICAgICAgICBsYWJlbD1cIk1vcmUgRmlsdGVyc1wiXG4gICAgICAgICAgICAgICAgaWNvbj1cImFkZFwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uU2hvd0FkdmFuY2VkQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgY29tcGFjdD1cIm1vYmlsZVwiXG4gICAgICAgICAgICA+PC9ucmNsLWJ1dHRvbj5cbiAgICAgICAgfVxuICAgIH1cblxuICAgIDxucmNsLWRldmljZS12aWV3PlxuICAgICAgICA8bmctdGVtcGxhdGUgbW9iaWxlLXZpZXc+XG4gICAgICAgICAgICBAaWYgKCBzaG93RmlsdGVycyApIHtcbiAgICAgICAgICAgICAgICA8bnJjbC1idXR0b24gb3V0bGluZSBcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw9XCJIaWRlIEZpbHRlcnNcIlxuICAgICAgICAgICAgICAgICAgICBpY29uPVwiZXhwYW5kX2xlc3NcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25IaWRlQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgICAgIGNvbXBhY3Q9XCJtb2JpbGVcIlxuICAgICAgICAgICAgICAgID48L25yY2wtYnV0dG9uPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgIDxucmNsLWJ1dHRvbiBvdXRsaW5lIFxuICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIlNob3cgRmlsdGVyc1wiXG4gICAgICAgICAgICAgICAgICAgIGljb249XCJleHBhbmRfbW9yZVwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNob3dDbGljaygpXCJcbiAgICAgICAgICAgICAgICAgICAgY29tcGFjdD1cIm1vYmlsZVwiXG4gICAgICAgICAgICAgICAgPjwvbnJjbC1idXR0b24+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9ucmNsLWRldmljZS12aWV3PlxuPC9kaXY+XG4iXX0=
@@ -1,7 +1,9 @@
1
1
  import { booleanAttribute, ChangeDetectionStrategy, Component, ElementRef, inject, Input, Renderer2 } from "@angular/core";
2
+ import { NrclBase } from "../../directives/nrcl.base";
2
3
  import * as i0 from "@angular/core";
3
- export class FormFieldComponent {
4
+ export class FormFieldComponent extends NrclBase {
4
5
  constructor() {
6
+ super(...arguments);
5
7
  this.element = inject(ElementRef);
6
8
  this.renderer = inject(Renderer2);
7
9
  }
@@ -15,8 +17,8 @@ export class FormFieldComponent {
15
17
  }
16
18
  }
17
19
  }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
19
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.14", type: FormFieldComponent, selector: "nrcl-form-field", inputs: { required: ["required", "required", booleanAttribute], readonly: ["readonly", "readonly", booleanAttribute] }, host: { properties: { "class.required": "required", "class.readonly": "readonly" } }, usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>", isInline: true, styles: [":host ::ng-deep .mat-mdc-form-field{width:100%;font-family:var(--nrcl-font-family)}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper{padding-left:0;padding-right:0;background-color:unset}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix{font-size:var(--nrcl-font-size);padding-bottom:2px;line-height:20px;min-height:50px;width:unset}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-mdc-form-field-required-marker{display:none}:host ::ng-deep .mat-mdc-form-field-subscript-wrapper .mat-mdc-form-field-error-wrapper,:host ::ng-deep .mat-mdc-form-field-subscript-wrapper .mat-mdc-form-field-hint-wrapper{padding:0}:host.required ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mdc-floating-label :after{color:red;content:\" *\"}:host.readonly ::ng-deep .mat-mdc-form-field{cursor:not-allowed}:host.readonly ::ng-deep .mat-mdc-form-field [readonly=true]{color:#0000008c;cursor:not-allowed}:host.readonly ::ng-deep .mat-mdc-form-field .mdc-line-ripple:before{border-style:dashed;border-width:1px;border-color:#00000021}:host.readonly ::ng-deep .mat-mdc-form-field mat-error{display:none}:host.readonly ::ng-deep .mat-mdc-form-field input,:host.readonly ::ng-deep .mat-mdc-form-field textarea{cursor:not-allowed}:host.readonly ::ng-deep .mat-mdc-form-field .select-read-only-cursor{cursor:not-allowed;pointer-events:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.14", type: FormFieldComponent, selector: "nrcl-form-field", inputs: { required: ["required", "required", booleanAttribute], readonly: ["readonly", "readonly", booleanAttribute] }, host: { properties: { "class.required": "required", "class.readonly": "readonly" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>", isInline: true, styles: [":host ::ng-deep .mat-mdc-form-field{width:100%;font-family:var(--nrcl-font-family)}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper{padding-left:0;padding-right:0;background-color:unset}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix{font-size:var(--nrcl-font-size);padding-bottom:2px;line-height:20px;min-height:50px;width:unset}:host ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mat-mdc-form-field-required-marker{display:none}:host ::ng-deep .mat-mdc-form-field-subscript-wrapper .mat-mdc-form-field-error-wrapper,:host ::ng-deep .mat-mdc-form-field-subscript-wrapper .mat-mdc-form-field-hint-wrapper{padding:0}:host.required ::ng-deep .mat-mdc-form-field .mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-form-field-infix .mdc-floating-label :after{color:red;content:\" *\"}:host.readonly ::ng-deep .mat-mdc-form-field{cursor:not-allowed}:host.readonly ::ng-deep .mat-mdc-form-field [readonly=true]{color:#0000008c;cursor:not-allowed}:host.readonly ::ng-deep .mat-mdc-form-field .mdc-line-ripple:before{border-style:dashed;border-width:1px;border-color:#00000021}:host.readonly ::ng-deep .mat-mdc-form-field mat-error{display:none}:host.readonly ::ng-deep .mat-mdc-form-field input,:host.readonly ::ng-deep .mat-mdc-form-field textarea{cursor:not-allowed}:host.readonly ::ng-deep .mat-mdc-form-field .select-read-only-cursor{cursor:not-allowed;pointer-events:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
20
22
  }
21
23
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormFieldComponent, decorators: [{
22
24
  type: Component,
@@ -100,4 +102,4 @@ function makeFormFieldNotReadonly(renderer, formFieldEl) {
100
102
  });
101
103
  }
102
104
  }
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uci1uZ3gtY29tcG9uZW50LWxpYi9zcmMvY29tcG9uZW50cy9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFFTCxTQUFTLEVBRVosTUFBTSxlQUFlLENBQUM7O0FBWXZCLE1BQU0sT0FBTyxrQkFBa0I7SUFWL0I7UUFjSSxZQUFPLEdBQUcsTUFBTSxDQUFFLFVBQVUsQ0FBRSxDQUFBO1FBQzlCLGFBQVEsR0FBRyxNQUFNLENBQUUsU0FBUyxDQUFFLENBQUE7S0FZakM7SUFWRyxXQUFXLENBQUUsT0FBc0I7UUFDL0IsSUFBSyxPQUFPLENBQUMsUUFBUSxFQUFHLENBQUM7WUFDckIsSUFBSyxJQUFJLENBQUMsUUFBUSxFQUFHLENBQUM7Z0JBQ2xCLHFCQUFxQixDQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUUsQ0FBQTtZQUN0RSxDQUFDO2lCQUNJLENBQUM7Z0JBQ0Ysd0JBQXdCLENBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBRSxDQUFBO1lBQ3pFLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQzsrR0FoQlEsa0JBQWtCO21HQUFsQixrQkFBa0IsNEVBQ04sZ0JBQWdCLHNDQUNoQixnQkFBZ0Isd0lBVjNCLDJCQUEyQjs7NEZBUTVCLGtCQUFrQjtrQkFWOUIsU0FBUzsrQkFDSSxpQkFBaUIsWUFDakIsMkJBQTJCLG1CQUVwQix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNGLGtCQUFrQixFQUFFLFVBQVU7d0JBQzlCLGtCQUFrQixF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QUFDO0lBQ2hFLElBQUksZ0JBQWdCLElBQUksZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDOUMsbUJBQW1CLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUMsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLFFBQVEsQ0FBQyxlQUFlLENBQUMsbUJBQW1CLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDOUQsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsOEJBQThCO0lBQzlCLElBQUksaUJBQW9DLENBQUM7SUFDekMsZ0JBQWdCLEdBQUcsV0FBVyxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzlELElBQUksZ0JBQWdCLElBQUksZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDOUMsaUJBQWlCLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDeEMsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLFFBQVEsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUseUJBQXlCLENBQUMsQ0FBQztZQUNuRSxRQUFRLENBQUMsZUFBZSxDQUFDLGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQ3hELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQ3hELGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDO1lBQ3RELENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFwibnJjbC1mb3JtLWZpZWxkXCIsXG4gICAgdGVtcGxhdGU6IFwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlwiLFxuICAgIHN0eWxlVXJsOiBcIi4vZm9ybS1maWVsZC5jb21wb25lbnQuc2Nzc1wiLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tjbGFzcy5yZXF1aXJlZF0nOiBcInJlcXVpcmVkXCIsXG4gICAgICAgICdbY2xhc3MucmVhZG9ubHldJzogXCJyZWFkb25seVwiLFxuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgRm9ybUZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0gKSByZXF1aXJlZFxuICAgIEBJbnB1dCggeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSApIHJlYWRvbmx5XG5cbiAgICBlbGVtZW50ID0gaW5qZWN0KCBFbGVtZW50UmVmIClcbiAgICByZW5kZXJlciA9IGluamVjdCggUmVuZGVyZXIyIClcblxuICAgIG5nT25DaGFuZ2VzKCBjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzICk6IHZvaWQge1xuICAgICAgICBpZiAoIGNoYW5nZXMucmVhZG9ubHkgKSB7XG4gICAgICAgICAgICBpZiAoIHRoaXMucmVhZG9ubHkgKSB7XG4gICAgICAgICAgICAgICAgbWFrZUZvcm1GaWVsZFJlYWRvbmx5KCB0aGlzLnJlbmRlcmVyLCB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCApXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBtYWtlRm9ybUZpZWxkTm90UmVhZG9ubHkoIHRoaXMucmVuZGVyZXIsIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50IClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuZnVuY3Rpb24gbWFrZUZvcm1GaWVsZFJlYWRvbmx5KHJlbmRlcmVyOiBSZW5kZXJlcjIsIGZvcm1GaWVsZEVsOiBIVE1MRWxlbWVudCkge1xuICAgIGxldCBlZGl0YWJsZUVsZW1lbnRzO1xuICAgIC8vbWFrZSBpbnB1dCBlbGVtZW50IHJlYWRvbmx5XG4gICAgbGV0IGlucHV0SHRtbEVsZW1lbnQ6IEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgZWRpdGFibGVFbGVtZW50cyA9IGZvcm1GaWVsZEVsLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdpbnB1dCcpO1xuICAgIGlmIChlZGl0YWJsZUVsZW1lbnRzICYmIGVkaXRhYmxlRWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICAgIGlucHV0SHRtbEVsZW1lbnQgPSBlZGl0YWJsZUVsZW1lbnRzWzBdO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHJlbmRlcmVyLnNldEF0dHJpYnV0ZShpbnB1dEh0bWxFbGVtZW50LCBcInJlYWRvbmx5XCIsIFwicmVhZG9ubHlcIik7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vbWFrZSB0ZXh0YXJlYSBlbGVtZW50IHJlYWRvbmx5XG4gICAgbGV0IHRleHRhcmVhSHRtbEVsZW1lbnQ6IEhUTUxUZXh0QXJlYUVsZW1lbnQ7XG4gICAgZWRpdGFibGVFbGVtZW50cyA9IGZvcm1GaWVsZEVsLmdldEVsZW1lbnRzQnlUYWdOYW1lKCd0ZXh0YXJlYScpO1xuICAgIGlmIChlZGl0YWJsZUVsZW1lbnRzICYmIGVkaXRhYmxlRWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICAgIHRleHRhcmVhSHRtbEVsZW1lbnQgPSBlZGl0YWJsZUVsZW1lbnRzWzBdO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0ZXh0YXJlYUh0bWxFbGVtZW50LCBcInJlYWRvbmx5XCIsIFwicmVhZG9ubHlcIik7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vbWFrZSBzZWxlY3QgZWxlbWVudCByZWFkb25seVxuICAgIGxldCBzZWxlY3RIdG1sRWxlbWVudDogSFRNTFNlbGVjdEVsZW1lbnQ7XG4gICAgZWRpdGFibGVFbGVtZW50cyA9IGZvcm1GaWVsZEVsLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKTtcbiAgICBpZiAoZWRpdGFibGVFbGVtZW50cyAmJiBlZGl0YWJsZUVsZW1lbnRzLmxlbmd0aCkge1xuICAgICAgICBzZWxlY3RIdG1sRWxlbWVudCA9IGVkaXRhYmxlRWxlbWVudHNbMF07XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgcmVuZGVyZXIuYWRkQ2xhc3Moc2VsZWN0SHRtbEVsZW1lbnQsIFwic2VsZWN0LXJlYWQtb25seS1jdXJzb3JcIik7XG4gICAgICAgICAgICByZW5kZXJlci5zZXRBdHRyaWJ1dGUoc2VsZWN0SHRtbEVsZW1lbnQsIFwicmVhZG9ubHlcIiwgXCJyZWFkb25seVwiKTtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2VsZWN0SHRtbEVsZW1lbnQub3B0aW9ucy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIHNlbGVjdEh0bWxFbGVtZW50Lm9wdGlvbnNbaV0uZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIG1ha2VGb3JtRmllbGROb3RSZWFkb25seShyZW5kZXJlcjogUmVuZGVyZXIyLCBmb3JtRmllbGRFbDogSFRNTEVsZW1lbnQpIHtcbiAgICAvLyByZW5kZXJlci5yZW1vdmVDbGFzcyhmb3JtRmllbGRFbCwgXCJyZWFkb25seVwiKTtcbiAgICBsZXQgZWRpdGFibGVFbGVtZW50cztcbiAgICAvL21ha2UgaW5wdXQgZWxlbWVudCByZWFkb25seVxuICAgIGxldCBpbnB1dEh0bWxFbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50O1xuICAgIGVkaXRhYmxlRWxlbWVudHMgPSBmb3JtRmllbGRFbC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaW5wdXQnKTtcbiAgICBpZiAoZWRpdGFibGVFbGVtZW50cyAmJiBlZGl0YWJsZUVsZW1lbnRzLmxlbmd0aCkge1xuICAgICAgICBpbnB1dEh0bWxFbGVtZW50ID0gZWRpdGFibGVFbGVtZW50c1swXTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICByZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUoaW5wdXRIdG1sRWxlbWVudCwgXCJyZWFkb25seVwiKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy9tYWtlIHRleHRhcmVhIGVsZW1lbnQgcmVhZG9ubHlcbiAgICBsZXQgdGV4dGFyZWFIdG1sRWxlbWVudDogSFRNTFRleHRBcmVhRWxlbWVudDtcbiAgICBlZGl0YWJsZUVsZW1lbnRzID0gZm9ybUZpZWxkRWwuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3RleHRhcmVhJyk7XG4gICAgaWYgKGVkaXRhYmxlRWxlbWVudHMgJiYgZWRpdGFibGVFbGVtZW50cy5sZW5ndGgpIHtcbiAgICAgICAgdGV4dGFyZWFIdG1sRWxlbWVudCA9IGVkaXRhYmxlRWxlbWVudHNbMF07XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgcmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKHRleHRhcmVhSHRtbEVsZW1lbnQsIFwicmVhZG9ubHlcIik7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vbWFrZSBzZWxlY3QgZWxlbWVudCByZWFkb25seVxuICAgIGxldCBzZWxlY3RIdG1sRWxlbWVudDogSFRNTFNlbGVjdEVsZW1lbnQ7XG4gICAgZWRpdGFibGVFbGVtZW50cyA9IGZvcm1GaWVsZEVsLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKTtcbiAgICBpZiAoZWRpdGFibGVFbGVtZW50cyAmJiBlZGl0YWJsZUVsZW1lbnRzLmxlbmd0aCkge1xuICAgICAgICBzZWxlY3RIdG1sRWxlbWVudCA9IGVkaXRhYmxlRWxlbWVudHNbMF07XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgcmVuZGVyZXIucmVtb3ZlQ2xhc3Moc2VsZWN0SHRtbEVsZW1lbnQsIFwic2VsZWN0LXJlYWQtb25seS1jdXJzb3JcIik7XG4gICAgICAgICAgICByZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUoc2VsZWN0SHRtbEVsZW1lbnQsIFwicmVhZG9ubHlcIik7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNlbGVjdEh0bWxFbGVtZW50Lm9wdGlvbnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBzZWxlY3RIdG1sRWxlbWVudC5vcHRpb25zW2ldLmRpc2FibGVkID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59Il19
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uci1uZ3gtY29tcG9uZW50LWxpYi9zcmMvY29tcG9uZW50cy9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFFTCxTQUFTLEVBRVosTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQVl0RCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsUUFBUTtJQVZoRDs7UUFjSSxZQUFPLEdBQUcsTUFBTSxDQUFFLFVBQVUsQ0FBRSxDQUFBO1FBQzlCLGFBQVEsR0FBRyxNQUFNLENBQUUsU0FBUyxDQUFFLENBQUE7S0FZakM7SUFWRyxXQUFXLENBQUUsT0FBc0I7UUFDL0IsSUFBSyxPQUFPLENBQUMsUUFBUSxFQUFHLENBQUM7WUFDckIsSUFBSyxJQUFJLENBQUMsUUFBUSxFQUFHLENBQUM7Z0JBQ2xCLHFCQUFxQixDQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUUsQ0FBQTtZQUN0RSxDQUFDO2lCQUNJLENBQUM7Z0JBQ0Ysd0JBQXdCLENBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBRSxDQUFBO1lBQ3pFLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQzsrR0FoQlEsa0JBQWtCO21HQUFsQixrQkFBa0IsNEVBQ04sZ0JBQWdCLHNDQUNoQixnQkFBZ0IsK0pBVjNCLDJCQUEyQjs7NEZBUTVCLGtCQUFrQjtrQkFWOUIsU0FBUzsrQkFDSSxpQkFBaUIsWUFDakIsMkJBQTJCLG1CQUVwQix1QkFBdUIs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QUM7SUFDN0MsZ0JBQWdCLEdBQUcsV0FBVyxDQUFDLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2hFLElBQUksZ0JBQWdCLElBQUksZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDOUMsbUJBQW1CLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUMsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLFFBQVEsQ0FBQyxlQUFlLENBQUMsbUJBQW1CLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDOUQsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsOEJBQThCO0lBQzlCLElBQUksaUJBQW9DLENBQUM7SUFDekMsZ0JBQWdCLEdBQUcsV0FBVyxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzlELElBQUksZ0JBQWdCLElBQUksZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDOUMsaUJBQWlCLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDeEMsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLFFBQVEsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUseUJBQXlCLENBQUMsQ0FBQztZQUNuRSxRQUFRLENBQUMsZUFBZSxDQUFDLGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQ3hELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQ3hELGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDO1lBQ3RELENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5yY2xCYXNlIH0gZnJvbSBcIi4uLy4uL2RpcmVjdGl2ZXMvbnJjbC5iYXNlXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5yY2wtZm9ybS1maWVsZFwiLFxuICAgIHRlbXBsYXRlOiBcIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cIixcbiAgICBzdHlsZVVybDogXCIuL2Zvcm0tZmllbGQuY29tcG9uZW50LnNjc3NcIixcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBob3N0OiB7XG4gICAgICAgICdbY2xhc3MucmVxdWlyZWRdJzogXCJyZXF1aXJlZFwiLFxuICAgICAgICAnW2NsYXNzLnJlYWRvbmx5XSc6IFwicmVhZG9ubHlcIixcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEZvcm1GaWVsZENvbXBvbmVudCBleHRlbmRzIE5yY2xCYXNlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0gKSByZXF1aXJlZFxuICAgIEBJbnB1dCggeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSApIHJlYWRvbmx5XG5cbiAgICBlbGVtZW50ID0gaW5qZWN0KCBFbGVtZW50UmVmIClcbiAgICByZW5kZXJlciA9IGluamVjdCggUmVuZGVyZXIyIClcblxuICAgIG5nT25DaGFuZ2VzKCBjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzICk6IHZvaWQge1xuICAgICAgICBpZiAoIGNoYW5nZXMucmVhZG9ubHkgKSB7XG4gICAgICAgICAgICBpZiAoIHRoaXMucmVhZG9ubHkgKSB7XG4gICAgICAgICAgICAgICAgbWFrZUZvcm1GaWVsZFJlYWRvbmx5KCB0aGlzLnJlbmRlcmVyLCB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCApXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBtYWtlRm9ybUZpZWxkTm90UmVhZG9ubHkoIHRoaXMucmVuZGVyZXIsIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50IClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuZnVuY3Rpb24gbWFrZUZvcm1GaWVsZFJlYWRvbmx5KHJlbmRlcmVyOiBSZW5kZXJlcjIsIGZvcm1GaWVsZEVsOiBIVE1MRWxlbWVudCkge1xuICAgIGxldCBlZGl0YWJsZUVsZW1lbnRzO1xuICAgIC8vbWFrZSBpbnB1dCBlbGVtZW50IHJlYWRvbmx5XG4gICAgbGV0IGlucHV0SHRtbEVsZW1lbnQ6IEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgZWRpdGFibGVFbGVtZW50cyA9IGZvcm1GaWVsZEVsLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdpbnB1dCcpO1xuICAgIGlmIChlZGl0YWJsZUVsZW1lbnRzICYmIGVkaXRhYmxlRWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICAgIGlucHV0SHRtbEVsZW1lbnQgPSBlZGl0YWJsZUVsZW1lbnRzWzBdO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHJlbmRlcmVyLnNldEF0dHJpYnV0ZShpbnB1dEh0bWxFbGVtZW50LCBcInJlYWRvbmx5XCIsIFwicmVhZG9ubHlcIik7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vbWFrZSB0ZXh0YXJlYSBlbGVtZW50IHJlYWRvbmx5XG4gICAgbGV0IHRleHRhcmVhSHRtbEVsZW1lbnQ6IEhUTUxUZXh0QXJlYUVsZW1lbnQ7XG4gICAgZWRpdGFibGVFbGVtZW50cyA9IGZvcm1GaWVsZEVsLmdldEVsZW1lbnRzQnlUYWdOYW1lKCd0ZXh0YXJlYScpO1xuICAgIGlmIChlZGl0YWJsZUVsZW1lbnRzICYmIGVkaXRhYmxlRWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICAgIHRleHRhcmVhSHRtbEVsZW1lbnQgPSBlZGl0YWJsZUVsZW1lbnRzWzBdO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0ZXh0YXJlYUh0bWxFbGVtZW50LCBcInJlYWRvbmx5XCIsIFwicmVhZG9ubHlcIik7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vbWFrZSBzZWxlY3QgZWxlbWVudCByZWFkb25seVxuICAgIGxldCBzZWxlY3RIdG1sRWxlbWVudDogSFRNTFNlbGVjdEVsZW1lbnQ7XG4gICAgZWRpdGFibGVFbGVtZW50cyA9IGZvcm1GaWVsZEVsLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKTtcbiAgICBpZiAoZWRpdGFibGVFbGVtZW50cyAmJiBlZGl0YWJsZUVsZW1lbnRzLmxlbmd0aCkge1xuICAgICAgICBzZWxlY3RIdG1sRWxlbWVudCA9IGVkaXRhYmxlRWxlbWVudHNbMF07XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgcmVuZGVyZXIuYWRkQ2xhc3Moc2VsZWN0SHRtbEVsZW1lbnQsIFwic2VsZWN0LXJlYWQtb25seS1jdXJzb3JcIik7XG4gICAgICAgICAgICByZW5kZXJlci5zZXRBdHRyaWJ1dGUoc2VsZWN0SHRtbEVsZW1lbnQsIFwicmVhZG9ubHlcIiwgXCJyZWFkb25seVwiKTtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2VsZWN0SHRtbEVsZW1lbnQub3B0aW9ucy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIHNlbGVjdEh0bWxFbGVtZW50Lm9wdGlvbnNbaV0uZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIG1ha2VGb3JtRmllbGROb3RSZWFkb25seShyZW5kZXJlcjogUmVuZGVyZXIyLCBmb3JtRmllbGRFbDogSFRNTEVsZW1lbnQpIHtcbiAgICAvLyByZW5kZXJlci5yZW1vdmVDbGFzcyhmb3JtRmllbGRFbCwgXCJyZWFkb25seVwiKTtcbiAgICBsZXQgZWRpdGFibGVFbGVtZW50cztcbiAgICAvL21ha2UgaW5wdXQgZWxlbWVudCByZWFkb25seVxuICAgIGxldCBpbnB1dEh0bWxFbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50O1xuICAgIGVkaXRhYmxlRWxlbWVudHMgPSBmb3JtRmllbGRFbC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaW5wdXQnKTtcbiAgICBpZiAoZWRpdGFibGVFbGVtZW50cyAmJiBlZGl0YWJsZUVsZW1lbnRzLmxlbmd0aCkge1xuICAgICAgICBpbnB1dEh0bWxFbGVtZW50ID0gZWRpdGFibGVFbGVtZW50c1swXTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICByZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUoaW5wdXRIdG1sRWxlbWVudCwgXCJyZWFkb25seVwiKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy9tYWtlIHRleHRhcmVhIGVsZW1lbnQgcmVhZG9ubHlcbiAgICBsZXQgdGV4dGFyZWFIdG1sRWxlbWVudDogSFRNTFRleHRBcmVhRWxlbWVudDtcbiAgICBlZGl0YWJsZUVsZW1lbnRzID0gZm9ybUZpZWxkRWwuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3RleHRhcmVhJyk7XG4gICAgaWYgKGVkaXRhYmxlRWxlbWVudHMgJiYgZWRpdGFibGVFbGVtZW50cy5sZW5ndGgpIHtcbiAgICAgICAgdGV4dGFyZWFIdG1sRWxlbWVudCA9IGVkaXRhYmxlRWxlbWVudHNbMF07XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgcmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKHRleHRhcmVhSHRtbEVsZW1lbnQsIFwicmVhZG9ubHlcIik7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vbWFrZSBzZWxlY3QgZWxlbWVudCByZWFkb25seVxuICAgIGxldCBzZWxlY3RIdG1sRWxlbWVudDogSFRNTFNlbGVjdEVsZW1lbnQ7XG4gICAgZWRpdGFibGVFbGVtZW50cyA9IGZvcm1GaWVsZEVsLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKTtcbiAgICBpZiAoZWRpdGFibGVFbGVtZW50cyAmJiBlZGl0YWJsZUVsZW1lbnRzLmxlbmd0aCkge1xuICAgICAgICBzZWxlY3RIdG1sRWxlbWVudCA9IGVkaXRhYmxlRWxlbWVudHNbMF07XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgcmVuZGVyZXIucmVtb3ZlQ2xhc3Moc2VsZWN0SHRtbEVsZW1lbnQsIFwic2VsZWN0LXJlYWQtb25seS1jdXJzb3JcIik7XG4gICAgICAgICAgICByZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUoc2VsZWN0SHRtbEVsZW1lbnQsIFwicmVhZG9ubHlcIik7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNlbGVjdEh0bWxFbGVtZW50Lm9wdGlvbnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBzZWxlY3RIdG1sRWxlbWVudC5vcHRpb25zW2ldLmRpc2FibGVkID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59Il19
@@ -1,11 +1,12 @@
1
1
  import { ChangeDetectionStrategy, Component } from "@angular/core";
2
+ import { NrclBase } from "../../directives/nrcl.base";
2
3
  import * as i0 from "@angular/core";
3
- export class FormLayoutComponent {
4
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: FormLayoutComponent, selector: "nrcl-form-layout", ngImport: i0, template: "<ng-content></ng-content>", isInline: true, styles: [":host{display:grid;gap:var(--nrcl-gutter-space);grid-template-columns:repeat(var(--nrcl-form-layout-columns),1fr)}:host>::ng-deep [layoutwidth=\"2\"]{grid-column:span 2}:host>::ng-deep [layoutwidth=full]{grid-column:span var(--nrcl-form-layout-columns)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
4
+ export class FormLayoutComponent extends NrclBase {
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormLayoutComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
6
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: FormLayoutComponent, selector: "nrcl-form-layout", usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>", isInline: true, styles: [":host{display:grid;gap:var(--nrcl-gutter-space);grid-template-columns:repeat(var(--nrcl-form-layout-columns),1fr)}:host>::ng-deep [layoutwidth=\"2\"]{grid-column:span 2}:host>::ng-deep [layoutwidth=full]{grid-column:span var(--nrcl-form-layout-columns)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6
7
  }
7
8
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormLayoutComponent, decorators: [{
8
9
  type: Component,
9
10
  args: [{ selector: "nrcl-form-layout", template: "<ng-content></ng-content>", changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:grid;gap:var(--nrcl-gutter-space);grid-template-columns:repeat(var(--nrcl-form-layout-columns),1fr)}:host>::ng-deep [layoutwidth=\"2\"]{grid-column:span 2}:host>::ng-deep [layoutwidth=full]{grid-column:span var(--nrcl-form-layout-columns)}\n"] }]
10
11
  }] });
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZm9ybS1sYXlvdXQvZm9ybS1sYXlvdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDOztBQVF2QixNQUFNLE9BQU8sbUJBQW1COytHQUFuQixtQkFBbUI7bUdBQW5CLG1CQUFtQix3REFKbEIsMkJBQTJCOzs0RkFJNUIsbUJBQW1CO2tCQU4vQixTQUFTOytCQUNJLGtCQUFrQixZQUNsQiwyQkFBMkIsbUJBRXBCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJucmNsLWZvcm0tbGF5b3V0XCIsXG4gICAgdGVtcGxhdGU6IFwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlwiLFxuICAgIHN0eWxlVXJsOiBcIi4vZm9ybS1sYXlvdXQuY29tcG9uZW50LnNjc3NcIixcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtTGF5b3V0Q29tcG9uZW50IHtcbn1cbiJdfQ==
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvZm9ybS1sYXlvdXQvZm9ybS1sYXlvdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFRdEQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLFFBQVE7K0dBQXBDLG1CQUFtQjttR0FBbkIsbUJBQW1CLCtFQUpsQiwyQkFBMkI7OzRGQUk1QixtQkFBbUI7a0JBTi9CLFNBQVM7K0JBQ0ksa0JBQWtCLFlBQ2xCLDJCQUEyQixtQkFFcEIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBOcmNsQmFzZSB9IGZyb20gXCIuLi8uLi9kaXJlY3RpdmVzL25yY2wuYmFzZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogXCJucmNsLWZvcm0tbGF5b3V0XCIsXG4gICAgdGVtcGxhdGU6IFwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlwiLFxuICAgIHN0eWxlVXJsOiBcIi4vZm9ybS1sYXlvdXQuY29tcG9uZW50LnNjc3NcIixcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtTGF5b3V0Q29tcG9uZW50IGV4dGVuZHMgTnJjbEJhc2Uge1xufVxuIl19
@@ -1,12 +1,14 @@
1
1
  import { booleanAttribute, Component, Input } from '@angular/core';
2
+ import { NrclBase } from '../../directives/nrcl.base';
2
3
  import * as i0 from "@angular/core";
3
- export class GapComponent {
4
+ export class GapComponent extends NrclBase {
4
5
  constructor() {
6
+ super(...arguments);
5
7
  this.horizontal = false;
6
8
  this.vertical = false;
7
9
  }
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GapComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.14", type: GapComponent, selector: "nrcl-gap", inputs: { horizontal: ["horizontal", "horizontal", booleanAttribute], vertical: ["vertical", "vertical", booleanAttribute] }, ngImport: i0, template: '', isInline: true, styles: [":host{display:block}:host[horizontal]{width:var(--nrcl-gutter-space)}:host[vertical]{height:var(--nrcl-gutter-space)}\n"] }); }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GapComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.14", type: GapComponent, selector: "nrcl-gap", inputs: { horizontal: ["horizontal", "horizontal", booleanAttribute], vertical: ["vertical", "vertical", booleanAttribute] }, usesInheritance: true, ngImport: i0, template: '', isInline: true, styles: [":host{display:block}:host[horizontal]{width:var(--nrcl-gutter-space)}:host[vertical]{height:var(--nrcl-gutter-space)}\n"] }); }
10
12
  }
11
13
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GapComponent, decorators: [{
12
14
  type: Component,
@@ -18,4 +20,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
18
20
  type: Input,
19
21
  args: [{ transform: booleanAttribute }]
20
22
  }] } });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25yLW5neC1jb21wb25lbnQtbGliL3NyYy9jb21wb25lbnRzL2dhcC9nYXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU9uRSxNQUFNLE9BQU8sWUFBWTtJQUx6QjtRQU04QyxlQUFVLEdBQUcsS0FBSyxDQUFBO1FBQ2xCLGFBQVEsR0FBRyxLQUFLLENBQUE7S0FDN0Q7K0dBSFksWUFBWTttR0FBWixZQUFZLDJFQUNBLGdCQUFnQixzQ0FDaEIsZ0JBQWdCLDZCQUwzQixFQUFFOzs0RkFHSCxZQUFZO2tCQUx4QixTQUFTOytCQUNJLFVBQVUsWUFDVixFQUFFOzhCQUk4QixVQUFVO3NCQUFuRCxLQUFLO3VCQUFFLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUNHLFFBQVE7c0JBQWpELEtBQUs7dUJBQUUsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBib29sZWFuQXR0cmlidXRlLCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoIHtcbiAgICBzZWxlY3RvcjogJ25yY2wtZ2FwJyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgc3R5bGVVcmw6ICcuL2dhcC5jb21wb25lbnQuc2NzcycsXG59IClcbmV4cG9ydCBjbGFzcyBHYXBDb21wb25lbnQge1xuICAgIEBJbnB1dCggeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSApIGhvcml6b250YWwgPSBmYWxzZVxuICAgIEBJbnB1dCggeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSApIHZlcnRpY2FsID0gZmFsc2Vcbn1cbiJdfQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25yLW5neC1jb21wb25lbnQtbGliL3NyYy9jb21wb25lbnRzL2dhcC9nYXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFPdEQsTUFBTSxPQUFPLFlBQWEsU0FBUSxRQUFRO0lBTDFDOztRQU04QyxlQUFVLEdBQUcsS0FBSyxDQUFBO1FBQ2xCLGFBQVEsR0FBRyxLQUFLLENBQUE7S0FDN0Q7K0dBSFksWUFBWTttR0FBWixZQUFZLDJFQUNBLGdCQUFnQixzQ0FDaEIsZ0JBQWdCLG9EQUwzQixFQUFFOzs0RkFHSCxZQUFZO2tCQUx4QixTQUFTOytCQUNJLFVBQVUsWUFDVixFQUFFOzhCQUk4QixVQUFVO3NCQUFuRCxLQUFLO3VCQUFFLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUNHLFFBQVE7c0JBQWpELEtBQUs7dUJBQUUsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBib29sZWFuQXR0cmlidXRlLCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOcmNsQmFzZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvbnJjbC5iYXNlJztcblxuQENvbXBvbmVudCgge1xuICAgIHNlbGVjdG9yOiAnbnJjbC1nYXAnLFxuICAgIHRlbXBsYXRlOiAnJyxcbiAgICBzdHlsZVVybDogJy4vZ2FwLmNvbXBvbmVudC5zY3NzJyxcbn0gKVxuZXhwb3J0IGNsYXNzIEdhcENvbXBvbmVudCBleHRlbmRzIE5yY2xCYXNlIHtcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0gKSBob3Jpem9udGFsID0gZmFsc2VcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0gKSB2ZXJ0aWNhbCA9IGZhbHNlXG59XG4iXX0=