@d34dman/flowdrop 0.0.30 → 0.0.31

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 (51) hide show
  1. package/dist/components/App.svelte +54 -6
  2. package/dist/components/NodeSidebar.svelte +1 -1
  3. package/dist/components/SchemaForm.svelte +14 -14
  4. package/dist/components/SchemaForm.svelte.d.ts +1 -1
  5. package/dist/components/form/FormFieldLight.svelte +66 -66
  6. package/dist/components/form/FormFieldLight.svelte.d.ts +1 -1
  7. package/dist/components/form/types.d.ts +1 -1
  8. package/dist/components/playground/ChatPanel.svelte +523 -0
  9. package/dist/components/playground/ChatPanel.svelte.d.ts +20 -0
  10. package/dist/components/playground/ExecutionLogs.svelte +486 -0
  11. package/dist/components/playground/ExecutionLogs.svelte.d.ts +14 -0
  12. package/dist/components/playground/InputCollector.svelte +444 -0
  13. package/dist/components/playground/InputCollector.svelte.d.ts +16 -0
  14. package/dist/components/playground/MessageBubble.svelte +398 -0
  15. package/dist/components/playground/MessageBubble.svelte.d.ts +15 -0
  16. package/dist/components/playground/Playground.svelte +851 -0
  17. package/dist/components/playground/Playground.svelte.d.ts +25 -0
  18. package/dist/components/playground/SessionManager.svelte +537 -0
  19. package/dist/components/playground/SessionManager.svelte.d.ts +20 -0
  20. package/dist/config/endpoints.d.ts +16 -0
  21. package/dist/config/endpoints.js +9 -0
  22. package/dist/core/index.d.ts +25 -23
  23. package/dist/core/index.js +13 -12
  24. package/dist/display/index.d.ts +2 -2
  25. package/dist/display/index.js +2 -2
  26. package/dist/editor/index.d.ts +57 -49
  27. package/dist/editor/index.js +52 -42
  28. package/dist/form/code.d.ts +4 -4
  29. package/dist/form/code.js +11 -11
  30. package/dist/form/fieldRegistry.d.ts +2 -2
  31. package/dist/form/fieldRegistry.js +8 -10
  32. package/dist/form/full.d.ts +5 -5
  33. package/dist/form/full.js +7 -7
  34. package/dist/form/index.d.ts +16 -16
  35. package/dist/form/index.js +14 -14
  36. package/dist/form/markdown.d.ts +3 -3
  37. package/dist/form/markdown.js +6 -6
  38. package/dist/index.d.ts +6 -4
  39. package/dist/index.js +9 -4
  40. package/dist/playground/index.d.ts +92 -0
  41. package/dist/playground/index.js +114 -0
  42. package/dist/playground/mount.d.ts +183 -0
  43. package/dist/playground/mount.js +178 -0
  44. package/dist/services/playgroundService.d.ts +129 -0
  45. package/dist/services/playgroundService.js +317 -0
  46. package/dist/stores/playgroundStore.d.ts +199 -0
  47. package/dist/stores/playgroundStore.js +350 -0
  48. package/dist/types/playground.d.ts +230 -0
  49. package/dist/types/playground.js +28 -0
  50. package/dist/utils/colors.js +4 -4
  51. package/package.json +6 -1
@@ -14,37 +14,38 @@
14
14
  * import { getStatusColor, createDefaultExecutionInfo } from "@d34dman/flowdrop/core";
15
15
  * ```
16
16
  */
17
+ export { isChatInputNode, CHAT_INPUT_PATTERNS } from '../types/playground.js';
17
18
  // ============================================================================
18
19
  // Authentication Providers (no dependencies)
19
20
  // ============================================================================
20
- export { StaticAuthProvider, CallbackAuthProvider, NoAuthProvider } from "../types/auth.js";
21
+ export { StaticAuthProvider, CallbackAuthProvider, NoAuthProvider } from '../types/auth.js';
21
22
  // ============================================================================
22
23
  // Event Utilities
23
24
  // ============================================================================
24
- export { DEFAULT_FEATURES, mergeFeatures } from "../types/events.js";
25
+ export { DEFAULT_FEATURES, mergeFeatures } from '../types/events.js';
25
26
  // ============================================================================
26
27
  // Utility Functions (no heavy dependencies)
27
28
  // ============================================================================
28
29
  // Node status utilities
29
- export { getStatusColor, getStatusIcon, getStatusLabel, getStatusBackgroundColor, getStatusTextColor, createDefaultExecutionInfo, updateExecutionStart, updateExecutionComplete, updateExecutionFailed, resetExecutionInfo, formatExecutionDuration, formatLastExecuted } from "../utils/nodeStatus.js";
30
+ export { getStatusColor, getStatusIcon, getStatusLabel, getStatusBackgroundColor, getStatusTextColor, createDefaultExecutionInfo, updateExecutionStart, updateExecutionComplete, updateExecutionFailed, resetExecutionInfo, formatExecutionDuration, formatLastExecuted } from '../utils/nodeStatus.js';
30
31
  // Node wrapper utilities
31
- export { createNodeWrapperConfig, shouldShowNodeStatus, getOptimalStatusPosition, getOptimalStatusSize, DEFAULT_NODE_STATUS_CONFIG } from "../utils/nodeWrapper.js";
32
+ export { createNodeWrapperConfig, shouldShowNodeStatus, getOptimalStatusPosition, getOptimalStatusSize, DEFAULT_NODE_STATUS_CONFIG } from '../utils/nodeWrapper.js';
32
33
  // Color utilities
33
- export * from "../utils/colors.js";
34
+ export * from '../utils/colors.js';
34
35
  // Icon utilities
35
- export * from "../utils/icons.js";
36
+ export * from '../utils/icons.js';
36
37
  // Config utilities
37
- export * from "../utils/config.js";
38
+ export * from '../utils/config.js';
38
39
  // Node type utilities
39
- export * from "../utils/nodeTypes.js";
40
+ export * from '../utils/nodeTypes.js';
40
41
  // Form type utilities
41
- export { isFieldOptionArray, normalizeOptions } from "../components/form/types.js";
42
+ export { isFieldOptionArray, normalizeOptions } from '../components/form/types.js';
42
43
  // ============================================================================
43
44
  // Configuration
44
45
  // ============================================================================
45
- export { DEFAULT_PORT_CONFIG } from "../config/defaultPortConfig.js";
46
- export { defaultEndpointConfig, createEndpointConfig } from "../config/endpoints.js";
46
+ export { DEFAULT_PORT_CONFIG } from '../config/defaultPortConfig.js';
47
+ export { defaultEndpointConfig, createEndpointConfig } from '../config/endpoints.js';
47
48
  // ============================================================================
48
49
  // Adapters
49
50
  // ============================================================================
50
- export * from "../adapters/WorkflowAdapter.js";
51
+ export * from '../adapters/WorkflowAdapter.js';
@@ -25,5 +25,5 @@
25
25
  * <MarkdownDisplay content={markdown} />
26
26
  * ```
