@xano/xanoscript-language-server 11.12.1 → 11.12.3

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 (339) hide show
  1. package/lexer/tokens.js +22 -3
  2. package/package.json +25 -1
  3. package/.claude/memory/feedback_no_git.md +0 -11
  4. package/.claude/settings.local.json +0 -21
  5. package/.github/copilot-instructions.md +0 -190
  6. package/.github/workflows/ci.yml +0 -31
  7. package/.husky/pre-commit +0 -1
  8. package/CLAUDE.md +0 -256
  9. package/eslint.config.js +0 -24
  10. package/lexer/comment.spec.js +0 -77
  11. package/lexer/multiline.spec.js +0 -179
  12. package/lexer/tests/query/query_lexer.spec.js +0 -36
  13. package/lexer/tests/query/valid_sources/basic_query.xs +0 -44
  14. package/lexer/tests/query/valid_sources/db_query.xs +0 -77
  15. package/lexer/tests/query/valid_sources/empty_query.xs +0 -5
  16. package/lexer/tests/query/valid_sources/header_query.xs +0 -15
  17. package/lexer/tests/table/basic_table.xs +0 -17
  18. package/lexer/tests/table/empty_table.xs +0 -3
  19. package/lexer/tests/table/table_lexer.spec.js +0 -324
  20. package/lexer/utils.spec.js +0 -61
  21. package/onCompletion/contentAssist.spec.js +0 -275
  22. package/onDefinition/onDefinition.spec.js +0 -313
  23. package/onHover/FilterMessageProvider.spec.js +0 -85
  24. package/onHover/FunctionMessageProvider.spec.js +0 -128
  25. package/onHover/InputFilterMessageProvider.spec.js +0 -329
  26. package/onHover/QueryFilterMessageProvider.spec.js +0 -164
  27. package/onHover/onHoverDocument.spec.js +0 -660
  28. package/parser/addon_parser.spec.js +0 -88
  29. package/parser/agent_parser.spec.js +0 -599
  30. package/parser/agent_trigger_parser.spec.js +0 -525
  31. package/parser/api_group_parser.spec.js +0 -137
  32. package/parser/attributes/columnDefaultValueAttribute.spec.js +0 -49
  33. package/parser/attributes/descriptionFieldAttribute.spec.js +0 -39
  34. package/parser/attributes/disabledFieldAttribute.spec.js +0 -34
  35. package/parser/attributes/docsFieldAttribute.spec.js +0 -44
  36. package/parser/attributes/guidFieldAttribute.spec.js +0 -93
  37. package/parser/attributes/inputFilterFn.spec.js +0 -39
  38. package/parser/attributes/sensitiveFieldAttribute.spec.js +0 -39
  39. package/parser/attributes/valueFieldAttribute.spec.js +0 -54
  40. package/parser/attributes/valuesFieldAttribute.spec.js +0 -44
  41. package/parser/attributes/visibilityFieldAttribute.spec.js +0 -44
  42. package/parser/branch_parser.spec.js +0 -34
  43. package/parser/clauses/agentClause.spec.js +0 -34
  44. package/parser/clauses/authClause.spec.js +0 -39
  45. package/parser/clauses/cacheClause.spec.js +0 -103
  46. package/parser/clauses/canonicalClause.spec.js +0 -34
  47. package/parser/clauses/channelClause.spec.js +0 -34
  48. package/parser/clauses/dbTableClause.spec.js +0 -34
  49. package/parser/clauses/historyClause.spec.js +0 -53
  50. package/parser/clauses/indexClause.spec.js +0 -47
  51. package/parser/clauses/inputClause.spec.js +0 -96
  52. package/parser/clauses/mcpServerClause.spec.js +0 -34
  53. package/parser/clauses/middlewareClause.spec.js +0 -161
  54. package/parser/clauses/nakedStackFn.spec.js +0 -73
  55. package/parser/clauses/responseClause.spec.js +0 -47
  56. package/parser/clauses/scheduleClause.spec.js +0 -71
  57. package/parser/clauses/schemaClause.spec.js +0 -102
  58. package/parser/clauses/testClause.spec.js +0 -69
  59. package/parser/clauses/viewClause.spec.js +0 -163
  60. package/parser/definitions/arraySlice.spec.js +0 -49
  61. package/parser/definitions/columnDefinition.spec.js +0 -199
  62. package/parser/definitions/dbLinkColumnDefinition.spec.js +0 -45
  63. package/parser/definitions/enumColumnDefinition.spec.js +0 -108
  64. package/parser/definitions/filterDefinition.spec.js +0 -43
  65. package/parser/definitions/objectColumnDefinition.spec.js +0 -118
  66. package/parser/function_parser.spec.js +0 -131
  67. package/parser/functions/actionCallFn.spec.js +0 -51
  68. package/parser/functions/addonCallFn.spec.js +0 -41
  69. package/parser/functions/ai/aiAgentRunFn.spec.js +0 -94
  70. package/parser/functions/ai/aiExternalMcpServerDetailsFn.spec.js +0 -85
  71. package/parser/functions/ai/aiExternalMcpToolListFn.spec.js +0 -85
  72. package/parser/functions/ai/aiExternalMcpToolRunFn.spec.js +0 -101
  73. package/parser/functions/aiFn.spec.js +0 -51
  74. package/parser/functions/api/apiCallFn.spec.js +0 -62
  75. package/parser/functions/api/apiLambdaFn.spec.js +0 -63
  76. package/parser/functions/api/apiRealtimeEventFn.spec.js +0 -82
  77. package/parser/functions/api/apiRequestFn.spec.js +0 -113
  78. package/parser/functions/api/apiStreamFn.spec.js +0 -44
  79. package/parser/functions/api/webflowRequestFn.spec.js +0 -114
  80. package/parser/functions/array/arrayDifferenceFn.spec.js +0 -34
  81. package/parser/functions/array/arrayFindFn.spec.js +0 -44
  82. package/parser/functions/array/arrayGroupByFn.spec.js +0 -41
  83. package/parser/functions/array/arrayIntersectionFn.spec.js +0 -22
  84. package/parser/functions/array/arrayMapFn.spec.js +0 -37
  85. package/parser/functions/array/arrayNoValueAs.spec.js +0 -56
  86. package/parser/functions/array/arrayPartitionFn.spec.js +0 -29
  87. package/parser/functions/array/arrayUnionFn.spec.js +0 -22
  88. package/parser/functions/array/arrayValueIfAs.spec.js +0 -54
  89. package/parser/functions/array/arrayValueOnly.spec.js +0 -61
  90. package/parser/functions/array/valueAttrOnly.spec.js +0 -61
  91. package/parser/functions/cloud/cloudAlgoliaRequestFn.spec.js +0 -30
  92. package/parser/functions/cloud/cloudAwsS3Fn.spec.js +0 -21
  93. package/parser/functions/cloud/cloudDeleteFileFn.spec.js +0 -25
  94. package/parser/functions/cloud/cloudGetFileInfoFn.spec.js +0 -25
  95. package/parser/functions/cloud/cloudListDirectoryFn.spec.js +0 -26
  96. package/parser/functions/cloud/cloudReadFileFn.spec.js +0 -25
  97. package/parser/functions/cloud/cloudSearchDocumentFn.spec.js +0 -28
  98. package/parser/functions/cloud/cloudSearchQueryFn.spec.js +0 -32
  99. package/parser/functions/cloud/cloudSearchRequestFn.spec.js +0 -32
  100. package/parser/functions/cloud/cloudSignUrlFn.spec.js +0 -26
  101. package/parser/functions/cloud/cloudStorageFn.spec.js +0 -21
  102. package/parser/functions/cloud/cloudUploadFileFn.spec.js +0 -29
  103. package/parser/functions/controls/awaitFn.spec.js +0 -48
  104. package/parser/functions/controls/conditionalFn.spec.js +0 -188
  105. package/parser/functions/controls/forEachFn.spec.js +0 -109
  106. package/parser/functions/controls/forFn.spec.js +0 -85
  107. package/parser/functions/controls/functionRunFn.spec.js +0 -77
  108. package/parser/functions/controls/groupFn.spec.js +0 -63
  109. package/parser/functions/controls/preconditionFn.spec.js +0 -107
  110. package/parser/functions/controls/returnFn.spec.js +0 -44
  111. package/parser/functions/controls/switchFn.spec.js +0 -118
  112. package/parser/functions/controls/throwFn.spec.js +0 -56
  113. package/parser/functions/controls/tryCatchFn.spec.js +0 -193
  114. package/parser/functions/controls/whileFn.spec.js +0 -94
  115. package/parser/functions/db/dbAddFn.spec.js +0 -72
  116. package/parser/functions/db/dbAddOrEditFn.spec.js +0 -97
  117. package/parser/functions/db/dbBulkAddFn.spec.js +0 -94
  118. package/parser/functions/db/dbBulkDeleteFn.spec.js +0 -28
  119. package/parser/functions/db/dbBulkPatchFn.spec.js +0 -42
  120. package/parser/functions/db/dbBulkUpdateFn.spec.js +0 -42
  121. package/parser/functions/db/dbDelFn.spec.js +0 -67
  122. package/parser/functions/db/dbDirectQueryFn.spec.js +0 -104
  123. package/parser/functions/db/dbEditFn.spec.js +0 -122
  124. package/parser/functions/db/dbExternalDirectQueryFn.spec.js +0 -103
  125. package/parser/functions/db/dbGetFn.spec.js +0 -117
  126. package/parser/functions/db/dbHasFn.spec.js +0 -62
  127. package/parser/functions/db/dbPatchFn.spec.js +0 -88
  128. package/parser/functions/db/dbQueryFn.spec.js +0 -380
  129. package/parser/functions/db/dbSchemaFn.spec.js +0 -42
  130. package/parser/functions/db/dbSetDatasourceFn.spec.js +0 -44
  131. package/parser/functions/db/dbTransactionFn.spec.js +0 -63
  132. package/parser/functions/db/dbTruncateFn.spec.js +0 -42
  133. package/parser/functions/debug/debugLogFn.spec.js +0 -44
  134. package/parser/functions/debug/debugStopFn.spec.js +0 -44
  135. package/parser/functions/expect/unitExpectToBeWithinFn.spec.js +0 -63
  136. package/parser/functions/expect/unitExpectToThrowFn.spec.js +0 -40
  137. package/parser/functions/expect/unitExpectWithArgumentsFn.spec.js +0 -355
  138. package/parser/functions/expect/unitExpectWithoutArgumentsFn.spec.js +0 -69
  139. package/parser/functions/expect/workflowExpectToBeWithinFn.spec.js +0 -70
  140. package/parser/functions/expect/workflowExpectToThrowFn.spec.js +0 -56
  141. package/parser/functions/expect/workflowExpectWithArgumentsFn.spec.js +0 -308
  142. package/parser/functions/expect/workflowExpectWithoutArgumentsFn.spec.js +0 -87
  143. package/parser/functions/math/allMathFn.spec.js +0 -100
  144. package/parser/functions/middlewareCallFn.spec.js +0 -44
  145. package/parser/functions/object/objectEntriesFn.spec.js +0 -44
  146. package/parser/functions/object/objectKeysFn.spec.js +0 -44
  147. package/parser/functions/object/objectValuesFn.spec.js +0 -44
  148. package/parser/functions/redis/redisCountFn.spec.js +0 -58
  149. package/parser/functions/redis/redisDecrFn.spec.js +0 -47
  150. package/parser/functions/redis/redisDelFn.spec.js +0 -58
  151. package/parser/functions/redis/redisGetFn.spec.js +0 -67
  152. package/parser/functions/redis/redisHasFn.spec.js +0 -58
  153. package/parser/functions/redis/redisIncrFn.spec.js +0 -74
  154. package/parser/functions/redis/redisKeysFn.spec.js +0 -67
  155. package/parser/functions/redis/redisPopFn.spec.js +0 -75
  156. package/parser/functions/redis/redisPushFn.spec.js +0 -71
  157. package/parser/functions/redis/redisRangeFn.spec.js +0 -80
  158. package/parser/functions/redis/redisRateLimitFn.spec.js +0 -87
  159. package/parser/functions/redis/redisRemoveFn.spec.js +0 -65
  160. package/parser/functions/redis/redisSetFn.spec.js +0 -89
  161. package/parser/functions/redis/redisShiftFn.spec.js +0 -75
  162. package/parser/functions/redis/redisUnshiftFn.spec.js +0 -73
  163. package/parser/functions/schema/schemaFn.spec.js +0 -92
  164. package/parser/functions/schema/schemaParseArrayFn.spec.js +0 -134
  165. package/parser/functions/schema/schemaParseAttributeFn.spec.js +0 -285
  166. package/parser/functions/schema/schemaParseConstantFn.spec.js +0 -122
  167. package/parser/functions/schema/schemaParseEnum.spec.js +0 -47
  168. package/parser/functions/schema/schemaParseImmutableFn.spec.js +0 -99
  169. package/parser/functions/schema/schemaParseObjectFn.spec.js +0 -223
  170. package/parser/functions/schema/utils.spec.js +0 -27
  171. package/parser/functions/security/securityCheckPasswordFn.spec.js +0 -22
  172. package/parser/functions/security/securityCreateAuthTokenFn.spec.js +0 -51
  173. package/parser/functions/security/securityCreateCurveKeyFn.spec.js +0 -22
  174. package/parser/functions/security/securityCreatePasswordFn.spec.js +0 -26
  175. package/parser/functions/security/securityCreateRsaKeyFn.spec.js +0 -22
  176. package/parser/functions/security/securityCreateSecretKeyFn.spec.js +0 -22
  177. package/parser/functions/security/securityCreateUuidFn.spec.js +0 -27
  178. package/parser/functions/security/securityDecryptFn.spec.js +0 -24
  179. package/parser/functions/security/securityEncryptFn.spec.js +0 -24
  180. package/parser/functions/security/securityJweDecodeFn.spec.js +0 -26
  181. package/parser/functions/security/securityJweDecodeLegacyFn.spec.js +0 -26
  182. package/parser/functions/security/securityJweEncodeFn.spec.js +0 -26
  183. package/parser/functions/security/securityJweEncodeLegacyFn.spec.js +0 -25
  184. package/parser/functions/security/securityJwsDecodeFn.spec.js +0 -25
  185. package/parser/functions/security/securityJwsEncodeFn.spec.js +0 -25
  186. package/parser/functions/security/securityRandomBytesFn.spec.js +0 -21
  187. package/parser/functions/security/securityRandomNumberFn.spec.js +0 -22
  188. package/parser/functions/storage/storageCreateAttachmentFn.spec.js +0 -87
  189. package/parser/functions/storage/storageCreateAudioFn.spec.js +0 -98
  190. package/parser/functions/storage/storageCreateFileResourceFn.spec.js +0 -72
  191. package/parser/functions/storage/storageCreateImageFn.spec.js +0 -98
  192. package/parser/functions/storage/storageCreateVideoFn.spec.js +0 -99
  193. package/parser/functions/storage/storageDeleteFileFn.spec.js +0 -67
  194. package/parser/functions/storage/storageReadFileResourceFn.spec.js +0 -60
  195. package/parser/functions/storage/storageSignPrivateUrlFn.spec.js +0 -72
  196. package/parser/functions/stream/streamFromCsvFn.spec.js +0 -69
  197. package/parser/functions/stream/streamFromJsonlFn.spec.js +0 -47
  198. package/parser/functions/stream/streamFromRequestFn.spec.js +0 -103
  199. package/parser/functions/text/allTextWithReturnValueFn.spec.js +0 -100
  200. package/parser/functions/text/allTextWithoutReturnValueFn.spec.js +0 -122
  201. package/parser/functions/toolCallFn.spec.js +0 -28
  202. package/parser/functions/triggerCallFn.spec.js +0 -51
  203. package/parser/functions/unitExpectFn.spec.js +0 -21
  204. package/parser/functions/util/utilGeoDistanceFn.spec.js +0 -79
  205. package/parser/functions/util/utilGetAllInputFn.spec.js +0 -33
  206. package/parser/functions/util/utilGetEnvFn.spec.js +0 -33
  207. package/parser/functions/util/utilGetRawInputFn.spec.js +0 -62
  208. package/parser/functions/util/utilGetVarsFn.spec.js +0 -33
  209. package/parser/functions/util/utilIpLookupFn.spec.js +0 -37
  210. package/parser/functions/util/utilPostProcessFn.spec.js +0 -63
  211. package/parser/functions/util/utilSendEmailFn.spec.js +0 -62
  212. package/parser/functions/util/utilSetHeaderFn.spec.js +0 -48
  213. package/parser/functions/util/utilSleepFn.spec.js +0 -44
  214. package/parser/functions/util/utilTemplateFn.spec.js +0 -78
  215. package/parser/functions/varFn.spec.js +0 -332
  216. package/parser/functions/workflowExpectFn.spec.js +0 -32
  217. package/parser/functions/zip/zipAddToArchiveFn.spec.js +0 -78
  218. package/parser/functions/zip/zipCreateArchiveFn.spec.js +0 -53
  219. package/parser/functions/zip/zipDeleteFromArchiveFn.spec.js +0 -69
  220. package/parser/functions/zip/zipExtractFn.spec.js +0 -52
  221. package/parser/functions/zip/zipViewContentsFn.spec.js +0 -52
  222. package/parser/generic/arrayWithValues.spec.js +0 -72
  223. package/parser/generic/asVariable.spec.js +0 -117
  224. package/parser/generic/assignableVariableAs.spec.js +0 -126
  225. package/parser/generic/assignableVariableProperty.spec.js +0 -138
  226. package/parser/generic/castedValue.spec.js +0 -29
  227. package/parser/generic/chainedIdentifier.spec.js +0 -89
  228. package/parser/generic/completeAuthVariable.spec.js +0 -23
  229. package/parser/generic/completeEnvVariable.spec.js +0 -99
  230. package/parser/generic/completeErrorVariable.spec.js +0 -17
  231. package/parser/generic/completeInputVariable.spec.js +0 -53
  232. package/parser/generic/expressionFn.spec.js +0 -605
  233. package/parser/generic/filterFn.spec.js +0 -47
  234. package/parser/generic/functionAttrReq.spec.js +0 -353
  235. package/parser/generic/longFormVariable.spec.js +0 -25
  236. package/parser/generic/minimalFnBody.spec.js +0 -47
  237. package/parser/generic/mockAttribute.spec.js +0 -57
  238. package/parser/generic/multilineFilterFn.spec.js +0 -51
  239. package/parser/generic/objectWithAttributes.spec.js +0 -147
  240. package/parser/generic/requiredValueFnBody.spec.js +0 -56
  241. package/parser/generic/shortFormVariable.spec.js +0 -27
  242. package/parser/generic/stringArray.spec.js +0 -55
  243. package/parser/generic/tagsAttribute.spec.js +0 -47
  244. package/parser/generic/variableOnly.spec.js +0 -47
  245. package/parser/mcp_server_parser.spec.js +0 -478
  246. package/parser/mcp_server_trigger_parser.spec.js +0 -396
  247. package/parser/metadata/columnMetadataDefinition.spec.js +0 -47
  248. package/parser/metadata/enumColumnMetadataDefinition.spec.js +0 -81
  249. package/parser/middleware_parser.spec.js +0 -230
  250. package/parser/multidoc.spec.js +0 -946
  251. package/parser/query_parser.spec.js +0 -202
  252. package/parser/realtime_channel_parser.spec.js +0 -20
  253. package/parser/realtime_trigger_parser.spec.js +0 -469
  254. package/parser/run_parser.spec.js +0 -100
  255. package/parser/table_parser.spec.js +0 -176
  256. package/parser/table_trigger_parser.spec.js +0 -478
  257. package/parser/task_parser.spec.js +0 -94
  258. package/parser/tests/agent/agent_parser.spec.js +0 -52
  259. package/parser/tests/agent/valid_sources/customer_servier_agent.xs +0 -45
  260. package/parser/tests/api_group/api_group_parser.spec.js +0 -52
  261. package/parser/tests/api_group/valid_sources/api_group_history.xs +0 -4
  262. package/parser/tests/api_group/valid_sources/basic_api_group.xs +0 -3
  263. package/parser/tests/api_group/valid_sources/complete_api_group.xs +0 -7
  264. package/parser/tests/api_group/valid_sources/protected_api_group.xs +0 -7
  265. package/parser/tests/function/function_parser.spec.js +0 -52
  266. package/parser/tests/function/valid_sources/all_controls.xs +0 -68
  267. package/parser/tests/function/valid_sources/all_query_return_types.xs +0 -227
  268. package/parser/tests/function/valid_sources/all_storage.xs +0 -45
  269. package/parser/tests/function/valid_sources/discord_poll_send_to_slack.xs +0 -133
  270. package/parser/tests/function/valid_sources/expression_in_response.xs +0 -22
  271. package/parser/tests/function/valid_sources/filter_by_value.xs +0 -55
  272. package/parser/tests/function/valid_sources/filter_query.xs +0 -82
  273. package/parser/tests/function/valid_sources/large_regex.xs +0 -13
  274. package/parser/tests/function/valid_sources/ledash_ends_with.xs +0 -90
  275. package/parser/tests/function/valid_sources/multiline_description.xs +0 -28
  276. package/parser/tests/function/valid_sources/multiline_expr.xs +0 -41
  277. package/parser/tests/function/valid_sources/set_theory_fn.xs +0 -129
  278. package/parser/tests/function/valid_sources/simple_unit_test.xs +0 -33
  279. package/parser/tests/function/valid_sources/valid_officer.xs +0 -57
  280. package/parser/tests/function/valid_sources/webflow.xs +0 -18
  281. package/parser/tests/multidoc/multidoc_parser.spec.js +0 -55
  282. package/parser/tests/multidoc/valid_sources/function_stack.xs +0 -130603
  283. package/parser/tests/query/query_parser.spec.js +0 -54
  284. package/parser/tests/query/valid_sources/all_basics.xs +0 -51
  285. package/parser/tests/query/valid_sources/all_cloud.xs +0 -141
  286. package/parser/tests/query/valid_sources/all_db.xs +0 -102
  287. package/parser/tests/query/valid_sources/all_external_db.xs +0 -43
  288. package/parser/tests/query/valid_sources/all_keywords.xs +0 -65
  289. package/parser/tests/query/valid_sources/all_math.xs +0 -53
  290. package/parser/tests/query/valid_sources/all_object.xs +0 -25
  291. package/parser/tests/query/valid_sources/all_redis.xs +0 -106
  292. package/parser/tests/query/valid_sources/all_security.xs +0 -105
  293. package/parser/tests/query/valid_sources/all_stream.xs +0 -69
  294. package/parser/tests/query/valid_sources/all_text.xs +0 -54
  295. package/parser/tests/query/valid_sources/all_util.xs +0 -66
  296. package/parser/tests/query/valid_sources/all_zip.xs +0 -39
  297. package/parser/tests/query/valid_sources/arrays.xs +0 -33
  298. package/parser/tests/query/valid_sources/disabled_response.xs +0 -27
  299. package/parser/tests/query/valid_sources/multiline_lambda_GET.xs +0 -50
  300. package/parser/tests/query/valid_sources/mutliline_query.xs +0 -140
  301. package/parser/tests/query/valid_sources/patch_expression_multiline.xs +0 -27
  302. package/parser/tests/query/valid_sources/query_cache.xs +0 -34
  303. package/parser/tests/query/valid_sources/query_example.xs +0 -43
  304. package/parser/tests/query/valid_sources/query_mini.xs +0 -11
  305. package/parser/tests/query/valid_sources/query_rich_inputs.xs +0 -32
  306. package/parser/tests/query/valid_sources/simple_unit_test.xs +0 -33
  307. package/parser/tests/query/valid_sources/test_with_slashes.xs +0 -22
  308. package/parser/tests/query/valid_sources/with_unit_test.xs +0 -97
  309. package/parser/tests/table/table_parser.spec.js +0 -52
  310. package/parser/tests/table/valid_sources/account.xs +0 -31
  311. package/parser/tests/table/valid_sources/all_basic_columns.xs +0 -44
  312. package/parser/tests/table/valid_sources/basic_table.xs +0 -15
  313. package/parser/tests/table/valid_sources/empty_object.xs +0 -17
  314. package/parser/tests/table/valid_sources/empty_table.xs +0 -3
  315. package/parser/tests/table/valid_sources/multiline_index.xs +0 -33
  316. package/parser/tests/table/valid_sources/relation.xs +0 -44
  317. package/parser/tests/table/valid_sources/rich_columns.xs +0 -31
  318. package/parser/tests/table/valid_sources/table_with_comments.xs +0 -17
  319. package/parser/tests/table/valid_sources/table_with_search_index.xs +0 -31
  320. package/parser/tests/table/valid_sources/view_table.xs +0 -62
  321. package/parser/tests/task/task_parser.spec.js +0 -53
  322. package/parser/tests/task/valid_sources/active_event.xs +0 -11
  323. package/parser/tests/task/valid_sources/all_events.xs +0 -17
  324. package/parser/tests/task/valid_sources/create_leak.xs +0 -165
  325. package/parser/tests/task/valid_sources/daily_sales_report.xs +0 -56
  326. package/parser/tests/task/valid_sources/inactive_event.xs +0 -11
  327. package/parser/tests/variable_test/coverage_check.xs +0 -293
  328. package/parser/tests/workflow_test/valid_sources/basic_workflow_test.xs +0 -13
  329. package/parser/tests/workflow_test/workflow_test_parser.spec.js +0 -52
  330. package/parser/tool_parser.spec.js +0 -115
  331. package/parser/variableValidator.spec.js +0 -179
  332. package/parser/workflow_test_parser.spec.js +0 -136
  333. package/parser/workspace_parser.spec.js +0 -142
  334. package/parser/workspace_trigger_parser.spec.js +0 -332
  335. package/toTmLanguage.js +0 -75
  336. package/utils.spec.js +0 -369
  337. package/workspace/crossFileValidator.spec.js +0 -654
  338. package/workspace/referenceTracking.spec.js +0 -420
  339. package/workspace/workspaceIndex.spec.js +0 -189
