flowquery 1.0.70 → 1.0.71

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 (85) hide show
  1. package/README.md +456 -103
  2. package/dist/compute/provenance.d.ts +201 -0
  3. package/dist/compute/provenance.d.ts.map +1 -0
  4. package/dist/compute/provenance.js +216 -0
  5. package/dist/compute/provenance.js.map +1 -0
  6. package/dist/compute/runner.d.ts +196 -3
  7. package/dist/compute/runner.d.ts.map +1 -1
  8. package/dist/compute/runner.js +283 -2
  9. package/dist/compute/runner.js.map +1 -1
  10. package/dist/flowquery.min.js +1 -1
  11. package/dist/graph/bindings.d.ts.map +1 -1
  12. package/dist/graph/bindings.js +15 -1
  13. package/dist/graph/bindings.js.map +1 -1
  14. package/dist/graph/data_cache.d.ts +4 -0
  15. package/dist/graph/data_cache.d.ts.map +1 -1
  16. package/dist/graph/data_cache.js +15 -3
  17. package/dist/graph/data_cache.js.map +1 -1
  18. package/dist/graph/data_resolver.d.ts.map +1 -1
  19. package/dist/graph/data_resolver.js +23 -4
  20. package/dist/graph/data_resolver.js.map +1 -1
  21. package/dist/graph/physical_node.d.ts +4 -8
  22. package/dist/graph/physical_node.d.ts.map +1 -1
  23. package/dist/graph/physical_node.js +14 -85
  24. package/dist/graph/physical_node.js.map +1 -1
  25. package/dist/graph/physical_relationship.d.ts +4 -8
  26. package/dist/graph/physical_relationship.d.ts.map +1 -1
  27. package/dist/graph/physical_relationship.js +14 -85
  28. package/dist/graph/physical_relationship.js.map +1 -1
  29. package/dist/graph/relationship_match_collector.d.ts.map +1 -1
  30. package/dist/graph/relationship_match_collector.js +9 -0
  31. package/dist/graph/relationship_match_collector.js.map +1 -1
  32. package/dist/graph/virtual_sources.d.ts +8 -0
  33. package/dist/graph/virtual_sources.d.ts.map +1 -0
  34. package/dist/graph/virtual_sources.js +31 -0
  35. package/dist/graph/virtual_sources.js.map +1 -0
  36. package/dist/graph/virtual_statement.d.ts +41 -0
  37. package/dist/graph/virtual_statement.d.ts.map +1 -0
  38. package/dist/graph/virtual_statement.js +143 -0
  39. package/dist/graph/virtual_statement.js.map +1 -0
  40. package/dist/index.browser.d.ts +3 -3
  41. package/dist/index.browser.d.ts.map +1 -1
  42. package/dist/index.browser.js.map +1 -1
  43. package/dist/index.node.d.ts +3 -3
  44. package/dist/index.node.d.ts.map +1 -1
  45. package/dist/index.node.js.map +1 -1
  46. package/dist/parsing/operations/aggregated_return.d.ts +10 -0
  47. package/dist/parsing/operations/aggregated_return.d.ts.map +1 -1
  48. package/dist/parsing/operations/aggregated_return.js +56 -3
  49. package/dist/parsing/operations/aggregated_return.js.map +1 -1
  50. package/dist/parsing/operations/aggregated_with.d.ts +20 -0
  51. package/dist/parsing/operations/aggregated_with.d.ts.map +1 -1
  52. package/dist/parsing/operations/aggregated_with.js +33 -1
  53. package/dist/parsing/operations/aggregated_with.js.map +1 -1
  54. package/dist/parsing/operations/group_by.d.ts +32 -0
  55. package/dist/parsing/operations/group_by.d.ts.map +1 -1
  56. package/dist/parsing/operations/group_by.js +103 -0
  57. package/dist/parsing/operations/group_by.js.map +1 -1
  58. package/dist/parsing/operations/let.d.ts.map +1 -1
  59. package/dist/parsing/operations/let.js +53 -0
  60. package/dist/parsing/operations/let.js.map +1 -1
  61. package/dist/parsing/operations/load.d.ts +20 -0
  62. package/dist/parsing/operations/load.d.ts.map +1 -1
  63. package/dist/parsing/operations/load.js +71 -0
  64. package/dist/parsing/operations/load.js.map +1 -1
  65. package/dist/parsing/operations/order_by.d.ts +6 -0
  66. package/dist/parsing/operations/order_by.d.ts.map +1 -1
  67. package/dist/parsing/operations/order_by.js +10 -1
  68. package/dist/parsing/operations/order_by.js.map +1 -1
  69. package/dist/parsing/operations/return.d.ts +34 -0
  70. package/dist/parsing/operations/return.d.ts.map +1 -1
  71. package/dist/parsing/operations/return.js +95 -2
  72. package/dist/parsing/operations/return.js.map +1 -1
  73. package/dist/parsing/operations/union.d.ts +19 -2
  74. package/dist/parsing/operations/union.d.ts.map +1 -1
  75. package/dist/parsing/operations/union.js +47 -11
  76. package/dist/parsing/operations/union.js.map +1 -1
  77. package/dist/parsing/operations/union_all.d.ts +5 -1
  78. package/dist/parsing/operations/union_all.d.ts.map +1 -1
  79. package/dist/parsing/operations/union_all.js +8 -2
  80. package/dist/parsing/operations/union_all.js.map +1 -1
  81. package/dist/parsing/statement_info_crawler.d.ts +106 -0
  82. package/dist/parsing/statement_info_crawler.d.ts.map +1 -1
  83. package/dist/parsing/statement_info_crawler.js +231 -12
  84. package/dist/parsing/statement_info_crawler.js.map +1 -1
  85. package/package.json +1 -1