27
27
  */
28
- export { default as MarkdownDisplay } from "../components/MarkdownDisplay.svelte";
29
- export { marked } from "marked";
28
+ export { default as MarkdownDisplay } from '../components/MarkdownDisplay.svelte';
29
+ export { marked } from 'marked';
@@ -28,9 +28,9 @@
28
28
  // ============================================================================
29
29
  // Display Components
30
30
  // ============================================================================
31
- export { default as MarkdownDisplay } from "../components/MarkdownDisplay.svelte";
31
+ export { default as MarkdownDisplay } from '../components/MarkdownDisplay.svelte';
32
32
  // ============================================================================
33
33
  // Re-export marked for advanced usage
34
34
  // ============================================================================
35
35
  // Users can use marked directly if they need more control
36
- export { marked } from "marked";
36
+ export { marked } from 'marked';
@@ -27,52 +27,60 @@
27
27
  * <WorkflowEditor nodes={availableNodes} />
28
28
  * ```
29
29
  */
30
- import "../registry/builtinNodes.js";
31
- export { default as WorkflowEditor } from "../components/WorkflowEditor.svelte";
32
- export { default as App } from "../components/App.svelte";
33
- export { default as WorkflowNodeComponent } from "../components/nodes/WorkflowNode.svelte";
34
- export { default as SimpleNodeComponent } from "../components/nodes/SimpleNode.svelte";
35
- export { default as ToolNodeComponent } from "../components/nodes/ToolNode.svelte";
36
- export { default as NotesNodeComponent } from "../components/nodes/NotesNode.svelte";
37
- export { default as GatewayNode } from "../components/nodes/GatewayNode.svelte";
38
- export { default as SquareNode } from "../components/nodes/SquareNode.svelte";
39
- export { default as TerminalNode } from "../components/nodes/TerminalNode.svelte";
40
- export { default as UniversalNode } from "../components/UniversalNode.svelte";
41
- export { default as NodeSidebar } from "../components/NodeSidebar.svelte";
42
- export { default as CanvasBanner } from "../components/CanvasBanner.svelte";
43
- export { default as LoadingSpinner } from "../components/LoadingSpinner.svelte";
44
- export { default as StatusIcon } from "../components/StatusIcon.svelte";
45
- export { default as StatusLabel } from "../components/StatusLabel.svelte";
46
- export { default as NodeStatusOverlay } from "../components/NodeStatusOverlay.svelte";
47
- export { default as ConfigForm } from "../components/ConfigForm.svelte";
48
- export { default as ConfigModal } from "../components/ConfigModal.svelte";
49
- export { default as ConfigPanel } from "../components/ConfigPanel.svelte";
50
- export { default as ReadOnlyDetails } from "../components/ReadOnlyDetails.svelte";
51
- export { default as ConnectionLine } from "../components/ConnectionLine.svelte";
52
- export { default as LogsSidebar } from "../components/LogsSidebar.svelte";
53
- export { default as PipelineStatus } from "../components/PipelineStatus.svelte";
54
- export { default as Navbar } from "../components/Navbar.svelte";
55
- export { default as Logo } from "../components/Logo.svelte";
56
- export { mountWorkflowEditor, mountFlowDropApp, unmountFlowDropApp } from "../svelte-app.js";
57
- export { nodeComponentRegistry, createNamespacedType, parseNamespacedType, BUILTIN_NODE_COMPONENTS, BUILTIN_NODE_TYPES, FLOWDROP_SOURCE, registerBuiltinNodes, areBuiltinsRegistered, isBuiltinType, getBuiltinTypes, resolveBuiltinAlias, registerFlowDropPlugin, unregisterFlowDropPlugin, registerCustomNode, createPlugin, isValidNamespace, getRegisteredPlugins, getPluginNodeCount } from "../registry/index.js";
58
- export { EdgeStylingHelper, NodeOperationsHelper, WorkflowOperationsHelper, ConfigurationHelper } from "../helpers/workflowEditorHelper.js";
59
- export { workflowStore, workflowActions, workflowId, workflowName, workflowNodes, workflowEdges, workflowMetadata, workflowChanged, workflowValidation, workflowMetadataChanged, connectedHandles, isDirtyStore, isDirty, markAsSaved, getWorkflow as getWorkflowFromStore, setOnDirtyStateChange, setOnWorkflowChange } from "../stores/workflowStore.js";
60
- export * from "../services/api.js";
61
- export { showSuccess, showError, showWarning, showInfo, showLoading, dismissToast, dismissAllToasts, showPromise, showConfirmation, apiToasts, workflowToasts, pipelineToasts } from "../services/toastService.js";
62
- export { NodeExecutionService, nodeExecutionService } from "../services/nodeExecutionService.js";
63
- export { saveWorkflow, updateWorkflow, getWorkflow, getWorkflows, deleteWorkflow, getWorkflowCount, initializeSampleWorkflows } from "../services/workflowStorage.js";
64
- export { globalSaveWorkflow, globalExportWorkflow, initializeGlobalSave } from "../services/globalSave.js";
65
- export { fetchPortConfig, validatePortConfig } from "../services/portConfigApi.js";
66
- export { fetchDynamicSchema, resolveExternalEditUrl, getEffectiveConfigEditOptions, clearSchemaCache, invalidateSchemaCache, hasConfigEditOptions, shouldShowExternalEdit, shouldUseDynamicSchema } from "../services/dynamicSchemaService.js";
67
- export { getDraftStorageKey, saveDraft, loadDraft, deleteDraft, hasDraft, getDraftMetadata, DraftAutoSaveManager } from "../services/draftStorage.js";
68
- export { FlowDropApiClient } from "../api/client.js";
69
- export { EnhancedFlowDropApiClient, ApiError } from "../api/enhanced-client.js";
70
- export * from "../utils/connections.js";
71
- export * from "../config/runtimeConfig.js";
72
- export type { Workflow, WorkflowNode, WorkflowEdge, NodeMetadata, NodePort, DynamicPort, Branch, ExecutionStatus, ExecutionResult, FlowDropConfig, PortConfig, ConfigSchema, ConfigProperty, ConfigEditOptions } from "../types/index.js";
73
- export type { WorkflowEditorConfig, EditorFeatures, UIConfig, APIConfig } from "../types/config.js";
74
- export type { AuthProvider, StaticAuthConfig, CallbackAuthConfig } from "../types/auth.js";
75
- export type { FlowDropEventHandlers, FlowDropFeatures, WorkflowChangeType } from "../types/events.js";
76
- export type { EndpointConfig } from "../config/endpoints.js";
77
- export type { FlowDropMountOptions, MountedFlowDropApp, NavbarAction } from "../svelte-app.js";
78
- export type { NodeComponentProps, NodeComponentRegistration, FlowDropPluginConfig, PluginNodeDefinition } from "../registry/index.js";
30
+ import '../registry/builtinNodes.js';
31
+ export { default as WorkflowEditor } from '../components/WorkflowEditor.svelte';
32
+ export { default as App } from '../components/App.svelte';
33
+ export { default as WorkflowNodeComponent } from '../components/nodes/WorkflowNode.svelte';
34
+ export { default as SimpleNodeComponent } from '../components/nodes/SimpleNode.svelte';
35
+ export { default as ToolNodeComponent } from '../components/nodes/ToolNode.svelte';
36
+ export { default as NotesNodeComponent } from '../components/nodes/NotesNode.svelte';
37
+ export { default as GatewayNode } from '../components/nodes/GatewayNode.svelte';
38
+ export { default as SquareNode } from '../components/nodes/SquareNode.svelte';
39
+ export { default as TerminalNode } from '../components/nodes/TerminalNode.svelte';
40
+ export { default as UniversalNode } from '../components/UniversalNode.svelte';
41
+ export { default as NodeSidebar } from '../components/NodeSidebar.svelte';
42
+ export { default as CanvasBanner } from '../components/CanvasBanner.svelte';
43
+ export { default as LoadingSpinner } from '../components/LoadingSpinner.svelte';
44
+ export { default as StatusIcon } from '../components/StatusIcon.svelte';
45
+ export { default as StatusLabel } from '../components/StatusLabel.svelte';
46
+ export { default as NodeStatusOverlay } from '../components/NodeStatusOverlay.svelte';
47
+ export { default as ConfigForm } from '../components/ConfigForm.svelte';
48
+ export { default as ConfigModal } from '../components/ConfigModal.svelte';
49
+ export { default as ConfigPanel } from '../components/ConfigPanel.svelte';
50
+ export { default as ReadOnlyDetails } from '../components/ReadOnlyDetails.svelte';
51
+ export { default as ConnectionLine } from '../components/ConnectionLine.svelte';
52
+ export { default as LogsSidebar } from '../components/LogsSidebar.svelte';
53
+ export { default as PipelineStatus } from '../components/PipelineStatus.svelte';
54
+ export { default as Navbar } from '../components/Navbar.svelte';
55
+ export { default as Logo } from '../components/Logo.svelte';
56
+ export { default as Playground } from '../components/playground/Playground.svelte';
57
+ export { default as ChatPanel } from '../components/playground/ChatPanel.svelte';
58
+ export { default as SessionManager } from '../components/playground/SessionManager.svelte';
59
+ export { default as InputCollector } from '../components/playground/InputCollector.svelte';
60
+ export { default as ExecutionLogs } from '../components/playground/ExecutionLogs.svelte';
61
+ export { default as MessageBubble } from '../components/playground/MessageBubble.svelte';
62
+ export { mountWorkflowEditor, mountFlowDropApp, unmountFlowDropApp } from '../svelte-app.js';
63
+ export { nodeComponentRegistry, createNamespacedType, parseNamespacedType, BUILTIN_NODE_COMPONENTS, BUILTIN_NODE_TYPES, FLOWDROP_SOURCE, registerBuiltinNodes, areBuiltinsRegistered, isBuiltinType, getBuiltinTypes, resolveBuiltinAlias, registerFlowDropPlugin, unregisterFlowDropPlugin, registerCustomNode, createPlugin, isValidNamespace, getRegisteredPlugins, getPluginNodeCount } from '../registry/index.js';
64
+ export { EdgeStylingHelper, NodeOperationsHelper, WorkflowOperationsHelper, ConfigurationHelper } from '../helpers/workflowEditorHelper.js';
65
+ export { workflowStore, workflowActions, workflowId, workflowName, workflowNodes, workflowEdges, workflowMetadata, workflowChanged, workflowValidation, workflowMetadataChanged, connectedHandles, isDirtyStore, isDirty, markAsSaved, getWorkflow as getWorkflowFromStore, setOnDirtyStateChange, setOnWorkflowChange } from '../stores/workflowStore.js';
66
+ export * from '../services/api.js';
67
+ export { showSuccess, showError, showWarning, showInfo, showLoading, dismissToast, dismissAllToasts, showPromise, showConfirmation, apiToasts, workflowToasts, pipelineToasts } from '../services/toastService.js';
68
+ export { NodeExecutionService, nodeExecutionService } from '../services/nodeExecutionService.js';
69
+ export { PlaygroundService, playgroundService } from '../services/playgroundService.js';
70
+ export { currentSession, sessions, messages, isExecuting, isLoading, error as playgroundError, currentWorkflow, lastPollTimestamp, sessionStatus, messageCount, chatMessages, logMessages, latestMessage, inputFields, hasChatInput, sessionCount, playgroundActions, getCurrentSessionId, isSessionSelected, getMessagesSnapshot, getLatestMessageTimestamp } from '../stores/playgroundStore.js';
71
+ export { saveWorkflow, updateWorkflow, getWorkflow, getWorkflows, deleteWorkflow, getWorkflowCount, initializeSampleWorkflows } from '../services/workflowStorage.js';
72
+ export { globalSaveWorkflow, globalExportWorkflow, initializeGlobalSave } from '../services/globalSave.js';
73
+ export { fetchPortConfig, validatePortConfig } from '../services/portConfigApi.js';
74
+ export { fetchDynamicSchema, resolveExternalEditUrl, getEffectiveConfigEditOptions, clearSchemaCache, invalidateSchemaCache, hasConfigEditOptions, shouldShowExternalEdit, shouldUseDynamicSchema } from '../services/dynamicSchemaService.js';
75
+ export { getDraftStorageKey, saveDraft, loadDraft, deleteDraft, hasDraft, getDraftMetadata, DraftAutoSaveManager } from '../services/draftStorage.js';
76
+ export { FlowDropApiClient } from '../api/client.js';
77
+ export { EnhancedFlowDropApiClient, ApiError } from '../api/enhanced-client.js';
78
+ export * from '../utils/connections.js';
79
+ export * from '../config/runtimeConfig.js';
80
+ export type { Workflow, WorkflowNode, WorkflowEdge, NodeMetadata, NodePort, DynamicPort, Branch, ExecutionStatus, ExecutionResult, FlowDropConfig, PortConfig, ConfigSchema, ConfigProperty, ConfigEditOptions } from '../types/index.js';
81
+ export type { WorkflowEditorConfig, EditorFeatures, UIConfig, APIConfig } from '../types/config.js';
82
+ export type { AuthProvider, StaticAuthConfig, CallbackAuthConfig } from '../types/auth.js';
83
+ export type { FlowDropEventHandlers, FlowDropFeatures, WorkflowChangeType } from '../types/events.js';
84
+ export type { EndpointConfig } from '../config/endpoints.js';
85
+ export type { FlowDropMountOptions, MountedFlowDropApp, NavbarAction } from '../svelte-app.js';
86
+ export type { NodeComponentProps, NodeComponentRegistration, FlowDropPluginConfig, PluginNodeDefinition } from '../registry/index.js';
@@ -32,45 +32,52 @@
32
32
  // This side effect is intentional for the editor module - users importing
33
33
  // the editor expect all node types to be available.
34
34
  // ============================================================================
35
- import "../registry/builtinNodes.js";
35
+ import '../registry/builtinNodes.js';
36
36
  // ============================================================================
37
37
  // Main Editor Components
38
38
  // ============================================================================
39
- export { default as WorkflowEditor } from "../components/WorkflowEditor.svelte";
40
- export { default as App } from "../components/App.svelte";
39
+ export { default as WorkflowEditor } from '../components/WorkflowEditor.svelte';
40
+ export { default as App } from '../components/App.svelte';
41
41
  // ============================================================================
42
42
  // Node Components
43
43
  // ============================================================================
44
- export { default as WorkflowNodeComponent } from "../components/nodes/WorkflowNode.svelte";
45
- export { default as SimpleNodeComponent } from "../components/nodes/SimpleNode.svelte";
46
- export { default as ToolNodeComponent } from "../components/nodes/ToolNode.svelte";
47
- export { default as NotesNodeComponent } from "../components/nodes/NotesNode.svelte";
48
- export { default as GatewayNode } from "../components/nodes/GatewayNode.svelte";
49
- export { default as SquareNode } from "../components/nodes/SquareNode.svelte";
50
- export { default as TerminalNode } from "../components/nodes/TerminalNode.svelte";
51
- export { default as UniversalNode } from "../components/UniversalNode.svelte";
44
+ export { default as WorkflowNodeComponent } from '../components/nodes/WorkflowNode.svelte';
45
+ export { default as SimpleNodeComponent } from '../components/nodes/SimpleNode.svelte';
46
+ export { default as ToolNodeComponent } from '../components/nodes/ToolNode.svelte';
47
+ export { default as NotesNodeComponent } from '../components/nodes/NotesNode.svelte';
48
+ export { default as GatewayNode } from '../components/nodes/GatewayNode.svelte';
49
+ export { default as SquareNode } from '../components/nodes/SquareNode.svelte';
50
+ export { default as TerminalNode } from '../components/nodes/TerminalNode.svelte';
51
+ export { default as UniversalNode } from '../components/UniversalNode.svelte';
52
52
  // ============================================================================
53
53
  // Supporting Editor Components
54
54
  // ============================================================================
55
- export { default as NodeSidebar } from "../components/NodeSidebar.svelte";
56
- export { default as CanvasBanner } from "../components/CanvasBanner.svelte";
57
- export { default as LoadingSpinner } from "../components/LoadingSpinner.svelte";
58
- export { default as StatusIcon } from "../components/StatusIcon.svelte";
59
- export { default as StatusLabel } from "../components/StatusLabel.svelte";
60
- export { default as NodeStatusOverlay } from "../components/NodeStatusOverlay.svelte";
61
- export { default as ConfigForm } from "../components/ConfigForm.svelte";
62
- export { default as ConfigModal } from "../components/ConfigModal.svelte";
63
- export { default as ConfigPanel } from "../components/ConfigPanel.svelte";
64
- export { default as ReadOnlyDetails } from "../components/ReadOnlyDetails.svelte";
65
- export { default as ConnectionLine } from "../components/ConnectionLine.svelte";
66
- export { default as LogsSidebar } from "../components/LogsSidebar.svelte";
67
- export { default as PipelineStatus } from "../components/PipelineStatus.svelte";
68
- export { default as Navbar } from "../components/Navbar.svelte";
69
- export { default as Logo } from "../components/Logo.svelte";
55
+ export { default as NodeSidebar } from '../components/NodeSidebar.svelte';
56
+ export { default as CanvasBanner } from '../components/CanvasBanner.svelte';
57
+ export { default as LoadingSpinner } from '../components/LoadingSpinner.svelte';
58
+ export { default as StatusIcon } from '../components/StatusIcon.svelte';
59
+ export { default as StatusLabel } from '../components/StatusLabel.svelte';
60
+ export { default as NodeStatusOverlay } from '../components/NodeStatusOverlay.svelte';
61
+ export { default as ConfigForm } from '../components/ConfigForm.svelte';
62
+ export { default as ConfigModal } from '../components/ConfigModal.svelte';
63
+ export { default as ConfigPanel } from '../components/ConfigPanel.svelte';
64
+ export { default as ReadOnlyDetails } from '../components/ReadOnlyDetails.svelte';
65
+ export { default as ConnectionLine } from '../components/ConnectionLine.svelte';
66
+ export { default as LogsSidebar } from '../components/LogsSidebar.svelte';
67
+ export { default as PipelineStatus } from '../components/PipelineStatus.svelte';
68
+ export { default as Navbar } from '../components/Navbar.svelte';
69
+ export { default as Logo } from '../components/Logo.svelte';
70
+ // Playground Components
71
+ export { default as Playground } from '../components/playground/Playground.svelte';
72
+ export { default as ChatPanel } from '../components/playground/ChatPanel.svelte';
73
+ export { default as SessionManager } from '../components/playground/SessionManager.svelte';
74
+ export { default as InputCollector } from '../components/playground/InputCollector.svelte';
75
+ export { default as ExecutionLogs } from '../components/playground/ExecutionLogs.svelte';
76
+ export { default as MessageBubble } from '../components/playground/MessageBubble.svelte';
70
77
  // ============================================================================
71
78
  // Mount Functions
72
79
  // ============================================================================
73
- export { mountWorkflowEditor, mountFlowDropApp, unmountFlowDropApp } from "../svelte-app.js";
80
+ export { mountWorkflowEditor, mountFlowDropApp, unmountFlowDropApp } from '../svelte-app.js';
74
81
  // ============================================================================
75
82
  // Node Component Registry
76
83
  // ============================================================================
@@ -80,38 +87,41 @@ nodeComponentRegistry, createNamespacedType, parseNamespacedType,
80
87
  // Built-in nodes
81
88
  BUILTIN_NODE_COMPONENTS, BUILTIN_NODE_TYPES, FLOWDROP_SOURCE, registerBuiltinNodes, areBuiltinsRegistered, isBuiltinType, getBuiltinTypes, resolveBuiltinAlias,
82
89
  // Plugin system
83
- registerFlowDropPlugin, unregisterFlowDropPlugin, registerCustomNode, createPlugin, isValidNamespace, getRegisteredPlugins, getPluginNodeCount } from "../registry/index.js";
90
+ registerFlowDropPlugin, unregisterFlowDropPlugin, registerCustomNode, createPlugin, isValidNamespace, getRegisteredPlugins, getPluginNodeCount } from '../registry/index.js';
84
91
  // ============================================================================
85
92
  // Editor Helpers
86
93
  // ============================================================================
87
- export { EdgeStylingHelper, NodeOperationsHelper, WorkflowOperationsHelper, ConfigurationHelper } from "../helpers/workflowEditorHelper.js";
94
+ export { EdgeStylingHelper, NodeOperationsHelper, WorkflowOperationsHelper, ConfigurationHelper } from '../helpers/workflowEditorHelper.js';
88
95
  // ============================================================================
89
96
  // Stores
90
97
  // ============================================================================
91
98
  export { workflowStore, workflowActions, workflowId, workflowName, workflowNodes, workflowEdges, workflowMetadata, workflowChanged, workflowValidation, workflowMetadataChanged, connectedHandles,
92
99
  // Dirty state tracking
93
- isDirtyStore, isDirty, markAsSaved, getWorkflow as getWorkflowFromStore, setOnDirtyStateChange, setOnWorkflowChange } from "../stores/workflowStore.js";
100
+ isDirtyStore, isDirty, markAsSaved, getWorkflow as getWorkflowFromStore, setOnDirtyStateChange, setOnWorkflowChange } from '../stores/workflowStore.js';
94
101
  // ============================================================================
95
102
  // Services
96
103
  // ============================================================================
97
- export * from "../services/api.js";
98
- export { showSuccess, showError, showWarning, showInfo, showLoading, dismissToast, dismissAllToasts, showPromise, showConfirmation, apiToasts, workflowToasts, pipelineToasts } from "../services/toastService.js";
99
- export { NodeExecutionService, nodeExecutionService } from "../services/nodeExecutionService.js";
100
- export { saveWorkflow, updateWorkflow, getWorkflow, getWorkflows, deleteWorkflow, getWorkflowCount, initializeSampleWorkflows } from "../services/workflowStorage.js";
101
- export { globalSaveWorkflow, globalExportWorkflow, initializeGlobalSave } from "../services/globalSave.js";
102
- export { fetchPortConfig, validatePortConfig } from "../services/portConfigApi.js";
103
- export { fetchDynamicSchema, resolveExternalEditUrl, getEffectiveConfigEditOptions, clearSchemaCache, invalidateSchemaCache, hasConfigEditOptions, shouldShowExternalEdit, shouldUseDynamicSchema } from "../services/dynamicSchemaService.js";
104
- export { getDraftStorageKey, saveDraft, loadDraft, deleteDraft, hasDraft, getDraftMetadata, DraftAutoSaveManager } from "../services/draftStorage.js";
104
+ export * from '../services/api.js';
105
+ export { showSuccess, showError, showWarning, showInfo, showLoading, dismissToast, dismissAllToasts, showPromise, showConfirmation, apiToasts, workflowToasts, pipelineToasts } from '../services/toastService.js';
106
+ export { NodeExecutionService, nodeExecutionService } from '../services/nodeExecutionService.js';
107
+ // Playground Service and Store
108
+ export { PlaygroundService, playgroundService } from '../services/playgroundService.js';
109
+ export { currentSession, sessions, messages, isExecuting, isLoading, error as playgroundError, currentWorkflow, lastPollTimestamp, sessionStatus, messageCount, chatMessages, logMessages, latestMessage, inputFields, hasChatInput, sessionCount, playgroundActions, getCurrentSessionId, isSessionSelected, getMessagesSnapshot, getLatestMessageTimestamp } from '../stores/playgroundStore.js';
110
+ export { saveWorkflow, updateWorkflow, getWorkflow, getWorkflows, deleteWorkflow, getWorkflowCount, initializeSampleWorkflows } from '../services/workflowStorage.js';
111
+ export { globalSaveWorkflow, globalExportWorkflow, initializeGlobalSave } from '../services/globalSave.js';
112
+ export { fetchPortConfig, validatePortConfig } from '../services/portConfigApi.js';
113
+ export { fetchDynamicSchema, resolveExternalEditUrl, getEffectiveConfigEditOptions, clearSchemaCache, invalidateSchemaCache, hasConfigEditOptions, shouldShowExternalEdit, shouldUseDynamicSchema } from '../services/dynamicSchemaService.js';
114
+ export { getDraftStorageKey, saveDraft, loadDraft, deleteDraft, hasDraft, getDraftMetadata, DraftAutoSaveManager } from '../services/draftStorage.js';
105
115
  // ============================================================================
106
116
  // API Clients
107
117
  // ============================================================================
108
- export { FlowDropApiClient } from "../api/client.js";
109
- export { EnhancedFlowDropApiClient, ApiError } from "../api/enhanced-client.js";
118
+ export { FlowDropApiClient } from '../api/client.js';
119
+ export { EnhancedFlowDropApiClient, ApiError } from '../api/enhanced-client.js';
110
120
  // ============================================================================
111
121
  // Connection Utilities
112
122
  // ============================================================================
113
- export * from "../utils/connections.js";
123
+ export * from '../utils/connections.js';
114
124
  // ============================================================================
115
125
  // Runtime Configuration
116
126
  // ============================================================================
117
- export * from "../config/runtimeConfig.js";
127
+ export * from '../config/runtimeConfig.js';
@@ -20,10 +20,10 @@
20
20
  * // Now SchemaForm will render code editors for format: "json", "code", or "template"
21
21
  * ```
