@d34dman/flowdrop 0.0.1 → 0.0.3

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 (120) hide show
  1. package/README.md +307 -215
  2. package/dist/adapters/WorkflowAdapter.d.ts +1 -1
  3. package/dist/adapters/WorkflowAdapter.js +30 -30
  4. package/dist/api/client.d.ts +24 -1
  5. package/dist/api/client.js +55 -38
  6. package/dist/api/enhanced-client.d.ts +46 -0
  7. package/dist/api/enhanced-client.js +211 -0
  8. package/dist/clients/ApiClient.d.ts +19 -23
  9. package/dist/clients/ApiClient.js +36 -34
  10. package/dist/components/App.svelte +1299 -230
  11. package/dist/components/App.svelte.d.ts +21 -1
  12. package/dist/components/CanvasBanner.svelte +50 -44
  13. package/dist/components/CanvasBanner.svelte.d.ts +5 -19
  14. package/dist/components/ConfigForm.svelte +555 -0
  15. package/dist/components/ConfigForm.svelte.d.ts +32 -0
  16. package/dist/components/ConfigModal.svelte +261 -0
  17. package/dist/components/ConfigModal.svelte.d.ts +31 -0
  18. package/dist/components/ConfigSidebar.svelte +934 -0
  19. package/dist/components/ConfigSidebar.svelte.d.ts +51 -0
  20. package/dist/components/ConnectionLine.svelte +32 -0
  21. package/dist/components/ConnectionLine.svelte.d.ts +3 -0
  22. package/dist/components/GatewayNode.svelte +471 -0
  23. package/dist/components/GatewayNode.svelte.d.ts +15 -0
  24. package/dist/components/LoadingSpinner.svelte +23 -23
  25. package/dist/components/LoadingSpinner.svelte.d.ts +1 -1
  26. package/dist/components/Logo.svelte +82 -0
  27. package/dist/components/Logo.svelte.d.ts +26 -0
  28. package/dist/components/LogsSidebar.svelte +565 -0
  29. package/dist/components/LogsSidebar.svelte.d.ts +34 -0
  30. package/dist/components/MarkdownDisplay.svelte +28 -0
  31. package/dist/components/MarkdownDisplay.svelte.d.ts +7 -0
  32. package/dist/components/Navbar.svelte +663 -0
  33. package/dist/components/Navbar.svelte.d.ts +21 -0
  34. package/dist/components/NodeSidebar.svelte +629 -488
  35. package/dist/components/NodeSidebar.svelte.d.ts +1 -2
  36. package/dist/components/NodeStatusOverlay.svelte +327 -0
  37. package/dist/components/NodeStatusOverlay.svelte.d.ts +11 -0
  38. package/dist/components/NotesNode.svelte +566 -0
  39. package/dist/components/NotesNode.svelte.d.ts +43 -0
  40. package/dist/components/PipelineStatus.svelte +331 -0
  41. package/dist/components/PipelineStatus.svelte.d.ts +18 -0
  42. package/dist/components/SimpleNode.svelte +447 -0
  43. package/dist/components/SimpleNode.svelte.d.ts +24 -0
  44. package/dist/components/SquareNode.svelte +346 -0
  45. package/dist/components/SquareNode.svelte.d.ts +24 -0
  46. package/dist/components/StatusIcon.svelte +112 -0
  47. package/dist/components/StatusIcon.svelte.d.ts +10 -0
  48. package/dist/components/StatusLabel.svelte +33 -0
  49. package/dist/components/StatusLabel.svelte.d.ts +7 -0
  50. package/dist/components/ToolNode.svelte +385 -0
  51. package/dist/components/ToolNode.svelte.d.ts +36 -0
  52. package/dist/components/UniversalNode.svelte +126 -0
  53. package/dist/components/UniversalNode.svelte.d.ts +15 -0
  54. package/dist/components/WorkflowEditor.svelte +871 -528
  55. package/dist/components/WorkflowEditor.svelte.d.ts +15 -5
  56. package/dist/components/WorkflowNode.svelte +428 -542
  57. package/dist/components/WorkflowNode.svelte.d.ts +7 -3
  58. package/dist/config/apiConfig.d.ts +33 -0
  59. package/dist/config/apiConfig.js +39 -0
  60. package/dist/config/defaultPortConfig.d.ts +6 -0
  61. package/dist/config/defaultPortConfig.js +192 -0
  62. package/dist/config/demo.d.ts +58 -0
  63. package/dist/config/demo.js +142 -0
  64. package/dist/config/endpoints.d.ts +106 -0
  65. package/dist/config/endpoints.js +128 -0
  66. package/dist/data/samples.d.ts +38 -4
  67. package/dist/data/samples.js +2789 -737
  68. package/dist/examples/adapter-usage.d.ts +4 -4
  69. package/dist/examples/adapter-usage.js +21 -26
  70. package/dist/examples/api-client-usage.d.ts +6 -6
  71. package/dist/examples/api-client-usage.js +55 -54
  72. package/dist/index.d.ts +23 -15
  73. package/dist/index.js +23 -15
  74. package/dist/mocks/app-environment.d.ts +8 -0
  75. package/dist/mocks/app-environment.js +16 -0
  76. package/dist/mocks/app-forms.d.ts +2 -0
  77. package/dist/mocks/app-forms.js +21 -0
  78. package/dist/mocks/app-navigation.d.ts +5 -0
  79. package/dist/mocks/app-navigation.js +34 -0
  80. package/dist/mocks/app-stores.d.ts +14 -0
  81. package/dist/mocks/app-stores.js +26 -0
  82. package/dist/services/api.d.ts +13 -3
  83. package/dist/services/api.js +91 -36
  84. package/dist/services/globalSave.d.ts +20 -0
  85. package/dist/services/globalSave.js +165 -0
  86. package/dist/services/nodeExecutionService.d.ts +63 -0
  87. package/dist/services/nodeExecutionService.js +261 -0
  88. package/dist/services/portConfigApi.d.ts +14 -0
  89. package/dist/services/portConfigApi.js +69 -0
  90. package/dist/services/toastService.d.ts +147 -0
  91. package/dist/services/toastService.js +235 -0
  92. package/dist/services/workflowStorage.d.ts +2 -2
  93. package/dist/services/workflowStorage.js +10 -10
  94. package/dist/stores/workflowStore.d.ts +53 -0
  95. package/dist/stores/workflowStore.js +264 -0
  96. package/dist/styles/base.css +896 -363
  97. package/dist/svelte-app.d.ts +52 -5
  98. package/dist/svelte-app.js +128 -6
  99. package/dist/types/config.d.ts +291 -0
  100. package/dist/types/config.js +4 -0
  101. package/dist/types/index.d.ts +231 -19
  102. package/dist/types/index.js +1 -1
  103. package/dist/utils/colors.d.ts +67 -33
  104. package/dist/utils/colors.js +183 -118
  105. package/dist/utils/config.d.ts +41 -0
  106. package/dist/utils/config.js +248 -0
  107. package/dist/utils/connections.d.ts +40 -3
  108. package/dist/utils/connections.js +115 -44
  109. package/dist/utils/icons.d.ts +1 -1
  110. package/dist/utils/icons.js +71 -70
  111. package/dist/utils/nodeStatus.d.ts +53 -0
  112. package/dist/utils/nodeStatus.js +183 -0
  113. package/dist/utils/nodeTypes.d.ts +57 -0
  114. package/dist/utils/nodeTypes.js +109 -0
  115. package/dist/utils/nodeWrapper.d.ts +39 -0
  116. package/dist/utils/nodeWrapper.js +62 -0
  117. package/package.json +132 -97
  118. package/dist/app.css +0 -0
  119. package/dist/components/Node.svelte +0 -38
  120. package/dist/components/Node.svelte.d.ts +0 -4
