@sisense/sdk-data 0.11.3
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/LICENSE.md +35 -0
- package/README.md +3 -0
- package/dist/dimensional-model/attributes.d.ts +124 -0
- package/dist/dimensional-model/attributes.js +280 -0
- package/dist/dimensional-model/base.d.ts +38 -0
- package/dist/dimensional-model/base.js +37 -0
- package/dist/dimensional-model/data-model.d.ts +13 -0
- package/dist/dimensional-model/data-model.js +32 -0
- package/dist/dimensional-model/dimensions.d.ts +165 -0
- package/dist/dimensional-model/dimensions.js +297 -0
- package/dist/dimensional-model/factory.d.ts +17 -0
- package/dist/dimensional-model/factory.js +50 -0
- package/dist/dimensional-model/filters/factory.d.ts +315 -0
- package/dist/dimensional-model/filters/factory.js +404 -0
- package/dist/dimensional-model/filters/filters.d.ts +288 -0
- package/dist/dimensional-model/filters/filters.js +534 -0
- package/dist/dimensional-model/interfaces.d.ts +341 -0
- package/dist/dimensional-model/interfaces.js +1 -0
- package/dist/dimensional-model/measures/factory.d.ts +437 -0
- package/dist/dimensional-model/measures/factory.js +632 -0
- package/dist/dimensional-model/measures/measures.d.ts +217 -0
- package/dist/dimensional-model/measures/measures.js +388 -0
- package/dist/dimensional-model/simple-column-types.d.ts +39 -0
- package/dist/dimensional-model/simple-column-types.js +124 -0
- package/dist/dimensional-model/types.d.ts +152 -0
- package/dist/dimensional-model/types.js +284 -0
- package/dist/index.d.ts +79 -0
- package/dist/index.js +79 -0
- package/dist/interfaces.d.ts +233 -0
- package/dist/interfaces.js +9 -0
- package/package.json +47 -0
|
@@ -0,0 +1,315 @@
|
|
|
1
|
+
import { DateDimension, LevelAttribute, Attribute, Measure, Filter, BaseMeasure } from '../interfaces.js';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a filter representing a union of multiple filters of the same attribute.
|
|
4
|
+
*
|
|
5
|
+
* @param filters - Filters, of the same attribute, to union
|
|
6
|
+
* @returns A filter representing a union of the given filters
|
|
7
|
+
*/
|
|
8
|
+
export declare function union(filters: Filter[]): Filter;
|
|
9
|
+
/**
|
|
10
|
+
* Creates a filter representing an intersection of multiple filters of the same attribute.
|
|
11
|
+
*
|
|
12
|
+
* @param filters - Filters, of the same attribute, to intersect
|
|
13
|
+
* @returns A filter representing an intersection of the given filters
|
|
14
|
+
*/
|
|
15
|
+
export declare function intersection(filters: Filter[]): Filter;
|
|
16
|
+
/**
|
|
17
|
+
* Creates a filter representing an exclusion of the given filter
|
|
18
|
+
* from all attribute members or from the optional input filter.
|
|
19
|
+
*
|
|
20
|
+
* @param filter - Filter to exclude
|
|
21
|
+
* @param input - Input filter to exclude from (optional)
|
|
22
|
+
* @returns A filter representing an exclusion of the given filter
|
|
23
|
+
* from all attribute members or from the optional input filter
|
|
24
|
+
*/
|
|
25
|
+
export declare function exclude(filter: Filter, input?: Filter): Filter;
|
|
26
|
+
/**
|
|
27
|
+
* Creates a "doesn't contain" filter.
|
|
28
|
+
*
|
|
29
|
+
* @param attribute - Text attribute to filter
|
|
30
|
+
* @param value - Value to filter by
|
|
31
|
+
* @returns A text filter of the given attribute
|
|
32
|
+
*/
|
|
33
|
+
export declare function doesntContain(attribute: Attribute, value: string): Filter;
|
|
34
|
+
/**
|
|
35
|
+
* Creates a "doesn't end with" filter.
|
|
36
|
+
*
|
|
37
|
+
* @param attribute - Text attribute to filter
|
|
38
|
+
* @param value - Value to filter by
|
|
39
|
+
* @returns A text filter of the given attribute
|
|
40
|
+
*/
|
|
41
|
+
export declare function doesntEndWith(attribute: Attribute, value: string): Filter;
|
|
42
|
+
/**
|
|
43
|
+
* Creates a "doesn't start with" filter.
|
|
44
|
+
*
|
|
45
|
+
* @param attribute - Text attribute to filter
|
|
46
|
+
* @param value - Value to filter by
|
|
47
|
+
* @returns A text filter of the given attribute
|
|
48
|
+
*/
|
|
49
|
+
export declare function doesntStartWith(attribute: Attribute, value: string): Filter;
|
|
50
|
+
/**
|
|
51
|
+
* Creates a "contains" filter.
|
|
52
|
+
*
|
|
53
|
+
* @param attribute - Text attribute to filter
|
|
54
|
+
* @param value - Value to filter by
|
|
55
|
+
* @returns A text filter of the given attribute
|
|
56
|
+
*/
|
|
57
|
+
export declare function contains(attribute: Attribute, value: string): Filter;
|
|
58
|
+
/**
|
|
59
|
+
* Creates an "ends with" filter.
|
|
60
|
+
*
|
|
61
|
+
* @param attribute - Text attribute to filter
|
|
62
|
+
* @param value - Value to filter by
|
|
63
|
+
* @returns A text filter of the given attribute
|
|
64
|
+
*/
|
|
65
|
+
export declare function endsWith(attribute: Attribute, value: string): Filter;
|
|
66
|
+
/**
|
|
67
|
+
* Creates a "starts with" filter.
|
|
68
|
+
*
|
|
69
|
+
* @param attribute - Text attribute to filter
|
|
70
|
+
* @param value - Value to filter by
|
|
71
|
+
* @returns A text filter of the given attribute
|
|
72
|
+
*/
|
|
73
|
+
export declare function startsWith(attribute: Attribute, value: string): Filter;
|
|
74
|
+
/**
|
|
75
|
+
* Creates a "like" filter.
|
|
76
|
+
*
|
|
77
|
+
* @param attribute - Text attribute to filter
|
|
78
|
+
* @param value - Value to filter by
|
|
79
|
+
* @returns A text filter of the given attribute
|
|
80
|
+
*/
|
|
81
|
+
export declare function like(attribute: Attribute, value: string): Filter;
|
|
82
|
+
/**
|
|
83
|
+
* Creates a "doesn't equal" filter.
|
|
84
|
+
*
|
|
85
|
+
* @param attribute - Text or numeric attribute to filter
|
|
86
|
+
* @param value - Value to filter by
|
|
87
|
+
* @returns A filter of the given attribute
|
|
88
|
+
*/
|
|
89
|
+
export declare function doesntEqual(attribute: Attribute, value: string | number): Filter;
|
|
90
|
+
/**
|
|
91
|
+
* Creates an "equals" filter.
|
|
92
|
+
*
|
|
93
|
+
* @param attribute - Text or numeric attribute to filter
|
|
94
|
+
* @param value - Value to filter by
|
|
95
|
+
* @returns A filter of the given attribute
|
|
96
|
+
*/
|
|
97
|
+
export declare function equals(attribute: Attribute, value: string | number): Filter;
|
|
98
|
+
/**
|
|
99
|
+
* Creates a "greater than" filter.
|
|
100
|
+
*
|
|
101
|
+
* @param attribute - Numeric attribute to filter
|
|
102
|
+
* @param value - Value to filter by
|
|
103
|
+
* @returns A numeric filter of the given attribute
|
|
104
|
+
*/
|
|
105
|
+
export declare function greaterThan(attribute: Attribute, value: number): Filter;
|
|
106
|
+
/**
|
|
107
|
+
* Creates a "greater than or equal" filter.
|
|
108
|
+
*
|
|
109
|
+
* @param attribute - Numeric attribute to filter
|
|
110
|
+
* @param value - Value to filter by
|
|
111
|
+
* @returns A numeric filter of the given attribute
|
|
112
|
+
*/
|
|
113
|
+
export declare function greaterThanOrEqual(attribute: Attribute, value: number): Filter;
|
|
114
|
+
/**
|
|
115
|
+
* Creates a "less than" filter.
|
|
116
|
+
*
|
|
117
|
+
* @param attribute - Numeric attribute to filter
|
|
118
|
+
* @param value - Value to filter by
|
|
119
|
+
* @returns A numeric filter of the given attribute
|
|
120
|
+
*/
|
|
121
|
+
export declare function lessThan(attribute: Attribute, value: number): Filter;
|
|
122
|
+
/**
|
|
123
|
+
* Creates a "less than or equal" filter.
|
|
124
|
+
*
|
|
125
|
+
* @param attribute - Numeric attribute to filter
|
|
126
|
+
* @param value - Value to filter by
|
|
127
|
+
* @returns A numeric filter of the given attribute
|
|
128
|
+
*/
|
|
129
|
+
export declare function lessThanOrEqual(attribute: Attribute, value: number): Filter;
|
|
130
|
+
/**
|
|
131
|
+
* Creates a "between" filter.
|
|
132
|
+
*
|
|
133
|
+
* @param attribute - Numeric attribute to filter
|
|
134
|
+
* @param valueA - Value to filter from
|
|
135
|
+
* @param valueB - Value to filter to
|
|
136
|
+
* @returns A numeric filter of the given attribute
|
|
137
|
+
*/
|
|
138
|
+
export declare function between(attribute: Attribute, valueA: number, valueB: number): Filter;
|
|
139
|
+
/**
|
|
140
|
+
* Creates a "between, but not equal" filter.
|
|
141
|
+
*
|
|
142
|
+
* @param attribute - Numeric attribute to filter
|
|
143
|
+
* @param valueA - Value to filter from
|
|
144
|
+
* @param valueB - Value to filter to
|
|
145
|
+
* @returns A numeric filter of the given attribute
|
|
146
|
+
*/
|
|
147
|
+
export declare function betweenNotEqual(attribute: Attribute, valueA: number, valueB: number): Filter;
|
|
148
|
+
/**
|
|
149
|
+
* Creates a custom numeric filter.
|
|
150
|
+
*
|
|
151
|
+
* @param attribute - Numeric attribute to filter
|
|
152
|
+
* @param operatorA - First operator
|
|
153
|
+
* @param valueA - First value
|
|
154
|
+
* @param operatorB - Second operator
|
|
155
|
+
* @param valueB - Second value
|
|
156
|
+
* @returns A custom numeric filter of the given attribute
|
|
157
|
+
*/
|
|
158
|
+
export declare function numeric(attribute: Attribute, operatorA?: string, valueA?: number, operatorB?: string, valueB?: number): Filter;
|
|
159
|
+
/**
|
|
160
|
+
* Creates a filter on the given members of the given attribute.
|
|
161
|
+
*
|
|
162
|
+
* @param attribute - Attribute to filter
|
|
163
|
+
* @param members - Array of member values to filter by
|
|
164
|
+
* @returns A filter instance representing the given members of the given attribute
|
|
165
|
+
*/
|
|
166
|
+
export declare function members(attribute: Attribute, members: string[]): Filter;
|
|
167
|
+
/**
|
|
168
|
+
* Creates a filter on all values starting at the given date of the given level.
|
|
169
|
+
*
|
|
170
|
+
* @param level - Date level attribute to filter. See {@link DateLevels} for supported levels.
|
|
171
|
+
* @param from - Date or String representing the value to filter from
|
|
172
|
+
* @returns A filter instance filtering all values starting at the given value
|
|
173
|
+
*/
|
|
174
|
+
export declare function dateFrom(level: LevelAttribute, from: Date | string): Filter;
|
|
175
|
+
/**
|
|
176
|
+
* Creates a filter on all values ending at the given date of the given level.
|
|
177
|
+
*
|
|
178
|
+
* @param level - Date level attribute to filter. See {@link DateLevels} for supported levels.
|
|
179
|
+
* @param to - Date or String representing the last member to filter to
|
|
180
|
+
* @returns A filter instance filtering all values ending at the given value
|
|
181
|
+
*/
|
|
182
|
+
export declare function dateTo(level: LevelAttribute, to: Date | string): Filter;
|
|
183
|
+
/**
|
|
184
|
+
* Creates a range filter between the given "from" and "to" arguments.
|
|
185
|
+
*
|
|
186
|
+
* @param level - Date level attribute to filter. See {@link DateLevels} for supported levels.
|
|
187
|
+
* @param from - Date or String representing the start member to filter from
|
|
188
|
+
* @param to - Date or String representing the end member to filter to
|
|
189
|
+
* @returns A filter instance filtering all values ending at the given value
|
|
190
|
+
*/
|
|
191
|
+
export declare function dateRange(level: LevelAttribute, from?: Date | string, to?: Date | string): Filter;
|
|
192
|
+
/**
|
|
193
|
+
* Creates a relative date filter.
|
|
194
|
+
*
|
|
195
|
+
* @param level - Date level attribute to filter. See {@link DateLevels} for supported levels.
|
|
196
|
+
* @param offset - offset to skip from the given anchor, or Today if not provided,
|
|
197
|
+
* positive/negative to skip forward/backward
|
|
198
|
+
* @param count - number of members to filter
|
|
199
|
+
* @param anchor - Anchor to filter from, Today is used if not provided
|
|
200
|
+
* @returns A relative date filter
|
|
201
|
+
*/
|
|
202
|
+
export declare function dateRelative(level: LevelAttribute, offset: number, count: number, anchor?: Date | string): Filter;
|
|
203
|
+
/**
|
|
204
|
+
* Creates a relative date filter from the given anchor date.
|
|
205
|
+
*
|
|
206
|
+
* @param level - Date level attribute to filter. See {@link DateLevels} for supported levels.
|
|
207
|
+
* @param offset - offset to skip from the given anchor, or Today if not provided
|
|
208
|
+
* @param count - number of members to filter
|
|
209
|
+
* @param anchor - Anchor to filter from, Today is used if not provided
|
|
210
|
+
* @returns A relative date filter
|
|
211
|
+
*/
|
|
212
|
+
export declare function dateRelativeFrom(level: LevelAttribute, offset: number, count: number, anchor?: Date | string): Filter;
|
|
213
|
+
/**
|
|
214
|
+
* Creates a relative date filter to the given anchor date.
|
|
215
|
+
*
|
|
216
|
+
* @param level - Date level attribute to filter. See {@link DateLevels} for supported levels.
|
|
217
|
+
* @param offset - offset to skip from the given anchor, or Today if not provided
|
|
218
|
+
* @param count - number of members to filter
|
|
219
|
+
* @param anchor - Anchor to filter from, Today is used if not provided
|
|
220
|
+
* @returns A relative date filter
|
|
221
|
+
*/
|
|
222
|
+
export declare function dateRelativeTo(level: LevelAttribute, offset: number, count: number, anchor?: Date | string): Filter;
|
|
223
|
+
/**
|
|
224
|
+
* Creates a filter on "This Year" of the given date dimension.
|
|
225
|
+
*
|
|
226
|
+
* @param dimension - date dimension to filter
|
|
227
|
+
* @returns A "This Year" filter of the given dimension
|
|
228
|
+
*/
|
|
229
|
+
export declare function thisYear(dimension: DateDimension): Filter;
|
|
230
|
+
/**
|
|
231
|
+
* Creates a filter on "This Month" of the given date dimension.
|
|
232
|
+
*
|
|
233
|
+
* @param dimension - date dimension to filter
|
|
234
|
+
* @returns A "This Month" filter of the given dimension
|
|
235
|
+
*/
|
|
236
|
+
export declare function thisMonth(dimension: DateDimension): Filter;
|
|
237
|
+
/**
|
|
238
|
+
* Creates a filter on "This Quarter" of the given date dimension.
|
|
239
|
+
*
|
|
240
|
+
* @param dimension - date dimension to filter
|
|
241
|
+
* @returns A "This Quarter" filter of the given dimension
|
|
242
|
+
*/
|
|
243
|
+
export declare function thisQuarter(dimension: DateDimension): Filter;
|
|
244
|
+
/**
|
|
245
|
+
* Creates a filter on "Today" of the given date dimension.
|
|
246
|
+
*
|
|
247
|
+
* @param dimension - date dimension to filter
|
|
248
|
+
* @returns A "Today" filter of the given dimension
|
|
249
|
+
*/
|
|
250
|
+
export declare function today(dimension: DateDimension): Filter;
|
|
251
|
+
/**
|
|
252
|
+
* Creates a filter on all measure values matching the provided criteria.
|
|
253
|
+
*
|
|
254
|
+
* @param attribute - Attribute to filter
|
|
255
|
+
* @param measure - Measure to filter by
|
|
256
|
+
* @param operatorA - Operator to apply on `valueA` ({@link NumericOperators})
|
|
257
|
+
* @param valueA - First value
|
|
258
|
+
* @param operatorB - Operator to apply on `valueB` ({@link NumericOperators})
|
|
259
|
+
* @param valueB - Second value
|
|
260
|
+
* @returns A filter representing the provided logic
|
|
261
|
+
* @internal
|
|
262
|
+
*/
|
|
263
|
+
export declare function measureBase(attribute: Attribute, measure: Measure, operatorA?: string, valueA?: number, operatorB?: string, valueB?: number): Filter;
|
|
264
|
+
/**
|
|
265
|
+
* Creates a filter on all measure values that are greater than or equal to the given value.
|
|
266
|
+
*
|
|
267
|
+
* @param measure - Measure to filter by
|
|
268
|
+
* @param value - Min value
|
|
269
|
+
* @returns A filter representing the "greater than or equal to" logic
|
|
270
|
+
*/
|
|
271
|
+
export declare function measureGreaterThanOrEqual(measure: BaseMeasure, value: number): Filter;
|
|
272
|
+
/**
|
|
273
|
+
* Creates a filter on all measure values less than or equal to the given value.
|
|
274
|
+
*
|
|
275
|
+
* @param measure - Measure to filter by
|
|
276
|
+
* @param value - Max value
|
|
277
|
+
* @returns A filter representing the "less than or equal to" logic
|
|
278
|
+
*/
|
|
279
|
+
export declare function measureLessThanOrEqual(measure: BaseMeasure, value: number): Filter;
|
|
280
|
+
/**
|
|
281
|
+
* Creates a filter on all measure values within a range.
|
|
282
|
+
*
|
|
283
|
+
* @param measure - Measure to filter by
|
|
284
|
+
* @param valueA - Min value
|
|
285
|
+
* @param valueB - Max value
|
|
286
|
+
* @returns A filter representing the "between" logic
|
|
287
|
+
*/
|
|
288
|
+
export declare function measureBetween(measure: BaseMeasure, valueA: number, valueB: number): Filter;
|
|
289
|
+
/**
|
|
290
|
+
* Creates a filter on all measure values within a range but not equal to the min and max values.
|
|
291
|
+
*
|
|
292
|
+
* @param measure - Measure to filter by
|
|
293
|
+
* @param valueA - Min value
|
|
294
|
+
* @param valueB - Max value
|
|
295
|
+
* @returns A filter representing the "between, not equal" logic
|
|
296
|
+
*/
|
|
297
|
+
export declare function measureBetweenNotEqual(measure: BaseMeasure, valueA: number, valueB: number): Filter;
|
|
298
|
+
/**
|
|
299
|
+
* Creates a filter representing a top ranking logic.
|
|
300
|
+
*
|
|
301
|
+
* @param attribute - Attribute to filter
|
|
302
|
+
* @param measure - Measure to filter by
|
|
303
|
+
* @param count - Number of members to return
|
|
304
|
+
* @returns A filter representing a top ranking logic on the given attribute by the given measure
|
|
305
|
+
*/
|
|
306
|
+
export declare function topRanking(attribute: Attribute, measure: Measure, count: number): Filter;
|
|
307
|
+
/**
|
|
308
|
+
* Creates a filter representing a bottom ranking logic.
|
|
309
|
+
*
|
|
310
|
+
* @param attribute - Attribute to filter
|
|
311
|
+
* @param measure - Measure to filter by
|
|
312
|
+
* @param count - Number of members to return
|
|
313
|
+
* @returns A filter representing a bottom ranking logic on the given attribute by the given measure
|
|
314
|
+
*/
|
|
315
|
+
export declare function bottomRanking(attribute: Attribute, measure: Measure, count: number): Filter;
|