@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
@@ -1,70 +1,38 @@
1
1
  import { ModuleWithProviders } from '@angular/core';
2
2
  import { FilterConfig } from './interfaces/config.interface';
3
3
  import * as i0 from "@angular/core";
4
- import * as i1 from "./components/filters-item/base-item/base-item.component";
5
- import * as i2 from "./components/filter/filter.component";
6
- import * as i3 from "./components/filters-item/filter-item.component";
7
- import * as i4 from "./components/filter-chips/filter-chips.component";
8
- import * as i5 from "./components/filters-item/select/select.component";
9
- import * as i6 from "./components/filters-item/select/groups/groups.component";
10
- import * as i7 from "./components/filters-item/select/simple/simple.component";
11
- import * as i8 from "./components/filters-item/select/multiple/multiple.component";
12
- import * as i9 from "./components/filters-item/chips/chips.component";
13
- import * as i10 from "./components/filters-item/text/text.component";
14
- import * as i11 from "./components/filters-item/week/week.component";
15
- import * as i12 from "./components/filters-item/range/range.component";
16
- import * as i13 from "./components/filters-item/autocomplete/autocomplete.component";
17
- import * as i14 from "./components/filters-item/autocompletechips/autocompletechips.component";
18
- import * as i15 from "./components/filters-item/date/date.component";
19
- import * as i16 from "./components/filters-item/date-range/date-range.component";
20
- import * as i17 from "./components/filters-item/checkbox/checkbox.component";
21
- import * as i18 from "./components/filter-drawer/filter-drawer.component";
22
- import * as i19 from "./components/filters-item/select/backdrop/backdrop.component";
23
- import * as i20 from "./components/filter-chip/filter-chip.component";
24
- import * as i21 from "./components/filter-chip-content/filter-chip-content.component";
25
- import * as i22 from "./components/filter-drawer-actions/filter-drawer-actions.component";
26
- import * as i23 from "./components/saved-filter/saved-filter-edit/saved-filter-edit.component";
27
- import * as i24 from "./components/saved-filter/saved-filters-menu/saved-filters-menu.component";
28
- import * as i25 from "./components/actions/actions.component";
29
- import * as i26 from "./components/action-button/action-button.component";
30
- import * as i27 from "./components/action-kebab-actions/action-kebab-actions.component";
31
- import * as i28 from "./components/saved-filter/saved-filter-manage/saved-filter-manage.component";
32
- import * as i29 from "./directives/status-bar/status-bar.directive";
33
- import * as i30 from "./directives/focus-to-item/focus-to-item.directive";
34
- import * as i31 from "./pipes/remove-isolate-value.pipe";
35
- import * as i32 from "@angular/common";
36
- import * as i33 from "@angular/router";
37
- import * as i34 from "@angular/forms";
38
- import * as i35 from "@angular/cdk/drag-drop";
39
- import * as i36 from "@angular/material/icon";
40
- import * as i37 from "@angular/material/input";
41
- import * as i38 from "@angular/material/select";
42
- import * as i39 from "@angular/material/chips";
43
- import * as i40 from "@angular/material/checkbox";
44
- import * as i41 from "@angular/material/autocomplete";
45
- import * as i42 from "@angular/material/button";
46
- import * as i43 from "@angular/material/dialog";
47
- import * as i44 from "@angular/material/tooltip";
48
- import * as i45 from "@angular/material/slide-toggle";
49
- import * as i46 from "@firestitch/chip";
50
- import * as i47 from "@firestitch/common";
51
- import * as i48 from "@firestitch/store";
52
- import * as i49 from "@firestitch/datepicker";
53
- import * as i50 from "@firestitch/label";
54
- import * as i51 from "@firestitch/autocomplete";
55
- import * as i52 from "@firestitch/autocomplete-chips";
56
- import * as i53 from "@firestitch/scroll";
57
- import * as i54 from "@firestitch/menu";
58
- import * as i55 from "@firestitch/skeleton";
59
- import * as i56 from "@firestitch/form";
60
- import * as i57 from "@firestitch/file";
61
- import * as i58 from "@firestitch/selectbutton";
62
- import * as i59 from "@firestitch/clear";
63
- import * as i60 from "@firestitch/popover";
64
- import * as i61 from "@angular/cdk/portal";
4
+ import * as i1 from "./components/saved-filter/saved-filter-autocomplete-chips/saved-filter-autocomplete-chips.component";
5
+ import * as i2 from "./components/filters-item/base-item/base-item.component";
6
+ import * as i3 from "./components/filter/filter.component";
7
+ import * as i4 from "./components/filters-item/filter-item.component";
8
+ import * as i5 from "./components/filter-chips/filter-chips.component";
9
+ import * as i6 from "./components/filters-item/select/select.component";
10
+ import * as i7 from "./components/filters-item/select/groups/groups.component";
11
+ import * as i8 from "./components/filters-item/select/simple/simple.component";
12
+ import * as i9 from "./components/filters-item/select/multiple/multiple.component";
13
+ import * as i10 from "./components/filters-item/chips/chips.component";
14
+ import * as i11 from "./components/filters-item/text/text.component";
15
+ import * as i12 from "./components/filters-item/week/week.component";
16
+ import * as i13 from "./components/filters-item/range/range.component";
17
+ import * as i14 from "./components/filters-item/autocomplete/autocomplete.component";
18
+ import * as i15 from "./components/filters-item/autocompletechips/autocompletechips.component";
19
+ import * as i16 from "./components/filters-item/date/date.component";
20
+ import * as i17 from "./components/filters-item/date-range/date-range.component";
21
+ import * as i18 from "./components/filters-item/checkbox/checkbox.component";
22
+ import * as i19 from "./components/filter-drawer/filter-drawer.component";
23
+ import * as i20 from "./components/filters-item/select/backdrop/backdrop.component";
24
+ import * as i21 from "./components/filter-chip/filter-chip.component";
25
+ import * as i22 from "./components/filter-chip-content/filter-chip-content.component";
26
+ import * as i23 from "./components/filter-drawer-actions/filter-drawer-actions.component";
27
+ import * as i24 from "./components/actions/actions.component";
28
+ import * as i25 from "./components/action-button/action-button.component";
29
+ import * as i26 from "./components/action-kebab-actions/action-kebab-actions.component";
30
+ import * as i27 from "./directives/status-bar/status-bar.directive";
31
+ import * as i28 from "./directives/focus-to-item/focus-to-item.directive";
32
+ import * as i29 from "./pipes/remove-isolate-value.pipe";
65
33
  export declare class FsFilterModule {
66
34
  static forRoot(config?: FilterConfig): ModuleWithProviders<FsFilterModule>;
67
35
  static ɵfac: i0.ɵɵFactoryDeclaration<FsFilterModule, never>;
68
- static ɵmod: i0.ɵɵNgModuleDeclaration<FsFilterModule, [typeof i1.BaseItemComponent, typeof i2.FilterComponent, typeof i3.FilterItemComponent, typeof i4.FsFilterChipsComponent, typeof i5.SelectComponent, typeof i6.SelectGroupsComponent, typeof i7.SelectSimpleComponent, typeof i8.SelectMultipleComponent, typeof i9.ChipsComponent, typeof i10.TextComponent, typeof i11.WeekComponent, typeof i12.RangeComponent, typeof i13.AutocompleteComponent, typeof i14.AutocompletechipsComponent, typeof i15.DateComponent, typeof i16.DateRangeComponent, typeof i17.CheckboxComponent, typeof i18.FilterDrawerComponent, typeof i19.SelectBackdropComponent, typeof i20.FsFilterChipComponent, typeof i21.FsFilterChipContentComponent, typeof i22.FsFilterDrawerActionsComponent, typeof i23.FsFilterSavedFilterEditComponent, typeof i24.FsSavedFiltersMenuComponent, typeof i25.FsFilterActionsComponent, typeof i26.FsFilterActionButtonComponent, typeof i27.FsFilterActionKebabActionsComponent, typeof i28.FsFilterSavedFilterManageComponent, typeof i29.FilterStatusBarDirective, typeof i30.FocusToItemDirective, typeof i31.FsFilterIsolateValues], [typeof i32.CommonModule, typeof i33.RouterModule, typeof i34.FormsModule, typeof i34.ReactiveFormsModule, typeof i35.DragDropModule, typeof i36.MatIconModule, typeof i37.MatInputModule, typeof i38.MatSelectModule, typeof i39.MatChipsModule, typeof i40.MatCheckboxModule, typeof i41.MatAutocompleteModule, typeof i42.MatButtonModule, typeof i43.MatDialogModule, typeof i44.MatTooltipModule, typeof i45.MatSlideToggleModule, typeof i46.FsChipModule, typeof i47.FsCommonModule, typeof i48.FsStoreModule, typeof i49.FsDatePickerModule, typeof i50.FsLabelModule, typeof i51.FsAutocompleteModule, typeof i52.FsAutocompleteChipsModule, typeof i53.FsScrollModule, typeof i54.FsMenuModule, typeof i55.FsSkeletonModule, typeof i56.FsFormModule, typeof i57.FsFileModule, typeof i58.FsSelectButtonModule, typeof i59.FsClearModule, typeof i60.FsPopoverModule, typeof i61.PortalModule], [typeof i2.FilterComponent, typeof i29.FilterStatusBarDirective, typeof i24.FsSavedFiltersMenuComponent]>;
36
+ static ɵmod: i0.ɵɵNgModuleDeclaration<FsFilterModule, never, [typeof i1.FsSavedFilterAutocompleteChipsComponent, typeof i2.BaseItemComponent, typeof i3.FilterComponent, typeof i4.FilterItemComponent, typeof i5.FsFilterChipsComponent, typeof i6.SelectComponent, typeof i7.SelectGroupsComponent, typeof i8.SelectSimpleComponent, typeof i9.SelectMultipleComponent, typeof i10.ChipsComponent, typeof i11.TextComponent, typeof i12.WeekComponent, typeof i13.RangeComponent, typeof i14.AutocompleteComponent, typeof i15.AutocompletechipsComponent, typeof i16.DateComponent, typeof i17.DateRangeComponent, typeof i18.CheckboxComponent, typeof i19.FilterDrawerComponent, typeof i20.SelectBackdropComponent, typeof i21.FsFilterChipComponent, typeof i22.FsFilterChipContentComponent, typeof i23.FsFilterDrawerActionsComponent, typeof i24.FsFilterActionsComponent, typeof i25.FsFilterActionButtonComponent, typeof i26.FsFilterActionKebabActionsComponent, typeof i27.FilterStatusBarDirective, typeof i28.FocusToItemDirective, typeof i29.FsFilterIsolateValues], [typeof i3.FilterComponent, typeof i27.FilterStatusBarDirective]>;
69
37
  static ɵinj: i0.ɵɵInjectorDeclaration<FsFilterModule>;
70
38
  }
