@kb-labs/workflow-entry 2.118.2 → 2.119.0-canary.cee505c72

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 (40) hide show
  1. package/dist/commands/runs-status.js +2 -0
  2. package/dist/commands/runs-status.js.map +1 -1
  3. package/dist/commands/runs-view.js +4 -0
  4. package/dist/commands/runs-view.js.map +1 -1
  5. package/dist/commands/runs-watch.js +3 -1
  6. package/dist/commands/runs-watch.js.map +1 -1
  7. package/dist/index.js +2 -10
  8. package/dist/index.js.map +1 -1
  9. package/dist/manifest.js +2 -10
  10. package/dist/manifest.js.map +1 -1
  11. package/dist/manifest.json +2 -10
  12. package/dist/widgets/117.js +10 -3
  13. package/dist/widgets/165.js +1 -1
  14. package/dist/widgets/256.js +407 -0
  15. package/dist/widgets/370.js +1 -1
  16. package/dist/widgets/421.js +96 -0
  17. package/dist/widgets/46.js +1 -1
  18. package/dist/widgets/50.js +1 -1
  19. package/dist/widgets/546.js +1 -1
  20. package/dist/widgets/669.js +1 -1
  21. package/dist/widgets/716.js +1 -1
  22. package/dist/widgets/775.js +1 -1
  23. package/dist/widgets/78.js +1 -1
  24. package/dist/widgets/875.js +5 -5
  25. package/dist/widgets/__federation_expose_Crons.js +1 -1
  26. package/dist/widgets/__federation_expose_DefinitionDetail.js +1 -1
  27. package/dist/widgets/__federation_expose_Definitions.js +1 -1
  28. package/dist/widgets/__federation_expose_Jobs.js +1 -1
  29. package/dist/widgets/__federation_expose_RunDetail.js +2 -2
  30. package/dist/widgets/__federation_expose_Runs.js +1 -1
  31. package/dist/widgets/mf-manifest.json +49 -59
  32. package/dist/widgets/mf-stats.json +67 -79
  33. package/dist/widgets/remoteEntry.js +2 -2
  34. package/dist/ws/logs-channel.js +66 -26
  35. package/dist/ws/logs-channel.js.map +1 -1
  36. package/dist/ws/progress-channel.js +42 -12
  37. package/dist/ws/progress-channel.js.map +1 -1
  38. package/package.json +4 -3
  39. package/dist/widgets/62.js +0 -96
  40. package/dist/widgets/__federation_expose_Dashboard.js +0 -1
