windmill-components 1.665.1 → 1.677.1

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 (253) hide show
  1. package/dist/sharedUtils/assets/tokens/colorTokensConfig.d.ts +2 -0
  2. package/dist/sharedUtils/base.d.ts +1 -0
  3. package/dist/sharedUtils/cloud.d.ts +1 -0
  4. package/dist/sharedUtils/common.d.ts +111 -0
  5. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/count.d.ts +5 -0
  6. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/delete.d.ts +5 -0
  7. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/insert.d.ts +5 -0
  8. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/select.d.ts +13 -0
  9. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/update.d.ts +11 -0
  10. package/dist/sharedUtils/components/apps/components/display/dbtable/utils.d.ts +95 -0
  11. package/dist/sharedUtils/components/apps/editor/appPolicy.d.ts +6 -0
  12. package/dist/sharedUtils/components/apps/editor/appUtilsCore.d.ts +7 -0
  13. package/dist/sharedUtils/components/apps/editor/appUtilsS3.d.ts +33 -0
  14. package/dist/sharedUtils/components/apps/editor/commonAppUtils.d.ts +10 -0
  15. package/dist/sharedUtils/components/apps/editor/component/components.d.ts +5371 -0
  16. package/dist/sharedUtils/components/apps/editor/component/default-codes.d.ts +3 -0
  17. package/dist/sharedUtils/components/apps/editor/component/index.d.ts +3 -0
  18. package/dist/sharedUtils/components/apps/editor/component/sets.d.ts +7 -0
  19. package/dist/sharedUtils/components/apps/editor/componentsPanel/componentDefaultProps.d.ts +3 -0
  20. package/dist/sharedUtils/components/apps/gridUtils.d.ts +14 -0
  21. package/dist/sharedUtils/components/apps/inputType.d.ts +178 -0
  22. package/dist/sharedUtils/components/apps/rx.d.ts +29 -0
  23. package/dist/sharedUtils/components/apps/sharedTypes.d.ts +21 -0
  24. package/dist/sharedUtils/components/apps/types.d.ts +274 -0
  25. package/dist/sharedUtils/components/assets/lib.d.ts +25 -0
  26. package/dist/sharedUtils/components/common/alert/model.d.ts +2 -0
  27. package/dist/sharedUtils/components/common/badge/model.d.ts +8 -0
  28. package/dist/sharedUtils/components/common/button/model.d.ts +45 -0
  29. package/dist/sharedUtils/components/common/fileInput/model.d.ts +1 -0
  30. package/dist/sharedUtils/components/common/index.d.ts +24 -0
  31. package/dist/sharedUtils/components/common/skeleton/model.d.ts +21 -0
  32. package/dist/sharedUtils/components/dbTypes.d.ts +14 -0
  33. package/dist/sharedUtils/components/diff_drawer.d.ts +26 -0
  34. package/dist/sharedUtils/components/ducklake.d.ts +1 -0
  35. package/dist/sharedUtils/components/flows/scheduleUtils.d.ts +7 -0
  36. package/dist/sharedUtils/components/icons/index.d.ts +101 -0
  37. package/dist/sharedUtils/components/random_positive_adjetive.d.ts +1 -0
  38. package/dist/sharedUtils/components/raw_apps/rawAppPolicy.d.ts +10 -0
  39. package/dist/sharedUtils/components/raw_apps/utils.d.ts +15 -0
  40. package/dist/sharedUtils/components/triggers/email/utils.d.ts +4 -0
  41. package/dist/sharedUtils/components/triggers/gcp/utils.d.ts +2 -0
  42. package/dist/sharedUtils/components/triggers/http/utils.d.ts +11 -0
  43. package/dist/sharedUtils/components/triggers/kafka/utils.d.ts +2 -0
  44. package/dist/sharedUtils/components/triggers/mqtt/utils.d.ts +2 -0
  45. package/dist/sharedUtils/components/triggers/nats/utils.d.ts +2 -0
  46. package/dist/sharedUtils/components/triggers/postgres/utils.d.ts +8 -0
  47. package/dist/sharedUtils/components/triggers/sqs/utils.d.ts +2 -0
  48. package/dist/sharedUtils/components/triggers/triggers.svelte.d.ts +32 -0
  49. package/dist/sharedUtils/components/triggers/utils.d.ts +80 -0
  50. package/dist/sharedUtils/components/triggers/websocket/utils.d.ts +2 -0
  51. package/dist/sharedUtils/components/triggers.d.ts +20 -0
  52. package/dist/sharedUtils/gen/core/ApiError.d.ts +10 -0
  53. package/dist/sharedUtils/gen/core/ApiRequestOptions.d.ts +13 -0
  54. package/dist/sharedUtils/gen/core/ApiResult.d.ts +7 -0
  55. package/dist/sharedUtils/gen/core/CancelablePromise.d.ts +26 -0
  56. package/dist/sharedUtils/gen/core/OpenAPI.d.ts +27 -0
  57. package/dist/sharedUtils/gen/core/request.d.ts +29 -0
  58. package/dist/sharedUtils/gen/index.d.ts +6 -0
  59. package/dist/sharedUtils/gen/schemas.gen.d.ts +7036 -0
  60. package/dist/sharedUtils/gen/services.gen.d.ts +6047 -0
  61. package/dist/sharedUtils/gen/types.gen.d.ts +21881 -0
  62. package/dist/sharedUtils/history.svelte.d.ts +9 -0
  63. package/dist/sharedUtils/hub.d.ts +49 -0
  64. package/dist/sharedUtils/jsr.json +6 -0
  65. package/dist/sharedUtils/lib.d.ts +5 -0
  66. package/dist/sharedUtils/lib.es.js +1588 -0
  67. package/dist/sharedUtils/package.json +12 -0
  68. package/dist/sharedUtils/schema.d.ts +3 -0
  69. package/dist/sharedUtils/stores.d.ts +97 -0
  70. package/dist/sharedUtils/svelte5Utils.svelte.d.ts +80 -0
  71. package/dist/sharedUtils/toast.d.ts +8 -0
  72. package/dist/sharedUtils/utils.d.ts +265 -0
  73. package/package/components/AddUser.svelte +67 -34
  74. package/package/components/AppConnectInner.svelte +9 -1
  75. package/package/components/ArgInfo.svelte +9 -1
  76. package/package/components/ArgInput.svelte +21 -1
  77. package/package/components/CompareWorkspaces.svelte +11 -2
  78. package/package/components/DedicatedWorkersSelector.svelte +262 -247
  79. package/package/components/DefaultTagsInner.svelte +40 -2
  80. package/package/components/DeployWorkspace.svelte +13 -0
  81. package/package/components/DiffEditor.svelte +44 -1
  82. package/package/components/EditableSchemaForm.svelte +5 -2
  83. package/package/components/EditableSchemaForm.svelte.d.ts +1 -0
  84. package/package/components/Editor.svelte +5 -1
  85. package/package/components/EditorBar.svelte +12 -3
  86. package/package/components/FilterSearchbar.svelte +26 -2
  87. package/package/components/FlowBuilder.svelte +6 -3
  88. package/package/components/FlowGraphDiffViewer.svelte +16 -17
  89. package/package/components/FlowGraphViewer.svelte +20 -6
  90. package/package/components/FlowGraphViewer.svelte.d.ts +2 -0
  91. package/package/components/FlowGraphViewerStep.svelte +14 -32
  92. package/package/components/FlowMetadata.svelte +4 -1
  93. package/package/components/FlowPreviewContent.svelte +2 -0
  94. package/package/components/FlowStatusWaitingForEvents.svelte +25 -4
  95. package/package/components/HighlightCode.svelte +3 -0
  96. package/package/components/InstanceSetting.svelte +9 -25
  97. package/package/components/InstanceSettings.svelte +16 -0
  98. package/package/components/LabelsInput.svelte +149 -0
  99. package/package/components/LabelsInput.svelte.d.ts +8 -0
  100. package/package/components/Login.svelte +6 -1
  101. package/package/components/ObjectStoreConfigSettings.svelte +273 -1
  102. package/package/components/OktaSetting.svelte +6 -5
  103. package/package/components/Password.svelte +74 -20
  104. package/package/components/Password.svelte.d.ts +1 -0
  105. package/package/components/PasswordArgInput.svelte +2 -2
  106. package/package/components/PasswordArgInput.svelte.d.ts +1 -0
  107. package/package/components/Path.svelte +8 -10
  108. package/package/components/PathNameAutocomplete.svelte +308 -0
  109. package/package/components/PathNameAutocomplete.svelte.d.ts +27 -0
  110. package/package/components/PowerShellCommonParams.svelte +84 -0
  111. package/package/components/PowerShellCommonParams.svelte.d.ts +6 -0
  112. package/package/components/Range.svelte +8 -3
  113. package/package/components/ResourceEditor.svelte +6 -2
  114. package/package/components/RunForm.svelte +71 -7
  115. package/package/components/RunForm.svelte.d.ts +2 -1
  116. package/package/components/ScriptBuilder.svelte +7 -3
  117. package/package/components/ScriptEditor.svelte +221 -187
  118. package/package/components/ScriptEditor.svelte.d.ts +1 -1
  119. package/package/components/ScriptSchema.svelte +1 -1
  120. package/package/components/StringTypeNarrowing.svelte +1 -1
  121. package/package/components/StringTypeNarrowing.svelte.d.ts +1 -1
  122. package/package/components/SummaryPathDisplay.svelte +32 -10
  123. package/package/components/SummaryPathDisplay.svelte.d.ts +2 -1
  124. package/package/components/VariableEditor.svelte +9 -2
  125. package/package/components/WorkerGroup.svelte +47 -2
  126. package/package/components/apps/editor/DeploymentHistory.svelte +112 -13
  127. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte +135 -35
  128. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte.d.ts +3 -1
  129. package/package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +11 -35
  130. package/package/components/apps/editor/settingsPanel/mainInput/runnableSelectorUtils.d.ts +10 -0
  131. package/package/components/apps/editor/settingsPanel/mainInput/runnableSelectorUtils.js +14 -0
  132. package/package/components/apps/editor/settingsPanel/mainInput/runnableSelectorUtils.test.d.ts +1 -0
  133. package/package/components/apps/editor/settingsPanel/mainInput/runnableSelectorUtils.test.js +34 -0
  134. package/package/components/assets/AssetButtons.svelte +21 -25
  135. package/package/components/assets/AssetsUsageDrawer.svelte +7 -9
  136. package/package/components/common/fileUpload/FileUpload.svelte +6 -2
  137. package/package/components/common/languageIcons/LanguageIcon.svelte +3 -0
  138. package/package/components/common/table/AppRow.svelte +18 -0
  139. package/package/components/common/table/FlowRow.svelte +18 -0
  140. package/package/components/common/table/ScriptRow.svelte +18 -0
  141. package/package/components/copilot/chat/AIChatManager.svelte.js +3 -3
  142. package/package/components/copilot/chat/flow/openFlow.json +1 -1
  143. package/package/components/copilot/chat/flow/openFlowZod.js +3 -3
  144. package/package/components/custom_ui.d.ts +2 -0
  145. package/package/components/details/DetailPageHeader.svelte +2 -2
  146. package/package/components/details/DetailPageHeader.svelte.d.ts +2 -1
  147. package/package/components/flows/agentToolUtils.d.ts +5 -0
  148. package/package/components/flows/agentToolUtils.js +49 -0
  149. package/package/components/flows/agentToolUtils.test.d.ts +1 -0
  150. package/package/components/flows/agentToolUtils.test.js +55 -0
  151. package/package/components/flows/content/FlowInput.svelte +2 -0
  152. package/package/components/flows/content/FlowInputsQuick.svelte +1 -1
  153. package/package/components/flows/content/FlowLoop.svelte +5 -12
  154. package/package/components/flows/content/FlowModuleScript.svelte +5 -3
  155. package/package/components/flows/content/FlowPathViewer.svelte +2 -2
  156. package/package/components/flows/content/FlowPathViewer.svelte.d.ts +1 -0
  157. package/package/components/flows/content/FlowSettings.svelte +2 -0
  158. package/package/components/flows/content/FlowWhileLoop.svelte +5 -12
  159. package/package/components/flows/flowInfers.js +8 -3
  160. package/package/components/flows/flowStore.svelte.d.ts +1 -1
  161. package/package/components/flows/map/FlowModuleSchemaMap.svelte +49 -9
  162. package/package/components/flows/pickers/PickHubScriptQuick.svelte +5 -3
  163. package/package/components/flows/scheduleUtils.js +2 -1
  164. package/package/components/graph/FlowGraphV2.svelte +13 -1
  165. package/package/components/graph/WacDiagram.svelte +96 -0
  166. package/package/components/graph/WacDiagram.svelte.d.ts +7 -0
  167. package/package/components/graph/noteEditor.svelte.d.ts +1 -1
  168. package/package/components/graph/noteEditor.svelte.js +12 -1
  169. package/package/components/graph/noteUtils.svelte.d.ts +1 -1
  170. package/package/components/graph/noteUtils.svelte.js +9 -2
  171. package/package/components/graph/renderers/edges/WacEdge.svelte +41 -0
  172. package/package/components/graph/renderers/edges/WacEdge.svelte.d.ts +4 -0
  173. package/package/components/graph/renderers/nodes/WacControlNode.svelte +51 -0
  174. package/package/components/graph/renderers/nodes/WacControlNode.svelte.d.ts +9 -0
  175. package/package/components/graph/renderers/nodes/WacStepNode.svelte +35 -0
  176. package/package/components/graph/renderers/nodes/WacStepNode.svelte.d.ts +9 -0
  177. package/package/components/graph/wacDagLayout.d.ts +10 -0
  178. package/package/components/graph/wacDagLayout.js +120 -0
  179. package/package/components/graph/wacToFlow.js +1 -1
  180. package/package/components/home/ItemsList.svelte +28 -4
  181. package/package/components/icons/RIcon.svelte +32 -0
  182. package/package/components/icons/RIcon.svelte.d.ts +7 -0
  183. package/package/components/instanceSettings/DbHealth.svelte +723 -0
  184. package/package/components/instanceSettings/DbHealth.svelte.d.ts +3 -0
  185. package/package/components/instanceSettings/SecretBackendConfig.svelte +343 -304
  186. package/package/components/instanceSettings/SmtpSettings.svelte +8 -0
  187. package/package/components/instanceSettings.js +14 -5
  188. package/package/components/mcp/McpScopeSelector.svelte +82 -16
  189. package/package/components/moveRenameManager.d.ts +1 -0
  190. package/package/components/moveRenameManager.js +7 -4
  191. package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte +14 -1
  192. package/package/components/raw_apps/rawAppPolicy.js +3 -2
  193. package/package/components/raw_apps/utils.test.d.ts +1 -0
  194. package/package/components/raw_apps/utils.test.js +38 -0
  195. package/package/components/resources/resourcesFilter.d.ts +15 -2
  196. package/package/components/resources/resourcesFilter.js +11 -2
  197. package/package/components/runs/JobDetailFieldConfig.js +5 -3
  198. package/package/components/runs/JobDetailHeader.svelte +5 -2
  199. package/package/components/runs/JobRunsPreview.svelte +1 -0
  200. package/package/components/runs/RunBadges.svelte +7 -4
  201. package/package/components/runs/RunRow.svelte +7 -7
  202. package/package/components/schedules/schedulesFilter.d.ts +15 -2
  203. package/package/components/schedules/schedulesFilter.js +11 -2
  204. package/package/components/schema/EditableSchemaWrapper.svelte +6 -8
  205. package/package/components/schema/PropertyEditor.svelte +22 -1
  206. package/package/components/schema/PropertyEditor.svelte.d.ts +1 -0
  207. package/package/components/schema/editable_schema_wrapper.d.ts +1 -0
  208. package/package/components/secretArgUtils.d.ts +7 -0
  209. package/package/components/secretArgUtils.js +45 -0
  210. package/package/components/settings/WorkspaceUserSettings.svelte +359 -286
  211. package/package/components/sidebar/OperatorMenu.svelte +215 -197
  212. package/package/components/triggers/CaptureWrapper.svelte +1 -1
  213. package/package/components/triggers/TriggerFilters.svelte +17 -5
  214. package/package/components/triggers/TriggerFilters.svelte.d.ts +2 -1
  215. package/package/components/triggers/kafka/KafkaCapture.svelte +6 -2
  216. package/package/components/triggers/kafka/KafkaCapture.svelte.d.ts +1 -1
  217. package/package/components/triggers/kafka/KafkaTriggerEditorInner.svelte +5 -1
  218. package/package/components/triggers/kafka/utils.js +1 -0
  219. package/package/components/triggers/mqtt/MqttEditorConfigSection.svelte.d.ts +1 -1
  220. package/package/components/triggers/schedules/ScheduleEditorInner.svelte +6 -0
  221. package/package/components/triggers/websocket/WebsocketTriggerEditorInner.svelte +87 -1
  222. package/package/components/triggers/websocket/utils.js +2 -0
  223. package/package/components/variables/variablesFilter.d.ts +15 -2
  224. package/package/components/variables/variablesFilter.js +11 -2
  225. package/package/components/worker_group.js +1 -0
  226. package/package/components/workspaceSettings/DucklakeSettings.svelte +33 -41
  227. package/package/consts.d.ts +1 -0
  228. package/package/consts.js +1 -0
  229. package/package/editorLangUtils.d.ts +1 -1
  230. package/package/editorLangUtils.js +2 -0
  231. package/package/gen/core/OpenAPI.js +1 -1
  232. package/package/gen/schemas.gen.d.ts +346 -4
  233. package/package/gen/schemas.gen.js +347 -5
  234. package/package/gen/services.gen.d.ts +163 -1
  235. package/package/gen/services.gen.js +323 -17
  236. package/package/gen/types.gen.d.ts +671 -5
  237. package/package/hubPaths.json +6 -3
  238. package/package/infer.d.ts +55 -0
  239. package/package/infer.js +131 -0
  240. package/package/infer.svelte.js +2 -0
  241. package/package/mcpEndpointTools.js +213 -22
  242. package/package/script_helpers.d.ts +3 -0
  243. package/package/script_helpers.js +26 -0
  244. package/package/scripts.d.ts +2 -1
  245. package/package/scripts.js +15 -3
  246. package/package/stores.d.ts +2 -0
  247. package/package/system_prompts/prompts.d.ts +6 -5
  248. package/package/system_prompts/prompts.js +188 -29
  249. package/package/user.js +5 -1
  250. package/package/utils.js +21 -0
  251. package/package/utils_deployable.d.ts +11 -0
  252. package/package/utils_workspace_deploy.js +36 -8
  253. package/package.json +5 -4