@@ -0,0 +1,32 @@
1
+ import type { ConfigSchema, ConfigValues } from '../types/index.js';
2
+ interface Props {
3
+ schema: ConfigSchema;
4
+ values: ConfigValues;
5
+ disabled?: boolean;
6
+ }
7
+ interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
8
+ new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
9
+ $$bindings?: Bindings;
10
+ } & Exports;
11
+ (internal: unknown, props: Props & {
12
+ $$events?: Events;
13
+ $$slots?: Slots;
14
+ }): Exports & {
15
+ $set?: any;
16
+ $on?: any;
17
+ };
18
+ z_$$bindings?: Bindings;
19
+ }
20
+ declare const ConfigForm: $$__sveltets_2_IsomorphicComponent<Props, {
21
+ change: CustomEvent<{
22
+ values: ConfigValues;
23
+ }>;
24
+ validate: CustomEvent<{
25
+ isValid: boolean;
26
+ errors: string[];
27
+ }>;
28
+ } & {
29
+ [evt: string]: CustomEvent<any>;
30
+ }, {}, {}, "">;
31
+ type ConfigForm = InstanceType<typeof ConfigForm>;
32
+ export default ConfigForm;
@@ -0,0 +1,261 @@
1
+ <script lang="ts">
2
+ import { createEventDispatcher } from 'svelte';
3
+ import type { ConfigSchema, ConfigValues } from '../types';
4
+ import ConfigForm from './ConfigForm.svelte';
5
+
6
+ interface Props {
7
+ isOpen: boolean;
8
+ nodeLabel: string;
9
+ configSchema: ConfigSchema;
10
+ configValues: ConfigValues;
11
+ }
12
+
13
+ let props: Props = $props();
14
+ let localConfigValues = $derived.by(() => ({ ...props.configValues }));
15
+
16
+ const dispatch = createEventDispatcher<{
17
+ close: void;
18
+ save: { values: ConfigValues };
19
+ cancel: void;
20
+ }>();
21
+
22
+ function handleSave() {
23
+ dispatch('save', { values: localConfigValues });
24
+ }
25
+
26
+ function handleCancel() {
27
+ dispatch('cancel');
28
+ }
29
+
30
+ function handleClose() {
31
+ dispatch('close');
32
+ }
33
+
34
+ // Close modal on escape key
35
+ function handleKeydown(event: KeyboardEvent) {
36
+ if (event.key === 'Escape') {
37
+ handleClose();
38
+ }
39
+ }
40
+
41
+ // Close modal when clicking outside
42
+ function handleBackdropClick(event: MouseEvent) {
43
+ if (event.target === event.currentTarget) {
44
+ handleClose();
45
+ }
46
+ }
47
+ </script>
48
+
49
+ {#if props.isOpen}
50
+ <!-- Modal Backdrop -->
51
+ <div
52
+ class="config-modal-backdrop"
53
+ onclick={handleBackdropClick}
54
+ onkeydown={handleKeydown}
55
+ role="dialog"
56
+ aria-modal="true"
57
+ aria-labelledby="config-modal-title"
58
+ tabindex="-1"
59
+ >
60
+ <!-- Modal Container -->
61
+ <div class="config-modal">
62
+ <!-- Modal Header -->
63
+ <div class="config-modal__header">
64
+ <h2 id="config-modal-title" class="config-modal__title">
65
+ Configure: {props.nodeLabel}
66
+ </h2>
67
+ <button
68
+ type="button"
69
+ class="config-modal__close-btn"
70
+ onclick={handleClose}
71
+ aria-label="Close configuration modal"
72
+ >
73
+ <span aria-hidden="true">×</span>
74
+ </button>
75
+ </div>
76
+
77
+ <!-- Modal Content -->
78
+ <div class="config-modal__content">
79
+ <ConfigForm
80
+ schema={props.configSchema}
81
+ values={localConfigValues}
82
+ on:change={({ detail }) => {
83
+ localConfigValues = detail.values;
84
+ }}
85
+ on:validate={({ detail }) => {
86
+ console.log('Config validation:', detail);
87
+ }}
88
+ />
89
+ </div>
90
+
91
+ <!-- Modal Footer -->
92
+ <div class="config-modal__footer">
93
+ <button
94
+ type="button"
95
+ class="config-modal__btn config-modal__btn--secondary"
96
+ onclick={handleCancel}
97
+ >
98
+ Cancel
99
+ </button>
100
+ <button
101
+ type="button"
102
+ class="config-modal__btn config-modal__btn--primary"
103
+ onclick={handleSave}
104
+ >
105
+ Save Configuration
106
+ </button>
107
+ </div>
108
+ </div>
109
+ </div>
110
+ {/if}
111
+
112
+ <style>
113
+ .config-modal-backdrop {
114
+ position: fixed;
115
+ top: 0;
116
+ left: 0;
117
+ right: 0;
118
+ bottom: 0;
119
+ background-color: rgba(0, 0, 0, 0.5);
120
+ display: flex;
121
+ align-items: center;
122
+ justify-content: center;
123
+ z-index: 1000;
124
+ padding: 1rem;
125
+ }
126
+
127
+ .config-modal {
128
+ background: white;
129
+ border-radius: 0.75rem;
130
+ box-shadow:
131
+ 0 20px 25px -5px rgba(0, 0, 0, 0.1),
132
+ 0 10px 10px -5px rgba(0, 0, 0, 0.04);
133
+ width: 100%;
134
+ max-width: 80vw;
135
+ min-width: 40rem;
136
+ max-height: 90vh;
137
+ display: flex;
138
+ flex-direction: column;
139
+ overflow: hidden;
140
+ }
141
+
142
+ .config-modal__header {
143
+ display: flex;
144
+ align-items: center;
145
+ justify-content: space-between;
146
+ padding: 1.5rem 1.5rem 1rem 1.5rem;
147
+ border-bottom: 1px solid #e5e7eb;
148
+ }
149
+
150
+ .config-modal__title {
151
+ margin: 0;
152
+ font-size: 1.125rem;
153
+ font-weight: 600;
154
+ color: #111827;
155
+ }
156
+
157
+ .config-modal__close-btn {
158
+ width: 2rem;
159
+ height: 2rem;
160
+ border: none;
161
+ background: transparent;
162
+ border-radius: 0.375rem;
163
+ color: #6b7280;
164
+ font-size: 1.5rem;
165
+ font-weight: 400;
166
+ cursor: pointer;
167
+ display: flex;
168
+ align-items: center;
169
+ justify-content: center;
170
+ transition: all 0.2s;
171
+ }
172
+
173
+ .config-modal__close-btn:hover {
174
+ background-color: #f3f4f6;
175
+ color: #374151;
176
+ }
177
+
178
+ .config-modal__content {
179
+ padding: 1.5rem;
180
+ overflow-y: auto;
181
+ flex: 1;
182
+ min-height: 0;
183
+ }
184
+
185
+ .config-modal__footer {
186
+ display: flex;
187
+ align-items: center;
188
+ justify-content: flex-end;
189
+ gap: 0.75rem;
190
+ padding: 1rem 1.5rem 1.5rem 1.5rem;
191
+ border-top: 1px solid #e5e7eb;
192
+ background-color: #f9fafb;
193
+ }
194
+
195
+ .config-modal__btn {
196
+ padding: 0.5rem 1rem;
197
+ border-radius: 0.375rem;
198
+ font-size: 0.875rem;
199
+ font-weight: 500;
200
+ cursor: pointer;
201
+ transition: all 0.2s;
202
+ border: 1px solid transparent;
203
+ }
204
+
205
+ .config-modal__btn--primary {
206
+ background-color: #3b82f6;
207
+ color: white;
208
+ border-color: #3b82f6;
209
+ }
210
+
211
+ .config-modal__btn--primary:hover {
212
+ background-color: #2563eb;
213
+ border-color: #2563eb;
214
+ }
215
+
216
+ .config-modal__btn--secondary {
217
+ background-color: white;
218
+ color: #374151;
219
+ border-color: #d1d5db;
220
+ }
221
+
222
+ .config-modal__btn--secondary:hover {
223
+ background-color: #f9fafb;
224
+ border-color: #9ca3af;
225
+ }
226
+
227
+ /* Responsive adjustments */
228
+ @media (max-width: 1024px) {
229
+ .config-modal {
230
+ max-width: 90vw;
231
+ min-width: 32rem;
232
+ }
233
+ }
234
+
235
+ @media (max-width: 768px) {
236
+ .config-modal {
237
+ max-width: 95vw;
238
+ min-width: 24rem;
239
+ }
240
+
241
+ .config-modal__header {
242
+ padding: 1rem 1rem 0.75rem 1rem;
243
+ }
244
+
245
+ .config-modal__content {
246
+ padding: 1rem;
247
+ }
248
+
249
+ .config-modal__footer {
250
+ padding: 0.75rem 1rem 1rem 1rem;
251
+ }
252
+ }
253
+
254
+ @media (max-width: 640px) {
255
+ .config-modal {
256
+ max-width: 100%;
257
+ min-width: auto;
258
+ margin: 0.5rem;
259
+ }
260
+ }
261
+ </style>
@@ -0,0 +1,31 @@
1
+ import type { ConfigSchema, ConfigValues } from '../types';
2
+ interface Props {
3
+ isOpen: boolean;
4
+ nodeLabel: string;
5
+ configSchema: ConfigSchema;
6
+ configValues: ConfigValues;
7
+ }
8
+ interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
9
+ new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
10
+ $$bindings?: Bindings;
11
+ } & Exports;
12
+ (internal: unknown, props: Props & {
13
+ $$events?: Events;
14
+ $$slots?: Slots;
15
+ }): Exports & {
16
+ $set?: any;
17
+ $on?: any;
18
+ };
19
+ z_$$bindings?: Bindings;
20
+ }
21
+ declare const ConfigModal: $$__sveltets_2_IsomorphicComponent<Props, {
22
+ close: CustomEvent<void>;
23
+ save: CustomEvent<{
24
+ values: ConfigValues;
25
+ }>;
26
+ cancel: CustomEvent<void>;
27
+ } & {
28
+ [evt: string]: CustomEvent<any>;
29
+ }, {}, {}, "">;
30
+ type ConfigModal = InstanceType<typeof ConfigModal>;
31
+ export default ConfigModal;