flowquery 1.0.45 → 1.0.47

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 (418) hide show
  1. package/dist/flowquery.min.js +1 -1
  2. package/dist/index.d.ts +0 -7
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +6 -4
  5. package/dist/index.js.map +1 -1
  6. package/dist/parsing/operations/unwind.d.ts +1 -1
  7. package/dist/parsing/operations/unwind.d.ts.map +1 -1
  8. package/dist/parsing/operations/unwind.js +9 -5
  9. package/dist/parsing/operations/unwind.js.map +1 -1
  10. package/package.json +4 -1
  11. package/.editorconfig +0 -21
  12. package/.gitattributes +0 -3
  13. package/.github/workflows/npm-publish.yml +0 -32
  14. package/.github/workflows/python-publish.yml +0 -143
  15. package/.github/workflows/release.yml +0 -107
  16. package/.husky/pre-commit +0 -28
  17. package/.prettierrc +0 -22
  18. package/CODE_OF_CONDUCT.md +0 -10
  19. package/FlowQueryLogoIcon.png +0 -0
  20. package/SECURITY.md +0 -14
  21. package/SUPPORT.md +0 -13
  22. package/docs/flowquery.min.js +0 -1
  23. package/docs/index.html +0 -105
  24. package/flowquery-py/CONTRIBUTING.md +0 -127
  25. package/flowquery-py/README.md +0 -67
  26. package/flowquery-py/misc/data/test.json +0 -10
  27. package/flowquery-py/misc/data/users.json +0 -242
  28. package/flowquery-py/notebooks/TestFlowQuery.ipynb +0 -440
  29. package/flowquery-py/pyproject.toml +0 -121
  30. package/flowquery-py/setup_env.ps1 +0 -92
  31. package/flowquery-py/setup_env.sh +0 -87
  32. package/flowquery-py/src/__init__.py +0 -38
  33. package/flowquery-py/src/__main__.py +0 -10
  34. package/flowquery-py/src/compute/__init__.py +0 -6
  35. package/flowquery-py/src/compute/flowquery.py +0 -68
  36. package/flowquery-py/src/compute/runner.py +0 -64
  37. package/flowquery-py/src/extensibility.py +0 -52
  38. package/flowquery-py/src/graph/__init__.py +0 -31
  39. package/flowquery-py/src/graph/data.py +0 -136
  40. package/flowquery-py/src/graph/database.py +0 -141
  41. package/flowquery-py/src/graph/hops.py +0 -43
  42. package/flowquery-py/src/graph/node.py +0 -143
  43. package/flowquery-py/src/graph/node_data.py +0 -26
  44. package/flowquery-py/src/graph/node_reference.py +0 -50
  45. package/flowquery-py/src/graph/pattern.py +0 -115
  46. package/flowquery-py/src/graph/pattern_expression.py +0 -67
  47. package/flowquery-py/src/graph/patterns.py +0 -42
  48. package/flowquery-py/src/graph/physical_node.py +0 -41
  49. package/flowquery-py/src/graph/physical_relationship.py +0 -36
  50. package/flowquery-py/src/graph/relationship.py +0 -193
  51. package/flowquery-py/src/graph/relationship_data.py +0 -36
  52. package/flowquery-py/src/graph/relationship_match_collector.py +0 -85
  53. package/flowquery-py/src/graph/relationship_reference.py +0 -21
  54. package/flowquery-py/src/io/__init__.py +0 -5
  55. package/flowquery-py/src/io/command_line.py +0 -108
  56. package/flowquery-py/src/parsing/__init__.py +0 -17
  57. package/flowquery-py/src/parsing/alias.py +0 -20
  58. package/flowquery-py/src/parsing/alias_option.py +0 -11
  59. package/flowquery-py/src/parsing/ast_node.py +0 -147
  60. package/flowquery-py/src/parsing/base_parser.py +0 -84
  61. package/flowquery-py/src/parsing/components/__init__.py +0 -19
  62. package/flowquery-py/src/parsing/components/csv.py +0 -8
  63. package/flowquery-py/src/parsing/components/from_.py +0 -12
  64. package/flowquery-py/src/parsing/components/headers.py +0 -12
  65. package/flowquery-py/src/parsing/components/json.py +0 -8
  66. package/flowquery-py/src/parsing/components/null.py +0 -10
  67. package/flowquery-py/src/parsing/components/post.py +0 -8
  68. package/flowquery-py/src/parsing/components/text.py +0 -8
  69. package/flowquery-py/src/parsing/context.py +0 -50
  70. package/flowquery-py/src/parsing/data_structures/__init__.py +0 -15
  71. package/flowquery-py/src/parsing/data_structures/associative_array.py +0 -41
  72. package/flowquery-py/src/parsing/data_structures/json_array.py +0 -30
  73. package/flowquery-py/src/parsing/data_structures/key_value_pair.py +0 -38
  74. package/flowquery-py/src/parsing/data_structures/lookup.py +0 -51
  75. package/flowquery-py/src/parsing/data_structures/range_lookup.py +0 -42
  76. package/flowquery-py/src/parsing/expressions/__init__.py +0 -61
  77. package/flowquery-py/src/parsing/expressions/boolean.py +0 -20
  78. package/flowquery-py/src/parsing/expressions/expression.py +0 -141
  79. package/flowquery-py/src/parsing/expressions/expression_map.py +0 -26
  80. package/flowquery-py/src/parsing/expressions/f_string.py +0 -27
  81. package/flowquery-py/src/parsing/expressions/identifier.py +0 -21
  82. package/flowquery-py/src/parsing/expressions/number.py +0 -32
  83. package/flowquery-py/src/parsing/expressions/operator.py +0 -271
  84. package/flowquery-py/src/parsing/expressions/reference.py +0 -47
  85. package/flowquery-py/src/parsing/expressions/string.py +0 -27
  86. package/flowquery-py/src/parsing/functions/__init__.py +0 -127
  87. package/flowquery-py/src/parsing/functions/aggregate_function.py +0 -60
  88. package/flowquery-py/src/parsing/functions/async_function.py +0 -65
  89. package/flowquery-py/src/parsing/functions/avg.py +0 -55
  90. package/flowquery-py/src/parsing/functions/coalesce.py +0 -43
  91. package/flowquery-py/src/parsing/functions/collect.py +0 -75
  92. package/flowquery-py/src/parsing/functions/count.py +0 -79
  93. package/flowquery-py/src/parsing/functions/date_.py +0 -61
  94. package/flowquery-py/src/parsing/functions/datetime_.py +0 -62
  95. package/flowquery-py/src/parsing/functions/duration.py +0 -159
  96. package/flowquery-py/src/parsing/functions/element_id.py +0 -50
  97. package/flowquery-py/src/parsing/functions/function.py +0 -68
  98. package/flowquery-py/src/parsing/functions/function_factory.py +0 -170
  99. package/flowquery-py/src/parsing/functions/function_metadata.py +0 -148
  100. package/flowquery-py/src/parsing/functions/functions.py +0 -67
  101. package/flowquery-py/src/parsing/functions/head.py +0 -39
  102. package/flowquery-py/src/parsing/functions/id_.py +0 -49
  103. package/flowquery-py/src/parsing/functions/join.py +0 -49
  104. package/flowquery-py/src/parsing/functions/keys.py +0 -34
  105. package/flowquery-py/src/parsing/functions/last.py +0 -39
  106. package/flowquery-py/src/parsing/functions/localdatetime.py +0 -60
  107. package/flowquery-py/src/parsing/functions/localtime.py +0 -57
  108. package/flowquery-py/src/parsing/functions/max_.py +0 -49
  109. package/flowquery-py/src/parsing/functions/min_.py +0 -49
  110. package/flowquery-py/src/parsing/functions/nodes.py +0 -48
  111. package/flowquery-py/src/parsing/functions/predicate_function.py +0 -47
  112. package/flowquery-py/src/parsing/functions/predicate_sum.py +0 -49
  113. package/flowquery-py/src/parsing/functions/properties.py +0 -50
  114. package/flowquery-py/src/parsing/functions/rand.py +0 -28
  115. package/flowquery-py/src/parsing/functions/range_.py +0 -41
  116. package/flowquery-py/src/parsing/functions/reducer_element.py +0 -15
  117. package/flowquery-py/src/parsing/functions/relationships.py +0 -46
  118. package/flowquery-py/src/parsing/functions/replace.py +0 -39
  119. package/flowquery-py/src/parsing/functions/round_.py +0 -34
  120. package/flowquery-py/src/parsing/functions/schema.py +0 -40
  121. package/flowquery-py/src/parsing/functions/size.py +0 -34
  122. package/flowquery-py/src/parsing/functions/split.py +0 -54
  123. package/flowquery-py/src/parsing/functions/string_distance.py +0 -92
  124. package/flowquery-py/src/parsing/functions/stringify.py +0 -49
  125. package/flowquery-py/src/parsing/functions/substring.py +0 -76
  126. package/flowquery-py/src/parsing/functions/sum.py +0 -51
  127. package/flowquery-py/src/parsing/functions/tail.py +0 -37
  128. package/flowquery-py/src/parsing/functions/temporal_utils.py +0 -186
  129. package/flowquery-py/src/parsing/functions/time_.py +0 -57
  130. package/flowquery-py/src/parsing/functions/timestamp.py +0 -37
  131. package/flowquery-py/src/parsing/functions/to_float.py +0 -46
  132. package/flowquery-py/src/parsing/functions/to_integer.py +0 -46
  133. package/flowquery-py/src/parsing/functions/to_json.py +0 -35
  134. package/flowquery-py/src/parsing/functions/to_lower.py +0 -37
  135. package/flowquery-py/src/parsing/functions/to_string.py +0 -41
  136. package/flowquery-py/src/parsing/functions/trim.py +0 -37
  137. package/flowquery-py/src/parsing/functions/type_.py +0 -47
  138. package/flowquery-py/src/parsing/functions/value_holder.py +0 -24
  139. package/flowquery-py/src/parsing/logic/__init__.py +0 -15
  140. package/flowquery-py/src/parsing/logic/case.py +0 -28
  141. package/flowquery-py/src/parsing/logic/else_.py +0 -12
  142. package/flowquery-py/src/parsing/logic/end.py +0 -8
  143. package/flowquery-py/src/parsing/logic/then.py +0 -12
  144. package/flowquery-py/src/parsing/logic/when.py +0 -12
  145. package/flowquery-py/src/parsing/operations/__init__.py +0 -46
  146. package/flowquery-py/src/parsing/operations/aggregated_return.py +0 -25
  147. package/flowquery-py/src/parsing/operations/aggregated_with.py +0 -22
  148. package/flowquery-py/src/parsing/operations/call.py +0 -73
  149. package/flowquery-py/src/parsing/operations/create_node.py +0 -35
  150. package/flowquery-py/src/parsing/operations/create_relationship.py +0 -35
  151. package/flowquery-py/src/parsing/operations/delete_node.py +0 -29
  152. package/flowquery-py/src/parsing/operations/delete_relationship.py +0 -29
  153. package/flowquery-py/src/parsing/operations/group_by.py +0 -148
  154. package/flowquery-py/src/parsing/operations/limit.py +0 -33
  155. package/flowquery-py/src/parsing/operations/load.py +0 -148
  156. package/flowquery-py/src/parsing/operations/match.py +0 -52
  157. package/flowquery-py/src/parsing/operations/operation.py +0 -69
  158. package/flowquery-py/src/parsing/operations/order_by.py +0 -114
  159. package/flowquery-py/src/parsing/operations/projection.py +0 -21
  160. package/flowquery-py/src/parsing/operations/return_op.py +0 -88
  161. package/flowquery-py/src/parsing/operations/union.py +0 -115
  162. package/flowquery-py/src/parsing/operations/union_all.py +0 -17
  163. package/flowquery-py/src/parsing/operations/unwind.py +0 -38
  164. package/flowquery-py/src/parsing/operations/where.py +0 -43
  165. package/flowquery-py/src/parsing/operations/with_op.py +0 -18
  166. package/flowquery-py/src/parsing/parser.py +0 -1384
  167. package/flowquery-py/src/parsing/parser_state.py +0 -26
  168. package/flowquery-py/src/parsing/token_to_node.py +0 -109
  169. package/flowquery-py/src/tokenization/__init__.py +0 -23
  170. package/flowquery-py/src/tokenization/keyword.py +0 -54
  171. package/flowquery-py/src/tokenization/operator.py +0 -29
  172. package/flowquery-py/src/tokenization/string_walker.py +0 -158
  173. package/flowquery-py/src/tokenization/symbol.py +0 -19
  174. package/flowquery-py/src/tokenization/token.py +0 -693
  175. package/flowquery-py/src/tokenization/token_mapper.py +0 -53
  176. package/flowquery-py/src/tokenization/token_type.py +0 -21
  177. package/flowquery-py/src/tokenization/tokenizer.py +0 -214
  178. package/flowquery-py/src/tokenization/trie.py +0 -125
  179. package/flowquery-py/src/utils/__init__.py +0 -6
  180. package/flowquery-py/src/utils/object_utils.py +0 -20
  181. package/flowquery-py/src/utils/string_utils.py +0 -113
  182. package/flowquery-py/tests/__init__.py +0 -1
  183. package/flowquery-py/tests/compute/__init__.py +0 -1
  184. package/flowquery-py/tests/compute/test_runner.py +0 -4879
  185. package/flowquery-py/tests/graph/__init__.py +0 -1
  186. package/flowquery-py/tests/graph/test_create.py +0 -56
  187. package/flowquery-py/tests/graph/test_data.py +0 -73
  188. package/flowquery-py/tests/graph/test_match.py +0 -40
  189. package/flowquery-py/tests/parsing/__init__.py +0 -1
  190. package/flowquery-py/tests/parsing/test_context.py +0 -34
  191. package/flowquery-py/tests/parsing/test_expression.py +0 -248
  192. package/flowquery-py/tests/parsing/test_parser.py +0 -1237
  193. package/flowquery-py/tests/test_extensibility.py +0 -611
  194. package/flowquery-py/tests/tokenization/__init__.py +0 -1
  195. package/flowquery-py/tests/tokenization/test_token_mapper.py +0 -60
  196. package/flowquery-py/tests/tokenization/test_tokenizer.py +0 -198
  197. package/flowquery-py/tests/tokenization/test_trie.py +0 -30
  198. package/flowquery-vscode/.vscode-test.mjs +0 -5
  199. package/flowquery-vscode/.vscodeignore +0 -13
  200. package/flowquery-vscode/LICENSE +0 -21
  201. package/flowquery-vscode/README.md +0 -11
  202. package/flowquery-vscode/demo/FlowQueryVSCodeDemo.gif +0 -0
  203. package/flowquery-vscode/eslint.config.mjs +0 -25
  204. package/flowquery-vscode/extension.js +0 -508
  205. package/flowquery-vscode/flowQueryEngine/flowquery.min.js +0 -1
  206. package/flowquery-vscode/flowquery-worker.js +0 -66
  207. package/flowquery-vscode/images/FlowQueryLogoIcon.png +0 -0
  208. package/flowquery-vscode/jsconfig.json +0 -13
  209. package/flowquery-vscode/libs/page.css +0 -53
  210. package/flowquery-vscode/libs/table.css +0 -13
  211. package/flowquery-vscode/libs/tabs.css +0 -66
  212. package/flowquery-vscode/package-lock.json +0 -2917
  213. package/flowquery-vscode/package.json +0 -51
  214. package/flowquery-vscode/test/extension.test.js +0 -196
  215. package/flowquery-vscode/test/worker.test.js +0 -25
  216. package/flowquery-vscode/vsc-extension-quickstart.md +0 -42
  217. package/jest.config.js +0 -8
  218. package/misc/apps/RAG/README.md +0 -29
  219. package/misc/apps/RAG/data/chats.json +0 -302
  220. package/misc/apps/RAG/data/emails.json +0 -182
  221. package/misc/apps/RAG/data/events.json +0 -226
  222. package/misc/apps/RAG/data/files.json +0 -172
  223. package/misc/apps/RAG/data/users.json +0 -158
  224. package/misc/apps/RAG/jest.config.js +0 -21
  225. package/misc/apps/RAG/package.json +0 -48
  226. package/misc/apps/RAG/public/index.html +0 -18
  227. package/misc/apps/RAG/src/App.css +0 -42
  228. package/misc/apps/RAG/src/App.tsx +0 -50
  229. package/misc/apps/RAG/src/components/AdaptiveCardRenderer.css +0 -172
  230. package/misc/apps/RAG/src/components/AdaptiveCardRenderer.tsx +0 -380
  231. package/misc/apps/RAG/src/components/ApiKeySettings.tsx +0 -245
  232. package/misc/apps/RAG/src/components/ChatContainer.css +0 -67
  233. package/misc/apps/RAG/src/components/ChatContainer.tsx +0 -242
  234. package/misc/apps/RAG/src/components/ChatInput.css +0 -23
  235. package/misc/apps/RAG/src/components/ChatInput.tsx +0 -76
  236. package/misc/apps/RAG/src/components/ChatMessage.css +0 -160
  237. package/misc/apps/RAG/src/components/ChatMessage.tsx +0 -286
  238. package/misc/apps/RAG/src/components/FlowQueryAgent.ts +0 -708
  239. package/misc/apps/RAG/src/components/FlowQueryRunner.css +0 -113
  240. package/misc/apps/RAG/src/components/FlowQueryRunner.tsx +0 -371
  241. package/misc/apps/RAG/src/components/index.ts +0 -28
  242. package/misc/apps/RAG/src/graph/index.ts +0 -19
  243. package/misc/apps/RAG/src/graph/initializeGraph.ts +0 -254
  244. package/misc/apps/RAG/src/index.tsx +0 -29
  245. package/misc/apps/RAG/src/prompts/FlowQuerySystemPrompt.ts +0 -327
  246. package/misc/apps/RAG/src/prompts/index.ts +0 -10
  247. package/misc/apps/RAG/src/tests/graph.test.ts +0 -35
  248. package/misc/apps/RAG/src/utils/FlowQueryExecutor.ts +0 -130
  249. package/misc/apps/RAG/src/utils/FlowQueryExtractor.ts +0 -208
  250. package/misc/apps/RAG/src/utils/Llm.ts +0 -248
  251. package/misc/apps/RAG/src/utils/index.ts +0 -12
  252. package/misc/apps/RAG/tsconfig.json +0 -22
  253. package/misc/apps/RAG/webpack.config.js +0 -43
  254. package/misc/apps/README.md +0 -1
  255. package/misc/queries/analyze_catfacts.cql +0 -75
  256. package/misc/queries/azure_openai_completions.cql +0 -13
  257. package/misc/queries/azure_openai_models.cql +0 -9
  258. package/misc/queries/mock_pipeline.cql +0 -84
  259. package/misc/queries/openai_completions.cql +0 -15
  260. package/misc/queries/openai_models.cql +0 -13
  261. package/misc/queries/test.cql +0 -6
  262. package/misc/queries/tool_inference.cql +0 -24
  263. package/misc/queries/wisdom.cql +0 -6
  264. package/misc/queries/wisdom_letter_histogram.cql +0 -8
  265. package/src/compute/flowquery.ts +0 -46
  266. package/src/compute/runner.ts +0 -66
  267. package/src/extensibility.ts +0 -45
  268. package/src/graph/data.ts +0 -130
  269. package/src/graph/database.ts +0 -143
  270. package/src/graph/hops.ts +0 -22
  271. package/src/graph/node.ts +0 -122
  272. package/src/graph/node_data.ts +0 -18
  273. package/src/graph/node_reference.ts +0 -38
  274. package/src/graph/pattern.ts +0 -110
  275. package/src/graph/pattern_expression.ts +0 -48
  276. package/src/graph/patterns.ts +0 -36
  277. package/src/graph/physical_node.ts +0 -23
  278. package/src/graph/physical_relationship.ts +0 -23
  279. package/src/graph/relationship.ts +0 -167
  280. package/src/graph/relationship_data.ts +0 -31
  281. package/src/graph/relationship_match_collector.ts +0 -64
  282. package/src/graph/relationship_reference.ts +0 -25
  283. package/src/index.browser.ts +0 -46
  284. package/src/index.node.ts +0 -55
  285. package/src/index.ts +0 -12
  286. package/src/io/command_line.ts +0 -74
  287. package/src/parsing/alias.ts +0 -23
  288. package/src/parsing/alias_option.ts +0 -5
  289. package/src/parsing/ast_node.ts +0 -153
  290. package/src/parsing/base_parser.ts +0 -98
  291. package/src/parsing/components/csv.ts +0 -9
  292. package/src/parsing/components/from.ts +0 -12
  293. package/src/parsing/components/headers.ts +0 -12
  294. package/src/parsing/components/json.ts +0 -9
  295. package/src/parsing/components/null.ts +0 -9
  296. package/src/parsing/components/post.ts +0 -9
  297. package/src/parsing/components/text.ts +0 -9
  298. package/src/parsing/context.ts +0 -54
  299. package/src/parsing/data_structures/associative_array.ts +0 -43
  300. package/src/parsing/data_structures/json_array.ts +0 -31
  301. package/src/parsing/data_structures/key_value_pair.ts +0 -37
  302. package/src/parsing/data_structures/lookup.ts +0 -44
  303. package/src/parsing/data_structures/range_lookup.ts +0 -36
  304. package/src/parsing/expressions/boolean.ts +0 -21
  305. package/src/parsing/expressions/expression.ts +0 -150
  306. package/src/parsing/expressions/expression_map.ts +0 -22
  307. package/src/parsing/expressions/f_string.ts +0 -26
  308. package/src/parsing/expressions/identifier.ts +0 -22
  309. package/src/parsing/expressions/number.ts +0 -40
  310. package/src/parsing/expressions/operator.ts +0 -354
  311. package/src/parsing/expressions/reference.ts +0 -45
  312. package/src/parsing/expressions/string.ts +0 -34
  313. package/src/parsing/functions/aggregate_function.ts +0 -58
  314. package/src/parsing/functions/async_function.ts +0 -64
  315. package/src/parsing/functions/avg.ts +0 -47
  316. package/src/parsing/functions/coalesce.ts +0 -49
  317. package/src/parsing/functions/collect.ts +0 -54
  318. package/src/parsing/functions/count.ts +0 -54
  319. package/src/parsing/functions/date.ts +0 -63
  320. package/src/parsing/functions/datetime.ts +0 -63
  321. package/src/parsing/functions/duration.ts +0 -143
  322. package/src/parsing/functions/element_id.ts +0 -51
  323. package/src/parsing/functions/function.ts +0 -60
  324. package/src/parsing/functions/function_factory.ts +0 -195
  325. package/src/parsing/functions/function_metadata.ts +0 -217
  326. package/src/parsing/functions/functions.ts +0 -70
  327. package/src/parsing/functions/head.ts +0 -42
  328. package/src/parsing/functions/id.ts +0 -51
  329. package/src/parsing/functions/join.ts +0 -40
  330. package/src/parsing/functions/keys.ts +0 -29
  331. package/src/parsing/functions/last.ts +0 -42
  332. package/src/parsing/functions/localdatetime.ts +0 -63
  333. package/src/parsing/functions/localtime.ts +0 -58
  334. package/src/parsing/functions/max.ts +0 -37
  335. package/src/parsing/functions/min.ts +0 -37
  336. package/src/parsing/functions/nodes.ts +0 -54
  337. package/src/parsing/functions/predicate_function.ts +0 -48
  338. package/src/parsing/functions/predicate_sum.ts +0 -47
  339. package/src/parsing/functions/properties.ts +0 -56
  340. package/src/parsing/functions/rand.ts +0 -21
  341. package/src/parsing/functions/range.ts +0 -37
  342. package/src/parsing/functions/reducer_element.ts +0 -10
  343. package/src/parsing/functions/relationships.ts +0 -52
  344. package/src/parsing/functions/replace.ts +0 -38
  345. package/src/parsing/functions/round.ts +0 -28
  346. package/src/parsing/functions/schema.ts +0 -39
  347. package/src/parsing/functions/size.ts +0 -28
  348. package/src/parsing/functions/split.ts +0 -45
  349. package/src/parsing/functions/string_distance.ts +0 -83
  350. package/src/parsing/functions/stringify.ts +0 -37
  351. package/src/parsing/functions/substring.ts +0 -68
  352. package/src/parsing/functions/sum.ts +0 -41
  353. package/src/parsing/functions/tail.ts +0 -39
  354. package/src/parsing/functions/temporal_utils.ts +0 -180
  355. package/src/parsing/functions/time.ts +0 -58
  356. package/src/parsing/functions/timestamp.ts +0 -37
  357. package/src/parsing/functions/to_float.ts +0 -50
  358. package/src/parsing/functions/to_integer.ts +0 -50
  359. package/src/parsing/functions/to_json.ts +0 -28
  360. package/src/parsing/functions/to_lower.ts +0 -28
  361. package/src/parsing/functions/to_string.ts +0 -32
  362. package/src/parsing/functions/trim.ts +0 -28
  363. package/src/parsing/functions/type.ts +0 -39
  364. package/src/parsing/functions/value_holder.ts +0 -13
  365. package/src/parsing/logic/case.ts +0 -26
  366. package/src/parsing/logic/else.ts +0 -12
  367. package/src/parsing/logic/end.ts +0 -9
  368. package/src/parsing/logic/then.ts +0 -12
  369. package/src/parsing/logic/when.ts +0 -12
  370. package/src/parsing/operations/aggregated_return.ts +0 -22
  371. package/src/parsing/operations/aggregated_with.ts +0 -18
  372. package/src/parsing/operations/call.ts +0 -69
  373. package/src/parsing/operations/create_node.ts +0 -39
  374. package/src/parsing/operations/create_relationship.ts +0 -38
  375. package/src/parsing/operations/delete_node.ts +0 -33
  376. package/src/parsing/operations/delete_relationship.ts +0 -32
  377. package/src/parsing/operations/group_by.ts +0 -137
  378. package/src/parsing/operations/limit.ts +0 -31
  379. package/src/parsing/operations/load.ts +0 -146
  380. package/src/parsing/operations/match.ts +0 -54
  381. package/src/parsing/operations/operation.ts +0 -69
  382. package/src/parsing/operations/order_by.ts +0 -126
  383. package/src/parsing/operations/projection.ts +0 -18
  384. package/src/parsing/operations/return.ts +0 -76
  385. package/src/parsing/operations/union.ts +0 -114
  386. package/src/parsing/operations/union_all.ts +0 -16
  387. package/src/parsing/operations/unwind.ts +0 -32
  388. package/src/parsing/operations/where.ts +0 -42
  389. package/src/parsing/operations/with.ts +0 -20
  390. package/src/parsing/parser.ts +0 -1641
  391. package/src/parsing/parser_state.ts +0 -25
  392. package/src/parsing/token_to_node.ts +0 -114
  393. package/src/tokenization/keyword.ts +0 -50
  394. package/src/tokenization/operator.ts +0 -25
  395. package/src/tokenization/string_walker.ts +0 -197
  396. package/src/tokenization/symbol.ts +0 -15
  397. package/src/tokenization/token.ts +0 -764
  398. package/src/tokenization/token_mapper.ts +0 -53
  399. package/src/tokenization/token_type.ts +0 -16
  400. package/src/tokenization/tokenizer.ts +0 -250
  401. package/src/tokenization/trie.ts +0 -117
  402. package/src/utils/object_utils.ts +0 -17
  403. package/src/utils/string_utils.ts +0 -114
  404. package/tests/compute/runner.test.ts +0 -4538
  405. package/tests/extensibility.test.ts +0 -643
  406. package/tests/graph/create.test.ts +0 -36
  407. package/tests/graph/data.test.ts +0 -58
  408. package/tests/graph/match.test.ts +0 -29
  409. package/tests/parsing/context.test.ts +0 -27
  410. package/tests/parsing/expression.test.ts +0 -303
  411. package/tests/parsing/parser.test.ts +0 -1327
  412. package/tests/tokenization/token_mapper.test.ts +0 -47
  413. package/tests/tokenization/tokenizer.test.ts +0 -191
  414. package/tests/tokenization/trie.test.ts +0 -20
  415. package/tsconfig.json +0 -18
  416. package/typedoc.json +0 -16
  417. package/vscode-settings.json.recommended +0 -16
  418. package/webpack.config.js +0 -26
