@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.
Files changed (31) hide show
  1. package/LICENSE.md +35 -0
  2. package/README.md +3 -0
  3. package/dist/dimensional-model/attributes.d.ts +124 -0
  4. package/dist/dimensional-model/attributes.js +280 -0
  5. package/dist/dimensional-model/base.d.ts +38 -0
  6. package/dist/dimensional-model/base.js +37 -0
  7. package/dist/dimensional-model/data-model.d.ts +13 -0
  8. package/dist/dimensional-model/data-model.js +32 -0
  9. package/dist/dimensional-model/dimensions.d.ts +165 -0
  10. package/dist/dimensional-model/dimensions.js +297 -0
  11. package/dist/dimensional-model/factory.d.ts +17 -0
  12. package/dist/dimensional-model/factory.js +50 -0
  13. package/dist/dimensional-model/filters/factory.d.ts +315 -0
  14. package/dist/dimensional-model/filters/factory.js +404 -0
  15. package/dist/dimensional-model/filters/filters.d.ts +288 -0
  16. package/dist/dimensional-model/filters/filters.js +534 -0
  17. package/dist/dimensional-model/interfaces.d.ts +341 -0
  18. package/dist/dimensional-model/interfaces.js +1 -0
  19. package/dist/dimensional-model/measures/factory.d.ts +437 -0
  20. package/dist/dimensional-model/measures/factory.js +632 -0
  21. package/dist/dimensional-model/measures/measures.d.ts +217 -0
  22. package/dist/dimensional-model/measures/measures.js +388 -0
  23. package/dist/dimensional-model/simple-column-types.d.ts +39 -0
  24. package/dist/dimensional-model/simple-column-types.js +124 -0
  25. package/dist/dimensional-model/types.d.ts +152 -0
  26. package/dist/dimensional-model/types.js +284 -0
  27. package/dist/index.d.ts +79 -0
  28. package/dist/index.js +79 -0
  29. package/dist/interfaces.d.ts +233 -0
  30. package/dist/interfaces.js +9 -0
  31. 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;