windmill-components 1.642.0 → 1.655.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 (853) hide show
  1. package/dist/appPolicy/myFunction.es.js +1337 -0
  2. package/dist/sharedUtils/common.d.ts +2 -5
  3. package/dist/sharedUtils/components/apps/components/display/dbtable/queries/select.d.ts +0 -2
  4. package/dist/sharedUtils/components/apps/components/display/dbtable/utils.d.ts +3 -14
  5. package/dist/sharedUtils/components/apps/editor/appPolicy.d.ts +1 -1
  6. package/dist/sharedUtils/components/apps/editor/appUtilsS3.d.ts +1 -12
  7. package/dist/sharedUtils/components/apps/editor/component/components.d.ts +2 -68
  8. package/dist/sharedUtils/components/apps/inputType.d.ts +2 -4
  9. package/dist/sharedUtils/components/apps/sharedTypes.d.ts +0 -2
  10. package/dist/sharedUtils/components/dbTypes.d.ts +0 -3
  11. package/dist/sharedUtils/components/raw_apps/rawAppPolicy.d.ts +1 -1
  12. package/dist/sharedUtils/components/raw_apps/utils.d.ts +1 -1
  13. package/dist/sharedUtils/components/triggers/utils.d.ts +3 -2
  14. package/dist/sharedUtils/gen/schemas.gen.d.ts +71 -915
  15. package/dist/sharedUtils/gen/services.gen.d.ts +23 -329
  16. package/dist/sharedUtils/gen/types.gen.d.ts +141 -1870
  17. package/dist/sharedUtils/hub.d.ts +0 -1
  18. package/dist/sharedUtils/jsr.json +5 -5
  19. package/dist/sharedUtils/lib.d.ts +1 -1
  20. package/dist/sharedUtils/lib.es.js +79 -241
  21. package/dist/sharedUtils/package.json +11 -11
  22. package/dist/sharedUtils/stores.d.ts +0 -1
  23. package/dist/sharedUtils/svelte5Utils.svelte.d.ts +1 -32
  24. package/dist/sharedUtils/utils.d.ts +4 -19
  25. package/package/aiStore.d.ts +1 -0
  26. package/package/aiStore.js +3 -0
  27. package/package/components/ApiConnectForm.svelte +7 -0
  28. package/package/components/ApiConnectForm.svelte.d.ts +1 -1
  29. package/package/components/AppConnectDrawer.svelte +18 -15
  30. package/package/components/AppConnectDrawer.svelte.d.ts +5 -5
  31. package/package/components/AppConnectInner.svelte +2 -0
  32. package/package/components/AppConnectLightweightResourcePicker.svelte +3 -3
  33. package/package/components/AppWrapper.svelte +3 -2
  34. package/package/components/ArgInput.svelte +1 -0
  35. package/package/components/AutheliaSetting.svelte +9 -6
  36. package/package/components/AutheliaSetting.svelte.d.ts +4 -18
  37. package/package/components/AuthentikSetting.svelte +10 -7
  38. package/package/components/AuthentikSetting.svelte.d.ts +4 -18
  39. package/package/components/AzureOauthSettings.svelte +23 -23
  40. package/package/components/AzureOauthSettings.svelte.d.ts +4 -18
  41. package/package/components/Badge.svelte +2 -4
  42. package/package/components/Badge.svelte.d.ts +5 -27
  43. package/package/components/ChangeInstanceUsernameInner.svelte +4 -7
  44. package/package/components/ChangeInstanceUsernameInner.svelte.d.ts +8 -7
  45. package/package/components/ChannelSelector.svelte +19 -15
  46. package/package/components/CompareWorkspaces.svelte +618 -650
  47. package/package/components/ContextualVariableEditor.svelte +8 -8
  48. package/package/components/ContextualVariableEditor.svelte.d.ts +3 -6
  49. package/package/components/CustomOauth.svelte +19 -23
  50. package/package/components/CustomOauth.svelte.d.ts +4 -26
  51. package/package/components/CustomPopover.svelte +3 -2
  52. package/package/components/CustomSso.svelte +20 -25
  53. package/package/components/CustomSso.svelte.d.ts +4 -27
  54. package/package/components/DBManagerDrawer.svelte +26 -44
  55. package/package/components/DBManagerDrawer.svelte.d.ts +3 -5
  56. package/package/components/DBSchemaExplorer.svelte +3 -3
  57. package/package/components/DBTableEditor.svelte +6 -6
  58. package/package/components/DatatablePicker.svelte +1 -3
  59. package/package/components/DateInput.svelte +1 -0
  60. package/package/components/DateTimeInput.svelte +1 -0
  61. package/package/components/DefaultScripts.svelte +3 -5
  62. package/package/components/DefaultScripts.svelte.d.ts +6 -20
  63. package/package/components/DefaultScriptsInner.svelte +4 -4
  64. package/package/components/DefaultScriptsInner.svelte.d.ts +4 -18
  65. package/package/components/DeployWorkspace.svelte +222 -470
  66. package/package/components/DeployWorkspaceDrawer.svelte +1 -10
  67. package/package/components/Description.svelte +3 -3
  68. package/package/components/Description.svelte.d.ts +6 -28
  69. package/package/components/Dev.svelte +15 -14
  70. package/package/components/DiffEditor.svelte +2 -2
  71. package/package/components/DisplayResult.svelte.d.ts +1 -1
  72. package/package/components/DropdownSubmenuItem.svelte +3 -2
  73. package/package/components/DropdownV2.svelte +1 -1
  74. package/package/components/DropdownV2.svelte.d.ts +2 -2
  75. package/package/components/DropdownV2Inner.svelte +3 -0
  76. package/package/components/DucklakePicker.svelte +1 -3
  77. package/package/components/DurationMs.svelte +1 -3
  78. package/package/components/DurationMs.svelte.d.ts +4 -18
  79. package/package/components/DynamicInput.svelte +2 -2
  80. package/package/components/EditableSchemaForm.svelte +4 -4
  81. package/package/components/Editor.svelte +9 -11
  82. package/package/components/EditorBar.svelte +2 -2
  83. package/package/components/EditorBar.svelte.d.ts +1 -1
  84. package/package/components/ExecutionDuration.svelte +12 -20
  85. package/package/components/ExecutionDuration.svelte.d.ts +14 -24
  86. package/package/components/ExploreAssetButton.svelte +13 -6
  87. package/package/components/ExploreAssetButton.svelte.d.ts +0 -2
  88. package/package/components/FakeMonacoPlaceHolder.svelte +3 -2
  89. package/package/components/FieldHeader.svelte +6 -16
  90. package/package/components/FieldHeader.svelte.d.ts +5 -20
  91. package/package/components/FilesetEditor.svelte +23 -0
  92. package/package/components/FilterSearchbar.svelte +44 -11
  93. package/package/components/FilterSearchbar.svelte.d.ts +1 -0
  94. package/package/components/FlowBuilder.svelte +47 -28
  95. package/package/components/FlowGraphViewer.svelte +1 -10
  96. package/package/components/FlowGraphViewer.svelte.d.ts +17 -16
  97. package/package/components/FlowGraphViewerStep.svelte +5 -7
  98. package/package/components/FlowGraphViewerStep.svelte.d.ts +4 -18
  99. package/package/components/FlowHistoryJobPicker.svelte +4 -2
  100. package/package/components/FlowHistoryJobPicker.svelte.d.ts +1 -0
  101. package/package/components/FlowInputViewer.svelte +1 -1
  102. package/package/components/FlowInputViewer.svelte.d.ts +4 -18
  103. package/package/components/FlowLogViewer.svelte +6 -4
  104. package/package/components/FlowLogViewerWrapper.svelte +2 -2
  105. package/package/components/FlowPlugConnect.svelte +1 -3
  106. package/package/components/FlowPlugConnect.svelte.d.ts +7 -6
  107. package/package/components/FlowPreviewContent.svelte +111 -6
  108. package/package/components/FlowPreviewContent.svelte.d.ts +1 -0
  109. package/package/components/FlowStatusViewer.svelte +6 -6
  110. package/package/components/FlowStatusViewerInner.svelte +99 -86
  111. package/package/components/FlowViewer.svelte +6 -4
  112. package/package/components/FlowWrapper.svelte +5 -4
  113. package/package/components/FolderEditor.svelte +9 -7
  114. package/package/components/FolderUsageInfo.svelte +7 -6
  115. package/package/components/FolderUsageInfo.svelte.d.ts +5 -19
  116. package/package/components/GraphqlSchemaViewer.svelte +3 -3
  117. package/package/components/GraphqlSchemaViewer.svelte.d.ts +5 -19
  118. package/package/components/GroupEditor.svelte +22 -10
  119. package/package/components/IdEditorInput.svelte +3 -2
  120. package/package/components/InputTransformForm.svelte +2 -0
  121. package/package/components/InputTransformSchemaForm.svelte.d.ts +1 -1
  122. package/package/components/InputTransformsViewer.svelte +2 -2
  123. package/package/components/InputTransformsViewer.svelte.d.ts +4 -18
  124. package/package/components/InstanceGroupEditor.svelte +28 -23
  125. package/package/components/InstanceGroupEditor.svelte.d.ts +5 -4
  126. package/package/components/InstanceNameEditor.svelte +19 -19
  127. package/package/components/InstanceNameEditor.svelte.d.ts +9 -9
  128. package/package/components/InstanceSetting.svelte +8 -2
  129. package/package/components/InstanceSettings.svelte +36 -22
  130. package/package/components/InviteGlobalUser.svelte +4 -4
  131. package/package/components/InviteGlobalUser.svelte.d.ts +5 -4
  132. package/package/components/JobLoader.svelte +51 -1
  133. package/package/components/KanidmSetting.svelte +15 -12
  134. package/package/components/KanidmSetting.svelte.d.ts +4 -18
  135. package/package/components/KeycloakSetting.svelte +18 -9
  136. package/package/components/KeycloakSetting.svelte.d.ts +4 -18
  137. package/package/components/LogId.svelte +5 -2
  138. package/package/components/LogId.svelte.d.ts +4 -18
  139. package/package/components/LogSnippetViewer.svelte +5 -5
  140. package/package/components/LogSnippetViewer.svelte.d.ts +5 -20
  141. package/package/components/LogViewer.svelte +2 -2
  142. package/package/components/ManualPopover.svelte +4 -1
  143. package/package/components/MapResult.svelte +33 -33
  144. package/package/components/MapResult.svelte.d.ts +13 -26
  145. package/package/components/MemoryFootprintViewer.svelte +8 -6
  146. package/package/components/MemoryFootprintViewer.svelte.d.ts +4 -18
  147. package/package/components/ModulePreview.svelte.d.ts +1 -1
  148. package/package/components/ModuleStatus.svelte +1 -3
  149. package/package/components/ModuleStatus.svelte.d.ts +5 -19
  150. package/package/components/ModuleTest.svelte +3 -3
  151. package/package/components/ModuleTest.svelte.d.ts +1 -1
  152. package/package/components/OAuthSetting.svelte +57 -41
  153. package/package/components/OauthExtraParams.svelte +9 -4
  154. package/package/components/OauthExtraParams.svelte.d.ts +4 -18
  155. package/package/components/OauthScopes.svelte +9 -4
  156. package/package/components/OauthScopes.svelte.d.ts +4 -18
  157. package/package/components/ObjectResourceInput.svelte +10 -3
  158. package/package/components/ObjectResourceInput.svelte.d.ts +1 -0
  159. package/package/components/OnBehalfOfSelector.svelte +191 -0
  160. package/package/components/OnBehalfOfSelector.svelte.d.ts +21 -0
  161. package/package/components/PageHeader.svelte +3 -7
  162. package/package/components/PageHeader.svelte.d.ts +5 -27
  163. package/package/components/ParqetCsvTableRenderer.svelte +12 -12
  164. package/package/components/ParqetCsvTableRenderer.svelte.d.ts +4 -18
  165. package/package/components/PermissionHistory.svelte +8 -6
  166. package/package/components/PersistentScriptDrawer.svelte +56 -50
  167. package/package/components/PersistentScriptDrawer.svelte.d.ts +3 -5
  168. package/package/components/Popover.svelte +2 -2
  169. package/package/components/PrefixedInput.svelte +2 -2
  170. package/package/components/QueueMetricsDrawer.svelte +1 -1
  171. package/package/components/QueueMetricsDrawer.svelte.d.ts +3 -20
  172. package/package/components/QueueMetricsDrawerInner.svelte +14 -9
  173. package/package/components/QueueMetricsDrawerInner.svelte.d.ts +2 -17
  174. package/package/components/RadioButton.svelte +3 -8
  175. package/package/components/RadioButton.svelte.d.ts +13 -12
  176. package/package/components/Range.svelte +15 -18
  177. package/package/components/Range.svelte.d.ts +5 -21
  178. package/package/components/RepositorySelector.svelte +3 -2
  179. package/package/components/Required.svelte +4 -4
  180. package/package/components/Required.svelte.d.ts +6 -20
  181. package/package/components/ResourceEditor.svelte +22 -5
  182. package/package/components/ResourceEditor.svelte.d.ts +0 -1
  183. package/package/components/ResourceEditorDrawer.svelte +11 -16
  184. package/package/components/ResourceEditorDrawer.svelte.d.ts +3 -6
  185. package/package/components/ResourcePicker.svelte +35 -17
  186. package/package/components/ResourcePicker.svelte.d.ts +1 -0
  187. package/package/components/RunForm.svelte +2 -2
  188. package/package/components/RunFormAdvancedPopup.svelte +1 -4
  189. package/package/components/RunFormAdvancedPopup.svelte.d.ts +4 -18
  190. package/package/components/RunsPage.svelte +126 -27
  191. package/package/components/S3FilePicker.svelte +2 -1
  192. package/package/components/S3FilePicker.svelte.d.ts +1 -0
  193. package/package/components/S3FilePickerInner.svelte +19 -7
  194. package/package/components/S3FilePickerInner.svelte.d.ts +1 -0
  195. package/package/components/S3ObjectPicker.svelte +4 -5
  196. package/package/components/S3ObjectPicker.svelte.d.ts +6 -6
  197. package/package/components/SaveButton.svelte +2 -0
  198. package/package/components/SaveInputsButton.svelte +2 -7
  199. package/package/components/SaveInputsButton.svelte.d.ts +10 -9
  200. package/package/components/SavedInputsPickerViewer.svelte +21 -22
  201. package/package/components/SavedInputsPickerViewer.svelte.d.ts +10 -10
  202. package/package/components/SchemaEditorProperty.svelte +1 -1
  203. package/package/components/SchemaEditorProperty.svelte.d.ts +4 -18
  204. package/package/components/SchemaForm.svelte.d.ts +1 -1
  205. package/package/components/ScriptBuilder.svelte +113 -30
  206. package/package/components/ScriptEditor.svelte +90 -34
  207. package/package/components/ScriptEditor.svelte.d.ts +2 -2
  208. package/package/components/ScriptPicker.svelte +1 -1
  209. package/package/components/ScriptWrapper.svelte +3 -2
  210. package/package/components/Scrollable.svelte +10 -10
  211. package/package/components/Scrollable.svelte.d.ts +6 -29
  212. package/package/components/SearchItems.svelte +1 -1
  213. package/package/components/ServiceLogsInner.svelte +15 -9
  214. package/package/components/ShareModal.svelte +15 -8
  215. package/package/components/ShareModal.svelte.d.ts +1 -1
  216. package/package/components/SimpleEditor.svelte +1 -1
  217. package/package/components/Slider.svelte +2 -5
  218. package/package/components/Slider.svelte.d.ts +6 -28
  219. package/package/components/StringTypeNarrowing.svelte +3 -2
  220. package/package/components/Subsection.svelte +3 -2
  221. package/package/components/Summary.svelte +1 -2
  222. package/package/components/Summary.svelte.d.ts +4 -18
  223. package/package/components/SupabaseConnect.svelte +20 -17
  224. package/package/components/SupabaseConnect.svelte.d.ts +3 -5
  225. package/package/components/SuperadminSettings.svelte +11 -9
  226. package/package/components/SuperadminSettingsInner.svelte +3 -3
  227. package/package/components/TableCustom.svelte +6 -8
  228. package/package/components/TableCustom.svelte.d.ts +10 -10
  229. package/package/components/TeamSelector.svelte +20 -14
  230. package/package/components/TemplateEditor.svelte +1 -7
  231. package/package/components/TestConnection.svelte +2 -5
  232. package/package/components/TestConnection.svelte.d.ts +4 -18
  233. package/package/components/TimelineBar.svelte +5 -2
  234. package/package/components/Toast.svelte +2 -2
  235. package/package/components/Toggle.svelte +2 -2
  236. package/package/components/Tooltip.svelte +3 -16
  237. package/package/components/Tooltip.svelte.d.ts +4 -1
  238. package/package/components/TooltipInner.svelte +3 -14
  239. package/package/components/TooltipInner.svelte.d.ts +5 -28
  240. package/package/components/Uptodate.svelte +1 -1
  241. package/package/components/Uptodate.svelte.d.ts +2 -17
  242. package/package/components/Urlize.svelte +2 -2
  243. package/package/components/Urlize.svelte.d.ts +4 -18
  244. package/package/components/Version.svelte +1 -1
  245. package/package/components/Version.svelte.d.ts +2 -17
  246. package/package/components/WhitelistIp.svelte +1 -1
  247. package/package/components/WhitelistIp.svelte.d.ts +2 -17
  248. package/package/components/WorkerGroup.svelte +1 -5
  249. package/package/components/WorkerRepl.svelte +1 -2
  250. package/package/components/WorkflowTimeline.svelte +10 -14
  251. package/package/components/WorkflowTimeline.svelte.d.ts +4 -18
  252. package/package/components/WorkspaceDependenciesEditor.svelte +1 -1
  253. package/package/components/WorkspaceDeployLayout.svelte +107 -0
  254. package/package/components/WorkspaceDeployLayout.svelte.d.ts +31 -0
  255. package/package/components/ZitadelSetting.svelte +9 -6
  256. package/package/components/ZitadelSetting.svelte.d.ts +4 -18
  257. package/package/components/apps/components/GroupWrapper.svelte +5 -2
  258. package/package/components/apps/components/buttons/AppButton.svelte +6 -5
  259. package/package/components/apps/components/buttons/AppForm.svelte +5 -5
  260. package/package/components/apps/components/buttons/AppFormButton.svelte +5 -5
  261. package/package/components/apps/components/buttons/AppSchemaForm.svelte +5 -4
  262. package/package/components/apps/components/display/AppAccordionList.svelte +4 -4
  263. package/package/components/apps/components/display/AppAlert.svelte +4 -4
  264. package/package/components/apps/components/display/AppBarChart.svelte +4 -4
  265. package/package/components/apps/components/display/AppCarouselList.svelte +5 -5
  266. package/package/components/apps/components/display/AppChartJs.svelte +4 -4
  267. package/package/components/apps/components/display/AppChartJsV2.svelte +4 -4
  268. package/package/components/apps/components/display/AppChat.svelte +5 -5
  269. package/package/components/apps/components/display/AppCustomComponent.svelte +3 -3
  270. package/package/components/apps/components/display/AppDisplayComponent.svelte +5 -5
  271. package/package/components/apps/components/display/AppDisplayComponentByJobId.svelte +3 -3
  272. package/package/components/apps/components/display/AppDownload.svelte +3 -3
  273. package/package/components/apps/components/display/AppHtml.svelte +4 -3
  274. package/package/components/apps/components/display/AppIcon.svelte +4 -4
  275. package/package/components/apps/components/display/AppImage.svelte +4 -4
  276. package/package/components/apps/components/display/AppJobIdFlowStatus.svelte +4 -4
  277. package/package/components/apps/components/display/AppJobIdLogComponent.svelte +3 -3
  278. package/package/components/apps/components/display/AppJobProgressBar.svelte +3 -3
  279. package/package/components/apps/components/display/AppMap.svelte +6 -4
  280. package/package/components/apps/components/display/AppMarkdown.svelte +5 -4
  281. package/package/components/apps/components/display/AppMenu.svelte +4 -3
  282. package/package/components/apps/components/display/AppNavbar.svelte +4 -4
  283. package/package/components/apps/components/display/AppPdf.svelte +3 -3
  284. package/package/components/apps/components/display/AppPieChart.svelte +3 -3
  285. package/package/components/apps/components/display/AppRecomputeAll.svelte +3 -3
  286. package/package/components/apps/components/display/AppScatterChart.svelte +3 -3
  287. package/package/components/apps/components/display/AppStatCard.svelte +3 -3
  288. package/package/components/apps/components/display/AppText.svelte +10 -8
  289. package/package/components/apps/components/display/AppTimeseries.svelte +3 -3
  290. package/package/components/apps/components/display/InsertRowDrawerButton.svelte +1 -1
  291. package/package/components/apps/components/display/PlotlyHtml.svelte +3 -2
  292. package/package/components/apps/components/display/PlotlyHtmlV2.svelte +3 -2
  293. package/package/components/apps/components/display/ResolveNavbarItemPath.svelte +3 -2
  294. package/package/components/apps/components/display/VegaLiteHtml.svelte +3 -2
  295. package/package/components/apps/components/display/charts/AppAgCharts.svelte +3 -3
  296. package/package/components/apps/components/display/dbtable/AppDbExplorer.svelte +2 -2
  297. package/package/components/apps/components/display/dbtable/DbExplorerCount.svelte +3 -3
  298. package/package/components/apps/components/display/dbtable/DeleteRow.svelte +2 -2
  299. package/package/components/apps/components/display/dbtable/InsertRowRunnable.svelte +2 -2
  300. package/package/components/apps/components/display/dbtable/UpdateCell.svelte +2 -2
  301. package/package/components/apps/components/display/dbtable/metadata.js +9 -4
  302. package/package/components/apps/components/display/dbtable/utils.d.ts +3 -3
  303. package/package/components/apps/components/display/dbtable/utils.js +3 -3
  304. package/package/components/apps/components/display/table/AppAggridExplorerTable.svelte +8 -4
  305. package/package/components/apps/components/display/table/AppAggridExplorerTable.svelte.d.ts +1 -1
  306. package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte +3 -3
  307. package/package/components/apps/components/display/table/AppAggridTable.svelte +4 -3
  308. package/package/components/apps/components/display/table/AppAggridTableActions.svelte +3 -3
  309. package/package/components/apps/components/display/table/AppTable.svelte +4 -4
  310. package/package/components/apps/components/helpers/HiddenComponent.svelte +2 -2
  311. package/package/components/apps/components/helpers/InputValue.svelte +3 -3
  312. package/package/components/apps/components/helpers/RunnableComponent.svelte +2 -2
  313. package/package/components/apps/components/helpers/RunnableWrapper.svelte +2 -2
  314. package/package/components/apps/components/inputs/AppCheckbox.svelte +6 -6
  315. package/package/components/apps/components/inputs/AppCodeInputComponent.svelte +6 -5
  316. package/package/components/apps/components/inputs/AppDateInput.svelte +4 -4
  317. package/package/components/apps/components/inputs/AppDateSelect.svelte +4 -4
  318. package/package/components/apps/components/inputs/AppDateSliderInput.svelte +5 -4
  319. package/package/components/apps/components/inputs/AppDateTimeInput.svelte +4 -4
  320. package/package/components/apps/components/inputs/AppFileInput.svelte +4 -4
  321. package/package/components/apps/components/inputs/AppMultiSelectV2.svelte +5 -4
  322. package/package/components/apps/components/inputs/AppNumberInput.svelte +4 -4
  323. package/package/components/apps/components/inputs/AppQuillEditor.svelte +3 -2
  324. package/package/components/apps/components/inputs/AppRangeInput.svelte +5 -4
  325. package/package/components/apps/components/inputs/AppS3FileInput.svelte +4 -4
  326. package/package/components/apps/components/inputs/AppSelect.svelte +8 -7
  327. package/package/components/apps/components/inputs/AppSelectStep.svelte +5 -4
  328. package/package/components/apps/components/inputs/AppSelectTab.svelte +4 -4
  329. package/package/components/apps/components/inputs/AppSliderInputs.svelte +5 -4
  330. package/package/components/apps/components/inputs/AppTextInput.svelte +4 -4
  331. package/package/components/apps/components/inputs/AppTimeInput.svelte +4 -4
  332. package/package/components/apps/components/inputs/AppUserResource.svelte +4 -4
  333. package/package/components/apps/components/inputs/currency/AppCurrencyInput.svelte +5 -4
  334. package/package/components/apps/components/inputs/currency/CurrencyInput.svelte +3 -1
  335. package/package/components/apps/components/layout/AppConditionalWrapper.svelte +5 -5
  336. package/package/components/apps/components/layout/AppContainer.svelte +3 -3
  337. package/package/components/apps/components/layout/AppDecisionTree.svelte +5 -5
  338. package/package/components/apps/components/layout/AppDivider.svelte +3 -3
  339. package/package/components/apps/components/layout/AppDrawer.svelte +7 -6
  340. package/package/components/apps/components/layout/AppList.svelte +5 -5
  341. package/package/components/apps/components/layout/AppModal.svelte +7 -6
  342. package/package/components/apps/components/layout/AppSplitpanes.svelte +8 -6
  343. package/package/components/apps/components/layout/AppStepper.svelte +6 -6
  344. package/package/components/apps/components/layout/AppTabs.svelte +8 -8
  345. package/package/components/apps/components/layout/ListWrapper.svelte +6 -2
  346. package/package/components/apps/components/layout/RowWrapper.svelte +6 -2
  347. package/package/components/apps/editor/AppEditor.svelte +11 -11
  348. package/package/components/apps/editor/AppEditorHeader.svelte +21 -4
  349. package/package/components/apps/editor/AppEditorHeaderDeploy.svelte +41 -1
  350. package/package/components/apps/editor/AppEditorHeaderDeploy.svelte.d.ts +2 -1
  351. package/package/components/apps/editor/AppExportButton.svelte +4 -4
  352. package/package/components/apps/editor/AppExportButton.svelte.d.ts +3 -20
  353. package/package/components/apps/editor/AppInputs.svelte +1 -1
  354. package/package/components/apps/editor/AppInputs.svelte.d.ts +2 -17
  355. package/package/components/apps/editor/AppJsonEditor.svelte +5 -5
  356. package/package/components/apps/editor/AppJsonEditor.svelte.d.ts +3 -7
  357. package/package/components/apps/editor/AppPreview.svelte +17 -16
  358. package/package/components/apps/editor/ComponentHeader.svelte +1 -1
  359. package/package/components/apps/editor/DecisionTreeDebug.svelte +4 -4
  360. package/package/components/apps/editor/GridEditor.svelte +1 -0
  361. package/package/components/apps/editor/GridViewer.svelte +3 -3
  362. package/package/components/apps/editor/RecomputeAllComponents.svelte +13 -8
  363. package/package/components/apps/editor/RecomputeAllComponents.svelte.d.ts +2 -17
  364. package/package/components/apps/editor/SubGridEditor.svelte +4 -2
  365. package/package/components/apps/editor/appPolicy.js +1 -1
  366. package/package/components/apps/editor/commonAppUtils.d.ts +1 -1
  367. package/package/components/apps/editor/commonAppUtils.js +1 -1
  368. package/package/components/apps/editor/component/Component.svelte +2 -2
  369. package/package/components/apps/editor/component/components.d.ts +8 -2
  370. package/package/components/apps/editor/component/components.js +26 -39
  371. package/package/components/apps/editor/componentsPanel/CssHelperPanel.svelte +10 -7
  372. package/package/components/apps/editor/componentsPanel/CssHelperPanel.svelte.d.ts +1 -1
  373. package/package/components/apps/editor/componentsPanel/CustomComponentsList.svelte +7 -7
  374. package/package/components/apps/editor/componentsPanel/CustomComponentsList.svelte.d.ts +1 -1
  375. package/package/components/apps/editor/componentsPanel/NameEditor.svelte +2 -2
  376. package/package/components/apps/editor/componentsPanel/QuickStyleMenu.svelte +3 -4
  377. package/package/components/apps/editor/componentsPanel/QuickStyleProperty.svelte +3 -3
  378. package/package/components/apps/editor/componentsPanel/ThemeList.svelte +5 -5
  379. package/package/components/apps/editor/componentsPanel/ThemeList.svelte.d.ts +1 -1
  380. package/package/components/apps/editor/componentsPanel/ThemeNameEditor.svelte +2 -2
  381. package/package/components/apps/editor/contextPanel/ComponentOutput.svelte +2 -2
  382. package/package/components/apps/editor/contextPanel/DebugPanel.svelte +4 -4
  383. package/package/components/apps/editor/contextPanel/DebugPanel.svelte.d.ts +2 -17
  384. package/package/components/apps/editor/contextPanel/components/Output.svelte +6 -1
  385. package/package/components/apps/editor/contextPanel/components/Output.svelte.d.ts +1 -0
  386. package/package/components/apps/editor/contextPanel/components/TableActionsOutput.svelte +14 -2
  387. package/package/components/apps/editor/settingsPanel/ComponentControl.svelte +3 -2
  388. package/package/components/apps/editor/settingsPanel/ContextVariables.svelte +6 -6
  389. package/package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +4 -4
  390. package/package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte.d.ts +0 -1
  391. package/package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +1 -2
  392. package/package/components/apps/editor/settingsPanel/common/PanelSection.svelte +3 -2
  393. package/package/components/apps/editor/settingsPanel/inputEditor/UploadInputEditor.svelte +6 -5
  394. package/package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +2 -2
  395. package/package/components/apps/editor/settingsPanel/secondaryMenu/SecondaryMenu.svelte +3 -2
  396. package/package/components/apps/svelte-grid/Grid.svelte +4 -4
  397. package/package/components/apps/svelte-grid/MoveResize.svelte +5 -5
  398. package/package/components/assets/AssetButtons.svelte +31 -27
  399. package/package/components/assets/AssetButtons.svelte.d.ts +0 -1
  400. package/package/components/assets/AssetColumnBadges.svelte +5 -3
  401. package/package/components/assets/AssetsDropdownButton.svelte +11 -13
  402. package/package/components/assets/AssetsUsageDrawer.svelte +7 -5
  403. package/package/components/assets/JobAssetsViewer.svelte +11 -5
  404. package/package/components/assets/VolumeDetailDrawer.svelte +101 -0
  405. package/package/components/assets/VolumeDetailDrawer.svelte.d.ts +9 -0
  406. package/package/components/assets/VolumesDrawer.svelte +191 -0
  407. package/package/components/assets/VolumesDrawer.svelte.d.ts +8 -0
  408. package/package/components/assets/assetsFilter.d.ts +4 -0
  409. package/package/components/assets/assetsFilter.js +4 -0
  410. package/package/components/assets/lib.js +4 -0
  411. package/package/components/auditLogs/AuditLogsFilters.svelte +4 -7
  412. package/package/components/chartjs-wrappers/Chart.svelte +4 -4
  413. package/package/components/common/FileProgressBar.svelte +9 -7
  414. package/package/components/common/FileProgressBar.svelte.d.ts +5 -27
  415. package/package/components/common/InlineCalendarInput.svelte +5 -1
  416. package/package/components/common/alert/Notification.svelte +2 -2
  417. package/package/components/common/alert/Notification.svelte.d.ts +4 -18
  418. package/package/components/common/button/AnimatedButton.svelte +3 -9
  419. package/package/components/common/button/AnimatedButton.svelte.d.ts +5 -27
  420. package/package/components/common/button/AnimatedButtonInner.svelte +6 -12
  421. package/package/components/common/button/AnimatedButtonInner.svelte.d.ts +5 -27
  422. package/package/components/common/button/Button.svelte +5 -5
  423. package/package/components/common/button/PulseButton.svelte +15 -19
  424. package/package/components/common/button/PulseButton.svelte.d.ts +10 -48
  425. package/package/components/common/button/RefreshButton.svelte +3 -2
  426. package/package/components/common/button/RefreshButton.svelte.d.ts +1 -1
  427. package/package/components/common/button/RoundIconButton.svelte +5 -5
  428. package/package/components/common/button/RoundIconButton.svelte.d.ts +6 -28
  429. package/package/components/common/button/UndoRedo.svelte +1 -2
  430. package/package/components/common/button/UndoRedo.svelte.d.ts +6 -5
  431. package/package/components/common/calendarPicker/CalendarPicker.svelte +44 -43
  432. package/package/components/common/calendarPicker/CalendarPicker.svelte.d.ts +11 -11
  433. package/package/components/common/clearableInput/ClearableInput.svelte +28 -27
  434. package/package/components/common/clearableInput/ClearableInput.svelte.d.ts +11 -37
  435. package/package/components/common/confirmationModal/ConfirmationModal.svelte +1 -1
  436. package/package/components/common/confirmationModal/DraftTriggersConfirmationModal.svelte +2 -2
  437. package/package/components/common/confirmationModal/UnsavedConfirmationModal.svelte +3 -3
  438. package/package/components/common/contextmenu/ContextMenu.svelte +14 -4
  439. package/package/components/common/contextmenu/ContextMenu.svelte.d.ts +2 -0
  440. package/package/components/common/contextmenu/contextMenuStyles.d.ts +4 -0
  441. package/package/components/common/contextmenu/contextMenuStyles.js +4 -0
  442. package/package/components/common/drawer/Disposable.svelte +3 -3
  443. package/package/components/common/fileInput/FileInput.svelte +16 -30
  444. package/package/components/common/fileInput/FileInput.svelte.d.ts +24 -32
  445. package/package/components/common/fileUpload/FileUploadModal.svelte +2 -4
  446. package/package/components/common/fileUpload/FileUploadModal.svelte.d.ts +7 -6
  447. package/package/components/common/kbd/Kbd.svelte +4 -3
  448. package/package/components/common/languageIcons/LanguageIcon.svelte +21 -4
  449. package/package/components/common/languageIcons/LanguageIcon.svelte.d.ts +1 -1
  450. package/package/components/common/layout/ListElement.svelte +5 -1
  451. package/package/components/common/layout/ListElement.svelte.d.ts +5 -25
  452. package/package/components/common/menu/MenuItem.svelte +9 -4
  453. package/package/components/common/menu/MenuItem.svelte.d.ts +5 -29
  454. package/package/components/common/menu/ResolveOpen.svelte +6 -3
  455. package/package/components/common/menu/ResolveOpen.svelte.d.ts +8 -4
  456. package/package/components/common/modal/AlwaysMountedModal.svelte +11 -15
  457. package/package/components/common/modal/AlwaysMountedModal.svelte.d.ts +8 -32
  458. package/package/components/common/modal/Modal2.svelte +12 -20
  459. package/package/components/common/modal/Modal2.svelte.d.ts +10 -36
  460. package/package/components/common/popup/PopupV2.svelte +3 -2
  461. package/package/components/common/stepper/Stepper.svelte +4 -9
  462. package/package/components/common/stepper/Stepper.svelte.d.ts +10 -9
  463. package/package/components/common/table/AppRow.svelte +20 -12
  464. package/package/components/common/table/FlowRow.svelte +17 -9
  465. package/package/components/common/table/Row.svelte +6 -5
  466. package/package/components/common/table/Row.svelte.d.ts +2 -1
  467. package/package/components/common/table/RowIcon.svelte +40 -11
  468. package/package/components/common/table/RowIcon.svelte.d.ts +6 -18
  469. package/package/components/common/table/ScriptRow.svelte +37 -27
  470. package/package/components/common/table/Table.svelte +5 -1
  471. package/package/components/common/table/Table.svelte.d.ts +5 -25
  472. package/package/components/common/tabs/Tabs.svelte +2 -2
  473. package/package/components/common/tabs/TabsV2.svelte +1 -1
  474. package/package/components/common/toggleButton-v2/ToggleButton.svelte +0 -1
  475. package/package/components/common/toggleButton-v2/ToggleButtonMore.svelte +10 -5
  476. package/package/components/common/toggleButton-v2/ToggleButtonMore.svelte.d.ts +1 -0
  477. package/package/components/copilot/FlowCopilotInputsModal.svelte +14 -13
  478. package/package/components/copilot/FlowCopilotInputsModal.svelte.d.ts +6 -5
  479. package/package/components/copilot/MetadataGen.svelte +5 -5
  480. package/package/components/copilot/RegexGen.svelte +87 -80
  481. package/package/components/copilot/RegexGen.svelte.d.ts +1 -1
  482. package/package/components/copilot/ResourceGen.svelte +157 -0
  483. package/package/components/copilot/ResourceGen.svelte.d.ts +12 -0
  484. package/package/components/copilot/ScriptFix.svelte +37 -33
  485. package/package/components/copilot/ScriptGen.svelte +1 -1
  486. package/package/components/copilot/chat/AIChat.svelte +1 -1
  487. package/package/components/copilot/chat/AIChatDisplay.svelte +52 -48
  488. package/package/components/copilot/chat/AIChatInput.svelte +46 -38
  489. package/package/components/copilot/chat/AIChatManager.svelte.js +4 -2
  490. package/package/components/copilot/chat/AssistantMessage.svelte +1 -1
  491. package/package/components/copilot/chat/AssistantMessage.svelte.d.ts +4 -18
  492. package/package/components/copilot/chat/ChatMode.svelte +37 -33
  493. package/package/components/copilot/chat/ContextElementBadge.svelte +6 -8
  494. package/package/components/copilot/chat/flow/AIChangesWarningModal.svelte +8 -11
  495. package/package/components/copilot/lib.d.ts +3 -2
  496. package/package/components/copilot/lib.js +25 -29
  497. package/package/components/custom_ui.d.ts +3 -0
  498. package/package/components/dbManagerDrawerModel.svelte.d.ts +13 -0
  499. package/package/components/dbManagerDrawerModel.svelte.js +182 -0
  500. package/package/components/details/ClipboardPanel.svelte +5 -8
  501. package/package/components/details/ClipboardPanel.svelte.d.ts +8 -22
  502. package/package/components/details/ErrorHandlerToggleButton.svelte +1 -4
  503. package/package/components/details/ErrorHandlerToggleButton.svelte.d.ts +5 -19
  504. package/package/components/details/ErrorHandlerToggleButtonV2.svelte +2 -6
  505. package/package/components/details/ErrorHandlerToggleButtonV2.svelte.d.ts +6 -20
  506. package/package/components/flows/CreateActionsApp.svelte +42 -18
  507. package/package/components/flows/DebounceLimit.svelte.d.ts +1 -1
  508. package/package/components/flows/FlowAssetsHandler.svelte +3 -2
  509. package/package/components/flows/FlowModuleIcon.svelte +4 -3
  510. package/package/components/flows/common/FlowCardHeader.svelte +3 -2
  511. package/package/components/flows/content/AgentToolWrapper.svelte +1 -1
  512. package/package/components/flows/content/DynamicInputHelpBox.svelte +1 -1
  513. package/package/components/flows/content/DynamicInputHelpBox.svelte.d.ts +2 -17
  514. package/package/components/flows/content/FlowEditorPanel.svelte +14 -1
  515. package/package/components/flows/content/FlowEnvironmentVariables.svelte +128 -32
  516. package/package/components/flows/content/FlowFailureModule.svelte +2 -3
  517. package/package/components/flows/content/FlowFailureModule.svelte.d.ts +4 -18
  518. package/package/components/flows/content/FlowInputs.svelte +20 -2
  519. package/package/components/flows/content/FlowInputsQuick.svelte +21 -0
  520. package/package/components/flows/content/FlowLoop.svelte +2 -2
  521. package/package/components/flows/content/FlowModuleComponent.svelte +2 -2
  522. package/package/components/flows/content/FlowModuleMockTransitionMessage.svelte +13 -13
  523. package/package/components/flows/content/FlowModuleMockTransitionMessage.svelte.d.ts +2 -17
  524. package/package/components/flows/content/FlowModuleScript.svelte +1 -1
  525. package/package/components/flows/content/FlowPathViewer.svelte +7 -5
  526. package/package/components/flows/content/FlowPathViewer.svelte.d.ts +4 -18
  527. package/package/components/flows/content/FlowPreprocessorModule.svelte +2 -3
  528. package/package/components/flows/content/FlowPreprocessorModule.svelte.d.ts +4 -18
  529. package/package/components/flows/content/FlowSelectionPanel.svelte +34 -10
  530. package/package/components/flows/content/FlowSelectionPanel.svelte.d.ts +5 -0
  531. package/package/components/flows/content/FlowSettings.svelte +70 -22
  532. package/package/components/flows/content/FlowWhileLoop.svelte +2 -1
  533. package/package/components/flows/content/GenAiQuick.svelte +6 -6
  534. package/package/components/flows/content/GenAiQuick.svelte.d.ts +7 -6
  535. package/package/components/flows/content/ScriptEditorDrawer.svelte +5 -4
  536. package/package/components/flows/content/SuspendDrawer.svelte +4 -4
  537. package/package/components/flows/content/SuspendDrawer.svelte.d.ts +4 -18
  538. package/package/components/flows/flowModuleNextId.d.ts +1 -0
  539. package/package/components/flows/flowModuleNextId.js +11 -0
  540. package/package/components/flows/flowStateUtils.svelte.d.ts +1 -1
  541. package/package/components/flows/header/FlowPreviewButtons.svelte +10 -0
  542. package/package/components/flows/header/FlowYamlEditor.svelte +6 -2
  543. package/package/components/flows/map/FlowJobsMenu.svelte +4 -0
  544. package/package/components/flows/map/FlowJobsMenu.svelte.d.ts +2 -2
  545. package/package/components/flows/map/FlowModuleSchemaItem.svelte +65 -54
  546. package/package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +2 -2
  547. package/package/components/flows/map/FlowModuleSchemaItemViewer.svelte +11 -9
  548. package/package/components/flows/map/FlowModuleSchemaItemViewer.svelte.d.ts +1 -0
  549. package/package/components/flows/map/FlowModuleSchemaMap.svelte +151 -17
  550. package/package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +3 -0
  551. package/package/components/flows/map/InsertModuleInner.svelte +46 -21
  552. package/package/components/flows/map/MapItem.svelte +22 -9
  553. package/package/components/flows/map/MapItem.svelte.d.ts +4 -3
  554. package/package/components/flows/map/VirtualItem.svelte +5 -2
  555. package/package/components/flows/multiSelectUtils.d.ts +26 -0
  556. package/package/components/flows/multiSelectUtils.js +122 -0
  557. package/package/components/flows/pickers/FlowScriptPicker.svelte +3 -0
  558. package/package/components/flows/pickers/FlowScriptPicker.svelte.d.ts +1 -1
  559. package/package/components/flows/pickers/FlowScriptPickerQuick.svelte +5 -6
  560. package/package/components/flows/pickers/FlowScriptPickerQuick.svelte.d.ts +9 -8
  561. package/package/components/flows/pickers/FlowToplevelNode.svelte +2 -3
  562. package/package/components/flows/pickers/FlowToplevelNode.svelte.d.ts +6 -5
  563. package/package/components/flows/pickers/PickHubApp.svelte +21 -2
  564. package/package/components/flows/pickers/PickHubFlow.svelte +21 -2
  565. package/package/components/flows/pickers/PickHubScript.svelte +12 -1
  566. package/package/components/flows/pickers/PickHubScriptQuick.svelte +16 -7
  567. package/package/components/flows/pickers/TopLevelNode.svelte +2 -0
  568. package/package/components/flows/previousResults.d.ts +1 -1
  569. package/package/components/flows/propPicker/JobPickerLight.svelte +1 -1
  570. package/package/components/flows/propPicker/JobPickerLight.svelte.d.ts +4 -18
  571. package/package/components/flows/propPicker/OutputBadge.svelte +2 -2
  572. package/package/components/flows/propPicker/OutputBadge.svelte.d.ts +6 -20
  573. package/package/components/flows/propPicker/OutputPicker.svelte +1 -0
  574. package/package/components/flows/propPicker/PropPickerWrapper.svelte +0 -3
  575. package/package/components/flows/types.d.ts +2 -3
  576. package/package/components/git_sync/GitSyncContext.svelte.js +74 -41
  577. package/package/components/git_sync/GitSyncModalManager.svelte +1 -1
  578. package/package/components/git_sync/GitSyncModalManager.svelte.d.ts +2 -17
  579. package/package/components/git_sync/GitSyncRepositoryCard.svelte +34 -17
  580. package/package/components/graph/DragCoordinator.svelte +63 -0
  581. package/package/components/graph/DragCoordinator.svelte.d.ts +12 -0
  582. package/package/components/graph/DragGhost.svelte +138 -0
  583. package/package/components/graph/DragGhost.svelte.d.ts +10 -0
  584. package/package/components/graph/FlowGraphV2.svelte +85 -61
  585. package/package/components/graph/FlowGraphV2.svelte.d.ts +9 -3
  586. package/package/components/graph/MiniFlowGraph.svelte +82 -0
  587. package/package/components/graph/MiniFlowGraph.svelte.d.ts +11 -0
  588. package/package/components/graph/MoveHandleButton.svelte +47 -0
  589. package/package/components/graph/MoveHandleButton.svelte.d.ts +13 -0
  590. package/package/components/graph/SelectionBoundingBox.svelte +72 -20
  591. package/package/components/graph/SelectionBoundingBox.svelte.d.ts +7 -0
  592. package/package/components/graph/SelectionTool.svelte +3 -2
  593. package/package/components/graph/compoundLayout.d.ts +28 -0
  594. package/package/components/graph/compoundLayout.js +436 -0
  595. package/package/components/graph/graphBuilder.svelte.d.ts +9 -22
  596. package/package/components/graph/graphBuilder.svelte.js +27 -41
  597. package/package/components/graph/graphContext.d.ts +2 -0
  598. package/package/components/graph/moveManager.svelte.d.ts +74 -0
  599. package/package/components/graph/moveManager.svelte.js +176 -0
  600. package/package/components/graph/noteEditor.svelte.d.ts +0 -1
  601. package/package/components/graph/noteManager.svelte.d.ts +4 -0
  602. package/package/components/graph/noteManager.svelte.js +6 -0
  603. package/package/components/graph/noteUtils.svelte.d.ts +0 -1
  604. package/package/components/graph/noteUtils.svelte.js +0 -2
  605. package/package/components/graph/renderers/edges/BaseEdge.svelte +65 -24
  606. package/package/components/graph/renderers/edges/BaseEdge.svelte.d.ts +0 -1
  607. package/package/components/graph/renderers/edges/HiddenBaseEdge.svelte +1 -1
  608. package/package/components/graph/renderers/edges/HiddenBaseEdge.svelte.d.ts +4 -18
  609. package/package/components/graph/renderers/nodes/AIToolNode.svelte +4 -4
  610. package/package/components/graph/renderers/nodes/AIToolNode.svelte.d.ts +1 -0
  611. package/package/components/graph/renderers/nodes/AssetNode.svelte +30 -27
  612. package/package/components/graph/renderers/nodes/AssetNode.svelte.d.ts +1 -0
  613. package/package/components/graph/renderers/nodes/AssetsOverflowedNode.svelte +18 -14
  614. package/package/components/graph/renderers/nodes/AssetsOverflowedNode.svelte.d.ts +1 -0
  615. package/package/components/graph/renderers/nodes/BranchAllEndNode.svelte +1 -1
  616. package/package/components/graph/renderers/nodes/BranchAllStart.svelte +1 -1
  617. package/package/components/graph/renderers/nodes/BranchOneStart.svelte +1 -1
  618. package/package/components/graph/renderers/nodes/ForLoopEndNode.svelte +1 -1
  619. package/package/components/graph/renderers/nodes/ForLoopStartNode.svelte +1 -1
  620. package/package/components/graph/renderers/nodes/ModuleNode.svelte +50 -9
  621. package/package/components/graph/renderers/nodes/NewAIToolNode.svelte +5 -0
  622. package/package/components/graph/renderers/nodes/NoBranchNode.svelte +2 -2
  623. package/package/components/graph/renderers/nodes/NoBranchNode.svelte.d.ts +1 -0
  624. package/package/components/graph/renderers/nodes/NodeWrapper.svelte +21 -7
  625. package/package/components/graph/renderers/nodes/NodeWrapper.svelte.d.ts +4 -1
  626. package/package/components/graph/renderers/nodes/NoteNode.svelte +2 -2
  627. package/package/components/graph/renderers/nodes/SubflowBound.svelte +1 -1
  628. package/package/components/graph/renderers/nodes/branchOneEndNode.svelte +1 -1
  629. package/package/components/graph/renderers/triggers/TriggerButton.svelte +6 -4
  630. package/package/components/graph/renderers/triggers/TriggerButton.svelte.d.ts +5 -29
  631. package/package/components/graph/renderers/triggers/TriggerCount.svelte +1 -1
  632. package/package/components/graph/renderers/triggers/TriggerCount.svelte.d.ts +4 -18
  633. package/package/components/graph/renderers/triggers/TriggersBadge.svelte +2 -6
  634. package/package/components/graph/selectionUtils.svelte.d.ts +1 -0
  635. package/package/components/graph/selectionUtils.svelte.js +11 -1
  636. package/package/components/graph/util.d.ts +1 -4
  637. package/package/components/graph/util.js +3 -6
  638. package/package/components/graph/wacToFlow.d.ts +4 -0
  639. package/package/components/graph/wacToFlow.js +14 -0
  640. package/package/components/home/FlowIcon.svelte +2 -2
  641. package/package/components/home/FlowIcon.svelte.d.ts +5 -19
  642. package/package/components/home/ItemsList.svelte +3 -3
  643. package/package/components/home/ListFiltersQuick.svelte +2 -4
  644. package/package/components/home/ListFiltersQuick.svelte.d.ts +10 -9
  645. package/package/components/icons/AssetGenericIcon.svelte +3 -1
  646. package/package/components/icons/ClaudeIcon.svelte +20 -0
  647. package/package/components/icons/ClaudeIcon.svelte.d.ts +7 -0
  648. package/package/components/icons/RubyIcon.svelte +2 -2
  649. package/package/components/icons/WindmillIcon2.svelte +0 -1
  650. package/package/components/instanceSettings/IndexerMemorySettings.svelte +153 -20
  651. package/package/components/instanceSettings.js +44 -6
  652. package/package/components/meltComponents/MeltButton.svelte +5 -10
  653. package/package/components/meltComponents/MeltButton.svelte.d.ts +12 -35
  654. package/package/components/meltComponents/Menu.svelte +6 -6
  655. package/package/components/meltComponents/Menu.svelte.d.ts +2 -2
  656. package/package/components/meltComponents/Menubar.svelte +3 -2
  657. package/package/components/meltComponents/Menubar.svelte.d.ts +7 -0
  658. package/package/components/meltComponents/Popover.svelte +49 -73
  659. package/package/components/meltComponents/Popover.svelte.d.ts +40 -44
  660. package/package/components/meltComponents/SideBarTab.svelte +3 -2
  661. package/package/components/meltComponents/Tooltip.svelte +15 -21
  662. package/package/components/meltComponents/Tooltip.svelte.d.ts +16 -39
  663. package/package/components/propertyPicker/ObjectViewer.svelte +253 -165
  664. package/package/components/propertyPicker/ObjectViewerWrapper.svelte +16 -27
  665. package/package/components/propertyPicker/ObjectViewerWrapper.svelte.d.ts +16 -15
  666. package/package/components/propertyPicker/PropPicker.svelte +21 -53
  667. package/package/components/propertyPicker/PropPicker.svelte.d.ts +0 -1
  668. package/package/components/propertyPicker/PropPickerResult.svelte +1 -5
  669. package/package/components/propertyPicker/PropPickerResult.svelte.d.ts +9 -8
  670. package/package/components/raw_apps/DefaultDatabaseSelector.svelte +40 -36
  671. package/package/components/raw_apps/FileTreeNode.svelte +2 -2
  672. package/package/components/raw_apps/RawAppEditorHeader.svelte +14 -1
  673. package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte +0 -1
  674. package/package/components/raw_apps/RawAppInputsSpecEditor.svelte +4 -4
  675. package/package/components/raw_apps/RawAppInputsSpecEditor.svelte.d.ts +0 -1
  676. package/package/components/raw_apps/RunnableRow.svelte +2 -2
  677. package/package/components/raw_apps/fileTreeUtils.js +2 -3
  678. package/package/components/raw_apps/utils.js +6 -1
  679. package/package/components/recording/FlowRecordingReplay.svelte +210 -0
  680. package/package/components/recording/FlowRecordingReplay.svelte.d.ts +7 -0
  681. package/package/components/recording/ScriptRecordingReplay.svelte +210 -0
  682. package/package/components/recording/ScriptRecordingReplay.svelte.d.ts +7 -0
  683. package/package/components/recording/flowRecording.svelte.d.ts +22 -0
  684. package/package/components/recording/flowRecording.svelte.js +205 -0
  685. package/package/components/recording/scriptRecording.svelte.d.ts +9 -0
  686. package/package/components/recording/scriptRecording.svelte.js +88 -0
  687. package/package/components/recording/types.d.ts +39 -0
  688. package/package/components/recording/types.js +1 -0
  689. package/package/components/resources/resourcesFilter.d.ts +4 -0
  690. package/package/components/resources/resourcesFilter.js +4 -0
  691. package/package/components/runs/JobRunsPreview.svelte +8 -1
  692. package/package/components/runs/MobileFilters.svelte +15 -10
  693. package/package/components/runs/MobileFilters.svelte.d.ts +4 -18
  694. package/package/components/runs/PreprocessedArgsDisplay.svelte +2 -10
  695. package/package/components/runs/PreprocessedArgsDisplay.svelte.d.ts +4 -18
  696. package/package/components/runs/QueuePopover.svelte +2 -2
  697. package/package/components/runs/QueuePopover.svelte.d.ts +4 -18
  698. package/package/components/runs/RunBadges.svelte +1 -1
  699. package/package/components/runs/RunsTable.svelte +9 -4
  700. package/package/components/runs/RunsTable.svelte.d.ts +1 -0
  701. package/package/components/runs/runsFilter.d.ts +18 -2
  702. package/package/components/runs/runsFilter.js +20 -4
  703. package/package/components/runs/useJobsLoader.svelte.d.ts +8 -1
  704. package/package/components/runs/useJobsLoader.svelte.js +189 -47
  705. package/package/components/schedules/schedulesFilter.d.ts +4 -0
  706. package/package/components/schedules/schedulesFilter.js +4 -0
  707. package/package/components/schema/AddProperty.svelte +1 -1
  708. package/package/components/schema/AddProperty.svelte.d.ts +5 -6
  709. package/package/components/schema/AddPropertyForm.svelte +1 -1
  710. package/package/components/schema/AddPropertyForm.svelte.d.ts +1 -1
  711. package/package/components/schema/EditableSchemaSdkWrapper.svelte +3 -2
  712. package/package/components/schema/FlowPropertyEditor.svelte +1 -5
  713. package/package/components/schema/RunningJobSchemaPicker.svelte +31 -30
  714. package/package/components/schema/RunningJobSchemaPicker.svelte.d.ts +8 -7
  715. package/package/components/schema/SchemaPickerRow.svelte +3 -3
  716. package/package/components/scriptEditor/LogPanel.svelte +11 -2
  717. package/package/components/script_builder.d.ts +1 -1
  718. package/package/components/search/QuickMenuItem.svelte +2 -2
  719. package/package/components/search/RunsSearch.svelte +5 -1
  720. package/package/components/select/GenericDropdown.svelte +5 -2
  721. package/package/components/select/MultiSelect.svelte +1 -0
  722. package/package/components/select/Select.svelte +1 -0
  723. package/package/components/select/SelectDropdown.svelte +1 -1
  724. package/package/components/settings/ChangeWorkspaceId.svelte +14 -9
  725. package/package/components/settings/ChangeWorkspaceId.svelte.d.ts +4 -18
  726. package/package/components/settings/CreateToken.svelte +8 -20
  727. package/package/components/settings/PremiumInfo.svelte +36 -32
  728. package/package/components/settings/PremiumInfo.svelte.d.ts +4 -18
  729. package/package/components/settings/TokensTable.svelte +74 -14
  730. package/package/components/settings/WorkspaceUserSettings.svelte +0 -1
  731. package/package/components/sidebar/CriticalAlertModal.svelte +33 -30
  732. package/package/components/sidebar/CriticalAlertModal.svelte.d.ts +4 -18
  733. package/package/components/sidebar/CriticalAlertTable.svelte +4 -13
  734. package/package/components/sidebar/CriticalAlertTable.svelte.d.ts +4 -18
  735. package/package/components/sidebar/DarkModeToggle.svelte +2 -3
  736. package/package/components/sidebar/DarkModeToggle.svelte.d.ts +5 -20
  737. package/package/components/sidebar/FavoriteMenu.svelte +1 -1
  738. package/package/components/sidebar/MenuButton.svelte +2 -2
  739. package/package/components/sidebar/MultiplayerMenu.svelte +12 -7
  740. package/package/components/sidebar/MultiplayerMenu.svelte.d.ts +2 -17
  741. package/package/components/sidebar/SideBarNotification.svelte +1 -2
  742. package/package/components/sidebar/SideBarNotification.svelte.d.ts +4 -18
  743. package/package/components/sidebar/SidebarContent.svelte +3 -3
  744. package/package/components/sidebar/WorkspaceMenu.svelte +4 -4
  745. package/package/components/splitPanes/AnimatedPane.svelte +2 -2
  746. package/package/components/splitPanes/SplitPanesWrapper.svelte +11 -15
  747. package/package/components/splitPanes/SplitPanesWrapper.svelte.d.ts +12 -28
  748. package/package/components/sqlTypeService.d.ts +2 -2
  749. package/package/components/sqlTypeService.js +4 -8
  750. package/package/components/table/Cell.svelte +2 -2
  751. package/package/components/table/DataTable.svelte +1 -1
  752. package/package/components/table/DownloadCsv.svelte +1 -2
  753. package/package/components/table/DownloadCsv.svelte.d.ts +4 -18
  754. package/package/components/table/Head.svelte +6 -2
  755. package/package/components/table/Head.svelte.d.ts +6 -27
  756. package/package/components/table/Row.svelte +6 -10
  757. package/package/components/table/Row.svelte.d.ts +11 -18
  758. package/package/components/triggers/CaptureIcon.svelte +1 -2
  759. package/package/components/triggers/CaptureIcon.svelte.d.ts +5 -19
  760. package/package/components/triggers/TestTriggerConnection.svelte +1 -4
  761. package/package/components/triggers/TestTriggerConnection.svelte.d.ts +6 -21
  762. package/package/components/triggers/TriggerAdvancedBadges.svelte +16 -0
  763. package/package/components/triggers/TriggerAdvancedBadges.svelte.d.ts +12 -0
  764. package/package/components/triggers/TriggerEditorToolbar.svelte +11 -9
  765. package/package/components/triggers/TriggerTokens.svelte +8 -7
  766. package/package/components/triggers/TriggerTokens.svelte.d.ts +6 -21
  767. package/package/components/triggers/email/EmailTriggerEditorConfigSection.svelte +1 -1
  768. package/package/components/triggers/email/EmailTriggerEditorInner.svelte +7 -2
  769. package/package/components/triggers/gcp/GcpTriggerEditorInner.svelte +9 -2
  770. package/package/components/triggers/http/RouteCapture.svelte +1 -1
  771. package/package/components/triggers/http/RouteEditorConfigSection.svelte +1 -1
  772. package/package/components/triggers/http/RouteEditorInner.svelte +10 -1
  773. package/package/components/triggers/kafka/KafkaTriggerEditorInner.svelte +119 -5
  774. package/package/components/triggers/kafka/KafkaTriggersConfigSection.svelte +1 -0
  775. package/package/components/triggers/kafka/utils.js +2 -0
  776. package/package/components/triggers/mqtt/MqttTriggerEditorInner.svelte +12 -3
  777. package/package/components/triggers/native/services/google/GoogleDrivePicker.svelte.d.ts +1 -1
  778. package/package/components/triggers/nats/NatsTriggerEditorInner.svelte +7 -2
  779. package/package/components/triggers/postgres/CheckPostgresRequirement.svelte +2 -4
  780. package/package/components/triggers/postgres/CheckPostgresRequirement.svelte.d.ts +4 -18
  781. package/package/components/triggers/postgres/PostgresTriggerEditorInner.svelte +10 -4
  782. package/package/components/triggers/postgres/PublicationPicker.svelte +9 -12
  783. package/package/components/triggers/postgres/PublicationPicker.svelte.d.ts +4 -18
  784. package/package/components/triggers/postgres/SlotPicker.svelte +4 -7
  785. package/package/components/triggers/postgres/SlotPicker.svelte.d.ts +4 -18
  786. package/package/components/triggers/schedules/ScheduleEditorInner.svelte +10 -0
  787. package/package/components/triggers/sqs/SqsTriggerEditorInner.svelte +6 -1
  788. package/package/components/triggers/testingBadge.svelte +3 -1
  789. package/package/components/triggers/webhook/WebhooksConfigSection.svelte +1 -1
  790. package/package/components/triggers/websocket/WebsocketCapture.svelte +15 -13
  791. package/package/components/triggers/websocket/WebsocketTriggerEditorInner.svelte +10 -4
  792. package/package/components/tutorials/Tutorial.svelte +2 -6
  793. package/package/components/tutorials/Tutorial.svelte.d.ts +14 -23
  794. package/package/components/tutorials/TutorialControls.svelte +1 -2
  795. package/package/components/tutorials/TutorialControls.svelte.d.ts +6 -5
  796. package/package/components/tutorials/TutorialWrapper.svelte +3 -2
  797. package/package/components/tutorials/app/BackgroundRunnablesTutorial.svelte +2 -3
  798. package/package/components/tutorials/app/BackgroundRunnablesTutorial.svelte.d.ts +6 -6
  799. package/package/components/tutorials/app/ConnectionTutorial.svelte +2 -3
  800. package/package/components/tutorials/app/ConnectionTutorial.svelte.d.ts +6 -6
  801. package/package/components/tutorials/app/ExpressionEvaluationTutorial.svelte +2 -3
  802. package/package/components/tutorials/app/ExpressionEvaluationTutorial.svelte.d.ts +6 -6
  803. package/package/components/tutorials/workspace/WorkspaceOnboardingOperatorTutorial.svelte +3 -3
  804. package/package/components/tutorials/workspace/WorkspaceOnboardingTutorial.svelte +3 -3
  805. package/package/components/variables/variablesFilter.d.ts +4 -0
  806. package/package/components/variables/variablesFilter.js +4 -0
  807. package/package/components/wizards/AppPicker.svelte +3 -3
  808. package/package/components/wizards/AppPicker.svelte.d.ts +4 -18
  809. package/package/components/wizards/DBExplorerWizard.svelte +1 -0
  810. package/package/components/workspace/WorkspaceCard.svelte +3 -2
  811. package/package/components/workspaceSettings/CreateWorkspace.svelte +3 -3
  812. package/package/components/workspaceSettings/CustomInstanceDbSelect.svelte +1 -3
  813. package/package/components/workspaceSettings/CustomInstanceDbSelect.svelte.d.ts +0 -2
  814. package/package/components/workspaceSettings/CustomInstanceDbWizardModal.svelte +3 -3
  815. package/package/components/workspaceSettings/CustomInstanceDbWizardModal.svelte.d.ts +0 -1
  816. package/package/components/workspaceSettings/DataTableSettings.svelte +7 -12
  817. package/package/components/workspaceSettings/DucklakeSettings.svelte +131 -167
  818. package/package/components/workspaceSettings/GitSyncFilterSettings.svelte +12 -2
  819. package/package/components/workspaceSettings/RulesetEditor.svelte +24 -12
  820. package/package/components/workspaceSettings/StorageSettings.svelte +68 -15
  821. package/package/components/workspaceSettings/WorkspaceIntegrations.svelte +10 -9
  822. package/package/gen/core/OpenAPI.js +1 -1
  823. package/package/gen/schemas.gen.d.ts +257 -9
  824. package/package/gen/schemas.gen.js +257 -9
  825. package/package/gen/services.gen.d.ts +165 -58
  826. package/package/gen/services.gen.js +278 -64
  827. package/package/gen/types.gen.d.ts +779 -128
  828. package/package/hub.d.ts +0 -1
  829. package/package/hubPaths.json +24 -22
  830. package/package/infer.js +64 -14
  831. package/package/infer.svelte.js +88 -42
  832. package/package/script_helpers.d.ts +8 -5
  833. package/package/script_helpers.js +64 -21
  834. package/package/stores.d.ts +3 -1
  835. package/package/stores.js +2 -3
  836. package/package/svelte5Utils.svelte.js +6 -0
  837. package/package/svelte5UtilsKit.svelte.js +3 -2
  838. package/package/system_prompts/prompts.d.ts +20 -20
  839. package/package/system_prompts/prompts.js +814 -540
  840. package/package/templates/claude_sandbox.ts.template +85 -0
  841. package/package/utils/editInFork.d.ts +3 -0
  842. package/package/utils/editInFork.js +19 -0
  843. package/package/utils.js +2 -2
  844. package/package/utils_deployable.d.ts +233 -9
  845. package/package/utils_deployable.js +64 -10
  846. package/package/utils_workspace_deploy.d.ts +31 -0
  847. package/package/utils_workspace_deploy.js +449 -0
  848. package/package/workspace_settings.d.ts +2 -1
  849. package/package/workspace_settings.js +28 -0
  850. package/package.json +34 -15
  851. package/dist/sharedUtils/components/assets/lib.d.ts +0 -25
  852. package/dist/sharedUtils/components/icons/index.d.ts +0 -101
  853. package/package/svelte5Utils.svelte.d.ts +0 -178
