windmill-components 1.655.1 → 1.665.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 (653) hide show
  1. package/package/components/ApiConnectForm.svelte +6 -6
  2. package/package/components/ApiConnectForm.svelte.d.ts +3 -2
  3. package/package/components/AppConnectDrawer.svelte +3 -1
  4. package/package/components/AppConnectDrawer.svelte.d.ts +2 -0
  5. package/package/components/AppConnectInner.svelte +137 -72
  6. package/package/components/AppConnectInner.svelte.d.ts +1 -0
  7. package/package/components/CompareWorkspaces.svelte +32 -24
  8. package/package/components/DBManager.svelte +7 -13
  9. package/package/components/DBTable.svelte +2 -2
  10. package/package/components/DBTableEditor.svelte +39 -31
  11. package/package/components/DBTableEditor.svelte.d.ts +2 -2
  12. package/package/components/DedicatedWorkersSelector.svelte +292 -85
  13. package/package/components/DeployWorkspace.svelte +30 -26
  14. package/package/components/Dev.svelte +7 -2
  15. package/package/components/Dev.svelte.d.ts +3 -0
  16. package/package/components/Editor.svelte +17 -13
  17. package/package/components/EditorBar.svelte.d.ts +1 -1
  18. package/package/components/FilterSearchbar.svelte +1 -1
  19. package/package/components/FirstStepInputs.svelte +0 -1
  20. package/package/components/FlowBuilder.svelte +5 -0
  21. package/package/components/FlowGraphDiffViewer.svelte +3 -0
  22. package/package/components/FlowGraphViewer.svelte +7 -4
  23. package/package/components/FlowGraphViewer.svelte.d.ts +1 -0
  24. package/package/components/FlowGraphViewerStep.svelte +3 -3
  25. package/package/components/FlowGraphViewerStep.svelte.d.ts +1 -0
  26. package/package/components/FlowPreviewContent.svelte +11 -1
  27. package/package/components/FlowStatusViewer.svelte +4 -1
  28. package/package/components/FlowStatusViewer.svelte.d.ts +3 -1
  29. package/package/components/FlowStatusViewerInner.svelte +46 -11
  30. package/package/components/FlowStatusViewerInner.svelte.d.ts +4 -1
  31. package/package/components/FlowStatusWaitingForEvents.svelte +48 -103
  32. package/package/components/FlowTimeline.svelte +76 -84
  33. package/package/components/FlowViewer.svelte +40 -22
  34. package/package/components/FlowViewer.svelte.d.ts +8 -2
  35. package/package/components/GroupEditor.svelte +7 -9
  36. package/package/components/HistoricList.svelte +12 -4
  37. package/package/components/InstanceGroupEditor.svelte +92 -19
  38. package/package/components/InstanceSetting.svelte +16 -6
  39. package/package/components/InstanceSettings.svelte +51 -7
  40. package/package/components/InstanceSettings.svelte.d.ts +2 -1
  41. package/package/components/JobLoader.svelte +5 -4
  42. package/package/components/JobLoader.svelte.d.ts +1 -1
  43. package/package/components/Login.svelte +9 -1
  44. package/package/components/NoMainFuncBadge.svelte +2 -2
  45. package/package/components/OnBehalfOfSelector.svelte +49 -37
  46. package/package/components/OnBehalfOfSelector.svelte.d.ts +16 -6
  47. package/package/components/ResourceEditor.svelte +16 -11
  48. package/package/components/ResourceEditor.svelte.d.ts +1 -0
  49. package/package/components/ResourceEditorDrawer.svelte +3 -1
  50. package/package/components/ResourceEditorDrawer.svelte.d.ts +6 -2
  51. package/package/components/ResourcePicker.svelte +10 -5
  52. package/package/components/ResourcePicker.svelte.d.ts +2 -0
  53. package/package/components/S3FilePickerInner.svelte +12 -4
  54. package/package/components/SchemaForm.svelte +20 -14
  55. package/package/components/SchemaForm.svelte.d.ts +2 -2
  56. package/package/components/ScriptBuilder.svelte +158 -18
  57. package/package/components/ScriptEditor.svelte +674 -150
  58. package/package/components/ScriptEditor.svelte.d.ts +7 -3
  59. package/package/components/SuperadminSettings.svelte +4 -1
  60. package/package/components/SuperadminSettingsInner.svelte +176 -67
  61. package/package/components/SuperadminSettingsInner.svelte.d.ts +3 -1
  62. package/package/components/SyncResourceTypes.svelte +31 -0
  63. package/package/components/SyncResourceTypes.svelte.d.ts +6 -0
  64. package/package/components/TimelineBar.svelte +14 -8
  65. package/package/components/TimelineBar.svelte.d.ts +1 -0
  66. package/package/components/WorkerGroup.svelte +11 -4
  67. package/package/components/WorkflowTimeline.svelte +386 -58
  68. package/package/components/WorkflowTimeline.svelte.d.ts +6 -1
  69. package/package/components/WorkspaceDependenciesEditor.svelte +32 -2
  70. package/package/components/apps/components/display/dbtable/DeleteRow.svelte +2 -2
  71. package/package/components/apps/components/display/dbtable/InsertRowRunnable.svelte +2 -2
  72. package/package/components/apps/components/display/dbtable/UpdateCell.svelte +2 -2
  73. package/package/components/apps/components/display/dbtable/metadata.js +44 -222
  74. package/package/components/apps/components/display/dbtable/queries/count.d.ts +9 -0
  75. package/package/components/apps/components/display/dbtable/queries/delete.d.ts +9 -0
  76. package/package/components/apps/components/display/dbtable/queries/insert.d.ts +9 -0
  77. package/package/components/apps/components/display/dbtable/queries/relationalKeys.d.ts +7 -0
  78. package/package/components/apps/components/display/dbtable/queries/relationalKeys.js +1 -1
  79. package/package/components/apps/components/display/dbtable/queries/select.d.ts +9 -0
  80. package/package/components/apps/components/display/dbtable/queries/update.d.ts +9 -0
  81. package/package/components/apps/editor/AppEditorHeaderDeploy.svelte +11 -9
  82. package/package/components/apps/editor/appUtilsS3.js +2 -2
  83. package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte +53 -10
  84. package/package/components/common/clearableInput/ClearableInput.svelte +3 -7
  85. package/package/components/common/confirmationModal/ConfirmationModal.svelte +7 -1
  86. package/package/components/common/confirmationModal/ConfirmationModal.svelte.d.ts +1 -0
  87. package/package/components/common/drawer/Disposable.svelte +24 -2
  88. package/package/components/common/drawer/Disposable.svelte.d.ts +5 -0
  89. package/package/components/common/modal/Modal.svelte +84 -58
  90. package/package/components/common/table/AppRow.svelte.d.ts +1 -1
  91. package/package/components/common/table/FlowRow.svelte.d.ts +1 -1
  92. package/package/components/common/table/ScriptRow.svelte +31 -3
  93. package/package/components/common/table/ScriptRow.svelte.d.ts +1 -1
  94. package/package/components/copilot/MetadataGen.svelte +8 -5
  95. package/package/components/copilot/MetadataGen.svelte.d.ts +1 -0
  96. package/package/components/copilot/TestAIKey.svelte +2 -1
  97. package/package/components/copilot/TestAIKey.svelte.d.ts +1 -0
  98. package/package/components/copilot/chat/AIChatManager.svelte.js +62 -80
  99. package/package/components/copilot/chat/HistoryManager.svelte.d.ts +1 -0
  100. package/package/components/copilot/chat/HistoryManager.svelte.js +3 -0
  101. package/package/components/copilot/chat/__tests__/app/appChat.eval.test.js +47 -31
  102. package/package/components/copilot/chat/__tests__/app/appEvalComparison.d.ts +1 -6
  103. package/package/components/copilot/chat/__tests__/app/appEvalComparison.js +18 -13
  104. package/package/components/copilot/chat/__tests__/app/appEvalRunner.d.ts +14 -5
  105. package/package/components/copilot/chat/__tests__/app/appEvalRunner.js +13 -12
  106. package/package/components/copilot/chat/__tests__/flow/flowChat.eval.test.js +46 -29
  107. package/package/components/copilot/chat/__tests__/flow/flowEvalComparison.js +1 -4
  108. package/package/components/copilot/chat/__tests__/flow/flowEvalRunner.d.ts +14 -5
  109. package/package/components/copilot/chat/__tests__/flow/flowEvalRunner.js +13 -12
  110. package/package/components/copilot/chat/__tests__/shared/baseEvalRunner.d.ts +5 -8
  111. package/package/components/copilot/chat/__tests__/shared/baseEvalRunner.js +82 -108
  112. package/package/components/copilot/chat/__tests__/shared/baseLLMEvaluator.d.ts +4 -7
  113. package/package/components/copilot/chat/__tests__/shared/baseLLMEvaluator.js +19 -11
  114. package/package/components/copilot/chat/__tests__/shared/types.d.ts +3 -0
  115. package/package/components/copilot/chat/anthropic.d.ts +9 -2
  116. package/package/components/copilot/chat/anthropic.js +12 -6
  117. package/package/components/copilot/chat/app/core.js +5 -12
  118. package/package/components/copilot/chat/chatLoop.d.ts +40 -0
  119. package/package/components/copilot/chat/chatLoop.js +97 -0
  120. package/package/components/copilot/chat/openai-responses.d.ts +8 -2
  121. package/package/components/copilot/chat/openai-responses.js +17 -17
  122. package/package/components/copilot/chat/shared.d.ts +2 -1
  123. package/package/components/copilot/chat/shared.js +2 -2
  124. package/package/components/copilot/lib.d.ts +14 -5
  125. package/package/components/copilot/lib.js +68 -48
  126. package/package/components/custom_ui.d.ts +1 -0
  127. package/package/components/dbOps.d.ts +2 -2
  128. package/package/components/dbOps.js +129 -53
  129. package/package/components/debug/debugUtils.d.ts +5 -0
  130. package/package/components/debug/debugUtils.js +20 -0
  131. package/package/components/debug/index.d.ts +1 -1
  132. package/package/components/debug/index.js +3 -7
  133. package/package/components/flows/CreateActionsFlow.svelte +221 -43
  134. package/package/components/flows/DebounceLimit.svelte +42 -9
  135. package/package/components/flows/common/FlowCard.svelte +2 -1
  136. package/package/components/flows/common/FlowCard.svelte.d.ts +1 -0
  137. package/package/components/flows/common/FlowCardHeader.svelte +14 -10
  138. package/package/components/flows/common/FlowCardHeader.svelte.d.ts +1 -0
  139. package/package/components/flows/content/AgentToolWrapper.svelte +2 -1
  140. package/package/components/flows/content/AgentToolWrapper.svelte.d.ts +1 -0
  141. package/package/components/flows/content/FlowEditorPanel.svelte +1 -0
  142. package/package/components/flows/content/FlowInputs.svelte +1 -1
  143. package/package/components/flows/content/FlowInputsQuick.svelte +1 -1
  144. package/package/components/flows/content/FlowModuleComponent.svelte +32 -18
  145. package/package/components/flows/content/FlowModuleComponent.svelte.d.ts +1 -0
  146. package/package/components/flows/content/FlowModuleDebounce.svelte +46 -0
  147. package/package/components/flows/content/FlowModuleDebounce.svelte.d.ts +8 -0
  148. package/package/components/flows/content/FlowModuleEarlyStop.svelte +26 -5
  149. package/package/components/flows/content/FlowModuleWrapper.svelte +1 -0
  150. package/package/components/flows/content/FlowRetries.svelte +57 -57
  151. package/package/components/flows/content/FlowSelectionPanel.svelte +9 -14
  152. package/package/components/flows/content/FlowSelectionPanel.svelte.d.ts +1 -0
  153. package/package/components/flows/content/FlowSettings.svelte +6 -6
  154. package/package/components/flows/content/ScriptEditorDrawer.svelte +1 -1
  155. package/package/components/flows/content/SuspendDrawer.svelte +0 -18
  156. package/package/components/flows/header/FlowYamlEditor.svelte +20 -4
  157. package/package/components/flows/map/FlowErrorHandlerItem.svelte +32 -14
  158. package/package/components/flows/map/FlowErrorHandlerItem.svelte.d.ts +1 -0
  159. package/package/components/flows/map/FlowModuleSchemaItem.svelte +7 -10
  160. package/package/components/flows/map/FlowModuleSchemaItemViewer.svelte +1 -8
  161. package/package/components/flows/map/FlowModuleSchemaItemViewer.svelte.d.ts +0 -2
  162. package/package/components/flows/map/FlowModuleSchemaMap.svelte +343 -137
  163. package/package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +1 -0
  164. package/package/components/flows/map/FlowStickyNode.svelte +24 -16
  165. package/package/components/flows/map/FlowStickyNode.svelte.d.ts +1 -0
  166. package/package/components/flows/map/InsertModuleInner.svelte +2 -0
  167. package/package/components/flows/map/VirtualItemWrapper.svelte +1 -1
  168. package/package/components/flows/pickers/PickHubScriptQuick.svelte.d.ts +1 -1
  169. package/package/components/flows/propPicker/OutputPickerInner.svelte +5 -1
  170. package/package/components/flows/scheduleUtils.js +3 -1
  171. package/package/components/flows/utils.svelte.js +6 -1
  172. package/package/components/git_sync/GitSyncContext.svelte.js +13 -2
  173. package/package/components/git_sync/GitSyncSection.svelte +135 -99
  174. package/package/components/graph/DragGhost.svelte +11 -2
  175. package/package/components/graph/FlowGraphV2.svelte +138 -42
  176. package/package/components/graph/FlowGraphV2.svelte.d.ts +15 -1
  177. package/package/components/graph/GroupActionBar.svelte +124 -0
  178. package/package/components/graph/GroupActionBar.svelte.d.ts +20 -0
  179. package/package/components/graph/GroupHeader.svelte +98 -0
  180. package/package/components/graph/GroupHeader.svelte.d.ts +11 -0
  181. package/package/components/graph/GroupHeaderBlock.svelte +58 -0
  182. package/package/components/graph/GroupHeaderBlock.svelte.d.ts +13 -0
  183. package/package/components/graph/GroupModuleIcons.svelte +163 -0
  184. package/package/components/graph/GroupModuleIcons.svelte.d.ts +11 -0
  185. package/package/components/graph/GroupNodeCard.svelte +127 -0
  186. package/package/components/graph/GroupNodeCard.svelte.d.ts +18 -0
  187. package/package/components/graph/GroupNoteArea.svelte +132 -0
  188. package/package/components/graph/GroupNoteArea.svelte.d.ts +11 -0
  189. package/package/components/graph/GroupOverlay.svelte +71 -0
  190. package/package/components/graph/GroupOverlay.svelte.d.ts +12 -0
  191. package/package/components/graph/MiniFlowGraph.svelte +17 -2
  192. package/package/components/graph/SelectionBoundingBox.svelte +14 -14
  193. package/package/components/graph/compoundLayout.d.ts +17 -1
  194. package/package/components/graph/compoundLayout.js +129 -14
  195. package/package/components/graph/flowStructure.d.ts +63 -0
  196. package/package/components/graph/flowStructure.js +422 -0
  197. package/package/components/graph/flowStructure.test.d.ts +1 -0
  198. package/package/components/graph/flowStructure.test.js +205 -0
  199. package/package/components/graph/graphBuilder.svelte.d.ts +52 -3
  200. package/package/components/graph/graphBuilder.svelte.js +170 -67
  201. package/package/components/graph/graphContext.d.ts +7 -0
  202. package/package/components/graph/groupDetectionUtils.d.ts +24 -1
  203. package/package/components/graph/groupDetectionUtils.js +101 -1
  204. package/package/components/graph/groupEditor.svelte.d.ts +105 -0
  205. package/package/components/graph/groupEditor.svelte.js +253 -0
  206. package/package/components/graph/groupedModulesProxy.svelte.d.ts +55 -0
  207. package/package/components/graph/groupedModulesProxy.svelte.js +130 -0
  208. package/package/components/graph/model.d.ts +2 -1
  209. package/package/components/graph/moveManager.svelte.js +0 -3
  210. package/package/components/graph/nodeExtraSpace.d.ts +32 -0
  211. package/package/components/graph/nodeExtraSpace.js +113 -0
  212. package/package/components/graph/noteColors.d.ts +1 -0
  213. package/package/components/graph/noteColors.js +20 -10
  214. package/package/components/graph/noteUtils.svelte.d.ts +0 -18
  215. package/package/components/graph/noteUtils.svelte.js +6 -41
  216. package/package/components/graph/renderers/edges/BaseEdge.svelte +26 -11
  217. package/package/components/graph/renderers/nodes/AIToolNode.svelte +24 -49
  218. package/package/components/graph/renderers/nodes/AIToolNode.svelte.d.ts +1 -4
  219. package/package/components/graph/renderers/nodes/AssetNode.svelte +1 -27
  220. package/package/components/graph/renderers/nodes/AssetNode.svelte.d.ts +0 -4
  221. package/package/components/graph/renderers/nodes/CollapsedGroupNode.svelte +85 -0
  222. package/package/components/graph/renderers/nodes/CollapsedGroupNode.svelte.d.ts +8 -0
  223. package/package/components/graph/renderers/nodes/ForLoopStartNode.svelte +3 -2
  224. package/package/components/graph/renderers/nodes/GroupEndNode.svelte +9 -0
  225. package/package/components/graph/renderers/nodes/GroupEndNode.svelte.d.ts +6 -0
  226. package/package/components/graph/renderers/nodes/GroupHeadNode.svelte +20 -0
  227. package/package/components/graph/renderers/nodes/GroupHeadNode.svelte.d.ts +8 -0
  228. package/package/components/graph/renderers/nodes/ModuleNode.svelte +8 -5
  229. package/package/components/graph/renderers/triggers/TriggersWrapper.svelte +1 -1
  230. package/package/components/graph/util.d.ts +5 -1
  231. package/package/components/graph/util.js +7 -5
  232. package/package/components/home/Item.svelte +1 -0
  233. package/package/components/home/ItemsList.svelte +1 -1
  234. package/package/components/icons/ActiveCampaignIcon.svelte +10 -0
  235. package/package/components/icons/ActiveCampaignIcon.svelte.d.ts +7 -0
  236. package/package/components/icons/AlgoliaIcon.svelte +7 -0
  237. package/package/components/icons/AlgoliaIcon.svelte.d.ts +7 -0
  238. package/package/components/icons/ApolloIcon.svelte +7 -0
  239. package/package/components/icons/ApolloIcon.svelte.d.ts +7 -0
  240. package/package/components/icons/BambooHrIcon.svelte +7 -0
  241. package/package/components/icons/BambooHrIcon.svelte.d.ts +7 -0
  242. package/package/components/icons/BaremetricsIcon.svelte +7 -0
  243. package/package/components/icons/BaremetricsIcon.svelte.d.ts +7 -0
  244. package/package/components/icons/BitlyIcon.svelte +7 -0
  245. package/package/components/icons/BitlyIcon.svelte.d.ts +7 -0
  246. package/package/components/icons/BloggerIcon.svelte +7 -0
  247. package/package/components/icons/BloggerIcon.svelte.d.ts +7 -0
  248. package/package/components/icons/BlueskyIcon.svelte +7 -0
  249. package/package/components/icons/BlueskyIcon.svelte.d.ts +7 -0
  250. package/package/components/icons/BoxIcon.svelte +7 -0
  251. package/package/components/icons/BoxIcon.svelte.d.ts +7 -0
  252. package/package/components/icons/BrevoIcon.svelte +7 -0
  253. package/package/components/icons/BrevoIcon.svelte.d.ts +7 -0
  254. package/package/components/icons/BrexIcon.svelte +7 -0
  255. package/package/components/icons/BrexIcon.svelte.d.ts +7 -0
  256. package/package/components/icons/BrowserlessIcon.svelte +7 -0
  257. package/package/components/icons/BrowserlessIcon.svelte.d.ts +7 -0
  258. package/package/components/icons/BubbleIcon.svelte +11 -0
  259. package/package/components/icons/BubbleIcon.svelte.d.ts +7 -0
  260. package/package/components/icons/BuildkiteIcon.svelte +7 -0
  261. package/package/components/icons/BuildkiteIcon.svelte.d.ts +7 -0
  262. package/package/components/icons/CalcomIcon.svelte +1 -1
  263. package/package/components/icons/CalendlyIcon.svelte +7 -0
  264. package/package/components/icons/CalendlyIcon.svelte.d.ts +7 -0
  265. package/package/components/icons/CircleCiIcon.svelte +7 -0
  266. package/package/components/icons/CircleCiIcon.svelte.d.ts +7 -0
  267. package/package/components/icons/CiscoIcon.svelte +7 -0
  268. package/package/components/icons/CiscoIcon.svelte.d.ts +7 -0
  269. package/package/components/icons/ClearbitIcon.svelte +7 -0
  270. package/package/components/icons/ClearbitIcon.svelte.d.ts +7 -0
  271. package/package/components/icons/ClerkIcon.svelte +7 -0
  272. package/package/components/icons/ClerkIcon.svelte.d.ts +7 -0
  273. package/package/components/icons/CloseIcon.svelte +37 -0
  274. package/package/components/icons/CloseIcon.svelte.d.ts +7 -0
  275. package/package/components/icons/CloudinaryIcon.svelte +7 -0
  276. package/package/components/icons/CloudinaryIcon.svelte.d.ts +7 -0
  277. package/package/components/icons/CockroachDbIcon.svelte +7 -0
  278. package/package/components/icons/CockroachDbIcon.svelte.d.ts +7 -0
  279. package/package/components/icons/CodaIcon.svelte +7 -0
  280. package/package/components/icons/CodaIcon.svelte.d.ts +7 -0
  281. package/package/components/icons/CohereIcon.svelte +16 -0
  282. package/package/components/icons/CohereIcon.svelte.d.ts +7 -0
  283. package/package/components/icons/CoinMarketCapIcon.svelte +7 -0
  284. package/package/components/icons/CoinMarketCapIcon.svelte.d.ts +7 -0
  285. package/package/components/icons/CoinbaseIcon.svelte +7 -0
  286. package/package/components/icons/CoinbaseIcon.svelte.d.ts +7 -0
  287. package/package/components/icons/ConfluenceIcon.svelte +7 -0
  288. package/package/components/icons/ConfluenceIcon.svelte.d.ts +7 -0
  289. package/package/components/icons/ContentfulIcon.svelte +7 -0
  290. package/package/components/icons/ContentfulIcon.svelte.d.ts +7 -0
  291. package/package/components/icons/ConvertKitIcon.svelte +7 -0
  292. package/package/components/icons/ConvertKitIcon.svelte.d.ts +7 -0
  293. package/package/components/icons/DatoCmsIcon.svelte +7 -0
  294. package/package/components/icons/DatoCmsIcon.svelte.d.ts +7 -0
  295. package/package/components/icons/DeelIcon.svelte +7 -0
  296. package/package/components/icons/DeelIcon.svelte.d.ts +7 -0
  297. package/package/components/icons/DeepLIcon.svelte +7 -0
  298. package/package/components/icons/DeepLIcon.svelte.d.ts +7 -0
  299. package/package/components/icons/DigitalOceanIcon.svelte +7 -0
  300. package/package/components/icons/DigitalOceanIcon.svelte.d.ts +7 -0
  301. package/package/components/icons/DiscourseIcon.svelte +7 -0
  302. package/package/components/icons/DiscourseIcon.svelte.d.ts +7 -0
  303. package/package/components/icons/DocusignIcon.svelte +7 -0
  304. package/package/components/icons/DocusignIcon.svelte.d.ts +7 -0
  305. package/package/components/icons/DropboxIcon.svelte +7 -0
  306. package/package/components/icons/DropboxIcon.svelte.d.ts +7 -0
  307. package/package/components/icons/EdgeDbIcon.svelte +16 -20
  308. package/package/components/icons/EventbriteIcon.svelte +10 -0
  309. package/package/components/icons/EventbriteIcon.svelte.d.ts +7 -0
  310. package/package/components/icons/FigmaIcon.svelte +7 -0
  311. package/package/components/icons/FigmaIcon.svelte.d.ts +7 -0
  312. package/package/components/icons/FlyIcon.svelte +7 -0
  313. package/package/components/icons/FlyIcon.svelte.d.ts +7 -0
  314. package/package/components/icons/FreshdeskIcon.svelte +7 -0
  315. package/package/components/icons/FreshdeskIcon.svelte.d.ts +7 -0
  316. package/package/components/icons/FrontAppIcon.svelte +7 -0
  317. package/package/components/icons/FrontAppIcon.svelte.d.ts +7 -0
  318. package/package/components/icons/GhostCmsIcon.svelte +7 -0
  319. package/package/components/icons/GhostCmsIcon.svelte.d.ts +7 -0
  320. package/package/components/icons/GiphyIcon.svelte +7 -0
  321. package/package/components/icons/GiphyIcon.svelte.d.ts +7 -0
  322. package/package/components/icons/GitBookIcon.svelte +7 -0
  323. package/package/components/icons/GitBookIcon.svelte.d.ts +7 -0
  324. package/package/components/icons/GroqIcon.svelte +7 -0
  325. package/package/components/icons/GroqIcon.svelte.d.ts +7 -0
  326. package/package/components/icons/HoneybadgerIcon.svelte +7 -0
  327. package/package/components/icons/HoneybadgerIcon.svelte.d.ts +7 -0
  328. package/package/components/icons/HttpIcon.svelte +1 -0
  329. package/package/components/icons/IftttIcon.svelte +7 -0
  330. package/package/components/icons/IftttIcon.svelte.d.ts +7 -0
  331. package/package/components/icons/IntercomIcon.svelte +7 -0
  332. package/package/components/icons/IntercomIcon.svelte.d.ts +7 -0
  333. package/package/components/icons/JoomlaIcon.svelte +7 -0
  334. package/package/components/icons/JoomlaIcon.svelte.d.ts +7 -0
  335. package/package/components/icons/LineIcon.svelte +7 -0
  336. package/package/components/icons/LineIcon.svelte.d.ts +7 -0
  337. package/package/components/icons/LinearIcon.svelte +7 -0
  338. package/package/components/icons/LinearIcon.svelte.d.ts +7 -0
  339. package/package/components/icons/LinodeIcon.svelte +7 -0
  340. package/package/components/icons/LinodeIcon.svelte.d.ts +7 -0
  341. package/package/components/icons/LumaAiIcon.svelte +39 -0
  342. package/package/components/icons/LumaAiIcon.svelte.d.ts +7 -0
  343. package/package/components/icons/MSTeamsIcon.svelte +20 -38
  344. package/package/components/icons/MSTeamsIcon.svelte.d.ts +2 -0
  345. package/package/components/icons/MagentoIcon.svelte +7 -0
  346. package/package/components/icons/MagentoIcon.svelte.d.ts +7 -0
  347. package/package/components/icons/MailchimpIcon.svelte +25 -13
  348. package/package/components/icons/MandrillIcon.svelte +7 -0
  349. package/package/components/icons/MandrillIcon.svelte.d.ts +7 -0
  350. package/package/components/icons/MauticIcon.svelte +7 -0
  351. package/package/components/icons/MauticIcon.svelte.d.ts +7 -0
  352. package/package/components/icons/MediumIcon.svelte +7 -0
  353. package/package/components/icons/MediumIcon.svelte.d.ts +7 -0
  354. package/package/components/icons/MiroIcon.svelte +7 -0
  355. package/package/components/icons/MiroIcon.svelte.d.ts +7 -0
  356. package/package/components/icons/MistralIcon.svelte +7 -0
  357. package/package/components/icons/MistralIcon.svelte.d.ts +7 -0
  358. package/package/components/icons/MixpanelIcon.svelte +7 -0
  359. package/package/components/icons/MixpanelIcon.svelte.d.ts +7 -0
  360. package/package/components/icons/MondayIcon.svelte +7 -0
  361. package/package/components/icons/MondayIcon.svelte.d.ts +7 -0
  362. package/package/components/icons/NeonDbIcon.svelte +23 -0
  363. package/package/components/icons/NeonDbIcon.svelte.d.ts +7 -0
  364. package/package/components/icons/NetlifyIcon.svelte +7 -0
  365. package/package/components/icons/NetlifyIcon.svelte.d.ts +7 -0
  366. package/package/components/icons/OneSignalIcon.svelte +9 -0
  367. package/package/components/icons/OneSignalIcon.svelte.d.ts +7 -0
  368. package/package/components/icons/OpenWeatherIcon.svelte +7 -0
  369. package/package/components/icons/OpenWeatherIcon.svelte.d.ts +7 -0
  370. package/package/components/icons/PagerDutyIcon.svelte +7 -0
  371. package/package/components/icons/PagerDutyIcon.svelte.d.ts +7 -0
  372. package/package/components/icons/PandaDocIcon.svelte +7 -0
  373. package/package/components/icons/PandaDocIcon.svelte.d.ts +7 -0
  374. package/package/components/icons/PaypalIcon.svelte +7 -0
  375. package/package/components/icons/PaypalIcon.svelte.d.ts +7 -0
  376. package/package/components/icons/PersonioIcon.svelte +7 -0
  377. package/package/components/icons/PersonioIcon.svelte.d.ts +7 -0
  378. package/package/components/icons/PinterestIcon.svelte +7 -0
  379. package/package/components/icons/PinterestIcon.svelte.d.ts +7 -0
  380. package/package/components/icons/PipedriveIcon.svelte +11 -0
  381. package/package/components/icons/PipedriveIcon.svelte.d.ts +7 -0
  382. package/package/components/icons/PlanetScaleIcon.svelte +7 -0
  383. package/package/components/icons/PlanetScaleIcon.svelte.d.ts +7 -0
  384. package/package/components/icons/PostmarkIcon.svelte +7 -0
  385. package/package/components/icons/PostmarkIcon.svelte.d.ts +7 -0
  386. package/package/components/icons/PusherIcon.svelte +7 -0
  387. package/package/components/icons/PusherIcon.svelte.d.ts +7 -0
  388. package/package/components/icons/QuickbooksIcon.svelte +13 -1
  389. package/package/components/icons/RaindropIcon.svelte +27 -0
  390. package/package/components/icons/RaindropIcon.svelte.d.ts +7 -0
  391. package/package/components/icons/ReadwiseIcon.svelte +12 -0
  392. package/package/components/icons/ReadwiseIcon.svelte.d.ts +7 -0
  393. package/package/components/icons/RenderIcon.svelte +7 -0
  394. package/package/components/icons/RenderIcon.svelte.d.ts +7 -0
  395. package/package/components/icons/ReplicateIcon.svelte +7 -0
  396. package/package/components/icons/ReplicateIcon.svelte.d.ts +7 -0
  397. package/package/components/icons/ResendIcon.svelte +1 -1
  398. package/package/components/icons/RestIcon.svelte +1 -0
  399. package/package/components/icons/RingCentralIcon.svelte +7 -0
  400. package/package/components/icons/RingCentralIcon.svelte.d.ts +7 -0
  401. package/package/components/icons/RocketChatIcon.svelte +7 -0
  402. package/package/components/icons/RocketChatIcon.svelte.d.ts +7 -0
  403. package/package/components/icons/RunPodIcon.svelte +8 -0
  404. package/package/components/icons/RunPodIcon.svelte.d.ts +7 -0
  405. package/package/components/icons/RustIcon.svelte +74 -56
  406. package/package/components/icons/SalesforceIcon.svelte +7 -0
  407. package/package/components/icons/SalesforceIcon.svelte.d.ts +7 -0
  408. package/package/components/icons/SegmentIcon.svelte +7 -0
  409. package/package/components/icons/SegmentIcon.svelte.d.ts +7 -0
  410. package/package/components/icons/SentryIcon.svelte +7 -0
  411. package/package/components/icons/SentryIcon.svelte.d.ts +7 -0
  412. package/package/components/icons/ServiceNowIcon.svelte +7 -0
  413. package/package/components/icons/ServiceNowIcon.svelte.d.ts +7 -0
  414. package/package/components/icons/ShortcutIcon.svelte +7 -0
  415. package/package/components/icons/ShortcutIcon.svelte.d.ts +7 -0
  416. package/package/components/icons/SigNozIcon.svelte +8 -0
  417. package/package/components/icons/SigNozIcon.svelte.d.ts +7 -0
  418. package/package/components/icons/SmartsheetIcon.svelte +7 -0
  419. package/package/components/icons/SmartsheetIcon.svelte.d.ts +7 -0
  420. package/package/components/icons/SpeechifyIcon.svelte +7 -0
  421. package/package/components/icons/SpeechifyIcon.svelte.d.ts +7 -0
  422. package/package/components/icons/SplitwiseIcon.svelte +7 -0
  423. package/package/components/icons/SplitwiseIcon.svelte.d.ts +7 -0
  424. package/package/components/icons/StravaIcon.svelte +7 -0
  425. package/package/components/icons/StravaIcon.svelte.d.ts +7 -0
  426. package/package/components/icons/TallyIcon.svelte +7 -0
  427. package/package/components/icons/TallyIcon.svelte.d.ts +7 -0
  428. package/package/components/icons/TelnyxIcon.svelte +19 -0
  429. package/package/components/icons/TelnyxIcon.svelte.d.ts +7 -0
  430. package/package/components/icons/ThreadsIcon.svelte +7 -0
  431. package/package/components/icons/ThreadsIcon.svelte.d.ts +7 -0
  432. package/package/components/icons/TodoistIcon.svelte +7 -0
  433. package/package/components/icons/TodoistIcon.svelte.d.ts +7 -0
  434. package/package/components/icons/TogetherAiIcon.svelte +23 -0
  435. package/package/components/icons/TogetherAiIcon.svelte.d.ts +7 -0
  436. package/package/components/icons/TrelloIcon.svelte +22 -1
  437. package/package/components/icons/TursoIcon.svelte +7 -0
  438. package/package/components/icons/TursoIcon.svelte.d.ts +7 -0
  439. package/package/components/icons/TwitchIcon.svelte +7 -0
  440. package/package/components/icons/TwitchIcon.svelte.d.ts +7 -0
  441. package/package/components/icons/TwitterIcon.svelte +7 -0
  442. package/package/components/icons/TwitterIcon.svelte.d.ts +7 -0
  443. package/package/components/icons/TypeformIcon.svelte +1 -1
  444. package/package/components/icons/VercelIcon.svelte +7 -0
  445. package/package/components/icons/VercelIcon.svelte.d.ts +7 -0
  446. package/package/components/icons/WebflowIcon.svelte +7 -0
  447. package/package/components/icons/WebflowIcon.svelte.d.ts +7 -0
  448. package/package/components/icons/WooCommerceIcon.svelte +7 -0
  449. package/package/components/icons/WooCommerceIcon.svelte.d.ts +7 -0
  450. package/package/components/icons/WordpressIcon.svelte +7 -0
  451. package/package/components/icons/WordpressIcon.svelte.d.ts +7 -0
  452. package/package/components/icons/XataIcon.svelte +13 -0
  453. package/package/components/icons/XataIcon.svelte.d.ts +7 -0
  454. package/package/components/icons/YelpIcon.svelte +7 -0
  455. package/package/components/icons/YelpIcon.svelte.d.ts +7 -0
  456. package/package/components/icons/YnabIcon.svelte +7 -0
  457. package/package/components/icons/YnabIcon.svelte.d.ts +7 -0
  458. package/package/components/icons/YoutubeIcon.svelte +7 -0
  459. package/package/components/icons/YoutubeIcon.svelte.d.ts +7 -0
  460. package/package/components/icons/ZendeskIcon.svelte +1 -1
  461. package/package/components/icons/ZeroTierIcon.svelte +7 -0
  462. package/package/components/icons/ZeroTierIcon.svelte.d.ts +7 -0
  463. package/package/components/icons/ZoomIcon.svelte +7 -0
  464. package/package/components/icons/ZoomIcon.svelte.d.ts +7 -0
  465. package/package/components/icons/index.d.ts +111 -1
  466. package/package/components/icons/index.js +225 -2
  467. package/package/components/instanceSettings/GhesAppSettings.svelte +161 -0
  468. package/package/components/instanceSettings/GhesAppSettings.svelte.d.ts +8 -0
  469. package/package/components/instanceSettings/IndexerMemorySettings.svelte +19 -8
  470. package/package/components/instanceSettings/InstanceAISettings.svelte +132 -0
  471. package/package/components/instanceSettings/InstanceAISettings.svelte.d.ts +10 -0
  472. package/package/components/instanceSettings/WorkspaceRegistries.svelte +293 -0
  473. package/package/components/instanceSettings/WorkspaceRegistries.svelte.d.ts +8 -0
  474. package/package/components/instanceSettings/WsConnectivityTest.svelte +177 -0
  475. package/package/components/instanceSettings/WsConnectivityTest.svelte.d.ts +7 -0
  476. package/package/components/instanceSettings.d.ts +3 -1
  477. package/package/components/instanceSettings.js +92 -2
  478. package/package/components/mcp/McpScopeSelector.svelte +408 -0
  479. package/package/components/mcp/McpScopeSelector.svelte.d.ts +7 -0
  480. package/package/components/meltComponents/Popover.svelte +0 -1
  481. package/package/components/raw_apps/RawAppPreview.svelte +6 -2
  482. package/package/components/recording/FlowRecordingReplay.svelte +94 -52
  483. package/package/components/recording/FlowRecordingReplay.svelte.d.ts +10 -1
  484. package/package/components/recording/ScriptRecordingReplay.svelte +140 -76
  485. package/package/components/recording/ScriptRecordingReplay.svelte.d.ts +10 -1
  486. package/package/components/runs/JobRunsPreview.svelte +8 -1
  487. package/package/components/runs/TimeframeSelect.svelte +0 -1
  488. package/package/components/schema/JobSchemaPicker.svelte +8 -2
  489. package/package/components/schema/JobSchemaPicker.svelte.d.ts +1 -0
  490. package/package/components/schema/SchemaFormDND.svelte +15 -3
  491. package/package/components/scriptEditor/LogPanel.svelte +78 -68
  492. package/package/components/script_builder.d.ts +1 -1
  493. package/package/components/scripts/CreateActionsScript.svelte +3 -3
  494. package/package/components/scripts/WacExportDrawer.svelte +127 -0
  495. package/package/components/scripts/WacExportDrawer.svelte.d.ts +8 -0
  496. package/package/components/scripts/scriptStore.svelte.d.ts +2 -0
  497. package/package/components/scripts/scriptStore.svelte.js +2 -0
  498. package/package/components/select/SelectDropdown.svelte +1 -1
  499. package/package/components/settings/AIPromptsModal.svelte +5 -2
  500. package/package/components/settings/AIPromptsModal.svelte.d.ts +1 -1
  501. package/package/components/settings/CloudQuotas.svelte +152 -0
  502. package/package/components/settings/CloudQuotas.svelte.d.ts +3 -0
  503. package/package/components/settings/CreateToken.svelte +15 -430
  504. package/package/components/settings/Trashbin.svelte +248 -0
  505. package/package/components/settings/Trashbin.svelte.d.ts +3 -0
  506. package/package/components/sidebar/MultiplayerMenu.svelte +14 -4
  507. package/package/components/triggers/DeleteTriggerButton.svelte +1 -0
  508. package/package/components/triggers/PermissionedAsLine.svelte +66 -0
  509. package/package/components/triggers/PermissionedAsLine.svelte.d.ts +9 -0
  510. package/package/components/triggers/TriggerEditorToolbar.svelte +2 -2
  511. package/package/components/triggers/TriggerTokens.svelte +3 -3
  512. package/package/components/triggers/email/EmailTriggerEditorInner.svelte +19 -1
  513. package/package/components/triggers/email/utils.js +3 -1
  514. package/package/components/triggers/gcp/GcpTriggerEditorInner.svelte +24 -4
  515. package/package/components/triggers/gcp/utils.js +2 -0
  516. package/package/components/triggers/http/RouteEditorConfigSection.svelte +22 -3
  517. package/package/components/triggers/http/RouteEditorInner.svelte +28 -6
  518. package/package/components/triggers/http/RoutesGenerator.svelte +13 -2
  519. package/package/components/triggers/http/utils.js +3 -1
  520. package/package/components/triggers/kafka/KafkaTriggerEditorInner.svelte +23 -6
  521. package/package/components/triggers/kafka/utils.js +3 -1
  522. package/package/components/triggers/mqtt/MqttTriggerEditorInner.svelte +27 -5
  523. package/package/components/triggers/mqtt/utils.js +2 -0
  524. package/package/components/triggers/native/NativeTriggerEditor.svelte +23 -1
  525. package/package/components/triggers/native/NativeTriggerTable.svelte +14 -3
  526. package/package/components/triggers/native/utils.js +3 -2
  527. package/package/components/triggers/nats/NatsTriggerEditorInner.svelte +19 -1
  528. package/package/components/triggers/nats/utils.js +2 -0
  529. package/package/components/triggers/postgres/PostgresTriggerEditorInner.svelte +19 -1
  530. package/package/components/triggers/postgres/utils.js +2 -0
  531. package/package/components/triggers/schedules/ScheduleEditorInner.svelte +29 -7
  532. package/package/components/triggers/sqs/SqsTriggerEditorInner.svelte +19 -1
  533. package/package/components/triggers/sqs/utils.js +2 -0
  534. package/package/components/triggers/utils.js +9 -2
  535. package/package/components/triggers/websocket/WebsocketTriggerEditorInner.svelte +24 -4
  536. package/package/components/triggers/websocket/utils.js +3 -1
  537. package/package/components/workspaceSettings/AISettings.svelte +342 -214
  538. package/package/components/workspaceSettings/AISettings.svelte.d.ts +18 -10
  539. package/package/components/workspaceSettings/CreateWorkspace.svelte +304 -196
  540. package/package/components/workspaceSettings/CustomInstanceDbWizardModal.svelte +1 -2
  541. package/package/components/workspaceSettings/DucklakeSettings.svelte +1 -1
  542. package/package/components/workspaceSettings/InstanceFallbackSettings.svelte +75 -0
  543. package/package/components/workspaceSettings/InstanceFallbackSettings.svelte.d.ts +9 -0
  544. package/package/components/workspaceSettings/StorageSettings.svelte +4 -35
  545. package/package/components/workspaceSettings/VolumeStorageSettings.svelte +80 -0
  546. package/package/components/workspaceSettings/VolumeStorageSettings.svelte.d.ts +10 -0
  547. package/package/components/workspaceSettings/WorkspaceIntegrations.svelte +4 -1
  548. package/package/gen/core/OpenAPI.js +1 -1
  549. package/package/gen/schemas.gen.d.ts +294 -94
  550. package/package/gen/schemas.gen.js +294 -94
  551. package/package/gen/services.gen.d.ts +121 -5
  552. package/package/gen/services.gen.js +237 -5
  553. package/package/gen/types.gen.d.ts +715 -91
  554. package/package/githubApp.js +19 -1
  555. package/package/hubPaths.json +8 -4
  556. package/package/infer.d.ts +1 -1
  557. package/package/infer.js +5 -1
  558. package/package/logoutRedirect.d.ts +1 -0
  559. package/package/logoutRedirect.js +24 -0
  560. package/package/script_helpers.d.ts +8 -2
  561. package/package/script_helpers.js +15 -1
  562. package/package/services/trashService.d.ts +28 -0
  563. package/package/services/trashService.js +47 -0
  564. package/package/stores.d.ts +1 -0
  565. package/package/stores.js +1 -0
  566. package/package/system_prompts/index.d.ts +1 -0
  567. package/package/system_prompts/index.js +7 -0
  568. package/package/system_prompts/prompts.d.ts +7 -5
  569. package/package/system_prompts/prompts.js +182 -11
  570. package/package/templates/wac_python.py.template +42 -0
  571. package/package/templates/wac_typescript.ts.template +48 -0
  572. package/package/utils_deployable.d.ts +22 -21
  573. package/package/utils_deployable.js +58 -25
  574. package/package/utils_workspace_deploy.d.ts +15 -4
  575. package/package/utils_workspace_deploy.js +19 -15
  576. package/package/wsUrl.d.ts +1 -0
  577. package/package/wsUrl.js +15 -0
  578. package/package.json +13 -5
  579. package/dist/sharedUtils/assets/tokens/colorTokensConfig.d.ts +0 -2
  580. package/dist/sharedUtils/base.d.ts +0 -1
  581. package/dist/sharedUtils/cloud.d.ts +0 -1
  582. package/dist/sharedUtils/common.d.ts +0 -111
  583. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/count.d.ts +0 -5
  584. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/delete.d.ts +0 -5
  585. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/insert.d.ts +0 -5
  586. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/select.d.ts +0 -13
  587. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/update.d.ts +0 -11
  588. package/dist/sharedUtils/components/apps/components/display/dbtable/utils.d.ts +0 -95
  589. package/dist/sharedUtils/components/apps/editor/appPolicy.d.ts +0 -6
  590. package/dist/sharedUtils/components/apps/editor/appUtilsCore.d.ts +0 -7
  591. package/dist/sharedUtils/components/apps/editor/appUtilsS3.d.ts +0 -33
  592. package/dist/sharedUtils/components/apps/editor/commonAppUtils.d.ts +0 -10
  593. package/dist/sharedUtils/components/apps/editor/component/components.d.ts +0 -5371
  594. package/dist/sharedUtils/components/apps/editor/component/default-codes.d.ts +0 -3
  595. package/dist/sharedUtils/components/apps/editor/component/index.d.ts +0 -3
  596. package/dist/sharedUtils/components/apps/editor/component/sets.d.ts +0 -7
  597. package/dist/sharedUtils/components/apps/editor/componentsPanel/componentDefaultProps.d.ts +0 -3
  598. package/dist/sharedUtils/components/apps/gridUtils.d.ts +0 -14
  599. package/dist/sharedUtils/components/apps/inputType.d.ts +0 -178
  600. package/dist/sharedUtils/components/apps/rx.d.ts +0 -29
  601. package/dist/sharedUtils/components/apps/sharedTypes.d.ts +0 -21
  602. package/dist/sharedUtils/components/apps/types.d.ts +0 -274
  603. package/dist/sharedUtils/components/assets/lib.d.ts +0 -25
  604. package/dist/sharedUtils/components/common/alert/model.d.ts +0 -2
  605. package/dist/sharedUtils/components/common/badge/model.d.ts +0 -8
  606. package/dist/sharedUtils/components/common/button/model.d.ts +0 -45
  607. package/dist/sharedUtils/components/common/fileInput/model.d.ts +0 -1
  608. package/dist/sharedUtils/components/common/index.d.ts +0 -24
  609. package/dist/sharedUtils/components/common/skeleton/model.d.ts +0 -21
  610. package/dist/sharedUtils/components/dbTypes.d.ts +0 -14
  611. package/dist/sharedUtils/components/diff_drawer.d.ts +0 -26
  612. package/dist/sharedUtils/components/ducklake.d.ts +0 -1
  613. package/dist/sharedUtils/components/flows/scheduleUtils.d.ts +0 -7
  614. package/dist/sharedUtils/components/icons/index.d.ts +0 -101
  615. package/dist/sharedUtils/components/random_positive_adjetive.d.ts +0 -1
  616. package/dist/sharedUtils/components/raw_apps/rawAppPolicy.d.ts +0 -10
  617. package/dist/sharedUtils/components/raw_apps/utils.d.ts +0 -15
  618. package/dist/sharedUtils/components/triggers/email/utils.d.ts +0 -4
  619. package/dist/sharedUtils/components/triggers/gcp/utils.d.ts +0 -2
  620. package/dist/sharedUtils/components/triggers/http/utils.d.ts +0 -11
  621. package/dist/sharedUtils/components/triggers/kafka/utils.d.ts +0 -2
  622. package/dist/sharedUtils/components/triggers/mqtt/utils.d.ts +0 -2
  623. package/dist/sharedUtils/components/triggers/nats/utils.d.ts +0 -2
  624. package/dist/sharedUtils/components/triggers/postgres/utils.d.ts +0 -8
  625. package/dist/sharedUtils/components/triggers/sqs/utils.d.ts +0 -2
  626. package/dist/sharedUtils/components/triggers/triggers.svelte.d.ts +0 -32
  627. package/dist/sharedUtils/components/triggers/utils.d.ts +0 -80
  628. package/dist/sharedUtils/components/triggers/websocket/utils.d.ts +0 -2
  629. package/dist/sharedUtils/components/triggers.d.ts +0 -20
  630. package/dist/sharedUtils/gen/core/ApiError.d.ts +0 -10
  631. package/dist/sharedUtils/gen/core/ApiRequestOptions.d.ts +0 -13
  632. package/dist/sharedUtils/gen/core/ApiResult.d.ts +0 -7
  633. package/dist/sharedUtils/gen/core/CancelablePromise.d.ts +0 -26
  634. package/dist/sharedUtils/gen/core/OpenAPI.d.ts +0 -27
  635. package/dist/sharedUtils/gen/core/request.d.ts +0 -29
  636. package/dist/sharedUtils/gen/index.d.ts +0 -6
  637. package/dist/sharedUtils/gen/schemas.gen.d.ts +0 -7036
  638. package/dist/sharedUtils/gen/services.gen.d.ts +0 -6047
  639. package/dist/sharedUtils/gen/types.gen.d.ts +0 -21881
  640. package/dist/sharedUtils/history.svelte.d.ts +0 -9
  641. package/dist/sharedUtils/hub.d.ts +0 -49
  642. package/dist/sharedUtils/jsr.json +0 -6
  643. package/dist/sharedUtils/lib.d.ts +0 -5
  644. package/dist/sharedUtils/lib.es.js +0 -1588
  645. package/dist/sharedUtils/package.json +0 -12
  646. package/dist/sharedUtils/schema.d.ts +0 -3
  647. package/dist/sharedUtils/stores.d.ts +0 -97
  648. package/dist/sharedUtils/svelte5Utils.svelte.d.ts +0 -80
  649. package/dist/sharedUtils/toast.d.ts +0 -8
  650. package/dist/sharedUtils/utils.d.ts +0 -265
  651. package/package/components/graph/NodeContextMenu.svelte +0 -36
  652. package/package/components/graph/NodeContextMenu.svelte.d.ts +0 -8
  653. package/package/svelte5Utils.svelte.d.ts +0 -184