@@ -1,3 +1,4 @@
1
+ import { KeyValue } from '../interfaces';
1
2
  import { IFilterConfigItem } from '../interfaces/config.interface';
2
3
  import { BaseItem } from '../models/items/base-item';
3
- export declare function buildQueryParams(flattenedParams: Record<string, unknown>, items: BaseItem<IFilterConfigItem>[]): Record<string, unknown>;
4
+ export declare function buildQueryParams(flattenedParams: KeyValue, items: BaseItem<IFilterConfigItem>[]): KeyValue;
@@ -11,4 +11,4 @@ import { DateTimeRangeItem } from '../models/items/date-time-range-item';
11
11
  import { RangeItem } from '../models/items/range-item';
12
12
  import { TextItem } from '../models/items/text-item';
13
13
  import { WeekItem } from '../models/items/week-item';
14
- export declare function createFilterItem(item: IFilterConfigItem, config: any, filter: FilterComponent): ChipsItem | TextItem | WeekItem | RangeItem | AutocompleteItem | AutocompleteChipsItem | DateItem | DateTimeItem | DateRangeItem | DateTimeRangeItem | CheckboxItem | import("../models/items/select/simple-select-item").SimpleSelectItem | import("../models/items/select/multiple-select-item").MultipleSelectItem;
14
+ export declare function createFilterItem(item: IFilterConfigItem, config: any, filter: FilterComponent): TextItem | ChipsItem | WeekItem | RangeItem | AutocompleteItem | AutocompleteChipsItem | DateItem | DateTimeItem | DateRangeItem | DateTimeRangeItem | CheckboxItem | import("../models/items").SimpleSelectItem | import("../models/items").MultipleSelectItem;
@@ -1,2 +1,3 @@
1
1
  import { InjectionToken } from '@angular/core';
