condukt 0.1.0 → 0.2.1

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 (59) hide show
  1. package/README.md +159 -0
  2. package/dist/bridge/bridge.d.ts.map +1 -1
  3. package/dist/bridge/bridge.js +43 -12
  4. package/dist/bridge/bridge.js.map +1 -1
  5. package/dist/runtimes/copilot/copilot-backend.d.ts +3 -1
  6. package/dist/runtimes/copilot/copilot-backend.d.ts.map +1 -1
  7. package/dist/runtimes/copilot/subprocess-backend.d.ts.map +1 -1
  8. package/dist/runtimes/copilot/subprocess-backend.js +3 -0
  9. package/dist/runtimes/copilot/subprocess-backend.js.map +1 -1
  10. package/dist/src/agent.d.ts.map +1 -1
  11. package/dist/src/agent.js +1 -0
  12. package/dist/src/agent.js.map +1 -1
  13. package/dist/src/events.d.ts +10 -1
  14. package/dist/src/events.d.ts.map +1 -1
  15. package/dist/src/index.d.ts +3 -3
  16. package/dist/src/index.d.ts.map +1 -1
  17. package/dist/src/index.js +2 -1
  18. package/dist/src/index.js.map +1 -1
  19. package/dist/src/scheduler.d.ts +3 -1
  20. package/dist/src/scheduler.d.ts.map +1 -1
  21. package/dist/src/scheduler.js +287 -27
  22. package/dist/src/scheduler.js.map +1 -1
  23. package/dist/src/types.d.ts +17 -1
  24. package/dist/src/types.d.ts.map +1 -1
  25. package/dist/src/types.js.map +1 -1
  26. package/dist/state/reducer.d.ts.map +1 -1
  27. package/dist/state/reducer.js +23 -2
  28. package/dist/state/reducer.js.map +1 -1
  29. package/dist/state/state-runtime.d.ts +1 -0
  30. package/dist/state/state-runtime.d.ts.map +1 -1
  31. package/dist/state/state-runtime.js +3 -0
  32. package/dist/state/state-runtime.js.map +1 -1
  33. package/dist/theme/index.d.ts +7 -0
  34. package/dist/theme/index.d.ts.map +1 -1
  35. package/dist/theme/index.js +4 -3
  36. package/dist/theme/index.js.map +1 -1
  37. package/dist/ui/components/FlowEdge.d.ts.map +1 -1
  38. package/dist/ui/components/FlowEdge.js +34 -12
  39. package/dist/ui/components/FlowEdge.js.map +1 -1
  40. package/dist/ui/components/FlowGraph.d.ts +5 -1
  41. package/dist/ui/components/FlowGraph.d.ts.map +1 -1
  42. package/dist/ui/components/FlowGraph.js +43 -5
  43. package/dist/ui/components/FlowGraph.js.map +1 -1
  44. package/dist/ui/components/FlowStatusBar.d.ts.map +1 -1
  45. package/dist/ui/components/FlowStatusBar.js +11 -1
  46. package/dist/ui/components/FlowStatusBar.js.map +1 -1
  47. package/dist/ui/components/MiniPipeline.d.ts.map +1 -1
  48. package/dist/ui/components/MiniPipeline.js +81 -30
  49. package/dist/ui/components/MiniPipeline.js.map +1 -1
  50. package/dist/ui/components/NodeCard.d.ts.map +1 -1
  51. package/dist/ui/components/NodeCard.js +1 -1
  52. package/dist/ui/components/NodeCard.js.map +1 -1
  53. package/dist/ui/components/node-panel/Output.js +1 -1
  54. package/dist/ui/components/node-panel/types.js +3 -3
  55. package/dist/ui/components/node-panel/types.js.map +1 -1
  56. package/dist/ui/core/components/Button.js +1 -1
  57. package/dist/ui/core/components/Button.js.map +1 -1
  58. package/dist/ui/style.css +624 -0
  59. package/package.json +100 -87