@@ -16,6 +16,11 @@ export declare function signDebugRequest(workspace: string, code: string, langua
16
16
  code: string;
17
17
  job_id: string;
18
18
  }>;
19
+ /**
20
+ * Sign a multiplayer session request. Returns a JWT token that the
21
+ * multiplayer server will verify before accepting the WebSocket connection.
22
+ */
23
+ export declare function signMultiplayerRequest(workspace: string): Promise<string>;
19
24
  /**
20
25
  * Get a user-friendly error message for debug errors
21
26
  */
@@ -61,6 +61,26 @@ export async function signDebugRequest(workspace, code, language) {
61
61
  }
62
62
  return await response.json();
63
63
  }
64
+ /**
65
+ * Sign a multiplayer session request. Returns a JWT token that the
66
+ * multiplayer server will verify before accepting the WebSocket connection.
67
+ */
68
+ export async function signMultiplayerRequest(workspace) {
69
+ if (!workspace) {
70
+ throw new Error('No workspace selected');
71
+ }
72
+ const response = await fetch(`/api/w/${workspace}/debug/sign_multiplayer`, {
73
+ method: 'POST',
74
+ headers: { 'Content-Type': 'application/json' },
75
+ body: JSON.stringify({})
76
+ });
77
+ if (!response.ok) {
78
+ const errorText = await response.text();
79
+ throw new Error(errorText || 'Failed to sign multiplayer session');
80
+ }
81
+ const data = await response.json();
82
+ return data.token;
83
+ }
64
84
  /**
65
85
  * Get a user-friendly error message for debug errors
66
86
  */