2
- export declare const FILTER_DRAWER_OVERLAY: InjectionToken<any>;
2
+ import { OverlayRef } from '@angular/cdk/overlay';
3
+ export declare const FILTER_DRAWER_OVERLAY: InjectionToken<OverlayRef>;
@@ -1,3 +1,3 @@
1
- export interface IFilterExternalParams {
2
- [key: string]: string | number | boolean | null;
1
+ export interface KeyValue {
2
+ [key: string]: any;
3
3
  }
@@ -1,16 +1,21 @@
1
1
  import { Observable } from 'rxjs';
2
- import { IFilterExternalParams } from './external-params.interface';
2
+ import { KeyValue } from './external-params.interface';
3
3
  export interface IFilterSavedFiltersConfig {
4
4
  load: FilterRemoteLoad;
5
5
  save: FilterRemoteSave;
6
- order: FilterRemoteOrder;
6
+ order?: FilterRemoteOrder;
7
7
  delete: FilterRemoteDelete;
8
+ label?: {
9
+ singular: string;
10
+ plural: string;
11
+ icon?: string;
12
+ };
8
13
  }
9
14
  export interface IFilterSavedFilter {
10
- id?: number;
11
- name: string;
12
- active: boolean;
13
- filters: IFilterExternalParams;
15
+ id?: string | number;
16
+ name?: string;
17
+ active?: boolean;
18
+ filters?: KeyValue;
14
19
  }
15
20
  export type FilterRemoteLoad = () => Observable<IFilterSavedFilter[]>;
16
21
  export type FilterRemoteSave = (savedFilter: IFilterSavedFilter) => Observable<IFilterSavedFilter>;
@@ -0,0 +1 @@
1
+ export * from './base-autocomplete-item';
@@ -16,7 +16,7 @@ export declare class AutocompleteChipsItem extends BaseAutocompleteItem<IFilterC
16
16
  get queryObject(): Record<string, unknown>;
17
17
  get isChipVisible(): boolean;
18
18
  getChipsContent(): any;
19
+ setModel(value: any): void;
19
20
  protected _init(): void;
20
21
  protected _clearValue(defaultValue?: unknown): void;
21
- protected _setModel(value: any): void;
22
22
  }