22
22
  */
23
- import type { FieldSchema } from "../components/form/types.js";
24
- export { default as FormCodeEditor } from "../components/form/FormCodeEditor.svelte";
25
- export { default as FormTemplateEditor } from "../components/form/FormTemplateEditor.svelte";
26
- export type { CodeEditorFieldProps, TemplateEditorFieldProps } from "../components/form/types.js";
23
+ import type { FieldSchema } from '../components/form/types.js';
24
+ export { default as FormCodeEditor } from '../components/form/FormCodeEditor.svelte';
25
+ export { default as FormTemplateEditor } from '../components/form/FormTemplateEditor.svelte';
26
+ export type { CodeEditorFieldProps, TemplateEditorFieldProps } from '../components/form/types.js';
27
27
  /**
28
28
  * Matcher for code/JSON editor fields
29
29
  * Matches: format "json", "code", or type "object" without specific format
package/dist/form/code.js CHANGED
@@ -20,21 +20,21 @@
20
20
  * // Now SchemaForm will render code editors for format: "json", "code", or "template"
21
21
  * ```
22
22
  */
23
- import { registerFieldComponent } from "./fieldRegistry.js";
23
+ import { registerFieldComponent } from './fieldRegistry.js';
24
24
  // Re-export the components for direct usage if needed
