flowquery 1.0.61 → 1.0.64

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 (43) hide show
  1. package/dist/compute/runner.js +2 -2
  2. package/dist/compute/runner.js.map +1 -1
  3. package/dist/flowquery.min.js +1 -1
  4. package/dist/graph/data_resolver.d.ts +37 -0
  5. package/dist/graph/data_resolver.d.ts.map +1 -0
  6. package/dist/graph/data_resolver.js +221 -0
  7. package/dist/graph/data_resolver.js.map +1 -0
  8. package/dist/graph/database.d.ts +8 -20
  9. package/dist/graph/database.d.ts.map +1 -1
  10. package/dist/graph/database.js +47 -190
  11. package/dist/graph/database.js.map +1 -1
  12. package/dist/graph/node.d.ts +2 -5
  13. package/dist/graph/node.d.ts.map +1 -1
  14. package/dist/graph/node.js +40 -33
  15. package/dist/graph/node.js.map +1 -1
  16. package/dist/graph/node_reference.d.ts +2 -2
  17. package/dist/graph/node_reference.d.ts.map +1 -1
  18. package/dist/graph/node_reference.js +42 -18
  19. package/dist/graph/node_reference.js.map +1 -1
  20. package/dist/graph/pattern.js +3 -3
  21. package/dist/graph/pattern.js.map +1 -1
  22. package/dist/graph/pattern_expression.d.ts.map +1 -1
  23. package/dist/graph/pattern_expression.js +23 -4
  24. package/dist/graph/pattern_expression.js.map +1 -1
  25. package/dist/graph/patterns.d.ts +2 -2
  26. package/dist/graph/patterns.d.ts.map +1 -1
  27. package/dist/graph/patterns.js +54 -17
  28. package/dist/graph/patterns.js.map +1 -1
  29. package/dist/graph/relationship.d.ts +1 -1
  30. package/dist/graph/relationship.d.ts.map +1 -1
  31. package/dist/graph/relationship.js +59 -39
  32. package/dist/graph/relationship.js.map +1 -1
  33. package/dist/graph/relationship_reference.d.ts +1 -1
  34. package/dist/graph/relationship_reference.d.ts.map +1 -1
  35. package/dist/graph/relationship_reference.js +32 -11
  36. package/dist/graph/relationship_reference.js.map +1 -1
  37. package/dist/index.js +1 -1
  38. package/dist/parsing/functions/schema.js +2 -2
  39. package/dist/parsing/functions/schema.js.map +1 -1
  40. package/dist/parsing/operations/match.d.ts.map +1 -1
  41. package/dist/parsing/operations/match.js +27 -10
  42. package/dist/parsing/operations/match.js.map +1 -1
  43. package/package.json +1 -1
@@ -1,12 +1,28 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
2
+ var __asyncValues = (this && this.__asyncValues) || function (o) {
3
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
4
+ var m = o[Symbol.asyncIterator], i;
5
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
6
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
7
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
8
+ };
9
+ var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
10
+ var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {
11
+ var i, p;
12
+ return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
13
+ function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }
14
+ };
15
+ var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
16
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
17
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
18
+ return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;
19
+ function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }
20
+ function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }
21
+ function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
22
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
23
+ function fulfill(value) { resume("next", value); }
24
+ function reject(value) { resume("throw", value); }
25
+ function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
10
26
  };