@@ -69,7 +69,7 @@ export declare abstract class BaseItem<T extends IFilterConfigItem> {
69
69
  loadAsyncValues(reload?: boolean): void;
70
70
  clear(defaultValue?: unknown): void;
71
71
  destroy(): void;
72
- protected _setModel(value: any): void;
72
+ setModel(value: any): void;
73
73
  protected _initDefaultModel(): void;
74
74
  protected _clearValue(defaultValue?: unknown): void;
75
75
  protected get _initialized(): boolean;
@@ -13,8 +13,8 @@ export declare class ChipsItem extends BaseItem<IFilterConfigChipsItem> {
13
13
  get queryObject(): Record<string, unknown>;
14
14
  get persistanceObject(): Record<string, string>;
15
15
  getChipsContent(): any;
16
+ setModel(value: any): void;
16
17
  protected _validateModel(): void;
17
- protected _setModel(value: any): void;
18
18
  protected _init(): void;
19
19
  protected _clearValue(defaultValue?: unknown): void;
20
20
  }
@@ -10,8 +10,8 @@ export declare abstract class BaseDateItem extends BaseItem<IFilterConfigDateIte
10
10
  constructor(itemConfig: any, _additionalConfig: unknown, _filter: FilterComponent);
11
11
  get value(): Date;
12
12
  get queryObject(): Record<string, Date>;
13
+ setModel(value: any): void;
13
14
  get persistanceObject(): Record<string, string>;
14
15
  protected _validateModel(): void;
15
- protected _setModel(value: any): void;
16
16
  protected _init(): void;
17
17
  }
