@sisense/sdk-data 1.24.0 → 1.26.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.
Files changed (44) hide show
  1. package/dist/cjs/dimensional-model/base.js +1 -1
  2. package/dist/cjs/dimensional-model/filter-relations.d.ts +9 -0
  3. package/dist/cjs/dimensional-model/filter-relations.js +18 -0
  4. package/dist/cjs/dimensional-model/filters/factory.d.ts +84 -85
  5. package/dist/cjs/dimensional-model/filters/factory.js +126 -127
  6. package/dist/cjs/dimensional-model/filters/filter-config-utils.d.ts +25 -0
  7. package/dist/cjs/dimensional-model/filters/filter-config-utils.js +49 -0
  8. package/dist/cjs/dimensional-model/filters/filters.d.ts +22 -45
  9. package/dist/cjs/dimensional-model/filters/filters.js +51 -95
  10. package/dist/cjs/dimensional-model/filters/utils/condition-filter-util.d.ts +4 -4
  11. package/dist/cjs/dimensional-model/filters/utils/condition-filter-util.js +35 -28
  12. package/dist/cjs/dimensional-model/filters/utils/filter-code-util.d.ts +9 -5
  13. package/dist/cjs/dimensional-model/filters/utils/filter-code-util.js +32 -8
  14. package/dist/cjs/dimensional-model/filters/utils/filter-from-jaql-util.d.ts +17 -27
  15. package/dist/cjs/dimensional-model/filters/utils/filter-from-jaql-util.js +37 -39
  16. package/dist/cjs/dimensional-model/interfaces.d.ts +113 -15
  17. package/dist/cjs/dimensional-model/types.d.ts +11 -11
  18. package/dist/cjs/index.d.ts +2 -0
  19. package/dist/cjs/index.js +2 -0
  20. package/dist/cjs/utils.d.ts +5 -3
  21. package/dist/cjs/utils.js +33 -9
  22. package/dist/dimensional-model/base.js +1 -1
  23. package/dist/dimensional-model/filter-relations.d.ts +9 -0
  24. package/dist/dimensional-model/filter-relations.js +14 -0
  25. package/dist/dimensional-model/filters/factory.d.ts +84 -85
  26. package/dist/dimensional-model/filters/factory.js +126 -127
  27. package/dist/dimensional-model/filters/filter-config-utils.d.ts +25 -0
  28. package/dist/dimensional-model/filters/filter-config-utils.js +39 -0
  29. package/dist/dimensional-model/filters/filters.d.ts +22 -45
  30. package/dist/dimensional-model/filters/filters.js +51 -95
  31. package/dist/dimensional-model/filters/utils/condition-filter-util.d.ts +4 -4
  32. package/dist/dimensional-model/filters/utils/condition-filter-util.js +35 -28
  33. package/dist/dimensional-model/filters/utils/filter-code-util.d.ts +9 -5
  34. package/dist/dimensional-model/filters/utils/filter-code-util.js +32 -8
  35. package/dist/dimensional-model/filters/utils/filter-from-jaql-util.d.ts +17 -27
  36. package/dist/dimensional-model/filters/utils/filter-from-jaql-util.js +36 -37
  37. package/dist/dimensional-model/interfaces.d.ts +113 -15
  38. package/dist/dimensional-model/types.d.ts +11 -11
  39. package/dist/index.d.ts +2 -0
  40. package/dist/index.js +2 -0
  41. package/dist/tsconfig.prod.cjs.tsbuildinfo +1 -1
  42. package/dist/utils.d.ts +5 -3
  43. package/dist/utils.js +31 -7
  44. package/package.json +3 -3
@@ -19,11 +19,11 @@ const filters_js_1 = require("./filters.js");
19
19
  * ])
20
20
  * ```
21
21
  * @param filters - Filters to union. The filters must all be on the same attribute.
22
- * @param guid - Optional GUID for the filter
22
+ * @param config - Optional configuration for the filter
23
23
  * @returns A filter instance
24
24
  */
25
- function union(filters, guid) {
26
- return new filters_js_1.LogicalAttributeFilter(filters, filters_js_1.LogicalOperators.Union, guid);
25
+ function union(filters, config) {
26
+ return new filters_js_1.LogicalAttributeFilter(filters, filters_js_1.LogicalOperators.Union, config);
27
27
  }
28
28
  exports.union = union;
29
29
  /**
@@ -42,11 +42,11 @@ exports.union = union;
42
42
  * ])
43
43
  * ```
44
44
  * @param filters - Filters to intersect. The filters must all be on the same attribute.
45
- * @param guid - Optional GUID for the filter
45
+ * @param config - Optional configuration for the filter
46
46
  * @returns A filter instance
47
47
  */
