flowquery 1.0.3 → 1.0.6

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 (268) hide show
  1. package/README.md +182 -0
  2. package/dist/compute/runner.d.ts +81 -0
  3. package/dist/compute/runner.d.ts.map +1 -0
  4. package/dist/extensibility.d.ts +9 -0
  5. package/dist/extensibility.d.ts.map +1 -0
  6. package/dist/extensibility.js +25 -0
  7. package/dist/extensibility.js.map +1 -0
  8. package/dist/flowquery.min.js +1 -1
  9. package/dist/index.browser.d.ts +10 -0
  10. package/dist/index.browser.d.ts.map +1 -0
  11. package/dist/index.d.ts +9 -0
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.node.d.ts +14 -0
  14. package/dist/index.node.d.ts.map +1 -0
  15. package/dist/io/command_line.d.ts +28 -0
  16. package/dist/io/command_line.d.ts.map +1 -0
  17. package/dist/parsing/alias.d.ts +10 -0
  18. package/dist/parsing/alias.d.ts.map +1 -0
  19. package/dist/parsing/alias_option.d.ts +6 -0
  20. package/dist/parsing/alias_option.d.ts.map +1 -0
  21. package/dist/parsing/ast_node.d.ts +100 -0
  22. package/dist/parsing/ast_node.d.ts.map +1 -0
  23. package/dist/parsing/base_parser.d.ts +49 -0
  24. package/dist/parsing/base_parser.d.ts.map +1 -0
  25. package/dist/parsing/components/csv.d.ts +6 -0
  26. package/dist/parsing/components/csv.d.ts.map +1 -0
  27. package/dist/parsing/components/from.d.ts +7 -0
  28. package/dist/parsing/components/from.d.ts.map +1 -0
  29. package/dist/parsing/components/headers.d.ts +7 -0
  30. package/dist/parsing/components/headers.d.ts.map +1 -0
  31. package/dist/parsing/components/json.d.ts +6 -0
  32. package/dist/parsing/components/json.d.ts.map +1 -0
  33. package/dist/parsing/components/null.d.ts +6 -0
  34. package/dist/parsing/components/null.d.ts.map +1 -0
  35. package/dist/parsing/components/post.d.ts +6 -0
  36. package/dist/parsing/components/post.d.ts.map +1 -0
  37. package/dist/parsing/components/text.d.ts +6 -0
  38. package/dist/parsing/components/text.d.ts.map +1 -0
  39. package/dist/parsing/context.d.ts +38 -0
  40. package/dist/parsing/context.d.ts.map +1 -0
  41. package/dist/parsing/data_structures/associative_array.d.ts +28 -0
  42. package/dist/parsing/data_structures/associative_array.d.ts.map +1 -0
  43. package/dist/parsing/data_structures/json_array.d.ts +26 -0
  44. package/dist/parsing/data_structures/json_array.d.ts.map +1 -0
  45. package/dist/parsing/data_structures/key_value_pair.d.ts +25 -0
  46. package/dist/parsing/data_structures/key_value_pair.d.ts.map +1 -0
  47. package/dist/parsing/data_structures/lookup.d.ts +25 -0
  48. package/dist/parsing/data_structures/lookup.d.ts.map +1 -0
  49. package/dist/parsing/data_structures/range_lookup.d.ts +14 -0
  50. package/dist/parsing/data_structures/range_lookup.d.ts.map +1 -0
  51. package/dist/parsing/expressions/expression.d.ts +53 -0
  52. package/dist/parsing/expressions/expression.d.ts.map +1 -0
  53. package/dist/parsing/expressions/f_string.d.ts +21 -0
  54. package/dist/parsing/expressions/f_string.d.ts.map +1 -0
  55. package/dist/parsing/expressions/identifier.d.ts +17 -0
  56. package/dist/parsing/expressions/identifier.d.ts.map +1 -0
  57. package/dist/parsing/expressions/number.d.ts +25 -0
  58. package/dist/parsing/expressions/number.d.ts.map +1 -0
  59. package/dist/parsing/expressions/operator.d.ts +79 -0
  60. package/dist/parsing/expressions/operator.d.ts.map +1 -0
  61. package/dist/parsing/expressions/reference.d.ts +29 -0
  62. package/dist/parsing/expressions/reference.d.ts.map +1 -0
  63. package/dist/parsing/expressions/string.d.ts +23 -0
  64. package/dist/parsing/expressions/string.d.ts.map +1 -0
  65. package/dist/parsing/functions/aggregate_function.d.ts +42 -0
  66. package/dist/parsing/functions/aggregate_function.d.ts.map +1 -0
  67. package/dist/parsing/functions/async_function.d.ts +52 -0
  68. package/dist/parsing/functions/async_function.d.ts.map +1 -0
  69. package/dist/parsing/functions/avg.d.ts +15 -0
  70. package/dist/parsing/functions/avg.d.ts.map +1 -0
  71. package/dist/parsing/functions/avg.js +20 -2
  72. package/dist/parsing/functions/avg.js.map +1 -1
  73. package/dist/parsing/functions/collect.d.ts +21 -0
  74. package/dist/parsing/functions/collect.d.ts.map +1 -0
  75. package/dist/parsing/functions/collect.js +20 -2
  76. package/dist/parsing/functions/collect.js.map +1 -1
  77. package/dist/parsing/functions/extensibility/index.d.ts +37 -0
  78. package/dist/parsing/functions/extensibility/index.d.ts.map +1 -0
  79. package/dist/parsing/functions/extensibility/index.js +50 -0
  80. package/dist/parsing/functions/extensibility/index.js.map +1 -0
  81. package/dist/parsing/functions/function.d.ts +36 -0
  82. package/dist/parsing/functions/function.d.ts.map +1 -0
  83. package/dist/parsing/functions/function_factory.d.ts +174 -0
  84. package/dist/parsing/functions/function_factory.d.ts.map +1 -0
  85. package/dist/parsing/functions/function_factory.js +44 -47
  86. package/dist/parsing/functions/function_factory.js.map +1 -1
  87. package/dist/parsing/functions/function_metadata.d.ts +134 -0
  88. package/dist/parsing/functions/function_metadata.d.ts.map +1 -0
  89. package/dist/parsing/functions/function_metadata.js +103 -153
  90. package/dist/parsing/functions/function_metadata.js.map +1 -1
  91. package/dist/parsing/functions/functions.d.ts +21 -0
  92. package/dist/parsing/functions/functions.d.ts.map +1 -0
  93. package/dist/parsing/functions/functions.js +37 -2
  94. package/dist/parsing/functions/functions.js.map +1 -1
  95. package/dist/parsing/functions/join.d.ts +9 -0
  96. package/dist/parsing/functions/join.d.ts.map +1 -0
  97. package/dist/parsing/functions/join.js +21 -2
  98. package/dist/parsing/functions/join.js.map +1 -1
  99. package/dist/parsing/functions/predicate_function.d.ts +19 -0
  100. package/dist/parsing/functions/predicate_function.d.ts.map +1 -0
  101. package/dist/parsing/functions/predicate_function.js +3 -0
  102. package/dist/parsing/functions/predicate_function.js.map +1 -1
  103. package/dist/parsing/functions/predicate_sum.d.ts +7 -0
  104. package/dist/parsing/functions/predicate_sum.d.ts.map +1 -0
  105. package/dist/parsing/functions/predicate_sum.js +23 -2
  106. package/dist/parsing/functions/predicate_sum.js.map +1 -1
  107. package/dist/parsing/functions/rand.d.ts +7 -0
  108. package/dist/parsing/functions/rand.d.ts.map +1 -0
  109. package/dist/parsing/functions/rand.js +18 -2
  110. package/dist/parsing/functions/rand.js.map +1 -1
  111. package/dist/parsing/functions/range.d.ts +7 -0
  112. package/dist/parsing/functions/range.d.ts.map +1 -0
  113. package/dist/parsing/functions/range.js +21 -2
  114. package/dist/parsing/functions/range.js.map +1 -1
  115. package/dist/parsing/functions/reducer_element.d.ts +6 -0
  116. package/dist/parsing/functions/reducer_element.d.ts.map +1 -0
  117. package/dist/parsing/functions/replace.d.ts +7 -0
  118. package/dist/parsing/functions/replace.d.ts.map +1 -0
  119. package/dist/parsing/functions/replace.js +22 -2
  120. package/dist/parsing/functions/replace.js.map +1 -1
  121. package/dist/parsing/functions/round.d.ts +7 -0
  122. package/dist/parsing/functions/round.d.ts.map +1 -0
  123. package/dist/parsing/functions/round.js +20 -2
  124. package/dist/parsing/functions/round.js.map +1 -1
  125. package/dist/parsing/functions/size.d.ts +7 -0
  126. package/dist/parsing/functions/size.d.ts.map +1 -0
  127. package/dist/parsing/functions/size.js +20 -2
  128. package/dist/parsing/functions/size.js.map +1 -1
  129. package/dist/parsing/functions/split.d.ts +9 -0
  130. package/dist/parsing/functions/split.d.ts.map +1 -0
  131. package/dist/parsing/functions/split.js +21 -2
  132. package/dist/parsing/functions/split.js.map +1 -1
  133. package/dist/parsing/functions/stringify.d.ts +9 -0
  134. package/dist/parsing/functions/stringify.d.ts.map +1 -0
  135. package/dist/parsing/functions/stringify.js +20 -2
  136. package/dist/parsing/functions/stringify.js.map +1 -1
  137. package/dist/parsing/functions/sum.d.ts +14 -0
  138. package/dist/parsing/functions/sum.d.ts.map +1 -0
  139. package/dist/parsing/functions/sum.js +20 -2
  140. package/dist/parsing/functions/sum.js.map +1 -1
  141. package/dist/parsing/functions/to_json.d.ts +7 -0
  142. package/dist/parsing/functions/to_json.d.ts.map +1 -0
  143. package/dist/parsing/functions/to_json.js +20 -2
  144. package/dist/parsing/functions/to_json.js.map +1 -1
  145. package/dist/parsing/functions/value_holder.d.ts +8 -0
  146. package/dist/parsing/functions/value_holder.d.ts.map +1 -0
  147. package/dist/parsing/logic/case.d.ts +7 -0
  148. package/dist/parsing/logic/case.d.ts.map +1 -0
  149. package/dist/parsing/logic/else.d.ts +7 -0
  150. package/dist/parsing/logic/else.d.ts.map +1 -0
  151. package/dist/parsing/logic/end.d.ts +6 -0
  152. package/dist/parsing/logic/end.d.ts.map +1 -0
  153. package/dist/parsing/logic/then.d.ts +7 -0
  154. package/dist/parsing/logic/then.d.ts.map +1 -0
  155. package/dist/parsing/logic/when.d.ts +7 -0
  156. package/dist/parsing/logic/when.d.ts.map +1 -0
  157. package/dist/parsing/operations/aggregated_return.d.ts +8 -0
  158. package/dist/parsing/operations/aggregated_return.d.ts.map +1 -0
  159. package/dist/parsing/operations/aggregated_with.d.ts +8 -0
  160. package/dist/parsing/operations/aggregated_with.d.ts.map +1 -0
  161. package/dist/parsing/operations/group_by.d.ts +35 -0
  162. package/dist/parsing/operations/group_by.d.ts.map +1 -0
  163. package/dist/parsing/operations/limit.d.ts +10 -0
  164. package/dist/parsing/operations/limit.d.ts.map +1 -0
  165. package/dist/parsing/operations/load.d.ts +48 -0
  166. package/dist/parsing/operations/load.d.ts.map +1 -0
  167. package/dist/parsing/operations/operation.d.ts +39 -0
  168. package/dist/parsing/operations/operation.d.ts.map +1 -0
  169. package/dist/parsing/operations/projection.d.ts +8 -0
  170. package/dist/parsing/operations/projection.d.ts.map +1 -0
  171. package/dist/parsing/operations/return.d.ts +23 -0
  172. package/dist/parsing/operations/return.d.ts.map +1 -0
  173. package/dist/parsing/operations/unwind.d.ts +12 -0
  174. package/dist/parsing/operations/unwind.d.ts.map +1 -0
  175. package/dist/parsing/operations/where.d.ts +26 -0
  176. package/dist/parsing/operations/where.d.ts.map +1 -0
  177. package/dist/parsing/operations/with.d.ts +17 -0
  178. package/dist/parsing/operations/with.d.ts.map +1 -0
  179. package/dist/parsing/parser.d.ts +66 -0
  180. package/dist/parsing/parser.d.ts.map +1 -0
  181. package/dist/parsing/parser.js +2 -3
  182. package/dist/parsing/parser.js.map +1 -1
  183. package/dist/parsing/token_to_node.d.ts +7 -0
  184. package/dist/parsing/token_to_node.d.ts.map +1 -0
  185. package/dist/tokenization/keyword.d.ts +43 -0
  186. package/dist/tokenization/keyword.d.ts.map +1 -0
  187. package/dist/tokenization/operator.d.ts +22 -0
  188. package/dist/tokenization/operator.d.ts.map +1 -0
  189. package/dist/tokenization/string_walker.d.ts +55 -0
  190. package/dist/tokenization/string_walker.d.ts.map +1 -0
  191. package/dist/tokenization/symbol.d.ts +15 -0
  192. package/dist/tokenization/symbol.d.ts.map +1 -0
  193. package/dist/tokenization/token.d.ts +176 -0
  194. package/dist/tokenization/token.d.ts.map +1 -0
  195. package/dist/tokenization/token_mapper.d.ts +40 -0
  196. package/dist/tokenization/token_mapper.d.ts.map +1 -0
  197. package/dist/tokenization/token_type.d.ts +16 -0
  198. package/dist/tokenization/token_type.d.ts.map +1 -0
  199. package/dist/tokenization/tokenizer.d.ts +45 -0
  200. package/dist/tokenization/tokenizer.d.ts.map +1 -0
  201. package/dist/tokenization/trie.d.ts +41 -0
  202. package/dist/tokenization/trie.d.ts.map +1 -0
  203. package/dist/utils/object_utils.d.ts +15 -0
  204. package/dist/utils/object_utils.d.ts.map +1 -0
  205. package/dist/utils/string_utils.d.ts +51 -0
  206. package/dist/utils/string_utils.d.ts.map +1 -0
  207. package/docs/flowquery.min.js +1 -1
  208. package/flowquery-vscode/flowQueryEngine/flowquery.min.js +1 -1
  209. package/misc/apps/RAG/.env.example +14 -0
  210. package/misc/apps/RAG/README.md +0 -7
  211. package/misc/apps/RAG/package.json +16 -7
  212. package/misc/apps/RAG/public/index.html +18 -0
  213. package/misc/apps/RAG/src/App.css +42 -0
  214. package/misc/apps/RAG/src/App.tsx +50 -0
  215. package/misc/apps/RAG/src/components/ApiKeySettings.tsx +245 -0
  216. package/misc/apps/RAG/src/components/ChatContainer.css +67 -0
  217. package/misc/apps/RAG/src/components/ChatContainer.tsx +239 -0
  218. package/misc/apps/RAG/src/components/ChatInput.css +23 -0
  219. package/misc/apps/RAG/src/components/ChatInput.tsx +62 -0
  220. package/misc/apps/RAG/src/components/ChatMessage.css +136 -0
  221. package/misc/apps/RAG/src/components/ChatMessage.tsx +152 -0
  222. package/misc/apps/RAG/src/components/FlowQueryAgent.ts +390 -0
  223. package/misc/apps/RAG/src/components/FlowQueryRunner.css +104 -0
  224. package/misc/apps/RAG/src/components/FlowQueryRunner.tsx +332 -0
  225. package/misc/apps/RAG/src/components/index.ts +15 -0
  226. package/misc/apps/RAG/src/index.tsx +17 -0
  227. package/misc/apps/RAG/src/plugins/PluginRegistry.ts +136 -0
  228. package/misc/apps/RAG/src/plugins/README.md +139 -0
  229. package/misc/apps/RAG/src/plugins/index.ts +72 -0
  230. package/misc/apps/RAG/src/plugins/loaders/CatFacts.ts +79 -0
  231. package/misc/apps/RAG/src/plugins/loaders/FetchJson.ts +71 -0
  232. package/misc/apps/RAG/src/plugins/loaders/Llm.ts +441 -0
  233. package/misc/apps/RAG/src/plugins/loaders/MockData.ts +161 -0
  234. package/misc/apps/RAG/src/plugins/types.ts +52 -0
  235. package/misc/apps/RAG/src/prompts/FlowQuerySystemPrompt.ts +385 -0
  236. package/misc/apps/RAG/src/prompts/index.ts +10 -0
  237. package/misc/apps/RAG/src/utils/FlowQueryExecutor.ts +131 -0
  238. package/misc/apps/RAG/src/utils/FlowQueryExtractor.ts +203 -0
  239. package/misc/apps/RAG/src/utils/index.ts +9 -0
  240. package/misc/apps/RAG/tsconfig.json +4 -2
  241. package/misc/apps/RAG/webpack.config.js +23 -12
  242. package/package.json +7 -1
  243. package/src/extensibility.ts +9 -0
  244. package/src/parsing/functions/avg.ts +10 -0
  245. package/src/parsing/functions/collect.ts +10 -0
  246. package/src/parsing/functions/extensibility/index.ts +54 -0
  247. package/src/parsing/functions/function_factory.ts +51 -48
  248. package/src/parsing/functions/function_metadata.ts +132 -156
  249. package/src/parsing/functions/functions.ts +27 -0
  250. package/src/parsing/functions/join.ts +11 -0
  251. package/src/parsing/functions/predicate_function.ts +4 -0
  252. package/src/parsing/functions/predicate_sum.ts +13 -0
  253. package/src/parsing/functions/rand.ts +8 -0
  254. package/src/parsing/functions/range.ts +11 -0
  255. package/src/parsing/functions/replace.ts +12 -0
  256. package/src/parsing/functions/round.ts +10 -0
  257. package/src/parsing/functions/size.ts +10 -0
  258. package/src/parsing/functions/split.ts +11 -0
  259. package/src/parsing/functions/stringify.ts +10 -0
  260. package/src/parsing/functions/sum.ts +10 -0
  261. package/src/parsing/functions/to_json.ts +10 -0
  262. package/src/parsing/parser.ts +2 -3
  263. package/tests/parsing/function_plugins.test.ts +11 -11
  264. package/tsconfig.json +4 -1
  265. package/dist/parsing/functions/predicate_function_factory.js +0 -19
  266. package/dist/parsing/functions/predicate_function_factory.js.map +0 -1
  267. package/misc/apps/RAG/src/index.ts +0 -20
  268. package/src/parsing/functions/predicate_function_factory.ts +0 -15
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/parsing/parser.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,UAAU,MAAM,eAAe,CAAC;AAsCvC;;;;;;;;;;;;GAYG;AACH,cAAM,MAAO,SAAQ,UAAU;IAC3B,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,QAAQ,CAAa;IAE7B;;;;;;;;;;;OAWG;IACI,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IA6CxC,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,WAAW;IAyBnB,OAAO,CAAC,WAAW;IAiBnB,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,SAAS;IAoEjB,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAE,gBAAgB;IA6BzB,OAAO,CAAC,eAAe;IAiFvB,OAAO,CAAC,WAAW;IAkDnB,OAAO,CAAC,SAAS;IAyCjB,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAC,aAAa;IAiCrB;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,sBAAsB;IA0D9B,OAAO,CAAC,YAAY;IA4BpB,OAAO,CAAC,SAAS;IAiBjB,OAAO,CAAC,qBAAqB;IAuC7B,OAAO,CAAC,cAAc;IAyBtB,OAAO,CAAC,kCAAkC;IAO1C,OAAO,CAAC,yBAAyB;IASjC,OAAO,CAAC,0CAA0C;CAKrD;AAED,eAAe,MAAM,CAAC"}
@@ -34,7 +34,6 @@ const context_1 = __importDefault(require("./context"));
34
34
  const aggregate_function_1 = __importDefault(require("./functions/aggregate_function"));
