@marimo-team/frontend 0.19.10-dev25 → 0.19.10-dev30
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.
- package/dist/assets/{cell-editor-D3c4Rpk_.js → cell-editor-B-wR_JRR.js} +1 -1
- package/dist/assets/{command-palette-C1BO4wPM.js → command-palette-Dt2DT2AT.js} +1 -1
- package/dist/assets/dependency-graph-panel-DED_3Q6I.js +4 -0
- package/dist/assets/{edit-page-D9dqnDnJ.js → edit-page-D8-gDPT2.js} +7 -7
- package/dist/assets/{hooks-CbRBMajE.js → hooks-DW6SBMlZ.js} +1 -1
- package/dist/assets/{index-DrRKhnJq.js → index-BMHyx2Yb.js} +2 -2
- package/dist/assets/{layout-D-ne4Nrb.js → layout-Bv1HRnh6.js} +3 -3
- package/dist/assets/{panels-DOjOYvcZ.js → panels-DGXXeSZl.js} +1 -1
- package/dist/assets/{run-page-DjlbIj9r.js → run-page-CTcZo7xh.js} +1 -1
- package/dist/assets/{scratchpad-panel-B5wsdMSh.js → scratchpad-panel-2TxCLFo3.js} +1 -1
- package/dist/assets/{useNotebookActions-D2r7NLmk.js → useNotebookActions-CztwRVhn.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/src/components/dependency-graph/dependency-graph-tree.tsx +10 -1
- package/src/components/dependency-graph/dependency-graph.tsx +1 -0
- package/src/components/dependency-graph/elements.ts +20 -9
- package/src/components/dependency-graph/panels.tsx +27 -11
- package/src/components/dependency-graph/types.ts +1 -0
- package/src/components/editor/package-alert.tsx +4 -4
- package/src/components/editor/renderers/vertical-layout/vertical-layout.tsx +3 -5
- package/dist/assets/dependency-graph-panel-BU4Hahnm.js +0 -4
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./loro_wasm_bg-C3Vl7VMX.js","./loro_wasm_bg-DzFUi5p_.js","./chunk-LvLJmgfZ.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
var ed=Object.defineProperty;var Aa=re=>{throw TypeError(re)};var td=(re,z,pe)=>z in re?ed(re,z,{enumerable:!0,configurable:!0,writable:!0,value:pe}):re[z]=pe;var h=(re,z,pe)=>td(re,typeof z!="symbol"?z+"":z,pe),nd=(re,z,pe)=>z.has(re)||Aa("Cannot "+pe);var Ia=(re,z,pe)=>(nd(re,z,"read from private field"),pe?pe.call(re):z.get(re)),Fa=(re,z,pe)=>z.has(re)?Aa("Cannot add the same private member more than once"):z instanceof WeakSet?z.add(re):z.set(re,pe);import{s as La}from"./chunk-LvLJmgfZ.js";import{d as Oa,f as gr,i as Z,l as wn,n as le,p as Ot,s as vn,u as se}from"./useEvent-BhXAndur.js";import{t as rd}from"./react-Bj1aDYRI.js";import{$ as od,$t as ad,Ar as Da,At as br,B as Ua,Ct as _a,Ft as Ba,Gt as id,Ht as En,Lt as sd,Mr as ld,N as cd,Nt as yr,Pt as Pa,Q as wr,R as ja,Rt as ud,Sr as vr,St as dd,Tr as fd,U as Ma,V as Ra,Wn as md,Xt as hd,Yr as pd,a as Ga,bn as gd,ct as Nn,d as Ja,dt as Dt,gr as bd,ii as kn,kr as yd,kt as wd,lt as vd,m as Er,mt as Ed,nn as Nd,on as Nr,ot as kd,pn as Cd,qr as Wa,rn as Sd,st as kr,tn as xd,u as Va,ut as Td,w as Cn,wn as Ad,wr as Id,xn as Fd,y as Ze,yn as Ld,z as Od,zt as Dd,__tla as Ud}from"./cells-DG7rjkOQ.js";import{P as $a,R as _d,k as Bd,w as Pd}from"./zod-H_cgTO0M.js";import{t as Re}from"./compiler-runtime-B3qBwwSJ.js";import{C as jd,f as Md,m as Rd,p as Gd,t as Jd,v as Wd}from"./ai-model-dropdown-C_pphOGv.js";import{d as Ve,f as Vd,l as Cr,n as Ha}from"./hotkeys-BHHWjLlp.js";import{t as Ut}from"./invariant-CAG_dYON.js";import{S as Sr,h as qa,m as $d,o as Hd,p as za,s as Ka}from"./utils-YqBXNpsM.js";import{S as qd,d as zd,h as pt,o as Kd,r as Ya,x as _t,y as Xa}from"./config-Q0O7_stz.js";import{a as Yd,n as Qa,t as Xd}from"./switch-B-UXYPJj.js";import{n as Qd}from"./globals-CP-h_Os3.js";import{t as Zd}from"./ErrorBoundary-B9Ifj8Jf.js";import{t as ef}from"./useEventListener-Cb-RVVEn.js";import{t as tf}from"./jsx-runtime-ZmTK25f3.js";import{r as xr,t as at}from"./button-CZ3Cs4qb.js";import{t as it}from"./cn-BKtXLv3a.js";import{Bt as gt,Ct as Za,Dt as nf,E as rf,Ft as Sn,H as ei,Ht as Bt,I as of,J as l,Jt as me,Kt as af,Lt as xn,Mt as sf,P as lf,St as Ge,V as ti,Vt as Tr,Wt as st,Yt as $e,Zt as Pt,_ as cf,a as uf,at as P,bt as df,ct as He,en as Tn,ft as ff,it as mf,lt as An,m as hf,pt as pf,rt as q,st as gf,vt as bf,w as yf,wt as wf,yt as vf,zt as Ef}from"./dist-DxWb3aMV.js";import{C as Nf,D as kf,_ as Cf,a as Sf,c as xf,n as Ar,r as Tf,v as Af,x as If,y as Ff}from"./dist-CF9gSfGe.js";import{E as Lf,__tla as Of}from"./JsonOutput-BYZnEjkl.js";import{c as ni,n as Df}from"./once-Bul8mtFs.js";import{t as Ir}from"./createReducer-B3rBsy4P.js";import{a as Uf,c as _f,f as In,h as Bf,i as Pf,l as jt,n as ri,o as jf,t as Mf}from"./dist-NOntBqny.js";import{r as Fn,t as Rf}from"./requests-B4FYHTZl.js";import{t as Gf}from"./createLucideIcon-BCdY6lG5.js";import{r as oi,t as Jf,__tla as Wf}from"./layout-
|
|
2
|
+
var ed=Object.defineProperty;var Aa=re=>{throw TypeError(re)};var td=(re,z,pe)=>z in re?ed(re,z,{enumerable:!0,configurable:!0,writable:!0,value:pe}):re[z]=pe;var h=(re,z,pe)=>td(re,typeof z!="symbol"?z+"":z,pe),nd=(re,z,pe)=>z.has(re)||Aa("Cannot "+pe);var Ia=(re,z,pe)=>(nd(re,z,"read from private field"),pe?pe.call(re):z.get(re)),Fa=(re,z,pe)=>z.has(re)?Aa("Cannot add the same private member more than once"):z instanceof WeakSet?z.add(re):z.set(re,pe);import{s as La}from"./chunk-LvLJmgfZ.js";import{d as Oa,f as gr,i as Z,l as wn,n as le,p as Ot,s as vn,u as se}from"./useEvent-BhXAndur.js";import{t as rd}from"./react-Bj1aDYRI.js";import{$ as od,$t as ad,Ar as Da,At as br,B as Ua,Ct as _a,Ft as Ba,Gt as id,Ht as En,Lt as sd,Mr as ld,N as cd,Nt as yr,Pt as Pa,Q as wr,R as ja,Rt as ud,Sr as vr,St as dd,Tr as fd,U as Ma,V as Ra,Wn as md,Xt as hd,Yr as pd,a as Ga,bn as gd,ct as Nn,d as Ja,dt as Dt,gr as bd,ii as kn,kr as yd,kt as wd,lt as vd,m as Er,mt as Ed,nn as Nd,on as Nr,ot as kd,pn as Cd,qr as Wa,rn as Sd,st as kr,tn as xd,u as Va,ut as Td,w as Cn,wn as Ad,wr as Id,xn as Fd,y as Ze,yn as Ld,z as Od,zt as Dd,__tla as Ud}from"./cells-DG7rjkOQ.js";import{P as $a,R as _d,k as Bd,w as Pd}from"./zod-H_cgTO0M.js";import{t as Re}from"./compiler-runtime-B3qBwwSJ.js";import{C as jd,f as Md,m as Rd,p as Gd,t as Jd,v as Wd}from"./ai-model-dropdown-C_pphOGv.js";import{d as Ve,f as Vd,l as Cr,n as Ha}from"./hotkeys-BHHWjLlp.js";import{t as Ut}from"./invariant-CAG_dYON.js";import{S as Sr,h as qa,m as $d,o as Hd,p as za,s as Ka}from"./utils-YqBXNpsM.js";import{S as qd,d as zd,h as pt,o as Kd,r as Ya,x as _t,y as Xa}from"./config-Q0O7_stz.js";import{a as Yd,n as Qa,t as Xd}from"./switch-B-UXYPJj.js";import{n as Qd}from"./globals-CP-h_Os3.js";import{t as Zd}from"./ErrorBoundary-B9Ifj8Jf.js";import{t as ef}from"./useEventListener-Cb-RVVEn.js";import{t as tf}from"./jsx-runtime-ZmTK25f3.js";import{r as xr,t as at}from"./button-CZ3Cs4qb.js";import{t as it}from"./cn-BKtXLv3a.js";import{Bt as gt,Ct as Za,Dt as nf,E as rf,Ft as Sn,H as ei,Ht as Bt,I as of,J as l,Jt as me,Kt as af,Lt as xn,Mt as sf,P as lf,St as Ge,V as ti,Vt as Tr,Wt as st,Yt as $e,Zt as Pt,_ as cf,a as uf,at as P,bt as df,ct as He,en as Tn,ft as ff,it as mf,lt as An,m as hf,pt as pf,rt as q,st as gf,vt as bf,w as yf,wt as wf,yt as vf,zt as Ef}from"./dist-DxWb3aMV.js";import{C as Nf,D as kf,_ as Cf,a as Sf,c as xf,n as Ar,r as Tf,v as Af,x as If,y as Ff}from"./dist-CF9gSfGe.js";import{E as Lf,__tla as Of}from"./JsonOutput-BYZnEjkl.js";import{c as ni,n as Df}from"./once-Bul8mtFs.js";import{t as Ir}from"./createReducer-B3rBsy4P.js";import{a as Uf,c as _f,f as In,h as Bf,i as Pf,l as jt,n as ri,o as jf,t as Mf}from"./dist-NOntBqny.js";import{r as Fn,t as Rf}from"./requests-B4FYHTZl.js";import{t as Gf}from"./createLucideIcon-BCdY6lG5.js";import{r as oi,t as Jf,__tla as Wf}from"./layout-Bv1HRnh6.js";import{M as Vf,O as $f,a as ai,c as Hf,f as qf,k as ii,n as zf,o as Kf,r as si,s as Yf,w as Xf}from"./add-cell-with-ai-CnyhGSdf.js";import{t as Qf}from"./x-ZP5cObgf.js";import{r as Zf}from"./download-B6duieQs.js";import{t as em}from"./circle-check-DquVD4wZ.js";import{r as tm,t as nm}from"./types-Cggdh96K.js";import{n as rm}from"./spinner-DA8-7wQv.js";import{t as li}from"./save-DZodxFnE.js";import{I as ci,P as om}from"./input-DUrq2DiR.js";import{a as am,i as im,n as ui}from"./state-C-B637hX.js";import{t as sm}from"./preload-helper-D2MJg03u.js";import{t as bt}from"./use-toast-BDYuj3zG.js";import{n as Ye}from"./paths-BzSgteR-.js";import{t as lm}from"./session-BOFn9QrD.js";import{r as cm}from"./useTheme-DQozhcp1.js";import{t as Ln}from"./tooltip-CMQz28hC.js";import{r as um,t as dm}from"./mode-a9XOBfse.js";import{c as di,i as fi,n as mi,r as fm}from"./dialog-eb-NieZw.js";import{O as mm}from"./usePress-C__vuri5.js";import{a as hm,r as pm,t as gm}from"./popover-CH1FzjxU.js";import{n as hi}from"./ImperativeModal-BNN1HA7x.js";import{r as bm}from"./errors-TZBmrJmc.js";import{t as ym}from"./copy-DHrHayPa.js";import{a as wm}from"./useRunCells-DnyQs7_N.js";import{t as X}from"./extends-BiFDv3jB.js";import{t as Mt}from"./objectWithoutPropertiesLoose-DfWeGRFv.js";import{t as vm}from"./kbd-Cm6Ba9qg.js";import{a as Fr}from"./useInstallPackage-D4fX0Ee_.js";import{a as Em,o as Nm}from"./cell-link-D46k36Xe.js";import{n as km}from"./useAsyncData-BMGLSTg8.js";import{a as Cm,o as pi,r as Sm,s as gi,t as xm}from"./command-Djb6VJ8T.js";import{r as Tm}from"./html-to-image-BXhYNOMC.js";import{a as Am}from"./focus-n0WPxeOV.js";import{a as bi}from"./renderShortcut-BckyRbYt.js";import{t as Lr}from"./label-E64zk6_7.js";import{n as Or,t as yi}from"./useDeleteCell-CU4wVnMY.js";import{n as yt}from"./esm-BqiVbELQ.js";import{n as Im,t as Fm}from"./icons-CCHmxi8d.js";import{t as wi}from"./dist-BqBWjk9M.js";import{t as Lm}from"./useSplitCell-CSr3as14.js";import{t as vi}from"./Inputs-GV-aQbOR.js";import{co as Om,do as Dr,fo as Dm,ft as Um,go as wt,ho as Ei,lo as Ur,mo as Ni,oo as _m,po as Bm,so as ki,uo as Ci,__tla as Pm}from"./loro_wasm_bg-DzFUi5p_.js";import{t as jm}from"./ws-DcVtI9Wj.js";import{n as Mm}from"./hooks-DW6SBMlZ.js";let On,_r,Si,Br,lt,Pr,ge,Rt,Gt,xi,Ti,Ai,Ii,Fi,Dn,Li,Un,Oi,_n,Rm=Promise.all([(()=>{try{return Ud}catch{}})(),(()=>{try{return Of}catch{}})(),(()=>{try{return Wf}catch{}})(),(()=>{try{return Pm}catch{}})()]).then(async()=>{var bn,Ta,ye,we,ve,Ee,Ne,ke,Ce,Se,xe,Te,Ae,Ie,Fe,Le,Oe,De,Ue,_e,Be;var re=Gf("file-pen",[["path",{d:"M12.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v9.34",key:"o6klzx"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10.378 12.622a1 1 0 0 1 3 3.003L8.36 20.637a2 2 0 0 1-.854.506l-2.867.837a.5.5 0 0 1-.62-.62l.836-2.869a2 2 0 0 1 .506-.853z",key:"zhnas1"}]]);const z={showInput:"Mod-l",acceptEdit:"Mod-y",rejectEdit:"Mod-u"};var pe=300;const Et=Bt.define({combine:e=>Tn(e,{onError:console.error,inputDebounceTime:pe,keymaps:z},{onError:(t,n)=>t&&n,inputDebounceTime:(t,n)=>t&&n,keymaps:(t,n)=>t&&n})}),et=me.define(),tt=$e.define({create(){return{show:!1,lineFrom:0,lineTo:0}},update(e,t){for(let n of t.effects)if(n.is(et))return n.value;return e}}),Nt=me.define(),kt=me.define(),Mr=$e.define({create(){return{shouldFocus:!1,inputValue:""}},update(e,t){let n=e;for(let r of t.effects)r.is(Nt)&&(n={...n,inputValue:r.value}),r.is(kt)&&(n={...n,shouldFocus:r.value});return n}}),Jt=me.define(),Ct=$e.define({create(){return null},update(e,t){for(let n of t.effects)if(n.is(Jt))return n.value;return e}}),ct=me.define(),Rr=$e.define({create(){return!1},update(e,t){for(let n of t.effects)if(n.is(ct))return n.value;return e}});var Di=1;const Gr=e=>{let{state:t}=e,n=t.selection.main;if(n.empty)return!1;let r=t.doc,o=r.lineAt(n.from),a=r.lineAt(n.to);if(t.sliceDoc(o.from,a.to).trim().length<Di)return!1;let i=Math.max(1,Math.min(o.number,r.lines)),s=Math.max(1,Math.min(a.number,r.lines));return e.dispatch({effects:[et.of({show:!0,lineFrom:i,lineTo:s}),kt.of(!0),Nt.of("")],selection:gt.cursor(o.from)}),!0},Jr=e=>e.state.field(Ct)?(e.dispatch({effects:[Jt.of(null),et.of({show:!1,lineFrom:0,lineTo:0}),kt.of(!1),Nt.of(""),ct.of(!1)]}),!0):!1,Wr=e=>{let t=e.state.field(Ct);return t?(e.dispatch({changes:{from:t.from,to:t.to,insert:t.oldCode},effects:[Jt.of(null),et.of({show:!1,lineFrom:0,lineTo:0}),kt.of(!1),Nt.of(""),ct.of(!1)]}),!0):!1};var Bn={mac:"\u2318",windows:"\u229E Win",default:"Ctrl"};function Ui(){return navigator.platform.startsWith("Mac")?Bn.mac:navigator.platform.startsWith("Win")?Bn.windows:Bn.default}function Pn(e){return e.replace("Mod",Ui()).replace("-"," ").toUpperCase()}function ce(e,t){let n=document.createElement(e);return n.className=t,n}function _i(e,t,n=void 0){let r=()=>{};return(...o)=>(r(),new Promise((a,i)=>{let s=setTimeout(()=>a(e(...o)),t);r=()=>{clearTimeout(s),n!==void 0&&i(n)}}))}var Wt=$e.define({create(){return{suggestion:null}},update(e,t){let n=t.effects.find(r=>r.is(Vt));return!t.docChanged&&!n&&!t.selection?e:n&&t.state.doc===n.value.doc?{suggestion:n.value.text}:{suggestion:null}}}),Vt=me.define();function Bi(e,t){let n=e.state.selection.main.head,r=[],o=q.widget({widget:new Pi(t),side:1});return r.push(o.range(n)),q.set(r)}var Pi=class extends An{constructor(t){super();h(this,"suggestion");this.suggestion=t}toDOM(){let t=document.createElement("span");return t.style.opacity="0.4",t.className="cm-inline-suggestion",t.textContent=this.suggestion,t.setAttribute("role","suggestion"),t.setAttribute("aria-label",`Suggestion: ${this.suggestion}`),t}get lineBreaks(){return this.suggestion.split(`
|
|
3
3
|
`).length-1}},ji=class{constructor(e){h(this,"cache",new Map);h(this,"timeout");this.timeout=e}get(e){let t=this.cache.get(e);return t?Date.now()-t.timestamp>this.timeout?(this.cache.delete(e),null):t.result:null}set(e,t){this.cache.set(e,{result:t,timestamp:Date.now()})}},Mi=(e,t)=>He.fromClass(class{constructor(){h(this,"abortController",null);h(this,"cache");this.cache=new ji(t.cacheTimeout??1e3)}async update(n){var i,s,c,u,d;if(!n.docChanged||((s=(i=t.events)==null?void 0:i.beforeSuggestionFetch)==null?void 0:s.call(i,n.view))===!1)return;(c=this.abortController)==null||c.abort(),this.abortController=new AbortController;let r=n.state.doc,o=r.toString(),a=this.cache.get(o);if(a){n.view.dispatch({effects:Vt.of({text:a,doc:r})});return}try{let f=await e(n.state,this.abortController.signal,n.view);if(this.abortController.signal.aborted||((d=(u=t.events)==null?void 0:u.shouldShowSuggestion)==null?void 0:d.call(u,n.view,f))===!1)return;this.cache.set(o,f),n.view.dispatch({effects:Vt.of({text:f,doc:r})})}catch(f){f instanceof Error&&f.name!=="AbortError"&&console.error("Suggestion fetch error:",f)}}destroy(){var n;(n=this.abortController)==null||n.abort()}}),Ri=He.fromClass(class{constructor(){h(this,"decorations");this.decorations=q.none}update(e){var n;let t=(n=e.state.field(Wt))==null?void 0:n.suggestion;if(!t){this.decorations=q.none;return}this.decorations=Bi(e.view,t)}},{decorations:e=>e.decorations});function Gi(e,t,n,r){return{...e.changeByRange(o=>{if(o===e.selection.main)return{changes:{from:n,to:r,insert:t},range:gt.cursor(n+t.length)};let a=r-n;return!o.empty||a&&e.sliceDoc(o.from-a,o.from)!==e.sliceDoc(n,r)?{range:o}:{changes:{from:o.from-a,to:o.from,insert:t},range:gt.cursor(o.from-a+t.length)}}),userEvent:"input.complete"}}var Ji=e=>{var r,o,a;let t=(r=e.state.field(Wt))==null?void 0:r.suggestion;if(!t)return!1;let n=e.state.facet(jn);return e.dispatch({...Gi(e.state,t,e.state.selection.main.head,e.state.selection.main.head)}),(a=(o=n.events)==null?void 0:o.onSuggestionAccepted)==null||a.call(o,e,t),!0},Vr=e=>{var r,o,a;let t=(r=e.state.field(Wt))==null?void 0:r.suggestion;if(!t)return!1;let n=e.state.facet(jn);return e.dispatch({effects:Vt.of({text:null,doc:e.state.doc})}),(a=(o=n.events)==null?void 0:o.onSuggestionRejected)==null||a.call(o,e,t),!0},Wi=Ge.of([{key:"Tab",run:Ji},{key:"Escape",run:Vr}]),jn=Bt.define({combine:e=>e.at(-1)});function $r(e){let{delay:t=500,includeKeymap:n=!0}=e,r=_i(e.fetchFn,t);return[Wt,jn.of(e),Mi(r,e),Ri,n?Wi:[]]}const Vi=P.baseTheme({".cm-ai-input-container":{display:"flex",flexDirection:"column",gap:"4px",width:"min(calc(100% + 7px), 500px)",padding:"5px 5px",margin:"0 -6px",backgroundColor:"light-dark(rgb(241, 243, 245), rgb(40, 40, 40))"},".cm-ai-input":{display:"block",width:"100%",padding:"3px 8px",border:"2px solid rgb(51, 154, 240)",borderRadius:"5px",fontSize:"12px"},".cm-ai-help-info-button":{fontSize:"10px",paddingLeft:"10px",height:"18px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",display:"block",marginRight:"auto"},".cm-ai-help-info-button:hover":{color:"light-dark(rgb(89, 97, 105), rgb(190, 190, 190))"},".cm-ai-generate-button":{background:"#0E639C",border:"none",padding:"2px 6px",color:"#ffffff",cursor:"pointer",font:"inherit",borderRadius:"4px","&:hover":{backgroundColor:"#1177bb"}},".cm-line.cm-ai-selection, .cm-line.cm-ai-selection.cm-active-line":{backgroundColor:"light-dark(color-mix(in srgb, rgb(223, 227, 232) 50%, transparent), color-mix(in srgb, rgb(50, 50, 50) 50%, transparent)) !important"},".cm-line:has(.cm-new-code-line)":{backgroundColor:"light-dark(color-mix(in srgb, rgb(183, 235, 143) 50%, transparent), color-mix(in srgb, rgb(40, 100, 40) 50%, transparent)) !important"},".cm-old-code-container":{backgroundColor:"light-dark(rgb(255, 205, 205), rgb(100, 40, 40))",position:"relative",display:"flex",paddingTop:"0",width:"100%",alignItems:"center"},".cm-code-button":{position:"absolute",right:"5px",top:"50%",transform:"translateY(-50%)",background:"none",border:"none",cursor:"pointer",fontSize:"16px"},".cm-floating-buttons":{fontFamily:"sans-serif",position:"absolute",top:"-20px",left:"5px",display:"flex"},".cm-floating-button":{fontFamily:"sans-serif",padding:"2px 5px",fontSize:"10px",cursor:"pointer",fontWeight:"700"},".cm-floating-accept":{backgroundColor:"light-dark(rgb(55, 125, 34), rgb(40, 80, 25))",borderTopLeftRadius:"5px",borderBottomLeftRadius:"5px",color:"white",filter:"brightness(90%)","&:hover":{filter:"brightness(100%)"}},".cm-floating-reject":{backgroundColor:"light-dark(rgb(220, 53, 69), rgb(180, 40, 50))",color:"white",borderTopRightRadius:"5px",borderBottomRightRadius:"5px",filter:"brightness(90%)","&:hover":{filter:"brightness(100%)"}},".hotkey":{display:"inline-block",padding:"0 4px",borderRadius:"3px",backgroundColor:"rgba(255, 255, 255, 0.1)",fontSize:"90%"},".cm-ai-loading-indicator":{fontStyle:"italic",fontSize:"10px",paddingLeft:"12px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",opacity:"0",transition:"opacity 0.3s ease-in-out","&::after":{content:'""',display:"inline-block",animation:"ellipsis-pulse 1.5s steps(4, end) infinite"},"&:not(:empty)":{opacity:"1"}},".cm-ai-input:disabled":{opacity:"0.5"},"@keyframes ellipsis-pulse":{"0%":{content:"'.'"},"25%":{content:"'..'"},"50%":{content:"'...'"},"75%":{content:"''"}},".cm-ai-loading-container":{display:"flex",alignItems:"center",padding:"0 8px"},".cm-ai-cancel-button":{padding:"2px 8px",fontSize:"10px",borderRadius:"4px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))",cursor:"pointer","&:hover":{background:"light-dark(rgb(223, 227, 232), rgb(50, 50, 50))"}},".hidden":{display:"none"}});function $i(e){var o,a;let t=e.state.facet(Et),n={...z,...t.keymaps},r=ce("div","cm-ai-tooltip").appendChild(ce("div","cm-ai-tooltip-button"));return r.innerHTML=`<span>Edit <span class="hotkey">${Pn(n.showInput)}</span></span>`,(o=r.querySelector("span"))==null||o.addEventListener("mousedown",i=>{i.stopPropagation(),i.button===0&&i.preventDefault()}),(a=r.querySelector("span"))==null||a.addEventListener("click",i=>{i.preventDefault(),Gr(e)}),r}const Mn=Bt.define({combine(e){return Tn(e,{render:$i,hideOnBlur:!1})}}),Hi=He.fromClass((Ta=class{constructor(e){h(this,"view");h(this,"suppress");h(this,"dom");h(this,"mousedown",()=>{this.suppress=!0});h(this,"mouseup",()=>{this.suppress=!1,this.display(this.view)});h(this,"scroll",()=>{this.display(this.view)});h(this,"windowScroll",()=>{this.display(this.view)});Fa(this,bn,e=>{var n;let t=e.state.selection.ranges.find(r=>!r.empty);if(t&&!this.suppress){let r=e.coordsAtPos(t.from);if(!r)return;let o=e.dom.getBoundingClientRect(),a=(n=e.dom.parentElement)==null?void 0:n.getBoundingClientRect(),i=r.top>=o.top&&r.top<=o.bottom&&r.left>=o.left&&r.left<=o.right,s=!a||r.top>=a.top&&r.top<=a.bottom&&r.left>=a.left&&r.left<=a.right;if(!i||!s){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}this.dom.style.display="flex",this.dom.setAttribute("aria-hidden","false");let c=this.dom.getBoundingClientRect(),u=o.width-c.width,d=Math.min(r.left,u),f=r.top-c.height;f=a?Math.max(a.y,f):f,this.dom.style.left=`${d}px`,this.dom.style.top=`${f}px`,requestAnimationFrame(()=>{this.dom&&this.dom.setAttribute("aria-hidden","false")})}else this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true")});this.view=e;let t=e.state.facet(Mn);this.suppress=!1,document.addEventListener("mousedown",this.mousedown),document.addEventListener("mouseup",this.mouseup),e.scrollDOM.addEventListener("scroll",this.scroll),window.addEventListener("scroll",this.windowScroll,!0);let n=t.render(e);e.dom.appendChild(n),this.dom=n}update(e){this.display(e.view)}docViewUpdate(e){this.display(e)}display(e){if(e.state.field(tt).show){this.dom.style.display="none";return}if(e.state.facet(Mn).hideOnBlur&&!e.hasFocus){this.dom.style.display="none",this.dom.setAttribute("aria-hidden","true");return}e.requestMeasure({read:Ia(this,bn)})}destroy(){document.removeEventListener("mousedown",this.mousedown),document.removeEventListener("mouseup",this.mouseup),this.view.scrollDOM.removeEventListener("scroll",this.scroll),window.removeEventListener("scroll",this.windowScroll,!0),this.dom.remove()}},bn=new WeakMap,Ta));var qi=P.baseTheme({".cm-ai-tooltip-button":{userSelect:"none",fontFamily:"system-ui, -apple-system, sans-serif",position:"fixed",display:"flex",boxSizing:"border-box",padding:"2px 6px",borderRadius:"4px",fontSize:"12px",backgroundColor:"#0E639C",color:"#ffffff",border:"1px solid transparent",boxShadow:"0 2px 4px rgba(0,0,0,0.1)",zIndex:"999",transition:"opacity 0.5s","&[aria-hidden='true']":{opacity:"0"},"&[aria-hidden='false']":{opacity:"1"},"& > span":{pointerEvents:"auto",cursor:"pointer",display:"inline-block",padding:"2px"},"&:hover":{backgroundColor:"#1177bb"}}});function zi(){return[Hi,qi]}var Ki=class extends An{constructor(t){super();h(this,"oldCode");this.oldCode=t}toDOM(t){let n=ce("div","cm-old-code-container");n.setAttribute("role","region"),n.setAttribute("aria-label","Previous code version");let r=ce("div","cm-old-code cm-line");r.textContent=this.oldCode;let o=ce("div","cm-floating-buttons"),a=t.state.facet(Et),i={...z,...a.keymaps},s=ce("button","cm-floating-button cm-floating-accept");s.innerHTML=`<span class="hotkey">${Pn(i.acceptEdit)}</span> Accept`,s.setAttribute("aria-label","Accept changes"),s.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),t.focus(),Jr(t)});let c=ce("button","cm-floating-button cm-floating-reject");return c.innerHTML=`<span class="hotkey">${Pn(i.rejectEdit)}</span> Reject`,c.setAttribute("aria-label","Reject changes"),c.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),t.focus(),Wr(t)}),o.append(s,c),n.append(r,o),n}updateDOM(t,n){return!0}},Yi=class extends An{constructor(t){super();h(this,"complete");h(this,"abortController",null);h(this,"dom",null);h(this,"input",null);h(this,"loadingContainer",null);h(this,"helpInfo",null);h(this,"inputContainer",null);h(this,"form",null);h(this,"view",null);h(this,"onKeyDown",async t=>{t.key==="Enter"&&!t.shiftKey?(t.preventDefault(),await this.handleSubmit()):t.key==="Escape"&&this.onCancel()});h(this,"onCancel",()=>{this.cleanup();let t=this.view;t&&(t.dispatch({effects:[et.of({show:!1,lineFrom:0,lineTo:0}),ct.of(!1)]}),t.focus())});h(this,"handleSubmit",async t=>{var g;let n=this.view;if(!n)return;let r=n.state.facet(Et);t==null||t.stopPropagation();let o=n.state.field(tt),{input:a}=this;if(!a)return;let i=a.value.trim();if(!o.show||!i)return;let s=n.state.doc.line(o.lineFrom),c=n.state.doc.line(o.lineTo),u=s.from,d=c.to,f=n.state.sliceDoc(u,d),p=n.state.sliceDoc(0,u),m=n.state.sliceDoc(d);this.abortController=new AbortController,n.dispatch({effects:ct.of(!0)}),this.toggleLoading(!0);try{let w=await this.complete({prompt:i,selection:f,codeBefore:p,codeAfter:m,editorView:n,signal:this.abortController.signal});if(!n.state.field(tt).show)return;if(!w||typeof w!="string")throw Error("Invalid completion result");n.dispatch({changes:{from:u,to:d,insert:w},effects:[et.of({show:!1,lineFrom:0,lineTo:0}),Jt.of({from:u,to:u+w.length,oldCode:f,newCode:w}),ct.of(!1)]})}catch(w){if(w instanceof DOMException&&w.name==="AbortError")return;(g=r.onError)==null||g.call(r,w)}finally{this.cleanup(),this.toggleLoading(!1),n.focus()}});this.complete=t}toDOM(t){if(this.dom)return this.dom;this.view=t;let n=t.state.field(Mr),r=t.state.field(Rr),o=ce("div","cm-ai-input-container");this.inputContainer=o,this.dom=o;let a=ce("form","cm-ai-input-form");this.form=a,a.setAttribute("role","search"),a.setAttribute("aria-label","AI editing instructions"),a.addEventListener("submit",y=>y.preventDefault());let i=ce("input","cm-ai-input");this.input=i,a.append(i),i.placeholder="Editing instructions...",i.setAttribute("aria-label","AI editing instructions"),i.setAttribute("autocomplete","off"),i.setAttribute("spellcheck","true"),i.value=n.inputValue;let s=ce("div","cm-ai-loading-container");this.loadingContainer=s;let c=ce("div","cm-ai-loading-indicator");c.setAttribute("role","status"),c.setAttribute("aria-live","polite"),c.textContent="Generating";let u=ce("button","cm-ai-cancel-button");u.textContent="Cancel",u.setAttribute("aria-label","Cancel code generation"),u.addEventListener("click",this.onCancel),s.append(u,c);let d=ce("div","cm-ai-help-info");this.helpInfo=d;let f=d.appendChild(document.createElement("button"));f.className="cm-ai-help-info-button",f.textContent="Esc to close",f.addEventListener("click",this.onCancel);let p=ce("button","cm-ai-generate-button");p.textContent="\u23CE Generate",p.setAttribute("aria-label","Generate code"),p.addEventListener("click",this.handleSubmit),this.toggleLoading(r),n.shouldFocus&&requestAnimationFrame(()=>{i.value=n.inputValue,i.focus(),t.dispatch({effects:kt.of(!1)})}),m(i.value),i.addEventListener("input",w),i.addEventListener("keydown",this.onKeyDown);function m(y){d.replaceChildren(y?p:f)}let g="";function w(){t.dispatch({effects:Nt.of(i.value)});let y=i.value.trim();y!==g&&(g=y,m(y))}return o}toggleLoading(t){var n;this.inputContainer&&this.form&&this.loadingContainer&&this.helpInfo&&((n=this.inputContainer)==null||n.replaceChildren(this.form,t?this.loadingContainer:this.helpInfo))}updateDOM(t,n){return this.dom=t,this.input=t.querySelector(".cm-ai-input"),!0}cleanup(){var t,n,r;(t=this.abortController)==null||t.abort(),this.abortController=null,(n=this.dom)==null||n.remove(),(r=this.input)==null||r.remove(),this.dom=null,this.input=null}destroy(){this.cleanup()}};function Xi(e){if(!e.prompt)throw Error("prompt function is required");let t={...z,...e.keymaps};return[Et.of(e),tt,Mr,Ct,Rr,zi(),Vi,Ge.of([{key:t.showInput,run:Gr}]),st.highest([Ge.of([{key:t.acceptEdit,run:Jr},{key:t.rejectEdit,run:Wr}])]),Qi,Zi,es,ts]}const Qi=P.updateListener.of(e=>{let t=e.state.field(tt);if(!t.show||!e.docChanged)return;let{lineFrom:n,lineTo:r}=t,o=!1;e.changes.iterChanges((a,i,s,c)=>{let u=e.state.doc.lineAt(a).number;if(u<n){let d=e.state.doc.lineAt(c).number-e.state.doc.lineAt(s).number;n+=d,r+=d,o=!0}else if(u<=r){let d=e.state.doc.lineAt(c).number-e.state.doc.lineAt(s).number;r+=d,o=!0}}),o&&e.view.dispatch({effects:[et.of({show:!0,lineFrom:n,lineTo:r})]})}),Zi=P.decorations.of(e=>{let t=e.state.field(Ct);return t?q.set([q.mark({class:"cm-new-code-line"}).range(t.from,t.to)]):q.none}),es=P.decorations.compute([tt],e=>{let t=e.field(tt),n=e.facet(Et),r=[];if(t.show){let o=t.lineFrom,a=t.lineTo;for(let i=o;i<=a;i++){let s=e.doc.line(i).from;r.push(q.line({class:"cm-ai-selection"}).range(s)),i===o&&r.push(q.widget({widget:new Yi(n.prompt),side:-1}).range(s))}}return q.set(r)}),ts=$e.define({create(e){return q.none},update(e,t){let n=t.state.field(Ct);return n?q.set([q.widget({widget:new Ki(n.oldCode),block:!0}).range(n.from)]):q.none},provide:e=>P.decorations.from(e)});var ns=Re(),I=La(rd(),1),Rn=()=>({entries:new Map}),{valueAtom:Hr,useActions:qr}=Ir(Rn,{submit:(e,t)=>{let{cellIds:n,deleteCell:r,deleteManyCells:o,store:a}=t,i=a.get(Ze),s=a.get(Ld),c=new Set(i.cellIds.inOrderIds.filter(f=>i.cellData[f].code.trim()==="")),u=new Map;for(let f of n){if(c.has(f)){u.set(f,{cellId:f,type:"simple"});continue}let p=i.cellRuntime[f],m=new Map;for(let w of Object.values(s)){let y=w.declaredBy.includes(f),E=w.usedBy.some(C=>!c.has(C));y&&E&&m.set(w.name,w.usedBy)}let g;p!=null&&p.runElapsedTimeMs&&p.runElapsedTimeMs>2e3&&(g=p.runElapsedTimeMs),m.size===0&&g===void 0?u.set(f,{cellId:f,type:"simple"}):u.set(f,{cellId:f,type:"expensive",executionDurationMs:g,defs:m})}let d=[...u.values()].every(f=>f.type==="simple");return u.size>0&&d?(u.size===1?r({cellId:[...u.values()][0].cellId}):o({cellIds:[...u.values()].map(f=>f.cellId)}),Rn()):{...e,entries:u}},clear:()=>Rn()});_n=function(){let e=gr(),{submit:t,clear:n}=qr(),{entries:r}=se(Hr),o=yi(),a=Or();return(0,I.useMemo)(()=>({submit:i=>{t({cellIds:i,deleteCell:o,deleteManyCells:a,store:e})},clear:n,get idle(){return r.size===0},get shouldConfirmDelete(){return r.size>1}}),[e,t,n,r,o,a])},Oi=function(e){let t=(0,ns.c)(16),n=se(Hr),r=qr(),o=Or(),a;t[0]!==e||t[1]!==n.entries?(a=n.entries.get(e),t[0]=e,t[1]=n.entries,t[2]=a):a=t[2];let i=a;if(!i){let d;return t[3]===Symbol.for("react.memo_cache_sentinel")?(d={isPending:!1},t[3]=d):d=t[3],d}if(n.entries.size!==1){let d;return t[4]===i?d=t[5]:(d={isPending:!0,shouldConfirmDelete:!1,...i},t[4]=i,t[5]=d),d}let s;t[6]!==r||t[7]!==o||t[8]!==n.entries?(s=()=>{o({cellIds:[...n.entries.values()].map(rs)}),r.clear()},t[6]=r,t[7]=o,t[8]=n.entries,t[9]=s):s=t[9];let c;t[10]===r?c=t[11]:(c=()=>r.clear(),t[10]=r,t[11]=c);let u;return t[12]!==i||t[13]!==s||t[14]!==c?(u={isPending:!0,...i,shouldConfirmDelete:!0,confirm:s,cancel:c},t[12]=i,t[13]=s,t[14]=c,t[15]=u):u=t[15],u};function rs(e){return e.cellId}async function os(e){var s,c;let t=`
|
|
4
4
|
${e.codeBefore}
|
|
5
5
|
<rewrite_this>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as V}from"./chunk-LvLJmgfZ.js";import{l as X,u as L}from"./useEvent-BhXAndur.js";import{t as Y}from"./react-Bj1aDYRI.js";import{Ur as Z}from"./cells-DG7rjkOQ.js";import"./react-dom-CSu739Rf.js";import{t as O}from"./compiler-runtime-B3qBwwSJ.js";import"./tooltip-DxKBXCGp.js";import{S as ee}from"./ai-model-dropdown-C_pphOGv.js";import{a as le,i as te,l as ie}from"./hotkeys-BHHWjLlp.js";import{p as ae,v as oe,y as re}from"./utils-YqBXNpsM.js";import{i as ne}from"./switch-B-UXYPJj.js";import{t as pe}from"./useEventListener-Cb-RVVEn.js";import{t as se}from"./jsx-runtime-ZmTK25f3.js";import"./dist-DxWb3aMV.js";import"./JsonOutput-BYZnEjkl.js";import"./cjs-CH5Rj0g8.js";import"./main-U5Goe76G.js";import"./useNonce-CS26E0hA.js";import{r as de}from"./requests-B4FYHTZl.js";import"./layout-
|
|
1
|
+
import{s as V}from"./chunk-LvLJmgfZ.js";import{l as X,u as L}from"./useEvent-BhXAndur.js";import{t as Y}from"./react-Bj1aDYRI.js";import{Ur as Z}from"./cells-DG7rjkOQ.js";import"./react-dom-CSu739Rf.js";import{t as O}from"./compiler-runtime-B3qBwwSJ.js";import"./tooltip-DxKBXCGp.js";import{S as ee}from"./ai-model-dropdown-C_pphOGv.js";import{a as le,i as te,l as ie}from"./hotkeys-BHHWjLlp.js";import{p as ae,v as oe,y as re}from"./utils-YqBXNpsM.js";import{i as ne}from"./switch-B-UXYPJj.js";import{t as pe}from"./useEventListener-Cb-RVVEn.js";import{t as se}from"./jsx-runtime-ZmTK25f3.js";import"./dist-DxWb3aMV.js";import"./JsonOutput-BYZnEjkl.js";import"./cjs-CH5Rj0g8.js";import"./main-U5Goe76G.js";import"./useNonce-CS26E0hA.js";import{r as de}from"./requests-B4FYHTZl.js";import"./layout-Bv1HRnh6.js";import"./download-B6duieQs.js";import{t as me}from"./useCellActionButton-BCYKogBW.js";import"./markdown-renderer-CnImn_qm.js";import{i as he,t as ce}from"./useNotebookActions-CztwRVhn.js";import"./dist-MyTWYTLd.js";import"./dist-LUpffRIq.js";import"./dist-PzrizfuL.js";import"./dist-BNkRH34W.js";import"./dist-maX8rbyb.js";import"./session-BOFn9QrD.js";import"./Combination-BAEdC-rz.js";import"./dates-CrvjILe3.js";import"./popover-CH1FzjxU.js";import"./share-ipf2hrOh.js";import"./vega-loader.browser-DXARUlxo.js";import"./defaultLocale-JieDVWC_.js";import"./defaultLocale-BLne0bXb.js";import"./purify.es-DZrAQFIu.js";import{a as ye,c as fe,i as z,l as J,n as ue,o as K,r as be,s as ge}from"./command-Djb6VJ8T.js";import"./chunk-5FQGJX7Z-DPlx2kjA.js";import"./katex-CDLTCvjQ.js";import"./html-to-image-BXhYNOMC.js";import{r as ke}from"./focus-n0WPxeOV.js";import{t as Q}from"./renderShortcut-BckyRbYt.js";import"./esm-BqiVbELQ.js";import"./name-cell-input-BhJdGpGA.js";import"./multi-icon-jM74Rbvg.js";import"./dist-BP9zs-JA.js";import"./dist-BHxWJlYy.js";import"./dist-C0vFollF.js";import"./dist-CShMY7yu.js";import"./dist-D_DbFqxl.js";import"./dist-DDhEwFtR.js";import"./dist-DKmfcej2.js";import"./dist-K8bI26Ke.js";import"./dist-dnoBqBf0.js";import"./esm-BeuExXY6.js";var Ce=O(),je=V(Y(),1);function xe(e,l){let t=(0,Ce.c)(11),n;t[0]===l?n=t[1]:(n=new Z(l),t[0]=l,t[1]=n);let p=n,r;t[2]!==e||t[3]!==p?(r=()=>p.get(e),t[2]=e,t[3]=p,t[4]=r):r=t[4];let[m,g]=(0,je.useState)(r),i;t[5]!==e||t[6]!==p?(i=k=>{g(k),p.set(e,k)},t[5]=e,t[6]=p,t[7]=i):i=t[7];let f=i,h;return t[8]!==f||t[9]!==m?(h=[m,f],t[8]=f,t[9]=m,t[10]=h):h=t[10],h}var ve=O(),Se=3;function we(){let e=(0,ve.c)(7),l;e[0]===Symbol.for("react.memo_cache_sentinel")?(l=[],e[0]=l):l=e[0];let[t,n]=xe("marimo:commands",l),p;e[1]!==t||e[2]!==n?(p=m=>{n(_e([m,...t]).slice(0,Se))},e[1]=t,e[2]=n,e[3]=p):p=e[3];let r;return e[4]!==t||e[5]!==p?(r={recentCommands:t,addRecentCommand:p},e[4]=t,e[5]=p,e[6]=r):r=e[6],r}function _e(e){return[...new Set(e)]}function W(e){return e.dropdown!==void 0}function T(e,l=""){return e.flatMap(t=>t.label?W(t)?T(t.dropdown,`${l+t.label} > `):{...t,label:l+t.label}:[])}var He=O();function Ae(){let e=(0,He.c)(75),[l,t]=re(),[n,p]=oe(),{saveAppConfig:r,saveUserConfig:m}=de(),g;e[0]!==m||e[1]!==t?(g=async d=>{await m({config:d}).then(()=>{t(c=>({...c,...d}))})},e[0]=m,e[1]=t,e[2]=g):g=e[2];let i=g,f;e[3]!==r||e[4]!==p?(f=async d=>{await r({config:d}).then(()=>{p(d)})},e[3]=r,e[4]=p,e[5]=f):f=e[5];let h=f,k;if(e[6]!==n||e[7]!==l.completion||e[8]!==l.display||e[9]!==l.keymap||e[10]!==h||e[11]!==i){let d;e[13]===n?d=e[14]:(d=I=>I!==n.width,e[13]=n,e[14]=d);let c;e[15]!==n||e[16]!==h?(c=I=>({label:`App config > Set width=${I}`,handle:()=>{h({...n,width:I})}}),e[15]=n,e[16]=h,e[17]=c):c=e[17];let H;e[18]!==l.display||e[19]!==i?(H={label:"Config > Set theme: dark",handle:()=>{i({display:{...l.display,theme:"dark"}})}},e[18]=l.display,e[19]=i,e[20]=H):H=e[20];let C;e[21]!==l.display||e[22]!==i?(C={label:"Config > Set theme: light",handle:()=>{i({display:{...l.display,theme:"light"}})}},e[21]=l.display,e[22]=i,e[23]=C):C=e[23];let A;e[24]!==l.display||e[25]!==i?(A={label:"Config > Set theme: system",handle:()=>{i({display:{...l.display,theme:"system"}})}},e[24]=l.display,e[25]=i,e[26]=A):A=e[26];let P=l.keymap.preset==="vim",M;e[27]!==l.keymap||e[28]!==i?(M=()=>{i({keymap:{...l.keymap,preset:"vim"}})},e[27]=l.keymap,e[28]=i,e[29]=M):M=e[29];let N;e[30]!==P||e[31]!==M?(N={label:"Config > Switch keymap to VIM",hidden:P,handle:M},e[30]=P,e[31]=M,e[32]=N):N=e[32];let D=l.keymap.preset==="default",j;e[33]!==l.keymap||e[34]!==i?(j=()=>{i({keymap:{...l.keymap,preset:"default"}})},e[33]=l.keymap,e[34]=i,e[35]=j):j=e[35];let u;e[36]!==D||e[37]!==j?(u={label:"Config > Switch keymap to default (current: VIM)",hidden:D,handle:j},e[36]=D,e[37]=j,e[38]=u):u=e[38];let x;e[39]!==l.completion||e[40]!==i?(x=()=>{i({completion:{...l.completion,copilot:!1}})},e[39]=l.completion,e[40]=i,e[41]=x):x=e[41];let v=l.completion.copilot!=="github",U;e[42]!==x||e[43]!==v?(U={label:"Config > Disable GitHub Copilot",handle:x,hidden:v},e[42]=x,e[43]=v,e[44]=U):U=e[44];let S;e[45]!==l.completion||e[46]!==i?(S=()=>{i({completion:{...l.completion,copilot:"github"}})},e[45]=l.completion,e[46]=i,e[47]=S):S=e[47];let G=l.completion.copilot==="github",$;e[48]!==S||e[49]!==G?($={label:"Config > Enable GitHub Copilot",handle:S,hidden:G},e[48]=S,e[49]=G,e[50]=$):$=e[50];let q=!l.display.reference_highlighting,w;e[51]!==l.display||e[52]!==i?(w=()=>{i({display:{...l.display,reference_highlighting:!1}})},e[51]=l.display,e[52]=i,e[53]=w):w=e[53];let b;e[54]!==q||e[55]!==w?(b={label:"Config > Disable reference highlighting",hidden:q,handle:w},e[54]=q,e[55]=w,e[56]=b):b=e[56];let y;e[57]!==l.display||e[58]!==i?(y=()=>{i({display:{...l.display,reference_highlighting:!0}})},e[57]=l.display,e[58]=i,e[59]=y):y=e[59];let F;e[60]!==l.display.reference_highlighting||e[61]!==y?(F={label:"Config > Enable reference highlighting",hidden:l.display.reference_highlighting,handle:y},e[60]=l.display.reference_highlighting,e[61]=y,e[62]=F):F=e[62];let o=l.display.cell_output==="above",a;e[63]!==l.display||e[64]!==i?(a=()=>{i({display:{...l.display,cell_output:"above"}})},e[63]=l.display,e[64]=i,e[65]=a):a=e[65];let R;e[66]!==o||e[67]!==a?(R={label:"Config > Set cell output area: above",hidden:o,handle:a},e[66]=o,e[67]=a,e[68]=R):R=e[68];let _=l.display.cell_output==="below",E;e[69]!==l.display||e[70]!==i?(E=()=>{i({display:{...l.display,cell_output:"below"}})},e[69]=l.display,e[70]=i,e[71]=E):E=e[71];let B;e[72]!==_||e[73]!==E?(B={label:"Config > Set cell output area: below",hidden:_,handle:E},e[72]=_,e[73]=E,e[74]=B):B=e[74],k=[...ee().filter(d).map(c),H,C,A,N,u,U,$,b,F,R,B].filter(Me),e[6]=n,e[7]=l.completion,e[8]=l.display,e[9]=l.keymap,e[10]=h,e[11]=i,e[12]=k}else k=e[12];return k}function Me(e){return!e.hidden}var Ne=O(),s=V(se(),1),De=()=>{let e=(0,Ne.c)(37),[l,t]=X(he),n=ne(),p=L(ke),r=L(ae),m;e[0]===p?m=e[1]:(m={cell:p},e[0]=p,e[1]=m);let g=me(m).flat();g=T(g);let i=Ae(),f=ce();f=[...T(f),...T(i)];let h=f.filter(Fe),k=le.keyBy(h,Re),{recentCommands:d,addRecentCommand:c}=we(),H;e[2]===d?H=e[3]:(H=new Set(d),e[2]=d,e[3]=H);let C=H,A;e[4]!==r||e[5]!==t?(A=o=>{ie(r.getHotkey("global.commandPalette").key)(o)&&(o.preventDefault(),t(Ee))},e[4]=r,e[5]=t,e[6]=A):A=e[6],pe(document,"keydown",A);let P;e[7]!==c||e[8]!==r||e[9]!==n||e[10]!==t?(P=(o,a)=>{let R=n[o];if(!R)return null;let _=r.getHotkey(o);return(0,s.jsxs)(K,{disabled:a.disabled,onSelect:()=>{c(o),t(!1),requestAnimationFrame(()=>{R()})},value:_.name,children:[(0,s.jsxs)("span",{children:[_.name,a.tooltip&&(0,s.jsx)("span",{className:"ml-2",children:a.tooltip})]}),(0,s.jsx)(J,{children:(0,s.jsx)(Q,{shortcut:_.key})})]},o)},e[7]=c,e[8]=r,e[9]=n,e[10]=t,e[11]=P):P=e[11];let M=P,N;e[12]!==c||e[13]!==r||e[14]!==t?(N=o=>{let{label:a,handle:R,props:_,hotkey:E}=o,B=_===void 0?{}:_;return(0,s.jsxs)(K,{disabled:B.disabled,onSelect:()=>{c(a),t(!1),requestAnimationFrame(()=>{R()})},value:a,children:[(0,s.jsxs)("span",{children:[a,B.tooltip&&(0,s.jsxs)("span",{className:"ml-2",children:["(",B.tooltip,")"]})]}),E&&(0,s.jsx)(J,{children:(0,s.jsx)(Q,{shortcut:r.getHotkey(E).key})})]},a)},e[12]=c,e[13]=r,e[14]=t,e[15]=N):N=e[15];let D=N,j=ue,u;e[16]===Symbol.for("react.memo_cache_sentinel")?(u=(0,s.jsx)(ye,{placeholder:"Type to search..."}),e[16]=u):u=e[16];let x=ge,v;e[17]===Symbol.for("react.memo_cache_sentinel")?(v=(0,s.jsx)(be,{children:"No results found."}),e[17]=v):v=e[17];let U=d.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(z,{heading:"Recently Used",children:d.map(o=>{let a=k[o];return te(o)?M(o,{disabled:a==null?void 0:a.disabled,tooltip:a==null?void 0:a.tooltip}):a&&!W(a)?D({label:a.label,handle:a.handleHeadless||a.handle,props:{disabled:a.disabled,tooltip:a.tooltip}}):null})}),(0,s.jsx)(fe,{})]}),S=z,G=r.iterate().map(o=>{if(C.has(o))return null;let a=k[o];return M(o,{disabled:a==null?void 0:a.disabled,tooltip:a==null?void 0:a.tooltip})}),$=h.map(o=>C.has(o.label)?null:D({label:o.label,handle:o.handleHeadless||o.handle,props:{disabled:o.disabled,tooltip:o.tooltip}})),q;e[18]!==C||e[19]!==D?(q=o=>C.has(o.label)?null:D({label:`Cell > ${o.label}`,handle:o.handleHeadless||o.handle,props:{disabled:o.disabled,tooltip:o.tooltip}}),e[18]=C,e[19]=D,e[20]=q):q=e[20];let w=g.map(q),b;e[21]!==S||e[22]!==$||e[23]!==w||e[24]!==G?(b=(0,s.jsxs)(S,{heading:"Commands",children:[G,$,w]}),e[21]=S,e[22]=$,e[23]=w,e[24]=G,e[25]=b):b=e[25];let y;e[26]!==x||e[27]!==b||e[28]!==v||e[29]!==U?(y=(0,s.jsxs)(x,{children:[v,U,b]}),e[26]=x,e[27]=b,e[28]=v,e[29]=U,e[30]=y):y=e[30];let F;return e[31]!==j||e[32]!==l||e[33]!==t||e[34]!==y||e[35]!==u?(F=(0,s.jsxs)(j,{open:l,onOpenChange:t,children:[u,y]}),e[31]=j,e[32]=l,e[33]=t,e[34]=y,e[35]=u,e[36]=F):F=e[36],F};function Fe(e){return!e.hotkey}function Re(e){return e.label}function Ee(e){return!e}export{De as default};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var Xr=Object.defineProperty;var Wr=(t,e,n)=>e in t?Xr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var ie=(t,e,n)=>Wr(t,typeof e!="symbol"?e+"":e,n);import{s as _t,t as q}from"./chunk-LvLJmgfZ.js";import{i as jt,l as bn,n as Yr,p as Pt,u as It}from"./useEvent-BhXAndur.js";import{t as Zr}from"./react-Bj1aDYRI.js";import{E as Kr,M as Gr,Qt as Ur,St as xn,T as qr,_n as wn,a as Qr,f as Jr,k as Rt,m as ea,vt as ta,w as na,yn as oa,zn as En}from"./cells-DG7rjkOQ.js";import{t as ra}from"./react-dom-CSu739Rf.js";import{t as De}from"./compiler-runtime-B3qBwwSJ.js";import{t as aa}from"./jsx-runtime-ZmTK25f3.js";import{r as ia,t as rt}from"./button-CZ3Cs4qb.js";import{t as Ve}from"./cn-BKtXLv3a.js";import"./dist-DxWb3aMV.js";import{r as sa}from"./once-Bul8mtFs.js";import"./cjs-CH5Rj0g8.js";import"./main-U5Goe76G.js";import"./useNonce-CS26E0hA.js";import{t as Dt}from"./createLucideIcon-BCdY6lG5.js";import{a as la,i as da,t as ca}from"./useDependencyPanelTab-Dc4i3G5R.js";import{t as ua}from"./x-ZP5cObgf.js";import{f as ha,p as ga}from"./download-B6duieQs.js";import{t as fa}from"./ellipsis-vertical-J1F7_WS9.js";import{t as pa}from"./settings-OBbrbhij.js";import{t as ma}from"./square-function-B6mgCeFJ.js";import{t as ya}from"./workflow-BphwJiK3.js";import"./dist-MyTWYTLd.js";import"./dist-LUpffRIq.js";import"./dist-PzrizfuL.js";import"./dist-BNkRH34W.js";import"./dist-maX8rbyb.js";import"./session-BOFn9QrD.js";import"./Combination-BAEdC-rz.js";import{t as va}from"./tooltip-CMQz28hC.js";import{i as ba,l as xa,r as wa,s as Ea,t as Sa,u as Sn}from"./popover-CH1FzjxU.js";import{n as Ca}from"./useDebounce-7iEVSqwM.js";import{i as Na,t as At}from"./cell-link-D46k36Xe.js";import"./html-to-image-BXhYNOMC.js";import{a as ka,i as Ma,t as Oa}from"./focus-n0WPxeOV.js";import{t as Cn}from"./label-E64zk6_7.js";import"./esm-BqiVbELQ.js";import{b as _a}from"./timer-B6DpdVnC.js";import{a as Bt,c as zt,i as ja,l as Lt,n as Fe,o as Pa,r as Ia,s as Nn,t as Ra,u as ht}from"./src-CvyFXpBy.js";import{r as Da}from"./name-cell-input-BhJdGpGA.js";import"./multi-icon-jM74Rbvg.js";import{n as Aa,t as kn}from"./common-B9j0Q2gP.js";import{r as Ba}from"./panel-context-HhzMRtZm.js";var za=Dt("arrow-right-from-line",[["path",{d:"M3 5v14",key:"1nt18q"}],["path",{d:"M21 12H7",key:"13ipq5"}],["path",{d:"m15 18 6-6-6-6",key:"6tx3qv"}]]),La=Dt("arrow-right-to-line",[["path",{d:"M17 12H3",key:"8awo09"}],["path",{d:"m11 18 6-6-6-6",key:"8c2y43"}],["path",{d:"M21 5v14",key:"nzette"}]]),$a=Dt("map-pin",[["path",{d:"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",key:"1r0f0z"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]]);function he(t){if(typeof t=="string"||typeof t=="number")return""+t;let e="";if(Array.isArray(t))for(let n=0,o;n<t.length;n++)(o=he(t[n]))!==""&&(e+=(e&&" ")+o);else for(let n in t)t[n]&&(e+=(e&&" ")+n);return e}var v=_t(Zr(),1),Ta=_t(ha(),1),{useDebugValue:Ha}=v.default,{useSyncExternalStoreWithSelector:Va}=Ta.default,Fa=t=>t;function Mn(t,e=Fa,n){let o=Va(t.subscribe,t.getState,t.getServerState||t.getInitialState,e,n);return Ha(o),o}var On=(t,e)=>{let n=ga(t),o=(i,d=e)=>Mn(n,i,d);return Object.assign(o,n),o},Xa=(t,e)=>t?On(t,e):On;function ue(t,e){if(Object.is(t,e))return!0;if(typeof t!="object"||!t||typeof e!="object"||!e)return!1;if(t instanceof Map&&e instanceof Map){if(t.size!==e.size)return!1;for(let[o,i]of t)if(!Object.is(i,e.get(o)))return!1;return!0}if(t instanceof Set&&e instanceof Set){if(t.size!==e.size)return!1;for(let o of t)if(!e.has(o))return!1;return!0}let n=Object.keys(t);if(n.length!==Object.keys(e).length)return!1;for(let o of n)if(!Object.prototype.hasOwnProperty.call(e,o)||!Object.is(t[o],e[o]))return!1;return!0}var gt=t=>()=>t;function $t(t,{sourceEvent:e,subject:n,target:o,identifier:i,active:d,x:a,y:l,dx:s,dy:c,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:o,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:d,enumerable:!0,configurable:!0},x:{value:a,enumerable:!0,configurable:!0},y:{value:l,enumerable:!0,configurable:!0},dx:{value:s,enumerable:!0,configurable:!0},dy:{value:c,enumerable:!0,configurable:!0},_:{value:u}})}$t.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};function Wa(t){return!t.ctrlKey&&!t.button}function Ya(){return this.parentNode}function Za(t,e){return e??{x:t.x,y:t.y}}function Ka(){return navigator.maxTouchPoints||"ontouchstart"in this}function Ga(){var t=Wa,e=Ya,n=Za,o=Ka,i={},d=_a("start","drag","end"),a=0,l,s,c,u,r=0;function g(m){m.on("mousedown.drag",h).filter(o).on("touchstart.drag",y).on("touchmove.drag",x,Pa).on("touchend.drag touchcancel.drag",b).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function h(m,C){if(!(u||!t.call(this,m,C))){var M=N(this,e.call(this,m,C),m,C,"mouse");M&&(ht(m.view).on("mousemove.drag",p,Nn).on("mouseup.drag",f,Nn),Ia(m.view),zt(m),c=!1,l=m.clientX,s=m.clientY,M("start",m))}}function p(m){if(Bt(m),!c){var C=m.clientX-l,M=m.clientY-s;c=C*C+M*M>r}i.mouse("drag",m)}function f(m){ht(m.view).on("mousemove.drag mouseup.drag",null),ja(m.view,c),Bt(m),i.mouse("end",m)}function y(m,C){if(t.call(this,m,C)){var M=m.changedTouches,_=e.call(this,m,C),P=M.length,j,w;for(j=0;j<P;++j)(w=N(this,_,m,C,M[j].identifier,M[j]))&&(zt(m),w("start",m,M[j]))}}function x(m){var C=m.changedTouches,M=C.length,_,P;for(_=0;_<M;++_)(P=i[C[_].identifier])&&(Bt(m),P("drag",m,C[_]))}function b(m){var C=m.changedTouches,M=C.length,_,P;for(u&&clearTimeout(u),u=setTimeout(function(){u=null},500),_=0;_<M;++_)(P=i[C[_].identifier])&&(zt(m),P("end",m,C[_]))}function N(m,C,M,_,P,j){var w=d.copy(),E=Lt(j||M,C),O,k,S;if((S=n.call(m,new $t("beforestart",{sourceEvent:M,target:g,identifier:P,active:a,x:E[0],y:E[1],dx:0,dy:0,dispatch:w}),_))!=null)return O=S.x-E[0]||0,k=S.y-E[1]||0,function D(L,$,X){var R=E,T;switch(L){case"start":i[P]=D,T=a++;break;case"end":delete i[P],--a;case"drag":E=Lt(X||$,C),T=a;break}w.call(L,m,new $t(L,{sourceEvent:$,subject:S,target:g,identifier:P,active:T,x:E[0]+O,y:E[1]+k,dx:E[0]-R[0],dy:E[1]-R[1],dispatch:w}),_)}}return g.filter=function(m){return arguments.length?(t=typeof m=="function"?m:gt(!!m),g):t},g.container=function(m){return arguments.length?(e=typeof m=="function"?m:gt(m),g):e},g.subject=function(m){return arguments.length?(n=typeof m=="function"?m:gt(m),g):n},g.touchable=function(m){return arguments.length?(o=typeof m=="function"?m:gt(!!m),g):o},g.on=function(){var m=d.on.apply(d,arguments);return m===d?g:m},g.clickDistance=function(m){return arguments.length?(r=(m=+m)*m,g):Math.sqrt(r)},g}ra();var ft=(0,v.createContext)(null),Ua=ft.Provider,xe={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.`},_n=xe.error001();function ne(t,e){let n=(0,v.useContext)(ft);if(n===null)throw Error(_n);return Mn(n,t,e)}var le=()=>{let t=(0,v.useContext)(ft);if(t===null)throw Error(_n);return(0,v.useMemo)(()=>({getState:t.getState,setState:t.setState,subscribe:t.subscribe,destroy:t.destroy}),[t])},qa=t=>t.userSelectionActive?"none":"all";function pt({position:t,children:e,className:n,style:o,...i}){let d=ne(qa),a=`${t}`.split("-");return v.createElement("div",{className:he(["react-flow__panel",n,...a]),style:{...o,pointerEvents:d},...i},e)}function Qa({proOptions:t,position:e="bottom-right"}){return t!=null&&t.hideAttribution?null:v.createElement(pt,{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"},v.createElement("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution"},"React Flow"))}var Ja=(0,v.memo)(({x:t,y:e,label:n,labelStyle:o={},labelShowBg:i=!0,labelBgStyle:d={},labelBgPadding:a=[2,4],labelBgBorderRadius:l=2,children:s,className:c,...u})=>{let r=(0,v.useRef)(null),[g,h]=(0,v.useState)({x:0,y:0,width:0,height:0}),p=he(["react-flow__edge-textwrapper",c]);return(0,v.useEffect)(()=>{if(r.current){let f=r.current.getBBox();h({x:f.x,y:f.y,width:f.width,height:f.height})}},[n]),n===void 0||!n?null:v.createElement("g",{transform:`translate(${t-g.width/2} ${e-g.height/2})`,className:p,visibility:g.width?"visible":"hidden",...u},i&&v.createElement("rect",{width:g.width+2*a[0],x:-a[0],y:-a[1],height:g.height+2*a[1],className:"react-flow__edge-textbg",style:d,rx:l,ry:l}),v.createElement("text",{className:"react-flow__edge-text",y:g.height/2,dy:"0.3em",ref:r,style:o},n),s)}),Tt=t=>({width:t.offsetWidth,height:t.offsetHeight}),Xe=(t,e=0,n=1)=>Math.min(Math.max(t,e),n),Ht=(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])}),jn=(t,e,n)=>t<e?Xe(Math.abs(t-e),1,50)/50:t>n?-Xe(Math.abs(t-n),1,50)/50:0,Pn=(t,e)=>[jn(t.x,35,e.width-35)*20,jn(t.y,35,e.height-35)*20],In=t=>{var e;return((e=t.getRootNode)==null?void 0:e.call(t))||(window==null?void 0:window.document)},ei=(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)}),Vt=({x:t,y:e,width:n,height:o})=>({x:t,y:e,x2:t+n,y2:e+o}),ti=({x:t,y:e,x2:n,y2:o})=>({x:t,y:e,width:n-t,height:o-e}),Rn=t=>({...t.positionAbsolute||{x:0,y:0},width:t.width||0,height:t.height||0}),Ft=(t,e)=>{let n=Math.max(0,Math.min(t.x+t.width,e.x+e.width)-Math.max(t.x,e.x)),o=Math.max(0,Math.min(t.y+t.height,e.y+e.height)-Math.max(t.y,e.y));return Math.ceil(n*o)},ni=t=>me(t.width)&&me(t.height)&&me(t.x)&&me(t.y),me=t=>!isNaN(t)&&isFinite(t),re=Symbol.for("internals"),Dn=["Enter"," ","Escape"],oi=(t,e)=>{},ri=t=>"nativeEvent"in t;function Xt(t){var n,o,i;let e=((i=(o=(n=ri(t)?t.nativeEvent:t).composedPath)==null?void 0:o.call(n))==null?void 0:i[0])||t.target;return["INPUT","SELECT","TEXTAREA"].includes(e==null?void 0:e.nodeName)||(e==null?void 0:e.hasAttribute("contenteditable"))||!!(e!=null&&e.closest(".nokey"))}var An=t=>"clientX"in t,Se=(t,e)=>{var d,a;let n=An(t),o=n?t.clientX:(d=t.touches)==null?void 0:d[0].clientX,i=n?t.clientY:(a=t.touches)==null?void 0:a[0].clientY;return{x:o-((e==null?void 0:e.left)??0),y:i-((e==null?void 0:e.top)??0)}},mt=()=>{var t;return typeof navigator<"u"&&((t=navigator==null?void 0:navigator.userAgent)==null?void 0:t.indexOf("Mac"))>=0},at=({id:t,path:e,labelX:n,labelY:o,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:r,markerStart:g,interactionWidth:h=20})=>v.createElement(v.Fragment,null,v.createElement("path",{id:t,style:u,d:e,fill:"none",className:"react-flow__edge-path",markerEnd:r,markerStart:g}),h&&v.createElement("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:h,className:"react-flow__edge-interaction"}),i&&me(n)&&me(o)?v.createElement(Ja,{x:n,y:o,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c}):null);at.displayName="BaseEdge";function it(t,e,n){return n===void 0?n:o=>{let i=e().edges.find(d=>d.id===t);i&&n(o,{...i})}}function Bn({sourceX:t,sourceY:e,targetX:n,targetY:o}){let i=Math.abs(n-t)/2,d=n<t?n+i:n-i,a=Math.abs(o-e)/2;return[d,o<e?o+a:o-a,i,a]}function zn({sourceX:t,sourceY:e,targetX:n,targetY:o,sourceControlX:i,sourceControlY:d,targetControlX:a,targetControlY:l}){let s=t*.125+i*.375+a*.375+n*.125,c=e*.125+d*.375+l*.375+o*.125;return[s,c,Math.abs(s-t),Math.abs(c-e)]}var We;(function(t){t.Strict="strict",t.Loose="loose"})(We||(We={}));var Ye;(function(t){t.Free="free",t.Vertical="vertical",t.Horizontal="horizontal"})(Ye||(Ye={}));var yt;(function(t){t.Partial="partial",t.Full="full"})(yt||(yt={}));var Ae;(function(t){t.Bezier="default",t.Straight="straight",t.Step="step",t.SmoothStep="smoothstep",t.SimpleBezier="simplebezier"})(Ae||(Ae={}));var vt;(function(t){t.Arrow="arrow",t.ArrowClosed="arrowclosed"})(vt||(vt={}));var W;(function(t){t.Left="left",t.Top="top",t.Right="right",t.Bottom="bottom"})(W||(W={}));function Ln({pos:t,x1:e,y1:n,x2:o,y2:i}){return t===W.Left||t===W.Right?[.5*(e+o),n]:[e,.5*(n+i)]}function $n({sourceX:t,sourceY:e,sourcePosition:n=W.Bottom,targetX:o,targetY:i,targetPosition:d=W.Top}){let[a,l]=Ln({pos:n,x1:t,y1:e,x2:o,y2:i}),[s,c]=Ln({pos:d,x1:o,y1:i,x2:t,y2:e}),[u,r,g,h]=zn({sourceX:t,sourceY:e,targetX:o,targetY:i,sourceControlX:a,sourceControlY:l,targetControlX:s,targetControlY:c});return[`M${t},${e} C${a},${l} ${s},${c} ${o},${i}`,u,r,g,h]}var Wt=(0,v.memo)(({sourceX:t,sourceY:e,targetX:n,targetY:o,sourcePosition:i=W.Bottom,targetPosition:d=W.Top,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:r,style:g,markerEnd:h,markerStart:p,interactionWidth:f})=>{let[y,x,b]=$n({sourceX:t,sourceY:e,sourcePosition:i,targetX:n,targetY:o,targetPosition:d});return v.createElement(at,{path:y,labelX:x,labelY:b,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:r,style:g,markerEnd:h,markerStart:p,interactionWidth:f})});Wt.displayName="SimpleBezierEdge";var Tn={[W.Left]:{x:-1,y:0},[W.Right]:{x:1,y:0},[W.Top]:{x:0,y:-1},[W.Bottom]:{x:0,y:1}},ai=({source:t,sourcePosition:e=W.Bottom,target:n})=>e===W.Left||e===W.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},Hn=(t,e)=>Math.sqrt((e.x-t.x)**2+(e.y-t.y)**2);function ii({source:t,sourcePosition:e=W.Bottom,target:n,targetPosition:o=W.Top,center:i,offset:d}){let a=Tn[e],l=Tn[o],s={x:t.x+a.x*d,y:t.y+a.y*d},c={x:n.x+l.x*d,y:n.y+l.y*d},u=ai({source:s,sourcePosition:e,target:c}),r=u.x===0?"y":"x",g=u[r],h=[],p,f,y={x:0,y:0},x={x:0,y:0},[b,N,m,C]=Bn({sourceX:t.x,sourceY:t.y,targetX:n.x,targetY:n.y});if(a[r]*l[r]===-1){p=i.x??b,f=i.y??N;let M=[{x:p,y:s.y},{x:p,y:c.y}],_=[{x:s.x,y:f},{x:c.x,y:f}];h=a[r]===g?r==="x"?M:_:r==="x"?_:M}else{let M=[{x:s.x,y:c.y}],_=[{x:c.x,y:s.y}];if(h=r==="x"?a.x===g?_:M:a.y===g?M:_,e===o){let w=Math.abs(t[r]-n[r]);if(w<=d){let E=Math.min(d-1,d-w);a[r]===g?y[r]=(s[r]>t[r]?-1:1)*E:x[r]=(c[r]>n[r]?-1:1)*E}}if(e!==o){let w=r==="x"?"y":"x",E=a[r]===l[w],O=s[w]>c[w],k=s[w]<c[w];(a[r]===1&&(!E&&O||E&&k)||a[r]!==1&&(!E&&k||E&&O))&&(h=r==="x"?M:_)}let P={x:s.x+y.x,y:s.y+y.y},j={x:c.x+x.x,y:c.y+x.y};Math.max(Math.abs(P.x-h[0].x),Math.abs(j.x-h[0].x))>=Math.max(Math.abs(P.y-h[0].y),Math.abs(j.y-h[0].y))?(p=(P.x+j.x)/2,f=h[0].y):(p=h[0].x,f=(P.y+j.y)/2)}return[[t,{x:s.x+y.x,y:s.y+y.y},...h,{x:c.x+x.x,y:c.y+x.y},n],p,f,m,C]}function si(t,e,n,o){let i=Math.min(Hn(t,e)/2,Hn(e,n)/2,o),{x:d,y:a}=e;if(t.x===d&&d===n.x||t.y===a&&a===n.y)return`L${d} ${a}`;if(t.y===a){let s=t.x<n.x?-1:1,c=t.y<n.y?1:-1;return`L ${d+i*s},${a}Q ${d},${a} ${d},${a+i*c}`}let l=t.x<n.x?1:-1;return`L ${d},${a+i*(t.y<n.y?-1:1)}Q ${d},${a} ${d+i*l},${a}`}function Yt({sourceX:t,sourceY:e,sourcePosition:n=W.Bottom,targetX:o,targetY:i,targetPosition:d=W.Top,borderRadius:a=5,centerX:l,centerY:s,offset:c=20}){let[u,r,g,h,p]=ii({source:{x:t,y:e},sourcePosition:n,target:{x:o,y:i},targetPosition:d,center:{x:l,y:s},offset:c});return[u.reduce((f,y,x)=>{let b="";return b=x>0&&x<u.length-1?si(u[x-1],y,u[x+1],a):`${x===0?"M":"L"}${y.x} ${y.y}`,f+=b,f},""),r,g,h,p]}var bt=(0,v.memo)(({sourceX:t,sourceY:e,targetX:n,targetY:o,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,sourcePosition:r=W.Bottom,targetPosition:g=W.Top,markerEnd:h,markerStart:p,pathOptions:f,interactionWidth:y})=>{let[x,b,N]=Yt({sourceX:t,sourceY:e,sourcePosition:r,targetX:n,targetY:o,targetPosition:g,borderRadius:f==null?void 0:f.borderRadius,offset:f==null?void 0:f.offset});return v.createElement(at,{path:x,labelX:b,labelY:N,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:h,markerStart:p,interactionWidth:y})});bt.displayName="SmoothStepEdge";var Zt=(0,v.memo)(t=>{var e;return v.createElement(bt,{...t,pathOptions:(0,v.useMemo)(()=>{var n;return{borderRadius:0,offset:(n=t.pathOptions)==null?void 0:n.offset}},[(e=t.pathOptions)==null?void 0:e.offset])})});Zt.displayName="StepEdge";function li({sourceX:t,sourceY:e,targetX:n,targetY:o}){let[i,d,a,l]=Bn({sourceX:t,sourceY:e,targetX:n,targetY:o});return[`M ${t},${e}L ${n},${o}`,i,d,a,l]}var Kt=(0,v.memo)(({sourceX:t,sourceY:e,targetX:n,targetY:o,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:r,markerStart:g,interactionWidth:h})=>{let[p,f,y]=li({sourceX:t,sourceY:e,targetX:n,targetY:o});return v.createElement(at,{path:p,labelX:f,labelY:y,label:i,labelStyle:d,labelShowBg:a,labelBgStyle:l,labelBgPadding:s,labelBgBorderRadius:c,style:u,markerEnd:r,markerStart:g,interactionWidth:h})});Kt.displayName="StraightEdge";function xt(t,e){return t>=0?.5*t:e*25*Math.sqrt(-t)}function Vn({pos:t,x1:e,y1:n,x2:o,y2:i,c:d}){switch(t){case W.Left:return[e-xt(e-o,d),n];case W.Right:return[e+xt(o-e,d),n];case W.Top:return[e,n-xt(n-i,d)];case W.Bottom:return[e,n+xt(i-n,d)]}}function Fn({sourceX:t,sourceY:e,sourcePosition:n=W.Bottom,targetX:o,targetY:i,targetPosition:d=W.Top,curvature:a=.25}){let[l,s]=Vn({pos:n,x1:t,y1:e,x2:o,y2:i,c:a}),[c,u]=Vn({pos:d,x1:o,y1:i,x2:t,y2:e,c:a}),[r,g,h,p]=zn({sourceX:t,sourceY:e,targetX:o,targetY:i,sourceControlX:l,sourceControlY:s,targetControlX:c,targetControlY:u});return[`M${t},${e} C${l},${s} ${c},${u} ${o},${i}`,r,g,h,p]}var wt=(0,v.memo)(({sourceX:t,sourceY:e,targetX:n,targetY:o,sourcePosition:i=W.Bottom,targetPosition:d=W.Top,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:r,style:g,markerEnd:h,markerStart:p,pathOptions:f,interactionWidth:y})=>{let[x,b,N]=Fn({sourceX:t,sourceY:e,sourcePosition:i,targetX:n,targetY:o,targetPosition:d,curvature:f==null?void 0:f.curvature});return v.createElement(at,{path:x,labelX:b,labelY:N,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:r,style:g,markerEnd:h,markerStart:p,interactionWidth:y})});wt.displayName="BezierEdge";var Gt=(0,v.createContext)(null),di=Gt.Provider;Gt.Consumer;var ci=()=>(0,v.useContext)(Gt),ui=t=>"id"in t&&"source"in t&&"target"in t,hi=({source:t,sourceHandle:e,target:n,targetHandle:o})=>`reactflow__edge-${t}${e||""}-${n}${o||""}`,Ut=(t,e)=>t===void 0?"":typeof t=="string"?t:`${e?`${e}__`:""}${Object.keys(t).sort().map(n=>`${n}=${t[n]}`).join("&")}`,gi=(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)),fi=(t,e)=>{if(!t.source||!t.target)return xe.error006(),e;let n;return n=ui(t)?{...t}:{...t,id:hi(t)},gi(n,e)?e:e.concat(n)},qt=({x:t,y:e},[n,o,i],d,[a,l])=>{let s={x:(t-n)/i,y:(e-o)/i};return d?{x:a*Math.round(s.x/a),y:l*Math.round(s.y/l)}:s},Xn=({x:t,y:e},[n,o,i])=>({x:t*i+n,y:e*i+o}),Ze=(t,e=[0,0])=>{if(!t)return{x:0,y:0,positionAbsolute:{x:0,y:0}};let n=(t.width??0)*e[0],o=(t.height??0)*e[1],i={x:t.position.x-n,y:t.position.y-o};return{...i,positionAbsolute:t.positionAbsolute?{x:t.positionAbsolute.x-n,y:t.positionAbsolute.y-o}:i}},Qt=(t,e=[0,0])=>t.length===0?{x:0,y:0,width:0,height:0}:ti(t.reduce((n,o)=>{let{x:i,y:d}=Ze(o,e).positionAbsolute;return ei(n,Vt({x:i,y:d,width:o.width||0,height:o.height||0}))},{x:1/0,y:1/0,x2:-1/0,y2:-1/0})),Wn=(t,e,[n,o,i]=[0,0,1],d=!1,a=!1,l=[0,0])=>{let s={x:(e.x-n)/i,y:(e.y-o)/i,width:e.width/i,height:e.height/i},c=[];return t.forEach(u=>{let{width:r,height:g,selectable:h=!0,hidden:p=!1}=u;if(a&&!h||p)return!1;let{positionAbsolute:f}=Ze(u,l),y=Ft(s,{x:f.x,y:f.y,width:r||0,height:g||0}),x=r===void 0||g===void 0||r===null||g===null,b=d&&y>0,N=(r||0)*(g||0);(x||b||y>=N||u.dragging)&&c.push(u)}),c},Yn=(t,e)=>{let n=t.map(o=>o.id);return e.filter(o=>n.includes(o.source)||n.includes(o.target))},Zn=(t,e,n,o,i,d=.1)=>{let a=e/(t.width*(1+d)),l=n/(t.height*(1+d)),s=Xe(Math.min(a,l),o,i),c=t.x+t.width/2,u=t.y+t.height/2;return{x:e/2-c*s,y:n/2-u*s,zoom:s}},Be=(t,e=0)=>t.transition().duration(e);function Kn(t,e,n,o){return(e[n]||[]).reduce((i,d)=>{var a,l;return`${t.id}-${d.id}-${n}`!==o&&i.push({id:d.id||null,type:n,nodeId:t.id,x:(((a=t.positionAbsolute)==null?void 0:a.x)??0)+d.x+d.width/2,y:(((l=t.positionAbsolute)==null?void 0:l.y)??0)+d.y+d.height/2}),i},[])}function pi(t,e,n,o,i,d){let{x:a,y:l}=Se(t),s=e.elementsFromPoint(a,l).find(h=>h.classList.contains("react-flow__handle"));if(s){let h=s.getAttribute("data-nodeid");if(h){let p=Jt(void 0,s),f=s.getAttribute("data-handleid"),y=d({nodeId:h,id:f,type:p});if(y){let x=i.find(b=>b.nodeId===h&&b.type===p&&b.id===f);return{handle:{id:f,type:p,nodeId:h,x:(x==null?void 0:x.x)||n.x,y:(x==null?void 0:x.y)||n.y},validHandleResult:y}}}}let c=[],u=1/0;if(i.forEach(h=>{let p=Math.sqrt((h.x-n.x)**2+(h.y-n.y)**2);if(p<=o){let f=d(h);p<=u&&(p<u?c=[{handle:h,validHandleResult:f}]:p===u&&c.push({handle:h,validHandleResult:f}),u=p)}}),!c.length)return{handle:null,validHandleResult:Gn()};if(c.length===1)return c[0];let r=c.some(({validHandleResult:h})=>h.isValid),g=c.some(({handle:h})=>h.type==="target");return c.find(({handle:h,validHandleResult:p})=>g?h.type==="target":r?p.isValid:!0)||c[0]}var mi={source:null,target:null,sourceHandle:null,targetHandle:null},Gn=()=>({handleDomNode:null,isValid:!1,connection:mi,endHandle:null});function Un(t,e,n,o,i,d,a){let l=i==="target",s=a.querySelector(`.react-flow__handle[data-id="${t==null?void 0:t.nodeId}-${t==null?void 0:t.id}-${t==null?void 0:t.type}"]`),c={...Gn(),handleDomNode:s};if(s){let u=Jt(void 0,s),r=s.getAttribute("data-nodeid"),g=s.getAttribute("data-handleid"),h=s.classList.contains("connectable"),p=s.classList.contains("connectableend"),f={source:l?r:n,sourceHandle:l?g:o,target:l?n:r,targetHandle:l?o:g};c.connection=f,h&&p&&(e===We.Strict?l&&u==="source"||!l&&u==="target":r!==n||g!==o)&&(c.endHandle={nodeId:r,handleId:g,type:u},c.isValid=d(f))}return c}function yi({nodes:t,nodeId:e,handleId:n,handleType:o}){return t.reduce((i,d)=>{if(d[re]){let{handleBounds:a}=d[re],l=[],s=[];a&&(l=Kn(d,a,"source",`${e}-${n}-${o}`),s=Kn(d,a,"target",`${e}-${n}-${o}`)),i.push(...l,...s)}return i},[])}function Jt(t,e){return t||(e!=null&&e.classList.contains("target")?"target":e!=null&&e.classList.contains("source")?"source":null)}function en(t){t==null||t.classList.remove("valid","connecting","react-flow__handle-valid","react-flow__handle-connecting")}function vi(t,e){let n=null;return e?n="valid":t&&!e&&(n="invalid"),n}function qn({event:t,handleId:e,nodeId:n,onConnect:o,isTarget:i,getState:d,setState:a,isValidConnection:l,edgeUpdaterType:s,onReconnectEnd:c}){let u=In(t.target),{connectionMode:r,domNode:g,autoPanOnConnect:h,connectionRadius:p,onConnectStart:f,panBy:y,getNodes:x,cancelConnection:b}=d(),N=0,m,{x:C,y:M}=Se(t),_=u==null?void 0:u.elementFromPoint(C,M),P=Jt(s,_),j=g==null?void 0:g.getBoundingClientRect();if(!j||!P)return;let w,E=Se(t,j),O=!1,k=null,S=!1,D=null,L=yi({nodes:x(),nodeId:n,handleId:e,handleType:P}),$=()=>{if(!h)return;let[T,V]=Pn(E,j);y({x:T,y:V}),N=requestAnimationFrame($)};a({connectionPosition:E,connectionStatus:null,connectionNodeId:n,connectionHandleId:e,connectionHandleType:P,connectionStartHandle:{nodeId:n,handleId:e,type:P},connectionEndHandle:null}),f==null||f(t,{nodeId:n,handleId:e,handleType:P});function X(T){let{transform:V}=d();E=Se(T,j);let{handle:F,validHandleResult:Z}=pi(T,u,qt(E,V,!1,[1,1]),p,L,U=>Un(U,r,n,e,i?"target":"source",l,u));if(m=F,O||(O=($(),!0)),D=Z.handleDomNode,k=Z.connection,S=Z.isValid,a({connectionPosition:m&&S?Xn({x:m.x,y:m.y},V):E,connectionStatus:vi(!!m,S),connectionEndHandle:Z.endHandle}),!m&&!S&&!D)return en(w);k.source!==k.target&&D&&(en(w),w=D,D.classList.add("connecting","react-flow__handle-connecting"),D.classList.toggle("valid",S),D.classList.toggle("react-flow__handle-valid",S))}function R(T){var V,F;(m||D)&&k&&S&&(o==null||o(k)),(F=(V=d()).onConnectEnd)==null||F.call(V,T),s&&(c==null||c(T)),en(w),b(),cancelAnimationFrame(N),O=!1,S=!1,k=null,D=null,u.removeEventListener("mousemove",X),u.removeEventListener("mouseup",R),u.removeEventListener("touchmove",X),u.removeEventListener("touchend",R)}u.addEventListener("mousemove",X),u.addEventListener("mouseup",R),u.addEventListener("touchmove",X),u.addEventListener("touchend",R)}var Qn=()=>!0,bi=t=>({connectionStartHandle:t.connectionStartHandle,connectOnClick:t.connectOnClick,noPanClassName:t.noPanClassName}),xi=(t,e,n)=>o=>{let{connectionStartHandle:i,connectionEndHandle:d,connectionClickStartHandle:a}=o;return{connecting:(i==null?void 0:i.nodeId)===t&&(i==null?void 0:i.handleId)===e&&(i==null?void 0:i.type)===n||(d==null?void 0:d.nodeId)===t&&(d==null?void 0:d.handleId)===e&&(d==null?void 0:d.type)===n,clickConnecting:(a==null?void 0:a.nodeId)===t&&(a==null?void 0:a.handleId)===e&&(a==null?void 0:a.type)===n}},Jn=(0,v.forwardRef)(({type:t="source",position:e=W.Top,isValidConnection:n,isConnectable:o=!0,isConnectableStart:i=!0,isConnectableEnd:d=!0,id:a,onConnect:l,children:s,className:c,onMouseDown:u,onTouchStart:r,...g},h)=>{var j,w;let p=a||null,f=t==="target",y=le(),x=ci(),{connectOnClick:b,noPanClassName:N}=ne(bi,ue),{connecting:m,clickConnecting:C}=ne(xi(x,p,t),ue);x||((w=(j=y.getState()).onError)==null||w.call(j,"010",xe.error010()));let M=E=>{let{defaultEdgeOptions:O,onConnect:k,hasDefaultEdges:S}=y.getState(),D={...O,...E};if(S){let{edges:L,setEdges:$}=y.getState();$(fi(D,L))}k==null||k(D),l==null||l(D)},_=E=>{if(!x)return;let O=An(E);i&&(O&&E.button===0||!O)&&qn({event:E,handleId:p,nodeId:x,onConnect:M,isTarget:f,getState:y.getState,setState:y.setState,isValidConnection:n||y.getState().isValidConnection||Qn}),O?u==null||u(E):r==null||r(E)},P=E=>{let{onClickConnectStart:O,onClickConnectEnd:k,connectionClickStartHandle:S,connectionMode:D,isValidConnection:L}=y.getState();if(!x||!S&&!i)return;if(!S){O==null||O(E,{nodeId:x,handleId:p,handleType:t}),y.setState({connectionClickStartHandle:{nodeId:x,type:t,handleId:p}});return}let $=In(E.target),X=n||L||Qn,{connection:R,isValid:T}=Un({nodeId:x,id:p,type:t},D,S.nodeId,S.handleId||null,S.type,X,$);T&&M(R),k==null||k(E),y.setState({connectionClickStartHandle:null})};return v.createElement("div",{"data-handleid":p,"data-nodeid":x,"data-handlepos":e,"data-id":`${x}-${p}-${t}`,className:he(["react-flow__handle",`react-flow__handle-${e}`,"nodrag",N,c,{source:!f,target:f,connectable:o,connectablestart:i,connectableend:d,connecting:C,connectionindicator:o&&(i&&!m||d&&m)}]),onMouseDown:_,onTouchStart:_,onClick:b?P:void 0,ref:h,...g},s)});Jn.displayName="Handle";var Ce=(0,v.memo)(Jn),eo=({data:t,isConnectable:e,targetPosition:n=W.Top,sourcePosition:o=W.Bottom})=>v.createElement(v.Fragment,null,v.createElement(Ce,{type:"target",position:n,isConnectable:e}),t==null?void 0:t.label,v.createElement(Ce,{type:"source",position:o,isConnectable:e}));eo.displayName="DefaultNode";var tn=(0,v.memo)(eo),to=({data:t,isConnectable:e,sourcePosition:n=W.Bottom})=>v.createElement(v.Fragment,null,t==null?void 0:t.label,v.createElement(Ce,{type:"source",position:n,isConnectable:e}));to.displayName="InputNode";var no=(0,v.memo)(to),oo=({data:t,isConnectable:e,targetPosition:n=W.Top})=>v.createElement(v.Fragment,null,v.createElement(Ce,{type:"target",position:n,isConnectable:e}),t==null?void 0:t.label);oo.displayName="OutputNode";var ro=(0,v.memo)(oo),nn=()=>null;nn.displayName="GroupNode";var wi=t=>({selectedNodes:t.getNodes().filter(e=>e.selected),selectedEdges:t.edges.filter(e=>e.selected).map(e=>({...e}))}),Et=t=>t.id;function Ei(t,e){return ue(t.selectedNodes.map(Et),e.selectedNodes.map(Et))&&ue(t.selectedEdges.map(Et),e.selectedEdges.map(Et))}var ao=(0,v.memo)(({onSelectionChange:t})=>{let e=le(),{selectedNodes:n,selectedEdges:o}=ne(wi,Ei);return(0,v.useEffect)(()=>{let i={nodes:n,edges:o};t==null||t(i),e.getState().onSelectionChange.forEach(d=>d(i))},[n,o,t]),null});ao.displayName="SelectionListener";var Si=t=>!!t.onSelectionChange;function Ci({onSelectionChange:t}){let e=ne(Si);return t||e?v.createElement(ao,{onSelectionChange:t}):null}var Ni=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 Ke(t,e){(0,v.useEffect)(()=>{t!==void 0&&e(t)},[t])}function Q(t,e,n){(0,v.useEffect)(()=>{e!==void 0&&n({[t]:e})},[e])}var ki=({nodes:t,edges:e,defaultNodes:n,defaultEdges:o,onConnect:i,onConnectStart:d,onConnectEnd:a,onClickConnectStart:l,onClickConnectEnd:s,nodesDraggable:c,nodesConnectable:u,nodesFocusable:r,edgesFocusable:g,edgesUpdatable:h,elevateNodesOnSelect:p,minZoom:f,maxZoom:y,nodeExtent:x,onNodesChange:b,onEdgesChange:N,elementsSelectable:m,connectionMode:C,snapGrid:M,snapToGrid:_,translateExtent:P,connectOnClick:j,defaultEdgeOptions:w,fitView:E,fitViewOptions:O,onNodesDelete:k,onEdgesDelete:S,onNodeDrag:D,onNodeDragStart:L,onNodeDragStop:$,onSelectionDrag:X,onSelectionDragStart:R,onSelectionDragStop:T,noPanClassName:V,nodeOrigin:F,rfId:Z,autoPanOnConnect:U,autoPanOnNodeDrag:I,onError:A,connectionRadius:z,isValidConnection:H,nodeDragThreshold:Y})=>{let{setNodes:G,setEdges:ee,setDefaultNodesAndEdges:ae,setMinZoom:ge,setMaxZoom:oe,setTranslateExtent:J,setNodeExtent:de,reset:te}=ne(Ni,ue),K=le();return(0,v.useEffect)(()=>{let fe=o==null?void 0:o.map(Me=>({...Me,...w}));return ae(n,fe),()=>{te()}},[]),Q("defaultEdgeOptions",w,K.setState),Q("connectionMode",C,K.setState),Q("onConnect",i,K.setState),Q("onConnectStart",d,K.setState),Q("onConnectEnd",a,K.setState),Q("onClickConnectStart",l,K.setState),Q("onClickConnectEnd",s,K.setState),Q("nodesDraggable",c,K.setState),Q("nodesConnectable",u,K.setState),Q("nodesFocusable",r,K.setState),Q("edgesFocusable",g,K.setState),Q("edgesUpdatable",h,K.setState),Q("elementsSelectable",m,K.setState),Q("elevateNodesOnSelect",p,K.setState),Q("snapToGrid",_,K.setState),Q("snapGrid",M,K.setState),Q("onNodesChange",b,K.setState),Q("onEdgesChange",N,K.setState),Q("connectOnClick",j,K.setState),Q("fitViewOnInit",E,K.setState),Q("fitViewOnInitOptions",O,K.setState),Q("onNodesDelete",k,K.setState),Q("onEdgesDelete",S,K.setState),Q("onNodeDrag",D,K.setState),Q("onNodeDragStart",L,K.setState),Q("onNodeDragStop",$,K.setState),Q("onSelectionDrag",X,K.setState),Q("onSelectionDragStart",R,K.setState),Q("onSelectionDragStop",T,K.setState),Q("noPanClassName",V,K.setState),Q("nodeOrigin",F,K.setState),Q("rfId",Z,K.setState),Q("autoPanOnConnect",U,K.setState),Q("autoPanOnNodeDrag",I,K.setState),Q("onError",A,K.setState),Q("connectionRadius",z,K.setState),Q("isValidConnection",H,K.setState),Q("nodeDragThreshold",Y,K.setState),Ke(t,G),Ke(e,ee),Ke(f,ge),Ke(y,oe),Ke(P,J),Ke(x,de),null},io={display:"none"},Mi={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},so="react-flow__node-desc",lo="react-flow__edge-desc",Oi="react-flow__aria-live",_i=t=>t.ariaLiveMessage;function ji({rfId:t}){let e=ne(_i);return v.createElement("div",{id:`${Oi}-${t}`,"aria-live":"assertive","aria-atomic":"true",style:Mi},e)}function Pi({rfId:t,disableKeyboardA11y:e}){return v.createElement(v.Fragment,null,v.createElement("div",{id:`${so}-${t}`,style:io},"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."," "),v.createElement("div",{id:`${lo}-${t}`,style:io},"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel."),!e&&v.createElement(ji,{rfId:t}))}var st=(t=null,e={actInsideInputWithModifier:!0})=>{let[n,o]=(0,v.useState)(!1),i=(0,v.useRef)(!1),d=(0,v.useRef)(new Set([])),[a,l]=(0,v.useMemo)(()=>{if(t!==null){let s=(Array.isArray(t)?t:[t]).filter(c=>typeof c=="string").map(c=>c.split("+"));return[s,s.reduce((c,u)=>c.concat(...u),[])]}return[[],[]]},[t]);return(0,v.useEffect)(()=>{let s=typeof document<"u"?document:null,c=(e==null?void 0:e.target)||s;if(t!==null){let u=h=>{if(i.current=h.ctrlKey||h.metaKey||h.shiftKey,(!i.current||i.current&&!e.actInsideInputWithModifier)&&Xt(h))return!1;let p=uo(h.code,l);d.current.add(h[p]),co(a,d.current,!1)&&(h.preventDefault(),o(!0))},r=h=>{if((!i.current||i.current&&!e.actInsideInputWithModifier)&&Xt(h))return!1;let p=uo(h.code,l);co(a,d.current,!0)?(o(!1),d.current.clear()):d.current.delete(h[p]),h.key==="Meta"&&d.current.clear(),i.current=!1},g=()=>{d.current.clear(),o(!1)};return c==null||c.addEventListener("keydown",u),c==null||c.addEventListener("keyup",r),window.addEventListener("blur",g),()=>{c==null||c.removeEventListener("keydown",u),c==null||c.removeEventListener("keyup",r),window.removeEventListener("blur",g)}}},[t,o]),n};function co(t,e,n){return t.filter(o=>n||o.length===e.size).some(o=>o.every(i=>e.has(i)))}function uo(t,e){return e.includes(t)?"code":"key"}function ho(t,e,n,o){var l,s;let i=t.parentNode||t.parentId;if(!i)return n;let d=e.get(i),a=Ze(d,o);return ho(d,e,{x:(n.x??0)+a.x,y:(n.y??0)+a.y,z:(((l=d[re])==null?void 0:l.z)??0)>(n.z??0)?((s=d[re])==null?void 0:s.z)??0:n.z??0},o)}function go(t,e,n){t.forEach(o=>{var d;let i=o.parentNode||o.parentId;if(i&&!t.has(i))throw Error(`Parent node ${i} not found`);if(i||n!=null&&n[o.id]){let{x:a,y:l,z:s}=ho(o,t,{...o.position,z:((d=o[re])==null?void 0:d.z)??0},e);o.positionAbsolute={x:a,y:l},o[re].z=s,n!=null&&n[o.id]&&(o[re].isParent=!0)}})}function on(t,e,n,o){let i=new Map,d={},a=o?1e3:0;return t.forEach(l=>{var h;let s=(me(l.zIndex)?l.zIndex:0)+(l.selected?a:0),c=e.get(l.id),u={...l,positionAbsolute:{x:l.position.x,y:l.position.y}},r=l.parentNode||l.parentId;r&&(d[r]=!0);let g=(c==null?void 0:c.type)&&(c==null?void 0:c.type)!==l.type;Object.defineProperty(u,re,{enumerable:!1,value:{handleBounds:g||(h=c==null?void 0:c[re])==null?void 0:h.handleBounds,z:s}}),i.set(l.id,u)}),go(i,n,d),i}function fo(t,e={}){let{getNodes:n,width:o,height:i,minZoom:d,maxZoom:a,d3Zoom:l,d3Selection:s,fitViewOnInitDone:c,fitViewOnInit:u,nodeOrigin:r}=t(),g=e.initial&&!c&&u;if(l&&s&&(g||!e.initial)){let h=n().filter(f=>{var x;let y=e.includeHiddenNodes?f.width&&f.height:!f.hidden;return(x=e.nodes)!=null&&x.length?y&&e.nodes.some(b=>b.id===f.id):y}),p=h.every(f=>f.width&&f.height);if(h.length>0&&p){let{x:f,y,zoom:x}=Zn(Qt(h,r),o,i,e.minZoom??d,e.maxZoom??a,e.padding??.1),b=Fe.translate(f,y).scale(x);return typeof e.duration=="number"&&e.duration>0?l.transform(Be(s,e.duration),b):l.transform(s,b),!0}}return!1}function Ii(t,e){return t.forEach(n=>{let o=e.get(n.id);o&&e.set(o.id,{...o,[re]:o[re],selected:n.selected})}),new Map(e)}function Ri(t,e){return e.map(n=>{let o=t.find(i=>i.id===n.id);return o&&(n.selected=o.selected),n})}function St({changedNodes:t,changedEdges:e,get:n,set:o}){let{nodeInternals:i,edges:d,onNodesChange:a,onEdgesChange:l,hasDefaultNodes:s,hasDefaultEdges:c}=n();t!=null&&t.length&&(s&&o({nodeInternals:Ii(t,i)}),a==null||a(t)),e!=null&&e.length&&(c&&o({edges:Ri(e,d)}),l==null||l(e))}var Ge=()=>{},Di={zoomIn:Ge,zoomOut:Ge,zoomTo:Ge,getZoom:()=>1,setViewport:Ge,getViewport:()=>({x:0,y:0,zoom:1}),fitView:()=>!1,setCenter:Ge,fitBounds:Ge,project:t=>t,screenToFlowPosition:t=>t,flowToScreenPosition:t=>t,viewportInitialized:!1},Ai=t=>({d3Zoom:t.d3Zoom,d3Selection:t.d3Selection}),Bi=()=>{let t=le(),{d3Zoom:e,d3Selection:n}=ne(Ai,ue);return(0,v.useMemo)(()=>n&&e?{zoomIn:o=>e.scaleBy(Be(n,o==null?void 0:o.duration),1.2),zoomOut:o=>e.scaleBy(Be(n,o==null?void 0:o.duration),1/1.2),zoomTo:(o,i)=>e.scaleTo(Be(n,i==null?void 0:i.duration),o),getZoom:()=>t.getState().transform[2],setViewport:(o,i)=>{let[d,a,l]=t.getState().transform,s=Fe.translate(o.x??d,o.y??a).scale(o.zoom??l);e.transform(Be(n,i==null?void 0:i.duration),s)},getViewport:()=>{let[o,i,d]=t.getState().transform;return{x:o,y:i,zoom:d}},fitView:o=>fo(t.getState,o),setCenter:(o,i,d)=>{let{width:a,height:l,maxZoom:s}=t.getState(),c=(d==null?void 0:d.zoom)===void 0?s:d.zoom,u=a/2-o*c,r=l/2-i*c,g=Fe.translate(u,r).scale(c);e.transform(Be(n,d==null?void 0:d.duration),g)},fitBounds:(o,i)=>{let{width:d,height:a,minZoom:l,maxZoom:s}=t.getState(),{x:c,y:u,zoom:r}=Zn(o,d,a,l,s,(i==null?void 0:i.padding)??.1),g=Fe.translate(c,u).scale(r);e.transform(Be(n,i==null?void 0:i.duration),g)},project:o=>{let{transform:i,snapToGrid:d,snapGrid:a}=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"),qt(o,i,d,a)},screenToFlowPosition:o=>{let{transform:i,snapToGrid:d,snapGrid:a,domNode:l}=t.getState();if(!l)return o;let{x:s,y:c}=l.getBoundingClientRect();return qt({x:o.x-s,y:o.y-c},i,d,a)},flowToScreenPosition:o=>{let{transform:i,domNode:d}=t.getState();if(!d)return o;let{x:a,y:l}=d.getBoundingClientRect(),s=Xn(o,i);return{x:s.x+a,y:s.y+l}},viewportInitialized:!0}:Di,[e,n])};function lt(){let t=Bi(),e=le(),n=(0,v.useCallback)(()=>e.getState().getNodes().map(f=>({...f})),[]),o=(0,v.useCallback)(f=>e.getState().nodeInternals.get(f),[]),i=(0,v.useCallback)(()=>{let{edges:f=[]}=e.getState();return f.map(y=>({...y}))},[]),d=(0,v.useCallback)(f=>{let{edges:y=[]}=e.getState();return y.find(x=>x.id===f)},[]),a=(0,v.useCallback)(f=>{let{getNodes:y,setNodes:x,hasDefaultNodes:b,onNodesChange:N}=e.getState(),m=y(),C=typeof f=="function"?f(m):f;b?x(C):N&&N(C.length===0?m.map(M=>({type:"remove",id:M.id})):C.map(M=>({item:M,type:"reset"})))},[]),l=(0,v.useCallback)(f=>{let{edges:y=[],setEdges:x,hasDefaultEdges:b,onEdgesChange:N}=e.getState(),m=typeof f=="function"?f(y):f;b?x(m):N&&N(m.length===0?y.map(C=>({type:"remove",id:C.id})):m.map(C=>({item:C,type:"reset"})))},[]),s=(0,v.useCallback)(f=>{let y=Array.isArray(f)?f:[f],{getNodes:x,setNodes:b,hasDefaultNodes:N,onNodesChange:m}=e.getState();N?b([...x(),...y]):m&&m(y.map(C=>({item:C,type:"add"})))},[]),c=(0,v.useCallback)(f=>{let y=Array.isArray(f)?f:[f],{edges:x=[],setEdges:b,hasDefaultEdges:N,onEdgesChange:m}=e.getState();N?b([...x,...y]):m&&m(y.map(C=>({item:C,type:"add"})))},[]),u=(0,v.useCallback)(()=>{let{getNodes:f,edges:y=[],transform:x}=e.getState(),[b,N,m]=x;return{nodes:f().map(C=>({...C})),edges:y.map(C=>({...C})),viewport:{x:b,y:N,zoom:m}}},[]),r=(0,v.useCallback)(({nodes:f,edges:y})=>{let{nodeInternals:x,getNodes:b,edges:N,hasDefaultNodes:m,hasDefaultEdges:C,onNodesDelete:M,onEdgesDelete:_,onNodesChange:P,onEdgesChange:j}=e.getState(),w=(f||[]).map(D=>D.id),E=(y||[]).map(D=>D.id),O=b().reduce((D,L)=>{let $=L.parentNode||L.parentId,X=!w.includes(L.id)&&$&&D.find(R=>R.id===$);return(typeof L.deletable!="boolean"||L.deletable)&&(w.includes(L.id)||X)&&D.push(L),D},[]),k=N.filter(D=>typeof D.deletable=="boolean"?D.deletable:!0),S=k.filter(D=>E.includes(D.id));if(O||S){let D=Yn(O,k),L=[...S,...D],$=L.reduce((X,R)=>(X.includes(R.id)||X.push(R.id),X),[]);(C||m)&&(C&&e.setState({edges:N.filter(X=>!$.includes(X.id))}),m&&(O.forEach(X=>{x.delete(X.id)}),e.setState({nodeInternals:new Map(x)}))),$.length>0&&(_==null||_(L),j&&j($.map(X=>({id:X,type:"remove"})))),O.length>0&&(M==null||M(O),P&&P(O.map(X=>({id:X.id,type:"remove"}))))}},[]),g=(0,v.useCallback)(f=>{let y=ni(f),x=y?null:e.getState().nodeInternals.get(f.id);return!y&&!x?[null,null,y]:[y?f:Rn(x),x,y]},[]),h=(0,v.useCallback)((f,y=!0,x)=>{let[b,N,m]=g(f);return b?(x||e.getState().getNodes()).filter(C=>{if(!m&&(C.id===N.id||!C.positionAbsolute))return!1;let M=Ft(Rn(C),b);return y&&M>0||M>=b.width*b.height}):[]},[]),p=(0,v.useCallback)((f,y,x=!0)=>{let[b]=g(f);if(!b)return!1;let N=Ft(b,y);return x&&N>0||N>=b.width*b.height},[]);return(0,v.useMemo)(()=>({...t,getNodes:n,getNode:o,getEdges:i,getEdge:d,setNodes:a,setEdges:l,addNodes:s,addEdges:c,toObject:u,deleteElements:r,getIntersectingNodes:h,isNodeIntersecting:p}),[t,n,o,i,d,a,l,s,c,u,r,h,p])}var zi={actInsideInputWithModifier:!1},Li=({deleteKeyCode:t,multiSelectionKeyCode:e})=>{let n=le(),{deleteElements:o}=lt(),i=st(t,zi),d=st(e);(0,v.useEffect)(()=>{if(i){let{edges:a,getNodes:l}=n.getState();o({nodes:l().filter(s=>s.selected),edges:a.filter(s=>s.selected)}),n.setState({nodesSelectionActive:!1})}},[i]),(0,v.useEffect)(()=>{n.setState({multiSelectionActive:d})},[d])};function $i(t){let e=le();(0,v.useEffect)(()=>{let n,o=()=>{var d,a;if(!t.current)return;let i=Tt(t.current);(i.height===0||i.width===0)&&((a=(d=e.getState()).onError)==null||a.call(d,"004",xe.error004())),e.setState({width:i.width||500,height:i.height||500})};return o(),window.addEventListener("resize",o),t.current&&(n=new ResizeObserver(()=>o()),n.observe(t.current)),()=>{window.removeEventListener("resize",o),n&&t.current&&n.unobserve(t.current)}},[])}var rn={position:"absolute",width:"100%",height:"100%",top:0,left:0},Ti=(t,e)=>t.x!==e.x||t.y!==e.y||t.zoom!==e.k,Ct=t=>({x:t.x,y:t.y,zoom:t.k}),Ue=(t,e)=>t.target.closest(`.${e}`),po=(t,e)=>e===2&&Array.isArray(t)&&t.includes(2),mo=t=>{let e=t.ctrlKey&&mt()?10:1;return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*e},Hi=t=>({d3Zoom:t.d3Zoom,d3Selection:t.d3Selection,d3ZoomHandler:t.d3ZoomHandler,userSelectionActive:t.userSelectionActive}),Vi=({onMove:t,onMoveStart:e,onMoveEnd:n,onPaneContextMenu:o,zoomOnScroll:i=!0,zoomOnPinch:d=!0,panOnScroll:a=!1,panOnScrollSpeed:l=.5,panOnScrollMode:s=Ye.Free,zoomOnDoubleClick:c=!0,elementsSelectable:u,panOnDrag:r=!0,defaultViewport:g,translateExtent:h,minZoom:p,maxZoom:f,zoomActivationKeyCode:y,preventScrolling:x=!0,children:b,noWheelClassName:N,noPanClassName:m})=>{let C=(0,v.useRef)(),M=le(),_=(0,v.useRef)(!1),P=(0,v.useRef)(!1),j=(0,v.useRef)(null),w=(0,v.useRef)({x:0,y:0,zoom:0}),{d3Zoom:E,d3Selection:O,d3ZoomHandler:k,userSelectionActive:S}=ne(Hi,ue),D=st(y),L=(0,v.useRef)(0),$=(0,v.useRef)(!1),X=(0,v.useRef)();return $i(j),(0,v.useEffect)(()=>{if(j.current){let R=j.current.getBoundingClientRect(),T=Ra().scaleExtent([p,f]).translateExtent(h),V=ht(j.current).call(T),F=Fe.translate(g.x,g.y).scale(Xe(g.zoom,p,f)),Z=[[0,0],[R.width,R.height]],U=T.constrain()(F,Z,h);T.transform(V,U),T.wheelDelta(mo),M.setState({d3Zoom:T,d3Selection:V,d3ZoomHandler:V.on("wheel.zoom"),transform:[U.x,U.y,U.k],domNode:j.current.closest(".react-flow")})}},[]),(0,v.useEffect)(()=>{O&&E&&(a&&!D&&!S?O.on("wheel.zoom",R=>{if(Ue(R,N))return!1;R.preventDefault(),R.stopImmediatePropagation();let T=O.property("__zoom").k||1;if(R.ctrlKey&&d){let H=Lt(R),Y=T*2**mo(R);E.scaleTo(O,Y,H,R);return}let V=R.deltaMode===1?20:1,F=s===Ye.Vertical?0:R.deltaX*V,Z=s===Ye.Horizontal?0:R.deltaY*V;!mt()&&R.shiftKey&&s!==Ye.Vertical&&(F=R.deltaY*V,Z=0),E.translateBy(O,-(F/T)*l,-(Z/T)*l,{internal:!0});let U=Ct(O.property("__zoom")),{onViewportChangeStart:I,onViewportChange:A,onViewportChangeEnd:z}=M.getState();clearTimeout(X.current),$.current||($.current=!0,e==null||e(R,U),I==null||I(U)),$.current&&(t==null||t(R,U),A==null||A(U),X.current=setTimeout(()=>{n==null||n(R,U),z==null||z(U),$.current=!1},150))},{passive:!1}):k!==void 0&&O.on("wheel.zoom",function(R,T){if(!x&&R.type==="wheel"&&!R.ctrlKey||Ue(R,N))return null;R.preventDefault(),k.call(this,R,T)},{passive:!1}))},[S,a,s,O,E,k,D,d,x,N,e,t,n]),(0,v.useEffect)(()=>{E&&E.on("start",R=>{var F,Z;if(!R.sourceEvent||R.sourceEvent.internal)return null;L.current=(F=R.sourceEvent)==null?void 0:F.button;let{onViewportChangeStart:T}=M.getState(),V=Ct(R.transform);_.current=!0,w.current=V,((Z=R.sourceEvent)==null?void 0:Z.type)==="mousedown"&&M.setState({paneDragging:!0}),T==null||T(V),e==null||e(R.sourceEvent,V)})},[E,e]),(0,v.useEffect)(()=>{E&&(S&&!_.current?E.on("zoom",null):S||E.on("zoom",R=>{var V;let{onViewportChange:T}=M.getState();if(M.setState({transform:[R.transform.x,R.transform.y,R.transform.k]}),P.current=!!(o&&po(r,L.current??0)),(t||T)&&!((V=R.sourceEvent)!=null&&V.internal)){let F=Ct(R.transform);T==null||T(F),t==null||t(R.sourceEvent,F)}}))},[S,E,t,r,o]),(0,v.useEffect)(()=>{E&&E.on("end",R=>{if(!R.sourceEvent||R.sourceEvent.internal)return null;let{onViewportChangeEnd:T}=M.getState();if(_.current=!1,M.setState({paneDragging:!1}),o&&po(r,L.current??0)&&!P.current&&o(R.sourceEvent),P.current=!1,(n||T)&&Ti(w.current,R.transform)){let V=Ct(R.transform);w.current=V,clearTimeout(C.current),C.current=setTimeout(()=>{T==null||T(V),n==null||n(R.sourceEvent,V)},a?150:0)}})},[E,a,r,n,o]),(0,v.useEffect)(()=>{E&&E.filter(R=>{let T=D||i,V=d&&R.ctrlKey;if((r===!0||Array.isArray(r)&&r.includes(1))&&R.button===1&&R.type==="mousedown"&&(Ue(R,"react-flow__node")||Ue(R,"react-flow__edge")))return!0;if(!r&&!T&&!a&&!c&&!d||S||!c&&R.type==="dblclick"||Ue(R,N)&&R.type==="wheel"||Ue(R,m)&&(R.type!=="wheel"||a&&R.type==="wheel"&&!D)||!d&&R.ctrlKey&&R.type==="wheel"||!T&&!a&&!V&&R.type==="wheel"||!r&&(R.type==="mousedown"||R.type==="touchstart")||Array.isArray(r)&&!r.includes(R.button)&&R.type==="mousedown")return!1;let F=Array.isArray(r)&&r.includes(R.button)||!R.button||R.button<=1;return(!R.ctrlKey||R.type==="wheel")&&F})},[S,E,i,d,a,c,r,u,D]),v.createElement("div",{className:"react-flow__renderer",ref:j,style:rn},b)},Fi=t=>({userSelectionActive:t.userSelectionActive,userSelectionRect:t.userSelectionRect});function Xi(){let{userSelectionActive:t,userSelectionRect:e}=ne(Fi,ue);return t&&e?v.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 yo(t,e){let n=e.parentNode||e.parentId,o=t.find(i=>i.id===n);if(o){let i=e.position.x+e.width-o.width,d=e.position.y+e.height-o.height;if(i>0||d>0||e.position.x<0||e.position.y<0){if(o.style={...o.style},o.style.width=o.style.width??o.width,o.style.height=o.style.height??o.height,i>0&&(o.style.width+=i),d>0&&(o.style.height+=d),e.position.x<0){let a=Math.abs(e.position.x);o.position.x=o.position.x-a,o.style.width+=a,e.position.x=0}if(e.position.y<0){let a=Math.abs(e.position.y);o.position.y=o.position.y-a,o.style.height+=a,e.position.y=0}o.width=o.style.width,o.height=o.style.height}}}function vo(t,e){if(t.some(o=>o.type==="reset"))return t.filter(o=>o.type==="reset").map(o=>o.item);let n=t.filter(o=>o.type==="add").map(o=>o.item);return e.reduce((o,i)=>{let d=t.filter(l=>l.id===i.id);if(d.length===0)return o.push(i),o;let a={...i};for(let l of d)if(l)switch(l.type){case"select":a.selected=l.selected;break;case"position":l.position!==void 0&&(a.position=l.position),l.positionAbsolute!==void 0&&(a.positionAbsolute=l.positionAbsolute),l.dragging!==void 0&&(a.dragging=l.dragging),a.expandParent&&yo(o,a);break;case"dimensions":l.dimensions!==void 0&&(a.width=l.dimensions.width,a.height=l.dimensions.height),l.updateStyle!==void 0&&(a.style={...a.style||{},...l.dimensions}),typeof l.resizing=="boolean"&&(a.resizing=l.resizing),a.expandParent&&yo(o,a);break;case"remove":return o}return o.push(a),o},n)}function bo(t,e){return vo(t,e)}function Wi(t,e){return vo(t,e)}var Ne=(t,e)=>({id:t,type:"select",selected:e});function qe(t,e){return t.reduce((n,o)=>{let i=e.includes(o.id);return!o.selected&&i?(o.selected=!0,n.push(Ne(o.id,!0))):o.selected&&!i&&(o.selected=!1,n.push(Ne(o.id,!1))),n},[])}var an=(t,e)=>n=>{n.target===e.current&&(t==null||t(n))},Yi=t=>({userSelectionActive:t.userSelectionActive,elementsSelectable:t.elementsSelectable,dragging:t.paneDragging}),xo=(0,v.memo)(({isSelecting:t,selectionMode:e=yt.Full,panOnDrag:n,onSelectionStart:o,onSelectionEnd:i,onPaneClick:d,onPaneContextMenu:a,onPaneScroll:l,onPaneMouseEnter:s,onPaneMouseMove:c,onPaneMouseLeave:u,children:r})=>{let g=(0,v.useRef)(null),h=le(),p=(0,v.useRef)(0),f=(0,v.useRef)(0),y=(0,v.useRef)(),{userSelectionActive:x,elementsSelectable:b,dragging:N}=ne(Yi,ue),m=()=>{h.setState({userSelectionActive:!1,userSelectionRect:null}),p.current=0,f.current=0},C=k=>{d==null||d(k),h.getState().resetSelectedElements(),h.setState({nodesSelectionActive:!1})},M=k=>{if(Array.isArray(n)&&(n!=null&&n.includes(2))){k.preventDefault();return}a==null||a(k)},_=l?k=>l(k):void 0,P=k=>{let{resetSelectedElements:S,domNode:D}=h.getState();if(y.current=D==null?void 0:D.getBoundingClientRect(),!b||!t||k.button!==0||k.target!==g.current||!y.current)return;let{x:L,y:$}=Se(k,y.current);S(),h.setState({userSelectionRect:{width:0,height:0,startX:L,startY:$,x:L,y:$}}),o==null||o(k)},j=k=>{let{userSelectionRect:S,nodeInternals:D,edges:L,transform:$,onNodesChange:X,onEdgesChange:R,nodeOrigin:T,getNodes:V}=h.getState();if(!t||!y.current||!S)return;h.setState({userSelectionActive:!0,nodesSelectionActive:!1});let F=Se(k,y.current),Z=S.startX??0,U=S.startY??0,I={...S,x:F.x<Z?F.x:Z,y:F.y<U?F.y:U,width:Math.abs(F.x-Z),height:Math.abs(F.y-U)},A=V(),z=Wn(D,I,$,e===yt.Partial,!0,T),H=Yn(z,L).map(G=>G.id),Y=z.map(G=>G.id);if(p.current!==Y.length){p.current=Y.length;let G=qe(A,Y);G.length&&(X==null||X(G))}if(f.current!==H.length){f.current=H.length;let G=qe(L,H);G.length&&(R==null||R(G))}h.setState({userSelectionRect:I})},w=k=>{if(k.button!==0)return;let{userSelectionRect:S}=h.getState();!x&&S&&k.target===g.current&&(C==null||C(k)),h.setState({nodesSelectionActive:p.current>0}),m(),i==null||i(k)},E=k=>{x&&(h.setState({nodesSelectionActive:p.current>0}),i==null||i(k)),m()},O=b&&(t||x);return v.createElement("div",{className:he(["react-flow__pane",{dragging:N,selection:t}]),onClick:O?void 0:an(C,g),onContextMenu:an(M,g),onWheel:an(_,g),onMouseEnter:O?void 0:s,onMouseDown:O?P:void 0,onMouseMove:O?j:c,onMouseUp:O?w:void 0,onMouseLeave:O?E:u,ref:g,style:rn},r,v.createElement(Xi,null))});xo.displayName="Pane";function wo(t,e){let n=t.parentNode||t.parentId;if(!n)return!1;let o=e.get(n);return o?o.selected?!0:wo(o,e):!1}function Eo(t,e,n){let o=t;do{if(o!=null&&o.matches(e))return!0;if(o===n.current)return!1;o=o.parentElement}while(o);return!1}function Zi(t,e,n,o){return Array.from(t.values()).filter(i=>(i.selected||i.id===o)&&(!i.parentNode||i.parentId||!wo(i,t))&&(i.draggable||e&&i.draggable===void 0)).map(i=>{var d,a;return{id:i.id,position:i.position||{x:0,y:0},positionAbsolute:i.positionAbsolute||{x:0,y:0},distance:{x:n.x-(((d=i.positionAbsolute)==null?void 0:d.x)??0),y:n.y-(((a=i.positionAbsolute)==null?void 0:a.y)??0)},delta:{x:0,y:0},extent:i.extent,parentNode:i.parentNode||i.parentId,parentId:i.parentNode||i.parentId,width:i.width,height:i.height,expandParent:i.expandParent}})}function Ki(t,e){return!e||e==="parent"?e:[e[0],[e[1][0]-(t.width||0),e[1][1]-(t.height||0)]]}function So(t,e,n,o,i=[0,0],d){let a=Ki(t,t.extent||o),l=a,s=t.parentNode||t.parentId;if(t.extent==="parent"&&!t.expandParent)if(s&&t.width&&t.height){let r=n.get(s),{x:g,y:h}=Ze(r,i).positionAbsolute;l=r&&me(g)&&me(h)&&me(r.width)&&me(r.height)?[[g+t.width*i[0],h+t.height*i[1]],[g+r.width-t.width+t.width*i[0],h+r.height-t.height+t.height*i[1]]]:l}else d==null||d("005",xe.error005()),l=a;else if(t.extent&&s&&t.extent!=="parent"){let{x:r,y:g}=Ze(n.get(s),i).positionAbsolute;l=[[t.extent[0][0]+r,t.extent[0][1]+g],[t.extent[1][0]+r,t.extent[1][1]+g]]}let c={x:0,y:0};s&&(c=Ze(n.get(s),i).positionAbsolute);let u=l&&l!=="parent"?Ht(e,l):e;return{position:{x:u.x-c.x,y:u.y-c.y},positionAbsolute:u}}function sn({nodeId:t,dragItems:e,nodeInternals:n}){let o=e.map(i=>({...n.get(i.id),position:i.position,positionAbsolute:i.positionAbsolute}));return[t?o.find(i=>i.id===t):o[0],o]}var Co=(t,e,n,o)=>{let i=e.querySelectorAll(t);if(!i||!i.length)return null;let d=Array.from(i),a=e.getBoundingClientRect(),l={x:a.width*o[0],y:a.height*o[1]};return d.map(s=>{let c=s.getBoundingClientRect();return{id:s.getAttribute("data-handleid"),position:s.getAttribute("data-handlepos"),x:(c.left-a.left-l.x)/n,y:(c.top-a.top-l.y)/n,...Tt(s)}})};function dt(t,e,n){return n===void 0?n:o=>{let i=e().nodeInternals.get(t);i&&n(o,{...i})}}function ln({id:t,store:e,unselect:n=!1,nodeRef:o}){let{addSelectedNodes:i,unselectNodesAndEdges:d,multiSelectionActive:a,nodeInternals:l,onError:s}=e.getState(),c=l.get(t);if(!c){s==null||s("012",xe.error012(t));return}e.setState({nodesSelectionActive:!1}),c.selected?(n||c.selected&&a)&&(d({nodes:[c],edges:[]}),requestAnimationFrame(()=>{var u;return(u=o==null?void 0:o.current)==null?void 0:u.blur()})):i([t])}function Gi(){let t=le();return(0,v.useCallback)(({sourceEvent:e})=>{let{transform:n,snapGrid:o,snapToGrid:i}=t.getState(),d=e.touches?e.touches[0].clientX:e.clientX,a=e.touches?e.touches[0].clientY:e.clientY,l={x:(d-n[0])/n[2],y:(a-n[1])/n[2]};return{xSnapped:i?o[0]*Math.round(l.x/o[0]):l.x,ySnapped:i?o[1]*Math.round(l.y/o[1]):l.y,...l}},[])}function dn(t){return(e,n,o)=>t==null?void 0:t(e,o)}function No({nodeRef:t,disabled:e=!1,noDragClassName:n,handleSelector:o,nodeId:i,isSelectable:d,selectNodesOnDrag:a}){let l=le(),[s,c]=(0,v.useState)(!1),u=(0,v.useRef)([]),r=(0,v.useRef)({x:null,y:null}),g=(0,v.useRef)(0),h=(0,v.useRef)(null),p=(0,v.useRef)({x:0,y:0}),f=(0,v.useRef)(null),y=(0,v.useRef)(!1),x=(0,v.useRef)(!1),b=(0,v.useRef)(!1),N=Gi();return(0,v.useEffect)(()=>{if(t!=null&&t.current){let m=ht(t.current),C=({x:P,y:j})=>{let{nodeInternals:w,onNodeDrag:E,onSelectionDrag:O,updateNodePositions:k,nodeExtent:S,snapGrid:D,snapToGrid:L,nodeOrigin:$,onError:X}=l.getState();r.current={x:P,y:j};let R=!1,T={x:0,y:0,x2:0,y2:0};if(u.current.length>1&&S&&(T=Vt(Qt(u.current,$))),u.current=u.current.map(F=>{let Z={x:P-F.distance.x,y:j-F.distance.y};L&&(Z.x=D[0]*Math.round(Z.x/D[0]),Z.y=D[1]*Math.round(Z.y/D[1]));let U=[[S[0][0],S[0][1]],[S[1][0],S[1][1]]];u.current.length>1&&S&&!F.extent&&(U[0][0]=F.positionAbsolute.x-T.x+S[0][0],U[1][0]=F.positionAbsolute.x+(F.width??0)-T.x2+S[1][0],U[0][1]=F.positionAbsolute.y-T.y+S[0][1],U[1][1]=F.positionAbsolute.y+(F.height??0)-T.y2+S[1][1]);let I=So(F,Z,w,U,$,X);return R=R||F.position.x!==I.position.x||F.position.y!==I.position.y,F.position=I.position,F.positionAbsolute=I.positionAbsolute,F}),!R)return;k(u.current,!0,!0),c(!0);let V=i?E:dn(O);if(V&&f.current){let[F,Z]=sn({nodeId:i,dragItems:u.current,nodeInternals:w});V(f.current,F,Z)}},M=()=>{if(!h.current)return;let[P,j]=Pn(p.current,h.current);if(P!==0||j!==0){let{transform:w,panBy:E}=l.getState();r.current.x=(r.current.x??0)-P/w[2],r.current.y=(r.current.y??0)-j/w[2],E({x:P,y:j})&&C(r.current)}g.current=requestAnimationFrame(M)},_=P=>{var $;let{nodeInternals:j,multiSelectionActive:w,nodesDraggable:E,unselectNodesAndEdges:O,onNodeDragStart:k,onSelectionDragStart:S}=l.getState();x.current=!0;let D=i?k:dn(S);(!a||!d)&&!w&&i&&(($=j.get(i))!=null&&$.selected||O()),i&&d&&a&&ln({id:i,store:l,nodeRef:t});let L=N(P);if(r.current=L,u.current=Zi(j,E,L,i),D&&u.current){let[X,R]=sn({nodeId:i,dragItems:u.current,nodeInternals:j});D(P.sourceEvent,X,R)}};if(e)m.on(".drag",null);else{let P=Ga().on("start",j=>{let{domNode:w,nodeDragThreshold:E}=l.getState();E===0&&_(j),b.current=!1,r.current=N(j),h.current=(w==null?void 0:w.getBoundingClientRect())||null,p.current=Se(j.sourceEvent,h.current)}).on("drag",j=>{var k,S;let w=N(j),{autoPanOnNodeDrag:E,nodeDragThreshold:O}=l.getState();if(j.sourceEvent.type==="touchmove"&&j.sourceEvent.touches.length>1&&(b.current=!0),!b.current){if(!y.current&&x.current&&E&&(y.current=!0,M()),!x.current){let D=w.xSnapped-(((k=r==null?void 0:r.current)==null?void 0:k.x)??0),L=w.ySnapped-(((S=r==null?void 0:r.current)==null?void 0:S.y)??0);Math.sqrt(D*D+L*L)>O&&_(j)}(r.current.x!==w.xSnapped||r.current.y!==w.ySnapped)&&u.current&&x.current&&(f.current=j.sourceEvent,p.current=Se(j.sourceEvent,h.current),C(w))}}).on("end",j=>{if(!(!x.current||b.current)&&(c(!1),y.current=!1,x.current=!1,cancelAnimationFrame(g.current),u.current)){let{updateNodePositions:w,nodeInternals:E,onNodeDragStop:O,onSelectionDragStop:k}=l.getState(),S=i?O:dn(k);if(w(u.current,!1,!1),S){let[D,L]=sn({nodeId:i,dragItems:u.current,nodeInternals:E});S(j.sourceEvent,D,L)}}}).filter(j=>{let w=j.target;return!j.button&&(!n||!Eo(w,`.${n}`,t))&&(!o||Eo(w,o,t))});return m.call(P),()=>{m.on(".drag",null)}}}},[t,e,n,o,d,l,i,a,N]),s}function ko(){let t=le();return(0,v.useCallback)(e=>{let{nodeInternals:n,nodeExtent:o,updateNodePositions:i,getNodes:d,snapToGrid:a,snapGrid:l,onError:s,nodesDraggable:c}=t.getState(),u=d().filter(y=>y.selected&&(y.draggable||c&&y.draggable===void 0)),r=a?l[0]:5,g=a?l[1]:5,h=e.isShiftPressed?4:1,p=e.x*r*h,f=e.y*g*h;i(u.map(y=>{if(y.positionAbsolute){let x={x:y.positionAbsolute.x+p,y:y.positionAbsolute.y+f};a&&(x.x=l[0]*Math.round(x.x/l[0]),x.y=l[1]*Math.round(x.y/l[1]));let{positionAbsolute:b,position:N}=So(y,x,n,o,void 0,s);y.position=N,y.positionAbsolute=b}return y}),!0,!1)},[])}var Qe={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},ct=t=>{let e=({id:n,type:o,data:i,xPos:d,yPos:a,xPosOrigin:l,yPosOrigin:s,selected:c,onClick:u,onMouseEnter:r,onMouseMove:g,onMouseLeave:h,onContextMenu:p,onDoubleClick:f,style:y,className:x,isDraggable:b,isSelectable:N,isConnectable:m,isFocusable:C,selectNodesOnDrag:M,sourcePosition:_,targetPosition:P,hidden:j,resizeObserver:w,dragHandle:E,zIndex:O,isParent:k,noDragClassName:S,noPanClassName:D,initialized:L,disableKeyboardA11y:$,ariaLabel:X,rfId:R,hasHandleBounds:T})=>{let V=le(),F=(0,v.useRef)(null),Z=(0,v.useRef)(null),U=(0,v.useRef)(_),I=(0,v.useRef)(P),A=(0,v.useRef)(o),z=N||b||u||r||g||h,H=ko(),Y=dt(n,V.getState,r),G=dt(n,V.getState,g),ee=dt(n,V.getState,h),ae=dt(n,V.getState,p),ge=dt(n,V.getState,f),oe=te=>{let{nodeDragThreshold:K}=V.getState();if(N&&(!M||!b||K>0)&&ln({id:n,store:V,nodeRef:F}),u){let fe=V.getState().nodeInternals.get(n);fe&&u(te,{...fe})}},J=te=>{Xt(te)||$||(Dn.includes(te.key)&&N?ln({id:n,store:V,unselect:te.key==="Escape",nodeRef:F}):b&&c&&Object.prototype.hasOwnProperty.call(Qe,te.key)&&(V.setState({ariaLiveMessage:`Moved selected node ${te.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~d}, y: ${~~a}`}),H({x:Qe[te.key].x,y:Qe[te.key].y,isShiftPressed:te.shiftKey})))};(0,v.useEffect)(()=>()=>{Z.current&&(Z.current=(w==null||w.unobserve(Z.current),null))},[]),(0,v.useEffect)(()=>{if(F.current&&!j){let te=F.current;(!L||!T||Z.current!==te)&&(Z.current&&(w==null||w.unobserve(Z.current)),w==null||w.observe(te),Z.current=te)}},[j,L,T]),(0,v.useEffect)(()=>{let te=A.current!==o,K=U.current!==_,fe=I.current!==P;F.current&&(te||K||fe)&&(te&&(A.current=o),K&&(U.current=_),fe&&(I.current=P),V.getState().updateNodeDimensions([{id:n,nodeElement:F.current,forceUpdate:!0}]))},[n,o,_,P]);let de=No({nodeRef:F,disabled:j||!b,noDragClassName:S,handleSelector:E,nodeId:n,isSelectable:N,selectNodesOnDrag:M});return j?null:v.createElement("div",{className:he(["react-flow__node",`react-flow__node-${o}`,{[D]:b},x,{selected:c,selectable:N,parent:k,dragging:de}]),ref:F,style:{zIndex:O,transform:`translate(${l}px,${s}px)`,pointerEvents:z?"all":"none",visibility:L?"visible":"hidden",...y},"data-id":n,"data-testid":`rf__node-${n}`,onMouseEnter:Y,onMouseMove:G,onMouseLeave:ee,onContextMenu:ae,onClick:oe,onDoubleClick:ge,onKeyDown:C?J:void 0,tabIndex:C?0:void 0,role:C?"button":void 0,"aria-describedby":$?void 0:`${so}-${R}`,"aria-label":X},v.createElement(di,{value:n},v.createElement(t,{id:n,data:i,type:o,xPos:d,yPos:a,selected:c,isConnectable:m,sourcePosition:_,targetPosition:P,dragging:de,dragHandle:E,zIndex:O})))};return e.displayName="NodeWrapper",(0,v.memo)(e)},Ui=t=>({...Qt(t.getNodes().filter(e=>e.selected),t.nodeOrigin),transformString:`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]})`,userSelectionActive:t.userSelectionActive});function qi({onSelectionContextMenu:t,noPanClassName:e,disableKeyboardA11y:n}){let o=le(),{width:i,height:d,x:a,y:l,transformString:s,userSelectionActive:c}=ne(Ui,ue),u=ko(),r=(0,v.useRef)(null);if((0,v.useEffect)(()=>{var h;n||((h=r.current)==null||h.focus({preventScroll:!0}))},[n]),No({nodeRef:r}),c||!i||!d)return null;let g=t?h=>{t(h,o.getState().getNodes().filter(p=>p.selected))}:void 0;return v.createElement("div",{className:he(["react-flow__nodesselection","react-flow__container",e]),style:{transform:s}},v.createElement("div",{ref:r,className:"react-flow__nodesselection-rect",onContextMenu:g,tabIndex:n?void 0:-1,onKeyDown:n?void 0:h=>{Object.prototype.hasOwnProperty.call(Qe,h.key)&&u({x:Qe[h.key].x,y:Qe[h.key].y,isShiftPressed:h.shiftKey})},style:{width:i,height:d,top:l,left:a}}))}var Qi=(0,v.memo)(qi),Ji=t=>t.nodesSelectionActive,Mo=({children:t,onPaneClick:e,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:i,onPaneContextMenu:d,onPaneScroll:a,deleteKeyCode:l,onMove:s,onMoveStart:c,onMoveEnd:u,selectionKeyCode:r,selectionOnDrag:g,selectionMode:h,onSelectionStart:p,onSelectionEnd:f,multiSelectionKeyCode:y,panActivationKeyCode:x,zoomActivationKeyCode:b,elementsSelectable:N,zoomOnScroll:m,zoomOnPinch:C,panOnScroll:M,panOnScrollSpeed:_,panOnScrollMode:P,zoomOnDoubleClick:j,panOnDrag:w,defaultViewport:E,translateExtent:O,minZoom:k,maxZoom:S,preventScrolling:D,onSelectionContextMenu:L,noWheelClassName:$,noPanClassName:X,disableKeyboardA11y:R})=>{let T=ne(Ji),V=st(r),F=st(x),Z=F||w,U=F||M,I=V||g&&Z!==!0;return Li({deleteKeyCode:l,multiSelectionKeyCode:y}),v.createElement(Vi,{onMove:s,onMoveStart:c,onMoveEnd:u,onPaneContextMenu:d,elementsSelectable:N,zoomOnScroll:m,zoomOnPinch:C,panOnScroll:U,panOnScrollSpeed:_,panOnScrollMode:P,zoomOnDoubleClick:j,panOnDrag:!V&&Z,defaultViewport:E,translateExtent:O,minZoom:k,maxZoom:S,zoomActivationKeyCode:b,preventScrolling:D,noWheelClassName:$,noPanClassName:X},v.createElement(xo,{onSelectionStart:p,onSelectionEnd:f,onPaneClick:e,onPaneMouseEnter:n,onPaneMouseMove:o,onPaneMouseLeave:i,onPaneContextMenu:d,onPaneScroll:a,panOnDrag:Z,isSelecting:!!I,selectionMode:h},t,T&&v.createElement(Qi,{onSelectionContextMenu:L,noPanClassName:X,disableKeyboardA11y:R})))};Mo.displayName="FlowRenderer";var es=(0,v.memo)(Mo);function ts(t){return ne((0,v.useCallback)(e=>t?Wn(e.nodeInternals,{x:0,y:0,width:e.width,height:e.height},e.transform,!0):e.getNodes(),[t]))}function ns(t){let e={input:ct(t.input||no),default:ct(t.default||tn),output:ct(t.output||ro),group:ct(t.group||nn)},n=Object.keys(t).filter(o=>!["input","default","output","group"].includes(o)).reduce((o,i)=>(o[i]=ct(t[i]||tn),o),{});return{...e,...n}}var os=({x:t,y:e,width:n,height:o,origin:i})=>!n||!o||i[0]<0||i[1]<0||i[0]>1||i[1]>1?{x:t,y:e}:{x:t-n*i[0],y:e-o*i[1]},rs=t=>({nodesDraggable:t.nodesDraggable,nodesConnectable:t.nodesConnectable,nodesFocusable:t.nodesFocusable,elementsSelectable:t.elementsSelectable,updateNodeDimensions:t.updateNodeDimensions,onError:t.onError}),Oo=t=>{let{nodesDraggable:e,nodesConnectable:n,nodesFocusable:o,elementsSelectable:i,updateNodeDimensions:d,onError:a}=ne(rs,ue),l=ts(t.onlyRenderVisibleElements),s=(0,v.useRef)(),c=(0,v.useMemo)(()=>{if(typeof ResizeObserver>"u")return null;let u=new ResizeObserver(r=>{d(r.map(g=>({id:g.target.getAttribute("data-id"),nodeElement:g.target,forceUpdate:!0})))});return s.current=u,u},[]);return(0,v.useEffect)(()=>()=>{var u;(u=s==null?void 0:s.current)==null||u.disconnect()},[]),v.createElement("div",{className:"react-flow__nodes",style:rn},l.map(u=>{var C,M,_;let r=u.type||"default";t.nodeTypes[r]||(a==null||a("003",xe.error003(r)),r="default");let g=t.nodeTypes[r]||t.nodeTypes.default,h=!!(u.draggable||e&&u.draggable===void 0),p=!!(u.selectable||i&&u.selectable===void 0),f=!!(u.connectable||n&&u.connectable===void 0),y=!!(u.focusable||o&&u.focusable===void 0),x=t.nodeExtent?Ht(u.positionAbsolute,t.nodeExtent):u.positionAbsolute,b=(x==null?void 0:x.x)??0,N=(x==null?void 0:x.y)??0,m=os({x:b,y:N,width:u.width??0,height:u.height??0,origin:t.nodeOrigin});return v.createElement(g,{key:u.id,id:u.id,className:u.className,style:u.style,type:r,data:u.data,sourcePosition:u.sourcePosition||W.Bottom,targetPosition:u.targetPosition||W.Top,hidden:u.hidden,xPos:b,yPos:N,xPosOrigin:m.x,yPosOrigin:m.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:h,isSelectable:p,isConnectable:f,isFocusable:y,resizeObserver:c,dragHandle:u.dragHandle,zIndex:((C=u[re])==null?void 0:C.z)??0,isParent:!!((M=u[re])!=null&&M.isParent),noDragClassName:t.noDragClassName,noPanClassName:t.noPanClassName,initialized:!!u.width&&!!u.height,rfId:t.rfId,disableKeyboardA11y:t.disableKeyboardA11y,ariaLabel:u.ariaLabel,hasHandleBounds:!!((_=u[re])!=null&&_.handleBounds)})}))};Oo.displayName="NodeRenderer";var as=(0,v.memo)(Oo),is=(t,e,n)=>n===W.Left?t-e:n===W.Right?t+e:t,ss=(t,e,n)=>n===W.Top?t-e:n===W.Bottom?t+e:t,_o="react-flow__edgeupdater",jo=({position:t,centerX:e,centerY:n,radius:o=10,onMouseDown:i,onMouseEnter:d,onMouseOut:a,type:l})=>v.createElement("circle",{onMouseDown:i,onMouseEnter:d,onMouseOut:a,className:he([_o,`${_o}-${l}`]),cx:is(e,o,t),cy:ss(n,o,t),r:o,stroke:"transparent",fill:"transparent"}),ls=()=>!0,Je=t=>{let e=({id:n,className:o,type:i,data:d,onClick:a,onEdgeDoubleClick:l,selected:s,animated:c,label:u,labelStyle:r,labelShowBg:g,labelBgStyle:h,labelBgPadding:p,labelBgBorderRadius:f,style:y,source:x,target:b,sourceX:N,sourceY:m,targetX:C,targetY:M,sourcePosition:_,targetPosition:P,elementsSelectable:j,hidden:w,sourceHandleId:E,targetHandleId:O,onContextMenu:k,onMouseEnter:S,onMouseMove:D,onMouseLeave:L,reconnectRadius:$,onReconnect:X,onReconnectStart:R,onReconnectEnd:T,markerEnd:V,markerStart:F,rfId:Z,ariaLabel:U,isFocusable:I,isReconnectable:A,pathOptions:z,interactionWidth:H,disableKeyboardA11y:Y})=>{let G=(0,v.useRef)(null),[ee,ae]=(0,v.useState)(!1),[ge,oe]=(0,v.useState)(!1),J=le(),de=(0,v.useMemo)(()=>`url('#${Ut(F,Z)}')`,[F,Z]),te=(0,v.useMemo)(()=>`url('#${Ut(V,Z)}')`,[V,Z]);if(w)return null;let K=ce=>{var Ee;let{edges:pe,addSelectedEdges:je,unselectNodesAndEdges:Pe,multiSelectionActive:Ie}=J.getState(),be=pe.find(nt=>nt.id===n);be&&(j&&(J.setState({nodesSelectionActive:!1}),be.selected&&Ie?(Pe({nodes:[],edges:[be]}),(Ee=G.current)==null||Ee.blur()):je([n])),a&&a(ce,be))},fe=it(n,J.getState,l),Me=it(n,J.getState,k),tt=it(n,J.getState,S),ze=it(n,J.getState,D),Le=it(n,J.getState,L),we=(ce,pe)=>{if(ce.button!==0)return;let{edges:je,isValidConnection:Pe}=J.getState(),Ie=pe?b:x,be=(pe?O:E)||null,Ee=pe?"target":"source",nt=Pe||ls,Mt=pe,ot=je.find(Re=>Re.id===n);oe(!0),R==null||R(ce,ot,Ee),qn({event:ce,handleId:be,nodeId:Ie,onConnect:Re=>X==null?void 0:X(ot,Re),isTarget:Mt,getState:J.getState,setState:J.setState,isValidConnection:nt,edgeUpdaterType:Ee,onReconnectEnd:Re=>{oe(!1),T==null||T(Re,ot,Ee)}})},$e=ce=>we(ce,!0),Oe=ce=>we(ce,!1),_e=()=>ae(!0),Te=()=>ae(!1),He=!j&&!a;return v.createElement("g",{className:he(["react-flow__edge",`react-flow__edge-${i}`,o,{selected:s,animated:c,inactive:He,updating:ee}]),onClick:K,onDoubleClick:fe,onContextMenu:Me,onMouseEnter:tt,onMouseMove:ze,onMouseLeave:Le,onKeyDown:I?ce=>{var pe;if(!Y&&Dn.includes(ce.key)&&j){let{unselectNodesAndEdges:je,addSelectedEdges:Pe,edges:Ie}=J.getState();ce.key==="Escape"?((pe=G.current)==null||pe.blur(),je({edges:[Ie.find(be=>be.id===n)]})):Pe([n])}}:void 0,tabIndex:I?0:void 0,role:I?"button":"img","data-testid":`rf__edge-${n}`,"aria-label":U===null?void 0:U||`Edge from ${x} to ${b}`,"aria-describedby":I?`${lo}-${Z}`:void 0,ref:G},!ge&&v.createElement(t,{id:n,source:x,target:b,selected:s,animated:c,label:u,labelStyle:r,labelShowBg:g,labelBgStyle:h,labelBgPadding:p,labelBgBorderRadius:f,data:d,style:y,sourceX:N,sourceY:m,targetX:C,targetY:M,sourcePosition:_,targetPosition:P,sourceHandleId:E,targetHandleId:O,markerStart:de,markerEnd:te,pathOptions:z,interactionWidth:H}),A&&v.createElement(v.Fragment,null,(A==="source"||A===!0)&&v.createElement(jo,{position:_,centerX:N,centerY:m,radius:$,onMouseDown:$e,onMouseEnter:_e,onMouseOut:Te,type:"source"}),(A==="target"||A===!0)&&v.createElement(jo,{position:P,centerX:C,centerY:M,radius:$,onMouseDown:Oe,onMouseEnter:_e,onMouseOut:Te,type:"target"})))};return e.displayName="EdgeWrapper",(0,v.memo)(e)};function ds(t){let e={default:Je(t.default||wt),straight:Je(t.bezier||Kt),step:Je(t.step||Zt),smoothstep:Je(t.step||bt),simplebezier:Je(t.simplebezier||Wt)},n=Object.keys(t).filter(o=>!["default","bezier"].includes(o)).reduce((o,i)=>(o[i]=Je(t[i]||wt),o),{});return{...e,...n}}function Po(t,e,n=null){let o=((n==null?void 0:n.x)||0)+e.x,i=((n==null?void 0:n.y)||0)+e.y,d=(n==null?void 0:n.width)||e.width,a=(n==null?void 0:n.height)||e.height;switch(t){case W.Top:return{x:o+d/2,y:i};case W.Right:return{x:o+d,y:i+a/2};case W.Bottom:return{x:o+d/2,y:i+a};case W.Left:return{x:o,y:i+a/2}}}function Io(t,e){return t?t.length===1||!e?t[0]:e&&t.find(n=>n.id===e)||null:null}var cs=(t,e,n,o,i,d)=>{let a=Po(n,t,e),l=Po(d,o,i);return{sourceX:a.x,sourceY:a.y,targetX:l.x,targetY:l.y}};function us({sourcePos:t,targetPos:e,sourceWidth:n,sourceHeight:o,targetWidth:i,targetHeight:d,width:a,height:l,transform:s}){let c={x:Math.min(t.x,e.x),y:Math.min(t.y,e.y),x2:Math.max(t.x+n,e.x+i),y2:Math.max(t.y+o,e.y+d)};c.x===c.x2&&(c.x2+=1),c.y===c.y2&&(c.y2+=1);let u=Vt({x:(0-s[0])/s[2],y:(0-s[1])/s[2],width:a/s[2],height:l/s[2]}),r=Math.max(0,Math.min(u.x2,c.x2)-Math.max(u.x,c.x)),g=Math.max(0,Math.min(u.y2,c.y2)-Math.max(u.y,c.y));return Math.ceil(r*g)>0}function Ro(t){var o,i,d,a,l;let e=((o=t==null?void 0:t[re])==null?void 0:o.handleBounds)||null,n=e&&(t==null?void 0:t.width)&&(t==null?void 0:t.height)&&((i=t==null?void 0:t.positionAbsolute)==null?void 0:i.x)!==void 0&&((d=t==null?void 0:t.positionAbsolute)==null?void 0:d.y)!==void 0;return[{x:((a=t==null?void 0:t.positionAbsolute)==null?void 0:a.x)||0,y:((l=t==null?void 0:t.positionAbsolute)==null?void 0:l.y)||0,width:(t==null?void 0:t.width)||0,height:(t==null?void 0:t.height)||0},e,!!n]}var hs=[{level:0,isMaxLevel:!0,edges:[]}];function gs(t,e,n=!1){let o=-1,i=t.reduce((a,l)=>{var u,r;let s=me(l.zIndex),c=s?l.zIndex:0;if(n){let g=e.get(l.target),h=e.get(l.source),p=l.selected||(g==null?void 0:g.selected)||(h==null?void 0:h.selected),f=Math.max(((u=h==null?void 0:h[re])==null?void 0:u.z)||0,((r=g==null?void 0:g[re])==null?void 0:r.z)||0,1e3);c=(s?l.zIndex:0)+(p?f:0)}return a[c]?a[c].push(l):a[c]=[l],o=c>o?c:o,a},{}),d=Object.entries(i).map(([a,l])=>{let s=+a;return{edges:l,level:s,isMaxLevel:s===o}});return d.length===0?hs:d}function fs(t,e,n){return gs(ne((0,v.useCallback)(o=>t?o.edges.filter(i=>{let d=e.get(i.source),a=e.get(i.target);return(d==null?void 0:d.width)&&(d==null?void 0:d.height)&&(a==null?void 0:a.width)&&(a==null?void 0:a.height)&&us({sourcePos:d.positionAbsolute||{x:0,y:0},targetPos:a.positionAbsolute||{x:0,y:0},sourceWidth:d.width,sourceHeight:d.height,targetWidth:a.width,targetHeight:a.height,width:o.width,height:o.height,transform:o.transform})}):o.edges,[t,e])),e,n)}var ps=({color:t="none",strokeWidth:e=1})=>v.createElement("polyline",{style:{stroke:t,strokeWidth:e},strokeLinecap:"round",strokeLinejoin:"round",fill:"none",points:"-5,-4 0,0 -5,4"}),ms=({color:t="none",strokeWidth:e=1})=>v.createElement("polyline",{style:{stroke:t,fill:t,strokeWidth:e},strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"}),Do={[vt.Arrow]:ps,[vt.ArrowClosed]:ms};function ys(t){let e=le();return(0,v.useMemo)(()=>{var n,o;return Object.prototype.hasOwnProperty.call(Do,t)?Do[t]:((o=(n=e.getState()).onError)==null||o.call(n,"009",xe.error009(t)),null)},[t])}var vs=({id:t,type:e,color:n,width:o=12.5,height:i=12.5,markerUnits:d="strokeWidth",strokeWidth:a,orient:l="auto-start-reverse"})=>{let s=ys(e);return s?v.createElement("marker",{className:"react-flow__arrowhead",id:t,markerWidth:`${o}`,markerHeight:`${i}`,viewBox:"-10 -10 20 20",markerUnits:d,orient:l,refX:"0",refY:"0"},v.createElement(s,{color:n,strokeWidth:a})):null},bs=({defaultColor:t,rfId:e})=>n=>{let o=[];return n.edges.reduce((i,d)=>([d.markerStart,d.markerEnd].forEach(a=>{if(a&&typeof a=="object"){let l=Ut(a,e);o.includes(l)||(i.push({id:l,color:a.color||t,...a}),o.push(l))}}),i),[]).sort((i,d)=>i.id.localeCompare(d.id))},Ao=({defaultColor:t,rfId:e})=>{let n=ne((0,v.useCallback)(bs({defaultColor:t,rfId:e}),[t,e]),(o,i)=>!(o.length!==i.length||o.some((d,a)=>d.id!==i[a].id)));return v.createElement("defs",null,n.map(o=>v.createElement(vs,{id:o.id,key:o.id,type:o.type,color:o.color,width:o.width,height:o.height,markerUnits:o.markerUnits,strokeWidth:o.strokeWidth,orient:o.orient})))};Ao.displayName="MarkerDefinitions";var xs=(0,v.memo)(Ao),ws=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}),Bo=({defaultMarkerColor:t,onlyRenderVisibleElements:e,elevateEdgesOnSelect:n,rfId:o,edgeTypes:i,noPanClassName:d,onEdgeContextMenu:a,onEdgeMouseEnter:l,onEdgeMouseMove:s,onEdgeMouseLeave:c,onEdgeClick:u,onEdgeDoubleClick:r,onReconnect:g,onReconnectStart:h,onReconnectEnd:p,reconnectRadius:f,children:y,disableKeyboardA11y:x})=>{let{edgesFocusable:b,edgesUpdatable:N,elementsSelectable:m,width:C,height:M,connectionMode:_,nodeInternals:P,onError:j}=ne(ws,ue),w=fs(e,P,n);return C?v.createElement(v.Fragment,null,w.map(({level:E,edges:O,isMaxLevel:k})=>v.createElement("svg",{key:E,style:{zIndex:E},width:C,height:M,className:"react-flow__edges react-flow__container"},k&&v.createElement(xs,{defaultColor:t,rfId:o}),v.createElement("g",null,O.map(S=>{let[D,L,$]=Ro(P.get(S.source)),[X,R,T]=Ro(P.get(S.target));if(!$||!T)return null;let V=S.type||"default";i[V]||(j==null||j("011",xe.error011(V)),V="default");let F=i[V]||i.default,Z=_===We.Strict?R.target:(R.target??[]).concat(R.source??[]),U=Io(L.source,S.sourceHandle),I=Io(Z,S.targetHandle),A=(U==null?void 0:U.position)||W.Bottom,z=(I==null?void 0:I.position)||W.Top,H=!!(S.focusable||b&&S.focusable===void 0),Y=S.reconnectable||S.updatable,G=g!==void 0&&(Y||N&&Y===void 0);if(!U||!I)return j==null||j("008",xe.error008(U,S)),null;let{sourceX:ee,sourceY:ae,targetX:ge,targetY:oe}=cs(D,U,A,X,I,z);return v.createElement(F,{key:S.id,id:S.id,className:he([S.className,d]),type:V,data:S.data,selected:!!S.selected,animated:!!S.animated,hidden:!!S.hidden,label:S.label,labelStyle:S.labelStyle,labelShowBg:S.labelShowBg,labelBgStyle:S.labelBgStyle,labelBgPadding:S.labelBgPadding,labelBgBorderRadius:S.labelBgBorderRadius,style:S.style,source:S.source,target:S.target,sourceHandleId:S.sourceHandle,targetHandleId:S.targetHandle,markerEnd:S.markerEnd,markerStart:S.markerStart,sourceX:ee,sourceY:ae,targetX:ge,targetY:oe,sourcePosition:A,targetPosition:z,elementsSelectable:m,onContextMenu:a,onMouseEnter:l,onMouseMove:s,onMouseLeave:c,onClick:u,onEdgeDoubleClick:r,onReconnect:g,onReconnectStart:h,onReconnectEnd:p,reconnectRadius:f,rfId:o,ariaLabel:S.ariaLabel,isFocusable:H,isReconnectable:G,pathOptions:"pathOptions"in S?S.pathOptions:void 0,interactionWidth:S.interactionWidth,disableKeyboardA11y:x})})))),y):null};Bo.displayName="EdgeRenderer";var Es=(0,v.memo)(Bo),Ss=t=>`translate(${t.transform[0]}px,${t.transform[1]}px) scale(${t.transform[2]})`;function Cs({children:t}){let e=ne(Ss);return v.createElement("div",{className:"react-flow__viewport react-flow__container",style:{transform:e}},t)}function Ns(t){let e=lt(),n=(0,v.useRef)(!1);(0,v.useEffect)(()=>{!n.current&&e.viewportInitialized&&t&&(setTimeout(()=>t(e),1),n.current=!0)},[t,e.viewportInitialized])}var ks={[W.Left]:W.Right,[W.Right]:W.Left,[W.Top]:W.Bottom,[W.Bottom]:W.Top},zo=({nodeId:t,handleType:e,style:n,type:o=Ae.Bezier,CustomComponent:i,connectionStatus:d})=>{var M,_,P;let{fromNode:a,handleId:l,toX:s,toY:c,connectionMode:u}=ne((0,v.useCallback)(j=>({fromNode:j.nodeInternals.get(t),handleId:j.connectionHandleId,toX:(j.connectionPosition.x-j.transform[0])/j.transform[2],toY:(j.connectionPosition.y-j.transform[1])/j.transform[2],connectionMode:j.connectionMode}),[t]),ue),r=(M=a==null?void 0:a[re])==null?void 0:M.handleBounds,g=r==null?void 0:r[e];if(u===We.Loose&&(g||(g=r==null?void 0:r[e==="source"?"target":"source"])),!a||!g)return null;let h=l?g.find(j=>j.id===l):g[0],p=h?h.x+h.width/2:(a.width??0)/2,f=h?h.y+h.height/2:a.height??0,y=(((_=a.positionAbsolute)==null?void 0:_.x)??0)+p,x=(((P=a.positionAbsolute)==null?void 0:P.y)??0)+f,b=h==null?void 0:h.position,N=b?ks[b]:null;if(!b||!N)return null;if(i)return v.createElement(i,{connectionLineType:o,connectionLineStyle:n,fromNode:a,fromHandle:h,fromX:y,fromY:x,toX:s,toY:c,fromPosition:b,toPosition:N,connectionStatus:d});let m="",C={sourceX:y,sourceY:x,sourcePosition:b,targetX:s,targetY:c,targetPosition:N};return o===Ae.Bezier?[m]=Fn(C):o===Ae.Step?[m]=Yt({...C,borderRadius:0}):o===Ae.SmoothStep?[m]=Yt(C):o===Ae.SimpleBezier?[m]=$n(C):m=`M${y},${x} ${s},${c}`,v.createElement("path",{d:m,fill:"none",className:"react-flow__connection-path",style:n})};zo.displayName="ConnectionLine";var Ms=t=>({nodeId:t.connectionNodeId,handleType:t.connectionHandleType,nodesConnectable:t.nodesConnectable,connectionStatus:t.connectionStatus,width:t.width,height:t.height});function Os({containerStyle:t,style:e,type:n,component:o}){let{nodeId:i,handleType:d,nodesConnectable:a,width:l,height:s,connectionStatus:c}=ne(Ms,ue);return i&&d&&l&&a?v.createElement("svg",{style:t,width:l,height:s,className:"react-flow__edges react-flow__connectionline react-flow__container"},v.createElement("g",{className:he(["react-flow__connection",c])},v.createElement(zo,{nodeId:i,handleType:d,style:e,type:n,CustomComponent:o,connectionStatus:c}))):null}function Lo(t,e){return(0,v.useRef)(null),le(),(0,v.useMemo)(()=>e(t),[t])}var $o=({nodeTypes:t,edgeTypes:e,onMove:n,onMoveStart:o,onMoveEnd:i,onInit:d,onNodeClick:a,onEdgeClick:l,onNodeDoubleClick:s,onEdgeDoubleClick:c,onNodeMouseEnter:u,onNodeMouseMove:r,onNodeMouseLeave:g,onNodeContextMenu:h,onSelectionContextMenu:p,onSelectionStart:f,onSelectionEnd:y,connectionLineType:x,connectionLineStyle:b,connectionLineComponent:N,connectionLineContainerStyle:m,selectionKeyCode:C,selectionOnDrag:M,selectionMode:_,multiSelectionKeyCode:P,panActivationKeyCode:j,zoomActivationKeyCode:w,deleteKeyCode:E,onlyRenderVisibleElements:O,elementsSelectable:k,selectNodesOnDrag:S,defaultViewport:D,translateExtent:L,minZoom:$,maxZoom:X,preventScrolling:R,defaultMarkerColor:T,zoomOnScroll:V,zoomOnPinch:F,panOnScroll:Z,panOnScrollSpeed:U,panOnScrollMode:I,zoomOnDoubleClick:A,panOnDrag:z,onPaneClick:H,onPaneMouseEnter:Y,onPaneMouseMove:G,onPaneMouseLeave:ee,onPaneScroll:ae,onPaneContextMenu:ge,onEdgeContextMenu:oe,onEdgeMouseEnter:J,onEdgeMouseMove:de,onEdgeMouseLeave:te,onReconnect:K,onReconnectStart:fe,onReconnectEnd:Me,reconnectRadius:tt,noDragClassName:ze,noWheelClassName:Le,noPanClassName:we,elevateEdgesOnSelect:$e,disableKeyboardA11y:Oe,nodeOrigin:_e,nodeExtent:Te,rfId:He})=>{let ce=Lo(t,ns),pe=Lo(e,ds);return Ns(d),v.createElement(es,{onPaneClick:H,onPaneMouseEnter:Y,onPaneMouseMove:G,onPaneMouseLeave:ee,onPaneContextMenu:ge,onPaneScroll:ae,deleteKeyCode:E,selectionKeyCode:C,selectionOnDrag:M,selectionMode:_,onSelectionStart:f,onSelectionEnd:y,multiSelectionKeyCode:P,panActivationKeyCode:j,zoomActivationKeyCode:w,elementsSelectable:k,onMove:n,onMoveStart:o,onMoveEnd:i,zoomOnScroll:V,zoomOnPinch:F,zoomOnDoubleClick:A,panOnScroll:Z,panOnScrollSpeed:U,panOnScrollMode:I,panOnDrag:z,defaultViewport:D,translateExtent:L,minZoom:$,maxZoom:X,onSelectionContextMenu:p,preventScrolling:R,noDragClassName:ze,noWheelClassName:Le,noPanClassName:we,disableKeyboardA11y:Oe},v.createElement(Cs,null,v.createElement(Es,{edgeTypes:pe,onEdgeClick:l,onEdgeDoubleClick:c,onlyRenderVisibleElements:O,onEdgeContextMenu:oe,onEdgeMouseEnter:J,onEdgeMouseMove:de,onEdgeMouseLeave:te,onReconnect:K,onReconnectStart:fe,onReconnectEnd:Me,reconnectRadius:tt,defaultMarkerColor:T,noPanClassName:we,elevateEdgesOnSelect:!!$e,disableKeyboardA11y:Oe,rfId:He},v.createElement(Os,{style:b,type:x,component:N,containerStyle:m})),v.createElement("div",{className:"react-flow__edgelabel-renderer"}),v.createElement(as,{nodeTypes:ce,onNodeClick:a,onNodeDoubleClick:s,onNodeMouseEnter:u,onNodeMouseMove:r,onNodeMouseLeave:g,onNodeContextMenu:h,selectNodesOnDrag:S,onlyRenderVisibleElements:O,noPanClassName:we,noDragClassName:ze,disableKeyboardA11y:Oe,nodeOrigin:_e,nodeExtent:Te,rfId:He})))};$o.displayName="GraphView";var _s=(0,v.memo)($o),cn=[[-1/0,-1/0],[1/0,1/0]],ke={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:cn,nodeExtent:cn,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionNodeId:null,connectionHandleId:null,connectionHandleType:"source",connectionPosition:{x:0,y:0},connectionStatus:null,connectionMode:We.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:oi,isValidConnection:void 0},js=()=>Xa((t,e)=>({...ke,setNodes:n=>{let{nodeInternals:o,nodeOrigin:i,elevateNodesOnSelect:d}=e();t({nodeInternals:on(n,o,i,d)})},getNodes:()=>Array.from(e().nodeInternals.values()),setEdges:n=>{let{defaultEdgeOptions:o={}}=e();t({edges:n.map(i=>({...o,...i}))})},setDefaultNodesAndEdges:(n,o)=>{let i=n!==void 0,d=o!==void 0;t({nodeInternals:i?on(n,new Map,e().nodeOrigin,e().elevateNodesOnSelect):new Map,edges:d?o:[],hasDefaultNodes:i,hasDefaultEdges:d})},updateNodeDimensions:n=>{let{onNodesChange:o,nodeInternals:i,fitViewOnInit:d,fitViewOnInitDone:a,fitViewOnInitOptions:l,domNode:s,nodeOrigin:c}=e(),u=s==null?void 0:s.querySelector(".react-flow__viewport");if(!u)return;let r=window.getComputedStyle(u),{m22:g}=new window.DOMMatrixReadOnly(r.transform),h=n.reduce((f,y)=>{let x=i.get(y.id);if(x!=null&&x.hidden)i.set(x.id,{...x,[re]:{...x[re],handleBounds:void 0}});else if(x){let b=Tt(y.nodeElement);b.width&&b.height&&(x.width!==b.width||x.height!==b.height||y.forceUpdate)&&(i.set(x.id,{...x,[re]:{...x[re],handleBounds:{source:Co(".source",y.nodeElement,g,c),target:Co(".target",y.nodeElement,g,c)}},...b}),f.push({id:x.id,type:"dimensions",dimensions:b}))}return f},[]);go(i,c);let p=a||d&&!a&&fo(e,{initial:!0,...l});t({nodeInternals:new Map(i),fitViewOnInitDone:p}),(h==null?void 0:h.length)>0&&(o==null||o(h))},updateNodePositions:(n,o=!0,i=!1)=>{let{triggerNodeChanges:d}=e();d(n.map(a=>{let l={id:a.id,type:"position",dragging:i};return o&&(l.positionAbsolute=a.positionAbsolute,l.position=a.position),l}))},triggerNodeChanges:n=>{let{onNodesChange:o,nodeInternals:i,hasDefaultNodes:d,nodeOrigin:a,getNodes:l,elevateNodesOnSelect:s}=e();n!=null&&n.length&&(d&&t({nodeInternals:on(bo(n,l()),i,a,s)}),o==null||o(n))},addSelectedNodes:n=>{let{multiSelectionActive:o,edges:i,getNodes:d}=e(),a,l=null;o?a=n.map(s=>Ne(s,!0)):(a=qe(d(),n),l=qe(i,[])),St({changedNodes:a,changedEdges:l,get:e,set:t})},addSelectedEdges:n=>{let{multiSelectionActive:o,edges:i,getNodes:d}=e(),a,l=null;o?a=n.map(s=>Ne(s,!0)):(a=qe(i,n),l=qe(d(),[])),St({changedNodes:l,changedEdges:a,get:e,set:t})},unselectNodesAndEdges:({nodes:n,edges:o}={})=>{let{edges:i,getNodes:d}=e(),a=n||d(),l=o||i;St({changedNodes:a.map(s=>(s.selected=!1,Ne(s.id,!1))),changedEdges:l.map(s=>Ne(s.id,!1)),get:e,set:t})},setMinZoom:n=>{let{d3Zoom:o,maxZoom:i}=e();o==null||o.scaleExtent([n,i]),t({minZoom:n})},setMaxZoom:n=>{let{d3Zoom:o,minZoom:i}=e();o==null||o.scaleExtent([i,n]),t({maxZoom:n})},setTranslateExtent:n=>{var o;(o=e().d3Zoom)==null||o.translateExtent(n),t({translateExtent:n})},resetSelectedElements:()=>{let{edges:n,getNodes:o}=e();St({changedNodes:o().filter(i=>i.selected).map(i=>Ne(i.id,!1)),changedEdges:n.filter(i=>i.selected).map(i=>Ne(i.id,!1)),get:e,set:t})},setNodeExtent:n=>{let{nodeInternals:o}=e();o.forEach(i=>{i.positionAbsolute=Ht(i.position,n)}),t({nodeExtent:n,nodeInternals:new Map(o)})},panBy:n=>{let{transform:o,width:i,height:d,d3Zoom:a,d3Selection:l,translateExtent:s}=e();if(!a||!l||!n.x&&!n.y)return!1;let c=Fe.translate(o[0]+n.x,o[1]+n.y).scale(o[2]),u=[[0,0],[i,d]],r=a==null?void 0:a.constrain()(c,u,s);return a.transform(l,r),o[0]!==r.x||o[1]!==r.y||o[2]!==r.k},cancelConnection:()=>t({connectionNodeId:ke.connectionNodeId,connectionHandleId:ke.connectionHandleId,connectionHandleType:ke.connectionHandleType,connectionStatus:ke.connectionStatus,connectionStartHandle:ke.connectionStartHandle,connectionEndHandle:ke.connectionEndHandle}),reset:()=>t({...ke})}),Object.is),un=({children:t})=>{let e=(0,v.useRef)(null);return e.current||(e.current=js()),v.createElement(Ua,{value:e.current},t)};un.displayName="ReactFlowProvider";var To=({children:t})=>(0,v.useContext)(ft)?v.createElement(v.Fragment,null,t):v.createElement(un,null,t);To.displayName="ReactFlowWrapper";var Ps={input:no,default:tn,output:ro,group:nn},Is={default:wt,straight:Kt,step:Zt,smoothstep:bt,simplebezier:Wt},Rs=[0,0],Ds=[15,15],As={x:0,y:0,zoom:1},Bs={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0},Ho=(0,v.forwardRef)(({nodes:t,edges:e,defaultNodes:n,defaultEdges:o,className:i,nodeTypes:d=Ps,edgeTypes:a=Is,onNodeClick:l,onEdgeClick:s,onInit:c,onMove:u,onMoveStart:r,onMoveEnd:g,onConnect:h,onConnectStart:p,onConnectEnd:f,onClickConnectStart:y,onClickConnectEnd:x,onNodeMouseEnter:b,onNodeMouseMove:N,onNodeMouseLeave:m,onNodeContextMenu:C,onNodeDoubleClick:M,onNodeDragStart:_,onNodeDrag:P,onNodeDragStop:j,onNodesDelete:w,onEdgesDelete:E,onSelectionChange:O,onSelectionDragStart:k,onSelectionDrag:S,onSelectionDragStop:D,onSelectionContextMenu:L,onSelectionStart:$,onSelectionEnd:X,connectionMode:R=We.Strict,connectionLineType:T=Ae.Bezier,connectionLineStyle:V,connectionLineComponent:F,connectionLineContainerStyle:Z,deleteKeyCode:U="Backspace",selectionKeyCode:I="Shift",selectionOnDrag:A=!1,selectionMode:z=yt.Full,panActivationKeyCode:H="Space",multiSelectionKeyCode:Y=mt()?"Meta":"Control",zoomActivationKeyCode:G=mt()?"Meta":"Control",snapToGrid:ee=!1,snapGrid:ae=Ds,onlyRenderVisibleElements:ge=!1,selectNodesOnDrag:oe=!0,nodesDraggable:J,nodesConnectable:de,nodesFocusable:te,nodeOrigin:K=Rs,edgesFocusable:fe,edgesUpdatable:Me,elementsSelectable:tt,defaultViewport:ze=As,minZoom:Le=.5,maxZoom:we=2,translateExtent:$e=cn,preventScrolling:Oe=!0,nodeExtent:_e,defaultMarkerColor:Te="#b1b1b7",zoomOnScroll:He=!0,zoomOnPinch:ce=!0,panOnScroll:pe=!1,panOnScrollSpeed:je=.5,panOnScrollMode:Pe=Ye.Free,zoomOnDoubleClick:Ie=!0,panOnDrag:be=!0,onPaneClick:Ee,onPaneMouseEnter:nt,onPaneMouseMove:Mt,onPaneMouseLeave:ot,onPaneScroll:Re,onPaneContextMenu:lr,children:dr,onEdgeContextMenu:cr,onEdgeDoubleClick:ur,onEdgeMouseEnter:hr,onEdgeMouseMove:gr,onEdgeMouseLeave:fr,onEdgeUpdate:pr,onEdgeUpdateStart:mr,onEdgeUpdateEnd:yr,onReconnect:vr,onReconnectStart:br,onReconnectEnd:xr,reconnectRadius:wr=10,edgeUpdaterRadius:Er=10,onNodesChange:Sr,onEdgesChange:Cr,noDragClassName:Nr="nodrag",noWheelClassName:kr="nowheel",noPanClassName:mn="nopan",fitView:Mr=!1,fitViewOptions:Or,connectOnClick:_r=!0,attributionPosition:jr,proOptions:Pr,defaultEdgeOptions:Ir,elevateNodesOnSelect:Rr=!0,elevateEdgesOnSelect:Dr=!1,disableKeyboardA11y:yn=!1,autoPanOnConnect:Ar=!0,autoPanOnNodeDrag:Br=!0,connectionRadius:zr=20,isValidConnection:Lr,onError:$r,style:Tr,id:vn,nodeDragThreshold:Hr,...Vr},Fr)=>{let Ot=vn||"1";return v.createElement("div",{...Vr,style:{...Tr,...Bs},ref:Fr,className:he(["react-flow",i]),"data-testid":"rf__wrapper",id:vn},v.createElement(To,null,v.createElement(_s,{onInit:c,onMove:u,onMoveStart:r,onMoveEnd:g,onNodeClick:l,onEdgeClick:s,onNodeMouseEnter:b,onNodeMouseMove:N,onNodeMouseLeave:m,onNodeContextMenu:C,onNodeDoubleClick:M,nodeTypes:d,edgeTypes:a,connectionLineType:T,connectionLineStyle:V,connectionLineComponent:F,connectionLineContainerStyle:Z,selectionKeyCode:I,selectionOnDrag:A,selectionMode:z,deleteKeyCode:U,multiSelectionKeyCode:Y,panActivationKeyCode:H,zoomActivationKeyCode:G,onlyRenderVisibleElements:ge,selectNodesOnDrag:oe,defaultViewport:ze,translateExtent:$e,minZoom:Le,maxZoom:we,preventScrolling:Oe,zoomOnScroll:He,zoomOnPinch:ce,zoomOnDoubleClick:Ie,panOnScroll:pe,panOnScrollSpeed:je,panOnScrollMode:Pe,panOnDrag:be,onPaneClick:Ee,onPaneMouseEnter:nt,onPaneMouseMove:Mt,onPaneMouseLeave:ot,onPaneScroll:Re,onPaneContextMenu:lr,onSelectionContextMenu:L,onSelectionStart:$,onSelectionEnd:X,onEdgeContextMenu:cr,onEdgeDoubleClick:ur,onEdgeMouseEnter:hr,onEdgeMouseMove:gr,onEdgeMouseLeave:fr,onReconnect:vr??pr,onReconnectStart:br??mr,onReconnectEnd:xr??yr,reconnectRadius:wr??Er,defaultMarkerColor:Te,noDragClassName:Nr,noWheelClassName:kr,noPanClassName:mn,elevateEdgesOnSelect:Dr,rfId:Ot,disableKeyboardA11y:yn,nodeOrigin:K,nodeExtent:_e}),v.createElement(ki,{nodes:t,edges:e,defaultNodes:n,defaultEdges:o,onConnect:h,onConnectStart:p,onConnectEnd:f,onClickConnectStart:y,onClickConnectEnd:x,nodesDraggable:J,nodesConnectable:de,nodesFocusable:te,edgesFocusable:fe,edgesUpdatable:Me,elementsSelectable:tt,elevateNodesOnSelect:Rr,minZoom:Le,maxZoom:we,nodeExtent:_e,onNodesChange:Sr,onEdgesChange:Cr,snapToGrid:ee,snapGrid:ae,connectionMode:R,translateExtent:$e,connectOnClick:_r,defaultEdgeOptions:Ir,fitView:Mr,fitViewOptions:Or,onNodesDelete:w,onEdgesDelete:E,onNodeDragStart:_,onNodeDrag:P,onNodeDragStop:j,onSelectionDrag:S,onSelectionDragStart:k,onSelectionDragStop:D,noPanClassName:mn,nodeOrigin:K,rfId:Ot,autoPanOnConnect:Ar,autoPanOnNodeDrag:Br,onError:$r,connectionRadius:zr,isValidConnection:Lr,nodeDragThreshold:Hr}),v.createElement(Ci,{onSelectionChange:O}),dr,v.createElement(Qa,{proOptions:Pr,position:jr}),v.createElement(Pi,{rfId:Ot,disableKeyboardA11y:yn})))});Ho.displayName="ReactFlow";function Vo(t){return e=>{let[n,o]=(0,v.useState)(e);return[n,o,(0,v.useCallback)(i=>o(d=>t(i,d)),[])]}}var zs=Vo(bo),Ls=Vo(Wi);function $s(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},v.createElement("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"}))}function Ts(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},v.createElement("path",{d:"M0 0h32v4.2H0z"}))}function Hs(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},v.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 Vs(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},v.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 Fs(){return v.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},v.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"}))}var et=({children:t,className:e,...n})=>v.createElement("button",{type:"button",className:he(["react-flow__controls-button",e]),...n},t);et.displayName="ControlButton";var Xs=t=>({isInteractive:t.nodesDraggable||t.nodesConnectable||t.elementsSelectable,minZoomReached:t.transform[2]<=t.minZoom,maxZoomReached:t.transform[2]>=t.maxZoom}),Fo=({style:t,showZoom:e=!0,showFitView:n=!0,showInteractive:o=!0,fitViewOptions:i,onZoomIn:d,onZoomOut:a,onFitView:l,onInteractiveChange:s,className:c,children:u,position:r="bottom-left"})=>{let g=le(),[h,p]=(0,v.useState)(!1),{isInteractive:f,minZoomReached:y,maxZoomReached:x}=ne(Xs,ue),{zoomIn:b,zoomOut:N,fitView:m}=lt();if((0,v.useEffect)(()=>{p(!0)},[]),!h)return null;let C=()=>{b(),d==null||d()},M=()=>{N(),a==null||a()},_=()=>{m(i),l==null||l()},P=()=>{g.setState({nodesDraggable:!f,nodesConnectable:!f,elementsSelectable:!f}),s==null||s(!f)};return v.createElement(pt,{className:he(["react-flow__controls",c]),position:r,style:t,"data-testid":"rf__controls"},e&&v.createElement(v.Fragment,null,v.createElement(et,{onClick:C,className:"react-flow__controls-zoomin",title:"zoom in","aria-label":"zoom in",disabled:x},v.createElement($s,null)),v.createElement(et,{onClick:M,className:"react-flow__controls-zoomout",title:"zoom out","aria-label":"zoom out",disabled:y},v.createElement(Ts,null))),n&&v.createElement(et,{className:"react-flow__controls-fitview",onClick:_,title:"fit view","aria-label":"fit view"},v.createElement(Hs,null)),o&&v.createElement(et,{className:"react-flow__controls-interactive",onClick:P,title:"toggle interactivity","aria-label":"toggle interactivity"},f?v.createElement(Fs,null):v.createElement(Vs,null)),u)};Fo.displayName="Controls";var Ws=(0,v.memo)(Fo),ye;(function(t){t.Lines="lines",t.Dots="dots",t.Cross="cross"})(ye||(ye={}));function Ys({color:t,dimensions:e,lineWidth:n}){return v.createElement("path",{stroke:t,strokeWidth:n,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})}function Zs({color:t,radius:e}){return v.createElement("circle",{cx:e,cy:e,r:e,fill:t})}var Ks={[ye.Dots]:"#91919a",[ye.Lines]:"#eee",[ye.Cross]:"#e2e2e2"},Gs={[ye.Dots]:1,[ye.Lines]:1,[ye.Cross]:6},Us=t=>({transform:t.transform,patternId:`pattern-${t.rfId}`});function Xo({id:t,variant:e=ye.Dots,gap:n=20,size:o,lineWidth:i=1,offset:d=2,color:a,style:l,className:s}){let c=(0,v.useRef)(null),{transform:u,patternId:r}=ne(Us,ue),g=a||Ks[e],h=o||Gs[e],p=e===ye.Dots,f=e===ye.Cross,y=Array.isArray(n)?n:[n,n],x=[y[0]*u[2]||1,y[1]*u[2]||1],b=h*u[2],N=f?[b,b]:x,m=p?[b/d,b/d]:[N[0]/d,N[1]/d];return v.createElement("svg",{className:he(["react-flow__background",s]),style:{...l,position:"absolute",width:"100%",height:"100%",top:0,left:0},ref:c,"data-testid":"rf__background"},v.createElement("pattern",{id:r+t,x:u[0]%x[0],y:u[1]%x[1],width:x[0],height:x[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${m[0]},-${m[1]})`},p?v.createElement(Zs,{color:g,radius:b/d}):v.createElement(Ys,{dimensions:N,color:g,lineWidth:i})),v.createElement("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${r+t})`}))}Xo.displayName="Background";var qs=(0,v.memo)(Xo),Qs=De();function Wo(t){return Math.min(t*11+35,200)}const hn="outputs",gn="inputs";var Js=class{createEdge(t,e){return{animated:!0,markerEnd:{type:vt.ArrowClosed},id:`${t}-${e}`,style:{strokeWidth:2},source:t,sourceHandle:hn,targetHandle:gn,target:e}}createNode(t,e){let n=jt.get(e).code.trim().split(`
|
|
2
|
+
`).length,o=Wo(n);return{id:t,data:{atom:e,forceWidth:300},width:300,type:"custom",height:o,position:{x:0,y:0}}}createElements(t,e,n,o,i){var u,r;let d=[],a=[],l=new Set,s=new Set;for(let g of Object.values(n)){if(g.value==="marimo"&&g.name==="mo")continue;let{declaredBy:h,usedBy:p}=g;for(let f of h)for(let y of p){let x=`${f}-${y}`;s.has(x)||(s.add(x),l.add(f),l.add(y),a.push(this.createEdge(f,y)))}}let c=ea().cellRuntime;for(let[g,h]of sa.zip(t,e)){let p=jt.get(h).code.trim(),f=l.has(g),y=p.startsWith("mo.md"),x=((r=(u=c[g])==null?void 0:u.serialization)==null?void 0:r.toLowerCase())==="valid";o&&y&&!f||i&&x&&!f||d.push(this.createNode(g,h))}return{nodes:d,edges:a}}},B=_t(aa(),1);function el(t){return Math.min(Math.max(t-100,100),400)}const Yo=v.createContext("LR"),Zo=(0,v.memo)(t=>{let e=(0,Qs.c)(51),{data:n,selected:o}=t,i=It(n.atom),d=Rt().inOrderIds.indexOf(i.id),a=o?"var(--gray-9)":"var(--gray-3)",l=ne(nl),s=(0,v.use)(Yo),c,u,r,g;if(e[0]!==i.code||e[1]!==a||e[2]!==s||e[3]!==o){let w=i.code.split(`
|
|
3
|
+
`).length,E=s==="LR"?W.Left:W.Top,O;e[8]===a?O=e[9]:(O={background:a},e[8]=a,e[9]=O),e[10]!==E||e[11]!==O?(r=(0,B.jsx)(Ce,{type:"target",id:gn,"data-testid":"input-one",position:E,style:O}),e[10]=E,e[11]=O,e[12]=r):r=e[12];let k=s==="LR"?W.Left:W.Top,S;e[13]===a?S=e[14]:(S={background:a},e[13]=a,e[14]=S),e[15]!==k||e[16]!==S?(g=(0,B.jsx)(Ce,{type:"source",id:gn,"data-testid":"input-two",position:k,style:S}),e[15]=k,e[16]=S,e[17]=g):g=e[17];let D=o&&"border-primary";e[18]===D?u=e[19]:(u=Ve("flex flex-col bg-card border border-input/50 rounded-md mx-[2px] overflow-hidden",D),e[18]=D,e[19]=u),c=Wo(w),e[0]=i.code,e[1]=a,e[2]=s,e[3]=o,e[4]=c,e[5]=u,e[6]=r,e[7]=g}else c=e[4],u=e[5],r=e[6],g=e[7];let h;e[20]!==n.forceWidth||e[21]!==l?(h=n.forceWidth||el(l),e[20]=n.forceWidth,e[21]=l,e[22]=h):h=e[22];let p;e[23]!==c||e[24]!==h?(p={height:c,width:h},e[23]=c,e[24]=h,e[25]=p):p=e[25];let f=ta(i.name,d),y;e[26]===f?y=e[27]:(y=(0,B.jsx)("div",{className:"text-muted-foreground font-semibold text-xs py-1 px-2 bg-muted border-b",children:f}),e[26]=f,e[27]=y);let x;e[28]===i.code?x=e[29]:(x=(0,B.jsx)(Da,{code:i.code}),e[28]=i.code,e[29]=x);let b;e[30]!==u||e[31]!==p||e[32]!==y||e[33]!==x?(b=(0,B.jsxs)("div",{className:u,style:p,children:[y,x]}),e[30]=u,e[31]=p,e[32]=y,e[33]=x,e[34]=b):b=e[34];let N=s==="LR"?W.Right:W.Bottom,m;e[35]===a?m=e[36]:(m={background:a},e[35]=a,e[36]=m);let C;e[37]!==N||e[38]!==m?(C=(0,B.jsx)(Ce,{type:"source",id:hn,"data-testid":"output-one",position:N,style:m}),e[37]=N,e[38]=m,e[39]=C):C=e[39];let M=s==="LR"?W.Right:W.Bottom,_;e[40]===a?_=e[41]:(_={background:a},e[40]=a,e[41]=_);let P;e[42]!==M||e[43]!==_?(P=(0,B.jsx)(Ce,{type:"target",id:hn,"data-testid":"output-two",position:M,style:_}),e[42]=M,e[43]=_,e[44]=P):P=e[44];let j;return e[45]!==b||e[46]!==C||e[47]!==P||e[48]!==r||e[49]!==g?(j=(0,B.jsxs)("div",{children:[r,g,b,C,P]}),e[45]=b,e[46]=C,e[47]=P,e[48]=r,e[49]=g,e[50]=j):j=e[50],j},(t,e)=>["data","selected","id"].every(n=>t[n]===e[n]));Zo.displayName="CustomNode";const tl={custom:Zo};function nl(t){let{width:e}=t;return e}var Ko=De();const Go=(0,v.memo)(t=>{let e=(0,Ko.c)(48),{onChange:n,view:o,settings:i,onSettingsChange:d}=t,a;e[0]!==d||e[1]!==i?(a=(L,$)=>{d({...i,[L]:$})},e[0]=d,e[1]=i,e[2]=a):a=e[2];let l=a,s=(0,v.useId)(),c=(0,v.useId)(),u;e[3]===Symbol.for("react.memo_cache_sentinel")?(u=(0,B.jsx)(ba,{asChild:!0,children:(0,B.jsx)(rt,{variant:"text",size:"xs",children:(0,B.jsx)(pa,{className:"w-4 h-4"})})}),e[3]=u):u=e[3];let r;e[4]===Symbol.for("react.memo_cache_sentinel")?(r=(0,B.jsx)("div",{className:"font-semibold pb-4",children:"Settings"}),e[4]=r):r=e[4];let g;e[5]===l?g=e[6]:(g=L=>l("hidePureMarkdown",!!L),e[5]=l,e[6]=g);let h;e[7]!==s||e[8]!==i.hidePureMarkdown||e[9]!==g?(h=(0,B.jsx)(xn,{"data-testid":"hide-pure-markdown-checkbox",id:s,checked:i.hidePureMarkdown,onCheckedChange:g}),e[7]=s,e[8]=i.hidePureMarkdown,e[9]=g,e[10]=h):h=e[10];let p;e[11]===s?p=e[12]:(p=(0,B.jsx)(Cn,{htmlFor:s,children:"Hide pure markdown"}),e[11]=s,e[12]=p);let f;e[13]!==h||e[14]!==p?(f=(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[h,p]}),e[13]=h,e[14]=p,e[15]=f):f=e[15];let y;e[16]===l?y=e[17]:(y=L=>l("hideReusableFunctions",!!L),e[16]=l,e[17]=y);let x;e[18]!==c||e[19]!==i.hideReusableFunctions||e[20]!==y?(x=(0,B.jsx)(xn,{"data-testid":"hide-reusable-functions-checkbox",id:c,checked:i.hideReusableFunctions,onCheckedChange:y}),e[18]=c,e[19]=i.hideReusableFunctions,e[20]=y,e[21]=x):x=e[21];let b;e[22]===c?b=e[23]:(b=(0,B.jsx)(Cn,{htmlFor:c,children:"Hide reusable functions"}),e[22]=c,e[23]=b);let N;e[24]!==b||e[25]!==x?(N=(0,B.jsxs)("div",{className:"flex items-center gap-2",children:[x,b]}),e[24]=b,e[25]=x,e[26]=N):N=e[26];let m;e[27]!==N||e[28]!==f?(m=(0,B.jsxs)(Sa,{children:[u,(0,B.jsxs)(wa,{className:"w-auto p-2 text-muted-foreground",children:[r,(0,B.jsxs)("div",{className:"flex flex-col gap-2",children:[f,N]})]})]}),e[27]=N,e[28]=f,e[29]=m):m=e[29];let C=m,M=o==="TB",_;e[30]===n?_=e[31]:(_=()=>n("TB"),e[30]=n,e[31]=_);let P;e[32]===Symbol.for("react.memo_cache_sentinel")?(P=(0,B.jsx)(En,{className:"w-4 h-4 mr-1"}),e[32]=P):P=e[32];let j;e[33]!==M||e[34]!==_?(j=(0,B.jsxs)(rt,{variant:"outline",className:"bg-background","aria-selected":M,size:"xs",onClick:_,children:[P,"Vertical Tree"]}),e[33]=M,e[34]=_,e[35]=j):j=e[35];let w=o==="LR",E;e[36]===n?E=e[37]:(E=()=>n("LR"),e[36]=n,e[37]=E);let O;e[38]===Symbol.for("react.memo_cache_sentinel")?(O=(0,B.jsx)(En,{className:"w-4 h-4 mr-1 transform -rotate-90"}),e[38]=O):O=e[38];let k;e[39]!==w||e[40]!==E?(k=(0,B.jsxs)(rt,{variant:"outline",className:"bg-background","aria-selected":w,size:"xs",onClick:E,children:[O," ","Horizontal Tree"]}),e[39]=w,e[40]=E,e[41]=k):k=e[41];let S;e[42]!==j||e[43]!==k?(S=(0,B.jsxs)("div",{className:"flex gap-2",children:[j,k]}),e[42]=j,e[43]=k,e[44]=S):S=e[44];let D;return e[45]!==C||e[46]!==S?(D=(0,B.jsxs)(pt,{position:"top-right",className:"flex flex-col items-end gap-2",children:[S,C]}),e[45]=C,e[46]=S,e[47]=D):D=e[47],D});Go.displayName="GraphToolbar";const Uo=(0,v.memo)(t=>{let e=(0,Ko.c)(11),{selection:n,variables:o,onClearSelection:i}=t;if(!n)return null;let d=ol,a;e[0]!==i||e[1]!==n.id||e[2]!==n.source||e[3]!==n.target||e[4]!==n.type||e[5]!==o?(a=()=>{if(n.type==="node"){let u=Object.values(o).filter(h=>h.usedBy.includes(n.id)),r=Object.values(o).filter(h=>h.declaredBy.includes(n.id)),g=(h,p)=>(0,B.jsxs)(B.Fragment,{children:[h.length===0&&(0,B.jsx)("div",{className:"text-muted-foreground text-sm text-center",children:"--"}),(0,B.jsx)("div",{className:"grid grid-cols-5 gap-3 items-center text-sm py-1 flex-1 empty:hidden",children:h.map(f=>(0,B.jsxs)(v.Fragment,{children:[(0,B.jsx)(kn,{declaredBy:f.declaredBy,name:f.name}),(0,B.jsxs)("div",{className:"truncate col-span-2",title:f.value??"",children:[f.value,(0,B.jsxs)("span",{className:"ml-1 truncate text-foreground/60 font-mono",children:["(",f.dataType,")"]})]}),(0,B.jsx)("div",{className:"truncate col-span-2 gap-1 items-center",children:(0,B.jsx)(Aa,{skipScroll:!0,onClick:()=>d(p==="in"?f.declaredBy[0]:f.usedBy[0],f.name),maxCount:3,cellIds:f.usedBy})})]},f.name))})]});return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)("div",{className:"font-bold py-2 flex items-center gap-2 border-b px-3",children:[(0,B.jsx)(ma,{className:"w-5 h-5"}),(0,B.jsx)(At,{cellId:n.id}),(0,B.jsx)("div",{className:"flex-1"}),(0,B.jsx)(da,{cellId:n.id,children:(0,B.jsx)(rt,{variant:"ghost",size:"icon",children:(0,B.jsx)(fa,{className:"w-4 h-4"})})}),(0,B.jsx)(rt,{variant:"text",size:"icon",onClick:()=>{i()},children:(0,B.jsx)(ua,{className:"w-4 h-4"})})]}),(0,B.jsxs)("div",{className:"text-sm flex flex-col py-3 pl-2 pr-4 flex-1 justify-center",children:[(0,B.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,B.jsxs)("span",{className:"flex items-center gap-2 font-semibold",children:[(0,B.jsx)(za,{className:"w-4 h-4"}),"Outputs"]}),g(r,"out")]}),(0,B.jsx)("hr",{className:"border-divider my-3"}),(0,B.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,B.jsxs)("span",{className:"flex items-center gap-2 font-semibold",children:[(0,B.jsx)(La,{className:"w-4 h-4"}),"Inputs"]}),g(u,"in")]})]})]})}if(n.type==="edge"){let u=Object.values(o).filter(r=>r.declaredBy.includes(n.source)&&r.usedBy.includes(n.target));return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)("div",{className:"font-bold py-2 flex items-center gap-2 border-b px-3",children:[(0,B.jsx)(ya,{className:"w-4 h-4"}),(0,B.jsx)(At,{cellId:n.source}),(0,B.jsx)(la,{className:"w-4 h-4"}),(0,B.jsx)(At,{cellId:n.target})]}),(0,B.jsx)("div",{className:"grid grid-cols-4 gap-3 max-w-[350px] items-center text-sm p-3 flex-1",children:u.map(r=>(0,B.jsxs)(v.Fragment,{children:[(0,B.jsx)(kn,{declaredBy:r.declaredBy,name:r.name,onClick:()=>{d(r.declaredBy[0],r.name)}}),(0,B.jsx)("div",{className:"truncate text-foreground/60 font-mono",children:r.dataType}),(0,B.jsx)("div",{className:"truncate col-span-2",title:r.value??"",children:r.value})]},r.name))})]})}},e[0]=i,e[1]=n.id,e[2]=n.source,e[3]=n.target,e[4]=n.type,e[5]=o,e[6]=a):a=e[6];let l=a,s;e[7]===l?s=e[8]:(s=l(),e[7]=l,e[8]=s);let c;return e[9]===s?c=e[10]:(c=(0,B.jsx)(pt,{position:"bottom-left",className:"max-h-[90%] flex flex-col w-[calc(100%-5rem)]",children:(0,B.jsx)("div",{className:"min-h-[100px] shadow-md rounded-md border max-w-[550px] border-primary/40 my-4 min-w-[240px] bg-(--slate-1) text-muted-foreground/80 flex flex-col overflow-y-auto",children:s})}),e[9]=s,e[10]=c),c});Uo.displayName="GraphSelectionPanel";function ol(t,e){let n=Jr(t);n&&Ur(n,e)}var fn=q(((t,e)=>{var n="\0",o="\0",i="",d=class{constructor(r){ie(this,"_isDirected",!0);ie(this,"_isMultigraph",!1);ie(this,"_isCompound",!1);ie(this,"_label");ie(this,"_defaultNodeLabelFn",()=>{});ie(this,"_defaultEdgeLabelFn",()=>{});ie(this,"_nodes",{});ie(this,"_in",{});ie(this,"_preds",{});ie(this,"_out",{});ie(this,"_sucs",{});ie(this,"_edgeObjs",{});ie(this,"_edgeLabels",{});ie(this,"_nodeCount",0);ie(this,"_edgeCount",0);ie(this,"_parent");ie(this,"_children");r&&(this._isDirected=Object.hasOwn(r,"directed")?r.directed:!0,this._isMultigraph=Object.hasOwn(r,"multigraph")?r.multigraph:!1,this._isCompound=Object.hasOwn(r,"compound")?r.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[o]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(r){return this._label=r,this}graph(){return this._label}setDefaultNodeLabel(r){return this._defaultNodeLabelFn=r,typeof r!="function"&&(this._defaultNodeLabelFn=()=>r),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var r=this;return this.nodes().filter(g=>Object.keys(r._in[g]).length===0)}sinks(){var r=this;return this.nodes().filter(g=>Object.keys(r._out[g]).length===0)}setNodes(r,g){var h=arguments,p=this;return r.forEach(function(f){h.length>1?p.setNode(f,g):p.setNode(f)}),this}setNode(r,g){return Object.hasOwn(this._nodes,r)?(arguments.length>1&&(this._nodes[r]=g),this):(this._nodes[r]=arguments.length>1?g:this._defaultNodeLabelFn(r),this._isCompound&&(this._parent[r]=o,this._children[r]={},this._children[o][r]=!0),this._in[r]={},this._preds[r]={},this._out[r]={},this._sucs[r]={},++this._nodeCount,this)}node(r){return this._nodes[r]}hasNode(r){return Object.hasOwn(this._nodes,r)}removeNode(r){var g=this;if(Object.hasOwn(this._nodes,r)){var h=p=>g.removeEdge(g._edgeObjs[p]);delete this._nodes[r],this._isCompound&&(this._removeFromParentsChildList(r),delete this._parent[r],this.children(r).forEach(function(p){g.setParent(p)}),delete this._children[r]),Object.keys(this._in[r]).forEach(h),delete this._in[r],delete this._preds[r],Object.keys(this._out[r]).forEach(h),delete this._out[r],delete this._sucs[r],--this._nodeCount}return this}setParent(r,g){if(!this._isCompound)throw Error("Cannot set parent in a non-compound graph");if(g===void 0)g=o;else{g+="";for(var h=g;h!==void 0;h=this.parent(h))if(h===r)throw Error("Setting "+g+" as parent of "+r+" would create a cycle");this.setNode(g)}return this.setNode(r),this._removeFromParentsChildList(r),this._parent[r]=g,this._children[g][r]=!0,this}_removeFromParentsChildList(r){delete this._children[this._parent[r]][r]}parent(r){if(this._isCompound){var g=this._parent[r];if(g!==o)return g}}children(r=o){if(this._isCompound){var g=this._children[r];if(g)return Object.keys(g)}else{if(r===o)return this.nodes();if(this.hasNode(r))return[]}}predecessors(r){var g=this._preds[r];if(g)return Object.keys(g)}successors(r){var g=this._sucs[r];if(g)return Object.keys(g)}neighbors(r){var g=this.predecessors(r);if(g){let p=new Set(g);for(var h of this.successors(r))p.add(h);return Array.from(p.values())}}isLeaf(r){return(this.isDirected()?this.successors(r):this.neighbors(r)).length===0}filterNodes(r){var g=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});g.setGraph(this.graph());var h=this;Object.entries(this._nodes).forEach(function([y,x]){r(y)&&g.setNode(y,x)}),Object.values(this._edgeObjs).forEach(function(y){g.hasNode(y.v)&&g.hasNode(y.w)&&g.setEdge(y,h.edge(y))});var p={};function f(y){var x=h.parent(y);return x===void 0||g.hasNode(x)?(p[y]=x,x):x in p?p[x]:f(x)}return this._isCompound&&g.nodes().forEach(y=>g.setParent(y,f(y))),g}setDefaultEdgeLabel(r){return this._defaultEdgeLabelFn=r,typeof r!="function"&&(this._defaultEdgeLabelFn=()=>r),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(r,g){var h=this,p=arguments;return r.reduce(function(f,y){return p.length>1?h.setEdge(f,y,g):h.setEdge(f,y),y}),this}setEdge(){var r,g,h,p,f=!1,y=arguments[0];typeof y=="object"&&y&&"v"in y?(r=y.v,g=y.w,h=y.name,arguments.length===2&&(p=arguments[1],f=!0)):(r=y,g=arguments[1],h=arguments[3],arguments.length>2&&(p=arguments[2],f=!0)),r=""+r,g=""+g,h!==void 0&&(h=""+h);var x=s(this._isDirected,r,g,h);if(Object.hasOwn(this._edgeLabels,x))return f&&(this._edgeLabels[x]=p),this;if(h!==void 0&&!this._isMultigraph)throw Error("Cannot set a named edge when isMultigraph = false");this.setNode(r),this.setNode(g),this._edgeLabels[x]=f?p:this._defaultEdgeLabelFn(r,g,h);var b=c(this._isDirected,r,g,h);return r=b.v,g=b.w,Object.freeze(b),this._edgeObjs[x]=b,a(this._preds[g],r),a(this._sucs[r],g),this._in[g][x]=b,this._out[r][x]=b,this._edgeCount++,this}edge(r,g,h){var p=arguments.length===1?u(this._isDirected,arguments[0]):s(this._isDirected,r,g,h);return this._edgeLabels[p]}edgeAsObj(){let r=this.edge(...arguments);return typeof r=="object"?r:{label:r}}hasEdge(r,g,h){var p=arguments.length===1?u(this._isDirected,arguments[0]):s(this._isDirected,r,g,h);return Object.hasOwn(this._edgeLabels,p)}removeEdge(r,g,h){var p=arguments.length===1?u(this._isDirected,arguments[0]):s(this._isDirected,r,g,h),f=this._edgeObjs[p];return f&&(r=f.v,g=f.w,delete this._edgeLabels[p],delete this._edgeObjs[p],l(this._preds[g],r),l(this._sucs[r],g),delete this._in[g][p],delete this._out[r][p],this._edgeCount--),this}inEdges(r,g){var h=this._in[r];if(h){var p=Object.values(h);return g?p.filter(f=>f.v===g):p}}outEdges(r,g){var h=this._out[r];if(h){var p=Object.values(h);return g?p.filter(f=>f.w===g):p}}nodeEdges(r,g){var h=this.inEdges(r,g);if(h)return h.concat(this.outEdges(r,g))}};function a(r,g){r[g]?r[g]++:r[g]=1}function l(r,g){--r[g]||delete r[g]}function s(r,g,h,p){var f=""+g,y=""+h;if(!r&&f>y){var x=f;f=y,y=x}return f+i+y+i+(p===void 0?n:p)}function c(r,g,h,p){var f=""+g,y=""+h;if(!r&&f>y){var x=f;f=y,y=x}var b={v:f,w:y};return p&&(b.name=p),b}function u(r,g){return s(r,g.v,g.w,g.name)}e.exports=d})),rl=q(((t,e)=>{e.exports="2.2.4"})),al=q(((t,e)=>{e.exports={Graph:fn(),version:rl()}})),il=q(((t,e)=>{var n=fn();e.exports={write:o,read:a};function o(l){var s={options:{directed:l.isDirected(),multigraph:l.isMultigraph(),compound:l.isCompound()},nodes:i(l),edges:d(l)};return l.graph()!==void 0&&(s.value=structuredClone(l.graph())),s}function i(l){return l.nodes().map(function(s){var c=l.node(s),u=l.parent(s),r={v:s};return c!==void 0&&(r.value=c),u!==void 0&&(r.parent=u),r})}function d(l){return l.edges().map(function(s){var c=l.edge(s),u={v:s.v,w:s.w};return s.name!==void 0&&(u.name=s.name),c!==void 0&&(u.value=c),u})}function a(l){var s=new n(l.options).setGraph(l.value);return l.nodes.forEach(function(c){s.setNode(c.v,c.value),c.parent&&s.setParent(c.v,c.parent)}),l.edges.forEach(function(c){s.setEdge({v:c.v,w:c.w,name:c.name},c.value)}),s}})),sl=q(((t,e)=>{e.exports=n;function n(o){var i={},d=[],a;function l(s){Object.hasOwn(i,s)||(i[s]=!0,a.push(s),o.successors(s).forEach(l),o.predecessors(s).forEach(l))}return o.nodes().forEach(function(s){a=[],l(s),a.length&&d.push(a)}),d}})),qo=q(((t,e)=>{e.exports=class{constructor(){ie(this,"_arr",[]);ie(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var o=this._keyIndices[n];if(o!==void 0)return this._arr[o].priority}min(){if(this.size()===0)throw Error("Queue underflow");return this._arr[0].key}add(n,o){var i=this._keyIndices;if(n=String(n),!Object.hasOwn(i,n)){var d=this._arr,a=d.length;return i[n]=a,d.push({key:n,priority:o}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,o){var i=this._keyIndices[n];if(o>this._arr[i].priority)throw Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[i].priority+" New: "+o);this._arr[i].priority=o,this._decrease(i)}_heapify(n){var o=this._arr,i=2*n,d=i+1,a=n;i<o.length&&(a=o[i].priority<o[a].priority?i:a,d<o.length&&(a=o[d].priority<o[a].priority?d:a),a!==n&&(this._swap(n,a),this._heapify(a)))}_decrease(n){for(var o=this._arr,i=o[n].priority,d;n!==0&&(d=n>>1,!(o[d].priority<i));)this._swap(n,d),n=d}_swap(n,o){var i=this._arr,d=this._keyIndices,a=i[n],l=i[o];i[n]=l,i[o]=a,d[l.key]=n,d[a.key]=o}}})),Qo=q(((t,e)=>{var n=qo();e.exports=i;var o=()=>1;function i(a,l,s,c){return d(a,String(l),s||o,c||function(u){return a.outEdges(u)})}function d(a,l,s,c){var u={},r=new n,g,h,p=function(f){var y=f.v===g?f.w:f.v,x=u[y],b=s(f),N=h.distance+b;if(b<0)throw Error("dijkstra does not allow negative edge weights. Bad edge: "+f+" Weight: "+b);N<x.distance&&(x.distance=N,x.predecessor=g,r.decrease(y,N))};for(a.nodes().forEach(function(f){var y=f===l?0:1/0;u[f]={distance:y},r.add(f,y)});r.size()>0&&(g=r.removeMin(),h=u[g],h.distance!==1/0);)c(g).forEach(p);return u}})),ll=q(((t,e)=>{var n=Qo();e.exports=o;function o(i,d,a){return i.nodes().reduce(function(l,s){return l[s]=n(i,s,d,a),l},{})}})),Jo=q(((t,e)=>{e.exports=n;function n(o){var i=0,d=[],a={},l=[];function s(c){var u=a[c]={onStack:!0,lowlink:i,index:i++};if(d.push(c),o.successors(c).forEach(function(h){Object.hasOwn(a,h)?a[h].onStack&&(u.lowlink=Math.min(u.lowlink,a[h].index)):(s(h),u.lowlink=Math.min(u.lowlink,a[h].lowlink))}),u.lowlink===u.index){var r=[],g;do g=d.pop(),a[g].onStack=!1,r.push(g);while(c!==g);l.push(r)}}return o.nodes().forEach(function(c){Object.hasOwn(a,c)||s(c)}),l}})),dl=q(((t,e)=>{var n=Jo();e.exports=o;function o(i){return n(i).filter(function(d){return d.length>1||d.length===1&&i.hasEdge(d[0],d[0])})}})),cl=q(((t,e)=>{e.exports=o;var n=()=>1;function o(d,a,l){return i(d,a||n,l||function(s){return d.outEdges(s)})}function i(d,a,l){var s={},c=d.nodes();return c.forEach(function(u){s[u]={},s[u][u]={distance:0},c.forEach(function(r){u!==r&&(s[u][r]={distance:1/0})}),l(u).forEach(function(r){var g=r.v===u?r.w:r.v,h=a(r);s[u][g]={distance:h,predecessor:u}})}),c.forEach(function(u){var r=s[u];c.forEach(function(g){var h=s[g];c.forEach(function(p){var f=h[u],y=r[p],x=h[p],b=f.distance+y.distance;b<x.distance&&(x.distance=b,x.predecessor=y.predecessor)})})}),s}})),er=q(((t,e)=>{function n(i){var d={},a={},l=[];function s(c){if(Object.hasOwn(a,c))throw new o;Object.hasOwn(d,c)||(a[c]=!0,d[c]=!0,i.predecessors(c).forEach(s),delete a[c],l.push(c))}if(i.sinks().forEach(s),Object.keys(d).length!==i.nodeCount())throw new o;return l}var o=class extends Error{constructor(){super(...arguments)}};e.exports=n,n.CycleException=o})),ul=q(((t,e)=>{var n=er();e.exports=o;function o(i){try{n(i)}catch(d){if(d instanceof n.CycleException)return!1;throw d}return!0}})),tr=q(((t,e)=>{e.exports=n;function n(a,l,s){Array.isArray(l)||(l=[l]);var c=a.isDirected()?h=>a.successors(h):h=>a.neighbors(h),u=s==="post"?o:i,r=[],g={};return l.forEach(h=>{if(!a.hasNode(h))throw Error("Graph does not have node: "+h);u(h,c,g,r)}),r}function o(a,l,s,c){for(var u=[[a,!1]];u.length>0;){var r=u.pop();r[1]?c.push(r[0]):Object.hasOwn(s,r[0])||(s[r[0]]=!0,u.push([r[0],!0]),d(l(r[0]),g=>u.push([g,!1])))}}function i(a,l,s,c){for(var u=[a];u.length>0;){var r=u.pop();Object.hasOwn(s,r)||(s[r]=!0,c.push(r),d(l(r),g=>u.push(g)))}}function d(a,l){for(var s=a.length;s--;)l(a[s],s,a);return a}})),hl=q(((t,e)=>{var n=tr();e.exports=o;function o(i,d){return n(i,d,"post")}})),gl=q(((t,e)=>{var n=tr();e.exports=o;function o(i,d){return n(i,d,"pre")}})),fl=q(((t,e)=>{var n=fn(),o=qo();e.exports=i;function i(d,a){var l=new n,s={},c=new o,u;function r(h){var p=h.v===u?h.w:h.v,f=c.priority(p);if(f!==void 0){var y=a(h);y<f&&(s[p]=u,c.decrease(p,y))}}if(d.nodeCount()===0)return l;d.nodes().forEach(function(h){c.add(h,1/0),l.setNode(h)}),c.decrease(d.nodes()[0],0);for(var g=!1;c.size()>0;){if(u=c.removeMin(),Object.hasOwn(s,u))l.setEdge(u,s[u]);else{if(g)throw Error("Input graph is not connected: "+d);g=!0}d.nodeEdges(u).forEach(r)}return l}})),pl=q(((t,e)=>{e.exports={components:sl(),dijkstra:Qo(),dijkstraAll:ll(),findCycles:dl(),floydWarshall:cl(),isAcyclic:ul(),postorder:hl(),preorder:gl(),prim:fl(),tarjan:Jo(),topsort:er()}})),ve=q(((t,e)=>{var n=al();e.exports={Graph:n.Graph,json:il(),alg:pl(),version:n.version}})),ml=q(((t,e)=>{var n=class{constructor(){let d={};d._next=d._prev=d,this._sentinel=d}dequeue(){let d=this._sentinel,a=d._prev;if(a!==d)return o(a),a}enqueue(d){let a=this._sentinel;d._prev&&d._next&&o(d),d._next=a._next,a._next._prev=d,a._next=d,d._prev=a}toString(){let d=[],a=this._sentinel,l=a._prev;for(;l!==a;)d.push(JSON.stringify(l,i)),l=l._prev;return"["+d.join(", ")+"]"}};function o(d){d._prev._next=d._next,d._next._prev=d._prev,delete d._next,delete d._prev}function i(d,a){if(d!=="_next"&&d!=="_prev")return a}e.exports=n})),yl=q(((t,e)=>{var n=ve().Graph,o=ml();e.exports=d;var i=()=>1;function d(r,g){if(r.nodeCount()<=1)return[];let h=s(r,g||i);return a(h.graph,h.buckets,h.zeroIdx).flatMap(p=>r.outEdges(p.v,p.w))}function a(r,g,h){let p=[],f=g[g.length-1],y=g[0],x;for(;r.nodeCount();){for(;x=y.dequeue();)l(r,g,h,x);for(;x=f.dequeue();)l(r,g,h,x);if(r.nodeCount()){for(let b=g.length-2;b>0;--b)if(x=g[b].dequeue(),x){p=p.concat(l(r,g,h,x,!0));break}}}return p}function l(r,g,h,p,f){let y=f?[]:void 0;return r.inEdges(p.v).forEach(x=>{let b=r.edge(x),N=r.node(x.v);f&&y.push({v:x.v,w:x.w}),N.out-=b,c(g,h,N)}),r.outEdges(p.v).forEach(x=>{let b=r.edge(x),N=x.w,m=r.node(N);m.in-=b,c(g,h,m)}),r.removeNode(p.v),y}function s(r,g){let h=new n,p=0,f=0;r.nodes().forEach(b=>{h.setNode(b,{v:b,in:0,out:0})}),r.edges().forEach(b=>{let N=h.edge(b.v,b.w)||0,m=g(b),C=N+m;h.setEdge(b.v,b.w,C),f=Math.max(f,h.node(b.v).out+=m),p=Math.max(p,h.node(b.w).in+=m)});let y=u(f+p+3).map(()=>new o),x=p+1;return h.nodes().forEach(b=>{c(y,x,h.node(b))}),{graph:h,buckets:y,zeroIdx:x}}function c(r,g,h){h.out?h.in?r[h.out-h.in+g].enqueue(h):r[r.length-1].enqueue(h):r[0].enqueue(h)}function u(r){let g=[];for(let h=0;h<r;h++)g.push(h);return g}})),se=q(((t,e)=>{var n=ve().Graph;e.exports={addBorderNode:g,addDummyNode:o,applyWithChunking:f,asNonCompoundGraph:d,buildLayerMatrix:c,intersectRect:s,mapValues:P,maxRank:y,normalizeRanks:u,notime:N,partition:x,pick:_,predecessorWeights:l,range:M,removeEmptyRanks:r,simplify:i,successorWeights:a,time:b,uniqueId:C,zipObject:j};function o(w,E,O,k){for(var S=k;w.hasNode(S);)S=C(k);return O.dummy=E,w.setNode(S,O),S}function i(w){let E=new n().setGraph(w.graph());return w.nodes().forEach(O=>E.setNode(O,w.node(O))),w.edges().forEach(O=>{let k=E.edge(O.v,O.w)||{weight:0,minlen:1},S=w.edge(O);E.setEdge(O.v,O.w,{weight:k.weight+S.weight,minlen:Math.max(k.minlen,S.minlen)})}),E}function d(w){let E=new n({multigraph:w.isMultigraph()}).setGraph(w.graph());return w.nodes().forEach(O=>{w.children(O).length||E.setNode(O,w.node(O))}),w.edges().forEach(O=>{E.setEdge(O,w.edge(O))}),E}function a(w){let E=w.nodes().map(O=>{let k={};return w.outEdges(O).forEach(S=>{k[S.w]=(k[S.w]||0)+w.edge(S).weight}),k});return j(w.nodes(),E)}function l(w){let E=w.nodes().map(O=>{let k={};return w.inEdges(O).forEach(S=>{k[S.v]=(k[S.v]||0)+w.edge(S).weight}),k});return j(w.nodes(),E)}function s(w,E){let O=w.x,k=w.y,S=E.x-O,D=E.y-k,L=w.width/2,$=w.height/2;if(!S&&!D)throw Error("Not possible to find intersection inside of the rectangle");let X,R;return Math.abs(D)*L>Math.abs(S)*$?(D<0&&($=-$),X=$*S/D,R=$):(S<0&&(L=-L),X=L,R=L*D/S),{x:O+X,y:k+R}}function c(w){let E=M(y(w)+1).map(()=>[]);return w.nodes().forEach(O=>{let k=w.node(O),S=k.rank;S!==void 0&&(E[S][k.order]=O)}),E}function u(w){let E=w.nodes().map(k=>{let S=w.node(k).rank;return S===void 0?Number.MAX_VALUE:S}),O=f(Math.min,E);w.nodes().forEach(k=>{let S=w.node(k);Object.hasOwn(S,"rank")&&(S.rank-=O)})}function r(w){let E=w.nodes().map(L=>w.node(L).rank),O=f(Math.min,E),k=[];w.nodes().forEach(L=>{let $=w.node(L).rank-O;k[$]||(k[$]=[]),k[$].push(L)});let S=0,D=w.graph().nodeRankFactor;Array.from(k).forEach((L,$)=>{L===void 0&&$%D!==0?--S:L!==void 0&&S&&L.forEach(X=>w.node(X).rank+=S)})}function g(w,E,O,k){let S={width:0,height:0};return arguments.length>=4&&(S.rank=O,S.order=k),o(w,"border",S,E)}function h(w,E=p){let O=[];for(let k=0;k<w.length;k+=E){let S=w.slice(k,k+E);O.push(S)}return O}var p=65535;function f(w,E){if(E.length>p){let O=h(E);return w.apply(null,O.map(k=>w.apply(null,k)))}else return w.apply(null,E)}function y(w){let E=w.nodes().map(O=>{let k=w.node(O).rank;return k===void 0?Number.MIN_VALUE:k});return f(Math.max,E)}function x(w,E){let O={lhs:[],rhs:[]};return w.forEach(k=>{E(k)?O.lhs.push(k):O.rhs.push(k)}),O}function b(w,E){let O=Date.now();try{return E()}finally{console.log(w+" time: "+(Date.now()-O)+"ms")}}function N(w,E){return E()}var m=0;function C(w){return w+(""+ ++m)}function M(w,E,O=1){E??(E=w,w=0);let k=D=>D<E;O<0&&(k=D=>E<D);let S=[];for(let D=w;k(D);D+=O)S.push(D);return S}function _(w,E){let O={};for(let k of E)w[k]!==void 0&&(O[k]=w[k]);return O}function P(w,E){let O=E;return typeof E=="string"&&(O=k=>k[E]),Object.entries(w).reduce((k,[S,D])=>(k[S]=O(D,S),k),{})}function j(w,E){return w.reduce((O,k,S)=>(O[k]=E[S],O),{})}})),vl=q(((t,e)=>{var n=yl(),o=se().uniqueId;e.exports={run:i,undo:a};function i(l){(l.graph().acyclicer==="greedy"?n(l,s(l)):d(l)).forEach(c=>{let u=l.edge(c);l.removeEdge(c),u.forwardName=c.name,u.reversed=!0,l.setEdge(c.w,c.v,u,o("rev"))});function s(c){return u=>c.edge(u).weight}}function d(l){let s=[],c={},u={};function r(g){Object.hasOwn(u,g)||(u[g]=!0,c[g]=!0,l.outEdges(g).forEach(h=>{Object.hasOwn(c,h.w)?s.push(h):r(h.w)}),delete c[g])}return l.nodes().forEach(r),s}function a(l){l.edges().forEach(s=>{let c=l.edge(s);if(c.reversed){l.removeEdge(s);let u=c.forwardName;delete c.reversed,delete c.forwardName,l.setEdge(s.w,s.v,c,u)}})}})),bl=q(((t,e)=>{var n=se();e.exports={run:o,undo:d};function o(a){a.graph().dummyChains=[],a.edges().forEach(l=>i(a,l))}function i(a,l){let s=l.v,c=a.node(s).rank,u=l.w,r=a.node(u).rank,g=l.name,h=a.edge(l),p=h.labelRank;if(r===c+1)return;a.removeEdge(l);let f,y,x;for(x=0,++c;c<r;++x,++c)h.points=[],y={width:0,height:0,edgeLabel:h,edgeObj:l,rank:c},f=n.addDummyNode(a,"edge",y,"_d"),c===p&&(y.width=h.width,y.height=h.height,y.dummy="edge-label",y.labelpos=h.labelpos),a.setEdge(s,f,{weight:h.weight},g),x===0&&a.graph().dummyChains.push(f),s=f;a.setEdge(s,u,{weight:h.weight},g)}function d(a){a.graph().dummyChains.forEach(l=>{let s=a.node(l),c=s.edgeLabel,u;for(a.setEdge(s.edgeObj,c);s.dummy;)u=a.successors(l)[0],a.removeNode(l),c.points.push({x:s.x,y:s.y}),s.dummy==="edge-label"&&(c.x=s.x,c.y=s.y,c.width=s.width,c.height=s.height),l=u,s=a.node(l)})}})),Nt=q(((t,e)=>{var{applyWithChunking:n}=se();e.exports={longestPath:o,slack:i};function o(d){var a={};function l(s){var c=d.node(s);if(Object.hasOwn(a,s))return c.rank;a[s]=!0;let u=d.outEdges(s).map(g=>g==null?1/0:l(g.w)-d.edge(g).minlen);var r=n(Math.min,u);return r===1/0&&(r=0),c.rank=r}d.sources().forEach(l)}function i(d,a){return d.node(a.w).rank-d.node(a.v).rank-d.edge(a).minlen}})),nr=q(((t,e)=>{var n=ve().Graph,o=Nt().slack;e.exports=i;function i(s){var c=new n({directed:!1}),u=s.nodes()[0],r=s.nodeCount();c.setNode(u,{});for(var g,h;d(c,s)<r;)g=a(c,s),h=c.hasNode(g.v)?o(s,g):-o(s,g),l(c,s,h);return c}function d(s,c){function u(r){c.nodeEdges(r).forEach(g=>{var h=g.v,p=r===h?g.w:h;!s.hasNode(p)&&!o(c,g)&&(s.setNode(p,{}),s.setEdge(r,p,{}),u(p))})}return s.nodes().forEach(u),s.nodeCount()}function a(s,c){return c.edges().reduce((u,r)=>{let g=1/0;return s.hasNode(r.v)!==s.hasNode(r.w)&&(g=o(c,r)),g<u[0]?[g,r]:u},[1/0,null])[1]}function l(s,c,u){s.nodes().forEach(r=>c.node(r).rank+=u)}})),xl=q(((t,e)=>{var n=nr(),o=Nt().slack,i=Nt().longestPath,d=ve().alg.preorder,a=ve().alg.postorder,l=se().simplify;e.exports=s,s.initLowLimValues=g,s.initCutValues=c,s.calcCutValue=r,s.leaveEdge=p,s.enterEdge=f,s.exchangeEdges=y;function s(m){m=l(m),i(m);var C=n(m);g(C),c(C,m);for(var M,_;M=p(C);)_=f(C,m,M),y(C,m,M,_)}function c(m,C){var M=a(m,m.nodes());M=M.slice(0,M.length-1),M.forEach(_=>u(m,C,_))}function u(m,C,M){var _=m.node(M).parent;m.edge(M,_).cutvalue=r(m,C,M)}function r(m,C,M){var _=m.node(M).parent,P=!0,j=C.edge(M,_),w=0;return j||(j=(P=!1,C.edge(_,M))),w=j.weight,C.nodeEdges(M).forEach(E=>{var O=E.v===M,k=O?E.w:E.v;if(k!==_){var S=O===P,D=C.edge(E).weight;if(w+=S?D:-D,b(m,M,k)){var L=m.edge(M,k).cutvalue;w+=S?-L:L}}}),w}function g(m,C){arguments.length<2&&(C=m.nodes()[0]),h(m,{},1,C)}function h(m,C,M,_,P){var j=M,w=m.node(_);return C[_]=!0,m.neighbors(_).forEach(E=>{Object.hasOwn(C,E)||(M=h(m,C,M,E,_))}),w.low=j,w.lim=M++,P?w.parent=P:delete w.parent,M}function p(m){return m.edges().find(C=>m.edge(C).cutvalue<0)}function f(m,C,M){var _=M.v,P=M.w;C.hasEdge(_,P)||(_=M.w,P=M.v);var j=m.node(_),w=m.node(P),E=j,O=!1;return j.lim>w.lim&&(E=w,O=!0),C.edges().filter(k=>O===N(m,m.node(k.v),E)&&O!==N(m,m.node(k.w),E)).reduce((k,S)=>o(C,S)<o(C,k)?S:k)}function y(m,C,M,_){var P=M.v,j=M.w;m.removeEdge(P,j),m.setEdge(_.v,_.w,{}),g(m),c(m,C),x(m,C)}function x(m,C){var M=d(m,m.nodes().find(_=>!C.node(_).parent));M=M.slice(1),M.forEach(_=>{var P=m.node(_).parent,j=C.edge(_,P),w=!1;j||(j=C.edge(P,_),w=!0),C.node(_).rank=C.node(P).rank+(w?j.minlen:-j.minlen)})}function b(m,C,M){return m.hasEdge(C,M)}function N(m,C,M){return M.low<=C.lim&&C.lim<=M.lim}})),wl=q(((t,e)=>{var n=Nt().longestPath,o=nr(),i=xl();e.exports=d;function d(c){var u=c.graph().ranker;if(u instanceof Function)return u(c);switch(c.graph().ranker){case"network-simplex":s(c);break;case"tight-tree":l(c);break;case"longest-path":a(c);break;case"none":break;default:s(c)}}var a=n;function l(c){n(c),o(c)}function s(c){i(c)}})),El=q(((t,e)=>{e.exports=n;function n(d){let a=i(d);d.graph().dummyChains.forEach(l=>{let s=d.node(l),c=s.edgeObj,u=o(d,a,c.v,c.w),r=u.path,g=u.lca,h=0,p=r[h],f=!0;for(;l!==c.w;){if(s=d.node(l),f){for(;(p=r[h])!==g&&d.node(p).maxRank<s.rank;)h++;p===g&&(f=!1)}if(!f){for(;h<r.length-1&&d.node(p=r[h+1]).minRank<=s.rank;)h++;p=r[h]}d.setParent(l,p),l=d.successors(l)[0]}})}function o(d,a,l,s){let c=[],u=[],r=Math.min(a[l].low,a[s].low),g=Math.max(a[l].lim,a[s].lim),h,p;h=l;do h=d.parent(h),c.push(h);while(h&&(a[h].low>r||g>a[h].lim));for(p=h,h=s;(h=d.parent(h))!==p;)u.push(h);return{path:c.concat(u.reverse()),lca:p}}function i(d){let a={},l=0;function s(c){let u=l;d.children(c).forEach(s),a[c]={low:u,lim:l++}}return d.children().forEach(s),a}})),Sl=q(((t,e)=>{var n=se();e.exports={run:o,cleanup:l};function o(s){let c=n.addDummyNode(s,"root",{},"_root"),u=d(s),r=Object.values(u),g=n.applyWithChunking(Math.max,r)-1,h=2*g+1;s.graph().nestingRoot=c,s.edges().forEach(f=>s.edge(f).minlen*=h);let p=a(s)+1;s.children().forEach(f=>i(s,c,h,p,g,u,f)),s.graph().nodeRankFactor=h}function i(s,c,u,r,g,h,p){let f=s.children(p);if(!f.length){p!==c&&s.setEdge(c,p,{weight:0,minlen:u});return}let y=n.addBorderNode(s,"_bt"),x=n.addBorderNode(s,"_bb"),b=s.node(p);s.setParent(y,p),b.borderTop=y,s.setParent(x,p),b.borderBottom=x,f.forEach(N=>{i(s,c,u,r,g,h,N);let m=s.node(N),C=m.borderTop?m.borderTop:N,M=m.borderBottom?m.borderBottom:N,_=m.borderTop?r:2*r,P=C===M?g-h[p]+1:1;s.setEdge(y,C,{weight:_,minlen:P,nestingEdge:!0}),s.setEdge(M,x,{weight:_,minlen:P,nestingEdge:!0})}),s.parent(p)||s.setEdge(c,y,{weight:0,minlen:g+h[p]})}function d(s){var c={};function u(r,g){var h=s.children(r);h&&h.length&&h.forEach(p=>u(p,g+1)),c[r]=g}return s.children().forEach(r=>u(r,1)),c}function a(s){return s.edges().reduce((c,u)=>c+s.edge(u).weight,0)}function l(s){var c=s.graph();s.removeNode(c.nestingRoot),delete c.nestingRoot,s.edges().forEach(u=>{s.edge(u).nestingEdge&&s.removeEdge(u)})}})),Cl=q(((t,e)=>{var n=se();e.exports=o;function o(d){function a(l){let s=d.children(l),c=d.node(l);if(s.length&&s.forEach(a),Object.hasOwn(c,"minRank")){c.borderLeft=[],c.borderRight=[];for(let u=c.minRank,r=c.maxRank+1;u<r;++u)i(d,"borderLeft","_bl",l,c,u),i(d,"borderRight","_br",l,c,u)}}d.children().forEach(a)}function i(d,a,l,s,c,u){let r={width:0,height:0,rank:u,borderType:a},g=c[a][u-1],h=n.addDummyNode(d,"border",r,l);c[a][u]=h,d.setParent(h,s),g&&d.setEdge(g,h,{weight:1})}})),Nl=q(((t,e)=>{e.exports={adjust:n,undo:o};function n(u){let r=u.graph().rankdir.toLowerCase();(r==="lr"||r==="rl")&&i(u)}function o(u){let r=u.graph().rankdir.toLowerCase();(r==="bt"||r==="rl")&&a(u),(r==="lr"||r==="rl")&&(s(u),i(u))}function i(u){u.nodes().forEach(r=>d(u.node(r))),u.edges().forEach(r=>d(u.edge(r)))}function d(u){let r=u.width;u.width=u.height,u.height=r}function a(u){u.nodes().forEach(r=>l(u.node(r))),u.edges().forEach(r=>{let g=u.edge(r);g.points.forEach(l),Object.hasOwn(g,"y")&&l(g)})}function l(u){u.y=-u.y}function s(u){u.nodes().forEach(r=>c(u.node(r))),u.edges().forEach(r=>{let g=u.edge(r);g.points.forEach(c),Object.hasOwn(g,"x")&&c(g)})}function c(u){let r=u.x;u.x=u.y,u.y=r}})),kl=q(((t,e)=>{var n=se();e.exports=o;function o(i){let d={},a=i.nodes().filter(r=>!i.children(r).length),l=a.map(r=>i.node(r).rank),s=n.applyWithChunking(Math.max,l),c=n.range(s+1).map(()=>[]);function u(r){d[r]||(d[r]=!0,c[i.node(r).rank].push(r),i.successors(r).forEach(u))}return a.sort((r,g)=>i.node(r).rank-i.node(g).rank).forEach(u),c}})),Ml=q(((t,e)=>{var n=se().zipObject;e.exports=o;function o(d,a){let l=0;for(let s=1;s<a.length;++s)l+=i(d,a[s-1],a[s]);return l}function i(d,a,l){let s=n(l,l.map((p,f)=>f)),c=a.flatMap(p=>d.outEdges(p).map(f=>({pos:s[f.w],weight:d.edge(f).weight})).sort((f,y)=>f.pos-y.pos)),u=1;for(;u<l.length;)u<<=1;let r=2*u-1;--u;let g=Array(r).fill(0),h=0;return c.forEach(p=>{let f=p.pos+u;g[f]+=p.weight;let y=0;for(;f>0;)f%2&&(y+=g[f+1]),f=f-1>>1,g[f]+=p.weight;h+=p.weight*y}),h}})),Ol=q(((t,e)=>{e.exports=n;function n(o,i=[]){return i.map(d=>{let a=o.inEdges(d);if(a.length){let l=a.reduce((s,c)=>{let u=o.edge(c),r=o.node(c.v);return{sum:s.sum+u.weight*r.order,weight:s.weight+u.weight}},{sum:0,weight:0});return{v:d,barycenter:l.sum/l.weight,weight:l.weight}}else return{v:d}})}})),_l=q(((t,e)=>{var n=se();e.exports=o;function o(a,l){let s={};return a.forEach((c,u)=>{let r=s[c.v]={indegree:0,in:[],out:[],vs:[c.v],i:u};c.barycenter!==void 0&&(r.barycenter=c.barycenter,r.weight=c.weight)}),l.edges().forEach(c=>{let u=s[c.v],r=s[c.w];u!==void 0&&r!==void 0&&(r.indegree++,u.out.push(s[c.w]))}),i(Object.values(s).filter(c=>!c.indegree))}function i(a){let l=[];function s(u){return r=>{r.merged||(r.barycenter===void 0||u.barycenter===void 0||r.barycenter>=u.barycenter)&&d(u,r)}}function c(u){return r=>{r.in.push(u),--r.indegree===0&&a.push(r)}}for(;a.length;){let u=a.pop();l.push(u),u.in.reverse().forEach(s(u)),u.out.forEach(c(u))}return l.filter(u=>!u.merged).map(u=>n.pick(u,["vs","i","barycenter","weight"]))}function d(a,l){let s=0,c=0;a.weight&&(s+=a.barycenter*a.weight,c+=a.weight),l.weight&&(s+=l.barycenter*l.weight,c+=l.weight),a.vs=l.vs.concat(a.vs),a.barycenter=s/c,a.weight=c,a.i=Math.min(l.i,a.i),l.merged=!0}})),jl=q(((t,e)=>{var n=se();e.exports=o;function o(a,l){let s=n.partition(a,y=>Object.hasOwn(y,"barycenter")),c=s.lhs,u=s.rhs.sort((y,x)=>x.i-y.i),r=[],g=0,h=0,p=0;c.sort(d(!!l)),p=i(r,u,p),c.forEach(y=>{p+=y.vs.length,r.push(y.vs),g+=y.barycenter*y.weight,h+=y.weight,p=i(r,u,p)});let f={vs:r.flat(!0)};return h&&(f.barycenter=g/h,f.weight=h),f}function i(a,l,s){let c;for(;l.length&&(c=l[l.length-1]).i<=s;)l.pop(),a.push(c.vs),s++;return s}function d(a){return(l,s)=>l.barycenter<s.barycenter?-1:l.barycenter>s.barycenter?1:a?s.i-l.i:l.i-s.i}})),Pl=q(((t,e)=>{var n=Ol(),o=_l(),i=jl();e.exports=d;function d(s,c,u,r){let g=s.children(c),h=s.node(c),p=h?h.borderLeft:void 0,f=h?h.borderRight:void 0,y={};p&&(g=g.filter(m=>m!==p&&m!==f));let x=n(s,g);x.forEach(m=>{if(s.children(m.v).length){let C=d(s,m.v,u,r);y[m.v]=C,Object.hasOwn(C,"barycenter")&&l(m,C)}});let b=o(x,u);a(b,y);let N=i(b,r);if(p&&(N.vs=[p,N.vs,f].flat(!0),s.predecessors(p).length)){let m=s.node(s.predecessors(p)[0]),C=s.node(s.predecessors(f)[0]);Object.hasOwn(N,"barycenter")||(N.barycenter=0,N.weight=0),N.barycenter=(N.barycenter*N.weight+m.order+C.order)/(N.weight+2),N.weight+=2}return N}function a(s,c){s.forEach(u=>{u.vs=u.vs.flatMap(r=>c[r]?c[r].vs:r)})}function l(s,c){s.barycenter===void 0?(s.barycenter=c.barycenter,s.weight=c.weight):(s.barycenter=(s.barycenter*s.weight+c.barycenter*c.weight)/(s.weight+c.weight),s.weight+=c.weight)}})),Il=q(((t,e)=>{var n=ve().Graph,o=se();e.exports=i;function i(a,l,s,c){c||(c=a.nodes());let u=d(a),r=new n({compound:!0}).setGraph({root:u}).setDefaultNodeLabel(g=>a.node(g));return c.forEach(g=>{let h=a.node(g),p=a.parent(g);(h.rank===l||h.minRank<=l&&l<=h.maxRank)&&(r.setNode(g),r.setParent(g,p||u),a[s](g).forEach(f=>{let y=f.v===g?f.w:f.v,x=r.edge(y,g),b=x===void 0?0:x.weight;r.setEdge(y,g,{weight:a.edge(f).weight+b})}),Object.hasOwn(h,"minRank")&&r.setNode(g,{borderLeft:h.borderLeft[l],borderRight:h.borderRight[l]}))}),r}function d(a){for(var l;a.hasNode(l=o.uniqueId("_root")););return l}})),Rl=q(((t,e)=>{e.exports=n;function n(o,i,d){let a={},l;d.forEach(s=>{let c=o.parent(s),u,r;for(;c;){if(u=o.parent(c),u?(r=a[u],a[u]=c):(r=l,l=c),r&&r!==c){i.setEdge(r,c);return}c=u}})}})),Dl=q(((t,e)=>{var n=kl(),o=Ml(),i=Pl(),d=Il(),a=Rl(),l=ve().Graph,s=se();e.exports=c;function c(h,p){if(p&&typeof p.customOrder=="function"){p.customOrder(h,c);return}let f=s.maxRank(h),y=u(h,s.range(1,f+1),"inEdges"),x=u(h,s.range(f-1,-1,-1),"outEdges"),b=n(h);if(g(h,b),p&&p.disableOptimalOrderHeuristic)return;let N=1/0,m;for(let C=0,M=0;M<4;++C,++M){r(C%2?y:x,C%4>=2),b=s.buildLayerMatrix(h);let _=o(h,b);_<N&&(M=0,m=Object.assign({},b),N=_)}g(h,m)}function u(h,p,f){let y=new Map,x=(b,N)=>{y.has(b)||y.set(b,[]),y.get(b).push(N)};for(let b of h.nodes()){let N=h.node(b);if(typeof N.rank=="number"&&x(N.rank,b),typeof N.minRank=="number"&&typeof N.maxRank=="number")for(let m=N.minRank;m<=N.maxRank;m++)m!==N.rank&&x(m,b)}return p.map(function(b){return d(h,b,f,y.get(b)||[])})}function r(h,p){let f=new l;h.forEach(function(y){let x=y.graph().root,b=i(y,x,f,p);b.vs.forEach((N,m)=>y.node(N).order=m),a(y,f,b.vs)})}function g(h,p){Object.values(p).forEach(f=>f.forEach((y,x)=>h.node(y).order=x))}})),Al=q(((t,e)=>{var n=ve().Graph,o=se();e.exports={positionX:f,findType1Conflicts:i,findType2Conflicts:d,addConflict:l,hasConflict:s,verticalAlignment:c,horizontalCompaction:u,alignCoordinates:h,findSmallestWidthAlignment:g,balance:p};function i(b,N){let m={};function C(M,_){let P=0,j=0,w=M.length,E=_[_.length-1];return _.forEach((O,k)=>{let S=a(b,O),D=S?b.node(S).order:w;(S||O===E)&&(_.slice(j,k+1).forEach(L=>{b.predecessors(L).forEach($=>{let X=b.node($),R=X.order;(R<P||D<R)&&!(X.dummy&&b.node(L).dummy)&&l(m,$,L)})}),j=k+1,P=D)}),_}return N.length&&N.reduce(C),m}function d(b,N){let m={};function C(_,P,j,w,E){let O;o.range(P,j).forEach(k=>{O=_[k],b.node(O).dummy&&b.predecessors(O).forEach(S=>{let D=b.node(S);D.dummy&&(D.order<w||D.order>E)&&l(m,S,O)})})}function M(_,P){let j=-1,w,E=0;return P.forEach((O,k)=>{if(b.node(O).dummy==="border"){let S=b.predecessors(O);S.length&&(w=b.node(S[0]).order,C(P,E,k,j,w),E=k,j=w)}C(P,E,P.length,w,_.length)}),P}return N.length&&N.reduce(M),m}function a(b,N){if(b.node(N).dummy)return b.predecessors(N).find(m=>b.node(m).dummy)}function l(b,N,m){if(N>m){let M=N;N=m,m=M}let C=b[N];C||(b[N]=C={}),C[m]=!0}function s(b,N,m){if(N>m){let C=N;N=m,m=C}return!!b[N]&&Object.hasOwn(b[N],m)}function c(b,N,m,C){let M={},_={},P={};return N.forEach(j=>{j.forEach((w,E)=>{M[w]=w,_[w]=w,P[w]=E})}),N.forEach(j=>{let w=-1;j.forEach(E=>{let O=C(E);if(O.length){O=O.sort((S,D)=>P[S]-P[D]);let k=(O.length-1)/2;for(let S=Math.floor(k),D=Math.ceil(k);S<=D;++S){let L=O[S];_[E]===E&&w<P[L]&&!s(m,E,L)&&(_[L]=E,_[E]=M[E]=M[L],w=P[L])}}})}),{root:M,align:_}}function u(b,N,m,C,M){let _={},P=r(b,N,m,M),j=M?"borderLeft":"borderRight";function w(k,S){let D=P.nodes(),L=D.pop(),$={};for(;L;)$[L]?k(L):($[L]=!0,D.push(L),D=D.concat(S(L))),L=D.pop()}function E(k){_[k]=P.inEdges(k).reduce((S,D)=>Math.max(S,_[D.v]+P.edge(D)),0)}function O(k){let S=P.outEdges(k).reduce((L,$)=>Math.min(L,_[$.w]-P.edge($)),1/0),D=b.node(k);S!==1/0&&D.borderType!==j&&(_[k]=Math.max(_[k],S))}return w(E,P.predecessors.bind(P)),w(O,P.successors.bind(P)),Object.keys(C).forEach(k=>_[k]=_[m[k]]),_}function r(b,N,m,C){let M=new n,_=b.graph(),P=y(_.nodesep,_.edgesep,C);return N.forEach(j=>{let w;j.forEach(E=>{let O=m[E];if(M.setNode(O),w){var k=m[w],S=M.edge(k,O);M.setEdge(k,O,Math.max(P(b,E,w),S||0))}w=E})}),M}function g(b,N){return Object.values(N).reduce((m,C)=>{let M=-1/0,_=1/0;Object.entries(C).forEach(([j,w])=>{let E=x(b,j)/2;M=Math.max(w+E,M),_=Math.min(w-E,_)});let P=M-_;return P<m[0]&&(m=[P,C]),m},[1/0,null])[1]}function h(b,N){let m=Object.values(N),C=o.applyWithChunking(Math.min,m),M=o.applyWithChunking(Math.max,m);["u","d"].forEach(_=>{["l","r"].forEach(P=>{let j=_+P,w=b[j];if(w===N)return;let E=Object.values(w),O=C-o.applyWithChunking(Math.min,E);P!=="l"&&(O=M-o.applyWithChunking(Math.max,E)),O&&(b[j]=o.mapValues(w,k=>k+O))})})}function p(b,N){return o.mapValues(b.ul,(m,C)=>{if(N)return b[N.toLowerCase()][C];{let M=Object.values(b).map(_=>_[C]).sort((_,P)=>_-P);return(M[1]+M[2])/2}})}function f(b){let N=o.buildLayerMatrix(b),m=Object.assign(i(b,N),d(b,N)),C={},M;return["u","d"].forEach(_=>{M=_==="u"?N:Object.values(N).reverse(),["l","r"].forEach(P=>{P==="r"&&(M=M.map(O=>Object.values(O).reverse()));let j=(_==="u"?b.predecessors:b.successors).bind(b),w=c(b,M,m,j),E=u(b,M,w.root,w.align,P==="r");P==="r"&&(E=o.mapValues(E,O=>-O)),C[_+P]=E})}),h(C,g(b,C)),p(C,b.graph().align)}function y(b,N,m){return(C,M,_)=>{let P=C.node(M),j=C.node(_),w=0,E;if(w+=P.width/2,Object.hasOwn(P,"labelpos"))switch(P.labelpos.toLowerCase()){case"l":E=-P.width/2;break;case"r":E=P.width/2;break}if(E&&(w+=m?E:-E),E=0,w+=(P.dummy?N:b)/2,w+=(j.dummy?N:b)/2,w+=j.width/2,Object.hasOwn(j,"labelpos"))switch(j.labelpos.toLowerCase()){case"l":E=j.width/2;break;case"r":E=-j.width/2;break}return E&&(w+=m?E:-E),E=0,w}}function x(b,N){return b.node(N).width}})),Bl=q(((t,e)=>{var n=se(),o=Al().positionX;e.exports=i;function i(a){a=n.asNonCompoundGraph(a),d(a),Object.entries(o(a)).forEach(([l,s])=>a.node(l).x=s)}function d(a){let l=n.buildLayerMatrix(a),s=a.graph().ranksep,c=0;l.forEach(u=>{let r=u.reduce((g,h)=>{let p=a.node(h).height;return g>p?g:p},0);u.forEach(g=>a.node(g).y=c+r/2),c+=r+s})}})),zl=q(((t,e)=>{var n=vl(),o=bl(),i=wl(),d=se().normalizeRanks,a=El(),l=se().removeEmptyRanks,s=Sl(),c=Cl(),u=Nl(),r=Dl(),g=Bl(),h=se(),p=ve().Graph;e.exports=f;function f(I,A){let z=A&&A.debugTiming?h.time:h.notime;z("layout",()=>{let H=z(" buildLayoutGraph",()=>w(I));z(" runLayout",()=>y(H,z,A)),z(" updateInputGraph",()=>x(I,H))})}function y(I,A,z){A(" makeSpaceForEdgeLabels",()=>E(I)),A(" removeSelfEdges",()=>T(I)),A(" acyclic",()=>n.run(I)),A(" nestingGraph.run",()=>s.run(I)),A(" rank",()=>i(h.asNonCompoundGraph(I))),A(" injectEdgeLabelProxies",()=>O(I)),A(" removeEmptyRanks",()=>l(I)),A(" nestingGraph.cleanup",()=>s.cleanup(I)),A(" normalizeRanks",()=>d(I)),A(" assignRankMinMax",()=>k(I)),A(" removeEdgeLabelProxies",()=>S(I)),A(" normalize.run",()=>o.run(I)),A(" parentDummyChains",()=>a(I)),A(" addBorderSegments",()=>c(I)),A(" order",()=>r(I,z)),A(" insertSelfEdges",()=>V(I)),A(" adjustCoordinateSystem",()=>u.adjust(I)),A(" position",()=>g(I)),A(" positionSelfEdges",()=>F(I)),A(" removeBorderNodes",()=>R(I)),A(" normalize.undo",()=>o.undo(I)),A(" fixupEdgeLabelCoords",()=>$(I)),A(" undoCoordinateSystem",()=>u.undo(I)),A(" translateGraph",()=>D(I)),A(" assignNodeIntersects",()=>L(I)),A(" reversePoints",()=>X(I)),A(" acyclic.undo",()=>n.undo(I))}function x(I,A){I.nodes().forEach(z=>{let H=I.node(z),Y=A.node(z);H&&(H.x=Y.x,H.y=Y.y,H.rank=Y.rank,A.children(z).length&&(H.width=Y.width,H.height=Y.height))}),I.edges().forEach(z=>{let H=I.edge(z),Y=A.edge(z);H.points=Y.points,Object.hasOwn(Y,"x")&&(H.x=Y.x,H.y=Y.y)}),I.graph().width=A.graph().width,I.graph().height=A.graph().height}var b=["nodesep","edgesep","ranksep","marginx","marginy"],N={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},m=["acyclicer","ranker","rankdir","align"],C=["width","height","rank"],M={width:0,height:0},_=["minlen","weight","width","height","labeloffset"],P={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},j=["labelpos"];function w(I){let A=new p({multigraph:!0,compound:!0}),z=U(I.graph());return A.setGraph(Object.assign({},N,Z(z,b),h.pick(z,m))),I.nodes().forEach(H=>{let Y=Z(U(I.node(H)),C);Object.keys(M).forEach(G=>{Y[G]===void 0&&(Y[G]=M[G])}),A.setNode(H,Y),A.setParent(H,I.parent(H))}),I.edges().forEach(H=>{let Y=U(I.edge(H));A.setEdge(H,Object.assign({},P,Z(Y,_),h.pick(Y,j)))}),A}function E(I){let A=I.graph();A.ranksep/=2,I.edges().forEach(z=>{let H=I.edge(z);H.minlen*=2,H.labelpos.toLowerCase()!=="c"&&(A.rankdir==="TB"||A.rankdir==="BT"?H.width+=H.labeloffset:H.height+=H.labeloffset)})}function O(I){I.edges().forEach(A=>{let z=I.edge(A);if(z.width&&z.height){let H=I.node(A.v),Y={rank:(I.node(A.w).rank-H.rank)/2+H.rank,e:A};h.addDummyNode(I,"edge-proxy",Y,"_ep")}})}function k(I){let A=0;I.nodes().forEach(z=>{let H=I.node(z);H.borderTop&&(H.minRank=I.node(H.borderTop).rank,H.maxRank=I.node(H.borderBottom).rank,A=Math.max(A,H.maxRank))}),I.graph().maxRank=A}function S(I){I.nodes().forEach(A=>{let z=I.node(A);z.dummy==="edge-proxy"&&(I.edge(z.e).labelRank=z.rank,I.removeNode(A))})}function D(I){let A=1/0,z=0,H=1/0,Y=0,G=I.graph(),ee=G.marginx||0,ae=G.marginy||0;function ge(oe){let J=oe.x,de=oe.y,te=oe.width,K=oe.height;A=Math.min(A,J-te/2),z=Math.max(z,J+te/2),H=Math.min(H,de-K/2),Y=Math.max(Y,de+K/2)}I.nodes().forEach(oe=>ge(I.node(oe))),I.edges().forEach(oe=>{let J=I.edge(oe);Object.hasOwn(J,"x")&&ge(J)}),A-=ee,H-=ae,I.nodes().forEach(oe=>{let J=I.node(oe);J.x-=A,J.y-=H}),I.edges().forEach(oe=>{let J=I.edge(oe);J.points.forEach(de=>{de.x-=A,de.y-=H}),Object.hasOwn(J,"x")&&(J.x-=A),Object.hasOwn(J,"y")&&(J.y-=H)}),G.width=z-A+ee,G.height=Y-H+ae}function L(I){I.edges().forEach(A=>{let z=I.edge(A),H=I.node(A.v),Y=I.node(A.w),G,ee;z.points?(G=z.points[0],ee=z.points[z.points.length-1]):(z.points=[],G=Y,ee=H),z.points.unshift(h.intersectRect(H,G)),z.points.push(h.intersectRect(Y,ee))})}function $(I){I.edges().forEach(A=>{let z=I.edge(A);if(Object.hasOwn(z,"x"))switch((z.labelpos==="l"||z.labelpos==="r")&&(z.width-=z.labeloffset),z.labelpos){case"l":z.x-=z.width/2+z.labeloffset;break;case"r":z.x+=z.width/2+z.labeloffset;break}})}function X(I){I.edges().forEach(A=>{let z=I.edge(A);z.reversed&&z.points.reverse()})}function R(I){I.nodes().forEach(A=>{if(I.children(A).length){let z=I.node(A),H=I.node(z.borderTop),Y=I.node(z.borderBottom),G=I.node(z.borderLeft[z.borderLeft.length-1]),ee=I.node(z.borderRight[z.borderRight.length-1]);z.width=Math.abs(ee.x-G.x),z.height=Math.abs(Y.y-H.y),z.x=G.x+z.width/2,z.y=H.y+z.height/2}}),I.nodes().forEach(A=>{I.node(A).dummy==="border"&&I.removeNode(A)})}function T(I){I.edges().forEach(A=>{if(A.v===A.w){var z=I.node(A.v);z.selfEdges||(z.selfEdges=[]),z.selfEdges.push({e:A,label:I.edge(A)}),I.removeEdge(A)}})}function V(I){h.buildLayerMatrix(I).forEach(A=>{var z=0;A.forEach((H,Y)=>{var G=I.node(H);G.order=Y+z,(G.selfEdges||[]).forEach(ee=>{h.addDummyNode(I,"selfedge",{width:ee.label.width,height:ee.label.height,rank:G.rank,order:Y+ ++z,e:ee.e,label:ee.label},"_se")}),delete G.selfEdges})})}function F(I){I.nodes().forEach(A=>{var z=I.node(A);if(z.dummy==="selfedge"){var H=I.node(z.e.v),Y=H.x+H.width/2,G=H.y,ee=z.x-Y,ae=H.height/2;I.setEdge(z.e,z.label),I.removeNode(A),z.label.points=[{x:Y+2*ee/3,y:G-ae},{x:Y+5*ee/6,y:G-ae},{x:Y+ee,y:G},{x:Y+5*ee/6,y:G+ae},{x:Y+2*ee/3,y:G+ae}],z.label.x=z.x,z.label.y=z.y}})}function Z(I,A){return h.mapValues(h.pick(I,A),Number)}function U(I){var A={};return I&&Object.entries(I).forEach(([z,H])=>{typeof z=="string"&&(z=z.toLowerCase()),A[z]=H}),A}})),Ll=q(((t,e)=>{var n=se(),o=ve().Graph;e.exports={debugOrdering:i};function i(d){let a=n.buildLayerMatrix(d),l=new o({compound:!0,multigraph:!0}).setGraph({});return d.nodes().forEach(s=>{l.setNode(s,{label:s}),l.setParent(s,"layer"+d.node(s).rank)}),d.edges().forEach(s=>l.setEdge(s.v,s.w,{},s.name)),a.forEach((s,c)=>{let u="layer"+c;l.setNode(u,{rank:"same"}),s.reduce((r,g)=>(l.setEdge(r,g,{style:"invis"}),g))}),l}})),$l=q(((t,e)=>{e.exports="1.1.8"})),or=q(((t,e)=>{e.exports={graphlib:ve(),layout:zl(),debug:Ll(),util:{time:se().time,notime:se().notime},version:$l()}}))(),ut=new or.graphlib.Graph().setDefaultEdgeLabel(()=>({}));const rr=({nodes:t,edges:e,direction:n})=>(ut.setGraph({rankdir:n,nodesep:150,ranksep:200,ranker:"longest-path"}),e.forEach(o=>ut.setEdge(o.source,o.target)),t.forEach(o=>ut.setNode(o.id,{...o,width:o.width??0,height:o.height??0})),(0,or.layout)(ut),{nodes:t.map(o=>{let{x:i,y:d}=ut.node(o.id);return{...o,position:{x:i,y:d}}}),edges:e});var Tl=De();function Hl(){let t=(0,Tl.c)(7),e=lt(),n=ne(Fl),o=ne(Vl),i;t[0]===e?i=t[1]:(i=()=>{e.fitView({duration:100})},t[0]=e,t[1]=i);let d=Ca(i,100),a,l;t[2]!==d||t[3]!==o||t[4]!==n?(a=()=>{!n||!o||d()},l=[n,o,d],t[2]=d,t[3]=o,t[4]=n,t[5]=a,t[6]=l):(a=t[5],l=t[6]),(0,v.useEffect)(a,l)}function Vl(t){let{height:e}=t;return e}function Fl(t){let{width:e}=t;return e}var Xl=De(),ar=new Js;const Wl=t=>{let e=(0,Xl.c)(45),{cellIds:n,variables:o,cellAtoms:i,children:d,layoutDirection:a,settings:l}=t,s;e[0]!==i||e[1]!==n||e[2]!==a||e[3]!==l.hidePureMarkdown||e[4]!==l.hideReusableFunctions||e[5]!==o?(s=()=>{let R=ar.createElements(n,i,o,l.hidePureMarkdown,l.hideReusableFunctions);return R=rr({nodes:R.nodes,edges:R.edges,direction:a}),R},e[0]=i,e[1]=n,e[2]=a,e[3]=l.hidePureMarkdown,e[4]=l.hideReusableFunctions,e[5]=o,e[6]=s):s=e[6];let[c]=(0,v.useState)(s),[u,r,g]=zs(c.nodes),[h,p,f]=Ls(c.edges),y=lt(),x;e[7]!==a||e[8]!==p||e[9]!==r?(x=R=>{let T=rr({nodes:R.nodes,edges:R.edges,direction:a});r(T.nodes),p(T.edges)},e[7]=a,e[8]=p,e[9]=r,e[10]=x):x=e[10];let b=Yr(x),N,m;e[11]!==i||e[12]!==n||e[13]!==l.hidePureMarkdown||e[14]!==l.hideReusableFunctions||e[15]!==b||e[16]!==o?(N=()=>{b(ar.createElements(n,i,o,l.hidePureMarkdown,l.hideReusableFunctions))},m=[n,o,i,b,l.hidePureMarkdown,l.hideReusableFunctions],e[11]=i,e[12]=n,e[13]=l.hidePureMarkdown,e[14]=l.hideReusableFunctions,e[15]=b,e[16]=o,e[17]=N,e[18]=m):(N=e[17],m=e[18]),(0,v.useEffect)(N,m);let[C,M]=(0,v.useState)();Hl();let _;e[19]===Symbol.for("react.memo_cache_sentinel")?(_=()=>{M(void 0)},e[19]=_):_=e[19];let P=_,j,w,E;e[20]===Symbol.for("react.memo_cache_sentinel")?(j={minZoom:.5,maxZoom:1.5},w=(R,T)=>{M({type:"node",id:T.id})},E=(R,T)=>{let{source:V,target:F}=T;M({type:"edge",source:V,target:F})},e[20]=j,e[21]=w,e[22]=E):(j=e[20],w=e[21],E=e[22]);let O;e[23]===Symbol.for("react.memo_cache_sentinel")?(O=(0,B.jsx)(qs,{color:"#ccc",variant:ye.Dots}),e[23]=O):O=e[23];let k;e[24]!==y||e[25]!==u?(k=()=>{let R=jt.get(Ma);if(R){let T=u.find(V=>V.id===R);T&&(y.fitView({padding:1,duration:600,nodes:[T]}),M({type:"node",id:R}))}},e[24]=y,e[25]=u,e[26]=k):k=e[26];let S;e[27]===Symbol.for("react.memo_cache_sentinel")?(S=(0,B.jsx)($a,{className:"size-4"}),e[27]=S):S=e[27];let D;e[28]===k?D=e[29]:(D=(0,B.jsx)(Ws,{position:"bottom-right",showInteractive:!1,children:(0,B.jsx)(va,{content:"Jump to focused cell",delayDuration:200,side:"left",asChild:!1,children:(0,B.jsx)(et,{onMouseDown:ia.preventFocus,onClick:k,children:S})})}),e[28]=k,e[29]=D);let L;e[30]!==h||e[31]!==C||e[32]!==o?(L=(0,B.jsx)(Uo,{selection:C,variables:o,edges:h,onClearSelection:P}),e[30]=h,e[31]=C,e[32]=o,e[33]=L):L=e[33];let $;e[34]!==d||e[35]!==h||e[36]!==u||e[37]!==f||e[38]!==g||e[39]!==D||e[40]!==L?($=(0,B.jsxs)(Ho,{nodes:u,edges:h,nodeTypes:tl,minZoom:.2,fitViewOptions:j,onNodeClick:w,onEdgeClick:E,onNodeDoubleClick:Yl,fitView:!0,onNodesChange:g,onEdgesChange:f,zoomOnDoubleClick:!1,nodesConnectable:!1,children:[O,D,L,d]}),e[34]=d,e[35]=h,e[36]=u,e[37]=f,e[38]=g,e[39]=D,e[40]=L,e[41]=$):$=e[41];let X;return e[42]!==a||e[43]!==$?(X=(0,B.jsx)(Yo,{value:a,children:$}),e[42]=a,e[43]=$,e[44]=X):X=e[44],X};function Yl(t,e){Na(e.id,"focus")}var Zl=De(),Kl=Pt("TB"),Gl=Pt({hidePureMarkdown:!0,hideReusableFunctions:!1});const Ul=t=>{let e=(0,Zl.c)(13),[n,o]=bn(Kl),[i,d]=bn(Gl),a;e[0]!==n||e[1]!==o||e[2]!==d||e[3]!==i?(a=(0,B.jsx)(Go,{settings:i,onSettingsChange:d,view:n,onChange:o}),e[0]=n,e[1]=o,e[2]=d,e[3]=i,e[4]=a):a=e[4];let l;e[5]!==n||e[6]!==t||e[7]!==i||e[8]!==a?(l=(0,B.jsx)(Wl,{...t,settings:i,layoutDirection:n,children:a}),e[5]=n,e[6]=t,e[7]=i,e[8]=a,e[9]=l):l=e[9];let s;return e[10]!==n||e[11]!==l?(s=(0,B.jsx)(un,{children:l},n),e[10]=n,e[11]=l,e[12]=s):s=e[12],s};function pn(t,e,n=new Set){if(n.has(t))return new Set;n.add(t);let o=new Set;for(let i of e(t)){o.add(i);for(let d of pn(i,e,n))o.add(d)}return o}function ql(t,e){var i,d,a;let n=new Map;for(let l of t)n.set(l,{variables:new Set,parents:new Set,children:new Set});for(let l of Object.values(e))if(l.dataType!=="module")for(let s of l.declaredBy){(i=n.get(s))==null||i.variables.add(l.name);for(let c of l.usedBy)s!==c&&((d=n.get(c))==null||d.parents.add(s),(a=n.get(s))==null||a.children.add(c))}let o={};for(let[l,s]of n.entries())o[l]={parents:s.parents,children:s.children,variables:[...s.variables],ancestors:pn(l,c=>{var u;return((u=n.get(c))==null?void 0:u.parents)??new Set}),descendants:pn(l,c=>{var u;return((u=n.get(c))==null?void 0:u.children)??new Set})};return o}const Ql=Pt(t=>{let e=t(Qr),n=t(oa);return ql(e.inOrderIds,n)});function Jl(t,e){return e?t.usedBy.includes(e.id)||t.declaredBy.includes(e.id)?!0:t.declaredBy.some(n=>e.graph.parents.has(n))?t.usedBy.some(n=>e.graph.parents.has(n)):!!t.declaredBy.some(n=>e.graph.children.has(n)):!1}var kt=De(),ed=t=>{let e=(0,kt.c)(43),n=It(Oa),o=It(Ql),i=na(),d=ka(),a=t.cellId,l=o[t.cellId],s=qr(t.cellId),c=s.code,u=Gr(t.cellId),r,g,h,p,f,y,x,b,N,m,C;if(e[0]!==i||e[1]!==d||e[2]!==n.focusedCellId||e[3]!==o||e[4]!==t.cellId||e[5]!==l||e[6]!==s.code||e[7]!==u.errored){r={id:a,graph:l,code:c,hasError:u.errored},n.focusedCellId&&o[n.focusedCellId]&&(p={id:n.focusedCellId,graph:o[n.focusedCellId]}),h=(p==null?void 0:p.id)===r.id,g=sr(r.graph)?1.5:3;let w=()=>{h?d.blurCell():(i.focusCell({cellId:r.id,where:"exact"}),d.focusCell({cellId:r.id}))};b="button",N=r.id;let E=h?"text-primary-foreground":"text-(--gray-8) hover:text-(--gray-9)";e[19]===E?m=e[20]:(m=Ve("group bg-transparent text-left w-full flex relative justify-between items-center","border-none rounded cursor-pointer","h-[21px] pl-[51px] font-inherit",E),e[19]=E,e[20]=m),C=w,f=sd;let O=h&&"bg-primary group-hover:bg-primary",k;e[21]===O?k=e[22]:(k=Ve("group-hover:bg-(--gray-2) flex h-full w-full px-0.5 items-center rounded",O),e[21]=O,e[22]=k),y=(0,B.jsx)("div",{className:k,children:(0,B.jsx)("div",{className:"truncate px-1 font-mono text-sm flex gap-1",title:r.code,children:r.graph.variables.length>0?(0,B.jsx)(nd,{cell:r,selectedCell:p}):(0,B.jsx)("span",{className:"overflow-hidden text-ellipsis whitespace-nowrap max-w-full",children:td(r.code)??(0,B.jsx)("span",{className:"italic",children:"empty"})})})}),x=Ve("absolute overflow-visible top-[10.5px] left-[calc(var(--spacing-extra-small,8px)+17px)] pointer-events-none",h?"z-[1]":"z-0",ad({cell:r,selectedCell:p})),e[0]=i,e[1]=d,e[2]=n.focusedCellId,e[3]=o,e[4]=t.cellId,e[5]=l,e[6]=s.code,e[7]=u.errored,e[8]=r,e[9]=g,e[10]=h,e[11]=p,e[12]=f,e[13]=y,e[14]=x,e[15]=b,e[16]=N,e[17]=m,e[18]=C}else r=e[8],g=e[9],h=e[10],p=e[11],f=e[12],y=e[13],x=e[14],b=e[15],N=e[16],m=e[17],C=e[18];let M;e[23]===r.id?M=e[24]:(M=(0,B.jsxs)("title",{children:["Cell dependency connections for cell ",r.id]}),e[23]=r.id,e[24]=M);let _;e[25]!==r||e[26]!==g||e[27]!==h||e[28]!==t.cellPositions||e[29]!==p?(_=h?(0,B.jsx)(od,{cell:r,cellPositions:t.cellPositions,circleRadius:g}):(0,B.jsx)(rd,{cell:r,selectedCell:p,circleRadius:g}),e[25]=r,e[26]=g,e[27]=h,e[28]=t.cellPositions,e[29]=p,e[30]=_):_=e[30];let P;e[31]!==M||e[32]!==_||e[33]!==x?(P=(0,B.jsxs)("svg",{className:x,width:"1",height:"1",children:[M,_]}),e[31]=M,e[32]=_,e[33]=x,e[34]=P):P=e[34];let j;return e[35]!==f||e[36]!==y||e[37]!==P||e[38]!==b||e[39]!==N||e[40]!==m||e[41]!==C?(j=(0,B.jsxs)("button",{type:b,"data-node-id":N,className:m,onClick:C,onMouseDown:f,children:[y,P]}),e[35]=f,e[36]=y,e[37]=P,e[38]=b,e[39]=N,e[40]=m,e[41]=C,e[42]=j):j=e[42],j};function td(t){return t.split(`
|
|
4
|
+
`)[0].trim()||void 0}var nd=t=>{let e=(0,kt.c)(11),{cell:n,selectedCell:o}=t,i=wn(),d=n.id===(o==null?void 0:o.id),a;if(e[0]!==n.graph.variables||e[1]!==d||e[2]!==o||e[3]!==i){let s;e[5]!==d||e[6]!==o||e[7]!==i?(s=(c,u)=>{let r=i[c];return(0,B.jsxs)(v.Fragment,{children:[u>0&&", ",(0,B.jsx)("span",{className:Ve({"font-bold":d,"text-foreground":o===void 0,"text-primary font-medium":!d&&Jl(r,o)}),children:c})]},c)},e[5]=d,e[6]=o,e[7]=i,e[8]=s):s=e[8],a=n.graph.variables.map(s),e[0]=n.graph.variables,e[1]=d,e[2]=o,e[3]=i,e[4]=a}else a=e[4];let l;return e[9]===a?l=e[10]:(l=(0,B.jsx)(B.Fragment,{children:a}),e[9]=a,e[10]=l),l},od=t=>{let e=(0,kt.c)(12),{cell:n,cellPositions:o,circleRadius:i}=t,d;if(e[0]!==n.graph.children||e[1]!==n.graph.parents||e[2]!==n.id||e[3]!==o){d=[];let c=o[n.id]??0,u=new Set;for(let r of n.graph.parents)n.graph.children.has(r)&&u.add(r);for(let r of u){let g=o[r];if(g!==void 0){let h=(g-c)*21;d.push((0,B.jsx)("path",{d:`M -3 0 H -7 v ${h} h 14 v ${-h} H 3`,fill:"none",strokeWidth:"2",stroke:"currentColor"},`${n.id}-cycle-${r}`))}}for(let r of n.graph.parents){if(u.has(r))continue;let g=o[r];if(g!==void 0){let h=(g-c)*21;d.push((0,B.jsx)("path",{d:`M -3 0 H -7 v ${h} h -4`,fill:"none",strokeWidth:"2",stroke:"currentColor"},`${n.id}-up-${r}`))}}for(let r of n.graph.children){if(u.has(r))continue;let g=o[r];if(g!==void 0){let h=(g-c)*21;d.push((0,B.jsx)("path",{d:`M 3 0 H 7 v ${h} h 4`,fill:"none",strokeWidth:"2",stroke:"currentColor"},`${n.id}-down-${r}`))}}e[0]=n.graph.children,e[1]=n.graph.parents,e[2]=n.id,e[3]=o,e[4]=d}else d=e[4];let a;e[5]===i?a=e[6]:(a=(0,B.jsx)("circle",{r:i,fill:"currentColor",className:"pointer-events-auto"}),e[5]=i,e[6]=a);let l;e[7]===d?l=e[8]:(l=(0,B.jsx)("g",{className:"pen pointer-events-auto",children:d}),e[7]=d,e[8]=l);let s;return e[9]!==a||e[10]!==l?(s=(0,B.jsxs)("g",{transform:"translate(0, 0)",children:[a,l]}),e[9]=a,e[10]=l,e[11]=s):s=e[11],s};function rd(t){let{cell:e,selectedCell:n,circleRadius:o}=t,i=e.graph.ancestors.size>0,d=e.graph.descendants.size>0;if(!n)return ir({circleRadius:o,leftWisker:i,rightWisker:d});let a=n.graph.ancestors.has(e.id),l=n.graph.descendants.has(e.id);return ir(a||l?{circleRadius:o,leftWisker:i,rightWisker:d,shift:a&&l?void 0:a?"left":"right"}:{circleRadius:o,leftWisker:!1,rightWisker:!1})}function ir(t){let{circleRadius:e,leftWisker:n,rightWisker:o,shift:i}=t;return(0,B.jsxs)("g",{transform:`translate(${i===void 0?0:i==="left"?-14:14}, 0)`,children:[(0,B.jsxs)("g",{children:[n&&(0,B.jsx)("path",{d:"M 0 0 h -8",fill:"none",strokeWidth:"2",stroke:"currentColor"}),o&&(0,B.jsx)("path",{d:"M 0 0 h 8",fill:"none",strokeWidth:"2",stroke:"currentColor"})]}),(0,B.jsx)("circle",{r:e,fill:"currentColor",className:"pointer-events-auto"})]})}function ad({cell:t,selectedCell:e}){return t.hasError?"text-destructive":!e&&!sr(t.graph)?"text-foreground":(e==null?void 0:e.id)===t.id||e!=null&&e.graph.parents.has(t.id)||e!=null&&e.graph.children.has(t.id)?"text-primary":"text-(--gray-8)"}function sr(t){return t.variables.length===0&&t.ancestors.size===0&&t.descendants.size===0}const id=()=>{let t=(0,kt.c)(16),e=Rt(),n;t[0]===e.inOrderIds?n=t[1]:(n=Object.fromEntries(e.inOrderIds.map(ld)),t[0]=e.inOrderIds,t[1]=n);let o=n,i;if(t[2]!==e){i=[];let c=0;for(let[u,r]of e.getColumns().entries())u>0&&i.push(c),c+=r.inOrderIds.length;t[2]=e,t[3]=i}else i=t[3];let d;if(t[4]!==e.inOrderIds||t[5]!==o||t[6]!==i){let c;t[8]!==o||t[9]!==i?(c=(u,r)=>{let g=i.includes(r);return(0,B.jsxs)(v.Fragment,{children:[g&&(0,B.jsx)("div",{className:"absolute left-5 w-[36px] h-px bg-(--gray-4) pointer-events-none","aria-hidden":"true"}),(0,B.jsx)(ed,{cellId:u,cellPositions:o})]},u)},t[8]=o,t[9]=i,t[10]=c):c=t[10],d=e.inOrderIds.map(c),t[4]=e.inOrderIds,t[5]=o,t[6]=i,t[7]=d}else d=t[7];let a;t[11]===d?a=t[12]:(a=(0,B.jsx)("div",{className:"py-3 pl-3 pr-4 relative min-h-full",children:d}),t[11]=d,t[12]=a);let l;t[13]===Symbol.for("react.memo_cache_sentinel")?(l=(0,B.jsx)("div",{className:"h-0 overflow-hidden","aria-hidden":"true"}),t[13]=l):l=t[13];let s;return t[14]===a?s=t[15]:(s=(0,B.jsxs)("div",{className:"overflow-y-auto overflow-x-hidden flex-1 scrollbar-none h-full max-w-80",children:[a,l]}),t[14]=a,t[15]=s),s};function sd(t){return t.preventDefault()}function ld(t,e){return[t,e]}var dd=De(),cd=()=>{let t=(0,dd.c)(13),{dependencyPanelTab:e,setDependencyPanelTab:n}=ca(),o=wn(),i=Rt(),[d]=Kr(),a=Ba()==="developer-panel",l;t[0]===Symbol.for("react.memo_cache_sentinel")?(l=Ve("w-full h-full flex-1 mx-auto -mb-4 flex flex-col"),t[0]=l):l=t[0];let s;t[1]!==e||t[2]!==n||t[3]!==a?(s=a&&(0,B.jsx)("div",{className:"p-2 shrink-0",children:(0,B.jsx)(Ea,{value:e,onValueChange:r=>{(r==="minimap"||r==="graph")&&n(r)},children:(0,B.jsxs)(xa,{children:[(0,B.jsx)(Sn,{value:"minimap",className:"py-0.5 text-xs uppercase tracking-wide font-bold",children:"Minimap"}),(0,B.jsx)(Sn,{value:"graph",className:"py-0.5 text-xs uppercase tracking-wide font-bold",children:"Graph"})]})})}),t[1]=e,t[2]=n,t[3]=a,t[4]=s):s=t[4];let c;t[5]!==i||t[6]!==d||t[7]!==e||t[8]!==o?(c=(0,B.jsx)("div",{className:"flex-1 min-h-0 relative",children:e==="minimap"?(0,B.jsx)(id,{}):(0,B.jsx)(Ul,{cellAtoms:d,variables:o,cellIds:i.inOrderIds})}),t[5]=i,t[6]=d,t[7]=e,t[8]=o,t[9]=c):c=t[9];let u;return t[10]!==s||t[11]!==c?(u=(0,B.jsxs)("div",{className:l,children:[s,c]}),t[10]=s,t[11]=c,t[12]=u):u=t[12],u};export{cd as default};
|