@webitel/ui-datalist 1.0.13 → 1.0.15

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 (164) hide show
  1. package/package.json +17 -7
  2. package/src/modules/filters/classes/Filter.ts +2 -2
  3. package/src/modules/filters/classes/FiltersManager.ts +4 -4
  4. package/src/modules/filters/components/search-bar/dynamic-filter-search.vue +1 -1
  5. package/src/modules/filters/composables/useFilterConfigsToolkit.ts +1 -1
  6. package/src/modules/filters/index.ts +7 -5
  7. package/src/modules/filters/modules/filterConfig/classes/FilterConfig.ts +1 -0
  8. package/src/modules/filters/modules/filterConfig/classes/createFilterConfig.ts +8 -12
  9. package/src/modules/filters/modules/filterConfig/components/_custom/index.ts +7 -4
  10. package/src/modules/filters/modules/filterConfig/components/_custom/type-extension-filter-value-field.vue +16 -1
  11. package/src/modules/filters/modules/filterConfig/components/_custom/type-extension-filter-value-preview.vue +35 -8
  12. package/src/modules/filters/modules/filterConfig/components/_shared/date-time-filter/date-time-filter-value-preview.vue +15 -0
  13. package/src/modules/filters/modules/filterConfig/components/_shared/has-options/has-option-filter-value-preview.vue +15 -0
  14. package/src/modules/filters/modules/filterConfig/components/case-assignee/case-assignee-filter-value-preview.vue +1 -1
  15. package/src/modules/filters/modules/filterConfig/components/contact-group/contact-group-filter-value-preview.vue +1 -1
  16. package/src/modules/filters/modules/filterConfig/components/has-file/has-file-filter-value-field.vue +1 -2
  17. package/src/modules/filters/modules/filterConfig/components/has-rating/has-rating-filter-value-field.vue +1 -2
  18. package/src/modules/filters/modules/filterConfig/components/has-transcription/has-transcription-filter-value-field.vue +1 -2
  19. package/src/modules/filters/modules/filterConfig/components/index.ts +0 -12
  20. package/src/modules/filters/modules/filterConfig/composables/booleanFilterToolkit.ts +0 -1
  21. package/src/modules/filters/modules/filterConfig/enums/FilterOption.ts +0 -2
  22. package/src/modules/filters/modules/filterConfig/index.ts +5 -0
  23. package/src/modules/filters/modules/filterConfig/types/DynamicFilterPreviewComponent.ts +8 -0
  24. package/types/index.d.ts +2 -0
  25. package/types/modules/filter-presets/api/PresetQuery.d.ts +42 -0
  26. package/types/modules/filter-presets/components/_shared/input-fields/preset-description-field.vue.d.ts +12 -0
  27. package/types/modules/filter-presets/components/_shared/input-fields/preset-name-field.vue.d.ts +15 -0
  28. package/types/modules/filter-presets/components/_shared/preset-filters-preview.vue.d.ts +8 -0
  29. package/types/modules/filter-presets/components/apply-preset/apply-preset-action.vue.d.ts +16 -0
  30. package/types/modules/filter-presets/components/apply-preset/preset-preview.vue.d.ts +27 -0
  31. package/types/modules/filter-presets/components/save-preset/overwrite-preset-popup.vue.d.ts +11 -0
  32. package/types/modules/filter-presets/components/save-preset/save-preset-action.vue.d.ts +22 -0
  33. package/types/modules/filter-presets/components/save-preset/save-preset-popup.vue.d.ts +24 -0
  34. package/types/modules/filter-presets/index.d.ts +4 -0
  35. package/types/modules/filter-presets/stores/createFilterPresetsStore.d.ts +2 -0
  36. package/types/modules/filter-presets/stores/headers/headers.d.ts +2 -0
  37. package/types/modules/filters/classes/Filter.d.ts +46 -0
  38. package/types/modules/filters/classes/FiltersManager.d.ts +50 -0
  39. package/types/modules/filters/components/config/dynamic-filter-config-form-label.vue.d.ts +11 -0
  40. package/types/modules/filters/components/config/dynamic-filter-config-form-value-input.vue.d.ts +16 -0
  41. package/types/modules/filters/components/config/dynamic-filter-config-form.vue.d.ts +93 -0
  42. package/types/modules/filters/components/config/dynamic-filter-config-view.vue.d.ts +27 -0
  43. package/types/modules/filters/components/dynamic-filter-add-action.vue.d.ts +47 -0
  44. package/types/modules/filters/components/dynamic-filter-panel-wrapper.vue.d.ts +24 -0
  45. package/types/modules/filters/components/preview/dynamic-filter-preview-info.vue.d.ts +16 -0
  46. package/types/modules/filters/components/preview/dynamic-filter-preview.vue.d.ts +72 -0
  47. package/types/modules/filters/components/search-bar/dynamic-filter-search.vue.d.ts +22 -0
  48. package/types/modules/filters/components/table-filters-panel.vue.d.ts +65 -0
  49. package/types/modules/filters/composables/useFilterConfigsToolkit.d.ts +31 -0
  50. package/types/modules/filters/createTableFiltersStore.d.ts +121 -0
  51. package/types/modules/filters/index.d.ts +8 -0
  52. package/types/modules/filters/modules/filterConfig/classes/FilterConfig.d.ts +56 -0
  53. package/types/modules/filters/modules/filterConfig/classes/createFilterConfig.d.ts +2 -0
  54. package/types/modules/filters/modules/filterConfig/components/_custom/index.d.ts +17 -0
  55. package/types/modules/filters/modules/filterConfig/components/_custom/type-extension-filter-value-field.vue.d.ts +15 -0
  56. package/types/modules/filters/modules/filterConfig/components/_custom/type-extension-filter-value-preview.vue.d.ts +7 -0
  57. package/types/modules/filters/modules/filterConfig/components/_shared/date-time-filter/date-time-filter-value-field.vue.d.ts +13 -0
  58. package/types/modules/filters/modules/filterConfig/components/_shared/date-time-filter/date-time-filter-value-preview.vue.d.ts +5 -0
  59. package/types/modules/filters/modules/filterConfig/components/_shared/durations/duration-filter-value-field.vue.d.ts +15 -0
  60. package/types/modules/filters/modules/filterConfig/components/_shared/has-options/has-option-filter-value-field.vue.d.ts +9 -0
  61. package/types/modules/filters/modules/filterConfig/components/_shared/has-options/has-option-filter-value-preview.vue.d.ts +5 -0
  62. package/types/modules/filters/modules/filterConfig/components/_shared/lookup-filter-preview/lookup-filter-value-preview.vue.d.ts +8 -0
  63. package/types/modules/filters/modules/filterConfig/components/agent/agent-filter-value-field.vue.d.ts +12 -0
  64. package/types/modules/filters/modules/filterConfig/components/agent/agent-filter-value-preview.vue.d.ts +6 -0
  65. package/types/modules/filters/modules/filterConfig/components/amd-result/amd-result-filter-value-field.vue.d.ts +11 -0
  66. package/types/modules/filters/modules/filterConfig/components/amd-result/amd-result-filter-value-preview.vue.d.ts +5 -0
  67. package/types/modules/filters/modules/filterConfig/components/call-direction/call-direction-filter-value-field.vue.d.ts +11 -0
  68. package/types/modules/filters/modules/filterConfig/components/call-direction/call-direction-filter-value-preview.vue.d.ts +5 -0
  69. package/types/modules/filters/modules/filterConfig/components/case-actual-reaction-time/case-actual-reaction-time-filter-value-field.vue.d.ts +13 -0
  70. package/types/modules/filters/modules/filterConfig/components/case-actual-reaction-time/case-actual-reaction-time-filter-value-preview.vue.d.ts +5 -0
  71. package/types/modules/filters/modules/filterConfig/components/case-actual-resolution-time/case-actual-resolution-time-filter-value-field.vue.d.ts +13 -0
  72. package/types/modules/filters/modules/filterConfig/components/case-actual-resolution-time/case-actual-resolution-time-filter-value-preview.vue.d.ts +5 -0
  73. package/types/modules/filters/modules/filterConfig/components/case-assignee/case-assignee-filter-value-field.vue.d.ts +19 -0
  74. package/types/modules/filters/modules/filterConfig/components/case-assignee/case-assignee-filter-value-preview.vue.d.ts +8 -0
  75. package/types/modules/filters/modules/filterConfig/components/case-assignee/index.d.ts +44 -0
  76. package/types/modules/filters/modules/filterConfig/components/case-author/case-author-filter-value-field.vue.d.ts +12 -0
  77. package/types/modules/filters/modules/filterConfig/components/case-author/case-author-filter-value-preview.vue.d.ts +8 -0
  78. package/types/modules/filters/modules/filterConfig/components/case-close-reason-groups/case-close-reason-groups-filter-value-field.vue.d.ts +15 -0
  79. package/types/modules/filters/modules/filterConfig/components/case-close-reason-groups/case-close-reason-groups-filter-value-preview.vue.d.ts +6 -0
  80. package/types/modules/filters/modules/filterConfig/components/case-impacted/case-impacted-filter-value-field.vue.d.ts +12 -0
  81. package/types/modules/filters/modules/filterConfig/components/case-impacted/case-impacted-filter-value-preview.vue.d.ts +6 -0
  82. package/types/modules/filters/modules/filterConfig/components/case-priority/case-priority-filter-value-field.vue.d.ts +12 -0
  83. package/types/modules/filters/modules/filterConfig/components/case-priority/case-priority-filter-value-preview.vue.d.ts +6 -0
  84. package/types/modules/filters/modules/filterConfig/components/case-reaction-time/case-reaction-time-filter-value-field.vue.d.ts +13 -0
  85. package/types/modules/filters/modules/filterConfig/components/case-reaction-time/case-reaction-time-filter-value-preview.vue.d.ts +5 -0
  86. package/types/modules/filters/modules/filterConfig/components/case-reporter/case-reporter-filter-value-field.vue.d.ts +12 -0
  87. package/types/modules/filters/modules/filterConfig/components/case-reporter/case-reporter-filter-value-preview.vue.d.ts +6 -0
  88. package/types/modules/filters/modules/filterConfig/components/case-resolution-time/case-resolution-time-filter-value-field.vue.d.ts +13 -0
  89. package/types/modules/filters/modules/filterConfig/components/case-resolution-time/case-resolution-time-filter-value-preview.vue.d.ts +5 -0
  90. package/types/modules/filters/modules/filterConfig/components/case-service/case-service-filter-value-field.vue.d.ts +10 -0
  91. package/types/modules/filters/modules/filterConfig/components/case-service/case-service-filter-value-preview.vue.d.ts +9 -0
  92. package/types/modules/filters/modules/filterConfig/components/case-sla/case-sla-filter-value-field.vue.d.ts +12 -0
  93. package/types/modules/filters/modules/filterConfig/components/case-sla/case-sla-filter-value-preview.vue.d.ts +6 -0
  94. package/types/modules/filters/modules/filterConfig/components/case-sla-condition/case-sla-condition-filter-value-field.vue.d.ts +15 -0
  95. package/types/modules/filters/modules/filterConfig/components/case-sla-condition/case-sla-condition-filter-value-preview.vue.d.ts +6 -0
  96. package/types/modules/filters/modules/filterConfig/components/case-source/case-source-filter-value-field.vue.d.ts +12 -0
  97. package/types/modules/filters/modules/filterConfig/components/case-source/case-source-filter-value-preview.vue.d.ts +6 -0
  98. package/types/modules/filters/modules/filterConfig/components/case-status/case-status-filter-value-field.vue.d.ts +15 -0
  99. package/types/modules/filters/modules/filterConfig/components/case-status/case-status-filter-value-preview.vue.d.ts +6 -0
  100. package/types/modules/filters/modules/filterConfig/components/contact/contact-filter-value-field.vue.d.ts +12 -0
  101. package/types/modules/filters/modules/filterConfig/components/contact/contact-filter-value-preview.vue.d.ts +6 -0
  102. package/types/modules/filters/modules/filterConfig/components/contact-group/contact-group-filter-value-field.vue.d.ts +15 -0
  103. package/types/modules/filters/modules/filterConfig/components/contact-group/contact-group-filter-value-preview.vue.d.ts +8 -0
  104. package/types/modules/filters/modules/filterConfig/components/created-at/created-at-filter-value-field.vue.d.ts +13 -0
  105. package/types/modules/filters/modules/filterConfig/components/created-at/created-at-filter-value-preview.vue.d.ts +9 -0
  106. package/types/modules/filters/modules/filterConfig/components/created-at-from/created-at-from-filter-value-field.vue.d.ts +9 -0
  107. package/types/modules/filters/modules/filterConfig/components/created-at-from/created-at-from-filter-value-preview.vue.d.ts +5 -0
  108. package/types/modules/filters/modules/filterConfig/components/created-at-to/created-at-to-filter-value-field.vue.d.ts +9 -0
  109. package/types/modules/filters/modules/filterConfig/components/created-at-to/created-at-to-filter-value-preview.vue.d.ts +5 -0
  110. package/types/modules/filters/modules/filterConfig/components/gateway/gateway-filter-value-field.vue.d.ts +12 -0
  111. package/types/modules/filters/modules/filterConfig/components/gateway/gateway-filter-value-preview.vue.d.ts +8 -0
  112. package/types/modules/filters/modules/filterConfig/components/grantee/grantee-filter-value-field.vue.d.ts +12 -0
  113. package/types/modules/filters/modules/filterConfig/components/grantee/grantee-filter-value-preview.vue.d.ts +8 -0
  114. package/types/modules/filters/modules/filterConfig/components/hangup-cause/hangup-cause-filter-value-field.vue.d.ts +11 -0
  115. package/types/modules/filters/modules/filterConfig/components/hangup-cause/hangup-cause-filter-value-preview.vue.d.ts +5 -0
  116. package/types/modules/filters/modules/filterConfig/components/has-attachment/has-attachment-filter-value-field.vue.d.ts +11 -0
  117. package/types/modules/filters/modules/filterConfig/components/has-attachment/has-attachment-filter-value-preview.vue.d.ts +5 -0
  118. package/types/modules/filters/modules/filterConfig/components/has-file/has-file-filter-value-field.vue.d.ts +12 -0
  119. package/types/modules/filters/modules/filterConfig/components/has-file/has-file-filter-value-preview.vue.d.ts +5 -0
  120. package/types/modules/filters/modules/filterConfig/components/has-rating/has-rating-filter-value-field.vue.d.ts +12 -0
  121. package/types/modules/filters/modules/filterConfig/components/has-rating/has-rating-filter-value-preview.vue.d.ts +5 -0
  122. package/types/modules/filters/modules/filterConfig/components/has-transcription/has-transcription-filter-value-field.vue.d.ts +12 -0
  123. package/types/modules/filters/modules/filterConfig/components/has-transcription/has-transcription-filter-value-preview.vue.d.ts +5 -0
  124. package/types/modules/filters/modules/filterConfig/components/index.d.ts +126 -0
  125. package/types/modules/filters/modules/filterConfig/components/queue/queue-filter-value-field.vue.d.ts +12 -0
  126. package/types/modules/filters/modules/filterConfig/components/queue/queue-filter-value-preview.vue.d.ts +6 -0
  127. package/types/modules/filters/modules/filterConfig/components/rated-by/rated-by-filter-value-field.vue.d.ts +12 -0
  128. package/types/modules/filters/modules/filterConfig/components/rated-by/rated-by-filter-value-preview.vue.d.ts +8 -0
  129. package/types/modules/filters/modules/filterConfig/components/rating/rating-from-to-filter-value-field.vue.d.ts +15 -0
  130. package/types/modules/filters/modules/filterConfig/components/rating/rating-from-to-filter-value-preview.vue.d.ts +5 -0
  131. package/types/modules/filters/modules/filterConfig/components/score/score-from-to-filter-value-field.vue.d.ts +20 -0
  132. package/types/modules/filters/modules/filterConfig/components/score/score-from-to-filter-value-preview.vue.d.ts +5 -0
  133. package/types/modules/filters/modules/filterConfig/components/tag/tag-filter-value-field.vue.d.ts +11 -0
  134. package/types/modules/filters/modules/filterConfig/components/tag/tag-filter-value-preview.vue.d.ts +5 -0
  135. package/types/modules/filters/modules/filterConfig/components/talk-duration/talk-duration-filter-value-field.vue.d.ts +12 -0
  136. package/types/modules/filters/modules/filterConfig/components/talk-duration/talk-duration-filter-value-preview.vue.d.ts +6 -0
  137. package/types/modules/filters/modules/filterConfig/components/team/team-filter-value-field.vue.d.ts +12 -0
  138. package/types/modules/filters/modules/filterConfig/components/team/team-filter-value-preview.vue.d.ts +6 -0
  139. package/types/modules/filters/modules/filterConfig/components/total-duration/total-duration-filter-value-field.vue.d.ts +12 -0
  140. package/types/modules/filters/modules/filterConfig/components/total-duration/total-duration-filter-value-preview.vue.d.ts +6 -0
  141. package/types/modules/filters/modules/filterConfig/components/user/user-filter-value-field.vue.d.ts +12 -0
  142. package/types/modules/filters/modules/filterConfig/components/user/user-filter-value-preview.vue.d.ts +8 -0
  143. package/types/modules/filters/modules/filterConfig/components/variable/variable-filter-value-field.vue.d.ts +12 -0
  144. package/types/modules/filters/modules/filterConfig/components/variable/variable-filter-value-preview.vue.d.ts +5 -0
  145. package/types/modules/filters/modules/filterConfig/composables/booleanFilterToolkit.d.ts +20 -0
  146. package/types/modules/filters/modules/filterConfig/composables/useFromToSecToPreviewTime.d.ts +7 -0
  147. package/types/modules/filters/modules/filterConfig/enums/FilterOption.d.ts +47 -0
  148. package/types/modules/filters/modules/filterConfig/enums/options/AMDResultOptions.d.ts +7 -0
  149. package/types/modules/filters/modules/filterConfig/enums/options/BooleanFilterOptions.d.ts +3 -0
  150. package/types/modules/filters/modules/filterConfig/enums/options/CallDirectionFilterOptions.d.ts +7 -0
  151. package/types/modules/filters/modules/filterConfig/enums/options/CallHistoryTagFilterOptions.d.ts +2 -0
  152. package/types/modules/filters/modules/filterConfig/enums/options/HangupCauseFilterOptions.d.ts +7 -0
  153. package/types/modules/filters/modules/filterConfig/index.d.ts +3 -0
  154. package/types/modules/filters/modules/filterConfig/types/DynamicFilterPreviewComponent.d.ts +7 -0
  155. package/types/modules/filters/scripts/utils.d.ts +5 -0
  156. package/types/modules/headers/createTableHeadersStore.d.ts +30 -0
  157. package/types/modules/pagination/createTablePaginationStore.d.ts +25 -0
  158. package/types/modules/persist/PersistedStorage.types.d.ts +36 -0
  159. package/types/modules/persist/useLocalStoragePersistedStorage.d.ts +4 -0
  160. package/types/modules/persist/usePersistedStorage.d.ts +2 -0
  161. package/types/modules/persist/useRoutePersistedStorage.d.ts +2 -0
  162. package/types/modules/table/createTableStore.store.d.ts +5 -0
  163. package/types/modules/types/tableStore.types.d.ts +41 -0
  164. package/src/index.d.ts +0 -0