@@ -9,6 +9,7 @@ const node_reference_1 = __importDefault(require("../graph/node_reference"));
9
9
  const relationship_1 = __importDefault(require("../graph/relationship"));
10
10
  const ast_node_1 = __importDefault(require("./ast_node"));
11
11
  const lookup_1 = __importDefault(require("./data_structures/lookup"));
12
+ const binding_reference_1 = __importDefault(require("./expressions/binding_reference"));
12
13
  const expression_1 = __importDefault(require("./expressions/expression"));
13
14
  const f_string_1 = __importDefault(require("./expressions/f_string"));
14
15
  const identifier_1 = __importDefault(require("./expressions/identifier"));
@@ -16,12 +17,14 @@ const operator_1 = require("./expressions/operator");
16
17
  const parameter_reference_1 = __importDefault(require("./expressions/parameter_reference"));
17
18
  const reference_1 = __importDefault(require("./expressions/reference"));
18
19
  const subquery_expression_1 = __importDefault(require("./expressions/subquery_expression"));
20
+ const aggregate_function_1 = __importDefault(require("./functions/aggregate_function"));
19
21
  const aggregated_return_1 = __importDefault(require("./operations/aggregated_return"));
20
22
  const aggregated_with_1 = __importDefault(require("./operations/aggregated_with"));
21
23
  const create_node_1 = __importDefault(require("./operations/create_node"));
22
24
  const create_relationship_1 = __importDefault(require("./operations/create_relationship"));
23
25
  const delete_node_1 = __importDefault(require("./operations/delete_node"));
24
26
  const delete_relationship_1 = __importDefault(require("./operations/delete_relationship"));
27
+ const let_1 = __importDefault(require("./operations/let"));
25
28
  const load_1 = __importDefault(require("./operations/load"));
26
29
  const match_1 = __importDefault(require("./operations/match"));
27
30
  const order_by_1 = __importDefault(require("./operations/order_by"));
@@ -59,6 +62,12 @@ class StatementInfoCrawler {
59
62
  this._relDeclaredSources = new Map();
60
63
  this._ownCreatedNodeLabels = new Set();
61
64
  this._ownCreatedRelTypes = new Set();
65
+ /**
66
+ * Per-output-column lineage of the most recently visited `RETURN`
67
+ * clause. Overwritten each time a `Return` op is visited so the
68
+ * last RETURN wins (matching the user-visible result shape).
69
+ */
70
+ this._returns = {};
62
71
  /**
63
72
  * For each inline CREATE VIRTUAL clause, the (label or type) it
64
73
  * declares and its inner statement AST. The label key receives the
@@ -66,6 +75,14 @@ class StatementInfoCrawler {
66
75
  */
67
76
  this._ownNodeCreates = [];
68
77
  this._ownRelCreates = [];
78
+ /**
79
+ * Map of `LET name = { ... }` binding name to the data sources its
80
+ * sub-query right-hand side touches. Used to follow a downstream
81
+ * `LOAD JSON FROM name` reference back to the original URL / file /
82
+ * async-function name when both the LET and the consuming statement
83
+ * are crawled together.
84
+ */
85
+ this._letSources = new Map();
69
86
  }
