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.
Files changed (42) hide show
  1. package/dist/flowquery.min.js +1 -1
  2. package/dist/parsing/expressions/collect_subquery.d.ts +7 -0
  3. package/dist/parsing/expressions/collect_subquery.d.ts.map +1 -0
  4. package/dist/parsing/expressions/collect_subquery.js +21 -0
  5. package/dist/parsing/expressions/collect_subquery.js.map +1 -0
  6. package/dist/parsing/expressions/count_subquery.d.ts +7 -0
  7. package/dist/parsing/expressions/count_subquery.d.ts.map +1 -0
  8. package/dist/parsing/expressions/count_subquery.js +14 -0
  9. package/dist/parsing/expressions/count_subquery.js.map +1 -0
  10. package/dist/parsing/expressions/exists_subquery.d.ts +7 -0
  11. package/dist/parsing/expressions/exists_subquery.d.ts.map +1 -0
  12. package/dist/parsing/expressions/exists_subquery.js +14 -0
  13. package/dist/parsing/expressions/exists_subquery.js.map +1 -0
  14. package/dist/parsing/expressions/operator.d.ts +7 -1
  15. package/dist/parsing/expressions/operator.d.ts.map +1 -1
  16. package/dist/parsing/expressions/operator.js +15 -1
  17. package/dist/parsing/expressions/operator.js.map +1 -1
  18. package/dist/parsing/expressions/subquery_expression.d.ts +11 -11
  19. package/dist/parsing/expressions/subquery_expression.d.ts.map +1 -1
  20. package/dist/parsing/expressions/subquery_expression.js +53 -39
  21. package/dist/parsing/expressions/subquery_expression.js.map +1 -1
  22. package/dist/parsing/operations/aggregated_return.d.ts.map +1 -1
  23. package/dist/parsing/operations/aggregated_return.js +9 -1
  24. package/dist/parsing/operations/aggregated_return.js.map +1 -1
  25. package/dist/parsing/operations/aggregated_with.d.ts.map +1 -1
  26. package/dist/parsing/operations/aggregated_with.js +34 -6
  27. package/dist/parsing/operations/aggregated_with.js.map +1 -1
  28. package/dist/parsing/operations/group_by.d.ts +21 -28
  29. package/dist/parsing/operations/group_by.d.ts.map +1 -1
  30. package/dist/parsing/operations/group_by.js +43 -22
  31. package/dist/parsing/operations/group_by.js.map +1 -1
  32. package/dist/parsing/operations/order_by.d.ts +2 -0
  33. package/dist/parsing/operations/order_by.d.ts.map +1 -1
  34. package/dist/parsing/operations/order_by.js +4 -0
  35. package/dist/parsing/operations/order_by.js.map +1 -1
  36. package/dist/parsing/parser.d.ts.map +1 -1
  37. package/dist/parsing/parser.js +27 -16
  38. package/dist/parsing/parser.js.map +1 -1
  39. package/dist/tokenization/tokenizer.d.ts.map +1 -1
  40. package/dist/tokenization/tokenizer.js +13 -5
  41. package/dist/tokenization/tokenizer.js.map +1 -1
  42. 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
- export declare enum SubqueryMode {
3
- EXISTS = "exists",
4
- COUNT = "count",
5
- COLLECT = "collect"
6
- }
7
- declare class SubqueryExpression extends ASTNode {
8
- private _mode;
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 _results;
11
- private _rowCount;
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":"AACA,OAAO,OAAO,MAAM,aAAa,CAAC;AAIlC,oBAAY,YAAY;IACpB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,OAAO,YAAY;CACtB;AAaD,cAAM,kBAAmB,SAAQ,OAAO;IACpC,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,SAAS,CAAa;gBAElB,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO;IAMpD,IAAW,IAAI,IAAI,YAAY,CAE9B;IAEM,eAAe,IAAI,OAAO;IAIpB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IA2B/B,KAAK,IAAI,GAAG;CAiBtB;AAED,eAAe,kBAAkB,CAAC"}
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(mode, subqueryAST) {
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
- this._results = [];
59
- this._rowCount = 0;
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
- if (last instanceof return_1.default) {
63
- const runner = new runner_1.default(null, this._subqueryAST);
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
- this._results = (_a = runner.results) !== null && _a !== void 0 ? _a : [];
66
- this._rowCount = this._results.length;
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
- this._rowCount = counter.count;
105
+ count = counter.count;
78
106
  }
107
+ this._value = this.reduce(rows, count);
79
108
  });
80
109
  }