48
- function intersection(filters, guid) {
49
- return new filters_js_1.LogicalAttributeFilter(filters, filters_js_1.LogicalOperators.Intersection, guid);
48
+ function intersection(filters, config) {
49
+ return new filters_js_1.LogicalAttributeFilter(filters, filters_js_1.LogicalOperators.Intersection, config);
50
50
  }
51
51
  exports.intersection = intersection;
52
52
  /**
@@ -71,12 +71,12 @@ exports.intersection = intersection;
71
71
  * ```
72
72
  * @param filter - Filter to exclude
73
73
  * @param input - Input filter to exclude from, on the same attribute. If not provided, the filter excludes from all items.
74
- * @param guid - Optional GUID for the filter
74
+ * @param config - Optional configuration for the filter
75
75
  * @returns A filter representing an exclusion of the given filter
76
76
  * from all attribute members or from the optional input filter
77
77
  */
78
- function exclude(filter, input, guid) {
79
- return new filters_js_1.ExcludeFilter(filter, input, guid);
78
+ function exclude(filter, input, config) {
79
+ return new filters_js_1.ExcludeFilter(filter, input, config);
80
80
  }
81
81
  exports.exclude = exclude;
82
82
  // TEXT / NUMERIC FILTERS
@@ -96,11 +96,11 @@ exports.exclude = exclude;
96
96
  * ```
97
97
  * @param attribute - Text attribute to filter on
98
98
  * @param value - Value to filter by
99
- * @param guid - Optional GUID for the filter
99
+ * @param config - Optional configuration for the filter
100
100
  * @returns A filter instance
101
101
  */
102
- function doesntContain(attribute, value, guid) {
103
- return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.DoesntContain, value, guid);
102
+ function doesntContain(attribute, value, config) {
103
+ return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.DoesntContain, value, config);
104
104
  }
105
105
  exports.doesntContain = doesntContain;
106
106
  /**
@@ -119,11 +119,11 @@ exports.doesntContain = doesntContain;
119
119
  * ```
120
120
  * @param attribute - Text attribute to filter on
121
121
  * @param value - Value to filter by
122
- * @param guid - Optional GUID for the filter
122
+ * @param config - Optional configuration for the filter
123
123
  * @returns A filter instance
124
124
  */
125
- function doesntEndWith(attribute, value, guid) {
126
- return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.DoesntEndWith, value, guid);
125
+ function doesntEndWith(attribute, value, config) {
126
+ return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.DoesntEndWith, value, config);
127
127
  }
128
128
  exports.doesntEndWith = doesntEndWith;
129
129
  /**
@@ -142,11 +142,11 @@ exports.doesntEndWith = doesntEndWith;
142
142
  * ```
143
143
  * @param attribute - Text attribute to filter on
144
144
  * @param value - Value to filter by
145
- * @param guid - Optional GUID for the filter
145
+ * @param config - Optional configuration for the filter
146
146
  * @returns A filter instance
147
147
  */
148
- function doesntStartWith(attribute, value, guid) {
149
- return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.DoesntStartWith, value, guid);
148
+ function doesntStartWith(attribute, value, config) {
149
+ return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.DoesntStartWith, value, config);
150
150
  }
151
151
  exports.doesntStartWith = doesntStartWith;
152
152
  /**
@@ -165,11 +165,11 @@ exports.doesntStartWith = doesntStartWith;
165
165
  * ```
166
166
  * @param attribute - Text attribute to filter on
167
167
  * @param value - Value to filter by
168
- * @param guid - Optional GUID for the filter
168
+ * @param config - Optional configuration for the filter
169
169
  * @returns A filter instance
170
170
  */
171
- function contains(attribute, value, guid) {
172
- return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.Contains, value, guid);
171
+ function contains(attribute, value, config) {
172
+ return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.Contains, value, config);
173
173
  }
174
174
  exports.contains = contains;
175
175
  /**
@@ -188,11 +188,11 @@ exports.contains = contains;
188
188
  * ```
189
189
  * @param attribute - Text attribute to filter on
190
190
  * @param value - Value to filter by
191
- * @param guid - Optional GUID for the filter
191
+ * @param config - Optional configuration for the filter
192
192
  * @returns A filter instance
193
193
  */
194
- function endsWith(attribute, value, guid) {
195
- return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.EndsWith, value, guid);
194
+ function endsWith(attribute, value, config) {
195
+ return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.EndsWith, value, config);
196
196
  }
197
197
  exports.endsWith = endsWith;
198
198
  /**
@@ -211,11 +211,11 @@ exports.endsWith = endsWith;
211
211
  * ```
212
212
  * @param attribute - Text attribute to filter on
213
213
  * @param value - Value to filter by
214
- * @param guid - Optional GUID for the filter
214
+ * @param config - Optional configuration for the filter
215
215
  * @returns A filter instance
216
216
  */
