@qrvey/filters 0.0.27 → 0.0.29

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 (43) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/cjs/classes/FilterBuilder.d.ts +13 -10
  3. package/dist/cjs/classes/FilterBuilder.d.ts.map +1 -1
  4. package/dist/cjs/classes/FilterBuilder.js +29 -15
  5. package/dist/cjs/classes/FilterValues.d.ts +33 -0
  6. package/dist/cjs/classes/FilterValues.d.ts.map +1 -0
  7. package/dist/cjs/classes/FilterValues.js +67 -0
  8. package/dist/cjs/classes/index.d.ts +1 -0
  9. package/dist/cjs/classes/index.d.ts.map +1 -1
  10. package/dist/cjs/classes/index.js +1 -0
  11. package/dist/cjs/helpers/filter-settings.helpers.d.ts +26 -7
  12. package/dist/cjs/helpers/filter-settings.helpers.d.ts.map +1 -1
  13. package/dist/cjs/helpers/filter-settings.helpers.js +56 -18
  14. package/dist/cjs/models/filter-builder.models.d.ts +9 -7
  15. package/dist/cjs/models/filter-builder.models.d.ts.map +1 -1
  16. package/dist/cjs/resources/filter-functions.resources.d.ts +43 -0
  17. package/dist/cjs/resources/filter-functions.resources.d.ts.map +1 -1
  18. package/dist/cjs/resources/filter-functions.resources.js +9 -1
  19. package/dist/classes/FilterBuilder.d.ts +13 -10
  20. package/dist/classes/FilterBuilder.d.ts.map +1 -1
  21. package/dist/classes/FilterBuilder.js +30 -16
  22. package/dist/classes/FilterValues.d.ts +33 -0
  23. package/dist/classes/FilterValues.d.ts.map +1 -0
  24. package/dist/classes/FilterValues.js +63 -0
  25. package/dist/classes/index.d.ts +1 -0
  26. package/dist/classes/index.d.ts.map +1 -1
  27. package/dist/classes/index.js +1 -0
  28. package/dist/helpers/filter-settings.helpers.d.ts +26 -7
  29. package/dist/helpers/filter-settings.helpers.d.ts.map +1 -1
  30. package/dist/helpers/filter-settings.helpers.js +52 -17
  31. package/dist/models/filter-builder.models.d.ts +9 -7
  32. package/dist/models/filter-builder.models.d.ts.map +1 -1
  33. package/dist/resources/filter-functions.resources.d.ts +43 -0
  34. package/dist/resources/filter-functions.resources.d.ts.map +1 -1
  35. package/dist/resources/filter-functions.resources.js +8 -0
  36. package/package.json +2 -2
  37. package/src/classes/FilterBuilder.ts +60 -18
  38. package/src/classes/FilterValues.ts +89 -0
  39. package/src/classes/index.ts +1 -0
  40. package/src/helpers/filter-settings.helpers.ts +74 -22
  41. package/src/models/filter-builder.models.ts +16 -6
  42. package/src/resources/filter-functions.resources.ts +57 -0
  43. package/tests/classes/FilterBuilder.test.ts +79 -10
package/CHANGELOG.md CHANGED
@@ -4,8 +4,21 @@ All notable changes to this project will be documented in this file. Dates are d
4
4
 
5
5
  Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
6
6
 
