diff --git a/src/conductor/engine/workflow.py b/src/conductor/engine/workflow.py index f751b0ae..9b4c0d0d 100644 --- a/src/conductor/engine/workflow.py +++ b/src/conductor/engine/workflow.py @@ -1152,6 +1152,12 @@ async def _check_interrupt(self, current_agent_name: str) -> InterruptResult | N if self._interrupt_event is None or not self._interrupt_event.is_set(): return None + # Clearing here is safe because is_set() above is the only consumer + # within this method; the unwind path raised below does NOT re-check + # the event before reaching the parent engine. If a future change + # adds a between-agent recheck after the InterruptError catch, this + # clear must move to AFTER the raise to preserve interrupt visibility. + # Issue #145 (S2). self._interrupt_event.clear() # In web mode, the interrupt was already handled at the provider level diff --git a/src/conductor/web/frontend/src/components/detail/DetailPanel.tsx b/src/conductor/web/frontend/src/components/detail/DetailPanel.tsx index 0e005f3e..f35c2f71 100644 --- a/src/conductor/web/frontend/src/components/detail/DetailPanel.tsx +++ b/src/conductor/web/frontend/src/components/detail/DetailPanel.tsx @@ -6,7 +6,6 @@ import { AgentDetail } from './AgentDetail'; import { ScriptDetail } from './ScriptDetail'; import { GateDetail } from './GateDetail'; import { GroupDetail } from './GroupDetail'; -import { DialogDetail } from './DialogDetail'; import { DialogEngagementPrompt } from './DialogEngagementPrompt'; import { SubworkflowDetail } from './SubworkflowDetail'; import { cn } from '@/lib/utils'; diff --git a/src/conductor/web/frontend/src/components/detail/GroupDetail.tsx b/src/conductor/web/frontend/src/components/detail/GroupDetail.tsx index 90acb572..b51676c1 100644 --- a/src/conductor/web/frontend/src/components/detail/GroupDetail.tsx +++ b/src/conductor/web/frontend/src/components/detail/GroupDetail.tsx @@ -1,12 +1,13 @@ import { useState } from 'react'; -import { ChevronDown, ChevronRight, Loader2 } from 'lucide-react'; +import { ChevronDown, ChevronRight, Loader2, Layers } from 'lucide-react'; import { MetadataGrid } from './MetadataGrid'; import { OutputViewer } from './OutputViewer'; import { ActivityStream } from './ActivityStream'; import type { NodeData, ForEachItemData } from '@/stores/workflow-store'; import { NODE_STATUS_HEX } from '@/lib/constants'; import { formatElapsed, formatCost, formatTokens } from '@/lib/utils'; -import { useViewedGroupProgress } from '@/hooks/use-viewed-context'; +import { useViewedGroupProgress, useViewedSubworkflowContexts } from '@/hooks/use-viewed-context'; +import { useWorkflowStore } from '@/stores/workflow-store'; import type { NodeStatus } from '@/lib/constants'; interface GroupDetailProps { @@ -92,7 +93,7 @@ export function GroupDetail({ node }: GroupDetailProps) { {showItems && (
>>1,M=z[K];if(0>>1;Ka(N,Q))$a(X,N)?(z[K]=X,z[$]=Q,K=$):(z[K]=N,z[Y]=Q,K=Y);else if($ a(X,Q))z[K]=X,z[$]=Q,K=$;else break e}}return G}function a(z,G){var Q=z.sortIndex-G.sortIndex;return Q!==0?Q:z.id-G.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var u=Date,c=u.now();e.unstable_now=function(){return u.now()-c}}var d=[],h=[],m=1,p=null,x=3,v=!1,w=!1,E=!1,S=!1,_=typeof setTimeout=="function"?setTimeout:null,T=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;function A(z){for(var G=r(h);G!==null;){if(G.callback===null)l(h);else if(G.startTime<=z)l(h),G.sortIndex=G.expirationTime,n(d,G);else break;G=r(h)}}function q(z){if(E=!1,A(z),!w)if(r(d)!==null)w=!0,j||(j=!0,U());else{var G=r(h);G!==null&&F(q,G.startTime-z)}}var j=!1,L=-1,O=5,P=-1;function R(){return S?!0:!(e.unstable_now()-P z&&R());){var K=p.callback;if(typeof K=="function"){p.callback=null,x=p.priorityLevel;var M=K(p.expirationTime<=z);if(z=e.unstable_now(),typeof M=="function"){p.callback=M,A(z),G=!0;break t}p===r(d)&&l(d),A(z)}else l(d);p=r(d)}if(p!==null)G=!0;else{var I=r(h);I!==null&&F(q,I.startTime-z),G=!1}}break e}finally{p=null,x=Q,v=!1}G=void 0}}finally{G?U():j=!1}}}var U;if(typeof k=="function")U=function(){k(H)};else if(typeof MessageChannel<"u"){var ee=new MessageChannel,B=ee.port2;ee.port1.onmessage=H,U=function(){B.postMessage(null)}}else U=function(){_(H,0)};function F(z,G){L=_(function(){z(e.unstable_now())},G)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(z){z.callback=null},e.unstable_forceFrameRate=function(z){0>z||125 K?(z.sortIndex=Q,n(h,z),r(d)===null&&z===r(h)&&(E?(T(L),L=-1):E=!0,F(q,Q-K))):(z.sortIndex=M,n(d,z),w||v||(w=!0,j||(j=!0,U()))),z},e.unstable_shouldYield=R,e.unstable_wrapCallback=function(z){var G=x;return function(){var Q=x;x=G;try{return z.apply(this,arguments)}finally{x=Q}}}})(ah)),ah}var Fy;function Z2(){return Fy||(Fy=1,lh.exports=Q2()),lh.exports}var oh={exports:{}},Ft={};/** + */var Fy;function Q2(){return Fy||(Fy=1,(function(e){function n(z,G){var Q=z.length;z.push(G);e:for(;0 >>1,M=z[K];if(0>>1;Ka(N,Q))$a(X,N)?(z[K]=X,z[$]=Q,K=$):(z[K]=N,z[Y]=Q,K=Y);else if($ a(X,Q))z[K]=X,z[$]=Q,K=$;else break e}}return G}function a(z,G){var Q=z.sortIndex-G.sortIndex;return Q!==0?Q:z.id-G.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var u=Date,c=u.now();e.unstable_now=function(){return u.now()-c}}var d=[],h=[],m=1,p=null,x=3,v=!1,w=!1,E=!1,_=!1,S=typeof setTimeout=="function"?setTimeout:null,T=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;function A(z){for(var G=r(h);G!==null;){if(G.callback===null)l(h);else if(G.startTime<=z)l(h),G.sortIndex=G.expirationTime,n(d,G);else break;G=r(h)}}function q(z){if(E=!1,A(z),!w)if(r(d)!==null)w=!0,j||(j=!0,U());else{var G=r(h);G!==null&&F(q,G.startTime-z)}}var j=!1,L=-1,R=5,P=-1;function O(){return _?!0:!(e.unstable_now()-P z&&O());){var K=p.callback;if(typeof K=="function"){p.callback=null,x=p.priorityLevel;var M=K(p.expirationTime<=z);if(z=e.unstable_now(),typeof M=="function"){p.callback=M,A(z),G=!0;break t}p===r(d)&&l(d),A(z)}else l(d);p=r(d)}if(p!==null)G=!0;else{var I=r(h);I!==null&&F(q,I.startTime-z),G=!1}}break e}finally{p=null,x=Q,v=!1}G=void 0}}finally{G?U():j=!1}}}var U;if(typeof k=="function")U=function(){k(H)};else if(typeof MessageChannel<"u"){var ee=new MessageChannel,B=ee.port2;ee.port1.onmessage=H,U=function(){B.postMessage(null)}}else U=function(){S(H,0)};function F(z,G){L=S(function(){z(e.unstable_now())},G)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(z){z.callback=null},e.unstable_forceFrameRate=function(z){0>z||125 K?(z.sortIndex=Q,n(h,z),r(d)===null&&z===r(h)&&(E?(T(L),L=-1):E=!0,F(q,Q-K))):(z.sortIndex=M,n(d,z),w||v||(w=!0,j||(j=!0,U()))),z},e.unstable_shouldYield=O,e.unstable_wrapCallback=function(z){var G=x;return function(){var Q=x;x=G;try{return z.apply(this,arguments)}finally{x=Q}}}})(oh)),oh}var Yy;function Z2(){return Yy||(Yy=1,ah.exports=Q2()),ah.exports}var sh={exports:{}},Ft={};/** * @license React * react-dom.production.js * @@ -30,7 +30,7 @@ var P2=Object.defineProperty;var V2=(e,n,r)=>n in e?P2(e,n,{enumerable:!0,config * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Yy;function K2(){if(Yy)return Ft;Yy=1;var e=Zo();function n(d){var h="https://react.dev/errors/"+d;if(1 "u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(n){console.error(n)}}return e(),oh.exports=K2(),oh.exports}/** + */var Xy;function K2(){if(Xy)return Ft;Xy=1;var e=Zo();function n(d){var h="https://react.dev/errors/"+d;if(1 "u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(n){console.error(n)}}return e(),sh.exports=K2(),sh.exports}/** * @license React * react-dom-client.production.js * @@ -38,20 +38,20 @@ var P2=Object.defineProperty;var V2=(e,n,r)=>n in e?P2(e,n,{enumerable:!0,config * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Qy;function J2(){if(Qy)return mo;Qy=1;var e=Z2(),n=Zo(),r=cw();function l(t){var i="https://react.dev/errors/"+t;if(1 M||(t.current=K[M],K[M]=null,M--)}function N(t,i){M++,K[M]=t.current,t.current=i}var $=I(null),X=I(null),J=I(null),ne=I(null);function re(t,i){switch(N(J,i),N(X,t),N($,null),i.nodeType){case 9:case 11:t=(t=i.documentElement)&&(t=t.namespaceURI)?cy(t):0;break;default:if(t=i.tagName,i=i.namespaceURI)i=cy(i),t=fy(i,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}Y($),N($,t)}function se(){Y($),Y(X),Y(J)}function xe(t){t.memoizedState!==null&&N(ne,t);var i=$.current,s=fy(i,t.type);i!==s&&(N(X,t),N($,s))}function be(t){X.current===t&&(Y($),Y(X)),ne.current===t&&(Y(ne),uo._currentValue=Q)}var ye,pe;function _e(t){if(ye===void 0)try{throw Error()}catch(s){var i=s.stack.trim().match(/\n( *(at )?)/);ye=i&&i[1]||"",pe=-1 M||(t.current=K[M],K[M]=null,M--)}function N(t,i){M++,K[M]=t.current,t.current=i}var $=I(null),X=I(null),J=I(null),ne=I(null);function re(t,i){switch(N(J,i),N(X,t),N($,null),i.nodeType){case 9:case 11:t=(t=i.documentElement)&&(t=t.namespaceURI)?fy(t):0;break;default:if(t=i.tagName,i=i.namespaceURI)i=fy(i),t=dy(i,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}Y($),N($,t)}function se(){Y($),Y(X),Y(J)}function xe(t){t.memoizedState!==null&&N(ne,t);var i=$.current,s=dy(i,t.type);i!==s&&(N(X,t),N($,s))}function be(t){X.current===t&&(Y($),Y(X)),ne.current===t&&(Y(ne),uo._currentValue=Q)}var ye,pe;function _e(t){if(ye===void 0)try{throw Error()}catch(s){var i=s.stack.trim().match(/\n( *(at )?)/);ye=i&&i[1]||"",pe=-1 )":-1 g||Z[f]!==le[g]){var ce=` `+Z[f].replace(" at new "," at ");return t.displayName&&ce.includes(" ")&&(ce=ce.replace(" ",t.displayName)),ce}while(1<=f&&0<=g);break}}}finally{ze=!1,Error.prepareStackTrace=s}return(s=t?t.displayName||t.name:"")?_e(s):""}function ut(t,i){switch(t.tag){case 26:case 27:case 5:return _e(t.type);case 16:return _e("Lazy");case 13:return t.child!==i&&i!==null?_e("Suspense Fallback"):_e("Suspense");case 19:return _e("SuspenseList");case 0:case 15:return Te(t.type,!1);case 11:return Te(t.type.render,!1);case 1:return Te(t.type,!0);case 31:return _e("Activity");default:return""}}function nt(t){try{var i="",s=null;do i+=ut(t,s),s=t,t=t.return;while(t);return i}catch(f){return` Error generating stack: `+f.message+` -`+f.stack}}var zt=Object.prototype.hasOwnProperty,Vt=e.unstable_scheduleCallback,Ht=e.unstable_cancelCallback,kn=e.unstable_shouldYield,Rn=e.unstable_requestPaint,Mt=e.unstable_now,Hr=e.unstable_getCurrentPriorityLevel,ue=e.unstable_ImmediatePriority,ge=e.unstable_UserBlockingPriority,Ne=e.unstable_NormalPriority,Oe=e.unstable_LowPriority,Xe=e.unstable_IdlePriority,Qt=e.log,On=e.unstable_setDisableYieldValue,Bt=null,vt=null;function $t(t){if(typeof Qt=="function"&&On(t),vt&&typeof vt.setStrictMode=="function")try{vt.setStrictMode(Bt,t)}catch{}}var We=Math.clz32?Math.clz32:Vc,Zn=Math.log,fn=Math.LN2;function Vc(t){return t>>>=0,t===0?32:31-(Zn(t)/fn|0)|0}var ul=256,cl=262144,fl=4194304;function sr(t){var i=t&42;if(i!==0)return i;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function dl(t,i,s){var f=t.pendingLanes;if(f===0)return 0;var g=0,y=t.suspendedLanes,C=t.pingedLanes;t=t.warmLanes;var D=f&134217727;return D!==0?(f=D&~y,f!==0?g=sr(f):(C&=D,C!==0?g=sr(C):s||(s=D&~t,s!==0&&(g=sr(s))))):(D=f&~y,D!==0?g=sr(D):C!==0?g=sr(C):s||(s=f&~t,s!==0&&(g=sr(s)))),g===0?0:i!==0&&i!==g&&(i&y)===0&&(y=g&-g,s=i&-i,y>=s||y===32&&(s&4194048)!==0)?i:g}function bi(t,i){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&i)===0}function $c(t,i){switch(t){case 1:case 2:case 4:case 8:case 64:return i+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return i+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function ss(){var t=fl;return fl<<=1,(fl&62914560)===0&&(fl=4194304),t}function ba(t){for(var i=[],s=0;31>s;s++)i.push(t);return i}function wi(t,i){t.pendingLanes|=i,i!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Gc(t,i,s,f,g,y){var C=t.pendingLanes;t.pendingLanes=s,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=s,t.entangledLanes&=s,t.errorRecoveryDisabledLanes&=s,t.shellSuspendCounter=0;var D=t.entanglements,Z=t.expirationTimes,le=t.hiddenUpdates;for(s=C&~s;0 "u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Zc=/[\n"\\]/g;function en(t){return t.replace(Zc,function(i){return"\\"+i.charCodeAt(0).toString(16)+" "})}function ki(t,i,s,f,g,y,C,D){t.name="",C!=null&&typeof C!="function"&&typeof C!="symbol"&&typeof C!="boolean"?t.type=C:t.removeAttribute("type"),i!=null?C==="number"?(i===0&&t.value===""||t.value!=i)&&(t.value=""+Wt(i)):t.value!==""+Wt(i)&&(t.value=""+Wt(i)):C!=="submit"&&C!=="reset"||t.removeAttribute("value"),i!=null?Ea(t,C,Wt(i)):s!=null?Ea(t,C,Wt(s)):f!=null&&t.removeAttribute("value"),g==null&&y!=null&&(t.defaultChecked=!!y),g!=null&&(t.checked=g&&typeof g!="function"&&typeof g!="symbol"),D!=null&&typeof D!="function"&&typeof D!="symbol"&&typeof D!="boolean"?t.name=""+Wt(D):t.removeAttribute("name")}function ws(t,i,s,f,g,y,C,D){if(y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"&&(t.type=y),i!=null||s!=null){if(!(y!=="submit"&&y!=="reset"||i!=null)){Vr(t);return}s=s!=null?""+Wt(s):"",i=i!=null?""+Wt(i):s,D||i===t.value||(t.value=i),t.defaultValue=i}f=f??g,f=typeof f!="function"&&typeof f!="symbol"&&!!f,t.checked=D?t.checked:!!f,t.defaultChecked=!!f,C!=null&&typeof C!="function"&&typeof C!="symbol"&&typeof C!="boolean"&&(t.name=C),Vr(t)}function Ea(t,i,s){i==="number"&&_i(t.ownerDocument)===t||t.defaultValue===""+s||(t.defaultValue=""+s)}function fr(t,i,s,f){if(t=t.options,i){i={};for(var g=0;g"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),tf=!1;if(hr)try{var Ca={};Object.defineProperty(Ca,"passive",{get:function(){tf=!0}}),window.addEventListener("test",Ca,Ca),window.removeEventListener("test",Ca,Ca)}catch{tf=!1}var $r=null,nf=null,_s=null;function fg(){if(_s)return _s;var t,i=nf,s=i.length,f,g="value"in $r?$r.value:$r.textContent,y=g.length;for(t=0;t =ja),xg=" ",yg=!1;function vg(t,i){switch(t){case"keyup":return cE.indexOf(i.keyCode)!==-1;case"keydown":return i.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function bg(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var vl=!1;function dE(t,i){switch(t){case"compositionend":return bg(i);case"keypress":return i.which!==32?null:(yg=!0,xg);case"textInput":return t=i.data,t===xg&&yg?null:t;default:return null}}function hE(t,i){if(vl)return t==="compositionend"||!sf&&vg(t,i)?(t=fg(),_s=nf=$r=null,vl=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(i.ctrlKey||i.altKey||i.metaKey)||i.ctrlKey&&i.altKey){if(i.char&&1=i)return{node:s,offset:i-t};t=f}e:{for(;s;){if(s.nextSibling){s=s.nextSibling;break e}s=s.parentNode}s=void 0}s=Tg(s)}}function jg(t,i){return t&&i?t===i?!0:t&&t.nodeType===3?!1:i&&i.nodeType===3?jg(t,i.parentNode):"contains"in t?t.contains(i):t.compareDocumentPosition?!!(t.compareDocumentPosition(i)&16):!1:!1}function zg(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var i=_i(t.document);i instanceof t.HTMLIFrameElement;){try{var s=typeof i.contentWindow.location.href=="string"}catch{s=!1}if(s)t=i.contentWindow;else break;i=_i(t.document)}return i}function ff(t){var i=t&&t.nodeName&&t.nodeName.toLowerCase();return i&&(i==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||i==="textarea"||t.contentEditable==="true")}var wE=hr&&"documentMode"in document&&11>=document.documentMode,bl=null,df=null,Ra=null,hf=!1;function Mg(t,i,s){var f=s.window===s?s.document:s.nodeType===9?s:s.ownerDocument;hf||bl==null||bl!==_i(f)||(f=bl,"selectionStart"in f&&ff(f)?f={start:f.selectionStart,end:f.selectionEnd}:(f=(f.ownerDocument&&f.ownerDocument.defaultView||window).getSelection(),f={anchorNode:f.anchorNode,anchorOffset:f.anchorOffset,focusNode:f.focusNode,focusOffset:f.focusOffset}),Ra&&Da(Ra,f)||(Ra=f,f=gu(df,"onSelect"),0 >=C,g-=C,Jn=1<<32-We(i)+g|s< Me?(Pe=Se,Se=null):Pe=Se.sibling;var Ke=ae(te,Se,ie[Me],de);if(Ke===null){Se===null&&(Se=Pe);break}t&&Se&&Ke.alternate===null&&i(te,Se),W=y(Ke,W,Me),Ze===null?ke=Ke:Ze.sibling=Ke,Ze=Ke,Se=Pe}if(Me===ie.length)return s(te,Se),$e&&mr(te,Me),ke;if(Se===null){for(;Me Me?(Pe=Se,Se=null):Pe=Se.sibling;var di=ae(te,Se,Ke.value,de);if(di===null){Se===null&&(Se=Pe);break}t&&Se&&di.alternate===null&&i(te,Se),W=y(di,W,Me),Ze===null?ke=di:Ze.sibling=di,Ze=di,Se=Pe}if(Ke.done)return s(te,Se),$e&&mr(te,Me),ke;if(Se===null){for(;!Ke.done;Me++,Ke=ie.next())Ke=he(te,Ke.value,de),Ke!==null&&(W=y(Ke,W,Me),Ze===null?ke=Ke:Ze.sibling=Ke,Ze=Ke);return $e&&mr(te,Me),ke}for(Se=f(Se);!Ke.done;Me++,Ke=ie.next())Ke=oe(Se,te,Me,Ke.value,de),Ke!==null&&(t&&Ke.alternate!==null&&Se.delete(Ke.key===null?Me:Ke.key),W=y(Ke,W,Me),Ze===null?ke=Ke:Ze.sibling=Ke,Ze=Ke);return t&&Se.forEach(function(U2){return i(te,U2)}),$e&&mr(te,Me),ke}function lt(te,W,ie,de){if(typeof ie=="object"&&ie!==null&&ie.type===E&&ie.key===null&&(ie=ie.props.children),typeof ie=="object"&&ie!==null){switch(ie.$$typeof){case v:e:{for(var ke=ie.key;W!==null;){if(W.key===ke){if(ke=ie.type,ke===E){if(W.tag===7){s(te,W.sibling),de=g(W,ie.props.children),de.return=te,te=de;break e}}else if(W.elementType===ke||typeof ke=="object"&&ke!==null&&ke.$$typeof===O&&Ri(ke)===W.type){s(te,W.sibling),de=g(W,ie.props),qa(de,ie),de.return=te,te=de;break e}s(te,W);break}else i(te,W);W=W.sibling}ie.type===E?(de=Ai(ie.props.children,te.mode,de,ie.key),de.return=te,te=de):(de=Ds(ie.type,ie.key,ie.props,null,te.mode,de),qa(de,ie),de.return=te,te=de)}return C(te);case w:e:{for(ke=ie.key;W!==null;){if(W.key===ke)if(W.tag===4&&W.stateNode.containerInfo===ie.containerInfo&&W.stateNode.implementation===ie.implementation){s(te,W.sibling),de=g(W,ie.children||[]),de.return=te,te=de;break e}else{s(te,W);break}else i(te,W);W=W.sibling}de=bf(ie,te.mode,de),de.return=te,te=de}return C(te);case O:return ie=Ri(ie),lt(te,W,ie,de)}if(F(ie))return we(te,W,ie,de);if(U(ie)){if(ke=U(ie),typeof ke!="function")throw Error(l(150));return ie=ke.call(ie),Ce(te,W,ie,de)}if(typeof ie.then=="function")return lt(te,W,qs(ie),de);if(ie.$$typeof===k)return lt(te,W,Ls(te,ie),de);Us(te,ie)}return typeof ie=="string"&&ie!==""||typeof ie=="number"||typeof ie=="bigint"?(ie=""+ie,W!==null&&W.tag===6?(s(te,W.sibling),de=g(W,ie),de.return=te,te=de):(s(te,W),de=vf(ie,te.mode,de),de.return=te,te=de),C(te)):s(te,W)}return function(te,W,ie,de){try{Ia=0;var ke=lt(te,W,ie,de);return zl=null,ke}catch(Se){if(Se===jl||Se===Bs)throw Se;var Ze=hn(29,Se,null,te.mode);return Ze.lanes=de,Ze.return=te,Ze}finally{}}}var Li=t0(!0),n0=t0(!1),Qr=!1;function Mf(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Df(t,i){t=t.updateQueue,i.updateQueue===t&&(i.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function Zr(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function Kr(t,i,s){var f=t.updateQueue;if(f===null)return null;if(f=f.shared,(Je&2)!==0){var g=f.pending;return g===null?i.next=i:(i.next=g.next,g.next=i),f.pending=i,i=Ms(t),Ig(t,null,s),i}return zs(t,f,i,s),Ms(t)}function Ua(t,i,s){if(i=i.updateQueue,i!==null&&(i=i.shared,(s&4194048)!==0)){var f=i.lanes;f&=t.pendingLanes,s|=f,i.lanes=s,cs(t,s)}}function Rf(t,i){var s=t.updateQueue,f=t.alternate;if(f!==null&&(f=f.updateQueue,s===f)){var g=null,y=null;if(s=s.firstBaseUpdate,s!==null){do{var C={lane:s.lane,tag:s.tag,payload:s.payload,callback:null,next:null};y===null?g=y=C:y=y.next=C,s=s.next}while(s!==null);y===null?g=y=i:y=y.next=i}else g=y=i;s={baseState:f.baseState,firstBaseUpdate:g,lastBaseUpdate:y,shared:f.shared,callbacks:f.callbacks},t.updateQueue=s;return}t=s.lastBaseUpdate,t===null?s.firstBaseUpdate=i:t.next=i,s.lastBaseUpdate=i}var Of=!1;function Pa(){if(Of){var t=Al;if(t!==null)throw t}}function Va(t,i,s,f){Of=!1;var g=t.updateQueue;Qr=!1;var y=g.firstBaseUpdate,C=g.lastBaseUpdate,D=g.shared.pending;if(D!==null){g.shared.pending=null;var Z=D,le=Z.next;Z.next=null,C===null?y=le:C.next=le,C=Z;var ce=t.alternate;ce!==null&&(ce=ce.updateQueue,D=ce.lastBaseUpdate,D!==C&&(D===null?ce.firstBaseUpdate=le:D.next=le,ce.lastBaseUpdate=Z))}if(y!==null){var he=g.baseState;C=0,ce=le=Z=null,D=y;do{var ae=D.lane&-536870913,oe=ae!==D.lane;if(oe?(Ue&ae)===ae:(f&ae)===ae){ae!==0&&ae===Tl&&(Of=!0),ce!==null&&(ce=ce.next={lane:0,tag:D.tag,payload:D.payload,callback:null,next:null});e:{var we=t,Ce=D;ae=i;var lt=s;switch(Ce.tag){case 1:if(we=Ce.payload,typeof we=="function"){he=we.call(lt,he,ae);break e}he=we;break e;case 3:we.flags=we.flags&-65537|128;case 0:if(we=Ce.payload,ae=typeof we=="function"?we.call(lt,he,ae):we,ae==null)break e;he=p({},he,ae);break e;case 2:Qr=!0}}ae=D.callback,ae!==null&&(t.flags|=64,oe&&(t.flags|=8192),oe=g.callbacks,oe===null?g.callbacks=[ae]:oe.push(ae))}else oe={lane:ae,tag:D.tag,payload:D.payload,callback:D.callback,next:null},ce===null?(le=ce=oe,Z=he):ce=ce.next=oe,C|=ae;if(D=D.next,D===null){if(D=g.shared.pending,D===null)break;oe=D,D=oe.next,oe.next=null,g.lastBaseUpdate=oe,g.shared.pending=null}}while(!0);ce===null&&(Z=he),g.baseState=Z,g.firstBaseUpdate=le,g.lastBaseUpdate=ce,y===null&&(g.shared.lanes=0),ni|=C,t.lanes=C,t.memoizedState=he}}function r0(t,i){if(typeof t!="function")throw Error(l(191,t));t.call(i)}function i0(t,i){var s=t.callbacks;if(s!==null)for(t.callbacks=null,t=0;t y?y:8;var C=z.T,D={};z.T=D,ed(t,!1,i,s);try{var Z=g(),le=z.S;if(le!==null&&le(D,Z),Z!==null&&typeof Z=="object"&&typeof Z.then=="function"){var ce=jE(Z,f);Fa(t,i,ce,yn(t))}else Fa(t,i,f,yn(t))}catch(he){Fa(t,i,{then:function(){},status:"rejected",reason:he},yn())}finally{G.p=y,C!==null&&D.types!==null&&(C.types=D.types),z.T=C}}function LE(){}function Jf(t,i,s,f){if(t.tag!==5)throw Error(l(476));var g=L0(t).queue;O0(t,g,i,Q,s===null?LE:function(){return H0(t),s(f)})}function L0(t){var i=t.memoizedState;if(i!==null)return i;i={memoizedState:Q,baseState:Q,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:vr,lastRenderedState:Q},next:null};var s={};return i.next={memoizedState:s,baseState:s,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:vr,lastRenderedState:s},next:null},t.memoizedState=i,t=t.alternate,t!==null&&(t.memoizedState=i),i}function H0(t){var i=L0(t);i.next===null&&(i=t.alternate.memoizedState),Fa(t,i.next.queue,{},yn())}function Wf(){return qt(uo)}function B0(){return wt().memoizedState}function I0(){return wt().memoizedState}function HE(t){for(var i=t.return;i!==null;){switch(i.tag){case 24:case 3:var s=yn();t=Zr(s);var f=Kr(i,t,s);f!==null&&(on(f,i,s),Ua(f,i,s)),i={cache:Tf()},t.payload=i;return}i=i.return}}function BE(t,i,s){var f=yn();s={lane:f,revertLane:0,gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null},Ks(t)?U0(i,s):(s=xf(t,i,s,f),s!==null&&(on(s,t,f),P0(s,i,f)))}function q0(t,i,s){var f=yn();Fa(t,i,s,f)}function Fa(t,i,s,f){var g={lane:f,revertLane:0,gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null};if(Ks(t))U0(i,g);else{var y=t.alternate;if(t.lanes===0&&(y===null||y.lanes===0)&&(y=i.lastRenderedReducer,y!==null))try{var C=i.lastRenderedState,D=y(C,s);if(g.hasEagerState=!0,g.eagerState=D,dn(D,C))return zs(t,i,g,0),at===null&&js(),!1}catch{}finally{}if(s=xf(t,i,g,f),s!==null)return on(s,t,f),P0(s,i,f),!0}return!1}function ed(t,i,s,f){if(f={lane:2,revertLane:Md(),gesture:null,action:f,hasEagerState:!1,eagerState:null,next:null},Ks(t)){if(i)throw Error(l(479))}else i=xf(t,s,f,2),i!==null&&on(i,t,2)}function Ks(t){var i=t.alternate;return t===je||i!==null&&i===je}function U0(t,i){Dl=$s=!0;var s=t.pending;s===null?i.next=i:(i.next=s.next,s.next=i),t.pending=i}function P0(t,i,s){if((s&4194048)!==0){var f=i.lanes;f&=t.pendingLanes,s|=f,i.lanes=s,cs(t,s)}}var Ya={readContext:qt,use:Ys,useCallback:gt,useContext:gt,useEffect:gt,useImperativeHandle:gt,useLayoutEffect:gt,useInsertionEffect:gt,useMemo:gt,useReducer:gt,useRef:gt,useState:gt,useDebugValue:gt,useDeferredValue:gt,useTransition:gt,useSyncExternalStore:gt,useId:gt,useHostTransitionStatus:gt,useFormState:gt,useActionState:gt,useOptimistic:gt,useMemoCache:gt,useCacheRefresh:gt};Ya.useEffectEvent=gt;var V0={readContext:qt,use:Ys,useCallback:function(t,i){return Zt().memoizedState=[t,i===void 0?null:i],t},useContext:qt,useEffect:N0,useImperativeHandle:function(t,i,s){s=s!=null?s.concat([t]):null,Qs(4194308,4,j0.bind(null,i,t),s)},useLayoutEffect:function(t,i){return Qs(4194308,4,t,i)},useInsertionEffect:function(t,i){Qs(4,2,t,i)},useMemo:function(t,i){var s=Zt();i=i===void 0?null:i;var f=t();if(Hi){$t(!0);try{t()}finally{$t(!1)}}return s.memoizedState=[f,i],f},useReducer:function(t,i,s){var f=Zt();if(s!==void 0){var g=s(i);if(Hi){$t(!0);try{s(i)}finally{$t(!1)}}}else g=i;return f.memoizedState=f.baseState=g,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:g},f.queue=t,t=t.dispatch=BE.bind(null,je,t),[f.memoizedState,t]},useRef:function(t){var i=Zt();return t={current:t},i.memoizedState=t},useState:function(t){t=Yf(t);var i=t.queue,s=q0.bind(null,je,i);return i.dispatch=s,[t.memoizedState,s]},useDebugValue:Zf,useDeferredValue:function(t,i){var s=Zt();return Kf(s,t,i)},useTransition:function(){var t=Yf(!1);return t=O0.bind(null,je,t.queue,!0,!1),Zt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,i,s){var f=je,g=Zt();if($e){if(s===void 0)throw Error(l(407));s=s()}else{if(s=i(),at===null)throw Error(l(349));(Ue&127)!==0||c0(f,i,s)}g.memoizedState=s;var y={value:s,getSnapshot:i};return g.queue=y,N0(d0.bind(null,f,y,t),[t]),f.flags|=2048,Ol(9,{destroy:void 0},f0.bind(null,f,y,s,i),null),s},useId:function(){var t=Zt(),i=at.identifierPrefix;if($e){var s=Wn,f=Jn;s=(f&~(1<<32-We(f)-1)).toString(32)+s,i="_"+i+"R_"+s,s=Gs++,0 <\/script>",y=y.removeChild(y.firstChild);break;case"select":y=typeof f.is=="string"?C.createElement("select",{is:f.is}):C.createElement("select"),f.multiple?y.multiple=!0:f.size&&(y.size=f.size);break;default:y=typeof f.is=="string"?C.createElement(g,{is:f.is}):C.createElement(g)}}y[Dt]=i,y[Gt]=f;e:for(C=i.child;C!==null;){if(C.tag===5||C.tag===6)y.appendChild(C.stateNode);else if(C.tag!==4&&C.tag!==27&&C.child!==null){C.child.return=C,C=C.child;continue}if(C===i)break e;for(;C.sibling===null;){if(C.return===null||C.return===i)break e;C=C.return}C.sibling.return=C.return,C=C.sibling}i.stateNode=y;e:switch(Pt(y,g,f),g){case"button":case"input":case"select":case"textarea":f=!!f.autoFocus;break e;case"img":f=!0;break e;default:f=!1}f&&wr(i)}}return ft(i),pd(i,i.type,t===null?null:t.memoizedProps,i.pendingProps,s),null;case 6:if(t&&i.stateNode!=null)t.memoizedProps!==f&&wr(i);else{if(typeof f!="string"&&i.stateNode===null)throw Error(l(166));if(t=J.current,Nl(i)){if(t=i.stateNode,s=i.memoizedProps,f=null,g=It,g!==null)switch(g.tag){case 27:case 5:f=g.memoizedProps}t[Dt]=i,t=!!(t.nodeValue===s||f!==null&&f.suppressHydrationWarning===!0||sy(t.nodeValue,s)),t||Yr(i,!0)}else t=xu(t).createTextNode(f),t[Dt]=i,i.stateNode=t}return ft(i),null;case 31:if(s=i.memoizedState,t===null||t.memoizedState!==null){if(f=Nl(i),s!==null){if(t===null){if(!f)throw Error(l(318));if(t=i.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(l(557));t[Dt]=i}else ji(),(i.flags&128)===0&&(i.memoizedState=null),i.flags|=4;ft(i),t=!1}else s=kf(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=s),t=!0;if(!t)return i.flags&256?(mn(i),i):(mn(i),null);if((i.flags&128)!==0)throw Error(l(558))}return ft(i),null;case 13:if(f=i.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(g=Nl(i),f!==null&&f.dehydrated!==null){if(t===null){if(!g)throw Error(l(318));if(g=i.memoizedState,g=g!==null?g.dehydrated:null,!g)throw Error(l(317));g[Dt]=i}else ji(),(i.flags&128)===0&&(i.memoizedState=null),i.flags|=4;ft(i),g=!1}else g=kf(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=g),g=!0;if(!g)return i.flags&256?(mn(i),i):(mn(i),null)}return mn(i),(i.flags&128)!==0?(i.lanes=s,i):(s=f!==null,t=t!==null&&t.memoizedState!==null,s&&(f=i.child,g=null,f.alternate!==null&&f.alternate.memoizedState!==null&&f.alternate.memoizedState.cachePool!==null&&(g=f.alternate.memoizedState.cachePool.pool),y=null,f.memoizedState!==null&&f.memoizedState.cachePool!==null&&(y=f.memoizedState.cachePool.pool),y!==g&&(f.flags|=2048)),s!==t&&s&&(i.child.flags|=8192),nu(i,i.updateQueue),ft(i),null);case 4:return se(),t===null&&Ld(i.stateNode.containerInfo),ft(i),null;case 10:return xr(i.type),ft(i),null;case 19:if(Y(bt),f=i.memoizedState,f===null)return ft(i),null;if(g=(i.flags&128)!==0,y=f.rendering,y===null)if(g)Qa(f,!1);else{if(xt!==0||t!==null&&(t.flags&128)!==0)for(t=i.child;t!==null;){if(y=Vs(t),y!==null){for(i.flags|=128,Qa(f,!1),t=y.updateQueue,i.updateQueue=t,nu(i,t),i.subtreeFlags=0,t=s,s=i.child;s!==null;)qg(s,t),s=s.sibling;return N(bt,bt.current&1|2),$e&&mr(i,f.treeForkCount),i.child}t=t.sibling}f.tail!==null&&Mt()>ou&&(i.flags|=128,g=!0,Qa(f,!1),i.lanes=4194304)}else{if(!g)if(t=Vs(y),t!==null){if(i.flags|=128,g=!0,t=t.updateQueue,i.updateQueue=t,nu(i,t),Qa(f,!0),f.tail===null&&f.tailMode==="hidden"&&!y.alternate&&!$e)return ft(i),null}else 2*Mt()-f.renderingStartTime>ou&&s!==536870912&&(i.flags|=128,g=!0,Qa(f,!1),i.lanes=4194304);f.isBackwards?(y.sibling=i.child,i.child=y):(t=f.last,t!==null?t.sibling=y:i.child=y,f.last=y)}return f.tail!==null?(t=f.tail,f.rendering=t,f.tail=t.sibling,f.renderingStartTime=Mt(),t.sibling=null,s=bt.current,N(bt,g?s&1|2:s&1),$e&&mr(i,f.treeForkCount),t):(ft(i),null);case 22:case 23:return mn(i),Hf(),f=i.memoizedState!==null,t!==null?t.memoizedState!==null!==f&&(i.flags|=8192):f&&(i.flags|=8192),f?(s&536870912)!==0&&(i.flags&128)===0&&(ft(i),i.subtreeFlags&6&&(i.flags|=8192)):ft(i),s=i.updateQueue,s!==null&&nu(i,s.retryQueue),s=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(s=t.memoizedState.cachePool.pool),f=null,i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(f=i.memoizedState.cachePool.pool),f!==s&&(i.flags|=2048),t!==null&&Y(Di),null;case 24:return s=null,t!==null&&(s=t.memoizedState.cache),i.memoizedState.cache!==s&&(i.flags|=2048),xr(_t),ft(i),null;case 25:return null;case 30:return null}throw Error(l(156,i.tag))}function VE(t,i){switch(Sf(i),i.tag){case 1:return t=i.flags,t&65536?(i.flags=t&-65537|128,i):null;case 3:return xr(_t),se(),t=i.flags,(t&65536)!==0&&(t&128)===0?(i.flags=t&-65537|128,i):null;case 26:case 27:case 5:return be(i),null;case 31:if(i.memoizedState!==null){if(mn(i),i.alternate===null)throw Error(l(340));ji()}return t=i.flags,t&65536?(i.flags=t&-65537|128,i):null;case 13:if(mn(i),t=i.memoizedState,t!==null&&t.dehydrated!==null){if(i.alternate===null)throw Error(l(340));ji()}return t=i.flags,t&65536?(i.flags=t&-65537|128,i):null;case 19:return Y(bt),null;case 4:return se(),null;case 10:return xr(i.type),null;case 22:case 23:return mn(i),Hf(),t!==null&&Y(Di),t=i.flags,t&65536?(i.flags=t&-65537|128,i):null;case 24:return xr(_t),null;case 25:return null;default:return null}}function hx(t,i){switch(Sf(i),i.tag){case 3:xr(_t),se();break;case 26:case 27:case 5:be(i);break;case 4:se();break;case 31:i.memoizedState!==null&&mn(i);break;case 13:mn(i);break;case 19:Y(bt);break;case 10:xr(i.type);break;case 22:case 23:mn(i),Hf(),t!==null&&Y(Di);break;case 24:xr(_t)}}function Za(t,i){try{var s=i.updateQueue,f=s!==null?s.lastEffect:null;if(f!==null){var g=f.next;s=g;do{if((s.tag&t)===t){f=void 0;var y=s.create,C=s.inst;f=y(),C.destroy=f}s=s.next}while(s!==g)}}catch(D){tt(i,i.return,D)}}function ei(t,i,s){try{var f=i.updateQueue,g=f!==null?f.lastEffect:null;if(g!==null){var y=g.next;f=y;do{if((f.tag&t)===t){var C=f.inst,D=C.destroy;if(D!==void 0){C.destroy=void 0,g=i;var Z=s,le=D;try{le()}catch(ce){tt(g,Z,ce)}}}f=f.next}while(f!==y)}}catch(ce){tt(i,i.return,ce)}}function px(t){var i=t.updateQueue;if(i!==null){var s=t.stateNode;try{i0(i,s)}catch(f){tt(t,t.return,f)}}}function mx(t,i,s){s.props=Bi(t.type,t.memoizedProps),s.state=t.memoizedState;try{s.componentWillUnmount()}catch(f){tt(t,i,f)}}function Ka(t,i){try{var s=t.ref;if(s!==null){switch(t.tag){case 26:case 27:case 5:var f=t.stateNode;break;case 30:f=t.stateNode;break;default:f=t.stateNode}typeof s=="function"?t.refCleanup=s(f):s.current=f}}catch(g){tt(t,i,g)}}function er(t,i){var s=t.ref,f=t.refCleanup;if(s!==null)if(typeof f=="function")try{f()}catch(g){tt(t,i,g)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof s=="function")try{s(null)}catch(g){tt(t,i,g)}else s.current=null}function gx(t){var i=t.type,s=t.memoizedProps,f=t.stateNode;try{e:switch(i){case"button":case"input":case"select":case"textarea":s.autoFocus&&f.focus();break e;case"img":s.src?f.src=s.src:s.srcSet&&(f.srcset=s.srcSet)}}catch(g){tt(t,t.return,g)}}function md(t,i,s){try{var f=t.stateNode;f2(f,t.type,s,i),f[Gt]=i}catch(g){tt(t,t.return,g)}}function xx(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&oi(t.type)||t.tag===4}function gd(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||xx(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&oi(t.type)||t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function xd(t,i,s){var f=t.tag;if(f===5||f===6)t=t.stateNode,i?(s.nodeType===9?s.body:s.nodeName==="HTML"?s.ownerDocument.body:s).insertBefore(t,i):(i=s.nodeType===9?s.body:s.nodeName==="HTML"?s.ownerDocument.body:s,i.appendChild(t),s=s._reactRootContainer,s!=null||i.onclick!==null||(i.onclick=dr));else if(f!==4&&(f===27&&oi(t.type)&&(s=t.stateNode,i=null),t=t.child,t!==null))for(xd(t,i,s),t=t.sibling;t!==null;)xd(t,i,s),t=t.sibling}function ru(t,i,s){var f=t.tag;if(f===5||f===6)t=t.stateNode,i?s.insertBefore(t,i):s.appendChild(t);else if(f!==4&&(f===27&&oi(t.type)&&(s=t.stateNode),t=t.child,t!==null))for(ru(t,i,s),t=t.sibling;t!==null;)ru(t,i,s),t=t.sibling}function yx(t){var i=t.stateNode,s=t.memoizedProps;try{for(var f=t.type,g=i.attributes;g.length;)i.removeAttributeNode(g[0]);Pt(i,f,s),i[Dt]=t,i[Gt]=s}catch(y){tt(t,t.return,y)}}var Sr=!1,Nt=!1,yd=!1,vx=typeof WeakSet=="function"?WeakSet:Set,Ot=null;function $E(t,i){if(t=t.containerInfo,Id=ku,t=zg(t),ff(t)){if("selectionStart"in t)var s={start:t.selectionStart,end:t.selectionEnd};else e:{s=(s=t.ownerDocument)&&s.defaultView||window;var f=s.getSelection&&s.getSelection();if(f&&f.rangeCount!==0){s=f.anchorNode;var g=f.anchorOffset,y=f.focusNode;f=f.focusOffset;try{s.nodeType,y.nodeType}catch{s=null;break e}var C=0,D=-1,Z=-1,le=0,ce=0,he=t,ae=null;t:for(;;){for(var oe;he!==s||g!==0&&he.nodeType!==3||(D=C+g),he!==y||f!==0&&he.nodeType!==3||(Z=C+f),he.nodeType===3&&(C+=he.nodeValue.length),(oe=he.firstChild)!==null;)ae=he,he=oe;for(;;){if(he===t)break t;if(ae===s&&++le===g&&(D=C),ae===y&&++ce===f&&(Z=C),(oe=he.nextSibling)!==null)break;he=ae,ae=he.parentNode}he=oe}s=D===-1||Z===-1?null:{start:D,end:Z}}else s=null}s=s||{start:0,end:0}}else s=null;for(qd={focusedElem:t,selectionRange:s},ku=!1,Ot=i;Ot!==null;)if(i=Ot,t=i.child,(i.subtreeFlags&1028)!==0&&t!==null)t.return=i,Ot=t;else for(;Ot!==null;){switch(i=Ot,y=i.alternate,t=i.flags,i.tag){case 0:if((t&4)!==0&&(t=i.updateQueue,t=t!==null?t.events:null,t!==null))for(s=0;stitle"))),Pt(y,f,s),y[Dt]=t,St(y),f=y;break e;case"link":var C=Ey("link","href",g).get(f+(s.href||""));if(C){for(var D=0;D lt&&(C=lt,lt=Ce,Ce=C);var te=Ag(D,Ce),W=Ag(D,lt);if(te&&W&&(oe.rangeCount!==1||oe.anchorNode!==te.node||oe.anchorOffset!==te.offset||oe.focusNode!==W.node||oe.focusOffset!==W.offset)){var ie=he.createRange();ie.setStart(te.node,te.offset),oe.removeAllRanges(),Ce>lt?(oe.addRange(ie),oe.extend(W.node,W.offset)):(ie.setEnd(W.node,W.offset),oe.addRange(ie))}}}}for(he=[],oe=D;oe=oe.parentNode;)oe.nodeType===1&&he.push({element:oe,left:oe.scrollLeft,top:oe.scrollTop});for(typeof D.focus=="function"&&D.focus(),D=0;D s?32:s,z.T=null,s=Ed,Ed=null;var y=ii,C=Cr;if(Rt=0,ql=ii=null,Cr=0,(Je&6)!==0)throw Error(l(331));var D=Je;if(Je|=4,jx(y.current),Cx(y,y.current,C,s),Je=D,ro(0,!1),vt&&typeof vt.onPostCommitFiberRoot=="function")try{vt.onPostCommitFiberRoot(Bt,y)}catch{}return!0}finally{G.p=g,z.T=f,Xx(t,i)}}function Zx(t,i,s){i=Nn(s,i),i=id(t.stateNode,i,2),t=Kr(t,i,2),t!==null&&(wi(t,2),tr(t))}function tt(t,i,s){if(t.tag===3)Zx(t,t,s);else for(;i!==null;){if(i.tag===3){Zx(i,t,s);break}else if(i.tag===1){var f=i.stateNode;if(typeof i.type.getDerivedStateFromError=="function"||typeof f.componentDidCatch=="function"&&(ri===null||!ri.has(f))){t=Nn(s,t),s=K0(2),f=Kr(i,s,2),f!==null&&(J0(s,f,i,t),wi(f,2),tr(f));break}}i=i.return}}function Ad(t,i,s){var f=t.pingCache;if(f===null){f=t.pingCache=new YE;var g=new Set;f.set(i,g)}else g=f.get(i),g===void 0&&(g=new Set,f.set(i,g));g.has(s)||(wd=!0,g.add(s),t=JE.bind(null,t,i,s),i.then(t,t))}function JE(t,i,s){var f=t.pingCache;f!==null&&f.delete(i),t.pingedLanes|=t.suspendedLanes&s,t.warmLanes&=~s,at===t&&(Ue&s)===s&&(xt===4||xt===3&&(Ue&62914560)===Ue&&300>Mt()-au?(Je&2)===0&&Ul(t,0):Sd|=s,Il===Ue&&(Il=0)),tr(t)}function Kx(t,i){i===0&&(i=ss()),t=Ti(t,i),t!==null&&(wi(t,i),tr(t))}function WE(t){var i=t.memoizedState,s=0;i!==null&&(s=i.retryLane),Kx(t,s)}function e2(t,i){var s=0;switch(t.tag){case 31:case 13:var f=t.stateNode,g=t.memoizedState;g!==null&&(s=g.retryLane);break;case 19:f=t.stateNode;break;case 22:f=t.stateNode._retryCache;break;default:throw Error(l(314))}f!==null&&f.delete(i),Kx(t,s)}function t2(t,i){return Vt(t,i)}var hu=null,Vl=null,jd=!1,pu=!1,zd=!1,ai=0;function tr(t){t!==Vl&&t.next===null&&(Vl===null?hu=Vl=t:Vl=Vl.next=t),pu=!0,jd||(jd=!0,r2())}function ro(t,i){if(!zd&&pu){zd=!0;do for(var s=!1,f=hu;f!==null;){if(t!==0){var g=f.pendingLanes;if(g===0)var y=0;else{var C=f.suspendedLanes,D=f.pingedLanes;y=(1<<31-We(42|t)+1)-1,y&=g&~(C&~D),y=y&201326741?y&201326741|1:y?y|2:0}y!==0&&(s=!0,ty(f,y))}else y=Ue,y=dl(f,f===at?y:0,f.cancelPendingCommit!==null||f.timeoutHandle!==-1),(y&3)===0||bi(f,y)||(s=!0,ty(f,y));f=f.next}while(s);zd=!1}}function n2(){Jx()}function Jx(){pu=jd=!1;var t=0;ai!==0&&h2()&&(t=ai);for(var i=Mt(),s=null,f=hu;f!==null;){var g=f.next,y=Wx(f,i);y===0?(f.next=null,s===null?hu=g:s.next=g,g===null&&(Vl=s)):(s=f,(t!==0||(y&3)!==0)&&(pu=!0)),f=g}Rt!==0&&Rt!==5||ro(t),ai!==0&&(ai=0)}function Wx(t,i){for(var s=t.suspendedLanes,f=t.pingedLanes,g=t.expirationTimes,y=t.pendingLanes&-62914561;0 D)break;var ce=Z.transferSize,he=Z.initiatorType;ce&&uy(he)&&(Z=Z.responseEnd,C+=ce*(Z "u"?null:document;function wy(t,i,s){var f=$l;if(f&&typeof i=="string"&&i){var g=en(i);g='link[rel="'+t+'"][href="'+g+'"]',typeof s=="string"&&(g+='[crossorigin="'+s+'"]'),by.has(g)||(by.add(g),t={rel:t,crossOrigin:s,href:i},f.querySelector(g)===null&&(i=f.createElement("link"),Pt(i,"link",t),St(i),f.head.appendChild(i)))}}function S2(t){Tr.D(t),wy("dns-prefetch",t,null)}function _2(t,i){Tr.C(t,i),wy("preconnect",t,i)}function k2(t,i,s){Tr.L(t,i,s);var f=$l;if(f&&t&&i){var g='link[rel="preload"][as="'+en(i)+'"]';i==="image"&&s&&s.imageSrcSet?(g+='[imagesrcset="'+en(s.imageSrcSet)+'"]',typeof s.imageSizes=="string"&&(g+='[imagesizes="'+en(s.imageSizes)+'"]')):g+='[href="'+en(t)+'"]';var y=g;switch(i){case"style":y=Gl(t);break;case"script":y=Fl(t)}Mn.has(y)||(t=p({rel:"preload",href:i==="image"&&s&&s.imageSrcSet?void 0:t,as:i},s),Mn.set(y,t),f.querySelector(g)!==null||i==="style"&&f.querySelector(oo(y))||i==="script"&&f.querySelector(so(y))||(i=f.createElement("link"),Pt(i,"link",t),St(i),f.head.appendChild(i)))}}function E2(t,i){Tr.m(t,i);var s=$l;if(s&&t){var f=i&&typeof i.as=="string"?i.as:"script",g='link[rel="modulepreload"][as="'+en(f)+'"][href="'+en(t)+'"]',y=g;switch(f){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":y=Fl(t)}if(!Mn.has(y)&&(t=p({rel:"modulepreload",href:t},i),Mn.set(y,t),s.querySelector(g)===null)){switch(f){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(s.querySelector(so(y)))return}f=s.createElement("link"),Pt(f,"link",t),St(f),s.head.appendChild(f)}}}function N2(t,i,s){Tr.S(t,i,s);var f=$l;if(f&&t){var g=Ur(f).hoistableStyles,y=Gl(t);i=i||"default";var C=g.get(y);if(!C){var D={loading:0,preload:null};if(C=f.querySelector(oo(y)))D.loading=5;else{t=p({rel:"stylesheet",href:t,"data-precedence":i},s),(s=Mn.get(y))&&Yd(t,s);var Z=C=f.createElement("link");St(Z),Pt(Z,"link",t),Z._p=new Promise(function(le,ce){Z.onload=le,Z.onerror=ce}),Z.addEventListener("load",function(){D.loading|=1}),Z.addEventListener("error",function(){D.loading|=2}),D.loading|=4,vu(C,i,f)}C={type:"stylesheet",instance:C,count:1,state:D},g.set(y,C)}}}function C2(t,i){Tr.X(t,i);var s=$l;if(s&&t){var f=Ur(s).hoistableScripts,g=Fl(t),y=f.get(g);y||(y=s.querySelector(so(g)),y||(t=p({src:t,async:!0},i),(i=Mn.get(g))&&Xd(t,i),y=s.createElement("script"),St(y),Pt(y,"link",t),s.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},f.set(g,y))}}function T2(t,i){Tr.M(t,i);var s=$l;if(s&&t){var f=Ur(s).hoistableScripts,g=Fl(t),y=f.get(g);y||(y=s.querySelector(so(g)),y||(t=p({src:t,async:!0,type:"module"},i),(i=Mn.get(g))&&Xd(t,i),y=s.createElement("script"),St(y),Pt(y,"link",t),s.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},f.set(g,y))}}function Sy(t,i,s,f){var g=(g=J.current)?yu(g):null;if(!g)throw Error(l(446));switch(t){case"meta":case"title":return null;case"style":return typeof s.precedence=="string"&&typeof s.href=="string"?(i=Gl(s.href),s=Ur(g).hoistableStyles,f=s.get(i),f||(f={type:"style",instance:null,count:0,state:null},s.set(i,f)),f):{type:"void",instance:null,count:0,state:null};case"link":if(s.rel==="stylesheet"&&typeof s.href=="string"&&typeof s.precedence=="string"){t=Gl(s.href);var y=Ur(g).hoistableStyles,C=y.get(t);if(C||(g=g.ownerDocument||g,C={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},y.set(t,C),(y=g.querySelector(oo(t)))&&!y._p&&(C.instance=y,C.state.loading=5),Mn.has(t)||(s={rel:"preload",as:"style",href:s.href,crossOrigin:s.crossOrigin,integrity:s.integrity,media:s.media,hrefLang:s.hrefLang,referrerPolicy:s.referrerPolicy},Mn.set(t,s),y||A2(g,t,s,C.state))),i&&f===null)throw Error(l(528,""));return C}if(i&&f!==null)throw Error(l(529,""));return null;case"script":return i=s.async,s=s.src,typeof s=="string"&&i&&typeof i!="function"&&typeof i!="symbol"?(i=Fl(s),s=Ur(g).hoistableScripts,f=s.get(i),f||(f={type:"script",instance:null,count:0,state:null},s.set(i,f)),f):{type:"void",instance:null,count:0,state:null};default:throw Error(l(444,t))}}function Gl(t){return'href="'+en(t)+'"'}function oo(t){return'link[rel="stylesheet"]['+t+"]"}function _y(t){return p({},t,{"data-precedence":t.precedence,precedence:null})}function A2(t,i,s,f){t.querySelector('link[rel="preload"][as="style"]['+i+"]")?f.loading=1:(i=t.createElement("link"),f.preload=i,i.addEventListener("load",function(){return f.loading|=1}),i.addEventListener("error",function(){return f.loading|=2}),Pt(i,"link",s),St(i),t.head.appendChild(i))}function Fl(t){return'[src="'+en(t)+'"]'}function so(t){return"script[async]"+t}function ky(t,i,s){if(i.count++,i.instance===null)switch(i.type){case"style":var f=t.querySelector('style[data-href~="'+en(s.href)+'"]');if(f)return i.instance=f,St(f),f;var g=p({},s,{"data-href":s.href,"data-precedence":s.precedence,href:null,precedence:null});return f=(t.ownerDocument||t).createElement("style"),St(f),Pt(f,"style",g),vu(f,s.precedence,t),i.instance=f;case"stylesheet":g=Gl(s.href);var y=t.querySelector(oo(g));if(y)return i.state.loading|=4,i.instance=y,St(y),y;f=_y(s),(g=Mn.get(g))&&Yd(f,g),y=(t.ownerDocument||t).createElement("link"),St(y);var C=y;return C._p=new Promise(function(D,Z){C.onload=D,C.onerror=Z}),Pt(y,"link",f),i.state.loading|=4,vu(y,s.precedence,t),i.instance=y;case"script":return y=Fl(s.src),(g=t.querySelector(so(y)))?(i.instance=g,St(g),g):(f=s,(g=Mn.get(y))&&(f=p({},s),Xd(f,g)),t=t.ownerDocument||t,g=t.createElement("script"),St(g),Pt(g,"link",f),t.head.appendChild(g),i.instance=g);case"void":return null;default:throw Error(l(443,i.type))}else i.type==="stylesheet"&&(i.state.loading&4)===0&&(f=i.instance,i.state.loading|=4,vu(f,s.precedence,t));return i.instance}function vu(t,i,s){for(var f=s.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),g=f.length?f[f.length-1]:null,y=g,C=0;C title"):null)}function j2(t,i,s){if(s===1||i.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof i.precedence!="string"||typeof i.href!="string"||i.href==="")break;return!0;case"link":if(typeof i.rel!="string"||typeof i.href!="string"||i.href===""||i.onLoad||i.onError)break;switch(i.rel){case"stylesheet":return t=i.disabled,typeof i.precedence=="string"&&t==null;default:return!0}case"script":if(i.async&&typeof i.async!="function"&&typeof i.async!="symbol"&&!i.onLoad&&!i.onError&&i.src&&typeof i.src=="string")return!0}return!1}function Cy(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function z2(t,i,s,f){if(s.type==="stylesheet"&&(typeof f.media!="string"||matchMedia(f.media).matches!==!1)&&(s.state.loading&4)===0){if(s.instance===null){var g=Gl(f.href),y=i.querySelector(oo(g));if(y){i=y._p,i!==null&&typeof i=="object"&&typeof i.then=="function"&&(t.count++,t=wu.bind(t),i.then(t,t)),s.state.loading|=4,s.instance=y,St(y);return}y=i.ownerDocument||i,f=_y(f),(g=Mn.get(g))&&Yd(f,g),y=y.createElement("link"),St(y);var C=y;C._p=new Promise(function(D,Z){C.onload=D,C.onerror=Z}),Pt(y,"link",f),s.instance=y}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(s,i),(i=s.state.preload)&&(s.state.loading&3)===0&&(t.count++,s=wu.bind(t),i.addEventListener("load",s),i.addEventListener("error",s))}}var Qd=0;function M2(t,i){return t.stylesheets&&t.count===0&&_u(t,t.stylesheets),0 Qd?50:800)+i);return t.unsuspend=s,function(){t.unsuspend=null,clearTimeout(f),clearTimeout(g)}}:null}function wu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)_u(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Su=null;function _u(t,i){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Su=new Map,i.forEach(D2,t),Su=null,wu.call(t))}function D2(t,i){if(!(i.state.loading&4)){var s=Su.get(t);if(s)var f=s.get(null);else{s=new Map,Su.set(t,s);for(var g=t.querySelectorAll("link[data-precedence],style[data-precedence]"),y=0;y "u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(n){console.error(n)}}return e(),ih.exports=J2(),ih.exports}var eN=W2();/** +`+f.stack}}var zt=Object.prototype.hasOwnProperty,Vt=e.unstable_scheduleCallback,Ht=e.unstable_cancelCallback,kn=e.unstable_shouldYield,Rn=e.unstable_requestPaint,Mt=e.unstable_now,Hr=e.unstable_getCurrentPriorityLevel,ue=e.unstable_ImmediatePriority,ge=e.unstable_UserBlockingPriority,Ne=e.unstable_NormalPriority,Oe=e.unstable_LowPriority,Xe=e.unstable_IdlePriority,Qt=e.log,On=e.unstable_setDisableYieldValue,Bt=null,vt=null;function $t(t){if(typeof Qt=="function"&&On(t),vt&&typeof vt.setStrictMode=="function")try{vt.setStrictMode(Bt,t)}catch{}}var We=Math.clz32?Math.clz32:$c,Zn=Math.log,fn=Math.LN2;function $c(t){return t>>>=0,t===0?32:31-(Zn(t)/fn|0)|0}var ul=256,cl=262144,fl=4194304;function sr(t){var i=t&42;if(i!==0)return i;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function dl(t,i,s){var f=t.pendingLanes;if(f===0)return 0;var g=0,y=t.suspendedLanes,C=t.pingedLanes;t=t.warmLanes;var D=f&134217727;return D!==0?(f=D&~y,f!==0?g=sr(f):(C&=D,C!==0?g=sr(C):s||(s=D&~t,s!==0&&(g=sr(s))))):(D=f&~y,D!==0?g=sr(D):C!==0?g=sr(C):s||(s=f&~t,s!==0&&(g=sr(s)))),g===0?0:i!==0&&i!==g&&(i&y)===0&&(y=g&-g,s=i&-i,y>=s||y===32&&(s&4194048)!==0)?i:g}function bi(t,i){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&i)===0}function Gc(t,i){switch(t){case 1:case 2:case 4:case 8:case 64:return i+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return i+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function ss(){var t=fl;return fl<<=1,(fl&62914560)===0&&(fl=4194304),t}function ba(t){for(var i=[],s=0;31>s;s++)i.push(t);return i}function wi(t,i){t.pendingLanes|=i,i!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Fc(t,i,s,f,g,y){var C=t.pendingLanes;t.pendingLanes=s,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=s,t.entangledLanes&=s,t.errorRecoveryDisabledLanes&=s,t.shellSuspendCounter=0;var D=t.entanglements,Z=t.expirationTimes,le=t.hiddenUpdates;for(s=C&~s;0 "u")return null;try{return t.activeElement||t.body}catch{return t.body}}var Kc=/[\n"\\]/g;function en(t){return t.replace(Kc,function(i){return"\\"+i.charCodeAt(0).toString(16)+" "})}function ki(t,i,s,f,g,y,C,D){t.name="",C!=null&&typeof C!="function"&&typeof C!="symbol"&&typeof C!="boolean"?t.type=C:t.removeAttribute("type"),i!=null?C==="number"?(i===0&&t.value===""||t.value!=i)&&(t.value=""+Wt(i)):t.value!==""+Wt(i)&&(t.value=""+Wt(i)):C!=="submit"&&C!=="reset"||t.removeAttribute("value"),i!=null?Ea(t,C,Wt(i)):s!=null?Ea(t,C,Wt(s)):f!=null&&t.removeAttribute("value"),g==null&&y!=null&&(t.defaultChecked=!!y),g!=null&&(t.checked=g&&typeof g!="function"&&typeof g!="symbol"),D!=null&&typeof D!="function"&&typeof D!="symbol"&&typeof D!="boolean"?t.name=""+Wt(D):t.removeAttribute("name")}function ws(t,i,s,f,g,y,C,D){if(y!=null&&typeof y!="function"&&typeof y!="symbol"&&typeof y!="boolean"&&(t.type=y),i!=null||s!=null){if(!(y!=="submit"&&y!=="reset"||i!=null)){Vr(t);return}s=s!=null?""+Wt(s):"",i=i!=null?""+Wt(i):s,D||i===t.value||(t.value=i),t.defaultValue=i}f=f??g,f=typeof f!="function"&&typeof f!="symbol"&&!!f,t.checked=D?t.checked:!!f,t.defaultChecked=!!f,C!=null&&typeof C!="function"&&typeof C!="symbol"&&typeof C!="boolean"&&(t.name=C),Vr(t)}function Ea(t,i,s){i==="number"&&_i(t.ownerDocument)===t||t.defaultValue===""+s||(t.defaultValue=""+s)}function fr(t,i,s,f){if(t=t.options,i){i={};for(var g=0;g"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),nf=!1;if(hr)try{var Ca={};Object.defineProperty(Ca,"passive",{get:function(){nf=!0}}),window.addEventListener("test",Ca,Ca),window.removeEventListener("test",Ca,Ca)}catch{nf=!1}var $r=null,rf=null,_s=null;function dg(){if(_s)return _s;var t,i=rf,s=i.length,f,g="value"in $r?$r.value:$r.textContent,y=g.length;for(t=0;t =ja),yg=" ",vg=!1;function bg(t,i){switch(t){case"keyup":return cE.indexOf(i.keyCode)!==-1;case"keydown":return i.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function wg(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var vl=!1;function dE(t,i){switch(t){case"compositionend":return wg(i);case"keypress":return i.which!==32?null:(vg=!0,yg);case"textInput":return t=i.data,t===yg&&vg?null:t;default:return null}}function hE(t,i){if(vl)return t==="compositionend"||!uf&&bg(t,i)?(t=dg(),_s=rf=$r=null,vl=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(i.ctrlKey||i.altKey||i.metaKey)||i.ctrlKey&&i.altKey){if(i.char&&1=i)return{node:s,offset:i-t};t=f}e:{for(;s;){if(s.nextSibling){s=s.nextSibling;break e}s=s.parentNode}s=void 0}s=Ag(s)}}function zg(t,i){return t&&i?t===i?!0:t&&t.nodeType===3?!1:i&&i.nodeType===3?zg(t,i.parentNode):"contains"in t?t.contains(i):t.compareDocumentPosition?!!(t.compareDocumentPosition(i)&16):!1:!1}function Mg(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var i=_i(t.document);i instanceof t.HTMLIFrameElement;){try{var s=typeof i.contentWindow.location.href=="string"}catch{s=!1}if(s)t=i.contentWindow;else break;i=_i(t.document)}return i}function df(t){var i=t&&t.nodeName&&t.nodeName.toLowerCase();return i&&(i==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||i==="textarea"||t.contentEditable==="true")}var wE=hr&&"documentMode"in document&&11>=document.documentMode,bl=null,hf=null,Ra=null,pf=!1;function Dg(t,i,s){var f=s.window===s?s.document:s.nodeType===9?s:s.ownerDocument;pf||bl==null||bl!==_i(f)||(f=bl,"selectionStart"in f&&df(f)?f={start:f.selectionStart,end:f.selectionEnd}:(f=(f.ownerDocument&&f.ownerDocument.defaultView||window).getSelection(),f={anchorNode:f.anchorNode,anchorOffset:f.anchorOffset,focusNode:f.focusNode,focusOffset:f.focusOffset}),Ra&&Da(Ra,f)||(Ra=f,f=gu(hf,"onSelect"),0 >=C,g-=C,Jn=1<<32-We(i)+g|s< Me?(Pe=Se,Se=null):Pe=Se.sibling;var Ke=ae(te,Se,ie[Me],de);if(Ke===null){Se===null&&(Se=Pe);break}t&&Se&&Ke.alternate===null&&i(te,Se),W=y(Ke,W,Me),Ze===null?ke=Ke:Ze.sibling=Ke,Ze=Ke,Se=Pe}if(Me===ie.length)return s(te,Se),$e&&mr(te,Me),ke;if(Se===null){for(;Me Me?(Pe=Se,Se=null):Pe=Se.sibling;var di=ae(te,Se,Ke.value,de);if(di===null){Se===null&&(Se=Pe);break}t&&Se&&di.alternate===null&&i(te,Se),W=y(di,W,Me),Ze===null?ke=di:Ze.sibling=di,Ze=di,Se=Pe}if(Ke.done)return s(te,Se),$e&&mr(te,Me),ke;if(Se===null){for(;!Ke.done;Me++,Ke=ie.next())Ke=he(te,Ke.value,de),Ke!==null&&(W=y(Ke,W,Me),Ze===null?ke=Ke:Ze.sibling=Ke,Ze=Ke);return $e&&mr(te,Me),ke}for(Se=f(Se);!Ke.done;Me++,Ke=ie.next())Ke=oe(Se,te,Me,Ke.value,de),Ke!==null&&(t&&Ke.alternate!==null&&Se.delete(Ke.key===null?Me:Ke.key),W=y(Ke,W,Me),Ze===null?ke=Ke:Ze.sibling=Ke,Ze=Ke);return t&&Se.forEach(function(U2){return i(te,U2)}),$e&&mr(te,Me),ke}function lt(te,W,ie,de){if(typeof ie=="object"&&ie!==null&&ie.type===E&&ie.key===null&&(ie=ie.props.children),typeof ie=="object"&&ie!==null){switch(ie.$$typeof){case v:e:{for(var ke=ie.key;W!==null;){if(W.key===ke){if(ke=ie.type,ke===E){if(W.tag===7){s(te,W.sibling),de=g(W,ie.props.children),de.return=te,te=de;break e}}else if(W.elementType===ke||typeof ke=="object"&&ke!==null&&ke.$$typeof===R&&Ri(ke)===W.type){s(te,W.sibling),de=g(W,ie.props),qa(de,ie),de.return=te,te=de;break e}s(te,W);break}else i(te,W);W=W.sibling}ie.type===E?(de=Ai(ie.props.children,te.mode,de,ie.key),de.return=te,te=de):(de=Ds(ie.type,ie.key,ie.props,null,te.mode,de),qa(de,ie),de.return=te,te=de)}return C(te);case w:e:{for(ke=ie.key;W!==null;){if(W.key===ke)if(W.tag===4&&W.stateNode.containerInfo===ie.containerInfo&&W.stateNode.implementation===ie.implementation){s(te,W.sibling),de=g(W,ie.children||[]),de.return=te,te=de;break e}else{s(te,W);break}else i(te,W);W=W.sibling}de=wf(ie,te.mode,de),de.return=te,te=de}return C(te);case R:return ie=Ri(ie),lt(te,W,ie,de)}if(F(ie))return we(te,W,ie,de);if(U(ie)){if(ke=U(ie),typeof ke!="function")throw Error(l(150));return ie=ke.call(ie),Ce(te,W,ie,de)}if(typeof ie.then=="function")return lt(te,W,qs(ie),de);if(ie.$$typeof===k)return lt(te,W,Ls(te,ie),de);Us(te,ie)}return typeof ie=="string"&&ie!==""||typeof ie=="number"||typeof ie=="bigint"?(ie=""+ie,W!==null&&W.tag===6?(s(te,W.sibling),de=g(W,ie),de.return=te,te=de):(s(te,W),de=bf(ie,te.mode,de),de.return=te,te=de),C(te)):s(te,W)}return function(te,W,ie,de){try{Ia=0;var ke=lt(te,W,ie,de);return zl=null,ke}catch(Se){if(Se===jl||Se===Bs)throw Se;var Ze=hn(29,Se,null,te.mode);return Ze.lanes=de,Ze.return=te,Ze}finally{}}}var Li=n0(!0),r0=n0(!1),Qr=!1;function Df(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Rf(t,i){t=t.updateQueue,i.updateQueue===t&&(i.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function Zr(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function Kr(t,i,s){var f=t.updateQueue;if(f===null)return null;if(f=f.shared,(Je&2)!==0){var g=f.pending;return g===null?i.next=i:(i.next=g.next,g.next=i),f.pending=i,i=Ms(t),qg(t,null,s),i}return zs(t,f,i,s),Ms(t)}function Ua(t,i,s){if(i=i.updateQueue,i!==null&&(i=i.shared,(s&4194048)!==0)){var f=i.lanes;f&=t.pendingLanes,s|=f,i.lanes=s,cs(t,s)}}function Of(t,i){var s=t.updateQueue,f=t.alternate;if(f!==null&&(f=f.updateQueue,s===f)){var g=null,y=null;if(s=s.firstBaseUpdate,s!==null){do{var C={lane:s.lane,tag:s.tag,payload:s.payload,callback:null,next:null};y===null?g=y=C:y=y.next=C,s=s.next}while(s!==null);y===null?g=y=i:y=y.next=i}else g=y=i;s={baseState:f.baseState,firstBaseUpdate:g,lastBaseUpdate:y,shared:f.shared,callbacks:f.callbacks},t.updateQueue=s;return}t=s.lastBaseUpdate,t===null?s.firstBaseUpdate=i:t.next=i,s.lastBaseUpdate=i}var Lf=!1;function Pa(){if(Lf){var t=Al;if(t!==null)throw t}}function Va(t,i,s,f){Lf=!1;var g=t.updateQueue;Qr=!1;var y=g.firstBaseUpdate,C=g.lastBaseUpdate,D=g.shared.pending;if(D!==null){g.shared.pending=null;var Z=D,le=Z.next;Z.next=null,C===null?y=le:C.next=le,C=Z;var ce=t.alternate;ce!==null&&(ce=ce.updateQueue,D=ce.lastBaseUpdate,D!==C&&(D===null?ce.firstBaseUpdate=le:D.next=le,ce.lastBaseUpdate=Z))}if(y!==null){var he=g.baseState;C=0,ce=le=Z=null,D=y;do{var ae=D.lane&-536870913,oe=ae!==D.lane;if(oe?(Ue&ae)===ae:(f&ae)===ae){ae!==0&&ae===Tl&&(Lf=!0),ce!==null&&(ce=ce.next={lane:0,tag:D.tag,payload:D.payload,callback:null,next:null});e:{var we=t,Ce=D;ae=i;var lt=s;switch(Ce.tag){case 1:if(we=Ce.payload,typeof we=="function"){he=we.call(lt,he,ae);break e}he=we;break e;case 3:we.flags=we.flags&-65537|128;case 0:if(we=Ce.payload,ae=typeof we=="function"?we.call(lt,he,ae):we,ae==null)break e;he=p({},he,ae);break e;case 2:Qr=!0}}ae=D.callback,ae!==null&&(t.flags|=64,oe&&(t.flags|=8192),oe=g.callbacks,oe===null?g.callbacks=[ae]:oe.push(ae))}else oe={lane:ae,tag:D.tag,payload:D.payload,callback:D.callback,next:null},ce===null?(le=ce=oe,Z=he):ce=ce.next=oe,C|=ae;if(D=D.next,D===null){if(D=g.shared.pending,D===null)break;oe=D,D=oe.next,oe.next=null,g.lastBaseUpdate=oe,g.shared.pending=null}}while(!0);ce===null&&(Z=he),g.baseState=Z,g.firstBaseUpdate=le,g.lastBaseUpdate=ce,y===null&&(g.shared.lanes=0),ni|=C,t.lanes=C,t.memoizedState=he}}function i0(t,i){if(typeof t!="function")throw Error(l(191,t));t.call(i)}function l0(t,i){var s=t.callbacks;if(s!==null)for(t.callbacks=null,t=0;t y?y:8;var C=z.T,D={};z.T=D,td(t,!1,i,s);try{var Z=g(),le=z.S;if(le!==null&&le(D,Z),Z!==null&&typeof Z=="object"&&typeof Z.then=="function"){var ce=jE(Z,f);Fa(t,i,ce,yn(t))}else Fa(t,i,f,yn(t))}catch(he){Fa(t,i,{then:function(){},status:"rejected",reason:he},yn())}finally{G.p=y,C!==null&&D.types!==null&&(C.types=D.types),z.T=C}}function LE(){}function Wf(t,i,s,f){if(t.tag!==5)throw Error(l(476));var g=H0(t).queue;L0(t,g,i,Q,s===null?LE:function(){return B0(t),s(f)})}function H0(t){var i=t.memoizedState;if(i!==null)return i;i={memoizedState:Q,baseState:Q,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:vr,lastRenderedState:Q},next:null};var s={};return i.next={memoizedState:s,baseState:s,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:vr,lastRenderedState:s},next:null},t.memoizedState=i,t=t.alternate,t!==null&&(t.memoizedState=i),i}function B0(t){var i=H0(t);i.next===null&&(i=t.alternate.memoizedState),Fa(t,i.next.queue,{},yn())}function ed(){return qt(uo)}function I0(){return wt().memoizedState}function q0(){return wt().memoizedState}function HE(t){for(var i=t.return;i!==null;){switch(i.tag){case 24:case 3:var s=yn();t=Zr(s);var f=Kr(i,t,s);f!==null&&(on(f,i,s),Ua(f,i,s)),i={cache:Af()},t.payload=i;return}i=i.return}}function BE(t,i,s){var f=yn();s={lane:f,revertLane:0,gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null},Ks(t)?P0(i,s):(s=yf(t,i,s,f),s!==null&&(on(s,t,f),V0(s,i,f)))}function U0(t,i,s){var f=yn();Fa(t,i,s,f)}function Fa(t,i,s,f){var g={lane:f,revertLane:0,gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null};if(Ks(t))P0(i,g);else{var y=t.alternate;if(t.lanes===0&&(y===null||y.lanes===0)&&(y=i.lastRenderedReducer,y!==null))try{var C=i.lastRenderedState,D=y(C,s);if(g.hasEagerState=!0,g.eagerState=D,dn(D,C))return zs(t,i,g,0),at===null&&js(),!1}catch{}finally{}if(s=yf(t,i,g,f),s!==null)return on(s,t,f),V0(s,i,f),!0}return!1}function td(t,i,s,f){if(f={lane:2,revertLane:Dd(),gesture:null,action:f,hasEagerState:!1,eagerState:null,next:null},Ks(t)){if(i)throw Error(l(479))}else i=yf(t,s,f,2),i!==null&&on(i,t,2)}function Ks(t){var i=t.alternate;return t===je||i!==null&&i===je}function P0(t,i){Dl=$s=!0;var s=t.pending;s===null?i.next=i:(i.next=s.next,s.next=i),t.pending=i}function V0(t,i,s){if((s&4194048)!==0){var f=i.lanes;f&=t.pendingLanes,s|=f,i.lanes=s,cs(t,s)}}var Ya={readContext:qt,use:Ys,useCallback:gt,useContext:gt,useEffect:gt,useImperativeHandle:gt,useLayoutEffect:gt,useInsertionEffect:gt,useMemo:gt,useReducer:gt,useRef:gt,useState:gt,useDebugValue:gt,useDeferredValue:gt,useTransition:gt,useSyncExternalStore:gt,useId:gt,useHostTransitionStatus:gt,useFormState:gt,useActionState:gt,useOptimistic:gt,useMemoCache:gt,useCacheRefresh:gt};Ya.useEffectEvent=gt;var $0={readContext:qt,use:Ys,useCallback:function(t,i){return Zt().memoizedState=[t,i===void 0?null:i],t},useContext:qt,useEffect:C0,useImperativeHandle:function(t,i,s){s=s!=null?s.concat([t]):null,Qs(4194308,4,z0.bind(null,i,t),s)},useLayoutEffect:function(t,i){return Qs(4194308,4,t,i)},useInsertionEffect:function(t,i){Qs(4,2,t,i)},useMemo:function(t,i){var s=Zt();i=i===void 0?null:i;var f=t();if(Hi){$t(!0);try{t()}finally{$t(!1)}}return s.memoizedState=[f,i],f},useReducer:function(t,i,s){var f=Zt();if(s!==void 0){var g=s(i);if(Hi){$t(!0);try{s(i)}finally{$t(!1)}}}else g=i;return f.memoizedState=f.baseState=g,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:g},f.queue=t,t=t.dispatch=BE.bind(null,je,t),[f.memoizedState,t]},useRef:function(t){var i=Zt();return t={current:t},i.memoizedState=t},useState:function(t){t=Xf(t);var i=t.queue,s=U0.bind(null,je,i);return i.dispatch=s,[t.memoizedState,s]},useDebugValue:Kf,useDeferredValue:function(t,i){var s=Zt();return Jf(s,t,i)},useTransition:function(){var t=Xf(!1);return t=L0.bind(null,je,t.queue,!0,!1),Zt().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,i,s){var f=je,g=Zt();if($e){if(s===void 0)throw Error(l(407));s=s()}else{if(s=i(),at===null)throw Error(l(349));(Ue&127)!==0||f0(f,i,s)}g.memoizedState=s;var y={value:s,getSnapshot:i};return g.queue=y,C0(h0.bind(null,f,y,t),[t]),f.flags|=2048,Ol(9,{destroy:void 0},d0.bind(null,f,y,s,i),null),s},useId:function(){var t=Zt(),i=at.identifierPrefix;if($e){var s=Wn,f=Jn;s=(f&~(1<<32-We(f)-1)).toString(32)+s,i="_"+i+"R_"+s,s=Gs++,0 <\/script>",y=y.removeChild(y.firstChild);break;case"select":y=typeof f.is=="string"?C.createElement("select",{is:f.is}):C.createElement("select"),f.multiple?y.multiple=!0:f.size&&(y.size=f.size);break;default:y=typeof f.is=="string"?C.createElement(g,{is:f.is}):C.createElement(g)}}y[Dt]=i,y[Gt]=f;e:for(C=i.child;C!==null;){if(C.tag===5||C.tag===6)y.appendChild(C.stateNode);else if(C.tag!==4&&C.tag!==27&&C.child!==null){C.child.return=C,C=C.child;continue}if(C===i)break e;for(;C.sibling===null;){if(C.return===null||C.return===i)break e;C=C.return}C.sibling.return=C.return,C=C.sibling}i.stateNode=y;e:switch(Pt(y,g,f),g){case"button":case"input":case"select":case"textarea":f=!!f.autoFocus;break e;case"img":f=!0;break e;default:f=!1}f&&wr(i)}}return ft(i),md(i,i.type,t===null?null:t.memoizedProps,i.pendingProps,s),null;case 6:if(t&&i.stateNode!=null)t.memoizedProps!==f&&wr(i);else{if(typeof f!="string"&&i.stateNode===null)throw Error(l(166));if(t=J.current,Nl(i)){if(t=i.stateNode,s=i.memoizedProps,f=null,g=It,g!==null)switch(g.tag){case 27:case 5:f=g.memoizedProps}t[Dt]=i,t=!!(t.nodeValue===s||f!==null&&f.suppressHydrationWarning===!0||uy(t.nodeValue,s)),t||Yr(i,!0)}else t=xu(t).createTextNode(f),t[Dt]=i,i.stateNode=t}return ft(i),null;case 31:if(s=i.memoizedState,t===null||t.memoizedState!==null){if(f=Nl(i),s!==null){if(t===null){if(!f)throw Error(l(318));if(t=i.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(l(557));t[Dt]=i}else ji(),(i.flags&128)===0&&(i.memoizedState=null),i.flags|=4;ft(i),t=!1}else s=Ef(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=s),t=!0;if(!t)return i.flags&256?(mn(i),i):(mn(i),null);if((i.flags&128)!==0)throw Error(l(558))}return ft(i),null;case 13:if(f=i.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(g=Nl(i),f!==null&&f.dehydrated!==null){if(t===null){if(!g)throw Error(l(318));if(g=i.memoizedState,g=g!==null?g.dehydrated:null,!g)throw Error(l(317));g[Dt]=i}else ji(),(i.flags&128)===0&&(i.memoizedState=null),i.flags|=4;ft(i),g=!1}else g=Ef(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=g),g=!0;if(!g)return i.flags&256?(mn(i),i):(mn(i),null)}return mn(i),(i.flags&128)!==0?(i.lanes=s,i):(s=f!==null,t=t!==null&&t.memoizedState!==null,s&&(f=i.child,g=null,f.alternate!==null&&f.alternate.memoizedState!==null&&f.alternate.memoizedState.cachePool!==null&&(g=f.alternate.memoizedState.cachePool.pool),y=null,f.memoizedState!==null&&f.memoizedState.cachePool!==null&&(y=f.memoizedState.cachePool.pool),y!==g&&(f.flags|=2048)),s!==t&&s&&(i.child.flags|=8192),nu(i,i.updateQueue),ft(i),null);case 4:return se(),t===null&&Hd(i.stateNode.containerInfo),ft(i),null;case 10:return xr(i.type),ft(i),null;case 19:if(Y(bt),f=i.memoizedState,f===null)return ft(i),null;if(g=(i.flags&128)!==0,y=f.rendering,y===null)if(g)Qa(f,!1);else{if(xt!==0||t!==null&&(t.flags&128)!==0)for(t=i.child;t!==null;){if(y=Vs(t),y!==null){for(i.flags|=128,Qa(f,!1),t=y.updateQueue,i.updateQueue=t,nu(i,t),i.subtreeFlags=0,t=s,s=i.child;s!==null;)Ug(s,t),s=s.sibling;return N(bt,bt.current&1|2),$e&&mr(i,f.treeForkCount),i.child}t=t.sibling}f.tail!==null&&Mt()>ou&&(i.flags|=128,g=!0,Qa(f,!1),i.lanes=4194304)}else{if(!g)if(t=Vs(y),t!==null){if(i.flags|=128,g=!0,t=t.updateQueue,i.updateQueue=t,nu(i,t),Qa(f,!0),f.tail===null&&f.tailMode==="hidden"&&!y.alternate&&!$e)return ft(i),null}else 2*Mt()-f.renderingStartTime>ou&&s!==536870912&&(i.flags|=128,g=!0,Qa(f,!1),i.lanes=4194304);f.isBackwards?(y.sibling=i.child,i.child=y):(t=f.last,t!==null?t.sibling=y:i.child=y,f.last=y)}return f.tail!==null?(t=f.tail,f.rendering=t,f.tail=t.sibling,f.renderingStartTime=Mt(),t.sibling=null,s=bt.current,N(bt,g?s&1|2:s&1),$e&&mr(i,f.treeForkCount),t):(ft(i),null);case 22:case 23:return mn(i),Bf(),f=i.memoizedState!==null,t!==null?t.memoizedState!==null!==f&&(i.flags|=8192):f&&(i.flags|=8192),f?(s&536870912)!==0&&(i.flags&128)===0&&(ft(i),i.subtreeFlags&6&&(i.flags|=8192)):ft(i),s=i.updateQueue,s!==null&&nu(i,s.retryQueue),s=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(s=t.memoizedState.cachePool.pool),f=null,i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(f=i.memoizedState.cachePool.pool),f!==s&&(i.flags|=2048),t!==null&&Y(Di),null;case 24:return s=null,t!==null&&(s=t.memoizedState.cache),i.memoizedState.cache!==s&&(i.flags|=2048),xr(_t),ft(i),null;case 25:return null;case 30:return null}throw Error(l(156,i.tag))}function VE(t,i){switch(_f(i),i.tag){case 1:return t=i.flags,t&65536?(i.flags=t&-65537|128,i):null;case 3:return xr(_t),se(),t=i.flags,(t&65536)!==0&&(t&128)===0?(i.flags=t&-65537|128,i):null;case 26:case 27:case 5:return be(i),null;case 31:if(i.memoizedState!==null){if(mn(i),i.alternate===null)throw Error(l(340));ji()}return t=i.flags,t&65536?(i.flags=t&-65537|128,i):null;case 13:if(mn(i),t=i.memoizedState,t!==null&&t.dehydrated!==null){if(i.alternate===null)throw Error(l(340));ji()}return t=i.flags,t&65536?(i.flags=t&-65537|128,i):null;case 19:return Y(bt),null;case 4:return se(),null;case 10:return xr(i.type),null;case 22:case 23:return mn(i),Bf(),t!==null&&Y(Di),t=i.flags,t&65536?(i.flags=t&-65537|128,i):null;case 24:return xr(_t),null;case 25:return null;default:return null}}function px(t,i){switch(_f(i),i.tag){case 3:xr(_t),se();break;case 26:case 27:case 5:be(i);break;case 4:se();break;case 31:i.memoizedState!==null&&mn(i);break;case 13:mn(i);break;case 19:Y(bt);break;case 10:xr(i.type);break;case 22:case 23:mn(i),Bf(),t!==null&&Y(Di);break;case 24:xr(_t)}}function Za(t,i){try{var s=i.updateQueue,f=s!==null?s.lastEffect:null;if(f!==null){var g=f.next;s=g;do{if((s.tag&t)===t){f=void 0;var y=s.create,C=s.inst;f=y(),C.destroy=f}s=s.next}while(s!==g)}}catch(D){tt(i,i.return,D)}}function ei(t,i,s){try{var f=i.updateQueue,g=f!==null?f.lastEffect:null;if(g!==null){var y=g.next;f=y;do{if((f.tag&t)===t){var C=f.inst,D=C.destroy;if(D!==void 0){C.destroy=void 0,g=i;var Z=s,le=D;try{le()}catch(ce){tt(g,Z,ce)}}}f=f.next}while(f!==y)}}catch(ce){tt(i,i.return,ce)}}function mx(t){var i=t.updateQueue;if(i!==null){var s=t.stateNode;try{l0(i,s)}catch(f){tt(t,t.return,f)}}}function gx(t,i,s){s.props=Bi(t.type,t.memoizedProps),s.state=t.memoizedState;try{s.componentWillUnmount()}catch(f){tt(t,i,f)}}function Ka(t,i){try{var s=t.ref;if(s!==null){switch(t.tag){case 26:case 27:case 5:var f=t.stateNode;break;case 30:f=t.stateNode;break;default:f=t.stateNode}typeof s=="function"?t.refCleanup=s(f):s.current=f}}catch(g){tt(t,i,g)}}function er(t,i){var s=t.ref,f=t.refCleanup;if(s!==null)if(typeof f=="function")try{f()}catch(g){tt(t,i,g)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof s=="function")try{s(null)}catch(g){tt(t,i,g)}else s.current=null}function xx(t){var i=t.type,s=t.memoizedProps,f=t.stateNode;try{e:switch(i){case"button":case"input":case"select":case"textarea":s.autoFocus&&f.focus();break e;case"img":s.src?f.src=s.src:s.srcSet&&(f.srcset=s.srcSet)}}catch(g){tt(t,t.return,g)}}function gd(t,i,s){try{var f=t.stateNode;f2(f,t.type,s,i),f[Gt]=i}catch(g){tt(t,t.return,g)}}function yx(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&oi(t.type)||t.tag===4}function xd(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||yx(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&oi(t.type)||t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function yd(t,i,s){var f=t.tag;if(f===5||f===6)t=t.stateNode,i?(s.nodeType===9?s.body:s.nodeName==="HTML"?s.ownerDocument.body:s).insertBefore(t,i):(i=s.nodeType===9?s.body:s.nodeName==="HTML"?s.ownerDocument.body:s,i.appendChild(t),s=s._reactRootContainer,s!=null||i.onclick!==null||(i.onclick=dr));else if(f!==4&&(f===27&&oi(t.type)&&(s=t.stateNode,i=null),t=t.child,t!==null))for(yd(t,i,s),t=t.sibling;t!==null;)yd(t,i,s),t=t.sibling}function ru(t,i,s){var f=t.tag;if(f===5||f===6)t=t.stateNode,i?s.insertBefore(t,i):s.appendChild(t);else if(f!==4&&(f===27&&oi(t.type)&&(s=t.stateNode),t=t.child,t!==null))for(ru(t,i,s),t=t.sibling;t!==null;)ru(t,i,s),t=t.sibling}function vx(t){var i=t.stateNode,s=t.memoizedProps;try{for(var f=t.type,g=i.attributes;g.length;)i.removeAttributeNode(g[0]);Pt(i,f,s),i[Dt]=t,i[Gt]=s}catch(y){tt(t,t.return,y)}}var Sr=!1,Nt=!1,vd=!1,bx=typeof WeakSet=="function"?WeakSet:Set,Ot=null;function $E(t,i){if(t=t.containerInfo,qd=ku,t=Mg(t),df(t)){if("selectionStart"in t)var s={start:t.selectionStart,end:t.selectionEnd};else e:{s=(s=t.ownerDocument)&&s.defaultView||window;var f=s.getSelection&&s.getSelection();if(f&&f.rangeCount!==0){s=f.anchorNode;var g=f.anchorOffset,y=f.focusNode;f=f.focusOffset;try{s.nodeType,y.nodeType}catch{s=null;break e}var C=0,D=-1,Z=-1,le=0,ce=0,he=t,ae=null;t:for(;;){for(var oe;he!==s||g!==0&&he.nodeType!==3||(D=C+g),he!==y||f!==0&&he.nodeType!==3||(Z=C+f),he.nodeType===3&&(C+=he.nodeValue.length),(oe=he.firstChild)!==null;)ae=he,he=oe;for(;;){if(he===t)break t;if(ae===s&&++le===g&&(D=C),ae===y&&++ce===f&&(Z=C),(oe=he.nextSibling)!==null)break;he=ae,ae=he.parentNode}he=oe}s=D===-1||Z===-1?null:{start:D,end:Z}}else s=null}s=s||{start:0,end:0}}else s=null;for(Ud={focusedElem:t,selectionRange:s},ku=!1,Ot=i;Ot!==null;)if(i=Ot,t=i.child,(i.subtreeFlags&1028)!==0&&t!==null)t.return=i,Ot=t;else for(;Ot!==null;){switch(i=Ot,y=i.alternate,t=i.flags,i.tag){case 0:if((t&4)!==0&&(t=i.updateQueue,t=t!==null?t.events:null,t!==null))for(s=0;stitle"))),Pt(y,f,s),y[Dt]=t,St(y),f=y;break e;case"link":var C=Ny("link","href",g).get(f+(s.href||""));if(C){for(var D=0;D lt&&(C=lt,lt=Ce,Ce=C);var te=jg(D,Ce),W=jg(D,lt);if(te&&W&&(oe.rangeCount!==1||oe.anchorNode!==te.node||oe.anchorOffset!==te.offset||oe.focusNode!==W.node||oe.focusOffset!==W.offset)){var ie=he.createRange();ie.setStart(te.node,te.offset),oe.removeAllRanges(),Ce>lt?(oe.addRange(ie),oe.extend(W.node,W.offset)):(ie.setEnd(W.node,W.offset),oe.addRange(ie))}}}}for(he=[],oe=D;oe=oe.parentNode;)oe.nodeType===1&&he.push({element:oe,left:oe.scrollLeft,top:oe.scrollTop});for(typeof D.focus=="function"&&D.focus(),D=0;D s?32:s,z.T=null,s=Nd,Nd=null;var y=ii,C=Cr;if(Rt=0,ql=ii=null,Cr=0,(Je&6)!==0)throw Error(l(331));var D=Je;if(Je|=4,zx(y.current),Tx(y,y.current,C,s),Je=D,ro(0,!1),vt&&typeof vt.onPostCommitFiberRoot=="function")try{vt.onPostCommitFiberRoot(Bt,y)}catch{}return!0}finally{G.p=g,z.T=f,Qx(t,i)}}function Kx(t,i,s){i=Nn(s,i),i=ld(t.stateNode,i,2),t=Kr(t,i,2),t!==null&&(wi(t,2),tr(t))}function tt(t,i,s){if(t.tag===3)Kx(t,t,s);else for(;i!==null;){if(i.tag===3){Kx(i,t,s);break}else if(i.tag===1){var f=i.stateNode;if(typeof i.type.getDerivedStateFromError=="function"||typeof f.componentDidCatch=="function"&&(ri===null||!ri.has(f))){t=Nn(s,t),s=J0(2),f=Kr(i,s,2),f!==null&&(W0(s,f,i,t),wi(f,2),tr(f));break}}i=i.return}}function jd(t,i,s){var f=t.pingCache;if(f===null){f=t.pingCache=new YE;var g=new Set;f.set(i,g)}else g=f.get(i),g===void 0&&(g=new Set,f.set(i,g));g.has(s)||(Sd=!0,g.add(s),t=JE.bind(null,t,i,s),i.then(t,t))}function JE(t,i,s){var f=t.pingCache;f!==null&&f.delete(i),t.pingedLanes|=t.suspendedLanes&s,t.warmLanes&=~s,at===t&&(Ue&s)===s&&(xt===4||xt===3&&(Ue&62914560)===Ue&&300>Mt()-au?(Je&2)===0&&Ul(t,0):_d|=s,Il===Ue&&(Il=0)),tr(t)}function Jx(t,i){i===0&&(i=ss()),t=Ti(t,i),t!==null&&(wi(t,i),tr(t))}function WE(t){var i=t.memoizedState,s=0;i!==null&&(s=i.retryLane),Jx(t,s)}function e2(t,i){var s=0;switch(t.tag){case 31:case 13:var f=t.stateNode,g=t.memoizedState;g!==null&&(s=g.retryLane);break;case 19:f=t.stateNode;break;case 22:f=t.stateNode._retryCache;break;default:throw Error(l(314))}f!==null&&f.delete(i),Jx(t,s)}function t2(t,i){return Vt(t,i)}var hu=null,Vl=null,zd=!1,pu=!1,Md=!1,ai=0;function tr(t){t!==Vl&&t.next===null&&(Vl===null?hu=Vl=t:Vl=Vl.next=t),pu=!0,zd||(zd=!0,r2())}function ro(t,i){if(!Md&&pu){Md=!0;do for(var s=!1,f=hu;f!==null;){if(t!==0){var g=f.pendingLanes;if(g===0)var y=0;else{var C=f.suspendedLanes,D=f.pingedLanes;y=(1<<31-We(42|t)+1)-1,y&=g&~(C&~D),y=y&201326741?y&201326741|1:y?y|2:0}y!==0&&(s=!0,ny(f,y))}else y=Ue,y=dl(f,f===at?y:0,f.cancelPendingCommit!==null||f.timeoutHandle!==-1),(y&3)===0||bi(f,y)||(s=!0,ny(f,y));f=f.next}while(s);Md=!1}}function n2(){Wx()}function Wx(){pu=zd=!1;var t=0;ai!==0&&h2()&&(t=ai);for(var i=Mt(),s=null,f=hu;f!==null;){var g=f.next,y=ey(f,i);y===0?(f.next=null,s===null?hu=g:s.next=g,g===null&&(Vl=s)):(s=f,(t!==0||(y&3)!==0)&&(pu=!0)),f=g}Rt!==0&&Rt!==5||ro(t),ai!==0&&(ai=0)}function ey(t,i){for(var s=t.suspendedLanes,f=t.pingedLanes,g=t.expirationTimes,y=t.pendingLanes&-62914561;0 D)break;var ce=Z.transferSize,he=Z.initiatorType;ce&&cy(he)&&(Z=Z.responseEnd,C+=ce*(Z "u"?null:document;function Sy(t,i,s){var f=$l;if(f&&typeof i=="string"&&i){var g=en(i);g='link[rel="'+t+'"][href="'+g+'"]',typeof s=="string"&&(g+='[crossorigin="'+s+'"]'),wy.has(g)||(wy.add(g),t={rel:t,crossOrigin:s,href:i},f.querySelector(g)===null&&(i=f.createElement("link"),Pt(i,"link",t),St(i),f.head.appendChild(i)))}}function S2(t){Tr.D(t),Sy("dns-prefetch",t,null)}function _2(t,i){Tr.C(t,i),Sy("preconnect",t,i)}function k2(t,i,s){Tr.L(t,i,s);var f=$l;if(f&&t&&i){var g='link[rel="preload"][as="'+en(i)+'"]';i==="image"&&s&&s.imageSrcSet?(g+='[imagesrcset="'+en(s.imageSrcSet)+'"]',typeof s.imageSizes=="string"&&(g+='[imagesizes="'+en(s.imageSizes)+'"]')):g+='[href="'+en(t)+'"]';var y=g;switch(i){case"style":y=Gl(t);break;case"script":y=Fl(t)}Mn.has(y)||(t=p({rel:"preload",href:i==="image"&&s&&s.imageSrcSet?void 0:t,as:i},s),Mn.set(y,t),f.querySelector(g)!==null||i==="style"&&f.querySelector(oo(y))||i==="script"&&f.querySelector(so(y))||(i=f.createElement("link"),Pt(i,"link",t),St(i),f.head.appendChild(i)))}}function E2(t,i){Tr.m(t,i);var s=$l;if(s&&t){var f=i&&typeof i.as=="string"?i.as:"script",g='link[rel="modulepreload"][as="'+en(f)+'"][href="'+en(t)+'"]',y=g;switch(f){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":y=Fl(t)}if(!Mn.has(y)&&(t=p({rel:"modulepreload",href:t},i),Mn.set(y,t),s.querySelector(g)===null)){switch(f){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(s.querySelector(so(y)))return}f=s.createElement("link"),Pt(f,"link",t),St(f),s.head.appendChild(f)}}}function N2(t,i,s){Tr.S(t,i,s);var f=$l;if(f&&t){var g=Ur(f).hoistableStyles,y=Gl(t);i=i||"default";var C=g.get(y);if(!C){var D={loading:0,preload:null};if(C=f.querySelector(oo(y)))D.loading=5;else{t=p({rel:"stylesheet",href:t,"data-precedence":i},s),(s=Mn.get(y))&&Xd(t,s);var Z=C=f.createElement("link");St(Z),Pt(Z,"link",t),Z._p=new Promise(function(le,ce){Z.onload=le,Z.onerror=ce}),Z.addEventListener("load",function(){D.loading|=1}),Z.addEventListener("error",function(){D.loading|=2}),D.loading|=4,vu(C,i,f)}C={type:"stylesheet",instance:C,count:1,state:D},g.set(y,C)}}}function C2(t,i){Tr.X(t,i);var s=$l;if(s&&t){var f=Ur(s).hoistableScripts,g=Fl(t),y=f.get(g);y||(y=s.querySelector(so(g)),y||(t=p({src:t,async:!0},i),(i=Mn.get(g))&&Qd(t,i),y=s.createElement("script"),St(y),Pt(y,"link",t),s.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},f.set(g,y))}}function T2(t,i){Tr.M(t,i);var s=$l;if(s&&t){var f=Ur(s).hoistableScripts,g=Fl(t),y=f.get(g);y||(y=s.querySelector(so(g)),y||(t=p({src:t,async:!0,type:"module"},i),(i=Mn.get(g))&&Qd(t,i),y=s.createElement("script"),St(y),Pt(y,"link",t),s.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},f.set(g,y))}}function _y(t,i,s,f){var g=(g=J.current)?yu(g):null;if(!g)throw Error(l(446));switch(t){case"meta":case"title":return null;case"style":return typeof s.precedence=="string"&&typeof s.href=="string"?(i=Gl(s.href),s=Ur(g).hoistableStyles,f=s.get(i),f||(f={type:"style",instance:null,count:0,state:null},s.set(i,f)),f):{type:"void",instance:null,count:0,state:null};case"link":if(s.rel==="stylesheet"&&typeof s.href=="string"&&typeof s.precedence=="string"){t=Gl(s.href);var y=Ur(g).hoistableStyles,C=y.get(t);if(C||(g=g.ownerDocument||g,C={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},y.set(t,C),(y=g.querySelector(oo(t)))&&!y._p&&(C.instance=y,C.state.loading=5),Mn.has(t)||(s={rel:"preload",as:"style",href:s.href,crossOrigin:s.crossOrigin,integrity:s.integrity,media:s.media,hrefLang:s.hrefLang,referrerPolicy:s.referrerPolicy},Mn.set(t,s),y||A2(g,t,s,C.state))),i&&f===null)throw Error(l(528,""));return C}if(i&&f!==null)throw Error(l(529,""));return null;case"script":return i=s.async,s=s.src,typeof s=="string"&&i&&typeof i!="function"&&typeof i!="symbol"?(i=Fl(s),s=Ur(g).hoistableScripts,f=s.get(i),f||(f={type:"script",instance:null,count:0,state:null},s.set(i,f)),f):{type:"void",instance:null,count:0,state:null};default:throw Error(l(444,t))}}function Gl(t){return'href="'+en(t)+'"'}function oo(t){return'link[rel="stylesheet"]['+t+"]"}function ky(t){return p({},t,{"data-precedence":t.precedence,precedence:null})}function A2(t,i,s,f){t.querySelector('link[rel="preload"][as="style"]['+i+"]")?f.loading=1:(i=t.createElement("link"),f.preload=i,i.addEventListener("load",function(){return f.loading|=1}),i.addEventListener("error",function(){return f.loading|=2}),Pt(i,"link",s),St(i),t.head.appendChild(i))}function Fl(t){return'[src="'+en(t)+'"]'}function so(t){return"script[async]"+t}function Ey(t,i,s){if(i.count++,i.instance===null)switch(i.type){case"style":var f=t.querySelector('style[data-href~="'+en(s.href)+'"]');if(f)return i.instance=f,St(f),f;var g=p({},s,{"data-href":s.href,"data-precedence":s.precedence,href:null,precedence:null});return f=(t.ownerDocument||t).createElement("style"),St(f),Pt(f,"style",g),vu(f,s.precedence,t),i.instance=f;case"stylesheet":g=Gl(s.href);var y=t.querySelector(oo(g));if(y)return i.state.loading|=4,i.instance=y,St(y),y;f=ky(s),(g=Mn.get(g))&&Xd(f,g),y=(t.ownerDocument||t).createElement("link"),St(y);var C=y;return C._p=new Promise(function(D,Z){C.onload=D,C.onerror=Z}),Pt(y,"link",f),i.state.loading|=4,vu(y,s.precedence,t),i.instance=y;case"script":return y=Fl(s.src),(g=t.querySelector(so(y)))?(i.instance=g,St(g),g):(f=s,(g=Mn.get(y))&&(f=p({},s),Qd(f,g)),t=t.ownerDocument||t,g=t.createElement("script"),St(g),Pt(g,"link",f),t.head.appendChild(g),i.instance=g);case"void":return null;default:throw Error(l(443,i.type))}else i.type==="stylesheet"&&(i.state.loading&4)===0&&(f=i.instance,i.state.loading|=4,vu(f,s.precedence,t));return i.instance}function vu(t,i,s){for(var f=s.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),g=f.length?f[f.length-1]:null,y=g,C=0;C title"):null)}function j2(t,i,s){if(s===1||i.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof i.precedence!="string"||typeof i.href!="string"||i.href==="")break;return!0;case"link":if(typeof i.rel!="string"||typeof i.href!="string"||i.href===""||i.onLoad||i.onError)break;switch(i.rel){case"stylesheet":return t=i.disabled,typeof i.precedence=="string"&&t==null;default:return!0}case"script":if(i.async&&typeof i.async!="function"&&typeof i.async!="symbol"&&!i.onLoad&&!i.onError&&i.src&&typeof i.src=="string")return!0}return!1}function Ty(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function z2(t,i,s,f){if(s.type==="stylesheet"&&(typeof f.media!="string"||matchMedia(f.media).matches!==!1)&&(s.state.loading&4)===0){if(s.instance===null){var g=Gl(f.href),y=i.querySelector(oo(g));if(y){i=y._p,i!==null&&typeof i=="object"&&typeof i.then=="function"&&(t.count++,t=wu.bind(t),i.then(t,t)),s.state.loading|=4,s.instance=y,St(y);return}y=i.ownerDocument||i,f=ky(f),(g=Mn.get(g))&&Xd(f,g),y=y.createElement("link"),St(y);var C=y;C._p=new Promise(function(D,Z){C.onload=D,C.onerror=Z}),Pt(y,"link",f),s.instance=y}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(s,i),(i=s.state.preload)&&(s.state.loading&3)===0&&(t.count++,s=wu.bind(t),i.addEventListener("load",s),i.addEventListener("error",s))}}var Zd=0;function M2(t,i){return t.stylesheets&&t.count===0&&_u(t,t.stylesheets),0 Zd?50:800)+i);return t.unsuspend=s,function(){t.unsuspend=null,clearTimeout(f),clearTimeout(g)}}:null}function wu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)_u(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var Su=null;function _u(t,i){t.stylesheets=null,t.unsuspend!==null&&(t.count++,Su=new Map,i.forEach(D2,t),Su=null,wu.call(t))}function D2(t,i){if(!(i.state.loading&4)){var s=Su.get(t);if(s)var f=s.get(null);else{s=new Map,Su.set(t,s);for(var g=t.querySelectorAll("link[data-precedence],style[data-precedence]"),y=0;y "u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(n){console.error(n)}}return e(),lh.exports=J2(),lh.exports}var eN=W2();/** * @license lucide-react v0.469.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const tN=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),fw=(...e)=>e.filter((n,r,l)=>!!n&&n.trim()!==""&&l.indexOf(n)===r).join(" ").trim();/** + */const tN=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),dw=(...e)=>e.filter((n,r,l)=>!!n&&n.trim()!==""&&l.indexOf(n)===r).join(" ").trim();/** * @license lucide-react v0.469.0 - ISC * * This source code is licensed under the ISC license. @@ -61,17 +61,17 @@ Error generating stack: `+f.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const rN=V.forwardRef(({color:e="currentColor",size:n=24,strokeWidth:r=2,absoluteStrokeWidth:l,className:a="",children:o,iconNode:u,...c},d)=>V.createElement("svg",{ref:d,...nN,width:n,height:n,stroke:e,strokeWidth:l?Number(r)*24/Number(n):r,className:fw("lucide",a),...c},[...u.map(([h,m])=>V.createElement(h,m)),...Array.isArray(o)?o:[o]]));/** + */const rN=V.forwardRef(({color:e="currentColor",size:n=24,strokeWidth:r=2,absoluteStrokeWidth:l,className:a="",children:o,iconNode:u,...c},d)=>V.createElement("svg",{ref:d,...nN,width:n,height:n,stroke:e,strokeWidth:l?Number(r)*24/Number(n):r,className:dw("lucide",a),...c},[...u.map(([h,m])=>V.createElement(h,m)),...Array.isArray(o)?o:[o]]));/** * @license lucide-react v0.469.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Ve=(e,n)=>{const r=V.forwardRef(({className:l,...a},o)=>V.createElement(rN,{ref:o,iconNode:n,className:fw(`lucide-${tN(e)}`,l),...a}));return r.displayName=`${e}`,r};/** + */const Ve=(e,n)=>{const r=V.forwardRef(({className:l,...a},o)=>V.createElement(rN,{ref:o,iconNode:n,className:dw(`lucide-${tN(e)}`,l),...a}));return r.displayName=`${e}`,r};/** * @license lucide-react v0.469.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const dw=Ve("Activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);/** + */const hw=Ve("Activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);/** * @license lucide-react v0.469.0 - ISC * * This source code is licensed under the ISC license. @@ -121,12 +121,12 @@ Error generating stack: `+f.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const hw=Ve("Coins",[["circle",{cx:"8",cy:"8",r:"6",key:"3yglwk"}],["path",{d:"M18.09 10.37A6 6 0 1 1 10.34 18",key:"t5s6rm"}],["path",{d:"M7 6h1v4",key:"1obek4"}],["path",{d:"m16.71 13.88.7.71-2.82 2.82",key:"1rbuyh"}]]);/** + */const pw=Ve("Coins",[["circle",{cx:"8",cy:"8",r:"6",key:"3yglwk"}],["path",{d:"M18.09 10.37A6 6 0 1 1 10.34 18",key:"t5s6rm"}],["path",{d:"M7 6h1v4",key:"1obek4"}],["path",{d:"m16.71 13.88.7.71-2.82 2.82",key:"1rbuyh"}]]);/** * @license lucide-react v0.469.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const pw=Ve("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);/** + */const mw=Ve("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);/** * @license lucide-react v0.469.0 - ISC * * This source code is licensed under the ISC license. @@ -156,12 +156,12 @@ Error generating stack: `+f.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const mw=Ve("Hash",[["line",{x1:"4",x2:"20",y1:"9",y2:"9",key:"4lhtct"}],["line",{x1:"4",x2:"20",y1:"15",y2:"15",key:"vyu0kd"}],["line",{x1:"10",x2:"8",y1:"3",y2:"21",key:"1ggp8o"}],["line",{x1:"16",x2:"14",y1:"3",y2:"21",key:"weycgp"}]]);/** + */const gw=Ve("Hash",[["line",{x1:"4",x2:"20",y1:"9",y2:"9",key:"4lhtct"}],["line",{x1:"4",x2:"20",y1:"15",y2:"15",key:"vyu0kd"}],["line",{x1:"10",x2:"8",y1:"3",y2:"21",key:"1ggp8o"}],["line",{x1:"16",x2:"14",y1:"3",y2:"21",key:"weycgp"}]]);/** * @license lucide-react v0.469.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const hm=Ve("Layers",[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]]);/** + */const Sc=Ve("Layers",[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]]);/** * @license lucide-react v0.469.0 - ISC * * This source code is licensed under the ISC license. @@ -201,7 +201,7 @@ Error generating stack: `+f.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const gw=Ve("Send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);/** + */const xw=Ve("Send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);/** * @license lucide-react v0.469.0 - ISC * * This source code is licensed under the ISC license. @@ -211,12 +211,12 @@ Error generating stack: `+f.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Ky=Ve("SquareTerminal",[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]]);/** + */const Jy=Ve("SquareTerminal",[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]]);/** * @license lucide-react v0.469.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const xw=Ve("Square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);/** + */const yw=Ve("Square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);/** * @license lucide-react v0.469.0 - ISC * * This source code is licensed under the ISC license. @@ -246,12 +246,12 @@ Error generating stack: `+f.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const kN=Ve("Zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]),Jy=e=>{let n;const r=new Set,l=(h,m)=>{const p=typeof h=="function"?h(n):h;if(!Object.is(p,n)){const x=n;n=m??(typeof p!="object"||p===null)?p:Object.assign({},n,p),r.forEach(v=>v(n,x))}},a=()=>n,c={setState:l,getState:a,getInitialState:()=>d,subscribe:h=>(r.add(h),()=>r.delete(h))},d=n=e(l,a,c);return c},EN=(e=>e?Jy(e):Jy),NN=e=>e;function CN(e,n=NN){const r=ea.useSyncExternalStore(e.subscribe,ea.useCallback(()=>n(e.getState()),[e,n]),ea.useCallback(()=>n(e.getInitialState()),[e,n]));return ea.useDebugValue(r),r}const Wy=e=>{const n=EN(e),r=l=>CN(n,l);return Object.assign(r,n),r},TN=(e=>e?Wy(e):Wy);function Ge(e,n,r="agent"){return e[n]||(e[n]={name:n,status:"pending",type:r,activity:[]}),e[n].activity||(e[n].activity=[]),e[n]}function zu(e,n,r){Ge(e,n).activity.push(r)}function Le(e,n){e[n]&&(e[n]={...e[n]})}function go(e,n,r,l){const a=e[n];if(!(a!=null&&a.for_each_items))return;const o=a.for_each_items.find(u=>u.key===r);o&&o.activity.push(l)}function AN(e,n,r,l){return{parentAgent:e,iteration:n,slotKey:l??e,workflowFile:r,workflowName:"",status:"pending",agents:[],routes:[],parallelGroups:[],forEachGroups:[],nodes:{},groupProgress:{},highlightedEdges:[],entryPoint:null,children:[],agentsCompleted:0,agentsTotal:0,totalCost:0,totalTokens:0,eventLog:[],activityLog:[],workflowOutput:null,workflowFailure:null}}function qn(e,n){if(n.length===0)return null;let r=e[n[0]];for(let l=1;l =0;c--)if(l[c].slotKey===o){u=c;break}if(u===-1)return null;r.push(u),a=l[u],l=a.children}return{indexPath:r,ctx:a}}function jN(e,n){for(let r=e.length-1;r>=0;r--){const l=e[r];if(l.slotKey===n)return{ctx:l,index:r}}return null}const fe=TN((e,n)=>({workflowName:"",workflowStatus:"pending",workflowStartTime:null,workflowFailure:null,workflowFailedAgent:null,workflowYaml:null,conductorVersion:null,entryPoint:null,agents:[],routes:[],parallelGroups:[],forEachGroups:[],nodes:{},groupProgress:{},highlightedEdges:[],agentsCompleted:0,agentsTotal:0,totalCost:0,totalTokens:0,selectedNode:null,wsStatus:"connecting",eventLog:[],activityLog:[],workflowOutput:null,lastEventTime:null,isPaused:!1,wfDepth:0,subworkflowContexts:[],activeContextPath:[],viewContextPath:[],replayMode:!1,replayEvents:[],replayPosition:0,replayTotalEvents:0,replayPlaying:!1,replaySpeed:1,_wsSend:null,setWsSend:r=>{e({_wsSend:r})},sendGateResponse:(r,l,a)=>{const o=fe.getState()._wsSend;o&&o({type:"gate_response",agent_name:r,selected_value:l,additional_input:a||{}})},activeDialog:null,dialogEngaged:!1,engageDialog:()=>{e({dialogEngaged:!0})},sendDialogMessage:(r,l,a)=>{const o=fe.getState()._wsSend;o&&o({type:"dialog_message",agent_name:r,dialog_id:l,content:a})},sendDialogDecline:(r,l)=>{const a=fe.getState()._wsSend;a&&a({type:"dialog_decline",agent_name:r,dialog_id:l})},processEvent:r=>{const l=Mu[r.type];e(a=>{const o={...a,nodes:{...a.nodes},groupProgress:{...a.groupProgress},eventLog:[...a.eventLog],activityLog:[...a.activityLog],lastEventTime:r.timestamp};l&&l(o,r.data,r.timestamp);const u=Du(r);u&&o.eventLog.push(u);const c=Ru(r);return c&&o.activityLog.push(c),o})},replayState:r=>{e(l=>{const a={...l,agentsCompleted:0,totalCost:0,totalTokens:0,nodes:{},groupProgress:{},highlightedEdges:[],eventLog:[],activityLog:[],workflowOutput:null,workflowFailedAgent:null,activeDialog:null,dialogEngaged:!1,wfDepth:0,subworkflowContexts:[],activeContextPath:[]};for(const o of r){const u=Mu[o.type];u&&u(a,o.data,o.timestamp);const c=Du(o);c&&a.eventLog.push(c);const d=Ru(o);d&&a.activityLog.push(d),a.lastEventTime=o.timestamp}return a})},selectNode:r=>{e({selectedNode:r})},setReplayMode:r=>{e(l=>{const a={...l,replayMode:!0,replayEvents:r,replayTotalEvents:r.length,replayPosition:r.length,replayPlaying:!1,replaySpeed:1,agentsCompleted:0,totalCost:0,totalTokens:0,nodes:{},groupProgress:{},highlightedEdges:[],eventLog:[],activityLog:[],workflowOutput:null,workflowFailedAgent:null,activeDialog:null,dialogEngaged:!1,wfDepth:0,subworkflowContexts:[],activeContextPath:[],viewContextPath:[]};for(const o of r){const u=Mu[o.type];u&&u(a,o.data,o.timestamp);const c=Du(o);c&&a.eventLog.push(c);const d=Ru(o);d&&a.activityLog.push(d),a.lastEventTime=o.timestamp}return a})},setReplayPosition:r=>{e(l=>{const a=l.replayEvents.slice(0,r),o={...l,replayPosition:r,agentsCompleted:0,totalCost:0,totalTokens:0,nodes:{},groupProgress:{},highlightedEdges:[],eventLog:[],activityLog:[],workflowOutput:null,workflowFailedAgent:null,workflowStatus:"pending",workflowStartTime:null,workflowName:"",workflowFailure:null,entryPoint:null,agents:[],routes:[],parallelGroups:[],forEachGroups:[],isPaused:!1,lastEventTime:null,activeDialog:null,dialogEngaged:!1,wfDepth:0,subworkflowContexts:[],activeContextPath:[],viewContextPath:[]};for(const u of a){const c=Mu[u.type];c&&c(o,u.data,u.timestamp);const d=Du(u);d&&o.eventLog.push(d);const h=Ru(u);h&&o.activityLog.push(h),o.lastEventTime=u.timestamp}return o})},setReplayPlaying:r=>{e({replayPlaying:r})},setReplaySpeed:r=>{e({replaySpeed:r})},setWsStatus:r=>{e({wsStatus:r})},setEdgeHighlight:(r,l,a)=>{e(o=>({highlightedEdges:[...o.highlightedEdges.filter(u=>!(u.from===r&&u.to===l)),{from:r,to:l,state:a}]}))},clearEdgeHighlight:(r,l)=>{e(a=>({highlightedEdges:a.highlightedEdges.filter(o=>!(o.from===r&&o.to===l))}))},navigateToContext:r=>{e({viewContextPath:r,selectedNode:null})},navigateUp:()=>{e(r=>({viewContextPath:r.viewContextPath.slice(0,-1),selectedNode:null}))},navigateIntoSubworkflow:r=>{const l=n(),a=l.viewContextPath;let o;if(a.length===0)o=l.subworkflowContexts;else{const c=qn(l.subworkflowContexts,a);if(!c)return;o=c.children}const u=jN(o,r);u&&e({viewContextPath:[...a,u.index],selectedNode:null})},getViewedContext:()=>{const r=n();if(r.viewContextPath.length===0)return{workflowName:r.workflowName,agents:r.agents,routes:r.routes,parallelGroups:r.parallelGroups,forEachGroups:r.forEachGroups,nodes:r.nodes,groupProgress:r.groupProgress,highlightedEdges:r.highlightedEdges,entryPoint:r.entryPoint,subworkflowContexts:r.subworkflowContexts};const l=qn(r.subworkflowContexts,r.viewContextPath);return l?{workflowName:l.workflowName,agents:l.agents,routes:l.routes,parallelGroups:l.parallelGroups,forEachGroups:l.forEachGroups,nodes:l.nodes,groupProgress:l.groupProgress,highlightedEdges:l.highlightedEdges,entryPoint:l.entryPoint,subworkflowContexts:l.children}:{workflowName:r.workflowName,agents:r.agents,routes:r.routes,parallelGroups:r.parallelGroups,forEachGroups:r.forEachGroups,nodes:r.nodes,groupProgress:r.groupProgress,highlightedEdges:r.highlightedEdges,entryPoint:r.entryPoint,subworkflowContexts:r.subworkflowContexts}},getBreadcrumbs:()=>{const r=n(),l=[{label:r.workflowName||"Root",path:[]}];let a=r.subworkflowContexts;for(let o=0;o 0?r=((a=Vi(e.subworkflowContexts,l))==null?void 0:a.ctx)??null:e.activeContextPath.length>0&&(r=qn(e.subworkflowContexts,e.activeContextPath)),r){const o=r;return{nodes:o.nodes,groupProgress:o.groupProgress,routes:o.routes,highlightedEdges:o.highlightedEdges,addCost:u=>{o.totalCost+=u,e.totalCost+=u},addTokens:u=>{o.totalTokens+=u,e.totalTokens+=u},incrCompleted:()=>{o.agentsCompleted++,e.agentsCompleted++}}}return{nodes:e.nodes,groupProgress:e.groupProgress,routes:e.routes,highlightedEdges:e.highlightedEdges,addCost:o=>{e.totalCost+=o},addTokens:o=>{e.totalTokens+=o},incrCompleted:()=>{e.agentsCompleted++}}}const Mu={workflow_started:(e,n,r)=>{var a;const l=n;if(e.wfDepth===0){e.workflowStatus="running",e.workflowStartTime=r??Date.now()/1e3,e.workflowName=l.name||"",e.workflowYaml=n.yaml_source??null,e.conductorVersion=n.version??null,e.entryPoint=l.entry_point||null,e.agents=l.agents||[],e.routes=l.routes||[],e.parallelGroups=l.parallel_groups||[],e.forEachGroups=l.for_each_groups||[],Ge(e.nodes,"$start","start"),e.nodes.$start.status="running",Le(e.nodes,"$start");const o=new Set,u=new Set;for(const c of e.parallelGroups){for(const d of c.agents)o.add(d);u.add(c.name),Ge(e.nodes,c.name,"parallel_group"),e.groupProgress[c.name]={total:c.agents.length,completed:0,failed:0};for(const d of c.agents)Ge(e.nodes,d,"agent")}for(const c of e.forEachGroups)u.add(c.name),Ge(e.nodes,c.name,"for_each_group"),e.groupProgress[c.name]={total:0,completed:0,failed:0};for(const c of e.agents)if(!u.has(c.name)&&!o.has(c.name)){const d=c.type||"agent";Ge(e.nodes,c.name,d),c.model&&(e.nodes[c.name].model=c.model),u.add(c.name)}e.agentsTotal=u.size}else{const o=n.subworkflow_path,u=Array.isArray(o)&&o.length>0?((a=Vi(e.subworkflowContexts,o))==null?void 0:a.ctx)??null:qn(e.subworkflowContexts,e.activeContextPath);if(u){u.workflowName=l.name||"",u.status="running",u.entryPoint=l.entry_point||null,u.agents=l.agents||[],u.routes=l.routes||[],u.parallelGroups=l.parallel_groups||[],u.forEachGroups=l.for_each_groups||[],Ge(u.nodes,"$start","start"),u.nodes.$start.status="running";const c=new Set,d=new Set;for(const h of u.parallelGroups){for(const m of h.agents)c.add(m);d.add(h.name),Ge(u.nodes,h.name,"parallel_group"),u.groupProgress[h.name]={total:h.agents.length,completed:0,failed:0};for(const m of h.agents)Ge(u.nodes,m,"agent")}for(const h of u.forEachGroups)d.add(h.name),Ge(u.nodes,h.name,"for_each_group"),u.groupProgress[h.name]={total:0,completed:0,failed:0};for(const h of u.agents)if(!d.has(h.name)&&!c.has(h.name)){const m=h.type||"agent";Ge(u.nodes,h.name,m),h.model&&(u.nodes[h.name].model=h.model),d.add(h.name)}u.agentsTotal=d.size}}e.wfDepth++},agent_started:(e,n,r)=>{const l=n,a=ht(e,n),o=Ge(a.nodes,l.agent_name);o.iteration!=null&&(o.output!=null||o.error_type!=null)&&(o.iterationHistory||(o.iterationHistory=[]),o.iterationHistory.push({iteration:o.iteration,prompt:o.prompt,output:o.output,elapsed:o.elapsed,model:o.model,tokens:o.tokens,input_tokens:o.input_tokens,output_tokens:o.output_tokens,cost_usd:o.cost_usd,activity:o.activity,error_type:o.error_type,error_message:o.error_message})),o.status="running",o.iteration=l.iteration,o.startedAt=r??Date.now()/1e3,o.activity=[],l.context_window_max!=null&&(o.context_window_max=l.context_window_max),o.prompt=void 0,o.output=void 0,o.error_type=void 0,o.error_message=void 0,Le(a.nodes,l.agent_name)},agent_completed:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.status="completed",l.incrCompleted(),a.elapsed=r.elapsed,a.model=r.model,a.tokens=r.tokens,a.input_tokens=r.input_tokens,a.output_tokens=r.output_tokens,a.cost_usd=r.cost_usd,a.output=r.output,a.output_keys=r.output_keys,a.context_window_used=r.context_window_used,a.context_window_max=r.context_window_max,r.context_window_used!=null&&r.context_window_max!=null&&r.context_window_max>0&&(a.context_pct=Math.round(r.context_window_used/r.context_window_max*100)),r.cost_usd&&l.addCost(r.cost_usd),r.tokens&&l.addTokens(r.tokens),Le(l.nodes,r.agent_name)},agent_failed:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.status="failed",a.elapsed=r.elapsed,a.error_type=r.error_type,a.error_message=r.message;for(const o of l.routes)o.to===r.agent_name&&l.highlightedEdges.push({from:o.from,to:o.to,state:"failed"});Le(l.nodes,r.agent_name)},agent_prompt_rendered:(e,n)=>{var u;const r=n,l=n.item_key,a=ht(e,n),o=Ge(a.nodes,r.agent_name);if(o.prompt=r.rendered_prompt,o.context_keys=r.context_keys,l){go(a.nodes,r.agent_name,l,{type:"prompt",icon:"📝",label:"prompt",text:"Prompt rendered",detail:((u=r.rendered_prompt)==null?void 0:u.slice(0,500))||null});const c=a.nodes[r.agent_name];if(c!=null&&c.for_each_items){const d=c.for_each_items.find(h=>h.key===l);d&&(d.prompt=r.rendered_prompt)}}Le(a.nodes,r.agent_name)},agent_reasoning:(e,n)=>{const r=n,l=n.item_key,a=ht(e,n),o={type:"reasoning",icon:"💭",label:"thinking",text:r.content};zu(a.nodes,r.agent_name,o),l&&go(a.nodes,r.agent_name,l,o),Le(a.nodes,r.agent_name)},agent_tool_start:(e,n)=>{const r=n,l=n.item_key,a=ht(e,n),o={type:"tool-start",icon:"🔧",label:"tool",text:r.tool_name,detail:r.arguments||null};zu(a.nodes,r.agent_name,o),l&&go(a.nodes,r.agent_name,l,o),Le(a.nodes,r.agent_name)},agent_tool_complete:(e,n)=>{const r=n,l=n.item_key,a=ht(e,n),o={type:"tool-complete",icon:"✓",label:"result",text:r.tool_name||"done",detail:r.result||null};zu(a.nodes,r.agent_name,o),l&&go(a.nodes,r.agent_name,l,o),Le(a.nodes,r.agent_name)},agent_turn_start:(e,n)=>{const r=n,l=n.item_key,a=ht(e,n),o={type:"turn",icon:"⏳",label:"turn",text:`Turn ${r.turn??"?"}`};zu(a.nodes,r.agent_name,o),l&&go(a.nodes,r.agent_name,l,o),Le(a.nodes,r.agent_name)},agent_message:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.latest_message=r.content,Le(l.nodes,r.agent_name)},script_started:(e,n,r)=>{const l=n,a=ht(e,n),o=Ge(a.nodes,l.agent_name);o.status="running",o.startedAt=r??Date.now()/1e3,Le(a.nodes,l.agent_name)},script_completed:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.status="completed",l.incrCompleted(),a.elapsed=r.elapsed,a.stdout=r.stdout,a.stderr=r.stderr,a.exit_code=r.exit_code,Le(l.nodes,r.agent_name)},script_failed:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.status="failed",a.elapsed=r.elapsed,a.error_type=r.error_type,a.error_message=r.message,Le(l.nodes,r.agent_name)},gate_presented:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.status="waiting",a.options=r.options,a.option_details=r.option_details,a.prompt=r.prompt,Le(l.nodes,r.agent_name)},gate_resolved:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.status="completed",l.incrCompleted(),a.selected_option=r.selected_option,a.route=r.route,a.additional_input=r.additional_input,Le(l.nodes,r.agent_name)},route_taken:(e,n)=>{const r=n;ht(e,n).highlightedEdges.push({from:r.from_agent,to:r.to_agent,state:"taken"})},parallel_started:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.group_name,"parallel_group");a.status="running",l.groupProgress[r.group_name]&&(l.groupProgress[r.group_name].total=r.agents.length,l.groupProgress[r.group_name].completed=0,l.groupProgress[r.group_name].failed=0),Le(l.nodes,r.group_name)},parallel_agent_completed:(e,n)=>{const r=n,l=ht(e,n);l.groupProgress[r.group_name]&&l.groupProgress[r.group_name].completed++;const a=Ge(l.nodes,r.agent_name);a.status="completed",a.elapsed=r.elapsed,a.model=r.model,a.tokens=r.tokens,a.cost_usd=r.cost_usd,a.context_window_used=r.context_window_used,a.context_window_max=r.context_window_max,r.context_window_used!=null&&r.context_window_max!=null&&r.context_window_max>0&&(a.context_pct=Math.round(r.context_window_used/r.context_window_max*100)),r.cost_usd&&l.addCost(r.cost_usd),r.tokens&&l.addTokens(r.tokens),Le(l.nodes,r.agent_name),Le(l.nodes,r.group_name)},parallel_agent_failed:(e,n)=>{const r=n,l=ht(e,n);l.groupProgress[r.group_name]&&l.groupProgress[r.group_name].failed++;const a=Ge(l.nodes,r.agent_name);a.status="failed",a.elapsed=r.elapsed,a.error_type=r.error_type,a.error_message=r.message,Le(l.nodes,r.agent_name),Le(l.nodes,r.group_name)},parallel_completed:(e,n)=>{const r=n,l=ht(e,n);l.incrCompleted();const a=Ge(l.nodes,r.group_name,"parallel_group");a.status=r.failure_count===0?"completed":"failed",Le(l.nodes,r.group_name)},for_each_started:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.group_name,"for_each_group");a.status="running",a.for_each_items=[],l.groupProgress[r.group_name]&&(l.groupProgress[r.group_name].total=r.item_count,l.groupProgress[r.group_name].completed=0,l.groupProgress[r.group_name].failed=0),Le(l.nodes,r.group_name)},for_each_item_started:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.group_name,"for_each_group");a.for_each_items||(a.for_each_items=[]),a.for_each_items.push({key:r.item_key??String(r.index),index:r.index,status:"running",activity:[]}),Le(l.nodes,r.group_name)},for_each_item_completed:(e,n)=>{const r=n,l=ht(e,n);l.groupProgress[r.group_name]&&l.groupProgress[r.group_name].completed++;const a=Ge(l.nodes,r.group_name,"for_each_group");if(a.for_each_items){const o=r.item_key??String(r.index),u=a.for_each_items.find(c=>c.key===o);u&&(u.status="completed",u.elapsed=r.elapsed,u.tokens=r.tokens,u.cost_usd=r.cost_usd,u.output=r.output)}Le(l.nodes,r.group_name)},for_each_item_failed:(e,n)=>{const r=n,l=ht(e,n);l.groupProgress[r.group_name]&&l.groupProgress[r.group_name].failed++;const a=Ge(l.nodes,r.group_name,"for_each_group");if(a.for_each_items){const o=r.item_key??String(r.index),u=a.for_each_items.find(c=>c.key===o);u&&(u.status="failed",u.elapsed=r.elapsed,u.error_type=r.error_type,u.error_message=r.message)}Le(l.nodes,r.group_name)},for_each_completed:(e,n)=>{const r=n,l=ht(e,n);l.incrCompleted();const a=Ge(l.nodes,r.group_name,"for_each_group");a.status=(r.failure_count??0)===0?"completed":"failed",a.elapsed=r.elapsed,a.success_count=r.success_count,a.failure_count=r.failure_count,Le(l.nodes,r.group_name)},workflow_completed:(e,n)=>{var r;if(e.wfDepth=Math.max(0,e.wfDepth-1),e.wfDepth===0){const l=n;e.workflowStatus="completed",e.isPaused=!1,e.workflowOutput=l.output??null,e.nodes.$end&&(e.nodes.$end.status="completed",Le(e.nodes,"$end")),e.nodes.$start&&(e.nodes.$start.status="completed",Le(e.nodes,"$start")),e.highlightedEdges=[]}else{const l=n,a=l.subworkflow_path?(r=Vi(e.subworkflowContexts,l.subworkflow_path))==null?void 0:r.ctx:qn(e.subworkflowContexts,e.activeContextPath);a&&(a.status="completed",a.workflowOutput=l.output??null,a.nodes.$end&&(a.nodes.$end.status="completed"),a.nodes.$start&&(a.nodes.$start.status="completed"),a.highlightedEdges=[])}},workflow_failed:(e,n)=>{var l;e.wfDepth=Math.max(0,e.wfDepth-1);const r=n;if(e.wfDepth===0){if(e.workflowStatus="failed",e.isPaused=!1,e.workflowFailedAgent=r.agent_name||null,r.agent_name&&e.nodes[r.agent_name]){e.nodes[r.agent_name].status="failed",Le(e.nodes,r.agent_name);for(const a of e.routes)a.to===r.agent_name&&e.highlightedEdges.push({from:a.from,to:a.to,state:"failed"})}e.workflowFailure={error_type:r.error_type,message:r.message,elapsed_seconds:r.elapsed_seconds,timeout_seconds:r.timeout_seconds,current_agent:r.current_agent},e.nodes.$start&&(e.nodes.$start.status="completed",Le(e.nodes,"$start"))}else{const a=r.subworkflow_path?(l=Vi(e.subworkflowContexts,r.subworkflow_path))==null?void 0:l.ctx:qn(e.subworkflowContexts,e.activeContextPath);a&&(a.status="failed",a.workflowFailure={error_type:r.error_type,message:r.message})}},subworkflow_started:(e,n)=>{const r=n,l=r.slot_key??(r.item_key!=null?`${r.agent_name}[${r.item_key}]`:r.agent_name),a=AN(r.agent_name,r.iteration??1,r.workflow,l);let o;if(r.parent_path!==void 0){const d=Vi(e.subworkflowContexts,r.parent_path);if(!d)return;o=d.indexPath}else o=e.activeContextPath;const u=e.viewContextPath.length===e.activeContextPath.length&&e.viewContextPath.every((d,h)=>d===e.activeContextPath[h]);let c;if(o.length===0)e.subworkflowContexts.push(a),c=[e.subworkflowContexts.length-1];else{const d=qn(e.subworkflowContexts,o);if(!d)return;d.children.push(a),c=[...o,d.children.length-1]}if(e.activeContextPath=c,u&&(e.viewContextPath=c),o.length===0){const d=e.nodes[r.agent_name];d&&(d.status="running",Le(e.nodes,r.agent_name))}else{const d=qn(e.subworkflowContexts,o);if(d){const h=d.nodes[r.agent_name];h&&(h.status="running",Le(d.nodes,r.agent_name))}}},subworkflow_completed:(e,n)=>{var o;const r=n;let l;if(r.parent_path!==void 0){const u=Vi(e.subworkflowContexts,r.parent_path);if(!u)return;l=u.indexPath}else l=e.activeContextPath;const a=l.length===0?e.nodes:(o=qn(e.subworkflowContexts,l))==null?void 0:o.nodes;if(a){const u=a[r.agent_name];if(u){if(r.item_key==null)if(u.status="completed",u.elapsed=r.elapsed,l.length===0)e.agentsCompleted++;else{const c=qn(e.subworkflowContexts,l);c&&c.agentsCompleted++}Le(a,r.agent_name)}}e.activeContextPath=l},subworkflow_failed:(e,n)=>{var o;const r=n;let l;if(r.parent_path!==void 0){const u=Vi(e.subworkflowContexts,r.parent_path);if(!u)return;l=u.indexPath}else l=e.activeContextPath;const a=l.length===0?e.nodes:(o=qn(e.subworkflowContexts,l))==null?void 0:o.nodes;if(a){const u=a[r.agent_name];u&&r.item_key==null&&(u.status="failed",u.elapsed=r.elapsed,u.error_type=r.error_type,u.error_message=r.message,Le(a,r.agent_name))}e.activeContextPath=l},checkpoint_saved:(e,n)=>{const r=n;r.path&&e.workflowFailure&&(e.workflowFailure={...e.workflowFailure,checkpoint_path:r.path})},agent_paused:(e,n)=>{const r=n,l=Ge(e.nodes,r.agent_name);l.status="waiting",l.activity.push({type:"agent_paused",icon:"⏸",label:"Paused",text:"Agent paused — click Resume to re-execute"}),Le(e.nodes,r.agent_name),e.isPaused=!0},agent_resumed:(e,n)=>{const r=n,l=Ge(e.nodes,r.agent_name);l.status="running",l.activity.push({type:"agent_resumed",icon:"▶",label:"Resumed",text:"Agent resumed — re-executing"}),Le(e.nodes,r.agent_name),e.isPaused=!1},dialog_started:(e,n)=>{const r=n,l=Ge(e.nodes,r.agent_name);l.dialog_id=r.dialog_id,l.dialog_messages=[],l.dialog_active=!0,l.dialog_awaiting_response=!1,e.activeDialog={agentName:r.agent_name,dialogId:r.dialog_id},e.dialogEngaged=!1,Le(e.nodes,r.agent_name)},dialog_message:(e,n)=>{const r=n,l=Ge(e.nodes,r.agent_name);l.dialog_messages||(l.dialog_messages=[]),l.dialog_messages.push({role:r.role,content:r.content}),r.role==="user"?l.dialog_awaiting_response=!0:r.role==="agent"&&(l.dialog_awaiting_response=!1),Le(e.nodes,r.agent_name)},dialog_completed:(e,n)=>{const r=n,l=Ge(e.nodes,r.agent_name);l.dialog_active=!1,l.dialog_awaiting_response=!1,e.activeDialog=null,e.dialogEngaged=!1,Le(e.nodes,r.agent_name)}};function Du(e){var l,a;const n=e.timestamp,r=e.data;switch(e.type){case"workflow_started":return{timestamp:n,level:"info",source:"workflow",message:`Workflow "${r.name||""}" started`};case"agent_started":return{timestamp:n,level:"info",source:String(r.agent_name),message:`Agent started${r.iteration!=null?` (iteration ${r.iteration})`:""}`};case"agent_completed":return{timestamp:n,level:"success",source:String(r.agent_name),message:`Agent completed${r.elapsed!=null?` in ${Qu(r.elapsed)}`:""}${r.tokens!=null?` · ${r.tokens.toLocaleString()} tokens`:""}${r.cost_usd!=null?` · $${r.cost_usd.toFixed(4)}`:""}`};case"agent_failed":return{timestamp:n,level:"error",source:String(r.agent_name),message:`Agent failed: ${r.message||r.error_type||"unknown error"}`};case"script_started":return{timestamp:n,level:"info",source:String(r.agent_name),message:"Script started"};case"script_completed":return{timestamp:n,level:"success",source:String(r.agent_name),message:`Script completed (exit ${r.exit_code??"?"})${r.elapsed!=null?` in ${Qu(r.elapsed)}`:""}`};case"script_failed":return{timestamp:n,level:"error",source:String(r.agent_name),message:`Script failed: ${r.message||r.error_type||"unknown error"}`};case"gate_presented":return{timestamp:n,level:"warning",source:String(r.agent_name),message:"Waiting for human input…"};case"gate_resolved":return{timestamp:n,level:"success",source:String(r.agent_name),message:`Gate resolved → ${r.selected_option||"continue"}`};case"route_taken":return{timestamp:n,level:"debug",source:"router",message:`${r.from_agent} → ${r.to_agent}`};case"parallel_started":return{timestamp:n,level:"info",source:String(r.group_name),message:`Parallel group started (${((l=r.agents)==null?void 0:l.length)||"?"} agents)`};case"parallel_completed":return{timestamp:n,level:r.failure_count===0?"success":"error",source:String(r.group_name),message:`Parallel group completed${r.failure_count>0?` with ${r.failure_count} failure(s)`:""}`};case"for_each_started":return{timestamp:n,level:"info",source:String(r.group_name),message:`For-each started (${r.item_count} items)`};case"for_each_completed":return{timestamp:n,level:(r.failure_count??0)===0?"success":"error",source:String(r.group_name),message:`For-each completed · ${r.success_count} succeeded${r.failure_count>0?` · ${r.failure_count} failed`:""}`};case"workflow_completed":return{timestamp:n,level:"success",source:"workflow",message:`Workflow completed${r.elapsed!=null?` in ${Qu(r.elapsed)}`:""}`};case"workflow_failed":return{timestamp:n,level:"error",source:"workflow",message:`Workflow failed: ${r.message||r.error_type||"unknown error"}`};case"checkpoint_saved":return{timestamp:n,level:"info",source:"workflow",message:`Checkpoint saved: ${((a=r.path)==null?void 0:a.split("/").pop())||"unknown"}`};case"agent_paused":return{timestamp:n,level:"warning",source:String(r.agent_name),message:"Agent paused — waiting for resume"};case"agent_resumed":return{timestamp:n,level:"info",source:String(r.agent_name),message:"Agent resumed — re-executing"};case"dialog_started":return{timestamp:n,level:"warning",source:String(r.agent_name),message:"Dialog started — waiting for user…"};case"dialog_completed":return{timestamp:n,level:"success",source:String(r.agent_name),message:`Dialog completed (${r.turn_count||0} messages)`};default:return null}}function Qu(e){if(e<1)return`${(e*1e3).toFixed(0)}ms`;if(e<60)return`${e.toFixed(1)}s`;const n=Math.floor(e/60),r=(e%60).toFixed(0);return`${n}m ${r}s`}function Ru(e){const n=e.timestamp,r=e.data;switch(e.type){case"agent_started":return{timestamp:n,source:String(r.agent_name),type:"turn",message:`Agent started${r.iteration!=null?` (iteration ${r.iteration})`:""}`};case"agent_prompt_rendered":return{timestamp:n,source:String(r.agent_name),type:"prompt",message:"Prompt rendered",detail:xo(String(r.rendered_prompt||""),500)};case"agent_reasoning":return{timestamp:n,source:String(r.agent_name),type:"reasoning",message:String(r.content||"")};case"agent_tool_start":return{timestamp:n,source:String(r.agent_name),type:"tool-start",message:`→ ${r.tool_name}`,detail:r.arguments?xo(String(r.arguments),300):null};case"agent_tool_complete":return{timestamp:n,source:String(r.agent_name),type:"tool-complete",message:`← ${r.tool_name||"done"}`,detail:r.result?xo(String(r.result),300):null};case"agent_turn_start":return{timestamp:n,source:String(r.agent_name),type:"turn",message:`Turn ${r.turn??"?"}`};case"agent_message":return{timestamp:n,source:String(r.agent_name),type:"message",message:xo(String(r.content||""),500)};case"agent_completed":return{timestamp:n,source:String(r.agent_name),type:"turn",message:`Completed${r.elapsed!=null?` in ${Qu(r.elapsed)}`:""}${r.tokens!=null?` · ${r.tokens.toLocaleString()} tokens`:""}`};case"agent_failed":return{timestamp:n,source:String(r.agent_name),type:"turn",message:`Failed: ${r.message||r.error_type||"unknown"}`};case"script_started":return{timestamp:n,source:String(r.agent_name),type:"turn",message:"Script started"};case"script_completed":return{timestamp:n,source:String(r.agent_name),type:"tool-complete",message:`Script completed (exit ${r.exit_code??"?"})`,detail:r.stdout?xo(String(r.stdout),300):null};case"script_failed":return{timestamp:n,source:String(r.agent_name),type:"turn",message:`Script failed: ${r.message||r.error_type||"unknown"}`};default:return null}}function xo(e,n){return e.length<=n?e:e.slice(0,n)+"…"}function ev(e){const n=e.match(/^(\s*)/);return n?n[1].length:0}function zN(e){const n=new Map;for(let r=0;r a)o=u;else break}o>r&&n.set(r,o)}return n}function MN(e){if(/^\s*#/.test(e))return b.jsx("span",{className:"text-emerald-500/70",children:e});const n=e.match(/^(\s*)(- )?([a-zA-Z_][\w.-]*)(:\s*)(.*)/);if(n){const[,l,a,o,u,c]=n;return b.jsxs("span",{children:[l,a??"",b.jsx("span",{className:"text-sky-400",children:o}),b.jsx("span",{className:"text-[var(--text-muted)]",children:u}),tv(c)]})}const r=e.match(/^(\s*)(- )(.*)/);if(r){const[,l,a,o]=r;return b.jsxs("span",{children:[l,b.jsx("span",{className:"text-[var(--text-muted)]",children:a}),tv(o)]})}return b.jsx("span",{children:e})}function tv(e){if(!e)return"";const n=e.indexOf(" #"),r=n>=0?e.slice(0,n):e,l=n>=0?e.slice(n):"";let a=r;return/^(true|false|null|yes|no)$/i.test(r.trim())?a=b.jsx("span",{className:"text-amber-400",children:r}):/^\d+(\.\d+)?$/.test(r.trim())?a=b.jsx("span",{className:"text-amber-400",children:r}):/^["'].*["']$/.test(r.trim())?a=b.jsx("span",{className:"text-green-400",children:r}):(r.includes("|")||r.includes(">"))&&(a=b.jsx("span",{className:"text-[var(--text-secondary)]",children:r})),b.jsxs(b.Fragment,{children:[a,l&&b.jsx("span",{className:"text-emerald-500/70",children:l})]})}function DN({yaml:e,onClose:n}){const[r,l]=V.useState(new Set);V.useEffect(()=>{const d=h=>{h.key==="Escape"&&n()};return window.addEventListener("keydown",d),()=>window.removeEventListener("keydown",d)},[n]);const a=V.useMemo(()=>e.split(` -`),[e]),o=V.useMemo(()=>zN(a),[a]),u=V.useCallback(d=>{l(h=>{const m=new Set(h);return m.has(d)?m.delete(d):m.add(d),m})},[]),c=V.useMemo(()=>{const d=[];let h=-1;for(let m=0;m b.jsxs("div",{className:"flex",children:[b.jsx("span",{className:"inline-flex items-center justify-center flex-shrink-0",style:{width:"1.25rem"},children:m?b.jsx("button",{onClick:()=>u(d),className:"text-[var(--text-muted)] hover:text-[var(--text)] p-0 leading-none",style:{background:"none",border:"none",cursor:"pointer"},children:p?b.jsx(Rr,{className:"w-3 h-3"}):b.jsx(il,{className:"w-3 h-3"})}):null}),b.jsxs("span",{className:"flex-1",children:[MN(h),p&&b.jsx("span",{className:"text-[var(--text-muted)] text-[11px] ml-2 px-1.5 py-0.5 rounded bg-[var(--surface-hover)] cursor-pointer",onClick:()=>u(d),children:"···"})]})]},d))})})]})]})}function RN(){const e=fe(_=>_.workflowName),n=fe(_=>_.workflowStatus),r=fe(_=>_.isPaused),l=fe(_=>_.workflowYaml),a=fe(_=>_.conductorVersion),[o,u]=V.useState(!1),[c,d]=V.useState(!1),[h,m]=V.useState(!1),[p,x]=V.useState(!1),v=n==="running"||n==="pending";V.useEffect(()=>{r||(u(!1),d(!1),m(!1))},[r]);const w=async()=>{u(!0);try{await fetch("/api/stop",{method:"POST"})}catch(_){console.error("Failed to stop agent:",_),u(!1)}},E=async()=>{d(!0);try{await fetch("/api/resume",{method:"POST"})}catch(_){console.error("Failed to resume agent:",_),d(!1)}},S=async()=>{m(!0);try{await fetch("/api/kill",{method:"POST"})}catch(_){console.error("Failed to kill workflow:",_),m(!1)}};return b.jsxs("header",{className:"flex items-center justify-between px-4 py-2 bg-[var(--surface)] border-b border-[var(--border)] flex-shrink-0",children:[b.jsxs("div",{className:"flex items-center gap-2",children:[b.jsx(dw,{className:"w-4 h-4 text-[var(--running)]"}),b.jsx("h1",{className:"text-sm font-semibold text-[var(--text)]",children:"Conductor"}),e&&b.jsxs("span",{className:"text-sm text-[var(--text-muted)] font-normal",children:["— ",e]})]}),b.jsxs("div",{className:"flex items-center gap-3",children:[r?b.jsxs(b.Fragment,{children:[b.jsxs("button",{onClick:E,disabled:c,className:`flex items-center gap-1.5 px-2.5 py-1 text-xs font-medium rounded\r + */const kN=Ve("Zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]),Wy=e=>{let n;const r=new Set,l=(h,m)=>{const p=typeof h=="function"?h(n):h;if(!Object.is(p,n)){const x=n;n=m??(typeof p!="object"||p===null)?p:Object.assign({},n,p),r.forEach(v=>v(n,x))}},a=()=>n,c={setState:l,getState:a,getInitialState:()=>d,subscribe:h=>(r.add(h),()=>r.delete(h))},d=n=e(l,a,c);return c},EN=(e=>e?Wy(e):Wy),NN=e=>e;function CN(e,n=NN){const r=ea.useSyncExternalStore(e.subscribe,ea.useCallback(()=>n(e.getState()),[e,n]),ea.useCallback(()=>n(e.getInitialState()),[e,n]));return ea.useDebugValue(r),r}const ev=e=>{const n=EN(e),r=l=>CN(n,l);return Object.assign(r,n),r},TN=(e=>e?ev(e):ev);function Ge(e,n,r="agent"){return e[n]||(e[n]={name:n,status:"pending",type:r,activity:[]}),e[n].activity||(e[n].activity=[]),e[n]}function zu(e,n,r){Ge(e,n).activity.push(r)}function Le(e,n){e[n]&&(e[n]={...e[n]})}function go(e,n,r,l){const a=e[n];if(!(a!=null&&a.for_each_items))return;const o=a.for_each_items.find(u=>u.key===r);o&&o.activity.push(l)}function AN(e,n,r,l){return{parentAgent:e,iteration:n,slotKey:l??e,workflowFile:r,workflowName:"",status:"pending",agents:[],routes:[],parallelGroups:[],forEachGroups:[],nodes:{},groupProgress:{},highlightedEdges:[],entryPoint:null,children:[],agentsCompleted:0,agentsTotal:0,totalCost:0,totalTokens:0,eventLog:[],activityLog:[],workflowOutput:null,workflowFailure:null}}function qn(e,n){if(n.length===0)return null;let r=e[n[0]];for(let l=1;l =0;c--)if(l[c].slotKey===o){u=c;break}if(u===-1)return null;r.push(u),a=l[u],l=a.children}return{indexPath:r,ctx:a}}function jN(e,n){for(let r=e.length-1;r>=0;r--){const l=e[r];if(l.slotKey===n)return{ctx:l,index:r}}return null}const fe=TN((e,n)=>({workflowName:"",workflowStatus:"pending",workflowStartTime:null,workflowFailure:null,workflowFailedAgent:null,workflowYaml:null,conductorVersion:null,entryPoint:null,agents:[],routes:[],parallelGroups:[],forEachGroups:[],nodes:{},groupProgress:{},highlightedEdges:[],agentsCompleted:0,agentsTotal:0,totalCost:0,totalTokens:0,selectedNode:null,wsStatus:"connecting",eventLog:[],activityLog:[],workflowOutput:null,lastEventTime:null,isPaused:!1,wfDepth:0,subworkflowContexts:[],activeContextPath:[],viewContextPath:[],replayMode:!1,replayEvents:[],replayPosition:0,replayTotalEvents:0,replayPlaying:!1,replaySpeed:1,_wsSend:null,setWsSend:r=>{e({_wsSend:r})},sendGateResponse:(r,l,a)=>{const o=fe.getState()._wsSend;o&&o({type:"gate_response",agent_name:r,selected_value:l,additional_input:a||{}})},activeDialog:null,dialogEngaged:!1,engageDialog:()=>{e({dialogEngaged:!0})},sendDialogMessage:(r,l,a)=>{const o=fe.getState()._wsSend;o&&o({type:"dialog_message",agent_name:r,dialog_id:l,content:a})},sendDialogDecline:(r,l)=>{const a=fe.getState()._wsSend;a&&a({type:"dialog_decline",agent_name:r,dialog_id:l})},processEvent:r=>{const l=Mu[r.type];e(a=>{const o={...a,nodes:{...a.nodes},groupProgress:{...a.groupProgress},eventLog:[...a.eventLog],activityLog:[...a.activityLog],lastEventTime:r.timestamp};l&&l(o,r.data,r.timestamp);const u=Du(r);u&&o.eventLog.push(u);const c=Ru(r);return c&&o.activityLog.push(c),o})},replayState:r=>{e(l=>{const a={...l,agentsCompleted:0,totalCost:0,totalTokens:0,nodes:{},groupProgress:{},highlightedEdges:[],eventLog:[],activityLog:[],workflowOutput:null,workflowFailedAgent:null,activeDialog:null,dialogEngaged:!1,wfDepth:0,subworkflowContexts:[],activeContextPath:[]};for(const o of r){const u=Mu[o.type];u&&u(a,o.data,o.timestamp);const c=Du(o);c&&a.eventLog.push(c);const d=Ru(o);d&&a.activityLog.push(d),a.lastEventTime=o.timestamp}return a})},selectNode:r=>{e({selectedNode:r})},setReplayMode:r=>{e(l=>{const a={...l,replayMode:!0,replayEvents:r,replayTotalEvents:r.length,replayPosition:r.length,replayPlaying:!1,replaySpeed:1,agentsCompleted:0,totalCost:0,totalTokens:0,nodes:{},groupProgress:{},highlightedEdges:[],eventLog:[],activityLog:[],workflowOutput:null,workflowFailedAgent:null,activeDialog:null,dialogEngaged:!1,wfDepth:0,subworkflowContexts:[],activeContextPath:[],viewContextPath:[]};for(const o of r){const u=Mu[o.type];u&&u(a,o.data,o.timestamp);const c=Du(o);c&&a.eventLog.push(c);const d=Ru(o);d&&a.activityLog.push(d),a.lastEventTime=o.timestamp}return a})},setReplayPosition:r=>{e(l=>{const a=l.replayEvents.slice(0,r),o={...l,replayPosition:r,agentsCompleted:0,totalCost:0,totalTokens:0,nodes:{},groupProgress:{},highlightedEdges:[],eventLog:[],activityLog:[],workflowOutput:null,workflowFailedAgent:null,workflowStatus:"pending",workflowStartTime:null,workflowName:"",workflowFailure:null,entryPoint:null,agents:[],routes:[],parallelGroups:[],forEachGroups:[],isPaused:!1,lastEventTime:null,activeDialog:null,dialogEngaged:!1,wfDepth:0,subworkflowContexts:[],activeContextPath:[],viewContextPath:[]};for(const u of a){const c=Mu[u.type];c&&c(o,u.data,u.timestamp);const d=Du(u);d&&o.eventLog.push(d);const h=Ru(u);h&&o.activityLog.push(h),o.lastEventTime=u.timestamp}return o})},setReplayPlaying:r=>{e({replayPlaying:r})},setReplaySpeed:r=>{e({replaySpeed:r})},setWsStatus:r=>{e({wsStatus:r})},setEdgeHighlight:(r,l,a)=>{e(o=>({highlightedEdges:[...o.highlightedEdges.filter(u=>!(u.from===r&&u.to===l)),{from:r,to:l,state:a}]}))},clearEdgeHighlight:(r,l)=>{e(a=>({highlightedEdges:a.highlightedEdges.filter(o=>!(o.from===r&&o.to===l))}))},navigateToContext:r=>{e({viewContextPath:r,selectedNode:null})},navigateUp:()=>{e(r=>({viewContextPath:r.viewContextPath.slice(0,-1),selectedNode:null}))},navigateIntoSubworkflow:r=>{const l=n(),a=l.viewContextPath;let o;if(a.length===0)o=l.subworkflowContexts;else{const c=qn(l.subworkflowContexts,a);if(!c)return;o=c.children}const u=jN(o,r);u&&e({viewContextPath:[...a,u.index],selectedNode:null})},getViewedContext:()=>{const r=n();if(r.viewContextPath.length===0)return{workflowName:r.workflowName,agents:r.agents,routes:r.routes,parallelGroups:r.parallelGroups,forEachGroups:r.forEachGroups,nodes:r.nodes,groupProgress:r.groupProgress,highlightedEdges:r.highlightedEdges,entryPoint:r.entryPoint,subworkflowContexts:r.subworkflowContexts};const l=qn(r.subworkflowContexts,r.viewContextPath);return l?{workflowName:l.workflowName,agents:l.agents,routes:l.routes,parallelGroups:l.parallelGroups,forEachGroups:l.forEachGroups,nodes:l.nodes,groupProgress:l.groupProgress,highlightedEdges:l.highlightedEdges,entryPoint:l.entryPoint,subworkflowContexts:l.children}:{workflowName:r.workflowName,agents:r.agents,routes:r.routes,parallelGroups:r.parallelGroups,forEachGroups:r.forEachGroups,nodes:r.nodes,groupProgress:r.groupProgress,highlightedEdges:r.highlightedEdges,entryPoint:r.entryPoint,subworkflowContexts:r.subworkflowContexts}},getBreadcrumbs:()=>{const r=n(),l=[{label:r.workflowName||"Root",path:[]}];let a=r.subworkflowContexts;for(let o=0;o 0?r=((a=Vi(e.subworkflowContexts,l))==null?void 0:a.ctx)??null:e.activeContextPath.length>0&&(r=qn(e.subworkflowContexts,e.activeContextPath)),r){const o=r;return{nodes:o.nodes,groupProgress:o.groupProgress,routes:o.routes,highlightedEdges:o.highlightedEdges,addCost:u=>{o.totalCost+=u,e.totalCost+=u},addTokens:u=>{o.totalTokens+=u,e.totalTokens+=u},incrCompleted:()=>{o.agentsCompleted++,e.agentsCompleted++}}}return{nodes:e.nodes,groupProgress:e.groupProgress,routes:e.routes,highlightedEdges:e.highlightedEdges,addCost:o=>{e.totalCost+=o},addTokens:o=>{e.totalTokens+=o},incrCompleted:()=>{e.agentsCompleted++}}}const Mu={workflow_started:(e,n,r)=>{var a;const l=n;if(e.wfDepth===0){e.workflowStatus="running",e.workflowStartTime=r??Date.now()/1e3,e.workflowName=l.name||"",e.workflowYaml=n.yaml_source??null,e.conductorVersion=n.version??null,e.entryPoint=l.entry_point||null,e.agents=l.agents||[],e.routes=l.routes||[],e.parallelGroups=l.parallel_groups||[],e.forEachGroups=l.for_each_groups||[],Ge(e.nodes,"$start","start"),e.nodes.$start.status="running",Le(e.nodes,"$start");const o=new Set,u=new Set;for(const c of e.parallelGroups){for(const d of c.agents)o.add(d);u.add(c.name),Ge(e.nodes,c.name,"parallel_group"),e.groupProgress[c.name]={total:c.agents.length,completed:0,failed:0};for(const d of c.agents)Ge(e.nodes,d,"agent")}for(const c of e.forEachGroups)u.add(c.name),Ge(e.nodes,c.name,"for_each_group"),e.groupProgress[c.name]={total:0,completed:0,failed:0};for(const c of e.agents)if(!u.has(c.name)&&!o.has(c.name)){const d=c.type||"agent";Ge(e.nodes,c.name,d),c.model&&(e.nodes[c.name].model=c.model),u.add(c.name)}e.agentsTotal=u.size}else{const o=n.subworkflow_path,u=Array.isArray(o)&&o.length>0?((a=Vi(e.subworkflowContexts,o))==null?void 0:a.ctx)??null:qn(e.subworkflowContexts,e.activeContextPath);if(u){u.workflowName=l.name||"",u.status="running",u.entryPoint=l.entry_point||null,u.agents=l.agents||[],u.routes=l.routes||[],u.parallelGroups=l.parallel_groups||[],u.forEachGroups=l.for_each_groups||[],Ge(u.nodes,"$start","start"),u.nodes.$start.status="running";const c=new Set,d=new Set;for(const h of u.parallelGroups){for(const m of h.agents)c.add(m);d.add(h.name),Ge(u.nodes,h.name,"parallel_group"),u.groupProgress[h.name]={total:h.agents.length,completed:0,failed:0};for(const m of h.agents)Ge(u.nodes,m,"agent")}for(const h of u.forEachGroups)d.add(h.name),Ge(u.nodes,h.name,"for_each_group"),u.groupProgress[h.name]={total:0,completed:0,failed:0};for(const h of u.agents)if(!d.has(h.name)&&!c.has(h.name)){const m=h.type||"agent";Ge(u.nodes,h.name,m),h.model&&(u.nodes[h.name].model=h.model),d.add(h.name)}u.agentsTotal=d.size}}e.wfDepth++},agent_started:(e,n,r)=>{const l=n,a=ht(e,n),o=Ge(a.nodes,l.agent_name);o.iteration!=null&&(o.output!=null||o.error_type!=null)&&(o.iterationHistory||(o.iterationHistory=[]),o.iterationHistory.push({iteration:o.iteration,prompt:o.prompt,output:o.output,elapsed:o.elapsed,model:o.model,tokens:o.tokens,input_tokens:o.input_tokens,output_tokens:o.output_tokens,cost_usd:o.cost_usd,activity:o.activity,error_type:o.error_type,error_message:o.error_message})),o.status="running",o.iteration=l.iteration,o.startedAt=r??Date.now()/1e3,o.activity=[],l.context_window_max!=null&&(o.context_window_max=l.context_window_max),o.prompt=void 0,o.output=void 0,o.error_type=void 0,o.error_message=void 0,Le(a.nodes,l.agent_name)},agent_completed:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.status="completed",l.incrCompleted(),a.elapsed=r.elapsed,a.model=r.model,a.tokens=r.tokens,a.input_tokens=r.input_tokens,a.output_tokens=r.output_tokens,a.cost_usd=r.cost_usd,a.output=r.output,a.output_keys=r.output_keys,a.context_window_used=r.context_window_used,a.context_window_max=r.context_window_max,r.context_window_used!=null&&r.context_window_max!=null&&r.context_window_max>0&&(a.context_pct=Math.round(r.context_window_used/r.context_window_max*100)),r.cost_usd&&l.addCost(r.cost_usd),r.tokens&&l.addTokens(r.tokens),Le(l.nodes,r.agent_name)},agent_failed:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.status="failed",a.elapsed=r.elapsed,a.error_type=r.error_type,a.error_message=r.message;for(const o of l.routes)o.to===r.agent_name&&l.highlightedEdges.push({from:o.from,to:o.to,state:"failed"});Le(l.nodes,r.agent_name)},agent_prompt_rendered:(e,n)=>{var u;const r=n,l=n.item_key,a=ht(e,n),o=Ge(a.nodes,r.agent_name);if(o.prompt=r.rendered_prompt,o.context_keys=r.context_keys,l){go(a.nodes,r.agent_name,l,{type:"prompt",icon:"📝",label:"prompt",text:"Prompt rendered",detail:((u=r.rendered_prompt)==null?void 0:u.slice(0,500))||null});const c=a.nodes[r.agent_name];if(c!=null&&c.for_each_items){const d=c.for_each_items.find(h=>h.key===l);d&&(d.prompt=r.rendered_prompt)}}Le(a.nodes,r.agent_name)},agent_reasoning:(e,n)=>{const r=n,l=n.item_key,a=ht(e,n),o={type:"reasoning",icon:"💭",label:"thinking",text:r.content};zu(a.nodes,r.agent_name,o),l&&go(a.nodes,r.agent_name,l,o),Le(a.nodes,r.agent_name)},agent_tool_start:(e,n)=>{const r=n,l=n.item_key,a=ht(e,n),o={type:"tool-start",icon:"🔧",label:"tool",text:r.tool_name,detail:r.arguments||null};zu(a.nodes,r.agent_name,o),l&&go(a.nodes,r.agent_name,l,o),Le(a.nodes,r.agent_name)},agent_tool_complete:(e,n)=>{const r=n,l=n.item_key,a=ht(e,n),o={type:"tool-complete",icon:"✓",label:"result",text:r.tool_name||"done",detail:r.result||null};zu(a.nodes,r.agent_name,o),l&&go(a.nodes,r.agent_name,l,o),Le(a.nodes,r.agent_name)},agent_turn_start:(e,n)=>{const r=n,l=n.item_key,a=ht(e,n),o={type:"turn",icon:"⏳",label:"turn",text:`Turn ${r.turn??"?"}`};zu(a.nodes,r.agent_name,o),l&&go(a.nodes,r.agent_name,l,o),Le(a.nodes,r.agent_name)},agent_message:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.latest_message=r.content,Le(l.nodes,r.agent_name)},script_started:(e,n,r)=>{const l=n,a=ht(e,n),o=Ge(a.nodes,l.agent_name);o.status="running",o.startedAt=r??Date.now()/1e3,Le(a.nodes,l.agent_name)},script_completed:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.status="completed",l.incrCompleted(),a.elapsed=r.elapsed,a.stdout=r.stdout,a.stderr=r.stderr,a.exit_code=r.exit_code,Le(l.nodes,r.agent_name)},script_failed:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.status="failed",a.elapsed=r.elapsed,a.error_type=r.error_type,a.error_message=r.message,Le(l.nodes,r.agent_name)},gate_presented:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.status="waiting",a.options=r.options,a.option_details=r.option_details,a.prompt=r.prompt,Le(l.nodes,r.agent_name)},gate_resolved:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.agent_name);a.status="completed",l.incrCompleted(),a.selected_option=r.selected_option,a.route=r.route,a.additional_input=r.additional_input,Le(l.nodes,r.agent_name)},route_taken:(e,n)=>{const r=n;ht(e,n).highlightedEdges.push({from:r.from_agent,to:r.to_agent,state:"taken"})},parallel_started:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.group_name,"parallel_group");a.status="running",l.groupProgress[r.group_name]&&(l.groupProgress[r.group_name].total=r.agents.length,l.groupProgress[r.group_name].completed=0,l.groupProgress[r.group_name].failed=0),Le(l.nodes,r.group_name)},parallel_agent_completed:(e,n)=>{const r=n,l=ht(e,n);l.groupProgress[r.group_name]&&l.groupProgress[r.group_name].completed++;const a=Ge(l.nodes,r.agent_name);a.status="completed",a.elapsed=r.elapsed,a.model=r.model,a.tokens=r.tokens,a.cost_usd=r.cost_usd,a.context_window_used=r.context_window_used,a.context_window_max=r.context_window_max,r.context_window_used!=null&&r.context_window_max!=null&&r.context_window_max>0&&(a.context_pct=Math.round(r.context_window_used/r.context_window_max*100)),r.cost_usd&&l.addCost(r.cost_usd),r.tokens&&l.addTokens(r.tokens),Le(l.nodes,r.agent_name),Le(l.nodes,r.group_name)},parallel_agent_failed:(e,n)=>{const r=n,l=ht(e,n);l.groupProgress[r.group_name]&&l.groupProgress[r.group_name].failed++;const a=Ge(l.nodes,r.agent_name);a.status="failed",a.elapsed=r.elapsed,a.error_type=r.error_type,a.error_message=r.message,Le(l.nodes,r.agent_name),Le(l.nodes,r.group_name)},parallel_completed:(e,n)=>{const r=n,l=ht(e,n);l.incrCompleted();const a=Ge(l.nodes,r.group_name,"parallel_group");a.status=r.failure_count===0?"completed":"failed",Le(l.nodes,r.group_name)},for_each_started:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.group_name,"for_each_group");a.status="running",a.for_each_items=[],l.groupProgress[r.group_name]&&(l.groupProgress[r.group_name].total=r.item_count,l.groupProgress[r.group_name].completed=0,l.groupProgress[r.group_name].failed=0),Le(l.nodes,r.group_name)},for_each_item_started:(e,n)=>{const r=n,l=ht(e,n),a=Ge(l.nodes,r.group_name,"for_each_group");a.for_each_items||(a.for_each_items=[]),a.for_each_items.push({key:r.item_key??String(r.index),index:r.index,status:"running",activity:[]}),Le(l.nodes,r.group_name)},for_each_item_completed:(e,n)=>{const r=n,l=ht(e,n);l.groupProgress[r.group_name]&&l.groupProgress[r.group_name].completed++;const a=Ge(l.nodes,r.group_name,"for_each_group");if(a.for_each_items){const o=r.item_key??String(r.index),u=a.for_each_items.find(c=>c.key===o);u&&(u.status="completed",u.elapsed=r.elapsed,u.tokens=r.tokens,u.cost_usd=r.cost_usd,u.output=r.output)}Le(l.nodes,r.group_name)},for_each_item_failed:(e,n)=>{const r=n,l=ht(e,n);l.groupProgress[r.group_name]&&l.groupProgress[r.group_name].failed++;const a=Ge(l.nodes,r.group_name,"for_each_group");if(a.for_each_items){const o=r.item_key??String(r.index),u=a.for_each_items.find(c=>c.key===o);u&&(u.status="failed",u.elapsed=r.elapsed,u.error_type=r.error_type,u.error_message=r.message)}Le(l.nodes,r.group_name)},for_each_completed:(e,n)=>{const r=n,l=ht(e,n);l.incrCompleted();const a=Ge(l.nodes,r.group_name,"for_each_group");a.status=(r.failure_count??0)===0?"completed":"failed",a.elapsed=r.elapsed,a.success_count=r.success_count,a.failure_count=r.failure_count,Le(l.nodes,r.group_name)},workflow_completed:(e,n)=>{var r;if(e.wfDepth=Math.max(0,e.wfDepth-1),e.wfDepth===0){const l=n;e.workflowStatus="completed",e.isPaused=!1,e.workflowOutput=l.output??null,e.nodes.$end&&(e.nodes.$end.status="completed",Le(e.nodes,"$end")),e.nodes.$start&&(e.nodes.$start.status="completed",Le(e.nodes,"$start")),e.highlightedEdges=[]}else{const l=n,a=l.subworkflow_path?(r=Vi(e.subworkflowContexts,l.subworkflow_path))==null?void 0:r.ctx:qn(e.subworkflowContexts,e.activeContextPath);a&&(a.status="completed",a.workflowOutput=l.output??null,a.nodes.$end&&(a.nodes.$end.status="completed"),a.nodes.$start&&(a.nodes.$start.status="completed"),a.highlightedEdges=[])}},workflow_failed:(e,n)=>{var l;e.wfDepth=Math.max(0,e.wfDepth-1);const r=n;if(e.wfDepth===0){if(e.workflowStatus="failed",e.isPaused=!1,e.workflowFailedAgent=r.agent_name||null,r.agent_name&&e.nodes[r.agent_name]){e.nodes[r.agent_name].status="failed",Le(e.nodes,r.agent_name);for(const a of e.routes)a.to===r.agent_name&&e.highlightedEdges.push({from:a.from,to:a.to,state:"failed"})}e.workflowFailure={error_type:r.error_type,message:r.message,elapsed_seconds:r.elapsed_seconds,timeout_seconds:r.timeout_seconds,current_agent:r.current_agent},e.nodes.$start&&(e.nodes.$start.status="completed",Le(e.nodes,"$start"))}else{const a=r.subworkflow_path?(l=Vi(e.subworkflowContexts,r.subworkflow_path))==null?void 0:l.ctx:qn(e.subworkflowContexts,e.activeContextPath);a&&(a.status="failed",a.workflowFailure={error_type:r.error_type,message:r.message})}},subworkflow_started:(e,n)=>{const r=n,l=r.slot_key??(r.item_key!=null?`${r.agent_name}[${r.item_key}]`:r.agent_name),a=AN(r.agent_name,r.iteration??1,r.workflow,l);let o;if(r.parent_path!==void 0){const d=Vi(e.subworkflowContexts,r.parent_path);if(!d)return;o=d.indexPath}else o=e.activeContextPath;const u=e.viewContextPath.length===e.activeContextPath.length&&e.viewContextPath.every((d,h)=>d===e.activeContextPath[h]);let c;if(o.length===0)e.subworkflowContexts.push(a),c=[e.subworkflowContexts.length-1];else{const d=qn(e.subworkflowContexts,o);if(!d)return;d.children.push(a),c=[...o,d.children.length-1]}if(e.activeContextPath=c,u&&(e.viewContextPath=c),o.length===0){const d=e.nodes[r.agent_name];d&&(d.status="running",Le(e.nodes,r.agent_name))}else{const d=qn(e.subworkflowContexts,o);if(d){const h=d.nodes[r.agent_name];h&&(h.status="running",Le(d.nodes,r.agent_name))}}},subworkflow_completed:(e,n)=>{var o;const r=n;let l;if(r.parent_path!==void 0){const u=Vi(e.subworkflowContexts,r.parent_path);if(!u)return;l=u.indexPath}else l=e.activeContextPath;const a=l.length===0?e.nodes:(o=qn(e.subworkflowContexts,l))==null?void 0:o.nodes;if(a){const u=a[r.agent_name];if(u){if(r.item_key==null)if(u.status="completed",u.elapsed=r.elapsed,l.length===0)e.agentsCompleted++;else{const c=qn(e.subworkflowContexts,l);c&&c.agentsCompleted++}Le(a,r.agent_name)}}e.activeContextPath=l},subworkflow_failed:(e,n)=>{var o;const r=n;let l;if(r.parent_path!==void 0){const u=Vi(e.subworkflowContexts,r.parent_path);if(!u)return;l=u.indexPath}else l=e.activeContextPath;const a=l.length===0?e.nodes:(o=qn(e.subworkflowContexts,l))==null?void 0:o.nodes;if(a){const u=a[r.agent_name];u&&r.item_key==null&&(u.status="failed",u.elapsed=r.elapsed,u.error_type=r.error_type,u.error_message=r.message,Le(a,r.agent_name))}e.activeContextPath=l},checkpoint_saved:(e,n)=>{const r=n;r.path&&e.workflowFailure&&(e.workflowFailure={...e.workflowFailure,checkpoint_path:r.path})},agent_paused:(e,n)=>{const r=n,l=Ge(e.nodes,r.agent_name);l.status="waiting",l.activity.push({type:"agent_paused",icon:"⏸",label:"Paused",text:"Agent paused — click Resume to re-execute"}),Le(e.nodes,r.agent_name),e.isPaused=!0},agent_resumed:(e,n)=>{const r=n,l=Ge(e.nodes,r.agent_name);l.status="running",l.activity.push({type:"agent_resumed",icon:"▶",label:"Resumed",text:"Agent resumed — re-executing"}),Le(e.nodes,r.agent_name),e.isPaused=!1},dialog_started:(e,n)=>{const r=n,l=Ge(e.nodes,r.agent_name);l.dialog_id=r.dialog_id,l.dialog_messages=[],l.dialog_active=!0,l.dialog_awaiting_response=!1,e.activeDialog={agentName:r.agent_name,dialogId:r.dialog_id},e.dialogEngaged=!1,Le(e.nodes,r.agent_name)},dialog_message:(e,n)=>{const r=n,l=Ge(e.nodes,r.agent_name);l.dialog_messages||(l.dialog_messages=[]),l.dialog_messages.push({role:r.role,content:r.content}),r.role==="user"?l.dialog_awaiting_response=!0:r.role==="agent"&&(l.dialog_awaiting_response=!1),Le(e.nodes,r.agent_name)},dialog_completed:(e,n)=>{const r=n,l=Ge(e.nodes,r.agent_name);l.dialog_active=!1,l.dialog_awaiting_response=!1,e.activeDialog=null,e.dialogEngaged=!1,Le(e.nodes,r.agent_name)}};function Du(e){var l,a;const n=e.timestamp,r=e.data;switch(e.type){case"workflow_started":return{timestamp:n,level:"info",source:"workflow",message:`Workflow "${r.name||""}" started`};case"agent_started":return{timestamp:n,level:"info",source:String(r.agent_name),message:`Agent started${r.iteration!=null?` (iteration ${r.iteration})`:""}`};case"agent_completed":return{timestamp:n,level:"success",source:String(r.agent_name),message:`Agent completed${r.elapsed!=null?` in ${Qu(r.elapsed)}`:""}${r.tokens!=null?` · ${r.tokens.toLocaleString()} tokens`:""}${r.cost_usd!=null?` · $${r.cost_usd.toFixed(4)}`:""}`};case"agent_failed":return{timestamp:n,level:"error",source:String(r.agent_name),message:`Agent failed: ${r.message||r.error_type||"unknown error"}`};case"script_started":return{timestamp:n,level:"info",source:String(r.agent_name),message:"Script started"};case"script_completed":return{timestamp:n,level:"success",source:String(r.agent_name),message:`Script completed (exit ${r.exit_code??"?"})${r.elapsed!=null?` in ${Qu(r.elapsed)}`:""}`};case"script_failed":return{timestamp:n,level:"error",source:String(r.agent_name),message:`Script failed: ${r.message||r.error_type||"unknown error"}`};case"gate_presented":return{timestamp:n,level:"warning",source:String(r.agent_name),message:"Waiting for human input…"};case"gate_resolved":return{timestamp:n,level:"success",source:String(r.agent_name),message:`Gate resolved → ${r.selected_option||"continue"}`};case"route_taken":return{timestamp:n,level:"debug",source:"router",message:`${r.from_agent} → ${r.to_agent}`};case"parallel_started":return{timestamp:n,level:"info",source:String(r.group_name),message:`Parallel group started (${((l=r.agents)==null?void 0:l.length)||"?"} agents)`};case"parallel_completed":return{timestamp:n,level:r.failure_count===0?"success":"error",source:String(r.group_name),message:`Parallel group completed${r.failure_count>0?` with ${r.failure_count} failure(s)`:""}`};case"for_each_started":return{timestamp:n,level:"info",source:String(r.group_name),message:`For-each started (${r.item_count} items)`};case"for_each_completed":return{timestamp:n,level:(r.failure_count??0)===0?"success":"error",source:String(r.group_name),message:`For-each completed · ${r.success_count} succeeded${r.failure_count>0?` · ${r.failure_count} failed`:""}`};case"workflow_completed":return{timestamp:n,level:"success",source:"workflow",message:`Workflow completed${r.elapsed!=null?` in ${Qu(r.elapsed)}`:""}`};case"workflow_failed":return{timestamp:n,level:"error",source:"workflow",message:`Workflow failed: ${r.message||r.error_type||"unknown error"}`};case"checkpoint_saved":return{timestamp:n,level:"info",source:"workflow",message:`Checkpoint saved: ${((a=r.path)==null?void 0:a.split("/").pop())||"unknown"}`};case"agent_paused":return{timestamp:n,level:"warning",source:String(r.agent_name),message:"Agent paused — waiting for resume"};case"agent_resumed":return{timestamp:n,level:"info",source:String(r.agent_name),message:"Agent resumed — re-executing"};case"dialog_started":return{timestamp:n,level:"warning",source:String(r.agent_name),message:"Dialog started — waiting for user…"};case"dialog_completed":return{timestamp:n,level:"success",source:String(r.agent_name),message:`Dialog completed (${r.turn_count||0} messages)`};default:return null}}function Qu(e){if(e<1)return`${(e*1e3).toFixed(0)}ms`;if(e<60)return`${e.toFixed(1)}s`;const n=Math.floor(e/60),r=(e%60).toFixed(0);return`${n}m ${r}s`}function Ru(e){const n=e.timestamp,r=e.data;switch(e.type){case"agent_started":return{timestamp:n,source:String(r.agent_name),type:"turn",message:`Agent started${r.iteration!=null?` (iteration ${r.iteration})`:""}`};case"agent_prompt_rendered":return{timestamp:n,source:String(r.agent_name),type:"prompt",message:"Prompt rendered",detail:xo(String(r.rendered_prompt||""),500)};case"agent_reasoning":return{timestamp:n,source:String(r.agent_name),type:"reasoning",message:String(r.content||"")};case"agent_tool_start":return{timestamp:n,source:String(r.agent_name),type:"tool-start",message:`→ ${r.tool_name}`,detail:r.arguments?xo(String(r.arguments),300):null};case"agent_tool_complete":return{timestamp:n,source:String(r.agent_name),type:"tool-complete",message:`← ${r.tool_name||"done"}`,detail:r.result?xo(String(r.result),300):null};case"agent_turn_start":return{timestamp:n,source:String(r.agent_name),type:"turn",message:`Turn ${r.turn??"?"}`};case"agent_message":return{timestamp:n,source:String(r.agent_name),type:"message",message:xo(String(r.content||""),500)};case"agent_completed":return{timestamp:n,source:String(r.agent_name),type:"turn",message:`Completed${r.elapsed!=null?` in ${Qu(r.elapsed)}`:""}${r.tokens!=null?` · ${r.tokens.toLocaleString()} tokens`:""}`};case"agent_failed":return{timestamp:n,source:String(r.agent_name),type:"turn",message:`Failed: ${r.message||r.error_type||"unknown"}`};case"script_started":return{timestamp:n,source:String(r.agent_name),type:"turn",message:"Script started"};case"script_completed":return{timestamp:n,source:String(r.agent_name),type:"tool-complete",message:`Script completed (exit ${r.exit_code??"?"})`,detail:r.stdout?xo(String(r.stdout),300):null};case"script_failed":return{timestamp:n,source:String(r.agent_name),type:"turn",message:`Script failed: ${r.message||r.error_type||"unknown"}`};default:return null}}function xo(e,n){return e.length<=n?e:e.slice(0,n)+"…"}function tv(e){const n=e.match(/^(\s*)/);return n?n[1].length:0}function zN(e){const n=new Map;for(let r=0;r a)o=u;else break}o>r&&n.set(r,o)}return n}function MN(e){if(/^\s*#/.test(e))return b.jsx("span",{className:"text-emerald-500/70",children:e});const n=e.match(/^(\s*)(- )?([a-zA-Z_][\w.-]*)(:\s*)(.*)/);if(n){const[,l,a,o,u,c]=n;return b.jsxs("span",{children:[l,a??"",b.jsx("span",{className:"text-sky-400",children:o}),b.jsx("span",{className:"text-[var(--text-muted)]",children:u}),nv(c??"")]})}const r=e.match(/^(\s*)(- )(.*)/);if(r){const[,l,a,o]=r;return b.jsxs("span",{children:[l,b.jsx("span",{className:"text-[var(--text-muted)]",children:a}),nv(o??"")]})}return b.jsx("span",{children:e})}function nv(e){if(!e)return"";const n=e.indexOf(" #"),r=n>=0?e.slice(0,n):e,l=n>=0?e.slice(n):"";let a=r;return/^(true|false|null|yes|no)$/i.test(r.trim())?a=b.jsx("span",{className:"text-amber-400",children:r}):/^\d+(\.\d+)?$/.test(r.trim())?a=b.jsx("span",{className:"text-amber-400",children:r}):/^["'].*["']$/.test(r.trim())?a=b.jsx("span",{className:"text-green-400",children:r}):(r.includes("|")||r.includes(">"))&&(a=b.jsx("span",{className:"text-[var(--text-secondary)]",children:r})),b.jsxs(b.Fragment,{children:[a,l&&b.jsx("span",{className:"text-emerald-500/70",children:l})]})}function DN({yaml:e,onClose:n}){const[r,l]=V.useState(new Set);V.useEffect(()=>{const d=h=>{h.key==="Escape"&&n()};return window.addEventListener("keydown",d),()=>window.removeEventListener("keydown",d)},[n]);const a=V.useMemo(()=>e.split(` +`),[e]),o=V.useMemo(()=>zN(a),[a]),u=V.useCallback(d=>{l(h=>{const m=new Set(h);return m.has(d)?m.delete(d):m.add(d),m})},[]),c=V.useMemo(()=>{const d=[];let h=-1;for(let m=0;m b.jsxs("div",{className:"flex",children:[b.jsx("span",{className:"inline-flex items-center justify-center flex-shrink-0",style:{width:"1.25rem"},children:m?b.jsx("button",{onClick:()=>u(d),className:"text-[var(--text-muted)] hover:text-[var(--text)] p-0 leading-none",style:{background:"none",border:"none",cursor:"pointer"},children:p?b.jsx(Rr,{className:"w-3 h-3"}):b.jsx(il,{className:"w-3 h-3"})}):null}),b.jsxs("span",{className:"flex-1",children:[MN(h),p&&b.jsx("span",{className:"text-[var(--text-muted)] text-[11px] ml-2 px-1.5 py-0.5 rounded bg-[var(--surface-hover)] cursor-pointer",onClick:()=>u(d),children:"···"})]})]},d))})})]})]})}function RN(){const e=fe(S=>S.workflowName),n=fe(S=>S.workflowStatus),r=fe(S=>S.isPaused),l=fe(S=>S.workflowYaml),a=fe(S=>S.conductorVersion),[o,u]=V.useState(!1),[c,d]=V.useState(!1),[h,m]=V.useState(!1),[p,x]=V.useState(!1),v=n==="running"||n==="pending";V.useEffect(()=>{r||(u(!1),d(!1),m(!1))},[r]);const w=async()=>{u(!0);try{await fetch("/api/stop",{method:"POST"})}catch(S){console.error("Failed to stop agent:",S),u(!1)}},E=async()=>{d(!0);try{await fetch("/api/resume",{method:"POST"})}catch(S){console.error("Failed to resume agent:",S),d(!1)}},_=async()=>{m(!0);try{await fetch("/api/kill",{method:"POST"})}catch(S){console.error("Failed to kill workflow:",S),m(!1)}};return b.jsxs("header",{className:"flex items-center justify-between px-4 py-2 bg-[var(--surface)] border-b border-[var(--border)] flex-shrink-0",children:[b.jsxs("div",{className:"flex items-center gap-2",children:[b.jsx(hw,{className:"w-4 h-4 text-[var(--running)]"}),b.jsx("h1",{className:"text-sm font-semibold text-[var(--text)]",children:"Conductor"}),e&&b.jsxs("span",{className:"text-sm text-[var(--text-muted)] font-normal",children:["— ",e]})]}),b.jsxs("div",{className:"flex items-center gap-3",children:[r?b.jsxs(b.Fragment,{children:[b.jsxs("button",{onClick:E,disabled:c,className:`flex items-center gap-1.5 px-2.5 py-1 text-xs font-medium rounded\r bg-emerald-500/10 text-emerald-400 border border-emerald-500/20\r hover:bg-emerald-500/20 hover:border-emerald-500/30\r disabled:opacity-50 disabled:cursor-not-allowed\r - transition-colors`,title:"Re-execute the paused agent",children:[b.jsx(mm,{className:"w-3 h-3"}),c?"Resuming...":"Resume"]}),b.jsxs("button",{onClick:S,disabled:h,className:`flex items-center gap-1.5 px-2.5 py-1 text-xs font-medium rounded\r + transition-colors`,title:"Re-execute the paused agent",children:[b.jsx(mm,{className:"w-3 h-3"}),c?"Resuming...":"Resume"]}),b.jsxs("button",{onClick:_,disabled:h,className:`flex items-center gap-1.5 px-2.5 py-1 text-xs font-medium rounded\r bg-red-500/10 text-red-400 border border-red-500/20\r hover:bg-red-500/20 hover:border-red-500/30\r disabled:opacity-50 disabled:cursor-not-allowed\r @@ -259,13 +259,13 @@ Error generating stack: `+f.message+` bg-red-500/10 text-red-400 border border-red-500/20\r hover:bg-red-500/20 hover:border-red-500/30\r disabled:opacity-50 disabled:cursor-not-allowed\r - transition-colors`,children:[b.jsx(xw,{className:"w-3 h-3"}),o?"Stopping...":"Stop"]}):null,l&&b.jsxs("button",{onClick:()=>x(!0),className:`flex items-center gap-1.5 px-2.5 py-1 text-xs font-medium rounded\r + transition-colors`,children:[b.jsx(yw,{className:"w-3 h-3"}),o?"Stopping...":"Stop"]}):null,l&&b.jsxs("button",{onClick:()=>x(!0),className:`flex items-center gap-1.5 px-2.5 py-1 text-xs font-medium rounded\r bg-[var(--surface-hover)] text-[var(--text-secondary)] border border-[var(--border)]\r hover:text-[var(--text)] hover:bg-[var(--surface)]\r transition-colors`,title:"View workflow YAML configuration",children:[b.jsx(dN,{className:"w-3 h-3"}),"YAML"]}),b.jsxs("a",{href:"/api/logs",download:"conductor-logs.json",className:`flex items-center gap-1.5 px-2.5 py-1 text-xs font-medium rounded\r bg-[var(--surface-hover)] text-[var(--text-secondary)] border border-[var(--border)]\r hover:text-[var(--text)] hover:bg-[var(--surface)]\r - transition-colors`,title:"Download full event log as JSON",children:[b.jsx(cN,{className:"w-3 h-3"}),"Logs"]}),b.jsxs("span",{className:"text-xs text-[var(--text-muted)]",children:["v",a??"—"]})]}),p&&l&&b.jsx(DN,{yaml:l,onClose:()=>x(!1)})]})}function ON(){const e=fe(o=>o.getBreadcrumbs),n=fe(o=>o.navigateToContext),r=fe(o=>o.viewContextPath);if(fe(o=>o.subworkflowContexts).length===0&&r.length===0)return null;const a=e();return b.jsxs("div",{className:"flex items-center gap-1 px-4 py-1.5 bg-[var(--surface)] border-b border-[var(--border)] text-xs flex-shrink-0",children:[b.jsx(hm,{className:"w-3 h-3 text-[var(--text-muted)] mr-1"}),a.map((o,u)=>{const c=u===a.length-1,d=JSON.stringify(o.path)===JSON.stringify(r);return b.jsxs("span",{className:"flex items-center gap-1",children:[u>0&&b.jsx(Rr,{className:"w-3 h-3 text-[var(--text-muted)]"}),c?b.jsx("span",{className:"font-semibold text-[var(--text)]",children:o.label}):b.jsx("button",{onClick:()=>n(o.path),className:`hover:text-[var(--running)] transition-colors ${d?"text-[var(--text)] font-medium":"text-[var(--text-muted)]"}`,children:o.label})]},u)})]})}function He(...e){return e.filter(Boolean).join(" ")}function Jt(e){if(e==null)return"";if(e<60)return`${e.toFixed(1)}s`;const n=Math.floor(e/60),r=(e%60).toFixed(0);return`${n}m ${r}s`}function Gn(e){return e==null?"":e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}K`:`${e}`}function yi(e){return e==null?"":`$${e.toFixed(4)}`}function yw(e){return e==null?"":typeof e=="string"?e:JSON.stringify(e,null,2)}function LN(e,n){if(n<=0)return`${e.toLocaleString()} tokens (limit unknown)`;const r=a=>a.toLocaleString(),l=(e/n*100).toFixed(1);return`${r(e)} / ${r(n)} (${l}%)`}function vw(){const e=fe(c=>c.workflowStatus),n=fe(c=>c.workflowStartTime),r=fe(c=>c.replayMode),l=fe(c=>c.lastEventTime),[a,o]=V.useState("—"),u=V.useRef(null);return V.useEffect(()=>{if(n!=null){if(r){u.current&&(clearInterval(u.current),u.current=null),o(Jt((l??n)-n));return}if(e==="running"){const c=()=>{const d=Date.now()/1e3-n;o(Jt(d))};return c(),u.current=setInterval(c,500),()=>{u.current&&clearInterval(u.current)}}else(e==="completed"||e==="failed")&&u.current&&(clearInterval(u.current),u.current=null)}},[e,n,r,l]),a}function HN(){const e=fe(E=>E.workflowStatus),n=fe(E=>E.agentsCompleted),r=fe(E=>E.agentsTotal),l=fe(E=>E.totalCost),a=fe(E=>E.totalTokens),o=fe(E=>E.wsStatus),u=fe(E=>E.workflowFailure),c=fe(E=>E.lastEventTime),d=vw(),[h,m]=V.useState(null);V.useEffect(()=>{if(e!=="running"||c==null){m(null);return}const E=()=>{m(Math.floor(Date.now()/1e3-c))};E();const S=setInterval(E,1e3);return()=>clearInterval(S)},[e,c]);const p=e==="failed",x=(()=>{switch(e){case"pending":return"Waiting for workflow…";case"running":return"Running";case"completed":return"Completed";case"failed":{if(!u)return"Failed";const E=u.error_type||"";return E==="MaxIterationsError"?"Failed: exceeded maximum iterations":E==="TimeoutError"?"Failed: workflow timed out":u.message?`Failed: ${u.message.length>60?u.message.slice(0,57)+"...":u.message}`:`Failed: ${E}`}}})(),v={pending:"bg-[var(--pending)]",running:"bg-[var(--running)] animate-pulse",completed:"bg-[var(--completed)]",failed:"bg-[var(--failed)]"}[e],w=(()=>{switch(o){case"connected":return b.jsxs("span",{className:"flex items-center gap-1 text-[var(--completed)]",children:[b.jsx(_N,{className:"w-3 h-3"}),b.jsx("span",{children:"Connected"})]});case"disconnected":return b.jsxs("span",{className:"flex items-center gap-1 text-[var(--failed)]",children:[b.jsx(SN,{className:"w-3 h-3"}),b.jsx("span",{children:"Disconnected"})]});case"reconnecting":return b.jsxs("span",{className:"flex items-center gap-1 text-[var(--waiting)]",children:[b.jsx(Oo,{className:"w-3 h-3 animate-spin"}),b.jsx("span",{children:"Reconnecting\\u2026"})]});case"connecting":return b.jsxs("span",{className:"flex items-center gap-1 text-[var(--text-muted)]",children:[b.jsx(Oo,{className:"w-3 h-3 animate-spin"}),b.jsx("span",{children:"Connecting\\u2026"})]})}})();return b.jsxs("footer",{className:He("flex items-center gap-4 px-4 py-1.5 border-t text-xs flex-shrink-0 transition-colors duration-300",p?"bg-red-950/50 border-red-500/30":"bg-[var(--surface)] border-[var(--border)]"),children:[b.jsx("span",{className:He("w-2 h-2 rounded-full flex-shrink-0",v)}),b.jsx("span",{className:He(p?"text-red-300":"text-[var(--text)]"),children:x}),r>0&&b.jsxs("span",{className:He(p?"text-red-400/60":"text-[var(--text-muted)]"),children:[n,"/",r," agents"]}),e!=="pending"&&b.jsx("span",{className:He("font-mono",p?"text-red-400/60":"text-[var(--text-muted)]"),children:d}),a>0&&b.jsxs("span",{className:He("flex items-center gap-1",p?"text-red-400/60":"text-[var(--text-muted)]"),title:"Total tokens used",children:[b.jsx(mw,{className:"w-3 h-3"}),b.jsx("span",{className:"font-mono",children:a.toLocaleString()})]}),l>0&&b.jsxs("span",{className:He("flex items-center gap-1",p?"text-red-400/60":"text-[var(--text-muted)]"),title:"Total cost",children:[b.jsx(hw,{className:"w-3 h-3"}),b.jsxs("span",{className:"font-mono",children:["$",l.toFixed(4)]})]}),h!=null&&h>=5&&b.jsxs("span",{className:He("flex items-center gap-1 font-mono",h>=60?"text-amber-400":"text-[var(--text-muted)]"),title:"Time since last event from the provider",children:[b.jsx(uN,{className:"w-3 h-3"}),b.jsx("span",{children:h>=60?`${Math.floor(h/60)}m ${h%60}s idle`:`${h}s idle`})]}),b.jsx("span",{className:"flex-1"}),w]})}const BN=[1,5,10,20,50];function IN(e,n){if(n===0||e.length===0)return"+0.0s";const r=e[0].timestamp,a=e[Math.min(n,e.length)-1].timestamp-r;if(a<60)return`+${a.toFixed(1)}s`;const o=Math.floor(a/60),u=a%60;return`+${o}m${u.toFixed(0)}s`}function qN(){const e=fe(p=>p.replayPosition),n=fe(p=>p.replayTotalEvents),r=fe(p=>p.replayPlaying),l=fe(p=>p.replaySpeed),a=fe(p=>p.replayEvents),o=fe(p=>p.setReplayPosition),u=fe(p=>p.setReplayPlaying),c=fe(p=>p.setReplaySpeed),d=p=>{const x=parseInt(p.target.value,10);o(x),r&&u(!1)},h=()=>{!r&&e>=n&&o(0),u(!r)},m=n>0?e/n*100:0;return b.jsxs("footer",{className:"flex items-center gap-3 px-4 py-1.5 border-t bg-[var(--surface)] border-[var(--border)] text-xs flex-shrink-0",children:[b.jsx("button",{onClick:h,className:"flex items-center justify-center w-6 h-6 rounded hover:bg-[var(--surface-hover)] text-[var(--text-secondary)] hover:text-[var(--text)] transition-colors",title:r?"Pause":"Play",children:r?b.jsx(gN,{className:"w-3.5 h-3.5"}):b.jsx(mm,{className:"w-3.5 h-3.5"})}),b.jsxs("div",{className:"flex-1 relative flex items-center",children:[b.jsx("input",{type:"range",min:0,max:n,value:e,onChange:d,className:"w-full h-1 appearance-none rounded-full cursor-pointer",style:{background:`linear-gradient(to right, var(--accent) 0%, var(--accent) ${m}%, var(--border) ${m}%, var(--border) 100%)`,WebkitAppearance:"none"}}),b.jsx("style",{children:` + transition-colors`,title:"Download full event log as JSON",children:[b.jsx(cN,{className:"w-3 h-3"}),"Logs"]}),b.jsxs("span",{className:"text-xs text-[var(--text-muted)]",children:["v",a??"—"]})]}),p&&l&&b.jsx(DN,{yaml:l,onClose:()=>x(!1)})]})}function ON(){const e=fe(o=>o.getBreadcrumbs),n=fe(o=>o.navigateToContext),r=fe(o=>o.viewContextPath);if(fe(o=>o.subworkflowContexts).length===0&&r.length===0)return null;const a=e();return b.jsxs("div",{className:"flex items-center gap-1 px-4 py-1.5 bg-[var(--surface)] border-b border-[var(--border)] text-xs flex-shrink-0",children:[b.jsx(Sc,{className:"w-3 h-3 text-[var(--text-muted)] mr-1"}),a.map((o,u)=>{const c=u===a.length-1,d=JSON.stringify(o.path)===JSON.stringify(r);return b.jsxs("span",{className:"flex items-center gap-1",children:[u>0&&b.jsx(Rr,{className:"w-3 h-3 text-[var(--text-muted)]"}),c?b.jsx("span",{className:"font-semibold text-[var(--text)]",children:o.label}):b.jsx("button",{onClick:()=>n(o.path),className:`hover:text-[var(--running)] transition-colors ${d?"text-[var(--text)] font-medium":"text-[var(--text-muted)]"}`,children:o.label})]},u)})]})}function He(...e){return e.filter(Boolean).join(" ")}function Jt(e){if(e==null)return"";if(e<60)return`${e.toFixed(1)}s`;const n=Math.floor(e/60),r=(e%60).toFixed(0);return`${n}m ${r}s`}function Gn(e){return e==null?"":e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}K`:`${e}`}function yi(e){return e==null?"":`$${e.toFixed(4)}`}function vw(e){return e==null?"":typeof e=="string"?e:JSON.stringify(e,null,2)}function LN(e,n){if(n<=0)return`${e.toLocaleString()} tokens (limit unknown)`;const r=a=>a.toLocaleString(),l=(e/n*100).toFixed(1);return`${r(e)} / ${r(n)} (${l}%)`}function bw(){const e=fe(c=>c.workflowStatus),n=fe(c=>c.workflowStartTime),r=fe(c=>c.replayMode),l=fe(c=>c.lastEventTime),[a,o]=V.useState("—"),u=V.useRef(null);return V.useEffect(()=>{if(n!=null){if(r){u.current&&(clearInterval(u.current),u.current=null),o(Jt((l??n)-n));return}if(e==="running"){const c=()=>{const d=Date.now()/1e3-n;o(Jt(d))};return c(),u.current=setInterval(c,500),()=>{u.current&&clearInterval(u.current)}}else(e==="completed"||e==="failed")&&u.current&&(clearInterval(u.current),u.current=null)}},[e,n,r,l]),a}function HN(){const e=fe(E=>E.workflowStatus),n=fe(E=>E.agentsCompleted),r=fe(E=>E.agentsTotal),l=fe(E=>E.totalCost),a=fe(E=>E.totalTokens),o=fe(E=>E.wsStatus),u=fe(E=>E.workflowFailure),c=fe(E=>E.lastEventTime),d=bw(),[h,m]=V.useState(null);V.useEffect(()=>{if(e!=="running"||c==null){m(null);return}const E=()=>{m(Math.floor(Date.now()/1e3-c))};E();const _=setInterval(E,1e3);return()=>clearInterval(_)},[e,c]);const p=e==="failed",x=(()=>{switch(e){case"pending":return"Waiting for workflow…";case"running":return"Running";case"completed":return"Completed";case"failed":{if(!u)return"Failed";const E=u.error_type||"";return E==="MaxIterationsError"?"Failed: exceeded maximum iterations":E==="TimeoutError"?"Failed: workflow timed out":u.message?`Failed: ${u.message.length>60?u.message.slice(0,57)+"...":u.message}`:`Failed: ${E}`}}})(),v={pending:"bg-[var(--pending)]",running:"bg-[var(--running)] animate-pulse",completed:"bg-[var(--completed)]",failed:"bg-[var(--failed)]"}[e],w=(()=>{switch(o){case"connected":return b.jsxs("span",{className:"flex items-center gap-1 text-[var(--completed)]",children:[b.jsx(_N,{className:"w-3 h-3"}),b.jsx("span",{children:"Connected"})]});case"disconnected":return b.jsxs("span",{className:"flex items-center gap-1 text-[var(--failed)]",children:[b.jsx(SN,{className:"w-3 h-3"}),b.jsx("span",{children:"Disconnected"})]});case"reconnecting":return b.jsxs("span",{className:"flex items-center gap-1 text-[var(--waiting)]",children:[b.jsx(Oo,{className:"w-3 h-3 animate-spin"}),b.jsx("span",{children:"Reconnecting\\u2026"})]});case"connecting":return b.jsxs("span",{className:"flex items-center gap-1 text-[var(--text-muted)]",children:[b.jsx(Oo,{className:"w-3 h-3 animate-spin"}),b.jsx("span",{children:"Connecting\\u2026"})]})}})();return b.jsxs("footer",{className:He("flex items-center gap-4 px-4 py-1.5 border-t text-xs flex-shrink-0 transition-colors duration-300",p?"bg-red-950/50 border-red-500/30":"bg-[var(--surface)] border-[var(--border)]"),children:[b.jsx("span",{className:He("w-2 h-2 rounded-full flex-shrink-0",v)}),b.jsx("span",{className:He(p?"text-red-300":"text-[var(--text)]"),children:x}),r>0&&b.jsxs("span",{className:He(p?"text-red-400/60":"text-[var(--text-muted)]"),children:[n,"/",r," agents"]}),e!=="pending"&&b.jsx("span",{className:He("font-mono",p?"text-red-400/60":"text-[var(--text-muted)]"),children:d}),a>0&&b.jsxs("span",{className:He("flex items-center gap-1",p?"text-red-400/60":"text-[var(--text-muted)]"),title:"Total tokens used",children:[b.jsx(gw,{className:"w-3 h-3"}),b.jsx("span",{className:"font-mono",children:a.toLocaleString()})]}),l>0&&b.jsxs("span",{className:He("flex items-center gap-1",p?"text-red-400/60":"text-[var(--text-muted)]"),title:"Total cost",children:[b.jsx(pw,{className:"w-3 h-3"}),b.jsxs("span",{className:"font-mono",children:["$",l.toFixed(4)]})]}),h!=null&&h>=5&&b.jsxs("span",{className:He("flex items-center gap-1 font-mono",h>=60?"text-amber-400":"text-[var(--text-muted)]"),title:"Time since last event from the provider",children:[b.jsx(uN,{className:"w-3 h-3"}),b.jsx("span",{children:h>=60?`${Math.floor(h/60)}m ${h%60}s idle`:`${h}s idle`})]}),b.jsx("span",{className:"flex-1"}),w]})}const BN=[1,5,10,20,50];function IN(e,n){if(n===0||e.length===0)return"+0.0s";const r=e[0].timestamp,a=e[Math.min(n,e.length)-1].timestamp-r;if(a<60)return`+${a.toFixed(1)}s`;const o=Math.floor(a/60),u=a%60;return`+${o}m${u.toFixed(0)}s`}function qN(){const e=fe(p=>p.replayPosition),n=fe(p=>p.replayTotalEvents),r=fe(p=>p.replayPlaying),l=fe(p=>p.replaySpeed),a=fe(p=>p.replayEvents),o=fe(p=>p.setReplayPosition),u=fe(p=>p.setReplayPlaying),c=fe(p=>p.setReplaySpeed),d=p=>{const x=parseInt(p.target.value,10);o(x),r&&u(!1)},h=()=>{!r&&e>=n&&o(0),u(!r)},m=n>0?e/n*100:0;return b.jsxs("footer",{className:"flex items-center gap-3 px-4 py-1.5 border-t bg-[var(--surface)] border-[var(--border)] text-xs flex-shrink-0",children:[b.jsx("button",{onClick:h,className:"flex items-center justify-center w-6 h-6 rounded hover:bg-[var(--surface-hover)] text-[var(--text-secondary)] hover:text-[var(--text)] transition-colors",title:r?"Pause":"Play",children:r?b.jsx(gN,{className:"w-3.5 h-3.5"}):b.jsx(mm,{className:"w-3.5 h-3.5"})}),b.jsxs("div",{className:"flex-1 relative flex items-center",children:[b.jsx("input",{type:"range",min:0,max:n,value:e,onChange:d,className:"w-full h-1 appearance-none rounded-full cursor-pointer",style:{background:`linear-gradient(to right, var(--accent) 0%, var(--accent) ${m}%, var(--border) ${m}%, var(--border) 100%)`,WebkitAppearance:"none"}}),b.jsx("style",{children:` footer input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; width: 12px; @@ -285,7 +285,7 @@ Error generating stack: `+f.message+` cursor: pointer; box-shadow: 0 0 4px rgba(99, 102, 241, 0.4); } - `})]}),b.jsx("span",{className:"text-[var(--text-muted)] font-mono whitespace-nowrap",children:IN(a,e)}),b.jsxs("span",{className:"text-[var(--text-muted)] font-mono whitespace-nowrap",children:["Event ",e,"/",n]}),b.jsx("div",{className:"flex items-center gap-0.5",children:BN.map(p=>b.jsxs("button",{onClick:()=>c(p),className:He("px-1.5 py-0.5 rounded text-xs font-mono transition-colors",l===p?"bg-[var(--accent)] text-white":"text-[var(--text-muted)] hover:text-[var(--text-secondary)] hover:bg-[var(--surface-hover)]"),children:[p,"×"]},p))})]})}const Sc=V.createContext(null);Sc.displayName="PanelGroupContext";const yt={group:"data-panel-group",groupDirection:"data-panel-group-direction",groupId:"data-panel-group-id",panel:"data-panel",panelCollapsible:"data-panel-collapsible",panelId:"data-panel-id",panelSize:"data-panel-size",resizeHandle:"data-resize-handle",resizeHandleActive:"data-resize-handle-active",resizeHandleEnabled:"data-panel-resize-handle-enabled",resizeHandleId:"data-panel-resize-handle-id",resizeHandleState:"data-resize-handle-state"},gm=10,Xi=V.useLayoutEffect,nv=X2.useId,UN=typeof nv=="function"?nv:()=>null;let PN=0;function xm(e=null){const n=UN(),r=V.useRef(e||n||null);return r.current===null&&(r.current=""+PN++),e??r.current}function bw({children:e,className:n="",collapsedSize:r,collapsible:l,defaultSize:a,forwardedRef:o,id:u,maxSize:c,minSize:d,onCollapse:h,onExpand:m,onResize:p,order:x,style:v,tagName:w="div",...E}){const S=V.useContext(Sc);if(S===null)throw Error("Panel components must be rendered within a PanelGroup container");const{collapsePanel:_,expandPanel:T,getPanelSize:k,getPanelStyle:A,groupId:q,isPanelCollapsed:j,reevaluatePanelConstraints:L,registerPanel:O,resizePanel:P,unregisterPanel:R}=S,H=xm(u),U=V.useRef({callbacks:{onCollapse:h,onExpand:m,onResize:p},constraints:{collapsedSize:r,collapsible:l,defaultSize:a,maxSize:c,minSize:d},id:H,idIsFromProps:u!==void 0,order:x});V.useRef({didLogMissingDefaultSizeWarning:!1}),Xi(()=>{const{callbacks:B,constraints:F}=U.current,z={...F};U.current.id=H,U.current.idIsFromProps=u!==void 0,U.current.order=x,B.onCollapse=h,B.onExpand=m,B.onResize=p,F.collapsedSize=r,F.collapsible=l,F.defaultSize=a,F.maxSize=c,F.minSize=d,(z.collapsedSize!==F.collapsedSize||z.collapsible!==F.collapsible||z.maxSize!==F.maxSize||z.minSize!==F.minSize)&&L(U.current,z)}),Xi(()=>{const B=U.current;return O(B),()=>{R(B)}},[x,H,O,R]),V.useImperativeHandle(o,()=>({collapse:()=>{_(U.current)},expand:B=>{T(U.current,B)},getId(){return H},getSize(){return k(U.current)},isCollapsed(){return j(U.current)},isExpanded(){return!j(U.current)},resize:B=>{P(U.current,B)}}),[_,T,k,j,H,P]);const ee=A(U.current,a);return V.createElement(w,{...E,children:e,className:n,id:H,style:{...ee,...v},[yt.groupId]:q,[yt.panel]:"",[yt.panelCollapsible]:l||void 0,[yt.panelId]:H,[yt.panelSize]:parseFloat(""+ee.flexGrow).toFixed(1)})}const ko=V.forwardRef((e,n)=>V.createElement(bw,{...e,forwardedRef:n}));bw.displayName="Panel";ko.displayName="forwardRef(Panel)";let Bp=null,Zu=-1,gi=null;function VN(e,n){if(n){const r=(n&Ew)!==0,l=(n&Nw)!==0,a=(n&Cw)!==0,o=(n&Tw)!==0;if(r)return a?"se-resize":o?"ne-resize":"e-resize";if(l)return a?"sw-resize":o?"nw-resize":"w-resize";if(a)return"s-resize";if(o)return"n-resize"}switch(e){case"horizontal":return"ew-resize";case"intersection":return"move";case"vertical":return"ns-resize"}}function $N(){gi!==null&&(document.head.removeChild(gi),Bp=null,gi=null,Zu=-1)}function sh(e,n){var r,l;const a=VN(e,n);if(Bp!==a){if(Bp=a,gi===null&&(gi=document.createElement("style"),document.head.appendChild(gi)),Zu>=0){var o;(o=gi.sheet)===null||o===void 0||o.removeRule(Zu)}Zu=(r=(l=gi.sheet)===null||l===void 0?void 0:l.insertRule(`*{cursor: ${a} !important;}`))!==null&&r!==void 0?r:-1}}function ww(e){return e.type==="keydown"}function Sw(e){return e.type.startsWith("pointer")}function _w(e){return e.type.startsWith("mouse")}function _c(e){if(Sw(e)){if(e.isPrimary)return{x:e.clientX,y:e.clientY}}else if(_w(e))return{x:e.clientX,y:e.clientY};return{x:1/0,y:1/0}}function GN(){if(typeof matchMedia=="function")return matchMedia("(pointer:coarse)").matches?"coarse":"fine"}function FN(e,n,r){return e.x n.x&&e.y n.y}function YN(e,n){if(e===n)throw new Error("Cannot compare node with itself");const r={a:lv(e),b:lv(n)};let l;for(;r.a.at(-1)===r.b.at(-1);)e=r.a.pop(),n=r.b.pop(),l=e;Re(l,"Stacking order can only be calculated for elements with a common ancestor");const a={a:iv(rv(r.a)),b:iv(rv(r.b))};if(a.a===a.b){const o=l.childNodes,u={a:r.a.at(-1),b:r.b.at(-1)};let c=o.length;for(;c--;){const d=o[c];if(d===u.a)return 1;if(d===u.b)return-1}}return Math.sign(a.a-a.b)}const XN=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function QN(e){var n;const r=getComputedStyle((n=kw(e))!==null&&n!==void 0?n:e).display;return r==="flex"||r==="inline-flex"}function ZN(e){const n=getComputedStyle(e);return!!(n.position==="fixed"||n.zIndex!=="auto"&&(n.position!=="static"||QN(e))||+n.opacity<1||"transform"in n&&n.transform!=="none"||"webkitTransform"in n&&n.webkitTransform!=="none"||"mixBlendMode"in n&&n.mixBlendMode!=="normal"||"filter"in n&&n.filter!=="none"||"webkitFilter"in n&&n.webkitFilter!=="none"||"isolation"in n&&n.isolation==="isolate"||XN.test(n.willChange)||n.webkitOverflowScrolling==="touch")}function rv(e){let n=e.length;for(;n--;){const r=e[n];if(Re(r,"Missing node"),ZN(r))return r}return null}function iv(e){return e&&Number(getComputedStyle(e).zIndex)||0}function lv(e){const n=[];for(;e;)n.push(e),e=kw(e);return n}function kw(e){const{parentNode:n}=e;return n&&n instanceof ShadowRoot?n.host:n}const Ew=1,Nw=2,Cw=4,Tw=8,KN=GN()==="coarse";let Fn=[],la=!1,Gi=new Map,kc=new Map;const Lo=new Set;function JN(e,n,r,l,a){var o;const{ownerDocument:u}=n,c={direction:r,element:n,hitAreaMargins:l,setResizeHandlerState:a},d=(o=Gi.get(u))!==null&&o!==void 0?o:0;return Gi.set(u,d+1),Lo.add(c),ic(),function(){var m;kc.delete(e),Lo.delete(c);const p=(m=Gi.get(u))!==null&&m!==void 0?m:1;if(Gi.set(u,p-1),ic(),p===1&&Gi.delete(u),Fn.includes(c)){const x=Fn.indexOf(c);x>=0&&Fn.splice(x,1),vm(),a("up",!0,null)}}}function WN(e){const{target:n}=e,{x:r,y:l}=_c(e);la=!0,ym({target:n,x:r,y:l}),ic(),Fn.length>0&&(lc("down",e),e.preventDefault(),Aw(n)||e.stopImmediatePropagation())}function uh(e){const{x:n,y:r}=_c(e);if(la&&e.buttons===0&&(la=!1,lc("up",e)),!la){const{target:l}=e;ym({target:l,x:n,y:r})}lc("move",e),vm(),Fn.length>0&&e.preventDefault()}function ch(e){const{target:n}=e,{x:r,y:l}=_c(e);kc.clear(),la=!1,Fn.length>0&&(e.preventDefault(),Aw(n)||e.stopImmediatePropagation()),lc("up",e),ym({target:n,x:r,y:l}),vm(),ic()}function Aw(e){let n=e;for(;n;){if(n.hasAttribute(yt.resizeHandle))return!0;n=n.parentElement}return!1}function ym({target:e,x:n,y:r}){Fn.splice(0);let l=null;(e instanceof HTMLElement||e instanceof SVGElement)&&(l=e),Lo.forEach(a=>{const{element:o,hitAreaMargins:u}=a,c=o.getBoundingClientRect(),{bottom:d,left:h,right:m,top:p}=c,x=KN?u.coarse:u.fine;if(n>=h-x&&n<=m+x&&r>=p-x&&r<=d+x){if(l!==null&&document.contains(l)&&o!==l&&!o.contains(l)&&!l.contains(o)&&YN(l,o)>0){let w=l,E=!1;for(;w&&!w.contains(o);){if(FN(w.getBoundingClientRect(),c)){E=!0;break}w=w.parentElement}if(E)return}Fn.push(a)}})}function fh(e,n){kc.set(e,n)}function vm(){let e=!1,n=!1;Fn.forEach(l=>{const{direction:a}=l;a==="horizontal"?e=!0:n=!0});let r=0;kc.forEach(l=>{r|=l}),e&&n?sh("intersection",r):e?sh("horizontal",r):n?sh("vertical",r):$N()}let dh=new AbortController;function ic(){dh.abort(),dh=new AbortController;const e={capture:!0,signal:dh.signal};Lo.size&&(la?(Fn.length>0&&Gi.forEach((n,r)=>{const{body:l}=r;n>0&&(l.addEventListener("contextmenu",ch,e),l.addEventListener("pointerleave",uh,e),l.addEventListener("pointermove",uh,e))}),window.addEventListener("pointerup",ch,e),window.addEventListener("pointercancel",ch,e)):Gi.forEach((n,r)=>{const{body:l}=r;n>0&&(l.addEventListener("pointerdown",WN,e),l.addEventListener("pointermove",uh,e))}))}function lc(e,n){Lo.forEach(r=>{const{setResizeHandlerState:l}=r,a=Fn.includes(r);l(e,a,n)})}function eC(){const[e,n]=V.useState(0);return V.useCallback(()=>n(r=>r+1),[])}function Re(e,n){if(!e)throw console.error(n),Error(n)}function Ki(e,n,r=gm){return e.toFixed(r)===n.toFixed(r)?0:e>n?1:-1}function jr(e,n,r=gm){return Ki(e,n,r)===0}function bn(e,n,r){return Ki(e,n,r)===0}function tC(e,n,r){if(e.length!==n.length)return!1;for(let l=0;l 0&&(e=e<0?0-_:_)}}}{const p=e<0?c:d,x=r[p];Re(x,`No panel constraints found for index ${p}`);const{collapsedSize:v=0,collapsible:w,minSize:E=0}=x;if(w){const S=n[p];if(Re(S!=null,`Previous layout not found for panel index ${p}`),bn(S,E)){const _=S-v;Ki(_,Math.abs(e))>0&&(e=e<0?0-_:_)}}}}{const p=e<0?1:-1;let x=e<0?d:c,v=0;for(;;){const E=n[x];Re(E!=null,`Previous layout not found for panel index ${x}`);const _=ta({panelConstraints:r,panelIndex:x,size:100})-E;if(v+=_,x+=p,x<0||x>=r.length)break}const w=Math.min(Math.abs(e),Math.abs(v));e=e<0?0-w:w}{let x=e<0?c:d;for(;x>=0&&x =0))break;e<0?x--:x++}}if(tC(a,u))return a;{const p=e<0?d:c,x=n[p];Re(x!=null,`Previous layout not found for panel index ${p}`);const v=x+h,w=ta({panelConstraints:r,panelIndex:p,size:v});if(u[p]=w,!bn(w,v)){let E=v-w,_=e<0?d:c;for(;_>=0&&_ 0?_--:_++}}}const m=u.reduce((p,x)=>x+p,0);return bn(m,100)?u:a}function nC({layout:e,panelsArray:n,pivotIndices:r}){let l=0,a=100,o=0,u=0;const c=r[0];Re(c!=null,"No pivot index found"),n.forEach((p,x)=>{const{constraints:v}=p,{maxSize:w=100,minSize:E=0}=v;x===c?(l=E,a=w):(o+=E,u+=w)});const d=Math.min(a,100-o),h=Math.max(l,100-u),m=e[c];return{valueMax:d,valueMin:h,valueNow:m}}function Ho(e,n=document){return Array.from(n.querySelectorAll(`[${yt.resizeHandleId}][data-panel-group-id="${e}"]`))}function jw(e,n,r=document){const a=Ho(e,r).findIndex(o=>o.getAttribute(yt.resizeHandleId)===n);return a??null}function zw(e,n,r){const l=jw(e,n,r);return l!=null?[l,l+1]:[-1,-1]}function Mw(e,n=document){var r;if(n instanceof HTMLElement&&(n==null||(r=n.dataset)===null||r===void 0?void 0:r.panelGroupId)==e)return n;const l=n.querySelector(`[data-panel-group][data-panel-group-id="${e}"]`);return l||null}function Ec(e,n=document){const r=n.querySelector(`[${yt.resizeHandleId}="${e}"]`);return r||null}function rC(e,n,r,l=document){var a,o,u,c;const d=Ec(n,l),h=Ho(e,l),m=d?h.indexOf(d):-1,p=(a=(o=r[m])===null||o===void 0?void 0:o.id)!==null&&a!==void 0?a:null,x=(u=(c=r[m+1])===null||c===void 0?void 0:c.id)!==null&&u!==void 0?u:null;return[p,x]}function iC({committedValuesRef:e,eagerValuesRef:n,groupId:r,layout:l,panelDataArray:a,panelGroupElement:o,setLayout:u}){V.useRef({didWarnAboutMissingResizeHandle:!1}),Xi(()=>{if(!o)return;const c=Ho(r,o);for(let d=0;d {c.forEach((d,h)=>{d.removeAttribute("aria-controls"),d.removeAttribute("aria-valuemax"),d.removeAttribute("aria-valuemin"),d.removeAttribute("aria-valuenow")})}},[r,l,a,o]),V.useEffect(()=>{if(!o)return;const c=n.current;Re(c,"Eager values not found");const{panelDataArray:d}=c,h=Mw(r,o);Re(h!=null,`No group found for id "${r}"`);const m=Ho(r,o);Re(m,`No resize handles found for group id "${r}"`);const p=m.map(x=>{const v=x.getAttribute(yt.resizeHandleId);Re(v,"Resize handle element has no handle id attribute");const[w,E]=rC(r,v,d,o);if(w==null||E==null)return()=>{};const S=_=>{if(!_.defaultPrevented)switch(_.key){case"Enter":{_.preventDefault();const T=d.findIndex(k=>k.id===w);if(T>=0){const k=d[T];Re(k,`No panel data found for index ${T}`);const A=l[T],{collapsedSize:q=0,collapsible:j,minSize:L=0}=k.constraints;if(A!=null&&j){const O=Eo({delta:bn(A,q)?L-q:q-A,initialLayout:l,panelConstraints:d.map(P=>P.constraints),pivotIndices:zw(r,v,o),prevLayout:l,trigger:"keyboard"});l!==O&&u(O)}}break}}};return x.addEventListener("keydown",S),()=>{x.removeEventListener("keydown",S)}});return()=>{p.forEach(x=>x())}},[o,e,n,r,l,a,u])}function av(e,n){if(e.length!==n.length)return!1;for(let r=0;r o.constraints);let l=0,a=100;for(let o=0;o {const o=e[a];Re(o,`Panel data not found for index ${a}`);const{callbacks:u,constraints:c,id:d}=o,{collapsedSize:h=0,collapsible:m}=c,p=r[d];if(p==null||l!==p){r[d]=l;const{onCollapse:x,onExpand:v,onResize:w}=u;w&&w(l,p),m&&(x||v)&&(v&&(p==null||jr(p,h))&&!jr(l,h)&&v(),x&&(p==null||!jr(p,h))&&jr(l,h)&&x())}})}function Ou(e,n){if(e.length!==n.length)return!1;for(let r=0;r {r!==null&&clearTimeout(r),r=setTimeout(()=>{e(...a)},n)}}function ov(e){try{if(typeof localStorage<"u")e.getItem=n=>localStorage.getItem(n),e.setItem=(n,r)=>{localStorage.setItem(n,r)};else throw new Error("localStorage not supported in this environment")}catch(n){console.error(n),e.getItem=()=>null,e.setItem=()=>{}}}function Rw(e){return`react-resizable-panels:${e}`}function Ow(e){return e.map(n=>{const{constraints:r,id:l,idIsFromProps:a,order:o}=n;return a?l:o?`${o}:${JSON.stringify(r)}`:JSON.stringify(r)}).sort((n,r)=>n.localeCompare(r)).join(",")}function Lw(e,n){try{const r=Rw(e),l=n.getItem(r);if(l){const a=JSON.parse(l);if(typeof a=="object"&&a!=null)return a}}catch{}return null}function cC(e,n,r){var l,a;const o=(l=Lw(e,r))!==null&&l!==void 0?l:{},u=Ow(n);return(a=o[u])!==null&&a!==void 0?a:null}function fC(e,n,r,l,a){var o;const u=Rw(e),c=Ow(n),d=(o=Lw(e,a))!==null&&o!==void 0?o:{};d[c]={expandToSizes:Object.fromEntries(r.entries()),layout:l};try{a.setItem(u,JSON.stringify(d))}catch(h){console.error(h)}}function sv({layout:e,panelConstraints:n}){const r=[...e],l=r.reduce((o,u)=>o+u,0);if(r.length!==n.length)throw Error(`Invalid ${n.length} panel layout: ${r.map(o=>`${o}%`).join(", ")}`);if(!bn(l,100)&&r.length>0)for(let o=0;o (ov(No),No.getItem(e)),setItem:(e,n)=>{ov(No),No.setItem(e,n)}},uv={};function Hw({autoSaveId:e=null,children:n,className:r="",direction:l,forwardedRef:a,id:o=null,onLayout:u=null,keyboardResizeBy:c=null,storage:d=No,style:h,tagName:m="div",...p}){const x=xm(o),v=V.useRef(null),[w,E]=V.useState(null),[S,_]=V.useState([]),T=eC(),k=V.useRef({}),A=V.useRef(new Map),q=V.useRef(0),j=V.useRef({autoSaveId:e,direction:l,dragState:w,id:x,keyboardResizeBy:c,onLayout:u,storage:d}),L=V.useRef({layout:S,panelDataArray:[],panelDataArrayChanged:!1});V.useRef({didLogIdAndOrderWarning:!1,didLogPanelConstraintsWarning:!1,prevPanelIds:[]}),V.useImperativeHandle(a,()=>({getId:()=>j.current.id,getLayout:()=>{const{layout:N}=L.current;return N},setLayout:N=>{const{onLayout:$}=j.current,{layout:X,panelDataArray:J}=L.current,ne=sv({layout:N,panelConstraints:J.map(re=>re.constraints)});av(X,ne)||(_(ne),L.current.layout=ne,$&&$(ne),Xl(J,ne,k.current))}}),[]),Xi(()=>{j.current.autoSaveId=e,j.current.direction=l,j.current.dragState=w,j.current.id=x,j.current.onLayout=u,j.current.storage=d}),iC({committedValuesRef:j,eagerValuesRef:L,groupId:x,layout:S,panelDataArray:L.current.panelDataArray,setLayout:_,panelGroupElement:v.current}),V.useEffect(()=>{const{panelDataArray:N}=L.current;if(e){if(S.length===0||S.length!==N.length)return;let $=uv[e];$==null&&($=uC(fC,dC),uv[e]=$);const X=[...N],J=new Map(A.current);$(e,X,J,S,d)}},[e,S,d]),V.useEffect(()=>{});const O=V.useCallback(N=>{const{onLayout:$}=j.current,{layout:X,panelDataArray:J}=L.current;if(N.constraints.collapsible){const ne=J.map(be=>be.constraints),{collapsedSize:re=0,panelSize:se,pivotIndices:xe}=Ui(J,N,X);if(Re(se!=null,`Panel size not found for panel "${N.id}"`),!jr(se,re)){A.current.set(N.id,se);const ye=Jl(J,N)===J.length-1?se-re:re-se,pe=Eo({delta:ye,initialLayout:X,panelConstraints:ne,pivotIndices:xe,prevLayout:X,trigger:"imperative-api"});Ou(X,pe)||(_(pe),L.current.layout=pe,$&&$(pe),Xl(J,pe,k.current))}}},[]),P=V.useCallback((N,$)=>{const{onLayout:X}=j.current,{layout:J,panelDataArray:ne}=L.current;if(N.constraints.collapsible){const re=ne.map(_e=>_e.constraints),{collapsedSize:se=0,panelSize:xe=0,minSize:be=0,pivotIndices:ye}=Ui(ne,N,J),pe=$??be;if(jr(xe,se)){const _e=A.current.get(N.id),ze=_e!=null&&_e>=pe?_e:pe,ut=Jl(ne,N)===ne.length-1?xe-ze:ze-xe,nt=Eo({delta:ut,initialLayout:J,panelConstraints:re,pivotIndices:ye,prevLayout:J,trigger:"imperative-api"});Ou(J,nt)||(_(nt),L.current.layout=nt,X&&X(nt),Xl(ne,nt,k.current))}}},[]),R=V.useCallback(N=>{const{layout:$,panelDataArray:X}=L.current,{panelSize:J}=Ui(X,N,$);return Re(J!=null,`Panel size not found for panel "${N.id}"`),J},[]),H=V.useCallback((N,$)=>{const{panelDataArray:X}=L.current,J=Jl(X,N);return sC({defaultSize:$,dragState:w,layout:S,panelData:X,panelIndex:J})},[w,S]),U=V.useCallback(N=>{const{layout:$,panelDataArray:X}=L.current,{collapsedSize:J=0,collapsible:ne,panelSize:re}=Ui(X,N,$);return Re(re!=null,`Panel size not found for panel "${N.id}"`),ne===!0&&jr(re,J)},[]),ee=V.useCallback(N=>{const{layout:$,panelDataArray:X}=L.current,{collapsedSize:J=0,collapsible:ne,panelSize:re}=Ui(X,N,$);return Re(re!=null,`Panel size not found for panel "${N.id}"`),!ne||Ki(re,J)>0},[]),B=V.useCallback(N=>{const{panelDataArray:$}=L.current;$.push(N),$.sort((X,J)=>{const ne=X.order,re=J.order;return ne==null&&re==null?0:ne==null?-1:re==null?1:ne-re}),L.current.panelDataArrayChanged=!0,T()},[T]);Xi(()=>{if(L.current.panelDataArrayChanged){L.current.panelDataArrayChanged=!1;const{autoSaveId:N,onLayout:$,storage:X}=j.current,{layout:J,panelDataArray:ne}=L.current;let re=null;if(N){const xe=cC(N,ne,X);xe&&(A.current=new Map(Object.entries(xe.expandToSizes)),re=xe.layout)}re==null&&(re=oC({panelDataArray:ne}));const se=sv({layout:re,panelConstraints:ne.map(xe=>xe.constraints)});av(J,se)||(_(se),L.current.layout=se,$&&$(se),Xl(ne,se,k.current))}}),Xi(()=>{const N=L.current;return()=>{N.layout=[]}},[]);const F=V.useCallback(N=>{let $=!1;const X=v.current;return X&&window.getComputedStyle(X,null).getPropertyValue("direction")==="rtl"&&($=!0),function(ne){ne.preventDefault();const re=v.current;if(!re)return()=>null;const{direction:se,dragState:xe,id:be,keyboardResizeBy:ye,onLayout:pe}=j.current,{layout:_e,panelDataArray:ze}=L.current,{initialLayout:Te}=xe??{},ut=zw(be,N,re);let nt=aC(ne,N,se,xe,ye,re);const zt=se==="horizontal";zt&&$&&(nt=-nt);const Vt=ze.map(Rn=>Rn.constraints),Ht=Eo({delta:nt,initialLayout:Te??_e,panelConstraints:Vt,pivotIndices:ut,prevLayout:_e,trigger:ww(ne)?"keyboard":"mouse-or-touch"}),kn=!Ou(_e,Ht);(Sw(ne)||_w(ne))&&q.current!=nt&&(q.current=nt,!kn&&nt!==0?zt?fh(N,nt<0?Ew:Nw):fh(N,nt<0?Cw:Tw):fh(N,0)),kn&&(_(Ht),L.current.layout=Ht,pe&&pe(Ht),Xl(ze,Ht,k.current))}},[]),z=V.useCallback((N,$)=>{const{onLayout:X}=j.current,{layout:J,panelDataArray:ne}=L.current,re=ne.map(_e=>_e.constraints),{panelSize:se,pivotIndices:xe}=Ui(ne,N,J);Re(se!=null,`Panel size not found for panel "${N.id}"`);const ye=Jl(ne,N)===ne.length-1?se-$:$-se,pe=Eo({delta:ye,initialLayout:J,panelConstraints:re,pivotIndices:xe,prevLayout:J,trigger:"imperative-api"});Ou(J,pe)||(_(pe),L.current.layout=pe,X&&X(pe),Xl(ne,pe,k.current))},[]),G=V.useCallback((N,$)=>{const{layout:X,panelDataArray:J}=L.current,{collapsedSize:ne=0,collapsible:re}=$,{collapsedSize:se=0,collapsible:xe,maxSize:be=100,minSize:ye=0}=N.constraints,{panelSize:pe}=Ui(J,N,X);pe!=null&&(re&&xe&&jr(pe,ne)?jr(ne,se)||z(N,se):pe be&&z(N,be))},[z]),Q=V.useCallback((N,$)=>{const{direction:X}=j.current,{layout:J}=L.current;if(!v.current)return;const ne=Ec(N,v.current);Re(ne,`Drag handle element not found for id "${N}"`);const re=Dw(X,$);E({dragHandleId:N,dragHandleRect:ne.getBoundingClientRect(),initialCursorPosition:re,initialLayout:J})},[]),K=V.useCallback(()=>{E(null)},[]),M=V.useCallback(N=>{const{panelDataArray:$}=L.current,X=Jl($,N);X>=0&&($.splice(X,1),delete k.current[N.id],L.current.panelDataArrayChanged=!0,T())},[T]),I=V.useMemo(()=>({collapsePanel:O,direction:l,dragState:w,expandPanel:P,getPanelSize:R,getPanelStyle:H,groupId:x,isPanelCollapsed:U,isPanelExpanded:ee,reevaluatePanelConstraints:G,registerPanel:B,registerResizeHandle:F,resizePanel:z,startDragging:Q,stopDragging:K,unregisterPanel:M,panelGroupElement:v.current}),[O,w,l,P,R,H,x,U,ee,G,B,F,z,Q,K,M]),Y={display:"flex",flexDirection:l==="horizontal"?"row":"column",height:"100%",overflow:"hidden",width:"100%"};return V.createElement(Sc.Provider,{value:I},V.createElement(m,{...p,children:n,className:r,id:o,ref:v,style:{...Y,...h},[yt.group]:"",[yt.groupDirection]:l,[yt.groupId]:x}))}const Ip=V.forwardRef((e,n)=>V.createElement(Hw,{...e,forwardedRef:n}));Hw.displayName="PanelGroup";Ip.displayName="forwardRef(PanelGroup)";function Jl(e,n){return e.findIndex(r=>r===n||r.id===n.id)}function Ui(e,n,r){const l=Jl(e,n),o=l===e.length-1?[l-1,l]:[l,l+1],u=r[l];return{...n.constraints,panelSize:u,pivotIndices:o}}function hC({disabled:e,handleId:n,resizeHandler:r,panelGroupElement:l}){V.useEffect(()=>{if(e||r==null||l==null)return;const a=Ec(n,l);if(a==null)return;const o=u=>{if(!u.defaultPrevented)switch(u.key){case"ArrowDown":case"ArrowLeft":case"ArrowRight":case"ArrowUp":case"End":case"Home":{u.preventDefault(),r(u);break}case"F6":{u.preventDefault();const c=a.getAttribute(yt.groupId);Re(c,`No group element found for id "${c}"`);const d=Ho(c,l),h=jw(c,n,l);Re(h!==null,`No resize element found for id "${n}"`);const m=u.shiftKey?h>0?h-1:d.length-1:h+1 {a.removeEventListener("keydown",o)}},[l,e,n,r])}function qp({children:e=null,className:n="",disabled:r=!1,hitAreaMargins:l,id:a,onBlur:o,onClick:u,onDragging:c,onFocus:d,onPointerDown:h,onPointerUp:m,style:p={},tabIndex:x=0,tagName:v="div",...w}){var E,S;const _=V.useRef(null),T=V.useRef({onClick:u,onDragging:c,onPointerDown:h,onPointerUp:m});V.useEffect(()=>{T.current.onClick=u,T.current.onDragging=c,T.current.onPointerDown=h,T.current.onPointerUp=m});const k=V.useContext(Sc);if(k===null)throw Error("PanelResizeHandle components must be rendered within a PanelGroup container");const{direction:A,groupId:q,registerResizeHandle:j,startDragging:L,stopDragging:O,panelGroupElement:P}=k,R=xm(a),[H,U]=V.useState("inactive"),[ee,B]=V.useState(!1),[F,z]=V.useState(null),G=V.useRef({state:H});Xi(()=>{G.current.state=H}),V.useEffect(()=>{if(r)z(null);else{const I=j(R);z(()=>I)}},[r,R,j]);const Q=(E=l==null?void 0:l.coarse)!==null&&E!==void 0?E:15,K=(S=l==null?void 0:l.fine)!==null&&S!==void 0?S:5;V.useEffect(()=>{if(r||F==null)return;const I=_.current;Re(I,"Element ref not attached");let Y=!1;return JN(R,I,A,{coarse:Q,fine:K},($,X,J)=>{if(!X){U("inactive");return}switch($){case"down":{U("drag"),Y=!1,Re(J,'Expected event to be defined for "down" action'),L(R,J);const{onDragging:ne,onPointerDown:re}=T.current;ne==null||ne(!0),re==null||re();break}case"move":{const{state:ne}=G.current;Y=!0,ne!=="drag"&&U("hover"),Re(J,'Expected event to be defined for "move" action'),F(J);break}case"up":{U("hover"),O();const{onClick:ne,onDragging:re,onPointerUp:se}=T.current;re==null||re(!1),se==null||se(),Y||ne==null||ne();break}}})},[Q,A,r,K,j,R,F,L,O]),hC({disabled:r,handleId:R,resizeHandler:F,panelGroupElement:P});const M={touchAction:"none",userSelect:"none"};return V.createElement(v,{...w,children:e,className:n,id:a,onBlur:()=>{B(!1),o==null||o()},onFocus:()=>{B(!0),d==null||d()},ref:_,role:"separator",style:{...M,...p},tabIndex:x,[yt.groupDirection]:A,[yt.groupId]:q,[yt.resizeHandle]:"",[yt.resizeHandleActive]:H==="drag"?"pointer":ee?"keyboard":void 0,[yt.resizeHandleEnabled]:!r,[yt.resizeHandleId]:R,[yt.resizeHandleState]:H})}qp.displayName="PanelResizeHandle";function jt(e){if(typeof e=="string"||typeof e=="number")return""+e;let n="";if(Array.isArray(e))for(let r=0,l;r {}};function Nc(){for(var e=0,n=arguments.length,r={},l;e =0&&(l=r.slice(a+1),r=r.slice(0,a)),r&&!n.hasOwnProperty(r))throw new Error("unknown type: "+r);return{type:r,name:l}})}Ku.prototype=Nc.prototype={constructor:Ku,on:function(e,n){var r=this._,l=mC(e+"",r),a,o=-1,u=l.length;if(arguments.length<2){for(;++o0)for(var r=new Array(a),l=0,a,o;l=0&&(n=e.slice(0,r))!=="xmlns"&&(e=e.slice(r+1)),fv.hasOwnProperty(n)?{space:fv[n],local:e}:e}function xC(e){return function(){var n=this.ownerDocument,r=this.namespaceURI;return r===Up&&n.documentElement.namespaceURI===Up?n.createElement(e):n.createElementNS(r,e)}}function yC(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Bw(e){var n=Cc(e);return(n.local?yC:xC)(n)}function vC(){}function bm(e){return e==null?vC:function(){return this.querySelector(e)}}function bC(e){typeof e!="function"&&(e=bm(e));for(var n=this._groups,r=n.length,l=new Array(r),a=0;a =k&&(k=T+1);!(q=S[k])&&++k =0;)(u=l[a])&&(o&&u.compareDocumentPosition(o)^4&&o.parentNode.insertBefore(u,o),o=u);return this}function GC(e){e||(e=FC);function n(p,x){return p&&x?e(p.__data__,x.__data__):!p-!x}for(var r=this._groups,l=r.length,a=new Array(l),o=0;o n?1:e>=n?0:NaN}function YC(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function XC(){return Array.from(this)}function QC(){for(var e=this._groups,n=0,r=e.length;n 1?this.each((n==null?a3:typeof n=="function"?s3:o3)(e,n,r??"")):ua(this.node(),e)}function ua(e,n){return e.style.getPropertyValue(n)||Vw(e).getComputedStyle(e,null).getPropertyValue(n)}function c3(e){return function(){delete this[e]}}function f3(e,n){return function(){this[e]=n}}function d3(e,n){return function(){var r=n.apply(this,arguments);r==null?delete this[e]:this[e]=r}}function h3(e,n){return arguments.length>1?this.each((n==null?c3:typeof n=="function"?d3:f3)(e,n)):this.node()[e]}function $w(e){return e.trim().split(/^|\s+/)}function wm(e){return e.classList||new Gw(e)}function Gw(e){this._node=e,this._names=$w(e.getAttribute("class")||"")}Gw.prototype={add:function(e){var n=this._names.indexOf(e);n<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var n=this._names.indexOf(e);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function Fw(e,n){for(var r=wm(e),l=-1,a=n.length;++l=0&&(r=n.slice(l+1),n=n.slice(0,l)),{type:n,name:r}})}function U3(e){return function(){var n=this.__on;if(n){for(var r=0,l=-1,a=n.length,o;r()=>e;function Pp(e,{sourceEvent:n,subject:r,target:l,identifier:a,active:o,x:u,y:c,dx:d,dy:h,dispatch:m}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},subject:{value:r,enumerable:!0,configurable:!0},target:{value:l,enumerable:!0,configurable:!0},identifier:{value:a,enumerable:!0,configurable:!0},active:{value:o,enumerable:!0,configurable:!0},x:{value:u,enumerable:!0,configurable:!0},y:{value:c,enumerable:!0,configurable:!0},dx:{value:d,enumerable:!0,configurable:!0},dy:{value:h,enumerable:!0,configurable:!0},_:{value:m}})}Pp.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function K3(e){return!e.ctrlKey&&!e.button}function J3(){return this.parentNode}function W3(e,n){return n??{x:e.x,y:e.y}}function eT(){return navigator.maxTouchPoints||"ontouchstart"in this}function Jw(){var e=K3,n=J3,r=W3,l=eT,a={},o=Nc("start","drag","end"),u=0,c,d,h,m,p=0;function x(A){A.on("mousedown.drag",v).filter(l).on("touchstart.drag",S).on("touchmove.drag",_,Z3).on("touchend.drag touchcancel.drag",T).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function v(A,q){if(!(m||!e.call(this,A,q))){var j=k(this,n.call(this,A,q),A,q,"mouse");j&&(wn(A.view).on("mousemove.drag",w,Bo).on("mouseup.drag",E,Bo),Zw(A.view),hh(A),h=!1,c=A.clientX,d=A.clientY,j("start",A))}}function w(A){if(aa(A),!h){var q=A.clientX-c,j=A.clientY-d;h=q*q+j*j>p}a.mouse("drag",A)}function E(A){wn(A.view).on("mousemove.drag mouseup.drag",null),Kw(A.view,h),aa(A),a.mouse("end",A)}function S(A,q){if(e.call(this,A,q)){var j=A.changedTouches,L=n.call(this,A,q),O=j.length,P,R;for(P=0;P >8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):r===8?Hu(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):r===4?Hu(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=nT.exec(e))?new un(n[1],n[2],n[3],1):(n=rT.exec(e))?new un(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=iT.exec(e))?Hu(n[1],n[2],n[3],n[4]):(n=lT.exec(e))?Hu(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=aT.exec(e))?yv(n[1],n[2]/100,n[3]/100,1):(n=oT.exec(e))?yv(n[1],n[2]/100,n[3]/100,n[4]):dv.hasOwnProperty(e)?mv(dv[e]):e==="transparent"?new un(NaN,NaN,NaN,0):null}function mv(e){return new un(e>>16&255,e>>8&255,e&255,1)}function Hu(e,n,r,l){return l<=0&&(e=n=r=NaN),new un(e,n,r,l)}function cT(e){return e instanceof Jo||(e=Ji(e)),e?(e=e.rgb(),new un(e.r,e.g,e.b,e.opacity)):new un}function Vp(e,n,r,l){return arguments.length===1?cT(e):new un(e,n,r,l??1)}function un(e,n,r,l){this.r=+e,this.g=+n,this.b=+r,this.opacity=+l}Sm(un,Vp,Ww(Jo,{brighter(e){return e=e==null?oc:Math.pow(oc,e),new un(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Io:Math.pow(Io,e),new un(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new un(Qi(this.r),Qi(this.g),Qi(this.b),sc(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:gv,formatHex:gv,formatHex8:fT,formatRgb:xv,toString:xv}));function gv(){return`#${Fi(this.r)}${Fi(this.g)}${Fi(this.b)}`}function fT(){return`#${Fi(this.r)}${Fi(this.g)}${Fi(this.b)}${Fi((isNaN(this.opacity)?1:this.opacity)*255)}`}function xv(){const e=sc(this.opacity);return`${e===1?"rgb(":"rgba("}${Qi(this.r)}, ${Qi(this.g)}, ${Qi(this.b)}${e===1?")":`, ${e})`}`}function sc(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Qi(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Fi(e){return e=Qi(e),(e<16?"0":"")+e.toString(16)}function yv(e,n,r,l){return l<=0?e=n=r=NaN:r<=0||r>=1?e=n=NaN:n<=0&&(e=NaN),new Pn(e,n,r,l)}function eS(e){if(e instanceof Pn)return new Pn(e.h,e.s,e.l,e.opacity);if(e instanceof Jo||(e=Ji(e)),!e)return new Pn;if(e instanceof Pn)return e;e=e.rgb();var n=e.r/255,r=e.g/255,l=e.b/255,a=Math.min(n,r,l),o=Math.max(n,r,l),u=NaN,c=o-a,d=(o+a)/2;return c?(n===o?u=(r-l)/c+(r 0&&d<1?0:u,new Pn(u,c,d,e.opacity)}function dT(e,n,r,l){return arguments.length===1?eS(e):new Pn(e,n,r,l??1)}function Pn(e,n,r,l){this.h=+e,this.s=+n,this.l=+r,this.opacity=+l}Sm(Pn,dT,Ww(Jo,{brighter(e){return e=e==null?oc:Math.pow(oc,e),new Pn(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Io:Math.pow(Io,e),new Pn(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,n=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,l=r+(r<.5?r:1-r)*n,a=2*r-l;return new un(ph(e>=240?e-240:e+120,a,l),ph(e,a,l),ph(e<120?e+240:e-120,a,l),this.opacity)},clamp(){return new Pn(vv(this.h),Bu(this.s),Bu(this.l),sc(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(){const e=sc(this.opacity);return`${e===1?"hsl(":"hsla("}${vv(this.h)}, ${Bu(this.s)*100}%, ${Bu(this.l)*100}%${e===1?")":`, ${e})`}`}}));function vv(e){return e=(e||0)%360,e<0?e+360:e}function Bu(e){return Math.max(0,Math.min(1,e||0))}function ph(e,n,r){return(e<60?n+(r-n)*e/60:e<180?r:e<240?n+(r-n)*(240-e)/60:n)*255}const _m=e=>()=>e;function hT(e,n){return function(r){return e+r*n}}function pT(e,n,r){return e=Math.pow(e,r),n=Math.pow(n,r)-e,r=1/r,function(l){return Math.pow(e+l*n,r)}}function mT(e){return(e=+e)==1?tS:function(n,r){return r-n?pT(n,r,e):_m(isNaN(n)?r:n)}}function tS(e,n){var r=n-e;return r?hT(e,r):_m(isNaN(e)?n:e)}const uc=(function e(n){var r=mT(n);function l(a,o){var u=r((a=Vp(a)).r,(o=Vp(o)).r),c=r(a.g,o.g),d=r(a.b,o.b),h=tS(a.opacity,o.opacity);return function(m){return a.r=u(m),a.g=c(m),a.b=d(m),a.opacity=h(m),a+""}}return l.gamma=e,l})(1);function gT(e,n){n||(n=[]);var r=e?Math.min(n.length,e.length):0,l=n.slice(),a;return function(o){for(a=0;a r&&(o=n.slice(r,o),c[u]?c[u]+=o:c[++u]=o),(l=l[0])===(a=a[0])?c[u]?c[u]+=a:c[++u]=a:(c[++u]=null,d.push({i:u,x:rr(l,a)})),r=mh.lastIndex;return r 180?m+=360:m-h>180&&(h+=360),x.push({i:p.push(a(p)+"rotate(",null,l)-2,x:rr(h,m)})):m&&p.push(a(p)+"rotate("+m+l)}function c(h,m,p,x){h!==m?x.push({i:p.push(a(p)+"skewX(",null,l)-2,x:rr(h,m)}):m&&p.push(a(p)+"skewX("+m+l)}function d(h,m,p,x,v,w){if(h!==p||m!==x){var E=v.push(a(v)+"scale(",null,",",null,")");w.push({i:E-4,x:rr(h,p)},{i:E-2,x:rr(m,x)})}else(p!==1||x!==1)&&v.push(a(v)+"scale("+p+","+x+")")}return function(h,m){var p=[],x=[];return h=e(h),m=e(m),o(h.translateX,h.translateY,m.translateX,m.translateY,p,x),u(h.rotate,m.rotate,p,x),c(h.skewX,m.skewX,p,x),d(h.scaleX,h.scaleY,m.scaleX,m.scaleY,p,x),h=m=null,function(v){for(var w=-1,E=x.length,S;++w =0&&e._call.call(void 0,n),e=e._next;--ca}function Sv(){Wi=(fc=Uo.now())+Tc,ca=Co=0;try{zT()}finally{ca=0,DT(),Wi=0}}function MT(){var e=Uo.now(),n=e-fc;n>lS&&(Tc-=n,fc=e)}function DT(){for(var e,n=cc,r,l=1/0;n;)n._call?(l>n._time&&(l=n._time),e=n,n=n._next):(r=n._next,n._next=null,n=e?e._next=r:cc=r);To=e,Fp(l)}function Fp(e){if(!ca){Co&&(Co=clearTimeout(Co));var n=e-Wi;n>24?(e<1/0&&(Co=setTimeout(Sv,e-Uo.now()-Tc)),yo&&(yo=clearInterval(yo))):(yo||(fc=Uo.now(),yo=setInterval(MT,lS)),ca=1,aS(Sv))}}function _v(e,n,r){var l=new dc;return n=n==null?0:+n,l.restart(a=>{l.stop(),e(a+n)},n,r),l}var RT=Nc("start","end","cancel","interrupt"),OT=[],sS=0,kv=1,Yp=2,Wu=3,Ev=4,Xp=5,ec=6;function Ac(e,n,r,l,a,o){var u=e.__transition;if(!u)e.__transition={};else if(r in u)return;LT(e,r,{name:n,index:l,group:a,on:RT,tween:OT,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:sS})}function Em(e,n){var r=Qn(e,n);if(r.state>sS)throw new Error("too late; already scheduled");return r}function ar(e,n){var r=Qn(e,n);if(r.state>Wu)throw new Error("too late; already running");return r}function Qn(e,n){var r=e.__transition;if(!r||!(r=r[n]))throw new Error("transition not found");return r}function LT(e,n,r){var l=e.__transition,a;l[n]=r,r.timer=oS(o,0,r.time);function o(h){r.state=kv,r.timer.restart(u,r.delay,r.time),r.delay<=h&&u(h-r.delay)}function u(h){var m,p,x,v;if(r.state!==kv)return d();for(m in l)if(v=l[m],v.name===r.name){if(v.state===Wu)return _v(u);v.state===Ev?(v.state=ec,v.timer.stop(),v.on.call("interrupt",e,e.__data__,v.index,v.group),delete l[m]):+m Yp&&l.state =0&&(n=n.slice(0,r)),!n||n==="start"})}function dA(e,n,r){var l,a,o=fA(n)?Em:ar;return function(){var u=o(this,e),c=u.on;c!==l&&(a=(l=c).copy()).on(n,r),u.on=a}}function hA(e,n){var r=this._id;return arguments.length<2?Qn(this.node(),r).on.on(e):this.each(dA(r,e,n))}function pA(e){return function(){var n=this.parentNode;for(var r in this.__transition)if(+r!==e)return;n&&n.removeChild(this)}}function mA(){return this.on("end.remove",pA(this._id))}function gA(e){var n=this._name,r=this._id;typeof e!="function"&&(e=bm(e));for(var l=this._groups,a=l.length,o=new Array(a),u=0;u()=>e;function UA(e,{sourceEvent:n,target:r,transform:l,dispatch:a}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},transform:{value:l,enumerable:!0,configurable:!0},_:{value:a}})}function zr(e,n,r){this.k=e,this.x=n,this.y=r}zr.prototype={constructor:zr,scale:function(e){return e===1?this:new zr(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new zr(this.k,this.x+this.k*e,this.y+this.k*n)},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 jc=new zr(1,0,0);dS.prototype=zr.prototype;function dS(e){for(;!e.__zoom;)if(!(e=e.parentNode))return jc;return e.__zoom}function gh(e){e.stopImmediatePropagation()}function vo(e){e.preventDefault(),e.stopImmediatePropagation()}function PA(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function VA(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.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 Nv(){return this.__zoom||jc}function $A(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function GA(){return navigator.maxTouchPoints||"ontouchstart"in this}function FA(e,n,r){var l=e.invertX(n[0][0])-r[0][0],a=e.invertX(n[1][0])-r[1][0],o=e.invertY(n[0][1])-r[0][1],u=e.invertY(n[1][1])-r[1][1];return e.translate(a>l?(l+a)/2:Math.min(0,l)||Math.max(0,a),u>o?(o+u)/2:Math.min(0,o)||Math.max(0,u))}function hS(){var e=PA,n=VA,r=FA,l=$A,a=GA,o=[0,1/0],u=[[-1/0,-1/0],[1/0,1/0]],c=250,d=Ju,h=Nc("start","zoom","end"),m,p,x,v=500,w=150,E=0,S=10;function _(B){B.property("__zoom",Nv).on("wheel.zoom",O,{passive:!1}).on("mousedown.zoom",P).on("dblclick.zoom",R).filter(a).on("touchstart.zoom",H).on("touchmove.zoom",U).on("touchend.zoom touchcancel.zoom",ee).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}_.transform=function(B,F,z,G){var Q=B.selection?B.selection():B;Q.property("__zoom",Nv),B!==Q?q(B,F,z,G):Q.interrupt().each(function(){j(this,arguments).event(G).start().zoom(null,typeof F=="function"?F.apply(this,arguments):F).end()})},_.scaleBy=function(B,F,z,G){_.scaleTo(B,function(){var Q=this.__zoom.k,K=typeof F=="function"?F.apply(this,arguments):F;return Q*K},z,G)},_.scaleTo=function(B,F,z,G){_.transform(B,function(){var Q=n.apply(this,arguments),K=this.__zoom,M=z==null?A(Q):typeof z=="function"?z.apply(this,arguments):z,I=K.invert(M),Y=typeof F=="function"?F.apply(this,arguments):F;return r(k(T(K,Y),M,I),Q,u)},z,G)},_.translateBy=function(B,F,z,G){_.transform(B,function(){return r(this.__zoom.translate(typeof F=="function"?F.apply(this,arguments):F,typeof z=="function"?z.apply(this,arguments):z),n.apply(this,arguments),u)},null,G)},_.translateTo=function(B,F,z,G,Q){_.transform(B,function(){var K=n.apply(this,arguments),M=this.__zoom,I=G==null?A(K):typeof G=="function"?G.apply(this,arguments):G;return r(jc.translate(I[0],I[1]).scale(M.k).translate(typeof F=="function"?-F.apply(this,arguments):-F,typeof z=="function"?-z.apply(this,arguments):-z),K,u)},G,Q)};function T(B,F){return F=Math.max(o[0],Math.min(o[1],F)),F===B.k?B:new zr(F,B.x,B.y)}function k(B,F,z){var G=F[0]-z[0]*B.k,Q=F[1]-z[1]*B.k;return G===B.x&&Q===B.y?B:new zr(B.k,G,Q)}function A(B){return[(+B[0][0]+ +B[1][0])/2,(+B[0][1]+ +B[1][1])/2]}function q(B,F,z,G){B.on("start.zoom",function(){j(this,arguments).event(G).start()}).on("interrupt.zoom end.zoom",function(){j(this,arguments).event(G).end()}).tween("zoom",function(){var Q=this,K=arguments,M=j(Q,K).event(G),I=n.apply(Q,K),Y=z==null?A(I):typeof z=="function"?z.apply(Q,K):z,N=Math.max(I[1][0]-I[0][0],I[1][1]-I[0][1]),$=Q.__zoom,X=typeof F=="function"?F.apply(Q,K):F,J=d($.invert(Y).concat(N/$.k),X.invert(Y).concat(N/X.k));return function(ne){if(ne===1)ne=X;else{var re=J(ne),se=N/re[2];ne=new zr(se,Y[0]-re[0]*se,Y[1]-re[1]*se)}M.zoom(null,ne)}})}function j(B,F,z){return!z&&B.__zooming||new L(B,F)}function L(B,F){this.that=B,this.args=F,this.active=0,this.sourceEvent=null,this.extent=n.apply(B,F),this.taps=0}L.prototype={event:function(B){return B&&(this.sourceEvent=B),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(B,F){return this.mouse&&B!=="mouse"&&(this.mouse[1]=F.invert(this.mouse[0])),this.touch0&&B!=="touch"&&(this.touch0[1]=F.invert(this.touch0[0])),this.touch1&&B!=="touch"&&(this.touch1[1]=F.invert(this.touch1[0])),this.that.__zoom=F,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(B){var F=wn(this.that).datum();h.call(B,this.that,new UA(B,{sourceEvent:this.sourceEvent,target:_,transform:this.that.__zoom,dispatch:h}),F)}};function O(B,...F){if(!e.apply(this,arguments))return;var z=j(this,F).event(B),G=this.__zoom,Q=Math.max(o[0],Math.min(o[1],G.k*Math.pow(2,l.apply(this,arguments)))),K=Un(B);if(z.wheel)(z.mouse[0][0]!==K[0]||z.mouse[0][1]!==K[1])&&(z.mouse[1]=G.invert(z.mouse[0]=K)),clearTimeout(z.wheel);else{if(G.k===Q)return;z.mouse=[K,G.invert(K)],tc(this),z.start()}vo(B),z.wheel=setTimeout(M,w),z.zoom("mouse",r(k(T(G,Q),z.mouse[0],z.mouse[1]),z.extent,u));function M(){z.wheel=null,z.end()}}function P(B,...F){if(x||!e.apply(this,arguments))return;var z=B.currentTarget,G=j(this,F,!0).event(B),Q=wn(B.view).on("mousemove.zoom",Y,!0).on("mouseup.zoom",N,!0),K=Un(B,z),M=B.clientX,I=B.clientY;Zw(B.view),gh(B),G.mouse=[K,this.__zoom.invert(K)],tc(this),G.start();function Y($){if(vo($),!G.moved){var X=$.clientX-M,J=$.clientY-I;G.moved=X*X+J*J>E}G.event($).zoom("mouse",r(k(G.that.__zoom,G.mouse[0]=Un($,z),G.mouse[1]),G.extent,u))}function N($){Q.on("mousemove.zoom mouseup.zoom",null),Kw($.view,G.moved),vo($),G.event($).end()}}function R(B,...F){if(e.apply(this,arguments)){var z=this.__zoom,G=Un(B.changedTouches?B.changedTouches[0]:B,this),Q=z.invert(G),K=z.k*(B.shiftKey?.5:2),M=r(k(T(z,K),G,Q),n.apply(this,F),u);vo(B),c>0?wn(this).transition().duration(c).call(q,M,G,B):wn(this).call(_.transform,M,G,B)}}function H(B,...F){if(e.apply(this,arguments)){var z=B.touches,G=z.length,Q=j(this,F,B.changedTouches.length===G).event(B),K,M,I,Y;for(gh(B),M=0;M "[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:n,sourceHandle:r,targetHandle:l})=>`Couldn't create edge for ${e} handle id: "${e==="source"?r:l}", edge id: ${n}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."},Po=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],pS=["Enter"," ","Escape"],mS={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:e,x:n,y:r})=>`Moved selected node ${e}. New position, x: ${n}, y: ${r}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var fa;(function(e){e.Strict="strict",e.Loose="loose"})(fa||(fa={}));var Zi;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(Zi||(Zi={}));var Vo;(function(e){e.Partial="partial",e.Full="full"})(Vo||(Vo={}));const gS={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var xi;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(xi||(xi={}));var hc;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(hc||(hc={}));var ve;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(ve||(ve={}));const Cv={[ve.Left]:ve.Right,[ve.Right]:ve.Left,[ve.Top]:ve.Bottom,[ve.Bottom]:ve.Top};function xS(e){return e===null?null:e?"valid":"invalid"}const yS=e=>"id"in e&&"source"in e&&"target"in e,YA=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),Cm=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),Wo=(e,n=[0,0])=>{const{width:r,height:l}=Or(e),a=e.origin??n,o=r*a[0],u=l*a[1];return{x:e.position.x-o,y:e.position.y-u}},XA=(e,n={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const r=e.reduce((l,a)=>{const o=typeof a=="string";let u=!n.nodeLookup&&!o?a:void 0;n.nodeLookup&&(u=o?n.nodeLookup.get(a):Cm(a)?a:n.nodeLookup.get(a.id));const c=u?pc(u,n.nodeOrigin):{x:0,y:0,x2:0,y2:0};return zc(l,c)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return Mc(r)},es=(e,n={})=>{let r={x:1/0,y:1/0,x2:-1/0,y2:-1/0},l=!1;return e.forEach(a=>{(n.filter===void 0||n.filter(a))&&(r=zc(r,pc(a)),l=!0)}),l?Mc(r):{x:0,y:0,width:0,height:0}},Tm=(e,n,[r,l,a]=[0,0,1],o=!1,u=!1)=>{const c={...ns(n,[r,l,a]),width:n.width/a,height:n.height/a},d=[];for(const h of e.values()){const{measured:m,selectable:p=!0,hidden:x=!1}=h;if(u&&!p||x)continue;const v=m.width??h.width??h.initialWidth??null,w=m.height??h.height??h.initialHeight??null,E=$o(c,ha(h)),S=(v??0)*(w??0),_=o&&E>0;(!h.internals.handleBounds||_||E>=S||h.dragging)&&d.push(h)}return d},QA=(e,n)=>{const r=new Set;return e.forEach(l=>{r.add(l.id)}),n.filter(l=>r.has(l.source)||r.has(l.target))};function ZA(e,n){const r=new Map,l=n!=null&&n.nodes?new Set(n.nodes.map(a=>a.id)):null;return e.forEach(a=>{a.measured.width&&a.measured.height&&((n==null?void 0:n.includeHiddenNodes)||!a.hidden)&&(!l||l.has(a.id))&&r.set(a.id,a)}),r}async function KA({nodes:e,width:n,height:r,panZoom:l,minZoom:a,maxZoom:o},u){if(e.size===0)return Promise.resolve(!0);const c=ZA(e,u),d=es(c),h=Am(d,n,r,(u==null?void 0:u.minZoom)??a,(u==null?void 0:u.maxZoom)??o,(u==null?void 0:u.padding)??.1);return await l.setViewport(h,{duration:u==null?void 0:u.duration,ease:u==null?void 0:u.ease,interpolate:u==null?void 0:u.interpolate}),Promise.resolve(!0)}function vS({nodeId:e,nextPosition:n,nodeLookup:r,nodeOrigin:l=[0,0],nodeExtent:a,onError:o}){const u=r.get(e),c=u.parentId?r.get(u.parentId):void 0,{x:d,y:h}=c?c.internals.positionAbsolute:{x:0,y:0},m=u.origin??l;let p=u.extent||a;if(u.extent==="parent"&&!u.expandParent)if(!c)o==null||o("005",lr.error005());else{const v=c.measured.width,w=c.measured.height;v&&w&&(p=[[d,h],[d+v,h+w]])}else c&&pa(u.extent)&&(p=[[u.extent[0][0]+d,u.extent[0][1]+h],[u.extent[1][0]+d,u.extent[1][1]+h]]);const x=pa(p)?el(n,p,u.measured):n;return(u.measured.width===void 0||u.measured.height===void 0)&&(o==null||o("015",lr.error015())),{position:{x:x.x-d+(u.measured.width??0)*m[0],y:x.y-h+(u.measured.height??0)*m[1]},positionAbsolute:x}}async function JA({nodesToRemove:e=[],edgesToRemove:n=[],nodes:r,edges:l,onBeforeDelete:a}){const o=new Set(e.map(x=>x.id)),u=[];for(const x of r){if(x.deletable===!1)continue;const v=o.has(x.id),w=!v&&x.parentId&&u.find(E=>E.id===x.parentId);(v||w)&&u.push(x)}const c=new Set(n.map(x=>x.id)),d=l.filter(x=>x.deletable!==!1),m=QA(u,d);for(const x of d)c.has(x.id)&&!m.find(w=>w.id===x.id)&&m.push(x);if(!a)return{edges:m,nodes:u};const p=await a({nodes:u,edges:m});return typeof p=="boolean"?p?{edges:m,nodes:u}:{edges:[],nodes:[]}:p}const da=(e,n=0,r=1)=>Math.min(Math.max(e,n),r),el=(e={x:0,y:0},n,r)=>({x:da(e.x,n[0][0],n[1][0]-((r==null?void 0:r.width)??0)),y:da(e.y,n[0][1],n[1][1]-((r==null?void 0:r.height)??0))});function bS(e,n,r){const{width:l,height:a}=Or(r),{x:o,y:u}=r.internals.positionAbsolute;return el(e,[[o,u],[o+l,u+a]],n)}const Tv=(e,n,r)=>e r?-da(Math.abs(e-r),1,n)/n:0,wS=(e,n,r=15,l=40)=>{const a=Tv(e.x,l,n.width-l)*r,o=Tv(e.y,l,n.height-l)*r;return[a,o]},zc=(e,n)=>({x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x2,n.x2),y2:Math.max(e.y2,n.y2)}),Qp=({x:e,y:n,width:r,height:l})=>({x:e,y:n,x2:e+r,y2:n+l}),Mc=({x:e,y:n,x2:r,y2:l})=>({x:e,y:n,width:r-e,height:l-n}),ha=(e,n=[0,0])=>{var a,o;const{x:r,y:l}=Cm(e)?e.internals.positionAbsolute:Wo(e,n);return{x:r,y:l,width:((a=e.measured)==null?void 0:a.width)??e.width??e.initialWidth??0,height:((o=e.measured)==null?void 0:o.height)??e.height??e.initialHeight??0}},pc=(e,n=[0,0])=>{var a,o;const{x:r,y:l}=Cm(e)?e.internals.positionAbsolute:Wo(e,n);return{x:r,y:l,x2:r+(((a=e.measured)==null?void 0:a.width)??e.width??e.initialWidth??0),y2:l+(((o=e.measured)==null?void 0:o.height)??e.height??e.initialHeight??0)}},SS=(e,n)=>Mc(zc(Qp(e),Qp(n))),$o=(e,n)=>{const r=Math.max(0,Math.min(e.x+e.width,n.x+n.width)-Math.max(e.x,n.x)),l=Math.max(0,Math.min(e.y+e.height,n.y+n.height)-Math.max(e.y,n.y));return Math.ceil(r*l)},Av=e=>Vn(e.width)&&Vn(e.height)&&Vn(e.x)&&Vn(e.y),Vn=e=>!isNaN(e)&&isFinite(e),WA=(e,n)=>{},ts=(e,n=[1,1])=>({x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}),ns=({x:e,y:n},[r,l,a],o=!1,u=[1,1])=>{const c={x:(e-r)/a,y:(n-l)/a};return o?ts(c,u):c},mc=({x:e,y:n},[r,l,a])=>({x:e*a+r,y:n*a+l});function Ql(e,n){if(typeof e=="number")return Math.floor((n-n/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const r=parseFloat(e);if(!Number.isNaN(r))return Math.floor(r)}if(typeof e=="string"&&e.endsWith("%")){const r=parseFloat(e);if(!Number.isNaN(r))return Math.floor(n*r*.01)}return console.error(`[React Flow] The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function ej(e,n,r){if(typeof e=="string"||typeof e=="number"){const l=Ql(e,r),a=Ql(e,n);return{top:l,right:a,bottom:l,left:a,x:a*2,y:l*2}}if(typeof e=="object"){const l=Ql(e.top??e.y??0,r),a=Ql(e.bottom??e.y??0,r),o=Ql(e.left??e.x??0,n),u=Ql(e.right??e.x??0,n);return{top:l,right:u,bottom:a,left:o,x:o+u,y:l+a}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function tj(e,n,r,l,a,o){const{x:u,y:c}=mc(e,[n,r,l]),{x:d,y:h}=mc({x:e.x+e.width,y:e.y+e.height},[n,r,l]),m=a-d,p=o-h;return{left:Math.floor(u),top:Math.floor(c),right:Math.floor(m),bottom:Math.floor(p)}}const Am=(e,n,r,l,a,o)=>{const u=ej(o,n,r),c=(n-u.x)/e.width,d=(r-u.y)/e.height,h=Math.min(c,d),m=da(h,l,a),p=e.x+e.width/2,x=e.y+e.height/2,v=n/2-p*m,w=r/2-x*m,E=tj(e,v,w,m,n,r),S={left:Math.min(E.left-u.left,0),top:Math.min(E.top-u.top,0),right:Math.min(E.right-u.right,0),bottom:Math.min(E.bottom-u.bottom,0)};return{x:v-S.left+S.right,y:w-S.top+S.bottom,zoom:m}},Go=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function pa(e){return e!=null&&e!=="parent"}function Or(e){var n,r;return{width:((n=e.measured)==null?void 0:n.width)??e.width??e.initialWidth??0,height:((r=e.measured)==null?void 0:r.height)??e.height??e.initialHeight??0}}function _S(e){var n,r;return(((n=e.measured)==null?void 0:n.width)??e.width??e.initialWidth)!==void 0&&(((r=e.measured)==null?void 0:r.height)??e.height??e.initialHeight)!==void 0}function kS(e,n={width:0,height:0},r,l,a){const o={...e},u=l.get(r);if(u){const c=u.origin||a;o.x+=u.internals.positionAbsolute.x-(n.width??0)*c[0],o.y+=u.internals.positionAbsolute.y-(n.height??0)*c[1]}return o}function jv(e,n){if(e.size!==n.size)return!1;for(const r of e)if(!n.has(r))return!1;return!0}function nj(){let e,n;return{promise:new Promise((l,a)=>{e=l,n=a}),resolve:e,reject:n}}function rj(e){return{...mS,...e||{}}}function zo(e,{snapGrid:n=[0,0],snapToGrid:r=!1,transform:l,containerBounds:a}){const{x:o,y:u}=$n(e),c=ns({x:o-((a==null?void 0:a.left)??0),y:u-((a==null?void 0:a.top)??0)},l),{x:d,y:h}=r?ts(c,n):c;return{xSnapped:d,ySnapped:h,...c}}const jm=e=>({width:e.offsetWidth,height:e.offsetHeight}),ES=e=>{var n;return((n=e==null?void 0:e.getRootNode)==null?void 0:n.call(e))||(window==null?void 0:window.document)},ij=["INPUT","SELECT","TEXTAREA"];function NS(e){var l,a;const n=((a=(l=e.composedPath)==null?void 0:l.call(e))==null?void 0:a[0])||e.target;return(n==null?void 0:n.nodeType)!==1?!1:ij.includes(n.nodeName)||n.hasAttribute("contenteditable")||!!n.closest(".nokey")}const CS=e=>"clientX"in e,$n=(e,n)=>{var o,u;const r=CS(e),l=r?e.clientX:(o=e.touches)==null?void 0:o[0].clientX,a=r?e.clientY:(u=e.touches)==null?void 0:u[0].clientY;return{x:l-((n==null?void 0:n.left)??0),y:a-((n==null?void 0:n.top)??0)}},zv=(e,n,r,l,a)=>{const o=n.querySelectorAll(`.${e}`);return!o||!o.length?null:Array.from(o).map(u=>{const c=u.getBoundingClientRect();return{id:u.getAttribute("data-handleid"),type:e,nodeId:a,position:u.getAttribute("data-handlepos"),x:(c.left-r.left)/l,y:(c.top-r.top)/l,...jm(u)}})};function TS({sourceX:e,sourceY:n,targetX:r,targetY:l,sourceControlX:a,sourceControlY:o,targetControlX:u,targetControlY:c}){const d=e*.125+a*.375+u*.375+r*.125,h=n*.125+o*.375+c*.375+l*.125,m=Math.abs(d-e),p=Math.abs(h-n);return[d,h,m,p]}function Uu(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function Mv({pos:e,x1:n,y1:r,x2:l,y2:a,c:o}){switch(e){case ve.Left:return[n-Uu(n-l,o),r];case ve.Right:return[n+Uu(l-n,o),r];case ve.Top:return[n,r-Uu(r-a,o)];case ve.Bottom:return[n,r+Uu(a-r,o)]}}function zm({sourceX:e,sourceY:n,sourcePosition:r=ve.Bottom,targetX:l,targetY:a,targetPosition:o=ve.Top,curvature:u=.25}){const[c,d]=Mv({pos:r,x1:e,y1:n,x2:l,y2:a,c:u}),[h,m]=Mv({pos:o,x1:l,y1:a,x2:e,y2:n,c:u}),[p,x,v,w]=TS({sourceX:e,sourceY:n,targetX:l,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:h,targetControlY:m});return[`M${e},${n} C${c},${d} ${h},${m} ${l},${a}`,p,x,v,w]}function AS({sourceX:e,sourceY:n,targetX:r,targetY:l}){const a=Math.abs(r-e)/2,o=r 0}const oj=({source:e,sourceHandle:n,target:r,targetHandle:l})=>`xy-edge__${e}${n||""}-${r}${l||""}`,sj=(e,n)=>n.some(r=>r.source===e.source&&r.target===e.target&&(r.sourceHandle===e.sourceHandle||!r.sourceHandle&&!e.sourceHandle)&&(r.targetHandle===e.targetHandle||!r.targetHandle&&!e.targetHandle)),uj=(e,n,r={})=>{if(!e.source||!e.target)return n;const l=r.getEdgeId||oj;let a;return yS(e)?a={...e}:a={...e,id:l(e)},sj(a,n)?n:(a.sourceHandle===null&&delete a.sourceHandle,a.targetHandle===null&&delete a.targetHandle,n.concat(a))};function jS({sourceX:e,sourceY:n,targetX:r,targetY:l}){const[a,o,u,c]=AS({sourceX:e,sourceY:n,targetX:r,targetY:l});return[`M ${e},${n}L ${r},${l}`,a,o,u,c]}const Dv={[ve.Left]:{x:-1,y:0},[ve.Right]:{x:1,y:0},[ve.Top]:{x:0,y:-1},[ve.Bottom]:{x:0,y:1}},cj=({source:e,sourcePosition:n=ve.Bottom,target:r})=>n===ve.Left||n===ve.Right?e.x Math.sqrt(Math.pow(n.x-e.x,2)+Math.pow(n.y-e.y,2));function fj({source:e,sourcePosition:n=ve.Bottom,target:r,targetPosition:l=ve.Top,center:a,offset:o,stepPosition:u}){const c=Dv[n],d=Dv[l],h={x:e.x+c.x*o,y:e.y+c.y*o},m={x:r.x+d.x*o,y:r.y+d.y*o},p=cj({source:h,sourcePosition:n,target:m}),x=p.x!==0?"x":"y",v=p[x];let w=[],E,S;const _={x:0,y:0},T={x:0,y:0},[,,k,A]=AS({sourceX:e.x,sourceY:e.y,targetX:r.x,targetY:r.y});if(c[x]*d[x]===-1){x==="x"?(E=a.x??h.x+(m.x-h.x)*u,S=a.y??(h.y+m.y)/2):(E=a.x??(h.x+m.x)/2,S=a.y??h.y+(m.y-h.y)*u);const j=[{x:E,y:h.y},{x:E,y:m.y}],L=[{x:h.x,y:S},{x:m.x,y:S}];c[x]===v?w=x==="x"?j:L:w=x==="x"?L:j}else{const j=[{x:h.x,y:m.y}],L=[{x:m.x,y:h.y}];if(x==="x"?w=c.x===v?L:j:w=c.y===v?j:L,n===l){const U=Math.abs(e[x]-r[x]);if(U<=o){const ee=Math.min(o-1,o-U);c[x]===v?_[x]=(h[x]>e[x]?-1:1)*ee:T[x]=(m[x]>r[x]?-1:1)*ee}}if(n!==l){const U=x==="x"?"y":"x",ee=c[x]===d[U],B=h[U]>m[U],F=h[U] =H?(E=(O.x+P.x)/2,S=w[0].y):(E=w[0].x,S=(O.y+P.y)/2)}return[[e,{x:h.x+_.x,y:h.y+_.y},...w,{x:m.x+T.x,y:m.y+T.y},r],E,S,k,A]}function dj(e,n,r,l){const a=Math.min(Rv(e,n)/2,Rv(n,r)/2,l),{x:o,y:u}=n;if(e.x===o&&o===r.x||e.y===u&&u===r.y)return`L${o} ${u}`;if(e.y===u){const h=e.x {let A="";return k>0&&k r.id===n):e[0])||null}function Kp(e,n){return e?typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(l=>`${l}=${e[l]}`).join("&")}`:""}function pj(e,{id:n,defaultColor:r,defaultMarkerStart:l,defaultMarkerEnd:a}){const o=new Set;return e.reduce((u,c)=>([c.markerStart||l,c.markerEnd||a].forEach(d=>{if(d&&typeof d=="object"){const h=Kp(d,n);o.has(h)||(u.push({id:h,color:d.color||r,...d}),o.add(h))}}),u),[]).sort((u,c)=>u.id.localeCompare(c.id))}const zS=1e3,mj=10,Mm={nodeOrigin:[0,0],nodeExtent:Po,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},gj={...Mm,checkEquality:!0};function Dm(e,n){const r={...e};for(const l in n)n[l]!==void 0&&(r[l]=n[l]);return r}function xj(e,n,r){const l=Dm(Mm,r);for(const a of e.values())if(a.parentId)Om(a,e,n,l);else{const o=Wo(a,l.nodeOrigin),u=pa(a.extent)?a.extent:l.nodeExtent,c=el(o,u,Or(a));a.internals.positionAbsolute=c}}function yj(e,n){if(!e.handles)return e.measured?n==null?void 0:n.internals.handleBounds:void 0;const r=[],l=[];for(const a of e.handles){const o={id:a.id,width:a.width??1,height:a.height??1,nodeId:e.id,x:a.x,y:a.y,position:a.position,type:a.type};a.type==="source"?r.push(o):a.type==="target"&&l.push(o)}return{source:r,target:l}}function Rm(e){return e==="manual"}function Jp(e,n,r,l={}){var h,m;const a=Dm(gj,l),o={i:0},u=new Map(n),c=a!=null&&a.elevateNodesOnSelect&&!Rm(a.zIndexMode)?zS:0;let d=e.length>0;n.clear(),r.clear();for(const p of e){let x=u.get(p.id);if(a.checkEquality&&p===(x==null?void 0:x.internals.userNode))n.set(p.id,x);else{const v=Wo(p,a.nodeOrigin),w=pa(p.extent)?p.extent:a.nodeExtent,E=el(v,w,Or(p));x={...a.defaults,...p,measured:{width:(h=p.measured)==null?void 0:h.width,height:(m=p.measured)==null?void 0:m.height},internals:{positionAbsolute:E,handleBounds:yj(p,x),z:MS(p,c,a.zIndexMode),userNode:p}},n.set(p.id,x)}(x.measured===void 0||x.measured.width===void 0||x.measured.height===void 0)&&!x.hidden&&(d=!1),p.parentId&&Om(x,n,r,l,o)}return d}function vj(e,n){if(!e.parentId)return;const r=n.get(e.parentId);r?r.set(e.id,e):n.set(e.parentId,new Map([[e.id,e]]))}function Om(e,n,r,l,a){const{elevateNodesOnSelect:o,nodeOrigin:u,nodeExtent:c,zIndexMode:d}=Dm(Mm,l),h=e.parentId,m=n.get(h);if(!m){console.warn(`Parent node ${h} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}vj(e,r),a&&!m.parentId&&m.internals.rootParentIndex===void 0&&d==="auto"&&(m.internals.rootParentIndex=++a.i,m.internals.z=m.internals.z+a.i*mj),a&&m.internals.rootParentIndex!==void 0&&(a.i=m.internals.rootParentIndex);const p=o&&!Rm(d)?zS:0,{x,y:v,z:w}=bj(e,m,u,c,p,d),{positionAbsolute:E}=e.internals,S=x!==E.x||v!==E.y;(S||w!==e.internals.z)&&n.set(e.id,{...e,internals:{...e.internals,positionAbsolute:S?{x,y:v}:E,z:w}})}function MS(e,n,r){const l=Vn(e.zIndex)?e.zIndex:0;return Rm(r)?l:l+(e.selected?n:0)}function bj(e,n,r,l,a,o){const{x:u,y:c}=n.internals.positionAbsolute,d=Or(e),h=Wo(e,r),m=pa(e.extent)?el(h,e.extent,d):h;let p=el({x:u+m.x,y:c+m.y},l,d);e.extent==="parent"&&(p=bS(p,d,n));const x=MS(e,a,o),v=n.internals.z??0;return{x:p.x,y:p.y,z:v>=x?v+1:x}}function Lm(e,n,r,l=[0,0]){var u;const a=[],o=new Map;for(const c of e){const d=n.get(c.parentId);if(!d)continue;const h=((u=o.get(c.parentId))==null?void 0:u.expandedRect)??ha(d),m=SS(h,c.rect);o.set(c.parentId,{expandedRect:m,parent:d})}return o.size>0&&o.forEach(({expandedRect:c,parent:d},h)=>{var k;const m=d.internals.positionAbsolute,p=Or(d),x=d.origin??l,v=c.x 0||w>0||_||T)&&(a.push({id:h,type:"position",position:{x:d.position.x-v+_,y:d.position.y-w+T}}),(k=r.get(h))==null||k.forEach(A=>{e.some(q=>q.id===A.id)||a.push({id:A.id,type:"position",position:{x:A.position.x+v,y:A.position.y+w}})})),(p.width 0){const v=Lm(x,n,r,a);h.push(...v)}return{changes:h,updatedInternals:d}}async function Sj({delta:e,panZoom:n,transform:r,translateExtent:l,width:a,height:o}){if(!n||!e.x&&!e.y)return Promise.resolve(!1);const u=await n.setViewportConstrained({x:r[0]+e.x,y:r[1]+e.y,zoom:r[2]},[[0,0],[a,o]],l),c=!!u&&(u.x!==r[0]||u.y!==r[1]||u.k!==r[2]);return Promise.resolve(c)}function Bv(e,n,r,l,a,o){let u=a;const c=l.get(u)||new Map;l.set(u,c.set(r,n)),u=`${a}-${e}`;const d=l.get(u)||new Map;if(l.set(u,d.set(r,n)),o){u=`${a}-${e}-${o}`;const h=l.get(u)||new Map;l.set(u,h.set(r,n))}}function DS(e,n,r){e.clear(),n.clear();for(const l of r){const{source:a,target:o,sourceHandle:u=null,targetHandle:c=null}=l,d={edgeId:l.id,source:a,target:o,sourceHandle:u,targetHandle:c},h=`${a}-${u}--${o}-${c}`,m=`${o}-${c}--${a}-${u}`;Bv("source",d,m,e,a,u),Bv("target",d,h,e,o,c),n.set(l.id,l)}}function RS(e,n){if(!e.parentId)return!1;const r=n.get(e.parentId);return r?r.selected?!0:RS(r,n):!1}function Iv(e,n,r){var a;let l=e;do{if((a=l==null?void 0:l.matches)!=null&&a.call(l,n))return!0;if(l===r)return!1;l=l==null?void 0:l.parentElement}while(l);return!1}function _j(e,n,r,l){const a=new Map;for(const[o,u]of e)if((u.selected||u.id===l)&&(!u.parentId||!RS(u,e))&&(u.draggable||n&&typeof u.draggable>"u")){const c=e.get(o);c&&a.set(o,{id:o,position:c.position||{x:0,y:0},distance:{x:r.x-c.internals.positionAbsolute.x,y:r.y-c.internals.positionAbsolute.y},extent:c.extent,parentId:c.parentId,origin:c.origin,expandParent:c.expandParent,internals:{positionAbsolute:c.internals.positionAbsolute||{x:0,y:0}},measured:{width:c.measured.width??0,height:c.measured.height??0}})}return a}function xh({nodeId:e,dragItems:n,nodeLookup:r,dragging:l=!0}){var u,c,d;const a=[];for(const[h,m]of n){const p=(u=r.get(h))==null?void 0:u.internals.userNode;p&&a.push({...p,position:m.position,dragging:l})}if(!e)return[a[0],a];const o=(c=r.get(e))==null?void 0:c.internals.userNode;return[o?{...o,position:((d=n.get(e))==null?void 0:d.position)||o.position,dragging:l}:a[0],a]}function kj({dragItems:e,snapGrid:n,x:r,y:l}){const a=e.values().next().value;if(!a)return null;const o={x:r-a.distance.x,y:l-a.distance.y},u=ts(o,n);return{x:u.x-o.x,y:u.y-o.y}}function Ej({onNodeMouseDown:e,getStoreItems:n,onDragStart:r,onDrag:l,onDragStop:a}){let o={x:null,y:null},u=0,c=new Map,d=!1,h={x:0,y:0},m=null,p=!1,x=null,v=!1,w=!1,E=null;function S({noDragClassName:T,handleSelector:k,domNode:A,isSelectable:q,nodeId:j,nodeClickDistance:L=0}){x=wn(A);function O({x:U,y:ee}){const{nodeLookup:B,nodeExtent:F,snapGrid:z,snapToGrid:G,nodeOrigin:Q,onNodeDrag:K,onSelectionDrag:M,onError:I,updateNodePositions:Y}=n();o={x:U,y:ee};let N=!1;const $=c.size>1,X=$&&F?Qp(es(c)):null,J=$&&G?kj({dragItems:c,snapGrid:z,x:U,y:ee}):null;for(const[ne,re]of c){if(!B.has(ne))continue;let se={x:U-re.distance.x,y:ee-re.distance.y};G&&(se=J?{x:Math.round(se.x+J.x),y:Math.round(se.y+J.y)}:ts(se,z));let xe=null;if($&&F&&!re.extent&&X){const{positionAbsolute:pe}=re.internals,_e=pe.x-X.x+F[0][0],ze=pe.x+re.measured.width-X.x2+F[1][0],Te=pe.y-X.y+F[0][1],ut=pe.y+re.measured.height-X.y2+F[1][1];xe=[[_e,Te],[ze,ut]]}const{position:be,positionAbsolute:ye}=vS({nodeId:ne,nextPosition:se,nodeLookup:B,nodeExtent:xe||F,nodeOrigin:Q,onError:I});N=N||re.position.x!==be.x||re.position.y!==be.y,re.position=be,re.internals.positionAbsolute=ye}if(w=w||N,!!N&&(Y(c,!0),E&&(l||K||!j&&M))){const[ne,re]=xh({nodeId:j,dragItems:c,nodeLookup:B});l==null||l(E,c,ne,re),K==null||K(E,ne,re),j||M==null||M(E,re)}}async function P(){if(!m)return;const{transform:U,panBy:ee,autoPanSpeed:B,autoPanOnNodeDrag:F}=n();if(!F){d=!1,cancelAnimationFrame(u);return}const[z,G]=wS(h,m,B);(z!==0||G!==0)&&(o.x=(o.x??0)-z/U[2],o.y=(o.y??0)-G/U[2],await ee({x:z,y:G})&&O(o)),u=requestAnimationFrame(P)}function R(U){var $;const{nodeLookup:ee,multiSelectionActive:B,nodesDraggable:F,transform:z,snapGrid:G,snapToGrid:Q,selectNodesOnDrag:K,onNodeDragStart:M,onSelectionDragStart:I,unselectNodesAndEdges:Y}=n();p=!0,(!K||!q)&&!B&&j&&(($=ee.get(j))!=null&&$.selected||Y()),q&&K&&j&&(e==null||e(j));const N=zo(U.sourceEvent,{transform:z,snapGrid:G,snapToGrid:Q,containerBounds:m});if(o=N,c=_j(ee,F,N,j),c.size>0&&(r||M||!j&&I)){const[X,J]=xh({nodeId:j,dragItems:c,nodeLookup:ee});r==null||r(U.sourceEvent,c,X,J),M==null||M(U.sourceEvent,X,J),j||I==null||I(U.sourceEvent,J)}}const H=Jw().clickDistance(L).on("start",U=>{const{domNode:ee,nodeDragThreshold:B,transform:F,snapGrid:z,snapToGrid:G}=n();m=(ee==null?void 0:ee.getBoundingClientRect())||null,v=!1,w=!1,E=U.sourceEvent,B===0&&R(U),o=zo(U.sourceEvent,{transform:F,snapGrid:z,snapToGrid:G,containerBounds:m}),h=$n(U.sourceEvent,m)}).on("drag",U=>{const{autoPanOnNodeDrag:ee,transform:B,snapGrid:F,snapToGrid:z,nodeDragThreshold:G,nodeLookup:Q}=n(),K=zo(U.sourceEvent,{transform:B,snapGrid:F,snapToGrid:z,containerBounds:m});if(E=U.sourceEvent,(U.sourceEvent.type==="touchmove"&&U.sourceEvent.touches.length>1||j&&!Q.has(j))&&(v=!0),!v){if(!d&&ee&&p&&(d=!0,P()),!p){const M=$n(U.sourceEvent,m),I=M.x-h.x,Y=M.y-h.y;Math.sqrt(I*I+Y*Y)>G&&R(U)}(o.x!==K.xSnapped||o.y!==K.ySnapped)&&c&&p&&(h=$n(U.sourceEvent,m),O(K))}}).on("end",U=>{if(!(!p||v)&&(d=!1,p=!1,cancelAnimationFrame(u),c.size>0)){const{nodeLookup:ee,updateNodePositions:B,onNodeDragStop:F,onSelectionDragStop:z}=n();if(w&&(B(c,!1),w=!1),a||F||!j&&z){const[G,Q]=xh({nodeId:j,dragItems:c,nodeLookup:ee,dragging:!1});a==null||a(U.sourceEvent,c,G,Q),F==null||F(U.sourceEvent,G,Q),j||z==null||z(U.sourceEvent,Q)}}}).filter(U=>{const ee=U.target;return!U.button&&(!T||!Iv(ee,`.${T}`,A))&&(!k||Iv(ee,k,A))});x.call(H)}function _(){x==null||x.on(".drag",null)}return{update:S,destroy:_}}function Nj(e,n,r){const l=[],a={x:e.x-r,y:e.y-r,width:r*2,height:r*2};for(const o of n.values())$o(a,ha(o))>0&&l.push(o);return l}const Cj=250;function Tj(e,n,r,l){var c,d;let a=[],o=1/0;const u=Nj(e,r,n+Cj);for(const h of u){const m=[...((c=h.internals.handleBounds)==null?void 0:c.source)??[],...((d=h.internals.handleBounds)==null?void 0:d.target)??[]];for(const p of m){if(l.nodeId===p.nodeId&&l.type===p.type&&l.id===p.id)continue;const{x,y:v}=tl(h,p,p.position,!0),w=Math.sqrt(Math.pow(x-e.x,2)+Math.pow(v-e.y,2));w>n||(w 1){const h=l.type==="source"?"target":"source";return a.find(m=>m.type===h)??a[0]}return a[0]}function OS(e,n,r,l,a,o=!1){var h,m,p;const u=l.get(e);if(!u)return null;const c=a==="strict"?(h=u.internals.handleBounds)==null?void 0:h[n]:[...((m=u.internals.handleBounds)==null?void 0:m.source)??[],...((p=u.internals.handleBounds)==null?void 0:p.target)??[]],d=(r?c==null?void 0:c.find(x=>x.id===r):c==null?void 0:c[0])??null;return d&&o?{...d,...tl(u,d,d.position,!0)}:d}function LS(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function Aj(e,n){let r=null;return n?r=!0:e&&!n&&(r=!1),r}const HS=()=>!0;function jj(e,{connectionMode:n,connectionRadius:r,handleId:l,nodeId:a,edgeUpdaterType:o,isTarget:u,domNode:c,nodeLookup:d,lib:h,autoPanOnConnect:m,flowId:p,panBy:x,cancelConnection:v,onConnectStart:w,onConnect:E,onConnectEnd:S,isValidConnection:_=HS,onReconnectEnd:T,updateConnection:k,getTransform:A,getFromHandle:q,autoPanSpeed:j,dragThreshold:L=1,handleDomNode:O}){const P=ES(e.target);let R=0,H;const{x:U,y:ee}=$n(e),B=LS(o,O),F=c==null?void 0:c.getBoundingClientRect();let z=!1;if(!F||!B)return;const G=OS(a,B,l,d,n);if(!G)return;let Q=$n(e,F),K=!1,M=null,I=!1,Y=null;function N(){if(!m||!F)return;const[be,ye]=wS(Q,F,j);x({x:be,y:ye}),R=requestAnimationFrame(N)}const $={...G,nodeId:a,type:B,position:G.position},X=d.get(a);let ne={inProgress:!0,isValid:null,from:tl(X,$,ve.Left,!0),fromHandle:$,fromPosition:$.position,fromNode:X,to:Q,toHandle:null,toPosition:Cv[$.position],toNode:null,pointer:Q};function re(){z=!0,k(ne),w==null||w(e,{nodeId:a,handleId:l,handleType:B})}L===0&&re();function se(be){if(!z){const{x:ut,y:nt}=$n(be),zt=ut-U,Vt=nt-ee;if(!(zt*zt+Vt*Vt>L*L))return;re()}if(!q()||!$){xe(be);return}const ye=A();Q=$n(be,F),H=Tj(ns(Q,ye,!1,[1,1]),r,d,$),K||(N(),K=!0);const pe=BS(be,{handle:H,connectionMode:n,fromNodeId:a,fromHandleId:l,fromType:u?"target":"source",isValidConnection:_,doc:P,lib:h,flowId:p,nodeLookup:d});Y=pe.handleDomNode,M=pe.connection,I=Aj(!!H,pe.isValid);const _e=d.get(a),ze=_e?tl(_e,$,ve.Left,!0):ne.from,Te={...ne,from:ze,isValid:I,to:pe.toHandle&&I?mc({x:pe.toHandle.x,y:pe.toHandle.y},ye):Q,toHandle:pe.toHandle,toPosition:I&&pe.toHandle?pe.toHandle.position:Cv[$.position],toNode:pe.toHandle?d.get(pe.toHandle.nodeId):null,pointer:Q};k(Te),ne=Te}function xe(be){if(!("touches"in be&&be.touches.length>0)){if(z){(H||Y)&&M&&I&&(E==null||E(M));const{inProgress:ye,...pe}=ne,_e={...pe,toPosition:ne.toHandle?ne.toPosition:null};S==null||S(be,_e),o&&(T==null||T(be,_e))}v(),cancelAnimationFrame(R),K=!1,I=!1,M=null,Y=null,P.removeEventListener("mousemove",se),P.removeEventListener("mouseup",xe),P.removeEventListener("touchmove",se),P.removeEventListener("touchend",xe)}}P.addEventListener("mousemove",se),P.addEventListener("mouseup",xe),P.addEventListener("touchmove",se),P.addEventListener("touchend",xe)}function BS(e,{handle:n,connectionMode:r,fromNodeId:l,fromHandleId:a,fromType:o,doc:u,lib:c,flowId:d,isValidConnection:h=HS,nodeLookup:m}){const p=o==="target",x=n?u.querySelector(`.${c}-flow__handle[data-id="${d}-${n==null?void 0:n.nodeId}-${n==null?void 0:n.id}-${n==null?void 0:n.type}"]`):null,{x:v,y:w}=$n(e),E=u.elementFromPoint(v,w),S=E!=null&&E.classList.contains(`${c}-flow__handle`)?E:x,_={handleDomNode:S,isValid:!1,connection:null,toHandle:null};if(S){const T=LS(void 0,S),k=S.getAttribute("data-nodeid"),A=S.getAttribute("data-handleid"),q=S.classList.contains("connectable"),j=S.classList.contains("connectableend");if(!k||!T)return _;const L={source:p?k:l,sourceHandle:p?A:a,target:p?l:k,targetHandle:p?a:A};_.connection=L;const P=q&&j&&(r===fa.Strict?p&&T==="source"||!p&&T==="target":k!==l||A!==a);_.isValid=P&&h(L),_.toHandle=OS(k,T,A,m,r,!0)}return _}const Wp={onPointerDown:jj,isValid:BS};function zj({domNode:e,panZoom:n,getTransform:r,getViewScale:l}){const a=wn(e);function o({translateExtent:c,width:d,height:h,zoomStep:m=1,pannable:p=!0,zoomable:x=!0,inversePan:v=!1}){const w=k=>{if(k.sourceEvent.type!=="wheel"||!n)return;const A=r(),q=k.sourceEvent.ctrlKey&&Go()?10:1,j=-k.sourceEvent.deltaY*(k.sourceEvent.deltaMode===1?.05:k.sourceEvent.deltaMode?1:.002)*m,L=A[2]*Math.pow(2,j*q);n.scaleTo(L)};let E=[0,0];const S=k=>{(k.sourceEvent.type==="mousedown"||k.sourceEvent.type==="touchstart")&&(E=[k.sourceEvent.clientX??k.sourceEvent.touches[0].clientX,k.sourceEvent.clientY??k.sourceEvent.touches[0].clientY])},_=k=>{const A=r();if(k.sourceEvent.type!=="mousemove"&&k.sourceEvent.type!=="touchmove"||!n)return;const q=[k.sourceEvent.clientX??k.sourceEvent.touches[0].clientX,k.sourceEvent.clientY??k.sourceEvent.touches[0].clientY],j=[q[0]-E[0],q[1]-E[1]];E=q;const L=l()*Math.max(A[2],Math.log(A[2]))*(v?-1:1),O={x:A[0]-j[0]*L,y:A[1]-j[1]*L},P=[[0,0],[d,h]];n.setViewportConstrained({x:O.x,y:O.y,zoom:A[2]},P,c)},T=hS().on("start",S).on("zoom",p?_:null).on("zoom.wheel",x?w:null);a.call(T,{})}function u(){a.on("zoom",null)}return{update:o,destroy:u,pointer:Un}}const Dc=e=>({x:e.x,y:e.y,zoom:e.k}),yh=({x:e,y:n,zoom:r})=>jc.translate(e,n).scale(r),na=(e,n)=>e.target.closest(`.${n}`),IS=(e,n)=>n===2&&Array.isArray(e)&&e.includes(2),Mj=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,vh=(e,n=0,r=Mj,l=()=>{})=>{const a=typeof n=="number"&&n>0;return a||l(),a?e.transition().duration(n).ease(r).on("end",l):e},qS=e=>{const n=e.ctrlKey&&Go()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*n};function Dj({zoomPanValues:e,noWheelClassName:n,d3Selection:r,d3Zoom:l,panOnScrollMode:a,panOnScrollSpeed:o,zoomOnPinch:u,onPanZoomStart:c,onPanZoom:d,onPanZoomEnd:h}){return m=>{if(na(m,n))return m.ctrlKey&&m.preventDefault(),!1;m.preventDefault(),m.stopImmediatePropagation();const p=r.property("__zoom").k||1;if(m.ctrlKey&&u){const S=Un(m),_=qS(m),T=p*Math.pow(2,_);l.scaleTo(r,T,S,m);return}const x=m.deltaMode===1?20:1;let v=a===Zi.Vertical?0:m.deltaX*x,w=a===Zi.Horizontal?0:m.deltaY*x;!Go()&&m.shiftKey&&a!==Zi.Vertical&&(v=m.deltaY*x,w=0),l.translateBy(r,-(v/p)*o,-(w/p)*o,{internal:!0});const E=Dc(r.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(d==null||d(m,E),e.panScrollTimeout=setTimeout(()=>{h==null||h(m,E),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,c==null||c(m,E))}}function Rj({noWheelClassName:e,preventScrolling:n,d3ZoomHandler:r}){return function(l,a){const o=l.type==="wheel",u=!n&&o&&!l.ctrlKey,c=na(l,e);if(l.ctrlKey&&o&&c&&l.preventDefault(),u||c)return null;l.preventDefault(),r.call(this,l,a)}}function Oj({zoomPanValues:e,onDraggingChange:n,onPanZoomStart:r}){return l=>{var o,u,c;if((o=l.sourceEvent)!=null&&o.internal)return;const a=Dc(l.transform);e.mouseButton=((u=l.sourceEvent)==null?void 0:u.button)||0,e.isZoomingOrPanning=!0,e.prevViewport=a,((c=l.sourceEvent)==null?void 0:c.type)==="mousedown"&&n(!0),r&&(r==null||r(l.sourceEvent,a))}}function Lj({zoomPanValues:e,panOnDrag:n,onPaneContextMenu:r,onTransformChange:l,onPanZoom:a}){return o=>{var u,c;e.usedRightMouseButton=!!(r&&IS(n,e.mouseButton??0)),(u=o.sourceEvent)!=null&&u.sync||l([o.transform.x,o.transform.y,o.transform.k]),a&&!((c=o.sourceEvent)!=null&&c.internal)&&(a==null||a(o.sourceEvent,Dc(o.transform)))}}function Hj({zoomPanValues:e,panOnDrag:n,panOnScroll:r,onDraggingChange:l,onPanZoomEnd:a,onPaneContextMenu:o}){return u=>{var c;if(!((c=u.sourceEvent)!=null&&c.internal)&&(e.isZoomingOrPanning=!1,o&&IS(n,e.mouseButton??0)&&!e.usedRightMouseButton&&u.sourceEvent&&o(u.sourceEvent),e.usedRightMouseButton=!1,l(!1),a)){const d=Dc(u.transform);e.prevViewport=d,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{a==null||a(u.sourceEvent,d)},r?150:0)}}}function Bj({zoomActivationKeyPressed:e,zoomOnScroll:n,zoomOnPinch:r,panOnDrag:l,panOnScroll:a,zoomOnDoubleClick:o,userSelectionActive:u,noWheelClassName:c,noPanClassName:d,lib:h,connectionInProgress:m}){return p=>{var S;const x=e||n,v=r&&p.ctrlKey,w=p.type==="wheel";if(p.button===1&&p.type==="mousedown"&&(na(p,`${h}-flow__node`)||na(p,`${h}-flow__edge`)))return!0;if(!l&&!x&&!a&&!o&&!r||u||m&&!w||na(p,c)&&w||na(p,d)&&(!w||a&&w&&!e)||!r&&p.ctrlKey&&w)return!1;if(!r&&p.type==="touchstart"&&((S=p.touches)==null?void 0:S.length)>1)return p.preventDefault(),!1;if(!x&&!a&&!v&&w||!l&&(p.type==="mousedown"||p.type==="touchstart")||Array.isArray(l)&&!l.includes(p.button)&&p.type==="mousedown")return!1;const E=Array.isArray(l)&&l.includes(p.button)||!p.button||p.button<=1;return(!p.ctrlKey||w)&&E}}function Ij({domNode:e,minZoom:n,maxZoom:r,translateExtent:l,viewport:a,onPanZoom:o,onPanZoomStart:u,onPanZoomEnd:c,onDraggingChange:d}){const h={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},m=e.getBoundingClientRect(),p=hS().scaleExtent([n,r]).translateExtent(l),x=wn(e).call(p);T({x:a.x,y:a.y,zoom:da(a.zoom,n,r)},[[0,0],[m.width,m.height]],l);const v=x.on("wheel.zoom"),w=x.on("dblclick.zoom");p.wheelDelta(qS);function E(H,U){return x?new Promise(ee=>{p==null||p.interpolate((U==null?void 0:U.interpolate)==="linear"?jo:Ju).transform(vh(x,U==null?void 0:U.duration,U==null?void 0:U.ease,()=>ee(!0)),H)}):Promise.resolve(!1)}function S({noWheelClassName:H,noPanClassName:U,onPaneContextMenu:ee,userSelectionActive:B,panOnScroll:F,panOnDrag:z,panOnScrollMode:G,panOnScrollSpeed:Q,preventScrolling:K,zoomOnPinch:M,zoomOnScroll:I,zoomOnDoubleClick:Y,zoomActivationKeyPressed:N,lib:$,onTransformChange:X,connectionInProgress:J,paneClickDistance:ne,selectionOnDrag:re}){B&&!h.isZoomingOrPanning&&_();const se=F&&!N&&!B;p.clickDistance(re?1/0:!Vn(ne)||ne<0?0:ne);const xe=se?Dj({zoomPanValues:h,noWheelClassName:H,d3Selection:x,d3Zoom:p,panOnScrollMode:G,panOnScrollSpeed:Q,zoomOnPinch:M,onPanZoomStart:u,onPanZoom:o,onPanZoomEnd:c}):Rj({noWheelClassName:H,preventScrolling:K,d3ZoomHandler:v});if(x.on("wheel.zoom",xe,{passive:!1}),!B){const ye=Oj({zoomPanValues:h,onDraggingChange:d,onPanZoomStart:u});p.on("start",ye);const pe=Lj({zoomPanValues:h,panOnDrag:z,onPaneContextMenu:!!ee,onPanZoom:o,onTransformChange:X});p.on("zoom",pe);const _e=Hj({zoomPanValues:h,panOnDrag:z,panOnScroll:F,onPaneContextMenu:ee,onPanZoomEnd:c,onDraggingChange:d});p.on("end",_e)}const be=Bj({zoomActivationKeyPressed:N,panOnDrag:z,zoomOnScroll:I,panOnScroll:F,zoomOnDoubleClick:Y,zoomOnPinch:M,userSelectionActive:B,noPanClassName:U,noWheelClassName:H,lib:$,connectionInProgress:J});p.filter(be),Y?x.on("dblclick.zoom",w):x.on("dblclick.zoom",null)}function _(){p.on("zoom",null)}async function T(H,U,ee){const B=yh(H),F=p==null?void 0:p.constrain()(B,U,ee);return F&&await E(F),new Promise(z=>z(F))}async function k(H,U){const ee=yh(H);return await E(ee,U),new Promise(B=>B(ee))}function A(H){if(x){const U=yh(H),ee=x.property("__zoom");(ee.k!==H.zoom||ee.x!==H.x||ee.y!==H.y)&&(p==null||p.transform(x,U,null,{sync:!0}))}}function q(){const H=x?dS(x.node()):{x:0,y:0,k:1};return{x:H.x,y:H.y,zoom:H.k}}function j(H,U){return x?new Promise(ee=>{p==null||p.interpolate((U==null?void 0:U.interpolate)==="linear"?jo:Ju).scaleTo(vh(x,U==null?void 0:U.duration,U==null?void 0:U.ease,()=>ee(!0)),H)}):Promise.resolve(!1)}function L(H,U){return x?new Promise(ee=>{p==null||p.interpolate((U==null?void 0:U.interpolate)==="linear"?jo:Ju).scaleBy(vh(x,U==null?void 0:U.duration,U==null?void 0:U.ease,()=>ee(!0)),H)}):Promise.resolve(!1)}function O(H){p==null||p.scaleExtent(H)}function P(H){p==null||p.translateExtent(H)}function R(H){const U=!Vn(H)||H<0?0:H;p==null||p.clickDistance(U)}return{update:S,destroy:_,setViewport:k,setViewportConstrained:T,getViewport:q,scaleTo:j,scaleBy:L,setScaleExtent:O,setTranslateExtent:P,syncViewport:A,setClickDistance:R}}var ma;(function(e){e.Line="line",e.Handle="handle"})(ma||(ma={}));function qj({width:e,prevWidth:n,height:r,prevHeight:l,affectsX:a,affectsY:o}){const u=e-n,c=r-l,d=[u>0?1:u<0?-1:0,c>0?1:c<0?-1:0];return u&&a&&(d[0]=d[0]*-1),c&&o&&(d[1]=d[1]*-1),d}function qv(e){const n=e.includes("right")||e.includes("left"),r=e.includes("bottom")||e.includes("top"),l=e.includes("left"),a=e.includes("top");return{isHorizontal:n,isVertical:r,affectsX:l,affectsY:a}}function hi(e,n){return Math.max(0,n-e)}function pi(e,n){return Math.max(0,e-n)}function Pu(e,n,r){return Math.max(0,n-e,e-r)}function Uv(e,n){return e?!n:n}function Uj(e,n,r,l,a,o,u,c){let{affectsX:d,affectsY:h}=n;const{isHorizontal:m,isVertical:p}=n,x=m&&p,{xSnapped:v,ySnapped:w}=r,{minWidth:E,maxWidth:S,minHeight:_,maxHeight:T}=l,{x:k,y:A,width:q,height:j,aspectRatio:L}=e;let O=Math.floor(m?v-e.pointerX:0),P=Math.floor(p?w-e.pointerY:0);const R=q+(d?-O:O),H=j+(h?-P:P),U=-o[0]*q,ee=-o[1]*j;let B=Pu(R,E,S),F=Pu(H,_,T);if(u){let Q=0,K=0;d&&O<0?Q=hi(k+O+U,u[0][0]):!d&&O>0&&(Q=pi(k+R+U,u[1][0])),h&&P<0?K=hi(A+P+ee,u[0][1]):!h&&P>0&&(K=pi(A+H+ee,u[1][1])),B=Math.max(B,Q),F=Math.max(F,K)}if(c){let Q=0,K=0;d&&O>0?Q=pi(k+O,c[0][0]):!d&&O<0&&(Q=hi(k+R,c[1][0])),h&&P>0?K=pi(A+P,c[0][1]):!h&&P<0&&(K=hi(A+H,c[1][1])),B=Math.max(B,Q),F=Math.max(F,K)}if(a){if(m){const Q=Pu(R/L,_,T)*L;if(B=Math.max(B,Q),u){let K=0;!d&&!h||d&&!h&&x?K=pi(A+ee+R/L,u[1][1])*L:K=hi(A+ee+(d?O:-O)/L,u[0][1])*L,B=Math.max(B,K)}if(c){let K=0;!d&&!h||d&&!h&&x?K=hi(A+R/L,c[1][1])*L:K=pi(A+(d?O:-O)/L,c[0][1])*L,B=Math.max(B,K)}}if(p){const Q=Pu(H*L,E,S)/L;if(F=Math.max(F,Q),u){let K=0;!d&&!h||h&&!d&&x?K=pi(k+H*L+U,u[1][0])/L:K=hi(k+(h?P:-P)*L+U,u[0][0])/L,F=Math.max(F,K)}if(c){let K=0;!d&&!h||h&&!d&&x?K=hi(k+H*L,c[1][0])/L:K=pi(k+(h?P:-P)*L,c[0][0])/L,F=Math.max(F,K)}}}P=P+(P<0?F:-F),O=O+(O<0?B:-B),a&&(x?R>H*L?P=(Uv(d,h)?-O:O)/L:O=(Uv(d,h)?-P:P)*L:m?(P=O/L,h=d):(O=P*L,d=h));const z=d?k+O:k,G=h?A+P:A;return{width:q+(d?-O:O),height:j+(h?-P:P),x:o[0]*O*(d?-1:1)+z,y:o[1]*P*(h?-1:1)+G}}const US={width:0,height:0,x:0,y:0},Pj={...US,pointerX:0,pointerY:0,aspectRatio:1};function Vj(e){return[[0,0],[e.measured.width,e.measured.height]]}function $j(e,n,r){const l=n.position.x+e.position.x,a=n.position.y+e.position.y,o=e.measured.width??0,u=e.measured.height??0,c=r[0]*o,d=r[1]*u;return[[l-c,a-d],[l+o-c,a+u-d]]}function Gj({domNode:e,nodeId:n,getStoreItems:r,onChange:l,onEnd:a}){const o=wn(e);let u={controlDirection:qv("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function c({controlPosition:h,boundaries:m,keepAspectRatio:p,resizeDirection:x,onResizeStart:v,onResize:w,onResizeEnd:E,shouldResize:S}){let _={...US},T={...Pj};u={boundaries:m,resizeDirection:x,keepAspectRatio:p,controlDirection:qv(h)};let k,A=null,q=[],j,L,O,P=!1;const R=Jw().on("start",H=>{const{nodeLookup:U,transform:ee,snapGrid:B,snapToGrid:F,nodeOrigin:z,paneDomNode:G}=r();if(k=U.get(n),!k)return;A=(G==null?void 0:G.getBoundingClientRect())??null;const{xSnapped:Q,ySnapped:K}=zo(H.sourceEvent,{transform:ee,snapGrid:B,snapToGrid:F,containerBounds:A});_={width:k.measured.width??0,height:k.measured.height??0,x:k.position.x??0,y:k.position.y??0},T={..._,pointerX:Q,pointerY:K,aspectRatio:_.width/_.height},j=void 0,k.parentId&&(k.extent==="parent"||k.expandParent)&&(j=U.get(k.parentId),L=j&&k.extent==="parent"?Vj(j):void 0),q=[],O=void 0;for(const[M,I]of U)if(I.parentId===n&&(q.push({id:M,position:{...I.position},extent:I.extent}),I.extent==="parent"||I.expandParent)){const Y=$j(I,k,I.origin??z);O?O=[[Math.min(Y[0][0],O[0][0]),Math.min(Y[0][1],O[0][1])],[Math.max(Y[1][0],O[1][0]),Math.max(Y[1][1],O[1][1])]]:O=Y}v==null||v(H,{..._})}).on("drag",H=>{const{transform:U,snapGrid:ee,snapToGrid:B,nodeOrigin:F}=r(),z=zo(H.sourceEvent,{transform:U,snapGrid:ee,snapToGrid:B,containerBounds:A}),G=[];if(!k)return;const{x:Q,y:K,width:M,height:I}=_,Y={},N=k.origin??F,{width:$,height:X,x:J,y:ne}=Uj(T,u.controlDirection,z,u.boundaries,u.keepAspectRatio,N,L,O),re=$!==M,se=X!==I,xe=J!==Q&&re,be=ne!==K&&se;if(!xe&&!be&&!re&&!se)return;if((xe||be||N[0]===1||N[1]===1)&&(Y.x=xe?J:_.x,Y.y=be?ne:_.y,_.x=Y.x,_.y=Y.y,q.length>0)){const ze=J-Q,Te=ne-K;for(const ut of q)ut.position={x:ut.position.x-ze+N[0]*($-M),y:ut.position.y-Te+N[1]*(X-I)},G.push(ut)}if((re||se)&&(Y.width=re&&(!u.resizeDirection||u.resizeDirection==="horizontal")?$:_.width,Y.height=se&&(!u.resizeDirection||u.resizeDirection==="vertical")?X:_.height,_.width=Y.width,_.height=Y.height),j&&k.expandParent){const ze=N[0]*(Y.width??0);Y.x&&Y.x {P&&(E==null||E(H,{..._}),a==null||a({..._}),P=!1)});o.call(R)}function d(){o.on(".drag",null)}return{update:c,destroy:d}}var bh={exports:{}},wh={},Sh={exports:{}},_h={};/** + `})]}),b.jsx("span",{className:"text-[var(--text-muted)] font-mono whitespace-nowrap",children:IN(a,e)}),b.jsxs("span",{className:"text-[var(--text-muted)] font-mono whitespace-nowrap",children:["Event ",e,"/",n]}),b.jsx("div",{className:"flex items-center gap-0.5",children:BN.map(p=>b.jsxs("button",{onClick:()=>c(p),className:He("px-1.5 py-0.5 rounded text-xs font-mono transition-colors",l===p?"bg-[var(--accent)] text-white":"text-[var(--text-muted)] hover:text-[var(--text-secondary)] hover:bg-[var(--surface-hover)]"),children:[p,"×"]},p))})]})}const _c=V.createContext(null);_c.displayName="PanelGroupContext";const yt={group:"data-panel-group",groupDirection:"data-panel-group-direction",groupId:"data-panel-group-id",panel:"data-panel",panelCollapsible:"data-panel-collapsible",panelId:"data-panel-id",panelSize:"data-panel-size",resizeHandle:"data-resize-handle",resizeHandleActive:"data-resize-handle-active",resizeHandleEnabled:"data-panel-resize-handle-enabled",resizeHandleId:"data-panel-resize-handle-id",resizeHandleState:"data-resize-handle-state"},gm=10,Xi=V.useLayoutEffect,rv=X2.useId,UN=typeof rv=="function"?rv:()=>null;let PN=0;function xm(e=null){const n=UN(),r=V.useRef(e||n||null);return r.current===null&&(r.current=""+PN++),e??r.current}function ww({children:e,className:n="",collapsedSize:r,collapsible:l,defaultSize:a,forwardedRef:o,id:u,maxSize:c,minSize:d,onCollapse:h,onExpand:m,onResize:p,order:x,style:v,tagName:w="div",...E}){const _=V.useContext(_c);if(_===null)throw Error("Panel components must be rendered within a PanelGroup container");const{collapsePanel:S,expandPanel:T,getPanelSize:k,getPanelStyle:A,groupId:q,isPanelCollapsed:j,reevaluatePanelConstraints:L,registerPanel:R,resizePanel:P,unregisterPanel:O}=_,H=xm(u),U=V.useRef({callbacks:{onCollapse:h,onExpand:m,onResize:p},constraints:{collapsedSize:r,collapsible:l,defaultSize:a,maxSize:c,minSize:d},id:H,idIsFromProps:u!==void 0,order:x});V.useRef({didLogMissingDefaultSizeWarning:!1}),Xi(()=>{const{callbacks:B,constraints:F}=U.current,z={...F};U.current.id=H,U.current.idIsFromProps=u!==void 0,U.current.order=x,B.onCollapse=h,B.onExpand=m,B.onResize=p,F.collapsedSize=r,F.collapsible=l,F.defaultSize=a,F.maxSize=c,F.minSize=d,(z.collapsedSize!==F.collapsedSize||z.collapsible!==F.collapsible||z.maxSize!==F.maxSize||z.minSize!==F.minSize)&&L(U.current,z)}),Xi(()=>{const B=U.current;return R(B),()=>{O(B)}},[x,H,R,O]),V.useImperativeHandle(o,()=>({collapse:()=>{S(U.current)},expand:B=>{T(U.current,B)},getId(){return H},getSize(){return k(U.current)},isCollapsed(){return j(U.current)},isExpanded(){return!j(U.current)},resize:B=>{P(U.current,B)}}),[S,T,k,j,H,P]);const ee=A(U.current,a);return V.createElement(w,{...E,children:e,className:n,id:H,style:{...ee,...v},[yt.groupId]:q,[yt.panel]:"",[yt.panelCollapsible]:l||void 0,[yt.panelId]:H,[yt.panelSize]:parseFloat(""+ee.flexGrow).toFixed(1)})}const ko=V.forwardRef((e,n)=>V.createElement(ww,{...e,forwardedRef:n}));ww.displayName="Panel";ko.displayName="forwardRef(Panel)";let Ip=null,Zu=-1,gi=null;function VN(e,n){if(n){const r=(n&Nw)!==0,l=(n&Cw)!==0,a=(n&Tw)!==0,o=(n&Aw)!==0;if(r)return a?"se-resize":o?"ne-resize":"e-resize";if(l)return a?"sw-resize":o?"nw-resize":"w-resize";if(a)return"s-resize";if(o)return"n-resize"}switch(e){case"horizontal":return"ew-resize";case"intersection":return"move";case"vertical":return"ns-resize"}}function $N(){gi!==null&&(document.head.removeChild(gi),Ip=null,gi=null,Zu=-1)}function uh(e,n){var r,l;const a=VN(e,n);if(Ip!==a){if(Ip=a,gi===null&&(gi=document.createElement("style"),document.head.appendChild(gi)),Zu>=0){var o;(o=gi.sheet)===null||o===void 0||o.removeRule(Zu)}Zu=(r=(l=gi.sheet)===null||l===void 0?void 0:l.insertRule(`*{cursor: ${a} !important;}`))!==null&&r!==void 0?r:-1}}function Sw(e){return e.type==="keydown"}function _w(e){return e.type.startsWith("pointer")}function kw(e){return e.type.startsWith("mouse")}function kc(e){if(_w(e)){if(e.isPrimary)return{x:e.clientX,y:e.clientY}}else if(kw(e))return{x:e.clientX,y:e.clientY};return{x:1/0,y:1/0}}function GN(){if(typeof matchMedia=="function")return matchMedia("(pointer:coarse)").matches?"coarse":"fine"}function FN(e,n,r){return e.x n.x&&e.y n.y}function YN(e,n){if(e===n)throw new Error("Cannot compare node with itself");const r={a:av(e),b:av(n)};let l;for(;r.a.at(-1)===r.b.at(-1);)e=r.a.pop(),n=r.b.pop(),l=e;Re(l,"Stacking order can only be calculated for elements with a common ancestor");const a={a:lv(iv(r.a)),b:lv(iv(r.b))};if(a.a===a.b){const o=l.childNodes,u={a:r.a.at(-1),b:r.b.at(-1)};let c=o.length;for(;c--;){const d=o[c];if(d===u.a)return 1;if(d===u.b)return-1}}return Math.sign(a.a-a.b)}const XN=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function QN(e){var n;const r=getComputedStyle((n=Ew(e))!==null&&n!==void 0?n:e).display;return r==="flex"||r==="inline-flex"}function ZN(e){const n=getComputedStyle(e);return!!(n.position==="fixed"||n.zIndex!=="auto"&&(n.position!=="static"||QN(e))||+n.opacity<1||"transform"in n&&n.transform!=="none"||"webkitTransform"in n&&n.webkitTransform!=="none"||"mixBlendMode"in n&&n.mixBlendMode!=="normal"||"filter"in n&&n.filter!=="none"||"webkitFilter"in n&&n.webkitFilter!=="none"||"isolation"in n&&n.isolation==="isolate"||XN.test(n.willChange)||n.webkitOverflowScrolling==="touch")}function iv(e){let n=e.length;for(;n--;){const r=e[n];if(Re(r,"Missing node"),ZN(r))return r}return null}function lv(e){return e&&Number(getComputedStyle(e).zIndex)||0}function av(e){const n=[];for(;e;)n.push(e),e=Ew(e);return n}function Ew(e){const{parentNode:n}=e;return n&&n instanceof ShadowRoot?n.host:n}const Nw=1,Cw=2,Tw=4,Aw=8,KN=GN()==="coarse";let Fn=[],la=!1,Gi=new Map,Ec=new Map;const Lo=new Set;function JN(e,n,r,l,a){var o;const{ownerDocument:u}=n,c={direction:r,element:n,hitAreaMargins:l,setResizeHandlerState:a},d=(o=Gi.get(u))!==null&&o!==void 0?o:0;return Gi.set(u,d+1),Lo.add(c),ic(),function(){var m;Ec.delete(e),Lo.delete(c);const p=(m=Gi.get(u))!==null&&m!==void 0?m:1;if(Gi.set(u,p-1),ic(),p===1&&Gi.delete(u),Fn.includes(c)){const x=Fn.indexOf(c);x>=0&&Fn.splice(x,1),vm(),a("up",!0,null)}}}function WN(e){const{target:n}=e,{x:r,y:l}=kc(e);la=!0,ym({target:n,x:r,y:l}),ic(),Fn.length>0&&(lc("down",e),e.preventDefault(),jw(n)||e.stopImmediatePropagation())}function ch(e){const{x:n,y:r}=kc(e);if(la&&e.buttons===0&&(la=!1,lc("up",e)),!la){const{target:l}=e;ym({target:l,x:n,y:r})}lc("move",e),vm(),Fn.length>0&&e.preventDefault()}function fh(e){const{target:n}=e,{x:r,y:l}=kc(e);Ec.clear(),la=!1,Fn.length>0&&(e.preventDefault(),jw(n)||e.stopImmediatePropagation()),lc("up",e),ym({target:n,x:r,y:l}),vm(),ic()}function jw(e){let n=e;for(;n;){if(n.hasAttribute(yt.resizeHandle))return!0;n=n.parentElement}return!1}function ym({target:e,x:n,y:r}){Fn.splice(0);let l=null;(e instanceof HTMLElement||e instanceof SVGElement)&&(l=e),Lo.forEach(a=>{const{element:o,hitAreaMargins:u}=a,c=o.getBoundingClientRect(),{bottom:d,left:h,right:m,top:p}=c,x=KN?u.coarse:u.fine;if(n>=h-x&&n<=m+x&&r>=p-x&&r<=d+x){if(l!==null&&document.contains(l)&&o!==l&&!o.contains(l)&&!l.contains(o)&&YN(l,o)>0){let w=l,E=!1;for(;w&&!w.contains(o);){if(FN(w.getBoundingClientRect(),c)){E=!0;break}w=w.parentElement}if(E)return}Fn.push(a)}})}function dh(e,n){Ec.set(e,n)}function vm(){let e=!1,n=!1;Fn.forEach(l=>{const{direction:a}=l;a==="horizontal"?e=!0:n=!0});let r=0;Ec.forEach(l=>{r|=l}),e&&n?uh("intersection",r):e?uh("horizontal",r):n?uh("vertical",r):$N()}let hh=new AbortController;function ic(){hh.abort(),hh=new AbortController;const e={capture:!0,signal:hh.signal};Lo.size&&(la?(Fn.length>0&&Gi.forEach((n,r)=>{const{body:l}=r;n>0&&(l.addEventListener("contextmenu",fh,e),l.addEventListener("pointerleave",ch,e),l.addEventListener("pointermove",ch,e))}),window.addEventListener("pointerup",fh,e),window.addEventListener("pointercancel",fh,e)):Gi.forEach((n,r)=>{const{body:l}=r;n>0&&(l.addEventListener("pointerdown",WN,e),l.addEventListener("pointermove",ch,e))}))}function lc(e,n){Lo.forEach(r=>{const{setResizeHandlerState:l}=r,a=Fn.includes(r);l(e,a,n)})}function eC(){const[e,n]=V.useState(0);return V.useCallback(()=>n(r=>r+1),[])}function Re(e,n){if(!e)throw console.error(n),Error(n)}function Ki(e,n,r=gm){return e.toFixed(r)===n.toFixed(r)?0:e>n?1:-1}function jr(e,n,r=gm){return Ki(e,n,r)===0}function bn(e,n,r){return Ki(e,n,r)===0}function tC(e,n,r){if(e.length!==n.length)return!1;for(let l=0;l 0&&(e=e<0?0-S:S)}}}{const p=e<0?c:d,x=r[p];Re(x,`No panel constraints found for index ${p}`);const{collapsedSize:v=0,collapsible:w,minSize:E=0}=x;if(w){const _=n[p];if(Re(_!=null,`Previous layout not found for panel index ${p}`),bn(_,E)){const S=_-v;Ki(S,Math.abs(e))>0&&(e=e<0?0-S:S)}}}}{const p=e<0?1:-1;let x=e<0?d:c,v=0;for(;;){const E=n[x];Re(E!=null,`Previous layout not found for panel index ${x}`);const S=ta({panelConstraints:r,panelIndex:x,size:100})-E;if(v+=S,x+=p,x<0||x>=r.length)break}const w=Math.min(Math.abs(e),Math.abs(v));e=e<0?0-w:w}{let x=e<0?c:d;for(;x>=0&&x =0))break;e<0?x--:x++}}if(tC(a,u))return a;{const p=e<0?d:c,x=n[p];Re(x!=null,`Previous layout not found for panel index ${p}`);const v=x+h,w=ta({panelConstraints:r,panelIndex:p,size:v});if(u[p]=w,!bn(w,v)){let E=v-w,S=e<0?d:c;for(;S>=0&&S 0?S--:S++}}}const m=u.reduce((p,x)=>x+p,0);return bn(m,100)?u:a}function nC({layout:e,panelsArray:n,pivotIndices:r}){let l=0,a=100,o=0,u=0;const c=r[0];Re(c!=null,"No pivot index found"),n.forEach((p,x)=>{const{constraints:v}=p,{maxSize:w=100,minSize:E=0}=v;x===c?(l=E,a=w):(o+=E,u+=w)});const d=Math.min(a,100-o),h=Math.max(l,100-u),m=e[c];return{valueMax:d,valueMin:h,valueNow:m}}function Ho(e,n=document){return Array.from(n.querySelectorAll(`[${yt.resizeHandleId}][data-panel-group-id="${e}"]`))}function zw(e,n,r=document){const a=Ho(e,r).findIndex(o=>o.getAttribute(yt.resizeHandleId)===n);return a??null}function Mw(e,n,r){const l=zw(e,n,r);return l!=null?[l,l+1]:[-1,-1]}function Dw(e,n=document){var r;if(n instanceof HTMLElement&&(n==null||(r=n.dataset)===null||r===void 0?void 0:r.panelGroupId)==e)return n;const l=n.querySelector(`[data-panel-group][data-panel-group-id="${e}"]`);return l||null}function Nc(e,n=document){const r=n.querySelector(`[${yt.resizeHandleId}="${e}"]`);return r||null}function rC(e,n,r,l=document){var a,o,u,c;const d=Nc(n,l),h=Ho(e,l),m=d?h.indexOf(d):-1,p=(a=(o=r[m])===null||o===void 0?void 0:o.id)!==null&&a!==void 0?a:null,x=(u=(c=r[m+1])===null||c===void 0?void 0:c.id)!==null&&u!==void 0?u:null;return[p,x]}function iC({committedValuesRef:e,eagerValuesRef:n,groupId:r,layout:l,panelDataArray:a,panelGroupElement:o,setLayout:u}){V.useRef({didWarnAboutMissingResizeHandle:!1}),Xi(()=>{if(!o)return;const c=Ho(r,o);for(let d=0;d {c.forEach((d,h)=>{d.removeAttribute("aria-controls"),d.removeAttribute("aria-valuemax"),d.removeAttribute("aria-valuemin"),d.removeAttribute("aria-valuenow")})}},[r,l,a,o]),V.useEffect(()=>{if(!o)return;const c=n.current;Re(c,"Eager values not found");const{panelDataArray:d}=c,h=Dw(r,o);Re(h!=null,`No group found for id "${r}"`);const m=Ho(r,o);Re(m,`No resize handles found for group id "${r}"`);const p=m.map(x=>{const v=x.getAttribute(yt.resizeHandleId);Re(v,"Resize handle element has no handle id attribute");const[w,E]=rC(r,v,d,o);if(w==null||E==null)return()=>{};const _=S=>{if(!S.defaultPrevented)switch(S.key){case"Enter":{S.preventDefault();const T=d.findIndex(k=>k.id===w);if(T>=0){const k=d[T];Re(k,`No panel data found for index ${T}`);const A=l[T],{collapsedSize:q=0,collapsible:j,minSize:L=0}=k.constraints;if(A!=null&&j){const R=Eo({delta:bn(A,q)?L-q:q-A,initialLayout:l,panelConstraints:d.map(P=>P.constraints),pivotIndices:Mw(r,v,o),prevLayout:l,trigger:"keyboard"});l!==R&&u(R)}}break}}};return x.addEventListener("keydown",_),()=>{x.removeEventListener("keydown",_)}});return()=>{p.forEach(x=>x())}},[o,e,n,r,l,a,u])}function ov(e,n){if(e.length!==n.length)return!1;for(let r=0;r o.constraints);let l=0,a=100;for(let o=0;o {const o=e[a];Re(o,`Panel data not found for index ${a}`);const{callbacks:u,constraints:c,id:d}=o,{collapsedSize:h=0,collapsible:m}=c,p=r[d];if(p==null||l!==p){r[d]=l;const{onCollapse:x,onExpand:v,onResize:w}=u;w&&w(l,p),m&&(x||v)&&(v&&(p==null||jr(p,h))&&!jr(l,h)&&v(),x&&(p==null||!jr(p,h))&&jr(l,h)&&x())}})}function Ou(e,n){if(e.length!==n.length)return!1;for(let r=0;r {r!==null&&clearTimeout(r),r=setTimeout(()=>{e(...a)},n)}}function sv(e){try{if(typeof localStorage<"u")e.getItem=n=>localStorage.getItem(n),e.setItem=(n,r)=>{localStorage.setItem(n,r)};else throw new Error("localStorage not supported in this environment")}catch(n){console.error(n),e.getItem=()=>null,e.setItem=()=>{}}}function Ow(e){return`react-resizable-panels:${e}`}function Lw(e){return e.map(n=>{const{constraints:r,id:l,idIsFromProps:a,order:o}=n;return a?l:o?`${o}:${JSON.stringify(r)}`:JSON.stringify(r)}).sort((n,r)=>n.localeCompare(r)).join(",")}function Hw(e,n){try{const r=Ow(e),l=n.getItem(r);if(l){const a=JSON.parse(l);if(typeof a=="object"&&a!=null)return a}}catch{}return null}function cC(e,n,r){var l,a;const o=(l=Hw(e,r))!==null&&l!==void 0?l:{},u=Lw(n);return(a=o[u])!==null&&a!==void 0?a:null}function fC(e,n,r,l,a){var o;const u=Ow(e),c=Lw(n),d=(o=Hw(e,a))!==null&&o!==void 0?o:{};d[c]={expandToSizes:Object.fromEntries(r.entries()),layout:l};try{a.setItem(u,JSON.stringify(d))}catch(h){console.error(h)}}function uv({layout:e,panelConstraints:n}){const r=[...e],l=r.reduce((o,u)=>o+u,0);if(r.length!==n.length)throw Error(`Invalid ${n.length} panel layout: ${r.map(o=>`${o}%`).join(", ")}`);if(!bn(l,100)&&r.length>0)for(let o=0;o (sv(No),No.getItem(e)),setItem:(e,n)=>{sv(No),No.setItem(e,n)}},cv={};function Bw({autoSaveId:e=null,children:n,className:r="",direction:l,forwardedRef:a,id:o=null,onLayout:u=null,keyboardResizeBy:c=null,storage:d=No,style:h,tagName:m="div",...p}){const x=xm(o),v=V.useRef(null),[w,E]=V.useState(null),[_,S]=V.useState([]),T=eC(),k=V.useRef({}),A=V.useRef(new Map),q=V.useRef(0),j=V.useRef({autoSaveId:e,direction:l,dragState:w,id:x,keyboardResizeBy:c,onLayout:u,storage:d}),L=V.useRef({layout:_,panelDataArray:[],panelDataArrayChanged:!1});V.useRef({didLogIdAndOrderWarning:!1,didLogPanelConstraintsWarning:!1,prevPanelIds:[]}),V.useImperativeHandle(a,()=>({getId:()=>j.current.id,getLayout:()=>{const{layout:N}=L.current;return N},setLayout:N=>{const{onLayout:$}=j.current,{layout:X,panelDataArray:J}=L.current,ne=uv({layout:N,panelConstraints:J.map(re=>re.constraints)});ov(X,ne)||(S(ne),L.current.layout=ne,$&&$(ne),Xl(J,ne,k.current))}}),[]),Xi(()=>{j.current.autoSaveId=e,j.current.direction=l,j.current.dragState=w,j.current.id=x,j.current.onLayout=u,j.current.storage=d}),iC({committedValuesRef:j,eagerValuesRef:L,groupId:x,layout:_,panelDataArray:L.current.panelDataArray,setLayout:S,panelGroupElement:v.current}),V.useEffect(()=>{const{panelDataArray:N}=L.current;if(e){if(_.length===0||_.length!==N.length)return;let $=cv[e];$==null&&($=uC(fC,dC),cv[e]=$);const X=[...N],J=new Map(A.current);$(e,X,J,_,d)}},[e,_,d]),V.useEffect(()=>{});const R=V.useCallback(N=>{const{onLayout:$}=j.current,{layout:X,panelDataArray:J}=L.current;if(N.constraints.collapsible){const ne=J.map(be=>be.constraints),{collapsedSize:re=0,panelSize:se,pivotIndices:xe}=Ui(J,N,X);if(Re(se!=null,`Panel size not found for panel "${N.id}"`),!jr(se,re)){A.current.set(N.id,se);const ye=Jl(J,N)===J.length-1?se-re:re-se,pe=Eo({delta:ye,initialLayout:X,panelConstraints:ne,pivotIndices:xe,prevLayout:X,trigger:"imperative-api"});Ou(X,pe)||(S(pe),L.current.layout=pe,$&&$(pe),Xl(J,pe,k.current))}}},[]),P=V.useCallback((N,$)=>{const{onLayout:X}=j.current,{layout:J,panelDataArray:ne}=L.current;if(N.constraints.collapsible){const re=ne.map(_e=>_e.constraints),{collapsedSize:se=0,panelSize:xe=0,minSize:be=0,pivotIndices:ye}=Ui(ne,N,J),pe=$??be;if(jr(xe,se)){const _e=A.current.get(N.id),ze=_e!=null&&_e>=pe?_e:pe,ut=Jl(ne,N)===ne.length-1?xe-ze:ze-xe,nt=Eo({delta:ut,initialLayout:J,panelConstraints:re,pivotIndices:ye,prevLayout:J,trigger:"imperative-api"});Ou(J,nt)||(S(nt),L.current.layout=nt,X&&X(nt),Xl(ne,nt,k.current))}}},[]),O=V.useCallback(N=>{const{layout:$,panelDataArray:X}=L.current,{panelSize:J}=Ui(X,N,$);return Re(J!=null,`Panel size not found for panel "${N.id}"`),J},[]),H=V.useCallback((N,$)=>{const{panelDataArray:X}=L.current,J=Jl(X,N);return sC({defaultSize:$,dragState:w,layout:_,panelData:X,panelIndex:J})},[w,_]),U=V.useCallback(N=>{const{layout:$,panelDataArray:X}=L.current,{collapsedSize:J=0,collapsible:ne,panelSize:re}=Ui(X,N,$);return Re(re!=null,`Panel size not found for panel "${N.id}"`),ne===!0&&jr(re,J)},[]),ee=V.useCallback(N=>{const{layout:$,panelDataArray:X}=L.current,{collapsedSize:J=0,collapsible:ne,panelSize:re}=Ui(X,N,$);return Re(re!=null,`Panel size not found for panel "${N.id}"`),!ne||Ki(re,J)>0},[]),B=V.useCallback(N=>{const{panelDataArray:$}=L.current;$.push(N),$.sort((X,J)=>{const ne=X.order,re=J.order;return ne==null&&re==null?0:ne==null?-1:re==null?1:ne-re}),L.current.panelDataArrayChanged=!0,T()},[T]);Xi(()=>{if(L.current.panelDataArrayChanged){L.current.panelDataArrayChanged=!1;const{autoSaveId:N,onLayout:$,storage:X}=j.current,{layout:J,panelDataArray:ne}=L.current;let re=null;if(N){const xe=cC(N,ne,X);xe&&(A.current=new Map(Object.entries(xe.expandToSizes)),re=xe.layout)}re==null&&(re=oC({panelDataArray:ne}));const se=uv({layout:re,panelConstraints:ne.map(xe=>xe.constraints)});ov(J,se)||(S(se),L.current.layout=se,$&&$(se),Xl(ne,se,k.current))}}),Xi(()=>{const N=L.current;return()=>{N.layout=[]}},[]);const F=V.useCallback(N=>{let $=!1;const X=v.current;return X&&window.getComputedStyle(X,null).getPropertyValue("direction")==="rtl"&&($=!0),function(ne){ne.preventDefault();const re=v.current;if(!re)return()=>null;const{direction:se,dragState:xe,id:be,keyboardResizeBy:ye,onLayout:pe}=j.current,{layout:_e,panelDataArray:ze}=L.current,{initialLayout:Te}=xe??{},ut=Mw(be,N,re);let nt=aC(ne,N,se,xe,ye,re);const zt=se==="horizontal";zt&&$&&(nt=-nt);const Vt=ze.map(Rn=>Rn.constraints),Ht=Eo({delta:nt,initialLayout:Te??_e,panelConstraints:Vt,pivotIndices:ut,prevLayout:_e,trigger:Sw(ne)?"keyboard":"mouse-or-touch"}),kn=!Ou(_e,Ht);(_w(ne)||kw(ne))&&q.current!=nt&&(q.current=nt,!kn&&nt!==0?zt?dh(N,nt<0?Nw:Cw):dh(N,nt<0?Tw:Aw):dh(N,0)),kn&&(S(Ht),L.current.layout=Ht,pe&&pe(Ht),Xl(ze,Ht,k.current))}},[]),z=V.useCallback((N,$)=>{const{onLayout:X}=j.current,{layout:J,panelDataArray:ne}=L.current,re=ne.map(_e=>_e.constraints),{panelSize:se,pivotIndices:xe}=Ui(ne,N,J);Re(se!=null,`Panel size not found for panel "${N.id}"`);const ye=Jl(ne,N)===ne.length-1?se-$:$-se,pe=Eo({delta:ye,initialLayout:J,panelConstraints:re,pivotIndices:xe,prevLayout:J,trigger:"imperative-api"});Ou(J,pe)||(S(pe),L.current.layout=pe,X&&X(pe),Xl(ne,pe,k.current))},[]),G=V.useCallback((N,$)=>{const{layout:X,panelDataArray:J}=L.current,{collapsedSize:ne=0,collapsible:re}=$,{collapsedSize:se=0,collapsible:xe,maxSize:be=100,minSize:ye=0}=N.constraints,{panelSize:pe}=Ui(J,N,X);pe!=null&&(re&&xe&&jr(pe,ne)?jr(ne,se)||z(N,se):pe be&&z(N,be))},[z]),Q=V.useCallback((N,$)=>{const{direction:X}=j.current,{layout:J}=L.current;if(!v.current)return;const ne=Nc(N,v.current);Re(ne,`Drag handle element not found for id "${N}"`);const re=Rw(X,$);E({dragHandleId:N,dragHandleRect:ne.getBoundingClientRect(),initialCursorPosition:re,initialLayout:J})},[]),K=V.useCallback(()=>{E(null)},[]),M=V.useCallback(N=>{const{panelDataArray:$}=L.current,X=Jl($,N);X>=0&&($.splice(X,1),delete k.current[N.id],L.current.panelDataArrayChanged=!0,T())},[T]),I=V.useMemo(()=>({collapsePanel:R,direction:l,dragState:w,expandPanel:P,getPanelSize:O,getPanelStyle:H,groupId:x,isPanelCollapsed:U,isPanelExpanded:ee,reevaluatePanelConstraints:G,registerPanel:B,registerResizeHandle:F,resizePanel:z,startDragging:Q,stopDragging:K,unregisterPanel:M,panelGroupElement:v.current}),[R,w,l,P,O,H,x,U,ee,G,B,F,z,Q,K,M]),Y={display:"flex",flexDirection:l==="horizontal"?"row":"column",height:"100%",overflow:"hidden",width:"100%"};return V.createElement(_c.Provider,{value:I},V.createElement(m,{...p,children:n,className:r,id:o,ref:v,style:{...Y,...h},[yt.group]:"",[yt.groupDirection]:l,[yt.groupId]:x}))}const qp=V.forwardRef((e,n)=>V.createElement(Bw,{...e,forwardedRef:n}));Bw.displayName="PanelGroup";qp.displayName="forwardRef(PanelGroup)";function Jl(e,n){return e.findIndex(r=>r===n||r.id===n.id)}function Ui(e,n,r){const l=Jl(e,n),o=l===e.length-1?[l-1,l]:[l,l+1],u=r[l];return{...n.constraints,panelSize:u,pivotIndices:o}}function hC({disabled:e,handleId:n,resizeHandler:r,panelGroupElement:l}){V.useEffect(()=>{if(e||r==null||l==null)return;const a=Nc(n,l);if(a==null)return;const o=u=>{if(!u.defaultPrevented)switch(u.key){case"ArrowDown":case"ArrowLeft":case"ArrowRight":case"ArrowUp":case"End":case"Home":{u.preventDefault(),r(u);break}case"F6":{u.preventDefault();const c=a.getAttribute(yt.groupId);Re(c,`No group element found for id "${c}"`);const d=Ho(c,l),h=zw(c,n,l);Re(h!==null,`No resize element found for id "${n}"`);const m=u.shiftKey?h>0?h-1:d.length-1:h+1 {a.removeEventListener("keydown",o)}},[l,e,n,r])}function Up({children:e=null,className:n="",disabled:r=!1,hitAreaMargins:l,id:a,onBlur:o,onClick:u,onDragging:c,onFocus:d,onPointerDown:h,onPointerUp:m,style:p={},tabIndex:x=0,tagName:v="div",...w}){var E,_;const S=V.useRef(null),T=V.useRef({onClick:u,onDragging:c,onPointerDown:h,onPointerUp:m});V.useEffect(()=>{T.current.onClick=u,T.current.onDragging=c,T.current.onPointerDown=h,T.current.onPointerUp=m});const k=V.useContext(_c);if(k===null)throw Error("PanelResizeHandle components must be rendered within a PanelGroup container");const{direction:A,groupId:q,registerResizeHandle:j,startDragging:L,stopDragging:R,panelGroupElement:P}=k,O=xm(a),[H,U]=V.useState("inactive"),[ee,B]=V.useState(!1),[F,z]=V.useState(null),G=V.useRef({state:H});Xi(()=>{G.current.state=H}),V.useEffect(()=>{if(r)z(null);else{const I=j(O);z(()=>I)}},[r,O,j]);const Q=(E=l==null?void 0:l.coarse)!==null&&E!==void 0?E:15,K=(_=l==null?void 0:l.fine)!==null&&_!==void 0?_:5;V.useEffect(()=>{if(r||F==null)return;const I=S.current;Re(I,"Element ref not attached");let Y=!1;return JN(O,I,A,{coarse:Q,fine:K},($,X,J)=>{if(!X){U("inactive");return}switch($){case"down":{U("drag"),Y=!1,Re(J,'Expected event to be defined for "down" action'),L(O,J);const{onDragging:ne,onPointerDown:re}=T.current;ne==null||ne(!0),re==null||re();break}case"move":{const{state:ne}=G.current;Y=!0,ne!=="drag"&&U("hover"),Re(J,'Expected event to be defined for "move" action'),F(J);break}case"up":{U("hover"),R();const{onClick:ne,onDragging:re,onPointerUp:se}=T.current;re==null||re(!1),se==null||se(),Y||ne==null||ne();break}}})},[Q,A,r,K,j,O,F,L,R]),hC({disabled:r,handleId:O,resizeHandler:F,panelGroupElement:P});const M={touchAction:"none",userSelect:"none"};return V.createElement(v,{...w,children:e,className:n,id:a,onBlur:()=>{B(!1),o==null||o()},onFocus:()=>{B(!0),d==null||d()},ref:S,role:"separator",style:{...M,...p},tabIndex:x,[yt.groupDirection]:A,[yt.groupId]:q,[yt.resizeHandle]:"",[yt.resizeHandleActive]:H==="drag"?"pointer":ee?"keyboard":void 0,[yt.resizeHandleEnabled]:!r,[yt.resizeHandleId]:O,[yt.resizeHandleState]:H})}Up.displayName="PanelResizeHandle";function jt(e){if(typeof e=="string"||typeof e=="number")return""+e;let n="";if(Array.isArray(e))for(let r=0,l;r {}};function Cc(){for(var e=0,n=arguments.length,r={},l;e =0&&(l=r.slice(a+1),r=r.slice(0,a)),r&&!n.hasOwnProperty(r))throw new Error("unknown type: "+r);return{type:r,name:l}})}Ku.prototype=Cc.prototype={constructor:Ku,on:function(e,n){var r=this._,l=mC(e+"",r),a,o=-1,u=l.length;if(arguments.length<2){for(;++o0)for(var r=new Array(a),l=0,a,o;l=0&&(n=e.slice(0,r))!=="xmlns"&&(e=e.slice(r+1)),dv.hasOwnProperty(n)?{space:dv[n],local:e}:e}function xC(e){return function(){var n=this.ownerDocument,r=this.namespaceURI;return r===Pp&&n.documentElement.namespaceURI===Pp?n.createElement(e):n.createElementNS(r,e)}}function yC(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Iw(e){var n=Tc(e);return(n.local?yC:xC)(n)}function vC(){}function bm(e){return e==null?vC:function(){return this.querySelector(e)}}function bC(e){typeof e!="function"&&(e=bm(e));for(var n=this._groups,r=n.length,l=new Array(r),a=0;a =k&&(k=T+1);!(q=_[k])&&++k =0;)(u=l[a])&&(o&&u.compareDocumentPosition(o)^4&&o.parentNode.insertBefore(u,o),o=u);return this}function GC(e){e||(e=FC);function n(p,x){return p&&x?e(p.__data__,x.__data__):!p-!x}for(var r=this._groups,l=r.length,a=new Array(l),o=0;o n?1:e>=n?0:NaN}function YC(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function XC(){return Array.from(this)}function QC(){for(var e=this._groups,n=0,r=e.length;n 1?this.each((n==null?a3:typeof n=="function"?s3:o3)(e,n,r??"")):ua(this.node(),e)}function ua(e,n){return e.style.getPropertyValue(n)||$w(e).getComputedStyle(e,null).getPropertyValue(n)}function c3(e){return function(){delete this[e]}}function f3(e,n){return function(){this[e]=n}}function d3(e,n){return function(){var r=n.apply(this,arguments);r==null?delete this[e]:this[e]=r}}function h3(e,n){return arguments.length>1?this.each((n==null?c3:typeof n=="function"?d3:f3)(e,n)):this.node()[e]}function Gw(e){return e.trim().split(/^|\s+/)}function wm(e){return e.classList||new Fw(e)}function Fw(e){this._node=e,this._names=Gw(e.getAttribute("class")||"")}Fw.prototype={add:function(e){var n=this._names.indexOf(e);n<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var n=this._names.indexOf(e);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function Yw(e,n){for(var r=wm(e),l=-1,a=n.length;++l=0&&(r=n.slice(l+1),n=n.slice(0,l)),{type:n,name:r}})}function U3(e){return function(){var n=this.__on;if(n){for(var r=0,l=-1,a=n.length,o;r()=>e;function Vp(e,{sourceEvent:n,subject:r,target:l,identifier:a,active:o,x:u,y:c,dx:d,dy:h,dispatch:m}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},subject:{value:r,enumerable:!0,configurable:!0},target:{value:l,enumerable:!0,configurable:!0},identifier:{value:a,enumerable:!0,configurable:!0},active:{value:o,enumerable:!0,configurable:!0},x:{value:u,enumerable:!0,configurable:!0},y:{value:c,enumerable:!0,configurable:!0},dx:{value:d,enumerable:!0,configurable:!0},dy:{value:h,enumerable:!0,configurable:!0},_:{value:m}})}Vp.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function K3(e){return!e.ctrlKey&&!e.button}function J3(){return this.parentNode}function W3(e,n){return n??{x:e.x,y:e.y}}function eT(){return navigator.maxTouchPoints||"ontouchstart"in this}function Ww(){var e=K3,n=J3,r=W3,l=eT,a={},o=Cc("start","drag","end"),u=0,c,d,h,m,p=0;function x(A){A.on("mousedown.drag",v).filter(l).on("touchstart.drag",_).on("touchmove.drag",S,Z3).on("touchend.drag touchcancel.drag",T).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function v(A,q){if(!(m||!e.call(this,A,q))){var j=k(this,n.call(this,A,q),A,q,"mouse");j&&(wn(A.view).on("mousemove.drag",w,Bo).on("mouseup.drag",E,Bo),Kw(A.view),ph(A),h=!1,c=A.clientX,d=A.clientY,j("start",A))}}function w(A){if(aa(A),!h){var q=A.clientX-c,j=A.clientY-d;h=q*q+j*j>p}a.mouse("drag",A)}function E(A){wn(A.view).on("mousemove.drag mouseup.drag",null),Jw(A.view,h),aa(A),a.mouse("end",A)}function _(A,q){if(e.call(this,A,q)){var j=A.changedTouches,L=n.call(this,A,q),R=j.length,P,O;for(P=0;P >8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):r===8?Hu(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):r===4?Hu(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=nT.exec(e))?new un(n[1],n[2],n[3],1):(n=rT.exec(e))?new un(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=iT.exec(e))?Hu(n[1],n[2],n[3],n[4]):(n=lT.exec(e))?Hu(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=aT.exec(e))?vv(n[1],n[2]/100,n[3]/100,1):(n=oT.exec(e))?vv(n[1],n[2]/100,n[3]/100,n[4]):hv.hasOwnProperty(e)?gv(hv[e]):e==="transparent"?new un(NaN,NaN,NaN,0):null}function gv(e){return new un(e>>16&255,e>>8&255,e&255,1)}function Hu(e,n,r,l){return l<=0&&(e=n=r=NaN),new un(e,n,r,l)}function cT(e){return e instanceof Jo||(e=Ji(e)),e?(e=e.rgb(),new un(e.r,e.g,e.b,e.opacity)):new un}function $p(e,n,r,l){return arguments.length===1?cT(e):new un(e,n,r,l??1)}function un(e,n,r,l){this.r=+e,this.g=+n,this.b=+r,this.opacity=+l}Sm(un,$p,eS(Jo,{brighter(e){return e=e==null?oc:Math.pow(oc,e),new un(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Io:Math.pow(Io,e),new un(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new un(Qi(this.r),Qi(this.g),Qi(this.b),sc(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:xv,formatHex:xv,formatHex8:fT,formatRgb:yv,toString:yv}));function xv(){return`#${Fi(this.r)}${Fi(this.g)}${Fi(this.b)}`}function fT(){return`#${Fi(this.r)}${Fi(this.g)}${Fi(this.b)}${Fi((isNaN(this.opacity)?1:this.opacity)*255)}`}function yv(){const e=sc(this.opacity);return`${e===1?"rgb(":"rgba("}${Qi(this.r)}, ${Qi(this.g)}, ${Qi(this.b)}${e===1?")":`, ${e})`}`}function sc(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Qi(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Fi(e){return e=Qi(e),(e<16?"0":"")+e.toString(16)}function vv(e,n,r,l){return l<=0?e=n=r=NaN:r<=0||r>=1?e=n=NaN:n<=0&&(e=NaN),new Pn(e,n,r,l)}function tS(e){if(e instanceof Pn)return new Pn(e.h,e.s,e.l,e.opacity);if(e instanceof Jo||(e=Ji(e)),!e)return new Pn;if(e instanceof Pn)return e;e=e.rgb();var n=e.r/255,r=e.g/255,l=e.b/255,a=Math.min(n,r,l),o=Math.max(n,r,l),u=NaN,c=o-a,d=(o+a)/2;return c?(n===o?u=(r-l)/c+(r 0&&d<1?0:u,new Pn(u,c,d,e.opacity)}function dT(e,n,r,l){return arguments.length===1?tS(e):new Pn(e,n,r,l??1)}function Pn(e,n,r,l){this.h=+e,this.s=+n,this.l=+r,this.opacity=+l}Sm(Pn,dT,eS(Jo,{brighter(e){return e=e==null?oc:Math.pow(oc,e),new Pn(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Io:Math.pow(Io,e),new Pn(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,n=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,l=r+(r<.5?r:1-r)*n,a=2*r-l;return new un(mh(e>=240?e-240:e+120,a,l),mh(e,a,l),mh(e<120?e+240:e-120,a,l),this.opacity)},clamp(){return new Pn(bv(this.h),Bu(this.s),Bu(this.l),sc(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(){const e=sc(this.opacity);return`${e===1?"hsl(":"hsla("}${bv(this.h)}, ${Bu(this.s)*100}%, ${Bu(this.l)*100}%${e===1?")":`, ${e})`}`}}));function bv(e){return e=(e||0)%360,e<0?e+360:e}function Bu(e){return Math.max(0,Math.min(1,e||0))}function mh(e,n,r){return(e<60?n+(r-n)*e/60:e<180?r:e<240?n+(r-n)*(240-e)/60:n)*255}const _m=e=>()=>e;function hT(e,n){return function(r){return e+r*n}}function pT(e,n,r){return e=Math.pow(e,r),n=Math.pow(n,r)-e,r=1/r,function(l){return Math.pow(e+l*n,r)}}function mT(e){return(e=+e)==1?nS:function(n,r){return r-n?pT(n,r,e):_m(isNaN(n)?r:n)}}function nS(e,n){var r=n-e;return r?hT(e,r):_m(isNaN(e)?n:e)}const uc=(function e(n){var r=mT(n);function l(a,o){var u=r((a=$p(a)).r,(o=$p(o)).r),c=r(a.g,o.g),d=r(a.b,o.b),h=nS(a.opacity,o.opacity);return function(m){return a.r=u(m),a.g=c(m),a.b=d(m),a.opacity=h(m),a+""}}return l.gamma=e,l})(1);function gT(e,n){n||(n=[]);var r=e?Math.min(n.length,e.length):0,l=n.slice(),a;return function(o){for(a=0;a r&&(o=n.slice(r,o),c[u]?c[u]+=o:c[++u]=o),(l=l[0])===(a=a[0])?c[u]?c[u]+=a:c[++u]=a:(c[++u]=null,d.push({i:u,x:rr(l,a)})),r=gh.lastIndex;return r 180?m+=360:m-h>180&&(h+=360),x.push({i:p.push(a(p)+"rotate(",null,l)-2,x:rr(h,m)})):m&&p.push(a(p)+"rotate("+m+l)}function c(h,m,p,x){h!==m?x.push({i:p.push(a(p)+"skewX(",null,l)-2,x:rr(h,m)}):m&&p.push(a(p)+"skewX("+m+l)}function d(h,m,p,x,v,w){if(h!==p||m!==x){var E=v.push(a(v)+"scale(",null,",",null,")");w.push({i:E-4,x:rr(h,p)},{i:E-2,x:rr(m,x)})}else(p!==1||x!==1)&&v.push(a(v)+"scale("+p+","+x+")")}return function(h,m){var p=[],x=[];return h=e(h),m=e(m),o(h.translateX,h.translateY,m.translateX,m.translateY,p,x),u(h.rotate,m.rotate,p,x),c(h.skewX,m.skewX,p,x),d(h.scaleX,h.scaleY,m.scaleX,m.scaleY,p,x),h=m=null,function(v){for(var w=-1,E=x.length,_;++w =0&&e._call.call(void 0,n),e=e._next;--ca}function _v(){Wi=(fc=Uo.now())+Ac,ca=Co=0;try{zT()}finally{ca=0,DT(),Wi=0}}function MT(){var e=Uo.now(),n=e-fc;n>aS&&(Ac-=n,fc=e)}function DT(){for(var e,n=cc,r,l=1/0;n;)n._call?(l>n._time&&(l=n._time),e=n,n=n._next):(r=n._next,n._next=null,n=e?e._next=r:cc=r);To=e,Yp(l)}function Yp(e){if(!ca){Co&&(Co=clearTimeout(Co));var n=e-Wi;n>24?(e<1/0&&(Co=setTimeout(_v,e-Uo.now()-Ac)),yo&&(yo=clearInterval(yo))):(yo||(fc=Uo.now(),yo=setInterval(MT,aS)),ca=1,oS(_v))}}function kv(e,n,r){var l=new dc;return n=n==null?0:+n,l.restart(a=>{l.stop(),e(a+n)},n,r),l}var RT=Cc("start","end","cancel","interrupt"),OT=[],uS=0,Ev=1,Xp=2,Wu=3,Nv=4,Qp=5,ec=6;function jc(e,n,r,l,a,o){var u=e.__transition;if(!u)e.__transition={};else if(r in u)return;LT(e,r,{name:n,index:l,group:a,on:RT,tween:OT,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:uS})}function Em(e,n){var r=Qn(e,n);if(r.state>uS)throw new Error("too late; already scheduled");return r}function ar(e,n){var r=Qn(e,n);if(r.state>Wu)throw new Error("too late; already running");return r}function Qn(e,n){var r=e.__transition;if(!r||!(r=r[n]))throw new Error("transition not found");return r}function LT(e,n,r){var l=e.__transition,a;l[n]=r,r.timer=sS(o,0,r.time);function o(h){r.state=Ev,r.timer.restart(u,r.delay,r.time),r.delay<=h&&u(h-r.delay)}function u(h){var m,p,x,v;if(r.state!==Ev)return d();for(m in l)if(v=l[m],v.name===r.name){if(v.state===Wu)return kv(u);v.state===Nv?(v.state=ec,v.timer.stop(),v.on.call("interrupt",e,e.__data__,v.index,v.group),delete l[m]):+m Xp&&l.state =0&&(n=n.slice(0,r)),!n||n==="start"})}function dA(e,n,r){var l,a,o=fA(n)?Em:ar;return function(){var u=o(this,e),c=u.on;c!==l&&(a=(l=c).copy()).on(n,r),u.on=a}}function hA(e,n){var r=this._id;return arguments.length<2?Qn(this.node(),r).on.on(e):this.each(dA(r,e,n))}function pA(e){return function(){var n=this.parentNode;for(var r in this.__transition)if(+r!==e)return;n&&n.removeChild(this)}}function mA(){return this.on("end.remove",pA(this._id))}function gA(e){var n=this._name,r=this._id;typeof e!="function"&&(e=bm(e));for(var l=this._groups,a=l.length,o=new Array(a),u=0;u()=>e;function UA(e,{sourceEvent:n,target:r,transform:l,dispatch:a}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},transform:{value:l,enumerable:!0,configurable:!0},_:{value:a}})}function zr(e,n,r){this.k=e,this.x=n,this.y=r}zr.prototype={constructor:zr,scale:function(e){return e===1?this:new zr(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new zr(this.k,this.x+this.k*e,this.y+this.k*n)},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 zc=new zr(1,0,0);hS.prototype=zr.prototype;function hS(e){for(;!e.__zoom;)if(!(e=e.parentNode))return zc;return e.__zoom}function xh(e){e.stopImmediatePropagation()}function vo(e){e.preventDefault(),e.stopImmediatePropagation()}function PA(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function VA(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.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 Cv(){return this.__zoom||zc}function $A(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function GA(){return navigator.maxTouchPoints||"ontouchstart"in this}function FA(e,n,r){var l=e.invertX(n[0][0])-r[0][0],a=e.invertX(n[1][0])-r[1][0],o=e.invertY(n[0][1])-r[0][1],u=e.invertY(n[1][1])-r[1][1];return e.translate(a>l?(l+a)/2:Math.min(0,l)||Math.max(0,a),u>o?(o+u)/2:Math.min(0,o)||Math.max(0,u))}function pS(){var e=PA,n=VA,r=FA,l=$A,a=GA,o=[0,1/0],u=[[-1/0,-1/0],[1/0,1/0]],c=250,d=Ju,h=Cc("start","zoom","end"),m,p,x,v=500,w=150,E=0,_=10;function S(B){B.property("__zoom",Cv).on("wheel.zoom",R,{passive:!1}).on("mousedown.zoom",P).on("dblclick.zoom",O).filter(a).on("touchstart.zoom",H).on("touchmove.zoom",U).on("touchend.zoom touchcancel.zoom",ee).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}S.transform=function(B,F,z,G){var Q=B.selection?B.selection():B;Q.property("__zoom",Cv),B!==Q?q(B,F,z,G):Q.interrupt().each(function(){j(this,arguments).event(G).start().zoom(null,typeof F=="function"?F.apply(this,arguments):F).end()})},S.scaleBy=function(B,F,z,G){S.scaleTo(B,function(){var Q=this.__zoom.k,K=typeof F=="function"?F.apply(this,arguments):F;return Q*K},z,G)},S.scaleTo=function(B,F,z,G){S.transform(B,function(){var Q=n.apply(this,arguments),K=this.__zoom,M=z==null?A(Q):typeof z=="function"?z.apply(this,arguments):z,I=K.invert(M),Y=typeof F=="function"?F.apply(this,arguments):F;return r(k(T(K,Y),M,I),Q,u)},z,G)},S.translateBy=function(B,F,z,G){S.transform(B,function(){return r(this.__zoom.translate(typeof F=="function"?F.apply(this,arguments):F,typeof z=="function"?z.apply(this,arguments):z),n.apply(this,arguments),u)},null,G)},S.translateTo=function(B,F,z,G,Q){S.transform(B,function(){var K=n.apply(this,arguments),M=this.__zoom,I=G==null?A(K):typeof G=="function"?G.apply(this,arguments):G;return r(zc.translate(I[0],I[1]).scale(M.k).translate(typeof F=="function"?-F.apply(this,arguments):-F,typeof z=="function"?-z.apply(this,arguments):-z),K,u)},G,Q)};function T(B,F){return F=Math.max(o[0],Math.min(o[1],F)),F===B.k?B:new zr(F,B.x,B.y)}function k(B,F,z){var G=F[0]-z[0]*B.k,Q=F[1]-z[1]*B.k;return G===B.x&&Q===B.y?B:new zr(B.k,G,Q)}function A(B){return[(+B[0][0]+ +B[1][0])/2,(+B[0][1]+ +B[1][1])/2]}function q(B,F,z,G){B.on("start.zoom",function(){j(this,arguments).event(G).start()}).on("interrupt.zoom end.zoom",function(){j(this,arguments).event(G).end()}).tween("zoom",function(){var Q=this,K=arguments,M=j(Q,K).event(G),I=n.apply(Q,K),Y=z==null?A(I):typeof z=="function"?z.apply(Q,K):z,N=Math.max(I[1][0]-I[0][0],I[1][1]-I[0][1]),$=Q.__zoom,X=typeof F=="function"?F.apply(Q,K):F,J=d($.invert(Y).concat(N/$.k),X.invert(Y).concat(N/X.k));return function(ne){if(ne===1)ne=X;else{var re=J(ne),se=N/re[2];ne=new zr(se,Y[0]-re[0]*se,Y[1]-re[1]*se)}M.zoom(null,ne)}})}function j(B,F,z){return!z&&B.__zooming||new L(B,F)}function L(B,F){this.that=B,this.args=F,this.active=0,this.sourceEvent=null,this.extent=n.apply(B,F),this.taps=0}L.prototype={event:function(B){return B&&(this.sourceEvent=B),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(B,F){return this.mouse&&B!=="mouse"&&(this.mouse[1]=F.invert(this.mouse[0])),this.touch0&&B!=="touch"&&(this.touch0[1]=F.invert(this.touch0[0])),this.touch1&&B!=="touch"&&(this.touch1[1]=F.invert(this.touch1[0])),this.that.__zoom=F,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(B){var F=wn(this.that).datum();h.call(B,this.that,new UA(B,{sourceEvent:this.sourceEvent,target:S,transform:this.that.__zoom,dispatch:h}),F)}};function R(B,...F){if(!e.apply(this,arguments))return;var z=j(this,F).event(B),G=this.__zoom,Q=Math.max(o[0],Math.min(o[1],G.k*Math.pow(2,l.apply(this,arguments)))),K=Un(B);if(z.wheel)(z.mouse[0][0]!==K[0]||z.mouse[0][1]!==K[1])&&(z.mouse[1]=G.invert(z.mouse[0]=K)),clearTimeout(z.wheel);else{if(G.k===Q)return;z.mouse=[K,G.invert(K)],tc(this),z.start()}vo(B),z.wheel=setTimeout(M,w),z.zoom("mouse",r(k(T(G,Q),z.mouse[0],z.mouse[1]),z.extent,u));function M(){z.wheel=null,z.end()}}function P(B,...F){if(x||!e.apply(this,arguments))return;var z=B.currentTarget,G=j(this,F,!0).event(B),Q=wn(B.view).on("mousemove.zoom",Y,!0).on("mouseup.zoom",N,!0),K=Un(B,z),M=B.clientX,I=B.clientY;Kw(B.view),xh(B),G.mouse=[K,this.__zoom.invert(K)],tc(this),G.start();function Y($){if(vo($),!G.moved){var X=$.clientX-M,J=$.clientY-I;G.moved=X*X+J*J>E}G.event($).zoom("mouse",r(k(G.that.__zoom,G.mouse[0]=Un($,z),G.mouse[1]),G.extent,u))}function N($){Q.on("mousemove.zoom mouseup.zoom",null),Jw($.view,G.moved),vo($),G.event($).end()}}function O(B,...F){if(e.apply(this,arguments)){var z=this.__zoom,G=Un(B.changedTouches?B.changedTouches[0]:B,this),Q=z.invert(G),K=z.k*(B.shiftKey?.5:2),M=r(k(T(z,K),G,Q),n.apply(this,F),u);vo(B),c>0?wn(this).transition().duration(c).call(q,M,G,B):wn(this).call(S.transform,M,G,B)}}function H(B,...F){if(e.apply(this,arguments)){var z=B.touches,G=z.length,Q=j(this,F,B.changedTouches.length===G).event(B),K,M,I,Y;for(xh(B),M=0;M "[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:n,sourceHandle:r,targetHandle:l})=>`Couldn't create edge for ${e} handle id: "${e==="source"?r:l}", edge id: ${n}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."},Po=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],mS=["Enter"," ","Escape"],gS={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:e,x:n,y:r})=>`Moved selected node ${e}. New position, x: ${n}, y: ${r}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var fa;(function(e){e.Strict="strict",e.Loose="loose"})(fa||(fa={}));var Zi;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(Zi||(Zi={}));var Vo;(function(e){e.Partial="partial",e.Full="full"})(Vo||(Vo={}));const xS={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var xi;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(xi||(xi={}));var hc;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(hc||(hc={}));var ve;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(ve||(ve={}));const Tv={[ve.Left]:ve.Right,[ve.Right]:ve.Left,[ve.Top]:ve.Bottom,[ve.Bottom]:ve.Top};function yS(e){return e===null?null:e?"valid":"invalid"}const vS=e=>"id"in e&&"source"in e&&"target"in e,YA=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),Cm=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),Wo=(e,n=[0,0])=>{const{width:r,height:l}=Or(e),a=e.origin??n,o=r*a[0],u=l*a[1];return{x:e.position.x-o,y:e.position.y-u}},XA=(e,n={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const r=e.reduce((l,a)=>{const o=typeof a=="string";let u=!n.nodeLookup&&!o?a:void 0;n.nodeLookup&&(u=o?n.nodeLookup.get(a):Cm(a)?a:n.nodeLookup.get(a.id));const c=u?pc(u,n.nodeOrigin):{x:0,y:0,x2:0,y2:0};return Mc(l,c)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return Dc(r)},es=(e,n={})=>{let r={x:1/0,y:1/0,x2:-1/0,y2:-1/0},l=!1;return e.forEach(a=>{(n.filter===void 0||n.filter(a))&&(r=Mc(r,pc(a)),l=!0)}),l?Dc(r):{x:0,y:0,width:0,height:0}},Tm=(e,n,[r,l,a]=[0,0,1],o=!1,u=!1)=>{const c={...ns(n,[r,l,a]),width:n.width/a,height:n.height/a},d=[];for(const h of e.values()){const{measured:m,selectable:p=!0,hidden:x=!1}=h;if(u&&!p||x)continue;const v=m.width??h.width??h.initialWidth??null,w=m.height??h.height??h.initialHeight??null,E=$o(c,ha(h)),_=(v??0)*(w??0),S=o&&E>0;(!h.internals.handleBounds||S||E>=_||h.dragging)&&d.push(h)}return d},QA=(e,n)=>{const r=new Set;return e.forEach(l=>{r.add(l.id)}),n.filter(l=>r.has(l.source)||r.has(l.target))};function ZA(e,n){const r=new Map,l=n!=null&&n.nodes?new Set(n.nodes.map(a=>a.id)):null;return e.forEach(a=>{a.measured.width&&a.measured.height&&((n==null?void 0:n.includeHiddenNodes)||!a.hidden)&&(!l||l.has(a.id))&&r.set(a.id,a)}),r}async function KA({nodes:e,width:n,height:r,panZoom:l,minZoom:a,maxZoom:o},u){if(e.size===0)return Promise.resolve(!0);const c=ZA(e,u),d=es(c),h=Am(d,n,r,(u==null?void 0:u.minZoom)??a,(u==null?void 0:u.maxZoom)??o,(u==null?void 0:u.padding)??.1);return await l.setViewport(h,{duration:u==null?void 0:u.duration,ease:u==null?void 0:u.ease,interpolate:u==null?void 0:u.interpolate}),Promise.resolve(!0)}function bS({nodeId:e,nextPosition:n,nodeLookup:r,nodeOrigin:l=[0,0],nodeExtent:a,onError:o}){const u=r.get(e),c=u.parentId?r.get(u.parentId):void 0,{x:d,y:h}=c?c.internals.positionAbsolute:{x:0,y:0},m=u.origin??l;let p=u.extent||a;if(u.extent==="parent"&&!u.expandParent)if(!c)o==null||o("005",lr.error005());else{const v=c.measured.width,w=c.measured.height;v&&w&&(p=[[d,h],[d+v,h+w]])}else c&&pa(u.extent)&&(p=[[u.extent[0][0]+d,u.extent[0][1]+h],[u.extent[1][0]+d,u.extent[1][1]+h]]);const x=pa(p)?el(n,p,u.measured):n;return(u.measured.width===void 0||u.measured.height===void 0)&&(o==null||o("015",lr.error015())),{position:{x:x.x-d+(u.measured.width??0)*m[0],y:x.y-h+(u.measured.height??0)*m[1]},positionAbsolute:x}}async function JA({nodesToRemove:e=[],edgesToRemove:n=[],nodes:r,edges:l,onBeforeDelete:a}){const o=new Set(e.map(x=>x.id)),u=[];for(const x of r){if(x.deletable===!1)continue;const v=o.has(x.id),w=!v&&x.parentId&&u.find(E=>E.id===x.parentId);(v||w)&&u.push(x)}const c=new Set(n.map(x=>x.id)),d=l.filter(x=>x.deletable!==!1),m=QA(u,d);for(const x of d)c.has(x.id)&&!m.find(w=>w.id===x.id)&&m.push(x);if(!a)return{edges:m,nodes:u};const p=await a({nodes:u,edges:m});return typeof p=="boolean"?p?{edges:m,nodes:u}:{edges:[],nodes:[]}:p}const da=(e,n=0,r=1)=>Math.min(Math.max(e,n),r),el=(e={x:0,y:0},n,r)=>({x:da(e.x,n[0][0],n[1][0]-((r==null?void 0:r.width)??0)),y:da(e.y,n[0][1],n[1][1]-((r==null?void 0:r.height)??0))});function wS(e,n,r){const{width:l,height:a}=Or(r),{x:o,y:u}=r.internals.positionAbsolute;return el(e,[[o,u],[o+l,u+a]],n)}const Av=(e,n,r)=>e r?-da(Math.abs(e-r),1,n)/n:0,SS=(e,n,r=15,l=40)=>{const a=Av(e.x,l,n.width-l)*r,o=Av(e.y,l,n.height-l)*r;return[a,o]},Mc=(e,n)=>({x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x2,n.x2),y2:Math.max(e.y2,n.y2)}),Zp=({x:e,y:n,width:r,height:l})=>({x:e,y:n,x2:e+r,y2:n+l}),Dc=({x:e,y:n,x2:r,y2:l})=>({x:e,y:n,width:r-e,height:l-n}),ha=(e,n=[0,0])=>{var a,o;const{x:r,y:l}=Cm(e)?e.internals.positionAbsolute:Wo(e,n);return{x:r,y:l,width:((a=e.measured)==null?void 0:a.width)??e.width??e.initialWidth??0,height:((o=e.measured)==null?void 0:o.height)??e.height??e.initialHeight??0}},pc=(e,n=[0,0])=>{var a,o;const{x:r,y:l}=Cm(e)?e.internals.positionAbsolute:Wo(e,n);return{x:r,y:l,x2:r+(((a=e.measured)==null?void 0:a.width)??e.width??e.initialWidth??0),y2:l+(((o=e.measured)==null?void 0:o.height)??e.height??e.initialHeight??0)}},_S=(e,n)=>Dc(Mc(Zp(e),Zp(n))),$o=(e,n)=>{const r=Math.max(0,Math.min(e.x+e.width,n.x+n.width)-Math.max(e.x,n.x)),l=Math.max(0,Math.min(e.y+e.height,n.y+n.height)-Math.max(e.y,n.y));return Math.ceil(r*l)},jv=e=>Vn(e.width)&&Vn(e.height)&&Vn(e.x)&&Vn(e.y),Vn=e=>!isNaN(e)&&isFinite(e),WA=(e,n)=>{},ts=(e,n=[1,1])=>({x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}),ns=({x:e,y:n},[r,l,a],o=!1,u=[1,1])=>{const c={x:(e-r)/a,y:(n-l)/a};return o?ts(c,u):c},mc=({x:e,y:n},[r,l,a])=>({x:e*a+r,y:n*a+l});function Ql(e,n){if(typeof e=="number")return Math.floor((n-n/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const r=parseFloat(e);if(!Number.isNaN(r))return Math.floor(r)}if(typeof e=="string"&&e.endsWith("%")){const r=parseFloat(e);if(!Number.isNaN(r))return Math.floor(n*r*.01)}return console.error(`[React Flow] The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function ej(e,n,r){if(typeof e=="string"||typeof e=="number"){const l=Ql(e,r),a=Ql(e,n);return{top:l,right:a,bottom:l,left:a,x:a*2,y:l*2}}if(typeof e=="object"){const l=Ql(e.top??e.y??0,r),a=Ql(e.bottom??e.y??0,r),o=Ql(e.left??e.x??0,n),u=Ql(e.right??e.x??0,n);return{top:l,right:u,bottom:a,left:o,x:o+u,y:l+a}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function tj(e,n,r,l,a,o){const{x:u,y:c}=mc(e,[n,r,l]),{x:d,y:h}=mc({x:e.x+e.width,y:e.y+e.height},[n,r,l]),m=a-d,p=o-h;return{left:Math.floor(u),top:Math.floor(c),right:Math.floor(m),bottom:Math.floor(p)}}const Am=(e,n,r,l,a,o)=>{const u=ej(o,n,r),c=(n-u.x)/e.width,d=(r-u.y)/e.height,h=Math.min(c,d),m=da(h,l,a),p=e.x+e.width/2,x=e.y+e.height/2,v=n/2-p*m,w=r/2-x*m,E=tj(e,v,w,m,n,r),_={left:Math.min(E.left-u.left,0),top:Math.min(E.top-u.top,0),right:Math.min(E.right-u.right,0),bottom:Math.min(E.bottom-u.bottom,0)};return{x:v-_.left+_.right,y:w-_.top+_.bottom,zoom:m}},Go=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function pa(e){return e!=null&&e!=="parent"}function Or(e){var n,r;return{width:((n=e.measured)==null?void 0:n.width)??e.width??e.initialWidth??0,height:((r=e.measured)==null?void 0:r.height)??e.height??e.initialHeight??0}}function kS(e){var n,r;return(((n=e.measured)==null?void 0:n.width)??e.width??e.initialWidth)!==void 0&&(((r=e.measured)==null?void 0:r.height)??e.height??e.initialHeight)!==void 0}function ES(e,n={width:0,height:0},r,l,a){const o={...e},u=l.get(r);if(u){const c=u.origin||a;o.x+=u.internals.positionAbsolute.x-(n.width??0)*c[0],o.y+=u.internals.positionAbsolute.y-(n.height??0)*c[1]}return o}function zv(e,n){if(e.size!==n.size)return!1;for(const r of e)if(!n.has(r))return!1;return!0}function nj(){let e,n;return{promise:new Promise((l,a)=>{e=l,n=a}),resolve:e,reject:n}}function rj(e){return{...gS,...e||{}}}function zo(e,{snapGrid:n=[0,0],snapToGrid:r=!1,transform:l,containerBounds:a}){const{x:o,y:u}=$n(e),c=ns({x:o-((a==null?void 0:a.left)??0),y:u-((a==null?void 0:a.top)??0)},l),{x:d,y:h}=r?ts(c,n):c;return{xSnapped:d,ySnapped:h,...c}}const jm=e=>({width:e.offsetWidth,height:e.offsetHeight}),NS=e=>{var n;return((n=e==null?void 0:e.getRootNode)==null?void 0:n.call(e))||(window==null?void 0:window.document)},ij=["INPUT","SELECT","TEXTAREA"];function CS(e){var l,a;const n=((a=(l=e.composedPath)==null?void 0:l.call(e))==null?void 0:a[0])||e.target;return(n==null?void 0:n.nodeType)!==1?!1:ij.includes(n.nodeName)||n.hasAttribute("contenteditable")||!!n.closest(".nokey")}const TS=e=>"clientX"in e,$n=(e,n)=>{var o,u;const r=TS(e),l=r?e.clientX:(o=e.touches)==null?void 0:o[0].clientX,a=r?e.clientY:(u=e.touches)==null?void 0:u[0].clientY;return{x:l-((n==null?void 0:n.left)??0),y:a-((n==null?void 0:n.top)??0)}},Mv=(e,n,r,l,a)=>{const o=n.querySelectorAll(`.${e}`);return!o||!o.length?null:Array.from(o).map(u=>{const c=u.getBoundingClientRect();return{id:u.getAttribute("data-handleid"),type:e,nodeId:a,position:u.getAttribute("data-handlepos"),x:(c.left-r.left)/l,y:(c.top-r.top)/l,...jm(u)}})};function AS({sourceX:e,sourceY:n,targetX:r,targetY:l,sourceControlX:a,sourceControlY:o,targetControlX:u,targetControlY:c}){const d=e*.125+a*.375+u*.375+r*.125,h=n*.125+o*.375+c*.375+l*.125,m=Math.abs(d-e),p=Math.abs(h-n);return[d,h,m,p]}function Uu(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function Dv({pos:e,x1:n,y1:r,x2:l,y2:a,c:o}){switch(e){case ve.Left:return[n-Uu(n-l,o),r];case ve.Right:return[n+Uu(l-n,o),r];case ve.Top:return[n,r-Uu(r-a,o)];case ve.Bottom:return[n,r+Uu(a-r,o)]}}function zm({sourceX:e,sourceY:n,sourcePosition:r=ve.Bottom,targetX:l,targetY:a,targetPosition:o=ve.Top,curvature:u=.25}){const[c,d]=Dv({pos:r,x1:e,y1:n,x2:l,y2:a,c:u}),[h,m]=Dv({pos:o,x1:l,y1:a,x2:e,y2:n,c:u}),[p,x,v,w]=AS({sourceX:e,sourceY:n,targetX:l,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:h,targetControlY:m});return[`M${e},${n} C${c},${d} ${h},${m} ${l},${a}`,p,x,v,w]}function jS({sourceX:e,sourceY:n,targetX:r,targetY:l}){const a=Math.abs(r-e)/2,o=r 0}const oj=({source:e,sourceHandle:n,target:r,targetHandle:l})=>`xy-edge__${e}${n||""}-${r}${l||""}`,sj=(e,n)=>n.some(r=>r.source===e.source&&r.target===e.target&&(r.sourceHandle===e.sourceHandle||!r.sourceHandle&&!e.sourceHandle)&&(r.targetHandle===e.targetHandle||!r.targetHandle&&!e.targetHandle)),uj=(e,n,r={})=>{if(!e.source||!e.target)return n;const l=r.getEdgeId||oj;let a;return vS(e)?a={...e}:a={...e,id:l(e)},sj(a,n)?n:(a.sourceHandle===null&&delete a.sourceHandle,a.targetHandle===null&&delete a.targetHandle,n.concat(a))};function zS({sourceX:e,sourceY:n,targetX:r,targetY:l}){const[a,o,u,c]=jS({sourceX:e,sourceY:n,targetX:r,targetY:l});return[`M ${e},${n}L ${r},${l}`,a,o,u,c]}const Rv={[ve.Left]:{x:-1,y:0},[ve.Right]:{x:1,y:0},[ve.Top]:{x:0,y:-1},[ve.Bottom]:{x:0,y:1}},cj=({source:e,sourcePosition:n=ve.Bottom,target:r})=>n===ve.Left||n===ve.Right?e.x Math.sqrt(Math.pow(n.x-e.x,2)+Math.pow(n.y-e.y,2));function fj({source:e,sourcePosition:n=ve.Bottom,target:r,targetPosition:l=ve.Top,center:a,offset:o,stepPosition:u}){const c=Rv[n],d=Rv[l],h={x:e.x+c.x*o,y:e.y+c.y*o},m={x:r.x+d.x*o,y:r.y+d.y*o},p=cj({source:h,sourcePosition:n,target:m}),x=p.x!==0?"x":"y",v=p[x];let w=[],E,_;const S={x:0,y:0},T={x:0,y:0},[,,k,A]=jS({sourceX:e.x,sourceY:e.y,targetX:r.x,targetY:r.y});if(c[x]*d[x]===-1){x==="x"?(E=a.x??h.x+(m.x-h.x)*u,_=a.y??(h.y+m.y)/2):(E=a.x??(h.x+m.x)/2,_=a.y??h.y+(m.y-h.y)*u);const j=[{x:E,y:h.y},{x:E,y:m.y}],L=[{x:h.x,y:_},{x:m.x,y:_}];c[x]===v?w=x==="x"?j:L:w=x==="x"?L:j}else{const j=[{x:h.x,y:m.y}],L=[{x:m.x,y:h.y}];if(x==="x"?w=c.x===v?L:j:w=c.y===v?j:L,n===l){const U=Math.abs(e[x]-r[x]);if(U<=o){const ee=Math.min(o-1,o-U);c[x]===v?S[x]=(h[x]>e[x]?-1:1)*ee:T[x]=(m[x]>r[x]?-1:1)*ee}}if(n!==l){const U=x==="x"?"y":"x",ee=c[x]===d[U],B=h[U]>m[U],F=h[U] =H?(E=(R.x+P.x)/2,_=w[0].y):(E=w[0].x,_=(R.y+P.y)/2)}return[[e,{x:h.x+S.x,y:h.y+S.y},...w,{x:m.x+T.x,y:m.y+T.y},r],E,_,k,A]}function dj(e,n,r,l){const a=Math.min(Ov(e,n)/2,Ov(n,r)/2,l),{x:o,y:u}=n;if(e.x===o&&o===r.x||e.y===u&&u===r.y)return`L${o} ${u}`;if(e.y===u){const h=e.x {let A="";return k>0&&k r.id===n):e[0])||null}function Jp(e,n){return e?typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(l=>`${l}=${e[l]}`).join("&")}`:""}function pj(e,{id:n,defaultColor:r,defaultMarkerStart:l,defaultMarkerEnd:a}){const o=new Set;return e.reduce((u,c)=>([c.markerStart||l,c.markerEnd||a].forEach(d=>{if(d&&typeof d=="object"){const h=Jp(d,n);o.has(h)||(u.push({id:h,color:d.color||r,...d}),o.add(h))}}),u),[]).sort((u,c)=>u.id.localeCompare(c.id))}const MS=1e3,mj=10,Mm={nodeOrigin:[0,0],nodeExtent:Po,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},gj={...Mm,checkEquality:!0};function Dm(e,n){const r={...e};for(const l in n)n[l]!==void 0&&(r[l]=n[l]);return r}function xj(e,n,r){const l=Dm(Mm,r);for(const a of e.values())if(a.parentId)Om(a,e,n,l);else{const o=Wo(a,l.nodeOrigin),u=pa(a.extent)?a.extent:l.nodeExtent,c=el(o,u,Or(a));a.internals.positionAbsolute=c}}function yj(e,n){if(!e.handles)return e.measured?n==null?void 0:n.internals.handleBounds:void 0;const r=[],l=[];for(const a of e.handles){const o={id:a.id,width:a.width??1,height:a.height??1,nodeId:e.id,x:a.x,y:a.y,position:a.position,type:a.type};a.type==="source"?r.push(o):a.type==="target"&&l.push(o)}return{source:r,target:l}}function Rm(e){return e==="manual"}function Wp(e,n,r,l={}){var h,m;const a=Dm(gj,l),o={i:0},u=new Map(n),c=a!=null&&a.elevateNodesOnSelect&&!Rm(a.zIndexMode)?MS:0;let d=e.length>0;n.clear(),r.clear();for(const p of e){let x=u.get(p.id);if(a.checkEquality&&p===(x==null?void 0:x.internals.userNode))n.set(p.id,x);else{const v=Wo(p,a.nodeOrigin),w=pa(p.extent)?p.extent:a.nodeExtent,E=el(v,w,Or(p));x={...a.defaults,...p,measured:{width:(h=p.measured)==null?void 0:h.width,height:(m=p.measured)==null?void 0:m.height},internals:{positionAbsolute:E,handleBounds:yj(p,x),z:DS(p,c,a.zIndexMode),userNode:p}},n.set(p.id,x)}(x.measured===void 0||x.measured.width===void 0||x.measured.height===void 0)&&!x.hidden&&(d=!1),p.parentId&&Om(x,n,r,l,o)}return d}function vj(e,n){if(!e.parentId)return;const r=n.get(e.parentId);r?r.set(e.id,e):n.set(e.parentId,new Map([[e.id,e]]))}function Om(e,n,r,l,a){const{elevateNodesOnSelect:o,nodeOrigin:u,nodeExtent:c,zIndexMode:d}=Dm(Mm,l),h=e.parentId,m=n.get(h);if(!m){console.warn(`Parent node ${h} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}vj(e,r),a&&!m.parentId&&m.internals.rootParentIndex===void 0&&d==="auto"&&(m.internals.rootParentIndex=++a.i,m.internals.z=m.internals.z+a.i*mj),a&&m.internals.rootParentIndex!==void 0&&(a.i=m.internals.rootParentIndex);const p=o&&!Rm(d)?MS:0,{x,y:v,z:w}=bj(e,m,u,c,p,d),{positionAbsolute:E}=e.internals,_=x!==E.x||v!==E.y;(_||w!==e.internals.z)&&n.set(e.id,{...e,internals:{...e.internals,positionAbsolute:_?{x,y:v}:E,z:w}})}function DS(e,n,r){const l=Vn(e.zIndex)?e.zIndex:0;return Rm(r)?l:l+(e.selected?n:0)}function bj(e,n,r,l,a,o){const{x:u,y:c}=n.internals.positionAbsolute,d=Or(e),h=Wo(e,r),m=pa(e.extent)?el(h,e.extent,d):h;let p=el({x:u+m.x,y:c+m.y},l,d);e.extent==="parent"&&(p=wS(p,d,n));const x=DS(e,a,o),v=n.internals.z??0;return{x:p.x,y:p.y,z:v>=x?v+1:x}}function Lm(e,n,r,l=[0,0]){var u;const a=[],o=new Map;for(const c of e){const d=n.get(c.parentId);if(!d)continue;const h=((u=o.get(c.parentId))==null?void 0:u.expandedRect)??ha(d),m=_S(h,c.rect);o.set(c.parentId,{expandedRect:m,parent:d})}return o.size>0&&o.forEach(({expandedRect:c,parent:d},h)=>{var k;const m=d.internals.positionAbsolute,p=Or(d),x=d.origin??l,v=c.x 0||w>0||S||T)&&(a.push({id:h,type:"position",position:{x:d.position.x-v+S,y:d.position.y-w+T}}),(k=r.get(h))==null||k.forEach(A=>{e.some(q=>q.id===A.id)||a.push({id:A.id,type:"position",position:{x:A.position.x+v,y:A.position.y+w}})})),(p.width 0){const v=Lm(x,n,r,a);h.push(...v)}return{changes:h,updatedInternals:d}}async function Sj({delta:e,panZoom:n,transform:r,translateExtent:l,width:a,height:o}){if(!n||!e.x&&!e.y)return Promise.resolve(!1);const u=await n.setViewportConstrained({x:r[0]+e.x,y:r[1]+e.y,zoom:r[2]},[[0,0],[a,o]],l),c=!!u&&(u.x!==r[0]||u.y!==r[1]||u.k!==r[2]);return Promise.resolve(c)}function Iv(e,n,r,l,a,o){let u=a;const c=l.get(u)||new Map;l.set(u,c.set(r,n)),u=`${a}-${e}`;const d=l.get(u)||new Map;if(l.set(u,d.set(r,n)),o){u=`${a}-${e}-${o}`;const h=l.get(u)||new Map;l.set(u,h.set(r,n))}}function RS(e,n,r){e.clear(),n.clear();for(const l of r){const{source:a,target:o,sourceHandle:u=null,targetHandle:c=null}=l,d={edgeId:l.id,source:a,target:o,sourceHandle:u,targetHandle:c},h=`${a}-${u}--${o}-${c}`,m=`${o}-${c}--${a}-${u}`;Iv("source",d,m,e,a,u),Iv("target",d,h,e,o,c),n.set(l.id,l)}}function OS(e,n){if(!e.parentId)return!1;const r=n.get(e.parentId);return r?r.selected?!0:OS(r,n):!1}function qv(e,n,r){var a;let l=e;do{if((a=l==null?void 0:l.matches)!=null&&a.call(l,n))return!0;if(l===r)return!1;l=l==null?void 0:l.parentElement}while(l);return!1}function _j(e,n,r,l){const a=new Map;for(const[o,u]of e)if((u.selected||u.id===l)&&(!u.parentId||!OS(u,e))&&(u.draggable||n&&typeof u.draggable>"u")){const c=e.get(o);c&&a.set(o,{id:o,position:c.position||{x:0,y:0},distance:{x:r.x-c.internals.positionAbsolute.x,y:r.y-c.internals.positionAbsolute.y},extent:c.extent,parentId:c.parentId,origin:c.origin,expandParent:c.expandParent,internals:{positionAbsolute:c.internals.positionAbsolute||{x:0,y:0}},measured:{width:c.measured.width??0,height:c.measured.height??0}})}return a}function yh({nodeId:e,dragItems:n,nodeLookup:r,dragging:l=!0}){var u,c,d;const a=[];for(const[h,m]of n){const p=(u=r.get(h))==null?void 0:u.internals.userNode;p&&a.push({...p,position:m.position,dragging:l})}if(!e)return[a[0],a];const o=(c=r.get(e))==null?void 0:c.internals.userNode;return[o?{...o,position:((d=n.get(e))==null?void 0:d.position)||o.position,dragging:l}:a[0],a]}function kj({dragItems:e,snapGrid:n,x:r,y:l}){const a=e.values().next().value;if(!a)return null;const o={x:r-a.distance.x,y:l-a.distance.y},u=ts(o,n);return{x:u.x-o.x,y:u.y-o.y}}function Ej({onNodeMouseDown:e,getStoreItems:n,onDragStart:r,onDrag:l,onDragStop:a}){let o={x:null,y:null},u=0,c=new Map,d=!1,h={x:0,y:0},m=null,p=!1,x=null,v=!1,w=!1,E=null;function _({noDragClassName:T,handleSelector:k,domNode:A,isSelectable:q,nodeId:j,nodeClickDistance:L=0}){x=wn(A);function R({x:U,y:ee}){const{nodeLookup:B,nodeExtent:F,snapGrid:z,snapToGrid:G,nodeOrigin:Q,onNodeDrag:K,onSelectionDrag:M,onError:I,updateNodePositions:Y}=n();o={x:U,y:ee};let N=!1;const $=c.size>1,X=$&&F?Zp(es(c)):null,J=$&&G?kj({dragItems:c,snapGrid:z,x:U,y:ee}):null;for(const[ne,re]of c){if(!B.has(ne))continue;let se={x:U-re.distance.x,y:ee-re.distance.y};G&&(se=J?{x:Math.round(se.x+J.x),y:Math.round(se.y+J.y)}:ts(se,z));let xe=null;if($&&F&&!re.extent&&X){const{positionAbsolute:pe}=re.internals,_e=pe.x-X.x+F[0][0],ze=pe.x+re.measured.width-X.x2+F[1][0],Te=pe.y-X.y+F[0][1],ut=pe.y+re.measured.height-X.y2+F[1][1];xe=[[_e,Te],[ze,ut]]}const{position:be,positionAbsolute:ye}=bS({nodeId:ne,nextPosition:se,nodeLookup:B,nodeExtent:xe||F,nodeOrigin:Q,onError:I});N=N||re.position.x!==be.x||re.position.y!==be.y,re.position=be,re.internals.positionAbsolute=ye}if(w=w||N,!!N&&(Y(c,!0),E&&(l||K||!j&&M))){const[ne,re]=yh({nodeId:j,dragItems:c,nodeLookup:B});l==null||l(E,c,ne,re),K==null||K(E,ne,re),j||M==null||M(E,re)}}async function P(){if(!m)return;const{transform:U,panBy:ee,autoPanSpeed:B,autoPanOnNodeDrag:F}=n();if(!F){d=!1,cancelAnimationFrame(u);return}const[z,G]=SS(h,m,B);(z!==0||G!==0)&&(o.x=(o.x??0)-z/U[2],o.y=(o.y??0)-G/U[2],await ee({x:z,y:G})&&R(o)),u=requestAnimationFrame(P)}function O(U){var $;const{nodeLookup:ee,multiSelectionActive:B,nodesDraggable:F,transform:z,snapGrid:G,snapToGrid:Q,selectNodesOnDrag:K,onNodeDragStart:M,onSelectionDragStart:I,unselectNodesAndEdges:Y}=n();p=!0,(!K||!q)&&!B&&j&&(($=ee.get(j))!=null&&$.selected||Y()),q&&K&&j&&(e==null||e(j));const N=zo(U.sourceEvent,{transform:z,snapGrid:G,snapToGrid:Q,containerBounds:m});if(o=N,c=_j(ee,F,N,j),c.size>0&&(r||M||!j&&I)){const[X,J]=yh({nodeId:j,dragItems:c,nodeLookup:ee});r==null||r(U.sourceEvent,c,X,J),M==null||M(U.sourceEvent,X,J),j||I==null||I(U.sourceEvent,J)}}const H=Ww().clickDistance(L).on("start",U=>{const{domNode:ee,nodeDragThreshold:B,transform:F,snapGrid:z,snapToGrid:G}=n();m=(ee==null?void 0:ee.getBoundingClientRect())||null,v=!1,w=!1,E=U.sourceEvent,B===0&&O(U),o=zo(U.sourceEvent,{transform:F,snapGrid:z,snapToGrid:G,containerBounds:m}),h=$n(U.sourceEvent,m)}).on("drag",U=>{const{autoPanOnNodeDrag:ee,transform:B,snapGrid:F,snapToGrid:z,nodeDragThreshold:G,nodeLookup:Q}=n(),K=zo(U.sourceEvent,{transform:B,snapGrid:F,snapToGrid:z,containerBounds:m});if(E=U.sourceEvent,(U.sourceEvent.type==="touchmove"&&U.sourceEvent.touches.length>1||j&&!Q.has(j))&&(v=!0),!v){if(!d&&ee&&p&&(d=!0,P()),!p){const M=$n(U.sourceEvent,m),I=M.x-h.x,Y=M.y-h.y;Math.sqrt(I*I+Y*Y)>G&&O(U)}(o.x!==K.xSnapped||o.y!==K.ySnapped)&&c&&p&&(h=$n(U.sourceEvent,m),R(K))}}).on("end",U=>{if(!(!p||v)&&(d=!1,p=!1,cancelAnimationFrame(u),c.size>0)){const{nodeLookup:ee,updateNodePositions:B,onNodeDragStop:F,onSelectionDragStop:z}=n();if(w&&(B(c,!1),w=!1),a||F||!j&&z){const[G,Q]=yh({nodeId:j,dragItems:c,nodeLookup:ee,dragging:!1});a==null||a(U.sourceEvent,c,G,Q),F==null||F(U.sourceEvent,G,Q),j||z==null||z(U.sourceEvent,Q)}}}).filter(U=>{const ee=U.target;return!U.button&&(!T||!qv(ee,`.${T}`,A))&&(!k||qv(ee,k,A))});x.call(H)}function S(){x==null||x.on(".drag",null)}return{update:_,destroy:S}}function Nj(e,n,r){const l=[],a={x:e.x-r,y:e.y-r,width:r*2,height:r*2};for(const o of n.values())$o(a,ha(o))>0&&l.push(o);return l}const Cj=250;function Tj(e,n,r,l){var c,d;let a=[],o=1/0;const u=Nj(e,r,n+Cj);for(const h of u){const m=[...((c=h.internals.handleBounds)==null?void 0:c.source)??[],...((d=h.internals.handleBounds)==null?void 0:d.target)??[]];for(const p of m){if(l.nodeId===p.nodeId&&l.type===p.type&&l.id===p.id)continue;const{x,y:v}=tl(h,p,p.position,!0),w=Math.sqrt(Math.pow(x-e.x,2)+Math.pow(v-e.y,2));w>n||(w 1){const h=l.type==="source"?"target":"source";return a.find(m=>m.type===h)??a[0]}return a[0]}function LS(e,n,r,l,a,o=!1){var h,m,p;const u=l.get(e);if(!u)return null;const c=a==="strict"?(h=u.internals.handleBounds)==null?void 0:h[n]:[...((m=u.internals.handleBounds)==null?void 0:m.source)??[],...((p=u.internals.handleBounds)==null?void 0:p.target)??[]],d=(r?c==null?void 0:c.find(x=>x.id===r):c==null?void 0:c[0])??null;return d&&o?{...d,...tl(u,d,d.position,!0)}:d}function HS(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function Aj(e,n){let r=null;return n?r=!0:e&&!n&&(r=!1),r}const BS=()=>!0;function jj(e,{connectionMode:n,connectionRadius:r,handleId:l,nodeId:a,edgeUpdaterType:o,isTarget:u,domNode:c,nodeLookup:d,lib:h,autoPanOnConnect:m,flowId:p,panBy:x,cancelConnection:v,onConnectStart:w,onConnect:E,onConnectEnd:_,isValidConnection:S=BS,onReconnectEnd:T,updateConnection:k,getTransform:A,getFromHandle:q,autoPanSpeed:j,dragThreshold:L=1,handleDomNode:R}){const P=NS(e.target);let O=0,H;const{x:U,y:ee}=$n(e),B=HS(o,R),F=c==null?void 0:c.getBoundingClientRect();let z=!1;if(!F||!B)return;const G=LS(a,B,l,d,n);if(!G)return;let Q=$n(e,F),K=!1,M=null,I=!1,Y=null;function N(){if(!m||!F)return;const[be,ye]=SS(Q,F,j);x({x:be,y:ye}),O=requestAnimationFrame(N)}const $={...G,nodeId:a,type:B,position:G.position},X=d.get(a);let ne={inProgress:!0,isValid:null,from:tl(X,$,ve.Left,!0),fromHandle:$,fromPosition:$.position,fromNode:X,to:Q,toHandle:null,toPosition:Tv[$.position],toNode:null,pointer:Q};function re(){z=!0,k(ne),w==null||w(e,{nodeId:a,handleId:l,handleType:B})}L===0&&re();function se(be){if(!z){const{x:ut,y:nt}=$n(be),zt=ut-U,Vt=nt-ee;if(!(zt*zt+Vt*Vt>L*L))return;re()}if(!q()||!$){xe(be);return}const ye=A();Q=$n(be,F),H=Tj(ns(Q,ye,!1,[1,1]),r,d,$),K||(N(),K=!0);const pe=IS(be,{handle:H,connectionMode:n,fromNodeId:a,fromHandleId:l,fromType:u?"target":"source",isValidConnection:S,doc:P,lib:h,flowId:p,nodeLookup:d});Y=pe.handleDomNode,M=pe.connection,I=Aj(!!H,pe.isValid);const _e=d.get(a),ze=_e?tl(_e,$,ve.Left,!0):ne.from,Te={...ne,from:ze,isValid:I,to:pe.toHandle&&I?mc({x:pe.toHandle.x,y:pe.toHandle.y},ye):Q,toHandle:pe.toHandle,toPosition:I&&pe.toHandle?pe.toHandle.position:Tv[$.position],toNode:pe.toHandle?d.get(pe.toHandle.nodeId):null,pointer:Q};k(Te),ne=Te}function xe(be){if(!("touches"in be&&be.touches.length>0)){if(z){(H||Y)&&M&&I&&(E==null||E(M));const{inProgress:ye,...pe}=ne,_e={...pe,toPosition:ne.toHandle?ne.toPosition:null};_==null||_(be,_e),o&&(T==null||T(be,_e))}v(),cancelAnimationFrame(O),K=!1,I=!1,M=null,Y=null,P.removeEventListener("mousemove",se),P.removeEventListener("mouseup",xe),P.removeEventListener("touchmove",se),P.removeEventListener("touchend",xe)}}P.addEventListener("mousemove",se),P.addEventListener("mouseup",xe),P.addEventListener("touchmove",se),P.addEventListener("touchend",xe)}function IS(e,{handle:n,connectionMode:r,fromNodeId:l,fromHandleId:a,fromType:o,doc:u,lib:c,flowId:d,isValidConnection:h=BS,nodeLookup:m}){const p=o==="target",x=n?u.querySelector(`.${c}-flow__handle[data-id="${d}-${n==null?void 0:n.nodeId}-${n==null?void 0:n.id}-${n==null?void 0:n.type}"]`):null,{x:v,y:w}=$n(e),E=u.elementFromPoint(v,w),_=E!=null&&E.classList.contains(`${c}-flow__handle`)?E:x,S={handleDomNode:_,isValid:!1,connection:null,toHandle:null};if(_){const T=HS(void 0,_),k=_.getAttribute("data-nodeid"),A=_.getAttribute("data-handleid"),q=_.classList.contains("connectable"),j=_.classList.contains("connectableend");if(!k||!T)return S;const L={source:p?k:l,sourceHandle:p?A:a,target:p?l:k,targetHandle:p?a:A};S.connection=L;const P=q&&j&&(r===fa.Strict?p&&T==="source"||!p&&T==="target":k!==l||A!==a);S.isValid=P&&h(L),S.toHandle=LS(k,T,A,m,r,!0)}return S}const em={onPointerDown:jj,isValid:IS};function zj({domNode:e,panZoom:n,getTransform:r,getViewScale:l}){const a=wn(e);function o({translateExtent:c,width:d,height:h,zoomStep:m=1,pannable:p=!0,zoomable:x=!0,inversePan:v=!1}){const w=k=>{if(k.sourceEvent.type!=="wheel"||!n)return;const A=r(),q=k.sourceEvent.ctrlKey&&Go()?10:1,j=-k.sourceEvent.deltaY*(k.sourceEvent.deltaMode===1?.05:k.sourceEvent.deltaMode?1:.002)*m,L=A[2]*Math.pow(2,j*q);n.scaleTo(L)};let E=[0,0];const _=k=>{(k.sourceEvent.type==="mousedown"||k.sourceEvent.type==="touchstart")&&(E=[k.sourceEvent.clientX??k.sourceEvent.touches[0].clientX,k.sourceEvent.clientY??k.sourceEvent.touches[0].clientY])},S=k=>{const A=r();if(k.sourceEvent.type!=="mousemove"&&k.sourceEvent.type!=="touchmove"||!n)return;const q=[k.sourceEvent.clientX??k.sourceEvent.touches[0].clientX,k.sourceEvent.clientY??k.sourceEvent.touches[0].clientY],j=[q[0]-E[0],q[1]-E[1]];E=q;const L=l()*Math.max(A[2],Math.log(A[2]))*(v?-1:1),R={x:A[0]-j[0]*L,y:A[1]-j[1]*L},P=[[0,0],[d,h]];n.setViewportConstrained({x:R.x,y:R.y,zoom:A[2]},P,c)},T=pS().on("start",_).on("zoom",p?S:null).on("zoom.wheel",x?w:null);a.call(T,{})}function u(){a.on("zoom",null)}return{update:o,destroy:u,pointer:Un}}const Rc=e=>({x:e.x,y:e.y,zoom:e.k}),vh=({x:e,y:n,zoom:r})=>zc.translate(e,n).scale(r),na=(e,n)=>e.target.closest(`.${n}`),qS=(e,n)=>n===2&&Array.isArray(e)&&e.includes(2),Mj=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,bh=(e,n=0,r=Mj,l=()=>{})=>{const a=typeof n=="number"&&n>0;return a||l(),a?e.transition().duration(n).ease(r).on("end",l):e},US=e=>{const n=e.ctrlKey&&Go()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*n};function Dj({zoomPanValues:e,noWheelClassName:n,d3Selection:r,d3Zoom:l,panOnScrollMode:a,panOnScrollSpeed:o,zoomOnPinch:u,onPanZoomStart:c,onPanZoom:d,onPanZoomEnd:h}){return m=>{if(na(m,n))return m.ctrlKey&&m.preventDefault(),!1;m.preventDefault(),m.stopImmediatePropagation();const p=r.property("__zoom").k||1;if(m.ctrlKey&&u){const _=Un(m),S=US(m),T=p*Math.pow(2,S);l.scaleTo(r,T,_,m);return}const x=m.deltaMode===1?20:1;let v=a===Zi.Vertical?0:m.deltaX*x,w=a===Zi.Horizontal?0:m.deltaY*x;!Go()&&m.shiftKey&&a!==Zi.Vertical&&(v=m.deltaY*x,w=0),l.translateBy(r,-(v/p)*o,-(w/p)*o,{internal:!0});const E=Rc(r.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(d==null||d(m,E),e.panScrollTimeout=setTimeout(()=>{h==null||h(m,E),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,c==null||c(m,E))}}function Rj({noWheelClassName:e,preventScrolling:n,d3ZoomHandler:r}){return function(l,a){const o=l.type==="wheel",u=!n&&o&&!l.ctrlKey,c=na(l,e);if(l.ctrlKey&&o&&c&&l.preventDefault(),u||c)return null;l.preventDefault(),r.call(this,l,a)}}function Oj({zoomPanValues:e,onDraggingChange:n,onPanZoomStart:r}){return l=>{var o,u,c;if((o=l.sourceEvent)!=null&&o.internal)return;const a=Rc(l.transform);e.mouseButton=((u=l.sourceEvent)==null?void 0:u.button)||0,e.isZoomingOrPanning=!0,e.prevViewport=a,((c=l.sourceEvent)==null?void 0:c.type)==="mousedown"&&n(!0),r&&(r==null||r(l.sourceEvent,a))}}function Lj({zoomPanValues:e,panOnDrag:n,onPaneContextMenu:r,onTransformChange:l,onPanZoom:a}){return o=>{var u,c;e.usedRightMouseButton=!!(r&&qS(n,e.mouseButton??0)),(u=o.sourceEvent)!=null&&u.sync||l([o.transform.x,o.transform.y,o.transform.k]),a&&!((c=o.sourceEvent)!=null&&c.internal)&&(a==null||a(o.sourceEvent,Rc(o.transform)))}}function Hj({zoomPanValues:e,panOnDrag:n,panOnScroll:r,onDraggingChange:l,onPanZoomEnd:a,onPaneContextMenu:o}){return u=>{var c;if(!((c=u.sourceEvent)!=null&&c.internal)&&(e.isZoomingOrPanning=!1,o&&qS(n,e.mouseButton??0)&&!e.usedRightMouseButton&&u.sourceEvent&&o(u.sourceEvent),e.usedRightMouseButton=!1,l(!1),a)){const d=Rc(u.transform);e.prevViewport=d,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{a==null||a(u.sourceEvent,d)},r?150:0)}}}function Bj({zoomActivationKeyPressed:e,zoomOnScroll:n,zoomOnPinch:r,panOnDrag:l,panOnScroll:a,zoomOnDoubleClick:o,userSelectionActive:u,noWheelClassName:c,noPanClassName:d,lib:h,connectionInProgress:m}){return p=>{var _;const x=e||n,v=r&&p.ctrlKey,w=p.type==="wheel";if(p.button===1&&p.type==="mousedown"&&(na(p,`${h}-flow__node`)||na(p,`${h}-flow__edge`)))return!0;if(!l&&!x&&!a&&!o&&!r||u||m&&!w||na(p,c)&&w||na(p,d)&&(!w||a&&w&&!e)||!r&&p.ctrlKey&&w)return!1;if(!r&&p.type==="touchstart"&&((_=p.touches)==null?void 0:_.length)>1)return p.preventDefault(),!1;if(!x&&!a&&!v&&w||!l&&(p.type==="mousedown"||p.type==="touchstart")||Array.isArray(l)&&!l.includes(p.button)&&p.type==="mousedown")return!1;const E=Array.isArray(l)&&l.includes(p.button)||!p.button||p.button<=1;return(!p.ctrlKey||w)&&E}}function Ij({domNode:e,minZoom:n,maxZoom:r,translateExtent:l,viewport:a,onPanZoom:o,onPanZoomStart:u,onPanZoomEnd:c,onDraggingChange:d}){const h={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},m=e.getBoundingClientRect(),p=pS().scaleExtent([n,r]).translateExtent(l),x=wn(e).call(p);T({x:a.x,y:a.y,zoom:da(a.zoom,n,r)},[[0,0],[m.width,m.height]],l);const v=x.on("wheel.zoom"),w=x.on("dblclick.zoom");p.wheelDelta(US);function E(H,U){return x?new Promise(ee=>{p==null||p.interpolate((U==null?void 0:U.interpolate)==="linear"?jo:Ju).transform(bh(x,U==null?void 0:U.duration,U==null?void 0:U.ease,()=>ee(!0)),H)}):Promise.resolve(!1)}function _({noWheelClassName:H,noPanClassName:U,onPaneContextMenu:ee,userSelectionActive:B,panOnScroll:F,panOnDrag:z,panOnScrollMode:G,panOnScrollSpeed:Q,preventScrolling:K,zoomOnPinch:M,zoomOnScroll:I,zoomOnDoubleClick:Y,zoomActivationKeyPressed:N,lib:$,onTransformChange:X,connectionInProgress:J,paneClickDistance:ne,selectionOnDrag:re}){B&&!h.isZoomingOrPanning&&S();const se=F&&!N&&!B;p.clickDistance(re?1/0:!Vn(ne)||ne<0?0:ne);const xe=se?Dj({zoomPanValues:h,noWheelClassName:H,d3Selection:x,d3Zoom:p,panOnScrollMode:G,panOnScrollSpeed:Q,zoomOnPinch:M,onPanZoomStart:u,onPanZoom:o,onPanZoomEnd:c}):Rj({noWheelClassName:H,preventScrolling:K,d3ZoomHandler:v});if(x.on("wheel.zoom",xe,{passive:!1}),!B){const ye=Oj({zoomPanValues:h,onDraggingChange:d,onPanZoomStart:u});p.on("start",ye);const pe=Lj({zoomPanValues:h,panOnDrag:z,onPaneContextMenu:!!ee,onPanZoom:o,onTransformChange:X});p.on("zoom",pe);const _e=Hj({zoomPanValues:h,panOnDrag:z,panOnScroll:F,onPaneContextMenu:ee,onPanZoomEnd:c,onDraggingChange:d});p.on("end",_e)}const be=Bj({zoomActivationKeyPressed:N,panOnDrag:z,zoomOnScroll:I,panOnScroll:F,zoomOnDoubleClick:Y,zoomOnPinch:M,userSelectionActive:B,noPanClassName:U,noWheelClassName:H,lib:$,connectionInProgress:J});p.filter(be),Y?x.on("dblclick.zoom",w):x.on("dblclick.zoom",null)}function S(){p.on("zoom",null)}async function T(H,U,ee){const B=vh(H),F=p==null?void 0:p.constrain()(B,U,ee);return F&&await E(F),new Promise(z=>z(F))}async function k(H,U){const ee=vh(H);return await E(ee,U),new Promise(B=>B(ee))}function A(H){if(x){const U=vh(H),ee=x.property("__zoom");(ee.k!==H.zoom||ee.x!==H.x||ee.y!==H.y)&&(p==null||p.transform(x,U,null,{sync:!0}))}}function q(){const H=x?hS(x.node()):{x:0,y:0,k:1};return{x:H.x,y:H.y,zoom:H.k}}function j(H,U){return x?new Promise(ee=>{p==null||p.interpolate((U==null?void 0:U.interpolate)==="linear"?jo:Ju).scaleTo(bh(x,U==null?void 0:U.duration,U==null?void 0:U.ease,()=>ee(!0)),H)}):Promise.resolve(!1)}function L(H,U){return x?new Promise(ee=>{p==null||p.interpolate((U==null?void 0:U.interpolate)==="linear"?jo:Ju).scaleBy(bh(x,U==null?void 0:U.duration,U==null?void 0:U.ease,()=>ee(!0)),H)}):Promise.resolve(!1)}function R(H){p==null||p.scaleExtent(H)}function P(H){p==null||p.translateExtent(H)}function O(H){const U=!Vn(H)||H<0?0:H;p==null||p.clickDistance(U)}return{update:_,destroy:S,setViewport:k,setViewportConstrained:T,getViewport:q,scaleTo:j,scaleBy:L,setScaleExtent:R,setTranslateExtent:P,syncViewport:A,setClickDistance:O}}var ma;(function(e){e.Line="line",e.Handle="handle"})(ma||(ma={}));function qj({width:e,prevWidth:n,height:r,prevHeight:l,affectsX:a,affectsY:o}){const u=e-n,c=r-l,d=[u>0?1:u<0?-1:0,c>0?1:c<0?-1:0];return u&&a&&(d[0]=d[0]*-1),c&&o&&(d[1]=d[1]*-1),d}function Uv(e){const n=e.includes("right")||e.includes("left"),r=e.includes("bottom")||e.includes("top"),l=e.includes("left"),a=e.includes("top");return{isHorizontal:n,isVertical:r,affectsX:l,affectsY:a}}function hi(e,n){return Math.max(0,n-e)}function pi(e,n){return Math.max(0,e-n)}function Pu(e,n,r){return Math.max(0,n-e,e-r)}function Pv(e,n){return e?!n:n}function Uj(e,n,r,l,a,o,u,c){let{affectsX:d,affectsY:h}=n;const{isHorizontal:m,isVertical:p}=n,x=m&&p,{xSnapped:v,ySnapped:w}=r,{minWidth:E,maxWidth:_,minHeight:S,maxHeight:T}=l,{x:k,y:A,width:q,height:j,aspectRatio:L}=e;let R=Math.floor(m?v-e.pointerX:0),P=Math.floor(p?w-e.pointerY:0);const O=q+(d?-R:R),H=j+(h?-P:P),U=-o[0]*q,ee=-o[1]*j;let B=Pu(O,E,_),F=Pu(H,S,T);if(u){let Q=0,K=0;d&&R<0?Q=hi(k+R+U,u[0][0]):!d&&R>0&&(Q=pi(k+O+U,u[1][0])),h&&P<0?K=hi(A+P+ee,u[0][1]):!h&&P>0&&(K=pi(A+H+ee,u[1][1])),B=Math.max(B,Q),F=Math.max(F,K)}if(c){let Q=0,K=0;d&&R>0?Q=pi(k+R,c[0][0]):!d&&R<0&&(Q=hi(k+O,c[1][0])),h&&P>0?K=pi(A+P,c[0][1]):!h&&P<0&&(K=hi(A+H,c[1][1])),B=Math.max(B,Q),F=Math.max(F,K)}if(a){if(m){const Q=Pu(O/L,S,T)*L;if(B=Math.max(B,Q),u){let K=0;!d&&!h||d&&!h&&x?K=pi(A+ee+O/L,u[1][1])*L:K=hi(A+ee+(d?R:-R)/L,u[0][1])*L,B=Math.max(B,K)}if(c){let K=0;!d&&!h||d&&!h&&x?K=hi(A+O/L,c[1][1])*L:K=pi(A+(d?R:-R)/L,c[0][1])*L,B=Math.max(B,K)}}if(p){const Q=Pu(H*L,E,_)/L;if(F=Math.max(F,Q),u){let K=0;!d&&!h||h&&!d&&x?K=pi(k+H*L+U,u[1][0])/L:K=hi(k+(h?P:-P)*L+U,u[0][0])/L,F=Math.max(F,K)}if(c){let K=0;!d&&!h||h&&!d&&x?K=hi(k+H*L,c[1][0])/L:K=pi(k+(h?P:-P)*L,c[0][0])/L,F=Math.max(F,K)}}}P=P+(P<0?F:-F),R=R+(R<0?B:-B),a&&(x?O>H*L?P=(Pv(d,h)?-R:R)/L:R=(Pv(d,h)?-P:P)*L:m?(P=R/L,h=d):(R=P*L,d=h));const z=d?k+R:k,G=h?A+P:A;return{width:q+(d?-R:R),height:j+(h?-P:P),x:o[0]*R*(d?-1:1)+z,y:o[1]*P*(h?-1:1)+G}}const PS={width:0,height:0,x:0,y:0},Pj={...PS,pointerX:0,pointerY:0,aspectRatio:1};function Vj(e){return[[0,0],[e.measured.width,e.measured.height]]}function $j(e,n,r){const l=n.position.x+e.position.x,a=n.position.y+e.position.y,o=e.measured.width??0,u=e.measured.height??0,c=r[0]*o,d=r[1]*u;return[[l-c,a-d],[l+o-c,a+u-d]]}function Gj({domNode:e,nodeId:n,getStoreItems:r,onChange:l,onEnd:a}){const o=wn(e);let u={controlDirection:Uv("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function c({controlPosition:h,boundaries:m,keepAspectRatio:p,resizeDirection:x,onResizeStart:v,onResize:w,onResizeEnd:E,shouldResize:_}){let S={...PS},T={...Pj};u={boundaries:m,resizeDirection:x,keepAspectRatio:p,controlDirection:Uv(h)};let k,A=null,q=[],j,L,R,P=!1;const O=Ww().on("start",H=>{const{nodeLookup:U,transform:ee,snapGrid:B,snapToGrid:F,nodeOrigin:z,paneDomNode:G}=r();if(k=U.get(n),!k)return;A=(G==null?void 0:G.getBoundingClientRect())??null;const{xSnapped:Q,ySnapped:K}=zo(H.sourceEvent,{transform:ee,snapGrid:B,snapToGrid:F,containerBounds:A});S={width:k.measured.width??0,height:k.measured.height??0,x:k.position.x??0,y:k.position.y??0},T={...S,pointerX:Q,pointerY:K,aspectRatio:S.width/S.height},j=void 0,k.parentId&&(k.extent==="parent"||k.expandParent)&&(j=U.get(k.parentId),L=j&&k.extent==="parent"?Vj(j):void 0),q=[],R=void 0;for(const[M,I]of U)if(I.parentId===n&&(q.push({id:M,position:{...I.position},extent:I.extent}),I.extent==="parent"||I.expandParent)){const Y=$j(I,k,I.origin??z);R?R=[[Math.min(Y[0][0],R[0][0]),Math.min(Y[0][1],R[0][1])],[Math.max(Y[1][0],R[1][0]),Math.max(Y[1][1],R[1][1])]]:R=Y}v==null||v(H,{...S})}).on("drag",H=>{const{transform:U,snapGrid:ee,snapToGrid:B,nodeOrigin:F}=r(),z=zo(H.sourceEvent,{transform:U,snapGrid:ee,snapToGrid:B,containerBounds:A}),G=[];if(!k)return;const{x:Q,y:K,width:M,height:I}=S,Y={},N=k.origin??F,{width:$,height:X,x:J,y:ne}=Uj(T,u.controlDirection,z,u.boundaries,u.keepAspectRatio,N,L,R),re=$!==M,se=X!==I,xe=J!==Q&&re,be=ne!==K&&se;if(!xe&&!be&&!re&&!se)return;if((xe||be||N[0]===1||N[1]===1)&&(Y.x=xe?J:S.x,Y.y=be?ne:S.y,S.x=Y.x,S.y=Y.y,q.length>0)){const ze=J-Q,Te=ne-K;for(const ut of q)ut.position={x:ut.position.x-ze+N[0]*($-M),y:ut.position.y-Te+N[1]*(X-I)},G.push(ut)}if((re||se)&&(Y.width=re&&(!u.resizeDirection||u.resizeDirection==="horizontal")?$:S.width,Y.height=se&&(!u.resizeDirection||u.resizeDirection==="vertical")?X:S.height,S.width=Y.width,S.height=Y.height),j&&k.expandParent){const ze=N[0]*(Y.width??0);Y.x&&Y.x {P&&(E==null||E(H,{...S}),a==null||a({...S}),P=!1)});o.call(O)}function d(){o.on(".drag",null)}return{update:c,destroy:d}}var wh={exports:{}},Sh={},_h={exports:{}},kh={};/** * @license React * use-sync-external-store-shim.production.js * @@ -293,7 +293,7 @@ Error generating stack: `+f.message+` * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Pv;function Fj(){if(Pv)return _h;Pv=1;var e=Zo();function n(p,x){return p===x&&(p!==0||1/p===1/x)||p!==p&&x!==x}var r=typeof Object.is=="function"?Object.is:n,l=e.useState,a=e.useEffect,o=e.useLayoutEffect,u=e.useDebugValue;function c(p,x){var v=x(),w=l({inst:{value:v,getSnapshot:x}}),E=w[0].inst,S=w[1];return o(function(){E.value=v,E.getSnapshot=x,d(E)&&S({inst:E})},[p,v,x]),a(function(){return d(E)&&S({inst:E}),p(function(){d(E)&&S({inst:E})})},[p]),u(v),v}function d(p){var x=p.getSnapshot;p=p.value;try{var v=x();return!r(p,v)}catch{return!0}}function h(p,x){return x()}var m=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?h:c;return _h.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:m,_h}var Vv;function Yj(){return Vv||(Vv=1,Sh.exports=Fj()),Sh.exports}/** + */var Vv;function Fj(){if(Vv)return kh;Vv=1;var e=Zo();function n(p,x){return p===x&&(p!==0||1/p===1/x)||p!==p&&x!==x}var r=typeof Object.is=="function"?Object.is:n,l=e.useState,a=e.useEffect,o=e.useLayoutEffect,u=e.useDebugValue;function c(p,x){var v=x(),w=l({inst:{value:v,getSnapshot:x}}),E=w[0].inst,_=w[1];return o(function(){E.value=v,E.getSnapshot=x,d(E)&&_({inst:E})},[p,v,x]),a(function(){return d(E)&&_({inst:E}),p(function(){d(E)&&_({inst:E})})},[p]),u(v),v}function d(p){var x=p.getSnapshot;p=p.value;try{var v=x();return!r(p,v)}catch{return!0}}function h(p,x){return x()}var m=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?h:c;return kh.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:m,kh}var $v;function Yj(){return $v||($v=1,_h.exports=Fj()),_h.exports}/** * @license React * use-sync-external-store-shim/with-selector.production.js * @@ -301,41 +301,41 @@ Error generating stack: `+f.message+` * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var $v;function Xj(){if($v)return wh;$v=1;var e=Zo(),n=Yj();function r(h,m){return h===m&&(h!==0||1/h===1/m)||h!==h&&m!==m}var l=typeof Object.is=="function"?Object.is:r,a=n.useSyncExternalStore,o=e.useRef,u=e.useEffect,c=e.useMemo,d=e.useDebugValue;return wh.useSyncExternalStoreWithSelector=function(h,m,p,x,v){var w=o(null);if(w.current===null){var E={hasValue:!1,value:null};w.current=E}else E=w.current;w=c(function(){function _(j){if(!T){if(T=!0,k=j,j=x(j),v!==void 0&&E.hasValue){var L=E.value;if(v(L,j))return A=L}return A=j}if(L=A,l(k,j))return L;var O=x(j);return v!==void 0&&v(L,O)?(k=j,L):(k=j,A=O)}var T=!1,k,A,q=p===void 0?null:p;return[function(){return _(m())},q===null?void 0:function(){return _(q())}]},[m,p,x,v]);var S=a(h,w[0],w[1]);return u(function(){E.hasValue=!0,E.value=S},[S]),d(S),S},wh}var Gv;function Qj(){return Gv||(Gv=1,bh.exports=Xj()),bh.exports}var Zj=Qj();const Kj=Qo(Zj),Jj={},Fv=e=>{let n;const r=new Set,l=(m,p)=>{const x=typeof m=="function"?m(n):m;if(!Object.is(x,n)){const v=n;n=p??(typeof x!="object"||x===null)?x:Object.assign({},n,x),r.forEach(w=>w(n,v))}},a=()=>n,d={setState:l,getState:a,getInitialState:()=>h,subscribe:m=>(r.add(m),()=>r.delete(m)),destroy:()=>{(Jj?"production":void 0)!=="production"&&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."),r.clear()}},h=n=e(l,a,d);return d},Wj=e=>e?Fv(e):Fv,{useDebugValue:ez}=ea,{useSyncExternalStoreWithSelector:tz}=Kj,nz=e=>e;function PS(e,n=nz,r){const l=tz(e.subscribe,e.getState,e.getServerState||e.getInitialState,n,r);return ez(l),l}const Yv=(e,n)=>{const r=Wj(e),l=(a,o=n)=>PS(r,a,o);return Object.assign(l,r),l},rz=(e,n)=>e?Yv(e,n):Yv;function pt(e,n){if(Object.is(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;if(e instanceof Map&&n instanceof Map){if(e.size!==n.size)return!1;for(const[l,a]of e)if(!Object.is(a,n.get(l)))return!1;return!0}if(e instanceof Set&&n instanceof Set){if(e.size!==n.size)return!1;for(const l of e)if(!n.has(l))return!1;return!0}const r=Object.keys(e);if(r.length!==Object.keys(n).length)return!1;for(const l of r)if(!Object.prototype.hasOwnProperty.call(n,l)||!Object.is(e[l],n[l]))return!1;return!0}var iz=cw();const Rc=V.createContext(null),lz=Rc.Provider,VS=lr.error001();function Ye(e,n){const r=V.useContext(Rc);if(r===null)throw new Error(VS);return PS(r,e,n)}function mt(){const e=V.useContext(Rc);if(e===null)throw new Error(VS);return V.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const Xv={display:"none"},az={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},$S="react-flow__node-desc",GS="react-flow__edge-desc",oz="react-flow__aria-live",sz=e=>e.ariaLiveMessage,uz=e=>e.ariaLabelConfig;function cz({rfId:e}){const n=Ye(sz);return b.jsx("div",{id:`${oz}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:az,children:n})}function fz({rfId:e,disableKeyboardA11y:n}){const r=Ye(uz);return b.jsxs(b.Fragment,{children:[b.jsx("div",{id:`${$S}-${e}`,style:Xv,children:n?r["node.a11yDescription.default"]:r["node.a11yDescription.keyboardDisabled"]}),b.jsx("div",{id:`${GS}-${e}`,style:Xv,children:r["edge.a11yDescription.default"]}),!n&&b.jsx(cz,{rfId:e})]})}const Oc=V.forwardRef(({position:e="top-left",children:n,className:r,style:l,...a},o)=>{const u=`${e}`.split("-");return b.jsx("div",{className:jt(["react-flow__panel",r,...u]),style:l,ref:o,...a,children:n})});Oc.displayName="Panel";function dz({proOptions:e,position:n="bottom-right"}){return e!=null&&e.hideAttribution?null:b.jsx(Oc,{position:n,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:b.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const hz=e=>{const n=[],r=[];for(const[,l]of e.nodeLookup)l.selected&&n.push(l.internals.userNode);for(const[,l]of e.edgeLookup)l.selected&&r.push(l);return{selectedNodes:n,selectedEdges:r}},Vu=e=>e.id;function pz(e,n){return pt(e.selectedNodes.map(Vu),n.selectedNodes.map(Vu))&&pt(e.selectedEdges.map(Vu),n.selectedEdges.map(Vu))}function mz({onSelectionChange:e}){const n=mt(),{selectedNodes:r,selectedEdges:l}=Ye(hz,pz);return V.useEffect(()=>{const a={nodes:r,edges:l};e==null||e(a),n.getState().onSelectionChangeHandlers.forEach(o=>o(a))},[r,l,e]),null}const gz=e=>!!e.onSelectionChangeHandlers;function xz({onSelectionChange:e}){const n=Ye(gz);return e||n?b.jsx(mz,{onSelectionChange:e}):null}const FS=[0,0],yz={x:0,y:0,zoom:1},vz=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","ariaLabelConfig","zIndexMode"],Qv=[...vz,"rfId"],bz=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),Zv={translateExtent:Po,nodeOrigin:FS,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function wz(e){const{setNodes:n,setEdges:r,setMinZoom:l,setMaxZoom:a,setTranslateExtent:o,setNodeExtent:u,reset:c,setDefaultNodesAndEdges:d}=Ye(bz,pt),h=mt();V.useEffect(()=>(d(e.defaultNodes,e.defaultEdges),()=>{m.current=Zv,c()}),[]);const m=V.useRef(Zv);return V.useEffect(()=>{for(const p of Qv){const x=e[p],v=m.current[p];x!==v&&(typeof e[p]>"u"||(p==="nodes"?n(x):p==="edges"?r(x):p==="minZoom"?l(x):p==="maxZoom"?a(x):p==="translateExtent"?o(x):p==="nodeExtent"?u(x):p==="ariaLabelConfig"?h.setState({ariaLabelConfig:rj(x)}):p==="fitView"?h.setState({fitViewQueued:x}):p==="fitViewOptions"?h.setState({fitViewOptions:x}):h.setState({[p]:x})))}m.current=e},Qv.map(p=>e[p])),null}function Kv(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function Sz(e){var l;const[n,r]=V.useState(e==="system"?null:e);return V.useEffect(()=>{if(e!=="system"){r(e);return}const a=Kv(),o=()=>r(a!=null&&a.matches?"dark":"light");return o(),a==null||a.addEventListener("change",o),()=>{a==null||a.removeEventListener("change",o)}},[e]),n!==null?n:(l=Kv())!=null&&l.matches?"dark":"light"}const Jv=typeof document<"u"?document:null;function Fo(e=null,n={target:Jv,actInsideInputWithModifier:!0}){const[r,l]=V.useState(!1),a=V.useRef(!1),o=V.useRef(new Set([])),[u,c]=V.useMemo(()=>{if(e!==null){const h=(Array.isArray(e)?e:[e]).filter(p=>typeof p=="string").map(p=>p.replace("+",` + */var Gv;function Xj(){if(Gv)return Sh;Gv=1;var e=Zo(),n=Yj();function r(h,m){return h===m&&(h!==0||1/h===1/m)||h!==h&&m!==m}var l=typeof Object.is=="function"?Object.is:r,a=n.useSyncExternalStore,o=e.useRef,u=e.useEffect,c=e.useMemo,d=e.useDebugValue;return Sh.useSyncExternalStoreWithSelector=function(h,m,p,x,v){var w=o(null);if(w.current===null){var E={hasValue:!1,value:null};w.current=E}else E=w.current;w=c(function(){function S(j){if(!T){if(T=!0,k=j,j=x(j),v!==void 0&&E.hasValue){var L=E.value;if(v(L,j))return A=L}return A=j}if(L=A,l(k,j))return L;var R=x(j);return v!==void 0&&v(L,R)?(k=j,L):(k=j,A=R)}var T=!1,k,A,q=p===void 0?null:p;return[function(){return S(m())},q===null?void 0:function(){return S(q())}]},[m,p,x,v]);var _=a(h,w[0],w[1]);return u(function(){E.hasValue=!0,E.value=_},[_]),d(_),_},Sh}var Fv;function Qj(){return Fv||(Fv=1,wh.exports=Xj()),wh.exports}var Zj=Qj();const Kj=Qo(Zj),Jj={},Yv=e=>{let n;const r=new Set,l=(m,p)=>{const x=typeof m=="function"?m(n):m;if(!Object.is(x,n)){const v=n;n=p??(typeof x!="object"||x===null)?x:Object.assign({},n,x),r.forEach(w=>w(n,v))}},a=()=>n,d={setState:l,getState:a,getInitialState:()=>h,subscribe:m=>(r.add(m),()=>r.delete(m)),destroy:()=>{(Jj?"production":void 0)!=="production"&&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."),r.clear()}},h=n=e(l,a,d);return d},Wj=e=>e?Yv(e):Yv,{useDebugValue:ez}=ea,{useSyncExternalStoreWithSelector:tz}=Kj,nz=e=>e;function VS(e,n=nz,r){const l=tz(e.subscribe,e.getState,e.getServerState||e.getInitialState,n,r);return ez(l),l}const Xv=(e,n)=>{const r=Wj(e),l=(a,o=n)=>VS(r,a,o);return Object.assign(l,r),l},rz=(e,n)=>e?Xv(e,n):Xv;function pt(e,n){if(Object.is(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;if(e instanceof Map&&n instanceof Map){if(e.size!==n.size)return!1;for(const[l,a]of e)if(!Object.is(a,n.get(l)))return!1;return!0}if(e instanceof Set&&n instanceof Set){if(e.size!==n.size)return!1;for(const l of e)if(!n.has(l))return!1;return!0}const r=Object.keys(e);if(r.length!==Object.keys(n).length)return!1;for(const l of r)if(!Object.prototype.hasOwnProperty.call(n,l)||!Object.is(e[l],n[l]))return!1;return!0}var iz=fw();const Oc=V.createContext(null),lz=Oc.Provider,$S=lr.error001();function Ye(e,n){const r=V.useContext(Oc);if(r===null)throw new Error($S);return VS(r,e,n)}function mt(){const e=V.useContext(Oc);if(e===null)throw new Error($S);return V.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const Qv={display:"none"},az={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},GS="react-flow__node-desc",FS="react-flow__edge-desc",oz="react-flow__aria-live",sz=e=>e.ariaLiveMessage,uz=e=>e.ariaLabelConfig;function cz({rfId:e}){const n=Ye(sz);return b.jsx("div",{id:`${oz}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:az,children:n})}function fz({rfId:e,disableKeyboardA11y:n}){const r=Ye(uz);return b.jsxs(b.Fragment,{children:[b.jsx("div",{id:`${GS}-${e}`,style:Qv,children:n?r["node.a11yDescription.default"]:r["node.a11yDescription.keyboardDisabled"]}),b.jsx("div",{id:`${FS}-${e}`,style:Qv,children:r["edge.a11yDescription.default"]}),!n&&b.jsx(cz,{rfId:e})]})}const Lc=V.forwardRef(({position:e="top-left",children:n,className:r,style:l,...a},o)=>{const u=`${e}`.split("-");return b.jsx("div",{className:jt(["react-flow__panel",r,...u]),style:l,ref:o,...a,children:n})});Lc.displayName="Panel";function dz({proOptions:e,position:n="bottom-right"}){return e!=null&&e.hideAttribution?null:b.jsx(Lc,{position:n,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:b.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const hz=e=>{const n=[],r=[];for(const[,l]of e.nodeLookup)l.selected&&n.push(l.internals.userNode);for(const[,l]of e.edgeLookup)l.selected&&r.push(l);return{selectedNodes:n,selectedEdges:r}},Vu=e=>e.id;function pz(e,n){return pt(e.selectedNodes.map(Vu),n.selectedNodes.map(Vu))&&pt(e.selectedEdges.map(Vu),n.selectedEdges.map(Vu))}function mz({onSelectionChange:e}){const n=mt(),{selectedNodes:r,selectedEdges:l}=Ye(hz,pz);return V.useEffect(()=>{const a={nodes:r,edges:l};e==null||e(a),n.getState().onSelectionChangeHandlers.forEach(o=>o(a))},[r,l,e]),null}const gz=e=>!!e.onSelectionChangeHandlers;function xz({onSelectionChange:e}){const n=Ye(gz);return e||n?b.jsx(mz,{onSelectionChange:e}):null}const YS=[0,0],yz={x:0,y:0,zoom:1},vz=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","ariaLabelConfig","zIndexMode"],Zv=[...vz,"rfId"],bz=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),Kv={translateExtent:Po,nodeOrigin:YS,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function wz(e){const{setNodes:n,setEdges:r,setMinZoom:l,setMaxZoom:a,setTranslateExtent:o,setNodeExtent:u,reset:c,setDefaultNodesAndEdges:d}=Ye(bz,pt),h=mt();V.useEffect(()=>(d(e.defaultNodes,e.defaultEdges),()=>{m.current=Kv,c()}),[]);const m=V.useRef(Kv);return V.useEffect(()=>{for(const p of Zv){const x=e[p],v=m.current[p];x!==v&&(typeof e[p]>"u"||(p==="nodes"?n(x):p==="edges"?r(x):p==="minZoom"?l(x):p==="maxZoom"?a(x):p==="translateExtent"?o(x):p==="nodeExtent"?u(x):p==="ariaLabelConfig"?h.setState({ariaLabelConfig:rj(x)}):p==="fitView"?h.setState({fitViewQueued:x}):p==="fitViewOptions"?h.setState({fitViewOptions:x}):h.setState({[p]:x})))}m.current=e},Zv.map(p=>e[p])),null}function Jv(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function Sz(e){var l;const[n,r]=V.useState(e==="system"?null:e);return V.useEffect(()=>{if(e!=="system"){r(e);return}const a=Jv(),o=()=>r(a!=null&&a.matches?"dark":"light");return o(),a==null||a.addEventListener("change",o),()=>{a==null||a.removeEventListener("change",o)}},[e]),n!==null?n:(l=Jv())!=null&&l.matches?"dark":"light"}const Wv=typeof document<"u"?document:null;function Fo(e=null,n={target:Wv,actInsideInputWithModifier:!0}){const[r,l]=V.useState(!1),a=V.useRef(!1),o=V.useRef(new Set([])),[u,c]=V.useMemo(()=>{if(e!==null){const h=(Array.isArray(e)?e:[e]).filter(p=>typeof p=="string").map(p=>p.replace("+",` `).replace(` `,` +`).split(` -`)),m=h.reduce((p,x)=>p.concat(...x),[]);return[h,m]}return[[],[]]},[e]);return V.useEffect(()=>{const d=(n==null?void 0:n.target)??Jv,h=(n==null?void 0:n.actInsideInputWithModifier)??!0;if(e!==null){const m=v=>{var S,_;if(a.current=v.ctrlKey||v.metaKey||v.shiftKey||v.altKey,(!a.current||a.current&&!h)&&NS(v))return!1;const E=eb(v.code,c);if(o.current.add(v[E]),Wv(u,o.current,!1)){const T=((_=(S=v.composedPath)==null?void 0:S.call(v))==null?void 0:_[0])||v.target,k=(T==null?void 0:T.nodeName)==="BUTTON"||(T==null?void 0:T.nodeName)==="A";n.preventDefault!==!1&&(a.current||!k)&&v.preventDefault(),l(!0)}},p=v=>{const w=eb(v.code,c);Wv(u,o.current,!0)?(l(!1),o.current.clear()):o.current.delete(v[w]),v.key==="Meta"&&o.current.clear(),a.current=!1},x=()=>{o.current.clear(),l(!1)};return d==null||d.addEventListener("keydown",m),d==null||d.addEventListener("keyup",p),window.addEventListener("blur",x),window.addEventListener("contextmenu",x),()=>{d==null||d.removeEventListener("keydown",m),d==null||d.removeEventListener("keyup",p),window.removeEventListener("blur",x),window.removeEventListener("contextmenu",x)}}},[e,l]),r}function Wv(e,n,r){return e.filter(l=>r||l.length===n.size).some(l=>l.every(a=>n.has(a)))}function eb(e,n){return n.includes(e)?"code":"key"}const _z=()=>{const e=mt();return V.useMemo(()=>({zoomIn:n=>{const{panZoom:r}=e.getState();return r?r.scaleBy(1.2,{duration:n==null?void 0:n.duration}):Promise.resolve(!1)},zoomOut:n=>{const{panZoom:r}=e.getState();return r?r.scaleBy(1/1.2,{duration:n==null?void 0:n.duration}):Promise.resolve(!1)},zoomTo:(n,r)=>{const{panZoom:l}=e.getState();return l?l.scaleTo(n,{duration:r==null?void 0:r.duration}):Promise.resolve(!1)},getZoom:()=>e.getState().transform[2],setViewport:async(n,r)=>{const{transform:[l,a,o],panZoom:u}=e.getState();return u?(await u.setViewport({x:n.x??l,y:n.y??a,zoom:n.zoom??o},r),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[n,r,l]=e.getState().transform;return{x:n,y:r,zoom:l}},setCenter:async(n,r,l)=>e.getState().setCenter(n,r,l),fitBounds:async(n,r)=>{const{width:l,height:a,minZoom:o,maxZoom:u,panZoom:c}=e.getState(),d=Am(n,l,a,o,u,(r==null?void 0:r.padding)??.1);return c?(await c.setViewport(d,{duration:r==null?void 0:r.duration,ease:r==null?void 0:r.ease,interpolate:r==null?void 0:r.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(n,r={})=>{const{transform:l,snapGrid:a,snapToGrid:o,domNode:u}=e.getState();if(!u)return n;const{x:c,y:d}=u.getBoundingClientRect(),h={x:n.x-c,y:n.y-d},m=r.snapGrid??a,p=r.snapToGrid??o;return ns(h,l,p,m)},flowToScreenPosition:n=>{const{transform:r,domNode:l}=e.getState();if(!l)return n;const{x:a,y:o}=l.getBoundingClientRect(),u=mc(n,r);return{x:u.x+a,y:u.y+o}}}),[])};function YS(e,n){const r=[],l=new Map,a=[];for(const o of e)if(o.type==="add"){a.push(o);continue}else if(o.type==="remove"||o.type==="replace")l.set(o.id,[o]);else{const u=l.get(o.id);u?u.push(o):l.set(o.id,[o])}for(const o of n){const u=l.get(o.id);if(!u){r.push(o);continue}if(u[0].type==="remove")continue;if(u[0].type==="replace"){r.push({...u[0].item});continue}const c={...o};for(const d of u)kz(d,c);r.push(c)}return a.length&&a.forEach(o=>{o.index!==void 0?r.splice(o.index,0,{...o.item}):r.push({...o.item})}),r}function kz(e,n){switch(e.type){case"select":{n.selected=e.selected;break}case"position":{typeof e.position<"u"&&(n.position=e.position),typeof e.dragging<"u"&&(n.dragging=e.dragging);break}case"dimensions":{typeof e.dimensions<"u"&&(n.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes==="width")&&(n.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes==="height")&&(n.height=e.dimensions.height))),typeof e.resizing=="boolean"&&(n.resizing=e.resizing);break}}}function XS(e,n){return YS(e,n)}function QS(e,n){return YS(e,n)}function $i(e,n){return{id:e,type:"select",selected:n}}function ra(e,n=new Set,r=!1){const l=[];for(const[a,o]of e){const u=n.has(a);!(o.selected===void 0&&!u)&&o.selected!==u&&(r&&(o.selected=u),l.push($i(o.id,u)))}return l}function tb({items:e=[],lookup:n}){var a;const r=[],l=new Map(e.map(o=>[o.id,o]));for(const[o,u]of e.entries()){const c=n.get(u.id),d=((a=c==null?void 0:c.internals)==null?void 0:a.userNode)??c;d!==void 0&&d!==u&&r.push({id:u.id,item:u,type:"replace"}),d===void 0&&r.push({item:u,type:"add",index:o})}for(const[o]of n)l.get(o)===void 0&&r.push({id:o,type:"remove"});return r}function nb(e){return{id:e.id,type:"remove"}}const rb=e=>YA(e),Ez=e=>yS(e);function ZS(e){return V.forwardRef(e)}const Nz=typeof window<"u"?V.useLayoutEffect:V.useEffect;function ib(e){const[n,r]=V.useState(BigInt(0)),[l]=V.useState(()=>Cz(()=>r(a=>a+BigInt(1))));return Nz(()=>{const a=l.get();a.length&&(e(a),l.reset())},[n]),l}function Cz(e){let n=[];return{get:()=>n,reset:()=>{n=[]},push:r=>{n.push(r),e()}}}const KS=V.createContext(null);function Tz({children:e}){const n=mt(),r=V.useCallback(c=>{const{nodes:d=[],setNodes:h,hasDefaultNodes:m,onNodesChange:p,nodeLookup:x,fitViewQueued:v,onNodesChangeMiddlewareMap:w}=n.getState();let E=d;for(const _ of c)E=typeof _=="function"?_(E):_;let S=tb({items:E,lookup:x});for(const _ of w.values())S=_(S);m&&h(E),S.length>0?p==null||p(S):v&&window.requestAnimationFrame(()=>{const{fitViewQueued:_,nodes:T,setNodes:k}=n.getState();_&&k(T)})},[]),l=ib(r),a=V.useCallback(c=>{const{edges:d=[],setEdges:h,hasDefaultEdges:m,onEdgesChange:p,edgeLookup:x}=n.getState();let v=d;for(const w of c)v=typeof w=="function"?w(v):w;m?h(v):p&&p(tb({items:v,lookup:x}))},[]),o=ib(a),u=V.useMemo(()=>({nodeQueue:l,edgeQueue:o}),[]);return b.jsx(KS.Provider,{value:u,children:e})}function Az(){const e=V.useContext(KS);if(!e)throw new Error("useBatchContext must be used within a BatchProvider");return e}const jz=e=>!!e.panZoom;function ll(){const e=_z(),n=mt(),r=Az(),l=Ye(jz),a=V.useMemo(()=>{const o=p=>n.getState().nodeLookup.get(p),u=p=>{r.nodeQueue.push(p)},c=p=>{r.edgeQueue.push(p)},d=p=>{var _,T;const{nodeLookup:x,nodeOrigin:v}=n.getState(),w=rb(p)?p:x.get(p.id),E=w.parentId?kS(w.position,w.measured,w.parentId,x,v):w.position,S={...w,position:E,width:((_=w.measured)==null?void 0:_.width)??w.width,height:((T=w.measured)==null?void 0:T.height)??w.height};return ha(S)},h=(p,x,v={replace:!1})=>{u(w=>w.map(E=>{if(E.id===p){const S=typeof x=="function"?x(E):x;return v.replace&&rb(S)?S:{...E,...S}}return E}))},m=(p,x,v={replace:!1})=>{c(w=>w.map(E=>{if(E.id===p){const S=typeof x=="function"?x(E):x;return v.replace&&Ez(S)?S:{...E,...S}}return E}))};return{getNodes:()=>n.getState().nodes.map(p=>({...p})),getNode:p=>{var x;return(x=o(p))==null?void 0:x.internals.userNode},getInternalNode:o,getEdges:()=>{const{edges:p=[]}=n.getState();return p.map(x=>({...x}))},getEdge:p=>n.getState().edgeLookup.get(p),setNodes:u,setEdges:c,addNodes:p=>{const x=Array.isArray(p)?p:[p];r.nodeQueue.push(v=>[...v,...x])},addEdges:p=>{const x=Array.isArray(p)?p:[p];r.edgeQueue.push(v=>[...v,...x])},toObject:()=>{const{nodes:p=[],edges:x=[],transform:v}=n.getState(),[w,E,S]=v;return{nodes:p.map(_=>({..._})),edges:x.map(_=>({..._})),viewport:{x:w,y:E,zoom:S}}},deleteElements:async({nodes:p=[],edges:x=[]})=>{const{nodes:v,edges:w,onNodesDelete:E,onEdgesDelete:S,triggerNodeChanges:_,triggerEdgeChanges:T,onDelete:k,onBeforeDelete:A}=n.getState(),{nodes:q,edges:j}=await JA({nodesToRemove:p,edgesToRemove:x,nodes:v,edges:w,onBeforeDelete:A}),L=j.length>0,O=q.length>0;if(L){const P=j.map(nb);S==null||S(j),T(P)}if(O){const P=q.map(nb);E==null||E(q),_(P)}return(O||L)&&(k==null||k({nodes:q,edges:j})),{deletedNodes:q,deletedEdges:j}},getIntersectingNodes:(p,x=!0,v)=>{const w=Av(p),E=w?p:d(p),S=v!==void 0;return E?(v||n.getState().nodes).filter(_=>{const T=n.getState().nodeLookup.get(_.id);if(T&&!w&&(_.id===p.id||!T.internals.positionAbsolute))return!1;const k=ha(S?_:T),A=$o(k,E);return x&&A>0||A>=k.width*k.height||A>=E.width*E.height}):[]},isNodeIntersecting:(p,x,v=!0)=>{const E=Av(p)?p:d(p);if(!E)return!1;const S=$o(E,x);return v&&S>0||S>=x.width*x.height||S>=E.width*E.height},updateNode:h,updateNodeData:(p,x,v={replace:!1})=>{h(p,w=>{const E=typeof x=="function"?x(w):x;return v.replace?{...w,data:E}:{...w,data:{...w.data,...E}}},v)},updateEdge:m,updateEdgeData:(p,x,v={replace:!1})=>{m(p,w=>{const E=typeof x=="function"?x(w):x;return v.replace?{...w,data:E}:{...w,data:{...w.data,...E}}},v)},getNodesBounds:p=>{const{nodeLookup:x,nodeOrigin:v}=n.getState();return XA(p,{nodeLookup:x,nodeOrigin:v})},getHandleConnections:({type:p,id:x,nodeId:v})=>{var w;return Array.from(((w=n.getState().connectionLookup.get(`${v}-${p}${x?`-${x}`:""}`))==null?void 0:w.values())??[])},getNodeConnections:({type:p,handleId:x,nodeId:v})=>{var w;return Array.from(((w=n.getState().connectionLookup.get(`${v}${p?x?`-${p}-${x}`:`-${p}`:""}`))==null?void 0:w.values())??[])},fitView:async p=>{const x=n.getState().fitViewResolver??nj();return n.setState({fitViewQueued:!0,fitViewOptions:p,fitViewResolver:x}),r.nodeQueue.push(v=>[...v]),x.promise}}},[]);return V.useMemo(()=>({...a,...e,viewportInitialized:l}),[l])}const lb=e=>e.selected,zz=typeof window<"u"?window:void 0;function Mz({deleteKeyCode:e,multiSelectionKeyCode:n}){const r=mt(),{deleteElements:l}=ll(),a=Fo(e,{actInsideInputWithModifier:!1}),o=Fo(n,{target:zz});V.useEffect(()=>{if(a){const{edges:u,nodes:c}=r.getState();l({nodes:c.filter(lb),edges:u.filter(lb)}),r.setState({nodesSelectionActive:!1})}},[a]),V.useEffect(()=>{r.setState({multiSelectionActive:o})},[o])}function Dz(e){const n=mt();V.useEffect(()=>{const r=()=>{var a,o,u,c;if(!e.current||!(((o=(a=e.current).checkVisibility)==null?void 0:o.call(a))??!0))return!1;const l=jm(e.current);(l.height===0||l.width===0)&&((c=(u=n.getState()).onError)==null||c.call(u,"004",lr.error004())),n.setState({width:l.width||500,height:l.height||500})};if(e.current){r(),window.addEventListener("resize",r);const l=new ResizeObserver(()=>r());return l.observe(e.current),()=>{window.removeEventListener("resize",r),l&&e.current&&l.unobserve(e.current)}}},[])}const Lc={position:"absolute",width:"100%",height:"100%",top:0,left:0},Rz=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function Oz({onPaneContextMenu:e,zoomOnScroll:n=!0,zoomOnPinch:r=!0,panOnScroll:l=!1,panOnScrollSpeed:a=.5,panOnScrollMode:o=Zi.Free,zoomOnDoubleClick:u=!0,panOnDrag:c=!0,defaultViewport:d,translateExtent:h,minZoom:m,maxZoom:p,zoomActivationKeyCode:x,preventScrolling:v=!0,children:w,noWheelClassName:E,noPanClassName:S,onViewportChange:_,isControlledViewport:T,paneClickDistance:k,selectionOnDrag:A}){const q=mt(),j=V.useRef(null),{userSelectionActive:L,lib:O,connectionInProgress:P}=Ye(Rz,pt),R=Fo(x),H=V.useRef();Dz(j);const U=V.useCallback(ee=>{_==null||_({x:ee[0],y:ee[1],zoom:ee[2]}),T||q.setState({transform:ee})},[_,T]);return V.useEffect(()=>{if(j.current){H.current=Ij({domNode:j.current,minZoom:m,maxZoom:p,translateExtent:h,viewport:d,onDraggingChange:z=>q.setState(G=>G.paneDragging===z?G:{paneDragging:z}),onPanZoomStart:(z,G)=>{const{onViewportChangeStart:Q,onMoveStart:K}=q.getState();K==null||K(z,G),Q==null||Q(G)},onPanZoom:(z,G)=>{const{onViewportChange:Q,onMove:K}=q.getState();K==null||K(z,G),Q==null||Q(G)},onPanZoomEnd:(z,G)=>{const{onViewportChangeEnd:Q,onMoveEnd:K}=q.getState();K==null||K(z,G),Q==null||Q(G)}});const{x:ee,y:B,zoom:F}=H.current.getViewport();return q.setState({panZoom:H.current,transform:[ee,B,F],domNode:j.current.closest(".react-flow")}),()=>{var z;(z=H.current)==null||z.destroy()}}},[]),V.useEffect(()=>{var ee;(ee=H.current)==null||ee.update({onPaneContextMenu:e,zoomOnScroll:n,zoomOnPinch:r,panOnScroll:l,panOnScrollSpeed:a,panOnScrollMode:o,zoomOnDoubleClick:u,panOnDrag:c,zoomActivationKeyPressed:R,preventScrolling:v,noPanClassName:S,userSelectionActive:L,noWheelClassName:E,lib:O,onTransformChange:U,connectionInProgress:P,selectionOnDrag:A,paneClickDistance:k})},[e,n,r,l,a,o,u,c,R,v,S,L,E,O,U,P,A,k]),b.jsx("div",{className:"react-flow__renderer",ref:j,style:Lc,children:w})}const Lz=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function Hz(){const{userSelectionActive:e,userSelectionRect:n}=Ye(Lz,pt);return e&&n?b.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:n.width,height:n.height,transform:`translate(${n.x}px, ${n.y}px)`}}):null}const kh=(e,n)=>r=>{r.target===n.current&&(e==null||e(r))},Bz=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,connectionInProgress:e.connection.inProgress,dragging:e.paneDragging});function Iz({isSelecting:e,selectionKeyPressed:n,selectionMode:r=Vo.Full,panOnDrag:l,paneClickDistance:a,selectionOnDrag:o,onSelectionStart:u,onSelectionEnd:c,onPaneClick:d,onPaneContextMenu:h,onPaneScroll:m,onPaneMouseEnter:p,onPaneMouseMove:x,onPaneMouseLeave:v,children:w}){const E=mt(),{userSelectionActive:S,elementsSelectable:_,dragging:T,connectionInProgress:k}=Ye(Bz,pt),A=_&&(e||S),q=V.useRef(null),j=V.useRef(),L=V.useRef(new Set),O=V.useRef(new Set),P=V.useRef(!1),R=Q=>{if(P.current||k){P.current=!1;return}d==null||d(Q),E.getState().resetSelectedElements(),E.setState({nodesSelectionActive:!1})},H=Q=>{if(Array.isArray(l)&&(l!=null&&l.includes(2))){Q.preventDefault();return}h==null||h(Q)},U=m?Q=>m(Q):void 0,ee=Q=>{P.current&&(Q.stopPropagation(),P.current=!1)},B=Q=>{var X,J;const{domNode:K}=E.getState();if(j.current=K==null?void 0:K.getBoundingClientRect(),!j.current)return;const M=Q.target===q.current;if(!M&&!!Q.target.closest(".nokey")||!e||!(o&&M||n)||Q.button!==0||!Q.isPrimary)return;(J=(X=Q.target)==null?void 0:X.setPointerCapture)==null||J.call(X,Q.pointerId),P.current=!1;const{x:N,y:$}=$n(Q.nativeEvent,j.current);E.setState({userSelectionRect:{width:0,height:0,startX:N,startY:$,x:N,y:$}}),M||(Q.stopPropagation(),Q.preventDefault())},F=Q=>{const{userSelectionRect:K,transform:M,nodeLookup:I,edgeLookup:Y,connectionLookup:N,triggerNodeChanges:$,triggerEdgeChanges:X,defaultEdgeOptions:J,resetSelectedElements:ne}=E.getState();if(!j.current||!K)return;const{x:re,y:se}=$n(Q.nativeEvent,j.current),{startX:xe,startY:be}=K;if(!P.current){const Te=n?0:a;if(Math.hypot(re-xe,se-be)<=Te)return;ne(),u==null||u(Q)}P.current=!0;const ye={startX:xe,startY:be,x:re Te.id)),O.current=new Set;const ze=(J==null?void 0:J.selectable)??!0;for(const Te of L.current){const ut=N.get(Te);if(ut)for(const{edgeId:nt}of ut.values()){const zt=Y.get(nt);zt&&(zt.selectable??ze)&&O.current.add(nt)}}if(!jv(pe,L.current)){const Te=ra(I,L.current,!0);$(Te)}if(!jv(_e,O.current)){const Te=ra(Y,O.current);X(Te)}E.setState({userSelectionRect:ye,userSelectionActive:!0,nodesSelectionActive:!1})},z=Q=>{var K,M;Q.button===0&&((M=(K=Q.target)==null?void 0:K.releasePointerCapture)==null||M.call(K,Q.pointerId),!S&&Q.target===q.current&&E.getState().userSelectionRect&&(R==null||R(Q)),E.setState({userSelectionActive:!1,userSelectionRect:null}),P.current&&(c==null||c(Q),E.setState({nodesSelectionActive:L.current.size>0})))},G=l===!0||Array.isArray(l)&&l.includes(0);return b.jsxs("div",{className:jt(["react-flow__pane",{draggable:G,dragging:T,selection:e}]),onClick:A?void 0:kh(R,q),onContextMenu:kh(H,q),onWheel:kh(U,q),onPointerEnter:A?void 0:p,onPointerMove:A?F:x,onPointerUp:A?z:void 0,onPointerDownCapture:A?B:void 0,onClickCapture:A?ee:void 0,onPointerLeave:v,ref:q,style:Lc,children:[w,b.jsx(Hz,{})]})}function em({id:e,store:n,unselect:r=!1,nodeRef:l}){const{addSelectedNodes:a,unselectNodesAndEdges:o,multiSelectionActive:u,nodeLookup:c,onError:d}=n.getState(),h=c.get(e);if(!h){d==null||d("012",lr.error012(e));return}n.setState({nodesSelectionActive:!1}),h.selected?(r||h.selected&&u)&&(o({nodes:[h],edges:[]}),requestAnimationFrame(()=>{var m;return(m=l==null?void 0:l.current)==null?void 0:m.blur()})):a([e])}function JS({nodeRef:e,disabled:n=!1,noDragClassName:r,handleSelector:l,nodeId:a,isSelectable:o,nodeClickDistance:u}){const c=mt(),[d,h]=V.useState(!1),m=V.useRef();return V.useEffect(()=>{m.current=Ej({getStoreItems:()=>c.getState(),onNodeMouseDown:p=>{em({id:p,store:c,nodeRef:e})},onDragStart:()=>{h(!0)},onDragStop:()=>{h(!1)}})},[]),V.useEffect(()=>{if(!(n||!e.current||!m.current))return m.current.update({noDragClassName:r,handleSelector:l,domNode:e.current,isSelectable:o,nodeId:a,nodeClickDistance:u}),()=>{var p;(p=m.current)==null||p.destroy()}},[r,l,n,o,e,a,u]),d}const qz=e=>n=>n.selected&&(n.draggable||e&&typeof n.draggable>"u");function WS(){const e=mt();return V.useCallback(r=>{const{nodeExtent:l,snapToGrid:a,snapGrid:o,nodesDraggable:u,onError:c,updateNodePositions:d,nodeLookup:h,nodeOrigin:m}=e.getState(),p=new Map,x=qz(u),v=a?o[0]:5,w=a?o[1]:5,E=r.direction.x*v*r.factor,S=r.direction.y*w*r.factor;for(const[,_]of h){if(!x(_))continue;let T={x:_.internals.positionAbsolute.x+E,y:_.internals.positionAbsolute.y+S};a&&(T=ts(T,o));const{position:k,positionAbsolute:A}=vS({nodeId:_.id,nextPosition:T,nodeLookup:h,nodeExtent:l,nodeOrigin:m,onError:c});_.position=k,_.internals.positionAbsolute=A,p.set(_.id,_)}d(p)},[])}const Hm=V.createContext(null),Uz=Hm.Provider;Hm.Consumer;const e_=()=>V.useContext(Hm),Pz=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),Vz=(e,n,r)=>l=>{const{connectionClickStartHandle:a,connectionMode:o,connection:u}=l,{fromHandle:c,toHandle:d,isValid:h}=u,m=(d==null?void 0:d.nodeId)===e&&(d==null?void 0:d.id)===n&&(d==null?void 0:d.type)===r;return{connectingFrom:(c==null?void 0:c.nodeId)===e&&(c==null?void 0:c.id)===n&&(c==null?void 0:c.type)===r,connectingTo:m,clickConnecting:(a==null?void 0:a.nodeId)===e&&(a==null?void 0:a.id)===n&&(a==null?void 0:a.type)===r,isPossibleEndHandle:o===fa.Strict?(c==null?void 0:c.type)!==r:e!==(c==null?void 0:c.nodeId)||n!==(c==null?void 0:c.id),connectionInProcess:!!c,clickConnectionInProcess:!!a,valid:m&&h}};function $z({type:e="source",position:n=ve.Top,isValidConnection:r,isConnectable:l=!0,isConnectableStart:a=!0,isConnectableEnd:o=!0,id:u,onConnect:c,children:d,className:h,onMouseDown:m,onTouchStart:p,...x},v){var F,z;const w=u||null,E=e==="target",S=mt(),_=e_(),{connectOnClick:T,noPanClassName:k,rfId:A}=Ye(Pz,pt),{connectingFrom:q,connectingTo:j,clickConnecting:L,isPossibleEndHandle:O,connectionInProcess:P,clickConnectionInProcess:R,valid:H}=Ye(Vz(_,w,e),pt);_||(z=(F=S.getState()).onError)==null||z.call(F,"010",lr.error010());const U=G=>{const{defaultEdgeOptions:Q,onConnect:K,hasDefaultEdges:M}=S.getState(),I={...Q,...G};if(M){const{edges:Y,setEdges:N}=S.getState();N(uj(I,Y))}K==null||K(I),c==null||c(I)},ee=G=>{if(!_)return;const Q=CS(G.nativeEvent);if(a&&(Q&&G.button===0||!Q)){const K=S.getState();Wp.onPointerDown(G.nativeEvent,{handleDomNode:G.currentTarget,autoPanOnConnect:K.autoPanOnConnect,connectionMode:K.connectionMode,connectionRadius:K.connectionRadius,domNode:K.domNode,nodeLookup:K.nodeLookup,lib:K.lib,isTarget:E,handleId:w,nodeId:_,flowId:K.rfId,panBy:K.panBy,cancelConnection:K.cancelConnection,onConnectStart:K.onConnectStart,onConnectEnd:(...M)=>{var I,Y;return(Y=(I=S.getState()).onConnectEnd)==null?void 0:Y.call(I,...M)},updateConnection:K.updateConnection,onConnect:U,isValidConnection:r||((...M)=>{var I,Y;return((Y=(I=S.getState()).isValidConnection)==null?void 0:Y.call(I,...M))??!0}),getTransform:()=>S.getState().transform,getFromHandle:()=>S.getState().connection.fromHandle,autoPanSpeed:K.autoPanSpeed,dragThreshold:K.connectionDragThreshold})}Q?m==null||m(G):p==null||p(G)},B=G=>{const{onClickConnectStart:Q,onClickConnectEnd:K,connectionClickStartHandle:M,connectionMode:I,isValidConnection:Y,lib:N,rfId:$,nodeLookup:X,connection:J}=S.getState();if(!_||!M&&!a)return;if(!M){Q==null||Q(G.nativeEvent,{nodeId:_,handleId:w,handleType:e}),S.setState({connectionClickStartHandle:{nodeId:_,type:e,id:w}});return}const ne=ES(G.target),re=r||Y,{connection:se,isValid:xe}=Wp.isValid(G.nativeEvent,{handle:{nodeId:_,id:w,type:e},connectionMode:I,fromNodeId:M.nodeId,fromHandleId:M.id||null,fromType:M.type,isValidConnection:re,flowId:$,doc:ne,lib:N,nodeLookup:X});xe&&se&&U(se);const be=structuredClone(J);delete be.inProgress,be.toPosition=be.toHandle?be.toHandle.position:null,K==null||K(G,be),S.setState({connectionClickStartHandle:null})};return b.jsx("div",{"data-handleid":w,"data-nodeid":_,"data-handlepos":n,"data-id":`${A}-${_}-${w}-${e}`,className:jt(["react-flow__handle",`react-flow__handle-${n}`,"nodrag",k,h,{source:!E,target:E,connectable:l,connectablestart:a,connectableend:o,clickconnecting:L,connectingfrom:q,connectingto:j,valid:H,connectionindicator:l&&(!P||O)&&(P||R?o:a)}]),onMouseDown:ee,onTouchStart:ee,onClick:T?B:void 0,ref:v,...x,children:d})}const Lt=V.memo(ZS($z));function Gz({data:e,isConnectable:n,sourcePosition:r=ve.Bottom}){return b.jsxs(b.Fragment,{children:[e==null?void 0:e.label,b.jsx(Lt,{type:"source",position:r,isConnectable:n})]})}function Fz({data:e,isConnectable:n,targetPosition:r=ve.Top,sourcePosition:l=ve.Bottom}){return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:r,isConnectable:n}),e==null?void 0:e.label,b.jsx(Lt,{type:"source",position:l,isConnectable:n})]})}function Yz(){return null}function Xz({data:e,isConnectable:n,targetPosition:r=ve.Top}){return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:r,isConnectable:n}),e==null?void 0:e.label]})}const gc={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},ab={input:Gz,default:Fz,output:Xz,group:Yz};function Qz(e){var n,r,l,a;return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??((n=e.style)==null?void 0:n.width),height:e.height??e.initialHeight??((r=e.style)==null?void 0:r.height)}:{width:e.width??((l=e.style)==null?void 0:l.width),height:e.height??((a=e.style)==null?void 0:a.height)}}const Zz=e=>{const{width:n,height:r,x:l,y:a}=es(e.nodeLookup,{filter:o=>!!o.selected});return{width:Vn(n)?n:null,height:Vn(r)?r:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${l}px,${a}px)`}};function Kz({onSelectionContextMenu:e,noPanClassName:n,disableKeyboardA11y:r}){const l=mt(),{width:a,height:o,transformString:u,userSelectionActive:c}=Ye(Zz,pt),d=WS(),h=V.useRef(null);V.useEffect(()=>{var v;r||(v=h.current)==null||v.focus({preventScroll:!0})},[r]);const m=!c&&a!==null&&o!==null;if(JS({nodeRef:h,disabled:!m}),!m)return null;const p=e?v=>{const w=l.getState().nodes.filter(E=>E.selected);e(v,w)}:void 0,x=v=>{Object.prototype.hasOwnProperty.call(gc,v.key)&&(v.preventDefault(),d({direction:gc[v.key],factor:v.shiftKey?4:1}))};return b.jsx("div",{className:jt(["react-flow__nodesselection","react-flow__container",n]),style:{transform:u},children:b.jsx("div",{ref:h,className:"react-flow__nodesselection-rect",onContextMenu:p,tabIndex:r?void 0:-1,onKeyDown:r?void 0:x,style:{width:a,height:o}})})}const ob=typeof window<"u"?window:void 0,Jz=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function t_({children:e,onPaneClick:n,onPaneMouseEnter:r,onPaneMouseMove:l,onPaneMouseLeave:a,onPaneContextMenu:o,onPaneScroll:u,paneClickDistance:c,deleteKeyCode:d,selectionKeyCode:h,selectionOnDrag:m,selectionMode:p,onSelectionStart:x,onSelectionEnd:v,multiSelectionKeyCode:w,panActivationKeyCode:E,zoomActivationKeyCode:S,elementsSelectable:_,zoomOnScroll:T,zoomOnPinch:k,panOnScroll:A,panOnScrollSpeed:q,panOnScrollMode:j,zoomOnDoubleClick:L,panOnDrag:O,defaultViewport:P,translateExtent:R,minZoom:H,maxZoom:U,preventScrolling:ee,onSelectionContextMenu:B,noWheelClassName:F,noPanClassName:z,disableKeyboardA11y:G,onViewportChange:Q,isControlledViewport:K}){const{nodesSelectionActive:M,userSelectionActive:I}=Ye(Jz,pt),Y=Fo(h,{target:ob}),N=Fo(E,{target:ob}),$=N||O,X=N||A,J=m&&$!==!0,ne=Y||I||J;return Mz({deleteKeyCode:d,multiSelectionKeyCode:w}),b.jsx(Oz,{onPaneContextMenu:o,elementsSelectable:_,zoomOnScroll:T,zoomOnPinch:k,panOnScroll:X,panOnScrollSpeed:q,panOnScrollMode:j,zoomOnDoubleClick:L,panOnDrag:!Y&&$,defaultViewport:P,translateExtent:R,minZoom:H,maxZoom:U,zoomActivationKeyCode:S,preventScrolling:ee,noWheelClassName:F,noPanClassName:z,onViewportChange:Q,isControlledViewport:K,paneClickDistance:c,selectionOnDrag:J,children:b.jsxs(Iz,{onSelectionStart:x,onSelectionEnd:v,onPaneClick:n,onPaneMouseEnter:r,onPaneMouseMove:l,onPaneMouseLeave:a,onPaneContextMenu:o,onPaneScroll:u,panOnDrag:$,isSelecting:!!ne,selectionMode:p,selectionKeyPressed:Y,paneClickDistance:c,selectionOnDrag:J,children:[e,M&&b.jsx(Kz,{onSelectionContextMenu:B,noPanClassName:z,disableKeyboardA11y:G})]})})}t_.displayName="FlowRenderer";const Wz=V.memo(t_),eM=e=>n=>e?Tm(n.nodeLookup,{x:0,y:0,width:n.width,height:n.height},n.transform,!0).map(r=>r.id):Array.from(n.nodeLookup.keys());function tM(e){return Ye(V.useCallback(eM(e),[e]),pt)}const nM=e=>e.updateNodeInternals;function rM(){const e=Ye(nM),[n]=V.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(r=>{const l=new Map;r.forEach(a=>{const o=a.target.getAttribute("data-id");l.set(o,{id:o,nodeElement:a.target,force:!0})}),e(l)}));return V.useEffect(()=>()=>{n==null||n.disconnect()},[n]),n}function iM({node:e,nodeType:n,hasDimensions:r,resizeObserver:l}){const a=mt(),o=V.useRef(null),u=V.useRef(null),c=V.useRef(e.sourcePosition),d=V.useRef(e.targetPosition),h=V.useRef(n),m=r&&!!e.internals.handleBounds;return V.useEffect(()=>{o.current&&!e.hidden&&(!m||u.current!==o.current)&&(u.current&&(l==null||l.unobserve(u.current)),l==null||l.observe(o.current),u.current=o.current)},[m,e.hidden]),V.useEffect(()=>()=>{u.current&&(l==null||l.unobserve(u.current),u.current=null)},[]),V.useEffect(()=>{if(o.current){const p=h.current!==n,x=c.current!==e.sourcePosition,v=d.current!==e.targetPosition;(p||x||v)&&(h.current=n,c.current=e.sourcePosition,d.current=e.targetPosition,a.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:o.current,force:!0}]])))}},[e.id,n,e.sourcePosition,e.targetPosition]),o}function lM({id:e,onClick:n,onMouseEnter:r,onMouseMove:l,onMouseLeave:a,onContextMenu:o,onDoubleClick:u,nodesDraggable:c,elementsSelectable:d,nodesConnectable:h,nodesFocusable:m,resizeObserver:p,noDragClassName:x,noPanClassName:v,disableKeyboardA11y:w,rfId:E,nodeTypes:S,nodeClickDistance:_,onError:T}){const{node:k,internals:A,isParent:q}=Ye(re=>{const se=re.nodeLookup.get(e),xe=re.parentLookup.has(e);return{node:se,internals:se.internals,isParent:xe}},pt);let j=k.type||"default",L=(S==null?void 0:S[j])||ab[j];L===void 0&&(T==null||T("003",lr.error003(j)),j="default",L=(S==null?void 0:S.default)||ab.default);const O=!!(k.draggable||c&&typeof k.draggable>"u"),P=!!(k.selectable||d&&typeof k.selectable>"u"),R=!!(k.connectable||h&&typeof k.connectable>"u"),H=!!(k.focusable||m&&typeof k.focusable>"u"),U=mt(),ee=_S(k),B=iM({node:k,nodeType:j,hasDimensions:ee,resizeObserver:p}),F=JS({nodeRef:B,disabled:k.hidden||!O,noDragClassName:x,handleSelector:k.dragHandle,nodeId:e,isSelectable:P,nodeClickDistance:_}),z=WS();if(k.hidden)return null;const G=Or(k),Q=Qz(k),K=P||O||n||r||l||a,M=r?re=>r(re,{...A.userNode}):void 0,I=l?re=>l(re,{...A.userNode}):void 0,Y=a?re=>a(re,{...A.userNode}):void 0,N=o?re=>o(re,{...A.userNode}):void 0,$=u?re=>u(re,{...A.userNode}):void 0,X=re=>{const{selectNodesOnDrag:se,nodeDragThreshold:xe}=U.getState();P&&(!se||!O||xe>0)&&em({id:e,store:U,nodeRef:B}),n&&n(re,{...A.userNode})},J=re=>{if(!(NS(re.nativeEvent)||w)){if(pS.includes(re.key)&&P){const se=re.key==="Escape";em({id:e,store:U,unselect:se,nodeRef:B})}else if(O&&k.selected&&Object.prototype.hasOwnProperty.call(gc,re.key)){re.preventDefault();const{ariaLabelConfig:se}=U.getState();U.setState({ariaLiveMessage:se["node.a11yDescription.ariaLiveMessage"]({direction:re.key.replace("Arrow","").toLowerCase(),x:~~A.positionAbsolute.x,y:~~A.positionAbsolute.y})}),z({direction:gc[re.key],factor:re.shiftKey?4:1})}}},ne=()=>{var _e;if(w||!((_e=B.current)!=null&&_e.matches(":focus-visible")))return;const{transform:re,width:se,height:xe,autoPanOnNodeFocus:be,setCenter:ye}=U.getState();if(!be)return;Tm(new Map([[e,k]]),{x:0,y:0,width:se,height:xe},re,!0).length>0||ye(k.position.x+G.width/2,k.position.y+G.height/2,{zoom:re[2]})};return b.jsx("div",{className:jt(["react-flow__node",`react-flow__node-${j}`,{[v]:O},k.className,{selected:k.selected,selectable:P,parent:q,draggable:O,dragging:F}]),ref:B,style:{zIndex:A.z,transform:`translate(${A.positionAbsolute.x}px,${A.positionAbsolute.y}px)`,pointerEvents:K?"all":"none",visibility:ee?"visible":"hidden",...k.style,...Q},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:M,onMouseMove:I,onMouseLeave:Y,onContextMenu:N,onClick:X,onDoubleClick:$,onKeyDown:H?J:void 0,tabIndex:H?0:void 0,onFocus:H?ne:void 0,role:k.ariaRole??(H?"group":void 0),"aria-roledescription":"node","aria-describedby":w?void 0:`${$S}-${E}`,"aria-label":k.ariaLabel,...k.domAttributes,children:b.jsx(Uz,{value:e,children:b.jsx(L,{id:e,data:k.data,type:j,positionAbsoluteX:A.positionAbsolute.x,positionAbsoluteY:A.positionAbsolute.y,selected:k.selected??!1,selectable:P,draggable:O,deletable:k.deletable??!0,isConnectable:R,sourcePosition:k.sourcePosition,targetPosition:k.targetPosition,dragging:F,dragHandle:k.dragHandle,zIndex:A.z,parentId:k.parentId,...G})})})}var aM=V.memo(lM);const oM=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function n_(e){const{nodesDraggable:n,nodesConnectable:r,nodesFocusable:l,elementsSelectable:a,onError:o}=Ye(oM,pt),u=tM(e.onlyRenderVisibleElements),c=rM();return b.jsx("div",{className:"react-flow__nodes",style:Lc,children:u.map(d=>b.jsx(aM,{id:d,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:c,nodesDraggable:n,nodesConnectable:r,nodesFocusable:l,elementsSelectable:a,nodeClickDistance:e.nodeClickDistance,onError:o},d))})}n_.displayName="NodeRenderer";const sM=V.memo(n_);function uM(e){return Ye(V.useCallback(r=>{if(!e)return r.edges.map(a=>a.id);const l=[];if(r.width&&r.height)for(const a of r.edges){const o=r.nodeLookup.get(a.source),u=r.nodeLookup.get(a.target);o&&u&&aj({sourceNode:o,targetNode:u,width:r.width,height:r.height,transform:r.transform})&&l.push(a.id)}return l},[e]),pt)}const cM=({color:e="none",strokeWidth:n=1})=>{const r={strokeWidth:n,...e&&{stroke:e}};return b.jsx("polyline",{className:"arrow",style:r,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},fM=({color:e="none",strokeWidth:n=1})=>{const r={strokeWidth:n,...e&&{stroke:e,fill:e}};return b.jsx("polyline",{className:"arrowclosed",style:r,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},sb={[hc.Arrow]:cM,[hc.ArrowClosed]:fM};function dM(e){const n=mt();return V.useMemo(()=>{var a,o;return Object.prototype.hasOwnProperty.call(sb,e)?sb[e]:((o=(a=n.getState()).onError)==null||o.call(a,"009",lr.error009(e)),null)},[e])}const hM=({id:e,type:n,color:r,width:l=12.5,height:a=12.5,markerUnits:o="strokeWidth",strokeWidth:u,orient:c="auto-start-reverse"})=>{const d=dM(n);return d?b.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${l}`,markerHeight:`${a}`,viewBox:"-10 -10 20 20",markerUnits:o,orient:c,refX:"0",refY:"0",children:b.jsx(d,{color:r,strokeWidth:u})}):null},r_=({defaultColor:e,rfId:n})=>{const r=Ye(o=>o.edges),l=Ye(o=>o.defaultEdgeOptions),a=V.useMemo(()=>pj(r,{id:n,defaultColor:e,defaultMarkerStart:l==null?void 0:l.markerStart,defaultMarkerEnd:l==null?void 0:l.markerEnd}),[r,l,n,e]);return a.length?b.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:b.jsx("defs",{children:a.map(o=>b.jsx(hM,{id:o.id,type:o.type,color:o.color,width:o.width,height:o.height,markerUnits:o.markerUnits,strokeWidth:o.strokeWidth,orient:o.orient},o.id))})}):null};r_.displayName="MarkerDefinitions";var pM=V.memo(r_);function i_({x:e,y:n,label:r,labelStyle:l,labelShowBg:a=!0,labelBgStyle:o,labelBgPadding:u=[2,4],labelBgBorderRadius:c=2,children:d,className:h,...m}){const[p,x]=V.useState({x:1,y:0,width:0,height:0}),v=jt(["react-flow__edge-textwrapper",h]),w=V.useRef(null);return V.useEffect(()=>{if(w.current){const E=w.current.getBBox();x({x:E.x,y:E.y,width:E.width,height:E.height})}},[r]),r?b.jsxs("g",{transform:`translate(${e-p.width/2} ${n-p.height/2})`,className:v,visibility:p.width?"visible":"hidden",...m,children:[a&&b.jsx("rect",{width:p.width+2*u[0],x:-u[0],y:-u[1],height:p.height+2*u[1],className:"react-flow__edge-textbg",style:o,rx:c,ry:c}),b.jsx("text",{className:"react-flow__edge-text",y:p.height/2,dy:"0.3em",ref:w,style:l,children:r}),d]}):null}i_.displayName="EdgeText";const mM=V.memo(i_);function rs({path:e,labelX:n,labelY:r,label:l,labelStyle:a,labelShowBg:o,labelBgStyle:u,labelBgPadding:c,labelBgBorderRadius:d,interactionWidth:h=20,...m}){return b.jsxs(b.Fragment,{children:[b.jsx("path",{...m,d:e,fill:"none",className:jt(["react-flow__edge-path",m.className])}),h?b.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:h,className:"react-flow__edge-interaction"}):null,l&&Vn(n)&&Vn(r)?b.jsx(mM,{x:n,y:r,label:l,labelStyle:a,labelShowBg:o,labelBgStyle:u,labelBgPadding:c,labelBgBorderRadius:d}):null]})}function ub({pos:e,x1:n,y1:r,x2:l,y2:a}){return e===ve.Left||e===ve.Right?[.5*(n+l),r]:[n,.5*(r+a)]}function l_({sourceX:e,sourceY:n,sourcePosition:r=ve.Bottom,targetX:l,targetY:a,targetPosition:o=ve.Top}){const[u,c]=ub({pos:r,x1:e,y1:n,x2:l,y2:a}),[d,h]=ub({pos:o,x1:l,y1:a,x2:e,y2:n}),[m,p,x,v]=TS({sourceX:e,sourceY:n,targetX:l,targetY:a,sourceControlX:u,sourceControlY:c,targetControlX:d,targetControlY:h});return[`M${e},${n} C${u},${c} ${d},${h} ${l},${a}`,m,p,x,v]}function a_(e){return V.memo(({id:n,sourceX:r,sourceY:l,targetX:a,targetY:o,sourcePosition:u,targetPosition:c,label:d,labelStyle:h,labelShowBg:m,labelBgStyle:p,labelBgPadding:x,labelBgBorderRadius:v,style:w,markerEnd:E,markerStart:S,interactionWidth:_})=>{const[T,k,A]=l_({sourceX:r,sourceY:l,sourcePosition:u,targetX:a,targetY:o,targetPosition:c}),q=e.isInternal?void 0:n;return b.jsx(rs,{id:q,path:T,labelX:k,labelY:A,label:d,labelStyle:h,labelShowBg:m,labelBgStyle:p,labelBgPadding:x,labelBgBorderRadius:v,style:w,markerEnd:E,markerStart:S,interactionWidth:_})})}const gM=a_({isInternal:!1}),o_=a_({isInternal:!0});gM.displayName="SimpleBezierEdge";o_.displayName="SimpleBezierEdgeInternal";function s_(e){return V.memo(({id:n,sourceX:r,sourceY:l,targetX:a,targetY:o,label:u,labelStyle:c,labelShowBg:d,labelBgStyle:h,labelBgPadding:m,labelBgBorderRadius:p,style:x,sourcePosition:v=ve.Bottom,targetPosition:w=ve.Top,markerEnd:E,markerStart:S,pathOptions:_,interactionWidth:T})=>{const[k,A,q]=Zp({sourceX:r,sourceY:l,sourcePosition:v,targetX:a,targetY:o,targetPosition:w,borderRadius:_==null?void 0:_.borderRadius,offset:_==null?void 0:_.offset,stepPosition:_==null?void 0:_.stepPosition}),j=e.isInternal?void 0:n;return b.jsx(rs,{id:j,path:k,labelX:A,labelY:q,label:u,labelStyle:c,labelShowBg:d,labelBgStyle:h,labelBgPadding:m,labelBgBorderRadius:p,style:x,markerEnd:E,markerStart:S,interactionWidth:T})})}const u_=s_({isInternal:!1}),c_=s_({isInternal:!0});u_.displayName="SmoothStepEdge";c_.displayName="SmoothStepEdgeInternal";function f_(e){return V.memo(({id:n,...r})=>{var a;const l=e.isInternal?void 0:n;return b.jsx(u_,{...r,id:l,pathOptions:V.useMemo(()=>{var o;return{borderRadius:0,offset:(o=r.pathOptions)==null?void 0:o.offset}},[(a=r.pathOptions)==null?void 0:a.offset])})})}const xM=f_({isInternal:!1}),d_=f_({isInternal:!0});xM.displayName="StepEdge";d_.displayName="StepEdgeInternal";function h_(e){return V.memo(({id:n,sourceX:r,sourceY:l,targetX:a,targetY:o,label:u,labelStyle:c,labelShowBg:d,labelBgStyle:h,labelBgPadding:m,labelBgBorderRadius:p,style:x,markerEnd:v,markerStart:w,interactionWidth:E})=>{const[S,_,T]=jS({sourceX:r,sourceY:l,targetX:a,targetY:o}),k=e.isInternal?void 0:n;return b.jsx(rs,{id:k,path:S,labelX:_,labelY:T,label:u,labelStyle:c,labelShowBg:d,labelBgStyle:h,labelBgPadding:m,labelBgBorderRadius:p,style:x,markerEnd:v,markerStart:w,interactionWidth:E})})}const yM=h_({isInternal:!1}),p_=h_({isInternal:!0});yM.displayName="StraightEdge";p_.displayName="StraightEdgeInternal";function m_(e){return V.memo(({id:n,sourceX:r,sourceY:l,targetX:a,targetY:o,sourcePosition:u=ve.Bottom,targetPosition:c=ve.Top,label:d,labelStyle:h,labelShowBg:m,labelBgStyle:p,labelBgPadding:x,labelBgBorderRadius:v,style:w,markerEnd:E,markerStart:S,pathOptions:_,interactionWidth:T})=>{const[k,A,q]=zm({sourceX:r,sourceY:l,sourcePosition:u,targetX:a,targetY:o,targetPosition:c,curvature:_==null?void 0:_.curvature}),j=e.isInternal?void 0:n;return b.jsx(rs,{id:j,path:k,labelX:A,labelY:q,label:d,labelStyle:h,labelShowBg:m,labelBgStyle:p,labelBgPadding:x,labelBgBorderRadius:v,style:w,markerEnd:E,markerStart:S,interactionWidth:T})})}const vM=m_({isInternal:!1}),g_=m_({isInternal:!0});vM.displayName="BezierEdge";g_.displayName="BezierEdgeInternal";const cb={default:g_,straight:p_,step:d_,smoothstep:c_,simplebezier:o_},fb={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},bM=(e,n,r)=>r===ve.Left?e-n:r===ve.Right?e+n:e,wM=(e,n,r)=>r===ve.Top?e-n:r===ve.Bottom?e+n:e,db="react-flow__edgeupdater";function hb({position:e,centerX:n,centerY:r,radius:l=10,onMouseDown:a,onMouseEnter:o,onMouseOut:u,type:c}){return b.jsx("circle",{onMouseDown:a,onMouseEnter:o,onMouseOut:u,className:jt([db,`${db}-${c}`]),cx:bM(n,l,e),cy:wM(r,l,e),r:l,stroke:"transparent",fill:"transparent"})}function SM({isReconnectable:e,reconnectRadius:n,edge:r,sourceX:l,sourceY:a,targetX:o,targetY:u,sourcePosition:c,targetPosition:d,onReconnect:h,onReconnectStart:m,onReconnectEnd:p,setReconnecting:x,setUpdateHover:v}){const w=mt(),E=(A,q)=>{if(A.button!==0)return;const{autoPanOnConnect:j,domNode:L,connectionMode:O,connectionRadius:P,lib:R,onConnectStart:H,cancelConnection:U,nodeLookup:ee,rfId:B,panBy:F,updateConnection:z}=w.getState(),G=q.type==="target",Q=(I,Y)=>{x(!1),p==null||p(I,r,q.type,Y)},K=I=>h==null?void 0:h(r,I),M=(I,Y)=>{x(!0),m==null||m(A,r,q.type),H==null||H(I,Y)};Wp.onPointerDown(A.nativeEvent,{autoPanOnConnect:j,connectionMode:O,connectionRadius:P,domNode:L,handleId:q.id,nodeId:q.nodeId,nodeLookup:ee,isTarget:G,edgeUpdaterType:q.type,lib:R,flowId:B,cancelConnection:U,panBy:F,isValidConnection:(...I)=>{var Y,N;return((N=(Y=w.getState()).isValidConnection)==null?void 0:N.call(Y,...I))??!0},onConnect:K,onConnectStart:M,onConnectEnd:(...I)=>{var Y,N;return(N=(Y=w.getState()).onConnectEnd)==null?void 0:N.call(Y,...I)},onReconnectEnd:Q,updateConnection:z,getTransform:()=>w.getState().transform,getFromHandle:()=>w.getState().connection.fromHandle,dragThreshold:w.getState().connectionDragThreshold,handleDomNode:A.currentTarget})},S=A=>E(A,{nodeId:r.target,id:r.targetHandle??null,type:"target"}),_=A=>E(A,{nodeId:r.source,id:r.sourceHandle??null,type:"source"}),T=()=>v(!0),k=()=>v(!1);return b.jsxs(b.Fragment,{children:[(e===!0||e==="source")&&b.jsx(hb,{position:c,centerX:l,centerY:a,radius:n,onMouseDown:S,onMouseEnter:T,onMouseOut:k,type:"source"}),(e===!0||e==="target")&&b.jsx(hb,{position:d,centerX:o,centerY:u,radius:n,onMouseDown:_,onMouseEnter:T,onMouseOut:k,type:"target"})]})}function _M({id:e,edgesFocusable:n,edgesReconnectable:r,elementsSelectable:l,onClick:a,onDoubleClick:o,onContextMenu:u,onMouseEnter:c,onMouseMove:d,onMouseLeave:h,reconnectRadius:m,onReconnect:p,onReconnectStart:x,onReconnectEnd:v,rfId:w,edgeTypes:E,noPanClassName:S,onError:_,disableKeyboardA11y:T}){let k=Ye(ye=>ye.edgeLookup.get(e));const A=Ye(ye=>ye.defaultEdgeOptions);k=A?{...A,...k}:k;let q=k.type||"default",j=(E==null?void 0:E[q])||cb[q];j===void 0&&(_==null||_("011",lr.error011(q)),q="default",j=(E==null?void 0:E.default)||cb.default);const L=!!(k.focusable||n&&typeof k.focusable>"u"),O=typeof p<"u"&&(k.reconnectable||r&&typeof k.reconnectable>"u"),P=!!(k.selectable||l&&typeof k.selectable>"u"),R=V.useRef(null),[H,U]=V.useState(!1),[ee,B]=V.useState(!1),F=mt(),{zIndex:z,sourceX:G,sourceY:Q,targetX:K,targetY:M,sourcePosition:I,targetPosition:Y}=Ye(V.useCallback(ye=>{const pe=ye.nodeLookup.get(k.source),_e=ye.nodeLookup.get(k.target);if(!pe||!_e)return{zIndex:k.zIndex,...fb};const ze=hj({id:e,sourceNode:pe,targetNode:_e,sourceHandle:k.sourceHandle||null,targetHandle:k.targetHandle||null,connectionMode:ye.connectionMode,onError:_});return{zIndex:lj({selected:k.selected,zIndex:k.zIndex,sourceNode:pe,targetNode:_e,elevateOnSelect:ye.elevateEdgesOnSelect,zIndexMode:ye.zIndexMode}),...ze||fb}},[k.source,k.target,k.sourceHandle,k.targetHandle,k.selected,k.zIndex]),pt),N=V.useMemo(()=>k.markerStart?`url('#${Kp(k.markerStart,w)}')`:void 0,[k.markerStart,w]),$=V.useMemo(()=>k.markerEnd?`url('#${Kp(k.markerEnd,w)}')`:void 0,[k.markerEnd,w]);if(k.hidden||G===null||Q===null||K===null||M===null)return null;const X=ye=>{var Te;const{addSelectedEdges:pe,unselectNodesAndEdges:_e,multiSelectionActive:ze}=F.getState();P&&(F.setState({nodesSelectionActive:!1}),k.selected&&ze?(_e({nodes:[],edges:[k]}),(Te=R.current)==null||Te.blur()):pe([e])),a&&a(ye,k)},J=o?ye=>{o(ye,{...k})}:void 0,ne=u?ye=>{u(ye,{...k})}:void 0,re=c?ye=>{c(ye,{...k})}:void 0,se=d?ye=>{d(ye,{...k})}:void 0,xe=h?ye=>{h(ye,{...k})}:void 0,be=ye=>{var pe;if(!T&&pS.includes(ye.key)&&P){const{unselectNodesAndEdges:_e,addSelectedEdges:ze}=F.getState();ye.key==="Escape"?((pe=R.current)==null||pe.blur(),_e({edges:[k]})):ze([e])}};return b.jsx("svg",{style:{zIndex:z},children:b.jsxs("g",{className:jt(["react-flow__edge",`react-flow__edge-${q}`,k.className,S,{selected:k.selected,animated:k.animated,inactive:!P&&!a,updating:H,selectable:P}]),onClick:X,onDoubleClick:J,onContextMenu:ne,onMouseEnter:re,onMouseMove:se,onMouseLeave:xe,onKeyDown:L?be:void 0,tabIndex:L?0:void 0,role:k.ariaRole??(L?"group":"img"),"aria-roledescription":"edge","data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":k.ariaLabel===null?void 0:k.ariaLabel||`Edge from ${k.source} to ${k.target}`,"aria-describedby":L?`${GS}-${w}`:void 0,ref:R,...k.domAttributes,children:[!ee&&b.jsx(j,{id:e,source:k.source,target:k.target,type:k.type,selected:k.selected,animated:k.animated,selectable:P,deletable:k.deletable??!0,label:k.label,labelStyle:k.labelStyle,labelShowBg:k.labelShowBg,labelBgStyle:k.labelBgStyle,labelBgPadding:k.labelBgPadding,labelBgBorderRadius:k.labelBgBorderRadius,sourceX:G,sourceY:Q,targetX:K,targetY:M,sourcePosition:I,targetPosition:Y,data:k.data,style:k.style,sourceHandleId:k.sourceHandle,targetHandleId:k.targetHandle,markerStart:N,markerEnd:$,pathOptions:"pathOptions"in k?k.pathOptions:void 0,interactionWidth:k.interactionWidth}),O&&b.jsx(SM,{edge:k,isReconnectable:O,reconnectRadius:m,onReconnect:p,onReconnectStart:x,onReconnectEnd:v,sourceX:G,sourceY:Q,targetX:K,targetY:M,sourcePosition:I,targetPosition:Y,setUpdateHover:U,setReconnecting:B})]})})}var kM=V.memo(_M);const EM=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function x_({defaultMarkerColor:e,onlyRenderVisibleElements:n,rfId:r,edgeTypes:l,noPanClassName:a,onReconnect:o,onEdgeContextMenu:u,onEdgeMouseEnter:c,onEdgeMouseMove:d,onEdgeMouseLeave:h,onEdgeClick:m,reconnectRadius:p,onEdgeDoubleClick:x,onReconnectStart:v,onReconnectEnd:w,disableKeyboardA11y:E}){const{edgesFocusable:S,edgesReconnectable:_,elementsSelectable:T,onError:k}=Ye(EM,pt),A=uM(n);return b.jsxs("div",{className:"react-flow__edges",children:[b.jsx(pM,{defaultColor:e,rfId:r}),A.map(q=>b.jsx(kM,{id:q,edgesFocusable:S,edgesReconnectable:_,elementsSelectable:T,noPanClassName:a,onReconnect:o,onContextMenu:u,onMouseEnter:c,onMouseMove:d,onMouseLeave:h,onClick:m,reconnectRadius:p,onDoubleClick:x,onReconnectStart:v,onReconnectEnd:w,rfId:r,onError:k,edgeTypes:l,disableKeyboardA11y:E},q))]})}x_.displayName="EdgeRenderer";const NM=V.memo(x_),CM=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function TM({children:e}){const n=Ye(CM);return b.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:n},children:e})}function AM(e){const n=ll(),r=V.useRef(!1);V.useEffect(()=>{!r.current&&n.viewportInitialized&&e&&(setTimeout(()=>e(n),1),r.current=!0)},[e,n.viewportInitialized])}const jM=e=>{var n;return(n=e.panZoom)==null?void 0:n.syncViewport};function zM(e){const n=Ye(jM),r=mt();return V.useEffect(()=>{e&&(n==null||n(e),r.setState({transform:[e.x,e.y,e.zoom]}))},[e,n]),null}function MM(e){return e.connection.inProgress?{...e.connection,to:ns(e.connection.to,e.transform)}:{...e.connection}}function DM(e){return MM}function RM(e){const n=DM();return Ye(n,pt)}const OM=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function LM({containerStyle:e,style:n,type:r,component:l}){const{nodesConnectable:a,width:o,height:u,isValid:c,inProgress:d}=Ye(OM,pt);return!(o&&a&&d)?null:b.jsx("svg",{style:e,width:o,height:u,className:"react-flow__connectionline react-flow__container",children:b.jsx("g",{className:jt(["react-flow__connection",xS(c)]),children:b.jsx(y_,{style:n,type:r,CustomComponent:l,isValid:c})})})}const y_=({style:e,type:n=xi.Bezier,CustomComponent:r,isValid:l})=>{const{inProgress:a,from:o,fromNode:u,fromHandle:c,fromPosition:d,to:h,toNode:m,toHandle:p,toPosition:x,pointer:v}=RM();if(!a)return;if(r)return b.jsx(r,{connectionLineType:n,connectionLineStyle:e,fromNode:u,fromHandle:c,fromX:o.x,fromY:o.y,toX:h.x,toY:h.y,fromPosition:d,toPosition:x,connectionStatus:xS(l),toNode:m,toHandle:p,pointer:v});let w="";const E={sourceX:o.x,sourceY:o.y,sourcePosition:d,targetX:h.x,targetY:h.y,targetPosition:x};switch(n){case xi.Bezier:[w]=zm(E);break;case xi.SimpleBezier:[w]=l_(E);break;case xi.Step:[w]=Zp({...E,borderRadius:0});break;case xi.SmoothStep:[w]=Zp(E);break;default:[w]=jS(E)}return b.jsx("path",{d:w,fill:"none",className:"react-flow__connection-path",style:e})};y_.displayName="ConnectionLine";const HM={};function pb(e=HM){V.useRef(e),mt(),V.useEffect(()=>{},[e])}function BM(){mt(),V.useRef(!1),V.useEffect(()=>{},[])}function v_({nodeTypes:e,edgeTypes:n,onInit:r,onNodeClick:l,onEdgeClick:a,onNodeDoubleClick:o,onEdgeDoubleClick:u,onNodeMouseEnter:c,onNodeMouseMove:d,onNodeMouseLeave:h,onNodeContextMenu:m,onSelectionContextMenu:p,onSelectionStart:x,onSelectionEnd:v,connectionLineType:w,connectionLineStyle:E,connectionLineComponent:S,connectionLineContainerStyle:_,selectionKeyCode:T,selectionOnDrag:k,selectionMode:A,multiSelectionKeyCode:q,panActivationKeyCode:j,zoomActivationKeyCode:L,deleteKeyCode:O,onlyRenderVisibleElements:P,elementsSelectable:R,defaultViewport:H,translateExtent:U,minZoom:ee,maxZoom:B,preventScrolling:F,defaultMarkerColor:z,zoomOnScroll:G,zoomOnPinch:Q,panOnScroll:K,panOnScrollSpeed:M,panOnScrollMode:I,zoomOnDoubleClick:Y,panOnDrag:N,onPaneClick:$,onPaneMouseEnter:X,onPaneMouseMove:J,onPaneMouseLeave:ne,onPaneScroll:re,onPaneContextMenu:se,paneClickDistance:xe,nodeClickDistance:be,onEdgeContextMenu:ye,onEdgeMouseEnter:pe,onEdgeMouseMove:_e,onEdgeMouseLeave:ze,reconnectRadius:Te,onReconnect:ut,onReconnectStart:nt,onReconnectEnd:zt,noDragClassName:Vt,noWheelClassName:Ht,noPanClassName:kn,disableKeyboardA11y:Rn,nodeExtent:Mt,rfId:Hr,viewport:ue,onViewportChange:ge}){return pb(e),pb(n),BM(),AM(r),zM(ue),b.jsx(Wz,{onPaneClick:$,onPaneMouseEnter:X,onPaneMouseMove:J,onPaneMouseLeave:ne,onPaneContextMenu:se,onPaneScroll:re,paneClickDistance:xe,deleteKeyCode:O,selectionKeyCode:T,selectionOnDrag:k,selectionMode:A,onSelectionStart:x,onSelectionEnd:v,multiSelectionKeyCode:q,panActivationKeyCode:j,zoomActivationKeyCode:L,elementsSelectable:R,zoomOnScroll:G,zoomOnPinch:Q,zoomOnDoubleClick:Y,panOnScroll:K,panOnScrollSpeed:M,panOnScrollMode:I,panOnDrag:N,defaultViewport:H,translateExtent:U,minZoom:ee,maxZoom:B,onSelectionContextMenu:p,preventScrolling:F,noDragClassName:Vt,noWheelClassName:Ht,noPanClassName:kn,disableKeyboardA11y:Rn,onViewportChange:ge,isControlledViewport:!!ue,children:b.jsxs(TM,{children:[b.jsx(NM,{edgeTypes:n,onEdgeClick:a,onEdgeDoubleClick:u,onReconnect:ut,onReconnectStart:nt,onReconnectEnd:zt,onlyRenderVisibleElements:P,onEdgeContextMenu:ye,onEdgeMouseEnter:pe,onEdgeMouseMove:_e,onEdgeMouseLeave:ze,reconnectRadius:Te,defaultMarkerColor:z,noPanClassName:kn,disableKeyboardA11y:Rn,rfId:Hr}),b.jsx(LM,{style:E,type:w,component:S,containerStyle:_}),b.jsx("div",{className:"react-flow__edgelabel-renderer"}),b.jsx(sM,{nodeTypes:e,onNodeClick:l,onNodeDoubleClick:o,onNodeMouseEnter:c,onNodeMouseMove:d,onNodeMouseLeave:h,onNodeContextMenu:m,nodeClickDistance:be,onlyRenderVisibleElements:P,noPanClassName:kn,noDragClassName:Vt,disableKeyboardA11y:Rn,nodeExtent:Mt,rfId:Hr}),b.jsx("div",{className:"react-flow__viewport-portal"})]})})}v_.displayName="GraphView";const IM=V.memo(v_),mb=({nodes:e,edges:n,defaultNodes:r,defaultEdges:l,width:a,height:o,fitView:u,fitViewOptions:c,minZoom:d=.5,maxZoom:h=2,nodeOrigin:m,nodeExtent:p,zIndexMode:x="basic"}={})=>{const v=new Map,w=new Map,E=new Map,S=new Map,_=l??n??[],T=r??e??[],k=m??[0,0],A=p??Po;DS(E,S,_);const q=Jp(T,v,w,{nodeOrigin:k,nodeExtent:A,zIndexMode:x});let j=[0,0,1];if(u&&a&&o){const L=es(v,{filter:H=>!!((H.width||H.initialWidth)&&(H.height||H.initialHeight))}),{x:O,y:P,zoom:R}=Am(L,a,o,d,h,(c==null?void 0:c.padding)??.1);j=[O,P,R]}return{rfId:"1",width:a??0,height:o??0,transform:j,nodes:T,nodesInitialized:q,nodeLookup:v,parentLookup:w,edges:_,edgeLookup:S,connectionLookup:E,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:r!==void 0,hasDefaultEdges:l!==void 0,panZoom:null,minZoom:d,maxZoom:h,translateExtent:Po,nodeExtent:A,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:fa.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:k,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:u??!1,fitViewOptions:c,fitViewResolver:null,connection:{...gS},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:WA,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:mS,zIndexMode:x,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},qM=({nodes:e,edges:n,defaultNodes:r,defaultEdges:l,width:a,height:o,fitView:u,fitViewOptions:c,minZoom:d,maxZoom:h,nodeOrigin:m,nodeExtent:p,zIndexMode:x})=>rz((v,w)=>{async function E(){const{nodeLookup:S,panZoom:_,fitViewOptions:T,fitViewResolver:k,width:A,height:q,minZoom:j,maxZoom:L}=w();_&&(await KA({nodes:S,width:A,height:q,panZoom:_,minZoom:j,maxZoom:L},T),k==null||k.resolve(!0),v({fitViewResolver:null}))}return{...mb({nodes:e,edges:n,width:a,height:o,fitView:u,fitViewOptions:c,minZoom:d,maxZoom:h,nodeOrigin:m,nodeExtent:p,defaultNodes:r,defaultEdges:l,zIndexMode:x}),setNodes:S=>{const{nodeLookup:_,parentLookup:T,nodeOrigin:k,elevateNodesOnSelect:A,fitViewQueued:q,zIndexMode:j}=w(),L=Jp(S,_,T,{nodeOrigin:k,nodeExtent:p,elevateNodesOnSelect:A,checkEquality:!0,zIndexMode:j});q&&L?(E(),v({nodes:S,nodesInitialized:L,fitViewQueued:!1,fitViewOptions:void 0})):v({nodes:S,nodesInitialized:L})},setEdges:S=>{const{connectionLookup:_,edgeLookup:T}=w();DS(_,T,S),v({edges:S})},setDefaultNodesAndEdges:(S,_)=>{if(S){const{setNodes:T}=w();T(S),v({hasDefaultNodes:!0})}if(_){const{setEdges:T}=w();T(_),v({hasDefaultEdges:!0})}},updateNodeInternals:S=>{const{triggerNodeChanges:_,nodeLookup:T,parentLookup:k,domNode:A,nodeOrigin:q,nodeExtent:j,debug:L,fitViewQueued:O,zIndexMode:P}=w(),{changes:R,updatedInternals:H}=wj(S,T,k,A,q,j,P);H&&(xj(T,k,{nodeOrigin:q,nodeExtent:j,zIndexMode:P}),O?(E(),v({fitViewQueued:!1,fitViewOptions:void 0})):v({}),(R==null?void 0:R.length)>0&&(L&&console.log("React Flow: trigger node changes",R),_==null||_(R)))},updateNodePositions:(S,_=!1)=>{const T=[];let k=[];const{nodeLookup:A,triggerNodeChanges:q,connection:j,updateConnection:L,onNodesChangeMiddlewareMap:O}=w();for(const[P,R]of S){const H=A.get(P),U=!!(H!=null&&H.expandParent&&(H!=null&&H.parentId)&&(R!=null&&R.position)),ee={id:P,type:"position",position:U?{x:Math.max(0,R.position.x),y:Math.max(0,R.position.y)}:R.position,dragging:_};if(H&&j.inProgress&&j.fromNode.id===H.id){const B=tl(H,j.fromHandle,ve.Left,!0);L({...j,from:B})}U&&H.parentId&&T.push({id:P,parentId:H.parentId,rect:{...R.internals.positionAbsolute,width:R.measured.width??0,height:R.measured.height??0}}),k.push(ee)}if(T.length>0){const{parentLookup:P,nodeOrigin:R}=w(),H=Lm(T,A,P,R);k.push(...H)}for(const P of O.values())k=P(k);q(k)},triggerNodeChanges:S=>{const{onNodesChange:_,setNodes:T,nodes:k,hasDefaultNodes:A,debug:q}=w();if(S!=null&&S.length){if(A){const j=XS(S,k);T(j)}q&&console.log("React Flow: trigger node changes",S),_==null||_(S)}},triggerEdgeChanges:S=>{const{onEdgesChange:_,setEdges:T,edges:k,hasDefaultEdges:A,debug:q}=w();if(S!=null&&S.length){if(A){const j=QS(S,k);T(j)}q&&console.log("React Flow: trigger edge changes",S),_==null||_(S)}},addSelectedNodes:S=>{const{multiSelectionActive:_,edgeLookup:T,nodeLookup:k,triggerNodeChanges:A,triggerEdgeChanges:q}=w();if(_){const j=S.map(L=>$i(L,!0));A(j);return}A(ra(k,new Set([...S]),!0)),q(ra(T))},addSelectedEdges:S=>{const{multiSelectionActive:_,edgeLookup:T,nodeLookup:k,triggerNodeChanges:A,triggerEdgeChanges:q}=w();if(_){const j=S.map(L=>$i(L,!0));q(j);return}q(ra(T,new Set([...S]))),A(ra(k,new Set,!0))},unselectNodesAndEdges:({nodes:S,edges:_}={})=>{const{edges:T,nodes:k,nodeLookup:A,triggerNodeChanges:q,triggerEdgeChanges:j}=w(),L=S||k,O=_||T,P=[];for(const H of L){if(!H.selected)continue;const U=A.get(H.id);U&&(U.selected=!1),P.push($i(H.id,!1))}const R=[];for(const H of O)H.selected&&R.push($i(H.id,!1));q(P),j(R)},setMinZoom:S=>{const{panZoom:_,maxZoom:T}=w();_==null||_.setScaleExtent([S,T]),v({minZoom:S})},setMaxZoom:S=>{const{panZoom:_,minZoom:T}=w();_==null||_.setScaleExtent([T,S]),v({maxZoom:S})},setTranslateExtent:S=>{var _;(_=w().panZoom)==null||_.setTranslateExtent(S),v({translateExtent:S})},resetSelectedElements:()=>{const{edges:S,nodes:_,triggerNodeChanges:T,triggerEdgeChanges:k,elementsSelectable:A}=w();if(!A)return;const q=_.reduce((L,O)=>O.selected?[...L,$i(O.id,!1)]:L,[]),j=S.reduce((L,O)=>O.selected?[...L,$i(O.id,!1)]:L,[]);T(q),k(j)},setNodeExtent:S=>{const{nodes:_,nodeLookup:T,parentLookup:k,nodeOrigin:A,elevateNodesOnSelect:q,nodeExtent:j,zIndexMode:L}=w();S[0][0]===j[0][0]&&S[0][1]===j[0][1]&&S[1][0]===j[1][0]&&S[1][1]===j[1][1]||(Jp(_,T,k,{nodeOrigin:A,nodeExtent:S,elevateNodesOnSelect:q,checkEquality:!1,zIndexMode:L}),v({nodeExtent:S}))},panBy:S=>{const{transform:_,width:T,height:k,panZoom:A,translateExtent:q}=w();return Sj({delta:S,panZoom:A,transform:_,translateExtent:q,width:T,height:k})},setCenter:async(S,_,T)=>{const{width:k,height:A,maxZoom:q,panZoom:j}=w();if(!j)return Promise.resolve(!1);const L=typeof(T==null?void 0:T.zoom)<"u"?T.zoom:q;return await j.setViewport({x:k/2-S*L,y:A/2-_*L,zoom:L},{duration:T==null?void 0:T.duration,ease:T==null?void 0:T.ease,interpolate:T==null?void 0:T.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{v({connection:{...gS}})},updateConnection:S=>{v({connection:S})},reset:()=>v({...mb()})}},Object.is);function UM({initialNodes:e,initialEdges:n,defaultNodes:r,defaultEdges:l,initialWidth:a,initialHeight:o,initialMinZoom:u,initialMaxZoom:c,initialFitViewOptions:d,fitView:h,nodeOrigin:m,nodeExtent:p,zIndexMode:x,children:v}){const[w]=V.useState(()=>qM({nodes:e,edges:n,defaultNodes:r,defaultEdges:l,width:a,height:o,fitView:h,minZoom:u,maxZoom:c,fitViewOptions:d,nodeOrigin:m,nodeExtent:p,zIndexMode:x}));return b.jsx(lz,{value:w,children:b.jsx(Tz,{children:v})})}function PM({children:e,nodes:n,edges:r,defaultNodes:l,defaultEdges:a,width:o,height:u,fitView:c,fitViewOptions:d,minZoom:h,maxZoom:m,nodeOrigin:p,nodeExtent:x,zIndexMode:v}){return V.useContext(Rc)?b.jsx(b.Fragment,{children:e}):b.jsx(UM,{initialNodes:n,initialEdges:r,defaultNodes:l,defaultEdges:a,initialWidth:o,initialHeight:u,fitView:c,initialFitViewOptions:d,initialMinZoom:h,initialMaxZoom:m,nodeOrigin:p,nodeExtent:x,zIndexMode:v,children:e})}const VM={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function $M({nodes:e,edges:n,defaultNodes:r,defaultEdges:l,className:a,nodeTypes:o,edgeTypes:u,onNodeClick:c,onEdgeClick:d,onInit:h,onMove:m,onMoveStart:p,onMoveEnd:x,onConnect:v,onConnectStart:w,onConnectEnd:E,onClickConnectStart:S,onClickConnectEnd:_,onNodeMouseEnter:T,onNodeMouseMove:k,onNodeMouseLeave:A,onNodeContextMenu:q,onNodeDoubleClick:j,onNodeDragStart:L,onNodeDrag:O,onNodeDragStop:P,onNodesDelete:R,onEdgesDelete:H,onDelete:U,onSelectionChange:ee,onSelectionDragStart:B,onSelectionDrag:F,onSelectionDragStop:z,onSelectionContextMenu:G,onSelectionStart:Q,onSelectionEnd:K,onBeforeDelete:M,connectionMode:I,connectionLineType:Y=xi.Bezier,connectionLineStyle:N,connectionLineComponent:$,connectionLineContainerStyle:X,deleteKeyCode:J="Backspace",selectionKeyCode:ne="Shift",selectionOnDrag:re=!1,selectionMode:se=Vo.Full,panActivationKeyCode:xe="Space",multiSelectionKeyCode:be=Go()?"Meta":"Control",zoomActivationKeyCode:ye=Go()?"Meta":"Control",snapToGrid:pe,snapGrid:_e,onlyRenderVisibleElements:ze=!1,selectNodesOnDrag:Te,nodesDraggable:ut,autoPanOnNodeFocus:nt,nodesConnectable:zt,nodesFocusable:Vt,nodeOrigin:Ht=FS,edgesFocusable:kn,edgesReconnectable:Rn,elementsSelectable:Mt=!0,defaultViewport:Hr=yz,minZoom:ue=.5,maxZoom:ge=2,translateExtent:Ne=Po,preventScrolling:Oe=!0,nodeExtent:Xe,defaultMarkerColor:Qt="#b1b1b7",zoomOnScroll:On=!0,zoomOnPinch:Bt=!0,panOnScroll:vt=!1,panOnScrollSpeed:$t=.5,panOnScrollMode:We=Zi.Free,zoomOnDoubleClick:Zn=!0,panOnDrag:fn=!0,onPaneClick:Vc,onPaneMouseEnter:ul,onPaneMouseMove:cl,onPaneMouseLeave:fl,onPaneScroll:sr,onPaneContextMenu:dl,paneClickDistance:bi=1,nodeClickDistance:$c=0,children:ss,onReconnect:ba,onReconnectStart:wi,onReconnectEnd:Gc,onEdgeContextMenu:us,onEdgeDoubleClick:cs,onEdgeMouseEnter:fs,onEdgeMouseMove:wa,onEdgeMouseLeave:Sa,reconnectRadius:ds=10,onNodesChange:hs,onEdgesChange:Kn,noDragClassName:Dt="nodrag",noWheelClassName:Gt="nowheel",noPanClassName:ur="nopan",fitView:hl,fitViewOptions:ps,connectOnClick:Fc,attributionPosition:ms,proOptions:Si,defaultEdgeOptions:_a,elevateNodesOnSelect:Br=!0,elevateEdgesOnSelect:Ir=!1,disableKeyboardA11y:qr=!1,autoPanOnConnect:Ur,autoPanOnNodeDrag:St,autoPanSpeed:gs,connectionRadius:xs,isValidConnection:cr,onError:Pr,style:Yc,id:ka,nodeDragThreshold:ys,connectionDragThreshold:Xc,viewport:pl,onViewportChange:ml,width:Ln,height:Wt,colorMode:vs="light",debug:Qc,onScroll:Vr,ariaLabelConfig:bs,zIndexMode:_i="basic",...Zc},en){const ki=ka||"1",ws=Sz(vs),Ea=V.useCallback(fr=>{fr.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),Vr==null||Vr(fr)},[Vr]);return b.jsx("div",{"data-testid":"rf__wrapper",...Zc,onScroll:Ea,style:{...Yc,...VM},ref:en,className:jt(["react-flow",a,ws]),id:ka,role:"application",children:b.jsxs(PM,{nodes:e,edges:n,width:Ln,height:Wt,fitView:hl,fitViewOptions:ps,minZoom:ue,maxZoom:ge,nodeOrigin:Ht,nodeExtent:Xe,zIndexMode:_i,children:[b.jsx(IM,{onInit:h,onNodeClick:c,onEdgeClick:d,onNodeMouseEnter:T,onNodeMouseMove:k,onNodeMouseLeave:A,onNodeContextMenu:q,onNodeDoubleClick:j,nodeTypes:o,edgeTypes:u,connectionLineType:Y,connectionLineStyle:N,connectionLineComponent:$,connectionLineContainerStyle:X,selectionKeyCode:ne,selectionOnDrag:re,selectionMode:se,deleteKeyCode:J,multiSelectionKeyCode:be,panActivationKeyCode:xe,zoomActivationKeyCode:ye,onlyRenderVisibleElements:ze,defaultViewport:Hr,translateExtent:Ne,minZoom:ue,maxZoom:ge,preventScrolling:Oe,zoomOnScroll:On,zoomOnPinch:Bt,zoomOnDoubleClick:Zn,panOnScroll:vt,panOnScrollSpeed:$t,panOnScrollMode:We,panOnDrag:fn,onPaneClick:Vc,onPaneMouseEnter:ul,onPaneMouseMove:cl,onPaneMouseLeave:fl,onPaneScroll:sr,onPaneContextMenu:dl,paneClickDistance:bi,nodeClickDistance:$c,onSelectionContextMenu:G,onSelectionStart:Q,onSelectionEnd:K,onReconnect:ba,onReconnectStart:wi,onReconnectEnd:Gc,onEdgeContextMenu:us,onEdgeDoubleClick:cs,onEdgeMouseEnter:fs,onEdgeMouseMove:wa,onEdgeMouseLeave:Sa,reconnectRadius:ds,defaultMarkerColor:Qt,noDragClassName:Dt,noWheelClassName:Gt,noPanClassName:ur,rfId:ki,disableKeyboardA11y:qr,nodeExtent:Xe,viewport:pl,onViewportChange:ml}),b.jsx(wz,{nodes:e,edges:n,defaultNodes:r,defaultEdges:l,onConnect:v,onConnectStart:w,onConnectEnd:E,onClickConnectStart:S,onClickConnectEnd:_,nodesDraggable:ut,autoPanOnNodeFocus:nt,nodesConnectable:zt,nodesFocusable:Vt,edgesFocusable:kn,edgesReconnectable:Rn,elementsSelectable:Mt,elevateNodesOnSelect:Br,elevateEdgesOnSelect:Ir,minZoom:ue,maxZoom:ge,nodeExtent:Xe,onNodesChange:hs,onEdgesChange:Kn,snapToGrid:pe,snapGrid:_e,connectionMode:I,translateExtent:Ne,connectOnClick:Fc,defaultEdgeOptions:_a,fitView:hl,fitViewOptions:ps,onNodesDelete:R,onEdgesDelete:H,onDelete:U,onNodeDragStart:L,onNodeDrag:O,onNodeDragStop:P,onSelectionDrag:F,onSelectionDragStart:B,onSelectionDragStop:z,onMove:m,onMoveStart:p,onMoveEnd:x,noPanClassName:ur,nodeOrigin:Ht,rfId:ki,autoPanOnConnect:Ur,autoPanOnNodeDrag:St,autoPanSpeed:gs,onError:Pr,connectionRadius:xs,isValidConnection:cr,selectNodesOnDrag:Te,nodeDragThreshold:ys,connectionDragThreshold:Xc,onBeforeDelete:M,debug:Qc,ariaLabelConfig:bs,zIndexMode:_i}),b.jsx(xz,{onSelectionChange:ee}),ss,b.jsx(dz,{proOptions:Si,position:ms}),b.jsx(fz,{rfId:ki,disableKeyboardA11y:qr})]})})}var GM=ZS($M);const FM=e=>{var n;return(n=e.domNode)==null?void 0:n.querySelector(".react-flow__edgelabel-renderer")};function YM({children:e}){const n=Ye(FM);return n?iz.createPortal(e,n):null}function XM(e){const[n,r]=V.useState(e),l=V.useCallback(a=>r(o=>XS(a,o)),[]);return[n,r,l]}function QM(e){const[n,r]=V.useState(e),l=V.useCallback(a=>r(o=>QS(a,o)),[]);return[n,r,l]}function ZM({dimensions:e,lineWidth:n,variant:r,className:l}){return b.jsx("path",{strokeWidth:n,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:jt(["react-flow__background-pattern",r,l])})}function KM({radius:e,className:n}){return b.jsx("circle",{cx:e,cy:e,r:e,className:jt(["react-flow__background-pattern","dots",n])})}var Mr;(function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"})(Mr||(Mr={}));const JM={[Mr.Dots]:1,[Mr.Lines]:1,[Mr.Cross]:6},WM=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function b_({id:e,variant:n=Mr.Dots,gap:r=20,size:l,lineWidth:a=1,offset:o=0,color:u,bgColor:c,style:d,className:h,patternClassName:m}){const p=V.useRef(null),{transform:x,patternId:v}=Ye(WM,pt),w=l||JM[n],E=n===Mr.Dots,S=n===Mr.Cross,_=Array.isArray(r)?r:[r,r],T=[_[0]*x[2]||1,_[1]*x[2]||1],k=w*x[2],A=Array.isArray(o)?o:[o,o],q=S?[k,k]:T,j=[A[0]*x[2]||1+q[0]/2,A[1]*x[2]||1+q[1]/2],L=`${v}${e||""}`;return b.jsxs("svg",{className:jt(["react-flow__background",h]),style:{...d,...Lc,"--xy-background-color-props":c,"--xy-background-pattern-color-props":u},ref:p,"data-testid":"rf__background",children:[b.jsx("pattern",{id:L,x:x[0]%T[0],y:x[1]%T[1],width:T[0],height:T[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${j[0]},-${j[1]})`,children:E?b.jsx(KM,{radius:k/2,className:m}):b.jsx(ZM,{dimensions:q,lineWidth:a,variant:n,className:m})}),b.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${L})`})]})}b_.displayName="Background";const e5=V.memo(b_);function t5(){return b.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:b.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function n5(){return b.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:b.jsx("path",{d:"M0 0h32v4.2H0z"})})}function r5(){return b.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:b.jsx("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 i5(){return b.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:b.jsx("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 l5(){return b.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:b.jsx("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"})})}function $u({children:e,className:n,...r}){return b.jsx("button",{type:"button",className:jt(["react-flow__controls-button",n]),...r,children:e})}const a5=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function w_({style:e,showZoom:n=!0,showFitView:r=!0,showInteractive:l=!0,fitViewOptions:a,onZoomIn:o,onZoomOut:u,onFitView:c,onInteractiveChange:d,className:h,children:m,position:p="bottom-left",orientation:x="vertical","aria-label":v}){const w=mt(),{isInteractive:E,minZoomReached:S,maxZoomReached:_,ariaLabelConfig:T}=Ye(a5,pt),{zoomIn:k,zoomOut:A,fitView:q}=ll(),j=()=>{k(),o==null||o()},L=()=>{A(),u==null||u()},O=()=>{q(a),c==null||c()},P=()=>{w.setState({nodesDraggable:!E,nodesConnectable:!E,elementsSelectable:!E}),d==null||d(!E)},R=x==="horizontal"?"horizontal":"vertical";return b.jsxs(Oc,{className:jt(["react-flow__controls",R,h]),position:p,style:e,"data-testid":"rf__controls","aria-label":v??T["controls.ariaLabel"],children:[n&&b.jsxs(b.Fragment,{children:[b.jsx($u,{onClick:j,className:"react-flow__controls-zoomin",title:T["controls.zoomIn.ariaLabel"],"aria-label":T["controls.zoomIn.ariaLabel"],disabled:_,children:b.jsx(t5,{})}),b.jsx($u,{onClick:L,className:"react-flow__controls-zoomout",title:T["controls.zoomOut.ariaLabel"],"aria-label":T["controls.zoomOut.ariaLabel"],disabled:S,children:b.jsx(n5,{})})]}),r&&b.jsx($u,{className:"react-flow__controls-fitview",onClick:O,title:T["controls.fitView.ariaLabel"],"aria-label":T["controls.fitView.ariaLabel"],children:b.jsx(r5,{})}),l&&b.jsx($u,{className:"react-flow__controls-interactive",onClick:P,title:T["controls.interactive.ariaLabel"],"aria-label":T["controls.interactive.ariaLabel"],children:E?b.jsx(l5,{}):b.jsx(i5,{})}),m]})}w_.displayName="Controls";const o5=V.memo(w_);function s5({id:e,x:n,y:r,width:l,height:a,style:o,color:u,strokeColor:c,strokeWidth:d,className:h,borderRadius:m,shapeRendering:p,selected:x,onClick:v}){const{background:w,backgroundColor:E}=o||{},S=u||w||E;return b.jsx("rect",{className:jt(["react-flow__minimap-node",{selected:x},h]),x:n,y:r,rx:m,ry:m,width:l,height:a,style:{fill:S,stroke:c,strokeWidth:d},shapeRendering:p,onClick:v?_=>v(_,e):void 0})}const u5=V.memo(s5),c5=e=>e.nodes.map(n=>n.id),Eh=e=>e instanceof Function?e:()=>e;function f5({nodeStrokeColor:e,nodeColor:n,nodeClassName:r="",nodeBorderRadius:l=5,nodeStrokeWidth:a,nodeComponent:o=u5,onClick:u}){const c=Ye(c5,pt),d=Eh(n),h=Eh(e),m=Eh(r),p=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return b.jsx(b.Fragment,{children:c.map(x=>b.jsx(h5,{id:x,nodeColorFunc:d,nodeStrokeColorFunc:h,nodeClassNameFunc:m,nodeBorderRadius:l,nodeStrokeWidth:a,NodeComponent:o,onClick:u,shapeRendering:p},x))})}function d5({id:e,nodeColorFunc:n,nodeStrokeColorFunc:r,nodeClassNameFunc:l,nodeBorderRadius:a,nodeStrokeWidth:o,shapeRendering:u,NodeComponent:c,onClick:d}){const{node:h,x:m,y:p,width:x,height:v}=Ye(w=>{const E=w.nodeLookup.get(e);if(!E)return{node:void 0,x:0,y:0,width:0,height:0};const S=E.internals.userNode,{x:_,y:T}=E.internals.positionAbsolute,{width:k,height:A}=Or(S);return{node:S,x:_,y:T,width:k,height:A}},pt);return!h||h.hidden||!_S(h)?null:b.jsx(c,{x:m,y:p,width:x,height:v,style:h.style,selected:!!h.selected,className:l(h),color:n(h),borderRadius:a,strokeColor:r(h),strokeWidth:o,shapeRendering:u,onClick:d,id:h.id})}const h5=V.memo(d5);var p5=V.memo(f5);const m5=200,g5=150,x5=e=>!e.hidden,y5=e=>{const n={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:n,boundingRect:e.nodeLookup.size>0?SS(es(e.nodeLookup,{filter:x5}),n):n,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},v5="react-flow__minimap-desc";function S_({style:e,className:n,nodeStrokeColor:r,nodeColor:l,nodeClassName:a="",nodeBorderRadius:o=5,nodeStrokeWidth:u,nodeComponent:c,bgColor:d,maskColor:h,maskStrokeColor:m,maskStrokeWidth:p,position:x="bottom-right",onClick:v,onNodeClick:w,pannable:E=!1,zoomable:S=!1,ariaLabel:_,inversePan:T,zoomStep:k=1,offsetScale:A=5}){const q=mt(),j=V.useRef(null),{boundingRect:L,viewBB:O,rfId:P,panZoom:R,translateExtent:H,flowWidth:U,flowHeight:ee,ariaLabelConfig:B}=Ye(y5,pt),F=(e==null?void 0:e.width)??m5,z=(e==null?void 0:e.height)??g5,G=L.width/F,Q=L.height/z,K=Math.max(G,Q),M=K*F,I=K*z,Y=A*K,N=L.x-(M-L.width)/2-Y,$=L.y-(I-L.height)/2-Y,X=M+Y*2,J=I+Y*2,ne=`${v5}-${P}`,re=V.useRef(0),se=V.useRef();re.current=K,V.useEffect(()=>{if(j.current&&R)return se.current=zj({domNode:j.current,panZoom:R,getTransform:()=>q.getState().transform,getViewScale:()=>re.current}),()=>{var pe;(pe=se.current)==null||pe.destroy()}},[R]),V.useEffect(()=>{var pe;(pe=se.current)==null||pe.update({translateExtent:H,width:U,height:ee,inversePan:T,pannable:E,zoomStep:k,zoomable:S})},[E,S,T,k,H,U,ee]);const xe=v?pe=>{var Te;const[_e,ze]=((Te=se.current)==null?void 0:Te.pointer(pe))||[0,0];v(pe,{x:_e,y:ze})}:void 0,be=w?V.useCallback((pe,_e)=>{const ze=q.getState().nodeLookup.get(_e).internals.userNode;w(pe,ze)},[]):void 0,ye=_??B["minimap.ariaLabel"];return b.jsx(Oc,{position:x,style:{...e,"--xy-minimap-background-color-props":typeof d=="string"?d:void 0,"--xy-minimap-mask-background-color-props":typeof h=="string"?h:void 0,"--xy-minimap-mask-stroke-color-props":typeof m=="string"?m:void 0,"--xy-minimap-mask-stroke-width-props":typeof p=="number"?p*K:void 0,"--xy-minimap-node-background-color-props":typeof l=="string"?l:void 0,"--xy-minimap-node-stroke-color-props":typeof r=="string"?r:void 0,"--xy-minimap-node-stroke-width-props":typeof u=="number"?u:void 0},className:jt(["react-flow__minimap",n]),"data-testid":"rf__minimap",children:b.jsxs("svg",{width:F,height:z,viewBox:`${N} ${$} ${X} ${J}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":ne,ref:j,onClick:xe,children:[ye&&b.jsx("title",{id:ne,children:ye}),b.jsx(p5,{onClick:be,nodeColor:l,nodeStrokeColor:r,nodeBorderRadius:o,nodeClassName:a,nodeStrokeWidth:u,nodeComponent:c}),b.jsx("path",{className:"react-flow__minimap-mask",d:`M${N-Y},${$-Y}h${X+Y*2}v${J+Y*2}h${-X-Y*2}z - M${O.x},${O.y}h${O.width}v${O.height}h${-O.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}S_.displayName="MiniMap";const b5=V.memo(S_),w5=e=>n=>e?`${Math.max(1/n.transform[2],1)}`:void 0,S5={[ma.Line]:"right",[ma.Handle]:"bottom-right"};function _5({nodeId:e,position:n,variant:r=ma.Handle,className:l,style:a=void 0,children:o,color:u,minWidth:c=10,minHeight:d=10,maxWidth:h=Number.MAX_VALUE,maxHeight:m=Number.MAX_VALUE,keepAspectRatio:p=!1,resizeDirection:x,autoScale:v=!0,shouldResize:w,onResizeStart:E,onResize:S,onResizeEnd:_}){const T=e_(),k=typeof e=="string"?e:T,A=mt(),q=V.useRef(null),j=r===ma.Handle,L=Ye(V.useCallback(w5(j&&v),[j,v]),pt),O=V.useRef(null),P=n??S5[r];V.useEffect(()=>{if(!(!q.current||!k))return O.current||(O.current=Gj({domNode:q.current,nodeId:k,getStoreItems:()=>{const{nodeLookup:H,transform:U,snapGrid:ee,snapToGrid:B,nodeOrigin:F,domNode:z}=A.getState();return{nodeLookup:H,transform:U,snapGrid:ee,snapToGrid:B,nodeOrigin:F,paneDomNode:z}},onChange:(H,U)=>{const{triggerNodeChanges:ee,nodeLookup:B,parentLookup:F,nodeOrigin:z}=A.getState(),G=[],Q={x:H.x,y:H.y},K=B.get(k);if(K&&K.expandParent&&K.parentId){const M=K.origin??z,I=H.width??K.measured.width??0,Y=H.height??K.measured.height??0,N={id:K.id,parentId:K.parentId,rect:{width:I,height:Y,...kS({x:H.x??K.position.x,y:H.y??K.position.y},{width:I,height:Y},K.parentId,B,M)}},$=Lm([N],B,F,z);G.push(...$),Q.x=H.x?Math.max(M[0]*I,H.x):void 0,Q.y=H.y?Math.max(M[1]*Y,H.y):void 0}if(Q.x!==void 0&&Q.y!==void 0){const M={id:k,type:"position",position:{...Q}};G.push(M)}if(H.width!==void 0&&H.height!==void 0){const I={id:k,type:"dimensions",resizing:!0,setAttributes:x?x==="horizontal"?"width":"height":!0,dimensions:{width:H.width,height:H.height}};G.push(I)}for(const M of U){const I={...M,type:"position"};G.push(I)}ee(G)},onEnd:({width:H,height:U})=>{const ee={id:k,type:"dimensions",resizing:!1,dimensions:{width:H,height:U}};A.getState().triggerNodeChanges([ee])}})),O.current.update({controlPosition:P,boundaries:{minWidth:c,minHeight:d,maxWidth:h,maxHeight:m},keepAspectRatio:p,resizeDirection:x,onResizeStart:E,onResize:S,onResizeEnd:_,shouldResize:w}),()=>{var H;(H=O.current)==null||H.destroy()}},[P,c,d,h,m,p,E,S,_,w]);const R=P.split("-");return b.jsx("div",{className:jt(["react-flow__resize-control","nodrag",...R,r,l]),ref:q,style:{...a,scale:L,...u&&{[j?"backgroundColor":"borderColor"]:u}},children:o})}V.memo(_5);function is(e,n){if(n.length===0)return null;let r=e[n[0]];for(let l=1;l l.viewContextPath),n=fe(l=>l.nodes),r=fe(l=>l.subworkflowContexts);return V.useMemo(()=>{var l;return e.length===0?n:((l=is(r,e))==null?void 0:l.nodes)??n},[e,n,r])}function k5(){const e=fe(l=>l.viewContextPath),n=fe(l=>l.groupProgress),r=fe(l=>l.subworkflowContexts);return V.useMemo(()=>{var l;return e.length===0?n:((l=is(r,e))==null?void 0:l.groupProgress)??n},[e,n,r])}function E5(){const e=fe(l=>l.viewContextPath),n=fe(l=>l.highlightedEdges),r=fe(l=>l.subworkflowContexts);return V.useMemo(()=>{var l;return e.length===0?n:((l=is(r,e))==null?void 0:l.highlightedEdges)??n},[e,n,r])}function __(){const e=fe(r=>r.viewContextPath),n=fe(r=>r.subworkflowContexts);return V.useMemo(()=>{var r;return e.length===0?n:((r=is(n,e))==null?void 0:r.children)??[]},[e,n])}function N5(){const e=fe(h=>h.viewContextPath),n=fe(h=>h.agents),r=fe(h=>h.routes),l=fe(h=>h.parallelGroups),a=fe(h=>h.forEachGroups),o=fe(h=>h.nodes),u=fe(h=>h.groupProgress),c=fe(h=>h.entryPoint),d=fe(h=>h.subworkflowContexts);return V.useMemo(()=>{if(e.length===0)return{agents:n,routes:r,parallelGroups:l,forEachGroups:a,nodes:o,groupProgress:u,entryPoint:c,subworkflowContexts:d,parentAgent:null};const h=is(d,e);return h?{agents:h.agents,routes:h.routes,parallelGroups:h.parallelGroups,forEachGroups:h.forEachGroups,nodes:h.nodes,groupProgress:h.groupProgress,entryPoint:h.entryPoint,subworkflowContexts:h.children,parentAgent:h.parentAgent}:{agents:n,routes:r,parallelGroups:l,forEachGroups:a,nodes:o,groupProgress:u,entryPoint:c,subworkflowContexts:d,parentAgent:null}},[e,n,r,l,a,o,u,c,d])}function C5(){const e=new URLSearchParams(window.location.search);return{subworkflowPath:e.get("subworkflow"),agent:e.get("agent")}}function gb(e,n){const r=[];let l=e;for(const a of n){let o=-1;for(let u=l.length-1;u>=0;u--)if(l[u].slotKey===a){o=u;break}if(o===-1){for(let u=l.length-1;u>=0;u--)if(l[u].parentAgent===a){o=u;break}}if(o===-1)return{path:r,failedSegment:a};r.push(o),l=l[o].children}return{path:r,failedSegment:null}}function tm(e,n,r=[]){const l=[];for(let a=0;a c.name===n)&&l.push({path:u,ctx:o}),o.children.length>0&&l.push(...tm(o.children,n,u))}return l}function T5(e){return e.length===0?null:[...e].sort((n,r)=>{const l=n.ctx.status==="running"?1:0,a=r.ctx.status==="running"?1:0;if(l!==a)return a-l;if(n.path.length!==r.path.length)return r.path.length-n.path.length;for(let o=0;o {if(r.current||!u)return;let c=null,d=null,h=null;const m=()=>{if(r.current)return;r.current=!0,c&&clearTimeout(c),d&&clearTimeout(d),h&&h();const v=fe.getState();if(v.agents.length===0){n({message:"Workflow state did not load."});return}let w=[];if(a){const E=a.split("/").filter(Boolean),S=gb(v.subworkflowContexts,E);if(S.failedSegment){const _=E.slice(0,S.path.length).join("/");n({message:`Subworkflow "${S.failedSegment}" not found${_?` (resolved: ${_})`:""}. It may not have started yet.`});return}w=S.path}if(o){if((w.length===0?v.agents:(()=>{let S,_=v.subworkflowContexts;for(const T of w){if(S=_[T],!S)break;_=S.children}return(S==null?void 0:S.agents)??[]})()).some(S=>S.name===o))fe.setState({viewContextPath:w,selectedNode:o});else{const S=tm(v.subworkflowContexts,o);if(S.length===0){const T=a||"root workflow";fe.setState({viewContextPath:w,selectedNode:null}),n({message:`Agent "${o}" not found in ${T}.`});return}if(a){const T=S.slice(0,5).map(A=>A5(v.subworkflowContexts,A.path)).join(", "),k=S.length>5?`, and ${S.length-5} more`:"";fe.setState({viewContextPath:w,selectedNode:null}),n({message:`Agent "${o}" not found in ${a}. Found in: ${T}${k}`});return}const _=T5(S);fe.setState({viewContextPath:_.path,selectedNode:o})}setTimeout(()=>{l({nodes:[{id:o}],padding:.5,duration:400})},200)}else a&&fe.setState({viewContextPath:w,selectedNode:null})},p=()=>{const v=fe.getState();if(v.agents.length===0)return!1;if(v.workflowStatus!=="running"&&v.workflowStatus!=="pending")return!0;if(a){const w=a.split("/").filter(Boolean),{failedSegment:E}=gb(v.subworkflowContexts,w);if(E)return!1}return!(o&&!a&&!v.agents.some(E=>E.name===o)&&tm(v.subworkflowContexts,o).length===0)},x=()=>{c&&clearTimeout(c),c=setTimeout(()=>{r.current||p()&&m()},200)};return h=fe.subscribe(x),d=setTimeout(()=>{r.current||m()},5e3),x(),()=>{c&&clearTimeout(c),d&&clearTimeout(d),h&&h()}},[u,a,o,l]),e}var Nh,xb;function Bm(){if(xb)return Nh;xb=1;var e="\0",n="\0",r="";class l{constructor(m){Ct(this,"_isDirected",!0);Ct(this,"_isMultigraph",!1);Ct(this,"_isCompound",!1);Ct(this,"_label");Ct(this,"_defaultNodeLabelFn",()=>{});Ct(this,"_defaultEdgeLabelFn",()=>{});Ct(this,"_nodes",{});Ct(this,"_in",{});Ct(this,"_preds",{});Ct(this,"_out",{});Ct(this,"_sucs",{});Ct(this,"_edgeObjs",{});Ct(this,"_edgeLabels",{});Ct(this,"_nodeCount",0);Ct(this,"_edgeCount",0);Ct(this,"_parent");Ct(this,"_children");m&&(this._isDirected=Object.hasOwn(m,"directed")?m.directed:!0,this._isMultigraph=Object.hasOwn(m,"multigraph")?m.multigraph:!1,this._isCompound=Object.hasOwn(m,"compound")?m.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[n]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(m){return this._label=m,this}graph(){return this._label}setDefaultNodeLabel(m){return this._defaultNodeLabelFn=m,typeof m!="function"&&(this._defaultNodeLabelFn=()=>m),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var m=this;return this.nodes().filter(p=>Object.keys(m._in[p]).length===0)}sinks(){var m=this;return this.nodes().filter(p=>Object.keys(m._out[p]).length===0)}setNodes(m,p){var x=arguments,v=this;return m.forEach(function(w){x.length>1?v.setNode(w,p):v.setNode(w)}),this}setNode(m,p){return Object.hasOwn(this._nodes,m)?(arguments.length>1&&(this._nodes[m]=p),this):(this._nodes[m]=arguments.length>1?p:this._defaultNodeLabelFn(m),this._isCompound&&(this._parent[m]=n,this._children[m]={},this._children[n][m]=!0),this._in[m]={},this._preds[m]={},this._out[m]={},this._sucs[m]={},++this._nodeCount,this)}node(m){return this._nodes[m]}hasNode(m){return Object.hasOwn(this._nodes,m)}removeNode(m){var p=this;if(Object.hasOwn(this._nodes,m)){var x=v=>p.removeEdge(p._edgeObjs[v]);delete this._nodes[m],this._isCompound&&(this._removeFromParentsChildList(m),delete this._parent[m],this.children(m).forEach(function(v){p.setParent(v)}),delete this._children[m]),Object.keys(this._in[m]).forEach(x),delete this._in[m],delete this._preds[m],Object.keys(this._out[m]).forEach(x),delete this._out[m],delete this._sucs[m],--this._nodeCount}return this}setParent(m,p){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(p===void 0)p=n;else{p+="";for(var x=p;x!==void 0;x=this.parent(x))if(x===m)throw new Error("Setting "+p+" as parent of "+m+" would create a cycle");this.setNode(p)}return this.setNode(m),this._removeFromParentsChildList(m),this._parent[m]=p,this._children[p][m]=!0,this}_removeFromParentsChildList(m){delete this._children[this._parent[m]][m]}parent(m){if(this._isCompound){var p=this._parent[m];if(p!==n)return p}}children(m=n){if(this._isCompound){var p=this._children[m];if(p)return Object.keys(p)}else{if(m===n)return this.nodes();if(this.hasNode(m))return[]}}predecessors(m){var p=this._preds[m];if(p)return Object.keys(p)}successors(m){var p=this._sucs[m];if(p)return Object.keys(p)}neighbors(m){var p=this.predecessors(m);if(p){const v=new Set(p);for(var x of this.successors(m))v.add(x);return Array.from(v.values())}}isLeaf(m){var p;return this.isDirected()?p=this.successors(m):p=this.neighbors(m),p.length===0}filterNodes(m){var p=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});p.setGraph(this.graph());var x=this;Object.entries(this._nodes).forEach(function([E,S]){m(E)&&p.setNode(E,S)}),Object.values(this._edgeObjs).forEach(function(E){p.hasNode(E.v)&&p.hasNode(E.w)&&p.setEdge(E,x.edge(E))});var v={};function w(E){var S=x.parent(E);return S===void 0||p.hasNode(S)?(v[E]=S,S):S in v?v[S]:w(S)}return this._isCompound&&p.nodes().forEach(E=>p.setParent(E,w(E))),p}setDefaultEdgeLabel(m){return this._defaultEdgeLabelFn=m,typeof m!="function"&&(this._defaultEdgeLabelFn=()=>m),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(m,p){var x=this,v=arguments;return m.reduce(function(w,E){return v.length>1?x.setEdge(w,E,p):x.setEdge(w,E),E}),this}setEdge(){var m,p,x,v,w=!1,E=arguments[0];typeof E=="object"&&E!==null&&"v"in E?(m=E.v,p=E.w,x=E.name,arguments.length===2&&(v=arguments[1],w=!0)):(m=E,p=arguments[1],x=arguments[3],arguments.length>2&&(v=arguments[2],w=!0)),m=""+m,p=""+p,x!==void 0&&(x=""+x);var S=u(this._isDirected,m,p,x);if(Object.hasOwn(this._edgeLabels,S))return w&&(this._edgeLabels[S]=v),this;if(x!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(m),this.setNode(p),this._edgeLabels[S]=w?v:this._defaultEdgeLabelFn(m,p,x);var _=c(this._isDirected,m,p,x);return m=_.v,p=_.w,Object.freeze(_),this._edgeObjs[S]=_,a(this._preds[p],m),a(this._sucs[m],p),this._in[p][S]=_,this._out[m][S]=_,this._edgeCount++,this}edge(m,p,x){var v=arguments.length===1?d(this._isDirected,arguments[0]):u(this._isDirected,m,p,x);return this._edgeLabels[v]}edgeAsObj(){const m=this.edge(...arguments);return typeof m!="object"?{label:m}:m}hasEdge(m,p,x){var v=arguments.length===1?d(this._isDirected,arguments[0]):u(this._isDirected,m,p,x);return Object.hasOwn(this._edgeLabels,v)}removeEdge(m,p,x){var v=arguments.length===1?d(this._isDirected,arguments[0]):u(this._isDirected,m,p,x),w=this._edgeObjs[v];return w&&(m=w.v,p=w.w,delete this._edgeLabels[v],delete this._edgeObjs[v],o(this._preds[p],m),o(this._sucs[m],p),delete this._in[p][v],delete this._out[m][v],this._edgeCount--),this}inEdges(m,p){var x=this._in[m];if(x){var v=Object.values(x);return p?v.filter(w=>w.v===p):v}}outEdges(m,p){var x=this._out[m];if(x){var v=Object.values(x);return p?v.filter(w=>w.w===p):v}}nodeEdges(m,p){var x=this.inEdges(m,p);if(x)return x.concat(this.outEdges(m,p))}}function a(h,m){h[m]?h[m]++:h[m]=1}function o(h,m){--h[m]||delete h[m]}function u(h,m,p,x){var v=""+m,w=""+p;if(!h&&v>w){var E=v;v=w,w=E}return v+r+w+r+(x===void 0?e:x)}function c(h,m,p,x){var v=""+m,w=""+p;if(!h&&v>w){var E=v;v=w,w=E}var S={v,w};return x&&(S.name=x),S}function d(h,m){return u(h,m.v,m.w,m.name)}return Nh=l,Nh}var Ch,yb;function z5(){return yb||(yb=1,Ch="2.2.4"),Ch}var Th,vb;function M5(){return vb||(vb=1,Th={Graph:Bm(),version:z5()}),Th}var Ah,bb;function D5(){if(bb)return Ah;bb=1;var e=Bm();Ah={write:n,read:a};function n(o){var u={options:{directed:o.isDirected(),multigraph:o.isMultigraph(),compound:o.isCompound()},nodes:r(o),edges:l(o)};return o.graph()!==void 0&&(u.value=structuredClone(o.graph())),u}function r(o){return o.nodes().map(function(u){var c=o.node(u),d=o.parent(u),h={v:u};return c!==void 0&&(h.value=c),d!==void 0&&(h.parent=d),h})}function l(o){return o.edges().map(function(u){var c=o.edge(u),d={v:u.v,w:u.w};return u.name!==void 0&&(d.name=u.name),c!==void 0&&(d.value=c),d})}function a(o){var u=new e(o.options).setGraph(o.value);return o.nodes.forEach(function(c){u.setNode(c.v,c.value),c.parent&&u.setParent(c.v,c.parent)}),o.edges.forEach(function(c){u.setEdge({v:c.v,w:c.w,name:c.name},c.value)}),u}return Ah}var jh,wb;function R5(){if(wb)return jh;wb=1,jh=e;function e(n){var r={},l=[],a;function o(u){Object.hasOwn(r,u)||(r[u]=!0,a.push(u),n.successors(u).forEach(o),n.predecessors(u).forEach(o))}return n.nodes().forEach(function(u){a=[],o(u),a.length&&l.push(a)}),l}return jh}var zh,Sb;function k_(){if(Sb)return zh;Sb=1;class e{constructor(){Ct(this,"_arr",[]);Ct(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(r){return r.key})}has(r){return Object.hasOwn(this._keyIndices,r)}priority(r){var l=this._keyIndices[r];if(l!==void 0)return this._arr[l].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(r,l){var a=this._keyIndices;if(r=String(r),!Object.hasOwn(a,r)){var o=this._arr,u=o.length;return a[r]=u,o.push({key:r,priority:l}),this._decrease(u),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var r=this._arr.pop();return delete this._keyIndices[r.key],this._heapify(0),r.key}decrease(r,l){var a=this._keyIndices[r];if(l>this._arr[a].priority)throw new Error("New priority is greater than current priority. Key: "+r+" Old: "+this._arr[a].priority+" New: "+l);this._arr[a].priority=l,this._decrease(a)}_heapify(r){var l=this._arr,a=2*r,o=a+1,u=r;a >1,!(l[o].priority1;function r(a,o,u,c){return l(a,String(o),u||n,c||function(d){return a.outEdges(d)})}function l(a,o,u,c){var d={},h=new e,m,p,x=function(v){var w=v.v!==m?v.v:v.w,E=d[w],S=u(v),_=p.distance+S;if(S<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+v+" Weight: "+S);_ 0&&(m=h.removeMin(),p=d[m],p.distance!==Number.POSITIVE_INFINITY);)c(m).forEach(x);return d}return Mh}var Dh,kb;function O5(){if(kb)return Dh;kb=1;var e=E_();Dh=n;function n(r,l,a){return r.nodes().reduce(function(o,u){return o[u]=e(r,u,l,a),o},{})}return Dh}var Rh,Eb;function N_(){if(Eb)return Rh;Eb=1,Rh=e;function e(n){var r=0,l=[],a={},o=[];function u(c){var d=a[c]={onStack:!0,lowlink:r,index:r++};if(l.push(c),n.successors(c).forEach(function(p){Object.hasOwn(a,p)?a[p].onStack&&(d.lowlink=Math.min(d.lowlink,a[p].index)):(u(p),d.lowlink=Math.min(d.lowlink,a[p].lowlink))}),d.lowlink===d.index){var h=[],m;do m=l.pop(),a[m].onStack=!1,h.push(m);while(c!==m);o.push(h)}}return n.nodes().forEach(function(c){Object.hasOwn(a,c)||u(c)}),o}return Rh}var Oh,Nb;function L5(){if(Nb)return Oh;Nb=1;var e=N_();Oh=n;function n(r){return e(r).filter(function(l){return l.length>1||l.length===1&&r.hasEdge(l[0],l[0])})}return Oh}var Lh,Cb;function H5(){if(Cb)return Lh;Cb=1,Lh=n;var e=()=>1;function n(l,a,o){return r(l,a||e,o||function(u){return l.outEdges(u)})}function r(l,a,o){var u={},c=l.nodes();return c.forEach(function(d){u[d]={},u[d][d]={distance:0},c.forEach(function(h){d!==h&&(u[d][h]={distance:Number.POSITIVE_INFINITY})}),o(d).forEach(function(h){var m=h.v===d?h.w:h.v,p=a(h);u[d][m]={distance:p,predecessor:d}})}),c.forEach(function(d){var h=u[d];c.forEach(function(m){var p=u[m];c.forEach(function(x){var v=p[d],w=h[x],E=p[x],S=v.distance+w.distance;S a.successors(p):p=>a.neighbors(p),d=u==="post"?n:r,h=[],m={};return o.forEach(p=>{if(!a.hasNode(p))throw new Error("Graph does not have node: "+p);d(p,c,m,h)}),h}function n(a,o,u,c){for(var d=[[a,!1]];d.length>0;){var h=d.pop();h[1]?c.push(h[0]):Object.hasOwn(u,h[0])||(u[h[0]]=!0,d.push([h[0],!0]),l(o(h[0]),m=>d.push([m,!1])))}}function r(a,o,u,c){for(var d=[a];d.length>0;){var h=d.pop();Object.hasOwn(u,h)||(u[h]=!0,c.push(h),l(o(h),m=>d.push(m)))}}function l(a,o){for(var u=a.length;u--;)o(a[u],u,a);return a}return Ih}var qh,zb;function I5(){if(zb)return qh;zb=1;var e=T_();qh=n;function n(r,l){return e(r,l,"post")}return qh}var Uh,Mb;function q5(){if(Mb)return Uh;Mb=1;var e=T_();Uh=n;function n(r,l){return e(r,l,"pre")}return Uh}var Ph,Db;function U5(){if(Db)return Ph;Db=1;var e=Bm(),n=k_();Ph=r;function r(l,a){var o=new e,u={},c=new n,d;function h(p){var x=p.v===d?p.w:p.v,v=c.priority(x);if(v!==void 0){var w=a(p);w 0;){if(d=c.removeMin(),Object.hasOwn(u,d))o.setEdge(d,u[d]);else{if(m)throw new Error("Input graph is not connected: "+l);m=!0}l.nodeEdges(d).forEach(h)}return o}return Ph}var Vh,Rb;function P5(){return Rb||(Rb=1,Vh={components:R5(),dijkstra:E_(),dijkstraAll:O5(),findCycles:L5(),floydWarshall:H5(),isAcyclic:B5(),postorder:I5(),preorder:q5(),prim:U5(),tarjan:N_(),topsort:C_()}),Vh}var $h,Ob;function Xn(){if(Ob)return $h;Ob=1;var e=M5();return $h={Graph:e.Graph,json:D5(),alg:P5(),version:e.version},$h}var Gh,Lb;function V5(){if(Lb)return Gh;Lb=1;class e{constructor(){let a={};a._next=a._prev=a,this._sentinel=a}dequeue(){let a=this._sentinel,o=a._prev;if(o!==a)return n(o),o}enqueue(a){let o=this._sentinel;a._prev&&a._next&&n(a),a._next=o._next,o._next._prev=a,o._next=a,a._prev=o}toString(){let a=[],o=this._sentinel,u=o._prev;for(;u!==o;)a.push(JSON.stringify(u,r)),u=u._prev;return"["+a.join(", ")+"]"}}function n(l){l._prev._next=l._next,l._next._prev=l._prev,delete l._next,delete l._prev}function r(l,a){if(l!=="_next"&&l!=="_prev")return a}return Gh=e,Gh}var Fh,Hb;function $5(){if(Hb)return Fh;Hb=1;let e=Xn().Graph,n=V5();Fh=l;let r=()=>1;function l(h,m){if(h.nodeCount()<=1)return[];let p=u(h,m||r);return a(p.graph,p.buckets,p.zeroIdx).flatMap(v=>h.outEdges(v.v,v.w))}function a(h,m,p){let x=[],v=m[m.length-1],w=m[0],E;for(;h.nodeCount();){for(;E=w.dequeue();)o(h,m,p,E);for(;E=v.dequeue();)o(h,m,p,E);if(h.nodeCount()){for(let S=m.length-2;S>0;--S)if(E=m[S].dequeue(),E){x=x.concat(o(h,m,p,E,!0));break}}}return x}function o(h,m,p,x,v){let w=v?[]:void 0;return h.inEdges(x.v).forEach(E=>{let S=h.edge(E),_=h.node(E.v);v&&w.push({v:E.v,w:E.w}),_.out-=S,c(m,p,_)}),h.outEdges(x.v).forEach(E=>{let S=h.edge(E),_=E.w,T=h.node(_);T.in-=S,c(m,p,T)}),h.removeNode(x.v),w}function u(h,m){let p=new e,x=0,v=0;h.nodes().forEach(S=>{p.setNode(S,{v:S,in:0,out:0})}),h.edges().forEach(S=>{let _=p.edge(S.v,S.w)||0,T=m(S),k=_+T;p.setEdge(S.v,S.w,k),v=Math.max(v,p.node(S.v).out+=T),x=Math.max(x,p.node(S.w).in+=T)});let w=d(v+x+3).map(()=>new n),E=x+1;return p.nodes().forEach(S=>{c(w,E,p.node(S))}),{graph:p,buckets:w,zeroIdx:E}}function c(h,m,p){p.out?p.in?h[p.out-p.in+m].enqueue(p):h[h.length-1].enqueue(p):h[0].enqueue(p)}function d(h){const m=[];for(let p=0;p P.setNode(R,O.node(R))),O.edges().forEach(R=>{let H=P.edge(R.v,R.w)||{weight:0,minlen:1},U=O.edge(R);P.setEdge(R.v,R.w,{weight:H.weight+U.weight,minlen:Math.max(H.minlen,U.minlen)})}),P}function l(O){let P=new e({multigraph:O.isMultigraph()}).setGraph(O.graph());return O.nodes().forEach(R=>{O.children(R).length||P.setNode(R,O.node(R))}),O.edges().forEach(R=>{P.setEdge(R,O.edge(R))}),P}function a(O){let P=O.nodes().map(R=>{let H={};return O.outEdges(R).forEach(U=>{H[U.w]=(H[U.w]||0)+O.edge(U).weight}),H});return L(O.nodes(),P)}function o(O){let P=O.nodes().map(R=>{let H={};return O.inEdges(R).forEach(U=>{H[U.v]=(H[U.v]||0)+O.edge(U).weight}),H});return L(O.nodes(),P)}function u(O,P){let R=O.x,H=O.y,U=P.x-R,ee=P.y-H,B=O.width/2,F=O.height/2;if(!U&&!ee)throw new Error("Not possible to find intersection inside of the rectangle");let z,G;return Math.abs(ee)*B>Math.abs(U)*F?(ee<0&&(F=-F),z=F*U/ee,G=F):(U<0&&(B=-B),z=B,G=B*ee/U),{x:R+z,y:H+G}}function c(O){let P=A(w(O)+1).map(()=>[]);return O.nodes().forEach(R=>{let H=O.node(R),U=H.rank;U!==void 0&&(P[U][H.order]=R)}),P}function d(O){let P=O.nodes().map(H=>{let U=O.node(H).rank;return U===void 0?Number.MAX_VALUE:U}),R=v(Math.min,P);O.nodes().forEach(H=>{let U=O.node(H);Object.hasOwn(U,"rank")&&(U.rank-=R)})}function h(O){let P=O.nodes().map(B=>O.node(B).rank),R=v(Math.min,P),H=[];O.nodes().forEach(B=>{let F=O.node(B).rank-R;H[F]||(H[F]=[]),H[F].push(B)});let U=0,ee=O.graph().nodeRankFactor;Array.from(H).forEach((B,F)=>{B===void 0&&F%ee!==0?--U:B!==void 0&&U&&B.forEach(z=>O.node(z).rank+=U)})}function m(O,P,R,H){let U={width:0,height:0};return arguments.length>=4&&(U.rank=R,U.order=H),n(O,"border",U,P)}function p(O,P=x){const R=[];for(let H=0;H x){const R=p(P);return O.apply(null,R.map(H=>O.apply(null,H)))}else return O.apply(null,P)}function w(O){const R=O.nodes().map(H=>{let U=O.node(H).rank;return U===void 0?Number.MIN_VALUE:U});return v(Math.max,R)}function E(O,P){let R={lhs:[],rhs:[]};return O.forEach(H=>{P(H)?R.lhs.push(H):R.rhs.push(H)}),R}function S(O,P){let R=Date.now();try{return P()}finally{console.log(O+" time: "+(Date.now()-R)+"ms")}}function _(O,P){return P()}let T=0;function k(O){var P=++T;return O+(""+P)}function A(O,P,R=1){P==null&&(P=O,O=0);let H=ee=>ee P
H[P]),Object.entries(O).reduce((H,[U,ee])=>(H[U]=R(ee,U),H),{})}function L(O,P){return O.reduce((R,H,U)=>(R[H]=P[U],R),{})}return Yh}var Xh,Ib;function G5(){if(Ib)return Xh;Ib=1;let e=$5(),n=At().uniqueId;Xh={run:r,undo:a};function r(o){(o.graph().acyclicer==="greedy"?e(o,c(o)):l(o)).forEach(d=>{let h=o.edge(d);o.removeEdge(d),h.forwardName=d.name,h.reversed=!0,o.setEdge(d.w,d.v,h,n("rev"))});function c(d){return h=>d.edge(h).weight}}function l(o){let u=[],c={},d={};function h(m){Object.hasOwn(d,m)||(d[m]=!0,c[m]=!0,o.outEdges(m).forEach(p=>{Object.hasOwn(c,p.w)?u.push(p):h(p.w)}),delete c[m])}return o.nodes().forEach(h),u}function a(o){o.edges().forEach(u=>{let c=o.edge(u);if(c.reversed){o.removeEdge(u);let d=c.forwardName;delete c.reversed,delete c.forwardName,o.setEdge(u.w,u.v,c,d)}})}return Xh}var Qh,qb;function F5(){if(qb)return Qh;qb=1;let e=At();Qh={run:n,undo:l};function n(a){a.graph().dummyChains=[],a.edges().forEach(o=>r(a,o))}function r(a,o){let u=o.v,c=a.node(u).rank,d=o.w,h=a.node(d).rank,m=o.name,p=a.edge(o),x=p.labelRank;if(h===c+1)return;a.removeEdge(o);let v,w,E;for(E=0,++c;c {let u=a.node(o),c=u.edgeLabel,d;for(a.setEdge(u.edgeObj,c);u.dummy;)d=a.successors(o)[0],a.removeNode(o),c.points.push({x:u.x,y:u.y}),u.dummy==="edge-label"&&(c.x=u.x,c.y=u.y,c.width=u.width,c.height=u.height),o=d,u=a.node(o)})}return Qh}var Zh,Ub;function xc(){if(Ub)return Zh;Ub=1;const{applyWithChunking:e}=At();Zh={longestPath:n,slack:r};function n(l){var a={};function o(u){var c=l.node(u);if(Object.hasOwn(a,u))return c.rank;a[u]=!0;let d=l.outEdges(u).map(m=>m==null?Number.POSITIVE_INFINITY:o(m.w)-l.edge(m).minlen);var h=e(Math.min,d);return h===Number.POSITIVE_INFINITY&&(h=0),c.rank=h}l.sources().forEach(o)}function r(l,a){return l.node(a.w).rank-l.node(a.v).rank-l.edge(a).minlen}return Zh}var Kh,Pb;function A_(){if(Pb)return Kh;Pb=1;var e=Xn().Graph,n=xc().slack;Kh=r;function r(u){var c=new e({directed:!1}),d=u.nodes()[0],h=u.nodeCount();c.setNode(d,{});for(var m,p;l(c,u) {var p=m.v,x=h===p?m.w:p;!u.hasNode(x)&&!n(c,m)&&(u.setNode(x,{}),u.setEdge(h,x,{}),d(x))})}return u.nodes().forEach(d),u.nodeCount()}function a(u,c){return c.edges().reduce((h,m)=>{let p=Number.POSITIVE_INFINITY;return u.hasNode(m.v)!==u.hasNode(m.w)&&(p=n(c,m)),p c.node(h).rank+=d)}return Kh}var Jh,Vb;function Y5(){if(Vb)return Jh;Vb=1;var e=A_(),n=xc().slack,r=xc().longestPath,l=Xn().alg.preorder,a=Xn().alg.postorder,o=At().simplify;Jh=u,u.initLowLimValues=m,u.initCutValues=c,u.calcCutValue=h,u.leaveEdge=x,u.enterEdge=v,u.exchangeEdges=w;function u(T){T=o(T),r(T);var k=e(T);m(k),c(k,T);for(var A,q;A=x(k);)q=v(k,T,A),w(k,T,A,q)}function c(T,k){var A=a(T,T.nodes());A=A.slice(0,A.length-1),A.forEach(q=>d(T,k,q))}function d(T,k,A){var q=T.node(A),j=q.parent;T.edge(A,j).cutvalue=h(T,k,A)}function h(T,k,A){var q=T.node(A),j=q.parent,L=!0,O=k.edge(A,j),P=0;return O||(L=!1,O=k.edge(j,A)),P=O.weight,k.nodeEdges(A).forEach(R=>{var H=R.v===A,U=H?R.w:R.v;if(U!==j){var ee=H===L,B=k.edge(R).weight;if(P+=ee?B:-B,S(T,A,U)){var F=T.edge(A,U).cutvalue;P+=ee?-F:F}}}),P}function m(T,k){arguments.length<2&&(k=T.nodes()[0]),p(T,{},1,k)}function p(T,k,A,q,j){var L=A,O=T.node(q);return k[q]=!0,T.neighbors(q).forEach(P=>{Object.hasOwn(k,P)||(A=p(T,k,A,P,q))}),O.low=L,O.lim=A++,j?O.parent=j:delete O.parent,A}function x(T){return T.edges().find(k=>T.edge(k).cutvalue<0)}function v(T,k,A){var q=A.v,j=A.w;k.hasEdge(q,j)||(q=A.w,j=A.v);var L=T.node(q),O=T.node(j),P=L,R=!1;L.lim>O.lim&&(P=O,R=!0);var H=k.edges().filter(U=>R===_(T,T.node(U.v),P)&&R!==_(T,T.node(U.w),P));return H.reduce((U,ee)=>n(k,ee) !k.node(j).parent),q=l(T,A);q=q.slice(1),q.forEach(j=>{var L=T.node(j).parent,O=k.edge(j,L),P=!1;O||(O=k.edge(L,j),P=!0),k.node(j).rank=k.node(L).rank+(P?O.minlen:-O.minlen)})}function S(T,k,A){return T.hasEdge(k,A)}function _(T,k,A){return A.low<=k.lim&&k.lim<=A.lim}return Jh}var Wh,$b;function X5(){if($b)return Wh;$b=1;var e=xc(),n=e.longestPath,r=A_(),l=Y5();Wh=a;function a(d){var h=d.graph().ranker;if(h instanceof Function)return h(d);switch(d.graph().ranker){case"network-simplex":c(d);break;case"tight-tree":u(d);break;case"longest-path":o(d);break;case"none":break;default:c(d)}}var o=n;function u(d){n(d),r(d)}function c(d){l(d)}return Wh}var ep,Gb;function Q5(){if(Gb)return ep;Gb=1,ep=e;function e(l){let a=r(l);l.graph().dummyChains.forEach(o=>{let u=l.node(o),c=u.edgeObj,d=n(l,a,c.v,c.w),h=d.path,m=d.lca,p=0,x=h[p],v=!0;for(;o!==c.w;){if(u=l.node(o),v){for(;(x=h[p])!==m&&l.node(x).maxRank h||m>a[p].lim));for(x=p,p=u;(p=l.parent(p))!==x;)d.push(p);return{path:c.concat(d.reverse()),lca:x}}function r(l){let a={},o=0;function u(c){let d=o;l.children(c).forEach(u),a[c]={low:d,lim:o++}}return l.children().forEach(u),a}return ep}var tp,Fb;function Z5(){if(Fb)return tp;Fb=1;let e=At();tp={run:n,cleanup:o};function n(u){let c=e.addDummyNode(u,"root",{},"_root"),d=l(u),h=Object.values(d),m=e.applyWithChunking(Math.max,h)-1,p=2*m+1;u.graph().nestingRoot=c,u.edges().forEach(v=>u.edge(v).minlen*=p);let x=a(u)+1;u.children().forEach(v=>r(u,c,p,x,m,d,v)),u.graph().nodeRankFactor=p}function r(u,c,d,h,m,p,x){let v=u.children(x);if(!v.length){x!==c&&u.setEdge(c,x,{weight:0,minlen:d});return}let w=e.addBorderNode(u,"_bt"),E=e.addBorderNode(u,"_bb"),S=u.node(x);u.setParent(w,x),S.borderTop=w,u.setParent(E,x),S.borderBottom=E,v.forEach(_=>{r(u,c,d,h,m,p,_);let T=u.node(_),k=T.borderTop?T.borderTop:_,A=T.borderBottom?T.borderBottom:_,q=T.borderTop?h:2*h,j=k!==A?1:m-p[x]+1;u.setEdge(w,k,{weight:q,minlen:j,nestingEdge:!0}),u.setEdge(A,E,{weight:q,minlen:j,nestingEdge:!0})}),u.parent(x)||u.setEdge(c,w,{weight:0,minlen:m+p[x]})}function l(u){var c={};function d(h,m){var p=u.children(h);p&&p.length&&p.forEach(x=>d(x,m+1)),c[h]=m}return u.children().forEach(h=>d(h,1)),c}function a(u){return u.edges().reduce((c,d)=>c+u.edge(d).weight,0)}function o(u){var c=u.graph();u.removeNode(c.nestingRoot),delete c.nestingRoot,u.edges().forEach(d=>{var h=u.edge(d);h.nestingEdge&&u.removeEdge(d)})}return tp}var np,Yb;function K5(){if(Yb)return np;Yb=1;let e=At();np=n;function n(l){function a(o){let u=l.children(o),c=l.node(o);if(u.length&&u.forEach(a),Object.hasOwn(c,"minRank")){c.borderLeft=[],c.borderRight=[];for(let d=c.minRank,h=c.maxRank+1;d l(d.node(h))),d.edges().forEach(h=>l(d.edge(h)))}function l(d){let h=d.width;d.width=d.height,d.height=h}function a(d){d.nodes().forEach(h=>o(d.node(h))),d.edges().forEach(h=>{let m=d.edge(h);m.points.forEach(o),Object.hasOwn(m,"y")&&o(m)})}function o(d){d.y=-d.y}function u(d){d.nodes().forEach(h=>c(d.node(h))),d.edges().forEach(h=>{let m=d.edge(h);m.points.forEach(c),Object.hasOwn(m,"x")&&c(m)})}function c(d){let h=d.x;d.x=d.y,d.y=h}return rp}var ip,Qb;function W5(){if(Qb)return ip;Qb=1;let e=At();ip=n;function n(r){let l={},a=r.nodes().filter(m=>!r.children(m).length),o=a.map(m=>r.node(m).rank),u=e.applyWithChunking(Math.max,o),c=e.range(u+1).map(()=>[]);function d(m){if(l[m])return;l[m]=!0;let p=r.node(m);c[p.rank].push(m),r.successors(m).forEach(d)}return a.sort((m,p)=>r.node(m).rank-r.node(p).rank).forEach(d),c}return ip}var lp,Zb;function e4(){if(Zb)return lp;Zb=1;let e=At().zipObject;lp=n;function n(l,a){let o=0;for(let u=1;u v)),c=a.flatMap(x=>l.outEdges(x).map(v=>({pos:u[v.w],weight:l.edge(v).weight})).sort((v,w)=>v.pos-w.pos)),d=1;for(;d {let v=x.pos+d;m[v]+=x.weight;let w=0;for(;v>0;)v%2&&(w+=m[v+1]),v=v-1>>1,m[v]+=x.weight;p+=x.weight*w}),p}return lp}var ap,Kb;function t4(){if(Kb)return ap;Kb=1,ap=e;function e(n,r=[]){return r.map(l=>{let a=n.inEdges(l);if(a.length){let o=a.reduce((u,c)=>{let d=n.edge(c),h=n.node(c.v);return{sum:u.sum+d.weight*h.order,weight:u.weight+d.weight}},{sum:0,weight:0});return{v:l,barycenter:o.sum/o.weight,weight:o.weight}}else return{v:l}})}return ap}var op,Jb;function n4(){if(Jb)return op;Jb=1;let e=At();op=n;function n(a,o){let u={};a.forEach((d,h)=>{let m=u[d.v]={indegree:0,in:[],out:[],vs:[d.v],i:h};d.barycenter!==void 0&&(m.barycenter=d.barycenter,m.weight=d.weight)}),o.edges().forEach(d=>{let h=u[d.v],m=u[d.w];h!==void 0&&m!==void 0&&(m.indegree++,h.out.push(u[d.w]))});let c=Object.values(u).filter(d=>!d.indegree);return r(c)}function r(a){let o=[];function u(d){return h=>{h.merged||(h.barycenter===void 0||d.barycenter===void 0||h.barycenter>=d.barycenter)&&l(d,h)}}function c(d){return h=>{h.in.push(d),--h.indegree===0&&a.push(h)}}for(;a.length;){let d=a.pop();o.push(d),d.in.reverse().forEach(u(d)),d.out.forEach(c(d))}return o.filter(d=>!d.merged).map(d=>e.pick(d,["vs","i","barycenter","weight"]))}function l(a,o){let u=0,c=0;a.weight&&(u+=a.barycenter*a.weight,c+=a.weight),o.weight&&(u+=o.barycenter*o.weight,c+=o.weight),a.vs=o.vs.concat(a.vs),a.barycenter=u/c,a.weight=c,a.i=Math.min(o.i,a.i),o.merged=!0}return op}var sp,Wb;function r4(){if(Wb)return sp;Wb=1;let e=At();sp=n;function n(a,o){let u=e.partition(a,w=>Object.hasOwn(w,"barycenter")),c=u.lhs,d=u.rhs.sort((w,E)=>E.i-w.i),h=[],m=0,p=0,x=0;c.sort(l(!!o)),x=r(h,d,x),c.forEach(w=>{x+=w.vs.length,h.push(w.vs),m+=w.barycenter*w.weight,p+=w.weight,x=r(h,d,x)});let v={vs:h.flat(!0)};return p&&(v.barycenter=m/p,v.weight=p),v}function r(a,o,u){let c;for(;o.length&&(c=o[o.length-1]).i<=u;)o.pop(),a.push(c.vs),u++;return u}function l(a){return(o,u)=>o.barycenter u.barycenter?1:a?u.i-o.i:o.i-u.i}return sp}var up,e1;function i4(){if(e1)return up;e1=1;let e=t4(),n=n4(),r=r4();up=l;function l(u,c,d,h){let m=u.children(c),p=u.node(c),x=p?p.borderLeft:void 0,v=p?p.borderRight:void 0,w={};x&&(m=m.filter(T=>T!==x&&T!==v));let E=e(u,m);E.forEach(T=>{if(u.children(T.v).length){let k=l(u,T.v,d,h);w[T.v]=k,Object.hasOwn(k,"barycenter")&&o(T,k)}});let S=n(E,d);a(S,w);let _=r(S,h);if(x&&(_.vs=[x,_.vs,v].flat(!0),u.predecessors(x).length)){let T=u.node(u.predecessors(x)[0]),k=u.node(u.predecessors(v)[0]);Object.hasOwn(_,"barycenter")||(_.barycenter=0,_.weight=0),_.barycenter=(_.barycenter*_.weight+T.order+k.order)/(_.weight+2),_.weight+=2}return _}function a(u,c){u.forEach(d=>{d.vs=d.vs.flatMap(h=>c[h]?c[h].vs:h)})}function o(u,c){u.barycenter!==void 0?(u.barycenter=(u.barycenter*u.weight+c.barycenter*c.weight)/(u.weight+c.weight),u.weight+=c.weight):(u.barycenter=c.barycenter,u.weight=c.weight)}return up}var cp,t1;function l4(){if(t1)return cp;t1=1;let e=Xn().Graph,n=At();cp=r;function r(a,o,u,c){c||(c=a.nodes());let d=l(a),h=new e({compound:!0}).setGraph({root:d}).setDefaultNodeLabel(m=>a.node(m));return c.forEach(m=>{let p=a.node(m),x=a.parent(m);(p.rank===o||p.minRank<=o&&o<=p.maxRank)&&(h.setNode(m),h.setParent(m,x||d),a[u](m).forEach(v=>{let w=v.v===m?v.w:v.v,E=h.edge(w,m),S=E!==void 0?E.weight:0;h.setEdge(w,m,{weight:a.edge(v).weight+S})}),Object.hasOwn(p,"minRank")&&h.setNode(m,{borderLeft:p.borderLeft[o],borderRight:p.borderRight[o]}))}),h}function l(a){for(var o;a.hasNode(o=n.uniqueId("_root")););return o}return cp}var fp,n1;function a4(){if(n1)return fp;n1=1,fp=e;function e(n,r,l){let a={},o;l.forEach(u=>{let c=n.parent(u),d,h;for(;c;){if(d=n.parent(c),d?(h=a[d],a[d]=c):(h=o,o=c),h&&h!==c){r.setEdge(h,c);return}c=d}})}return fp}var dp,r1;function o4(){if(r1)return dp;r1=1;let e=W5(),n=e4(),r=i4(),l=l4(),a=a4(),o=Xn().Graph,u=At();dp=c;function c(p,x){if(x&&typeof x.customOrder=="function"){x.customOrder(p,c);return}let v=u.maxRank(p),w=d(p,u.range(1,v+1),"inEdges"),E=d(p,u.range(v-1,-1,-1),"outEdges"),S=e(p);if(m(p,S),x&&x.disableOptimalOrderHeuristic)return;let _=Number.POSITIVE_INFINITY,T;for(let k=0,A=0;A<4;++k,++A){h(k%2?w:E,k%4>=2),S=u.buildLayerMatrix(p);let q=n(p,S);q<_&&(A=0,T=Object.assign({},S),_=q)}m(p,T)}function d(p,x,v){const w=new Map,E=(S,_)=>{w.has(S)||w.set(S,[]),w.get(S).push(_)};for(const S of p.nodes()){const _=p.node(S);if(typeof _.rank=="number"&&E(_.rank,S),typeof _.minRank=="number"&&typeof _.maxRank=="number")for(let T=_.minRank;T<=_.maxRank;T++)T!==_.rank&&E(T,S)}return x.map(function(S){return l(p,S,v,w.get(S)||[])})}function h(p,x){let v=new o;p.forEach(function(w){let E=w.graph().root,S=r(w,E,v,x);S.vs.forEach((_,T)=>w.node(_).order=T),a(w,v,S.vs)})}function m(p,x){Object.values(x).forEach(v=>v.forEach((w,E)=>p.node(w).order=E))}return dp}var hp,i1;function s4(){if(i1)return hp;i1=1;let e=Xn().Graph,n=At();hp={positionX:v,findType1Conflicts:r,findType2Conflicts:l,addConflict:o,hasConflict:u,verticalAlignment:c,horizontalCompaction:d,alignCoordinates:p,findSmallestWidthAlignment:m,balance:x};function r(S,_){let T={};function k(A,q){let j=0,L=0,O=A.length,P=q[q.length-1];return q.forEach((R,H)=>{let U=a(S,R),ee=U?S.node(U).order:O;(U||R===P)&&(q.slice(L,H+1).forEach(B=>{S.predecessors(B).forEach(F=>{let z=S.node(F),G=z.order;(G {R=q[H],S.node(R).dummy&&S.predecessors(R).forEach(U=>{let ee=S.node(U);ee.dummy&&(ee.order P)&&o(T,U,R)})})}function A(q,j){let L=-1,O,P=0;return j.forEach((R,H)=>{if(S.node(R).dummy==="border"){let U=S.predecessors(R);U.length&&(O=S.node(U[0]).order,k(j,P,H,L,O),P=H,L=O)}k(j,P,j.length,O,q.length)}),j}return _.length&&_.reduce(A),T}function a(S,_){if(S.node(_).dummy)return S.predecessors(_).find(T=>S.node(T).dummy)}function o(S,_,T){if(_>T){let A=_;_=T,T=A}let k=S[_];k||(S[_]=k={}),k[T]=!0}function u(S,_,T){if(_>T){let k=_;_=T,T=k}return!!S[_]&&Object.hasOwn(S[_],T)}function c(S,_,T,k){let A={},q={},j={};return _.forEach(L=>{L.forEach((O,P)=>{A[O]=O,q[O]=O,j[O]=P})}),_.forEach(L=>{let O=-1;L.forEach(P=>{let R=k(P);if(R.length){R=R.sort((U,ee)=>j[U]-j[ee]);let H=(R.length-1)/2;for(let U=Math.floor(H),ee=Math.ceil(H);U<=ee;++U){let B=R[U];q[P]===P&&O Math.max(U,q[ee.v]+j.edge(ee)),0)}function R(H){let U=j.outEdges(H).reduce((B,F)=>Math.min(B,q[F.w]-j.edge(F)),Number.POSITIVE_INFINITY),ee=S.node(H);U!==Number.POSITIVE_INFINITY&&ee.borderType!==L&&(q[H]=Math.max(q[H],U))}return O(P,j.predecessors.bind(j)),O(R,j.successors.bind(j)),Object.keys(k).forEach(H=>q[H]=q[T[H]]),q}function h(S,_,T,k){let A=new e,q=S.graph(),j=w(q.nodesep,q.edgesep,k);return _.forEach(L=>{let O;L.forEach(P=>{let R=T[P];if(A.setNode(R),O){var H=T[O],U=A.edge(H,R);A.setEdge(H,R,Math.max(j(S,P,O),U||0))}O=P})}),A}function m(S,_){return Object.values(_).reduce((T,k)=>{let A=Number.NEGATIVE_INFINITY,q=Number.POSITIVE_INFINITY;Object.entries(k).forEach(([L,O])=>{let P=E(S,L)/2;A=Math.max(O+P,A),q=Math.min(O-P,q)});const j=A-q;return j {["l","r"].forEach(j=>{let L=q+j,O=S[L];if(O===_)return;let P=Object.values(O),R=k-n.applyWithChunking(Math.min,P);j!=="l"&&(R=A-n.applyWithChunking(Math.max,P)),R&&(S[L]=n.mapValues(O,H=>H+R))})})}function x(S,_){return n.mapValues(S.ul,(T,k)=>{if(_)return S[_.toLowerCase()][k];{let A=Object.values(S).map(q=>q[k]).sort((q,j)=>q-j);return(A[1]+A[2])/2}})}function v(S){let _=n.buildLayerMatrix(S),T=Object.assign(r(S,_),l(S,_)),k={},A;["u","d"].forEach(j=>{A=j==="u"?_:Object.values(_).reverse(),["l","r"].forEach(L=>{L==="r"&&(A=A.map(H=>Object.values(H).reverse()));let O=(j==="u"?S.predecessors:S.successors).bind(S),P=c(S,A,T,O),R=d(S,A,P.root,P.align,L==="r");L==="r"&&(R=n.mapValues(R,H=>-H)),k[j+L]=R})});let q=m(S,k);return p(k,q),x(k,S.graph().align)}function w(S,_,T){return(k,A,q)=>{let j=k.node(A),L=k.node(q),O=0,P;if(O+=j.width/2,Object.hasOwn(j,"labelpos"))switch(j.labelpos.toLowerCase()){case"l":P=-j.width/2;break;case"r":P=j.width/2;break}if(P&&(O+=T?P:-P),P=0,O+=(j.dummy?_:S)/2,O+=(L.dummy?_:S)/2,O+=L.width/2,Object.hasOwn(L,"labelpos"))switch(L.labelpos.toLowerCase()){case"l":P=L.width/2;break;case"r":P=-L.width/2;break}return P&&(O+=T?P:-P),P=0,O}}function E(S,_){return S.node(_).width}return hp}var pp,l1;function u4(){if(l1)return pp;l1=1;let e=At(),n=s4().positionX;pp=r;function r(a){a=e.asNonCompoundGraph(a),l(a),Object.entries(n(a)).forEach(([o,u])=>a.node(o).x=u)}function l(a){let o=e.buildLayerMatrix(a),u=a.graph().ranksep,c=0;o.forEach(d=>{const h=d.reduce((m,p)=>{const x=a.node(p).height;return m>x?m:x},0);d.forEach(m=>a.node(m).y=c+h/2),c+=h+u})}return pp}var mp,a1;function c4(){if(a1)return mp;a1=1;let e=G5(),n=F5(),r=X5(),l=At().normalizeRanks,a=Q5(),o=At().removeEmptyRanks,u=Z5(),c=K5(),d=J5(),h=o4(),m=u4(),p=At(),x=Xn().Graph;mp=v;function v(N,$){let X=$&&$.debugTiming?p.time:p.notime;X("layout",()=>{let J=X(" buildLayoutGraph",()=>O(N));X(" runLayout",()=>w(J,X,$)),X(" updateInputGraph",()=>E(N,J))})}function w(N,$,X){$(" makeSpaceForEdgeLabels",()=>P(N)),$(" removeSelfEdges",()=>Q(N)),$(" acyclic",()=>e.run(N)),$(" nestingGraph.run",()=>u.run(N)),$(" rank",()=>r(p.asNonCompoundGraph(N))),$(" injectEdgeLabelProxies",()=>R(N)),$(" removeEmptyRanks",()=>o(N)),$(" nestingGraph.cleanup",()=>u.cleanup(N)),$(" normalizeRanks",()=>l(N)),$(" assignRankMinMax",()=>H(N)),$(" removeEdgeLabelProxies",()=>U(N)),$(" normalize.run",()=>n.run(N)),$(" parentDummyChains",()=>a(N)),$(" addBorderSegments",()=>c(N)),$(" order",()=>h(N,X)),$(" insertSelfEdges",()=>K(N)),$(" adjustCoordinateSystem",()=>d.adjust(N)),$(" position",()=>m(N)),$(" positionSelfEdges",()=>M(N)),$(" removeBorderNodes",()=>G(N)),$(" normalize.undo",()=>n.undo(N)),$(" fixupEdgeLabelCoords",()=>F(N)),$(" undoCoordinateSystem",()=>d.undo(N)),$(" translateGraph",()=>ee(N)),$(" assignNodeIntersects",()=>B(N)),$(" reversePoints",()=>z(N)),$(" acyclic.undo",()=>e.undo(N))}function E(N,$){N.nodes().forEach(X=>{let J=N.node(X),ne=$.node(X);J&&(J.x=ne.x,J.y=ne.y,J.rank=ne.rank,$.children(X).length&&(J.width=ne.width,J.height=ne.height))}),N.edges().forEach(X=>{let J=N.edge(X),ne=$.edge(X);J.points=ne.points,Object.hasOwn(ne,"x")&&(J.x=ne.x,J.y=ne.y)}),N.graph().width=$.graph().width,N.graph().height=$.graph().height}let S=["nodesep","edgesep","ranksep","marginx","marginy"],_={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},T=["acyclicer","ranker","rankdir","align"],k=["width","height","rank"],A={width:0,height:0},q=["minlen","weight","width","height","labeloffset"],j={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},L=["labelpos"];function O(N){let $=new x({multigraph:!0,compound:!0}),X=Y(N.graph());return $.setGraph(Object.assign({},_,I(X,S),p.pick(X,T))),N.nodes().forEach(J=>{let ne=Y(N.node(J));const re=I(ne,k);Object.keys(A).forEach(se=>{re[se]===void 0&&(re[se]=A[se])}),$.setNode(J,re),$.setParent(J,N.parent(J))}),N.edges().forEach(J=>{let ne=Y(N.edge(J));$.setEdge(J,Object.assign({},j,I(ne,q),p.pick(ne,L)))}),$}function P(N){let $=N.graph();$.ranksep/=2,N.edges().forEach(X=>{let J=N.edge(X);J.minlen*=2,J.labelpos.toLowerCase()!=="c"&&($.rankdir==="TB"||$.rankdir==="BT"?J.width+=J.labeloffset:J.height+=J.labeloffset)})}function R(N){N.edges().forEach($=>{let X=N.edge($);if(X.width&&X.height){let J=N.node($.v),re={rank:(N.node($.w).rank-J.rank)/2+J.rank,e:$};p.addDummyNode(N,"edge-proxy",re,"_ep")}})}function H(N){let $=0;N.nodes().forEach(X=>{let J=N.node(X);J.borderTop&&(J.minRank=N.node(J.borderTop).rank,J.maxRank=N.node(J.borderBottom).rank,$=Math.max($,J.maxRank))}),N.graph().maxRank=$}function U(N){N.nodes().forEach($=>{let X=N.node($);X.dummy==="edge-proxy"&&(N.edge(X.e).labelRank=X.rank,N.removeNode($))})}function ee(N){let $=Number.POSITIVE_INFINITY,X=0,J=Number.POSITIVE_INFINITY,ne=0,re=N.graph(),se=re.marginx||0,xe=re.marginy||0;function be(ye){let pe=ye.x,_e=ye.y,ze=ye.width,Te=ye.height;$=Math.min($,pe-ze/2),X=Math.max(X,pe+ze/2),J=Math.min(J,_e-Te/2),ne=Math.max(ne,_e+Te/2)}N.nodes().forEach(ye=>be(N.node(ye))),N.edges().forEach(ye=>{let pe=N.edge(ye);Object.hasOwn(pe,"x")&&be(pe)}),$-=se,J-=xe,N.nodes().forEach(ye=>{let pe=N.node(ye);pe.x-=$,pe.y-=J}),N.edges().forEach(ye=>{let pe=N.edge(ye);pe.points.forEach(_e=>{_e.x-=$,_e.y-=J}),Object.hasOwn(pe,"x")&&(pe.x-=$),Object.hasOwn(pe,"y")&&(pe.y-=J)}),re.width=X-$+se,re.height=ne-J+xe}function B(N){N.edges().forEach($=>{let X=N.edge($),J=N.node($.v),ne=N.node($.w),re,se;X.points?(re=X.points[0],se=X.points[X.points.length-1]):(X.points=[],re=ne,se=J),X.points.unshift(p.intersectRect(J,re)),X.points.push(p.intersectRect(ne,se))})}function F(N){N.edges().forEach($=>{let X=N.edge($);if(Object.hasOwn(X,"x"))switch((X.labelpos==="l"||X.labelpos==="r")&&(X.width-=X.labeloffset),X.labelpos){case"l":X.x-=X.width/2+X.labeloffset;break;case"r":X.x+=X.width/2+X.labeloffset;break}})}function z(N){N.edges().forEach($=>{let X=N.edge($);X.reversed&&X.points.reverse()})}function G(N){N.nodes().forEach($=>{if(N.children($).length){let X=N.node($),J=N.node(X.borderTop),ne=N.node(X.borderBottom),re=N.node(X.borderLeft[X.borderLeft.length-1]),se=N.node(X.borderRight[X.borderRight.length-1]);X.width=Math.abs(se.x-re.x),X.height=Math.abs(ne.y-J.y),X.x=re.x+X.width/2,X.y=J.y+X.height/2}}),N.nodes().forEach($=>{N.node($).dummy==="border"&&N.removeNode($)})}function Q(N){N.edges().forEach($=>{if($.v===$.w){var X=N.node($.v);X.selfEdges||(X.selfEdges=[]),X.selfEdges.push({e:$,label:N.edge($)}),N.removeEdge($)}})}function K(N){var $=p.buildLayerMatrix(N);$.forEach(X=>{var J=0;X.forEach((ne,re)=>{var se=N.node(ne);se.order=re+J,(se.selfEdges||[]).forEach(xe=>{p.addDummyNode(N,"selfedge",{width:xe.label.width,height:xe.label.height,rank:se.rank,order:re+ ++J,e:xe.e,label:xe.label},"_se")}),delete se.selfEdges})})}function M(N){N.nodes().forEach($=>{var X=N.node($);if(X.dummy==="selfedge"){var J=N.node(X.e.v),ne=J.x+J.width/2,re=J.y,se=X.x-ne,xe=J.height/2;N.setEdge(X.e,X.label),N.removeNode($),X.label.points=[{x:ne+2*se/3,y:re-xe},{x:ne+5*se/6,y:re-xe},{x:ne+se,y:re},{x:ne+5*se/6,y:re+xe},{x:ne+2*se/3,y:re+xe}],X.label.x=X.x,X.label.y=X.y}})}function I(N,$){return p.mapValues(p.pick(N,$),Number)}function Y(N){var $={};return N&&Object.entries(N).forEach(([X,J])=>{typeof X=="string"&&(X=X.toLowerCase()),$[X]=J}),$}return mp}var gp,o1;function f4(){if(o1)return gp;o1=1;let e=At(),n=Xn().Graph;gp={debugOrdering:r};function r(l){let a=e.buildLayerMatrix(l),o=new n({compound:!0,multigraph:!0}).setGraph({});return l.nodes().forEach(u=>{o.setNode(u,{label:u}),o.setParent(u,"layer"+l.node(u).rank)}),l.edges().forEach(u=>o.setEdge(u.v,u.w,{},u.name)),a.forEach((u,c)=>{let d="layer"+c;o.setNode(d,{rank:"same"}),u.reduce((h,m)=>(o.setEdge(h,m,{style:"invis"}),m))}),o}return gp}var xp,s1;function d4(){return s1||(s1=1,xp="1.1.8"),xp}var yp,u1;function h4(){return u1||(u1=1,yp={graphlib:Xn(),layout:c4(),debug:f4(),util:{time:At().time,notime:At().notime},version:d4()}),yp}var p4=h4();const c1=Qo(p4),Ao=200,ia=56,f1=20,d1=40,m4=20,h1=12;function g4(e,n,r,l,a,o,u,c){const d=[],h=[],m=new Set,p=new Set,x=new Map;for(const S of r)for(const _ of S.agents)p.add(_),x.set(_,S.name);for(const S of r){const _=a[S.name],T=S.agents.length,k=Ao+f1*2,A=d1+T*ia+(T-1)*h1+m4;d.push({id:S.name,type:"groupNode",position:{x:0,y:0},data:{label:S.name,type:"parallel_group",status:(_==null?void 0:_.status)||"pending",groupName:S.name,progress:o[S.name]},style:{width:k,height:A}});for(let q=0;q $entryPoint",source:"$start",target:u,type:"animatedEdge",data:{},animated:!1})}const w=new Set(d.map(S=>S.id)),E=new Map;for(const S of d)S.parentId&&E.set(S.id,S.parentId);for(const S of n){const _=E.get(S.from)??S.from,T=E.get(S.to)??S.to;if(!w.has(_)||!w.has(T)||_===T)continue;const k=`${_}->${T}${S.when?`[${S.when}]`:""}`;h.push({id:k,source:_,target:T,type:"animatedEdge",data:{when:S.when},animated:!1})}return x4(d,h),{nodes:d,edges:h}}function x4(e,n){var l,a,o,u;const r=new c1.graphlib.Graph;r.setDefaultEdgeLabel(()=>({})),r.setGraph({rankdir:"TB",nodesep:50,ranksep:70,marginx:30,marginy:30});for(const c of e){if(c.parentId)continue;const d=c.type==="groupNode",h=d&&((l=c.style)==null?void 0:l.width)||Ao,m=d&&((a=c.style)==null?void 0:a.height)||ia;r.setNode(c.id,{width:h,height:m})}for(const c of n)r.hasNode(c.source)&&r.hasNode(c.target)&&r.setEdge(c.source,c.target);c1.layout(r);for(const c of e){if(c.parentId)continue;const d=r.node(c.id);if(!d)continue;const h=c.type==="groupNode",m=h&&((o=c.style)==null?void 0:o.width)||Ao,p=h&&((u=c.style)==null?void 0:u.height)||ia;c.position={x:d.x-m/2,y:d.y-p/2}}}const Fe={pending:"#6b7280",running:"#3b82f6",completed:"#22c55e",failed:"#ef4444",paused:"#f59e0b",idle:"#6b7280",waiting:"#a855f7"},y4=70,p1=90;function Hc({data:e,children:n}){const[r,l]=V.useState(!1),a=V.useRef(null),o=V.useCallback(()=>{a.current=setTimeout(()=>l(!0),200)},[]),u=V.useCallback(()=>{a.current&&clearTimeout(a.current),l(!1)},[]),c=Fe[e.status]||Fe.pending;return b.jsxs("div",{className:"relative",onMouseEnter:o,onMouseLeave:u,children:[n,r&&b.jsxs("div",{className:He("absolute z-50 bottom-full left-1/2 -translate-x-1/2 mb-2","bg-[var(--surface-raised)] border border-[var(--border)] shadow-lg","rounded-lg px-3 py-2 max-w-[260px] pointer-events-none","animate-[tooltip-in_150ms_ease-out]"),children:[b.jsx("div",{className:"absolute top-full left-1/2 -translate-x-1/2 w-0 h-0 border-x-[6px] border-x-transparent border-t-[6px] border-t-[var(--border)]"}),b.jsxs("div",{className:"flex flex-col gap-1.5 text-[11px]",children:[b.jsxs("div",{className:"flex items-center gap-1.5",children:[b.jsx("span",{className:"w-2 h-2 rounded-full flex-shrink-0",style:{backgroundColor:c}}),b.jsx("span",{className:"font-medium text-[var(--text)] capitalize",children:e.status}),e.iteration!=null&&e.iteration>1&&b.jsxs("span",{className:"text-[var(--text-muted)] ml-auto",children:["iter ",e.iteration]})]}),b.jsx("div",{className:"h-px bg-[var(--border)]"}),b.jsxs("div",{className:"grid grid-cols-[auto_1fr] gap-x-3 gap-y-0.5",children:[e.elapsed!=null&&b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"text-[var(--text-muted)]",children:"Elapsed"}),b.jsx("span",{className:"text-[var(--text)] font-mono",children:Jt(e.elapsed)})]}),e.model&&b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"text-[var(--text-muted)]",children:"Model"}),b.jsx("span",{className:"text-[var(--text)] truncate",children:e.model})]}),e.tokens!=null&&b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"text-[var(--text-muted)]",children:"Tokens"}),b.jsxs("span",{className:"text-[var(--text)] font-mono",children:[Gn(e.tokens),e.inputTokens!=null&&e.outputTokens!=null&&b.jsxs("span",{className:"text-[var(--text-muted)]",children:[" ","(",Gn(e.inputTokens),"↑ ",Gn(e.outputTokens),"↓)"]})]})]}),e.costUsd!=null&&b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"text-[var(--text-muted)]",children:"Cost"}),b.jsx("span",{className:"text-[var(--text)] font-mono",children:yi(e.costUsd)})]}),e.exitCode!=null&&b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"text-[var(--text-muted)]",children:"Exit code"}),b.jsx("span",{className:He("font-mono",e.exitCode===0?"text-[var(--completed)]":"text-[var(--failed)]"),children:e.exitCode})]}),e.selectedOption&&b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"text-[var(--text-muted)]",children:"Selected"}),b.jsx("span",{className:"text-[var(--text)] truncate",children:e.selectedOption})]})]}),e.errorMessage&&b.jsxs(b.Fragment,{children:[b.jsx("div",{className:"h-px bg-[var(--border)]"}),b.jsxs("div",{className:"text-red-400 leading-tight",children:[e.errorType&&b.jsxs("span",{className:"font-medium",children:[e.errorType,": "]}),b.jsxs("span",{className:"break-words",children:[e.errorMessage.slice(0,120),e.errorMessage.length>120?"...":""]})]})]})]})]})]})}const v4=V.memo(function({data:n,id:r,selected:l}){var L;const a=n,o=al(),c=((L=o[r])==null?void 0:L.status)||a.status||"pending",d=Fe[c]||Fe.pending,h=o[r],m=h==null?void 0:h.elapsed,p=h==null?void 0:h.model,x=h==null?void 0:h.tokens,v=h==null?void 0:h.input_tokens,w=h==null?void 0:h.output_tokens,E=h==null?void 0:h.cost_usd,S=h==null?void 0:h.iteration,_=h==null?void 0:h.error_type,T=h==null?void 0:h.error_message,k=h==null?void 0:h.context_pct,A=b4(r,c),q=w4(c),j=(()=>{if(c==="failed"&&T)return{text:T.length>40?T.slice(0,37)+"...":T,className:"text-red-400"};if(c==="running")return{text:A,className:"text-[var(--text-muted)]"};if(c==="completed"){const O=[];return m!=null&&O.push(Jt(m)),x!=null&&O.push(`${Gn(x)} tok`),E!=null&&O.push(yi(E)),{text:O.join(" · ")||null,className:"text-[var(--text-muted)]"}}return{text:null,className:""}})();return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsx(Hc,{data:{status:c,elapsed:m,model:p,tokens:x,inputTokens:v,outputTokens:w,costUsd:E,iteration:S,errorType:_,errorMessage:T},children:b.jsxs("div",{className:He("flex items-center gap-2 px-3 py-1.5 rounded-lg border-2 bg-[var(--node-bg)] min-w-[140px] max-w-[220px] transition-all duration-300",l&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",c==="running"&&"shadow-[0_0_12px_var(--running-glow)]",q),style:{borderColor:d},children:[b.jsx("div",{className:He("flex items-center justify-center w-6 h-6 rounded-md flex-shrink-0",c==="running"&&"animate-pulse"),style:{backgroundColor:`${d}20`},children:b.jsx(aN,{className:"w-3.5 h-3.5",style:{color:d}})}),b.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[b.jsxs("div",{className:"flex items-center gap-1",children:[b.jsx("span",{className:"text-xs font-medium text-[var(--text)] truncate",children:a.label}),S!=null&&S>1&&b.jsxs("span",{className:"flex-shrink-0 inline-flex items-center justify-center px-1.5 py-0.5 rounded-full text-[9px] font-bold leading-none",style:{backgroundColor:`${d}25`,color:d},children:["x",S]})]}),j.text&&b.jsx("span",{className:He("text-[10px] truncate leading-tight",j.className),children:j.text})]}),k!=null&&b.jsx("div",{className:"absolute bottom-0 left-0 right-0 h-[2px] rounded-b-lg overflow-hidden",style:{backgroundColor:"rgba(255,255,255,0.06)"},children:b.jsx("div",{className:He("h-full transition-all duration-500",k>=p1?"animate-[context-pulse_2s_ease-in-out_infinite]":""),style:{width:`${Math.min(k,100)}%`,backgroundColor:k>=p1?"#ef4444":k>=y4?"#f59e0b":"#22c55e"}})})]})}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})});function b4(e,n){var d;const r=(d=al()[e])==null?void 0:d.startedAt,l=fe(h=>h.replayMode),a=fe(h=>h.lastEventTime),[o,u]=V.useState("0.0s"),c=V.useRef(null);return V.useEffect(()=>{if(n==="running"){if(l){c.current&&clearInterval(c.current);const p=r??a??0;u(Jt((a??p)-p));return}const h=r!=null?r*1e3:Date.now(),m=()=>{const p=(Date.now()-h)/1e3;u(Jt(p))};return m(),c.current=setInterval(m,1e3),()=>{c.current&&clearInterval(c.current)}}else c.current&&clearInterval(c.current)},[n,r,l,a]),o}function w4(e){const n=V.useRef(e),[r,l]=V.useState("");return V.useEffect(()=>{const a=n.current;if(n.current=e,a===e)return;e==="running"?l("node-activate"):a==="running"&&(e==="completed"||e==="failed")&&l(e==="completed"?"node-complete":"node-fail");const o=setTimeout(()=>l(""),400);return()=>clearTimeout(o)},[e]),r}const S4=V.memo(function({data:n,id:r,selected:l}){var _;const a=n,o=al(),c=((_=o[r])==null?void 0:_.status)||a.status||"pending",d=Fe[c]||Fe.pending,h=o[r],m=h==null?void 0:h.elapsed,p=h==null?void 0:h.exit_code,x=h==null?void 0:h.error_type,v=h==null?void 0:h.error_message,w=_4(r,c),E=k4(c),S=(()=>{if(c==="failed"&&v)return{text:v.length>40?v.slice(0,37)+"...":v,className:"text-red-400"};if(c==="running")return{text:w,className:"text-[var(--text-muted)]"};if(c==="completed"){const T=[];return m!=null&&T.push(Jt(m)),p!=null&&T.push(`exit ${p}`),{text:T.join(" · ")||null,className:"text-[var(--text-muted)]"}}return{text:null,className:""}})();return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsx(Hc,{data:{status:c,elapsed:m,exitCode:p,errorType:x,errorMessage:v},children:b.jsxs("div",{className:He("flex items-center gap-2 px-3 py-1.5 rounded-lg border-2 bg-[var(--node-bg)] min-w-[140px] max-w-[220px] transition-all duration-300",l&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",c==="running"&&"shadow-[0_0_12px_var(--running-glow)]",E),style:{borderColor:d},children:[b.jsx("div",{className:He("flex items-center justify-center w-6 h-6 rounded-md flex-shrink-0",c==="running"&&"animate-pulse"),style:{backgroundColor:`${d}20`},children:b.jsx(bN,{className:"w-3.5 h-3.5",style:{color:d}})}),b.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[b.jsx("span",{className:"text-xs font-medium text-[var(--text)] truncate",children:a.label}),S.text&&b.jsx("span",{className:He("text-[10px] truncate leading-tight",S.className),children:S.text})]})]})}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})});function _4(e,n){var d;const r=(d=al()[e])==null?void 0:d.startedAt,l=fe(h=>h.replayMode),a=fe(h=>h.lastEventTime),[o,u]=V.useState("0.0s"),c=V.useRef(null);return V.useEffect(()=>{if(n==="running"){if(l){c.current&&clearInterval(c.current);const p=r??a??0;u(Jt((a??p)-p));return}const h=r!=null?r*1e3:Date.now(),m=()=>{const p=(Date.now()-h)/1e3;u(Jt(p))};return m(),c.current=setInterval(m,1e3),()=>{c.current&&clearInterval(c.current)}}else c.current&&clearInterval(c.current)},[n,r,l,a]),o}function k4(e){const n=V.useRef(e),[r,l]=V.useState("");return V.useEffect(()=>{const a=n.current;if(n.current=e,a===e)return;e==="running"?l("node-activate"):a==="running"&&(e==="completed"||e==="failed")&&l(e==="completed"?"node-complete":"node-fail");const o=setTimeout(()=>l(""),400);return()=>clearTimeout(o)},[e]),r}const E4=V.memo(function({data:n,id:r,selected:l}){var p,x;const a=n,o=al(),c=((p=o[r])==null?void 0:p.status)||a.status||"pending",d=Fe[c]||Fe.pending,h=(x=o[r])==null?void 0:x.selected_option,m=N4(c);return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsx(Hc,{data:{status:c,selectedOption:h},children:b.jsxs("div",{className:He("flex items-center gap-2 px-3 py-1.5 rounded-lg border-2 border-dashed bg-[var(--node-bg)] min-w-[140px] max-w-[220px] transition-all duration-300",l&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",c==="waiting"&&"shadow-[0_0_12px_var(--waiting-muted)]",c==="running"&&"shadow-[0_0_12px_var(--running-glow)]",m),style:{borderColor:d},children:[b.jsx("div",{className:He("flex items-center justify-center w-6 h-6 rounded-md flex-shrink-0",c==="waiting"&&"animate-pulse"),style:{backgroundColor:`${d}20`},children:b.jsx(vN,{className:"w-3.5 h-3.5",style:{color:d}})}),b.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[b.jsx("span",{className:"text-xs font-medium text-[var(--text)] truncate",children:a.label}),c==="waiting"&&b.jsx("span",{className:"text-[10px] text-[var(--waiting)] truncate leading-tight",children:"Awaiting input..."}),c==="completed"&&h&&b.jsx("span",{className:"text-[10px] text-[var(--text-muted)] truncate leading-tight",children:h})]})]})}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})});function N4(e){const n=V.useRef(e),[r,l]=V.useState("");return V.useEffect(()=>{const a=n.current;if(n.current=e,a===e)return;e==="running"||e==="waiting"?l("node-activate"):(a==="running"||a==="waiting")&&e==="completed"&&l("node-complete");const o=setTimeout(()=>l(""),400);return()=>clearTimeout(o)},[e]),r}const C4=V.memo(function({data:n,id:r,selected:l}){var S;const a=n,u=a.type==="for_each_group"?xN:pN,c=a.progress,m=((S=al()[r])==null?void 0:S.status)||a.status||"pending",p=Fe[m]||Fe.pending,x=T4(m),v=c?`${c.completed+c.failed}/${c.total}${c.failed>0?` (${c.failed} failed)`:""}`:null,w=c&&c.total>0?(c.completed+c.failed)/c.total*100:0,E=c!=null&&c.failed>0;return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsxs("div",{className:He("flex flex-col gap-1 px-4 py-3 rounded-xl border-2 border-dashed bg-[var(--surface)]/80 min-w-[180px] transition-all duration-300",l&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",m==="running"&&"shadow-[0_0_16px_var(--running-glow)]",x),style:{borderColor:p,minHeight:"100%"},children:[b.jsxs("div",{className:"flex items-center gap-2",children:[b.jsx(u,{className:"w-3.5 h-3.5",style:{color:p}}),b.jsx("span",{className:"text-xs font-medium text-[var(--text-secondary)]",children:a.label})]}),v&&b.jsx("span",{className:"text-[10px] text-[var(--text-muted)] font-mono",children:v}),c&&c.total>0&&m==="running"&&b.jsx("div",{className:"w-full h-1 rounded-full bg-[var(--border)] overflow-hidden mt-0.5",children:b.jsx("div",{className:"h-full rounded-full transition-all duration-500 ease-out",style:{width:`${w}%`,backgroundColor:E?"var(--failed)":"var(--completed)"}})})]}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})});function T4(e){const n=V.useRef(e),[r,l]=V.useState("");return V.useEffect(()=>{const a=n.current;if(n.current=e,a===e)return;e==="running"?l("node-activate"):a==="running"&&(e==="completed"||e==="failed")&&l(e==="completed"?"node-complete":"node-fail");const o=setTimeout(()=>l(""),400);return()=>clearTimeout(o)},[e]),r}const A4=V.memo(function({data:n,id:r,selected:l}){const a=n,u=fe(S=>{var _;return(_=S.nodes[r])==null?void 0:_.status})||a.status||"pending",c=Fe[u]||Fe.pending,d=fe(S=>{var _;return(_=S.nodes[r])==null?void 0:_.elapsed}),h=fe(S=>{var _;return(_=S.nodes[r])==null?void 0:_.error_message}),m=fe(S=>S.navigateIntoSubworkflow),p=__(),x=p.some(S=>S.parentAgent===r),v=p.find(S=>S.parentAgent===r),w=v==null?void 0:v.workflowName,E=(()=>{if(u==="failed"&&h)return{text:h.length>35?h.slice(0,32)+"...":h,className:"text-red-400"};if(u==="running")return{text:w||"Running subworkflow…",className:"text-[var(--text-muted)]"};if(u==="completed"){const S=[];return w&&S.push(w),d!=null&&S.push(`${d.toFixed(1)}s`),{text:S.join(" · ")||"Done",className:"text-[var(--text-muted)]"}}return{text:w||null,className:"text-[var(--text-muted)]"}})();return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsx(Hc,{data:{status:u,elapsed:d,errorType:void 0,errorMessage:h,iteration:void 0},children:b.jsxs("div",{className:He("flex items-center gap-2 px-3 py-1.5 rounded-lg border-2 bg-[var(--node-bg)] min-w-[140px] max-w-[240px] transition-all duration-300 cursor-pointer",l&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",u==="running"&&"shadow-[0_0_12px_var(--running-glow)]"),style:{borderColor:c,borderStyle:"dashed"},onDoubleClick:S=>{x&&(S.stopPropagation(),m(r))},children:[b.jsx("div",{className:He("flex items-center justify-center w-6 h-6 rounded-md flex-shrink-0",u==="running"&&"animate-pulse"),style:{backgroundColor:`${c}20`},children:b.jsx(hm,{className:"w-3.5 h-3.5",style:{color:c}})}),b.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[b.jsx("div",{className:"flex items-center gap-1",children:b.jsx("span",{className:"text-xs font-medium text-[var(--text)] truncate",children:a.label})}),E.text&&b.jsx("span",{className:He("text-[10px] truncate leading-tight",E.className),children:E.text})]}),x&&b.jsx(Rr,{className:"w-3.5 h-3.5 flex-shrink-0 text-[var(--text-muted)]"})]})}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})}),j4=V.memo(function({data:n,selected:r}){const a=n.status||"pending",o=a==="completed",u=a==="failed",c=!o&&!u,d=o?Fe.completed:u?Fe.failed:Fe.pending;return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsx("div",{className:He("flex items-center justify-center w-11 h-11 rounded-full border-2 transition-all duration-300",o?"bg-[var(--completed)] shadow-[0_0_16px_var(--completed-muted)]":u?"bg-[var(--failed)] shadow-[0_0_16px_var(--failed-muted)]":"bg-[var(--node-bg)]",r&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]"),style:{borderColor:d},children:o?b.jsx(Yi,{className:"w-5 h-5 text-white",strokeWidth:3}):u?b.jsx(xw,{className:"w-3.5 h-3.5 text-white",fill:"white"}):b.jsx(Yi,{className:"w-5 h-5",strokeWidth:2.5,style:{color:c?Fe.pending:d}})})]})}),z4=V.memo(function({data:n,selected:r}){const a=n.status||"pending",o=Fe[a]||Fe.pending,u=a==="running"||a==="completed";return b.jsxs(b.Fragment,{children:[b.jsx("div",{className:He("flex items-center justify-center w-11 h-11 rounded-full border-2 transition-all duration-300",u?"bg-[var(--completed)]":"bg-[var(--node-bg)]",r&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",u&&"shadow-[0_0_12px_var(--completed-muted)]"),style:{borderColor:o},children:b.jsx(mm,{className:"w-4 h-4 ml-0.5",style:{color:u?"white":o}})}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})}),m1="#a78bfa",M4=V.memo(function({data:n,selected:r}){const l=n,a=l.status||"pending",o=a==="running"||a==="completed",u=o?m1:Fe[a]||m1,c=l.parentAgent,d=fe(h=>h.navigateUp);return b.jsxs(b.Fragment,{children:[b.jsxs("div",{className:"flex flex-col items-center gap-1",children:[b.jsx("div",{className:He("flex items-center justify-center w-11 h-11 rounded-full border-2 border-dashed transition-all duration-300 cursor-pointer",o?"bg-[#a78bfa]":"bg-[var(--node-bg)]",r&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",o&&"shadow-[0_0_12px_rgba(167,139,250,0.4)]"),style:{borderColor:u},onDoubleClick:h=>{h.stopPropagation(),d()},children:b.jsx(iN,{className:"w-4 h-4",style:{color:o?"white":u}})}),c&&b.jsxs("span",{className:"text-[10px] text-[var(--text-muted)] whitespace-nowrap",children:["from ",b.jsx("span",{className:"font-medium text-[var(--text)]",children:c})]})]}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})}),g1="#a78bfa",D4=V.memo(function({data:n,selected:r}){const l=n,a=l.status||"pending",o=a==="completed",u=a==="failed",c=o?g1:u?Fe.failed:g1,d=l.parentAgent,h=fe(m=>m.navigateUp);return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsxs("div",{className:"flex flex-col items-center gap-1",children:[b.jsx("div",{className:He("flex items-center justify-center w-11 h-11 rounded-full border-2 border-dashed transition-all duration-300 cursor-pointer",o?"bg-[#a78bfa] shadow-[0_0_12px_rgba(167,139,250,0.4)]":u?"bg-[var(--failed)] shadow-[0_0_16px_var(--failed-muted)]":"bg-[var(--node-bg)]",r&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]"),style:{borderColor:c},onDoubleClick:m=>{m.stopPropagation(),h()},children:b.jsx(lN,{className:"w-4 h-4",style:{color:o||u?"white":c}})}),d&&b.jsxs("span",{className:"text-[10px] text-[var(--text-muted)] whitespace-nowrap",children:["return to ",b.jsx("span",{className:"font-medium text-[var(--text)]",children:d})]})]})]})}),R4=V.memo(function({id:n,sourceX:r,sourceY:l,targetX:a,targetY:o,sourcePosition:u,targetPosition:c,source:d,target:h,data:m}){const p=E5(),x=V.useMemo(()=>p.find(P=>P.from===d&&P.to===h),[p,d,h]),[v,w,E]=zm({sourceX:r,sourceY:l,targetX:a,targetY:o,sourcePosition:u,targetPosition:c}),S=m==null?void 0:m.when,_=!!S,T=(x==null?void 0:x.state)==="taken",k=(x==null?void 0:x.state)==="highlighted",A=(x==null?void 0:x.state)==="failed";let q="var(--edge-color)",j=2,L;A?(q="var(--failed)",j=3):T?(q="var(--edge-taken)",j=3):k&&(q="var(--edge-active)",j=3),_&&!T&&!k&&!A&&(L="6 3");const O=A?"failed":T?"taken":k?"active":"default";return b.jsxs(b.Fragment,{children:[b.jsx(rs,{id:n,path:v,style:{stroke:q,strokeWidth:j,strokeDasharray:L,transition:"stroke 0.3s ease, stroke-width 0.3s ease"},markerEnd:`url(#arrow-${O})`}),_&&b.jsx(YM,{children:b.jsx("div",{className:"nodrag nopan",style:{position:"absolute",transform:`translate(-50%, -50%) translate(${w}px,${E}px)`,pointerEvents:"all"},children:b.jsx("span",{className:"inline-block px-1.5 py-0.5 rounded-full text-[9px] font-mono leading-tight max-w-[140px] truncate",style:{backgroundColor:A?"var(--failed)":T?"var(--edge-taken)":"var(--surface)",color:A||T?"var(--bg)":"var(--text-muted)",border:`1px solid ${A?"var(--failed)":T?"var(--edge-taken)":"var(--border)"}`},title:S,children:S})})}),T&&b.jsx("circle",{r:"3",fill:"var(--edge-taken)",children:b.jsx("animateMotion",{dur:"1s",repeatCount:"indefinite",path:v})}),A&&b.jsx("circle",{r:"3",fill:"var(--failed)",opacity:"0.8",children:b.jsx("animateMotion",{dur:"1.5s",repeatCount:"indefinite",path:v})})]})});function O4(){const e=fe(u=>u.workflowStatus),n=fe(u=>u.workflowFailure),r=fe(u=>u.workflowFailedAgent),l=fe(u=>u.selectNode);if(e!=="failed"||!n)return null;const a=n.message||n.error_type||"Unknown error",o=n.error_type==="TimeoutError";return b.jsx("div",{className:"absolute top-3 left-1/2 -translate-x-1/2 z-20 animate-[banner-in_200ms_ease-out]",children:b.jsxs("div",{className:He("flex items-center gap-2 px-4 py-2 rounded-lg","bg-red-950/90 border border-red-500/40 shadow-lg shadow-red-500/10","backdrop-blur-sm max-w-[560px]"),children:[b.jsx(wN,{className:"w-4 h-4 text-red-400 flex-shrink-0"}),b.jsxs("div",{className:"flex flex-col min-w-0",children:[b.jsx("span",{className:"text-xs font-medium text-red-300",children:"Workflow Failed"}),b.jsx("span",{className:"text-[11px] text-red-400/80 truncate",children:a}),o&&n.current_agent&&b.jsxs("span",{className:"text-[10px] text-red-400/60 truncate",children:["Timed out on agent: ",n.current_agent]}),n.checkpoint_path&&b.jsxs("span",{className:"text-[10px] text-red-400/50 truncate",title:n.checkpoint_path,children:["Checkpoint: ",n.checkpoint_path.split("/").pop()]})]}),r&&b.jsxs("button",{onClick:()=>l(r),className:"flex items-center gap-1 px-2 py-1 rounded text-[10px] font-medium text-red-300 bg-red-500/20 hover:bg-red-500/30 transition-colors flex-shrink-0 ml-1",children:[b.jsx(fN,{className:"w-3 h-3"}),"View"]})]})})}function L4(){const[e,n]=V.useState(!1),r=fe(d=>d.workflowStatus),l=fe(d=>d.totalCost),a=fe(d=>d.totalTokens),o=fe(d=>d.agentsCompleted),u=fe(d=>d.agentsTotal),c=vw();return r!=="completed"||e?null:b.jsx("div",{className:"absolute top-3 left-1/2 -translate-x-1/2 z-20 animate-[banner-in_200ms_ease-out]",children:b.jsxs("div",{className:He("flex items-center gap-3 px-4 py-2 rounded-lg","bg-green-950/90 border border-green-500/40 shadow-lg shadow-green-500/10","backdrop-blur-sm"),children:[b.jsx(sN,{className:"w-4 h-4 text-green-400 flex-shrink-0"}),b.jsx("span",{className:"text-xs font-medium text-green-300",children:"Completed"}),b.jsxs("div",{className:"flex items-center gap-3 text-[11px] text-green-400/80 font-mono",children:[b.jsx("span",{children:c}),u>0&&b.jsxs("span",{children:[o,"/",u," agents"]}),a>0&&b.jsxs("span",{children:[Gn(a)," tok"]}),l>0&&b.jsx("span",{children:yi(l)})]}),b.jsx("button",{onClick:()=>n(!0),className:"p-0.5 rounded text-green-500/60 hover:text-green-300 transition-colors flex-shrink-0 ml-1",children:b.jsx(xa,{className:"w-3.5 h-3.5"})})]})})}const H4={agentNode:v4,scriptNode:S4,gateNode:E4,groupNode:C4,workflowNode:A4,endNode:j4,startNode:z4,ingressNode:M4,egressNode:D4},B4={animatedEdge:R4},I4={type:"animatedEdge"};function q4(){return b.jsx("svg",{style:{position:"absolute",width:0,height:0},children:b.jsxs("defs",{children:[b.jsx("marker",{id:"arrow-default",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"8",markerHeight:"8",orient:"auto-start-reverse",children:b.jsx("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"var(--edge-color)"})}),b.jsx("marker",{id:"arrow-active",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"8",markerHeight:"8",orient:"auto-start-reverse",children:b.jsx("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"var(--edge-active)"})}),b.jsx("marker",{id:"arrow-taken",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"8",markerHeight:"8",orient:"auto-start-reverse",children:b.jsx("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"var(--edge-taken)"})}),b.jsx("marker",{id:"arrow-failed",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"8",markerHeight:"8",orient:"auto-start-reverse",children:b.jsx("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"var(--failed)"})})]})})}function U4(){const e=N5(),n=fe(z=>z.viewContextPath),r=fe(z=>z.selectNode),l=fe(z=>z.selectedNode),a=fe(z=>z.workflowStatus),o=fe(z=>z.wsStatus),u=fe(z=>z.workflowFailedAgent),c=fe(z=>z.navigateIntoSubworkflow),{agents:d,routes:h,parallelGroups:m,forEachGroups:p,nodes:x,groupProgress:v,entryPoint:w,subworkflowContexts:E,parentAgent:S}=e,[_,T,k]=XM([]),[A,q,j]=QM([]),L=V.useRef(!1),O=V.useRef(""),P=JSON.stringify(n);V.useEffect(()=>{if(d.length===0){O.current!==P&&(L.current=!1,O.current=P,T([]),q([]));return}if(O.current!==P&&(L.current=!1,O.current=P),L.current)return;L.current=!0;const{nodes:z,edges:G}=g4(d,h,m,p,x,v,w,S);T(z),q(G)},[d,h,m,p,x,v,w,T,q,P,S]),V.useEffect(()=>{L.current&&T(z=>z.map(G=>{const Q=x[G.id];if(!Q)return G;const K=Q.status||"pending",M=G.data.status;if(K!==M){const I={...G.data,status:K};return G.data.groupName&&v[G.data.groupName]&&(I.progress=v[G.data.groupName]),{...G,data:I}}if(G.data.groupName&&v[G.data.groupName]){const I=G.data.progress,Y=v[G.data.groupName];if(Y&&(!I||I.completed!==Y.completed||I.failed!==Y.failed))return{...G,data:{...G.data,progress:Y}}}return G}))},[x,v,T]);const R=V.useCallback((z,G)=>{G.type==="groupNode"&&G.data.type!=="for_each_group"||r(G.id)},[r]),H=V.useCallback((z,G)=>{E.some(K=>K.parentAgent===G.id)&&c(G.id)},[E,c]),U=V.useCallback(()=>{r(null)},[r]),ee=V.useCallback(z=>{var Q;const G=((Q=z.data)==null?void 0:Q.status)||"pending";return Fe[G]||Fe.pending},[]);V.useEffect(()=>{T(z=>z.map(G=>({...G,selected:G.id===l})))},[l,T]),V.useEffect(()=>{a==="failed"&&u&&r(u)},[a,u,r]);const B=a==="pending"&&d.length===0,F=(()=>{switch(o){case"connecting":return"Connecting to workflow…";case"reconnecting":return"Reconnecting…";case"disconnected":return"Connection lost. Retrying…";default:return"Waiting for workflow…"}})();return b.jsxs("div",{className:"w-full h-full relative",children:[b.jsx(q4,{}),b.jsx(O4,{}),b.jsx(L4,{}),B&&b.jsxs("div",{className:"absolute inset-0 z-10 flex flex-col items-center justify-center pointer-events-none",children:[b.jsxs("div",{className:"relative mb-3",children:[b.jsx(kN,{className:"w-8 h-8 text-[var(--accent)] opacity-20"}),b.jsx(Oo,{className:"w-8 h-8 text-[var(--text-muted)] animate-spin absolute inset-0 opacity-40"})]}),b.jsx("p",{className:"text-sm text-[var(--text-muted)] animate-pulse",children:F})]}),b.jsxs(GM,{nodes:_,edges:A,onNodesChange:k,onEdgesChange:j,onNodeClick:R,onNodeDoubleClick:H,onPaneClick:U,nodeTypes:H4,edgeTypes:B4,defaultEdgeOptions:I4,fitView:!0,fitViewOptions:{padding:.2},minZoom:.2,maxZoom:2,proOptions:{hideAttribution:!0},nodesDraggable:!0,nodesConnectable:!1,elementsSelectable:!0,children:[b.jsx(e5,{variant:Mr.Dots,gap:20,size:1,color:"var(--border-subtle)"}),b.jsx(b5,{nodeColor:ee,maskColor:"var(--minimap-mask)",style:{background:"var(--minimap-bg)"},pannable:!0,zoomable:!0}),b.jsx(o5,{showInteractive:!1,children:b.jsx(P4,{})}),b.jsx(V4,{}),b.jsx($4,{viewPathKey:P}),b.jsx(G4,{})]})]})}function P4(){const{fitView:e}=ll(),n=V.useCallback(()=>{e({padding:.2,duration:300})},[e]);return b.jsx("button",{onClick:n,className:"react-flow__controls-button",title:"Fit view (F)",style:{display:"flex",alignItems:"center",justifyContent:"center"},children:b.jsx(mN,{className:"w-3.5 h-3.5"})})}function V4(){const{fitView:e}=ll();return V.useEffect(()=>{const n=r=>{var a;const l=(a=r.target)==null?void 0:a.tagName;l==="INPUT"||l==="TEXTAREA"||l==="SELECT"||r.key==="f"&&!r.ctrlKey&&!r.metaKey&&!r.altKey&&e({padding:.2,duration:300})};return window.addEventListener("keydown",n),()=>window.removeEventListener("keydown",n)},[e]),null}function $4({viewPathKey:e}){const{fitView:n}=ll(),r=V.useRef(e);return V.useEffect(()=>{r.current!==e&&(r.current=e,setTimeout(()=>n({padding:.2,duration:300}),50))},[e,n]),null}function G4(){const e=j5();return e?b.jsx("div",{className:"absolute top-3 left-1/2 -translate-x-1/2 z-20 animate-[banner-in_200ms_ease-out]",children:b.jsxs("div",{className:"flex items-center gap-2 px-4 py-2 rounded-lg bg-amber-950/90 border border-amber-500/40 shadow-lg shadow-amber-500/10 backdrop-blur-sm max-w-[560px]",children:[b.jsx("span",{className:"text-xs text-amber-300",children:"⚠"}),b.jsx("span",{className:"text-[11px] text-amber-400/80",children:e.message}),b.jsx("a",{href:window.location.pathname,className:"px-2 py-0.5 rounded text-[10px] font-medium text-amber-300 bg-amber-500/20 hover:bg-amber-500/30 transition-colors flex-shrink-0 ml-1",children:"Root"})]})}):null}function ol({items:e}){const n=e.filter(r=>r.value!=null&&r.value!=="");return n.length===0?null:b.jsx("dl",{className:"grid grid-cols-[auto_1fr] gap-x-3 gap-y-1.5 text-xs",children:n.map(({label:r,value:l})=>b.jsxs("div",{className:"contents",children:[b.jsx("dt",{className:"text-[var(--text-muted)] whitespace-nowrap",children:r}),b.jsx("dd",{className:"text-[var(--text)] break-words",children:typeof l=="object"?JSON.stringify(l):String(l)})]},r))})}function j_(e){const n=[];return e.elapsed!=null&&n.push({label:"Elapsed",value:Jt(e.elapsed)}),e.model&&n.push({label:"Model",value:e.model}),e.tokens!=null&&n.push({label:"Tokens",value:Gn(e.tokens)}),e.input_tokens!=null&&e.output_tokens!=null&&n.push({label:"In / Out",value:`${Gn(e.input_tokens)} / ${Gn(e.output_tokens)}`}),e.cost_usd!=null&&n.push({label:"Cost",value:yi(e.cost_usd)}),e.context_window_used!=null&&e.context_window_max!=null&&n.push({label:"Context",value:LN(e.context_window_used,e.context_window_max)}),e.iteration!=null&&n.push({label:"Iteration",value:e.iteration}),e.error_type&&n.push({label:"Error",value:e.error_type}),e.error_message&&n.push({label:"Message",value:e.error_message}),n}function nl({output:e,title:n="Output",defaultExpanded:r=!0,maxHeight:l="300px"}){const[a,o]=V.useState(r),[u,c]=V.useState(!1),d=yw(e);if(!d)return null;const h=typeof e=="object"&&e!==null,m=async()=>{await navigator.clipboard.writeText(d),c(!0),setTimeout(()=>c(!1),2e3)};return b.jsxs("div",{className:"space-y-1.5",children:[b.jsxs("div",{className:"flex items-center justify-between",children:[b.jsxs("button",{onClick:()=>o(!a),className:"flex items-center gap-1 text-[10px] uppercase tracking-wider text-[var(--text-muted)] hover:text-[var(--text)] transition-colors font-semibold",children:[a?b.jsx(il,{className:"w-3 h-3"}):b.jsx(Rr,{className:"w-3 h-3"}),n]}),a&&b.jsx("button",{onClick:m,className:"flex items-center gap-1 text-[10px] text-[var(--text-muted)] hover:text-[var(--text)] transition-colors",title:"Copy to clipboard",children:u?b.jsx(Yi,{className:"w-3 h-3 text-[var(--completed)]"}):b.jsx(pw,{className:"w-3 h-3"})})]}),a&&b.jsx("pre",{className:"bg-[var(--bg)] border border-[var(--border)] rounded-md p-3 font-mono text-[11px] leading-relaxed text-[var(--text)] overflow-auto whitespace-pre-wrap break-words",style:{maxHeight:l},children:h?b.jsx(F4,{text:d}):d})]})}function F4({text:e}){const n=e.split(/("(?:[^"\\]|\\.)*")/g);return b.jsx(b.Fragment,{children:n.map((r,l)=>{if(l%2===1){const o=n.slice(l+1).join(""),u=/^\s*:/.test(o);return b.jsx("span",{className:u?"text-blue-400":"text-green-400",children:r},l)}const a=r.replace(/\b(true|false|null)\b|(-?\d+\.?\d*(?:e[+-]?\d+)?)/gi,(o,u,c)=>u?`${o}`:c?`${o}`:o);return b.jsx("span",{dangerouslySetInnerHTML:{__html:a}},l)})})}function Im({activity:e,defaultExpanded:n=!0}){const[r,l]=V.useState(n),a=V.useRef(null);return V.useEffect(()=>{a.current&&r&&(a.current.scrollTop=a.current.scrollHeight)},[e.length,r]),e.length===0?null:b.jsxs("div",{className:"space-y-1.5",children:[b.jsxs("button",{onClick:()=>l(!r),className:"flex items-center gap-1 text-[10px] uppercase tracking-wider text-[var(--text-muted)] hover:text-[var(--text)] transition-colors font-semibold",children:[r?b.jsx(il,{className:"w-3 h-3"}):b.jsx(Rr,{className:"w-3 h-3"}),"Activity (",e.length,")"]}),r&&b.jsx("div",{ref:a,className:"max-h-[400px] overflow-y-auto space-y-0.5",children:e.map((o,u)=>b.jsx(Y4,{entry:o},u))})]})}function Y4({entry:e}){const n={reasoning:"text-indigo-400/70","tool-start":"text-blue-400","tool-complete":"text-green-400",turn:"text-amber-400",message:"text-[var(--text)]"};return b.jsxs("div",{className:He("py-1.5 px-2 rounded text-[11px] leading-relaxed border-b border-[var(--border-subtle)] last:border-b-0"),children:[b.jsxs("div",{className:"flex items-start gap-1.5",children:[b.jsx("span",{className:"w-4 text-center flex-shrink-0",children:e.icon}),b.jsx("span",{className:"text-[var(--text-muted)] uppercase text-[9px] font-semibold tracking-wider w-12 flex-shrink-0 pt-px",children:e.label}),b.jsx("span",{className:He("break-words",n[e.type]||"text-[var(--text)]"),children:typeof e.text=="object"?JSON.stringify(e.text):e.text})]}),e.detail&&b.jsx("div",{className:"mt-1 ml-[4.25rem] px-2 py-1 bg-[var(--bg)] rounded text-[10px] font-mono text-[var(--text-muted)] whitespace-pre-wrap break-words max-h-24 overflow-y-auto",children:typeof e.detail=="object"?JSON.stringify(e.detail,null,2):e.detail})]})}function x1({node:e}){const n=e.status,r=Fe[n]||Fe.pending,l=e.iterationHistory&&e.iterationHistory.length>0;return b.jsxs("div",{className:"space-y-4",children:[b.jsxs("div",{className:"flex items-center gap-2",children:[b.jsx("span",{className:"inline-flex items-center px-2 py-0.5 rounded text-[10px] font-bold uppercase tracking-wider",style:{backgroundColor:`${r}20`,color:r},children:n}),b.jsx("span",{className:"text-xs text-[var(--text-muted)]",children:"Agent"})]}),l?b.jsx(y1,{label:`Iteration ${e.iteration??"?"} (current)`,defaultExpanded:!0,status:n,snapshot:{iteration:e.iteration??0,prompt:e.prompt,output:e.output,elapsed:e.elapsed,model:e.model,tokens:e.tokens,input_tokens:e.input_tokens,output_tokens:e.output_tokens,cost_usd:e.cost_usd,activity:e.activity,error_type:e.error_type,error_message:e.error_message}}):b.jsxs(b.Fragment,{children:[b.jsx(ol,{items:j_(e)}),e.prompt&&b.jsx(nl,{output:e.prompt,title:"Input / Prompt",defaultExpanded:!0}),b.jsx(Im,{activity:e.activity,defaultExpanded:n!=="completed"}),e.output!=null&&b.jsx(nl,{output:e.output,title:"Output"})]}),l&&[...e.iterationHistory].reverse().map(a=>b.jsx(y1,{label:`Iteration ${a.iteration}`,defaultExpanded:!1,status:n,snapshot:a},a.iteration))]})}function y1({label:e,defaultExpanded:n,snapshot:r,status:l}){const[a,o]=V.useState(n);return b.jsxs("div",{className:"border border-[var(--border)] rounded-lg overflow-hidden",children:[b.jsxs("button",{onClick:()=>o(!a),className:"flex items-center gap-2 w-full px-3 py-2 bg-[var(--bg)] hover:bg-[var(--node-bg)] transition-colors text-left",children:[a?b.jsx(il,{className:"w-3.5 h-3.5 text-[var(--text-muted)] flex-shrink-0"}):b.jsx(Rr,{className:"w-3.5 h-3.5 text-[var(--text-muted)] flex-shrink-0"}),b.jsx("span",{className:"text-xs font-semibold text-[var(--text)]",children:e}),r.elapsed!=null&&b.jsx("span",{className:"text-[10px] text-[var(--text-muted)] ml-auto",children:X4(r.elapsed)})]}),a&&b.jsxs("div",{className:"px-3 py-3 space-y-3 border-t border-[var(--border)]",children:[b.jsx(ol,{items:j_(r)}),r.prompt&&b.jsx(nl,{output:r.prompt,title:"Input / Prompt",defaultExpanded:!1}),b.jsx(Im,{activity:r.activity,defaultExpanded:n&&l!=="completed"}),r.output!=null&&b.jsx(nl,{output:r.output,title:"Output",defaultExpanded:!0}),r.error_type&&b.jsxs("div",{className:"text-xs text-red-400",children:[b.jsx("span",{className:"font-semibold",children:r.error_type}),r.error_message&&b.jsxs("span",{className:"ml-1",children:["— ",r.error_message]})]})]})]})}function X4(e){if(e<1)return`${(e*1e3).toFixed(0)}ms`;if(e<60)return`${e.toFixed(1)}s`;const n=Math.floor(e/60),r=(e%60).toFixed(0);return`${n}m ${r}s`}function Q4({node:e}){const n=e.status,r=Fe[n]||Fe.pending,l=[];e.elapsed!=null&&l.push({label:"Elapsed",value:Jt(e.elapsed)}),e.exit_code!=null&&l.push({label:"Exit Code",value:e.exit_code}),e.error_type&&l.push({label:"Error",value:e.error_type}),e.error_message&&l.push({label:"Message",value:e.error_message});let a="";return e.stdout&&(a+=e.stdout),e.stderr&&(a+=(a?` +`)),m=h.reduce((p,x)=>p.concat(...x),[]);return[h,m]}return[[],[]]},[e]);return V.useEffect(()=>{const d=(n==null?void 0:n.target)??Wv,h=(n==null?void 0:n.actInsideInputWithModifier)??!0;if(e!==null){const m=v=>{var _,S;if(a.current=v.ctrlKey||v.metaKey||v.shiftKey||v.altKey,(!a.current||a.current&&!h)&&CS(v))return!1;const E=tb(v.code,c);if(o.current.add(v[E]),eb(u,o.current,!1)){const T=((S=(_=v.composedPath)==null?void 0:_.call(v))==null?void 0:S[0])||v.target,k=(T==null?void 0:T.nodeName)==="BUTTON"||(T==null?void 0:T.nodeName)==="A";n.preventDefault!==!1&&(a.current||!k)&&v.preventDefault(),l(!0)}},p=v=>{const w=tb(v.code,c);eb(u,o.current,!0)?(l(!1),o.current.clear()):o.current.delete(v[w]),v.key==="Meta"&&o.current.clear(),a.current=!1},x=()=>{o.current.clear(),l(!1)};return d==null||d.addEventListener("keydown",m),d==null||d.addEventListener("keyup",p),window.addEventListener("blur",x),window.addEventListener("contextmenu",x),()=>{d==null||d.removeEventListener("keydown",m),d==null||d.removeEventListener("keyup",p),window.removeEventListener("blur",x),window.removeEventListener("contextmenu",x)}}},[e,l]),r}function eb(e,n,r){return e.filter(l=>r||l.length===n.size).some(l=>l.every(a=>n.has(a)))}function tb(e,n){return n.includes(e)?"code":"key"}const _z=()=>{const e=mt();return V.useMemo(()=>({zoomIn:n=>{const{panZoom:r}=e.getState();return r?r.scaleBy(1.2,{duration:n==null?void 0:n.duration}):Promise.resolve(!1)},zoomOut:n=>{const{panZoom:r}=e.getState();return r?r.scaleBy(1/1.2,{duration:n==null?void 0:n.duration}):Promise.resolve(!1)},zoomTo:(n,r)=>{const{panZoom:l}=e.getState();return l?l.scaleTo(n,{duration:r==null?void 0:r.duration}):Promise.resolve(!1)},getZoom:()=>e.getState().transform[2],setViewport:async(n,r)=>{const{transform:[l,a,o],panZoom:u}=e.getState();return u?(await u.setViewport({x:n.x??l,y:n.y??a,zoom:n.zoom??o},r),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{const[n,r,l]=e.getState().transform;return{x:n,y:r,zoom:l}},setCenter:async(n,r,l)=>e.getState().setCenter(n,r,l),fitBounds:async(n,r)=>{const{width:l,height:a,minZoom:o,maxZoom:u,panZoom:c}=e.getState(),d=Am(n,l,a,o,u,(r==null?void 0:r.padding)??.1);return c?(await c.setViewport(d,{duration:r==null?void 0:r.duration,ease:r==null?void 0:r.ease,interpolate:r==null?void 0:r.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(n,r={})=>{const{transform:l,snapGrid:a,snapToGrid:o,domNode:u}=e.getState();if(!u)return n;const{x:c,y:d}=u.getBoundingClientRect(),h={x:n.x-c,y:n.y-d},m=r.snapGrid??a,p=r.snapToGrid??o;return ns(h,l,p,m)},flowToScreenPosition:n=>{const{transform:r,domNode:l}=e.getState();if(!l)return n;const{x:a,y:o}=l.getBoundingClientRect(),u=mc(n,r);return{x:u.x+a,y:u.y+o}}}),[])};function XS(e,n){const r=[],l=new Map,a=[];for(const o of e)if(o.type==="add"){a.push(o);continue}else if(o.type==="remove"||o.type==="replace")l.set(o.id,[o]);else{const u=l.get(o.id);u?u.push(o):l.set(o.id,[o])}for(const o of n){const u=l.get(o.id);if(!u){r.push(o);continue}if(u[0].type==="remove")continue;if(u[0].type==="replace"){r.push({...u[0].item});continue}const c={...o};for(const d of u)kz(d,c);r.push(c)}return a.length&&a.forEach(o=>{o.index!==void 0?r.splice(o.index,0,{...o.item}):r.push({...o.item})}),r}function kz(e,n){switch(e.type){case"select":{n.selected=e.selected;break}case"position":{typeof e.position<"u"&&(n.position=e.position),typeof e.dragging<"u"&&(n.dragging=e.dragging);break}case"dimensions":{typeof e.dimensions<"u"&&(n.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes==="width")&&(n.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes==="height")&&(n.height=e.dimensions.height))),typeof e.resizing=="boolean"&&(n.resizing=e.resizing);break}}}function QS(e,n){return XS(e,n)}function ZS(e,n){return XS(e,n)}function $i(e,n){return{id:e,type:"select",selected:n}}function ra(e,n=new Set,r=!1){const l=[];for(const[a,o]of e){const u=n.has(a);!(o.selected===void 0&&!u)&&o.selected!==u&&(r&&(o.selected=u),l.push($i(o.id,u)))}return l}function nb({items:e=[],lookup:n}){var a;const r=[],l=new Map(e.map(o=>[o.id,o]));for(const[o,u]of e.entries()){const c=n.get(u.id),d=((a=c==null?void 0:c.internals)==null?void 0:a.userNode)??c;d!==void 0&&d!==u&&r.push({id:u.id,item:u,type:"replace"}),d===void 0&&r.push({item:u,type:"add",index:o})}for(const[o]of n)l.get(o)===void 0&&r.push({id:o,type:"remove"});return r}function rb(e){return{id:e.id,type:"remove"}}const ib=e=>YA(e),Ez=e=>vS(e);function KS(e){return V.forwardRef(e)}const Nz=typeof window<"u"?V.useLayoutEffect:V.useEffect;function lb(e){const[n,r]=V.useState(BigInt(0)),[l]=V.useState(()=>Cz(()=>r(a=>a+BigInt(1))));return Nz(()=>{const a=l.get();a.length&&(e(a),l.reset())},[n]),l}function Cz(e){let n=[];return{get:()=>n,reset:()=>{n=[]},push:r=>{n.push(r),e()}}}const JS=V.createContext(null);function Tz({children:e}){const n=mt(),r=V.useCallback(c=>{const{nodes:d=[],setNodes:h,hasDefaultNodes:m,onNodesChange:p,nodeLookup:x,fitViewQueued:v,onNodesChangeMiddlewareMap:w}=n.getState();let E=d;for(const S of c)E=typeof S=="function"?S(E):S;let _=nb({items:E,lookup:x});for(const S of w.values())_=S(_);m&&h(E),_.length>0?p==null||p(_):v&&window.requestAnimationFrame(()=>{const{fitViewQueued:S,nodes:T,setNodes:k}=n.getState();S&&k(T)})},[]),l=lb(r),a=V.useCallback(c=>{const{edges:d=[],setEdges:h,hasDefaultEdges:m,onEdgesChange:p,edgeLookup:x}=n.getState();let v=d;for(const w of c)v=typeof w=="function"?w(v):w;m?h(v):p&&p(nb({items:v,lookup:x}))},[]),o=lb(a),u=V.useMemo(()=>({nodeQueue:l,edgeQueue:o}),[]);return b.jsx(JS.Provider,{value:u,children:e})}function Az(){const e=V.useContext(JS);if(!e)throw new Error("useBatchContext must be used within a BatchProvider");return e}const jz=e=>!!e.panZoom;function ll(){const e=_z(),n=mt(),r=Az(),l=Ye(jz),a=V.useMemo(()=>{const o=p=>n.getState().nodeLookup.get(p),u=p=>{r.nodeQueue.push(p)},c=p=>{r.edgeQueue.push(p)},d=p=>{var S,T;const{nodeLookup:x,nodeOrigin:v}=n.getState(),w=ib(p)?p:x.get(p.id),E=w.parentId?ES(w.position,w.measured,w.parentId,x,v):w.position,_={...w,position:E,width:((S=w.measured)==null?void 0:S.width)??w.width,height:((T=w.measured)==null?void 0:T.height)??w.height};return ha(_)},h=(p,x,v={replace:!1})=>{u(w=>w.map(E=>{if(E.id===p){const _=typeof x=="function"?x(E):x;return v.replace&&ib(_)?_:{...E,..._}}return E}))},m=(p,x,v={replace:!1})=>{c(w=>w.map(E=>{if(E.id===p){const _=typeof x=="function"?x(E):x;return v.replace&&Ez(_)?_:{...E,..._}}return E}))};return{getNodes:()=>n.getState().nodes.map(p=>({...p})),getNode:p=>{var x;return(x=o(p))==null?void 0:x.internals.userNode},getInternalNode:o,getEdges:()=>{const{edges:p=[]}=n.getState();return p.map(x=>({...x}))},getEdge:p=>n.getState().edgeLookup.get(p),setNodes:u,setEdges:c,addNodes:p=>{const x=Array.isArray(p)?p:[p];r.nodeQueue.push(v=>[...v,...x])},addEdges:p=>{const x=Array.isArray(p)?p:[p];r.edgeQueue.push(v=>[...v,...x])},toObject:()=>{const{nodes:p=[],edges:x=[],transform:v}=n.getState(),[w,E,_]=v;return{nodes:p.map(S=>({...S})),edges:x.map(S=>({...S})),viewport:{x:w,y:E,zoom:_}}},deleteElements:async({nodes:p=[],edges:x=[]})=>{const{nodes:v,edges:w,onNodesDelete:E,onEdgesDelete:_,triggerNodeChanges:S,triggerEdgeChanges:T,onDelete:k,onBeforeDelete:A}=n.getState(),{nodes:q,edges:j}=await JA({nodesToRemove:p,edgesToRemove:x,nodes:v,edges:w,onBeforeDelete:A}),L=j.length>0,R=q.length>0;if(L){const P=j.map(rb);_==null||_(j),T(P)}if(R){const P=q.map(rb);E==null||E(q),S(P)}return(R||L)&&(k==null||k({nodes:q,edges:j})),{deletedNodes:q,deletedEdges:j}},getIntersectingNodes:(p,x=!0,v)=>{const w=jv(p),E=w?p:d(p),_=v!==void 0;return E?(v||n.getState().nodes).filter(S=>{const T=n.getState().nodeLookup.get(S.id);if(T&&!w&&(S.id===p.id||!T.internals.positionAbsolute))return!1;const k=ha(_?S:T),A=$o(k,E);return x&&A>0||A>=k.width*k.height||A>=E.width*E.height}):[]},isNodeIntersecting:(p,x,v=!0)=>{const E=jv(p)?p:d(p);if(!E)return!1;const _=$o(E,x);return v&&_>0||_>=x.width*x.height||_>=E.width*E.height},updateNode:h,updateNodeData:(p,x,v={replace:!1})=>{h(p,w=>{const E=typeof x=="function"?x(w):x;return v.replace?{...w,data:E}:{...w,data:{...w.data,...E}}},v)},updateEdge:m,updateEdgeData:(p,x,v={replace:!1})=>{m(p,w=>{const E=typeof x=="function"?x(w):x;return v.replace?{...w,data:E}:{...w,data:{...w.data,...E}}},v)},getNodesBounds:p=>{const{nodeLookup:x,nodeOrigin:v}=n.getState();return XA(p,{nodeLookup:x,nodeOrigin:v})},getHandleConnections:({type:p,id:x,nodeId:v})=>{var w;return Array.from(((w=n.getState().connectionLookup.get(`${v}-${p}${x?`-${x}`:""}`))==null?void 0:w.values())??[])},getNodeConnections:({type:p,handleId:x,nodeId:v})=>{var w;return Array.from(((w=n.getState().connectionLookup.get(`${v}${p?x?`-${p}-${x}`:`-${p}`:""}`))==null?void 0:w.values())??[])},fitView:async p=>{const x=n.getState().fitViewResolver??nj();return n.setState({fitViewQueued:!0,fitViewOptions:p,fitViewResolver:x}),r.nodeQueue.push(v=>[...v]),x.promise}}},[]);return V.useMemo(()=>({...a,...e,viewportInitialized:l}),[l])}const ab=e=>e.selected,zz=typeof window<"u"?window:void 0;function Mz({deleteKeyCode:e,multiSelectionKeyCode:n}){const r=mt(),{deleteElements:l}=ll(),a=Fo(e,{actInsideInputWithModifier:!1}),o=Fo(n,{target:zz});V.useEffect(()=>{if(a){const{edges:u,nodes:c}=r.getState();l({nodes:c.filter(ab),edges:u.filter(ab)}),r.setState({nodesSelectionActive:!1})}},[a]),V.useEffect(()=>{r.setState({multiSelectionActive:o})},[o])}function Dz(e){const n=mt();V.useEffect(()=>{const r=()=>{var a,o,u,c;if(!e.current||!(((o=(a=e.current).checkVisibility)==null?void 0:o.call(a))??!0))return!1;const l=jm(e.current);(l.height===0||l.width===0)&&((c=(u=n.getState()).onError)==null||c.call(u,"004",lr.error004())),n.setState({width:l.width||500,height:l.height||500})};if(e.current){r(),window.addEventListener("resize",r);const l=new ResizeObserver(()=>r());return l.observe(e.current),()=>{window.removeEventListener("resize",r),l&&e.current&&l.unobserve(e.current)}}},[])}const Hc={position:"absolute",width:"100%",height:"100%",top:0,left:0},Rz=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function Oz({onPaneContextMenu:e,zoomOnScroll:n=!0,zoomOnPinch:r=!0,panOnScroll:l=!1,panOnScrollSpeed:a=.5,panOnScrollMode:o=Zi.Free,zoomOnDoubleClick:u=!0,panOnDrag:c=!0,defaultViewport:d,translateExtent:h,minZoom:m,maxZoom:p,zoomActivationKeyCode:x,preventScrolling:v=!0,children:w,noWheelClassName:E,noPanClassName:_,onViewportChange:S,isControlledViewport:T,paneClickDistance:k,selectionOnDrag:A}){const q=mt(),j=V.useRef(null),{userSelectionActive:L,lib:R,connectionInProgress:P}=Ye(Rz,pt),O=Fo(x),H=V.useRef();Dz(j);const U=V.useCallback(ee=>{S==null||S({x:ee[0],y:ee[1],zoom:ee[2]}),T||q.setState({transform:ee})},[S,T]);return V.useEffect(()=>{if(j.current){H.current=Ij({domNode:j.current,minZoom:m,maxZoom:p,translateExtent:h,viewport:d,onDraggingChange:z=>q.setState(G=>G.paneDragging===z?G:{paneDragging:z}),onPanZoomStart:(z,G)=>{const{onViewportChangeStart:Q,onMoveStart:K}=q.getState();K==null||K(z,G),Q==null||Q(G)},onPanZoom:(z,G)=>{const{onViewportChange:Q,onMove:K}=q.getState();K==null||K(z,G),Q==null||Q(G)},onPanZoomEnd:(z,G)=>{const{onViewportChangeEnd:Q,onMoveEnd:K}=q.getState();K==null||K(z,G),Q==null||Q(G)}});const{x:ee,y:B,zoom:F}=H.current.getViewport();return q.setState({panZoom:H.current,transform:[ee,B,F],domNode:j.current.closest(".react-flow")}),()=>{var z;(z=H.current)==null||z.destroy()}}},[]),V.useEffect(()=>{var ee;(ee=H.current)==null||ee.update({onPaneContextMenu:e,zoomOnScroll:n,zoomOnPinch:r,panOnScroll:l,panOnScrollSpeed:a,panOnScrollMode:o,zoomOnDoubleClick:u,panOnDrag:c,zoomActivationKeyPressed:O,preventScrolling:v,noPanClassName:_,userSelectionActive:L,noWheelClassName:E,lib:R,onTransformChange:U,connectionInProgress:P,selectionOnDrag:A,paneClickDistance:k})},[e,n,r,l,a,o,u,c,O,v,_,L,E,R,U,P,A,k]),b.jsx("div",{className:"react-flow__renderer",ref:j,style:Hc,children:w})}const Lz=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function Hz(){const{userSelectionActive:e,userSelectionRect:n}=Ye(Lz,pt);return e&&n?b.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:n.width,height:n.height,transform:`translate(${n.x}px, ${n.y}px)`}}):null}const Eh=(e,n)=>r=>{r.target===n.current&&(e==null||e(r))},Bz=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,connectionInProgress:e.connection.inProgress,dragging:e.paneDragging});function Iz({isSelecting:e,selectionKeyPressed:n,selectionMode:r=Vo.Full,panOnDrag:l,paneClickDistance:a,selectionOnDrag:o,onSelectionStart:u,onSelectionEnd:c,onPaneClick:d,onPaneContextMenu:h,onPaneScroll:m,onPaneMouseEnter:p,onPaneMouseMove:x,onPaneMouseLeave:v,children:w}){const E=mt(),{userSelectionActive:_,elementsSelectable:S,dragging:T,connectionInProgress:k}=Ye(Bz,pt),A=S&&(e||_),q=V.useRef(null),j=V.useRef(),L=V.useRef(new Set),R=V.useRef(new Set),P=V.useRef(!1),O=Q=>{if(P.current||k){P.current=!1;return}d==null||d(Q),E.getState().resetSelectedElements(),E.setState({nodesSelectionActive:!1})},H=Q=>{if(Array.isArray(l)&&(l!=null&&l.includes(2))){Q.preventDefault();return}h==null||h(Q)},U=m?Q=>m(Q):void 0,ee=Q=>{P.current&&(Q.stopPropagation(),P.current=!1)},B=Q=>{var X,J;const{domNode:K}=E.getState();if(j.current=K==null?void 0:K.getBoundingClientRect(),!j.current)return;const M=Q.target===q.current;if(!M&&!!Q.target.closest(".nokey")||!e||!(o&&M||n)||Q.button!==0||!Q.isPrimary)return;(J=(X=Q.target)==null?void 0:X.setPointerCapture)==null||J.call(X,Q.pointerId),P.current=!1;const{x:N,y:$}=$n(Q.nativeEvent,j.current);E.setState({userSelectionRect:{width:0,height:0,startX:N,startY:$,x:N,y:$}}),M||(Q.stopPropagation(),Q.preventDefault())},F=Q=>{const{userSelectionRect:K,transform:M,nodeLookup:I,edgeLookup:Y,connectionLookup:N,triggerNodeChanges:$,triggerEdgeChanges:X,defaultEdgeOptions:J,resetSelectedElements:ne}=E.getState();if(!j.current||!K)return;const{x:re,y:se}=$n(Q.nativeEvent,j.current),{startX:xe,startY:be}=K;if(!P.current){const Te=n?0:a;if(Math.hypot(re-xe,se-be)<=Te)return;ne(),u==null||u(Q)}P.current=!0;const ye={startX:xe,startY:be,x:re Te.id)),R.current=new Set;const ze=(J==null?void 0:J.selectable)??!0;for(const Te of L.current){const ut=N.get(Te);if(ut)for(const{edgeId:nt}of ut.values()){const zt=Y.get(nt);zt&&(zt.selectable??ze)&&R.current.add(nt)}}if(!zv(pe,L.current)){const Te=ra(I,L.current,!0);$(Te)}if(!zv(_e,R.current)){const Te=ra(Y,R.current);X(Te)}E.setState({userSelectionRect:ye,userSelectionActive:!0,nodesSelectionActive:!1})},z=Q=>{var K,M;Q.button===0&&((M=(K=Q.target)==null?void 0:K.releasePointerCapture)==null||M.call(K,Q.pointerId),!_&&Q.target===q.current&&E.getState().userSelectionRect&&(O==null||O(Q)),E.setState({userSelectionActive:!1,userSelectionRect:null}),P.current&&(c==null||c(Q),E.setState({nodesSelectionActive:L.current.size>0})))},G=l===!0||Array.isArray(l)&&l.includes(0);return b.jsxs("div",{className:jt(["react-flow__pane",{draggable:G,dragging:T,selection:e}]),onClick:A?void 0:Eh(O,q),onContextMenu:Eh(H,q),onWheel:Eh(U,q),onPointerEnter:A?void 0:p,onPointerMove:A?F:x,onPointerUp:A?z:void 0,onPointerDownCapture:A?B:void 0,onClickCapture:A?ee:void 0,onPointerLeave:v,ref:q,style:Hc,children:[w,b.jsx(Hz,{})]})}function tm({id:e,store:n,unselect:r=!1,nodeRef:l}){const{addSelectedNodes:a,unselectNodesAndEdges:o,multiSelectionActive:u,nodeLookup:c,onError:d}=n.getState(),h=c.get(e);if(!h){d==null||d("012",lr.error012(e));return}n.setState({nodesSelectionActive:!1}),h.selected?(r||h.selected&&u)&&(o({nodes:[h],edges:[]}),requestAnimationFrame(()=>{var m;return(m=l==null?void 0:l.current)==null?void 0:m.blur()})):a([e])}function WS({nodeRef:e,disabled:n=!1,noDragClassName:r,handleSelector:l,nodeId:a,isSelectable:o,nodeClickDistance:u}){const c=mt(),[d,h]=V.useState(!1),m=V.useRef();return V.useEffect(()=>{m.current=Ej({getStoreItems:()=>c.getState(),onNodeMouseDown:p=>{tm({id:p,store:c,nodeRef:e})},onDragStart:()=>{h(!0)},onDragStop:()=>{h(!1)}})},[]),V.useEffect(()=>{if(!(n||!e.current||!m.current))return m.current.update({noDragClassName:r,handleSelector:l,domNode:e.current,isSelectable:o,nodeId:a,nodeClickDistance:u}),()=>{var p;(p=m.current)==null||p.destroy()}},[r,l,n,o,e,a,u]),d}const qz=e=>n=>n.selected&&(n.draggable||e&&typeof n.draggable>"u");function e_(){const e=mt();return V.useCallback(r=>{const{nodeExtent:l,snapToGrid:a,snapGrid:o,nodesDraggable:u,onError:c,updateNodePositions:d,nodeLookup:h,nodeOrigin:m}=e.getState(),p=new Map,x=qz(u),v=a?o[0]:5,w=a?o[1]:5,E=r.direction.x*v*r.factor,_=r.direction.y*w*r.factor;for(const[,S]of h){if(!x(S))continue;let T={x:S.internals.positionAbsolute.x+E,y:S.internals.positionAbsolute.y+_};a&&(T=ts(T,o));const{position:k,positionAbsolute:A}=bS({nodeId:S.id,nextPosition:T,nodeLookup:h,nodeExtent:l,nodeOrigin:m,onError:c});S.position=k,S.internals.positionAbsolute=A,p.set(S.id,S)}d(p)},[])}const Hm=V.createContext(null),Uz=Hm.Provider;Hm.Consumer;const t_=()=>V.useContext(Hm),Pz=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),Vz=(e,n,r)=>l=>{const{connectionClickStartHandle:a,connectionMode:o,connection:u}=l,{fromHandle:c,toHandle:d,isValid:h}=u,m=(d==null?void 0:d.nodeId)===e&&(d==null?void 0:d.id)===n&&(d==null?void 0:d.type)===r;return{connectingFrom:(c==null?void 0:c.nodeId)===e&&(c==null?void 0:c.id)===n&&(c==null?void 0:c.type)===r,connectingTo:m,clickConnecting:(a==null?void 0:a.nodeId)===e&&(a==null?void 0:a.id)===n&&(a==null?void 0:a.type)===r,isPossibleEndHandle:o===fa.Strict?(c==null?void 0:c.type)!==r:e!==(c==null?void 0:c.nodeId)||n!==(c==null?void 0:c.id),connectionInProcess:!!c,clickConnectionInProcess:!!a,valid:m&&h}};function $z({type:e="source",position:n=ve.Top,isValidConnection:r,isConnectable:l=!0,isConnectableStart:a=!0,isConnectableEnd:o=!0,id:u,onConnect:c,children:d,className:h,onMouseDown:m,onTouchStart:p,...x},v){var F,z;const w=u||null,E=e==="target",_=mt(),S=t_(),{connectOnClick:T,noPanClassName:k,rfId:A}=Ye(Pz,pt),{connectingFrom:q,connectingTo:j,clickConnecting:L,isPossibleEndHandle:R,connectionInProcess:P,clickConnectionInProcess:O,valid:H}=Ye(Vz(S,w,e),pt);S||(z=(F=_.getState()).onError)==null||z.call(F,"010",lr.error010());const U=G=>{const{defaultEdgeOptions:Q,onConnect:K,hasDefaultEdges:M}=_.getState(),I={...Q,...G};if(M){const{edges:Y,setEdges:N}=_.getState();N(uj(I,Y))}K==null||K(I),c==null||c(I)},ee=G=>{if(!S)return;const Q=TS(G.nativeEvent);if(a&&(Q&&G.button===0||!Q)){const K=_.getState();em.onPointerDown(G.nativeEvent,{handleDomNode:G.currentTarget,autoPanOnConnect:K.autoPanOnConnect,connectionMode:K.connectionMode,connectionRadius:K.connectionRadius,domNode:K.domNode,nodeLookup:K.nodeLookup,lib:K.lib,isTarget:E,handleId:w,nodeId:S,flowId:K.rfId,panBy:K.panBy,cancelConnection:K.cancelConnection,onConnectStart:K.onConnectStart,onConnectEnd:(...M)=>{var I,Y;return(Y=(I=_.getState()).onConnectEnd)==null?void 0:Y.call(I,...M)},updateConnection:K.updateConnection,onConnect:U,isValidConnection:r||((...M)=>{var I,Y;return((Y=(I=_.getState()).isValidConnection)==null?void 0:Y.call(I,...M))??!0}),getTransform:()=>_.getState().transform,getFromHandle:()=>_.getState().connection.fromHandle,autoPanSpeed:K.autoPanSpeed,dragThreshold:K.connectionDragThreshold})}Q?m==null||m(G):p==null||p(G)},B=G=>{const{onClickConnectStart:Q,onClickConnectEnd:K,connectionClickStartHandle:M,connectionMode:I,isValidConnection:Y,lib:N,rfId:$,nodeLookup:X,connection:J}=_.getState();if(!S||!M&&!a)return;if(!M){Q==null||Q(G.nativeEvent,{nodeId:S,handleId:w,handleType:e}),_.setState({connectionClickStartHandle:{nodeId:S,type:e,id:w}});return}const ne=NS(G.target),re=r||Y,{connection:se,isValid:xe}=em.isValid(G.nativeEvent,{handle:{nodeId:S,id:w,type:e},connectionMode:I,fromNodeId:M.nodeId,fromHandleId:M.id||null,fromType:M.type,isValidConnection:re,flowId:$,doc:ne,lib:N,nodeLookup:X});xe&&se&&U(se);const be=structuredClone(J);delete be.inProgress,be.toPosition=be.toHandle?be.toHandle.position:null,K==null||K(G,be),_.setState({connectionClickStartHandle:null})};return b.jsx("div",{"data-handleid":w,"data-nodeid":S,"data-handlepos":n,"data-id":`${A}-${S}-${w}-${e}`,className:jt(["react-flow__handle",`react-flow__handle-${n}`,"nodrag",k,h,{source:!E,target:E,connectable:l,connectablestart:a,connectableend:o,clickconnecting:L,connectingfrom:q,connectingto:j,valid:H,connectionindicator:l&&(!P||R)&&(P||O?o:a)}]),onMouseDown:ee,onTouchStart:ee,onClick:T?B:void 0,ref:v,...x,children:d})}const Lt=V.memo(KS($z));function Gz({data:e,isConnectable:n,sourcePosition:r=ve.Bottom}){return b.jsxs(b.Fragment,{children:[e==null?void 0:e.label,b.jsx(Lt,{type:"source",position:r,isConnectable:n})]})}function Fz({data:e,isConnectable:n,targetPosition:r=ve.Top,sourcePosition:l=ve.Bottom}){return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:r,isConnectable:n}),e==null?void 0:e.label,b.jsx(Lt,{type:"source",position:l,isConnectable:n})]})}function Yz(){return null}function Xz({data:e,isConnectable:n,targetPosition:r=ve.Top}){return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:r,isConnectable:n}),e==null?void 0:e.label]})}const gc={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},ob={input:Gz,default:Fz,output:Xz,group:Yz};function Qz(e){var n,r,l,a;return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??((n=e.style)==null?void 0:n.width),height:e.height??e.initialHeight??((r=e.style)==null?void 0:r.height)}:{width:e.width??((l=e.style)==null?void 0:l.width),height:e.height??((a=e.style)==null?void 0:a.height)}}const Zz=e=>{const{width:n,height:r,x:l,y:a}=es(e.nodeLookup,{filter:o=>!!o.selected});return{width:Vn(n)?n:null,height:Vn(r)?r:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${l}px,${a}px)`}};function Kz({onSelectionContextMenu:e,noPanClassName:n,disableKeyboardA11y:r}){const l=mt(),{width:a,height:o,transformString:u,userSelectionActive:c}=Ye(Zz,pt),d=e_(),h=V.useRef(null);V.useEffect(()=>{var v;r||(v=h.current)==null||v.focus({preventScroll:!0})},[r]);const m=!c&&a!==null&&o!==null;if(WS({nodeRef:h,disabled:!m}),!m)return null;const p=e?v=>{const w=l.getState().nodes.filter(E=>E.selected);e(v,w)}:void 0,x=v=>{Object.prototype.hasOwnProperty.call(gc,v.key)&&(v.preventDefault(),d({direction:gc[v.key],factor:v.shiftKey?4:1}))};return b.jsx("div",{className:jt(["react-flow__nodesselection","react-flow__container",n]),style:{transform:u},children:b.jsx("div",{ref:h,className:"react-flow__nodesselection-rect",onContextMenu:p,tabIndex:r?void 0:-1,onKeyDown:r?void 0:x,style:{width:a,height:o}})})}const sb=typeof window<"u"?window:void 0,Jz=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function n_({children:e,onPaneClick:n,onPaneMouseEnter:r,onPaneMouseMove:l,onPaneMouseLeave:a,onPaneContextMenu:o,onPaneScroll:u,paneClickDistance:c,deleteKeyCode:d,selectionKeyCode:h,selectionOnDrag:m,selectionMode:p,onSelectionStart:x,onSelectionEnd:v,multiSelectionKeyCode:w,panActivationKeyCode:E,zoomActivationKeyCode:_,elementsSelectable:S,zoomOnScroll:T,zoomOnPinch:k,panOnScroll:A,panOnScrollSpeed:q,panOnScrollMode:j,zoomOnDoubleClick:L,panOnDrag:R,defaultViewport:P,translateExtent:O,minZoom:H,maxZoom:U,preventScrolling:ee,onSelectionContextMenu:B,noWheelClassName:F,noPanClassName:z,disableKeyboardA11y:G,onViewportChange:Q,isControlledViewport:K}){const{nodesSelectionActive:M,userSelectionActive:I}=Ye(Jz,pt),Y=Fo(h,{target:sb}),N=Fo(E,{target:sb}),$=N||R,X=N||A,J=m&&$!==!0,ne=Y||I||J;return Mz({deleteKeyCode:d,multiSelectionKeyCode:w}),b.jsx(Oz,{onPaneContextMenu:o,elementsSelectable:S,zoomOnScroll:T,zoomOnPinch:k,panOnScroll:X,panOnScrollSpeed:q,panOnScrollMode:j,zoomOnDoubleClick:L,panOnDrag:!Y&&$,defaultViewport:P,translateExtent:O,minZoom:H,maxZoom:U,zoomActivationKeyCode:_,preventScrolling:ee,noWheelClassName:F,noPanClassName:z,onViewportChange:Q,isControlledViewport:K,paneClickDistance:c,selectionOnDrag:J,children:b.jsxs(Iz,{onSelectionStart:x,onSelectionEnd:v,onPaneClick:n,onPaneMouseEnter:r,onPaneMouseMove:l,onPaneMouseLeave:a,onPaneContextMenu:o,onPaneScroll:u,panOnDrag:$,isSelecting:!!ne,selectionMode:p,selectionKeyPressed:Y,paneClickDistance:c,selectionOnDrag:J,children:[e,M&&b.jsx(Kz,{onSelectionContextMenu:B,noPanClassName:z,disableKeyboardA11y:G})]})})}n_.displayName="FlowRenderer";const Wz=V.memo(n_),eM=e=>n=>e?Tm(n.nodeLookup,{x:0,y:0,width:n.width,height:n.height},n.transform,!0).map(r=>r.id):Array.from(n.nodeLookup.keys());function tM(e){return Ye(V.useCallback(eM(e),[e]),pt)}const nM=e=>e.updateNodeInternals;function rM(){const e=Ye(nM),[n]=V.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(r=>{const l=new Map;r.forEach(a=>{const o=a.target.getAttribute("data-id");l.set(o,{id:o,nodeElement:a.target,force:!0})}),e(l)}));return V.useEffect(()=>()=>{n==null||n.disconnect()},[n]),n}function iM({node:e,nodeType:n,hasDimensions:r,resizeObserver:l}){const a=mt(),o=V.useRef(null),u=V.useRef(null),c=V.useRef(e.sourcePosition),d=V.useRef(e.targetPosition),h=V.useRef(n),m=r&&!!e.internals.handleBounds;return V.useEffect(()=>{o.current&&!e.hidden&&(!m||u.current!==o.current)&&(u.current&&(l==null||l.unobserve(u.current)),l==null||l.observe(o.current),u.current=o.current)},[m,e.hidden]),V.useEffect(()=>()=>{u.current&&(l==null||l.unobserve(u.current),u.current=null)},[]),V.useEffect(()=>{if(o.current){const p=h.current!==n,x=c.current!==e.sourcePosition,v=d.current!==e.targetPosition;(p||x||v)&&(h.current=n,c.current=e.sourcePosition,d.current=e.targetPosition,a.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:o.current,force:!0}]])))}},[e.id,n,e.sourcePosition,e.targetPosition]),o}function lM({id:e,onClick:n,onMouseEnter:r,onMouseMove:l,onMouseLeave:a,onContextMenu:o,onDoubleClick:u,nodesDraggable:c,elementsSelectable:d,nodesConnectable:h,nodesFocusable:m,resizeObserver:p,noDragClassName:x,noPanClassName:v,disableKeyboardA11y:w,rfId:E,nodeTypes:_,nodeClickDistance:S,onError:T}){const{node:k,internals:A,isParent:q}=Ye(re=>{const se=re.nodeLookup.get(e),xe=re.parentLookup.has(e);return{node:se,internals:se.internals,isParent:xe}},pt);let j=k.type||"default",L=(_==null?void 0:_[j])||ob[j];L===void 0&&(T==null||T("003",lr.error003(j)),j="default",L=(_==null?void 0:_.default)||ob.default);const R=!!(k.draggable||c&&typeof k.draggable>"u"),P=!!(k.selectable||d&&typeof k.selectable>"u"),O=!!(k.connectable||h&&typeof k.connectable>"u"),H=!!(k.focusable||m&&typeof k.focusable>"u"),U=mt(),ee=kS(k),B=iM({node:k,nodeType:j,hasDimensions:ee,resizeObserver:p}),F=WS({nodeRef:B,disabled:k.hidden||!R,noDragClassName:x,handleSelector:k.dragHandle,nodeId:e,isSelectable:P,nodeClickDistance:S}),z=e_();if(k.hidden)return null;const G=Or(k),Q=Qz(k),K=P||R||n||r||l||a,M=r?re=>r(re,{...A.userNode}):void 0,I=l?re=>l(re,{...A.userNode}):void 0,Y=a?re=>a(re,{...A.userNode}):void 0,N=o?re=>o(re,{...A.userNode}):void 0,$=u?re=>u(re,{...A.userNode}):void 0,X=re=>{const{selectNodesOnDrag:se,nodeDragThreshold:xe}=U.getState();P&&(!se||!R||xe>0)&&tm({id:e,store:U,nodeRef:B}),n&&n(re,{...A.userNode})},J=re=>{if(!(CS(re.nativeEvent)||w)){if(mS.includes(re.key)&&P){const se=re.key==="Escape";tm({id:e,store:U,unselect:se,nodeRef:B})}else if(R&&k.selected&&Object.prototype.hasOwnProperty.call(gc,re.key)){re.preventDefault();const{ariaLabelConfig:se}=U.getState();U.setState({ariaLiveMessage:se["node.a11yDescription.ariaLiveMessage"]({direction:re.key.replace("Arrow","").toLowerCase(),x:~~A.positionAbsolute.x,y:~~A.positionAbsolute.y})}),z({direction:gc[re.key],factor:re.shiftKey?4:1})}}},ne=()=>{var _e;if(w||!((_e=B.current)!=null&&_e.matches(":focus-visible")))return;const{transform:re,width:se,height:xe,autoPanOnNodeFocus:be,setCenter:ye}=U.getState();if(!be)return;Tm(new Map([[e,k]]),{x:0,y:0,width:se,height:xe},re,!0).length>0||ye(k.position.x+G.width/2,k.position.y+G.height/2,{zoom:re[2]})};return b.jsx("div",{className:jt(["react-flow__node",`react-flow__node-${j}`,{[v]:R},k.className,{selected:k.selected,selectable:P,parent:q,draggable:R,dragging:F}]),ref:B,style:{zIndex:A.z,transform:`translate(${A.positionAbsolute.x}px,${A.positionAbsolute.y}px)`,pointerEvents:K?"all":"none",visibility:ee?"visible":"hidden",...k.style,...Q},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:M,onMouseMove:I,onMouseLeave:Y,onContextMenu:N,onClick:X,onDoubleClick:$,onKeyDown:H?J:void 0,tabIndex:H?0:void 0,onFocus:H?ne:void 0,role:k.ariaRole??(H?"group":void 0),"aria-roledescription":"node","aria-describedby":w?void 0:`${GS}-${E}`,"aria-label":k.ariaLabel,...k.domAttributes,children:b.jsx(Uz,{value:e,children:b.jsx(L,{id:e,data:k.data,type:j,positionAbsoluteX:A.positionAbsolute.x,positionAbsoluteY:A.positionAbsolute.y,selected:k.selected??!1,selectable:P,draggable:R,deletable:k.deletable??!0,isConnectable:O,sourcePosition:k.sourcePosition,targetPosition:k.targetPosition,dragging:F,dragHandle:k.dragHandle,zIndex:A.z,parentId:k.parentId,...G})})})}var aM=V.memo(lM);const oM=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function r_(e){const{nodesDraggable:n,nodesConnectable:r,nodesFocusable:l,elementsSelectable:a,onError:o}=Ye(oM,pt),u=tM(e.onlyRenderVisibleElements),c=rM();return b.jsx("div",{className:"react-flow__nodes",style:Hc,children:u.map(d=>b.jsx(aM,{id:d,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:c,nodesDraggable:n,nodesConnectable:r,nodesFocusable:l,elementsSelectable:a,nodeClickDistance:e.nodeClickDistance,onError:o},d))})}r_.displayName="NodeRenderer";const sM=V.memo(r_);function uM(e){return Ye(V.useCallback(r=>{if(!e)return r.edges.map(a=>a.id);const l=[];if(r.width&&r.height)for(const a of r.edges){const o=r.nodeLookup.get(a.source),u=r.nodeLookup.get(a.target);o&&u&&aj({sourceNode:o,targetNode:u,width:r.width,height:r.height,transform:r.transform})&&l.push(a.id)}return l},[e]),pt)}const cM=({color:e="none",strokeWidth:n=1})=>{const r={strokeWidth:n,...e&&{stroke:e}};return b.jsx("polyline",{className:"arrow",style:r,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},fM=({color:e="none",strokeWidth:n=1})=>{const r={strokeWidth:n,...e&&{stroke:e,fill:e}};return b.jsx("polyline",{className:"arrowclosed",style:r,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},ub={[hc.Arrow]:cM,[hc.ArrowClosed]:fM};function dM(e){const n=mt();return V.useMemo(()=>{var a,o;return Object.prototype.hasOwnProperty.call(ub,e)?ub[e]:((o=(a=n.getState()).onError)==null||o.call(a,"009",lr.error009(e)),null)},[e])}const hM=({id:e,type:n,color:r,width:l=12.5,height:a=12.5,markerUnits:o="strokeWidth",strokeWidth:u,orient:c="auto-start-reverse"})=>{const d=dM(n);return d?b.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${l}`,markerHeight:`${a}`,viewBox:"-10 -10 20 20",markerUnits:o,orient:c,refX:"0",refY:"0",children:b.jsx(d,{color:r,strokeWidth:u})}):null},i_=({defaultColor:e,rfId:n})=>{const r=Ye(o=>o.edges),l=Ye(o=>o.defaultEdgeOptions),a=V.useMemo(()=>pj(r,{id:n,defaultColor:e,defaultMarkerStart:l==null?void 0:l.markerStart,defaultMarkerEnd:l==null?void 0:l.markerEnd}),[r,l,n,e]);return a.length?b.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:b.jsx("defs",{children:a.map(o=>b.jsx(hM,{id:o.id,type:o.type,color:o.color,width:o.width,height:o.height,markerUnits:o.markerUnits,strokeWidth:o.strokeWidth,orient:o.orient},o.id))})}):null};i_.displayName="MarkerDefinitions";var pM=V.memo(i_);function l_({x:e,y:n,label:r,labelStyle:l,labelShowBg:a=!0,labelBgStyle:o,labelBgPadding:u=[2,4],labelBgBorderRadius:c=2,children:d,className:h,...m}){const[p,x]=V.useState({x:1,y:0,width:0,height:0}),v=jt(["react-flow__edge-textwrapper",h]),w=V.useRef(null);return V.useEffect(()=>{if(w.current){const E=w.current.getBBox();x({x:E.x,y:E.y,width:E.width,height:E.height})}},[r]),r?b.jsxs("g",{transform:`translate(${e-p.width/2} ${n-p.height/2})`,className:v,visibility:p.width?"visible":"hidden",...m,children:[a&&b.jsx("rect",{width:p.width+2*u[0],x:-u[0],y:-u[1],height:p.height+2*u[1],className:"react-flow__edge-textbg",style:o,rx:c,ry:c}),b.jsx("text",{className:"react-flow__edge-text",y:p.height/2,dy:"0.3em",ref:w,style:l,children:r}),d]}):null}l_.displayName="EdgeText";const mM=V.memo(l_);function rs({path:e,labelX:n,labelY:r,label:l,labelStyle:a,labelShowBg:o,labelBgStyle:u,labelBgPadding:c,labelBgBorderRadius:d,interactionWidth:h=20,...m}){return b.jsxs(b.Fragment,{children:[b.jsx("path",{...m,d:e,fill:"none",className:jt(["react-flow__edge-path",m.className])}),h?b.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:h,className:"react-flow__edge-interaction"}):null,l&&Vn(n)&&Vn(r)?b.jsx(mM,{x:n,y:r,label:l,labelStyle:a,labelShowBg:o,labelBgStyle:u,labelBgPadding:c,labelBgBorderRadius:d}):null]})}function cb({pos:e,x1:n,y1:r,x2:l,y2:a}){return e===ve.Left||e===ve.Right?[.5*(n+l),r]:[n,.5*(r+a)]}function a_({sourceX:e,sourceY:n,sourcePosition:r=ve.Bottom,targetX:l,targetY:a,targetPosition:o=ve.Top}){const[u,c]=cb({pos:r,x1:e,y1:n,x2:l,y2:a}),[d,h]=cb({pos:o,x1:l,y1:a,x2:e,y2:n}),[m,p,x,v]=AS({sourceX:e,sourceY:n,targetX:l,targetY:a,sourceControlX:u,sourceControlY:c,targetControlX:d,targetControlY:h});return[`M${e},${n} C${u},${c} ${d},${h} ${l},${a}`,m,p,x,v]}function o_(e){return V.memo(({id:n,sourceX:r,sourceY:l,targetX:a,targetY:o,sourcePosition:u,targetPosition:c,label:d,labelStyle:h,labelShowBg:m,labelBgStyle:p,labelBgPadding:x,labelBgBorderRadius:v,style:w,markerEnd:E,markerStart:_,interactionWidth:S})=>{const[T,k,A]=a_({sourceX:r,sourceY:l,sourcePosition:u,targetX:a,targetY:o,targetPosition:c}),q=e.isInternal?void 0:n;return b.jsx(rs,{id:q,path:T,labelX:k,labelY:A,label:d,labelStyle:h,labelShowBg:m,labelBgStyle:p,labelBgPadding:x,labelBgBorderRadius:v,style:w,markerEnd:E,markerStart:_,interactionWidth:S})})}const gM=o_({isInternal:!1}),s_=o_({isInternal:!0});gM.displayName="SimpleBezierEdge";s_.displayName="SimpleBezierEdgeInternal";function u_(e){return V.memo(({id:n,sourceX:r,sourceY:l,targetX:a,targetY:o,label:u,labelStyle:c,labelShowBg:d,labelBgStyle:h,labelBgPadding:m,labelBgBorderRadius:p,style:x,sourcePosition:v=ve.Bottom,targetPosition:w=ve.Top,markerEnd:E,markerStart:_,pathOptions:S,interactionWidth:T})=>{const[k,A,q]=Kp({sourceX:r,sourceY:l,sourcePosition:v,targetX:a,targetY:o,targetPosition:w,borderRadius:S==null?void 0:S.borderRadius,offset:S==null?void 0:S.offset,stepPosition:S==null?void 0:S.stepPosition}),j=e.isInternal?void 0:n;return b.jsx(rs,{id:j,path:k,labelX:A,labelY:q,label:u,labelStyle:c,labelShowBg:d,labelBgStyle:h,labelBgPadding:m,labelBgBorderRadius:p,style:x,markerEnd:E,markerStart:_,interactionWidth:T})})}const c_=u_({isInternal:!1}),f_=u_({isInternal:!0});c_.displayName="SmoothStepEdge";f_.displayName="SmoothStepEdgeInternal";function d_(e){return V.memo(({id:n,...r})=>{var a;const l=e.isInternal?void 0:n;return b.jsx(c_,{...r,id:l,pathOptions:V.useMemo(()=>{var o;return{borderRadius:0,offset:(o=r.pathOptions)==null?void 0:o.offset}},[(a=r.pathOptions)==null?void 0:a.offset])})})}const xM=d_({isInternal:!1}),h_=d_({isInternal:!0});xM.displayName="StepEdge";h_.displayName="StepEdgeInternal";function p_(e){return V.memo(({id:n,sourceX:r,sourceY:l,targetX:a,targetY:o,label:u,labelStyle:c,labelShowBg:d,labelBgStyle:h,labelBgPadding:m,labelBgBorderRadius:p,style:x,markerEnd:v,markerStart:w,interactionWidth:E})=>{const[_,S,T]=zS({sourceX:r,sourceY:l,targetX:a,targetY:o}),k=e.isInternal?void 0:n;return b.jsx(rs,{id:k,path:_,labelX:S,labelY:T,label:u,labelStyle:c,labelShowBg:d,labelBgStyle:h,labelBgPadding:m,labelBgBorderRadius:p,style:x,markerEnd:v,markerStart:w,interactionWidth:E})})}const yM=p_({isInternal:!1}),m_=p_({isInternal:!0});yM.displayName="StraightEdge";m_.displayName="StraightEdgeInternal";function g_(e){return V.memo(({id:n,sourceX:r,sourceY:l,targetX:a,targetY:o,sourcePosition:u=ve.Bottom,targetPosition:c=ve.Top,label:d,labelStyle:h,labelShowBg:m,labelBgStyle:p,labelBgPadding:x,labelBgBorderRadius:v,style:w,markerEnd:E,markerStart:_,pathOptions:S,interactionWidth:T})=>{const[k,A,q]=zm({sourceX:r,sourceY:l,sourcePosition:u,targetX:a,targetY:o,targetPosition:c,curvature:S==null?void 0:S.curvature}),j=e.isInternal?void 0:n;return b.jsx(rs,{id:j,path:k,labelX:A,labelY:q,label:d,labelStyle:h,labelShowBg:m,labelBgStyle:p,labelBgPadding:x,labelBgBorderRadius:v,style:w,markerEnd:E,markerStart:_,interactionWidth:T})})}const vM=g_({isInternal:!1}),x_=g_({isInternal:!0});vM.displayName="BezierEdge";x_.displayName="BezierEdgeInternal";const fb={default:x_,straight:m_,step:h_,smoothstep:f_,simplebezier:s_},db={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},bM=(e,n,r)=>r===ve.Left?e-n:r===ve.Right?e+n:e,wM=(e,n,r)=>r===ve.Top?e-n:r===ve.Bottom?e+n:e,hb="react-flow__edgeupdater";function pb({position:e,centerX:n,centerY:r,radius:l=10,onMouseDown:a,onMouseEnter:o,onMouseOut:u,type:c}){return b.jsx("circle",{onMouseDown:a,onMouseEnter:o,onMouseOut:u,className:jt([hb,`${hb}-${c}`]),cx:bM(n,l,e),cy:wM(r,l,e),r:l,stroke:"transparent",fill:"transparent"})}function SM({isReconnectable:e,reconnectRadius:n,edge:r,sourceX:l,sourceY:a,targetX:o,targetY:u,sourcePosition:c,targetPosition:d,onReconnect:h,onReconnectStart:m,onReconnectEnd:p,setReconnecting:x,setUpdateHover:v}){const w=mt(),E=(A,q)=>{if(A.button!==0)return;const{autoPanOnConnect:j,domNode:L,connectionMode:R,connectionRadius:P,lib:O,onConnectStart:H,cancelConnection:U,nodeLookup:ee,rfId:B,panBy:F,updateConnection:z}=w.getState(),G=q.type==="target",Q=(I,Y)=>{x(!1),p==null||p(I,r,q.type,Y)},K=I=>h==null?void 0:h(r,I),M=(I,Y)=>{x(!0),m==null||m(A,r,q.type),H==null||H(I,Y)};em.onPointerDown(A.nativeEvent,{autoPanOnConnect:j,connectionMode:R,connectionRadius:P,domNode:L,handleId:q.id,nodeId:q.nodeId,nodeLookup:ee,isTarget:G,edgeUpdaterType:q.type,lib:O,flowId:B,cancelConnection:U,panBy:F,isValidConnection:(...I)=>{var Y,N;return((N=(Y=w.getState()).isValidConnection)==null?void 0:N.call(Y,...I))??!0},onConnect:K,onConnectStart:M,onConnectEnd:(...I)=>{var Y,N;return(N=(Y=w.getState()).onConnectEnd)==null?void 0:N.call(Y,...I)},onReconnectEnd:Q,updateConnection:z,getTransform:()=>w.getState().transform,getFromHandle:()=>w.getState().connection.fromHandle,dragThreshold:w.getState().connectionDragThreshold,handleDomNode:A.currentTarget})},_=A=>E(A,{nodeId:r.target,id:r.targetHandle??null,type:"target"}),S=A=>E(A,{nodeId:r.source,id:r.sourceHandle??null,type:"source"}),T=()=>v(!0),k=()=>v(!1);return b.jsxs(b.Fragment,{children:[(e===!0||e==="source")&&b.jsx(pb,{position:c,centerX:l,centerY:a,radius:n,onMouseDown:_,onMouseEnter:T,onMouseOut:k,type:"source"}),(e===!0||e==="target")&&b.jsx(pb,{position:d,centerX:o,centerY:u,radius:n,onMouseDown:S,onMouseEnter:T,onMouseOut:k,type:"target"})]})}function _M({id:e,edgesFocusable:n,edgesReconnectable:r,elementsSelectable:l,onClick:a,onDoubleClick:o,onContextMenu:u,onMouseEnter:c,onMouseMove:d,onMouseLeave:h,reconnectRadius:m,onReconnect:p,onReconnectStart:x,onReconnectEnd:v,rfId:w,edgeTypes:E,noPanClassName:_,onError:S,disableKeyboardA11y:T}){let k=Ye(ye=>ye.edgeLookup.get(e));const A=Ye(ye=>ye.defaultEdgeOptions);k=A?{...A,...k}:k;let q=k.type||"default",j=(E==null?void 0:E[q])||fb[q];j===void 0&&(S==null||S("011",lr.error011(q)),q="default",j=(E==null?void 0:E.default)||fb.default);const L=!!(k.focusable||n&&typeof k.focusable>"u"),R=typeof p<"u"&&(k.reconnectable||r&&typeof k.reconnectable>"u"),P=!!(k.selectable||l&&typeof k.selectable>"u"),O=V.useRef(null),[H,U]=V.useState(!1),[ee,B]=V.useState(!1),F=mt(),{zIndex:z,sourceX:G,sourceY:Q,targetX:K,targetY:M,sourcePosition:I,targetPosition:Y}=Ye(V.useCallback(ye=>{const pe=ye.nodeLookup.get(k.source),_e=ye.nodeLookup.get(k.target);if(!pe||!_e)return{zIndex:k.zIndex,...db};const ze=hj({id:e,sourceNode:pe,targetNode:_e,sourceHandle:k.sourceHandle||null,targetHandle:k.targetHandle||null,connectionMode:ye.connectionMode,onError:S});return{zIndex:lj({selected:k.selected,zIndex:k.zIndex,sourceNode:pe,targetNode:_e,elevateOnSelect:ye.elevateEdgesOnSelect,zIndexMode:ye.zIndexMode}),...ze||db}},[k.source,k.target,k.sourceHandle,k.targetHandle,k.selected,k.zIndex]),pt),N=V.useMemo(()=>k.markerStart?`url('#${Jp(k.markerStart,w)}')`:void 0,[k.markerStart,w]),$=V.useMemo(()=>k.markerEnd?`url('#${Jp(k.markerEnd,w)}')`:void 0,[k.markerEnd,w]);if(k.hidden||G===null||Q===null||K===null||M===null)return null;const X=ye=>{var Te;const{addSelectedEdges:pe,unselectNodesAndEdges:_e,multiSelectionActive:ze}=F.getState();P&&(F.setState({nodesSelectionActive:!1}),k.selected&&ze?(_e({nodes:[],edges:[k]}),(Te=O.current)==null||Te.blur()):pe([e])),a&&a(ye,k)},J=o?ye=>{o(ye,{...k})}:void 0,ne=u?ye=>{u(ye,{...k})}:void 0,re=c?ye=>{c(ye,{...k})}:void 0,se=d?ye=>{d(ye,{...k})}:void 0,xe=h?ye=>{h(ye,{...k})}:void 0,be=ye=>{var pe;if(!T&&mS.includes(ye.key)&&P){const{unselectNodesAndEdges:_e,addSelectedEdges:ze}=F.getState();ye.key==="Escape"?((pe=O.current)==null||pe.blur(),_e({edges:[k]})):ze([e])}};return b.jsx("svg",{style:{zIndex:z},children:b.jsxs("g",{className:jt(["react-flow__edge",`react-flow__edge-${q}`,k.className,_,{selected:k.selected,animated:k.animated,inactive:!P&&!a,updating:H,selectable:P}]),onClick:X,onDoubleClick:J,onContextMenu:ne,onMouseEnter:re,onMouseMove:se,onMouseLeave:xe,onKeyDown:L?be:void 0,tabIndex:L?0:void 0,role:k.ariaRole??(L?"group":"img"),"aria-roledescription":"edge","data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":k.ariaLabel===null?void 0:k.ariaLabel||`Edge from ${k.source} to ${k.target}`,"aria-describedby":L?`${FS}-${w}`:void 0,ref:O,...k.domAttributes,children:[!ee&&b.jsx(j,{id:e,source:k.source,target:k.target,type:k.type,selected:k.selected,animated:k.animated,selectable:P,deletable:k.deletable??!0,label:k.label,labelStyle:k.labelStyle,labelShowBg:k.labelShowBg,labelBgStyle:k.labelBgStyle,labelBgPadding:k.labelBgPadding,labelBgBorderRadius:k.labelBgBorderRadius,sourceX:G,sourceY:Q,targetX:K,targetY:M,sourcePosition:I,targetPosition:Y,data:k.data,style:k.style,sourceHandleId:k.sourceHandle,targetHandleId:k.targetHandle,markerStart:N,markerEnd:$,pathOptions:"pathOptions"in k?k.pathOptions:void 0,interactionWidth:k.interactionWidth}),R&&b.jsx(SM,{edge:k,isReconnectable:R,reconnectRadius:m,onReconnect:p,onReconnectStart:x,onReconnectEnd:v,sourceX:G,sourceY:Q,targetX:K,targetY:M,sourcePosition:I,targetPosition:Y,setUpdateHover:U,setReconnecting:B})]})})}var kM=V.memo(_M);const EM=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function y_({defaultMarkerColor:e,onlyRenderVisibleElements:n,rfId:r,edgeTypes:l,noPanClassName:a,onReconnect:o,onEdgeContextMenu:u,onEdgeMouseEnter:c,onEdgeMouseMove:d,onEdgeMouseLeave:h,onEdgeClick:m,reconnectRadius:p,onEdgeDoubleClick:x,onReconnectStart:v,onReconnectEnd:w,disableKeyboardA11y:E}){const{edgesFocusable:_,edgesReconnectable:S,elementsSelectable:T,onError:k}=Ye(EM,pt),A=uM(n);return b.jsxs("div",{className:"react-flow__edges",children:[b.jsx(pM,{defaultColor:e,rfId:r}),A.map(q=>b.jsx(kM,{id:q,edgesFocusable:_,edgesReconnectable:S,elementsSelectable:T,noPanClassName:a,onReconnect:o,onContextMenu:u,onMouseEnter:c,onMouseMove:d,onMouseLeave:h,onClick:m,reconnectRadius:p,onDoubleClick:x,onReconnectStart:v,onReconnectEnd:w,rfId:r,onError:k,edgeTypes:l,disableKeyboardA11y:E},q))]})}y_.displayName="EdgeRenderer";const NM=V.memo(y_),CM=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function TM({children:e}){const n=Ye(CM);return b.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:n},children:e})}function AM(e){const n=ll(),r=V.useRef(!1);V.useEffect(()=>{!r.current&&n.viewportInitialized&&e&&(setTimeout(()=>e(n),1),r.current=!0)},[e,n.viewportInitialized])}const jM=e=>{var n;return(n=e.panZoom)==null?void 0:n.syncViewport};function zM(e){const n=Ye(jM),r=mt();return V.useEffect(()=>{e&&(n==null||n(e),r.setState({transform:[e.x,e.y,e.zoom]}))},[e,n]),null}function MM(e){return e.connection.inProgress?{...e.connection,to:ns(e.connection.to,e.transform)}:{...e.connection}}function DM(e){return MM}function RM(e){const n=DM();return Ye(n,pt)}const OM=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function LM({containerStyle:e,style:n,type:r,component:l}){const{nodesConnectable:a,width:o,height:u,isValid:c,inProgress:d}=Ye(OM,pt);return!(o&&a&&d)?null:b.jsx("svg",{style:e,width:o,height:u,className:"react-flow__connectionline react-flow__container",children:b.jsx("g",{className:jt(["react-flow__connection",yS(c)]),children:b.jsx(v_,{style:n,type:r,CustomComponent:l,isValid:c})})})}const v_=({style:e,type:n=xi.Bezier,CustomComponent:r,isValid:l})=>{const{inProgress:a,from:o,fromNode:u,fromHandle:c,fromPosition:d,to:h,toNode:m,toHandle:p,toPosition:x,pointer:v}=RM();if(!a)return;if(r)return b.jsx(r,{connectionLineType:n,connectionLineStyle:e,fromNode:u,fromHandle:c,fromX:o.x,fromY:o.y,toX:h.x,toY:h.y,fromPosition:d,toPosition:x,connectionStatus:yS(l),toNode:m,toHandle:p,pointer:v});let w="";const E={sourceX:o.x,sourceY:o.y,sourcePosition:d,targetX:h.x,targetY:h.y,targetPosition:x};switch(n){case xi.Bezier:[w]=zm(E);break;case xi.SimpleBezier:[w]=a_(E);break;case xi.Step:[w]=Kp({...E,borderRadius:0});break;case xi.SmoothStep:[w]=Kp(E);break;default:[w]=zS(E)}return b.jsx("path",{d:w,fill:"none",className:"react-flow__connection-path",style:e})};v_.displayName="ConnectionLine";const HM={};function mb(e=HM){V.useRef(e),mt(),V.useEffect(()=>{},[e])}function BM(){mt(),V.useRef(!1),V.useEffect(()=>{},[])}function b_({nodeTypes:e,edgeTypes:n,onInit:r,onNodeClick:l,onEdgeClick:a,onNodeDoubleClick:o,onEdgeDoubleClick:u,onNodeMouseEnter:c,onNodeMouseMove:d,onNodeMouseLeave:h,onNodeContextMenu:m,onSelectionContextMenu:p,onSelectionStart:x,onSelectionEnd:v,connectionLineType:w,connectionLineStyle:E,connectionLineComponent:_,connectionLineContainerStyle:S,selectionKeyCode:T,selectionOnDrag:k,selectionMode:A,multiSelectionKeyCode:q,panActivationKeyCode:j,zoomActivationKeyCode:L,deleteKeyCode:R,onlyRenderVisibleElements:P,elementsSelectable:O,defaultViewport:H,translateExtent:U,minZoom:ee,maxZoom:B,preventScrolling:F,defaultMarkerColor:z,zoomOnScroll:G,zoomOnPinch:Q,panOnScroll:K,panOnScrollSpeed:M,panOnScrollMode:I,zoomOnDoubleClick:Y,panOnDrag:N,onPaneClick:$,onPaneMouseEnter:X,onPaneMouseMove:J,onPaneMouseLeave:ne,onPaneScroll:re,onPaneContextMenu:se,paneClickDistance:xe,nodeClickDistance:be,onEdgeContextMenu:ye,onEdgeMouseEnter:pe,onEdgeMouseMove:_e,onEdgeMouseLeave:ze,reconnectRadius:Te,onReconnect:ut,onReconnectStart:nt,onReconnectEnd:zt,noDragClassName:Vt,noWheelClassName:Ht,noPanClassName:kn,disableKeyboardA11y:Rn,nodeExtent:Mt,rfId:Hr,viewport:ue,onViewportChange:ge}){return mb(e),mb(n),BM(),AM(r),zM(ue),b.jsx(Wz,{onPaneClick:$,onPaneMouseEnter:X,onPaneMouseMove:J,onPaneMouseLeave:ne,onPaneContextMenu:se,onPaneScroll:re,paneClickDistance:xe,deleteKeyCode:R,selectionKeyCode:T,selectionOnDrag:k,selectionMode:A,onSelectionStart:x,onSelectionEnd:v,multiSelectionKeyCode:q,panActivationKeyCode:j,zoomActivationKeyCode:L,elementsSelectable:O,zoomOnScroll:G,zoomOnPinch:Q,zoomOnDoubleClick:Y,panOnScroll:K,panOnScrollSpeed:M,panOnScrollMode:I,panOnDrag:N,defaultViewport:H,translateExtent:U,minZoom:ee,maxZoom:B,onSelectionContextMenu:p,preventScrolling:F,noDragClassName:Vt,noWheelClassName:Ht,noPanClassName:kn,disableKeyboardA11y:Rn,onViewportChange:ge,isControlledViewport:!!ue,children:b.jsxs(TM,{children:[b.jsx(NM,{edgeTypes:n,onEdgeClick:a,onEdgeDoubleClick:u,onReconnect:ut,onReconnectStart:nt,onReconnectEnd:zt,onlyRenderVisibleElements:P,onEdgeContextMenu:ye,onEdgeMouseEnter:pe,onEdgeMouseMove:_e,onEdgeMouseLeave:ze,reconnectRadius:Te,defaultMarkerColor:z,noPanClassName:kn,disableKeyboardA11y:Rn,rfId:Hr}),b.jsx(LM,{style:E,type:w,component:_,containerStyle:S}),b.jsx("div",{className:"react-flow__edgelabel-renderer"}),b.jsx(sM,{nodeTypes:e,onNodeClick:l,onNodeDoubleClick:o,onNodeMouseEnter:c,onNodeMouseMove:d,onNodeMouseLeave:h,onNodeContextMenu:m,nodeClickDistance:be,onlyRenderVisibleElements:P,noPanClassName:kn,noDragClassName:Vt,disableKeyboardA11y:Rn,nodeExtent:Mt,rfId:Hr}),b.jsx("div",{className:"react-flow__viewport-portal"})]})})}b_.displayName="GraphView";const IM=V.memo(b_),gb=({nodes:e,edges:n,defaultNodes:r,defaultEdges:l,width:a,height:o,fitView:u,fitViewOptions:c,minZoom:d=.5,maxZoom:h=2,nodeOrigin:m,nodeExtent:p,zIndexMode:x="basic"}={})=>{const v=new Map,w=new Map,E=new Map,_=new Map,S=l??n??[],T=r??e??[],k=m??[0,0],A=p??Po;RS(E,_,S);const q=Wp(T,v,w,{nodeOrigin:k,nodeExtent:A,zIndexMode:x});let j=[0,0,1];if(u&&a&&o){const L=es(v,{filter:H=>!!((H.width||H.initialWidth)&&(H.height||H.initialHeight))}),{x:R,y:P,zoom:O}=Am(L,a,o,d,h,(c==null?void 0:c.padding)??.1);j=[R,P,O]}return{rfId:"1",width:a??0,height:o??0,transform:j,nodes:T,nodesInitialized:q,nodeLookup:v,parentLookup:w,edges:S,edgeLookup:_,connectionLookup:E,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:r!==void 0,hasDefaultEdges:l!==void 0,panZoom:null,minZoom:d,maxZoom:h,translateExtent:Po,nodeExtent:A,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:fa.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:k,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:u??!1,fitViewOptions:c,fitViewResolver:null,connection:{...xS},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:WA,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:gS,zIndexMode:x,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},qM=({nodes:e,edges:n,defaultNodes:r,defaultEdges:l,width:a,height:o,fitView:u,fitViewOptions:c,minZoom:d,maxZoom:h,nodeOrigin:m,nodeExtent:p,zIndexMode:x})=>rz((v,w)=>{async function E(){const{nodeLookup:_,panZoom:S,fitViewOptions:T,fitViewResolver:k,width:A,height:q,minZoom:j,maxZoom:L}=w();S&&(await KA({nodes:_,width:A,height:q,panZoom:S,minZoom:j,maxZoom:L},T),k==null||k.resolve(!0),v({fitViewResolver:null}))}return{...gb({nodes:e,edges:n,width:a,height:o,fitView:u,fitViewOptions:c,minZoom:d,maxZoom:h,nodeOrigin:m,nodeExtent:p,defaultNodes:r,defaultEdges:l,zIndexMode:x}),setNodes:_=>{const{nodeLookup:S,parentLookup:T,nodeOrigin:k,elevateNodesOnSelect:A,fitViewQueued:q,zIndexMode:j}=w(),L=Wp(_,S,T,{nodeOrigin:k,nodeExtent:p,elevateNodesOnSelect:A,checkEquality:!0,zIndexMode:j});q&&L?(E(),v({nodes:_,nodesInitialized:L,fitViewQueued:!1,fitViewOptions:void 0})):v({nodes:_,nodesInitialized:L})},setEdges:_=>{const{connectionLookup:S,edgeLookup:T}=w();RS(S,T,_),v({edges:_})},setDefaultNodesAndEdges:(_,S)=>{if(_){const{setNodes:T}=w();T(_),v({hasDefaultNodes:!0})}if(S){const{setEdges:T}=w();T(S),v({hasDefaultEdges:!0})}},updateNodeInternals:_=>{const{triggerNodeChanges:S,nodeLookup:T,parentLookup:k,domNode:A,nodeOrigin:q,nodeExtent:j,debug:L,fitViewQueued:R,zIndexMode:P}=w(),{changes:O,updatedInternals:H}=wj(_,T,k,A,q,j,P);H&&(xj(T,k,{nodeOrigin:q,nodeExtent:j,zIndexMode:P}),R?(E(),v({fitViewQueued:!1,fitViewOptions:void 0})):v({}),(O==null?void 0:O.length)>0&&(L&&console.log("React Flow: trigger node changes",O),S==null||S(O)))},updateNodePositions:(_,S=!1)=>{const T=[];let k=[];const{nodeLookup:A,triggerNodeChanges:q,connection:j,updateConnection:L,onNodesChangeMiddlewareMap:R}=w();for(const[P,O]of _){const H=A.get(P),U=!!(H!=null&&H.expandParent&&(H!=null&&H.parentId)&&(O!=null&&O.position)),ee={id:P,type:"position",position:U?{x:Math.max(0,O.position.x),y:Math.max(0,O.position.y)}:O.position,dragging:S};if(H&&j.inProgress&&j.fromNode.id===H.id){const B=tl(H,j.fromHandle,ve.Left,!0);L({...j,from:B})}U&&H.parentId&&T.push({id:P,parentId:H.parentId,rect:{...O.internals.positionAbsolute,width:O.measured.width??0,height:O.measured.height??0}}),k.push(ee)}if(T.length>0){const{parentLookup:P,nodeOrigin:O}=w(),H=Lm(T,A,P,O);k.push(...H)}for(const P of R.values())k=P(k);q(k)},triggerNodeChanges:_=>{const{onNodesChange:S,setNodes:T,nodes:k,hasDefaultNodes:A,debug:q}=w();if(_!=null&&_.length){if(A){const j=QS(_,k);T(j)}q&&console.log("React Flow: trigger node changes",_),S==null||S(_)}},triggerEdgeChanges:_=>{const{onEdgesChange:S,setEdges:T,edges:k,hasDefaultEdges:A,debug:q}=w();if(_!=null&&_.length){if(A){const j=ZS(_,k);T(j)}q&&console.log("React Flow: trigger edge changes",_),S==null||S(_)}},addSelectedNodes:_=>{const{multiSelectionActive:S,edgeLookup:T,nodeLookup:k,triggerNodeChanges:A,triggerEdgeChanges:q}=w();if(S){const j=_.map(L=>$i(L,!0));A(j);return}A(ra(k,new Set([..._]),!0)),q(ra(T))},addSelectedEdges:_=>{const{multiSelectionActive:S,edgeLookup:T,nodeLookup:k,triggerNodeChanges:A,triggerEdgeChanges:q}=w();if(S){const j=_.map(L=>$i(L,!0));q(j);return}q(ra(T,new Set([..._]))),A(ra(k,new Set,!0))},unselectNodesAndEdges:({nodes:_,edges:S}={})=>{const{edges:T,nodes:k,nodeLookup:A,triggerNodeChanges:q,triggerEdgeChanges:j}=w(),L=_||k,R=S||T,P=[];for(const H of L){if(!H.selected)continue;const U=A.get(H.id);U&&(U.selected=!1),P.push($i(H.id,!1))}const O=[];for(const H of R)H.selected&&O.push($i(H.id,!1));q(P),j(O)},setMinZoom:_=>{const{panZoom:S,maxZoom:T}=w();S==null||S.setScaleExtent([_,T]),v({minZoom:_})},setMaxZoom:_=>{const{panZoom:S,minZoom:T}=w();S==null||S.setScaleExtent([T,_]),v({maxZoom:_})},setTranslateExtent:_=>{var S;(S=w().panZoom)==null||S.setTranslateExtent(_),v({translateExtent:_})},resetSelectedElements:()=>{const{edges:_,nodes:S,triggerNodeChanges:T,triggerEdgeChanges:k,elementsSelectable:A}=w();if(!A)return;const q=S.reduce((L,R)=>R.selected?[...L,$i(R.id,!1)]:L,[]),j=_.reduce((L,R)=>R.selected?[...L,$i(R.id,!1)]:L,[]);T(q),k(j)},setNodeExtent:_=>{const{nodes:S,nodeLookup:T,parentLookup:k,nodeOrigin:A,elevateNodesOnSelect:q,nodeExtent:j,zIndexMode:L}=w();_[0][0]===j[0][0]&&_[0][1]===j[0][1]&&_[1][0]===j[1][0]&&_[1][1]===j[1][1]||(Wp(S,T,k,{nodeOrigin:A,nodeExtent:_,elevateNodesOnSelect:q,checkEquality:!1,zIndexMode:L}),v({nodeExtent:_}))},panBy:_=>{const{transform:S,width:T,height:k,panZoom:A,translateExtent:q}=w();return Sj({delta:_,panZoom:A,transform:S,translateExtent:q,width:T,height:k})},setCenter:async(_,S,T)=>{const{width:k,height:A,maxZoom:q,panZoom:j}=w();if(!j)return Promise.resolve(!1);const L=typeof(T==null?void 0:T.zoom)<"u"?T.zoom:q;return await j.setViewport({x:k/2-_*L,y:A/2-S*L,zoom:L},{duration:T==null?void 0:T.duration,ease:T==null?void 0:T.ease,interpolate:T==null?void 0:T.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{v({connection:{...xS}})},updateConnection:_=>{v({connection:_})},reset:()=>v({...gb()})}},Object.is);function UM({initialNodes:e,initialEdges:n,defaultNodes:r,defaultEdges:l,initialWidth:a,initialHeight:o,initialMinZoom:u,initialMaxZoom:c,initialFitViewOptions:d,fitView:h,nodeOrigin:m,nodeExtent:p,zIndexMode:x,children:v}){const[w]=V.useState(()=>qM({nodes:e,edges:n,defaultNodes:r,defaultEdges:l,width:a,height:o,fitView:h,minZoom:u,maxZoom:c,fitViewOptions:d,nodeOrigin:m,nodeExtent:p,zIndexMode:x}));return b.jsx(lz,{value:w,children:b.jsx(Tz,{children:v})})}function PM({children:e,nodes:n,edges:r,defaultNodes:l,defaultEdges:a,width:o,height:u,fitView:c,fitViewOptions:d,minZoom:h,maxZoom:m,nodeOrigin:p,nodeExtent:x,zIndexMode:v}){return V.useContext(Oc)?b.jsx(b.Fragment,{children:e}):b.jsx(UM,{initialNodes:n,initialEdges:r,defaultNodes:l,defaultEdges:a,initialWidth:o,initialHeight:u,fitView:c,initialFitViewOptions:d,initialMinZoom:h,initialMaxZoom:m,nodeOrigin:p,nodeExtent:x,zIndexMode:v,children:e})}const VM={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function $M({nodes:e,edges:n,defaultNodes:r,defaultEdges:l,className:a,nodeTypes:o,edgeTypes:u,onNodeClick:c,onEdgeClick:d,onInit:h,onMove:m,onMoveStart:p,onMoveEnd:x,onConnect:v,onConnectStart:w,onConnectEnd:E,onClickConnectStart:_,onClickConnectEnd:S,onNodeMouseEnter:T,onNodeMouseMove:k,onNodeMouseLeave:A,onNodeContextMenu:q,onNodeDoubleClick:j,onNodeDragStart:L,onNodeDrag:R,onNodeDragStop:P,onNodesDelete:O,onEdgesDelete:H,onDelete:U,onSelectionChange:ee,onSelectionDragStart:B,onSelectionDrag:F,onSelectionDragStop:z,onSelectionContextMenu:G,onSelectionStart:Q,onSelectionEnd:K,onBeforeDelete:M,connectionMode:I,connectionLineType:Y=xi.Bezier,connectionLineStyle:N,connectionLineComponent:$,connectionLineContainerStyle:X,deleteKeyCode:J="Backspace",selectionKeyCode:ne="Shift",selectionOnDrag:re=!1,selectionMode:se=Vo.Full,panActivationKeyCode:xe="Space",multiSelectionKeyCode:be=Go()?"Meta":"Control",zoomActivationKeyCode:ye=Go()?"Meta":"Control",snapToGrid:pe,snapGrid:_e,onlyRenderVisibleElements:ze=!1,selectNodesOnDrag:Te,nodesDraggable:ut,autoPanOnNodeFocus:nt,nodesConnectable:zt,nodesFocusable:Vt,nodeOrigin:Ht=YS,edgesFocusable:kn,edgesReconnectable:Rn,elementsSelectable:Mt=!0,defaultViewport:Hr=yz,minZoom:ue=.5,maxZoom:ge=2,translateExtent:Ne=Po,preventScrolling:Oe=!0,nodeExtent:Xe,defaultMarkerColor:Qt="#b1b1b7",zoomOnScroll:On=!0,zoomOnPinch:Bt=!0,panOnScroll:vt=!1,panOnScrollSpeed:$t=.5,panOnScrollMode:We=Zi.Free,zoomOnDoubleClick:Zn=!0,panOnDrag:fn=!0,onPaneClick:$c,onPaneMouseEnter:ul,onPaneMouseMove:cl,onPaneMouseLeave:fl,onPaneScroll:sr,onPaneContextMenu:dl,paneClickDistance:bi=1,nodeClickDistance:Gc=0,children:ss,onReconnect:ba,onReconnectStart:wi,onReconnectEnd:Fc,onEdgeContextMenu:us,onEdgeDoubleClick:cs,onEdgeMouseEnter:fs,onEdgeMouseMove:wa,onEdgeMouseLeave:Sa,reconnectRadius:ds=10,onNodesChange:hs,onEdgesChange:Kn,noDragClassName:Dt="nodrag",noWheelClassName:Gt="nowheel",noPanClassName:ur="nopan",fitView:hl,fitViewOptions:ps,connectOnClick:Yc,attributionPosition:ms,proOptions:Si,defaultEdgeOptions:_a,elevateNodesOnSelect:Br=!0,elevateEdgesOnSelect:Ir=!1,disableKeyboardA11y:qr=!1,autoPanOnConnect:Ur,autoPanOnNodeDrag:St,autoPanSpeed:gs,connectionRadius:xs,isValidConnection:cr,onError:Pr,style:Xc,id:ka,nodeDragThreshold:ys,connectionDragThreshold:Qc,viewport:pl,onViewportChange:ml,width:Ln,height:Wt,colorMode:vs="light",debug:Zc,onScroll:Vr,ariaLabelConfig:bs,zIndexMode:_i="basic",...Kc},en){const ki=ka||"1",ws=Sz(vs),Ea=V.useCallback(fr=>{fr.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),Vr==null||Vr(fr)},[Vr]);return b.jsx("div",{"data-testid":"rf__wrapper",...Kc,onScroll:Ea,style:{...Xc,...VM},ref:en,className:jt(["react-flow",a,ws]),id:ka,role:"application",children:b.jsxs(PM,{nodes:e,edges:n,width:Ln,height:Wt,fitView:hl,fitViewOptions:ps,minZoom:ue,maxZoom:ge,nodeOrigin:Ht,nodeExtent:Xe,zIndexMode:_i,children:[b.jsx(IM,{onInit:h,onNodeClick:c,onEdgeClick:d,onNodeMouseEnter:T,onNodeMouseMove:k,onNodeMouseLeave:A,onNodeContextMenu:q,onNodeDoubleClick:j,nodeTypes:o,edgeTypes:u,connectionLineType:Y,connectionLineStyle:N,connectionLineComponent:$,connectionLineContainerStyle:X,selectionKeyCode:ne,selectionOnDrag:re,selectionMode:se,deleteKeyCode:J,multiSelectionKeyCode:be,panActivationKeyCode:xe,zoomActivationKeyCode:ye,onlyRenderVisibleElements:ze,defaultViewport:Hr,translateExtent:Ne,minZoom:ue,maxZoom:ge,preventScrolling:Oe,zoomOnScroll:On,zoomOnPinch:Bt,zoomOnDoubleClick:Zn,panOnScroll:vt,panOnScrollSpeed:$t,panOnScrollMode:We,panOnDrag:fn,onPaneClick:$c,onPaneMouseEnter:ul,onPaneMouseMove:cl,onPaneMouseLeave:fl,onPaneScroll:sr,onPaneContextMenu:dl,paneClickDistance:bi,nodeClickDistance:Gc,onSelectionContextMenu:G,onSelectionStart:Q,onSelectionEnd:K,onReconnect:ba,onReconnectStart:wi,onReconnectEnd:Fc,onEdgeContextMenu:us,onEdgeDoubleClick:cs,onEdgeMouseEnter:fs,onEdgeMouseMove:wa,onEdgeMouseLeave:Sa,reconnectRadius:ds,defaultMarkerColor:Qt,noDragClassName:Dt,noWheelClassName:Gt,noPanClassName:ur,rfId:ki,disableKeyboardA11y:qr,nodeExtent:Xe,viewport:pl,onViewportChange:ml}),b.jsx(wz,{nodes:e,edges:n,defaultNodes:r,defaultEdges:l,onConnect:v,onConnectStart:w,onConnectEnd:E,onClickConnectStart:_,onClickConnectEnd:S,nodesDraggable:ut,autoPanOnNodeFocus:nt,nodesConnectable:zt,nodesFocusable:Vt,edgesFocusable:kn,edgesReconnectable:Rn,elementsSelectable:Mt,elevateNodesOnSelect:Br,elevateEdgesOnSelect:Ir,minZoom:ue,maxZoom:ge,nodeExtent:Xe,onNodesChange:hs,onEdgesChange:Kn,snapToGrid:pe,snapGrid:_e,connectionMode:I,translateExtent:Ne,connectOnClick:Yc,defaultEdgeOptions:_a,fitView:hl,fitViewOptions:ps,onNodesDelete:O,onEdgesDelete:H,onDelete:U,onNodeDragStart:L,onNodeDrag:R,onNodeDragStop:P,onSelectionDrag:F,onSelectionDragStart:B,onSelectionDragStop:z,onMove:m,onMoveStart:p,onMoveEnd:x,noPanClassName:ur,nodeOrigin:Ht,rfId:ki,autoPanOnConnect:Ur,autoPanOnNodeDrag:St,autoPanSpeed:gs,onError:Pr,connectionRadius:xs,isValidConnection:cr,selectNodesOnDrag:Te,nodeDragThreshold:ys,connectionDragThreshold:Qc,onBeforeDelete:M,debug:Zc,ariaLabelConfig:bs,zIndexMode:_i}),b.jsx(xz,{onSelectionChange:ee}),ss,b.jsx(dz,{proOptions:Si,position:ms}),b.jsx(fz,{rfId:ki,disableKeyboardA11y:qr})]})})}var GM=KS($M);const FM=e=>{var n;return(n=e.domNode)==null?void 0:n.querySelector(".react-flow__edgelabel-renderer")};function YM({children:e}){const n=Ye(FM);return n?iz.createPortal(e,n):null}function XM(e){const[n,r]=V.useState(e),l=V.useCallback(a=>r(o=>QS(a,o)),[]);return[n,r,l]}function QM(e){const[n,r]=V.useState(e),l=V.useCallback(a=>r(o=>ZS(a,o)),[]);return[n,r,l]}function ZM({dimensions:e,lineWidth:n,variant:r,className:l}){return b.jsx("path",{strokeWidth:n,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:jt(["react-flow__background-pattern",r,l])})}function KM({radius:e,className:n}){return b.jsx("circle",{cx:e,cy:e,r:e,className:jt(["react-flow__background-pattern","dots",n])})}var Mr;(function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"})(Mr||(Mr={}));const JM={[Mr.Dots]:1,[Mr.Lines]:1,[Mr.Cross]:6},WM=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function w_({id:e,variant:n=Mr.Dots,gap:r=20,size:l,lineWidth:a=1,offset:o=0,color:u,bgColor:c,style:d,className:h,patternClassName:m}){const p=V.useRef(null),{transform:x,patternId:v}=Ye(WM,pt),w=l||JM[n],E=n===Mr.Dots,_=n===Mr.Cross,S=Array.isArray(r)?r:[r,r],T=[S[0]*x[2]||1,S[1]*x[2]||1],k=w*x[2],A=Array.isArray(o)?o:[o,o],q=_?[k,k]:T,j=[A[0]*x[2]||1+q[0]/2,A[1]*x[2]||1+q[1]/2],L=`${v}${e||""}`;return b.jsxs("svg",{className:jt(["react-flow__background",h]),style:{...d,...Hc,"--xy-background-color-props":c,"--xy-background-pattern-color-props":u},ref:p,"data-testid":"rf__background",children:[b.jsx("pattern",{id:L,x:x[0]%T[0],y:x[1]%T[1],width:T[0],height:T[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${j[0]},-${j[1]})`,children:E?b.jsx(KM,{radius:k/2,className:m}):b.jsx(ZM,{dimensions:q,lineWidth:a,variant:n,className:m})}),b.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${L})`})]})}w_.displayName="Background";const e5=V.memo(w_);function t5(){return b.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:b.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function n5(){return b.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:b.jsx("path",{d:"M0 0h32v4.2H0z"})})}function r5(){return b.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:b.jsx("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 i5(){return b.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:b.jsx("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 l5(){return b.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:b.jsx("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"})})}function $u({children:e,className:n,...r}){return b.jsx("button",{type:"button",className:jt(["react-flow__controls-button",n]),...r,children:e})}const a5=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function S_({style:e,showZoom:n=!0,showFitView:r=!0,showInteractive:l=!0,fitViewOptions:a,onZoomIn:o,onZoomOut:u,onFitView:c,onInteractiveChange:d,className:h,children:m,position:p="bottom-left",orientation:x="vertical","aria-label":v}){const w=mt(),{isInteractive:E,minZoomReached:_,maxZoomReached:S,ariaLabelConfig:T}=Ye(a5,pt),{zoomIn:k,zoomOut:A,fitView:q}=ll(),j=()=>{k(),o==null||o()},L=()=>{A(),u==null||u()},R=()=>{q(a),c==null||c()},P=()=>{w.setState({nodesDraggable:!E,nodesConnectable:!E,elementsSelectable:!E}),d==null||d(!E)},O=x==="horizontal"?"horizontal":"vertical";return b.jsxs(Lc,{className:jt(["react-flow__controls",O,h]),position:p,style:e,"data-testid":"rf__controls","aria-label":v??T["controls.ariaLabel"],children:[n&&b.jsxs(b.Fragment,{children:[b.jsx($u,{onClick:j,className:"react-flow__controls-zoomin",title:T["controls.zoomIn.ariaLabel"],"aria-label":T["controls.zoomIn.ariaLabel"],disabled:S,children:b.jsx(t5,{})}),b.jsx($u,{onClick:L,className:"react-flow__controls-zoomout",title:T["controls.zoomOut.ariaLabel"],"aria-label":T["controls.zoomOut.ariaLabel"],disabled:_,children:b.jsx(n5,{})})]}),r&&b.jsx($u,{className:"react-flow__controls-fitview",onClick:R,title:T["controls.fitView.ariaLabel"],"aria-label":T["controls.fitView.ariaLabel"],children:b.jsx(r5,{})}),l&&b.jsx($u,{className:"react-flow__controls-interactive",onClick:P,title:T["controls.interactive.ariaLabel"],"aria-label":T["controls.interactive.ariaLabel"],children:E?b.jsx(l5,{}):b.jsx(i5,{})}),m]})}S_.displayName="Controls";const o5=V.memo(S_);function s5({id:e,x:n,y:r,width:l,height:a,style:o,color:u,strokeColor:c,strokeWidth:d,className:h,borderRadius:m,shapeRendering:p,selected:x,onClick:v}){const{background:w,backgroundColor:E}=o||{},_=u||w||E;return b.jsx("rect",{className:jt(["react-flow__minimap-node",{selected:x},h]),x:n,y:r,rx:m,ry:m,width:l,height:a,style:{fill:_,stroke:c,strokeWidth:d},shapeRendering:p,onClick:v?S=>v(S,e):void 0})}const u5=V.memo(s5),c5=e=>e.nodes.map(n=>n.id),Nh=e=>e instanceof Function?e:()=>e;function f5({nodeStrokeColor:e,nodeColor:n,nodeClassName:r="",nodeBorderRadius:l=5,nodeStrokeWidth:a,nodeComponent:o=u5,onClick:u}){const c=Ye(c5,pt),d=Nh(n),h=Nh(e),m=Nh(r),p=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return b.jsx(b.Fragment,{children:c.map(x=>b.jsx(h5,{id:x,nodeColorFunc:d,nodeStrokeColorFunc:h,nodeClassNameFunc:m,nodeBorderRadius:l,nodeStrokeWidth:a,NodeComponent:o,onClick:u,shapeRendering:p},x))})}function d5({id:e,nodeColorFunc:n,nodeStrokeColorFunc:r,nodeClassNameFunc:l,nodeBorderRadius:a,nodeStrokeWidth:o,shapeRendering:u,NodeComponent:c,onClick:d}){const{node:h,x:m,y:p,width:x,height:v}=Ye(w=>{const E=w.nodeLookup.get(e);if(!E)return{node:void 0,x:0,y:0,width:0,height:0};const _=E.internals.userNode,{x:S,y:T}=E.internals.positionAbsolute,{width:k,height:A}=Or(_);return{node:_,x:S,y:T,width:k,height:A}},pt);return!h||h.hidden||!kS(h)?null:b.jsx(c,{x:m,y:p,width:x,height:v,style:h.style,selected:!!h.selected,className:l(h),color:n(h),borderRadius:a,strokeColor:r(h),strokeWidth:o,shapeRendering:u,onClick:d,id:h.id})}const h5=V.memo(d5);var p5=V.memo(f5);const m5=200,g5=150,x5=e=>!e.hidden,y5=e=>{const n={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:n,boundingRect:e.nodeLookup.size>0?_S(es(e.nodeLookup,{filter:x5}),n):n,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},v5="react-flow__minimap-desc";function __({style:e,className:n,nodeStrokeColor:r,nodeColor:l,nodeClassName:a="",nodeBorderRadius:o=5,nodeStrokeWidth:u,nodeComponent:c,bgColor:d,maskColor:h,maskStrokeColor:m,maskStrokeWidth:p,position:x="bottom-right",onClick:v,onNodeClick:w,pannable:E=!1,zoomable:_=!1,ariaLabel:S,inversePan:T,zoomStep:k=1,offsetScale:A=5}){const q=mt(),j=V.useRef(null),{boundingRect:L,viewBB:R,rfId:P,panZoom:O,translateExtent:H,flowWidth:U,flowHeight:ee,ariaLabelConfig:B}=Ye(y5,pt),F=(e==null?void 0:e.width)??m5,z=(e==null?void 0:e.height)??g5,G=L.width/F,Q=L.height/z,K=Math.max(G,Q),M=K*F,I=K*z,Y=A*K,N=L.x-(M-L.width)/2-Y,$=L.y-(I-L.height)/2-Y,X=M+Y*2,J=I+Y*2,ne=`${v5}-${P}`,re=V.useRef(0),se=V.useRef();re.current=K,V.useEffect(()=>{if(j.current&&O)return se.current=zj({domNode:j.current,panZoom:O,getTransform:()=>q.getState().transform,getViewScale:()=>re.current}),()=>{var pe;(pe=se.current)==null||pe.destroy()}},[O]),V.useEffect(()=>{var pe;(pe=se.current)==null||pe.update({translateExtent:H,width:U,height:ee,inversePan:T,pannable:E,zoomStep:k,zoomable:_})},[E,_,T,k,H,U,ee]);const xe=v?pe=>{var Te;const[_e,ze]=((Te=se.current)==null?void 0:Te.pointer(pe))||[0,0];v(pe,{x:_e,y:ze})}:void 0,be=w?V.useCallback((pe,_e)=>{const ze=q.getState().nodeLookup.get(_e).internals.userNode;w(pe,ze)},[]):void 0,ye=S??B["minimap.ariaLabel"];return b.jsx(Lc,{position:x,style:{...e,"--xy-minimap-background-color-props":typeof d=="string"?d:void 0,"--xy-minimap-mask-background-color-props":typeof h=="string"?h:void 0,"--xy-minimap-mask-stroke-color-props":typeof m=="string"?m:void 0,"--xy-minimap-mask-stroke-width-props":typeof p=="number"?p*K:void 0,"--xy-minimap-node-background-color-props":typeof l=="string"?l:void 0,"--xy-minimap-node-stroke-color-props":typeof r=="string"?r:void 0,"--xy-minimap-node-stroke-width-props":typeof u=="number"?u:void 0},className:jt(["react-flow__minimap",n]),"data-testid":"rf__minimap",children:b.jsxs("svg",{width:F,height:z,viewBox:`${N} ${$} ${X} ${J}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":ne,ref:j,onClick:xe,children:[ye&&b.jsx("title",{id:ne,children:ye}),b.jsx(p5,{onClick:be,nodeColor:l,nodeStrokeColor:r,nodeBorderRadius:o,nodeClassName:a,nodeStrokeWidth:u,nodeComponent:c}),b.jsx("path",{className:"react-flow__minimap-mask",d:`M${N-Y},${$-Y}h${X+Y*2}v${J+Y*2}h${-X-Y*2}z + M${R.x},${R.y}h${R.width}v${R.height}h${-R.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}__.displayName="MiniMap";const b5=V.memo(__),w5=e=>n=>e?`${Math.max(1/n.transform[2],1)}`:void 0,S5={[ma.Line]:"right",[ma.Handle]:"bottom-right"};function _5({nodeId:e,position:n,variant:r=ma.Handle,className:l,style:a=void 0,children:o,color:u,minWidth:c=10,minHeight:d=10,maxWidth:h=Number.MAX_VALUE,maxHeight:m=Number.MAX_VALUE,keepAspectRatio:p=!1,resizeDirection:x,autoScale:v=!0,shouldResize:w,onResizeStart:E,onResize:_,onResizeEnd:S}){const T=t_(),k=typeof e=="string"?e:T,A=mt(),q=V.useRef(null),j=r===ma.Handle,L=Ye(V.useCallback(w5(j&&v),[j,v]),pt),R=V.useRef(null),P=n??S5[r];V.useEffect(()=>{if(!(!q.current||!k))return R.current||(R.current=Gj({domNode:q.current,nodeId:k,getStoreItems:()=>{const{nodeLookup:H,transform:U,snapGrid:ee,snapToGrid:B,nodeOrigin:F,domNode:z}=A.getState();return{nodeLookup:H,transform:U,snapGrid:ee,snapToGrid:B,nodeOrigin:F,paneDomNode:z}},onChange:(H,U)=>{const{triggerNodeChanges:ee,nodeLookup:B,parentLookup:F,nodeOrigin:z}=A.getState(),G=[],Q={x:H.x,y:H.y},K=B.get(k);if(K&&K.expandParent&&K.parentId){const M=K.origin??z,I=H.width??K.measured.width??0,Y=H.height??K.measured.height??0,N={id:K.id,parentId:K.parentId,rect:{width:I,height:Y,...ES({x:H.x??K.position.x,y:H.y??K.position.y},{width:I,height:Y},K.parentId,B,M)}},$=Lm([N],B,F,z);G.push(...$),Q.x=H.x?Math.max(M[0]*I,H.x):void 0,Q.y=H.y?Math.max(M[1]*Y,H.y):void 0}if(Q.x!==void 0&&Q.y!==void 0){const M={id:k,type:"position",position:{...Q}};G.push(M)}if(H.width!==void 0&&H.height!==void 0){const I={id:k,type:"dimensions",resizing:!0,setAttributes:x?x==="horizontal"?"width":"height":!0,dimensions:{width:H.width,height:H.height}};G.push(I)}for(const M of U){const I={...M,type:"position"};G.push(I)}ee(G)},onEnd:({width:H,height:U})=>{const ee={id:k,type:"dimensions",resizing:!1,dimensions:{width:H,height:U}};A.getState().triggerNodeChanges([ee])}})),R.current.update({controlPosition:P,boundaries:{minWidth:c,minHeight:d,maxWidth:h,maxHeight:m},keepAspectRatio:p,resizeDirection:x,onResizeStart:E,onResize:_,onResizeEnd:S,shouldResize:w}),()=>{var H;(H=R.current)==null||H.destroy()}},[P,c,d,h,m,p,E,_,S,w]);const O=P.split("-");return b.jsx("div",{className:jt(["react-flow__resize-control","nodrag",...O,r,l]),ref:q,style:{...a,scale:L,...u&&{[j?"backgroundColor":"borderColor"]:u}},children:o})}V.memo(_5);function is(e,n){if(n.length===0)return null;let r=e[n[0]];for(let l=1;l l.viewContextPath),n=fe(l=>l.nodes),r=fe(l=>l.subworkflowContexts);return V.useMemo(()=>{var l;return e.length===0?n:((l=is(r,e))==null?void 0:l.nodes)??n},[e,n,r])}function k5(){const e=fe(l=>l.viewContextPath),n=fe(l=>l.groupProgress),r=fe(l=>l.subworkflowContexts);return V.useMemo(()=>{var l;return e.length===0?n:((l=is(r,e))==null?void 0:l.groupProgress)??n},[e,n,r])}function E5(){const e=fe(l=>l.viewContextPath),n=fe(l=>l.highlightedEdges),r=fe(l=>l.subworkflowContexts);return V.useMemo(()=>{var l;return e.length===0?n:((l=is(r,e))==null?void 0:l.highlightedEdges)??n},[e,n,r])}function Bm(){const e=fe(r=>r.viewContextPath),n=fe(r=>r.subworkflowContexts);return V.useMemo(()=>{var r;return e.length===0?n:((r=is(n,e))==null?void 0:r.children)??[]},[e,n])}function N5(){const e=fe(h=>h.viewContextPath),n=fe(h=>h.agents),r=fe(h=>h.routes),l=fe(h=>h.parallelGroups),a=fe(h=>h.forEachGroups),o=fe(h=>h.nodes),u=fe(h=>h.groupProgress),c=fe(h=>h.entryPoint),d=fe(h=>h.subworkflowContexts);return V.useMemo(()=>{if(e.length===0)return{agents:n,routes:r,parallelGroups:l,forEachGroups:a,nodes:o,groupProgress:u,entryPoint:c,subworkflowContexts:d,parentAgent:null};const h=is(d,e);return h?{agents:h.agents,routes:h.routes,parallelGroups:h.parallelGroups,forEachGroups:h.forEachGroups,nodes:h.nodes,groupProgress:h.groupProgress,entryPoint:h.entryPoint,subworkflowContexts:h.children,parentAgent:h.parentAgent}:{agents:n,routes:r,parallelGroups:l,forEachGroups:a,nodes:o,groupProgress:u,entryPoint:c,subworkflowContexts:d,parentAgent:null}},[e,n,r,l,a,o,u,c,d])}function C5(){const e=new URLSearchParams(window.location.search);return{subworkflowPath:e.get("subworkflow"),agent:e.get("agent")}}function xb(e,n){const r=[];let l=e;for(const a of n){let o=-1;for(let u=l.length-1;u>=0;u--)if(l[u].slotKey===a){o=u;break}if(o===-1){for(let u=l.length-1;u>=0;u--)if(l[u].parentAgent===a){o=u;break}}if(o===-1)return{path:r,failedSegment:a};r.push(o),l=l[o].children}return{path:r,failedSegment:null}}function nm(e,n,r=[]){const l=[];for(let a=0;a c.name===n)&&l.push({path:u,ctx:o}),o.children.length>0&&l.push(...nm(o.children,n,u))}return l}function T5(e){return e.length===0?null:[...e].sort((n,r)=>{const l=n.ctx.status==="running"?1:0,a=r.ctx.status==="running"?1:0;if(l!==a)return a-l;if(n.path.length!==r.path.length)return r.path.length-n.path.length;for(let o=0;o {if(r.current||!u)return;let c=null,d=null,h=null;const m=()=>{if(r.current)return;r.current=!0,c&&clearTimeout(c),d&&clearTimeout(d),h&&h();const v=fe.getState();if(v.agents.length===0){n({message:"Workflow state did not load."});return}let w=[];if(a){const E=a.split("/").filter(Boolean),_=xb(v.subworkflowContexts,E);if(_.failedSegment){const S=E.slice(0,_.path.length).join("/");n({message:`Subworkflow "${_.failedSegment}" not found${S?` (resolved: ${S})`:""}. It may not have started yet.`});return}w=_.path}if(o){if((w.length===0?v.agents:(()=>{let _,S=v.subworkflowContexts;for(const T of w){if(_=S[T],!_)break;S=_.children}return(_==null?void 0:_.agents)??[]})()).some(_=>_.name===o))fe.setState({viewContextPath:w,selectedNode:o});else{const _=nm(v.subworkflowContexts,o);if(_.length===0){const T=a||"root workflow";fe.setState({viewContextPath:w,selectedNode:null}),n({message:`Agent "${o}" not found in ${T}.`});return}if(a){const T=_.slice(0,5).map(A=>A5(v.subworkflowContexts,A.path)).join(", "),k=_.length>5?`, and ${_.length-5} more`:"";fe.setState({viewContextPath:w,selectedNode:null}),n({message:`Agent "${o}" not found in ${a}. Found in: ${T}${k}`});return}const S=T5(_);fe.setState({viewContextPath:S.path,selectedNode:o})}setTimeout(()=>{l({nodes:[{id:o}],padding:.5,duration:400})},200)}else a&&fe.setState({viewContextPath:w,selectedNode:null})},p=()=>{const v=fe.getState();if(v.agents.length===0)return!1;if(v.workflowStatus!=="running"&&v.workflowStatus!=="pending")return!0;if(a){const w=a.split("/").filter(Boolean),{failedSegment:E}=xb(v.subworkflowContexts,w);if(E)return!1}return!(o&&!a&&!v.agents.some(E=>E.name===o)&&nm(v.subworkflowContexts,o).length===0)},x=()=>{c&&clearTimeout(c),c=setTimeout(()=>{r.current||p()&&m()},200)};return h=fe.subscribe(x),d=setTimeout(()=>{r.current||m()},5e3),x(),()=>{c&&clearTimeout(c),d&&clearTimeout(d),h&&h()}},[u,a,o,l]),e}var Ch,yb;function Im(){if(yb)return Ch;yb=1;var e="\0",n="\0",r="";class l{constructor(m){Ct(this,"_isDirected",!0);Ct(this,"_isMultigraph",!1);Ct(this,"_isCompound",!1);Ct(this,"_label");Ct(this,"_defaultNodeLabelFn",()=>{});Ct(this,"_defaultEdgeLabelFn",()=>{});Ct(this,"_nodes",{});Ct(this,"_in",{});Ct(this,"_preds",{});Ct(this,"_out",{});Ct(this,"_sucs",{});Ct(this,"_edgeObjs",{});Ct(this,"_edgeLabels",{});Ct(this,"_nodeCount",0);Ct(this,"_edgeCount",0);Ct(this,"_parent");Ct(this,"_children");m&&(this._isDirected=Object.hasOwn(m,"directed")?m.directed:!0,this._isMultigraph=Object.hasOwn(m,"multigraph")?m.multigraph:!1,this._isCompound=Object.hasOwn(m,"compound")?m.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[n]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(m){return this._label=m,this}graph(){return this._label}setDefaultNodeLabel(m){return this._defaultNodeLabelFn=m,typeof m!="function"&&(this._defaultNodeLabelFn=()=>m),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var m=this;return this.nodes().filter(p=>Object.keys(m._in[p]).length===0)}sinks(){var m=this;return this.nodes().filter(p=>Object.keys(m._out[p]).length===0)}setNodes(m,p){var x=arguments,v=this;return m.forEach(function(w){x.length>1?v.setNode(w,p):v.setNode(w)}),this}setNode(m,p){return Object.hasOwn(this._nodes,m)?(arguments.length>1&&(this._nodes[m]=p),this):(this._nodes[m]=arguments.length>1?p:this._defaultNodeLabelFn(m),this._isCompound&&(this._parent[m]=n,this._children[m]={},this._children[n][m]=!0),this._in[m]={},this._preds[m]={},this._out[m]={},this._sucs[m]={},++this._nodeCount,this)}node(m){return this._nodes[m]}hasNode(m){return Object.hasOwn(this._nodes,m)}removeNode(m){var p=this;if(Object.hasOwn(this._nodes,m)){var x=v=>p.removeEdge(p._edgeObjs[v]);delete this._nodes[m],this._isCompound&&(this._removeFromParentsChildList(m),delete this._parent[m],this.children(m).forEach(function(v){p.setParent(v)}),delete this._children[m]),Object.keys(this._in[m]).forEach(x),delete this._in[m],delete this._preds[m],Object.keys(this._out[m]).forEach(x),delete this._out[m],delete this._sucs[m],--this._nodeCount}return this}setParent(m,p){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(p===void 0)p=n;else{p+="";for(var x=p;x!==void 0;x=this.parent(x))if(x===m)throw new Error("Setting "+p+" as parent of "+m+" would create a cycle");this.setNode(p)}return this.setNode(m),this._removeFromParentsChildList(m),this._parent[m]=p,this._children[p][m]=!0,this}_removeFromParentsChildList(m){delete this._children[this._parent[m]][m]}parent(m){if(this._isCompound){var p=this._parent[m];if(p!==n)return p}}children(m=n){if(this._isCompound){var p=this._children[m];if(p)return Object.keys(p)}else{if(m===n)return this.nodes();if(this.hasNode(m))return[]}}predecessors(m){var p=this._preds[m];if(p)return Object.keys(p)}successors(m){var p=this._sucs[m];if(p)return Object.keys(p)}neighbors(m){var p=this.predecessors(m);if(p){const v=new Set(p);for(var x of this.successors(m))v.add(x);return Array.from(v.values())}}isLeaf(m){var p;return this.isDirected()?p=this.successors(m):p=this.neighbors(m),p.length===0}filterNodes(m){var p=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});p.setGraph(this.graph());var x=this;Object.entries(this._nodes).forEach(function([E,_]){m(E)&&p.setNode(E,_)}),Object.values(this._edgeObjs).forEach(function(E){p.hasNode(E.v)&&p.hasNode(E.w)&&p.setEdge(E,x.edge(E))});var v={};function w(E){var _=x.parent(E);return _===void 0||p.hasNode(_)?(v[E]=_,_):_ in v?v[_]:w(_)}return this._isCompound&&p.nodes().forEach(E=>p.setParent(E,w(E))),p}setDefaultEdgeLabel(m){return this._defaultEdgeLabelFn=m,typeof m!="function"&&(this._defaultEdgeLabelFn=()=>m),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(m,p){var x=this,v=arguments;return m.reduce(function(w,E){return v.length>1?x.setEdge(w,E,p):x.setEdge(w,E),E}),this}setEdge(){var m,p,x,v,w=!1,E=arguments[0];typeof E=="object"&&E!==null&&"v"in E?(m=E.v,p=E.w,x=E.name,arguments.length===2&&(v=arguments[1],w=!0)):(m=E,p=arguments[1],x=arguments[3],arguments.length>2&&(v=arguments[2],w=!0)),m=""+m,p=""+p,x!==void 0&&(x=""+x);var _=u(this._isDirected,m,p,x);if(Object.hasOwn(this._edgeLabels,_))return w&&(this._edgeLabels[_]=v),this;if(x!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(m),this.setNode(p),this._edgeLabels[_]=w?v:this._defaultEdgeLabelFn(m,p,x);var S=c(this._isDirected,m,p,x);return m=S.v,p=S.w,Object.freeze(S),this._edgeObjs[_]=S,a(this._preds[p],m),a(this._sucs[m],p),this._in[p][_]=S,this._out[m][_]=S,this._edgeCount++,this}edge(m,p,x){var v=arguments.length===1?d(this._isDirected,arguments[0]):u(this._isDirected,m,p,x);return this._edgeLabels[v]}edgeAsObj(){const m=this.edge(...arguments);return typeof m!="object"?{label:m}:m}hasEdge(m,p,x){var v=arguments.length===1?d(this._isDirected,arguments[0]):u(this._isDirected,m,p,x);return Object.hasOwn(this._edgeLabels,v)}removeEdge(m,p,x){var v=arguments.length===1?d(this._isDirected,arguments[0]):u(this._isDirected,m,p,x),w=this._edgeObjs[v];return w&&(m=w.v,p=w.w,delete this._edgeLabels[v],delete this._edgeObjs[v],o(this._preds[p],m),o(this._sucs[m],p),delete this._in[p][v],delete this._out[m][v],this._edgeCount--),this}inEdges(m,p){var x=this._in[m];if(x){var v=Object.values(x);return p?v.filter(w=>w.v===p):v}}outEdges(m,p){var x=this._out[m];if(x){var v=Object.values(x);return p?v.filter(w=>w.w===p):v}}nodeEdges(m,p){var x=this.inEdges(m,p);if(x)return x.concat(this.outEdges(m,p))}}function a(h,m){h[m]?h[m]++:h[m]=1}function o(h,m){--h[m]||delete h[m]}function u(h,m,p,x){var v=""+m,w=""+p;if(!h&&v>w){var E=v;v=w,w=E}return v+r+w+r+(x===void 0?e:x)}function c(h,m,p,x){var v=""+m,w=""+p;if(!h&&v>w){var E=v;v=w,w=E}var _={v,w};return x&&(_.name=x),_}function d(h,m){return u(h,m.v,m.w,m.name)}return Ch=l,Ch}var Th,vb;function z5(){return vb||(vb=1,Th="2.2.4"),Th}var Ah,bb;function M5(){return bb||(bb=1,Ah={Graph:Im(),version:z5()}),Ah}var jh,wb;function D5(){if(wb)return jh;wb=1;var e=Im();jh={write:n,read:a};function n(o){var u={options:{directed:o.isDirected(),multigraph:o.isMultigraph(),compound:o.isCompound()},nodes:r(o),edges:l(o)};return o.graph()!==void 0&&(u.value=structuredClone(o.graph())),u}function r(o){return o.nodes().map(function(u){var c=o.node(u),d=o.parent(u),h={v:u};return c!==void 0&&(h.value=c),d!==void 0&&(h.parent=d),h})}function l(o){return o.edges().map(function(u){var c=o.edge(u),d={v:u.v,w:u.w};return u.name!==void 0&&(d.name=u.name),c!==void 0&&(d.value=c),d})}function a(o){var u=new e(o.options).setGraph(o.value);return o.nodes.forEach(function(c){u.setNode(c.v,c.value),c.parent&&u.setParent(c.v,c.parent)}),o.edges.forEach(function(c){u.setEdge({v:c.v,w:c.w,name:c.name},c.value)}),u}return jh}var zh,Sb;function R5(){if(Sb)return zh;Sb=1,zh=e;function e(n){var r={},l=[],a;function o(u){Object.hasOwn(r,u)||(r[u]=!0,a.push(u),n.successors(u).forEach(o),n.predecessors(u).forEach(o))}return n.nodes().forEach(function(u){a=[],o(u),a.length&&l.push(a)}),l}return zh}var Mh,_b;function k_(){if(_b)return Mh;_b=1;class e{constructor(){Ct(this,"_arr",[]);Ct(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(r){return r.key})}has(r){return Object.hasOwn(this._keyIndices,r)}priority(r){var l=this._keyIndices[r];if(l!==void 0)return this._arr[l].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(r,l){var a=this._keyIndices;if(r=String(r),!Object.hasOwn(a,r)){var o=this._arr,u=o.length;return a[r]=u,o.push({key:r,priority:l}),this._decrease(u),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var r=this._arr.pop();return delete this._keyIndices[r.key],this._heapify(0),r.key}decrease(r,l){var a=this._keyIndices[r];if(l>this._arr[a].priority)throw new Error("New priority is greater than current priority. Key: "+r+" Old: "+this._arr[a].priority+" New: "+l);this._arr[a].priority=l,this._decrease(a)}_heapify(r){var l=this._arr,a=2*r,o=a+1,u=r;a >1,!(l[o].priority1;function r(a,o,u,c){return l(a,String(o),u||n,c||function(d){return a.outEdges(d)})}function l(a,o,u,c){var d={},h=new e,m,p,x=function(v){var w=v.v!==m?v.v:v.w,E=d[w],_=u(v),S=p.distance+_;if(_<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+v+" Weight: "+_);S 0&&(m=h.removeMin(),p=d[m],p.distance!==Number.POSITIVE_INFINITY);)c(m).forEach(x);return d}return Dh}var Rh,Eb;function O5(){if(Eb)return Rh;Eb=1;var e=E_();Rh=n;function n(r,l,a){return r.nodes().reduce(function(o,u){return o[u]=e(r,u,l,a),o},{})}return Rh}var Oh,Nb;function N_(){if(Nb)return Oh;Nb=1,Oh=e;function e(n){var r=0,l=[],a={},o=[];function u(c){var d=a[c]={onStack:!0,lowlink:r,index:r++};if(l.push(c),n.successors(c).forEach(function(p){Object.hasOwn(a,p)?a[p].onStack&&(d.lowlink=Math.min(d.lowlink,a[p].index)):(u(p),d.lowlink=Math.min(d.lowlink,a[p].lowlink))}),d.lowlink===d.index){var h=[],m;do m=l.pop(),a[m].onStack=!1,h.push(m);while(c!==m);o.push(h)}}return n.nodes().forEach(function(c){Object.hasOwn(a,c)||u(c)}),o}return Oh}var Lh,Cb;function L5(){if(Cb)return Lh;Cb=1;var e=N_();Lh=n;function n(r){return e(r).filter(function(l){return l.length>1||l.length===1&&r.hasEdge(l[0],l[0])})}return Lh}var Hh,Tb;function H5(){if(Tb)return Hh;Tb=1,Hh=n;var e=()=>1;function n(l,a,o){return r(l,a||e,o||function(u){return l.outEdges(u)})}function r(l,a,o){var u={},c=l.nodes();return c.forEach(function(d){u[d]={},u[d][d]={distance:0},c.forEach(function(h){d!==h&&(u[d][h]={distance:Number.POSITIVE_INFINITY})}),o(d).forEach(function(h){var m=h.v===d?h.w:h.v,p=a(h);u[d][m]={distance:p,predecessor:d}})}),c.forEach(function(d){var h=u[d];c.forEach(function(m){var p=u[m];c.forEach(function(x){var v=p[d],w=h[x],E=p[x],_=v.distance+w.distance;_ a.successors(p):p=>a.neighbors(p),d=u==="post"?n:r,h=[],m={};return o.forEach(p=>{if(!a.hasNode(p))throw new Error("Graph does not have node: "+p);d(p,c,m,h)}),h}function n(a,o,u,c){for(var d=[[a,!1]];d.length>0;){var h=d.pop();h[1]?c.push(h[0]):Object.hasOwn(u,h[0])||(u[h[0]]=!0,d.push([h[0],!0]),l(o(h[0]),m=>d.push([m,!1])))}}function r(a,o,u,c){for(var d=[a];d.length>0;){var h=d.pop();Object.hasOwn(u,h)||(u[h]=!0,c.push(h),l(o(h),m=>d.push(m)))}}function l(a,o){for(var u=a.length;u--;)o(a[u],u,a);return a}return qh}var Uh,Mb;function I5(){if(Mb)return Uh;Mb=1;var e=T_();Uh=n;function n(r,l){return e(r,l,"post")}return Uh}var Ph,Db;function q5(){if(Db)return Ph;Db=1;var e=T_();Ph=n;function n(r,l){return e(r,l,"pre")}return Ph}var Vh,Rb;function U5(){if(Rb)return Vh;Rb=1;var e=Im(),n=k_();Vh=r;function r(l,a){var o=new e,u={},c=new n,d;function h(p){var x=p.v===d?p.w:p.v,v=c.priority(x);if(v!==void 0){var w=a(p);w 0;){if(d=c.removeMin(),Object.hasOwn(u,d))o.setEdge(d,u[d]);else{if(m)throw new Error("Input graph is not connected: "+l);m=!0}l.nodeEdges(d).forEach(h)}return o}return Vh}var $h,Ob;function P5(){return Ob||(Ob=1,$h={components:R5(),dijkstra:E_(),dijkstraAll:O5(),findCycles:L5(),floydWarshall:H5(),isAcyclic:B5(),postorder:I5(),preorder:q5(),prim:U5(),tarjan:N_(),topsort:C_()}),$h}var Gh,Lb;function Xn(){if(Lb)return Gh;Lb=1;var e=M5();return Gh={Graph:e.Graph,json:D5(),alg:P5(),version:e.version},Gh}var Fh,Hb;function V5(){if(Hb)return Fh;Hb=1;class e{constructor(){let a={};a._next=a._prev=a,this._sentinel=a}dequeue(){let a=this._sentinel,o=a._prev;if(o!==a)return n(o),o}enqueue(a){let o=this._sentinel;a._prev&&a._next&&n(a),a._next=o._next,o._next._prev=a,o._next=a,a._prev=o}toString(){let a=[],o=this._sentinel,u=o._prev;for(;u!==o;)a.push(JSON.stringify(u,r)),u=u._prev;return"["+a.join(", ")+"]"}}function n(l){l._prev._next=l._next,l._next._prev=l._prev,delete l._next,delete l._prev}function r(l,a){if(l!=="_next"&&l!=="_prev")return a}return Fh=e,Fh}var Yh,Bb;function $5(){if(Bb)return Yh;Bb=1;let e=Xn().Graph,n=V5();Yh=l;let r=()=>1;function l(h,m){if(h.nodeCount()<=1)return[];let p=u(h,m||r);return a(p.graph,p.buckets,p.zeroIdx).flatMap(v=>h.outEdges(v.v,v.w))}function a(h,m,p){let x=[],v=m[m.length-1],w=m[0],E;for(;h.nodeCount();){for(;E=w.dequeue();)o(h,m,p,E);for(;E=v.dequeue();)o(h,m,p,E);if(h.nodeCount()){for(let _=m.length-2;_>0;--_)if(E=m[_].dequeue(),E){x=x.concat(o(h,m,p,E,!0));break}}}return x}function o(h,m,p,x,v){let w=v?[]:void 0;return h.inEdges(x.v).forEach(E=>{let _=h.edge(E),S=h.node(E.v);v&&w.push({v:E.v,w:E.w}),S.out-=_,c(m,p,S)}),h.outEdges(x.v).forEach(E=>{let _=h.edge(E),S=E.w,T=h.node(S);T.in-=_,c(m,p,T)}),h.removeNode(x.v),w}function u(h,m){let p=new e,x=0,v=0;h.nodes().forEach(_=>{p.setNode(_,{v:_,in:0,out:0})}),h.edges().forEach(_=>{let S=p.edge(_.v,_.w)||0,T=m(_),k=S+T;p.setEdge(_.v,_.w,k),v=Math.max(v,p.node(_.v).out+=T),x=Math.max(x,p.node(_.w).in+=T)});let w=d(v+x+3).map(()=>new n),E=x+1;return p.nodes().forEach(_=>{c(w,E,p.node(_))}),{graph:p,buckets:w,zeroIdx:E}}function c(h,m,p){p.out?p.in?h[p.out-p.in+m].enqueue(p):h[h.length-1].enqueue(p):h[0].enqueue(p)}function d(h){const m=[];for(let p=0;p P.setNode(O,R.node(O))),R.edges().forEach(O=>{let H=P.edge(O.v,O.w)||{weight:0,minlen:1},U=R.edge(O);P.setEdge(O.v,O.w,{weight:H.weight+U.weight,minlen:Math.max(H.minlen,U.minlen)})}),P}function l(R){let P=new e({multigraph:R.isMultigraph()}).setGraph(R.graph());return R.nodes().forEach(O=>{R.children(O).length||P.setNode(O,R.node(O))}),R.edges().forEach(O=>{P.setEdge(O,R.edge(O))}),P}function a(R){let P=R.nodes().map(O=>{let H={};return R.outEdges(O).forEach(U=>{H[U.w]=(H[U.w]||0)+R.edge(U).weight}),H});return L(R.nodes(),P)}function o(R){let P=R.nodes().map(O=>{let H={};return R.inEdges(O).forEach(U=>{H[U.v]=(H[U.v]||0)+R.edge(U).weight}),H});return L(R.nodes(),P)}function u(R,P){let O=R.x,H=R.y,U=P.x-O,ee=P.y-H,B=R.width/2,F=R.height/2;if(!U&&!ee)throw new Error("Not possible to find intersection inside of the rectangle");let z,G;return Math.abs(ee)*B>Math.abs(U)*F?(ee<0&&(F=-F),z=F*U/ee,G=F):(U<0&&(B=-B),z=B,G=B*ee/U),{x:O+z,y:H+G}}function c(R){let P=A(w(R)+1).map(()=>[]);return R.nodes().forEach(O=>{let H=R.node(O),U=H.rank;U!==void 0&&(P[U][H.order]=O)}),P}function d(R){let P=R.nodes().map(H=>{let U=R.node(H).rank;return U===void 0?Number.MAX_VALUE:U}),O=v(Math.min,P);R.nodes().forEach(H=>{let U=R.node(H);Object.hasOwn(U,"rank")&&(U.rank-=O)})}function h(R){let P=R.nodes().map(B=>R.node(B).rank),O=v(Math.min,P),H=[];R.nodes().forEach(B=>{let F=R.node(B).rank-O;H[F]||(H[F]=[]),H[F].push(B)});let U=0,ee=R.graph().nodeRankFactor;Array.from(H).forEach((B,F)=>{B===void 0&&F%ee!==0?--U:B!==void 0&&U&&B.forEach(z=>R.node(z).rank+=U)})}function m(R,P,O,H){let U={width:0,height:0};return arguments.length>=4&&(U.rank=O,U.order=H),n(R,"border",U,P)}function p(R,P=x){const O=[];for(let H=0;H x){const O=p(P);return R.apply(null,O.map(H=>R.apply(null,H)))}else return R.apply(null,P)}function w(R){const O=R.nodes().map(H=>{let U=R.node(H).rank;return U===void 0?Number.MIN_VALUE:U});return v(Math.max,O)}function E(R,P){let O={lhs:[],rhs:[]};return R.forEach(H=>{P(H)?O.lhs.push(H):O.rhs.push(H)}),O}function _(R,P){let O=Date.now();try{return P()}finally{console.log(R+" time: "+(Date.now()-O)+"ms")}}function S(R,P){return P()}let T=0;function k(R){var P=++T;return R+(""+P)}function A(R,P,O=1){P==null&&(P=R,R=0);let H=ee=>ee P
H[P]),Object.entries(R).reduce((H,[U,ee])=>(H[U]=O(ee,U),H),{})}function L(R,P){return R.reduce((O,H,U)=>(O[H]=P[U],O),{})}return Xh}var Qh,qb;function G5(){if(qb)return Qh;qb=1;let e=$5(),n=At().uniqueId;Qh={run:r,undo:a};function r(o){(o.graph().acyclicer==="greedy"?e(o,c(o)):l(o)).forEach(d=>{let h=o.edge(d);o.removeEdge(d),h.forwardName=d.name,h.reversed=!0,o.setEdge(d.w,d.v,h,n("rev"))});function c(d){return h=>d.edge(h).weight}}function l(o){let u=[],c={},d={};function h(m){Object.hasOwn(d,m)||(d[m]=!0,c[m]=!0,o.outEdges(m).forEach(p=>{Object.hasOwn(c,p.w)?u.push(p):h(p.w)}),delete c[m])}return o.nodes().forEach(h),u}function a(o){o.edges().forEach(u=>{let c=o.edge(u);if(c.reversed){o.removeEdge(u);let d=c.forwardName;delete c.reversed,delete c.forwardName,o.setEdge(u.w,u.v,c,d)}})}return Qh}var Zh,Ub;function F5(){if(Ub)return Zh;Ub=1;let e=At();Zh={run:n,undo:l};function n(a){a.graph().dummyChains=[],a.edges().forEach(o=>r(a,o))}function r(a,o){let u=o.v,c=a.node(u).rank,d=o.w,h=a.node(d).rank,m=o.name,p=a.edge(o),x=p.labelRank;if(h===c+1)return;a.removeEdge(o);let v,w,E;for(E=0,++c;c {let u=a.node(o),c=u.edgeLabel,d;for(a.setEdge(u.edgeObj,c);u.dummy;)d=a.successors(o)[0],a.removeNode(o),c.points.push({x:u.x,y:u.y}),u.dummy==="edge-label"&&(c.x=u.x,c.y=u.y,c.width=u.width,c.height=u.height),o=d,u=a.node(o)})}return Zh}var Kh,Pb;function xc(){if(Pb)return Kh;Pb=1;const{applyWithChunking:e}=At();Kh={longestPath:n,slack:r};function n(l){var a={};function o(u){var c=l.node(u);if(Object.hasOwn(a,u))return c.rank;a[u]=!0;let d=l.outEdges(u).map(m=>m==null?Number.POSITIVE_INFINITY:o(m.w)-l.edge(m).minlen);var h=e(Math.min,d);return h===Number.POSITIVE_INFINITY&&(h=0),c.rank=h}l.sources().forEach(o)}function r(l,a){return l.node(a.w).rank-l.node(a.v).rank-l.edge(a).minlen}return Kh}var Jh,Vb;function A_(){if(Vb)return Jh;Vb=1;var e=Xn().Graph,n=xc().slack;Jh=r;function r(u){var c=new e({directed:!1}),d=u.nodes()[0],h=u.nodeCount();c.setNode(d,{});for(var m,p;l(c,u) {var p=m.v,x=h===p?m.w:p;!u.hasNode(x)&&!n(c,m)&&(u.setNode(x,{}),u.setEdge(h,x,{}),d(x))})}return u.nodes().forEach(d),u.nodeCount()}function a(u,c){return c.edges().reduce((h,m)=>{let p=Number.POSITIVE_INFINITY;return u.hasNode(m.v)!==u.hasNode(m.w)&&(p=n(c,m)),p c.node(h).rank+=d)}return Jh}var Wh,$b;function Y5(){if($b)return Wh;$b=1;var e=A_(),n=xc().slack,r=xc().longestPath,l=Xn().alg.preorder,a=Xn().alg.postorder,o=At().simplify;Wh=u,u.initLowLimValues=m,u.initCutValues=c,u.calcCutValue=h,u.leaveEdge=x,u.enterEdge=v,u.exchangeEdges=w;function u(T){T=o(T),r(T);var k=e(T);m(k),c(k,T);for(var A,q;A=x(k);)q=v(k,T,A),w(k,T,A,q)}function c(T,k){var A=a(T,T.nodes());A=A.slice(0,A.length-1),A.forEach(q=>d(T,k,q))}function d(T,k,A){var q=T.node(A),j=q.parent;T.edge(A,j).cutvalue=h(T,k,A)}function h(T,k,A){var q=T.node(A),j=q.parent,L=!0,R=k.edge(A,j),P=0;return R||(L=!1,R=k.edge(j,A)),P=R.weight,k.nodeEdges(A).forEach(O=>{var H=O.v===A,U=H?O.w:O.v;if(U!==j){var ee=H===L,B=k.edge(O).weight;if(P+=ee?B:-B,_(T,A,U)){var F=T.edge(A,U).cutvalue;P+=ee?-F:F}}}),P}function m(T,k){arguments.length<2&&(k=T.nodes()[0]),p(T,{},1,k)}function p(T,k,A,q,j){var L=A,R=T.node(q);return k[q]=!0,T.neighbors(q).forEach(P=>{Object.hasOwn(k,P)||(A=p(T,k,A,P,q))}),R.low=L,R.lim=A++,j?R.parent=j:delete R.parent,A}function x(T){return T.edges().find(k=>T.edge(k).cutvalue<0)}function v(T,k,A){var q=A.v,j=A.w;k.hasEdge(q,j)||(q=A.w,j=A.v);var L=T.node(q),R=T.node(j),P=L,O=!1;L.lim>R.lim&&(P=R,O=!0);var H=k.edges().filter(U=>O===S(T,T.node(U.v),P)&&O!==S(T,T.node(U.w),P));return H.reduce((U,ee)=>n(k,ee) !k.node(j).parent),q=l(T,A);q=q.slice(1),q.forEach(j=>{var L=T.node(j).parent,R=k.edge(j,L),P=!1;R||(R=k.edge(L,j),P=!0),k.node(j).rank=k.node(L).rank+(P?R.minlen:-R.minlen)})}function _(T,k,A){return T.hasEdge(k,A)}function S(T,k,A){return A.low<=k.lim&&k.lim<=A.lim}return Wh}var ep,Gb;function X5(){if(Gb)return ep;Gb=1;var e=xc(),n=e.longestPath,r=A_(),l=Y5();ep=a;function a(d){var h=d.graph().ranker;if(h instanceof Function)return h(d);switch(d.graph().ranker){case"network-simplex":c(d);break;case"tight-tree":u(d);break;case"longest-path":o(d);break;case"none":break;default:c(d)}}var o=n;function u(d){n(d),r(d)}function c(d){l(d)}return ep}var tp,Fb;function Q5(){if(Fb)return tp;Fb=1,tp=e;function e(l){let a=r(l);l.graph().dummyChains.forEach(o=>{let u=l.node(o),c=u.edgeObj,d=n(l,a,c.v,c.w),h=d.path,m=d.lca,p=0,x=h[p],v=!0;for(;o!==c.w;){if(u=l.node(o),v){for(;(x=h[p])!==m&&l.node(x).maxRank h||m>a[p].lim));for(x=p,p=u;(p=l.parent(p))!==x;)d.push(p);return{path:c.concat(d.reverse()),lca:x}}function r(l){let a={},o=0;function u(c){let d=o;l.children(c).forEach(u),a[c]={low:d,lim:o++}}return l.children().forEach(u),a}return tp}var np,Yb;function Z5(){if(Yb)return np;Yb=1;let e=At();np={run:n,cleanup:o};function n(u){let c=e.addDummyNode(u,"root",{},"_root"),d=l(u),h=Object.values(d),m=e.applyWithChunking(Math.max,h)-1,p=2*m+1;u.graph().nestingRoot=c,u.edges().forEach(v=>u.edge(v).minlen*=p);let x=a(u)+1;u.children().forEach(v=>r(u,c,p,x,m,d,v)),u.graph().nodeRankFactor=p}function r(u,c,d,h,m,p,x){let v=u.children(x);if(!v.length){x!==c&&u.setEdge(c,x,{weight:0,minlen:d});return}let w=e.addBorderNode(u,"_bt"),E=e.addBorderNode(u,"_bb"),_=u.node(x);u.setParent(w,x),_.borderTop=w,u.setParent(E,x),_.borderBottom=E,v.forEach(S=>{r(u,c,d,h,m,p,S);let T=u.node(S),k=T.borderTop?T.borderTop:S,A=T.borderBottom?T.borderBottom:S,q=T.borderTop?h:2*h,j=k!==A?1:m-p[x]+1;u.setEdge(w,k,{weight:q,minlen:j,nestingEdge:!0}),u.setEdge(A,E,{weight:q,minlen:j,nestingEdge:!0})}),u.parent(x)||u.setEdge(c,w,{weight:0,minlen:m+p[x]})}function l(u){var c={};function d(h,m){var p=u.children(h);p&&p.length&&p.forEach(x=>d(x,m+1)),c[h]=m}return u.children().forEach(h=>d(h,1)),c}function a(u){return u.edges().reduce((c,d)=>c+u.edge(d).weight,0)}function o(u){var c=u.graph();u.removeNode(c.nestingRoot),delete c.nestingRoot,u.edges().forEach(d=>{var h=u.edge(d);h.nestingEdge&&u.removeEdge(d)})}return np}var rp,Xb;function K5(){if(Xb)return rp;Xb=1;let e=At();rp=n;function n(l){function a(o){let u=l.children(o),c=l.node(o);if(u.length&&u.forEach(a),Object.hasOwn(c,"minRank")){c.borderLeft=[],c.borderRight=[];for(let d=c.minRank,h=c.maxRank+1;d l(d.node(h))),d.edges().forEach(h=>l(d.edge(h)))}function l(d){let h=d.width;d.width=d.height,d.height=h}function a(d){d.nodes().forEach(h=>o(d.node(h))),d.edges().forEach(h=>{let m=d.edge(h);m.points.forEach(o),Object.hasOwn(m,"y")&&o(m)})}function o(d){d.y=-d.y}function u(d){d.nodes().forEach(h=>c(d.node(h))),d.edges().forEach(h=>{let m=d.edge(h);m.points.forEach(c),Object.hasOwn(m,"x")&&c(m)})}function c(d){let h=d.x;d.x=d.y,d.y=h}return ip}var lp,Zb;function W5(){if(Zb)return lp;Zb=1;let e=At();lp=n;function n(r){let l={},a=r.nodes().filter(m=>!r.children(m).length),o=a.map(m=>r.node(m).rank),u=e.applyWithChunking(Math.max,o),c=e.range(u+1).map(()=>[]);function d(m){if(l[m])return;l[m]=!0;let p=r.node(m);c[p.rank].push(m),r.successors(m).forEach(d)}return a.sort((m,p)=>r.node(m).rank-r.node(p).rank).forEach(d),c}return lp}var ap,Kb;function e4(){if(Kb)return ap;Kb=1;let e=At().zipObject;ap=n;function n(l,a){let o=0;for(let u=1;u v)),c=a.flatMap(x=>l.outEdges(x).map(v=>({pos:u[v.w],weight:l.edge(v).weight})).sort((v,w)=>v.pos-w.pos)),d=1;for(;d {let v=x.pos+d;m[v]+=x.weight;let w=0;for(;v>0;)v%2&&(w+=m[v+1]),v=v-1>>1,m[v]+=x.weight;p+=x.weight*w}),p}return ap}var op,Jb;function t4(){if(Jb)return op;Jb=1,op=e;function e(n,r=[]){return r.map(l=>{let a=n.inEdges(l);if(a.length){let o=a.reduce((u,c)=>{let d=n.edge(c),h=n.node(c.v);return{sum:u.sum+d.weight*h.order,weight:u.weight+d.weight}},{sum:0,weight:0});return{v:l,barycenter:o.sum/o.weight,weight:o.weight}}else return{v:l}})}return op}var sp,Wb;function n4(){if(Wb)return sp;Wb=1;let e=At();sp=n;function n(a,o){let u={};a.forEach((d,h)=>{let m=u[d.v]={indegree:0,in:[],out:[],vs:[d.v],i:h};d.barycenter!==void 0&&(m.barycenter=d.barycenter,m.weight=d.weight)}),o.edges().forEach(d=>{let h=u[d.v],m=u[d.w];h!==void 0&&m!==void 0&&(m.indegree++,h.out.push(u[d.w]))});let c=Object.values(u).filter(d=>!d.indegree);return r(c)}function r(a){let o=[];function u(d){return h=>{h.merged||(h.barycenter===void 0||d.barycenter===void 0||h.barycenter>=d.barycenter)&&l(d,h)}}function c(d){return h=>{h.in.push(d),--h.indegree===0&&a.push(h)}}for(;a.length;){let d=a.pop();o.push(d),d.in.reverse().forEach(u(d)),d.out.forEach(c(d))}return o.filter(d=>!d.merged).map(d=>e.pick(d,["vs","i","barycenter","weight"]))}function l(a,o){let u=0,c=0;a.weight&&(u+=a.barycenter*a.weight,c+=a.weight),o.weight&&(u+=o.barycenter*o.weight,c+=o.weight),a.vs=o.vs.concat(a.vs),a.barycenter=u/c,a.weight=c,a.i=Math.min(o.i,a.i),o.merged=!0}return sp}var up,e1;function r4(){if(e1)return up;e1=1;let e=At();up=n;function n(a,o){let u=e.partition(a,w=>Object.hasOwn(w,"barycenter")),c=u.lhs,d=u.rhs.sort((w,E)=>E.i-w.i),h=[],m=0,p=0,x=0;c.sort(l(!!o)),x=r(h,d,x),c.forEach(w=>{x+=w.vs.length,h.push(w.vs),m+=w.barycenter*w.weight,p+=w.weight,x=r(h,d,x)});let v={vs:h.flat(!0)};return p&&(v.barycenter=m/p,v.weight=p),v}function r(a,o,u){let c;for(;o.length&&(c=o[o.length-1]).i<=u;)o.pop(),a.push(c.vs),u++;return u}function l(a){return(o,u)=>o.barycenter u.barycenter?1:a?u.i-o.i:o.i-u.i}return up}var cp,t1;function i4(){if(t1)return cp;t1=1;let e=t4(),n=n4(),r=r4();cp=l;function l(u,c,d,h){let m=u.children(c),p=u.node(c),x=p?p.borderLeft:void 0,v=p?p.borderRight:void 0,w={};x&&(m=m.filter(T=>T!==x&&T!==v));let E=e(u,m);E.forEach(T=>{if(u.children(T.v).length){let k=l(u,T.v,d,h);w[T.v]=k,Object.hasOwn(k,"barycenter")&&o(T,k)}});let _=n(E,d);a(_,w);let S=r(_,h);if(x&&(S.vs=[x,S.vs,v].flat(!0),u.predecessors(x).length)){let T=u.node(u.predecessors(x)[0]),k=u.node(u.predecessors(v)[0]);Object.hasOwn(S,"barycenter")||(S.barycenter=0,S.weight=0),S.barycenter=(S.barycenter*S.weight+T.order+k.order)/(S.weight+2),S.weight+=2}return S}function a(u,c){u.forEach(d=>{d.vs=d.vs.flatMap(h=>c[h]?c[h].vs:h)})}function o(u,c){u.barycenter!==void 0?(u.barycenter=(u.barycenter*u.weight+c.barycenter*c.weight)/(u.weight+c.weight),u.weight+=c.weight):(u.barycenter=c.barycenter,u.weight=c.weight)}return cp}var fp,n1;function l4(){if(n1)return fp;n1=1;let e=Xn().Graph,n=At();fp=r;function r(a,o,u,c){c||(c=a.nodes());let d=l(a),h=new e({compound:!0}).setGraph({root:d}).setDefaultNodeLabel(m=>a.node(m));return c.forEach(m=>{let p=a.node(m),x=a.parent(m);(p.rank===o||p.minRank<=o&&o<=p.maxRank)&&(h.setNode(m),h.setParent(m,x||d),a[u](m).forEach(v=>{let w=v.v===m?v.w:v.v,E=h.edge(w,m),_=E!==void 0?E.weight:0;h.setEdge(w,m,{weight:a.edge(v).weight+_})}),Object.hasOwn(p,"minRank")&&h.setNode(m,{borderLeft:p.borderLeft[o],borderRight:p.borderRight[o]}))}),h}function l(a){for(var o;a.hasNode(o=n.uniqueId("_root")););return o}return fp}var dp,r1;function a4(){if(r1)return dp;r1=1,dp=e;function e(n,r,l){let a={},o;l.forEach(u=>{let c=n.parent(u),d,h;for(;c;){if(d=n.parent(c),d?(h=a[d],a[d]=c):(h=o,o=c),h&&h!==c){r.setEdge(h,c);return}c=d}})}return dp}var hp,i1;function o4(){if(i1)return hp;i1=1;let e=W5(),n=e4(),r=i4(),l=l4(),a=a4(),o=Xn().Graph,u=At();hp=c;function c(p,x){if(x&&typeof x.customOrder=="function"){x.customOrder(p,c);return}let v=u.maxRank(p),w=d(p,u.range(1,v+1),"inEdges"),E=d(p,u.range(v-1,-1,-1),"outEdges"),_=e(p);if(m(p,_),x&&x.disableOptimalOrderHeuristic)return;let S=Number.POSITIVE_INFINITY,T;for(let k=0,A=0;A<4;++k,++A){h(k%2?w:E,k%4>=2),_=u.buildLayerMatrix(p);let q=n(p,_);q {w.has(_)||w.set(_,[]),w.get(_).push(S)};for(const _ of p.nodes()){const S=p.node(_);if(typeof S.rank=="number"&&E(S.rank,_),typeof S.minRank=="number"&&typeof S.maxRank=="number")for(let T=S.minRank;T<=S.maxRank;T++)T!==S.rank&&E(T,_)}return x.map(function(_){return l(p,_,v,w.get(_)||[])})}function h(p,x){let v=new o;p.forEach(function(w){let E=w.graph().root,_=r(w,E,v,x);_.vs.forEach((S,T)=>w.node(S).order=T),a(w,v,_.vs)})}function m(p,x){Object.values(x).forEach(v=>v.forEach((w,E)=>p.node(w).order=E))}return hp}var pp,l1;function s4(){if(l1)return pp;l1=1;let e=Xn().Graph,n=At();pp={positionX:v,findType1Conflicts:r,findType2Conflicts:l,addConflict:o,hasConflict:u,verticalAlignment:c,horizontalCompaction:d,alignCoordinates:p,findSmallestWidthAlignment:m,balance:x};function r(_,S){let T={};function k(A,q){let j=0,L=0,R=A.length,P=q[q.length-1];return q.forEach((O,H)=>{let U=a(_,O),ee=U?_.node(U).order:R;(U||O===P)&&(q.slice(L,H+1).forEach(B=>{_.predecessors(B).forEach(F=>{let z=_.node(F),G=z.order;(G{O=q[H],_.node(O).dummy&&_.predecessors(O).forEach(U=>{let ee=_.node(U);ee.dummy&&(ee.order P)&&o(T,U,O)})})}function A(q,j){let L=-1,R,P=0;return j.forEach((O,H)=>{if(_.node(O).dummy==="border"){let U=_.predecessors(O);U.length&&(R=_.node(U[0]).order,k(j,P,H,L,R),P=H,L=R)}k(j,P,j.length,R,q.length)}),j}return S.length&&S.reduce(A),T}function a(_,S){if(_.node(S).dummy)return _.predecessors(S).find(T=>_.node(T).dummy)}function o(_,S,T){if(S>T){let A=S;S=T,T=A}let k=_[S];k||(_[S]=k={}),k[T]=!0}function u(_,S,T){if(S>T){let k=S;S=T,T=k}return!!_[S]&&Object.hasOwn(_[S],T)}function c(_,S,T,k){let A={},q={},j={};return S.forEach(L=>{L.forEach((R,P)=>{A[R]=R,q[R]=R,j[R]=P})}),S.forEach(L=>{let R=-1;L.forEach(P=>{let O=k(P);if(O.length){O=O.sort((U,ee)=>j[U]-j[ee]);let H=(O.length-1)/2;for(let U=Math.floor(H),ee=Math.ceil(H);U<=ee;++U){let B=O[U];q[P]===P&&R Math.max(U,q[ee.v]+j.edge(ee)),0)}function O(H){let U=j.outEdges(H).reduce((B,F)=>Math.min(B,q[F.w]-j.edge(F)),Number.POSITIVE_INFINITY),ee=_.node(H);U!==Number.POSITIVE_INFINITY&&ee.borderType!==L&&(q[H]=Math.max(q[H],U))}return R(P,j.predecessors.bind(j)),R(O,j.successors.bind(j)),Object.keys(k).forEach(H=>q[H]=q[T[H]]),q}function h(_,S,T,k){let A=new e,q=_.graph(),j=w(q.nodesep,q.edgesep,k);return S.forEach(L=>{let R;L.forEach(P=>{let O=T[P];if(A.setNode(O),R){var H=T[R],U=A.edge(H,O);A.setEdge(H,O,Math.max(j(_,P,R),U||0))}R=P})}),A}function m(_,S){return Object.values(S).reduce((T,k)=>{let A=Number.NEGATIVE_INFINITY,q=Number.POSITIVE_INFINITY;Object.entries(k).forEach(([L,R])=>{let P=E(_,L)/2;A=Math.max(R+P,A),q=Math.min(R-P,q)});const j=A-q;return j {["l","r"].forEach(j=>{let L=q+j,R=_[L];if(R===S)return;let P=Object.values(R),O=k-n.applyWithChunking(Math.min,P);j!=="l"&&(O=A-n.applyWithChunking(Math.max,P)),O&&(_[L]=n.mapValues(R,H=>H+O))})})}function x(_,S){return n.mapValues(_.ul,(T,k)=>{if(S)return _[S.toLowerCase()][k];{let A=Object.values(_).map(q=>q[k]).sort((q,j)=>q-j);return(A[1]+A[2])/2}})}function v(_){let S=n.buildLayerMatrix(_),T=Object.assign(r(_,S),l(_,S)),k={},A;["u","d"].forEach(j=>{A=j==="u"?S:Object.values(S).reverse(),["l","r"].forEach(L=>{L==="r"&&(A=A.map(H=>Object.values(H).reverse()));let R=(j==="u"?_.predecessors:_.successors).bind(_),P=c(_,A,T,R),O=d(_,A,P.root,P.align,L==="r");L==="r"&&(O=n.mapValues(O,H=>-H)),k[j+L]=O})});let q=m(_,k);return p(k,q),x(k,_.graph().align)}function w(_,S,T){return(k,A,q)=>{let j=k.node(A),L=k.node(q),R=0,P;if(R+=j.width/2,Object.hasOwn(j,"labelpos"))switch(j.labelpos.toLowerCase()){case"l":P=-j.width/2;break;case"r":P=j.width/2;break}if(P&&(R+=T?P:-P),P=0,R+=(j.dummy?S:_)/2,R+=(L.dummy?S:_)/2,R+=L.width/2,Object.hasOwn(L,"labelpos"))switch(L.labelpos.toLowerCase()){case"l":P=L.width/2;break;case"r":P=-L.width/2;break}return P&&(R+=T?P:-P),P=0,R}}function E(_,S){return _.node(S).width}return pp}var mp,a1;function u4(){if(a1)return mp;a1=1;let e=At(),n=s4().positionX;mp=r;function r(a){a=e.asNonCompoundGraph(a),l(a),Object.entries(n(a)).forEach(([o,u])=>a.node(o).x=u)}function l(a){let o=e.buildLayerMatrix(a),u=a.graph().ranksep,c=0;o.forEach(d=>{const h=d.reduce((m,p)=>{const x=a.node(p).height;return m>x?m:x},0);d.forEach(m=>a.node(m).y=c+h/2),c+=h+u})}return mp}var gp,o1;function c4(){if(o1)return gp;o1=1;let e=G5(),n=F5(),r=X5(),l=At().normalizeRanks,a=Q5(),o=At().removeEmptyRanks,u=Z5(),c=K5(),d=J5(),h=o4(),m=u4(),p=At(),x=Xn().Graph;gp=v;function v(N,$){let X=$&&$.debugTiming?p.time:p.notime;X("layout",()=>{let J=X(" buildLayoutGraph",()=>R(N));X(" runLayout",()=>w(J,X,$)),X(" updateInputGraph",()=>E(N,J))})}function w(N,$,X){$(" makeSpaceForEdgeLabels",()=>P(N)),$(" removeSelfEdges",()=>Q(N)),$(" acyclic",()=>e.run(N)),$(" nestingGraph.run",()=>u.run(N)),$(" rank",()=>r(p.asNonCompoundGraph(N))),$(" injectEdgeLabelProxies",()=>O(N)),$(" removeEmptyRanks",()=>o(N)),$(" nestingGraph.cleanup",()=>u.cleanup(N)),$(" normalizeRanks",()=>l(N)),$(" assignRankMinMax",()=>H(N)),$(" removeEdgeLabelProxies",()=>U(N)),$(" normalize.run",()=>n.run(N)),$(" parentDummyChains",()=>a(N)),$(" addBorderSegments",()=>c(N)),$(" order",()=>h(N,X)),$(" insertSelfEdges",()=>K(N)),$(" adjustCoordinateSystem",()=>d.adjust(N)),$(" position",()=>m(N)),$(" positionSelfEdges",()=>M(N)),$(" removeBorderNodes",()=>G(N)),$(" normalize.undo",()=>n.undo(N)),$(" fixupEdgeLabelCoords",()=>F(N)),$(" undoCoordinateSystem",()=>d.undo(N)),$(" translateGraph",()=>ee(N)),$(" assignNodeIntersects",()=>B(N)),$(" reversePoints",()=>z(N)),$(" acyclic.undo",()=>e.undo(N))}function E(N,$){N.nodes().forEach(X=>{let J=N.node(X),ne=$.node(X);J&&(J.x=ne.x,J.y=ne.y,J.rank=ne.rank,$.children(X).length&&(J.width=ne.width,J.height=ne.height))}),N.edges().forEach(X=>{let J=N.edge(X),ne=$.edge(X);J.points=ne.points,Object.hasOwn(ne,"x")&&(J.x=ne.x,J.y=ne.y)}),N.graph().width=$.graph().width,N.graph().height=$.graph().height}let _=["nodesep","edgesep","ranksep","marginx","marginy"],S={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},T=["acyclicer","ranker","rankdir","align"],k=["width","height","rank"],A={width:0,height:0},q=["minlen","weight","width","height","labeloffset"],j={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},L=["labelpos"];function R(N){let $=new x({multigraph:!0,compound:!0}),X=Y(N.graph());return $.setGraph(Object.assign({},S,I(X,_),p.pick(X,T))),N.nodes().forEach(J=>{let ne=Y(N.node(J));const re=I(ne,k);Object.keys(A).forEach(se=>{re[se]===void 0&&(re[se]=A[se])}),$.setNode(J,re),$.setParent(J,N.parent(J))}),N.edges().forEach(J=>{let ne=Y(N.edge(J));$.setEdge(J,Object.assign({},j,I(ne,q),p.pick(ne,L)))}),$}function P(N){let $=N.graph();$.ranksep/=2,N.edges().forEach(X=>{let J=N.edge(X);J.minlen*=2,J.labelpos.toLowerCase()!=="c"&&($.rankdir==="TB"||$.rankdir==="BT"?J.width+=J.labeloffset:J.height+=J.labeloffset)})}function O(N){N.edges().forEach($=>{let X=N.edge($);if(X.width&&X.height){let J=N.node($.v),re={rank:(N.node($.w).rank-J.rank)/2+J.rank,e:$};p.addDummyNode(N,"edge-proxy",re,"_ep")}})}function H(N){let $=0;N.nodes().forEach(X=>{let J=N.node(X);J.borderTop&&(J.minRank=N.node(J.borderTop).rank,J.maxRank=N.node(J.borderBottom).rank,$=Math.max($,J.maxRank))}),N.graph().maxRank=$}function U(N){N.nodes().forEach($=>{let X=N.node($);X.dummy==="edge-proxy"&&(N.edge(X.e).labelRank=X.rank,N.removeNode($))})}function ee(N){let $=Number.POSITIVE_INFINITY,X=0,J=Number.POSITIVE_INFINITY,ne=0,re=N.graph(),se=re.marginx||0,xe=re.marginy||0;function be(ye){let pe=ye.x,_e=ye.y,ze=ye.width,Te=ye.height;$=Math.min($,pe-ze/2),X=Math.max(X,pe+ze/2),J=Math.min(J,_e-Te/2),ne=Math.max(ne,_e+Te/2)}N.nodes().forEach(ye=>be(N.node(ye))),N.edges().forEach(ye=>{let pe=N.edge(ye);Object.hasOwn(pe,"x")&&be(pe)}),$-=se,J-=xe,N.nodes().forEach(ye=>{let pe=N.node(ye);pe.x-=$,pe.y-=J}),N.edges().forEach(ye=>{let pe=N.edge(ye);pe.points.forEach(_e=>{_e.x-=$,_e.y-=J}),Object.hasOwn(pe,"x")&&(pe.x-=$),Object.hasOwn(pe,"y")&&(pe.y-=J)}),re.width=X-$+se,re.height=ne-J+xe}function B(N){N.edges().forEach($=>{let X=N.edge($),J=N.node($.v),ne=N.node($.w),re,se;X.points?(re=X.points[0],se=X.points[X.points.length-1]):(X.points=[],re=ne,se=J),X.points.unshift(p.intersectRect(J,re)),X.points.push(p.intersectRect(ne,se))})}function F(N){N.edges().forEach($=>{let X=N.edge($);if(Object.hasOwn(X,"x"))switch((X.labelpos==="l"||X.labelpos==="r")&&(X.width-=X.labeloffset),X.labelpos){case"l":X.x-=X.width/2+X.labeloffset;break;case"r":X.x+=X.width/2+X.labeloffset;break}})}function z(N){N.edges().forEach($=>{let X=N.edge($);X.reversed&&X.points.reverse()})}function G(N){N.nodes().forEach($=>{if(N.children($).length){let X=N.node($),J=N.node(X.borderTop),ne=N.node(X.borderBottom),re=N.node(X.borderLeft[X.borderLeft.length-1]),se=N.node(X.borderRight[X.borderRight.length-1]);X.width=Math.abs(se.x-re.x),X.height=Math.abs(ne.y-J.y),X.x=re.x+X.width/2,X.y=J.y+X.height/2}}),N.nodes().forEach($=>{N.node($).dummy==="border"&&N.removeNode($)})}function Q(N){N.edges().forEach($=>{if($.v===$.w){var X=N.node($.v);X.selfEdges||(X.selfEdges=[]),X.selfEdges.push({e:$,label:N.edge($)}),N.removeEdge($)}})}function K(N){var $=p.buildLayerMatrix(N);$.forEach(X=>{var J=0;X.forEach((ne,re)=>{var se=N.node(ne);se.order=re+J,(se.selfEdges||[]).forEach(xe=>{p.addDummyNode(N,"selfedge",{width:xe.label.width,height:xe.label.height,rank:se.rank,order:re+ ++J,e:xe.e,label:xe.label},"_se")}),delete se.selfEdges})})}function M(N){N.nodes().forEach($=>{var X=N.node($);if(X.dummy==="selfedge"){var J=N.node(X.e.v),ne=J.x+J.width/2,re=J.y,se=X.x-ne,xe=J.height/2;N.setEdge(X.e,X.label),N.removeNode($),X.label.points=[{x:ne+2*se/3,y:re-xe},{x:ne+5*se/6,y:re-xe},{x:ne+se,y:re},{x:ne+5*se/6,y:re+xe},{x:ne+2*se/3,y:re+xe}],X.label.x=X.x,X.label.y=X.y}})}function I(N,$){return p.mapValues(p.pick(N,$),Number)}function Y(N){var $={};return N&&Object.entries(N).forEach(([X,J])=>{typeof X=="string"&&(X=X.toLowerCase()),$[X]=J}),$}return gp}var xp,s1;function f4(){if(s1)return xp;s1=1;let e=At(),n=Xn().Graph;xp={debugOrdering:r};function r(l){let a=e.buildLayerMatrix(l),o=new n({compound:!0,multigraph:!0}).setGraph({});return l.nodes().forEach(u=>{o.setNode(u,{label:u}),o.setParent(u,"layer"+l.node(u).rank)}),l.edges().forEach(u=>o.setEdge(u.v,u.w,{},u.name)),a.forEach((u,c)=>{let d="layer"+c;o.setNode(d,{rank:"same"}),u.reduce((h,m)=>(o.setEdge(h,m,{style:"invis"}),m))}),o}return xp}var yp,u1;function d4(){return u1||(u1=1,yp="1.1.8"),yp}var vp,c1;function h4(){return c1||(c1=1,vp={graphlib:Xn(),layout:c4(),debug:f4(),util:{time:At().time,notime:At().notime},version:d4()}),vp}var p4=h4();const f1=Qo(p4),Ao=200,ia=56,d1=20,h1=40,m4=20,p1=12;function g4(e,n,r,l,a,o,u,c){const d=[],h=[],m=new Set,p=new Set,x=new Map;for(const S of r)for(const T of S.agents)p.add(T),x.set(T,S.name);for(const S of r){const T=a[S.name],k=S.agents.length,A=Ao+d1*2,q=h1+k*ia+(k-1)*p1+m4;d.push({id:S.name,type:"groupNode",position:{x:0,y:0},data:{label:S.name,type:"parallel_group",status:(T==null?void 0:T.status)||"pending",groupName:S.name,progress:o[S.name]},style:{width:A,height:q}});for(let j=0;j $entryPoint",source:"$start",target:u,type:"animatedEdge",data:{},animated:!1})}const w=new Set(d.map(S=>S.id)),E=new Map;for(const S of d)S.parentId&&E.set(S.id,S.parentId);const _=new Map;for(const S of n){const T=E.get(S.from)??S.from,k=E.get(S.to)??S.to;if(!w.has(T)||!w.has(k)||T===k)continue;const A=`${T}->${k}`,q=_.get(A);if(q){q.when!==S.when&&(h[q.idx].data={when:void 0});continue}const j=h.length;_.set(A,{when:S.when,idx:j});const L=`${A}${S.when?`[${S.when}]`:""}`;h.push({id:L,source:T,target:k,type:"animatedEdge",data:{when:S.when},animated:!1})}return x4(d,h),{nodes:d,edges:h}}function x4(e,n){var l,a,o,u;const r=new f1.graphlib.Graph;r.setDefaultEdgeLabel(()=>({})),r.setGraph({rankdir:"TB",nodesep:50,ranksep:70,marginx:30,marginy:30});for(const c of e){if(c.parentId)continue;const d=c.type==="groupNode",h=d&&((l=c.style)==null?void 0:l.width)||Ao,m=d&&((a=c.style)==null?void 0:a.height)||ia;r.setNode(c.id,{width:h,height:m})}for(const c of n)r.hasNode(c.source)&&r.hasNode(c.target)&&r.setEdge(c.source,c.target);f1.layout(r);for(const c of e){if(c.parentId)continue;const d=r.node(c.id);if(!d)continue;const h=c.type==="groupNode",m=h&&((o=c.style)==null?void 0:o.width)||Ao,p=h&&((u=c.style)==null?void 0:u.height)||ia;c.position={x:d.x-m/2,y:d.y-p/2}}}const Fe={pending:"#6b7280",running:"#3b82f6",completed:"#22c55e",failed:"#ef4444",paused:"#f59e0b",idle:"#6b7280",waiting:"#a855f7"},y4=70,m1=90;function Bc({data:e,children:n}){const[r,l]=V.useState(!1),a=V.useRef(null),o=V.useCallback(()=>{a.current=setTimeout(()=>l(!0),200)},[]),u=V.useCallback(()=>{a.current&&clearTimeout(a.current),l(!1)},[]),c=Fe[e.status]||Fe.pending;return b.jsxs("div",{className:"relative",onMouseEnter:o,onMouseLeave:u,children:[n,r&&b.jsxs("div",{className:He("absolute z-50 bottom-full left-1/2 -translate-x-1/2 mb-2","bg-[var(--surface-raised)] border border-[var(--border)] shadow-lg","rounded-lg px-3 py-2 max-w-[260px] pointer-events-none","animate-[tooltip-in_150ms_ease-out]"),children:[b.jsx("div",{className:"absolute top-full left-1/2 -translate-x-1/2 w-0 h-0 border-x-[6px] border-x-transparent border-t-[6px] border-t-[var(--border)]"}),b.jsxs("div",{className:"flex flex-col gap-1.5 text-[11px]",children:[b.jsxs("div",{className:"flex items-center gap-1.5",children:[b.jsx("span",{className:"w-2 h-2 rounded-full flex-shrink-0",style:{backgroundColor:c}}),b.jsx("span",{className:"font-medium text-[var(--text)] capitalize",children:e.status}),e.iteration!=null&&e.iteration>1&&b.jsxs("span",{className:"text-[var(--text-muted)] ml-auto",children:["iter ",e.iteration]})]}),b.jsx("div",{className:"h-px bg-[var(--border)]"}),b.jsxs("div",{className:"grid grid-cols-[auto_1fr] gap-x-3 gap-y-0.5",children:[e.elapsed!=null&&b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"text-[var(--text-muted)]",children:"Elapsed"}),b.jsx("span",{className:"text-[var(--text)] font-mono",children:Jt(e.elapsed)})]}),e.model&&b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"text-[var(--text-muted)]",children:"Model"}),b.jsx("span",{className:"text-[var(--text)] truncate",children:e.model})]}),e.tokens!=null&&b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"text-[var(--text-muted)]",children:"Tokens"}),b.jsxs("span",{className:"text-[var(--text)] font-mono",children:[Gn(e.tokens),e.inputTokens!=null&&e.outputTokens!=null&&b.jsxs("span",{className:"text-[var(--text-muted)]",children:[" ","(",Gn(e.inputTokens),"↑ ",Gn(e.outputTokens),"↓)"]})]})]}),e.costUsd!=null&&b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"text-[var(--text-muted)]",children:"Cost"}),b.jsx("span",{className:"text-[var(--text)] font-mono",children:yi(e.costUsd)})]}),e.exitCode!=null&&b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"text-[var(--text-muted)]",children:"Exit code"}),b.jsx("span",{className:He("font-mono",e.exitCode===0?"text-[var(--completed)]":"text-[var(--failed)]"),children:e.exitCode})]}),e.selectedOption&&b.jsxs(b.Fragment,{children:[b.jsx("span",{className:"text-[var(--text-muted)]",children:"Selected"}),b.jsx("span",{className:"text-[var(--text)] truncate",children:e.selectedOption})]})]}),e.errorMessage&&b.jsxs(b.Fragment,{children:[b.jsx("div",{className:"h-px bg-[var(--border)]"}),b.jsxs("div",{className:"text-red-400 leading-tight",children:[e.errorType&&b.jsxs("span",{className:"font-medium",children:[e.errorType,": "]}),b.jsxs("span",{className:"break-words",children:[e.errorMessage.slice(0,120),e.errorMessage.length>120?"...":""]})]})]})]})]})]})}const v4=V.memo(function({data:n,id:r,selected:l}){var L;const a=n,o=al(),c=((L=o[r])==null?void 0:L.status)||a.status||"pending",d=Fe[c]||Fe.pending,h=o[r],m=h==null?void 0:h.elapsed,p=h==null?void 0:h.model,x=h==null?void 0:h.tokens,v=h==null?void 0:h.input_tokens,w=h==null?void 0:h.output_tokens,E=h==null?void 0:h.cost_usd,_=h==null?void 0:h.iteration,S=h==null?void 0:h.error_type,T=h==null?void 0:h.error_message,k=h==null?void 0:h.context_pct,A=b4(r,c),q=w4(c),j=(()=>{if(c==="failed"&&T)return{text:T.length>40?T.slice(0,37)+"...":T,className:"text-red-400"};if(c==="running")return{text:A,className:"text-[var(--text-muted)]"};if(c==="completed"){const R=[];return m!=null&&R.push(Jt(m)),x!=null&&R.push(`${Gn(x)} tok`),E!=null&&R.push(yi(E)),{text:R.join(" · ")||null,className:"text-[var(--text-muted)]"}}return{text:null,className:""}})();return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsx(Bc,{data:{status:c,elapsed:m,model:p,tokens:x,inputTokens:v,outputTokens:w,costUsd:E,iteration:_,errorType:S,errorMessage:T},children:b.jsxs("div",{className:He("flex items-center gap-2 px-3 py-1.5 rounded-lg border-2 bg-[var(--node-bg)] min-w-[140px] max-w-[220px] transition-all duration-300",l&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",c==="running"&&"shadow-[0_0_12px_var(--running-glow)]",q),style:{borderColor:d},children:[b.jsx("div",{className:He("flex items-center justify-center w-6 h-6 rounded-md flex-shrink-0",c==="running"&&"animate-pulse"),style:{backgroundColor:`${d}20`},children:b.jsx(aN,{className:"w-3.5 h-3.5",style:{color:d}})}),b.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[b.jsxs("div",{className:"flex items-center gap-1",children:[b.jsx("span",{className:"text-xs font-medium text-[var(--text)] truncate",children:a.label}),_!=null&&_>1&&b.jsxs("span",{className:"flex-shrink-0 inline-flex items-center justify-center px-1.5 py-0.5 rounded-full text-[9px] font-bold leading-none",style:{backgroundColor:`${d}25`,color:d},children:["x",_]})]}),j.text&&b.jsx("span",{className:He("text-[10px] truncate leading-tight",j.className),children:j.text})]}),k!=null&&b.jsx("div",{className:"absolute bottom-0 left-0 right-0 h-[2px] rounded-b-lg overflow-hidden",style:{backgroundColor:"rgba(255,255,255,0.06)"},children:b.jsx("div",{className:He("h-full transition-all duration-500",k>=m1?"animate-[context-pulse_2s_ease-in-out_infinite]":""),style:{width:`${Math.min(k,100)}%`,backgroundColor:k>=m1?"#ef4444":k>=y4?"#f59e0b":"#22c55e"}})})]})}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})});function b4(e,n){var d;const r=(d=al()[e])==null?void 0:d.startedAt,l=fe(h=>h.replayMode),a=fe(h=>h.lastEventTime),[o,u]=V.useState("0.0s"),c=V.useRef(null);return V.useEffect(()=>{if(n==="running"){if(l){c.current&&clearInterval(c.current);const p=r??a??0;u(Jt((a??p)-p));return}const h=r!=null?r*1e3:Date.now(),m=()=>{const p=(Date.now()-h)/1e3;u(Jt(p))};return m(),c.current=setInterval(m,1e3),()=>{c.current&&clearInterval(c.current)}}else c.current&&clearInterval(c.current)},[n,r,l,a]),o}function w4(e){const n=V.useRef(e),[r,l]=V.useState("");return V.useEffect(()=>{const a=n.current;if(n.current=e,a===e)return;e==="running"?l("node-activate"):a==="running"&&(e==="completed"||e==="failed")&&l(e==="completed"?"node-complete":"node-fail");const o=setTimeout(()=>l(""),400);return()=>clearTimeout(o)},[e]),r}const S4=V.memo(function({data:n,id:r,selected:l}){var S;const a=n,o=al(),c=((S=o[r])==null?void 0:S.status)||a.status||"pending",d=Fe[c]||Fe.pending,h=o[r],m=h==null?void 0:h.elapsed,p=h==null?void 0:h.exit_code,x=h==null?void 0:h.error_type,v=h==null?void 0:h.error_message,w=_4(r,c),E=k4(c),_=(()=>{if(c==="failed"&&v)return{text:v.length>40?v.slice(0,37)+"...":v,className:"text-red-400"};if(c==="running")return{text:w,className:"text-[var(--text-muted)]"};if(c==="completed"){const T=[];return m!=null&&T.push(Jt(m)),p!=null&&T.push(`exit ${p}`),{text:T.join(" · ")||null,className:"text-[var(--text-muted)]"}}return{text:null,className:""}})();return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsx(Bc,{data:{status:c,elapsed:m,exitCode:p,errorType:x,errorMessage:v},children:b.jsxs("div",{className:He("flex items-center gap-2 px-3 py-1.5 rounded-lg border-2 bg-[var(--node-bg)] min-w-[140px] max-w-[220px] transition-all duration-300",l&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",c==="running"&&"shadow-[0_0_12px_var(--running-glow)]",E),style:{borderColor:d},children:[b.jsx("div",{className:He("flex items-center justify-center w-6 h-6 rounded-md flex-shrink-0",c==="running"&&"animate-pulse"),style:{backgroundColor:`${d}20`},children:b.jsx(bN,{className:"w-3.5 h-3.5",style:{color:d}})}),b.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[b.jsx("span",{className:"text-xs font-medium text-[var(--text)] truncate",children:a.label}),_.text&&b.jsx("span",{className:He("text-[10px] truncate leading-tight",_.className),children:_.text})]})]})}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})});function _4(e,n){var d;const r=(d=al()[e])==null?void 0:d.startedAt,l=fe(h=>h.replayMode),a=fe(h=>h.lastEventTime),[o,u]=V.useState("0.0s"),c=V.useRef(null);return V.useEffect(()=>{if(n==="running"){if(l){c.current&&clearInterval(c.current);const p=r??a??0;u(Jt((a??p)-p));return}const h=r!=null?r*1e3:Date.now(),m=()=>{const p=(Date.now()-h)/1e3;u(Jt(p))};return m(),c.current=setInterval(m,1e3),()=>{c.current&&clearInterval(c.current)}}else c.current&&clearInterval(c.current)},[n,r,l,a]),o}function k4(e){const n=V.useRef(e),[r,l]=V.useState("");return V.useEffect(()=>{const a=n.current;if(n.current=e,a===e)return;e==="running"?l("node-activate"):a==="running"&&(e==="completed"||e==="failed")&&l(e==="completed"?"node-complete":"node-fail");const o=setTimeout(()=>l(""),400);return()=>clearTimeout(o)},[e]),r}const E4=V.memo(function({data:n,id:r,selected:l}){var p,x;const a=n,o=al(),c=((p=o[r])==null?void 0:p.status)||a.status||"pending",d=Fe[c]||Fe.pending,h=(x=o[r])==null?void 0:x.selected_option,m=N4(c);return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsx(Bc,{data:{status:c,selectedOption:h},children:b.jsxs("div",{className:He("flex items-center gap-2 px-3 py-1.5 rounded-lg border-2 border-dashed bg-[var(--node-bg)] min-w-[140px] max-w-[220px] transition-all duration-300",l&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",c==="waiting"&&"shadow-[0_0_12px_var(--waiting-muted)]",c==="running"&&"shadow-[0_0_12px_var(--running-glow)]",m),style:{borderColor:d},children:[b.jsx("div",{className:He("flex items-center justify-center w-6 h-6 rounded-md flex-shrink-0",c==="waiting"&&"animate-pulse"),style:{backgroundColor:`${d}20`},children:b.jsx(vN,{className:"w-3.5 h-3.5",style:{color:d}})}),b.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[b.jsx("span",{className:"text-xs font-medium text-[var(--text)] truncate",children:a.label}),c==="waiting"&&b.jsx("span",{className:"text-[10px] text-[var(--waiting)] truncate leading-tight",children:"Awaiting input..."}),c==="completed"&&h&&b.jsx("span",{className:"text-[10px] text-[var(--text-muted)] truncate leading-tight",children:h})]})]})}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})});function N4(e){const n=V.useRef(e),[r,l]=V.useState("");return V.useEffect(()=>{const a=n.current;if(n.current=e,a===e)return;e==="running"||e==="waiting"?l("node-activate"):(a==="running"||a==="waiting")&&e==="completed"&&l("node-complete");const o=setTimeout(()=>l(""),400);return()=>clearTimeout(o)},[e]),r}const C4=V.memo(function({data:n,id:r,selected:l}){var _;const a=n,u=a.type==="for_each_group"?xN:pN,c=a.progress,m=((_=al()[r])==null?void 0:_.status)||a.status||"pending",p=Fe[m]||Fe.pending,x=T4(m),v=c?`${c.completed+c.failed}/${c.total}${c.failed>0?` (${c.failed} failed)`:""}`:null,w=c&&c.total>0?(c.completed+c.failed)/c.total*100:0,E=c!=null&&c.failed>0;return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsxs("div",{className:He("flex flex-col gap-1 px-4 py-3 rounded-xl border-2 border-dashed bg-[var(--surface)]/80 min-w-[180px] transition-all duration-300",l&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",m==="running"&&"shadow-[0_0_16px_var(--running-glow)]",x),style:{borderColor:p,minHeight:"100%"},children:[b.jsxs("div",{className:"flex items-center gap-2",children:[b.jsx(u,{className:"w-3.5 h-3.5",style:{color:p}}),b.jsx("span",{className:"text-xs font-medium text-[var(--text-secondary)]",children:a.label})]}),v&&b.jsx("span",{className:"text-[10px] text-[var(--text-muted)] font-mono",children:v}),c&&c.total>0&&m==="running"&&b.jsx("div",{className:"w-full h-1 rounded-full bg-[var(--border)] overflow-hidden mt-0.5",children:b.jsx("div",{className:"h-full rounded-full transition-all duration-500 ease-out",style:{width:`${w}%`,backgroundColor:E?"var(--failed)":"var(--completed)"}})})]}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})});function T4(e){const n=V.useRef(e),[r,l]=V.useState("");return V.useEffect(()=>{const a=n.current;if(n.current=e,a===e)return;e==="running"?l("node-activate"):a==="running"&&(e==="completed"||e==="failed")&&l(e==="completed"?"node-complete":"node-fail");const o=setTimeout(()=>l(""),400);return()=>clearTimeout(o)},[e]),r}const A4=V.memo(function({data:n,id:r,selected:l}){const a=n,u=fe(_=>{var S;return(S=_.nodes[r])==null?void 0:S.status})||a.status||"pending",c=Fe[u]||Fe.pending,d=fe(_=>{var S;return(S=_.nodes[r])==null?void 0:S.elapsed}),h=fe(_=>{var S;return(S=_.nodes[r])==null?void 0:S.error_message}),m=fe(_=>_.navigateIntoSubworkflow),p=Bm(),x=p.some(_=>_.parentAgent===r),v=p.find(_=>_.parentAgent===r),w=v==null?void 0:v.workflowName,E=(()=>{if(u==="failed"&&h)return{text:h.length>35?h.slice(0,32)+"...":h,className:"text-red-400"};if(u==="running")return{text:w||"Running subworkflow…",className:"text-[var(--text-muted)]"};if(u==="completed"){const _=[];return w&&_.push(w),d!=null&&_.push(`${d.toFixed(1)}s`),{text:_.join(" · ")||"Done",className:"text-[var(--text-muted)]"}}return{text:w||null,className:"text-[var(--text-muted)]"}})();return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsx(Bc,{data:{status:u,elapsed:d,errorType:void 0,errorMessage:h,iteration:void 0},children:b.jsxs("div",{className:He("flex items-center gap-2 px-3 py-1.5 rounded-lg border-2 bg-[var(--node-bg)] min-w-[140px] max-w-[240px] transition-all duration-300 cursor-pointer",l&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",u==="running"&&"shadow-[0_0_12px_var(--running-glow)]"),style:{borderColor:c,borderStyle:"dashed"},onDoubleClick:_=>{x&&(_.stopPropagation(),m(r))},children:[b.jsx("div",{className:He("flex items-center justify-center w-6 h-6 rounded-md flex-shrink-0",u==="running"&&"animate-pulse"),style:{backgroundColor:`${c}20`},children:b.jsx(Sc,{className:"w-3.5 h-3.5",style:{color:c}})}),b.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[b.jsx("div",{className:"flex items-center gap-1",children:b.jsx("span",{className:"text-xs font-medium text-[var(--text)] truncate",children:a.label})}),E.text&&b.jsx("span",{className:He("text-[10px] truncate leading-tight",E.className),children:E.text})]}),x&&b.jsx(Rr,{className:"w-3.5 h-3.5 flex-shrink-0 text-[var(--text-muted)]"})]})}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})}),j4=V.memo(function({data:n,selected:r}){const a=n.status||"pending",o=a==="completed",u=a==="failed",c=!o&&!u,d=o?Fe.completed:u?Fe.failed:Fe.pending;return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsx("div",{className:He("flex items-center justify-center w-11 h-11 rounded-full border-2 transition-all duration-300",o?"bg-[var(--completed)] shadow-[0_0_16px_var(--completed-muted)]":u?"bg-[var(--failed)] shadow-[0_0_16px_var(--failed-muted)]":"bg-[var(--node-bg)]",r&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]"),style:{borderColor:d},children:o?b.jsx(Yi,{className:"w-5 h-5 text-white",strokeWidth:3}):u?b.jsx(yw,{className:"w-3.5 h-3.5 text-white",fill:"white"}):b.jsx(Yi,{className:"w-5 h-5",strokeWidth:2.5,style:{color:c?Fe.pending:d}})})]})}),z4=V.memo(function({data:n,selected:r}){const a=n.status||"pending",o=Fe[a]||Fe.pending,u=a==="running"||a==="completed";return b.jsxs(b.Fragment,{children:[b.jsx("div",{className:He("flex items-center justify-center w-11 h-11 rounded-full border-2 transition-all duration-300",u?"bg-[var(--completed)]":"bg-[var(--node-bg)]",r&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",u&&"shadow-[0_0_12px_var(--completed-muted)]"),style:{borderColor:o},children:b.jsx(mm,{className:"w-4 h-4 ml-0.5",style:{color:u?"white":o}})}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})}),g1="#a78bfa",M4=V.memo(function({data:n,selected:r}){const l=n,a=l.status||"pending",o=a==="running"||a==="completed",u=o?g1:Fe[a]||g1,c=l.parentAgent,d=fe(h=>h.navigateUp);return b.jsxs(b.Fragment,{children:[b.jsxs("div",{className:"flex flex-col items-center gap-1",children:[b.jsx("div",{className:He("flex items-center justify-center w-11 h-11 rounded-full border-2 border-dashed transition-all duration-300 cursor-pointer",o?"bg-[#a78bfa]":"bg-[var(--node-bg)]",r&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]",o&&"shadow-[0_0_12px_rgba(167,139,250,0.4)]"),style:{borderColor:u},onDoubleClick:h=>{h.stopPropagation(),d()},children:b.jsx(iN,{className:"w-4 h-4",style:{color:o?"white":u}})}),c&&b.jsxs("span",{className:"text-[10px] text-[var(--text-muted)] whitespace-nowrap",children:["from ",b.jsx("span",{className:"font-medium text-[var(--text)]",children:c})]})]}),b.jsx(Lt,{type:"source",position:ve.Bottom,className:"!bg-[var(--border)] !border-none !w-2 !h-2"})]})}),x1="#a78bfa",D4=V.memo(function({data:n,selected:r}){const l=n,a=l.status||"pending",o=a==="completed",u=a==="failed",c=o?x1:u?Fe.failed:x1,d=l.parentAgent,h=fe(m=>m.navigateUp);return b.jsxs(b.Fragment,{children:[b.jsx(Lt,{type:"target",position:ve.Top,className:"!bg-[var(--border)] !border-none !w-2 !h-2"}),b.jsxs("div",{className:"flex flex-col items-center gap-1",children:[b.jsx("div",{className:He("flex items-center justify-center w-11 h-11 rounded-full border-2 border-dashed transition-all duration-300 cursor-pointer",o?"bg-[#a78bfa] shadow-[0_0_12px_rgba(167,139,250,0.4)]":u?"bg-[var(--failed)] shadow-[0_0_16px_var(--failed-muted)]":"bg-[var(--node-bg)]",r&&"ring-2 ring-[var(--accent)] ring-offset-1 ring-offset-[var(--bg)]"),style:{borderColor:c},onDoubleClick:m=>{m.stopPropagation(),h()},children:b.jsx(lN,{className:"w-4 h-4",style:{color:o||u?"white":c}})}),d&&b.jsxs("span",{className:"text-[10px] text-[var(--text-muted)] whitespace-nowrap",children:["return to ",b.jsx("span",{className:"font-medium text-[var(--text)]",children:d})]})]})]})}),R4=V.memo(function({id:n,sourceX:r,sourceY:l,targetX:a,targetY:o,sourcePosition:u,targetPosition:c,source:d,target:h,data:m}){const p=E5(),x=V.useMemo(()=>p.find(P=>P.from===d&&P.to===h),[p,d,h]),[v,w,E]=zm({sourceX:r,sourceY:l,targetX:a,targetY:o,sourcePosition:u,targetPosition:c}),_=m==null?void 0:m.when,S=!!_,T=(x==null?void 0:x.state)==="taken",k=(x==null?void 0:x.state)==="highlighted",A=(x==null?void 0:x.state)==="failed";let q="var(--edge-color)",j=2,L;A?(q="var(--failed)",j=3):T?(q="var(--edge-taken)",j=3):k&&(q="var(--edge-active)",j=3),S&&!T&&!k&&!A&&(L="6 3");const R=A?"failed":T?"taken":k?"active":"default";return b.jsxs(b.Fragment,{children:[b.jsx(rs,{id:n,path:v,style:{stroke:q,strokeWidth:j,strokeDasharray:L,transition:"stroke 0.3s ease, stroke-width 0.3s ease"},markerEnd:`url(#arrow-${R})`}),S&&b.jsx(YM,{children:b.jsx("div",{className:"nodrag nopan",style:{position:"absolute",transform:`translate(-50%, -50%) translate(${w}px,${E}px)`,pointerEvents:"all"},children:b.jsx("span",{className:"inline-block px-1.5 py-0.5 rounded-full text-[9px] font-mono leading-tight max-w-[140px] truncate",style:{backgroundColor:A?"var(--failed)":T?"var(--edge-taken)":"var(--surface)",color:A||T?"var(--bg)":"var(--text-muted)",border:`1px solid ${A?"var(--failed)":T?"var(--edge-taken)":"var(--border)"}`},title:_,children:_})})}),T&&b.jsx("circle",{r:"3",fill:"var(--edge-taken)",children:b.jsx("animateMotion",{dur:"1s",repeatCount:"indefinite",path:v})}),A&&b.jsx("circle",{r:"3",fill:"var(--failed)",opacity:"0.8",children:b.jsx("animateMotion",{dur:"1.5s",repeatCount:"indefinite",path:v})})]})});function O4(){const e=fe(u=>u.workflowStatus),n=fe(u=>u.workflowFailure),r=fe(u=>u.workflowFailedAgent),l=fe(u=>u.selectNode);if(e!=="failed"||!n)return null;const a=n.message||n.error_type||"Unknown error",o=n.error_type==="TimeoutError";return b.jsx("div",{className:"absolute top-3 left-1/2 -translate-x-1/2 z-20 animate-[banner-in_200ms_ease-out]",children:b.jsxs("div",{className:He("flex items-center gap-2 px-4 py-2 rounded-lg","bg-red-950/90 border border-red-500/40 shadow-lg shadow-red-500/10","backdrop-blur-sm max-w-[560px]"),children:[b.jsx(wN,{className:"w-4 h-4 text-red-400 flex-shrink-0"}),b.jsxs("div",{className:"flex flex-col min-w-0",children:[b.jsx("span",{className:"text-xs font-medium text-red-300",children:"Workflow Failed"}),b.jsx("span",{className:"text-[11px] text-red-400/80 truncate",children:a}),o&&n.current_agent&&b.jsxs("span",{className:"text-[10px] text-red-400/60 truncate",children:["Timed out on agent: ",n.current_agent]}),n.checkpoint_path&&b.jsxs("span",{className:"text-[10px] text-red-400/50 truncate",title:n.checkpoint_path,children:["Checkpoint: ",n.checkpoint_path.split("/").pop()]})]}),r&&b.jsxs("button",{onClick:()=>l(r),className:"flex items-center gap-1 px-2 py-1 rounded text-[10px] font-medium text-red-300 bg-red-500/20 hover:bg-red-500/30 transition-colors flex-shrink-0 ml-1",children:[b.jsx(fN,{className:"w-3 h-3"}),"View"]})]})})}function L4(){const[e,n]=V.useState(!1),r=fe(d=>d.workflowStatus),l=fe(d=>d.totalCost),a=fe(d=>d.totalTokens),o=fe(d=>d.agentsCompleted),u=fe(d=>d.agentsTotal),c=bw();return r!=="completed"||e?null:b.jsx("div",{className:"absolute top-3 left-1/2 -translate-x-1/2 z-20 animate-[banner-in_200ms_ease-out]",children:b.jsxs("div",{className:He("flex items-center gap-3 px-4 py-2 rounded-lg","bg-green-950/90 border border-green-500/40 shadow-lg shadow-green-500/10","backdrop-blur-sm"),children:[b.jsx(sN,{className:"w-4 h-4 text-green-400 flex-shrink-0"}),b.jsx("span",{className:"text-xs font-medium text-green-300",children:"Completed"}),b.jsxs("div",{className:"flex items-center gap-3 text-[11px] text-green-400/80 font-mono",children:[b.jsx("span",{children:c}),u>0&&b.jsxs("span",{children:[o,"/",u," agents"]}),a>0&&b.jsxs("span",{children:[Gn(a)," tok"]}),l>0&&b.jsx("span",{children:yi(l)})]}),b.jsx("button",{onClick:()=>n(!0),className:"p-0.5 rounded text-green-500/60 hover:text-green-300 transition-colors flex-shrink-0 ml-1",children:b.jsx(xa,{className:"w-3.5 h-3.5"})})]})})}const H4={agentNode:v4,scriptNode:S4,gateNode:E4,groupNode:C4,workflowNode:A4,endNode:j4,startNode:z4,ingressNode:M4,egressNode:D4},B4={animatedEdge:R4},I4={type:"animatedEdge"};function q4(){return b.jsx("svg",{style:{position:"absolute",width:0,height:0},children:b.jsxs("defs",{children:[b.jsx("marker",{id:"arrow-default",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"8",markerHeight:"8",orient:"auto-start-reverse",children:b.jsx("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"var(--edge-color)"})}),b.jsx("marker",{id:"arrow-active",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"8",markerHeight:"8",orient:"auto-start-reverse",children:b.jsx("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"var(--edge-active)"})}),b.jsx("marker",{id:"arrow-taken",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"8",markerHeight:"8",orient:"auto-start-reverse",children:b.jsx("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"var(--edge-taken)"})}),b.jsx("marker",{id:"arrow-failed",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"8",markerHeight:"8",orient:"auto-start-reverse",children:b.jsx("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"var(--failed)"})})]})})}function U4(){const e=N5(),n=fe(z=>z.viewContextPath),r=fe(z=>z.selectNode),l=fe(z=>z.selectedNode),a=fe(z=>z.workflowStatus),o=fe(z=>z.wsStatus),u=fe(z=>z.workflowFailedAgent),c=fe(z=>z.navigateIntoSubworkflow),{agents:d,routes:h,parallelGroups:m,forEachGroups:p,nodes:x,groupProgress:v,entryPoint:w,subworkflowContexts:E,parentAgent:_}=e,[S,T,k]=XM([]),[A,q,j]=QM([]),L=V.useRef(!1),R=V.useRef(""),P=JSON.stringify(n);V.useEffect(()=>{if(d.length===0){R.current!==P&&(L.current=!1,R.current=P,T([]),q([]));return}if(R.current!==P&&(L.current=!1,R.current=P),L.current)return;L.current=!0;const{nodes:z,edges:G}=g4(d,h,m,p,x,v,w,_);T(z),q(G)},[d,h,m,p,x,v,w,T,q,P,_]),V.useEffect(()=>{L.current&&T(z=>z.map(G=>{const Q=x[G.id];if(!Q)return G;const K=Q.status||"pending",M=G.data.status;if(K!==M){const I={...G.data,status:K};return G.data.groupName&&v[G.data.groupName]&&(I.progress=v[G.data.groupName]),{...G,data:I}}if(G.data.groupName&&v[G.data.groupName]){const I=G.data.progress,Y=v[G.data.groupName];if(Y&&(!I||I.completed!==Y.completed||I.failed!==Y.failed))return{...G,data:{...G.data,progress:Y}}}return G}))},[x,v,T]);const O=V.useCallback((z,G)=>{G.type==="groupNode"&&G.data.type!=="for_each_group"||r(G.id)},[r]),H=V.useCallback((z,G)=>{E.some(K=>K.parentAgent===G.id)&&c(G.id)},[E,c]),U=V.useCallback(()=>{r(null)},[r]),ee=V.useCallback(z=>{var Q;const G=((Q=z.data)==null?void 0:Q.status)||"pending";return Fe[G]??Fe.pending??"#6b7280"},[]);V.useEffect(()=>{T(z=>z.map(G=>({...G,selected:G.id===l})))},[l,T]),V.useEffect(()=>{a==="failed"&&u&&r(u)},[a,u,r]);const B=a==="pending"&&d.length===0,F=(()=>{switch(o){case"connecting":return"Connecting to workflow…";case"reconnecting":return"Reconnecting…";case"disconnected":return"Connection lost. Retrying…";default:return"Waiting for workflow…"}})();return b.jsxs("div",{className:"w-full h-full relative",children:[b.jsx(q4,{}),b.jsx(O4,{}),b.jsx(L4,{}),B&&b.jsxs("div",{className:"absolute inset-0 z-10 flex flex-col items-center justify-center pointer-events-none",children:[b.jsxs("div",{className:"relative mb-3",children:[b.jsx(kN,{className:"w-8 h-8 text-[var(--accent)] opacity-20"}),b.jsx(Oo,{className:"w-8 h-8 text-[var(--text-muted)] animate-spin absolute inset-0 opacity-40"})]}),b.jsx("p",{className:"text-sm text-[var(--text-muted)] animate-pulse",children:F})]}),b.jsxs(GM,{nodes:S,edges:A,onNodesChange:k,onEdgesChange:j,onNodeClick:O,onNodeDoubleClick:H,onPaneClick:U,nodeTypes:H4,edgeTypes:B4,defaultEdgeOptions:I4,fitView:!0,fitViewOptions:{padding:.2},minZoom:.2,maxZoom:2,proOptions:{hideAttribution:!0},nodesDraggable:!0,nodesConnectable:!1,elementsSelectable:!0,children:[b.jsx(e5,{variant:Mr.Dots,gap:20,size:1,color:"var(--border-subtle)"}),b.jsx(b5,{nodeColor:ee,maskColor:"var(--minimap-mask)",style:{background:"var(--minimap-bg)"},pannable:!0,zoomable:!0}),b.jsx(o5,{showInteractive:!1,children:b.jsx(P4,{})}),b.jsx(V4,{}),b.jsx($4,{viewPathKey:P}),b.jsx(G4,{})]})]})}function P4(){const{fitView:e}=ll(),n=V.useCallback(()=>{e({padding:.2,duration:300})},[e]);return b.jsx("button",{onClick:n,className:"react-flow__controls-button",title:"Fit view (F)",style:{display:"flex",alignItems:"center",justifyContent:"center"},children:b.jsx(mN,{className:"w-3.5 h-3.5"})})}function V4(){const{fitView:e}=ll();return V.useEffect(()=>{const n=r=>{var a;const l=(a=r.target)==null?void 0:a.tagName;l==="INPUT"||l==="TEXTAREA"||l==="SELECT"||r.key==="f"&&!r.ctrlKey&&!r.metaKey&&!r.altKey&&e({padding:.2,duration:300})};return window.addEventListener("keydown",n),()=>window.removeEventListener("keydown",n)},[e]),null}function $4({viewPathKey:e}){const{fitView:n}=ll(),r=V.useRef(e);return V.useEffect(()=>{r.current!==e&&(r.current=e,setTimeout(()=>n({padding:.2,duration:300}),50))},[e,n]),null}function G4(){const e=j5();return e?b.jsx("div",{className:"absolute top-3 left-1/2 -translate-x-1/2 z-20 animate-[banner-in_200ms_ease-out]",children:b.jsxs("div",{className:"flex items-center gap-2 px-4 py-2 rounded-lg bg-amber-950/90 border border-amber-500/40 shadow-lg shadow-amber-500/10 backdrop-blur-sm max-w-[560px]",children:[b.jsx("span",{className:"text-xs text-amber-300",children:"⚠"}),b.jsx("span",{className:"text-[11px] text-amber-400/80",children:e.message}),b.jsx("a",{href:window.location.pathname,className:"px-2 py-0.5 rounded text-[10px] font-medium text-amber-300 bg-amber-500/20 hover:bg-amber-500/30 transition-colors flex-shrink-0 ml-1",children:"Root"})]})}):null}function ol({items:e}){const n=e.filter(r=>r.value!=null&&r.value!=="");return n.length===0?null:b.jsx("dl",{className:"grid grid-cols-[auto_1fr] gap-x-3 gap-y-1.5 text-xs",children:n.map(({label:r,value:l})=>b.jsxs("div",{className:"contents",children:[b.jsx("dt",{className:"text-[var(--text-muted)] whitespace-nowrap",children:r}),b.jsx("dd",{className:"text-[var(--text)] break-words",children:typeof l=="object"?JSON.stringify(l):String(l)})]},r))})}function j_(e){const n=[];return e.elapsed!=null&&n.push({label:"Elapsed",value:Jt(e.elapsed)}),e.model&&n.push({label:"Model",value:e.model}),e.tokens!=null&&n.push({label:"Tokens",value:Gn(e.tokens)}),e.input_tokens!=null&&e.output_tokens!=null&&n.push({label:"In / Out",value:`${Gn(e.input_tokens)} / ${Gn(e.output_tokens)}`}),e.cost_usd!=null&&n.push({label:"Cost",value:yi(e.cost_usd)}),e.context_window_used!=null&&e.context_window_max!=null&&n.push({label:"Context",value:LN(e.context_window_used,e.context_window_max)}),e.iteration!=null&&n.push({label:"Iteration",value:e.iteration}),e.error_type&&n.push({label:"Error",value:e.error_type}),e.error_message&&n.push({label:"Message",value:e.error_message}),n}function nl({output:e,title:n="Output",defaultExpanded:r=!0,maxHeight:l="300px"}){const[a,o]=V.useState(r),[u,c]=V.useState(!1),d=vw(e);if(!d)return null;const h=typeof e=="object"&&e!==null,m=async()=>{await navigator.clipboard.writeText(d),c(!0),setTimeout(()=>c(!1),2e3)};return b.jsxs("div",{className:"space-y-1.5",children:[b.jsxs("div",{className:"flex items-center justify-between",children:[b.jsxs("button",{onClick:()=>o(!a),className:"flex items-center gap-1 text-[10px] uppercase tracking-wider text-[var(--text-muted)] hover:text-[var(--text)] transition-colors font-semibold",children:[a?b.jsx(il,{className:"w-3 h-3"}):b.jsx(Rr,{className:"w-3 h-3"}),n]}),a&&b.jsx("button",{onClick:m,className:"flex items-center gap-1 text-[10px] text-[var(--text-muted)] hover:text-[var(--text)] transition-colors",title:"Copy to clipboard",children:u?b.jsx(Yi,{className:"w-3 h-3 text-[var(--completed)]"}):b.jsx(mw,{className:"w-3 h-3"})})]}),a&&b.jsx("pre",{className:"bg-[var(--bg)] border border-[var(--border)] rounded-md p-3 font-mono text-[11px] leading-relaxed text-[var(--text)] overflow-auto whitespace-pre-wrap break-words",style:{maxHeight:l},children:h?b.jsx(F4,{text:d}):d})]})}function F4({text:e}){const n=e.split(/("(?:[^"\\]|\\.)*")/g);return b.jsx(b.Fragment,{children:n.map((r,l)=>{if(l%2===1){const o=n.slice(l+1).join(""),u=/^\s*:/.test(o);return b.jsx("span",{className:u?"text-blue-400":"text-green-400",children:r},l)}const a=r.replace(/\b(true|false|null)\b|(-?\d+\.?\d*(?:e[+-]?\d+)?)/gi,(o,u,c)=>u?`${o}`:c?`${o}`:o);return b.jsx("span",{dangerouslySetInnerHTML:{__html:a}},l)})})}function qm({activity:e,defaultExpanded:n=!0}){const[r,l]=V.useState(n),a=V.useRef(null);return V.useEffect(()=>{a.current&&r&&(a.current.scrollTop=a.current.scrollHeight)},[e.length,r]),e.length===0?null:b.jsxs("div",{className:"space-y-1.5",children:[b.jsxs("button",{onClick:()=>l(!r),className:"flex items-center gap-1 text-[10px] uppercase tracking-wider text-[var(--text-muted)] hover:text-[var(--text)] transition-colors font-semibold",children:[r?b.jsx(il,{className:"w-3 h-3"}):b.jsx(Rr,{className:"w-3 h-3"}),"Activity (",e.length,")"]}),r&&b.jsx("div",{ref:a,className:"max-h-[400px] overflow-y-auto space-y-0.5",children:e.map((o,u)=>b.jsx(Y4,{entry:o},u))})]})}function Y4({entry:e}){const n={reasoning:"text-indigo-400/70","tool-start":"text-blue-400","tool-complete":"text-green-400",turn:"text-amber-400",message:"text-[var(--text)]"};return b.jsxs("div",{className:He("py-1.5 px-2 rounded text-[11px] leading-relaxed border-b border-[var(--border-subtle)] last:border-b-0"),children:[b.jsxs("div",{className:"flex items-start gap-1.5",children:[b.jsx("span",{className:"w-4 text-center flex-shrink-0",children:e.icon}),b.jsx("span",{className:"text-[var(--text-muted)] uppercase text-[9px] font-semibold tracking-wider w-12 flex-shrink-0 pt-px",children:e.label}),b.jsx("span",{className:He("break-words",n[e.type]||"text-[var(--text)]"),children:typeof e.text=="object"?JSON.stringify(e.text):e.text})]}),e.detail&&b.jsx("div",{className:"mt-1 ml-[4.25rem] px-2 py-1 bg-[var(--bg)] rounded text-[10px] font-mono text-[var(--text-muted)] whitespace-pre-wrap break-words max-h-24 overflow-y-auto",children:typeof e.detail=="object"?JSON.stringify(e.detail,null,2):e.detail})]})}function y1({node:e}){const n=e.status,r=Fe[n]||Fe.pending,l=e.iterationHistory&&e.iterationHistory.length>0;return b.jsxs("div",{className:"space-y-4",children:[b.jsxs("div",{className:"flex items-center gap-2",children:[b.jsx("span",{className:"inline-flex items-center px-2 py-0.5 rounded text-[10px] font-bold uppercase tracking-wider",style:{backgroundColor:`${r}20`,color:r},children:n}),b.jsx("span",{className:"text-xs text-[var(--text-muted)]",children:"Agent"})]}),l?b.jsx(v1,{label:`Iteration ${e.iteration??"?"} (current)`,defaultExpanded:!0,status:n,snapshot:{iteration:e.iteration??0,prompt:e.prompt,output:e.output,elapsed:e.elapsed,model:e.model,tokens:e.tokens,input_tokens:e.input_tokens,output_tokens:e.output_tokens,cost_usd:e.cost_usd,activity:e.activity,error_type:e.error_type,error_message:e.error_message}}):b.jsxs(b.Fragment,{children:[b.jsx(ol,{items:j_(e)}),e.prompt&&b.jsx(nl,{output:e.prompt,title:"Input / Prompt",defaultExpanded:!0}),b.jsx(qm,{activity:e.activity,defaultExpanded:n!=="completed"}),e.output!=null&&b.jsx(nl,{output:e.output,title:"Output"})]}),l&&[...e.iterationHistory].reverse().map(a=>b.jsx(v1,{label:`Iteration ${a.iteration}`,defaultExpanded:!1,status:n,snapshot:a},a.iteration))]})}function v1({label:e,defaultExpanded:n,snapshot:r,status:l}){const[a,o]=V.useState(n);return b.jsxs("div",{className:"border border-[var(--border)] rounded-lg overflow-hidden",children:[b.jsxs("button",{onClick:()=>o(!a),className:"flex items-center gap-2 w-full px-3 py-2 bg-[var(--bg)] hover:bg-[var(--node-bg)] transition-colors text-left",children:[a?b.jsx(il,{className:"w-3.5 h-3.5 text-[var(--text-muted)] flex-shrink-0"}):b.jsx(Rr,{className:"w-3.5 h-3.5 text-[var(--text-muted)] flex-shrink-0"}),b.jsx("span",{className:"text-xs font-semibold text-[var(--text)]",children:e}),r.elapsed!=null&&b.jsx("span",{className:"text-[10px] text-[var(--text-muted)] ml-auto",children:X4(r.elapsed)})]}),a&&b.jsxs("div",{className:"px-3 py-3 space-y-3 border-t border-[var(--border)]",children:[b.jsx(ol,{items:j_(r)}),r.prompt&&b.jsx(nl,{output:r.prompt,title:"Input / Prompt",defaultExpanded:!1}),b.jsx(qm,{activity:r.activity,defaultExpanded:n&&l!=="completed"}),r.output!=null&&b.jsx(nl,{output:r.output,title:"Output",defaultExpanded:!0}),r.error_type&&b.jsxs("div",{className:"text-xs text-red-400",children:[b.jsx("span",{className:"font-semibold",children:r.error_type}),r.error_message&&b.jsxs("span",{className:"ml-1",children:["— ",r.error_message]})]})]})]})}function X4(e){if(e<1)return`${(e*1e3).toFixed(0)}ms`;if(e<60)return`${e.toFixed(1)}s`;const n=Math.floor(e/60),r=(e%60).toFixed(0);return`${n}m ${r}s`}function Q4({node:e}){const n=e.status,r=Fe[n]||Fe.pending,l=[];e.elapsed!=null&&l.push({label:"Elapsed",value:Jt(e.elapsed)}),e.exit_code!=null&&l.push({label:"Exit Code",value:e.exit_code}),e.error_type&&l.push({label:"Error",value:e.error_type}),e.error_message&&l.push({label:"Message",value:e.error_message});let a="";return e.stdout&&(a+=e.stdout),e.stderr&&(a+=(a?` --- stderr --- -`:"")+e.stderr),b.jsxs("div",{className:"space-y-4",children:[b.jsxs("div",{className:"flex items-center gap-2",children:[b.jsx("span",{className:"inline-flex items-center px-2 py-0.5 rounded text-[10px] font-bold uppercase tracking-wider",style:{backgroundColor:`${r}20`,color:r},children:n}),b.jsx("span",{className:"text-xs text-[var(--text-muted)]",children:"Script"})]}),b.jsx(ol,{items:l}),a&&b.jsx(nl,{output:a,title:"Output"})]})}function Z4(e,n){const r={};return(e[e.length-1]===""?[...e,""]:e).join((r.padRight?" ":"")+","+(r.padLeft===!1?"":" ")).trim()}const K4=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,J4=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,W4={};function v1(e,n){return(W4.jsx?J4:K4).test(e)}const eD=/[ \t\n\f\r]/g;function tD(e){return typeof e=="object"?e.type==="text"?b1(e.value):!1:b1(e)}function b1(e){return e.replace(eD,"")===""}class ls{constructor(n,r,l){this.normal=r,this.property=n,l&&(this.space=l)}}ls.prototype.normal={};ls.prototype.property={};ls.prototype.space=void 0;function z_(e,n){const r={},l={};for(const a of e)Object.assign(r,a.property),Object.assign(l,a.normal);return new ls(r,l,n)}function nm(e){return e.toLowerCase()}class cn{constructor(n,r){this.attribute=r,this.property=n}}cn.prototype.attribute="";cn.prototype.booleanish=!1;cn.prototype.boolean=!1;cn.prototype.commaOrSpaceSeparated=!1;cn.prototype.commaSeparated=!1;cn.prototype.defined=!1;cn.prototype.mustUseProperty=!1;cn.prototype.number=!1;cn.prototype.overloadedBoolean=!1;cn.prototype.property="";cn.prototype.spaceSeparated=!1;cn.prototype.space=void 0;let nD=0;const De=sl(),Tt=sl(),rm=sl(),me=sl(),st=sl(),sa=sl(),vn=sl();function sl(){return 2**++nD}const im=Object.freeze(Object.defineProperty({__proto__:null,boolean:De,booleanish:Tt,commaOrSpaceSeparated:vn,commaSeparated:sa,number:me,overloadedBoolean:rm,spaceSeparated:st},Symbol.toStringTag,{value:"Module"})),vp=Object.keys(im);class qm extends cn{constructor(n,r,l,a){let o=-1;if(super(n,r),w1(this,"space",a),typeof l=="number")for(;++o 4&&r.slice(0,4)==="data"&&oD.test(n)){if(n.charAt(4)==="-"){const o=n.slice(5).replace(S1,cD);l="data"+o.charAt(0).toUpperCase()+o.slice(1)}else{const o=n.slice(4);if(!S1.test(o)){let u=o.replace(aD,uD);u.charAt(0)!=="-"&&(u="-"+u),n="data"+u}}a=qm}return new a(l,n)}function uD(e){return"-"+e.toLowerCase()}function cD(e){return e.charAt(1).toUpperCase()}const fD=z_([M_,rD,O_,L_,H_],"html"),Um=z_([M_,iD,O_,L_,H_],"svg");function dD(e){return e.join(" ").trim()}var Zl={},bp,_1;function hD(){if(_1)return bp;_1=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,r=/^\s*/,l=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,a=/^:\s*/,o=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,u=/^[;\s]*/,c=/^\s+|\s+$/g,d=` -`,h="/",m="*",p="",x="comment",v="declaration";function w(S,_){if(typeof S!="string")throw new TypeError("First argument must be a string");if(!S)return[];_=_||{};var T=1,k=1;function A(B){var F=B.match(n);F&&(T+=F.length);var z=B.lastIndexOf(d);k=~z?B.length-z:k+B.length}function q(){var B={line:T,column:k};return function(F){return F.position=new j(B),P(),F}}function j(B){this.start=B,this.end={line:T,column:k},this.source=_.source}j.prototype.content=S;function L(B){var F=new Error(_.source+":"+T+":"+k+": "+B);if(F.reason=B,F.filename=_.source,F.line=T,F.column=k,F.source=S,!_.silent)throw F}function O(B){var F=B.exec(S);if(F){var z=F[0];return A(z),S=S.slice(z.length),F}}function P(){O(r)}function R(B){var F;for(B=B||[];F=H();)F!==!1&&B.push(F);return B}function H(){var B=q();if(!(h!=S.charAt(0)||m!=S.charAt(1))){for(var F=2;p!=S.charAt(F)&&(m!=S.charAt(F)||h!=S.charAt(F+1));)++F;if(F+=2,p===S.charAt(F-1))return L("End of comment missing");var z=S.slice(2,F-2);return k+=2,A(z),S=S.slice(F),k+=2,B({type:x,comment:z})}}function U(){var B=q(),F=O(l);if(F){if(H(),!O(a))return L("property missing ':'");var z=O(o),G=B({type:v,property:E(F[0].replace(e,p)),value:z?E(z[0].replace(e,p)):p});return O(u),G}}function ee(){var B=[];R(B);for(var F;F=U();)F!==!1&&(B.push(F),R(B));return B}return P(),ee()}function E(S){return S?S.replace(c,p):p}return bp=w,bp}var k1;function pD(){if(k1)return Zl;k1=1;var e=Zl&&Zl.__importDefault||function(l){return l&&l.__esModule?l:{default:l}};Object.defineProperty(Zl,"__esModule",{value:!0}),Zl.default=r;const n=e(hD());function r(l,a){let o=null;if(!l||typeof l!="string")return o;const u=(0,n.default)(l),c=typeof a=="function";return u.forEach(d=>{if(d.type!=="declaration")return;const{property:h,value:m}=d;c?a(h,m,d):m&&(o=o||{},o[h]=m)}),o}return Zl}var bo={},E1;function mD(){if(E1)return bo;E1=1,Object.defineProperty(bo,"__esModule",{value:!0}),bo.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,n=/-([a-z])/g,r=/^[^-]+$/,l=/^-(webkit|moz|ms|o|khtml)-/,a=/^-(ms)-/,o=function(h){return!h||r.test(h)||e.test(h)},u=function(h,m){return m.toUpperCase()},c=function(h,m){return"".concat(m,"-")},d=function(h,m){return m===void 0&&(m={}),o(h)?h:(h=h.toLowerCase(),m.reactCompat?h=h.replace(a,c):h=h.replace(l,c),h.replace(n,u))};return bo.camelCase=d,bo}var wo,N1;function gD(){if(N1)return wo;N1=1;var e=wo&&wo.__importDefault||function(a){return a&&a.__esModule?a:{default:a}},n=e(pD()),r=mD();function l(a,o){var u={};return!a||typeof a!="string"||(0,n.default)(a,function(c,d){c&&d&&(u[(0,r.camelCase)(c,o)]=d)}),u}return l.default=l,wo=l,wo}var xD=gD();const yD=Qo(xD),B_=I_("end"),Pm=I_("start");function I_(e){return n;function n(r){const l=r&&r.position&&r.position[e]||{};if(typeof l.line=="number"&&l.line>0&&typeof l.column=="number"&&l.column>0)return{line:l.line,column:l.column,offset:typeof l.offset=="number"&&l.offset>-1?l.offset:void 0}}}function vD(e){const n=Pm(e),r=B_(e);if(n&&r)return{start:n,end:r}}function Mo(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?C1(e.position):"start"in e||"end"in e?C1(e):"line"in e||"column"in e?lm(e):""}function lm(e){return T1(e&&e.line)+":"+T1(e&&e.column)}function C1(e){return lm(e&&e.start)+"-"+lm(e&&e.end)}function T1(e){return e&&typeof e=="number"?e:1}class Xt extends Error{constructor(n,r,l){super(),typeof r=="string"&&(l=r,r=void 0);let a="",o={},u=!1;if(r&&("line"in r&&"column"in r?o={place:r}:"start"in r&&"end"in r?o={place:r}:"type"in r?o={ancestors:[r],place:r.position}:o={...r}),typeof n=="string"?a=n:!o.cause&&n&&(u=!0,a=n.message,o.cause=n),!o.ruleId&&!o.source&&typeof l=="string"){const d=l.indexOf(":");d===-1?o.ruleId=l:(o.source=l.slice(0,d),o.ruleId=l.slice(d+1))}if(!o.place&&o.ancestors&&o.ancestors){const d=o.ancestors[o.ancestors.length-1];d&&(o.place=d.position)}const c=o.place&&"start"in o.place?o.place.start:o.place;this.ancestors=o.ancestors||void 0,this.cause=o.cause||void 0,this.column=c?c.column:void 0,this.fatal=void 0,this.file="",this.message=a,this.line=c?c.line:void 0,this.name=Mo(o.place)||"1:1",this.place=o.place||void 0,this.reason=this.message,this.ruleId=o.ruleId||void 0,this.source=o.source||void 0,this.stack=u&&o.cause&&typeof o.cause.stack=="string"?o.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Xt.prototype.file="";Xt.prototype.name="";Xt.prototype.reason="";Xt.prototype.message="";Xt.prototype.stack="";Xt.prototype.column=void 0;Xt.prototype.line=void 0;Xt.prototype.ancestors=void 0;Xt.prototype.cause=void 0;Xt.prototype.fatal=void 0;Xt.prototype.place=void 0;Xt.prototype.ruleId=void 0;Xt.prototype.source=void 0;const Vm={}.hasOwnProperty,bD=new Map,wD=/[A-Z]/g,SD=new Set(["table","tbody","thead","tfoot","tr"]),_D=new Set(["td","th"]),q_="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function kD(e,n){if(!n||n.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const r=n.filePath||void 0;let l;if(n.development){if(typeof n.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");l=MD(r,n.jsxDEV)}else{if(typeof n.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof n.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");l=zD(r,n.jsx,n.jsxs)}const a={Fragment:n.Fragment,ancestors:[],components:n.components||{},create:l,elementAttributeNameCase:n.elementAttributeNameCase||"react",evaluater:n.createEvaluater?n.createEvaluater():void 0,filePath:r,ignoreInvalidStyle:n.ignoreInvalidStyle||!1,passKeys:n.passKeys!==!1,passNode:n.passNode||!1,schema:n.space==="svg"?Um:fD,stylePropertyNameCase:n.stylePropertyNameCase||"dom",tableCellAlignToStyle:n.tableCellAlignToStyle!==!1},o=U_(a,e,void 0);return o&&typeof o!="string"?o:a.create(e,a.Fragment,{children:o||void 0},void 0)}function U_(e,n,r){if(n.type==="element")return ED(e,n,r);if(n.type==="mdxFlowExpression"||n.type==="mdxTextExpression")return ND(e,n);if(n.type==="mdxJsxFlowElement"||n.type==="mdxJsxTextElement")return TD(e,n,r);if(n.type==="mdxjsEsm")return CD(e,n);if(n.type==="root")return AD(e,n,r);if(n.type==="text")return jD(e,n)}function ED(e,n,r){const l=e.schema;let a=l;n.tagName.toLowerCase()==="svg"&&l.space==="html"&&(a=Um,e.schema=a),e.ancestors.push(n);const o=V_(e,n.tagName,!1),u=DD(e,n);let c=Gm(e,n);return SD.has(n.tagName)&&(c=c.filter(function(d){return typeof d=="string"?!tD(d):!0})),P_(e,u,o,n),$m(u,c),e.ancestors.pop(),e.schema=l,e.create(n,o,u,r)}function ND(e,n){if(n.data&&n.data.estree&&e.evaluater){const l=n.data.estree.body[0];return l.type,e.evaluater.evaluateExpression(l.expression)}Yo(e,n.position)}function CD(e,n){if(n.data&&n.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(n.data.estree);Yo(e,n.position)}function TD(e,n,r){const l=e.schema;let a=l;n.name==="svg"&&l.space==="html"&&(a=Um,e.schema=a),e.ancestors.push(n);const o=n.name===null?e.Fragment:V_(e,n.name,!0),u=RD(e,n),c=Gm(e,n);return P_(e,u,o,n),$m(u,c),e.ancestors.pop(),e.schema=l,e.create(n,o,u,r)}function AD(e,n,r){const l={};return $m(l,Gm(e,n)),e.create(n,e.Fragment,l,r)}function jD(e,n){return n.value}function P_(e,n,r,l){typeof r!="string"&&r!==e.Fragment&&e.passNode&&(n.node=l)}function $m(e,n){if(n.length>0){const r=n.length>1?n:n[0];r&&(e.children=r)}}function zD(e,n,r){return l;function l(a,o,u,c){const h=Array.isArray(u.children)?r:n;return c?h(o,u,c):h(o,u)}}function MD(e,n){return r;function r(l,a,o,u){const c=Array.isArray(o.children),d=Pm(l);return n(a,o,u,c,{columnNumber:d?d.column-1:void 0,fileName:e,lineNumber:d?d.line:void 0},void 0)}}function DD(e,n){const r={};let l,a;for(a in n.properties)if(a!=="children"&&Vm.call(n.properties,a)){const o=OD(e,a,n.properties[a]);if(o){const[u,c]=o;e.tableCellAlignToStyle&&u==="align"&&typeof c=="string"&&_D.has(n.tagName)?l=c:r[u]=c}}if(l){const o=r.style||(r.style={});o[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=l}return r}function RD(e,n){const r={};for(const l of n.attributes)if(l.type==="mdxJsxExpressionAttribute")if(l.data&&l.data.estree&&e.evaluater){const o=l.data.estree.body[0];o.type;const u=o.expression;u.type;const c=u.properties[0];c.type,Object.assign(r,e.evaluater.evaluateExpression(c.argument))}else Yo(e,n.position);else{const a=l.name;let o;if(l.value&&typeof l.value=="object")if(l.value.data&&l.value.data.estree&&e.evaluater){const c=l.value.data.estree.body[0];c.type,o=e.evaluater.evaluateExpression(c.expression)}else Yo(e,n.position);else o=l.value===null?!0:l.value;r[a]=o}return r}function Gm(e,n){const r=[];let l=-1;const a=e.passKeys?new Map:bD;for(;++l a?0:a+n:n=n>a?a:n,r=r>0?r:0,l.length<1e4)u=Array.from(l),u.unshift(n,r),e.splice(...u);else for(r&&e.splice(n,r);o 0?(Sn(e,e.length,0,n),e):n}const z1={}.hasOwnProperty;function G_(e){const n={};let r=-1;for(;++r 13&&r<32||r>126&&r<160||r>55295&&r<57344||r>64975&&r<65008||(r&65535)===65535||(r&65535)===65534||r>1114111?"�":String.fromCodePoint(r)}function Yn(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const Kt=vi(/[A-Za-z]/),Yt=vi(/[\dA-Za-z]/),$D=vi(/[#-'*+\--9=?A-Z^-~]/);function yc(e){return e!==null&&(e<32||e===127)}const am=vi(/\d/),GD=vi(/[\dA-Fa-f]/),FD=vi(/[!-/:-@[-`{-~]/);function Ee(e){return e!==null&&e<-2}function ot(e){return e!==null&&(e<0||e===32)}function qe(e){return e===-2||e===-1||e===32}const Bc=vi(new RegExp("\\p{P}|\\p{S}","u")),rl=vi(/\s/);function vi(e){return n;function n(r){return r!==null&&r>-1&&e.test(String.fromCharCode(r))}}function va(e){const n=[];let r=-1,l=0,a=0;for(;++r 55295&&o<57344){const c=e.charCodeAt(r+1);o<56320&&c>56319&&c<57344?(u=String.fromCharCode(o,c),a=1):u="�"}else u=String.fromCharCode(o);u&&(n.push(e.slice(l,r),encodeURIComponent(u)),l=r+a+1,u=""),a&&(r+=a,a=0)}return n.join("")+e.slice(l)}function Qe(e,n,r,l){const a=l?l-1:Number.POSITIVE_INFINITY;let o=0;return u;function u(d){return qe(d)?(e.enter(r),c(d)):n(d)}function c(d){return qe(d)&&o++u))return;const L=n.events.length;let O=L,P,R;for(;O--;)if(n.events[O][0]==="exit"&&n.events[O][1].type==="chunkFlow"){if(P){R=n.events[O][1].end;break}P=!0}for(_(l),j=L;j k;){const q=r[A];n.containerState=q[1],q[0].exit.call(n,e)}r.length=k}function T(){a.write([null]),o=void 0,a=void 0,n.containerState._closeFlow=void 0}}function KD(e,n,r){return Qe(e,e.attempt(this.parser.constructs.document,n,r),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function ga(e){if(e===null||ot(e)||rl(e))return 1;if(Bc(e))return 2}function Ic(e,n,r){const l=[];let a=-1;for(;++a 1&&e[r][1].end.offset-e[r][1].start.offset>1?2:1;const p={...e[l][1].end},x={...e[r][1].start};D1(p,-d),D1(x,d),u={type:d>1?"strongSequence":"emphasisSequence",start:p,end:{...e[l][1].end}},c={type:d>1?"strongSequence":"emphasisSequence",start:{...e[r][1].start},end:x},o={type:d>1?"strongText":"emphasisText",start:{...e[l][1].end},end:{...e[r][1].start}},a={type:d>1?"strong":"emphasis",start:{...u.start},end:{...c.end}},e[l][1].end={...u.start},e[r][1].start={...c.end},h=[],e[l][1].end.offset-e[l][1].start.offset&&(h=Dn(h,[["enter",e[l][1],n],["exit",e[l][1],n]])),h=Dn(h,[["enter",a,n],["enter",u,n],["exit",u,n],["enter",o,n]]),h=Dn(h,Ic(n.parser.constructs.insideSpan.null,e.slice(l+1,r),n)),h=Dn(h,[["exit",o,n],["enter",c,n],["exit",c,n],["exit",a,n]]),e[r][1].end.offset-e[r][1].start.offset?(m=2,h=Dn(h,[["enter",e[r][1],n],["exit",e[r][1],n]])):m=0,Sn(e,l-1,r-l+3,h),r=l+h.length-m-2;break}}for(r=-1;++r 0&&qe(j)?Qe(e,T,"linePrefix",o+1)(j):T(j)}function T(j){return j===null||Ee(j)?e.check(R1,E,A)(j):(e.enter("codeFlowValue"),k(j))}function k(j){return j===null||Ee(j)?(e.exit("codeFlowValue"),T(j)):(e.consume(j),k)}function A(j){return e.exit("codeFenced"),n(j)}function q(j,L,O){let P=0;return R;function R(F){return j.enter("lineEnding"),j.consume(F),j.exit("lineEnding"),H}function H(F){return j.enter("codeFencedFence"),qe(F)?Qe(j,U,"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(F):U(F)}function U(F){return F===c?(j.enter("codeFencedFenceSequence"),ee(F)):O(F)}function ee(F){return F===c?(P++,j.consume(F),ee):P>=u?(j.exit("codeFencedFenceSequence"),qe(F)?Qe(j,B,"whitespace")(F):B(F)):O(F)}function B(F){return F===null||Ee(F)?(j.exit("codeFencedFence"),L(F)):O(F)}}}function uR(e,n,r){const l=this;return a;function a(u){return u===null?r(u):(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),o)}function o(u){return l.parser.lazy[l.now().line]?r(u):n(u)}}const Sp={name:"codeIndented",tokenize:fR},cR={partial:!0,tokenize:dR};function fR(e,n,r){const l=this;return a;function a(h){return e.enter("codeIndented"),Qe(e,o,"linePrefix",5)(h)}function o(h){const m=l.events[l.events.length-1];return m&&m[1].type==="linePrefix"&&m[2].sliceSerialize(m[1],!0).length>=4?u(h):r(h)}function u(h){return h===null?d(h):Ee(h)?e.attempt(cR,u,d)(h):(e.enter("codeFlowValue"),c(h))}function c(h){return h===null||Ee(h)?(e.exit("codeFlowValue"),u(h)):(e.consume(h),c)}function d(h){return e.exit("codeIndented"),n(h)}}function dR(e,n,r){const l=this;return a;function a(u){return l.parser.lazy[l.now().line]?r(u):Ee(u)?(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),a):Qe(e,o,"linePrefix",5)(u)}function o(u){const c=l.events[l.events.length-1];return c&&c[1].type==="linePrefix"&&c[2].sliceSerialize(c[1],!0).length>=4?n(u):Ee(u)?a(u):r(u)}}const hR={name:"codeText",previous:mR,resolve:pR,tokenize:gR};function pR(e){let n=e.length-4,r=3,l,a;if((e[r][1].type==="lineEnding"||e[r][1].type==="space")&&(e[n][1].type==="lineEnding"||e[n][1].type==="space")){for(l=r;++l =this.left.length+this.right.length)throw new RangeError("Cannot access index `"+n+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return n this.left.length?this.right.slice(this.right.length-l+this.left.length,this.right.length-n+this.left.length).reverse():this.left.slice(n).concat(this.right.slice(this.right.length-l+this.left.length).reverse())}splice(n,r,l){const a=r||0;this.setCursor(Math.trunc(n));const o=this.right.splice(this.right.length-a,Number.POSITIVE_INFINITY);return l&&So(this.left,l),o.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(n){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(n)}pushMany(n){this.setCursor(Number.POSITIVE_INFINITY),So(this.left,n)}unshift(n){this.setCursor(0),this.right.push(n)}unshiftMany(n){this.setCursor(0),So(this.right,n.reverse())}setCursor(n){if(!(n===this.left.length||n>this.left.length&&this.right.length===0||n<0&&this.left.length===0))if(n =4?n(u):e.interrupt(l.parser.constructs.flow,r,n)(u)}}function K_(e,n,r,l,a,o,u,c,d){const h=d||Number.POSITIVE_INFINITY;let m=0;return p;function p(_){return _===60?(e.enter(l),e.enter(a),e.enter(o),e.consume(_),e.exit(o),x):_===null||_===32||_===41||yc(_)?r(_):(e.enter(l),e.enter(u),e.enter(c),e.enter("chunkString",{contentType:"string"}),E(_))}function x(_){return _===62?(e.enter(o),e.consume(_),e.exit(o),e.exit(a),e.exit(l),n):(e.enter(c),e.enter("chunkString",{contentType:"string"}),v(_))}function v(_){return _===62?(e.exit("chunkString"),e.exit(c),x(_)):_===null||_===60||Ee(_)?r(_):(e.consume(_),_===92?w:v)}function w(_){return _===60||_===62||_===92?(e.consume(_),v):v(_)}function E(_){return!m&&(_===null||_===41||ot(_))?(e.exit("chunkString"),e.exit(c),e.exit(u),e.exit(l),n(_)):m 999||v===null||v===91||v===93&&!d||v===94&&!c&&"_hiddenFootnoteSupport"in u.parser.constructs?r(v):v===93?(e.exit(o),e.enter(a),e.consume(v),e.exit(a),e.exit(l),n):Ee(v)?(e.enter("lineEnding"),e.consume(v),e.exit("lineEnding"),m):(e.enter("chunkString",{contentType:"string"}),p(v))}function p(v){return v===null||v===91||v===93||Ee(v)||c++>999?(e.exit("chunkString"),m(v)):(e.consume(v),d||(d=!qe(v)),v===92?x:p)}function x(v){return v===91||v===92||v===93?(e.consume(v),c++,p):p(v)}}function W_(e,n,r,l,a,o){let u;return c;function c(x){return x===34||x===39||x===40?(e.enter(l),e.enter(a),e.consume(x),e.exit(a),u=x===40?41:x,d):r(x)}function d(x){return x===u?(e.enter(a),e.consume(x),e.exit(a),e.exit(l),n):(e.enter(o),h(x))}function h(x){return x===u?(e.exit(o),d(u)):x===null?r(x):Ee(x)?(e.enter("lineEnding"),e.consume(x),e.exit("lineEnding"),Qe(e,h,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),m(x))}function m(x){return x===u||x===null||Ee(x)?(e.exit("chunkString"),h(x)):(e.consume(x),x===92?p:m)}function p(x){return x===u||x===92?(e.consume(x),m):m(x)}}function Do(e,n){let r;return l;function l(a){return Ee(a)?(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),r=!0,l):qe(a)?Qe(e,l,r?"linePrefix":"lineSuffix")(a):n(a)}}const kR={name:"definition",tokenize:NR},ER={partial:!0,tokenize:CR};function NR(e,n,r){const l=this;let a;return o;function o(v){return e.enter("definition"),u(v)}function u(v){return J_.call(l,e,c,r,"definitionLabel","definitionLabelMarker","definitionLabelString")(v)}function c(v){return a=Yn(l.sliceSerialize(l.events[l.events.length-1][1]).slice(1,-1)),v===58?(e.enter("definitionMarker"),e.consume(v),e.exit("definitionMarker"),d):r(v)}function d(v){return ot(v)?Do(e,h)(v):h(v)}function h(v){return K_(e,m,r,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(v)}function m(v){return e.attempt(ER,p,p)(v)}function p(v){return qe(v)?Qe(e,x,"whitespace")(v):x(v)}function x(v){return v===null||Ee(v)?(e.exit("definition"),l.parser.defined.push(a),n(v)):r(v)}}function CR(e,n,r){return l;function l(c){return ot(c)?Do(e,a)(c):r(c)}function a(c){return W_(e,o,r,"definitionTitle","definitionTitleMarker","definitionTitleString")(c)}function o(c){return qe(c)?Qe(e,u,"whitespace")(c):u(c)}function u(c){return c===null||Ee(c)?n(c):r(c)}}const TR={name:"hardBreakEscape",tokenize:AR};function AR(e,n,r){return l;function l(o){return e.enter("hardBreakEscape"),e.consume(o),a}function a(o){return Ee(o)?(e.exit("hardBreakEscape"),n(o)):r(o)}}const jR={name:"headingAtx",resolve:zR,tokenize:MR};function zR(e,n){let r=e.length-2,l=3,a,o;return e[l][1].type==="whitespace"&&(l+=2),r-2>l&&e[r][1].type==="whitespace"&&(r-=2),e[r][1].type==="atxHeadingSequence"&&(l===r-1||r-4>l&&e[r-2][1].type==="whitespace")&&(r-=l+1===r?2:4),r>l&&(a={type:"atxHeadingText",start:e[l][1].start,end:e[r][1].end},o={type:"chunkText",start:e[l][1].start,end:e[r][1].end,contentType:"text"},Sn(e,l,r-l+1,[["enter",a,n],["enter",o,n],["exit",o,n],["exit",a,n]])),e}function MR(e,n,r){let l=0;return a;function a(m){return e.enter("atxHeading"),o(m)}function o(m){return e.enter("atxHeadingSequence"),u(m)}function u(m){return m===35&&l++<6?(e.consume(m),u):m===null||ot(m)?(e.exit("atxHeadingSequence"),c(m)):r(m)}function c(m){return m===35?(e.enter("atxHeadingSequence"),d(m)):m===null||Ee(m)?(e.exit("atxHeading"),n(m)):qe(m)?Qe(e,c,"whitespace")(m):(e.enter("atxHeadingText"),h(m))}function d(m){return m===35?(e.consume(m),d):(e.exit("atxHeadingSequence"),c(m))}function h(m){return m===null||m===35||ot(m)?(e.exit("atxHeadingText"),c(m)):(e.consume(m),h)}}const DR=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],L1=["pre","script","style","textarea"],RR={concrete:!0,name:"htmlFlow",resolveTo:HR,tokenize:BR},OR={partial:!0,tokenize:qR},LR={partial:!0,tokenize:IR};function HR(e){let n=e.length;for(;n--&&!(e[n][0]==="enter"&&e[n][1].type==="htmlFlow"););return n>1&&e[n-2][1].type==="linePrefix"&&(e[n][1].start=e[n-2][1].start,e[n+1][1].start=e[n-2][1].start,e.splice(n-2,2)),e}function BR(e,n,r){const l=this;let a,o,u,c,d;return h;function h(N){return m(N)}function m(N){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(N),p}function p(N){return N===33?(e.consume(N),x):N===47?(e.consume(N),o=!0,E):N===63?(e.consume(N),a=3,l.interrupt?n:M):Kt(N)?(e.consume(N),u=String.fromCharCode(N),S):r(N)}function x(N){return N===45?(e.consume(N),a=2,v):N===91?(e.consume(N),a=5,c=0,w):Kt(N)?(e.consume(N),a=4,l.interrupt?n:M):r(N)}function v(N){return N===45?(e.consume(N),l.interrupt?n:M):r(N)}function w(N){const $="CDATA[";return N===$.charCodeAt(c++)?(e.consume(N),c===$.length?l.interrupt?n:U:w):r(N)}function E(N){return Kt(N)?(e.consume(N),u=String.fromCharCode(N),S):r(N)}function S(N){if(N===null||N===47||N===62||ot(N)){const $=N===47,X=u.toLowerCase();return!$&&!o&&L1.includes(X)?(a=1,l.interrupt?n(N):U(N)):DR.includes(u.toLowerCase())?(a=6,$?(e.consume(N),_):l.interrupt?n(N):U(N)):(a=7,l.interrupt&&!l.parser.lazy[l.now().line]?r(N):o?T(N):k(N))}return N===45||Yt(N)?(e.consume(N),u+=String.fromCharCode(N),S):r(N)}function _(N){return N===62?(e.consume(N),l.interrupt?n:U):r(N)}function T(N){return qe(N)?(e.consume(N),T):R(N)}function k(N){return N===47?(e.consume(N),R):N===58||N===95||Kt(N)?(e.consume(N),A):qe(N)?(e.consume(N),k):R(N)}function A(N){return N===45||N===46||N===58||N===95||Yt(N)?(e.consume(N),A):q(N)}function q(N){return N===61?(e.consume(N),j):qe(N)?(e.consume(N),q):k(N)}function j(N){return N===null||N===60||N===61||N===62||N===96?r(N):N===34||N===39?(e.consume(N),d=N,L):qe(N)?(e.consume(N),j):O(N)}function L(N){return N===d?(e.consume(N),d=null,P):N===null||Ee(N)?r(N):(e.consume(N),L)}function O(N){return N===null||N===34||N===39||N===47||N===60||N===61||N===62||N===96||ot(N)?q(N):(e.consume(N),O)}function P(N){return N===47||N===62||qe(N)?k(N):r(N)}function R(N){return N===62?(e.consume(N),H):r(N)}function H(N){return N===null||Ee(N)?U(N):qe(N)?(e.consume(N),H):r(N)}function U(N){return N===45&&a===2?(e.consume(N),z):N===60&&a===1?(e.consume(N),G):N===62&&a===4?(e.consume(N),I):N===63&&a===3?(e.consume(N),M):N===93&&a===5?(e.consume(N),K):Ee(N)&&(a===6||a===7)?(e.exit("htmlFlowData"),e.check(OR,Y,ee)(N)):N===null||Ee(N)?(e.exit("htmlFlowData"),ee(N)):(e.consume(N),U)}function ee(N){return e.check(LR,B,Y)(N)}function B(N){return e.enter("lineEnding"),e.consume(N),e.exit("lineEnding"),F}function F(N){return N===null||Ee(N)?ee(N):(e.enter("htmlFlowData"),U(N))}function z(N){return N===45?(e.consume(N),M):U(N)}function G(N){return N===47?(e.consume(N),u="",Q):U(N)}function Q(N){if(N===62){const $=u.toLowerCase();return L1.includes($)?(e.consume(N),I):U(N)}return Kt(N)&&u.length<8?(e.consume(N),u+=String.fromCharCode(N),Q):U(N)}function K(N){return N===93?(e.consume(N),M):U(N)}function M(N){return N===62?(e.consume(N),I):N===45&&a===2?(e.consume(N),M):U(N)}function I(N){return N===null||Ee(N)?(e.exit("htmlFlowData"),Y(N)):(e.consume(N),I)}function Y(N){return e.exit("htmlFlow"),n(N)}}function IR(e,n,r){const l=this;return a;function a(u){return Ee(u)?(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),o):r(u)}function o(u){return l.parser.lazy[l.now().line]?r(u):n(u)}}function qR(e,n,r){return l;function l(a){return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),e.attempt(as,n,r)}}const UR={name:"htmlText",tokenize:PR};function PR(e,n,r){const l=this;let a,o,u;return c;function c(M){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(M),d}function d(M){return M===33?(e.consume(M),h):M===47?(e.consume(M),q):M===63?(e.consume(M),k):Kt(M)?(e.consume(M),O):r(M)}function h(M){return M===45?(e.consume(M),m):M===91?(e.consume(M),o=0,w):Kt(M)?(e.consume(M),T):r(M)}function m(M){return M===45?(e.consume(M),v):r(M)}function p(M){return M===null?r(M):M===45?(e.consume(M),x):Ee(M)?(u=p,G(M)):(e.consume(M),p)}function x(M){return M===45?(e.consume(M),v):p(M)}function v(M){return M===62?z(M):M===45?x(M):p(M)}function w(M){const I="CDATA[";return M===I.charCodeAt(o++)?(e.consume(M),o===I.length?E:w):r(M)}function E(M){return M===null?r(M):M===93?(e.consume(M),S):Ee(M)?(u=E,G(M)):(e.consume(M),E)}function S(M){return M===93?(e.consume(M),_):E(M)}function _(M){return M===62?z(M):M===93?(e.consume(M),_):E(M)}function T(M){return M===null||M===62?z(M):Ee(M)?(u=T,G(M)):(e.consume(M),T)}function k(M){return M===null?r(M):M===63?(e.consume(M),A):Ee(M)?(u=k,G(M)):(e.consume(M),k)}function A(M){return M===62?z(M):k(M)}function q(M){return Kt(M)?(e.consume(M),j):r(M)}function j(M){return M===45||Yt(M)?(e.consume(M),j):L(M)}function L(M){return Ee(M)?(u=L,G(M)):qe(M)?(e.consume(M),L):z(M)}function O(M){return M===45||Yt(M)?(e.consume(M),O):M===47||M===62||ot(M)?P(M):r(M)}function P(M){return M===47?(e.consume(M),z):M===58||M===95||Kt(M)?(e.consume(M),R):Ee(M)?(u=P,G(M)):qe(M)?(e.consume(M),P):z(M)}function R(M){return M===45||M===46||M===58||M===95||Yt(M)?(e.consume(M),R):H(M)}function H(M){return M===61?(e.consume(M),U):Ee(M)?(u=H,G(M)):qe(M)?(e.consume(M),H):P(M)}function U(M){return M===null||M===60||M===61||M===62||M===96?r(M):M===34||M===39?(e.consume(M),a=M,ee):Ee(M)?(u=U,G(M)):qe(M)?(e.consume(M),U):(e.consume(M),B)}function ee(M){return M===a?(e.consume(M),a=void 0,F):M===null?r(M):Ee(M)?(u=ee,G(M)):(e.consume(M),ee)}function B(M){return M===null||M===34||M===39||M===60||M===61||M===96?r(M):M===47||M===62||ot(M)?P(M):(e.consume(M),B)}function F(M){return M===47||M===62||ot(M)?P(M):r(M)}function z(M){return M===62?(e.consume(M),e.exit("htmlTextData"),e.exit("htmlText"),n):r(M)}function G(M){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(M),e.exit("lineEnding"),Q}function Q(M){return qe(M)?Qe(e,K,"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(M):K(M)}function K(M){return e.enter("htmlTextData"),u(M)}}const Xm={name:"labelEnd",resolveAll:FR,resolveTo:YR,tokenize:XR},VR={tokenize:QR},$R={tokenize:ZR},GR={tokenize:KR};function FR(e){let n=-1;const r=[];for(;++n =3&&(h===null||Ee(h))?(e.exit("thematicBreak"),n(h)):r(h)}function d(h){return h===a?(e.consume(h),l++,d):(e.exit("thematicBreakSequence"),qe(h)?Qe(e,c,"whitespace")(h):c(h))}}const sn={continuation:{tokenize:oO},exit:uO,name:"list",tokenize:aO},iO={partial:!0,tokenize:cO},lO={partial:!0,tokenize:sO};function aO(e,n,r){const l=this,a=l.events[l.events.length-1];let o=a&&a[1].type==="linePrefix"?a[2].sliceSerialize(a[1],!0).length:0,u=0;return c;function c(v){const w=l.containerState.type||(v===42||v===43||v===45?"listUnordered":"listOrdered");if(w==="listUnordered"?!l.containerState.marker||v===l.containerState.marker:am(v)){if(l.containerState.type||(l.containerState.type=w,e.enter(w,{_container:!0})),w==="listUnordered")return e.enter("listItemPrefix"),v===42||v===45?e.check(nc,r,h)(v):h(v);if(!l.interrupt||v===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),d(v)}return r(v)}function d(v){return am(v)&&++u<10?(e.consume(v),d):(!l.interrupt||u<2)&&(l.containerState.marker?v===l.containerState.marker:v===41||v===46)?(e.exit("listItemValue"),h(v)):r(v)}function h(v){return e.enter("listItemMarker"),e.consume(v),e.exit("listItemMarker"),l.containerState.marker=l.containerState.marker||v,e.check(as,l.interrupt?r:m,e.attempt(iO,x,p))}function m(v){return l.containerState.initialBlankLine=!0,o++,x(v)}function p(v){return qe(v)?(e.enter("listItemPrefixWhitespace"),e.consume(v),e.exit("listItemPrefixWhitespace"),x):r(v)}function x(v){return l.containerState.size=o+l.sliceSerialize(e.exit("listItemPrefix"),!0).length,n(v)}}function oO(e,n,r){const l=this;return l.containerState._closeFlow=void 0,e.check(as,a,o);function a(c){return l.containerState.furtherBlankLines=l.containerState.furtherBlankLines||l.containerState.initialBlankLine,Qe(e,n,"listItemIndent",l.containerState.size+1)(c)}function o(c){return l.containerState.furtherBlankLines||!qe(c)?(l.containerState.furtherBlankLines=void 0,l.containerState.initialBlankLine=void 0,u(c)):(l.containerState.furtherBlankLines=void 0,l.containerState.initialBlankLine=void 0,e.attempt(lO,n,u)(c))}function u(c){return l.containerState._closeFlow=!0,l.interrupt=void 0,Qe(e,e.attempt(sn,n,r),"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(c)}}function sO(e,n,r){const l=this;return Qe(e,a,"listItemIndent",l.containerState.size+1);function a(o){const u=l.events[l.events.length-1];return u&&u[1].type==="listItemIndent"&&u[2].sliceSerialize(u[1],!0).length===l.containerState.size?n(o):r(o)}}function uO(e){e.exit(this.containerState.type)}function cO(e,n,r){const l=this;return Qe(e,a,"listItemPrefixWhitespace",l.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function a(o){const u=l.events[l.events.length-1];return!qe(o)&&u&&u[1].type==="listItemPrefixWhitespace"?n(o):r(o)}}const H1={name:"setextUnderline",resolveTo:fO,tokenize:dO};function fO(e,n){let r=e.length,l,a,o;for(;r--;)if(e[r][0]==="enter"){if(e[r][1].type==="content"){l=r;break}e[r][1].type==="paragraph"&&(a=r)}else e[r][1].type==="content"&&e.splice(r,1),!o&&e[r][1].type==="definition"&&(o=r);const u={type:"setextHeading",start:{...e[l][1].start},end:{...e[e.length-1][1].end}};return e[a][1].type="setextHeadingText",o?(e.splice(a,0,["enter",u,n]),e.splice(o+1,0,["exit",e[l][1],n]),e[l][1].end={...e[o][1].end}):e[l][1]=u,e.push(["exit",u,n]),e}function dO(e,n,r){const l=this;let a;return o;function o(h){let m=l.events.length,p;for(;m--;)if(l.events[m][1].type!=="lineEnding"&&l.events[m][1].type!=="linePrefix"&&l.events[m][1].type!=="content"){p=l.events[m][1].type==="paragraph";break}return!l.parser.lazy[l.now().line]&&(l.interrupt||p)?(e.enter("setextHeadingLine"),a=h,u(h)):r(h)}function u(h){return e.enter("setextHeadingLineSequence"),c(h)}function c(h){return h===a?(e.consume(h),c):(e.exit("setextHeadingLineSequence"),qe(h)?Qe(e,d,"lineSuffix")(h):d(h))}function d(h){return h===null||Ee(h)?(e.exit("setextHeadingLine"),n(h)):r(h)}}const hO={tokenize:pO};function pO(e){const n=this,r=e.attempt(as,l,e.attempt(this.parser.constructs.flowInitial,a,Qe(e,e.attempt(this.parser.constructs.flow,a,e.attempt(vR,a)),"linePrefix")));return r;function l(o){if(o===null){e.consume(o);return}return e.enter("lineEndingBlank"),e.consume(o),e.exit("lineEndingBlank"),n.currentConstruct=void 0,r}function a(o){if(o===null){e.consume(o);return}return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),n.currentConstruct=void 0,r}}const mO={resolveAll:tk()},gO=ek("string"),xO=ek("text");function ek(e){return{resolveAll:tk(e==="text"?yO:void 0),tokenize:n};function n(r){const l=this,a=this.parser.constructs[e],o=r.attempt(a,u,c);return u;function u(m){return h(m)?o(m):c(m)}function c(m){if(m===null){r.consume(m);return}return r.enter("data"),r.consume(m),d}function d(m){return h(m)?(r.exit("data"),o(m)):(r.consume(m),d)}function h(m){if(m===null)return!0;const p=a[m];let x=-1;if(p)for(;++x -1){const c=u[0];typeof c=="string"?u[0]=c.slice(l):u.shift()}o>0&&u.push(e[a].slice(0,o))}return u}function zO(e,n){let r=-1;const l=[];let a;for(;++r 4&&r.slice(0,4)==="data"&&oD.test(n)){if(n.charAt(4)==="-"){const o=n.slice(5).replace(_1,cD);l="data"+o.charAt(0).toUpperCase()+o.slice(1)}else{const o=n.slice(4);if(!_1.test(o)){let u=o.replace(aD,uD);u.charAt(0)!=="-"&&(u="-"+u),n="data"+u}}a=Um}return new a(l,n)}function uD(e){return"-"+e.toLowerCase()}function cD(e){return e.charAt(1).toUpperCase()}const fD=z_([M_,rD,O_,L_,H_],"html"),Pm=z_([M_,iD,O_,L_,H_],"svg");function dD(e){return e.join(" ").trim()}var Zl={},wp,k1;function hD(){if(k1)return wp;k1=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,r=/^\s*/,l=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,a=/^:\s*/,o=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,u=/^[;\s]*/,c=/^\s+|\s+$/g,d=` +`,h="/",m="*",p="",x="comment",v="declaration";function w(_,S){if(typeof _!="string")throw new TypeError("First argument must be a string");if(!_)return[];S=S||{};var T=1,k=1;function A(B){var F=B.match(n);F&&(T+=F.length);var z=B.lastIndexOf(d);k=~z?B.length-z:k+B.length}function q(){var B={line:T,column:k};return function(F){return F.position=new j(B),P(),F}}function j(B){this.start=B,this.end={line:T,column:k},this.source=S.source}j.prototype.content=_;function L(B){var F=new Error(S.source+":"+T+":"+k+": "+B);if(F.reason=B,F.filename=S.source,F.line=T,F.column=k,F.source=_,!S.silent)throw F}function R(B){var F=B.exec(_);if(F){var z=F[0];return A(z),_=_.slice(z.length),F}}function P(){R(r)}function O(B){var F;for(B=B||[];F=H();)F!==!1&&B.push(F);return B}function H(){var B=q();if(!(h!=_.charAt(0)||m!=_.charAt(1))){for(var F=2;p!=_.charAt(F)&&(m!=_.charAt(F)||h!=_.charAt(F+1));)++F;if(F+=2,p===_.charAt(F-1))return L("End of comment missing");var z=_.slice(2,F-2);return k+=2,A(z),_=_.slice(F),k+=2,B({type:x,comment:z})}}function U(){var B=q(),F=R(l);if(F){if(H(),!R(a))return L("property missing ':'");var z=R(o),G=B({type:v,property:E(F[0].replace(e,p)),value:z?E(z[0].replace(e,p)):p});return R(u),G}}function ee(){var B=[];O(B);for(var F;F=U();)F!==!1&&(B.push(F),O(B));return B}return P(),ee()}function E(_){return _?_.replace(c,p):p}return wp=w,wp}var E1;function pD(){if(E1)return Zl;E1=1;var e=Zl&&Zl.__importDefault||function(l){return l&&l.__esModule?l:{default:l}};Object.defineProperty(Zl,"__esModule",{value:!0}),Zl.default=r;const n=e(hD());function r(l,a){let o=null;if(!l||typeof l!="string")return o;const u=(0,n.default)(l),c=typeof a=="function";return u.forEach(d=>{if(d.type!=="declaration")return;const{property:h,value:m}=d;c?a(h,m,d):m&&(o=o||{},o[h]=m)}),o}return Zl}var bo={},N1;function mD(){if(N1)return bo;N1=1,Object.defineProperty(bo,"__esModule",{value:!0}),bo.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,n=/-([a-z])/g,r=/^[^-]+$/,l=/^-(webkit|moz|ms|o|khtml)-/,a=/^-(ms)-/,o=function(h){return!h||r.test(h)||e.test(h)},u=function(h,m){return m.toUpperCase()},c=function(h,m){return"".concat(m,"-")},d=function(h,m){return m===void 0&&(m={}),o(h)?h:(h=h.toLowerCase(),m.reactCompat?h=h.replace(a,c):h=h.replace(l,c),h.replace(n,u))};return bo.camelCase=d,bo}var wo,C1;function gD(){if(C1)return wo;C1=1;var e=wo&&wo.__importDefault||function(a){return a&&a.__esModule?a:{default:a}},n=e(pD()),r=mD();function l(a,o){var u={};return!a||typeof a!="string"||(0,n.default)(a,function(c,d){c&&d&&(u[(0,r.camelCase)(c,o)]=d)}),u}return l.default=l,wo=l,wo}var xD=gD();const yD=Qo(xD),B_=I_("end"),Vm=I_("start");function I_(e){return n;function n(r){const l=r&&r.position&&r.position[e]||{};if(typeof l.line=="number"&&l.line>0&&typeof l.column=="number"&&l.column>0)return{line:l.line,column:l.column,offset:typeof l.offset=="number"&&l.offset>-1?l.offset:void 0}}}function vD(e){const n=Vm(e),r=B_(e);if(n&&r)return{start:n,end:r}}function Mo(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?T1(e.position):"start"in e||"end"in e?T1(e):"line"in e||"column"in e?am(e):""}function am(e){return A1(e&&e.line)+":"+A1(e&&e.column)}function T1(e){return am(e&&e.start)+"-"+am(e&&e.end)}function A1(e){return e&&typeof e=="number"?e:1}class Xt extends Error{constructor(n,r,l){super(),typeof r=="string"&&(l=r,r=void 0);let a="",o={},u=!1;if(r&&("line"in r&&"column"in r?o={place:r}:"start"in r&&"end"in r?o={place:r}:"type"in r?o={ancestors:[r],place:r.position}:o={...r}),typeof n=="string"?a=n:!o.cause&&n&&(u=!0,a=n.message,o.cause=n),!o.ruleId&&!o.source&&typeof l=="string"){const d=l.indexOf(":");d===-1?o.ruleId=l:(o.source=l.slice(0,d),o.ruleId=l.slice(d+1))}if(!o.place&&o.ancestors&&o.ancestors){const d=o.ancestors[o.ancestors.length-1];d&&(o.place=d.position)}const c=o.place&&"start"in o.place?o.place.start:o.place;this.ancestors=o.ancestors||void 0,this.cause=o.cause||void 0,this.column=c?c.column:void 0,this.fatal=void 0,this.file="",this.message=a,this.line=c?c.line:void 0,this.name=Mo(o.place)||"1:1",this.place=o.place||void 0,this.reason=this.message,this.ruleId=o.ruleId||void 0,this.source=o.source||void 0,this.stack=u&&o.cause&&typeof o.cause.stack=="string"?o.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Xt.prototype.file="";Xt.prototype.name="";Xt.prototype.reason="";Xt.prototype.message="";Xt.prototype.stack="";Xt.prototype.column=void 0;Xt.prototype.line=void 0;Xt.prototype.ancestors=void 0;Xt.prototype.cause=void 0;Xt.prototype.fatal=void 0;Xt.prototype.place=void 0;Xt.prototype.ruleId=void 0;Xt.prototype.source=void 0;const $m={}.hasOwnProperty,bD=new Map,wD=/[A-Z]/g,SD=new Set(["table","tbody","thead","tfoot","tr"]),_D=new Set(["td","th"]),q_="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function kD(e,n){if(!n||n.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const r=n.filePath||void 0;let l;if(n.development){if(typeof n.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");l=MD(r,n.jsxDEV)}else{if(typeof n.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof n.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");l=zD(r,n.jsx,n.jsxs)}const a={Fragment:n.Fragment,ancestors:[],components:n.components||{},create:l,elementAttributeNameCase:n.elementAttributeNameCase||"react",evaluater:n.createEvaluater?n.createEvaluater():void 0,filePath:r,ignoreInvalidStyle:n.ignoreInvalidStyle||!1,passKeys:n.passKeys!==!1,passNode:n.passNode||!1,schema:n.space==="svg"?Pm:fD,stylePropertyNameCase:n.stylePropertyNameCase||"dom",tableCellAlignToStyle:n.tableCellAlignToStyle!==!1},o=U_(a,e,void 0);return o&&typeof o!="string"?o:a.create(e,a.Fragment,{children:o||void 0},void 0)}function U_(e,n,r){if(n.type==="element")return ED(e,n,r);if(n.type==="mdxFlowExpression"||n.type==="mdxTextExpression")return ND(e,n);if(n.type==="mdxJsxFlowElement"||n.type==="mdxJsxTextElement")return TD(e,n,r);if(n.type==="mdxjsEsm")return CD(e,n);if(n.type==="root")return AD(e,n,r);if(n.type==="text")return jD(e,n)}function ED(e,n,r){const l=e.schema;let a=l;n.tagName.toLowerCase()==="svg"&&l.space==="html"&&(a=Pm,e.schema=a),e.ancestors.push(n);const o=V_(e,n.tagName,!1),u=DD(e,n);let c=Fm(e,n);return SD.has(n.tagName)&&(c=c.filter(function(d){return typeof d=="string"?!tD(d):!0})),P_(e,u,o,n),Gm(u,c),e.ancestors.pop(),e.schema=l,e.create(n,o,u,r)}function ND(e,n){if(n.data&&n.data.estree&&e.evaluater){const l=n.data.estree.body[0];return l.type,e.evaluater.evaluateExpression(l.expression)}Yo(e,n.position)}function CD(e,n){if(n.data&&n.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(n.data.estree);Yo(e,n.position)}function TD(e,n,r){const l=e.schema;let a=l;n.name==="svg"&&l.space==="html"&&(a=Pm,e.schema=a),e.ancestors.push(n);const o=n.name===null?e.Fragment:V_(e,n.name,!0),u=RD(e,n),c=Fm(e,n);return P_(e,u,o,n),Gm(u,c),e.ancestors.pop(),e.schema=l,e.create(n,o,u,r)}function AD(e,n,r){const l={};return Gm(l,Fm(e,n)),e.create(n,e.Fragment,l,r)}function jD(e,n){return n.value}function P_(e,n,r,l){typeof r!="string"&&r!==e.Fragment&&e.passNode&&(n.node=l)}function Gm(e,n){if(n.length>0){const r=n.length>1?n:n[0];r&&(e.children=r)}}function zD(e,n,r){return l;function l(a,o,u,c){const h=Array.isArray(u.children)?r:n;return c?h(o,u,c):h(o,u)}}function MD(e,n){return r;function r(l,a,o,u){const c=Array.isArray(o.children),d=Vm(l);return n(a,o,u,c,{columnNumber:d?d.column-1:void 0,fileName:e,lineNumber:d?d.line:void 0},void 0)}}function DD(e,n){const r={};let l,a;for(a in n.properties)if(a!=="children"&&$m.call(n.properties,a)){const o=OD(e,a,n.properties[a]);if(o){const[u,c]=o;e.tableCellAlignToStyle&&u==="align"&&typeof c=="string"&&_D.has(n.tagName)?l=c:r[u]=c}}if(l){const o=r.style||(r.style={});o[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=l}return r}function RD(e,n){const r={};for(const l of n.attributes)if(l.type==="mdxJsxExpressionAttribute")if(l.data&&l.data.estree&&e.evaluater){const o=l.data.estree.body[0];o.type;const u=o.expression;u.type;const c=u.properties[0];c.type,Object.assign(r,e.evaluater.evaluateExpression(c.argument))}else Yo(e,n.position);else{const a=l.name;let o;if(l.value&&typeof l.value=="object")if(l.value.data&&l.value.data.estree&&e.evaluater){const c=l.value.data.estree.body[0];c.type,o=e.evaluater.evaluateExpression(c.expression)}else Yo(e,n.position);else o=l.value===null?!0:l.value;r[a]=o}return r}function Fm(e,n){const r=[];let l=-1;const a=e.passKeys?new Map:bD;for(;++l a?0:a+n:n=n>a?a:n,r=r>0?r:0,l.length<1e4)u=Array.from(l),u.unshift(n,r),e.splice(...u);else for(r&&e.splice(n,r);o 0?(Sn(e,e.length,0,n),e):n}const M1={}.hasOwnProperty;function G_(e){const n={};let r=-1;for(;++r 13&&r<32||r>126&&r<160||r>55295&&r<57344||r>64975&&r<65008||(r&65535)===65535||(r&65535)===65534||r>1114111?"�":String.fromCodePoint(r)}function Yn(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const Kt=vi(/[A-Za-z]/),Yt=vi(/[\dA-Za-z]/),$D=vi(/[#-'*+\--9=?A-Z^-~]/);function yc(e){return e!==null&&(e<32||e===127)}const om=vi(/\d/),GD=vi(/[\dA-Fa-f]/),FD=vi(/[!-/:-@[-`{-~]/);function Ee(e){return e!==null&&e<-2}function ot(e){return e!==null&&(e<0||e===32)}function qe(e){return e===-2||e===-1||e===32}const Ic=vi(new RegExp("\\p{P}|\\p{S}","u")),rl=vi(/\s/);function vi(e){return n;function n(r){return r!==null&&r>-1&&e.test(String.fromCharCode(r))}}function va(e){const n=[];let r=-1,l=0,a=0;for(;++r 55295&&o<57344){const c=e.charCodeAt(r+1);o<56320&&c>56319&&c<57344?(u=String.fromCharCode(o,c),a=1):u="�"}else u=String.fromCharCode(o);u&&(n.push(e.slice(l,r),encodeURIComponent(u)),l=r+a+1,u=""),a&&(r+=a,a=0)}return n.join("")+e.slice(l)}function Qe(e,n,r,l){const a=l?l-1:Number.POSITIVE_INFINITY;let o=0;return u;function u(d){return qe(d)?(e.enter(r),c(d)):n(d)}function c(d){return qe(d)&&o++u))return;const L=n.events.length;let R=L,P,O;for(;R--;)if(n.events[R][0]==="exit"&&n.events[R][1].type==="chunkFlow"){if(P){O=n.events[R][1].end;break}P=!0}for(S(l),j=L;j k;){const q=r[A];n.containerState=q[1],q[0].exit.call(n,e)}r.length=k}function T(){a.write([null]),o=void 0,a=void 0,n.containerState._closeFlow=void 0}}function KD(e,n,r){return Qe(e,e.attempt(this.parser.constructs.document,n,r),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function ga(e){if(e===null||ot(e)||rl(e))return 1;if(Ic(e))return 2}function qc(e,n,r){const l=[];let a=-1;for(;++a 1&&e[r][1].end.offset-e[r][1].start.offset>1?2:1;const p={...e[l][1].end},x={...e[r][1].start};R1(p,-d),R1(x,d),u={type:d>1?"strongSequence":"emphasisSequence",start:p,end:{...e[l][1].end}},c={type:d>1?"strongSequence":"emphasisSequence",start:{...e[r][1].start},end:x},o={type:d>1?"strongText":"emphasisText",start:{...e[l][1].end},end:{...e[r][1].start}},a={type:d>1?"strong":"emphasis",start:{...u.start},end:{...c.end}},e[l][1].end={...u.start},e[r][1].start={...c.end},h=[],e[l][1].end.offset-e[l][1].start.offset&&(h=Dn(h,[["enter",e[l][1],n],["exit",e[l][1],n]])),h=Dn(h,[["enter",a,n],["enter",u,n],["exit",u,n],["enter",o,n]]),h=Dn(h,qc(n.parser.constructs.insideSpan.null,e.slice(l+1,r),n)),h=Dn(h,[["exit",o,n],["enter",c,n],["exit",c,n],["exit",a,n]]),e[r][1].end.offset-e[r][1].start.offset?(m=2,h=Dn(h,[["enter",e[r][1],n],["exit",e[r][1],n]])):m=0,Sn(e,l-1,r-l+3,h),r=l+h.length-m-2;break}}for(r=-1;++r 0&&qe(j)?Qe(e,T,"linePrefix",o+1)(j):T(j)}function T(j){return j===null||Ee(j)?e.check(O1,E,A)(j):(e.enter("codeFlowValue"),k(j))}function k(j){return j===null||Ee(j)?(e.exit("codeFlowValue"),T(j)):(e.consume(j),k)}function A(j){return e.exit("codeFenced"),n(j)}function q(j,L,R){let P=0;return O;function O(F){return j.enter("lineEnding"),j.consume(F),j.exit("lineEnding"),H}function H(F){return j.enter("codeFencedFence"),qe(F)?Qe(j,U,"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(F):U(F)}function U(F){return F===c?(j.enter("codeFencedFenceSequence"),ee(F)):R(F)}function ee(F){return F===c?(P++,j.consume(F),ee):P>=u?(j.exit("codeFencedFenceSequence"),qe(F)?Qe(j,B,"whitespace")(F):B(F)):R(F)}function B(F){return F===null||Ee(F)?(j.exit("codeFencedFence"),L(F)):R(F)}}}function uR(e,n,r){const l=this;return a;function a(u){return u===null?r(u):(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),o)}function o(u){return l.parser.lazy[l.now().line]?r(u):n(u)}}const _p={name:"codeIndented",tokenize:fR},cR={partial:!0,tokenize:dR};function fR(e,n,r){const l=this;return a;function a(h){return e.enter("codeIndented"),Qe(e,o,"linePrefix",5)(h)}function o(h){const m=l.events[l.events.length-1];return m&&m[1].type==="linePrefix"&&m[2].sliceSerialize(m[1],!0).length>=4?u(h):r(h)}function u(h){return h===null?d(h):Ee(h)?e.attempt(cR,u,d)(h):(e.enter("codeFlowValue"),c(h))}function c(h){return h===null||Ee(h)?(e.exit("codeFlowValue"),u(h)):(e.consume(h),c)}function d(h){return e.exit("codeIndented"),n(h)}}function dR(e,n,r){const l=this;return a;function a(u){return l.parser.lazy[l.now().line]?r(u):Ee(u)?(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),a):Qe(e,o,"linePrefix",5)(u)}function o(u){const c=l.events[l.events.length-1];return c&&c[1].type==="linePrefix"&&c[2].sliceSerialize(c[1],!0).length>=4?n(u):Ee(u)?a(u):r(u)}}const hR={name:"codeText",previous:mR,resolve:pR,tokenize:gR};function pR(e){let n=e.length-4,r=3,l,a;if((e[r][1].type==="lineEnding"||e[r][1].type==="space")&&(e[n][1].type==="lineEnding"||e[n][1].type==="space")){for(l=r;++l =this.left.length+this.right.length)throw new RangeError("Cannot access index `"+n+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return n this.left.length?this.right.slice(this.right.length-l+this.left.length,this.right.length-n+this.left.length).reverse():this.left.slice(n).concat(this.right.slice(this.right.length-l+this.left.length).reverse())}splice(n,r,l){const a=r||0;this.setCursor(Math.trunc(n));const o=this.right.splice(this.right.length-a,Number.POSITIVE_INFINITY);return l&&So(this.left,l),o.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(n){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(n)}pushMany(n){this.setCursor(Number.POSITIVE_INFINITY),So(this.left,n)}unshift(n){this.setCursor(0),this.right.push(n)}unshiftMany(n){this.setCursor(0),So(this.right,n.reverse())}setCursor(n){if(!(n===this.left.length||n>this.left.length&&this.right.length===0||n<0&&this.left.length===0))if(n =4?n(u):e.interrupt(l.parser.constructs.flow,r,n)(u)}}function K_(e,n,r,l,a,o,u,c,d){const h=d||Number.POSITIVE_INFINITY;let m=0;return p;function p(S){return S===60?(e.enter(l),e.enter(a),e.enter(o),e.consume(S),e.exit(o),x):S===null||S===32||S===41||yc(S)?r(S):(e.enter(l),e.enter(u),e.enter(c),e.enter("chunkString",{contentType:"string"}),E(S))}function x(S){return S===62?(e.enter(o),e.consume(S),e.exit(o),e.exit(a),e.exit(l),n):(e.enter(c),e.enter("chunkString",{contentType:"string"}),v(S))}function v(S){return S===62?(e.exit("chunkString"),e.exit(c),x(S)):S===null||S===60||Ee(S)?r(S):(e.consume(S),S===92?w:v)}function w(S){return S===60||S===62||S===92?(e.consume(S),v):v(S)}function E(S){return!m&&(S===null||S===41||ot(S))?(e.exit("chunkString"),e.exit(c),e.exit(u),e.exit(l),n(S)):m 999||v===null||v===91||v===93&&!d||v===94&&!c&&"_hiddenFootnoteSupport"in u.parser.constructs?r(v):v===93?(e.exit(o),e.enter(a),e.consume(v),e.exit(a),e.exit(l),n):Ee(v)?(e.enter("lineEnding"),e.consume(v),e.exit("lineEnding"),m):(e.enter("chunkString",{contentType:"string"}),p(v))}function p(v){return v===null||v===91||v===93||Ee(v)||c++>999?(e.exit("chunkString"),m(v)):(e.consume(v),d||(d=!qe(v)),v===92?x:p)}function x(v){return v===91||v===92||v===93?(e.consume(v),c++,p):p(v)}}function W_(e,n,r,l,a,o){let u;return c;function c(x){return x===34||x===39||x===40?(e.enter(l),e.enter(a),e.consume(x),e.exit(a),u=x===40?41:x,d):r(x)}function d(x){return x===u?(e.enter(a),e.consume(x),e.exit(a),e.exit(l),n):(e.enter(o),h(x))}function h(x){return x===u?(e.exit(o),d(u)):x===null?r(x):Ee(x)?(e.enter("lineEnding"),e.consume(x),e.exit("lineEnding"),Qe(e,h,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),m(x))}function m(x){return x===u||x===null||Ee(x)?(e.exit("chunkString"),h(x)):(e.consume(x),x===92?p:m)}function p(x){return x===u||x===92?(e.consume(x),m):m(x)}}function Do(e,n){let r;return l;function l(a){return Ee(a)?(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),r=!0,l):qe(a)?Qe(e,l,r?"linePrefix":"lineSuffix")(a):n(a)}}const kR={name:"definition",tokenize:NR},ER={partial:!0,tokenize:CR};function NR(e,n,r){const l=this;let a;return o;function o(v){return e.enter("definition"),u(v)}function u(v){return J_.call(l,e,c,r,"definitionLabel","definitionLabelMarker","definitionLabelString")(v)}function c(v){return a=Yn(l.sliceSerialize(l.events[l.events.length-1][1]).slice(1,-1)),v===58?(e.enter("definitionMarker"),e.consume(v),e.exit("definitionMarker"),d):r(v)}function d(v){return ot(v)?Do(e,h)(v):h(v)}function h(v){return K_(e,m,r,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(v)}function m(v){return e.attempt(ER,p,p)(v)}function p(v){return qe(v)?Qe(e,x,"whitespace")(v):x(v)}function x(v){return v===null||Ee(v)?(e.exit("definition"),l.parser.defined.push(a),n(v)):r(v)}}function CR(e,n,r){return l;function l(c){return ot(c)?Do(e,a)(c):r(c)}function a(c){return W_(e,o,r,"definitionTitle","definitionTitleMarker","definitionTitleString")(c)}function o(c){return qe(c)?Qe(e,u,"whitespace")(c):u(c)}function u(c){return c===null||Ee(c)?n(c):r(c)}}const TR={name:"hardBreakEscape",tokenize:AR};function AR(e,n,r){return l;function l(o){return e.enter("hardBreakEscape"),e.consume(o),a}function a(o){return Ee(o)?(e.exit("hardBreakEscape"),n(o)):r(o)}}const jR={name:"headingAtx",resolve:zR,tokenize:MR};function zR(e,n){let r=e.length-2,l=3,a,o;return e[l][1].type==="whitespace"&&(l+=2),r-2>l&&e[r][1].type==="whitespace"&&(r-=2),e[r][1].type==="atxHeadingSequence"&&(l===r-1||r-4>l&&e[r-2][1].type==="whitespace")&&(r-=l+1===r?2:4),r>l&&(a={type:"atxHeadingText",start:e[l][1].start,end:e[r][1].end},o={type:"chunkText",start:e[l][1].start,end:e[r][1].end,contentType:"text"},Sn(e,l,r-l+1,[["enter",a,n],["enter",o,n],["exit",o,n],["exit",a,n]])),e}function MR(e,n,r){let l=0;return a;function a(m){return e.enter("atxHeading"),o(m)}function o(m){return e.enter("atxHeadingSequence"),u(m)}function u(m){return m===35&&l++<6?(e.consume(m),u):m===null||ot(m)?(e.exit("atxHeadingSequence"),c(m)):r(m)}function c(m){return m===35?(e.enter("atxHeadingSequence"),d(m)):m===null||Ee(m)?(e.exit("atxHeading"),n(m)):qe(m)?Qe(e,c,"whitespace")(m):(e.enter("atxHeadingText"),h(m))}function d(m){return m===35?(e.consume(m),d):(e.exit("atxHeadingSequence"),c(m))}function h(m){return m===null||m===35||ot(m)?(e.exit("atxHeadingText"),c(m)):(e.consume(m),h)}}const DR=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],H1=["pre","script","style","textarea"],RR={concrete:!0,name:"htmlFlow",resolveTo:HR,tokenize:BR},OR={partial:!0,tokenize:qR},LR={partial:!0,tokenize:IR};function HR(e){let n=e.length;for(;n--&&!(e[n][0]==="enter"&&e[n][1].type==="htmlFlow"););return n>1&&e[n-2][1].type==="linePrefix"&&(e[n][1].start=e[n-2][1].start,e[n+1][1].start=e[n-2][1].start,e.splice(n-2,2)),e}function BR(e,n,r){const l=this;let a,o,u,c,d;return h;function h(N){return m(N)}function m(N){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(N),p}function p(N){return N===33?(e.consume(N),x):N===47?(e.consume(N),o=!0,E):N===63?(e.consume(N),a=3,l.interrupt?n:M):Kt(N)?(e.consume(N),u=String.fromCharCode(N),_):r(N)}function x(N){return N===45?(e.consume(N),a=2,v):N===91?(e.consume(N),a=5,c=0,w):Kt(N)?(e.consume(N),a=4,l.interrupt?n:M):r(N)}function v(N){return N===45?(e.consume(N),l.interrupt?n:M):r(N)}function w(N){const $="CDATA[";return N===$.charCodeAt(c++)?(e.consume(N),c===$.length?l.interrupt?n:U:w):r(N)}function E(N){return Kt(N)?(e.consume(N),u=String.fromCharCode(N),_):r(N)}function _(N){if(N===null||N===47||N===62||ot(N)){const $=N===47,X=u.toLowerCase();return!$&&!o&&H1.includes(X)?(a=1,l.interrupt?n(N):U(N)):DR.includes(u.toLowerCase())?(a=6,$?(e.consume(N),S):l.interrupt?n(N):U(N)):(a=7,l.interrupt&&!l.parser.lazy[l.now().line]?r(N):o?T(N):k(N))}return N===45||Yt(N)?(e.consume(N),u+=String.fromCharCode(N),_):r(N)}function S(N){return N===62?(e.consume(N),l.interrupt?n:U):r(N)}function T(N){return qe(N)?(e.consume(N),T):O(N)}function k(N){return N===47?(e.consume(N),O):N===58||N===95||Kt(N)?(e.consume(N),A):qe(N)?(e.consume(N),k):O(N)}function A(N){return N===45||N===46||N===58||N===95||Yt(N)?(e.consume(N),A):q(N)}function q(N){return N===61?(e.consume(N),j):qe(N)?(e.consume(N),q):k(N)}function j(N){return N===null||N===60||N===61||N===62||N===96?r(N):N===34||N===39?(e.consume(N),d=N,L):qe(N)?(e.consume(N),j):R(N)}function L(N){return N===d?(e.consume(N),d=null,P):N===null||Ee(N)?r(N):(e.consume(N),L)}function R(N){return N===null||N===34||N===39||N===47||N===60||N===61||N===62||N===96||ot(N)?q(N):(e.consume(N),R)}function P(N){return N===47||N===62||qe(N)?k(N):r(N)}function O(N){return N===62?(e.consume(N),H):r(N)}function H(N){return N===null||Ee(N)?U(N):qe(N)?(e.consume(N),H):r(N)}function U(N){return N===45&&a===2?(e.consume(N),z):N===60&&a===1?(e.consume(N),G):N===62&&a===4?(e.consume(N),I):N===63&&a===3?(e.consume(N),M):N===93&&a===5?(e.consume(N),K):Ee(N)&&(a===6||a===7)?(e.exit("htmlFlowData"),e.check(OR,Y,ee)(N)):N===null||Ee(N)?(e.exit("htmlFlowData"),ee(N)):(e.consume(N),U)}function ee(N){return e.check(LR,B,Y)(N)}function B(N){return e.enter("lineEnding"),e.consume(N),e.exit("lineEnding"),F}function F(N){return N===null||Ee(N)?ee(N):(e.enter("htmlFlowData"),U(N))}function z(N){return N===45?(e.consume(N),M):U(N)}function G(N){return N===47?(e.consume(N),u="",Q):U(N)}function Q(N){if(N===62){const $=u.toLowerCase();return H1.includes($)?(e.consume(N),I):U(N)}return Kt(N)&&u.length<8?(e.consume(N),u+=String.fromCharCode(N),Q):U(N)}function K(N){return N===93?(e.consume(N),M):U(N)}function M(N){return N===62?(e.consume(N),I):N===45&&a===2?(e.consume(N),M):U(N)}function I(N){return N===null||Ee(N)?(e.exit("htmlFlowData"),Y(N)):(e.consume(N),I)}function Y(N){return e.exit("htmlFlow"),n(N)}}function IR(e,n,r){const l=this;return a;function a(u){return Ee(u)?(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),o):r(u)}function o(u){return l.parser.lazy[l.now().line]?r(u):n(u)}}function qR(e,n,r){return l;function l(a){return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),e.attempt(as,n,r)}}const UR={name:"htmlText",tokenize:PR};function PR(e,n,r){const l=this;let a,o,u;return c;function c(M){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(M),d}function d(M){return M===33?(e.consume(M),h):M===47?(e.consume(M),q):M===63?(e.consume(M),k):Kt(M)?(e.consume(M),R):r(M)}function h(M){return M===45?(e.consume(M),m):M===91?(e.consume(M),o=0,w):Kt(M)?(e.consume(M),T):r(M)}function m(M){return M===45?(e.consume(M),v):r(M)}function p(M){return M===null?r(M):M===45?(e.consume(M),x):Ee(M)?(u=p,G(M)):(e.consume(M),p)}function x(M){return M===45?(e.consume(M),v):p(M)}function v(M){return M===62?z(M):M===45?x(M):p(M)}function w(M){const I="CDATA[";return M===I.charCodeAt(o++)?(e.consume(M),o===I.length?E:w):r(M)}function E(M){return M===null?r(M):M===93?(e.consume(M),_):Ee(M)?(u=E,G(M)):(e.consume(M),E)}function _(M){return M===93?(e.consume(M),S):E(M)}function S(M){return M===62?z(M):M===93?(e.consume(M),S):E(M)}function T(M){return M===null||M===62?z(M):Ee(M)?(u=T,G(M)):(e.consume(M),T)}function k(M){return M===null?r(M):M===63?(e.consume(M),A):Ee(M)?(u=k,G(M)):(e.consume(M),k)}function A(M){return M===62?z(M):k(M)}function q(M){return Kt(M)?(e.consume(M),j):r(M)}function j(M){return M===45||Yt(M)?(e.consume(M),j):L(M)}function L(M){return Ee(M)?(u=L,G(M)):qe(M)?(e.consume(M),L):z(M)}function R(M){return M===45||Yt(M)?(e.consume(M),R):M===47||M===62||ot(M)?P(M):r(M)}function P(M){return M===47?(e.consume(M),z):M===58||M===95||Kt(M)?(e.consume(M),O):Ee(M)?(u=P,G(M)):qe(M)?(e.consume(M),P):z(M)}function O(M){return M===45||M===46||M===58||M===95||Yt(M)?(e.consume(M),O):H(M)}function H(M){return M===61?(e.consume(M),U):Ee(M)?(u=H,G(M)):qe(M)?(e.consume(M),H):P(M)}function U(M){return M===null||M===60||M===61||M===62||M===96?r(M):M===34||M===39?(e.consume(M),a=M,ee):Ee(M)?(u=U,G(M)):qe(M)?(e.consume(M),U):(e.consume(M),B)}function ee(M){return M===a?(e.consume(M),a=void 0,F):M===null?r(M):Ee(M)?(u=ee,G(M)):(e.consume(M),ee)}function B(M){return M===null||M===34||M===39||M===60||M===61||M===96?r(M):M===47||M===62||ot(M)?P(M):(e.consume(M),B)}function F(M){return M===47||M===62||ot(M)?P(M):r(M)}function z(M){return M===62?(e.consume(M),e.exit("htmlTextData"),e.exit("htmlText"),n):r(M)}function G(M){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(M),e.exit("lineEnding"),Q}function Q(M){return qe(M)?Qe(e,K,"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(M):K(M)}function K(M){return e.enter("htmlTextData"),u(M)}}const Qm={name:"labelEnd",resolveAll:FR,resolveTo:YR,tokenize:XR},VR={tokenize:QR},$R={tokenize:ZR},GR={tokenize:KR};function FR(e){let n=-1;const r=[];for(;++n =3&&(h===null||Ee(h))?(e.exit("thematicBreak"),n(h)):r(h)}function d(h){return h===a?(e.consume(h),l++,d):(e.exit("thematicBreakSequence"),qe(h)?Qe(e,c,"whitespace")(h):c(h))}}const sn={continuation:{tokenize:oO},exit:uO,name:"list",tokenize:aO},iO={partial:!0,tokenize:cO},lO={partial:!0,tokenize:sO};function aO(e,n,r){const l=this,a=l.events[l.events.length-1];let o=a&&a[1].type==="linePrefix"?a[2].sliceSerialize(a[1],!0).length:0,u=0;return c;function c(v){const w=l.containerState.type||(v===42||v===43||v===45?"listUnordered":"listOrdered");if(w==="listUnordered"?!l.containerState.marker||v===l.containerState.marker:om(v)){if(l.containerState.type||(l.containerState.type=w,e.enter(w,{_container:!0})),w==="listUnordered")return e.enter("listItemPrefix"),v===42||v===45?e.check(nc,r,h)(v):h(v);if(!l.interrupt||v===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),d(v)}return r(v)}function d(v){return om(v)&&++u<10?(e.consume(v),d):(!l.interrupt||u<2)&&(l.containerState.marker?v===l.containerState.marker:v===41||v===46)?(e.exit("listItemValue"),h(v)):r(v)}function h(v){return e.enter("listItemMarker"),e.consume(v),e.exit("listItemMarker"),l.containerState.marker=l.containerState.marker||v,e.check(as,l.interrupt?r:m,e.attempt(iO,x,p))}function m(v){return l.containerState.initialBlankLine=!0,o++,x(v)}function p(v){return qe(v)?(e.enter("listItemPrefixWhitespace"),e.consume(v),e.exit("listItemPrefixWhitespace"),x):r(v)}function x(v){return l.containerState.size=o+l.sliceSerialize(e.exit("listItemPrefix"),!0).length,n(v)}}function oO(e,n,r){const l=this;return l.containerState._closeFlow=void 0,e.check(as,a,o);function a(c){return l.containerState.furtherBlankLines=l.containerState.furtherBlankLines||l.containerState.initialBlankLine,Qe(e,n,"listItemIndent",l.containerState.size+1)(c)}function o(c){return l.containerState.furtherBlankLines||!qe(c)?(l.containerState.furtherBlankLines=void 0,l.containerState.initialBlankLine=void 0,u(c)):(l.containerState.furtherBlankLines=void 0,l.containerState.initialBlankLine=void 0,e.attempt(lO,n,u)(c))}function u(c){return l.containerState._closeFlow=!0,l.interrupt=void 0,Qe(e,e.attempt(sn,n,r),"linePrefix",l.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(c)}}function sO(e,n,r){const l=this;return Qe(e,a,"listItemIndent",l.containerState.size+1);function a(o){const u=l.events[l.events.length-1];return u&&u[1].type==="listItemIndent"&&u[2].sliceSerialize(u[1],!0).length===l.containerState.size?n(o):r(o)}}function uO(e){e.exit(this.containerState.type)}function cO(e,n,r){const l=this;return Qe(e,a,"listItemPrefixWhitespace",l.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function a(o){const u=l.events[l.events.length-1];return!qe(o)&&u&&u[1].type==="listItemPrefixWhitespace"?n(o):r(o)}}const B1={name:"setextUnderline",resolveTo:fO,tokenize:dO};function fO(e,n){let r=e.length,l,a,o;for(;r--;)if(e[r][0]==="enter"){if(e[r][1].type==="content"){l=r;break}e[r][1].type==="paragraph"&&(a=r)}else e[r][1].type==="content"&&e.splice(r,1),!o&&e[r][1].type==="definition"&&(o=r);const u={type:"setextHeading",start:{...e[l][1].start},end:{...e[e.length-1][1].end}};return e[a][1].type="setextHeadingText",o?(e.splice(a,0,["enter",u,n]),e.splice(o+1,0,["exit",e[l][1],n]),e[l][1].end={...e[o][1].end}):e[l][1]=u,e.push(["exit",u,n]),e}function dO(e,n,r){const l=this;let a;return o;function o(h){let m=l.events.length,p;for(;m--;)if(l.events[m][1].type!=="lineEnding"&&l.events[m][1].type!=="linePrefix"&&l.events[m][1].type!=="content"){p=l.events[m][1].type==="paragraph";break}return!l.parser.lazy[l.now().line]&&(l.interrupt||p)?(e.enter("setextHeadingLine"),a=h,u(h)):r(h)}function u(h){return e.enter("setextHeadingLineSequence"),c(h)}function c(h){return h===a?(e.consume(h),c):(e.exit("setextHeadingLineSequence"),qe(h)?Qe(e,d,"lineSuffix")(h):d(h))}function d(h){return h===null||Ee(h)?(e.exit("setextHeadingLine"),n(h)):r(h)}}const hO={tokenize:pO};function pO(e){const n=this,r=e.attempt(as,l,e.attempt(this.parser.constructs.flowInitial,a,Qe(e,e.attempt(this.parser.constructs.flow,a,e.attempt(vR,a)),"linePrefix")));return r;function l(o){if(o===null){e.consume(o);return}return e.enter("lineEndingBlank"),e.consume(o),e.exit("lineEndingBlank"),n.currentConstruct=void 0,r}function a(o){if(o===null){e.consume(o);return}return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),n.currentConstruct=void 0,r}}const mO={resolveAll:tk()},gO=ek("string"),xO=ek("text");function ek(e){return{resolveAll:tk(e==="text"?yO:void 0),tokenize:n};function n(r){const l=this,a=this.parser.constructs[e],o=r.attempt(a,u,c);return u;function u(m){return h(m)?o(m):c(m)}function c(m){if(m===null){r.consume(m);return}return r.enter("data"),r.consume(m),d}function d(m){return h(m)?(r.exit("data"),o(m)):(r.consume(m),d)}function h(m){if(m===null)return!0;const p=a[m];let x=-1;if(p)for(;++x -1){const c=u[0];typeof c=="string"?u[0]=c.slice(l):u.shift()}o>0&&u.push(e[a].slice(0,o))}return u}function zO(e,n){let r=-1;const l=[];let a;for(;++r 0){const Qt=Ne.tokenStack[Ne.tokenStack.length-1];(Qt[1]||I1).call(Ne,void 0,Qt[0])}for(ge.position={start:mi(ue.length>0?ue[0][1].start:{line:1,column:1,offset:0}),end:mi(ue.length>0?ue[ue.length-2][1].end:{line:1,column:1,offset:0})},Xe=-1;++Xe 0){const Qt=Ne.tokenStack[Ne.tokenStack.length-1];(Qt[1]||q1).call(Ne,void 0,Qt[0])}for(ge.position={start:mi(ue.length>0?ue[0][1].start:{line:1,column:1,offset:0}),end:mi(ue.length>0?ue[ue.length-2][1].end:{line:1,column:1,offset:0})},Xe=-1;++Xe 0&&(l.className=["language-"+a[0]]);let o={type:"element",tagName:"code",properties:l,children:[{type:"text",value:r}]};return n.meta&&(o.data={meta:n.meta}),e.patch(n,o),o=e.applyData(n,o),o={type:"element",tagName:"pre",properties:{},children:[o]},e.patch(n,o),o}function GO(e,n){const r={type:"element",tagName:"del",properties:{},children:e.all(n)};return e.patch(n,r),e.applyData(n,r)}function FO(e,n){const r={type:"element",tagName:"em",properties:{},children:e.all(n)};return e.patch(n,r),e.applyData(n,r)}function YO(e,n){const r=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",l=String(n.identifier).toUpperCase(),a=va(l.toLowerCase()),o=e.footnoteOrder.indexOf(l);let u,c=e.footnoteCounts.get(l);c===void 0?(c=0,e.footnoteOrder.push(l),u=e.footnoteOrder.length):u=o+1,c+=1,e.footnoteCounts.set(l,c);const d={type:"element",tagName:"a",properties:{href:"#"+r+"fn-"+a,id:r+"fnref-"+a+(c>1?"-"+c:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(u)}]};e.patch(n,d);const h={type:"element",tagName:"sup",properties:{},children:[d]};return e.patch(n,h),e.applyData(n,h)}function XO(e,n){const r={type:"element",tagName:"h"+n.depth,properties:{},children:e.all(n)};return e.patch(n,r),e.applyData(n,r)}function QO(e,n){if(e.options.allowDangerousHtml){const r={type:"raw",value:n.value};return e.patch(n,r),e.applyData(n,r)}}function ik(e,n){const r=n.referenceType;let l="]";if(r==="collapsed"?l+="[]":r==="full"&&(l+="["+(n.label||n.identifier)+"]"),n.type==="imageReference")return[{type:"text",value:"!["+n.alt+l}];const a=e.all(n),o=a[0];o&&o.type==="text"?o.value="["+o.value:a.unshift({type:"text",value:"["});const u=a[a.length-1];return u&&u.type==="text"?u.value+=l:a.push({type:"text",value:l}),a}function ZO(e,n){const r=String(n.identifier).toUpperCase(),l=e.definitionById.get(r);if(!l)return ik(e,n);const a={src:va(l.url||""),alt:n.alt};l.title!==null&&l.title!==void 0&&(a.title=l.title);const o={type:"element",tagName:"img",properties:a,children:[]};return e.patch(n,o),e.applyData(n,o)}function KO(e,n){const r={src:va(n.url)};n.alt!==null&&n.alt!==void 0&&(r.alt=n.alt),n.title!==null&&n.title!==void 0&&(r.title=n.title);const l={type:"element",tagName:"img",properties:r,children:[]};return e.patch(n,l),e.applyData(n,l)}function JO(e,n){const r={type:"text",value:n.value.replace(/\r?\n|\r/g," ")};e.patch(n,r);const l={type:"element",tagName:"code",properties:{},children:[r]};return e.patch(n,l),e.applyData(n,l)}function WO(e,n){const r=String(n.identifier).toUpperCase(),l=e.definitionById.get(r);if(!l)return ik(e,n);const a={href:va(l.url||"")};l.title!==null&&l.title!==void 0&&(a.title=l.title);const o={type:"element",tagName:"a",properties:a,children:e.all(n)};return e.patch(n,o),e.applyData(n,o)}function e6(e,n){const r={href:va(n.url)};n.title!==null&&n.title!==void 0&&(r.title=n.title);const l={type:"element",tagName:"a",properties:r,children:e.all(n)};return e.patch(n,l),e.applyData(n,l)}function t6(e,n,r){const l=e.all(n),a=r?n6(r):lk(n),o={},u=[];if(typeof n.checked=="boolean"){const m=l[0];let p;m&&m.type==="element"&&m.tagName==="p"?p=m:(p={type:"element",tagName:"p",properties:{},children:[]},l.unshift(p)),p.children.length>0&&p.children.unshift({type:"text",value:" "}),p.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:n.checked,disabled:!0},children:[]}),o.className=["task-list-item"]}let c=-1;for(;++c 1}function r6(e,n){const r={},l=e.all(n);let a=-1;for(typeof n.start=="number"&&n.start!==1&&(r.start=n.start);++a 0){const u={type:"element",tagName:"tbody",properties:{},children:e.wrap(r,!0)},c=Pm(n.children[1]),d=B_(n.children[n.children.length-1]);c&&d&&(u.position={start:c,end:d}),a.push(u)}const o={type:"element",tagName:"table",properties:{},children:e.wrap(a,!0)};return e.patch(n,o),e.applyData(n,o)}function s6(e,n,r){const l=r?r.children:void 0,o=(l?l.indexOf(n):1)===0?"th":"td",u=r&&r.type==="table"?r.align:void 0,c=u?u.length:n.children.length;let d=-1;const h=[];for(;++d 0,!0),l[0]),a=l.index+l[0].length,l=r.exec(n);return o.push(P1(n.slice(a),a>0,!1)),o.join("")}function P1(e,n,r){let l=0,a=e.length;if(n){let o=e.codePointAt(l);for(;o===q1||o===U1;)l++,o=e.codePointAt(l)}if(r){let o=e.codePointAt(a-1);for(;o===q1||o===U1;)a--,o=e.codePointAt(a-1)}return a>l?e.slice(l,a):""}function f6(e,n){const r={type:"text",value:c6(String(n.value))};return e.patch(n,r),e.applyData(n,r)}function d6(e,n){const r={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(n,r),e.applyData(n,r)}const h6={blockquote:PO,break:VO,code:$O,delete:GO,emphasis:FO,footnoteReference:YO,heading:XO,html:QO,imageReference:ZO,image:KO,inlineCode:JO,linkReference:WO,link:e6,listItem:t6,list:r6,paragraph:i6,root:l6,strong:a6,table:o6,tableCell:u6,tableRow:s6,text:f6,thematicBreak:d6,toml:Gu,yaml:Gu,definition:Gu,footnoteDefinition:Gu};function Gu(){}const ak=-1,qc=0,Ro=1,vc=2,Qm=3,Zm=4,Km=5,Jm=6,ok=7,sk=8,V1=typeof self=="object"?self:globalThis,p6=(e,n)=>{const r=(a,o)=>(e.set(o,a),a),l=a=>{if(e.has(a))return e.get(a);const[o,u]=n[a];switch(o){case qc:case ak:return r(u,a);case Ro:{const c=r([],a);for(const d of u)c.push(l(d));return c}case vc:{const c=r({},a);for(const[d,h]of u)c[l(d)]=l(h);return c}case Qm:return r(new Date(u),a);case Zm:{const{source:c,flags:d}=u;return r(new RegExp(c,d),a)}case Km:{const c=r(new Map,a);for(const[d,h]of u)c.set(l(d),l(h));return c}case Jm:{const c=r(new Set,a);for(const d of u)c.add(l(d));return c}case ok:{const{name:c,message:d}=u;return r(new V1[c](d),a)}case sk:return r(BigInt(u),a);case"BigInt":return r(Object(BigInt(u)),a);case"ArrayBuffer":return r(new Uint8Array(u).buffer,u);case"DataView":{const{buffer:c}=new Uint8Array(u);return r(new DataView(c),u)}}return r(new V1[o](u),a)};return l},$1=e=>p6(new Map,e)(0),Kl="",{toString:m6}={},{keys:g6}=Object,_o=e=>{const n=typeof e;if(n!=="object"||!e)return[qc,n];const r=m6.call(e).slice(8,-1);switch(r){case"Array":return[Ro,Kl];case"Object":return[vc,Kl];case"Date":return[Qm,Kl];case"RegExp":return[Zm,Kl];case"Map":return[Km,Kl];case"Set":return[Jm,Kl];case"DataView":return[Ro,r]}return r.includes("Array")?[Ro,r]:r.includes("Error")?[ok,r]:[vc,r]},Fu=([e,n])=>e===qc&&(n==="function"||n==="symbol"),x6=(e,n,r,l)=>{const a=(u,c)=>{const d=l.push(u)-1;return r.set(c,d),d},o=u=>{if(r.has(u))return r.get(u);let[c,d]=_o(u);switch(c){case qc:{let m=u;switch(d){case"bigint":c=sk,m=u.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+d);m=null;break;case"undefined":return a([ak],u)}return a([c,m],u)}case Ro:{if(d){let x=u;return d==="DataView"?x=new Uint8Array(u.buffer):d==="ArrayBuffer"&&(x=new Uint8Array(u)),a([d,[...x]],u)}const m=[],p=a([c,m],u);for(const x of u)m.push(o(x));return p}case vc:{if(d)switch(d){case"BigInt":return a([d,u.toString()],u);case"Boolean":case"Number":case"String":return a([d,u.valueOf()],u)}if(n&&"toJSON"in u)return o(u.toJSON());const m=[],p=a([c,m],u);for(const x of g6(u))(e||!Fu(_o(u[x])))&&m.push([o(x),o(u[x])]);return p}case Qm:return a([c,u.toISOString()],u);case Zm:{const{source:m,flags:p}=u;return a([c,{source:m,flags:p}],u)}case Km:{const m=[],p=a([c,m],u);for(const[x,v]of u)(e||!(Fu(_o(x))||Fu(_o(v))))&&m.push([o(x),o(v)]);return p}case Jm:{const m=[],p=a([c,m],u);for(const x of u)(e||!Fu(_o(x)))&&m.push(o(x));return p}}const{message:h}=u;return a([c,{name:d,message:h}],u)};return o},G1=(e,{json:n,lossy:r}={})=>{const l=[];return x6(!(n||r),!!n,new Map,l)(e),l},bc=typeof structuredClone=="function"?(e,n)=>n&&("json"in n||"lossy"in n)?$1(G1(e,n)):structuredClone(e):(e,n)=>$1(G1(e,n));function y6(e,n){const r=[{type:"text",value:"↩"}];return n>1&&r.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(n)}]}),r}function v6(e,n){return"Back to reference "+(e+1)+(n>1?"-"+n:"")}function b6(e){const n=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=e.options.footnoteBackContent||y6,l=e.options.footnoteBackLabel||v6,a=e.options.footnoteLabel||"Footnotes",o=e.options.footnoteLabelTagName||"h2",u=e.options.footnoteLabelProperties||{className:["sr-only"]},c=[];let d=-1;for(;++d 0&&w.push({type:"text",value:" "});let T=typeof r=="string"?r:r(d,v);typeof T=="string"&&(T={type:"text",value:T}),w.push({type:"element",tagName:"a",properties:{href:"#"+n+"fnref-"+x+(v>1?"-"+v:""),dataFootnoteBackref:"",ariaLabel:typeof l=="string"?l:l(d,v),className:["data-footnote-backref"]},children:Array.isArray(T)?T:[T]})}const S=m[m.length-1];if(S&&S.type==="element"&&S.tagName==="p"){const T=S.children[S.children.length-1];T&&T.type==="text"?T.value+=" ":S.children.push({type:"text",value:" "}),S.children.push(...w)}else m.push(...w);const _={type:"element",tagName:"li",properties:{id:n+"fn-"+x},children:e.wrap(m,!0)};e.patch(h,_),c.push(_)}if(c.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:o,properties:{...bc(u),id:"footnote-label"},children:[{type:"text",value:a}]},{type:"text",value:` +`});const h={type:"element",tagName:"li",properties:o,children:u};return e.patch(n,h),e.applyData(n,h)}function n6(e){let n=!1;if(e.type==="list"){n=e.spread||!1;const r=e.children;let l=-1;for(;!n&&++l 1}function r6(e,n){const r={},l=e.all(n);let a=-1;for(typeof n.start=="number"&&n.start!==1&&(r.start=n.start);++a 0){const u={type:"element",tagName:"tbody",properties:{},children:e.wrap(r,!0)},c=Vm(n.children[1]),d=B_(n.children[n.children.length-1]);c&&d&&(u.position={start:c,end:d}),a.push(u)}const o={type:"element",tagName:"table",properties:{},children:e.wrap(a,!0)};return e.patch(n,o),e.applyData(n,o)}function s6(e,n,r){const l=r?r.children:void 0,o=(l?l.indexOf(n):1)===0?"th":"td",u=r&&r.type==="table"?r.align:void 0,c=u?u.length:n.children.length;let d=-1;const h=[];for(;++d 0,!0),l[0]),a=l.index+l[0].length,l=r.exec(n);return o.push(V1(n.slice(a),a>0,!1)),o.join("")}function V1(e,n,r){let l=0,a=e.length;if(n){let o=e.codePointAt(l);for(;o===U1||o===P1;)l++,o=e.codePointAt(l)}if(r){let o=e.codePointAt(a-1);for(;o===U1||o===P1;)a--,o=e.codePointAt(a-1)}return a>l?e.slice(l,a):""}function f6(e,n){const r={type:"text",value:c6(String(n.value))};return e.patch(n,r),e.applyData(n,r)}function d6(e,n){const r={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(n,r),e.applyData(n,r)}const h6={blockquote:PO,break:VO,code:$O,delete:GO,emphasis:FO,footnoteReference:YO,heading:XO,html:QO,imageReference:ZO,image:KO,inlineCode:JO,linkReference:WO,link:e6,listItem:t6,list:r6,paragraph:i6,root:l6,strong:a6,table:o6,tableCell:u6,tableRow:s6,text:f6,thematicBreak:d6,toml:Gu,yaml:Gu,definition:Gu,footnoteDefinition:Gu};function Gu(){}const ak=-1,Uc=0,Ro=1,vc=2,Zm=3,Km=4,Jm=5,Wm=6,ok=7,sk=8,$1=typeof self=="object"?self:globalThis,p6=(e,n)=>{const r=(a,o)=>(e.set(o,a),a),l=a=>{if(e.has(a))return e.get(a);const[o,u]=n[a];switch(o){case Uc:case ak:return r(u,a);case Ro:{const c=r([],a);for(const d of u)c.push(l(d));return c}case vc:{const c=r({},a);for(const[d,h]of u)c[l(d)]=l(h);return c}case Zm:return r(new Date(u),a);case Km:{const{source:c,flags:d}=u;return r(new RegExp(c,d),a)}case Jm:{const c=r(new Map,a);for(const[d,h]of u)c.set(l(d),l(h));return c}case Wm:{const c=r(new Set,a);for(const d of u)c.add(l(d));return c}case ok:{const{name:c,message:d}=u;return r(new $1[c](d),a)}case sk:return r(BigInt(u),a);case"BigInt":return r(Object(BigInt(u)),a);case"ArrayBuffer":return r(new Uint8Array(u).buffer,u);case"DataView":{const{buffer:c}=new Uint8Array(u);return r(new DataView(c),u)}}return r(new $1[o](u),a)};return l},G1=e=>p6(new Map,e)(0),Kl="",{toString:m6}={},{keys:g6}=Object,_o=e=>{const n=typeof e;if(n!=="object"||!e)return[Uc,n];const r=m6.call(e).slice(8,-1);switch(r){case"Array":return[Ro,Kl];case"Object":return[vc,Kl];case"Date":return[Zm,Kl];case"RegExp":return[Km,Kl];case"Map":return[Jm,Kl];case"Set":return[Wm,Kl];case"DataView":return[Ro,r]}return r.includes("Array")?[Ro,r]:r.includes("Error")?[ok,r]:[vc,r]},Fu=([e,n])=>e===Uc&&(n==="function"||n==="symbol"),x6=(e,n,r,l)=>{const a=(u,c)=>{const d=l.push(u)-1;return r.set(c,d),d},o=u=>{if(r.has(u))return r.get(u);let[c,d]=_o(u);switch(c){case Uc:{let m=u;switch(d){case"bigint":c=sk,m=u.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+d);m=null;break;case"undefined":return a([ak],u)}return a([c,m],u)}case Ro:{if(d){let x=u;return d==="DataView"?x=new Uint8Array(u.buffer):d==="ArrayBuffer"&&(x=new Uint8Array(u)),a([d,[...x]],u)}const m=[],p=a([c,m],u);for(const x of u)m.push(o(x));return p}case vc:{if(d)switch(d){case"BigInt":return a([d,u.toString()],u);case"Boolean":case"Number":case"String":return a([d,u.valueOf()],u)}if(n&&"toJSON"in u)return o(u.toJSON());const m=[],p=a([c,m],u);for(const x of g6(u))(e||!Fu(_o(u[x])))&&m.push([o(x),o(u[x])]);return p}case Zm:return a([c,u.toISOString()],u);case Km:{const{source:m,flags:p}=u;return a([c,{source:m,flags:p}],u)}case Jm:{const m=[],p=a([c,m],u);for(const[x,v]of u)(e||!(Fu(_o(x))||Fu(_o(v))))&&m.push([o(x),o(v)]);return p}case Wm:{const m=[],p=a([c,m],u);for(const x of u)(e||!Fu(_o(x)))&&m.push(o(x));return p}}const{message:h}=u;return a([c,{name:d,message:h}],u)};return o},F1=(e,{json:n,lossy:r}={})=>{const l=[];return x6(!(n||r),!!n,new Map,l)(e),l},bc=typeof structuredClone=="function"?(e,n)=>n&&("json"in n||"lossy"in n)?G1(F1(e,n)):structuredClone(e):(e,n)=>G1(F1(e,n));function y6(e,n){const r=[{type:"text",value:"↩"}];return n>1&&r.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(n)}]}),r}function v6(e,n){return"Back to reference "+(e+1)+(n>1?"-"+n:"")}function b6(e){const n=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=e.options.footnoteBackContent||y6,l=e.options.footnoteBackLabel||v6,a=e.options.footnoteLabel||"Footnotes",o=e.options.footnoteLabelTagName||"h2",u=e.options.footnoteLabelProperties||{className:["sr-only"]},c=[];let d=-1;for(;++d 0&&w.push({type:"text",value:" "});let T=typeof r=="string"?r:r(d,v);typeof T=="string"&&(T={type:"text",value:T}),w.push({type:"element",tagName:"a",properties:{href:"#"+n+"fnref-"+x+(v>1?"-"+v:""),dataFootnoteBackref:"",ariaLabel:typeof l=="string"?l:l(d,v),className:["data-footnote-backref"]},children:Array.isArray(T)?T:[T]})}const _=m[m.length-1];if(_&&_.type==="element"&&_.tagName==="p"){const T=_.children[_.children.length-1];T&&T.type==="text"?T.value+=" ":_.children.push({type:"text",value:" "}),_.children.push(...w)}else m.push(...w);const S={type:"element",tagName:"li",properties:{id:n+"fn-"+x},children:e.wrap(m,!0)};e.patch(h,S),c.push(S)}if(c.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:o,properties:{...bc(u),id:"footnote-label"},children:[{type:"text",value:a}]},{type:"text",value:` `},{type:"element",tagName:"ol",properties:{},children:e.wrap(c,!0)},{type:"text",value:` -`}]}}const Uc=(function(e){if(e==null)return k6;if(typeof e=="function")return Pc(e);if(typeof e=="object")return Array.isArray(e)?w6(e):S6(e);if(typeof e=="string")return _6(e);throw new Error("Expected function, string, or object as test")});function w6(e){const n=[];let r=-1;for(;++r ":""))+")"})}return x;function x(){let v=uk,w,E,S;if((!n||o(d,h,m[m.length-1]||void 0))&&(v=T6(r(d,m)),v[0]===sm))return v;if("children"in d&&d.children){const _=d;if(_.children&&v[0]!==C6)for(E=(l?_.children.length:-1)+u,S=m.concat(_);E>-1&&E<_.children.length;){const T=_.children[E];if(w=c(T,E,S)(),w[0]===sm)return w;E=typeof w[1]=="number"?w[1]:E+u}}return v}}}function T6(e){return Array.isArray(e)?e:typeof e=="number"?[N6,e]:e==null?uk:[e]}function Wm(e,n,r,l){let a,o,u;typeof n=="function"&&typeof r!="function"?(o=void 0,u=n,a=r):(o=n,u=r,a=l),ck(e,o,c,a);function c(d,h){const m=h[h.length-1],p=m?m.children.indexOf(d):void 0;return u(d,p,m)}}const um={}.hasOwnProperty,A6={};function j6(e,n){const r=n||A6,l=new Map,a=new Map,o=new Map,u={...h6,...r.handlers},c={all:h,applyData:M6,definitionById:l,footnoteById:a,footnoteCounts:o,footnoteOrder:[],handlers:u,one:d,options:r,patch:z6,wrap:R6};return Wm(e,function(m){if(m.type==="definition"||m.type==="footnoteDefinition"){const p=m.type==="definition"?l:a,x=String(m.identifier).toUpperCase();p.has(x)||p.set(x,m)}}),c;function d(m,p){const x=m.type,v=c.handlers[x];if(um.call(c.handlers,x)&&v)return v(c,m,p);if(c.options.passThrough&&c.options.passThrough.includes(x)){if("children"in m){const{children:E,...S}=m,_=bc(S);return _.children=c.all(m),_}return bc(m)}return(c.options.unknownHandler||D6)(c,m,p)}function h(m){const p=[];if("children"in m){const x=m.children;let v=-1;for(;++v ":""))+")"})}return x;function x(){let v=uk,w,E,_;if((!n||o(d,h,m[m.length-1]||void 0))&&(v=T6(r(d,m)),v[0]===um))return v;if("children"in d&&d.children){const S=d;if(S.children&&v[0]!==C6)for(E=(l?S.children.length:-1)+u,_=m.concat(S);E>-1&&E