flowquery 1.0.32 → 1.0.33

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/dist/compute/flowquery.d.ts +43 -0
  2. package/dist/compute/flowquery.d.ts.map +1 -0
  3. package/dist/compute/flowquery.js +30 -0
  4. package/dist/compute/flowquery.js.map +1 -0
  5. package/dist/compute/runner.d.ts +0 -21
  6. package/dist/compute/runner.d.ts.map +1 -1
  7. package/dist/compute/runner.js.map +1 -1
  8. package/dist/flowquery.min.js +1 -1
  9. package/dist/index.browser.d.ts +1 -1
  10. package/dist/index.browser.d.ts.map +1 -1
  11. package/dist/index.browser.js +10 -10
  12. package/dist/index.browser.js.map +1 -1
  13. package/dist/index.node.d.ts +4 -4
  14. package/dist/index.node.d.ts.map +1 -1
  15. package/dist/index.node.js +13 -13
  16. package/dist/index.node.js.map +1 -1
  17. package/dist/parsing/context.d.ts +1 -0
  18. package/dist/parsing/context.d.ts.map +1 -1
  19. package/dist/parsing/context.js +5 -0
  20. package/dist/parsing/context.js.map +1 -1
  21. package/dist/parsing/expressions/operator.d.ts +2 -2
  22. package/dist/parsing/expressions/operator.d.ts.map +1 -1
  23. package/dist/parsing/expressions/operator.js +6 -1
  24. package/dist/parsing/expressions/operator.js.map +1 -1
  25. package/dist/parsing/operations/match.d.ts +5 -1
  26. package/dist/parsing/operations/match.d.ts.map +1 -1
  27. package/dist/parsing/operations/match.js +25 -1
  28. package/dist/parsing/operations/match.js.map +1 -1
  29. package/dist/parsing/operations/union.d.ts +36 -0
  30. package/dist/parsing/operations/union.d.ts.map +1 -0
  31. package/dist/parsing/operations/union.js +121 -0
  32. package/dist/parsing/operations/union.js.map +1 -0
  33. package/dist/parsing/operations/union_all.d.ts +10 -0
  34. package/dist/parsing/operations/union_all.d.ts.map +1 -0
  35. package/dist/parsing/operations/union_all.js +17 -0
  36. package/dist/parsing/operations/union_all.js.map +1 -0
  37. package/dist/parsing/parser.d.ts +2 -3
  38. package/dist/parsing/parser.d.ts.map +1 -1
  39. package/dist/parsing/parser.js +72 -24
  40. package/dist/parsing/parser.js.map +1 -1
  41. package/dist/parsing/parser_state.d.ts +13 -0
  42. package/dist/parsing/parser_state.d.ts.map +1 -0
  43. package/dist/parsing/parser_state.js +27 -0
  44. package/dist/parsing/parser_state.js.map +1 -0
  45. package/dist/tokenization/keyword.d.ts +4 -1
  46. package/dist/tokenization/keyword.d.ts.map +1 -1
  47. package/dist/tokenization/keyword.js +3 -0
  48. package/dist/tokenization/keyword.js.map +1 -1
  49. package/dist/tokenization/token.d.ts +6 -0
  50. package/dist/tokenization/token.d.ts.map +1 -1
  51. package/dist/tokenization/token.js +18 -0
  52. package/dist/tokenization/token.js.map +1 -1
  53. package/docs/flowquery.min.js +1 -1
  54. package/flowquery-py/pyproject.toml +1 -1
  55. package/flowquery-py/src/__init__.py +2 -0
  56. package/flowquery-py/src/compute/__init__.py +2 -1
  57. package/flowquery-py/src/compute/flowquery.py +68 -0
  58. package/flowquery-py/src/graph/node.py +1 -1
  59. package/flowquery-py/src/parsing/operations/__init__.py +4 -0
  60. package/flowquery-py/src/parsing/operations/match.py +24 -2
  61. package/flowquery-py/src/parsing/operations/union.py +115 -0
  62. package/flowquery-py/src/parsing/operations/union_all.py +17 -0
  63. package/flowquery-py/src/parsing/parser.py +68 -24
  64. package/flowquery-py/src/parsing/parser_state.py +26 -0
  65. package/flowquery-py/src/tokenization/keyword.py +3 -0
  66. package/flowquery-py/src/tokenization/token.py +21 -0
  67. package/flowquery-py/tests/compute/test_runner.py +542 -1
  68. package/flowquery-py/tests/parsing/test_parser.py +82 -0
  69. package/flowquery-vscode/flowQueryEngine/flowquery.min.js +1 -1
  70. package/package.json +1 -1
  71. package/src/compute/flowquery.ts +46 -0
  72. package/src/compute/runner.ts +0 -24
  73. package/src/index.browser.ts +17 -14
  74. package/src/index.node.ts +21 -18
  75. package/src/parsing/context.ts +6 -0
  76. package/src/parsing/expressions/operator.ts +8 -3
  77. package/src/parsing/operations/match.ts +24 -1
  78. package/src/parsing/operations/union.ts +114 -0
  79. package/src/parsing/operations/union_all.ts +16 -0
  80. package/src/parsing/parser.ts +74 -23
  81. package/src/parsing/parser_state.ts +25 -0
  82. package/src/tokenization/keyword.ts +3 -0
  83. package/src/tokenization/token.ts +24 -0
  84. package/tests/compute/runner.test.ts +467 -0
  85. package/tests/parsing/parser.test.ts +76 -0
