@firestitch/filter 18.0.46 → 18.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/app/components/action-button/action-button.component.d.ts +1 -1
  2. package/app/components/action-kebab-actions/action-kebab-actions.component.d.ts +1 -1
  3. package/app/components/actions/actions.component.d.ts +1 -1
  4. package/app/components/filter/filter.component.d.ts +17 -25
  5. package/app/components/filter-chip/filter-chip.component.d.ts +7 -7
  6. package/app/components/filter-chip-content/filter-chip-content.component.d.ts +1 -1
  7. package/app/components/filter-chips/filter-chips.component.d.ts +1 -1
  8. package/app/components/filter-drawer/filter-drawer.component.d.ts +18 -12
  9. package/app/components/filter-drawer-actions/filter-drawer-actions.component.d.ts +5 -1
  10. package/app/components/filters-item/autocomplete/autocomplete.component.d.ts +1 -1
  11. package/app/components/filters-item/autocompletechips/autocompletechips.component.d.ts +1 -1
  12. package/app/components/filters-item/base-item/base-item.component.d.ts +1 -1
  13. package/app/components/filters-item/checkbox/checkbox.component.d.ts +1 -1
  14. package/app/components/filters-item/chips/chips.component.d.ts +2 -3
  15. package/app/components/filters-item/date/date.component.d.ts +1 -1
  16. package/app/components/filters-item/date-range/date-range.component.d.ts +1 -1
  17. package/app/components/filters-item/filter-item.component.d.ts +1 -1
  18. package/app/components/filters-item/range/range.component.d.ts +1 -1
  19. package/app/components/filters-item/select/backdrop/backdrop.component.d.ts +1 -1
  20. package/app/components/filters-item/select/groups/groups.component.d.ts +1 -1
  21. package/app/components/filters-item/select/multiple/multiple.component.d.ts +1 -1
  22. package/app/components/filters-item/select/select.component.d.ts +1 -1
  23. package/app/components/filters-item/select/simple/simple.component.d.ts +1 -1
  24. package/app/components/filters-item/text/text.component.d.ts +1 -1
  25. package/app/components/filters-item/week/week.component.d.ts +1 -1
  26. package/app/components/saved-filter/index.d.ts +1 -2
  27. package/app/components/saved-filter/saved-filter-autocomplete-chips/index.d.ts +1 -0
  28. package/app/components/saved-filter/saved-filter-autocomplete-chips/saved-filter-autocomplete-chips.component.d.ts +32 -0
  29. package/app/components/saved-filter/saved-filter-manage/components/saved-filter-chips/index.d.ts +1 -0
  30. package/app/components/saved-filter/saved-filter-manage/components/saved-filter-chips/saved-filter-chips.component.d.ts +13 -0
  31. package/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.d.ts +17 -10
  32. package/app/consts/filter-icon.d.ts +1 -0
  33. package/app/consts/index.d.ts +2 -0
  34. package/app/directives/focus-to-item/focus-to-item.directive.d.ts +1 -1
  35. package/app/directives/status-bar/status-bar.directive.d.ts +1 -1
  36. package/app/fs-filter.module.d.ts +30 -62
  37. package/app/helpers/build-query-params.d.ts +2 -1
  38. package/app/helpers/create-filter-item.d.ts +1 -1
  39. package/app/injectors/filter-drawer-overlay.d.ts +2 -1
  40. package/app/interfaces/external-params.interface.d.ts +2 -2
  41. package/app/interfaces/saved-filters.interface.d.ts +11 -6
  42. package/app/models/items/autocomplete/index.d.ts +1 -0
  43. package/app/models/items/autocomplete-chips-item.d.ts +1 -1
  44. package/app/models/items/base-item.d.ts +1 -1
  45. package/app/models/items/chips-item.d.ts +1 -1
  46. package/app/models/items/date/base-date-item.d.ts +1 -1
  47. package/app/models/items/date/index.d.ts +1 -0
  48. package/app/models/items/date-range/base-date-range-item.d.ts +1 -1
  49. package/app/models/items/date-range/index.d.ts +1 -0
  50. package/app/models/items/index.d.ts +17 -0
  51. package/app/models/items/select/index.d.ts +3 -0
  52. package/app/models/items/select/multiple-select-item.d.ts +3 -3
  53. package/app/models/items/select/simple-select-item.d.ts +2 -2
  54. package/app/models/items/week-item.d.ts +1 -1
  55. package/app/pipes/remove-isolate-value.pipe.d.ts +1 -1
  56. package/app/services/filter-overlay.service.d.ts +7 -11
  57. package/app/services/index.d.ts +7 -0
  58. package/app/services/{items-store.service.d.ts → item-store.service.d.ts} +9 -7
  59. package/app/services/param-controller.service.d.ts +30 -0
  60. package/app/services/{external-params/query-persistance-controller.service.d.ts → persistance-controller.service.d.ts} +4 -4
  61. package/app/services/query-param-controller.service.d.ts +21 -0
  62. package/app/services/{external-params/saved-filters-controller.service.d.ts → saved-filter-controller.service.d.ts} +17 -15
  63. package/esm2022/app/components/action-button/action-button.component.mjs +22 -7
  64. package/esm2022/app/components/action-kebab-actions/action-kebab-actions.component.mjs +13 -7
  65. package/esm2022/app/components/actions/actions.component.mjs +35 -15
  66. package/esm2022/app/components/filter/filter.component.mjs +111 -119
  67. package/esm2022/app/components/filter-chip/filter-chip.component.mjs +30 -18
  68. package/esm2022/app/components/filter-chip-content/filter-chip-content.component.mjs +3 -3
  69. package/esm2022/app/components/filter-chips/filter-chips.component.mjs +5 -5
  70. package/esm2022/app/components/filter-drawer/filter-drawer.component.mjs +70 -36
  71. package/esm2022/app/components/filter-drawer-actions/filter-drawer-actions.component.mjs +27 -7
  72. package/esm2022/app/components/filters-item/autocomplete/autocomplete.component.mjs +14 -6
  73. package/esm2022/app/components/filters-item/autocompletechips/autocompletechips.component.mjs +14 -6
  74. package/esm2022/app/components/filters-item/base-item/base-item.component.mjs +3 -2
  75. package/esm2022/app/components/filters-item/checkbox/checkbox.component.mjs +15 -7
  76. package/esm2022/app/components/filters-item/chips/chips.component.mjs +19 -14
  77. package/esm2022/app/components/filters-item/date/date.component.mjs +19 -8
  78. package/esm2022/app/components/filters-item/date-range/date-range.component.mjs +19 -8
  79. package/esm2022/app/components/filters-item/filter-item.component.mjs +24 -14
  80. package/esm2022/app/components/filters-item/range/range.component.mjs +19 -9
  81. package/esm2022/app/components/filters-item/select/backdrop/backdrop.component.mjs +3 -3
  82. package/esm2022/app/components/filters-item/select/groups/groups.component.mjs +21 -10
  83. package/esm2022/app/components/filters-item/select/multiple/multiple.component.mjs +25 -12
  84. package/esm2022/app/components/filters-item/select/select.component.mjs +17 -9
  85. package/esm2022/app/components/filters-item/select/simple/simple.component.mjs +24 -12
  86. package/esm2022/app/components/filters-item/text/text.component.mjs +17 -9
  87. package/esm2022/app/components/filters-item/week/week.component.mjs +19 -8
  88. package/esm2022/app/components/saved-filter/index.mjs +2 -3
  89. package/esm2022/app/components/saved-filter/saved-filter-autocomplete-chips/index.mjs +2 -0
  90. package/esm2022/app/components/saved-filter/saved-filter-autocomplete-chips/saved-filter-autocomplete-chips.component.mjs +120 -0
  91. package/esm2022/app/components/saved-filter/saved-filter-manage/components/saved-filter-chips/index.mjs +2 -0
  92. package/esm2022/app/components/saved-filter/saved-filter-manage/components/saved-filter-chips/saved-filter-chips.component.mjs +28 -0
  93. package/esm2022/app/components/saved-filter/saved-filter-manage/saved-filter-manage.component.mjs +46 -31
  94. package/esm2022/app/consts/filter-icon.mjs +2 -0
  95. package/esm2022/app/consts/index.mjs +3 -0
  96. package/esm2022/app/directives/focus-to-item/focus-to-item.directive.mjs +3 -2
  97. package/esm2022/app/directives/status-bar/status-bar.directive.mjs +3 -2
  98. package/esm2022/app/fs-filter.module.mjs +31 -141
  99. package/esm2022/app/helpers/build-query-params.mjs +8 -3
  100. package/esm2022/app/helpers/compare.mjs +2 -2
  101. package/esm2022/app/injectors/filter-drawer-overlay.mjs +1 -1
  102. package/esm2022/app/interfaces/external-params.interface.mjs +1 -1
  103. package/esm2022/app/interfaces/saved-filters.interface.mjs +1 -1
  104. package/esm2022/app/models/items/autocomplete/index.mjs +2 -0
  105. package/esm2022/app/models/items/autocomplete-chips-item.mjs +4 -4
  106. package/esm2022/app/models/items/base-item.mjs +4 -4
  107. package/esm2022/app/models/items/chips-item.mjs +5 -5
  108. package/esm2022/app/models/items/date/base-date-item.mjs +9 -9
  109. package/esm2022/app/models/items/date/index.mjs +2 -0
  110. package/esm2022/app/models/items/date-range/base-date-range-item.mjs +12 -12
  111. package/esm2022/app/models/items/date-range/index.mjs +2 -0
  112. package/esm2022/app/models/items/index.mjs +18 -0
  113. package/esm2022/app/models/items/select/index.mjs +4 -0
  114. package/esm2022/app/models/items/select/multiple-select-item.mjs +17 -17
  115. package/esm2022/app/models/items/select/simple-select-item.mjs +10 -10
  116. package/esm2022/app/models/items/week-item.mjs +11 -9
  117. package/esm2022/app/pipes/remove-isolate-value.pipe.mjs +3 -2
  118. package/esm2022/app/services/filter-overlay.service.mjs +10 -21
  119. package/esm2022/app/services/index.mjs +8 -0
  120. package/esm2022/app/services/item-store.service.mjs +356 -0
  121. package/esm2022/app/services/param-controller.service.mjs +149 -0
  122. package/esm2022/app/services/persistance-controller.service.mjs +65 -0
  123. package/esm2022/app/services/query-param-controller.service.mjs +65 -0
  124. package/esm2022/app/services/saved-filter-controller.service.mjs +169 -0
  125. package/esm2022/public_api.mjs +2 -4
  126. package/fesm2022/firestitch-filter.mjs +1962 -1810
  127. package/fesm2022/firestitch-filter.mjs.map +1 -1
  128. package/package.json +1 -1
  129. package/public_api.d.ts +1 -3
  130. package/app/components/saved-filter/saved-filter-edit/index.d.ts +0 -1
  131. package/app/components/saved-filter/saved-filter-edit/saved-filter-edit.component.d.ts +0 -18
  132. package/app/components/saved-filter/saved-filters-menu/index.d.ts +0 -1
  133. package/app/components/saved-filter/saved-filters-menu/saved-filters-menu.component.d.ts +0 -24
  134. package/app/services/external-params/index.d.ts +0 -3
  135. package/app/services/external-params/query-params-controller.service.d.ts +0 -21
  136. package/app/services/external-params-controller.service.d.ts +0 -38
  137. package/esm2022/app/components/saved-filter/saved-filter-edit/index.mjs +0 -2
  138. package/esm2022/app/components/saved-filter/saved-filter-edit/saved-filter-edit.component.mjs +0 -55
  139. package/esm2022/app/components/saved-filter/saved-filters-menu/index.mjs +0 -2
  140. package/esm2022/app/components/saved-filter/saved-filters-menu/saved-filters-menu.component.mjs +0 -61
  141. package/esm2022/app/services/external-params/index.mjs +0 -4
  142. package/esm2022/app/services/external-params/query-params-controller.service.mjs +0 -65
  143. package/esm2022/app/services/external-params/query-persistance-controller.service.mjs +0 -65
  144. package/esm2022/app/services/external-params/saved-filters-controller.service.mjs +0 -165
  145. package/esm2022/app/services/external-params-controller.service.mjs +0 -183
  146. package/esm2022/app/services/items-store.service.mjs +0 -345
