@firestitch/filter 18.0.45 → 18.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/app/components/action-button/action-button.component.d.ts +1 -1
  2. package/app/components/action-kebab-actions/action-kebab-actions.component.d.ts +1 -1
  3. package/app/components/actions/actions.component.d.ts +1 -1
  4. package/app/components/filter/filter.component.d.ts +16 -20
  5. package/app/components/filter-chip/filter-chip.component.d.ts +1 -1
  6. package/app/components/filter-chip-content/filter-chip-content.component.d.ts +1 -1
  7. package/app/components/filter-chips/filter-chips.component.d.ts +1 -1
  8. package/app/components/filter-drawer/filter-drawer.component.d.ts +17 -13
  9. package/app/components/filter-drawer-actions/filter-drawer-actions.component.d.ts +5 -1
  10. package/app/components/filters-item/autocomplete/autocomplete.component.d.ts +1 -1
  11. package/app/components/filters-item/autocompletechips/autocompletechips.component.d.ts +1 -1
  12. package/app/components/filters-item/base-item/base-item.component.d.ts +1 -1
  13. package/app/components/filters-item/checkbox/checkbox.component.d.ts +1 -1
  14. package/app/components/filters-item/chips/chips.component.d.ts +2 -3
  15. package/app/components/filters-item/date/date.component.d.ts +1 -1
  16. package/app/components/filters-item/date-range/date-range.component.d.ts +1 -1
  17. package/app/components/filters-item/filter-item.component.d.ts +1 -1
  18. package/app/components/filters-item/range/range.component.d.ts +1 -1
  19. package/app/components/filters-item/select/backdrop/backdrop.component.d.ts +1 -1
  20. package/app/components/filters-item/select/groups/groups.component.d.ts +1 -1
  21. package/app/components/filters-item/select/multiple/multiple.component.d.ts +1 -1
  22. package/app/components/filters-item/select/select.component.d.ts +1 -1
  23. package/app/components/filters-item/select/simple/simple.component.d.ts +1 -1
  24. package/app/components/filters-item/text/text.component.d.ts +1 -1
  25. package/app/components/filters-item/week/week.component.d.ts +1 -1
  26. package/app/components/saved-filter/index.d.ts +1 -1
  27. package/app/components/saved-filter/saved-filter-autocomplete-chips/index.d.ts +1 -0
  28. package/app/components/saved-filter/saved-filter-autocomplete-chips/saved-filter-autocomplete-chips.component.d.ts +32 -0
  29. package/app/components/saved-filter/saved-filter-edit/saved-filter-edit.component.d.ts +1 -1
  30. package/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.d.ts +12 -9
  31. package/app/consts/filter-icon.d.ts +1 -0
  32. package/app/consts/index.d.ts +2 -0
  33. package/app/directives/focus-to-item/focus-to-item.directive.d.ts +1 -1
  34. package/app/directives/status-bar/status-bar.directive.d.ts +1 -1
  35. package/app/fs-filter.module.d.ts +28 -59
  36. package/app/helpers/build-query-params.d.ts +2 -1
  37. package/app/helpers/create-filter-item.d.ts +1 -1
  38. package/app/injectors/filter-drawer-overlay.d.ts +2 -1
  39. package/app/interfaces/external-params.interface.d.ts +1 -1
  40. package/app/interfaces/saved-filters.interface.d.ts +10 -5
  41. package/app/models/items/autocomplete/index.d.ts +1 -0
  42. package/app/models/items/date/index.d.ts +1 -0
  43. package/app/models/items/date-range/index.d.ts +1 -0
  44. package/app/models/items/index.d.ts +17 -0
  45. package/app/models/items/select/index.d.ts +3 -0
  46. package/app/pipes/remove-isolate-value.pipe.d.ts +1 -1
  47. package/app/services/external-params-controller.service.d.ts +5 -12
  48. package/app/services/filter-overlay.service.d.ts +7 -11
  49. package/app/services/index.d.ts +7 -0
  50. package/app/services/items-store.service.d.ts +3 -1
  51. package/app/services/{external-params/query-params-controller.service.d.ts → query-params-controller.service.d.ts} +1 -1
  52. package/app/services/{external-params/query-persistance-controller.service.d.ts → query-persistance-controller.service.d.ts} +1 -1
  53. package/app/services/{external-params/saved-filters-controller.service.d.ts → saved-filters-controller.service.d.ts} +15 -9
  54. package/esm2022/app/components/action-button/action-button.component.mjs +22 -7
  55. package/esm2022/app/components/action-kebab-actions/action-kebab-actions.component.mjs +13 -7
  56. package/esm2022/app/components/actions/actions.component.mjs +35 -15
  57. package/esm2022/app/components/filter/filter.component.mjs +54 -53
  58. package/esm2022/app/components/filter-chip/filter-chip.component.mjs +12 -6
  59. package/esm2022/app/components/filter-chip-content/filter-chip-content.component.mjs +3 -3
  60. package/esm2022/app/components/filter-chips/filter-chips.component.mjs +5 -5
  61. package/esm2022/app/components/filter-drawer/filter-drawer.component.mjs +64 -36
  62. package/esm2022/app/components/filter-drawer-actions/filter-drawer-actions.component.mjs +27 -7
  63. package/esm2022/app/components/filters-item/autocomplete/autocomplete.component.mjs +14 -6
  64. package/esm2022/app/components/filters-item/autocompletechips/autocompletechips.component.mjs +14 -6
  65. package/esm2022/app/components/filters-item/base-item/base-item.component.mjs +3 -2
  66. package/esm2022/app/components/filters-item/checkbox/checkbox.component.mjs +15 -7
  67. package/esm2022/app/components/filters-item/chips/chips.component.mjs +19 -14
  68. package/esm2022/app/components/filters-item/date/date.component.mjs +19 -8
  69. package/esm2022/app/components/filters-item/date-range/date-range.component.mjs +19 -8
  70. package/esm2022/app/components/filters-item/filter-item.component.mjs +24 -14
  71. package/esm2022/app/components/filters-item/range/range.component.mjs +19 -9
  72. package/esm2022/app/components/filters-item/select/backdrop/backdrop.component.mjs +3 -3
  73. package/esm2022/app/components/filters-item/select/groups/groups.component.mjs +21 -10
  74. package/esm2022/app/components/filters-item/select/multiple/multiple.component.mjs +25 -12
  75. package/esm2022/app/components/filters-item/select/select.component.mjs +17 -9
  76. package/esm2022/app/components/filters-item/select/simple/simple.component.mjs +24 -12
  77. package/esm2022/app/components/filters-item/text/text.component.mjs +17 -9
  78. package/esm2022/app/components/filters-item/week/week.component.mjs +19 -8
  79. package/esm2022/app/components/saved-filter/index.mjs +2 -2
  80. package/esm2022/app/components/saved-filter/saved-filter-autocomplete-chips/index.mjs +2 -0
  81. package/esm2022/app/components/saved-filter/saved-filter-autocomplete-chips/saved-filter-autocomplete-chips.component.mjs +122 -0
  82. package/esm2022/app/components/saved-filter/saved-filter-edit/saved-filter-edit.component.mjs +29 -12
  83. package/esm2022/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.mjs +37 -29
  84. package/esm2022/app/consts/filter-icon.mjs +2 -0
  85. package/esm2022/app/consts/index.mjs +3 -0
  86. package/esm2022/app/directives/focus-to-item/focus-to-item.directive.mjs +3 -2
  87. package/esm2022/app/directives/status-bar/status-bar.directive.mjs +3 -2
  88. package/esm2022/app/fs-filter.module.mjs +32 -138
  89. package/esm2022/app/helpers/build-query-params.mjs +8 -3
  90. package/esm2022/app/helpers/compare.mjs +2 -2
  91. package/esm2022/app/injectors/filter-drawer-overlay.mjs +1 -1
  92. package/esm2022/app/interfaces/external-params.interface.mjs +1 -1
  93. package/esm2022/app/interfaces/saved-filters.interface.mjs +1 -1
  94. package/esm2022/app/models/items/autocomplete/index.mjs +2 -0
  95. package/esm2022/app/models/items/date/index.mjs +2 -0
  96. package/esm2022/app/models/items/date-range/index.mjs +2 -0
  97. package/esm2022/app/models/items/index.mjs +18 -0
  98. package/esm2022/app/models/items/select/index.mjs +4 -0
  99. package/esm2022/app/pipes/remove-isolate-value.pipe.mjs +3 -2
  100. package/esm2022/app/services/external-params-controller.service.mjs +20 -49
  101. package/esm2022/app/services/filter-overlay.service.mjs +10 -21
  102. package/esm2022/app/services/index.mjs +8 -0
  103. package/esm2022/app/services/items-store.service.mjs +12 -1
  104. package/esm2022/app/services/query-params-controller.service.mjs +65 -0
  105. package/esm2022/app/services/query-persistance-controller.service.mjs +65 -0
  106. package/esm2022/app/services/saved-filters-controller.service.mjs +210 -0
  107. package/esm2022/public_api.mjs +2 -3
  108. package/fesm2022/firestitch-filter.mjs +2705 -2483
  109. package/fesm2022/firestitch-filter.mjs.map +1 -1
  110. package/package.json +1 -1
  111. package/public_api.d.ts +1 -2
  112. package/app/components/saved-filter/saved-filters-menu/index.d.ts +0 -1
  113. package/app/components/saved-filter/saved-filters-menu/saved-filters-menu.component.d.ts +0 -24
  114. package/app/services/external-params/index.d.ts +0 -3
  115. package/esm2022/app/components/saved-filter/saved-filters-menu/index.mjs +0 -2
  116. package/esm2022/app/components/saved-filter/saved-filters-menu/saved-filters-menu.component.mjs +0 -61
  117. package/esm2022/app/services/external-params/index.mjs +0 -4
  118. package/esm2022/app/services/external-params/query-params-controller.service.mjs +0 -65
  119. package/esm2022/app/services/external-params/query-persistance-controller.service.mjs +0 -65
  120. package/esm2022/app/services/external-params/saved-filters-controller.service.mjs +0 -165
@@ -1,4 +1,6 @@
1
+ import { AsyncPipe, NgTemplateOutlet } from '@angular/common';
1
2
  import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, } from '@angular/core';
3
+ import { FsChipModule } from '@firestitch/chip';
2
4
  import { combineLatest, Subject, timer } from 'rxjs';
3
5
  import { map, mapTo, startWith, takeUntil } from 'rxjs/operators';
4
6
  import { BaseItem } from '../../models/items/base-item';
@@ -6,11 +8,10 @@ import { DateRangeItem } from '../../models/items/date-range-item';
6
8
  import { DateTimeRangeItem } from '../../models/items/date-time-range-item';
7
9
  import { RangeItem } from '../../models/items/range-item';
8
10
  import { FocusControllerService } from '../../services/focus-controller.service';
11
+ import { FsFilterChipContentComponent } from '../filter-chip-content/filter-chip-content.component';
9
12
  import * as i0 from "@angular/core";
10
13
  import * as i1 from "../../services/focus-controller.service";
11
- import * as i2 from "@angular/common";
12
- import * as i3 from "@firestitch/chip";
13
- import * as i4 from "../filter-chip-content/filter-chip-content.component";
14
+ import * as i2 from "@firestitch/chip";
14
15
  export class FsFilterChipComponent {
15
16
  _cdRef;
16
17
  _focusController;
@@ -69,12 +70,17 @@ export class FsFilterChipComponent {
69
70
  }));
70
71
  }