@@ -2,9 +2,7 @@
2
2
  import { Button } from './common';
3
3
  import AnimatedButton from './common/button/AnimatedButton.svelte';
4
4
  import { twMerge } from 'tailwind-merge';
5
- export let connecting;
6
- export let id = undefined;
7
- export let wrapperClasses = '';
5
+ let { connecting, id = undefined, wrapperClasses = '' } = $props();
8
6
  </script>
9
7
 
10
8
  <AnimatedButton animate={connecting} baseRadius="6px" animationDuration="2s" marginWidth="2px">
@@ -1,3 +1,8 @@
1
+ interface Props {
2
+ connecting: boolean;
3
+ id?: undefined | string;
4
+ wrapperClasses?: string;
5
+ }
1
6
  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> {
2
7
  new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
3
8
  $$bindings?: Bindings;
@@ -11,14 +16,10 @@ interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> =
11
16
  };
12
17
  z_$$bindings?: Bindings;
13
18
  }
14
- declare const FlowPlugConnect: $$__sveltets_2_IsomorphicComponent<{
15
- connecting: boolean;
16
- id?: undefined | string;
17
- wrapperClasses?: string;
18
- }, {
19
+ declare const FlowPlugConnect: $$__sveltets_2_IsomorphicComponent<Props, {
19
20
  click: CustomEvent<any>;
20
21
  } & {
21
22
  [evt: string]: CustomEvent<any>;
22
- }, {}, {}, string>;
23
+ }, {}, {}, "">;
23
24
  type FlowPlugConnect = InstanceType<typeof FlowPlugConnect>;
