windmill-components 1.655.2 → 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 (649) 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/dbOps.d.ts +2 -2
  127. package/package/components/dbOps.js +129 -53
  128. package/package/components/debug/debugUtils.d.ts +5 -0
  129. package/package/components/debug/debugUtils.js +20 -0
  130. package/package/components/debug/index.d.ts +1 -1
  131. package/package/components/debug/index.js +3 -7
  132. package/package/components/flows/CreateActionsFlow.svelte +221 -43
  133. package/package/components/flows/DebounceLimit.svelte +42 -9
  134. package/package/components/flows/common/FlowCard.svelte +2 -1
  135. package/package/components/flows/common/FlowCard.svelte.d.ts +1 -0
  136. package/package/components/flows/common/FlowCardHeader.svelte +14 -10
  137. package/package/components/flows/common/FlowCardHeader.svelte.d.ts +1 -0
  138. package/package/components/flows/content/AgentToolWrapper.svelte +2 -1
  139. package/package/components/flows/content/AgentToolWrapper.svelte.d.ts +1 -0
  140. package/package/components/flows/content/FlowEditorPanel.svelte +1 -0
  141. package/package/components/flows/content/FlowModuleComponent.svelte +32 -18
  142. package/package/components/flows/content/FlowModuleComponent.svelte.d.ts +1 -0
  143. package/package/components/flows/content/FlowModuleDebounce.svelte +46 -0
  144. package/package/components/flows/content/FlowModuleDebounce.svelte.d.ts +8 -0
  145. package/package/components/flows/content/FlowModuleEarlyStop.svelte +26 -5
  146. package/package/components/flows/content/FlowModuleWrapper.svelte +1 -0
  147. package/package/components/flows/content/FlowRetries.svelte +57 -57
  148. package/package/components/flows/content/FlowSelectionPanel.svelte +9 -14
  149. package/package/components/flows/content/FlowSelectionPanel.svelte.d.ts +1 -0
  150. package/package/components/flows/content/FlowSettings.svelte +6 -6
  151. package/package/components/flows/content/ScriptEditorDrawer.svelte +1 -1
  152. package/package/components/flows/content/SuspendDrawer.svelte +0 -18
  153. package/package/components/flows/header/FlowYamlEditor.svelte +20 -4
  154. package/package/components/flows/map/FlowErrorHandlerItem.svelte +32 -14
  155. package/package/components/flows/map/FlowErrorHandlerItem.svelte.d.ts +1 -0
  156. package/package/components/flows/map/FlowModuleSchemaItem.svelte +7 -10
  157. package/package/components/flows/map/FlowModuleSchemaItemViewer.svelte +1 -8
  158. package/package/components/flows/map/FlowModuleSchemaItemViewer.svelte.d.ts +0 -2
  159. package/package/components/flows/map/FlowModuleSchemaMap.svelte +343 -137
  160. package/package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +1 -0
  161. package/package/components/flows/map/FlowStickyNode.svelte +24 -16
  162. package/package/components/flows/map/FlowStickyNode.svelte.d.ts +1 -0
  163. package/package/components/flows/map/VirtualItemWrapper.svelte +1 -1
  164. package/package/components/flows/pickers/PickHubScriptQuick.svelte.d.ts +1 -1
  165. package/package/components/flows/propPicker/OutputPickerInner.svelte +5 -1
  166. package/package/components/flows/scheduleUtils.js +3 -1
  167. package/package/components/flows/utils.svelte.js +6 -1
  168. package/package/components/git_sync/GitSyncContext.svelte.js +13 -2
  169. package/package/components/git_sync/GitSyncSection.svelte +135 -99
  170. package/package/components/graph/DragGhost.svelte +11 -2
  171. package/package/components/graph/FlowGraphV2.svelte +138 -42
  172. package/package/components/graph/FlowGraphV2.svelte.d.ts +15 -1
  173. package/package/components/graph/GroupActionBar.svelte +124 -0
  174. package/package/components/graph/GroupActionBar.svelte.d.ts +20 -0
  175. package/package/components/graph/GroupHeader.svelte +98 -0
  176. package/package/components/graph/GroupHeader.svelte.d.ts +11 -0
  177. package/package/components/graph/GroupHeaderBlock.svelte +58 -0
  178. package/package/components/graph/GroupHeaderBlock.svelte.d.ts +13 -0
  179. package/package/components/graph/GroupModuleIcons.svelte +163 -0
  180. package/package/components/graph/GroupModuleIcons.svelte.d.ts +11 -0
  181. package/package/components/graph/GroupNodeCard.svelte +127 -0
  182. package/package/components/graph/GroupNodeCard.svelte.d.ts +18 -0
  183. package/package/components/graph/GroupNoteArea.svelte +132 -0
  184. package/package/components/graph/GroupNoteArea.svelte.d.ts +11 -0
  185. package/package/components/graph/GroupOverlay.svelte +71 -0
  186. package/package/components/graph/GroupOverlay.svelte.d.ts +12 -0
  187. package/package/components/graph/MiniFlowGraph.svelte +17 -2
  188. package/package/components/graph/SelectionBoundingBox.svelte +14 -14
  189. package/package/components/graph/compoundLayout.d.ts +17 -1
  190. package/package/components/graph/compoundLayout.js +129 -14
  191. package/package/components/graph/flowStructure.d.ts +63 -0
  192. package/package/components/graph/flowStructure.js +422 -0
  193. package/package/components/graph/flowStructure.test.d.ts +1 -0
  194. package/package/components/graph/flowStructure.test.js +205 -0
  195. package/package/components/graph/graphBuilder.svelte.d.ts +52 -3
  196. package/package/components/graph/graphBuilder.svelte.js +170 -67
  197. package/package/components/graph/graphContext.d.ts +7 -0
  198. package/package/components/graph/groupDetectionUtils.d.ts +24 -1
  199. package/package/components/graph/groupDetectionUtils.js +101 -1
  200. package/package/components/graph/groupEditor.svelte.d.ts +105 -0
  201. package/package/components/graph/groupEditor.svelte.js +253 -0
  202. package/package/components/graph/groupedModulesProxy.svelte.d.ts +55 -0
  203. package/package/components/graph/groupedModulesProxy.svelte.js +130 -0
  204. package/package/components/graph/model.d.ts +2 -1
  205. package/package/components/graph/moveManager.svelte.js +0 -3
  206. package/package/components/graph/nodeExtraSpace.d.ts +32 -0
  207. package/package/components/graph/nodeExtraSpace.js +113 -0
  208. package/package/components/graph/noteColors.d.ts +1 -0
  209. package/package/components/graph/noteColors.js +20 -10
  210. package/package/components/graph/noteUtils.svelte.d.ts +0 -18
  211. package/package/components/graph/noteUtils.svelte.js +6 -41
  212. package/package/components/graph/renderers/edges/BaseEdge.svelte +26 -11
  213. package/package/components/graph/renderers/nodes/AIToolNode.svelte +24 -49
  214. package/package/components/graph/renderers/nodes/AIToolNode.svelte.d.ts +1 -4
  215. package/package/components/graph/renderers/nodes/AssetNode.svelte +1 -27
  216. package/package/components/graph/renderers/nodes/AssetNode.svelte.d.ts +0 -4
  217. package/package/components/graph/renderers/nodes/CollapsedGroupNode.svelte +85 -0
  218. package/package/components/graph/renderers/nodes/CollapsedGroupNode.svelte.d.ts +8 -0
  219. package/package/components/graph/renderers/nodes/ForLoopStartNode.svelte +3 -2
  220. package/package/components/graph/renderers/nodes/GroupEndNode.svelte +9 -0
  221. package/package/components/graph/renderers/nodes/GroupEndNode.svelte.d.ts +6 -0
  222. package/package/components/graph/renderers/nodes/GroupHeadNode.svelte +20 -0
  223. package/package/components/graph/renderers/nodes/GroupHeadNode.svelte.d.ts +8 -0
  224. package/package/components/graph/renderers/nodes/ModuleNode.svelte +8 -5
  225. package/package/components/graph/renderers/triggers/TriggersWrapper.svelte +1 -1
  226. package/package/components/graph/util.d.ts +5 -1
  227. package/package/components/graph/util.js +7 -5
  228. package/package/components/home/Item.svelte +1 -0
  229. package/package/components/home/ItemsList.svelte +1 -1
  230. package/package/components/icons/ActiveCampaignIcon.svelte +10 -0
  231. package/package/components/icons/ActiveCampaignIcon.svelte.d.ts +7 -0
  232. package/package/components/icons/AlgoliaIcon.svelte +7 -0
  233. package/package/components/icons/AlgoliaIcon.svelte.d.ts +7 -0
  234. package/package/components/icons/ApolloIcon.svelte +7 -0
  235. package/package/components/icons/ApolloIcon.svelte.d.ts +7 -0
  236. package/package/components/icons/BambooHrIcon.svelte +7 -0
  237. package/package/components/icons/BambooHrIcon.svelte.d.ts +7 -0
  238. package/package/components/icons/BaremetricsIcon.svelte +7 -0
  239. package/package/components/icons/BaremetricsIcon.svelte.d.ts +7 -0
  240. package/package/components/icons/BitlyIcon.svelte +7 -0
  241. package/package/components/icons/BitlyIcon.svelte.d.ts +7 -0
  242. package/package/components/icons/BloggerIcon.svelte +7 -0
  243. package/package/components/icons/BloggerIcon.svelte.d.ts +7 -0
  244. package/package/components/icons/BlueskyIcon.svelte +7 -0
  245. package/package/components/icons/BlueskyIcon.svelte.d.ts +7 -0
  246. package/package/components/icons/BoxIcon.svelte +7 -0
  247. package/package/components/icons/BoxIcon.svelte.d.ts +7 -0
  248. package/package/components/icons/BrevoIcon.svelte +7 -0
  249. package/package/components/icons/BrevoIcon.svelte.d.ts +7 -0
  250. package/package/components/icons/BrexIcon.svelte +7 -0
  251. package/package/components/icons/BrexIcon.svelte.d.ts +7 -0
  252. package/package/components/icons/BrowserlessIcon.svelte +7 -0
  253. package/package/components/icons/BrowserlessIcon.svelte.d.ts +7 -0
  254. package/package/components/icons/BubbleIcon.svelte +11 -0
  255. package/package/components/icons/BubbleIcon.svelte.d.ts +7 -0
  256. package/package/components/icons/BuildkiteIcon.svelte +7 -0
  257. package/package/components/icons/BuildkiteIcon.svelte.d.ts +7 -0
  258. package/package/components/icons/CalcomIcon.svelte +1 -1
  259. package/package/components/icons/CalendlyIcon.svelte +7 -0
  260. package/package/components/icons/CalendlyIcon.svelte.d.ts +7 -0
  261. package/package/components/icons/CircleCiIcon.svelte +7 -0
  262. package/package/components/icons/CircleCiIcon.svelte.d.ts +7 -0
  263. package/package/components/icons/CiscoIcon.svelte +7 -0
  264. package/package/components/icons/CiscoIcon.svelte.d.ts +7 -0
  265. package/package/components/icons/ClearbitIcon.svelte +7 -0
  266. package/package/components/icons/ClearbitIcon.svelte.d.ts +7 -0
  267. package/package/components/icons/ClerkIcon.svelte +7 -0
  268. package/package/components/icons/ClerkIcon.svelte.d.ts +7 -0
  269. package/package/components/icons/CloseIcon.svelte +37 -0
  270. package/package/components/icons/CloseIcon.svelte.d.ts +7 -0
  271. package/package/components/icons/CloudinaryIcon.svelte +7 -0
  272. package/package/components/icons/CloudinaryIcon.svelte.d.ts +7 -0
  273. package/package/components/icons/CockroachDbIcon.svelte +7 -0
  274. package/package/components/icons/CockroachDbIcon.svelte.d.ts +7 -0
  275. package/package/components/icons/CodaIcon.svelte +7 -0
  276. package/package/components/icons/CodaIcon.svelte.d.ts +7 -0
  277. package/package/components/icons/CohereIcon.svelte +16 -0
  278. package/package/components/icons/CohereIcon.svelte.d.ts +7 -0
  279. package/package/components/icons/CoinMarketCapIcon.svelte +7 -0
  280. package/package/components/icons/CoinMarketCapIcon.svelte.d.ts +7 -0
  281. package/package/components/icons/CoinbaseIcon.svelte +7 -0
  282. package/package/components/icons/CoinbaseIcon.svelte.d.ts +7 -0
  283. package/package/components/icons/ConfluenceIcon.svelte +7 -0
  284. package/package/components/icons/ConfluenceIcon.svelte.d.ts +7 -0
  285. package/package/components/icons/ContentfulIcon.svelte +7 -0
  286. package/package/components/icons/ContentfulIcon.svelte.d.ts +7 -0
  287. package/package/components/icons/ConvertKitIcon.svelte +7 -0
  288. package/package/components/icons/ConvertKitIcon.svelte.d.ts +7 -0
  289. package/package/components/icons/DatoCmsIcon.svelte +7 -0
  290. package/package/components/icons/DatoCmsIcon.svelte.d.ts +7 -0
  291. package/package/components/icons/DeelIcon.svelte +7 -0
  292. package/package/components/icons/DeelIcon.svelte.d.ts +7 -0
  293. package/package/components/icons/DeepLIcon.svelte +7 -0
  294. package/package/components/icons/DeepLIcon.svelte.d.ts +7 -0
  295. package/package/components/icons/DigitalOceanIcon.svelte +7 -0
  296. package/package/components/icons/DigitalOceanIcon.svelte.d.ts +7 -0
  297. package/package/components/icons/DiscourseIcon.svelte +7 -0
  298. package/package/components/icons/DiscourseIcon.svelte.d.ts +7 -0
  299. package/package/components/icons/DocusignIcon.svelte +7 -0
  300. package/package/components/icons/DocusignIcon.svelte.d.ts +7 -0
  301. package/package/components/icons/DropboxIcon.svelte +7 -0
  302. package/package/components/icons/DropboxIcon.svelte.d.ts +7 -0
  303. package/package/components/icons/EdgeDbIcon.svelte +16 -20
  304. package/package/components/icons/EventbriteIcon.svelte +10 -0
  305. package/package/components/icons/EventbriteIcon.svelte.d.ts +7 -0
  306. package/package/components/icons/FigmaIcon.svelte +7 -0
  307. package/package/components/icons/FigmaIcon.svelte.d.ts +7 -0
  308. package/package/components/icons/FlyIcon.svelte +7 -0
  309. package/package/components/icons/FlyIcon.svelte.d.ts +7 -0
  310. package/package/components/icons/FreshdeskIcon.svelte +7 -0
  311. package/package/components/icons/FreshdeskIcon.svelte.d.ts +7 -0
  312. package/package/components/icons/FrontAppIcon.svelte +7 -0
  313. package/package/components/icons/FrontAppIcon.svelte.d.ts +7 -0
  314. package/package/components/icons/GhostCmsIcon.svelte +7 -0
  315. package/package/components/icons/GhostCmsIcon.svelte.d.ts +7 -0
  316. package/package/components/icons/GiphyIcon.svelte +7 -0
  317. package/package/components/icons/GiphyIcon.svelte.d.ts +7 -0
  318. package/package/components/icons/GitBookIcon.svelte +7 -0
  319. package/package/components/icons/GitBookIcon.svelte.d.ts +7 -0
  320. package/package/components/icons/GroqIcon.svelte +7 -0
  321. package/package/components/icons/GroqIcon.svelte.d.ts +7 -0
  322. package/package/components/icons/HoneybadgerIcon.svelte +7 -0
  323. package/package/components/icons/HoneybadgerIcon.svelte.d.ts +7 -0
  324. package/package/components/icons/HttpIcon.svelte +1 -0
  325. package/package/components/icons/IftttIcon.svelte +7 -0
  326. package/package/components/icons/IftttIcon.svelte.d.ts +7 -0
  327. package/package/components/icons/IntercomIcon.svelte +7 -0
  328. package/package/components/icons/IntercomIcon.svelte.d.ts +7 -0
  329. package/package/components/icons/JoomlaIcon.svelte +7 -0
  330. package/package/components/icons/JoomlaIcon.svelte.d.ts +7 -0
  331. package/package/components/icons/LineIcon.svelte +7 -0
  332. package/package/components/icons/LineIcon.svelte.d.ts +7 -0
  333. package/package/components/icons/LinearIcon.svelte +7 -0
  334. package/package/components/icons/LinearIcon.svelte.d.ts +7 -0
  335. package/package/components/icons/LinodeIcon.svelte +7 -0
  336. package/package/components/icons/LinodeIcon.svelte.d.ts +7 -0
  337. package/package/components/icons/LumaAiIcon.svelte +39 -0
  338. package/package/components/icons/LumaAiIcon.svelte.d.ts +7 -0
  339. package/package/components/icons/MSTeamsIcon.svelte +20 -38
  340. package/package/components/icons/MSTeamsIcon.svelte.d.ts +2 -0
  341. package/package/components/icons/MagentoIcon.svelte +7 -0
  342. package/package/components/icons/MagentoIcon.svelte.d.ts +7 -0
  343. package/package/components/icons/MailchimpIcon.svelte +25 -13
  344. package/package/components/icons/MandrillIcon.svelte +7 -0
  345. package/package/components/icons/MandrillIcon.svelte.d.ts +7 -0
  346. package/package/components/icons/MauticIcon.svelte +7 -0
  347. package/package/components/icons/MauticIcon.svelte.d.ts +7 -0
  348. package/package/components/icons/MediumIcon.svelte +7 -0
  349. package/package/components/icons/MediumIcon.svelte.d.ts +7 -0
  350. package/package/components/icons/MiroIcon.svelte +7 -0
  351. package/package/components/icons/MiroIcon.svelte.d.ts +7 -0
  352. package/package/components/icons/MistralIcon.svelte +7 -0
  353. package/package/components/icons/MistralIcon.svelte.d.ts +7 -0
  354. package/package/components/icons/MixpanelIcon.svelte +7 -0
  355. package/package/components/icons/MixpanelIcon.svelte.d.ts +7 -0
  356. package/package/components/icons/MondayIcon.svelte +7 -0
  357. package/package/components/icons/MondayIcon.svelte.d.ts +7 -0
  358. package/package/components/icons/NeonDbIcon.svelte +23 -0
  359. package/package/components/icons/NeonDbIcon.svelte.d.ts +7 -0
  360. package/package/components/icons/NetlifyIcon.svelte +7 -0
  361. package/package/components/icons/NetlifyIcon.svelte.d.ts +7 -0
  362. package/package/components/icons/OneSignalIcon.svelte +9 -0
  363. package/package/components/icons/OneSignalIcon.svelte.d.ts +7 -0
  364. package/package/components/icons/OpenWeatherIcon.svelte +7 -0
  365. package/package/components/icons/OpenWeatherIcon.svelte.d.ts +7 -0
  366. package/package/components/icons/PagerDutyIcon.svelte +7 -0
  367. package/package/components/icons/PagerDutyIcon.svelte.d.ts +7 -0
  368. package/package/components/icons/PandaDocIcon.svelte +7 -0
  369. package/package/components/icons/PandaDocIcon.svelte.d.ts +7 -0
  370. package/package/components/icons/PaypalIcon.svelte +7 -0
  371. package/package/components/icons/PaypalIcon.svelte.d.ts +7 -0
  372. package/package/components/icons/PersonioIcon.svelte +7 -0
  373. package/package/components/icons/PersonioIcon.svelte.d.ts +7 -0
  374. package/package/components/icons/PinterestIcon.svelte +7 -0
  375. package/package/components/icons/PinterestIcon.svelte.d.ts +7 -0
  376. package/package/components/icons/PipedriveIcon.svelte +11 -0
  377. package/package/components/icons/PipedriveIcon.svelte.d.ts +7 -0
  378. package/package/components/icons/PlanetScaleIcon.svelte +7 -0
  379. package/package/components/icons/PlanetScaleIcon.svelte.d.ts +7 -0
  380. package/package/components/icons/PostmarkIcon.svelte +7 -0
  381. package/package/components/icons/PostmarkIcon.svelte.d.ts +7 -0
  382. package/package/components/icons/PusherIcon.svelte +7 -0
  383. package/package/components/icons/PusherIcon.svelte.d.ts +7 -0
  384. package/package/components/icons/QuickbooksIcon.svelte +13 -1
  385. package/package/components/icons/RaindropIcon.svelte +27 -0
  386. package/package/components/icons/RaindropIcon.svelte.d.ts +7 -0
  387. package/package/components/icons/ReadwiseIcon.svelte +12 -0
  388. package/package/components/icons/ReadwiseIcon.svelte.d.ts +7 -0
  389. package/package/components/icons/RenderIcon.svelte +7 -0
  390. package/package/components/icons/RenderIcon.svelte.d.ts +7 -0
  391. package/package/components/icons/ReplicateIcon.svelte +7 -0
  392. package/package/components/icons/ReplicateIcon.svelte.d.ts +7 -0
  393. package/package/components/icons/ResendIcon.svelte +1 -1
  394. package/package/components/icons/RestIcon.svelte +1 -0
  395. package/package/components/icons/RingCentralIcon.svelte +7 -0
  396. package/package/components/icons/RingCentralIcon.svelte.d.ts +7 -0
  397. package/package/components/icons/RocketChatIcon.svelte +7 -0
  398. package/package/components/icons/RocketChatIcon.svelte.d.ts +7 -0
  399. package/package/components/icons/RunPodIcon.svelte +8 -0
  400. package/package/components/icons/RunPodIcon.svelte.d.ts +7 -0
  401. package/package/components/icons/RustIcon.svelte +74 -56
  402. package/package/components/icons/SalesforceIcon.svelte +7 -0
  403. package/package/components/icons/SalesforceIcon.svelte.d.ts +7 -0
  404. package/package/components/icons/SegmentIcon.svelte +7 -0
  405. package/package/components/icons/SegmentIcon.svelte.d.ts +7 -0
  406. package/package/components/icons/SentryIcon.svelte +7 -0
  407. package/package/components/icons/SentryIcon.svelte.d.ts +7 -0
  408. package/package/components/icons/ServiceNowIcon.svelte +7 -0
  409. package/package/components/icons/ServiceNowIcon.svelte.d.ts +7 -0
  410. package/package/components/icons/ShortcutIcon.svelte +7 -0
  411. package/package/components/icons/ShortcutIcon.svelte.d.ts +7 -0
  412. package/package/components/icons/SigNozIcon.svelte +8 -0
  413. package/package/components/icons/SigNozIcon.svelte.d.ts +7 -0
  414. package/package/components/icons/SmartsheetIcon.svelte +7 -0
  415. package/package/components/icons/SmartsheetIcon.svelte.d.ts +7 -0
  416. package/package/components/icons/SpeechifyIcon.svelte +7 -0
  417. package/package/components/icons/SpeechifyIcon.svelte.d.ts +7 -0
  418. package/package/components/icons/SplitwiseIcon.svelte +7 -0
  419. package/package/components/icons/SplitwiseIcon.svelte.d.ts +7 -0
  420. package/package/components/icons/StravaIcon.svelte +7 -0
  421. package/package/components/icons/StravaIcon.svelte.d.ts +7 -0
  422. package/package/components/icons/TallyIcon.svelte +7 -0
  423. package/package/components/icons/TallyIcon.svelte.d.ts +7 -0
  424. package/package/components/icons/TelnyxIcon.svelte +19 -0
  425. package/package/components/icons/TelnyxIcon.svelte.d.ts +7 -0
  426. package/package/components/icons/ThreadsIcon.svelte +7 -0
  427. package/package/components/icons/ThreadsIcon.svelte.d.ts +7 -0
  428. package/package/components/icons/TodoistIcon.svelte +7 -0
  429. package/package/components/icons/TodoistIcon.svelte.d.ts +7 -0
  430. package/package/components/icons/TogetherAiIcon.svelte +23 -0
  431. package/package/components/icons/TogetherAiIcon.svelte.d.ts +7 -0
  432. package/package/components/icons/TrelloIcon.svelte +22 -1
  433. package/package/components/icons/TursoIcon.svelte +7 -0
  434. package/package/components/icons/TursoIcon.svelte.d.ts +7 -0
  435. package/package/components/icons/TwitchIcon.svelte +7 -0
  436. package/package/components/icons/TwitchIcon.svelte.d.ts +7 -0
  437. package/package/components/icons/TwitterIcon.svelte +7 -0
  438. package/package/components/icons/TwitterIcon.svelte.d.ts +7 -0
  439. package/package/components/icons/TypeformIcon.svelte +1 -1
  440. package/package/components/icons/VercelIcon.svelte +7 -0
  441. package/package/components/icons/VercelIcon.svelte.d.ts +7 -0
  442. package/package/components/icons/WebflowIcon.svelte +7 -0
  443. package/package/components/icons/WebflowIcon.svelte.d.ts +7 -0
  444. package/package/components/icons/WooCommerceIcon.svelte +7 -0
  445. package/package/components/icons/WooCommerceIcon.svelte.d.ts +7 -0
  446. package/package/components/icons/WordpressIcon.svelte +7 -0
  447. package/package/components/icons/WordpressIcon.svelte.d.ts +7 -0
  448. package/package/components/icons/XataIcon.svelte +13 -0
  449. package/package/components/icons/XataIcon.svelte.d.ts +7 -0
  450. package/package/components/icons/YelpIcon.svelte +7 -0
  451. package/package/components/icons/YelpIcon.svelte.d.ts +7 -0
  452. package/package/components/icons/YnabIcon.svelte +7 -0
  453. package/package/components/icons/YnabIcon.svelte.d.ts +7 -0
  454. package/package/components/icons/YoutubeIcon.svelte +7 -0
  455. package/package/components/icons/YoutubeIcon.svelte.d.ts +7 -0
  456. package/package/components/icons/ZendeskIcon.svelte +1 -1
  457. package/package/components/icons/ZeroTierIcon.svelte +7 -0
  458. package/package/components/icons/ZeroTierIcon.svelte.d.ts +7 -0
  459. package/package/components/icons/ZoomIcon.svelte +7 -0
  460. package/package/components/icons/ZoomIcon.svelte.d.ts +7 -0
  461. package/package/components/icons/index.d.ts +111 -1
  462. package/package/components/icons/index.js +225 -2
  463. package/package/components/instanceSettings/GhesAppSettings.svelte +161 -0
  464. package/package/components/instanceSettings/GhesAppSettings.svelte.d.ts +8 -0
  465. package/package/components/instanceSettings/IndexerMemorySettings.svelte +19 -8
  466. package/package/components/instanceSettings/InstanceAISettings.svelte +132 -0
  467. package/package/components/instanceSettings/InstanceAISettings.svelte.d.ts +10 -0
  468. package/package/components/instanceSettings/WorkspaceRegistries.svelte +293 -0
  469. package/package/components/instanceSettings/WorkspaceRegistries.svelte.d.ts +8 -0
  470. package/package/components/instanceSettings/WsConnectivityTest.svelte +177 -0
  471. package/package/components/instanceSettings/WsConnectivityTest.svelte.d.ts +7 -0
  472. package/package/components/instanceSettings.d.ts +3 -1
  473. package/package/components/instanceSettings.js +92 -2
  474. package/package/components/mcp/McpScopeSelector.svelte +408 -0
  475. package/package/components/mcp/McpScopeSelector.svelte.d.ts +7 -0
  476. package/package/components/meltComponents/Popover.svelte +0 -1
  477. package/package/components/raw_apps/RawAppPreview.svelte +6 -2
  478. package/package/components/recording/FlowRecordingReplay.svelte +94 -52
  479. package/package/components/recording/FlowRecordingReplay.svelte.d.ts +10 -1
  480. package/package/components/recording/ScriptRecordingReplay.svelte +140 -76
  481. package/package/components/recording/ScriptRecordingReplay.svelte.d.ts +10 -1
  482. package/package/components/runs/JobRunsPreview.svelte +8 -1
  483. package/package/components/runs/TimeframeSelect.svelte +0 -1
  484. package/package/components/schema/JobSchemaPicker.svelte +8 -2
  485. package/package/components/schema/JobSchemaPicker.svelte.d.ts +1 -0
  486. package/package/components/schema/SchemaFormDND.svelte +15 -3
  487. package/package/components/scriptEditor/LogPanel.svelte +78 -68
  488. package/package/components/script_builder.d.ts +1 -1
  489. package/package/components/scripts/CreateActionsScript.svelte +3 -3
  490. package/package/components/scripts/WacExportDrawer.svelte +127 -0
  491. package/package/components/scripts/WacExportDrawer.svelte.d.ts +8 -0
  492. package/package/components/scripts/scriptStore.svelte.d.ts +2 -0
  493. package/package/components/scripts/scriptStore.svelte.js +2 -0
  494. package/package/components/select/SelectDropdown.svelte +1 -1
  495. package/package/components/settings/AIPromptsModal.svelte +5 -2
  496. package/package/components/settings/AIPromptsModal.svelte.d.ts +1 -1
  497. package/package/components/settings/CloudQuotas.svelte +152 -0
  498. package/package/components/settings/CloudQuotas.svelte.d.ts +3 -0
  499. package/package/components/settings/CreateToken.svelte +15 -430
  500. package/package/components/settings/Trashbin.svelte +248 -0
  501. package/package/components/settings/Trashbin.svelte.d.ts +3 -0
  502. package/package/components/sidebar/MultiplayerMenu.svelte +14 -4
  503. package/package/components/triggers/DeleteTriggerButton.svelte +1 -0
  504. package/package/components/triggers/PermissionedAsLine.svelte +66 -0
  505. package/package/components/triggers/PermissionedAsLine.svelte.d.ts +9 -0
  506. package/package/components/triggers/TriggerEditorToolbar.svelte +2 -2
  507. package/package/components/triggers/TriggerTokens.svelte +3 -3
  508. package/package/components/triggers/email/EmailTriggerEditorInner.svelte +19 -1
  509. package/package/components/triggers/email/utils.js +3 -1
  510. package/package/components/triggers/gcp/GcpTriggerEditorInner.svelte +24 -4
  511. package/package/components/triggers/gcp/utils.js +2 -0
  512. package/package/components/triggers/http/RouteEditorConfigSection.svelte +22 -3
  513. package/package/components/triggers/http/RouteEditorInner.svelte +28 -6
  514. package/package/components/triggers/http/RoutesGenerator.svelte +13 -2
  515. package/package/components/triggers/http/utils.js +3 -1
  516. package/package/components/triggers/kafka/KafkaTriggerEditorInner.svelte +23 -6
  517. package/package/components/triggers/kafka/utils.js +3 -1
  518. package/package/components/triggers/mqtt/MqttTriggerEditorInner.svelte +27 -5
  519. package/package/components/triggers/mqtt/utils.js +2 -0
  520. package/package/components/triggers/native/NativeTriggerEditor.svelte +23 -1
  521. package/package/components/triggers/native/NativeTriggerTable.svelte +14 -3
  522. package/package/components/triggers/native/utils.js +3 -2
  523. package/package/components/triggers/nats/NatsTriggerEditorInner.svelte +19 -1
  524. package/package/components/triggers/nats/utils.js +2 -0
  525. package/package/components/triggers/postgres/PostgresTriggerEditorInner.svelte +19 -1
  526. package/package/components/triggers/postgres/utils.js +2 -0
  527. package/package/components/triggers/schedules/ScheduleEditorInner.svelte +29 -7
  528. package/package/components/triggers/sqs/SqsTriggerEditorInner.svelte +19 -1
  529. package/package/components/triggers/sqs/utils.js +2 -0
  530. package/package/components/triggers/utils.js +9 -2
  531. package/package/components/triggers/websocket/WebsocketTriggerEditorInner.svelte +24 -4
  532. package/package/components/triggers/websocket/utils.js +3 -1
  533. package/package/components/workspaceSettings/AISettings.svelte +342 -214
  534. package/package/components/workspaceSettings/AISettings.svelte.d.ts +18 -10
  535. package/package/components/workspaceSettings/CreateWorkspace.svelte +304 -196
  536. package/package/components/workspaceSettings/CustomInstanceDbWizardModal.svelte +1 -2
  537. package/package/components/workspaceSettings/DucklakeSettings.svelte +1 -1
  538. package/package/components/workspaceSettings/InstanceFallbackSettings.svelte +75 -0
  539. package/package/components/workspaceSettings/InstanceFallbackSettings.svelte.d.ts +9 -0
  540. package/package/components/workspaceSettings/StorageSettings.svelte +4 -35
  541. package/package/components/workspaceSettings/VolumeStorageSettings.svelte +80 -0
  542. package/package/components/workspaceSettings/VolumeStorageSettings.svelte.d.ts +10 -0
  543. package/package/components/workspaceSettings/WorkspaceIntegrations.svelte +4 -1
  544. package/package/gen/core/OpenAPI.js +1 -1
  545. package/package/gen/schemas.gen.d.ts +294 -94
  546. package/package/gen/schemas.gen.js +294 -94
  547. package/package/gen/services.gen.d.ts +121 -5
  548. package/package/gen/services.gen.js +237 -5
  549. package/package/gen/types.gen.d.ts +715 -91
  550. package/package/githubApp.js +19 -1
  551. package/package/hubPaths.json +8 -4
  552. package/package/infer.d.ts +1 -1
  553. package/package/infer.js +5 -1
  554. package/package/logoutRedirect.d.ts +1 -0
  555. package/package/logoutRedirect.js +24 -0
  556. package/package/script_helpers.d.ts +8 -2
  557. package/package/script_helpers.js +15 -1
  558. package/package/services/trashService.d.ts +28 -0
  559. package/package/services/trashService.js +47 -0
  560. package/package/stores.d.ts +1 -0
  561. package/package/stores.js +1 -0
  562. package/package/system_prompts/index.d.ts +1 -0
  563. package/package/system_prompts/index.js +7 -0
  564. package/package/system_prompts/prompts.d.ts +7 -5
  565. package/package/system_prompts/prompts.js +182 -11
  566. package/package/templates/wac_python.py.template +42 -0
  567. package/package/templates/wac_typescript.ts.template +48 -0
  568. package/package/utils_deployable.d.ts +22 -21
  569. package/package/utils_deployable.js +58 -25
  570. package/package/utils_workspace_deploy.d.ts +15 -4
  571. package/package/utils_workspace_deploy.js +19 -15
  572. package/package/wsUrl.d.ts +1 -0
  573. package/package/wsUrl.js +15 -0
  574. package/package.json +13 -5
  575. package/dist/sharedUtils/assets/tokens/colorTokensConfig.d.ts +0 -2
  576. package/dist/sharedUtils/base.d.ts +0 -1
  577. package/dist/sharedUtils/cloud.d.ts +0 -1
  578. package/dist/sharedUtils/common.d.ts +0 -111
  579. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/count.d.ts +0 -5
  580. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/delete.d.ts +0 -5
  581. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/insert.d.ts +0 -5
  582. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/select.d.ts +0 -13
  583. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/update.d.ts +0 -11
  584. package/dist/sharedUtils/components/apps/components/display/dbtable/utils.d.ts +0 -95
  585. package/dist/sharedUtils/components/apps/editor/appPolicy.d.ts +0 -6
  586. package/dist/sharedUtils/components/apps/editor/appUtilsCore.d.ts +0 -7
  587. package/dist/sharedUtils/components/apps/editor/appUtilsS3.d.ts +0 -33
  588. package/dist/sharedUtils/components/apps/editor/commonAppUtils.d.ts +0 -10
  589. package/dist/sharedUtils/components/apps/editor/component/components.d.ts +0 -5371
  590. package/dist/sharedUtils/components/apps/editor/component/default-codes.d.ts +0 -3
  591. package/dist/sharedUtils/components/apps/editor/component/index.d.ts +0 -3
  592. package/dist/sharedUtils/components/apps/editor/component/sets.d.ts +0 -7
  593. package/dist/sharedUtils/components/apps/editor/componentsPanel/componentDefaultProps.d.ts +0 -3
  594. package/dist/sharedUtils/components/apps/gridUtils.d.ts +0 -14
  595. package/dist/sharedUtils/components/apps/inputType.d.ts +0 -178
  596. package/dist/sharedUtils/components/apps/rx.d.ts +0 -29
  597. package/dist/sharedUtils/components/apps/sharedTypes.d.ts +0 -21
  598. package/dist/sharedUtils/components/apps/types.d.ts +0 -274
  599. package/dist/sharedUtils/components/assets/lib.d.ts +0 -25
  600. package/dist/sharedUtils/components/common/alert/model.d.ts +0 -2
  601. package/dist/sharedUtils/components/common/badge/model.d.ts +0 -8
  602. package/dist/sharedUtils/components/common/button/model.d.ts +0 -45
  603. package/dist/sharedUtils/components/common/fileInput/model.d.ts +0 -1
  604. package/dist/sharedUtils/components/common/index.d.ts +0 -24
  605. package/dist/sharedUtils/components/common/skeleton/model.d.ts +0 -21
  606. package/dist/sharedUtils/components/dbTypes.d.ts +0 -14
  607. package/dist/sharedUtils/components/diff_drawer.d.ts +0 -26
  608. package/dist/sharedUtils/components/ducklake.d.ts +0 -1
  609. package/dist/sharedUtils/components/flows/scheduleUtils.d.ts +0 -7
  610. package/dist/sharedUtils/components/icons/index.d.ts +0 -101
  611. package/dist/sharedUtils/components/random_positive_adjetive.d.ts +0 -1
  612. package/dist/sharedUtils/components/raw_apps/rawAppPolicy.d.ts +0 -10
  613. package/dist/sharedUtils/components/raw_apps/utils.d.ts +0 -15
  614. package/dist/sharedUtils/components/triggers/email/utils.d.ts +0 -4
  615. package/dist/sharedUtils/components/triggers/gcp/utils.d.ts +0 -2
  616. package/dist/sharedUtils/components/triggers/http/utils.d.ts +0 -11
  617. package/dist/sharedUtils/components/triggers/kafka/utils.d.ts +0 -2
  618. package/dist/sharedUtils/components/triggers/mqtt/utils.d.ts +0 -2
  619. package/dist/sharedUtils/components/triggers/nats/utils.d.ts +0 -2
  620. package/dist/sharedUtils/components/triggers/postgres/utils.d.ts +0 -8
  621. package/dist/sharedUtils/components/triggers/sqs/utils.d.ts +0 -2
  622. package/dist/sharedUtils/components/triggers/triggers.svelte.d.ts +0 -32
  623. package/dist/sharedUtils/components/triggers/utils.d.ts +0 -80
  624. package/dist/sharedUtils/components/triggers/websocket/utils.d.ts +0 -2
  625. package/dist/sharedUtils/components/triggers.d.ts +0 -20
  626. package/dist/sharedUtils/gen/core/ApiError.d.ts +0 -10
  627. package/dist/sharedUtils/gen/core/ApiRequestOptions.d.ts +0 -13
  628. package/dist/sharedUtils/gen/core/ApiResult.d.ts +0 -7
  629. package/dist/sharedUtils/gen/core/CancelablePromise.d.ts +0 -26
  630. package/dist/sharedUtils/gen/core/OpenAPI.d.ts +0 -27
  631. package/dist/sharedUtils/gen/core/request.d.ts +0 -29
  632. package/dist/sharedUtils/gen/index.d.ts +0 -6
  633. package/dist/sharedUtils/gen/schemas.gen.d.ts +0 -7036
  634. package/dist/sharedUtils/gen/services.gen.d.ts +0 -6047
  635. package/dist/sharedUtils/gen/types.gen.d.ts +0 -21881
  636. package/dist/sharedUtils/history.svelte.d.ts +0 -9
  637. package/dist/sharedUtils/hub.d.ts +0 -49
  638. package/dist/sharedUtils/jsr.json +0 -6
  639. package/dist/sharedUtils/lib.d.ts +0 -5
  640. package/dist/sharedUtils/lib.es.js +0 -1588
  641. package/dist/sharedUtils/package.json +0 -12
  642. package/dist/sharedUtils/schema.d.ts +0 -3
  643. package/dist/sharedUtils/stores.d.ts +0 -97
  644. package/dist/sharedUtils/svelte5Utils.svelte.d.ts +0 -80
  645. package/dist/sharedUtils/toast.d.ts +0 -8
  646. package/dist/sharedUtils/utils.d.ts +0 -265
  647. package/package/components/graph/NodeContextMenu.svelte +0 -36
  648. package/package/components/graph/NodeContextMenu.svelte.d.ts +0 -8
  649. package/package/svelte5Utils.svelte.d.ts +0 -184