7
+ #### [v0.0.29](https://bitbucket.org/qrvey/qrvey_filters/compare/v0.0.29..v0.0.28)
8
+
9
+ - fix: adjusted addFilter module to change the operator based on the new criteria [`#6`](https://bitbucket.org/qrvey/qrvey_filters/pull-requests/6)
10
+ - chore :upgraded Qrvey Utils to latest version [`87be141`](https://bitbucket.org/qrvey/qrvey_filters/commits/87be141d628b77607b0daa50e5e5d371a0892650)
11
+
12
+ #### [v0.0.28](https://bitbucket.org/qrvey/qrvey_filters/compare/v0.0.28..v0.0.27)
13
+
14
+ > 10 January 2025
15
+
16
+ - chore: update qrvey utils to latest version [`#5`](https://bitbucket.org/qrvey/qrvey_filters/pull-requests/5)
17
+
7
18
  #### [v0.0.27](https://bitbucket.org/qrvey/qrvey_filters/compare/v0.0.27..v0.0.23)
8
19
 
20
+ > 17 December 2024
21
+
9
22
  - [Feature] Timezone Resources for Filters [`#4`](https://bitbucket.org/qrvey/qrvey_filters/pull-requests/4)
10
23
  - feat: added a new resource to transform filters into a new timezone [`f8572f2`](https://bitbucket.org/qrvey/qrvey_filters/commits/f8572f248612365921ef90f3588500438b46129a)
11
24
  - fix: adjusted some processes when the ID is not set [`79083ff`](https://bitbucket.org/qrvey/qrvey_filters/commits/79083ff839660abff9f13e1608bd53e998615d52)
@@ -1,5 +1,5 @@
1
1
  import { IFilterBuilderAdd, IFilterBuilderAddValue, IFilterBuilderDelete, IFilterBuilderDeleteValue, IFilterBuilderEdit, IFilterBuilderEditValue, IFilterBuilderMerge, IFilterBuilderMergeValue, IFilterBuilderMultipleReturn, IFilterBuilderSet, IFilterBuilderSingleReturn } from "../models/filter-builder.models";
2
- import { IFilterBuilderEditSettings, IFilterParamSettings } from "../resources/filter-functions.resources";
2
+ import { IFilterAddSettings, IFilterBuilderEditSettings, IFilterCreateSettings, IFilterMergeSettings, IFilterParamSettings, IFilterReplaceParamSettings } from "../resources/filter-functions.resources";
3
3
  import { IFilterValue } from "../resources/filter-values.resources";
4
4
  import { IFilter } from "../resources/filters.resources";
5
5
  /**
@@ -25,19 +25,20 @@ export declare class FilterBuilder implements IFilterBuilderAdd, IFilterBuilderA
25
25
  * Adds various filter into the collection.
26
26
  * Inserts them next to the last similar filter
27
27
  * @param newFilters the filter to add
28
- * @param automaticId flag to generate a new filter ID based on the filter info
28
+ * @param settings the settings object to setup this function
29
29
  * @returns the new collection of filters
30
30
  */
31
- addMutiple(newFilters: IFilter[], automaticId?: boolean): IFilterBuilderMultipleReturn;
31
+ addMutiple(newFilters: IFilter[], settings?: IFilterAddSettings): IFilterBuilderMultipleReturn;
32
32
  /**
33
33
  * Adds one filter into the collection.
34
34
  * - Inserts it next to the last similar filter
35
+ * - If the new one is match with the last similar filter, the operator will change to OR
35
36
  * - If the id is not provided, a new one is created.
36
37
  * @param filter the filter to add
37
- * @param automaticId flag to generate a new filter ID based on the filter info
38
+ * @param settings settings object to setup this function
38
39
  * @returns the new collection of filters
39
40
  */
40
- addSingle(filter: IFilter, automaticId?: boolean): IFilterBuilderSingleReturn;
41
+ addSingle(filter: IFilter, settings?: IFilterAddSettings): IFilterBuilderSingleReturn;
41
42
  /**
42
43
  * Adds one value from filter
43
44
  * @param id the ID to search the filter to add value
@@ -135,15 +136,17 @@ export declare class FilterBuilder implements IFilterBuilderAdd, IFilterBuilderA
135
136
  /**
136
137
  * Merge the filter into the collection by some filter parameters
137
138
  * @param filter the filter to merge
139
+ * @param settings the settings object to setup this function
138
140
  * @returns the new filter collection
139
141
  */
140
- mergeSingle(filter: IFilter): IFilterBuilderSingleReturn;
142
+ mergeSingle(filter: IFilter, settings?: IFilterMergeSettings): IFilterBuilderSingleReturn;
141
143
  /**
142
144
  * Merge the filters into the collection by some filter parameters
143
145
  * @param filters the filter collection to merge
146
+ * @param settings the settings object to setup this function
144
147
  * @returns the new filter collection
145
148
  */
146
- mergeMutiple(filters: IFilter[]): IFilterBuilderMultipleReturn;
149
+ mergeMutiple(filters: IFilter[], settings?: IFilterMergeSettings): IFilterBuilderMultipleReturn;
147
150
  /**
148
151
  * Merge values from filter
149
152
  * @param id the ID to search the filter to merge values
@@ -159,10 +162,10 @@ export declare class FilterBuilder implements IFilterBuilderAdd, IFilterBuilderA
159
162
  /**
160
163
  * Builds an filter structure based on given params
161
164
  * @param filter the partial filter params
162
- * @param automaticId flag to generate a new filter ID based on the filter info
165
+ * @param settings the settings object to setup this function
163
166
  * @returns the complete filter structure
164
167
  */
165
- static createFilter(filter: Partial<IFilter>, automaticId?: boolean): IFilter;
168
+ static createFilter(filter: Partial<IFilter>, settings?: IFilterCreateSettings): IFilter;
166
169
  /**
167
170
  * Sets the given filters by param
168
171
  * - Remove the filters by the sucesfull conditions and replace the given ones
@@ -171,7 +174,7 @@ export declare class FilterBuilder implements IFilterBuilderAdd, IFilterBuilderA
171
174
  * @param settings settings for this function
172
175
  * @returns the new collection of filters
173
176
  */
174
- replaceByParams(filters: IFilter[], params: Partial<IFilter>, settings?: IFilterParamSettings): IFilterBuilderMultipleReturn;
177
+ replaceByParams(filters: IFilter[], params: Partial<IFilter>, settings?: IFilterReplaceParamSettings): IFilterBuilderMultipleReturn;
175
178
  /**
176
179
  * Method to sync the Filter instances
177
180
  */
@@ -1 +1 @@
1
- {"version":3,"file":"FilterBuilder.d.ts","sourceRoot":"","sources":["../../../src/classes/FilterBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FilterBuilder.d.ts","sourceRoot":"","sources":["../../../src/classes/FilterBuilder.ts"],"names":[],"mappings":"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"}
@@ -4,9 +4,11 @@ exports.FilterBuilder = void 0;
4
4
  const utils_1 = require("@qrvey/utils");
5
5
  const FilterSearcher_1 = require("./FilterSearcher");
6
6
  const FilterValidation_1 = require("./FilterValidation");
7
+ const FilterValues_1 = require("./FilterValues");
7
8
  const filter_settings_helpers_1 = require("../helpers/filter-settings.helpers");
8
9
  const getFilterId_1 = require("../helpers/getFilterId");
9
10
  const getFilterType_1 = require("../helpers/getFilterType");
11
+ const filter_operators_resources_1 = require("../resources/filter-operators.resources");
10
12
  const filters_resources_1 = require("../resources/filters.resources");
11
13
  /**
12
14
  * Class to build new filters and manipulate ones.
@@ -35,17 +37,17 @@ class FilterBuilder {
35
37
  * Adds various filter into the collection.
36
38
  * Inserts them next to the last similar filter
37
39
  * @param newFilters the filter to add
38
- * @param automaticId flag to generate a new filter ID based on the filter info
40
+ * @param settings the settings object to setup this function
39
41
  * @returns the new collection of filters
40
42
  */
41
- addMutiple(newFilters, automaticId = true) {
43
+ addMutiple(newFilters, settings) {
42
44
  if ((0, utils_1.isEmpty)(newFilters))
43
45
  return { resulting: this.filters };
44
46
  const filters = (0, utils_1.objectCopy)(this.filters);
45
47
  const affected = [];
46
48
  try {
47
49
  newFilters.forEach((newFilter) => {
48
- const affectedFilter = this.addSingle(newFilter, automaticId);
50
+ const affectedFilter = this.addSingle(newFilter, settings);
49
51
  affected.push(affectedFilter.affected);
50
52
  });
51
53
  }
@@ -63,19 +65,21 @@ class FilterBuilder {
63
65
  /**
64
66
  * Adds one filter into the collection.
65
67
  * - Inserts it next to the last similar filter
68
+ * - If the new one is match with the last similar filter, the operator will change to OR
66
69
  * - If the id is not provided, a new one is created.
67
70
  * @param filter the filter to add
68
- * @param automaticId flag to generate a new filter ID based on the filter info
71
+ * @param settings settings object to setup this function
69
72
  * @returns the new collection of filters
70
73
  */
71
- addSingle(filter, automaticId = true) {
74
+ addSingle(filter, settings) {
72
75
  if ((0, utils_1.isEmpty)(filter))
73
76
  return { resulting: this.filters };
74
77
  if (FilterValidation_1.FilterValidation.isDuplicated(this.filters, filter))
75
78
  return { resulting: this.filters };
76
79
  const original = { ...filter };
77
80
  const newFilter = { ...filter };
78
- if ((0, utils_1.isEmpty)(filter.id) || automaticId)
81
+ const newSettings = (0, filter_settings_helpers_1.getFilterAddSettings)(settings);
82
+ if ((0, utils_1.isEmpty)(filter.id) || newSettings.automaticId)
79
83
  newFilter.id = (0, getFilterId_1.getFilterId)(newFilter);
80
84
  const lastIndex = (0, utils_1.getLastIndexFromArray)(this.filters, (aFilter) => aFilter.columnId === newFilter.columnId &&
81
85
  aFilter.datasetId === newFilter.datasetId &&
@@ -83,6 +87,8 @@ class FilterBuilder {
83
87
  aFilter.scopeId === newFilter.scopeId);
84
88
  if (lastIndex > -1) {
85
89
  this.filters.splice(lastIndex + 1, 0, newFilter);
90
+ if (newSettings.automaticOperator)
91
+ this.filters[lastIndex].operator = filter_operators_resources_1.FILTER_OPERATOR.OR;
86
92
  }
87
93
  else {
88
94
  this.filters.push(newFilter);
@@ -395,9 +401,10 @@ class FilterBuilder {
395
401
  /**
396
402
  * Merge the filter into the collection by some filter parameters
397
403
  * @param filter the filter to merge
404
+ * @param settings the settings object to setup this function
398
405
  * @returns the new filter collection
399
406
  */
400
- mergeSingle(filter) {
407
+ mergeSingle(filter, settings) {
401
408
  if ((0, utils_1.isEmpty)(filter))
402
409
  return { resulting: this.filters };
403
410
  const filterIndex = this.searchEngine.findIndexByParams({
@@ -416,7 +423,7 @@ class FilterBuilder {
416
423
  affected = affectedMergeFilter;
417
424
  }
418
425
  else {
419
- const { affected: affectedAddSingle } = this.addSingle(filter);
426
+ const { affected: affectedAddSingle } = this.addSingle(filter, settings);
420
427
  affected = affectedAddSingle;
421
428
  }
422
429
  return {
@@ -428,16 +435,17 @@ class FilterBuilder {
428
435
  /**
429
436
  * Merge the filters into the collection by some filter parameters
430
437
  * @param filters the filter collection to merge
438
+ * @param settings the settings object to setup this function
431
439
  * @returns the new filter collection
432
440
  */
433
- mergeMutiple(filters) {
441
+ mergeMutiple(filters, settings) {
434
442
  if (!Array.isArray(filters) || (0, utils_1.isEmpty)(filters))
435
443
  return { resulting: this.filters };
436
444
  const originalFilters = (0, utils_1.objectCopy)(this.filters);
437
445
  const mergedFilters = [];
438
446
  try {
439
447
  filters.forEach((filter) => {
440
- const mergedFilter = this.mergeSingle(filter);
448
+ const mergedFilter = this.mergeSingle(filter, settings);
441
449
  mergedFilters.push(mergedFilter.affected);
442
450
  });
443
451
  }
@@ -504,10 +512,11 @@ class FilterBuilder {
504
512
  /**
505
513
  * Builds an filter structure based on given params
506
514
  * @param filter the partial filter params
507
- * @param automaticId flag to generate a new filter ID based on the filter info
515
+ * @param settings the settings object to setup this function
508
516
  * @returns the complete filter structure
509
517
  */
510
- static createFilter(filter, automaticId = true) {
518
+ static createFilter(filter, settings) {
519
+ const newSettings = (0, filter_settings_helpers_1.getFilterCreateSettings)(settings);
511
520
  const newFilter = {
512
521
  ...filters_resources_1.DEFAULT_FILTER,
513
522
  aggregateType: filter.aggregateType ?? filters_resources_1.DEFAULT_FILTER.aggregateType,
@@ -530,8 +539,12 @@ class FilterBuilder {
530
539
  selectAll: filter.selectAll ?? filters_resources_1.DEFAULT_FILTER.selectAll,
531
540
  values: filter.values || filters_resources_1.DEFAULT_FILTER.values,
532
541
  };
533
- if ((0, utils_1.isEmpty)(filter.id) || automaticId)
542
+ if ((0, utils_1.isEmpty)(filter.id) || newSettings.automaticId)
534
543
  newFilter.id = (0, getFilterId_1.getFilterId)(newFilter);
544
+ if (!(0, utils_1.isEmpty)(newSettings.rawValues)) {
545
+ const filterType = (0, getFilterType_1.getFilterType)(newFilter.columnType, newFilter.validator);
546
+ newFilter.values = FilterValues_1.FilterValues.getFilterValues(filterType, newSettings.rawValues);
547
+ }
535
548
  return newFilter;
536
549
  }
537
550
  /**
@@ -544,8 +557,9 @@ class FilterBuilder {
544
557
  */
545
558
  replaceByParams(filters, params, settings) {
546
559
  const original = (0, utils_1.objectCopy)(this.filters);
547
- this.filters = this.searchEngine.excludeByParams(params, settings);
548
- const resulting = this.addMutiple(filters);
560
+ const newSettings = (0, filter_settings_helpers_1.getReplaceByParamsSettings)(settings);
561
+ this.filters = this.searchEngine.excludeByParams(params, newSettings);
562
+ const resulting = this.addMutiple(filters, newSettings);
549
563
  this.sync();
550
564
  return {
551
565
  resulting: this.filters,
@@ -0,0 +1,33 @@
1
+ import { IFilterInputValue, IFilterInputValueRange, IFilterInputValueRegular, IFilterInputValueRelativeDate, IFilterValueRange, IFilterValueRegular, IFilterValueRelativeDate } from "../resources/filter-values.resources";
2
+ import { IFilterType } from "../resources/filters.resources";
3
+ /**
4
+ * Class to manipulate filter values and input values
5
+ */
6
+ export declare class FilterValues {
7
+ /**
8
+ * Gets the Filter Values based on Regular Input values
9
+ * @param values the regular input values
10
+ * @returns the Filter Regular Values
11
+ */
12
+ static getFilterRegularValues(values?: IFilterInputValueRegular[]): IFilterValueRegular[];
13
+ /**
14
+ * Gets the Filter Values based on Range Input values
15
+ * @param values the range input values
16
+ * @returns the Filter Range Values
17
+ */
18
+ static getFilterRangeValues(values?: IFilterInputValueRange[]): IFilterValueRange[];
19
+ /**
20
+ * Gets the Filter Values based on Relative Input values
21
+ * @param values the relative range input value
22
+ * @returns the Filter Relative Value
23
+ */
24
+ static getFilterRelativeValues(values?: IFilterInputValueRelativeDate[]): IFilterValueRelativeDate[];
25
+ /**
26
+ * Gets the Filter Values based on the flter type
27
+ * @param filterType the filter type
28
+ * @param values the input values
29
+ * @returns the Filter Values
30
+ */
31
+ static getFilterValues(filterType: IFilterType, values?: IFilterInputValue[]): IFilterValueRegular[];
32
+ }
33
+ //# sourceMappingURL=FilterValues.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterValues.d.ts","sourceRoot":"","sources":["../../../src/classes/FilterValues.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,wBAAwB,EACxB,6BAA6B,EAC7B,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACzB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAe,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAE1E;;GAEG;AACH,qBAAa,YAAY;IACvB;;;;OAIG;WACW,sBAAsB,CAClC,MAAM,GAAE,wBAAwB,EAAO,GACtC,mBAAmB,EAAE;IAQxB;;;;OAIG;WACW,oBAAoB,CAChC,MAAM,GAAE,sBAAsB,EAAO,GACpC,iBAAiB,EAAE;IAStB;;;;OAIG;WACW,uBAAuB,CACnC,MAAM,GAAE,6BAA6B,EAAO,GAC3C,wBAAwB,EAAE;IAQ7B;;;;;OAKG;IACH,MAAM,CAAC,eAAe,CACpB,UAAU,EAAE,WAAW,EACvB,MAAM,GAAE,iBAAiB,EAAO,GAC/B,mBAAmB,EAAE;CAkBzB"}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FilterValues = void 0;
4
+ const filters_resources_1 = require("../resources/filters.resources");
5
+ /**
6
+ * Class to manipulate filter values and input values
7
+ */
8
+ class FilterValues {
9
+ /**
10
+ * Gets the Filter Values based on Regular Input values
11
+ * @param values the regular input values
12
+ * @returns the Filter Regular Values
13
+ */
14
+ static getFilterRegularValues(values = []) {
15
+ return values.map((value) => ({
16
+ displayed: true,
17
+ enabled: true,
18
+ value: `${value}`,
19
+ }));
20
+ }
21
+ /**
22
+ * Gets the Filter Values based on Range Input values
23
+ * @param values the range input values
24
+ * @returns the Filter Range Values
25
+ */
26
+ static getFilterRangeValues(values = []) {
27
+ return values.map((value) => ({
28
+ displayed: true,
29
+ enabled: true,
30
+ max: value.max,
31
+ min: value.min,
32
+ }));
33
+ }
34
+ /**
35
+ * Gets the Filter Values based on Relative Input values
36
+ * @param values the relative range input value
37
+ * @returns the Filter Relative Value
38
+ */
39
+ static getFilterRelativeValues(values = []) {
40
+ return values.map((value) => ({
41
+ displayed: true,
42
+ enabled: true,
43
+ ...value,
44
+ }));
45
+ }
46
+ /**
47
+ * Gets the Filter Values based on the flter type
48
+ * @param filterType the filter type
49
+ * @param values the input values
50
+ * @returns the Filter Values
51
+ */
52
+ static getFilterValues(filterType, values = []) {
53
+ switch (filterType) {
54
+ case filters_resources_1.FILTER_TYPE.REGULAR:
55
+ return FilterValues.getFilterRegularValues(values);
56
+ case filters_resources_1.FILTER_TYPE.RANGE:
57
+ return FilterValues.getFilterRangeValues(values);
58
+ case filters_resources_1.FILTER_TYPE.RELATIVE:
59
+ return FilterValues.getFilterRelativeValues(values);
60
+ case filters_resources_1.FILTER_TYPE.NULL:
61
+ return [];
62
+ default:
63
+ return [];
64
+ }
65
+ }
66
+ }
67
+ exports.FilterValues = FilterValues;
@@ -3,4 +3,5 @@ export * from "./FilterBuilder";
3
3
  export * from "./FilterManager";
4
4
  export * from "./FilterResources";
5
5
  export * from "./FilterSearcher";
6
+ export * from "./FilterValues";
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/classes/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/classes/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC"}
@@ -19,3 +19,4 @@ __exportStar(require("./FilterBuilder"), exports);
19
19
  __exportStar(require("./FilterManager"), exports);
20
20
  __exportStar(require("./FilterResources"), exports);
21
21
  __exportStar(require("./FilterSearcher"), exports);
22
+ __exportStar(require("./FilterValues"), exports);
@@ -1,23 +1,42 @@
1
- import { IFilterBuilderEditSettings, IFilterGroupingInfoListByColumnSettings, IFilterParamSettings } from "../resources/filter-functions.resources";
1
+ import { IFilterAddSettings, IFilterBuilderEditSettings, IFilterCreateSettings, IFilterGroupingInfoListByColumnSettings, IFilterParamSettings, IFilterReplaceParamSettings } from "../resources/filter-functions.resources";
2
2
  /**
3
- * Gets a complete settings for the param settings
3
+ * Gets a complete settings for the edit filters settings
4
4
  * - Fills the missing properties with default ones
5
5
  * @param settings the settings
6
6
  * @returns the complete settings
7
7
  */
8
- export declare function getParamFiltersSettings(settings?: IFilterParamSettings): IFilterParamSettings;
8
+ export declare function getEditFiltersSettings(settings?: IFilterBuilderEditSettings): IFilterBuilderEditSettings;
9
9
  /**
10
- * Gets a complete settings for the edit filters settings
10
+ * Gets a complete settings for the filter-create settings
11
+ * @param settings the filter-create settings
12
+ * @returns the complete filter-create settings
13
+ */
14
+ export declare function getFilterAddSettings(settings?: IFilterAddSettings): IFilterAddSettings;
15
+ /**
16
+ * Gets a complete settings for the filter-create settings
17
+ * @param settings the filter-create settings
18
+ * @returns the complete filter-create settings
19
+ */
20
+ export declare function getFilterCreateSettings(settings?: IFilterCreateSettings): IFilterCreateSettings;
21
+ /**
22
+ * Gets a complete settings for the info grouping by column settings
11
23
  * - Fills the missing properties with default ones
12
24
  * @param settings the settings
13
25
  * @returns the complete settings
14
26
  */
15
- export declare function getEditFiltersSettings(settings?: IFilterBuilderEditSettings): IFilterBuilderEditSettings;
27
+ export declare function getInfoGroupingsByColumnTypeSettings(settings?: IFilterGroupingInfoListByColumnSettings): IFilterGroupingInfoListByColumnSettings;
16
28
  /**
17
- * Gets a complete settings for the info grouping by column settings
29
+ * Gets a complete settings for the param settings
18
30
  * - Fills the missing properties with default ones
19
31
  * @param settings the settings
20
32
  * @returns the complete settings
21
33
  */
22
- export declare function getInfoGroupingsByColumnTypeSettings(settings?: IFilterGroupingInfoListByColumnSettings): IFilterGroupingInfoListByColumnSettings;
34
+ export declare function getParamFiltersSettings(settings?: IFilterParamSettings): IFilterParamSettings;
35
+ /**
36
+ * Gets a complete settings for the replaceByParams settings
37
+ * - Fills the missing properties with default ones
38
+ * @param settings the settings
39
+ * @returns the complete settings
40
+ */
41
+ export declare function getReplaceByParamsSettings(settings?: IFilterReplaceParamSettings): IFilterReplaceParamSettings;
23
42
  //# sourceMappingURL=filter-settings.helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter-settings.helpers.d.ts","sourceRoot":"","sources":["../../../src/helpers/filter-settings.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,0BAA0B,EAC1B,uCAAuC,EACvC,oBAAoB,EACrB,MAAM,yCAAyC,CAAC;AAEjD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,oBAAoB,CAYtB;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,CAAC,EAAE,0BAA0B,GACpC,0BAA0B,CAQ5B;AAED;;;;;GAKG;AACH,wBAAgB,oCAAoC,CAClD,QAAQ,CAAC,EAAE,uCAAuC,GACjD,uCAAuC,CAkBzC"}
1
+ {"version":3,"file":"filter-settings.helpers.d.ts","sourceRoot":"","sources":["../../../src/helpers/filter-settings.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,kBAAkB,EAClB,0BAA0B,EAC1B,qBAAqB,EACrB,uCAAuC,EACvC,oBAAoB,EACpB,2BAA2B,EAC5B,MAAM,yCAAyC,CAAC;AAEjD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,CAAC,EAAE,0BAA0B,GACpC,0BAA0B,CAQ5B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,CAAC,EAAE,kBAAkB,GAC5B,kBAAkB,CAQpB;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,CAAC,EAAE,qBAAqB,GAC/B,qBAAqB,CAMvB;AAED;;;;;GAKG;AACH,wBAAgB,oCAAoC,CAClD,QAAQ,CAAC,EAAE,uCAAuC,GACjD,uCAAuC,CAkBzC;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,oBAAoB,CAYtB;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,CAAC,EAAE,2BAA2B,GACrC,2BAA2B,CAK7B"}
@@ -1,24 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getInfoGroupingsByColumnTypeSettings = exports.getEditFiltersSettings = exports.getParamFiltersSettings = void 0;
3
+ exports.getReplaceByParamsSettings = exports.getParamFiltersSettings = exports.getInfoGroupingsByColumnTypeSettings = exports.getFilterCreateSettings = exports.getFilterAddSettings = exports.getEditFiltersSettings = void 0;
4
4
  const filter_functions_resources_1 = require("../resources/filter-functions.resources");
5
- /**
6
- * Gets a complete settings for the param settings
7
- * - Fills the missing properties with default ones
8
- * @param settings the settings
9
- * @returns the complete settings
10
- */
11
- function getParamFiltersSettings(settings) {
12
- return {
13
- letPassUndefinedParams: settings?.letPassUndefinedParams ??
14
- filter_functions_resources_1.DEFAULT_FILTERS_PARAM_SETTINGS.letPassUndefinedParams,
15
- letPassUndefinedProperties: settings?.letPassUndefinedProperties ??
16
- filter_functions_resources_1.DEFAULT_FILTERS_PARAM_SETTINGS.letPassUndefinedProperties,
17
- removeEmptyArrays: settings?.removeEmptyArrays ??
18
- filter_functions_resources_1.DEFAULT_FILTERS_PARAM_SETTINGS.removeEmptyArrays,
19
- };
20
- }
21
- exports.getParamFiltersSettings = getParamFiltersSettings;
22
5
  /**
23
6
  * Gets a complete settings for the edit filters settings
24
7
  * - Fills the missing properties with default ones
@@ -33,6 +16,31 @@ function getEditFiltersSettings(settings) {
33
16
  };
34
17
  }
35
18
  exports.getEditFiltersSettings = getEditFiltersSettings;
19
+ /**
20
+ * Gets a complete settings for the filter-create settings
21
+ * @param settings the filter-create settings
22
+ * @returns the complete filter-create settings
23
+ */
24
+ function getFilterAddSettings(settings) {
25
+ return {
26
+ automaticId: settings?.automaticId ?? filter_functions_resources_1.DEFAULT_FILTER_ADD_SETTINGS.automaticId,
27
+ automaticOperator: settings?.automaticOperator ??
28
+ filter_functions_resources_1.DEFAULT_FILTER_ADD_SETTINGS.automaticOperator,
29
+ };
30
+ }
31
+ exports.getFilterAddSettings = getFilterAddSettings;
32
+ /**
33
+ * Gets a complete settings for the filter-create settings
34
+ * @param settings the filter-create settings
35
+ * @returns the complete filter-create settings
36
+ */
37
+ function getFilterCreateSettings(settings) {
38
+ return {
39
+ automaticId: settings?.automaticId ?? filter_functions_resources_1.DEFAULT_FILTER_CREATE_SETTINGS.automaticId,
40
+ rawValues: settings?.rawValues ?? filter_functions_resources_1.DEFAULT_FILTER_CREATE_SETTINGS.rawValues,
41
+ };
42
+ }
43
+ exports.getFilterCreateSettings = getFilterCreateSettings;
36
44
  /**
37
45
  * Gets a complete settings for the info grouping by column settings
38
46
  * - Fills the missing properties with default ones
@@ -54,3 +62,33 @@ function getInfoGroupingsByColumnTypeSettings(settings) {
54
62
  };
55
63
  }
56
64
  exports.getInfoGroupingsByColumnTypeSettings = getInfoGroupingsByColumnTypeSettings;
65
+ /**
66
+ * Gets a complete settings for the param settings
67
+ * - Fills the missing properties with default ones
68
+ * @param settings the settings
69
+ * @returns the complete settings
70
+ */
71
+ function getParamFiltersSettings(settings) {
72
+ return {
73
+ letPassUndefinedParams: settings?.letPassUndefinedParams ??
74
+ filter_functions_resources_1.DEFAULT_FILTERS_PARAM_SETTINGS.letPassUndefinedParams,
75
+ letPassUndefinedProperties: settings?.letPassUndefinedProperties ??
76
+ filter_functions_resources_1.DEFAULT_FILTERS_PARAM_SETTINGS.letPassUndefinedProperties,
77
+ removeEmptyArrays: settings?.removeEmptyArrays ??
78
+ filter_functions_resources_1.DEFAULT_FILTERS_PARAM_SETTINGS.removeEmptyArrays,
79
+ };
80
+ }
81
+ exports.getParamFiltersSettings = getParamFiltersSettings;
82
+ /**
83
+ * Gets a complete settings for the replaceByParams settings
84
+ * - Fills the missing properties with default ones
85
+ * @param settings the settings
86
+ * @returns the complete settings
87
+ */
88
+ function getReplaceByParamsSettings(settings) {
89
+ return {
90
+ ...settings,
91
+ automaticOperator: settings?.automaticOperator ?? false,
92
+ };
93
+ }
94
+ exports.getReplaceByParamsSettings = getReplaceByParamsSettings;
@@ -1,4 +1,4 @@
1
- import { IFilterBuilderEditSettings, IFilterParamSettings } from "../resources/filter-functions.resources";
1
+ import { IFilterAddSettings, IFilterBuilderEditSettings, IFilterMergeSettings, IFilterParamSettings } from "../resources/filter-functions.resources";
2
2
  import { IFilterValue } from "../resources/filter-values.resources";
3
3
  import { IFilter } from "../resources/filters.resources";
4
4
  /**
@@ -9,18 +9,18 @@ export interface IFilterBuilderAdd {
9
9
  * Adds one filter into the collection.
10
10
  * Inserts it next to the last similar filter
11
11
  * @param newFilter the filter to add
12
- * @param automaticId flag to generate a new filter ID based on the filter info
12
+ * @param settings the settings object to setup this function
13
13
  * @returns the new collection of filters
14
14
  */
15
- addSingle: (filter: IFilter, automaticId?: boolean) => IFilterBuilderSingleReturn;
15
+ addSingle: (filter: IFilter, settings?: IFilterAddSettings) => IFilterBuilderSingleReturn;
16
16
  /**
17
17
  * Adds various filter into the collection.
18
18
  * Inserts them next to the last similar filter
19
19
  * @param newFilters the filter to add
20
- * @param automaticId flag to generate a new filter ID based on the filter info
20
+ * @param settings the settings object to setup this function
21
21
  * @returns the new collection of filters
22
22
  */
23
- addMutiple: (filter: IFilter[], automaticId?: boolean) => IFilterBuilderMultipleReturn;
23
+ addMutiple: (filter: IFilter[], settings?: IFilterAddSettings) => IFilterBuilderMultipleReturn;
24
24
  }
25
25
  /**
26
26
  * Structure module for the editing filter values
@@ -126,15 +126,17 @@ export interface IFilterBuilderMerge {
126
126
  /**
127
127
  * Merge the filter into the collection by some filter parameters
128
128
  * @param filter the filter to merge
129
+ * @param settings the settings object to setup this function
129
130
  * @returns the new filter collection
130
131
  */
131
- mergeSingle: (filter: IFilter) => IFilterBuilderSingleReturn;
132
+ mergeSingle: (filter: IFilter, settings?: IFilterMergeSettings) => IFilterBuilderSingleReturn;
132
133
  /**
133
134
  * Merge the filters into the collection by some filter parameters
134
135
  * @param filters the filter collection to merge
136
+ * @param settings the settings object to setup this function
135
137
  * @returns the new filter collection
136
138
  */
137
- mergeMutiple: (filters: IFilter[]) => IFilterBuilderMultipleReturn;
139
+ mergeMutiple: (filters: IFilter[], settings?: IFilterMergeSettings) => IFilterBuilderMultipleReturn;
138
140
  }
139
141
  /**
140
142
  * Structure module for the editing filter values
@@ -1 +1 @@
1
- {"version":3,"file":"filter-builder.models.d.ts","sourceRoot":"","sources":["../../../src/models/filter-builder.models.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filter-builder.models.d.ts","sourceRoot":"","sources":["../../../src/models/filter-builder.models.ts"],"names":[],"mappings":"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"}