@qrvey/filters 0.0.44 → 0.1.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.
- package/README.md +63 -1
- package/dist/cjs/classes/FilterAdapter.js +1 -80
- package/dist/cjs/classes/FilterBuilder.js +33 -251
- package/dist/cjs/classes/FilterManager.js +7 -64
- package/dist/cjs/classes/FilterResources.js +3 -116
- package/dist/cjs/classes/FilterSearcher.js +0 -77
- package/dist/cjs/classes/FilterValidation.js +0 -93
- package/dist/cjs/classes/FilterValues.js +0 -24
- package/dist/cjs/classes/index.js +8 -21
- package/dist/cjs/helpers/filter-adapt.helpers.js +3 -46
- package/dist/cjs/helpers/filter-adapt.legacy.helpers.js +6 -53
- package/dist/cjs/helpers/filter-adapt.logic.helpers.js +7 -128
- package/dist/cjs/helpers/filter-builder.helpers.js +1 -8
- package/dist/cjs/helpers/filter-settings.helpers.js +6 -41
- package/dist/cjs/helpers/filter-validators.helpers.js +15 -9
- package/dist/cjs/helpers/filter-verbose.helpers.js +211 -0
- package/dist/cjs/helpers/getAggregateFilters.js +11 -0
- package/dist/cjs/helpers/getFilterId.js +1 -17
- package/dist/cjs/helpers/getFilterType.js +1 -8
- package/dist/cjs/helpers/index.js +12 -20
- package/dist/cjs/helpers/isDateDistinctGrouping.js +15 -0
- package/dist/cjs/helpers/isRankingFilter.js +10 -0
- package/dist/cjs/helpers/resolveFilterConditions.js +2 -10
- package/dist/cjs/helpers/utils.helpers.js +2 -19
- package/dist/cjs/index.js +5 -18
- package/dist/cjs/models/index.js +4 -17
- package/dist/cjs/resources/filter-grouping.resources.js +0 -18
- package/dist/cjs/resources/filter-logic.resources.js +0 -3
- package/dist/cjs/resources/filter-scopes.resources.js +10 -27
- package/dist/cjs/resources/filter-validators.resources.js +0 -3
- package/dist/cjs/resources/filter-verbose.resources.js +13 -0
- package/dist/cjs/resources/filters.resources.js +0 -12
- package/dist/cjs/resources/index.js +12 -24
- package/dist/classes/FilterAdapter.d.ts +0 -80
- package/dist/classes/FilterAdapter.js +1 -80
- package/dist/classes/FilterBuilder.d.ts +2 -177
- package/dist/classes/FilterBuilder.js +33 -251
- package/dist/classes/FilterManager.d.ts +7 -62
- package/dist/classes/FilterManager.js +7 -64
- package/dist/classes/FilterResources.d.ts +1 -115
- package/dist/classes/FilterResources.js +3 -116
- package/dist/classes/FilterSearcher.d.ts +2 -77
- package/dist/classes/FilterSearcher.js +0 -77
- package/dist/classes/FilterValidation.d.ts +1 -47
- package/dist/classes/FilterValidation.js +0 -93
- package/dist/classes/FilterValues.d.ts +0 -25
- package/dist/classes/FilterValues.js +0 -24
- package/dist/classes/index.d.ts +0 -1
- package/dist/helpers/filter-adapt.helpers.d.ts +0 -15
- package/dist/helpers/filter-adapt.helpers.js +1 -43
- package/dist/helpers/filter-adapt.legacy.helpers.d.ts +0 -20
- package/dist/helpers/filter-adapt.legacy.helpers.js +3 -49
- package/dist/helpers/filter-adapt.logic.helpers.d.ts +0 -22
- package/dist/helpers/filter-adapt.logic.helpers.js +3 -123
- package/dist/helpers/filter-builder.helpers.d.ts +0 -7
- package/dist/helpers/filter-builder.helpers.js +0 -6
- package/dist/helpers/filter-settings.helpers.d.ts +0 -35
- package/dist/helpers/filter-settings.helpers.js +0 -34
- package/dist/helpers/filter-validators.helpers.d.ts +3 -6
- package/dist/helpers/filter-validators.helpers.js +11 -7
- package/dist/helpers/filter-verbose.helpers.d.ts +6 -0
- package/dist/helpers/filter-verbose.helpers.js +206 -0
- package/dist/helpers/getAggregateFilters.d.ts +3 -0
- package/dist/helpers/getAggregateFilters.js +7 -0
- package/dist/helpers/getFilterId.d.ts +0 -16
- package/dist/helpers/getFilterId.js +0 -15
- package/dist/helpers/getFilterType.d.ts +0 -7
- package/dist/helpers/getFilterType.js +0 -6
- package/dist/helpers/index.d.ts +5 -1
- package/dist/helpers/index.js +5 -0
- package/dist/helpers/isDateDistinctGrouping.d.ts +2 -0
- package/dist/helpers/isDateDistinctGrouping.js +12 -0
- package/dist/helpers/isRankingFilter.d.ts +2 -0
- package/dist/helpers/isRankingFilter.js +7 -0
- package/dist/helpers/resolveFilterConditions.d.ts +0 -8
- package/dist/helpers/resolveFilterConditions.js +1 -8
- package/dist/helpers/utils.helpers.d.ts +0 -17
- package/dist/helpers/utils.helpers.js +0 -16
- package/dist/index.d.ts +0 -1
- package/dist/models/filter-builder.models.d.ts +0 -156
- package/dist/models/filter-resources.models.d.ts +0 -53
- package/dist/models/filter-searcher.models.d.ts +5 -34
- package/dist/models/filter-validation.models.d.ts +0 -40
- package/dist/models/index.d.ts +0 -1
- package/dist/resources/filter-functions.resources.d.ts +0 -49
- package/dist/resources/filter-grouping.resources.d.ts +0 -7
- package/dist/resources/filter-grouping.resources.js +0 -18
- package/dist/resources/filter-logic.resources.d.ts +0 -79
- package/dist/resources/filter-logic.resources.js +0 -3
- package/dist/resources/filter-operators.resources.d.ts +0 -1
- package/dist/resources/filter-panel.interfaces.d.ts +0 -49
- package/dist/resources/filter-scopes.resources.d.ts +2 -25
- package/dist/resources/filter-scopes.resources.js +10 -27
- package/dist/resources/filter-validation.resources.d.ts +0 -1
- package/dist/resources/filter-validators.resources.d.ts +0 -1
- package/dist/resources/filter-validators.resources.js +0 -3
- package/dist/resources/filter-values.resources.d.ts +0 -13
- package/dist/resources/filter-verbose.resources.d.ts +23 -0
- package/dist/resources/filter-verbose.resources.js +10 -0
- package/dist/resources/filter-visual.resources.d.ts +0 -50
- package/dist/resources/filters.resources.d.ts +1 -102
- package/dist/resources/filters.resources.js +0 -12
- package/dist/resources/index.d.ts +1 -1
- package/dist/resources/index.js +1 -0
- package/package.json +59 -44
- package/.eslintignore +0 -6
- package/.eslintrc.json +0 -122
- package/.husky/pre-commit +0 -4
- package/.lintstagedrc +0 -7
- package/.prettierignore +0 -6
- package/.prettierrc.json +0 -1
- package/CHANGELOG.md +0 -268
- package/CODE_OF_CONDUCT.md +0 -132
- package/bitbucket-pipelines.yml +0 -92
- package/dist/cjs/classes/FilterAdapter.d.ts +0 -107
- package/dist/cjs/classes/FilterAdapter.d.ts.map +0 -1
- package/dist/cjs/classes/FilterBuilder.d.ts +0 -206
- package/dist/cjs/classes/FilterBuilder.d.ts.map +0 -1
- package/dist/cjs/classes/FilterManager.d.ts +0 -84
- package/dist/cjs/classes/FilterManager.d.ts.map +0 -1
- package/dist/cjs/classes/FilterResources.d.ts +0 -139
- package/dist/cjs/classes/FilterResources.d.ts.map +0 -1
- package/dist/cjs/classes/FilterSearcher.d.ts +0 -90
- package/dist/cjs/classes/FilterSearcher.d.ts.map +0 -1
- package/dist/cjs/classes/FilterValidation.d.ts +0 -58
- package/dist/cjs/classes/FilterValidation.d.ts.map +0 -1
- package/dist/cjs/classes/FilterValues.d.ts +0 -33
- package/dist/cjs/classes/FilterValues.d.ts.map +0 -1
- package/dist/cjs/classes/index.d.ts +0 -8
- package/dist/cjs/classes/index.d.ts.map +0 -1
- package/dist/cjs/helpers/filter-adapt.helpers.d.ts +0 -21
- package/dist/cjs/helpers/filter-adapt.helpers.d.ts.map +0 -1
- package/dist/cjs/helpers/filter-adapt.legacy.helpers.d.ts +0 -26
- package/dist/cjs/helpers/filter-adapt.legacy.helpers.d.ts.map +0 -1
- package/dist/cjs/helpers/filter-adapt.logic.helpers.d.ts +0 -29
- package/dist/cjs/helpers/filter-adapt.logic.helpers.d.ts.map +0 -1
- package/dist/cjs/helpers/filter-builder.helpers.d.ts +0 -11
- package/dist/cjs/helpers/filter-builder.helpers.d.ts.map +0 -1
- package/dist/cjs/helpers/filter-settings.helpers.d.ts +0 -42
- package/dist/cjs/helpers/filter-settings.helpers.d.ts.map +0 -1
- package/dist/cjs/helpers/filter-validators.helpers.d.ts +0 -8
- package/dist/cjs/helpers/filter-validators.helpers.d.ts.map +0 -1
- package/dist/cjs/helpers/getFilterId.d.ts +0 -18
- package/dist/cjs/helpers/getFilterId.d.ts.map +0 -1
- package/dist/cjs/helpers/getFilterType.d.ts +0 -11
- package/dist/cjs/helpers/getFilterType.d.ts.map +0 -1
- package/dist/cjs/helpers/index.d.ts +0 -7
- package/dist/cjs/helpers/index.d.ts.map +0 -1
- package/dist/cjs/helpers/resolveFilterConditions.d.ts +0 -11
- package/dist/cjs/helpers/resolveFilterConditions.d.ts.map +0 -1
- package/dist/cjs/helpers/utils.helpers.d.ts +0 -26
- package/dist/cjs/helpers/utils.helpers.d.ts.map +0 -1
- package/dist/cjs/index.d.ts +0 -5
- package/dist/cjs/index.d.ts.map +0 -1
- package/dist/cjs/models/filter-builder.models.d.ts +0 -203
- package/dist/cjs/models/filter-builder.models.d.ts.map +0 -1
- package/dist/cjs/models/filter-resources.models.d.ts +0 -71
- package/dist/cjs/models/filter-resources.models.d.ts.map +0 -1
- package/dist/cjs/models/filter-searcher.models.d.ts +0 -42
- package/dist/cjs/models/filter-searcher.models.d.ts.map +0 -1
- package/dist/cjs/models/filter-validation.models.d.ts +0 -59
- package/dist/cjs/models/filter-validation.models.d.ts.map +0 -1
- package/dist/cjs/models/index.d.ts +0 -4
- package/dist/cjs/models/index.d.ts.map +0 -1
- package/dist/cjs/resources/filter-functions.resources.d.ts +0 -94
- package/dist/cjs/resources/filter-functions.resources.d.ts.map +0 -1
- package/dist/cjs/resources/filter-grouping.resources.d.ts +0 -103
- package/dist/cjs/resources/filter-grouping.resources.d.ts.map +0 -1
- package/dist/cjs/resources/filter-logic.resources.d.ts +0 -135
- package/dist/cjs/resources/filter-logic.resources.d.ts.map +0 -1
- package/dist/cjs/resources/filter-operators.resources.d.ts +0 -16
- package/dist/cjs/resources/filter-operators.resources.d.ts.map +0 -1
- package/dist/cjs/resources/filter-panel.interfaces.d.ts +0 -80
- package/dist/cjs/resources/filter-panel.interfaces.d.ts.map +0 -1
- package/dist/cjs/resources/filter-scopes.resources.d.ts +0 -62
- package/dist/cjs/resources/filter-scopes.resources.d.ts.map +0 -1
- package/dist/cjs/resources/filter-validation.resources.d.ts +0 -20
- package/dist/cjs/resources/filter-validation.resources.d.ts.map +0 -1
- package/dist/cjs/resources/filter-validators.resources.d.ts +0 -80
- package/dist/cjs/resources/filter-validators.resources.d.ts.map +0 -1
- package/dist/cjs/resources/filter-values.resources.d.ts +0 -40
- package/dist/cjs/resources/filter-values.resources.d.ts.map +0 -1
- package/dist/cjs/resources/filter-visual.resources.d.ts +0 -77
- package/dist/cjs/resources/filter-visual.resources.d.ts.map +0 -1
- package/dist/cjs/resources/filters.resources.d.ts +0 -168
- package/dist/cjs/resources/filters.resources.d.ts.map +0 -1
- package/dist/cjs/resources/index.d.ts +0 -11
- package/dist/cjs/resources/index.d.ts.map +0 -1
- package/dist/classes/FilterAdapter.d.ts.map +0 -1
- package/dist/classes/FilterBuilder.d.ts.map +0 -1
- package/dist/classes/FilterManager.d.ts.map +0 -1
- package/dist/classes/FilterResources.d.ts.map +0 -1
- package/dist/classes/FilterSearcher.d.ts.map +0 -1
- package/dist/classes/FilterValidation.d.ts.map +0 -1
- package/dist/classes/FilterValues.d.ts.map +0 -1
- package/dist/classes/index.d.ts.map +0 -1
- package/dist/helpers/filter-adapt.helpers.d.ts.map +0 -1
- package/dist/helpers/filter-adapt.legacy.helpers.d.ts.map +0 -1
- package/dist/helpers/filter-adapt.logic.helpers.d.ts.map +0 -1
- package/dist/helpers/filter-builder.helpers.d.ts.map +0 -1
- package/dist/helpers/filter-settings.helpers.d.ts.map +0 -1
- package/dist/helpers/filter-validators.helpers.d.ts.map +0 -1
- package/dist/helpers/getFilterId.d.ts.map +0 -1
- package/dist/helpers/getFilterType.d.ts.map +0 -1
- package/dist/helpers/index.d.ts.map +0 -1
- package/dist/helpers/resolveFilterConditions.d.ts.map +0 -1
- package/dist/helpers/utils.helpers.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/models/filter-builder.models.d.ts.map +0 -1
- package/dist/models/filter-resources.models.d.ts.map +0 -1
- package/dist/models/filter-searcher.models.d.ts.map +0 -1
- package/dist/models/filter-validation.models.d.ts.map +0 -1
- package/dist/models/index.d.ts.map +0 -1
- package/dist/resources/filter-functions.resources.d.ts.map +0 -1
- package/dist/resources/filter-grouping.resources.d.ts.map +0 -1
- package/dist/resources/filter-logic.resources.d.ts.map +0 -1
- package/dist/resources/filter-operators.resources.d.ts.map +0 -1
- package/dist/resources/filter-panel.interfaces.d.ts.map +0 -1
- package/dist/resources/filter-scopes.resources.d.ts.map +0 -1
- package/dist/resources/filter-validation.resources.d.ts.map +0 -1
- package/dist/resources/filter-validators.resources.d.ts.map +0 -1
- package/dist/resources/filter-values.resources.d.ts.map +0 -1
- package/dist/resources/filter-visual.resources.d.ts.map +0 -1
- package/dist/resources/filters.resources.d.ts.map +0 -1
- package/dist/resources/index.d.ts.map +0 -1
- package/jest.config.js +0 -10
- package/jsdoc.config.json +0 -14
- package/scripts/clean-build/index.js +0 -62
- package/sonar-project.properties +0 -2
- package/src/classes/FilterAdapter.ts +0 -208
- package/src/classes/FilterBuilder.ts +0 -821
- package/src/classes/FilterManager.ts +0 -126
- package/src/classes/FilterResources.ts +0 -411
- package/src/classes/FilterSearcher.ts +0 -243
- package/src/classes/FilterValidation.ts +0 -221
- package/src/classes/FilterValues.ts +0 -89
- package/src/classes/index.ts +0 -7
- package/src/helpers/filter-adapt.helpers.ts +0 -204
- package/src/helpers/filter-adapt.legacy.helpers.ts +0 -298
- package/src/helpers/filter-adapt.logic.helpers.ts +0 -631
- package/src/helpers/filter-builder.helpers.ts +0 -28
- package/src/helpers/filter-settings.helpers.ts +0 -133
- package/src/helpers/filter-validators.helpers.ts +0 -15
- package/src/helpers/getFilterId.ts +0 -35
- package/src/helpers/getFilterType.ts +0 -23
- package/src/helpers/index.ts +0 -6
- package/src/helpers/resolveFilterConditions.ts +0 -29
- package/src/helpers/utils.helpers.ts +0 -37
- package/src/index.ts +0 -4
- package/src/models/filter-builder.models.ts +0 -256
- package/src/models/filter-resources.models.ts +0 -89
- package/src/models/filter-searcher.models.ts +0 -61
- package/src/models/filter-validation.models.ts +0 -71
- package/src/models/index.ts +0 -3
- package/src/resources/filter-functions.resources.ts +0 -132
- package/src/resources/filter-grouping.resources.ts +0 -531
- package/src/resources/filter-logic.resources.ts +0 -148
- package/src/resources/filter-operators.resources.ts +0 -40
- package/src/resources/filter-panel.interfaces.ts +0 -86
- package/src/resources/filter-scopes.resources.ts +0 -152
- package/src/resources/filter-validation.resources.ts +0 -90
- package/src/resources/filter-validators.resources.ts +0 -411
- package/src/resources/filter-values.resources.ts +0 -57
- package/src/resources/filter-visual.resources.ts +0 -86
- package/src/resources/filters.resources.ts +0 -232
- package/src/resources/index.ts +0 -10
- package/tests/classes/FilterAdapter.test.ts +0 -124
- package/tests/classes/FilterBuilder.test.ts +0 -903
- package/tests/classes/FilterResources.test.ts +0 -267
- package/tests/classes/FilterSearcher.test.ts +0 -188
- package/tests/classes/FilterValidation.test.ts +0 -54
- package/tests/helpers/getFilterId.test.ts +0 -121
- package/tests/mock/datasets.mock.ts +0 -61
- package/tests/mock/filters-adapter.mock.ts +0 -646
- package/tests/mock/filters-interactive-table.mock.ts +0 -59
- package/tests/mock/filters.mock.ts +0 -277
- package/tsconfig.doc.json +0 -4
- package/tsconfig.eslint.json +0 -4
- package/tsconfig.json +0 -113
package/README.md
CHANGED
|
@@ -1 +1,63 @@
|
|
|
1
|
-
# qrvey_filters
|
|
1
|
+
# [@qrvey/filters](https://bitbucket.org/qrvey/qrvey_filters/wiki/Home) *0.1.0*
|
|
2
|
+
|
|
3
|
+
> Helpers and logic for Filtering Data in Qrvey app
|
|
4
|
+
|
|
5
|
+
## Release pipelines
|
|
6
|
+
|
|
7
|
+
- Guide to run manual releases in Bitbucket: [RELEASE_PIPELINES.md](./RELEASE_PIPELINES.md)
|
|
8
|
+
|
|
9
|
+
## Recommended consumption guide
|
|
10
|
+
|
|
11
|
+
This package exposes **ESM + CommonJS**:
|
|
12
|
+
|
|
13
|
+
- `import` (ESM) for modern bundlers and better tree shaking.
|
|
14
|
+
- `require` (CommonJS) for legacy implementations.
|
|
15
|
+
|
|
16
|
+
### 1) Recommended (ESM with tree shaking)
|
|
17
|
+
|
|
18
|
+
Use named imports from the entrypoint or specific subpaths.
|
|
19
|
+
|
|
20
|
+
```ts
|
|
21
|
+
// Good: allows bundlers to remove unused exports
|
|
22
|
+
import { FilterManager, FilterBuilder } from "@qrvey/filters";
|
|
23
|
+
|
|
24
|
+
// Better for critical bundles: import only the module you need
|
|
25
|
+
import { FilterManager } from "@qrvey/filters/classes/index";
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
### 2) Avoid for optimized bundles
|
|
29
|
+
|
|
30
|
+
```ts
|
|
31
|
+
// Avoid in frontend apps: can pull more code into the bundle
|
|
32
|
+
import * as QrveyFilters from "@qrvey/filters";
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### 3) CommonJS compatibility
|
|
36
|
+
|
|
37
|
+
For Node projects or integrations that require CommonJS:
|
|
38
|
+
|
|
39
|
+
```js
|
|
40
|
+
const { FilterManager } = require("@qrvey/filters");
|
|
41
|
+
const { FilterManager } = require("@qrvey/filters/classes/index");
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### 4) Recommendations for consumer apps
|
|
45
|
+
|
|
46
|
+
- Prefer `import` over `require` in frontend code.
|
|
47
|
+
- Use subpaths (`@qrvey/filters/<module>`) on performance-critical paths.
|
|
48
|
+
- Keep tree shaking enabled in your bundler (Webpack/Rollup/Vite in production mode).
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
<!-- MODULES_START -->
|
|
53
|
+
|
|
54
|
+
## Modules
|
|
55
|
+
|
|
56
|
+
| Module | Description | Subpath import | API docs |
|
|
57
|
+
| ------ | ----------- | -------------- | -------- |
|
|
58
|
+
| `classes` | Core classes: FilterBuilder, FilterManager, FilterAdapter, FilterSearcher, FilterValidation, FilterValues and FilterResources. | `@qrvey/filters/classes/index` | [docs](docs/classes/index.md) |
|
|
59
|
+
| `helpers` | Stateless utility functions for filter adaptation, settings, ID generation, type resolution and condition handling. | `@qrvey/filters/helpers/index` | [docs](docs/helpers/index.md) |
|
|
60
|
+
| `models` | TypeScript interfaces and types for FilterBuilder, FilterResources and FilterSearcher internals. | `@qrvey/filters/models/index` | [docs](docs/models/index.md) |
|
|
61
|
+
| `resources` | Enums, constants and panel interfaces for filter functions, grouping, logic, operators, scopes, validators, values, visual options and the DEFAULT_FILTER. | `@qrvey/filters/resources/index` | [docs](docs/resources/index.md) |
|
|
62
|
+
|
|
63
|
+
<!-- MODULES_END -->
|
|
@@ -5,72 +5,33 @@ const filter_adapt_helpers_1 = require("../helpers/filter-adapt.helpers");
|
|
|
5
5
|
const filter_adapt_legacy_helpers_1 = require("../helpers/filter-adapt.legacy.helpers");
|
|
6
6
|
const filter_adapt_logic_helpers_1 = require("../helpers/filter-adapt.logic.helpers");
|
|
7
7
|
const filters_resources_1 = require("../resources/filters.resources");
|
|
8
|
-
/**
|
|
9
|
-
* Class to adapt the filters
|
|
10
|
-
*/
|
|
11
8
|
class FilterAdapter {
|
|
12
9
|
_filters;
|
|
13
10
|
datasets;
|
|
14
11
|
interactiveTable;
|
|
15
|
-
/**
|
|
16
|
-
* The Logic filters
|
|
17
|
-
*/
|
|
18
12
|
_logic;
|
|
19
|
-
/**
|
|
20
|
-
* The visual filters
|
|
21
|
-
*/
|
|
22
13
|
_visual;
|
|
23
|
-
/**
|
|
24
|
-
* The old Filter Data structure
|
|
25
|
-
*/
|
|
26
14
|
_legacyVisual;
|
|
27
|
-
/**
|
|
28
|
-
* Constructor
|
|
29
|
-
* @param _filters the collection of filters
|
|
30
|
-
* @param datasets the collection of datasets info
|
|
31
|
-
* @param interactiveTable table of interaction properties for each section
|
|
32
|
-
*/
|
|
33
15
|
constructor(_filters = [], datasets = [], interactiveTable) {
|
|
34
16
|
this._filters = _filters;
|
|
35
17
|
this.datasets = datasets;
|
|
36
18
|
this.interactiveTable = interactiveTable;
|
|
37
19
|
this.setFilters(Array.isArray(_filters) ? _filters : []);
|
|
38
20
|
}
|
|
39
|
-
/**
|
|
40
|
-
*
|
|
41
|
-
*/
|
|
42
21
|
sync() {
|
|
43
22
|
this.setVisual(this.filterToVisual());
|
|
44
23
|
this.setLegacyVisual(this.filterToLegacyVisual());
|
|
45
24
|
this.setLogic(this.filterToLogic());
|
|
46
25
|
}
|
|
47
|
-
/**
|
|
48
|
-
* Generates a visual filter structure from the filter collection.
|
|
49
|
-
* @returns a visual Filter structure
|
|
50
|
-
*/
|
|
51
26
|
filterToLegacyVisual() {
|
|
52
27
|
return (0, filter_adapt_legacy_helpers_1.filterToLegacyVisual)(this._filters, this.datasets, this.interactiveTable);
|
|
53
28
|
}
|
|
54
|
-
/**
|
|
55
|
-
* Generates a logic filters structure from the filter collection.
|
|
56
|
-
* @returns the Logic Filters
|
|
57
|
-
*/
|
|
58
29
|
filterToLogic() {
|
|
59
30
|
return (0, filter_adapt_logic_helpers_1.filterToLogic)(this._filters);
|
|
60
31
|
}
|
|
61
|
-
/**
|
|
62
|
-
* Generates a visual filter structure from the filter collection.
|
|
63
|
-
* @returns a visual Filter structure
|
|
64
|
-
*/
|
|
65
32
|
filterToVisual() {
|
|
66
33
|
return (0, filter_adapt_helpers_1.filterToVisual)(this._filters, this.datasets, this.interactiveTable);
|
|
67
34
|
}
|
|
68
|
-
/**
|
|
69
|
-
* Generates the filter collection from the legacy filter
|
|
70
|
-
* @param legacyVisual the legacy filter
|
|
71
|
-
* @param interactiveTable the interactive table object
|
|
72
|
-
* @returns the filter collection
|
|
73
|
-
*/
|
|
74
35
|
static legacyVisualToFilter(legacyVisual, interactiveTable) {
|
|
75
36
|
const filters = (0, filter_adapt_legacy_helpers_1.legacyVisualToFilter)(legacyVisual);
|
|
76
37
|
const newInteractiveTable = (0, filter_adapt_legacy_helpers_1.legacyVisualToInteractiveTable)(legacyVisual, interactiveTable);
|
|
@@ -79,88 +40,48 @@ class FilterAdapter {
|
|
|
79
40
|
interactiveTable: newInteractiveTable,
|
|
80
41
|
};
|
|
81
42
|
}
|
|
82
|
-
/**
|
|
83
|
-
* Gets the legacy filter version attribute
|
|
84
|
-
* @returns the legacy filter version
|
|
85
|
-
*/
|
|
86
43
|
get legacyVisual() {
|
|
87
44
|
return {
|
|
88
45
|
filters: this._legacyVisual,
|
|
89
46
|
version: filters_resources_1.FILTER_VERSION_TYPE.UI_2,
|
|
90
47
|
};
|
|
91
48
|
}
|
|
92
|
-
/**
|
|
93
|
-
* Gets the filter logic version
|
|
94
|
-
* @returns the filter logic version
|
|
95
|
-
*/
|
|
96
49
|
get logic() {
|
|
97
50
|
return {
|
|
98
51
|
filters: this._logic,
|
|
99
52
|
version: filters_resources_1.FILTER_VERSION_TYPE.LOGIC,
|
|
100
53
|
};
|
|
101
54
|
}
|
|
102
|
-
/**
|
|
103
|
-
* Gets the visual filter version
|
|
104
|
-
* @returns the visual filter version
|
|
105
|
-
*/
|
|
106
55
|
get visual() {
|
|
107
56
|
return {
|
|
108
57
|
filters: this._visual,
|
|
109
58
|
version: filters_resources_1.FILTER_VERSION_TYPE.UI_3,
|
|
110
59
|
};
|
|
111
60
|
}
|
|
112
|
-
/**
|
|
113
|
-
* Gets the filter version 3
|
|
114
|
-
* @returns the filter version 3
|
|
115
|
-
*/
|
|
116
61
|
get filters() {
|
|
117
62
|
return {
|
|
118
|
-
filters: this._filters
|
|
63
|
+
filters: this._filters,
|
|
119
64
|
version: filters_resources_1.FILTER_VERSION_TYPE.V3,
|
|
120
65
|
};
|
|
121
66
|
}
|
|
122
|
-
/**
|
|
123
|
-
* Sets the datasets atribute
|
|
124
|
-
* @param datasets the collection of dataset info
|
|
125
|
-
*/
|
|
126
67
|
setDatasets(datasets = []) {
|
|
127
68
|
this.datasets = datasets;
|
|
128
69
|
this.sync();
|
|
129
70
|
}
|
|
130
|
-
/**
|
|
131
|
-
* Sets the collection of filters atribute
|
|
132
|
-
* @param filters the filters
|
|
133
|
-
*/
|
|
134
71
|
setFilters(filters) {
|
|
135
72
|
this._filters = filters;
|
|
136
73
|
this.sync();
|
|
137
74
|
}
|
|
138
|
-
/**
|
|
139
|
-
* Sets the table of interactive table attribute
|
|
140
|
-
* @param interactiveTable table of interaction properties for each section
|
|
141
|
-
*/
|
|
142
75
|
setInteractiveTable(interactiveTable) {
|
|
143
76
|
this.interactiveTable = interactiveTable;
|
|
144
77
|
this.sync();
|
|
145
78
|
}
|
|
146
|
-
/**
|
|
147
|
-
* Sets the filter legacy visual attribute
|
|
148
|
-
* @param legacyVisual the legacy visual filters
|
|
149
|
-
*/
|
|
150
79
|
setLegacyVisual(legacyVisual) {
|
|
151
80
|
this._legacyVisual = legacyVisual;
|
|
152
81
|
}
|
|
153
|
-
/**
|
|
154
|
-
* Sets the filter logic attribute
|
|
155
|
-
* @param logic the logic filters
|
|
156
|
-
*/
|
|
157
82
|
setLogic(logic) {
|
|
158
83
|
this._logic = logic;
|
|
159
84
|
}
|
|
160
|
-
/**
|
|
161
|
-
* Sets the filter visual attribute
|
|
162
|
-
* @param visual the visual filters
|
|
163
|
-
*/
|
|
164
85
|
setVisual(visual) {
|
|
165
86
|
this._visual = visual;
|
|
166
87
|
}
|