@@ -0,0 +1,65 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { ActivatedRoute } from '@angular/router';
3
+ import { restoreItems } from '../helpers/restore-items';
4
+ import { ItemStore } from './item-store.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/router";
7
+ import * as i2 from "./item-store.service";
8
+ export class QueryParamController {
9
+ _route;
10
+ _itemStore;
11
+ _enabled = false;
12
+ _params;
13
+ constructor(_route, _itemStore) {
14
+ this._route = _route;
15
+ this._itemStore = _itemStore;
16
+ }
17
+ get enabled() {
18
+ return this._enabled;
19
+ }
20
+ get params() {
21
+ return this._params;
22
+ }
23
+ init(enabled) {
24
+ this._enabled = enabled;
25
+ if (this.enabled) {
26
+ this.fetchFromQueryParams();
27
+ }
28
+ }
29
+ writeStateToQueryParams(params) {
30
+ if (this._enabled) {
31
+ this._replaceState(params);
32
+ }
33
+ }
34
+ /**
35
+ * Parse query and update filter values
36
+ */
37
+ fetchFromQueryParams() {
38
+ const items = [
39
+ ...this._itemStore.items,
40
+ this._itemStore.sortByItem,
41
+ this._itemStore.sortDirectionItem,
42
+ ]
43
+ .filter((item) => !!item);
44
+ this._params = restoreItems(this._route.snapshot.queryParams, items);
45
+ }
46
+ _replaceState(data) {
47
+ const url = new URL(window.location.href);
48
+ Object.keys(data)
49
+ .forEach((name) => {
50
+ if (data[name] === undefined || data[name] === null) {
51
+ url.searchParams.delete(name);
52
+ }
53
+ else {
54
+ url.searchParams.set(name, data[name]);
55
+ }
56
+ });
57
+ history.replaceState({}, null, url.pathname + url.search);
58
+ }
59
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: QueryParamController, deps: [{ token: i1.ActivatedRoute }, { token: i2.ItemStore }], target: i0.ɵɵFactoryTarget.Injectable });
60
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: QueryParamController });
61
+ }
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: QueryParamController, decorators: [{
63
+ type: Injectable
64
+ }], ctorParameters: () => [{ type: i1.ActivatedRoute }, { type: i2.ItemStore }] });
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktcGFyYW0tY29udHJvbGxlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9zZXJ2aWNlcy9xdWVyeS1wYXJhbS1jb250cm9sbGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXhELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQUlqRCxNQUFNLE9BQU8sb0JBQW9CO0lBTXJCO0lBQ0E7SUFMRixRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ2pCLE9BQU8sQ0FBc0I7SUFFckMsWUFDVSxNQUFzQixFQUN0QixVQUFxQjtRQURyQixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUN0QixlQUFVLEdBQVYsVUFBVSxDQUFXO0lBQzVCLENBQUM7SUFFSixJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVNLElBQUksQ0FBQyxPQUFnQjtRQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUV4QixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM5QixDQUFDO0lBQ0gsQ0FBQztJQUVNLHVCQUF1QixDQUFDLE1BQU07UUFDbkMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksb0JBQW9CO1FBQ3pCLE1BQU0sS0FBSyxHQUFHO1lBQ1osR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUs7WUFDeEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVO1lBQzFCLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCO1NBQ2xDO2FBQ0UsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQ3pCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFDaEMsS0FBSyxDQUNOLENBQUM7SUFDSixDQUFDO0lBRU8sYUFBYSxDQUFDLElBQUk7UUFDeEIsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUxQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQzthQUNkLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2hCLElBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQ25ELEdBQUcsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixHQUFHLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDeEMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUwsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVELENBQUM7d0dBOURVLG9CQUFvQjs0R0FBcEIsb0JBQW9COzs0RkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyByZXN0b3JlSXRlbXMgfSBmcm9tICcuLi9oZWxwZXJzL3Jlc3RvcmUtaXRlbXMnO1xuXG5pbXBvcnQgeyBJdGVtU3RvcmUgfSBmcm9tICcuL2l0ZW0tc3RvcmUuc2VydmljZSc7XG5cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFF1ZXJ5UGFyYW1Db250cm9sbGVyIHtcblxuICBwcml2YXRlIF9lbmFibGVkID0gZmFsc2U7XG4gIHByaXZhdGUgX3BhcmFtczogUmVjb3JkPHN0cmluZywgYW55PjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9yb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBfaXRlbVN0b3JlOiBJdGVtU3RvcmUsXG4gICkge31cblxuICBwdWJsaWMgZ2V0IGVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBhcmFtcygpIHtcbiAgICByZXR1cm4gdGhpcy5fcGFyYW1zO1xuICB9XG5cbiAgcHVibGljIGluaXQoZW5hYmxlZDogYm9vbGVhbikge1xuICAgIHRoaXMuX2VuYWJsZWQgPSBlbmFibGVkO1xuXG4gICAgaWYgKHRoaXMuZW5hYmxlZCkge1xuICAgICAgdGhpcy5mZXRjaEZyb21RdWVyeVBhcmFtcygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB3cml0ZVN0YXRlVG9RdWVyeVBhcmFtcyhwYXJhbXMpIHtcbiAgICBpZiAodGhpcy5fZW5hYmxlZCkgeyBcbiAgICAgIHRoaXMuX3JlcGxhY2VTdGF0ZShwYXJhbXMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBQYXJzZSBxdWVyeSBhbmQgdXBkYXRlIGZpbHRlciB2YWx1ZXNcbiAgICovXG4gIHB1YmxpYyBmZXRjaEZyb21RdWVyeVBhcmFtcygpIHtcbiAgICBjb25zdCBpdGVtcyA9IFtcbiAgICAgIC4uLnRoaXMuX2l0ZW1TdG9yZS5pdGVtcyxcbiAgICAgIHRoaXMuX2l0ZW1TdG9yZS5zb3J0QnlJdGVtLFxuICAgICAgdGhpcy5faXRlbVN0b3JlLnNvcnREaXJlY3Rpb25JdGVtLFxuICAgIF1cbiAgICAgIC5maWx0ZXIoKGl0ZW0pID0+ICEhaXRlbSk7XG5cbiAgICB0aGlzLl9wYXJhbXMgPSByZXN0b3JlSXRlbXMoXG4gICAgICB0aGlzLl9yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcyxcbiAgICAgIGl0ZW1zLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9yZXBsYWNlU3RhdGUoZGF0YSkge1xuICAgIGNvbnN0IHVybCA9IG5ldyBVUkwod2luZG93LmxvY2F0aW9uLmhyZWYpO1xuXG4gICAgT2JqZWN0LmtleXMoZGF0YSlcbiAgICAgIC5mb3JFYWNoKChuYW1lKSA9PiB7XG4gICAgICAgIGlmKGRhdGFbbmFtZV0gPT09IHVuZGVmaW5lZCB8fCBkYXRhW25hbWVdID09PSBudWxsKSB7XG4gICAgICAgICAgdXJsLnNlYXJjaFBhcmFtcy5kZWxldGUobmFtZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdXJsLnNlYXJjaFBhcmFtcy5zZXQobmFtZSxkYXRhW25hbWVdKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICBoaXN0b3J5LnJlcGxhY2VTdGF0ZSh7fSwgbnVsbCwgdXJsLnBhdGhuYW1lICsgdXJsLnNlYXJjaCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,169 @@
1
+ import { inject, Injectable } from '@angular/core';
2
+ import { FsPrompt } from '@firestitch/prompt';
3
+ import { BehaviorSubject, Subject } from 'rxjs';
4
+ import { distinctUntilChanged, switchMap, tap, } from 'rxjs/operators';
5
+ import { ItemStore } from './item-store.service';
6
+ import * as i0 from "@angular/core";
7
+ export class SavedFilterController {
8
+ _config;
9
+ _savedFilters$ = new BehaviorSubject([]);
10
+ _activeFilter$ = new BehaviorSubject(null);
11
+ _enabled$ = new BehaviorSubject(false);
12
+ _destroy$ = new Subject();
13
+ _itemStore = inject(ItemStore);
14
+ _prompt = inject(FsPrompt);
15
+ get singularLabel() {
16
+ return this._config?.label?.singular || 'Saved filter';
17
+ }
18
+ get singularLabelLower() {
19
+ return this.singularLabel.toLowerCase();
20
+ }
21
+ get labelIcon() {
22
+ return this._config?.label?.icon || 'save';
23
+ }
24
+ get pluralLabel() {
25
+ return this._config?.label?.plural || 'Saved filters';
26
+ }
27
+ get pluralLabelLower() {
28
+ return this.pluralLabel.toLowerCase();
29
+ }
30
+ get enabled() {
31
+ return this._enabled$.getValue();
32
+ }
33
+ get enabled$() {
34
+ return this._enabled$
35
+ .pipe(distinctUntilChanged());
36
+ }
37
+ get savedFilters() {
38
+ return this._savedFilters$.getValue();
39
+ }
40
+ set savedFilters(filters) {
41
+ this._savedFilters$.next(filters);
42
+ }
43
+ get savedFilters$() {
44
+ return this._savedFilters$
45
+ .pipe(distinctUntilChanged());
46
+ }
47
+ get activeFilter() {
48
+ return this._activeFilter$.getValue();
49
+ }
50
+ get activeFilter$() {
51
+ return this._activeFilter$
52
+ .pipe(distinctUntilChanged());
53
+ }
54
+ get activeFilterData() {
55
+ return this._activeFilter$.getValue()?.filters;
56
+ }
57
+ ngOnDestroy() {
58
+ this._destroy$.next(null);
59
+ this._destroy$.complete();
60
+ }
61
+ init(filterSavedFiltersConfig) {
62
+ if (!filterSavedFiltersConfig) {
63
+ this._setEnabledStatus(false);
64
+ return;
65
+ }
66
+ this._setEnabledStatus(true);
67
+ this._config = filterSavedFiltersConfig;
68
+ }
69
+ initSavedFilters(filters) {
70
+ this.savedFilters = filters;
71
+ }
72
+ load() {
73
+ return this._config.load()
74
+ .pipe(tap((response) => {
75
+ this.initSavedFilters(response);
76
+ }));
77
+ }
78
+ create() {
79
+ return this._prompt.input({
80
+ title: `Create ${this.singularLabel}`,
81
+ label: 'Name',
82
+ required: true,
83
+ commitLabel: 'Create',
84
+ dialogConfig: {
85
+ restoreFocus: false,
86
+ },
87
+ })
88
+ .pipe(switchMap((name) => {
89
+ const data = {
90
+ name,
91
+ filters: this._itemStore.queryParams(),
92
+ };
93
+ return this.save(data);
94
+ }), tap((savedFilter) => {
95
+ this.setActiveFilter(savedFilter);
96
+ }));
97
+ }
98
+ save(savedFilter) {
99
+ const exists = !!savedFilter.id;
100
+ savedFilter = {
101
+ ...this.activeFilter,
102
+ ...savedFilter,
103
+ filters: this._itemStore.items
104
+ .filter((item) => item.hasValue)
105
+ .reduce((accum, item) => {
106
+ return {
107
+ ...accum,
108
+ [item.name]: item.model,
109
+ };
110
+ }, {}),
111
+ };
112
+ return this._config.save(savedFilter)
113
+ .pipe(tap((_savedFilter) => {
114
+ this.savedFilters = exists ? this.savedFilters
115
+ .map((f) => f.id === savedFilter.id ? _savedFilter : f) : [
116
+ ...this.savedFilters,
117
+ _savedFilter,
118
+ ];
119
+ this.setActiveFilter(_savedFilter);
120
+ }));
121
+ }
122
+ get orderable() {
123
+ return !!this._config.order;
124
+ }
125
+ order(savedFilters) {
126
+ return this._config.order(savedFilters)
127
+ .pipe(tap(() => {
128
+ this.savedFilters = [
129
+ ...savedFilters,
130
+ ];
131
+ }));
132
+ }
133
+ delete(savedFilter) {
134
+ return this._config.delete(savedFilter)
135
+ .pipe(tap(() => {
136
+ this.savedFilters = this.savedFilters
137
+ .filter((f) => f.id !== savedFilter.id);
138
+ }));
139
+ }
140
+ setActiveFilter(savedFilter) {
141
+ if (savedFilter) {
142
+ const existingFilter = this.savedFilters
143
+ .find((f) => f.id === savedFilter.id);
144
+ if (!existingFilter) {
145
+ throw new Error(`Saved filter cannot be activated, because it does not exists. Filter ID = ${savedFilter.id}`);
146
+ }
147
+ this._activeFilter$.next(existingFilter);
148
+ }
149
+ else {
150
+ this._activeFilter$.next(null);
151
+ }
152
+ }
153
+ updateActiveFilter() {
154
+ const acitveFilter = this.savedFilters
155
+ .find((f) => f.active);
156
+ if (acitveFilter) {
157
+ this.setActiveFilter(acitveFilter);
158
+ }
159
+ }
160
+ _setEnabledStatus(value) {
161
+ this._enabled$.next(value);
162
+ }
163
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SavedFilterController, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
164
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SavedFilterController });
165
+ }
166
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SavedFilterController, decorators: [{
167
+ type: Injectable
168
+ }] });
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZWQtZmlsdGVyLWNvbnRyb2xsZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hcHAvc2VydmljZXMvc2F2ZWQtZmlsdGVyLWNvbnRyb2xsZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUc5RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFOUMsT0FBTyxFQUFFLGVBQWUsRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUQsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixTQUFTLEVBQ1QsR0FBRyxHQUNKLE1BQU0sZ0JBQWdCLENBQUM7QUFReEIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUlqRCxNQUFNLE9BQU8scUJBQXFCO0lBRXhCLE9BQU8sQ0FBNEI7SUFDbkMsY0FBYyxHQUFHLElBQUksZUFBZSxDQUF1QixFQUFFLENBQUMsQ0FBQztJQUMvRCxjQUFjLEdBQUcsSUFBSSxlQUFlLENBQXFCLElBQUksQ0FBQyxDQUFDO0lBQy9ELFNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUNoRCxTQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUNoQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQy9CLE9BQU8sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFbkMsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsUUFBUSxJQUFJLGNBQWMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsSUFBVyxrQkFBa0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFXLFNB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QyxDQUFDO1lBQ2pILENBQUM7WUFFRCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMzQyxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pDLENBQUM7SUFDSCxDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZO2FBQ25DLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRXpCLElBQUksWUFBWSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNyQyxDQUFDO0lBQ0gsQ0FBQztJQUVPLGlCQUFpQixDQUFDLEtBQWM7UUFDdEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQzt3R0FoTlUscUJBQXFCOzRHQUFyQixxQkFBcUI7OzRGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5cbmltcG9ydCB7IEZzUHJvbXB0IH0gZnJvbSAnQGZpcmVzdGl0Y2gvcHJvbXB0JztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbiAgc3dpdGNoTWFwLFxuICB0YXAsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgS2V5VmFsdWUgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2V4dGVybmFsLXBhcmFtcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHtcbiAgSUZpbHRlclNhdmVkRmlsdGVyLFxuICBJRmlsdGVyU2F2ZWRGaWx0ZXJzQ29uZmlnLFxufSBmcm9tICcuLi9pbnRlcmZhY2VzL3NhdmVkLWZpbHRlcnMuaW50ZXJmYWNlJztcblxuaW1wb3J0IHsgSXRlbVN0b3JlIH0gZnJvbSAnLi9pdGVtLXN0b3JlLnNlcnZpY2UnO1xuXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTYXZlZEZpbHRlckNvbnRyb2xsZXIgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgX2NvbmZpZzogSUZpbHRlclNhdmVkRmlsdGVyc0NvbmZpZztcbiAgcHJpdmF0ZSBfc2F2ZWRGaWx0ZXJzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SUZpbHRlclNhdmVkRmlsdGVyW10+KFtdKTtcbiAgcHJpdmF0ZSBfYWN0aXZlRmlsdGVyJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SUZpbHRlclNhdmVkRmlsdGVyPihudWxsKTtcbiAgcHJpdmF0ZSBfZW5hYmxlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIF9pdGVtU3RvcmUgPSBpbmplY3QoSXRlbVN0b3JlKTtcbiAgcHJpdmF0ZSBfcHJvbXB0ID0gaW5qZWN0KEZzUHJvbXB0KTtcblxuICBwdWJsaWMgZ2V0IHNpbmd1bGFyTGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlnPy5sYWJlbD8uc2luZ3VsYXIgfHwgJ1NhdmVkIGZpbHRlcic7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNpbmd1bGFyTGFiZWxMb3dlcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnNpbmd1bGFyTGFiZWwudG9Mb3dlckNhc2UoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbGFiZWxJY29uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZz8ubGFiZWw/Lmljb24gfHwgJ3NhdmUnO1xuICB9XG5cbiAgcHVibGljIGdldCBwbHVyYWxMYWJlbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9jb25maWc/LmxhYmVsPy5wbHVyYWwgfHwgJ1NhdmVkIGZpbHRlcnMnO1xuICB9XG5cbiAgcHVibGljIGdldCBwbHVyYWxMYWJlbExvd2VyKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucGx1cmFsTGFiZWwudG9Mb3dlckNhc2UoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZW5hYmxlZCQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZW5hYmxlZCQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQkXG4gICAgICAucGlwZShcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNhdmVkRmlsdGVycygpOiBJRmlsdGVyU2F2ZWRGaWx0ZXJbXSB7XG4gICAgcmV0dXJuIHRoaXMuX3NhdmVkRmlsdGVycyQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgc2F2ZWRGaWx0ZXJzKGZpbHRlcnM6IElGaWx0ZXJTYXZlZEZpbHRlcltdKSB7XG4gICAgdGhpcy5fc2F2ZWRGaWx0ZXJzJC5uZXh0KGZpbHRlcnMpO1xuICB9XG5cbiAgcHVibGljIGdldCBzYXZlZEZpbHRlcnMkKCk6IE9ic2VydmFibGU8SUZpbHRlclNhdmVkRmlsdGVyW10+IHtcbiAgICByZXR1cm4gdGhpcy5fc2F2ZWRGaWx0ZXJzJFxuICAgICAgLnBpcGUoXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGdldCBhY3RpdmVGaWx0ZXIoKTogSUZpbHRlclNhdmVkRmlsdGVyIHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZlRmlsdGVyJC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBhY3RpdmVGaWx0ZXIkKCk6IE9ic2VydmFibGU8SUZpbHRlclNhdmVkRmlsdGVyPiB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZUZpbHRlciRcbiAgICAgIC5waXBlKFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWN0aXZlRmlsdGVyRGF0YSgpOiBLZXlWYWx1ZSB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZUZpbHRlciQuZ2V0VmFsdWUoKT8uZmlsdGVycztcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KG51bGwpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgaW5pdChcbiAgICBmaWx0ZXJTYXZlZEZpbHRlcnNDb25maWc6IElGaWx0ZXJTYXZlZEZpbHRlcnNDb25maWcsXG4gICk6IHZvaWQge1xuICAgIGlmICghZmlsdGVyU2F2ZWRGaWx0ZXJzQ29uZmlnKSB7XG4gICAgICB0aGlzLl9zZXRFbmFibGVkU3RhdHVzKGZhbHNlKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9zZXRFbmFibGVkU3RhdHVzKHRydWUpO1xuXG4gICAgdGhpcy5fY29uZmlnID0gZmlsdGVyU2F2ZWRGaWx0ZXJzQ29uZmlnO1xuICB9XG5cbiAgcHVibGljIGluaXRTYXZlZEZpbHRlcnMoZmlsdGVyczogSUZpbHRlclNhdmVkRmlsdGVyW10pOiB2b2lkIHtcbiAgICB0aGlzLnNhdmVkRmlsdGVycyA9IGZpbHRlcnM7XG4gIH1cblxuICBwdWJsaWMgbG9hZCgpOiBPYnNlcnZhYmxlPElGaWx0ZXJTYXZlZEZpbHRlcltdPiB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZy5sb2FkKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgdGhpcy5pbml0U2F2ZWRGaWx0ZXJzKHJlc3BvbnNlKTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGNyZWF0ZSgpOiBPYnNlcnZhYmxlPElGaWx0ZXJTYXZlZEZpbHRlcj4ge1xuICAgIHJldHVybiB0aGlzLl9wcm9tcHQuaW5wdXQoe1xuICAgICAgdGl0bGU6IGBDcmVhdGUgJHt0aGlzLnNpbmd1bGFyTGFiZWx9YCxcbiAgICAgIGxhYmVsOiAnTmFtZScsXG4gICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgIGNvbW1pdExhYmVsOiAnQ3JlYXRlJyxcbiAgICAgIGRpYWxvZ0NvbmZpZzoge1xuICAgICAgICByZXN0b3JlRm9jdXM6IGZhbHNlLFxuICAgICAgfSxcbiAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgobmFtZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGE6IElGaWx0ZXJTYXZlZEZpbHRlciA9IHtcbiAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICBmaWx0ZXJzOiB0aGlzLl9pdGVtU3RvcmUucXVlcnlQYXJhbXMoKSxcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgcmV0dXJuIHRoaXMuc2F2ZShkYXRhKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRhcCgoc2F2ZWRGaWx0ZXIpID0+IHtcbiAgICAgICAgICB0aGlzLnNldEFjdGl2ZUZpbHRlcihzYXZlZEZpbHRlcik7XG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBzYXZlKHNhdmVkRmlsdGVyOiBJRmlsdGVyU2F2ZWRGaWx0ZXIpOiBPYnNlcnZhYmxlPElGaWx0ZXJTYXZlZEZpbHRlcj4ge1xuICAgIGNvbnN0IGV4aXN0cyA9ICEhc2F2ZWRGaWx0ZXIuaWQ7XG5cbiAgICBzYXZlZEZpbHRlciA9IHtcbiAgICAgIC4uLnRoaXMuYWN0aXZlRmlsdGVyLFxuICAgICAgLi4uc2F2ZWRGaWx0ZXIsXG4gICAgICBmaWx0ZXJzOiB0aGlzLl9pdGVtU3RvcmUuaXRlbXNcbiAgICAgICAgLmZpbHRlcigoaXRlbSkgPT4gaXRlbS5oYXNWYWx1ZSlcbiAgICAgICAgLnJlZHVjZSgoYWNjdW0sIGl0ZW0pID0+IHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uYWNjdW0sXG4gICAgICAgICAgICBbaXRlbS5uYW1lXTogaXRlbS5tb2RlbCxcbiAgICAgICAgICB9O1xuICAgICAgICB9LCB7fSksXG4gICAgfTsgIFxuXG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZy5zYXZlKHNhdmVkRmlsdGVyKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoX3NhdmVkRmlsdGVyKSA9PiB7XG4gICAgICAgICAgdGhpcy5zYXZlZEZpbHRlcnMgPSBleGlzdHMgPyB0aGlzLnNhdmVkRmlsdGVyc1xuICAgICAgICAgICAgLm1hcCgoZikgPT4gZi5pZCA9PT0gc2F2ZWRGaWx0ZXIuaWQgPyBfc2F2ZWRGaWx0ZXIgOiBmKSA6IFtcbiAgICAgICAgICAgIC4uLnRoaXMuc2F2ZWRGaWx0ZXJzLFxuICAgICAgICAgICAgX3NhdmVkRmlsdGVyLFxuICAgICAgICAgIF07XG4gICAgICAgICAgXG4gICAgICAgICAgdGhpcy5zZXRBY3RpdmVGaWx0ZXIoX3NhdmVkRmlsdGVyKTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGdldCBvcmRlcmFibGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5fY29uZmlnLm9yZGVyO1xuICB9XG5cbiAgcHVibGljIG9yZGVyKHNhdmVkRmlsdGVyczogSUZpbHRlclNhdmVkRmlsdGVyW10pOiBPYnNlcnZhYmxlPElGaWx0ZXJTYXZlZEZpbHRlcltdPiB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZy5vcmRlcihzYXZlZEZpbHRlcnMpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnNhdmVkRmlsdGVycyA9IFtcbiAgICAgICAgICAgIC4uLnNhdmVkRmlsdGVycyxcbiAgICAgICAgICBdO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlKHNhdmVkRmlsdGVyOiBJRmlsdGVyU2F2ZWRGaWx0ZXIpOiBPYnNlcnZhYmxlPElGaWx0ZXJTYXZlZEZpbHRlcj4ge1xuICAgIHJldHVybiB0aGlzLl9jb25maWcuZGVsZXRlKHNhdmVkRmlsdGVyKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5zYXZlZEZpbHRlcnMgPSB0aGlzLnNhdmVkRmlsdGVyc1xuICAgICAgICAgICAgLmZpbHRlcigoZikgPT4gZi5pZCAhPT0gc2F2ZWRGaWx0ZXIuaWQpO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgc2V0QWN0aXZlRmlsdGVyKHNhdmVkRmlsdGVyOiBJRmlsdGVyU2F2ZWRGaWx0ZXIpOiB2b2lkIHtcbiAgICBpZiAoc2F2ZWRGaWx0ZXIpIHtcbiAgICAgIGNvbnN0IGV4aXN0aW5nRmlsdGVyID0gdGhpcy5zYXZlZEZpbHRlcnNcbiAgICAgICAgLmZpbmQoKGYpID0+IGYuaWQgPT09IHNhdmVkRmlsdGVyLmlkKTtcblxuICAgICAgaWYgKCFleGlzdGluZ0ZpbHRlcikge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFNhdmVkIGZpbHRlciBjYW5ub3QgYmUgYWN0aXZhdGVkLCBiZWNhdXNlIGl0IGRvZXMgbm90IGV4aXN0cy4gRmlsdGVyIElEID0gJHtzYXZlZEZpbHRlci5pZH1gKTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgdGhpcy5fYWN0aXZlRmlsdGVyJC5uZXh0KGV4aXN0aW5nRmlsdGVyKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fYWN0aXZlRmlsdGVyJC5uZXh0KG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVBY3RpdmVGaWx0ZXIoKTogdm9pZCB7XG4gICAgY29uc3QgYWNpdHZlRmlsdGVyID0gdGhpcy5zYXZlZEZpbHRlcnNcbiAgICAgIC5maW5kKChmKSA9PiBmLmFjdGl2ZSk7XG5cbiAgICBpZiAoYWNpdHZlRmlsdGVyKSB7XG4gICAgICB0aGlzLnNldEFjdGl2ZUZpbHRlcihhY2l0dmVGaWx0ZXIpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3NldEVuYWJsZWRTdGF0dXModmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLl9lbmFibGVkJC5uZXh0KHZhbHVlKTtcbiAgfVxufVxuIl19
@@ -1,11 +1,9 @@
1
- export { ExternalParamsController } from './app/services/external-params-controller.service';
2
- export { SavedFiltersController } from './app/services/external-params/saved-filters-controller.service';
1
+ export { SavedFilterController } from './app/services/saved-filter-controller.service';
3
2
  // Modules