@@ -25,10 +25,12 @@
25
25
  "deprecated_gitSync_23": "hub/28160/sync-script-to-git-repo-windmill",
26
26
  "deprecated_gitSync_24": "hub/28176/sync-script-to-git-repo-windmill",
27
27
  "deprecated_gitSync_latest": "hub/28180/sync-script-to-git-repo-windmill",
28
- "gitSyncTest": "hub/28177/git-repo-test-read-write-windmill",
28
+ "deprecated_gitSync_25": "hub/28183/sync-script-to-git-repo-windmill",
29
+ "gitSyncTest": "hub/28184/git-repo-test-read-write-windmill",
29
30
  "gitInitRepo_0": "hub/28134/git-sync%3A-init-repository-windmill",
30
31
  "gitInitRepo_1": "hub/28158/git-sync%3A-init-repository-windmill",
31
- "gitInitRepo": "hub/28174/git-sync%3A-init-repository-windmill",
32
+ "gitInitRepo_2": "hub/28174/git-sync%3A-init-repository-windmill",
33
+ "gitInitRepo": "hub/28181/git-sync%3A-init-repository-windmill",
32
34
  "slackErrorHandler": "hub/19741/workspace-or-schedule-error-handler-slack",
33
35
  "slackErrorHandler_0": "hub/9079/workspace-or-schedule-error-handler-slack",