24
25
  export default FlowPlugConnect;
@@ -9,7 +9,7 @@ import FlowStatusViewer from '../components/FlowStatusViewer.svelte';
9
9
  import FlowProgressBar from './flows/FlowProgressBar.svelte';
10
10
  import FlowExecutionStatus from './runs/FlowExecutionStatus.svelte';
11
11
  import JobDetailHeader from './runs/JobDetailHeader.svelte';
12
- import { AlertTriangle, CornerDownLeft, Loader2, Play, RefreshCw, X } from 'lucide-svelte';
12
+ import { AlertTriangle, Circle, CornerDownLeft, Download, Loader2, Play, RefreshCw, X } from 'lucide-svelte';
13
13
  import { emptyString, sendUserToast } from '../utils';
14
14
  import { dfs } from './flows/dfs';
15
15
  import { sliceModules } from './flows/flowStateUtils.svelte';
@@ -21,6 +21,7 @@ import { getStepHistoryLoaderContext } from './stepHistoryLoader.svelte';
21
21
  import FlowChat from './flows/conversations/FlowChat.svelte';
22
22
  import { stateSnapshot } from '../svelte5Utils.svelte';
23
23
  import FlowRestartButton from './FlowRestartButton.svelte';
24
+ import { createFlowRecording, setActiveRecording } from './recording/flowRecording.svelte';
24
25
  let { previewMode = $bindable(), open, preventEscape = $bindable(false), jobId = $bindable(undefined), job = $bindable(undefined), initial = $bindable(false), selectedJobStep = $bindable(undefined), selectedJobStepIsTopLevel = $bindable(undefined), selectedJobStepType = $bindable('single'), rightColumnSelect = $bindable('timeline'), branchOrIterationN = $bindable(0), scrollTop = $bindable(0), localModuleStates = $bindable({}), localDurationStatuses = $bindable({}), onRunPreview, render = false, onJobDone, upToId = undefined, suspendStatus } = $props();
