@devrev/meerkat-core 0.0.124 → 0.0.127
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/package.json +1 -1
- package/src/cube-filter-transformer/empty/empty.d.ts +6 -0
- package/src/cube-filter-transformer/empty/empty.js +75 -0
- package/src/cube-filter-transformer/empty/empty.js.map +1 -0
- package/src/cube-filter-transformer/factory.js +8 -0
- package/src/cube-filter-transformer/factory.js.map +1 -1
- package/src/cube-filter-transformer/not-empty/not-empty.d.ts +6 -0
- package/src/cube-filter-transformer/not-empty/not-empty.js +75 -0
- package/src/cube-filter-transformer/not-empty/not-empty.js.map +1 -0
- package/src/cube-filter-transformer/not-equals/not-equals.js +3 -10
- package/src/cube-filter-transformer/not-equals/not-equals.js.map +1 -1
- package/src/types/cube-types/query.d.ts +1 -1
- package/src/types/cube-types/query.js.map +1 -1
package/package.json
CHANGED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.emptyTransform = void 0;
|
|
4
|
+
const Expression_1 = require("../../types/duckdb-serialization-types/serialization/Expression");
|
|
5
|
+
const base_condition_builder_1 = require("../base-condition-builder/base-condition-builder");
|
|
6
|
+
const emptyCondition = (columnName, options) => {
|
|
7
|
+
const columnRef = (0, base_condition_builder_1.createColumnRef)(columnName, { isAlias: options.isAlias });
|
|
8
|
+
return {
|
|
9
|
+
class: Expression_1.ExpressionClass.CONJUNCTION,
|
|
10
|
+
type: Expression_1.ExpressionType.CONJUNCTION_OR,
|
|
11
|
+
alias: '',
|
|
12
|
+
children: [
|
|
13
|
+
{
|
|
14
|
+
class: Expression_1.ExpressionClass.OPERATOR,
|
|
15
|
+
type: Expression_1.ExpressionType.OPERATOR_IS_NULL,
|
|
16
|
+
alias: '',
|
|
17
|
+
children: [columnRef],
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
class: Expression_1.ExpressionClass.COMPARISON,
|
|
21
|
+
type: Expression_1.ExpressionType.COMPARE_EQUAL,
|
|
22
|
+
alias: '',
|
|
23
|
+
left: {
|
|
24
|
+
class: Expression_1.ExpressionClass.FUNCTION,
|
|
25
|
+
type: Expression_1.ExpressionType.FUNCTION,
|
|
26
|
+
alias: '',
|
|
27
|
+
function_name: 'len',
|
|
28
|
+
schema: '',
|
|
29
|
+
children: [columnRef],
|
|
30
|
+
filter: null,
|
|
31
|
+
order_bys: { type: 'ORDER_MODIFIER', orders: [] },
|
|
32
|
+
distinct: false,
|
|
33
|
+
is_operator: false,
|
|
34
|
+
export_state: false,
|
|
35
|
+
catalog: '',
|
|
36
|
+
},
|
|
37
|
+
right: {
|
|
38
|
+
class: Expression_1.ExpressionClass.CONSTANT,
|
|
39
|
+
type: Expression_1.ExpressionType.VALUE_CONSTANT,
|
|
40
|
+
alias: '',
|
|
41
|
+
value: {
|
|
42
|
+
type: { id: 'INTEGER', type_info: null },
|
|
43
|
+
is_null: false,
|
|
44
|
+
value: 0,
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
],
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
const nullCondition = (columnName, options) => ({
|
|
52
|
+
class: Expression_1.ExpressionClass.OPERATOR,
|
|
53
|
+
type: Expression_1.ExpressionType.OPERATOR_IS_NULL,
|
|
54
|
+
alias: '',
|
|
55
|
+
children: [(0, base_condition_builder_1.createColumnRef)(columnName, { isAlias: options.isAlias })],
|
|
56
|
+
});
|
|
57
|
+
/**
|
|
58
|
+
* For array columns: (col IS NULL OR len(col) = 0)
|
|
59
|
+
* For non-array columns: (col IS NULL)
|
|
60
|
+
*/
|
|
61
|
+
const emptyTransform = (query, options) => {
|
|
62
|
+
const { member, memberInfo } = query;
|
|
63
|
+
if (memberInfo) {
|
|
64
|
+
switch (memberInfo.type) {
|
|
65
|
+
case 'string_array':
|
|
66
|
+
case 'number_array':
|
|
67
|
+
return emptyCondition(member, options);
|
|
68
|
+
default:
|
|
69
|
+
return nullCondition(member, options);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return emptyCondition(member, options);
|
|
73
|
+
};
|
|
74
|
+
exports.emptyTransform = emptyTransform;
|
|
75
|
+
//# sourceMappingURL=empty.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"empty.js","sourceRoot":"","sources":["../../../../../meerkat-core/src/cube-filter-transformer/empty/empty.ts"],"names":[],"mappings":";;;AAAA,gGAGyE;AACzE,6FAAmF;AAGnF,MAAM,cAAc,GAAG,CACrB,UAAkB,EAClB,OAA6B,EAC7B,EAAE;IACF,MAAM,SAAS,GAAG,IAAA,wCAAe,EAAC,UAAU,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAE5E,OAAO;QACL,KAAK,EAAE,4BAAe,CAAC,WAAW;QAClC,IAAI,EAAE,2BAAc,CAAC,cAAc;QACnC,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE;YACR;gBACE,KAAK,EAAE,4BAAe,CAAC,QAAQ;gBAC/B,IAAI,EAAE,2BAAc,CAAC,gBAAgB;gBACrC,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;YACD;gBACE,KAAK,EAAE,4BAAe,CAAC,UAAU;gBACjC,IAAI,EAAE,2BAAc,CAAC,aAAa;gBAClC,KAAK,EAAE,EAAE;gBACT,IAAI,EAAE;oBACJ,KAAK,EAAE,4BAAe,CAAC,QAAQ;oBAC/B,IAAI,EAAE,2BAAc,CAAC,QAAQ;oBAC7B,KAAK,EAAE,EAAE;oBACT,aAAa,EAAE,KAAK;oBACpB,MAAM,EAAE,EAAE;oBACV,QAAQ,EAAE,CAAC,SAAS,CAAC;oBACrB,MAAM,EAAE,IAAI;oBACZ,SAAS,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE;oBACjD,QAAQ,EAAE,KAAK;oBACf,WAAW,EAAE,KAAK;oBAClB,YAAY,EAAE,KAAK;oBACnB,OAAO,EAAE,EAAE;iBACZ;gBACD,KAAK,EAAE;oBACL,KAAK,EAAE,4BAAe,CAAC,QAAQ;oBAC/B,IAAI,EAAE,2BAAc,CAAC,cAAc;oBACnC,KAAK,EAAE,EAAE;oBACT,KAAK,EAAE;wBACL,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE;wBACxC,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,CAAC;qBACT;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CACpB,UAAkB,EAClB,OAA6B,EAC7B,EAAE,CAAC,CAAC;IACJ,KAAK,EAAE,4BAAe,CAAC,QAAQ;IAC/B,IAAI,EAAE,2BAAc,CAAC,gBAAgB;IACrC,KAAK,EAAE,EAAE;IACT,QAAQ,EAAE,CAAC,IAAA,wCAAe,EAAC,UAAU,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;CACtE,CAAC,CAAC;AAEH;;;GAGG;AACI,MAAM,cAAc,GAAmC,CAC5D,KAAK,EACL,OAAO,EACP,EAAE;IACF,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAErC,IAAI,UAAU,EAAE;QACd,QAAQ,UAAU,CAAC,IAAI,EAAE;YACvB,KAAK,cAAc,CAAC;YACpB,KAAK,cAAc;gBACjB,OAAO,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACzC;gBACE,OAAO,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SACzC;KACF;IAED,OAAO,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC,CAAC;AAjBW,QAAA,cAAc,kBAiBzB"}
|
|
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.cubeFilterToDuckdbAST = void 0;
|
|
4
4
|
const type_guards_1 = require("../utils/type-guards");
|
|
5
5
|
const and_1 = require("./and/and");
|
|
6
|
+
const empty_1 = require("./empty/empty");
|
|
7
|
+
const not_empty_1 = require("./not-empty/not-empty");
|
|
6
8
|
const contains_1 = require("./contains/contains");
|
|
7
9
|
const equals_1 = require("./equals/equals");
|
|
8
10
|
const gt_1 = require("./gt/gt");
|
|
@@ -51,6 +53,12 @@ const cubeFilterOperatorsToDuckdb = (cubeFilter, options) => {
|
|
|
51
53
|
case 'set': {
|
|
52
54
|
return (0, set_1.setTransform)(cubeFilter, options);
|
|
53
55
|
}
|
|
56
|
+
case 'empty': {
|
|
57
|
+
return (0, empty_1.emptyTransform)(cubeFilter, options);
|
|
58
|
+
}
|
|
59
|
+
case 'notEmpty': {
|
|
60
|
+
return (0, not_empty_1.notEmptyTransform)(cubeFilter, options);
|
|
61
|
+
}
|
|
54
62
|
default:
|
|
55
63
|
throw new Error('Could not transform the filter');
|
|
56
64
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../../meerkat-core/src/cube-filter-transformer/factory.ts"],"names":[],"mappings":";;;AAQA,sDAO8B;AAC9B,mCAA+C;
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../../meerkat-core/src/cube-filter-transformer/factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.notEmptyTransform = void 0;
|
|
4
|
+
const Expression_1 = require("../../types/duckdb-serialization-types/serialization/Expression");
|
|
5
|
+
const base_condition_builder_1 = require("../base-condition-builder/base-condition-builder");
|
|
6
|
+
const notEmptyCondition = (columnName, options) => {
|
|
7
|
+
const columnRef = (0, base_condition_builder_1.createColumnRef)(columnName, { isAlias: options.isAlias });
|
|
8
|
+
return {
|
|
9
|
+
class: Expression_1.ExpressionClass.CONJUNCTION,
|
|
10
|
+
type: Expression_1.ExpressionType.CONJUNCTION_AND,
|
|
11
|
+
alias: '',
|
|
12
|
+
children: [
|
|
13
|
+
{
|
|
14
|
+
class: Expression_1.ExpressionClass.OPERATOR,
|
|
15
|
+
type: Expression_1.ExpressionType.OPERATOR_IS_NOT_NULL,
|
|
16
|
+
alias: '',
|
|
17
|
+
children: [columnRef],
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
class: Expression_1.ExpressionClass.COMPARISON,
|
|
21
|
+
type: Expression_1.ExpressionType.COMPARE_GREATERTHAN,
|
|
22
|
+
alias: '',
|
|
23
|
+
left: {
|
|
24
|
+
class: Expression_1.ExpressionClass.FUNCTION,
|
|
25
|
+
type: Expression_1.ExpressionType.FUNCTION,
|
|
26
|
+
alias: '',
|
|
27
|
+
function_name: 'len',
|
|
28
|
+
schema: '',
|
|
29
|
+
children: [columnRef],
|
|
30
|
+
filter: null,
|
|
31
|
+
order_bys: { type: 'ORDER_MODIFIER', orders: [] },
|
|
32
|
+
distinct: false,
|
|
33
|
+
is_operator: false,
|
|
34
|
+
export_state: false,
|
|
35
|
+
catalog: '',
|
|
36
|
+
},
|
|
37
|
+
right: {
|
|
38
|
+
class: Expression_1.ExpressionClass.CONSTANT,
|
|
39
|
+
type: Expression_1.ExpressionType.VALUE_CONSTANT,
|
|
40
|
+
alias: '',
|
|
41
|
+
value: {
|
|
42
|
+
type: { id: 'INTEGER', type_info: null },
|
|
43
|
+
is_null: false,
|
|
44
|
+
value: 0,
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
],
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
const notNullCondition = (columnName, options) => ({
|
|
52
|
+
class: Expression_1.ExpressionClass.OPERATOR,
|
|
53
|
+
type: Expression_1.ExpressionType.OPERATOR_IS_NOT_NULL,
|
|
54
|
+
alias: '',
|
|
55
|
+
children: [(0, base_condition_builder_1.createColumnRef)(columnName, { isAlias: options.isAlias })],
|
|
56
|
+
});
|
|
57
|
+
/**
|
|
58
|
+
* For array columns: (col IS NOT NULL AND len(col) > 0)
|
|
59
|
+
* For non-array columns: (col IS NOT NULL)
|
|
60
|
+
*/
|
|
61
|
+
const notEmptyTransform = (query, options) => {
|
|
62
|
+
const { member, memberInfo } = query;
|
|
63
|
+
if (memberInfo) {
|
|
64
|
+
switch (memberInfo.type) {
|
|
65
|
+
case 'string_array':
|
|
66
|
+
case 'number_array':
|
|
67
|
+
return notEmptyCondition(member, options);
|
|
68
|
+
default:
|
|
69
|
+
return notNullCondition(member, options);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return notEmptyCondition(member, options);
|
|
73
|
+
};
|
|
74
|
+
exports.notEmptyTransform = notEmptyTransform;
|
|
75
|
+
//# sourceMappingURL=not-empty.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"not-empty.js","sourceRoot":"","sources":["../../../../../meerkat-core/src/cube-filter-transformer/not-empty/not-empty.ts"],"names":[],"mappings":";;;AAAA,gGAGyE;AACzE,6FAAmF;AAGnF,MAAM,iBAAiB,GAAG,CACxB,UAAkB,EAClB,OAA6B,EAC7B,EAAE;IACF,MAAM,SAAS,GAAG,IAAA,wCAAe,EAAC,UAAU,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAE5E,OAAO;QACL,KAAK,EAAE,4BAAe,CAAC,WAAW;QAClC,IAAI,EAAE,2BAAc,CAAC,eAAe;QACpC,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE;YACR;gBACE,KAAK,EAAE,4BAAe,CAAC,QAAQ;gBAC/B,IAAI,EAAE,2BAAc,CAAC,oBAAoB;gBACzC,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;YACD;gBACE,KAAK,EAAE,4BAAe,CAAC,UAAU;gBACjC,IAAI,EAAE,2BAAc,CAAC,mBAAmB;gBACxC,KAAK,EAAE,EAAE;gBACT,IAAI,EAAE;oBACJ,KAAK,EAAE,4BAAe,CAAC,QAAQ;oBAC/B,IAAI,EAAE,2BAAc,CAAC,QAAQ;oBAC7B,KAAK,EAAE,EAAE;oBACT,aAAa,EAAE,KAAK;oBACpB,MAAM,EAAE,EAAE;oBACV,QAAQ,EAAE,CAAC,SAAS,CAAC;oBACrB,MAAM,EAAE,IAAI;oBACZ,SAAS,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE;oBACjD,QAAQ,EAAE,KAAK;oBACf,WAAW,EAAE,KAAK;oBAClB,YAAY,EAAE,KAAK;oBACnB,OAAO,EAAE,EAAE;iBACZ;gBACD,KAAK,EAAE;oBACL,KAAK,EAAE,4BAAe,CAAC,QAAQ;oBAC/B,IAAI,EAAE,2BAAc,CAAC,cAAc;oBACnC,KAAK,EAAE,EAAE;oBACT,KAAK,EAAE;wBACL,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE;wBACxC,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,CAAC;qBACT;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACvB,UAAkB,EAClB,OAA6B,EAC7B,EAAE,CAAC,CAAC;IACJ,KAAK,EAAE,4BAAe,CAAC,QAAQ;IAC/B,IAAI,EAAE,2BAAc,CAAC,oBAAoB;IACzC,KAAK,EAAE,EAAE;IACT,QAAQ,EAAE,CAAC,IAAA,wCAAe,EAAC,UAAU,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;CACtE,CAAC,CAAC;AAEH;;;GAGG;AACI,MAAM,iBAAiB,GAAmC,CAC/D,KAAK,EACL,OAAO,EACP,EAAE;IACF,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAErC,IAAI,UAAU,EAAE;QACd,QAAQ,UAAU,CAAC,IAAI,EAAE;YACvB,KAAK,cAAc,CAAC;YACpB,KAAK,cAAc;gBACjB,OAAO,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC5C;gBACE,OAAO,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAC5C;KACF;IAED,OAAO,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC5C,CAAC,CAAC;AAjBW,QAAA,iBAAiB,qBAiB5B"}
|
|
@@ -5,7 +5,7 @@ const cube_filter_to_duckdb_1 = require("../../cube-to-duckdb/cube-filter-to-duc
|
|
|
5
5
|
const Expression_1 = require("../../types/duckdb-serialization-types/serialization/Expression");
|
|
6
6
|
const is_array_member_type_1 = require("../../utils/is-array-member-type");
|
|
7
7
|
const base_condition_builder_1 = require("../base-condition-builder/base-condition-builder");
|
|
8
|
-
const
|
|
8
|
+
const not_in_1 = require("../not-in/not-in");
|
|
9
9
|
const sql_expression_parser_1 = require("../sql-expression/sql-expression-parser");
|
|
10
10
|
const not_equals_array_1 = require("./not-equals-array");
|
|
11
11
|
const notEqualsTransform = (query, options) => {
|
|
@@ -26,19 +26,12 @@ const notEqualsTransform = (query, options) => {
|
|
|
26
26
|
return (0, not_equals_array_1.notEqualsArrayTransform)(query, options);
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
|
-
* If there is only one value, we can create a simple
|
|
29
|
+
* If there is only one value, we can create a simple notEquals condition
|
|
30
30
|
*/
|
|
31
31
|
if (values.length === 1) {
|
|
32
32
|
return (0, base_condition_builder_1.baseDuckdbCondition)(member, Expression_1.ExpressionType.COMPARE_NOTEQUAL, values[0], memberInfo, options);
|
|
33
33
|
}
|
|
34
|
-
|
|
35
|
-
* If there are multiple values, we need to create an OR condition
|
|
36
|
-
*/
|
|
37
|
-
const orCondition = (0, or_1.orDuckdbCondition)();
|
|
38
|
-
values.forEach((value) => {
|
|
39
|
-
orCondition.children.push((0, base_condition_builder_1.baseDuckdbCondition)(member, Expression_1.ExpressionType.COMPARE_NOTEQUAL, value, memberInfo, options));
|
|
40
|
-
});
|
|
41
|
-
return orCondition;
|
|
34
|
+
return (0, not_in_1.notInTransform)(query, options);
|
|
42
35
|
};
|
|
43
36
|
exports.notEqualsTransform = notEqualsTransform;
|
|
44
37
|
//# sourceMappingURL=not-equals.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"not-equals.js","sourceRoot":"","sources":["../../../../../meerkat-core/src/cube-filter-transformer/not-equals/not-equals.ts"],"names":[],"mappings":";;;AAAA,sFAAyF;AACzF,gGAAiG;AACjG,2EAAqE;AACrE,
|
|
1
|
+
{"version":3,"file":"not-equals.js","sourceRoot":"","sources":["../../../../../meerkat-core/src/cube-filter-transformer/not-equals/not-equals.ts"],"names":[],"mappings":";;;AAAA,sFAAyF;AACzF,gGAAiG;AACjG,2EAAqE;AACrE,6FAE0D;AAE1D,6CAAkD;AAClD,mFAA8E;AAC9E,yDAA6D;AAEtD,MAAM,kBAAkB,GAAmC,CAChE,KAAK,EACL,OAAO,EACP,EAAE;IACF,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAErC,uDAAuD;IACvD,IAAI,IAAA,mDAA2B,EAAC,KAAK,CAAC,EAAE;QACtC,OAAO,IAAA,2CAAmB,EAAC,MAAM,EAAE,KAAK,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;KAC/E;IAED,wBAAwB;IACxB,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9C,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;KAClE;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAE5B;;OAEG;IACH,IAAI,IAAA,wCAAiB,EAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QACtC,OAAO,IAAA,0CAAuB,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;KAChD;IAED;;OAEG;IACH,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QACvB,OAAO,IAAA,4CAAmB,EACxB,MAAM,EACN,2BAAc,CAAC,gBAAgB,EAC/B,MAAM,CAAC,CAAC,CAAC,EACT,UAAU,EACV,OAAO,CACR,CAAC;KACH;IAED,OAAO,IAAA,uBAAc,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AACxC,CAAC,CAAC;AAvCW,QAAA,kBAAkB,sBAuC7B"}
|
|
@@ -25,7 +25,7 @@ type Member = string;
|
|
|
25
25
|
/**
|
|
26
26
|
* Filter operator string.
|
|
27
27
|
*/
|
|
28
|
-
type FilterOperator = 'equals' | 'notEquals' | 'contains' | 'notContains' | 'in' | 'notIn' | 'gt' | 'gte' | 'lt' | 'lte' | 'set' | 'notSet' | 'inDateRange' | 'notInDateRange' | 'onTheDate' | 'beforeDate' | 'afterDate' | 'measureFilter';
|
|
28
|
+
type FilterOperator = 'equals' | 'notEquals' | 'contains' | 'notContains' | 'in' | 'notIn' | 'gt' | 'gte' | 'lt' | 'lte' | 'set' | 'notSet' | 'empty' | 'notEmpty' | 'inDateRange' | 'notInDateRange' | 'onTheDate' | 'beforeDate' | 'afterDate' | 'measureFilter';
|
|
29
29
|
/**
|
|
30
30
|
* Query order data type.
|
|
31
31
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../../meerkat-core/src/types/cube-types/query.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../../meerkat-core/src/types/cube-types/query.ts"],"names":[],"mappings":";;;AAwJO,MAAM,UAAU,GAAG,CAAC,IAA2B,EAAoB,EAAE;IAC1E,OAAO,OAAO,IAAI,IAAI,CAAC;AACzB,CAAC,CAAC;AAFW,QAAA,UAAU,cAErB;AAkBF;;GAEG;AACI,MAAM,oBAAoB,GAAG,CAClC,MAAmB,EACW,EAAE;IAChC,OAAO,eAAe,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,aAAa,KAAK,QAAQ,CAAC;AAC/E,CAAC,CAAC;AAJW,QAAA,oBAAoB,wBAI/B"}
|