34
36
  "slackErrorHandler_1": "hub/9206/workspace-or-schedule-error-handler-slack",
@@ -45,5 +47,6 @@
45
47
  "appReport": "hub/28076/app-report",
46
48
  "cloneRepoToS3forGitRepoViewer_0": "hub/19825/clone_repo_and_upload_to_instance_storage",
47
49
  "cloneRepoToS3forGitRepoViewer_1": "hub/19827/clone_repo_and_upload_to_instance_storage",
48
- "cloneRepoToS3forGitRepoViewer": "hub/28175/clone_repo_and_upload_to_instance_storage"
50
+ "cloneRepoToS3forGitRepoViewer_2": "hub/28175/clone_repo_and_upload_to_instance_storage",
51
+ "cloneRepoToS3forGitRepoViewer": "hub/28182/clone_repo_and_upload_to_instance_storage"
49
52
  }
@@ -2,6 +2,60 @@ import { type AssetUsageAccessType } from './gen';
2
2
  import type { Schema, SupportedLanguage } from './common.js';
3
3
  import { type AssetWithAccessType } from './components/assets/lib.js';
4
4
  export declare function initWasmTs(): Promise<void>;
5
+ export type WacDagNode = {
6
+ id: string;
7
+ node_type: {
8
+ type: 'Step';
9
+ name: string;
10
+ script: string;
11
+ } | {
12
+ type: 'InlineStep';
13
+ name: string;
14
+ } | {
15
+ type: 'Sleep';
16
+ seconds: string;
17
+ } | {
18
+ type: 'WaitForApproval';
19
+ } | {
20
+ type: 'Branch';
21
+ condition_source: string;
22
+ } | {
23
+ type: 'ParallelStart';
24
+ } | {
25
+ type: 'ParallelEnd';
26
+ } | {
27
+ type: 'LoopStart';
28
+ iter_source: string;
29
+ } | {
30
+ type: 'LoopEnd';
31
+ } | {
32
+ type: 'Merge';
33
+ } | {
34
+ type: 'Return';
35
+ };
36
+ label: string;
37
+ line: number;
38
+ };
39
+ export type WacDagEdge = {
40
+ from: string;
41
+ to: string;
42
+ label?: string;
43
+ };
44
+ export type WacWorkflowDag = {
45
+ nodes: WacDagNode[];
46
+ edges: WacDagEdge[];
47
+ params: {
48
+ name: string;
49
+ typ?: string;
50
+ }[];
51
+ source_hash: string;
52
+ };
53
+ export declare function parseWacDag(code: string, language: string): Promise<WacWorkflowDag | {
54
+ errors: {
55
+ message: string;
56
+ line: number;
57
+ }[];
58
+ } | null>;
5
59
  type InferAssetsResult = {
6
60
  status: 'ok';
7
61
  assets: AssetWithAccessType[];
@@ -19,6 +73,7 @@ export type InferAssetsSqlQueryDetails = {
19
73
  source_kind: 'datatable' | 'ducklake';
20
74
  source_name: string;
21
75
  source_schema?: string;
76
+ has_raw_interpolation?: boolean;
22
77
  prepared?: PreparedAssetsSqlQuery;
23
78
  };
24
79
  export type PreparedAssetsSqlQuery = {
package/package/infer.js CHANGED
@@ -14,6 +14,7 @@ import initCSharpParser, { parse_csharp } from 'windmill-parser-wasm-csharp';
14
14
  import initNuParser, { parse_nu } from 'windmill-parser-wasm-nu';
15
15
  import initJavaParser, { parse_java } from 'windmill-parser-wasm-java';
16
16
  import initRubyParser, { parse_ruby } from 'windmill-parser-wasm-ruby';
17
+ import initRParser, { parse_r } from 'windmill-parser-wasm-r';
17
18
  import wasmUrlTs from 'windmill-parser-wasm-ts/windmill_parser_wasm_bg.wasm?url';
18
19
  import wasmUrlRegex from 'windmill-parser-wasm-regex/windmill_parser_wasm_bg.wasm?url';
19
20
  import wasmUrlPy from 'windmill-parser-wasm-py/windmill_parser_wasm_bg.wasm?url';
@@ -25,7 +26,10 @@ import wasmUrlCSharp from 'windmill-parser-wasm-csharp/windmill_parser_wasm_bg.w
25
26
  import wasmUrlNu from 'windmill-parser-wasm-nu/windmill_parser_wasm_bg.wasm?url';
26
27
  import wasmUrlJava from 'windmill-parser-wasm-java/windmill_parser_wasm_bg.wasm?url';
27
28
  import wasmUrlRuby from 'windmill-parser-wasm-ruby/windmill_parser_wasm_bg.wasm?url';
29
+ import wasmUrlR from 'windmill-parser-wasm-r/windmill_parser_wasm_bg.wasm?url';
28
30
  import wasmUrlAsset from 'windmill-parser-wasm-asset/windmill_parser_wasm_bg.wasm?url';
31
+ import initWacParser, { parse_workflow_as_code } from 'windmill-parser-wasm-wac';
32
+ import wasmUrlWac from 'windmill-parser-wasm-wac/windmill_parser_wasm_bg.wasm?url';
29
33
  import { workspaceStore } from './stores.js';
30
34
  import { argSigToJsonSchemaType } from 'windmill-utils-internal';
31
35
  import {} from './components/assets/lib.js';
@@ -67,9 +71,36 @@ async function initWasmJava() {
67
71
  async function initWasmRuby() {
68
72
  await initRubyParser(wasmUrlRuby);
69
73
  }
74
+ async function initWasmR() {
75
+ await initRParser(wasmUrlR);
76
+ }
70
77
  async function initWasmAsset() {
71
78
  await initAssetParser(wasmUrlAsset);
72
79
  }
80
+ let initializeWacPromise = undefined;
81
+ async function initWasmWac() {
82
+ if (initializeWacPromise == undefined) {
83
+ initializeWacPromise = initWacParser(wasmUrlWac);
84
+ }
85
+ await initializeWacPromise;
86
+ }
87
+ export async function parseWacDag(code, language) {
88
+ try {
89
+ await initWasmWac();
90
+ const raw = parse_workflow_as_code(code, language);
91
+ const result = JSON.parse(raw);
92
+ if (result.type === 'success') {
93
+ return result;
94
+ }
95
+ else if (result.type === 'error') {
96
+ return { errors: result.errors };
97
+ }
98
+ return null;
99
+ }
100
+ catch {
101
+ return null;
102
+ }
103
+ }
73
104
  function parseVolumeAnnotations(code, commentPrefix) {
74
105
  const volumes = [];
75
106
  for (const line of code.split('\n')) {
@@ -93,6 +124,7 @@ function getCommentPrefix(language) {
93
124
  case 'powershell':
94
125
  case 'ansible':
95
126
  case 'ruby':
127
+ case 'rlang':
96
128
  return '#';
97
129
  case 'deno':
98
130
  case 'bun':
@@ -301,6 +333,15 @@ export async function inferArgs(language, code, schema, mainOverride) {
301
333
  else if (language == 'ruby') {
302
334
  await initWasmRuby();
303
335
  inferedSchema = JSON.parse(parse_ruby(code));
336
+ }
337
+ else if (language == 'rlang') {
338
+ try {
339
+ await initWasmR();
340
+ inferedSchema = JSON.parse(parse_r(code));
341
+ }
342
+ catch {
343
+ inferedSchema = parseRSignatureFallback(code);
344
+ }
304
345
  // for related places search: ADD_NEW_LANG
305
346
  }
306
347
  else {
@@ -334,6 +375,18 @@ export async function inferArgs(language, code, schema, mainOverride) {
334
375
  schema.required.push(arg.name);
335
376
  }
336
377
  }
378
+ // Store PowerShell CmdletBinding metadata as schema extensions
379
+ const psSchema = inferedSchema;
380
+ if (language === 'powershell' && psSchema.has_cmd_binding) {
381
+ ;
382
+ schema['x-windmill-ps-cmd-binding'] = true;
383
+ schema['x-windmill-ps-supports-should-process'] =
384
+ psSchema.supports_should_process ?? false;
385
+ }
386
+ else {
387
+ delete schema['x-windmill-ps-cmd-binding'];
388
+ delete schema['x-windmill-ps-supports-should-process'];
389
+ }
337
390
  await tick();
338
391
  return {
339
392
  auto_kind: inferedSchema.auto_kind,
@@ -417,3 +470,81 @@ export async function parseOutputs(code, ignoreError) {
417
470
  }
418
471
  return outputs.error ? [] : outputs.outputs;
419
472
  }
473
+ /** JS fallback parser for R main() signatures when WASM parser is unavailable. */
474
+ function parseRSignatureFallback(code) {
475
+ const result = {
476
+ type: 'Valid',
477
+ error: '',
478
+ star_args: false,
479
+ star_kwargs: false,
480
+ args: [],
481
+ has_preprocessor: null,
482
+ auto_kind: null
483
+ };
484
+ const mainMatch = code.match(/\bmain\s*(?:<-|=)\s*function\s*\(([^)]*)\)/);
485
+ if (!mainMatch) {
486
+ return result;
487
+ }
488
+ const paramsStr = mainMatch[1].trim();
489
+ if (!paramsStr)
490
+ return result;
491
+ // Split params respecting nested parens
492
+ const params = [];
493
+ let depth = 0;
494
+ let current = '';
495
+ for (const ch of paramsStr) {
496
+ if ('([{'.includes(ch)) {
497
+ depth++;
498
+ current += ch;
499
+ }
500
+ else if (')]}'.includes(ch)) {
501
+ depth--;
502
+ current += ch;
503
+ }
504
+ else if (ch === ',' && depth === 0) {
505
+ params.push(current);
506
+ current = '';
507
+ }
508
+ else {
509
+ current += ch;
510
+ }
511
+ }
512
+ if (current.trim())
513
+ params.push(current);
514
+ for (const param of params) {
515
+ const trimmed = param.trim();
516
+ if (!trimmed)
517
+ continue;
518
+ const eqIndex = trimmed.indexOf('=');
519
+ if (eqIndex === -1) {
520
+ result.args.push({ name: trimmed, typ: 'unknown', has_default: false, default: undefined });
521
+ }
522
+ else {
523
+ const name = trimmed.slice(0, eqIndex).trim();
524
+ const raw = trimmed.slice(eqIndex + 1).trim();
525
+ const parsed = parseRDefault(raw);
526
+ result.args.push({ name, typ: parsed.typ, has_default: true, default: parsed.value });
527
+ }
528
+ }
529
+ return result;
530
+ }
531
+ function parseRDefault(raw) {
532
+ if (raw === 'TRUE' || raw === 'true')
533
+ return { value: true, typ: 'bool' };
534
+ if (raw === 'FALSE' || raw === 'false')
535
+ return { value: false, typ: 'bool' };
536
+ if (raw === 'NULL')
537
+ return { value: null, typ: 'unknown' };
538
+ if (/^-?\d+(\.\d+)?$/.test(raw)) {
539
+ const num = Number(raw);
540
+ if (Number.isInteger(num) && !raw.includes('.'))
541
+ return { value: num, typ: 'int' };
542
+ return { value: num, typ: 'float' };
543
+ }
544
+ const strMatch = raw.match(/^"((?:[^"\\]|\\.)*)"$/) || raw.match(/^'((?:[^'\\]|\\.)*)'$/);
545
+ if (strMatch)
546
+ return { value: strMatch[1], typ: { str: null } };
547
+ if (raw.startsWith('list(') || raw.startsWith('c('))
548
+ return { value: null, typ: { list: null } };
549
+ return { value: null, typ: 'unknown' };
550
+ }
@@ -16,6 +16,8 @@ export function usePreparedAssetSqlQueries(_getQueries, getWorkspace) {
16
16
  let map = new MapResource(() => Object.fromEntries(getQueries.value?.map((q) => [computeQueryKey(q, getWorkspace() ?? ''), q]) || []), async (toFetch) => {
17
17
  let queries = Object.entries(clone(toFetch));
18
18
  queries = queries.filter(([_, q]) => q.source_kind === 'datatable' || q.source_kind === 'ducklake');
19
+ // Skip queries with raw interpolations — they can't be prepared
20
+ queries = queries.filter(([_, q]) => !q.has_raw_interpolation);
19
21
  // We only support preparing single-statement queries for now.
20
22
  queries = queries.filter(([_, q]) => getQueryStmtCountHeuristic(q.query_string) === 1);
21
23
  if (!queries?.length)