11
27
  var __importDefault = (this && this.__importDefault) || function (mod) {
12
28
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -126,49 +142,53 @@ class Relationship extends ast_node_1.default {
126
142
  return this._direction === "left" ? "left_id" : "right_id";
127
143
  }
128
144
  find(left_id_1) {
129
- return __awaiter(this, arguments, void 0, function* (left_id, hop = 0) {
130
- var _a, _b, _c, _d;
145
+ return __asyncGenerator(this, arguments, function* find_1(left_id, hop = 0) {
146
+ var _a, _b, _c;
131
147
  // Save original source node
132
148
  const original = this._source;
133
149
  if (hop > 0) {
134
150
  // For hops greater than 0, the source becomes the target of the previous hop
135
151
  this._source = this._target;
136
152
  }
137
- if (hop === 0) {
138
- (_a = this._data) === null || _a === void 0 ? void 0 : _a.reset();
139
- // Handle zero-hop case: when min is 0 on a variable-length relationship,
140
- // match source node as target (no traversal)
141
- if (((_b = this.hops) === null || _b === void 0 ? void 0 : _b.multi()) && this.hops.min === 0 && this._target) {
142
- // For zero-hop, target finds the same node as source (left_id)
143
- // No relationship match is pushed since no edge is traversed
144
- yield this._target.find(left_id, hop);
145
- }
146
- }
147
- while (this._data.find(left_id, hop, this._direction)) {
148
- const data = (_c = this._data) === null || _c === void 0 ? void 0 : _c.current(hop);
149
- const id = data[this._left_id_or_right_id()];
150
- if (hop + 1 >= this.hops.min) {
151
- this.setValue(this, left_id);
152
- if (!this._matchesProperties(hop)) {
153
- continue;
153
+ try {
154
+ if (hop === 0) {
155
+ (_a = this._data) === null || _a === void 0 ? void 0 : _a.reset();
156
+ // Handle zero-hop case: when min is 0 on a variable-length relationship,
157
+ // match source node as target (no traversal)
158
+ if (((_b = this.hops) === null || _b === void 0 ? void 0 : _b.multi()) && this.hops.min === 0 && this._target) {
159
+ // For zero-hop, target finds the same node as source (left_id)
160
+ // No relationship match is pushed since no edge is traversed
161
+ yield __await(yield* __asyncDelegator(__asyncValues(this._target.find(left_id, hop))));
154
162
  }
155
- yield ((_d = this._target) === null || _d === void 0 ? void 0 : _d.find(id, hop));
156
- if (hop + 1 < this.hops.max) {
157
- if (this._matches.isCircular(id)) {
158
- this._matches.pop();
163
+ }
164
+ while (this._data.find(left_id, hop, this._direction)) {
165
+ const data = (_c = this._data) === null || _c === void 0 ? void 0 : _c.current(hop);
166
+ const id = data[this._left_id_or_right_id()];
167
+ if (hop + 1 >= this.hops.min) {
168
+ this.setValue(this, left_id);
169
+ if (!this._matchesProperties(hop)) {
159
170
  continue;
160
171
  }
161
- yield this.find(id, hop + 1);
172
+ yield __await(yield* __asyncDelegator(__asyncValues(this._target.find(id, hop))));
173
+ if (hop + 1 < this.hops.max) {
174
+ if (this._matches.isCircular(id)) {
175
+ this._matches.pop();
176
+ continue;
177
+ }
178
+ yield __await(yield* __asyncDelegator(__asyncValues(this.find(id, hop + 1))));
179
+ }
180
+ this._matches.pop();
181
+ }
182
+ else {
183
+ // Below minimum hops: traverse the edge without yielding a match
184
+ yield __await(yield* __asyncDelegator(__asyncValues(this.find(id, hop + 1))));
162
185
  }
163
- this._matches.pop();
164
- }
165
- else {
166
- // Below minimum hops: traverse the edge without yielding a match
167
- yield this.find(id, hop + 1);
168
186
  }
169
187
  }
170
- // Restore original source node
171
- this._source = original;
188
+ finally {
189
+ // Restore original source node
190
+ this._source = original;
191
+ }
172
192
  });
173
193
  }
174
194
  }
@@ -1 +1 @@
1
- {"version":3,"file":"relationship.js","sourceRoot":"","sources":["../../src/graph/relationship.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relationship.js","sourceRoot":"","sources":["../../src/graph/relationship.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import Relationship from "./relationship";
2
2
  declare class RelationshipReference extends Relationship {
3
3
  private _reference;
4
4
  constructor(base: Relationship, reference: Relationship);
5
- find(left_id: string, hop?: number): Promise<void>;
5
+ find(left_id: string, hop?: number): AsyncGenerator<void>;
6
6
  }
7
7
  export default RelationshipReference;
8
8
  //# sourceMappingURL=relationship_reference.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"relationship_reference.d.ts","sourceRoot":"","sources":["../../src/graph/relationship_reference.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAG1C,cAAM,qBAAsB,SAAQ,YAAY;IAC5C,OAAO,CAAC,UAAU,CAA6B;gBACnC,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY;IAS1C,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,GAAE,MAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAQrE;AAED,eAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"relationship_reference.d.ts","sourceRoot":"","sources":["../../src/graph/relationship_reference.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAG1C,cAAM,qBAAsB,SAAQ,YAAY;IAC5C,OAAO,CAAC,UAAU,CAA6B;gBACnC,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY;IASzC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,GAAE,MAAU,GAAG,cAAc,CAAC,IAAI,CAAC;CAY7E;AAED,eAAe,qBAAqB,CAAC"}
@@ -1,12 +1,28 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
2
+ var __asyncValues = (this && this.__asyncValues) || function (o) {
3
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
4
+ var m = o[Symbol.asyncIterator], i;
5
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
6
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
7
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
8
+ };
9
+ var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
10
+ var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {
11
+ var i, p;
12
+ return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
13
+ function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }
14
+ };
15
+ var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
16
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
17
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
18
+ return i = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;
19
+ function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }
20
+ function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }
21
+ function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
22
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
23
+ function fulfill(value) { resume("next", value); }
24
+ function reject(value) { resume("throw", value); }
25
+ function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
10
26
  };
11
27
  var __importDefault = (this && this.__importDefault) || function (mod) {
12
28
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -25,12 +41,17 @@ class RelationshipReference extends relationship_1.default {
25
41
  this._reference = reference;
26
42
  }
27
43
  find(left_id_1) {
28
- return __awaiter(this, arguments, void 0, function* (left_id, hop = 0) {
29
- var _a, _b;
44
+ return __asyncGenerator(this, arguments, function* find_1(left_id, hop = 0) {
45
+ var _a;
30
46
  this.setValue(this._reference);
31
47
  const data = (_a = this._reference.getData()) === null || _a === void 0 ? void 0 : _a.current(hop);
32
48
  const followId = this._direction === "left" ? "left_id" : "right_id";
33
- yield ((_b = this._target) === null || _b === void 0 ? void 0 : _b.find(data[followId], hop));
49
+ if (this._target) {
50
+ yield __await(yield* __asyncDelegator(__asyncValues(this._target.find(data[followId], hop))));
51
+ }
52
+ else {
53
+ yield yield __await(void 0);
54
+ }
34
55
  });
35
56
  }
36
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"relationship_reference.js","sourceRoot":"","sources":["../../src/graph/relationship_reference.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,kEAA0C;AAG1C,MAAM,qBAAsB,SAAQ,sBAAY;IAE5C,YAAY,IAAkB,EAAE,SAAuB;QACnD,KAAK,EAAE,CAAC;QAFJ,eAAU,GAAwB,IAAI,CAAC;QAG3C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAK,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAChC,CAAC;IACY,IAAI;6DAAC,OAAe,EAAE,MAAc,CAAC;;YAC9C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAW,CAAC,CAAC;YAChC,MAAM,IAAI,GAAuB,MAAA,IAAI,CAAC,UAAW,CAAC,OAAO,EAAE,0CAAE,OAAO,CAChE,GAAG,CACgB,CAAC;YACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;YACrE,MAAM,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAA,CAAC;QAClD,CAAC;KAAA;CACJ;AAED,kBAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"relationship_reference.js","sourceRoot":"","sources":["../../src/graph/relationship_reference.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kEAA0C;AAG1C,MAAM,qBAAsB,SAAQ,sBAAY;IAE5C,YAAY,IAAkB,EAAE,SAAuB;QACnD,KAAK,EAAE,CAAC;QAFJ,eAAU,GAAwB,IAAI,CAAC;QAG3C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAK,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAChC,CAAC;IACa,IAAI;kEAAC,OAAe,EAAE,MAAc,CAAC;;YAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAW,CAAC,CAAC;YAChC,MAAM,IAAI,GAAuB,MAAA,IAAI,CAAC,UAAW,CAAC,OAAO,EAAE,0CAAE,OAAO,CAChE,GAAG,CACgB,CAAC;YACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;YACrE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACf,cAAA,KAAK,CAAC,CAAC,iBAAA,cAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAA,CAAA,CAAA,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACJ,2BAAK,CAAC;YACV,CAAC;QACL,CAAC;KAAA;CACJ;AAED,kBAAe,qBAAqB,CAAC"}
package/dist/index.js CHANGED
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
8
8
  *
9
9
  * Main entry point for the FlowQuery command-line interface.
10
10
  *
11
- * Build: 2026-02-22
11
+ * Build: 2026-04-04
12
12
  *
13
13
  * @packageDocumentation
14
14
  */
@@ -22,7 +22,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
22
22
  return (mod && mod.__esModule) ? mod : { "default": mod };
23
23
  };
24
24
  Object.defineProperty(exports, "__esModule", { value: true });
25
- const database_1 = __importDefault(require("../../graph/database"));
25
+ const data_resolver_1 = __importDefault(require("../../graph/data_resolver"));
26
26
  const async_function_1 = __importDefault(require("./async_function"));
27
27
  const function_metadata_1 = require("./function_metadata");
28
28
  /**
@@ -42,7 +42,7 @@ const function_metadata_1 = require("./function_metadata");
42
42
  let Schema = class Schema extends async_function_1.default {
43
43
  generate() {
44
44
  return __asyncGenerator(this, arguments, function* generate_1() {
45
- const entries = yield __await(database_1.default.getInstance().schema());
45
+ const entries = yield __await(data_resolver_1.default.getInstance().schema());
46
46
  for (const entry of entries) {
47
47
  yield yield __await(entry);
48
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/parsing/functions/schema.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAA4C;AAC5C,sEAA6C;AAC7C,2DAAkD;AAElD;;;;;;;;;;;;;GAaG;AAYH,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,wBAAa;IAChB,QAAQ;;YAClB,MAAM,OAAO,GAAG,cAAM,kBAAQ,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAA,CAAC;YACtD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC1B,oBAAM,KAAK,CAAA,CAAC;YAChB,CAAC;QACL,CAAC;KAAA;CACJ,CAAA;AAPK,MAAM;IAXX,IAAA,+BAAW,EAAC;QACT,WAAW,EACP,gHAAgH;QACpH,QAAQ,EAAE,OAAO;QACjB,UAAU,EAAE,EAAE;QACd,MAAM,EAAE;YACJ,WAAW,EAAE,oEAAoE;YACjF,IAAI,EAAE,QAAQ;SACjB;QACD,QAAQ,EAAE,CAAC,kCAAkC,CAAC;KACjD,CAAC;GACI,MAAM,CAOX;AAED,kBAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/parsing/functions/schema.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,8EAAqD;AACrD,sEAA6C;AAC7C,2DAAkD;AAElD;;;;;;;;;;;;;GAaG;AAYH,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,wBAAa;IAChB,QAAQ;;YAClB,MAAM,OAAO,GAAG,cAAM,uBAAY,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAA,CAAC;YAC1D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC1B,oBAAM,KAAK,CAAA,CAAC;YAChB,CAAC;QACL,CAAC;KAAA;CACJ,CAAA;AAPK,MAAM;IAXX,IAAA,+BAAW,EAAC;QACT,WAAW,EACP,gHAAgH;QACpH,QAAQ,EAAE,OAAO;QACjB,UAAU,EAAE,EAAE;QACd,MAAM,EAAE;YACJ,WAAW,EAAE,oEAAoE;YACjF,IAAI,EAAE,QAAQ;SACjB;QACD,QAAQ,EAAE,CAAC,kCAAkC,CAAC;KACjD,CAAC;GACI,MAAM,CAOX;AAED,kBAAe,MAAM,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"match.d.ts","sourceRoot":"","sources":["../../../src/parsing/operations/match.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAQ1C,OAAO,SAAS,MAAM,aAAa,CAAC;AAGpC,cAAM,KAAM,SAAQ,SAAS;IACzB,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,SAAS,CAAkB;gBAEvB,QAAQ,GAAE,OAAO,EAAO,EAAE,QAAQ,GAAE,OAAe;IAK/D,IAAW,QAAQ,IAAI,OAAO,EAAE,CAE/B;IACD,IAAW,QAAQ,IAAI,OAAO,CAE7B;IACD,SAAS,CAAC,QAAQ,IAAI,MAAM;IAG5B;;;;;OAKG;IACU,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBjC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,sBAAsB;IA2B9B;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAuBjC;;;;OAIG;IACH,OAAO,CAAC,2BAA2B;IAwBnC;;OAEG;IACH,OAAO,CAAC,cAAc;CAGzB;AAED,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"match.d.ts","sourceRoot":"","sources":["../../../src/parsing/operations/match.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAQ1C,OAAO,SAAS,MAAM,aAAa,CAAC;AAGpC,cAAM,KAAM,SAAQ,SAAS;IACzB,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,SAAS,CAAkB;gBAEvB,QAAQ,GAAE,OAAO,EAAO,EAAE,QAAQ,GAAE,OAAe;IAK/D,IAAW,QAAQ,IAAI,OAAO,EAAE,CAE/B;IACD,IAAW,QAAQ,IAAI,OAAO,CAE7B;IACD,SAAS,CAAC,QAAQ,IAAI,MAAM;IAG5B;;;;;OAKG;IACU,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAsBjC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,sBAAsB;IA2B9B;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAuBjC;;;;OAIG;IACH,OAAO,CAAC,2BAA2B;IAwBnC;;OAEG;IACH,OAAO,CAAC,cAAc;CAGzB;AAED,eAAe,KAAK,CAAC"}
@@ -8,6 +8,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
+ var __asyncValues = (this && this.__asyncValues) || function (o) {
12
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
13
+ var m = o[Symbol.asyncIterator], i;
14
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
15
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
16
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
17
+ };
11
18
  var __importDefault = (this && this.__importDefault) || function (mod) {
12
19
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
20
  };
@@ -46,18 +53,28 @@ class Match extends operation_1.default {
46
53
  */
47
54
  run() {
48
55
  return __awaiter(this, void 0, void 0, function* () {
49
- var _a;
56
+ var _a, e_1, _b, _c;
57
+ var _d, _e;
50
58
  this.extractWherePredicates();
51
59
  yield this._patterns.initialize();
52
60
  let matched = false;
53
- this._patterns.toDoNext = () => __awaiter(this, void 0, void 0, function* () {
54
- var _a;
55
- matched = true;
56
- // Continue to the next operation after all patterns are matched
57
- yield ((_a = this.next) === null || _a === void 0 ? void 0 : _a.run());
58
- });
59
- // Kick off the graph pattern traversal
60
- yield this._patterns.traverse();
61
+ try {
62
+ for (var _f = true, _g = __asyncValues(this._patterns.traverse()), _h; _h = yield _g.next(), _a = _h.done, !_a; _f = true) {
63
+ _c = _h.value;
64
+ _f = false;
65
+ const _ = _c;
66
+ matched = true;
67
+ // Continue to the next operation after all patterns are matched
68
+ yield ((_d = this.next) === null || _d === void 0 ? void 0 : _d.run());
69
+ }
70
+ }
71
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
72
+ finally {
73
+ try {
74
+ if (!_f && !_a && (_b = _g.return)) yield _b.call(_g);
75
+ }
76
+ finally { if (e_1) throw e_1.error; }
77
+ }
61
78
  // For OPTIONAL MATCH: if nothing matched, continue with null values
62
79
  if (!matched && this._optional) {
63
80
  for (const pattern of this._patterns.patterns) {
@@ -67,7 +84,7 @@ class Match extends operation_1.default {
67
84
  }
68
85
  }
69
86
  }
70
- yield ((_a = this.next) === null || _a === void 0 ? void 0 : _a.run());
87
+ yield ((_e = this.next) === null || _e === void 0 ? void 0 : _e.run());
71
88
  }
72
89
  });
73
90
  }
@@ -1 +1 @@
1
- {"version":3,"file":"match.js","sourceRoot":"","sources":["../../../src/parsing/operations/match.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"match.js","sourceRoot":"","sources":["../../../src/parsing/operations/match.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flowquery",
3
- "version": "1.0.61",
3
+ "version": "1.0.64",
4
4
  "description": "A declarative query language for data processing pipelines.",
5
5
  "main": "dist/index.node.js",
6
6
  "types": "dist/index.node.d.ts",