@sisense/sdk-data 1.11.0 → 1.12.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 +151 -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 +796 -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 +321 -0
- package/dist/cjs/dimensional-model/filters/filters.js +614 -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 +194 -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 +54 -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 +73 -0
- package/dist/cjs/dimensional-model/filters/utils/filter-from-jaql-util.js +190 -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 +558 -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 +200 -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/filters/factory.d.ts +80 -42
- package/dist/dimensional-model/filters/factory.js +123 -85
- package/dist/dimensional-model/filters/filters.d.ts +34 -12
- package/dist/dimensional-model/filters/filters.js +69 -27
- package/dist/dimensional-model/filters/utils/condition-filter-util.d.ts +4 -2
- package/dist/dimensional-model/filters/utils/condition-filter-util.js +27 -25
- package/dist/dimensional-model/filters/utils/filter-code-util.js +1 -1
- package/dist/dimensional-model/filters/utils/filter-from-jaql-util.d.ts +16 -10
- package/dist/dimensional-model/filters/utils/filter-from-jaql-util.js +34 -27
- package/package.json +18 -9
|
@@ -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,59 @@ 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
|
-
return withComposeCode(filterFactory.members)(attribute, specificItemsFilterJaql.members);
|
|
57
|
+
export const createFilterFromSpecificItemsFilterJaql = (attribute, specificItemsFilterJaql, guid) => {
|
|
58
|
+
return withComposeCode(filterFactory.members)(attribute, specificItemsFilterJaql.members, guid);
|
|
56
59
|
};
|
|
57
60
|
/**
|
|
58
61
|
* Creates a filter from a date range filter JAQL object.
|
|
59
62
|
*
|
|
60
63
|
* @param attribute - attribute
|
|
61
64
|
* @param rangeFilterJaql - Range Filter Jaql
|
|
65
|
+
* @param guid - Optional GUID for the filter
|
|
62
66
|
* @returns Filter object
|
|
63
67
|
*/
|
|
64
|
-
export const createFilterFromDateRangeFilterJaql = (attribute, rangeFilterJaql) => {
|
|
65
|
-
return withComposeCode(filterFactory.dateRange)(attribute, rangeFilterJaql.from, rangeFilterJaql.to);
|
|
68
|
+
export const createFilterFromDateRangeFilterJaql = (attribute, rangeFilterJaql, guid) => {
|
|
69
|
+
return withComposeCode(filterFactory.dateRange)(attribute, rangeFilterJaql.from, rangeFilterJaql.to, guid);
|
|
66
70
|
};
|
|
67
71
|
/**
|
|
68
72
|
* Creates a filter from a numeric range filter JAQL object.
|
|
69
73
|
*
|
|
70
74
|
* @param attribute - attribute
|
|
71
75
|
* @param rangeFilterJaql - Range Filter Jaql
|
|
76
|
+
* @param guid - Optional GUID for the filter
|
|
72
77
|
* @returns Filter object
|
|
73
78
|
*/
|
|
74
|
-
export const createFilterFromNumericRangeJaql = (attribute, rangeFilterJaql) => {
|
|
75
|
-
return withComposeCode(filterFactory.between)(attribute, rangeFilterJaql.from, rangeFilterJaql.to);
|
|
79
|
+
export const createFilterFromNumericRangeJaql = (attribute, rangeFilterJaql, guid) => {
|
|
80
|
+
return withComposeCode(filterFactory.between)(attribute, rangeFilterJaql.from, rangeFilterJaql.to, guid);
|
|
76
81
|
};
|
|
77
82
|
/**
|
|
78
83
|
* Creates a filter from a period filter JAQL object.
|
|
79
84
|
*
|
|
80
85
|
* @param attribute - attribute
|
|
81
86
|
* @param periodFilterJaql - Period Filter Jaql
|
|
87
|
+
* @param guid - Optional GUID for the filter
|
|
82
88
|
* @returns Filter object
|
|
83
89
|
*/
|
|
84
|
-
export const createFilterFromPeriodFilterJaql = (attribute, periodFilterJaql) => {
|
|
90
|
+
export const createFilterFromPeriodFilterJaql = (attribute, periodFilterJaql, guid) => {
|
|
85
91
|
if (periodFilterJaql.last) {
|
|
86
|
-
return withComposeCode(filterFactory.dateRelativeTo)(attribute, periodFilterJaql.last.offset, periodFilterJaql.last.count, periodFilterJaql.last.anchor);
|
|
92
|
+
return withComposeCode(filterFactory.dateRelativeTo)(attribute, periodFilterJaql.last.offset, periodFilterJaql.last.count, periodFilterJaql.last.anchor, guid);
|
|
87
93
|
}
|
|
88
94
|
else {
|
|
89
|
-
return withComposeCode(filterFactory.dateRelativeFrom)(attribute, periodFilterJaql.next.offset, periodFilterJaql.next.count, periodFilterJaql.next.anchor);
|
|
95
|
+
return withComposeCode(filterFactory.dateRelativeFrom)(attribute, periodFilterJaql.next.offset, periodFilterJaql.next.count, periodFilterJaql.next.anchor, guid);
|
|
90
96
|
}
|
|
91
97
|
};
|
|
92
98
|
/**
|
|
@@ -95,24 +101,25 @@ export const createFilterFromPeriodFilterJaql = (attribute, periodFilterJaql) =>
|
|
|
95
101
|
* @param attribute - attribute
|
|
96
102
|
* @param conditionFilterJaql - Condition Filter Jaql
|
|
97
103
|
* @param measure - measure
|
|
104
|
+
* @param guid - Optional GUID for the filter
|
|
98
105
|
* @returns Filter object
|
|
99
106
|
*/
|
|
100
|
-
export const createFilterFromConditionFilterJaql = (attribute, conditionFilterJaql, measure) => {
|
|
107
|
+
export const createFilterFromConditionFilterJaql = (attribute, conditionFilterJaql, measure, guid) => {
|
|
101
108
|
if (measure) {
|
|
102
|
-
return createMeasureFilterFromConditionFilterJaql(measure, conditionFilterJaql);
|
|
109
|
+
return createMeasureFilterFromConditionFilterJaql(measure, conditionFilterJaql, guid);
|
|
103
110
|
}
|
|
104
111
|
else {
|
|
105
|
-
return createAttributeFilterFromConditionFilterJaql(attribute, conditionFilterJaql);
|
|
112
|
+
return createAttributeFilterFromConditionFilterJaql(attribute, conditionFilterJaql, guid);
|
|
106
113
|
}
|
|
107
114
|
};
|
|
108
115
|
/**
|
|
109
116
|
* Creates a filter from a filter JAQL object.
|
|
110
117
|
*
|
|
111
118
|
* @param jaql - The filter JAQL object.
|
|
112
|
-
* @param
|
|
119
|
+
* @param guid - Optional GUID for the filter
|
|
113
120
|
* @returns Filter object.
|
|
114
121
|
*/
|
|
115
|
-
export const createFilterFromJaqlInternal = (jaql,
|
|
122
|
+
export const createFilterFromJaqlInternal = (jaql, guid) => {
|
|
116
123
|
try {
|
|
117
124
|
if ('formula' in jaql) {
|
|
118
125
|
// generic pass-through JAQL filter will be used instead
|
|
@@ -125,25 +132,25 @@ export const createFilterFromJaqlInternal = (jaql, instanceid) => {
|
|
|
125
132
|
const measure = createMeasureFromFilterJaql(jaql);
|
|
126
133
|
switch (filterType) {
|
|
127
134
|
case FILTER_TYPES.INCLUDE_ALL:
|
|
128
|
-
return createFilterIncludeAll(attribute);
|
|
135
|
+
return createFilterIncludeAll(attribute, guid);
|
|
129
136
|
case FILTER_TYPES.SPECIFIC_ITEMS:
|
|
130
|
-
return createFilterFromSpecificItemsFilterJaql(attribute, filterJaqlWithType);
|
|
137
|
+
return createFilterFromSpecificItemsFilterJaql(attribute, filterJaqlWithType, guid);
|
|
131
138
|
case FILTER_TYPES.CONDITION:
|
|
132
|
-
return createFilterFromConditionFilterJaql(attribute, filterJaqlWithType, measure);
|
|
139
|
+
return createFilterFromConditionFilterJaql(attribute, filterJaqlWithType, measure, guid);
|
|
133
140
|
case FILTER_TYPES.DATE_RANGE:
|
|
134
|
-
return createFilterFromDateRangeFilterJaql(attribute, filterJaqlWithType);
|
|
141
|
+
return createFilterFromDateRangeFilterJaql(attribute, filterJaqlWithType, guid);
|
|
135
142
|
case FILTER_TYPES.PERIOD:
|
|
136
|
-
return createFilterFromPeriodFilterJaql(attribute, filterJaqlWithType);
|
|
143
|
+
return createFilterFromPeriodFilterJaql(attribute, filterJaqlWithType, guid);
|
|
137
144
|
case FILTER_TYPES.NUMERIC_RANGE:
|
|
138
|
-
return createFilterFromNumericRangeJaql(attribute, filterJaqlWithType);
|
|
145
|
+
return createFilterFromNumericRangeJaql(attribute, filterJaqlWithType, guid);
|
|
139
146
|
case FILTER_TYPES.ADVANCED:
|
|
140
147
|
case FILTER_TYPES.INVALID:
|
|
141
|
-
return createGenericFilter(jaql,
|
|
148
|
+
return createGenericFilter(jaql, guid);
|
|
142
149
|
}
|
|
143
150
|
}
|
|
144
151
|
catch (e) {
|
|
145
152
|
// if a filter type is untranslatable, fall back to the generic pass-through JAQL filter
|
|
146
153
|
// console.error(e);
|
|
147
154
|
}
|
|
148
|
-
return createGenericFilter(jaql,
|
|
155
|
+
return createGenericFilter(jaql, guid);
|
|
149
156
|
};
|
package/package.json
CHANGED
|
@@ -11,20 +11,29 @@
|
|
|
11
11
|
"Sisense",
|
|
12
12
|
"Compose SDK"
|
|
13
13
|
],
|
|
14
|
-
"version": "1.
|
|
14
|
+
"version": "1.12.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.12.0",
|
|
36
|
+
"@sisense/sdk-rest-client": "^1.12.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",
|