@flowdrop/flowdrop 1.5.0 → 1.6.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 (434) hide show
  1. package/README.md +46 -47
  2. package/dist/adapters/WorkflowAdapter.d.ts +1 -1
  3. package/dist/adapters/WorkflowAdapter.js +26 -26
  4. package/dist/adapters/agentspec/AgentSpecAdapter.d.ts +2 -2
  5. package/dist/adapters/agentspec/AgentSpecAdapter.js +122 -133
  6. package/dist/adapters/agentspec/agentAdapter.d.ts +2 -2
  7. package/dist/adapters/agentspec/agentAdapter.js +10 -10
  8. package/dist/adapters/agentspec/autoLayout.d.ts +1 -1
  9. package/dist/adapters/agentspec/autoLayout.js +7 -9
  10. package/dist/adapters/agentspec/componentTypeDefaults.d.ts +1 -1
  11. package/dist/adapters/agentspec/componentTypeDefaults.js +120 -120
  12. package/dist/adapters/agentspec/defaultNodeTypes.d.ts +2 -2
  13. package/dist/adapters/agentspec/defaultNodeTypes.js +307 -307
  14. package/dist/adapters/agentspec/index.d.ts +10 -10
  15. package/dist/adapters/agentspec/index.js +6 -6
  16. package/dist/adapters/agentspec/validator.d.ts +2 -2
  17. package/dist/adapters/agentspec/validator.js +20 -22
  18. package/dist/api/enhanced-client.d.ts +3 -3
  19. package/dist/api/enhanced-client.js +72 -73
  20. package/dist/chat/commandClassifier.js +6 -6
  21. package/dist/chat/index.d.ts +5 -5
  22. package/dist/chat/index.js +4 -4
  23. package/dist/chat/responseParser.d.ts +6 -6
  24. package/dist/chat/responseParser.js +28 -24
  25. package/dist/commands/batch.d.ts +1 -1
  26. package/dist/commands/batch.js +5 -7
  27. package/dist/commands/executor.d.ts +2 -2
  28. package/dist/commands/executor.js +320 -231
  29. package/dist/commands/index.d.ts +6 -6
  30. package/dist/commands/index.js +5 -5
  31. package/dist/commands/parser.d.ts +1 -1
  32. package/dist/commands/parser.js +91 -74
  33. package/dist/commands/positioner.d.ts +2 -2
  34. package/dist/commands/positioner.js +1 -1
  35. package/dist/commands/storeIntegration.svelte.d.ts +2 -2
  36. package/dist/commands/storeIntegration.svelte.js +5 -5
  37. package/dist/commands/types.d.ts +42 -42
  38. package/dist/commands/types.js +2 -2
  39. package/dist/components/App.svelte +240 -294
  40. package/dist/components/App.svelte.d.ts +9 -9
  41. package/dist/components/CanvasBanner.stories.svelte +10 -16
  42. package/dist/components/CanvasBanner.stories.svelte.d.ts +1 -1
  43. package/dist/components/CanvasBanner.svelte +2 -2
  44. package/dist/components/CanvasBanner.svelte.d.ts +1 -1
  45. package/dist/components/CanvasController.svelte +3 -4
  46. package/dist/components/ConfigForm.svelte +118 -256
  47. package/dist/components/ConfigForm.svelte.d.ts +2 -2
  48. package/dist/components/ConfigMappingRow.svelte +7 -9
  49. package/dist/components/ConfigMappingRow.svelte.d.ts +1 -1
  50. package/dist/components/ConfigModal.svelte +3 -3
  51. package/dist/components/ConfigModal.svelte.d.ts +1 -1
  52. package/dist/components/ConfigPanel.stories.svelte +19 -19
  53. package/dist/components/ConfigPanel.stories.svelte.d.ts +1 -1
  54. package/dist/components/ConfigPanel.svelte +9 -20
  55. package/dist/components/ConfigPanel.svelte.d.ts +1 -1
  56. package/dist/components/ConnectionLine.svelte +4 -4
  57. package/dist/components/EdgeRefresher.svelte +1 -1
  58. package/dist/components/FlowDropEdge.stories.svelte +110 -110
  59. package/dist/components/FlowDropEdge.svelte +9 -9
  60. package/dist/components/FlowDropEdge.svelte.d.ts +1 -1
  61. package/dist/components/FlowDropZone.svelte +6 -9
  62. package/dist/components/FlowDropZone.svelte.d.ts +1 -1
  63. package/dist/components/LoadingSpinner.stories.svelte +13 -13
  64. package/dist/components/LoadingSpinner.stories.svelte.d.ts +1 -1
  65. package/dist/components/LoadingSpinner.svelte +3 -3
  66. package/dist/components/LoadingSpinner.svelte.d.ts +1 -1
  67. package/dist/components/Logo.stories.svelte +4 -4
  68. package/dist/components/Logo.stories.svelte.d.ts +1 -1
  69. package/dist/components/Logo.svelte +3 -9
  70. package/dist/components/LogsSidebar.svelte +41 -48
  71. package/dist/components/LogsSidebar.svelte.d.ts +1 -1
  72. package/dist/components/MarkdownDisplay.stories.svelte +10 -14
  73. package/dist/components/MarkdownDisplay.stories.svelte.d.ts +1 -1
  74. package/dist/components/MarkdownDisplay.svelte +4 -6
  75. package/dist/components/Navbar.stories.svelte +19 -19
  76. package/dist/components/Navbar.stories.svelte.d.ts +1 -1
  77. package/dist/components/Navbar.svelte +28 -49
  78. package/dist/components/Navbar.svelte.d.ts +2 -2
  79. package/dist/components/NodeSidebar.svelte +42 -88
  80. package/dist/components/NodeSidebar.svelte.d.ts +1 -1
  81. package/dist/components/NodeStatusOverlay.stories.svelte +19 -31
  82. package/dist/components/NodeStatusOverlay.stories.svelte.d.ts +1 -1
  83. package/dist/components/NodeStatusOverlay.svelte +40 -55
  84. package/dist/components/NodeStatusOverlay.svelte.d.ts +3 -3
  85. package/dist/components/NodeSwapPicker.svelte +20 -64
  86. package/dist/components/NodeSwapPicker.svelte.d.ts +1 -1
  87. package/dist/components/PipelineStatus.svelte +63 -89
  88. package/dist/components/PipelineStatus.svelte.d.ts +4 -4
  89. package/dist/components/PortCoordinateTracker.svelte +5 -7
  90. package/dist/components/PortCoordinateTracker.svelte.d.ts +1 -1
  91. package/dist/components/PortMappingRow.svelte +20 -24
  92. package/dist/components/PortMappingRow.svelte.d.ts +2 -2
  93. package/dist/components/ReadOnlyDetails.svelte +1 -1
  94. package/dist/components/SchemaForm.stories.svelte +53 -53
  95. package/dist/components/SchemaForm.stories.svelte.d.ts +1 -1
  96. package/dist/components/SchemaForm.svelte +24 -51
  97. package/dist/components/SchemaForm.svelte.d.ts +2 -2
  98. package/dist/components/SettingsModal.svelte +6 -9
  99. package/dist/components/SettingsModal.svelte.d.ts +1 -1
  100. package/dist/components/SettingsPanel.svelte +138 -158
  101. package/dist/components/SettingsPanel.svelte.d.ts +1 -1
  102. package/dist/components/StatusIcon.stories.svelte +16 -29
  103. package/dist/components/StatusIcon.stories.svelte.d.ts +1 -1
  104. package/dist/components/StatusIcon.svelte +19 -19
  105. package/dist/components/StatusIcon.svelte.d.ts +2 -2
  106. package/dist/components/StatusLabel.stories.svelte +8 -8
  107. package/dist/components/StatusLabel.stories.svelte.d.ts +1 -1
  108. package/dist/components/SwapMappingEditor.svelte +35 -56
  109. package/dist/components/SwapMappingEditor.svelte.d.ts +2 -2
  110. package/dist/components/ThemeToggle.stories.svelte +10 -10
  111. package/dist/components/ThemeToggle.stories.svelte.d.ts +1 -1
  112. package/dist/components/ThemeToggle.svelte +22 -33
  113. package/dist/components/ThemeToggle.svelte.d.ts +1 -1
  114. package/dist/components/UniversalNode.svelte +29 -41
  115. package/dist/components/UniversalNode.svelte.d.ts +3 -3
  116. package/dist/components/WorkflowEditor.svelte +113 -168
  117. package/dist/components/WorkflowEditor.svelte.d.ts +4 -4
  118. package/dist/components/chat/AIChatPanel.svelte +272 -133
  119. package/dist/components/chat/AIChatPanel.svelte.d.ts +3 -3
  120. package/dist/components/chat/CommandPreview.svelte +74 -24
  121. package/dist/components/chat/CommandPreview.svelte.d.ts +1 -1
  122. package/dist/components/console/CommandConsole.stories.svelte +71 -53
  123. package/dist/components/console/CommandConsole.stories.svelte.d.ts +1 -1
  124. package/dist/components/console/CommandConsole.svelte +39 -35
  125. package/dist/components/console/CommandConsole.svelte.d.ts +2 -2
  126. package/dist/components/console/ConsoleAutocomplete.svelte +6 -3
  127. package/dist/components/console/ConsoleInput.svelte +148 -89
  128. package/dist/components/console/ConsoleInput.svelte.d.ts +1 -1
  129. package/dist/components/console/ConsoleOutput.svelte +5 -10
  130. package/dist/components/console/ConsoleOutput.svelte.d.ts +1 -1
  131. package/dist/components/console/formatters.d.ts +1 -1
  132. package/dist/components/console/formatters.js +27 -29
  133. package/dist/components/form/FormArray.svelte +75 -132
  134. package/dist/components/form/FormArray.svelte.d.ts +1 -1
  135. package/dist/components/form/FormAutocomplete.svelte +65 -108
  136. package/dist/components/form/FormAutocomplete.svelte.d.ts +1 -1
  137. package/dist/components/form/FormCheckboxGroup.stories.svelte +13 -16
  138. package/dist/components/form/FormCheckboxGroup.stories.svelte.d.ts +1 -1
  139. package/dist/components/form/FormCheckboxGroup.svelte +2 -2
  140. package/dist/components/form/FormCodeEditor.svelte +42 -56
  141. package/dist/components/form/FormField.svelte +79 -90
  142. package/dist/components/form/FormField.svelte.d.ts +2 -2
  143. package/dist/components/form/FormFieldLight.svelte +72 -88
  144. package/dist/components/form/FormFieldLight.svelte.d.ts +1 -1
  145. package/dist/components/form/FormFieldWrapper.stories.svelte +14 -14
  146. package/dist/components/form/FormFieldWrapper.stories.svelte.d.ts +1 -1
  147. package/dist/components/form/FormFieldWrapper.svelte +2 -9
  148. package/dist/components/form/FormFieldWrapper.svelte.d.ts +1 -1
  149. package/dist/components/form/FormFieldset.svelte +3 -3
  150. package/dist/components/form/FormFieldset.svelte.d.ts +2 -2
  151. package/dist/components/form/FormMarkdownEditor.svelte +123 -156
  152. package/dist/components/form/FormNumberField.stories.svelte +18 -18
  153. package/dist/components/form/FormNumberField.stories.svelte.d.ts +1 -1
  154. package/dist/components/form/FormNumberField.svelte +6 -6
  155. package/dist/components/form/FormRangeField.stories.svelte +13 -13
  156. package/dist/components/form/FormRangeField.stories.svelte.d.ts +1 -1
  157. package/dist/components/form/FormRangeField.svelte +4 -12
  158. package/dist/components/form/FormSelect.stories.svelte +21 -21
  159. package/dist/components/form/FormSelect.stories.svelte.d.ts +1 -1
  160. package/dist/components/form/FormSelect.svelte +5 -5
  161. package/dist/components/form/FormSelect.svelte.d.ts +1 -1
  162. package/dist/components/form/FormTemplateEditor.svelte +126 -175
  163. package/dist/components/form/FormTemplateEditor.svelte.d.ts +1 -1
  164. package/dist/components/form/FormTextField.stories.svelte +17 -23
  165. package/dist/components/form/FormTextField.stories.svelte.d.ts +1 -1
  166. package/dist/components/form/FormTextField.svelte +4 -4
  167. package/dist/components/form/FormTextarea.stories.svelte +18 -21
  168. package/dist/components/form/FormTextarea.stories.svelte.d.ts +1 -1
  169. package/dist/components/form/FormTextarea.svelte +4 -4
  170. package/dist/components/form/FormToggle.stories.svelte +13 -16
  171. package/dist/components/form/FormToggle.stories.svelte.d.ts +1 -1
  172. package/dist/components/form/FormToggle.svelte +3 -3
  173. package/dist/components/form/FormUISchemaRenderer.svelte +12 -19
  174. package/dist/components/form/FormUISchemaRenderer.svelte.d.ts +3 -3
  175. package/dist/components/form/index.d.ts +19 -19
  176. package/dist/components/form/index.js +18 -18
  177. package/dist/components/form/templateAutocomplete.d.ts +2 -2
  178. package/dist/components/form/templateAutocomplete.js +55 -64
  179. package/dist/components/form/types.d.ts +6 -6
  180. package/dist/components/form/types.js +4 -9
  181. package/dist/components/icons/AlertCircleIcon.svelte +1 -6
  182. package/dist/components/icons/CogIcon.svelte +1 -6
  183. package/dist/components/interrupt/ChoicePrompt.stories.svelte +27 -27
  184. package/dist/components/interrupt/ChoicePrompt.stories.svelte.d.ts +1 -1
  185. package/dist/components/interrupt/ChoicePrompt.svelte +17 -41
  186. package/dist/components/interrupt/ChoicePrompt.svelte.d.ts +1 -1
  187. package/dist/components/interrupt/ConfirmationPrompt.stories.svelte +17 -17
  188. package/dist/components/interrupt/ConfirmationPrompt.stories.svelte.d.ts +1 -1
  189. package/dist/components/interrupt/ConfirmationPrompt.svelte +10 -16
  190. package/dist/components/interrupt/ConfirmationPrompt.svelte.d.ts +1 -1
  191. package/dist/components/interrupt/FormPrompt.svelte +10 -15
  192. package/dist/components/interrupt/FormPrompt.svelte.d.ts +1 -1
  193. package/dist/components/interrupt/InterruptBubble.svelte +87 -121
  194. package/dist/components/interrupt/InterruptBubble.svelte.d.ts +2 -2
  195. package/dist/components/interrupt/ReviewPrompt.stories.svelte +37 -37
  196. package/dist/components/interrupt/ReviewPrompt.stories.svelte.d.ts +1 -1
  197. package/dist/components/interrupt/ReviewPrompt.svelte +55 -75
  198. package/dist/components/interrupt/ReviewPrompt.svelte.d.ts +1 -1
  199. package/dist/components/interrupt/TextInputPrompt.stories.svelte +16 -17
  200. package/dist/components/interrupt/TextInputPrompt.stories.svelte.d.ts +1 -1
  201. package/dist/components/interrupt/TextInputPrompt.svelte +13 -18
  202. package/dist/components/interrupt/TextInputPrompt.svelte.d.ts +1 -1
  203. package/dist/components/interrupt/index.d.ts +6 -6
  204. package/dist/components/interrupt/index.js +6 -6
  205. package/dist/components/layouts/MainLayout.svelte +46 -84
  206. package/dist/components/layouts/MainLayout.svelte.d.ts +6 -6
  207. package/dist/components/nodes/GatewayNode.stories.svelte +64 -65
  208. package/dist/components/nodes/GatewayNode.svelte +37 -70
  209. package/dist/components/nodes/GatewayNode.svelte.d.ts +3 -3
  210. package/dist/components/nodes/IdeaNode.stories.svelte +25 -26
  211. package/dist/components/nodes/IdeaNode.svelte +22 -36
  212. package/dist/components/nodes/IdeaNode.svelte.d.ts +1 -1
  213. package/dist/components/nodes/NotesNode.stories.svelte +37 -38
  214. package/dist/components/nodes/NotesNode.svelte +28 -39
  215. package/dist/components/nodes/NotesNode.svelte.d.ts +1 -1
  216. package/dist/components/nodes/SimpleNode.stories.svelte +137 -138
  217. package/dist/components/nodes/SimpleNode.svelte +44 -74
  218. package/dist/components/nodes/SimpleNode.svelte.d.ts +1 -1
  219. package/dist/components/nodes/SquareNode.stories.svelte +75 -75
  220. package/dist/components/nodes/SquareNode.svelte +42 -68
  221. package/dist/components/nodes/SquareNode.svelte.d.ts +1 -1
  222. package/dist/components/nodes/TerminalNode.stories.svelte +10 -10
  223. package/dist/components/nodes/TerminalNode.svelte +74 -112
  224. package/dist/components/nodes/TerminalNode.svelte.d.ts +1 -1
  225. package/dist/components/nodes/ToolNode.stories.svelte +115 -116
  226. package/dist/components/nodes/ToolNode.svelte +31 -64
  227. package/dist/components/nodes/ToolNode.svelte.d.ts +1 -1
  228. package/dist/components/nodes/WorkflowNode.stories.svelte +84 -89
  229. package/dist/components/nodes/WorkflowNode.svelte +50 -103
  230. package/dist/components/nodes/WorkflowNode.svelte.d.ts +3 -3
  231. package/dist/components/playground/ChatPanel.svelte +47 -103
  232. package/dist/components/playground/ExecutionLogs.svelte +45 -68
  233. package/dist/components/playground/InputCollector.svelte +32 -51
  234. package/dist/components/playground/MessageBubble.stories.svelte +25 -25
  235. package/dist/components/playground/MessageBubble.stories.svelte.d.ts +1 -1
  236. package/dist/components/playground/MessageBubble.svelte +54 -70
  237. package/dist/components/playground/MessageBubble.svelte.d.ts +1 -1
  238. package/dist/components/playground/Playground.svelte +60 -91
  239. package/dist/components/playground/Playground.svelte.d.ts +3 -3
  240. package/dist/components/playground/PlaygroundModal.svelte +8 -12
  241. package/dist/components/playground/PlaygroundModal.svelte.d.ts +3 -3
  242. package/dist/components/playground/SessionManager.svelte +34 -40
  243. package/dist/components/playground/SessionManager.svelte.d.ts +1 -1
  244. package/dist/config/agentSpecEndpoints.d.ts +1 -1
  245. package/dist/config/agentSpecEndpoints.js +20 -20
  246. package/dist/config/constants.js +2 -2
  247. package/dist/config/defaultCategories.d.ts +1 -1
  248. package/dist/config/defaultCategories.js +86 -86
  249. package/dist/config/defaultPortConfig.d.ts +1 -1
  250. package/dist/config/defaultPortConfig.js +144 -144
  251. package/dist/config/endpoints.d.ts +4 -4
  252. package/dist/config/endpoints.js +68 -68
  253. package/dist/config/runtimeConfig.d.ts +2 -2
  254. package/dist/config/runtimeConfig.js +8 -8
  255. package/dist/core/index.d.ts +68 -68
  256. package/dist/core/index.js +38 -38
  257. package/dist/display/index.d.ts +2 -2
  258. package/dist/display/index.js +2 -2
  259. package/dist/editor/index.d.ts +64 -64
  260. package/dist/editor/index.js +54 -54
  261. package/dist/form/code.d.ts +5 -5
  262. package/dist/form/code.js +14 -14
  263. package/dist/form/fieldRegistry.d.ts +3 -3
  264. package/dist/form/fieldRegistry.js +9 -11
  265. package/dist/form/full.d.ts +8 -8
  266. package/dist/form/full.js +9 -9
  267. package/dist/form/index.d.ts +18 -18
  268. package/dist/form/index.js +16 -16
  269. package/dist/form/markdown.d.ts +4 -4
  270. package/dist/form/markdown.js +8 -8
  271. package/dist/helpers/proximityConnect.d.ts +3 -3
  272. package/dist/helpers/proximityConnect.js +32 -34
  273. package/dist/helpers/workflowEditorHelper.d.ts +6 -6
  274. package/dist/helpers/workflowEditorHelper.js +64 -68
  275. package/dist/index.d.ts +6 -6
  276. package/dist/index.js +6 -6
  277. package/dist/mocks/app-environment.js +2 -2
  278. package/dist/mocks/app-forms.js +1 -1
  279. package/dist/mocks/app-navigation.js +2 -2
  280. package/dist/mocks/app-stores.js +3 -3
  281. package/dist/playground/index.d.ts +19 -19
  282. package/dist/playground/index.js +16 -16
  283. package/dist/playground/mount.d.ts +3 -3
  284. package/dist/playground/mount.js +24 -24
  285. package/dist/registry/builtinFormats.js +13 -13
  286. package/dist/registry/builtinNodes.d.ts +2 -2
  287. package/dist/registry/builtinNodes.js +77 -77
  288. package/dist/registry/index.d.ts +4 -4
  289. package/dist/registry/index.js +4 -4
  290. package/dist/registry/nodeComponentRegistry.d.ts +8 -8
  291. package/dist/registry/nodeComponentRegistry.js +9 -11
  292. package/dist/registry/plugin.d.ts +2 -2
  293. package/dist/registry/plugin.js +11 -11
  294. package/dist/registry/workflowFormatRegistry.d.ts +3 -3
  295. package/dist/registry/workflowFormatRegistry.js +2 -2
  296. package/dist/schema/index.d.ts +1 -1
  297. package/dist/schema/index.js +2 -2
  298. package/dist/services/agentSpecExecutionService.d.ts +3 -3
  299. package/dist/services/agentSpecExecutionService.js +55 -56
  300. package/dist/services/api.d.ts +2 -2
  301. package/dist/services/api.js +37 -37
  302. package/dist/services/apiVariableService.d.ts +1 -1
  303. package/dist/services/apiVariableService.js +34 -41
  304. package/dist/services/autoSaveService.js +8 -8
  305. package/dist/services/categoriesApi.d.ts +2 -2
  306. package/dist/services/categoriesApi.js +8 -8
  307. package/dist/services/chatService.d.ts +1 -1
  308. package/dist/services/chatService.js +18 -18
  309. package/dist/services/draftStorage.d.ts +1 -1
  310. package/dist/services/draftStorage.js +11 -11
  311. package/dist/services/dynamicSchemaService.d.ts +1 -1
  312. package/dist/services/dynamicSchemaService.js +39 -41
  313. package/dist/services/globalSave.d.ts +2 -2
  314. package/dist/services/globalSave.js +38 -41
  315. package/dist/services/historyService.d.ts +1 -1
  316. package/dist/services/historyService.js +10 -10
  317. package/dist/services/interruptService.d.ts +1 -1
  318. package/dist/services/interruptService.js +29 -35
  319. package/dist/services/nodeExecutionService.d.ts +1 -1
  320. package/dist/services/nodeExecutionService.js +44 -45
  321. package/dist/services/playgroundService.d.ts +1 -1
  322. package/dist/services/playgroundService.js +29 -29
  323. package/dist/services/portConfigApi.d.ts +2 -2
  324. package/dist/services/portConfigApi.js +8 -8
  325. package/dist/services/settingsService.d.ts +2 -2
  326. package/dist/services/settingsService.js +19 -25
  327. package/dist/services/toastService.d.ts +4 -4
  328. package/dist/services/toastService.js +33 -33
  329. package/dist/services/variableService.d.ts +1 -1
  330. package/dist/services/variableService.js +36 -36
  331. package/dist/services/workflowStorage.d.ts +2 -2
  332. package/dist/services/workflowStorage.js +13 -13
  333. package/dist/settings/index.d.ts +7 -7
  334. package/dist/settings/index.js +6 -6
  335. package/dist/skins/default.d.ts +1 -1
  336. package/dist/skins/default.js +1 -1
  337. package/dist/skins/index.d.ts +3 -3
  338. package/dist/skins/index.js +7 -7
  339. package/dist/skins/slate.d.ts +1 -1
  340. package/dist/skins/slate.js +69 -69
  341. package/dist/stores/categoriesStore.svelte.d.ts +1 -1
  342. package/dist/stores/categoriesStore.svelte.js +5 -5
  343. package/dist/stores/editorStateMachine.svelte.d.ts +2 -2
  344. package/dist/stores/editorStateMachine.svelte.js +34 -34
  345. package/dist/stores/historyStore.svelte.d.ts +4 -4
  346. package/dist/stores/historyStore.svelte.js +4 -4
  347. package/dist/stores/interruptStore.svelte.d.ts +3 -3
  348. package/dist/stores/interruptStore.svelte.js +21 -21
  349. package/dist/stores/playgroundStore.svelte.d.ts +2 -2
  350. package/dist/stores/playgroundStore.svelte.js +18 -21
  351. package/dist/stores/portCoordinateStore.svelte.d.ts +2 -2
  352. package/dist/stores/portCoordinateStore.svelte.js +10 -13
  353. package/dist/stores/settingsStore.svelte.d.ts +2 -2
  354. package/dist/stores/settingsStore.svelte.js +57 -62
  355. package/dist/stores/workflowStore.svelte.d.ts +3 -3
  356. package/dist/stores/workflowStore.svelte.js +46 -47
  357. package/dist/stories/CanvasDecorator.svelte +7 -10
  358. package/dist/stories/CanvasDecorator.svelte.d.ts +2 -2
  359. package/dist/stories/EdgeDecorator.svelte +28 -31
  360. package/dist/stories/EdgeDecorator.svelte.d.ts +1 -1
  361. package/dist/stories/NodeDecorator.svelte +14 -20
  362. package/dist/stories/NodeDecorator.svelte.d.ts +1 -1
  363. package/dist/stories/utils.d.ts +2 -2
  364. package/dist/stories/utils.js +89 -93
  365. package/dist/styles/base.css +16 -50
  366. package/dist/styles/tokens.css +10 -28
  367. package/dist/svelte-app.d.ts +10 -10
  368. package/dist/svelte-app.js +39 -39
  369. package/dist/themes/default.d.ts +1 -1
  370. package/dist/themes/default.js +4 -4
  371. package/dist/themes/index.d.ts +3 -3
  372. package/dist/themes/index.js +11 -11
  373. package/dist/themes/minimal.d.ts +1 -1
  374. package/dist/themes/minimal.js +5 -5
  375. package/dist/types/agentspec.d.ts +18 -18
  376. package/dist/types/agentspec.js +2 -2
  377. package/dist/types/auth.d.ts +1 -1
  378. package/dist/types/auth.js +6 -6
  379. package/dist/types/chat.d.ts +2 -2
  380. package/dist/types/config.d.ts +6 -6
  381. package/dist/types/events.d.ts +3 -3
  382. package/dist/types/events.js +2 -2
  383. package/dist/types/index.d.ts +32 -32
  384. package/dist/types/index.js +6 -6
  385. package/dist/types/interrupt.d.ts +6 -6
  386. package/dist/types/interrupt.js +21 -21
  387. package/dist/types/interruptState.d.ts +12 -12
  388. package/dist/types/interruptState.js +66 -66
  389. package/dist/types/playground.d.ts +7 -7
  390. package/dist/types/playground.js +14 -14
  391. package/dist/types/settings.d.ts +7 -5
  392. package/dist/types/settings.js +19 -24
  393. package/dist/types/skin.d.ts +1 -1
  394. package/dist/types/theme.d.ts +2 -2
  395. package/dist/types/uischema.d.ts +4 -4
  396. package/dist/types/uischema.js +3 -3
  397. package/dist/utils/colors.d.ts +1 -1
  398. package/dist/utils/colors.js +95 -97
  399. package/dist/utils/config.d.ts +2 -2
  400. package/dist/utils/config.js +48 -48
  401. package/dist/utils/connections.d.ts +2 -2
  402. package/dist/utils/connections.js +15 -15
  403. package/dist/utils/edgeStyling.d.ts +2 -2
  404. package/dist/utils/edgeStyling.js +36 -39
  405. package/dist/utils/errors.js +3 -3
  406. package/dist/utils/fetchWithAuth.d.ts +1 -1
  407. package/dist/utils/fetchWithAuth.js +2 -2
  408. package/dist/utils/handleIds.d.ts +2 -2
  409. package/dist/utils/handleIds.js +8 -8
  410. package/dist/utils/handlePositioning.d.ts +1 -1
  411. package/dist/utils/handlePositioning.js +2 -2
  412. package/dist/utils/icons.d.ts +1 -1
  413. package/dist/utils/icons.js +74 -74
  414. package/dist/utils/logger.d.ts +1 -1
  415. package/dist/utils/logger.js +7 -7
  416. package/dist/utils/nodeIds.d.ts +1 -1
  417. package/dist/utils/nodeIds.js +1 -1
  418. package/dist/utils/nodeStatus.d.ts +1 -1
  419. package/dist/utils/nodeStatus.js +48 -48
  420. package/dist/utils/nodeSwap.d.ts +9 -9
  421. package/dist/utils/nodeSwap.js +52 -58
  422. package/dist/utils/nodeTypes.d.ts +1 -1
  423. package/dist/utils/nodeTypes.js +20 -21
  424. package/dist/utils/nodeWrapper.d.ts +7 -7
  425. package/dist/utils/nodeWrapper.js +19 -21
  426. package/dist/utils/performanceUtils.d.ts +1 -1
  427. package/dist/utils/performanceUtils.js +1 -2
  428. package/dist/utils/portUtils.d.ts +2 -2
  429. package/dist/utils/portUtils.js +1 -1
  430. package/dist/utils/sanitize.js +1 -1
  431. package/dist/utils/uischema.d.ts +2 -2
  432. package/dist/utils/uischema.js +8 -8
  433. package/dist/utils/validation.js +8 -8
  434. package/package.json +7 -11