@@ -0,0 +1,22 @@
1
+ import { FilterName, IFiltersManager } from '../../../filters';
2
+ import { TFilterConfig } from "../../../filters/modules/filterConfig/classes/FilterConfig";
3
+ type __VLS_Props = {
4
+ /**
5
+ * @description
6
+ * presets "section" namespace
7
+ */
8
+ namespace: string;
9
+ /**
10
+ * @author @dlohvinov
11
+ * serves as a source for local filters manager
12
+ */
13
+ filtersManager: IFiltersManager;
14
+ /**
15
+ * @description
16
+ * include in preset only filter values related to filters panel
17
+ */
18
+ filtersIncluded: FilterName[];
19
+ filterConfigs: TFilterConfig[];
20
+ };
21
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
22
+ export default _default;
@@ -0,0 +1,24 @@
1
+ import { EnginePresetQuery } from 'webitel-sdk';
2
+ import type { IFiltersManager } from '../../../filters';
3
+ import { TFilterConfig } from "../../../filters/modules/filterConfig/classes/FilterConfig";
4
+ export type SubmitConfig = {
5
+ onSuccess?: () => void;
6
+ onFailure?: (err: Error) => void;
7
+ onCompleted?: () => void;
8
+ };
9
+ type __VLS_Props = {
10
+ /**
11
+ * @description
12
+ * is needed here for `.toString()`
13
+ */
14
+ filtersManager: IFiltersManager;
15
+ filterConfigs: TFilterConfig[];
16
+ };
17
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
+ submit: (args_0: EnginePresetQuery, args_1?: SubmitConfig) => any;
19
+ close: () => any;
20
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
21
+ onSubmit?: (args_0: EnginePresetQuery, args_1?: SubmitConfig) => any;
22
+ onClose?: () => any;
23
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
24
+ export default _default;
@@ -0,0 +1,4 @@
1
+ import ApplyPresetAction from './components/apply-preset/apply-preset-action.vue';
2
+ import SavePresetAction from './components/save-preset/save-preset-action.vue';
3
+ import { createFilterPresetsStore } from './stores/createFilterPresetsStore.ts';
4
+ export { ApplyPresetAction, createFilterPresetsStore, SavePresetAction };
@@ -0,0 +1,2 @@
1
+ import { EnginePresetQuery } from 'webitel-sdk';
2
+ export declare const createFilterPresetsStore: (namespace?: string) => import("pinia").StoreDefinition<string, Pick<import("../../types/tableStore.types.js").TableStore<EnginePresetQuery>, "sort" | "filtersManager" | "headers" | "shownHeaders" | "fields" | "page" | "size" | "next" | "isFiltersRestoring" | "dataList" | "error" | "isLoading" | "selected">, Pick<import("../../types/tableStore.types.js").TableStore<EnginePresetQuery>, never>, Pick<import("../../types/tableStore.types.js").TableStore<EnginePresetQuery>, "hasFilter" | "addFilter" | "updateFilter" | "deleteFilter" | "updateShownHeaders" | "updateSort" | "updatePage" | "updateSize" | "updateSelected" | "loadDataList" | "initialize" | "deleteEls" | "patchItemProperty">>;
@@ -0,0 +1,2 @@
1
+ import { WtTableHeader } from 'src/components/wt-table/types/WtTable.d.ts';
2
+ export declare const headers: WtTableHeader[];
@@ -0,0 +1,46 @@
1
+ export type FilterName = string;
2
+ export type FilterLabel = string;
3
+ export type FilterValue = object | [] | string | number | boolean | undefined | null;
4
+ /**
5
+ * represents user-input data, that should be (re)stored
6
+ */
7
+ export interface FilterData {
8
+ value: FilterValue;
9
+ label?: FilterLabel;
10
+ }
11
+ export interface FilterInitParams extends FilterData {
12
+ name: FilterName;
13
+ }
14
+ export interface FilterEnumOption {
15
+ locale: string;
16
+ value: FilterValue;
17
+ }
18
+ export interface FilterInstanceConfig {
19
+ /**
20
+ * Perform simple type conversion on store/restore,
21
+ * without need to provide custom store/restore functions
22
+ */
23
+ storableType?: string;
24
+ /**
25
+ * list of persistence storages that should be used for this filter
26
+ */
27
+ storage?: string[];
28
+ }
29
+ export interface IFilter {
30
+ name: FilterName;
31
+ value: FilterValue;
32
+ label?: FilterLabel;
33
+ set: (data: FilterData) => IFilter;
34
+ }
35
+ export declare class Filter implements IFilter {
36
+ payload: object | undefined;
37
+ config: FilterInstanceConfig;
38
+ readonly name: FilterName;
39
+ label: FilterLabel;
40
+ value: FilterValue;
41
+ constructor({ name, value, label }: FilterInitParams, payload: object | undefined, config: FilterInstanceConfig);
42
+ set({ value, label }: {
43
+ value?: FilterValue;
44
+ label?: FilterLabel;
45
+ }): IFilter;
46
+ }
@@ -0,0 +1,50 @@
1
+ import { FilterInitParams, FilterInstanceConfig, FilterLabel, FilterName, FilterValue, IFilter } from './Filter';
2
+ export interface IFiltersManager {
3
+ filters: Map<FilterName, IFilter>;
4
+ hasFilter: (name: FilterName) => boolean;
5
+ getFilter: (name: FilterName) => IFilter;
6
+ addFilter: (params: FilterInitParams, payload?: object, config?: FilterInstanceConfig) => IFilter;
7
+ updateFilter: ({ name, }: {
8
+ name: FilterName;
9
+ value?: FilterValue;
10
+ label?: FilterLabel;
11
+ }) => IFilter;
12
+ deleteFilter: (name: FilterName) => IFilter;
13
+ /**
14
+ * Converts filters data to String, that can be stored
15
+ */
16
+ toString: () => string;
17
+ /**
18
+ * Restores filters from string
19
+ */
20
+ fromString: (snapshotStr: string) => void;
21
+ /**
22
+ * deletes filters
23
+ * If include/exclude are not provided, all filters will be deleted
24
+ */
25
+ reset: ({ include, exclude, }?: {
26
+ include?: FilterName[];
27
+ exclude?: FilterName[];
28
+ }) => void;
29
+ /**
30
+ * @returns Array<FilterName>
31
+ */
32
+ getAllKeys: () => FilterName[];
33
+ /**
34
+ * @returns { FilterName: FilterValue }
35
+ */
36
+ getAllValues: () => {
37
+ [name: FilterName]: FilterValue;
38
+ };
39
+ /**
40
+ * @returns Array<IFilter>
41
+ * @param include
42
+ * @param exclude
43
+ */
44
+ getFiltersList: ({ include, exclude, }?: {
45
+ include?: FilterName[];
46
+ exclude?: FilterName[];
47
+ }) => IFilter[];
48
+ }
49
+ export type FiltersManagerConfig = FilterInstanceConfig;
50
+ export declare const createFiltersManager: (config?: FiltersManagerConfig) => IFiltersManager;
@@ -0,0 +1,11 @@
1
+ type __VLS_PublicProps = {
2
+ modelValue?: string;
3
+ };
4
+ declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
5
+ "update:modelValue": (value: string) => any;
6
+ "update:invalid": (args_0: boolean) => any;
7
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
8
+ "onUpdate:modelValue"?: (value: string) => any;
9
+ "onUpdate:invalid"?: (args_0: boolean) => any;
10
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
11
+ export default _default;
@@ -0,0 +1,16 @@
1
+ import { TFilterConfig } from "../../modules/filterConfig/classes/FilterConfig";
2
+ type __VLS_Props = {
3
+ filterConfig: TFilterConfig;
4
+ label?: string;
5
+ };
6
+ type __VLS_PublicProps = __VLS_Props & {
7
+ modelValue?: unknown;
8
+ };
9
+ declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
10
+ "update:modelValue": (value: unknown) => any;
11
+ "update:invalid": (args_0: boolean) => any;
12
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
13
+ "onUpdate:modelValue"?: (value: unknown) => any;
14
+ "onUpdate:invalid"?: (args_0: boolean) => any;
15
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
16
+ export default _default;
@@ -0,0 +1,93 @@
1
+ import { WtButton, WtSelect } from '@webitel/ui-sdk/components';
2
+ import { FilterInitParams, IFilter } from "../../classes/Filter";
3
+ import { BaseFilterConfig } from "../../modules/filterConfig/classes/FilterConfig";
4
+ import DynamicFilterConfigFormLabel from './dynamic-filter-config-form-label.vue';
5
+ import DynamicFilterConfigFormValueInput from "./dynamic-filter-config-form-value-input.vue";
6
+ type __VLS_Props = {
7
+ /**
8
+ * @description
9
+ * "Add" mode
10
+ */
11
+ filterConfigs?: BaseFilterConfig[];
12
+ /**
13
+ * @description
14
+ * "Edit" mode
15
+ */
16
+ filterConfig?: BaseFilterConfig;
17
+ /**
18
+ * @description
19
+ * Edited filter instance
20
+ */
21
+ filter?: IFilter;
22
+ };
23
+ declare const emit: ((evt: "submit", args_0: FilterInitParams) => void) & ((evt: "cancel") => void);
24
+ declare const t: import("vue-i18n").ComposerTranslation<{
25
+ [x: string]: import("@intlify/core-base").LocaleMessage<import("vue-i18n").VueMessageType>;
26
+ }, string, import("@intlify/core-base").RemoveIndexSignature<{
27
+ [x: string]: import("vue-i18n").LocaleMessageValue<import("vue-i18n").VueMessageType>;
28
+ }>, never, never, never>;
29
+ declare const filterName: import("vue").Ref<any, any>;
30
+ declare const filterLabel: import("vue").Ref<string, string>;
31
+ declare const filterValue: import("vue").Ref<any, any>;
32
+ declare const editMode: boolean;
33
+ declare const invalid: import("vue").Ref<boolean, boolean>;
34
+ declare const filterConfigOptions: import("vue").ComputedRef<BaseFilterConfig[]>;
35
+ declare const selectedFilterConfig: import("vue").ComputedRef<BaseFilterConfig>;
36
+ declare const onValueChange: (v: any) => void;
37
+ declare const onValueInvalidChange: (v: any) => void;
38
+ declare const valueInputLabelText: import("vue").ComputedRef<string>;
39
+ declare const onLabelValueUpdate: (val: string) => void;
40
+ declare const onFilterNameUpdate: (val: string) => void;
41
+ declare const submit: () => void;
42
+ declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
43
+ declare var __VLS_9: {
44
+ filterName: any;
45
+ filterValue: any;
46
+ inputLabel: string;
47
+ onValueChange: (v: any) => void;
48
+ onValueInvalidChange: (v: any) => void;
49
+ };
50
+ type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
51
+ 'value-input'?: (props: typeof __VLS_9) => any;
52
+ }>;
53
+ declare const __VLS_self: import("vue").DefineComponent<__VLS_Props, {
54
+ WtButton: typeof WtButton;
55
+ WtSelect: typeof WtSelect;
56
+ DynamicFilterConfigFormLabel: typeof DynamicFilterConfigFormLabel;
57
+ DynamicFilterConfigFormValueInput: typeof DynamicFilterConfigFormValueInput;
58
+ emit: typeof emit;
59
+ t: typeof t;
60
+ filterName: typeof filterName;
61
+ filterLabel: typeof filterLabel;
62
+ filterValue: typeof filterValue;
63
+ editMode: typeof editMode;
64
+ invalid: typeof invalid;
65
+ filterConfigOptions: typeof filterConfigOptions;
66
+ selectedFilterConfig: typeof selectedFilterConfig;
67
+ onValueChange: typeof onValueChange;
68
+ onValueInvalidChange: typeof onValueInvalidChange;
69
+ valueInputLabelText: typeof valueInputLabelText;
70
+ onLabelValueUpdate: typeof onLabelValueUpdate;
71
+ onFilterNameUpdate: typeof onFilterNameUpdate;
72
+ submit: typeof submit;
73
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
74
+ submit: (args_0: FilterInitParams) => any;
75
+ cancel: () => any;
76
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
77
+ onSubmit?: (args_0: FilterInitParams) => any;
78
+ onCancel?: () => any;
79
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
80
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
81
+ submit: (args_0: FilterInitParams) => any;
82
+ cancel: () => any;
83
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
84
+ onSubmit?: (args_0: FilterInitParams) => any;
85
+ onCancel?: () => any;
86
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
87
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
88
+ export default _default;
89
+ type __VLS_WithSlots<T, S> = T & {
90
+ new (): {
91
+ $slots: S;
92
+ };
93
+ };
@@ -0,0 +1,27 @@
1
+ import { WtTooltip } from '@webitel/ui-sdk/components';
2
+ interface Props {
3
+ disabled?: boolean;
4
+ disableClickAway?: boolean;
5
+ }
6
+ declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
7
+ declare var __VLS_5: {
8
+ tooltipSlotScope: any;
9
+ }, __VLS_7: {
10
+ tooltipSlotScope: any;
11
+ };
12
+ type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
13
+ activator?: (props: typeof __VLS_5) => any;
14
+ } & {
15
+ content?: (props: typeof __VLS_7) => any;
16
+ }>;
17
+ declare const __VLS_self: import("vue").DefineComponent<Props, {
18
+ WtTooltip: typeof WtTooltip;
19
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
20
+ declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
21
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
22
+ export default _default;
23
+ type __VLS_WithSlots<T, S> = T & {
24
+ new (): {
25
+ $slots: S;
26
+ };
27
+ };
@@ -0,0 +1,47 @@
1
+ import { WtIconAction } from '@webitel/ui-sdk/components';
2
+ import { FilterInitParams } from "../classes/Filter";
3
+ import { BaseFilterConfig } from "../modules/filterConfig/classes/FilterConfig";
4
+ import DynamicFilterConfigForm from './config/dynamic-filter-config-form.vue';
5
+ import DynamicFilterConfigView from './config/dynamic-filter-config-view.vue';
6
+ interface Props {
7
+ filterConfigs: BaseFilterConfig[];
8
+ showLabel?: boolean;
9
+ }
10
+ declare const t: import("vue-i18n").ComposerTranslation<{
11
+ [x: string]: import("@intlify/core-base").LocaleMessage<import("vue-i18n").VueMessageType>;
12
+ }, string, import("@intlify/core-base").RemoveIndexSignature<{
13
+ [x: string]: import("vue-i18n").LocaleMessageValue<import("vue-i18n").VueMessageType>;
14
+ }>, never, never, never>;
15
+ declare const submit: (payload: FilterInitParams, { hide }: {
16
+ hide: any;
17
+ }) => void;
18
+ declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
19
+ declare var __VLS_9: {
20
+ tooltipSlotScope: any;
21
+ };
22
+ type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
23
+ form?: (props: typeof __VLS_9) => any;
24
+ }>;
25
+ declare const __VLS_self: import("vue").DefineComponent<Props, {
26
+ WtIconAction: typeof WtIconAction;
27
+ DynamicFilterConfigForm: typeof DynamicFilterConfigForm;
28
+ DynamicFilterConfigView: typeof DynamicFilterConfigView;
29
+ t: typeof t;
30
+ submit: typeof submit;
31
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
32
+ "add:filter": (args_0: FilterInitParams) => any;
33
+ }, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
34
+ "onAdd:filter"?: (args_0: FilterInitParams) => any;
35
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
36
+ declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
37
+ "add:filter": (args_0: FilterInitParams) => any;
38
+ }, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
39
+ "onAdd:filter"?: (args_0: FilterInitParams) => any;
40
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
41
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
42
+ export default _default;
43
+ type __VLS_WithSlots<T, S> = T & {
44
+ new (): {
45
+ $slots: S;
46
+ };
47
+ };
@@ -0,0 +1,24 @@
1
+ import { ComponentSize } from '@webitel/ui-sdk/enums';
2
+ type __VLS_Props = {
3
+ size?: ComponentSize;
4
+ };
5
+ declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
6
+ declare var __VLS_1: {}, __VLS_3: {};
7
+ type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
8
+ filters?: (props: typeof __VLS_1) => any;
9
+ } & {
10
+ actions?: (props: typeof __VLS_3) => any;
11
+ }>;
12
+ declare const __VLS_self: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
13
+ size: ComponentSize;
14
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
15
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
16
+ size: ComponentSize;
17
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
18
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
19
+ export default _default;
20
+ type __VLS_WithSlots<T, S> = T & {
21
+ new (): {
22
+ $slots: S;
23
+ };
24
+ };
@@ -0,0 +1,16 @@
1
+ declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
2
+ declare var __VLS_1: {}, __VLS_7: {};
3
+ type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
4
+ header?: (props: typeof __VLS_1) => any;
5
+ } & {
6
+ default?: (props: typeof __VLS_7) => any;
7
+ }>;
8
+ declare const __VLS_self: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
9
+ declare const __VLS_component: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
10
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
11
+ export default _default;
12
+ type __VLS_WithSlots<T, S> = T & {
13
+ new (): {
14
+ $slots: S;
15
+ };
16
+ };
@@ -0,0 +1,72 @@
1
+ import { WtChip, WtIconBtn, WtLoader, WtTooltip } from '@webitel/ui-sdk/components';
2
+ import { FilterData, IFilter } from "../../classes/Filter";
3
+ import { TFilterConfig } from "../../modules/filterConfig/classes/FilterConfig";
4
+ import DynamicFilterConfigForm from '../config/dynamic-filter-config-form.vue';
5
+ import DynamicFilterConfigView from '../config/dynamic-filter-config-view.vue';
6
+ import DynamicFilterPreviewInfo from './dynamic-filter-preview-info.vue';
7
+ interface Props {
8
+ filter: IFilter;
9
+ /**
10
+ * @description
11
+ * this filter config
12
+ */
13
+ filterConfig: TFilterConfig;
14
+ readonly?: boolean;
15
+ }
16
+ declare const localValue: import("vue").Ref<any, any>;
17
+ /**
18
+ * @author @dlohvinov
19
+ *
20
+ * @description
21
+ * loading filters preview data -> main preview component
22
+ * instead of tooltip-components to avoid api requests spam
23
+ */
24
+ declare const fillLocalValue: (filter?: IFilter) => Promise<void>;
25
+ declare const isRenderPreview: import("vue").ComputedRef<any>;
26
+ declare const submit: (filter: IFilter, { hide }: {
27
+ hide: any;
28
+ }) => void;
29
+ declare const deleteFilter: () => void;
30
+ declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
31
+ declare var __VLS_28: {}, __VLS_38: {
32
+ tooltipSlotScope: any;
33
+ };
34
+ type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
35
+ info?: (props: typeof __VLS_28) => any;
36
+ } & {
37
+ form?: (props: typeof __VLS_38) => any;
38
+ }>;
39
+ declare const __VLS_self: import("vue").DefineComponent<Props, {
40
+ WtChip: typeof WtChip;
41
+ WtIconBtn: typeof WtIconBtn;
42
+ WtLoader: typeof WtLoader;
43
+ WtTooltip: typeof WtTooltip;
44
+ DynamicFilterConfigForm: typeof DynamicFilterConfigForm;
45
+ DynamicFilterConfigView: typeof DynamicFilterConfigView;
46
+ DynamicFilterPreviewInfo: typeof DynamicFilterPreviewInfo;
47
+ localValue: typeof localValue;
48
+ fillLocalValue: typeof fillLocalValue;
49
+ isRenderPreview: typeof isRenderPreview;
50
+ submit: typeof submit;
51
+ deleteFilter: typeof deleteFilter;
52
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
53
+ "update:filter": (args_0: FilterData) => any;
54
+ "delete:filter": (args_0: IFilter) => any;
55
+ }, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
56
+ "onUpdate:filter"?: (args_0: FilterData) => any;
57
+ "onDelete:filter"?: (args_0: IFilter) => any;
58
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
59
+ declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
60
+ "update:filter": (args_0: FilterData) => any;
61
+ "delete:filter": (args_0: IFilter) => any;
62
+ }, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
63
+ "onUpdate:filter"?: (args_0: FilterData) => any;
64
+ "onDelete:filter"?: (args_0: IFilter) => any;
65
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
66
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
67
+ export default _default;
68
+ type __VLS_WithSlots<T, S> = T & {
69
+ new (): {
70
+ $slots: S;
71
+ };
72
+ };
@@ -0,0 +1,22 @@
1
+ import { FilterInitParams, FilterName } from "../../classes/Filter";
2
+ import { IFiltersManager } from "../../classes/FiltersManager";
3
+ import type { DynamicFilterSearchSearchModeOption } from './types/DynamicFilterSearch';
4
+ type __VLS_Props = {
5
+ filtersManager: IFiltersManager;
6
+ searchModeOptions?: DynamicFilterSearchSearchModeOption[];
7
+ isFiltersRestoring?: boolean;
8
+ };
9
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
10
+ "filter:add": (args_0: FilterInitParams) => any;
11
+ "filter:update": (args_0: FilterInitParams) => any;
12
+ "filter:delete": (args_0: {
13
+ name: FilterName;
14
+ }) => any;
15
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
16
+ "onFilter:add"?: (args_0: FilterInitParams) => any;
17
+ "onFilter:update"?: (args_0: FilterInitParams) => any;
18
+ "onFilter:delete"?: (args_0: {
19
+ name: FilterName;
20
+ }) => any;
21
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
22
+ export default _default;
@@ -0,0 +1,65 @@
1
+ import { Store } from 'pinia';
2
+ import { WebitelProtoDataField } from "webitel-sdk";
3
+ import { FilterData, IFilter } from "../classes/Filter";
4
+ import { IFiltersManager } from "../classes/FiltersManager";
5
+ import { TFilterConfig } from "../modules/filterConfig/classes/FilterConfig";
6
+ import { FilterOption } from '../modules/filterConfig/enums/FilterOption';
7
+ type Props = {
8
+ /**
9
+ * @description
10
+ * available filter options to set
11
+ */
12
+ filterOptions: (FilterOption | TFilterConfig)[];
13
+ /**
14
+ * @description
15
+ * create local filters manager from snapshot
16
+ * inside save-preset.vue
17
+ */
18
+ filtersManager: IFiltersManager;
19
+ /**
20
+ * @author @dlohvinov
21
+ *
22
+ * @implements
23
+ * [WTEL-6702](https://webitel.atlassian.net/browse/WTEL-6702)
24
+ *
25
+ * @description
26
+ * Decided to pass fields as a prop instead of converting them to
27
+ * Props.filterOptions, because this functionality can be expanded to many
28
+ * filter panels
29
+ */
30
+ filterableExtensionFields?: WebitelProtoDataField[];
31
+ /**
32
+ * @description
33
+ * QueryPreset "section" field
34
+ */
35
+ presetNamespace?: string;
36
+ /**
37
+ * @author @dlohvinov
38
+ *
39
+ * @description
40
+ * table store for operating with presets as dataList.
41
+ * Seems to me like a bad idea, because apply-preset should not store
42
+ * any data in a specific store – component state should be enough.
43
+ * However as for now, there's no composable implementing this logic,
44
+ * so store is used instead.
45
+ *
46
+ * TODO: https://github.com/webitel/webitel-ui-sdk/pull/551
47
+ */
48
+ usePresetsStore?: Store;
49
+ };
50
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
51
+ "filter:add": (args_0: FilterData) => any;
52
+ "filter:update": (args_0: FilterData) => any;
53
+ "filter:delete": (args_0: IFilter) => any;
54
+ hide: () => any;
55
+ "filter:reset-all": () => any;
56
+ "preset:apply": (args_0: string) => any;
57
+ }, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
58
+ "onFilter:add"?: (args_0: FilterData) => any;
59
+ "onFilter:update"?: (args_0: FilterData) => any;
60
+ "onFilter:delete"?: (args_0: IFilter) => any;
61
+ onHide?: () => any;
62
+ "onFilter:reset-all"?: () => any;
63
+ "onPreset:apply"?: (args_0: string) => any;
64
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
65
+ export default _default;
@@ -0,0 +1,31 @@
1
+ import { ComputedRef } from 'vue';
2
+ import { WebitelProtoDataField } from 'webitel-sdk';
3
+ import { FilterName, IFilter } from '../classes/Filter';
4
+ import { IFiltersManager } from '../classes/FiltersManager';
5
+ import { BaseFilterConfig } from '../modules/filterConfig/classes/FilterConfig';
6
+ import { FilterOption } from '../modules/filterConfig/enums/FilterOption';
7
+ export type FilterConfigToolkit = {
8
+ filterConfigs: ComputedRef<BaseFilterConfig[]>;
9
+ /**
10
+ * @description
11
+ * some filters may be stored in filtersManager,
12
+ * but not included in this filters panel
13
+ */
14
+ filtersIncluded: ComputedRef<FilterName[]>;
15
+ appliedFilters: ComputedRef<IFilter[]>;
16
+ /**
17
+ * @description
18
+ * available filters to add, with appliedFilters excluded
19
+ */
20
+ unAppliedFiltersConfigs: ComputedRef<BaseFilterConfig[]>;
21
+ appliedFilterToFilterConfigMappings: ComputedRef<Array<{
22
+ filterConfig: BaseFilterConfig;
23
+ filter: IFilter;
24
+ }>>;
25
+ };
26
+ export type FilterConfigToolkitParams = {
27
+ filterOptions: (FilterOption | BaseFilterConfig)[];
28
+ filtersManager: IFiltersManager;
29
+ filterableExtensionFields: WebitelProtoDataField[];
30
+ };
31
+ export declare const useFilterConfigsToolkit: ({ filterOptions, filtersManager, filterableExtensionFields, }: FilterConfigToolkitParams) => FilterConfigToolkit;