25
- export { default as FormCodeEditor } from "../components/form/FormCodeEditor.svelte";
26
- export { default as FormTemplateEditor } from "../components/form/FormTemplateEditor.svelte";
25
+ export { default as FormCodeEditor } from '../components/form/FormCodeEditor.svelte';
26
+ export { default as FormTemplateEditor } from '../components/form/FormTemplateEditor.svelte';
27
27
  /**
28
28
  * Matcher for code/JSON editor fields
29
29
  * Matches: format "json", "code", or type "object" without specific format
30
30
  */
31
31
  export function codeEditorFieldMatcher(schema) {
32
32
  // JSON/code format
33
- if (schema.format === "json" || schema.format === "code") {
33
+ if (schema.format === 'json' || schema.format === 'code') {
34
34
  return true;
35
35
  }
36
36
  // Object type without specific format (render as JSON editor)
37
- if (schema.type === "object" && !schema.format) {
37
+ if (schema.type === 'object' && !schema.format) {
38
38
  return true;
39
39
  }
40
40
  return false;
@@ -44,7 +44,7 @@ export function codeEditorFieldMatcher(schema) {
44
44
  * Matches: format "template" (Twig/Liquid-style templates)
45
45
  */
46
46
  export function templateEditorFieldMatcher(schema) {
47
- return schema.format === "template";
47
+ return schema.format === 'template';
48
48
  }
49
49
  /**
50
50
  * Track if code editor is registered
@@ -75,8 +75,8 @@ export function registerCodeEditorField(priority = 100) {
75
75
  return;
76
76
  }
77
77
  // Dynamic import to ensure proper code splitting
78
- import("../components/form/FormCodeEditor.svelte").then((module) => {
79
- registerFieldComponent("code-editor", module.default, codeEditorFieldMatcher, priority);
78
+ import('../components/form/FormCodeEditor.svelte').then((module) => {
79
+ registerFieldComponent('code-editor', module.default, codeEditorFieldMatcher, priority);
80
80
  codeEditorRegistered = true;
81
81
  });
82
82
  }
@@ -101,8 +101,8 @@ export function registerTemplateEditorField(priority = 100) {
101
101
  return;
102
102
  }
103
103
  // Dynamic import to ensure proper code splitting
104
- import("../components/form/FormTemplateEditor.svelte").then((module) => {
105
- registerFieldComponent("template-editor", module.default, templateEditorFieldMatcher, priority);
104
+ import('../components/form/FormTemplateEditor.svelte').then((module) => {
105
+ registerFieldComponent('template-editor', module.default, templateEditorFieldMatcher, priority);
106
106
  templateEditorRegistered = true;
107
107
  });
108
108
  }
@@ -136,7 +136,7 @@ component, priority = 100) {
136
136
  if (codeEditorRegistered) {
137
137
  return;
138
138
  }
139
- registerFieldComponent("code-editor", component, codeEditorFieldMatcher, priority);
139
+ registerFieldComponent('code-editor', component, codeEditorFieldMatcher, priority);
140
140
  codeEditorRegistered = true;
141
141
  }
142
142
  /**
@@ -22,8 +22,8 @@
22
22
  * registerFieldComponent("code-editor", FormCodeEditor, codeEditorFieldMatcher);
23
23
  * ```
24
24
  */
25
- import type { Component } from "svelte";
26
- import type { FieldSchema } from "../components/form/types.js";
25
+ import type { Component } from 'svelte';
26
+ import type { FieldSchema } from '../components/form/types.js';
27
27
  /**
28
28
  * Base field component props that all registered field components should accept.
29
29
  * Components may have additional specific props.
@@ -134,7 +134,7 @@ export function getFieldRegistrySize() {
134
134
  /**
135
135
  * Matcher for hidden fields (should not render)
136
136
  */
137
- export const hiddenFieldMatcher = (schema) => schema.format === "hidden";
137
+ export const hiddenFieldMatcher = (schema) => schema.format === 'hidden';
138
138
  /**
139
139
  * Matcher for checkbox group fields (enum with multiple)
140
140
  */
@@ -146,30 +146,28 @@ export const enumSelectMatcher = (schema) => Boolean(schema.enum && !schema.mult
146
146
  /**
147
147
  * Matcher for multiline textarea fields
148
148
  */
149
- export const textareaMatcher = (schema) => schema.type === "string" && schema.format === "multiline";
149
+ export const textareaMatcher = (schema) => schema.type === 'string' && schema.format === 'multiline';
150
150
  /**
151
151
  * Matcher for range slider fields
152
152
  */
153
- export const rangeMatcher = (schema) => (schema.type === "number" || schema.type === "integer") &&
154
- schema.format === "range";
153
+ export const rangeMatcher = (schema) => (schema.type === 'number' || schema.type === 'integer') && schema.format === 'range';
155
154
  /**
156
155
  * Matcher for string text fields
157
156
  */
158
- export const textFieldMatcher = (schema) => schema.type === "string" && !schema.format;
157
+ export const textFieldMatcher = (schema) => schema.type === 'string' && !schema.format;
159
158
  /**
160
159
  * Matcher for number fields
161
160
  */
162
- export const numberFieldMatcher = (schema) => (schema.type === "number" || schema.type === "integer") &&
163
- schema.format !== "range";
161
+ export const numberFieldMatcher = (schema) => (schema.type === 'number' || schema.type === 'integer') && schema.format !== 'range';
164
162
  /**
165
163
  * Matcher for boolean toggle fields
166
164
  */
167
- export const toggleMatcher = (schema) => schema.type === "boolean";
165
+ export const toggleMatcher = (schema) => schema.type === 'boolean';
168
166
  /**
169
167
  * Matcher for select fields with options
170
168
  */
171
- export const selectOptionsMatcher = (schema) => schema.type === "select" || Boolean(schema.options);
169
+ export const selectOptionsMatcher = (schema) => schema.type === 'select' || Boolean(schema.options);
172
170
  /**
173
171
  * Matcher for array fields
174
172
  */
175
- export const arrayMatcher = (schema) => schema.type === "array" && Boolean(schema.items);
173
+ export const arrayMatcher = (schema) => schema.type === 'array' && Boolean(schema.items);
@@ -20,11 +20,11 @@
20
20
  * // Now all field types are available
21
21
  * ```
22
22
  */
23
- export * from "./index.js";
24
- export { FormCodeEditor, FormTemplateEditor } from "./code.js";
25
- export { FormMarkdownEditor } from "./markdown.js";
26
- export { registerCodeEditorField, registerTemplateEditorField, registerAllCodeEditors, isCodeEditorRegistered, isTemplateEditorRegistered, codeEditorFieldMatcher, templateEditorFieldMatcher } from "./code.js";
27
- export { registerMarkdownEditorField, isMarkdownEditorRegistered, markdownEditorFieldMatcher } from "./markdown.js";
23
+ export * from './index.js';
24
+ export { FormCodeEditor, FormTemplateEditor } from './code.js';
25
+ export { FormMarkdownEditor } from './markdown.js';
26
+ export { registerCodeEditorField, registerTemplateEditorField, registerAllCodeEditors, isCodeEditorRegistered, isTemplateEditorRegistered, codeEditorFieldMatcher, templateEditorFieldMatcher } from './code.js';
27
+ export { registerMarkdownEditorField, isMarkdownEditorRegistered, markdownEditorFieldMatcher } from './markdown.js';
28
28
  /**
29
29
  * Initialize all form field types including heavy editors
30
30
  *
package/dist/form/full.js CHANGED
@@ -21,16 +21,16 @@
21
21
  * ```
22
22
  */
23
23
  // Re-export everything from the light form module
24
- export * from "./index.js";
24
+ export * from './index.js';
25
25
  // Import registration functions
26
- import { registerCodeEditorField, registerTemplateEditorField } from "./code.js";
27
- import { registerMarkdownEditorField } from "./markdown.js";
26
+ import { registerCodeEditorField, registerTemplateEditorField } from './code.js';
27
+ import { registerMarkdownEditorField } from './markdown.js';
28
28
  // Re-export heavy editor components for direct access
29
- export { FormCodeEditor, FormTemplateEditor } from "./code.js";
30
- export { FormMarkdownEditor } from "./markdown.js";
29
+ export { FormCodeEditor, FormTemplateEditor } from './code.js';
30
+ export { FormMarkdownEditor } from './markdown.js';
31
31
  // Re-export registration functions
32
- export { registerCodeEditorField, registerTemplateEditorField, registerAllCodeEditors, isCodeEditorRegistered, isTemplateEditorRegistered, codeEditorFieldMatcher, templateEditorFieldMatcher } from "./code.js";
33
- export { registerMarkdownEditorField, isMarkdownEditorRegistered, markdownEditorFieldMatcher } from "./markdown.js";
32
+ export { registerCodeEditorField, registerTemplateEditorField, registerAllCodeEditors, isCodeEditorRegistered, isTemplateEditorRegistered, codeEditorFieldMatcher, templateEditorFieldMatcher } from './code.js';
33
+ export { registerMarkdownEditorField, isMarkdownEditorRegistered, markdownEditorFieldMatcher } from './markdown.js';
34
34
  /**
35
35
  * Track if all field types have been initialized
36
36
  */
@@ -39,19 +39,19 @@
39
39
  * };
40
40
  * ```
41
41
  */
42
- export { default as SchemaForm } from "../components/SchemaForm.svelte";
43
- export { default as FormField } from "../components/form/FormFieldLight.svelte";
44
- export { default as FormFieldFull } from "../components/form/FormField.svelte";
45
- export { default as FormFieldWrapper } from "../components/form/FormFieldWrapper.svelte";
46
- export { default as FormTextField } from "../components/form/FormTextField.svelte";
47
- export { default as FormTextarea } from "../components/form/FormTextarea.svelte";
48
- export { default as FormNumberField } from "../components/form/FormNumberField.svelte";
49
- export { default as FormRangeField } from "../components/form/FormRangeField.svelte";
50
- export { default as FormToggle } from "../components/form/FormToggle.svelte";
51
- export { default as FormSelect } from "../components/form/FormSelect.svelte";
52
- export { default as FormCheckboxGroup } from "../components/form/FormCheckboxGroup.svelte";
53
- export { default as FormArray } from "../components/form/FormArray.svelte";
54
- export type { FieldSchema, FieldType, FieldFormat, FieldOption, SchemaFormProps, BaseFieldProps, TextFieldProps, TextareaFieldProps, NumberFieldProps, ToggleFieldProps, RangeFieldProps, SelectFieldProps, CheckboxGroupFieldProps, ArrayFieldProps, FormFieldFactoryProps, FormFieldWrapperProps } from "../components/form/types.js";
55
- export { isFieldOptionArray, normalizeOptions } from "../components/form/types.js";
56
- export { registerFieldComponent, unregisterFieldComponent, resolveFieldComponent, getRegisteredFieldTypes, isFieldTypeRegistered, clearFieldRegistry, getFieldRegistrySize, hiddenFieldMatcher, checkboxGroupMatcher, enumSelectMatcher, textareaMatcher, rangeMatcher, textFieldMatcher, numberFieldMatcher, toggleMatcher, selectOptionsMatcher, arrayMatcher } from "./fieldRegistry.js";
57
- export type { FieldComponentProps, FieldMatcher, FieldComponent, FieldComponentRegistration } from "./fieldRegistry.js";
42
+ export { default as SchemaForm } from '../components/SchemaForm.svelte';
43
+ export { default as FormField } from '../components/form/FormFieldLight.svelte';
44
+ export { default as FormFieldFull } from '../components/form/FormField.svelte';
45
+ export { default as FormFieldWrapper } from '../components/form/FormFieldWrapper.svelte';
46
+ export { default as FormTextField } from '../components/form/FormTextField.svelte';
47
+ export { default as FormTextarea } from '../components/form/FormTextarea.svelte';
48
+ export { default as FormNumberField } from '../components/form/FormNumberField.svelte';
49
+ export { default as FormRangeField } from '../components/form/FormRangeField.svelte';
50
+ export { default as FormToggle } from '../components/form/FormToggle.svelte';
51
+ export { default as FormSelect } from '../components/form/FormSelect.svelte';
52
+ export { default as FormCheckboxGroup } from '../components/form/FormCheckboxGroup.svelte';
53
+ export { default as FormArray } from '../components/form/FormArray.svelte';
54
+ export type { FieldSchema, FieldType, FieldFormat, FieldOption, SchemaFormProps, BaseFieldProps, TextFieldProps, TextareaFieldProps, NumberFieldProps, ToggleFieldProps, RangeFieldProps, SelectFieldProps, CheckboxGroupFieldProps, ArrayFieldProps, FormFieldFactoryProps, FormFieldWrapperProps } from '../components/form/types.js';
55
+ export { isFieldOptionArray, normalizeOptions } from '../components/form/types.js';
56
+ export { registerFieldComponent, unregisterFieldComponent, resolveFieldComponent, getRegisteredFieldTypes, isFieldTypeRegistered, clearFieldRegistry, getFieldRegistrySize, hiddenFieldMatcher, checkboxGroupMatcher, enumSelectMatcher, textareaMatcher, rangeMatcher, textFieldMatcher, numberFieldMatcher, toggleMatcher, selectOptionsMatcher, arrayMatcher } from './fieldRegistry.js';
57
+ export type { FieldComponentProps, FieldMatcher, FieldComponent, FieldComponentRegistration } from './fieldRegistry.js';