@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
@@ -35,7 +35,7 @@
35
35
  /**
36
36
  * Initial idle state
37
37
  */
38
- export const initialState = { status: "idle" };
38
+ export const initialState = { status: 'idle' };
39
39
  /**
40
40
  * Transition function for the interrupt state machine
41
41
  *
@@ -58,21 +58,21 @@ export const initialState = { status: "idle" };
58
58
  */
59
59
  export function transition(state, action) {
60
60
  switch (state.status) {
61
- case "idle":
61
+ case 'idle':
62
62
  return transitionFromIdle(state, action);
63
- case "submitting":
63
+ case 'submitting':
64
64
  return transitionFromSubmitting(state, action);
65
- case "error":
65
+ case 'error':
66
66
  return transitionFromError(state, action);
67
- case "resolved":
67
+ case 'resolved':
68
68
  return transitionFromResolved(state, action);
69
- case "cancelled":
69
+ case 'cancelled':
70
70
  return transitionFromCancelled(state, action);
71
71
  default:
72
72
  return {
73
73
  state,
74
74
  valid: false,
75
- error: `Unknown state: ${state.status}`,
75
+ error: `Unknown state: ${state.status}`
76
76
  };
77
77
  }
78
78
  }
@@ -81,31 +81,31 @@ export function transition(state, action) {
81
81
  */
82
82
  function transitionFromIdle(_state, action) {
83
83
  switch (action.type) {
84
- case "SUBMIT":
84
+ case 'SUBMIT':
85
85
  return {
86
86
  state: {
87
- status: "submitting",
87
+ status: 'submitting',
88
88
  pendingValue: action.value,
89
- isCancelAction: false,
89
+ isCancelAction: false
90
90
  },
91
- valid: true,
91
+ valid: true
92
92
  };
93
- case "CANCEL":
93
+ case 'CANCEL':
94
94
  return {
95
95
  state: {
96
- status: "submitting",
96
+ status: 'submitting',
97
97
  pendingValue: undefined,
98
- isCancelAction: true,
98
+ isCancelAction: true
99
99
  },
100
- valid: true,
100
+ valid: true
101
101
  };
102
- case "RESET":
102
+ case 'RESET':
103
103
  return { state: initialState, valid: true };
104
104
  default:
105
105
  return {
106
106
  state: _state,
107
107
  valid: false,
108
- error: `Cannot ${action.type} from idle state`,
108
+ error: `Cannot ${action.type} from idle state`
109
109
  };
110
110
  }
111
111
  }
@@ -114,49 +114,49 @@ function transitionFromIdle(_state, action) {
114
114
  */
115
115
  function transitionFromSubmitting(state, action) {
116
116
  switch (action.type) {
117
- case "SUCCESS":
117
+ case 'SUCCESS':
118
118
  if (state.isCancelAction) {
119
119
  return {
120
120
  state: {
121
- status: "cancelled",
122
- cancelledAt: new Date().toISOString(),
121
+ status: 'cancelled',
122
+ cancelledAt: new Date().toISOString()
123
123
  },
124
- valid: true,
124
+ valid: true
125
125
  };
126
126
  }
127
127
  return {
128
128
  state: {
129
- status: "resolved",
129
+ status: 'resolved',
130
130
  value: state.pendingValue,
131
- resolvedAt: new Date().toISOString(),
131
+ resolvedAt: new Date().toISOString()
132
132
  },
133
- valid: true,
133
+ valid: true
134
134
  };
135
- case "FAILURE":
135
+ case 'FAILURE':
136
136
  return {
137
137
  state: {
138
- status: "error",
138
+ status: 'error',
139
139
  error: action.error,
140
140
  failedValue: state.pendingValue,
141
- wasCancelAction: state.isCancelAction,
141
+ wasCancelAction: state.isCancelAction
142
142
  },
143
- valid: true,
143
+ valid: true
144
144
  };
145
- case "RESET":
145
+ case 'RESET':
146
146
  return { state: initialState, valid: true };
147
147
  // Prevent double-submit
148
- case "SUBMIT":
149
- case "CANCEL":
148
+ case 'SUBMIT':
149
+ case 'CANCEL':
150
150
  return {
151
151
  state,
152
152
  valid: false,
153
- error: "Cannot submit/cancel while already submitting",
153
+ error: 'Cannot submit/cancel while already submitting'
154
154
  };
155
155
  default:
156
156
  return {
157
157
  state,
158
158
  valid: false,
159
- error: `Cannot ${action.type} from submitting state`,
159
+ error: `Cannot ${action.type} from submitting state`
160
160
  };
161
161
  }
162
162
  }
@@ -165,41 +165,41 @@ function transitionFromSubmitting(state, action) {
165
165
  */
166
166
  function transitionFromError(state, action) {
167
167
  switch (action.type) {
168
- case "RETRY":
168
+ case 'RETRY':
169
169
  return {
170
170
  state: {
171
- status: "submitting",
171
+ status: 'submitting',
172
172
  pendingValue: state.failedValue,
173
- isCancelAction: state.wasCancelAction,
173
+ isCancelAction: state.wasCancelAction
174
174
  },
175
- valid: true,
175
+ valid: true
176
176
  };
177
- case "SUBMIT":
177
+ case 'SUBMIT':
178
178
  // Allow resubmitting with new value
179
179
  return {
180
180
  state: {
181
- status: "submitting",
181
+ status: 'submitting',
182
182
  pendingValue: action.value,
183
- isCancelAction: false,
183
+ isCancelAction: false
184
184
  },
185
- valid: true,
185
+ valid: true
186
186
  };
187
- case "CANCEL":
187
+ case 'CANCEL':
188
188
  return {
189
189
  state: {
190
- status: "submitting",
190
+ status: 'submitting',
191
191
  pendingValue: undefined,
192
- isCancelAction: true,
192
+ isCancelAction: true
193
193
  },
194
- valid: true,
194
+ valid: true
195
195
  };
196
- case "RESET":
196
+ case 'RESET':
197
197
  return { state: initialState, valid: true };
198
198
  default:
199
199
  return {
200
200
  state,
201
201
  valid: false,
202
- error: `Cannot ${action.type} from error state`,
202
+ error: `Cannot ${action.type} from error state`
203
203
  };
204
204
  }
205
205
  }
@@ -207,26 +207,26 @@ function transitionFromError(state, action) {
207
207
  * Transitions from resolved state (terminal - only reset allowed)
208
208
  */
209
209
  function transitionFromResolved(state, action) {
210
- if (action.type === "RESET") {
210
+ if (action.type === 'RESET') {
211
211
  return { state: initialState, valid: true };
212
212
  }
213
213
  return {
214
214
  state,
215
215
  valid: false,
216
- error: `Cannot ${action.type} from resolved state - interrupt already completed`,
216
+ error: `Cannot ${action.type} from resolved state - interrupt already completed`
217
217
  };
218
218
  }
219
219
  /**
220
220
  * Transitions from cancelled state (terminal - only reset allowed)
221
221
  */
222
222
  function transitionFromCancelled(state, action) {
223
- if (action.type === "RESET") {
223
+ if (action.type === 'RESET') {
224
224
  return { state: initialState, valid: true };
225
225
  }
226
226
  return {
227
227
  state,
228
228
  valid: false,
229
- error: `Cannot ${action.type} from cancelled state - interrupt already cancelled`,
229
+ error: `Cannot ${action.type} from cancelled state - interrupt already cancelled`
230
230
  };
231
231
  }
232
232
  // =========================================================================
@@ -239,7 +239,7 @@ function transitionFromCancelled(state, action) {
239
239
  * @returns True if the interrupt is finished
240
240
  */
241
241
  export function isTerminalState(state) {
242
- return state.status === "resolved" || state.status === "cancelled";
242
+ return state.status === 'resolved' || state.status === 'cancelled';
243
243
  }
244
244
  /**
245
245
  * Check if the interrupt is currently submitting
@@ -248,7 +248,7 @@ export function isTerminalState(state) {
248
248
  * @returns True if submitting
249
249
  */
250
250
  export function isSubmitting(state) {
251
- return state.status === "submitting";
251
+ return state.status === 'submitting';
252
252
  }
253
253
  /**
254
254
  * Check if the interrupt has an error
@@ -257,7 +257,7 @@ export function isSubmitting(state) {
257
257
  * @returns True if in error state
258
258
  */
259
259
  export function hasError(state) {
260
- return state.status === "error";
260
+ return state.status === 'error';
261
261
  }
262
262
  /**
263
263
  * Check if the interrupt can accept user input
@@ -266,7 +266,7 @@ export function hasError(state) {
266
266
  * @returns True if idle or error (can submit)
267
267
  */
268
268
  export function canSubmit(state) {
269
- return state.status === "idle" || state.status === "error";
269
+ return state.status === 'idle' || state.status === 'error';
270
270
  }
271
271
  /**
272
272
  * Get the error message if in error state
@@ -275,7 +275,7 @@ export function canSubmit(state) {
275
275
  * @returns Error message or undefined
276
276
  */
277
277
  export function getErrorMessage(state) {
278
- return state.status === "error" ? state.error : undefined;
278
+ return state.status === 'error' ? state.error : undefined;
279
279
  }
280
280
  /**
281
281
  * Get the resolved value if in resolved state
@@ -284,7 +284,7 @@ export function getErrorMessage(state) {
284
284
  * @returns Resolved value or undefined
285
285
  */
286
286
  export function getResolvedValue(state) {
287
- return state.status === "resolved" ? state.value : undefined;
287
+ return state.status === 'resolved' ? state.value : undefined;
288
288
  }
289
289
  /**
290
290
  * Map InterruptState status to legacy InterruptStatus for backward compatibility
@@ -294,15 +294,15 @@ export function getResolvedValue(state) {
294
294
  */
295
295
  export function toLegacyStatus(state) {
296
296
  switch (state.status) {
297
- case "idle":
298
- case "submitting":
299
- case "error":
300
- return "pending";
301
- case "resolved":
302
- return "resolved";
303
- case "cancelled":
304
- return "cancelled";
297
+ case 'idle':
298
+ case 'submitting':
299
+ case 'error':
300
+ return 'pending';
301
+ case 'resolved':
302
+ return 'resolved';
303
+ case 'cancelled':
304
+ return 'cancelled';
305
305
  default:
306
- return "pending";
306
+ return 'pending';
307
307
  }
308
308
  }
@@ -6,11 +6,11 @@
6
6
  *
7
7
  * @module types/playground
8
8
  */
9
- import type { ConfigProperty } from "./index.js";
9
+ import type { ConfigProperty } from './index.js';
10
10
  /**
11
11
  * Status of a playground session
12
12
  */
13
- export type PlaygroundSessionStatus = "idle" | "running" | "awaiting_input" | "completed" | "failed";
13
+ export type PlaygroundSessionStatus = 'idle' | 'running' | 'awaiting_input' | 'completed' | 'failed';
14
14
  /**
15
15
  * Statuses that stop polling by default (resource efficiency)
16
16
  */
@@ -43,15 +43,15 @@ export declare function defaultIsTerminalStatus(status: PlaygroundSessionStatus)
43
43
  * - `system`: System notifications
44
44
  * - `log`: Execution log entries
45
45
  */
46
- export type PlaygroundMessageRole = "user" | "assistant" | "system" | "log";
46
+ export type PlaygroundMessageRole = 'user' | 'assistant' | 'system' | 'log';
47
47
  /**
48
48
  * Log level for log-type messages
49
49
  */
50
- export type PlaygroundMessageLevel = "info" | "warning" | "error" | "debug";
50
+ export type PlaygroundMessageLevel = 'info' | 'warning' | 'error' | 'debug';
51
51
  /**
52
52
  * Status of a playground message
53
53
  */
54
- export type PlaygroundMessageStatus = "pending" | "processing" | "completed" | "failed";
54
+ export type PlaygroundMessageStatus = 'pending' | 'processing' | 'completed' | 'failed';
55
55
  /**
56
56
  * Playground session representing a test conversation
57
57
  *
@@ -217,7 +217,7 @@ export interface PlaygroundConfig {
217
217
  /** Show timestamps on messages (default: true) */
218
218
  showTimestamps?: boolean;
219
219
  /** Show log messages inline or in collapsible section (default: "collapsible") */
220
- logDisplayMode?: "inline" | "collapsible";
220
+ logDisplayMode?: 'inline' | 'collapsible';
221
221
  /** Enable markdown rendering in messages (default: true) */
222
222
  enableMarkdown?: boolean;
223
223
  /**
@@ -303,7 +303,7 @@ export declare function hasEnableRunFlag(metadata: PlaygroundMessageMetadata | u
303
303
  /**
304
304
  * Display mode for the Playground component
305
305
  */
306
- export type PlaygroundMode = "embedded" | "standalone" | "modal";
306
+ export type PlaygroundMode = 'embedded' | 'standalone' | 'modal';
307
307
  /**
308
308
  * Chat input detection patterns for identifying chat nodes in workflows
309
309
  */
@@ -10,19 +10,19 @@
10
10
  * Statuses that stop polling by default (resource efficiency)
11
11
  */
12
12
  export const DEFAULT_STOP_POLLING_STATUSES = [
13
- "idle",
14
- "completed",
15
- "failed",
16
- "awaiting_input",
13
+ 'idle',
14
+ 'completed',
15
+ 'failed',
16
+ 'awaiting_input'
17
17
  ];
18
18
  /**
19
19
  * Statuses that are considered terminal by default (clears isExecuting)
20
20
  */
21
21
  export const DEFAULT_TERMINAL_STATUSES = [
22
- "idle",
23
- "completed",
24
- "failed",
25
- "awaiting_input",
22
+ 'idle',
23
+ 'completed',
24
+ 'failed',
25
+ 'awaiting_input'
26
26
  ];
27
27
  /**
28
28
  * Default implementation for determining if polling should stop.
@@ -63,7 +63,7 @@ export function defaultIsTerminalStatus(status) {
63
63
  * };
64
64
  * ```
65
65
  */
66
- export const ENABLE_RUN_METADATA_KEY = "enableRun";
66
+ export const ENABLE_RUN_METADATA_KEY = 'enableRun';
67
67
  /**
68
68
  * Check if a message metadata contains the enableRun flag
69
69
  *
@@ -77,11 +77,11 @@ export function hasEnableRunFlag(metadata) {
77
77
  * Chat input detection patterns for identifying chat nodes in workflows
78
78
  */
79
79
  export const CHAT_INPUT_PATTERNS = [
80
- "chat_input",
81
- "text_input",
82
- "user_input",
83
- "message_input",
84
- "prompt_input",
80
+ 'chat_input',
81
+ 'text_input',
82
+ 'user_input',
83
+ 'message_input',
84
+ 'prompt_input'
85
85
  ];
86
86
  /**
87
87
  * Check if a node type is a chat input node
@@ -12,11 +12,11 @@
12
12
  * - 'dark': Force dark theme
13
13
  * - 'auto': Follow system preference
14
14
  */
15
- export type ThemePreference = "light" | "dark" | "auto";
15
+ export type ThemePreference = 'light' | 'dark' | 'auto';
16
16
  /**
17
17
  * Resolved theme (actual applied theme, never 'auto')
18
18
  */
19
- export type ResolvedTheme = "light" | "dark";
19
+ export type ResolvedTheme = 'light' | 'dark';
20
20
  /**
21
21
  * Theme-related settings
22
22
  */
@@ -56,13 +56,13 @@ export interface UISettings {
56
56
  /** Enable compact mode for denser UI */
57
57
  compactMode: boolean;
58
58
  /** Active theme name — overridden by the theme prop when explicitly provided */
59
- theme: "default" | "minimal";
59
+ theme: 'default' | 'minimal';
60
60
  /** Whether the command console panel is open */
61
61
  consoleOpen: boolean;
62
62
  /** Height of the command console panel in pixels */
63
63
  consoleHeight: number;
64
64
  /** Active tab in the bottom panel */
65
- bottomPanelTab: "console" | "chat";
65
+ bottomPanelTab: 'console' | 'chat';
66
66
  }
67
67
  /**
68
68
  * Application behavior and automation settings
@@ -76,6 +76,8 @@ export interface BehaviorSettings {
76
76
  undoHistoryLimit: number;
77
77
  /** Show confirmation dialog before deleting nodes */
78
78
  confirmDelete: boolean;
79
+ /** Automatically re-submit batch failures to the AI for self-correction */
80
+ chatAutoRetry: boolean;
79
81
  }
80
82
  /**
81
83
  * API connection and request settings
@@ -179,7 +181,7 @@ export declare const SETTINGS_STORAGE_KEY = "flowdrop-settings";
179
181
  /**
180
182
  * API sync status
181
183
  */
182
- export type SyncStatus = "idle" | "syncing" | "synced" | "error";
184
+ export type SyncStatus = 'idle' | 'syncing' | 'synced' | 'error';
183
185
  /**
184
186
  * Settings store state including sync metadata
185
187
  */
@@ -9,32 +9,26 @@
9
9
  /**
10
10
  * All available settings categories
11
11
  */
12
- export const SETTINGS_CATEGORIES = [
13
- "theme",
14
- "editor",
15
- "ui",
16
- "behavior",
17
- "api",
18
- ];
12
+ export const SETTINGS_CATEGORIES = ['theme', 'editor', 'ui', 'behavior', 'api'];
19
13
  /**
20
14
  * Human-readable labels for settings categories
21
15
  */
22
16
  export const SETTINGS_CATEGORY_LABELS = {
23
- theme: "Theme",
24
- editor: "Editor",
25
- ui: "UI",
26
- behavior: "Behavior",
27
- api: "API",
17
+ theme: 'Theme',
18
+ editor: 'Editor',
19
+ ui: 'UI',
20
+ behavior: 'Behavior',
21
+ api: 'API'
28
22
  };
29
23
  /**
30
24
  * Icons for settings categories (Iconify icon names)
31
25
  */
32
26
  export const SETTINGS_CATEGORY_ICONS = {
33
- theme: "mdi:palette",
34
- editor: "mdi:grid",
35
- ui: "mdi:view-dashboard",
36
- behavior: "mdi:cog-play",
37
- api: "mdi:api",
27
+ theme: 'mdi:palette',
28
+ editor: 'mdi:grid',
29
+ ui: 'mdi:view-dashboard',
30
+ behavior: 'mdi:cog-play',
31
+ api: 'mdi:api'
38
32
  };
39
33
  // =========================================================================
40
34
  // Default Settings
@@ -43,7 +37,7 @@ export const SETTINGS_CATEGORY_ICONS = {
43
37
  * Default theme settings
44
38
  */
45
39
  export const DEFAULT_THEME_SETTINGS = {
46
- preference: "dark",
40
+ preference: 'dark'
47
41
  };
48
42
  /**
49
43
  * Default editor settings
@@ -56,7 +50,7 @@ export const DEFAULT_EDITOR_SETTINGS = {
56
50
  defaultZoom: 1,
57
51
  fitViewOnLoad: true,
58
52
  proximityConnect: false,
59
- proximityConnectDistance: 150,
53
+ proximityConnectDistance: 150
60
54
  };
61
55
  /**
62
56
  * Default UI settings
@@ -65,10 +59,10 @@ export const DEFAULT_UI_SETTINGS = {
65
59
  sidebarWidth: 280,
66
60
  sidebarCollapsed: false,
67
61
  compactMode: false,
68
- theme: "default",
62
+ theme: 'default',
69
63
  consoleOpen: false,
70
64
  consoleHeight: 300,
71
- bottomPanelTab: "console",
65
+ bottomPanelTab: 'console'
72
66
  };
73
67
  /**
74
68
  * Default behavior settings
@@ -78,6 +72,7 @@ export const DEFAULT_BEHAVIOR_SETTINGS = {
78
72
  autoSaveInterval: 30000,
79
73
  undoHistoryLimit: 50,
80
74
  confirmDelete: false,
75
+ chatAutoRetry: true
81
76
  };
82
77
  /**
83
78
  * Default API settings
@@ -86,7 +81,7 @@ export const DEFAULT_API_SETTINGS = {
86
81
  timeout: 30000,
87
82
  retryEnabled: true,
88
83
  retryAttempts: 3,
89
- cacheEnabled: false,
84
+ cacheEnabled: false
90
85
  };
91
86
  /**
92
87
  * Complete default settings object
@@ -96,7 +91,7 @@ export const DEFAULT_SETTINGS = {
96
91
  editor: DEFAULT_EDITOR_SETTINGS,
97
92
  ui: DEFAULT_UI_SETTINGS,
98
93
  behavior: DEFAULT_BEHAVIOR_SETTINGS,
99
- api: DEFAULT_API_SETTINGS,
94
+ api: DEFAULT_API_SETTINGS
100
95
  };
101
96
  // =========================================================================
102
97
  // Settings Persistence Types
@@ -104,4 +99,4 @@ export const DEFAULT_SETTINGS = {
104
99
  /**
105
100
  * localStorage key for persisting settings
106
101
  */
107
- export const SETTINGS_STORAGE_KEY = "flowdrop-settings";
102
+ export const SETTINGS_STORAGE_KEY = 'flowdrop-settings';
@@ -28,4 +28,4 @@ export interface FlowDropSkin {
28
28
  /** CSS token overrides injected as [data-theme='dark'] rules — active in dark mode only */
29
29
  darkTokens?: FlowDropSkinTokens;
30
30
  }
31
- export type FlowDropSkinName = "default" | "slate";
31
+ export type FlowDropSkinName = 'default' | 'slate';
@@ -1,4 +1,4 @@
1
- import type { FlowDropSkin } from "./skin.js";
1
+ import type { FlowDropSkin } from './skin.js';
2
2
  /**
3
3
  * Behavioral configuration bundled with a theme.
4
4
  * These are initial-state flags, not CSS — they control runtime defaults.
@@ -32,4 +32,4 @@ export interface FlowDropTheme {
32
32
  /** Behavioral configuration defaults */
33
33
  config?: FlowDropThemeConfig;
34
34
  }
35
- export type FlowDropThemeName = "default" | "minimal";
35
+ export type FlowDropThemeName = 'default' | 'minimal';
@@ -35,7 +35,7 @@
35
35
  * Supported UISchema element types.
36
36
  * Designed for future extension with HorizontalLayout, Categorization, etc.
37
37
  */
38
- export type UISchemaElementType = "VerticalLayout" | "Group" | "Control";
38
+ export type UISchemaElementType = 'VerticalLayout' | 'Group' | 'Control';
39
39
  /**
40
40
  * Base interface for all UISchema elements.
41
41
  */
@@ -53,7 +53,7 @@ export interface UISchemaElementBase {
53
53
  * ```
54
54
  */
55
55
  export interface UISchemaControl extends UISchemaElementBase {
56
- type: "Control";
56
+ type: 'Control';
57
57
  /**
58
58
  * JSON Pointer to the property in the data schema.
59
59
  * Must follow the format: #/properties/<fieldName>
@@ -81,7 +81,7 @@ export interface UISchemaControl extends UISchemaElementBase {
81
81
  * ```
82
82
  */
83
83
  export interface UISchemaVerticalLayout extends UISchemaElementBase {
84
- type: "VerticalLayout";
84
+ type: 'VerticalLayout';
85
85
  /** Child elements to render vertically */
86
86
  elements: UISchemaElement[];
87
87
  }
@@ -105,7 +105,7 @@ export interface UISchemaVerticalLayout extends UISchemaElementBase {
105
105
  * ```
106
106
  */
107
107
  export interface UISchemaGroup extends UISchemaElementBase {
108
- type: "Group";
108
+ type: 'Group';
109
109
  /** Display label for the fieldset legend / summary */
110
110
  label: string;
111
111
  /** Child elements within the group */
@@ -35,17 +35,17 @@
35
35
  * Type guard: checks if element is a Control
36
36
  */
37
37
  export function isUISchemaControl(element) {
38
- return element.type === "Control";
38
+ return element.type === 'Control';
39
39
  }
40
40
  /**
41
41
  * Type guard: checks if element is a VerticalLayout
42
42
  */
43
43
  export function isUISchemaVerticalLayout(element) {
44
- return element.type === "VerticalLayout";
44
+ return element.type === 'VerticalLayout';
45
45
  }
46
46
  /**
47
47
  * Type guard: checks if element is a Group
48
48
  */
49
49
  export function isUISchemaGroup(element) {
50
- return element.type === "Group";
50
+ return element.type === 'Group';
51
51
  }
@@ -3,7 +3,7 @@
3
3
  * Ensures consistent category colors across sidebar and canvas
4
4
  * Uses BEM syntax for CSS classes
5
5
  */
6
- import type { NodeCategory, PortDataTypeConfig } from "../types/index.js";
6
+ import type { NodeCategory, PortDataTypeConfig } from '../types/index.js';
7
7
  /**
8
8
  * Category color mapping to design tokens (CSS variables)
9
9
  * Uses --fd-node-* tokens from tokens.css