@qrvey/filters 0.0.13 → 0.0.14
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/CHANGELOG.md +6 -0
- package/dist/cjs/classes/FilterAdapter.d.ts +2 -1
- package/dist/cjs/classes/FilterAdapter.d.ts.map +1 -1
- package/dist/cjs/classes/FilterAdapter.js +8 -6
- package/dist/cjs/classes/FilterManager.d.ts +8 -3
- package/dist/cjs/classes/FilterManager.d.ts.map +1 -1
- package/dist/cjs/classes/FilterManager.js +14 -6
- package/dist/cjs/classes/FilterSettings.d.ts +1 -0
- package/dist/cjs/classes/FilterSettings.d.ts.map +1 -0
- package/dist/cjs/classes/FilterSettings.js +1 -0
- package/dist/cjs/helpers/filter-adapt.helpers.d.ts +7 -13
- package/dist/cjs/helpers/filter-adapt.helpers.d.ts.map +1 -1
- package/dist/cjs/helpers/filter-adapt.helpers.js +31 -183
- package/dist/cjs/helpers/filter-adapt.legacy.helpers.d.ts +26 -0
- package/dist/cjs/helpers/filter-adapt.legacy.helpers.d.ts.map +1 -0
- package/dist/cjs/helpers/filter-adapt.legacy.helpers.js +229 -0
- package/dist/cjs/helpers/filter-adapt.logic.helpers.js +1 -1
- package/dist/cjs/resources/filter-logic.resources.d.ts +0 -4
- package/dist/cjs/resources/filter-logic.resources.d.ts.map +1 -1
- package/dist/cjs/resources/filter-panel.interfaces.d.ts +57 -4
- package/dist/cjs/resources/filter-panel.interfaces.d.ts.map +1 -1
- package/dist/cjs/resources/filter-settings.resources.d.ts +357 -0
- package/dist/cjs/resources/filter-settings.resources.d.ts.map +1 -0
- package/dist/cjs/resources/filter-settings.resources.js +2 -0
- package/dist/cjs/resources/filter-visual.resources.d.ts +0 -8
- package/dist/cjs/resources/filter-visual.resources.d.ts.map +1 -1
- package/dist/cjs/resources/filters.resources.d.ts +2 -0
- package/dist/cjs/resources/filters.resources.d.ts.map +1 -1
- package/dist/classes/FilterAdapter.d.ts +2 -1
- package/dist/classes/FilterAdapter.d.ts.map +1 -1
- package/dist/classes/FilterAdapter.js +7 -5
- package/dist/classes/FilterManager.d.ts +8 -3
- package/dist/classes/FilterManager.d.ts.map +1 -1
- package/dist/classes/FilterManager.js +14 -6
- package/dist/classes/FilterSettings.d.ts +1 -0
- package/dist/classes/FilterSettings.d.ts.map +1 -0
- package/dist/classes/FilterSettings.js +1 -0
- package/dist/helpers/filter-adapt.helpers.d.ts +7 -13
- package/dist/helpers/filter-adapt.helpers.d.ts.map +1 -1
- package/dist/helpers/filter-adapt.helpers.js +30 -181
- package/dist/helpers/filter-adapt.legacy.helpers.d.ts +26 -0
- package/dist/helpers/filter-adapt.legacy.helpers.d.ts.map +1 -0
- package/dist/helpers/filter-adapt.legacy.helpers.js +223 -0
- package/dist/helpers/filter-adapt.logic.helpers.js +1 -1
- package/dist/resources/filter-logic.resources.d.ts +0 -4
- package/dist/resources/filter-logic.resources.d.ts.map +1 -1
- package/dist/resources/filter-panel.interfaces.d.ts +57 -4
- package/dist/resources/filter-panel.interfaces.d.ts.map +1 -1
- package/dist/resources/filter-settings.resources.d.ts +357 -0
- package/dist/resources/filter-settings.resources.d.ts.map +1 -0
- package/dist/resources/filter-settings.resources.js +1 -0
- package/dist/resources/filter-visual.resources.d.ts +0 -8
- package/dist/resources/filter-visual.resources.d.ts.map +1 -1
- package/dist/resources/filters.resources.d.ts +2 -0
- package/dist/resources/filters.resources.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/classes/FilterAdapter.ts +13 -7
- package/src/classes/FilterManager.ts +13 -4
- package/src/helpers/filter-adapt.helpers.ts +36 -242
- package/src/helpers/filter-adapt.legacy.helpers.ts +296 -0
- package/src/helpers/filter-adapt.logic.helpers.ts +1 -1
- package/src/resources/filter-logic.resources.ts +0 -4
- package/src/resources/filter-panel.interfaces.ts +58 -4
- package/src/resources/filter-visual.resources.ts +0 -8
- package/src/resources/filters.resources.ts +2 -0
- package/tests/mock/filters-adapter.mock.ts +0 -7
- package/tests/mock/filters-interactive-table.mock.ts +14 -18
package/CHANGELOG.md
CHANGED
|
@@ -4,8 +4,14 @@ 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.14](https://bitbucket.org/qrvey/qrvey_filters/compare/v0.0.14..v0.0.13)
|
|
8
|
+
|
|
9
|
+
- feat: :zap: added the filter interactive table into the adapters [`f47df0c`](https://bitbucket.org/qrvey/qrvey_filters/commits/f47df0cd50adc02a56363b30c424507c9900bdff)
|
|
10
|
+
|
|
7
11
|
#### [v0.0.13](https://bitbucket.org/qrvey/qrvey_filters/compare/v0.0.13..v0.0.12)
|
|
8
12
|
|
|
13
|
+
> 21 May 2024
|
|
14
|
+
|
|
9
15
|
- fix: :bug: removed sync function due to double invocation [`e534032`](https://bitbucket.org/qrvey/qrvey_filters/commits/e53403207c1d10a8806e2950c27880fb68bacadf)
|
|
10
16
|
|
|
11
17
|
#### [v0.0.12](https://bitbucket.org/qrvey/qrvey_filters/compare/v0.0.12..v0.0.11)
|
|
@@ -49,9 +49,10 @@ export declare class FilterAdapter {
|
|
|
49
49
|
/**
|
|
50
50
|
* Generates the filter collection from the legacy filter
|
|
51
51
|
* @param legacyVisual the legacy filter
|
|
52
|
+
* @param interactiveTable the interactive table object
|
|
52
53
|
* @returns the filter collection
|
|
53
54
|
*/
|
|
54
|
-
static legacyVisualToFilter(legacyVisual: IFUData): IFilterUIToFilter;
|
|
55
|
+
static legacyVisualToFilter(legacyVisual: IFUData, interactiveTable?: IFilterPanelInteractiveTable): IFilterUIToFilter;
|
|
55
56
|
/**
|
|
56
57
|
* Gets the legacy filter version attribute
|
|
57
58
|
* @returns the legacy filter version
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterAdapter.d.ts","sourceRoot":"","sources":["../../../src/classes/FilterAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"FilterAdapter.d.ts","sourceRoot":"","sources":["../../../src/classes/FilterAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAUjD,OAAO,EACL,4BAA4B,EAC5B,iBAAiB,EAClB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EACL,mBAAmB,EACnB,OAAO,EACP,cAAc,EACf,MAAM,gCAAgC,CAAC;AAExC;;GAEG;AACH,qBAAa,aAAa;IAuBtB,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE;IAC7B,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE;IAC9B,SAAS,CAAC,gBAAgB,CAAC;IAxB7B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,CAAiB;IAEhC;;OAEG;IACH,OAAO,CAAC,OAAO,CAAC,CAAgB;IAEhC;;OAEG;IACH,OAAO,CAAC,aAAa,CAAC,CAAU;IAEhC;;;;;OAKG;gBAES,QAAQ,GAAE,OAAO,EAAO,EACxB,QAAQ,GAAE,QAAQ,EAAO,EACzB,gBAAgB,CAAC,0CAA8B;IAK3D;;OAEG;IACH,OAAO,CAAC,IAAI;IAMZ;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAQ5B;;;OAGG;IACH,OAAO,CAAC,aAAa;IAIrB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;OAKG;IACH,MAAM,CAAC,oBAAoB,CACzB,YAAY,EAAE,OAAO,EACrB,gBAAgB,CAAC,EAAE,4BAA4B,GAC9C,iBAAiB;IAWpB;;;OAGG;IACH,IAAI,YAAY,IAAI,cAAc,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAK3D;IAED;;;OAGG;IACH,IAAI,KAAK,IAAI,cAAc,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAKrD;IAED;;;OAGG;IACH,IAAI,MAAM,IAAI,cAAc,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAKrD;IAED;;;OAGG;IACH,IAAI,OAAO,IAAI,cAAc,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAKpD;IAED;;;OAGG;IACI,WAAW,CAAC,QAAQ,GAAE,QAAQ,EAAO,GAAG,IAAI;IAKnD;;;OAGG;IACI,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI;IAK3C;;;OAGG;IACI,mBAAmB,CACxB,gBAAgB,EAAE,4BAA4B,GAC7C,IAAI;IAKP;;;OAGG;IACH,OAAO,CAAC,eAAe;IAIvB;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAIhB;;;OAGG;IACH,OAAO,CAAC,SAAS;CAGlB"}
|
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.FilterAdapter = void 0;
|
|
4
4
|
const filter_adapt_helpers_1 = require("../helpers/filter-adapt.helpers");
|
|
5
|
-
const
|
|
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
|
+
const filters_resources_1 = require("../resources/filters.resources");
|
|
7
8
|
/**
|
|
8
9
|
* Class to adapt the filters
|
|
9
10
|
*/
|
|
@@ -48,7 +49,7 @@ class FilterAdapter {
|
|
|
48
49
|
* @returns a visual Filter structure
|
|
49
50
|
*/
|
|
50
51
|
filterToLegacyVisual() {
|
|
51
|
-
return (0,
|
|
52
|
+
return (0, filter_adapt_legacy_helpers_1.filterToLegacyVisual)(this._filters, this.datasets, this.interactiveTable);
|
|
52
53
|
}
|
|
53
54
|
/**
|
|
54
55
|
* Generates a logic filters structure from the filter collection.
|
|
@@ -67,14 +68,15 @@ class FilterAdapter {
|
|
|
67
68
|
/**
|
|
68
69
|
* Generates the filter collection from the legacy filter
|
|
69
70
|
* @param legacyVisual the legacy filter
|
|
71
|
+
* @param interactiveTable the interactive table object
|
|
70
72
|
* @returns the filter collection
|
|
71
73
|
*/
|
|
72
|
-
static legacyVisualToFilter(legacyVisual) {
|
|
73
|
-
const filters = (0,
|
|
74
|
-
|
|
74
|
+
static legacyVisualToFilter(legacyVisual, interactiveTable) {
|
|
75
|
+
const filters = (0, filter_adapt_legacy_helpers_1.legacyVisualToFilter)(legacyVisual);
|
|
76
|
+
const newInteractiveTable = (0, filter_adapt_legacy_helpers_1.legacyVisualToInteractiveTable)(legacyVisual, interactiveTable);
|
|
75
77
|
return {
|
|
76
78
|
filters,
|
|
77
|
-
interactiveTable:
|
|
79
|
+
interactiveTable: newInteractiveTable,
|
|
78
80
|
};
|
|
79
81
|
}
|
|
80
82
|
/**
|
|
@@ -10,7 +10,7 @@ import { IFilter } from "../resources/filters.resources";
|
|
|
10
10
|
export declare class FilterManager {
|
|
11
11
|
protected filters: IFilter[];
|
|
12
12
|
protected datasets: IDataset[];
|
|
13
|
-
|
|
13
|
+
private _interactiveTable?;
|
|
14
14
|
/**
|
|
15
15
|
* Instance to adapt filters
|
|
16
16
|
*/
|
|
@@ -27,9 +27,9 @@ export declare class FilterManager {
|
|
|
27
27
|
* Constructor
|
|
28
28
|
* @param filters the collection of filters
|
|
29
29
|
* @param datasets the collection of datasets info
|
|
30
|
-
* @param
|
|
30
|
+
* @param _interactiveTable table of interaction properties for each section
|
|
31
31
|
*/
|
|
32
|
-
constructor(filters?: IFilter[], datasets?: IDataset[],
|
|
32
|
+
constructor(filters?: IFilter[], datasets?: IDataset[], _interactiveTable?: IFilterPanelInteractiveTable | undefined);
|
|
33
33
|
/**
|
|
34
34
|
* **************************************************************************************************
|
|
35
35
|
****************************************** Getters *************************************************
|
|
@@ -50,6 +50,11 @@ export declare class FilterManager {
|
|
|
50
50
|
* @returns the search methods
|
|
51
51
|
*/
|
|
52
52
|
get search(): FilterSearcher;
|
|
53
|
+
/**
|
|
54
|
+
* Gets the interactive table
|
|
55
|
+
* @returns the interactive table
|
|
56
|
+
*/
|
|
57
|
+
get interactiveTable(): IFilterPanelInteractiveTable | undefined;
|
|
53
58
|
/**
|
|
54
59
|
* **************************************************************************************************
|
|
55
60
|
****************************************** Setters *************************************************
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterManager.d.ts","sourceRoot":"","sources":["../../../src/classes/FilterManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAEzD;;GAEG;AACH,qBAAa,aAAa;IAuBtB,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE;IAC5B,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE;IAC9B,
|
|
1
|
+
{"version":3,"file":"FilterManager.d.ts","sourceRoot":"","sources":["../../../src/classes/FilterManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAEzD;;GAEG;AACH,qBAAa,aAAa;IAuBtB,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE;IAC5B,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE;IAC9B,OAAO,CAAC,iBAAiB,CAAC;IAxB5B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAgB;IAE9B;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAgB;IAEhC;;OAEG;IACH,OAAO,CAAC,aAAa,CAAiB;IAEtC;;;;;OAKG;gBAES,OAAO,GAAE,OAAO,EAAO,EACvB,QAAQ,GAAE,QAAQ,EAAO,EAC3B,iBAAiB,CAAC,0CAA8B;IAO1D;;;;OAIG;IAEH;;;OAGG;IACH,IAAW,OAAO,IAAI,aAAa,CAElC;IAED;;;OAGG;IACH,IAAW,KAAK,IAAI,aAAa,CAEhC;IAED;;;OAGG;IACH,IAAW,MAAM,IAAI,cAAc,CAElC;IAED;;;OAGG;IACH,IAAW,gBAAgB,IAAI,4BAA4B,GAAG,SAAS,CAEtE;IAED;;;;OAIG;IAEH;;;OAGG;IACI,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI;IAI9C;;;OAGG;IACI,UAAU,CAAC,OAAO,GAAE,OAAO,EAAO,GAAG,IAAI;IAMhD;;;OAGG;IACI,mBAAmB,CACxB,gBAAgB,EAAE,4BAA4B,GAC7C,IAAI;CAIR"}
|
|
@@ -10,7 +10,7 @@ const FilterSearcher_1 = require("./FilterSearcher");
|
|
|
10
10
|
class FilterManager {
|
|
11
11
|
filters;
|
|
12
12
|
datasets;
|
|
13
|
-
|
|
13
|
+
_interactiveTable;
|
|
14
14
|
/**
|
|
15
15
|
* Instance to adapt filters
|
|
16
16
|
*/
|
|
@@ -27,15 +27,15 @@ class FilterManager {
|
|
|
27
27
|
* Constructor
|
|
28
28
|
* @param filters the collection of filters
|
|
29
29
|
* @param datasets the collection of datasets info
|
|
30
|
-
* @param
|
|
30
|
+
* @param _interactiveTable table of interaction properties for each section
|
|
31
31
|
*/
|
|
32
|
-
constructor(filters = [], datasets = [],
|
|
32
|
+
constructor(filters = [], datasets = [], _interactiveTable) {
|
|
33
33
|
this.filters = filters;
|
|
34
34
|
this.datasets = datasets;
|
|
35
|
-
this.
|
|
35
|
+
this._interactiveTable = _interactiveTable;
|
|
36
36
|
this._searchEngine = new FilterSearcher_1.FilterSearcher(filters);
|
|
37
37
|
this._builder = new FilterBuilder_1.FilterBuilder(filters);
|
|
38
|
-
this._adapt = new FilterAdapter_1.FilterAdapter(filters, datasets,
|
|
38
|
+
this._adapt = new FilterAdapter_1.FilterAdapter(filters, datasets, _interactiveTable);
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
41
|
* **************************************************************************************************
|
|
@@ -63,6 +63,13 @@ class FilterManager {
|
|
|
63
63
|
get search() {
|
|
64
64
|
return this._searchEngine;
|
|
65
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* Gets the interactive table
|
|
68
|
+
* @returns the interactive table
|
|
69
|
+
*/
|
|
70
|
+
get interactiveTable() {
|
|
71
|
+
return this._interactiveTable;
|
|
72
|
+
}
|
|
66
73
|
/**
|
|
67
74
|
* **************************************************************************************************
|
|
68
75
|
****************************************** Setters *************************************************
|
|
@@ -89,7 +96,8 @@ class FilterManager {
|
|
|
89
96
|
* @param interactiveTable table of interaction properties for each section
|
|
90
97
|
*/
|
|
91
98
|
setInteractiveTable(interactiveTable) {
|
|
92
|
-
this.
|
|
99
|
+
this._interactiveTable = interactiveTable;
|
|
100
|
+
this._adapt.setInteractiveTable(this._interactiveTable);
|
|
93
101
|
}
|
|
94
102
|
}
|
|
95
103
|
exports.FilterManager = FilterManager;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=FilterSettings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterSettings.d.ts","sourceRoot":"","sources":["../../../src/classes/FilterSettings.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IDataset
|
|
1
|
+
import { IDataset } from "@qrvey/utils";
|
|
2
2
|
import { IFilterPanelInteractiveTable } from "../resources/filter-panel.interfaces";
|
|
3
3
|
import { IFilterVisual } from "../resources/filter-visual.resources";
|
|
4
4
|
import { IFilter } from "../resources/filters.resources";
|
|
@@ -11,17 +11,11 @@ import { IFilter } from "../resources/filters.resources";
|
|
|
11
11
|
*/
|
|
12
12
|
export declare function filterToVisual(filters: IFilter[], datasets?: IDataset[], interactiveTable?: IFilterPanelInteractiveTable): IFilterVisual | undefined;
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
* @param
|
|
17
|
-
* @param interactiveTable
|
|
18
|
-
* @returns
|
|
19
|
-
*/
|
|
20
|
-
export declare function filterToLegacyVisual(filters: IFilter[], datasets?: IDataset[], interactiveTable?: IFilterPanelInteractiveTable): IFUData | undefined;
|
|
21
|
-
/**
|
|
22
|
-
* Generates a legacy visual filter structure from the filter collection.
|
|
23
|
-
* @param filterData the legacy filter
|
|
24
|
-
* @returns a Filter collection
|
|
14
|
+
* Gets the Interactive Table object from the visual filters
|
|
15
|
+
* If an interactive table object is given, it will be merged with the new one
|
|
16
|
+
* @param visual the visual filters
|
|
17
|
+
* @param interactiveTable the interactive table object
|
|
18
|
+
* @returns the interactive table object
|
|
25
19
|
*/
|
|
26
|
-
export declare function
|
|
20
|
+
export declare function legacyVisualToInteractiveTable(visual: IFilterVisual, interactiveTable?: IFilterPanelInteractiveTable): IFilterPanelInteractiveTable | undefined;
|
|
27
21
|
//# sourceMappingURL=filter-adapt.helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter-adapt.helpers.d.ts","sourceRoot":"","sources":["../../../src/helpers/filter-adapt.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"filter-adapt.helpers.d.ts","sourceRoot":"","sources":["../../../src/helpers/filter-adapt.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,QAAQ,EAAW,MAAM,cAAc,CAAC;AAI1D,OAAO,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAGL,aAAa,EAGd,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAkB,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAEzE;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,EAAE,EAClB,QAAQ,GAAE,QAAQ,EAAO,EACzB,gBAAgB,CAAC,EAAE,4BAA4B,GAC9C,aAAa,GAAG,SAAS,CAM3B;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,aAAa,EACrB,gBAAgB,CAAC,EAAE,4BAA4B,GAC9C,4BAA4B,GAAG,SAAS,CAgC1C"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.legacyVisualToInteractiveTable = exports.filterToVisual = void 0;
|
|
4
4
|
const utils_1 = require("@qrvey/utils");
|
|
5
5
|
const utils_helpers_1 = require("./utils.helpers");
|
|
6
|
-
const FilterBuilder_1 = require("../classes/FilterBuilder");
|
|
7
|
-
const filter_scopes_resources_1 = require("../resources/filter-scopes.resources");
|
|
8
|
-
const filter_sections_resources_1 = require("../resources/filter-sections.resources");
|
|
9
6
|
const filter_visual_resources_1 = require("../resources/filter-visual.resources");
|
|
10
7
|
const filters_resources_1 = require("../resources/filters.resources");
|
|
11
8
|
/**
|
|
@@ -24,70 +21,44 @@ function filterToVisual(filters, datasets = [], interactiveTable) {
|
|
|
24
21
|
}
|
|
25
22
|
exports.filterToVisual = filterToVisual;
|
|
26
23
|
/**
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* @param
|
|
30
|
-
* @param interactiveTable
|
|
31
|
-
* @returns
|
|
24
|
+
* Gets the Interactive Table object from the visual filters
|
|
25
|
+
* If an interactive table object is given, it will be merged with the new one
|
|
26
|
+
* @param visual the visual filters
|
|
27
|
+
* @param interactiveTable the interactive table object
|
|
28
|
+
* @returns the interactive table object
|
|
32
29
|
*/
|
|
33
|
-
function
|
|
34
|
-
if ((0, utils_1.isEmpty)(
|
|
30
|
+
function legacyVisualToInteractiveTable(visual, interactiveTable) {
|
|
31
|
+
if ((0, utils_1.isEmpty)(visual) || (0, utils_1.isEmpty)(visual?.scopes))
|
|
35
32
|
return;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
scopes: buildLegacyScopes(filters, datasets, interactiveTable),
|
|
33
|
+
const newInteractiveTable = {
|
|
34
|
+
interactScopes: [],
|
|
35
|
+
interactDatasets: [],
|
|
36
|
+
...interactiveTable,
|
|
41
37
|
};
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
*/
|
|
49
|
-
function legacyVisualToFilter(filterData) {
|
|
50
|
-
if ((0, utils_1.isEmpty)(filterData) || (0, utils_1.isEmpty)(filterData?.scopes))
|
|
51
|
-
return [];
|
|
52
|
-
const filters = [];
|
|
53
|
-
filterData.scopes.forEach((scope) => {
|
|
38
|
+
visual.scopes.forEach((scope) => {
|
|
39
|
+
newInteractiveTable.interactScopes.push({
|
|
40
|
+
collapsed: scope.collapsed,
|
|
41
|
+
scope: scope.scope,
|
|
42
|
+
scopeId: scope.id,
|
|
43
|
+
});
|
|
54
44
|
if (scope.datasets.length === 0)
|
|
55
45
|
return;
|
|
56
46
|
scope.datasets.forEach((dataset) => {
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
collapsed: filter.collapsed,
|
|
63
|
-
columnId: filter.column.id,
|
|
64
|
-
columnType: filter.column.type,
|
|
65
|
-
customLabel: filter.extras.filterLabel,
|
|
66
|
-
datasetId: dataset.qrveyid,
|
|
67
|
-
deletable: filter.deletable,
|
|
68
|
-
displayed: filter.displayed,
|
|
69
|
-
editable: filter.editable,
|
|
70
|
-
enableable: filter.enableable,
|
|
71
|
-
enabled: filter.enabled,
|
|
72
|
-
extras: filter.extras,
|
|
73
|
-
grouping: filter.property,
|
|
74
|
-
id: "",
|
|
75
|
-
lookupDisplayIndex: filter.lookupDisplayIndex,
|
|
76
|
-
operator: filter.operator,
|
|
77
|
-
scope: scope.scope,
|
|
78
|
-
scopeId: scope.scopeid,
|
|
79
|
-
section: filterData.section,
|
|
80
|
-
selectAll: filter.selectAll,
|
|
81
|
-
validator: filter.validator,
|
|
82
|
-
values: filter.values,
|
|
83
|
-
});
|
|
84
|
-
filters.push(fFilter);
|
|
47
|
+
newInteractiveTable.interactDatasets.push({
|
|
48
|
+
collapsed: scope.collapsed,
|
|
49
|
+
scope: scope.scope,
|
|
50
|
+
scopeId: scope.id,
|
|
51
|
+
datasetId: dataset.id,
|
|
85
52
|
});
|
|
86
53
|
});
|
|
87
54
|
});
|
|
88
|
-
|
|
55
|
+
if ((0, utils_1.isEmpty)(newInteractiveTable.interactScopes))
|
|
56
|
+
delete newInteractiveTable.interactScopes;
|
|
57
|
+
if ((0, utils_1.isEmpty)(newInteractiveTable.interactDatasets))
|
|
58
|
+
delete newInteractiveTable.interactDatasets;
|
|
59
|
+
return newInteractiveTable;
|
|
89
60
|
}
|
|
90
|
-
exports.
|
|
61
|
+
exports.legacyVisualToInteractiveTable = legacyVisualToInteractiveTable;
|
|
91
62
|
/**
|
|
92
63
|
* Gets a collection of scopes for the visual filter data.
|
|
93
64
|
* The scopes are organized by scope types and IDs
|
|
@@ -129,13 +100,11 @@ function buildScopes(filters = [], datasets = [], interactiveTable) {
|
|
|
129
100
|
* @returns the visual scope structure
|
|
130
101
|
*/
|
|
131
102
|
function buildScope(filter, interactiveTable) {
|
|
132
|
-
const { collapsed
|
|
103
|
+
const { collapsed } = interactiveTable?.interactScopes?.find((interactive) => interactive.scope === filter.scope &&
|
|
133
104
|
interactive.scopeId === filter.scopeId) ?? {};
|
|
134
105
|
return {
|
|
135
106
|
collapsed: collapsed ?? false,
|
|
136
107
|
datasets: [],
|
|
137
|
-
displayed: displayed ?? true,
|
|
138
|
-
enabled: enabled ?? true,
|
|
139
108
|
scope: filter.scope,
|
|
140
109
|
id: filter.scopeId,
|
|
141
110
|
section: filter.section,
|
|
@@ -149,13 +118,11 @@ function buildScope(filter, interactiveTable) {
|
|
|
149
118
|
* @returns an dataset structure
|
|
150
119
|
*/
|
|
151
120
|
function buildDataset(filter, dataset, interactiveTable) {
|
|
152
|
-
const { collapsed
|
|
121
|
+
const { collapsed } = interactiveTable?.interactDatasets?.find((interactive) => interactive.datasetId === filter.datasetId) ?? {};
|
|
153
122
|
return {
|
|
154
123
|
collapsed: collapsed ?? false,
|
|
155
124
|
id: filter.datasetId,
|
|
156
125
|
label: dataset?.label || "",
|
|
157
|
-
displayed: displayed ?? true,
|
|
158
|
-
enabled: enabled ?? true,
|
|
159
126
|
filters: [],
|
|
160
127
|
};
|
|
161
128
|
}
|
|
@@ -178,122 +145,3 @@ function buildFilter(filter, dataset) {
|
|
|
178
145
|
iconTooltip: filter.iconTooltip ?? filter_visual_resources_1.DEFAULT_UI_FILTER.iconTooltip,
|
|
179
146
|
};
|
|
180
147
|
}
|
|
181
|
-
/**
|
|
182
|
-
* Gets a collection of legacy scopes for the legacy visual filters.
|
|
183
|
-
* The scopes are organized by scope types and IDs
|
|
184
|
-
* Also, adds and organizes filters by datasets
|
|
185
|
-
* @param filters Collection of filters
|
|
186
|
-
* @param datasets Array of the dataset info
|
|
187
|
-
* @param interactiveTable table of interaction properties for each section
|
|
188
|
-
* @returns an array of visual scopes.
|
|
189
|
-
*/
|
|
190
|
-
function buildLegacyScopes(filters = [], datasets = [], interactiveTable) {
|
|
191
|
-
return filters.reduce((scopes, filter) => {
|
|
192
|
-
const datasetInfo = (0, utils_helpers_1.getDatasetInfo)({ columnId: filter.columnId, datasetId: filter.datasetId }, datasets);
|
|
193
|
-
const uiFilter = buildLegacyFilter(filter, datasetInfo);
|
|
194
|
-
const uiDataset = buildLegacyDataset(filter, datasetInfo, interactiveTable);
|
|
195
|
-
const uiScope = buildLegacyScope(filter, interactiveTable);
|
|
196
|
-
const scopeIndex = scopes.findIndex((sc) => sc.scope === filter.scope && sc.scopeid === filter.scopeId);
|
|
197
|
-
const datasetIndex = scopeIndex > -1
|
|
198
|
-
? scopes[scopeIndex].datasets.findIndex((dt) => dt.qrveyid === filter.datasetId)
|
|
199
|
-
: -1;
|
|
200
|
-
if (scopeIndex === -1) {
|
|
201
|
-
scopes.push({
|
|
202
|
-
...uiScope,
|
|
203
|
-
datasets: [{ ...uiDataset, filters: [uiFilter] }],
|
|
204
|
-
});
|
|
205
|
-
}
|
|
206
|
-
else if (datasetIndex === -1) {
|
|
207
|
-
scopes[scopeIndex].datasets.push({ ...uiDataset, filters: [uiFilter] });
|
|
208
|
-
}
|
|
209
|
-
else {
|
|
210
|
-
scopes[scopeIndex].datasets[datasetIndex].filters.push(uiFilter);
|
|
211
|
-
}
|
|
212
|
-
return scopes;
|
|
213
|
-
}, []);
|
|
214
|
-
}
|
|
215
|
-
/**
|
|
216
|
-
* Gets an legacy scope structure for the legacy filter data
|
|
217
|
-
* @param filter the filter
|
|
218
|
-
* @param interactiveTable table of interaction properties for each section
|
|
219
|
-
* @returns the legacy visual scope structure
|
|
220
|
-
*/
|
|
221
|
-
function buildLegacyScope(filter, interactiveTable) {
|
|
222
|
-
const { collapsed, displayed, enabled } = interactiveTable?.scopes.find((interactive) => interactive.scope === filter.scope &&
|
|
223
|
-
interactive.scopeId === filter.scopeId) ?? {};
|
|
224
|
-
return {
|
|
225
|
-
collapsed: collapsed ?? false,
|
|
226
|
-
datasets: [],
|
|
227
|
-
displayed: displayed ?? true,
|
|
228
|
-
enabled: enabled ?? true,
|
|
229
|
-
scope: filter.scope,
|
|
230
|
-
scopeid: filter.scopeId,
|
|
231
|
-
};
|
|
232
|
-
}
|
|
233
|
-
/**
|
|
234
|
-
* Gets an legacy dataset structure for the legacy visual filter
|
|
235
|
-
* @param filter the filter
|
|
236
|
-
* @param dataset the dataset info
|
|
237
|
-
* @param interactiveTable table of interaction properties for each section
|
|
238
|
-
* @returns an legacy dataset structure
|
|
239
|
-
*/
|
|
240
|
-
function buildLegacyDataset(filter, dataset, interactiveTable) {
|
|
241
|
-
const { collapsed, displayed, enabled } = interactiveTable?.datasets.find((interactive) => interactive.datasetId === filter.datasetId) ?? {};
|
|
242
|
-
return {
|
|
243
|
-
collapsed: collapsed ?? false,
|
|
244
|
-
qrveyid: filter.datasetId,
|
|
245
|
-
label: dataset?.label || "",
|
|
246
|
-
displayed: displayed ?? true,
|
|
247
|
-
enabled: enabled ?? true,
|
|
248
|
-
filters: [],
|
|
249
|
-
};
|
|
250
|
-
}
|
|
251
|
-
/**
|
|
252
|
-
* Gets an legacy filter structure for the legacy visual filter
|
|
253
|
-
* @param filter a UI structure filter
|
|
254
|
-
* @param dataset the dataset info
|
|
255
|
-
* @returns an legacy filter structure
|
|
256
|
-
*/
|
|
257
|
-
function buildLegacyFilter(filter, dataset) {
|
|
258
|
-
const columnInfo = dataset == null
|
|
259
|
-
? undefined
|
|
260
|
-
: (0, utils_helpers_1.getColumnInfo)({ columnId: filter.columnId, datasetId: filter.datasetId }, [dataset]);
|
|
261
|
-
return {
|
|
262
|
-
collapsed: filter.collapsed ?? false,
|
|
263
|
-
column: {
|
|
264
|
-
id: filter.columnId,
|
|
265
|
-
formulaType: columnInfo?.formulaType,
|
|
266
|
-
label: columnInfo?.label || "",
|
|
267
|
-
qrveyid: filter.datasetId,
|
|
268
|
-
aggregate: filter.aggregateType,
|
|
269
|
-
type: filter.columnType,
|
|
270
|
-
},
|
|
271
|
-
deletable: filter.deletable,
|
|
272
|
-
displayed: filter.displayed,
|
|
273
|
-
editable: filter.editable,
|
|
274
|
-
enableable: filter.enableable,
|
|
275
|
-
enabled: filter.enabled,
|
|
276
|
-
filterid: filter.id,
|
|
277
|
-
extras: {
|
|
278
|
-
...filter.extras,
|
|
279
|
-
filterLabel: filter.customLabel,
|
|
280
|
-
panelid: filter_scopes_resources_1.FILTER_SCOPE.CHART === filter.scope ? filter.scopeId : undefined,
|
|
281
|
-
info: !(0, utils_1.isEmpty)(filter.extras?.info)
|
|
282
|
-
? {
|
|
283
|
-
icon: filter.icon || "",
|
|
284
|
-
label: filter.iconTooltip || "",
|
|
285
|
-
}
|
|
286
|
-
: undefined,
|
|
287
|
-
scope: filter.scope,
|
|
288
|
-
scopeid: filter.scopeId,
|
|
289
|
-
section: filter.section,
|
|
290
|
-
},
|
|
291
|
-
lookupDisplayIndex: filter.lookupDisplayIndex,
|
|
292
|
-
nullValues: false,
|
|
293
|
-
operator: filter.operator,
|
|
294
|
-
property: filter.grouping,
|
|
295
|
-
selectAll: filter.selectAll,
|
|
296
|
-
validator: filter.validator,
|
|
297
|
-
values: filter.values,
|
|
298
|
-
};
|
|
299
|
-
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { IDataset, IFUData } from "@qrvey/utils";
|
|
2
|
+
import { IFilterPanelInteractiveTable } from "../resources/filter-panel.interfaces";
|
|
3
|
+
import { IFilter } from "../resources/filters.resources";
|
|
4
|
+
/**
|
|
5
|
+
* Generates a legacy visual filter structure from the filter collection.
|
|
6
|
+
* @param filters Array of filters
|
|
7
|
+
* @param datasets Array of the dataset info
|
|
8
|
+
* @param interactiveTable table of interaction properties for each section
|
|
9
|
+
* @returns a Filter Data structure
|
|
10
|
+
*/
|
|
11
|
+
export declare function filterToLegacyVisual(filters: IFilter[], datasets?: IDataset[], interactiveTable?: IFilterPanelInteractiveTable): IFUData | undefined;
|
|
12
|
+
/**
|
|
13
|
+
* Generates a legacy visual filter structure from the filter collection.
|
|
14
|
+
* @param filterData the legacy filter
|
|
15
|
+
* @returns a Filter collection
|
|
16
|
+
*/
|
|
17
|
+
export declare function legacyVisualToFilter(filterData: IFUData): IFilter[];
|
|
18
|
+
/**
|
|
19
|
+
* Gets the Interactive Table object from the legacy visual filters
|
|
20
|
+
* If an interactive table object is given, it will be merged with the new one
|
|
21
|
+
* @param legacyVisual the legacy visual filters
|
|
22
|
+
* @param interactiveTable the interactive table object
|
|
23
|
+
* @returns the interactive table object
|
|
24
|
+
*/
|
|
25
|
+
export declare function legacyVisualToInteractiveTable(legacyVisual: IFUData, interactiveTable?: IFilterPanelInteractiveTable): IFilterPanelInteractiveTable | undefined;
|
|
26
|
+
//# sourceMappingURL=filter-adapt.legacy.helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter-adapt.legacy.helpers.d.ts","sourceRoot":"","sources":["../../../src/helpers/filter-adapt.legacy.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,QAAQ,EACR,OAAO,EAMR,MAAM,cAAc,CAAC;AAMtB,OAAO,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AAEpF,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAEzD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAAE,EAClB,QAAQ,GAAE,QAAQ,EAAO,EACzB,gBAAgB,CAAC,EAAE,4BAA4B,GAC9C,OAAO,GAAG,SAAS,CASrB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,OAAO,GAAG,OAAO,EAAE,CAyCnE;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,YAAY,EAAE,OAAO,EACrB,gBAAgB,CAAC,EAAE,4BAA4B,GAC9C,4BAA4B,GAAG,SAAS,CAgC1C"}
|