@@ -0,0 +1,43 @@
1
+ import Function from "../parsing/functions/function";
2
+ import { FunctionMetadata } from "../parsing/functions/function_metadata";
3
+ import Runner from "./runner";
4
+ /**
5
+ * FlowQuery is the public API surface for the FlowQuery library.
6
+ *
7
+ * It extends {@link Runner} with extensibility features such as function
8
+ * listing and plugin registration, keeping the Runner focused on execution.
9
+ *
10
+ * The static members are assigned dynamically in
11
+ * {@link ../index.browser.ts | index.browser.ts} and
12
+ * {@link ../index.node.ts | index.node.ts}.
13
+ *
14
+ * @example
15
+ * ```typescript
16
+ * const fq = new FlowQuery("WITH 1 as x RETURN x");
17
+ * await fq.run();
18
+ * console.log(fq.results); // [{ x: 1 }]
19
+ *
20
+ * // List all registered functions
21
+ * const functions = FlowQuery.listFunctions();
22
+ * ```
23
+ */
24
+ declare class FlowQuery extends Runner {
25
+ /**
26
+ * List all registered functions with their metadata.
27
+ */
28
+ static listFunctions: (options?: {
29
+ category?: string;
30
+ asyncOnly?: boolean;
31
+ syncOnly?: boolean;
32
+ }) => FunctionMetadata[];
33
+ /**
34
+ * Get metadata for a specific function.
35
+ */
36
+ static getFunctionMetadata: (name: string) => FunctionMetadata | undefined;
37
+ /**
38
+ * Base Function class for creating custom plugin functions.
39
+ */
40
+ static Function: typeof Function;
41
+ }
42
+ export default FlowQuery;
43
+ //# sourceMappingURL=flowquery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flowquery.d.ts","sourceRoot":"","sources":["../../src/compute/flowquery.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B;;;;;;;;;;;;;;;;;;;GAmBG;AACH,cAAM,SAAU,SAAQ,MAAM;IAC1B;;OAEG;IACH,MAAM,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,EAAE;QAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACtB,KAAK,gBAAgB,EAAE,CAAC;IAEzB;;OAEG;IACH,MAAM,CAAC,mBAAmB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,gBAAgB,GAAG,SAAS,CAAC;IAE3E;;OAEG;IACH,MAAM,CAAC,QAAQ,EAAE,OAAO,QAAQ,CAAC;CACpC;AAED,eAAe,SAAS,CAAC"}
@@ -0,0 +1,30 @@
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 runner_1 = __importDefault(require("./runner"));
7
+ /**
8
+ * FlowQuery is the public API surface for the FlowQuery library.
9
+ *
10
+ * It extends {@link Runner} with extensibility features such as function
11
+ * listing and plugin registration, keeping the Runner focused on execution.
12
+ *
13
+ * The static members are assigned dynamically in
14
+ * {@link ../index.browser.ts | index.browser.ts} and
15
+ * {@link ../index.node.ts | index.node.ts}.
16
+ *
17
+ * @example
18
+ * ```typescript
19
+ * const fq = new FlowQuery("WITH 1 as x RETURN x");
20
+ * await fq.run();
21
+ * console.log(fq.results); // [{ x: 1 }]
22
+ *
23
+ * // List all registered functions
24
+ * const functions = FlowQuery.listFunctions();
25
+ * ```
26
+ */
27
+ class FlowQuery extends runner_1.default {
28
+ }
29
+ exports.default = FlowQuery;
30
+ //# sourceMappingURL=flowquery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flowquery.js","sourceRoot":"","sources":["../../src/compute/flowquery.ts"],"names":[],"mappings":";;;;;AAEA,sDAA8B;AAE9B;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,SAAU,SAAQ,gBAAM;CAmB7B;AAED,kBAAe,SAAS,CAAC"}
@@ -1,6 +1,4 @@
1
1
  import ASTNode from "../parsing/ast_node";