@@ -1,179 +0,0 @@
1
- import { expect } from "chai";
2
- import { Lexer } from "chevrotain";
3
- import { describe, it } from "mocha";
4
- import { MultiLineExpressionToken, MultiLineStringToken } from "./multiline.js";
5
-
6
- describe("MultiLineStringToken", () => {
7
- const lexer = new Lexer([MultiLineStringToken, MultiLineExpressionToken]);
8
-
9
- it("should match a valid multiline string with content LF", () => {
10
- const input = '"""\nThis is a multiline string.\n """';
11
- const result = lexer.tokenize(input);
12
- expect(result.errors).to.be.empty;
13
- expect(result.tokens).to.have.lengthOf(1);
14
- expect(result.tokens[0]).to.include({
15
- tokenType: MultiLineStringToken,
16
- image: input,
17
- startOffset: 0,
18
- });
19
- });
20
-
21
- it("should match a valid multiline string with content CRLF", () => {
22
- const input = '"""\r\nThis is a multiline string.\r\n """';
23
- const result = lexer.tokenize(input);
24
- expect(result.errors).to.be.empty;
25
- expect(result.tokens).to.have.lengthOf(1);
26
- expect(result.tokens[0]).to.include({
27
- tokenType: MultiLineStringToken,
28
- image: input,
29
- startOffset: 0,
30
- });
31
- });
32
-
33
- it("should match a valid multiline expression with content", () => {
34
- const input = '```\n{"x": "test"}\n ```';
35
- const result = lexer.tokenize(input);
36
- expect(result.errors).to.be.empty;
37
- expect(result.tokens).to.have.lengthOf(1);
38
- expect(result.tokens[0]).to.include({
39
- tokenType: MultiLineExpressionToken,
40
- image: input,
41
- startOffset: 0,
42
- });
43
- });
44
-
45
- it("should match a valid multiline string with content (single quote)", () => {
46
- const input = "'''\nThis is a multiline string.\n '''";
47
- const result = lexer.tokenize(input);
48
- expect(result.errors).to.be.empty;
49
- expect(result.tokens).to.have.lengthOf(1);
50
- expect(result.tokens[0]).to.include({
51
- tokenType: MultiLineStringToken,
52
- image: input,
53
- startOffset: 0,
54
- });
55
- });
56
-
57
- it("should match a valid empty multiline string", () => {
58
- const input = '"""\n"""';
59
- const result = lexer.tokenize(input);
60
- expect(result.errors).to.be.empty;
61
- expect(result.tokens).to.have.lengthOf(1);
62
- expect(result.tokens[0]).to.include({
63
- tokenType: MultiLineStringToken,
64
- image: input,
65
- startOffset: 0,
66
- });
67
- });
68
- it("should match a valid empty multiline string (single quotes)", () => {
69
- const input = "'''\n'''";
70
- const result = lexer.tokenize(input);
71
- expect(result.errors).to.be.empty;
72
- expect(result.tokens).to.have.lengthOf(1);
73
- expect(result.tokens[0]).to.include({
74
- tokenType: MultiLineStringToken,
75
- image: input,
76
- startOffset: 0,
77
- });
78
- });
79
-
80
- it("should match a valid empty multiline expression", () => {
81
- const input = "```\n```";
82
- const result = lexer.tokenize(input);
83
- expect(result.errors).to.be.empty;
84
- expect(result.tokens).to.have.lengthOf(1);
85
- expect(result.tokens[0]).to.include({
86
- tokenType: MultiLineExpressionToken,
87
- image: input,
88
- startOffset: 0,
89
- });
90
- });
91
-
92
- it("should match a multiline string with a single string quote sentence inside", () => {
93
- const input = '"""\nconsole.log("quoted"); // sentence.\n"""';
94
- const result = lexer.tokenize(input);
95
- expect(result.errors).to.be.empty;
96
- expect(result.tokens).to.have.lengthOf(1);
97
- expect(result.tokens[0]).to.include({
98
- tokenType: MultiLineStringToken,
99
- image: input,
100
- startOffset: 0,
101
- });
102
- });
103
-
104
- it("should match a multiline string followed by other content", () => {
105
- const input = '"""\nContent here\n """\nnextToken';
106
- const result = lexer.tokenize(input);
107
- expect(result.tokens).to.have.lengthOf(1);
108
- expect(result.tokens[0]).to.include({
109
- tokenType: MultiLineStringToken,
110
- image: '"""\nContent here\n """',
111
- startOffset: 0,
112
- });
113
- // Errors for '\nnextToken' are expected
114
- });
115
-
116
- it("should reject a multiline string with no newline after opening quotes", () => {
117
- const input = '""" Content\n"""';
118
- const result = lexer.tokenize(input);
119
- expect(result.tokens).to.be.empty;
120
- expect(result.errors).to.not.be.empty;
121
- });
122
-
123
- it("should reject a multiline string with non-space characters before closing quotes", () => {
124
- const input = '"""\nContent\nfoo """';
125
- const result = lexer.tokenize(input);
126
- expect(result.tokens).to.be.empty;
127
- expect(result.errors).to.not.be.empty;
128
- });
129
-
130
- it("should reject a multiline string with tabs before closing quotes", () => {
131
- const input = '"""\nContent\n\t"""';
132
- const result = lexer.tokenize(input);
133
- expect(result.tokens).to.be.empty;
134
- expect(result.errors).to.not.be.empty;
135
- });
136
-
137
- it("should reject a multiline expression with tabs before closing quotes", () => {
138
- const input = "```\nContent\n\t```";
139
- const result = lexer.tokenize(input);
140
- expect(result.tokens).to.be.empty;
141
- expect(result.errors).to.not.be.empty;
142
- });
143
-
144
- it("should handle internal opposite quotes correctly (double quotes)", () => {
145
- const input = '"""\nThis has \'\'\' inside\n """';
146
- const result = lexer.tokenize(input);
147
- expect(result.errors).to.be.empty;
148
- expect(result.tokens).to.have.lengthOf(1);
149
- expect(result.tokens[0]).to.include({
150
- tokenType: MultiLineStringToken,
151
- image: input,
152
- startOffset: 0,
153
- });
154
- });
155
-
156
- it("should handle internal opposite quotes correctly (single quotes)", () => {
157
- const input = "'''\nThis has \"\"\" inside\n '''";
158
- const result = lexer.tokenize(input);
159
- expect(result.errors).to.be.empty;
160
- expect(result.tokens).to.have.lengthOf(1);
161
- expect(result.tokens[0]).to.include({
162
- tokenType: MultiLineStringToken,
163
- image: input,
164
- startOffset: 0,
165
- });
166
- });
167
-
168
- it("should handle internal triple quotes correctly", () => {
169
- const input = '"""\nThis has """ inside\n """';
170
- const result = lexer.tokenize(input);
171
- expect(result.errors).to.be.empty;
172
- expect(result.tokens).to.have.lengthOf(1);
173
- expect(result.tokens[0]).to.include({
174
- tokenType: MultiLineStringToken,
175
- image: input,
176
- startOffset: 0,
177
- });
178
- });
179
- });
@@ -1,36 +0,0 @@
1
- import { expect } from "chai";
2
- import { readdirSync, readFileSync } from "fs";
3
- import findLast from "lodash-es/findLast.js";
4
- import { describe, it } from "mocha";
5
- import { lexDocument } from "../../lexer.js";
6
-
7
- describe("Xanoscript Query Lexer", () => {
8
- it("Can Lex valid query sources", () => {
9
- const files = readdirSync("lexer/tests/query/valid_sources");
10
- files.forEach((file) => {
11
- const source = readFileSync(
12
- `lexer/tests/query/valid_sources/${file}`,
13
- "utf8"
14
- );
15
- const lexingResult = lexDocument(source);
16
- const { errors, tokens } = lexingResult;
17
- if (errors.length > 0) {
18
- let richErrors = errors.map((error) => {
19
- const previousToken = findLast(
20
- tokens,
21
- (token) => token.endOffset <= error.offset
22
- );
23
- return {
24
- name: error.message,
25
- file: `lexer/tests/query/valid_sources/${file}:${error.line}:${error.column}`,
26
- "prev. Token": previousToken ? previousToken.image : "N/A",
27
- };
28
- });
29
-
30
- console.table(richErrors);
31
- }
32
-
33
- expect(errors).to.be.empty;
34
- });
35
- });
36
- });
@@ -1,44 +0,0 @@
1
- query xanoscript_all_basics verb=GET {
2
- input {
3
- text some_text_value filters=trim {
4
- description = "and a description"
5
- sensitive = true
6
- }
7
- }
8
-
9
- stack {
10
- var some_var {
11
- value = $env.$remote_ip
12
- }
13
-
14
- conditional {
15
- if (`($some_var)|strlen > 4`) {
16
- db.add 48 {
17
- data = {id: "null", created_at: '"now"', "@meta": "null"}
18
- } as empty1
19
- }
20
-
21
- else {
22
- api.request {
23
- url = "https://api.example.com/webhook"
24
- method = "GET"
25
- params = `{"value": "yup it's long"}`
26
- } as api1
27
- }
28
- }
29
-
30
- foreach (`["1","2","3","4","5","6"]`) {
31
- each as item {
32
- var.update some_var {
33
- value = $some_var|concat:$item:" + "
34
- }
35
-
36
- debug.log {
37
- value = $some_var
38
- }
39
- }
40
- }
41
- }
42
-
43
- response = $some_var
44
- }
@@ -1,77 +0,0 @@
1
- query db_query verb=GET {
2
- input
3
- stack {
4
- db.query book {
5
- where = `"book.id" == 123`
6
- eval = [
7
- {
8
- name : "book.name"
9
- as : "book_name"
10
- filter: [
11
- {name: "upper", disabled: true}
12
- {name: "add", arg: [{value: 123}]}
13
- ]
14
- }
15
- ]
16
-
17
- return_aggregate = {
18
- paging : {page: 1, per_page: 25, metadata: true}
19
- sorting: [{sort: "book_name", order: "asc"}]
20
- group : [
21
- {
22
- name : "book.name"
23
- as : "book_name"
24
- filter: [{name: "lower"}]
25
- }
26
- ]
27
- eval : [
28
- {name: "book.name", as: "book_name", filter: [{name: "sum"}]}
29
- ]
30
- }
31
-
32
- external_classic = {
33
- value : "test"
34
- permissions: {search: true, sort: true, page: true, per_page: false}
35
- }
36
-
37
- external = {
38
- search : "test"
39
- sort : "test"
40
- page : "test"
41
- per_page: "test"
42
- offset : "test"
43
- }
44
-
45
- output = [
46
- "itemsReceived"
47
- "curPage"
48
- "nextPage"
49
- "prevPage"
50
- "offset"
51
- "perPage"
52
- "items.book_name"
53
- ]
54
-
55
- addon = [
56
- {
57
- name : "book"
58
- as : "_book"
59
- offset: "items[]"
60
- input : {book_id: "book_name"}
61
- addon : [
62
- {
63
- name : "book"
64
- as : "_book2222"
65
- offset: "obj"
66
- output: ["name", "name2"]
67
- input : {book_id: $env.API_KEY}
68
- }
69
- ]
70
- }
71
- ]
72
-
73
- } as book1
74
- }
75
-
76
- response = null
77
- }
@@ -1,5 +0,0 @@
1
- query empty_query verb=GET {
2
- input
3
- stack
4
- response = null
5
- }
@@ -1,15 +0,0 @@
1
- query get_auth verb=GET {
2
- input
3
- stack {
4
- var authToken {
5
- value = "foo-bar"
6
- }
7
-
8
- util.set_header {
9
- value = "Set-Cookie: sessionId=your-session-id; HttpOnly; Secure; SameSite=None; Max-Age=3600"|string_replace:"your-session-id":$authToken
10
- duplicates = "replace"
11
- }
12
- }
13
-
14
- response = $authToken
15
- }
@@ -1,17 +0,0 @@
1
- table empty {
2
- auth = true
3
- security = {
4
- guid: "-iOFONN4cySSKJ0MTrPNojIWB5c"
5
- }
6
-
7
- schema {
8
- int id
9
- timestamp created_at?=now
10
- }
11
-
12
- index = [
13
- {type: "primary", field: [{name: "id"}]}
14
- {type: "gin", field: [{name: "xdo", op: "jsonb_path_op"}]}
15
- {type: "btree", field: [{name: "created_at", op: "desc"}]}
16
- ]
17
- }
@@ -1,3 +0,0 @@
1
- table empty {
2
- auth = false
3
- }