@firestitch/filter 13.1.2 → 13.1.3

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 (209) 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 +12 -12
  5. package/app/components/filter/filter.component.d.ts +198 -197
  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 +10 -10
  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 +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-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 +8 -8
  32. package/app/enums/action-mode.enum.d.ts +6 -6
  33. package/app/enums/action-type.enum.d.ts +9 -9
  34. package/app/enums/button-style.d.ts +9 -9
  35. package/app/enums/index.d.ts +6 -6
  36. package/app/enums/item-date-mode.enum.d.ts +5 -5
  37. package/app/enums/item-type.enum.d.ts +15 -15
  38. package/app/enums/picker-view-type.enum.d.ts +7 -7
  39. package/app/fs-filter.module.d.ts +68 -68
  40. package/app/helpers/build-query-params.d.ts +3 -3
  41. package/app/helpers/compare.d.ts +2 -2
  42. package/app/helpers/create-filter-item.d.ts +14 -14
  43. package/app/helpers/find-value.d.ts +1 -1
  44. package/app/helpers/get-range-name.d.ts +1 -1
  45. package/app/helpers/parse-date.d.ts +1 -1
  46. package/app/helpers/parse-item-value-from-stored.d.ts +1 -1
  47. package/app/helpers/query-param-transformers.d.ts +2 -2
  48. package/app/helpers/restore-items.d.ts +12 -12
  49. package/app/injectors/filter-config.d.ts +2 -2
  50. package/app/injectors/filter-drawer-data.d.ts +2 -2
  51. package/app/injectors/filter-drawer-overlay.d.ts +2 -2
  52. package/app/interfaces/action.interface.d.ts +80 -80
  53. package/app/interfaces/config.interface.d.ts +66 -66
  54. package/app/interfaces/external-params.interface.d.ts +3 -3
  55. package/app/interfaces/filter.interface.d.ts +4 -4
  56. package/app/interfaces/index.d.ts +6 -6
  57. package/app/interfaces/items/autocomplete-chips.interface.d.ts +15 -15
  58. package/app/interfaces/items/autocomplete.interface.d.ts +9 -9
  59. package/app/interfaces/items/base.interface.d.ts +29 -29
  60. package/app/interfaces/items/checkbox.interface.d.ts +7 -7
  61. package/app/interfaces/items/chips.interface.d.ts +6 -6
  62. package/app/interfaces/items/date-range.interface.d.ts +8 -8
  63. package/app/interfaces/items/date.interface.d.ts +7 -7
  64. package/app/interfaces/items/range.interface.d.ts +13 -13
  65. package/app/interfaces/items/select.interface.d.ts +20 -20
  66. package/app/interfaces/items/text.interface.d.ts +9 -9
  67. package/app/interfaces/items/week.interface.d.ts +7 -7
  68. package/app/interfaces/saved-filters.interface.d.ts +18 -18
  69. package/app/interfaces/update-filter-item.interface.d.ts +4 -4
  70. package/app/models/action-menu-item.model.d.ts +23 -23
  71. package/app/models/action.model.d.ts +50 -50
  72. package/app/models/filter-config.d.ts +31 -31
  73. package/app/models/items/autocomplete/base-autocomplete-item.d.ts +12 -12
  74. package/app/models/items/autocomplete-chips-item.d.ts +20 -20
  75. package/app/models/items/autocomplete-item.d.ts +11 -11
  76. package/app/models/items/base-item.d.ts +80 -80
  77. package/app/models/items/checkbox-item.d.ts +17 -17
  78. package/app/models/items/chips-item.d.ts +18 -18
  79. package/app/models/items/date/base-date-item.d.ts +14 -14
  80. package/app/models/items/date-item.d.ts +8 -8
  81. package/app/models/items/date-range/base-date-range-item.d.ts +21 -21
  82. package/app/models/items/date-range-item.d.ts +6 -6
  83. package/app/models/items/date-time-item.d.ts +7 -7
  84. package/app/models/items/date-time-range-item.d.ts +6 -6
  85. package/app/models/items/range-item.d.ts +23 -23
  86. package/app/models/items/select/base-select-item.d.ts +13 -13
  87. package/app/models/items/select/multiple-select-item.d.ts +14 -14
  88. package/app/models/items/select/simple-select-item.d.ts +14 -14
  89. package/app/models/items/select-item.d.ts +8 -8
  90. package/app/models/items/text-item.d.ts +15 -15
  91. package/app/models/items/week-item.d.ts +18 -18
  92. package/app/pipes/remove-isolate-value.pipe.d.ts +8 -8
  93. package/app/providers/filter-meta.d.ts +5 -5
  94. package/app/services/external-params/persistance-params-controller.service.d.ts +22 -22
  95. package/app/services/external-params/query-params-controller.service.d.ts +22 -22
  96. package/app/services/external-params/saved-filters-controller.service.d.ts +40 -40
  97. package/app/services/external-params-controller.service.d.ts +42 -42
  98. package/app/services/filter-overlay.service.d.ts +36 -36
  99. package/app/services/focus-controller.service.d.ts +18 -18
  100. package/app/services/items-store.service.d.ts +68 -67
  101. package/esm2020/app/classes/actions-controller.mjs +126 -126
  102. package/esm2020/app/components/action-button/action-button.component.mjs +23 -23
  103. package/esm2020/app/components/action-kebab-actions/action-kebab-actions.component.mjs +16 -16
  104. package/esm2020/app/components/actions/actions.component.mjs +38 -38
  105. package/esm2020/app/components/filter/filter.component.mjs +602 -599
  106. package/esm2020/app/components/filter-chip/filter-chip.component.mjs +85 -85
  107. package/esm2020/app/components/filter-chip-content/filter-chip-content.component.mjs +78 -78
  108. package/esm2020/app/components/filter-chips/filter-chips.component.mjs +22 -22
  109. package/esm2020/app/components/filter-drawer/filter-drawer.component.mjs +70 -70
  110. package/esm2020/app/components/filter-drawer-actions/filter-drawer-actions.component.mjs +40 -40
  111. package/esm2020/app/components/filters-item/autocomplete/autocomplete.component.mjs +26 -26
  112. package/esm2020/app/components/filters-item/autocompletechips/autocompletechips.component.mjs +41 -41
  113. package/esm2020/app/components/filters-item/base-item/base-item.component.mjs +62 -62
  114. package/esm2020/app/components/filters-item/checkbox/checkbox.component.mjs +20 -20
  115. package/esm2020/app/components/filters-item/chips/chips.component.mjs +27 -27
  116. package/esm2020/app/components/filters-item/date/date.component.mjs +42 -42
  117. package/esm2020/app/components/filters-item/date-range/date-range.component.mjs +33 -33
  118. package/esm2020/app/components/filters-item/filter-item.component.mjs +79 -79
  119. package/esm2020/app/components/filters-item/range/range.component.mjs +44 -44
  120. package/esm2020/app/components/filters-item/select/backdrop/backdrop.component.mjs +11 -11
  121. package/esm2020/app/components/filters-item/select/groups/groups.component.mjs +29 -29
  122. package/esm2020/app/components/filters-item/select/multiple/multiple.component.mjs +56 -56
  123. package/esm2020/app/components/filters-item/select/select.component.mjs +50 -50
  124. package/esm2020/app/components/filters-item/select/simple/simple.component.mjs +42 -42
  125. package/esm2020/app/components/filters-item/text/text.component.mjs +48 -48
  126. package/esm2020/app/components/filters-item/week/week.component.mjs +24 -24
  127. package/esm2020/app/components/saved-filter-edit/saved-filter-edit.component.mjs +54 -54
  128. package/esm2020/app/components/saved-filters-menu/saved-filters-menu.component.mjs +50 -50
  129. package/esm2020/app/consts/query-param-delimiter.mjs +1 -1
  130. package/esm2020/app/directives/focus-to-item/focus-to-item.directive.mjs +129 -129
  131. package/esm2020/app/directives/status-bar/status-bar.directive.mjs +15 -15
  132. package/esm2020/app/enums/action-mode.enum.mjs +7 -7
  133. package/esm2020/app/enums/action-type.enum.mjs +10 -10
  134. package/esm2020/app/enums/button-style.mjs +10 -10
  135. package/esm2020/app/enums/index.mjs +6 -6
  136. package/esm2020/app/enums/item-date-mode.enum.mjs +6 -6
  137. package/esm2020/app/enums/item-type.enum.mjs +16 -16
  138. package/esm2020/app/enums/picker-view-type.enum.mjs +8 -8
  139. package/esm2020/app/fs-filter.module.mjs +255 -255
  140. package/esm2020/app/helpers/build-query-params.mjs +32 -32
  141. package/esm2020/app/helpers/compare.mjs +37 -37
  142. package/esm2020/app/helpers/create-filter-item.mjs +54 -54
  143. package/esm2020/app/helpers/find-value.mjs +12 -12
  144. package/esm2020/app/helpers/get-range-name.mjs +8 -8
  145. package/esm2020/app/helpers/parse-date.mjs +7 -7
  146. package/esm2020/app/helpers/parse-item-value-from-stored.mjs +80 -80
  147. package/esm2020/app/helpers/query-param-transformers.mjs +8 -8
  148. package/esm2020/app/helpers/restore-items.mjs +48 -48
  149. package/esm2020/app/injectors/filter-config.mjs +2 -2
  150. package/esm2020/app/injectors/filter-drawer-data.mjs +2 -2
  151. package/esm2020/app/injectors/filter-drawer-overlay.mjs +2 -2
  152. package/esm2020/app/interfaces/action.interface.mjs +1 -1
  153. package/esm2020/app/interfaces/config.interface.mjs +1 -1
  154. package/esm2020/app/interfaces/external-params.interface.mjs +1 -1
  155. package/esm2020/app/interfaces/filter.interface.mjs +1 -1
  156. package/esm2020/app/interfaces/index.mjs +6 -6
  157. package/esm2020/app/interfaces/items/autocomplete-chips.interface.mjs +1 -1
  158. package/esm2020/app/interfaces/items/autocomplete.interface.mjs +1 -1
  159. package/esm2020/app/interfaces/items/base.interface.mjs +1 -1
  160. package/esm2020/app/interfaces/items/checkbox.interface.mjs +1 -1
  161. package/esm2020/app/interfaces/items/chips.interface.mjs +1 -1
  162. package/esm2020/app/interfaces/items/date-range.interface.mjs +1 -1
  163. package/esm2020/app/interfaces/items/date.interface.mjs +1 -1
  164. package/esm2020/app/interfaces/items/range.interface.mjs +1 -1
  165. package/esm2020/app/interfaces/items/select.interface.mjs +1 -1
  166. package/esm2020/app/interfaces/items/text.interface.mjs +1 -1
  167. package/esm2020/app/interfaces/items/week.interface.mjs +1 -1
  168. package/esm2020/app/interfaces/saved-filters.interface.mjs +1 -1
  169. package/esm2020/app/interfaces/update-filter-item.interface.mjs +1 -1
  170. package/esm2020/app/models/action-menu-item.model.mjs +66 -66
  171. package/esm2020/app/models/action.model.mjs +114 -114
  172. package/esm2020/app/models/filter-config.mjs +66 -66
  173. package/esm2020/app/models/items/autocomplete/base-autocomplete-item.mjs +13 -13
  174. package/esm2020/app/models/items/autocomplete-chips-item.mjs +60 -60
  175. package/esm2020/app/models/items/autocomplete-item.mjs +32 -32
  176. package/esm2020/app/models/items/base-item.mjs +233 -233
  177. package/esm2020/app/models/items/checkbox-item.mjs +49 -49
  178. package/esm2020/app/models/items/chips-item.mjs +88 -88
  179. package/esm2020/app/models/items/date/base-date-item.mjs +47 -47
  180. package/esm2020/app/models/items/date-item.mjs +18 -18
  181. package/esm2020/app/models/items/date-range/base-date-range-item.mjs +134 -134
  182. package/esm2020/app/models/items/date-range-item.mjs +6 -6
  183. package/esm2020/app/models/items/date-time-item.mjs +9 -9
  184. package/esm2020/app/models/items/date-time-range-item.mjs +6 -6
  185. package/esm2020/app/models/items/range-item.mjs +82 -82
  186. package/esm2020/app/models/items/select/base-select-item.mjs +36 -36
  187. package/esm2020/app/models/items/select/multiple-select-item.mjs +87 -87
  188. package/esm2020/app/models/items/select/simple-select-item.mjs +65 -65
  189. package/esm2020/app/models/items/select-item.mjs +10 -10
  190. package/esm2020/app/models/items/text-item.mjs +33 -33
  191. package/esm2020/app/models/items/week-item.mjs +93 -93
  192. package/esm2020/app/pipes/remove-isolate-value.pipe.mjs +20 -20
  193. package/esm2020/app/providers/filter-meta.mjs +9 -9
  194. package/esm2020/app/services/external-params/persistance-params-controller.service.mjs +57 -57
  195. package/esm2020/app/services/external-params/query-params-controller.service.mjs +61 -61
  196. package/esm2020/app/services/external-params/saved-filters-controller.service.mjs +163 -163
  197. package/esm2020/app/services/external-params-controller.service.mjs +161 -161
  198. package/esm2020/app/services/filter-overlay.service.mjs +121 -121
  199. package/esm2020/app/services/focus-controller.service.mjs +29 -29
  200. package/esm2020/app/services/items-store.service.mjs +342 -339
  201. package/esm2020/firestitch-filter.mjs +4 -4
  202. package/esm2020/public_api.mjs +35 -35
  203. package/fesm2015/firestitch-filter.mjs +4287 -4281
  204. package/fesm2015/firestitch-filter.mjs.map +1 -1
  205. package/fesm2020/firestitch-filter.mjs +4267 -4261
  206. package/fesm2020/firestitch-filter.mjs.map +1 -1
  207. package/firestitch-filter.d.ts +5 -5
  208. package/package.json +1 -1
  209. package/public_api.d.ts +40 -40