217
- function startsWith(attribute, value, guid) {
218
- return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.StartsWith, value, guid);
217
+ function startsWith(attribute, value, config) {
218
+ return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.StartsWith, value, config);
219
219
  }
220
220
  exports.startsWith = startsWith;
221
221
  /**
@@ -239,11 +239,11 @@ exports.startsWith = startsWith;
239
239
  * ```
240
240
  * @param attribute - Text attribute to filter on
241
241
  * @param value - Value to filter by
242
- * @param guid - Optional GUID for the filter
242
+ * @param config - Optional configuration for the filter
243
243
  * @returns A filter instance
244
244
  */
245
- function like(attribute, value, guid) {
246
- return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.Like, value, guid);
245
+ function like(attribute, value, config) {
246
+ return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.Like, value, config);
247
247
  }
248
248
  exports.like = like;
249
249
  /**
@@ -262,14 +262,15 @@ exports.like = like;
262
262
  * ```
263
263
  * @param attribute - Text or numeric attribute to filter on
264
264
  * @param value - Value to filter by
265
+ * @param config - Optional configuration for the filter
265
266
  * @returns A filter instance
266
267
  */
267
- function doesntEqual(attribute, value, guid) {
268
+ function doesntEqual(attribute, value, config) {
268
269
  if (typeof value === 'string') {
269
- return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.DoesntEqual, value, guid);
270
+ return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.DoesntEqual, value, config);
270
271
  }
271
272
  else {
272
- return numeric(attribute, filters_js_1.NumericOperators.DoesntEqual, value, undefined, undefined, guid);
273
+ return numeric(attribute, filters_js_1.NumericOperators.DoesntEqual, value, undefined, undefined, config);
273
274
  }
274
275
  }
275
276
  exports.doesntEqual = doesntEqual;
@@ -289,15 +290,15 @@ exports.doesntEqual = doesntEqual;
289
290
  * ```
290
291
  * @param attribute - Text or numeric attribute to filter on
291
292
  * @param value - Value to filter by
292
- * @param guid - Optional GUID for the filter
293
+ * @param config - Optional configuration for the filter
293
294
  * @returns A filter instance
294
295
  */
295
- function equals(attribute, value, guid) {
296
+ function equals(attribute, value, config) {
296
297
  if (typeof value === 'string') {
297
- return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.Equals, value, guid);
298
+ return new filters_js_1.TextFilter(attribute, filters_js_1.TextOperators.Equals, value, config);
298
299
  }
299
300
  else {
300
- return numeric(attribute, filters_js_1.NumericOperators.Equals, value, undefined, undefined, guid);
301
+ return numeric(attribute, filters_js_1.NumericOperators.Equals, value, undefined, undefined, config);
301
302
  }
302
303
  }
303
304
  exports.equals = equals;
@@ -311,11 +312,11 @@ exports.equals = equals;
311
312
  * ```
312
313
  * @param attribute - Numeric attribute to filter on
313
314
  * @param value - Value to filter by
314
- * @param guid - Optional GUID for the filter
315
+ * @param config - Optional configuration for the filter
315
316
  * @returns A filter instance
316
317
  */