@@ -1,47 +0,0 @@
1
- import TokenMapper from "../../src/tokenization/token_mapper";
2
- import Symbol from "../../src/tokenization/symbol";
3
- import Keyword from "../../src/tokenization/keyword";
4
- import Operator from "../../src/tokenization/operator";
5
-
6
- test('mapper with Symbols', () => {
7
- const mapper = new TokenMapper(Symbol);
8
- expect(mapper.map(Symbol.LEFT_PARENTHESIS)).toBeDefined();
9
- expect(mapper.map(Symbol.RIGHT_PARENTHESIS)).toBeDefined();
10
- expect(mapper.map(Symbol.COMMA)).toBeDefined();
11
- expect(mapper.map(Symbol.DOT)).toBeDefined();
12
- expect(mapper.map(Symbol.COLON)).toBeDefined();
13
-
14
- expect(mapper.map(Operator.ADD)).toBeUndefined();
15
- });
16
-
17
- test('mapper with Keywords', () => {
18
- const mapper = new TokenMapper(Keyword);
19
- expect(mapper.map(Keyword.MATCH)).toBeDefined();
20
- expect(mapper.map(Keyword.RETURN)).toBeDefined();
21
- expect(mapper.map(Keyword.WHERE)).toBeDefined();
22
-
23
- expect(mapper.map('not_a_keyword')).toBeUndefined();
24
- });
25
-
26
- test('mapper with Operators', () => {
27
- const mapper = new TokenMapper(Operator);
28
- expect(mapper.map(Operator.GREATER_THAN_OR_EQUAL)).toBeDefined();
29
- expect(mapper.map(Operator.ADD.valueOf())).toBeDefined();
30
- expect(mapper.map(Operator.SUBTRACT)).toBeDefined();
31
- expect(mapper.map(Operator.NOT)).toBeDefined();
32
- expect(mapper.map(Operator.EQUALS)).toBeDefined();
33
- expect(mapper.map(Operator.NOT_EQUALS)).toBeDefined();
34
- expect(mapper.map(Operator.LESS_THAN)).toBeDefined();
35
- expect(mapper.map(Operator.LESS_THAN_OR_EQUAL)).toBeDefined();
36
-
37
- expect(mapper.map(Operator.GREATER_THAN_OR_EQUAL + "1")).toBeDefined();
38
-
39
- expect(mapper.map('i_s_n_o_t_an_operator')).toBeUndefined();
40
- });
41
-
42
- test('mapper with mixed types', () => {
43
- const mapper = new TokenMapper(Symbol);
44
- expect(mapper.map(Symbol.LEFT_PARENTHESIS)).toBeDefined();
45
- expect(mapper.map(Symbol.RIGHT_PARENTHESIS)).toBeDefined();
46
- expect(mapper.map(Symbol.COMMA)).toBeDefined();
47
- });
@@ -1,191 +0,0 @@
1
- import Tokenizer from "../../src/tokenization/tokenizer";
2
-
3
- test("Tokenizer.tokenize() should return an array of tokens", () => {
4
- const tokenizer = new Tokenizer("MATCH (n:Person) RETURN n");
5
- const tokens = tokenizer.tokenize();
6
- expect(tokens).toBeDefined();
7
- expect(tokens.length).toBeGreaterThan(0);
8
- });
9
-
10
- test("Tokenizer.tokenize() should handle escaped quotes", () => {
11
- const tokenizer = new Tokenizer('return "hello \\"world"');
12
- const tokens = tokenizer.tokenize();
13
- expect(tokens).toBeDefined();
14
- expect(tokens.length).toBeGreaterThan(0);
15
- });
16
-
17
- test("Test predicate function", () => {
18
- const tokenizer = new Tokenizer("RETURN sum(n in [1, 2, 3] | n where n > 1)");
19
- const tokens = tokenizer.tokenize();
20
- expect(tokens).toBeDefined();
21
- expect(tokens.length).toBeGreaterThan(0);
22
- });
23
-
24
- test("Test f-string", () => {
25
- const tokenizer = new Tokenizer('RETURN f"hello {world}"');
26
- const tokens = tokenizer.tokenize();
27
- expect(tokens).toBeDefined();
28
- expect(tokens.length).toBeGreaterThan(0);
29
- });
30
-
31
- test("Test another f-string", () => {
32
- const tokenizer = new Tokenizer("RETURN f`Value is: {value}`");
33
- const tokens = tokenizer.tokenize();
34
- expect(tokens).toBeDefined();
35
- expect(tokens.length).toBeGreaterThan(0);
36
- });
37
-
38
- test("Test", () => {
39
- const tokenizer = new Tokenizer("WITH 1 AS n RETURN n");
40
- const tokens = tokenizer.tokenize();
41
- expect(tokens).toBeDefined();
42
- expect(tokens.length).toBeGreaterThan(0);
43
- });
44
-
45
- test("Test associative array with backtick string", () => {
46
- const tokenizer = new Tokenizer("RETURN {`key`: `value`}");
47
- const tokens = tokenizer.tokenize();
48
- expect(tokens).toBeDefined();
49
- expect(tokens.length).toBeGreaterThan(0);
50
- });
51
-
52
- test("Test limit", () => {
53
- const tokenizer = new Tokenizer("unwind range(1, 10) as n limit 5 return n");
54
- const tokens = tokenizer.tokenize();
55
- expect(tokens).toBeDefined();
56
- expect(tokens.length).toBeGreaterThan(0);
57
- });
58
-
59
- test("Test return -2", () => {
60
- const tokenizer = new Tokenizer("return [:-2], -2");
61
- const tokens = tokenizer.tokenize();
62
- expect(tokens).toBeDefined();
63
- expect(tokens.length).toBeGreaterThan(0);
64
- });
65
-
66
- test("Test range with function", () => {
67
- const tokenizer = new Tokenizer(`
68
- with range(1,10) as data
69
- return range(0, size(data)-1) as indices
70
- `);
71
- const tokens = tokenizer.tokenize();
72
- expect(tokens).toBeDefined();
73
- expect(tokens.length).toBeGreaterThan(0);
74
- });
75
-
76
- test("Test create virtual node", () => {
77
- const tokenizer = new Tokenizer(`
78
- CREATE VIRTUAL (:Person) AS {
79
- call users() YIELD id, name
80
- }
81
- `);
82
- const tokens = tokenizer.tokenize();
83
- expect(tokens).toBeDefined();
84
- expect(tokens.length).toBeGreaterThan(0);
85
- });
86
-
87
- test("Test create virtual relationship", () => {
88
- const tokenizer = new Tokenizer(`
89
- CREATE VIRTUAL (:Person)-[:KNOWS]->(:Person) AS {
90
- call friendships() YIELD user1_id, user2_id
91
- }
92
- `);
93
- const tokens = tokenizer.tokenize();
94
- expect(tokens).toBeDefined();
95
- expect(tokens.length).toBeGreaterThan(0);
96
- });
97
-
98
- test("Match based on virtual node", () => {
99
- const tokenizer = new Tokenizer(`
100
- MATCH (a:Person)
101
- RETURN a.name
102
- `);
103
- const tokens = tokenizer.tokenize();
104
- expect(tokens).toBeDefined();
105
- expect(tokens.length).toBeGreaterThan(0);
106
- });
107
-
108
- test("Match based on virtual nodes and relationships", () => {
109
- const tokenizer = new Tokenizer(`
110
- MATCH (a:Person)-[r:KNOWS]->(b:Person)
111
- RETURN a.name, b.name
112
- `);
113
- const tokens = tokenizer.tokenize();
114
- expect(tokens).toBeDefined();
115
- expect(tokens.length).toBeGreaterThan(0);
116
- });
117
-
118
- test("Test not equal operator", () => {
119
- const tokenizer = new Tokenizer(`
120
- MATCH (n:Person)
121
- WHERE n.age <> 30
122
- RETURN n.name AS name, n.age AS age
123
- `);
124
- const tokens = tokenizer.tokenize();
125
- expect(tokens).toBeDefined();
126
- expect(tokens.length).toBeGreaterThan(0);
127
- });
128
-
129
- test("Test equal operator", () => {
130
- const tokenizer = new Tokenizer(`
131
- MATCH (n:Person)
132
- WHERE n.age = 30
133
- RETURN n.name AS name, n.age AS age
134
- `);
135
- const tokens = tokenizer.tokenize();
136
- expect(tokens).toBeDefined();
137
- expect(tokens.length).toBeGreaterThan(0);
138
- });
139
-
140
- test("Test boolean operators", () => {
141
- const tokenizer = new Tokenizer(`
142
- return true AND false OR true NOT false
143
- `);
144
- const tokens = tokenizer.tokenize();
145
- expect(tokens).toBeDefined();
146
- expect(tokens.length).toBeGreaterThan(0);
147
- });
148
-
149
- test("Test relationship with hops", () => {
150
- const tokenizer = new Tokenizer(`
151
- MATCH (a:Person)-[r:KNOWS*1..3]->(b:Person)
152
- RETURN a.name, b.name
153
- `);
154
- const tokens = tokenizer.tokenize();
155
- expect(tokens).toBeDefined();
156
- expect(tokens.length).toBeGreaterThan(0);
157
- });
158
-
159
- test("Test reserved keywords as identifiers", () => {
160
- const tokenizer = new Tokenizer(`
161
- WITH 1 AS return
162
- RETURN return
163
- `);
164
- const tokens = tokenizer.tokenize();
165
- expect(tokens).toBeDefined();
166
- expect(tokens.length).toBeGreaterThan(0);
167
- });
168
-
169
- test("Test reserved keywords as part of identifiers", () => {
170
- const tokenizer = new Tokenizer(`
171
- unwind [
172
- {from: "Alice", to: "Bob", organizer: "Charlie"},
173
- {from: "Bob", to: "Charlie", organizer: "Alice"},
174
- {from: "Charlie", to: "Alice", organizer: "Bob"}
175
- ] as data
176
- return data.from, data.to
177
- `);
178
- const tokens = tokenizer.tokenize();
179
- expect(tokens).toBeDefined();
180
- expect(tokens.length).toBeGreaterThan(0);
181
- });
182
-
183
- test("Test reserved keywords as relationship types and labels", () => {
184
- const tokenizer = new Tokenizer(`
185
- MATCH (a:RETURN)-[r:WITH]->(b:RETURN)
186
- RETURN a, b
187
- `);
188
- const tokens = tokenizer.tokenize();
189
- expect(tokens).toBeDefined();
190
- expect(tokens.length).toBeGreaterThan(0);
191
- });
@@ -1,20 +0,0 @@
1
- import Token from "../../src/tokenization/token";
2
- import Keyword from "../../src/tokenization/keyword";
3
- import Trie from "../../src/tokenization/trie";
4
-
5
- test('Trie', () => {
6
- let trie = new Trie();
7
- for(const key of Object.keys(Keyword)) {
8
- const token: Token | undefined = Token.method(key);
9
- if(token !== undefined && token.value !== null) {
10
- trie.insert(token);
11
- expect(trie.find(key)).toBeDefined();
12
- }
13
- }
14
- expect(trie.find('not_a_keyword')).toBeUndefined();
15
- expect(trie.find('not_a_operator')).toBeUndefined();
16
- expect(trie.find('not_a_keyword_or_operator')).toBeUndefined();
17
- expect(trie.find('')).toBeUndefined();
18
- expect(trie.find(' ')).toBeUndefined();
19
- expect(trie.find('a')).toBeUndefined();
20
- });
package/tsconfig.json DELETED
@@ -1,18 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- /* Visit https://aka.ms/tsconfig to read more about this file */
4
- "outDir": "./dist",
5
- "rootDir": "./src", // Optional, but recommended to specify the root directory
6
- "target": "es2016", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */ /* Modules */
7
- "experimentalDecorators": true, /* Enable experimental support for decorators. */
8
- "module": "commonjs", /* Specify what module code is generated. */
9
- "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */
10
- "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */
11
- "strict": true,
12
- "types": ["node", "jest"],
13
- "sourceMap": true,
14
- "declaration": true, /* Generate .d.ts declaration files. */
15
- "declarationMap": true /* Generate sourcemaps for .d.ts files. */
16
- },
17
- "include": ["src"]
18
- }
package/typedoc.json DELETED
@@ -1,16 +0,0 @@
1
- {
2
- "entryPoints": ["src/index.ts"],
3
- "out": "docs/api",
4
- "exclude": ["**/node_modules/**", "**/*.test.ts"],
5
- "excludePrivate": true,
6
- "excludeProtected": false,
7
- "excludeExternals": true,
8
- "readme": "README.md",
9
- "name": "FlowQuery API Documentation",
10
- "includeVersion": true,
11
- "disableSources": false,
12
- "navigation": {
13
- "includeCategories": true,
14
- "includeGroups": true
15
- }
16
- }
@@ -1,16 +0,0 @@
1
- {
2
- // Recommended VS Code settings for FlowQuery development
3
- // Copy this file to .vscode/settings.json to enable format-on-save
4
-
5
- "editor.formatOnSave": true,
6
- "editor.defaultFormatter": "esbenp.prettier-vscode",
7
- "[typescript]": {
8
- "editor.defaultFormatter": "esbenp.prettier-vscode"
9
- },
10
- "[javascript]": {
11
- "editor.defaultFormatter": "esbenp.prettier-vscode"
12
- },
13
- "[json]": {
14
- "editor.defaultFormatter": "esbenp.prettier-vscode"
15
- }
16
- }
package/webpack.config.js DELETED
@@ -1,26 +0,0 @@
1
- const path = require('path');
2
-
3
- module.exports = {
4
- entry: './src/index.browser.ts', // Use your entry point here
5
- output: {
6
- filename: 'flowquery.min.js', // The output file for the browser
7
- path: path.resolve(__dirname, 'dist'),
8
- library: 'FlowQuery', // Expose your module as a global variable
9
- libraryTarget: 'umd', // Ensure compatibility with various module systems
10
- libraryExport: 'default', // Export only the default export
11
- },
12
- resolve: {
13
- extensions: ['.ts', '.js'],
14
- },
15
- module: {
16
- rules: [
17
- {
18
- test: /\.ts$/,
19
- use: 'ts-loader',
20
- exclude: /node_modules/,
21
- },
22
- ],
23
- },
24
- mode: 'production', // Use 'development' for unminified output
25
- target: 'web', // Ensure the build is targeted for browsers
26
- };