25
26
  let restartBranchNames = [];
26
27
  let isRunning = $state(false);
@@ -40,6 +41,13 @@ let schemaFormWithArgPicker = $state(undefined);
40
41
  let currentJobId = $state(undefined);
41
42
  let stepHistoryLoader = getStepHistoryLoaderContext();
42
43
  let flowProgressBar = $state(undefined);
44
+ // Recording & replay
45
+ let flowRecording = createFlowRecording();
46
+ let lastRecording = $state(undefined);
47
+ let recordingMode = $state(false);
48
+ export function setRecordingMode(on) {
49
+ recordingMode = on;
50
+ }
43
51
  let loadingHistory = $state(false);
44
52
  let shouldUseStreaming = $derived.by(() => {
45
53
  const modules = flowStore.val.value?.modules;
@@ -150,6 +158,53 @@ async function selectInput(input, type) {
150
158
  export function refresh() {
151
159
  renderCount++;
152
160
  }
161
+ async function recordAndTest() {
162
+ lastRecording = undefined;
163
+ flowRecording.start($pathStore);
164
+ flowRecording.setFlow(extractFlow(previewMode));
165
+ setActiveRecording(flowRecording);
166
+ await runPreview(previewArgs.val, undefined);
167
+ }
168
+ function collectSubJobIds(flowStatus) {
169
+ if (!flowStatus)
170
+ return [];
171
+ const ids = [];
172
+ for (const mod of flowStatus.modules ?? []) {
173
+ if (mod.job)
174
+ ids.push(mod.job);
175
+ if (mod.flow_jobs)
176
+ ids.push(...mod.flow_jobs);
177
+ }
178
+ if (flowStatus.failure_module?.job)
179
+ ids.push(flowStatus.failure_module.job);
180
+ if (flowStatus.preprocessor_module?.job)
181
+ ids.push(flowStatus.preprocessor_module.job);
182
+ return ids;
183
+ }
184
+ async function recordSubJobs(completedJob) {
185
+ const subJobIds = collectSubJobIds(completedJob.flow_status);
186
+ await Promise.all(subJobIds.map(async (subId) => {
187
+ try {
188
+ const subJob = await JobService.getJob({
189
+ workspace: $workspaceStore,
190
+ id: subId
191
+ });
192
+ flowRecording.addCompletedJob(subId, subJob);
193
+ // Recurse into nested flows (flow-within-flow)
194
+ if (subJob.flow_status) {
195
+ await recordSubJobs(subJob);
196
+ }
197
+ }
198
+ catch (e) {
199
+ console.warn('[recording] failed to fetch sub-job', subId, e);
200
+ }
201
+ }));
202
+ }
203
+ function downloadRecording() {
204
+ if (lastRecording) {
205
+ flowRecording.download(lastRecording);
206
+ }
207
+ }
153
208
  let scrollableDiv = $state(undefined);
154
209
  function handleScroll() {
155
210
  let newScroll = scrollableDiv?.scrollTop ?? 0;
@@ -168,6 +223,23 @@ $effect.pre(() => {
168
223
  $effect(() => {
169
224
  scrollableDiv && render && untrack(() => onScrollableDivChange());
170
225
  });
226
+ // During recording, watch sub-job SSE streams to capture incremental logs
227
+ $effect(() => {
228
+ // Only watch sub-jobs for the current job (jobId is set after runPreview starts)
229
+ if (flowRecording.active && job?.flow_status && job?.id === jobId) {
230
+ const modules = job.flow_status.modules ?? [];
231
+ untrack(() => {
232
+ for (const mod of modules) {
233
+ if (mod.job) {
234
+ flowRecording.watchSubJob(mod.job, $workspaceStore);
235
+ }
236
+ }
237
+ if (job?.flow_status?.failure_module?.job) {
238
+ flowRecording.watchSubJob(job.flow_status.failure_module.job, $workspaceStore);
239
+ }
240
+ });
241
+ }
242
+ });
171
243
  export async function cancelTest() {
172
244
  isRunning = false;
173
245
  try {
@@ -220,7 +292,7 @@ export function flowHasChanged() {
220
292
  </div>
221
293
 
222
294
  {#if isRunning}
223
- <div class="mx-auto">
295
+ <div class="mx-auto flex items-center gap-2">
224
296
  <Button
225
297
  variant="accent"
226
298
  destructive
@@ -234,9 +306,14 @@ export function flowHasChanged() {
234
306
  >
235
307
  Cancel
236
308
  </Button>
309
+ {#if flowRecording.active}
310
+ <span class="text-xs text-red-500 font-medium flex items-center gap-1">
311
+ <Circle size={8} fill="currentColor" /> Recording
312
+ </span>
313
+ {/if}
237
314
  </div>
238
315
  {:else}
239
- <div class="grow justify-center flex flex-row gap-2">
316
+ <div class="grow justify-center flex flex-row gap-2 items-center">
240
317
  {#if jobId !== undefined && selectedJobStep !== undefined && selectedJobStepIsTopLevel}
241
318
  <FlowRestartButton
242
319
  {jobId}
@@ -258,7 +335,7 @@ export function flowHasChanged() {
258
335
  startIcon={{ icon: isRunning ? RefreshCw : Play }}
259
336
  size="sm"
260
337
  btnClasses="w-full max-w-lg"
261
- on:click={() => runPreview(previewArgs.val, undefined)}
338
+ on:click={() => recordingMode ? recordAndTest() : runPreview(previewArgs.val, undefined)}
262
339
  id="flow-editor-test-flow-drawer"
263
340
  shortCut={{ Icon: CornerDownLeft }}
264
341
  >
@@ -267,11 +344,24 @@ export function flowHasChanged() {
267
344
  <Badge baseClass="ml-1" color="indigo">
268
345
  {selectionManager.getSelectedId()}
269
346
  </Badge>
347
+ {:else if recordingMode}
348
+ Test flow and record
270
349
  {:else}
271
350
  Test flow
272
351
  {/if}
273
352
  </Button>
274
353
  {/if}
354
+ {#if lastRecording && recordingMode}
355
+ <Button
356
+ variant="subtle"
357
+ unifiedSize="sm"
358
+ title="Download recording"
359
+ on:click={downloadRecording}
360
+ startIcon={{ icon: Download }}
361
+ >
362
+ Download recording
363
+ </Button>
364
+ {/if}
275
365
  </div>
276
366
  {/if}
277
367
  </div>
@@ -396,6 +486,7 @@ export function flowHasChanged() {
396
486
  {/if}
397
487
  <FlowHistoryJobPicker
398
488
  selectInitial={jobId == undefined}
489
+ newFlow={$initialPathStore === ''}
399
490
  on:select={(e) => {
400
491
  if (!currentJobId) {
401
492
  currentJobId = jobId
@@ -415,7 +506,9 @@ export function flowHasChanged() {
415
506
  />
416
507
  </div>
417
508
 
418
- <FlowProgressBar {job} bind:this={flowProgressBar} slim textPosition="bottom" showStepId />
509
+ {#if jobId}
510
+ <FlowProgressBar {job} bind:this={flowProgressBar} slim textPosition="bottom" showStepId />
511
+ {/if}
419
512
 
420
513
  {#if job}
421
514
  <div class="w-full my-6">
@@ -454,9 +547,17 @@ export function flowHasChanged() {
454
547
  wideResults
455
548
  bind:flowState={flowStateStore.val}
456
549
  {jobId}
457
- onDone={() => {
550
+ onDone={async ({ job: completedJob }) => {
458
551
  isRunning = false
459
552
  $executionCount = $executionCount + 1
553
+ if (flowRecording.active) {
554
+ lastRecording = flowRecording.stop()
555
+ setActiveRecording(undefined)
556
+ // Fetch sub-job data and add to recording (they load after the root completes)
557
+ await recordSubJobs(completedJob)
558
+ // Trigger reactivity update for lastRecording
559
+ lastRecording = lastRecording
560
+ }
460
561
  onJobDone?.()
461
562
  }}
462
563
  bind:selectedJobStep
@@ -470,6 +571,10 @@ export function flowHasChanged() {
470
571
  <div class="italic text-primary h-full grow mx-auto flex flex-row items-center gap-2">
471
572
  <Loader2 class="animate-spin" /> <span> Loading history... </span>
472
573
  </div>
574
+ {:else}
575
+ <div class="italic text-tertiary h-full grow mx-auto flex flex-row items-center">
576
+ Flow status will display here
577
+ </div>
473
578
  {/if}
474
579
  </div>
475
580
  </div>
@@ -48,6 +48,7 @@ declare const FlowPreviewContent: $$__sveltets_2_IsomorphicComponent<Props, {
48
48
  [evt: string]: CustomEvent<any>;
49
49
  }, {}, {
50
50
  test: (conversationId?: string) => Promise<string | undefined>;
51
+ setRecordingMode: (on: boolean) => void;
51
52
  runPreview: (args: Record<string, any>, restartedFrom: RestartedFrom | undefined, conversationId?: string | undefined) => Promise<string | undefined>;
52
53
  refresh: () => void;
53
54
  cancelTest: () => Promise<void>;
@@ -3,18 +3,18 @@ import { setContext, untrack } from 'svelte';
3
3
  import { isOwner as loadIsOwner } from '../utils';
4
4
  import { userStore, workspaceStore } from '../stores';
5
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();
6
- let lastJobId = jobId;
6
+ let lastJobId = untrack(() => jobId);
7
7
  let retryStatus = $state({ val: {} });
8
8
  let globalRefreshes = $state({});
9
9
  setContext('FlowStatusViewer', {
10
10
  flowState,
11
11
  suspendStatus,
12
12
  retryStatus,
13
- hideDownloadInGraph,
14
- hideNodeDefinition,
15
- hideTimeline,
16
- hideJobId,
17
- hideDownloadLogs
13
+ hideDownloadInGraph: untrack(() => hideDownloadInGraph),
14
+ hideNodeDefinition: untrack(() => hideNodeDefinition),
15
+ hideTimeline: untrack(() => hideTimeline),
16
+ hideJobId: untrack(() => hideJobId),
17
+ hideDownloadLogs: untrack(() => hideDownloadLogs)
18
18
  });
19
19
  function loadOwner(path) {
20
20
  isOwner = loadIsOwner(path, $userStore, workspaceId ?? $workspaceStore);
@@ -34,11 +34,14 @@ import LogViewer from './LogViewer.svelte';
34
34
  import { SelectionManager } from './graph/selectionUtils.svelte';
35
35
  import { useThrottle } from 'runed';
36
36
  import { Splitpanes, Pane } from 'svelte-splitpanes';
37
+ import { getActiveReplay } from './recording/flowRecording.svelte';
37
38
  let { flowState: flowStateStore, retryStatus, suspendStatus, hideDownloadInGraph, hideTimeline, hideNodeDefinition, hideDownloadLogs } = getContext('FlowStatusViewer');
38
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();
39
40
  let getTopModuleStates = $derived(topModuleStates ?? localModuleStates);
41
+ // Cache replay check to avoid repeated function calls in the template
42
+ let isReplay = $derived(!!getActiveReplay());
40
43
  let resultStreams = $state({});
41
- if (onResultStreamUpdate == undefined) {
44
+ if (untrack(() => onResultStreamUpdate) == undefined) {
42
45
  onResultStreamUpdate = ({ jobId, result_stream }) => {
43
46
  resultStreams[jobId] = result_stream;
44
47
  };
@@ -63,12 +66,14 @@ $effect(() => {
63
66
  for (const asset of inputAssets) {
64
67
  if (asset.kind === 'resource' && !(asset.path in resourceMetadataCache)) {
65
68
  resourceMetadataCache[asset.path] = undefined;
66
- ResourceService.getResource({
67
- workspace: workspace ?? $workspaceStore,
68
- path: asset.path
69
- })
70
- .then((r) => (resourceMetadataCache[asset.path] = r))
71
- .catch((err) => { });
69
+ if (!isReplay) {
70
+ ResourceService.getResource({
71
+ workspace: workspace ?? $workspaceStore,
72
+ path: asset.path
73
+ })
74
+ .then((r) => (resourceMetadataCache[asset.path] = r))
75
+ .catch((err) => { });
76
+ }
72
77
  }
73
78
  }
74
79
  extendedFlowGraphAssetsCtx.val = clone(_flowGraphAssetsCtx?.val);
@@ -76,7 +81,7 @@ $effect(() => {
76
81
  }
77
82
  });
78
83
  });
79
- let jobResults = $state(flowJobIds?.flowJobs?.map((x, id) => `iter #${id + 1} not loaded by frontend yet`) ?? []);
84
+ let jobResults = $state(untrack(() => flowJobIds)?.flowJobs?.map((x, id) => `iter #${id + 1} not loaded by frontend yet`) ?? []);
80
85
  let retry_selected = $state('');
81
86
  let timeout = undefined;
82
87
  let expandedSubflows = $state({});
@@ -334,27 +339,29 @@ function updateInnerModules() {
334
339
  }
335
340
  else if (mod.type === 'WaitingForExecutor' &&
336
341
  localModuleStates[mod.id ?? '']?.scheduled_for == undefined) {
337
- JobService.getJob({
338
- workspace: workspaceId ?? $workspaceStore ?? '',
339
- id: mod.job ?? '',
340
- noLogs: true,
341
- noCode: true
342
- })
343
- .then((job) => {
344
- const newState = {
345
- type: mod.type,
346
- scheduled_for: job?.['scheduled_for'],
347
- job_id: job?.id,
348
- parent_module: mod['parent_module'],
349
- args: job?.args,
350
- tag: job?.tag,
351
- script_hash: job?.script_hash
352
- };
353
- setModuleState(mod.id ?? '', newState);
354
- })
355
- .catch((e) => {
356
- console.error(`Could not load inner module for job ${mod.job}`, e);
357
- });
342
+ if (!isReplay) {
343
+ JobService.getJob({
344
+ workspace: workspaceId ?? $workspaceStore ?? '',
345
+ id: mod.job ?? '',
346
+ noLogs: true,
347
+ noCode: true
348
+ })
349
+ .then((job) => {
350
+ const newState = {
351
+ type: mod.type,
352
+ scheduled_for: job?.['scheduled_for'],
353
+ job_id: job?.id,
354
+ parent_module: mod['parent_module'],
355
+ args: job?.args,
356
+ tag: job?.tag,
357
+ script_hash: job?.script_hash
358
+ };
359
+ setModuleState(mod.id ?? '', newState);
360
+ })
361
+ .catch((e) => {
362
+ console.error(`Could not load inner module for job ${mod.job}`, e);
363
+ });
364
+ }
358
365
  }
359
366
  else if ((mod.flow_jobs || mod.branch_chosen) &&
360
367
  (mod.type == 'Success' || mod.type == 'Failure') &&
@@ -410,46 +417,49 @@ function updateInnerModules() {
410
417
  .slice(0, 100);
411
418
  updateDurationStatuses(key, durationStatuses);
412
419
  if (missingStartedAtIds.length > 0) {
420
+ // Mark as pending to prevent duplicate fetches
413
421
  missingStartedAtIds.forEach((id) => {
414
422
  jobMissingStartedAt[id] = 'P';
415
423
  });
416
- JobService.getStartedAtByIds({
417
- workspace: workspaceId ?? $workspaceStore ?? '',
418
- requestBody: missingStartedAtIds
419
- })
420
- .then((jobs) => {
421
- let lastStarted = undefined;
422
- let anySet = false;
423
- let nDurationStatuses = localDurationStatuses[key]?.byJob;
424
- missingStartedAtIds.forEach((id, idx) => {
425
- const startedAt = jobs[idx];
426
- const time = startedAt ? new Date(startedAt).getTime() : undefined;
427
- if (time) {
428
- jobMissingStartedAt[id] = time;
429
- }
430
- else {
431
- delete jobMissingStartedAt[id];
432
- }
433
- if (nDurationStatuses && time) {
434
- if (!nDurationStatuses[id]?.duration_ms) {
435
- anySet = true;
436
- lastStarted = id;
437
- nDurationStatuses[id] = {
438
- created_at: time,
439
- started_at: time
440
- };
424
+ if (!isReplay) {
425
+ JobService.getStartedAtByIds({
426
+ workspace: workspaceId ?? $workspaceStore ?? '',
427
+ requestBody: missingStartedAtIds
428
+ })
429
+ .then((jobs) => {
430
+ let lastStarted = undefined;
431
+ let anySet = false;
432
+ let nDurationStatuses = localDurationStatuses[key]?.byJob;
433
+ missingStartedAtIds.forEach((id, idx) => {
434
+ const startedAt = jobs[idx];
435
+ const time = startedAt ? new Date(startedAt).getTime() : undefined;
436
+ if (time) {
437
+ jobMissingStartedAt[id] = time;
438
+ }
439
+ else {
440
+ delete jobMissingStartedAt[id];
441
441
  }
442
+ if (nDurationStatuses && time) {
443
+ if (!nDurationStatuses[id]?.duration_ms) {
444
+ anySet = true;
445
+ lastStarted = id;
446
+ nDurationStatuses[id] = {
447
+ created_at: time,
448
+ started_at: time
449
+ };
450
+ }
451
+ }
452
+ });
453
+ if (anySet) {
454
+ updateDurationStatuses(key, nDurationStatuses);
455
+ if (lastStarted)
456
+ setSelectedLoopSwitch(lastStarted, mod);
442
457
  }
458
+ })
459
+ .catch((e) => {
460
+ console.error(`Could not load inner module duration status for job ${mod.job}`, e);
443
461
  });
444
- if (anySet) {
445
- updateDurationStatuses(key, nDurationStatuses);
446
- if (lastStarted)
447
- setSelectedLoopSwitch(lastStarted, mod);
448
- }
449
- })
450
- .catch((e) => {
451
- console.error(`Could not load inner module duration status for job ${mod.job}`, e);
452
- });
462
+ }
453
463
  }
454
464
  else {
455
465
  setIteration(0, mod.flow_jobs?.[0] ?? '', false, mod.id ?? '', true);
@@ -576,7 +586,7 @@ async function loadJobInProgress() {
576
586
  }
577
587
  }
578
588
  let destroyed = false;
579
- updateRecursiveRefresh(jobId);
589
+ updateRecursiveRefresh(untrack(() => jobId));
580
590
  async function updateJobId() {
581
591
  if (jobId !== job?.id || innerModules == undefined) {
582
592
  localModuleStates = {};
@@ -969,8 +979,8 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
969
979
  {#if render}
970
980
  <div class="w-full border rounded-sm bg-surface p-1 overflow-auto max-h-[90vh]">
971
981
  <DisplayResult
972
- workspaceId={job?.workspace_id}
973
- {jobId}
982
+ workspaceId={isReplay ? undefined : job?.workspace_id}
983
+ jobId={isReplay ? undefined : jobId}
974
984
  result_stream={job?.result_stream}
975
985
  result={jobResults}
976
986
  language={job?.language}
@@ -993,9 +1003,9 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
993
1003
  <div class="flex-1 min-h-0 overflow-auto rounded-md border bg-surface-tertiary p-4">
994
1004
  {#if job !== undefined && (job.result_stream || (job.type == 'CompletedJob' && 'result' in job && job.result !== undefined))}
995
1005
  <DisplayResult
996
- workspaceId={job?.workspace_id}
1006
+ workspaceId={isReplay ? undefined : job?.workspace_id}
997
1007
  result_stream={job.result_stream}
998
- jobId={job?.id}
1008
+ jobId={isReplay ? undefined : job?.id}
999
1009
  result={'result' in job ? job.result : undefined}
1000
1010
  language={job?.language}
1001
1011
  isTest={false}
@@ -1019,7 +1029,8 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1019
1029
  <h3 class="shrink-0 text-xs font-semibold text-emphasis mb-1">Logs</h3>
1020
1030
  <div class="flex-1 min-h-0 overflow-auto rounded-md border bg-surface-tertiary">
1021
1031
  <LogViewer
1022
- jobId={job.id}
1032
+ jobId={isReplay ? undefined : job.id}
1033
+ download={!isReplay}
1023
1034
  duration={job?.['duration_ms']}
1024
1035
  mem={job?.['mem_peak']}
1025
1036
  isLoading={job?.['running'] == false}
@@ -1035,9 +1046,9 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1035
1046
  <div class="flex-1 overflow-auto rounded-md border bg-surface-tertiary p-4 max-h-screen">
1036
1047
  {#if job !== undefined && (job.result_stream || (job.type == 'CompletedJob' && 'result' in job && job.result !== undefined))}
1037
1048
  <DisplayResult
1038
- workspaceId={job?.workspace_id}
1049
+ workspaceId={isReplay ? undefined : job?.workspace_id}
1039
1050
  result_stream={job.result_stream}
1040
- jobId={job?.id}
1051
+ jobId={isReplay ? undefined : job?.id}
1041
1052
  result={'result' in job ? job.result : undefined}
1042
1053
  language={job?.language}
1043
1054
  isTest={false}
@@ -1101,7 +1112,7 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1101
1112
  btnClasses="w-full flex justify-start"
1102
1113
  on:click={async () => {
1103
1114
  let storedJob = storedListJobs[j]
1104
- if (!storedJob) {
1115
+ if (!storedJob && !isReplay) {
1105
1116
  storedJob = await JobService.getJob({
1106
1117
  workspace: workspaceId ?? $workspaceStore ?? '',
1107
1118
  id: loopJobId,
@@ -1110,7 +1121,9 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1110
1121
  })
1111
1122
  storedListJobs[j] = storedJob
1112
1123
  }
1113
- innerJobLoaded(storedJob, j, true, false)
1124
+ if (storedJob) {
1125
+ innerJobLoaded(storedJob, j, true, false)
1126
+ }
1114
1127
  }}
1115
1128
  endIcon={{
1116
1129
  icon: ChevronDown,
@@ -1603,21 +1616,21 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1603
1616
  {#if selectedNode == 'end'}
1604
1617
  <FlowJobResult
1605
1618
  tagLabel={customUi?.tagLabel}
1606
- workspaceId={job?.workspace_id}
1607
- jobId={job?.id}
1619
+ workspaceId={isReplay ? undefined : job?.workspace_id}
1620
+ jobId={isReplay ? undefined : job?.id}
1608
1621
  filename={job.id}
1609
1622
  loading={job['running']}
1610
1623
  tag={job?.tag}
1611
1624
  col
1612
1625
  result={job['result']}
1613
1626
  logs={job.logs ?? ''}
1614
- downloadLogs={!hideDownloadLogs}
1627
+ downloadLogs={!hideDownloadLogs && !isReplay}
1615
1628
  />
1616
1629
  {:else if selectedNode == 'start'}
1617
1630
  {#if job.args}
1618
1631
  <JobArgs
1619
- id={job.id}
1620
- workspace={job.workspace_id ?? $workspaceStore ?? 'no_w'}
1632
+ id={isReplay ? undefined : job.id}
1633
+ workspace={isReplay ? undefined : (job.workspace_id ?? $workspaceStore ?? 'no_w')}
1621
1634
  args={job.args}
1622
1635
  />
1623
1636
  {:else}
@@ -1638,10 +1651,10 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1638
1651
  >
1639
1652
  <div class="overflow-auto max-h-[200px] p-2">
1640
1653
  <DisplayResult
1641
- workspaceId={job?.workspace_id}
1654
+ workspaceId={isReplay ? undefined : job?.workspace_id}
1642
1655
  result={node.flow_jobs_results}
1643
1656
  nodeId={selectedNode}
1644
- jobId={job?.id}
1657
+ jobId={isReplay ? undefined : job?.id}
1645
1658
  language={job?.language}
1646
1659
  />
1647
1660
  </div>
@@ -1667,7 +1680,7 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1667
1680
  {msToSec(node.duration_ms)} s
1668
1681
  </Badge>
1669
1682
  {/if}
1670
- {#if node.job_id}
1683
+ {#if node.job_id && !isReplay}
1671
1684
  <div class="grow w-full flex flex-row-reverse">
1672
1685
  <a
1673
1686
  class="text-right text-xs"
@@ -1686,8 +1699,8 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1686
1699
  <div>
1687
1700
  <div class="text-xs text-emphasis font-semibold mb-1">Inputs</div>
1688
1701
  <JobArgs
1689
- id={node.job_id}
1690
- workspace={job.workspace_id ?? $workspaceStore ?? 'no_w'}
1702
+ id={isReplay ? undefined : node.job_id}
1703
+ workspace={isReplay ? undefined : (job.workspace_id ?? $workspaceStore ?? 'no_w')}
1691
1704
  args={node.args}
1692
1705
  />
1693
1706
  </div>
@@ -1695,8 +1708,8 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1695
1708
  </div>
1696
1709
  <FlowJobResult
1697
1710
  tagLabel={customUi?.tagLabel}
1698
- workspaceId={job?.workspace_id}
1699
- jobId={node.job_id}
1711
+ workspaceId={isReplay ? undefined : job?.workspace_id}
1712
+ jobId={isReplay ? undefined : node.job_id}
1700
1713
  loading={node.type != 'Success' && node.type != 'Failure'}
1701
1714
  waitingForExecutor={node.type == 'WaitingForExecutor'}
1702
1715
  refreshLog={node.type == 'InProgress'}
@@ -1705,7 +1718,7 @@ let totalEventsWaiting = $derived(Object.values(suspendStatus?.val ?? {}).reduce
1705
1718
  result={node.result}
1706
1719
  tag={node.tag}
1707
1720
  logs={node.logs}
1708
- downloadLogs={!hideDownloadLogs}
1721
+ downloadLogs={!hideDownloadLogs && !isReplay}
1709
1722
  aiAgentStatus={agentTools &&
1710
1723
  node?.job_id &&
1711
1724
  (node.type === 'Success' || node.type === 'Failure')
@@ -1,4 +1,5 @@
1
- <script lang="ts">import { FlowService } from '../gen';
1
+ <script lang="ts">import { untrack } from 'svelte';
2
+ import { FlowService } from '../gen';
2
3
  import { Tab, Tabs, TabContent } from './common';
3
4
  import SchemaViewer from './SchemaViewer.svelte';
4
5
  import FlowGraphViewer from './FlowGraphViewer.svelte';
@@ -11,12 +12,13 @@ import FlowViewerInner from './FlowViewerInner.svelte';
11
12
  import FlowInputViewer from './FlowInputViewer.svelte';
12
13
  let { flow, initialOpen = undefined, noSide = false, noGraph = false, availableVersions = undefined, initTab = undefined, noSummary = false, noGraphDownload = false, selectedVersionId = undefined } = $props();
13
14
  let open = {};
14
- if (initialOpen) {
15
- open[initialOpen] = true;
15
+ const untrackedInitialOpen = untrack(() => initialOpen);
16
+ if (untrackedInitialOpen) {
17
+ open[untrackedInitialOpen] = true;
16
18
  }
17
19
  let previousVersionId = $state(undefined);
18
20
  let previousFlow = $state(undefined);
19
- let tab = $state(initTab ?? 'diff');
21
+ let tab = $state(untrack(() => initTab) ?? 'diff');
20
22
  let previousFlowCache = {};
21
23
  async function loadPreviousFlow(version) {
22
24
  try {
@@ -1,10 +1,11 @@
1
- <script lang="ts">import AiChatLayout from './copilot/chat/AiChatLayout.svelte';
1
+ <script lang="ts">import { untrack } from 'svelte';
2
+ import AiChatLayout from './copilot/chat/AiChatLayout.svelte';
2
3
  import FlowBuilder from './FlowBuilder.svelte';
3
4
  let { flowStore: oldFlowStore, flowStateStore: oldFlowStateStore, disableAi, light, ...props } = $props();
4
- let flowStore = $state(oldFlowStore);
5
- let flowStateStore = $state(oldFlowStateStore);
5
+ let flowStore = $state(untrack(() => oldFlowStore));
6
+ let flowStateStore = $state(untrack(() => oldFlowStateStore));
6
7
  let trialRender = $state(true);
7
- if (light) {
8
+ if (untrack(() => light)) {
8
9
  setTimeout(() => {
9
10
  trialRender = false;
10
11
  }, 1000 * 300);