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
@@ -0,0 +1,138 @@
1
+ <script lang="ts">import { untrack } from 'svelte';
2
+ import { useSvelteFlow } from '@xyflow/svelte';
3
+ import { getSubflowNodeIds } from './moveManager.svelte';
4
+ import { NODE } from './util';
5
+ import MiniFlowGraph from './MiniFlowGraph.svelte';
6
+ import { Move } from 'lucide-svelte';
7
+ let { moveManager, nodes, edges } = $props();
8
+ const { getViewport } = useSvelteFlow();
9
+ const PADDING = 10;
10
+ /** Approximate position of the drag handle (move button) on the node,
11
+ * used to offset the ghost so the dragged node aligns with the cursor.
12
+ * The handle is at the top-right of the 275px-wide node (right-4 = 16px inset). */
13
+ const DRAG_HANDLE_OFFSET = { x: -90, y: 10 };
14
+ /** Offset so the cursor indicator icon doesn't overlap the cursor tip */
15
+ const CURSOR_INDICATOR_OFFSET = 8;
16
+ function getSubflowNodesAndEdges(moduleId, allNodes, allEdges) {
17
+ const nodeIds = getSubflowNodeIds(moduleId, allNodes, allEdges);
18
+ const sfNodes = allNodes.filter((n) => nodeIds.has(n.id));
19
+ const sfEdges = allEdges.filter((e) => nodeIds.has(e.source) && nodeIds.has(e.target));
20
+ return { sfNodes, sfEdges };
21
+ }
22
+ /** Resolve a node's position to absolute flow coordinates.
23
+ * xyflow child nodes (with parentId) have positions relative to their parent. */
24
+ function absolutePosition(n, allNodes, depth = 0) {
25
+ if (n.parentId && depth < 20) {
26
+ const parent = allNodes.find((p) => p.id === n.parentId);
27
+ if (parent) {
28
+ const parentAbs = absolutePosition(parent, allNodes, depth + 1);
29
+ return { x: parentAbs.x + n.position.x, y: parentAbs.y + n.position.y };
30
+ }
31
+ }
32
+ return { x: n.position.x, y: n.position.y };
33
+ }
34
+ function computeGhost(moduleId, draggedNodeIds, allNodes, allEdges) {
35
+ // Use pre-computed draggedNodeIds when available (covers multi-select),
36
+ // otherwise fall back to single-module subflow computation.
37
+ let sfNodes;
38
+ let sfEdges;
39
+ if (draggedNodeIds.size > 0) {
40
+ sfNodes = allNodes.filter((n) => draggedNodeIds.has(n.id));
41
+ sfEdges = allEdges.filter((e) => draggedNodeIds.has(e.source) && draggedNodeIds.has(e.target));
42
+ }
43
+ else {
44
+ const result = getSubflowNodesAndEdges(moduleId, allNodes, allEdges);
45
+ sfNodes = result.sfNodes;
46
+ sfEdges = result.sfEdges;
47
+ }
48
+ if (sfNodes.length === 0)
49
+ return undefined;
50
+ // Compute bounding box using absolute positions
51
+ let minX = Infinity, minY = Infinity, maxX = -Infinity, maxY = -Infinity;
52
+ for (const n of sfNodes) {
53
+ const abs = absolutePosition(n, allNodes);
54
+ const x = abs.x;
55
+ const y = abs.y;
56
+ const w = n.measured?.width ?? NODE.width;
57
+ const h = n.measured?.height ?? NODE.height;
58
+ minX = Math.min(minX, x);
59
+ minY = Math.min(minY, y);
60
+ maxX = Math.max(maxX, x + w);
61
+ maxY = Math.max(maxY, y + h);
62
+ }
63
+ const bbWidth = maxX - minX + PADDING * 2;
64
+ const bbHeight = maxY - minY + PADDING * 2;
65
+ const scale = getViewport().zoom;
66
+ const containerWidth = Math.round(bbWidth * scale);
67
+ const containerHeight = Math.round(bbHeight * scale);
68
+ // Compute the offset so the dragged node's center aligns with the cursor
69
+ const mainNode = sfNodes.find((n) => n.id === moduleId);
70
+ let offsetX = containerWidth / 2;
71
+ let offsetY = containerHeight / 2;
72
+ if (mainNode) {
73
+ const mainAbs = absolutePosition(mainNode, allNodes);
74
+ const mx = mainAbs.x - minX + PADDING;
75
+ const my = mainAbs.y - minY + PADDING;
76
+ const mw = mainNode.measured?.width ?? NODE.width;
77
+ const mh = mainNode.measured?.height ?? NODE.height;
78
+ offsetX = (mx + mw / 2) * scale;
79
+ offsetY = (my + mh / 2) * scale;
80
+ }
81
+ // Clone nodes/edges with interactive features disabled
82
+ const ghostNodes = sfNodes.map((n) => ({
83
+ ...n,
84
+ data: { ...n.data, insertable: false, editMode: false }
85
+ }));
86
+ const ghostEdges = sfEdges.map((e) => ({
87
+ ...e,
88
+ data: { ...e.data, insertable: false, editMode: false }
89
+ }));
90
+ // Viewport so the ghost renders at the same zoom as the main flow
91
+ const initialViewport = {
92
+ x: (PADDING - minX) * scale,
93
+ y: (PADDING - minY) * scale,
94
+ zoom: scale
95
+ };
96
+ return { containerWidth, containerHeight, ghostNodes, ghostEdges, offsetX, offsetY, initialViewport };
97
+ }
98
+ let isNearDrop = $derived(moveManager.nearestDropZone != null);
99
+ let ghost = $derived.by(() => {
100
+ const moduleId = moveManager.dragging?.moduleId;
101
+ if (!moduleId)
102
+ return undefined;
103
+ return untrack(() => computeGhost(moduleId, moveManager.draggedNodeIds, nodes, edges));
104
+ });
105
+ </script>
106
+
107
+ {#if moveManager.dragging}
108
+ <div
109
+ class="fixed pointer-events-none z-[10001] flex items-center justify-center w-5 h-5 rounded-full shadow border border-border transition-colors duration-150 {isNearDrop
110
+ ? 'bg-surface-accent-primary text-white'
111
+ : 'bg-surface text-secondary'}"
112
+ style="left: {moveManager.ghostScreenX + CURSOR_INDICATOR_OFFSET}px; top: {moveManager.ghostScreenY + CURSOR_INDICATOR_OFFSET}px;"
113
+ >
114
+ <Move size={12} />
115
+ </div>
116
+ {#if ghost}
117
+ <div
118
+ class="fixed pointer-events-none z-[10000]"
119
+ style="left: {moveManager.ghostScreenX +
120
+ DRAG_HANDLE_OFFSET.x}px; top: {moveManager.ghostScreenY +
121
+ DRAG_HANDLE_OFFSET.y}px; transform: translate({-ghost.offsetX}px, {-ghost.offsetY}px);"
122
+ >
123
+ <div
124
+ style="opacity: {isNearDrop
125
+ ? 0.8
126
+ : 0.25}; width: {ghost.containerWidth}px; height: {ghost.containerHeight}px; transition: opacity 150ms ease;"
127
+ >
128
+ <MiniFlowGraph
129
+ nodes={ghost.ghostNodes}
130
+ edges={ghost.ghostEdges}
131
+ width={ghost.containerWidth}
132
+ height={ghost.containerHeight}
133
+ initialViewport={ghost.initialViewport}
134
+ />
135
+ </div>
136
+ </div>
137
+ {/if}
138
+ {/if}
@@ -0,0 +1,10 @@
1
+ import { type Node, type Edge } from '@xyflow/svelte';
2
+ import { type MoveManager } from './moveManager.svelte';
3
+ type $$ComponentProps = {
4
+ moveManager: MoveManager;
5
+ nodes: Node[];
6
+ edges: Edge[];
7
+ };
8
+ declare const DragGhost: import("svelte").Component<$$ComponentProps, {}, "">;
9
+ type DragGhost = ReturnType<typeof DragGhost>;
10
+ export default DragGhost;
@@ -5,7 +5,7 @@ import { createFlowDiffManager } from '../flows/flowDiffManager.svelte';
5
5
  import { get, writable } from 'svelte/store';