@@ -10,14 +10,14 @@
10
10
  *
11
11
  * @module stores/workflowStore
12
12
  */
13
- import { DEFAULT_WORKFLOW_FORMAT } from "../types/index.js";
14
- import { historyService } from "../services/historyService.js";
13
+ import { DEFAULT_WORKFLOW_FORMAT } from '../types/index.js';
14
+ import { historyService } from '../services/historyService.js';
15
15
  /**
16
16
  * Safely build updated workflow metadata, providing defaults for required fields.
17
17
  */
18
18
  function buildMetadata(existing, updates) {
19
19
  return {
20
- version: existing?.version ?? "1.0",
20
+ version: existing?.version ?? '1.0',
21
21
  createdAt: existing?.createdAt ?? new Date().toISOString(),
22
22
  updatedAt: new Date().toISOString(),
23
23
  author: existing?.author,
@@ -25,7 +25,7 @@ function buildMetadata(existing, updates) {
25
25
  versionId: existing?.versionId,
26
26
  updateNumber: existing?.updateNumber,
27
27
  format: existing?.format,
28
- ...updates,
28
+ ...updates
29
29
  };
30
30
  }
31
31
  // =========================================================================
@@ -112,7 +112,7 @@ export function getWorkflowId() {
112
112
  * @returns The workflow name or 'Untitled Workflow'
113
113
  */
114
114
  export function getWorkflowName() {
115
- return workflowState?.name ?? "Untitled Workflow";
115
+ return workflowState?.name ?? 'Untitled Workflow';
116
116
  }
117
117
  /**
118
118
  * Get the workflow nodes reactively
@@ -137,11 +137,11 @@ export function getWorkflowEdges() {
137
137
  */
138
138
  export function getWorkflowMetadata() {
139
139
  return (workflowState?.metadata ?? {
140
- version: "1.0.0",
140
+ version: '1.0.0',
141
141
  createdAt: new Date().toISOString(),
142
142
  updatedAt: new Date().toISOString(),
143
143
  versionId: `${Date.now()}-${Math.random().toString(36).substr(2, 9)}`,
144
- updateNumber: 0,
144
+ updateNumber: 0
145
145
  });
146
146
  }
147
147
  /**
@@ -161,7 +161,7 @@ export function getWorkflowChanged() {
161
161
  return {
162
162
  nodes: getWorkflowNodes(),
163
163
  edges: getWorkflowEdges(),
164
- name: getWorkflowName(),
164
+ name: getWorkflowName()
165
165
  };
166
166
  }
167
167
  /**
@@ -177,7 +177,7 @@ export function getWorkflowValidation() {
177
177
  hasEdges: edges.length > 0,
178
178
  nodeCount: nodes.length,
179
179
  edgeCount: edges.length,
180
- isValid: nodes.length > 0 && edges.length >= 0,
180
+ isValid: nodes.length > 0 && edges.length >= 0
181
181
  };
182
182
  }
183
183
  /**
@@ -190,7 +190,7 @@ export function getWorkflowMetadataChanged() {
190
190
  return {
191
191
  createdAt: metadata.createdAt,
192
192
  updatedAt: metadata.updatedAt,
193
- version: metadata.version ?? "1.0.0",
193
+ version: metadata.version ?? '1.0.0'
194
194
  };
195
195
  }
196
196
  /**
@@ -392,8 +392,7 @@ function hasWorkflowDataChanged(currentWorkflow, newNodes, newEdges) {
392
392
  return true;
393
393
  if (currentEdge.id !== newEdge.id)
394
394
  return true;
395
- if (currentEdge.source !== newEdge.source ||
396
- currentEdge.target !== newEdge.target)
395
+ if (currentEdge.source !== newEdge.source || currentEdge.target !== newEdge.target)
397
396
  return true;
398
397
  }
399
398
  return false;
@@ -433,7 +432,7 @@ export const workflowActions = {
433
432
  updateWorkflow: (workflow) => {
434
433
  workflowState = workflow;
435
434
  bumpVersion();
436
- notifyWorkflowChange("metadata");
435
+ notifyWorkflowChange('metadata');
437
436
  },
438
437
  /**
439
438
  * Restore workflow from history (undo/redo)
@@ -444,7 +443,7 @@ export const workflowActions = {
444
443
  isRestoringFromHistory = true;
445
444
  workflowState = workflow;
446
445
  bumpVersion();
447
- notifyWorkflowChange("metadata");
446
+ notifyWorkflowChange('metadata');
448
447
  isRestoringFromHistory = false;
449
448
  },
450
449
  /**
@@ -464,11 +463,11 @@ export const workflowActions = {
464
463
  nodes,
465
464
  metadata: buildMetadata(workflowState.metadata, {
466
465
  versionId,
467
- updateNumber: (workflowState.metadata?.updateNumber ?? 0) + 1,
468
- }),
466
+ updateNumber: (workflowState.metadata?.updateNumber ?? 0) + 1
467
+ })
469
468
  };
470
469
  bumpVersion();
471
- notifyWorkflowChange("node_move");
470
+ notifyWorkflowChange('node_move');
472
471
  },
473
472
  /**
474
473
  * Update edges
@@ -487,11 +486,11 @@ export const workflowActions = {
487
486
  edges,
488
487
  metadata: buildMetadata(workflowState.metadata, {
489
488
  versionId,
490
- updateNumber: (workflowState.metadata?.updateNumber ?? 0) + 1,
491
- }),
489
+ updateNumber: (workflowState.metadata?.updateNumber ?? 0) + 1
490
+ })
492
491
  };
493
492
  bumpVersion();
494
- notifyWorkflowChange("edge_add");
493
+ notifyWorkflowChange('edge_add');
495
494
  },
496
495
  /**
497
496
  * Update workflow name
@@ -502,25 +501,25 @@ export const workflowActions = {
502
501
  workflowState = {
503
502
  ...workflowState,
504
503
  name,
505
- metadata: buildMetadata(workflowState.metadata),
504
+ metadata: buildMetadata(workflowState.metadata)
506
505
  };
507
506
  bumpVersion();
508
- notifyWorkflowChange("name");
507
+ notifyWorkflowChange('name');
509
508
  },
510
509
  /**
511
510
  * Add a node
512
511
  */
513
512
  addNode: (node) => {
514
- pushToHistory("Add node");
513
+ pushToHistory('Add node');
515
514
  if (!workflowState)
516
515
  return;
517
516
  workflowState = {
518
517
  ...workflowState,
519
518
  nodes: [...workflowState.nodes, node],
520
- metadata: buildMetadata(workflowState.metadata),
519
+ metadata: buildMetadata(workflowState.metadata)
521
520
  };
522
521
  bumpVersion();
523
- notifyWorkflowChange("node_add");
522
+ notifyWorkflowChange('node_add');
524
523
  },
525
524
  /**
526
525
  * Remove a node
@@ -529,47 +528,47 @@ export const workflowActions = {
529
528
  * A single undo will restore both the node and its edges.
530
529
  */
531
530
  removeNode: (nodeId) => {
532
- pushToHistory("Delete node");
531
+ pushToHistory('Delete node');
533
532
  if (!workflowState)
534
533
  return;
535
534
  workflowState = {
536
535
  ...workflowState,
537
536
  nodes: workflowState.nodes.filter((node) => node.id !== nodeId),
538
537
  edges: workflowState.edges.filter((edge) => edge.source !== nodeId && edge.target !== nodeId),
539
- metadata: buildMetadata(workflowState.metadata),
538
+ metadata: buildMetadata(workflowState.metadata)
540
539
  };
541
540
  bumpVersion();
542
- notifyWorkflowChange("node_remove");
541
+ notifyWorkflowChange('node_remove');
543
542
  },
544
543
  /**
545
544
  * Add an edge
546
545
  */
547
546
  addEdge: (edge) => {
548
- pushToHistory("Add connection");
547
+ pushToHistory('Add connection');
549
548
  if (!workflowState)
550
549
  return;
551
550
  workflowState = {
552
551
  ...workflowState,
553
552
  edges: [...workflowState.edges, edge],
554
- metadata: buildMetadata(workflowState.metadata),
553
+ metadata: buildMetadata(workflowState.metadata)
555
554
  };
556
555
  bumpVersion();
557
- notifyWorkflowChange("edge_add");
556
+ notifyWorkflowChange('edge_add');
558
557
  },
559
558
  /**
560
559
  * Remove an edge
561
560
  */
562
561
  removeEdge: (edgeId) => {
563
- pushToHistory("Delete connection");
562
+ pushToHistory('Delete connection');
564
563
  if (!workflowState)
565
564
  return;
566
565
  workflowState = {
567
566
  ...workflowState,
568
567
  edges: workflowState.edges.filter((edge) => edge.id !== edgeId),
569
- metadata: buildMetadata(workflowState.metadata),
568
+ metadata: buildMetadata(workflowState.metadata)
570
569
  };
571
570
  bumpVersion();
572
- notifyWorkflowChange("edge_remove");
571
+ notifyWorkflowChange('edge_remove');
573
572
  },
574
573
  /**
575
574
  * Update a specific node
@@ -577,16 +576,16 @@ export const workflowActions = {
577
576
  * Used for config changes. Pushes to history for undo support.
578
577
  */
579
578
  updateNode: (nodeId, updates) => {
580
- pushToHistory("Update node config");
579
+ pushToHistory('Update node config');
581
580
  if (!workflowState)
582
581
  return;
583
582
  workflowState = {
584
583
  ...workflowState,
585
584
  nodes: workflowState.nodes.map((node) => node.id === nodeId ? { ...node, ...updates } : node),
586
- metadata: buildMetadata(workflowState.metadata),
585
+ metadata: buildMetadata(workflowState.metadata)
587
586
  };
588
587
  bumpVersion();
589
- notifyWorkflowChange("node_config");
588
+ notifyWorkflowChange('node_config');
590
589
  },
591
590
  /**
592
591
  * Clear the workflow
@@ -610,10 +609,10 @@ export const workflowActions = {
610
609
  return;
611
610
  workflowState = {
612
611
  ...workflowState,
613
- metadata: buildMetadata(workflowState.metadata, metadata),
612
+ metadata: buildMetadata(workflowState.metadata, metadata)
614
613
  };
615
614
  bumpVersion();
616
- notifyWorkflowChange("metadata");
615
+ notifyWorkflowChange('metadata');
617
616
  },
618
617
  /**
619
618
  * Batch update nodes and edges
@@ -622,7 +621,7 @@ export const workflowActions = {
622
621
  * Creates a single history entry for the entire batch.
623
622
  */
624
623
  batchUpdate: (updates) => {
625
- pushToHistory("Batch update");
624
+ pushToHistory('Batch update');
626
625
  if (!workflowState)
627
626
  return;
628
627
  workflowState = {
@@ -631,12 +630,12 @@ export const workflowActions = {
631
630
  ...(updates.edges && { edges: updates.edges }),
632
631
  ...(updates.name && { name: updates.name }),
633
632
  ...(updates.description !== undefined && {
634
- description: updates.description,
633
+ description: updates.description
635
634
  }),
636
- metadata: buildMetadata(workflowState.metadata, updates.metadata ?? undefined),
635
+ metadata: buildMetadata(workflowState.metadata, updates.metadata ?? undefined)
637
636
  };
638
637
  bumpVersion();
639
- notifyWorkflowChange("metadata");
638
+ notifyWorkflowChange('metadata');
640
639
  },
641
640
  /**
642
641
  * Swap a node — atomically replaces nodes and edges with a descriptive history entry.
@@ -645,17 +644,17 @@ export const workflowActions = {
645
644
  * records a meaningful description for the undo history.
646
645
  */
647
646
  swapNode: (updates) => {
648
- pushToHistory(updates.description ?? "Swap node");
647
+ pushToHistory(updates.description ?? 'Swap node');
649
648
  if (!workflowState)
650
649
  return;
651
650
  workflowState = {
652
651
  ...workflowState,
653
652
  nodes: updates.nodes,
654
653
  edges: updates.edges,
655
- metadata: buildMetadata(workflowState.metadata),
654
+ metadata: buildMetadata(workflowState.metadata)
656
655
  };
657
656
  bumpVersion();
658
- notifyWorkflowChange("node_swap");
657
+ notifyWorkflowChange('node_swap');
659
658
  },
660
659
  /**
661
660
  * Push current state to history manually
@@ -668,5 +667,5 @@ export const workflowActions = {
668
667
  */
669
668
  pushHistory: (description, workflow) => {
670
669
  pushToHistory(description, workflow);
671
- },
670
+ }
672
671
  };
@@ -3,28 +3,25 @@
3
3
  matching how overlay components (e.g. CanvasBanner) appear in the workflow editor.
4
4
  -->
5
5
  <script lang="ts">
6
- import { SvelteFlow, Controls } from "@xyflow/svelte";
7
- import type { ColorMode } from "@xyflow/svelte";
8
- import "@xyflow/svelte/dist/style.css";
9
- import type { Snippet } from "svelte";
6
+ import { SvelteFlow, Controls } from '@xyflow/svelte';
7
+ import type { ColorMode } from '@xyflow/svelte';
8
+ import '@xyflow/svelte/dist/style.css';
9
+ import type { Snippet } from 'svelte';
10
10
 
11
11
  let { children }: { children: Snippet } = $props();
12
12
 
13
13
  // Watch the data-theme attribute set by Storybook's addon-themes
14
14
  let colorMode = $state<ColorMode>(
15
- (document.documentElement.getAttribute("data-theme") as ColorMode) ||
16
- "light",
15
+ (document.documentElement.getAttribute('data-theme') as ColorMode) || 'light'
17
16
  );
18
17
 
19
18
  $effect(() => {
20
19
  const observer = new MutationObserver(() => {
21
- colorMode =
22
- (document.documentElement.getAttribute("data-theme") as ColorMode) ||
23
- "light";
20
+ colorMode = (document.documentElement.getAttribute('data-theme') as ColorMode) || 'light';
24
21
  });
25
22
  observer.observe(document.documentElement, {
26
23
  attributes: true,
27
- attributeFilter: ["data-theme"],
24
+ attributeFilter: ['data-theme']
28
25
  });
29
26
  return () => observer.disconnect();
30
27
  });
@@ -1,5 +1,5 @@
1
- import "@xyflow/svelte/dist/style.css";
2
- import type { Snippet } from "svelte";
1
+ import '@xyflow/svelte/dist/style.css';
2
+ import type { Snippet } from 'svelte';
3
3
  type $$ComponentProps = {
4
4
  children: Snippet;
5
5
  };
@@ -3,13 +3,13 @@
3
3
  to showcase edge rendering with arrowhead markers.
4
4
  -->
5
5
  <script lang="ts">
6
- import { SvelteFlow, Controls, MarkerType } from "@xyflow/svelte";
7
- import type { Node, Edge, ColorMode } from "@xyflow/svelte";
8
- import "@xyflow/svelte/dist/style.css";
9
- import UniversalNode from "../components/UniversalNode.svelte";
10
- import FlowDropEdge from "../components/FlowDropEdge.svelte";
11
- import { registerBuiltinNodes } from "../registry/builtinNodes.js";
12
- import { EDGE_MARKER_SIZES } from "../config/constants.js";
6
+ import { SvelteFlow, Controls, MarkerType } from '@xyflow/svelte';
7
+ import type { Node, Edge, ColorMode } from '@xyflow/svelte';
8
+ import '@xyflow/svelte/dist/style.css';
9
+ import UniversalNode from '../components/UniversalNode.svelte';
10
+ import FlowDropEdge from '../components/FlowDropEdge.svelte';
11
+ import { registerBuiltinNodes } from '../registry/builtinNodes.js';
12
+ import { EDGE_MARKER_SIZES } from '../config/constants.js';
13
13
 
14
14
  interface Props {
15
15
  sourceData: Record<string, unknown>;
@@ -25,46 +25,46 @@
25
25
  let {
26
26
  sourceData,
27
27
  targetData,
28
- edgeStyle = "stroke: #64748b;",
29
- edgeClass = "flowdrop--edge--data",
30
- edgeMarkerColor = "#64748b",
28
+ edgeStyle = 'stroke: #64748b;',
29
+ edgeClass = 'flowdrop--edge--data',
30
+ edgeMarkerColor = '#64748b',
31
31
  edgeMarkerSize = EDGE_MARKER_SIZES.data,
32
- sourceHandleId = "output",
33
- targetHandleId = "input",
32
+ sourceHandleId = 'output',
33
+ targetHandleId = 'input'
34
34
  }: Props = $props();
35
35
 
36
36
  registerBuiltinNodes();
37
37
 
38
38
  const nodeTypes = {
39
- universalNode: UniversalNode,
39
+ universalNode: UniversalNode
40
40
  };
41
41
 
42
42
  const edgeTypes = {
43
- default: FlowDropEdge,
43
+ default: FlowDropEdge
44
44
  };
45
45
 
46
- const SOURCE_ID = "source-node";
47
- const TARGET_ID = "target-node";
46
+ const SOURCE_ID = 'source-node';
47
+ const TARGET_ID = 'target-node';
48
48
 
49
49
  let nodes = $derived<Node[]>([
50
50
  {
51
51
  id: SOURCE_ID,
52
- type: "universalNode",
52
+ type: 'universalNode',
53
53
  position: { x: 0, y: 0 },
54
- data: { ...sourceData, nodeId: SOURCE_ID },
54
+ data: { ...sourceData, nodeId: SOURCE_ID }
55
55
  },
56
56
  {
57
57
  id: TARGET_ID,
58
- type: "universalNode",
58
+ type: 'universalNode',
59
59
  position: { x: 350, y: 0 },
60
- data: { ...targetData, nodeId: TARGET_ID },
61
- },
60
+ data: { ...targetData, nodeId: TARGET_ID }
61
+ }
62
62
  ]);
63
63
 
64
64
  // Handle IDs follow the format: {nodeId}-{input|output}-{portId}
65
65
  let edges = $derived<Edge[]>([
66
66
  {
67
- id: "edge-1",
67
+ id: 'edge-1',
68
68
  source: SOURCE_ID,
69
69
  target: TARGET_ID,
70
70
  sourceHandle: `${SOURCE_ID}-output-${sourceHandleId}`,
@@ -74,25 +74,22 @@
74
74
  markerEnd: {
75
75
  type: MarkerType.ArrowClosed,
76
76
  ...edgeMarkerSize,
77
- color: edgeMarkerColor,
78
- },
79
- },
77
+ color: edgeMarkerColor
78
+ }
79
+ }
80
80
  ]);
