@firestitch/filter 16.0.0 → 16.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (216) hide show
  1. package/app/classes/actions-controller.d.ts +41 -41
  2. package/app/components/action-button/action-button.component.d.ts +9 -9
  3. package/app/components/action-kebab-actions/action-kebab-actions.component.d.ts +7 -7
  4. package/app/components/actions/actions.component.d.ts +13 -13
  5. package/app/components/filter/filter.component.d.ts +204 -204
  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 +9 -9
  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 +9 -9
  11. package/app/components/filters-item/autocomplete/autocomplete.component.d.ts +14 -14
  12. package/app/components/filters-item/autocompletechips/autocompletechips.component.d.ts +16 -16
  13. package/app/components/filters-item/base-item/base-item.component.d.ts +25 -25
  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 +20 -20
  17. package/app/components/filters-item/date-range/date-range.component.d.ts +15 -15
  18. package/app/components/filters-item/filter-item.component.d.ts +39 -39
  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 -15
  23. package/app/components/filters-item/select/select.component.d.ts +23 -23
  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/index.d.ts +3 -3
  28. package/app/components/saved-filter/saved-filter-edit/index.d.ts +1 -1
  29. package/app/components/saved-filter/saved-filter-edit/saved-filter-edit.component.d.ts +18 -18
  30. package/app/components/saved-filter/saved-filter-manage/index.d.ts +1 -1
  31. package/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.d.ts +16 -16
  32. package/app/components/saved-filter/saved-filters-menu/index.d.ts +1 -1
  33. package/app/components/saved-filter/saved-filters-menu/saved-filters-menu.component.d.ts +24 -24
  34. package/app/consts/query-param-delimiter.d.ts +1 -1
  35. package/app/directives/focus-to-item/focus-to-item.directive.d.ts +27 -27
  36. package/app/directives/status-bar/status-bar.directive.d.ts +8 -8
  37. package/app/enums/action-mode.enum.d.ts +6 -6
  38. package/app/enums/action-type.enum.d.ts +9 -9
  39. package/app/enums/button-style.d.ts +9 -9
  40. package/app/enums/index.d.ts +6 -6
  41. package/app/enums/item-date-mode.enum.d.ts +5 -5
  42. package/app/enums/item-type.enum.d.ts +15 -15
  43. package/app/enums/picker-view-type.enum.d.ts +7 -7
  44. package/app/fs-filter.module.d.ts +70 -70
  45. package/app/helpers/build-query-params.d.ts +3 -3
  46. package/app/helpers/compare.d.ts +2 -2
  47. package/app/helpers/create-filter-item.d.ts +14 -14
  48. package/app/helpers/find-value.d.ts +1 -1
  49. package/app/helpers/get-range-name.d.ts +1 -1
  50. package/app/helpers/parse-date.d.ts +1 -1
  51. package/app/helpers/parse-item-value-from-stored.d.ts +1 -1
  52. package/app/helpers/query-param-transformers.d.ts +2 -2
  53. package/app/helpers/restore-items.d.ts +12 -12
  54. package/app/injectors/filter-config.d.ts +2 -2
  55. package/app/injectors/filter-drawer-data.d.ts +2 -2
  56. package/app/injectors/filter-drawer-overlay.d.ts +2 -2
  57. package/app/interfaces/action.interface.d.ts +81 -81
  58. package/app/interfaces/config.interface.d.ts +66 -66
  59. package/app/interfaces/external-params.interface.d.ts +3 -3
  60. package/app/interfaces/filter.interface.d.ts +4 -4
  61. package/app/interfaces/index.d.ts +6 -6
  62. package/app/interfaces/items/autocomplete-chips.interface.d.ts +15 -15
  63. package/app/interfaces/items/autocomplete.interface.d.ts +9 -9
  64. package/app/interfaces/items/base.interface.d.ts +29 -29
  65. package/app/interfaces/items/checkbox.interface.d.ts +7 -7
  66. package/app/interfaces/items/chips.interface.d.ts +6 -6
  67. package/app/interfaces/items/date-range.interface.d.ts +8 -8
  68. package/app/interfaces/items/date.interface.d.ts +7 -7
  69. package/app/interfaces/items/range.interface.d.ts +13 -13
  70. package/app/interfaces/items/select.interface.d.ts +20 -20
  71. package/app/interfaces/items/text.interface.d.ts +9 -9
  72. package/app/interfaces/items/week.interface.d.ts +7 -7
  73. package/app/interfaces/saved-filters.interface.d.ts +18 -18
  74. package/app/interfaces/update-filter-item.interface.d.ts +4 -4
  75. package/app/models/action-menu-item.model.d.ts +23 -23
  76. package/app/models/action.model.d.ts +54 -54
  77. package/app/models/filter-config.d.ts +31 -31
  78. package/app/models/items/autocomplete/base-autocomplete-item.d.ts +12 -12
  79. package/app/models/items/autocomplete-chips-item.d.ts +20 -20
  80. package/app/models/items/autocomplete-item.d.ts +11 -11
  81. package/app/models/items/base-item.d.ts +80 -80
  82. package/app/models/items/checkbox-item.d.ts +17 -17
  83. package/app/models/items/chips-item.d.ts +18 -18
  84. package/app/models/items/date/base-date-item.d.ts +14 -14
  85. package/app/models/items/date-item.d.ts +8 -8
  86. package/app/models/items/date-range/base-date-range-item.d.ts +17 -17
  87. package/app/models/items/date-range-item.d.ts +6 -6
  88. package/app/models/items/date-time-item.d.ts +7 -7
  89. package/app/models/items/date-time-range-item.d.ts +6 -6
  90. package/app/models/items/range-item.d.ts +19 -19
  91. package/app/models/items/select/base-select-item.d.ts +13 -13
  92. package/app/models/items/select/multiple-select-item.d.ts +14 -14
  93. package/app/models/items/select/simple-select-item.d.ts +14 -14
  94. package/app/models/items/select-item.d.ts +8 -8
  95. package/app/models/items/text-item.d.ts +15 -15
  96. package/app/models/items/week-item.d.ts +18 -18
  97. package/app/pipes/remove-isolate-value.pipe.d.ts +8 -8
  98. package/app/providers/filter-meta.d.ts +5 -5
  99. package/app/services/external-params/persistance-params-controller.service.d.ts +21 -21
  100. package/app/services/external-params/query-params-controller.service.d.ts +22 -22
  101. package/app/services/external-params/saved-filters-controller.service.d.ts +40 -40
  102. package/app/services/external-params-controller.service.d.ts +42 -42
  103. package/app/services/filter-overlay.service.d.ts +36 -36
  104. package/app/services/focus-controller.service.d.ts +18 -18
  105. package/app/services/items-store.service.d.ts +69 -69
  106. package/esm2022/app/classes/actions-controller.mjs +129 -129
  107. package/esm2022/app/components/action-button/action-button.component.mjs +20 -20
  108. package/esm2022/app/components/action-kebab-actions/action-kebab-actions.component.mjs +17 -17
  109. package/esm2022/app/components/actions/actions.component.mjs +39 -39
  110. package/esm2022/app/components/filter/filter.component.mjs +625 -625
  111. package/esm2022/app/components/filter-chip/filter-chip.component.mjs +91 -91
  112. package/esm2022/app/components/filter-chip-content/filter-chip-content.component.mjs +82 -82
  113. package/esm2022/app/components/filter-chips/filter-chips.component.mjs +17 -17
  114. package/esm2022/app/components/filter-drawer/filter-drawer.component.mjs +77 -77
  115. package/esm2022/app/components/filter-drawer-actions/filter-drawer-actions.component.mjs +26 -26
  116. package/esm2022/app/components/filters-item/autocomplete/autocomplete.component.mjs +28 -28
  117. package/esm2022/app/components/filters-item/autocompletechips/autocompletechips.component.mjs +43 -43
  118. package/esm2022/app/components/filters-item/base-item/base-item.component.mjs +67 -67
  119. package/esm2022/app/components/filters-item/checkbox/checkbox.component.mjs +22 -22
  120. package/esm2022/app/components/filters-item/chips/chips.component.mjs +29 -29
  121. package/esm2022/app/components/filters-item/date/date.component.mjs +44 -44
  122. package/esm2022/app/components/filters-item/date-range/date-range.component.mjs +35 -35
  123. package/esm2022/app/components/filters-item/filter-item.component.mjs +81 -81
  124. package/esm2022/app/components/filters-item/range/range.component.mjs +48 -48
  125. package/esm2022/app/components/filters-item/select/backdrop/backdrop.component.mjs +11 -11
  126. package/esm2022/app/components/filters-item/select/groups/groups.component.mjs +32 -32
  127. package/esm2022/app/components/filters-item/select/multiple/multiple.component.mjs +59 -59
  128. package/esm2022/app/components/filters-item/select/select.component.mjs +54 -54
  129. package/esm2022/app/components/filters-item/select/simple/simple.component.mjs +45 -45
  130. package/esm2022/app/components/filters-item/text/text.component.mjs +50 -50
  131. package/esm2022/app/components/filters-item/week/week.component.mjs +25 -25
  132. package/esm2022/app/components/saved-filter/index.mjs +3 -3
  133. package/esm2022/app/components/saved-filter/saved-filter-edit/index.mjs +1 -1
  134. package/esm2022/app/components/saved-filter/saved-filter-edit/saved-filter-edit.component.mjs +54 -54
  135. package/esm2022/app/components/saved-filter/saved-filter-manage/index.mjs +1 -1
  136. package/esm2022/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.mjs +44 -44
  137. package/esm2022/app/components/saved-filter/saved-filters-menu/index.mjs +1 -1
  138. package/esm2022/app/components/saved-filter/saved-filters-menu/saved-filters-menu.component.mjs +60 -60
  139. package/esm2022/app/consts/query-param-delimiter.mjs +1 -1
  140. package/esm2022/app/directives/focus-to-item/focus-to-item.directive.mjs +140 -140
  141. package/esm2022/app/directives/status-bar/status-bar.directive.mjs +16 -16
  142. package/esm2022/app/enums/action-mode.enum.mjs +7 -7
  143. package/esm2022/app/enums/action-type.enum.mjs +10 -10
  144. package/esm2022/app/enums/button-style.mjs +10 -10
  145. package/esm2022/app/enums/index.mjs +6 -6
  146. package/esm2022/app/enums/item-date-mode.enum.mjs +6 -6
  147. package/esm2022/app/enums/item-type.enum.mjs +16 -16
  148. package/esm2022/app/enums/picker-view-type.enum.mjs +8 -8
  149. package/esm2022/app/fs-filter.module.mjs +260 -260
  150. package/esm2022/app/helpers/build-query-params.mjs +32 -32
  151. package/esm2022/app/helpers/compare.mjs +37 -37
  152. package/esm2022/app/helpers/create-filter-item.mjs +54 -54
  153. package/esm2022/app/helpers/find-value.mjs +12 -12
  154. package/esm2022/app/helpers/get-range-name.mjs +3 -3
  155. package/esm2022/app/helpers/parse-date.mjs +7 -7
  156. package/esm2022/app/helpers/parse-item-value-from-stored.mjs +76 -76
  157. package/esm2022/app/helpers/query-param-transformers.mjs +8 -8
  158. package/esm2022/app/helpers/restore-items.mjs +48 -48
  159. package/esm2022/app/injectors/filter-config.mjs +2 -2
  160. package/esm2022/app/injectors/filter-drawer-data.mjs +2 -2
  161. package/esm2022/app/injectors/filter-drawer-overlay.mjs +2 -2
  162. package/esm2022/app/interfaces/action.interface.mjs +1 -1
  163. package/esm2022/app/interfaces/config.interface.mjs +1 -1
  164. package/esm2022/app/interfaces/external-params.interface.mjs +1 -1
  165. package/esm2022/app/interfaces/filter.interface.mjs +1 -1
  166. package/esm2022/app/interfaces/index.mjs +6 -6
  167. package/esm2022/app/interfaces/items/autocomplete-chips.interface.mjs +1 -1
  168. package/esm2022/app/interfaces/items/autocomplete.interface.mjs +1 -1
  169. package/esm2022/app/interfaces/items/base.interface.mjs +1 -1
  170. package/esm2022/app/interfaces/items/checkbox.interface.mjs +1 -1
  171. package/esm2022/app/interfaces/items/chips.interface.mjs +1 -1
  172. package/esm2022/app/interfaces/items/date-range.interface.mjs +1 -1
  173. package/esm2022/app/interfaces/items/date.interface.mjs +1 -1
  174. package/esm2022/app/interfaces/items/range.interface.mjs +1 -1
  175. package/esm2022/app/interfaces/items/select.interface.mjs +1 -1
  176. package/esm2022/app/interfaces/items/text.interface.mjs +1 -1
  177. package/esm2022/app/interfaces/items/week.interface.mjs +1 -1
  178. package/esm2022/app/interfaces/saved-filters.interface.mjs +1 -1
  179. package/esm2022/app/interfaces/update-filter-item.interface.mjs +1 -1
  180. package/esm2022/app/models/action-menu-item.model.mjs +72 -72
  181. package/esm2022/app/models/action.model.mjs +155 -155
  182. package/esm2022/app/models/filter-config.mjs +78 -78
  183. package/esm2022/app/models/items/autocomplete/base-autocomplete-item.mjs +15 -15
  184. package/esm2022/app/models/items/autocomplete-chips-item.mjs +66 -66
  185. package/esm2022/app/models/items/autocomplete-item.mjs +32 -32
  186. package/esm2022/app/models/items/base-item.mjs +250 -250
  187. package/esm2022/app/models/items/checkbox-item.mjs +51 -51
  188. package/esm2022/app/models/items/chips-item.mjs +89 -89
  189. package/esm2022/app/models/items/date/base-date-item.mjs +49 -49
  190. package/esm2022/app/models/items/date-item.mjs +18 -18
  191. package/esm2022/app/models/items/date-range/base-date-range-item.mjs +123 -123
  192. package/esm2022/app/models/items/date-range-item.mjs +6 -6
  193. package/esm2022/app/models/items/date-time-item.mjs +9 -9
  194. package/esm2022/app/models/items/date-time-range-item.mjs +6 -6
  195. package/esm2022/app/models/items/range-item.mjs +84 -84
  196. package/esm2022/app/models/items/select/base-select-item.mjs +39 -39
  197. package/esm2022/app/models/items/select/multiple-select-item.mjs +87 -87
  198. package/esm2022/app/models/items/select/simple-select-item.mjs +65 -65
  199. package/esm2022/app/models/items/select-item.mjs +11 -11
  200. package/esm2022/app/models/items/text-item.mjs +35 -35
  201. package/esm2022/app/models/items/week-item.mjs +94 -94
  202. package/esm2022/app/pipes/remove-isolate-value.pipe.mjs +20 -20
  203. package/esm2022/app/providers/filter-meta.mjs +9 -9
  204. package/esm2022/app/services/external-params/persistance-params-controller.service.mjs +61 -61
  205. package/esm2022/app/services/external-params/query-params-controller.service.mjs +65 -65
  206. package/esm2022/app/services/external-params/saved-filters-controller.service.mjs +166 -166
  207. package/esm2022/app/services/external-params-controller.service.mjs +184 -184
  208. package/esm2022/app/services/filter-overlay.service.mjs +129 -129
  209. package/esm2022/app/services/focus-controller.service.mjs +28 -28
  210. package/esm2022/app/services/items-store.service.mjs +346 -346
  211. package/esm2022/firestitch-filter.mjs +4 -4
  212. package/esm2022/public_api.mjs +35 -35
  213. package/fesm2022/firestitch-filter.mjs +4516 -4516
  214. package/index.d.ts +5 -5
  215. package/package.json +1 -1
  216. package/public_api.d.ts +40 -40