70
87
  /**
71
88
  * Walks one or more statement ASTs and returns the merged structural info.
@@ -75,8 +92,14 @@ class StatementInfoCrawler {
75
92
  */
76
93
  crawl(statements) {
77
94
  this.reset();
78
- const roots = this.toIterable(statements);
79
- for (const root of roots) {
95
+ const rootList = Array.from(this.toIterable(statements));
96
+ // Pre-pass: collect the sources each LET-bound sub-query
97
+ // touches so we can follow downstream `LOAD FROM <letName>`
98
+ // references back to the underlying URL / file / function.
99
+ for (const root of rootList) {
100
+ this.collectLetSources(root);
101
+ }
102
+ for (const root of rootList) {
80
103
  this.crawlStatement(root);
81
104
  }
82
105
  this.resolveRegisteredDefinitions();
@@ -105,6 +128,38 @@ class StatementInfoCrawler {
105
128
  this._ownCreatedRelTypes = new Set();
106
129
  this._ownNodeCreates = [];
107
130
  this._ownRelCreates = [];
131
+ this._returns = {};
132
+ this._letSources = new Map();
133
+ }
134
+ /**
135
+ * Pre-pass over a statement to record, for each `LET name = { ... }`
136
+ * with a sub-query right-hand side, the data sources its sub-query
137
+ * touches. Stored in `_letSources` so a downstream
138
+ * `LOAD JSON FROM name` consumer can union those sources into the
139
+ * consuming statement's per-label / per-type source set.
140
+ */
141
+ collectLetSources(root) {
142
+ let op = null;
143
+ try {
144
+ op = root.firstChild();
145
+ }
146
+ catch (_a) {
147
+ return;
148
+ }
149
+ while (op !== null) {
150
+ if (op instanceof let_1.default && op.subQuery !== null) {
151
+ const sources = new Set();
152
+ this.collectSources(op.subQuery, sources);
153
+ let existing = this._letSources.get(op.name);
154
+ if (existing === undefined) {
155
+ existing = new Set();
156
+ this._letSources.set(op.name, existing);
157
+ }
158
+ for (const s of sources)
159
+ existing.add(s);
160
+ }
161
+ op = op.next;
162
+ }
108
163
  }
109
164
  crawlStatement(root) {
110
165
  let op = null;
@@ -196,6 +251,13 @@ class StatementInfoCrawler {
196
251
  !(op instanceof delete_relationship_1.default)) {
197
252
  this.collectPropertyAccesses(op);
198
253
  }
254
+ // Capture per-output-column lineage from the final RETURN. Each
255
+ // Return op we visit overwrites the previous result so chained
256
+ // statements end up with the lineage of the last RETURN, which is
257
+ // what the caller actually sees in `runner.results`.
258
+ if (op instanceof return_1.default) {
259
+ this._returns = this.collectReturnColumns(op);
260
+ }
199
261
  }
200
262
  resolveRegisteredDefinitions() {
201
263
  // Sources and declared properties from inline CREATE VIRTUAL clauses
@@ -301,6 +363,113 @@ class StatementInfoCrawler {
301
363
  }
302
364
  }
303
365
  }
366
+ /**
367
+ * Builds the per-column lineage map of a single `RETURN` clause.
368
+ * Mirrors {@link Projection.expressions}'s default-aliasing rule so
369
+ * unnamed columns are keyed `expr0`, `expr1`, ….
370
+ */
371
+ collectReturnColumns(op) {
372
+ var _a;
373
+ const out = {};
374
+ const children = op.getChildren();
375
+ for (let i = 0; i < children.length; i++) {
376
+ const expr = children[i];
377
+ if (!(expr instanceof expression_1.default))
378
+ continue;
379
+ const alias = (_a = expr.alias) !== null && _a !== void 0 ? _a : `expr${i}`;
380
+ out[alias] = this.lineageOfExpression(expr);
381
+ }
382
+ return out;
383
+ }
384
+ /**
385
+ * Walks an output-column expression and returns the contributing
386
+ * `alias.property` accesses plus a `kind` summarising how they were
387
+ * combined (`literal` / `property` / `expression` / `aggregate`).
388
+ */
389
+ lineageOfExpression(expr) {
390
+ const refs = [];
391
+ const seenKeys = new Set();
392
+ let hasAggregate = false;
393
+ let aggregateName;
394
+ let hasLookup = false;
395
+ const stack = [expr];
396
+ const seen = new Set();
397
+ while (stack.length > 0) {
398
+ const node = stack.pop();
399
+ if (seen.has(node))
400
+ continue;
401
+ seen.add(node);
402
+ if (node instanceof aggregate_function_1.default) {
403
+ hasAggregate = true;
404
+ if (aggregateName === undefined)
405
+ aggregateName = node.name;
406
+ }
407
+ if (node instanceof lookup_1.default) {
408
+ hasLookup = true;
409
+ const target = this.resolveLookupTarget(node);
410
+ const aliasName = this.aliasOfLookup(node);
411
+ if (target !== null && aliasName !== null) {
412
+ const key = `${aliasName}\u0000${target.prop}`;
413
+ if (!seenKeys.has(key)) {
414
+ seenKeys.add(key);
415
+ refs.push({
416
+ alias: aliasName,
417
+ kind: target.kind === "node" ? "node" : "relationship",
418
+ labels: target.kind === "node" ? [...target.labels] : [...target.types],
419
+ property: target.prop,
420
+ });
421
+ }
422
+ }
423
+ }
424
+ for (const child of node.getChildren())
425
+ stack.push(child);
426
+ if (node instanceof subquery_expression_1.default) {
427
+ const inner = node._subqueryAST;
428
+ if (inner !== undefined)
429
+ stack.push(inner);
430
+ }
431
+ }
432
+ let kind;
433
+ if (hasAggregate)
434
+ kind = "aggregate";
435
+ else if (!hasLookup)
436
+ kind = "literal";
437
+ else if (refs.length === 1 && this.isSimplePropertyProjection(expr))
438
+ kind = "property";
439
+ else
440
+ kind = "expression";
441
+ const result = { references: refs, kind };
442
+ if (aggregateName !== undefined)
443
+ result.aggregate = aggregateName;
444
+ return result;
445
+ }
446
+ /**
447
+ * Returns the user-written identifier of a `Lookup`'s variable side
448
+ * (e.g. `'c'` in `c.name`), or `null` if the variable isn't a plain
449
+ * `Reference` to a named binding.
450
+ */
451
+ aliasOfLookup(lookup) {
452
+ const variable = lookup.variable;
453
+ if (variable instanceof reference_1.default) {
454
+ return variable.identifier;
455
+ }
456
+ return null;
457
+ }
458
+ /**
459
+ * True iff the expression is a direct `alias.property` projection
460
+ * (possibly wrapped in a single-child pass-through `Expression`),
461
+ * with no operators, functions, or additional references.
462
+ */
463
+ isSimplePropertyProjection(expr) {
464
+ let current = expr;
465
+ while (current instanceof expression_1.default) {
466
+ const children = current.getChildren();
467
+ if (children.length !== 1)
468
+ return false;
469
+ current = children[0];
470
+ }
471
+ return current instanceof lookup_1.default;
472
+ }
304
473
  handleLookupAccess(node) {
305
474
  const target = this.resolveLookupTarget(node);
306
475
  if (target === null)
@@ -547,12 +716,12 @@ class StatementInfoCrawler {
547
716
  }
548
717
  }
549
718
  collectSources(statement, target) {
550
- var _a;
719
+ var _a, _b;
551
720
  let op = null;
552
721
  try {
553
722
  op = statement.firstChild();
554
723
  }
555
- catch (_b) {
724
+ catch (_c) {
556
725
  return;
557
726
  }
558
727
  while (op !== null) {
@@ -563,14 +732,41 @@ class StatementInfoCrawler {
563
732
  target.add(name);
564
733
  }
565
734
  else {
566
- try {
567
- const from = op.from;
568
- if (typeof from === "string" && from.length > 0)
569
- target.add(from);
735
+ // Inspect the AST directly so a `LOAD FROM <letName>`
736
+ // produces a stable `let://<name>` source label
737
+ // without invoking the BindingReference's runtime
738
+ // lookup (which would either throw or return a
739
+ // non-string value). The parser wraps the
740
+ // reference in an Expression so we unwrap one
741
+ // level to find the BindingReference itself.
742
+ let sourceChild = op.fromComponent.firstChild();
743
+ if (sourceChild !== null && !(sourceChild instanceof binding_reference_1.default)) {
744
+ const inner = (_b = sourceChild.firstChild) === null || _b === void 0 ? void 0 : _b.call(sourceChild);
745
+ if (inner instanceof binding_reference_1.default)
746
+ sourceChild = inner;
747
+ }
748
+ if (sourceChild instanceof binding_reference_1.default) {
749
+ const bindingName = sourceChild.name;
750
+ target.add(`let://${bindingName}`);
751
+ // Chase through to the LET's own sources when
752
+ // we've seen the binding's definition in the
753
+ // same crawl.
754
+ const letSources = this._letSources.get(bindingName);
755
+ if (letSources !== undefined) {
756
+ for (const s of letSources)
757
+ target.add(s);
758
+ }
570
759
  }
571
- catch (_c) {
572
- // Dynamic source (e.g. f-string with unresolved refs);
573
- // skip rather than fail metadata extraction.
760
+ else {
761
+ try {
762
+ const from = op.from;
763
+ if (typeof from === "string" && from.length > 0)
764
+ target.add(from);
765
+ }
766
+ catch (_d) {
767
+ // Dynamic source (e.g. f-string with unresolved refs);
768
+ // skip rather than fail metadata extraction.
769
+ }
574
770
  }
575
771
  }
576
772
  }
@@ -744,6 +940,7 @@ class StatementInfoCrawler {
744
940
  nodes: declaredNodes,
745
941
  relationships: declaredRelationships,
746
942
  },
943
+ returns: this.cloneReturns(this._returns),
747
944
  };
748
945
  for (const [label, props] of this._nodeProps) {
749
946
  info.node_properties[label] = Array.from(props).sort();
@@ -757,7 +954,7 @@ class StatementInfoCrawler {
757
954
  * Returns a deep copy of a StatementInfo so callers can mutate it freely.
758
955
  */
759
956
  static clone(info) {
760
- var _a, _b, _c, _d;
957
+ var _a, _b, _c, _d, _e;
761
958
  const cloneProps = (props) => {
762
959
  const out = {};
763
960
  for (const [k, v] of Object.entries(props))
@@ -805,8 +1002,30 @@ class StatementInfoCrawler {
805
1002
  nodes: cloneDeclared((_b = (_a = info.declared) === null || _a === void 0 ? void 0 : _a.nodes) !== null && _b !== void 0 ? _b : {}),
806
1003
  relationships: cloneDeclared((_d = (_c = info.declared) === null || _c === void 0 ? void 0 : _c.relationships) !== null && _d !== void 0 ? _d : {}),
807
1004
  },
1005
+ returns: StatementInfoCrawler.cloneReturnsStatic((_e = info.returns) !== null && _e !== void 0 ? _e : {}),
808
1006
  };
809
1007
  }
1008
+ cloneReturns(returns) {
1009
+ return StatementInfoCrawler.cloneReturnsStatic(returns);
1010
+ }
1011
+ static cloneReturnsStatic(returns) {
1012
+ const out = {};
1013
+ for (const [col, lineage] of Object.entries(returns)) {
1014
+ const copy = {
1015
+ references: lineage.references.map((r) => ({
1016
+ alias: r.alias,
1017
+ kind: r.kind,
1018
+ labels: [...r.labels],
1019
+ property: r.property,
1020
+ })),
1021
+ kind: lineage.kind,
1022
+ };
1023
+ if (lineage.aggregate !== undefined)
1024
+ copy.aggregate = lineage.aggregate;
1025
+ out[col] = copy;
1026
+ }
1027
+ return out;
1028
+ }
810
1029
  }
811
1030
  exports.default = StatementInfoCrawler;
812
1031
  //# sourceMappingURL=statement_info_crawler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"statement_info_crawler.js","sourceRoot":"","sources":["../../src/parsing/statement_info_crawler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"statement_info_crawler.js","sourceRoot":"","sources":["../../src/parsing/statement_info_crawler.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.70",
3
+ "version": "1.0.71",
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",