@@ -0,0 +1 @@
1
+ export * from './base-date-item';
@@ -8,10 +8,10 @@ export declare abstract class BaseDateRangeItem extends BaseItem<IFilterConfigDa
8
8
  get queryObject(): Record<string, Date>;
9
9
  get persistanceObject(): Record<string, string>;
10
10
  getChipsContent(type?: any): string;
11
+ setModel(value: any): void;
11
12
  clearDateRange(type?: 'from' | 'to', defaultValue?: IFilterItemDefaultDateRange): void;
12
13
  protected _validateModel(): void;
13
14
  get hasModelValue(): any;
14
- protected _setModel(value: any): void;
15
15
  protected _init(): void;
16
16
  protected _clearValue(defaultValue?: unknown): void;
17
17
  }
@@ -0,0 +1 @@
1
+ export * from './base-date-range-item';
@@ -0,0 +1,17 @@
1
+ export * from './autocomplete';
2
+ export * from './autocomplete-chips-item';
3
+ export * from './autocomplete-item';
4
+ export * from './base-item';
5
+ export * from './checkbox-item';
6
+ export * from './chips-item';
7
+ export * from './date';
8
+ export * from './date-item';
9
+ export * from './date-range';
10
+ export * from './date-range-item';
11
+ export * from './date-time-item';
12
+ export * from './date-time-range-item';
13
+ export * from './range-item';
14
+ export * from './select';
15
+ export * from './select-item';
16
+ export * from './text-item';
17
+ export * from './week-item';
@@ -0,0 +1,3 @@
1
+ export * from './base-select-item';
2
+ export * from './multiple-select-item';
3
+ export * from './simple-select-item';
@@ -5,10 +5,10 @@ export declare class MultipleSelectItem extends BaseSelectItem {
5
5
  constructor(itemConfig: IFilterConfigSelectItem, _persistedValues: any, _filter: FilterComponent);
6
6
  get value(): any;
7
7
  get isChipVisible(): boolean;
8
- get isolateOptionNotSelected(): boolean;
9
- getChipsContent(type?: any): string;
8
+ get _isolateOptionNotSelected(): boolean;
9
+ setModel(value: any): void;
10
+ getChipsContent(): string;
10
11
  protected _init(): void;
11
- protected _setModel(value: any): void;
12
12
  protected _validateModel(): void;
13
13
  protected _clearValue(defaultValue?: unknown): void;
14
14
  }
@@ -6,9 +6,9 @@ export declare class SimpleSelectItem extends BaseSelectItem {
6
6
  get value(): any;
7
7
  getChipsContent(type?: any): string;
8
8
  get isChipVisible(): boolean;
9
+ setModel(value: any): void;
9
10
  protected _init(): void;
10
- protected get isolateOptionNotSelected(): boolean;
11
- protected _setModel(value: any): void;
11
+ protected get _isolateOptionNotSelected(): boolean;
12
12
  protected _validateModel(): void;
13
13
  protected _clearValue(defaultValue?: unknown): void;
14
14
  }
@@ -12,9 +12,9 @@ export declare class WeekItem extends BaseItem<IFilterConfigWeekItem> {
12
12
  [x: string]: any;
13
13
  };
14
14
  get persistanceObject(): Record<string, string>;
15
+ setModel(value: any): void;
15
16
  getChipsContent(type?: any): string;
16
17
  protected _validateModel(): void;
17
- protected _setModel(value: any): void;
18
18
  protected _init(): void;
19
19
  protected _clearValue(defaultValue?: unknown): void;
20
20
  }