81
81
 
82
82
  let colorMode = $state<ColorMode>(
83
- (document.documentElement.getAttribute("data-theme") as ColorMode) ||
84
- "light",
83
+ (document.documentElement.getAttribute('data-theme') as ColorMode) || 'light'
85
84
  );
86
85
 
87
86
  $effect(() => {
88
87
  const observer = new MutationObserver(() => {
89
- colorMode =
90
- (document.documentElement.getAttribute("data-theme") as ColorMode) ||
91
- "light";
88
+ colorMode = (document.documentElement.getAttribute('data-theme') as ColorMode) || 'light';
92
89
  });
93
90
  observer.observe(document.documentElement, {
94
91
  attributes: true,
95
- attributeFilter: ["data-theme"],
92
+ attributeFilter: ['data-theme']
96
93
  });
97
94
  return () => observer.disconnect();
98
95
  });
@@ -1,4 +1,4 @@
1
- import "@xyflow/svelte/dist/style.css";
1
+ import '@xyflow/svelte/dist/style.css';
2
2
  interface Props {
3
3
  sourceData: Record<string, unknown>;
4
4
  targetData: Record<string, unknown>;
@@ -3,49 +3,43 @@
3
3
  inside a canvas, matching how they appear in the workflow editor.
4
4
  -->
5
5
  <script lang="ts">
6
- import { SvelteFlow, Controls } from "@xyflow/svelte";
7
- import type { Node, ColorMode } from "@xyflow/svelte";
8
- import "@xyflow/svelte/dist/style.css";
9
- import UniversalNode from "../components/UniversalNode.svelte";
10
- import { registerBuiltinNodes } from "../registry/builtinNodes.js";
6
+ import { SvelteFlow, Controls } from '@xyflow/svelte';
7
+ import type { Node, ColorMode } from '@xyflow/svelte';
8
+ import '@xyflow/svelte/dist/style.css';
9
+ import UniversalNode from '../components/UniversalNode.svelte';
10
+ import { registerBuiltinNodes } from '../registry/builtinNodes.js';
11
11
 
12
- let {
13
- data,
14
- selected = false,
15
- }: { data: Record<string, unknown>; selected?: boolean } = $props();
12
+ let { data, selected = false }: { data: Record<string, unknown>; selected?: boolean } = $props();
16
13
 
17
14
  // Ensure built-in node components are registered
18
15
  registerBuiltinNodes();
19
16
 
20
17
  const nodeTypes = {
21
- universalNode: UniversalNode,
18
+ universalNode: UniversalNode
22
19
  };
23
20
 
24
21
  let nodes = $derived<Node[]>([
25
22
  {
26
- id: "story-node",
27
- type: "universalNode",
23
+ id: 'story-node',
24
+ type: 'universalNode',
28
25
  position: { x: 0, y: 0 },
29
26
  selected,
30
- data,
31
- },
27
+ data
28
+ }
32
29
  ]);