2
- import Function from "../parsing/functions/function";
3
- import { FunctionMetadata } from "../parsing/functions/function_metadata";
4
2
  /**
5
3
  * Executes a FlowQuery statement and retrieves the results.
6
4
  *
@@ -17,25 +15,6 @@ import { FunctionMetadata } from "../parsing/functions/function_metadata";
17
15
  declare class Runner {
18
16
  private first;
19
17
  private last;
20
- /**
21
- * List all registered functions with their metadata.
22
- * Added dynamically in index.browser.ts / index.node.ts
23
- */
24
- static listFunctions: (options?: {
25
- category?: string;
26
- asyncOnly?: boolean;
27
- syncOnly?: boolean;
28
- }) => FunctionMetadata[];
29
- /**
30
- * Get metadata for a specific function.
31
- * Added dynamically in index.browser.ts / index.node.ts
32
- */
33
- static getFunctionMetadata: (name: string) => FunctionMetadata | undefined;
34
- /**
35
- * Base Function class for creating custom plugin functions.
36
- * Added dynamically in index.browser.ts / index.node.ts
37
- */
38
- static Function: typeof Function;
39
18
  /**
40
19
  * Creates a new Runner instance and parses the FlowQuery statement.
41
20
  *
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/compute/runner.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,QAAQ,MAAM,+BAA+B,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAI1E;;;;;;;;;;;;GAYG;AACH,cAAM,MAAM;IACR,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,IAAI,CAAY;IAExB;;;OAGG;IACH,MAAM,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,EAAE;QAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACtB,KAAK,gBAAgB,EAAE,CAAC;IAEzB;;;OAGG;IACH,MAAM,CAAC,mBAAmB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,gBAAgB,GAAG,SAAS,CAAC;IAE3E;;;OAGG;IACH,MAAM,CAAC,QAAQ,EAAE,OAAO,QAAQ,CAAC;IAEjC;;;;;OAKG;gBACS,SAAS,GAAE,MAAM,GAAG,IAAW,EAAE,GAAG,GAAE,OAAO,GAAG,IAAW;IASvE;;;;;OAKG;IACU,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAajC;;;;OAIG;IACH,IAAW,OAAO,IAAI,GAAG,CAExB;CACJ;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/compute/runner.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAI1C;;;;;;;;;;;;GAYG;AACH,cAAM,MAAM;IACR,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,IAAI,CAAY;IAExB;;;;;OAKG;gBACS,SAAS,GAAE,MAAM,GAAG,IAAW,EAAE,GAAG,GAAE,OAAO,GAAG,IAAW;IASvE;;;;;OAKG;IACU,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAajC;;;;OAIG;IACH,IAAW,OAAO,IAAI,GAAG,CAExB;CACJ;AAED,eAAe,MAAM,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/compute/runner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAIA,+DAAuC;AAEvC;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM;IA0BR;;;;;OAKG;IACH,YAAY,YAA2B,IAAI,EAAE,MAAsB,IAAI;QACnE,IAAI,CAAC,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,EAAE,CAAC,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,IAAI,GAAG,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,gBAAM,EAAE,CAAC,KAAK,CAAC,SAAU,CAAC,CAAC;QACjE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,EAAe,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,EAAe,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACU,GAAG;;YACZ,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC/C,IAAI,CAAC;oBACD,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;oBAC9B,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;oBACvB,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;oBAC1B,OAAO,EAAE,CAAC;gBACd,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACT,MAAM,CAAC,CAAC,CAAC,CAAC;gBACd,CAAC;YACL,CAAC,CAAA,CAAC,CAAC;QACP,CAAC;KAAA;IAED;;;;OAIG;IACH,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IAC7B,CAAC;CACJ;AAED,kBAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/compute/runner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,+DAAuC;AAEvC;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM;IAIR;;;;;OAKG;IACH,YAAY,YAA2B,IAAI,EAAE,MAAsB,IAAI;QACnE,IAAI,CAAC,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,EAAE,CAAC,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,IAAI,GAAG,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,gBAAM,EAAE,CAAC,KAAK,CAAC,SAAU,CAAC,CAAC;QACjE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,EAAe,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,EAAe,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACU,GAAG;;YACZ,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC/C,IAAI,CAAC;oBACD,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;oBAC9B,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;oBACvB,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;oBAC1B,OAAO,EAAE,CAAC;gBACd,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACT,MAAM,CAAC,CAAC,CAAC,CAAC;gBACd,CAAC;YACL,CAAC,CAAA,CAAC,CAAC;QACP,CAAC;KAAA;IAED;;;;OAIG;IACH,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;IAC7B,CAAC;CACJ;AAED,kBAAe,MAAM,CAAC"}