@firestitch/filter 12.6.0 → 12.7.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 (203) hide show
  1. package/app/classes/actions-controller.d.ts +38 -38
  2. package/app/components/action-button/action-button.component.d.ts +7 -7
  3. package/app/components/action-kebab-actions/action-kebab-actions.component.d.ts +7 -7
  4. package/app/components/actions/actions.component.d.ts +8 -8
  5. package/app/components/filter/filter.component.d.ts +192 -192
  6. package/app/components/filter-chip/filter-chip.component.d.ts +26 -26
  7. package/app/components/filter-chip-content/filter-chip-content.component.d.ts +18 -18
  8. package/app/components/filter-chips/filter-chips.component.d.ts +8 -8
  9. package/app/components/filter-drawer/filter-drawer.component.d.ts +30 -30
  10. package/app/components/filter-drawer-actions/filter-drawer-actions.component.d.ts +15 -15
  11. package/app/components/filters-item/autocomplete/autocomplete.component.d.ts +13 -13
  12. package/app/components/filters-item/autocompletechips/autocompletechips.component.d.ts +20 -20
  13. package/app/components/filters-item/base-item/base-item.component.d.ts +23 -23
  14. package/app/components/filters-item/checkbox/checkbox.component.d.ts +11 -11
  15. package/app/components/filters-item/chips/chips.component.d.ts +13 -13
  16. package/app/components/filters-item/date/date.component.d.ts +19 -19
  17. package/app/components/filters-item/date-range/date-range.component.d.ts +14 -14
  18. package/app/components/filters-item/filter-item.component.d.ts +15 -15
  19. package/app/components/filters-item/range/range.component.d.ts +15 -15
  20. package/app/components/filters-item/select/backdrop/backdrop.component.d.ts +6 -6
  21. package/app/components/filters-item/select/groups/groups.component.d.ts +12 -12
  22. package/app/components/filters-item/select/multiple/multiple.component.d.ts +15 -14
  23. package/app/components/filters-item/select/select.component.d.ts +16 -16
  24. package/app/components/filters-item/select/simple/simple.component.d.ts +14 -14
  25. package/app/components/filters-item/text/text.component.d.ts +19 -19
  26. package/app/components/filters-item/week/week.component.d.ts +12 -12
  27. package/app/components/saved-filter-edit/saved-filter-edit.component.d.ts +18 -18
  28. package/app/components/saved-filters-menu/saved-filters-menu.component.d.ts +23 -23
  29. package/app/consts/query-param-delimiter.d.ts +1 -1
  30. package/app/directives/focus-to-item/focus-to-item.directive.d.ts +27 -27
  31. package/app/directives/status-bar/status-bar.directive.d.ts +5 -5
  32. package/app/enums/action-mode.enum.d.ts +5 -5
  33. package/app/enums/action-type.enum.d.ts +7 -7
  34. package/app/enums/item-date-mode.enum.d.ts +5 -5
  35. package/app/enums/item-type.enum.d.ts +15 -15
  36. package/app/fs-filter.module.d.ts +64 -64
  37. package/app/helpers/build-query-params.d.ts +3 -3
  38. package/app/helpers/compare.d.ts +2 -2
  39. package/app/helpers/create-filter-item.d.ts +13 -13
  40. package/app/helpers/find-value.d.ts +1 -1
  41. package/app/helpers/get-range-name.d.ts +1 -1
  42. package/app/helpers/parse-date.d.ts +1 -1
  43. package/app/helpers/parse-item-value-from-stored.d.ts +1 -1
  44. package/app/helpers/query-param-transformers.d.ts +2 -2
  45. package/app/helpers/restore-items.d.ts +12 -12
  46. package/app/helpers/try-convert-to-number.d.ts +1 -1
  47. package/app/injectors/filter-config.d.ts +2 -2
  48. package/app/injectors/filter-drawer-data.d.ts +2 -2
  49. package/app/injectors/filter-drawer-overlay.d.ts +2 -2
  50. package/app/interfaces/action.interface.d.ts +69 -69
  51. package/app/interfaces/config.interface.d.ts +61 -61
  52. package/app/interfaces/external-params.interface.d.ts +3 -3
  53. package/app/interfaces/filter.interface.d.ts +4 -4
  54. package/app/interfaces/items/autocomplete-chips.interface.d.ts +12 -12
  55. package/app/interfaces/items/autocomplete.interface.d.ts +6 -6
  56. package/app/interfaces/items/base.interface.d.ts +27 -27
  57. package/app/interfaces/items/checkbox.interface.d.ts +7 -7
  58. package/app/interfaces/items/chips.interface.d.ts +6 -6
  59. package/app/interfaces/items/date-range.interface.d.ts +8 -8
  60. package/app/interfaces/items/date.interface.d.ts +7 -7
  61. package/app/interfaces/items/range.interface.d.ts +13 -13
  62. package/app/interfaces/items/select.interface.d.ts +20 -20
  63. package/app/interfaces/items/text.interface.d.ts +9 -9
  64. package/app/interfaces/items/week.interface.d.ts +7 -7
  65. package/app/interfaces/saved-filters.interface.d.ts +18 -18
  66. package/app/interfaces/update-filter-item.interface.d.ts +4 -4
  67. package/app/models/action-menu-item.model.d.ts +23 -23
  68. package/app/models/action.model.d.ts +45 -45
  69. package/app/models/filter-config.d.ts +30 -30
  70. package/app/models/items/autocomplete/base-autocomplete-item.d.ts +12 -12
  71. package/app/models/items/autocomplete-chips-item.d.ts +19 -19
  72. package/app/models/items/autocomplete-item.d.ts +10 -10
  73. package/app/models/items/base-item.d.ts +75 -75
  74. package/app/models/items/checkbox-item.d.ts +16 -16
  75. package/app/models/items/chips-item.d.ts +17 -17
  76. package/app/models/items/date/base-date-item.d.ts +14 -14
  77. package/app/models/items/date-item.d.ts +7 -7
  78. package/app/models/items/date-range/base-date-range-item.d.ts +21 -21
  79. package/app/models/items/date-range-item.d.ts +5 -5
  80. package/app/models/items/date-time-item.d.ts +6 -6
  81. package/app/models/items/date-time-range-item.d.ts +5 -5
  82. package/app/models/items/range-item.d.ts +22 -22
  83. package/app/models/items/select/base-select-item.d.ts +13 -13
  84. package/app/models/items/select/multiple-select-item.d.ts +13 -12
  85. package/app/models/items/select/simple-select-item.d.ts +12 -12
  86. package/app/models/items/select-item.d.ts +7 -7
  87. package/app/models/items/text-item.d.ts +14 -14
  88. package/app/models/items/week-item.d.ts +17 -17
  89. package/app/pipes/remove-isolate-value.pipe.d.ts +8 -8
  90. package/app/providers/filter-meta.d.ts +5 -5
  91. package/app/services/external-params/persistance-params-controller.service.d.ts +22 -22
  92. package/app/services/external-params/query-params-controller.service.d.ts +22 -22
  93. package/app/services/external-params/saved-filters-controller.service.d.ts +40 -40
  94. package/app/services/external-params-controller.service.d.ts +44 -44
  95. package/app/services/filter-overlay.service.d.ts +34 -34
  96. package/app/services/focus-controller.service.d.ts +18 -18
  97. package/app/services/items-store.service.d.ts +65 -65
  98. package/bundles/firestitch-filter.umd.js +5371 -5334
  99. package/bundles/firestitch-filter.umd.js.map +1 -1
  100. package/esm2015/app/classes/actions-controller.js +123 -122
  101. package/esm2015/app/components/action-button/action-button.component.js +24 -23
  102. package/esm2015/app/components/action-kebab-actions/action-kebab-actions.component.js +21 -21
  103. package/esm2015/app/components/actions/actions.component.js +29 -29
  104. package/esm2015/app/components/filter/filter.component.js +617 -617
  105. package/esm2015/app/components/filter-chip/filter-chip.component.js +91 -89
  106. package/esm2015/app/components/filter-chip-content/filter-chip-content.component.js +84 -83
  107. package/esm2015/app/components/filter-chips/filter-chips.component.js +24 -24
  108. package/esm2015/app/components/filter-drawer/filter-drawer.component.js +76 -73
  109. package/esm2015/app/components/filter-drawer-actions/filter-drawer-actions.component.js +43 -42
  110. package/esm2015/app/components/filters-item/autocomplete/autocomplete.component.js +30 -30
  111. package/esm2015/app/components/filters-item/autocompletechips/autocompletechips.component.js +52 -52
  112. package/esm2015/app/components/filters-item/base-item/base-item.component.js +59 -59
  113. package/esm2015/app/components/filters-item/checkbox/checkbox.component.js +25 -25
  114. package/esm2015/app/components/filters-item/chips/chips.component.js +32 -32
  115. package/esm2015/app/components/filters-item/date/date.component.js +45 -45
  116. package/esm2015/app/components/filters-item/date-range/date-range.component.js +36 -36
  117. package/esm2015/app/components/filters-item/filter-item.component.js +48 -47
  118. package/esm2015/app/components/filters-item/range/range.component.js +49 -49
  119. package/esm2015/app/components/filters-item/select/backdrop/backdrop.component.js +16 -16
  120. package/esm2015/app/components/filters-item/select/groups/groups.component.js +33 -32
  121. package/esm2015/app/components/filters-item/select/multiple/multiple.component.js +61 -59
  122. package/esm2015/app/components/filters-item/select/select.component.js +44 -44
  123. package/esm2015/app/components/filters-item/select/simple/simple.component.js +47 -45
  124. package/esm2015/app/components/filters-item/text/text.component.js +54 -54
  125. package/esm2015/app/components/filters-item/week/week.component.js +28 -28
  126. package/esm2015/app/components/saved-filter-edit/saved-filter-edit.component.js +55 -55
  127. package/esm2015/app/components/saved-filters-menu/saved-filters-menu.component.js +58 -55
  128. package/esm2015/app/consts/query-param-delimiter.js +1 -1
  129. package/esm2015/app/directives/focus-to-item/focus-to-item.directive.js +130 -125
  130. package/esm2015/app/directives/status-bar/status-bar.directive.js +12 -12
  131. package/esm2015/app/enums/action-mode.enum.js +6 -6
  132. package/esm2015/app/enums/action-type.enum.js +8 -8
  133. package/esm2015/app/enums/item-date-mode.enum.js +6 -6
  134. package/esm2015/app/enums/item-type.enum.js +16 -16
  135. package/esm2015/app/fs-filter.module.js +234 -234
  136. package/esm2015/app/helpers/build-query-params.js +32 -32
  137. package/esm2015/app/helpers/compare.js +37 -37
  138. package/esm2015/app/helpers/create-filter-item.js +54 -54
  139. package/esm2015/app/helpers/find-value.js +12 -12
  140. package/esm2015/app/helpers/get-range-name.js +8 -8
  141. package/esm2015/app/helpers/parse-date.js +7 -7
  142. package/esm2015/app/helpers/parse-item-value-from-stored.js +81 -81
  143. package/esm2015/app/helpers/query-param-transformers.js +8 -8
  144. package/esm2015/app/helpers/restore-items.js +48 -48
  145. package/esm2015/app/helpers/try-convert-to-number.js +5 -5
  146. package/esm2015/app/injectors/filter-config.js +2 -2
  147. package/esm2015/app/injectors/filter-drawer-data.js +2 -2
  148. package/esm2015/app/injectors/filter-drawer-overlay.js +2 -2
  149. package/esm2015/app/interfaces/action.interface.js +1 -1
  150. package/esm2015/app/interfaces/config.interface.js +1 -1
  151. package/esm2015/app/interfaces/external-params.interface.js +1 -1
  152. package/esm2015/app/interfaces/filter.interface.js +1 -1
  153. package/esm2015/app/interfaces/items/autocomplete-chips.interface.js +1 -1
  154. package/esm2015/app/interfaces/items/autocomplete.interface.js +1 -1
  155. package/esm2015/app/interfaces/items/base.interface.js +1 -1
  156. package/esm2015/app/interfaces/items/checkbox.interface.js +1 -1
  157. package/esm2015/app/interfaces/items/chips.interface.js +1 -1
  158. package/esm2015/app/interfaces/items/date-range.interface.js +1 -1
  159. package/esm2015/app/interfaces/items/date.interface.js +1 -1
  160. package/esm2015/app/interfaces/items/range.interface.js +1 -1
  161. package/esm2015/app/interfaces/items/select.interface.js +1 -1
  162. package/esm2015/app/interfaces/items/text.interface.js +1 -1
  163. package/esm2015/app/interfaces/items/week.interface.js +1 -1
  164. package/esm2015/app/interfaces/saved-filters.interface.js +1 -1
  165. package/esm2015/app/interfaces/update-filter-item.interface.js +1 -1
  166. package/esm2015/app/models/action-menu-item.model.js +66 -66
  167. package/esm2015/app/models/action.model.js +102 -102
  168. package/esm2015/app/models/filter-config.js +65 -65
  169. package/esm2015/app/models/items/autocomplete/base-autocomplete-item.js +13 -13
  170. package/esm2015/app/models/items/autocomplete-chips-item.js +61 -61
  171. package/esm2015/app/models/items/autocomplete-item.js +31 -31
  172. package/esm2015/app/models/items/base-item.js +233 -233
  173. package/esm2015/app/models/items/checkbox-item.js +47 -47
  174. package/esm2015/app/models/items/chips-item.js +83 -83
  175. package/esm2015/app/models/items/date/base-date-item.js +47 -47
  176. package/esm2015/app/models/items/date-item.js +18 -18
  177. package/esm2015/app/models/items/date-range/base-date-range-item.js +136 -136
  178. package/esm2015/app/models/items/date-range-item.js +6 -6
  179. package/esm2015/app/models/items/date-time-item.js +9 -9
  180. package/esm2015/app/models/items/date-time-range-item.js +6 -6
  181. package/esm2015/app/models/items/range-item.js +88 -88
  182. package/esm2015/app/models/items/select/base-select-item.js +33 -33
  183. package/esm2015/app/models/items/select/multiple-select-item.js +90 -69
  184. package/esm2015/app/models/items/select/simple-select-item.js +62 -62
  185. package/esm2015/app/models/items/select-item.js +12 -12
  186. package/esm2015/app/models/items/text-item.js +29 -29
  187. package/esm2015/app/models/items/week-item.js +96 -96
  188. package/esm2015/app/pipes/remove-isolate-value.pipe.js +22 -22
  189. package/esm2015/app/providers/filter-meta.js +9 -9
  190. package/esm2015/app/services/external-params/persistance-params-controller.service.js +58 -52
  191. package/esm2015/app/services/external-params/query-params-controller.service.js +57 -55
  192. package/esm2015/app/services/external-params/saved-filters-controller.service.js +165 -163
  193. package/esm2015/app/services/external-params-controller.service.js +166 -161
  194. package/esm2015/app/services/filter-overlay.service.js +116 -115
  195. package/esm2015/app/services/focus-controller.service.js +29 -29
  196. package/esm2015/app/services/items-store.service.js +338 -324
  197. package/esm2015/firestitch-filter.js +4 -4
  198. package/esm2015/public_api.js +36 -36
  199. package/fesm2015/firestitch-filter.js +4290 -4257
  200. package/fesm2015/firestitch-filter.js.map +1 -1
  201. package/firestitch-filter.d.ts +5 -5
  202. package/package.json +1 -1
  203. package/public_api.d.ts +40 -40