@@ -45,7 +45,7 @@ export { default as DebugPanel } from './DebugPanel.svelte';
45
45
  export { default as DebugVariableViewer } from './DebugVariableViewer.svelte';
46
46
  export { default as DebugConsole } from './DebugConsole.svelte';
47
47
  export { DAPClient, getDAPClient, resetDAPClient, debugState, type DebugState, type Breakpoint, type StackFrame, type Variable, type Scope } from './dapClient';
48
- export { fetchContextualVariables, signDebugRequest, getDebugErrorMessage, isDebuggableLanguage, getDebugFileExtension } from './debugUtils';
48
+ export { fetchContextualVariables, signDebugRequest, signMultiplayerRequest, getDebugErrorMessage, isDebuggableLanguage, getDebugFileExtension } from './debugUtils';
49
49
  /**
50
50
  * Language to debug endpoint path mapping.
51
51
  * Uses the unified DAP Debug Service with path-based routing.
@@ -46,7 +46,8 @@ export { default as DebugVariableViewer } from './DebugVariableViewer.svelte';
46
46
  export { default as DebugConsole } from './DebugConsole.svelte';
47
47
  export { DAPClient, getDAPClient, resetDAPClient, debugState } from './dapClient';
48
48
  // Re-export shared utilities
49
- export { fetchContextualVariables, signDebugRequest, getDebugErrorMessage, isDebuggableLanguage, getDebugFileExtension } from './debugUtils';
49
+ export { fetchContextualVariables, signDebugRequest, signMultiplayerRequest, getDebugErrorMessage, isDebuggableLanguage, getDebugFileExtension } from './debugUtils';
50
+ import { buildWsUrl } from '../../wsUrl';
50
51
  /**
51
52
  * Language to debug endpoint path mapping.
52
53
  * Uses the unified DAP Debug Service with path-based routing.
@@ -67,12 +68,7 @@ export const DAP_ENDPOINT_PATHS = {
67
68
  */