@@ -0,0 +1,624 @@
1
+ /* this gets exported as style.css and can be used for the default theming */
2
+ /* these are the necessary styles for React/Svelte Flow, they get used by base.css and style.css */
3
+ .react-flow {
4
+ direction: ltr;
5
+
6
+ --xy-edge-stroke-default: #b1b1b7;
7
+ --xy-edge-stroke-width-default: 1;
8
+ --xy-edge-stroke-selected-default: #555;
9
+
10
+ --xy-connectionline-stroke-default: #b1b1b7;
11
+ --xy-connectionline-stroke-width-default: 1;
12
+
13
+ --xy-attribution-background-color-default: rgba(255, 255, 255, 0.5);
14
+
15
+ --xy-minimap-background-color-default: #fff;
16
+ --xy-minimap-mask-background-color-default: rgba(240, 240, 240, 0.6);
17
+ --xy-minimap-mask-stroke-color-default: transparent;
18
+ --xy-minimap-mask-stroke-width-default: 1;
19
+ --xy-minimap-node-background-color-default: #e2e2e2;
20
+ --xy-minimap-node-stroke-color-default: transparent;
21
+ --xy-minimap-node-stroke-width-default: 2;
22
+
23
+ --xy-background-color-default: transparent;
24
+ --xy-background-pattern-dots-color-default: #91919a;
25
+ --xy-background-pattern-lines-color-default: #eee;
26
+ --xy-background-pattern-cross-color-default: #e2e2e2;
27
+ background-color: var(--xy-background-color, var(--xy-background-color-default));
28
+ --xy-node-color-default: inherit;
29
+ --xy-node-border-default: 1px solid #1a192b;
30
+ --xy-node-background-color-default: #fff;
31
+ --xy-node-group-background-color-default: rgba(240, 240, 240, 0.25);
32
+ --xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, 0.08);
33
+ --xy-node-boxshadow-selected-default: 0 0 0 0.5px #1a192b;
34
+ --xy-node-border-radius-default: 3px;
35
+
36
+ --xy-handle-background-color-default: #1a192b;
37
+ --xy-handle-border-color-default: #fff;
38
+
39
+ --xy-selection-background-color-default: rgba(0, 89, 220, 0.08);
40
+ --xy-selection-border-default: 1px dotted rgba(0, 89, 220, 0.8);
41
+
42
+ --xy-controls-button-background-color-default: #fefefe;
43
+ --xy-controls-button-background-color-hover-default: #f4f4f4;
44
+ --xy-controls-button-color-default: inherit;
45
+ --xy-controls-button-color-hover-default: inherit;
46
+ --xy-controls-button-border-color-default: #eee;
47
+ --xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, 0.08);
48
+
49
+ --xy-edge-label-background-color-default: #ffffff;
50
+ --xy-edge-label-color-default: inherit;
51
+ --xy-resize-background-color-default: #3367d9;
52
+ }
53
+ .react-flow.dark {
54
+ --xy-edge-stroke-default: #3e3e3e;
55
+ --xy-edge-stroke-width-default: 1;
56
+ --xy-edge-stroke-selected-default: #727272;
57
+
58
+ --xy-connectionline-stroke-default: #b1b1b7;
59
+ --xy-connectionline-stroke-width-default: 1;
60
+
61
+ --xy-attribution-background-color-default: rgba(150, 150, 150, 0.25);
62
+
63
+ --xy-minimap-background-color-default: #141414;
64
+ --xy-minimap-mask-background-color-default: rgba(60, 60, 60, 0.6);
65
+ --xy-minimap-mask-stroke-color-default: transparent;
66
+ --xy-minimap-mask-stroke-width-default: 1;
67
+ --xy-minimap-node-background-color-default: #2b2b2b;
68
+ --xy-minimap-node-stroke-color-default: transparent;
69
+ --xy-minimap-node-stroke-width-default: 2;
70
+
71
+ --xy-background-color-default: #141414;
72
+ --xy-background-pattern-dots-color-default: #777;
73
+ --xy-background-pattern-lines-color-default: #777;
74
+ --xy-background-pattern-cross-color-default: #777;
75
+ --xy-node-color-default: #f8f8f8;
76
+ --xy-node-border-default: 1px solid #3c3c3c;
77
+ --xy-node-background-color-default: #1e1e1e;
78
+ --xy-node-group-background-color-default: rgba(240, 240, 240, 0.25);
79
+ --xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, 0.08);
80
+ --xy-node-boxshadow-selected-default: 0 0 0 0.5px #999;
81
+
82
+ --xy-handle-background-color-default: #bebebe;
83
+ --xy-handle-border-color-default: #1e1e1e;
84
+
85
+ --xy-selection-background-color-default: rgba(200, 200, 220, 0.08);
86
+ --xy-selection-border-default: 1px dotted rgba(200, 200, 220, 0.8);
87
+
88
+ --xy-controls-button-background-color-default: #2b2b2b;
89
+ --xy-controls-button-background-color-hover-default: #3e3e3e;
90
+ --xy-controls-button-color-default: #f8f8f8;
91
+ --xy-controls-button-color-hover-default: #fff;
92
+ --xy-controls-button-border-color-default: #5b5b5b;
93
+ --xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, 0.08);
94
+
95
+ --xy-edge-label-background-color-default: #141414;
96
+ --xy-edge-label-color-default: #f8f8f8;
97
+ }
98
+ .react-flow__background {
99
+ background-color: var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));
100
+ pointer-events: none;
101
+ z-index: -1;
102
+ }
103
+ .react-flow__container {
104
+ position: absolute;
105
+ width: 100%;
106
+ height: 100%;
107
+ top: 0;
108
+ left: 0;
109
+ }
110
+ .react-flow__pane {
111
+ z-index: 1;
112
+ }
113
+ .react-flow__pane.draggable {
114
+ cursor: grab;
115
+ }
116
+ .react-flow__pane.dragging {
117
+ cursor: grabbing;
118
+ }
119
+ .react-flow__pane.selection {
120
+ cursor: pointer;
121
+ }
122
+ .react-flow__viewport {
123
+ transform-origin: 0 0;
124
+ z-index: 2;
125
+ pointer-events: none;
126
+ }
127
+ .react-flow__renderer {
128
+ z-index: 4;
129
+ }
130
+ .react-flow__selection {
131
+ z-index: 6;
132
+ }
133
+ .react-flow__nodesselection-rect:focus,
134
+ .react-flow__nodesselection-rect:focus-visible {
135
+ outline: none;
136
+ }
137
+ .react-flow__edge-path {
138
+ stroke: var(--xy-edge-stroke, var(--xy-edge-stroke-default));
139
+ stroke-width: var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));
140
+ fill: none;
141
+ }
142
+ .react-flow__connection-path {
143
+ stroke: var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));
144
+ stroke-width: var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));
145
+ fill: none;
146
+ }
147
+ .react-flow .react-flow__edges {
148
+ position: absolute;
149
+ }
150
+ .react-flow .react-flow__edges svg {
151
+ overflow: visible;
152
+ position: absolute;
153
+ pointer-events: none;
154
+ }
155
+ .react-flow__edge {
156
+ pointer-events: visibleStroke;
157
+ }
158
+ .react-flow__edge.selectable {
159
+ cursor: pointer;
160
+ }
161
+ .react-flow__edge.animated path {
162
+ stroke-dasharray: 5;
163
+ animation: dashdraw 0.5s linear infinite;
164
+ }
165
+ .react-flow__edge.animated path.react-flow__edge-interaction {
166
+ stroke-dasharray: none;
167
+ animation: none;
168
+ }
169
+ .react-flow__edge.inactive {
170
+ pointer-events: none;
171
+ }
172
+ .react-flow__edge.selected,
173
+ .react-flow__edge:focus,
174
+ .react-flow__edge:focus-visible {
175
+ outline: none;
176
+ }
177
+ .react-flow__edge.selected .react-flow__edge-path,
178
+ .react-flow__edge.selectable:focus .react-flow__edge-path,
179
+ .react-flow__edge.selectable:focus-visible .react-flow__edge-path {
180
+ stroke: var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default));
181
+ }
182
+ .react-flow__edge-textwrapper {
183
+ pointer-events: all;
184
+ }
185
+ .react-flow__edge .react-flow__edge-text {
186
+ pointer-events: none;
187
+ -webkit-user-select: none;
188
+ -moz-user-select: none;
189
+ user-select: none;
190
+ }
191
+ /* Arrowhead marker styles - use CSS custom properties as default */
192
+ .react-flow__arrowhead polyline {
193
+ stroke: var(--xy-edge-stroke, var(--xy-edge-stroke-default));
194
+ }
195
+ .react-flow__arrowhead polyline.arrowclosed {
196
+ fill: var(--xy-edge-stroke, var(--xy-edge-stroke-default));
197
+ }
198
+ .react-flow__connection {
199
+ pointer-events: none;
200
+ }
201
+ .react-flow__connection .animated {
202
+ stroke-dasharray: 5;
203
+ animation: dashdraw 0.5s linear infinite;
204
+ }
205
+ svg.react-flow__connectionline {
206
+ z-index: 1001;
207
+ overflow: visible;
208
+ position: absolute;
209
+ }
210
+ .react-flow__nodes {
211
+ pointer-events: none;
212
+ transform-origin: 0 0;
213
+ }
214
+ .react-flow__node {
215
+ position: absolute;
216
+ -webkit-user-select: none;
217
+ -moz-user-select: none;
218
+ user-select: none;
219
+ pointer-events: all;
220
+ transform-origin: 0 0;
221
+ box-sizing: border-box;
222
+ cursor: default;
223
+ }
224
+ .react-flow__node.selectable {
225
+ cursor: pointer;
226
+ }
227
+ .react-flow__node.draggable {
228
+ cursor: grab;
229
+ pointer-events: all;
230
+ }
231
+ .react-flow__node.draggable.dragging {
232
+ cursor: grabbing;
233
+ }
234
+ .react-flow__nodesselection {
235
+ z-index: 3;
236
+ transform-origin: left top;
237
+ pointer-events: none;
238
+ }
239
+ .react-flow__nodesselection-rect {
240
+ position: absolute;
241
+ pointer-events: all;
242
+ cursor: grab;
243
+ }
244
+ .react-flow__handle {
245
+ position: absolute;
246
+ pointer-events: none;
247
+ min-width: 5px;
248
+ min-height: 5px;
249
+ width: 6px;
250
+ height: 6px;
251
+ background-color: var(--xy-handle-background-color, var(--xy-handle-background-color-default));
252
+ border: 1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));
253
+ border-radius: 100%;
254
+ }
255
+ .react-flow__handle.connectingfrom {
256
+ pointer-events: all;
257
+ }
258
+ .react-flow__handle.connectionindicator {
259
+ pointer-events: all;
260
+ cursor: crosshair;
261
+ }
262
+ .react-flow__handle-bottom {
263
+ top: auto;
264
+ left: 50%;
265
+ bottom: 0;
266
+ transform: translate(-50%, 50%);
267
+ }
268
+ .react-flow__handle-top {
269
+ top: 0;
270
+ left: 50%;
271
+ transform: translate(-50%, -50%);
272
+ }
273
+ .react-flow__handle-left {
274
+ top: 50%;
275
+ left: 0;
276
+ transform: translate(-50%, -50%);
277
+ }
278
+ .react-flow__handle-right {
279
+ top: 50%;
280
+ right: 0;
281
+ transform: translate(50%, -50%);
282
+ }
283
+ .react-flow__edgeupdater {
284
+ cursor: move;
285
+ pointer-events: all;
286
+ }
287
+ .react-flow__pane.selection .react-flow__panel {
288
+ pointer-events: none;
289
+ }
290
+ .react-flow__panel {
291
+ position: absolute;
292
+ z-index: 5;
293
+ margin: 15px;
294
+ }
295
+ .react-flow__panel.top {
296
+ top: 0;
297
+ }
298
+ .react-flow__panel.bottom {
299
+ bottom: 0;
300
+ }
301
+ .react-flow__panel.top.center, .react-flow__panel.bottom.center {
302
+ left: 50%;
303
+ transform: translateX(-15px) translateX(-50%);
304
+ }
305
+ .react-flow__panel.left {
306
+ left: 0;
307
+ }
308
+ .react-flow__panel.right {
309
+ right: 0;
310
+ }
311
+ .react-flow__panel.left.center, .react-flow__panel.right.center {
312
+ top: 50%;
313
+ transform: translateY(-15px) translateY(-50%);
314
+ }
315
+ .react-flow__attribution {
316
+ font-size: 10px;
317
+ background: var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));
318
+ padding: 2px 3px;
319
+ margin: 0;
320
+ }
321
+ .react-flow__attribution a {
322
+ text-decoration: none;
323
+ color: #999;
324
+ }
325
+ @keyframes dashdraw {
326
+ from {
327
+ stroke-dashoffset: 10;
328
+ }
329
+ }
330
+ .react-flow__edgelabel-renderer {
331
+ position: absolute;
332
+ width: 100%;
333
+ height: 100%;
334
+ pointer-events: none;
335
+ -webkit-user-select: none;
336
+ -moz-user-select: none;
337
+ user-select: none;
338
+ left: 0;
339
+ top: 0;
340
+ }
341
+ .react-flow__viewport-portal {
342
+ position: absolute;
343
+ width: 100%;
344
+ height: 100%;
345
+ left: 0;
346
+ top: 0;
347
+ -webkit-user-select: none;
348
+ -moz-user-select: none;
349
+ user-select: none;
350
+ }
351
+ .react-flow__minimap {
352
+ background: var(
353
+ --xy-minimap-background-color-props,
354
+ var(--xy-minimap-background-color, var(--xy-minimap-background-color-default))
355
+ );
356
+ }
357
+ .react-flow__minimap-svg {
358
+ display: block;
359
+ }
360
+ .react-flow__minimap-mask {
361
+ fill: var(
362
+ --xy-minimap-mask-background-color-props,
363
+ var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default))
364
+ );
365
+ stroke: var(
366
+ --xy-minimap-mask-stroke-color-props,
367
+ var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default))
368
+ );
369
+ stroke-width: var(
370
+ --xy-minimap-mask-stroke-width-props,
371
+ var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default))
372
+ );
373
+ }
374
+ .react-flow__minimap-node {
375
+ fill: var(
376
+ --xy-minimap-node-background-color-props,
377
+ var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default))
378
+ );
379
+ stroke: var(
380
+ --xy-minimap-node-stroke-color-props,
381
+ var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default))
382
+ );
383
+ stroke-width: var(
384
+ --xy-minimap-node-stroke-width-props,
385
+ var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default))
386
+ );
387
+ }
388
+ .react-flow__background-pattern.dots {
389
+ fill: var(
390
+ --xy-background-pattern-color-props,
391
+ var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default))
392
+ );
393
+ }
394
+ .react-flow__background-pattern.lines {
395
+ stroke: var(
396
+ --xy-background-pattern-color-props,
397
+ var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default))
398
+ );
399
+ }
400
+ .react-flow__background-pattern.cross {
401
+ stroke: var(
402
+ --xy-background-pattern-color-props,
403
+ var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default))
404
+ );
405
+ }
406
+ .react-flow__controls {
407
+ display: flex;
408
+ flex-direction: column;
409
+ box-shadow: var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default));
410
+ }
411
+ .react-flow__controls.horizontal {
412
+ flex-direction: row;
413
+ }
414
+ .react-flow__controls-button {
415
+ display: flex;
416
+ justify-content: center;
417
+ align-items: center;
418
+ height: 26px;
419
+ width: 26px;
420
+ padding: 4px;
421
+ border: none;
422
+ background: var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));
423
+ border-bottom: 1px solid
424
+ var(
425
+ --xy-controls-button-border-color-props,
426
+ var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default))
427
+ );
428
+ color: var(
429
+ --xy-controls-button-color-props,
430
+ var(--xy-controls-button-color, var(--xy-controls-button-color-default))
431
+ );
432
+ cursor: pointer;
433
+ -webkit-user-select: none;
434
+ -moz-user-select: none;
435
+ user-select: none;
436
+ }
437
+ .react-flow__controls-button svg {
438
+ width: 100%;
439
+ max-width: 12px;
440
+ max-height: 12px;
441
+ fill: currentColor;
442
+ }
443
+ .react-flow__edge.updating .react-flow__edge-path {
444
+ stroke: #777;
445
+ }
446
+ .react-flow__edge-text {
447
+ font-size: 10px;
448
+ }
449
+ .react-flow__node.selectable:focus,
450
+ .react-flow__node.selectable:focus-visible {
451
+ outline: none;
452
+ }
453
+ .react-flow__node-input,
454
+ .react-flow__node-default,
455
+ .react-flow__node-output,
456
+ .react-flow__node-group {
457
+ padding: 10px;
458
+ border-radius: var(--xy-node-border-radius, var(--xy-node-border-radius-default));
459
+ width: 150px;
460
+ font-size: 12px;
461
+ color: var(--xy-node-color, var(--xy-node-color-default));
462
+ text-align: center;
463
+ border: var(--xy-node-border, var(--xy-node-border-default));
464
+ background-color: var(--xy-node-background-color, var(--xy-node-background-color-default));
465
+ }
466
+ .react-flow__node-input.selectable:hover, .react-flow__node-default.selectable:hover, .react-flow__node-output.selectable:hover, .react-flow__node-group.selectable:hover {
467
+ box-shadow: var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default));
468
+ }
469
+ .react-flow__node-input.selectable.selected,
470
+ .react-flow__node-input.selectable:focus,
471
+ .react-flow__node-input.selectable:focus-visible,
472
+ .react-flow__node-default.selectable.selected,
473
+ .react-flow__node-default.selectable:focus,
474
+ .react-flow__node-default.selectable:focus-visible,
475
+ .react-flow__node-output.selectable.selected,
476
+ .react-flow__node-output.selectable:focus,
477
+ .react-flow__node-output.selectable:focus-visible,
478
+ .react-flow__node-group.selectable.selected,
479
+ .react-flow__node-group.selectable:focus,
480
+ .react-flow__node-group.selectable:focus-visible {
481
+ box-shadow: var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default));
482
+ }
483
+ .react-flow__node-group {
484
+ background-color: var(--xy-node-group-background-color, var(--xy-node-group-background-color-default));
485
+ }
486
+ .react-flow__nodesselection-rect,
487
+ .react-flow__selection {
488
+ background: var(--xy-selection-background-color, var(--xy-selection-background-color-default));
489
+ border: var(--xy-selection-border, var(--xy-selection-border-default));
490
+ }
491
+ .react-flow__nodesselection-rect:focus,
492
+ .react-flow__nodesselection-rect:focus-visible,
493
+ .react-flow__selection:focus,
494
+ .react-flow__selection:focus-visible {
495
+ outline: none;
496
+ }
497
+ .react-flow__controls-button:hover {
498
+ background: var(
499
+ --xy-controls-button-background-color-hover-props,
500
+ var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default))
501
+ );
502
+ color: var(
503
+ --xy-controls-button-color-hover-props,
504
+ var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default))
505
+ );
506
+ }
507
+ .react-flow__controls-button:disabled {
508
+ pointer-events: none;
509
+ }
510
+ .react-flow__controls-button:disabled svg {
511
+ fill-opacity: 0.4;
512
+ }
513
+ .react-flow__controls-button:last-child {
514
+ border-bottom: none;
515
+ }
516
+ .react-flow__controls.horizontal .react-flow__controls-button {
517
+ border-bottom: none;
518
+ border-right: 1px solid
519
+ var(
520
+ --xy-controls-button-border-color-props,
521
+ var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default))
522
+ );
523
+ }
524
+ .react-flow__controls.horizontal .react-flow__controls-button:last-child {
525
+ border-right: none;
526
+ }
527
+ .react-flow__resize-control {
528
+ position: absolute;
529
+ }
530
+ .react-flow__resize-control.left,
531
+ .react-flow__resize-control.right {
532
+ cursor: ew-resize;
533
+ }
534
+ .react-flow__resize-control.top,
535
+ .react-flow__resize-control.bottom {
536
+ cursor: ns-resize;
537
+ }
538
+ .react-flow__resize-control.top.left,
539
+ .react-flow__resize-control.bottom.right {
540
+ cursor: nwse-resize;
541
+ }
542
+ .react-flow__resize-control.bottom.left,
543
+ .react-flow__resize-control.top.right {
544
+ cursor: nesw-resize;
545
+ }
546
+ /* handle styles */
547
+ .react-flow__resize-control.handle {
548
+ width: 5px;
549
+ height: 5px;
550
+ border: 1px solid #fff;
551
+ border-radius: 1px;
552
+ background-color: var(--xy-resize-background-color, var(--xy-resize-background-color-default));
553
+ translate: -50% -50%;
554
+ }
555
+ .react-flow__resize-control.handle.left {
556
+ left: 0;
557
+ top: 50%;
558
+ }
559
+ .react-flow__resize-control.handle.right {
560
+ left: 100%;
561
+ top: 50%;
562
+ }
563
+ .react-flow__resize-control.handle.top {
564
+ left: 50%;
565
+ top: 0;
566
+ }
567
+ .react-flow__resize-control.handle.bottom {
568
+ left: 50%;
569
+ top: 100%;
570
+ }
571
+ .react-flow__resize-control.handle.top.left {
572
+ left: 0;
573
+ }
574
+ .react-flow__resize-control.handle.bottom.left {
575
+ left: 0;
576
+ }
577
+ .react-flow__resize-control.handle.top.right {
578
+ left: 100%;
579
+ }
580
+ .react-flow__resize-control.handle.bottom.right {
581
+ left: 100%;
582
+ }
583
+ /* line styles */
584
+ .react-flow__resize-control.line {
585
+ border-color: var(--xy-resize-background-color, var(--xy-resize-background-color-default));
586
+ border-width: 0;
587
+ border-style: solid;
588
+ }
589
+ .react-flow__resize-control.line.left,
590
+ .react-flow__resize-control.line.right {
591
+ width: 1px;
592
+ transform: translate(-50%, 0);
593
+ top: 0;
594
+ height: 100%;
595
+ }
596
+ .react-flow__resize-control.line.left {
597
+ left: 0;
598
+ border-left-width: 1px;
599
+ }
600
+ .react-flow__resize-control.line.right {
601
+ left: 100%;
602
+ border-right-width: 1px;
603
+ }
604
+ .react-flow__resize-control.line.top,
605
+ .react-flow__resize-control.line.bottom {
606
+ height: 1px;
607
+ transform: translate(0, -50%);
608
+ left: 0;
609
+ width: 100%;
610
+ }
611
+ .react-flow__resize-control.line.top {
612
+ top: 0;
613
+ border-top-width: 1px;
614
+ }
615
+ .react-flow__resize-control.line.bottom {
616
+ border-bottom-width: 1px;
617
+ top: 100%;
618
+ }
619
+ .react-flow__edge-textbg {
620
+ fill: var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default));
621
+ }
622
+ .react-flow__edge-text {
623
+ fill: var(--xy-edge-label-color, var(--xy-edge-label-color-default));
624
+ }