@@ -1,47 +1,48 @@
1
- import { ChangeDetectionStrategy, Component, Input, } from '@angular/core';
2
- import { Subject } from 'rxjs';
3
- import { takeUntil } from 'rxjs/operators';
4
- import { ItemType } from '../../enums/item-type.enum';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "./text/text.component";
7
- import * as i2 from "./select/select.component";
8
- import * as i3 from "./chips/chips.component";
9
- import * as i4 from "./range/range.component";
10
- import * as i5 from "./autocomplete/autocomplete.component";
11
- import * as i6 from "./autocompletechips/autocompletechips.component";
12
- import * as i7 from "./date/date.component";
13
- import * as i8 from "./date-range/date-range.component";
14
- import * as i9 from "./week/week.component";
15
- import * as i10 from "./checkbox/checkbox.component";
16
- import * as i11 from "@angular/common";
17
- export class FilterItemComponent {
18
- constructor(_cdRef) {
19
- this._cdRef = _cdRef;
20
- this._destroy$ = new Subject();
21
- this.itemType = ItemType;
22
- }
23
- ngOnInit() {
24
- this.item.value$
25
- .pipe(takeUntil(this._destroy$))
26
- .subscribe(() => {
27
- this._cdRef.markForCheck();
28
- });
29
- }
30
- ngOnDestroy() {
31
- this._destroy$.next();
32
- this._destroy$.complete();
33
- }
34
- }
35
- FilterItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FilterItemComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
36
- FilterItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FilterItemComponent, selector: "filter-item", inputs: { item: "item" }, ngImport: i0, template: "<div class=\"filter filter-{{ item.type }}\">\n\n <ng-container [ngSwitch]=\"item.type\">\n <filter-item-text class=\"interface\"\n *ngSwitchCase=\"itemType.Text\"\n [item]=\"item\">\n </filter-item-text>\n\n <filter-item-select class=\"interface\"\n *ngSwitchCase=\"itemType.Select\"\n [item]=\"item\">\n </filter-item-select>\n\n <filter-item-chips class=\"interface\"\n *ngSwitchCase=\"itemType.Chips\"\n [item]=\"item\">\n </filter-item-chips>\n\n <filter-item-range class=\"interface interface-range\"\n *ngSwitchCase=\"itemType.Range\"\n [item]=\"item\">\n </filter-item-range>\n\n <filter-item-autocomplete class=\"interface\"\n *ngSwitchCase=\"itemType.AutoComplete\"\n [item]=\"item\">\n </filter-item-autocomplete>\n\n <filter-item-autocompletechips class=\"interface\"\n *ngSwitchCase=\"itemType.AutoCompleteChips\"\n [item]=\"item\">\n </filter-item-autocompletechips>\n\n <filter-item-date class=\"interface interface-date\"\n *ngSwitchCase=\"itemType.Date\"\n [item]=\"item\">\n </filter-item-date>\n\n <filter-item-date class=\"interface interface-date\"\n *ngSwitchCase=\"itemType.DateTime\"\n [item]=\"item\">\n </filter-item-date>\n\n <filter-item-date-range class=\"interface interface-date\"\n *ngSwitchCase=\"itemType.DateRange\"\n [item]=\"item\">\n </filter-item-date-range>\n\n <filter-item-date-range class=\"interface interface-date\"\n *ngSwitchCase=\"itemType.DateTimeRange\"\n [item]=\"item\">\n </filter-item-date-range>\n\n <filter-item-week class=\"interface\"\n *ngSwitchCase=\"itemType.Week\"\n [item]=\"item\">\n </filter-item-week>\n\n <filter-item-checkbox class=\"interface interface-checkbox\"\n *ngSwitchCase=\"itemType.Checkbox\"\n [item]=\"item\">\n </filter-item-checkbox>\n </ng-container>\n\n</div>\n", components: [{ type: i1.TextComponent, selector: "filter-item-text" }, { type: i2.SelectComponent, selector: "filter-item-select" }, { type: i3.ChipsComponent, selector: "filter-item-chips" }, { type: i4.RangeComponent, selector: "filter-item-range" }, { type: i5.AutocompleteComponent, selector: "filter-item-autocomplete" }, { type: i6.AutocompletechipsComponent, selector: "filter-item-autocompletechips" }, { type: i7.DateComponent, selector: "filter-item-date" }, { type: i8.DateRangeComponent, selector: "filter-item-date-range" }, { type: i9.WeekComponent, selector: "filter-item-week" }, { type: i10.CheckboxComponent, selector: "filter-item-checkbox" }], directives: [{ type: i11.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i11.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FilterItemComponent, decorators: [{
38
- type: Component,
39
- args: [{
40
- selector: 'filter-item',
41
- templateUrl: './filter-item.component.html',
42
- changeDetection: ChangeDetectionStrategy.OnPush,
43
- }]
44
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { item: [{
45
- type: Input
46
- }] } });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9maWx0ZXItaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL2ZpbHRlci1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULEtBQUssR0FHTixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFTdEQsTUFBTSxPQUFPLG1CQUFtQjtJQU05QixZQUFvQixNQUF5QjtRQUF6QixXQUFNLEdBQU4sTUFBTSxDQUFtQjtRQUZyQyxjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQW1CakMsYUFBUSxHQUFHLFFBQVEsQ0FBQztJQWpCcUIsQ0FBQztJQUUxQyxRQUFRO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNO2FBQ2IsSUFBSSxDQUNILFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQzs7aUhBckJVLG1CQUFtQjtxR0FBbkIsbUJBQW1CLDZFQ3JCaEMsdTJFQWlFQTs0RkQ1Q2EsbUJBQW1CO2tCQUwvQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixXQUFXLEVBQUUsOEJBQThCO29CQUMzQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7d0dBR2lCLElBQUk7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBJdGVtVHlwZSB9IGZyb20gJy4uLy4uL2VudW1zL2l0ZW0tdHlwZS5lbnVtJztcbmltcG9ydCB7IEJhc2VJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2l0ZW1zL2Jhc2UtaXRlbSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmlsdGVyLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsdGVyLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRmlsdGVySXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBASW5wdXQoKSBwdWJsaWMgaXRlbTogQmFzZUl0ZW08YW55PjtcblxuICBwcml2YXRlIF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfY2RSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW0udmFsdWUkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl9jZFJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIGl0ZW1UeXBlID0gSXRlbVR5cGU7XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmlsdGVyIGZpbHRlci17eyBpdGVtLnR5cGUgfX1cIj5cblxuICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJpdGVtLnR5cGVcIj5cbiAgICA8ZmlsdGVyLWl0ZW0tdGV4dCBjbGFzcz1cImludGVyZmFjZVwiXG4gICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIml0ZW1UeXBlLlRleHRcIlxuICAgICAgICAgICAgICAgICAgICAgIFtpdGVtXT1cIml0ZW1cIj5cbiAgICA8L2ZpbHRlci1pdGVtLXRleHQ+XG5cbiAgICA8ZmlsdGVyLWl0ZW0tc2VsZWN0IGNsYXNzPVwiaW50ZXJmYWNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCJpdGVtVHlwZS5TZWxlY3RcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiPlxuICAgIDwvZmlsdGVyLWl0ZW0tc2VsZWN0PlxuXG4gICAgPGZpbHRlci1pdGVtLWNoaXBzIGNsYXNzPVwiaW50ZXJmYWNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIml0ZW1UeXBlLkNoaXBzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiPlxuICAgIDwvZmlsdGVyLWl0ZW0tY2hpcHM+XG5cbiAgICA8ZmlsdGVyLWl0ZW0tcmFuZ2UgY2xhc3M9XCJpbnRlcmZhY2UgaW50ZXJmYWNlLXJhbmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIml0ZW1UeXBlLlJhbmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiPlxuICAgIDwvZmlsdGVyLWl0ZW0tcmFuZ2U+XG5cbiAgICA8ZmlsdGVyLWl0ZW0tYXV0b2NvbXBsZXRlIGNsYXNzPVwiaW50ZXJmYWNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCJpdGVtVHlwZS5BdXRvQ29tcGxldGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiPlxuICAgIDwvZmlsdGVyLWl0ZW0tYXV0b2NvbXBsZXRlPlxuXG4gICAgPGZpbHRlci1pdGVtLWF1dG9jb21wbGV0ZWNoaXBzIGNsYXNzPVwiaW50ZXJmYWNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIml0ZW1UeXBlLkF1dG9Db21wbGV0ZUNoaXBzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiPlxuICAgIDwvZmlsdGVyLWl0ZW0tYXV0b2NvbXBsZXRlY2hpcHM+XG5cbiAgICA8ZmlsdGVyLWl0ZW0tZGF0ZSBjbGFzcz1cImludGVyZmFjZSBpbnRlcmZhY2UtZGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIml0ZW1UeXBlLkRhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgIFtpdGVtXT1cIml0ZW1cIj5cbiAgICA8L2ZpbHRlci1pdGVtLWRhdGU+XG5cbiAgICA8ZmlsdGVyLWl0ZW0tZGF0ZSBjbGFzcz1cImludGVyZmFjZSBpbnRlcmZhY2UtZGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIml0ZW1UeXBlLkRhdGVUaW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICBbaXRlbV09XCJpdGVtXCI+XG4gICAgPC9maWx0ZXItaXRlbS1kYXRlPlxuXG4gICAgPGZpbHRlci1pdGVtLWRhdGUtcmFuZ2UgY2xhc3M9XCJpbnRlcmZhY2UgaW50ZXJmYWNlLWRhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCJpdGVtVHlwZS5EYXRlUmFuZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpdGVtXT1cIml0ZW1cIj5cbiAgICA8L2ZpbHRlci1pdGVtLWRhdGUtcmFuZ2U+XG5cbiAgICA8ZmlsdGVyLWl0ZW0tZGF0ZS1yYW5nZSBjbGFzcz1cImludGVyZmFjZSBpbnRlcmZhY2UtZGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIml0ZW1UeXBlLkRhdGVUaW1lUmFuZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpdGVtXT1cIml0ZW1cIj5cbiAgICA8L2ZpbHRlci1pdGVtLWRhdGUtcmFuZ2U+XG5cbiAgICA8ZmlsdGVyLWl0ZW0td2VlayBjbGFzcz1cImludGVyZmFjZVwiXG4gICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIml0ZW1UeXBlLldlZWtcIlxuICAgICAgICAgICAgICAgICAgICAgIFtpdGVtXT1cIml0ZW1cIj5cbiAgICA8L2ZpbHRlci1pdGVtLXdlZWs+XG5cbiAgICA8ZmlsdGVyLWl0ZW0tY2hlY2tib3ggY2xhc3M9XCJpbnRlcmZhY2UgaW50ZXJmYWNlLWNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIml0ZW1UeXBlLkNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiPlxuICAgIDwvZmlsdGVyLWl0ZW0tY2hlY2tib3g+XG4gIDwvbmctY29udGFpbmVyPlxuXG48L2Rpdj5cbiJdfQ==
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { takeUntil } from 'rxjs/operators';
4
+ import { ItemType } from '../../enums/item-type.enum';
5
+ import { BaseItem } from '../../models/items/base-item';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "./text/text.component";
8
+ import * as i2 from "./select/select.component";
9
+ import * as i3 from "./chips/chips.component";
10
+ import * as i4 from "./range/range.component";
11
+ import * as i5 from "./autocomplete/autocomplete.component";
12
+ import * as i6 from "./autocompletechips/autocompletechips.component";
13
+ import * as i7 from "./date/date.component";
14
+ import * as i8 from "./date-range/date-range.component";
15
+ import * as i9 from "./week/week.component";
16
+ import * as i10 from "./checkbox/checkbox.component";
17
+ import * as i11 from "@angular/common";
18
+ export class FilterItemComponent {
19
+ constructor(_cdRef) {
20
+ this._cdRef = _cdRef;
21
+ this._destroy$ = new Subject();
22
+ this.itemType = ItemType;
23
+ }
24
+ ngOnInit() {
25
+ this.item.value$
26
+ .pipe(takeUntil(this._destroy$))
27
+ .subscribe(() => {
28
+ this._cdRef.markForCheck();
29
+ });
30
+ }
31
+ ngOnDestroy() {
32
+ this._destroy$.next();
33
+ this._destroy$.complete();
34
+ }
35
+ }
36
+ FilterItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FilterItemComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
37
+ FilterItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FilterItemComponent, selector: "filter-item", inputs: { item: "item" }, ngImport: i0, template: "<div class=\"filter filter-{{ item.type }}\">\n\n <ng-container [ngSwitch]=\"item.type\">\n <filter-item-text class=\"interface\"\n *ngSwitchCase=\"itemType.Text\"\n [item]=\"item\">\n </filter-item-text>\n\n <filter-item-select class=\"interface\"\n *ngSwitchCase=\"itemType.Select\"\n [item]=\"item\">\n </filter-item-select>\n\n <filter-item-chips class=\"interface\"\n *ngSwitchCase=\"itemType.Chips\"\n [item]=\"item\">\n </filter-item-chips>\n\n <filter-item-range class=\"interface interface-range\"\n *ngSwitchCase=\"itemType.Range\"\n [item]=\"item\">\n </filter-item-range>\n\n <filter-item-autocomplete class=\"interface\"\n *ngSwitchCase=\"itemType.AutoComplete\"\n [item]=\"item\">\n </filter-item-autocomplete>\n\n <filter-item-autocompletechips class=\"interface\"\n *ngSwitchCase=\"itemType.AutoCompleteChips\"\n [item]=\"item\">\n </filter-item-autocompletechips>\n\n <filter-item-date class=\"interface interface-date\"\n *ngSwitchCase=\"itemType.Date\"\n [item]=\"item\">\n </filter-item-date>\n\n <filter-item-date class=\"interface interface-date\"\n *ngSwitchCase=\"itemType.DateTime\"\n [item]=\"item\">\n </filter-item-date>\n\n <filter-item-date-range class=\"interface interface-date\"\n *ngSwitchCase=\"itemType.DateRange\"\n [item]=\"item\">\n </filter-item-date-range>\n\n <filter-item-date-range class=\"interface interface-date\"\n *ngSwitchCase=\"itemType.DateTimeRange\"\n [item]=\"item\">\n </filter-item-date-range>\n\n <filter-item-week class=\"interface\"\n *ngSwitchCase=\"itemType.Week\"\n [item]=\"item\">\n </filter-item-week>\n\n <filter-item-checkbox class=\"interface interface-checkbox\"\n *ngSwitchCase=\"itemType.Checkbox\"\n [item]=\"item\">\n </filter-item-checkbox>\n </ng-container>\n\n</div>\n", components: [{ type: i1.TextComponent, selector: "filter-item-text" }, { type: i2.SelectComponent, selector: "filter-item-select" }, { type: i3.ChipsComponent, selector: "filter-item-chips" }, { type: i4.RangeComponent, selector: "filter-item-range" }, { type: i5.AutocompleteComponent, selector: "filter-item-autocomplete" }, { type: i6.AutocompletechipsComponent, selector: "filter-item-autocompletechips" }, { type: i7.DateComponent, selector: "filter-item-date" }, { type: i8.DateRangeComponent, selector: "filter-item-date-range" }, { type: i9.WeekComponent, selector: "filter-item-week" }, { type: i10.CheckboxComponent, selector: "filter-item-checkbox" }], directives: [{ type: i11.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i11.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FilterItemComponent, decorators: [{
39
+ type: Component,
40
+ args: [{
41
+ selector: 'filter-item',
42
+ templateUrl: './filter-item.component.html',
43
+ changeDetection: ChangeDetectionStrategy.OnPush,
44
+ }]
45
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { item: [{
46
+ type: Input
47
+ }] } });
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9maWx0ZXItaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL2ZpbHRlci1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEdBR04sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7Ozs7Ozs7OztBQVF4RCxNQUFNLE9BQU8sbUJBQW1CO0lBTTlCLFlBQW9CLE1BQXlCO1FBQXpCLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBRnJDLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBbUJqQyxhQUFRLEdBQUcsUUFBUSxDQUFDO0lBakJxQixDQUFDO0lBRTFDLFFBQVE7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07YUFDYixJQUFJLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FDMUI7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QixDQUFDOztpSEFyQlUsbUJBQW1CO3FHQUFuQixtQkFBbUIsNkVDckJoQyx1MkVBaUVBOzRGRDVDYSxtQkFBbUI7a0JBTC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFdBQVcsRUFBRSw4QkFBOEI7b0JBQzNDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRDt3R0FHaUIsSUFBSTtzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEl0ZW1UeXBlIH0gZnJvbSAnLi4vLi4vZW51bXMvaXRlbS10eXBlLmVudW0nO1xuaW1wb3J0IHsgQmFzZUl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvaXRlbXMvYmFzZS1pdGVtJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmaWx0ZXItaXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGaWx0ZXJJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBpdGVtOiBCYXNlSXRlbTxhbnk+O1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaXRlbS52YWx1ZSRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgaXRlbVR5cGUgPSBJdGVtVHlwZTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJmaWx0ZXIgZmlsdGVyLXt7IGl0ZW0udHlwZSB9fVwiPlxuXG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cIml0ZW0udHlwZVwiPlxuICAgIDxmaWx0ZXItaXRlbS10ZXh0IGNsYXNzPVwiaW50ZXJmYWNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiaXRlbVR5cGUuVGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiPlxuICAgIDwvZmlsdGVyLWl0ZW0tdGV4dD5cblxuICAgIDxmaWx0ZXItaXRlbS1zZWxlY3QgY2xhc3M9XCJpbnRlcmZhY2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIml0ZW1UeXBlLlNlbGVjdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaXRlbV09XCJpdGVtXCI+XG4gICAgPC9maWx0ZXItaXRlbS1zZWxlY3Q+XG5cbiAgICA8ZmlsdGVyLWl0ZW0tY2hpcHMgY2xhc3M9XCJpbnRlcmZhY2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiaXRlbVR5cGUuQ2hpcHNcIlxuICAgICAgICAgICAgICAgICAgICAgICBbaXRlbV09XCJpdGVtXCI+XG4gICAgPC9maWx0ZXItaXRlbS1jaGlwcz5cblxuICAgIDxmaWx0ZXItaXRlbS1yYW5nZSBjbGFzcz1cImludGVyZmFjZSBpbnRlcmZhY2UtcmFuZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiaXRlbVR5cGUuUmFuZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICBbaXRlbV09XCJpdGVtXCI+XG4gICAgPC9maWx0ZXItaXRlbS1yYW5nZT5cblxuICAgIDxmaWx0ZXItaXRlbS1hdXRvY29tcGxldGUgY2xhc3M9XCJpbnRlcmZhY2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIml0ZW1UeXBlLkF1dG9Db21wbGV0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXRlbV09XCJpdGVtXCI+XG4gICAgPC9maWx0ZXItaXRlbS1hdXRvY29tcGxldGU+XG5cbiAgICA8ZmlsdGVyLWl0ZW0tYXV0b2NvbXBsZXRlY2hpcHMgY2xhc3M9XCJpbnRlcmZhY2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiaXRlbVR5cGUuQXV0b0NvbXBsZXRlQ2hpcHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXRlbV09XCJpdGVtXCI+XG4gICAgPC9maWx0ZXItaXRlbS1hdXRvY29tcGxldGVjaGlwcz5cblxuICAgIDxmaWx0ZXItaXRlbS1kYXRlIGNsYXNzPVwiaW50ZXJmYWNlIGludGVyZmFjZS1kYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiaXRlbVR5cGUuRGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiPlxuICAgIDwvZmlsdGVyLWl0ZW0tZGF0ZT5cblxuICAgIDxmaWx0ZXItaXRlbS1kYXRlIGNsYXNzPVwiaW50ZXJmYWNlIGludGVyZmFjZS1kYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiaXRlbVR5cGUuRGF0ZVRpbWVcIlxuICAgICAgICAgICAgICAgICAgICAgIFtpdGVtXT1cIml0ZW1cIj5cbiAgICA8L2ZpbHRlci1pdGVtLWRhdGU+XG5cbiAgICA8ZmlsdGVyLWl0ZW0tZGF0ZS1yYW5nZSBjbGFzcz1cImludGVyZmFjZSBpbnRlcmZhY2UtZGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIml0ZW1UeXBlLkRhdGVSYW5nZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiPlxuICAgIDwvZmlsdGVyLWl0ZW0tZGF0ZS1yYW5nZT5cblxuICAgIDxmaWx0ZXItaXRlbS1kYXRlLXJhbmdlIGNsYXNzPVwiaW50ZXJmYWNlIGludGVyZmFjZS1kYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiaXRlbVR5cGUuRGF0ZVRpbWVSYW5nZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiPlxuICAgIDwvZmlsdGVyLWl0ZW0tZGF0ZS1yYW5nZT5cblxuICAgIDxmaWx0ZXItaXRlbS13ZWVrIGNsYXNzPVwiaW50ZXJmYWNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiaXRlbVR5cGUuV2Vla1wiXG4gICAgICAgICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiPlxuICAgIDwvZmlsdGVyLWl0ZW0td2Vlaz5cblxuICAgIDxmaWx0ZXItaXRlbS1jaGVja2JveCBjbGFzcz1cImludGVyZmFjZSBpbnRlcmZhY2UtY2hlY2tib3hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiaXRlbVR5cGUuQ2hlY2tib3hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbaXRlbV09XCJpdGVtXCI+XG4gICAgPC9maWx0ZXItaXRlbS1jaGVja2JveD5cbiAgPC9uZy1jb250YWluZXI+XG5cbjwvZGl2PlxuIl19
@@ -1,49 +1,49 @@
1
- import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core';
2
- import { fromEvent, merge } from 'rxjs';
3
- import { distinctUntilChanged, takeUntil } from 'rxjs/operators';
4
- import { BaseItemComponent } from '../base-item/base-item.component';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/material/form-field";
7
- import * as i2 from "@angular/common";
8
- import * as i3 from "@angular/material/input";
9
- import * as i4 from "@angular/forms";
10
- import * as i5 from "@firestitch/mask";
11
- import * as i6 from "../../../directives/focus-to-item/focus-to-item.directive";
12
- export class RangeComponent extends BaseItemComponent {
13
- constructor(_kvDiffers, _cd) {
14
- super(_kvDiffers, _cd);
15
- this._kvDiffers = _kvDiffers;
16
- this._cd = _cd;
17
- }
18
- ngOnInit() {
19
- this.listenChanges();
20
- }
21
- listenChanges() {
22
- const fromListener = fromEvent(this.from.nativeElement, 'keyup')
23
- .pipe(distinctUntilChanged());
24
- const toListener = fromEvent(this.to.nativeElement, 'keyup')
25
- .pipe(distinctUntilChanged());
26
- merge(fromListener, toListener)
27
- .pipe(takeUntil(this._destroy$))
28
- .subscribe(() => {
29
- this.itemChange();
30
- });
31
- }
32
- }
33
- RangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RangeComponent, deps: [{ token: i0.KeyValueDiffers }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
34
- RangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: RangeComponent, selector: "filter-item-range", viewQueries: [{ propertyName: "from", first: true, predicate: ["from"], descendants: true, static: true }, { propertyName: "to", first: true, predicate: ["to"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"fs-row form-field\">\n <mat-form-field class=\"filter-range-min\">\n <mat-label>{{item.label[0]}}</mat-label>\n <span matPrefix *ngIf=\"item.prefix\" [innerHtml]=\"item.prefix\"></span>\n <input matInput\n [fsFilterFocusTrigger]=\"item\"\n [focusTargetType]=\"'from'\"\n type=\"text\"\n inputmode=\"decimal\"\n [(ngModel)]=\"item.model.min\"\n fsMaskNumber\n [scale]=\"item.options?.scale || 2\"\n #from\n >\n <span matSuffix *ngIf=\"item.suffix\" [innerHtml]=\"item.suffix\"></span>\n </mat-form-field>\n\n <mat-form-field class=\"filter-range-max\">\n <mat-label>{{item.label[1]}}</mat-label>\n <span matPrefix *ngIf=\"item.prefix\" [innerHtml]=\"item.prefix\"></span>\n <input matInput\n [fsFilterFocusTrigger]=\"item\"\n [focusTargetType]=\"'to'\"\n type=\"text\"\n inputmode=\"decimal\"\n [(ngModel)]=\"item.model.max\"\n fsMaskNumber\n [scale]=\"item.options?.scale || 2\"\n #to\n >\n <span matSuffix *ngIf=\"item.suffix\" [innerHtml]=\"item.suffix\"></span>\n </mat-form-field>\n</div>\n", components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }], directives: [{ type: i1.MatLabel, selector: "mat-label" }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatPrefix, selector: "[matPrefix]" }, { type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i5.FsMaskNumberDirective, selector: "[fsMaskNumber]" }, { type: i6.FocusToItemDirective, selector: "[fsFilterFocusTrigger]", inputs: ["fsFilterFocusTrigger", "focusTargetType"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i1.MatSuffix, selector: "[matSuffix]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RangeComponent, decorators: [{
36
- type: Component,
37
- args: [{
38
- selector: 'filter-item-range',
39
- templateUrl: './range.component.html',
40
- changeDetection: ChangeDetectionStrategy.OnPush,
41
- }]
42
- }], ctorParameters: function () { return [{ type: i0.KeyValueDiffers }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { from: [{
43
- type: ViewChild,
44
- args: ['from', { static: true }]
45
- }], to: [{
46
- type: ViewChild,
47
- args: ['to', { static: true }]
48
- }] } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9yYW5nZS9yYW5nZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL3JhbmdlL3JhbmdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNnQixTQUFTLEVBQ25DLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7Ozs7QUFTckUsTUFBTSxPQUFPLGNBQWUsU0FBUSxpQkFBNEI7SUFROUQsWUFDWSxVQUEyQixFQUMzQixHQUFzQjtRQUVoQyxLQUFLLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBSGIsZUFBVSxHQUFWLFVBQVUsQ0FBaUI7UUFDM0IsUUFBRyxHQUFILEdBQUcsQ0FBbUI7SUFHbEMsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVNLGFBQWE7UUFDbEIsTUFBTSxZQUFZLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQzthQUM3RCxJQUFJLENBQ0gsb0JBQW9CLEVBQUUsQ0FDdkIsQ0FBQztRQUVKLE1BQU0sVUFBVSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUM7YUFDekQsSUFBSSxDQUNILG9CQUFvQixFQUFFLENBQ3ZCLENBQUM7UUFFSixLQUFLLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQzthQUM1QixJQUFJLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FDMUI7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BCLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQzs7NEdBckNVLGNBQWM7Z0dBQWQsY0FBYyxxUkNsQjNCLG1yQ0FpQ0E7NEZEZmEsY0FBYztrQkFMMUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixXQUFXLEVBQUUsd0JBQXdCO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7c0lBSVEsSUFBSTtzQkFEVixTQUFTO3VCQUFDLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSTVCLEVBQUU7c0JBRFIsU0FBUzt1QkFBQyxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsIEVsZW1lbnRSZWYsXG4gIEtleVZhbHVlRGlmZmVycywgT25Jbml0LCBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIG1lcmdlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBCYXNlSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UtaXRlbS9iYXNlLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IFJhbmdlSXRlbSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pdGVtcy9yYW5nZS1pdGVtJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmaWx0ZXItaXRlbS1yYW5nZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9yYW5nZS5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBSYW5nZUNvbXBvbmVudCBleHRlbmRzIEJhc2VJdGVtQ29tcG9uZW50PFJhbmdlSXRlbT4gaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBWaWV3Q2hpbGQoJ2Zyb20nLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgZnJvbTogRWxlbWVudFJlZjtcblxuICBAVmlld0NoaWxkKCd0bycsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHB1YmxpYyB0bztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgX2t2RGlmZmVyczogS2V5VmFsdWVEaWZmZXJzLFxuICAgIHByb3RlY3RlZCBfY2Q6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHN1cGVyKF9rdkRpZmZlcnMsIF9jZCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5saXN0ZW5DaGFuZ2VzKCk7XG4gIH1cblxuICBwdWJsaWMgbGlzdGVuQ2hhbmdlcygpIHtcbiAgICBjb25zdCBmcm9tTGlzdGVuZXIgPSBmcm9tRXZlbnQodGhpcy5mcm9tLm5hdGl2ZUVsZW1lbnQsICdrZXl1cCcpXG4gICAgICAucGlwZShcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICAgKTtcblxuICAgIGNvbnN0IHRvTGlzdGVuZXIgPSBmcm9tRXZlbnQodGhpcy50by5uYXRpdmVFbGVtZW50LCAna2V5dXAnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICAgICk7XG5cbiAgICBtZXJnZShmcm9tTGlzdGVuZXIsIHRvTGlzdGVuZXIpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLml0ZW1DaGFuZ2UoKTtcbiAgICAgIH0pXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmcy1yb3cgZm9ybS1maWVsZFwiPlxuICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmaWx0ZXItcmFuZ2UtbWluXCI+XG4gICAgPG1hdC1sYWJlbD57e2l0ZW0ubGFiZWxbMF19fTwvbWF0LWxhYmVsPlxuICAgIDxzcGFuIG1hdFByZWZpeCAqbmdJZj1cIml0ZW0ucHJlZml4XCIgW2lubmVySHRtbF09XCJpdGVtLnByZWZpeFwiPjwvc3Bhbj5cbiAgICA8aW5wdXQgbWF0SW5wdXRcbiAgICAgICAgICAgW2ZzRmlsdGVyRm9jdXNUcmlnZ2VyXT1cIml0ZW1cIlxuICAgICAgICAgICBbZm9jdXNUYXJnZXRUeXBlXT1cIidmcm9tJ1wiXG4gICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgaW5wdXRtb2RlPVwiZGVjaW1hbFwiXG4gICAgICAgICAgIFsobmdNb2RlbCldPVwiaXRlbS5tb2RlbC5taW5cIlxuICAgICAgICAgICBmc01hc2tOdW1iZXJcbiAgICAgICAgICAgW3NjYWxlXT1cIml0ZW0ub3B0aW9ucz8uc2NhbGUgfHwgMlwiXG4gICAgICAgICAgICNmcm9tXG4gICAgPlxuICAgIDxzcGFuIG1hdFN1ZmZpeCAqbmdJZj1cIml0ZW0uc3VmZml4XCIgW2lubmVySHRtbF09XCJpdGVtLnN1ZmZpeFwiPjwvc3Bhbj5cbiAgPC9tYXQtZm9ybS1maWVsZD5cblxuICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmaWx0ZXItcmFuZ2UtbWF4XCI+XG4gICAgPG1hdC1sYWJlbD57e2l0ZW0ubGFiZWxbMV19fTwvbWF0LWxhYmVsPlxuICAgIDxzcGFuIG1hdFByZWZpeCAqbmdJZj1cIml0ZW0ucHJlZml4XCIgW2lubmVySHRtbF09XCJpdGVtLnByZWZpeFwiPjwvc3Bhbj5cbiAgICA8aW5wdXQgbWF0SW5wdXRcbiAgICAgICAgICAgW2ZzRmlsdGVyRm9jdXNUcmlnZ2VyXT1cIml0ZW1cIlxuICAgICAgICAgICBbZm9jdXNUYXJnZXRUeXBlXT1cIid0bydcIlxuICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgIGlucHV0bW9kZT1cImRlY2ltYWxcIlxuICAgICAgICAgICBbKG5nTW9kZWwpXT1cIml0ZW0ubW9kZWwubWF4XCJcbiAgICAgICAgICAgZnNNYXNrTnVtYmVyXG4gICAgICAgICAgIFtzY2FsZV09XCJpdGVtLm9wdGlvbnM/LnNjYWxlIHx8IDJcIlxuICAgICAgICAgICAjdG9cbiAgICA+XG4gICAgPHNwYW4gbWF0U3VmZml4ICpuZ0lmPVwiaXRlbS5zdWZmaXhcIiBbaW5uZXJIdG1sXT1cIml0ZW0uc3VmZml4XCI+PC9zcGFuPlxuICA8L21hdC1mb3JtLWZpZWxkPlxuPC9kaXY+XG4iXX0=
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, KeyValueDiffers, ViewChild } from '@angular/core';
2
+ import { fromEvent, merge } from 'rxjs';
3
+ import { distinctUntilChanged, takeUntil } from 'rxjs/operators';
4
+ import { BaseItemComponent } from '../base-item/base-item.component';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/material/form-field";
7
+ import * as i2 from "@angular/common";
8
+ import * as i3 from "@angular/material/input";
9
+ import * as i4 from "@angular/forms";
10
+ import * as i5 from "@firestitch/mask";
11
+ import * as i6 from "../../../directives/focus-to-item/focus-to-item.directive";
12
+ export class RangeComponent extends BaseItemComponent {
13
+ constructor(_kvDiffers, _cd) {
14
+ super(_kvDiffers, _cd);
15
+ this._kvDiffers = _kvDiffers;
16
+ this._cd = _cd;
17
+ }
18
+ ngOnInit() {
19
+ this.listenChanges();
20
+ }
21
+ listenChanges() {
22
+ const fromListener = fromEvent(this.from.nativeElement, 'keyup')
23
+ .pipe(distinctUntilChanged());
24
+ const toListener = fromEvent(this.to.nativeElement, 'keyup')
25
+ .pipe(distinctUntilChanged());
26
+ merge(fromListener, toListener)
27
+ .pipe(takeUntil(this._destroy$))
28
+ .subscribe(() => {
29
+ this.itemChange();
30
+ });
31
+ }
32
+ }
33
+ RangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RangeComponent, deps: [{ token: i0.KeyValueDiffers }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
34
+ RangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: RangeComponent, selector: "filter-item-range", viewQueries: [{ propertyName: "from", first: true, predicate: ["from"], descendants: true, static: true }, { propertyName: "to", first: true, predicate: ["to"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"fs-row form-field\">\n <mat-form-field class=\"filter-range-min\">\n <mat-label>{{item.label[0]}}</mat-label>\n <span matPrefix *ngIf=\"item.prefix\" [innerHtml]=\"item.prefix\"></span>\n <input matInput\n [fsFilterFocusTrigger]=\"item\"\n [focusTargetType]=\"'from'\"\n type=\"text\"\n inputmode=\"decimal\"\n [(ngModel)]=\"item.model.min\"\n fsMaskNumber\n [scale]=\"item.options?.scale || 2\"\n #from\n >\n <span matSuffix *ngIf=\"item.suffix\" [innerHtml]=\"item.suffix\"></span>\n </mat-form-field>\n\n <mat-form-field class=\"filter-range-max\">\n <mat-label>{{item.label[1]}}</mat-label>\n <span matPrefix *ngIf=\"item.prefix\" [innerHtml]=\"item.prefix\"></span>\n <input matInput\n [fsFilterFocusTrigger]=\"item\"\n [focusTargetType]=\"'to'\"\n type=\"text\"\n inputmode=\"decimal\"\n [(ngModel)]=\"item.model.max\"\n fsMaskNumber\n [scale]=\"item.options?.scale || 2\"\n #to\n >\n <span matSuffix *ngIf=\"item.suffix\" [innerHtml]=\"item.suffix\"></span>\n </mat-form-field>\n</div>\n", components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }], directives: [{ type: i1.MatLabel, selector: "mat-label" }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatPrefix, selector: "[matPrefix]" }, { type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i5.FsMaskNumberDirective, selector: "[fsMaskNumber]" }, { type: i6.FocusToItemDirective, selector: "[fsFilterFocusTrigger]", inputs: ["fsFilterFocusTrigger", "focusTargetType"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i1.MatSuffix, selector: "[matSuffix]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RangeComponent, decorators: [{
36
+ type: Component,
37
+ args: [{
38
+ selector: 'filter-item-range',
39
+ templateUrl: './range.component.html',
40
+ changeDetection: ChangeDetectionStrategy.OnPush,
41
+ }]
42
+ }], ctorParameters: function () { return [{ type: i0.KeyValueDiffers }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { from: [{
43
+ type: ViewChild,
44
+ args: ['from', { static: true }]
45
+ }], to: [{
46
+ type: ViewChild,
47
+ args: ['to', { static: true }]
48
+ }] } });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9yYW5nZS9yYW5nZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL3JhbmdlL3JhbmdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFBRSxVQUFVLEVBQ3JCLGVBQWUsRUFBVSxTQUFTLEVBQ25DLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7Ozs7QUFTckUsTUFBTSxPQUFPLGNBQWUsU0FBUSxpQkFBNEI7SUFROUQsWUFDWSxVQUEyQixFQUMzQixHQUFzQjtRQUVoQyxLQUFLLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBSGIsZUFBVSxHQUFWLFVBQVUsQ0FBaUI7UUFDM0IsUUFBRyxHQUFILEdBQUcsQ0FBbUI7SUFHbEMsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVNLGFBQWE7UUFDbEIsTUFBTSxZQUFZLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQzthQUM3RCxJQUFJLENBQ0gsb0JBQW9CLEVBQUUsQ0FDdkIsQ0FBQztRQUVKLE1BQU0sVUFBVSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUM7YUFDekQsSUFBSSxDQUNILG9CQUFvQixFQUFFLENBQ3ZCLENBQUM7UUFFSixLQUFLLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQzthQUM1QixJQUFJLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FDMUI7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BCLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQzs7NEdBckNVLGNBQWM7Z0dBQWQsY0FBYyxxUkNsQjNCLG1yQ0FpQ0E7NEZEZmEsY0FBYztrQkFMMUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixXQUFXLEVBQUUsd0JBQXdCO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7c0lBSVEsSUFBSTtzQkFEVixTQUFTO3VCQUFDLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSTVCLEVBQUU7c0JBRFIsU0FBUzt1QkFBQyxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsIEVsZW1lbnRSZWYsXG4gIEtleVZhbHVlRGlmZmVycywgT25Jbml0LCBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIG1lcmdlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBCYXNlSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UtaXRlbS9iYXNlLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IFJhbmdlSXRlbSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pdGVtcy9yYW5nZS1pdGVtJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmaWx0ZXItaXRlbS1yYW5nZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9yYW5nZS5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBSYW5nZUNvbXBvbmVudCBleHRlbmRzIEJhc2VJdGVtQ29tcG9uZW50PFJhbmdlSXRlbT4gaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBWaWV3Q2hpbGQoJ2Zyb20nLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgZnJvbTogRWxlbWVudFJlZjtcblxuICBAVmlld0NoaWxkKCd0bycsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHB1YmxpYyB0bztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgX2t2RGlmZmVyczogS2V5VmFsdWVEaWZmZXJzLFxuICAgIHByb3RlY3RlZCBfY2Q6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHN1cGVyKF9rdkRpZmZlcnMsIF9jZCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5saXN0ZW5DaGFuZ2VzKCk7XG4gIH1cblxuICBwdWJsaWMgbGlzdGVuQ2hhbmdlcygpIHtcbiAgICBjb25zdCBmcm9tTGlzdGVuZXIgPSBmcm9tRXZlbnQodGhpcy5mcm9tLm5hdGl2ZUVsZW1lbnQsICdrZXl1cCcpXG4gICAgICAucGlwZShcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICAgKTtcblxuICAgIGNvbnN0IHRvTGlzdGVuZXIgPSBmcm9tRXZlbnQodGhpcy50by5uYXRpdmVFbGVtZW50LCAna2V5dXAnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICAgICk7XG5cbiAgICBtZXJnZShmcm9tTGlzdGVuZXIsIHRvTGlzdGVuZXIpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLml0ZW1DaGFuZ2UoKTtcbiAgICAgIH0pXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmcy1yb3cgZm9ybS1maWVsZFwiPlxuICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmaWx0ZXItcmFuZ2UtbWluXCI+XG4gICAgPG1hdC1sYWJlbD57e2l0ZW0ubGFiZWxbMF19fTwvbWF0LWxhYmVsPlxuICAgIDxzcGFuIG1hdFByZWZpeCAqbmdJZj1cIml0ZW0ucHJlZml4XCIgW2lubmVySHRtbF09XCJpdGVtLnByZWZpeFwiPjwvc3Bhbj5cbiAgICA8aW5wdXQgbWF0SW5wdXRcbiAgICAgICAgICAgW2ZzRmlsdGVyRm9jdXNUcmlnZ2VyXT1cIml0ZW1cIlxuICAgICAgICAgICBbZm9jdXNUYXJnZXRUeXBlXT1cIidmcm9tJ1wiXG4gICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgaW5wdXRtb2RlPVwiZGVjaW1hbFwiXG4gICAgICAgICAgIFsobmdNb2RlbCldPVwiaXRlbS5tb2RlbC5taW5cIlxuICAgICAgICAgICBmc01hc2tOdW1iZXJcbiAgICAgICAgICAgW3NjYWxlXT1cIml0ZW0ub3B0aW9ucz8uc2NhbGUgfHwgMlwiXG4gICAgICAgICAgICNmcm9tXG4gICAgPlxuICAgIDxzcGFuIG1hdFN1ZmZpeCAqbmdJZj1cIml0ZW0uc3VmZml4XCIgW2lubmVySHRtbF09XCJpdGVtLnN1ZmZpeFwiPjwvc3Bhbj5cbiAgPC9tYXQtZm9ybS1maWVsZD5cblxuICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmaWx0ZXItcmFuZ2UtbWF4XCI+XG4gICAgPG1hdC1sYWJlbD57e2l0ZW0ubGFiZWxbMV19fTwvbWF0LWxhYmVsPlxuICAgIDxzcGFuIG1hdFByZWZpeCAqbmdJZj1cIml0ZW0ucHJlZml4XCIgW2lubmVySHRtbF09XCJpdGVtLnByZWZpeFwiPjwvc3Bhbj5cbiAgICA8aW5wdXQgbWF0SW5wdXRcbiAgICAgICAgICAgW2ZzRmlsdGVyRm9jdXNUcmlnZ2VyXT1cIml0ZW1cIlxuICAgICAgICAgICBbZm9jdXNUYXJnZXRUeXBlXT1cIid0bydcIlxuICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgIGlucHV0bW9kZT1cImRlY2ltYWxcIlxuICAgICAgICAgICBbKG5nTW9kZWwpXT1cIml0ZW0ubW9kZWwubWF4XCJcbiAgICAgICAgICAgZnNNYXNrTnVtYmVyXG4gICAgICAgICAgIFtzY2FsZV09XCJpdGVtLm9wdGlvbnM/LnNjYWxlIHx8IDJcIlxuICAgICAgICAgICAjdG9cbiAgICA+XG4gICAgPHNwYW4gbWF0U3VmZml4ICpuZ0lmPVwiaXRlbS5zdWZmaXhcIiBbaW5uZXJIdG1sXT1cIml0ZW0uc3VmZml4XCI+PC9zcGFuPlxuICA8L21hdC1mb3JtLWZpZWxkPlxuPC9kaXY+XG4iXX0=
@@ -1,17 +1,17 @@
1
- import { ChangeDetectionStrategy, Component, } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class SelectBackdropComponent {
4
- constructor() { }
5
- }
6
- SelectBackdropComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SelectBackdropComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
- SelectBackdropComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SelectBackdropComponent, selector: "filter-item-select-backdrop", ngImport: i0, template: "", styles: [":host{position:absolute;top:0;bottom:0;right:0;z-index:1002;left:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SelectBackdropComponent, decorators: [{
9
- type: Component,
10
- args: [{
11
- selector: 'filter-item-select-backdrop',
12
- styleUrls: ['./backdrop.component.scss'],
13
- templateUrl: './backdrop.component.html',
14
- changeDetection: ChangeDetectionStrategy.OnPush,
15
- }]
16
- }], ctorParameters: function () { return []; } });
1
+ import { ChangeDetectionStrategy, Component, } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class SelectBackdropComponent {
4
+ constructor() { }
5
+ }
6
+ SelectBackdropComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SelectBackdropComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
+ SelectBackdropComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SelectBackdropComponent, selector: "filter-item-select-backdrop", ngImport: i0, template: "", styles: [":host{position:absolute;top:0;bottom:0;right:0;z-index:1002;left:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SelectBackdropComponent, decorators: [{
9
+ type: Component,
10
+ args: [{
11
+ selector: 'filter-item-select-backdrop',
12
+ styleUrls: ['./backdrop.component.scss'],
13
+ templateUrl: './backdrop.component.html',
14
+ changeDetection: ChangeDetectionStrategy.OnPush,
15
+ }]
16
+ }], ctorParameters: function () { return []; } });
17
17
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2Ryb3AuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9zZWxlY3QvYmFja2Ryb3AvYmFja2Ryb3AuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9zZWxlY3QvYmFja2Ryb3AvYmFja2Ryb3AuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsR0FBRyxNQUFNLGVBQWUsQ0FBQzs7QUFRcEUsTUFBTSxPQUFPLHVCQUF1QjtJQUNsQyxnQkFBZSxDQUFDOztxSEFETCx1QkFBdUI7eUdBQXZCLHVCQUF1QixtRUNScEMsRUFBQTs0RkRRYSx1QkFBdUI7a0JBTm5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZCQUE2QjtvQkFDdkMsU0FBUyxFQUFFLENBQUMsMkJBQTJCLENBQUM7b0JBQ3hDLFdBQVcsRUFBRSwyQkFBMkI7b0JBQ3hDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZpbHRlci1pdGVtLXNlbGVjdC1iYWNrZHJvcCcsXG4gIHN0eWxlVXJsczogWycuL2JhY2tkcm9wLmNvbXBvbmVudC5zY3NzJ10sXG4gIHRlbXBsYXRlVXJsOiAnLi9iYWNrZHJvcC5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RCYWNrZHJvcENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKCkge31cbn1cbiIsIiJdfQ==
@@ -1,32 +1,33 @@
1
- import { ChangeDetectionStrategy, Component, Input, ViewChild } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/material/form-field";
4
- import * as i2 from "@angular/material/select";
5
- import * as i3 from "@angular/material/core";
6
- import * as i4 from "../../../../directives/focus-to-item/focus-to-item.directive";
7
- import * as i5 from "@angular/forms";
8
- import * as i6 from "@angular/common";
9
- export class SelectGroupsComponent {
10
- constructor(cd) {
11
- this.cd = cd;
12
- }
13
- compare(o1, o2) {
14
- return o1 == o2;
15
- }
16
- }
17
- SelectGroupsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SelectGroupsComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
18
- SelectGroupsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SelectGroupsComponent, selector: "filter-item-select-groups", inputs: { item: "item" }, viewQueries: [{ propertyName: "select", first: true, predicate: ["select"], descendants: true, static: true }], ngImport: i0, template: "<mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <mat-select\n #select\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n [compareWith]=\"compare\">\n <ng-container *ngFor=\"let selectItem of item.values\">\n <ng-container *ngIf=\"selectItem[item.children]; else simpleOption\">\n <mat-optgroup [label]=\"selectItem.name\">\n <mat-option *ngFor=\"let subItem of selectItem[item.children]\"\n [value]=\"subItem.value\"\n [ngStyle]=\"selectItem.style\">\n {{ subItem.name }}\n </mat-option>\n </mat-optgroup>\n </ng-container>\n\n <ng-template #simpleOption>\n <mat-option\n [value]=\"selectItem.value\"\n [ngStyle]=\"selectItem.style\">\n {{ selectItem.name }}\n </mat-option>\n </ng-template>\n </ng-container>\n </mat-select>\n</mat-form-field>\n", components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i2.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i3.MatOptgroup, selector: "mat-optgroup", inputs: ["disabled"], exportAs: ["matOptgroup"] }, { type: i3.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i1.MatLabel, selector: "mat-label" }, { type: i4.FocusToItemDirective, selector: "[fsFilterFocusTrigger]", inputs: ["fsFilterFocusTrigger", "focusTargetType"] }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SelectGroupsComponent, decorators: [{
20
- type: Component,
21
- args: [{
22
- selector: 'filter-item-select-groups',
23
- templateUrl: './groups.component.html',
24
- changeDetection: ChangeDetectionStrategy.OnPush,
25
- }]
26
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { select: [{
27
- type: ViewChild,
28
- args: ['select', { static: true }]
29
- }], item: [{
30
- type: Input
31
- }] } });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXBzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXJzLWl0ZW0vc2VsZWN0L2dyb3Vwcy9ncm91cHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9zZWxlY3QvZ3JvdXBzL2dyb3Vwcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxLQUFLLEVBRUwsU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQVF2QixNQUFNLE9BQU8scUJBQXFCO0lBS2hDLFlBQW1CLEVBQXFCO1FBQXJCLE9BQUUsR0FBRixFQUFFLENBQW1CO0lBQUcsQ0FBQztJQUVyQyxPQUFPLENBQUMsRUFBRSxFQUFFLEVBQUU7UUFDbkIsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ2xCLENBQUM7O21IQVRVLHFCQUFxQjt1R0FBckIscUJBQXFCLDJNQ2hCbEMsdzZCQTRCQTs0RkRaYSxxQkFBcUI7a0JBTGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsV0FBVyxFQUFFLHlCQUF5QjtvQkFDdEMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEO3dHQUd3QyxNQUFNO3NCQUE1QyxTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ3JCLElBQUk7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRTZWxlY3QgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmaWx0ZXItaXRlbS1zZWxlY3QtZ3JvdXBzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyb3Vwcy5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RHcm91cHNDb21wb25lbnQge1xuXG4gIEBWaWV3Q2hpbGQoJ3NlbGVjdCcsIHsgc3RhdGljOiB0cnVlIH0pIHNlbGVjdDogTWF0U2VsZWN0O1xuICBASW5wdXQoKSBwdWJsaWMgaXRlbTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIHB1YmxpYyBjb21wYXJlKG8xLCBvMikge1xuICAgIHJldHVybiBvMSA9PSBvMjtcbiAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkPlxuICA8bWF0LWxhYmVsPnt7aXRlbS5sYWJlbH19PC9tYXQtbGFiZWw+XG4gIDxtYXQtc2VsZWN0XG4gICAgI3NlbGVjdFxuICAgIFtmc0ZpbHRlckZvY3VzVHJpZ2dlcl09XCJpdGVtXCJcbiAgICBbKG5nTW9kZWwpXT1cIml0ZW0ubW9kZWxcIlxuICAgIFtjb21wYXJlV2l0aF09XCJjb21wYXJlXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc2VsZWN0SXRlbSBvZiBpdGVtLnZhbHVlc1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdEl0ZW1baXRlbS5jaGlsZHJlbl07IGVsc2Ugc2ltcGxlT3B0aW9uXCI+XG4gICAgICAgIDxtYXQtb3B0Z3JvdXAgW2xhYmVsXT1cInNlbGVjdEl0ZW0ubmFtZVwiPlxuICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBzdWJJdGVtIG9mIHNlbGVjdEl0ZW1baXRlbS5jaGlsZHJlbl1cIlxuICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJzdWJJdGVtLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJzZWxlY3RJdGVtLnN0eWxlXCI+XG4gICAgICAgICAgICB7eyBzdWJJdGVtLm5hbWUgfX1cbiAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIDwvbWF0LW9wdGdyb3VwPlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjc2ltcGxlT3B0aW9uPlxuICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICBbdmFsdWVdPVwic2VsZWN0SXRlbS52YWx1ZVwiXG4gICAgICAgIFtuZ1N0eWxlXT1cInNlbGVjdEl0ZW0uc3R5bGVcIj5cbiAgICAgICAgICB7eyBzZWxlY3RJdGVtLm5hbWUgfX1cbiAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9tYXQtc2VsZWN0PlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, ViewChild } from '@angular/core';
2
+ import { MatSelect } from '@angular/material/select';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/material/form-field";
5
+ import * as i2 from "@angular/material/select";
6
+ import * as i3 from "@angular/material/core";
7
+ import * as i4 from "../../../../directives/focus-to-item/focus-to-item.directive";
8
+ import * as i5 from "@angular/forms";
9
+ import * as i6 from "@angular/common";
10
+ export class SelectGroupsComponent {
11
+ constructor(cd) {
12
+ this.cd = cd;
13
+ }
14
+ compare(o1, o2) {
15
+ return o1 == o2;
16
+ }
17
+ }
18
+ SelectGroupsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SelectGroupsComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
19
+ SelectGroupsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SelectGroupsComponent, selector: "filter-item-select-groups", inputs: { item: "item" }, viewQueries: [{ propertyName: "select", first: true, predicate: ["select"], descendants: true, static: true }], ngImport: i0, template: "<mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <mat-select\n #select\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n [compareWith]=\"compare\">\n <ng-container *ngFor=\"let selectItem of item.values\">\n <ng-container *ngIf=\"selectItem[item.children]; else simpleOption\">\n <mat-optgroup [label]=\"selectItem.name\">\n <mat-option *ngFor=\"let subItem of selectItem[item.children]\"\n [value]=\"subItem.value\"\n [ngStyle]=\"selectItem.style\">\n {{ subItem.name }}\n </mat-option>\n </mat-optgroup>\n </ng-container>\n\n <ng-template #simpleOption>\n <mat-option\n [value]=\"selectItem.value\"\n [ngStyle]=\"selectItem.style\">\n {{ selectItem.name }}\n </mat-option>\n </ng-template>\n </ng-container>\n </mat-select>\n</mat-form-field>\n", components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i2.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i3.MatOptgroup, selector: "mat-optgroup", inputs: ["disabled"], exportAs: ["matOptgroup"] }, { type: i3.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i1.MatLabel, selector: "mat-label" }, { type: i4.FocusToItemDirective, selector: "[fsFilterFocusTrigger]", inputs: ["fsFilterFocusTrigger", "focusTargetType"] }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SelectGroupsComponent, decorators: [{
21
+ type: Component,
22
+ args: [{
23
+ selector: 'filter-item-select-groups',
24
+ templateUrl: './groups.component.html',
25
+ changeDetection: ChangeDetectionStrategy.OnPush,
26
+ }]
27
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { select: [{
28
+ type: ViewChild,
29
+ args: ['select', { static: true }]
30
+ }], item: [{
31
+ type: Input
32
+ }] } });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXBzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXJzLWl0ZW0vc2VsZWN0L2dyb3Vwcy9ncm91cHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9zZWxlY3QvZ3JvdXBzL2dyb3Vwcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBRVQsS0FBSyxFQUVMLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7O0FBT3JELE1BQU0sT0FBTyxxQkFBcUI7SUFLaEMsWUFBbUIsRUFBcUI7UUFBckIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7SUFBRyxDQUFDO0lBRXJDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsRUFBRTtRQUNuQixPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDbEIsQ0FBQzs7bUhBVFUscUJBQXFCO3VHQUFyQixxQkFBcUIsMk1DaEJsQyx3NkJBNEJBOzRGRFphLHFCQUFxQjtrQkFMakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxXQUFXLEVBQUUseUJBQXlCO29CQUN0QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7d0dBR3dDLE1BQU07c0JBQTVDLFNBQVM7dUJBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDckIsSUFBSTtzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNlbGVjdCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZpbHRlci1pdGVtLXNlbGVjdC1ncm91cHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3JvdXBzLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdEdyb3Vwc0NvbXBvbmVudCB7XG5cbiAgQFZpZXdDaGlsZCgnc2VsZWN0JywgeyBzdGF0aWM6IHRydWUgfSkgc2VsZWN0OiBNYXRTZWxlY3Q7XG4gIEBJbnB1dCgpIHB1YmxpYyBpdGVtO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgcHVibGljIGNvbXBhcmUobzEsIG8yKSB7XG4gICAgcmV0dXJuIG8xID09IG8yO1xuICB9XG59XG4iLCI8bWF0LWZvcm0tZmllbGQ+XG4gIDxtYXQtbGFiZWw+e3tpdGVtLmxhYmVsfX08L21hdC1sYWJlbD5cbiAgPG1hdC1zZWxlY3RcbiAgICAjc2VsZWN0XG4gICAgW2ZzRmlsdGVyRm9jdXNUcmlnZ2VyXT1cIml0ZW1cIlxuICAgIFsobmdNb2RlbCldPVwiaXRlbS5tb2RlbFwiXG4gICAgW2NvbXBhcmVXaXRoXT1cImNvbXBhcmVcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzZWxlY3RJdGVtIG9mIGl0ZW0udmFsdWVzXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0SXRlbVtpdGVtLmNoaWxkcmVuXTsgZWxzZSBzaW1wbGVPcHRpb25cIj5cbiAgICAgICAgPG1hdC1vcHRncm91cCBbbGFiZWxdPVwic2VsZWN0SXRlbS5uYW1lXCI+XG4gICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHN1Ykl0ZW0gb2Ygc2VsZWN0SXRlbVtpdGVtLmNoaWxkcmVuXVwiXG4gICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cInN1Ykl0ZW0udmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInNlbGVjdEl0ZW0uc3R5bGVcIj5cbiAgICAgICAgICAgIHt7IHN1Ykl0ZW0ubmFtZSB9fVxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgPC9tYXQtb3B0Z3JvdXA+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLXRlbXBsYXRlICNzaW1wbGVPcHRpb24+XG4gICAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgIFt2YWx1ZV09XCJzZWxlY3RJdGVtLnZhbHVlXCJcbiAgICAgICAgW25nU3R5bGVdPVwic2VsZWN0SXRlbS5zdHlsZVwiPlxuICAgICAgICAgIHt7IHNlbGVjdEl0ZW0ubmFtZSB9fVxuICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L21hdC1zZWxlY3Q+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19
@@ -1,59 +1,61 @@
1
- import { ChangeDetectionStrategy, Component, Input, ViewChild } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/material/form-field";
4
- import * as i2 from "@angular/material/select";
5
- import * as i3 from "@angular/material/core";
6
- import * as i4 from "@angular/material/checkbox";
7
- import * as i5 from "@angular/common";
8
- import * as i6 from "../../../../directives/focus-to-item/focus-to-item.directive";
9
- import * as i7 from "@angular/forms";
10
- import * as i8 from "../../../../pipes/remove-isolate-value.pipe";
11
- export class SelectMultipleComponent {
12
- constructor(cd) {
13
- this.cd = cd;
14
- }
15
- changed() {
16
- if (this.item.isolate) {
17
- this.item.isolate.enabled = false;
18
- if (this.item.multiple && Array.isArray(this.item.model)) {
19
- const index = this.item.model.indexOf(this.item.isolate.value);
20
- if (index > -1) {
21
- this.item.model.splice(index, 1);
22
- }
23
- }
24
- }
25
- }
26
- close() {
27
- this.select.close();
28
- }
29
- isolateChange(filter) {
30
- if (filter.isolate.enabled) {
31
- filter.model = filter.multiple ? [filter.isolate.value] : filter.isolate.value;
32
- }
33
- else {
34
- if (filter.multiple) {
35
- filter.model = filter.defaultValue ? filter.defaultValue : [];
36
- }
37
- else {
38
- filter.model = filter.defaultValue ? filter.defaultValue : null;
39
- }
40
- }
41
- }
42
- }
43
- SelectMultipleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SelectMultipleComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
44
- SelectMultipleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SelectMultipleComponent, selector: "filter-item-select-multiple", inputs: { item: "item" }, viewQueries: [{ propertyName: "select", first: true, predicate: ["select"], descendants: true, static: true }], ngImport: i0, template: "<mat-form-field [ngClass]=\"{ isolate: item.isolate }\">\n <mat-label>{{item.label}}</mat-label>\n <mat-select\n #select\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n (ngModelChange)=\"changed()\"\n [multiple]=\"item.multiple\">\n <mat-option\n *ngFor=\"let item of item.values | fsFilterIsolateValues: item.isolate\"\n [value]=\"item.value\">\n {{ item.name }}\n </mat-option>\n </mat-select>\n\n <mat-hint>\n <div *ngIf=\"item.isolate\">\n <mat-checkbox (change)=\"isolateChange(item)\" [(ngModel)]=\"item.isolate.enabled\">\n <span class=\"checkbox-label\">{{ item.isolate.label }}</span>\n </mat-checkbox>\n </div>\n </mat-hint>\n</mat-form-field>\n", styles: [".isolate{margin-bottom:25px}\n"], components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i2.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i3.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.MatLabel, selector: "mat-label" }, { type: i6.FocusToItemDirective, selector: "[fsFilterFocusTrigger]", inputs: ["fsFilterFocusTrigger", "focusTargetType"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "fsFilterIsolateValues": i8.FsFilterIsolateValues }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SelectMultipleComponent, decorators: [{
46
- type: Component,
47
- args: [{
48
- selector: 'filter-item-select-multiple',
49
- templateUrl: './multiple.component.html',
50
- styleUrls: ['./multiple.component.scss'],
51
- changeDetection: ChangeDetectionStrategy.OnPush,
52
- }]
53
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { item: [{
54
- type: Input
55
- }], select: [{
56
- type: ViewChild,
57
- args: ['select', { static: true }]
58
- }] } });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlwbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9zZWxlY3QvbXVsdGlwbGUvbXVsdGlwbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9zZWxlY3QvbXVsdGlwbGUvbXVsdGlwbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsS0FBSyxFQUVMLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7OztBQVN2QixNQUFNLE9BQU8sdUJBQXVCO0lBT2xDLFlBQW1CLEVBQXFCO1FBQXJCLE9BQUUsR0FBRixFQUFFLENBQW1CO0lBQUcsQ0FBQztJQUVyQyxPQUFPO1FBRVosSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUVyQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBRWxDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUN4RCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBRS9ELElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFO29CQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7aUJBQ2xDO2FBQ0Y7U0FDRjtJQUNILENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU0sYUFBYSxDQUFDLE1BQU07UUFDekIsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtZQUMxQixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7U0FDaEY7YUFBTTtZQUNMLElBQUksTUFBTSxDQUFDLFFBQVEsRUFBRTtnQkFDbkIsTUFBTSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7YUFDL0Q7aUJBQU07Z0JBQ0wsTUFBTSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7YUFDakU7U0FDRjtJQUNILENBQUM7O3FIQXZDVSx1QkFBdUI7eUdBQXZCLHVCQUF1Qiw2TUNqQnBDLDR1QkF1QkE7NEZETmEsdUJBQXVCO2tCQU5uQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw2QkFBNkI7b0JBQ3ZDLFdBQVcsRUFBRSwyQkFBMkI7b0JBQ3hDLFNBQVMsRUFBRSxDQUFDLDJCQUEyQixDQUFDO29CQUN4QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7d0dBR2lCLElBQUk7c0JBQW5CLEtBQUs7Z0JBR0MsTUFBTTtzQkFEWixTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRTZWxlY3QgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmaWx0ZXItaXRlbS1zZWxlY3QtbXVsdGlwbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbXVsdGlwbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tdWx0aXBsZS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0TXVsdGlwbGVDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBpdGVtO1xuXG4gIEBWaWV3Q2hpbGQoJ3NlbGVjdCcsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHB1YmxpYyBzZWxlY3Q6IE1hdFNlbGVjdDtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIHB1YmxpYyBjaGFuZ2VkKCkge1xuXG4gICAgaWYgKHRoaXMuaXRlbS5pc29sYXRlKSB7XG5cbiAgICAgIHRoaXMuaXRlbS5pc29sYXRlLmVuYWJsZWQgPSBmYWxzZTtcblxuICAgICAgaWYgKHRoaXMuaXRlbS5tdWx0aXBsZSAmJiBBcnJheS5pc0FycmF5KHRoaXMuaXRlbS5tb2RlbCkpIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLml0ZW0ubW9kZWwuaW5kZXhPZih0aGlzLml0ZW0uaXNvbGF0ZS52YWx1ZSk7XG5cbiAgICAgICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgICAgICB0aGlzLml0ZW0ubW9kZWwuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbG9zZSgpIHtcbiAgICB0aGlzLnNlbGVjdC5jbG9zZSgpO1xuICB9XG5cbiAgcHVibGljIGlzb2xhdGVDaGFuZ2UoZmlsdGVyKSB7XG4gICAgaWYgKGZpbHRlci5pc29sYXRlLmVuYWJsZWQpIHtcbiAgICAgIGZpbHRlci5tb2RlbCA9IGZpbHRlci5tdWx0aXBsZSA/IFtmaWx0ZXIuaXNvbGF0ZS52YWx1ZV0gOiBmaWx0ZXIuaXNvbGF0ZS52YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGZpbHRlci5tdWx0aXBsZSkge1xuICAgICAgICBmaWx0ZXIubW9kZWwgPSBmaWx0ZXIuZGVmYXVsdFZhbHVlID8gZmlsdGVyLmRlZmF1bHRWYWx1ZSA6IFtdO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZmlsdGVyLm1vZGVsID0gZmlsdGVyLmRlZmF1bHRWYWx1ZSA/IGZpbHRlci5kZWZhdWx0VmFsdWUgOiBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkIFtuZ0NsYXNzXT1cInsgaXNvbGF0ZTogaXRlbS5pc29sYXRlIH1cIj5cbiAgPG1hdC1sYWJlbD57e2l0ZW0ubGFiZWx9fTwvbWF0LWxhYmVsPlxuICA8bWF0LXNlbGVjdFxuICAgICNzZWxlY3RcbiAgICBbZnNGaWx0ZXJGb2N1c1RyaWdnZXJdPVwiaXRlbVwiXG4gICAgWyhuZ01vZGVsKV09XCJpdGVtLm1vZGVsXCJcbiAgICAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VkKClcIlxuICAgIFttdWx0aXBsZV09XCJpdGVtLm11bHRpcGxlXCI+XG4gICAgICA8bWF0LW9wdGlvblxuICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtLnZhbHVlcyB8IGZzRmlsdGVySXNvbGF0ZVZhbHVlczogaXRlbS5pc29sYXRlXCJcbiAgICAgICAgW3ZhbHVlXT1cIml0ZW0udmFsdWVcIj5cbiAgICAgICAgICB7eyBpdGVtLm5hbWUgfX1cbiAgICA8L21hdC1vcHRpb24+XG4gIDwvbWF0LXNlbGVjdD5cblxuICA8bWF0LWhpbnQ+XG4gICAgPGRpdiAqbmdJZj1cIml0ZW0uaXNvbGF0ZVwiPlxuICAgICAgPG1hdC1jaGVja2JveCAoY2hhbmdlKT1cImlzb2xhdGVDaGFuZ2UoaXRlbSlcIiBbKG5nTW9kZWwpXT1cIml0ZW0uaXNvbGF0ZS5lbmFibGVkXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiY2hlY2tib3gtbGFiZWxcIj57eyBpdGVtLmlzb2xhdGUubGFiZWwgfX08L3NwYW4+XG4gICAgICA8L21hdC1jaGVja2JveD5cbiAgICA8L2Rpdj5cbiAgPC9tYXQtaGludD5cbjwvbWF0LWZvcm0tZmllbGQ+XG4iXX0=
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, ViewChild } from '@angular/core';
2
+ import { MatSelect } from '@angular/material/select';
3
+ import { MultipleSelectItem } from '../../../../models/items/select/multiple-select-item';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/material/form-field";
6
+ import * as i2 from "@angular/material/select";
7
+ import * as i3 from "@angular/material/core";
8
+ import * as i4 from "@angular/material/checkbox";
9
+ import * as i5 from "@angular/common";
10
+ import * as i6 from "../../../../directives/focus-to-item/focus-to-item.directive";
11
+ import * as i7 from "@angular/forms";
12
+ import * as i8 from "../../../../pipes/remove-isolate-value.pipe";
13
+ export class SelectMultipleComponent {
14
+ constructor(cd) {
15
+ this.cd = cd;
16
+ }
17
+ changed() {
18
+ if (this.item.isolate) {
19
+ this.item.isolate.enabled = false;
20
+ if (this.item.multiple && Array.isArray(this.item.model)) {
21
+ const index = this.item.model.indexOf(this.item.isolate.value);
22
+ if (index > -1) {
23
+ this.item.model.splice(index, 1);
24
+ }
25
+ }
26
+ }
27
+ }
28
+ close() {
29
+ this.select.close();
30
+ }
31
+ isolateChange(filter) {
32
+ if (filter.isolate.enabled) {
33
+ filter.model = filter.multiple ? [filter.isolate.value] : filter.isolate.value;
34
+ }
35
+ else {
36
+ if (filter.multiple) {
37
+ filter.model = filter.defaultValue ? filter.defaultValue : [];
38
+ }
39
+ else {
40
+ filter.model = filter.defaultValue ? filter.defaultValue : null;
41
+ }
42
+ }
43
+ }
44
+ }
45
+ SelectMultipleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SelectMultipleComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
46
+ SelectMultipleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SelectMultipleComponent, selector: "filter-item-select-multiple", inputs: { item: "item" }, viewQueries: [{ propertyName: "select", first: true, predicate: ["select"], descendants: true, static: true }], ngImport: i0, template: "<mat-form-field [ngClass]=\"{ isolate: item.isolate }\">\n <mat-label>{{item.label}}</mat-label>\n <mat-select\n #select\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n (ngModelChange)=\"changed()\"\n [multiple]=\"item.multiple\">\n <mat-option\n *ngFor=\"let item of item.values | fsFilterIsolateValues: item.isolate\"\n [value]=\"item.value\">\n {{ item.name }}\n </mat-option>\n </mat-select>\n\n <mat-hint>\n <div *ngIf=\"item.isolate\">\n <mat-checkbox (change)=\"isolateChange(item)\" [(ngModel)]=\"item.isolate.enabled\">\n <span class=\"checkbox-label\">{{ item.isolate.label }}</span>\n </mat-checkbox>\n </div>\n </mat-hint>\n</mat-form-field>\n", styles: [".isolate{margin-bottom:25px}\n"], components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i2.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i3.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i4.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.MatLabel, selector: "mat-label" }, { type: i6.FocusToItemDirective, selector: "[fsFilterFocusTrigger]", inputs: ["fsFilterFocusTrigger", "focusTargetType"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "fsFilterIsolateValues": i8.FsFilterIsolateValues }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SelectMultipleComponent, decorators: [{
48
+ type: Component,
49
+ args: [{
50
+ selector: 'filter-item-select-multiple',
51
+ templateUrl: './multiple.component.html',
52
+ styleUrls: ['./multiple.component.scss'],
53
+ changeDetection: ChangeDetectionStrategy.OnPush,
54
+ }]
55
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { item: [{
56
+ type: Input
57
+ }], select: [{
58
+ type: ViewChild,
59
+ args: ['select', { static: true }]
60
+ }] } });
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlwbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9zZWxlY3QvbXVsdGlwbGUvbXVsdGlwbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9zZWxlY3QvbXVsdGlwbGUvbXVsdGlwbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULEtBQUssRUFDTCxTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXJELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDOzs7Ozs7Ozs7O0FBUzFGLE1BQU0sT0FBTyx1QkFBdUI7SUFRbEMsWUFBbUIsRUFBcUI7UUFBckIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7SUFBRyxDQUFDO0lBRXJDLE9BQU87UUFFWixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBRXJCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFFbEMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3hELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFFL0QsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUU7b0JBQ2QsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztpQkFDbEM7YUFDRjtTQUNGO0lBQ0gsQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFTSxhQUFhLENBQUMsTUFBTTtRQUN6QixJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFO1lBQzFCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztTQUNoRjthQUFNO1lBQ0wsSUFBSSxNQUFNLENBQUMsUUFBUSxFQUFFO2dCQUNuQixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQzthQUMvRDtpQkFBTTtnQkFDTCxNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQzthQUNqRTtTQUNGO0lBQ0gsQ0FBQzs7cUhBeENVLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLDZNQ2xCcEMsNHVCQXVCQTs0RkRMYSx1QkFBdUI7a0JBTm5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZCQUE2QjtvQkFDdkMsV0FBVyxFQUFFLDJCQUEyQjtvQkFDeEMsU0FBUyxFQUFFLENBQUMsMkJBQTJCLENBQUM7b0JBQ3hDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRDt3R0FJUSxJQUFJO3NCQURWLEtBQUs7Z0JBSUMsTUFBTTtzQkFEWixTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNlbGVjdCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5cbmltcG9ydCB7IE11bHRpcGxlU2VsZWN0SXRlbSB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9pdGVtcy9zZWxlY3QvbXVsdGlwbGUtc2VsZWN0LWl0ZW0nO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZpbHRlci1pdGVtLXNlbGVjdC1tdWx0aXBsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9tdWx0aXBsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL211bHRpcGxlLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RNdWx0aXBsZUNvbXBvbmVudCB7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGl0ZW06IE11bHRpcGxlU2VsZWN0SXRlbTtcblxuICBAVmlld0NoaWxkKCdzZWxlY3QnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgc2VsZWN0OiBNYXRTZWxlY3Q7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBwdWJsaWMgY2hhbmdlZCgpIHtcblxuICAgIGlmICh0aGlzLml0ZW0uaXNvbGF0ZSkge1xuXG4gICAgICB0aGlzLml0ZW0uaXNvbGF0ZS5lbmFibGVkID0gZmFsc2U7XG5cbiAgICAgIGlmICh0aGlzLml0ZW0ubXVsdGlwbGUgJiYgQXJyYXkuaXNBcnJheSh0aGlzLml0ZW0ubW9kZWwpKSB7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5pdGVtLm1vZGVsLmluZGV4T2YodGhpcy5pdGVtLmlzb2xhdGUudmFsdWUpO1xuXG4gICAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgICAgdGhpcy5pdGVtLm1vZGVsLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoKSB7XG4gICAgdGhpcy5zZWxlY3QuY2xvc2UoKTtcbiAgfVxuXG4gIHB1YmxpYyBpc29sYXRlQ2hhbmdlKGZpbHRlcikge1xuICAgIGlmIChmaWx0ZXIuaXNvbGF0ZS5lbmFibGVkKSB7XG4gICAgICBmaWx0ZXIubW9kZWwgPSBmaWx0ZXIubXVsdGlwbGUgPyBbZmlsdGVyLmlzb2xhdGUudmFsdWVdIDogZmlsdGVyLmlzb2xhdGUudmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChmaWx0ZXIubXVsdGlwbGUpIHtcbiAgICAgICAgZmlsdGVyLm1vZGVsID0gZmlsdGVyLmRlZmF1bHRWYWx1ZSA/IGZpbHRlci5kZWZhdWx0VmFsdWUgOiBbXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZpbHRlci5tb2RlbCA9IGZpbHRlci5kZWZhdWx0VmFsdWUgPyBmaWx0ZXIuZGVmYXVsdFZhbHVlIDogbnVsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBbbmdDbGFzc109XCJ7IGlzb2xhdGU6IGl0ZW0uaXNvbGF0ZSB9XCI+XG4gIDxtYXQtbGFiZWw+e3tpdGVtLmxhYmVsfX08L21hdC1sYWJlbD5cbiAgPG1hdC1zZWxlY3RcbiAgICAjc2VsZWN0XG4gICAgW2ZzRmlsdGVyRm9jdXNUcmlnZ2VyXT1cIml0ZW1cIlxuICAgIFsobmdNb2RlbCldPVwiaXRlbS5tb2RlbFwiXG4gICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlZCgpXCJcbiAgICBbbXVsdGlwbGVdPVwiaXRlbS5tdWx0aXBsZVwiPlxuICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbS52YWx1ZXMgfCBmc0ZpbHRlcklzb2xhdGVWYWx1ZXM6IGl0ZW0uaXNvbGF0ZVwiXG4gICAgICAgIFt2YWx1ZV09XCJpdGVtLnZhbHVlXCI+XG4gICAgICAgICAge3sgaXRlbS5uYW1lIH19XG4gICAgPC9tYXQtb3B0aW9uPlxuICA8L21hdC1zZWxlY3Q+XG5cbiAgPG1hdC1oaW50PlxuICAgIDxkaXYgKm5nSWY9XCJpdGVtLmlzb2xhdGVcIj5cbiAgICAgIDxtYXQtY2hlY2tib3ggKGNoYW5nZSk9XCJpc29sYXRlQ2hhbmdlKGl0ZW0pXCIgWyhuZ01vZGVsKV09XCJpdGVtLmlzb2xhdGUuZW5hYmxlZFwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImNoZWNrYm94LWxhYmVsXCI+e3sgaXRlbS5pc29sYXRlLmxhYmVsIH19PC9zcGFuPlxuICAgICAgPC9tYXQtY2hlY2tib3g+XG4gICAgPC9kaXY+XG4gIDwvbWF0LWhpbnQ+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19