33
30
 
34
31
  // Watch the data-theme attribute set by Storybook's addon-themes
35
32
  let colorMode = $state<ColorMode>(
36
- (document.documentElement.getAttribute("data-theme") as ColorMode) ||
37
- "light",
33
+ (document.documentElement.getAttribute('data-theme') as ColorMode) || 'light'
38
34
  );
39
35
 
40
36
  $effect(() => {
41
37
  const observer = new MutationObserver(() => {
42
- colorMode =
43
- (document.documentElement.getAttribute("data-theme") as ColorMode) ||
44
- "light";
38
+ colorMode = (document.documentElement.getAttribute('data-theme') as ColorMode) || 'light';
45
39
  });
46
40
  observer.observe(document.documentElement, {
47
41
  attributes: true,
48
- attributeFilter: ["data-theme"],
42
+ attributeFilter: ['data-theme']
49
43
  });
50
44
  return () => observer.disconnect();
51
45
  });
@@ -1,4 +1,4 @@
1
- import "@xyflow/svelte/dist/style.css";
1
+ import '@xyflow/svelte/dist/style.css';
2
2
  type $$ComponentProps = {
3
3
  data: Record<string, unknown>;
4
4
  selected?: boolean;
@@ -2,7 +2,7 @@
2
2
  * Shared story utilities
3
3
  * Reusable mock data factories for Storybook stories
4
4
  */
5
- import type { ConfirmationConfig, ChoiceConfig, TextConfig, ReviewConfig, ReviewChange } from "../types/interrupt.js";
5
+ import type { ConfirmationConfig, ChoiceConfig, TextConfig, ReviewConfig, ReviewChange } from '../types/interrupt.js';
6
6
  export declare function createSampleNodeData(overrides?: Record<string, unknown>): {
7
7
  label: string;
8
8
  config: {};
@@ -28,7 +28,7 @@ export declare function createSampleNodeData(overrides?: Record<string, unknown>
28
28
  }[];
29
29
  };
30
30
  };
31
- export declare function createTerminalNodeData(variant?: "start" | "end" | "exit"): {
31
+ export declare function createTerminalNodeData(variant?: 'start' | 'end' | 'exit'): {
32
32
  label: string;
33
33
  config: {};
34
34
  metadata: {