@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,26 +0,0 @@
1
- import { expect } from "chai";
2
- import { describe, it } from "mocha";
3
- import { lexDocument } from "../../../lexer/lexer.js";
4
- import { parser } from "../../test_parser.js";
5
-
6
- function parse(inputText) {
7
- parser.reset();
8
- const lexResult = lexDocument(inputText);
9
- parser.input = lexResult.tokens;
10
- parser.cloudListDirectoryFn();
11
- return parser;
12
- }
13
-
14
- describe("cloudListDirectoryFn", () => {
15
- it("cloudListDirectoryFn requires values and an return variable", () => {
16
- const parser = parse(`list_directory {
17
- bucket = "my_bucket"
18
- region = $should_be_b ? "b": "c"
19
- key = $input.file_key
20
- secret = $env.secret_key
21
- prefix = $env.file_prefix
22
- next_page_token = 4
23
- } as $directory`);
24
- expect(parser.errors).to.be.empty;
25
- });
26
- });
@@ -1,25 +0,0 @@
1
- import { expect } from "chai";
2
- import { describe, it } from "mocha";
3
- import { lexDocument } from "../../../lexer/lexer.js";
4
- import { parser } from "../../test_parser.js";
5
-
6
- function parse(inputText) {
7
- parser.reset();
8
- const lexResult = lexDocument(inputText);
9
- parser.input = lexResult.tokens;
10
- parser.cloudReadFileFn();
11
- return parser;
12
- }
13
-
14
- describe("cloudReadFileFn", () => {
15
- it("cloudReadFileFn requires values and an return variable", () => {
16
- const parser = parse(`read_file {
17
- bucket = "my_bucket"
18
- region = $should_be_b ? "b" : "c"
19
- key = $input.file_key
20
- secret = $env.secret_key
21
- file_key = "e"
22
- } as $file`);
23
- expect(parser.errors).to.be.empty;
24
- });
25
- });
@@ -1,28 +0,0 @@
1
- import { expect } from "chai";
2
- import { describe, it } from "mocha";
3
- import { lexDocument } from "../../../lexer/lexer.js";
4
- import { parser } from "../../test_parser.js";
5
-
6
- function parse(inputText) {
7
- parser.reset();
8
- const lexResult = lexDocument(inputText);
9
- parser.input = lexResult.tokens;
10
- parser.cloudSearchDocumentFn();
11
- return parser;
12
- }
13
-
14
- describe("cloudSearchDocumentFn", () => {
15
- it("cloudSearchDocumentFn requires values and an return variable", () => {
16
- const parser = parse(`document {
17
- auth_type = "IAM"
18
- key_id = ""
19
- access_key = ""
20
- region = ""
21
- method = "GET"
22
- index = ""
23
- doc_id = ""
24
- doc = {}
25
- } as $search_document`);
26
- expect(parser.errors).to.be.empty;
27
- });
28
- });
@@ -1,32 +0,0 @@
1
- import { expect } from "chai";
2
- import { describe, it } from "mocha";
3
- import { lexDocument } from "../../../lexer/lexer.js";
4
- import { parser } from "../../test_parser.js";
5
-
6
- function parse(inputText) {
7
- parser.reset();
8
- const lexResult = lexDocument(inputText);
9
- parser.input = lexResult.tokens;
10
- parser.cloudSearchQueryFn();
11
- return parser;
12
- }
13
-
14
- describe("cloudSearchQueryFn", () => {
15
- it("cloudSearchQueryFn requires values and an return variable", () => {
16
- const parser = parse(`query {
17
- auth_type = "IAM"
18
- key_id = ""
19
- access_key = ""
20
- region = ""
21
- index = ""
22
- payload = {}
23
- expression = []
24
- size = 0
25
- from = 0
26
- sort = []
27
- included_fields = []
28
- return_type = "search"
29
- } as $search_query`);
30
- expect(parser.errors).to.be.empty;
31
- });
32
- });
@@ -1,32 +0,0 @@
1
- import { expect } from "chai";
2
- import { describe, it } from "mocha";
3
- import { lexDocument } from "../../../lexer/lexer.js";
4
- import { parser } from "../../test_parser.js";
5
-
6
- function parse(inputText) {
7
- parser.reset();
8
- const lexResult = lexDocument(inputText);
9
- parser.input = lexResult.tokens;
10
- parser.cloudSearchRequestFn();
11
- return parser;
12
- }
13
-
14
- describe("cloudSearchRequestFn", () => {
15
- it("cloudSearchRequestFn requires values and an return variable", () => {
16
- const parser = parse(`request {
17
- auth_type = "IAM"
18
- key_id = ""
19
- access_key = ""
20
- region = ""
21
- method = "GET"
22
- url = ""
23
- query = {}
24
- } as $search_request`);
25
- expect(parser.errors).to.be.empty;
26
- });
27
-
28
- it("cloudSearchRequestFn requires values and an return variable", () => {
29
- const parser = parse(`request as $search_request`);
30
- expect(parser.errors).to.not.be.empty;
31
- });
32
- });
@@ -1,26 +0,0 @@
1
- import { expect } from "chai";
2
- import { describe, it } from "mocha";
3
- import { lexDocument } from "../../../lexer/lexer.js";
4
- import { parser } from "../../test_parser.js";
5
-
6
- function parse(inputText) {
7
- parser.reset();
8
- const lexResult = lexDocument(inputText);
9
- parser.input = lexResult.tokens;
10
- parser.cloudSignUrlFn();
11
- return parser;
12
- }
13
-
14
- describe("cloudSignUrlFn", () => {
15
- it("cloudSignUrlFn requires values and an return variable", () => {
16
- const parser = parse(`sign_url {
17
- bucket = "my_bucket"
18
- region = $should_be_b ? "b" : "c"
19
- key = $input.file_key
20
- secret = $env.secret_key
21
- file_key = "e"
22
- ttl = 100
23
- } as $file`);
24
- expect(parser.errors).to.be.empty;
25
- });
26
- });
@@ -1,21 +0,0 @@
1
- import { expect } from "chai";
2
- import { describe, it } from "mocha";
3
- import { lexDocument } from "../../../lexer/lexer.js";
4
- import { parser } from "../../test_parser.js";
5
-
6
- function parse(inputText) {
7
- parser.reset();
8
- const lexResult = lexDocument(inputText);
9
- parser.input = lexResult.tokens;
10
- parser.cloudStorageFn();
11
- return parser;
12
- }
13
-
14
- describe("cloudStorageFn", () => {
15
- it("cloudStorageFn requires a value and an return value", () => {
16
- const parser = parse(`storage.read_file {
17
- bucket = "foo"
18
- } as $myFile`);
19
- expect(parser.errors).to.be.empty;
20
- });
21
- });
@@ -1,29 +0,0 @@
1
- import { expect } from "chai";
2
- import { describe, it } from "mocha";
3
- import { lexDocument } from "../../../lexer/lexer.js";
4
- import { parser } from "../../test_parser.js";
5
-
6
- function parse(inputText) {
7
- parser.reset();
8
- const lexResult = lexDocument(inputText);
9
- parser.input = lexResult.tokens;
10
- parser.cloudUploadFileFn();
11
- return parser;
12
- }
13
-
14
- describe("cloudUploadFileFn", () => {
15
- it("cloudUploadFileFn requires values and an return variable", () => {
16
- const parser = parse(`upload_file {
17
- bucket = "my_bucket"
18
- region = $should_be_b ? "b" : "c"
19
- key = $input.file_key
20
- secret = $env.secret_key
21
- file_key = "e"
22
- file = $input.file
23
- metadata = {}|set:"foo":"bar"
24
- object_lock_mode = ""
25
- object_lock_retain_until = ""
26
- } as $foo`);
27
- expect(parser.errors).to.be.empty;
28
- });
29
- });
@@ -1,48 +0,0 @@
1
- import { expect } from "chai";
2
- import { describe, it } from "mocha";
3
- import { lexDocument } from "../../../lexer/lexer.js";
4
- import { parser } from "../../test_parser.js";
5
-
6
- function parse(inputText) {
7
- parser.reset();
8
- const lexResult = lexDocument(inputText);
9
- parser.input = lexResult.tokens;
10
- parser.awaitFn();
11
- return parser;
12
- }
13
-
14
- describe("awaitFn", () => {
15
- it("awaitFn accepts data field", () => {
16
- const parser = parse(`await {
17
- timeout = 10
18
- ids = []|push:$func1
19
- } as $script`);
20
- expect(parser.errors).to.be.empty;
21
- });
22
-
23
- it("awaitFn can be disabled", () => {
24
- const parser = parse(`await {
25
- ids = []|push:$func1
26
- timeout = 10
27
- disabled = true
28
- } as $new_user`);
29
- expect(parser.errors).to.be.empty;
30
- });
31
-
32
- it("awaitFn accepts a description", () => {
33
- const parser = parse(`await {
34
- description = "await function"
35
- ids = []|push:$func1
36
- timeout = 10
37
- } as $new_user`);
38
- expect(parser.errors).to.be.empty;
39
- });
40
-
41
- it("awaitFn requires a ids field", () => {
42
- const parser = parse(`await {
43
- description = "await new user"
44
- timeout = 10
45
- } as $user`);
46
- expect(parser.errors).to.not.be.empty;
47
- });
48
- });
@@ -1,188 +0,0 @@
1
- import { expect } from "chai";
2
- import { describe, it } from "mocha";
3
- import { lexDocument } from "../../../lexer/lexer.js";
4
- import { parser } from "../../test_parser.js";
5
-
6
- function parse(inputText) {
7
- parser.reset();
8
- const lexResult = lexDocument(inputText);
9
- parser.input = lexResult.tokens;
10
- parser.conditionalFn();
11
- return parser;
12
- }
13
-
14
- describe("conditionalFn", () => {
15
- it("conditionalFn accept a single if statement", () => {
16
- const parser = parse(`conditional {
17
- if ($input.a == 12) {
18
- var $x {
19
- value = 12
20
- }
21
- }
22
- }`);
23
- expect(parser.errors).to.be.empty;
24
- });
25
-
26
- it("conditionalFn accept a multiline if statement", () => {
27
- const parser = parse(`conditional {
28
- if (
29
- $input.a == 12
30
- ) {
31
- var $x {
32
- value = 12
33
- }
34
- }
35
- }`);
36
- expect(parser.errors).to.be.empty;
37
- });
38
-
39
- it("conditionalFn accepts a comment above the if", () => {
40
- const parser = parse(`conditional {
41
- // This is a comment
42
- if ($input.a == 12) {
43
- var $x {
44
- value = 12
45
- }
46
- }
47
- }`);
48
- expect(parser.errors).to.be.empty;
49
- });
50
-
51
- it("conditionalFn accept an else statement", () => {
52
- const parser = parse(`conditional {
53
- if ($input.a < 12) {
54
- var $x {
55
- value = 12
56
- }
57
- }
58
- else {
59
- var $y {
60
- value = 13
61
- }
62
- }
63
- }`);
64
- expect(parser.errors).to.be.empty;
65
- });
66
-
67
- it("conditionalFn should error out when else statement is not on a new line", () => {
68
- const parser = parse(`conditional {
69
- if ($input.a < 12) {
70
- var $x {
71
- value = 12
72
- }
73
- } else {
74
- var $y {
75
- value = 13
76
- }
77
- }
78
- }`);
79
- expect(parser.errors).to.not.be.empty;
80
- });
81
-
82
- it("conditionalFn if and elseif can have no stack (somehow uh)", () => {
83
- const parser = parse(`conditional {
84
- if ($input.a >= 12)
85
- elseif ($input.a <= 13)
86
- }`);
87
- expect(parser.errors).to.be.empty;
88
- });
89
-
90
- it("conditionalFn accepts many else if (elseif) statements", () => {
91
- const parser = parse(`conditional {
92
- if ($input.a < 12) {
93
- var $x {
94
- value = 12
95
- }
96
- }
97
- elseif ($input.a != 13) {
98
- var $y {
99
- value = "alpha"
100
- }
101
- }
102
- elseif ($input.a > 14) {
103
- var $y {
104
- value = 36
105
- }
106
- }
107
- }`);
108
- expect(parser.errors).to.be.empty;
109
- });
110
-
111
- it("conditionalFn accepts a comment above the else", () => {
112
- const parser = parse(`conditional {
113
- // If destination address is a system account.
114
- if ($some_condition) {
115
- // Getting the final destination
116
- var $destination {
117
- value = "https://example.com/default_destination/x"
118
- }
119
- }
120
-
121
- // Set the final destination URL
122
- else {
123
- // Getting the final destination
124
- var $destination {
125
- value = "https://example.com/default_destination"
126
- }
127
- }
128
- }`);
129
- expect(parser.errors).to.be.empty;
130
- });
131
-
132
- it("conditionalFn accepts a description", () => {
133
- const parser = parse(`conditional {
134
- description = "foo"
135
- if ($input.a == 12) {
136
- var $x {
137
- value = 12
138
- }
139
- }
140
- }`);
141
- expect(parser.errors).to.be.empty;
142
- });
143
-
144
- it("conditionalFn can be disabled", () => {
145
- const parser = parse(`conditional {
146
- disabled = true
147
- if ($input.a == 12) {
148
- var $x {
149
- value = 12
150
- }
151
- }
152
- }`);
153
- expect(parser.errors).to.be.empty;
154
- });
155
-
156
- it("conditionalFn requires at least an if statement", () => {
157
- const parser = parse(`conditional {
158
- description = "foo"
159
- }`);
160
- expect(parser.errors).to.not.be.empty;
161
- });
162
-
163
- it("conditionalFn requires ordered statement if, elseif..., else", () => {
164
- const parser = parse(`conditional {
165
- if ($input.a == 12) {
166
- var $x {
167
- value = 12
168
- }
169
- }
170
- elseif ($input.a == 13) {
171
- var $y {
172
- value = "alpha"
173
- }
174
- }
175
- else {
176
- var $z {
177
- value = 14
178
- }
179
- }
180
- elseif ($input.a == 14) {
181
- var $y {
182
- value = 36
183
- }
184
- }
185
- }`);
186
- expect(parser.errors).to.not.be.empty;
187
- });
188
- });
@@ -1,109 +0,0 @@
1
- import { expect } from "chai";
2
- import { describe, it } from "mocha";
3
- import { lexDocument } from "../../../lexer/lexer.js";
4
- import { parser } from "../../test_parser.js";
5
-
6
- function parse(inputText) {
7
- parser.reset();
8
- const lexResult = lexDocument(inputText);
9
- parser.input = lexResult.tokens;
10
- parser.forEachFn();
11
- return parser;
12
- }
13
-
14
- describe("forEachFn", () => {
15
- it("forEachFn can be an empty statement", () => {
16
- const parser = parse(`foreach ([]|push:1|push:2|push:3|push:4) {
17
- each as $item
18
- }`);
19
- expect(parser.errors).to.be.empty;
20
- });
21
-
22
- it("forEachFn should warn when using a reserved variable name", () => {
23
- const parser = parse(`foreach ([]|push:1|push:2|push:3|push:4) {
24
- each as $env
25
- }`);
26
- expect(parser.errors).to.be.empty;
27
- expect(parser.warnings).to.not.be.empty;
28
- });
29
-
30
- it("forEachFn can also be foreach.remove", () => {
31
- const parser = parse(`foreach.remove`);
32
- expect(parser.errors).to.be.empty;
33
- });
34
-
35
- it("forEachFn accept a stack statement (in each as $item)", () => {
36
- const parser = parse(`foreach ([]|push:1|push:2|push:3|push:4) {
37
- each as $item {
38
- var $x {
39
- value = 12|add:$item
40
- }
41
- }
42
- }`);
43
- expect(parser.errors).to.be.empty;
44
- });
45
-
46
- it("forEachFn accept an as any variable", () => {
47
- const parser = parse(`foreach ([]|push:1|push:2|push:3|push:4) {
48
- each as $foo {
49
- var $x {
50
- value = 12|add:$foo
51
- }
52
- }
53
- }`);
54
- expect(parser.errors).to.be.empty;
55
- });
56
-
57
- it("forEachFn accept a default statement", () => {
58
- const parser = parse(`foreach ([]|push:1|push:2|push:3|push:4) {
59
- each as $item {
60
- var $x2 {
61
- value = 12212|add:$item
62
- }
63
- }
64
- }`);
65
- expect(parser.errors).to.be.empty;
66
- });
67
-
68
- it("forEachFn accept break statement", () => {
69
- const parser = parse(`foreach ([]|push:1|push:2|push:3|push:4) {
70
- each as $item {
71
- var $x {
72
- value = 12
73
- }
74
- }
75
- }`);
76
- expect(parser.errors).to.be.empty;
77
- });
78
-
79
- it("forEachFn accepts a description", () => {
80
- const parser = parse(`foreach ([]|push:1|push:2|push:3|push:4) {
81
- description = "foo"
82
- each as $item {
83
- var $x {
84
- value = 12
85
- }
86
- }
87
- }`);
88
- expect(parser.errors).to.be.empty;
89
- });
90
-
91
- it("forEachFn can be disabled", () => {
92
- const parser = parse(`foreach ([]|push:1|push:2|push:3|push:4) {
93
- disabled = true
94
- each as $item {
95
- var $x {
96
- value = 12
97
- }
98
- }
99
- }`);
100
- expect(parser.errors).to.be.empty;
101
- });
102
-
103
- it("forEachFn does requires an each as $item statement", () => {
104
- const parser = parse(`foreach ([]|push:1|push:2|push:3|push:4) {
105
- description = "foo"
106
- }`);
107
- expect(parser.errors).to.not.be.empty;
108
- });
109
- });
@@ -1,85 +0,0 @@
1
- import { expect } from "chai";
2
- import { describe, it } from "mocha";
3
- import { lexDocument } from "../../../lexer/lexer.js";
4
- import { parser } from "../../test_parser.js";
5
-
6
- function parse(inputText) {
7
- parser.reset();
8
- const lexResult = lexDocument(inputText);
9
- parser.input = lexResult.tokens;
10
- parser.forFn();
11
- return parser;
12
- }
13
-
14
- describe("forFn", () => {
15
- it("forFn can be an empty statement", () => {
16
- const parser = parse(`for (10) {
17
- each as $index
18
- }`);
19
- expect(parser.errors).to.be.empty;
20
- });
21
-
22
- it("forFn accept a stach statement (in each as $index)", () => {
23
- const parser = parse(`for (10) {
24
- each as $index {
25
- var $x {
26
- value = 12|add:$index
27
- }
28
- }
29
- }`);
30
- expect(parser.errors).to.be.empty;
31
- });
32
-
33
- it("forFn accept a default statement", () => {
34
- const parser = parse(`for (10) {
35
- each as $index {
36
- var $x2 {
37
- value = 12212|add:$index
38
- }
39
- }
40
- }`);
41
- expect(parser.errors).to.be.empty;
42
- });
43
-
44
- it("forFn accept break statement", () => {
45
- const parser = parse(`for (10) {
46
- each as $index {
47
- var $x {
48
- value = 12
49
- }
50
- }
51
- }`);
52
- expect(parser.errors).to.be.empty;
53
- });
54
-
55
- it("forFn accepts a description", () => {
56
- const parser = parse(`for (10) {
57
- description = "foo"
58
- each as $index {
59
- var $x {
60
- value = 12
61
- }
62
- }
63
- }`);
64
- expect(parser.errors).to.be.empty;
65
- });
66
-
67
- it("forFn can be disabled", () => {
68
- const parser = parse(`for (10) {
69
- disabled = true
70
- each as $index {
71
- var $x {
72
- value = 12
73
- }
74
- }
75
- }`);
76
- expect(parser.errors).to.be.empty;
77
- });
78
-
79
- it("forFn does requires an each as $index statement", () => {
80
- const parser = parse(`for (10) {
81
- description = "foo"
82
- }`);
83
- expect(parser.errors).to.not.be.empty;
84
- });
85
- });