4
3
  export { FsFilterModule } from './app/fs-filter.module';
5
4
  // Components
6
5
  export { FilterComponent } from './app/components/filter/filter.component';
7
6
  export { FilterItemComponent } from './app/components/filters-item/filter-item.component';
8
- export { FsSavedFiltersMenuComponent } from './app/components/saved-filter/saved-filters-menu/saved-filters-menu.component';
9
7
  // Directives
10
8
  export { FilterStatusBarDirective } from './app/directives/status-bar/status-bar.directive';
11
9
  // Enums
@@ -34,4 +32,4 @@ export { buildQueryParams } from './app/helpers/build-query-params';
34
32
  export { filterFromQueryParam, filterToQueryParam } from './app/helpers/query-param-transformers';
35
33
  // Const
36
34
  export { QUERY_PARAM_DELIMITER } from './app/consts/query-param-delimiter';
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlFQUFpRSxDQUFDO0FBRXpHLFVBQVU7QUFDVixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFeEQsYUFBYTtBQUNiLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUMxRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwrRUFBK0UsQ0FBQztBQUU1SCxhQUFhO0FBQ2IsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUF3QzVGLFFBQVE7QUFDUixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRSxTQUFTO0FBQ1QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDakUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDNUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzFELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM1RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFeEQsWUFBWTtBQUNaLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBR2pFLFVBQVU7QUFDVixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUVsRyxRQUFRO0FBQ1IsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0NBQW9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBFeHRlcm5hbFBhcmFtc0NvbnRyb2xsZXIgfSBmcm9tICcuL2FwcC9zZXJ2aWNlcy9leHRlcm5hbC1wYXJhbXMtY29udHJvbGxlci5zZXJ2aWNlJztcbmV4cG9ydCB7IFNhdmVkRmlsdGVyc0NvbnRyb2xsZXIgfSBmcm9tICcuL2FwcC9zZXJ2aWNlcy9leHRlcm5hbC1wYXJhbXMvc2F2ZWQtZmlsdGVycy1jb250cm9sbGVyLnNlcnZpY2UnO1xuXG4vLyBNb2R1bGVzXG5leHBvcnQgeyBGc0ZpbHRlck1vZHVsZSB9IGZyb20gJy4vYXBwL2ZzLWZpbHRlci5tb2R1bGUnO1xuXG4vLyBDb21wb25lbnRzXG5leHBvcnQgeyBGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2FwcC9jb21wb25lbnRzL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50JztcbmV4cG9ydCB7IEZpbHRlckl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2FwcC9jb21wb25lbnRzL2ZpbHRlcnMtaXRlbS9maWx0ZXItaXRlbS5jb21wb25lbnQnO1xuZXhwb3J0IHsgRnNTYXZlZEZpbHRlcnNNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9hcHAvY29tcG9uZW50cy9zYXZlZC1maWx0ZXIvc2F2ZWQtZmlsdGVycy1tZW51L3NhdmVkLWZpbHRlcnMtbWVudS5jb21wb25lbnQnO1xuXG4vLyBEaXJlY3RpdmVzXG5leHBvcnQgeyBGaWx0ZXJTdGF0dXNCYXJEaXJlY3RpdmUgfSBmcm9tICcuL2FwcC9kaXJlY3RpdmVzL3N0YXR1cy1iYXIvc3RhdHVzLWJhci5kaXJlY3RpdmUnO1xuXG4vLyBJbnRlcmZhY2VzXG5leHBvcnQge1xuICBGc0ZpbHRlckFjdGlvbixcbiAgRnNGaWx0ZXJBY3Rpb25DbGlja0ZuLFxuICBGc0ZpbHRlckFjdGlvbkRpc2FibGVkRm4sXG4gIEZzRmlsdGVyQWN0aW9uU2hvd0ZuLFxuICBGc0ZpbHRlckF1dG9SZWxvYWQsXG4gIEZzRmlsdGVyRmlsZUFjdGlvbkVycm9yRm4sXG4gIEZzRmlsdGVyRmlsZUFjdGlvblNlbGVjdEZuLFxuICBJRnNGaWx0ZXJCdXR0b25BY3Rpb24sXG4gIElGc0ZpbHRlckZpbGVBY3Rpb24sXG4gIElGc0ZpbHRlck1lbnVBY3Rpb24sXG4gIElGc0ZpbHRlck1lbnVBY3Rpb25GaWxlSXRlbSxcbiAgSUZzRmlsdGVyTWVudUFjdGlvbkdyb3VwSXRlbSxcbiAgSUZzRmlsdGVyTWVudUFjdGlvbkl0ZW0sXG4gIElGc0ZpbHRlck1lbnVBY3Rpb25MaW5rLFxufSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzJztcblxuZXhwb3J0IHsgSUZpbHRlckNvbmZpZ0F1dG9jb21wbGV0ZUNoaXBzSXRlbSB9IGZyb20gJy4vYXBwL2ludGVyZmFjZXMvaXRlbXMvYXV0b2NvbXBsZXRlLWNoaXBzLmludGVyZmFjZSc7XG5leHBvcnQgeyBJRmlsdGVyQ29uZmlnQXV0b2NvbXBsZXRlSXRlbSB9IGZyb20gJy4vYXBwL2ludGVyZmFjZXMvaXRlbXMvYXV0b2NvbXBsZXRlLmludGVyZmFjZSc7XG5leHBvcnQgeyBJRmlsdGVyQ29uZmlnQmFzZUl0ZW0gfSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzL2l0ZW1zL2Jhc2UuaW50ZXJmYWNlJztcbmV4cG9ydCB7IElGaWx0ZXJDb25maWdDaGVja2JveEl0ZW0gfSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzL2l0ZW1zL2NoZWNrYm94LmludGVyZmFjZSc7XG5leHBvcnQgeyBJRmlsdGVyQ29uZmlnQ2hpcHNJdGVtIH0gZnJvbSAnLi9hcHAvaW50ZXJmYWNlcy9pdGVtcy9jaGlwcy5pbnRlcmZhY2UnO1xuZXhwb3J0IHsgSUZpbHRlckNvbmZpZ0RhdGVSYW5nZUl0ZW0sIElGaWx0ZXJJdGVtRGVmYXVsdERhdGVSYW5nZSB9IGZyb20gJy4vYXBwL2ludGVyZmFjZXMvaXRlbXMvZGF0ZS1yYW5nZS5pbnRlcmZhY2UnO1xuZXhwb3J0IHsgSUZpbHRlckNvbmZpZ0RhdGVJdGVtIH0gZnJvbSAnLi9hcHAvaW50ZXJmYWNlcy9pdGVtcy9kYXRlLmludGVyZmFjZSc7XG5leHBvcnQgeyBJRmlsdGVyQ29uZmlnUmFuZ2VJdGVtLCBJRmlsdGVySXRlbURlZmF1bHRSYW5nZSB9IGZyb20gJy4vYXBwL2ludGVyZmFjZXMvaXRlbXMvcmFuZ2UuaW50ZXJmYWNlJztcbmV4cG9ydCB7IEZpbHRlclZhbHVlc1JldHVybkZuLCBJRmlsdGVyQ29uZmlnU2VsZWN0SXNvbGF0ZSwgSUZpbHRlckNvbmZpZ1NlbGVjdEl0ZW0sIElGaWx0ZXJTZWxlY3RWYWx1ZSB9IGZyb20gJy4vYXBwL2ludGVyZmFjZXMvaXRlbXMvc2VsZWN0LmludGVyZmFjZSc7XG5leHBvcnQgeyBJRmlsdGVyQ29uZmlnVGV4dEl0ZW0gfSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzL2l0ZW1zL3RleHQuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgQ2hhbmdlRm4sIEZpbHRlckNvbmZpZywgRmlsdGVyU29ydCwgRnNGaWx0ZXJQZXJzaXN0YW5jZSwgSUZpbHRlckNvbmZpZ0l0ZW0sIFNvcnQsIFNvcnRJdGVtLFxufSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzL2NvbmZpZy5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICBGaWx0ZXJSZW1vdGVEZWxldGUsIEZpbHRlclJlbW90ZUxvYWQsIEZpbHRlclJlbW90ZU9yZGVyLCBGaWx0ZXJSZW1vdGVTYXZlLCBJRmlsdGVyU2F2ZWRGaWx0ZXIsXG4gIElGaWx0ZXJTYXZlZEZpbHRlcnNDb25maWcsXG59IGZyb20gJy4vYXBwL2ludGVyZmFjZXMvc2F2ZWQtZmlsdGVycy5pbnRlcmZhY2UnO1xuXG4vLyBFbnVtc1xuZXhwb3J0IHsgQnV0dG9uU3R5bGUgfSBmcm9tICcuL2FwcC9lbnVtcyc7XG5leHBvcnQgeyBBY3Rpb25Nb2RlIH0gZnJvbSAnLi9hcHAvZW51bXMvYWN0aW9uLW1vZGUuZW51bSc7XG5leHBvcnQgeyBJdGVtRGF0ZU1vZGUgfSBmcm9tICcuL2FwcC9lbnVtcy9pdGVtLWRhdGUtbW9kZS5lbnVtJztcbmV4cG9ydCB7IEl0ZW1UeXBlIH0gZnJvbSAnLi9hcHAvZW51bXMvaXRlbS10eXBlLmVudW0nO1xuZXhwb3J0IHsgTWVudUFjdGlvbk1vZGUgfSBmcm9tICcuL2FwcC9lbnVtcy9tZW51LWFjdGlvbi1tb2RlLmVudW0nO1xuLy8gTW9kZWxzXG5leHBvcnQgeyBBdXRvY29tcGxldGVDaGlwc0l0ZW0gfSBmcm9tICcuL2FwcC9tb2RlbHMvaXRlbXMvYXV0b2NvbXBsZXRlLWNoaXBzLWl0ZW0nO1xuZXhwb3J0IHsgQXV0b2NvbXBsZXRlSXRlbSB9IGZyb20gJy4vYXBwL21vZGVscy9pdGVtcy9hdXRvY29tcGxldGUtaXRlbSc7XG5leHBvcnQgeyBCYXNlSXRlbSB9IGZyb20gJy4vYXBwL21vZGVscy9pdGVtcy9iYXNlLWl0ZW0nO1xuZXhwb3J0IHsgQ2hlY2tib3hJdGVtIH0gZnJvbSAnLi9hcHAvbW9kZWxzL2l0ZW1zL2NoZWNrYm94LWl0ZW0nO1xuZXhwb3J0IHsgQ2hpcHNJdGVtIH0gZnJvbSAnLi9hcHAvbW9kZWxzL2l0ZW1zL2NoaXBzLWl0ZW0nO1xuZXhwb3J0IHsgRGF0ZUl0ZW0gfSBmcm9tICcuL2FwcC9tb2RlbHMvaXRlbXMvZGF0ZS1pdGVtJztcbmV4cG9ydCB7IERhdGVSYW5nZUl0ZW0gfSBmcm9tICcuL2FwcC9tb2RlbHMvaXRlbXMvZGF0ZS1yYW5nZS1pdGVtJztcbmV4cG9ydCB7IERhdGVUaW1lSXRlbSB9IGZyb20gJy4vYXBwL21vZGVscy9pdGVtcy9kYXRlLXRpbWUtaXRlbSc7XG5leHBvcnQgeyBEYXRlVGltZVJhbmdlSXRlbSB9IGZyb20gJy4vYXBwL21vZGVscy9pdGVtcy9kYXRlLXRpbWUtcmFuZ2UtaXRlbSc7XG5leHBvcnQgeyBSYW5nZUl0ZW0gfSBmcm9tICcuL2FwcC9tb2RlbHMvaXRlbXMvcmFuZ2UtaXRlbSc7XG5leHBvcnQgeyBTZWxlY3RJdGVtIH0gZnJvbSAnLi9hcHAvbW9kZWxzL2l0ZW1zL3NlbGVjdC1pdGVtJztcbmV4cG9ydCB7IFRleHRJdGVtIH0gZnJvbSAnLi9hcHAvbW9kZWxzL2l0ZW1zL3RleHQtaXRlbSc7XG5cbi8vIEluamVjdG9yc1xuZXhwb3J0IHsgRlNfRklMVEVSX0NPTkZJRyB9IGZyb20gJy4vYXBwL2luamVjdG9ycy9maWx0ZXItY29uZmlnJztcblxuXG4vLyBIZWxwZXJzXG5leHBvcnQgeyBidWlsZFF1ZXJ5UGFyYW1zIH0gZnJvbSAnLi9hcHAvaGVscGVycy9idWlsZC1xdWVyeS1wYXJhbXMnO1xuZXhwb3J0IHsgZmlsdGVyRnJvbVF1ZXJ5UGFyYW0sIGZpbHRlclRvUXVlcnlQYXJhbSB9IGZyb20gJy4vYXBwL2hlbHBlcnMvcXVlcnktcGFyYW0tdHJhbnNmb3JtZXJzJztcblxuLy8gQ29uc3RcbmV4cG9ydCB7IFFVRVJZX1BBUkFNX0RFTElNSVRFUiB9IGZyb20gJy4vYXBwL2NvbnN0cy9xdWVyeS1wYXJhbS1kZWxpbWl0ZXInO1xuIl19
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBRXZGLFVBQVU7QUFDVixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFeEQsYUFBYTtBQUNiLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUUxRixhQUFhO0FBQ2IsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUF3QzVGLFFBQVE7QUFDUixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRSxTQUFTO0FBQ1QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDakUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDNUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzFELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM1RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFeEQsWUFBWTtBQUNaLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBR2pFLFVBQVU7QUFDVixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUVsRyxRQUFRO0FBQ1IsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0NBQW9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBTYXZlZEZpbHRlckNvbnRyb2xsZXIgfSBmcm9tICcuL2FwcC9zZXJ2aWNlcy9zYXZlZC1maWx0ZXItY29udHJvbGxlci5zZXJ2aWNlJztcblxuLy8gTW9kdWxlc1xuZXhwb3J0IHsgRnNGaWx0ZXJNb2R1bGUgfSBmcm9tICcuL2FwcC9mcy1maWx0ZXIubW9kdWxlJztcblxuLy8gQ29tcG9uZW50c1xuZXhwb3J0IHsgRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9hcHAvY29tcG9uZW50cy9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgeyBGaWx0ZXJJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9hcHAvY29tcG9uZW50cy9maWx0ZXJzLWl0ZW0vZmlsdGVyLWl0ZW0uY29tcG9uZW50JztcblxuLy8gRGlyZWN0aXZlc1xuZXhwb3J0IHsgRmlsdGVyU3RhdHVzQmFyRGlyZWN0aXZlIH0gZnJvbSAnLi9hcHAvZGlyZWN0aXZlcy9zdGF0dXMtYmFyL3N0YXR1cy1iYXIuZGlyZWN0aXZlJztcblxuLy8gSW50ZXJmYWNlc1xuZXhwb3J0IHtcbiAgRnNGaWx0ZXJBY3Rpb24sXG4gIEZzRmlsdGVyQWN0aW9uQ2xpY2tGbixcbiAgRnNGaWx0ZXJBY3Rpb25EaXNhYmxlZEZuLFxuICBGc0ZpbHRlckFjdGlvblNob3dGbixcbiAgRnNGaWx0ZXJBdXRvUmVsb2FkLFxuICBGc0ZpbHRlckZpbGVBY3Rpb25FcnJvckZuLFxuICBGc0ZpbHRlckZpbGVBY3Rpb25TZWxlY3RGbixcbiAgSUZzRmlsdGVyQnV0dG9uQWN0aW9uLFxuICBJRnNGaWx0ZXJGaWxlQWN0aW9uLFxuICBJRnNGaWx0ZXJNZW51QWN0aW9uLFxuICBJRnNGaWx0ZXJNZW51QWN0aW9uRmlsZUl0ZW0sXG4gIElGc0ZpbHRlck1lbnVBY3Rpb25Hcm91cEl0ZW0sXG4gIElGc0ZpbHRlck1lbnVBY3Rpb25JdGVtLFxuICBJRnNGaWx0ZXJNZW51QWN0aW9uTGluayxcbn0gZnJvbSAnLi9hcHAvaW50ZXJmYWNlcyc7XG5cbmV4cG9ydCB7IElGaWx0ZXJDb25maWdBdXRvY29tcGxldGVDaGlwc0l0ZW0gfSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzL2l0ZW1zL2F1dG9jb21wbGV0ZS1jaGlwcy5pbnRlcmZhY2UnO1xuZXhwb3J0IHsgSUZpbHRlckNvbmZpZ0F1dG9jb21wbGV0ZUl0ZW0gfSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzL2l0ZW1zL2F1dG9jb21wbGV0ZS5pbnRlcmZhY2UnO1xuZXhwb3J0IHsgSUZpbHRlckNvbmZpZ0Jhc2VJdGVtIH0gZnJvbSAnLi9hcHAvaW50ZXJmYWNlcy9pdGVtcy9iYXNlLmludGVyZmFjZSc7XG5leHBvcnQgeyBJRmlsdGVyQ29uZmlnQ2hlY2tib3hJdGVtIH0gZnJvbSAnLi9hcHAvaW50ZXJmYWNlcy9pdGVtcy9jaGVja2JveC5pbnRlcmZhY2UnO1xuZXhwb3J0IHsgSUZpbHRlckNvbmZpZ0NoaXBzSXRlbSB9IGZyb20gJy4vYXBwL2ludGVyZmFjZXMvaXRlbXMvY2hpcHMuaW50ZXJmYWNlJztcbmV4cG9ydCB7IElGaWx0ZXJDb25maWdEYXRlUmFuZ2VJdGVtLCBJRmlsdGVySXRlbURlZmF1bHREYXRlUmFuZ2UgfSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzL2l0ZW1zL2RhdGUtcmFuZ2UuaW50ZXJmYWNlJztcbmV4cG9ydCB7IElGaWx0ZXJDb25maWdEYXRlSXRlbSB9IGZyb20gJy4vYXBwL2ludGVyZmFjZXMvaXRlbXMvZGF0ZS5pbnRlcmZhY2UnO1xuZXhwb3J0IHsgSUZpbHRlckNvbmZpZ1JhbmdlSXRlbSwgSUZpbHRlckl0ZW1EZWZhdWx0UmFuZ2UgfSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzL2l0ZW1zL3JhbmdlLmludGVyZmFjZSc7XG5leHBvcnQgeyBGaWx0ZXJWYWx1ZXNSZXR1cm5GbiwgSUZpbHRlckNvbmZpZ1NlbGVjdElzb2xhdGUsIElGaWx0ZXJDb25maWdTZWxlY3RJdGVtLCBJRmlsdGVyU2VsZWN0VmFsdWUgfSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzL2l0ZW1zL3NlbGVjdC5pbnRlcmZhY2UnO1xuZXhwb3J0IHsgSUZpbHRlckNvbmZpZ1RleHRJdGVtIH0gZnJvbSAnLi9hcHAvaW50ZXJmYWNlcy9pdGVtcy90ZXh0LmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gIENoYW5nZUZuLCBGaWx0ZXJDb25maWcsIEZpbHRlclNvcnQsIEZzRmlsdGVyUGVyc2lzdGFuY2UsIElGaWx0ZXJDb25maWdJdGVtLCBTb3J0LCBTb3J0SXRlbSxcbn0gZnJvbSAnLi9hcHAvaW50ZXJmYWNlcy9jb25maWcuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgRmlsdGVyUmVtb3RlRGVsZXRlLCBGaWx0ZXJSZW1vdGVMb2FkLCBGaWx0ZXJSZW1vdGVPcmRlciwgRmlsdGVyUmVtb3RlU2F2ZSwgSUZpbHRlclNhdmVkRmlsdGVyLFxuICBJRmlsdGVyU2F2ZWRGaWx0ZXJzQ29uZmlnLFxufSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzL3NhdmVkLWZpbHRlcnMuaW50ZXJmYWNlJztcblxuLy8gRW51bXNcbmV4cG9ydCB7IEJ1dHRvblN0eWxlIH0gZnJvbSAnLi9hcHAvZW51bXMnO1xuZXhwb3J0IHsgQWN0aW9uTW9kZSB9IGZyb20gJy4vYXBwL2VudW1zL2FjdGlvbi1tb2RlLmVudW0nO1xuZXhwb3J0IHsgSXRlbURhdGVNb2RlIH0gZnJvbSAnLi9hcHAvZW51bXMvaXRlbS1kYXRlLW1vZGUuZW51bSc7XG5leHBvcnQgeyBJdGVtVHlwZSB9IGZyb20gJy4vYXBwL2VudW1zL2l0ZW0tdHlwZS5lbnVtJztcbmV4cG9ydCB7IE1lbnVBY3Rpb25Nb2RlIH0gZnJvbSAnLi9hcHAvZW51bXMvbWVudS1hY3Rpb24tbW9kZS5lbnVtJztcbi8vIE1vZGVsc1xuZXhwb3J0IHsgQXV0b2NvbXBsZXRlQ2hpcHNJdGVtIH0gZnJvbSAnLi9hcHAvbW9kZWxzL2l0ZW1zL2F1dG9jb21wbGV0ZS1jaGlwcy1pdGVtJztcbmV4cG9ydCB7IEF1dG9jb21wbGV0ZUl0ZW0gfSBmcm9tICcuL2FwcC9tb2RlbHMvaXRlbXMvYXV0b2NvbXBsZXRlLWl0ZW0nO1xuZXhwb3J0IHsgQmFzZUl0ZW0gfSBmcm9tICcuL2FwcC9tb2RlbHMvaXRlbXMvYmFzZS1pdGVtJztcbmV4cG9ydCB7IENoZWNrYm94SXRlbSB9IGZyb20gJy4vYXBwL21vZGVscy9pdGVtcy9jaGVja2JveC1pdGVtJztcbmV4cG9ydCB7IENoaXBzSXRlbSB9IGZyb20gJy4vYXBwL21vZGVscy9pdGVtcy9jaGlwcy1pdGVtJztcbmV4cG9ydCB7IERhdGVJdGVtIH0gZnJvbSAnLi9hcHAvbW9kZWxzL2l0ZW1zL2RhdGUtaXRlbSc7XG5leHBvcnQgeyBEYXRlUmFuZ2VJdGVtIH0gZnJvbSAnLi9hcHAvbW9kZWxzL2l0ZW1zL2RhdGUtcmFuZ2UtaXRlbSc7XG5leHBvcnQgeyBEYXRlVGltZUl0ZW0gfSBmcm9tICcuL2FwcC9tb2RlbHMvaXRlbXMvZGF0ZS10aW1lLWl0ZW0nO1xuZXhwb3J0IHsgRGF0ZVRpbWVSYW5nZUl0ZW0gfSBmcm9tICcuL2FwcC9tb2RlbHMvaXRlbXMvZGF0ZS10aW1lLXJhbmdlLWl0ZW0nO1xuZXhwb3J0IHsgUmFuZ2VJdGVtIH0gZnJvbSAnLi9hcHAvbW9kZWxzL2l0ZW1zL3JhbmdlLWl0ZW0nO1xuZXhwb3J0IHsgU2VsZWN0SXRlbSB9IGZyb20gJy4vYXBwL21vZGVscy9pdGVtcy9zZWxlY3QtaXRlbSc7XG5leHBvcnQgeyBUZXh0SXRlbSB9IGZyb20gJy4vYXBwL21vZGVscy9pdGVtcy90ZXh0LWl0ZW0nO1xuXG4vLyBJbmplY3RvcnNcbmV4cG9ydCB7IEZTX0ZJTFRFUl9DT05GSUcgfSBmcm9tICcuL2FwcC9pbmplY3RvcnMvZmlsdGVyLWNvbmZpZyc7XG5cblxuLy8gSGVscGVyc1xuZXhwb3J0IHsgYnVpbGRRdWVyeVBhcmFtcyB9IGZyb20gJy4vYXBwL2hlbHBlcnMvYnVpbGQtcXVlcnktcGFyYW1zJztcbmV4cG9ydCB7IGZpbHRlckZyb21RdWVyeVBhcmFtLCBmaWx0ZXJUb1F1ZXJ5UGFyYW0gfSBmcm9tICcuL2FwcC9oZWxwZXJzL3F1ZXJ5LXBhcmFtLXRyYW5zZm9ybWVycyc7XG5cbi8vIENvbnN0XG5leHBvcnQgeyBRVUVSWV9QQVJBTV9ERUxJTUlURVIgfSBmcm9tICcuL2FwcC9jb25zdHMvcXVlcnktcGFyYW0tZGVsaW1pdGVyJztcbiJdfQ==