@@ -4,5 +4,5 @@ import * as i0 from "@angular/core";
4
4
  export declare class FsFilterIsolateValues implements PipeTransform {
5
5
  transform(values: BaseItem<any>[], isolate: any): BaseItem<any>[];
6
6
  static ɵfac: i0.ɵɵFactoryDeclaration<FsFilterIsolateValues, never>;
7
- static ɵpipe: i0.ɵɵPipeDeclaration<FsFilterIsolateValues, "fsFilterIsolateValues", false>;
7
+ static ɵpipe: i0.ɵɵPipeDeclaration<FsFilterIsolateValues, "fsFilterIsolateValues", true>;
8
8
  }
@@ -1,24 +1,20 @@
1
- import { Injector, OnDestroy } from '@angular/core';
2
- import { Overlay } from '@angular/cdk/overlay';
3
- import { HtmlClassRenderer } from '@firestitch/html';
1
+ import { OnDestroy } from '@angular/core';
4
2
  import { Observable } from 'rxjs';
5
3
  import { FilterDrawerComponent } from '../components/filter-drawer/filter-drawer.component';
6
- import { FsFilterMeta } from '../providers/filter-meta';
7
- import { FocusControllerService } from './focus-controller.service';
8
4
  import * as i0 from "@angular/core";