6
6
  import '@xyflow/svelte/dist/base.css';
7
7
  import { SvelteFlow, ConnectionLineType, Controls, ControlButton, SvelteFlowProvider, SelectionMode } from '@xyflow/svelte';
8
- import { graphBuilder, isTriggerStep, topologicalSort } from './graphBuilder.svelte';
8
+ import { graphBuilder, isTriggerStep } from './graphBuilder.svelte';
9
9
  import ModuleNode from './renderers/nodes/ModuleNode.svelte';
10
10
  import InputNode from './renderers/nodes/InputNode.svelte';
11
11
  import BranchAllStart from './renderers/nodes/BranchAllStart.svelte';
@@ -15,7 +15,6 @@ import ForLoopStartNode from './renderers/nodes/ForLoopStartNode.svelte';
15
15
  import ResultNode from './renderers/nodes/ResultNode.svelte';
16
16
  import BaseEdge from './renderers/edges/BaseEdge.svelte';
17
17
  import EmptyEdge from './renderers/edges/EmptyEdge.svelte';
18
- import { sugiyama, dagStratify, coordCenter, decrossTwoLayer, decrossOpt } from 'd3-dag';
19
18
  import { Expand, MousePointer, Hand } from 'lucide-svelte';
20
19
  import Toggle from '../Toggle.svelte';