81
110
  value() {
82
- switch (this._mode) {
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":";;;;;;;;;;;;;;;AAAA,kEAA0C;AAC1C,2DAAkC;AAClC,wEAAgD;AAChD,kEAA0C;AAE1C,IAAY,YAIX;AAJD,WAAY,YAAY;IACpB,iCAAiB,CAAA;IACjB,+BAAe,CAAA;IACf,mCAAmB,CAAA;AACvB,CAAC,EAJW,YAAY,4BAAZ,YAAY,QAIvB;AAED;;;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,MAAM,kBAAmB,SAAQ,kBAAO;IAMpC,YAAY,IAAkB,EAAE,WAAoB;QAChD,KAAK,EAAE,CAAC;QAJJ,aAAQ,GAAU,EAAE,CAAC;QACrB,cAAS,GAAW,CAAC,CAAC;QAI1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IACpC,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAEM,eAAe;QAClB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEY,QAAQ;;;YACjB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;YAEnB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAe,CAAC;YAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAe,CAAC;YAExD,IAAI,IAAI,YAAY,gBAAM,EAAE,CAAC;gBACzB,MAAM,MAAM,GAAG,IAAI,gBAAM,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;gBACnD,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC;gBACnB,IAAI,CAAC,QAAQ,GAAG,MAAA,MAAM,CAAC,OAAO,mCAAI,EAAE,CAAC;gBACrC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC1C,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,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;YACnC,CAAC;QACL,CAAC;KAAA;IAEM,KAAK;QACR,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC;YACjB,KAAK,YAAY,CAAC,MAAM;gBACpB,OAAO,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;YAC9B,KAAK,YAAY,CAAC,KAAK;gBACnB,OAAO,IAAI,CAAC,SAAS,CAAC;YAC1B,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;gBACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,EAAE,CAAC;gBAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACpB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;gBACvE,CAAC;gBACD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACjD,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AAED,kBAAe,kBAAkB,CAAC"}
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;CAgChC;AAED,eAAe,gBAAgB,CAAC"}
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":"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"}
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;CAavC;AAED,eAAe,cAAc,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
- for (const _ of this._group_by.generate_results()) {
61
- if (provIter !== null) {
62
- const next = provIter.next();
63
- this._currentGroupProvenance = next.done ? null : next.value;
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;IAoCjE,CAAC;IAnCgB,GAAG;;YACZ,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;QAC/B,CAAC;KAAA;IACD;;;OAGG;IACI,mBAAmB,CAAC,MAAwB;QAC/C,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IACD;;;;;OAKG;IACI,kBAAkB;QACrB,OAAO;YACH,QAAQ,EAAE,GAAkB,EAAE,WAC1B,OAAA,MAAA,IAAI,CAAC,uBAAuB,mCAAI,EAAE,KAAK,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA,EAAA;SACjF,CAAC;IACN,CAAC;IACY,MAAM;;;;;;YACf,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;YACxD,MAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAC9E,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,EAAE,CAAC;gBAChD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;oBACpB,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;oBAC7B,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;gBACjE,CAAC;gBACD,MAAM,CAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,GAAG,EAAE,CAAA,CAAC;YAC3B,CAAC;YACD,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;YACpC,MAAM,OAAM,MAAM,WAAE,CAAC;QACzB,CAAC;KAAA;CACJ;AAED,kBAAe,cAAc,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 { NodeBinding, ProvenanceSource, RelationshipBinding, RowProvenance, RowSegment } from "../../compute/provenance";
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
- generate_results(mapperIndex?: number, node?: Node): Generator<Record<string, any>>;
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(mapperIndex?: number, node?: Node): Generator<RowProvenance>;
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,EACH,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,EACb,UAAU,EAGb,MAAM,0BAA0B,CAAC;AAClC,OAAO,UAAU,MAAM,2BAA2B,CAAC;AAEnD,OAAO,kBAAkB,MAAM,8BAA8B,CAAC;AAC9D,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,cAAM,IAAI;IACN,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,SAAS,CAAqC;IACtD,OAAO,CAAC,gBAAgB,CAAyC;IACjE,OAAO,CAAC,eAAe,CAAiD;IACxE,OAAO,CAAC,eAAe,CAA6B;gBACxC,KAAK,GAAE,GAAU;IAG7B,IAAW,KAAK,IAAI,GAAG,CAEtB;IACD,IAAW,QAAQ,IAAI,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAEvC;IACD,IAAW,QAAQ,IAAI,kBAAkB,EAAE,GAAG,IAAI,CAEjD;IACD,IAAW,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,EAAE,EAEjD;IACD,iEAAiE;IACjE,IAAW,eAAe,IAAI,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAKrD;IACD,yEAAyE;IACzE,IAAW,uBAAuB,IAAI,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAKrE;IACD;;;;;OAKG;IACH,IAAW,cAAc,IAAI,UAAU,EAAE,CAKxC;CACJ;AAED,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;IACO,gBAAgB,CACpB,WAAW,GAAE,MAAU,EACvB,IAAI,GAAE,IAAgB,GACvB,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAyBjC;;;;;OAKG;IACK,mBAAmB,CACvB,WAAW,GAAE,MAAU,EACvB,IAAI,GAAE,IAAgB,GACvB,SAAS,CAAC,aAAa,CAAC;IAwB3B,IAAW,KAAK,IAAI,OAAO,CAM1B;CACJ;AAED,eAAe,OAAO,CAAC"}
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"}