9
5
  export declare class FsFilterOverlayService implements OnDestroy {
10
- private _filterMeta;
11
- private _injector;
12
- private _overlay;
13
- private _focusController;
14
- private _htmlClassRenderer;
15
6
  private _detach$;
16
7
  private _attach$;
17
8
  private _clearFn;
18
9
  private _doneFn;
19
10
  private _destroy$;
20
11
  private _overlayRef;
21
- constructor(_filterMeta: FsFilterMeta, _injector: Injector, _overlay: Overlay, _focusController: FocusControllerService, _htmlClassRenderer: HtmlClassRenderer);
12
+ private _injector;
13
+ private _overlay;
14
+ private _focusController;
15
+ private _htmlClassRenderer;
16
+ private _filterMeta;
17
+ constructor();
22
18
  get detach$(): Observable<void>;
23
19
  get attach$(): Observable<void>;
24
20
  get isOpened(): boolean;
@@ -0,0 +1,7 @@
1
+ export * from './filter-overlay.service';
2
+ export * from './focus-controller.service';
3
+ export * from './item-store.service';
4
+ export * from './param-controller.service';
5
+ export * from './persistance-controller.service';
6
+ export * from './query-param-controller.service';
7
+ export * from './saved-filter-controller.service';
@@ -2,7 +2,7 @@ import { OnDestroy } from '@angular/core';
2
2
  import { Observable } from 'rxjs';
3
3
  import type { FilterComponent } from '../components/filter/filter.component';
4
4
  import { FilterSort, IFilterConfigItem, SortItem } from '../interfaces/config.interface';
5
- import { IFilterExternalParams } from '../interfaces/external-params.interface';
5
+ import { KeyValue } from '../interfaces/external-params.interface';
6
6
  import { ISortingChangeEvent } from '../interfaces/filter.interface';
7
7
  import { BaseItem } from '../models/items/base-item';
8
8
  import { TextItem } from '../models/items/text-item';
@@ -12,7 +12,7 @@ interface IValueAsQuery {
12
12
  items?: BaseItem<IFilterConfigItem>[];
13
13
  persisted?: boolean;
14
14
  }
15
- export declare class FsFilterItemsStore implements OnDestroy {
15
+ export declare class ItemStore implements OnDestroy {
16
16
  sortByItem: BaseItem<IFilterConfigItem>;
17
17
  sortDirectionItem: BaseItem<IFilterConfigItem>;
18
18
  keywordItem: TextItem;
@@ -38,6 +38,7 @@ export declare class FsFilterItemsStore implements OnDestroy {
38
38
  setConfig(config: any): void;
39
39
  getItemByName(name: string): BaseItem<IFilterConfigItem>;
40
40
  initItems(items: IFilterConfigItem[]): void;
41
+ queryParams(): KeyValue;
41
42
  filtersClear(): void;
42
43
  loadAsyncValues(): void;
43
44
  loadAsyncDefaults(): void;
@@ -46,9 +47,10 @@ export declare class FsFilterItemsStore implements OnDestroy {
46
47
  getSortDirectionValue(): any;
47
48
  updateSort(sort: ISortingChangeEvent): void;
48
49
  values(onlyPresented?: boolean): Record<string, unknown>;
49
- valuesAsQuery({ onlyPresented, items, persisted, }?: IValueAsQuery): Record<string, unknown>;
50
- init(p: IFilterExternalParams): void;
51
- updateItemsWithValues(values: IFilterExternalParams): void;
50
+ models(): KeyValue;
51
+ valuesAsQuery({ onlyPresented, items, persisted, }?: IValueAsQuery): KeyValue;
52
+ init(p: KeyValue): void;
53
+ updateItemsWithValues(values: KeyValue): void;
52
54
  updateSortingItemsValues(items: SortItem[]): void;
53
55
  destroyItems(): void;
54
56
  /**
@@ -62,7 +64,7 @@ export declare class FsFilterItemsStore implements OnDestroy {
62
64
  private _initSortingItems;
63
65
  private _createSortingItems;
64
66
  private _setKeywordItem;
65
- static ɵfac: i0.ɵɵFactoryDeclaration<FsFilterItemsStore, never>;
66
- static ɵprov: i0.ɵɵInjectableDeclaration<FsFilterItemsStore>;
67
+ static ɵfac: i0.ɵɵFactoryDeclaration<ItemStore, never>;
68
+ static ɵprov: i0.ɵɵInjectableDeclaration<ItemStore>;
67
69
  }
68
70
  export {};
@@ -0,0 +1,30 @@
1
+ import { OnDestroy } from '@angular/core';
2
+ import { Observable } from 'rxjs';
3
+ import { IFilterSavedFilter, KeyValue } from '../interfaces';
4
+ import * as i0 from "@angular/core";
5
+ export declare class ParamController implements OnDestroy {
6
+ private _pending$;
7
+ private _config;
8
+ private _destroy$;
9
+ private _itemStore;
10
+ private _persistanceController;
11
+ private _queryParams;
12
+ private _savedFilterController;
13
+ get params(): KeyValue;
14
+ get pending(): boolean;
15
+ get pending$(): Observable<boolean>;
16
+ ngOnDestroy(): void;
17
+ setConfig(config: any): void;
18
+ setActiveSavedFilter(savedFilter: IFilterSavedFilter): void;
19
+ reloadFiltersWithValues(params: KeyValue): void;
20
+ initItems(): void;
21
+ _initItemsValues(): void;
22
+ fetchQueryParams(): void;
23
+ private _initQueryParams;
24
+ private _initSavedFilters;
25
+ private _listenItemsChange;
26
+ private _saveQueryParams;
27
+ private _savePersistedParams;
28
+ static ɵfac: i0.ɵɵFactoryDeclaration<ParamController, never>;
29
+ static ɵprov: i0.ɵɵInjectableDeclaration<ParamController>;
30
+ }
@@ -1,6 +1,6 @@
1
- import { FsFilterConfig } from '../../models/filter-config';
1
+ import { FsFilterConfig } from '../models/filter-config';
2
2
  import * as i0 from "@angular/core";
3
- export declare class QueryPersistanceController {
3
+ export declare class PersistanceController {
4
4
  queryEnabled: boolean;
5
5
  private _store;
6
6
  private _name;
@@ -14,6 +14,6 @@ export declare class QueryPersistanceController {
14
14
  private _get;
15
15
  private _initConfig;
16
16
  private _getConfig;
17
- static ɵfac: i0.ɵɵFactoryDeclaration<QueryPersistanceController, never>;
18
- static ɵprov: i0.ɵɵInjectableDeclaration<QueryPersistanceController>;
17
+ static ɵfac: i0.ɵɵFactoryDeclaration<PersistanceController, never>;
18
+ static ɵprov: i0.ɵɵInjectableDeclaration<PersistanceController>;
19
19
  }
@@ -0,0 +1,21 @@
1
+ import { ActivatedRoute } from '@angular/router';
2
+ import { ItemStore } from './item-store.service';
3
+ import * as i0 from "@angular/core";
4
+ export declare class QueryParamController {
5
+ private _route;
6
+ private _itemStore;
7
+ private _enabled;
8
+ private _params;
9
+ constructor(_route: ActivatedRoute, _itemStore: ItemStore);
10
+ get enabled(): boolean;
11
+ get params(): Record<string, any>;
12
+ init(enabled: boolean): void;
13
+ writeStateToQueryParams(params: any): void;
14
+ /**
15
+ * Parse query and update filter values
16
+ */
17
+ fetchFromQueryParams(): void;
18
+ private _replaceState;
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<QueryParamController, never>;
20
+ static ɵprov: i0.ɵɵInjectableDeclaration<QueryParamController>;
21
+ }
@@ -1,19 +1,21 @@
1
1
  import { OnDestroy } from '@angular/core';
2
- import { MatDialog } from '@angular/material/dialog';
3
2
  import { Observable } from 'rxjs';
4
- import { IFilterExternalParams } from '../../interfaces/external-params.interface';
5
- import { IFilterSavedFilter, IFilterSavedFiltersConfig } from '../../interfaces/saved-filters.interface';
6
- import { FsFilterItemsStore } from '../items-store.service';
3
+ import { KeyValue } from '../interfaces/external-params.interface';
4
+ import { IFilterSavedFilter, IFilterSavedFiltersConfig } from '../interfaces/saved-filters.interface';
7
5
  import * as i0 from "@angular/core";
8
- export declare class SavedFiltersController implements OnDestroy {
9
- private _itemsStore;
10
- private _dialog;
11
- protected _config: IFilterSavedFiltersConfig;
6
+ export declare class SavedFilterController implements OnDestroy {
7
+ private _config;
12
8
  private _savedFilters$;
13
9
  private _activeFilter$;
14
10
  private _enabled$;
15
11
  private _destroy$;
16
- constructor(_itemsStore: FsFilterItemsStore, _dialog: MatDialog);
12
+ private _itemStore;
13
+ private _prompt;
14
+ get singularLabel(): string;
15
+ get singularLabelLower(): string;
16
+ get labelIcon(): string;
17
+ get pluralLabel(): string;
18
+ get pluralLabelLower(): string;
17
19
  get enabled(): boolean;
18
20
  get enabled$(): Observable<boolean>;
19
21
  get savedFilters(): IFilterSavedFilter[];
@@ -21,19 +23,19 @@ export declare class SavedFiltersController implements OnDestroy {
21
23
  get savedFilters$(): Observable<IFilterSavedFilter[]>;
22
24
  get activeFilter(): IFilterSavedFilter;
23
25
  get activeFilter$(): Observable<IFilterSavedFilter>;
24
- get activeFilterData(): IFilterExternalParams;
26
+ get activeFilterData(): KeyValue;
25
27
  ngOnDestroy(): void;
26
- init(remoteParamsConfig: IFilterSavedFiltersConfig): void;
28
+ init(filterSavedFiltersConfig: IFilterSavedFiltersConfig): void;
27
29
  initSavedFilters(filters: IFilterSavedFilter[]): void;
28
30
  load(): Observable<IFilterSavedFilter[]>;
31
+ create(): Observable<IFilterSavedFilter>;
29
32
  save(savedFilter: IFilterSavedFilter): Observable<IFilterSavedFilter>;
33
+ get orderable(): boolean;
30
34
  order(savedFilters: IFilterSavedFilter[]): Observable<IFilterSavedFilter[]>;
31
35
  delete(savedFilter: IFilterSavedFilter): Observable<IFilterSavedFilter>;
32
36
  setActiveFilter(savedFilter: IFilterSavedFilter): void;
33
- openSavedFilterEditDialog(): void;
34
37
  updateActiveFilter(): void;
35
- resetActiveFilter(): void;
36
38
  private _setEnabledStatus;
37
- static ɵfac: i0.ɵɵFactoryDeclaration<SavedFiltersController, never>;
38
- static ɵprov: i0.ɵɵInjectableDeclaration<SavedFiltersController>;
39
+ static ɵfac: i0.ɵɵFactoryDeclaration<SavedFilterController, never>;
40
+ static ɵprov: i0.ɵɵInjectableDeclaration<SavedFilterController>;
39
41
  }