71
72
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FsFilterChipComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.FocusControllerService }], target: i0.ɵɵFactoryTarget.Component });
72
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FsFilterChipComponent, selector: "fs-filter-chip", inputs: { item: "item" }, ngImport: i0, template: "<ng-container *ngIf=\"!item.hasPendingValues || (chipDelayedRender$ | async)\">\n <ng-container *ngIf=\"rangeItem; else defaultChip\">\n <fs-chip\n *ngIf=\"item.model?.min || item.model?.from\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('from')\"\n (removed)=\"removeItem($event, 'from')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'from' }\">\n </ng-template>\n </fs-chip>\n <fs-chip\n *ngIf=\"item.model?.max || item.model?.to\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('to')\"\n (removed)=\"removeItem($event, 'to')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'to' }\">\n </ng-template>\n </fs-chip>\n </ng-container>\n <ng-template #defaultChip>\n <fs-chip\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem()\"\n (removed)=\"removeItem($event)\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-template>\n </fs-chip>\n </ng-template>\n <ng-template\n #chipContent\n let-item=\"item\"\n let-type=\"type\">\n <ng-container *ngIf=\"!item.hasPendingValues && !item.loading; else lodaingValues\">\n <fs-filter-chip-content\n [item]=\"item\"\n [type]=\"type\">\n </fs-filter-chip-content>\n </ng-container>\n <ng-template #lodaingValues>\n Loading...\n </ng-template>\n </ng-template>\n</ng-container>", styles: ["fs-chip{cursor:pointer;min-width:0}:host{display:flex;flex-wrap:wrap;gap:5px;max-width:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.FsChipComponent, selector: "fs-chip", inputs: ["selectable", "removable", "value", "maxWidth", "width", "backgroundColor", "borderColor", "color", "outlined", "icon", "image", "selected", "size"], outputs: ["selectedToggled", "removed"] }, { kind: "component", type: i4.FsFilterChipContentComponent, selector: "fs-filter-chip-content", inputs: ["item", "type"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
73
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FsFilterChipComponent, isStandalone: true, selector: "fs-filter-chip", inputs: { item: "item" }, ngImport: i0, template: "@if (!item.hasPendingValues || (chipDelayedRender$ | async)) {\n @if (rangeItem) {\n @if (item.model?.min || item.model?.from) {\n <fs-chip\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('from')\"\n (removed)=\"removeItem($event, 'from')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'from' }\">\n </ng-template>\n </fs-chip>\n }\n @if (item.model?.max || item.model?.to) {\n <fs-chip\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('to')\"\n (removed)=\"removeItem($event, 'to')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'to' }\">\n </ng-template>\n </fs-chip>\n }\n } @else {\n <fs-chip\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem()\"\n (removed)=\"removeItem($event)\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-template>\n </fs-chip>\n }\n <ng-template\n #chipContent\n let-item=\"item\"\n let-type=\"type\">\n @if (!item.hasPendingValues && !item.loading) {\n <fs-filter-chip-content\n [item]=\"item\"\n [type]=\"type\">\n </fs-filter-chip-content>\n } @else {\n Loading...\n }\n </ng-template>\n}", styles: ["fs-chip{cursor:pointer;min-width:0}:host{display:flex;flex-wrap:wrap;gap:5px;max-width:100%}\n"], dependencies: [{ kind: "ngmodule", type: FsChipModule }, { kind: "component", type: i2.FsChipComponent, selector: "fs-chip", inputs: ["selectable", "removable", "value", "maxWidth", "width", "backgroundColor", "borderColor", "color", "shape", "outlined", "icon", "image", "selected", "padding", "contrastColor", "size"], outputs: ["selectedToggled", "removed"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: FsFilterChipContentComponent, selector: "fs-filter-chip-content", inputs: ["item", "type"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
73
74
  }
74
75
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FsFilterChipComponent, decorators: [{
75
76
  type: Component,
76
- args: [{ selector: 'fs-filter-chip', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!item.hasPendingValues || (chipDelayedRender$ | async)\">\n <ng-container *ngIf=\"rangeItem; else defaultChip\">\n <fs-chip\n *ngIf=\"item.model?.min || item.model?.from\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('from')\"\n (removed)=\"removeItem($event, 'from')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'from' }\">\n </ng-template>\n </fs-chip>\n <fs-chip\n *ngIf=\"item.model?.max || item.model?.to\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('to')\"\n (removed)=\"removeItem($event, 'to')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'to' }\">\n </ng-template>\n </fs-chip>\n </ng-container>\n <ng-template #defaultChip>\n <fs-chip\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem()\"\n (removed)=\"removeItem($event)\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-template>\n </fs-chip>\n </ng-template>\n <ng-template\n #chipContent\n let-item=\"item\"\n let-type=\"type\">\n <ng-container *ngIf=\"!item.hasPendingValues && !item.loading; else lodaingValues\">\n <fs-filter-chip-content\n [item]=\"item\"\n [type]=\"type\">\n </fs-filter-chip-content>\n </ng-container>\n <ng-template #lodaingValues>\n Loading...\n </ng-template>\n </ng-template>\n</ng-container>", styles: ["fs-chip{cursor:pointer;min-width:0}:host{display:flex;flex-wrap:wrap;gap:5px;max-width:100%}\n"] }]
77
+ args: [{ selector: 'fs-filter-chip', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
78
+ FsChipModule,
79
+ NgTemplateOutlet,
80
+ FsFilterChipContentComponent,
81
+ AsyncPipe,
82
+ ], template: "@if (!item.hasPendingValues || (chipDelayedRender$ | async)) {\n @if (rangeItem) {\n @if (item.model?.min || item.model?.from) {\n <fs-chip\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('from')\"\n (removed)=\"removeItem($event, 'from')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'from' }\">\n </ng-template>\n </fs-chip>\n }\n @if (item.model?.max || item.model?.to) {\n <fs-chip\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('to')\"\n (removed)=\"removeItem($event, 'to')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'to' }\">\n </ng-template>\n </fs-chip>\n }\n } @else {\n <fs-chip\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem()\"\n (removed)=\"removeItem($event)\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-template>\n </fs-chip>\n }\n <ng-template\n #chipContent\n let-item=\"item\"\n let-type=\"type\">\n @if (!item.hasPendingValues && !item.loading) {\n <fs-filter-chip-content\n [item]=\"item\"\n [type]=\"type\">\n </fs-filter-chip-content>\n } @else {\n Loading...\n }\n </ng-template>\n}", styles: ["fs-chip{cursor:pointer;min-width:0}:host{display:flex;flex-wrap:wrap;gap:5px;max-width:100%}\n"] }]
77
83
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.FocusControllerService }], propDecorators: { item: [{
78
84
  type: Input
79
85
  }] } });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWNoaXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlci1jaGlwL2ZpbHRlci1jaGlwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItY2hpcC9maWx0ZXItY2hpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQzFDLFNBQVMsRUFDVCxLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGFBQWEsRUFBYyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7Ozs7O0FBU2pGLE1BQU0sT0FBTyxxQkFBcUI7SUFnQnRCO0lBQ0E7SUFmTSxJQUFJLENBQThCO0lBRTNDLFNBQVMsQ0FBVTtJQUVuQixrQkFBa0IsQ0FBc0I7SUFFdkMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQztTQUNuQyxJQUFJLENBQ0gsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUNaLENBQUM7SUFFSSxTQUFTLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUVsQyxZQUNVLE1BQXlCLEVBQ3pCLGdCQUF3QztRQUR4QyxXQUFNLEdBQU4sTUFBTSxDQUFtQjtRQUN6QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXdCO0lBRWxELENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWU7ZUFDckMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXO2VBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUM7UUFFbkMsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFFbkMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFakMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDMUIsQ0FBQztJQUNILENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVNLFdBQVcsQ0FBQyxJQUFJLEdBQUcsSUFBSTtRQUM1QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVNLFVBQVUsQ0FBQyxLQUFpQixFQUFFLElBQUksR0FBRyxJQUFJO1FBQzlDLElBQUksSUFBSSxDQUFDLElBQUksWUFBWSxTQUFTLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxZQUFZLGFBQWEsSUFBSSxJQUFJLENBQUMsSUFBSSxZQUFZLGlCQUFpQixFQUFFLENBQUM7WUFDeEYsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0lBRU0sMkJBQTJCO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWTthQUNuQixJQUFJLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FDMUI7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxnQkFBZ0I7UUFDdEIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGFBQWEsQ0FBQztZQUN0QyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87WUFDakIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDOUMsQ0FBQzthQUNDLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsRUFBRSxFQUFFO1lBQzNCLE9BQU8sQ0FBQyxDQUFDLE1BQU0sSUFBSSxVQUFVLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNOLENBQUM7d0dBMUVVLHFCQUFxQjs0RkFBckIscUJBQXFCLGdGQ3hCbEMsdTJEQXlEZTs7NEZEakNGLHFCQUFxQjtrQkFOakMsU0FBUzsrQkFDRSxnQkFBZ0IsbUJBR1QsdUJBQXVCLENBQUMsTUFBTTsySEFJL0IsSUFBSTtzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCwgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0LCB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwLCBtYXBUbywgc3RhcnRXaXRoLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IElGaWx0ZXJDb25maWdJdGVtIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9jb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJhc2VJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2l0ZW1zL2Jhc2UtaXRlbSc7XG5pbXBvcnQgeyBEYXRlUmFuZ2VJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2l0ZW1zL2RhdGUtcmFuZ2UtaXRlbSc7XG5pbXBvcnQgeyBEYXRlVGltZVJhbmdlSXRlbSB9IGZyb20gJy4uLy4uL21vZGVscy9pdGVtcy9kYXRlLXRpbWUtcmFuZ2UtaXRlbSc7XG5pbXBvcnQgeyBSYW5nZUl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvaXRlbXMvcmFuZ2UtaXRlbSc7XG5pbXBvcnQgeyBGb2N1c0NvbnRyb2xsZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZm9jdXMtY29udHJvbGxlci5zZXJ2aWNlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmcy1maWx0ZXItY2hpcCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItY2hpcC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbHRlci1jaGlwLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGc0ZpbHRlckNoaXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgQElucHV0KCkgcHVibGljIGl0ZW06IEJhc2VJdGVtPElGaWx0ZXJDb25maWdJdGVtPjtcblxuICBwdWJsaWMgcmFuZ2VJdGVtOiBib29sZWFuO1xuXG4gIHB1YmxpYyBjaGlwRGVsYXllZFJlbmRlciQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgcHJpdmF0ZSBfY2hpcFJlbmRlclRpbWVyJCA9IHRpbWVyKDUwMClcbiAgICAucGlwZShcbiAgICAgIG1hcFRvKHRydWUpLFxuICAgICk7XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2NkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIF9mb2N1c0NvbnRyb2xsZXI6IEZvY3VzQ29udHJvbGxlclNlcnZpY2UsXG4gICkge1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIHRoaXMucmFuZ2VJdGVtID0gdGhpcy5pdGVtLmlzVHlwZURhdGVSYW5nZVxuICAgICAgfHwgdGhpcy5pdGVtLmlzVHlwZVJhbmdlXG4gICAgICB8fCB0aGlzLml0ZW0uaXNUeXBlRGF0ZVRpbWVSYW5nZTtcblxuICAgIHRoaXMubGlzdGVuVmFsdWVDaGFuZ2VzRm9yUmFuZ2VzKCk7XG5cbiAgICBpZiAodGhpcy5pdGVtLmhhc1BlbmRpbmdWYWx1ZXMpIHtcbiAgICAgIHRoaXMuaXRlbS5sb2FkQXN5bmNWYWx1ZXMoZmFsc2UpO1xuXG4gICAgICB0aGlzLl9pbml0RGVsYXlSZW5kZXIoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dChudWxsKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIGZvY3VzT25JdGVtKHR5cGUgPSBudWxsKSB7XG4gICAgdGhpcy5fZm9jdXNDb250cm9sbGVyLmNsaWNrKHRoaXMuaXRlbSwgdHlwZSk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlSXRlbShldmVudDogTW91c2VFdmVudCwgdHlwZSA9IG51bGwpIHtcbiAgICBpZiAodGhpcy5pdGVtIGluc3RhbmNlb2YgUmFuZ2VJdGVtKSB7XG4gICAgICB0aGlzLml0ZW0uY2xlYXJSYW5nZSh0eXBlKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXRlbSBpbnN0YW5jZW9mIERhdGVSYW5nZUl0ZW0gfHwgdGhpcy5pdGVtIGluc3RhbmNlb2YgRGF0ZVRpbWVSYW5nZUl0ZW0pIHtcbiAgICAgIHRoaXMuaXRlbS5jbGVhckRhdGVSYW5nZSh0eXBlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pdGVtLmNsZWFyKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGxpc3RlblZhbHVlQ2hhbmdlc0ZvclJhbmdlcygpIHtcbiAgICB0aGlzLml0ZW0udmFsdWVDaGFuZ2UkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdERlbGF5UmVuZGVyKCkge1xuICAgIHRoaXMuY2hpcERlbGF5ZWRSZW5kZXIkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLml0ZW0udmFsdWVzJCxcbiAgICAgIHRoaXMuX2NoaXBSZW5kZXJUaW1lciQucGlwZShzdGFydFdpdGgoZmFsc2UpKSxcbiAgICBdKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoW3ZhbHVlcywgdGltZXJWYWx1ZV0pID0+IHtcbiAgICAgICAgICByZXR1cm4gISF2YWx1ZXMgfHwgdGltZXJWYWx1ZTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uaGFzUGVuZGluZ1ZhbHVlcyB8fCAoY2hpcERlbGF5ZWRSZW5kZXIkIHwgYXN5bmMpXCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJyYW5nZUl0ZW07IGVsc2UgZGVmYXVsdENoaXBcIj5cbiAgICA8ZnMtY2hpcFxuICAgICAgICAqbmdJZj1cIml0ZW0ubW9kZWw/Lm1pbiB8fCBpdGVtLm1vZGVsPy5mcm9tXCJcbiAgICAgICAgW3ZhbHVlXT1cIml0ZW1cIlxuICAgICAgICBbc2VsZWN0YWJsZV09XCJmYWxzZVwiXG4gICAgICAgIFtyZW1vdmFibGVdPVwiaXRlbS5zaG93Q2xlYXJcIlxuICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAoY2xpY2spPVwiZm9jdXNPbkl0ZW0oJ2Zyb20nKVwiXG4gICAgICAgIChyZW1vdmVkKT1cInJlbW92ZUl0ZW0oJGV2ZW50LCAnZnJvbScpXCI+XG4gICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2hpcENvbnRlbnRcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtOiBpdGVtLCB0eXBlOiAnZnJvbScgfVwiPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2ZzLWNoaXA+XG4gICAgPGZzLWNoaXBcbiAgICAgICAgKm5nSWY9XCJpdGVtLm1vZGVsPy5tYXggfHwgaXRlbS5tb2RlbD8udG9cIlxuICAgICAgICBbdmFsdWVdPVwiaXRlbVwiXG4gICAgICAgIFtzZWxlY3RhYmxlXT1cImZhbHNlXCJcbiAgICAgICAgW3JlbW92YWJsZV09XCJpdGVtLnNob3dDbGVhclwiXG4gICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgIChjbGljayk9XCJmb2N1c09uSXRlbSgndG8nKVwiXG4gICAgICAgIChyZW1vdmVkKT1cInJlbW92ZUl0ZW0oJGV2ZW50LCAndG8nKVwiPlxuICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNoaXBDb250ZW50XCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgaXRlbTogaXRlbSwgdHlwZTogJ3RvJyB9XCI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvZnMtY2hpcD5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdENoaXA+XG4gICAgPGZzLWNoaXBcbiAgICAgICAgW3ZhbHVlXT1cIml0ZW1cIlxuICAgICAgICBbc2VsZWN0YWJsZV09XCJmYWxzZVwiXG4gICAgICAgIFtyZW1vdmFibGVdPVwiaXRlbS5zaG93Q2xlYXJcIlxuICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAoY2xpY2spPVwiZm9jdXNPbkl0ZW0oKVwiXG4gICAgICAgIChyZW1vdmVkKT1cInJlbW92ZUl0ZW0oJGV2ZW50KVwiPlxuICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNoaXBDb250ZW50XCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgaXRlbTogaXRlbSB9XCI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvZnMtY2hpcD5cbiAgPC9uZy10ZW1wbGF0ZT5cbiAgPG5nLXRlbXBsYXRlXG4gICAgICAjY2hpcENvbnRlbnRcbiAgICAgIGxldC1pdGVtPVwiaXRlbVwiXG4gICAgICBsZXQtdHlwZT1cInR5cGVcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uaGFzUGVuZGluZ1ZhbHVlcyAmJiAhaXRlbS5sb2FkaW5nOyBlbHNlIGxvZGFpbmdWYWx1ZXNcIj5cbiAgICAgIDxmcy1maWx0ZXItY2hpcC1jb250ZW50XG4gICAgICAgIFtpdGVtXT1cIml0ZW1cIlxuICAgICAgICBbdHlwZV09XCJ0eXBlXCI+XG4gICAgICA8L2ZzLWZpbHRlci1jaGlwLWNvbnRlbnQ+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNsb2RhaW5nVmFsdWVzPlxuICAgICAgTG9hZGluZy4uLlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbmctdGVtcGxhdGU+XG48L25nLWNvbnRhaW5lcj4iXX0=
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWNoaXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlci1jaGlwL2ZpbHRlci1jaGlwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItY2hpcC9maWx0ZXItY2hpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUQsT0FBTyxFQUNMLHVCQUF1QixFQUFFLGlCQUFpQixFQUMxQyxTQUFTLEVBQ1QsS0FBSyxHQUVOLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsYUFBYSxFQUFjLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakUsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDNUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzFELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDOzs7O0FBZ0JwRyxNQUFNLE9BQU8scUJBQXFCO0lBZ0J0QjtJQUNBO0lBZk0sSUFBSSxDQUE4QjtJQUUzQyxTQUFTLENBQVU7SUFFbkIsa0JBQWtCLENBQXNCO0lBRXZDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7U0FDbkMsSUFBSSxDQUNILEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FDWixDQUFDO0lBRUksU0FBUyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFFbEMsWUFDVSxNQUF5QixFQUN6QixnQkFBd0M7UUFEeEMsV0FBTSxHQUFOLE1BQU0sQ0FBbUI7UUFDekIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF3QjtJQUVsRCxDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlO2VBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVztlQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBRW5DLElBQUksQ0FBQywyQkFBMkIsRUFBRSxDQUFDO1FBRW5DLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRWpDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzFCLENBQUM7SUFDSCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTSxXQUFXLENBQUMsSUFBSSxHQUFHLElBQUk7UUFDNUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTSxVQUFVLENBQUMsS0FBaUIsRUFBRSxJQUFJLEdBQUcsSUFBSTtRQUM5QyxJQUFJLElBQUksQ0FBQyxJQUFJLFlBQVksU0FBUyxFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLElBQUksWUFBWSxhQUFhLElBQUksSUFBSSxDQUFDLElBQUksWUFBWSxpQkFBaUIsRUFBRSxDQUFDO1lBQ3hGLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pDLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0gsQ0FBQztJQUVNLDJCQUEyQjtRQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVk7YUFDbkIsSUFBSSxDQUNILFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxhQUFhLENBQUM7WUFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPO1lBQ2pCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzlDLENBQUM7YUFDQyxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLEVBQUUsRUFBRTtZQUMzQixPQUFPLENBQUMsQ0FBQyxNQUFNLElBQUksVUFBVSxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDO3dHQTFFVSxxQkFBcUI7NEZBQXJCLHFCQUFxQixvR0NuQ2xDLGtxREF5REMsdUpENUJHLFlBQVksa1ZBQ1osZ0JBQWdCLG9KQUNoQiw0QkFBNEIsd0ZBQzVCLFNBQVM7OzRGQUdBLHFCQUFxQjtrQkFiakMsU0FBUzsrQkFDRSxnQkFBZ0IsbUJBR1QsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLDRCQUE0Qjt3QkFDNUIsU0FBUztxQkFDVjsySEFJZSxJQUFJO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCwgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBGc0NoaXBNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9jaGlwJztcblxuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgdGltZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgbWFwVG8sIHN0YXJ0V2l0aCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBJRmlsdGVyQ29uZmlnSXRlbSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvY29uZmlnLmludGVyZmFjZSc7XG5pbXBvcnQgeyBCYXNlSXRlbSB9IGZyb20gJy4uLy4uL21vZGVscy9pdGVtcy9iYXNlLWl0ZW0nO1xuaW1wb3J0IHsgRGF0ZVJhbmdlSXRlbSB9IGZyb20gJy4uLy4uL21vZGVscy9pdGVtcy9kYXRlLXJhbmdlLWl0ZW0nO1xuaW1wb3J0IHsgRGF0ZVRpbWVSYW5nZUl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvaXRlbXMvZGF0ZS10aW1lLXJhbmdlLWl0ZW0nO1xuaW1wb3J0IHsgUmFuZ2VJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2l0ZW1zL3JhbmdlLWl0ZW0nO1xuaW1wb3J0IHsgRm9jdXNDb250cm9sbGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2ZvY3VzLWNvbnRyb2xsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBGc0ZpbHRlckNoaXBDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi4vZmlsdGVyLWNoaXAtY29udGVudC9maWx0ZXItY2hpcC1jb250ZW50LmNvbXBvbmVudCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtZmlsdGVyLWNoaXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsdGVyLWNoaXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWx0ZXItY2hpcC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEZzQ2hpcE1vZHVsZSxcbiAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgIEZzRmlsdGVyQ2hpcENvbnRlbnRDb21wb25lbnQsXG4gICAgQXN5bmNQaXBlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGc0ZpbHRlckNoaXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgQElucHV0KCkgcHVibGljIGl0ZW06IEJhc2VJdGVtPElGaWx0ZXJDb25maWdJdGVtPjtcblxuICBwdWJsaWMgcmFuZ2VJdGVtOiBib29sZWFuO1xuXG4gIHB1YmxpYyBjaGlwRGVsYXllZFJlbmRlciQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgcHJpdmF0ZSBfY2hpcFJlbmRlclRpbWVyJCA9IHRpbWVyKDUwMClcbiAgICAucGlwZShcbiAgICAgIG1hcFRvKHRydWUpLFxuICAgICk7XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2NkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIF9mb2N1c0NvbnRyb2xsZXI6IEZvY3VzQ29udHJvbGxlclNlcnZpY2UsXG4gICkge1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIHRoaXMucmFuZ2VJdGVtID0gdGhpcy5pdGVtLmlzVHlwZURhdGVSYW5nZVxuICAgICAgfHwgdGhpcy5pdGVtLmlzVHlwZVJhbmdlXG4gICAgICB8fCB0aGlzLml0ZW0uaXNUeXBlRGF0ZVRpbWVSYW5nZTtcblxuICAgIHRoaXMubGlzdGVuVmFsdWVDaGFuZ2VzRm9yUmFuZ2VzKCk7XG5cbiAgICBpZiAodGhpcy5pdGVtLmhhc1BlbmRpbmdWYWx1ZXMpIHtcbiAgICAgIHRoaXMuaXRlbS5sb2FkQXN5bmNWYWx1ZXMoZmFsc2UpO1xuXG4gICAgICB0aGlzLl9pbml0RGVsYXlSZW5kZXIoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dChudWxsKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIGZvY3VzT25JdGVtKHR5cGUgPSBudWxsKSB7XG4gICAgdGhpcy5fZm9jdXNDb250cm9sbGVyLmNsaWNrKHRoaXMuaXRlbSwgdHlwZSk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlSXRlbShldmVudDogTW91c2VFdmVudCwgdHlwZSA9IG51bGwpIHtcbiAgICBpZiAodGhpcy5pdGVtIGluc3RhbmNlb2YgUmFuZ2VJdGVtKSB7XG4gICAgICB0aGlzLml0ZW0uY2xlYXJSYW5nZSh0eXBlKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXRlbSBpbnN0YW5jZW9mIERhdGVSYW5nZUl0ZW0gfHwgdGhpcy5pdGVtIGluc3RhbmNlb2YgRGF0ZVRpbWVSYW5nZUl0ZW0pIHtcbiAgICAgIHRoaXMuaXRlbS5jbGVhckRhdGVSYW5nZSh0eXBlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pdGVtLmNsZWFyKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGxpc3RlblZhbHVlQ2hhbmdlc0ZvclJhbmdlcygpIHtcbiAgICB0aGlzLml0ZW0udmFsdWVDaGFuZ2UkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdERlbGF5UmVuZGVyKCkge1xuICAgIHRoaXMuY2hpcERlbGF5ZWRSZW5kZXIkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLml0ZW0udmFsdWVzJCxcbiAgICAgIHRoaXMuX2NoaXBSZW5kZXJUaW1lciQucGlwZShzdGFydFdpdGgoZmFsc2UpKSxcbiAgICBdKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoW3ZhbHVlcywgdGltZXJWYWx1ZV0pID0+IHtcbiAgICAgICAgICByZXR1cm4gISF2YWx1ZXMgfHwgdGltZXJWYWx1ZTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG59XG4iLCJAaWYgKCFpdGVtLmhhc1BlbmRpbmdWYWx1ZXMgfHwgKGNoaXBEZWxheWVkUmVuZGVyJCB8IGFzeW5jKSkge1xuICBAaWYgKHJhbmdlSXRlbSkge1xuICAgIEBpZiAoaXRlbS5tb2RlbD8ubWluIHx8IGl0ZW0ubW9kZWw/LmZyb20pIHtcbiAgICAgIDxmcy1jaGlwXG4gICAgICAgIFt2YWx1ZV09XCJpdGVtXCJcbiAgICAgICAgW3NlbGVjdGFibGVdPVwiZmFsc2VcIlxuICAgICAgICBbcmVtb3ZhYmxlXT1cIml0ZW0uc2hvd0NsZWFyXCJcbiAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgKGNsaWNrKT1cImZvY3VzT25JdGVtKCdmcm9tJylcIlxuICAgICAgICAocmVtb3ZlZCk9XCJyZW1vdmVJdGVtKCRldmVudCwgJ2Zyb20nKVwiPlxuICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJjaGlwQ29udGVudFwiXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgaXRlbTogaXRlbSwgdHlwZTogJ2Zyb20nIH1cIj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvZnMtY2hpcD5cbiAgICB9XG4gICAgQGlmIChpdGVtLm1vZGVsPy5tYXggfHwgaXRlbS5tb2RlbD8udG8pIHtcbiAgICAgIDxmcy1jaGlwXG4gICAgICAgIFt2YWx1ZV09XCJpdGVtXCJcbiAgICAgICAgW3NlbGVjdGFibGVdPVwiZmFsc2VcIlxuICAgICAgICBbcmVtb3ZhYmxlXT1cIml0ZW0uc2hvd0NsZWFyXCJcbiAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgKGNsaWNrKT1cImZvY3VzT25JdGVtKCd0bycpXCJcbiAgICAgICAgKHJlbW92ZWQpPVwicmVtb3ZlSXRlbSgkZXZlbnQsICd0bycpXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNoaXBDb250ZW50XCJcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtOiBpdGVtLCB0eXBlOiAndG8nIH1cIj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvZnMtY2hpcD5cbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIDxmcy1jaGlwXG4gICAgICBbdmFsdWVdPVwiaXRlbVwiXG4gICAgICBbc2VsZWN0YWJsZV09XCJmYWxzZVwiXG4gICAgICBbcmVtb3ZhYmxlXT1cIml0ZW0uc2hvd0NsZWFyXCJcbiAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAoY2xpY2spPVwiZm9jdXNPbkl0ZW0oKVwiXG4gICAgICAocmVtb3ZlZCk9XCJyZW1vdmVJdGVtKCRldmVudClcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJjaGlwQ29udGVudFwiXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGl0ZW06IGl0ZW0gfVwiPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2ZzLWNoaXA+XG4gIH1cbiAgPG5nLXRlbXBsYXRlXG4gICAgI2NoaXBDb250ZW50XG4gICAgbGV0LWl0ZW09XCJpdGVtXCJcbiAgICBsZXQtdHlwZT1cInR5cGVcIj5cbiAgICBAaWYgKCFpdGVtLmhhc1BlbmRpbmdWYWx1ZXMgJiYgIWl0ZW0ubG9hZGluZykge1xuICAgICAgPGZzLWZpbHRlci1jaGlwLWNvbnRlbnRcbiAgICAgICAgW2l0ZW1dPVwiaXRlbVwiXG4gICAgICAgIFt0eXBlXT1cInR5cGVcIj5cbiAgICAgIDwvZnMtZmlsdGVyLWNoaXAtY29udGVudD5cbiAgICB9IEBlbHNlIHtcbiAgICAgIExvYWRpbmcuLi5cbiAgICB9XG4gIDwvbmctdGVtcGxhdGU+XG59Il19
@@ -49,11 +49,11 @@ export class FsFilterChipContentComponent {
49
49
  return `${this.item.label}: ${result}`;
50
50
  }
51
51
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FsFilterChipContentComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
52
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FsFilterChipContentComponent, selector: "fs-filter-chip-content", inputs: { item: "item", type: "type" }, ngImport: i0, template: "{{ content }}\n", styles: [""], changeDetection: i0.ChangeDetectionStrategy.OnPush });
52
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FsFilterChipContentComponent, isStandalone: true, selector: "fs-filter-chip-content", inputs: { item: "item", type: "type" }, ngImport: i0, template: "{{ content }}\n", styles: [""], changeDetection: i0.ChangeDetectionStrategy.OnPush });
53
53
  }