@@ -6,11 +6,11 @@ import { getAllModules } from './flows/flowExplorer';
6
6
  import Button from './common/button/Button.svelte';
7
7
  import Tooltip from './Tooltip.svelte';
8
8
  import Alert from './common/alert/Alert.svelte';
9
- import { DiffIcon, Loader2 } from 'lucide-svelte';
9
+ import { DiffIcon, FileJson, Loader2 } from 'lucide-svelte';
10
10
  import Badge from './common/badge/Badge.svelte';
11
11
  import DiffDrawer from './DiffDrawer.svelte';
12
12
  import { getTriggerDependency } from '../utils_deployable';
13
- import { checkItemExists, deployItem, getItemValue, getOnBehalfOfEmail } from '../utils_workspace_deploy';
13
+ import { checkItemExists, deployItem, getItemValue, getOnBehalfOf } from '../utils_workspace_deploy';
14
14
  import { getAllGridItems } from './apps/editor/appUtils';
15
15
  import { isRunnableByPath } from './apps/inputType';
16
16
  import WorkspaceDeployLayout from './WorkspaceDeployLayout.svelte';
@@ -30,20 +30,25 @@ let sourceOnBehalfOfInfo = $state({});
30
30
  // Target workspace on_behalf_of emails (keyed by kind:path)