68
69
  export function getDebugServerUrl(language) {
69
70
  const path = DAP_ENDPOINT_PATHS[language] || DAP_ENDPOINT_PATHS.python3;
70
- if (typeof window === 'undefined') {
71
- // SSR fallback
72
- return `ws://localhost:3003${path}`;
73
- }
74
- const wsProtocol = window.location.protocol === 'https:' ? 'wss' : 'ws';
75
- return `${wsProtocol}://${window.location.host}/ws_debug${path}`;
71
+ return buildWsUrl(`/ws_debug${path}`);
76
72
  }
77
73
  /**
78
74
  * @deprecated Use isDebuggableLanguage instead
@@ -5,69 +5,247 @@ import { Button } from '../common';
5
5
  import Drawer from '../common/drawer/Drawer.svelte';
6
6
  import DrawerContent from '../common/drawer/DrawerContent.svelte';
7
7
  import { importFlowStore } from './flowStore.svelte';
8
- import { Loader2, Plus } from 'lucide-svelte';
8
+ import { importScriptStore } from '../scripts/scriptStore.svelte';
9
+ import Modal from '../common/modal/Modal.svelte';
10
+ import Toggle from '../Toggle.svelte';
11
+ import Tabs from '../common/tabs/Tabs.svelte';
12
+ import Tab from '../common/tabs/Tab.svelte';
13
+ import { PythonIcon, TypeScriptIcon } from '../common/languageIcons';
14
+ import { Code2, Loader2, Plus } from 'lucide-svelte';
9
15
  import YAML from 'yaml';
16
+ const SKIP_FLOW_MODAL_KEY = 'windmill_skip_flow_modal';
10
17
  let drawer = $state(undefined);
18
+ let wacDrawer = $state(undefined);
11
19
  let pendingRaw = $state(undefined);
20
+ let pendingWacRaw = $state(undefined);
12
21
  let importType = $state('yaml');
22
+ let wacImportType = $state('yaml');
23
+ let flowModalOpen = $state(false);
24
+ let wacHovered = $state(false);
25
+ let skipModal = $state(typeof localStorage !== 'undefined' && localStorage.getItem(SKIP_FLOW_MODAL_KEY) === 'true');
13
26
  async function importRaw() {
14
27
  $importFlowStore =
15
28
  importType === 'yaml' ? YAML.parse(pendingRaw ?? '') : JSON.parse(pendingRaw ?? '');
16
29
  await goto('/flows/add');
17
30
  drawer?.closeDrawer?.();
18
31
  }
32
+ async function importWacRaw() {
33
+ const parsed = wacImportType === 'yaml' ? YAML.parse(pendingWacRaw ?? '') : JSON.parse(pendingWacRaw ?? '');
34
+ $importScriptStore = parsed;
35
+ await goto(`${base}/scripts/add?import=true`);
36
+ wacDrawer?.closeDrawer?.();
37
+ }
38
+ function handleFlowClick() {
39
+ if (skipModal) {
40
+ goto(`${base}/flows/add?nodraft=true`);
41
+ }
42
+ else {
43
+ flowModalOpen = true;
44
+ }
45
+ }
46
+ function selectFlowEditor() {
47
+ flowModalOpen = false;
48
+ goto(`${base}/flows/add?nodraft=true`);
49
+ }
50
+ function selectWacPython() {
51
+ flowModalOpen = false;
52
+ goto(`${base}/scripts/add?nodraft=true&wac=python`);
53
+ }
54
+ function selectWacTypescript() {
55
+ flowModalOpen = false;
56
+ goto(`${base}/scripts/add?nodraft=true&wac=typescript`);
57
+ }
58
+ function toggleSkipModal() {
59
+ skipModal = !skipModal;
60
+ localStorage.setItem(SKIP_FLOW_MODAL_KEY, String(skipModal));
61
+ }
19
62
  </script>
20
63
 
21
64
  <!-- Buttons -->
22
65
  <div class="flex flex-row gap-2">
23
- <Button
24
- id="create-flow-button"
25
- aiId="flows-create-actions-flow"
26
- aiDescription="Create a new flow"
27
- unifiedSize="lg"
28
- startIcon={{ icon: Plus }}
29
- endIcon={{ icon: BarsStaggered }}
30
- href="{base}/flows/add?nodraft=true"
31
- variant="accent"
32
- dropdownItems={[
33
- {
34
- label: 'Import from YAML',
35
- onClick: () => {
36
- drawer?.toggleDrawer?.()
37
- importType = 'yaml'
38
- }
39
- },
40
- {
41
- label: 'Import from JSON',
42
- onClick: () => {
43
- drawer?.toggleDrawer?.()
44
- importType = 'json'
45
- }
66
+ <Button
67
+ id="create-flow-button"
68
+ aiId="flows-create-actions-flow"
69
+ aiDescription="Create a new flow"
70
+ unifiedSize="lg"
71
+ startIcon={{ icon: Plus }}
72
+ endIcon={{ icon: BarsStaggered }}
73
+ on:click={handleFlowClick}
74
+ variant="accent"
75
+ dropdownItems={[
76
+ {
77
+ label: 'Import Flow',
78
+ onClick: () => {
79
+ drawer?.toggleDrawer?.()
80
+ }
81
+ },
82
+ {
83
+ label: 'Workflow-as-Code in TypeScript',
84
+ onClick: () => selectWacTypescript()
85
+ },
86
+ {
87
+ label: 'Workflow-as-Code in Python',
88
+ onClick: () => selectWacPython()
89
+ },
90
+ {
91
+ label: 'Import Workflow-as-Code',
92
+ onClick: () => {
93
+ wacDrawer?.toggleDrawer?.()
46
94
  }
47
- ]}
48
- >
49
- Flow
50
- </Button>
95
+ }
96
+ ]}
97
+ >
98
+ Flow
99
+ </Button>
100
+ </div>
101
+
102
+ <!-- Flow Type Selection Modal -->
103
+ <Modal bind:open={flowModalOpen} title="Create a new flow">
104
+ <div class="flex flex-col gap-4 pr-4">
105
+ <div class="grid grid-cols-2 gap-8">
106
+ <!-- Flow Editor option -->
107
+ <button
108
+ class="flex flex-col items-center gap-3 p-6 rounded-lg border-2 border-gray-200 dark:border-gray-700 hover:border-blue-500 dark:hover:border-blue-400 hover:bg-blue-50 dark:hover:bg-blue-900/20 transition-all cursor-pointer group"
109
+ onclick={selectFlowEditor}
110
+ >
111
+ <div
112
+ class="w-32 h-32 rounded-xl bg-blue-100 dark:bg-blue-900/40 flex items-center justify-center group-hover:bg-blue-200 dark:group-hover:bg-blue-800/50 transition-colors"
113
+ >
114
+ <BarsStaggered size={32} class="text-blue-600 dark:text-blue-400" style="" />
115
+ </div>
116
+ <div class="text-center">
117
+ <h3 class="font-semibold text-primary">Flow Editor</h3>
118
+ <p class="text-xs text-tertiary mt-1">
119
+ Visual builder for composing scripts into workflows with branching, loops, and error
120
+ handling.
121
+ </p>
122
+ </div>
123
+ </button>
124
+
125
+ <!-- Workflow-as-Code option -->
126
+ <!-- svelte-ignore a11y_no_static_element_interactions -->
127
+ <div
128
+ class="relative rounded-lg border-2 border-gray-200 dark:border-gray-700 hover:border-purple-500 dark:hover:border-purple-400 transition-all cursor-pointer overflow-hidden"
129
+ onmouseenter={() => (wacHovered = true)}
130
+ onmouseleave={() => (wacHovered = false)}
131
+ >
132
+ <!-- Alpha badge -->
133
+ <div
134
+ class="absolute top-2 right-2 z-10 px-2 py-0.5 rounded-full bg-purple-500 text-white text-2xs font-bold uppercase tracking-wide"
135
+ >
136
+ Alpha
137
+ </div>
138
+
139
+ <!-- Default state -->
140
+ <div
141
+ class="flex flex-col items-center gap-3 p-6 absolute inset-0 transition-all duration-300"
142
+ style="opacity: {wacHovered ? 0 : 1}; transform: scale({wacHovered ? 0.95 : 1})"
143
+ >
144
+ <div
145
+ class="w-32 h-32 rounded-xl bg-purple-100 dark:bg-purple-900/40 flex items-center justify-center transition-colors"
146
+ >
147
+ <Code2 size={32} class="text-purple-600 dark:text-purple-400" />
148
+ </div>
149
+ <div class="text-center">
150
+ <h3 class="font-semibold text-primary whitespace-nowrap">Workflow-as-Code</h3>
151
+ <p class="text-xs text-tertiary mt-1">
152
+ Write workflows as Python or TypeScript code as a regular Windmill script.
153
+ </p>
154
+ </div>
155
+ </div>
156
+
157
+ <!-- Hover state: split into TypeScript / Python -->
158
+ <div
159
+ class="flex flex-col h-full transition-all duration-300"
160
+ style="opacity: {wacHovered ? 1 : 0}; transform: scale({wacHovered ? 1 : 0.95})"
161
+ >
162
+ <button
163
+ class="flex-1 flex items-center justify-center gap-3 p-4 hover:bg-purple-100 dark:hover:bg-purple-900/40 transition-colors border-b border-gray-200 dark:border-gray-700"
164
+ onclick={selectWacTypescript}
165
+ >
166
+ <div
167
+ class="w-12 h-12 rounded-xl bg-purple-100 dark:bg-purple-900/40 flex items-center justify-center"
168
+ >
169
+ <TypeScriptIcon width={24} height={24} />
170
+ </div>
171
+ <span class="font-semibold text-sm text-primary">TypeScript</span>
172
+ </button>
173
+ <button
174
+ class="flex-1 flex items-center justify-center gap-3 p-4 hover:bg-purple-100 dark:hover:bg-purple-900/40 transition-colors"
175
+ onclick={selectWacPython}
176
+ >
177
+ <div
178
+ class="w-12 h-12 rounded-xl bg-purple-100 dark:bg-purple-900/40 flex items-center justify-center"
179
+ >
180
+ <PythonIcon width={24} height={24} />
181
+ </div>
182
+ <span class="font-semibold text-sm text-primary">Python</span>
183
+ </button>
184
+ </div>
185
+ </div>
186
+ </div>
187
+
188
+ <div class="flex items-center gap-2 px-1">
189
+ <Toggle size="xs" checked={skipModal} on:change={toggleSkipModal} />
190
+ <span class="text-2xs text-tertiary">Always use the Flow editor (skip this modal)</span>
191
+ </div>
51
192
  </div>
193
+ </Modal>
52
194
 
53
- <!-- Raw JSON -->
195
+ <!-- Import Drawer -->
54
196
  <Drawer bind:this={drawer} size="800px">
55
- <DrawerContent
56
- title={'Import flow from ' + (importType === 'yaml' ? 'YAML' : 'JSON')}
57
- on:close={() => drawer?.toggleDrawer?.()}
58
- >
59
- {#await import('../SimpleEditor.svelte')}
60
- <Loader2 class="animate-spin" />
61
- {:then Module}
62
- <Module.default
63
- bind:code={pendingRaw}
64
- lang={importType}
65
- class="h-full"
66
- fixedOverflowWidgets={false}
67
- />
68
- {/await}
197
+ <DrawerContent title="Import flow from YAML/JSON" on:close={() => drawer?.toggleDrawer?.()}>
198
+ <Tabs bind:selected={importType}>
199
+ <Tab value="yaml" label="YAML" />
200
+ <Tab value="json" label="JSON" />
201
+ {#snippet content()}
202
+ <div class="relative pt-2 h-full">
203
+ {#key importType}
204
+ {#await import('../SimpleEditor.svelte')}
205
+ <Loader2 class="animate-spin" />
206
+ {:then Module}
207
+ <Module.default
208
+ bind:code={pendingRaw}
209
+ lang={importType}
210
+ class="h-full"
211
+ fixedOverflowWidgets={false}
212
+ />
213
+ {/await}
214
+ {/key}
215
+ </div>
216
+ {/snippet}
217
+ </Tabs>
69
218
  {#snippet actions()}
70
219
  <Button size="sm" on:click={importRaw}>Import</Button>
71
220
  {/snippet}
72
221
  </DrawerContent>
73
222
  </Drawer>
223
+
224
+ <!-- Import WAC Drawer -->
225
+ <Drawer bind:this={wacDrawer} size="800px">
226
+ <DrawerContent title="Import Workflow-as-Code" on:close={() => wacDrawer?.toggleDrawer?.()}>
227
+ <Tabs bind:selected={wacImportType}>
228
+ <Tab value="yaml" label="YAML" />
229
+ <Tab value="json" label="JSON" />
230
+ {#snippet content()}
231
+ <div class="relative pt-2 h-full">
232
+ {#key wacImportType}
233
+ {#await import('../SimpleEditor.svelte')}
234
+ <Loader2 class="animate-spin" />
235
+ {:then Module}
236
+ <Module.default
237
+ bind:code={pendingWacRaw}
238
+ lang={wacImportType}
239
+ class="h-full"
240
+ fixedOverflowWidgets={false}
241
+ />
242
+ {/await}
243
+ {/key}
244
+ </div>
245
+ {/snippet}
246
+ </Tabs>
247
+ {#snippet actions()}
248
+ <Button size="sm" on:click={importWacRaw}>Import</Button>
249
+ {/snippet}
250
+ </DrawerContent>
251
+ </Drawer>
@@ -4,10 +4,38 @@ import { SecondsInput } from '../common';
4
4
  import { enterpriseLicense } from '../../stores';
5
5
  import Label from '../Label.svelte';
6
6
  let { debounce_delay_s = $bindable(), debounce_key = $bindable(), debounce_args_to_accumulate = $bindable(), max_total_debouncing_time = $bindable(), max_total_debounces_amount = $bindable(), schema = undefined, placeholder, size = 'xs', color = undefined, fontClass = 'font-normal' } = $props();
7
- // Get list of array-type arguments from schema
7
+ // Check if an originalType like "string | string[]" is a top-level
8
+ // union where at least one member is an array type (ends with "[]").
9
+ // Splits on "|" only at the top level (not inside {}, <>, or ()).
10
+ function isUnionWithArray(originalType) {
11
+ if (!originalType)
12
+ return false;
13
+ let depth = 0;
14
+ const parts = [];
15
+ let cur = '';
16
+ for (const ch of originalType) {
17
+ if (ch === '{' || ch === '<' || ch === '(')
18
+ depth++;
19
+ else if (ch === '}' || ch === '>' || ch === ')')
20
+ depth--;
21
+ else if (ch === '|' && depth === 0) {
22
+ parts.push(cur.trim());
23
+ cur = '';
24
+ continue;
25
+ }
26
+ cur += ch;
27
+ }
28
+ parts.push(cur.trim());
29
+ // Match TS array syntax (T[]) and Python list syntax (list[T] / List[T])
30
+ return parts.length > 1 && parts.some((p) => p.endsWith('[]') || /^[Ll]ist\[.+\]$/.test(p));
31
+ }
32
+ // Get list of arguments eligible for accumulation from schema.
33
+ // Includes array-type arguments and union types like T | T[]
34
+ // whose scalar values are wrapped into single-element arrays
35
+ // at aggregation time.
8
36
  let arrayArgs = $derived(schema?.properties
9
37
  ? Object.entries(schema.properties)
10
- .filter(([_, prop]) => prop.type === 'array')
38
+ .filter(([_, prop]) => prop.type === 'array' || isUnionWithArray(prop.originalType))
11
39
  .map(([key, _]) => key)
12
40
  : []);
13
41
  // Single selected arg for UI (convert between single selection and array)
@@ -81,8 +109,8 @@ $effect(() => {
81
109
  <Label label="Argument to accumulate (optional)">
82
110
  {#snippet header()}
83
111
  <Tooltip>
84
- Select a list-type argument to accumulate across debounced executions. Values from
85
- each debounced execution will be appended together.</Tooltip
112
+ Select a list-type argument to accumulate across debounced executions. Values from each
113
+ debounced execution will be appended together.</Tooltip
86
114
  >
87
115
  {/snippet}
88
116
  <select disabled={!$enterpriseLicense} bind:value={selectedArg}>
@@ -101,8 +129,8 @@ $effect(() => {
101
129
  <Label label="Max total debouncing time (optional)">
102
130
  {#snippet header()}
103
131
  <Tooltip>
104
- Maximum total time (in seconds) that a job can be debounced before it must execute.
105
- Once this time is reached, the job will run regardless of ongoing debouncing.</Tooltip
132
+ Maximum total time (in seconds) that a job can be debounced before it must execute. Once
133
+ this time is reached, the job will run regardless of ongoing debouncing.</Tooltip
106
134
  >
107
135
  {/snippet}
108
136
  <SecondsInput disabled={!$enterpriseLicense} bind:seconds={max_total_debouncing_time} />
@@ -110,11 +138,16 @@ $effect(() => {
110
138
  <Label label="Max total debounces amount (optional)">
111
139
  {#snippet header()}
112
140
  <Tooltip>
113
- Maximum number of times a job can be debounced before it must execute. Once this
114
- count is reached, the job will run regardless of ongoing debouncing.</Tooltip
141
+ Maximum number of times a job can be debounced before it must execute. Once this count
142
+ is reached, the job will run regardless of ongoing debouncing.</Tooltip
115
143
  >
116
144
  {/snippet}
117
- <input type="number" disabled={!$enterpriseLicense} bind:value={max_total_debounces_amount} min="0" />
145
+ <input
146
+ type="number"
147
+ disabled={!$enterpriseLicense}
148
+ bind:value={max_total_debounces_amount}
149
+ min="0"
150
+ />
118
151
  </Label>
119
152
  </div>
120
153
  {/if}
@@ -1,5 +1,5 @@
1
1
  <script lang="ts">import FlowCardHeader from './FlowCardHeader.svelte';
2
- let { title = undefined, summary = $bindable(undefined), noEditor, noHeader = false, flowModuleValue = undefined, header, action, children, isAgentTool = false } = $props();
2
+ let { title = undefined, summary = $bindable(undefined), noEditor, noHeader = false, flowModuleValue = undefined, header, action, children, isAgentTool = false, siblingToolNames = undefined } = $props();
3
3
  </script>
4
4
 
5
5
  <div class="flex flex-col h-full">
@@ -13,6 +13,7 @@ let { title = undefined, summary = $bindable(undefined), noEditor, noHeader = fa
13
13
  {flowModuleValue}
14
14
  {action}
15
15
  {isAgentTool}
16
+ {siblingToolNames}
16
17
  >
17
18
  {@render header?.()}
18
19
  </FlowCardHeader>
@@ -9,6 +9,7 @@ interface Props {
9
9
  action?: import('svelte').Snippet;
10
10
  children?: import('svelte').Snippet;
11
11
  isAgentTool?: boolean;
12
+ siblingToolNames?: string[];
12
13
  }
13
14
  interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
14
15
  new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
@@ -12,9 +12,10 @@ import { hubBaseUrlStore, workspaceStore } from '../../../stores';
12
12
  import { Flag, Lock, RefreshCw, Unlock } from 'lucide-svelte';
13
13
  import { createEventDispatcher, untrack } from 'svelte';
14
14
  import { twMerge } from 'tailwind-merge';
15
- import { validateToolName } from '../../graph/renderers/nodes/AIToolNode.svelte';
15
+ import { getToolNameError } from '../../graph/renderers/nodes/AIToolNode.svelte';
16
16
  import { DEFAULT_HUB_BASE_URL, PRIVATE_HUB_MIN_VERSION } from '../../../hub';
17
- let { flowModuleValue = undefined, title = undefined, summary = $bindable(undefined), children, action, isAgentTool = false } = $props();
17
+ let { flowModuleValue = undefined, title = undefined, summary = $bindable(undefined), children, action, isAgentTool = false, siblingToolNames = undefined } = $props();
18
+ let toolNameError = $derived(isAgentTool ? getToolNameError(summary ?? '', undefined, siblingToolNames) : undefined);
18
19
  let latestHash = $state(undefined);
19
20
  // Extract version_id from hub path (format: hub/{version_id}/{app}/{summary})
20
21
  let hubVersionId = $derived(flowModuleValue?.type === 'script' && flowModuleValue.path?.startsWith('hub/')
@@ -72,6 +73,7 @@ $effect.pre(() => {
72
73
  elementProps={{
73
74
  placeholder: isAgentTool ? 'Tool name' : 'Summary'
74
75
  }}
76
+ {siblingToolNames}
75
77
  />
76
78
  {:else if flowModuleValue.type === 'script' && 'path' in flowModuleValue && flowModuleValue.path}
77
79
  <IconedPath path={flowModuleValue.path} hash={flowModuleValue.hash} class="grow" />
@@ -142,14 +144,16 @@ $effect.pre(() => {
142
144
  />
143
145
  </div>
144
146
  {/if}
145
- <input
146
- bind:value={summary}
147
- placeholder={isAgentTool ? 'Tool name' : 'Summary'}
148
- class={twMerge(
149
- 'w-full grow',
150
- isAgentTool && !validateToolName(summary ?? '') && '!border-red-400'
151
- )}
152
- />
147
+ <div class="flex flex-col w-full grow">
148
+ <input
149
+ bind:value={summary}
150
+ placeholder={isAgentTool ? 'Tool name' : 'Summary'}
151
+ class={twMerge('w-full grow', toolNameError && '!border-red-400')}
152
+ />
153
+ {#if toolNameError}
154
+ <p class="text-3xs text-red-400 leading-tight mt-0.5">{toolNameError}</p>
155
+ {/if}
156
+ </div>
153
157
  {:else if flowModuleValue.type === 'flow'}
154
158
  <Badge color="indigo" capitalize>flow</Badge>
155
159
  <input bind:value={summary} placeholder="Summary" class="w-full grow" />
@@ -6,6 +6,7 @@ interface Props {
6
6
  children?: import('svelte').Snippet;
7
7
  action?: import('svelte').Snippet;
8
8
  isAgentTool?: boolean;
9
+ siblingToolNames?: string[];
9
10
  }
10
11
  interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
11
12
  new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
@@ -2,7 +2,7 @@
2
2
  import FlowModuleComponent from './FlowModuleComponent.svelte';
3
3
  import McpToolEditor from './McpToolEditor.svelte';
4
4
  import WebsearchToolDisplay from './WebsearchToolDisplay.svelte';
5
- let { tool = $bindable(), noEditor = false, enableAi = false, parentModule = undefined, previousModule = undefined, forceTestTab, highlightArg } = $props();
5
+ let { tool = $bindable(), noEditor = false, enableAi = false, parentModule = undefined, previousModule = undefined, forceTestTab, highlightArg, siblingToolNames = undefined } = $props();
6
6
  </script>
7
7
 
8
8
  {#if isFlowModuleTool(tool)}
@@ -21,6 +21,7 @@ let { tool = $bindable(), noEditor = false, enableAi = false, parentModule = und
21
21
  forceTestTab={forceTestTab?.[tool.id]}
22
22
  highlightArg={highlightArg?.[tool.id]}
23
23
  isAgentTool={true}
24
+ {siblingToolNames}
24
25
  />
25
26
  {:else if isMcpTool(tool)}
26
27
  <!-- MCP tool - use McpToolEditor -->
@@ -8,6 +8,7 @@ interface Props {
8
8
  previousModule?: FlowModule | undefined;
9
9
  forceTestTab?: Record<string, boolean>;
10
10
  highlightArg?: Record<string, string | undefined>;
11
+ siblingToolNames?: string[];
11
12
  }
12
13
  declare const AgentToolWrapper: import("svelte").Component<Props, {}, "tool">;
13
14
  type AgentToolWrapper = ReturnType<typeof AgentToolWrapper>;
@@ -42,6 +42,7 @@ let canMoveSelected = $derived(resolvedModuleIds.length > 0 &&
42
42
  onDeleteSelected={() => flowModuleSchemaMap?.deleteMultiple(resolvedModuleIds)}
43
43
  onDuplicateSelected={() => flowModuleSchemaMap?.duplicateMultiple(resolvedModuleIds)}
44
44
  onMoveSelected={() => flowModuleSchemaMap?.moveMultiple(resolvedModuleIds)}
45
+ onCreateGroup={() => flowModuleSchemaMap?.createGroup(selectionManager.selectedIds)}
45
46
  {canMoveSelected}
46
47
  resolvedCount={resolvedModuleIds.length}
47
48
  />
@@ -251,7 +251,7 @@ let customUi = getContext('customUi');
251
251
  {/each}
252
252
  </div>
253
253
 
254
- {#if !failureModule && !preprocessorModule}
254
+ {#if !failureModule && !preprocessorModule && customUi?.aiSandbox != false}
255
255
  <h3 class="pb-2 pt-4">AI Sandbox</h3>
256
256
  <div class="flex flex-row flex-wrap gap-2">
257
257
  <FlowScriptPicker
@@ -402,7 +402,7 @@ let aiLength = $derived(funcDesc?.length > 0 && !disableAi && selectedKind != 'f
402
402
  {/await}
403
403
  <div class="pb-1"></div>
404
404
  {/if}
405
- {#if selectedKind === 'script' && preFilter === 'all' && !selected}
405
+ {#if selectedKind === 'script' && preFilter === 'all' && !selected && customUi?.aiSandbox != false}
406
406
  <div class="pb-0 text-2xs font-normal text-secondary ml-2">AI Sandbox</div>
407
407
  <FlowScriptPickerQuick
408
408
  eeRestricted={false}