317
- function greaterThan(attribute, value, guid) {
318
- return numeric(attribute, filters_js_1.NumericOperators.FromNotEqual, value, undefined, undefined, guid);
318
+ function greaterThan(attribute, value, config) {
319
+ return numeric(attribute, filters_js_1.NumericOperators.FromNotEqual, value, undefined, undefined, config);
319
320
  }
320
321
  exports.greaterThan = greaterThan;
321
322
  /**
@@ -328,11 +329,11 @@ exports.greaterThan = greaterThan;
328
329
  * ```
329
330
  * @param attribute - Numeric attribute to filter on
330
331
  * @param value - Value to filter by
331
- * @param guid - Optional GUID for the filter
332
+ * @param config - Optional configuration for the filter
332
333
  * @returns A filter instance
333
334
  */
334
- function greaterThanOrEqual(attribute, value, guid) {
335
- return numeric(attribute, filters_js_1.NumericOperators.From, value, undefined, undefined, guid);
335
+ function greaterThanOrEqual(attribute, value, config) {
336
+ return numeric(attribute, filters_js_1.NumericOperators.From, value, undefined, undefined, config);
336
337
  }
337
338
  exports.greaterThanOrEqual = greaterThanOrEqual;
338
339
  /**
@@ -345,11 +346,11 @@ exports.greaterThanOrEqual = greaterThanOrEqual;
345
346
  * ```
346
347
  * @param attribute - Numeric attribute to filter on
347
348
  * @param value - Value to filter by
348
- * @param guid - Optional GUID for the filter
349
+ * @param config - Optional configuration for the filter
349
350
  * @returns A filter instance
350
351
  */
351
- function lessThan(attribute, value, guid) {
352
- return numeric(attribute, filters_js_1.NumericOperators.ToNotEqual, value, undefined, undefined, guid);
352
+ function lessThan(attribute, value, config) {
353
+ return numeric(attribute, filters_js_1.NumericOperators.ToNotEqual, value, undefined, undefined, config);
353
354
  }
354
355
  exports.lessThan = lessThan;
355
356
  /**
@@ -362,11 +363,11 @@ exports.lessThan = lessThan;
362
363
  * ```
363
364
  * @param attribute - Numeric attribute to filter on
364
365
  * @param value - Value to filter by
365
- * @param guid - Optional GUID for the filter
366
+ * @param config - Optional configuration for the filter
366
367
  * @returns A filter instance
367
368
  */
368
- function lessThanOrEqual(attribute, value, guid) {
369
- return numeric(attribute, filters_js_1.NumericOperators.To, value, undefined, undefined, guid);
369
+ function lessThanOrEqual(attribute, value, config) {
370
+ return numeric(attribute, filters_js_1.NumericOperators.To, value, undefined, undefined, config);
370
371
  }
371
372
  exports.lessThanOrEqual = lessThanOrEqual;
372
373
  /**
@@ -380,11 +381,11 @@ exports.lessThanOrEqual = lessThanOrEqual;
380
381
  * @param attribute - Numeric attribute to filter on
381
382
  * @param valueA - Value to filter from
382
383
  * @param valueB - Value to filter to
383
- * @param guid - Optional GUID for the filter
384
+ * @param config - Optional configuration for the filter
384
385
  * @returns A filter instance
385
386
  */
386
- function between(attribute, valueA, valueB, guid) {
387
- return numeric(attribute, filters_js_1.NumericOperators.From, valueA, filters_js_1.NumericOperators.To, valueB, guid);
387
+ function between(attribute, valueA, valueB, config) {
388
+ return numeric(attribute, filters_js_1.NumericOperators.From, valueA, filters_js_1.NumericOperators.To, valueB, config);
388
389
  }
389
390
  exports.between = between;
390
391
  /**
@@ -398,11 +399,11 @@ exports.between = between;
398
399
  * @param attribute - Numeric attribute to filter on
399
400
  * @param valueA - Value to filter from
400
401
  * @param valueB - Value to filter to
401
- * @param guid - Optional GUID for the filter
402
+ * @param config - Optional configuration for the filter
402
403
  * @returns A filter instance
403
404
  */
404
- function betweenNotEqual(attribute, valueA, valueB, guid) {
405
- return numeric(attribute, filters_js_1.NumericOperators.FromNotEqual, valueA, filters_js_1.NumericOperators.ToNotEqual, valueB, guid);
405
+ function betweenNotEqual(attribute, valueA, valueB, config) {
406
+ return numeric(attribute, filters_js_1.NumericOperators.FromNotEqual, valueA, filters_js_1.NumericOperators.ToNotEqual, valueB, config);
406
407
  }
407
408
  exports.betweenNotEqual = betweenNotEqual;
408
409
  /**
@@ -425,11 +426,11 @@ exports.betweenNotEqual = betweenNotEqual;
425
426
  * @param valueA - First value
426
427
  * @param operatorB - Second operator
427
428
  * @param valueB - Second value
428
- * @param guid - Optional GUID for the filter
429
+ * @param config - Optional configuration for the filter
429
430
  * @returns A custom numeric filter of the given attribute
430
431
  */
431
- function numeric(attribute, operatorA, valueA, operatorB, valueB, guid) {
432
- return new filters_js_1.NumericFilter(attribute, operatorA, valueA, operatorB, valueB, guid);
432
+ function numeric(attribute, operatorA, valueA, operatorB, valueB, config) {
433
+ return new filters_js_1.NumericFilter(attribute, operatorA, valueA, operatorB, valueB, config);
433
434
  }
434
435
  exports.numeric = numeric;
435
436
  /**
@@ -445,16 +446,12 @@ exports.numeric = numeric;
445
446
  * ```
446
447
  * @param attribute - Attribute to filter on
447
448
  * @param members - Array of member values to filter by
448
- * @param excludeMembers - Whether selected members are for exclusion
449
- * @param guid - Optional GUID for the filter
450
- * @param deactivatedMembers - Array of deactivated member values
451
- * @param backgroundFilter - Optional background filter
452
- * @param multiSelection - Optional flag to disable multi-selection
449
+ * @param config - Optional configuration for the filter
453
450
  * @returns A filter instance
454
451
  * @shortDescription Creates filter on attribute to match certain string values
455
452
  */
456
- function members(attribute, members, excludeMembers, guid, deactivatedMembers, backgroundFilter, multiSelection) {
457
- return new filters_js_1.MembersFilter(attribute, members, excludeMembers, guid, deactivatedMembers, backgroundFilter, multiSelection);
453
+ function members(attribute, members, config) {
454
+ return new filters_js_1.MembersFilter(attribute, members, config);
458
455
  }
459
456
  exports.members = members;
460
457
  // DATE FILTERS
@@ -468,10 +465,11 @@ exports.members = members;
468
465
  * ```
469
466
  * @param level - Date {@link LevelAttribute} to filter on
470
467
  * @param from - Date or string representing the value to filter from
468
+ * @param config - Optional configuration for the filter
471
469
  * @returns A filter instance
472
470
  */
473
- function dateFrom(level, from, guid) {
474
- return dateRange(level, from, undefined, guid);
471
+ function dateFrom(level, from, config) {
472
+ return dateRange(level, from, undefined, config);
475
473
  }
476
474
  exports.dateFrom = dateFrom;
477
475
  /**
@@ -484,11 +482,11 @@ exports.dateFrom = dateFrom;
484
482
  * ```
485
483
  * @param level - Date {@link LevelAttribute} to filter on
486
484
  * @param to - Date or string representing the last member to filter to
487
- * @param guid - Optional GUID for the filter
485
+ * @param config - Optional configuration for the filter
488
486
  * @returns A filter instance
489
487
  */
490
- function dateTo(level, to, guid) {
491
- return dateRange(level, undefined, to, guid);
488
+ function dateTo(level, to, config) {
489
+ return dateRange(level, undefined, to, config);
492
490
  }
493
491
  exports.dateTo = dateTo;
494
492
  /**
@@ -502,11 +500,11 @@ exports.dateTo = dateTo;
502
500
  * @param level - Date {@link LevelAttribute} to filter on
503
501
  * @param from - Date or string representing the start member to filter from
504
502
  * @param to - Date or string representing the end member to filter to
505
- * @param guid - Optional GUID for the filter
503
+ * @param config - Optional configuration for the filter
506
504
  * @returns A filter instance
507
505
  */
508
- function dateRange(level, from, to, guid) {
509
- return new filters_js_1.DateRangeFilter(level, from, to, guid);
506
+ function dateRange(level, from, to, config) {
507
+ return new filters_js_1.DateRangeFilter(level, from, to, config);
510
508
  }
511
509
  exports.dateRange = dateRange;
512
510
  /**
@@ -538,11 +536,11 @@ exports.dateRange = dateRange;
538
536
  * Positive numbers skip forwards and negative numbers skip backwards (e.g. `-6` is 6 months backwards when `level` is a months level attribute)
539
537
  * @param count - Number of levels to include in the filter (e.g. `6` is 6 months when `level` is a months level attribute)
540
538
  * @param anchor - Date to filter from, defaults to the current day
541
- * @param guid - Optional GUID for the filter
539
+ * @param config - Optional configuration for the filter
542
540
  * @returns A filter instance
543
541
  */
544
- function dateRelative(level, offset, count, anchor, guid) {
545
- return new filters_js_1.RelativeDateFilter(level, offset, count, undefined, anchor, guid);
542
+ function dateRelative(level, offset, count, anchor, config) {
543
+ return new filters_js_1.RelativeDateFilter(level, offset, count, undefined, anchor, config);
546
544
  }
547
545
  exports.dateRelative = dateRelative;
548
546
  /**
@@ -558,11 +556,11 @@ exports.dateRelative = dateRelative;
558
556
  * @param offset - Number of levels to skip from the given `anchor` or the default of the current day (e.g. `6` is 6 months when `level` is a months level attribute)
559
557
  * @param count - Number of levels to include in the filter (e.g. `6` is 6 months when `level` is a months level attribute)
560
558
  * @param anchor - Date to filter from, defaults to the current day
561
- * @param guid - Optional GUID for the filter
559
+ * @param config - Optional configuration for the filter
562
560
  * @returns A filter instance
563
561
  */
564
- function dateRelativeFrom(level, offset, count, anchor, guid) {
565
- return new filters_js_1.RelativeDateFilter(level, offset, count, filters_js_1.DateOperators.Next, anchor, guid);
562
+ function dateRelativeFrom(level, offset, count, anchor, config) {
563
+ return new filters_js_1.RelativeDateFilter(level, offset, count, filters_js_1.DateOperators.Next, anchor, config);
566
564
  }
567
565
  exports.dateRelativeFrom = dateRelativeFrom;
568
566
  /**
@@ -578,11 +576,11 @@ exports.dateRelativeFrom = dateRelativeFrom;
578
576
  * @param offset - Number of levels to skip from the given `anchor` or the default of the current day (e.g. `6` is 6 months when `level` is a months level attribute)
579
577
  * @param count - Number of levels to include in the filter (e.g. `6` is 6 months when `level` is a months level attribute)
580
578
  * @param anchor - Date to filter to, defaults to the current day
581
- * @param guid - Optional GUID for the filter
579
+ * @param config - Optional configuration for the filter
582
580
  * @returns A filter instance
583
581
  */
584
- function dateRelativeTo(level, offset, count, anchor, guid) {
585
- return new filters_js_1.RelativeDateFilter(level, offset, count, filters_js_1.DateOperators.Last, anchor, guid);
582
+ function dateRelativeTo(level, offset, count, anchor, config) {
583
+ return new filters_js_1.RelativeDateFilter(level, offset, count, filters_js_1.DateOperators.Last, anchor, config);
586
584
  }
587
585
  exports.dateRelativeTo = dateRelativeTo;
588
586
  /**
@@ -594,11 +592,11 @@ exports.dateRelativeTo = dateRelativeTo;
594
592
  * filterFactory.thisYear(DM.Commerce.Date)
595
593
  * ```
596
594
  * @param dimension - Date dimension to filter
597
- * @param guid - Optional GUID for the filter
595
+ * @param config - Optional configuration for the filter
598
596
  * @returns A filter instance
599
597
  */
600
- function thisYear(dimension, guid) {
601
- return dateRelativeTo(dimension.Years, 0, 1, undefined, guid);
598
+ function thisYear(dimension, config) {
599
+ return dateRelativeTo(dimension.Years, 0, 1, undefined, config);
602
600
  }
603
601
  exports.thisYear = thisYear;
604
602
  /**
@@ -610,11 +608,11 @@ exports.thisYear = thisYear;
610
608
  * filterFactory.thisMonth(DM.Commerce.Date)
611
609
  * ```
612
610
  * @param dimension - Date dimension to filter
613
- * @param guid - Optional GUID for the filter
611
+ * @param config - Optional configuration for the filter
614
612
  * @returns A filter instance
615
613
  */
616
- function thisMonth(dimension, guid) {
617
- return dateRelativeTo(dimension.Months, 0, 1, undefined, guid);
614
+ function thisMonth(dimension, config) {
615
+ return dateRelativeTo(dimension.Months, 0, 1, undefined, config);
618
616
  }
619
617
  exports.thisMonth = thisMonth;
620
618
  /**
@@ -626,11 +624,11 @@ exports.thisMonth = thisMonth;
626
624
  * filterFactory.thisQuarter(DM.Commerce.Date)
627
625
  * ```
628
626
  * @param dimension - Date dimension to filter
629
- * @param guid - Optional GUID for the filter
627
+ * @param config - Optional configuration for the filter
630
628
  * @returns A filter instance
631
629
  */
632
- function thisQuarter(dimension, guid) {
633
- return dateRelativeTo(dimension.Quarters, 0, 1, undefined, guid);
630
+ function thisQuarter(dimension, config) {
631
+ return dateRelativeTo(dimension.Quarters, 0, 1, undefined, config);
634
632
  }
635
633
  exports.thisQuarter = thisQuarter;
636
634
  /**
@@ -642,11 +640,11 @@ exports.thisQuarter = thisQuarter;
642
640
  * filterFactory.today(DM.Commerce.Date)
643
641
  * ```
644
642
  * @param dimension - date dimension to filter
645
- * @param guid - Optional GUID for the filter
643
+ * @param config - Optional configuration for the filter
646
644
  * @returns A filter instance
647
645
  */
648
- function today(dimension, guid) {
649
- return dateRelativeTo(dimension.Days, 0, 1, undefined, guid);
646
+ function today(dimension, config) {
647
+ return dateRelativeTo(dimension.Days, 0, 1, undefined, config);
650
648
  }
651
649
  exports.today = today;
652
650
  // MEASURE-RELATED FILTERS
@@ -659,12 +657,12 @@ exports.today = today;
659
657
  * @param valueA - First value
660
658
  * @param operatorB - Operator to apply on `valueB` ({@link NumericOperators})
661
659
  * @param valueB - Second value
662
- * @param guid - Optional GUID for the filter
660
+ * @param config - Optional configuration for the filter
663
661
  * @returns A filter representing the provided logic
664
662
  * @internal
665
663
  */
666
- function measureBase(attribute, measure, operatorA, valueA, operatorB, valueB, guid) {
667
- return new filters_js_1.MeasureFilter(attribute, measure, operatorA, valueA, operatorB, valueB, guid);
664
+ function measureBase(attribute, measure, operatorA, valueA, operatorB, valueB, config) {
665
+ return new filters_js_1.MeasureFilter(attribute, measure, operatorA, valueA, operatorB, valueB, config);
668
666
  }
669
667
  exports.measureBase = measureBase;
670
668
  /**
@@ -680,11 +678,11 @@ exports.measureBase = measureBase;
680
678
  * ```
681
679
  * @param measure - Measure to filter by
682
680
  * @param value - Value
683
- * @param guid - Optional GUID for the filter
681
+ * @param config - Optional configuration for the filter
684
682
  * @returns A filter instance
685
683
  */
686
- function measureEquals(measure, value, guid) {
687
- return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.Equals, value, undefined, undefined, guid);
684
+ function measureEquals(measure, value, config) {
685
+ return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.Equals, value, undefined, undefined, config);
688
686
  }
689
687
  exports.measureEquals = measureEquals;
690
688
  /**
@@ -701,11 +699,11 @@ exports.measureEquals = measureEquals;
701
699
  * ```
702
700
  * @param measure - Measure to filter by
703
701
  * @param value - Min value
704
- * @param guid - Optional GUID for the filter
702
+ * @param config - Optional configuration for the filter
705
703
  * @returns A filter instance
706
704
  */
707
- function measureGreaterThan(measure, value, guid) {
708
- return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.FromNotEqual, value, undefined, undefined, guid);
705
+ function measureGreaterThan(measure, value, config) {
706
+ return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.FromNotEqual, value, undefined, undefined, config);
709
707
  }
710
708
  exports.measureGreaterThan = measureGreaterThan;
711
709
  /**
@@ -722,11 +720,11 @@ exports.measureGreaterThan = measureGreaterThan;
722
720
  * ```
723
721
  * @param measure - Measure to filter by
724
722
  * @param value - Min value
725
- * @param guid - Optional GUID for the filter
723
+ * @param config - Optional configuration for the filter
726
724
  * @returns A filter instance
727
725
  */
728
- function measureGreaterThanOrEqual(measure, value, guid) {
729
- return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.From, value, undefined, undefined, guid);
726
+ function measureGreaterThanOrEqual(measure, value, config) {
727
+ return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.From, value, undefined, undefined, config);
730
728
  }
731
729
  exports.measureGreaterThanOrEqual = measureGreaterThanOrEqual;
732
730
  /**
@@ -743,11 +741,11 @@ exports.measureGreaterThanOrEqual = measureGreaterThanOrEqual;
743
741
  * ```
744
742
  * @param measure - Measure to filter by
745
743
  * @param value - Max value
746
- * @param guid - Optional GUID for the filter
744
+ * @param config - Optional configuration for the filter
747
745
  * @returns A filter instance
748
746
  */
749
- function measureLessThanOrEqual(measure, value, guid) {
750
- return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.To, value, undefined, undefined, guid);
747
+ function measureLessThanOrEqual(measure, value, config) {
748
+ return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.To, value, undefined, undefined, config);
751
749
  }
752
750
  exports.measureLessThanOrEqual = measureLessThanOrEqual;
753
751
  /**
@@ -763,11 +761,11 @@ exports.measureLessThanOrEqual = measureLessThanOrEqual;
763
761
  * ```
764
762
  * @param measure - Measure to filter by
765
763
  * @param value - Value
766
- * @param guid - Optional GUID for the filter
764
+ * @param config - Optional configuration for the filter
767
765
  * @returns A filter instance
768
766
  */
769
- function measureLessThan(measure, value, guid) {
770
- return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.ToNotEqual, value, undefined, undefined, guid);
767
+ function measureLessThan(measure, value, config) {
768
+ return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.ToNotEqual, value, undefined, undefined, config);
771
769
  }
772
770
  exports.measureLessThan = measureLessThan;
773
771
  /**
@@ -786,11 +784,11 @@ exports.measureLessThan = measureLessThan;
786
784
  * @param measure - Measure to filter by
787
785
  * @param valueA - Min value
788
786
  * @param valueB - Max value
789
- * @param guid - Optional GUID for the filter
787
+ * @param config - Optional configuration for the filter
790
788
  * @returns A filter instance
791
789
  */
792
- function measureBetween(measure, valueA, valueB, guid) {
793
- return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.From, valueA, filters_js_1.NumericOperators.To, valueB, guid);
790
+ function measureBetween(measure, valueA, valueB, config) {
791
+ return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.From, valueA, filters_js_1.NumericOperators.To, valueB, config);
794
792
  }
795
793
  exports.measureBetween = measureBetween;
796
794
  /**
@@ -809,11 +807,11 @@ exports.measureBetween = measureBetween;
809
807
  * @param measure - Measure to filter by
810
808
  * @param valueA - Min value
811
809
  * @param valueB - Max value
812
- * @param guid - Optional GUID for the filter
810
+ * @param config - Optional configuration for the filter
813
811
  * @returns A filter instance
814
812
  */
815
- function measureBetweenNotEqual(measure, valueA, valueB, guid) {
816
- return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.FromNotEqual, valueA, filters_js_1.NumericOperators.ToNotEqual, valueB, guid);
813
+ function measureBetweenNotEqual(measure, valueA, valueB, config) {
814
+ return measureBase(measure.attribute, measure, filters_js_1.NumericOperators.FromNotEqual, valueA, filters_js_1.NumericOperators.ToNotEqual, valueB, config);
817
815
  }
818
816
  exports.measureBetweenNotEqual = measureBetweenNotEqual;
819
817
  // RANKING FILTERS
@@ -832,11 +830,11 @@ exports.measureBetweenNotEqual = measureBetweenNotEqual;
832
830
  * @param attribute - Attribute to filter
833
831
  * @param measure - Measure to filter by
834
832
  * @param count - Number of members to return
835
- * @param guid - Optional GUID for the filter
833
+ * @param config - Optional configuration for the filter
836
834
  * @returns A filter instance
837
835
  */
838
- function topRanking(attribute, measure, count, guid) {
839
- return new filters_js_1.RankingFilter(attribute, measure, filters_js_1.RankingOperators.Top, count, guid);
836
+ function topRanking(attribute, measure, count, config) {
837
+ return new filters_js_1.RankingFilter(attribute, measure, filters_js_1.RankingOperators.Top, count, config);
840
838
  }
841
839
  exports.topRanking = topRanking;
842
840
  /**
@@ -854,11 +852,11 @@ exports.topRanking = topRanking;
854
852
  * @param attribute - Attribute to filter
855
853
  * @param measure - Measure to filter by
856
854
  * @param count - Number of members to return
857
- * @param guid - Optional GUID for the filter
855
+ * @param config - Optional configuration for the filter
858
856
  * @returns A filter instance
859
857
  */
860
- function bottomRanking(attribute, measure, count, guid) {
861
- return new filters_js_1.RankingFilter(attribute, measure, filters_js_1.RankingOperators.Bottom, count, guid);
858
+ function bottomRanking(attribute, measure, count, config) {
859
+ return new filters_js_1.RankingFilter(attribute, measure, filters_js_1.RankingOperators.Bottom, count, config);
862
860
  }
863
861
  exports.bottomRanking = bottomRanking;
864
862
  const relate = (node) => {
@@ -955,12 +953,13 @@ var logic;
955
953
  /**
956
954
  * Creates a filter from JAQL
957
955
  *
956
+ * @param attribute - Attribute to filter
958
957
  * @param jaql - Filter Jaql
959
- * @param guid - Optional GUID for the filter
958
+ * @param config - Optional configuration for the filter
960
959
  * @returns A filter instance
961
960
  * @internal
962
961
  */
963
- function customFilter(attribute, jaql, guid) {
964
- return new filters_js_1.CustomFilter(attribute, jaql, guid);
962
+ function customFilter(attribute, jaql, config) {
963
+ return new filters_js_1.CustomFilter(attribute, jaql, config);
965
964
  }
966
965
  exports.customFilter = customFilter;
@@ -0,0 +1,25 @@
1
+ import { BaseFilterConfig, CompleteBaseFilterConfig, CompleteMembersFilterConfig, MembersFilterConfig } from '../interfaces.js';
2
+ /**
3
+ * Returns a default configuration for a base filter.
4
+ * @internal
5
+ */
6
+ export declare const getDefaultBaseFilterConfig: () => CompleteBaseFilterConfig;
7
+ /**
8
+ * Returns a default configuration for a members filter.
9
+ * @internal
10
+ */
11
+ export declare const getDefaultMembersFilterConfig: () => CompleteMembersFilterConfig;
12
+ /**
13
+ * Checks whether the given configuration is a members filter configuration.
14
+ * @param config - The filter configuration.
15
+ * @returns Whether the configuration is a members filter configuration.
16
+ * @internal
17
+ */
18
+ export declare function isMembersFilterConfig(config: BaseFilterConfig | MembersFilterConfig): config is MembersFilterConfig;
19
+ /**
20
+ * Simplifies the filter configuration by removing default values.
21
+ * @param config - The filter configuration.
22
+ * @returns The simplified filter configuration.
23
+ * @internal
24
+ */
25
+ export declare const simplifyFilterConfig: (config: BaseFilterConfig | MembersFilterConfig) => BaseFilterConfig | MembersFilterConfig;