31
31
  let targetOnBehalfOfInfo = $state({});
32
32
  let onBehalfOfChoice = $state({});
33
- let customOnBehalfOfEmails = $state({});
33
+ let customOnBehalfOf = $state({});
34
34
  let canPreserveOnBehalfOf = $state(false);
35
35
  // Check if an item needs on_behalf_of selection
36
36
  function itemNeedsOnBehalfOfSelection(statusPath, kind) {
37
37
  return needsOnBehalfOfSelection(kind, sourceOnBehalfOfInfo[statusPath]);
38
38
  }
39
- // Get the email to use for deployment based on user's choice
40
- function getOnBehalfOfEmailForDeploy(statusPath) {
39
+ /**
40
+ * Get the on_behalf_of value for deployment based on user's choice.
41
+ * Returns an email for flows/scripts/apps, or permissioned_as (u/username, g/group) for triggers/schedules.
42
+ */
43
+ function getOnBehalfOfForDeploy(statusPath, kind) {
41
44
  const choice = onBehalfOfChoice[statusPath];
42
45
  if (choice === 'target')
43
46
  return targetOnBehalfOfInfo[statusPath];
44
- if (choice === 'custom')
45
- return customOnBehalfOfEmails[statusPath];
46
- // 'me' or undefined = don't pass, backend will use deploying user's email
47
+ if (choice === 'custom') {
48
+ const details = customOnBehalfOf[statusPath];
49
+ return kind === 'trigger' ? details?.permissionedAs : details?.email;
50
+ }
51
+ // 'me' or undefined = don't pass, backend will use deploying user's identity
47
52
  return undefined;
48
53
  }
49
54
  async function reload(path) {
@@ -51,9 +56,7 @@ async function reload(path) {
51
56
  if (!$superadmin) {
52
57
  const targetUser = await UserService.whoami({ workspace: workspaceToDeployTo });
53
58
  canPreserveOnBehalfOf =
54
- targetUser.is_admin ||
55
- targetUser.groups?.includes('wm_deployers') ||
56
- false;
59
+ targetUser.is_admin || targetUser.groups?.includes('wm_deployers') || false;
57
60
  }
58
61
  else {
59
62
  canPreserveOnBehalfOf = true;
@@ -93,13 +96,13 @@ async function reload(path) {
93
96
  for (const dep of sortedSet.filter((d) => ['flow', 'script', 'app', 'trigger'].includes(d.kind))) {
94
97
  const key = computeStatusPath(dep.kind, dep.path);
95
98
  try {
96
- sourceOnBehalfOfInfo[key] = await getOnBehalfOfEmail(dep.kind, dep.path, $workspaceStore, additionalInformation);
99
+ sourceOnBehalfOfInfo[key] = await getOnBehalfOf(dep.kind, dep.path, $workspaceStore, additionalInformation);
97
100
  }
98
101
  catch {
99
102
  sourceOnBehalfOfInfo[key] = undefined;
100
103
  }
101
104
  try {
102
- targetOnBehalfOfInfo[key] = await getOnBehalfOfEmail(dep.kind, dep.path, workspaceToDeployTo, additionalInformation);
105
+ targetOnBehalfOfInfo[key] = await getOnBehalfOf(dep.kind, dep.path, workspaceToDeployTo, additionalInformation);
103
106
  }
104
107
  catch {
105
108
  targetOnBehalfOfInfo[key] = undefined;
@@ -236,7 +239,7 @@ async function deploy(kind, path) {
236
239
  workspaceFrom: $workspaceStore,
237
240
  workspaceTo: workspaceToDeployTo,
238
241
  additionalInformation,
239
- onBehalfOfEmail: getOnBehalfOfEmailForDeploy(statusPath)
242
+ onBehalfOf: getOnBehalfOfForDeploy(statusPath, kind)
240
243
  });
241
244
  if (result.success) {
242
245
  allAlreadyExists[statusPath] = true;
@@ -376,24 +379,27 @@ function deselectAll() {
376
379
  {@const statusPath = item.key}
377
380
  {@const exists = allAlreadyExists[statusPath]}
378
381
  {@const status = deploymentStatus[statusPath]}
379
- {@const targetEmail = targetOnBehalfOfInfo[statusPath]}
382
+ {@const targetValue = targetOnBehalfOfInfo[statusPath]}
380
383
 
381
384
  <!-- On-behalf-of selector -->
382
385
  {#if itemNeedsOnBehalfOfSelection(statusPath, item.kind)}
383
386
  <OnBehalfOfSelector
384
387
  targetWorkspace={workspaceToDeployTo!}
385
- {targetEmail}
388
+ {targetValue}
386
389
  selected={onBehalfOfChoice[statusPath]}
387
- onSelect={(choice, email) => {
390
+ onSelect={(choice, details) => {
388
391
  onBehalfOfChoice[statusPath] = choice
389
- if (email) customOnBehalfOfEmails[statusPath] = email
392
+ if (details) customOnBehalfOf[statusPath] = details
390
393
  }}
391
394
  kind={item.kind}
392
395
  canPreserve={canPreserveOnBehalfOf}
393
- customEmail={customOnBehalfOfEmails[statusPath]}
396
+ customValue={customOnBehalfOf[statusPath]?.permissionedAs}
394
397
  />
395
398
  {/if}
396
399
 
400
+ {#if item.kind === 'raw_app'}
401
+ <Badge small icon={{ icon: FileJson }}>Raw</Badge>
402
+ {/if}
397
403
  {#if exists === false}
398
404
  {#if item.include}
399
405
  <Badge
@@ -452,18 +458,16 @@ function deselectAll() {
452
458
  {#if hasUnselectedOnBehalfOf}
453
459
  <span class="text-xs text-yellow-600">
454
460
  {#if kind === 'trigger'}
455
- You must set the "edited by" user for all triggers before deploying
461
+ You must set the "permissioned as" user for all triggers before deploying
456
462
  <Tooltip class="text-yellow-600">
457
- The "edited by" field defines which user's permissions will be applied
458
- when the trigger runs. Make sure this is set to an appropriate user
459
- before deploying.
463
+ The "permissioned as" field defines which user's permissions will be applied when
464
+ the trigger fires. Make sure this is set appropriately before deploying.
460
465
  </Tooltip>
461
466
  {:else}
462
467
  You must set the "on behalf of" user for all items before deploying
463
468
  <Tooltip class="text-yellow-600">
464
- The "run on behalf of" field defines which user's permissions will be
465
- applied during execution. Make sure this is set to an appropriate user
466
- before deploying.
469
+ The "run on behalf of" field defines which user's permissions will be applied
470
+ during execution. Make sure this is set to an appropriate user before deploying.
467
471
  </Tooltip>
468
472
  {/if}
469
473
  </span>
@@ -21,6 +21,7 @@ import { writable } from 'svelte/store';
21
21
  import { initHistory } from '../history.svelte';
22
22
  import { SelectionManager } from './graph/selectionUtils.svelte';
23
23
  import { NoteEditor, setNoteEditorContext } from './graph/noteEditor.svelte';
24
+ import { GroupEditor, setGroupEditorContext } from './graph/groupEditor.svelte';
24
25
  import { dfs } from './flows/dfs';
25
26
  import { loadSchemaFromModule } from './flows/flowInfers';
26
27
  import { CornerDownLeft, Play } from 'lucide-svelte';
@@ -137,7 +138,7 @@ const el = (event) => {
137
138
  done(x) {
138
139
  loadPastTests();
139
140
  }
140
- });
141
+ }, undefined, currentScript.modules);
141
142
  }
142
143
  else {
143
144
  sendUserToast(`Bundle received ${lastCommandId} was obsolete, ignoring`, true);
@@ -302,7 +303,7 @@ function runTest() {
302
303
  }
303
304
  else {
304
305
  //@ts-ignore
305
- jobLoader.runPreview(currentScript.path, currentScript.content, currentScript.language, args, currentScript.tag, useLock ? currentScript.lock : undefined);
306
+ jobLoader.runPreview(currentScript.path, currentScript.content, currentScript.language, args, currentScript.tag, useLock ? currentScript.lock : undefined, undefined, undefined, undefined, currentScript.modules);
306
307
  }
307
308
  }
308
309
  }
@@ -454,6 +455,10 @@ const noteEditor = new NoteEditor(flowStore, () => {
454
455
  flowModuleSchemaMap?.enableNotes?.();
455
456
  });
456
457
  setNoteEditorContext(noteEditor);
458
+ // Set up GroupEditor context for group editing capabilities
459
+ const groupEditor = new GroupEditor(flowStore);
460
+ let canCreateGroup = $state({ val: false });
461
+ setGroupEditorContext(groupEditor, canCreateGroup);
457
462
  let lastSent = undefined;
458
463
  function updateFlow(flow) {
459
464
  if (lockChanges) {
@@ -6,6 +6,9 @@ type LastEditScript = {
6
6
  lock?: string;
7
7
  isCodebase?: boolean;
8
8
  tag?: string;
9
+ modules?: {
10
+ [key: string]: import('../gen').ScriptModule;
11
+ } | null;
9
12
  };
10
13
  type LastEditFlow = {
11
14
  flow: OpenFlow;
@@ -5,6 +5,7 @@
5
5
  </script>
6
6
 
7
7
  <script lang="ts">import { BROWSER } from 'esm-env';
8
+ import { buildWsUrl } from '../wsUrl';
8
9
  import { sendUserToast } from '../toast';
9
10
  import { createEventDispatcher, onDestroy, onMount, untrack } from 'svelte';
10
11
  // import libStdContent from '../es6.d.ts.txt?raw'
@@ -203,7 +204,9 @@ export function hide() {
203
204
  divEl?.classList.add('hidden');
204
205
  }
205
206
  export function setCode(ncode, noHistory = false) {
206
- if (code != ncode) {
207
+ // Track whether the code actually changed before updating.
208
+ const changed = code != ncode;
209
+ if (changed) {
207
210
  code = ncode;
208
211
  }
209
212
  if (noHistory) {
@@ -222,7 +225,13 @@ export function setCode(ncode, noHistory = false) {
222
225
  editor.pushUndoStop();
223
226
  }
224
227
  }
225
- // Update lint diagnostics after code change
228
+ // Dispatch change immediately when code actually changed. This ensures
229
+ // callers like the Reset button and copilot trigger on:change handlers.
230
+ // The debounced onDidChangeModelContent handler will no-op since code
231
+ // will already match by the time it fires.
232
+ if (changed) {
233
+ dispatch('change', ncode);
234
+ }
226
235
  updateRawAppLintDiagnostics();
227
236
  }
228
237
  /** Collect Monaco markers and update the raw app lint store */
@@ -769,7 +778,6 @@ export async function reloadWebsocket() {
769
778
  console.error(`connection to ${name} language server failed`);
770
779
  }
771
780
  }
772
- const wsProtocol = BROWSER && window.location.protocol == 'https:' ? 'wss' : 'ws';
773
781
  const hostname = getHostname();
774
782
  let encodedImportMap = '';
775
783
  if (useWebsockets) {
@@ -794,7 +802,7 @@ export async function reloadWebsocket() {
794
802
  }
795
803
  }
796
804
  encodedImportMap = 'data:text/plain;base64,' + btoa(JSON.stringify(importMap));
797
- await connectToLanguageServer(`${wsProtocol}://${window.location.host}/ws/deno`, 'deno', {
805
+ await connectToLanguageServer(buildWsUrl('/ws/deno'), 'deno', {
798
806
  certificateStores: null,
799
807
  enablePaths: [],
800
808
  config: null,
@@ -832,7 +840,7 @@ export async function reloadWebsocket() {
832
840
  });
833
841
  }
834
842
  else if (lang === 'python') {
835
- await connectToLanguageServer(`${wsProtocol}://${window.location.host}/ws/pyright`, 'pyright', {}, (params, token, next) => {
843
+ await connectToLanguageServer(buildWsUrl('/ws/pyright'), 'pyright', {}, (params, token, next) => {
836
844
  if (params.items.find((x) => x.section === 'python')) {
837
845
  return [
838
846
  {
@@ -857,15 +865,15 @@ export async function reloadWebsocket() {
857
865
  }
858
866
  return next(params, token);
859
867
  });
860
- connectToLanguageServer(`${wsProtocol}://${window.location.host}/ws/ruff`, 'ruff', {}, undefined);
868
+ connectToLanguageServer(buildWsUrl('/ws/ruff'), 'ruff', {}, undefined);
861
869
  }
862
870
  else if (lang === 'go') {
863
- connectToLanguageServer(`${wsProtocol}://${window.location.host}/ws/go`, 'go', {
871
+ connectToLanguageServer(buildWsUrl('/ws/go'), 'go', {
864
872
  'build.allowImplicitNetworkAccess': true
865
873
  }, undefined);
866
874
  }
867
875
  else if (lang === 'shell') {
868
- connectToLanguageServer(`${wsProtocol}://${window.location.host}/ws/diagnostic`, 'shellcheck', {
876
+ connectToLanguageServer(buildWsUrl('/ws/diagnostic'), 'shellcheck', {
869
877
  linters: {
870
878
  shellcheck: {
871
879
  command: 'shellcheck',
@@ -1593,11 +1601,7 @@ let handleSqlTypingInTs = useDebounce(function handleSqlTypingInTs() {
1593
1601
  // Worker async function call freezes if we pass a Proxy, $state.snapshot() is very important here
1594
1602
  updateSqlQueriesInWorker(uri, $state.snapshot(preparedAssetsSqlQueries));
1595
1603
  }, 250);
1596
- watch([
1597
- () => preparedAssetsSqlQueries,
1598
- () => lang,
1599
- () => isTsWorkerInitialized.current
1600
- ], () => {
1604
+ watch([() => preparedAssetsSqlQueries, () => lang, () => isTsWorkerInitialized.current], () => {
1601
1605
  handleSqlTypingInTs();
1602
1606
  });
1603
1607
  watch([() => customTsTypesData.current], setTypescriptCustomTypes);
@@ -15,7 +15,7 @@ interface Props {
15
15
  iconOnly?: boolean;
16
16
  validCode?: boolean;
17
17
  kind?: 'script' | 'trigger' | 'approval';
18
- template?: 'pgsql' | 'mysql' | 'script' | 'docker' | 'powershell' | 'bunnative' | 'claudesandbox';
18
+ template?: 'pgsql' | 'mysql' | 'script' | 'docker' | 'powershell' | 'bunnative' | 'claudesandbox' | 'wac_python' | 'wac_typescript';
19
19
  collabMode?: boolean;
20
20
  collabLive?: boolean;
21
21
  collabUsers?: {
@@ -491,7 +491,7 @@ function appendFilterAsText(presetValue) {
491
491
  {#if !currentTag || !schema[currentTag]}
492
492
  {#if presets.length}
493
493
  <div class="text-xs px-2 my-2 font-bold">Presets</div>
494
- <div class="mb-3 px-2 flex gap-2 flex-wrap">
494
+ <div class="mb-3 px-2 flex gap-2 flex-wrap max-h-24 overflow-y-auto">
495
495
  {#each presets as preset}
496
496
  {@render presetTag(preset)}
497
497
  {/each}
@@ -75,7 +75,6 @@ export function resetSelected(dispatchEvent) {
75
75
  >
76
76
  <FlowModuleSchemaItemViewer
77
77
  onclick={handleClick}
78
- deletable={false}
79
78
  id={mod.id}
80
79
  label={mod.summary ||
81
80
  (`path` in mod.value ? mod.value.path : undefined) ||
@@ -19,6 +19,7 @@ import FlowPreviewButtons from './flows/header/FlowPreviewButtons.svelte';
19
19
  import { SelectionManager } from './graph/selectionUtils.svelte';
20
20
  import { NoteEditor } from './graph/noteEditor.svelte';
21
21
  import { setNoteEditorContext } from './graph/noteEditor.svelte';
22
+ import { GroupEditor, setGroupEditorContext } from './graph/groupEditor.svelte';
22
23
  import { cleanFlow } from './flows/utils.svelte';
23
24
  import { Calendar, Save, DiffIcon, HistoryIcon, FileJson, Settings, Undo, Redo, BookOpen, Circle, CheckCircle, RefreshCw, CheckCheck, Disc } from 'lucide-svelte';
24
25
  import Awareness from './Awareness.svelte';
@@ -524,6 +525,10 @@ const noteEditor = new NoteEditor(untrack(() => flowStore), () => {
524
525
  flowEditor?.enableNotes?.();
525
526
  });
526
527
  setNoteEditorContext(noteEditor);
528
+ // Set up GroupEditor context for group editing capabilities
529
+ const groupEditor = new GroupEditor(flowStore);
530
+ let canCreateGroup = $state({ val: false });
531
+ setGroupEditorContext(groupEditor, canCreateGroup);
527
532
  setContext('FlowGraphAssetContext', initFlowGraphAssetsCtx({ getModules: () => flowStore.val.value.modules }));
528
533
  // Add triggers context store
529
534
  const triggersState = $state(new Triggers([
@@ -125,6 +125,7 @@ $effect(() => {
125
125
  <FlowGraphV2
126
126
  bind:this={beforeGraph}
127
127
  modules={beforeFlow.value.modules}
128
+ groups={beforeFlow.value.groups}
128
129
  failureModule={beforeFlow.value.failure_module}
129
130
  preprocessorModule={beforeFlow.value.preprocessor_module}
130
131
  earlyStop={beforeFlow.value.skip_expr !== undefined}
@@ -156,6 +157,7 @@ $effect(() => {
156
157
  bind:this={afterGraph}
157
158
  diffBeforeFlow={beforeFlow}
158
159
  modules={afterFlow.value.modules}
160
+ groups={afterFlow.value.groups}
159
161
  failureModule={afterFlow.value.failure_module}
160
162
  preprocessorModule={afterFlow.value.preprocessor_module}
161
163
  earlyStop={afterFlow.value.skip_expr !== undefined}
@@ -186,6 +188,7 @@ $effect(() => {
186
188
  <FlowGraphV2
187
189
  diffBeforeFlow={beforeFlow}
188
190
  modules={afterFlow.value.modules}
191
+ groups={afterFlow.value.groups}
189
192
  failureModule={afterFlow.value.failure_module}
190
193
  preprocessorModule={afterFlow.value.preprocessor_module}
191
194
  earlyStop={afterFlow.value.skip_expr !== undefined}
@@ -4,14 +4,16 @@ import FlowGraphViewerStep from './FlowGraphViewerStep.svelte';
4
4
  import FlowGraphV2 from './graph/FlowGraphV2.svelte';
5
5
  import { dfs } from './flows/dfs';
6
6
  import { workspaceStore } from '../stores';
7
- let { flow, overflowAuto = false, noSide = false, download = false, noGraph = false, triggerNode = false, stepDetail = $bindable(undefined), workspace = $workspaceStore, minHeight = 400, noBorder = false } = $props();
7
+ let { flow, overflowAuto = false, noSide = false, download = false, noGraph = false, triggerNode = false, stepDetail = $bindable(undefined), workspace = $workspaceStore, minHeight = 400, noBorder = false, hideDefaultInputs = false } = $props();
8
8
  const dispatch = createEventDispatcher();
9
9
  </script>
10
10
 
11
11
  <div class="grid grid-cols-3 w-full h-full">
12
12
  {#if !noGraph}
13
13
  <div
14
- class="{noSide ? 'col-span-3' : 'sm:col-span-2 col-span-3'} w-full max-h-full"
14
+ class="{noSide || (hideDefaultInputs && stepDetail == undefined)
15
+ ? 'col-span-3'
16
+ : 'sm:col-span-2 col-span-3'} w-full max-h-full"
15
17
  class:overflow-auto={overflowAuto}
16
18
  class:border={!noBorder}
17
19
  >
@@ -27,6 +29,7 @@ const dispatch = createEventDispatcher();
27
29
  failureModule={flow?.value?.failure_module}
28
30
  preprocessorModule={flow?.value?.preprocessor_module}
29
31
  notes={flow?.value?.notes}
32
+ groups={flow?.value?.groups}
30
33
  onSelect={(nodeId) => {
31
34
  if (nodeId === 'Trigger') {
32
35
  dispatch('triggerDetail')
@@ -44,14 +47,14 @@ const dispatch = createEventDispatcher();
44
47
  />
45
48
  </div>
46
49
  {/if}
47
- {#if !noSide}
50
+ {#if !noSide && !(hideDefaultInputs && stepDetail == undefined)}
48
51
  <div
49
52
  class={twMerge(
50
53
  'relative w-full h-full min-h-[150px] max-h-[90vh] border-r border-b border-t p-2 pt-0 overflow-auto hidden sm:flex flex-col gap-4',
51
54
  noGraph ? 'border-0 w-max' : ''
52
55
  )}
53
56
  >
54
- <FlowGraphViewerStep schema={flow.schema} {stepDetail} />
57
+ <FlowGraphViewerStep schema={flow.schema} {stepDetail} {hideDefaultInputs} />
55
58
  </div>
56
59
  {/if}
57
60
  </div>
@@ -16,6 +16,7 @@ interface Props {
16
16
  workspace?: string | undefined;
17
17
  minHeight?: number;
18
18
  noBorder?: boolean;
19
+ hideDefaultInputs?: boolean;
19
20
  }
20
21
  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> {
21
22
  new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
@@ -15,7 +15,7 @@ import FlowModuleScript from './flows/content/FlowModuleScript.svelte';
15
15
  import { Copy, Expand } from 'lucide-svelte';
16
16
  import HighlightTheme from './HighlightTheme.svelte';
17
17
  import LanguageIcon from './common/languageIcons/LanguageIcon.svelte';
18
- let { schema = undefined, stepDetail = undefined, jobScriptHash = undefined } = $props();
18
+ let { schema = undefined, stepDetail = undefined, jobScriptHash = undefined, hideDefaultInputs = false } = $props();
19
19
  let codeViewer = $state();
20
20
  </script>
21
21
 
@@ -82,10 +82,10 @@ let codeViewer = $state();
82
82
  <div class={twMerge('p-2 overflow-y-scroll')}>
83
83
  {#if stepDetail == undefined}
84
84
  <div>
85
- <p class="font-medium text-secondary text-center pt-4 pb-8">
85
+ <p class="text-secondary text-xs italic px-2 pt-2">
86
86
  Click on a step to see its details
87
87
  </p>
88
- {#if schema}
88
+ {#if schema && !hideDefaultInputs}
89
89
  <h3 class="mb-2 font-semibold">Flow Inputs</h3>
90
90
  <SchemaViewer {schema} />
91
91
  {/if}
@@ -3,6 +3,7 @@ interface Props {
3
3
  schema?: any | undefined;
4
4
  stepDetail?: FlowModule | string | undefined;
5
5
  jobScriptHash?: string | undefined;
6
+ hideDefaultInputs?: boolean;
6
7
  }
7
8
  declare const FlowGraphViewerStep: import("svelte").Component<Props, {}, "">;
8
9
  type FlowGraphViewerStep = ReturnType<typeof FlowGraphViewerStep>;
@@ -335,7 +335,8 @@ export function flowHasChanged() {
335
335
  startIcon={{ icon: isRunning ? RefreshCw : Play }}
336
336
  size="sm"
337
337
  btnClasses="w-full max-w-lg"
338
- on:click={() => recordingMode ? recordAndTest() : runPreview(previewArgs.val, undefined)}
338
+ on:click={() =>
339
+ recordingMode ? recordAndTest() : runPreview(previewArgs.val, undefined)}
339
340
  id="flow-editor-test-flow-drawer"
340
341
  shortCut={{ Icon: CornerDownLeft }}
341
342
  >
@@ -550,6 +551,13 @@ export function flowHasChanged() {
550
551
  onDone={async ({ job: completedJob }) => {
551
552
  isRunning = false
552
553
  $executionCount = $executionCount + 1
554
+ // Reset 'initial' flags for modules that were part of this flow test,
555
+ // so OutputPicker no longer shows "Run loaded from history"
556
+ for (const mod of completedJob.flow_status?.modules ?? []) {
557
+ if (mod.id) {
558
+ stepHistoryLoader?.resetInitial(mod.id)
559
+ }
560
+ }
553
561
  if (flowRecording.active) {
554
562
  lastRecording = flowRecording.stop()
555
563
  setActiveRecording(undefined)
@@ -566,6 +574,8 @@ export function flowHasChanged() {
566
574
  {render}
567
575
  {customUi}
568
576
  showLogsWithResult
577
+ notes={flowStore.val.value.notes}
578
+ groups={flowStore.val.value.groups}
569
579
  />
570
580
  {:else if loadingHistory}
571
581
  <div class="italic text-primary h-full grow mx-auto flex flex-row items-center gap-2">
@@ -2,7 +2,7 @@
2
2
  import { setContext, untrack } from 'svelte';
3
3
  import { isOwner as loadIsOwner } from '../utils';
4
4
  import { userStore, workspaceStore } from '../stores';
5
- let { jobId, initialJob = undefined, workspaceId = undefined, flowState = $bindable({}), selectedJobStep = $bindable(undefined), hideTimeline = false, hideDownloadInGraph = false, hideNodeDefinition = false, hideJobId = false, hideDownloadLogs = false, rightColumnSelect = $bindable('timeline'), isOwner = $bindable(false), wideResults = false, localModuleStates = $bindable({}), localDurationStatuses = $bindable({}), job = $bindable(undefined), render = true, suspendStatus = $bindable({ val: {} }), customUi, onStart, onJobsLoaded, onDone, showLogsWithResult = false } = $props();
5
+ let { jobId, initialJob = undefined, workspaceId = undefined, flowState = $bindable({}), selectedJobStep = $bindable(undefined), hideFlowResult = false, hideTimeline = false, hideDownloadInGraph = false, hideNodeDefinition = false, hideJobId = false, hideDownloadLogs = false, rightColumnSelect = $bindable('timeline'), isOwner = $bindable(false), wideResults = false, localModuleStates = $bindable({}), localDurationStatuses = $bindable({}), job = $bindable(undefined), render = true, suspendStatus = $bindable({ val: {} }), customUi, onStart, onJobsLoaded, onDone, showLogsWithResult = false, notes: notesProp = undefined, groups: groupsProp = undefined } = $props();
6
6
  let lastJobId = untrack(() => jobId);
7
7
  let retryStatus = $state({ val: {} });
8
8
  let globalRefreshes = $state({});
@@ -104,5 +104,8 @@ let toolCallIndicesToLoad = $state([]);
104
104
  }
105
105
  }}
106
106
  {showLogsWithResult}
107
+ {hideFlowResult}
108
+ notes={notesProp}
109
+ groups={groupsProp}
107
110
  />
108
111
  {/key}
@@ -1,7 +1,7 @@
1
1
  import type { FlowState } from './flows/flowState';
2
2
  import type { DurationStatus, GraphModuleState } from './graph';
3
3
  import { type StateStore } from '../utils';
4
- import type { CompletedJob, Job } from '../gen';
4
+ import type { CompletedJob, FlowNote, FlowValue, Job } from '../gen';
5
5
  interface Props {
6
6
  jobId: string;
7
7
  initialJob?: Job | undefined;
@@ -37,6 +37,8 @@ interface Props {
37
37
  job: CompletedJob;
38
38
  }) => void;
39
39
  showLogsWithResult?: boolean;
40
+ notes?: FlowNote[];
41
+ groups?: FlowValue['groups'];
40
42
  }
41
43
  declare const FlowStatusViewer: import("svelte").Component<Props, {}, "job" | "isOwner" | "suspendStatus" | "localModuleStates" | "localDurationStatuses" | "flowState" | "rightColumnSelect" | "selectedJobStep">;
42
44
  type FlowStatusViewer = ReturnType<typeof FlowStatusViewer>;
@@ -3,6 +3,7 @@ import { JobService, ResourceService } from '../gen';
3
3
  import { workspaceStore } from '../stores';
4
4
  import { base } from '../base';
5
5
  import FlowJobResult from './FlowJobResult.svelte';
6
+ import WorkflowTimeline from './WorkflowTimeline.svelte';
6
7
  import DisplayResult from './DisplayResult.svelte';
7
8
  import { getContext, setContext, tick, untrack } from 'svelte';
8
9
  import { onDestroy } from 'svelte';
@@ -36,7 +37,7 @@ import { useThrottle } from 'runed';
36
37
  import { Splitpanes, Pane } from 'svelte-splitpanes';
37
38
  import { getActiveReplay } from './recording/flowRecording.svelte';
38
39
  let { flowState: flowStateStore, retryStatus, suspendStatus, hideDownloadInGraph, hideTimeline, hideNodeDefinition, hideDownloadLogs } = getContext('FlowStatusViewer');
39
- let { jobId, initialJob = undefined, workspaceId = undefined, flowJobIds = undefined, innerModule = undefined, render = true, selectedNode = $bindable(undefined), globalModuleStates, globalDurationStatuses = [], updateRecursiveRefreshFn = undefined, isSelectedBranch = true, isSubflow = false, reducedPolling = false, wideResults = false, workspace = $workspaceStore, prefix = undefined, topModuleStates = undefined, refreshGlobal, updateGlobalRefresh, subflowParentsGlobalModuleStates = [], subflowParentsDurationStatuses = [], isForloopSelected = false, job = $bindable(undefined), rightColumnSelect = $bindable('timeline'), localModuleStates = $bindable({}), localDurationStatuses = $bindable({}), customUi, onResultStreamUpdate = undefined, graphTabOpen, isNodeSelected, loadExtraLogs = undefined, onStart = undefined, onJobsLoaded = undefined, onDone = undefined, toolCallStore, showLogsWithResult = false, showJobDetailHeader = false } = $props();
40
+ let { jobId, initialJob = undefined, workspaceId = undefined, flowJobIds = undefined, innerModule = undefined, render = true, selectedNode = $bindable(undefined), globalModuleStates, globalDurationStatuses = [], updateRecursiveRefreshFn = undefined, isSelectedBranch = true, isSubflow = false, reducedPolling = false, wideResults = false, workspace = $workspaceStore, prefix = undefined, topModuleStates = undefined, refreshGlobal, updateGlobalRefresh, subflowParentsGlobalModuleStates = [], subflowParentsDurationStatuses = [], isForloopSelected = false, job = $bindable(undefined), rightColumnSelect = $bindable('timeline'), localModuleStates = $bindable({}), localDurationStatuses = $bindable({}), customUi, onResultStreamUpdate = undefined, graphTabOpen, isNodeSelected, loadExtraLogs = undefined, onStart = undefined, onJobsLoaded = undefined, onDone = undefined, toolCallStore, showLogsWithResult = false, showJobDetailHeader = false, hideFlowResult = false, notes: notesProp = undefined, groups: groupsProp = undefined } = $props();
40
41
  let getTopModuleStates = $derived(topModuleStates ?? localModuleStates);
41
42
  // Cache replay check to avoid repeated function calls in the template
42
43
  let isReplay = $derived(!!getActiveReplay());
@@ -82,6 +83,19 @@ $effect(() => {
82
83
  });
83
84
  });
84
85
  let jobResults = $state(untrack(() => flowJobIds)?.flowJobs?.map((x, id) => `iter #${id + 1} not loaded by frontend yet`) ?? []);
86
+ function asWorkflowStatus(x) {
87
+ if (!x || typeof x !== 'object')
88
+ return {};
89
+ const result = {};
90
+ for (const [k, v] of Object.entries(x)) {
91
+ if (!k.startsWith('_') || k.startsWith('_step/'))
92
+ result[k] = v;
93
+ }
94
+ return result;
95
+ }
96
+ function getStepResults(x) {
97
+ return x?._checkpoint?.completed_steps ?? {};
98
+ }
85
99
  let retry_selected = $state('');
86
100
  let timeout = undefined;
87
101
  let expandedSubflows = $state({});
@@ -651,7 +665,8 @@ function onJobsLoadedInner(mod, job, force) {
651
665
  tag: job.tag,
652
666
  started_at,
653
667
  parent_module: mod['parent_module'],
654
- script_hash: job.script_hash
668
+ script_hash: job.script_hash,
669
+ workflow_as_code_status: job['workflow_as_code_status']
655
670
  }, force);
656
671
  setDurationStatusByJob(id, job.id, {
657
672
  created_at: job.created_at ? new Date(job.created_at).getTime() : undefined,
@@ -679,8 +694,8 @@ function onJobsLoadedInner(mod, job, force) {
679
694
  retries: mod?.failed_retries?.length,
680
695
  skipped: mod.skipped,
681
696
  agent_actions: mod.agent_actions,
682
- script_hash: job.script_hash
683
- // retries: flowStateStore?.raw_flow
697
+ script_hash: job.script_hash,
698
+ workflow_as_code_status: job['workflow_as_code_status']
684
699
  }, force);
685
700
  setDurationStatusByJob(id, job.id, {
686
701
  created_at: job.created_at ? new Date(job.created_at).getTime() : undefined,
@@ -841,7 +856,7 @@ function allModulesForTimeline(modules, expandedSubflows) {
841
856
  });
842
857
  function rec(ids, prefix) {
843
858
  return ids.concat(ids.flatMap(({ id }) => {
844
- let fms = expandedSubflows[id];
859
+ let fms = expandedSubflows[id]?.modules;
845
860
  let oid = id.split(':').pop();
846
861
  if (!oid) {
847
862
  return [];
@@ -987,7 +1002,7 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
987
1002
  />
988
1003
  </div>
989
1004
  {/if}
990
- {:else if render}
1005
+ {:else if render && !hideFlowResult}
991
1006
  <div class={'flex flex-col w-full'}>
992
1007
  {#if showLogsWithResult && job}
993
1008
  <!-- Side-by-side result and logs for simple jobs -->
@@ -1537,7 +1552,8 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1537
1552
  earlyStop={job.raw_flow?.skip_expr !== undefined}
1538
1553
  cache={job.raw_flow?.cache_ttl !== undefined}
1539
1554
  modules={job.raw_flow?.modules ?? []}
1540
- notes={job.raw_flow?.notes ?? []}
1555
+ notes={notesProp ?? job.raw_flow?.notes ?? []}
1556
+ groups={groupsProp ?? job.raw_flow?.groups}
1541
1557
  failureModule={job.raw_flow?.failure_module}
1542
1558
  preprocessorModule={job.raw_flow?.preprocessor_module}
1543
1559
  allowSimplifiedPoll={false}
@@ -1630,7 +1646,9 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1630
1646
  {#if job.args}
1631
1647
  <JobArgs
1632
1648
  id={isReplay ? undefined : job.id}
1633
- workspace={isReplay ? undefined : (job.workspace_id ?? $workspaceStore ?? 'no_w')}
1649
+ workspace={isReplay
1650
+ ? undefined
1651
+ : (job.workspace_id ?? $workspaceStore ?? 'no_w')}
1634
1652
  args={job.args}
1635
1653
  />
1636
1654
  {:else}
@@ -1700,11 +1718,28 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1700
1718
  <div class="text-xs text-emphasis font-semibold mb-1">Inputs</div>
1701
1719
  <JobArgs
1702
1720
  id={isReplay ? undefined : node.job_id}
1703
- workspace={isReplay ? undefined : (job.workspace_id ?? $workspaceStore ?? 'no_w')}
1721
+ workspace={isReplay
1722
+ ? undefined
1723
+ : (job.workspace_id ?? $workspaceStore ?? 'no_w')}
1704
1724
  args={node.args}
1705
1725
  />
1706
1726
  </div>
1707
1727
  {/if}
1728
+ {#if node.workflow_as_code_status}
1729
+ <div>
1730
+ <div class="text-xs text-emphasis font-semibold mb-1"
1731
+ >Workflow timeline</div
1732
+ >
1733
+ <WorkflowTimeline
1734
+ flow_status={asWorkflowStatus(node.workflow_as_code_status)}
1735
+ flowDone={node.type === 'Success' || node.type === 'Failure'}
1736
+ stepResults={getStepResults(node.workflow_as_code_status)}
1737
+ result={node.result}
1738
+ success={node.type === 'Success'}
1739
+ jobId={node.job_id}
1740
+ />
1741
+ </div>
1742
+ {/if}
1708
1743
  </div>
1709
1744
  <FlowJobResult
1710
1745
  tagLabel={customUi?.tagLabel}
@@ -1752,7 +1787,7 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1752
1787
  likely did not run yet</p
1753
1788
  >
1754
1789
  {/if}
1755
- {:else}<p class="p-2 text-primary italic"
1790
+ {:else}<p class="text-secondary text-xs italic"
1756
1791
  >Select a node to see its details here</p
1757
1792
  >{/if}
1758
1793
  </div>
@@ -1768,7 +1803,7 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1768
1803
  {#if node?.job_id}
1769
1804
  <JobOtelTraces jobId={node.job_id} />
1770
1805
  {:else}
1771
- <div class="p-4 text-secondary"
1806
+ <div class="p-4 text-secondary text-xs italic"
1772
1807
  >Select a node with a job to see HTTP request traces</div
1773
1808
  >
1774
1809
  {/if}