@xano/xanoscript-language-server 11.12.2 → 12.0.0

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 (338) hide show
  1. package/onCheckError/onCheckError.js +35 -28
  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/regexp.spec.js +0 -84
  13. package/lexer/tests/query/query_lexer.spec.js +0 -36
  14. package/lexer/tests/query/valid_sources/basic_query.xs +0 -44
  15. package/lexer/tests/query/valid_sources/db_query.xs +0 -77
  16. package/lexer/tests/query/valid_sources/empty_query.xs +0 -5
  17. package/lexer/tests/query/valid_sources/header_query.xs +0 -15
  18. package/lexer/tests/table/basic_table.xs +0 -17
  19. package/lexer/tests/table/empty_table.xs +0 -3
  20. package/lexer/tests/table/table_lexer.spec.js +0 -324
  21. package/lexer/utils.spec.js +0 -61
  22. package/onCompletion/contentAssist.spec.js +0 -275
  23. package/onDefinition/onDefinition.spec.js +0 -313
  24. package/onHover/FilterMessageProvider.spec.js +0 -85
  25. package/onHover/FunctionMessageProvider.spec.js +0 -128
  26. package/onHover/InputFilterMessageProvider.spec.js +0 -329
  27. package/onHover/QueryFilterMessageProvider.spec.js +0 -164
  28. package/onHover/onHoverDocument.spec.js +0 -660
  29. package/parser/addon_parser.spec.js +0 -88
  30. package/parser/agent_parser.spec.js +0 -599
  31. package/parser/agent_trigger_parser.spec.js +0 -525
  32. package/parser/api_group_parser.spec.js +0 -137
  33. package/parser/attributes/columnDefaultValueAttribute.spec.js +0 -49
  34. package/parser/attributes/descriptionFieldAttribute.spec.js +0 -39
  35. package/parser/attributes/disabledFieldAttribute.spec.js +0 -34
  36. package/parser/attributes/docsFieldAttribute.spec.js +0 -44
  37. package/parser/attributes/guidFieldAttribute.spec.js +0 -93
  38. package/parser/attributes/inputFilterFn.spec.js +0 -39
  39. package/parser/attributes/sensitiveFieldAttribute.spec.js +0 -39
  40. package/parser/attributes/valueFieldAttribute.spec.js +0 -54
  41. package/parser/attributes/valuesFieldAttribute.spec.js +0 -44
  42. package/parser/attributes/visibilityFieldAttribute.spec.js +0 -44
  43. package/parser/branch_parser.spec.js +0 -34
  44. package/parser/clauses/agentClause.spec.js +0 -34
  45. package/parser/clauses/authClause.spec.js +0 -39
  46. package/parser/clauses/cacheClause.spec.js +0 -103
  47. package/parser/clauses/canonicalClause.spec.js +0 -34
  48. package/parser/clauses/channelClause.spec.js +0 -34
  49. package/parser/clauses/dbTableClause.spec.js +0 -34
  50. package/parser/clauses/historyClause.spec.js +0 -53
  51. package/parser/clauses/indexClause.spec.js +0 -47
  52. package/parser/clauses/inputClause.spec.js +0 -96
  53. package/parser/clauses/mcpServerClause.spec.js +0 -34
  54. package/parser/clauses/middlewareClause.spec.js +0 -161
  55. package/parser/clauses/nakedStackFn.spec.js +0 -73
  56. package/parser/clauses/responseClause.spec.js +0 -47
  57. package/parser/clauses/scheduleClause.spec.js +0 -71
  58. package/parser/clauses/schemaClause.spec.js +0 -102
  59. package/parser/clauses/testClause.spec.js +0 -69
  60. package/parser/clauses/viewClause.spec.js +0 -163
  61. package/parser/definitions/arraySlice.spec.js +0 -49
  62. package/parser/definitions/columnDefinition.spec.js +0 -199
  63. package/parser/definitions/dbLinkColumnDefinition.spec.js +0 -45
  64. package/parser/definitions/enumColumnDefinition.spec.js +0 -108
  65. package/parser/definitions/filterDefinition.spec.js +0 -43
  66. package/parser/definitions/objectColumnDefinition.spec.js +0 -118
  67. package/parser/function_parser.spec.js +0 -131
  68. package/parser/functions/actionCallFn.spec.js +0 -51
  69. package/parser/functions/addonCallFn.spec.js +0 -41
  70. package/parser/functions/ai/aiAgentRunFn.spec.js +0 -94
  71. package/parser/functions/ai/aiExternalMcpServerDetailsFn.spec.js +0 -85
  72. package/parser/functions/ai/aiExternalMcpToolListFn.spec.js +0 -85
  73. package/parser/functions/ai/aiExternalMcpToolRunFn.spec.js +0 -101
  74. package/parser/functions/aiFn.spec.js +0 -51
  75. package/parser/functions/api/apiCallFn.spec.js +0 -62
  76. package/parser/functions/api/apiLambdaFn.spec.js +0 -63
  77. package/parser/functions/api/apiRealtimeEventFn.spec.js +0 -82
  78. package/parser/functions/api/apiRequestFn.spec.js +0 -113
  79. package/parser/functions/api/apiStreamFn.spec.js +0 -44
  80. package/parser/functions/api/webflowRequestFn.spec.js +0 -114
  81. package/parser/functions/array/arrayDifferenceFn.spec.js +0 -34
  82. package/parser/functions/array/arrayFindFn.spec.js +0 -44
  83. package/parser/functions/array/arrayGroupByFn.spec.js +0 -41
  84. package/parser/functions/array/arrayIntersectionFn.spec.js +0 -22
  85. package/parser/functions/array/arrayMapFn.spec.js +0 -37
  86. package/parser/functions/array/arrayNoValueAs.spec.js +0 -56
  87. package/parser/functions/array/arrayPartitionFn.spec.js +0 -29
  88. package/parser/functions/array/arrayUnionFn.spec.js +0 -22
  89. package/parser/functions/array/arrayValueIfAs.spec.js +0 -54
  90. package/parser/functions/array/arrayValueOnly.spec.js +0 -61
  91. package/parser/functions/array/valueAttrOnly.spec.js +0 -61
  92. package/parser/functions/cloud/cloudAlgoliaRequestFn.spec.js +0 -30
  93. package/parser/functions/cloud/cloudAwsS3Fn.spec.js +0 -21
  94. package/parser/functions/cloud/cloudDeleteFileFn.spec.js +0 -25
  95. package/parser/functions/cloud/cloudGetFileInfoFn.spec.js +0 -25
  96. package/parser/functions/cloud/cloudListDirectoryFn.spec.js +0 -26
  97. package/parser/functions/cloud/cloudReadFileFn.spec.js +0 -25
  98. package/parser/functions/cloud/cloudSearchDocumentFn.spec.js +0 -28
  99. package/parser/functions/cloud/cloudSearchQueryFn.spec.js +0 -32
  100. package/parser/functions/cloud/cloudSearchRequestFn.spec.js +0 -32
  101. package/parser/functions/cloud/cloudSignUrlFn.spec.js +0 -26
  102. package/parser/functions/cloud/cloudStorageFn.spec.js +0 -21
  103. package/parser/functions/cloud/cloudUploadFileFn.spec.js +0 -29
  104. package/parser/functions/controls/awaitFn.spec.js +0 -48
  105. package/parser/functions/controls/conditionalFn.spec.js +0 -188
  106. package/parser/functions/controls/forEachFn.spec.js +0 -109
  107. package/parser/functions/controls/forFn.spec.js +0 -85
  108. package/parser/functions/controls/functionRunFn.spec.js +0 -87
  109. package/parser/functions/controls/groupFn.spec.js +0 -63
  110. package/parser/functions/controls/preconditionFn.spec.js +0 -107
  111. package/parser/functions/controls/returnFn.spec.js +0 -44
  112. package/parser/functions/controls/switchFn.spec.js +0 -118
  113. package/parser/functions/controls/throwFn.spec.js +0 -56
  114. package/parser/functions/controls/tryCatchFn.spec.js +0 -193
  115. package/parser/functions/controls/whileFn.spec.js +0 -94
  116. package/parser/functions/db/dbAddFn.spec.js +0 -72
  117. package/parser/functions/db/dbAddOrEditFn.spec.js +0 -97
  118. package/parser/functions/db/dbBulkAddFn.spec.js +0 -94
  119. package/parser/functions/db/dbBulkDeleteFn.spec.js +0 -28
  120. package/parser/functions/db/dbBulkPatchFn.spec.js +0 -42
  121. package/parser/functions/db/dbBulkUpdateFn.spec.js +0 -42
  122. package/parser/functions/db/dbDelFn.spec.js +0 -67
  123. package/parser/functions/db/dbDirectQueryFn.spec.js +0 -104
  124. package/parser/functions/db/dbEditFn.spec.js +0 -122
  125. package/parser/functions/db/dbExternalDirectQueryFn.spec.js +0 -103
  126. package/parser/functions/db/dbGetFn.spec.js +0 -117
  127. package/parser/functions/db/dbHasFn.spec.js +0 -62
  128. package/parser/functions/db/dbPatchFn.spec.js +0 -88
  129. package/parser/functions/db/dbQueryFn.spec.js +0 -380
  130. package/parser/functions/db/dbSchemaFn.spec.js +0 -42
  131. package/parser/functions/db/dbSetDatasourceFn.spec.js +0 -44
  132. package/parser/functions/db/dbTransactionFn.spec.js +0 -63
  133. package/parser/functions/db/dbTruncateFn.spec.js +0 -42
  134. package/parser/functions/debug/debugLogFn.spec.js +0 -44
  135. package/parser/functions/debug/debugStopFn.spec.js +0 -44
  136. package/parser/functions/expect/unitExpectToBeWithinFn.spec.js +0 -63
  137. package/parser/functions/expect/unitExpectToThrowFn.spec.js +0 -40
  138. package/parser/functions/expect/unitExpectWithArgumentsFn.spec.js +0 -355
  139. package/parser/functions/expect/unitExpectWithoutArgumentsFn.spec.js +0 -69
  140. package/parser/functions/expect/workflowExpectToBeWithinFn.spec.js +0 -70
  141. package/parser/functions/expect/workflowExpectToThrowFn.spec.js +0 -56
  142. package/parser/functions/expect/workflowExpectWithArgumentsFn.spec.js +0 -308
  143. package/parser/functions/expect/workflowExpectWithoutArgumentsFn.spec.js +0 -87
  144. package/parser/functions/math/allMathFn.spec.js +0 -100
  145. package/parser/functions/middlewareCallFn.spec.js +0 -44
  146. package/parser/functions/object/objectEntriesFn.spec.js +0 -44
  147. package/parser/functions/object/objectKeysFn.spec.js +0 -44
  148. package/parser/functions/object/objectValuesFn.spec.js +0 -44
  149. package/parser/functions/redis/redisCountFn.spec.js +0 -58
  150. package/parser/functions/redis/redisDecrFn.spec.js +0 -47
  151. package/parser/functions/redis/redisDelFn.spec.js +0 -58
  152. package/parser/functions/redis/redisGetFn.spec.js +0 -67
  153. package/parser/functions/redis/redisHasFn.spec.js +0 -58
  154. package/parser/functions/redis/redisIncrFn.spec.js +0 -74
  155. package/parser/functions/redis/redisKeysFn.spec.js +0 -67
  156. package/parser/functions/redis/redisPopFn.spec.js +0 -75
  157. package/parser/functions/redis/redisPushFn.spec.js +0 -71
  158. package/parser/functions/redis/redisRangeFn.spec.js +0 -80
  159. package/parser/functions/redis/redisRateLimitFn.spec.js +0 -87
  160. package/parser/functions/redis/redisRemoveFn.spec.js +0 -65
  161. package/parser/functions/redis/redisSetFn.spec.js +0 -89
  162. package/parser/functions/redis/redisShiftFn.spec.js +0 -75
  163. package/parser/functions/redis/redisUnshiftFn.spec.js +0 -73
  164. package/parser/functions/schema/schemaFn.spec.js +0 -92
  165. package/parser/functions/schema/schemaParseArrayFn.spec.js +0 -134
  166. package/parser/functions/schema/schemaParseAttributeFn.spec.js +0 -285
  167. package/parser/functions/schema/schemaParseConstantFn.spec.js +0 -122
  168. package/parser/functions/schema/schemaParseEnum.spec.js +0 -47
  169. package/parser/functions/schema/schemaParseImmutableFn.spec.js +0 -99
  170. package/parser/functions/schema/schemaParseObjectFn.spec.js +0 -223
  171. package/parser/functions/schema/utils.spec.js +0 -27
  172. package/parser/functions/security/securityCheckPasswordFn.spec.js +0 -22
  173. package/parser/functions/security/securityCreateAuthTokenFn.spec.js +0 -51
  174. package/parser/functions/security/securityCreateCurveKeyFn.spec.js +0 -22
  175. package/parser/functions/security/securityCreatePasswordFn.spec.js +0 -26
  176. package/parser/functions/security/securityCreateRsaKeyFn.spec.js +0 -22
  177. package/parser/functions/security/securityCreateSecretKeyFn.spec.js +0 -22
  178. package/parser/functions/security/securityCreateUuidFn.spec.js +0 -27
  179. package/parser/functions/security/securityDecryptFn.spec.js +0 -24
  180. package/parser/functions/security/securityEncryptFn.spec.js +0 -24
  181. package/parser/functions/security/securityJweDecodeFn.spec.js +0 -26
  182. package/parser/functions/security/securityJweDecodeLegacyFn.spec.js +0 -26
  183. package/parser/functions/security/securityJweEncodeFn.spec.js +0 -26
  184. package/parser/functions/security/securityJweEncodeLegacyFn.spec.js +0 -25
  185. package/parser/functions/security/securityJwsDecodeFn.spec.js +0 -25
  186. package/parser/functions/security/securityJwsEncodeFn.spec.js +0 -25
  187. package/parser/functions/security/securityRandomBytesFn.spec.js +0 -21
  188. package/parser/functions/security/securityRandomNumberFn.spec.js +0 -22
  189. package/parser/functions/storage/storageCreateAttachmentFn.spec.js +0 -87
  190. package/parser/functions/storage/storageCreateAudioFn.spec.js +0 -98
  191. package/parser/functions/storage/storageCreateFileResourceFn.spec.js +0 -72
  192. package/parser/functions/storage/storageCreateImageFn.spec.js +0 -98
  193. package/parser/functions/storage/storageCreateVideoFn.spec.js +0 -99
  194. package/parser/functions/storage/storageDeleteFileFn.spec.js +0 -67
  195. package/parser/functions/storage/storageReadFileResourceFn.spec.js +0 -60
  196. package/parser/functions/storage/storageSignPrivateUrlFn.spec.js +0 -72
  197. package/parser/functions/stream/streamFromCsvFn.spec.js +0 -69
  198. package/parser/functions/stream/streamFromJsonlFn.spec.js +0 -47
  199. package/parser/functions/stream/streamFromRequestFn.spec.js +0 -103
  200. package/parser/functions/text/allTextWithReturnValueFn.spec.js +0 -100
  201. package/parser/functions/text/allTextWithoutReturnValueFn.spec.js +0 -122
  202. package/parser/functions/toolCallFn.spec.js +0 -28
  203. package/parser/functions/triggerCallFn.spec.js +0 -51
  204. package/parser/functions/unitExpectFn.spec.js +0 -21
  205. package/parser/functions/util/utilGeoDistanceFn.spec.js +0 -79
  206. package/parser/functions/util/utilGetAllInputFn.spec.js +0 -33
  207. package/parser/functions/util/utilGetEnvFn.spec.js +0 -33
  208. package/parser/functions/util/utilGetRawInputFn.spec.js +0 -62
  209. package/parser/functions/util/utilGetVarsFn.spec.js +0 -33
  210. package/parser/functions/util/utilIpLookupFn.spec.js +0 -37
  211. package/parser/functions/util/utilPostProcessFn.spec.js +0 -63
  212. package/parser/functions/util/utilSendEmailFn.spec.js +0 -62
  213. package/parser/functions/util/utilSetHeaderFn.spec.js +0 -48
  214. package/parser/functions/util/utilSleepFn.spec.js +0 -44
  215. package/parser/functions/util/utilTemplateFn.spec.js +0 -78
  216. package/parser/functions/varFn.spec.js +0 -332
  217. package/parser/functions/workflowExpectFn.spec.js +0 -32
  218. package/parser/functions/zip/zipAddToArchiveFn.spec.js +0 -78
  219. package/parser/functions/zip/zipCreateArchiveFn.spec.js +0 -53
  220. package/parser/functions/zip/zipDeleteFromArchiveFn.spec.js +0 -69
  221. package/parser/functions/zip/zipExtractFn.spec.js +0 -52
  222. package/parser/functions/zip/zipViewContentsFn.spec.js +0 -52
  223. package/parser/generic/arrayWithValues.spec.js +0 -72
  224. package/parser/generic/asVariable.spec.js +0 -117
  225. package/parser/generic/assignableVariableAs.spec.js +0 -126
  226. package/parser/generic/assignableVariableProperty.spec.js +0 -138
  227. package/parser/generic/castedValue.spec.js +0 -29
  228. package/parser/generic/chainedIdentifier.spec.js +0 -89
  229. package/parser/generic/completeAuthVariable.spec.js +0 -23
  230. package/parser/generic/completeEnvVariable.spec.js +0 -99
  231. package/parser/generic/completeErrorVariable.spec.js +0 -17
  232. package/parser/generic/completeInputVariable.spec.js +0 -53
  233. package/parser/generic/expressionFn.spec.js +0 -605
  234. package/parser/generic/filterFn.spec.js +0 -47
  235. package/parser/generic/functionAttrReq.spec.js +0 -353
  236. package/parser/generic/longFormVariable.spec.js +0 -25
  237. package/parser/generic/minimalFnBody.spec.js +0 -47
  238. package/parser/generic/mockAttribute.spec.js +0 -57
  239. package/parser/generic/multilineFilterFn.spec.js +0 -51
  240. package/parser/generic/objectWithAttributes.spec.js +0 -147
  241. package/parser/generic/requiredValueFnBody.spec.js +0 -56
  242. package/parser/generic/shortFormVariable.spec.js +0 -27
  243. package/parser/generic/stringArray.spec.js +0 -55
  244. package/parser/generic/tagsAttribute.spec.js +0 -47
  245. package/parser/generic/variableOnly.spec.js +0 -47
  246. package/parser/mcp_server_parser.spec.js +0 -478
  247. package/parser/mcp_server_trigger_parser.spec.js +0 -396
  248. package/parser/metadata/columnMetadataDefinition.spec.js +0 -47
  249. package/parser/metadata/enumColumnMetadataDefinition.spec.js +0 -81
  250. package/parser/middleware_parser.spec.js +0 -230
  251. package/parser/multidoc.spec.js +0 -946
  252. package/parser/query_parser.spec.js +0 -202
  253. package/parser/realtime_channel_parser.spec.js +0 -20
  254. package/parser/realtime_trigger_parser.spec.js +0 -469
  255. package/parser/run_parser.spec.js +0 -100
  256. package/parser/table_parser.spec.js +0 -176
  257. package/parser/table_trigger_parser.spec.js +0 -478
  258. package/parser/task_parser.spec.js +0 -94
  259. package/parser/tests/agent/agent_parser.spec.js +0 -52
  260. package/parser/tests/agent/valid_sources/customer_servier_agent.xs +0 -45
  261. package/parser/tests/api_group/api_group_parser.spec.js +0 -52
  262. package/parser/tests/api_group/valid_sources/api_group_history.xs +0 -4
  263. package/parser/tests/api_group/valid_sources/basic_api_group.xs +0 -3
  264. package/parser/tests/api_group/valid_sources/complete_api_group.xs +0 -7
  265. package/parser/tests/api_group/valid_sources/protected_api_group.xs +0 -7
  266. package/parser/tests/function/function_parser.spec.js +0 -52
  267. package/parser/tests/function/valid_sources/all_controls.xs +0 -68
  268. package/parser/tests/function/valid_sources/all_query_return_types.xs +0 -227
  269. package/parser/tests/function/valid_sources/all_storage.xs +0 -45
  270. package/parser/tests/function/valid_sources/discord_poll_send_to_slack.xs +0 -133
  271. package/parser/tests/function/valid_sources/expression_in_response.xs +0 -22
  272. package/parser/tests/function/valid_sources/filter_by_value.xs +0 -55
  273. package/parser/tests/function/valid_sources/filter_query.xs +0 -82
  274. package/parser/tests/function/valid_sources/large_regex.xs +0 -13
  275. package/parser/tests/function/valid_sources/ledash_ends_with.xs +0 -90
  276. package/parser/tests/function/valid_sources/multiline_description.xs +0 -28
  277. package/parser/tests/function/valid_sources/multiline_expr.xs +0 -41
  278. package/parser/tests/function/valid_sources/set_theory_fn.xs +0 -129
  279. package/parser/tests/function/valid_sources/simple_unit_test.xs +0 -33
  280. package/parser/tests/function/valid_sources/valid_officer.xs +0 -57
  281. package/parser/tests/function/valid_sources/webflow.xs +0 -18
  282. package/parser/tests/query/query_parser.spec.js +0 -54
  283. package/parser/tests/query/valid_sources/all_basics.xs +0 -51
  284. package/parser/tests/query/valid_sources/all_cloud.xs +0 -141
  285. package/parser/tests/query/valid_sources/all_db.xs +0 -102
  286. package/parser/tests/query/valid_sources/all_external_db.xs +0 -43
  287. package/parser/tests/query/valid_sources/all_keywords.xs +0 -65
  288. package/parser/tests/query/valid_sources/all_math.xs +0 -53
  289. package/parser/tests/query/valid_sources/all_object.xs +0 -25
  290. package/parser/tests/query/valid_sources/all_redis.xs +0 -106
  291. package/parser/tests/query/valid_sources/all_security.xs +0 -105
  292. package/parser/tests/query/valid_sources/all_stream.xs +0 -69
  293. package/parser/tests/query/valid_sources/all_text.xs +0 -54
  294. package/parser/tests/query/valid_sources/all_util.xs +0 -66
  295. package/parser/tests/query/valid_sources/all_zip.xs +0 -39
  296. package/parser/tests/query/valid_sources/arrays.xs +0 -33
  297. package/parser/tests/query/valid_sources/disabled_response.xs +0 -27
  298. package/parser/tests/query/valid_sources/multiline_lambda_GET.xs +0 -50
  299. package/parser/tests/query/valid_sources/mutliline_query.xs +0 -140
  300. package/parser/tests/query/valid_sources/patch_expression_multiline.xs +0 -27
  301. package/parser/tests/query/valid_sources/query_cache.xs +0 -34
  302. package/parser/tests/query/valid_sources/query_example.xs +0 -43
  303. package/parser/tests/query/valid_sources/query_mini.xs +0 -11
  304. package/parser/tests/query/valid_sources/query_rich_inputs.xs +0 -32
  305. package/parser/tests/query/valid_sources/simple_unit_test.xs +0 -33
  306. package/parser/tests/query/valid_sources/test_with_slashes.xs +0 -22
  307. package/parser/tests/query/valid_sources/with_unit_test.xs +0 -97
  308. package/parser/tests/table/table_parser.spec.js +0 -52
  309. package/parser/tests/table/valid_sources/account.xs +0 -31
  310. package/parser/tests/table/valid_sources/all_basic_columns.xs +0 -44
  311. package/parser/tests/table/valid_sources/basic_table.xs +0 -15
  312. package/parser/tests/table/valid_sources/empty_object.xs +0 -17
  313. package/parser/tests/table/valid_sources/empty_table.xs +0 -3
  314. package/parser/tests/table/valid_sources/multiline_index.xs +0 -33
  315. package/parser/tests/table/valid_sources/relation.xs +0 -44
  316. package/parser/tests/table/valid_sources/rich_columns.xs +0 -31
  317. package/parser/tests/table/valid_sources/table_with_comments.xs +0 -17
  318. package/parser/tests/table/valid_sources/table_with_search_index.xs +0 -31
  319. package/parser/tests/table/valid_sources/view_table.xs +0 -62
  320. package/parser/tests/task/task_parser.spec.js +0 -53
  321. package/parser/tests/task/valid_sources/active_event.xs +0 -11
  322. package/parser/tests/task/valid_sources/all_events.xs +0 -17
  323. package/parser/tests/task/valid_sources/create_leak.xs +0 -165
  324. package/parser/tests/task/valid_sources/daily_sales_report.xs +0 -56
  325. package/parser/tests/task/valid_sources/inactive_event.xs +0 -11
  326. package/parser/tests/variable_test/coverage_check.xs +0 -293
  327. package/parser/tests/workflow_test/valid_sources/basic_workflow_test.xs +0 -13
  328. package/parser/tests/workflow_test/workflow_test_parser.spec.js +0 -52
  329. package/parser/tool_parser.spec.js +0 -115
  330. package/parser/variableValidator.spec.js +0 -179
  331. package/parser/workflow_test_parser.spec.js +0 -136
  332. package/parser/workspace_parser.spec.js +0 -142
  333. package/parser/workspace_trigger_parser.spec.js +0 -332
  334. package/toTmLanguage.js +0 -75
  335. package/utils.spec.js +0 -369
  336. package/workspace/crossFileValidator.spec.js +0 -654
  337. package/workspace/referenceTracking.spec.js +0 -420
  338. package/workspace/workspaceIndex.spec.js +0 -189