21
20
  import DataflowEdge from './renderers/edges/DataflowEdge.svelte';
@@ -45,11 +44,14 @@ import PaneContextMenu from './PaneContextMenu.svelte';
45
44
  import { SelectionManager } from './selectionUtils.svelte';
46
45
  import { ChangeTracker } from '../../svelte5Utils.svelte';
47
46
  import { NoteManager } from './noteManager.svelte';
47
+ import DragCoordinator from './DragCoordinator.svelte';
48
+ import { compoundLayout } from './compoundLayout';
48
49
  import { deepEqual } from 'fast-equals';
49
50
  import { setGraphContext } from './graphContext';
50
51
  import { computeNoteNodes } from './noteUtils.svelte';
51
52
  import { Tooltip } from '../meltComponents';
52
53
  import { getNoteEditorContext } from './noteEditor.svelte';
54
+ import { resolveSelectedModuleIds, locateModules, areContiguousSiblings } from '../flows/multiSelectUtils';
53
55
  let useDataflow = writable(false);
54
56
  let showAssets = writable(true);
55
57
  let showNotes = $state(true);
@@ -59,7 +61,7 @@ const diffManager = createFlowDiffManager();
59
61
  let fullWidth = 0;
60
62
  let width = $state(0);
61
63
  let simplifiableFlow = $state(undefined);
62
- let { onInsert = undefined, onDelete = undefined, onMove = undefined, onDeleteBranch = undefined, onNewBranch = undefined, onSelect = undefined, onChangeId = undefined, onUpdateMock = undefined, onSelectedIteration = undefined, success = undefined, modules = [], failureModule = undefined, preprocessorModule = undefined, minHeight = 0, maxHeight = undefined, notSelectable = false, flowModuleStates = undefined, testModuleStates = undefined, moduleActions = undefined, selectionManager: selectionManagerProp = undefined, path = undefined, newFlow = false, insertable = false, earlyStop = false, cache = false, scroll = false, moving = undefined, download = false, fullSize = false, disableAi = false, triggerNode = false, workspace = $workspaceStore ?? 'NO_WORKSPACE', editMode = false, allowSimplifiedPoll = true, expandedSubflows = $bindable({}), onTestUpTo = undefined, onEditInput = undefined, isOwner = false, onTestFlow = undefined, isRunning = false, onCancelTestFlow = undefined, onOpenPreview = undefined, onHideJobStatus = undefined, individualStepTests = false, flowJob = undefined, showJobStatus = false, suspendStatus = {}, flowHasChanged = false, noteMode = false, notes = undefined, exitNoteMode = undefined, onNotePositionUpdate = undefined, chatInputEnabled = false, sharedViewport = undefined, onViewportChange = undefined, leftHeader = undefined, diffBeforeFlow = undefined, currentInputSchema = undefined, markRemovedAsShadowed = false, multiSelectEnabled = false } = $props();
64
+ let { onInsert = undefined, onDelete = undefined, onMove = undefined, onDuplicate = undefined, onDeleteBranch = undefined, onNewBranch = undefined, onSelect = undefined, onChangeId = undefined, onUpdateMock = undefined, onSelectedIteration = undefined, success = undefined, modules = [], failureModule = undefined, preprocessorModule = undefined, minHeight = 0, maxHeight = undefined, notSelectable = false, flowModuleStates = undefined, testModuleStates = undefined, moduleActions = undefined, selectionManager: selectionManagerProp = undefined, path = undefined, newFlow = false, insertable = false, earlyStop = false, cache = false, scroll = false, moveManager = undefined, download = false, fullSize = false, disableAi = false, triggerNode = false, workspace = $workspaceStore ?? 'NO_WORKSPACE', editMode = false, allowSimplifiedPoll = true, expandedSubflows = $bindable({}), onTestUpTo = undefined, onEditInput = undefined, isOwner = false, onTestFlow = undefined, isRunning = false, onCancelTestFlow = undefined, onOpenPreview = undefined, onHideJobStatus = undefined, individualStepTests = false, flowJob = undefined, showJobStatus = false, suspendStatus = {}, flowHasChanged = false, noteMode = false, notes = undefined, exitNoteMode = undefined, onNotePositionUpdate = undefined, chatInputEnabled = false, sharedViewport = undefined, onViewportChange = undefined, leftHeader = undefined, diffBeforeFlow = undefined, currentInputSchema = undefined, markRemovedAsShadowed = false, multiSelectEnabled = false, onDeleteMultiple = undefined, onDuplicateMultiple = undefined, onMoveMultiple = undefined, movingIds = undefined } = $props();
63
65
  // Initialize note manager with fine-grained reactivity