@@ -0,0 +1,407 @@
1
+ "use strict";(self.rspackChunk_kb_labs_workflow_entry=self.rspackChunk_kb_labs_workflow_entry||[]).push([[256],{7912(e,t,n){var r=n(2239),o=n.n(r),i=n(7504),a=n.n(i)()(o());a.push([e.id,`/* this gets exported as style.css and can be used for the default theming */
2
+ /* these are the necessary styles for React Flow, they get used by base.css and style.css */
3
+ .react-flow {
4
+ direction: ltr;
5
+ }
6
+ .react-flow__container {
7
+ position: absolute;
8
+ width: 100%;
9
+ height: 100%;
10
+ top: 0;
11
+ left: 0;
12
+ }
13
+ .react-flow__pane {
14
+ z-index: 1;
15
+ cursor: -webkit-grab;
16
+ cursor: grab;
17
+ }
18
+ .react-flow__pane.selection {
19
+ cursor: pointer;
20
+ }
21
+ .react-flow__pane.dragging {
22
+ cursor: -webkit-grabbing;
23
+ cursor: grabbing;
24
+ }
25
+ .react-flow__viewport {
26
+ transform-origin: 0 0;
27
+ z-index: 2;
28
+ pointer-events: none;
29
+ }
30
+ .react-flow__renderer {
31
+ z-index: 4;
32
+ }
33
+ .react-flow__selection {
34
+ z-index: 6;
35
+ }
36
+ .react-flow__nodesselection-rect:focus,
37
+ .react-flow__nodesselection-rect:focus-visible {
38
+ outline: none;
39
+ }
40
+ .react-flow .react-flow__edges {
41
+ pointer-events: none;
42
+ overflow: visible;
43
+ }
44
+ .react-flow__edge-path,
45
+ .react-flow__connection-path {
46
+ stroke: #b1b1b7;
47
+ stroke-width: 1;
48
+ fill: none;
49
+ }
50
+ .react-flow__edge {
51
+ pointer-events: visibleStroke;
52
+ cursor: pointer;
53
+ }
54
+ .react-flow__edge.animated path {
55
+ stroke-dasharray: 5;
56
+ -webkit-animation: dashdraw 0.5s linear infinite;
57
+ animation: dashdraw 0.5s linear infinite;
58
+ }
59
+ .react-flow__edge.animated path.react-flow__edge-interaction {
60
+ stroke-dasharray: none;
61
+ -webkit-animation: none;
62
+ animation: none;
63
+ }
64
+ .react-flow__edge.inactive {
65
+ pointer-events: none;
66
+ }
67
+ .react-flow__edge.selected,
68
+ .react-flow__edge:focus,
69
+ .react-flow__edge:focus-visible {
70
+ outline: none;
71
+ }
72
+ .react-flow__edge.selected .react-flow__edge-path,
73
+ .react-flow__edge:focus .react-flow__edge-path,
74
+ .react-flow__edge:focus-visible .react-flow__edge-path {
75
+ stroke: #555;
76
+ }
77
+ .react-flow__edge-textwrapper {
78
+ pointer-events: all;
79
+ }
80
+ .react-flow__edge-textbg {
81
+ fill: white;
82
+ }
83
+ .react-flow__edge .react-flow__edge-text {
84
+ pointer-events: none;
85
+ -webkit-user-select: none;
86
+ -moz-user-select: none;
87
+ user-select: none;
88
+ }
89
+ .react-flow__connection {
90
+ pointer-events: none;
91
+ }
92
+ .react-flow__connection .animated {
93
+ stroke-dasharray: 5;
94
+ -webkit-animation: dashdraw 0.5s linear infinite;
95
+ animation: dashdraw 0.5s linear infinite;
96
+ }
97
+ .react-flow__connectionline {
98
+ z-index: 1001;
99
+ }
100
+ .react-flow__nodes {
101
+ pointer-events: none;
102
+ transform-origin: 0 0;
103
+ }
104
+ .react-flow__node {
105
+ position: absolute;
106
+ -webkit-user-select: none;
107
+ -moz-user-select: none;
108
+ user-select: none;
109
+ pointer-events: all;
110
+ transform-origin: 0 0;
111
+ box-sizing: border-box;
112
+ cursor: -webkit-grab;
113
+ cursor: grab;
114
+ }
115
+ .react-flow__node.dragging {
116
+ cursor: -webkit-grabbing;
117
+ cursor: grabbing;
118
+ }
119
+ .react-flow__nodesselection {
120
+ z-index: 3;
121
+ transform-origin: left top;
122
+ pointer-events: none;
123
+ }
124
+ .react-flow__nodesselection-rect {
125
+ position: absolute;
126
+ pointer-events: all;
127
+ cursor: -webkit-grab;
128
+ cursor: grab;
129
+ }
130
+ .react-flow__handle {
131
+ position: absolute;
132
+ pointer-events: none;
133
+ min-width: 5px;
134
+ min-height: 5px;
135
+ width: 6px;
136
+ height: 6px;
137
+ background: #1a192b;
138
+ border: 1px solid white;
139
+ border-radius: 100%;
140
+ }
141
+ .react-flow__handle.connectionindicator {
142
+ pointer-events: all;
143
+ cursor: crosshair;
144
+ }
145
+ .react-flow__handle-bottom {
146
+ top: auto;
147
+ left: 50%;
148
+ bottom: -4px;
149
+ transform: translate(-50%, 0);
150
+ }
151
+ .react-flow__handle-top {
152
+ left: 50%;
153
+ top: -4px;
154
+ transform: translate(-50%, 0);
155
+ }
156
+ .react-flow__handle-left {
157
+ top: 50%;
158
+ left: -4px;
159
+ transform: translate(0, -50%);
160
+ }
161
+ .react-flow__handle-right {
162
+ right: -4px;
163
+ top: 50%;
164
+ transform: translate(0, -50%);
165
+ }
166
+ .react-flow__edgeupdater {
167
+ cursor: move;
168
+ pointer-events: all;
169
+ }
170
+ .react-flow__panel {
171
+ position: absolute;
172
+ z-index: 5;
173
+ margin: 15px;
174
+ }
175
+ .react-flow__panel.top {
176
+ top: 0;
177
+ }
178
+ .react-flow__panel.bottom {
179
+ bottom: 0;
180
+ }
181
+ .react-flow__panel.left {
182
+ left: 0;
183
+ }
184
+ .react-flow__panel.right {
185
+ right: 0;
186
+ }
187
+ .react-flow__panel.center {
188
+ left: 50%;
189
+ transform: translateX(-50%);
190
+ }
191
+ .react-flow__attribution {
192
+ font-size: 10px;
193
+ background: rgba(255, 255, 255, 0.5);
194
+ padding: 2px 3px;
195
+ margin: 0;
196
+ }
197
+ .react-flow__attribution a {
198
+ text-decoration: none;
199
+ color: #999;
200
+ }
201
+ @-webkit-keyframes dashdraw {
202
+ from {
203
+ stroke-dashoffset: 10;
204
+ }
205
+ }
206
+ @keyframes dashdraw {
207
+ from {
208
+ stroke-dashoffset: 10;
209
+ }
210
+ }
211
+ .react-flow__edgelabel-renderer {
212
+ position: absolute;
213
+ width: 100%;
214
+ height: 100%;
215
+ pointer-events: none;
216
+ -webkit-user-select: none;
217
+ -moz-user-select: none;
218
+ user-select: none;
219
+ }
220
+ .react-flow__edge.updating .react-flow__edge-path {
221
+ stroke: #777;
222
+ }
223
+ .react-flow__edge-text {
224
+ font-size: 10px;
225
+ }
226
+ .react-flow__node.selectable:focus,
227
+ .react-flow__node.selectable:focus-visible {
228
+ outline: none;
229
+ }
230
+ .react-flow__node-default,
231
+ .react-flow__node-input,
232
+ .react-flow__node-output,
233
+ .react-flow__node-group {
234
+ padding: 10px;
235
+ border-radius: 3px;
236
+ width: 150px;
237
+ font-size: 12px;
238
+ color: #222;
239
+ text-align: center;
240
+ border-width: 1px;
241
+ border-style: solid;
242
+ border-color: #1a192b;
243
+ background-color: white;
244
+ }
245
+ .react-flow__node-default.selectable:hover, .react-flow__node-input.selectable:hover, .react-flow__node-output.selectable:hover, .react-flow__node-group.selectable:hover {
246
+ box-shadow: 0 1px 4px 1px rgba(0, 0, 0, 0.08);
247
+ }
248
+ .react-flow__node-default.selectable.selected,
249
+ .react-flow__node-default.selectable:focus,
250
+ .react-flow__node-default.selectable:focus-visible,
251
+ .react-flow__node-input.selectable.selected,
252
+ .react-flow__node-input.selectable:focus,
253
+ .react-flow__node-input.selectable:focus-visible,
254
+ .react-flow__node-output.selectable.selected,
255
+ .react-flow__node-output.selectable:focus,
256
+ .react-flow__node-output.selectable:focus-visible,
257
+ .react-flow__node-group.selectable.selected,
258
+ .react-flow__node-group.selectable:focus,
259
+ .react-flow__node-group.selectable:focus-visible {
260
+ box-shadow: 0 0 0 0.5px #1a192b;
261
+ }
262
+ .react-flow__node-group {
263
+ background-color: rgba(240, 240, 240, 0.25);
264
+ }
265
+ .react-flow__nodesselection-rect,
266
+ .react-flow__selection {
267
+ background: rgba(0, 89, 220, 0.08);
268
+ border: 1px dotted rgba(0, 89, 220, 0.8);
269
+ }
270
+ .react-flow__nodesselection-rect:focus,
271
+ .react-flow__nodesselection-rect:focus-visible,
272
+ .react-flow__selection:focus,
273
+ .react-flow__selection:focus-visible {
274
+ outline: none;
275
+ }
276
+ .react-flow__controls {
277
+ box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.08);
278
+ }
279
+ .react-flow__controls-button {
280
+ border: none;
281
+ background: #fefefe;
282
+ border-bottom: 1px solid #eee;
283
+ box-sizing: content-box;
284
+ display: flex;
285
+ justify-content: center;
286
+ align-items: center;
287
+ width: 16px;
288
+ height: 16px;
289
+ cursor: pointer;
290
+ -webkit-user-select: none;
291
+ -moz-user-select: none;
292
+ user-select: none;
293
+ padding: 5px;
294
+ }
295
+ .react-flow__controls-button:hover {
296
+ background: #f4f4f4;
297
+ }
298
+ .react-flow__controls-button svg {
299
+ width: 100%;
300
+ max-width: 12px;
301
+ max-height: 12px;
302
+ }
303
+ .react-flow__controls-button:disabled {
304
+ pointer-events: none;
305
+ }
306
+ .react-flow__controls-button:disabled svg {
307
+ fill-opacity: 0.4;
308
+ }
309
+ .react-flow__minimap {
310
+ background-color: #fff;
311
+ }
312
+ .react-flow__minimap svg {
313
+ display: block;
314
+ }
315
+ .react-flow__resize-control {
316
+ position: absolute;
317
+ }
318
+ .react-flow__resize-control.left,
319
+ .react-flow__resize-control.right {
320
+ cursor: ew-resize;
321
+ }
322
+ .react-flow__resize-control.top,
323
+ .react-flow__resize-control.bottom {
324
+ cursor: ns-resize;
325
+ }
326
+ .react-flow__resize-control.top.left,
327
+ .react-flow__resize-control.bottom.right {
328
+ cursor: nwse-resize;
329
+ }
330
+ .react-flow__resize-control.bottom.left,
331
+ .react-flow__resize-control.top.right {
332
+ cursor: nesw-resize;
333
+ }
334
+ /* handle styles */
335
+ .react-flow__resize-control.handle {
336
+ width: 4px;
337
+ height: 4px;
338
+ border: 1px solid #fff;
339
+ border-radius: 1px;
340
+ background-color: #3367d9;
341
+ transform: translate(-50%, -50%);
342
+ }
343
+ .react-flow__resize-control.handle.left {
344
+ left: 0;
345
+ top: 50%;
346
+ }
347
+ .react-flow__resize-control.handle.right {
348
+ left: 100%;
349
+ top: 50%;
350
+ }
351
+ .react-flow__resize-control.handle.top {
352
+ left: 50%;
353
+ top: 0;
354
+ }
355
+ .react-flow__resize-control.handle.bottom {
356
+ left: 50%;
357
+ top: 100%;
358
+ }
359
+ .react-flow__resize-control.handle.top.left {
360
+ left: 0;
361
+ }
362
+ .react-flow__resize-control.handle.bottom.left {
363
+ left: 0;
364
+ }
365
+ .react-flow__resize-control.handle.top.right {
366
+ left: 100%;
367
+ }
368
+ .react-flow__resize-control.handle.bottom.right {
369
+ left: 100%;
370
+ }
371
+ /* line styles */
372
+ .react-flow__resize-control.line {
373
+ border-color: #3367d9;
374
+ border-width: 0;
375
+ border-style: solid;
376
+ }
377
+ .react-flow__resize-control.line.left,
378
+ .react-flow__resize-control.line.right {
379
+ width: 1px;
380
+ transform: translate(-50%, 0);
381
+ top: 0;
382
+ height: 100%;
383
+ }
384
+ .react-flow__resize-control.line.left {
385
+ left: 0;
386
+ border-left-width: 1px;
387
+ }
388
+ .react-flow__resize-control.line.right {
389
+ left: 100%;
390
+ border-right-width: 1px;
391
+ }
392
+ .react-flow__resize-control.line.top,
393
+ .react-flow__resize-control.line.bottom {
394
+ height: 1px;
395
+ transform: translate(0, -50%);
396
+ left: 0;
397
+ width: 100%;
398
+ }
399
+ .react-flow__resize-control.line.top {
400
+ top: 0;
401
+ border-top-width: 1px;
402
+ }
403
+ .react-flow__resize-control.line.bottom {
404
+ border-bottom-width: 1px;
405
+ top: 100%;
406
+ }
407
+ `,""]),n.d(t,{},{A:a})},7504(e){e.exports=function(e){var t=[];return t.toString=function(){return this.map(function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n}).join("")},t.i=function(e,n,r,o,i){"string"==typeof e&&(e=[[null,e,void 0]]);var a={};if(r)for(var l=0;l<this.length;l++){var s=this[l][0];null!=s&&(a[s]=!0)}for(var c=0;c<e.length;c++){var u=[].concat(e[c]);r&&a[u[0]]||(void 0!==i&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=i),n&&(u[2]&&(u[1]="@media ".concat(u[2]," {").concat(u[1],"}")),u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),t.push(u))}},t}},2239(e){e.exports=function(e){return e[1]}},6026(e,t){var n=Symbol.for("react.transitional.element");function r(e,t,r){var o=null;if(void 0!==r&&(o=""+r),void 0!==t.key&&(o=""+t.key),"key"in t)for(var i in r={},t)"key"!==i&&(r[i]=t[i]);else r=t;return{$$typeof:n,type:e,key:o,ref:void 0!==(t=r.ref)?t:null,props:r}}t.Fragment=Symbol.for("react.fragment"),t.jsx=r,t.jsxs=r},4552(e,t,n){e.exports=n(6026)},737(e,t,n){var r=n(8894),o=n.n(r),i=n(759),a=n.n(i),l=n(8669),s=n.n(l),c=n(7022),u=n.n(c),d=n(6506),f=n.n(d),h=n(6767),p=n.n(h),g=n(7912),m={};m.styleTagTransform=p(),m.setAttributes=u(),m.insert=s().bind(null,"head"),m.domAPI=a(),m.insertStyleElement=f(),o()(g.A,m),g.A&&g.A.locals&&g.A.locals},8894(e){var t=[];function n(e){for(var n=-1,r=0;r<t.length;r++)if(t[r].identifier===e){n=r;break}return n}function r(e,r){for(var o={},i=[],a=0;a<e.length;a++){var l=e[a],s=r.base?l[0]+r.base:l[0],c=o[s]||0,u="".concat(s," ").concat(c);o[s]=c+1;var d=n(u),f={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==d)t[d].references++,t[d].updater(f);else{var h=function(e,t){var n=t.domAPI(t);return n.update(e),function(t){t?(t.css!==e.css||t.media!==e.media||t.sourceMap!==e.sourceMap||t.supports!==e.supports||t.layer!==e.layer)&&n.update(e=t):n.remove()}}(f,r);r.byIndex=a,t.splice(a,0,{identifier:u,updater:h,references:1})}i.push(u)}return i}e.exports=function(e,o){var i=r(e=e||[],o=o||{});return function(e){e=e||[];for(var a=0;a<i.length;a++){var l=n(i[a]);t[l].references--}for(var s=r(e,o),c=0;c<i.length;c++){var u=n(i[c]);0===t[u].references&&(t[u].updater(),t.splice(u,1))}i=s}}},8669(e){var t={};e.exports=function(e,n){var r=function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}t[e]=n}return t[e]}(e);if(!r)throw Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},6506(e){e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},7022(e,t,n){e.exports=function(e){var t=n.nc;t&&e.setAttribute("nonce",t)}},759(e){e.exports=function(e){if("u"<typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(n){var r,o,i;r="",n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {")),(o=void 0!==n.layer)&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}"),(i=n.sourceMap)&&"u">typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),e.styleTagTransform(r,t,e.options)},remove:function(){var e;null===(e=t).parentNode||e.parentNode.removeChild(e)}}}},6767(e){e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},1816(e,t,n){var r=n(1913),o="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},i=r.useState,a=r.useEffect,l=r.useLayoutEffect,s=r.useDebugValue;function c(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!o(e,n)}catch(e){return!0}}var u="u"<typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var n=t(),r=i({inst:{value:n,getSnapshot:t}}),o=r[0].inst,u=r[1];return l(function(){o.value=n,o.getSnapshot=t,c(o)&&u({inst:o})},[e,n,t]),a(function(){return c(o)&&u({inst:o}),e(function(){c(o)&&u({inst:o})})},[e]),s(n),n};t.useSyncExternalStore=void 0!==r.useSyncExternalStore?r.useSyncExternalStore:u},8995(e,t,n){var r=n(1913),o=n(6739),i="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},a=o.useSyncExternalStore,l=r.useRef,s=r.useEffect,c=r.useMemo,u=r.useDebugValue;t.useSyncExternalStoreWithSelector=function(e,t,n,r,o){var d=l(null);if(null===d.current){var f={hasValue:!1,value:null};d.current=f}else f=d.current;var h=a(e,(d=c(function(){function e(e){if(!s){if(s=!0,a=e,e=r(e),void 0!==o&&f.hasValue){var t=f.value;if(o(t,e))return l=t}return l=e}if(t=l,i(a,e))return t;var n=r(e);return void 0!==o&&o(t,n)?(a=e,t):(a=e,l=n)}var a,l,s=!1,c=void 0===n?null:n;return[function(){return e(t())},null===c?void 0:function(){return e(c())}]},[t,n,r,o]))[0],d[1]);return s(function(){f.hasValue=!0,f.value=h},[h]),u(h),h}},6739(e,t,n){e.exports=n(1816)},969(e,t,n){e.exports=n(8995)},6990(e,t,n){var r,o,i=n(1913),a=n.n(i),l=n(5856),s=n(9902),c=n(1815);function u({color:e,dimensions:t,lineWidth:n}){return a().createElement("path",{stroke:e,strokeWidth:n,d:`M${t[0]/2} 0 V${t[1]} M0 ${t[1]/2} H${t[0]}`})}function d({color:e,radius:t}){return a().createElement("circle",{cx:t,cy:t,r:t,fill:e})}(r=o||(o={})).Lines="lines",r.Dots="dots",r.Cross="cross";let f={[o.Dots]:"#91919a",[o.Lines]:"#eee",[o.Cross]:"#e2e2e2"},h={[o.Dots]:1,[o.Lines]:1,[o.Cross]:6},p=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function g({id:e,variant:t=o.Dots,gap:n=20,size:r,lineWidth:m=1,offset:y=2,color:v,style:b,className:w}){let x=(0,i.useRef)(null),{transform:_,patternId:S}=(0,s.Pj)(p,c.x),E=v||f[t],M=r||h[t],k=t===o.Dots,N=t===o.Cross,A=Array.isArray(n)?n:[n,n],C=[A[0]*_[2]||1,A[1]*_[2]||1],z=M*_[2],$=N?[z,z]:C,P=k?[z/y,z/y]:[$[0]/y,$[1]/y];return a().createElement("svg",{className:(0,l.A)(["react-flow__background",w]),style:{...b,position:"absolute",width:"100%",height:"100%",top:0,left:0},ref:x,"data-testid":"rf__background"},a().createElement("pattern",{id:S+e,x:_[0]%C[0],y:_[1]%C[1],width:C[0],height:C[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${P[0]},-${P[1]})`},k?a().createElement(d,{color:E,radius:z/y}):a().createElement(u,{dimensions:$,color:E,lineWidth:m})),a().createElement("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${S+e})`}))}g.displayName="Background";var m=(0,i.memo)(g);n.d(t,{V:()=>m})},8015(e,t,n){var r=n(1913),o=n.n(r),i=n(5856),a=n(1815),l=n(9902);function s(){return o().createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},o().createElement("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"}))}function c(){return o().createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},o().createElement("path",{d:"M0 0h32v4.2H0z"}))}function u(){return o().createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},o().createElement("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"}))}function d(){return o().createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},o().createElement("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"}))}function f(){return o().createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},o().createElement("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"}))}let h=({children:e,className:t,...n})=>o().createElement("button",{type:"button",className:(0,i.A)(["react-flow__controls-button",t]),...n},e);h.displayName="ControlButton";let p=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom}),g=({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:g=!0,fitViewOptions:m,onZoomIn:y,onZoomOut:v,onFitView:b,onInteractiveChange:w,className:x,children:_,position:S="bottom-left"})=>{let E=(0,l.PI)(),[M,k]=(0,r.useState)(!1),{isInteractive:N,minZoomReached:A,maxZoomReached:C}=(0,l.Pj)(p,a.x),{zoomIn:z,zoomOut:$,fitView:P}=(0,l.VH)();return((0,r.useEffect)(()=>{k(!0)},[]),M)?o().createElement(l.Zk,{className:(0,i.A)(["react-flow__controls",x]),position:S,style:e,"data-testid":"rf__controls"},t&&o().createElement(o().Fragment,null,o().createElement(h,{onClick:()=>{z(),y?.()},className:"react-flow__controls-zoomin",title:"zoom in","aria-label":"zoom in",disabled:C},o().createElement(s,null)),o().createElement(h,{onClick:()=>{$(),v?.()},className:"react-flow__controls-zoomout",title:"zoom out","aria-label":"zoom out",disabled:A},o().createElement(c,null))),n&&o().createElement(h,{className:"react-flow__controls-fitview",onClick:()=>{P(m),b?.()},title:"fit view","aria-label":"fit view"},o().createElement(u,null)),g&&o().createElement(h,{className:"react-flow__controls-interactive",onClick:()=>{E.setState({nodesDraggable:!N,nodesConnectable:!N,elementsSelectable:!N}),w?.(!N)},title:"toggle interactivity","aria-label":"toggle interactivity"},N?o().createElement(f,null):o().createElement(d,null)),_):null};g.displayName="Controls";var m=(0,r.memo)(g);n.d(t,{H:()=>m})},9902(e,t,n){n.d(t,{tE:()=>tI,rV:()=>rJ,h7:()=>ns,Zk:()=>tp,yX:()=>g,Gc:()=>rG,VH:()=>nj,Pj:()=>td,PI:()=>tf});var r,o,i,a,l,s,c,u,d,f,h,p,g,m=n(1913),y=n.n(m),v=n(5856),b=n(969);let w=e=>{let t,n=new Set,r=(e,r)=>{let o="function"==typeof e?e(t):e;if(!Object.is(o,t)){let e=t;t=(null!=r?r:"object"!=typeof o||null===o)?o:Object.assign({},t,o),n.forEach(n=>n(t,e))}},o=()=>t,i={setState:r,getState:o,getInitialState:()=>a,subscribe:e=>(n.add(e),()=>n.delete(e)),destroy:()=>{console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},a=t=e(r,o,i);return i},{useDebugValue:x}=y(),{useSyncExternalStoreWithSelector:_}=b,S=e=>e;function E(e,t=S,n){let r=_(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return x(r),r}let M=(e,t)=>{let n=e?w(e):w,r=(e,r=t)=>E(n,e,r);return Object.assign(r,n),r};var k=n(1815),N=n(2429);function A(){}function C(e){return null==e?A:function(){return this.querySelector(e)}}function z(){return[]}function $(e){return null==e?z:function(){return this.querySelectorAll(e)}}function P(e){return function(){return this.matches(e)}}function I(e){return function(t){return t.matches(e)}}var R=Array.prototype.find;function O(){return this.firstElementChild}var T=Array.prototype.filter;function D(){return Array.from(this.children)}function B(e){return Array(e.length)}function H(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}function L(e,t,n,r,o,i){for(var a,l=0,s=t.length,c=i.length;l<c;++l)(a=t[l])?(a.__data__=i[l],r[l]=a):n[l]=new H(e,i[l]);for(;l<s;++l)(a=t[l])&&(o[l]=a)}function V(e,t,n,r,o,i,a){var l,s,c,u=new Map,d=t.length,f=i.length,h=Array(d);for(l=0;l<d;++l)(s=t[l])&&(h[l]=c=a.call(s,s.__data__,l,t)+"",u.has(c)?o[l]=s:u.set(c,s));for(l=0;l<f;++l)c=a.call(e,i[l],l,i)+"",(s=u.get(c))?(r[l]=s,s.__data__=i[l],u.delete(c)):n[l]=new H(e,i[l]);for(l=0;l<d;++l)(s=t[l])&&u.get(h[l])===s&&(o[l]=s)}function X(e){return e.__data__}function j(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}H.prototype={constructor:H,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};var F="http://www.w3.org/1999/xhtml";let Y={svg:"http://www.w3.org/2000/svg",xhtml:F,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function K(e){var t=e+="",n=t.indexOf(":");return n>=0&&"xmlns"!==(t=e.slice(0,n))&&(e=e.slice(n+1)),Y.hasOwnProperty(t)?{space:Y[t],local:e}:e}function q(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function Z(e,t){return e.style.getPropertyValue(t)||q(e).getComputedStyle(e,null).getPropertyValue(t)}function W(e){return e.trim().split(/^|\s+/)}function U(e){return e.classList||new G(e)}function G(e){this._node=e,this._names=W(e.getAttribute("class")||"")}function Q(e,t){for(var n=U(e),r=-1,o=t.length;++r<o;)n.add(t[r])}function J(e,t){for(var n=U(e),r=-1,o=t.length;++r<o;)n.remove(t[r])}function ee(){this.textContent=""}function et(){this.innerHTML=""}function en(){this.nextSibling&&this.parentNode.appendChild(this)}function er(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function eo(e){var t=K(e);return(t.local?function(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}:function(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===F&&t.documentElement.namespaceURI===F?t.createElement(e):t.createElementNS(n,e)}})(t)}function ei(){return null}function ea(){var e=this.parentNode;e&&e.removeChild(this)}function el(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function es(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function ec(e){return function(){var t=this.__on;if(t){for(var n,r=0,o=-1,i=t.length;r<i;++r)(n=t[r],e.type&&n.type!==e.type||n.name!==e.name)?t[++o]=n:this.removeEventListener(n.type,n.listener,n.options);++o?t.length=o:delete this.__on}}}function eu(e,t,n){return function(){var r,o=this.__on,i=function(e){t.call(this,e,this.__data__)};if(o){for(var a=0,l=o.length;a<l;++a)if((r=o[a]).type===e.type&&r.name===e.name){this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=i,r.options=n),r.value=t;return}}this.addEventListener(e.type,i,n),r={type:e.type,name:e.name,value:t,listener:i,options:n},o?o.push(r):this.__on=[r]}}function ed(e,t,n){var r=q(e),o=r.CustomEvent;"function"==typeof o?o=new o(t,n):(o=r.document.createEvent("Event"),n?(o.initEvent(t,n.bubbles,n.cancelable),o.detail=n.detail):o.initEvent(t,!1,!1)),e.dispatchEvent(o)}G.prototype={add:function(e){0>this._names.indexOf(e)&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};var ef=[null];function eh(e,t){this._groups=e,this._parents=t}function ep(){return new eh([[document.documentElement]],ef)}function eg(e){return"string"==typeof e?new eh([[document.querySelector(e)]],[document.documentElement]):new eh([[e]],ef)}eh.prototype=ep.prototype={constructor:eh,select:function(e){"function"!=typeof e&&(e=C(e));for(var t=this._groups,n=t.length,r=Array(n),o=0;o<n;++o)for(var i,a,l=t[o],s=l.length,c=r[o]=Array(s),u=0;u<s;++u)(i=l[u])&&(a=e.call(i,i.__data__,u,l))&&("__data__"in i&&(a.__data__=i.__data__),c[u]=a);return new eh(r,this._parents)},selectAll:function(e){if("function"==typeof e){var t;t=e,e=function(){var e;return e=t.apply(this,arguments),null==e?[]:Array.isArray(e)?e:Array.from(e)}}else e=$(e);for(var n=this._groups,r=n.length,o=[],i=[],a=0;a<r;++a)for(var l,s=n[a],c=s.length,u=0;u<c;++u)(l=s[u])&&(o.push(e.call(l,l.__data__,u,s)),i.push(l));return new eh(o,i)},selectChild:function(e){var t;return this.select(null==e?O:(t="function"==typeof e?e:I(e),function(){return R.call(this.children,t)}))},selectChildren:function(e){var t;return this.selectAll(null==e?D:(t="function"==typeof e?e:I(e),function(){return T.call(this.children,t)}))},filter:function(e){"function"!=typeof e&&(e=P(e));for(var t=this._groups,n=t.length,r=Array(n),o=0;o<n;++o)for(var i,a=t[o],l=a.length,s=r[o]=[],c=0;c<l;++c)(i=a[c])&&e.call(i,i.__data__,c,a)&&s.push(i);return new eh(r,this._parents)},data:function(e,t){if(!arguments.length)return Array.from(this,X);var n=t?V:L,r=this._parents,o=this._groups;"function"!=typeof e&&(v=e,e=function(){return v});for(var i=o.length,a=Array(i),l=Array(i),s=Array(i),c=0;c<i;++c){var u=r[c],d=o[c],f=d.length,h="object"==typeof(y=e.call(u,u&&u.__data__,c,r))&&"length"in y?y:Array.from(y),p=h.length,g=l[c]=Array(p),m=a[c]=Array(p);n(u,d,g,m,s[c]=Array(f),h,t);for(var y,v,b,w,x=0,_=0;x<p;++x)if(b=g[x]){for(x>=_&&(_=x+1);!(w=m[_])&&++_<p;);b._next=w||null}}return(a=new eh(a,r))._enter=l,a._exit=s,a},enter:function(){return new eh(this._enter||this._groups.map(B),this._parents)},exit:function(){return new eh(this._exit||this._groups.map(B),this._parents)},join:function(e,t,n){var r=this.enter(),o=this,i=this.exit();return"function"==typeof e?(r=e(r))&&(r=r.selection()):r=r.append(e+""),null!=t&&(o=t(o))&&(o=o.selection()),null==n?i.remove():n(i),r&&o?r.merge(o).order():o},merge:function(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,o=n.length,i=r.length,a=Math.min(o,i),l=Array(o),s=0;s<a;++s)for(var c,u=n[s],d=r[s],f=u.length,h=l[s]=Array(f),p=0;p<f;++p)(c=u[p]||d[p])&&(h[p]=c);for(;s<o;++s)l[s]=n[s];return new eh(l,this._parents)},selection:function(){return this},order:function(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r,o=e[t],i=o.length-1,a=o[i];--i>=0;)(r=o[i])&&(a&&4^r.compareDocumentPosition(a)&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(e){function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}e||(e=j);for(var n=this._groups,r=n.length,o=Array(r),i=0;i<r;++i){for(var a,l=n[i],s=l.length,c=o[i]=Array(s),u=0;u<s;++u)(a=l[u])&&(c[u]=a);c.sort(t)}return new eh(o,this._parents).order()},call:function(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],o=0,i=r.length;o<i;++o){var a=r[o];if(a)return a}return null},size:function(){let e=0;for(let t of this)++e;return e},empty:function(){return!this.node()},each:function(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var o,i=t[n],a=0,l=i.length;a<l;++a)(o=i[a])&&e.call(o,o.__data__,a,i);return this},attr:function(e,t){var n=K(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((null==t?n.local?function(e){return function(){this.removeAttributeNS(e.space,e.local)}}:function(e){return function(){this.removeAttribute(e)}}:"function"==typeof t?n.local?function(e,t){return function(){var n=t.apply(this,arguments);null==n?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}:function(e,t){return function(){var n=t.apply(this,arguments);null==n?this.removeAttribute(e):this.setAttribute(e,n)}}:n.local?function(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}:function(e,t){return function(){this.setAttribute(e,t)}})(n,t))},style:function(e,t,n){return arguments.length>1?this.each((null==t?function(e){return function(){this.style.removeProperty(e)}}:"function"==typeof t?function(e,t,n){return function(){var r=t.apply(this,arguments);null==r?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}:function(e,t,n){return function(){this.style.setProperty(e,t,n)}})(e,t,null==n?"":n)):Z(this.node(),e)},property:function(e,t){return arguments.length>1?this.each((null==t?function(e){return function(){delete this[e]}}:"function"==typeof t?function(e,t){return function(){var n=t.apply(this,arguments);null==n?delete this[e]:this[e]=n}}:function(e,t){return function(){this[e]=t}})(e,t)):this.node()[e]},classed:function(e,t){var n=W(e+"");if(arguments.length<2){for(var r=U(this.node()),o=-1,i=n.length;++o<i;)if(!r.contains(n[o]))return!1;return!0}return this.each(("function"==typeof t?function(e,t){return function(){(t.apply(this,arguments)?Q:J)(this,e)}}:t?function(e){return function(){Q(this,e)}}:function(e){return function(){J(this,e)}})(n,t))},text:function(e){return arguments.length?this.each(null==e?ee:("function"==typeof e?function(e){return function(){var t=e.apply(this,arguments);this.textContent=null==t?"":t}}:function(e){return function(){this.textContent=e}})(e)):this.node().textContent},html:function(e){return arguments.length?this.each(null==e?et:("function"==typeof e?function(e){return function(){var t=e.apply(this,arguments);this.innerHTML=null==t?"":t}}:function(e){return function(){this.innerHTML=e}})(e)):this.node().innerHTML},raise:function(){return this.each(en)},lower:function(){return this.each(er)},append:function(e){var t="function"==typeof e?e:eo(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})},insert:function(e,t){var n="function"==typeof e?e:eo(e),r=null==t?ei:"function"==typeof t?t:C(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})},remove:function(){return this.each(ea)},clone:function(e){return this.select(e?es:el)},datum:function(e){return arguments.length?this.property("__data__",e):this.node().__data__},on:function(e,t,n){var r,o,i=(e+"").trim().split(/^|\s+/).map(function(e){var t="",n=e.indexOf(".");return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}}),a=i.length;if(arguments.length<2){var l=this.node().__on;if(l){for(var s,c=0,u=l.length;c<u;++c)for(r=0,s=l[c];r<a;++r)if((o=i[r]).type===s.type&&o.name===s.name)return s.value}return}for(l=t?eu:ec,r=0;r<a;++r)this.each(l(i[r],t,n));return this},dispatch:function(e,t){return this.each(("function"==typeof t?function(e,t){return function(){return ed(this,e,t.apply(this,arguments))}}:function(e,t){return function(){return ed(this,e,t)}})(e,t))},[Symbol.iterator]:function*(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r,o=e[t],i=0,a=o.length;i<a;++i)(r=o[i])&&(yield r)}};let em={passive:!1},ey={capture:!0,passive:!1};function ev(e){e.stopImmediatePropagation()}function eb(e){e.preventDefault(),e.stopImmediatePropagation()}function ew(e){var t=e.document.documentElement,n=eg(e).on("dragstart.drag",eb,ey);"onselectstart"in t?n.on("selectstart.drag",eb,ey):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function ex(e,t){var n=e.document.documentElement,r=eg(e).on("dragstart.drag",null);t&&(r.on("click.drag",eb,ey),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}function e_(e){return((e=Math.exp(e))+1/e)/2}let eS=function e(t,n,r){function o(e,o){var i,a,l=e[0],s=e[1],c=e[2],u=o[0],d=o[1],f=o[2],h=u-l,p=d-s,g=h*h+p*p;if(g<1e-12)a=Math.log(f/c)/t,i=function(e){return[l+e*h,s+e*p,c*Math.exp(t*e*a)]};else{var m=Math.sqrt(g),y=(f*f-c*c+r*g)/(2*c*n*m),v=(f*f-c*c-r*g)/(2*f*n*m),b=Math.log(Math.sqrt(y*y+1)-y);a=(Math.log(Math.sqrt(v*v+1)-v)-b)/t,i=function(e){var r,o,i=e*a,u=e_(b),d=c/(n*m)*(u*(((r=Math.exp(2*(r=t*i+b)))-1)/(r+1))-((o=Math.exp(o=b))-1/o)/2);return[l+d*h,s+d*p,c*u/e_(t*i+b)]}}return i.duration=1e3*a*t/Math.SQRT2,i}return o.rho=function(t){var n=Math.max(.001,+t),r=n*n;return e(n,r,r*r)},o}(Math.SQRT2,2,4);function eE(e,t){if(e=function(e){let t;for(;t=e.sourceEvent;)e=t;return e}(e),void 0===t&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,[(r=r.matrixTransform(t.getScreenCTM().inverse())).x,r.y]}if(t.getBoundingClientRect){var o=t.getBoundingClientRect();return[e.clientX-o.left-t.clientLeft,e.clientY-o.top-t.clientTop]}}return[e.pageX,e.pageY]}var eM=n(9030);function ek(e,t,n){var r=new eM.M4;return t=null==t?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}var eN=(0,N.A)("start","end","cancel","interrupt"),eA=[];function eC(e,t,n,r,o,i){var a=e.__transition;if(a){if(n in a)return}else e.__transition={};!function(e,t,n){var r,o=e.__transition;function i(s){var c,u,d,f;if(1!==n.state)return l();for(c in o)if((f=o[c]).name===n.name){if(3===f.state)return ek(i);4===f.state?(f.state=6,f.timer.stop(),f.on.call("interrupt",e,e.__data__,f.index,f.group),delete o[c]):+c<t&&(f.state=6,f.timer.stop(),f.on.call("cancel",e,e.__data__,f.index,f.group),delete o[c])}if(ek(function(){3===n.state&&(n.state=4,n.timer.restart(a,n.delay,n.time),a(s))}),n.state=2,n.on.call("start",e,e.__data__,n.index,n.group),2===n.state){for(n.state=3,r=Array(d=n.tween.length),c=0,u=-1;c<d;++c)(f=n.tween[c].value.call(e,e.__data__,n.index,n.group))&&(r[++u]=f);r.length=u+1}}function a(t){for(var o=t<n.duration?n.ease.call(null,t/n.duration):(n.timer.restart(l),n.state=5,1),i=-1,a=r.length;++i<a;)r[i].call(e,o);5===n.state&&(n.on.call("end",e,e.__data__,n.index,n.group),l())}function l(){for(var r in n.state=6,n.timer.stop(),delete o[t],o)return;delete e.__transition}o[t]=n,n.timer=(0,eM.O1)(function(e){n.state=1,n.timer.restart(i,n.delay,n.time),n.delay<=e&&i(e-n.delay)},0,n.time)}(e,n,{name:t,index:r,group:o,on:eN,tween:eA,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:0})}function ez(e,t){var n=eP(e,t);if(n.state>0)throw Error("too late; already scheduled");return n}function e$(e,t){var n=eP(e,t);if(n.state>3)throw Error("too late; already running");return n}function eP(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error("transition not found");return n}function eI(e,t){var n,r,o,i=e.__transition,a=!0;if(i){for(o in t=null==t?null:t+"",i){if((n=i[o]).name!==t){a=!1;continue}r=n.state>2&&n.state<5,n.state=6,n.timer.stop(),n.on.call(r?"interrupt":"cancel",e,e.__data__,n.index,n.group),delete i[o]}a&&delete e.__transition}}function eR(e,t){return e*=1,t*=1,function(n){return e*(1-n)+t*n}}var eO=180/Math.PI,eT={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function eD(e,t,n,r,o,i){var a,l,s;return(a=Math.sqrt(e*e+t*t))&&(e/=a,t/=a),(s=e*n+t*r)&&(n-=e*s,r-=t*s),(l=Math.sqrt(n*n+r*r))&&(n/=l,r/=l,s/=l),e*r<t*n&&(e=-e,t=-t,s=-s,a=-a),{translateX:o,translateY:i,rotate:Math.atan2(t,e)*eO,skewX:Math.atan(s)*eO,scaleX:a,scaleY:l}}function eB(e,t,n,r){function o(e){return e.length?e.pop()+" ":""}return function(i,a){var l,s,c,u,d=[],f=[];return i=e(i),a=e(a),!function(e,r,o,i,a,l){if(e!==o||r!==i){var s=a.push("translate(",null,t,null,n);l.push({i:s-4,x:eR(e,o)},{i:s-2,x:eR(r,i)})}else(o||i)&&a.push("translate("+o+t+i+n)}(i.translateX,i.translateY,a.translateX,a.translateY,d,f),l=i.rotate,s=a.rotate,l!==s?(l-s>180?s+=360:s-l>180&&(l+=360),f.push({i:d.push(o(d)+"rotate(",null,r)-2,x:eR(l,s)})):s&&d.push(o(d)+"rotate("+s+r),c=i.skewX,u=a.skewX,c!==u?f.push({i:d.push(o(d)+"skewX(",null,r)-2,x:eR(c,u)}):u&&d.push(o(d)+"skewX("+u+r),!function(e,t,n,r,i,a){if(e!==n||t!==r){var l=i.push(o(i)+"scale(",null,",",null,")");a.push({i:l-4,x:eR(e,n)},{i:l-2,x:eR(t,r)})}else(1!==n||1!==r)&&i.push(o(i)+"scale("+n+","+r+")")}(i.scaleX,i.scaleY,a.scaleX,a.scaleY,d,f),i=a=null,function(e){for(var t,n=-1,r=f.length;++n<r;)d[(t=f[n]).i]=t.x(e);return d.join("")}}}var eH=eB(function(e){let t=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?eT:eD(t.a,t.b,t.c,t.d,t.e,t.f)},"px, ","px)","deg)"),eL=eB(function(e){return null==e?eT:(c||(c=document.createElementNS("http://www.w3.org/2000/svg","g")),c.setAttribute("transform",e),e=c.transform.baseVal.consolidate())?eD((e=e.matrix).a,e.b,e.c,e.d,e.e,e.f):eT},", ",")",")");function eV(e,t,n){var r=e._id;return e.each(function(){var e=e$(this,r);(e.value||(e.value={}))[t]=n.apply(this,arguments)}),function(e){return eP(e,r).value[t]}}var eX=n(3140),ej=n(3508),eF=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,eY=RegExp(eF.source,"g");function eK(e,t){var n;return("number"==typeof t?eR:t instanceof eX.Ay?ej.Ay:(n=(0,eX.Ay)(t))?(t=n,ej.Ay):function(e,t){var n,r,o,i,a,l=eF.lastIndex=eY.lastIndex=0,s=-1,c=[],u=[];for(e+="",t+="";(o=eF.exec(e))&&(i=eY.exec(t));)(a=i.index)>l&&(a=t.slice(l,a),c[s]?c[s]+=a:c[++s]=a),(o=o[0])===(i=i[0])?c[s]?c[s]+=i:c[++s]=i:(c[++s]=null,u.push({i:s,x:eR(o,i)})),l=eY.lastIndex;return l<t.length&&(a=t.slice(l),c[s]?c[s]+=a:c[++s]=a),c.length<2?u[0]?(n=u[0].x,function(e){return n(e)+""}):(r=t,function(){return r}):(t=u.length,function(e){for(var n,r=0;r<t;++r)c[(n=u[r]).i]=n.x(e);return c.join("")})})(e,t)}var eq=ep.prototype.constructor;function eZ(e){return function(){this.style.removeProperty(e)}}var eW=0;function eU(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}var eG=ep.prototype;eU.prototype=(function(e){return ep().transition(e)}).prototype={constructor:eU,select:function(e){var t=this._name,n=this._id;"function"!=typeof e&&(e=C(e));for(var r=this._groups,o=r.length,i=Array(o),a=0;a<o;++a)for(var l,s,c=r[a],u=c.length,d=i[a]=Array(u),f=0;f<u;++f)(l=c[f])&&(s=e.call(l,l.__data__,f,c))&&("__data__"in l&&(s.__data__=l.__data__),d[f]=s,eC(d[f],t,n,f,d,eP(l,n)));return new eU(i,this._parents,t,n)},selectAll:function(e){var t=this._name,n=this._id;"function"!=typeof e&&(e=$(e));for(var r=this._groups,o=r.length,i=[],a=[],l=0;l<o;++l)for(var s,c=r[l],u=c.length,d=0;d<u;++d)if(s=c[d]){for(var f,h=e.call(s,s.__data__,d,c),p=eP(s,n),g=0,m=h.length;g<m;++g)(f=h[g])&&eC(f,t,n,g,h,p);i.push(h),a.push(s)}return new eU(i,a,t,n)},selectChild:eG.selectChild,selectChildren:eG.selectChildren,filter:function(e){"function"!=typeof e&&(e=P(e));for(var t=this._groups,n=t.length,r=Array(n),o=0;o<n;++o)for(var i,a=t[o],l=a.length,s=r[o]=[],c=0;c<l;++c)(i=a[c])&&e.call(i,i.__data__,c,a)&&s.push(i);return new eU(r,this._parents,this._name,this._id)},merge:function(e){if(e._id!==this._id)throw Error();for(var t=this._groups,n=e._groups,r=t.length,o=n.length,i=Math.min(r,o),a=Array(r),l=0;l<i;++l)for(var s,c=t[l],u=n[l],d=c.length,f=a[l]=Array(d),h=0;h<d;++h)(s=c[h]||u[h])&&(f[h]=s);for(;l<r;++l)a[l]=t[l];return new eU(a,this._parents,this._name,this._id)},selection:function(){return new eq(this._groups,this._parents)},transition:function(){for(var e=this._name,t=this._id,n=++eW,r=this._groups,o=r.length,i=0;i<o;++i)for(var a,l=r[i],s=l.length,c=0;c<s;++c)if(a=l[c]){var u=eP(a,t);eC(a,e,n,c,l,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new eU(r,this._parents,e,n)},call:eG.call,nodes:eG.nodes,node:eG.node,size:eG.size,empty:eG.empty,each:eG.each,on:function(e,t){var n,r,o,i,a,l,s=this._id;return arguments.length<2?eP(this.node(),s).on.on(e):this.each((n=s,r=e,o=t,l=(r+"").trim().split(/^|\s+/).every(function(e){var t=e.indexOf(".");return t>=0&&(e=e.slice(0,t)),!e||"start"===e})?ez:e$,function(){var e=l(this,n),t=e.on;t!==i&&(a=(i=t).copy()).on(r,o),e.on=a}))},attr:function(e,t){var n=K(e),r="transform"===n?eL:eK;return this.attrTween(e,"function"==typeof t?(n.local?function(e,t,n){var r,o,i;return function(){var a,l,s=n(this);return null==s?void this.removeAttributeNS(e.space,e.local):(a=this.getAttributeNS(e.space,e.local))===(l=s+"")?null:a===r&&l===o?i:(o=l,i=t(r=a,s))}}:function(e,t,n){var r,o,i;return function(){var a,l,s=n(this);return null==s?void this.removeAttribute(e):(a=this.getAttribute(e))===(l=s+"")?null:a===r&&l===o?i:(o=l,i=t(r=a,s))}})(n,r,eV(this,"attr."+e,t)):null==t?(n.local?function(e){return function(){this.removeAttributeNS(e.space,e.local)}}:function(e){return function(){this.removeAttribute(e)}})(n):(n.local?function(e,t,n){var r,o,i=n+"";return function(){var a=this.getAttributeNS(e.space,e.local);return a===i?null:a===r?o:o=t(r=a,n)}}:function(e,t,n){var r,o,i=n+"";return function(){var a=this.getAttribute(e);return a===i?null:a===r?o:o=t(r=a,n)}})(n,r,t))},attrTween:function(e,t){var n="attr."+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(null==t)return this.tween(n,null);if("function"!=typeof t)throw Error();var r=K(e);return this.tween(n,(r.local?function(e,t){var n,r;function o(){var o=t.apply(this,arguments);return o!==r&&(n=(r=o)&&function(t){this.setAttributeNS(e.space,e.local,o.call(this,t))}),n}return o._value=t,o}:function(e,t){var n,r;function o(){var o=t.apply(this,arguments);return o!==r&&(n=(r=o)&&function(t){this.setAttribute(e,o.call(this,t))}),n}return o._value=t,o})(r,t))},style:function(e,t,n){var r,o,i,a,l,s,c,u,d,f,h,p,g,m,y,v,b,w,x,_,S,E="transform"==(e+="")?eH:eK;return null==t?this.styleTween(e,(r=e,function(){var e=Z(this,r),t=(this.style.removeProperty(r),Z(this,r));return e===t?null:e===o&&t===i?a:a=E(o=e,i=t)})).on("end.style."+e,eZ(e)):"function"==typeof t?this.styleTween(e,(l=e,s=eV(this,"style."+e,t),function(){var e=Z(this,l),t=s(this),n=t+"";return null==t&&(this.style.removeProperty(l),n=t=Z(this,l)),e===n?null:e===c&&n===u?d:(u=n,d=E(c=e,t))})).each((f=this._id,b="end."+(v="style."+(h=e)),function(){var e=e$(this,f),t=e.on,n=null==e.value[v]?y||(y=eZ(h)):void 0;(t!==p||m!==n)&&(g=(p=t).copy()).on(b,m=n),e.on=g})):this.styleTween(e,(w=e,S=t+"",function(){var e=Z(this,w);return e===S?null:e===x?_:_=E(x=e,t)}),n).on("end.style."+e,null)},styleTween:function(e,t,n){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==t)return this.tween(r,null);if("function"!=typeof t)throw Error();return this.tween(r,function(e,t,n){var r,o;function i(){var i=t.apply(this,arguments);return i!==o&&(r=(o=i)&&function(t){this.style.setProperty(e,i.call(this,t),n)}),r}return i._value=t,i}(e,t,null==n?"":n))},text:function(e){var t,n;return this.tween("text","function"==typeof e?(t=eV(this,"text",e),function(){var e=t(this);this.textContent=null==e?"":e}):(n=null==e?"":e+"",function(){this.textContent=n}))},textTween:function(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(null==e)return this.tween(t,null);if("function"!=typeof e)throw Error();return this.tween(t,function(e){var t,n;function r(){var r=e.apply(this,arguments);return r!==n&&(t=(n=r)&&function(e){this.textContent=r.call(this,e)}),t}return r._value=e,r}(e))},remove:function(){var e;return this.on("end.remove",(e=this._id,function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}))},tween:function(e,t){var n=this._id;if(e+="",arguments.length<2){for(var r,o=eP(this.node(),n).tween,i=0,a=o.length;i<a;++i)if((r=o[i]).name===e)return r.value;return null}return this.each((null==t?function(e,t){var n,r;return function(){var o=e$(this,e),i=o.tween;if(i!==n){r=n=i;for(var a=0,l=r.length;a<l;++a)if(r[a].name===t){(r=r.slice()).splice(a,1);break}}o.tween=r}}:function(e,t,n){var r,o;if("function"!=typeof n)throw Error();return function(){var i=e$(this,e),a=i.tween;if(a!==r){o=(r=a).slice();for(var l={name:t,value:n},s=0,c=o.length;s<c;++s)if(o[s].name===t){o[s]=l;break}s===c&&o.push(l)}i.tween=o}})(n,e,t))},delay:function(e){var t=this._id;return arguments.length?this.each(("function"==typeof e?function(e,t){return function(){ez(this,e).delay=+t.apply(this,arguments)}}:function(e,t){return t*=1,function(){ez(this,e).delay=t}})(t,e)):eP(this.node(),t).delay},duration:function(e){var t=this._id;return arguments.length?this.each(("function"==typeof e?function(e,t){return function(){e$(this,e).duration=+t.apply(this,arguments)}}:function(e,t){return t*=1,function(){e$(this,e).duration=t}})(t,e)):eP(this.node(),t).duration},ease:function(e){var t=this._id;return arguments.length?this.each(function(e,t){if("function"!=typeof t)throw Error();return function(){e$(this,e).ease=t}}(t,e)):eP(this.node(),t).ease},easeVarying:function(e){var t;if("function"!=typeof e)throw Error();return this.each((t=this._id,function(){var n=e.apply(this,arguments);if("function"!=typeof n)throw Error();e$(this,t).ease=n}))},end:function(){var e,t,n=this,r=n._id,o=n.size();return new Promise(function(i,a){var l={value:a},s={value:function(){0==--o&&i()}};n.each(function(){var n=e$(this,r),o=n.on;o!==e&&((t=(e=o).copy())._.cancel.push(l),t._.interrupt.push(l),t._.end.push(s)),n.on=t}),0===o&&i()})},[Symbol.iterator]:eG[Symbol.iterator]};var eQ={time:null,delay:0,duration:250,ease:function(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}};ep.prototype.interrupt=function(e){return this.each(function(){eI(this,e)})},ep.prototype.transition=function(e){var t,n;e instanceof eU?(t=e._id,e=e._name):(t=++eW,(n=eQ).time=(0,eM.tB)(),e=null==e?null:e+"");for(var r=this._groups,o=r.length,i=0;i<o;++i)for(var a,l=r[i],s=l.length,c=0;c<s;++c)(a=l[c])&&eC(a,e,t,c,l,n||function(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw Error(`transition ${t} not found`);return n}(a,t));return new eU(r,this._parents,e,t)};let eJ=e=>()=>e;function e0(e,{sourceEvent:t,target:n,transform:r,dispatch:o}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:o}})}function e1(e,t,n){this.k=e,this.x=t,this.y=n}e1.prototype={constructor:e1,scale:function(e){return 1===e?this:new e1(this.k*e,this.x,this.y)},translate:function(e,t){return 0===e&0===t?this:new e1(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var e2=new e1(1,0,0);function e5(e){e.stopImmediatePropagation()}function e3(e){e.preventDefault(),e.stopImmediatePropagation()}function e4(e){return(!e.ctrlKey||"wheel"===e.type)&&!e.button}function e6(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e).hasAttribute("viewBox")?[[(e=e.viewBox.baseVal).x,e.y],[e.x+e.width,e.y+e.height]]:[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]:[[0,0],[e.clientWidth,e.clientHeight]]}function e8(){return this.__zoom||e2}function e9(e){return-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function e7(){return navigator.maxTouchPoints||"ontouchstart"in this}function te(e,t,n){var r=e.invertX(t[0][0])-n[0][0],o=e.invertX(t[1][0])-n[1][0],i=e.invertY(t[0][1])-n[0][1],a=e.invertY(t[1][1])-n[1][1];return e.translate(o>r?(r+o)/2:Math.min(0,r)||Math.max(0,o),a>i?(i+a)/2:Math.min(0,i)||Math.max(0,a))}e1.prototype;let tt=e=>()=>e;function tn(e,{sourceEvent:t,subject:n,target:r,identifier:o,active:i,x:a,y:l,dx:s,dy:c,dispatch:u}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:o,enumerable:!0,configurable:!0},active:{value:i,enumerable:!0,configurable:!0},x:{value:a,enumerable:!0,configurable:!0},y:{value:l,enumerable:!0,configurable:!0},dx:{value:s,enumerable:!0,configurable:!0},dy:{value:c,enumerable:!0,configurable:!0},_:{value:u}})}function tr(e){return!e.ctrlKey&&!e.button}function to(){return this.parentNode}function ti(e,t){return null==t?{x:e.x,y:e.y}:t}function ta(){return navigator.maxTouchPoints||"ontouchstart"in this}tn.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};var tl=n(1529);let ts=(0,m.createContext)(null),tc=ts.Provider,tu="[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001";function td(e,t){let n=(0,m.useContext)(ts);if(null===n)throw Error(tu);return E(n,e,t)}let tf=()=>{let e=(0,m.useContext)(ts);if(null===e)throw Error(tu);return(0,m.useMemo)(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe,destroy:e.destroy}),[e])},th=e=>e.userSelectionActive?"none":"all";function tp({position:e,children:t,className:n,style:r,...o}){let i=td(th),a=`${e}`.split("-");return y().createElement("div",{className:(0,v.A)(["react-flow__panel",n,...a]),style:{...r,pointerEvents:i},...o},t)}function tg({proOptions:e,position:t="bottom-right"}){return e?.hideAttribution?null:y().createElement(tp,{position:t,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://reactflow.dev/pro"},y().createElement("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution"},"React Flow"))}var tm=(0,m.memo)(({x:e,y:t,label:n,labelStyle:r={},labelShowBg:o=!0,labelBgStyle:i={},labelBgPadding:a=[2,4],labelBgBorderRadius:l=2,children:s,className:c,...u})=>{let d=(0,m.useRef)(null),[f,h]=(0,m.useState)({x:0,y:0,width:0,height:0}),p=(0,v.A)(["react-flow__edge-textwrapper",c]);return((0,m.useEffect)(()=>{if(d.current){let e=d.current.getBBox();h({x:e.x,y:e.y,width:e.width,height:e.height})}},[n]),void 0!==n&&n)?y().createElement("g",{transform:`translate(${e-f.width/2} ${t-f.height/2})`,className:p,visibility:f.width?"visible":"hidden",...u},o&&y().createElement("rect",{width:f.width+2*a[0],x:-a[0],y:-a[1],height:f.height+2*a[1],className:"react-flow__edge-textbg",style:i,rx:l,ry:l}),y().createElement("text",{className:"react-flow__edge-text",y:f.height/2,dy:"0.3em",ref:d,style:r},n),s):null});let ty=e=>({width:e.offsetWidth,height:e.offsetHeight}),tv=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),tb=(e={x:0,y:0},t)=>({x:tv(e.x,t[0][0],t[1][0]),y:tv(e.y,t[0][1],t[1][1])}),tw=(e,t,n)=>e<t?tv(Math.abs(e-t),1,50)/50:e>n?-tv(Math.abs(e-n),1,50)/50:0,tx=(e,t)=>[20*tw(e.x,35,t.width-35),20*tw(e.y,35,t.height-35)],t_=e=>e.getRootNode?.()||window?.document,tS=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),tE=e=>({...e.positionAbsolute||{x:0,y:0},width:e.width||0,height:e.height||0}),tM=(e,t)=>Math.ceil(Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x))*Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y))),tk=e=>!isNaN(e)&&isFinite(e),tN=Symbol.for("internals"),tA=["Enter"," ","Escape"],tC=(e,t)=>{};function tz(e){let t="nativeEvent"in e?e.nativeEvent:e,n=t.composedPath?.()?.[0]||e.target;return["INPUT","SELECT","TEXTAREA"].includes(n?.nodeName)||n?.hasAttribute("contenteditable")||!!n?.closest(".nokey")}let t$=(e,t)=>{let n="clientX"in e,r=n?e.clientX:e.touches?.[0].clientX,o=n?e.clientY:e.touches?.[0].clientY;return{x:r-(t?.left??0),y:o-(t?.top??0)}},tP=()=>"u">typeof navigator&&navigator?.userAgent?.indexOf("Mac")>=0,tI=({id:e,path:t,labelX:n,labelY:r,label:o,labelStyle:i,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:d,markerStart:f,interactionWidth:h=20})=>y().createElement(y().Fragment,null,y().createElement("path",{id:e,style:u,d:t,fill:"none",className:"react-flow__edge-path",markerEnd:d,markerStart:f}),h&&y().createElement("path",{d:t,fill:"none",strokeOpacity:0,strokeWidth:h,className:"react-flow__edge-interaction"}),o&&tk(n)&&tk(r)?y().createElement(tm,{x:n,y:r,label:o,labelStyle:i,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c}):null);function tR(e,t,n){return void 0===n?n:r=>{let o=t().edges.find(t=>t.id===e);o&&n(r,{...o})}}function tO({sourceX:e,sourceY:t,targetX:n,targetY:r}){let o=Math.abs(n-e)/2,i=Math.abs(r-t)/2;return[n<e?n+o:n-o,r<t?r+i:r-i,o,i]}function tT({sourceX:e,sourceY:t,targetX:n,targetY:r,sourceControlX:o,sourceControlY:i,targetControlX:a,targetControlY:l}){let s=.125*e+.375*o+.375*a+.125*n,c=.125*t+.375*i+.375*l+.125*r,u=Math.abs(s-e),d=Math.abs(c-t);return[s,c,u,d]}function tD({pos:e,x1:t,y1:n,x2:r,y2:o}){return e===g.Left||e===g.Right?[.5*(t+r),n]:[t,.5*(n+o)]}function tB({sourceX:e,sourceY:t,sourcePosition:n=g.Bottom,targetX:r,targetY:o,targetPosition:i=g.Top}){let[a,l]=tD({pos:n,x1:e,y1:t,x2:r,y2:o}),[s,c]=tD({pos:i,x1:r,y1:o,x2:e,y2:t}),[u,d,f,h]=tT({sourceX:e,sourceY:t,targetX:r,targetY:o,sourceControlX:a,sourceControlY:l,targetControlX:s,targetControlY:c});return[`M${e},${t} C${a},${l} ${s},${c} ${r},${o}`,u,d,f,h]}tI.displayName="BaseEdge",(r=u||(u={})).Strict="strict",r.Loose="loose",(o=d||(d={})).Free="free",o.Vertical="vertical",o.Horizontal="horizontal",(i=f||(f={})).Partial="partial",i.Full="full",(a=h||(h={})).Bezier="default",a.Straight="straight",a.Step="step",a.SmoothStep="smoothstep",a.SimpleBezier="simplebezier",(l=p||(p={})).Arrow="arrow",l.ArrowClosed="arrowclosed",(s=g||(g={})).Left="left",s.Top="top",s.Right="right",s.Bottom="bottom";let tH=(0,m.memo)(({sourceX:e,sourceY:t,targetX:n,targetY:r,sourcePosition:o=g.Bottom,targetPosition:i=g.Top,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:h,markerStart:p,interactionWidth:m})=>{let[v,b,w]=tB({sourceX:e,sourceY:t,sourcePosition:o,targetX:n,targetY:r,targetPosition:i});return y().createElement(tI,{path:v,labelX:b,labelY:w,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:h,markerStart:p,interactionWidth:m})});tH.displayName="SimpleBezierEdge";let tL={[g.Left]:{x:-1,y:0},[g.Right]:{x:1,y:0},[g.Top]:{x:0,y:-1},[g.Bottom]:{x:0,y:1}},tV=({source:e,sourcePosition:t=g.Bottom,target:n})=>t===g.Left||t===g.Right?e.x<n.x?{x:1,y:0}:{x:-1,y:0}:e.y<n.y?{x:0,y:1}:{x:0,y:-1},tX=(e,t)=>Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2));function tj({sourceX:e,sourceY:t,sourcePosition:n=g.Bottom,targetX:r,targetY:o,targetPosition:i=g.Top,borderRadius:a=5,centerX:l,centerY:s,offset:c=20}){let[u,d,f,h,p]=function({source:e,sourcePosition:t=g.Bottom,target:n,targetPosition:r=g.Top,center:o,offset:i}){let a,l,s=tL[t],c=tL[r],u={x:e.x+s.x*i,y:e.y+s.y*i},d={x:n.x+c.x*i,y:n.y+c.y*i},f=tV({source:u,sourcePosition:t,target:d}),h=0!==f.x?"x":"y",p=f[h],m=[],y={x:0,y:0},v={x:0,y:0},[b,w,x,_]=tO({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[h]*c[h]==-1){a=o.x??b,l=o.y??w;let e=[{x:a,y:u.y},{x:a,y:d.y}],t=[{x:u.x,y:l},{x:d.x,y:l}];m=s[h]===p?"x"===h?e:t:"x"===h?t:e}else{let o=[{x:u.x,y:d.y}],f=[{x:d.x,y:u.y}];if(m="x"===h?s.x===p?f:o:s.y===p?o:f,t===r){let t=Math.abs(e[h]-n[h]);if(t<=i){let r=Math.min(i-1,i-t);s[h]===p?y[h]=(u[h]>e[h]?-1:1)*r:v[h]=(d[h]>n[h]?-1:1)*r}}if(t!==r){let e="x"===h?"y":"x",t=s[h]===c[e],n=u[e]>d[e],r=u[e]<d[e];(1===s[h]&&(!t&&n||t&&r)||1!==s[h]&&(!t&&r||t&&n))&&(m="x"===h?o:f)}let g={x:u.x+y.x,y:u.y+y.y},b={x:d.x+v.x,y:d.y+v.y};Math.max(Math.abs(g.x-m[0].x),Math.abs(b.x-m[0].x))>=Math.max(Math.abs(g.y-m[0].y),Math.abs(b.y-m[0].y))?(a=(g.x+b.x)/2,l=m[0].y):(a=m[0].x,l=(g.y+b.y)/2)}return[[e,{x:u.x+y.x,y:u.y+y.y},...m,{x:d.x+v.x,y:d.y+v.y},n],a,l,x,_]}({source:{x:e,y:t},sourcePosition:n,target:{x:r,y:o},targetPosition:i,center:{x:l,y:s},offset:c});return[u.reduce((e,t,n)=>e+(n>0&&n<u.length-1?function(e,t,n,r){let o=Math.min(tX(e,t)/2,tX(t,n)/2,r),{x:i,y:a}=t;if(e.x===i&&i===n.x||e.y===a&&a===n.y)return`L${i} ${a}`;if(e.y===a){let t=e.x<n.x?-1:1,r=e.y<n.y?1:-1;return`L ${i+o*t},${a}Q ${i},${a} ${i},${a+o*r}`}let l=e.x<n.x?1:-1,s=e.y<n.y?-1:1;return`L ${i},${a+o*s}Q ${i},${a} ${i+o*l},${a}`}(u[n-1],t,u[n+1],a):`${0===n?"M":"L"}${t.x} ${t.y}`),""),d,f,h,p]}let tF=(0,m.memo)(({sourceX:e,sourceY:t,targetX:n,targetY:r,label:o,labelStyle:i,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,sourcePosition:d=g.Bottom,targetPosition:f=g.Top,markerEnd:h,markerStart:p,pathOptions:m,interactionWidth:v})=>{let[b,w,x]=tj({sourceX:e,sourceY:t,sourcePosition:d,targetX:n,targetY:r,targetPosition:f,borderRadius:m?.borderRadius,offset:m?.offset});return y().createElement(tI,{path:b,labelX:w,labelY:x,label:o,labelStyle:i,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:h,markerStart:p,interactionWidth:v})});tF.displayName="SmoothStepEdge";let tY=(0,m.memo)(e=>y().createElement(tF,{...e,pathOptions:(0,m.useMemo)(()=>({borderRadius:0,offset:e.pathOptions?.offset}),[e.pathOptions?.offset])}));tY.displayName="StepEdge";let tK=(0,m.memo)(({sourceX:e,sourceY:t,targetX:n,targetY:r,label:o,labelStyle:i,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:d,markerStart:f,interactionWidth:h})=>{let[p,g,m]=function({sourceX:e,sourceY:t,targetX:n,targetY:r}){let[o,i,a,l]=tO({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,o,i,a,l]}({sourceX:e,sourceY:t,targetX:n,targetY:r});return y().createElement(tI,{path:p,labelX:g,labelY:m,label:o,labelStyle:i,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:d,markerStart:f,interactionWidth:h})});function tq(e,t){return e>=0?.5*e:25*t*Math.sqrt(-e)}function tZ({pos:e,x1:t,y1:n,x2:r,y2:o,c:i}){switch(e){case g.Left:return[t-tq(t-r,i),n];case g.Right:return[t+tq(r-t,i),n];case g.Top:return[t,n-tq(n-o,i)];case g.Bottom:return[t,n+tq(o-n,i)]}}function tW({sourceX:e,sourceY:t,sourcePosition:n=g.Bottom,targetX:r,targetY:o,targetPosition:i=g.Top,curvature:a=.25}){let[l,s]=tZ({pos:n,x1:e,y1:t,x2:r,y2:o,c:a}),[c,u]=tZ({pos:i,x1:r,y1:o,x2:e,y2:t,c:a}),[d,f,h,p]=tT({sourceX:e,sourceY:t,targetX:r,targetY:o,sourceControlX:l,sourceControlY:s,targetControlX:c,targetControlY:u});return[`M${e},${t} C${l},${s} ${c},${u} ${r},${o}`,d,f,h,p]}tK.displayName="StraightEdge";let tU=(0,m.memo)(({sourceX:e,sourceY:t,targetX:n,targetY:r,sourcePosition:o=g.Bottom,targetPosition:i=g.Top,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:h,markerStart:p,pathOptions:m,interactionWidth:v})=>{let[b,w,x]=tW({sourceX:e,sourceY:t,sourcePosition:o,targetX:n,targetY:r,targetPosition:i,curvature:m?.curvature});return y().createElement(tI,{path:b,labelX:w,labelY:x,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:d,style:f,markerEnd:h,markerStart:p,interactionWidth:v})});tU.displayName="BezierEdge";let tG=(0,m.createContext)(null),tQ=tG.Provider;tG.Consumer;let tJ=(e,t)=>{if(void 0===e)return"";if("string"==typeof e)return e;let n=t?`${t}__`:"";return`${n}${Object.keys(e).sort().map(t=>`${t}=${e[t]}`).join("&")}`},t0=({x:e,y:t},[n,r,o],i,[a,l])=>{let s={x:(e-n)/o,y:(t-r)/o};return i?{x:a*Math.round(s.x/a),y:l*Math.round(s.y/l)}:s},t1=({x:e,y:t},[n,r,o])=>({x:e*o+n,y:t*o+r}),t2=(e,t=[0,0])=>{if(!e)return{x:0,y:0,positionAbsolute:{x:0,y:0}};let n=(e.width??0)*t[0],r=(e.height??0)*t[1],o={x:e.position.x-n,y:e.position.y-r};return{...o,positionAbsolute:e.positionAbsolute?{x:e.positionAbsolute.x-n,y:e.positionAbsolute.y-r}:o}},t5=(e,t=[0,0])=>0===e.length?{x:0,y:0,width:0,height:0}:(({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}))(e.reduce((e,n)=>{let r,{x:o,y:i}=t2(n,t).positionAbsolute;return r=tS({x:o,y:i,width:n.width||0,height:n.height||0}),{x:Math.min(e.x,r.x),y:Math.min(e.y,r.y),x2:Math.max(e.x2,r.x2),y2:Math.max(e.y2,r.y2)}},{x:1/0,y:1/0,x2:-1/0,y2:-1/0})),t3=(e,t,[n,r,o]=[0,0,1],i=!1,a=!1,l=[0,0])=>{let s={x:(t.x-n)/o,y:(t.y-r)/o,width:t.width/o,height:t.height/o},c=[];return e.forEach(e=>{let{width:t,height:n,selectable:r=!0,hidden:o=!1}=e;if(a&&!r||o)return!1;let{positionAbsolute:u}=t2(e,l),d=tM(s,{x:u.x,y:u.y,width:t||0,height:n||0}),f=void 0===t||void 0===n||null===t||null===n,h=(t||0)*(n||0);(f||i&&d>0||d>=h||e.dragging)&&c.push(e)}),c},t4=(e,t)=>{let n=e.map(e=>e.id);return t.filter(e=>n.includes(e.source)||n.includes(e.target))},t6=(e,t,n,r,o,i=.1)=>{let a=tv(Math.min(t/(e.width*(1+i)),n/(e.height*(1+i))),r,o);return{x:t/2-(e.x+e.width/2)*a,y:n/2-(e.y+e.height/2)*a,zoom:a}},t8=(e,t=0)=>e.transition().duration(t);function t9(e,t,n,r){return(t[n]||[]).reduce((t,o)=>(`${e.id}-${o.id}-${n}`!==r&&t.push({id:o.id||null,type:n,nodeId:e.id,x:(e.positionAbsolute?.x??0)+o.x+o.width/2,y:(e.positionAbsolute?.y??0)+o.y+o.height/2}),t),[])}let t7={source:null,target:null,sourceHandle:null,targetHandle:null},ne=()=>({handleDomNode:null,isValid:!1,connection:t7,endHandle:null});function nt(e,t,n,r,o,i,a){let l="target"===o,s=a.querySelector(`.react-flow__handle[data-id="${e?.nodeId}-${e?.id}-${e?.type}"]`),c={...ne(),handleDomNode:s};if(s){let e=nn(void 0,s),o=s.getAttribute("data-nodeid"),a=s.getAttribute("data-handleid"),d=s.classList.contains("connectable"),f=s.classList.contains("connectableend"),h={source:l?o:n,sourceHandle:l?a:r,target:l?n:o,targetHandle:l?r:a};c.connection=h,d&&f&&(t===u.Strict?l&&"source"===e||!l&&"target"===e:o!==n||a!==r)&&(c.endHandle={nodeId:o,handleId:a,type:e},c.isValid=i(h))}return c}function nn(e,t){return e?e:t?.classList.contains("target")?"target":t?.classList.contains("source")?"source":null}function nr(e){e?.classList.remove("valid","connecting","react-flow__handle-valid","react-flow__handle-connecting")}function no({event:e,handleId:t,nodeId:n,onConnect:r,isTarget:o,getState:i,setState:a,isValidConnection:l,edgeUpdaterType:s,onReconnectEnd:c}){let u,d,f=t_(e.target),{connectionMode:h,domNode:p,autoPanOnConnect:g,connectionRadius:m,onConnectStart:y,panBy:v,getNodes:b,cancelConnection:w}=i(),x=0,{x:_,y:S}=t$(e),E=nn(s,f?.elementFromPoint(_,S)),M=p?.getBoundingClientRect();if(!M||!E)return;let k=t$(e,M),N=!1,A=null,C=!1,z=null,$=function({nodes:e,nodeId:t,handleId:n,handleType:r}){return e.reduce((e,o)=>{if(o[tN]){let{handleBounds:i}=o[tN],a=[],l=[];i&&(a=t9(o,i,"source",`${t}-${n}-${r}`),l=t9(o,i,"target",`${t}-${n}-${r}`)),e.push(...a,...l)}return e},[])}({nodes:b(),nodeId:n,handleId:t,handleType:E}),P=()=>{if(!g)return;let[e,t]=tx(k,M);v({x:e,y:t}),x=requestAnimationFrame(P)};function I(e){var r,s;let c,{transform:p}=i();k=t$(e,M);let{handle:g,validHandleResult:y}=function(e,t,n,r,o,i){let{x:a,y:l}=t$(e),s=t.elementsFromPoint(a,l).find(e=>e.classList.contains("react-flow__handle"));if(s){let e=s.getAttribute("data-nodeid");if(e){let t=nn(void 0,s),r=s.getAttribute("data-handleid"),a=i({nodeId:e,id:r,type:t});if(a){let i=o.find(n=>n.nodeId===e&&n.type===t&&n.id===r);return{handle:{id:r,type:t,nodeId:e,x:i?.x||n.x,y:i?.y||n.y},validHandleResult:a}}}}let c=[],u=1/0;if(o.forEach(e=>{let t=Math.sqrt((e.x-n.x)**2+(e.y-n.y)**2);if(t<=r){let n=i(e);t<=u&&(t<u?c=[{handle:e,validHandleResult:n}]:t===u&&c.push({handle:e,validHandleResult:n}),u=t)}}),!c.length)return{handle:null,validHandleResult:ne()};if(1===c.length)return c[0];let d=c.some(({validHandleResult:e})=>e.isValid),f=c.some(({handle:e})=>"target"===e.type);return c.find(({handle:e,validHandleResult:t})=>f?"target"===e.type:!d||t.isValid)||c[0]}(e,f,t0(k,p,!1,[1,1]),m,$,e=>nt(e,h,n,t,o?"target":"source",l,f));if(u=g,N||(P(),N=!0),z=y.handleDomNode,A=y.connection,C=y.isValid,a({connectionPosition:u&&C?t1({x:u.x,y:u.y},p):k,connectionStatus:(r=!!u,c=null,(s=C)?c="valid":r&&!s&&(c="invalid"),c),connectionEndHandle:y.endHandle}),!u&&!C&&!z)return nr(d);A.source!==A.target&&z&&(nr(d),d=z,z.classList.add("connecting","react-flow__handle-connecting"),z.classList.toggle("valid",C),z.classList.toggle("react-flow__handle-valid",C))}function R(e){(u||z)&&A&&C&&r?.(A),i().onConnectEnd?.(e),s&&c?.(e),nr(d),w(),cancelAnimationFrame(x),N=!1,C=!1,A=null,z=null,f.removeEventListener("mousemove",I),f.removeEventListener("mouseup",R),f.removeEventListener("touchmove",I),f.removeEventListener("touchend",R)}a({connectionPosition:k,connectionStatus:null,connectionNodeId:n,connectionHandleId:t,connectionHandleType:E,connectionStartHandle:{nodeId:n,handleId:t,type:E},connectionEndHandle:null}),y?.(e,{nodeId:n,handleId:t,handleType:E}),f.addEventListener("mousemove",I),f.addEventListener("mouseup",R),f.addEventListener("touchmove",I),f.addEventListener("touchend",R)}let ni=()=>!0,na=e=>({connectionStartHandle:e.connectionStartHandle,connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName}),nl=(0,m.forwardRef)(({type:e="source",position:t=g.Top,isValidConnection:n,isConnectable:r=!0,isConnectableStart:o=!0,isConnectableEnd:i=!0,id:a,onConnect:l,children:s,className:c,onMouseDown:u,onTouchStart:d,...f},h)=>{let p=a||null,b="target"===e,w=tf(),x=(0,m.useContext)(tG),{connectOnClick:_,noPanClassName:S}=td(na,k.x),{connecting:E,clickConnecting:M}=td(t=>{let{connectionStartHandle:n,connectionEndHandle:r,connectionClickStartHandle:o}=t;return{connecting:n?.nodeId===x&&n?.handleId===p&&n?.type===e||r?.nodeId===x&&r?.handleId===p&&r?.type===e,clickConnecting:o?.nodeId===x&&o?.handleId===p&&o?.type===e}},k.x);x||w.getState().onError?.("010","Handle: No node id found. Make sure to only use a Handle inside a custom Node.");let N=e=>{let{defaultEdgeOptions:t,onConnect:n,hasDefaultEdges:r}=w.getState(),o={...t,...e};if(r){let{edges:e,setEdges:t}=w.getState();t(((e,t)=>{let n,r;return e.source&&e.target?(r=n="id"in e&&"source"in e&&"target"in e?{...e}:{...e,id:(({source:e,sourceHandle:t,target:n,targetHandle:r})=>`reactflow__edge-${e}${t||""}-${n}${r||""}`)(e)},t.some(e=>e.source===r.source&&e.target===r.target&&(e.sourceHandle===r.sourceHandle||!e.sourceHandle&&!r.sourceHandle)&&(e.targetHandle===r.targetHandle||!e.targetHandle&&!r.targetHandle)))?t:t.concat(n):(tC("006","Can't create edge. An edge needs a source and a target."),t)})(o,e))}n?.(o),l?.(o)},A=e=>{if(!x)return;let t="clientX"in e;o&&(t&&0===e.button||!t)&&no({event:e,handleId:p,nodeId:x,onConnect:N,isTarget:b,getState:w.getState,setState:w.setState,isValidConnection:n||w.getState().isValidConnection||ni}),t?u?.(e):d?.(e)};return y().createElement("div",{"data-handleid":p,"data-nodeid":x,"data-handlepos":t,"data-id":`${x}-${p}-${e}`,className:(0,v.A)(["react-flow__handle",`react-flow__handle-${t}`,"nodrag",S,c,{source:!b,target:b,connectable:r,connectablestart:o,connectableend:i,connecting:M,connectionindicator:r&&(o&&!E||i&&E)}]),onMouseDown:A,onTouchStart:A,onClick:_?t=>{let{onClickConnectStart:r,onClickConnectEnd:i,connectionClickStartHandle:a,connectionMode:l,isValidConnection:s}=w.getState();if(!x||!a&&!o)return;if(!a){r?.(t,{nodeId:x,handleId:p,handleType:e}),w.setState({connectionClickStartHandle:{nodeId:x,type:e,handleId:p}});return}let c=t_(t.target),u=n||s||ni,{connection:d,isValid:f}=nt({nodeId:x,id:p,type:e},l,a.nodeId,a.handleId||null,a.type,u,c);f&&N(d),i?.(t),w.setState({connectionClickStartHandle:null})}:void 0,ref:h,...f},s)});nl.displayName="Handle";var ns=(0,m.memo)(nl);let nc=({data:e,isConnectable:t,targetPosition:n=g.Top,sourcePosition:r=g.Bottom})=>y().createElement(y().Fragment,null,y().createElement(ns,{type:"target",position:n,isConnectable:t}),e?.label,y().createElement(ns,{type:"source",position:r,isConnectable:t}));nc.displayName="DefaultNode";var nu=(0,m.memo)(nc);let nd=({data:e,isConnectable:t,sourcePosition:n=g.Bottom})=>y().createElement(y().Fragment,null,e?.label,y().createElement(ns,{type:"source",position:n,isConnectable:t}));nd.displayName="InputNode";var nf=(0,m.memo)(nd);let nh=({data:e,isConnectable:t,targetPosition:n=g.Top})=>y().createElement(y().Fragment,null,y().createElement(ns,{type:"target",position:n,isConnectable:t}),e?.label);nh.displayName="OutputNode";var np=(0,m.memo)(nh);let ng=()=>null;ng.displayName="GroupNode";let nm=e=>({selectedNodes:e.getNodes().filter(e=>e.selected),selectedEdges:e.edges.filter(e=>e.selected).map(e=>({...e}))}),ny=e=>e.id;function nv(e,t){return(0,k.x)(e.selectedNodes.map(ny),t.selectedNodes.map(ny))&&(0,k.x)(e.selectedEdges.map(ny),t.selectedEdges.map(ny))}let nb=(0,m.memo)(({onSelectionChange:e})=>{let t=tf(),{selectedNodes:n,selectedEdges:r}=td(nm,nv);return(0,m.useEffect)(()=>{let o={nodes:n,edges:r};e?.(o),t.getState().onSelectionChange.forEach(e=>e(o))},[n,r,e]),null});nb.displayName="SelectionListener";let nw=e=>!!e.onSelectionChange;function nx({onSelectionChange:e}){let t=td(nw);return e||t?y().createElement(nb,{onSelectionChange:e}):null}let n_=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset});function nS(e,t){(0,m.useEffect)(()=>{void 0!==e&&t(e)},[e])}function nE(e,t,n){(0,m.useEffect)(()=>{void 0!==t&&n({[e]:t})},[t])}let nM=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:o,onConnectStart:i,onConnectEnd:a,onClickConnectStart:l,onClickConnectEnd:s,nodesDraggable:c,nodesConnectable:u,nodesFocusable:d,edgesFocusable:f,edgesUpdatable:h,elevateNodesOnSelect:p,minZoom:g,maxZoom:y,nodeExtent:v,onNodesChange:b,onEdgesChange:w,elementsSelectable:x,connectionMode:_,snapGrid:S,snapToGrid:E,translateExtent:M,connectOnClick:N,defaultEdgeOptions:A,fitView:C,fitViewOptions:z,onNodesDelete:$,onEdgesDelete:P,onNodeDrag:I,onNodeDragStart:R,onNodeDragStop:O,onSelectionDrag:T,onSelectionDragStart:D,onSelectionDragStop:B,noPanClassName:H,nodeOrigin:L,rfId:V,autoPanOnConnect:X,autoPanOnNodeDrag:j,onError:F,connectionRadius:Y,isValidConnection:K,nodeDragThreshold:q})=>{let{setNodes:Z,setEdges:W,setDefaultNodesAndEdges:U,setMinZoom:G,setMaxZoom:Q,setTranslateExtent:J,setNodeExtent:ee,reset:et}=td(n_,k.x),en=tf();return(0,m.useEffect)(()=>(U(n,r?.map(e=>({...e,...A}))),()=>{et()}),[]),nE("defaultEdgeOptions",A,en.setState),nE("connectionMode",_,en.setState),nE("onConnect",o,en.setState),nE("onConnectStart",i,en.setState),nE("onConnectEnd",a,en.setState),nE("onClickConnectStart",l,en.setState),nE("onClickConnectEnd",s,en.setState),nE("nodesDraggable",c,en.setState),nE("nodesConnectable",u,en.setState),nE("nodesFocusable",d,en.setState),nE("edgesFocusable",f,en.setState),nE("edgesUpdatable",h,en.setState),nE("elementsSelectable",x,en.setState),nE("elevateNodesOnSelect",p,en.setState),nE("snapToGrid",E,en.setState),nE("snapGrid",S,en.setState),nE("onNodesChange",b,en.setState),nE("onEdgesChange",w,en.setState),nE("connectOnClick",N,en.setState),nE("fitViewOnInit",C,en.setState),nE("fitViewOnInitOptions",z,en.setState),nE("onNodesDelete",$,en.setState),nE("onEdgesDelete",P,en.setState),nE("onNodeDrag",I,en.setState),nE("onNodeDragStart",R,en.setState),nE("onNodeDragStop",O,en.setState),nE("onSelectionDrag",T,en.setState),nE("onSelectionDragStart",D,en.setState),nE("onSelectionDragStop",B,en.setState),nE("noPanClassName",H,en.setState),nE("nodeOrigin",L,en.setState),nE("rfId",V,en.setState),nE("autoPanOnConnect",X,en.setState),nE("autoPanOnNodeDrag",j,en.setState),nE("onError",F,en.setState),nE("connectionRadius",Y,en.setState),nE("isValidConnection",K,en.setState),nE("nodeDragThreshold",q,en.setState),nS(e,Z),nS(t,W),nS(g,G),nS(y,Q),nS(M,J),nS(v,ee),null},nk={display:"none"},nN={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},nA="react-flow__node-desc",nC="react-flow__edge-desc",nz=e=>e.ariaLiveMessage;function n$({rfId:e}){let t=td(nz);return y().createElement("div",{id:`react-flow__aria-live-${e}`,"aria-live":"assertive","aria-atomic":"true",style:nN},t)}function nP({rfId:e,disableKeyboardA11y:t}){return y().createElement(y().Fragment,null,y().createElement("div",{id:`${nA}-${e}`,style:nk},"Press enter or space to select a node.",!t&&"You can then use the arrow keys to move the node around."," Press delete to remove it and escape to cancel."," "),y().createElement("div",{id:`${nC}-${e}`,style:nk},"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel."),!t&&y().createElement(n$,{rfId:e}))}var nI=(e=null,t={actInsideInputWithModifier:!0})=>{let[n,r]=(0,m.useState)(!1),o=(0,m.useRef)(!1),i=(0,m.useRef)(new Set([])),[a,l]=(0,m.useMemo)(()=>{if(null!==e){let t=(Array.isArray(e)?e:[e]).filter(e=>"string"==typeof e).map(e=>e.split("+")),n=t.reduce((e,t)=>e.concat(...t),[]);return[t,n]}return[[],[]]},[e]);return(0,m.useEffect)(()=>{let n="u">typeof document?document:null,s=t?.target||n;if(null!==e){let e=e=>{if(o.current=e.ctrlKey||e.metaKey||e.shiftKey,(!o.current||o.current&&!t.actInsideInputWithModifier)&&tz(e))return!1;let n=nO(e.code,l);i.current.add(e[n]),nR(a,i.current,!1)&&(e.preventDefault(),r(!0))},n=e=>{if((!o.current||o.current&&!t.actInsideInputWithModifier)&&tz(e))return!1;let n=nO(e.code,l);nR(a,i.current,!0)?(r(!1),i.current.clear()):i.current.delete(e[n]),"Meta"===e.key&&i.current.clear(),o.current=!1},c=()=>{i.current.clear(),r(!1)};return s?.addEventListener("keydown",e),s?.addEventListener("keyup",n),window.addEventListener("blur",c),()=>{s?.removeEventListener("keydown",e),s?.removeEventListener("keyup",n),window.removeEventListener("blur",c)}}},[e,r]),n};function nR(e,t,n){return e.filter(e=>n||e.length===t.size).some(e=>e.every(e=>t.has(e)))}function nO(e,t){return t.includes(e)?"code":"key"}function nT(e,t,n){e.forEach(r=>{let o=r.parentNode||r.parentId;if(o&&!e.has(o))throw Error(`Parent node ${o} not found`);if(o||n?.[r.id]){let{x:o,y:i,z:a}=function e(t,n,r,o){let i=t.parentNode||t.parentId;if(!i)return r;let a=n.get(i),l=t2(a,o);return e(a,n,{x:(r.x??0)+l.x,y:(r.y??0)+l.y,z:(a[tN]?.z??0)>(r.z??0)?a[tN]?.z??0:r.z??0},o)}(r,e,{...r.position,z:r[tN]?.z??0},t);r.positionAbsolute={x:o,y:i},r[tN].z=a,n?.[r.id]&&(r[tN].isParent=!0)}})}function nD(e,t,n,r){let o=new Map,i={},a=1e3*!!r;return e.forEach(e=>{let n=(tk(e.zIndex)?e.zIndex:0)+(e.selected?a:0),r=t.get(e.id),l={...e,positionAbsolute:{x:e.position.x,y:e.position.y}},s=e.parentNode||e.parentId;s&&(i[s]=!0),Object.defineProperty(l,tN,{enumerable:!1,value:{handleBounds:r?.type&&r?.type!==e.type?void 0:r?.[tN]?.handleBounds,z:n}}),o.set(e.id,l)}),nT(o,n,i),o}function nB(e,t={}){let{getNodes:n,width:r,height:o,minZoom:i,maxZoom:a,d3Zoom:l,d3Selection:s,fitViewOnInitDone:c,fitViewOnInit:u,nodeOrigin:d}=e(),f=t.initial&&!c&&u;if(l&&s&&(f||!t.initial)){let e=n().filter(e=>{let n=t.includeHiddenNodes?e.width&&e.height:!e.hidden;return t.nodes?.length?n&&t.nodes.some(t=>t.id===e.id):n}),c=e.every(e=>e.width&&e.height);if(e.length>0&&c){let{x:n,y:c,zoom:u}=t6(t5(e,d),r,o,t.minZoom??i,t.maxZoom??a,t.padding??.1),f=e2.translate(n,c).scale(u);return"number"==typeof t.duration&&t.duration>0?l.transform(t8(s,t.duration),f):l.transform(s,f),!0}}return!1}function nH({changedNodes:e,changedEdges:t,get:n,set:r}){let{nodeInternals:o,edges:i,onNodesChange:a,onEdgesChange:l,hasDefaultNodes:s,hasDefaultEdges:c}=n();e?.length&&(s&&r({nodeInternals:(e.forEach(e=>{let t=o.get(e.id);t&&o.set(t.id,{...t,[tN]:t[tN],selected:e.selected})}),new Map(o))}),a?.(e)),t?.length&&(c&&r({edges:i.map(e=>{let n=t.find(t=>t.id===e.id);return n&&(e.selected=n.selected),e})}),l?.(t))}let nL=()=>{},nV={zoomIn:nL,zoomOut:nL,zoomTo:nL,getZoom:()=>1,setViewport:nL,getViewport:()=>({x:0,y:0,zoom:1}),fitView:()=>!1,setCenter:nL,fitBounds:nL,project:e=>e,screenToFlowPosition:e=>e,flowToScreenPosition:e=>e,viewportInitialized:!1},nX=e=>({d3Zoom:e.d3Zoom,d3Selection:e.d3Selection});function nj(){let e=(()=>{let e=tf(),{d3Zoom:t,d3Selection:n}=td(nX,k.x);return(0,m.useMemo)(()=>n&&t?{zoomIn:e=>t.scaleBy(t8(n,e?.duration),1.2),zoomOut:e=>t.scaleBy(t8(n,e?.duration),1/1.2),zoomTo:(e,r)=>t.scaleTo(t8(n,r?.duration),e),getZoom:()=>e.getState().transform[2],setViewport:(r,o)=>{let[i,a,l]=e.getState().transform,s=e2.translate(r.x??i,r.y??a).scale(r.zoom??l);t.transform(t8(n,o?.duration),s)},getViewport:()=>{let[t,n,r]=e.getState().transform;return{x:t,y:n,zoom:r}},fitView:t=>nB(e.getState,t),setCenter:(r,o,i)=>{let{width:a,height:l,maxZoom:s}=e.getState(),c=void 0!==i?.zoom?i.zoom:s,u=a/2-r*c,d=l/2-o*c,f=e2.translate(u,d).scale(c);t.transform(t8(n,i?.duration),f)},fitBounds:(r,o)=>{let{width:i,height:a,minZoom:l,maxZoom:s}=e.getState(),{x:c,y:u,zoom:d}=t6(r,i,a,l,s,o?.padding??.1),f=e2.translate(c,u).scale(d);t.transform(t8(n,o?.duration),f)},project:t=>{let{transform:n,snapToGrid:r,snapGrid:o}=e.getState();return console.warn("[DEPRECATED] `project` is deprecated. Instead use `screenToFlowPosition`. There is no need to subtract the react flow bounds anymore! https://reactflow.dev/api-reference/types/react-flow-instance#screen-to-flow-position"),t0(t,n,r,o)},screenToFlowPosition:t=>{let{transform:n,snapToGrid:r,snapGrid:o,domNode:i}=e.getState();if(!i)return t;let{x:a,y:l}=i.getBoundingClientRect();return t0({x:t.x-a,y:t.y-l},n,r,o)},flowToScreenPosition:t=>{let{transform:n,domNode:r}=e.getState();if(!r)return t;let{x:o,y:i}=r.getBoundingClientRect(),a=t1(t,n);return{x:a.x+o,y:a.y+i}},viewportInitialized:!0}:nV,[t,n])})(),t=tf(),n=(0,m.useCallback)(()=>t.getState().getNodes().map(e=>({...e})),[]),r=(0,m.useCallback)(e=>t.getState().nodeInternals.get(e),[]),o=(0,m.useCallback)(()=>{let{edges:e=[]}=t.getState();return e.map(e=>({...e}))},[]),i=(0,m.useCallback)(e=>{let{edges:n=[]}=t.getState();return n.find(t=>t.id===e)},[]),a=(0,m.useCallback)(e=>{let{getNodes:n,setNodes:r,hasDefaultNodes:o,onNodesChange:i}=t.getState(),a=n(),l="function"==typeof e?e(a):e;o?r(l):i&&i(0===l.length?a.map(e=>({type:"remove",id:e.id})):l.map(e=>({item:e,type:"reset"})))},[]),l=(0,m.useCallback)(e=>{let{edges:n=[],setEdges:r,hasDefaultEdges:o,onEdgesChange:i}=t.getState(),a="function"==typeof e?e(n):e;o?r(a):i&&i(0===a.length?n.map(e=>({type:"remove",id:e.id})):a.map(e=>({item:e,type:"reset"})))},[]),s=(0,m.useCallback)(e=>{let n=Array.isArray(e)?e:[e],{getNodes:r,setNodes:o,hasDefaultNodes:i,onNodesChange:a}=t.getState();i?o([...r(),...n]):a&&a(n.map(e=>({item:e,type:"add"})))},[]),c=(0,m.useCallback)(e=>{let n=Array.isArray(e)?e:[e],{edges:r=[],setEdges:o,hasDefaultEdges:i,onEdgesChange:a}=t.getState();i?o([...r,...n]):a&&a(n.map(e=>({item:e,type:"add"})))},[]),u=(0,m.useCallback)(()=>{let{getNodes:e,edges:n=[],transform:r}=t.getState(),[o,i,a]=r;return{nodes:e().map(e=>({...e})),edges:n.map(e=>({...e})),viewport:{x:o,y:i,zoom:a}}},[]),d=(0,m.useCallback)(({nodes:e,edges:n})=>{let{nodeInternals:r,getNodes:o,edges:i,hasDefaultNodes:a,hasDefaultEdges:l,onNodesDelete:s,onEdgesDelete:c,onNodesChange:u,onEdgesChange:d}=t.getState(),f=(e||[]).map(e=>e.id),h=(n||[]).map(e=>e.id),p=o().reduce((e,t)=>{let n=t.parentNode||t.parentId,r=!f.includes(t.id)&&n&&e.find(e=>e.id===n);return("boolean"!=typeof t.deletable||t.deletable)&&(f.includes(t.id)||r)&&e.push(t),e},[]),g=i.filter(e=>"boolean"!=typeof e.deletable||e.deletable),m=g.filter(e=>h.includes(e.id));if(p||m){let e=[...m,...t4(p,g)],n=e.reduce((e,t)=>(e.includes(t.id)||e.push(t.id),e),[]);(l||a)&&(l&&t.setState({edges:i.filter(e=>!n.includes(e.id))}),a&&(p.forEach(e=>{r.delete(e.id)}),t.setState({nodeInternals:new Map(r)}))),n.length>0&&(c?.(e),d&&d(n.map(e=>({id:e,type:"remove"})))),p.length>0&&(s?.(p),u&&u(p.map(e=>({id:e.id,type:"remove"}))))}},[]),f=(0,m.useCallback)(e=>{let n=tk(e.width)&&tk(e.height)&&tk(e.x)&&tk(e.y),r=n?null:t.getState().nodeInternals.get(e.id);return n||r?[n?e:tE(r),r,n]:[null,null,n]},[]),h=(0,m.useCallback)((e,n=!0,r)=>{let[o,i,a]=f(e);return o?(r||t.getState().getNodes()).filter(e=>{if(!a&&(e.id===i.id||!e.positionAbsolute))return!1;let t=tM(tE(e),o);return n&&t>0||t>=o.width*o.height}):[]},[]),p=(0,m.useCallback)((e,t,n=!0)=>{let[r]=f(e);if(!r)return!1;let o=tM(r,t);return n&&o>0||o>=r.width*r.height},[]);return(0,m.useMemo)(()=>({...e,getNodes:n,getNode:r,getEdges:o,getEdge:i,setNodes:a,setEdges:l,addNodes:s,addEdges:c,toObject:u,deleteElements:d,getIntersectingNodes:h,isNodeIntersecting:p}),[e,n,r,o,i,a,l,s,c,u,d,h,p])}let nF={actInsideInputWithModifier:!1},nY={position:"absolute",width:"100%",height:"100%",top:0,left:0},nK=e=>({x:e.x,y:e.y,zoom:e.k}),nq=(e,t)=>e.target.closest(`.${t}`),nZ=(e,t)=>2===t&&Array.isArray(e)&&e.includes(2),nW=e=>{let t=e.ctrlKey&&tP()?10:1;return-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*t},nU=e=>({d3Zoom:e.d3Zoom,d3Selection:e.d3Selection,d3ZoomHandler:e.d3ZoomHandler,userSelectionActive:e.userSelectionActive}),nG=({onMove:e,onMoveStart:t,onMoveEnd:n,onPaneContextMenu:r,zoomOnScroll:o=!0,zoomOnPinch:i=!0,panOnScroll:a=!1,panOnScrollSpeed:l=.5,panOnScrollMode:s=d.Free,zoomOnDoubleClick:c=!0,elementsSelectable:u,panOnDrag:f=!0,defaultViewport:h,translateExtent:p,minZoom:g,maxZoom:v,zoomActivationKeyCode:b,preventScrolling:w=!0,children:x,noWheelClassName:_,noPanClassName:S})=>{let E,M=(0,m.useRef)(),A=tf(),C=(0,m.useRef)(!1),z=(0,m.useRef)(!1),$=(0,m.useRef)(null),P=(0,m.useRef)({x:0,y:0,zoom:0}),{d3Zoom:I,d3Selection:R,d3ZoomHandler:O,userSelectionActive:T}=td(nU,k.x),D=nI(b),B=(0,m.useRef)(0),H=(0,m.useRef)(!1),L=(0,m.useRef)();return E=tf(),(0,m.useEffect)(()=>{let e,t=()=>{if(!$.current)return;let e=ty($.current);(0===e.height||0===e.width)&&E.getState().onError?.("004","The React Flow parent container needs a width and a height to render the graph."),E.setState({width:e.width||500,height:e.height||500})};return t(),window.addEventListener("resize",t),$.current&&(e=new ResizeObserver(()=>t())).observe($.current),()=>{window.removeEventListener("resize",t),e&&$.current&&e.unobserve($.current)}},[]),(0,m.useEffect)(()=>{if($.current){let e=$.current.getBoundingClientRect(),t=(function(){var e,t,n,r=e4,o=e6,i=te,a=e9,l=e7,s=[0,1/0],c=[[-1/0,-1/0],[1/0,1/0]],u=250,d=eS,f=(0,N.A)("start","zoom","end"),h=0,p=10;function g(e){e.property("__zoom",e8).on("wheel.zoom",_,{passive:!1}).on("mousedown.zoom",S).on("dblclick.zoom",E).filter(l).on("touchstart.zoom",M).on("touchmove.zoom",k).on("touchend.zoom touchcancel.zoom",A).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(e,t){return(t=Math.max(s[0],Math.min(s[1],t)))===e.k?e:new e1(t,e.x,e.y)}function y(e,t,n){var r=t[0]-n[0]*e.k,o=t[1]-n[1]*e.k;return r===e.x&&o===e.y?e:new e1(e.k,r,o)}function v(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function b(e,t,n,r){e.on("start.zoom",function(){w(this,arguments).event(r).start()}).on("interrupt.zoom end.zoom",function(){w(this,arguments).event(r).end()}).tween("zoom",function(){var e=arguments,i=w(this,e).event(r),a=o.apply(this,e),l=null==n?v(a):"function"==typeof n?n.apply(this,e):n,s=Math.max(a[1][0]-a[0][0],a[1][1]-a[0][1]),c=this.__zoom,u="function"==typeof t?t.apply(this,e):t,f=d(c.invert(l).concat(s/c.k),u.invert(l).concat(s/u.k));return function(e){if(1===e)e=u;else{var t=f(e),n=s/t[2];e=new e1(n,l[0]-t[0]*n,l[1]-t[1]*n)}i.zoom(null,e)}})}function w(e,t,n){return!n&&e.__zooming||new x(e,t)}function x(e,t){this.that=e,this.args=t,this.active=0,this.sourceEvent=null,this.extent=o.apply(e,t),this.taps=0}function _(e,...t){if(r.apply(this,arguments)){var n=w(this,t).event(e),o=this.__zoom,l=Math.max(s[0],Math.min(s[1],o.k*Math.pow(2,a.apply(this,arguments)))),u=eE(e);if(n.wheel)(n.mouse[0][0]!==u[0]||n.mouse[0][1]!==u[1])&&(n.mouse[1]=o.invert(n.mouse[0]=u)),clearTimeout(n.wheel);else{if(o.k===l)return;n.mouse=[u,o.invert(u)],eI(this),n.start()}e3(e),n.wheel=setTimeout(function(){n.wheel=null,n.end()},150),n.zoom("mouse",i(y(m(o,l),n.mouse[0],n.mouse[1]),n.extent,c))}}function S(e,...t){if(!n&&r.apply(this,arguments)){var o=e.currentTarget,a=w(this,t,!0).event(e),l=eg(e.view).on("mousemove.zoom",function(e){if(e3(e),!a.moved){var t=e.clientX-u,n=e.clientY-d;a.moved=t*t+n*n>h}a.event(e).zoom("mouse",i(y(a.that.__zoom,a.mouse[0]=eE(e,o),a.mouse[1]),a.extent,c))},!0).on("mouseup.zoom",function(e){l.on("mousemove.zoom mouseup.zoom",null),ex(e.view,a.moved),e3(e),a.event(e).end()},!0),s=eE(e,o),u=e.clientX,d=e.clientY;ew(e.view),e5(e),a.mouse=[s,this.__zoom.invert(s)],eI(this),a.start()}}function E(e,...t){if(r.apply(this,arguments)){var n=this.__zoom,a=eE(e.changedTouches?e.changedTouches[0]:e,this),l=n.invert(a),s=n.k*(e.shiftKey?.5:2),d=i(y(m(n,s),a,l),o.apply(this,t),c);e3(e),u>0?eg(this).transition().duration(u).call(b,d,a,e):eg(this).call(g.transform,d,a,e)}}function M(n,...o){if(r.apply(this,arguments)){var i,a,l,s,c=n.touches,u=c.length,d=w(this,o,n.changedTouches.length===u).event(n);for(e5(n),a=0;a<u;++a)s=[s=eE(l=c[a],this),this.__zoom.invert(s),l.identifier],d.touch0?d.touch1||d.touch0[2]===s[2]||(d.touch1=s,d.taps=0):(d.touch0=s,i=!0,d.taps=1+!!e);e&&(e=clearTimeout(e)),i&&(d.taps<2&&(t=s[0],e=setTimeout(function(){e=null},500)),eI(this),d.start())}}function k(e,...t){if(this.__zooming){var n,r,o,a,l=w(this,t).event(e),s=e.changedTouches,u=s.length;for(e3(e),n=0;n<u;++n)o=eE(r=s[n],this),l.touch0&&l.touch0[2]===r.identifier?l.touch0[0]=o:l.touch1&&l.touch1[2]===r.identifier&&(l.touch1[0]=o);if(r=l.that.__zoom,l.touch1){var d=l.touch0[0],f=l.touch0[1],h=l.touch1[0],p=l.touch1[1],g=(g=h[0]-d[0])*g+(g=h[1]-d[1])*g,v=(v=p[0]-f[0])*v+(v=p[1]-f[1])*v;r=m(r,Math.sqrt(g/v)),o=[(d[0]+h[0])/2,(d[1]+h[1])/2],a=[(f[0]+p[0])/2,(f[1]+p[1])/2]}else{if(!l.touch0)return;o=l.touch0[0],a=l.touch0[1]}l.zoom("touch",i(y(r,o,a),l.extent,c))}}function A(e,...r){if(this.__zooming){var o,i,a=w(this,r).event(e),l=e.changedTouches,s=l.length;for(e5(e),n&&clearTimeout(n),n=setTimeout(function(){n=null},500),o=0;o<s;++o)i=l[o],a.touch0&&a.touch0[2]===i.identifier?delete a.touch0:a.touch1&&a.touch1[2]===i.identifier&&delete a.touch1;if(a.touch1&&!a.touch0&&(a.touch0=a.touch1,delete a.touch1),a.touch0)a.touch0[1]=this.__zoom.invert(a.touch0[0]);else if(a.end(),2===a.taps&&(i=eE(i,this),Math.hypot(t[0]-i[0],t[1]-i[1])<p)){var c=eg(this).on("dblclick.zoom");c&&c.apply(this,arguments)}}}return g.transform=function(e,t,n,r){var o=e.selection?e.selection():e;o.property("__zoom",e8),e!==o?b(e,t,n,r):o.interrupt().each(function(){w(this,arguments).event(r).start().zoom(null,"function"==typeof t?t.apply(this,arguments):t).end()})},g.scaleBy=function(e,t,n,r){g.scaleTo(e,function(){var e=this.__zoom.k,n="function"==typeof t?t.apply(this,arguments):t;return e*n},n,r)},g.scaleTo=function(e,t,n,r){g.transform(e,function(){var e=o.apply(this,arguments),r=this.__zoom,a=null==n?v(e):"function"==typeof n?n.apply(this,arguments):n,l=r.invert(a),s="function"==typeof t?t.apply(this,arguments):t;return i(y(m(r,s),a,l),e,c)},n,r)},g.translateBy=function(e,t,n,r){g.transform(e,function(){return i(this.__zoom.translate("function"==typeof t?t.apply(this,arguments):t,"function"==typeof n?n.apply(this,arguments):n),o.apply(this,arguments),c)},null,r)},g.translateTo=function(e,t,n,r,a){g.transform(e,function(){var e=o.apply(this,arguments),a=this.__zoom,l=null==r?v(e):"function"==typeof r?r.apply(this,arguments):r;return i(e2.translate(l[0],l[1]).scale(a.k).translate("function"==typeof t?-t.apply(this,arguments):-t,"function"==typeof n?-n.apply(this,arguments):-n),e,c)},r,a)},x.prototype={event:function(e){return e&&(this.sourceEvent=e),this},start:function(){return 1==++this.active&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(e,t){return this.mouse&&"mouse"!==e&&(this.mouse[1]=t.invert(this.mouse[0])),this.touch0&&"touch"!==e&&(this.touch0[1]=t.invert(this.touch0[0])),this.touch1&&"touch"!==e&&(this.touch1[1]=t.invert(this.touch1[0])),this.that.__zoom=t,this.emit("zoom"),this},end:function(){return 0==--this.active&&(delete this.that.__zooming,this.emit("end")),this},emit:function(e){var t=eg(this.that).datum();f.call(e,this.that,new e0(e,{sourceEvent:this.sourceEvent,target:g,type:e,transform:this.that.__zoom,dispatch:f}),t)}},g.wheelDelta=function(e){return arguments.length?(a="function"==typeof e?e:eJ(+e),g):a},g.filter=function(e){return arguments.length?(r="function"==typeof e?e:eJ(!!e),g):r},g.touchable=function(e){return arguments.length?(l="function"==typeof e?e:eJ(!!e),g):l},g.extent=function(e){return arguments.length?(o="function"==typeof e?e:eJ([[+e[0][0],+e[0][1]],[+e[1][0],+e[1][1]]]),g):o},g.scaleExtent=function(e){return arguments.length?(s[0]=+e[0],s[1]=+e[1],g):[s[0],s[1]]},g.translateExtent=function(e){return arguments.length?(c[0][0]=+e[0][0],c[1][0]=+e[1][0],c[0][1]=+e[0][1],c[1][1]=+e[1][1],g):[[c[0][0],c[0][1]],[c[1][0],c[1][1]]]},g.constrain=function(e){return arguments.length?(i=e,g):i},g.duration=function(e){return arguments.length?(u=+e,g):u},g.interpolate=function(e){return arguments.length?(d=e,g):d},g.on=function(){var e=f.on.apply(f,arguments);return e===f?g:e},g.clickDistance=function(e){return arguments.length?(h=(e*=1)*e,g):Math.sqrt(h)},g.tapDistance=function(e){return arguments.length?(p=+e,g):p},g})().scaleExtent([g,v]).translateExtent(p),n=eg($.current).call(t),r=e2.translate(h.x,h.y).scale(tv(h.zoom,g,v)),o=[[0,0],[e.width,e.height]],i=t.constrain()(r,o,p);t.transform(n,i),t.wheelDelta(nW),A.setState({d3Zoom:t,d3Selection:n,d3ZoomHandler:n.on("wheel.zoom"),transform:[i.x,i.y,i.k],domNode:$.current.closest(".react-flow")})}},[]),(0,m.useEffect)(()=>{R&&I&&(!a||D||T?void 0!==O&&R.on("wheel.zoom",function(e,t){if(!w&&"wheel"===e.type&&!e.ctrlKey||nq(e,_))return null;e.preventDefault(),O.call(this,e,t)},{passive:!1}):R.on("wheel.zoom",r=>{if(nq(r,_))return!1;r.preventDefault(),r.stopImmediatePropagation();let o=R.property("__zoom").k||1;if(r.ctrlKey&&i){let e=eE(r),t=o*Math.pow(2,nW(r));I.scaleTo(R,t,e,r);return}let a=1===r.deltaMode?20:1,c=s===d.Vertical?0:r.deltaX*a,u=s===d.Horizontal?0:r.deltaY*a;!tP()&&r.shiftKey&&s!==d.Vertical&&(c=r.deltaY*a,u=0),I.translateBy(R,-(c/o)*l,-(u/o)*l,{internal:!0});let f=nK(R.property("__zoom")),{onViewportChangeStart:h,onViewportChange:p,onViewportChangeEnd:g}=A.getState();clearTimeout(L.current),H.current||(H.current=!0,t?.(r,f),h?.(f)),H.current&&(e?.(r,f),p?.(f),L.current=setTimeout(()=>{n?.(r,f),g?.(f),H.current=!1},150))},{passive:!1}))},[T,a,s,R,I,O,D,i,w,_,t,e,n]),(0,m.useEffect)(()=>{I&&I.on("start",e=>{if(!e.sourceEvent||e.sourceEvent.internal)return null;B.current=e.sourceEvent?.button;let{onViewportChangeStart:n}=A.getState(),r=nK(e.transform);C.current=!0,P.current=r,e.sourceEvent?.type==="mousedown"&&A.setState({paneDragging:!0}),n?.(r),t?.(e.sourceEvent,r)})},[I,t]),(0,m.useEffect)(()=>{I&&(T&&!C.current?I.on("zoom",null):T||I.on("zoom",t=>{let{onViewportChange:n}=A.getState();if(A.setState({transform:[t.transform.x,t.transform.y,t.transform.k]}),z.current=!!(r&&nZ(f,B.current??0)),(e||n)&&!t.sourceEvent?.internal){let r=nK(t.transform);n?.(r),e?.(t.sourceEvent,r)}}))},[T,I,e,f,r]),(0,m.useEffect)(()=>{I&&I.on("end",e=>{let t,o;if(!e.sourceEvent||e.sourceEvent.internal)return null;let{onViewportChangeEnd:i}=A.getState();if(C.current=!1,A.setState({paneDragging:!1}),r&&nZ(f,B.current??0)&&!z.current&&r(e.sourceEvent),z.current=!1,(n||i)&&(t=P.current,o=e.transform,t.x!==o.x||t.y!==o.y||t.zoom!==o.k)){let t=nK(e.transform);P.current=t,clearTimeout(M.current),M.current=setTimeout(()=>{i?.(t),n?.(e.sourceEvent,t)},150*!!a)}})},[I,a,f,n,r]),(0,m.useEffect)(()=>{I&&I.filter(e=>{let t=D||o,n=i&&e.ctrlKey;if((!0===f||Array.isArray(f)&&f.includes(1))&&1===e.button&&"mousedown"===e.type&&(nq(e,"react-flow__node")||nq(e,"react-flow__edge")))return!0;if(!f&&!t&&!a&&!c&&!i||T||!c&&"dblclick"===e.type||nq(e,_)&&"wheel"===e.type||nq(e,S)&&("wheel"!==e.type||a&&"wheel"===e.type&&!D)||!i&&e.ctrlKey&&"wheel"===e.type||!t&&!a&&!n&&"wheel"===e.type||!f&&("mousedown"===e.type||"touchstart"===e.type)||Array.isArray(f)&&!f.includes(e.button)&&"mousedown"===e.type)return!1;let r=Array.isArray(f)&&f.includes(e.button)||!e.button||e.button<=1;return(!e.ctrlKey||"wheel"===e.type)&&r})},[T,I,o,i,a,c,f,u,D]),y().createElement("div",{className:"react-flow__renderer",ref:$,style:nY},x)},nQ=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function nJ(){let{userSelectionActive:e,userSelectionRect:t}=td(nQ,k.x);return e&&t?y().createElement("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}function n0(e,t){let n=t.parentNode||t.parentId,r=e.find(e=>e.id===n);if(r){let e=t.position.x+t.width-r.width,n=t.position.y+t.height-r.height;if(e>0||n>0||t.position.x<0||t.position.y<0){if(r.style={...r.style},r.style.width=r.style.width??r.width,r.style.height=r.style.height??r.height,e>0&&(r.style.width+=e),n>0&&(r.style.height+=n),t.position.x<0){let e=Math.abs(t.position.x);r.position.x=r.position.x-e,r.style.width+=e,t.position.x=0}if(t.position.y<0){let e=Math.abs(t.position.y);r.position.y=r.position.y-e,r.style.height+=e,t.position.y=0}r.width=r.style.width,r.height=r.style.height}}}let n1=(e,t)=>({id:e,type:"select",selected:t});function n2(e,t){return e.reduce((e,n)=>{let r=t.includes(n.id);return!n.selected&&r?(n.selected=!0,e.push(n1(n.id,!0))):n.selected&&!r&&(n.selected=!1,e.push(n1(n.id,!1))),e},[])}let n5=(e,t)=>n=>{n.target===t.current&&e?.(n)},n3=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,dragging:e.paneDragging}),n4=(0,m.memo)(({isSelecting:e,selectionMode:t=f.Full,panOnDrag:n,onSelectionStart:r,onSelectionEnd:o,onPaneClick:i,onPaneContextMenu:a,onPaneScroll:l,onPaneMouseEnter:s,onPaneMouseMove:c,onPaneMouseLeave:u,children:d})=>{let h=(0,m.useRef)(null),p=tf(),g=(0,m.useRef)(0),b=(0,m.useRef)(0),w=(0,m.useRef)(),{userSelectionActive:x,elementsSelectable:_,dragging:S}=td(n3,k.x),E=()=>{p.setState({userSelectionActive:!1,userSelectionRect:null}),g.current=0,b.current=0},M=e=>{i?.(e),p.getState().resetSelectedElements(),p.setState({nodesSelectionActive:!1})},N=_&&(e||x);return y().createElement("div",{className:(0,v.A)(["react-flow__pane",{dragging:S,selection:e}]),onClick:N?void 0:n5(M,h),onContextMenu:n5(e=>{Array.isArray(n)&&n?.includes(2)?e.preventDefault():a?.(e)},h),onWheel:n5(l?e=>l(e):void 0,h),onMouseEnter:N?void 0:s,onMouseDown:N?t=>{let{resetSelectedElements:n,domNode:o}=p.getState();if(w.current=o?.getBoundingClientRect(),!_||!e||0!==t.button||t.target!==h.current||!w.current)return;let{x:i,y:a}=t$(t,w.current);n(),p.setState({userSelectionRect:{width:0,height:0,startX:i,startY:a,x:i,y:a}}),r?.(t)}:void 0,onMouseMove:N?n=>{let{userSelectionRect:r,nodeInternals:o,edges:i,transform:a,onNodesChange:l,onEdgesChange:s,nodeOrigin:c,getNodes:u}=p.getState();if(!e||!w.current||!r)return;p.setState({userSelectionActive:!0,nodesSelectionActive:!1});let d=t$(n,w.current),h=r.startX??0,m=r.startY??0,y={...r,x:d.x<h?d.x:h,y:d.y<m?d.y:m,width:Math.abs(d.x-h),height:Math.abs(d.y-m)},v=u(),x=t3(o,y,a,t===f.Partial,!0,c),_=t4(x,i).map(e=>e.id),S=x.map(e=>e.id);if(g.current!==S.length){g.current=S.length;let e=n2(v,S);e.length&&l?.(e)}if(b.current!==_.length){b.current=_.length;let e=n2(i,_);e.length&&s?.(e)}p.setState({userSelectionRect:y})}:c,onMouseUp:N?e=>{if(0!==e.button)return;let{userSelectionRect:t}=p.getState();!x&&t&&e.target===h.current&&M?.(e),p.setState({nodesSelectionActive:g.current>0}),E(),o?.(e)}:void 0,onMouseLeave:N?e=>{x&&(p.setState({nodesSelectionActive:g.current>0}),o?.(e)),E()}:u,ref:h,style:nY},d,y().createElement(nJ,null))});function n6(e,t,n){let r=e;do{if(r?.matches(t))return!0;if(r===n.current)break;r=r.parentElement}while(r);return!1}function n8(e,t,n,r,o=[0,0],i){var a;let l=(a=e.extent||r)&&"parent"!==a?[a[0],[a[1][0]-(e.width||0),a[1][1]-(e.height||0)]]:a,s=l,c=e.parentNode||e.parentId;if("parent"!==e.extent||e.expandParent){if(e.extent&&c&&"parent"!==e.extent){let{x:t,y:r}=t2(n.get(c),o).positionAbsolute;s=[[e.extent[0][0]+t,e.extent[0][1]+r],[e.extent[1][0]+t,e.extent[1][1]+r]]}}else if(c&&e.width&&e.height){let t=n.get(c),{x:r,y:i}=t2(t,o).positionAbsolute;s=t&&tk(r)&&tk(i)&&tk(t.width)&&tk(t.height)?[[r+e.width*o[0],i+e.height*o[1]],[r+t.width-e.width+e.width*o[0],i+t.height-e.height+e.height*o[1]]]:s}else i?.("005","Only child nodes can use a parent extent."),s=l;let u={x:0,y:0};c&&(u=t2(n.get(c),o).positionAbsolute);let d=s&&"parent"!==s?tb(t,s):t;return{position:{x:d.x-u.x,y:d.y-u.y},positionAbsolute:d}}function n9({nodeId:e,dragItems:t,nodeInternals:n}){let r=t.map(e=>({...n.get(e.id),position:e.position,positionAbsolute:e.positionAbsolute}));return[e?r.find(t=>t.id===e):r[0],r]}n4.displayName="Pane";let n7=(e,t,n,r)=>{let o=t.querySelectorAll(e);if(!o||!o.length)return null;let i=Array.from(o),a=t.getBoundingClientRect(),l={x:a.width*r[0],y:a.height*r[1]};return i.map(e=>{let t=e.getBoundingClientRect();return{id:e.getAttribute("data-handleid"),position:e.getAttribute("data-handlepos"),x:(t.left-a.left-l.x)/n,y:(t.top-a.top-l.y)/n,...ty(e)}})};function re(e,t,n){return void 0===n?n:r=>{let o=t().nodeInternals.get(e);o&&n(r,{...o})}}function rt({id:e,store:t,unselect:n=!1,nodeRef:r}){let o,{addSelectedNodes:i,unselectNodesAndEdges:a,multiSelectionActive:l,nodeInternals:s,onError:c}=t.getState(),u=s.get(e);u?(t.setState({nodesSelectionActive:!1}),u.selected?(n||u.selected&&l)&&(a({nodes:[u],edges:[]}),requestAnimationFrame(()=>r?.current?.blur())):i([e])):c?.("012",(o=e,`Node with id "${o}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`))}function rn(e){return(t,n,r)=>e?.(t,r)}function rr({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:r,nodeId:o,isSelectable:i,selectNodesOnDrag:a}){let l,s=tf(),[c,u]=(0,m.useState)(!1),d=(0,m.useRef)([]),f=(0,m.useRef)({x:null,y:null}),h=(0,m.useRef)(0),p=(0,m.useRef)(null),g=(0,m.useRef)({x:0,y:0}),y=(0,m.useRef)(null),v=(0,m.useRef)(!1),b=(0,m.useRef)(!1),w=(0,m.useRef)(!1),x=(l=tf(),(0,m.useCallback)(({sourceEvent:e})=>{let{transform:t,snapGrid:n,snapToGrid:r}=l.getState(),o=e.touches?e.touches[0].clientX:e.clientX,i=e.touches?e.touches[0].clientY:e.clientY,a={x:(o-t[0])/t[2],y:(i-t[1])/t[2]};return{xSnapped:r?n[0]*Math.round(a.x/n[0]):a.x,ySnapped:r?n[1]*Math.round(a.y/n[1]):a.y,...a}},[]));return(0,m.useEffect)(()=>{if(e?.current){let l=eg(e.current),c=({x:e,y:t})=>{let{nodeInternals:n,onNodeDrag:r,onSelectionDrag:i,updateNodePositions:a,nodeExtent:l,snapGrid:c,snapToGrid:h,nodeOrigin:p,onError:g}=s.getState();f.current={x:e,y:t};let m=!1,v={x:0,y:0,x2:0,y2:0};if(d.current.length>1&&l&&(v=tS(t5(d.current,p))),d.current=d.current.map(r=>{let o={x:e-r.distance.x,y:t-r.distance.y};h&&(o.x=c[0]*Math.round(o.x/c[0]),o.y=c[1]*Math.round(o.y/c[1]));let i=[[l[0][0],l[0][1]],[l[1][0],l[1][1]]];d.current.length>1&&l&&!r.extent&&(i[0][0]=r.positionAbsolute.x-v.x+l[0][0],i[1][0]=r.positionAbsolute.x+(r.width??0)-v.x2+l[1][0],i[0][1]=r.positionAbsolute.y-v.y+l[0][1],i[1][1]=r.positionAbsolute.y+(r.height??0)-v.y2+l[1][1]);let a=n8(r,o,n,i,p,g);return m=m||r.position.x!==a.position.x||r.position.y!==a.position.y,r.position=a.position,r.positionAbsolute=a.positionAbsolute,r}),!m)return;a(d.current,!0,!0),u(!0);let b=o?r:rn(i);if(b&&y.current){let[e,t]=n9({nodeId:o,dragItems:d.current,nodeInternals:n});b(y.current,e,t)}},m=()=>{if(!p.current)return;let[e,t]=tx(g.current,p.current);if(0!==e||0!==t){let{transform:n,panBy:r}=s.getState();f.current.x=(f.current.x??0)-e/n[2],f.current.y=(f.current.y??0)-t/n[2],r({x:e,y:t})&&c(f.current)}h.current=requestAnimationFrame(m)},_=t=>{let{nodeInternals:n,multiSelectionActive:r,nodesDraggable:l,unselectNodesAndEdges:c,onNodeDragStart:u,onSelectionDragStart:h}=s.getState();b.current=!0;let p=o?u:rn(h);a&&i||r||!o||n.get(o)?.selected||c(),o&&i&&a&&rt({id:o,store:s,nodeRef:e});let g=x(t);if(f.current=g,d.current=Array.from(n.values()).filter(e=>(e.selected||e.id===o)&&(!e.parentNode||e.parentId||!function e(t,n){let r=t.parentNode||t.parentId;if(!r)return!1;let o=n.get(r);return!!o&&(!!o.selected||e(o,n))}(e,n))&&(e.draggable||l&&void 0===e.draggable)).map(e=>({id:e.id,position:e.position||{x:0,y:0},positionAbsolute:e.positionAbsolute||{x:0,y:0},distance:{x:g.x-(e.positionAbsolute?.x??0),y:g.y-(e.positionAbsolute?.y??0)},delta:{x:0,y:0},extent:e.extent,parentNode:e.parentNode||e.parentId,parentId:e.parentNode||e.parentId,width:e.width,height:e.height,expandParent:e.expandParent})),p&&d.current){let[e,r]=n9({nodeId:o,dragItems:d.current,nodeInternals:n});p(t.sourceEvent,e,r)}};if(t)l.on(".drag",null);else{let t=(function(){var e,t,n,r,o=tr,i=to,a=ti,l=ta,s={},c=(0,N.A)("start","drag","end"),u=0,d=0;function f(e){e.on("mousedown.drag",h).filter(l).on("touchstart.drag",m).on("touchmove.drag",y,em).on("touchend.drag touchcancel.drag",v).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function h(a,l){if(!r&&o.call(this,a,l)){var s=b(this,i.call(this,a,l),a,l,"mouse");s&&(eg(a.view).on("mousemove.drag",p,ey).on("mouseup.drag",g,ey),ew(a.view),ev(a),n=!1,e=a.clientX,t=a.clientY,s("start",a))}}function p(r){if(eb(r),!n){var o=r.clientX-e,i=r.clientY-t;n=o*o+i*i>d}s.mouse("drag",r)}function g(e){eg(e.view).on("mousemove.drag mouseup.drag",null),ex(e.view,n),eb(e),s.mouse("end",e)}function m(e,t){if(o.call(this,e,t)){var n,r,a=e.changedTouches,l=i.call(this,e,t),s=a.length;for(n=0;n<s;++n)(r=b(this,l,e,t,a[n].identifier,a[n]))&&(ev(e),r("start",e,a[n]))}}function y(e){var t,n,r=e.changedTouches,o=r.length;for(t=0;t<o;++t)(n=s[r[t].identifier])&&(eb(e),n("drag",e,r[t]))}function v(e){var t,n,o=e.changedTouches,i=o.length;for(r&&clearTimeout(r),r=setTimeout(function(){r=null},500),t=0;t<i;++t)(n=s[o[t].identifier])&&(ev(e),n("end",e,o[t]))}function b(e,t,n,r,o,i){var l,d,h,p=c.copy(),g=eE(i||n,t);if(null!=(h=a.call(e,new tn("beforestart",{sourceEvent:n,target:f,identifier:o,active:u,x:g[0],y:g[1],dx:0,dy:0,dispatch:p}),r)))return l=h.x-g[0]||0,d=h.y-g[1]||0,function n(i,a,c){var m,y=g;switch(i){case"start":s[o]=n,m=u++;break;case"end":delete s[o],--u;case"drag":g=eE(c||a,t),m=u}p.call(i,e,new tn(i,{sourceEvent:a,subject:h,target:f,identifier:o,active:m,x:g[0]+l,y:g[1]+d,dx:g[0]-y[0],dy:g[1]-y[1],dispatch:p}),r)}}return f.filter=function(e){return arguments.length?(o="function"==typeof e?e:tt(!!e),f):o},f.container=function(e){return arguments.length?(i="function"==typeof e?e:tt(e),f):i},f.subject=function(e){return arguments.length?(a="function"==typeof e?e:tt(e),f):a},f.touchable=function(e){return arguments.length?(l="function"==typeof e?e:tt(!!e),f):l},f.on=function(){var e=c.on.apply(c,arguments);return e===c?f:e},f.clickDistance=function(e){return arguments.length?(d=(e*=1)*e,f):Math.sqrt(d)},f})().on("start",e=>{let{domNode:t,nodeDragThreshold:n}=s.getState();0===n&&_(e),w.current=!1,f.current=x(e),p.current=t?.getBoundingClientRect()||null,g.current=t$(e.sourceEvent,p.current)}).on("drag",e=>{let t=x(e),{autoPanOnNodeDrag:n,nodeDragThreshold:r}=s.getState();if("touchmove"===e.sourceEvent.type&&e.sourceEvent.touches.length>1&&(w.current=!0),!w.current){if(!v.current&&b.current&&n&&(v.current=!0,m()),!b.current){let n=t.xSnapped-(f?.current?.x??0),o=t.ySnapped-(f?.current?.y??0);Math.sqrt(n*n+o*o)>r&&_(e)}(f.current.x!==t.xSnapped||f.current.y!==t.ySnapped)&&d.current&&b.current&&(y.current=e.sourceEvent,g.current=t$(e.sourceEvent,p.current),c(t))}}).on("end",e=>{if(b.current&&!w.current&&(u(!1),v.current=!1,b.current=!1,cancelAnimationFrame(h.current),d.current)){let{updateNodePositions:t,nodeInternals:n,onNodeDragStop:r,onSelectionDragStop:i}=s.getState(),a=o?r:rn(i);if(t(d.current,!1,!1),a){let[t,r]=n9({nodeId:o,dragItems:d.current,nodeInternals:n});a(e.sourceEvent,t,r)}}}).filter(t=>{let o=t.target;return!t.button&&(!n||!n6(o,`.${n}`,e))&&(!r||n6(o,r,e))});return l.call(t),()=>{l.on(".drag",null)}}}},[e,t,n,r,i,s,o,a,x]),c}function ro(){let e=tf();return(0,m.useCallback)(t=>{let{nodeInternals:n,nodeExtent:r,updateNodePositions:o,getNodes:i,snapToGrid:a,snapGrid:l,onError:s,nodesDraggable:c}=e.getState(),u=i().filter(e=>e.selected&&(e.draggable||c&&void 0===e.draggable)),d=a?l[0]:5,f=a?l[1]:5,h=t.isShiftPressed?4:1,p=t.x*d*h,g=t.y*f*h;o(u.map(e=>{if(e.positionAbsolute){let t={x:e.positionAbsolute.x+p,y:e.positionAbsolute.y+g};a&&(t.x=l[0]*Math.round(t.x/l[0]),t.y=l[1]*Math.round(t.y/l[1]));let{positionAbsolute:o,position:i}=n8(e,t,n,r,void 0,s);e.position=i,e.positionAbsolute=o}return e}),!0,!1)},[])}let ri={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};var ra=e=>{let t=({id:t,type:n,data:r,xPos:o,yPos:i,xPosOrigin:a,yPosOrigin:l,selected:s,onClick:c,onMouseEnter:u,onMouseMove:d,onMouseLeave:f,onContextMenu:h,onDoubleClick:p,style:g,className:b,isDraggable:w,isSelectable:x,isConnectable:_,isFocusable:S,selectNodesOnDrag:E,sourcePosition:M,targetPosition:k,hidden:N,resizeObserver:A,dragHandle:C,zIndex:z,isParent:$,noDragClassName:P,noPanClassName:I,initialized:R,disableKeyboardA11y:O,ariaLabel:T,rfId:D,hasHandleBounds:B})=>{let H=tf(),L=(0,m.useRef)(null),V=(0,m.useRef)(null),X=(0,m.useRef)(M),j=(0,m.useRef)(k),F=(0,m.useRef)(n),Y=x||w||c||u||d||f,K=ro(),q=re(t,H.getState,u),Z=re(t,H.getState,d),W=re(t,H.getState,f),U=re(t,H.getState,h),G=re(t,H.getState,p);(0,m.useEffect)(()=>()=>{V.current&&(A?.unobserve(V.current),V.current=null)},[]),(0,m.useEffect)(()=>{if(L.current&&!N){let e=L.current;R&&B&&V.current===e||(V.current&&A?.unobserve(V.current),A?.observe(e),V.current=e)}},[N,R,B]),(0,m.useEffect)(()=>{let e=F.current!==n,r=X.current!==M,o=j.current!==k;L.current&&(e||r||o)&&(e&&(F.current=n),r&&(X.current=M),o&&(j.current=k),H.getState().updateNodeDimensions([{id:t,nodeElement:L.current,forceUpdate:!0}]))},[t,n,M,k]);let Q=rr({nodeRef:L,disabled:N||!w,noDragClassName:P,handleSelector:C,nodeId:t,isSelectable:x,selectNodesOnDrag:E});return N?null:y().createElement("div",{className:(0,v.A)(["react-flow__node",`react-flow__node-${n}`,{[I]:w},b,{selected:s,selectable:x,parent:$,dragging:Q}]),ref:L,style:{zIndex:z,transform:`translate(${a}px,${l}px)`,pointerEvents:Y?"all":"none",visibility:R?"visible":"hidden",...g},"data-id":t,"data-testid":`rf__node-${t}`,onMouseEnter:q,onMouseMove:Z,onMouseLeave:W,onContextMenu:U,onClick:e=>{let{nodeDragThreshold:n}=H.getState();if(x&&(!E||!w||n>0)&&rt({id:t,store:H,nodeRef:L}),c){let n=H.getState().nodeInternals.get(t);n&&c(e,{...n})}},onDoubleClick:G,onKeyDown:S?e=>{tz(e)||!O&&(tA.includes(e.key)&&x?rt({id:t,store:H,unselect:"Escape"===e.key,nodeRef:L}):w&&s&&Object.prototype.hasOwnProperty.call(ri,e.key)&&(H.setState({ariaLiveMessage:`Moved selected node ${e.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~o}, y: ${~~i}`}),K({x:ri[e.key].x,y:ri[e.key].y,isShiftPressed:e.shiftKey})))}:void 0,tabIndex:S?0:void 0,role:S?"button":void 0,"aria-describedby":O?void 0:`${nA}-${D}`,"aria-label":T},y().createElement(tQ,{value:t},y().createElement(e,{id:t,data:r,type:n,xPos:o,yPos:i,selected:s,isConnectable:_,sourcePosition:M,targetPosition:k,dragging:Q,dragHandle:C,zIndex:z})))};return t.displayName="NodeWrapper",(0,m.memo)(t)};let rl=e=>({...t5(e.getNodes().filter(e=>e.selected),e.nodeOrigin),transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`,userSelectionActive:e.userSelectionActive});var rs=(0,m.memo)(function({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){let r=tf(),{width:o,height:i,x:a,y:l,transformString:s,userSelectionActive:c}=td(rl,k.x),u=ro(),d=(0,m.useRef)(null);if((0,m.useEffect)(()=>{n||d.current?.focus({preventScroll:!0})},[n]),rr({nodeRef:d}),c||!o||!i)return null;let f=e?t=>{e(t,r.getState().getNodes().filter(e=>e.selected))}:void 0;return y().createElement("div",{className:(0,v.A)(["react-flow__nodesselection","react-flow__container",t]),style:{transform:s}},y().createElement("div",{ref:d,className:"react-flow__nodesselection-rect",onContextMenu:f,tabIndex:n?void 0:-1,onKeyDown:n?void 0:e=>{Object.prototype.hasOwnProperty.call(ri,e.key)&&u({x:ri[e.key].x,y:ri[e.key].y,isShiftPressed:e.shiftKey})},style:{width:o,height:i,top:l,left:a}}))});let rc=e=>e.nodesSelectionActive,ru=({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:o,onPaneContextMenu:i,onPaneScroll:a,deleteKeyCode:l,onMove:s,onMoveStart:c,onMoveEnd:u,selectionKeyCode:d,selectionOnDrag:f,selectionMode:h,onSelectionStart:p,onSelectionEnd:g,multiSelectionKeyCode:v,panActivationKeyCode:b,zoomActivationKeyCode:w,elementsSelectable:x,zoomOnScroll:_,zoomOnPinch:S,panOnScroll:E,panOnScrollSpeed:M,panOnScrollMode:k,zoomOnDoubleClick:N,panOnDrag:A,defaultViewport:C,translateExtent:z,minZoom:$,maxZoom:P,preventScrolling:I,onSelectionContextMenu:R,noWheelClassName:O,noPanClassName:T,disableKeyboardA11y:D})=>{let B=td(rc),H=nI(d),L=nI(b),V=L||A,X=L||E,j=H||f&&!0!==V;return(({deleteKeyCode:e,multiSelectionKeyCode:t})=>{let n=tf(),{deleteElements:r}=nj(),o=nI(e,nF),i=nI(t);(0,m.useEffect)(()=>{if(o){let{edges:e,getNodes:t}=n.getState();r({nodes:t().filter(e=>e.selected),edges:e.filter(e=>e.selected)}),n.setState({nodesSelectionActive:!1})}},[o]),(0,m.useEffect)(()=>{n.setState({multiSelectionActive:i})},[i])})({deleteKeyCode:l,multiSelectionKeyCode:v}),y().createElement(nG,{onMove:s,onMoveStart:c,onMoveEnd:u,onPaneContextMenu:i,elementsSelectable:x,zoomOnScroll:_,zoomOnPinch:S,panOnScroll:X,panOnScrollSpeed:M,panOnScrollMode:k,zoomOnDoubleClick:N,panOnDrag:!H&&V,defaultViewport:C,translateExtent:z,minZoom:$,maxZoom:P,zoomActivationKeyCode:w,preventScrolling:I,noWheelClassName:O,noPanClassName:T},y().createElement(n4,{onSelectionStart:p,onSelectionEnd:g,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:o,onPaneContextMenu:i,onPaneScroll:a,panOnDrag:V,isSelecting:!!j,selectionMode:h},e,B&&y().createElement(rs,{onSelectionContextMenu:R,noPanClassName:T,disableKeyboardA11y:D})))};ru.displayName="FlowRenderer";var rd=(0,m.memo)(ru);function rf(e){let t={input:ra(e.input||nf),default:ra(e.default||nu),output:ra(e.output||np),group:ra(e.group||ng)},n=Object.keys(e).filter(e=>!["input","default","output","group"].includes(e)).reduce((t,n)=>(t[n]=ra(e[n]||nu),t),{});return{...t,...n}}let rh=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,updateNodeDimensions:e.updateNodeDimensions,onError:e.onError}),rp=e=>{var t;let{nodesDraggable:n,nodesConnectable:r,nodesFocusable:o,elementsSelectable:i,updateNodeDimensions:a,onError:l}=td(rh,k.x),s=(t=e.onlyRenderVisibleElements,td((0,m.useCallback)(e=>t?t3(e.nodeInternals,{x:0,y:0,width:e.width,height:e.height},e.transform,!0):e.getNodes(),[t]))),c=(0,m.useRef)(),u=(0,m.useMemo)(()=>{if("u"<typeof ResizeObserver)return null;let e=new ResizeObserver(e=>{a(e.map(e=>({id:e.target.getAttribute("data-id"),nodeElement:e.target,forceUpdate:!0})))});return c.current=e,e},[]);return(0,m.useEffect)(()=>()=>{c?.current?.disconnect()},[]),y().createElement("div",{className:"react-flow__nodes",style:nY},s.map(t=>{let a,s=t.type||"default";e.nodeTypes[s]||(l?.("003",(a=s,`Node type "${a}" not found. Using fallback type "default".`)),s="default");let c=e.nodeTypes[s]||e.nodeTypes.default,d=!!(t.draggable||n&&void 0===t.draggable),f=!!(t.selectable||i&&void 0===t.selectable),h=!!(t.connectable||r&&void 0===t.connectable),p=!!(t.focusable||o&&void 0===t.focusable),m=e.nodeExtent?tb(t.positionAbsolute,e.nodeExtent):t.positionAbsolute,v=m?.x??0,b=m?.y??0,w=(({x:e,y:t,width:n,height:r,origin:o})=>!n||!r||o[0]<0||o[1]<0||o[0]>1||o[1]>1?{x:e,y:t}:{x:e-n*o[0],y:t-r*o[1]})({x:v,y:b,width:t.width??0,height:t.height??0,origin:e.nodeOrigin});return y().createElement(c,{key:t.id,id:t.id,className:t.className,style:t.style,type:s,data:t.data,sourcePosition:t.sourcePosition||g.Bottom,targetPosition:t.targetPosition||g.Top,hidden:t.hidden,xPos:v,yPos:b,xPosOrigin:w.x,yPosOrigin:w.y,selectNodesOnDrag:e.selectNodesOnDrag,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,selected:!!t.selected,isDraggable:d,isSelectable:f,isConnectable:h,isFocusable:p,resizeObserver:u,dragHandle:t.dragHandle,zIndex:t[tN]?.z??0,isParent:!!t[tN]?.isParent,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,initialized:!!t.width&&!!t.height,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,ariaLabel:t.ariaLabel,hasHandleBounds:!!t[tN]?.handleBounds})}))};rp.displayName="NodeRenderer";var rg=(0,m.memo)(rp);let rm="react-flow__edgeupdater",ry=({position:e,centerX:t,centerY:n,radius:r=10,onMouseDown:o,onMouseEnter:i,onMouseOut:a,type:l})=>y().createElement("circle",{onMouseDown:o,onMouseEnter:i,onMouseOut:a,className:(0,v.A)([rm,`${rm}-${l}`]),cx:e===g.Left?t-r:e===g.Right?t+r:t,cy:e===g.Top?n-r:e===g.Bottom?n+r:n,r:r,stroke:"transparent",fill:"transparent"}),rv=()=>!0;var rb=e=>{let t=({id:t,className:n,type:r,data:o,onClick:i,onEdgeDoubleClick:a,selected:l,animated:s,label:c,labelStyle:u,labelShowBg:d,labelBgStyle:f,labelBgPadding:h,labelBgBorderRadius:p,style:g,source:b,target:w,sourceX:x,sourceY:_,targetX:S,targetY:E,sourcePosition:M,targetPosition:k,elementsSelectable:N,hidden:A,sourceHandleId:C,targetHandleId:z,onContextMenu:$,onMouseEnter:P,onMouseMove:I,onMouseLeave:R,reconnectRadius:O,onReconnect:T,onReconnectStart:D,onReconnectEnd:B,markerEnd:H,markerStart:L,rfId:V,ariaLabel:X,isFocusable:j,isReconnectable:F,pathOptions:Y,interactionWidth:K,disableKeyboardA11y:q})=>{let Z=(0,m.useRef)(null),[W,U]=(0,m.useState)(!1),[G,Q]=(0,m.useState)(!1),J=tf(),ee=(0,m.useMemo)(()=>`url('#${tJ(L,V)}')`,[L,V]),et=(0,m.useMemo)(()=>`url('#${tJ(H,V)}')`,[H,V]);if(A)return null;let en=tR(t,J.getState,a),er=tR(t,J.getState,$),eo=tR(t,J.getState,P),ei=tR(t,J.getState,I),ea=tR(t,J.getState,R),el=(e,n)=>{if(0!==e.button)return;let{edges:r,isValidConnection:o}=J.getState(),i=n?w:b,a=(n?z:C)||null,l=n?"target":"source",s=r.find(e=>e.id===t);Q(!0),D?.(e,s,l),no({event:e,handleId:a,nodeId:i,onConnect:e=>T?.(s,e),isTarget:n,getState:J.getState,setState:J.setState,isValidConnection:o||rv,edgeUpdaterType:l,onReconnectEnd:e=>{Q(!1),B?.(e,s,l)}})},es=()=>U(!0),ec=()=>U(!1);return y().createElement("g",{className:(0,v.A)(["react-flow__edge",`react-flow__edge-${r}`,n,{selected:l,animated:s,inactive:!N&&!i,updating:W}]),onClick:e=>{let{edges:n,addSelectedEdges:r,unselectNodesAndEdges:o,multiSelectionActive:a}=J.getState(),l=n.find(e=>e.id===t);l&&(N&&(J.setState({nodesSelectionActive:!1}),l.selected&&a?(o({nodes:[],edges:[l]}),Z.current?.blur()):r([t])),i&&i(e,l))},onDoubleClick:en,onContextMenu:er,onMouseEnter:eo,onMouseMove:ei,onMouseLeave:ea,onKeyDown:j?e=>{if(!q&&tA.includes(e.key)&&N){let{unselectNodesAndEdges:n,addSelectedEdges:r,edges:o}=J.getState();"Escape"===e.key?(Z.current?.blur(),n({edges:[o.find(e=>e.id===t)]})):r([t])}}:void 0,tabIndex:j?0:void 0,role:j?"button":"img","data-testid":`rf__edge-${t}`,"aria-label":null===X?void 0:X||`Edge from ${b} to ${w}`,"aria-describedby":j?`${nC}-${V}`:void 0,ref:Z},!G&&y().createElement(e,{id:t,source:b,target:w,selected:l,animated:s,label:c,labelStyle:u,labelShowBg:d,labelBgStyle:f,labelBgPadding:h,labelBgBorderRadius:p,data:o,style:g,sourceX:x,sourceY:_,targetX:S,targetY:E,sourcePosition:M,targetPosition:k,sourceHandleId:C,targetHandleId:z,markerStart:ee,markerEnd:et,pathOptions:Y,interactionWidth:K}),F&&y().createElement(y().Fragment,null,("source"===F||!0===F)&&y().createElement(ry,{position:M,centerX:x,centerY:_,radius:O,onMouseDown:e=>el(e,!0),onMouseEnter:es,onMouseOut:ec,type:"source"}),("target"===F||!0===F)&&y().createElement(ry,{position:k,centerX:S,centerY:E,radius:O,onMouseDown:e=>el(e,!1),onMouseEnter:es,onMouseOut:ec,type:"target"})))};return t.displayName="EdgeWrapper",(0,m.memo)(t)};function rw(e){let t={default:rb(e.default||tU),straight:rb(e.bezier||tK),step:rb(e.step||tY),smoothstep:rb(e.step||tF),simplebezier:rb(e.simplebezier||tH)},n=Object.keys(e).filter(e=>!["default","bezier"].includes(e)).reduce((t,n)=>(t[n]=rb(e[n]||tU),t),{});return{...t,...n}}function rx(e,t,n=null){let r=(n?.x||0)+t.x,o=(n?.y||0)+t.y,i=n?.width||t.width,a=n?.height||t.height;switch(e){case g.Top:return{x:r+i/2,y:o};case g.Right:return{x:r+i,y:o+a/2};case g.Bottom:return{x:r+i/2,y:o+a};case g.Left:return{x:r,y:o+a/2}}}function r_(e,t){return e?1!==e.length&&t?t&&e.find(e=>e.id===t)||null:e[0]:null}function rS(e){let t=e?.[tN]?.handleBounds||null,n=t&&e?.width&&e?.height&&void 0!==e?.positionAbsolute?.x&&void 0!==e?.positionAbsolute?.y;return[{x:e?.positionAbsolute?.x||0,y:e?.positionAbsolute?.y||0,width:e?.width||0,height:e?.height||0},t,!!n]}let rE=[{level:0,isMaxLevel:!0,edges:[]}],rM={[p.Arrow]:({color:e="none",strokeWidth:t=1})=>y().createElement("polyline",{style:{stroke:e,strokeWidth:t},strokeLinecap:"round",strokeLinejoin:"round",fill:"none",points:"-5,-4 0,0 -5,4"}),[p.ArrowClosed]:({color:e="none",strokeWidth:t=1})=>y().createElement("polyline",{style:{stroke:e,fill:e,strokeWidth:t},strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},rk=({id:e,type:t,color:n,width:r=12.5,height:o=12.5,markerUnits:i="strokeWidth",strokeWidth:a,orient:l="auto-start-reverse"})=>{let s,c=(s=tf(),(0,m.useMemo)(()=>{let e;return Object.prototype.hasOwnProperty.call(rM,t)?rM[t]:(s.getState().onError?.("009",(e=t,`Marker type "${e}" doesn't exist.`)),null)},[t]));return c?y().createElement("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${r}`,markerHeight:`${o}`,viewBox:"-10 -10 20 20",markerUnits:i,orient:l,refX:"0",refY:"0"},y().createElement(c,{color:n,strokeWidth:a})):null},rN=({defaultColor:e,rfId:t})=>{let n=td((0,m.useCallback)((({defaultColor:e,rfId:t})=>n=>{let r=[];return n.edges.reduce((n,o)=>([o.markerStart,o.markerEnd].forEach(o=>{if(o&&"object"==typeof o){let i=tJ(o,t);r.includes(i)||(n.push({id:i,color:o.color||e,...o}),r.push(i))}}),n),[]).sort((e,t)=>e.id.localeCompare(t.id))})({defaultColor:e,rfId:t}),[e,t]),(e,t)=>!(e.length!==t.length||e.some((e,n)=>e.id!==t[n].id)));return y().createElement("defs",null,n.map(e=>y().createElement(rk,{id:e.id,key:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient})))};rN.displayName="MarkerDefinitions";var rA=(0,m.memo)(rN);let rC=e=>({nodesConnectable:e.nodesConnectable,edgesFocusable:e.edgesFocusable,edgesUpdatable:e.edgesUpdatable,elementsSelectable:e.elementsSelectable,width:e.width,height:e.height,connectionMode:e.connectionMode,nodeInternals:e.nodeInternals,onError:e.onError}),rz=({defaultMarkerColor:e,onlyRenderVisibleElements:t,elevateEdgesOnSelect:n,rfId:r,edgeTypes:o,noPanClassName:i,onEdgeContextMenu:a,onEdgeMouseEnter:l,onEdgeMouseMove:s,onEdgeMouseLeave:c,onEdgeClick:d,onEdgeDoubleClick:f,onReconnect:h,onReconnectStart:p,onReconnectEnd:b,reconnectRadius:w,children:x,disableKeyboardA11y:_})=>{let{edgesFocusable:S,edgesUpdatable:E,elementsSelectable:M,width:N,height:A,connectionMode:C,nodeInternals:z,onError:$}=td(rC,k.x),P=function(e,t,n=!1){let r=-1,o=Object.entries(e.reduce((e,o)=>{let i=tk(o.zIndex),a=i?o.zIndex:0;if(n){let e=t.get(o.target),n=t.get(o.source),r=o.selected||e?.selected||n?.selected,l=Math.max(n?.[tN]?.z||0,e?.[tN]?.z||0,1e3);a=(i?o.zIndex:0)+(r?l:0)}return e[a]?e[a].push(o):e[a]=[o],r=a>r?a:r,e},{})).map(([e,t])=>{let n=+e;return{edges:t,level:n,isMaxLevel:n===r}});return 0===o.length?rE:o}(td((0,m.useCallback)(e=>t?e.edges.filter(t=>{let n=z.get(t.source),r=z.get(t.target);return n?.width&&n?.height&&r?.width&&r?.height&&function({sourcePos:e,targetPos:t,sourceWidth:n,sourceHeight:r,targetWidth:o,targetHeight:i,width:a,height:l,transform:s}){let c={x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x+n,t.x+o),y2:Math.max(e.y+r,t.y+i)};c.x===c.x2&&(c.x2+=1),c.y===c.y2&&(c.y2+=1);let u=tS({x:(0-s[0])/s[2],y:(0-s[1])/s[2],width:a/s[2],height:l/s[2]});return Math.ceil(Math.max(0,Math.min(u.x2,c.x2)-Math.max(u.x,c.x))*Math.max(0,Math.min(u.y2,c.y2)-Math.max(u.y,c.y)))>0}({sourcePos:n.positionAbsolute||{x:0,y:0},targetPos:r.positionAbsolute||{x:0,y:0},sourceWidth:n.width,sourceHeight:n.height,targetWidth:r.width,targetHeight:r.height,width:e.width,height:e.height,transform:e.transform})}):e.edges,[t,z])),z,n);return N?y().createElement(y().Fragment,null,P.map(({level:t,edges:n,isMaxLevel:m})=>y().createElement("svg",{key:t,style:{zIndex:t},width:N,height:A,className:"react-flow__edges react-flow__container"},m&&y().createElement(rA,{defaultColor:e,rfId:r}),y().createElement("g",null,n.map(e=>{let t,n,m,[x,k,N]=rS(z.get(e.source)),[A,P,I]=rS(z.get(e.target));if(!N||!I)return null;let R=e.type||"default";o[R]||($?.("011",(t=R,`Edge type "${t}" not found. Using fallback type "default".`)),R="default");let O=o[R]||o.default,T=C===u.Strict?P.target:(P.target??[]).concat(P.source??[]),D=r_(k.source,e.sourceHandle),B=r_(T,e.targetHandle),H=D?.position||g.Bottom,L=B?.position||g.Top,V=!!(e.focusable||S&&void 0===e.focusable),X=e.reconnectable||e.updatable;if(!D||!B){let t,n;return $?.("008",(t=D,n=e,`Couldn't create edge for ${!t?"source":"target"} handle id: "${!t?n.sourceHandle:n.targetHandle}", edge id: ${n.id}.`)),null}let{sourceX:j,sourceY:F,targetX:Y,targetY:K}=(n=rx(H,x,D),m=rx(L,A,B),{sourceX:n.x,sourceY:n.y,targetX:m.x,targetY:m.y});return y().createElement(O,{key:e.id,id:e.id,className:(0,v.A)([e.className,i]),type:R,data:e.data,selected:!!e.selected,animated:!!e.animated,hidden:!!e.hidden,label:e.label,labelStyle:e.labelStyle,labelShowBg:e.labelShowBg,labelBgStyle:e.labelBgStyle,labelBgPadding:e.labelBgPadding,labelBgBorderRadius:e.labelBgBorderRadius,style:e.style,source:e.source,target:e.target,sourceHandleId:e.sourceHandle,targetHandleId:e.targetHandle,markerEnd:e.markerEnd,markerStart:e.markerStart,sourceX:j,sourceY:F,targetX:Y,targetY:K,sourcePosition:H,targetPosition:L,elementsSelectable:M,onContextMenu:a,onMouseEnter:l,onMouseMove:s,onMouseLeave:c,onClick:d,onEdgeDoubleClick:f,onReconnect:h,onReconnectStart:p,onReconnectEnd:b,reconnectRadius:w,rfId:r,ariaLabel:e.ariaLabel,isFocusable:V,isReconnectable:void 0!==h&&(X||E&&void 0===X),pathOptions:"pathOptions"in e?e.pathOptions:void 0,interactionWidth:e.interactionWidth,disableKeyboardA11y:_})})))),x):null};rz.displayName="EdgeRenderer";var r$=(0,m.memo)(rz);let rP=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function rI({children:e}){let t=td(rP);return y().createElement("div",{className:"react-flow__viewport react-flow__container",style:{transform:t}},e)}let rR={[g.Left]:g.Right,[g.Right]:g.Left,[g.Top]:g.Bottom,[g.Bottom]:g.Top},rO=({nodeId:e,handleType:t,style:n,type:r=h.Bezier,CustomComponent:o,connectionStatus:i})=>{let{fromNode:a,handleId:l,toX:s,toY:c,connectionMode:d}=td((0,m.useCallback)(t=>({fromNode:t.nodeInternals.get(e),handleId:t.connectionHandleId,toX:(t.connectionPosition.x-t.transform[0])/t.transform[2],toY:(t.connectionPosition.y-t.transform[1])/t.transform[2],connectionMode:t.connectionMode}),[e]),k.x),f=a?.[tN]?.handleBounds,p=f?.[t];if(d===u.Loose&&(p=p||f?.["source"===t?"target":"source"]),!a||!p)return null;let g=l?p.find(e=>e.id===l):p[0],v=g?g.x+g.width/2:(a.width??0)/2,b=g?g.y+g.height/2:a.height??0,w=(a.positionAbsolute?.x??0)+v,x=(a.positionAbsolute?.y??0)+b,_=g?.position,S=_?rR[_]:null;if(!_||!S)return null;if(o)return y().createElement(o,{connectionLineType:r,connectionLineStyle:n,fromNode:a,fromHandle:g,fromX:w,fromY:x,toX:s,toY:c,fromPosition:_,toPosition:S,connectionStatus:i});let E="",M={sourceX:w,sourceY:x,sourcePosition:_,targetX:s,targetY:c,targetPosition:S};return r===h.Bezier?[E]=tW(M):r===h.Step?[E]=tj({...M,borderRadius:0}):r===h.SmoothStep?[E]=tj(M):r===h.SimpleBezier?[E]=tB(M):E=`M${w},${x} ${s},${c}`,y().createElement("path",{d:E,fill:"none",className:"react-flow__connection-path",style:n})};rO.displayName="ConnectionLine";let rT=e=>({nodeId:e.connectionNodeId,handleType:e.connectionHandleType,nodesConnectable:e.nodesConnectable,connectionStatus:e.connectionStatus,width:e.width,height:e.height});function rD({containerStyle:e,style:t,type:n,component:r}){let{nodeId:o,handleType:i,nodesConnectable:a,width:l,height:s,connectionStatus:c}=td(rT,k.x);return o&&i&&l&&a?y().createElement("svg",{style:e,width:l,height:s,className:"react-flow__edges react-flow__connectionline react-flow__container"},y().createElement("g",{className:(0,v.A)(["react-flow__connection",c])},y().createElement(rO,{nodeId:o,handleType:i,style:t,type:n,CustomComponent:r,connectionStatus:c}))):null}function rB(e,t){return(0,m.useRef)(null),tf(),(0,m.useMemo)(()=>t(e),[e])}let rH=({nodeTypes:e,edgeTypes:t,onMove:n,onMoveStart:r,onMoveEnd:o,onInit:i,onNodeClick:a,onEdgeClick:l,onNodeDoubleClick:s,onEdgeDoubleClick:c,onNodeMouseEnter:u,onNodeMouseMove:d,onNodeMouseLeave:f,onNodeContextMenu:h,onSelectionContextMenu:p,onSelectionStart:g,onSelectionEnd:v,connectionLineType:b,connectionLineStyle:w,connectionLineComponent:x,connectionLineContainerStyle:_,selectionKeyCode:S,selectionOnDrag:E,selectionMode:M,multiSelectionKeyCode:k,panActivationKeyCode:N,zoomActivationKeyCode:A,deleteKeyCode:C,onlyRenderVisibleElements:z,elementsSelectable:$,selectNodesOnDrag:P,defaultViewport:I,translateExtent:R,minZoom:O,maxZoom:T,preventScrolling:D,defaultMarkerColor:B,zoomOnScroll:H,zoomOnPinch:L,panOnScroll:V,panOnScrollSpeed:X,panOnScrollMode:j,zoomOnDoubleClick:F,panOnDrag:Y,onPaneClick:K,onPaneMouseEnter:q,onPaneMouseMove:Z,onPaneMouseLeave:W,onPaneScroll:U,onPaneContextMenu:G,onEdgeContextMenu:Q,onEdgeMouseEnter:J,onEdgeMouseMove:ee,onEdgeMouseLeave:et,onReconnect:en,onReconnectStart:er,onReconnectEnd:eo,reconnectRadius:ei,noDragClassName:ea,noWheelClassName:el,noPanClassName:es,elevateEdgesOnSelect:ec,disableKeyboardA11y:eu,nodeOrigin:ed,nodeExtent:ef,rfId:eh})=>{let ep,eg,em=rB(e,rf),ey=rB(t,rw);return ep=nj(),eg=(0,m.useRef)(!1),(0,m.useEffect)(()=>{!eg.current&&ep.viewportInitialized&&i&&(setTimeout(()=>i(ep),1),eg.current=!0)},[i,ep.viewportInitialized]),y().createElement(rd,{onPaneClick:K,onPaneMouseEnter:q,onPaneMouseMove:Z,onPaneMouseLeave:W,onPaneContextMenu:G,onPaneScroll:U,deleteKeyCode:C,selectionKeyCode:S,selectionOnDrag:E,selectionMode:M,onSelectionStart:g,onSelectionEnd:v,multiSelectionKeyCode:k,panActivationKeyCode:N,zoomActivationKeyCode:A,elementsSelectable:$,onMove:n,onMoveStart:r,onMoveEnd:o,zoomOnScroll:H,zoomOnPinch:L,zoomOnDoubleClick:F,panOnScroll:V,panOnScrollSpeed:X,panOnScrollMode:j,panOnDrag:Y,defaultViewport:I,translateExtent:R,minZoom:O,maxZoom:T,onSelectionContextMenu:p,preventScrolling:D,noDragClassName:ea,noWheelClassName:el,noPanClassName:es,disableKeyboardA11y:eu},y().createElement(rI,null,y().createElement(r$,{edgeTypes:ey,onEdgeClick:l,onEdgeDoubleClick:c,onlyRenderVisibleElements:z,onEdgeContextMenu:Q,onEdgeMouseEnter:J,onEdgeMouseMove:ee,onEdgeMouseLeave:et,onReconnect:en,onReconnectStart:er,onReconnectEnd:eo,reconnectRadius:ei,defaultMarkerColor:B,noPanClassName:es,elevateEdgesOnSelect:!!ec,disableKeyboardA11y:eu,rfId:eh},y().createElement(rD,{style:w,type:b,component:x,containerStyle:_})),y().createElement("div",{className:"react-flow__edgelabel-renderer"}),y().createElement(rg,{nodeTypes:em,onNodeClick:a,onNodeDoubleClick:s,onNodeMouseEnter:u,onNodeMouseMove:d,onNodeMouseLeave:f,onNodeContextMenu:h,selectNodesOnDrag:P,onlyRenderVisibleElements:z,noPanClassName:es,noDragClassName:ea,disableKeyboardA11y:eu,nodeOrigin:ed,nodeExtent:ef,rfId:eh})))};rH.displayName="GraphView";var rL=(0,m.memo)(rH);let rV=[[-1/0,-1/0],[1/0,1/0]],rX={rfId:"1",width:0,height:0,transform:[0,0,1],nodeInternals:new Map,edges:[],onNodesChange:null,onEdgesChange:null,hasDefaultNodes:!1,hasDefaultEdges:!1,d3Zoom:null,d3Selection:null,d3ZoomHandler:void 0,minZoom:.5,maxZoom:2,translateExtent:rV,nodeExtent:rV,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionNodeId:null,connectionHandleId:null,connectionHandleType:"source",connectionPosition:{x:0,y:0},connectionStatus:null,connectionMode:u.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:[0,0],nodeDragThreshold:0,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesUpdatable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,fitViewOnInit:!1,fitViewOnInitDone:!1,fitViewOnInitOptions:void 0,onSelectionChange:[],multiSelectionActive:!1,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,connectionRadius:20,onError:tC,isValidConnection:void 0},rj=({children:e})=>{let t,n,r=(0,m.useRef)(null);return r.current||(t=(e,t)=>({...rX,setNodes:n=>{let{nodeInternals:r,nodeOrigin:o,elevateNodesOnSelect:i}=t();e({nodeInternals:nD(n,r,o,i)})},getNodes:()=>Array.from(t().nodeInternals.values()),setEdges:n=>{let{defaultEdgeOptions:r={}}=t();e({edges:n.map(e=>({...r,...e}))})},setDefaultNodesAndEdges:(n,r)=>{let o=void 0!==n,i=void 0!==r;e({nodeInternals:o?nD(n,new Map,t().nodeOrigin,t().elevateNodesOnSelect):new Map,edges:i?r:[],hasDefaultNodes:o,hasDefaultEdges:i})},updateNodeDimensions:n=>{let{onNodesChange:r,nodeInternals:o,fitViewOnInit:i,fitViewOnInitDone:a,fitViewOnInitOptions:l,domNode:s,nodeOrigin:c}=t(),u=s?.querySelector(".react-flow__viewport");if(!u)return;let d=window.getComputedStyle(u),{m22:f}=new window.DOMMatrixReadOnly(d.transform),h=n.reduce((e,t)=>{let n=o.get(t.id);if(n?.hidden)o.set(n.id,{...n,[tN]:{...n[tN],handleBounds:void 0}});else if(n){let r=ty(t.nodeElement);r.width&&r.height&&(n.width!==r.width||n.height!==r.height||t.forceUpdate)&&(o.set(n.id,{...n,[tN]:{...n[tN],handleBounds:{source:n7(".source",t.nodeElement,f,c),target:n7(".target",t.nodeElement,f,c)}},...r}),e.push({id:n.id,type:"dimensions",dimensions:r}))}return e},[]);nT(o,c);let p=a||i&&!a&&nB(t,{initial:!0,...l});e({nodeInternals:new Map(o),fitViewOnInitDone:p}),h?.length>0&&r?.(h)},updateNodePositions:(e,n=!0,r=!1)=>{let{triggerNodeChanges:o}=t();o(e.map(e=>{let t={id:e.id,type:"position",dragging:r};return n&&(t.positionAbsolute=e.positionAbsolute,t.position=e.position),t}))},triggerNodeChanges:n=>{let{onNodesChange:r,nodeInternals:o,hasDefaultNodes:i,nodeOrigin:a,getNodes:l,elevateNodesOnSelect:s}=t();n?.length&&(i&&e({nodeInternals:nD(function(e,t){if(e.some(e=>"reset"===e.type))return e.filter(e=>"reset"===e.type).map(e=>e.item);let n=e.filter(e=>"add"===e.type).map(e=>e.item);return t.reduce((t,n)=>{let r=e.filter(e=>e.id===n.id);if(0===r.length)return t.push(n),t;let o={...n};for(let e of r)if(e)switch(e.type){case"select":o.selected=e.selected;break;case"position":void 0!==e.position&&(o.position=e.position),void 0!==e.positionAbsolute&&(o.positionAbsolute=e.positionAbsolute),void 0!==e.dragging&&(o.dragging=e.dragging),o.expandParent&&n0(t,o);break;case"dimensions":void 0!==e.dimensions&&(o.width=e.dimensions.width,o.height=e.dimensions.height),void 0!==e.updateStyle&&(o.style={...o.style||{},...e.dimensions}),"boolean"==typeof e.resizing&&(o.resizing=e.resizing),o.expandParent&&n0(t,o);break;case"remove":return t}return t.push(o),t},n)}(n,l()),o,a,s)}),r?.(n))},addSelectedNodes:n=>{let r,{multiSelectionActive:o,edges:i,getNodes:a}=t(),l=null;o?r=n.map(e=>n1(e,!0)):(r=n2(a(),n),l=n2(i,[])),nH({changedNodes:r,changedEdges:l,get:t,set:e})},addSelectedEdges:n=>{let r,{multiSelectionActive:o,edges:i,getNodes:a}=t(),l=null;o?r=n.map(e=>n1(e,!0)):(r=n2(i,n),l=n2(a(),[])),nH({changedNodes:l,changedEdges:r,get:t,set:e})},unselectNodesAndEdges:({nodes:n,edges:r}={})=>{let{edges:o,getNodes:i}=t();nH({changedNodes:(n||i()).map(e=>(e.selected=!1,n1(e.id,!1))),changedEdges:(r||o).map(e=>n1(e.id,!1)),get:t,set:e})},setMinZoom:n=>{let{d3Zoom:r,maxZoom:o}=t();r?.scaleExtent([n,o]),e({minZoom:n})},setMaxZoom:n=>{let{d3Zoom:r,minZoom:o}=t();r?.scaleExtent([o,n]),e({maxZoom:n})},setTranslateExtent:n=>{t().d3Zoom?.translateExtent(n),e({translateExtent:n})},resetSelectedElements:()=>{let{edges:n,getNodes:r}=t();nH({changedNodes:r().filter(e=>e.selected).map(e=>n1(e.id,!1)),changedEdges:n.filter(e=>e.selected).map(e=>n1(e.id,!1)),get:t,set:e})},setNodeExtent:n=>{let{nodeInternals:r}=t();r.forEach(e=>{e.positionAbsolute=tb(e.position,n)}),e({nodeExtent:n,nodeInternals:new Map(r)})},panBy:e=>{let{transform:n,width:r,height:o,d3Zoom:i,d3Selection:a,translateExtent:l}=t();if(!i||!a||!e.x&&!e.y)return!1;let s=e2.translate(n[0]+e.x,n[1]+e.y).scale(n[2]),c=i?.constrain()(s,[[0,0],[r,o]],l);return i.transform(a,c),n[0]!==c.x||n[1]!==c.y||n[2]!==c.k},cancelConnection:()=>e({connectionNodeId:rX.connectionNodeId,connectionHandleId:rX.connectionHandleId,connectionHandleType:rX.connectionHandleType,connectionStatus:rX.connectionStatus,connectionStartHandle:rX.connectionStartHandle,connectionEndHandle:rX.connectionEndHandle}),reset:()=>e({...rX})}),n=Object.is,r.current=t?M(t,n):M),y().createElement(tc,{value:r.current},e)};rj.displayName="ReactFlowProvider";let rF=({children:e})=>(0,m.useContext)(ts)?y().createElement(y().Fragment,null,e):y().createElement(rj,null,e);rF.displayName="ReactFlowWrapper";let rY={input:nf,default:nu,output:np,group:ng},rK={default:tU,straight:tK,step:tY,smoothstep:tF,simplebezier:tH},rq=[0,0],rZ=[15,15],rW={x:0,y:0,zoom:1},rU={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0},rG=(0,m.forwardRef)(({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,className:o,nodeTypes:i=rY,edgeTypes:a=rK,onNodeClick:l,onEdgeClick:s,onInit:c,onMove:p,onMoveStart:g,onMoveEnd:m,onConnect:b,onConnectStart:w,onConnectEnd:x,onClickConnectStart:_,onClickConnectEnd:S,onNodeMouseEnter:E,onNodeMouseMove:M,onNodeMouseLeave:k,onNodeContextMenu:N,onNodeDoubleClick:A,onNodeDragStart:C,onNodeDrag:z,onNodeDragStop:$,onNodesDelete:P,onEdgesDelete:I,onSelectionChange:R,onSelectionDragStart:O,onSelectionDrag:T,onSelectionDragStop:D,onSelectionContextMenu:B,onSelectionStart:H,onSelectionEnd:L,connectionMode:V=u.Strict,connectionLineType:X=h.Bezier,connectionLineStyle:j,connectionLineComponent:F,connectionLineContainerStyle:Y,deleteKeyCode:K="Backspace",selectionKeyCode:q="Shift",selectionOnDrag:Z=!1,selectionMode:W=f.Full,panActivationKeyCode:U="Space",multiSelectionKeyCode:G=tP()?"Meta":"Control",zoomActivationKeyCode:Q=tP()?"Meta":"Control",snapToGrid:J=!1,snapGrid:ee=rZ,onlyRenderVisibleElements:et=!1,selectNodesOnDrag:en=!0,nodesDraggable:er,nodesConnectable:eo,nodesFocusable:ei,nodeOrigin:ea=rq,edgesFocusable:el,edgesUpdatable:es,elementsSelectable:ec,defaultViewport:eu=rW,minZoom:ed=.5,maxZoom:ef=2,translateExtent:eh=rV,preventScrolling:ep=!0,nodeExtent:eg,defaultMarkerColor:em="#b1b1b7",zoomOnScroll:ey=!0,zoomOnPinch:ev=!0,panOnScroll:eb=!1,panOnScrollSpeed:ew=.5,panOnScrollMode:ex=d.Free,zoomOnDoubleClick:e_=!0,panOnDrag:eS=!0,onPaneClick:eE,onPaneMouseEnter:eM,onPaneMouseMove:ek,onPaneMouseLeave:eN,onPaneScroll:eA,onPaneContextMenu:eC,children:ez,onEdgeContextMenu:e$,onEdgeDoubleClick:eP,onEdgeMouseEnter:eI,onEdgeMouseMove:eR,onEdgeMouseLeave:eO,onEdgeUpdate:eT,onEdgeUpdateStart:eD,onEdgeUpdateEnd:eB,onReconnect:eH,onReconnectStart:eL,onReconnectEnd:eV,reconnectRadius:eX=10,edgeUpdaterRadius:ej=10,onNodesChange:eF,onEdgesChange:eY,noDragClassName:eK="nodrag",noWheelClassName:eq="nowheel",noPanClassName:eZ="nopan",fitView:eW=!1,fitViewOptions:eU,connectOnClick:eG=!0,attributionPosition:eQ,proOptions:eJ,defaultEdgeOptions:e0,elevateNodesOnSelect:e1=!0,elevateEdgesOnSelect:e2=!1,disableKeyboardA11y:e5=!1,autoPanOnConnect:e3=!0,autoPanOnNodeDrag:e4=!0,connectionRadius:e6=20,isValidConnection:e8,onError:e9,style:e7,id:te,nodeDragThreshold:tt,...tn},tr)=>{let to=te||"1";return y().createElement("div",{...tn,style:{...e7,...rU},ref:tr,className:(0,v.A)(["react-flow",o]),"data-testid":"rf__wrapper",id:te},y().createElement(rF,null,y().createElement(rL,{onInit:c,onMove:p,onMoveStart:g,onMoveEnd:m,onNodeClick:l,onEdgeClick:s,onNodeMouseEnter:E,onNodeMouseMove:M,onNodeMouseLeave:k,onNodeContextMenu:N,onNodeDoubleClick:A,nodeTypes:i,edgeTypes:a,connectionLineType:X,connectionLineStyle:j,connectionLineComponent:F,connectionLineContainerStyle:Y,selectionKeyCode:q,selectionOnDrag:Z,selectionMode:W,deleteKeyCode:K,multiSelectionKeyCode:G,panActivationKeyCode:U,zoomActivationKeyCode:Q,onlyRenderVisibleElements:et,selectNodesOnDrag:en,defaultViewport:eu,translateExtent:eh,minZoom:ed,maxZoom:ef,preventScrolling:ep,zoomOnScroll:ey,zoomOnPinch:ev,zoomOnDoubleClick:e_,panOnScroll:eb,panOnScrollSpeed:ew,panOnScrollMode:ex,panOnDrag:eS,onPaneClick:eE,onPaneMouseEnter:eM,onPaneMouseMove:ek,onPaneMouseLeave:eN,onPaneScroll:eA,onPaneContextMenu:eC,onSelectionContextMenu:B,onSelectionStart:H,onSelectionEnd:L,onEdgeContextMenu:e$,onEdgeDoubleClick:eP,onEdgeMouseEnter:eI,onEdgeMouseMove:eR,onEdgeMouseLeave:eO,onReconnect:eH??eT,onReconnectStart:eL??eD,onReconnectEnd:eV??eB,reconnectRadius:eX??ej,defaultMarkerColor:em,noDragClassName:eK,noWheelClassName:eq,noPanClassName:eZ,elevateEdgesOnSelect:e2,rfId:to,disableKeyboardA11y:e5,nodeOrigin:ea,nodeExtent:eg}),y().createElement(nM,{nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:b,onConnectStart:w,onConnectEnd:x,onClickConnectStart:_,onClickConnectEnd:S,nodesDraggable:er,nodesConnectable:eo,nodesFocusable:ei,edgesFocusable:el,edgesUpdatable:es,elementsSelectable:ec,elevateNodesOnSelect:e1,minZoom:ed,maxZoom:ef,nodeExtent:eg,onNodesChange:eF,onEdgesChange:eY,snapToGrid:J,snapGrid:ee,connectionMode:V,translateExtent:eh,connectOnClick:eG,defaultEdgeOptions:e0,fitView:eW,fitViewOptions:eU,onNodesDelete:P,onEdgesDelete:I,onNodeDragStart:C,onNodeDrag:z,onNodeDragStop:$,onSelectionDrag:T,onSelectionDragStart:O,onSelectionDragStop:D,noPanClassName:eZ,nodeOrigin:ea,rfId:to,autoPanOnConnect:e3,autoPanOnNodeDrag:e4,onError:e9,connectionRadius:e6,isValidConnection:e8,nodeDragThreshold:tt}),y().createElement(nx,{onSelectionChange:R}),ez,y().createElement(tg,{proOptions:eJ,position:eQ}),y().createElement(nP,{rfId:to,disableKeyboardA11y:e5})))});rG.displayName="ReactFlow";let rQ=e=>e.domNode?.querySelector(".react-flow__edgelabel-renderer");function rJ({children:e}){let t=td(rQ);return t?(0,tl.createPortal)(e,t):null}},5856(e,t,n){n.d(t,{A:()=>function e(t){if("string"==typeof t||"number"==typeof t)return""+t;let n="";if(Array.isArray(t))for(let r=0,o;r<t.length;r++)""!==(o=e(t[r]))&&(n+=(n&&" ")+o);else for(let e in t)t[e]&&(n+=(n&&" ")+e);return n}})},3140(e,t,n){var r=n(1032);function o(){}var i="\\s*([+-]?\\d+)\\s*",a="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",l="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",s=/^#([0-9a-f]{3,8})$/,c=RegExp(`^rgb\\(${i},${i},${i}\\)$`),u=RegExp(`^rgb\\(${l},${l},${l}\\)$`),d=RegExp(`^rgba\\(${i},${i},${i},${a}\\)$`),f=RegExp(`^rgba\\(${l},${l},${l},${a}\\)$`),h=RegExp(`^hsl\\(${a},${l},${l}\\)$`),p=RegExp(`^hsla\\(${a},${l},${l},${a}\\)$`),g={aliceblue:0xf0f8ff,antiquewhite:0xfaebd7,aqua:65535,aquamarine:8388564,azure:0xf0ffff,beige:0xf5f5dc,bisque:0xffe4c4,black:0,blanchedalmond:0xffebcd,blue:255,blueviolet:9055202,brown:0xa52a2a,burlywood:0xdeb887,cadetblue:6266528,chartreuse:8388352,chocolate:0xd2691e,coral:0xff7f50,cornflowerblue:6591981,cornsilk:0xfff8dc,crimson:0xdc143c,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:0xb8860b,darkgray:0xa9a9a9,darkgreen:25600,darkgrey:0xa9a9a9,darkkhaki:0xbdb76b,darkmagenta:9109643,darkolivegreen:5597999,darkorange:0xff8c00,darkorchid:0x9932cc,darkred:9109504,darksalmon:0xe9967a,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:0xff1493,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:0xb22222,floralwhite:0xfffaf0,forestgreen:2263842,fuchsia:0xff00ff,gainsboro:0xdcdcdc,ghostwhite:0xf8f8ff,gold:0xffd700,goldenrod:0xdaa520,gray:8421504,green:32768,greenyellow:0xadff2f,grey:8421504,honeydew:0xf0fff0,hotpink:0xff69b4,indianred:0xcd5c5c,indigo:4915330,ivory:0xfffff0,khaki:0xf0e68c,lavender:0xe6e6fa,lavenderblush:0xfff0f5,lawngreen:8190976,lemonchiffon:0xfffacd,lightblue:0xadd8e6,lightcoral:0xf08080,lightcyan:0xe0ffff,lightgoldenrodyellow:0xfafad2,lightgray:0xd3d3d3,lightgreen:9498256,lightgrey:0xd3d3d3,lightpink:0xffb6c1,lightsalmon:0xffa07a,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:0xb0c4de,lightyellow:0xffffe0,lime:65280,limegreen:3329330,linen:0xfaf0e6,magenta:0xff00ff,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:0xba55d3,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:0xc71585,midnightblue:1644912,mintcream:0xf5fffa,mistyrose:0xffe4e1,moccasin:0xffe4b5,navajowhite:0xffdead,navy:128,oldlace:0xfdf5e6,olive:8421376,olivedrab:7048739,orange:0xffa500,orangered:0xff4500,orchid:0xda70d6,palegoldenrod:0xeee8aa,palegreen:0x98fb98,paleturquoise:0xafeeee,palevioletred:0xdb7093,papayawhip:0xffefd5,peachpuff:0xffdab9,peru:0xcd853f,pink:0xffc0cb,plum:0xdda0dd,powderblue:0xb0e0e6,purple:8388736,rebeccapurple:6697881,red:0xff0000,rosybrown:0xbc8f8f,royalblue:4286945,saddlebrown:9127187,salmon:0xfa8072,sandybrown:0xf4a460,seagreen:3050327,seashell:0xfff5ee,sienna:0xa0522d,silver:0xc0c0c0,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:0xfffafa,springgreen:65407,steelblue:4620980,tan:0xd2b48c,teal:32896,thistle:0xd8bfd8,tomato:0xff6347,turquoise:4251856,violet:0xee82ee,wheat:0xf5deb3,white:0xffffff,whitesmoke:0xf5f5f5,yellow:0xffff00,yellowgreen:0x9acd32};function m(){return this.rgb().formatHex()}function y(){return this.rgb().formatRgb()}function v(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=s.exec(e))?(n=t[1].length,t=parseInt(t[1],16),6===n?b(t):3===n?new S(t>>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===n?w(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===n?w(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=c.exec(e))?new S(t[1],t[2],t[3],1):(t=u.exec(e))?new S(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=d.exec(e))?w(t[1],t[2],t[3],t[4]):(t=f.exec(e))?w(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=h.exec(e))?C(t[1],t[2]/100,t[3]/100,1):(t=p.exec(e))?C(t[1],t[2]/100,t[3]/100,t[4]):g.hasOwnProperty(e)?b(g[e]):"transparent"===e?new S(NaN,NaN,NaN,0):null}function b(e){return new S(e>>16&255,e>>8&255,255&e,1)}function w(e,t,n,r){return r<=0&&(e=t=n=NaN),new S(e,t,n,r)}function x(e){return(e instanceof o||(e=v(e)),e)?new S((e=e.rgb()).r,e.g,e.b,e.opacity):new S}function _(e,t,n,r){return 1==arguments.length?x(e):new S(e,t,n,null==r?1:r)}function S(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}function E(){return`#${A(this.r)}${A(this.g)}${A(this.b)}`}function M(){let e=k(this.opacity);return`${1===e?"rgb(":"rgba("}${N(this.r)}, ${N(this.g)}, ${N(this.b)}${1===e?")":`, ${e})`}`}function k(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function N(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function A(e){return((e=N(e))<16?"0":"")+e.toString(16)}function C(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new $(e,t,n,r)}function z(e){if(e instanceof $)return new $(e.h,e.s,e.l,e.opacity);if(e instanceof o||(e=v(e)),!e)return new $;if(e instanceof $)return e;var t=(e=e.rgb()).r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),l=NaN,s=a-i,c=(a+i)/2;return s?(l=t===a?(n-r)/s+(n<r)*6:n===a?(r-t)/s+2:(t-n)/s+4,s/=c<.5?a+i:2-a-i,l*=60):s=c>0&&c<1?0:l,new $(l,s,c,e.opacity)}function $(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}function P(e){return(e=(e||0)%360)<0?e+360:e}function I(e){return Math.max(0,Math.min(1,e||0))}function R(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}(0,r.A)(o,v,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:m,formatHex:m,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return z(this).formatHsl()},formatRgb:y,toString:y}),(0,r.A)(S,_,(0,r.X)(o,{brighter(e){return e=null==e?1.4285714285714286:Math.pow(1.4285714285714286,e),new S(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=null==e?.7:Math.pow(.7,e),new S(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new S(N(this.r),N(this.g),N(this.b),k(this.opacity))},displayable(){return -.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:E,formatHex:E,formatHex8:function(){return`#${A(this.r)}${A(this.g)}${A(this.b)}${A((isNaN(this.opacity)?1:this.opacity)*255)}`},formatRgb:M,toString:M})),(0,r.A)($,function(e,t,n,r){return 1==arguments.length?z(e):new $(e,t,n,null==r?1:r)},(0,r.X)(o,{brighter(e){return e=null==e?1.4285714285714286:Math.pow(1.4285714285714286,e),new $(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=null==e?.7:Math.pow(.7,e),new $(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,o=2*n-r;return new S(R(e>=240?e-240:e+120,o,r),R(e,o,r),R(e<120?e+240:e-120,o,r),this.opacity)},clamp(){return new $(P(this.h),I(this.s),I(this.l),k(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=k(this.opacity);return`${1===e?"hsl(":"hsla("}${P(this.h)}, ${100*I(this.s)}%, ${100*I(this.l)}%${1===e?")":`, ${e})`}`}})),n.d(t,{Ay:()=>v,Gw:()=>S,Q1:()=>o,Qh:()=>_,Uw:()=>1.4285714285714286,b:()=>x,ef:()=>.7})},1032(e,t,n){function r(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function o(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}n.d(t,{A:()=>r,X:()=>o})},2429(e,t,n){var r={value:()=>{}};function o(){for(var e,t=0,n=arguments.length,r={};t<n;++t){if(!(e=arguments[t]+"")||e in r||/[\s.]/.test(e))throw Error("illegal type: "+e);r[e]=[]}return new i(r)}function i(e){this._=e}function a(e,t,n){for(var o=0,i=e.length;o<i;++o)if(e[o].name===t){e[o]=r,e=e.slice(0,o).concat(e.slice(o+1));break}return null!=n&&e.push({name:t,value:n}),e}i.prototype=o.prototype={constructor:i,on:function(e,t){var n,r=this._,o=(e+"").trim().split(/^|\s+/).map(function(e){var t="",n=e.indexOf(".");if(n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),e&&!r.hasOwnProperty(e))throw Error("unknown type: "+e);return{type:e,name:t}}),i=-1,l=o.length;if(arguments.length<2){for(;++i<l;)if((n=(e=o[i]).type)&&(n=function(e,t){for(var n,r=0,o=e.length;r<o;++r)if((n=e[r]).name===t)return n.value}(r[n],e.name)))return n;return}if(null!=t&&"function"!=typeof t)throw Error("invalid callback: "+t);for(;++i<l;)if(n=(e=o[i]).type)r[n]=a(r[n],e.name,t);else if(null==t)for(n in r)r[n]=a(r[n],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new i(e)},call:function(e,t){if((n=arguments.length-2)>0)for(var n,r,o=Array(n),i=0;i<n;++i)o[i]=arguments[i+2];if(!this._.hasOwnProperty(e))throw Error("unknown type: "+e);for(r=this._[e],i=0,n=r.length;i<n;++i)r[i].value.apply(t,o)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error("unknown type: "+e);for(var r=this._[e],o=0,i=r.length;o<i;++o)r[o].value.apply(t,n)}},n.d(t,{},{A:o})},3155(e,t,n){n.d(t,{Ay:()=>l,uN:()=>a,lG:()=>i});let r=e=>()=>e;function o(e,t){return function(n){return e+n*t}}function i(e,t){var n=t-e;return n?o(e,n>180||n<-180?n-360*Math.round(n/360):n):r(isNaN(e)?t:e)}function a(e){return 1==(e*=1)?l:function(t,n){var o,i,a;return n-t?(o=t,i=n,o=Math.pow(o,a=e),i=Math.pow(i,a)-o,a=1/a,function(e){return Math.pow(o+e*i,a)}):r(isNaN(t)?n:t)}}function l(e,t){var n=t-e;return n?o(e,n):r(isNaN(e)?t:e)}},3508(e,t,n){n.d(t,{Ay:()=>a,Ik:()=>l});var r,o=n(3140),i=n(3155);let a=function e(t){var n=(0,i.uN)(t);function r(e,t){var r=n((e=(0,o.Qh)(e)).r,(t=(0,o.Qh)(t)).r),a=n(e.g,t.g),l=n(e.b,t.b),s=(0,i.Ay)(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=a(t),e.b=l(t),e.opacity=s(t),e+""}}return r.gamma=e,r}(1);var l=(r=function(e){var t=e.length-1;return function(n){var r,o,i,a=n<=0?n=0:n>=1?(n=1,t-1):Math.floor(n*t),l=e[a],s=e[a+1],c=a>0?e[a-1]:2*l-s,u=a<t-1?e[a+2]:2*s-l;return i=(o=(r=(n-a/t)*t)*r)*r,((1-3*r+3*o-i)*c+(4-6*o+3*i)*l+(1+3*r+3*o-3*i)*s+i*u)/6}},function(e){var t,n,i=e.length,a=Array(i),l=Array(i),s=Array(i);for(t=0;t<i;++t)n=(0,o.Qh)(e[t]),a[t]=n.r||0,l[t]=n.g||0,s[t]=n.b||0;return a=r(a),l=r(l),s=r(s),n.opacity=1,function(e){return n.r=a(e),n.g=l(e),n.b=s(e),n+""}})},9030(e,t,n){var r,o,i=0,a=0,l=0,s=0,c=0,u=0,d="object"==typeof performance&&performance.now?performance:Date,f="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function h(){return c||(f(p),c=d.now()+u)}function p(){c=0}function g(){this._call=this._time=this._next=null}function m(e,t,n){var r=new g;return r.restart(e,t,n),r}function y(){c=(s=d.now())+u,i=a=0;try{h(),++i;for(var e,t=r;t;)(e=c-t._time)>=0&&t._call.call(void 0,e),t=t._next;--i}finally{i=0,function(){for(var e,t,n=r,i=1/0;n;)n._call?(i>n._time&&(i=n._time),e=n,n=n._next):(t=n._next,n._next=null,n=e?e._next=t:r=t);o=e,b(i)}(),c=0}}function v(){var e=d.now(),t=e-s;t>1e3&&(u-=t,s=e)}function b(e){!i&&(a&&(a=clearTimeout(a)),e-c>24?(e<1/0&&(a=setTimeout(y,e-d.now()-u)),l&&(l=clearInterval(l))):(l||(s=d.now(),l=setInterval(v,1e3)),i=1,f(y)))}g.prototype=m.prototype={constructor:g,restart:function(e,t,n){if("function"!=typeof e)throw TypeError("callback is not a function");n=(null==n?h():+n)+(null==t?0:+t),this._next||o===this||(o?o._next=this:r=this,o=this),this._call=e,this._time=n,b()},stop:function(){this._call&&(this._call=null,this._time=1/0,b())}},n.d(t,{M4:()=>g,O1:()=>m,tB:()=>h})},1815(e,t,n){function r(e,t){if(Object.is(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[n,r]of e)if(!Object.is(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}n.d(t,{x:()=>r})}}]);