@@ -1,51 +1,51 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, KeyValueDiffers, Component, ViewChild, } from '@angular/core';
2
- import { BaseItemComponent } from '../base-item/base-item.component';
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 "./multiple/multiple.component";
7
- import * as i4 from "./simple/simple.component";
8
- import * as i5 from "./groups/groups.component";
9
- import * as i6 from "@angular/common";
10
- export class SelectComponent extends BaseItemComponent {
11
- constructor(_kvDiffers, _cd) {
12
- super(_kvDiffers, _cd);
13
- this._kvDiffers = _kvDiffers;
14
- this._cd = _cd;
15
- // For case when we have multiple selection with __all option
16
- // If _all has been selected than we must disable all other items
17
- this.allItemsOptionSelected = false;
18
- }
19
- get multipleSelectItem() {
20
- return this.item;
21
- }
22
- get simpleSelectItem() {
23
- return this.item;
24
- }
25
- ngOnChanges(changes) {
26
- if (changes.item) {
27
- this.values$ = this.item.values$;
28
- }
29
- }
30
- ngDoCheck() {
31
- if (this._kvDiffer) {
32
- const changes = this._kvDiffer.diff(this.item);
33
- if (changes) {
34
- this._cd.markForCheck();
35
- if (this.selectedItem) {
36
- this.selectedItem.cd.markForCheck();
37
- }
38
- }
39
- }
40
- }
41
- }
42
- SelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SelectComponent, deps: [{ token: i0.KeyValueDiffers }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
43
- SelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: SelectComponent, selector: "filter-item-select", viewQueries: [{ propertyName: "selectedItem", first: true, predicate: ["selectItem"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"(item.loading$ | async) else itemSelect\">\n <mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <mat-select disabled></mat-select>\n </mat-form-field>\n</ng-container>\n\n<ng-template #itemSelect>\n <ng-container *ngIf=\"(values$ | async)?.length\">\n <ng-container *ngIf=\"item.multiple && !item.children\">\n <filter-item-select-multiple\n [item]=\"multipleSelectItem\"\n #selectItem>\n </filter-item-select-multiple>\n </ng-container>\n\n <ng-container *ngIf=\"!item.multiple && !item.children\">\n <filter-item-select-simple\n [item]=\"simpleSelectItem\"\n #selectItem>\n </filter-item-select-simple>\n </ng-container>\n\n <ng-container *ngIf=\"item.children\">\n <filter-item-select-groups\n [item]=\"item\"\n #selectItem>\n </filter-item-select-groups>\n </ng-container>\n </ng-container>\n</ng-template>\n", components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i2.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i3.SelectMultipleComponent, selector: "filter-item-select-multiple", inputs: ["item"] }, { type: i4.SelectSimpleComponent, selector: "filter-item-select-simple", inputs: ["item"] }, { type: i5.SelectGroupsComponent, selector: "filter-item-select-groups", inputs: ["item"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatLabel, selector: "mat-label" }], pipes: { "async": i6.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SelectComponent, decorators: [{
45
- type: Component,
46
- args: [{ selector: 'filter-item-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"(item.loading$ | async) else itemSelect\">\n <mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <mat-select disabled></mat-select>\n </mat-form-field>\n</ng-container>\n\n<ng-template #itemSelect>\n <ng-container *ngIf=\"(values$ | async)?.length\">\n <ng-container *ngIf=\"item.multiple && !item.children\">\n <filter-item-select-multiple\n [item]=\"multipleSelectItem\"\n #selectItem>\n </filter-item-select-multiple>\n </ng-container>\n\n <ng-container *ngIf=\"!item.multiple && !item.children\">\n <filter-item-select-simple\n [item]=\"simpleSelectItem\"\n #selectItem>\n </filter-item-select-simple>\n </ng-container>\n\n <ng-container *ngIf=\"item.children\">\n <filter-item-select-groups\n [item]=\"item\"\n #selectItem>\n </filter-item-select-groups>\n </ng-container>\n </ng-container>\n</ng-template>\n" }]
47
- }], ctorParameters: function () { return [{ type: i0.KeyValueDiffers }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { selectedItem: [{
48
- type: ViewChild,
49
- args: ['selectItem']
50
- }] } });
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, KeyValueDiffers, Component, ViewChild, } from '@angular/core';
2
+ import { BaseItemComponent } from '../base-item/base-item.component';
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 "./multiple/multiple.component";
7
+ import * as i4 from "./simple/simple.component";
8
+ import * as i5 from "./groups/groups.component";
9
+ import * as i6 from "@angular/common";
10
+ export class SelectComponent extends BaseItemComponent {
11
+ constructor(_kvDiffers, _cd) {
12
+ super(_kvDiffers, _cd);
13
+ this._kvDiffers = _kvDiffers;
14
+ this._cd = _cd;
15
+ // For case when we have multiple selection with __all option
16
+ // If _all has been selected than we must disable all other items
17
+ this.allItemsOptionSelected = false;
18
+ }
19
+ get multipleSelectItem() {
20
+ return this.item;
21
+ }
22
+ get simpleSelectItem() {
23
+ return this.item;
24
+ }
25
+ ngOnChanges(changes) {
26
+ if (changes.item) {
27
+ this.values$ = this.item.values$;
28
+ }
29
+ }
30
+ ngDoCheck() {
31
+ if (this._kvDiffer) {
32
+ const changes = this._kvDiffer.diff(this.item);
33
+ if (changes) {
34
+ this._cd.markForCheck();
35
+ if (this.selectedItem) {
36
+ this.selectedItem.cd.markForCheck();
37
+ }
38
+ }
39
+ }
40
+ }
41
+ }
42
+ SelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SelectComponent, deps: [{ token: i0.KeyValueDiffers }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
43
+ SelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: SelectComponent, selector: "filter-item-select", viewQueries: [{ propertyName: "selectedItem", first: true, predicate: ["selectItem"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"(item.loading$ | async) else itemSelect\">\n <mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <mat-select disabled></mat-select>\n </mat-form-field>\n</ng-container>\n\n<ng-template #itemSelect>\n <ng-container *ngIf=\"(values$ | async)?.length\">\n <ng-container *ngIf=\"item.multiple && !item.children\">\n <filter-item-select-multiple\n [item]=\"multipleSelectItem\"\n #selectItem>\n </filter-item-select-multiple>\n </ng-container>\n\n <ng-container *ngIf=\"!item.multiple && !item.children\">\n <filter-item-select-simple\n [item]=\"simpleSelectItem\"\n #selectItem>\n </filter-item-select-simple>\n </ng-container>\n\n <ng-container *ngIf=\"item.children\">\n <filter-item-select-groups\n [item]=\"item\"\n #selectItem>\n </filter-item-select-groups>\n </ng-container>\n </ng-container>\n</ng-template>\n", components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i2.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i3.SelectMultipleComponent, selector: "filter-item-select-multiple", inputs: ["item"] }, { type: i4.SelectSimpleComponent, selector: "filter-item-select-simple", inputs: ["item"] }, { type: i5.SelectGroupsComponent, selector: "filter-item-select-groups", inputs: ["item"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatLabel, selector: "mat-label" }], pipes: { "async": i6.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SelectComponent, decorators: [{
45
+ type: Component,
46
+ args: [{ selector: 'filter-item-select', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"(item.loading$ | async) else itemSelect\">\n <mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <mat-select disabled></mat-select>\n </mat-form-field>\n</ng-container>\n\n<ng-template #itemSelect>\n <ng-container *ngIf=\"(values$ | async)?.length\">\n <ng-container *ngIf=\"item.multiple && !item.children\">\n <filter-item-select-multiple\n [item]=\"multipleSelectItem\"\n #selectItem>\n </filter-item-select-multiple>\n </ng-container>\n\n <ng-container *ngIf=\"!item.multiple && !item.children\">\n <filter-item-select-simple\n [item]=\"simpleSelectItem\"\n #selectItem>\n </filter-item-select-simple>\n </ng-container>\n\n <ng-container *ngIf=\"item.children\">\n <filter-item-select-groups\n [item]=\"item\"\n #selectItem>\n </filter-item-select-groups>\n </ng-container>\n </ng-container>\n</ng-template>\n" }]
47
+ }], ctorParameters: function () { return [{ type: i0.KeyValueDiffers }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { selectedItem: [{
48
+ type: ViewChild,
49
+ args: ['selectItem']
50
+ }] } });
51
51
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXJzLWl0ZW0vc2VsZWN0L3NlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsZUFBZSxFQUNmLFNBQVMsRUFDVCxTQUFTLEdBR1YsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7Ozs7O0FBWXJFLE1BQU0sT0FBTyxlQUFnQixTQUFRLGlCQUFpQztJQWtCcEUsWUFDWSxVQUEyQixFQUMzQixHQUFzQjtRQUVoQyxLQUFLLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBSGIsZUFBVSxHQUFWLFVBQVUsQ0FBaUI7UUFDM0IsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFoQmxDLDZEQUE2RDtRQUM3RCxpRUFBaUU7UUFDMUQsMkJBQXNCLEdBQUcsS0FBSyxDQUFDO0lBaUJ0QyxDQUFDO0lBZkQsSUFBVyxrQkFBa0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsSUFBMEIsQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBVyxnQkFBZ0I7UUFDekIsT0FBTyxJQUFJLENBQUMsSUFBd0IsQ0FBQztJQUN2QyxDQUFDO0lBV00sV0FBVyxDQUFDLE9BQXNCO1FBQ3ZDLElBQUksT0FBTyxDQUFDLElBQUksRUFBRTtZQUNoQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBZ0MsQ0FBQztTQUMzRDtJQUNILENBQUM7SUFFTSxTQUFTO1FBQ2QsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUUvQyxJQUFJLE9BQU8sRUFBRTtnQkFDWCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUV4QixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7b0JBQ3JCLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO2lCQUNyQzthQUNGO1NBQ0Y7SUFDSCxDQUFDOzs0R0EzQ1UsZUFBZTtnR0FBZixlQUFlLGtOQ3hCNUIsZzdCQStCQTsyRkRQYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLG9CQUFvQixtQkFFYix1QkFBdUIsQ0FBQyxNQUFNO3NJQUt4QyxZQUFZO3NCQURsQixTQUFTO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIEtleVZhbHVlRGlmZmVycyxcbiAgQ29tcG9uZW50LFxuICBWaWV3Q2hpbGQsXG4gIERvQ2hlY2ssXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEJhc2VJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS1pdGVtL2Jhc2UtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VsZWN0U2ltcGxlQ29tcG9uZW50IH0gZnJvbSAnLi9zaW1wbGUvc2ltcGxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWxlY3RNdWx0aXBsZUNvbXBvbmVudCB9IGZyb20gJy4vbXVsdGlwbGUvbXVsdGlwbGUuY29tcG9uZW50JztcbmltcG9ydCB7IEJhc2VTZWxlY3RJdGVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2l0ZW1zL3NlbGVjdC9iYXNlLXNlbGVjdC1pdGVtJztcbmltcG9ydCB7IE11bHRpcGxlU2VsZWN0SXRlbSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pdGVtcy9zZWxlY3QvbXVsdGlwbGUtc2VsZWN0LWl0ZW0nO1xuaW1wb3J0IHsgU2ltcGxlU2VsZWN0SXRlbSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pdGVtcy9zZWxlY3Qvc2ltcGxlLXNlbGVjdC1pdGVtJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmlsdGVyLWl0ZW0tc2VsZWN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTZWxlY3RDb21wb25lbnQgZXh0ZW5kcyBCYXNlSXRlbUNvbXBvbmVudDxCYXNlU2VsZWN0SXRlbT4gaW1wbGVtZW50cyBEb0NoZWNrIHtcblxuICBAVmlld0NoaWxkKCdzZWxlY3RJdGVtJylcbiAgcHVibGljIHNlbGVjdGVkSXRlbTogU2VsZWN0U2ltcGxlQ29tcG9uZW50IHwgU2VsZWN0TXVsdGlwbGVDb21wb25lbnQ7XG4gIC8vIEZvciBjYXNlIHdoZW4gd2UgaGF2ZSBtdWx0aXBsZSBzZWxlY3Rpb24gd2l0aCBfX2FsbCBvcHRpb25cbiAgLy8gSWYgX2FsbCBoYXMgYmVlbiBzZWxlY3RlZCB0aGFuIHdlIG11c3QgZGlzYWJsZSBhbGwgb3RoZXIgaXRlbXNcbiAgcHVibGljIGFsbEl0ZW1zT3B0aW9uU2VsZWN0ZWQgPSBmYWxzZTtcblxuICBwdWJsaWMgZ2V0IG11bHRpcGxlU2VsZWN0SXRlbSgpOiBNdWx0aXBsZVNlbGVjdEl0ZW0ge1xuICAgIHJldHVybiB0aGlzLml0ZW0gYXMgTXVsdGlwbGVTZWxlY3RJdGVtO1xuICB9XG5cbiAgcHVibGljIGdldCBzaW1wbGVTZWxlY3RJdGVtKCk6IFNpbXBsZVNlbGVjdEl0ZW0ge1xuICAgIHJldHVybiB0aGlzLml0ZW0gYXMgU2ltcGxlU2VsZWN0SXRlbTtcbiAgfVxuXG4gIHB1YmxpYyB2YWx1ZXMkOiBPYnNlcnZhYmxlPHVua25vd25bXT47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIF9rdkRpZmZlcnM6IEtleVZhbHVlRGlmZmVycyxcbiAgICBwcm90ZWN0ZWQgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICBzdXBlcihfa3ZEaWZmZXJzLCBfY2QpO1xuICB9XG4gIFxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzLml0ZW0pIHtcbiAgICAgIHRoaXMudmFsdWVzJCA9IHRoaXMuaXRlbS52YWx1ZXMkIGFzIE9ic2VydmFibGU8dW5rbm93bltdPjtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdEb0NoZWNrKCkge1xuICAgIGlmICh0aGlzLl9rdkRpZmZlcikge1xuICAgICAgY29uc3QgY2hhbmdlcyA9IHRoaXMuX2t2RGlmZmVyLmRpZmYodGhpcy5pdGVtKTtcblxuICAgICAgaWYgKGNoYW5nZXMpIHtcbiAgICAgICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRJdGVtKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW0uY2QubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIoaXRlbS5sb2FkaW5nJCB8IGFzeW5jKSBlbHNlIGl0ZW1TZWxlY3RcIj5cbiAgPG1hdC1mb3JtLWZpZWxkPlxuICAgIDxtYXQtbGFiZWw+e3tpdGVtLmxhYmVsfX08L21hdC1sYWJlbD5cbiAgICA8bWF0LXNlbGVjdCBkaXNhYmxlZD48L21hdC1zZWxlY3Q+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNpdGVtU2VsZWN0PlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiKHZhbHVlcyQgfCBhc3luYyk/Lmxlbmd0aFwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLm11bHRpcGxlICYmICFpdGVtLmNoaWxkcmVuXCI+XG4gICAgICA8ZmlsdGVyLWl0ZW0tc2VsZWN0LW11bHRpcGxlXG4gICAgICAgIFtpdGVtXT1cIm11bHRpcGxlU2VsZWN0SXRlbVwiXG4gICAgICAgICNzZWxlY3RJdGVtPlxuICAgICAgPC9maWx0ZXItaXRlbS1zZWxlY3QtbXVsdGlwbGU+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0ubXVsdGlwbGUgJiYgIWl0ZW0uY2hpbGRyZW5cIj5cbiAgICAgIDxmaWx0ZXItaXRlbS1zZWxlY3Qtc2ltcGxlXG4gICAgICAgIFtpdGVtXT1cInNpbXBsZVNlbGVjdEl0ZW1cIlxuICAgICAgICAjc2VsZWN0SXRlbT5cbiAgICAgIDwvZmlsdGVyLWl0ZW0tc2VsZWN0LXNpbXBsZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLmNoaWxkcmVuXCI+XG4gICAgICA8ZmlsdGVyLWl0ZW0tc2VsZWN0LWdyb3Vwc1xuICAgICAgICBbaXRlbV09XCJpdGVtXCJcbiAgICAgICAgI3NlbGVjdEl0ZW0+XG4gICAgICA8L2ZpbHRlci1pdGVtLXNlbGVjdC1ncm91cHM+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -1,43 +1,43 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, ViewChild, } from '@angular/core';
2
- import { MatSelect } from '@angular/material/select';
3
- import { SimpleSelectItem } from '../../../../models/items/select/simple-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 "@firestitch/form";
13
- import * as i9 from "../../../../pipes/remove-isolate-value.pipe";
14
- export class SelectSimpleComponent {
15
- constructor(cd) {
16
- this.cd = cd;
17
- }
18
- changed() {
19
- if (this.item.isolate) {
20
- this.item.isolate.enabled = false;
21
- }
22
- }
23
- isolateChange(filter) {
24
- if (filter.isolate.enabled) {
25
- filter.model = filter.isolate.value;
26
- }
27
- else {
28
- filter.model = null;
29
- }
30
- }
31
- }
32
- SelectSimpleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SelectSimpleComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
33
- SelectSimpleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: SelectSimpleComponent, selector: "filter-item-select-simple", 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 <mat-option *ngFor=\"let item of item.values | fsFilterIsolateValues: item.isolate\"\n [value]=\"item.value\"\n >\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", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], 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", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], 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: i8.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { 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": i9.FsFilterIsolateValues }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SelectSimpleComponent, decorators: [{
35
- type: Component,
36
- args: [{ selector: 'filter-item-select-simple', changeDetection: ChangeDetectionStrategy.OnPush, 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 <mat-option *ngFor=\"let item of item.values | fsFilterIsolateValues: item.isolate\"\n [value]=\"item.value\"\n >\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"] }]
37
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { item: [{
38
- type: Input
39
- }], select: [{
40
- type: ViewChild,
41
- args: ['select', { static: true }]
42
- }] } });
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, ViewChild, } from '@angular/core';
2
+ import { MatSelect } from '@angular/material/select';
3
+ import { SimpleSelectItem } from '../../../../models/items/select/simple-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 "@firestitch/form";
13
+ import * as i9 from "../../../../pipes/remove-isolate-value.pipe";
14
+ export class SelectSimpleComponent {
15
+ constructor(cd) {
16
+ this.cd = cd;
17
+ }
18
+ changed() {
19
+ if (this.item.isolate) {
20
+ this.item.isolate.enabled = false;
21
+ }
22
+ }
23
+ isolateChange(filter) {
24
+ if (filter.isolate.enabled) {
25
+ filter.model = filter.isolate.value;
26
+ }
27
+ else {
28
+ filter.model = null;
29
+ }
30
+ }
31
+ }
32
+ SelectSimpleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SelectSimpleComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
33
+ SelectSimpleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: SelectSimpleComponent, selector: "filter-item-select-simple", 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 <mat-option *ngFor=\"let item of item.values | fsFilterIsolateValues: item.isolate\"\n [value]=\"item.value\"\n >\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", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], 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", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], 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: i8.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { 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": i9.FsFilterIsolateValues }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SelectSimpleComponent, decorators: [{
35
+ type: Component,
36
+ args: [{ selector: 'filter-item-select-simple', changeDetection: ChangeDetectionStrategy.OnPush, 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 <mat-option *ngFor=\"let item of item.values | fsFilterIsolateValues: item.isolate\"\n [value]=\"item.value\"\n >\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"] }]
37
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { item: [{
38
+ type: Input
39
+ }], select: [{
40
+ type: ViewChild,
41
+ args: ['select', { static: true }]
42
+ }] } });
43
43
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9maWx0ZXJzLWl0ZW0vc2VsZWN0L3NpbXBsZS9zaW1wbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9zZWxlY3Qvc2ltcGxlL3NpbXBsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsS0FBSyxFQUNMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7Ozs7Ozs7Ozs7O0FBU3RGLE1BQU0sT0FBTyxxQkFBcUI7SUFNaEMsWUFBbUIsRUFBcUI7UUFBckIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7SUFBRyxDQUFDO0lBRXJDLE9BQU87UUFDWixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7U0FDbkM7SUFDSCxDQUFDO0lBRU0sYUFBYSxDQUFDLE1BQU07UUFFekIsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtZQUMxQixNQUFNLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1NBQ3JDO2FBQU07WUFDTCxNQUFNLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztTQUNyQjtJQUNILENBQUM7O2tIQXJCVSxxQkFBcUI7c0dBQXJCLHFCQUFxQiwyTUNqQmxDLHlzQkFzQkE7MkZETGEscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLDJCQUEyQixtQkFHcEIsdUJBQXVCLENBQUMsTUFBTTt3R0FJL0IsSUFBSTtzQkFBbkIsS0FBSztnQkFFaUMsTUFBTTtzQkFBNUMsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0U2VsZWN0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7IFNpbXBsZVNlbGVjdEl0ZW0gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvaXRlbXMvc2VsZWN0L3NpbXBsZS1zZWxlY3QtaXRlbSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmlsdGVyLWl0ZW0tc2VsZWN0LXNpbXBsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaW1wbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaW1wbGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdFNpbXBsZUNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgcHVibGljIGl0ZW06IFNpbXBsZVNlbGVjdEl0ZW07XG5cbiAgQFZpZXdDaGlsZCgnc2VsZWN0JywgeyBzdGF0aWM6IHRydWUgfSkgc2VsZWN0OiBNYXRTZWxlY3Q7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBwdWJsaWMgY2hhbmdlZCgpIHtcbiAgICBpZiAodGhpcy5pdGVtLmlzb2xhdGUpIHtcbiAgICAgIHRoaXMuaXRlbS5pc29sYXRlLmVuYWJsZWQgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaXNvbGF0ZUNoYW5nZShmaWx0ZXIpIHtcblxuICAgIGlmIChmaWx0ZXIuaXNvbGF0ZS5lbmFibGVkKSB7XG4gICAgICBmaWx0ZXIubW9kZWwgPSBmaWx0ZXIuaXNvbGF0ZS52YWx1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgZmlsdGVyLm1vZGVsID0gbnVsbDtcbiAgICB9XG4gIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBbbmdDbGFzc109XCJ7IGlzb2xhdGU6IGl0ZW0uaXNvbGF0ZSB9XCI+XG4gIDxtYXQtbGFiZWw+e3tpdGVtLmxhYmVsfX08L21hdC1sYWJlbD5cbiAgPG1hdC1zZWxlY3RcbiAgICAjc2VsZWN0XG4gICAgW2ZzRmlsdGVyRm9jdXNUcmlnZ2VyXT1cIml0ZW1cIlxuICAgIFsobmdNb2RlbCldPVwiaXRlbS5tb2RlbFwiXG4gICAgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlZCgpXCI+XG4gICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbS52YWx1ZXMgfCBmc0ZpbHRlcklzb2xhdGVWYWx1ZXM6IGl0ZW0uaXNvbGF0ZVwiXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW0udmFsdWVcIlxuICAgID5cbiAgICAgIHt7IGl0ZW0ubmFtZSB9fVxuICAgIDwvbWF0LW9wdGlvbj5cbiAgPC9tYXQtc2VsZWN0PlxuXG4gIDxtYXQtaGludD5cbiAgICA8ZGl2ICpuZ0lmPVwiaXRlbS5pc29sYXRlXCI+XG4gICAgICA8bWF0LWNoZWNrYm94IChjaGFuZ2UpPVwiaXNvbGF0ZUNoYW5nZShpdGVtKVwiIFsobmdNb2RlbCldPVwiaXRlbS5pc29sYXRlLmVuYWJsZWRcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJjaGVja2JveC1sYWJlbFwiPnt7IGl0ZW0uaXNvbGF0ZS5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgIDwvbWF0LWNoZWNrYm94PlxuICAgIDwvZGl2PlxuICA8L21hdC1oaW50PlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
@@ -1,49 +1,49 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, KeyValueDiffers, } from '@angular/core';
2
- import { FormControl } from '@angular/forms';
3
- import { Subject } from 'rxjs';
4
- import { distinctUntilChanged, takeUntil, debounceTime } from 'rxjs/operators';
5
- import { BaseItemComponent } from '../base-item/base-item.component';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/material/form-field";
8
- import * as i2 from "@angular/common";
9
- import * as i3 from "@angular/material/input";
10
- import * as i4 from "@angular/forms";
11
- import * as i5 from "../../../directives/focus-to-item/focus-to-item.directive";
12
- export class TextComponent extends BaseItemComponent {
13
- constructor(_kvDiffers, _cd) {
14
- super(_kvDiffers, _cd);
15
- this._kvDiffers = _kvDiffers;
16
- this._cd = _cd;
17
- this.textControl = new FormControl();
18
- this.destroy$ = new Subject();
19
- }
20
- ngOnInit() {
21
- this._listenControlValueChanges();
22
- this._listenModelChanges();
23
- }
24
- ngOnDestroy() {
25
- this.destroy$.next();
26
- this.destroy$.complete();
27
- }
28
- _listenControlValueChanges() {
29
- this.textControl.valueChanges
30
- .pipe(distinctUntilChanged(), debounceTime(200), takeUntil(this.destroy$))
31
- .subscribe((value) => {
32
- this.item.model = value;
33
- });
34
- }
35
- _listenModelChanges() {
36
- this._item.value$
37
- .pipe(takeUntil(this.destroy$))
38
- .subscribe(() => {
39
- this.textControl.setValue(this.item.model, { emitEvent: false });
40
- });
41
- }
42
- }
43
- TextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: TextComponent, deps: [{ token: i0.KeyValueDiffers }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
44
- TextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: TextComponent, selector: "filter-item-text", usesInheritance: true, ngImport: i0, template: "<mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <span matPrefix *ngIf=\"item.prefix\" [innerHtml]=\"item.prefix\"></span>\n <input matInput [formControl]=\"textControl\" [fsFilterFocusTrigger]=\"item\">\n <span matSuffix *ngIf=\"item.suffix\" [innerHtml]=\"item.suffix\"></span>\n</mat-form-field>\n", styles: [""], components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], 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: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], 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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i5.FocusToItemDirective, selector: "[fsFilterFocusTrigger]", inputs: ["fsFilterFocusTrigger", "focusTargetType"] }, { type: i1.MatSuffix, selector: "[matSuffix]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: TextComponent, decorators: [{
46
- type: Component,
47
- args: [{ selector: 'filter-item-text', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <span matPrefix *ngIf=\"item.prefix\" [innerHtml]=\"item.prefix\"></span>\n <input matInput [formControl]=\"textControl\" [fsFilterFocusTrigger]=\"item\">\n <span matSuffix *ngIf=\"item.suffix\" [innerHtml]=\"item.suffix\"></span>\n</mat-form-field>\n", styles: [""] }]
48
- }], ctorParameters: function () { return [{ type: i0.KeyValueDiffers }, { type: i0.ChangeDetectorRef }]; } });
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, KeyValueDiffers, } from '@angular/core';
2
+ import { FormControl } from '@angular/forms';
3
+ import { Subject } from 'rxjs';
4
+ import { distinctUntilChanged, takeUntil, debounceTime } from 'rxjs/operators';
5
+ import { BaseItemComponent } from '../base-item/base-item.component';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/material/form-field";
8
+ import * as i2 from "@angular/common";
9
+ import * as i3 from "@angular/material/input";
10
+ import * as i4 from "@angular/forms";
11
+ import * as i5 from "../../../directives/focus-to-item/focus-to-item.directive";
12
+ export class TextComponent extends BaseItemComponent {
13
+ constructor(_kvDiffers, _cd) {
14
+ super(_kvDiffers, _cd);
15
+ this._kvDiffers = _kvDiffers;
16
+ this._cd = _cd;
17
+ this.textControl = new FormControl();
18
+ this.destroy$ = new Subject();
19
+ }
20
+ ngOnInit() {
21
+ this._listenControlValueChanges();
22
+ this._listenModelChanges();
23
+ }
24
+ ngOnDestroy() {
25
+ this.destroy$.next();
26
+ this.destroy$.complete();
27
+ }
28
+ _listenControlValueChanges() {
29
+ this.textControl.valueChanges
30
+ .pipe(distinctUntilChanged(), debounceTime(200), takeUntil(this.destroy$))
31
+ .subscribe((value) => {
32
+ this.item.model = value;
33
+ });
34
+ }
35
+ _listenModelChanges() {
36
+ this._item.value$
37
+ .pipe(takeUntil(this.destroy$))
38
+ .subscribe(() => {
39
+ this.textControl.setValue(this.item.model, { emitEvent: false });
40
+ });
41
+ }
42
+ }
43
+ TextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: TextComponent, deps: [{ token: i0.KeyValueDiffers }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
44
+ TextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: TextComponent, selector: "filter-item-text", usesInheritance: true, ngImport: i0, template: "<mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <span matPrefix *ngIf=\"item.prefix\" [innerHtml]=\"item.prefix\"></span>\n <input matInput [formControl]=\"textControl\" [fsFilterFocusTrigger]=\"item\">\n <span matSuffix *ngIf=\"item.suffix\" [innerHtml]=\"item.suffix\"></span>\n</mat-form-field>\n", styles: [""], components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], 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: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], 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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i5.FocusToItemDirective, selector: "[fsFilterFocusTrigger]", inputs: ["fsFilterFocusTrigger", "focusTargetType"] }, { type: i1.MatSuffix, selector: "[matSuffix]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: TextComponent, decorators: [{
46
+ type: Component,
47
+ args: [{ selector: 'filter-item-text', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <span matPrefix *ngIf=\"item.prefix\" [innerHtml]=\"item.prefix\"></span>\n <input matInput [formControl]=\"textControl\" [fsFilterFocusTrigger]=\"item\">\n <span matSuffix *ngIf=\"item.suffix\" [innerHtml]=\"item.suffix\"></span>\n</mat-form-field>\n", styles: [""] }]
48
+ }], ctorParameters: function () { return [{ type: i0.KeyValueDiffers }, { type: i0.ChangeDetectorRef }]; } });
49
49
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL3RleHQvdGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL3RleHQvdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxHQUdoQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7O0FBVXJFLE1BQU0sT0FBTyxhQUFjLFNBQVEsaUJBQTJCO0lBSzVELFlBQ1ksVUFBMkIsRUFDM0IsR0FBc0I7UUFFaEMsS0FBSyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUhiLGVBQVUsR0FBVixVQUFVLENBQWlCO1FBQzNCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBTDNCLGdCQUFXLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNoQyxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQU9oQyxDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU8sMEJBQTBCO1FBQ2hDLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWTthQUMxQixJQUFJLENBQ0gsb0JBQW9CLEVBQUUsRUFDdEIsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUNqQixTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUN6QjthQUNBLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNO2FBQ2QsSUFBSSxDQUNILFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQ3pCO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDbkUsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDOzswR0ExQ1UsYUFBYTs4RkFBYixhQUFhLCtFQ3ZCMUIsNFRBTUE7MkZEaUJhLGFBQWE7a0JBTnpCLFNBQVM7K0JBQ0Usa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgS2V5VmFsdWVEaWZmZXJzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIHRha2VVbnRpbCwgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBCYXNlSXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UtaXRlbS9iYXNlLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRJdGVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2l0ZW1zL3RleHQtaXRlbSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmlsdGVyLWl0ZW0tdGV4dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGV4dC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVGV4dENvbXBvbmVudCBleHRlbmRzIEJhc2VJdGVtQ29tcG9uZW50PFRleHRJdGVtPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwdWJsaWMgdGV4dENvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woKTtcbiAgcHVibGljIGRlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgX2t2RGlmZmVyczogS2V5VmFsdWVEaWZmZXJzLFxuICAgIHByb3RlY3RlZCBfY2Q6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHN1cGVyKF9rdkRpZmZlcnMsIF9jZCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fbGlzdGVuQ29udHJvbFZhbHVlQ2hhbmdlcygpO1xuICAgIHRoaXMuX2xpc3Rlbk1vZGVsQ2hhbmdlcygpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2xpc3RlbkNvbnRyb2xWYWx1ZUNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy50ZXh0Q29udHJvbC52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICBkZWJvdW5jZVRpbWUoMjAwKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgdGhpcy5pdGVtLm1vZGVsID0gdmFsdWU7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2xpc3Rlbk1vZGVsQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLl9pdGVtLnZhbHVlJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnRleHRDb250cm9sLnNldFZhbHVlKHRoaXMuaXRlbS5tb2RlbCwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgICAgfSlcbiAgfVxuXG59XG4iLCI8bWF0LWZvcm0tZmllbGQ+XG4gIDxtYXQtbGFiZWw+e3tpdGVtLmxhYmVsfX08L21hdC1sYWJlbD5cbiAgPHNwYW4gbWF0UHJlZml4ICpuZ0lmPVwiaXRlbS5wcmVmaXhcIiBbaW5uZXJIdG1sXT1cIml0ZW0ucHJlZml4XCI+PC9zcGFuPlxuICA8aW5wdXQgbWF0SW5wdXQgW2Zvcm1Db250cm9sXT1cInRleHRDb250cm9sXCIgW2ZzRmlsdGVyRm9jdXNUcmlnZ2VyXT1cIml0ZW1cIj5cbiAgPHNwYW4gbWF0U3VmZml4ICpuZ0lmPVwiaXRlbS5zdWZmaXhcIiBbaW5uZXJIdG1sXT1cIml0ZW0uc3VmZml4XCI+PC9zcGFuPlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
@@ -1,25 +1,25 @@
1
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, KeyValueDiffers } from '@angular/core';
2
- import { BaseItemComponent } from '../base-item/base-item.component';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/material/form-field";
5
- import * as i2 from "@firestitch/datepicker";
6
- import * as i3 from "@angular/material/input";
7
- import * as i4 from "@angular/forms";
8
- import * as i5 from "../../../directives/focus-to-item/focus-to-item.directive";
9
- import * as i6 from "@firestitch/form";
10
- import * as i7 from "@angular/common";
11
- export class WeekComponent extends BaseItemComponent {
12
- constructor(_kvDiffers, _cd) {
13
- super(_kvDiffers, _cd);
14
- this._kvDiffers = _kvDiffers;
15
- this._cd = _cd;
16
- }
17
- ngOnInit() { }
18
- }
19
- WeekComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: WeekComponent, deps: [{ token: i0.KeyValueDiffers }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
20
- WeekComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: WeekComponent, selector: "filter-item-week", usesInheritance: true, ngImport: i0, template: "<mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <input matInput\n fsDateWeekPicker\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n [seedDate]=\"item.seedDate\"\n [clear]=\"item.showClear\"\n [name]=\"item.name\">\n <mat-placeholder *ngIf=\"inline\">{{ item.label }}</mat-placeholder>\n</mat-form-field>\n", components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i2.FsDateWeekPickerComponent, selector: "[fsDateWeekPicker]", inputs: ["minYear", "maxYear", "minDate", "maxDate", "seedDate", "period", "view", "weekStartsOn"], outputs: ["change"] }], directives: [{ type: i1.MatLabel, selector: "mat-label" }, { type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { 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.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: i6.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatPlaceholder, selector: "mat-placeholder" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: WeekComponent, decorators: [{
22
- type: Component,
23
- args: [{ selector: 'filter-item-week', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <input matInput\n fsDateWeekPicker\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n [seedDate]=\"item.seedDate\"\n [clear]=\"item.showClear\"\n [name]=\"item.name\">\n <mat-placeholder *ngIf=\"inline\">{{ item.label }}</mat-placeholder>\n</mat-form-field>\n" }]
24
- }], ctorParameters: function () { return [{ type: i0.KeyValueDiffers }, { type: i0.ChangeDetectorRef }]; } });
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, KeyValueDiffers } from '@angular/core';
2
+ import { BaseItemComponent } from '../base-item/base-item.component';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/material/form-field";
5
+ import * as i2 from "@firestitch/datepicker";
6
+ import * as i3 from "@angular/material/input";
7
+ import * as i4 from "@angular/forms";
8
+ import * as i5 from "../../../directives/focus-to-item/focus-to-item.directive";
9
+ import * as i6 from "@firestitch/form";
10
+ import * as i7 from "@angular/common";
11
+ export class WeekComponent extends BaseItemComponent {
12
+ constructor(_kvDiffers, _cd) {
13
+ super(_kvDiffers, _cd);
14
+ this._kvDiffers = _kvDiffers;
15
+ this._cd = _cd;
16
+ }
17
+ ngOnInit() { }
18
+ }
19
+ WeekComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: WeekComponent, deps: [{ token: i0.KeyValueDiffers }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
20
+ WeekComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: WeekComponent, selector: "filter-item-week", usesInheritance: true, ngImport: i0, template: "<mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <input matInput\n fsDateWeekPicker\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n [seedDate]=\"item.seedDate\"\n [clear]=\"item.showClear\"\n [name]=\"item.name\">\n <mat-placeholder *ngIf=\"inline\">{{ item.label }}</mat-placeholder>\n</mat-form-field>\n", components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i2.FsDateWeekPickerComponent, selector: "[fsDateWeekPicker]", inputs: ["minYear", "maxYear", "minDate", "maxDate", "seedDate", "period", "view", "weekStartsOn"], outputs: ["change"] }], directives: [{ type: i1.MatLabel, selector: "mat-label" }, { type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { 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.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: i6.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatPlaceholder, selector: "mat-placeholder" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: WeekComponent, decorators: [{
22
+ type: Component,
23
+ args: [{ selector: 'filter-item-week', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field>\n <mat-label>{{item.label}}</mat-label>\n <input matInput\n fsDateWeekPicker\n [fsFilterFocusTrigger]=\"item\"\n [(ngModel)]=\"item.model\"\n [seedDate]=\"item.seedDate\"\n [clear]=\"item.showClear\"\n [name]=\"item.name\">\n <mat-placeholder *ngIf=\"inline\">{{ item.label }}</mat-placeholder>\n</mat-form-field>\n" }]
24
+ }], ctorParameters: function () { return [{ type: i0.KeyValueDiffers }, { type: i0.ChangeDetectorRef }]; } });
25
25
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vlay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL3dlZWsvd2Vlay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudHMvZmlsdGVycy1pdGVtL3dlZWsvd2Vlay5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUVoQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7Ozs7O0FBU3JFLE1BQU0sT0FBTyxhQUFjLFNBQVEsaUJBQTJCO0lBRTVELFlBQ1ksVUFBMkIsRUFDM0IsR0FBc0I7UUFFaEMsS0FBSyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUhiLGVBQVUsR0FBVixVQUFVLENBQWlCO1FBQzNCLFFBQUcsR0FBSCxHQUFHLENBQW1CO0lBR2xDLENBQUM7SUFFTSxRQUFRLEtBQUksQ0FBQzs7MEdBVFQsYUFBYTs4RkFBYixhQUFhLCtFQ2hCMUIsaVlBV0E7MkZES2EsYUFBYTtrQkFMekIsU0FBUzsrQkFDRSxrQkFBa0IsbUJBRVgsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBLZXlWYWx1ZURpZmZlcnMsXG4gIE9uSW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS1pdGVtL2Jhc2UtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgV2Vla0l0ZW0gfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvaXRlbXMvd2Vlay1pdGVtJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmaWx0ZXItaXRlbS13ZWVrJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3dlZWsuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgV2Vla0NvbXBvbmVudCBleHRlbmRzIEJhc2VJdGVtQ29tcG9uZW50PFdlZWtJdGVtPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIF9rdkRpZmZlcnM6IEtleVZhbHVlRGlmZmVycyxcbiAgICBwcm90ZWN0ZWQgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICBzdXBlcihfa3ZEaWZmZXJzLCBfY2QpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge31cbn1cbiIsIjxtYXQtZm9ybS1maWVsZD5cbiAgPG1hdC1sYWJlbD57e2l0ZW0ubGFiZWx9fTwvbWF0LWxhYmVsPlxuICA8aW5wdXQgbWF0SW5wdXRcbiAgICAgICAgIGZzRGF0ZVdlZWtQaWNrZXJcbiAgICAgICAgIFtmc0ZpbHRlckZvY3VzVHJpZ2dlcl09XCJpdGVtXCJcbiAgICAgICAgIFsobmdNb2RlbCldPVwiaXRlbS5tb2RlbFwiXG4gICAgICAgICBbc2VlZERhdGVdPVwiaXRlbS5zZWVkRGF0ZVwiXG4gICAgICAgICBbY2xlYXJdPVwiaXRlbS5zaG93Q2xlYXJcIlxuICAgICAgICAgW25hbWVdPVwiaXRlbS5uYW1lXCI+XG4gIDxtYXQtcGxhY2Vob2xkZXIgKm5nSWY9XCJpbmxpbmVcIj57eyBpdGVtLmxhYmVsIH19PC9tYXQtcGxhY2Vob2xkZXI+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19
@@ -1,55 +1,55 @@
1
- import { ChangeDetectionStrategy, Component, Inject, } from '@angular/core';
2
- import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
3
- import { Subject } from 'rxjs';
4
- import { takeUntil, tap } from 'rxjs/operators';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/material/dialog";
7
- import * as i2 from "@angular/material/form-field";
8
- import * as i3 from "@angular/material/select";
9
- import * as i4 from "@angular/material/core";
10
- import * as i5 from "@angular/material/button";
11
- import * as i6 from "@angular/forms";
12
- import * as i7 from "@firestitch/form";
13
- import * as i8 from "@angular/common";
14
- import * as i9 from "@angular/material/input";
15
- export class FsFilterSavedFilterEditComponent {
16
- constructor(data, _dialogRef) {
17
- this.data = data;
18
- this._dialogRef = _dialogRef;
19
- this.saveAsFilter = 'new';
20
- this.savedFilterName = '';
21
- this._destroy$ = new Subject();
22
- this.save = () => {
23
- let savedFilter;
24
- if (this.saveAsFilter === 'new') {
25
- savedFilter = {
26
- name: this.savedFilterName,
27
- active: true,
28
- filters: this.data.params,
29
- };
30
- }
31
- else {
32
- savedFilter = {
33
- ...this.saveAsFilter,
34
- filters: this.data.params,
35
- };
36
- }
37
- return this._saveCallback(savedFilter)
38
- .pipe(tap((filter) => {
39
- this._dialogRef.close(filter);
40
- }), takeUntil(this._destroy$));
41
- };
42
- this.savedFilters = this.data.savedFilters;
43
- this._saveCallback = this.data.saveCallback;
44
- }
45
- }
46
- FsFilterSavedFilterEditComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFilterSavedFilterEditComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
47
- FsFilterSavedFilterEditComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: FsFilterSavedFilterEditComponent, selector: "ng-component", ngImport: i0, template: "<form fsForm [submit]=\"save\">\n <h1 mat-dialog-title>\n Save filter\n </h1>\n <div mat-dialog-content>\n <mat-form-field>\n <mat-label>Save as</mat-label>\n <mat-select [(ngModel)]=\"saveAsFilter\" name=\"saveAs\">\n <mat-option value=\"new\">New filter</mat-option>\n <mat-optgroup label=\"Saved filters:\">\n <ng-container *ngFor=\"let filter of savedFilters\">\n <mat-option [value]=\"filter\">{{ filter.name }}</mat-option>\n </ng-container>\n </mat-optgroup>\n </mat-select>\n </mat-form-field>\n <br>\n <mat-form-field *ngIf=\"saveAsFilter === 'new'\">\n <mat-label>Name</mat-label>\n <input matInput name=\"filter-name\" [(ngModel)]=\"savedFilterName\" required>\n </mat-form-field>\n </div>\n <div mat-dialog-actions>\n <button mat-button\n type=\"submit\"\n color=\"primary\">\n {{ saveAsFilter === 'new' ? 'Create' : 'Save' }}\n </button>\n\n <button mat-button\n type=\"button\"\n [mat-dialog-close]=\"null\">\n Cancel\n </button>\n </div>\n</form>\n", components: [{ type: i2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i4.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i4.MatOptgroup, selector: "mat-optgroup", inputs: ["disabled"], exportAs: ["matOptgroup"] }, { type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup", "deactivationGuard"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"], exportAs: ["fsForm"] }, { type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i2.MatLabel, selector: "mat-label" }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i7.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i6.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: i6.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i7.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i7.FsButtonDirective, selector: "[mat-raised-button],[mat-button],[mat-flat-button],[mat-stroked-button]", inputs: ["name", "dirtySubmit", "form"] }, { type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
48
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFilterSavedFilterEditComponent, decorators: [{
49
- type: Component,
50
- args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<form fsForm [submit]=\"save\">\n <h1 mat-dialog-title>\n Save filter\n </h1>\n <div mat-dialog-content>\n <mat-form-field>\n <mat-label>Save as</mat-label>\n <mat-select [(ngModel)]=\"saveAsFilter\" name=\"saveAs\">\n <mat-option value=\"new\">New filter</mat-option>\n <mat-optgroup label=\"Saved filters:\">\n <ng-container *ngFor=\"let filter of savedFilters\">\n <mat-option [value]=\"filter\">{{ filter.name }}</mat-option>\n </ng-container>\n </mat-optgroup>\n </mat-select>\n </mat-form-field>\n <br>\n <mat-form-field *ngIf=\"saveAsFilter === 'new'\">\n <mat-label>Name</mat-label>\n <input matInput name=\"filter-name\" [(ngModel)]=\"savedFilterName\" required>\n </mat-form-field>\n </div>\n <div mat-dialog-actions>\n <button mat-button\n type=\"submit\"\n color=\"primary\">\n {{ saveAsFilter === 'new' ? 'Create' : 'Save' }}\n </button>\n\n <button mat-button\n type=\"button\"\n [mat-dialog-close]=\"null\">\n Cancel\n </button>\n </div>\n</form>\n" }]
51
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
52
- type: Inject,
53
- args: [MAT_DIALOG_DATA]
54
- }] }, { type: i1.MatDialogRef }]; } });
1
+ import { ChangeDetectionStrategy, Component, Inject, } from '@angular/core';
2
+ import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
3
+ import { Subject } from 'rxjs';
4
+ import { takeUntil, tap } from 'rxjs/operators';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/material/dialog";
7
+ import * as i2 from "@angular/material/form-field";
8
+ import * as i3 from "@angular/material/select";
9
+ import * as i4 from "@angular/material/core";
10
+ import * as i5 from "@angular/material/button";
11
+ import * as i6 from "@angular/forms";
12
+ import * as i7 from "@firestitch/form";
13
+ import * as i8 from "@angular/common";
14
+ import * as i9 from "@angular/material/input";
15
+ export class FsFilterSavedFilterEditComponent {
16
+ constructor(data, _dialogRef) {
17
+ this.data = data;
18
+ this._dialogRef = _dialogRef;
19
+ this.saveAsFilter = 'new';
20
+ this.savedFilterName = '';
21
+ this._destroy$ = new Subject();
22
+ this.save = () => {
23
+ let savedFilter;
24
+ if (this.saveAsFilter === 'new') {
25
+ savedFilter = {
26
+ name: this.savedFilterName,
27
+ active: true,
28
+ filters: this.data.params,
29
+ };
30
+ }
31
+ else {
32
+ savedFilter = {
33
+ ...this.saveAsFilter,
34
+ filters: this.data.params,
35
+ };
36
+ }
37
+ return this._saveCallback(savedFilter)
38
+ .pipe(tap((filter) => {
39
+ this._dialogRef.close(filter);
40
+ }), takeUntil(this._destroy$));
41
+ };
42
+ this.savedFilters = this.data.savedFilters;
43
+ this._saveCallback = this.data.saveCallback;
44
+ }
45
+ }
46
+ FsFilterSavedFilterEditComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFilterSavedFilterEditComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
47
+ FsFilterSavedFilterEditComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: FsFilterSavedFilterEditComponent, selector: "ng-component", ngImport: i0, template: "<form fsForm [submit]=\"save\">\n <h1 mat-dialog-title>\n Save filter\n </h1>\n <div mat-dialog-content>\n <mat-form-field>\n <mat-label>Save as</mat-label>\n <mat-select [(ngModel)]=\"saveAsFilter\" name=\"saveAs\">\n <mat-option value=\"new\">New filter</mat-option>\n <mat-optgroup label=\"Saved filters:\">\n <ng-container *ngFor=\"let filter of savedFilters\">\n <mat-option [value]=\"filter\">{{ filter.name }}</mat-option>\n </ng-container>\n </mat-optgroup>\n </mat-select>\n </mat-form-field>\n <br>\n <mat-form-field *ngIf=\"saveAsFilter === 'new'\">\n <mat-label>Name</mat-label>\n <input matInput name=\"filter-name\" [(ngModel)]=\"savedFilterName\" required>\n </mat-form-field>\n </div>\n <div mat-dialog-actions>\n <button mat-button\n type=\"submit\"\n color=\"primary\">\n {{ saveAsFilter === 'new' ? 'Create' : 'Save' }}\n </button>\n\n <button mat-button\n type=\"button\"\n [mat-dialog-close]=\"null\">\n Cancel\n </button>\n </div>\n</form>\n", components: [{ type: i2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i4.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: i4.MatOptgroup, selector: "mat-optgroup", inputs: ["disabled"], exportAs: ["matOptgroup"] }, { type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.FsFormDirective, selector: "[fsForm]", inputs: ["wrapperSelector", "messageSelector", "hintSelector", "labelSelector", "autocomplete", "shortcuts", "confirm", "confirmDialog", "confirmDrawer", "confirmBrowser", "confirmTabs", "dirtySubmitButton", "submit", "successDelay", "errorDelay", "tabGroup", "deactivationGuard"], outputs: ["fsForm", "invalid", "valid", "submitted", "reseted", "cleared"], exportAs: ["fsForm"] }, { type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i2.MatLabel, selector: "mat-label" }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i7.FsFormNoFsValidatorsDirective, selector: "[ngModel]:not([required]):not([fsFormRequired]):not([fsFormCompare]):not([fsFormDateRange]):not([fsFormEmail]):not([fsFormEmails]):not([fsFormFunction]):not([fsFormGreater]):not([fsFormInteger]):not([fsFormLesser]):not([fsFormMax]):not([fsFormMaxLength]):not([fsFormMin]):not([fsFormMinLength]):not([fsFormNumeric]):not([fsFormPattern]):not([fsFormPhone]):not([fsFormUrl]):not([validate])" }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i6.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: i6.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i7.FsFormRequiredDirective, selector: "[fsFormRequired],[ngModel][required]", inputs: ["fsFormRequired", "required", "fsFormRequiredMessage"] }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i7.FsButtonDirective, selector: "[mat-raised-button],[mat-button],[mat-flat-button],[mat-stroked-button]", inputs: ["name", "dirtySubmit", "form"] }, { type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FsFilterSavedFilterEditComponent, decorators: [{
49
+ type: Component,
50
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, template: "<form fsForm [submit]=\"save\">\n <h1 mat-dialog-title>\n Save filter\n </h1>\n <div mat-dialog-content>\n <mat-form-field>\n <mat-label>Save as</mat-label>\n <mat-select [(ngModel)]=\"saveAsFilter\" name=\"saveAs\">\n <mat-option value=\"new\">New filter</mat-option>\n <mat-optgroup label=\"Saved filters:\">\n <ng-container *ngFor=\"let filter of savedFilters\">\n <mat-option [value]=\"filter\">{{ filter.name }}</mat-option>\n </ng-container>\n </mat-optgroup>\n </mat-select>\n </mat-form-field>\n <br>\n <mat-form-field *ngIf=\"saveAsFilter === 'new'\">\n <mat-label>Name</mat-label>\n <input matInput name=\"filter-name\" [(ngModel)]=\"savedFilterName\" required>\n </mat-form-field>\n </div>\n <div mat-dialog-actions>\n <button mat-button\n type=\"submit\"\n color=\"primary\">\n {{ saveAsFilter === 'new' ? 'Create' : 'Save' }}\n </button>\n\n <button mat-button\n type=\"button\"\n [mat-dialog-close]=\"null\">\n Cancel\n </button>\n </div>\n</form>\n" }]
51
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
52
+ type: Inject,
53
+ args: [MAT_DIALOG_DATA]
54
+ }] }, { type: i1.MatDialogRef }]; } });
55
55
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZWQtZmlsdGVyLWVkaXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb21wb25lbnRzL3NhdmVkLWZpbHRlci1lZGl0L3NhdmVkLWZpbHRlci1lZGl0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9zYXZlZC1maWx0ZXItZWRpdC9zYXZlZC1maWx0ZXItZWRpdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV6RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7O0FBYWhELE1BQU0sT0FBTyxnQ0FBZ0M7SUFZM0MsWUFDa0MsSUFBSSxFQUM1QixVQUEwRDtRQURsQyxTQUFJLEdBQUosSUFBSSxDQUFBO1FBQzVCLGVBQVUsR0FBVixVQUFVLENBQWdEO1FBWDdELGlCQUFZLEdBQStCLEtBQUssQ0FBQztRQUdqRCxvQkFBZSxHQUFHLEVBQUUsQ0FBQztRQUlwQixjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQVVqQyxTQUFJLEdBQUcsR0FBRyxFQUFFO1lBQ2pCLElBQUksV0FBK0IsQ0FBQztZQUVwQyxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssS0FBSyxFQUFFO2dCQUMvQixXQUFXLEdBQUc7b0JBQ1osSUFBSSxFQUFFLElBQUksQ0FBQyxlQUFlO29CQUMxQixNQUFNLEVBQUUsSUFBSTtvQkFDWixPQUFPLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNO2lCQUMxQixDQUFDO2FBQ0g7aUJBQU07Z0JBQ0wsV0FBVyxHQUFHO29CQUNaLEdBQUcsSUFBSSxDQUFDLFlBQVk7b0JBQ3BCLE9BQU8sRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07aUJBQzFCLENBQUE7YUFDRjtZQUVELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUM7aUJBQ25DLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtnQkFDYixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNoQyxDQUFDLENBQUMsRUFDRixTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUMxQixDQUFDO1FBQ04sQ0FBQyxDQUFBO1FBM0JDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDM0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM5QyxDQUFDOzs2SEFsQlUsZ0NBQWdDLGtCQWFqQyxlQUFlO2lIQWJkLGdDQUFnQyxvRENyQjdDLDBtQ0FvQ0E7MkZEZmEsZ0NBQWdDO2tCQUo1QyxTQUFTO3NDQUVTLHVCQUF1QixDQUFDLE1BQU07OzBCQWU1QyxNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgRmlsdGVyUmVtb3RlU2F2ZSxcbiAgSUZpbHRlclNhdmVkRmlsdGVyXG59IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvc2F2ZWQtZmlsdGVycy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSUZpbHRlckV4dGVybmFsUGFyYW1zIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9leHRlcm5hbC1wYXJhbXMuaW50ZXJmYWNlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL3NhdmVkLWZpbHRlci1lZGl0LmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZzRmlsdGVyU2F2ZWRGaWx0ZXJFZGl0Q29tcG9uZW50IHtcblxuICBwdWJsaWMgZmlsdGVyUGFyYW1zOiBJRmlsdGVyRXh0ZXJuYWxQYXJhbXM7XG4gIHB1YmxpYyBzYXZlQXNGaWx0ZXI6IElGaWx0ZXJTYXZlZEZpbHRlciB8ICduZXcnID0gJ25ldyc7XG4gIHB1YmxpYyBzYXZlZEZpbHRlcnM6IElGaWx0ZXJTYXZlZEZpbHRlcltdO1xuXG4gIHB1YmxpYyBzYXZlZEZpbHRlck5hbWUgPSAnJztcblxuICBwcml2YXRlIF9zYXZlQ2FsbGJhY2s6IEZpbHRlclJlbW90ZVNhdmU7XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YSxcbiAgICBwcml2YXRlIF9kaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxGc0ZpbHRlclNhdmVkRmlsdGVyRWRpdENvbXBvbmVudD4sXG4gICkge1xuICAgIHRoaXMuc2F2ZWRGaWx0ZXJzID0gdGhpcy5kYXRhLnNhdmVkRmlsdGVycztcbiAgICB0aGlzLl9zYXZlQ2FsbGJhY2sgPSB0aGlzLmRhdGEuc2F2ZUNhbGxiYWNrO1xuICB9XG5cbiAgcHVibGljIHNhdmUgPSAoKSA9PiB7XG4gICAgbGV0IHNhdmVkRmlsdGVyOiBJRmlsdGVyU2F2ZWRGaWx0ZXI7XG5cbiAgICBpZiAodGhpcy5zYXZlQXNGaWx0ZXIgPT09ICduZXcnKSB7XG4gICAgICBzYXZlZEZpbHRlciA9IHtcbiAgICAgICAgbmFtZTogdGhpcy5zYXZlZEZpbHRlck5hbWUsXG4gICAgICAgIGFjdGl2ZTogdHJ1ZSxcbiAgICAgICAgZmlsdGVyczogdGhpcy5kYXRhLnBhcmFtcyxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHNhdmVkRmlsdGVyID0ge1xuICAgICAgICAuLi50aGlzLnNhdmVBc0ZpbHRlcixcbiAgICAgICAgZmlsdGVyczogdGhpcy5kYXRhLnBhcmFtcyxcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fc2F2ZUNhbGxiYWNrKHNhdmVkRmlsdGVyKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoZmlsdGVyKSA9PiB7XG4gICAgICAgICAgdGhpcy5fZGlhbG9nUmVmLmNsb3NlKGZpbHRlcik7XG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgKTtcbiAgfVxuXG59XG4iLCI8Zm9ybSBmc0Zvcm0gW3N1Ym1pdF09XCJzYXZlXCI+XG4gIDxoMSBtYXQtZGlhbG9nLXRpdGxlPlxuICAgIFNhdmUgZmlsdGVyXG4gIDwvaDE+XG4gIDxkaXYgbWF0LWRpYWxvZy1jb250ZW50PlxuICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgIDxtYXQtbGFiZWw+U2F2ZSBhczwvbWF0LWxhYmVsPlxuICAgICAgPG1hdC1zZWxlY3QgWyhuZ01vZGVsKV09XCJzYXZlQXNGaWx0ZXJcIiBuYW1lPVwic2F2ZUFzXCI+XG4gICAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwibmV3XCI+TmV3IGZpbHRlcjwvbWF0LW9wdGlvbj5cbiAgICAgICAgPG1hdC1vcHRncm91cCBsYWJlbD1cIlNhdmVkIGZpbHRlcnM6XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZmlsdGVyIG9mIHNhdmVkRmlsdGVyc1wiPlxuICAgICAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cImZpbHRlclwiPnt7IGZpbHRlci5uYW1lIH19PC9tYXQtb3B0aW9uPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L21hdC1vcHRncm91cD5cbiAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgIDxicj5cbiAgICA8bWF0LWZvcm0tZmllbGQgKm5nSWY9XCJzYXZlQXNGaWx0ZXIgPT09ICduZXcnXCI+XG4gICAgICA8bWF0LWxhYmVsPk5hbWU8L21hdC1sYWJlbD5cbiAgICAgIDxpbnB1dCBtYXRJbnB1dCBuYW1lPVwiZmlsdGVyLW5hbWVcIiBbKG5nTW9kZWwpXT1cInNhdmVkRmlsdGVyTmFtZVwiIHJlcXVpcmVkPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gIDwvZGl2PlxuICA8ZGl2IG1hdC1kaWFsb2ctYWN0aW9ucz5cbiAgICA8YnV0dG9uIG1hdC1idXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCI+XG4gICAgICB7eyBzYXZlQXNGaWx0ZXIgPT09ICduZXcnID8gJ0NyZWF0ZScgOiAnU2F2ZScgfX1cbiAgICA8L2J1dHRvbj5cblxuICAgIDxidXR0b24gbWF0LWJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBbbWF0LWRpYWxvZy1jbG9zZV09XCJudWxsXCI+XG4gICAgICBDYW5jZWxcbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Zvcm0+XG4iXX0=