35
35
  const object_utils_1 = __importDefault(require("../utils/object_utils"));
36
36
  const token_1 = __importDefault(require("../tokenization/token"));
37
- const predicate_function_factory_1 = __importDefault(require("./functions/predicate_function_factory"));
38
37
  const f_string_1 = __importDefault(require("./expressions/f_string"));
39
38
  const string_1 = __importDefault(require("./expressions/string"));
40
39
  const aggregated_with_1 = __importDefault(require("./operations/aggregated_with"));
@@ -52,7 +51,7 @@ const null_1 = __importDefault(require("./components/null"));
52
51
  * @example
53
52
  * ```typescript
54
53
  * const parser = new Parser();
55
- * const ast = parser.parse("unwind [1, 2, 3, 4, 5] as num return num");
54
+ * const ast = parser.parse("unwind [1, 2, 3, 4] as num return num");
56
55
  * ```
57
56
  */
58
57
  class Parser extends base_parser_1.default {
@@ -631,7 +630,7 @@ class Parser extends base_parser_1.default {
631
630
  if (this.token.value === null) {
632
631
  throw new Error('Expected identifier');
633
632
  }
634
- const func = predicate_function_factory_1.default.create(this.token.value);
633
+ const func = function_factory_1.default.createPredicate(this.token.value);
635
634
  this.setNextToken();
636
635
  if (!this.token.isLeftParenthesis()) {
637
636
  throw new Error('Expected left parenthesis');
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/parsing/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/parsing/parser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import Token from '../tokenization/token';
2
+ import ASTNode from './ast_node';
3
+ declare class TokenToNode {
4
+ static convert(token: Token): ASTNode;
5
+ }
6
+ export default TokenToNode;
7
+ //# sourceMappingURL=token_to_node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token_to_node.d.ts","sourceRoot":"","sources":["../../src/parsing/token_to_node.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,uBAAuB,CAAC;AAC1C,OAAO,OAAO,MAAM,YAAY,CAAC;AASjC,cAAM,WAAW;WACC,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;CAyE/C;AAED,eAAe,WAAW,CAAC"}
@@ -0,0 +1,43 @@
1
+ declare enum Keyword {
2
+ RETURN = "RETURN",
3
+ MATCH = "MATCH",
4
+ WHERE = "WHERE",
5
+ CREATE = "CREATE",
6
+ MERGE = "MERGE",
7
+ DELETE = "DELETE",
8
+ DETACH = "DETACH",
9
+ SET = "SET",
10
+ REMOVE = "REMOVE",
11
+ FOREACH = "FOREACH",
12
+ WITH = "WITH",
13
+ CALL = "CALL",
14
+ YIELD = "YIELD",
15
+ LOAD = "LOAD",
16
+ HEADERS = "HEADERS",
17
+ POST = "POST",
18
+ FROM = "FROM",
19
+ CSV = "CSV",
20
+ JSON = "JSON",
21
+ TEXT = "TEXT",
22
+ AS = "AS",
23
+ UNWIND = "UNWIND",
24
+ SUM = "SUM",
25
+ COLLECT = "COLLECT",
26
+ DISTINCT = "DISTINCT",
27
+ ORDER = "ORDER",
28
+ BY = "BY",
29
+ ASC = "ASC",
30
+ DESC = "DESC",
31
+ SKIP = "SKIP",
32
+ LIMIT = "LIMIT",
33
+ EOF = "EOF",
34
+ CASE = "CASE",
35
+ WHEN = "WHEN",
36
+ THEN = "THEN",
37
+ ELSE = "ELSE",
38
+ END = "END",
39
+ NULL = "NULL",
40
+ IN = "IN"
41
+ }
42
+ export default Keyword;
43
+ //# sourceMappingURL=keyword.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyword.d.ts","sourceRoot":"","sources":["../../src/tokenization/keyword.ts"],"names":[],"mappings":"AAAA,aAAK,OAAO;IACR,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,IAAI,SAAS;IACb,KAAK,UAAU;IACf,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,IAAI,SAAS;IACb,EAAE,OAAO;IACT,MAAM,WAAW;IACjB,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,EAAE,OAAO;IACT,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,IAAI,SAAS;IACb,KAAK,UAAU;IACf,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,EAAE,OAAO;CACZ;AAED,eAAe,OAAO,CAAC"}
@@ -0,0 +1,22 @@
1
+ declare enum Operator {
2
+ ADD = "+",
3
+ SUBTRACT = "-",
4
+ MULTIPLY = "*",
5
+ DIVIDE = "/",
6
+ MODULO = "%",
7
+ EXPONENT = "^",
8
+ EQUALS = "=",
9
+ NOT_EQUALS = "<>",
10
+ LESS_THAN = "<",
11
+ LESS_THAN_OR_EQUAL = "<=",
12
+ GREATER_THAN = ">",
13
+ GREATER_THAN_OR_EQUAL = ">=",
14
+ IS = "IS",
15
+ AND = "AND",
16
+ OR = "OR",
17
+ NOT = "NOT",
18
+ IN = "IN",
19
+ PIPE = "|"
20
+ }
21
+ export default Operator;
22
+ //# sourceMappingURL=operator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operator.d.ts","sourceRoot":"","sources":["../../src/tokenization/operator.ts"],"names":[],"mappings":"AAAA,aAAK,QAAQ;IAET,GAAG,MAAM;IACT,QAAQ,MAAM;IACd,QAAQ,MAAM;IACd,MAAM,MAAM;IACZ,MAAM,MAAM;IACZ,QAAQ,MAAM;IAEd,MAAM,MAAM;IACZ,UAAU,OAAO;IACjB,SAAS,MAAM;IACf,kBAAkB,OAAO;IACzB,YAAY,MAAM;IAClB,qBAAqB,OAAO;IAC5B,EAAE,OAAO;IAET,GAAG,QAAQ;IACX,EAAE,OAAO;IACT,GAAG,QAAQ;IACX,EAAE,OAAO;IACT,IAAI,MAAM;CACb;AAED,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Utility class for walking through a string character by character during tokenization.
3
+ *
4
+ * Provides methods to check for specific character patterns, move through the string,
5
+ * and extract substrings. Used by the Tokenizer to process input text.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * const walker = new StringWalker("WITH x as variable");
10
+ * while (!walker.isAtEnd) {
11
+ * // Process characters
12
+ * }
13
+ * ```
14
+ */
15
+ declare class StringWalker {
16
+ private _position;
17
+ private readonly text;
18
+ /**
19
+ * Creates a new StringWalker for the given text.
20
+ *
21
+ * @param text - The input text to walk through
22
+ */
23
+ constructor(text: string);
24
+ get position(): number;
25
+ get currentChar(): string;
26
+ get nextChar(): string;
27
+ get previousChar(): string;
28
+ get isAtEnd(): boolean;
29
+ getString(startPosition: number): string;
30
+ getRemainingString(): string;
31
+ checkForSingleComment(): boolean;
32
+ checkForMultiLineComment(): boolean;
33
+ singleLineCommentStart(): boolean;
34
+ multiLineCommentStart(): boolean;
35
+ multiLineCommentEnd(): boolean;
36
+ newLine(): boolean;
37
+ escaped(char: string): boolean;
38
+ escapedBrace(): boolean;
39
+ openingBrace(): boolean;
40
+ closingBrace(): boolean;
41
+ checkForUnderScore(): boolean;
42
+ checkForLetter(): boolean;
43
+ checkForDigit(): boolean;
44
+ checkForQuote(): string | null;
45
+ checkForString(value: string): boolean;
46
+ checkForWhitespace(): boolean;
47
+ checkForFStringStart(): boolean;
48
+ moveNext(): void;
49
+ moveBy(steps: number): void;
50
+ movePrevious(): void;
51
+ is_word(word: string | null): boolean;
52
+ word_continuation(word: string): boolean;
53
+ }
54
+ export default StringWalker;
55
+ //# sourceMappingURL=string_walker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"string_walker.d.ts","sourceRoot":"","sources":["../../src/tokenization/string_walker.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,cAAM,YAAY;IACd,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAE9B;;;;OAIG;gBACS,IAAI,EAAE,MAAM;IAKxB,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,YAAY,IAAI,MAAM,CAEhC;IAED,IAAW,OAAO,IAAI,OAAO,CAE5B;IAEM,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;IAIxC,kBAAkB,IAAI,MAAM;IAI5B,qBAAqB,IAAI,OAAO;IAUhC,wBAAwB,IAAI,OAAO;IAcnC,sBAAsB,IAAI,OAAO;IAIjC,qBAAqB,IAAI,OAAO;IAIhC,mBAAmB,IAAI,OAAO;IAI9B,OAAO,IAAI,OAAO;IAOlB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI9B,YAAY,IAAI,OAAO;IAIvB,YAAY,IAAI,OAAO;IAIvB,YAAY,IAAI,OAAO;IAIvB,kBAAkB,IAAI,OAAO;IAQ7B,cAAc,IAAI,OAAO;IAQzB,aAAa,IAAI,OAAO;IAQxB,aAAa,IAAI,MAAM,GAAG,IAAI;IAS9B,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAUtC,kBAAkB,IAAI,OAAO;IAI7B,oBAAoB,IAAI,OAAO;IAI/B,QAAQ,IAAI,IAAI;IAIhB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI3B,YAAY,IAAI,IAAI;IAIpB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO;IAOrC,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAIlD;AAED,eAAe,YAAY,CAAC"}
@@ -0,0 +1,15 @@
1
+ declare enum Symbol {
2
+ LEFT_PARENTHESIS = "(",
3
+ RIGHT_PARENTHESIS = ")",
4
+ COMMA = ",",
5
+ DOT = ".",
6
+ COLON = ":",
7
+ WHITESPACE = "",
8
+ OPENING_BRACE = "{",
9
+ CLOSING_BRACE = "}",
10
+ OPENING_BRACKET = "[",
11
+ CLOSING_BRACKET = "]",
12
+ BACKTICK = "`"
13
+ }
14
+ export default Symbol;
15
+ //# sourceMappingURL=symbol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"symbol.d.ts","sourceRoot":"","sources":["../../src/tokenization/symbol.ts"],"names":[],"mappings":"AAAA,aAAK,MAAM;IACP,gBAAgB,MAAM;IACtB,iBAAiB,MAAM;IACvB,KAAK,MAAM;IACX,GAAG,MAAM;IACT,KAAK,MAAM;IACX,UAAU,KAAK;IACf,aAAa,MAAM;IACnB,aAAa,MAAM;IACnB,eAAe,MAAM;IACrB,eAAe,MAAM;IACrB,QAAQ,MAAM;CACjB;AAED,eAAe,MAAM,CAAC"}
@@ -0,0 +1,176 @@
1
+ import TokenType from "./token_type";
2
+ import ASTNode from "../parsing/ast_node";
3
+ /**
4
+ * Represents a single token in the FlowQuery language.
5
+ *
6
+ * Tokens are the atomic units of lexical analysis, produced by the tokenizer
7
+ * and consumed by the parser. Each token has a type (keyword, operator, identifier, etc.)
8
+ * and an optional value.
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * const withToken = Token.WITH;
13
+ * const identToken = Token.IDENTIFIER("myVar");
14
+ * const numToken = Token.NUMBER("42");
15
+ * ```
16
+ */
17
+ declare class Token {
18
+ private _position;
19
+ private _type;
20
+ private _value;
21
+ private _case_sensitive_value;
22
+ private _can_be_identifier;
23
+ /**
24
+ * Creates a new Token instance.
25
+ *
26
+ * @param type - The type of the token
27
+ * @param value - The optional value associated with the token
28
+ */
29
+ constructor(type: TokenType, value?: string | null);
30
+ /**
31
+ * Checks if this token equals another token.
32
+ *
33
+ * @param other - The token to compare against
34
+ * @returns True if tokens are equal, false otherwise
35
+ */
36
+ equals(other: Token): boolean;
37
+ set position(position: number);
38
+ get position(): number;
39
+ get type(): TokenType;
40
+ get value(): string | null;
41
+ set case_sensitive_value(value: string);
42
+ get can_be_identifier(): boolean;
43
+ get node(): ASTNode;
44
+ toString(): string;
45
+ static COMMENT(comment: string): Token;
46
+ isComment(): boolean;
47
+ static IDENTIFIER(value: string): Token;
48
+ isIdentifier(): boolean;
49
+ static STRING(value: string, quoteChar?: string): Token;
50
+ isString(): boolean;
51
+ static BACKTICK_STRING(value: string, quoteChar?: string): Token;
52
+ static F_STRING(value: string, quoteChar?: string): Token;
53
+ isFString(): boolean;
54
+ static NUMBER(value: string): Token;
55
+ isNumber(): boolean;
56
+ static get LEFT_PARENTHESIS(): Token;
57
+ isLeftParenthesis(): boolean;
58
+ static get RIGHT_PARENTHESIS(): Token;
59
+ isRightParenthesis(): boolean;
60
+ static get COMMA(): Token;
61
+ isComma(): boolean;
62
+ static get DOT(): Token;
63
+ isDot(): boolean;
64
+ static get COLON(): Token;
65
+ isColon(): boolean;
66
+ static get OPENING_BRACE(): Token;
67
+ isOpeningBrace(): boolean;
68
+ static get CLOSING_BRACE(): Token;
69
+ isClosingBrace(): boolean;
70
+ static get OPENING_BRACKET(): Token;
71
+ isOpeningBracket(): boolean;
72
+ static get CLOSING_BRACKET(): Token;
73
+ isClosingBracket(): boolean;
74
+ static get WHITESPACE(): Token;
75
+ isWhitespace(): boolean;
76
+ isOperator(): boolean;
77
+ isUnaryOperator(): boolean;
78
+ static get ADD(): Token;
79
+ isAdd(): boolean;
80
+ static get SUBTRACT(): Token;
81
+ isSubtract(): boolean;
82
+ isNegation(): boolean;
83
+ static get MULTIPLY(): Token;
84
+ isMultiply(): boolean;
85
+ static get DIVIDE(): Token;
86
+ isDivide(): boolean;
87
+ static get EXPONENT(): Token;
88
+ isExponent(): boolean;
89
+ static get MODULO(): Token;
90
+ isModulo(): boolean;
91
+ static get EQUALS(): Token;
92
+ isEquals(): boolean;
93
+ static get NOT_EQUALS(): Token;
94
+ isNotEquals(): boolean;
95
+ static get LESS_THAN(): Token;
96
+ isLessThan(): boolean;
97
+ static get LESS_THAN_OR_EQUAL(): Token;
98
+ isLessThanOrEqual(): boolean;
99
+ static get GREATER_THAN(): Token;
100
+ isGreaterThan(): boolean;
101
+ static get GREATER_THAN_OR_EQUAL(): Token;
102
+ isGreaterThanOrEqual(): boolean;
103
+ static get AND(): Token;
104
+ isAnd(): boolean;
105
+ static get OR(): Token;
106
+ isOr(): boolean;
107
+ static get NOT(): Token;
108
+ isNot(): boolean;
109
+ static get IS(): Token;
110
+ isIs(): boolean;
111
+ isKeyword(): boolean;
112
+ static get WITH(): Token;
113
+ isWith(): boolean;
114
+ static get RETURN(): Token;
115
+ isReturn(): boolean;
116
+ static get LOAD(): Token;
117
+ isLoad(): boolean;
118
+ static get JSON(): Token;
119
+ isJSON(): boolean;
120
+ static get CSV(): Token;
121
+ isCSV(): boolean;
122
+ static get TEXT(): Token;
123
+ isText(): boolean;
124
+ static get FROM(): Token;
125
+ isFrom(): boolean;
126
+ static get HEADERS(): Token;
127
+ isHeaders(): boolean;
128
+ static get POST(): Token;
129
+ isPost(): boolean;
130
+ static get UNWIND(): Token;
131
+ isUnwind(): boolean;
132
+ static get MATCH(): Token;
133
+ isMatch(): boolean;
134
+ static get AS(): Token;
135
+ isAs(): boolean;
136
+ static get WHERE(): Token;
137
+ isWhere(): boolean;
138
+ static get MERGE(): Token;
139
+ isMerge(): boolean;
140
+ static get CREATE(): Token;
141
+ isCreate(): boolean;
142
+ static get DELETE(): Token;
143
+ isDelete(): boolean;
144
+ static get SET(): Token;
145
+ isSet(): boolean;
146
+ static get REMOVE(): Token;
147
+ isRemove(): boolean;
148
+ static get CASE(): Token;
149
+ isCase(): boolean;
150
+ static get WHEN(): Token;
151
+ isWhen(): boolean;
152
+ static get THEN(): Token;
153
+ isThen(): boolean;
154
+ static get ELSE(): Token;
155
+ isElse(): boolean;
156
+ static get END(): Token;
157
+ isEnd(): boolean;
158
+ static get NULL(): Token;
159
+ isNull(): boolean;
160
+ static get IN(): Token;
161
+ isIn(): boolean;
162
+ static get PIPE(): Token;
163
+ isPipe(): boolean;
164
+ static get DISTINCT(): Token;
165
+ isDistinct(): boolean;
166
+ static get LIMIT(): Token;
167
+ isLimit(): boolean;
168
+ static get EOF(): Token;
169
+ isEOF(): boolean;
170
+ isOperand(): boolean;
171
+ isWhitespaceOrComment(): boolean;
172
+ isSymbol(): boolean;
173
+ static method(name: string): Token | undefined;
174
+ }
175
+ export default Token;
176
+ //# sourceMappingURL=token.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../src/tokenization/token.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import Token from "./token";
2
+ /**
3
+ * Maps string values to tokens using a Trie for efficient lookup.
4
+ *
5
+ * Takes an enum of keywords, operators, or symbols and builds a trie
6
+ * for fast token matching during tokenization.
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * const mapper = new TokenMapper(Keyword);
11
+ * const token = mapper.map("WITH");
12
+ * ```
13
+ */
14
+ declare class TokenMapper {
15
+ private _enum;
16
+ private _trie;
17
+ /**
18
+ * Creates a TokenMapper from an enum of token values.
19
+ *
20
+ * @param _enum - An enum object containing token values
21
+ */
22
+ constructor(_enum: {
23
+ [key: string]: any;
24
+ });
25
+ /**
26
+ * Maps a string value to its corresponding token.
27
+ *
28
+ * @param value - The string value to map
29
+ * @returns The matched token, or undefined if no match found
30
+ */
31
+ map(value: string): Token | undefined;
32
+ /**
33
+ * Gets the last matched string from the most recent map operation.
34
+ *
35
+ * @returns The last found string, or null if no match
36
+ */
37
+ get last_found(): string | null;
38
+ }
39
+ export default TokenMapper;
40
+ //# sourceMappingURL=token_mapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token_mapper.d.ts","sourceRoot":"","sources":["../../src/tokenization/token_mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,SAAS,CAAC;AAG5B;;;;;;;;;;;GAWG;AACH,cAAM,WAAW;IAQD,OAAO,CAAC,KAAK;IAPzB,OAAO,CAAC,KAAK,CAAoB;IAEjC;;;;OAIG;gBACiB,KAAK,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE;IASjD;;;;;OAKG;IACI,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAI5C;;;;OAIG;IACH,IAAW,UAAU,IAAI,MAAM,GAAG,IAAI,CAErC;CACJ;AAED,eAAe,WAAW,CAAC"}
@@ -0,0 +1,16 @@
1
+ declare enum TokenType {
2
+ KEYWORD = "KEYWORD",
3
+ OPERATOR = "OPERATOR",
4
+ UNARY_OPERATOR = "UNARY_OPERATOR",
5
+ IDENTIFIER = "IDENTIFIER",
6
+ STRING = "STRING",
7
+ F_STRING = "F-STRING",
8
+ BACKTICK_STRING = "BACKTICK_STRING",
9
+ NUMBER = "NUMBER",
10
+ SYMBOL = "SYMBOL",
11
+ WHITESPACE = "WHITESPACE",
12
+ COMMENT = "COMMENT",
13
+ EOF = "EOF"
14
+ }
15
+ export default TokenType;
16
+ //# sourceMappingURL=token_type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token_type.d.ts","sourceRoot":"","sources":["../../src/tokenization/token_type.ts"],"names":[],"mappings":"AAAA,aAAK,SAAS;IACV,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,eAAe,oBAAoB;IACnC,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,OAAO,YAAY;IACnB,GAAG,QAAQ;CACd;AACD,eAAe,SAAS,CAAC"}
@@ -0,0 +1,45 @@
1
+ import Token from './token';
2
+ /**
3
+ * Tokenizes FlowQuery input strings into a sequence of tokens.
4
+ *
5
+ * The tokenizer performs lexical analysis, breaking down the input text into
6
+ * meaningful tokens such as keywords, identifiers, operators, strings, numbers,
7
+ * and symbols. It handles comments, whitespace, and f-strings.
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * const tokenizer = new Tokenizer("WITH x = 1 RETURN x");
12
+ * const tokens = tokenizer.tokenize();
13
+ * ```
14
+ */
15
+ declare class Tokenizer {
16
+ private walker;
17
+ private keywords;
18
+ private symbols;
19
+ private operators;
20
+ /**
21
+ * Creates a new Tokenizer instance for the given input.
22
+ *
23
+ * @param input - The FlowQuery input string to tokenize
24
+ */
25
+ constructor(input: string);
26
+ /**
27
+ * Tokenizes the input string into an array of tokens.
28
+ *
29
+ * @returns An array of Token objects representing the tokenized input
30
+ * @throws {Error} If an unrecognized token is encountered
31
+ */
32
+ tokenize(): Token[];
33
+ private getLastNonWhitespaceOrNonCommentToken;
34
+ private getNextToken;
35
+ comment(): Token | null;
36
+ private identifier;
37
+ private string;
38
+ private f_string;
39
+ private whitespace;
40
+ private number;
41
+ private lookup;
42
+ private skipMinus;
43
+ }
44
+ export default Tokenizer;
45
+ //# sourceMappingURL=tokenizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenizer.d.ts","sourceRoot":"","sources":["../../src/tokenization/tokenizer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,SAAS,CAAC;AAO5B;;;;;;;;;;;;GAYG;AACH,cAAM,SAAS;IACX,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,QAAQ,CAAyC;IACzD,OAAO,CAAC,OAAO,CAAwC;IACvD,OAAO,CAAC,SAAS,CAA0C;IAE3D;;;;OAIG;gBACS,KAAK,EAAE,MAAM;IAIzB;;;;;OAKG;IACI,QAAQ,IAAI,KAAK,EAAE;IAgB1B,OAAO,CAAC,qCAAqC;IAU7C,OAAO,CAAC,YAAY;IAgBb,OAAO,IAAI,KAAK,GAAG,IAAI;IAS9B,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,MAAM;IAwBd,OAAO,CAAE,QAAQ;IA6CjB,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,MAAM;IAiBd,OAAO,CAAC,MAAM;IAkBd,OAAO,CAAC,SAAS;CASpB;AAED,eAAe,SAAS,CAAC"}