@sisense/sdk-data 1.11.0 → 1.13.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/dist/cjs/dimensional-model/analytics/factory.d.ts +47 -0
- package/dist/cjs/dimensional-model/analytics/factory.js +153 -0
- package/dist/cjs/dimensional-model/analytics/factory.test.d.ts +1 -0
- package/dist/cjs/dimensional-model/analytics/factory.test.js +99 -0
- package/dist/cjs/dimensional-model/attributes.d.ts +139 -0
- package/dist/cjs/dimensional-model/attributes.js +342 -0
- package/dist/cjs/dimensional-model/attributes.test.d.ts +1 -0
- package/dist/cjs/dimensional-model/attributes.test.js +154 -0
- package/dist/cjs/dimensional-model/base.d.ts +43 -0
- package/dist/cjs/dimensional-model/base.js +58 -0
- package/dist/cjs/dimensional-model/base.test.d.ts +1 -0
- package/dist/cjs/dimensional-model/base.test.js +17 -0
- package/dist/cjs/dimensional-model/data-model.d.ts +13 -0
- package/dist/cjs/dimensional-model/data-model.js +37 -0
- package/dist/cjs/dimensional-model/dimensions.d.ts +167 -0
- package/dist/cjs/dimensional-model/dimensions.js +307 -0
- package/dist/cjs/dimensional-model/dimensions.test.d.ts +1 -0
- package/dist/cjs/dimensional-model/dimensions.test.js +54 -0
- package/dist/cjs/dimensional-model/factory.d.ts +17 -0
- package/dist/cjs/dimensional-model/factory.js +54 -0
- package/dist/cjs/dimensional-model/filters/factory.d.ts +797 -0
- package/dist/cjs/dimensional-model/filters/factory.js +962 -0
- package/dist/cjs/dimensional-model/filters/factory.test.d.ts +1 -0
- package/dist/cjs/dimensional-model/filters/factory.test.js +366 -0
- package/dist/cjs/dimensional-model/filters/filters.d.ts +344 -0
- package/dist/cjs/dimensional-model/filters/filters.js +663 -0
- package/dist/cjs/dimensional-model/filters/filters.test.d.ts +1 -0
- package/dist/cjs/dimensional-model/filters/filters.test.js +225 -0
- package/dist/cjs/dimensional-model/filters/utils/attribute-measure-util.d.ts +47 -0
- package/dist/cjs/dimensional-model/filters/utils/attribute-measure-util.js +111 -0
- package/dist/cjs/dimensional-model/filters/utils/condition-filter-util.d.ts +21 -0
- package/dist/cjs/dimensional-model/filters/utils/condition-filter-util.js +196 -0
- package/dist/cjs/dimensional-model/filters/utils/date-time-filter-util.d.ts +2 -0
- package/dist/cjs/dimensional-model/filters/utils/date-time-filter-util.js +12 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-code-util.d.ts +13 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-code-util.js +58 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-code-util.test.d.ts +1 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-code-util.test.js +32 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-from-jaql-util.d.ts +82 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-from-jaql-util.js +215 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-from-jaql-util.test.d.ts +1 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-from-jaql-util.test.js +623 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-matcher-utils.d.ts +5 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-matcher-utils.js +174 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-matcher-utils.test.d.ts +1 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-matcher-utils.test.js +236 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-types-util.d.ts +17 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-types-util.js +79 -0
- package/dist/cjs/dimensional-model/filters/utils/types.d.ts +206 -0
- package/dist/cjs/dimensional-model/filters/utils/types.js +99 -0
- package/dist/cjs/dimensional-model/interfaces.d.ts +512 -0
- package/dist/cjs/dimensional-model/interfaces.js +31 -0
- package/dist/cjs/dimensional-model/measures/factory.d.ts +920 -0
- package/dist/cjs/dimensional-model/measures/factory.js +1188 -0
- package/dist/cjs/dimensional-model/measures/factory.test.d.ts +1 -0
- package/dist/cjs/dimensional-model/measures/factory.test.js +481 -0
- package/dist/cjs/dimensional-model/measures/measures.d.ts +217 -0
- package/dist/cjs/dimensional-model/measures/measures.js +416 -0
- package/dist/cjs/dimensional-model/measures/measures.test.d.ts +1 -0
- package/dist/cjs/dimensional-model/measures/measures.test.js +79 -0
- package/dist/cjs/dimensional-model/simple-column-types.d.ts +39 -0
- package/dist/cjs/dimensional-model/simple-column-types.js +134 -0
- package/dist/cjs/dimensional-model/simple-column-types.test.d.ts +1 -0
- package/dist/cjs/dimensional-model/simple-column-types.test.js +85 -0
- package/dist/cjs/dimensional-model/types.d.ts +256 -0
- package/dist/cjs/dimensional-model/types.js +298 -0
- package/dist/cjs/dimensional-model/types.test.d.ts +1 -0
- package/dist/cjs/dimensional-model/types.test.js +33 -0
- package/dist/cjs/index.d.ts +93 -0
- package/dist/cjs/index.js +123 -0
- package/dist/cjs/interfaces.d.ts +367 -0
- package/dist/cjs/interfaces.js +21 -0
- package/dist/cjs/translation/initialize-i18n.d.ts +2 -0
- package/dist/cjs/translation/initialize-i18n.js +14 -0
- package/dist/cjs/translation/resources/en.d.ts +28 -0
- package/dist/cjs/translation/resources/en.js +30 -0
- package/dist/cjs/translation/resources/index.d.ts +53 -0
- package/dist/cjs/translation/resources/index.js +10 -0
- package/dist/cjs/translation/resources/uk.d.ts +5 -0
- package/dist/cjs/translation/resources/uk.js +30 -0
- package/dist/cjs/translation/translatable-error.d.ts +5 -0
- package/dist/cjs/translation/translatable-error.js +15 -0
- package/dist/cjs/utils.d.ts +37 -0
- package/dist/cjs/utils.js +105 -0
- package/dist/cjs/utils.test.d.ts +1 -0
- package/dist/cjs/utils.test.js +158 -0
- package/dist/dimensional-model/analytics/factory.js +6 -4
- package/dist/dimensional-model/filters/factory.d.ts +81 -42
- package/dist/dimensional-model/filters/factory.js +125 -87
- package/dist/dimensional-model/filters/filters.d.ts +58 -13
- package/dist/dimensional-model/filters/filters.js +117 -27
- package/dist/dimensional-model/filters/utils/condition-filter-util.d.ts +4 -2
- package/dist/dimensional-model/filters/utils/condition-filter-util.js +30 -26
- package/dist/dimensional-model/filters/utils/filter-code-util.js +5 -1
- package/dist/dimensional-model/filters/utils/filter-from-jaql-util.d.ts +26 -11
- package/dist/dimensional-model/filters/utils/filter-from-jaql-util.js +58 -27
- package/dist/dimensional-model/filters/utils/filter-types-util.js +3 -3
- package/dist/dimensional-model/filters/utils/types.d.ts +6 -0
- package/package.json +18 -9
|
@@ -1,67 +1,82 @@
|
|
|
1
|
-
import { ConditionFilterJaql, FilterJaqlInternal, PeriodFilterJaql, RangeFilterJaql, SpecificItemsFilterJaql } from './types.js';
|
|
1
|
+
import { BaseFilterJaql, ConditionFilterJaql, FilterJaqlInternal, PeriodFilterJaql, RangeFilterJaql, SpecificItemsFilterJaql } from './types.js';
|
|
2
2
|
import { Attribute, BaseMeasure, Filter, LevelAttribute } from '../../interfaces.js';
|
|
3
3
|
import { FilterJaql } from '../../types.js';
|
|
4
4
|
/**
|
|
5
5
|
* Creates a generic filter (aka pass-through JAQL filter) if the JAQL cannot be translated to a specific filter type.
|
|
6
6
|
*
|
|
7
7
|
* @param jaql - The JAQL object.
|
|
8
|
-
* @param
|
|
8
|
+
* @param guid - Optional GUID for the filter
|
|
9
9
|
* @returns A generic Filter object.
|
|
10
10
|
*/
|
|
11
|
-
export declare const createGenericFilter: (jaql: FilterJaql | FilterJaqlInternal,
|
|
11
|
+
export declare const createGenericFilter: (jaql: FilterJaql | FilterJaqlInternal, guid?: string) => Filter;
|
|
12
12
|
/**
|
|
13
13
|
* Creates a filter that includes all members of the attribute.
|
|
14
14
|
*
|
|
15
15
|
* @param attribute - The attribute.
|
|
16
|
+
* @param guid - Optional GUID for the filter
|
|
16
17
|
* @returns The created Filter object.
|
|
17
18
|
*/
|
|
18
|
-
export declare const createFilterIncludeAll: (attribute: Attribute) => Filter;
|
|
19
|
+
export declare const createFilterIncludeAll: (attribute: Attribute, guid?: string) => Filter;
|
|
19
20
|
/**
|
|
20
21
|
* Creates a filter from a specific items filter JAQL object.
|
|
21
22
|
*
|
|
22
23
|
* @param attribute - attribute
|
|
23
24
|
* @param specificItemsFilterJaql - Specific Items Filter Jaql
|
|
25
|
+
* @param guid - Optional GUID for the filter
|
|
24
26
|
* @returns Filter object
|
|
25
27
|
*/
|
|
26
|
-
export declare const createFilterFromSpecificItemsFilterJaql: (attribute: Attribute, specificItemsFilterJaql: SpecificItemsFilterJaql) => Filter;
|
|
28
|
+
export declare const createFilterFromSpecificItemsFilterJaql: (attribute: Attribute, specificItemsFilterJaql: SpecificItemsFilterJaql, guid?: string) => Filter;
|
|
27
29
|
/**
|
|
28
30
|
* Creates a filter from a date range filter JAQL object.
|
|
29
31
|
*
|
|
30
32
|
* @param attribute - attribute
|
|
31
33
|
* @param rangeFilterJaql - Range Filter Jaql
|
|
34
|
+
* @param guid - Optional GUID for the filter
|
|
32
35
|
* @returns Filter object
|
|
33
36
|
*/
|
|
34
|
-
export declare const createFilterFromDateRangeFilterJaql: (attribute: LevelAttribute, rangeFilterJaql: RangeFilterJaql) => Filter;
|
|
37
|
+
export declare const createFilterFromDateRangeFilterJaql: (attribute: LevelAttribute, rangeFilterJaql: RangeFilterJaql, guid?: string) => Filter;
|
|
35
38
|
/**
|
|
36
39
|
* Creates a filter from a numeric range filter JAQL object.
|
|
37
40
|
*
|
|
38
41
|
* @param attribute - attribute
|
|
39
42
|
* @param rangeFilterJaql - Range Filter Jaql
|
|
43
|
+
* @param guid - Optional GUID for the filter
|
|
40
44
|
* @returns Filter object
|
|
41
45
|
*/
|
|
42
|
-
export declare const createFilterFromNumericRangeJaql: (attribute: Attribute, rangeFilterJaql: RangeFilterJaql) => Filter;
|
|
46
|
+
export declare const createFilterFromNumericRangeJaql: (attribute: Attribute, rangeFilterJaql: RangeFilterJaql, guid?: string) => Filter;
|
|
43
47
|
/**
|
|
44
48
|
* Creates a filter from a period filter JAQL object.
|
|
45
49
|
*
|
|
46
50
|
* @param attribute - attribute
|
|
47
51
|
* @param periodFilterJaql - Period Filter Jaql
|
|
52
|
+
* @param guid - Optional GUID for the filter
|
|
48
53
|
* @returns Filter object
|
|
49
54
|
*/
|
|
50
|
-
export declare const createFilterFromPeriodFilterJaql: (attribute: LevelAttribute, periodFilterJaql: PeriodFilterJaql) => Filter;
|
|
55
|
+
export declare const createFilterFromPeriodFilterJaql: (attribute: LevelAttribute, periodFilterJaql: PeriodFilterJaql, guid?: string) => Filter;
|
|
51
56
|
/**
|
|
52
57
|
* Creates a filter from a condition filter JAQL object.
|
|
53
58
|
*
|
|
54
59
|
* @param attribute - attribute
|
|
55
60
|
* @param conditionFilterJaql - Condition Filter Jaql
|
|
56
61
|
* @param measure - measure
|
|
62
|
+
* @param guid - Optional GUID for the filter
|
|
57
63
|
* @returns Filter object
|
|
58
64
|
*/
|
|
59
|
-
export declare const createFilterFromConditionFilterJaql: (attribute: Attribute, conditionFilterJaql: ConditionFilterJaql, measure?: BaseMeasure) => Filter;
|
|
65
|
+
export declare const createFilterFromConditionFilterJaql: (attribute: Attribute, conditionFilterJaql: ConditionFilterJaql, measure?: BaseMeasure, guid?: string) => Filter;
|
|
66
|
+
/**
|
|
67
|
+
* Creates a filter from a custom filter JAQL object.
|
|
68
|
+
*
|
|
69
|
+
* @param attribute - attribute
|
|
70
|
+
* @param customFilterJaql - Custom Filter Jaql
|
|
71
|
+
* @param guid - Optional GUID for the filter
|
|
72
|
+
* @returns Filter object
|
|
73
|
+
*/
|
|
74
|
+
export declare const createFilterFromCustomFilterJaql: (attribute: Attribute, customFilterJaql: BaseFilterJaql, guid?: string) => Filter;
|
|
60
75
|
/**
|
|
61
76
|
* Creates a filter from a filter JAQL object.
|
|
62
77
|
*
|
|
63
78
|
* @param jaql - The filter JAQL object.
|
|
64
|
-
* @param
|
|
79
|
+
* @param guid - Optional GUID for the filter
|
|
65
80
|
* @returns Filter object.
|
|
66
81
|
*/
|
|
67
|
-
export declare const createFilterFromJaqlInternal: (jaql: FilterJaqlInternal,
|
|
82
|
+
export declare const createFilterFromJaqlInternal: (jaql: FilterJaqlInternal, guid?: string) => Filter;
|
|
@@ -4,16 +4,17 @@ import { createAttributeFilterFromConditionFilterJaql, createMeasureFilterFromCo
|
|
|
4
4
|
import { extractFilterTypeFromFilterJaql } from './filter-types-util.js';
|
|
5
5
|
import { withComposeCode } from './filter-code-util.js';
|
|
6
6
|
import { createAttributeFromFilterJaql, createMeasureFromFilterJaql, } from './attribute-measure-util.js';
|
|
7
|
+
import { guidFast } from '../../../utils.js';
|
|
7
8
|
/**
|
|
8
9
|
* Creates a generic filter (aka pass-through JAQL filter) if the JAQL cannot be translated to a specific filter type.
|
|
9
10
|
*
|
|
10
11
|
* @param jaql - The JAQL object.
|
|
11
|
-
* @param
|
|
12
|
+
* @param guid - Optional GUID for the filter
|
|
12
13
|
* @returns A generic Filter object.
|
|
13
14
|
*/
|
|
14
|
-
export const createGenericFilter = (jaql,
|
|
15
|
+
export const createGenericFilter = (jaql, guid) => {
|
|
15
16
|
return {
|
|
16
|
-
guid:
|
|
17
|
+
guid: guid || guidFast(13),
|
|
17
18
|
jaql: (nested) => {
|
|
18
19
|
if (nested) {
|
|
19
20
|
return jaql;
|
|
@@ -39,54 +40,71 @@ export const createGenericFilter = (jaql, instanceid) => {
|
|
|
39
40
|
* Creates a filter that includes all members of the attribute.
|
|
40
41
|
*
|
|
41
42
|
* @param attribute - The attribute.
|
|
43
|
+
* @param guid - Optional GUID for the filter
|
|
42
44
|
* @returns The created Filter object.
|
|
43
45
|
*/
|
|
44
|
-
export const createFilterIncludeAll = (attribute) => {
|
|
45
|
-
return withComposeCode(filterFactory.members)(attribute, []);
|
|
46
|
+
export const createFilterIncludeAll = (attribute, guid) => {
|
|
47
|
+
return withComposeCode(filterFactory.members)(attribute, [], [], guid);
|
|
46
48
|
};
|
|
47
49
|
/**
|
|
48
50
|
* Creates a filter from a specific items filter JAQL object.
|
|
49
51
|
*
|
|
50
52
|
* @param attribute - attribute
|
|
51
53
|
* @param specificItemsFilterJaql - Specific Items Filter Jaql
|
|
54
|
+
* @param guid - Optional GUID for the filter
|
|
52
55
|
* @returns Filter object
|
|
53
56
|
*/
|
|
54
|
-
export const createFilterFromSpecificItemsFilterJaql = (attribute, specificItemsFilterJaql) => {
|
|
55
|
-
|
|
57
|
+
export const createFilterFromSpecificItemsFilterJaql = (attribute, specificItemsFilterJaql, guid) => {
|
|
58
|
+
const deactivatedMembers = getDeactivatedMembersFromFilterJaql(specificItemsFilterJaql);
|
|
59
|
+
const activeMembers = getActiveMembersFromFilterJaql(specificItemsFilterJaql, deactivatedMembers);
|
|
60
|
+
return withComposeCode(filterFactory.members)(attribute, activeMembers, deactivatedMembers, guid);
|
|
56
61
|
};
|
|
62
|
+
function getDeactivatedMembersFromFilterJaql(filterJaql) {
|
|
63
|
+
var _a, _b, _c;
|
|
64
|
+
return ((_a = filterJaql.filter) === null || _a === void 0 ? void 0 : _a.turnedOff) ? (_c = (_b = filterJaql.filter) === null || _b === void 0 ? void 0 : _b.exclude) === null || _c === void 0 ? void 0 : _c.members : undefined;
|
|
65
|
+
}
|
|
66
|
+
function getActiveMembersFromFilterJaql(filterJaql, deactivatedMembers) {
|
|
67
|
+
const allMembers = filterJaql.members;
|
|
68
|
+
return deactivatedMembers
|
|
69
|
+
? allMembers.filter((member) => !deactivatedMembers.includes(member))
|
|
70
|
+
: allMembers;
|
|
71
|
+
}
|
|
57
72
|
/**
|
|
58
73
|
* Creates a filter from a date range filter JAQL object.
|
|
59
74
|
*
|
|
60
75
|
* @param attribute - attribute
|
|
61
76
|
* @param rangeFilterJaql - Range Filter Jaql
|
|
77
|
+
* @param guid - Optional GUID for the filter
|
|
62
78
|
* @returns Filter object
|
|
63
79
|
*/
|
|
64
|
-
export const createFilterFromDateRangeFilterJaql = (attribute, rangeFilterJaql) => {
|
|
65
|
-
return withComposeCode(filterFactory.dateRange)(attribute, rangeFilterJaql.from, rangeFilterJaql.to);
|
|
80
|
+
export const createFilterFromDateRangeFilterJaql = (attribute, rangeFilterJaql, guid) => {
|
|
81
|
+
return withComposeCode(filterFactory.dateRange)(attribute, rangeFilterJaql.from, rangeFilterJaql.to, guid);
|
|
66
82
|
};
|
|
67
83
|
/**
|
|
68
84
|
* Creates a filter from a numeric range filter JAQL object.
|
|
69
85
|
*
|
|
70
86
|
* @param attribute - attribute
|
|
71
87
|
* @param rangeFilterJaql - Range Filter Jaql
|
|
88
|
+
* @param guid - Optional GUID for the filter
|
|
72
89
|
* @returns Filter object
|
|
73
90
|
*/
|
|
74
|
-
export const createFilterFromNumericRangeJaql = (attribute, rangeFilterJaql) => {
|
|
75
|
-
return withComposeCode(filterFactory.between)(attribute, rangeFilterJaql.from, rangeFilterJaql.to);
|
|
91
|
+
export const createFilterFromNumericRangeJaql = (attribute, rangeFilterJaql, guid) => {
|
|
92
|
+
return withComposeCode(filterFactory.between)(attribute, rangeFilterJaql.from, rangeFilterJaql.to, guid);
|
|
76
93
|
};
|
|
77
94
|
/**
|
|
78
95
|
* Creates a filter from a period filter JAQL object.
|
|
79
96
|
*
|
|
80
97
|
* @param attribute - attribute
|
|
81
98
|
* @param periodFilterJaql - Period Filter Jaql
|
|
99
|
+
* @param guid - Optional GUID for the filter
|
|
82
100
|
* @returns Filter object
|
|
83
101
|
*/
|
|
84
|
-
export const createFilterFromPeriodFilterJaql = (attribute, periodFilterJaql) => {
|
|
102
|
+
export const createFilterFromPeriodFilterJaql = (attribute, periodFilterJaql, guid) => {
|
|
85
103
|
if (periodFilterJaql.last) {
|
|
86
|
-
return withComposeCode(filterFactory.dateRelativeTo)(attribute, periodFilterJaql.last.offset, periodFilterJaql.last.count, periodFilterJaql.last.anchor);
|
|
104
|
+
return withComposeCode(filterFactory.dateRelativeTo)(attribute, periodFilterJaql.last.offset, periodFilterJaql.last.count, periodFilterJaql.last.anchor, guid);
|
|
87
105
|
}
|
|
88
106
|
else {
|
|
89
|
-
return withComposeCode(filterFactory.dateRelativeFrom)(attribute, periodFilterJaql.next.offset, periodFilterJaql.next.count, periodFilterJaql.next.anchor);
|
|
107
|
+
return withComposeCode(filterFactory.dateRelativeFrom)(attribute, periodFilterJaql.next.offset, periodFilterJaql.next.count, periodFilterJaql.next.anchor, guid);
|
|
90
108
|
}
|
|
91
109
|
};
|
|
92
110
|
/**
|
|
@@ -95,24 +113,36 @@ export const createFilterFromPeriodFilterJaql = (attribute, periodFilterJaql) =>
|
|
|
95
113
|
* @param attribute - attribute
|
|
96
114
|
* @param conditionFilterJaql - Condition Filter Jaql
|
|
97
115
|
* @param measure - measure
|
|
116
|
+
* @param guid - Optional GUID for the filter
|
|
98
117
|
* @returns Filter object
|
|
99
118
|
*/
|
|
100
|
-
export const createFilterFromConditionFilterJaql = (attribute, conditionFilterJaql, measure) => {
|
|
119
|
+
export const createFilterFromConditionFilterJaql = (attribute, conditionFilterJaql, measure, guid) => {
|
|
101
120
|
if (measure) {
|
|
102
|
-
return createMeasureFilterFromConditionFilterJaql(measure, conditionFilterJaql);
|
|
121
|
+
return createMeasureFilterFromConditionFilterJaql(measure, conditionFilterJaql, guid);
|
|
103
122
|
}
|
|
104
123
|
else {
|
|
105
|
-
return createAttributeFilterFromConditionFilterJaql(attribute, conditionFilterJaql);
|
|
124
|
+
return createAttributeFilterFromConditionFilterJaql(attribute, conditionFilterJaql, guid);
|
|
106
125
|
}
|
|
107
126
|
};
|
|
127
|
+
/**
|
|
128
|
+
* Creates a filter from a custom filter JAQL object.
|
|
129
|
+
*
|
|
130
|
+
* @param attribute - attribute
|
|
131
|
+
* @param customFilterJaql - Custom Filter Jaql
|
|
132
|
+
* @param guid - Optional GUID for the filter
|
|
133
|
+
* @returns Filter object
|
|
134
|
+
*/
|
|
135
|
+
export const createFilterFromCustomFilterJaql = (attribute, customFilterJaql, guid) => {
|
|
136
|
+
return withComposeCode(filterFactory.customFilter)(attribute, customFilterJaql, guid);
|
|
137
|
+
};
|
|
108
138
|
/**
|
|
109
139
|
* Creates a filter from a filter JAQL object.
|
|
110
140
|
*
|
|
111
141
|
* @param jaql - The filter JAQL object.
|
|
112
|
-
* @param
|
|
142
|
+
* @param guid - Optional GUID for the filter
|
|
113
143
|
* @returns Filter object.
|
|
114
144
|
*/
|
|
115
|
-
export const createFilterFromJaqlInternal = (jaql,
|
|
145
|
+
export const createFilterFromJaqlInternal = (jaql, guid) => {
|
|
116
146
|
try {
|
|
117
147
|
if ('formula' in jaql) {
|
|
118
148
|
// generic pass-through JAQL filter will be used instead
|
|
@@ -125,25 +155,26 @@ export const createFilterFromJaqlInternal = (jaql, instanceid) => {
|
|
|
125
155
|
const measure = createMeasureFromFilterJaql(jaql);
|
|
126
156
|
switch (filterType) {
|
|
127
157
|
case FILTER_TYPES.INCLUDE_ALL:
|
|
128
|
-
return createFilterIncludeAll(attribute);
|
|
158
|
+
return createFilterIncludeAll(attribute, guid);
|
|
129
159
|
case FILTER_TYPES.SPECIFIC_ITEMS:
|
|
130
|
-
return createFilterFromSpecificItemsFilterJaql(attribute, filterJaqlWithType);
|
|
160
|
+
return createFilterFromSpecificItemsFilterJaql(attribute, filterJaqlWithType, guid);
|
|
131
161
|
case FILTER_TYPES.CONDITION:
|
|
132
|
-
return createFilterFromConditionFilterJaql(attribute, filterJaqlWithType, measure);
|
|
162
|
+
return createFilterFromConditionFilterJaql(attribute, filterJaqlWithType, measure, guid);
|
|
133
163
|
case FILTER_TYPES.DATE_RANGE:
|
|
134
|
-
return createFilterFromDateRangeFilterJaql(attribute, filterJaqlWithType);
|
|
164
|
+
return createFilterFromDateRangeFilterJaql(attribute, filterJaqlWithType, guid);
|
|
135
165
|
case FILTER_TYPES.PERIOD:
|
|
136
|
-
return createFilterFromPeriodFilterJaql(attribute, filterJaqlWithType);
|
|
166
|
+
return createFilterFromPeriodFilterJaql(attribute, filterJaqlWithType, guid);
|
|
137
167
|
case FILTER_TYPES.NUMERIC_RANGE:
|
|
138
|
-
return createFilterFromNumericRangeJaql(attribute, filterJaqlWithType);
|
|
168
|
+
return createFilterFromNumericRangeJaql(attribute, filterJaqlWithType, guid);
|
|
139
169
|
case FILTER_TYPES.ADVANCED:
|
|
170
|
+
return createFilterFromCustomFilterJaql(attribute, filterJaqlWithType, guid);
|
|
140
171
|
case FILTER_TYPES.INVALID:
|
|
141
|
-
return createGenericFilter(jaql,
|
|
172
|
+
return createGenericFilter(jaql, guid);
|
|
142
173
|
}
|
|
143
174
|
}
|
|
144
175
|
catch (e) {
|
|
145
176
|
// if a filter type is untranslatable, fall back to the generic pass-through JAQL filter
|
|
146
177
|
// console.error(e);
|
|
147
178
|
}
|
|
148
|
-
return createGenericFilter(jaql,
|
|
179
|
+
return createGenericFilter(jaql, guid);
|
|
149
180
|
};
|
|
@@ -29,6 +29,8 @@ const isInvalidFilter = (filter) => filter.filterType === FILTER_TYPES.INVALID;
|
|
|
29
29
|
export const getFilterType = (filter, dataType = FilterModalType.DATE_TIME, timeData) => {
|
|
30
30
|
if (timeData && isTimeLevelNotSupported(timeData))
|
|
31
31
|
return FILTER_TYPES.ADVANCED;
|
|
32
|
+
if (isAdvancedFilter(filter))
|
|
33
|
+
return FILTER_TYPES.ADVANCED;
|
|
32
34
|
if (isIncludeAllFilter(filter))
|
|
33
35
|
return FILTER_TYPES.INCLUDE_ALL;
|
|
34
36
|
if (isPeriodFilter(filter))
|
|
@@ -41,11 +43,9 @@ export const getFilterType = (filter, dataType = FilterModalType.DATE_TIME, time
|
|
|
41
43
|
return FILTER_TYPES.NUMERIC_RANGE;
|
|
42
44
|
if (isConditionFilter(filter))
|
|
43
45
|
return FILTER_TYPES.CONDITION;
|
|
44
|
-
if (isAdvancedFilter(filter))
|
|
45
|
-
return FILTER_TYPES.ADVANCED;
|
|
46
46
|
if (isInvalidFilter(filter))
|
|
47
47
|
return FILTER_TYPES.INVALID;
|
|
48
|
-
return FILTER_TYPES.
|
|
48
|
+
return FILTER_TYPES.INVALID;
|
|
49
49
|
};
|
|
50
50
|
/**
|
|
51
51
|
* Extracts Filter Type from Filter Jaql
|
|
@@ -70,6 +70,12 @@ export declare type FilterMultiSelectJaql = {
|
|
|
70
70
|
multiSelection: boolean;
|
|
71
71
|
members: string[];
|
|
72
72
|
isCondition?: boolean;
|
|
73
|
+
filter?: {
|
|
74
|
+
turnedOff?: boolean;
|
|
75
|
+
exclude?: {
|
|
76
|
+
members?: string[];
|
|
77
|
+
};
|
|
78
|
+
};
|
|
73
79
|
};
|
|
74
80
|
export declare type FilterMultipleConditionJaql = {
|
|
75
81
|
or: ConditionFilterJaql[];
|
package/package.json
CHANGED
|
@@ -11,20 +11,29 @@
|
|
|
11
11
|
"Sisense",
|
|
12
12
|
"Compose SDK"
|
|
13
13
|
],
|
|
14
|
-
"version": "1.
|
|
14
|
+
"version": "1.13.0",
|
|
15
15
|
"type": "module",
|
|
16
|
-
"
|
|
17
|
-
".": "./dist/index.js",
|
|
18
|
-
"./dist/dimensional-model/filters/filters": "./dist/dimensional-model/filters/filters.js"
|
|
19
|
-
},
|
|
20
|
-
"main": "./dist/index.js",
|
|
16
|
+
"main": "./dist/cjs/index.js",
|
|
21
17
|
"module": "./dist/index.js",
|
|
22
18
|
"types": "./dist/index.d.ts",
|
|
19
|
+
"exports": {
|
|
20
|
+
".": {
|
|
21
|
+
"require": "./dist/cjs/index.js",
|
|
22
|
+
"import": "./dist/index.js",
|
|
23
|
+
"types": "./dist/index.d.ts",
|
|
24
|
+
"default": "./dist/index.js"
|
|
25
|
+
},
|
|
26
|
+
"./dist/dimensional-model/filters/filters": {
|
|
27
|
+
"default": "./dist/dimensional-model/filters/filters.js",
|
|
28
|
+
"import": "./dist/dimensional-model/filters/filters.js",
|
|
29
|
+
"require": "./dist/cjs/dimensional-model/filters/filters.js"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
23
32
|
"author": "Sisense",
|
|
24
33
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
25
34
|
"dependencies": {
|
|
26
|
-
"@sisense/sdk-common": "^1.
|
|
27
|
-
"@sisense/sdk-rest-client": "^1.
|
|
35
|
+
"@sisense/sdk-common": "^1.13.0",
|
|
36
|
+
"@sisense/sdk-rest-client": "^1.13.0",
|
|
28
37
|
"guid-typescript": "^1.0.9",
|
|
29
38
|
"lodash": "^4.17.21",
|
|
30
39
|
"numeral": "^2.0.6",
|
|
@@ -33,7 +42,7 @@
|
|
|
33
42
|
"scripts": {
|
|
34
43
|
"type-check": "tsc --noEmit",
|
|
35
44
|
"build": "tsc --build tsconfig.build.json",
|
|
36
|
-
"build:prod": "tsc --project tsconfig.prod.json",
|
|
45
|
+
"build:prod": "tsc --project tsconfig.prod.json && tsc --project tsconfig.cjs.json",
|
|
37
46
|
"build.watch": "tsc --build --watch",
|
|
38
47
|
"clean": "rm -rf dist coverage tsconfig.build.tsbuildinfo tsconfig.prod.tsbuildinfo",
|
|
39
48
|
"lint": "eslint . --fix",
|