cascade-ai 0.4.0 → 0.9.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ import"./reactflow-Clz8xC7C.js";
@@ -0,0 +1,33 @@
1
+ function vo(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var _o={exports:{}},G={};/**
2
+ * @license React
3
+ * react.production.js
4
+ *
5
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */var Jn=Symbol.for("react.transitional.element"),ks=Symbol.for("react.portal"),Is=Symbol.for("react.fragment"),Ps=Symbol.for("react.strict_mode"),zs=Symbol.for("react.profiler"),Ds=Symbol.for("react.consumer"),Hs=Symbol.for("react.context"),Os=Symbol.for("react.forward_ref"),Ls=Symbol.for("react.suspense"),Vs=Symbol.for("react.memo"),Eo=Symbol.for("react.lazy"),Bs=Symbol.for("react.activity"),Ar=Symbol.iterator;function Ys(t){return t===null||typeof t!="object"?null:(t=Ar&&t[Ar]||t["@@iterator"],typeof t=="function"?t:null)}var bo={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},So=Object.assign,No={};function we(t,e,n){this.props=t,this.context=e,this.refs=No,this.updater=n||bo}we.prototype.isReactComponent={};we.prototype.setState=function(t,e){if(typeof t!="object"&&typeof t!="function"&&t!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,t,e,"setState")};we.prototype.forceUpdate=function(t){this.updater.enqueueForceUpdate(this,t,"forceUpdate")};function Ao(){}Ao.prototype=we.prototype;function tr(t,e,n){this.props=t,this.context=e,this.refs=No,this.updater=n||bo}var er=tr.prototype=new Ao;er.constructor=tr;So(er,we.prototype);er.isPureReactComponent=!0;var Tr=Array.isArray;function Dn(){}var J={H:null,A:null,T:null,S:null},To=Object.prototype.hasOwnProperty;function nr(t,e,n){var r=n.ref;return{$$typeof:Jn,type:t,key:e,ref:r!==void 0?r:null,props:n}}function Fs(t,e){return nr(t.type,e,t.props)}function rr(t){return typeof t=="object"&&t!==null&&t.$$typeof===Jn}function Us(t){var e={"=":"=0",":":"=2"};return"$"+t.replace(/[=:]/g,function(n){return e[n]})}var Cr=/\/+/g;function Nn(t,e){return typeof t=="object"&&t!==null&&t.key!=null?Us(""+t.key):e.toString(36)}function Xs(t){switch(t.status){case"fulfilled":return t.value;case"rejected":throw t.reason;default:switch(typeof t.status=="string"?t.then(Dn,Dn):(t.status="pending",t.then(function(e){t.status==="pending"&&(t.status="fulfilled",t.value=e)},function(e){t.status==="pending"&&(t.status="rejected",t.reason=e)})),t.status){case"fulfilled":return t.value;case"rejected":throw t.reason}}throw t}function ue(t,e,n,r,o){var i=typeof t;(i==="undefined"||i==="boolean")&&(t=null);var s=!1;if(t===null)s=!0;else switch(i){case"bigint":case"string":case"number":s=!0;break;case"object":switch(t.$$typeof){case Jn:case ks:s=!0;break;case Eo:return s=t._init,ue(s(t._payload),e,n,r,o)}}if(s)return o=o(t),s=r===""?"."+Nn(t,0):r,Tr(o)?(n="",s!=null&&(n=s.replace(Cr,"$&/")+"/"),ue(o,e,n,"",function(l){return l})):o!=null&&(rr(o)&&(o=Fs(o,n+(o.key==null||t&&t.key===o.key?"":(""+o.key).replace(Cr,"$&/")+"/")+s)),e.push(o)),1;s=0;var c=r===""?".":r+":";if(Tr(t))for(var a=0;a<t.length;a++)r=t[a],i=c+Nn(r,a),s+=ue(r,e,n,i,o);else if(a=Ys(t),typeof a=="function")for(t=a.call(t),a=0;!(r=t.next()).done;)r=r.value,i=c+Nn(r,a++),s+=ue(r,e,n,i,o);else if(i==="object"){if(typeof t.then=="function")return ue(Xs(t),e,n,r,o);throw e=String(t),Error("Objects are not valid as a React child (found: "+(e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e)+"). If you meant to render a collection of children, use an array instead.")}return s}function Fe(t,e,n){if(t==null)return t;var r=[],o=0;return ue(t,r,"","",function(i){return e.call(n,i,o++)}),r}function Gs(t){if(t._status===-1){var e=t._result;e=e(),e.then(function(n){(t._status===0||t._status===-1)&&(t._status=1,t._result=n)},function(n){(t._status===0||t._status===-1)&&(t._status=2,t._result=n)}),t._status===-1&&(t._status=0,t._result=e)}if(t._status===1)return t._result.default;throw t._result}var $r=typeof reportError=="function"?reportError:function(t){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var e=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof t=="object"&&t!==null&&typeof t.message=="string"?String(t.message):String(t),error:t});if(!window.dispatchEvent(e))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",t);return}console.error(t)},Ws={map:Fe,forEach:function(t,e,n){Fe(t,function(){e.apply(this,arguments)},n)},count:function(t){var e=0;return Fe(t,function(){e++}),e},toArray:function(t){return Fe(t,function(e){return e})||[]},only:function(t){if(!rr(t))throw Error("React.Children.only expected to receive a single React element child.");return t}};G.Activity=Bs;G.Children=Ws;G.Component=we;G.Fragment=Is;G.Profiler=zs;G.PureComponent=tr;G.StrictMode=Ps;G.Suspense=Ls;G.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=J;G.__COMPILER_RUNTIME={__proto__:null,c:function(t){return J.H.useMemoCache(t)}};G.cache=function(t){return function(){return t.apply(null,arguments)}};G.cacheSignal=function(){return null};G.cloneElement=function(t,e,n){if(t==null)throw Error("The argument must be a React element, but you passed "+t+".");var r=So({},t.props),o=t.key;if(e!=null)for(i in e.key!==void 0&&(o=""+e.key),e)!To.call(e,i)||i==="key"||i==="__self"||i==="__source"||i==="ref"&&e.ref===void 0||(r[i]=e[i]);var i=arguments.length-2;if(i===1)r.children=n;else if(1<i){for(var s=Array(i),c=0;c<i;c++)s[c]=arguments[c+2];r.children=s}return nr(t.type,o,r)};G.createContext=function(t){return t={$$typeof:Hs,_currentValue:t,_currentValue2:t,_threadCount:0,Provider:null,Consumer:null},t.Provider=t,t.Consumer={$$typeof:Ds,_context:t},t};G.createElement=function(t,e,n){var r,o={},i=null;if(e!=null)for(r in e.key!==void 0&&(i=""+e.key),e)To.call(e,r)&&r!=="key"&&r!=="__self"&&r!=="__source"&&(o[r]=e[r]);var s=arguments.length-2;if(s===1)o.children=n;else if(1<s){for(var c=Array(s),a=0;a<s;a++)c[a]=arguments[a+2];o.children=c}if(t&&t.defaultProps)for(r in s=t.defaultProps,s)o[r]===void 0&&(o[r]=s[r]);return nr(t,i,o)};G.createRef=function(){return{current:null}};G.forwardRef=function(t){return{$$typeof:Os,render:t}};G.isValidElement=rr;G.lazy=function(t){return{$$typeof:Eo,_payload:{_status:-1,_result:t},_init:Gs}};G.memo=function(t,e){return{$$typeof:Vs,type:t,compare:e===void 0?null:e}};G.startTransition=function(t){var e=J.T,n={};J.T=n;try{var r=t(),o=J.S;o!==null&&o(n,r),typeof r=="object"&&r!==null&&typeof r.then=="function"&&r.then(Dn,$r)}catch(i){$r(i)}finally{e!==null&&n.types!==null&&(e.types=n.types),J.T=e}};G.unstable_useCacheRefresh=function(){return J.H.useCacheRefresh()};G.use=function(t){return J.H.use(t)};G.useActionState=function(t,e,n){return J.H.useActionState(t,e,n)};G.useCallback=function(t,e){return J.H.useCallback(t,e)};G.useContext=function(t){return J.H.useContext(t)};G.useDebugValue=function(){};G.useDeferredValue=function(t,e){return J.H.useDeferredValue(t,e)};G.useEffect=function(t,e){return J.H.useEffect(t,e)};G.useEffectEvent=function(t){return J.H.useEffectEvent(t)};G.useId=function(){return J.H.useId()};G.useImperativeHandle=function(t,e,n){return J.H.useImperativeHandle(t,e,n)};G.useInsertionEffect=function(t,e){return J.H.useInsertionEffect(t,e)};G.useLayoutEffect=function(t,e){return J.H.useLayoutEffect(t,e)};G.useMemo=function(t,e){return J.H.useMemo(t,e)};G.useOptimistic=function(t,e){return J.H.useOptimistic(t,e)};G.useReducer=function(t,e,n){return J.H.useReducer(t,e,n)};G.useRef=function(t){return J.H.useRef(t)};G.useState=function(t){return J.H.useState(t)};G.useSyncExternalStore=function(t,e,n){return J.H.useSyncExternalStore(t,e,n)};G.useTransition=function(){return J.H.useTransition()};G.version="19.2.7";_o.exports=G;var S=_o.exports;const N=vo(S);var Co={exports:{}},at={};/**
10
+ * @license React
11
+ * react-dom.production.js
12
+ *
13
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
17
+ */var qs=S;function $o(t){var e="https://react.dev/errors/"+t;if(1<arguments.length){e+="?args[]="+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)e+="&args[]="+encodeURIComponent(arguments[n])}return"Minified React error #"+t+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function Pt(){}var ct={d:{f:Pt,r:function(){throw Error($o(522))},D:Pt,C:Pt,L:Pt,m:Pt,X:Pt,S:Pt,M:Pt},p:0,findDOMNode:null},Zs=Symbol.for("react.portal");function Ks(t,e,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:Zs,key:r==null?null:""+r,children:t,containerInfo:e,implementation:n}}var ke=qs.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function gn(t,e){if(t==="font")return"";if(typeof e=="string")return e==="use-credentials"?e:""}at.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=ct;at.createPortal=function(t,e){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)throw Error($o(299));return Ks(t,e,null,n)};at.flushSync=function(t){var e=ke.T,n=ct.p;try{if(ke.T=null,ct.p=2,t)return t()}finally{ke.T=e,ct.p=n,ct.d.f()}};at.preconnect=function(t,e){typeof t=="string"&&(e?(e=e.crossOrigin,e=typeof e=="string"?e==="use-credentials"?e:"":void 0):e=null,ct.d.C(t,e))};at.prefetchDNS=function(t){typeof t=="string"&&ct.d.D(t)};at.preinit=function(t,e){if(typeof t=="string"&&e&&typeof e.as=="string"){var n=e.as,r=gn(n,e.crossOrigin),o=typeof e.integrity=="string"?e.integrity:void 0,i=typeof e.fetchPriority=="string"?e.fetchPriority:void 0;n==="style"?ct.d.S(t,typeof e.precedence=="string"?e.precedence:void 0,{crossOrigin:r,integrity:o,fetchPriority:i}):n==="script"&&ct.d.X(t,{crossOrigin:r,integrity:o,fetchPriority:i,nonce:typeof e.nonce=="string"?e.nonce:void 0})}};at.preinitModule=function(t,e){if(typeof t=="string")if(typeof e=="object"&&e!==null){if(e.as==null||e.as==="script"){var n=gn(e.as,e.crossOrigin);ct.d.M(t,{crossOrigin:n,integrity:typeof e.integrity=="string"?e.integrity:void 0,nonce:typeof e.nonce=="string"?e.nonce:void 0})}}else e==null&&ct.d.M(t)};at.preload=function(t,e){if(typeof t=="string"&&typeof e=="object"&&e!==null&&typeof e.as=="string"){var n=e.as,r=gn(n,e.crossOrigin);ct.d.L(t,n,{crossOrigin:r,integrity:typeof e.integrity=="string"?e.integrity:void 0,nonce:typeof e.nonce=="string"?e.nonce:void 0,type:typeof e.type=="string"?e.type:void 0,fetchPriority:typeof e.fetchPriority=="string"?e.fetchPriority:void 0,referrerPolicy:typeof e.referrerPolicy=="string"?e.referrerPolicy:void 0,imageSrcSet:typeof e.imageSrcSet=="string"?e.imageSrcSet:void 0,imageSizes:typeof e.imageSizes=="string"?e.imageSizes:void 0,media:typeof e.media=="string"?e.media:void 0})}};at.preloadModule=function(t,e){if(typeof t=="string")if(e){var n=gn(e.as,e.crossOrigin);ct.d.m(t,{as:typeof e.as=="string"&&e.as!=="script"?e.as:void 0,crossOrigin:n,integrity:typeof e.integrity=="string"?e.integrity:void 0})}else ct.d.m(t)};at.requestFormReset=function(t){ct.d.r(t)};at.unstable_batchedUpdates=function(t,e){return t(e)};at.useFormState=function(t,e,n){return ke.H.useFormState(t,e,n)};at.useFormStatus=function(){return ke.H.useHostTransitionStatus()};at.version="19.2.7";function Mo(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Mo)}catch(t){console.error(t)}}Mo(),Co.exports=at;var rh=Co.exports;function ut(t){if(typeof t=="string"||typeof t=="number")return""+t;let e="";if(Array.isArray(t))for(let n=0,r;n<t.length;n++)(r=ut(t[n]))!==""&&(e+=(e&&" ")+r);else for(let n in t)t[n]&&(e+=(e&&" ")+n);return e}var Ro={exports:{}},ko={},Io={exports:{}},Po={};/**
18
+ * @license React
19
+ * use-sync-external-store-shim.production.js
20
+ *
21
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
22
+ *
23
+ * This source code is licensed under the MIT license found in the
24
+ * LICENSE file in the root directory of this source tree.
25
+ */var pe=S;function Qs(t,e){return t===e&&(t!==0||1/t===1/e)||t!==t&&e!==e}var js=typeof Object.is=="function"?Object.is:Qs,Js=pe.useState,tc=pe.useEffect,ec=pe.useLayoutEffect,nc=pe.useDebugValue;function rc(t,e){var n=e(),r=Js({inst:{value:n,getSnapshot:e}}),o=r[0].inst,i=r[1];return ec(function(){o.value=n,o.getSnapshot=e,An(o)&&i({inst:o})},[t,n,e]),tc(function(){return An(o)&&i({inst:o}),t(function(){An(o)&&i({inst:o})})},[t]),nc(n),n}function An(t){var e=t.getSnapshot;t=t.value;try{var n=e();return!js(t,n)}catch{return!0}}function oc(t,e){return e()}var ic=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?oc:rc;Po.useSyncExternalStore=pe.useSyncExternalStore!==void 0?pe.useSyncExternalStore:ic;Io.exports=Po;var sc=Io.exports;/**
26
+ * @license React
27
+ * use-sync-external-store-shim/with-selector.production.js
28
+ *
29
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
30
+ *
31
+ * This source code is licensed under the MIT license found in the
32
+ * LICENSE file in the root directory of this source tree.
33
+ */var pn=S,cc=sc;function ac(t,e){return t===e&&(t!==0||1/t===1/e)||t!==t&&e!==e}var uc=typeof Object.is=="function"?Object.is:ac,lc=cc.useSyncExternalStore,fc=pn.useRef,dc=pn.useEffect,hc=pn.useMemo,gc=pn.useDebugValue;ko.useSyncExternalStoreWithSelector=function(t,e,n,r,o){var i=fc(null);if(i.current===null){var s={hasValue:!1,value:null};i.current=s}else s=i.current;i=hc(function(){function a(g){if(!l){if(l=!0,u=g,g=r(g),o!==void 0&&s.hasValue){var y=s.value;if(o(y,g))return f=y}return f=g}if(y=f,uc(u,g))return y;var m=r(g);return o!==void 0&&o(y,m)?(u=g,y):(u=g,f=m)}var l=!1,u,f,h=n===void 0?null:n;return[function(){return a(e())},h===null?void 0:function(){return a(h())}]},[e,n,r,o]);var c=lc(t,i[0],i[1]);return dc(function(){s.hasValue=!0,s.value=c},[c]),gc(c),c};Ro.exports=ko;var pc=Ro.exports;const mc=vo(pc),yc={},Mr=t=>{let e;const n=new Set,r=(u,f)=>{const h=typeof u=="function"?u(e):u;if(!Object.is(h,e)){const g=e;e=f??(typeof h!="object"||h===null)?h:Object.assign({},e,h),n.forEach(y=>y(e,g))}},o=()=>e,a={setState:r,getState:o,getInitialState:()=>l,subscribe:u=>(n.add(u),()=>n.delete(u)),destroy:()=>{(yc?"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."),n.clear()}},l=e=t(r,o,a);return a},xc=t=>t?Mr(t):Mr,{useDebugValue:wc}=N,{useSyncExternalStoreWithSelector:vc}=mc,_c=t=>t;function zo(t,e=_c,n){const r=vc(t.subscribe,t.getState,t.getServerState||t.getInitialState,e,n);return wc(r),r}const Rr=(t,e)=>{const n=xc(t),r=(o,i=e)=>zo(n,o,i);return Object.assign(r,n),r},Ec=(t,e)=>t?Rr(t,e):Rr;function st(t,e){if(Object.is(t,e))return!0;if(typeof t!="object"||t===null||typeof e!="object"||e===null)return!1;if(t instanceof Map&&e instanceof Map){if(t.size!==e.size)return!1;for(const[r,o]of t)if(!Object.is(o,e.get(r)))return!1;return!0}if(t instanceof Set&&e instanceof Set){if(t.size!==e.size)return!1;for(const r of t)if(!e.has(r))return!1;return!0}const n=Object.keys(t);if(n.length!==Object.keys(e).length)return!1;for(const r of n)if(!Object.prototype.hasOwnProperty.call(e,r)||!Object.is(t[r],e[r]))return!1;return!0}var bc={value:()=>{}};function mn(){for(var t=0,e=arguments.length,n={},r;t<e;++t){if(!(r=arguments[t]+"")||r in n||/[\s.]/.test(r))throw new Error("illegal type: "+r);n[r]=[]}return new Je(n)}function Je(t){this._=t}function Sc(t,e){return t.trim().split(/^|\s+/).map(function(n){var r="",o=n.indexOf(".");if(o>=0&&(r=n.slice(o+1),n=n.slice(0,o)),n&&!e.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:r}})}Je.prototype=mn.prototype={constructor:Je,on:function(t,e){var n=this._,r=Sc(t+"",n),o,i=-1,s=r.length;if(arguments.length<2){for(;++i<s;)if((o=(t=r[i]).type)&&(o=Nc(n[o],t.name)))return o;return}if(e!=null&&typeof e!="function")throw new Error("invalid callback: "+e);for(;++i<s;)if(o=(t=r[i]).type)n[o]=kr(n[o],t.name,e);else if(e==null)for(o in n)n[o]=kr(n[o],t.name,null);return this},copy:function(){var t={},e=this._;for(var n in e)t[n]=e[n].slice();return new Je(t)},call:function(t,e){if((o=arguments.length-2)>0)for(var n=new Array(o),r=0,o,i;r<o;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(i=this._[t],r=0,o=i.length;r<o;++r)i[r].value.apply(e,n)},apply:function(t,e,n){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var r=this._[t],o=0,i=r.length;o<i;++o)r[o].value.apply(e,n)}};function Nc(t,e){for(var n=0,r=t.length,o;n<r;++n)if((o=t[n]).name===e)return o.value}function kr(t,e,n){for(var r=0,o=t.length;r<o;++r)if(t[r].name===e){t[r]=bc,t=t.slice(0,r).concat(t.slice(r+1));break}return n!=null&&t.push({name:e,value:n}),t}var Hn="http://www.w3.org/1999/xhtml";const Ir={svg:"http://www.w3.org/2000/svg",xhtml:Hn,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function yn(t){var e=t+="",n=e.indexOf(":");return n>=0&&(e=t.slice(0,n))!=="xmlns"&&(t=t.slice(n+1)),Ir.hasOwnProperty(e)?{space:Ir[e],local:t}:t}function Ac(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===Hn&&e.documentElement.namespaceURI===Hn?e.createElement(t):e.createElementNS(n,t)}}function Tc(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function Do(t){var e=yn(t);return(e.local?Tc:Ac)(e)}function Cc(){}function or(t){return t==null?Cc:function(){return this.querySelector(t)}}function $c(t){typeof t!="function"&&(t=or(t));for(var e=this._groups,n=e.length,r=new Array(n),o=0;o<n;++o)for(var i=e[o],s=i.length,c=r[o]=new Array(s),a,l,u=0;u<s;++u)(a=i[u])&&(l=t.call(a,a.__data__,u,i))&&("__data__"in a&&(l.__data__=a.__data__),c[u]=l);return new dt(r,this._parents)}function Mc(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function Rc(){return[]}function Ho(t){return t==null?Rc:function(){return this.querySelectorAll(t)}}function kc(t){return function(){return Mc(t.apply(this,arguments))}}function Ic(t){typeof t=="function"?t=kc(t):t=Ho(t);for(var e=this._groups,n=e.length,r=[],o=[],i=0;i<n;++i)for(var s=e[i],c=s.length,a,l=0;l<c;++l)(a=s[l])&&(r.push(t.call(a,a.__data__,l,s)),o.push(a));return new dt(r,o)}function Oo(t){return function(){return this.matches(t)}}function Lo(t){return function(e){return e.matches(t)}}var Pc=Array.prototype.find;function zc(t){return function(){return Pc.call(this.children,t)}}function Dc(){return this.firstElementChild}function Hc(t){return this.select(t==null?Dc:zc(typeof t=="function"?t:Lo(t)))}var Oc=Array.prototype.filter;function Lc(){return Array.from(this.children)}function Vc(t){return function(){return Oc.call(this.children,t)}}function Bc(t){return this.selectAll(t==null?Lc:Vc(typeof t=="function"?t:Lo(t)))}function Yc(t){typeof t!="function"&&(t=Oo(t));for(var e=this._groups,n=e.length,r=new Array(n),o=0;o<n;++o)for(var i=e[o],s=i.length,c=r[o]=[],a,l=0;l<s;++l)(a=i[l])&&t.call(a,a.__data__,l,i)&&c.push(a);return new dt(r,this._parents)}function Vo(t){return new Array(t.length)}function Fc(){return new dt(this._enter||this._groups.map(Vo),this._parents)}function rn(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}rn.prototype={constructor:rn,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function Uc(t){return function(){return t}}function Xc(t,e,n,r,o,i){for(var s=0,c,a=e.length,l=i.length;s<l;++s)(c=e[s])?(c.__data__=i[s],r[s]=c):n[s]=new rn(t,i[s]);for(;s<a;++s)(c=e[s])&&(o[s]=c)}function Gc(t,e,n,r,o,i,s){var c,a,l=new Map,u=e.length,f=i.length,h=new Array(u),g;for(c=0;c<u;++c)(a=e[c])&&(h[c]=g=s.call(a,a.__data__,c,e)+"",l.has(g)?o[c]=a:l.set(g,a));for(c=0;c<f;++c)g=s.call(t,i[c],c,i)+"",(a=l.get(g))?(r[c]=a,a.__data__=i[c],l.delete(g)):n[c]=new rn(t,i[c]);for(c=0;c<u;++c)(a=e[c])&&l.get(h[c])===a&&(o[c]=a)}function Wc(t){return t.__data__}function qc(t,e){if(!arguments.length)return Array.from(this,Wc);var n=e?Gc:Xc,r=this._parents,o=this._groups;typeof t!="function"&&(t=Uc(t));for(var i=o.length,s=new Array(i),c=new Array(i),a=new Array(i),l=0;l<i;++l){var u=r[l],f=o[l],h=f.length,g=Zc(t.call(u,u&&u.__data__,l,r)),y=g.length,m=c[l]=new Array(y),_=s[l]=new Array(y),p=a[l]=new Array(h);n(u,f,m,_,p,g,e);for(var E=0,A=0,x,$;E<y;++E)if(x=m[E]){for(E>=A&&(A=E+1);!($=_[A])&&++A<y;);x._next=$||null}}return s=new dt(s,r),s._enter=c,s._exit=a,s}function Zc(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function Kc(){return new dt(this._exit||this._groups.map(Vo),this._parents)}function Qc(t,e,n){var r=this.enter(),o=this,i=this.exit();return typeof t=="function"?(r=t(r),r&&(r=r.selection())):r=r.append(t+""),e!=null&&(o=e(o),o&&(o=o.selection())),n==null?i.remove():n(i),r&&o?r.merge(o).order():o}function jc(t){for(var e=t.selection?t.selection():t,n=this._groups,r=e._groups,o=n.length,i=r.length,s=Math.min(o,i),c=new Array(o),a=0;a<s;++a)for(var l=n[a],u=r[a],f=l.length,h=c[a]=new Array(f),g,y=0;y<f;++y)(g=l[y]||u[y])&&(h[y]=g);for(;a<o;++a)c[a]=n[a];return new dt(c,this._parents)}function Jc(){for(var t=this._groups,e=-1,n=t.length;++e<n;)for(var r=t[e],o=r.length-1,i=r[o],s;--o>=0;)(s=r[o])&&(i&&s.compareDocumentPosition(i)^4&&i.parentNode.insertBefore(s,i),i=s);return this}function ta(t){t||(t=ea);function e(f,h){return f&&h?t(f.__data__,h.__data__):!f-!h}for(var n=this._groups,r=n.length,o=new Array(r),i=0;i<r;++i){for(var s=n[i],c=s.length,a=o[i]=new Array(c),l,u=0;u<c;++u)(l=s[u])&&(a[u]=l);a.sort(e)}return new dt(o,this._parents).order()}function ea(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function na(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function ra(){return Array.from(this)}function oa(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var r=t[e],o=0,i=r.length;o<i;++o){var s=r[o];if(s)return s}return null}function ia(){let t=0;for(const e of this)++t;return t}function sa(){return!this.node()}function ca(t){for(var e=this._groups,n=0,r=e.length;n<r;++n)for(var o=e[n],i=0,s=o.length,c;i<s;++i)(c=o[i])&&t.call(c,c.__data__,i,o);return this}function aa(t){return function(){this.removeAttribute(t)}}function ua(t){return function(){this.removeAttributeNS(t.space,t.local)}}function la(t,e){return function(){this.setAttribute(t,e)}}function fa(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function da(t,e){return function(){var n=e.apply(this,arguments);n==null?this.removeAttribute(t):this.setAttribute(t,n)}}function ha(t,e){return function(){var n=e.apply(this,arguments);n==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}}function ga(t,e){var n=yn(t);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((e==null?n.local?ua:aa:typeof e=="function"?n.local?ha:da:n.local?fa:la)(n,e))}function Bo(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function pa(t){return function(){this.style.removeProperty(t)}}function ma(t,e,n){return function(){this.style.setProperty(t,e,n)}}function ya(t,e,n){return function(){var r=e.apply(this,arguments);r==null?this.style.removeProperty(t):this.style.setProperty(t,r,n)}}function xa(t,e,n){return arguments.length>1?this.each((e==null?pa:typeof e=="function"?ya:ma)(t,e,n??"")):me(this.node(),t)}function me(t,e){return t.style.getPropertyValue(e)||Bo(t).getComputedStyle(t,null).getPropertyValue(e)}function wa(t){return function(){delete this[t]}}function va(t,e){return function(){this[t]=e}}function _a(t,e){return function(){var n=e.apply(this,arguments);n==null?delete this[t]:this[t]=n}}function Ea(t,e){return arguments.length>1?this.each((e==null?wa:typeof e=="function"?_a:va)(t,e)):this.node()[t]}function Yo(t){return t.trim().split(/^|\s+/)}function ir(t){return t.classList||new Fo(t)}function Fo(t){this._node=t,this._names=Yo(t.getAttribute("class")||"")}Fo.prototype={add:function(t){var e=this._names.indexOf(t);e<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function Uo(t,e){for(var n=ir(t),r=-1,o=e.length;++r<o;)n.add(e[r])}function Xo(t,e){for(var n=ir(t),r=-1,o=e.length;++r<o;)n.remove(e[r])}function ba(t){return function(){Uo(this,t)}}function Sa(t){return function(){Xo(this,t)}}function Na(t,e){return function(){(e.apply(this,arguments)?Uo:Xo)(this,t)}}function Aa(t,e){var n=Yo(t+"");if(arguments.length<2){for(var r=ir(this.node()),o=-1,i=n.length;++o<i;)if(!r.contains(n[o]))return!1;return!0}return this.each((typeof e=="function"?Na:e?ba:Sa)(n,e))}function Ta(){this.textContent=""}function Ca(t){return function(){this.textContent=t}}function $a(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function Ma(t){return arguments.length?this.each(t==null?Ta:(typeof t=="function"?$a:Ca)(t)):this.node().textContent}function Ra(){this.innerHTML=""}function ka(t){return function(){this.innerHTML=t}}function Ia(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function Pa(t){return arguments.length?this.each(t==null?Ra:(typeof t=="function"?Ia:ka)(t)):this.node().innerHTML}function za(){this.nextSibling&&this.parentNode.appendChild(this)}function Da(){return this.each(za)}function Ha(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Oa(){return this.each(Ha)}function La(t){var e=typeof t=="function"?t:Do(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}function Va(){return null}function Ba(t,e){var n=typeof t=="function"?t:Do(t),r=e==null?Va:typeof e=="function"?e:or(e);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function Ya(){var t=this.parentNode;t&&t.removeChild(this)}function Fa(){return this.each(Ya)}function Ua(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function Xa(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function Ga(t){return this.select(t?Xa:Ua)}function Wa(t){return arguments.length?this.property("__data__",t):this.node().__data__}function qa(t){return function(e){t.call(this,e,this.__data__)}}function Za(t){return t.trim().split(/^|\s+/).map(function(e){var n="",r=e.indexOf(".");return r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),{type:e,name:n}})}function Ka(t){return function(){var e=this.__on;if(e){for(var n=0,r=-1,o=e.length,i;n<o;++n)i=e[n],(!t.type||i.type===t.type)&&i.name===t.name?this.removeEventListener(i.type,i.listener,i.options):e[++r]=i;++r?e.length=r:delete this.__on}}}function Qa(t,e,n){return function(){var r=this.__on,o,i=qa(e);if(r){for(var s=0,c=r.length;s<c;++s)if((o=r[s]).type===t.type&&o.name===t.name){this.removeEventListener(o.type,o.listener,o.options),this.addEventListener(o.type,o.listener=i,o.options=n),o.value=e;return}}this.addEventListener(t.type,i,n),o={type:t.type,name:t.name,value:e,listener:i,options:n},r?r.push(o):this.__on=[o]}}function ja(t,e,n){var r=Za(t+""),o,i=r.length,s;if(arguments.length<2){var c=this.node().__on;if(c){for(var a=0,l=c.length,u;a<l;++a)for(o=0,u=c[a];o<i;++o)if((s=r[o]).type===u.type&&s.name===u.name)return u.value}return}for(c=e?Qa:Ka,o=0;o<i;++o)this.each(c(r[o],e,n));return this}function Go(t,e,n){var r=Bo(t),o=r.CustomEvent;typeof o=="function"?o=new o(e,n):(o=r.document.createEvent("Event"),n?(o.initEvent(e,n.bubbles,n.cancelable),o.detail=n.detail):o.initEvent(e,!1,!1)),t.dispatchEvent(o)}function Ja(t,e){return function(){return Go(this,t,e)}}function tu(t,e){return function(){return Go(this,t,e.apply(this,arguments))}}function eu(t,e){return this.each((typeof e=="function"?tu:Ja)(t,e))}function*nu(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var r=t[e],o=0,i=r.length,s;o<i;++o)(s=r[o])&&(yield s)}var Wo=[null];function dt(t,e){this._groups=t,this._parents=e}function Ve(){return new dt([[document.documentElement]],Wo)}function ru(){return this}dt.prototype=Ve.prototype={constructor:dt,select:$c,selectAll:Ic,selectChild:Hc,selectChildren:Bc,filter:Yc,data:qc,enter:Fc,exit:Kc,join:Qc,merge:jc,selection:ru,order:Jc,sort:ta,call:na,nodes:ra,node:oa,size:ia,empty:sa,each:ca,attr:ga,style:xa,property:Ea,classed:Aa,text:Ma,html:Pa,raise:Da,lower:Oa,append:La,insert:Ba,remove:Fa,clone:Ga,datum:Wa,on:ja,dispatch:eu,[Symbol.iterator]:nu};function wt(t){return typeof t=="string"?new dt([[document.querySelector(t)]],[document.documentElement]):new dt([[t]],Wo)}function ou(t){let e;for(;e=t.sourceEvent;)t=e;return t}function Nt(t,e){if(t=ou(t),e===void 0&&(e=t.currentTarget),e){var n=e.ownerSVGElement||e;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=t.clientX,r.y=t.clientY,r=r.matrixTransform(e.getScreenCTM().inverse()),[r.x,r.y]}if(e.getBoundingClientRect){var o=e.getBoundingClientRect();return[t.clientX-o.left-e.clientLeft,t.clientY-o.top-e.clientTop]}}return[t.pageX,t.pageY]}const iu={passive:!1},Ie={capture:!0,passive:!1};function Tn(t){t.stopImmediatePropagation()}function fe(t){t.preventDefault(),t.stopImmediatePropagation()}function qo(t){var e=t.document.documentElement,n=wt(t).on("dragstart.drag",fe,Ie);"onselectstart"in e?n.on("selectstart.drag",fe,Ie):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}function Zo(t,e){var n=t.document.documentElement,r=wt(t).on("dragstart.drag",null);e&&(r.on("click.drag",fe,Ie),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}const Ue=t=>()=>t;function On(t,{sourceEvent:e,subject:n,target:r,identifier:o,active:i,x:s,y:c,dx:a,dy:l,dispatch:u}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:o,enumerable:!0,configurable:!0},active:{value:i,enumerable:!0,configurable:!0},x:{value:s,enumerable:!0,configurable:!0},y:{value:c,enumerable:!0,configurable:!0},dx:{value:a,enumerable:!0,configurable:!0},dy:{value:l,enumerable:!0,configurable:!0},_:{value:u}})}On.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};function su(t){return!t.ctrlKey&&!t.button}function cu(){return this.parentNode}function au(t,e){return e??{x:t.x,y:t.y}}function uu(){return navigator.maxTouchPoints||"ontouchstart"in this}function lu(){var t=su,e=cu,n=au,r=uu,o={},i=mn("start","drag","end"),s=0,c,a,l,u,f=0;function h(x){x.on("mousedown.drag",g).filter(r).on("touchstart.drag",_).on("touchmove.drag",p,iu).on("touchend.drag touchcancel.drag",E).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g(x,$){if(!(u||!t.call(this,x,$))){var R=A(this,e.call(this,x,$),x,$,"mouse");R&&(wt(x.view).on("mousemove.drag",y,Ie).on("mouseup.drag",m,Ie),qo(x.view),Tn(x),l=!1,c=x.clientX,a=x.clientY,R("start",x))}}function y(x){if(fe(x),!l){var $=x.clientX-c,R=x.clientY-a;l=$*$+R*R>f}o.mouse("drag",x)}function m(x){wt(x.view).on("mousemove.drag mouseup.drag",null),Zo(x.view,l),fe(x),o.mouse("end",x)}function _(x,$){if(t.call(this,x,$)){var R=x.changedTouches,z=e.call(this,x,$),H=R.length,M,O;for(M=0;M<H;++M)(O=A(this,z,x,$,R[M].identifier,R[M]))&&(Tn(x),O("start",x,R[M]))}}function p(x){var $=x.changedTouches,R=$.length,z,H;for(z=0;z<R;++z)(H=o[$[z].identifier])&&(fe(x),H("drag",x,$[z]))}function E(x){var $=x.changedTouches,R=$.length,z,H;for(u&&clearTimeout(u),u=setTimeout(function(){u=null},500),z=0;z<R;++z)(H=o[$[z].identifier])&&(Tn(x),H("end",x,$[z]))}function A(x,$,R,z,H,M){var O=i.copy(),D=Nt(M||R,$),V,L,d;if((d=n.call(x,new On("beforestart",{sourceEvent:R,target:h,identifier:H,active:s,x:D[0],y:D[1],dx:0,dy:0,dispatch:O}),z))!=null)return V=d.x-D[0]||0,L=d.y-D[1]||0,function b(v,C,k){var w=D,T;switch(v){case"start":o[H]=b,T=s++;break;case"end":delete o[H],--s;case"drag":D=Nt(k||C,$),T=s;break}O.call(v,x,new On(v,{sourceEvent:C,subject:d,target:h,identifier:H,active:T,x:D[0]+V,y:D[1]+L,dx:D[0]-w[0],dy:D[1]-w[1],dispatch:O}),z)}}return h.filter=function(x){return arguments.length?(t=typeof x=="function"?x:Ue(!!x),h):t},h.container=function(x){return arguments.length?(e=typeof x=="function"?x:Ue(x),h):e},h.subject=function(x){return arguments.length?(n=typeof x=="function"?x:Ue(x),h):n},h.touchable=function(x){return arguments.length?(r=typeof x=="function"?x:Ue(!!x),h):r},h.on=function(){var x=i.on.apply(i,arguments);return x===i?h:x},h.clickDistance=function(x){return arguments.length?(f=(x=+x)*x,h):Math.sqrt(f)},h}function sr(t,e,n){t.prototype=e.prototype=n,n.constructor=t}function Ko(t,e){var n=Object.create(t.prototype);for(var r in e)n[r]=e[r];return n}function Be(){}var Pe=.7,on=1/Pe,de="\\s*([+-]?\\d+)\\s*",ze="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",At="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",fu=/^#([0-9a-f]{3,8})$/,du=new RegExp(`^rgb\\(${de},${de},${de}\\)$`),hu=new RegExp(`^rgb\\(${At},${At},${At}\\)$`),gu=new RegExp(`^rgba\\(${de},${de},${de},${ze}\\)$`),pu=new RegExp(`^rgba\\(${At},${At},${At},${ze}\\)$`),mu=new RegExp(`^hsl\\(${ze},${At},${At}\\)$`),yu=new RegExp(`^hsla\\(${ze},${At},${At},${ze}\\)$`),Pr={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};sr(Be,De,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:zr,formatHex:zr,formatHex8:xu,formatHsl:wu,formatRgb:Dr,toString:Dr});function zr(){return this.rgb().formatHex()}function xu(){return this.rgb().formatHex8()}function wu(){return Qo(this).formatHsl()}function Dr(){return this.rgb().formatRgb()}function De(t){var e,n;return t=(t+"").trim().toLowerCase(),(e=fu.exec(t))?(n=e[1].length,e=parseInt(e[1],16),n===6?Hr(e):n===3?new lt(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):n===8?Xe(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):n===4?Xe(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=du.exec(t))?new lt(e[1],e[2],e[3],1):(e=hu.exec(t))?new lt(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=gu.exec(t))?Xe(e[1],e[2],e[3],e[4]):(e=pu.exec(t))?Xe(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=mu.exec(t))?Vr(e[1],e[2]/100,e[3]/100,1):(e=yu.exec(t))?Vr(e[1],e[2]/100,e[3]/100,e[4]):Pr.hasOwnProperty(t)?Hr(Pr[t]):t==="transparent"?new lt(NaN,NaN,NaN,0):null}function Hr(t){return new lt(t>>16&255,t>>8&255,t&255,1)}function Xe(t,e,n,r){return r<=0&&(t=e=n=NaN),new lt(t,e,n,r)}function vu(t){return t instanceof Be||(t=De(t)),t?(t=t.rgb(),new lt(t.r,t.g,t.b,t.opacity)):new lt}function Ln(t,e,n,r){return arguments.length===1?vu(t):new lt(t,e,n,r??1)}function lt(t,e,n,r){this.r=+t,this.g=+e,this.b=+n,this.opacity=+r}sr(lt,Ln,Ko(Be,{brighter(t){return t=t==null?on:Math.pow(on,t),new lt(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?Pe:Math.pow(Pe,t),new lt(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new lt(Qt(this.r),Qt(this.g),Qt(this.b),sn(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:Or,formatHex:Or,formatHex8:_u,formatRgb:Lr,toString:Lr}));function Or(){return`#${Zt(this.r)}${Zt(this.g)}${Zt(this.b)}`}function _u(){return`#${Zt(this.r)}${Zt(this.g)}${Zt(this.b)}${Zt((isNaN(this.opacity)?1:this.opacity)*255)}`}function Lr(){const t=sn(this.opacity);return`${t===1?"rgb(":"rgba("}${Qt(this.r)}, ${Qt(this.g)}, ${Qt(this.b)}${t===1?")":`, ${t})`}`}function sn(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Qt(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Zt(t){return t=Qt(t),(t<16?"0":"")+t.toString(16)}function Vr(t,e,n,r){return r<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new vt(t,e,n,r)}function Qo(t){if(t instanceof vt)return new vt(t.h,t.s,t.l,t.opacity);if(t instanceof Be||(t=De(t)),!t)return new vt;if(t instanceof vt)return t;t=t.rgb();var e=t.r/255,n=t.g/255,r=t.b/255,o=Math.min(e,n,r),i=Math.max(e,n,r),s=NaN,c=i-o,a=(i+o)/2;return c?(e===i?s=(n-r)/c+(n<r)*6:n===i?s=(r-e)/c+2:s=(e-n)/c+4,c/=a<.5?i+o:2-i-o,s*=60):c=a>0&&a<1?0:s,new vt(s,c,a,t.opacity)}function Eu(t,e,n,r){return arguments.length===1?Qo(t):new vt(t,e,n,r??1)}function vt(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}sr(vt,Eu,Ko(Be,{brighter(t){return t=t==null?on:Math.pow(on,t),new vt(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?Pe:Math.pow(Pe,t),new vt(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*e,o=2*n-r;return new lt(Cn(t>=240?t-240:t+120,o,r),Cn(t,o,r),Cn(t<120?t+240:t-120,o,r),this.opacity)},clamp(){return new vt(Br(this.h),Ge(this.s),Ge(this.l),sn(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 t=sn(this.opacity);return`${t===1?"hsl(":"hsla("}${Br(this.h)}, ${Ge(this.s)*100}%, ${Ge(this.l)*100}%${t===1?")":`, ${t})`}`}}));function Br(t){return t=(t||0)%360,t<0?t+360:t}function Ge(t){return Math.max(0,Math.min(1,t||0))}function Cn(t,e,n){return(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)*255}const jo=t=>()=>t;function bu(t,e){return function(n){return t+n*e}}function Su(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(r){return Math.pow(t+r*e,n)}}function Nu(t){return(t=+t)==1?Jo:function(e,n){return n-e?Su(e,n,t):jo(isNaN(e)?n:e)}}function Jo(t,e){var n=e-t;return n?bu(t,n):jo(isNaN(t)?e:t)}const Yr=function t(e){var n=Nu(e);function r(o,i){var s=n((o=Ln(o)).r,(i=Ln(i)).r),c=n(o.g,i.g),a=n(o.b,i.b),l=Jo(o.opacity,i.opacity);return function(u){return o.r=s(u),o.g=c(u),o.b=a(u),o.opacity=l(u),o+""}}return r.gamma=t,r}(1);function Dt(t,e){return t=+t,e=+e,function(n){return t*(1-n)+e*n}}var Vn=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,$n=new RegExp(Vn.source,"g");function Au(t){return function(){return t}}function Tu(t){return function(e){return t(e)+""}}function Cu(t,e){var n=Vn.lastIndex=$n.lastIndex=0,r,o,i,s=-1,c=[],a=[];for(t=t+"",e=e+"";(r=Vn.exec(t))&&(o=$n.exec(e));)(i=o.index)>n&&(i=e.slice(n,i),c[s]?c[s]+=i:c[++s]=i),(r=r[0])===(o=o[0])?c[s]?c[s]+=o:c[++s]=o:(c[++s]=null,a.push({i:s,x:Dt(r,o)})),n=$n.lastIndex;return n<e.length&&(i=e.slice(n),c[s]?c[s]+=i:c[++s]=i),c.length<2?a[0]?Tu(a[0].x):Au(e):(e=a.length,function(l){for(var u=0,f;u<e;++u)c[(f=a[u]).i]=f.x(l);return c.join("")})}var Fr=180/Math.PI,Bn={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function ti(t,e,n,r,o,i){var s,c,a;return(s=Math.sqrt(t*t+e*e))&&(t/=s,e/=s),(a=t*n+e*r)&&(n-=t*a,r-=e*a),(c=Math.sqrt(n*n+r*r))&&(n/=c,r/=c,a/=c),t*r<e*n&&(t=-t,e=-e,a=-a,s=-s),{translateX:o,translateY:i,rotate:Math.atan2(e,t)*Fr,skewX:Math.atan(a)*Fr,scaleX:s,scaleY:c}}var We;function $u(t){const e=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?Bn:ti(e.a,e.b,e.c,e.d,e.e,e.f)}function Mu(t){return t==null||(We||(We=document.createElementNS("http://www.w3.org/2000/svg","g")),We.setAttribute("transform",t),!(t=We.transform.baseVal.consolidate()))?Bn:(t=t.matrix,ti(t.a,t.b,t.c,t.d,t.e,t.f))}function ei(t,e,n,r){function o(l){return l.length?l.pop()+" ":""}function i(l,u,f,h,g,y){if(l!==f||u!==h){var m=g.push("translate(",null,e,null,n);y.push({i:m-4,x:Dt(l,f)},{i:m-2,x:Dt(u,h)})}else(f||h)&&g.push("translate("+f+e+h+n)}function s(l,u,f,h){l!==u?(l-u>180?u+=360:u-l>180&&(l+=360),h.push({i:f.push(o(f)+"rotate(",null,r)-2,x:Dt(l,u)})):u&&f.push(o(f)+"rotate("+u+r)}function c(l,u,f,h){l!==u?h.push({i:f.push(o(f)+"skewX(",null,r)-2,x:Dt(l,u)}):u&&f.push(o(f)+"skewX("+u+r)}function a(l,u,f,h,g,y){if(l!==f||u!==h){var m=g.push(o(g)+"scale(",null,",",null,")");y.push({i:m-4,x:Dt(l,f)},{i:m-2,x:Dt(u,h)})}else(f!==1||h!==1)&&g.push(o(g)+"scale("+f+","+h+")")}return function(l,u){var f=[],h=[];return l=t(l),u=t(u),i(l.translateX,l.translateY,u.translateX,u.translateY,f,h),s(l.rotate,u.rotate,f,h),c(l.skewX,u.skewX,f,h),a(l.scaleX,l.scaleY,u.scaleX,u.scaleY,f,h),l=u=null,function(g){for(var y=-1,m=h.length,_;++y<m;)f[(_=h[y]).i]=_.x(g);return f.join("")}}}var Ru=ei($u,"px, ","px)","deg)"),ku=ei(Mu,", ",")",")"),Iu=1e-12;function Ur(t){return((t=Math.exp(t))+1/t)/2}function Pu(t){return((t=Math.exp(t))-1/t)/2}function zu(t){return((t=Math.exp(2*t))-1)/(t+1)}const Du=function t(e,n,r){function o(i,s){var c=i[0],a=i[1],l=i[2],u=s[0],f=s[1],h=s[2],g=u-c,y=f-a,m=g*g+y*y,_,p;if(m<Iu)p=Math.log(h/l)/e,_=function(z){return[c+z*g,a+z*y,l*Math.exp(e*z*p)]};else{var E=Math.sqrt(m),A=(h*h-l*l+r*m)/(2*l*n*E),x=(h*h-l*l-r*m)/(2*h*n*E),$=Math.log(Math.sqrt(A*A+1)-A),R=Math.log(Math.sqrt(x*x+1)-x);p=(R-$)/e,_=function(z){var H=z*p,M=Ur($),O=l/(n*E)*(M*zu(e*H+$)-Pu($));return[c+O*g,a+O*y,l*M/Ur(e*H+$)]}}return _.duration=p*1e3*e/Math.SQRT2,_}return o.rho=function(i){var s=Math.max(.001,+i),c=s*s,a=c*c;return t(s,c,a)},o}(Math.SQRT2,2,4);var ye=0,$e=0,Se=0,ni=1e3,cn,Me,an=0,jt=0,xn=0,He=typeof performance=="object"&&performance.now?performance:Date,ri=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function cr(){return jt||(ri(Hu),jt=He.now()+xn)}function Hu(){jt=0}function un(){this._call=this._time=this._next=null}un.prototype=oi.prototype={constructor:un,restart:function(t,e,n){if(typeof t!="function")throw new TypeError("callback is not a function");n=(n==null?cr():+n)+(e==null?0:+e),!this._next&&Me!==this&&(Me?Me._next=this:cn=this,Me=this),this._call=t,this._time=n,Yn()},stop:function(){this._call&&(this._call=null,this._time=1/0,Yn())}};function oi(t,e,n){var r=new un;return r.restart(t,e,n),r}function Ou(){cr(),++ye;for(var t=cn,e;t;)(e=jt-t._time)>=0&&t._call.call(void 0,e),t=t._next;--ye}function Xr(){jt=(an=He.now())+xn,ye=$e=0;try{Ou()}finally{ye=0,Vu(),jt=0}}function Lu(){var t=He.now(),e=t-an;e>ni&&(xn-=e,an=t)}function Vu(){for(var t,e=cn,n,r=1/0;e;)e._call?(r>e._time&&(r=e._time),t=e,e=e._next):(n=e._next,e._next=null,e=t?t._next=n:cn=n);Me=t,Yn(r)}function Yn(t){if(!ye){$e&&($e=clearTimeout($e));var e=t-jt;e>24?(t<1/0&&($e=setTimeout(Xr,t-He.now()-xn)),Se&&(Se=clearInterval(Se))):(Se||(an=He.now(),Se=setInterval(Lu,ni)),ye=1,ri(Xr))}}function Gr(t,e,n){var r=new un;return e=e==null?0:+e,r.restart(o=>{r.stop(),t(o+e)},e,n),r}var Bu=mn("start","end","cancel","interrupt"),Yu=[],ii=0,Wr=1,Fn=2,tn=3,qr=4,Un=5,en=6;function wn(t,e,n,r,o,i){var s=t.__transition;if(!s)t.__transition={};else if(n in s)return;Fu(t,n,{name:e,index:r,group:o,on:Bu,tween:Yu,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:ii})}function ar(t,e){var n=Et(t,e);if(n.state>ii)throw new Error("too late; already scheduled");return n}function Tt(t,e){var n=Et(t,e);if(n.state>tn)throw new Error("too late; already running");return n}function Et(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw new Error("transition not found");return n}function Fu(t,e,n){var r=t.__transition,o;r[e]=n,n.timer=oi(i,0,n.time);function i(l){n.state=Wr,n.timer.restart(s,n.delay,n.time),n.delay<=l&&s(l-n.delay)}function s(l){var u,f,h,g;if(n.state!==Wr)return a();for(u in r)if(g=r[u],g.name===n.name){if(g.state===tn)return Gr(s);g.state===qr?(g.state=en,g.timer.stop(),g.on.call("interrupt",t,t.__data__,g.index,g.group),delete r[u]):+u<e&&(g.state=en,g.timer.stop(),g.on.call("cancel",t,t.__data__,g.index,g.group),delete r[u])}if(Gr(function(){n.state===tn&&(n.state=qr,n.timer.restart(c,n.delay,n.time),c(l))}),n.state=Fn,n.on.call("start",t,t.__data__,n.index,n.group),n.state===Fn){for(n.state=tn,o=new Array(h=n.tween.length),u=0,f=-1;u<h;++u)(g=n.tween[u].value.call(t,t.__data__,n.index,n.group))&&(o[++f]=g);o.length=f+1}}function c(l){for(var u=l<n.duration?n.ease.call(null,l/n.duration):(n.timer.restart(a),n.state=Un,1),f=-1,h=o.length;++f<h;)o[f].call(t,u);n.state===Un&&(n.on.call("end",t,t.__data__,n.index,n.group),a())}function a(){n.state=en,n.timer.stop(),delete r[e];for(var l in r)return;delete t.__transition}}function nn(t,e){var n=t.__transition,r,o,i=!0,s;if(n){e=e==null?null:e+"";for(s in n){if((r=n[s]).name!==e){i=!1;continue}o=r.state>Fn&&r.state<Un,r.state=en,r.timer.stop(),r.on.call(o?"interrupt":"cancel",t,t.__data__,r.index,r.group),delete n[s]}i&&delete t.__transition}}function Uu(t){return this.each(function(){nn(this,t)})}function Xu(t,e){var n,r;return function(){var o=Tt(this,t),i=o.tween;if(i!==n){r=n=i;for(var s=0,c=r.length;s<c;++s)if(r[s].name===e){r=r.slice(),r.splice(s,1);break}}o.tween=r}}function Gu(t,e,n){var r,o;if(typeof n!="function")throw new Error;return function(){var i=Tt(this,t),s=i.tween;if(s!==r){o=(r=s).slice();for(var c={name:e,value:n},a=0,l=o.length;a<l;++a)if(o[a].name===e){o[a]=c;break}a===l&&o.push(c)}i.tween=o}}function Wu(t,e){var n=this._id;if(t+="",arguments.length<2){for(var r=Et(this.node(),n).tween,o=0,i=r.length,s;o<i;++o)if((s=r[o]).name===t)return s.value;return null}return this.each((e==null?Xu:Gu)(n,t,e))}function ur(t,e,n){var r=t._id;return t.each(function(){var o=Tt(this,r);(o.value||(o.value={}))[e]=n.apply(this,arguments)}),function(o){return Et(o,r).value[e]}}function si(t,e){var n;return(typeof e=="number"?Dt:e instanceof De?Yr:(n=De(e))?(e=n,Yr):Cu)(t,e)}function qu(t){return function(){this.removeAttribute(t)}}function Zu(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Ku(t,e,n){var r,o=n+"",i;return function(){var s=this.getAttribute(t);return s===o?null:s===r?i:i=e(r=s,n)}}function Qu(t,e,n){var r,o=n+"",i;return function(){var s=this.getAttributeNS(t.space,t.local);return s===o?null:s===r?i:i=e(r=s,n)}}function ju(t,e,n){var r,o,i;return function(){var s,c=n(this),a;return c==null?void this.removeAttribute(t):(s=this.getAttribute(t),a=c+"",s===a?null:s===r&&a===o?i:(o=a,i=e(r=s,c)))}}function Ju(t,e,n){var r,o,i;return function(){var s,c=n(this),a;return c==null?void this.removeAttributeNS(t.space,t.local):(s=this.getAttributeNS(t.space,t.local),a=c+"",s===a?null:s===r&&a===o?i:(o=a,i=e(r=s,c)))}}function tl(t,e){var n=yn(t),r=n==="transform"?ku:si;return this.attrTween(t,typeof e=="function"?(n.local?Ju:ju)(n,r,ur(this,"attr."+t,e)):e==null?(n.local?Zu:qu)(n):(n.local?Qu:Ku)(n,r,e))}function el(t,e){return function(n){this.setAttribute(t,e.call(this,n))}}function nl(t,e){return function(n){this.setAttributeNS(t.space,t.local,e.call(this,n))}}function rl(t,e){var n,r;function o(){var i=e.apply(this,arguments);return i!==r&&(n=(r=i)&&nl(t,i)),n}return o._value=e,o}function ol(t,e){var n,r;function o(){var i=e.apply(this,arguments);return i!==r&&(n=(r=i)&&el(t,i)),n}return o._value=e,o}function il(t,e){var n="attr."+t;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;var r=yn(t);return this.tween(n,(r.local?rl:ol)(r,e))}function sl(t,e){return function(){ar(this,t).delay=+e.apply(this,arguments)}}function cl(t,e){return e=+e,function(){ar(this,t).delay=e}}function al(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?sl:cl)(e,t)):Et(this.node(),e).delay}function ul(t,e){return function(){Tt(this,t).duration=+e.apply(this,arguments)}}function ll(t,e){return e=+e,function(){Tt(this,t).duration=e}}function fl(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?ul:ll)(e,t)):Et(this.node(),e).duration}function dl(t,e){if(typeof e!="function")throw new Error;return function(){Tt(this,t).ease=e}}function hl(t){var e=this._id;return arguments.length?this.each(dl(e,t)):Et(this.node(),e).ease}function gl(t,e){return function(){var n=e.apply(this,arguments);if(typeof n!="function")throw new Error;Tt(this,t).ease=n}}function pl(t){if(typeof t!="function")throw new Error;return this.each(gl(this._id,t))}function ml(t){typeof t!="function"&&(t=Oo(t));for(var e=this._groups,n=e.length,r=new Array(n),o=0;o<n;++o)for(var i=e[o],s=i.length,c=r[o]=[],a,l=0;l<s;++l)(a=i[l])&&t.call(a,a.__data__,l,i)&&c.push(a);return new kt(r,this._parents,this._name,this._id)}function yl(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,n=t._groups,r=e.length,o=n.length,i=Math.min(r,o),s=new Array(r),c=0;c<i;++c)for(var a=e[c],l=n[c],u=a.length,f=s[c]=new Array(u),h,g=0;g<u;++g)(h=a[g]||l[g])&&(f[g]=h);for(;c<r;++c)s[c]=e[c];return new kt(s,this._parents,this._name,this._id)}function xl(t){return(t+"").trim().split(/^|\s+/).every(function(e){var n=e.indexOf(".");return n>=0&&(e=e.slice(0,n)),!e||e==="start"})}function wl(t,e,n){var r,o,i=xl(e)?ar:Tt;return function(){var s=i(this,t),c=s.on;c!==r&&(o=(r=c).copy()).on(e,n),s.on=o}}function vl(t,e){var n=this._id;return arguments.length<2?Et(this.node(),n).on.on(t):this.each(wl(n,t,e))}function _l(t){return function(){var e=this.parentNode;for(var n in this.__transition)if(+n!==t)return;e&&e.removeChild(this)}}function El(){return this.on("end.remove",_l(this._id))}function bl(t){var e=this._name,n=this._id;typeof t!="function"&&(t=or(t));for(var r=this._groups,o=r.length,i=new Array(o),s=0;s<o;++s)for(var c=r[s],a=c.length,l=i[s]=new Array(a),u,f,h=0;h<a;++h)(u=c[h])&&(f=t.call(u,u.__data__,h,c))&&("__data__"in u&&(f.__data__=u.__data__),l[h]=f,wn(l[h],e,n,h,l,Et(u,n)));return new kt(i,this._parents,e,n)}function Sl(t){var e=this._name,n=this._id;typeof t!="function"&&(t=Ho(t));for(var r=this._groups,o=r.length,i=[],s=[],c=0;c<o;++c)for(var a=r[c],l=a.length,u,f=0;f<l;++f)if(u=a[f]){for(var h=t.call(u,u.__data__,f,a),g,y=Et(u,n),m=0,_=h.length;m<_;++m)(g=h[m])&&wn(g,e,n,m,h,y);i.push(h),s.push(u)}return new kt(i,s,e,n)}var Nl=Ve.prototype.constructor;function Al(){return new Nl(this._groups,this._parents)}function Tl(t,e){var n,r,o;return function(){var i=me(this,t),s=(this.style.removeProperty(t),me(this,t));return i===s?null:i===n&&s===r?o:o=e(n=i,r=s)}}function ci(t){return function(){this.style.removeProperty(t)}}function Cl(t,e,n){var r,o=n+"",i;return function(){var s=me(this,t);return s===o?null:s===r?i:i=e(r=s,n)}}function $l(t,e,n){var r,o,i;return function(){var s=me(this,t),c=n(this),a=c+"";return c==null&&(a=c=(this.style.removeProperty(t),me(this,t))),s===a?null:s===r&&a===o?i:(o=a,i=e(r=s,c))}}function Ml(t,e){var n,r,o,i="style."+e,s="end."+i,c;return function(){var a=Tt(this,t),l=a.on,u=a.value[i]==null?c||(c=ci(e)):void 0;(l!==n||o!==u)&&(r=(n=l).copy()).on(s,o=u),a.on=r}}function Rl(t,e,n){var r=(t+="")=="transform"?Ru:si;return e==null?this.styleTween(t,Tl(t,r)).on("end.style."+t,ci(t)):typeof e=="function"?this.styleTween(t,$l(t,r,ur(this,"style."+t,e))).each(Ml(this._id,t)):this.styleTween(t,Cl(t,r,e),n).on("end.style."+t,null)}function kl(t,e,n){return function(r){this.style.setProperty(t,e.call(this,r),n)}}function Il(t,e,n){var r,o;function i(){var s=e.apply(this,arguments);return s!==o&&(r=(o=s)&&kl(t,s,n)),r}return i._value=e,i}function Pl(t,e,n){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(e==null)return this.tween(r,null);if(typeof e!="function")throw new Error;return this.tween(r,Il(t,e,n??""))}function zl(t){return function(){this.textContent=t}}function Dl(t){return function(){var e=t(this);this.textContent=e??""}}function Hl(t){return this.tween("text",typeof t=="function"?Dl(ur(this,"text",t)):zl(t==null?"":t+""))}function Ol(t){return function(e){this.textContent=t.call(this,e)}}function Ll(t){var e,n;function r(){var o=t.apply(this,arguments);return o!==n&&(e=(n=o)&&Ol(o)),e}return r._value=t,r}function Vl(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(t==null)return this.tween(e,null);if(typeof t!="function")throw new Error;return this.tween(e,Ll(t))}function Bl(){for(var t=this._name,e=this._id,n=ai(),r=this._groups,o=r.length,i=0;i<o;++i)for(var s=r[i],c=s.length,a,l=0;l<c;++l)if(a=s[l]){var u=Et(a,e);wn(a,t,n,l,s,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new kt(r,this._parents,t,n)}function Yl(){var t,e,n=this,r=n._id,o=n.size();return new Promise(function(i,s){var c={value:s},a={value:function(){--o===0&&i()}};n.each(function(){var l=Tt(this,r),u=l.on;u!==t&&(e=(t=u).copy(),e._.cancel.push(c),e._.interrupt.push(c),e._.end.push(a)),l.on=e}),o===0&&i()})}var Fl=0;function kt(t,e,n,r){this._groups=t,this._parents=e,this._name=n,this._id=r}function ai(){return++Fl}var Mt=Ve.prototype;kt.prototype={constructor:kt,select:bl,selectAll:Sl,selectChild:Mt.selectChild,selectChildren:Mt.selectChildren,filter:ml,merge:yl,selection:Al,transition:Bl,call:Mt.call,nodes:Mt.nodes,node:Mt.node,size:Mt.size,empty:Mt.empty,each:Mt.each,on:vl,attr:tl,attrTween:il,style:Rl,styleTween:Pl,text:Hl,textTween:Vl,remove:El,tween:Wu,delay:al,duration:fl,ease:hl,easeVarying:pl,end:Yl,[Symbol.iterator]:Mt[Symbol.iterator]};function Ul(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var Xl={time:null,delay:0,duration:250,ease:Ul};function Gl(t,e){for(var n;!(n=t.__transition)||!(n=n[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return n}function Wl(t){var e,n;t instanceof kt?(e=t._id,t=t._name):(e=ai(),(n=Xl).time=cr(),t=t==null?null:t+"");for(var r=this._groups,o=r.length,i=0;i<o;++i)for(var s=r[i],c=s.length,a,l=0;l<c;++l)(a=s[l])&&wn(a,t,e,l,s,n||Gl(a,e));return new kt(r,this._parents,t,e)}Ve.prototype.interrupt=Uu;Ve.prototype.transition=Wl;const qe=t=>()=>t;function ql(t,{sourceEvent:e,target:n,transform:r,dispatch:o}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:o}})}function Rt(t,e,n){this.k=t,this.x=e,this.y=n}Rt.prototype={constructor:Rt,scale:function(t){return t===1?this:new Rt(this.k*t,this.x,this.y)},translate:function(t,e){return t===0&e===0?this:new Rt(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var Lt=new Rt(1,0,0);Rt.prototype;function Mn(t){t.stopImmediatePropagation()}function Ne(t){t.preventDefault(),t.stopImmediatePropagation()}function Zl(t){return(!t.ctrlKey||t.type==="wheel")&&!t.button}function Kl(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t,t.hasAttribute("viewBox")?(t=t.viewBox.baseVal,[[t.x,t.y],[t.x+t.width,t.y+t.height]]):[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]):[[0,0],[t.clientWidth,t.clientHeight]]}function Zr(){return this.__zoom||Lt}function Ql(t){return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function jl(){return navigator.maxTouchPoints||"ontouchstart"in this}function Jl(t,e,n){var r=t.invertX(e[0][0])-n[0][0],o=t.invertX(e[1][0])-n[1][0],i=t.invertY(e[0][1])-n[0][1],s=t.invertY(e[1][1])-n[1][1];return t.translate(o>r?(r+o)/2:Math.min(0,r)||Math.max(0,o),s>i?(i+s)/2:Math.min(0,i)||Math.max(0,s))}function tf(){var t=Zl,e=Kl,n=Jl,r=Ql,o=jl,i=[0,1/0],s=[[-1/0,-1/0],[1/0,1/0]],c=250,a=Du,l=mn("start","zoom","end"),u,f,h,g=500,y=150,m=0,_=10;function p(d){d.property("__zoom",Zr).on("wheel.zoom",H,{passive:!1}).on("mousedown.zoom",M).on("dblclick.zoom",O).filter(o).on("touchstart.zoom",D).on("touchmove.zoom",V).on("touchend.zoom touchcancel.zoom",L).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}p.transform=function(d,b,v,C){var k=d.selection?d.selection():d;k.property("__zoom",Zr),d!==k?$(d,b,v,C):k.interrupt().each(function(){R(this,arguments).event(C).start().zoom(null,typeof b=="function"?b.apply(this,arguments):b).end()})},p.scaleBy=function(d,b,v,C){p.scaleTo(d,function(){var k=this.__zoom.k,w=typeof b=="function"?b.apply(this,arguments):b;return k*w},v,C)},p.scaleTo=function(d,b,v,C){p.transform(d,function(){var k=e.apply(this,arguments),w=this.__zoom,T=v==null?x(k):typeof v=="function"?v.apply(this,arguments):v,I=w.invert(T),P=typeof b=="function"?b.apply(this,arguments):b;return n(A(E(w,P),T,I),k,s)},v,C)},p.translateBy=function(d,b,v,C){p.transform(d,function(){return n(this.__zoom.translate(typeof b=="function"?b.apply(this,arguments):b,typeof v=="function"?v.apply(this,arguments):v),e.apply(this,arguments),s)},null,C)},p.translateTo=function(d,b,v,C,k){p.transform(d,function(){var w=e.apply(this,arguments),T=this.__zoom,I=C==null?x(w):typeof C=="function"?C.apply(this,arguments):C;return n(Lt.translate(I[0],I[1]).scale(T.k).translate(typeof b=="function"?-b.apply(this,arguments):-b,typeof v=="function"?-v.apply(this,arguments):-v),w,s)},C,k)};function E(d,b){return b=Math.max(i[0],Math.min(i[1],b)),b===d.k?d:new Rt(b,d.x,d.y)}function A(d,b,v){var C=b[0]-v[0]*d.k,k=b[1]-v[1]*d.k;return C===d.x&&k===d.y?d:new Rt(d.k,C,k)}function x(d){return[(+d[0][0]+ +d[1][0])/2,(+d[0][1]+ +d[1][1])/2]}function $(d,b,v,C){d.on("start.zoom",function(){R(this,arguments).event(C).start()}).on("interrupt.zoom end.zoom",function(){R(this,arguments).event(C).end()}).tween("zoom",function(){var k=this,w=arguments,T=R(k,w).event(C),I=e.apply(k,w),P=v==null?x(I):typeof v=="function"?v.apply(k,w):v,Y=Math.max(I[1][0]-I[0][0],I[1][1]-I[0][1]),B=k.__zoom,X=typeof b=="function"?b.apply(k,w):b,q=a(B.invert(P).concat(Y/B.k),X.invert(P).concat(Y/X.k));return function(Z){if(Z===1)Z=X;else{var K=q(Z),et=Y/K[2];Z=new Rt(et,P[0]-K[0]*et,P[1]-K[1]*et)}T.zoom(null,Z)}})}function R(d,b,v){return!v&&d.__zooming||new z(d,b)}function z(d,b){this.that=d,this.args=b,this.active=0,this.sourceEvent=null,this.extent=e.apply(d,b),this.taps=0}z.prototype={event:function(d){return d&&(this.sourceEvent=d),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(d,b){return this.mouse&&d!=="mouse"&&(this.mouse[1]=b.invert(this.mouse[0])),this.touch0&&d!=="touch"&&(this.touch0[1]=b.invert(this.touch0[0])),this.touch1&&d!=="touch"&&(this.touch1[1]=b.invert(this.touch1[0])),this.that.__zoom=b,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(d){var b=wt(this.that).datum();l.call(d,this.that,new ql(d,{sourceEvent:this.sourceEvent,target:p,transform:this.that.__zoom,dispatch:l}),b)}};function H(d,...b){if(!t.apply(this,arguments))return;var v=R(this,b).event(d),C=this.__zoom,k=Math.max(i[0],Math.min(i[1],C.k*Math.pow(2,r.apply(this,arguments)))),w=Nt(d);if(v.wheel)(v.mouse[0][0]!==w[0]||v.mouse[0][1]!==w[1])&&(v.mouse[1]=C.invert(v.mouse[0]=w)),clearTimeout(v.wheel);else{if(C.k===k)return;v.mouse=[w,C.invert(w)],nn(this),v.start()}Ne(d),v.wheel=setTimeout(T,y),v.zoom("mouse",n(A(E(C,k),v.mouse[0],v.mouse[1]),v.extent,s));function T(){v.wheel=null,v.end()}}function M(d,...b){if(h||!t.apply(this,arguments))return;var v=d.currentTarget,C=R(this,b,!0).event(d),k=wt(d.view).on("mousemove.zoom",P,!0).on("mouseup.zoom",Y,!0),w=Nt(d,v),T=d.clientX,I=d.clientY;qo(d.view),Mn(d),C.mouse=[w,this.__zoom.invert(w)],nn(this),C.start();function P(B){if(Ne(B),!C.moved){var X=B.clientX-T,q=B.clientY-I;C.moved=X*X+q*q>m}C.event(B).zoom("mouse",n(A(C.that.__zoom,C.mouse[0]=Nt(B,v),C.mouse[1]),C.extent,s))}function Y(B){k.on("mousemove.zoom mouseup.zoom",null),Zo(B.view,C.moved),Ne(B),C.event(B).end()}}function O(d,...b){if(t.apply(this,arguments)){var v=this.__zoom,C=Nt(d.changedTouches?d.changedTouches[0]:d,this),k=v.invert(C),w=v.k*(d.shiftKey?.5:2),T=n(A(E(v,w),C,k),e.apply(this,b),s);Ne(d),c>0?wt(this).transition().duration(c).call($,T,C,d):wt(this).call(p.transform,T,C,d)}}function D(d,...b){if(t.apply(this,arguments)){var v=d.touches,C=v.length,k=R(this,b,d.changedTouches.length===C).event(d),w,T,I,P;for(Mn(d),T=0;T<C;++T)I=v[T],P=Nt(I,this),P=[P,this.__zoom.invert(P),I.identifier],k.touch0?!k.touch1&&k.touch0[2]!==P[2]&&(k.touch1=P,k.taps=0):(k.touch0=P,w=!0,k.taps=1+!!u);u&&(u=clearTimeout(u)),w&&(k.taps<2&&(f=P[0],u=setTimeout(function(){u=null},g)),nn(this),k.start())}}function V(d,...b){if(this.__zooming){var v=R(this,b).event(d),C=d.changedTouches,k=C.length,w,T,I,P;for(Ne(d),w=0;w<k;++w)T=C[w],I=Nt(T,this),v.touch0&&v.touch0[2]===T.identifier?v.touch0[0]=I:v.touch1&&v.touch1[2]===T.identifier&&(v.touch1[0]=I);if(T=v.that.__zoom,v.touch1){var Y=v.touch0[0],B=v.touch0[1],X=v.touch1[0],q=v.touch1[1],Z=(Z=X[0]-Y[0])*Z+(Z=X[1]-Y[1])*Z,K=(K=q[0]-B[0])*K+(K=q[1]-B[1])*K;T=E(T,Math.sqrt(Z/K)),I=[(Y[0]+X[0])/2,(Y[1]+X[1])/2],P=[(B[0]+q[0])/2,(B[1]+q[1])/2]}else if(v.touch0)I=v.touch0[0],P=v.touch0[1];else return;v.zoom("touch",n(A(T,I,P),v.extent,s))}}function L(d,...b){if(this.__zooming){var v=R(this,b).event(d),C=d.changedTouches,k=C.length,w,T;for(Mn(d),h&&clearTimeout(h),h=setTimeout(function(){h=null},g),w=0;w<k;++w)T=C[w],v.touch0&&v.touch0[2]===T.identifier?delete v.touch0:v.touch1&&v.touch1[2]===T.identifier&&delete v.touch1;if(v.touch1&&!v.touch0&&(v.touch0=v.touch1,delete v.touch1),v.touch0)v.touch0[1]=this.__zoom.invert(v.touch0[0]);else if(v.end(),v.taps===2&&(T=Nt(T,this),Math.hypot(f[0]-T[0],f[1]-T[1])<_)){var I=wt(this).on("dblclick.zoom");I&&I.apply(this,arguments)}}}return p.wheelDelta=function(d){return arguments.length?(r=typeof d=="function"?d:qe(+d),p):r},p.filter=function(d){return arguments.length?(t=typeof d=="function"?d:qe(!!d),p):t},p.touchable=function(d){return arguments.length?(o=typeof d=="function"?d:qe(!!d),p):o},p.extent=function(d){return arguments.length?(e=typeof d=="function"?d:qe([[+d[0][0],+d[0][1]],[+d[1][0],+d[1][1]]]),p):e},p.scaleExtent=function(d){return arguments.length?(i[0]=+d[0],i[1]=+d[1],p):[i[0],i[1]]},p.translateExtent=function(d){return arguments.length?(s[0][0]=+d[0][0],s[1][0]=+d[1][0],s[0][1]=+d[0][1],s[1][1]=+d[1][1],p):[[s[0][0],s[0][1]],[s[1][0],s[1][1]]]},p.constrain=function(d){return arguments.length?(n=d,p):n},p.duration=function(d){return arguments.length?(c=+d,p):c},p.interpolate=function(d){return arguments.length?(a=d,p):a},p.on=function(){var d=l.on.apply(l,arguments);return d===l?p:d},p.clickDistance=function(d){return arguments.length?(m=(d=+d)*d,p):Math.sqrt(m)},p.tapDistance=function(d){return arguments.length?(_=+d,p):_},p}const vn=S.createContext(null),ef=vn.Provider,It={error001:()=>"[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:t=>`Node type "${t}" 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:t=>`The old edge with id=${t} does not exist.`,error009:t=>`Marker type "${t}" doesn't exist.`,error008:(t,e)=>`Couldn't create edge for ${t?"target":"source"} handle id: "${t?e.targetHandle:e.sourceHandle}", edge id: ${e.id}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:t=>`Edge type "${t}" not found. Using fallback type "default".`,error012:t=>`Node with id "${t}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`},ui=It.error001();function tt(t,e){const n=S.useContext(vn);if(n===null)throw new Error(ui);return zo(n,t,e)}const ot=()=>{const t=S.useContext(vn);if(t===null)throw new Error(ui);return S.useMemo(()=>({getState:t.getState,setState:t.setState,subscribe:t.subscribe,destroy:t.destroy}),[t])},nf=t=>t.userSelectionActive?"none":"all";function li({position:t,children:e,className:n,style:r,...o}){const i=tt(nf),s=`${t}`.split("-");return N.createElement("div",{className:ut(["react-flow__panel",n,...s]),style:{...r,pointerEvents:i},...o},e)}function rf({proOptions:t,position:e="bottom-right"}){return t!=null&&t.hideAttribution?null:N.createElement(li,{position:e,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://reactflow.dev/pro"},N.createElement("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution"},"React Flow"))}const of=({x:t,y:e,label:n,labelStyle:r={},labelShowBg:o=!0,labelBgStyle:i={},labelBgPadding:s=[2,4],labelBgBorderRadius:c=2,children:a,className:l,...u})=>{const f=S.useRef(null),[h,g]=S.useState({x:0,y:0,width:0,height:0}),y=ut(["react-flow__edge-textwrapper",l]);return S.useEffect(()=>{if(f.current){const m=f.current.getBBox();g({x:m.x,y:m.y,width:m.width,height:m.height})}},[n]),typeof n>"u"||!n?null:N.createElement("g",{transform:`translate(${t-h.width/2} ${e-h.height/2})`,className:y,visibility:h.width?"visible":"hidden",...u},o&&N.createElement("rect",{width:h.width+2*s[0],x:-s[0],y:-s[1],height:h.height+2*s[1],className:"react-flow__edge-textbg",style:i,rx:c,ry:c}),N.createElement("text",{className:"react-flow__edge-text",y:h.height/2,dy:"0.3em",ref:f,style:r},n),a)};var sf=S.memo(of);const lr=t=>({width:t.offsetWidth,height:t.offsetHeight}),xe=(t,e=0,n=1)=>Math.min(Math.max(t,e),n),fr=(t={x:0,y:0},e)=>({x:xe(t.x,e[0][0],e[1][0]),y:xe(t.y,e[0][1],e[1][1])}),Kr=(t,e,n)=>t<e?xe(Math.abs(t-e),1,50)/50:t>n?-xe(Math.abs(t-n),1,50)/50:0,fi=(t,e)=>{const n=Kr(t.x,35,e.width-35)*20,r=Kr(t.y,35,e.height-35)*20;return[n,r]},di=t=>{var e;return((e=t.getRootNode)==null?void 0:e.call(t))||(window==null?void 0:window.document)},cf=(t,e)=>({x:Math.min(t.x,e.x),y:Math.min(t.y,e.y),x2:Math.max(t.x2,e.x2),y2:Math.max(t.y2,e.y2)}),dr=({x:t,y:e,width:n,height:r})=>({x:t,y:e,x2:t+n,y2:e+r}),af=({x:t,y:e,x2:n,y2:r})=>({x:t,y:e,width:n-t,height:r-e}),Qr=t=>({...t.positionAbsolute||{x:0,y:0},width:t.width||0,height:t.height||0}),Xn=(t,e)=>{const n=Math.max(0,Math.min(t.x+t.width,e.x+e.width)-Math.max(t.x,e.x)),r=Math.max(0,Math.min(t.y+t.height,e.y+e.height)-Math.max(t.y,e.y));return Math.ceil(n*r)},uf=t=>pt(t.width)&&pt(t.height)&&pt(t.x)&&pt(t.y),pt=t=>!isNaN(t)&&isFinite(t),nt=Symbol.for("internals"),hi=["Enter"," ","Escape"],lf=(t,e)=>{},ff=t=>"nativeEvent"in t;function Gn(t){var o,i;const e=ff(t)?t.nativeEvent:t,n=((i=(o=e.composedPath)==null?void 0:o.call(e))==null?void 0:i[0])||t.target;return["INPUT","SELECT","TEXTAREA"].includes(n==null?void 0:n.nodeName)||(n==null?void 0:n.hasAttribute("contenteditable"))||!!(n!=null&&n.closest(".nokey"))}const gi=t=>"clientX"in t,Vt=(t,e)=>{var i,s;const n=gi(t),r=n?t.clientX:(i=t.touches)==null?void 0:i[0].clientX,o=n?t.clientY:(s=t.touches)==null?void 0:s[0].clientY;return{x:r-((e==null?void 0:e.left)??0),y:o-((e==null?void 0:e.top)??0)}},ln=()=>{var t;return typeof navigator<"u"&&((t=navigator==null?void 0:navigator.userAgent)==null?void 0:t.indexOf("Mac"))>=0},Ye=({id:t,path:e,labelX:n,labelY:r,label:o,labelStyle:i,labelShowBg:s,labelBgStyle:c,labelBgPadding:a,labelBgBorderRadius:l,style:u,markerEnd:f,markerStart:h,interactionWidth:g=20})=>N.createElement(N.Fragment,null,N.createElement("path",{id:t,style:u,d:e,fill:"none",className:"react-flow__edge-path",markerEnd:f,markerStart:h}),g&&N.createElement("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:g,className:"react-flow__edge-interaction"}),o&&pt(n)&&pt(r)?N.createElement(sf,{x:n,y:r,label:o,labelStyle:i,labelShowBg:s,labelBgStyle:c,labelBgPadding:a,labelBgBorderRadius:l}):null);Ye.displayName="BaseEdge";function Ae(t,e,n){return n===void 0?n:r=>{const o=e().edges.find(i=>i.id===t);o&&n(r,{...o})}}function pi({sourceX:t,sourceY:e,targetX:n,targetY:r}){const o=Math.abs(n-t)/2,i=n<t?n+o:n-o,s=Math.abs(r-e)/2,c=r<e?r+s:r-s;return[i,c,o,s]}function mi({sourceX:t,sourceY:e,targetX:n,targetY:r,sourceControlX:o,sourceControlY:i,targetControlX:s,targetControlY:c}){const a=t*.125+o*.375+s*.375+n*.125,l=e*.125+i*.375+c*.375+r*.125,u=Math.abs(a-t),f=Math.abs(l-e);return[a,l,u,f]}var Jt;(function(t){t.Strict="strict",t.Loose="loose"})(Jt||(Jt={}));var Kt;(function(t){t.Free="free",t.Vertical="vertical",t.Horizontal="horizontal"})(Kt||(Kt={}));var Oe;(function(t){t.Partial="partial",t.Full="full"})(Oe||(Oe={}));var Ot;(function(t){t.Bezier="default",t.Straight="straight",t.Step="step",t.SmoothStep="smoothstep",t.SimpleBezier="simplebezier"})(Ot||(Ot={}));var fn;(function(t){t.Arrow="arrow",t.ArrowClosed="arrowclosed"})(fn||(fn={}));var F;(function(t){t.Left="left",t.Top="top",t.Right="right",t.Bottom="bottom"})(F||(F={}));function jr({pos:t,x1:e,y1:n,x2:r,y2:o}){return t===F.Left||t===F.Right?[.5*(e+r),n]:[e,.5*(n+o)]}function yi({sourceX:t,sourceY:e,sourcePosition:n=F.Bottom,targetX:r,targetY:o,targetPosition:i=F.Top}){const[s,c]=jr({pos:n,x1:t,y1:e,x2:r,y2:o}),[a,l]=jr({pos:i,x1:r,y1:o,x2:t,y2:e}),[u,f,h,g]=mi({sourceX:t,sourceY:e,targetX:r,targetY:o,sourceControlX:s,sourceControlY:c,targetControlX:a,targetControlY:l});return[`M${t},${e} C${s},${c} ${a},${l} ${r},${o}`,u,f,h,g]}const hr=S.memo(({sourceX:t,sourceY:e,targetX:n,targetY:r,sourcePosition:o=F.Bottom,targetPosition:i=F.Top,label:s,labelStyle:c,labelShowBg:a,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:f,style:h,markerEnd:g,markerStart:y,interactionWidth:m})=>{const[_,p,E]=yi({sourceX:t,sourceY:e,sourcePosition:o,targetX:n,targetY:r,targetPosition:i});return N.createElement(Ye,{path:_,labelX:p,labelY:E,label:s,labelStyle:c,labelShowBg:a,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:f,style:h,markerEnd:g,markerStart:y,interactionWidth:m})});hr.displayName="SimpleBezierEdge";const Jr={[F.Left]:{x:-1,y:0},[F.Right]:{x:1,y:0},[F.Top]:{x:0,y:-1},[F.Bottom]:{x:0,y:1}},df=({source:t,sourcePosition:e=F.Bottom,target:n})=>e===F.Left||e===F.Right?t.x<n.x?{x:1,y:0}:{x:-1,y:0}:t.y<n.y?{x:0,y:1}:{x:0,y:-1},to=(t,e)=>Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2));function hf({source:t,sourcePosition:e=F.Bottom,target:n,targetPosition:r=F.Top,center:o,offset:i}){const s=Jr[e],c=Jr[r],a={x:t.x+s.x*i,y:t.y+s.y*i},l={x:n.x+c.x*i,y:n.y+c.y*i},u=df({source:a,sourcePosition:e,target:l}),f=u.x!==0?"x":"y",h=u[f];let g=[],y,m;const _={x:0,y:0},p={x:0,y:0},[E,A,x,$]=pi({sourceX:t.x,sourceY:t.y,targetX:n.x,targetY:n.y});if(s[f]*c[f]===-1){y=o.x??E,m=o.y??A;const z=[{x:y,y:a.y},{x:y,y:l.y}],H=[{x:a.x,y:m},{x:l.x,y:m}];s[f]===h?g=f==="x"?z:H:g=f==="x"?H:z}else{const z=[{x:a.x,y:l.y}],H=[{x:l.x,y:a.y}];if(f==="x"?g=s.x===h?H:z:g=s.y===h?z:H,e===r){const L=Math.abs(t[f]-n[f]);if(L<=i){const d=Math.min(i-1,i-L);s[f]===h?_[f]=(a[f]>t[f]?-1:1)*d:p[f]=(l[f]>n[f]?-1:1)*d}}if(e!==r){const L=f==="x"?"y":"x",d=s[f]===c[L],b=a[L]>l[L],v=a[L]<l[L];(s[f]===1&&(!d&&b||d&&v)||s[f]!==1&&(!d&&v||d&&b))&&(g=f==="x"?z:H)}const M={x:a.x+_.x,y:a.y+_.y},O={x:l.x+p.x,y:l.y+p.y},D=Math.max(Math.abs(M.x-g[0].x),Math.abs(O.x-g[0].x)),V=Math.max(Math.abs(M.y-g[0].y),Math.abs(O.y-g[0].y));D>=V?(y=(M.x+O.x)/2,m=g[0].y):(y=g[0].x,m=(M.y+O.y)/2)}return[[t,{x:a.x+_.x,y:a.y+_.y},...g,{x:l.x+p.x,y:l.y+p.y},n],y,m,x,$]}function gf(t,e,n,r){const o=Math.min(to(t,e)/2,to(e,n)/2,r),{x:i,y:s}=e;if(t.x===i&&i===n.x||t.y===s&&s===n.y)return`L${i} ${s}`;if(t.y===s){const l=t.x<n.x?-1:1,u=t.y<n.y?1:-1;return`L ${i+o*l},${s}Q ${i},${s} ${i},${s+o*u}`}const c=t.x<n.x?1:-1,a=t.y<n.y?-1:1;return`L ${i},${s+o*a}Q ${i},${s} ${i+o*c},${s}`}function Wn({sourceX:t,sourceY:e,sourcePosition:n=F.Bottom,targetX:r,targetY:o,targetPosition:i=F.Top,borderRadius:s=5,centerX:c,centerY:a,offset:l=20}){const[u,f,h,g,y]=hf({source:{x:t,y:e},sourcePosition:n,target:{x:r,y:o},targetPosition:i,center:{x:c,y:a},offset:l});return[u.reduce((_,p,E)=>{let A="";return E>0&&E<u.length-1?A=gf(u[E-1],p,u[E+1],s):A=`${E===0?"M":"L"}${p.x} ${p.y}`,_+=A,_},""),f,h,g,y]}const _n=S.memo(({sourceX:t,sourceY:e,targetX:n,targetY:r,label:o,labelStyle:i,labelShowBg:s,labelBgStyle:c,labelBgPadding:a,labelBgBorderRadius:l,style:u,sourcePosition:f=F.Bottom,targetPosition:h=F.Top,markerEnd:g,markerStart:y,pathOptions:m,interactionWidth:_})=>{const[p,E,A]=Wn({sourceX:t,sourceY:e,sourcePosition:f,targetX:n,targetY:r,targetPosition:h,borderRadius:m==null?void 0:m.borderRadius,offset:m==null?void 0:m.offset});return N.createElement(Ye,{path:p,labelX:E,labelY:A,label:o,labelStyle:i,labelShowBg:s,labelBgStyle:c,labelBgPadding:a,labelBgBorderRadius:l,style:u,markerEnd:g,markerStart:y,interactionWidth:_})});_n.displayName="SmoothStepEdge";const gr=S.memo(t=>{var e;return N.createElement(_n,{...t,pathOptions:S.useMemo(()=>{var n;return{borderRadius:0,offset:(n=t.pathOptions)==null?void 0:n.offset}},[(e=t.pathOptions)==null?void 0:e.offset])})});gr.displayName="StepEdge";function pf({sourceX:t,sourceY:e,targetX:n,targetY:r}){const[o,i,s,c]=pi({sourceX:t,sourceY:e,targetX:n,targetY:r});return[`M ${t},${e}L ${n},${r}`,o,i,s,c]}const pr=S.memo(({sourceX:t,sourceY:e,targetX:n,targetY:r,label:o,labelStyle:i,labelShowBg:s,labelBgStyle:c,labelBgPadding:a,labelBgBorderRadius:l,style:u,markerEnd:f,markerStart:h,interactionWidth:g})=>{const[y,m,_]=pf({sourceX:t,sourceY:e,targetX:n,targetY:r});return N.createElement(Ye,{path:y,labelX:m,labelY:_,label:o,labelStyle:i,labelShowBg:s,labelBgStyle:c,labelBgPadding:a,labelBgBorderRadius:l,style:u,markerEnd:f,markerStart:h,interactionWidth:g})});pr.displayName="StraightEdge";function Ze(t,e){return t>=0?.5*t:e*25*Math.sqrt(-t)}function eo({pos:t,x1:e,y1:n,x2:r,y2:o,c:i}){switch(t){case F.Left:return[e-Ze(e-r,i),n];case F.Right:return[e+Ze(r-e,i),n];case F.Top:return[e,n-Ze(n-o,i)];case F.Bottom:return[e,n+Ze(o-n,i)]}}function xi({sourceX:t,sourceY:e,sourcePosition:n=F.Bottom,targetX:r,targetY:o,targetPosition:i=F.Top,curvature:s=.25}){const[c,a]=eo({pos:n,x1:t,y1:e,x2:r,y2:o,c:s}),[l,u]=eo({pos:i,x1:r,y1:o,x2:t,y2:e,c:s}),[f,h,g,y]=mi({sourceX:t,sourceY:e,targetX:r,targetY:o,sourceControlX:c,sourceControlY:a,targetControlX:l,targetControlY:u});return[`M${t},${e} C${c},${a} ${l},${u} ${r},${o}`,f,h,g,y]}const dn=S.memo(({sourceX:t,sourceY:e,targetX:n,targetY:r,sourcePosition:o=F.Bottom,targetPosition:i=F.Top,label:s,labelStyle:c,labelShowBg:a,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:f,style:h,markerEnd:g,markerStart:y,pathOptions:m,interactionWidth:_})=>{const[p,E,A]=xi({sourceX:t,sourceY:e,sourcePosition:o,targetX:n,targetY:r,targetPosition:i,curvature:m==null?void 0:m.curvature});return N.createElement(Ye,{path:p,labelX:E,labelY:A,label:s,labelStyle:c,labelShowBg:a,labelBgStyle:l,labelBgPadding:u,labelBgBorderRadius:f,style:h,markerEnd:g,markerStart:y,interactionWidth:_})});dn.displayName="BezierEdge";const mr=S.createContext(null),mf=mr.Provider;mr.Consumer;const yf=()=>S.useContext(mr),xf=t=>"id"in t&&"source"in t&&"target"in t,wf=({source:t,sourceHandle:e,target:n,targetHandle:r})=>`reactflow__edge-${t}${e||""}-${n}${r||""}`,qn=(t,e)=>typeof t>"u"?"":typeof t=="string"?t:`${e?`${e}__`:""}${Object.keys(t).sort().map(r=>`${r}=${t[r]}`).join("&")}`,vf=(t,e)=>e.some(n=>n.source===t.source&&n.target===t.target&&(n.sourceHandle===t.sourceHandle||!n.sourceHandle&&!t.sourceHandle)&&(n.targetHandle===t.targetHandle||!n.targetHandle&&!t.targetHandle)),_f=(t,e)=>{if(!t.source||!t.target)return e;let n;return xf(t)?n={...t}:n={...t,id:wf(t)},vf(n,e)?e:e.concat(n)},Zn=({x:t,y:e},[n,r,o],i,[s,c])=>{const a={x:(t-n)/o,y:(e-r)/o};return i?{x:s*Math.round(a.x/s),y:c*Math.round(a.y/c)}:a},wi=({x:t,y:e},[n,r,o])=>({x:t*o+n,y:e*o+r}),he=(t,e=[0,0])=>{if(!t)return{x:0,y:0,positionAbsolute:{x:0,y:0}};const n=(t.width??0)*e[0],r=(t.height??0)*e[1],o={x:t.position.x-n,y:t.position.y-r};return{...o,positionAbsolute:t.positionAbsolute?{x:t.positionAbsolute.x-n,y:t.positionAbsolute.y-r}:o}},yr=(t,e=[0,0])=>{if(t.length===0)return{x:0,y:0,width:0,height:0};const n=t.reduce((r,o)=>{const{x:i,y:s}=he(o,e).positionAbsolute;return cf(r,dr({x:i,y:s,width:o.width||0,height:o.height||0}))},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return af(n)},vi=(t,e,[n,r,o]=[0,0,1],i=!1,s=!1,c=[0,0])=>{const a={x:(e.x-n)/o,y:(e.y-r)/o,width:e.width/o,height:e.height/o},l=[];return t.forEach(u=>{const{width:f,height:h,selectable:g=!0,hidden:y=!1}=u;if(s&&!g||y)return!1;const{positionAbsolute:m}=he(u,c),_={x:m.x,y:m.y,width:f||0,height:h||0},p=Xn(a,_),E=typeof f>"u"||typeof h>"u"||f===null||h===null,A=i&&p>0,x=(f||0)*(h||0);(E||A||p>=x||u.dragging)&&l.push(u)}),l},_i=(t,e)=>{const n=t.map(r=>r.id);return e.filter(r=>n.includes(r.source)||n.includes(r.target))},Ei=(t,e,n,r,o,i=.1)=>{const s=e/(t.width*(1+i)),c=n/(t.height*(1+i)),a=Math.min(s,c),l=xe(a,r,o),u=t.x+t.width/2,f=t.y+t.height/2,h=e/2-u*l,g=n/2-f*l;return{x:h,y:g,zoom:l}},qt=(t,e=0)=>t.transition().duration(e);function no(t,e,n,r){return(e[n]||[]).reduce((o,i)=>{var s,c;return`${t.id}-${i.id}-${n}`!==r&&o.push({id:i.id||null,type:n,nodeId:t.id,x:(((s=t.positionAbsolute)==null?void 0:s.x)??0)+i.x+i.width/2,y:(((c=t.positionAbsolute)==null?void 0:c.y)??0)+i.y+i.height/2}),o},[])}function Ef(t,e,n,r,o,i){const{x:s,y:c}=Vt(t),l=e.elementsFromPoint(s,c).find(y=>y.classList.contains("react-flow__handle"));if(l){const y=l.getAttribute("data-nodeid");if(y){const m=xr(void 0,l),_=l.getAttribute("data-handleid"),p=i({nodeId:y,id:_,type:m});if(p){const E=o.find(A=>A.nodeId===y&&A.type===m&&A.id===_);return{handle:{id:_,type:m,nodeId:y,x:(E==null?void 0:E.x)||n.x,y:(E==null?void 0:E.y)||n.y},validHandleResult:p}}}}let u=[],f=1/0;if(o.forEach(y=>{const m=Math.sqrt((y.x-n.x)**2+(y.y-n.y)**2);if(m<=r){const _=i(y);m<=f&&(m<f?u=[{handle:y,validHandleResult:_}]:m===f&&u.push({handle:y,validHandleResult:_}),f=m)}}),!u.length)return{handle:null,validHandleResult:bi()};if(u.length===1)return u[0];const h=u.some(({validHandleResult:y})=>y.isValid),g=u.some(({handle:y})=>y.type==="target");return u.find(({handle:y,validHandleResult:m})=>g?y.type==="target":h?m.isValid:!0)||u[0]}const bf={source:null,target:null,sourceHandle:null,targetHandle:null},bi=()=>({handleDomNode:null,isValid:!1,connection:bf,endHandle:null});function Si(t,e,n,r,o,i,s){const c=o==="target",a=s.querySelector(`.react-flow__handle[data-id="${t==null?void 0:t.nodeId}-${t==null?void 0:t.id}-${t==null?void 0:t.type}"]`),l={...bi(),handleDomNode:a};if(a){const u=xr(void 0,a),f=a.getAttribute("data-nodeid"),h=a.getAttribute("data-handleid"),g=a.classList.contains("connectable"),y=a.classList.contains("connectableend"),m={source:c?f:n,sourceHandle:c?h:r,target:c?n:f,targetHandle:c?r:h};l.connection=m,g&&y&&(e===Jt.Strict?c&&u==="source"||!c&&u==="target":f!==n||h!==r)&&(l.endHandle={nodeId:f,handleId:h,type:u},l.isValid=i(m))}return l}function Sf({nodes:t,nodeId:e,handleId:n,handleType:r}){return t.reduce((o,i)=>{if(i[nt]){const{handleBounds:s}=i[nt];let c=[],a=[];s&&(c=no(i,s,"source",`${e}-${n}-${r}`),a=no(i,s,"target",`${e}-${n}-${r}`)),o.push(...c,...a)}return o},[])}function xr(t,e){return t||(e!=null&&e.classList.contains("target")?"target":e!=null&&e.classList.contains("source")?"source":null)}function Rn(t){t==null||t.classList.remove("valid","connecting","react-flow__handle-valid","react-flow__handle-connecting")}function Nf(t,e){let n=null;return e?n="valid":t&&!e&&(n="invalid"),n}function Ni({event:t,handleId:e,nodeId:n,onConnect:r,isTarget:o,getState:i,setState:s,isValidConnection:c,edgeUpdaterType:a,onReconnectEnd:l}){const u=di(t.target),{connectionMode:f,domNode:h,autoPanOnConnect:g,connectionRadius:y,onConnectStart:m,panBy:_,getNodes:p,cancelConnection:E}=i();let A=0,x;const{x:$,y:R}=Vt(t),z=u==null?void 0:u.elementFromPoint($,R),H=xr(a,z),M=h==null?void 0:h.getBoundingClientRect();if(!M||!H)return;let O,D=Vt(t,M),V=!1,L=null,d=!1,b=null;const v=Sf({nodes:p(),nodeId:n,handleId:e,handleType:H}),C=()=>{if(!g)return;const[T,I]=fi(D,M);_({x:T,y:I}),A=requestAnimationFrame(C)};s({connectionPosition:D,connectionStatus:null,connectionNodeId:n,connectionHandleId:e,connectionHandleType:H,connectionStartHandle:{nodeId:n,handleId:e,type:H},connectionEndHandle:null}),m==null||m(t,{nodeId:n,handleId:e,handleType:H});function k(T){const{transform:I}=i();D=Vt(T,M);const{handle:P,validHandleResult:Y}=Ef(T,u,Zn(D,I,!1,[1,1]),y,v,B=>Si(B,f,n,e,o?"target":"source",c,u));if(x=P,V||(C(),V=!0),b=Y.handleDomNode,L=Y.connection,d=Y.isValid,s({connectionPosition:x&&d?wi({x:x.x,y:x.y},I):D,connectionStatus:Nf(!!x,d),connectionEndHandle:Y.endHandle}),!x&&!d&&!b)return Rn(O);L.source!==L.target&&b&&(Rn(O),O=b,b.classList.add("connecting","react-flow__handle-connecting"),b.classList.toggle("valid",d),b.classList.toggle("react-flow__handle-valid",d))}function w(T){var I,P;(x||b)&&L&&d&&(r==null||r(L)),(P=(I=i()).onConnectEnd)==null||P.call(I,T),a&&(l==null||l(T)),Rn(O),E(),cancelAnimationFrame(A),V=!1,d=!1,L=null,b=null,u.removeEventListener("mousemove",k),u.removeEventListener("mouseup",w),u.removeEventListener("touchmove",k),u.removeEventListener("touchend",w)}u.addEventListener("mousemove",k),u.addEventListener("mouseup",w),u.addEventListener("touchmove",k),u.addEventListener("touchend",w)}const ro=()=>!0,Af=t=>({connectionStartHandle:t.connectionStartHandle,connectOnClick:t.connectOnClick,noPanClassName:t.noPanClassName}),Tf=(t,e,n)=>r=>{const{connectionStartHandle:o,connectionEndHandle:i,connectionClickStartHandle:s}=r;return{connecting:(o==null?void 0:o.nodeId)===t&&(o==null?void 0:o.handleId)===e&&(o==null?void 0:o.type)===n||(i==null?void 0:i.nodeId)===t&&(i==null?void 0:i.handleId)===e&&(i==null?void 0:i.type)===n,clickConnecting:(s==null?void 0:s.nodeId)===t&&(s==null?void 0:s.handleId)===e&&(s==null?void 0:s.type)===n}},Ai=S.forwardRef(({type:t="source",position:e=F.Top,isValidConnection:n,isConnectable:r=!0,isConnectableStart:o=!0,isConnectableEnd:i=!0,id:s,onConnect:c,children:a,className:l,onMouseDown:u,onTouchStart:f,...h},g)=>{var M,O;const y=s||null,m=t==="target",_=ot(),p=yf(),{connectOnClick:E,noPanClassName:A}=tt(Af,st),{connecting:x,clickConnecting:$}=tt(Tf(p,y,t),st);p||(O=(M=_.getState()).onError)==null||O.call(M,"010",It.error010());const R=D=>{const{defaultEdgeOptions:V,onConnect:L,hasDefaultEdges:d}=_.getState(),b={...V,...D};if(d){const{edges:v,setEdges:C}=_.getState();C(_f(b,v))}L==null||L(b),c==null||c(b)},z=D=>{if(!p)return;const V=gi(D);o&&(V&&D.button===0||!V)&&Ni({event:D,handleId:y,nodeId:p,onConnect:R,isTarget:m,getState:_.getState,setState:_.setState,isValidConnection:n||_.getState().isValidConnection||ro}),V?u==null||u(D):f==null||f(D)},H=D=>{const{onClickConnectStart:V,onClickConnectEnd:L,connectionClickStartHandle:d,connectionMode:b,isValidConnection:v}=_.getState();if(!p||!d&&!o)return;if(!d){V==null||V(D,{nodeId:p,handleId:y,handleType:t}),_.setState({connectionClickStartHandle:{nodeId:p,type:t,handleId:y}});return}const C=di(D.target),k=n||v||ro,{connection:w,isValid:T}=Si({nodeId:p,id:y,type:t},b,d.nodeId,d.handleId||null,d.type,k,C);T&&R(w),L==null||L(D),_.setState({connectionClickStartHandle:null})};return N.createElement("div",{"data-handleid":y,"data-nodeid":p,"data-handlepos":e,"data-id":`${p}-${y}-${t}`,className:ut(["react-flow__handle",`react-flow__handle-${e}`,"nodrag",A,l,{source:!m,target:m,connectable:r,connectablestart:o,connectableend:i,connecting:$,connectionindicator:r&&(o&&!x||i&&x)}]),onMouseDown:z,onTouchStart:z,onClick:E?H:void 0,ref:g,...h},a)});Ai.displayName="Handle";var hn=S.memo(Ai);const Ti=({data:t,isConnectable:e,targetPosition:n=F.Top,sourcePosition:r=F.Bottom})=>N.createElement(N.Fragment,null,N.createElement(hn,{type:"target",position:n,isConnectable:e}),t==null?void 0:t.label,N.createElement(hn,{type:"source",position:r,isConnectable:e}));Ti.displayName="DefaultNode";var Kn=S.memo(Ti);const Ci=({data:t,isConnectable:e,sourcePosition:n=F.Bottom})=>N.createElement(N.Fragment,null,t==null?void 0:t.label,N.createElement(hn,{type:"source",position:n,isConnectable:e}));Ci.displayName="InputNode";var $i=S.memo(Ci);const Mi=({data:t,isConnectable:e,targetPosition:n=F.Top})=>N.createElement(N.Fragment,null,N.createElement(hn,{type:"target",position:n,isConnectable:e}),t==null?void 0:t.label);Mi.displayName="OutputNode";var Ri=S.memo(Mi);const wr=()=>null;wr.displayName="GroupNode";const Cf=t=>({selectedNodes:t.getNodes().filter(e=>e.selected),selectedEdges:t.edges.filter(e=>e.selected).map(e=>({...e}))}),Ke=t=>t.id;function $f(t,e){return st(t.selectedNodes.map(Ke),e.selectedNodes.map(Ke))&&st(t.selectedEdges.map(Ke),e.selectedEdges.map(Ke))}const ki=S.memo(({onSelectionChange:t})=>{const e=ot(),{selectedNodes:n,selectedEdges:r}=tt(Cf,$f);return S.useEffect(()=>{const o={nodes:n,edges:r};t==null||t(o),e.getState().onSelectionChange.forEach(i=>i(o))},[n,r,t]),null});ki.displayName="SelectionListener";const Mf=t=>!!t.onSelectionChange;function Rf({onSelectionChange:t}){const e=tt(Mf);return t||e?N.createElement(ki,{onSelectionChange:t}):null}const kf=t=>({setNodes:t.setNodes,setEdges:t.setEdges,setDefaultNodesAndEdges:t.setDefaultNodesAndEdges,setMinZoom:t.setMinZoom,setMaxZoom:t.setMaxZoom,setTranslateExtent:t.setTranslateExtent,setNodeExtent:t.setNodeExtent,reset:t.reset});function ie(t,e){S.useEffect(()=>{typeof t<"u"&&e(t)},[t])}function W(t,e,n){S.useEffect(()=>{typeof e<"u"&&n({[t]:e})},[e])}const If=({nodes:t,edges:e,defaultNodes:n,defaultEdges:r,onConnect:o,onConnectStart:i,onConnectEnd:s,onClickConnectStart:c,onClickConnectEnd:a,nodesDraggable:l,nodesConnectable:u,nodesFocusable:f,edgesFocusable:h,edgesUpdatable:g,elevateNodesOnSelect:y,minZoom:m,maxZoom:_,nodeExtent:p,onNodesChange:E,onEdgesChange:A,elementsSelectable:x,connectionMode:$,snapGrid:R,snapToGrid:z,translateExtent:H,connectOnClick:M,defaultEdgeOptions:O,fitView:D,fitViewOptions:V,onNodesDelete:L,onEdgesDelete:d,onNodeDrag:b,onNodeDragStart:v,onNodeDragStop:C,onSelectionDrag:k,onSelectionDragStart:w,onSelectionDragStop:T,noPanClassName:I,nodeOrigin:P,rfId:Y,autoPanOnConnect:B,autoPanOnNodeDrag:X,onError:q,connectionRadius:Z,isValidConnection:K,nodeDragThreshold:et})=>{const{setNodes:Q,setEdges:mt,setDefaultNodesAndEdges:ht,setMinZoom:yt,setMaxZoom:gt,setTranslateExtent:rt,setNodeExtent:bt,reset:j}=tt(kf,st),U=ot();return S.useEffect(()=>{const ft=r==null?void 0:r.map(Bt=>({...Bt,...O}));return ht(n,ft),()=>{j()}},[]),W("defaultEdgeOptions",O,U.setState),W("connectionMode",$,U.setState),W("onConnect",o,U.setState),W("onConnectStart",i,U.setState),W("onConnectEnd",s,U.setState),W("onClickConnectStart",c,U.setState),W("onClickConnectEnd",a,U.setState),W("nodesDraggable",l,U.setState),W("nodesConnectable",u,U.setState),W("nodesFocusable",f,U.setState),W("edgesFocusable",h,U.setState),W("edgesUpdatable",g,U.setState),W("elementsSelectable",x,U.setState),W("elevateNodesOnSelect",y,U.setState),W("snapToGrid",z,U.setState),W("snapGrid",R,U.setState),W("onNodesChange",E,U.setState),W("onEdgesChange",A,U.setState),W("connectOnClick",M,U.setState),W("fitViewOnInit",D,U.setState),W("fitViewOnInitOptions",V,U.setState),W("onNodesDelete",L,U.setState),W("onEdgesDelete",d,U.setState),W("onNodeDrag",b,U.setState),W("onNodeDragStart",v,U.setState),W("onNodeDragStop",C,U.setState),W("onSelectionDrag",k,U.setState),W("onSelectionDragStart",w,U.setState),W("onSelectionDragStop",T,U.setState),W("noPanClassName",I,U.setState),W("nodeOrigin",P,U.setState),W("rfId",Y,U.setState),W("autoPanOnConnect",B,U.setState),W("autoPanOnNodeDrag",X,U.setState),W("onError",q,U.setState),W("connectionRadius",Z,U.setState),W("isValidConnection",K,U.setState),W("nodeDragThreshold",et,U.setState),ie(t,Q),ie(e,mt),ie(m,yt),ie(_,gt),ie(H,rt),ie(p,bt),null},oo={display:"none"},Pf={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},Ii="react-flow__node-desc",Pi="react-flow__edge-desc",zf="react-flow__aria-live",Df=t=>t.ariaLiveMessage;function Hf({rfId:t}){const e=tt(Df);return N.createElement("div",{id:`${zf}-${t}`,"aria-live":"assertive","aria-atomic":"true",style:Pf},e)}function Of({rfId:t,disableKeyboardA11y:e}){return N.createElement(N.Fragment,null,N.createElement("div",{id:`${Ii}-${t}`,style:oo},"Press enter or space to select a node.",!e&&"You can then use the arrow keys to move the node around."," Press delete to remove it and escape to cancel."," "),N.createElement("div",{id:`${Pi}-${t}`,style:oo},"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel."),!e&&N.createElement(Hf,{rfId:t}))}var Le=(t=null,e={actInsideInputWithModifier:!0})=>{const[n,r]=S.useState(!1),o=S.useRef(!1),i=S.useRef(new Set([])),[s,c]=S.useMemo(()=>{if(t!==null){const l=(Array.isArray(t)?t:[t]).filter(f=>typeof f=="string").map(f=>f.split("+")),u=l.reduce((f,h)=>f.concat(...h),[]);return[l,u]}return[[],[]]},[t]);return S.useEffect(()=>{const a=typeof document<"u"?document:null,l=(e==null?void 0:e.target)||a;if(t!==null){const u=g=>{if(o.current=g.ctrlKey||g.metaKey||g.shiftKey,(!o.current||o.current&&!e.actInsideInputWithModifier)&&Gn(g))return!1;const m=so(g.code,c);i.current.add(g[m]),io(s,i.current,!1)&&(g.preventDefault(),r(!0))},f=g=>{if((!o.current||o.current&&!e.actInsideInputWithModifier)&&Gn(g))return!1;const m=so(g.code,c);io(s,i.current,!0)?(r(!1),i.current.clear()):i.current.delete(g[m]),g.key==="Meta"&&i.current.clear(),o.current=!1},h=()=>{i.current.clear(),r(!1)};return l==null||l.addEventListener("keydown",u),l==null||l.addEventListener("keyup",f),window.addEventListener("blur",h),()=>{l==null||l.removeEventListener("keydown",u),l==null||l.removeEventListener("keyup",f),window.removeEventListener("blur",h)}}},[t,r]),n};function io(t,e,n){return t.filter(r=>n||r.length===e.size).some(r=>r.every(o=>e.has(o)))}function so(t,e){return e.includes(t)?"code":"key"}function zi(t,e,n,r){var c,a;const o=t.parentNode||t.parentId;if(!o)return n;const i=e.get(o),s=he(i,r);return zi(i,e,{x:(n.x??0)+s.x,y:(n.y??0)+s.y,z:(((c=i[nt])==null?void 0:c.z)??0)>(n.z??0)?((a=i[nt])==null?void 0:a.z)??0:n.z??0},r)}function Di(t,e,n){t.forEach(r=>{var i;const o=r.parentNode||r.parentId;if(o&&!t.has(o))throw new Error(`Parent node ${o} not found`);if(o||n!=null&&n[r.id]){const{x:s,y:c,z:a}=zi(r,t,{...r.position,z:((i=r[nt])==null?void 0:i.z)??0},e);r.positionAbsolute={x:s,y:c},r[nt].z=a,n!=null&&n[r.id]&&(r[nt].isParent=!0)}})}function kn(t,e,n,r){const o=new Map,i={},s=r?1e3:0;return t.forEach(c=>{var g;const a=(pt(c.zIndex)?c.zIndex:0)+(c.selected?s:0),l=e.get(c.id),u={...c,positionAbsolute:{x:c.position.x,y:c.position.y}},f=c.parentNode||c.parentId;f&&(i[f]=!0);const h=(l==null?void 0:l.type)&&(l==null?void 0:l.type)!==c.type;Object.defineProperty(u,nt,{enumerable:!1,value:{handleBounds:h||(g=l==null?void 0:l[nt])==null?void 0:g.handleBounds,z:a}}),o.set(c.id,u)}),Di(o,n,i),o}function Hi(t,e={}){const{getNodes:n,width:r,height:o,minZoom:i,maxZoom:s,d3Zoom:c,d3Selection:a,fitViewOnInitDone:l,fitViewOnInit:u,nodeOrigin:f}=t(),h=e.initial&&!l&&u;if(c&&a&&(h||!e.initial)){const y=n().filter(_=>{var E;const p=e.includeHiddenNodes?_.width&&_.height:!_.hidden;return(E=e.nodes)!=null&&E.length?p&&e.nodes.some(A=>A.id===_.id):p}),m=y.every(_=>_.width&&_.height);if(y.length>0&&m){const _=yr(y,f),{x:p,y:E,zoom:A}=Ei(_,r,o,e.minZoom??i,e.maxZoom??s,e.padding??.1),x=Lt.translate(p,E).scale(A);return typeof e.duration=="number"&&e.duration>0?c.transform(qt(a,e.duration),x):c.transform(a,x),!0}}return!1}function Lf(t,e){return t.forEach(n=>{const r=e.get(n.id);r&&e.set(r.id,{...r,[nt]:r[nt],selected:n.selected})}),new Map(e)}function Vf(t,e){return e.map(n=>{const r=t.find(o=>o.id===n.id);return r&&(n.selected=r.selected),n})}function Qe({changedNodes:t,changedEdges:e,get:n,set:r}){const{nodeInternals:o,edges:i,onNodesChange:s,onEdgesChange:c,hasDefaultNodes:a,hasDefaultEdges:l}=n();t!=null&&t.length&&(a&&r({nodeInternals:Lf(t,o)}),s==null||s(t)),e!=null&&e.length&&(l&&r({edges:Vf(e,i)}),c==null||c(e))}const se=()=>{},Bf={zoomIn:se,zoomOut:se,zoomTo:se,getZoom:()=>1,setViewport:se,getViewport:()=>({x:0,y:0,zoom:1}),fitView:()=>!1,setCenter:se,fitBounds:se,project:t=>t,screenToFlowPosition:t=>t,flowToScreenPosition:t=>t,viewportInitialized:!1},Yf=t=>({d3Zoom:t.d3Zoom,d3Selection:t.d3Selection}),Ff=()=>{const t=ot(),{d3Zoom:e,d3Selection:n}=tt(Yf,st);return S.useMemo(()=>n&&e?{zoomIn:o=>e.scaleBy(qt(n,o==null?void 0:o.duration),1.2),zoomOut:o=>e.scaleBy(qt(n,o==null?void 0:o.duration),1/1.2),zoomTo:(o,i)=>e.scaleTo(qt(n,i==null?void 0:i.duration),o),getZoom:()=>t.getState().transform[2],setViewport:(o,i)=>{const[s,c,a]=t.getState().transform,l=Lt.translate(o.x??s,o.y??c).scale(o.zoom??a);e.transform(qt(n,i==null?void 0:i.duration),l)},getViewport:()=>{const[o,i,s]=t.getState().transform;return{x:o,y:i,zoom:s}},fitView:o=>Hi(t.getState,o),setCenter:(o,i,s)=>{const{width:c,height:a,maxZoom:l}=t.getState(),u=typeof(s==null?void 0:s.zoom)<"u"?s.zoom:l,f=c/2-o*u,h=a/2-i*u,g=Lt.translate(f,h).scale(u);e.transform(qt(n,s==null?void 0:s.duration),g)},fitBounds:(o,i)=>{const{width:s,height:c,minZoom:a,maxZoom:l}=t.getState(),{x:u,y:f,zoom:h}=Ei(o,s,c,a,l,(i==null?void 0:i.padding)??.1),g=Lt.translate(u,f).scale(h);e.transform(qt(n,i==null?void 0:i.duration),g)},project:o=>{const{transform:i,snapToGrid:s,snapGrid:c}=t.getState();return console.warn("[DEPRECATED] `project` is deprecated. Instead use `screenToFlowPosition`. There is no need to subtract the react flow bounds anymore! https://reactflow.dev/api-reference/types/react-flow-instance#screen-to-flow-position"),Zn(o,i,s,c)},screenToFlowPosition:o=>{const{transform:i,snapToGrid:s,snapGrid:c,domNode:a}=t.getState();if(!a)return o;const{x:l,y:u}=a.getBoundingClientRect(),f={x:o.x-l,y:o.y-u};return Zn(f,i,s,c)},flowToScreenPosition:o=>{const{transform:i,domNode:s}=t.getState();if(!s)return o;const{x:c,y:a}=s.getBoundingClientRect(),l=wi(o,i);return{x:l.x+c,y:l.y+a}},viewportInitialized:!0}:Bf,[e,n])};function vr(){const t=Ff(),e=ot(),n=S.useCallback(()=>e.getState().getNodes().map(m=>({...m})),[]),r=S.useCallback(m=>e.getState().nodeInternals.get(m),[]),o=S.useCallback(()=>{const{edges:m=[]}=e.getState();return m.map(_=>({..._}))},[]),i=S.useCallback(m=>{const{edges:_=[]}=e.getState();return _.find(p=>p.id===m)},[]),s=S.useCallback(m=>{const{getNodes:_,setNodes:p,hasDefaultNodes:E,onNodesChange:A}=e.getState(),x=_(),$=typeof m=="function"?m(x):m;if(E)p($);else if(A){const R=$.length===0?x.map(z=>({type:"remove",id:z.id})):$.map(z=>({item:z,type:"reset"}));A(R)}},[]),c=S.useCallback(m=>{const{edges:_=[],setEdges:p,hasDefaultEdges:E,onEdgesChange:A}=e.getState(),x=typeof m=="function"?m(_):m;if(E)p(x);else if(A){const $=x.length===0?_.map(R=>({type:"remove",id:R.id})):x.map(R=>({item:R,type:"reset"}));A($)}},[]),a=S.useCallback(m=>{const _=Array.isArray(m)?m:[m],{getNodes:p,setNodes:E,hasDefaultNodes:A,onNodesChange:x}=e.getState();if(A){const R=[...p(),..._];E(R)}else if(x){const $=_.map(R=>({item:R,type:"add"}));x($)}},[]),l=S.useCallback(m=>{const _=Array.isArray(m)?m:[m],{edges:p=[],setEdges:E,hasDefaultEdges:A,onEdgesChange:x}=e.getState();if(A)E([...p,..._]);else if(x){const $=_.map(R=>({item:R,type:"add"}));x($)}},[]),u=S.useCallback(()=>{const{getNodes:m,edges:_=[],transform:p}=e.getState(),[E,A,x]=p;return{nodes:m().map($=>({...$})),edges:_.map($=>({...$})),viewport:{x:E,y:A,zoom:x}}},[]),f=S.useCallback(({nodes:m,edges:_})=>{const{nodeInternals:p,getNodes:E,edges:A,hasDefaultNodes:x,hasDefaultEdges:$,onNodesDelete:R,onEdgesDelete:z,onNodesChange:H,onEdgesChange:M}=e.getState(),O=(m||[]).map(b=>b.id),D=(_||[]).map(b=>b.id),V=E().reduce((b,v)=>{const C=v.parentNode||v.parentId,k=!O.includes(v.id)&&C&&b.find(T=>T.id===C);return(typeof v.deletable=="boolean"?v.deletable:!0)&&(O.includes(v.id)||k)&&b.push(v),b},[]),L=A.filter(b=>typeof b.deletable=="boolean"?b.deletable:!0),d=L.filter(b=>D.includes(b.id));if(V||d){const b=_i(V,L),v=[...d,...b],C=v.reduce((k,w)=>(k.includes(w.id)||k.push(w.id),k),[]);if(($||x)&&($&&e.setState({edges:A.filter(k=>!C.includes(k.id))}),x&&(V.forEach(k=>{p.delete(k.id)}),e.setState({nodeInternals:new Map(p)}))),C.length>0&&(z==null||z(v),M&&M(C.map(k=>({id:k,type:"remove"})))),V.length>0&&(R==null||R(V),H)){const k=V.map(w=>({id:w.id,type:"remove"}));H(k)}}},[]),h=S.useCallback(m=>{const _=uf(m),p=_?null:e.getState().nodeInternals.get(m.id);return!_&&!p?[null,null,_]:[_?m:Qr(p),p,_]},[]),g=S.useCallback((m,_=!0,p)=>{const[E,A,x]=h(m);return E?(p||e.getState().getNodes()).filter($=>{if(!x&&($.id===A.id||!$.positionAbsolute))return!1;const R=Qr($),z=Xn(R,E);return _&&z>0||z>=E.width*E.height}):[]},[]),y=S.useCallback((m,_,p=!0)=>{const[E]=h(m);if(!E)return!1;const A=Xn(E,_);return p&&A>0||A>=E.width*E.height},[]);return S.useMemo(()=>({...t,getNodes:n,getNode:r,getEdges:o,getEdge:i,setNodes:s,setEdges:c,addNodes:a,addEdges:l,toObject:u,deleteElements:f,getIntersectingNodes:g,isNodeIntersecting:y}),[t,n,r,o,i,s,c,a,l,u,f,g,y])}const Uf={actInsideInputWithModifier:!1};var Xf=({deleteKeyCode:t,multiSelectionKeyCode:e})=>{const n=ot(),{deleteElements:r}=vr(),o=Le(t,Uf),i=Le(e);S.useEffect(()=>{if(o){const{edges:s,getNodes:c}=n.getState(),a=c().filter(u=>u.selected),l=s.filter(u=>u.selected);r({nodes:a,edges:l}),n.setState({nodesSelectionActive:!1})}},[o]),S.useEffect(()=>{n.setState({multiSelectionActive:i})},[i])};function Gf(t){const e=ot();S.useEffect(()=>{let n;const r=()=>{var i,s;if(!t.current)return;const o=lr(t.current);(o.height===0||o.width===0)&&((s=(i=e.getState()).onError)==null||s.call(i,"004",It.error004())),e.setState({width:o.width||500,height:o.height||500})};return r(),window.addEventListener("resize",r),t.current&&(n=new ResizeObserver(()=>r()),n.observe(t.current)),()=>{window.removeEventListener("resize",r),n&&t.current&&n.unobserve(t.current)}},[])}const _r={position:"absolute",width:"100%",height:"100%",top:0,left:0},Wf=(t,e)=>t.x!==e.x||t.y!==e.y||t.zoom!==e.k,je=t=>({x:t.x,y:t.y,zoom:t.k}),ce=(t,e)=>t.target.closest(`.${e}`),co=(t,e)=>e===2&&Array.isArray(t)&&t.includes(2),ao=t=>{const e=t.ctrlKey&&ln()?10:1;return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*e},qf=t=>({d3Zoom:t.d3Zoom,d3Selection:t.d3Selection,d3ZoomHandler:t.d3ZoomHandler,userSelectionActive:t.userSelectionActive}),Zf=({onMove:t,onMoveStart:e,onMoveEnd:n,onPaneContextMenu:r,zoomOnScroll:o=!0,zoomOnPinch:i=!0,panOnScroll:s=!1,panOnScrollSpeed:c=.5,panOnScrollMode:a=Kt.Free,zoomOnDoubleClick:l=!0,elementsSelectable:u,panOnDrag:f=!0,defaultViewport:h,translateExtent:g,minZoom:y,maxZoom:m,zoomActivationKeyCode:_,preventScrolling:p=!0,children:E,noWheelClassName:A,noPanClassName:x})=>{const $=S.useRef(),R=ot(),z=S.useRef(!1),H=S.useRef(!1),M=S.useRef(null),O=S.useRef({x:0,y:0,zoom:0}),{d3Zoom:D,d3Selection:V,d3ZoomHandler:L,userSelectionActive:d}=tt(qf,st),b=Le(_),v=S.useRef(0),C=S.useRef(!1),k=S.useRef();return Gf(M),S.useEffect(()=>{if(M.current){const w=M.current.getBoundingClientRect(),T=tf().scaleExtent([y,m]).translateExtent(g),I=wt(M.current).call(T),P=Lt.translate(h.x,h.y).scale(xe(h.zoom,y,m)),Y=[[0,0],[w.width,w.height]],B=T.constrain()(P,Y,g);T.transform(I,B),T.wheelDelta(ao),R.setState({d3Zoom:T,d3Selection:I,d3ZoomHandler:I.on("wheel.zoom"),transform:[B.x,B.y,B.k],domNode:M.current.closest(".react-flow")})}},[]),S.useEffect(()=>{V&&D&&(s&&!b&&!d?V.on("wheel.zoom",w=>{if(ce(w,A))return!1;w.preventDefault(),w.stopImmediatePropagation();const T=V.property("__zoom").k||1;if(w.ctrlKey&&i){const K=Nt(w),et=ao(w),Q=T*Math.pow(2,et);D.scaleTo(V,Q,K,w);return}const I=w.deltaMode===1?20:1;let P=a===Kt.Vertical?0:w.deltaX*I,Y=a===Kt.Horizontal?0:w.deltaY*I;!ln()&&w.shiftKey&&a!==Kt.Vertical&&(P=w.deltaY*I,Y=0),D.translateBy(V,-(P/T)*c,-(Y/T)*c,{internal:!0});const B=je(V.property("__zoom")),{onViewportChangeStart:X,onViewportChange:q,onViewportChangeEnd:Z}=R.getState();clearTimeout(k.current),C.current||(C.current=!0,e==null||e(w,B),X==null||X(B)),C.current&&(t==null||t(w,B),q==null||q(B),k.current=setTimeout(()=>{n==null||n(w,B),Z==null||Z(B),C.current=!1},150))},{passive:!1}):typeof L<"u"&&V.on("wheel.zoom",function(w,T){if(!p&&w.type==="wheel"&&!w.ctrlKey||ce(w,A))return null;w.preventDefault(),L.call(this,w,T)},{passive:!1}))},[d,s,a,V,D,L,b,i,p,A,e,t,n]),S.useEffect(()=>{D&&D.on("start",w=>{var P,Y;if(!w.sourceEvent||w.sourceEvent.internal)return null;v.current=(P=w.sourceEvent)==null?void 0:P.button;const{onViewportChangeStart:T}=R.getState(),I=je(w.transform);z.current=!0,O.current=I,((Y=w.sourceEvent)==null?void 0:Y.type)==="mousedown"&&R.setState({paneDragging:!0}),T==null||T(I),e==null||e(w.sourceEvent,I)})},[D,e]),S.useEffect(()=>{D&&(d&&!z.current?D.on("zoom",null):d||D.on("zoom",w=>{var I;const{onViewportChange:T}=R.getState();if(R.setState({transform:[w.transform.x,w.transform.y,w.transform.k]}),H.current=!!(r&&co(f,v.current??0)),(t||T)&&!((I=w.sourceEvent)!=null&&I.internal)){const P=je(w.transform);T==null||T(P),t==null||t(w.sourceEvent,P)}}))},[d,D,t,f,r]),S.useEffect(()=>{D&&D.on("end",w=>{if(!w.sourceEvent||w.sourceEvent.internal)return null;const{onViewportChangeEnd:T}=R.getState();if(z.current=!1,R.setState({paneDragging:!1}),r&&co(f,v.current??0)&&!H.current&&r(w.sourceEvent),H.current=!1,(n||T)&&Wf(O.current,w.transform)){const I=je(w.transform);O.current=I,clearTimeout($.current),$.current=setTimeout(()=>{T==null||T(I),n==null||n(w.sourceEvent,I)},s?150:0)}})},[D,s,f,n,r]),S.useEffect(()=>{D&&D.filter(w=>{const T=b||o,I=i&&w.ctrlKey;if((f===!0||Array.isArray(f)&&f.includes(1))&&w.button===1&&w.type==="mousedown"&&(ce(w,"react-flow__node")||ce(w,"react-flow__edge")))return!0;if(!f&&!T&&!s&&!l&&!i||d||!l&&w.type==="dblclick"||ce(w,A)&&w.type==="wheel"||ce(w,x)&&(w.type!=="wheel"||s&&w.type==="wheel"&&!b)||!i&&w.ctrlKey&&w.type==="wheel"||!T&&!s&&!I&&w.type==="wheel"||!f&&(w.type==="mousedown"||w.type==="touchstart")||Array.isArray(f)&&!f.includes(w.button)&&w.type==="mousedown")return!1;const P=Array.isArray(f)&&f.includes(w.button)||!w.button||w.button<=1;return(!w.ctrlKey||w.type==="wheel")&&P})},[d,D,o,i,s,l,f,u,b]),N.createElement("div",{className:"react-flow__renderer",ref:M,style:_r},E)},Kf=t=>({userSelectionActive:t.userSelectionActive,userSelectionRect:t.userSelectionRect});function Qf(){const{userSelectionActive:t,userSelectionRect:e}=tt(Kf,st);return t&&e?N.createElement("div",{className:"react-flow__selection react-flow__container",style:{width:e.width,height:e.height,transform:`translate(${e.x}px, ${e.y}px)`}}):null}function uo(t,e){const n=e.parentNode||e.parentId,r=t.find(o=>o.id===n);if(r){const o=e.position.x+e.width-r.width,i=e.position.y+e.height-r.height;if(o>0||i>0||e.position.x<0||e.position.y<0){if(r.style={...r.style},r.style.width=r.style.width??r.width,r.style.height=r.style.height??r.height,o>0&&(r.style.width+=o),i>0&&(r.style.height+=i),e.position.x<0){const s=Math.abs(e.position.x);r.position.x=r.position.x-s,r.style.width+=s,e.position.x=0}if(e.position.y<0){const s=Math.abs(e.position.y);r.position.y=r.position.y-s,r.style.height+=s,e.position.y=0}r.width=r.style.width,r.height=r.style.height}}}function jf(t,e){if(t.some(r=>r.type==="reset"))return t.filter(r=>r.type==="reset").map(r=>r.item);const n=t.filter(r=>r.type==="add").map(r=>r.item);return e.reduce((r,o)=>{const i=t.filter(c=>c.id===o.id);if(i.length===0)return r.push(o),r;const s={...o};for(const c of i)if(c)switch(c.type){case"select":{s.selected=c.selected;break}case"position":{typeof c.position<"u"&&(s.position=c.position),typeof c.positionAbsolute<"u"&&(s.positionAbsolute=c.positionAbsolute),typeof c.dragging<"u"&&(s.dragging=c.dragging),s.expandParent&&uo(r,s);break}case"dimensions":{typeof c.dimensions<"u"&&(s.width=c.dimensions.width,s.height=c.dimensions.height),typeof c.updateStyle<"u"&&(s.style={...s.style||{},...c.dimensions}),typeof c.resizing=="boolean"&&(s.resizing=c.resizing),s.expandParent&&uo(r,s);break}case"remove":return r}return r.push(s),r},n)}function Jf(t,e){return jf(t,e)}const Ht=(t,e)=>({id:t,type:"select",selected:e});function le(t,e){return t.reduce((n,r)=>{const o=e.includes(r.id);return!r.selected&&o?(r.selected=!0,n.push(Ht(r.id,!0))):r.selected&&!o&&(r.selected=!1,n.push(Ht(r.id,!1))),n},[])}const In=(t,e)=>n=>{n.target===e.current&&(t==null||t(n))},td=t=>({userSelectionActive:t.userSelectionActive,elementsSelectable:t.elementsSelectable,dragging:t.paneDragging}),Oi=S.memo(({isSelecting:t,selectionMode:e=Oe.Full,panOnDrag:n,onSelectionStart:r,onSelectionEnd:o,onPaneClick:i,onPaneContextMenu:s,onPaneScroll:c,onPaneMouseEnter:a,onPaneMouseMove:l,onPaneMouseLeave:u,children:f})=>{const h=S.useRef(null),g=ot(),y=S.useRef(0),m=S.useRef(0),_=S.useRef(),{userSelectionActive:p,elementsSelectable:E,dragging:A}=tt(td,st),x=()=>{g.setState({userSelectionActive:!1,userSelectionRect:null}),y.current=0,m.current=0},$=L=>{i==null||i(L),g.getState().resetSelectedElements(),g.setState({nodesSelectionActive:!1})},R=L=>{if(Array.isArray(n)&&(n!=null&&n.includes(2))){L.preventDefault();return}s==null||s(L)},z=c?L=>c(L):void 0,H=L=>{const{resetSelectedElements:d,domNode:b}=g.getState();if(_.current=b==null?void 0:b.getBoundingClientRect(),!E||!t||L.button!==0||L.target!==h.current||!_.current)return;const{x:v,y:C}=Vt(L,_.current);d(),g.setState({userSelectionRect:{width:0,height:0,startX:v,startY:C,x:v,y:C}}),r==null||r(L)},M=L=>{const{userSelectionRect:d,nodeInternals:b,edges:v,transform:C,onNodesChange:k,onEdgesChange:w,nodeOrigin:T,getNodes:I}=g.getState();if(!t||!_.current||!d)return;g.setState({userSelectionActive:!0,nodesSelectionActive:!1});const P=Vt(L,_.current),Y=d.startX??0,B=d.startY??0,X={...d,x:P.x<Y?P.x:Y,y:P.y<B?P.y:B,width:Math.abs(P.x-Y),height:Math.abs(P.y-B)},q=I(),Z=vi(b,X,C,e===Oe.Partial,!0,T),K=_i(Z,v).map(Q=>Q.id),et=Z.map(Q=>Q.id);if(y.current!==et.length){y.current=et.length;const Q=le(q,et);Q.length&&(k==null||k(Q))}if(m.current!==K.length){m.current=K.length;const Q=le(v,K);Q.length&&(w==null||w(Q))}g.setState({userSelectionRect:X})},O=L=>{if(L.button!==0)return;const{userSelectionRect:d}=g.getState();!p&&d&&L.target===h.current&&($==null||$(L)),g.setState({nodesSelectionActive:y.current>0}),x(),o==null||o(L)},D=L=>{p&&(g.setState({nodesSelectionActive:y.current>0}),o==null||o(L)),x()},V=E&&(t||p);return N.createElement("div",{className:ut(["react-flow__pane",{dragging:A,selection:t}]),onClick:V?void 0:In($,h),onContextMenu:In(R,h),onWheel:In(z,h),onMouseEnter:V?void 0:a,onMouseDown:V?H:void 0,onMouseMove:V?M:l,onMouseUp:V?O:void 0,onMouseLeave:V?D:u,ref:h,style:_r},f,N.createElement(Qf,null))});Oi.displayName="Pane";function Li(t,e){const n=t.parentNode||t.parentId;if(!n)return!1;const r=e.get(n);return r?r.selected?!0:Li(r,e):!1}function lo(t,e,n){let r=t;do{if(r!=null&&r.matches(e))return!0;if(r===n.current)return!1;r=r.parentElement}while(r);return!1}function ed(t,e,n,r){return Array.from(t.values()).filter(o=>(o.selected||o.id===r)&&(!o.parentNode||o.parentId||!Li(o,t))&&(o.draggable||e&&typeof o.draggable>"u")).map(o=>{var i,s;return{id:o.id,position:o.position||{x:0,y:0},positionAbsolute:o.positionAbsolute||{x:0,y:0},distance:{x:n.x-(((i=o.positionAbsolute)==null?void 0:i.x)??0),y:n.y-(((s=o.positionAbsolute)==null?void 0:s.y)??0)},delta:{x:0,y:0},extent:o.extent,parentNode:o.parentNode||o.parentId,parentId:o.parentNode||o.parentId,width:o.width,height:o.height,expandParent:o.expandParent}})}function nd(t,e){return!e||e==="parent"?e:[e[0],[e[1][0]-(t.width||0),e[1][1]-(t.height||0)]]}function Vi(t,e,n,r,o=[0,0],i){const s=nd(t,t.extent||r);let c=s;const a=t.parentNode||t.parentId;if(t.extent==="parent"&&!t.expandParent)if(a&&t.width&&t.height){const f=n.get(a),{x:h,y:g}=he(f,o).positionAbsolute;c=f&&pt(h)&&pt(g)&&pt(f.width)&&pt(f.height)?[[h+t.width*o[0],g+t.height*o[1]],[h+f.width-t.width+t.width*o[0],g+f.height-t.height+t.height*o[1]]]:c}else i==null||i("005",It.error005()),c=s;else if(t.extent&&a&&t.extent!=="parent"){const f=n.get(a),{x:h,y:g}=he(f,o).positionAbsolute;c=[[t.extent[0][0]+h,t.extent[0][1]+g],[t.extent[1][0]+h,t.extent[1][1]+g]]}let l={x:0,y:0};if(a){const f=n.get(a);l=he(f,o).positionAbsolute}const u=c&&c!=="parent"?fr(e,c):e;return{position:{x:u.x-l.x,y:u.y-l.y},positionAbsolute:u}}function Pn({nodeId:t,dragItems:e,nodeInternals:n}){const r=e.map(o=>({...n.get(o.id),position:o.position,positionAbsolute:o.positionAbsolute}));return[t?r.find(o=>o.id===t):r[0],r]}const fo=(t,e,n,r)=>{const o=e.querySelectorAll(t);if(!o||!o.length)return null;const i=Array.from(o),s=e.getBoundingClientRect(),c={x:s.width*r[0],y:s.height*r[1]};return i.map(a=>{const l=a.getBoundingClientRect();return{id:a.getAttribute("data-handleid"),position:a.getAttribute("data-handlepos"),x:(l.left-s.left-c.x)/n,y:(l.top-s.top-c.y)/n,...lr(a)}})};function Te(t,e,n){return n===void 0?n:r=>{const o=e().nodeInternals.get(t);o&&n(r,{...o})}}function Qn({id:t,store:e,unselect:n=!1,nodeRef:r}){const{addSelectedNodes:o,unselectNodesAndEdges:i,multiSelectionActive:s,nodeInternals:c,onError:a}=e.getState(),l=c.get(t);if(!l){a==null||a("012",It.error012(t));return}e.setState({nodesSelectionActive:!1}),l.selected?(n||l.selected&&s)&&(i({nodes:[l],edges:[]}),requestAnimationFrame(()=>{var u;return(u=r==null?void 0:r.current)==null?void 0:u.blur()})):o([t])}function rd(){const t=ot();return S.useCallback(({sourceEvent:n})=>{const{transform:r,snapGrid:o,snapToGrid:i}=t.getState(),s=n.touches?n.touches[0].clientX:n.clientX,c=n.touches?n.touches[0].clientY:n.clientY,a={x:(s-r[0])/r[2],y:(c-r[1])/r[2]};return{xSnapped:i?o[0]*Math.round(a.x/o[0]):a.x,ySnapped:i?o[1]*Math.round(a.y/o[1]):a.y,...a}},[])}function zn(t){return(e,n,r)=>t==null?void 0:t(e,r)}function Bi({nodeRef:t,disabled:e=!1,noDragClassName:n,handleSelector:r,nodeId:o,isSelectable:i,selectNodesOnDrag:s}){const c=ot(),[a,l]=S.useState(!1),u=S.useRef([]),f=S.useRef({x:null,y:null}),h=S.useRef(0),g=S.useRef(null),y=S.useRef({x:0,y:0}),m=S.useRef(null),_=S.useRef(!1),p=S.useRef(!1),E=S.useRef(!1),A=rd();return S.useEffect(()=>{if(t!=null&&t.current){const x=wt(t.current),$=({x:H,y:M})=>{const{nodeInternals:O,onNodeDrag:D,onSelectionDrag:V,updateNodePositions:L,nodeExtent:d,snapGrid:b,snapToGrid:v,nodeOrigin:C,onError:k}=c.getState();f.current={x:H,y:M};let w=!1,T={x:0,y:0,x2:0,y2:0};if(u.current.length>1&&d){const P=yr(u.current,C);T=dr(P)}if(u.current=u.current.map(P=>{const Y={x:H-P.distance.x,y:M-P.distance.y};v&&(Y.x=b[0]*Math.round(Y.x/b[0]),Y.y=b[1]*Math.round(Y.y/b[1]));const B=[[d[0][0],d[0][1]],[d[1][0],d[1][1]]];u.current.length>1&&d&&!P.extent&&(B[0][0]=P.positionAbsolute.x-T.x+d[0][0],B[1][0]=P.positionAbsolute.x+(P.width??0)-T.x2+d[1][0],B[0][1]=P.positionAbsolute.y-T.y+d[0][1],B[1][1]=P.positionAbsolute.y+(P.height??0)-T.y2+d[1][1]);const X=Vi(P,Y,O,B,C,k);return w=w||P.position.x!==X.position.x||P.position.y!==X.position.y,P.position=X.position,P.positionAbsolute=X.positionAbsolute,P}),!w)return;L(u.current,!0,!0),l(!0);const I=o?D:zn(V);if(I&&m.current){const[P,Y]=Pn({nodeId:o,dragItems:u.current,nodeInternals:O});I(m.current,P,Y)}},R=()=>{if(!g.current)return;const[H,M]=fi(y.current,g.current);if(H!==0||M!==0){const{transform:O,panBy:D}=c.getState();f.current.x=(f.current.x??0)-H/O[2],f.current.y=(f.current.y??0)-M/O[2],D({x:H,y:M})&&$(f.current)}h.current=requestAnimationFrame(R)},z=H=>{var C;const{nodeInternals:M,multiSelectionActive:O,nodesDraggable:D,unselectNodesAndEdges:V,onNodeDragStart:L,onSelectionDragStart:d}=c.getState();p.current=!0;const b=o?L:zn(d);(!s||!i)&&!O&&o&&((C=M.get(o))!=null&&C.selected||V()),o&&i&&s&&Qn({id:o,store:c,nodeRef:t});const v=A(H);if(f.current=v,u.current=ed(M,D,v,o),b&&u.current){const[k,w]=Pn({nodeId:o,dragItems:u.current,nodeInternals:M});b(H.sourceEvent,k,w)}};if(e)x.on(".drag",null);else{const H=lu().on("start",M=>{const{domNode:O,nodeDragThreshold:D}=c.getState();D===0&&z(M),E.current=!1;const V=A(M);f.current=V,g.current=(O==null?void 0:O.getBoundingClientRect())||null,y.current=Vt(M.sourceEvent,g.current)}).on("drag",M=>{var L,d;const O=A(M),{autoPanOnNodeDrag:D,nodeDragThreshold:V}=c.getState();if(M.sourceEvent.type==="touchmove"&&M.sourceEvent.touches.length>1&&(E.current=!0),!E.current){if(!_.current&&p.current&&D&&(_.current=!0,R()),!p.current){const b=O.xSnapped-(((L=f==null?void 0:f.current)==null?void 0:L.x)??0),v=O.ySnapped-(((d=f==null?void 0:f.current)==null?void 0:d.y)??0);Math.sqrt(b*b+v*v)>V&&z(M)}(f.current.x!==O.xSnapped||f.current.y!==O.ySnapped)&&u.current&&p.current&&(m.current=M.sourceEvent,y.current=Vt(M.sourceEvent,g.current),$(O))}}).on("end",M=>{if(!(!p.current||E.current)&&(l(!1),_.current=!1,p.current=!1,cancelAnimationFrame(h.current),u.current)){const{updateNodePositions:O,nodeInternals:D,onNodeDragStop:V,onSelectionDragStop:L}=c.getState(),d=o?V:zn(L);if(O(u.current,!1,!1),d){const[b,v]=Pn({nodeId:o,dragItems:u.current,nodeInternals:D});d(M.sourceEvent,b,v)}}}).filter(M=>{const O=M.target;return!M.button&&(!n||!lo(O,`.${n}`,t))&&(!r||lo(O,r,t))});return x.call(H),()=>{x.on(".drag",null)}}}},[t,e,n,r,i,c,o,s,A]),a}function Yi(){const t=ot();return S.useCallback(n=>{const{nodeInternals:r,nodeExtent:o,updateNodePositions:i,getNodes:s,snapToGrid:c,snapGrid:a,onError:l,nodesDraggable:u}=t.getState(),f=s().filter(E=>E.selected&&(E.draggable||u&&typeof E.draggable>"u")),h=c?a[0]:5,g=c?a[1]:5,y=n.isShiftPressed?4:1,m=n.x*h*y,_=n.y*g*y,p=f.map(E=>{if(E.positionAbsolute){const A={x:E.positionAbsolute.x+m,y:E.positionAbsolute.y+_};c&&(A.x=a[0]*Math.round(A.x/a[0]),A.y=a[1]*Math.round(A.y/a[1]));const{positionAbsolute:x,position:$}=Vi(E,A,r,o,void 0,l);E.position=$,E.positionAbsolute=x}return E});i(p,!0,!1)},[])}const ge={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};var Ce=t=>{const e=({id:n,type:r,data:o,xPos:i,yPos:s,xPosOrigin:c,yPosOrigin:a,selected:l,onClick:u,onMouseEnter:f,onMouseMove:h,onMouseLeave:g,onContextMenu:y,onDoubleClick:m,style:_,className:p,isDraggable:E,isSelectable:A,isConnectable:x,isFocusable:$,selectNodesOnDrag:R,sourcePosition:z,targetPosition:H,hidden:M,resizeObserver:O,dragHandle:D,zIndex:V,isParent:L,noDragClassName:d,noPanClassName:b,initialized:v,disableKeyboardA11y:C,ariaLabel:k,rfId:w,hasHandleBounds:T})=>{const I=ot(),P=S.useRef(null),Y=S.useRef(null),B=S.useRef(z),X=S.useRef(H),q=S.useRef(r),Z=A||E||u||f||h||g,K=Yi(),et=Te(n,I.getState,f),Q=Te(n,I.getState,h),mt=Te(n,I.getState,g),ht=Te(n,I.getState,y),yt=Te(n,I.getState,m),gt=j=>{const{nodeDragThreshold:U}=I.getState();if(A&&(!R||!E||U>0)&&Qn({id:n,store:I,nodeRef:P}),u){const ft=I.getState().nodeInternals.get(n);ft&&u(j,{...ft})}},rt=j=>{if(!Gn(j)&&!C)if(hi.includes(j.key)&&A){const U=j.key==="Escape";Qn({id:n,store:I,unselect:U,nodeRef:P})}else E&&l&&Object.prototype.hasOwnProperty.call(ge,j.key)&&(I.setState({ariaLiveMessage:`Moved selected node ${j.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~i}, y: ${~~s}`}),K({x:ge[j.key].x,y:ge[j.key].y,isShiftPressed:j.shiftKey}))};S.useEffect(()=>()=>{Y.current&&(O==null||O.unobserve(Y.current),Y.current=null)},[]),S.useEffect(()=>{if(P.current&&!M){const j=P.current;(!v||!T||Y.current!==j)&&(Y.current&&(O==null||O.unobserve(Y.current)),O==null||O.observe(j),Y.current=j)}},[M,v,T]),S.useEffect(()=>{const j=q.current!==r,U=B.current!==z,ft=X.current!==H;P.current&&(j||U||ft)&&(j&&(q.current=r),U&&(B.current=z),ft&&(X.current=H),I.getState().updateNodeDimensions([{id:n,nodeElement:P.current,forceUpdate:!0}]))},[n,r,z,H]);const bt=Bi({nodeRef:P,disabled:M||!E,noDragClassName:d,handleSelector:D,nodeId:n,isSelectable:A,selectNodesOnDrag:R});return M?null:N.createElement("div",{className:ut(["react-flow__node",`react-flow__node-${r}`,{[b]:E},p,{selected:l,selectable:A,parent:L,dragging:bt}]),ref:P,style:{zIndex:V,transform:`translate(${c}px,${a}px)`,pointerEvents:Z?"all":"none",visibility:v?"visible":"hidden",..._},"data-id":n,"data-testid":`rf__node-${n}`,onMouseEnter:et,onMouseMove:Q,onMouseLeave:mt,onContextMenu:ht,onClick:gt,onDoubleClick:yt,onKeyDown:$?rt:void 0,tabIndex:$?0:void 0,role:$?"button":void 0,"aria-describedby":C?void 0:`${Ii}-${w}`,"aria-label":k},N.createElement(mf,{value:n},N.createElement(t,{id:n,data:o,type:r,xPos:i,yPos:s,selected:l,isConnectable:x,sourcePosition:z,targetPosition:H,dragging:bt,dragHandle:D,zIndex:V})))};return e.displayName="NodeWrapper",S.memo(e)};const od=t=>{const e=t.getNodes().filter(n=>n.selected);return{...yr(e,t.nodeOrigin),transformString:`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]})`,userSelectionActive:t.userSelectionActive}};function id({onSelectionContextMenu:t,noPanClassName:e,disableKeyboardA11y:n}){const r=ot(),{width:o,height:i,x:s,y:c,transformString:a,userSelectionActive:l}=tt(od,st),u=Yi(),f=S.useRef(null);if(S.useEffect(()=>{var y;n||(y=f.current)==null||y.focus({preventScroll:!0})},[n]),Bi({nodeRef:f}),l||!o||!i)return null;const h=t?y=>{const m=r.getState().getNodes().filter(_=>_.selected);t(y,m)}:void 0,g=y=>{Object.prototype.hasOwnProperty.call(ge,y.key)&&u({x:ge[y.key].x,y:ge[y.key].y,isShiftPressed:y.shiftKey})};return N.createElement("div",{className:ut(["react-flow__nodesselection","react-flow__container",e]),style:{transform:a}},N.createElement("div",{ref:f,className:"react-flow__nodesselection-rect",onContextMenu:h,tabIndex:n?void 0:-1,onKeyDown:n?void 0:g,style:{width:o,height:i,top:c,left:s}}))}var sd=S.memo(id);const cd=t=>t.nodesSelectionActive,Fi=({children:t,onPaneClick:e,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:o,onPaneContextMenu:i,onPaneScroll:s,deleteKeyCode:c,onMove:a,onMoveStart:l,onMoveEnd:u,selectionKeyCode:f,selectionOnDrag:h,selectionMode:g,onSelectionStart:y,onSelectionEnd:m,multiSelectionKeyCode:_,panActivationKeyCode:p,zoomActivationKeyCode:E,elementsSelectable:A,zoomOnScroll:x,zoomOnPinch:$,panOnScroll:R,panOnScrollSpeed:z,panOnScrollMode:H,zoomOnDoubleClick:M,panOnDrag:O,defaultViewport:D,translateExtent:V,minZoom:L,maxZoom:d,preventScrolling:b,onSelectionContextMenu:v,noWheelClassName:C,noPanClassName:k,disableKeyboardA11y:w})=>{const T=tt(cd),I=Le(f),P=Le(p),Y=P||O,B=P||R,X=I||h&&Y!==!0;return Xf({deleteKeyCode:c,multiSelectionKeyCode:_}),N.createElement(Zf,{onMove:a,onMoveStart:l,onMoveEnd:u,onPaneContextMenu:i,elementsSelectable:A,zoomOnScroll:x,zoomOnPinch:$,panOnScroll:B,panOnScrollSpeed:z,panOnScrollMode:H,zoomOnDoubleClick:M,panOnDrag:!I&&Y,defaultViewport:D,translateExtent:V,minZoom:L,maxZoom:d,zoomActivationKeyCode:E,preventScrolling:b,noWheelClassName:C,noPanClassName:k},N.createElement(Oi,{onSelectionStart:y,onSelectionEnd:m,onPaneClick:e,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:o,onPaneContextMenu:i,onPaneScroll:s,panOnDrag:Y,isSelecting:!!X,selectionMode:g},t,T&&N.createElement(sd,{onSelectionContextMenu:v,noPanClassName:k,disableKeyboardA11y:w})))};Fi.displayName="FlowRenderer";var ad=S.memo(Fi);function ud(t){return tt(S.useCallback(n=>t?vi(n.nodeInternals,{x:0,y:0,width:n.width,height:n.height},n.transform,!0):n.getNodes(),[t]))}function ld(t){const e={input:Ce(t.input||$i),default:Ce(t.default||Kn),output:Ce(t.output||Ri),group:Ce(t.group||wr)},n={},r=Object.keys(t).filter(o=>!["input","default","output","group"].includes(o)).reduce((o,i)=>(o[i]=Ce(t[i]||Kn),o),n);return{...e,...r}}const fd=({x:t,y:e,width:n,height:r,origin:o})=>!n||!r?{x:t,y:e}:o[0]<0||o[1]<0||o[0]>1||o[1]>1?{x:t,y:e}:{x:t-n*o[0],y:e-r*o[1]},dd=t=>({nodesDraggable:t.nodesDraggable,nodesConnectable:t.nodesConnectable,nodesFocusable:t.nodesFocusable,elementsSelectable:t.elementsSelectable,updateNodeDimensions:t.updateNodeDimensions,onError:t.onError}),Ui=t=>{const{nodesDraggable:e,nodesConnectable:n,nodesFocusable:r,elementsSelectable:o,updateNodeDimensions:i,onError:s}=tt(dd,st),c=ud(t.onlyRenderVisibleElements),a=S.useRef(),l=S.useMemo(()=>{if(typeof ResizeObserver>"u")return null;const u=new ResizeObserver(f=>{const h=f.map(g=>({id:g.target.getAttribute("data-id"),nodeElement:g.target,forceUpdate:!0}));i(h)});return a.current=u,u},[]);return S.useEffect(()=>()=>{var u;(u=a==null?void 0:a.current)==null||u.disconnect()},[]),N.createElement("div",{className:"react-flow__nodes",style:_r},c.map(u=>{var $,R,z;let f=u.type||"default";t.nodeTypes[f]||(s==null||s("003",It.error003(f)),f="default");const h=t.nodeTypes[f]||t.nodeTypes.default,g=!!(u.draggable||e&&typeof u.draggable>"u"),y=!!(u.selectable||o&&typeof u.selectable>"u"),m=!!(u.connectable||n&&typeof u.connectable>"u"),_=!!(u.focusable||r&&typeof u.focusable>"u"),p=t.nodeExtent?fr(u.positionAbsolute,t.nodeExtent):u.positionAbsolute,E=(p==null?void 0:p.x)??0,A=(p==null?void 0:p.y)??0,x=fd({x:E,y:A,width:u.width??0,height:u.height??0,origin:t.nodeOrigin});return N.createElement(h,{key:u.id,id:u.id,className:u.className,style:u.style,type:f,data:u.data,sourcePosition:u.sourcePosition||F.Bottom,targetPosition:u.targetPosition||F.Top,hidden:u.hidden,xPos:E,yPos:A,xPosOrigin:x.x,yPosOrigin:x.y,selectNodesOnDrag:t.selectNodesOnDrag,onClick:t.onNodeClick,onMouseEnter:t.onNodeMouseEnter,onMouseMove:t.onNodeMouseMove,onMouseLeave:t.onNodeMouseLeave,onContextMenu:t.onNodeContextMenu,onDoubleClick:t.onNodeDoubleClick,selected:!!u.selected,isDraggable:g,isSelectable:y,isConnectable:m,isFocusable:_,resizeObserver:l,dragHandle:u.dragHandle,zIndex:(($=u[nt])==null?void 0:$.z)??0,isParent:!!((R=u[nt])!=null&&R.isParent),noDragClassName:t.noDragClassName,noPanClassName:t.noPanClassName,initialized:!!u.width&&!!u.height,rfId:t.rfId,disableKeyboardA11y:t.disableKeyboardA11y,ariaLabel:u.ariaLabel,hasHandleBounds:!!((z=u[nt])!=null&&z.handleBounds)})}))};Ui.displayName="NodeRenderer";var hd=S.memo(Ui);const gd=(t,e,n)=>n===F.Left?t-e:n===F.Right?t+e:t,pd=(t,e,n)=>n===F.Top?t-e:n===F.Bottom?t+e:t,ho="react-flow__edgeupdater",go=({position:t,centerX:e,centerY:n,radius:r=10,onMouseDown:o,onMouseEnter:i,onMouseOut:s,type:c})=>N.createElement("circle",{onMouseDown:o,onMouseEnter:i,onMouseOut:s,className:ut([ho,`${ho}-${c}`]),cx:gd(e,r,t),cy:pd(n,r,t),r,stroke:"transparent",fill:"transparent"}),md=()=>!0;var ae=t=>{const e=({id:n,className:r,type:o,data:i,onClick:s,onEdgeDoubleClick:c,selected:a,animated:l,label:u,labelStyle:f,labelShowBg:h,labelBgStyle:g,labelBgPadding:y,labelBgBorderRadius:m,style:_,source:p,target:E,sourceX:A,sourceY:x,targetX:$,targetY:R,sourcePosition:z,targetPosition:H,elementsSelectable:M,hidden:O,sourceHandleId:D,targetHandleId:V,onContextMenu:L,onMouseEnter:d,onMouseMove:b,onMouseLeave:v,reconnectRadius:C,onReconnect:k,onReconnectStart:w,onReconnectEnd:T,markerEnd:I,markerStart:P,rfId:Y,ariaLabel:B,isFocusable:X,isReconnectable:q,pathOptions:Z,interactionWidth:K,disableKeyboardA11y:et})=>{const Q=S.useRef(null),[mt,ht]=S.useState(!1),[yt,gt]=S.useState(!1),rt=ot(),bt=S.useMemo(()=>`url('#${qn(P,Y)}')`,[P,Y]),j=S.useMemo(()=>`url('#${qn(I,Y)}')`,[I,Y]);if(O)return null;const U=it=>{var St;const{edges:xt,addSelectedEdges:Ut,unselectNodesAndEdges:Xt,multiSelectionActive:Gt}=rt.getState(),$t=xt.find(Ee=>Ee.id===n);$t&&(M&&(rt.setState({nodesSelectionActive:!1}),$t.selected&&Gt?(Xt({nodes:[],edges:[$t]}),(St=Q.current)==null||St.blur()):Ut([n])),s&&s(it,$t))},ft=Ae(n,rt.getState,c),Bt=Ae(n,rt.getState,L),ve=Ae(n,rt.getState,d),te=Ae(n,rt.getState,b),ee=Ae(n,rt.getState,v),Ct=(it,xt)=>{if(it.button!==0)return;const{edges:Ut,isValidConnection:Xt}=rt.getState(),Gt=xt?E:p,$t=(xt?V:D)||null,St=xt?"target":"source",Ee=Xt||md,En=xt,be=Ut.find(Wt=>Wt.id===n);gt(!0),w==null||w(it,be,St);const bn=Wt=>{gt(!1),T==null||T(Wt,be,St)};Ni({event:it,handleId:$t,nodeId:Gt,onConnect:Wt=>k==null?void 0:k(be,Wt),isTarget:En,getState:rt.getState,setState:rt.setState,isValidConnection:Ee,edgeUpdaterType:St,onReconnectEnd:bn})},ne=it=>Ct(it,!0),Yt=it=>Ct(it,!1),Ft=()=>ht(!0),re=()=>ht(!1),oe=!M&&!s,_e=it=>{var xt;if(!et&&hi.includes(it.key)&&M){const{unselectNodesAndEdges:Ut,addSelectedEdges:Xt,edges:Gt}=rt.getState();it.key==="Escape"?((xt=Q.current)==null||xt.blur(),Ut({edges:[Gt.find(St=>St.id===n)]})):Xt([n])}};return N.createElement("g",{className:ut(["react-flow__edge",`react-flow__edge-${o}`,r,{selected:a,animated:l,inactive:oe,updating:mt}]),onClick:U,onDoubleClick:ft,onContextMenu:Bt,onMouseEnter:ve,onMouseMove:te,onMouseLeave:ee,onKeyDown:X?_e:void 0,tabIndex:X?0:void 0,role:X?"button":"img","data-testid":`rf__edge-${n}`,"aria-label":B===null?void 0:B||`Edge from ${p} to ${E}`,"aria-describedby":X?`${Pi}-${Y}`:void 0,ref:Q},!yt&&N.createElement(t,{id:n,source:p,target:E,selected:a,animated:l,label:u,labelStyle:f,labelShowBg:h,labelBgStyle:g,labelBgPadding:y,labelBgBorderRadius:m,data:i,style:_,sourceX:A,sourceY:x,targetX:$,targetY:R,sourcePosition:z,targetPosition:H,sourceHandleId:D,targetHandleId:V,markerStart:bt,markerEnd:j,pathOptions:Z,interactionWidth:K}),q&&N.createElement(N.Fragment,null,(q==="source"||q===!0)&&N.createElement(go,{position:z,centerX:A,centerY:x,radius:C,onMouseDown:ne,onMouseEnter:Ft,onMouseOut:re,type:"source"}),(q==="target"||q===!0)&&N.createElement(go,{position:H,centerX:$,centerY:R,radius:C,onMouseDown:Yt,onMouseEnter:Ft,onMouseOut:re,type:"target"})))};return e.displayName="EdgeWrapper",S.memo(e)};function yd(t){const e={default:ae(t.default||dn),straight:ae(t.bezier||pr),step:ae(t.step||gr),smoothstep:ae(t.step||_n),simplebezier:ae(t.simplebezier||hr)},n={},r=Object.keys(t).filter(o=>!["default","bezier"].includes(o)).reduce((o,i)=>(o[i]=ae(t[i]||dn),o),n);return{...e,...r}}function po(t,e,n=null){const r=((n==null?void 0:n.x)||0)+e.x,o=((n==null?void 0:n.y)||0)+e.y,i=(n==null?void 0:n.width)||e.width,s=(n==null?void 0:n.height)||e.height;switch(t){case F.Top:return{x:r+i/2,y:o};case F.Right:return{x:r+i,y:o+s/2};case F.Bottom:return{x:r+i/2,y:o+s};case F.Left:return{x:r,y:o+s/2}}}function mo(t,e){return t?t.length===1||!e?t[0]:e&&t.find(n=>n.id===e)||null:null}const xd=(t,e,n,r,o,i)=>{const s=po(n,t,e),c=po(i,r,o);return{sourceX:s.x,sourceY:s.y,targetX:c.x,targetY:c.y}};function wd({sourcePos:t,targetPos:e,sourceWidth:n,sourceHeight:r,targetWidth:o,targetHeight:i,width:s,height:c,transform:a}){const l={x:Math.min(t.x,e.x),y:Math.min(t.y,e.y),x2:Math.max(t.x+n,e.x+o),y2:Math.max(t.y+r,e.y+i)};l.x===l.x2&&(l.x2+=1),l.y===l.y2&&(l.y2+=1);const u=dr({x:(0-a[0])/a[2],y:(0-a[1])/a[2],width:s/a[2],height:c/a[2]}),f=Math.max(0,Math.min(u.x2,l.x2)-Math.max(u.x,l.x)),h=Math.max(0,Math.min(u.y2,l.y2)-Math.max(u.y,l.y));return Math.ceil(f*h)>0}function yo(t){var r,o,i,s,c;const e=((r=t==null?void 0:t[nt])==null?void 0:r.handleBounds)||null,n=e&&(t==null?void 0:t.width)&&(t==null?void 0:t.height)&&typeof((o=t==null?void 0:t.positionAbsolute)==null?void 0:o.x)<"u"&&typeof((i=t==null?void 0:t.positionAbsolute)==null?void 0:i.y)<"u";return[{x:((s=t==null?void 0:t.positionAbsolute)==null?void 0:s.x)||0,y:((c=t==null?void 0:t.positionAbsolute)==null?void 0:c.y)||0,width:(t==null?void 0:t.width)||0,height:(t==null?void 0:t.height)||0},e,!!n]}const vd=[{level:0,isMaxLevel:!0,edges:[]}];function _d(t,e,n=!1){let r=-1;const o=t.reduce((s,c)=>{var u,f;const a=pt(c.zIndex);let l=a?c.zIndex:0;if(n){const h=e.get(c.target),g=e.get(c.source),y=c.selected||(h==null?void 0:h.selected)||(g==null?void 0:g.selected),m=Math.max(((u=g==null?void 0:g[nt])==null?void 0:u.z)||0,((f=h==null?void 0:h[nt])==null?void 0:f.z)||0,1e3);l=(a?c.zIndex:0)+(y?m:0)}return s[l]?s[l].push(c):s[l]=[c],r=l>r?l:r,s},{}),i=Object.entries(o).map(([s,c])=>{const a=+s;return{edges:c,level:a,isMaxLevel:a===r}});return i.length===0?vd:i}function Ed(t,e,n){const r=tt(S.useCallback(o=>t?o.edges.filter(i=>{const s=e.get(i.source),c=e.get(i.target);return(s==null?void 0:s.width)&&(s==null?void 0:s.height)&&(c==null?void 0:c.width)&&(c==null?void 0:c.height)&&wd({sourcePos:s.positionAbsolute||{x:0,y:0},targetPos:c.positionAbsolute||{x:0,y:0},sourceWidth:s.width,sourceHeight:s.height,targetWidth:c.width,targetHeight:c.height,width:o.width,height:o.height,transform:o.transform})}):o.edges,[t,e]));return _d(r,e,n)}const bd=({color:t="none",strokeWidth:e=1})=>N.createElement("polyline",{style:{stroke:t,strokeWidth:e},strokeLinecap:"round",strokeLinejoin:"round",fill:"none",points:"-5,-4 0,0 -5,4"}),Sd=({color:t="none",strokeWidth:e=1})=>N.createElement("polyline",{style:{stroke:t,fill:t,strokeWidth:e},strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"}),xo={[fn.Arrow]:bd,[fn.ArrowClosed]:Sd};function Nd(t){const e=ot();return S.useMemo(()=>{var o,i;return Object.prototype.hasOwnProperty.call(xo,t)?xo[t]:((i=(o=e.getState()).onError)==null||i.call(o,"009",It.error009(t)),null)},[t])}const Ad=({id:t,type:e,color:n,width:r=12.5,height:o=12.5,markerUnits:i="strokeWidth",strokeWidth:s,orient:c="auto-start-reverse"})=>{const a=Nd(e);return a?N.createElement("marker",{className:"react-flow__arrowhead",id:t,markerWidth:`${r}`,markerHeight:`${o}`,viewBox:"-10 -10 20 20",markerUnits:i,orient:c,refX:"0",refY:"0"},N.createElement(a,{color:n,strokeWidth:s})):null},Td=({defaultColor:t,rfId:e})=>n=>{const r=[];return n.edges.reduce((o,i)=>([i.markerStart,i.markerEnd].forEach(s=>{if(s&&typeof s=="object"){const c=qn(s,e);r.includes(c)||(o.push({id:c,color:s.color||t,...s}),r.push(c))}}),o),[]).sort((o,i)=>o.id.localeCompare(i.id))},Xi=({defaultColor:t,rfId:e})=>{const n=tt(S.useCallback(Td({defaultColor:t,rfId:e}),[t,e]),(r,o)=>!(r.length!==o.length||r.some((i,s)=>i.id!==o[s].id)));return N.createElement("defs",null,n.map(r=>N.createElement(Ad,{id:r.id,key:r.id,type:r.type,color:r.color,width:r.width,height:r.height,markerUnits:r.markerUnits,strokeWidth:r.strokeWidth,orient:r.orient})))};Xi.displayName="MarkerDefinitions";var Cd=S.memo(Xi);const $d=t=>({nodesConnectable:t.nodesConnectable,edgesFocusable:t.edgesFocusable,edgesUpdatable:t.edgesUpdatable,elementsSelectable:t.elementsSelectable,width:t.width,height:t.height,connectionMode:t.connectionMode,nodeInternals:t.nodeInternals,onError:t.onError}),Gi=({defaultMarkerColor:t,onlyRenderVisibleElements:e,elevateEdgesOnSelect:n,rfId:r,edgeTypes:o,noPanClassName:i,onEdgeContextMenu:s,onEdgeMouseEnter:c,onEdgeMouseMove:a,onEdgeMouseLeave:l,onEdgeClick:u,onEdgeDoubleClick:f,onReconnect:h,onReconnectStart:g,onReconnectEnd:y,reconnectRadius:m,children:_,disableKeyboardA11y:p})=>{const{edgesFocusable:E,edgesUpdatable:A,elementsSelectable:x,width:$,height:R,connectionMode:z,nodeInternals:H,onError:M}=tt($d,st),O=Ed(e,H,n);return $?N.createElement(N.Fragment,null,O.map(({level:D,edges:V,isMaxLevel:L})=>N.createElement("svg",{key:D,style:{zIndex:D},width:$,height:R,className:"react-flow__edges react-flow__container"},L&&N.createElement(Cd,{defaultColor:t,rfId:r}),N.createElement("g",null,V.map(d=>{const[b,v,C]=yo(H.get(d.source)),[k,w,T]=yo(H.get(d.target));if(!C||!T)return null;let I=d.type||"default";o[I]||(M==null||M("011",It.error011(I)),I="default");const P=o[I]||o.default,Y=z===Jt.Strict?w.target:(w.target??[]).concat(w.source??[]),B=mo(v.source,d.sourceHandle),X=mo(Y,d.targetHandle),q=(B==null?void 0:B.position)||F.Bottom,Z=(X==null?void 0:X.position)||F.Top,K=!!(d.focusable||E&&typeof d.focusable>"u"),et=d.reconnectable||d.updatable,Q=typeof h<"u"&&(et||A&&typeof et>"u");if(!B||!X)return M==null||M("008",It.error008(B,d)),null;const{sourceX:mt,sourceY:ht,targetX:yt,targetY:gt}=xd(b,B,q,k,X,Z);return N.createElement(P,{key:d.id,id:d.id,className:ut([d.className,i]),type:I,data:d.data,selected:!!d.selected,animated:!!d.animated,hidden:!!d.hidden,label:d.label,labelStyle:d.labelStyle,labelShowBg:d.labelShowBg,labelBgStyle:d.labelBgStyle,labelBgPadding:d.labelBgPadding,labelBgBorderRadius:d.labelBgBorderRadius,style:d.style,source:d.source,target:d.target,sourceHandleId:d.sourceHandle,targetHandleId:d.targetHandle,markerEnd:d.markerEnd,markerStart:d.markerStart,sourceX:mt,sourceY:ht,targetX:yt,targetY:gt,sourcePosition:q,targetPosition:Z,elementsSelectable:x,onContextMenu:s,onMouseEnter:c,onMouseMove:a,onMouseLeave:l,onClick:u,onEdgeDoubleClick:f,onReconnect:h,onReconnectStart:g,onReconnectEnd:y,reconnectRadius:m,rfId:r,ariaLabel:d.ariaLabel,isFocusable:K,isReconnectable:Q,pathOptions:"pathOptions"in d?d.pathOptions:void 0,interactionWidth:d.interactionWidth,disableKeyboardA11y:p})})))),_):null};Gi.displayName="EdgeRenderer";var Md=S.memo(Gi);const Rd=t=>`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]})`;function kd({children:t}){const e=tt(Rd);return N.createElement("div",{className:"react-flow__viewport react-flow__container",style:{transform:e}},t)}function Id(t){const e=vr(),n=S.useRef(!1);S.useEffect(()=>{!n.current&&e.viewportInitialized&&t&&(setTimeout(()=>t(e),1),n.current=!0)},[t,e.viewportInitialized])}const Pd={[F.Left]:F.Right,[F.Right]:F.Left,[F.Top]:F.Bottom,[F.Bottom]:F.Top},Wi=({nodeId:t,handleType:e,style:n,type:r=Ot.Bezier,CustomComponent:o,connectionStatus:i})=>{var R,z,H;const{fromNode:s,handleId:c,toX:a,toY:l,connectionMode:u}=tt(S.useCallback(M=>({fromNode:M.nodeInternals.get(t),handleId:M.connectionHandleId,toX:(M.connectionPosition.x-M.transform[0])/M.transform[2],toY:(M.connectionPosition.y-M.transform[1])/M.transform[2],connectionMode:M.connectionMode}),[t]),st),f=(R=s==null?void 0:s[nt])==null?void 0:R.handleBounds;let h=f==null?void 0:f[e];if(u===Jt.Loose&&(h=h||(f==null?void 0:f[e==="source"?"target":"source"])),!s||!h)return null;const g=c?h.find(M=>M.id===c):h[0],y=g?g.x+g.width/2:(s.width??0)/2,m=g?g.y+g.height/2:s.height??0,_=(((z=s.positionAbsolute)==null?void 0:z.x)??0)+y,p=(((H=s.positionAbsolute)==null?void 0:H.y)??0)+m,E=g==null?void 0:g.position,A=E?Pd[E]:null;if(!E||!A)return null;if(o)return N.createElement(o,{connectionLineType:r,connectionLineStyle:n,fromNode:s,fromHandle:g,fromX:_,fromY:p,toX:a,toY:l,fromPosition:E,toPosition:A,connectionStatus:i});let x="";const $={sourceX:_,sourceY:p,sourcePosition:E,targetX:a,targetY:l,targetPosition:A};return r===Ot.Bezier?[x]=xi($):r===Ot.Step?[x]=Wn({...$,borderRadius:0}):r===Ot.SmoothStep?[x]=Wn($):r===Ot.SimpleBezier?[x]=yi($):x=`M${_},${p} ${a},${l}`,N.createElement("path",{d:x,fill:"none",className:"react-flow__connection-path",style:n})};Wi.displayName="ConnectionLine";const zd=t=>({nodeId:t.connectionNodeId,handleType:t.connectionHandleType,nodesConnectable:t.nodesConnectable,connectionStatus:t.connectionStatus,width:t.width,height:t.height});function Dd({containerStyle:t,style:e,type:n,component:r}){const{nodeId:o,handleType:i,nodesConnectable:s,width:c,height:a,connectionStatus:l}=tt(zd,st);return!(o&&i&&c&&s)?null:N.createElement("svg",{style:t,width:c,height:a,className:"react-flow__edges react-flow__connectionline react-flow__container"},N.createElement("g",{className:ut(["react-flow__connection",l])},N.createElement(Wi,{nodeId:o,handleType:i,style:e,type:n,CustomComponent:r,connectionStatus:l})))}function wo(t,e){return S.useRef(null),ot(),S.useMemo(()=>e(t),[t])}const qi=({nodeTypes:t,edgeTypes:e,onMove:n,onMoveStart:r,onMoveEnd:o,onInit:i,onNodeClick:s,onEdgeClick:c,onNodeDoubleClick:a,onEdgeDoubleClick:l,onNodeMouseEnter:u,onNodeMouseMove:f,onNodeMouseLeave:h,onNodeContextMenu:g,onSelectionContextMenu:y,onSelectionStart:m,onSelectionEnd:_,connectionLineType:p,connectionLineStyle:E,connectionLineComponent:A,connectionLineContainerStyle:x,selectionKeyCode:$,selectionOnDrag:R,selectionMode:z,multiSelectionKeyCode:H,panActivationKeyCode:M,zoomActivationKeyCode:O,deleteKeyCode:D,onlyRenderVisibleElements:V,elementsSelectable:L,selectNodesOnDrag:d,defaultViewport:b,translateExtent:v,minZoom:C,maxZoom:k,preventScrolling:w,defaultMarkerColor:T,zoomOnScroll:I,zoomOnPinch:P,panOnScroll:Y,panOnScrollSpeed:B,panOnScrollMode:X,zoomOnDoubleClick:q,panOnDrag:Z,onPaneClick:K,onPaneMouseEnter:et,onPaneMouseMove:Q,onPaneMouseLeave:mt,onPaneScroll:ht,onPaneContextMenu:yt,onEdgeContextMenu:gt,onEdgeMouseEnter:rt,onEdgeMouseMove:bt,onEdgeMouseLeave:j,onReconnect:U,onReconnectStart:ft,onReconnectEnd:Bt,reconnectRadius:ve,noDragClassName:te,noWheelClassName:ee,noPanClassName:Ct,elevateEdgesOnSelect:ne,disableKeyboardA11y:Yt,nodeOrigin:Ft,nodeExtent:re,rfId:oe})=>{const _e=wo(t,ld),it=wo(e,yd);return Id(i),N.createElement(ad,{onPaneClick:K,onPaneMouseEnter:et,onPaneMouseMove:Q,onPaneMouseLeave:mt,onPaneContextMenu:yt,onPaneScroll:ht,deleteKeyCode:D,selectionKeyCode:$,selectionOnDrag:R,selectionMode:z,onSelectionStart:m,onSelectionEnd:_,multiSelectionKeyCode:H,panActivationKeyCode:M,zoomActivationKeyCode:O,elementsSelectable:L,onMove:n,onMoveStart:r,onMoveEnd:o,zoomOnScroll:I,zoomOnPinch:P,zoomOnDoubleClick:q,panOnScroll:Y,panOnScrollSpeed:B,panOnScrollMode:X,panOnDrag:Z,defaultViewport:b,translateExtent:v,minZoom:C,maxZoom:k,onSelectionContextMenu:y,preventScrolling:w,noDragClassName:te,noWheelClassName:ee,noPanClassName:Ct,disableKeyboardA11y:Yt},N.createElement(kd,null,N.createElement(Md,{edgeTypes:it,onEdgeClick:c,onEdgeDoubleClick:l,onlyRenderVisibleElements:V,onEdgeContextMenu:gt,onEdgeMouseEnter:rt,onEdgeMouseMove:bt,onEdgeMouseLeave:j,onReconnect:U,onReconnectStart:ft,onReconnectEnd:Bt,reconnectRadius:ve,defaultMarkerColor:T,noPanClassName:Ct,elevateEdgesOnSelect:!!ne,disableKeyboardA11y:Yt,rfId:oe},N.createElement(Dd,{style:E,type:p,component:A,containerStyle:x})),N.createElement("div",{className:"react-flow__edgelabel-renderer"}),N.createElement(hd,{nodeTypes:_e,onNodeClick:s,onNodeDoubleClick:a,onNodeMouseEnter:u,onNodeMouseMove:f,onNodeMouseLeave:h,onNodeContextMenu:g,selectNodesOnDrag:d,onlyRenderVisibleElements:V,noPanClassName:Ct,noDragClassName:te,disableKeyboardA11y:Yt,nodeOrigin:Ft,nodeExtent:re,rfId:oe})))};qi.displayName="GraphView";var Hd=S.memo(qi);const jn=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],zt={rfId:"1",width:0,height:0,transform:[0,0,1],nodeInternals:new Map,edges:[],onNodesChange:null,onEdgesChange:null,hasDefaultNodes:!1,hasDefaultEdges:!1,d3Zoom:null,d3Selection:null,d3ZoomHandler:void 0,minZoom:.5,maxZoom:2,translateExtent:jn,nodeExtent:jn,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionNodeId:null,connectionHandleId:null,connectionHandleType:"source",connectionPosition:{x:0,y:0},connectionStatus:null,connectionMode:Jt.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:[0,0],nodeDragThreshold:0,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesUpdatable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,fitViewOnInit:!1,fitViewOnInitDone:!1,fitViewOnInitOptions:void 0,onSelectionChange:[],multiSelectionActive:!1,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,connectionRadius:20,onError:lf,isValidConnection:void 0},Od=()=>Ec((t,e)=>({...zt,setNodes:n=>{const{nodeInternals:r,nodeOrigin:o,elevateNodesOnSelect:i}=e();t({nodeInternals:kn(n,r,o,i)})},getNodes:()=>Array.from(e().nodeInternals.values()),setEdges:n=>{const{defaultEdgeOptions:r={}}=e();t({edges:n.map(o=>({...r,...o}))})},setDefaultNodesAndEdges:(n,r)=>{const o=typeof n<"u",i=typeof r<"u",s=o?kn(n,new Map,e().nodeOrigin,e().elevateNodesOnSelect):new Map;t({nodeInternals:s,edges:i?r:[],hasDefaultNodes:o,hasDefaultEdges:i})},updateNodeDimensions:n=>{const{onNodesChange:r,nodeInternals:o,fitViewOnInit:i,fitViewOnInitDone:s,fitViewOnInitOptions:c,domNode:a,nodeOrigin:l}=e(),u=a==null?void 0:a.querySelector(".react-flow__viewport");if(!u)return;const f=window.getComputedStyle(u),{m22:h}=new window.DOMMatrixReadOnly(f.transform),g=n.reduce((m,_)=>{const p=o.get(_.id);if(p!=null&&p.hidden)o.set(p.id,{...p,[nt]:{...p[nt],handleBounds:void 0}});else if(p){const E=lr(_.nodeElement);!!(E.width&&E.height&&(p.width!==E.width||p.height!==E.height||_.forceUpdate))&&(o.set(p.id,{...p,[nt]:{...p[nt],handleBounds:{source:fo(".source",_.nodeElement,h,l),target:fo(".target",_.nodeElement,h,l)}},...E}),m.push({id:p.id,type:"dimensions",dimensions:E}))}return m},[]);Di(o,l);const y=s||i&&!s&&Hi(e,{initial:!0,...c});t({nodeInternals:new Map(o),fitViewOnInitDone:y}),(g==null?void 0:g.length)>0&&(r==null||r(g))},updateNodePositions:(n,r=!0,o=!1)=>{const{triggerNodeChanges:i}=e(),s=n.map(c=>{const a={id:c.id,type:"position",dragging:o};return r&&(a.positionAbsolute=c.positionAbsolute,a.position=c.position),a});i(s)},triggerNodeChanges:n=>{const{onNodesChange:r,nodeInternals:o,hasDefaultNodes:i,nodeOrigin:s,getNodes:c,elevateNodesOnSelect:a}=e();if(n!=null&&n.length){if(i){const l=Jf(n,c()),u=kn(l,o,s,a);t({nodeInternals:u})}r==null||r(n)}},addSelectedNodes:n=>{const{multiSelectionActive:r,edges:o,getNodes:i}=e();let s,c=null;r?s=n.map(a=>Ht(a,!0)):(s=le(i(),n),c=le(o,[])),Qe({changedNodes:s,changedEdges:c,get:e,set:t})},addSelectedEdges:n=>{const{multiSelectionActive:r,edges:o,getNodes:i}=e();let s,c=null;r?s=n.map(a=>Ht(a,!0)):(s=le(o,n),c=le(i(),[])),Qe({changedNodes:c,changedEdges:s,get:e,set:t})},unselectNodesAndEdges:({nodes:n,edges:r}={})=>{const{edges:o,getNodes:i}=e(),s=n||i(),c=r||o,a=s.map(u=>(u.selected=!1,Ht(u.id,!1))),l=c.map(u=>Ht(u.id,!1));Qe({changedNodes:a,changedEdges:l,get:e,set:t})},setMinZoom:n=>{const{d3Zoom:r,maxZoom:o}=e();r==null||r.scaleExtent([n,o]),t({minZoom:n})},setMaxZoom:n=>{const{d3Zoom:r,minZoom:o}=e();r==null||r.scaleExtent([o,n]),t({maxZoom:n})},setTranslateExtent:n=>{var r;(r=e().d3Zoom)==null||r.translateExtent(n),t({translateExtent:n})},resetSelectedElements:()=>{const{edges:n,getNodes:r}=e(),i=r().filter(c=>c.selected).map(c=>Ht(c.id,!1)),s=n.filter(c=>c.selected).map(c=>Ht(c.id,!1));Qe({changedNodes:i,changedEdges:s,get:e,set:t})},setNodeExtent:n=>{const{nodeInternals:r}=e();r.forEach(o=>{o.positionAbsolute=fr(o.position,n)}),t({nodeExtent:n,nodeInternals:new Map(r)})},panBy:n=>{const{transform:r,width:o,height:i,d3Zoom:s,d3Selection:c,translateExtent:a}=e();if(!s||!c||!n.x&&!n.y)return!1;const l=Lt.translate(r[0]+n.x,r[1]+n.y).scale(r[2]),u=[[0,0],[o,i]],f=s==null?void 0:s.constrain()(l,u,a);return s.transform(c,f),r[0]!==f.x||r[1]!==f.y||r[2]!==f.k},cancelConnection:()=>t({connectionNodeId:zt.connectionNodeId,connectionHandleId:zt.connectionHandleId,connectionHandleType:zt.connectionHandleType,connectionStatus:zt.connectionStatus,connectionStartHandle:zt.connectionStartHandle,connectionEndHandle:zt.connectionEndHandle}),reset:()=>t({...zt})}),Object.is),Zi=({children:t})=>{const e=S.useRef(null);return e.current||(e.current=Od()),N.createElement(ef,{value:e.current},t)};Zi.displayName="ReactFlowProvider";const Ki=({children:t})=>S.useContext(vn)?N.createElement(N.Fragment,null,t):N.createElement(Zi,null,t);Ki.displayName="ReactFlowWrapper";const Ld={input:$i,default:Kn,output:Ri,group:wr},Vd={default:dn,straight:pr,step:gr,smoothstep:_n,simplebezier:hr},Bd=[0,0],Yd=[15,15],Fd={x:0,y:0,zoom:1},Ud={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0},Xd=S.forwardRef(({nodes:t,edges:e,defaultNodes:n,defaultEdges:r,className:o,nodeTypes:i=Ld,edgeTypes:s=Vd,onNodeClick:c,onEdgeClick:a,onInit:l,onMove:u,onMoveStart:f,onMoveEnd:h,onConnect:g,onConnectStart:y,onConnectEnd:m,onClickConnectStart:_,onClickConnectEnd:p,onNodeMouseEnter:E,onNodeMouseMove:A,onNodeMouseLeave:x,onNodeContextMenu:$,onNodeDoubleClick:R,onNodeDragStart:z,onNodeDrag:H,onNodeDragStop:M,onNodesDelete:O,onEdgesDelete:D,onSelectionChange:V,onSelectionDragStart:L,onSelectionDrag:d,onSelectionDragStop:b,onSelectionContextMenu:v,onSelectionStart:C,onSelectionEnd:k,connectionMode:w=Jt.Strict,connectionLineType:T=Ot.Bezier,connectionLineStyle:I,connectionLineComponent:P,connectionLineContainerStyle:Y,deleteKeyCode:B="Backspace",selectionKeyCode:X="Shift",selectionOnDrag:q=!1,selectionMode:Z=Oe.Full,panActivationKeyCode:K="Space",multiSelectionKeyCode:et=ln()?"Meta":"Control",zoomActivationKeyCode:Q=ln()?"Meta":"Control",snapToGrid:mt=!1,snapGrid:ht=Yd,onlyRenderVisibleElements:yt=!1,selectNodesOnDrag:gt=!0,nodesDraggable:rt,nodesConnectable:bt,nodesFocusable:j,nodeOrigin:U=Bd,edgesFocusable:ft,edgesUpdatable:Bt,elementsSelectable:ve,defaultViewport:te=Fd,minZoom:ee=.5,maxZoom:Ct=2,translateExtent:ne=jn,preventScrolling:Yt=!0,nodeExtent:Ft,defaultMarkerColor:re="#b1b1b7",zoomOnScroll:oe=!0,zoomOnPinch:_e=!0,panOnScroll:it=!1,panOnScrollSpeed:xt=.5,panOnScrollMode:Ut=Kt.Free,zoomOnDoubleClick:Xt=!0,panOnDrag:Gt=!0,onPaneClick:$t,onPaneMouseEnter:St,onPaneMouseMove:Ee,onPaneMouseLeave:En,onPaneScroll:be,onPaneContextMenu:bn,children:Er,onEdgeContextMenu:Wt,onEdgeDoubleClick:Ji,onEdgeMouseEnter:ts,onEdgeMouseMove:es,onEdgeMouseLeave:ns,onEdgeUpdate:rs,onEdgeUpdateStart:os,onEdgeUpdateEnd:is,onReconnect:ss,onReconnectStart:cs,onReconnectEnd:as,reconnectRadius:us=10,edgeUpdaterRadius:ls=10,onNodesChange:fs,onEdgesChange:ds,noDragClassName:hs="nodrag",noWheelClassName:gs="nowheel",noPanClassName:br="nopan",fitView:ps=!1,fitViewOptions:ms,connectOnClick:ys=!0,attributionPosition:xs,proOptions:ws,defaultEdgeOptions:vs,elevateNodesOnSelect:_s=!0,elevateEdgesOnSelect:Es=!1,disableKeyboardA11y:Sr=!1,autoPanOnConnect:bs=!0,autoPanOnNodeDrag:Ss=!0,connectionRadius:Ns=20,isValidConnection:As,onError:Ts,style:Cs,id:Nr,nodeDragThreshold:$s,...Ms},Rs)=>{const Sn=Nr||"1";return N.createElement("div",{...Ms,style:{...Cs,...Ud},ref:Rs,className:ut(["react-flow",o]),"data-testid":"rf__wrapper",id:Nr},N.createElement(Ki,null,N.createElement(Hd,{onInit:l,onMove:u,onMoveStart:f,onMoveEnd:h,onNodeClick:c,onEdgeClick:a,onNodeMouseEnter:E,onNodeMouseMove:A,onNodeMouseLeave:x,onNodeContextMenu:$,onNodeDoubleClick:R,nodeTypes:i,edgeTypes:s,connectionLineType:T,connectionLineStyle:I,connectionLineComponent:P,connectionLineContainerStyle:Y,selectionKeyCode:X,selectionOnDrag:q,selectionMode:Z,deleteKeyCode:B,multiSelectionKeyCode:et,panActivationKeyCode:K,zoomActivationKeyCode:Q,onlyRenderVisibleElements:yt,selectNodesOnDrag:gt,defaultViewport:te,translateExtent:ne,minZoom:ee,maxZoom:Ct,preventScrolling:Yt,zoomOnScroll:oe,zoomOnPinch:_e,zoomOnDoubleClick:Xt,panOnScroll:it,panOnScrollSpeed:xt,panOnScrollMode:Ut,panOnDrag:Gt,onPaneClick:$t,onPaneMouseEnter:St,onPaneMouseMove:Ee,onPaneMouseLeave:En,onPaneScroll:be,onPaneContextMenu:bn,onSelectionContextMenu:v,onSelectionStart:C,onSelectionEnd:k,onEdgeContextMenu:Wt,onEdgeDoubleClick:Ji,onEdgeMouseEnter:ts,onEdgeMouseMove:es,onEdgeMouseLeave:ns,onReconnect:ss??rs,onReconnectStart:cs??os,onReconnectEnd:as??is,reconnectRadius:us??ls,defaultMarkerColor:re,noDragClassName:hs,noWheelClassName:gs,noPanClassName:br,elevateEdgesOnSelect:Es,rfId:Sn,disableKeyboardA11y:Sr,nodeOrigin:U,nodeExtent:Ft}),N.createElement(If,{nodes:t,edges:e,defaultNodes:n,defaultEdges:r,onConnect:g,onConnectStart:y,onConnectEnd:m,onClickConnectStart:_,onClickConnectEnd:p,nodesDraggable:rt,nodesConnectable:bt,nodesFocusable:j,edgesFocusable:ft,edgesUpdatable:Bt,elementsSelectable:ve,elevateNodesOnSelect:_s,minZoom:ee,maxZoom:Ct,nodeExtent:Ft,onNodesChange:fs,onEdgesChange:ds,snapToGrid:mt,snapGrid:ht,connectionMode:w,translateExtent:ne,connectOnClick:ys,defaultEdgeOptions:vs,fitView:ps,fitViewOptions:ms,onNodesDelete:O,onEdgesDelete:D,onNodeDragStart:z,onNodeDrag:H,onNodeDragStop:M,onSelectionDrag:d,onSelectionDragStart:L,onSelectionDragStop:b,noPanClassName:br,nodeOrigin:U,rfId:Sn,autoPanOnConnect:bs,autoPanOnNodeDrag:Ss,onError:Ts,connectionRadius:Ns,isValidConnection:As,nodeDragThreshold:$s}),N.createElement(Rf,{onSelectionChange:V}),Er,N.createElement(rf,{proOptions:ws,position:xs}),N.createElement(Of,{rfId:Sn,disableKeyboardA11y:Sr})))});Xd.displayName="ReactFlow";function Gd(){return N.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},N.createElement("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"}))}function Wd(){return N.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},N.createElement("path",{d:"M0 0h32v4.2H0z"}))}function qd(){return N.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},N.createElement("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"}))}function Zd(){return N.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},N.createElement("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"}))}function Kd(){return N.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},N.createElement("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"}))}const Re=({children:t,className:e,...n})=>N.createElement("button",{type:"button",className:ut(["react-flow__controls-button",e]),...n},t);Re.displayName="ControlButton";const Qd=t=>({isInteractive:t.nodesDraggable||t.nodesConnectable||t.elementsSelectable,minZoomReached:t.transform[2]<=t.minZoom,maxZoomReached:t.transform[2]>=t.maxZoom}),Qi=({style:t,showZoom:e=!0,showFitView:n=!0,showInteractive:r=!0,fitViewOptions:o,onZoomIn:i,onZoomOut:s,onFitView:c,onInteractiveChange:a,className:l,children:u,position:f="bottom-left"})=>{const h=ot(),[g,y]=S.useState(!1),{isInteractive:m,minZoomReached:_,maxZoomReached:p}=tt(Qd,st),{zoomIn:E,zoomOut:A,fitView:x}=vr();if(S.useEffect(()=>{y(!0)},[]),!g)return null;const $=()=>{E(),i==null||i()},R=()=>{A(),s==null||s()},z=()=>{x(o),c==null||c()},H=()=>{h.setState({nodesDraggable:!m,nodesConnectable:!m,elementsSelectable:!m}),a==null||a(!m)};return N.createElement(li,{className:ut(["react-flow__controls",l]),position:f,style:t,"data-testid":"rf__controls"},e&&N.createElement(N.Fragment,null,N.createElement(Re,{onClick:$,className:"react-flow__controls-zoomin",title:"zoom in","aria-label":"zoom in",disabled:p},N.createElement(Gd,null)),N.createElement(Re,{onClick:R,className:"react-flow__controls-zoomout",title:"zoom out","aria-label":"zoom out",disabled:_},N.createElement(Wd,null))),n&&N.createElement(Re,{className:"react-flow__controls-fitview",onClick:z,title:"fit view","aria-label":"fit view"},N.createElement(qd,null)),r&&N.createElement(Re,{className:"react-flow__controls-interactive",onClick:H,title:"toggle interactivity","aria-label":"toggle interactivity"},m?N.createElement(Kd,null):N.createElement(Zd,null)),u)};Qi.displayName="Controls";var oh=S.memo(Qi),_t;(function(t){t.Lines="lines",t.Dots="dots",t.Cross="cross"})(_t||(_t={}));function jd({color:t,dimensions:e,lineWidth:n}){return N.createElement("path",{stroke:t,strokeWidth:n,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})}function Jd({color:t,radius:e}){return N.createElement("circle",{cx:e,cy:e,r:e,fill:t})}const th={[_t.Dots]:"#91919a",[_t.Lines]:"#eee",[_t.Cross]:"#e2e2e2"},eh={[_t.Dots]:1,[_t.Lines]:1,[_t.Cross]:6},nh=t=>({transform:t.transform,patternId:`pattern-${t.rfId}`});function ji({id:t,variant:e=_t.Dots,gap:n=20,size:r,lineWidth:o=1,offset:i=2,color:s,style:c,className:a}){const l=S.useRef(null),{transform:u,patternId:f}=tt(nh,st),h=s||th[e],g=r||eh[e],y=e===_t.Dots,m=e===_t.Cross,_=Array.isArray(n)?n:[n,n],p=[_[0]*u[2]||1,_[1]*u[2]||1],E=g*u[2],A=m?[E,E]:p,x=y?[E/i,E/i]:[A[0]/i,A[1]/i];return N.createElement("svg",{className:ut(["react-flow__background",a]),style:{...c,position:"absolute",width:"100%",height:"100%",top:0,left:0},ref:l,"data-testid":"rf__background"},N.createElement("pattern",{id:f+t,x:u[0]%p[0],y:u[1]%p[1],width:p[0],height:p[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${x[0]},-${x[1]})`},y?N.createElement(Jd,{color:h,radius:E/i}):N.createElement(jd,{dimensions:A,color:h,lineWidth:o})),N.createElement("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${f+t})`}))}ji.displayName="Background";var ih=S.memo(ji);export{ih as B,oh as C,hn as H,fn as M,F as P,Xd as R,rh as a,_t as b,N as c,vo as g,S as r};
@@ -5,10 +5,10 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <title>Cascade AI — Dashboard</title>
7
7
  <link rel="icon" type="image/svg+xml" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>◈</text></svg>" />
8
- <script type="module" crossorigin src="/assets/index-BvxaBI9b.js"></script>
9
- <link rel="modulepreload" crossorigin href="/assets/reactflow-B1e2RnXD.js">
8
+ <script type="module" crossorigin src="/assets/index-DFRrUnoJ.js"></script>
9
+ <link rel="modulepreload" crossorigin href="/assets/reactflow-Clz8xC7C.js">
10
10
  <link rel="modulepreload" crossorigin href="/assets/socketio-BcxXcwBL.js">
11
- <link rel="stylesheet" crossorigin href="/assets/index-DO_ICahS.css">
11
+ <link rel="stylesheet" crossorigin href="/assets/index-C6Nd1mOj.css">
12
12
  </head>
13
13
  <body>
14
14
  <div id="root"></div>
Binary file