64
66
  const noteManager = new NoteManager(() => notes ?? [], (newNodes) => {
65
67
  nodes = newNodes;
@@ -70,7 +72,7 @@ let noteTextHeights = $state({});
70
72
  let paneContextMenu = $state(undefined);
71
73
  let flowContainer = $state(undefined);
72
74
  // Selection manager - create one if not provided
73
- let selectionManager = selectionManagerProp || new SelectionManager();
75
+ let selectionManager = untrack(() => selectionManagerProp) || new SelectionManager();
74
76
  const selectedId = $derived(selectionManager.getSelectedId());
75
77
  const noteEditorContext = getNoteEditorContext();
76
78
  // Function to calculate extra gap needed for notes below the lowest flow nodes
@@ -87,19 +89,20 @@ function calculateNoteGap(notes) {
87
89
  return maxNoteBelowGap;
88
90
  }
89
91
  // Calculate note gap based on current nodes and notes
90
- const topPadding = editMode ? 100 : 24;
91
- const yOffset = calculateNoteGap(notes) + topPadding;
92
+ const topPadding = untrack(() => editMode) ? 100 : 24;
93
+ const yOffset = calculateNoteGap(untrack(() => notes)) + topPadding;
92
94
  setGraphContext({
93
95
  selectionManager: selectionManager,
94
96
  useDataflow,
95
97
  showAssets,
96
98
  noteManager,
99
+ moveManager: untrack(() => moveManager),
97
100
  clearFlowSelection,
98
101
  yOffset,
99
102
  diffManager
100
103
  });
101
- if (triggerContext && allowSimplifiedPoll) {
102
- if (isSimplifiable(modules)) {
104
+ if (triggerContext && untrack(() => allowSimplifiedPoll)) {
105
+ if (isSimplifiable(untrack(() => modules))) {
103
106
  triggerContext?.simplifiedPoll?.set(true);
104
107
  }
105
108
  triggerContext?.simplifiedPoll.subscribe((value) => {
@@ -134,56 +137,20 @@ function layoutNodes(nodes) {
134
137
  }
135
138
  seenId.push(n.id);
136
139
  }
137
- let nodeWidths = {};
138
- const nodes2 = nodes.map((n) => {
139
- return { ...n, position: { x: 0, y: 0 } };
140
+ // Run recursive compound layout
141
+ const { positions, bbox } = compoundLayout(nodes, {
142
+ nodeWidth: NODE.width,
143
+ nodeHeight: NODE.height,
144
+ gapH: NODE.gap.horizontal,
145
+ gapV: NODE.gap.vertical
140
146
  });
141
- for (const n of topologicalSort(nodes)) {
142
- const endId = n.id + '-end';
143
- if (nodeWidths[endId] != undefined) {
144
- nodeWidths[n.id] = Math.max(nodeWidths[n.id] ?? 0, nodeWidths[endId]);
145
- }
146
- if (n.parentIds && n.parentIds?.length == 1) {
147
- const parent = n.parentIds[0];
148
- const nodeWidth = nodeWidths[n.id] ?? 1;
149
- nodeWidths[parent] = (nodeWidths[parent] ?? 0) + nodeWidth;
150
- }
151
- }
152
- const dag = dagStratify().id(({ id }) => id)(nodes2);
153
- let boxSize;
154
- try {
155
- const layout = sugiyama()
156
- .decross(nodes.length > 20 ? decrossTwoLayer() : decrossOpt())
157
- .coord(coordCenter())
158
- .nodeSize((d) => {
159
- return [
160
- (nodeWidths[d?.data?.['id'] ?? ''] ?? 1) * (NODE.width + NODE.gap.horizontal * 1),
161
- NODE.height + NODE.gap.vertical
162
- ];
163
- });
164
- boxSize = layout(dag);
165
- }
166
- catch {
167
- const layout = sugiyama()
168
- .decross(decrossTwoLayer())
169
- .coord(coordCenter())
170
- .nodeSize(() => [NODE.width + NODE.gap.horizontal, NODE.height + NODE.gap.vertical]);
171
- boxSize = layout(dag);
172
- }
173
- const newNodes = dag.descendants().map((des) => ({
174
- id: des.data.id,
147
+ // Center horizontally
148
+ const xCenter = (fullSize ? fullWidth : width) / 2 - bbox.width / 2 - (width - fullWidth) / 2;
149
+ const newNodes = nodes.map((n) => ({
150
+ id: n.id,
175
151
  position: {
176
- x: des.x
177
- ? // @ts-ignore
178
- (des.data.offset ?? 0) +
179
- // @ts-ignore
180
- des.x +
181
- (fullSize ? fullWidth : width) / 2 -
182
- boxSize.width / 2 -
183
- NODE.width / 2 -
184
- (width - fullWidth) / 2
185
- : 0,
186
- y: des.y || 0
152
+ x: (positions.get(n.id)?.x ?? 0) + xCenter - NODE.width / 2,
153
+ y: positions.get(n.id)?.y ?? 0
187
154
  }
188
155
  }));
189
156
  lastNodes = [nodes, newNodes];
@@ -218,6 +185,9 @@ let eventHandler = {
218
185
  move: (detail) => {
219
186
  onMove?.(detail.id);
220
187
  },
188
+ duplicate: (detail) => {
189
+ onDuplicate?.(detail.id);
190
+ },
221
191
  selectedIteration: (detail) => {
222
192
  onSelectedIteration?.(detail);
223
193
  },
@@ -288,6 +258,10 @@ let effectiveModules = $derived(diffManager.mergedFlow?.modules ?? modules);
288
258
  let effectiveFailureModule = $derived(diffManager.mergedFlow?.failure_module ?? failureModule);
289
259
  let effectivePreprocessorModule = $derived(diffManager.mergedFlow?.preprocessor_module ?? preprocessorModule);
290
260
  let canUseDiffDrawer = $derived(diffBeforeFlow || moduleActions || editMode);
261
+ // Derived state for multi-select operations
262
+ let resolvedModuleIds = $derived(resolveSelectedModuleIds(selectionManager.selectedIds, effectiveModules ?? []));
263
+ let canMoveSelected = $derived(resolvedModuleIds.length > 0 &&
264
+ areContiguousSiblings(locateModules(resolvedModuleIds, effectiveModules ?? [])));
291
265
  // Initialize moduleTracker with effectiveModules
292
266
  let moduleTracker = $state(new ChangeTracker([]));
293
267
  let nodes = $state.raw([]);
@@ -338,6 +312,31 @@ function handleKeyDown(event) {
338
312
  exitNoteMode?.();
339
313
  }
340
314
  }
315
+ if ((event.key === 'Backspace' || event.key === 'Delete') && editMode) {
316
+ const active = document.activeElement;
317
+ if (active && active !== document.body && !flowContainer?.contains(active)) {
318
+ return;
319
+ }
320
+ if (active instanceof HTMLInputElement ||
321
+ active instanceof HTMLTextAreaElement ||
322
+ active?.getAttribute('contenteditable') === 'true') {
323
+ return;
324
+ }
325
+ if (noteManager.selectedNoteId && noteEditorContext) {
326
+ noteEditorContext.noteEditor.deleteNote(noteManager.selectedNoteId);
327
+ noteManager.clearNoteSelection();
328
+ return;
329
+ }
330
+ if (resolvedModuleIds.length > 1) {
331
+ onDeleteMultiple?.(resolvedModuleIds);
332
+ }
333
+ else if (resolvedModuleIds.length === 1) {
334
+ onDelete?.(resolvedModuleIds[0]);
335
+ }
336
+ else if (selectedId) {
337
+ onDelete?.(selectedId);
338
+ }
339
+ }
341
340
  }
342
341
  async function updateStores() {
343
342
  if (graph.error) {
@@ -347,7 +346,6 @@ async function updateStores() {
347
346
  let layoutedNodes = layoutNodes(Object.values(graph.nodes).map((n) => ({
348
347
  id: n.id,
349
348
  parentIds: n.parentIds,
350
- offset: n.data.offset ?? 0,
351
349
  data: { assets: n.data.assets }
352
350
  })));
353
351
  let newNodes = layoutedNodes.map((n) => ({ ...n, ...graph.nodes[n.id] }));
@@ -380,7 +378,6 @@ async function updateStores() {
380
378
  id: n.id,
381
379
  position: n.position,
382
380
  parentIds: n.parentIds,
383
- offset: n.data?.offset ?? 0,
384
381
  data: { assets: n.data?.assets },
385
382
  type: n.type
386
383
  })), notes ?? [], noteTextHeights, (noteId, height) => {
@@ -488,7 +485,7 @@ let graph = $derived.by(() => {
488
485
  flowHasChanged,
489
486
  chatInputEnabled,
490
487
  additionalAssetsMap: flowGraphAssetsCtx?.val.additionalAssetsMap
491
- }, untrack(() => effectiveFailureModule), effectivePreprocessorModule, eventHandler, success, $useDataflow, untrack(() => selectedId), moving, simplifiableFlow, triggerNode ? path : undefined, expandedSubflows);
488
+ }, untrack(() => effectiveFailureModule), effectivePreprocessorModule, eventHandler, success, $useDataflow, untrack(() => selectedId), simplifiableFlow, triggerNode ? path : undefined, expandedSubflows);
492
489
  });
493
490
  let hideAssetsToggle = $derived($showAssets && Object.values(nodes).every((n) => n.type !== 'asset'));
494
491
  let hideNotesToggle = $derived(!notes || notes.length === 0);
@@ -621,6 +618,14 @@ const modifierKey = isMac() ? 'Meta' : 'Control';
621
618
  {:else}
622
619
  <SvelteFlowProvider>
623
620
  <ViewportResizer {height} {width} {nodes} bind:this={viewportResizer} />
621
+ {#if moveManager}
622
+ <DragCoordinator
623
+ {moveManager}
624
+ eventHandlers={eventHandler}
625
+ {edges}
626
+ nodes={nodesWithOffset}
627
+ />
628
+ {/if}
624
629
  {#if sharedViewport && onViewportChange}
625
630
  <ViewportSynchronizer
626
631
  {sharedViewport}
@@ -671,6 +676,7 @@ const modifierKey = isMac() ? 'Meta' : 'Control';
671
676
  elevateNodesOnSelect={false}
672
677
  {proOptions}
673
678
  multiSelectionKey={'Shift'}
679
+ deleteKey={null}
674
680
  nodesDraggable={false}
675
681
  --background-color={false}
676
682
  >
@@ -682,8 +688,17 @@ const modifierKey = isMac() ? 'Meta' : 'Control';
682
688
 
683
689
  {#if multiSelectEnabled}
684
690
  <SelectionBoundingBox
685
- selectedNodes={selectionManager.selectedIds}
691
+ selectedNodes={selectionManager.selectedIds.filter((id) =>
692
+ nodesWithOffset.some((n) => n.id === id)
693
+ )}
686
694
  allNodes={nodesWithOffset as (Node & { type: string })[]}
695
+ onDeleteSelected={() => onDeleteMultiple?.(resolvedModuleIds)}
696
+ onDuplicateSelected={() => onDuplicateMultiple?.(resolvedModuleIds)}
697
+ onMoveSelected={() => onMoveMultiple?.(resolvedModuleIds)}
698
+ onCancelMove={() => onMoveMultiple?.(movingIds ?? [])}
699
+ {canMoveSelected}
700
+ isMoving={movingIds != null && movingIds.length > 0}
701
+ {resolvedModuleIds}
687
702
  />
688
703
  {/if}
689
704
 
@@ -695,7 +710,12 @@ const modifierKey = isMac() ? 'Meta' : 'Control';
695
710
  {@render leftHeader()}
696
711
  </div>
697
712
  {:else}
698
- <Controls position="top-right" orientation="horizontal" showLock={false}>
713
+ <Controls
714
+ position="top-right"
715
+ orientation="horizontal"
716
+ showLock={false}
717
+ fitViewOptions={{ nodes: nodes.filter((n) => n.type !== 'note') }}
718
+ >
699
719
  {#if multiSelectEnabled}
700
720
  <div class="flex items-center gap-2">
701
721
  <Tooltip>
@@ -799,4 +819,8 @@ const modifierKey = isMac() ? 'Meta' : 'Control';
799
819
  :global(.svelte-flow__selection) {
800
820
  display: none;
801
821
  pointer-events: none;
822
+ }
823
+
824
+ :global(.svelte-flow__selection-wrapper) {
825
+ pointer-events: none !important;
802
826
  }</style>
@@ -3,9 +3,10 @@ import { type GraphModuleState } from '.';
3
3
  import { type Snippet } from 'svelte';
4
4
  import '@xyflow/svelte/dist/base.css';
5
5
  import { type Viewport } from '@xyflow/svelte';
6
- import { type InlineScript, type InsertKind, type onSelectedIteration } from './graphBuilder.svelte';
6
+ import { type InlineScript, type InsertKind, type OnSelectedIteration } from './graphBuilder.svelte';
7
7
  import DiffDrawer from '../DiffDrawer.svelte';
8
8
  import { SelectionManager } from './selectionUtils.svelte';
9
+ import type { MoveManager } from './moveManager.svelte';
9
10
  import type { ModulesTestStates } from '../modulesTest.svelte';
10
11
  import type { ModuleActionInfo } from '../flows/flowDiff';
11
12
  interface Props {
@@ -26,7 +27,7 @@ interface Props {
26
27
  earlyStop?: boolean;
27
28
  cache?: boolean;
28
29
  scroll?: boolean;
29
- moving?: string | undefined;
30
+ moveManager?: MoveManager;
30
31
  download?: boolean;
31
32
  fullSize?: boolean;
32
33
  disableAi?: boolean;
@@ -48,6 +49,10 @@ interface Props {
48
49
  notes?: FlowNote[];
49
50
  chatInputEnabled?: boolean;
50
51
  multiSelectEnabled?: boolean;
52
+ onDeleteMultiple?: (ids: string[]) => void;
53
+ onDuplicateMultiple?: (ids: string[]) => void;
54
+ onMoveMultiple?: (ids: string[]) => void;
55
+ movingIds?: string[];
51
56
  onDelete?: (id: string) => void;
52
57
  onInsert?: (detail: {
53
58
  sourceId?: string;
@@ -84,12 +89,13 @@ interface Props {
84
89
  deps: Record<string, string[]>;
85
90
  }) => void;
86
91
  onMove?: (id: string) => void;
92
+ onDuplicate?: (id: string) => void;
87
93
  onUpdateMock?: (detail: {
88
94
  mock: FlowModule['mock'];
89
95
  id: string;
90
96
  }) => void;
91
97
  onTestUpTo?: ((id: string) => void) | undefined;
92
- onSelectedIteration?: onSelectedIteration;
98
+ onSelectedIteration?: OnSelectedIteration;
93
99
  onEditInput?: (moduleId: string, key: string) => void;
94
100
  onTestFlow?: () => void;
95
101
  onCancelTestFlow?: () => void;
@@ -0,0 +1,82 @@
1
+ <script lang="ts">import { writable } from 'svelte/store';
2
+ import { SvelteFlow, SvelteFlowProvider } from '@xyflow/svelte';
3
+ import { setGraphContext } from './graphContext';
4
+ import { SelectionManager } from './selectionUtils.svelte';
5
+ import { createFlowDiffManager } from '../flows/flowDiffManager.svelte';
6
+ import ModuleNode from './renderers/nodes/ModuleNode.svelte';
7
+ import InputNode from './renderers/nodes/InputNode.svelte';
8
+ import BranchAllStart from './renderers/nodes/BranchAllStart.svelte';
9
+ import BranchAllEndNode from './renderers/nodes/BranchAllEndNode.svelte';
10
+ import ForLoopEndNode from './renderers/nodes/ForLoopEndNode.svelte';
11
+ import ForLoopStartNode from './renderers/nodes/ForLoopStartNode.svelte';
12
+ import ResultNode from './renderers/nodes/ResultNode.svelte';
13
+ import BranchOneStart from './renderers/nodes/BranchOneStart.svelte';
14
+ import BranchOneEndNode from './renderers/nodes/branchOneEndNode.svelte';
15
+ import SubflowBound from './renderers/nodes/SubflowBound.svelte';
16
+ import NoBranchNode from './renderers/nodes/NoBranchNode.svelte';
17
+ import AssetNode from './renderers/nodes/AssetNode.svelte';
18
+ import AssetsOverflowedNode from './renderers/nodes/AssetsOverflowedNode.svelte';
19
+ import AiToolNode from './renderers/nodes/AIToolNode.svelte';
20
+ import NewAiToolNode from './renderers/nodes/NewAIToolNode.svelte';
21
+ import BaseEdge from './renderers/edges/BaseEdge.svelte';
22
+ import EmptyEdge from './renderers/edges/EmptyEdge.svelte';
23
+ import DataflowEdge from './renderers/edges/DataflowEdge.svelte';
24
+ import HiddenBaseEdge from './renderers/edges/HiddenBaseEdge.svelte';
25
+ let { nodes, edges, width, height, initialViewport } = $props();
26
+ setGraphContext({
27
+ selectionManager: new SelectionManager(),
28
+ useDataflow: writable(false),
29
+ showAssets: writable(false),
30
+ diffManager: createFlowDiffManager()
31
+ });
32
+ const nodeTypes = {
33
+ input2: InputNode,
34
+ module: ModuleNode,
35
+ branchAllStart: BranchAllStart,
36
+ branchAllEnd: BranchAllEndNode,
37
+ forLoopEnd: ForLoopEndNode,
38
+ forLoopStart: ForLoopStartNode,
39
+ result: ResultNode,
40
+ whileLoopStart: ForLoopStartNode,
41
+ whileLoopEnd: ForLoopEndNode,
42
+ branchOneStart: BranchOneStart,
43
+ branchOneEnd: BranchOneEndNode,
44
+ subflowBound: SubflowBound,
45
+ noBranch: NoBranchNode,
46
+ asset: AssetNode,
47
+ assetsOverflowed: AssetsOverflowedNode,
48
+ aiTool: AiToolNode,
49
+ newAiTool: NewAiToolNode
50
+ };
51
+ const edgeTypes = {
52
+ edge: BaseEdge,
53
+ empty: EmptyEdge,
54
+ dataflowedge: DataflowEdge,
55
+ hiddenedge: HiddenBaseEdge
56
+ };
57
+ const proOptions = { hideAttribution: true };
58
+ const fitViewOptions = { padding: 0 };
59
+ </script>
60
+
61
+ <div style="width: {width}px; height: {height}px;">
62
+ <SvelteFlowProvider>
63
+ <SvelteFlow
64
+ {nodes}
65
+ {edges}
66
+ {nodeTypes}
67
+ {edgeTypes}
68
+ fitView={!initialViewport}
69
+ {fitViewOptions}
70
+ {initialViewport}
71
+ nodesDraggable={false}
72
+ elementsSelectable={false}
73
+ panOnDrag={false}
74
+ zoomOnScroll={false}
75
+ zoomOnPinch={false}
76
+ zoomOnDoubleClick={false}
77
+ preventScrolling={false}
78
+ {proOptions}
79
+ style="width: {width}px; height: {height}px; background: transparent;"
80
+ />
81
+ </SvelteFlowProvider>
82
+ </div>
@@ -0,0 +1,11 @@
1
+ import { type Node, type Edge, type Viewport } from '@xyflow/svelte';
2
+ type $$ComponentProps = {
3
+ nodes: Node[];
4
+ edges: Edge[];
5
+ width: number;
6
+ height: number;
7
+ initialViewport?: Viewport;
8
+ };
9
+ declare const MiniFlowGraph: import("svelte").Component<$$ComponentProps, {}, "">;
10
+ type MiniFlowGraph = ReturnType<typeof MiniFlowGraph>;
11
+ export default MiniFlowGraph;
@@ -0,0 +1,47 @@
1
+ <script lang="ts">import { stopPropagation, preventDefault } from 'svelte/legacy';
2
+ import { onDestroy } from 'svelte';
3
+ import { Move } from 'lucide-svelte';
4
+ import { twMerge } from 'tailwind-merge';
5
+ let { moveManager, moduleId, selectedIds, singleNode = false, visible = true, onClickMove, class: extraClass } = $props();
6
+ let dragCleanup;
7
+ function onPointerDown(e) {
8
+ const pe = e;
9
+ const startX = pe.clientX;
10
+ const startY = pe.clientY;
11
+ let didDrag = false;
12
+ function onMove(me) {
13
+ const dx = me.clientX - startX;
14
+ const dy = me.clientY - startY;
15
+ if (!didDrag && Math.sqrt(dx * dx + dy * dy) > 5) {
16
+ didDrag = true;
17
+ moveManager.startDrag(moduleId, startX, startY, singleNode ? undefined : selectedIds);
18
+ }
19
+ }
20
+ function onUp() {
21
+ document.removeEventListener('pointermove', onMove);
22
+ document.removeEventListener('pointerup', onUp);
23
+ dragCleanup = undefined;
24
+ if (!didDrag) {
25
+ onClickMove?.();
26
+ }
27
+ }
28
+ document.addEventListener('pointermove', onMove);
29
+ document.addEventListener('pointerup', onUp);
30
+ dragCleanup = onUp;
31
+ }
32
+ onDestroy(() => dragCleanup?.());
33
+ </script>
34
+
35
+ <button
36
+ class={twMerge(
37
+ 'center-center p-1 text-secondary shadow-sm bg-surface duration-0 hover:bg-surface-tertiary cursor-grab',
38
+ visible ? '' : '!hidden',
39
+ 'shadow-md rounded-md',
40
+ 'touch-none',
41
+ extraClass
42
+ )}
43
+ onpointerdown={stopPropagation(preventDefault(onPointerDown))}
44
+ title="Move"
45
+ >
46
+ <Move size={12} />
47
+ </button>
@@ -0,0 +1,13 @@
1
+ import type { MoveManager } from './moveManager.svelte';
2
+ interface Props {
3
+ moveManager: MoveManager;
4
+ moduleId: string;
5
+ selectedIds?: string[];
6
+ singleNode?: boolean;
7
+ visible?: boolean;
8
+ onClickMove?: () => void;
9
+ class?: string;
10
+ }
11
+ declare const MoveHandleButton: import("svelte").Component<Props, {}, "">;
12
+ type MoveHandleButton = ReturnType<typeof MoveHandleButton>;
13
+ export default MoveHandleButton;