54
54
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FsFilterChipContentComponent, decorators: [{
55
55
  type: Component,
56
- args: [{ selector: 'fs-filter-chip-content', changeDetection: ChangeDetectionStrategy.OnPush, template: "{{ content }}\n" }]
56
+ args: [{ selector: 'fs-filter-chip-content', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "{{ content }}\n" }]
57
57
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { item: [{
58
58
  type: Input
59
59
  }], type: [{
@@ -68,4 +68,4 @@ function getLabelFromArray(labelArr, type) {
68
68
  }
69
69
  return '';
70
70
  }
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWNoaXAtY29udGVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVyLWNoaXAtY29udGVudC9maWx0ZXItY2hpcC1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItY2hpcC1jb250ZW50L2ZpbHRlci1jaGlwLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULEtBQUssR0FHTixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUczQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBU3hELE1BQU0sT0FBTyw0QkFBNEI7SUFTbkI7SUFQSixJQUFJLENBQThCO0lBQ2xDLElBQUksQ0FBZ0I7SUFFN0IsT0FBTyxDQUFDO0lBRVAsU0FBUyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFFbEMsWUFBb0IsTUFBeUI7UUFBekIsV0FBTSxHQUFOLE1BQU0sQ0FBbUI7SUFDN0MsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTSwyQkFBMkI7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNO2FBQ2IsSUFBSSxDQUNILFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sV0FBVztRQUNqQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFcEQsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0QyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLEVBQUUsRUFBRSxDQUFDO2dCQUMvQixPQUFPLEdBQUcsTUFBTSxFQUFFLENBQUM7WUFDckIsQ0FBQztZQUNELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZDLE1BQU0sS0FBSyxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFFaEUsT0FBTyxHQUFHLEtBQUssS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUMvQixDQUFDO1lBRUQsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLE1BQU0sRUFBRSxDQUFDO1FBRzdDLENBQUM7UUFDRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ25DLE1BQU0sS0FBSyxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUU1RCxPQUFPLEdBQUcsS0FBSyxLQUFLLE1BQU0sRUFBRSxDQUFDO1FBQy9CLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDN0IsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQztRQUVELE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssS0FBSyxNQUFNLEVBQUUsQ0FBQztJQUd6QyxDQUFDO3dHQTdEVSw0QkFBNEI7NEZBQTVCLDRCQUE0QixzR0N0QnpDLGlCQUNBOzs0RkRxQmEsNEJBQTRCO2tCQU54QyxTQUFTOytCQUNFLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTTtzRkFJL0IsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxJQUFJO3NCQUFuQixLQUFLOztBQTZEUixTQUFTLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxJQUFJO0lBQ3ZDLElBQUksSUFBSSxLQUFLLE1BQU0sSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNuQyxPQUFPLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDMUIsQ0FBQztTQUFNLElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN4QyxPQUFPLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELE9BQU8sRUFBRSxDQUFDO0FBRVosQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IElGaWx0ZXJDb25maWdJdGVtIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9jb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJhc2VJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2l0ZW1zL2Jhc2UtaXRlbSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtZmlsdGVyLWNoaXAtY29udGVudCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItY2hpcC1jb250ZW50LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsdGVyLWNoaXAtY29udGVudC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRnNGaWx0ZXJDaGlwQ29udGVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBASW5wdXQoKSBwdWJsaWMgaXRlbTogQmFzZUl0ZW08SUZpbHRlckNvbmZpZ0l0ZW0+O1xuICBASW5wdXQoKSBwdWJsaWMgdHlwZTogJ2Zyb20nIHwgJ3RvJztcblxuICBwdWJsaWMgY29udGVudDtcblxuICBwcml2YXRlIF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfY2RSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5saXN0ZW5WYWx1ZUNoYW5nZXNGb3JSYW5nZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KG51bGwpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgbGlzdGVuVmFsdWVDaGFuZ2VzRm9yUmFuZ2VzKCkge1xuICAgIHRoaXMuaXRlbS52YWx1ZSRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY29udGVudCA9IHRoaXMuX2dldENvbnRlbnQoKTtcbiAgICAgICAgdGhpcy5fY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDb250ZW50KCkge1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuaXRlbS5nZXRDaGlwc0NvbnRlbnQodGhpcy50eXBlKTtcblxuICAgIGlmICh0aGlzLml0ZW0uY2hpcExhYmVsICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmICh0aGlzLml0ZW0uY2hpcExhYmVsID09PSAnJykge1xuICAgICAgICByZXR1cm4gYCR7cmVzdWx0fWA7XG4gICAgICB9IFxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5pdGVtLmNoaXBMYWJlbCkpIHtcbiAgICAgICAgY29uc3QgbGFiZWwgPSBnZXRMYWJlbEZyb21BcnJheSh0aGlzLml0ZW0uY2hpcExhYmVsLCB0aGlzLnR5cGUpO1xuXG4gICAgICAgIHJldHVybiBgJHtsYWJlbH06ICR7cmVzdWx0fWA7XG4gICAgICB9XG4gXG4gICAgICByZXR1cm4gYCR7dGhpcy5pdGVtLmNoaXBMYWJlbH06ICR7cmVzdWx0fWA7XG4gICAgICAgIFxuICAgICAgXG4gICAgfSBcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLml0ZW0ubGFiZWwpKSB7XG4gICAgICBjb25zdCBsYWJlbCA9IGdldExhYmVsRnJvbUFycmF5KHRoaXMuaXRlbS5sYWJlbCwgdGhpcy50eXBlKTtcblxuICAgICAgcmV0dXJuIGAke2xhYmVsfTogJHtyZXN1bHR9YDtcbiAgICB9IFxuICAgIGlmICh0aGlzLml0ZW0uaXNUeXBlQ2hlY2tib3gpIHtcbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuIFxuICAgIHJldHVybiBgJHt0aGlzLml0ZW0ubGFiZWx9OiAke3Jlc3VsdH1gO1xuICAgICAgXG4gICAgXG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0TGFiZWxGcm9tQXJyYXkobGFiZWxBcnIsIHR5cGUpIHtcbiAgaWYgKHR5cGUgPT09ICdmcm9tJyAmJiBsYWJlbEFyclswXSkge1xuICAgIHJldHVybiBgJHtsYWJlbEFyclswXX1gO1xuICB9IGVsc2UgaWYgKHR5cGUgPT09ICd0bycgJiYgbGFiZWxBcnJbMV0pIHtcbiAgICByZXR1cm4gYCR7bGFiZWxBcnJbMV19YDtcbiAgfVxuIFxuICByZXR1cm4gJyc7XG4gIFxufVxuIiwie3sgY29udGVudCB9fVxuIl19
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWNoaXAtY29udGVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVyLWNoaXAtY29udGVudC9maWx0ZXItY2hpcC1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItY2hpcC1jb250ZW50L2ZpbHRlci1jaGlwLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULEtBQUssR0FHTixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUczQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBVXhELE1BQU0sT0FBTyw0QkFBNEI7SUFTbkI7SUFQSixJQUFJLENBQThCO0lBQ2xDLElBQUksQ0FBZ0I7SUFFN0IsT0FBTyxDQUFDO0lBRVAsU0FBUyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFFbEMsWUFBb0IsTUFBeUI7UUFBekIsV0FBTSxHQUFOLE1BQU0sQ0FBbUI7SUFDN0MsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTSwyQkFBMkI7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNO2FBQ2IsSUFBSSxDQUNILFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sV0FBVztRQUNqQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFcEQsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0QyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLEVBQUUsRUFBRSxDQUFDO2dCQUMvQixPQUFPLEdBQUcsTUFBTSxFQUFFLENBQUM7WUFDckIsQ0FBQztZQUNELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZDLE1BQU0sS0FBSyxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFFaEUsT0FBTyxHQUFHLEtBQUssS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUMvQixDQUFDO1lBRUQsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLE1BQU0sRUFBRSxDQUFDO1FBRzdDLENBQUM7UUFDRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ25DLE1BQU0sS0FBSyxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUU1RCxPQUFPLEdBQUcsS0FBSyxLQUFLLE1BQU0sRUFBRSxDQUFDO1FBQy9CLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDN0IsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQztRQUVELE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssS0FBSyxNQUFNLEVBQUUsQ0FBQztJQUd6QyxDQUFDO3dHQTdEVSw0QkFBNEI7NEZBQTVCLDRCQUE0QiwwSEN2QnpDLGlCQUNBOzs0RkRzQmEsNEJBQTRCO2tCQVB4QyxTQUFTOytCQUNJLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJO3NGQUlGLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSzs7QUE2RFIsU0FBUyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsSUFBSTtJQUN2QyxJQUFJLElBQUksS0FBSyxNQUFNLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDbkMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzFCLENBQUM7U0FBTSxJQUFJLElBQUksS0FBSyxJQUFJLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDeEMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxPQUFPLEVBQUUsQ0FBQztBQUVaLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBJRmlsdGVyQ29uZmlnSXRlbSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvY29uZmlnLmludGVyZmFjZSc7XG5pbXBvcnQgeyBCYXNlSXRlbSB9IGZyb20gJy4uLy4uL21vZGVscy9pdGVtcy9iYXNlLWl0ZW0nO1xuXG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZnMtZmlsdGVyLWNoaXAtY29udGVudCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZpbHRlci1jaGlwLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ZpbHRlci1jaGlwLWNvbnRlbnQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBGc0ZpbHRlckNoaXBDb250ZW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBpdGVtOiBCYXNlSXRlbTxJRmlsdGVyQ29uZmlnSXRlbT47XG4gIEBJbnB1dCgpIHB1YmxpYyB0eXBlOiAnZnJvbScgfCAndG8nO1xuXG4gIHB1YmxpYyBjb250ZW50O1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmxpc3RlblZhbHVlQ2hhbmdlc0ZvclJhbmdlcygpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQobnVsbCk7XG4gICAgdGhpcy5fZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBsaXN0ZW5WYWx1ZUNoYW5nZXNGb3JSYW5nZXMoKSB7XG4gICAgdGhpcy5pdGVtLnZhbHVlJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5fZ2V0Q29udGVudCgpO1xuICAgICAgICB0aGlzLl9jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENvbnRlbnQoKSB7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5pdGVtLmdldENoaXBzQ29udGVudCh0aGlzLnR5cGUpO1xuXG4gICAgaWYgKHRoaXMuaXRlbS5jaGlwTGFiZWwgIT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKHRoaXMuaXRlbS5jaGlwTGFiZWwgPT09ICcnKSB7XG4gICAgICAgIHJldHVybiBgJHtyZXN1bHR9YDtcbiAgICAgIH0gXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLml0ZW0uY2hpcExhYmVsKSkge1xuICAgICAgICBjb25zdCBsYWJlbCA9IGdldExhYmVsRnJvbUFycmF5KHRoaXMuaXRlbS5jaGlwTGFiZWwsIHRoaXMudHlwZSk7XG5cbiAgICAgICAgcmV0dXJuIGAke2xhYmVsfTogJHtyZXN1bHR9YDtcbiAgICAgIH1cbiBcbiAgICAgIHJldHVybiBgJHt0aGlzLml0ZW0uY2hpcExhYmVsfTogJHtyZXN1bHR9YDtcbiAgICAgICAgXG4gICAgICBcbiAgICB9IFxuICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMuaXRlbS5sYWJlbCkpIHtcbiAgICAgIGNvbnN0IGxhYmVsID0gZ2V0TGFiZWxGcm9tQXJyYXkodGhpcy5pdGVtLmxhYmVsLCB0aGlzLnR5cGUpO1xuXG4gICAgICByZXR1cm4gYCR7bGFiZWx9OiAke3Jlc3VsdH1gO1xuICAgIH0gXG4gICAgaWYgKHRoaXMuaXRlbS5pc1R5cGVDaGVja2JveCkge1xuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG4gXG4gICAgcmV0dXJuIGAke3RoaXMuaXRlbS5sYWJlbH06ICR7cmVzdWx0fWA7XG4gICAgICBcbiAgICBcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRMYWJlbEZyb21BcnJheShsYWJlbEFyciwgdHlwZSkge1xuICBpZiAodHlwZSA9PT0gJ2Zyb20nICYmIGxhYmVsQXJyWzBdKSB7XG4gICAgcmV0dXJuIGAke2xhYmVsQXJyWzBdfWA7XG4gIH0gZWxzZSBpZiAodHlwZSA9PT0gJ3RvJyAmJiBsYWJlbEFyclsxXSkge1xuICAgIHJldHVybiBgJHtsYWJlbEFyclsxXX1gO1xuICB9XG4gXG4gIHJldHVybiAnJztcbiAgXG59XG4iLCJ7eyBjb250ZW50IH19XG4iXX0=
@@ -1,18 +1,18 @@
1
+ import { AsyncPipe } from '@angular/common';
1
2
  import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
3
  import { ItemType } from '../../enums';
4
+ import { FsFilterChipComponent } from '../filter-chip/filter-chip.component';
3
5
  import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- import * as i2 from "../filter-chip/filter-chip.component";
6
6
  export class FsFilterChipsComponent {
7
7
  filters;
8
8
  ItemType = ItemType;
9
9
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FsFilterChipsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
10
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FsFilterChipsComponent, selector: "fs-filter-chips", inputs: { filters: "filters" }, ngImport: i0, template: "<ng-container *ngFor=\"let item of filters\">\n <ng-container *ngIf=\"(item.value$ | async) !== undefined && item.type !== ItemType.Keyword\">\n @if (item.isChipVisible) {\n <fs-filter-chip [item]=\"item\"></fs-filter-chip>\n }\n </ng-container>\n</ng-container>", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FsFilterChipComponent, selector: "fs-filter-chip", inputs: ["item"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
10
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FsFilterChipsComponent, isStandalone: true, selector: "fs-filter-chips", inputs: { filters: "filters" }, ngImport: i0, template: "@for (item of filters; track item) {\n @if ((item.value$ | async) !== undefined && item.type !== ItemType.Keyword) {\n @if (item.isChipVisible) {\n <fs-filter-chip [item]=\"item\"></fs-filter-chip>\n }\n }\n}", styles: [""], dependencies: [{ kind: "component", type: FsFilterChipComponent, selector: "fs-filter-chip", inputs: ["item"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
11
11
  }
12
12
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FsFilterChipsComponent, decorators: [{
13
13
  type: Component,
14
- args: [{ selector: 'fs-filter-chips', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngFor=\"let item of filters\">\n <ng-container *ngIf=\"(item.value$ | async) !== undefined && item.type !== ItemType.Keyword\">\n @if (item.isChipVisible) {\n <fs-filter-chip [item]=\"item\"></fs-filter-chip>\n }\n </ng-container>\n</ng-container>" }]
14
+ args: [{ selector: 'fs-filter-chips', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [FsFilterChipComponent, AsyncPipe], template: "@for (item of filters; track item) {\n @if ((item.value$ | async) !== undefined && item.type !== ItemType.Keyword) {\n @if (item.isChipVisible) {\n <fs-filter-chip [item]=\"item\"></fs-filter-chip>\n }\n }\n}" }]
15
15
  }], propDecorators: { filters: [{
16
16
  type: Input
17
17
  }] } });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWNoaXBzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItY2hpcHMvZmlsdGVyLWNoaXBzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItY2hpcHMvZmlsdGVyLWNoaXBzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7QUFVdkMsTUFBTSxPQUFPLHNCQUFzQjtJQUVqQixPQUFPLENBQWtCO0lBRWxDLFFBQVEsR0FBRyxRQUFRLENBQUM7d0dBSmhCLHNCQUFzQjs0RkFBdEIsc0JBQXNCLHVGQ1puQyxxUkFNZTs7NEZETUYsc0JBQXNCO2tCQU5sQyxTQUFTOytCQUNFLGlCQUFpQixtQkFHVix1QkFBdUIsQ0FBQyxNQUFNOzhCQUkvQixPQUFPO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgSXRlbVR5cGUgfSBmcm9tICcuLi8uLi9lbnVtcyc7XG5pbXBvcnQgeyBCYXNlSXRlbSB9IGZyb20gJy4uLy4uL21vZGVscy9pdGVtcy9iYXNlLWl0ZW0nO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLWZpbHRlci1jaGlwcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItY2hpcHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWx0ZXItY2hpcHMuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZzRmlsdGVyQ2hpcHNDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBmaWx0ZXJzOiBCYXNlSXRlbTxhbnk+W107XG5cbiAgcHVibGljIEl0ZW1UeXBlID0gSXRlbVR5cGU7XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGZpbHRlcnNcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihpdGVtLnZhbHVlJCB8IGFzeW5jKSAhPT0gdW5kZWZpbmVkICYmIGl0ZW0udHlwZSAhPT0gSXRlbVR5cGUuS2V5d29yZFwiPlxuICAgIEBpZiAoaXRlbS5pc0NoaXBWaXNpYmxlKSB7XG4gICAgICA8ZnMtZmlsdGVyLWNoaXAgW2l0ZW1dPVwiaXRlbVwiPjwvZnMtZmlsdGVyLWNoaXA+XG4gICAgfVxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPiJdfQ==
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWNoaXBzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItY2hpcHMvZmlsdGVyLWNoaXBzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItY2hpcHMvZmlsdGVyLWNoaXBzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXZDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOztBQVc3RSxNQUFNLE9BQU8sc0JBQXNCO0lBRWpCLE9BQU8sQ0FBa0I7SUFFbEMsUUFBUSxHQUFHLFFBQVEsQ0FBQzt3R0FKaEIsc0JBQXNCOzRGQUF0QixzQkFBc0IsMkdDaEJuQywrTkFNQywwRERRVyxxQkFBcUIsd0VBQUUsU0FBUzs7NEZBRS9CLHNCQUFzQjtrQkFSbEMsU0FBUzsrQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxxQkFBcUIsRUFBRSxTQUFTLENBQUM7OEJBSTNCLE9BQU87c0JBQXRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgSXRlbVR5cGUgfSBmcm9tICcuLi8uLi9lbnVtcyc7XG5pbXBvcnQgeyBCYXNlSXRlbSB9IGZyb20gJy4uLy4uL21vZGVscy9pdGVtcy9iYXNlLWl0ZW0nO1xuaW1wb3J0IHsgRnNGaWx0ZXJDaGlwQ29tcG9uZW50IH0gZnJvbSAnLi4vZmlsdGVyLWNoaXAvZmlsdGVyLWNoaXAuY29tcG9uZW50JztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmcy1maWx0ZXItY2hpcHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsdGVyLWNoaXBzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsdGVyLWNoaXBzLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbRnNGaWx0ZXJDaGlwQ29tcG9uZW50LCBBc3luY1BpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBGc0ZpbHRlckNoaXBzQ29tcG9uZW50IHtcblxuICBASW5wdXQoKSBwdWJsaWMgZmlsdGVyczogQmFzZUl0ZW08YW55PltdO1xuXG4gIHB1YmxpYyBJdGVtVHlwZSA9IEl0ZW1UeXBlO1xufVxuIiwiQGZvciAoaXRlbSBvZiBmaWx0ZXJzOyB0cmFjayBpdGVtKSB7XG4gIEBpZiAoKGl0ZW0udmFsdWUkIHwgYXN5bmMpICE9PSB1bmRlZmluZWQgJiYgaXRlbS50eXBlICE9PSBJdGVtVHlwZS5LZXl3b3JkKSB7XG4gICAgQGlmIChpdGVtLmlzQ2hpcFZpc2libGUpIHtcbiAgICAgIDxmcy1maWx0ZXItY2hpcCBbaXRlbV09XCJpdGVtXCI+PC9mcy1maWx0ZXItY2hpcD5cbiAgICB9XG4gIH1cbn0iXX0=
@@ -1,34 +1,39 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostListener, Inject, Input, } from '@angular/core';
2
- import { OverlayRef } from '@angular/cdk/overlay';
1
+ import { AsyncPipe } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, DestroyRef, HostListener, inject, Input, } from '@angular/core';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { MatFormField, MatLabel } from '@angular/material/form-field';
5
+ import { MatIcon } from '@angular/material/icon';
6
+ import { MatInput } from '@angular/material/input';
7
+ import { FsFormModule } from '@firestitch/form';
8
+ import { FsMessage } from '@firestitch/message';
9
+ import { FsSkeletonModule } from '@firestitch/skeleton';
10
+ import { tap } from 'rxjs';
11
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
3
12
  import { FILTER_DRAWER_DATA } from '../../injectors/filter-drawer-data';
4
13
  import { FILTER_DRAWER_OVERLAY } from '../../injectors/filter-drawer-overlay';
5
14
  import { ExternalParamsController } from '../../services/external-params-controller.service';
6
15
  import { FsFilterItemsStore } from '../../services/items-store.service';
16
+ import { SavedFiltersController } from '../../services/saved-filters-controller.service';
17
+ import { FsFilterDrawerActionsComponent } from '../filter-drawer-actions/filter-drawer-actions.component';
18
+ import { FilterItemComponent } from '../filters-item/filter-item.component';
7
19
  import * as i0 from "@angular/core";
8
- import * as i1 from "../../services/external-params-controller.service";
9
- import * as i2 from "../../services/items-store.service";
10
- import * as i3 from "@angular/common";
11
- import * as i4 from "@angular/material/icon";
12
- import * as i5 from "@firestitch/skeleton";
13
- import * as i6 from "../filters-item/filter-item.component";
14
- import * as i7 from "../filter-drawer-actions/filter-drawer-actions.component";
15
- import * as i8 from "@angular/cdk/overlay";
20
+ import * as i1 from "@angular/forms";
21
+ import * as i2 from "@firestitch/form";
22
+ import * as i3 from "@firestitch/skeleton";
16
23
  export class FilterDrawerComponent {
17
- _overlayRef;
18
- _data;
19
- externalParams;
20
- _cd;
21
- _itemsStore;
22
24
  inline = false;
23
25
  windowDesktop = false;
26
+ savedFilterName = '';
24
27
  _clear;
25
28
  _done;
26
- constructor(_overlayRef, _data, externalParams, _cd, _itemsStore) {
27
- this._overlayRef = _overlayRef;
28
- this._data = _data;
29
- this.externalParams = externalParams;
30
- this._cd = _cd;
31
- this._itemsStore = _itemsStore;
29
+ _destroyRef = inject(DestroyRef);
30
+ _savedFiltersController = inject(SavedFiltersController);
31
+ _message = inject(FsMessage);
32
+ _itemsStore = inject(FsFilterItemsStore);
33
+ _overlayRef = inject(FILTER_DRAWER_OVERLAY);
34
+ _data = inject(FILTER_DRAWER_DATA);
35
+ _externalParams = inject(ExternalParamsController);
36
+ constructor() {
32
37
  this._itemsStore.prepareItems();
33
38
  this._clear = this._data.clear;
34
39
  this._done = this._data.done;
@@ -40,11 +45,18 @@ export class FilterDrawerComponent {
40
45
  get items$() {
41
46
  return this._itemsStore.visibleItems$;
42
47
  }
43
- get sortItem() {
44
- return this._itemsStore.sortByItem;
48
+ get externalParams() {
49
+ return this._externalParams;
45
50
  }
46
- get sortDirectionItem() {
47
- return this._itemsStore.sortDirectionItem;
51
+ get savedFiltersController() {
52
+ return this._savedFiltersController;
53
+ }
54
+ ngOnInit() {
55
+ this._savedFiltersController.activeFilter$
56
+ .pipe(takeUntilDestroyed(this._destroyRef))
57
+ .subscribe((activeFilter) => {
58
+ this.savedFilterName = activeFilter?.name || '';
59
+ });
48
60
  }
49
61
  clear() {
50
62
  this._clear();
@@ -56,22 +68,38 @@ export class FilterDrawerComponent {
56
68
  backdropClick() {
57
69
  this.done();
58
70
  }
59
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FilterDrawerComponent, deps: [{ token: FILTER_DRAWER_OVERLAY }, { token: FILTER_DRAWER_DATA }, { token: i1.ExternalParamsController }, { token: i0.ChangeDetectorRef }, { token: i2.FsFilterItemsStore }], target: i0.ɵɵFactoryTarget.Component });
60
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FilterDrawerComponent, selector: "ng-component", inputs: { inline: "inline" }, host: { listeners: { "window:resize": "updateWindowWidth()" } }, ngImport: i0, template: "<div class=\"filters\">\n <div class=\"filters-wrap\">\n\n <div class=\"filter-by\">\n <mat-icon svgIcon=\"filterOutline\"></mat-icon>\n <span class=\"text\">Filters</span>\n </div>\n\n <div class=\"overflow-shadow filter-items\">\n <div class=\"overflow-shadow-content\">\n <ng-container *fsSkeleton=\"(externalParams.pending$ | async) !== true\">\n <filter-item \n *ngFor=\"let filterItem of items$ | async\"\n class=\"filter-group\"\n [item]=\"filterItem\">\n </filter-item>\n\n <ng-container *ngIf=\"sortItem && sortItem.values && sortItem.values.length > 0\">\n <filter-item \n class=\"filter-group sort\"\n [item]=\"sortItem\">\n </filter-item>\n <filter-item \n class=\"filter-group sort\"\n [item]=\"sortDirectionItem\">\n </filter-item>\n </ng-container>\n </ng-container>\n </div>\n </div>\n\n <fs-filter-drawer-actions \n class=\"filter-actions\"\n *ngIf=\"(externalParams.pending$ | async) !== true\"\n (clear)=\"clear()\"\n (done)=\"done()\">\n </fs-filter-drawer-actions>\n </div>\n</div>\n<div class=\"backdrop\" *ngIf=\"!windowDesktop\" (click)=\"backdropClick()\"></div>\n", styles: ["@charset \"UTF-8\";@media (max-width: 599px){h1[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"]{margin-top:0}}@media (max-width: 1023px){h1[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"]{margin-top:0}}@media (max-width: 1439px){h1[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"]{margin-top:0}}.fs-delimit>*{display:inline-flex}.fs-delimit>*:not(:last-child):after{content:\",\\a0\"}:host ::ng-deep mat-form-field{width:100%}.filter-by{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:20px 25px}.filter-by mat-icon{margin-right:8px;font-size:24px;line-height:24px}.filter-by .text{font-weight:400;font-size:19px}.filter-actions{display:block;box-sizing:border-box;padding:13px}.filter-actions button{margin-right:6px}.filter-actions button:last-child{margin-right:0}.filters{position:fixed;display:block;top:0;right:0;z-index:1002;bottom:0}.filters .filters-wrap{background:#fff;box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;width:100vw;max-width:350px;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top);box-sizing:border-box;height:100%}.filters .filters-wrap .filter-items{padding-top:5px;overflow-y:auto;height:auto}.filters .filters-wrap .filter-items .overflow-shadow-content{padding:0 25px;box-sizing:border-box}.filters .filter-group{margin:10px 0 0}.filters .filter-group:first-child{margin:0}.filters .filter label{white-space:nowrap;color:#0000008a}.filters .filter .interface.interface-range input,.filters .filter .interface.interface-range .mat-input-wrapper,.filters .filter .interface.interface-range{text-align:center}.filters .filter .interface.interface-datetime fs-datetime.has-time .md-input{width:100%}.filters .filter .interface fs-datetime-range input{text-align:center}.filters .filter .filter-label{width:1%;white-space:nowrap;vertical-align:middle;padding-right:15px}.filters md-autocomplete-container md-input-container{margin:0}.filters .isolate{margin-top:-12px}.filters .isolate .interface{line-height:20px;padding-bottom:1.25em}.filters .isolate md-checkbox{margin:0 0 0 2px}.backdrop{position:fixed;inset:0;z-index:900;outline:none}@media (max-width: 599px){.filters .filters-wrap{max-width:none}}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.FsSkeletonContentDirective, selector: "[fsSkeleton]", inputs: ["fsSkeleton", "fsSkeletonPattern"] }, { kind: "component", type: i6.FilterItemComponent, selector: "filter-item", inputs: ["item"] }, { kind: "component", type: i7.FsFilterDrawerActionsComponent, selector: "fs-filter-drawer-actions", outputs: ["clear", "done"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
71
+ saveSavedFilter = () => {
72
+ return this._savedFiltersController
73
+ .save({ name: this.savedFilterName })
74
+ .pipe(tap((savedFilter) => {
75
+ this._savedFiltersController.setActiveFilter(savedFilter);
76
+ this._message
77
+ .success(`Saved ${this._savedFiltersController.singularLabel}`, {
78
+ positionClass: 'toast-bottom-left',
79
+ });
80
+ }));
81
+ };
82
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FilterDrawerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
83
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FilterDrawerComponent, isStandalone: true, selector: "ng-component", inputs: { inline: "inline" }, host: { listeners: { "window:resize": "updateWindowWidth()" } }, ngImport: i0, template: "<form\n fsForm\n [submit]=\"saveSavedFilter\"\n [dirtySubmitButton]=\"false\">\n <div class=\"filters\">\n <div class=\"filters-wrap\">\n @if (savedFiltersController.activeFilter$ | async) {\n <div class=\"filter-heading\">\n <mat-icon>\n {{ savedFiltersController.labelIcon }}\n </mat-icon>\n <span class=\"text\">\n {{ savedFiltersController.singularLabel }}\n </span>\n </div>\n <div class=\"filter-name\">\n <mat-form-field>\n <mat-label>\n {{ savedFiltersController.singularLabel }} name\n </mat-label>\n <input\n matInput\n required\n [(ngModel)]=\"savedFilterName\"\n name=\"savedFilterName\">\n </mat-form-field>\n <hr>\n <br>\n </div>\n } @else {\n <div class=\"filter-heading\">\n <mat-icon svgIcon=\"filterOutline\"></mat-icon>\n <span class=\"text\">\n Filters\n </span>\n </div>\n }\n <div class=\"overflow-shadow filter-items\">\n <div class=\"overflow-shadow-content\">\n <ng-container *fsSkeleton=\"(externalParams.pending$ | async) !== true\">\n @for (filterItem of items$ | async; track filterItem) {\n <filter-item\n class=\"filter-group\"\n [item]=\"filterItem\">\n </filter-item>\n }\n </ng-container>\n </div>\n </div>\n @if ((externalParams.pending$ | async) !== true) {\n <fs-filter-drawer-actions\n class=\"filter-actions\"\n (clear)=\"clear()\"\n (done)=\"done()\">\n </fs-filter-drawer-actions>\n }\n </div>\n </div>\n @if (!windowDesktop) {\n <div\n class=\"backdrop\"\n (click)=\"backdropClick()\">\n </div>\n }\n</form>", styles: ["@charset \"UTF-8\";@media (max-width: 599px){h1[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"]{margin-top:0}}@media (max-width: 1023px){h1[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"]{margin-top:0}}@media (max-width: 1439px){h1[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"]{margin-top:0}}div[class*=fs-delimit]:not([class*=\".middot\"])>:not(:last-child):after{content:\",\\a0\"}div[class*=fs-delimit][class*=\".middot\"]>:not(:last-child):after{content:\"\\a0\\b7\\a0\"}div[class*=fs-delimit]>*{display:inline-flex}:host ::ng-deep mat-form-field{width:100%}.filter-heading{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:0 25px 20px}.filter-heading mat-icon{margin-right:8px;font-size:24px;line-height:24px}.filter-heading .text{font-weight:400;font-size:19px}.filter-name{padding:0 25px}.filter-name hr{border-color:#a4a4a4;border-top:0;border-left:0;border-right:0}.filter-actions{display:block;box-sizing:border-box;padding:13px}.filter-actions button{margin-right:6px}.filter-actions button:last-child{margin-right:0}.filters{position:fixed;display:block;top:0;right:0;z-index:1002;bottom:0}.filters .filters-wrap{background:#fff;box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;width:100vw;max-width:350px;display:flex;flex-direction:column;padding-top:calc(env(safe-area-inset-top) + 20px);box-sizing:border-box;height:100%}.filters .filters-wrap .filter-items{padding-top:5px;overflow-y:auto;height:auto}.filters .filters-wrap .filter-items .overflow-shadow-content{padding:0 25px;box-sizing:border-box}.filters .filter-group{margin:10px 0 0}.filters .filter-group:first-child{margin:0}.filters .filter label{white-space:nowrap;color:#0000008a}.filters .filter .interface.interface-range input,.filters .filter .interface.interface-range .mat-input-wrapper,.filters .filter .interface.interface-range{text-align:center}.filters .filter .interface.interface-datetime fs-datetime.has-time .md-input{width:100%}.filters .filter .interface fs-datetime-range input{text-align:center}.filters .filter .filter-label{width:1%;white-space:nowrap;vertical-align:middle;padding-right:15px}.filters md-autocomplete-container md-input-container{margin:0}.filters .isolate{margin-top:-12px}.filters .isolate .interface{line-height:20px;padding-bottom:1.25em}.filters .isolate md-checkbox{margin:0 0 0 2px}.backdrop{position:fixed;inset:0;z-index:900;outline:none}@media (max-width: 599px){.filters .filters-wrap{max-width:none}}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { 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.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: FsFormModule }, { kind: "directive", type: i2.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "deactivationGuard"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"], exportAs: ["fsForm"] }, { kind: "directive", type: i2.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "directive", type: 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: "ngmodule", type: FsSkeletonModule }, { kind: "directive", type: i3.FsSkeletonContentDirective, selector: "[fsSkeleton]", inputs: ["fsSkeleton", "fsSkeletonPattern"] }, { kind: "component", type: FilterItemComponent, selector: "filter-item", inputs: ["item"] }, { kind: "component", type: FsFilterDrawerActionsComponent, selector: "fs-filter-drawer-actions", inputs: ["savedFiltersController"], outputs: ["clear", "done"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
61
84
  }
62
85
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FilterDrawerComponent, decorators: [{
63
86
  type: Component,
64
- args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"filters\">\n <div class=\"filters-wrap\">\n\n <div class=\"filter-by\">\n <mat-icon svgIcon=\"filterOutline\"></mat-icon>\n <span class=\"text\">Filters</span>\n </div>\n\n <div class=\"overflow-shadow filter-items\">\n <div class=\"overflow-shadow-content\">\n <ng-container *fsSkeleton=\"(externalParams.pending$ | async) !== true\">\n <filter-item \n *ngFor=\"let filterItem of items$ | async\"\n class=\"filter-group\"\n [item]=\"filterItem\">\n </filter-item>\n\n <ng-container *ngIf=\"sortItem && sortItem.values && sortItem.values.length > 0\">\n <filter-item \n class=\"filter-group sort\"\n [item]=\"sortItem\">\n </filter-item>\n <filter-item \n class=\"filter-group sort\"\n [item]=\"sortDirectionItem\">\n </filter-item>\n </ng-container>\n </ng-container>\n </div>\n </div>\n\n <fs-filter-drawer-actions \n class=\"filter-actions\"\n *ngIf=\"(externalParams.pending$ | async) !== true\"\n (clear)=\"clear()\"\n (done)=\"done()\">\n </fs-filter-drawer-actions>\n </div>\n</div>\n<div class=\"backdrop\" *ngIf=\"!windowDesktop\" (click)=\"backdropClick()\"></div>\n", styles: ["@charset \"UTF-8\";@media (max-width: 599px){h1[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"]{margin-top:0}}@media (max-width: 1023px){h1[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"]{margin-top:0}}@media (max-width: 1439px){h1[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"]{margin-top:0}}.fs-delimit>*{display:inline-flex}.fs-delimit>*:not(:last-child):after{content:\",\\a0\"}:host ::ng-deep mat-form-field{width:100%}.filter-by{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:20px 25px}.filter-by mat-icon{margin-right:8px;font-size:24px;line-height:24px}.filter-by .text{font-weight:400;font-size:19px}.filter-actions{display:block;box-sizing:border-box;padding:13px}.filter-actions button{margin-right:6px}.filter-actions button:last-child{margin-right:0}.filters{position:fixed;display:block;top:0;right:0;z-index:1002;bottom:0}.filters .filters-wrap{background:#fff;box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;width:100vw;max-width:350px;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top);box-sizing:border-box;height:100%}.filters .filters-wrap .filter-items{padding-top:5px;overflow-y:auto;height:auto}.filters .filters-wrap .filter-items .overflow-shadow-content{padding:0 25px;box-sizing:border-box}.filters .filter-group{margin:10px 0 0}.filters .filter-group:first-child{margin:0}.filters .filter label{white-space:nowrap;color:#0000008a}.filters .filter .interface.interface-range input,.filters .filter .interface.interface-range .mat-input-wrapper,.filters .filter .interface.interface-range{text-align:center}.filters .filter .interface.interface-datetime fs-datetime.has-time .md-input{width:100%}.filters .filter .interface fs-datetime-range input{text-align:center}.filters .filter .filter-label{width:1%;white-space:nowrap;vertical-align:middle;padding-right:15px}.filters md-autocomplete-container md-input-container{margin:0}.filters .isolate{margin-top:-12px}.filters .isolate .interface{line-height:20px;padding-bottom:1.25em}.filters .isolate md-checkbox{margin:0 0 0 2px}.backdrop{position:fixed;inset:0;z-index:900;outline:none}@media (max-width: 599px){.filters .filters-wrap{max-width:none}}\n"] }]
65
- }], ctorParameters: () => [{ type: i8.OverlayRef, decorators: [{
66
- type: Inject,
67
- args: [FILTER_DRAWER_OVERLAY]
68
- }] }, { type: undefined, decorators: [{
69
- type: Inject,
70
- args: [FILTER_DRAWER_DATA]
71
- }] }, { type: i1.ExternalParamsController }, { type: i0.ChangeDetectorRef }, { type: i2.FsFilterItemsStore }], propDecorators: { inline: [{
87
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
88
+ FormsModule,
89
+ FsFormModule,
90
+ MatIcon,
91
+ MatFormField,
92
+ MatLabel,
93
+ MatInput,
94
+ FsSkeletonModule,
95
+ FilterItemComponent,
96
+ FsFilterDrawerActionsComponent,
97
+ AsyncPipe,
98
+ ], template: "<form\n fsForm\n [submit]=\"saveSavedFilter\"\n [dirtySubmitButton]=\"false\">\n <div class=\"filters\">\n <div class=\"filters-wrap\">\n @if (savedFiltersController.activeFilter$ | async) {\n <div class=\"filter-heading\">\n <mat-icon>\n {{ savedFiltersController.labelIcon }}\n </mat-icon>\n <span class=\"text\">\n {{ savedFiltersController.singularLabel }}\n </span>\n </div>\n <div class=\"filter-name\">\n <mat-form-field>\n <mat-label>\n {{ savedFiltersController.singularLabel }} name\n </mat-label>\n <input\n matInput\n required\n [(ngModel)]=\"savedFilterName\"\n name=\"savedFilterName\">\n </mat-form-field>\n <hr>\n <br>\n </div>\n } @else {\n <div class=\"filter-heading\">\n <mat-icon svgIcon=\"filterOutline\"></mat-icon>\n <span class=\"text\">\n Filters\n </span>\n </div>\n }\n <div class=\"overflow-shadow filter-items\">\n <div class=\"overflow-shadow-content\">\n <ng-container *fsSkeleton=\"(externalParams.pending$ | async) !== true\">\n @for (filterItem of items$ | async; track filterItem) {\n <filter-item\n class=\"filter-group\"\n [item]=\"filterItem\">\n </filter-item>\n }\n </ng-container>\n </div>\n </div>\n @if ((externalParams.pending$ | async) !== true) {\n <fs-filter-drawer-actions\n class=\"filter-actions\"\n (clear)=\"clear()\"\n (done)=\"done()\">\n </fs-filter-drawer-actions>\n }\n </div>\n </div>\n @if (!windowDesktop) {\n <div\n class=\"backdrop\"\n (click)=\"backdropClick()\">\n </div>\n }\n</form>", styles: ["@charset \"UTF-8\";@media (max-width: 599px){h1[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"]{margin-top:0}}@media (max-width: 1023px){h1[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"]{margin-top:0}}@media (max-width: 1439px){h1[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"]{margin-top:0}}div[class*=fs-delimit]:not([class*=\".middot\"])>:not(:last-child):after{content:\",\\a0\"}div[class*=fs-delimit][class*=\".middot\"]>:not(:last-child):after{content:\"\\a0\\b7\\a0\"}div[class*=fs-delimit]>*{display:inline-flex}:host ::ng-deep mat-form-field{width:100%}.filter-heading{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;padding:0 25px 20px}.filter-heading mat-icon{margin-right:8px;font-size:24px;line-height:24px}.filter-heading .text{font-weight:400;font-size:19px}.filter-name{padding:0 25px}.filter-name hr{border-color:#a4a4a4;border-top:0;border-left:0;border-right:0}.filter-actions{display:block;box-sizing:border-box;padding:13px}.filter-actions button{margin-right:6px}.filter-actions button:last-child{margin-right:0}.filters{position:fixed;display:block;top:0;right:0;z-index:1002;bottom:0}.filters .filters-wrap{background:#fff;box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;width:100vw;max-width:350px;display:flex;flex-direction:column;padding-top:calc(env(safe-area-inset-top) + 20px);box-sizing:border-box;height:100%}.filters .filters-wrap .filter-items{padding-top:5px;overflow-y:auto;height:auto}.filters .filters-wrap .filter-items .overflow-shadow-content{padding:0 25px;box-sizing:border-box}.filters .filter-group{margin:10px 0 0}.filters .filter-group:first-child{margin:0}.filters .filter label{white-space:nowrap;color:#0000008a}.filters .filter .interface.interface-range input,.filters .filter .interface.interface-range .mat-input-wrapper,.filters .filter .interface.interface-range{text-align:center}.filters .filter .interface.interface-datetime fs-datetime.has-time .md-input{width:100%}.filters .filter .interface fs-datetime-range input{text-align:center}.filters .filter .filter-label{width:1%;white-space:nowrap;vertical-align:middle;padding-right:15px}.filters md-autocomplete-container md-input-container{margin:0}.filters .isolate{margin-top:-12px}.filters .isolate .interface{line-height:20px;padding-bottom:1.25em}.filters .isolate md-checkbox{margin:0 0 0 2px}.backdrop{position:fixed;inset:0;z-index:900;outline:none}@media (max-width: 599px){.filters .filters-wrap{max-width:none}}\n"] }]
99
+ }], ctorParameters: () => [], propDecorators: { inline: [{
72
100
  type: Input
73
101
  }], updateWindowWidth: [{
74
102
  type: HostListener,
75
103
  args: ['window:resize']
76
104
  }] } });
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWRyYXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVyLWRyYXdlci9maWx0ZXItZHJhd2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItZHJhd2VyL2ZpbHRlci1kcmF3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUlsRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUU5RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM3RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7Ozs7Ozs7OztBQVN4RSxNQUFNLE9BQU8scUJBQXFCO0lBVVM7SUFDSDtJQUM3QjtJQUNHO0lBQ0E7SUFaSSxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBRXhCLGFBQWEsR0FBRyxLQUFLLENBQUM7SUFFbkIsTUFBTSxDQUFhO0lBQ25CLEtBQUssQ0FBYTtJQUU1QixZQUN5QyxXQUF1QixFQUMxQixLQUFLLEVBQ2xDLGNBQXdDLEVBQ3JDLEdBQXNCLEVBQ3RCLFdBQStCO1FBSkYsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDMUIsVUFBSyxHQUFMLEtBQUssQ0FBQTtRQUNsQyxtQkFBYyxHQUFkLGNBQWMsQ0FBMEI7UUFDckMsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsZ0JBQVcsR0FBWCxXQUFXLENBQW9CO1FBRXpDLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFaEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUMvQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBRTdCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFHTSxpQkFBaUI7UUFDdEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUM7SUFDckMsQ0FBQztJQUVELElBQVcsaUJBQWlCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQztJQUM1QyxDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRU0sSUFBSTtRQUNULElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVNLGFBQWE7UUFDbEIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQzt3R0FwRFUscUJBQXFCLGtCQVV0QixxQkFBcUIsYUFDckIsa0JBQWtCOzRGQVhqQixxQkFBcUIsbUpDMUJsQyxrekNBd0NBOzs0RkRkYSxxQkFBcUI7a0JBTGpDLFNBQVM7c0NBR1MsdUJBQXVCLENBQUMsTUFBTTs7MEJBWTVDLE1BQU07MkJBQUMscUJBQXFCOzswQkFDNUIsTUFBTTsyQkFBQyxrQkFBa0I7aUpBVFosTUFBTTtzQkFBckIsS0FBSztnQkF1QkMsaUJBQWlCO3NCQUR2QixZQUFZO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSG9zdExpc3RlbmVyLFxuICBJbmplY3QsXG4gIElucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBGSUxURVJfRFJBV0VSX0RBVEEgfSBmcm9tICcuLi8uLi9pbmplY3RvcnMvZmlsdGVyLWRyYXdlci1kYXRhJztcbmltcG9ydCB7IEZJTFRFUl9EUkFXRVJfT1ZFUkxBWSB9IGZyb20gJy4uLy4uL2luamVjdG9ycy9maWx0ZXItZHJhd2VyLW92ZXJsYXknO1xuaW1wb3J0IHsgQmFzZUl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvaXRlbXMvYmFzZS1pdGVtJztcbmltcG9ydCB7IEV4dGVybmFsUGFyYW1zQ29udHJvbGxlciB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2V4dGVybmFsLXBhcmFtcy1jb250cm9sbGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRnNGaWx0ZXJJdGVtc1N0b3JlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvaXRlbXMtc3RvcmUuc2VydmljZSc7XG5cbnR5cGUgSXRlbSA9IEJhc2VJdGVtPGFueT47XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vZmlsdGVyLWRyYXdlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbHRlci1kcmF3ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZpbHRlckRyYXdlckNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgcHVibGljIGlubGluZSA9IGZhbHNlO1xuXG4gIHB1YmxpYyB3aW5kb3dEZXNrdG9wID0gZmFsc2U7XG5cbiAgcHJvdGVjdGVkIF9jbGVhcjogKCkgPT4gdm9pZDtcbiAgcHJvdGVjdGVkIF9kb25lOiAoKSA9PiB2b2lkO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoRklMVEVSX0RSQVdFUl9PVkVSTEFZKSBwcml2YXRlIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmLFxuICAgIEBJbmplY3QoRklMVEVSX0RSQVdFUl9EQVRBKSBwcml2YXRlIF9kYXRhLFxuICAgIHB1YmxpYyBleHRlcm5hbFBhcmFtczogRXh0ZXJuYWxQYXJhbXNDb250cm9sbGVyLFxuICAgIHByb3RlY3RlZCBfY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByb3RlY3RlZCBfaXRlbXNTdG9yZTogRnNGaWx0ZXJJdGVtc1N0b3JlLFxuICApIHtcbiAgICB0aGlzLl9pdGVtc1N0b3JlLnByZXBhcmVJdGVtcygpO1xuXG4gICAgdGhpcy5fY2xlYXIgPSB0aGlzLl9kYXRhLmNsZWFyO1xuICAgIHRoaXMuX2RvbmUgPSB0aGlzLl9kYXRhLmRvbmU7XG5cbiAgICB0aGlzLnVwZGF0ZVdpbmRvd1dpZHRoKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJylcbiAgcHVibGljIHVwZGF0ZVdpbmRvd1dpZHRoKCkge1xuICAgIHRoaXMud2luZG93RGVza3RvcCA9IHdpbmRvdy5pbm5lcldpZHRoID4gMTIwMDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXRlbXMkKCk6IE9ic2VydmFibGU8SXRlbVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuX2l0ZW1zU3RvcmUudmlzaWJsZUl0ZW1zJDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc29ydEl0ZW0oKTogSXRlbSB7XG4gICAgcmV0dXJuIHRoaXMuX2l0ZW1zU3RvcmUuc29ydEJ5SXRlbTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc29ydERpcmVjdGlvbkl0ZW0oKTogSXRlbSB7XG4gICAgcmV0dXJuIHRoaXMuX2l0ZW1zU3RvcmUuc29ydERpcmVjdGlvbkl0ZW07XG4gIH1cblxuICBwdWJsaWMgY2xlYXIoKSB7XG4gICAgdGhpcy5fY2xlYXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBkb25lKCkge1xuICAgIHRoaXMuX2RvbmUoKTtcbiAgICB0aGlzLl9vdmVybGF5UmVmLmRldGFjaCgpO1xuICB9XG5cbiAgcHVibGljIGJhY2tkcm9wQ2xpY2soKSB7XG4gICAgdGhpcy5kb25lKCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmaWx0ZXJzXCI+XG4gIDxkaXYgY2xhc3M9XCJmaWx0ZXJzLXdyYXBcIj5cblxuICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItYnlcIj5cbiAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwiZmlsdGVyT3V0bGluZVwiPjwvbWF0LWljb24+XG4gICAgICA8c3BhbiBjbGFzcz1cInRleHRcIj5GaWx0ZXJzPC9zcGFuPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cIm92ZXJmbG93LXNoYWRvdyBmaWx0ZXItaXRlbXNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJvdmVyZmxvdy1zaGFkb3ctY29udGVudFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpmc1NrZWxldG9uPVwiKGV4dGVybmFsUGFyYW1zLnBlbmRpbmckIHwgYXN5bmMpICE9PSB0cnVlXCI+XG4gICAgICAgICAgPGZpbHRlci1pdGVtIFxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGZpbHRlckl0ZW0gb2YgaXRlbXMkIHwgYXN5bmNcIlxuICAgICAgICAgICAgY2xhc3M9XCJmaWx0ZXItZ3JvdXBcIlxuICAgICAgICAgICAgW2l0ZW1dPVwiZmlsdGVySXRlbVwiPlxuICAgICAgICAgIDwvZmlsdGVyLWl0ZW0+XG5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic29ydEl0ZW0gJiYgc29ydEl0ZW0udmFsdWVzICYmIHNvcnRJdGVtLnZhbHVlcy5sZW5ndGggPiAwXCI+XG4gICAgICAgICAgICA8ZmlsdGVyLWl0ZW0gXG4gICAgICAgICAgICAgIGNsYXNzPVwiZmlsdGVyLWdyb3VwIHNvcnRcIlxuICAgICAgICAgICAgICBbaXRlbV09XCJzb3J0SXRlbVwiPlxuICAgICAgICAgICAgPC9maWx0ZXItaXRlbT5cbiAgICAgICAgICAgIDxmaWx0ZXItaXRlbSBcbiAgICAgICAgICAgICAgY2xhc3M9XCJmaWx0ZXItZ3JvdXAgc29ydFwiXG4gICAgICAgICAgICAgIFtpdGVtXT1cInNvcnREaXJlY3Rpb25JdGVtXCI+XG4gICAgICAgICAgICA8L2ZpbHRlci1pdGVtPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGZzLWZpbHRlci1kcmF3ZXItYWN0aW9ucyBcbiAgICAgIGNsYXNzPVwiZmlsdGVyLWFjdGlvbnNcIlxuICAgICAgKm5nSWY9XCIoZXh0ZXJuYWxQYXJhbXMucGVuZGluZyQgfCBhc3luYykgIT09IHRydWVcIlxuICAgICAgKGNsZWFyKT1cImNsZWFyKClcIlxuICAgICAgKGRvbmUpPVwiZG9uZSgpXCI+XG4gICAgPC9mcy1maWx0ZXItZHJhd2VyLWFjdGlvbnM+XG4gIDwvZGl2PlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiYmFja2Ryb3BcIiAqbmdJZj1cIiF3aW5kb3dEZXNrdG9wXCIgKGNsaWNrKT1cImJhY2tkcm9wQ2xpY2soKVwiPjwvZGl2PlxuIl19
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWRyYXdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVyLWRyYXdlci9maWx0ZXItZHJhd2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItZHJhd2VyL2ZpbHRlci1kcmF3ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssR0FFTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRW5ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEQsT0FBTyxFQUFjLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV2QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUU5RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM3RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUN6RixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUMxRyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7Ozs7QUFzQjVFLE1BQU0sT0FBTyxxQkFBcUI7SUFFaEIsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUV4QixhQUFhLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFFbEIsTUFBTSxDQUFhO0lBQ25CLEtBQUssQ0FBYTtJQUNsQixXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRW5DLHVCQUF1QixHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQ3pELFFBQVEsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0IsV0FBVyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3pDLFdBQVcsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUM1QyxLQUFLLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDbkMsZUFBZSxHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBRTNEO1FBRUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQy9CLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFFN0IsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUdNLGlCQUFpQjtRQUN0QixJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQ2hELENBQUM7SUFFRCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFXLGNBQWM7UUFDdkIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFXLHNCQUFzQjtRQUMvQixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQztJQUN0QyxDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxhQUFhO2FBQ3ZDLElBQUksQ0FDSCxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQ3JDO2FBQ0EsU0FBUyxDQUFDLENBQUMsWUFBWSxFQUFFLEVBQUU7WUFDMUIsSUFBSSxDQUFDLGVBQWUsR0FBRyxZQUFZLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUNsRCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxJQUFJO1FBQ1QsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU0sYUFBYTtRQUNsQixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDO0lBRU0sZUFBZSxHQUFHLEdBQUcsRUFBRTtRQUM1QixPQUFPLElBQUksQ0FBQyx1QkFBdUI7YUFDaEMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQzthQUNwQyxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDbEIsSUFBSSxDQUFDLHVCQUF1QixDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUMxRCxJQUFJLENBQUMsUUFBUTtpQkFDVixPQUFPLENBQUMsU0FBUyxJQUFJLENBQUMsdUJBQXVCLENBQUMsYUFBYSxFQUFFLEVBQUU7Z0JBQzlELGFBQWEsRUFBRSxtQkFBbUI7YUFDbkMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNOLENBQUMsQ0FBQzt3R0EvRVMscUJBQXFCOzRGQUFyQixxQkFBcUIsdUtDckRsQyx3NURBZ0VPLHM5RkR2QkgsV0FBVyxvd0NBQ1gsWUFBWSxtbkJBQ1osT0FBTywySUFDUCxZQUFZLDRMQUNaLFFBQVEsc0RBQ1IsUUFBUSxnVUFDUixnQkFBZ0Isa0tBQ2hCLG1CQUFtQiwwRUFDbkIsOEJBQThCLGdJQUM5QixTQUFTOzs0RkFHQSxxQkFBcUI7a0JBbEJqQyxTQUFTO3NDQUdTLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLFdBQVc7d0JBQ1gsWUFBWTt3QkFDWixPQUFPO3dCQUNQLFlBQVk7d0JBQ1osUUFBUTt3QkFDUixRQUFRO3dCQUNSLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3dCQUNuQiw4QkFBOEI7d0JBQzlCLFNBQVM7cUJBQ1Y7d0RBSWUsTUFBTTtzQkFBckIsS0FBSztnQkEwQkMsaUJBQWlCO3NCQUR2QixZQUFZO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRGVzdHJveVJlZixcbiAgSG9zdExpc3RlbmVyLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IE1hdEZvcm1GaWVsZCwgTWF0TGFiZWwgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuXG5pbXBvcnQgeyBGc0Zvcm1Nb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9mb3JtJztcbmltcG9ydCB7IEZzTWVzc2FnZSB9IGZyb20gJ0BmaXJlc3RpdGNoL21lc3NhZ2UnO1xuaW1wb3J0IHsgRnNTa2VsZXRvbk1vZHVsZSB9IGZyb20gJ0BmaXJlc3RpdGNoL3NrZWxldG9uJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGFwIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuaW1wb3J0IHsgRklMVEVSX0RSQVdFUl9EQVRBIH0gZnJvbSAnLi4vLi4vaW5qZWN0b3JzL2ZpbHRlci1kcmF3ZXItZGF0YSc7XG5pbXBvcnQgeyBGSUxURVJfRFJBV0VSX09WRVJMQVkgfSBmcm9tICcuLi8uLi9pbmplY3RvcnMvZmlsdGVyLWRyYXdlci1vdmVybGF5JztcbmltcG9ydCB7IEJhc2VJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2l0ZW1zL2Jhc2UtaXRlbSc7XG5pbXBvcnQgeyBFeHRlcm5hbFBhcmFtc0NvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9leHRlcm5hbC1wYXJhbXMtY29udHJvbGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IEZzRmlsdGVySXRlbXNTdG9yZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2l0ZW1zLXN0b3JlLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2F2ZWRGaWx0ZXJzQ29udHJvbGxlciB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NhdmVkLWZpbHRlcnMtY29udHJvbGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IEZzRmlsdGVyRHJhd2VyQWN0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4uL2ZpbHRlci1kcmF3ZXItYWN0aW9ucy9maWx0ZXItZHJhd2VyLWFjdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IEZpbHRlckl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9maWx0ZXJzLWl0ZW0vZmlsdGVyLWl0ZW0uY29tcG9uZW50JztcblxudHlwZSBJdGVtID0gQmFzZUl0ZW08YW55PjtcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItZHJhd2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsdGVyLWRyYXdlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEZvcm1zTW9kdWxlLFxuICAgIEZzRm9ybU1vZHVsZSxcbiAgICBNYXRJY29uLFxuICAgIE1hdEZvcm1GaWVsZCxcbiAgICBNYXRMYWJlbCxcbiAgICBNYXRJbnB1dCxcbiAgICBGc1NrZWxldG9uTW9kdWxlLFxuICAgIEZpbHRlckl0ZW1Db21wb25lbnQsXG4gICAgRnNGaWx0ZXJEcmF3ZXJBY3Rpb25zQ29tcG9uZW50LFxuICAgIEFzeW5jUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRmlsdGVyRHJhd2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBwdWJsaWMgaW5saW5lID0gZmFsc2U7XG5cbiAgcHVibGljIHdpbmRvd0Rlc2t0b3AgPSBmYWxzZTtcbiAgcHVibGljIHNhdmVkRmlsdGVyTmFtZSA9ICcnO1xuXG4gIHByb3RlY3RlZCBfY2xlYXI6ICgpID0+IHZvaWQ7XG4gIHByb3RlY3RlZCBfZG9uZTogKCkgPT4gdm9pZDtcbiAgcHJvdGVjdGVkIF9kZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gIHByaXZhdGUgX3NhdmVkRmlsdGVyc0NvbnRyb2xsZXIgPSBpbmplY3QoU2F2ZWRGaWx0ZXJzQ29udHJvbGxlcik7XG4gIHByaXZhdGUgX21lc3NhZ2UgPSBpbmplY3QoRnNNZXNzYWdlKTtcbiAgcHJpdmF0ZSBfaXRlbXNTdG9yZSA9IGluamVjdChGc0ZpbHRlckl0ZW1zU3RvcmUpO1xuICBwcml2YXRlIF9vdmVybGF5UmVmID0gaW5qZWN0KEZJTFRFUl9EUkFXRVJfT1ZFUkxBWSk7XG4gIHByaXZhdGUgX2RhdGEgPSBpbmplY3QoRklMVEVSX0RSQVdFUl9EQVRBKTtcbiAgcHJpdmF0ZSBfZXh0ZXJuYWxQYXJhbXMgPSBpbmplY3QoRXh0ZXJuYWxQYXJhbXNDb250cm9sbGVyKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgKSB7XG4gICAgdGhpcy5faXRlbXNTdG9yZS5wcmVwYXJlSXRlbXMoKTtcbiAgICB0aGlzLl9jbGVhciA9IHRoaXMuX2RhdGEuY2xlYXI7XG4gICAgdGhpcy5fZG9uZSA9IHRoaXMuX2RhdGEuZG9uZTtcblxuICAgIHRoaXMudXBkYXRlV2luZG93V2lkdGgoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnKVxuICBwdWJsaWMgdXBkYXRlV2luZG93V2lkdGgoKSB7XG4gICAgdGhpcy53aW5kb3dEZXNrdG9wID0gd2luZG93LmlubmVyV2lkdGggPiAxMjAwO1xuICB9XG5cbiAgcHVibGljIGdldCBpdGVtcyQoKTogT2JzZXJ2YWJsZTxJdGVtW10+IHtcbiAgICByZXR1cm4gdGhpcy5faXRlbXNTdG9yZS52aXNpYmxlSXRlbXMkO1xuICB9XG5cbiAgcHVibGljIGdldCBleHRlcm5hbFBhcmFtcygpOiBFeHRlcm5hbFBhcmFtc0NvbnRyb2xsZXIge1xuICAgIHJldHVybiB0aGlzLl9leHRlcm5hbFBhcmFtcztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2F2ZWRGaWx0ZXJzQ29udHJvbGxlcigpOiBTYXZlZEZpbHRlcnNDb250cm9sbGVyIHtcbiAgICByZXR1cm4gdGhpcy5fc2F2ZWRGaWx0ZXJzQ29udHJvbGxlcjtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9zYXZlZEZpbHRlcnNDb250cm9sbGVyLmFjdGl2ZUZpbHRlciRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5fZGVzdHJveVJlZiksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChhY3RpdmVGaWx0ZXIpID0+IHtcbiAgICAgICAgdGhpcy5zYXZlZEZpbHRlck5hbWUgPSBhY3RpdmVGaWx0ZXI/Lm5hbWUgfHwgJyc7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhcigpIHtcbiAgICB0aGlzLl9jbGVhcigpO1xuICB9XG5cbiAgcHVibGljIGRvbmUoKSB7XG4gICAgdGhpcy5fZG9uZSgpO1xuICAgIHRoaXMuX292ZXJsYXlSZWYuZGV0YWNoKCk7XG4gIH1cblxuICBwdWJsaWMgYmFja2Ryb3BDbGljaygpIHtcbiAgICB0aGlzLmRvbmUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzYXZlU2F2ZWRGaWx0ZXIgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuX3NhdmVkRmlsdGVyc0NvbnRyb2xsZXJcbiAgICAgIC5zYXZlKHsgbmFtZTogdGhpcy5zYXZlZEZpbHRlck5hbWUgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKHNhdmVkRmlsdGVyKSA9PiB7XG4gICAgICAgICAgdGhpcy5fc2F2ZWRGaWx0ZXJzQ29udHJvbGxlci5zZXRBY3RpdmVGaWx0ZXIoc2F2ZWRGaWx0ZXIpO1xuICAgICAgICAgIHRoaXMuX21lc3NhZ2VcbiAgICAgICAgICAgIC5zdWNjZXNzKGBTYXZlZCAke3RoaXMuX3NhdmVkRmlsdGVyc0NvbnRyb2xsZXIuc2luZ3VsYXJMYWJlbH1gLCB7IFxuICAgICAgICAgICAgICBwb3NpdGlvbkNsYXNzOiAndG9hc3QtYm90dG9tLWxlZnQnLCBcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH07XG59XG4iLCI8Zm9ybVxuICAgIGZzRm9ybVxuICAgIFtzdWJtaXRdPVwic2F2ZVNhdmVkRmlsdGVyXCJcbiAgICBbZGlydHlTdWJtaXRCdXR0b25dPVwiZmFsc2VcIj5cbiAgPGRpdiBjbGFzcz1cImZpbHRlcnNcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZmlsdGVycy13cmFwXCI+XG4gICAgICBAaWYgKHNhdmVkRmlsdGVyc0NvbnRyb2xsZXIuYWN0aXZlRmlsdGVyJCB8IGFzeW5jKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaGVhZGluZ1wiPlxuICAgICAgICAgIDxtYXQtaWNvbj5cbiAgICAgICAgICAgIHt7IHNhdmVkRmlsdGVyc0NvbnRyb2xsZXIubGFiZWxJY29uIH19XG4gICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHRcIj5cbiAgICAgICAgICAgIHt7IHNhdmVkRmlsdGVyc0NvbnRyb2xsZXIuc2luZ3VsYXJMYWJlbCB9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItbmFtZVwiPlxuICAgICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIDxtYXQtbGFiZWw+XG4gICAgICAgICAgICAgIHt7IHNhdmVkRmlsdGVyc0NvbnRyb2xsZXIuc2luZ3VsYXJMYWJlbCB9fSBuYW1lXG4gICAgICAgICAgICA8L21hdC1sYWJlbD5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNhdmVkRmlsdGVyTmFtZVwiXG4gICAgICAgICAgICAgIG5hbWU9XCJzYXZlZEZpbHRlck5hbWVcIj5cbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDxocj5cbiAgICAgICAgICA8YnI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItaGVhZGluZ1wiPlxuICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwiZmlsdGVyT3V0bGluZVwiPjwvbWF0LWljb24+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0XCI+XG4gICAgICAgICAgICBGaWx0ZXJzXG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICAgIDxkaXYgY2xhc3M9XCJvdmVyZmxvdy1zaGFkb3cgZmlsdGVyLWl0ZW1zXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJvdmVyZmxvdy1zaGFkb3ctY29udGVudFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKmZzU2tlbGV0b249XCIoZXh0ZXJuYWxQYXJhbXMucGVuZGluZyQgfCBhc3luYykgIT09IHRydWVcIj5cbiAgICAgICAgICAgIEBmb3IgKGZpbHRlckl0ZW0gb2YgaXRlbXMkIHwgYXN5bmM7IHRyYWNrIGZpbHRlckl0ZW0pIHtcbiAgICAgICAgICAgICAgPGZpbHRlci1pdGVtXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmaWx0ZXItZ3JvdXBcIlxuICAgICAgICAgICAgICAgIFtpdGVtXT1cImZpbHRlckl0ZW1cIj5cbiAgICAgICAgICAgICAgPC9maWx0ZXItaXRlbT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIEBpZiAoKGV4dGVybmFsUGFyYW1zLnBlbmRpbmckIHwgYXN5bmMpICE9PSB0cnVlKSB7XG4gICAgICAgIDxmcy1maWx0ZXItZHJhd2VyLWFjdGlvbnNcbiAgICAgICAgICBjbGFzcz1cImZpbHRlci1hY3Rpb25zXCJcbiAgICAgICAgICAoY2xlYXIpPVwiY2xlYXIoKVwiXG4gICAgICAgICAgKGRvbmUpPVwiZG9uZSgpXCI+XG4gICAgICAgIDwvZnMtZmlsdGVyLWRyYXdlci1hY3Rpb25zPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgQGlmICghd2luZG93RGVza3RvcCkge1xuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiYmFja2Ryb3BcIlxuICAgICAgKGNsaWNrKT1cImJhY2tkcm9wQ2xpY2soKVwiPlxuICAgIDwvZGl2PlxuICB9XG48L2Zvcm0+Il19
@@ -1,27 +1,47 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, Output } from '@angular/core';
1
+ import { AsyncPipe } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, EventEmitter, inject, Input, Output } from '@angular/core';
3
+ import { MatButton } from '@angular/material/button';
4
+ import { FsFormModule } from '@firestitch/form';
5
+ import { FsMessage } from '@firestitch/message';
6
+ import { tap } from 'rxjs';
2
7
  import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/material/button";
4
- import * as i2 from "@firestitch/form";
8
+ import * as i1 from "@firestitch/form";
5
9
  export class FsFilterDrawerActionsComponent {
10
+ savedFiltersController;
6
11
  _clear = new EventEmitter();
7
12
  _done = new EventEmitter();
13
+ _message = inject(FsMessage);
8
14
  done() {
9
15
  this._done.emit();
10
16
  }
11
17
  clear() {
12
18
  this._clear.emit();
13
19
  }
20
+ createFilter() {
21
+ this.savedFiltersController.create()
22
+ .pipe(tap(() => {
23
+ this._message
24
+ .success(`Created ${this.savedFiltersController.singularLabel}`, { positionClass: 'toast-bottom-left' });
25
+ }))
26
+ .subscribe();
27
+ }
14
28
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FsFilterDrawerActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
15
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FsFilterDrawerActionsComponent, selector: "fs-filter-drawer-actions", outputs: { _clear: "clear", _done: "done" }, ngImport: i0, template: "<a mat-button color=\"primary\" (click)=\"done()\">Done</a>\n<a mat-button (click)=\"clear()\">Clear</a>\n\n\n", styles: ["@charset \"UTF-8\";@media (max-width: 599px){h1[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"]{margin-top:0}}@media (max-width: 1023px){h1[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"]{margin-top:0}}@media (max-width: 1439px){h1[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"]{margin-top:0}}.fs-delimit>*{display:inline-flex}.fs-delimit>*:not(:last-child):after{content:\",\\a0\"}@media (max-width: 599px){a{width:100%}}\n"], dependencies: [{ kind: "component", type: i1.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i2.FsButtonDirective, selector: "[mat-raised-button]:not([fsFormButtonStandalone]),[mat-button]:not([fsFormButtonStandalone]),[mat-flat-button]:not([fsFormButtonStandalone]),[mat-stroked-button]:not([fsFormButtonStandalone])", inputs: ["name", "dirtySubmit", "form"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
29
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FsFilterDrawerActionsComponent, isStandalone: true, selector: "fs-filter-drawer-actions", inputs: { savedFiltersController: "savedFiltersController" }, outputs: { _clear: "clear", _done: "done" }, ngImport: i0, template: "<div class=\"filter-drawer-actions-container\">\n <button\n mat-button\n color=\"primary\"\n type=\"button\"\n (click)=\"done()\">\n Done\n </button>\n @if (savedFiltersController.enabled) {\n @if (savedFiltersController.activeFilter$ | async) {\n <button\n mat-button\n type=\"submit\">\n Save\n </button>\n } @else {\n <button\n mat-button\n type=\"button\"\n (click)=\"createFilter()\">\n Create\n {{ savedFiltersController.singularLabelLower }}\n </button>\n }\n }\n <button\n mat-button\n type=\"button\"\n (click)=\"clear()\">\n Clear\n </button>\n</div>", styles: ["@charset \"UTF-8\";@media (max-width: 599px){h1[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"]{margin-top:0}}@media (max-width: 1023px){h1[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"]{margin-top:0}}@media (max-width: 1439px){h1[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"]{margin-top:0}}div[class*=fs-delimit]:not([class*=\".middot\"])>:not(:last-child):after{content:\",\\a0\"}div[class*=fs-delimit][class*=\".middot\"]>:not(:last-child):after{content:\"\\a0\\b7\\a0\"}div[class*=fs-delimit]>*{display:inline-flex}@media (max-width: 599px){a{width:100%}}.filter-drawer-actions-container{display:flex;flex-wrap:wrap}\n"], dependencies: [{ kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: FsFormModule }, { kind: "directive", type: i1.FsButtonDirective, selector: "[mat-raised-button],[mat-button],[mat-flat-button],[mat-stroked-button]", inputs: ["name", "dirtySubmit"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
16
30
  }
17
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FsFilterDrawerActionsComponent, decorators: [{
18
32
  type: Component,
19
- args: [{ selector: 'fs-filter-drawer-actions', changeDetection: ChangeDetectionStrategy.OnPush, template: "<a mat-button color=\"primary\" (click)=\"done()\">Done</a>\n<a mat-button (click)=\"clear()\">Clear</a>\n\n\n", styles: ["@charset \"UTF-8\";@media (max-width: 599px){h1[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"]{margin-top:0}}@media (max-width: 1023px){h1[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"]{margin-top:0}}@media (max-width: 1439px){h1[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"]{margin-top:0}}.fs-delimit>*{display:inline-flex}.fs-delimit>*:not(:last-child):after{content:\",\\a0\"}@media (max-width: 599px){a{width:100%}}\n"] }]
20
- }], propDecorators: { _clear: [{
33
+ args: [{ selector: 'fs-filter-drawer-actions', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
34
+ MatButton,
35
+ FsFormModule,
36
+ AsyncPipe,
37
+ ], template: "<div class=\"filter-drawer-actions-container\">\n <button\n mat-button\n color=\"primary\"\n type=\"button\"\n (click)=\"done()\">\n Done\n </button>\n @if (savedFiltersController.enabled) {\n @if (savedFiltersController.activeFilter$ | async) {\n <button\n mat-button\n type=\"submit\">\n Save\n </button>\n } @else {\n <button\n mat-button\n type=\"button\"\n (click)=\"createFilter()\">\n Create\n {{ savedFiltersController.singularLabelLower }}\n </button>\n }\n }\n <button\n mat-button\n type=\"button\"\n (click)=\"clear()\">\n Clear\n </button>\n</div>", styles: ["@charset \"UTF-8\";@media (max-width: 599px){h1[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-xs*=fs-heading][fs\\.lt-xs*=\".top-none\"]{margin-top:0}}@media (max-width: 1023px){h1[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-sm*=fs-heading][fs\\.lt-sm*=\".top-none\"]{margin-top:0}}@media (max-width: 1439px){h1[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h2[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"],h3[class*=\".top\"][fs\\.lt-md*=fs-heading][fs\\.lt-md*=\".top-none\"]{margin-top:0}}div[class*=fs-delimit]:not([class*=\".middot\"])>:not(:last-child):after{content:\",\\a0\"}div[class*=fs-delimit][class*=\".middot\"]>:not(:last-child):after{content:\"\\a0\\b7\\a0\"}div[class*=fs-delimit]>*{display:inline-flex}@media (max-width: 599px){a{width:100%}}.filter-drawer-actions-container{display:flex;flex-wrap:wrap}\n"] }]
38
+ }], propDecorators: { savedFiltersController: [{
39
+ type: Input
40
+ }], _clear: [{
21
41
  type: Output,
22
42
  args: ['clear']
23
43
  }], _done: [{
24
44
  type: Output,
25
45
  args: ['done']
26
46
  }] } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWRyYXdlci1hY3Rpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItZHJhd2VyLWFjdGlvbnMvZmlsdGVyLWRyYXdlci1hY3Rpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItZHJhd2VyLWFjdGlvbnMvZmlsdGVyLWRyYXdlci1hY3Rpb25zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVN6RixNQUFNLE9BQU8sOEJBQThCO0lBR2pDLE1BQU0sR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBR2xDLEtBQUssR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBRWxDLElBQUk7UUFDVCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQixDQUFDO3dHQWRVLDhCQUE4Qjs0RkFBOUIsOEJBQThCLDZHQ1QzQyxnSEFJQTs7NEZES2EsOEJBQThCO2tCQU4xQyxTQUFTOytCQUNFLDBCQUEwQixtQkFHbkIsdUJBQXVCLENBQUMsTUFBTTs4QkFLdkMsTUFBTTtzQkFEYixNQUFNO3VCQUFDLE9BQU87Z0JBSVAsS0FBSztzQkFEWixNQUFNO3VCQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLWZpbHRlci1kcmF3ZXItYWN0aW9ucycsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItZHJhd2VyLWFjdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWx0ZXItZHJhd2VyLWFjdGlvbnMuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZzRmlsdGVyRHJhd2VyQWN0aW9uc0NvbXBvbmVudCB7XG5cbiAgQE91dHB1dCgnY2xlYXInKVxuICBwcml2YXRlIF9jbGVhciA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAT3V0cHV0KCdkb25lJylcbiAgcHJpdmF0ZSBfZG9uZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBwdWJsaWMgZG9uZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kb25lLmVtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhcigpOiB2b2lkIHtcbiAgICB0aGlzLl9jbGVhci5lbWl0KCk7XG4gIH1cbiBcbn1cbiIsIjxhIG1hdC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cImRvbmUoKVwiPkRvbmU8L2E+XG48YSBtYXQtYnV0dG9uIChjbGljayk9XCJjbGVhcigpXCI+Q2xlYXI8L2E+XG5cblxuIl19
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWRyYXdlci1hY3Rpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItZHJhd2VyLWFjdGlvbnMvZmlsdGVyLWRyYXdlci1hY3Rpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItZHJhd2VyLWFjdGlvbnMvZmlsdGVyLWRyYXdlci1hY3Rpb25zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFpQjNCLE1BQU0sT0FBTyw4QkFBOEI7SUFHbEMsc0JBQXNCLENBQXlCO0lBRzlDLE1BQU0sR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBR2xDLEtBQUssR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBRWpDLFFBQVEsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFOUIsSUFBSTtRQUNULElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxZQUFZO1FBQ2pCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxNQUFNLEVBQUU7YUFDakMsSUFBSSxDQUNILEdBQUcsQ0FBQyxHQUFHLEVBQUU7WUFDUCxJQUFJLENBQUMsUUFBUTtpQkFDVixPQUFPLENBQUMsV0FBVyxJQUFJLENBQUMsc0JBQXNCLENBQUMsYUFBYSxFQUFFLEVBQzdELEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLENBQ3ZDLENBQUM7UUFDTixDQUFDLENBQUMsQ0FDSDthQUNBLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7d0dBaENVLDhCQUE4Qjs0RkFBOUIsOEJBQThCLCtMQ3pCM0MsZ3NCQStCTSxpcENEWEYsU0FBUyxnTEFDVCxZQUFZLG1NQUNaLFNBQVM7OzRGQUdBLDhCQUE4QjtrQkFaMUMsU0FBUzsrQkFDRSwwQkFBMEIsbUJBR25CLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLFNBQVM7d0JBQ1QsWUFBWTt3QkFDWixTQUFTO3FCQUNWOzhCQUtNLHNCQUFzQjtzQkFENUIsS0FBSztnQkFJRSxNQUFNO3NCQURiLE1BQU07dUJBQUMsT0FBTztnQkFJUCxLQUFLO3NCQURaLE1BQU07dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBNYXRCdXR0b24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuXG5pbXBvcnQgeyBGc0Zvcm1Nb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9mb3JtJztcbmltcG9ydCB7IEZzTWVzc2FnZSB9IGZyb20gJ0BmaXJlc3RpdGNoL21lc3NhZ2UnO1xuXG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHR5cGUgeyBTYXZlZEZpbHRlcnNDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2F2ZWQtZmlsdGVycy1jb250cm9sbGVyLnNlcnZpY2UnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLWZpbHRlci1kcmF3ZXItYWN0aW9ucycsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItZHJhd2VyLWFjdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWx0ZXItZHJhd2VyLWFjdGlvbnMuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXRCdXR0b24sXG4gICAgRnNGb3JtTW9kdWxlLFxuICAgIEFzeW5jUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRnNGaWx0ZXJEcmF3ZXJBY3Rpb25zQ29tcG9uZW50IHtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2F2ZWRGaWx0ZXJzQ29udHJvbGxlcjogU2F2ZWRGaWx0ZXJzQ29udHJvbGxlcjtcblxuICBAT3V0cHV0KCdjbGVhcicpXG4gIHByaXZhdGUgX2NsZWFyID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoJ2RvbmUnKVxuICBwcml2YXRlIF9kb25lID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHByaXZhdGUgX21lc3NhZ2UgPSBpbmplY3QoRnNNZXNzYWdlKTtcblxuICBwdWJsaWMgZG9uZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kb25lLmVtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhcigpOiB2b2lkIHtcbiAgICB0aGlzLl9jbGVhci5lbWl0KCk7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlRmlsdGVyKCk6IHZvaWQge1xuICAgIHRoaXMuc2F2ZWRGaWx0ZXJzQ29udHJvbGxlci5jcmVhdGUoKSBcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX21lc3NhZ2VcbiAgICAgICAgICAgIC5zdWNjZXNzKGBDcmVhdGVkICR7dGhpcy5zYXZlZEZpbHRlcnNDb250cm9sbGVyLnNpbmd1bGFyTGFiZWx9YCxcbiAgICAgICAgICAgICAgeyBwb3NpdGlvbkNsYXNzOiAndG9hc3QtYm90dG9tLWxlZnQnIH0sXG4gICAgICAgICAgICApO1xuICAgICAgICB9KSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuIFxufVxuIiwiPGRpdiBjbGFzcz1cImZpbHRlci1kcmF3ZXItYWN0aW9ucy1jb250YWluZXJcIj5cbiAgPGJ1dHRvblxuICAgICAgbWF0LWJ1dHRvblxuICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgKGNsaWNrKT1cImRvbmUoKVwiPlxuICAgIERvbmVcbiAgPC9idXR0b24+XG4gIEBpZiAoc2F2ZWRGaWx0ZXJzQ29udHJvbGxlci5lbmFibGVkKSB7XG4gICAgQGlmIChzYXZlZEZpbHRlcnNDb250cm9sbGVyLmFjdGl2ZUZpbHRlciQgfCBhc3luYykge1xuICAgICAgPGJ1dHRvblxuICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICB0eXBlPVwic3VibWl0XCI+XG4gICAgICAgIFNhdmVcbiAgICAgIDwvYnV0dG9uPlxuICAgIH0gQGVsc2Uge1xuICAgICAgPGJ1dHRvblxuICAgICAgICAgIG1hdC1idXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAoY2xpY2spPVwiY3JlYXRlRmlsdGVyKClcIj5cbiAgICAgICAgQ3JlYXRlXG4gICAgICAgIHt7IHNhdmVkRmlsdGVyc0NvbnRyb2xsZXIuc2luZ3VsYXJMYWJlbExvd2VyIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICB9XG4gIH1cbiAgPGJ1dHRvblxuICAgICAgbWF0LWJ1dHRvblxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAoY2xpY2spPVwiY2xlYXIoKVwiPlxuICAgIENsZWFyXG4gIDwvYnV0dG9uPlxuPC9kaXY+Il19
@@ -1,10 +1,13 @@
1
1
  import { ChangeDetectionStrategy, ChangeDetectorRef, Component, KeyValueDiffers, } from '@angular/core';
2
2
  import { BaseItemComponent } from '../base-item/base-item.component';
3
+ import { FsAutocompleteModule } from '@firestitch/autocomplete';
4
+ import { FocusToItemDirective } from '../../../directives/focus-to-item/focus-to-item.directive';
5
+ import { FormsModule } from '@angular/forms';
6
+ import { FsFormModule } from '@firestitch/form';
3
7
  import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/forms";
5
- import * as i2 from "@firestitch/autocomplete";
8
+ import * as i1 from "@firestitch/autocomplete";
9
+ import * as i2 from "@angular/forms";
6
10
  import * as i3 from "@firestitch/form";
7
- import * as i4 from "../../../directives/focus-to-item/focus-to-item.directive";
8
11
  export class AutocompleteComponent extends BaseItemComponent {
9
12
  _kvDiffers;
10
13
  _cd;
@@ -20,10 +23,15 @@ export class AutocompleteComponent extends BaseItemComponent {
20
23
  return this.item.valuesFn(keyword, this.item.filter);
21
24
  };
22
25
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AutocompleteComponent, deps: [{ token: i0.KeyValueDiffers }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
23
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AutocompleteComponent, selector: "filter-item-autocomplete", usesInheritance: true, ngImport: i0, template: "<fs-autocomplete\n [fsFilterFocusTrigger]=\"item\"\n [fetch]=\"fetch\"\n [displayWith]=\"displayWith\"\n [(ngModel)]=\"item.model\"\n [placeholder]=\"label\"\n [fetchOnFocus]=\"item.fetchOnFocus\"\n [showClear]=\"item.showClear\"\n name=\"item.name\">\n <ng-template fsAutocompleteTemplate let-data=\"data\">\n {{data.name}}\n </ng-template>\n</fs-autocomplete>\n", dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.FsAutocompleteComponent, selector: "fs-autocomplete", inputs: ["fetch", "displayWith", "placeholder", "fetchOnFocus", "readonly", "required", "disabled", "formFieldClass", "appearance", "hint", "panelWidth", "panelClass", "showClear"], outputs: ["cleared", "opened", "closed"] }, { kind: "directive", type: i2.FsAutocompleteTemplateDirective, selector: "[fsAutocompleteTemplate]" }, { kind: "directive", type: i3.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormGreaterEqual]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { kind: "directive", type: i4.FocusToItemDirective, selector: "[fsFilterFocusTrigger]", inputs: ["fsFilterFocusTrigger", "focusTargetType"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
26
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AutocompleteComponent, isStandalone: true, selector: "filter-item-autocomplete", usesInheritance: true, ngImport: i0, template: "<fs-autocomplete\n [fsFilterFocusTrigger]=\"item\"\n [fetch]=\"fetch\"\n [displayWith]=\"displayWith\"\n [(ngModel)]=\"item.model\"\n [placeholder]=\"label\"\n [fetchOnFocus]=\"item.fetchOnFocus\"\n [showClear]=\"item.showClear\"\n name=\"item.name\">\n <ng-template fsAutocompleteTemplate let-data=\"data\">\n {{data.name}}\n </ng-template>\n</fs-autocomplete>\n", dependencies: [{ kind: "ngmodule", type: FsAutocompleteModule }, { kind: "component", type: i1.FsAutocompleteComponent, selector: "fs-autocomplete", inputs: ["fetch", "displayWith", "placeholder", "fetchOnFocus", "readonly", "required", "disabled", "formFieldClass", "appearance", "hint", "panelWidth", "panelClass", "showClear"], outputs: ["cleared", "opened", "closed"] }, { kind: "directive", type: i1.FsAutocompleteTemplateDirective, selector: "[fsAutocompleteTemplate]" }, { kind: "directive", type: FocusToItemDirective, selector: "[fsFilterFocusTrigger]", inputs: ["fsFilterFocusTrigger", "focusTargetType"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: FsFormModule }, { kind: "directive", type: i3.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormGreaterEqual]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
24
27
  }
25
28
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AutocompleteComponent, decorators: [{
26
29
  type: Component,
27
- args: [{ selector: 'filter-item-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fs-autocomplete\n [fsFilterFocusTrigger]=\"item\"\n [fetch]=\"fetch\"\n [displayWith]=\"displayWith\"\n [(ngModel)]=\"item.model\"\n [placeholder]=\"label\"\n [fetchOnFocus]=\"item.fetchOnFocus\"\n [showClear]=\"item.showClear\"\n name=\"item.name\">\n <ng-template fsAutocompleteTemplate let-data=\"data\">\n {{data.name}}\n </ng-template>\n</fs-autocomplete>\n" }]
30
+ args: [{ selector: 'filter-item-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
31
+ FsAutocompleteModule,
32
+ FocusToItemDirective,
33
+ FormsModule,
34
+ FsFormModule,
35
+ ], template: "<fs-autocomplete\n [fsFilterFocusTrigger]=\"item\"\n [fetch]=\"fetch\"\n [displayWith]=\"displayWith\"\n [(ngModel)]=\"item.model\"\n [placeholder]=\"label\"\n [fetchOnFocus]=\"item.fetchOnFocus\"\n [showClear]=\"item.showClear\"\n name=\"item.name\">\n <ng-template fsAutocompleteTemplate let-data=\"data\">\n {{data.name}}\n </ng-template>\n</fs-autocomplete>\n" }]
28
36
  }], ctorParameters: () => [{ type: i0.KeyValueDiffers }, { type: i0.ChangeDetectorRef }] });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXJzLWl0ZW0vYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsR0FDaEIsTUFBTSxlQUFlLENBQUM7QUFLdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7OztBQVFyRSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsaUJBQW1DO0lBR2hFO0lBQ0E7SUFGWixZQUNZLFVBQTJCLEVBQzNCLEdBQXNCO1FBRWhDLEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFIYixlQUFVLEdBQVYsVUFBVSxDQUFpQjtRQUMzQixRQUFHLEdBQUgsR0FBRyxDQUFtQjtJQUdsQyxDQUFDO0lBRU0sV0FBVyxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUU7UUFDNUIsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNqQyxDQUFDLENBQUM7SUFFSyxLQUFLLEdBQUcsQ0FBQyxPQUFPLEVBQW1CLEVBQUU7UUFDMUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQW9CLENBQUM7SUFDMUUsQ0FBQyxDQUFDO3dHQWZTLHFCQUFxQjs0RkFBckIscUJBQXFCLHVGQ2xCbEMsMFlBYUE7OzRGREthLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSwwQkFBMEIsbUJBRW5CLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgS2V5VmFsdWVEaWZmZXJzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBBdXRvY29tcGxldGVJdGVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2l0ZW1zL2F1dG9jb21wbGV0ZS1pdGVtJztcbmltcG9ydCB7IEJhc2VJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS1pdGVtL2Jhc2UtaXRlbS5jb21wb25lbnQnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZpbHRlci1pdGVtLWF1dG9jb21wbGV0ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b2NvbXBsZXRlQ29tcG9uZW50IGV4dGVuZHMgQmFzZUl0ZW1Db21wb25lbnQ8QXV0b2NvbXBsZXRlSXRlbT4ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBfa3ZEaWZmZXJzOiBLZXlWYWx1ZURpZmZlcnMsXG4gICAgcHJvdGVjdGVkIF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge1xuICAgIHN1cGVyKF9rdkRpZmZlcnMsIF9jZCk7XG4gIH1cblxuICBwdWJsaWMgZGlzcGxheVdpdGggPSAoZGF0YSkgPT4ge1xuICAgIHJldHVybiBkYXRhID8gZGF0YS5uYW1lIDogZGF0YTtcbiAgfTtcblxuICBwdWJsaWMgZmV0Y2ggPSAoa2V5d29yZCk6IE9ic2VydmFibGU8YW55PiA9PiB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbS52YWx1ZXNGbihrZXl3b3JkLCB0aGlzLml0ZW0uZmlsdGVyKSBhcyBPYnNlcnZhYmxlPGFueT47XG4gIH07XG59XG4iLCI8ZnMtYXV0b2NvbXBsZXRlXG4gICAgW2ZzRmlsdGVyRm9jdXNUcmlnZ2VyXT1cIml0ZW1cIlxuICAgIFtmZXRjaF09XCJmZXRjaFwiXG4gICAgW2Rpc3BsYXlXaXRoXT1cImRpc3BsYXlXaXRoXCJcbiAgICBbKG5nTW9kZWwpXT1cIml0ZW0ubW9kZWxcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJsYWJlbFwiXG4gICAgW2ZldGNoT25Gb2N1c109XCJpdGVtLmZldGNoT25Gb2N1c1wiXG4gICAgW3Nob3dDbGVhcl09XCJpdGVtLnNob3dDbGVhclwiXG4gICAgbmFtZT1cIml0ZW0ubmFtZVwiPlxuICA8bmctdGVtcGxhdGUgZnNBdXRvY29tcGxldGVUZW1wbGF0ZSBsZXQtZGF0YT1cImRhdGFcIj5cbiAgICB7e2RhdGEubmFtZX19XG4gIDwvbmctdGVtcGxhdGU+XG48L2ZzLWF1dG9jb21wbGV0ZT5cbiJdfQ==
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXJzLWl0ZW0vYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsR0FDaEIsTUFBTSxlQUFlLENBQUM7QUFLdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDckUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDakcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7QUFlaEQsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGlCQUFtQztJQUdoRTtJQUNBO0lBRlosWUFDWSxVQUEyQixFQUMzQixHQUFzQjtRQUVoQyxLQUFLLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBSGIsZUFBVSxHQUFWLFVBQVUsQ0FBaUI7UUFDM0IsUUFBRyxHQUFILEdBQUcsQ0FBbUI7SUFHbEMsQ0FBQztJQUVNLFdBQVcsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFO1FBQzVCLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDakMsQ0FBQyxDQUFDO0lBRUssS0FBSyxHQUFHLENBQUMsT0FBTyxFQUFtQixFQUFFO1FBQzFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFvQixDQUFDO0lBQzFFLENBQUMsQ0FBQzt3R0FmUyxxQkFBcUI7NEZBQXJCLHFCQUFxQiwyR0M3QmxDLDBZQWFBLDJDRFVRLG9CQUFvQiw0YkFDcEIsb0JBQW9CLHVIQUNwQixXQUFXLDhWQUNYLFlBQVk7OzRGQUdQLHFCQUFxQjtrQkFaakMsU0FBUzsrQkFDSSwwQkFBMEIsbUJBRW5CLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNMLG9CQUFvQjt3QkFDcEIsb0JBQW9CO3dCQUNwQixXQUFXO3dCQUNYLFlBQVk7cUJBQ2YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgS2V5VmFsdWVEaWZmZXJzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBBdXRvY29tcGxldGVJdGVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2l0ZW1zL2F1dG9jb21wbGV0ZS1pdGVtJztcbmltcG9ydCB7IEJhc2VJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS1pdGVtL2Jhc2UtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnNBdXRvY29tcGxldGVNb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHsgRm9jdXNUb0l0ZW1EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL2ZvY3VzLXRvLWl0ZW0vZm9jdXMtdG8taXRlbS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGc0Zvcm1Nb2R1bGUgfSBmcm9tICdAZmlyZXN0aXRjaC9mb3JtJztcblxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZpbHRlci1pdGVtLWF1dG9jb21wbGV0ZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2F1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEZzQXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgICAgICBGb2N1c1RvSXRlbURpcmVjdGl2ZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIEZzRm9ybU1vZHVsZSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBdXRvY29tcGxldGVDb21wb25lbnQgZXh0ZW5kcyBCYXNlSXRlbUNvbXBvbmVudDxBdXRvY29tcGxldGVJdGVtPiB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIF9rdkRpZmZlcnM6IEtleVZhbHVlRGlmZmVycyxcbiAgICBwcm90ZWN0ZWQgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7XG4gICAgc3VwZXIoX2t2RGlmZmVycywgX2NkKTtcbiAgfVxuXG4gIHB1YmxpYyBkaXNwbGF5V2l0aCA9IChkYXRhKSA9PiB7XG4gICAgcmV0dXJuIGRhdGEgPyBkYXRhLm5hbWUgOiBkYXRhO1xuICB9O1xuXG4gIHB1YmxpYyBmZXRjaCA9IChrZXl3b3JkKTogT2JzZXJ2YWJsZTxhbnk+ID0+IHtcbiAgICByZXR1cm4gdGhpcy5pdGVtLnZhbHVlc0ZuKGtleXdvcmQsIHRoaXMuaXRlbS5maWx0ZXIpIGFzIE9ic2VydmFibGU8YW55PjtcbiAgfTtcbn1cbiIsIjxmcy1hdXRvY29tcGxldGVcbiAgICBbZnNGaWx0ZXJGb2N1c1RyaWdnZXJdPVwiaXRlbVwiXG4gICAgW2ZldGNoXT1cImZldGNoXCJcbiAgICBbZGlzcGxheVdpdGhdPVwiZGlzcGxheVdpdGhcIlxuICAgIFsobmdNb2RlbCldPVwiaXRlbS5tb2RlbFwiXG4gICAgW3BsYWNlaG9sZGVyXT1cImxhYmVsXCJcbiAgICBbZmV0Y2hPbkZvY3VzXT1cIml0ZW0uZmV0Y2hPbkZvY3VzXCJcbiAgICBbc2hvd0NsZWFyXT1cIml0ZW0uc2hvd0NsZWFyXCJcbiAgICBuYW1lPVwiaXRlbS5uYW1lXCI+XG4gIDxuZy10ZW1wbGF0ZSBmc0F1dG9jb21wbGV0ZVRlbXBsYXRlIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIHt7ZGF0YS5uYW1lfX1cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZnMtYXV0b2NvbXBsZXRlPlxuIl19