@@ -1,92 +1,92 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, } from '@angular/core';
2
- import { combineLatest, Subject, timer } from 'rxjs';
3
- import { distinctUntilChanged, map, mapTo, startWith, take, takeUntil } from 'rxjs/operators';
4
- import { BaseItem } from '../../models/items/base-item';
5
- import { DateRangeItem } from '../../models/items/date-range-item';
6
- import { DateTimeRangeItem } from '../../models/items/date-time-range-item';
7
- import { RangeItem } from '../../models/items/range-item';
8
- import { FocusControllerService } from '../../services/focus-controller.service';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "../../services/focus-controller.service";
11
- import * as i2 from "@angular/common";
12
- import * as i3 from "@firestitch/chip";
13
- import * as i4 from "../filter-chip-content/filter-chip-content.component";
14
- export class FsFilterChipComponent {
15
- _cdRef;
16
- _focusController;
17
- item;
18
- itemVisible;
19
- rangeItem;
20
- chipDelayedRender$;
21
- _chipRenderTimer$ = timer(500)
22
- .pipe(mapTo(true));
23
- _destroy$ = new Subject();
24
- constructor(_cdRef, _focusController) {
25
- this._cdRef = _cdRef;
26
- this._focusController = _focusController;
27
- }
28
- ngOnInit() {
29
- this.rangeItem = this.item.isTypeDateRange
30
- || this.item.isTypeRange
31
- || this.item.isTypeDateTimeRange;
32
- this.listenValueChangesForRanges();
33
- this._updateVisibility();
34
- if (this.item.hasPendingValues) {
35
- this.item.loadAsyncValues(false);
36
- this.item.values$
37
- .pipe(take(2), takeUntil(this._destroy$))
38
- .subscribe(() => {
39
- this._updateVisibility();
40
- this._cdRef.markForCheck();
41
- });
42
- this._initDelayRender();
43
- }
44
- }
45
- ngOnDestroy() {
46
- this._destroy$.next();
47
- this._destroy$.complete();
48
- }
49
- focusOnItem(type = null) {
50
- this._focusController.click(this.item, type);
51
- }
52
- removeItem(event, type = null) {
53
- if (this.item instanceof RangeItem) {
54
- this.item.clearRange(type);
55
- }
56
- else if (this.item instanceof DateRangeItem || this.item instanceof DateTimeRangeItem) {
57
- this.item.clearDateRange(type);
58
- }
59
- else {
60
- this.item.clear();
61
- }
62
- }
63
- listenValueChangesForRanges() {
64
- this.item.value$
65
- .pipe(distinctUntilChanged(), takeUntil(this._destroy$))
66
- .subscribe(() => {
67
- this._updateVisibility();
68
- this._cdRef.markForCheck();
69
- });
70
- }
71
- _updateVisibility() {
72
- this.itemVisible = this.item.isChipVisible;
73
- }
74
- _initDelayRender() {
75
- this.chipDelayedRender$ = combineLatest([
76
- this.item.values$,
77
- this._chipRenderTimer$.pipe(startWith(false)),
78
- ])
79
- .pipe(map(([values, timerValue]) => {
80
- return !!values || timerValue;
81
- }));
82
- }
83
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FsFilterChipComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.FocusControllerService }], target: i0.ɵɵFactoryTarget.Component });
84
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FsFilterChipComponent, selector: "fs-filter-chip", inputs: { item: "item" }, ngImport: i0, template: "<ng-container *ngIf=\"!item.hasPendingValues || (chipDelayedRender$ | async)\">\n <ng-container *ngIf=\"rangeItem; else defaultChip\">\n <fs-chip\n *ngIf=\"item.model?.min || item.model?.from\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('from')\"\n (removed)=\"removeItem($event, 'from')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'from' }\">\n </ng-template>\n </fs-chip>\n\n <fs-chip\n *ngIf=\"item.model?.max || item.model?.to\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('to')\"\n (removed)=\"removeItem($event, 'to')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'to' }\">\n </ng-template>\n </fs-chip>\n\n </ng-container>\n\n <ng-template #defaultChip>\n <fs-chip\n *ngIf=\"itemVisible\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem()\"\n (removed)=\"removeItem($event)\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-template>\n </fs-chip>\n </ng-template>\n\n <ng-template #chipContent let-item=\"item\" let-type=\"type\">\n <ng-container *ngIf=\"!item.hasPendingValues && !item.loading; else lodaingValues\">\n <fs-filter-chip-content [item]=\"item\" [type]=\"type\"></fs-filter-chip-content>\n </ng-container>\n\n <ng-template #lodaingValues>\n Loading...\n </ng-template>\n </ng-template>\n</ng-container>\n\n", styles: ["fs-chip{cursor:pointer;color:#6f6f6f;margin-right:4px;margin-bottom:4px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.FsChipComponent, selector: "fs-chip", inputs: ["selectable", "removable", "value", "icon", "image", "selected", "size", "backgroundColor", "borderColor", "color", "outlined"], outputs: ["selectedToggled", "removed"] }, { kind: "component", type: i4.FsFilterChipContentComponent, selector: "fs-filter-chip-content", inputs: ["item", "type"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
85
- }
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FsFilterChipComponent, decorators: [{
87
- type: Component,
88
- args: [{ selector: 'fs-filter-chip', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!item.hasPendingValues || (chipDelayedRender$ | async)\">\n <ng-container *ngIf=\"rangeItem; else defaultChip\">\n <fs-chip\n *ngIf=\"item.model?.min || item.model?.from\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('from')\"\n (removed)=\"removeItem($event, 'from')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'from' }\">\n </ng-template>\n </fs-chip>\n\n <fs-chip\n *ngIf=\"item.model?.max || item.model?.to\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('to')\"\n (removed)=\"removeItem($event, 'to')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'to' }\">\n </ng-template>\n </fs-chip>\n\n </ng-container>\n\n <ng-template #defaultChip>\n <fs-chip\n *ngIf=\"itemVisible\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem()\"\n (removed)=\"removeItem($event)\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-template>\n </fs-chip>\n </ng-template>\n\n <ng-template #chipContent let-item=\"item\" let-type=\"type\">\n <ng-container *ngIf=\"!item.hasPendingValues && !item.loading; else lodaingValues\">\n <fs-filter-chip-content [item]=\"item\" [type]=\"type\"></fs-filter-chip-content>\n </ng-container>\n\n <ng-template #lodaingValues>\n Loading...\n </ng-template>\n </ng-template>\n</ng-container>\n\n", styles: ["fs-chip{cursor:pointer;color:#6f6f6f;margin-right:4px;margin-bottom:4px}\n"] }]
89
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.FocusControllerService }]; }, propDecorators: { item: [{
90
- type: Input
91
- }] } });
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, } from '@angular/core';
2
+ import { combineLatest, Subject, timer } from 'rxjs';
3
+ import { distinctUntilChanged, map, mapTo, startWith, take, takeUntil } from 'rxjs/operators';
4
+ import { BaseItem } from '../../models/items/base-item';
5
+ import { DateRangeItem } from '../../models/items/date-range-item';
6
+ import { DateTimeRangeItem } from '../../models/items/date-time-range-item';
7
+ import { RangeItem } from '../../models/items/range-item';
8
+ import { FocusControllerService } from '../../services/focus-controller.service';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "../../services/focus-controller.service";
11
+ import * as i2 from "@angular/common";
12
+ import * as i3 from "@firestitch/chip";
13
+ import * as i4 from "../filter-chip-content/filter-chip-content.component";
14
+ export class FsFilterChipComponent {
15
+ _cdRef;
16
+ _focusController;
17
+ item;
18
+ itemVisible;
19
+ rangeItem;
20
+ chipDelayedRender$;
21
+ _chipRenderTimer$ = timer(500)
22
+ .pipe(mapTo(true));
23
+ _destroy$ = new Subject();
24
+ constructor(_cdRef, _focusController) {
25
+ this._cdRef = _cdRef;
26
+ this._focusController = _focusController;
27
+ }
28
+ ngOnInit() {
29
+ this.rangeItem = this.item.isTypeDateRange
30
+ || this.item.isTypeRange
31
+ || this.item.isTypeDateTimeRange;
32
+ this.listenValueChangesForRanges();
33
+ this._updateVisibility();
34
+ if (this.item.hasPendingValues) {
35
+ this.item.loadAsyncValues(false);
36
+ this.item.values$
37
+ .pipe(take(2), takeUntil(this._destroy$))
38
+ .subscribe(() => {
39
+ this._updateVisibility();
40
+ this._cdRef.markForCheck();
41
+ });
42
+ this._initDelayRender();
43
+ }
44
+ }
45
+ ngOnDestroy() {
46
+ this._destroy$.next();
47
+ this._destroy$.complete();
48
+ }
49
+ focusOnItem(type = null) {
50
+ this._focusController.click(this.item, type);
51
+ }
52
+ removeItem(event, type = null) {
53
+ if (this.item instanceof RangeItem) {
54
+ this.item.clearRange(type);
55
+ }
56
+ else if (this.item instanceof DateRangeItem || this.item instanceof DateTimeRangeItem) {
57
+ this.item.clearDateRange(type);
58
+ }
59
+ else {
60
+ this.item.clear();
61
+ }
62
+ }
63
+ listenValueChangesForRanges() {
64
+ this.item.value$
65
+ .pipe(distinctUntilChanged(), takeUntil(this._destroy$))
66
+ .subscribe(() => {
67
+ this._updateVisibility();
68
+ this._cdRef.markForCheck();
69
+ });
70
+ }
71
+ _updateVisibility() {
72
+ this.itemVisible = this.item.isChipVisible;
73
+ }
74
+ _initDelayRender() {
75
+ this.chipDelayedRender$ = combineLatest([
76
+ this.item.values$,
77
+ this._chipRenderTimer$.pipe(startWith(false)),
78
+ ])
79
+ .pipe(map(([values, timerValue]) => {
80
+ return !!values || timerValue;
81
+ }));
82
+ }
83
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FsFilterChipComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.FocusControllerService }], target: i0.ɵɵFactoryTarget.Component });
84
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FsFilterChipComponent, selector: "fs-filter-chip", inputs: { item: "item" }, ngImport: i0, template: "<ng-container *ngIf=\"!item.hasPendingValues || (chipDelayedRender$ | async)\">\n <ng-container *ngIf=\"rangeItem; else defaultChip\">\n <fs-chip\n *ngIf=\"item.model?.min || item.model?.from\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('from')\"\n (removed)=\"removeItem($event, 'from')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'from' }\">\n </ng-template>\n </fs-chip>\n\n <fs-chip\n *ngIf=\"item.model?.max || item.model?.to\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('to')\"\n (removed)=\"removeItem($event, 'to')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'to' }\">\n </ng-template>\n </fs-chip>\n\n </ng-container>\n\n <ng-template #defaultChip>\n <fs-chip\n *ngIf=\"itemVisible\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem()\"\n (removed)=\"removeItem($event)\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-template>\n </fs-chip>\n </ng-template>\n\n <ng-template #chipContent let-item=\"item\" let-type=\"type\">\n <ng-container *ngIf=\"!item.hasPendingValues && !item.loading; else lodaingValues\">\n <fs-filter-chip-content [item]=\"item\" [type]=\"type\"></fs-filter-chip-content>\n </ng-container>\n\n <ng-template #lodaingValues>\n Loading...\n </ng-template>\n </ng-template>\n</ng-container>\n\n", styles: ["fs-chip{cursor:pointer;color:#6f6f6f;margin-right:4px;margin-bottom:4px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.FsChipComponent, selector: "fs-chip", inputs: ["selectable", "removable", "value", "icon", "image", "selected", "size", "backgroundColor", "borderColor", "color", "outlined"], outputs: ["selectedToggled", "removed"] }, { kind: "component", type: i4.FsFilterChipContentComponent, selector: "fs-filter-chip-content", inputs: ["item", "type"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
85
+ }
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FsFilterChipComponent, decorators: [{
87
+ type: Component,
88
+ args: [{ selector: 'fs-filter-chip', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"!item.hasPendingValues || (chipDelayedRender$ | async)\">\n <ng-container *ngIf=\"rangeItem; else defaultChip\">\n <fs-chip\n *ngIf=\"item.model?.min || item.model?.from\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('from')\"\n (removed)=\"removeItem($event, 'from')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'from' }\">\n </ng-template>\n </fs-chip>\n\n <fs-chip\n *ngIf=\"item.model?.max || item.model?.to\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem('to')\"\n (removed)=\"removeItem($event, 'to')\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item, type: 'to' }\">\n </ng-template>\n </fs-chip>\n\n </ng-container>\n\n <ng-template #defaultChip>\n <fs-chip\n *ngIf=\"itemVisible\"\n [value]=\"item\"\n [selectable]=\"false\"\n [removable]=\"item.showClear\"\n size=\"small\"\n (click)=\"focusOnItem()\"\n (removed)=\"removeItem($event)\">\n <ng-template\n [ngTemplateOutlet]=\"chipContent\"\n [ngTemplateOutletContext]=\"{ item: item }\">\n </ng-template>\n </fs-chip>\n </ng-template>\n\n <ng-template #chipContent let-item=\"item\" let-type=\"type\">\n <ng-container *ngIf=\"!item.hasPendingValues && !item.loading; else lodaingValues\">\n <fs-filter-chip-content [item]=\"item\" [type]=\"type\"></fs-filter-chip-content>\n </ng-container>\n\n <ng-template #lodaingValues>\n Loading...\n </ng-template>\n </ng-template>\n</ng-container>\n\n", styles: ["fs-chip{cursor:pointer;color:#6f6f6f;margin-right:4px;margin-bottom:4px}\n"] }]
89
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.FocusControllerService }]; }, propDecorators: { item: [{
90
+ type: Input
91
+ }] } });
92
92
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWNoaXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlci1jaGlwL2ZpbHRlci1jaGlwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItY2hpcC9maWx0ZXItY2hpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQzFDLFNBQVMsRUFDVCxLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGFBQWEsRUFBYyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHOUYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7OztBQVNqRixNQUFNLE9BQU8scUJBQXFCO0lBaUJ0QjtJQUNBO0lBaEJNLElBQUksQ0FBOEI7SUFFM0MsV0FBVyxDQUFVO0lBQ3JCLFNBQVMsQ0FBVTtJQUVuQixrQkFBa0IsQ0FBc0I7SUFFdkMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQztTQUNuQyxJQUFJLENBQ0gsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUNaLENBQUM7SUFFSSxTQUFTLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUVsQyxZQUNVLE1BQXlCLEVBQ3pCLGdCQUF3QztRQUR4QyxXQUFNLEdBQU4sTUFBTSxDQUFtQjtRQUN6QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXdCO0lBRWxELENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWU7ZUFDckMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXO2VBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUM7UUFFbkMsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFDbkMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFFekIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRWpDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztpQkFDZCxJQUFJLENBQ0gsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO2lCQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDN0IsQ0FBQyxDQUFDLENBQUM7WUFFTCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztTQUN6QjtJQUNILENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU0sV0FBVyxDQUFDLElBQUksR0FBRyxJQUFJO1FBQzVCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRU0sVUFBVSxDQUFDLEtBQWlCLEVBQUUsSUFBSSxHQUFHLElBQUk7UUFDOUMsSUFBSSxJQUFJLENBQUMsSUFBSSxZQUFZLFNBQVMsRUFBRTtZQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM1QjthQUFNLElBQUksSUFBSSxDQUFDLElBQUksWUFBWSxhQUFhLElBQUksSUFBSSxDQUFDLElBQUksWUFBWSxpQkFBaUIsRUFBRTtZQUN2RixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNoQzthQUFNO1lBQ0wsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFTSwyQkFBMkI7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNO2FBQ2IsSUFBSSxDQUNILG9CQUFvQixFQUFFLEVBQ3RCLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8saUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsYUFBYSxDQUFDO1lBQ3RDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztZQUNqQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM5QyxDQUFDO2FBQ0MsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxFQUFFLEVBQUU7WUFDM0IsT0FBTyxDQUFDLENBQUMsTUFBTSxJQUFJLFVBQVUsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQzt3R0E1RlUscUJBQXFCOzRGQUFyQixxQkFBcUIsZ0ZDeEJsQywyekRBMkRBOzs0RkRuQ2EscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNOzZJQUkvQixJQUFJO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIElucHV0LCBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUsIFN1YmplY3QsIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBtYXBUbywgc3RhcnRXaXRoLCB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IElGaWx0ZXJDb25maWdJdGVtIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9jb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJhc2VJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2l0ZW1zL2Jhc2UtaXRlbSc7XG5pbXBvcnQgeyBEYXRlUmFuZ2VJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2l0ZW1zL2RhdGUtcmFuZ2UtaXRlbSc7XG5pbXBvcnQgeyBEYXRlVGltZVJhbmdlSXRlbSB9IGZyb20gJy4uLy4uL21vZGVscy9pdGVtcy9kYXRlLXRpbWUtcmFuZ2UtaXRlbSc7XG5pbXBvcnQgeyBSYW5nZUl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvaXRlbXMvcmFuZ2UtaXRlbSc7XG5pbXBvcnQgeyBGb2N1c0NvbnRyb2xsZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZm9jdXMtY29udHJvbGxlci5zZXJ2aWNlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmcy1maWx0ZXItY2hpcCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItY2hpcC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbHRlci1jaGlwLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBGc0ZpbHRlckNoaXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgQElucHV0KCkgcHVibGljIGl0ZW06IEJhc2VJdGVtPElGaWx0ZXJDb25maWdJdGVtPjtcblxuICBwdWJsaWMgaXRlbVZpc2libGU6IGJvb2xlYW47XG4gIHB1YmxpYyByYW5nZUl0ZW06IGJvb2xlYW47XG5cbiAgcHVibGljIGNoaXBEZWxheWVkUmVuZGVyJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICBwcml2YXRlIF9jaGlwUmVuZGVyVGltZXIkID0gdGltZXIoNTAwKVxuICAgIC5waXBlKFxuICAgICAgbWFwVG8odHJ1ZSksXG4gICAgKTtcblxuICBwcml2YXRlIF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgX2ZvY3VzQ29udHJvbGxlcjogRm9jdXNDb250cm9sbGVyU2VydmljZSxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5yYW5nZUl0ZW0gPSB0aGlzLml0ZW0uaXNUeXBlRGF0ZVJhbmdlXG4gICAgICB8fCB0aGlzLml0ZW0uaXNUeXBlUmFuZ2VcbiAgICAgIHx8IHRoaXMuaXRlbS5pc1R5cGVEYXRlVGltZVJhbmdlO1xuXG4gICAgdGhpcy5saXN0ZW5WYWx1ZUNoYW5nZXNGb3JSYW5nZXMoKTtcbiAgICB0aGlzLl91cGRhdGVWaXNpYmlsaXR5KCk7XG5cbiAgICBpZiAodGhpcy5pdGVtLmhhc1BlbmRpbmdWYWx1ZXMpIHtcbiAgICAgIHRoaXMuaXRlbS5sb2FkQXN5bmNWYWx1ZXMoZmFsc2UpO1xuXG4gICAgICB0aGlzLml0ZW0udmFsdWVzJFxuICAgICAgICAucGlwZShcbiAgICAgICAgICB0YWtlKDIpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5fdXBkYXRlVmlzaWJpbGl0eSgpO1xuICAgICAgICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9KTtcblxuICAgICAgdGhpcy5faW5pdERlbGF5UmVuZGVyKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIGZvY3VzT25JdGVtKHR5cGUgPSBudWxsKSB7XG4gICAgdGhpcy5fZm9jdXNDb250cm9sbGVyLmNsaWNrKHRoaXMuaXRlbSwgdHlwZSk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlSXRlbShldmVudDogTW91c2VFdmVudCwgdHlwZSA9IG51bGwpIHtcbiAgICBpZiAodGhpcy5pdGVtIGluc3RhbmNlb2YgUmFuZ2VJdGVtKSB7XG4gICAgICB0aGlzLml0ZW0uY2xlYXJSYW5nZSh0eXBlKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXRlbSBpbnN0YW5jZW9mIERhdGVSYW5nZUl0ZW0gfHwgdGhpcy5pdGVtIGluc3RhbmNlb2YgRGF0ZVRpbWVSYW5nZUl0ZW0pIHtcbiAgICAgIHRoaXMuaXRlbS5jbGVhckRhdGVSYW5nZSh0eXBlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pdGVtLmNsZWFyKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGxpc3RlblZhbHVlQ2hhbmdlc0ZvclJhbmdlcygpIHtcbiAgICB0aGlzLml0ZW0udmFsdWUkXG4gICAgICAucGlwZShcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl91cGRhdGVWaXNpYmlsaXR5KCk7XG4gICAgICAgIHRoaXMuX2NkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVWaXNpYmlsaXR5KCkge1xuICAgIHRoaXMuaXRlbVZpc2libGUgPSB0aGlzLml0ZW0uaXNDaGlwVmlzaWJsZTtcbiAgfVxuXG4gIHByaXZhdGUgX2luaXREZWxheVJlbmRlcigpIHtcbiAgICB0aGlzLmNoaXBEZWxheWVkUmVuZGVyJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5pdGVtLnZhbHVlcyQsXG4gICAgICB0aGlzLl9jaGlwUmVuZGVyVGltZXIkLnBpcGUoc3RhcnRXaXRoKGZhbHNlKSksXG4gICAgXSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKFt2YWx1ZXMsIHRpbWVyVmFsdWVdKSA9PiB7XG4gICAgICAgICAgcmV0dXJuICEhdmFsdWVzIHx8IHRpbWVyVmFsdWU7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmhhc1BlbmRpbmdWYWx1ZXMgfHwgKGNoaXBEZWxheWVkUmVuZGVyJCB8IGFzeW5jKVwiPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwicmFuZ2VJdGVtOyBlbHNlIGRlZmF1bHRDaGlwXCI+XG4gICAgPGZzLWNoaXBcbiAgICAgICpuZ0lmPVwiaXRlbS5tb2RlbD8ubWluIHx8IGl0ZW0ubW9kZWw/LmZyb21cIlxuICAgICAgW3ZhbHVlXT1cIml0ZW1cIlxuICAgICAgW3NlbGVjdGFibGVdPVwiZmFsc2VcIlxuICAgICAgW3JlbW92YWJsZV09XCJpdGVtLnNob3dDbGVhclwiXG4gICAgICBzaXplPVwic21hbGxcIlxuICAgICAgKGNsaWNrKT1cImZvY3VzT25JdGVtKCdmcm9tJylcIlxuICAgICAgKHJlbW92ZWQpPVwicmVtb3ZlSXRlbSgkZXZlbnQsICdmcm9tJylcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJjaGlwQ29udGVudFwiXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGl0ZW06IGl0ZW0sIHR5cGU6ICdmcm9tJyB9XCI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvZnMtY2hpcD5cblxuICAgIDxmcy1jaGlwXG4gICAgICAqbmdJZj1cIml0ZW0ubW9kZWw/Lm1heCB8fCBpdGVtLm1vZGVsPy50b1wiXG4gICAgICBbdmFsdWVdPVwiaXRlbVwiXG4gICAgICBbc2VsZWN0YWJsZV09XCJmYWxzZVwiXG4gICAgICBbcmVtb3ZhYmxlXT1cIml0ZW0uc2hvd0NsZWFyXCJcbiAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAoY2xpY2spPVwiZm9jdXNPbkl0ZW0oJ3RvJylcIlxuICAgICAgKHJlbW92ZWQpPVwicmVtb3ZlSXRlbSgkZXZlbnQsICd0bycpXCI+XG4gICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2hpcENvbnRlbnRcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtOiBpdGVtLCB0eXBlOiAndG8nIH1cIj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9mcy1jaGlwPlxuXG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdENoaXA+XG4gICAgPGZzLWNoaXBcbiAgICAgICpuZ0lmPVwiaXRlbVZpc2libGVcIlxuICAgICAgW3ZhbHVlXT1cIml0ZW1cIlxuICAgICAgW3NlbGVjdGFibGVdPVwiZmFsc2VcIlxuICAgICAgW3JlbW92YWJsZV09XCJpdGVtLnNob3dDbGVhclwiXG4gICAgICBzaXplPVwic21hbGxcIlxuICAgICAgKGNsaWNrKT1cImZvY3VzT25JdGVtKClcIlxuICAgICAgKHJlbW92ZWQpPVwicmVtb3ZlSXRlbSgkZXZlbnQpXCI+XG4gICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2hpcENvbnRlbnRcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtOiBpdGVtIH1cIj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9mcy1jaGlwPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxuZy10ZW1wbGF0ZSAjY2hpcENvbnRlbnQgbGV0LWl0ZW09XCJpdGVtXCIgbGV0LXR5cGU9XCJ0eXBlXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmhhc1BlbmRpbmdWYWx1ZXMgJiYgIWl0ZW0ubG9hZGluZzsgZWxzZSBsb2RhaW5nVmFsdWVzXCI+XG4gICAgICA8ZnMtZmlsdGVyLWNoaXAtY29udGVudCBbaXRlbV09XCJpdGVtXCIgW3R5cGVdPVwidHlwZVwiPjwvZnMtZmlsdGVyLWNoaXAtY29udGVudD5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjbG9kYWluZ1ZhbHVlcz5cbiAgICAgIExvYWRpbmcuLi5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLXRlbXBsYXRlPlxuPC9uZy1jb250YWluZXI+XG5cbiJdfQ==
@@ -1,83 +1,83 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, } from '@angular/core';
2
- import { Subject } from 'rxjs';
3
- import { takeUntil } from 'rxjs/operators';
4
- import { BaseItem } from '../../models/items/base-item';
5
- import * as i0 from "@angular/core";
6
- export class FsFilterChipContentComponent {
7
- _cdRef;
8
- item;
9
- type;
10
- content;
11
- _destroy$ = new Subject();
12
- constructor(_cdRef) {
13
- this._cdRef = _cdRef;
14
- }
15
- ngOnInit() {
16
- this.listenValueChangesForRanges();
17
- }
18
- ngOnDestroy() {
19
- this._destroy$.next();
20
- this._destroy$.complete();
21
- }
22
- listenValueChangesForRanges() {
23
- this.item.value$
24
- .pipe(takeUntil(this._destroy$))
25
- .subscribe(() => {
26
- this.content = this._getContent();
27
- this._cdRef.detectChanges();
28
- });
29
- }
30
- _getContent() {
31
- const result = this.item.getChipsContent(this.type);
32
- if (this.item.chipLabel !== undefined) {
33
- if (this.item.chipLabel === '') {
34
- return `${result}`;
35
- }
36
- else {
37
- if (Array.isArray(this.item.chipLabel)) {
38
- const label = getLabelFromArray(this.item.chipLabel, this.type);
39
- return `${label}: ${result}`;
40
- }
41
- else {
42
- return `${this.item.chipLabel}: ${result}`;
43
- }
44
- }
45
- }
46
- else {
47
- if (Array.isArray(this.item.label)) {
48
- const label = getLabelFromArray(this.item.label, this.type);
49
- return `${label}: ${result}`;
50
- }
51
- else {
52
- if (this.item.isTypeCheckbox) {
53
- return result;
54
- }
55
- else {
56
- return `${this.item.label}: ${result}`;
57
- }
58
- }
59
- }
60
- }
61
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FsFilterChipContentComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
62
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FsFilterChipContentComponent, selector: "fs-filter-chip-content", inputs: { item: "item", type: "type" }, ngImport: i0, template: "{{ content }}\n", styles: [""], changeDetection: i0.ChangeDetectionStrategy.OnPush });
63
- }
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FsFilterChipContentComponent, decorators: [{
65
- type: Component,
66
- args: [{ selector: 'fs-filter-chip-content', changeDetection: ChangeDetectionStrategy.OnPush, template: "{{ content }}\n" }]
67
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { item: [{
68
- type: Input
69
- }], type: [{
70
- type: Input
71
- }] } });
72
- function getLabelFromArray(labelArr, type) {
73
- if (type === 'from' && labelArr[0]) {
74
- return `${labelArr[0]}`;
75
- }
76
- else if (type === 'to' && labelArr[1]) {
77
- return `${labelArr[1]}`;
78
- }
79
- else {
80
- return '';
81
- }
82
- }
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { takeUntil } from 'rxjs/operators';
4
+ import { BaseItem } from '../../models/items/base-item';
5
+ import * as i0 from "@angular/core";
6
+ export class FsFilterChipContentComponent {
7
+ _cdRef;
8
+ item;
9
+ type;
10
+ content;
11
+ _destroy$ = new Subject();
12
+ constructor(_cdRef) {
13
+ this._cdRef = _cdRef;
14
+ }
15
+ ngOnInit() {
16
+ this.listenValueChangesForRanges();
17
+ }
18
+ ngOnDestroy() {
19
+ this._destroy$.next();
20
+ this._destroy$.complete();
21
+ }
22
+ listenValueChangesForRanges() {
23
+ this.item.value$
24
+ .pipe(takeUntil(this._destroy$))
25
+ .subscribe(() => {
26
+ this.content = this._getContent();
27
+ this._cdRef.detectChanges();
28
+ });
29
+ }
30
+ _getContent() {
31
+ const result = this.item.getChipsContent(this.type);
32
+ if (this.item.chipLabel !== undefined) {
33
+ if (this.item.chipLabel === '') {
34
+ return `${result}`;
35
+ }
36
+ else {
37
+ if (Array.isArray(this.item.chipLabel)) {
38
+ const label = getLabelFromArray(this.item.chipLabel, this.type);
39
+ return `${label}: ${result}`;
40
+ }
41
+ else {
42
+ return `${this.item.chipLabel}: ${result}`;
43
+ }
44
+ }
45
+ }
46
+ else {
47
+ if (Array.isArray(this.item.label)) {
48
+ const label = getLabelFromArray(this.item.label, this.type);
49
+ return `${label}: ${result}`;
50
+ }
51
+ else {
52
+ if (this.item.isTypeCheckbox) {
53
+ return result;
54
+ }
55
+ else {
56
+ return `${this.item.label}: ${result}`;
57
+ }
58
+ }
59
+ }
60
+ }
61
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FsFilterChipContentComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
62
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FsFilterChipContentComponent, selector: "fs-filter-chip-content", inputs: { item: "item", type: "type" }, ngImport: i0, template: "{{ content }}\n", styles: [""], changeDetection: i0.ChangeDetectionStrategy.OnPush });
63
+ }
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FsFilterChipContentComponent, decorators: [{
65
+ type: Component,
66
+ args: [{ selector: 'fs-filter-chip-content', changeDetection: ChangeDetectionStrategy.OnPush, template: "{{ content }}\n" }]
67
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { item: [{
68
+ type: Input
69
+ }], type: [{
70
+ type: Input
71
+ }] } });
72
+ function getLabelFromArray(labelArr, type) {
73
+ if (type === 'from' && labelArr[0]) {
74
+ return `${labelArr[0]}`;
75
+ }
76
+ else if (type === 'to' && labelArr[1]) {
77
+ return `${labelArr[1]}`;
78
+ }
79
+ else {
80
+ return '';
81
+ }
82
+ }
83
83
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWNoaXAtY29udGVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVyLWNoaXAtY29udGVudC9maWx0ZXItY2hpcC1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItY2hpcC1jb250ZW50L2ZpbHRlci1jaGlwLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULEtBQUssR0FHTixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBVXhELE1BQU0sT0FBTyw0QkFBNEI7SUFTbkI7SUFQSixJQUFJLENBQThCO0lBQ2xDLElBQUksQ0FBZ0I7SUFFN0IsT0FBTyxDQUFDO0lBRVAsU0FBUyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFFbEMsWUFBb0IsTUFBeUI7UUFBekIsV0FBTSxHQUFOLE1BQU0sQ0FBbUI7SUFDN0MsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVNLDJCQUEyQjtRQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07YUFDYixJQUFJLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FDMUI7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUM5QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxXQUFXO1FBQ2pCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVwRCxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBRTtZQUNyQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLEVBQUUsRUFBRTtnQkFDOUIsT0FBTyxHQUFHLE1BQU0sRUFBRSxDQUFDO2FBQ3BCO2lCQUFNO2dCQUNMLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFO29CQUN0QyxNQUFNLEtBQUssR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQ2hFLE9BQU8sR0FBRyxLQUFLLEtBQUssTUFBTSxFQUFFLENBQUM7aUJBQzlCO3FCQUFNO29CQUNMLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsS0FBSyxNQUFNLEVBQUUsQ0FBQztpQkFDNUM7YUFDRjtTQUNGO2FBQU07WUFDTCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDbEMsTUFBTSxLQUFLLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM1RCxPQUFPLEdBQUcsS0FBSyxLQUFLLE1BQU0sRUFBRSxDQUFDO2FBQzlCO2lCQUFNO2dCQUNMLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUU7b0JBQzVCLE9BQU8sTUFBTSxDQUFDO2lCQUNmO3FCQUFNO29CQUNMLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssS0FBSyxNQUFNLEVBQUUsQ0FBQztpQkFDeEM7YUFDRjtTQUNGO0lBQ0gsQ0FBQzt3R0ExRFUsNEJBQTRCOzRGQUE1Qiw0QkFBNEIsc0dDdEJ6QyxpQkFDQTs7NEZEcUJhLDRCQUE0QjtrQkFOeEMsU0FBUzsrQkFDRSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU07d0dBSS9CLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSzs7QUEwRFIsU0FBUyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsSUFBSTtJQUN2QyxJQUFJLElBQUksS0FBSyxNQUFNLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFO1FBQ2xDLE9BQU8sR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztLQUN6QjtTQUFNLElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUU7UUFDdkMsT0FBTyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0tBQ3pCO1NBQU07UUFDTCxPQUFPLEVBQUUsQ0FBQztLQUNYO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEJhc2VJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2l0ZW1zL2Jhc2UtaXRlbSc7XG5pbXBvcnQgeyBJRmlsdGVyQ29uZmlnSXRlbSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvY29uZmlnLmludGVyZmFjZSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtZmlsdGVyLWNoaXAtY29udGVudCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItY2hpcC1jb250ZW50LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsdGVyLWNoaXAtY29udGVudC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRnNGaWx0ZXJDaGlwQ29udGVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBASW5wdXQoKSBwdWJsaWMgaXRlbTogQmFzZUl0ZW08SUZpbHRlckNvbmZpZ0l0ZW0+O1xuICBASW5wdXQoKSBwdWJsaWMgdHlwZTogJ2Zyb20nIHwgJ3RvJztcblxuICBwdWJsaWMgY29udGVudDtcblxuICBwcml2YXRlIF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfY2RSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5saXN0ZW5WYWx1ZUNoYW5nZXNGb3JSYW5nZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5fZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBsaXN0ZW5WYWx1ZUNoYW5nZXNGb3JSYW5nZXMoKSB7XG4gICAgdGhpcy5pdGVtLnZhbHVlJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5jb250ZW50ID0gdGhpcy5fZ2V0Q29udGVudCgpO1xuICAgICAgICB0aGlzLl9jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldENvbnRlbnQoKSB7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5pdGVtLmdldENoaXBzQ29udGVudCh0aGlzLnR5cGUpO1xuXG4gICAgaWYgKHRoaXMuaXRlbS5jaGlwTGFiZWwgIT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKHRoaXMuaXRlbS5jaGlwTGFiZWwgPT09ICcnKSB7XG4gICAgICAgIHJldHVybiBgJHtyZXN1bHR9YDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMuaXRlbS5jaGlwTGFiZWwpKSB7XG4gICAgICAgICAgY29uc3QgbGFiZWwgPSBnZXRMYWJlbEZyb21BcnJheSh0aGlzLml0ZW0uY2hpcExhYmVsLCB0aGlzLnR5cGUpO1xuICAgICAgICAgIHJldHVybiBgJHtsYWJlbH06ICR7cmVzdWx0fWA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIGAke3RoaXMuaXRlbS5jaGlwTGFiZWx9OiAke3Jlc3VsdH1gO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMuaXRlbS5sYWJlbCkpIHtcbiAgICAgICAgY29uc3QgbGFiZWwgPSBnZXRMYWJlbEZyb21BcnJheSh0aGlzLml0ZW0ubGFiZWwsIHRoaXMudHlwZSk7XG4gICAgICAgIHJldHVybiBgJHtsYWJlbH06ICR7cmVzdWx0fWA7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAodGhpcy5pdGVtLmlzVHlwZUNoZWNrYm94KSB7XG4gICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gYCR7dGhpcy5pdGVtLmxhYmVsfTogJHtyZXN1bHR9YDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRMYWJlbEZyb21BcnJheShsYWJlbEFyciwgdHlwZSkge1xuICBpZiAodHlwZSA9PT0gJ2Zyb20nICYmIGxhYmVsQXJyWzBdKSB7XG4gICAgcmV0dXJuIGAke2xhYmVsQXJyWzBdfWA7XG4gIH0gZWxzZSBpZiAodHlwZSA9PT0gJ3RvJyAmJiBsYWJlbEFyclsxXSkge1xuICAgIHJldHVybiBgJHtsYWJlbEFyclsxXX1gO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiAnJztcbiAgfVxufVxuIiwie3sgY29udGVudCB9fVxuIl19
@@ -1,18 +1,18 @@
1
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
- import { ItemType } from '../../enums';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- import * as i2 from "../filter-chip/filter-chip.component";
6
- export class FsFilterChipsComponent {
7
- filters;
8
- ItemType = ItemType;
9
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FsFilterChipsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
10
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FsFilterChipsComponent, selector: "fs-filter-chips", inputs: { filters: "filters" }, ngImport: i0, template: "<ng-container *ngFor=\"let item of filters\">\n <ng-container *ngIf=\"(item.value$ | async) !== undefined && item.type !== ItemType.Keyword\">\n <fs-filter-chip [item]=\"item\"></fs-filter-chip>\n </ng-container>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FsFilterChipComponent, selector: "fs-filter-chip", inputs: ["item"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
11
- }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FsFilterChipsComponent, decorators: [{
13
- type: Component,
14
- args: [{ selector: 'fs-filter-chips', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngFor=\"let item of filters\">\n <ng-container *ngIf=\"(item.value$ | async) !== undefined && item.type !== ItemType.Keyword\">\n <fs-filter-chip [item]=\"item\"></fs-filter-chip>\n </ng-container>\n</ng-container>\n" }]
15
- }], propDecorators: { filters: [{
16
- type: Input
17
- }] } });
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ import { ItemType } from '../../enums';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "../filter-chip/filter-chip.component";
6
+ export class FsFilterChipsComponent {
7
+ filters;
8
+ ItemType = ItemType;
9
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FsFilterChipsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
10
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FsFilterChipsComponent, selector: "fs-filter-chips", inputs: { filters: "filters" }, ngImport: i0, template: "<ng-container *ngFor=\"let item of filters\">\n <ng-container *ngIf=\"(item.value$ | async) !== undefined && item.type !== ItemType.Keyword\">\n <fs-filter-chip [item]=\"item\"></fs-filter-chip>\n </ng-container>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FsFilterChipComponent, selector: "fs-filter-chip", inputs: ["item"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
11
+ }
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FsFilterChipsComponent, decorators: [{
13
+ type: Component,
14
+ args: [{ selector: 'fs-filter-chips', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngFor=\"let item of filters\">\n <ng-container *ngIf=\"(item.value$ | async) !== undefined && item.type !== ItemType.Keyword\">\n <fs-filter-chip [item]=\"item\"></fs-filter-chip>\n </ng-container>\n</ng-container>\n" }]
15
+ }], propDecorators: { filters: [{
16
+ type: Input
17
+ }] } });
18
18
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWNoaXBzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItY2hpcHMvZmlsdGVyLWNoaXBzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXItY2hpcHMvZmlsdGVyLWNoaXBzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7QUFVdkMsTUFBTSxPQUFPLHNCQUFzQjtJQUVqQixPQUFPLENBQWtCO0lBRWxDLFFBQVEsR0FBRyxRQUFRLENBQUM7d0dBSmhCLHNCQUFzQjs0RkFBdEIsc0JBQXNCLHVGQ1puQyw4T0FLQTs7NEZET2Esc0JBQXNCO2tCQU5sQyxTQUFTOytCQUNFLGlCQUFpQixtQkFHVix1QkFBdUIsQ0FBQyxNQUFNOzhCQUkvQixPQUFPO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgSXRlbVR5cGUgfSBmcm9tICcuLi8uLi9lbnVtcyc7XG5pbXBvcnQgeyBCYXNlSXRlbSB9IGZyb20gJy4uLy4uL21vZGVscy9pdGVtcy9iYXNlLWl0ZW0nO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZzLWZpbHRlci1jaGlwcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItY2hpcHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWx0ZXItY2hpcHMuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZzRmlsdGVyQ2hpcHNDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBmaWx0ZXJzOiBCYXNlSXRlbTxhbnk+W107XG5cbiAgcHVibGljIEl0ZW1UeXBlID0gSXRlbVR5cGU7XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGZpbHRlcnNcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihpdGVtLnZhbHVlJCB8IGFzeW5jKSAhPT0gdW5kZWZpbmVkICYmIGl0ZW0udHlwZSAhPT0gSXRlbVR5cGUuS2V5d29yZFwiPlxuICAgIDxmcy1maWx0ZXItY2hpcCBbaXRlbV09XCJpdGVtXCI+PC9mcy1maWx0ZXItY2hpcD5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==