@@ -1,97 +0,0 @@
1
- query list_applications verb=GET {
2
- description = "List adoption applications with optional filters (status, pet, user)"
3
- auth = "user"
4
-
5
- input {
6
- int id
7
- int? pet_id? {
8
- table = "pet"
9
- description = "Filter by pet (optional)"
10
- }
11
-
12
- int? user_id? {
13
- table = "user"
14
- description = "Filter by applicant (optional)"
15
- }
16
-
17
- enum? status? {
18
- values = ["pending", "approved", "denied", "withdrawn", "completed"]
19
- description = "Filter by status (optional)"
20
- }
21
-
22
- int page?=1 {
23
- description = "Page number (default 1)"
24
- }
25
-
26
- int per_page?=20 {
27
- description = "Items per page (default 20)"
28
- }
29
- }
30
-
31
- stack {
32
- db.query adoption_application {
33
- where = $db.adoption_application.pet_id ==? $input.pet_id && $db.adoption_application.user_id ==? $input.user_id && $db.adoption_application.status ==? $input.status
34
- sort = {submitted_at: "desc"}
35
- return = {
36
- type : "list"
37
- paging: {
38
- page : $input.page
39
- per_page: $input.per_page
40
- totals : true
41
- }
42
- }
43
-
44
- mock = { test: '{"foo":"bar"}'|json_decode }
45
- } as $applications
46
- }
47
-
48
- response = $applications
49
- history = "inherit"
50
-
51
- test test {
52
- datasource = "live"
53
- input = {
54
- pet_id : null
55
- user_id : null
56
- status : null
57
- page : 1
58
- per_page: 20
59
- }
60
-
61
- expect.to_equal ($response.itemsReceived) {
62
- value = 7
63
- }
64
-
65
- expect.to_equal ($response.curPage) {
66
- value = 1
67
- }
68
-
69
- expect.to_equal ($response.nextPage) {
70
- value = null
71
- }
72
-
73
- expect.to_equal ($response.prevPage) {
74
- value = null
75
- }
76
-
77
- expect.to_equal ($response.offset) {
78
- value = 0
79
- }
80
-
81
- expect.to_equal ($response.perPage) {
82
- value = 20
83
- }
84
-
85
- expect.to_equal ($response.itemsTotal) {
86
- value = 7
87
- }
88
-
89
- expect.to_equal ($response.pageTotal) {
90
- value = 1
91
- }
92
-
93
- expect.to_equal ($response.items) {
94
- value = '[{"id":7,"pet_id":2,"user_id":2,"status":"pending","notes":"","submitted_at":1760221727254,"reviewed_at":0,"updated_at":1760221727254},{"id":6,"pet_id":1,"user_id":1,"status":"pending","notes":"","submitted_at":1760221727254,"reviewed_at":0,"updated_at":1760221727254},{"id":5,"pet_id":5,"user_id":5,"status":"completed","notes":"Shadow adopted successfully.","submitted_at":1759672800000,"reviewed_at":1759748400000,"updated_at":1760132298535},{"id":4,"pet_id":4,"user_id":4,"status":"withdrawn","notes":"Sunny\'s application withdrawn by user.","submitted_at":1759582800000,"reviewed_at":0,"updated_at":1760132298535},{"id":3,"pet_id":3,"user_id":3,"status":"denied","notes":"No suitable home for Thumper.","submitted_at":1759492800000,"reviewed_at":1759572000000,"updated_at":1760132298535},{"id":2,"pet_id":2,"user_id":2,"status":"approved","notes":"Carol\'s application for Mittens.","submitted_at":1759402800000,"reviewed_at":1759482000000,"updated_at":1760132298535},{"id":1,"pet_id":1,"user_id":1,"status":"pending","notes":"First application for Buddy.","submitted_at":1759312800000,"reviewed_at":0,"updated_at":1760132298535}]'|json_decode
95
- }
96
- }
97
- }
@@ -1,52 +0,0 @@
1
- import { expect } from "chai";
2
- import { readdirSync, readFileSync } from "fs";
3
- import { truncate } from "lodash-es";
4
- import { describe, it } from "mocha";
5
- import { dirname, join } from "path";
6
- import { xanoscriptParser } from "../../parser.js";
7
-
8
- describe("Xanoscript Table Parser", () => {
9
- it("parses all the valid sources", () => {
10
- const errors = [];
11
- const files = readdirSync(
12
- join(dirname("./"), "parser/tests/table/valid_sources")
13
- );
14
- files.forEach((file) => {
15
- const source = readFileSync(
16
- join(dirname("./"), "parser/tests/table/valid_sources", file),
17
- "utf8"
18
- );
19
- const parser = xanoscriptParser(source);
20
-
21
- if (parser.errors.length > 0) {
22
- parser.errors.forEach((error) => {
23
- errors.push({
24
- previous: error.previousToken
25
- ? `${error.previousToken.tokenType.name} (${truncate(
26
- error.previousToken.image,
27
- {
28
- length: 20,
29
- }
30
- )})`
31
- : "N/A",
32
- file: `parser/tests/table/valid_sources/${file}:${error.token.startLine}:${error.token.startColumn}`,
33
- stack: parser.sectionStack[parser.sectionStack.length - 1],
34
- message: truncate(error.message, { length: 50 }),
35
- token: `${error.token.tokenType.name} (${truncate(
36
- error.token.image,
37
- {
38
- length: 20,
39
- }
40
- )})`,
41
- });
42
- });
43
- }
44
- });
45
-
46
- if (errors.length > 0) {
47
- console.table(errors);
48
- }
49
-
50
- expect(errors).to.be.empty;
51
- });
52
- });
@@ -1,31 +0,0 @@
1
- table accounts {
2
- description = "Stores account information for B2B SaaS."
3
- schema {
4
- int id {
5
- description = "Primary key for the account."
6
- }
7
- text name filters=trim {
8
- description = "Name of the account."
9
- }
10
- text industry? filters=trim {
11
- description = "Industry of the account (optional)."
12
- }
13
- text location? filters=trim {
14
- description = "Location of the account (optional)."
15
- }
16
- timestamp created_at?=now {
17
- description = "Timestamp when the account was created."
18
- }
19
- timestamp updated_at?=now {
20
- description = "Timestamp when the account was last updated."
21
- }
22
- timestamp deleted_at? {
23
- description = "Timestamp when the account was deleted (soft delete)."
24
- }
25
- }
26
- index = [
27
- {type: "primary", field: [{name: "id"}]},
28
- {type: "btree", field: [{name: "name", op: "asc"}]},
29
- {type: "btree", field: [{name: "created_at", op: "desc"}]}
30
- ]
31
- }
@@ -1,44 +0,0 @@
1
- table all_basic_columns {
2
- auth = false
3
-
4
- schema {
5
- int id
6
- timestamp created_at?=now
7
- text text_column?=foo filters=trim
8
- int int_column?
9
- uuid ?uuid_column?
10
- object object_column? {
11
- schema {
12
- int int_column?
13
- }
14
- }
15
-
16
- vector ?vector_column?
17
- enum enum_column? {
18
- values = ["true", "false"]
19
- }
20
-
21
- enum status?=queued {
22
- values=["queued", "sent", "failed"]
23
- description = "Email status."
24
- }
25
-
26
- date ?date_column?
27
- bool boolean_column?
28
- decimal decimal_column?
29
- email email_column? filters=trim|lower
30
- password password_column? {
31
- sensitive = true
32
- description = "foo"
33
- }
34
-
35
- json json_column?
36
- int reference_column? filters=@:dbo=36
37
- }
38
-
39
- index = [
40
- {type: "primary", field: [{name: "id"}]}
41
- {type: "gin", field: [{name: "xdo", op: "jsonb_path_op"}]}
42
- {type: "btree", field: [{name: "created_at", op: "desc"}]}
43
- ]
44
- }
@@ -1,15 +0,0 @@
1
- table empty {
2
- auth = true
3
- tags = ["empty"]
4
-
5
- schema {
6
- int id
7
- timestamp created_at?=now
8
- }
9
-
10
- index = [
11
- {type: "primary", field: [{name: "id"}]}
12
- {type: "gin", field: [{name: "xdo", op: "jsonb_path_op"}]}
13
- {type: "btree", field: [{name: "created_at", op: "desc"}]}
14
- ]
15
- }
@@ -1,17 +0,0 @@
1
- table test_object {
2
- auth = false
3
- schema {
4
- int id
5
- timestamp created_at?=now
6
- object test? {
7
- schema
8
- }
9
- }
10
-
11
- index = [
12
- {type: "primary", field: [{name: "id"}]}
13
- {type: "gin", field: [{name: "xdo", op: "jsonb_path_op"}]}
14
- {type: "btree", field: [{name: "created_at", op: "desc"}]}
15
- ]
16
-
17
- }
@@ -1,3 +0,0 @@
1
- table empty {
2
- auth = false
3
- }
@@ -1,33 +0,0 @@
1
- table book_club_meeting_registration {
2
- auth = false
3
- schema {
4
- int id {
5
- description = "Unique identifier for the registration"
6
- }
7
-
8
- int meeting_id {
9
- description = "ID of the book club meeting"
10
- }
11
-
12
- int member_id {
13
- description = "ID of the book club member"
14
- }
15
-
16
- timestamp registered_at?=now {
17
- description = "Timestamp when the registration was created"
18
- }
19
- }
20
-
21
- index = [
22
- {type: "primary", field: [{name: "id"}]}
23
- {type: "gin", field: [{name: "xdo", op: "jsonb_path_op"}]}
24
- {
25
- type : "btree"
26
- field: [
27
- {name: "meeting_id", op: "asc"}
28
- {name: "member_id", op: "asc"}
29
- ]
30
- }
31
- ]
32
-
33
- }
@@ -1,44 +0,0 @@
1
- table beer {
2
- auth = false
3
- schema {
4
- int id {
5
- description = "Unique identifier for the beer"
6
- }
7
-
8
- timestamp created_at?=now {
9
- description = "Timestamp when the beer was added"
10
- }
11
-
12
- text name? {
13
- description = "Name of the beer"
14
- }
15
-
16
- text style? {
17
- description = "Style or category of the beer (e.g., IPA, Lager)"
18
- }
19
-
20
- decimal abv? {
21
- description = "Alcohol by volume percentage of the beer"
22
- }
23
-
24
- int ibu? {
25
- description = "International Bitterness Units (IBU) of the beer"
26
- }
27
-
28
- text description? {
29
- description = "Optional description or notes about the beer"
30
- }
31
-
32
- int brewery_id? {
33
- table = "brewery"
34
- description = "Identifier for the brewery that produces the beer"
35
- }
36
- }
37
-
38
- index = [
39
- {type: "primary", field: [{name: "id"}]}
40
- {type: "gin", field: [{name: "xdo", op: "jsonb_path_op"}]}
41
- {type: "btree", field: [{name: "created_at", op: "desc"}]}
42
- ]
43
-
44
- }
@@ -1,31 +0,0 @@
1
- table array_columns {
2
- auth = false
3
-
4
- schema {
5
- int id
6
- timestamp created_at?=now {
7
- visibility = "internal"
8
- }
9
- text[] many_text? filters=trim
10
- email[] many_email_required_sensitive filters=trim|lower {
11
- description = "with a description"
12
- sensitive = true
13
- visibility = "private"
14
- }
15
-
16
- enum[] many_enum_required_private {
17
- values = ["yes", "no"]
18
- description = "Some description here"
19
- }
20
-
21
- int[] ?many_number_nullable_sensitive_internal? {
22
- sensitive = true
23
- }
24
- }
25
-
26
- index = [
27
- {type: "primary", field: [{name: "id"}]}
28
- {type: "gin", field: [{name: "xdo", op: "jsonb_path_op"}]}
29
- {type: "btree", field: [{name: "created_at", op: "desc"}]}
30
- ]
31
- }
@@ -1,17 +0,0 @@
1
- table empty {
2
- auth = true
3
- tags = ["empty"]
4
-
5
- schema {
6
- // the id
7
- int id
8
- // creation timestamp
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,31 +0,0 @@
1
- // Stores information about accounts that users belong to hello
2
- table account {
3
- auth = false
4
-
5
- schema {
6
- int id
7
- timestamp created_at?=now
8
-
9
- // The name of the company.
10
- text name? filters=trim
11
-
12
- // A brief description of the company.
13
- text description? filters=trim
14
-
15
- text location? filters=trim
16
- }
17
-
18
- index = [
19
- {type: "primary", field: [{name: "id"}]}
20
- {type: "gin", field: [{name: "xdo", op: "jsonb_path_op"}]}
21
- {type: "btree", field: [{name: "created_at", op: "desc"}]}
22
- {
23
- name : "search1"
24
- lang : "simple"
25
- type : "search"
26
- field: [{name: "name", op: "A"}]
27
- }
28
- ]
29
-
30
- tags = ["xano:quick-start"]
31
- }
@@ -1,62 +0,0 @@
1
- table Products {
2
- auth = false
3
-
4
- schema {
5
- int id
6
- timestamp created_at?=now
7
- int supplier_id? {
8
- table = "Organizations"
9
- }
10
-
11
- text? name?
12
- vector? name_vector? {
13
- size = 1536
14
- }
15
- bool hide?
16
- }
17
-
18
- index = [
19
- {type: "primary", field: [{name: "id"}]}
20
- {type: "gin", field: [{name: "xdo", op: "jsonb_path_op"}]}
21
- {type: "btree", field: [{name: "created_at", op: "desc"}]}
22
- {
23
- type : "vector"
24
- field: [{name: "name_vector", op: "vector_ip_ops"}]
25
- }
26
- {type: "btree", field: [{name: "supplier_id", op: "asc"}]}
27
- {
28
- type : "btree"
29
- field: [
30
- {name: "product_category_id", op: "asc"}
31
- {name: "supplier_id", op: "asc"}
32
- ]
33
- }
34
- {
35
- type : "btree"
36
- field: [{name: "owner_organization_id", op: "asc"}]
37
- }
38
- {
39
- type : "btree"
40
- field: [
41
- {name: "owner_organization_id", op: "asc"}
42
- {name: "supplier_id", op: "asc"}
43
- ]
44
- }
45
- ]
46
-
47
- view = {
48
- "my view": {
49
- sort: {id: "asc"}
50
- hide: ["created_at"]
51
- id : "5f6573ca-75f6-4025-bdbc-9ab47c558a5c"
52
- }
53
- view_1: {
54
- sort: {id: "asc"}
55
- hide: [
56
- "created_at"
57
- "supplier_id"
58
- ]
59
- id : "a1e5b116-9f82-4ae4-aa64-eac6cd14154e"
60
- }
61
- }
62
- }
@@ -1,53 +0,0 @@
1
- import { expect } from "chai";
2
- import { readdirSync, readFileSync } from "fs";
3
- import { truncate } from "lodash-es";
4
- import { describe, it } from "mocha";
5
- import { dirname, join } from "path";
6
- import { xanoscriptParser } from "../../parser.js";
7
-
8
- describe("Xanoscript Task Parser", () => {
9
- it("parses all the valid sources", () => {
10
- const errors = [];
11
- const files = readdirSync(
12
- join(dirname("./"), "parser/tests/task/valid_sources")
13
- );
14
-
15
- files.forEach((file) => {
16
- const source = readFileSync(
17
- join(dirname("./"), "parser/tests/task/valid_sources", file),
18
- "utf8"
19
- );
20
- const parser = xanoscriptParser(source);
21
-
22
- if (parser.errors.length > 0) {
23
- parser.errors.forEach((error) => {
24
- errors.push({
25
- previous: error.previousToken
26
- ? `${error.previousToken.tokenType.name} (${truncate(
27
- error.previousToken.image,
28
- {
29
- length: 20,
30
- }
31
- )})`
32
- : "N/A",
33
- file: `parser/tests/task/valid_sources/${file}:${error.token.startLine}:${error.token.startColumn}`,
34
- stack: parser.sectionStack[parser.sectionStack.length - 1],
35
- message: truncate(error.message, { length: 50 }),
36
- token: `${error.token.tokenType.name} (${truncate(
37
- error.token.image,
38
- {
39
- length: 20,
40
- }
41
- )})`,
42
- });
43
- });
44
- }
45
- });
46
-
47
- if (errors.length > 0) {
48
- console.table(errors);
49
- }
50
-
51
- expect(errors).to.be.empty;
52
- });
53
- });
@@ -1,11 +0,0 @@
1
- task "my_test_task" {
2
- active = true
3
-
4
- stack {
5
- }
6
-
7
- schedule = [{starts_on: 2025-08-27 20:13:22+0000, freq: 86400}]
8
-
9
- history = "inherit"
10
-
11
- }
@@ -1,17 +0,0 @@
1
- task "list dogs" {
2
- stack {
3
- db.query client {
4
- description = "Some description"
5
- } as $clients
6
- }
7
-
8
- schedule = [
9
- {starts_on: 2025-03-17 18:33:50+0000}
10
- {starts_on: 2025-03-17 18:33:55+0000, freq: 172800}
11
- {
12
- starts_on: 2025-03-17 18:34:02+0000,
13
- freq : 604800,
14
- ends_on : 2029-03-15 18:34:02+0000
15
- }
16
- ]
17
- }