flowquery 1.0.80 → 1.0.84
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/flowquery.min.js +1 -1
- package/dist/parsing/expressions/collect_subquery.d.ts +7 -0
- package/dist/parsing/expressions/collect_subquery.d.ts.map +1 -0
- package/dist/parsing/expressions/collect_subquery.js +21 -0
- package/dist/parsing/expressions/collect_subquery.js.map +1 -0
- package/dist/parsing/expressions/count_subquery.d.ts +7 -0
- package/dist/parsing/expressions/count_subquery.d.ts.map +1 -0
- package/dist/parsing/expressions/count_subquery.js +14 -0
- package/dist/parsing/expressions/count_subquery.js.map +1 -0
- package/dist/parsing/expressions/exists_subquery.d.ts +7 -0
- package/dist/parsing/expressions/exists_subquery.d.ts.map +1 -0
- package/dist/parsing/expressions/exists_subquery.js +14 -0
- package/dist/parsing/expressions/exists_subquery.js.map +1 -0
- package/dist/parsing/expressions/operator.d.ts +7 -1
- package/dist/parsing/expressions/operator.d.ts.map +1 -1
- package/dist/parsing/expressions/operator.js +15 -1
- package/dist/parsing/expressions/operator.js.map +1 -1
- package/dist/parsing/expressions/subquery_expression.d.ts +11 -11
- package/dist/parsing/expressions/subquery_expression.d.ts.map +1 -1
- package/dist/parsing/expressions/subquery_expression.js +53 -39
- package/dist/parsing/expressions/subquery_expression.js.map +1 -1
- package/dist/parsing/operations/aggregated_return.d.ts.map +1 -1
- package/dist/parsing/operations/aggregated_return.js +9 -1
- package/dist/parsing/operations/aggregated_return.js.map +1 -1
- package/dist/parsing/operations/aggregated_with.d.ts.map +1 -1
- package/dist/parsing/operations/aggregated_with.js +34 -6
- package/dist/parsing/operations/aggregated_with.js.map +1 -1
- package/dist/parsing/operations/group_by.d.ts +21 -28
- package/dist/parsing/operations/group_by.d.ts.map +1 -1
- package/dist/parsing/operations/group_by.js +43 -22
- package/dist/parsing/operations/group_by.js.map +1 -1
- package/dist/parsing/operations/order_by.d.ts +2 -0
- package/dist/parsing/operations/order_by.d.ts.map +1 -1
- package/dist/parsing/operations/order_by.js +4 -0
- package/dist/parsing/operations/order_by.js.map +1 -1
- package/dist/parsing/parser.d.ts.map +1 -1
- package/dist/parsing/parser.js +27 -16
- package/dist/parsing/parser.js.map +1 -1
- package/dist/tokenization/tokenizer.d.ts.map +1 -1
- package/dist/tokenization/tokenizer.js +13 -5
- package/dist/tokenization/tokenizer.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import SubqueryExpression from "./subquery_expression";
|
|
2
|
+
/** `COLLECT { ... }` — the subquery's single returned column gathered into an array. */
|
|
3
|
+
declare class CollectSubquery extends SubqueryExpression {
|
|
4
|
+
protected reduce(rows: any[]): any[];
|
|
5
|
+
}
|
|
6
|
+
export default CollectSubquery;
|
|
7
|
+
//# sourceMappingURL=collect_subquery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collect_subquery.d.ts","sourceRoot":"","sources":["../../../src/parsing/expressions/collect_subquery.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,uBAAuB,CAAC;AAEvD,wFAAwF;AACxF,cAAM,eAAgB,SAAQ,kBAAkB;IAC5C,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE;CASvC;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const subquery_expression_1 = __importDefault(require("./subquery_expression"));
|
|
7
|
+
/** `COLLECT { ... }` — the subquery's single returned column gathered into an array. */
|
|
8
|
+
class CollectSubquery extends subquery_expression_1.default {
|
|
9
|
+
reduce(rows) {
|
|
10
|
+
if (rows.length === 0)
|
|
11
|
+
return [];
|
|
12
|
+
const keys = Object.keys(rows[0]);
|
|
13
|
+
if (keys.length !== 1) {
|
|
14
|
+
throw new Error("COLLECT subquery must return exactly one column");
|
|
15
|
+
}
|
|
16
|
+
const key = keys[0];
|
|
17
|
+
return rows.map((r) => r[key]);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
exports.default = CollectSubquery;
|
|
21
|
+
//# sourceMappingURL=collect_subquery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collect_subquery.js","sourceRoot":"","sources":["../../../src/parsing/expressions/collect_subquery.ts"],"names":[],"mappings":";;;;;AAAA,gFAAuD;AAEvD,wFAAwF;AACxF,MAAM,eAAgB,SAAQ,6BAAkB;IAClC,MAAM,CAAC,IAAW;QACxB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACxC,CAAC;CACJ;AAED,kBAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import SubqueryExpression from "./subquery_expression";
|
|
2
|
+
/** `COUNT { ... }` — the number of rows the subquery produces. */
|
|
3
|
+
declare class CountSubquery extends SubqueryExpression {
|
|
4
|
+
protected reduce(_rows: any[], count: number): number;
|
|
5
|
+
}
|
|
6
|
+
export default CountSubquery;
|
|
7
|
+
//# sourceMappingURL=count_subquery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"count_subquery.d.ts","sourceRoot":"","sources":["../../../src/parsing/expressions/count_subquery.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,uBAAuB,CAAC;AAEvD,kEAAkE;AAClE,cAAM,aAAc,SAAQ,kBAAkB;IAC1C,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;CAGxD;AAED,eAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const subquery_expression_1 = __importDefault(require("./subquery_expression"));
|
|
7
|
+
/** `COUNT { ... }` — the number of rows the subquery produces. */
|
|
8
|
+
class CountSubquery extends subquery_expression_1.default {
|
|
9
|
+
reduce(_rows, count) {
|
|
10
|
+
return count;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.default = CountSubquery;
|
|
14
|
+
//# sourceMappingURL=count_subquery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"count_subquery.js","sourceRoot":"","sources":["../../../src/parsing/expressions/count_subquery.ts"],"names":[],"mappings":";;;;;AAAA,gFAAuD;AAEvD,kEAAkE;AAClE,MAAM,aAAc,SAAQ,6BAAkB;IAChC,MAAM,CAAC,KAAY,EAAE,KAAa;QACxC,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AAED,kBAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import SubqueryExpression from "./subquery_expression";
|
|
2
|
+
/** `EXISTS { ... }` — true when the subquery produces at least one row. */
|
|
3
|
+
declare class ExistsSubquery extends SubqueryExpression {
|
|
4
|
+
protected reduce(_rows: any[], count: number): boolean;
|
|
5
|
+
}
|
|
6
|
+
export default ExistsSubquery;
|
|
7
|
+
//# sourceMappingURL=exists_subquery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exists_subquery.d.ts","sourceRoot":"","sources":["../../../src/parsing/expressions/exists_subquery.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,uBAAuB,CAAC;AAEvD,2EAA2E;AAC3E,cAAM,cAAe,SAAQ,kBAAkB;IAC3C,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;CAGzD;AAED,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const subquery_expression_1 = __importDefault(require("./subquery_expression"));
|
|
7
|
+
/** `EXISTS { ... }` — true when the subquery produces at least one row. */
|
|
8
|
+
class ExistsSubquery extends subquery_expression_1.default {
|
|
9
|
+
reduce(_rows, count) {
|
|
10
|
+
return count > 0;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.default = ExistsSubquery;
|
|
14
|
+
//# sourceMappingURL=exists_subquery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exists_subquery.js","sourceRoot":"","sources":["../../../src/parsing/expressions/exists_subquery.ts"],"names":[],"mappings":";;;;;AAAA,gFAAuD;AAEvD,2EAA2E;AAC3E,MAAM,cAAe,SAAQ,6BAAkB;IACjC,MAAM,CAAC,KAAY,EAAE,KAAa;QACxC,OAAO,KAAK,GAAG,CAAC,CAAC;IACrB,CAAC;CACJ;AAED,kBAAe,cAAc,CAAC"}
|
|
@@ -72,6 +72,12 @@ declare class Not extends Operator {
|
|
|
72
72
|
isOperator(): boolean;
|
|
73
73
|
value(): number;
|
|
74
74
|
}
|
|
75
|
+
/** Unary minus. Binds to a single operand, so `-a + b` is `(-a) + b`. */
|
|
76
|
+
declare class Negate extends Operator {
|
|
77
|
+
constructor();
|
|
78
|
+
isOperator(): boolean;
|
|
79
|
+
value(): any;
|
|
80
|
+
}
|
|
75
81
|
declare class Is extends Operator {
|
|
76
82
|
constructor();
|
|
77
83
|
value(): number;
|
|
@@ -112,5 +118,5 @@ declare class NotEndsWith extends Operator {
|
|
|
112
118
|
constructor();
|
|
113
119
|
value(): number | null;
|
|
114
120
|
}
|
|
115
|
-
export { deepEquals, Operator, Add, Subtract, Multiply, Divide, Modulo, Power, Equals, NotEquals, GreaterThan, LessThan, GreaterThanOrEqual, LessThanOrEqual, And, Or, Not, Is, IsNot, In, NotIn, Contains, NotContains, StartsWith, NotStartsWith, EndsWith, NotEndsWith, };
|
|
121
|
+
export { deepEquals, Operator, Add, Subtract, Multiply, Divide, Modulo, Power, Equals, NotEquals, GreaterThan, LessThan, GreaterThanOrEqual, LessThanOrEqual, And, Or, Not, Negate, Is, IsNot, In, NotIn, Contains, NotContains, StartsWith, NotStartsWith, EndsWith, NotEndsWith, };
|
|
116
122
|
//# sourceMappingURL=operator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operator.d.ts","sourceRoot":"","sources":["../../../src/parsing/expressions/operator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"operator.d.ts","sourceRoot":"","sources":["../../../src/parsing/expressions/operator.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.NotEndsWith = exports.EndsWith = exports.NotStartsWith = exports.StartsWith = exports.NotContains = exports.Contains = exports.NotIn = exports.In = exports.IsNot = exports.Is = exports.Not = exports.Or = exports.And = exports.LessThanOrEqual = exports.GreaterThanOrEqual = exports.LessThan = exports.GreaterThan = exports.NotEquals = exports.Equals = exports.Power = exports.Modulo = exports.Divide = exports.Multiply = exports.Subtract = exports.Add = exports.Operator = void 0;
|
|
6
|
+
exports.NotEndsWith = exports.EndsWith = exports.NotStartsWith = exports.StartsWith = exports.NotContains = exports.Contains = exports.NotIn = exports.In = exports.IsNot = exports.Is = exports.Negate = exports.Not = exports.Or = exports.And = exports.LessThanOrEqual = exports.GreaterThanOrEqual = exports.LessThan = exports.GreaterThan = exports.NotEquals = exports.Equals = exports.Power = exports.Modulo = exports.Divide = exports.Multiply = exports.Subtract = exports.Add = exports.Operator = void 0;
|
|
7
7
|
exports.deepEquals = deepEquals;
|
|
8
8
|
const ast_node_1 = __importDefault(require("../ast_node"));
|
|
9
9
|
function deepEquals(a, b) {
|
|
@@ -206,6 +206,20 @@ class Not extends Operator {
|
|
|
206
206
|
}
|
|
207
207
|
}
|
|
208
208
|
exports.Not = Not;
|
|
209
|
+
/** Unary minus. Binds to a single operand, so `-a + b` is `(-a) + b`. */
|
|
210
|
+
class Negate extends Operator {
|
|
211
|
+
constructor() {
|
|
212
|
+
super(0, true);
|
|
213
|
+
}
|
|
214
|
+
isOperator() {
|
|
215
|
+
return false;
|
|
216
|
+
}
|
|
217
|
+
value() {
|
|
218
|
+
const value = this.lhs.value();
|
|
219
|
+
return value === null || value === undefined ? null : -value;
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
exports.Negate = Negate;
|
|
209
223
|
class Is extends Operator {
|
|
210
224
|
constructor() {
|
|
211
225
|
super(0, true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operator.js","sourceRoot":"","sources":["../../../src/parsing/expressions/operator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"operator.js","sourceRoot":"","sources":["../../../src/parsing/expressions/operator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import ASTNode from "../ast_node";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Base class for the brace-delimited subquery expressions `EXISTS { }`,
|
|
4
|
+
* `COUNT { }` and `COLLECT { }`. The base executes the nested query and
|
|
5
|
+
* hands the resulting rows and row-count to `reduce()`, which each concrete
|
|
6
|
+
* subclass implements to produce its value.
|
|
7
|
+
*/
|
|
8
|
+
declare abstract class SubqueryExpression extends ASTNode {
|
|
9
9
|
private _subqueryAST;
|
|
10
|
-
private
|
|
11
|
-
|
|
12
|
-
constructor(mode: SubqueryMode, subqueryAST: ASTNode);
|
|
13
|
-
get mode(): SubqueryMode;
|
|
10
|
+
private _value;
|
|
11
|
+
constructor(subqueryAST: ASTNode);
|
|
14
12
|
introducesScope(): boolean;
|
|
15
13
|
evaluate(): Promise<void>;
|
|
16
14
|
value(): any;
|
|
15
|
+
/** Reduce the executed subquery's rows and row-count to this expression's value. */
|
|
16
|
+
protected abstract reduce(rows: any[], count: number): any;
|
|
17
17
|
}
|
|
18
18
|
export default SubqueryExpression;
|
|
19
19
|
//# sourceMappingURL=subquery_expression.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subquery_expression.d.ts","sourceRoot":"","sources":["../../../src/parsing/expressions/subquery_expression.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"subquery_expression.d.ts","sourceRoot":"","sources":["../../../src/parsing/expressions/subquery_expression.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,aAAa,CAAC;AAclC;;;;;GAKG;AACH,uBAAe,kBAAmB,SAAQ,OAAO;IAC7C,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,MAAM,CAAM;gBAER,WAAW,EAAE,OAAO;IAKzB,eAAe,IAAI,OAAO;IAIpB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAkC/B,KAAK,IAAI,GAAG;IAInB,oFAAoF;IACpF,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,GAAG;CAC7D;AAED,eAAe,kBAAkB,CAAC"}
|
|
@@ -1,4 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
36
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
37
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -12,17 +45,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
45
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
46
|
};
|
|
14
47
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.SubqueryMode = void 0;
|
|
16
|
-
const runner_1 = __importDefault(require("../../compute/runner"));
|
|
17
48
|
const ast_node_1 = __importDefault(require("../ast_node"));
|
|
18
49
|
const operation_1 = __importDefault(require("../operations/operation"));
|
|
19
|
-
const return_1 = __importDefault(require("../operations/return"));
|
|
20
|
-
var SubqueryMode;
|
|
21
|
-
(function (SubqueryMode) {
|
|
22
|
-
SubqueryMode["EXISTS"] = "exists";
|
|
23
|
-
SubqueryMode["COUNT"] = "count";
|
|
24
|
-
SubqueryMode["COLLECT"] = "collect";
|
|
25
|
-
})(SubqueryMode || (exports.SubqueryMode = SubqueryMode = {}));
|
|
26
50
|
/**
|
|
27
51
|
* Counts rows flowing through an operation chain without producing results.
|
|
28
52
|
* Used by SubqueryExpression to evaluate MATCH-only subqueries (no RETURN).
|
|
@@ -38,32 +62,36 @@ class RowCounter extends operation_1.default {
|
|
|
38
62
|
});
|
|
39
63
|
}
|
|
40
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* Base class for the brace-delimited subquery expressions `EXISTS { }`,
|
|
67
|
+
* `COUNT { }` and `COLLECT { }`. The base executes the nested query and
|
|
68
|
+
* hands the resulting rows and row-count to `reduce()`, which each concrete
|
|
69
|
+
* subclass implements to produce its value.
|
|
70
|
+
*/
|
|
41
71
|
class SubqueryExpression extends ast_node_1.default {
|
|
42
|
-
constructor(
|
|
72
|
+
constructor(subqueryAST) {
|
|
43
73
|
super();
|
|
44
|
-
this._results = [];
|
|
45
|
-
this._rowCount = 0;
|
|
46
|
-
this._mode = mode;
|
|
47
74
|
this._subqueryAST = subqueryAST;
|
|
48
75
|
}
|
|
49
|
-
get mode() {
|
|
50
|
-
return this._mode;
|
|
51
|
-
}
|
|
52
76
|
introducesScope() {
|
|
53
77
|
return true;
|
|
54
78
|
}
|
|
55
79
|
evaluate() {
|
|
56
80
|
return __awaiter(this, void 0, void 0, function* () {
|
|
57
81
|
var _a;
|
|
58
|
-
|
|
59
|
-
this
|
|
82
|
+
// Imported lazily to break the module cycle with Runner (which
|
|
83
|
+
// imports the parser, which imports this file's subclasses).
|
|
84
|
+
const { default: Runner } = yield Promise.resolve().then(() => __importStar(require("../../compute/runner")));
|
|
85
|
+
const { default: Return } = yield Promise.resolve().then(() => __importStar(require("../operations/return")));
|
|
60
86
|
const first = this._subqueryAST.firstChild();
|
|
61
87
|
const last = this._subqueryAST.lastChild();
|
|
62
|
-
|
|
63
|
-
|
|
88
|
+
let rows = [];
|
|
89
|
+
let count = 0;
|
|
90
|
+
if (last instanceof Return) {
|
|
91
|
+
const runner = new Runner(null, this._subqueryAST);
|
|
64
92
|
yield runner.run();
|
|
65
|
-
|
|
66
|
-
|
|
93
|
+
rows = (_a = runner.results) !== null && _a !== void 0 ? _a : [];
|
|
94
|
+
count = rows.length;
|
|
67
95
|
}
|
|
68
96
|
else {
|
|
69
97
|
// Subquery without RETURN (e.g., EXISTS { MATCH ... })
|
|
@@ -74,27 +102,13 @@ class SubqueryExpression extends ast_node_1.default {
|
|
|
74
102
|
yield first.run();
|
|
75
103
|
yield first.finish();
|
|
76
104
|
last.next = savedNext;
|
|
77
|
-
|
|
105
|
+
count = counter.count;
|
|
78
106
|
}
|
|
107
|
+
this._value = this.reduce(rows, count);
|
|
79
108
|
});
|
|
80
109
|
}
|
|
81
110
|
value() {
|
|
82
|
-
|
|
83
|
-
case SubqueryMode.EXISTS:
|
|
84
|
-
return this._rowCount > 0;
|
|
85
|
-
case SubqueryMode.COUNT:
|
|
86
|
-
return this._rowCount;
|
|
87
|
-
case SubqueryMode.COLLECT: {
|
|
88
|
-
if (this._results.length === 0)
|
|
89
|
-
return [];
|
|
90
|
-
const keys = Object.keys(this._results[0]);
|
|
91
|
-
if (keys.length !== 1) {
|
|
92
|
-
throw new Error("COLLECT subquery must return exactly one column");
|
|
93
|
-
}
|
|
94
|
-
const key = keys[0];
|
|
95
|
-
return this._results.map((r) => r[key]);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
111
|
+
return this._value;
|
|
98
112
|
}
|
|
99
113
|
}
|
|
100
114
|
exports.default = SubqueryExpression;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subquery_expression.js","sourceRoot":"","sources":["../../../src/parsing/expressions/subquery_expression.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"subquery_expression.js","sourceRoot":"","sources":["../../../src/parsing/expressions/subquery_expression.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAAkC;AAClC,wEAAgD;AAEhD;;;GAGG;AACH,MAAM,UAAW,SAAQ,mBAAS;IAAlC;;QACW,UAAK,GAAW,CAAC,CAAC;IAI7B,CAAC;IAHgB,GAAG;;YACZ,IAAI,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;KAAA;CACJ;AAED;;;;;GAKG;AACH,MAAe,kBAAmB,SAAQ,kBAAO;IAI7C,YAAY,WAAoB;QAC5B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IACpC,CAAC;IAEM,eAAe;QAClB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEY,QAAQ;;;YACjB,+DAA+D;YAC/D,6DAA6D;YAC7D,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,wDAAa,sBAAsB,GAAC,CAAC;YACjE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,wDAAa,sBAAsB,GAAC,CAAC;YAEjE,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAe,CAAC;YAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAe,CAAC;YAExD,IAAI,IAAI,GAAU,EAAE,CAAC;YACrB,IAAI,KAAK,GAAG,CAAC,CAAC;YAEd,IAAI,IAAI,YAAY,MAAM,EAAE,CAAC;gBACzB,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;gBACnD,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC;gBACnB,IAAI,GAAG,MAAA,MAAM,CAAC,OAAO,mCAAI,EAAE,CAAC;gBAC5B,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACJ,uDAAuD;gBACvD,MAAM,OAAO,GAAG,IAAI,UAAU,EAAE,CAAC;gBACjC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC;gBAC5B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;gBAEpB,MAAM,KAAK,CAAC,UAAU,EAAE,CAAC;gBACzB,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC;gBAClB,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC;gBAErB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;gBACtB,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAC1B,CAAC;YAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC3C,CAAC;KAAA;IAEM,KAAK;QACR,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;CAIJ;AAED,kBAAe,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aggregated_return.d.ts","sourceRoot":"","sources":["../../../src/parsing/operations/aggregated_return.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAiB,MAAM,0BAA0B,CAAC;AAI3E,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,cAAM,gBAAiB,SAAQ,MAAM;IACjC,OAAO,CAAC,SAAS,CAA0E;IAC9E,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAGjC;;;;;OAKG;IACI,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAG1D,IAAW,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAG1C;IACY,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAWpC,OAAO,CAAC,qBAAqB;
|
|
1
|
+
{"version":3,"file":"aggregated_return.d.ts","sourceRoot":"","sources":["../../../src/parsing/operations/aggregated_return.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAiB,MAAM,0BAA0B,CAAC;AAI3E,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,cAAM,gBAAiB,SAAQ,MAAM;IACjC,OAAO,CAAC,SAAS,CAA0E;IAC9E,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAGjC;;;;;OAKG;IACI,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAG1D,IAAW,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAG1C;IACY,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAWpC,OAAO,CAAC,qBAAqB;CAwChC;AAED,eAAe,gBAAgB,CAAC"}
|
|
@@ -53,6 +53,7 @@ class AggregatedReturn extends return_1.default {
|
|
|
53
53
|
});
|
|
54
54
|
}
|
|
55
55
|
_buildAggregateOutput() {
|
|
56
|
+
var _a, _b, _c;
|
|
56
57
|
const results = [];
|
|
57
58
|
const provenance = [];
|
|
58
59
|
// Emit a provenance entry per result row whenever a sink is
|
|
@@ -60,6 +61,8 @@ class AggregatedReturn extends return_1.default {
|
|
|
60
61
|
// `RETURN count(*)` over no MATCH). This keeps
|
|
61
62
|
// `runner.provenance.length === runner.results.length`.
|
|
62
63
|
const wantProvenance = this._provenanceSink !== null;
|
|
64
|
+
// Re-emission re-walks the group tree, so drop stale keys first.
|
|
65
|
+
(_a = this._orderBy) === null || _a === void 0 ? void 0 : _a.resetSortKeys();
|
|
63
66
|
if (wantProvenance) {
|
|
64
67
|
const recordIter = this._group_by.generate_results();
|
|
65
68
|
const provIter = this._group_by.generate_provenance();
|
|
@@ -68,13 +71,18 @@ class AggregatedReturn extends return_1.default {
|
|
|
68
71
|
const p = provIter.next();
|
|
69
72
|
if (r.done || p.done)
|
|
70
73
|
break;
|
|
74
|
+
// Evaluated while this group's overrides are live, so ORDER BY
|
|
75
|
+
// supports arbitrary expressions and not just bare aliases.
|
|
76
|
+
(_b = this._orderBy) === null || _b === void 0 ? void 0 : _b.captureSortKeys();
|
|
71
77
|
results.push(r.value);
|
|
72
78
|
provenance.push(p.value);
|
|
73
79
|
}
|
|
74
80
|
}
|
|
75
81
|
else {
|
|
76
|
-
for (const r of this._group_by.generate_results())
|
|
82
|
+
for (const r of this._group_by.generate_results()) {
|
|
83
|
+
(_c = this._orderBy) === null || _c === void 0 ? void 0 : _c.captureSortKeys();
|
|
77
84
|
results.push(r);
|
|
85
|
+
}
|
|
78
86
|
}
|
|
79
87
|
if (this._orderBy !== null) {
|
|
80
88
|
const indices = this._orderBy.sortIndices(results);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aggregated_return.js","sourceRoot":"","sources":["../../../src/parsing/operations/aggregated_return.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,0DAAiC;AACjC,4DAAoC;AACpC,sDAA8B;AAE9B,MAAM,gBAAiB,SAAQ,gBAAM;IAArC;;QACY,cAAS,GAAY,IAAI,kBAAO,CAAC,IAAI,CAAC,QAAwB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"aggregated_return.js","sourceRoot":"","sources":["../../../src/parsing/operations/aggregated_return.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aggregated_with.d.ts","sourceRoot":"","sources":["../../../src/parsing/operations/aggregated_with.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAiB,MAAM,0BAA0B,CAAC;AAG3E,OAAO,IAAI,MAAM,UAAU,CAAC;AAE5B,cAAM,cAAe,SAAQ,IAAI;IAC7B,OAAO,CAAC,SAAS,CAA0E;IAC3F;;;;;OAKG;IACH,OAAO,CAAC,uBAAuB,CAA8B;IAChD,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAGjC;;;OAGG;IACI,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAG1D;;;;;OAKG;IACI,kBAAkB,IAAI,gBAAgB;IAMhC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"aggregated_with.d.ts","sourceRoot":"","sources":["../../../src/parsing/operations/aggregated_with.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAiB,MAAM,0BAA0B,CAAC;AAG3E,OAAO,IAAI,MAAM,UAAU,CAAC;AAE5B,cAAM,cAAe,SAAQ,IAAI;IAC7B,OAAO,CAAC,SAAS,CAA0E;IAC3F;;;;;OAKG;IACH,OAAO,CAAC,uBAAuB,CAA8B;IAChD,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAGjC;;;OAGG;IACI,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAG1D;;;;;OAKG;IACI,kBAAkB,IAAI,gBAAgB;IAMhC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAwCvC;AAED,eAAe,cAAc,CAAC"}
|
|
@@ -54,15 +54,43 @@ class AggregatedWith extends return_1.default {
|
|
|
54
54
|
finish: { get: () => super.finish }
|
|
55
55
|
});
|
|
56
56
|
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
-
var _a;
|
|
57
|
+
var _a, _b;
|
|
58
58
|
const wantProvenance = this._group_by.provenanceEnabled;
|
|
59
59
|
const provIter = wantProvenance ? this._group_by.generate_provenance() : null;
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
60
|
+
if (this._orderBy !== null) {
|
|
61
|
+
const orderBy = this._orderBy;
|
|
62
|
+
// Re-emission re-walks the group tree, so drop stale keys first.
|
|
63
|
+
orderBy.resetSortKeys();
|
|
64
|
+
// Groups must be buffered so ORDER BY can permute them before
|
|
65
|
+
// any downstream operation (notably LIMIT) consumes the stream.
|
|
66
|
+
const records = [];
|
|
67
|
+
const restores = [];
|
|
68
|
+
const provenance = [];
|
|
69
|
+
for (const { record, restore } of this._group_by.generate_groups()) {
|
|
70
|
+
// Evaluated while this group's overrides are live, so ORDER BY
|
|
71
|
+
// supports arbitrary expressions and not just bare aliases.
|
|
72
|
+
orderBy.captureSortKeys();
|
|
73
|
+
records.push(record);
|
|
74
|
+
restores.push(restore);
|
|
75
|
+
if (provIter !== null) {
|
|
76
|
+
const next = provIter.next();
|
|
77
|
+
provenance.push(next.done ? null : next.value);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
for (const index of orderBy.sortIndices(records)) {
|
|
81
|
+
restores[index]();
|
|
82
|
+
this._currentGroupProvenance = provIter === null ? null : provenance[index];
|
|
83
|
+
yield ((_a = this.next) === null || _a === void 0 ? void 0 : _a.run());
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
for (const _ of this._group_by.generate_results()) {
|
|
88
|
+
if (provIter !== null) {
|
|
89
|
+
const next = provIter.next();
|
|
90
|
+
this._currentGroupProvenance = next.done ? null : next.value;
|
|
91
|
+
}
|
|
92
|
+
yield ((_b = this.next) === null || _b === void 0 ? void 0 : _b.run());
|
|
64
93
|
}
|
|
65
|
-
yield ((_a = this.next) === null || _a === void 0 ? void 0 : _a.run());
|
|
66
94
|
}
|
|
67
95
|
this._currentGroupProvenance = null;
|
|
68
96
|
yield _super.finish.call(this);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aggregated_with.js","sourceRoot":"","sources":["../../../src/parsing/operations/aggregated_with.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,0DAAiC;AACjC,sDAA4B;AAE5B,MAAM,cAAe,SAAQ,gBAAI;IAAjC;;QACY,cAAS,GAAY,IAAI,kBAAO,CAAC,IAAI,CAAC,QAAwB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3F;;;;;WAKG;QACK,4BAAuB,GAAyB,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"aggregated_with.js","sourceRoot":"","sources":["../../../src/parsing/operations/aggregated_with.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,32 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ProvenanceSource, RowProvenance } from "../../compute/provenance";
|
|
2
2
|
import Expression from "../expressions/expression";
|
|
3
|
-
import AggregationElement from "../functions/reducer_element";
|
|
4
3
|
import Projection from "./projection";
|
|
5
4
|
import Where from "./where";
|
|
6
|
-
declare class Node {
|
|
7
|
-
private _value;
|
|
8
|
-
private _children;
|
|
9
|
-
private _elements;
|
|
10
|
-
private _provenanceNodes;
|
|
11
|
-
private _provenanceRels;
|
|
12
|
-
private _provenanceRows;
|
|
13
|
-
constructor(value?: any);
|
|
14
|
-
get value(): any;
|
|
15
|
-
get children(): Map<string, Node>;
|
|
16
|
-
get elements(): AggregationElement[] | null;
|
|
17
|
-
set elements(elements: AggregationElement[]);
|
|
18
|
-
/** Per-group dedup map for contributing node bindings (lazy). */
|
|
19
|
-
get provenanceNodes(): Map<string, NodeBinding>;
|
|
20
|
-
/** Per-group dedup map for contributing relationship bindings (lazy). */
|
|
21
|
-
get provenanceRelationships(): Map<string, RelationshipBinding>;
|
|
22
|
-
/**
|
|
23
|
-
* Per-input-row contribution segments in arrival order. One entry is
|
|
24
|
-
* appended per `GroupBy.run()` call that lands in this group, so an
|
|
25
|
-
* aggregate row's `provenance.rows` aligns positionally with
|
|
26
|
-
* `collect(...)` outputs from the same group.
|
|
27
|
-
*/
|
|
28
|
-
get provenanceRows(): RowSegment[];
|
|
29
|
-
}
|
|
30
5
|
declare class GroupBy extends Projection {
|
|
31
6
|
private _root;
|
|
32
7
|
private _current;
|
|
@@ -54,14 +29,32 @@ declare class GroupBy extends Projection {
|
|
|
54
29
|
private get mappers();
|
|
55
30
|
private _generate_mappers;
|
|
56
31
|
private get reducers();
|
|
57
|
-
|
|
32
|
+
/**
|
|
33
|
+
* Depth-first walk over the group tree that applies each group's
|
|
34
|
+
* mapper and reducer overrides before yielding its leaf, together
|
|
35
|
+
* with the mapper values collected along the path. Shared by the
|
|
36
|
+
* result, group and provenance generators so they always traverse
|
|
37
|
+
* in identical order.
|
|
38
|
+
*/
|
|
39
|
+
private _generate_leaves;
|
|
40
|
+
/**
|
|
41
|
+
* Yields each emitted group together with a callback that re-applies
|
|
42
|
+
* that group's mapper and reducer overrides. Lets callers replay
|
|
43
|
+
* groups in an order other than tree-traversal order (e.g. after
|
|
44
|
+
* ORDER BY) while keeping downstream expression evaluation correct.
|
|
45
|
+
*/
|
|
46
|
+
generate_groups(): Generator<{
|
|
47
|
+
record: Record<string, any>;
|
|
48
|
+
restore: () => void;
|
|
49
|
+
}>;
|
|
50
|
+
generate_results(): Generator<Record<string, any>>;
|
|
58
51
|
/**
|
|
59
52
|
* Walks the group tree in the same traversal order as
|
|
60
53
|
* {@link generate_results}, yielding the materialised {@link
|
|
61
54
|
* RowProvenance} for each emitted group. When provenance is
|
|
62
55
|
* disabled, yields empty entries so callers can still zip cleanly.
|
|
63
56
|
*/
|
|
64
|
-
generate_provenance(
|
|
57
|
+
generate_provenance(): Generator<RowProvenance>;
|
|
65
58
|
get where(): boolean;
|
|
66
59
|
}
|
|
67
60
|
export default GroupBy;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"group_by.d.ts","sourceRoot":"","sources":["../../../src/parsing/operations/group_by.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"group_by.d.ts","sourceRoot":"","sources":["../../../src/parsing/operations/group_by.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,gBAAgB,EAEhB,aAAa,EAIhB,MAAM,0BAA0B,CAAC;AAClC,OAAO,UAAU,MAAM,2BAA2B,CAAC;AAGnD,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,MAAM,SAAS,CAAC;AAoD5B,cAAM,OAAQ,SAAQ,UAAU;IAC5B,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,cAAc,CAAqB;IAC3C,OAAO,CAAC,kBAAkB,CAAmC;gBACjD,WAAW,EAAE,UAAU,EAAE,EAAE,aAAa,GAAE,MAAM,KAAK,GAAG,IAAiB;IAIxE,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAMjC;;;;;OAKG;IACI,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAM1D,IAAW,iBAAiB,IAAI,OAAO,CAEtC;IACD,OAAO,CAAC,gBAAgB;IAqBxB,OAAO,KAAK,IAAI,GAEf;IACD,OAAO,KAAK,OAAO,GAElB;IACD,OAAO,KAAK,OAAO,QAElB;IACD,OAAO,CAAC,SAAS;IAGjB,OAAO,CAAC,GAAG;IAeX,OAAO,CAAC,MAAM;IASd,OAAO,KAAK,OAAO,GAKlB;IACD,OAAO,CAAE,iBAAiB;IAO1B,OAAO,KAAK,QAAQ,GASnB;IACD;;;;;;OAMG;IACH,OAAO,CAAE,gBAAgB;IAuBzB;;;;;OAKG;IACK,eAAe,IAAI,SAAS,CAAC;QACjC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC5B,OAAO,EAAE,MAAM,IAAI,CAAC;KACvB,CAAC;IAuBM,gBAAgB,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAK1D;;;;;OAKG;IACK,mBAAmB,IAAI,SAAS,CAAC,aAAa,CAAC;IAUvD,IAAW,KAAK,IAAI,OAAO,CAM1B;CACJ;AAED,eAAe,OAAO,CAAC"}
|