const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./index-D2GHK8-k.js","./VegaLite-x3FR6zXd.js","./index-BiV-b1K2.js","./index-DkqMrX_B.css","./compile-C9-2F0s7.js","./time-IYxE9Zrl.js","./step-xJWGRC3d.js","./linear-Ba7S-mDj.js","./init-DLRA0X12.js","./range-CtcPcB_L.js","./ordinal-BcaZTuz9.js","./colors-bszWmPJw.js","./arc-B5qYPUYs.js","./index-DbEIEgDe.js","./terminal-Dh_UZMvv.js","./createWsUrl-Bazdvp-G.js","./terminal-WibgYtSD.css"])))=>i.map(i=>d[i]); var e,t=Object.defineProperty,n=(e,n,r)=>((e,n,r)=>n in e?t(e,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[n]=r)(e,"symbol"!=typeof n?n+"":n,r);import{aD as r,J as o,ht as s,hu as i,hv as a,hw as l,hx as c,hy as d,R as u,hz as h,hA as f,hB as p,hC as m,hD as g,hE as y,hF as b,hG as x,hH as v,at as w,eS as k,ff as S,G as C,a9 as E,P as N,eG as j,eH as _,eI as I,eK as A,db as T,es as M,hI as O,eE as D,eF as R,eJ as P,hJ as L,hK as z,dG as F,ar as B,H as U,hL as $,dh as V,hM as H,hN as W,hO as G,eD as q,cn as Y,$ as J,hP as X,dI as K,hQ as Z,hR as Q,a5 as ee,hS as te,dM as ne,hT as re,hU as oe,M as se,aM as ie,aS as ae,hV as le,hW as ce,dw as de,hX as ue,hY as he,hZ as fe,dE as pe,h_ as me,h$ as ge,da as ye,i0 as be,i1 as xe,b3 as ve,i2 as we,i3 as ke,aV as Se,e1 as Ce,aW as Ee,i4 as Ne,i5 as je,i6 as _e,a0 as Ie,a1 as Ae,a2 as Te,be as Me,i7 as Oe,ac as De,dx as Re,fG as Pe,fJ as Le,aQ as ze,fd as Fe,az as Be,i8 as Ue,i9 as $e,ia as Ve,ib as He,ic as We,fe as Ge,id as qe,ie as Ye,fj as Je,ig as Xe,ih as Ke,dr as Ze,W as Qe,a3 as et,bc as tt,a4 as nt,ii as rt,aw as ot,a6 as st,ax as it,ep as at,aY as lt,dO as ct,ij as dt,ee as ut,dH as ht,ik as ft,dg as pt,eM as mt,il as gt,b4 as yt,im as bt,dB as xt,io as vt,ip as wt,bh as kt,iq as St,ir as Ct,is as Et,aF as Nt,it as jt,iu as _t,fn as It,fp as At,iv as Tt,iw as Mt,_ as Ot,Z as Dt,dA as Rt,ix as Pt,iy as Lt,iz as zt,iA as Ft,iB as Bt,fi as Ut,dc as $t,a$ as Vt,iC as Ht,a8 as Wt,b2 as Gt,iD as qt,fK as Yt,iE as Jt,a7 as Xt,ds as Kt,iF as Zt,Y as Qt,iG as en,b5 as tn,b7 as nn,iH as rn,iI as on,iJ as sn,iK as an,dF as ln,b0 as cn,b1 as dn,iL as un,iM as hn,dp as fn,iN as pn,iO as mn,j as gn,g as yn,eW as bn,iP as xn,iQ as vn,iR as wn,iS as kn,iT as Sn,df as Cn,iU as En,iV as Nn,ao as jn,aT as _n,aU as In,ad as An,iW as Tn,iX as Mn,fN as On,iY as Dn,aP as Rn,fM as Pn,iZ as Ln,i_ as zn,dJ as Fn,i$ as Bn,j0 as Un,j1 as $n,j2 as Vn,j3 as Hn,dK as Wn,j4 as Gn,j5 as qn,j6 as Yn,j7 as Jn,j8 as Xn,aE as Kn,as as Zn,j9 as Qn,f2 as er,ja as tr,jb as nr,f9 as rr,jc as or,eV as sr,jd as ir,je as ar,jf as lr,jg as cr,jh as dr,ji as ur,e$ as hr,l as fr,jj as pr,jk as mr,jl as gr,t as yr,jm as br,jn as xr,fA as vr,jo as wr,jp as kr,am as Sr,ed as Cr,jq as Er,jr as Nr,js as jr,jt as _r,ju as Ir,jv as Ar,jw as Tr,jx as Mr,jy as Or,jz as Dr,jA as Rr,jB as Pr,jC as Lr,jD as zr,jE as Fr,jF as Br,jG as Ur,jH as $r,jI as Vr,jJ as Hr,jK as Wr,jL as Gr,jM as qr,jN as Yr,jO as Jr,jP as Xr,jQ as Kr,jR as Zr,jS as Qr,jT as eo,jU as to,jV as no,jW as ro,jX as oo,jY as so,jZ as io,j_ as ao,j$ as lo,k0 as co,k1 as uo,k2 as ho,k3 as fo,k4 as po,k5 as mo,k6 as go,k7 as yo,k8 as bo,k9 as xo,ka as vo,kb as wo,kc as ko,kd as So,ke as Co,dP as Eo,kf as No,kg as jo,dT as _o,kh as Io,ki as Ao,kj as To,kk as Mo,kl as Oo,ae as Do,km as Ro,dS as Po,kn as Lo,ko as zo,kp as Fo,kq as Bo,kr as Uo,ks as $o,kt as Vo,ku as Ho,kv as Wo,kw as Go,kx as qo,ky as Yo,kz as Jo,kA as Xo,kB as Ko,kC as Zo,kD as Qo,aa as es,kE as ts,kF as ns,ec as rs,kG as os,kH as ss,kI as is,kJ as as,kK as ls,kL as cs,kM as ds,kN as us,fL as hs,kO as fs,kP as ps,kQ as ms,kR as gs,f7 as ys,bb as bs,fO as xs,kS as vs,kT as ws,kU as ks,kV as Ss,kW as Cs,kX as Es,kY as Ns,kZ as js,k_ as _s,k$ as Is,l0 as As,l1 as Ts,e6 as Ms,bd as Os,aR as Ds,K as Rs,T as Ps,l2 as Ls,l3 as zs,l4 as Fs,l5 as Bs,l6 as Us,l7 as $s,l8 as Vs,l9 as Hs,la as Ws,lb as Gs,bf as qs,lc as Ys,ld as Js,dz as Xs,le as Ks,lf as Zs,lg as Qs,lh as ei,d8 as ti,eQ as ni,dD as ri,li as oi,lj as si,lk as ii,ba as ai,ll as li,ev as ci,fo as di,ft as ui,fr as hi,fu as fi,fw as pi,fy as mi,fC as gi,fx as yi,lm as bi,ln as xi,lo as vi,lp as wi,eq as ki,lq as Si,lr as Ci,ls as Ei,lt as Ni,O as ji,lu as _i,Q as Ii,lv as Ai,lw as Ti,eU as Mi,dj as Oi,aN as Di,lx as Ri,ly as Pi,lz as Li,lA as zi,eb as Fi,lB as Bi,lC as Ui,dv as $i,lD as Vi,lE as Hi,lF as Wi,lG as Gi,lH as qi,eP as Yi,lI as Ji,lJ as Xi,dN as Ki,lK as Zi,lL as Qi,lM as ea,lN as ta,lO as na,lP as ra,lQ as oa,lR as sa,lS as ia,lT as aa,lU as la,lV as ca,lW as da,lX as ua,lY as ha,di as fa,lZ as pa,l_ as ma,l$ as ga,m0 as ya,m1 as ba,ap as xa,aX as va,m2 as wa,m3 as ka,m4 as Sa,m5 as Ca,m6 as Ea,m7 as Na,m8 as ja,m9 as _a,ma as Ia,mb as Aa,mc as Ta,md as Ma,f1 as Oa,me as Da,mf as Ra,mg as Pa,mh as La,fB as za,mi as Fa,mj as Ba,mk as Ua,ml as $a,d1 as Va,mm as Ha,mn as Wa,mo as Ga,eu as qa,mp as Ya,mq as Ja,mr as Xa,ms as Ka,mt as Za,mu as Qa,mv as el,mw as tl,ay as nl,mx as rl,my as ol,mz as sl,mA as il,mB as al,mC as ll,mD as cl,q as dl,mE as ul,mF as hl,aO as fl,eg as pl}from"./index-BiV-b1K2.js";import{G as ml,M as gl,b as yl,g as bl,c as xl,A as vl,s as wl,k as kl,B as Sl,d as Cl,u as El,C as Nl,S as jl,K as _l,e as Il,i as Al,f as Tl,L as Ml,h as Ol,j as Dl,l as Rl,m as Pl,n as Ll,o as zl,p as Fl,q as Bl,P as Ul,r as $l,t as Vl,T as Hl,a as Wl}from"./tree-DZAe83wi.js";import{b as Gl,c as ql,L as Yl,I as Jl,N as Xl,V as Kl,F as Zl,d as Ql,M as ec,l as tc,g as nc,E as rc,e as oc,f as sc,h as ic,i as ac,j as lc,k as cc,m as dc,n as uc,o as hc,p as fc,u as pc,C as mc,R as gc,a as yc,A as bc,q as xc,r as vc,O as wc,T as kc,s as Sc,t as Cc}from"./useMarimoWebSocket-BLMCu7Fz.js";import{s as Ec,i as Nc,T as jc,a as _c}from"./transform-CdY8z5kT.js";import{X as Ic}from"./step-xJWGRC3d.js";import{W as Ac,d as Tc}from"./compile-C9-2F0s7.js";import{s as Mc}from"./sortBy-CHDem8Sy.js";import"./main-CEaoNRsh.js";import"./createWsUrl-Bazdvp-G.js";import"./index-DbEIEgDe.js";import"./time-IYxE9Zrl.js";import"./linear-Ba7S-mDj.js";import"./init-DLRA0X12.js";import"./range-CtcPcB_L.js";import"./ordinal-BcaZTuz9.js";import"./colors-bszWmPJw.js";import"./arc-B5qYPUYs.js";import"./_baseEach-DDZLUgL5.js";import"./_baseMap-CoUfqKnE.js"; /** * @license lucide-react v0.474.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. */const Oc=r("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]),Dc=r("ArrowRightFromLine",[["path",{d:"M3 5v14",key:"1nt18q"}],["path",{d:"M21 12H7",key:"13ipq5"}],["path",{d:"m15 18 6-6-6-6",key:"6tx3qv"}]]),Rc=r("ArrowRightToLine",[["path",{d:"M17 12H3",key:"8awo09"}],["path",{d:"m11 18 6-6-6-6",key:"8c2y43"}],["path",{d:"M21 5v14",key:"nzette"}]]),Pc=r("ArrowRight",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]),Lc=r("Ban",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m4.9 4.9 14.2 14.2",key:"1m5liu"}]]),zc=r("BetweenHorizontalStart",[["rect",{width:"13",height:"7",x:"8",y:"3",rx:"1",key:"pkso9a"}],["path",{d:"m2 9 3 3-3 3",key:"1agib5"}],["rect",{width:"13",height:"7",x:"8",y:"14",rx:"1",key:"1q5fc1"}]]),Fc=r("BookMarked",[["path",{d:"M10 2v8l3-3 3 3V2",key:"sqw3rj"}],["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}]]),Bc=r("Box",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]),Uc=r("ChevronsDown",[["path",{d:"m7 6 5 5 5-5",key:"1lc07p"}],["path",{d:"m7 13 5 5 5-5",key:"1d48rs"}]]),$c=r("ChevronsUp",[["path",{d:"m17 11-5-5-5 5",key:"e8nh98"}],["path",{d:"m17 18-5-5-5 5",key:"2avn1x"}]]),Vc=r("CircleCheck",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]),Hc=r("CircleEllipsis",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M17 12h.01",key:"1m0b6t"}],["path",{d:"M12 12h.01",key:"1mp3jc"}],["path",{d:"M7 12h.01",key:"eqddd0"}]]),Wc=r("CirclePlus",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M8 12h8",key:"1wcyev"}],["path",{d:"M12 8v8",key:"napkw2"}]]),Gc=r("ClipboardCopy",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]]),qc=r("ClipboardPaste",[["path",{d:"M15 2H9a1 1 0 0 0-1 1v2c0 .6.4 1 1 1h6c.6 0 1-.4 1-1V3c0-.6-.4-1-1-1Z",key:"1pp7kr"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M16 4h2a2 2 0 0 1 2 2v2M11 14h10",key:"2ik1ml"}],["path",{d:"m17 10 4 4-4 4",key:"vp2hj1"}]]),Yc=r("CloudDownload",[["path",{d:"M12 13v8l-4-4",key:"1f5nwf"}],["path",{d:"m12 21 4-4",key:"1lfcce"}],["path",{d:"M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284",key:"ui1hmy"}]]),Jc=r("Code",[["polyline",{points:"16 18 22 12 16 6",key:"z7tu5w"}],["polyline",{points:"8 6 2 12 8 18",key:"1eg1df"}]]),Xc=r("Command",[["path",{d:"M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3",key:"11bfej"}]]),Kc=r("CopyMinus",[["line",{x1:"12",x2:"18",y1:"15",y2:"15",key:"1nscbv"}],["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]),Zc=r("EllipsisVertical",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"12",cy:"5",r:"1",key:"gxeob9"}],["circle",{cx:"12",cy:"19",r:"1",key:"lyex9k"}]]),Qc=r("Eraser",[["path",{d:"m7 21-4.3-4.3c-1-1-1-2.5 0-3.4l9.6-9.6c1-1 2.5-1 3.4 0l5.6 5.6c1 1 1 2.5 0 3.4L13 21",key:"182aya"}],["path",{d:"M22 21H7",key:"t4ddhn"}],["path",{d:"m5 11 9 9",key:"1mo9qw"}]]),ed=r("FastForward",[["polygon",{points:"13 19 22 12 13 5 13 19",key:"587y9g"}],["polygon",{points:"2 19 11 12 2 5 2 19",key:"3pweh0"}]]),td=r("FilePen",[["path",{d:"M12.5 22H18a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v9.5",key:"1couwa"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M13.378 15.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z",key:"1y4qbx"}]]),nd=r("FilePlus2",[["path",{d:"M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4",key:"1pf5j1"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M3 15h6",key:"4e2qda"}],["path",{d:"M6 12v6",key:"1u72j0"}]]),rd=r("Files",[["path",{d:"M20 7h-3a2 2 0 0 1-2-2V2",key:"x099mo"}],["path",{d:"M9 18a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h7l4 4v10a2 2 0 0 1-2 2Z",key:"18t6ie"}],["path",{d:"M3 7.6v12.8A1.6 1.6 0 0 0 4.6 22h9.8",key:"1nja0z"}]]),od=r("FolderPlus",[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]),sd=r("FolderTree",[["path",{d:"M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"hod4my"}],["path",{d:"M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"w4yl2u"}],["path",{d:"M3 5a2 2 0 0 0 2 2h3",key:"f2jnh7"}],["path",{d:"M3 3v13a2 2 0 0 0 2 2h3",key:"k8epm1"}]]),id=r("GripVertical",[["circle",{cx:"9",cy:"12",r:"1",key:"1vctgf"}],["circle",{cx:"9",cy:"5",r:"1",key:"hp0tcf"}],["circle",{cx:"9",cy:"19",r:"1",key:"fkjjf6"}],["circle",{cx:"15",cy:"12",r:"1",key:"1tmaij"}],["circle",{cx:"15",cy:"5",r:"1",key:"19l28e"}],["circle",{cx:"15",cy:"19",r:"1",key:"f4zoj3"}]]),ad=r("HardDriveDownload",[["path",{d:"M12 2v8",key:"1q4o3n"}],["path",{d:"m16 6-4 4-4-4",key:"6wukr"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",key:"w68u3i"}],["path",{d:"M6 18h.01",key:"uhywen"}],["path",{d:"M10 18h.01",key:"h775k"}]]),ld=r("History",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]]),cd=r("House",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"1d0kgt"}]]),dd=r("Keyboard",[["path",{d:"M10 8h.01",key:"1r9ogq"}],["path",{d:"M12 12h.01",key:"1mp3jc"}],["path",{d:"M14 8h.01",key:"1primd"}],["path",{d:"M16 12h.01",key:"1l6xoz"}],["path",{d:"M18 8h.01",key:"emo2bl"}],["path",{d:"M6 8h.01",key:"x9i8wu"}],["path",{d:"M7 16h10",key:"wp8him"}],["path",{d:"M8 12h.01",key:"czm47f"}],["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}]]),ud=r("LayoutTemplate",[["rect",{width:"18",height:"7",x:"3",y:"3",rx:"1",key:"f1a2em"}],["rect",{width:"9",height:"7",x:"3",y:"14",rx:"1",key:"jqznyg"}],["rect",{width:"5",height:"7",x:"16",y:"14",rx:"1",key:"q5h2i8"}]]),hd=r("Link",[["path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71",key:"1cjeqo"}],["path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71",key:"19qd67"}]]),fd=r("List",[["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 18h.01",key:"1tta3j"}],["path",{d:"M3 6h.01",key:"1rqtza"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 18h13",key:"1lx6n3"}],["path",{d:"M8 6h13",key:"ik3vkj"}]]),pd=r("MapPin",[["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"}]]),md=r("MemoryStick",[["path",{d:"M6 19v-3",key:"1nvgqn"}],["path",{d:"M10 19v-3",key:"iu8nkm"}],["path",{d:"M14 19v-3",key:"kcehxu"}],["path",{d:"M18 19v-3",key:"1vh91z"}],["path",{d:"M8 11V9",key:"63erz4"}],["path",{d:"M16 11V9",key:"fru6f3"}],["path",{d:"M12 11V9",key:"ha00sb"}],["path",{d:"M2 15h20",key:"16ne18"}],["path",{d:"M2 7a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v1.1a2 2 0 0 0 0 3.837V17a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-5.1a2 2 0 0 0 0-3.837Z",key:"lhddv3"}]]),gd=r("MessageCircleQuestion",[["path",{d:"M7.9 20A9 9 0 1 0 4 16.1L2 22Z",key:"vv11sd"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]]),yd=r("Network",[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]]),bd=r("NotebookPen",[["path",{d:"M13.4 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7.4",key:"re6nr2"}],["path",{d:"M2 6h4",key:"aawbzj"}],["path",{d:"M2 10h4",key:"l0bgd4"}],["path",{d:"M2 14h4",key:"1gsvsf"}],["path",{d:"M2 18h4",key:"1bu2t1"}],["path",{d:"M21.378 5.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z",key:"pqwjuv"}]]),xd=r("OctagonAlert",[["path",{d:"M12 16h.01",key:"1drbdi"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M15.312 2a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586l-4.688-4.688A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2z",key:"1fd625"}]]),vd=r("PackageCheck",[["path",{d:"m16 16 2 2 4-4",key:"gfu2re"}],["path",{d:"M21 10V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l2-1.14",key:"e7tb2h"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["line",{x1:"12",x2:"12",y1:"22",y2:"12",key:"a4e8g8"}]]),wd=r("PackageX",[["path",{d:"M21 10V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l2-1.14",key:"e7tb2h"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["line",{x1:"12",x2:"12",y1:"22",y2:"12",key:"a4e8g8"}],["path",{d:"m17 13 5 5m-5 0 5-5",key:"im3w4b"}]]),kd=r("PaintRoller",[["rect",{width:"16",height:"6",x:"2",y:"2",rx:"2",key:"jcyz7m"}],["path",{d:"M10 16v-2a2 2 0 0 1 2-2h8a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2",key:"1b9h7c"}],["rect",{width:"4",height:"6",x:"8",y:"16",rx:"1",key:"d6e7yl"}]]),Sd=r("PanelLeft",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]]),Cd=r("PartyPopper",[["path",{d:"M5.8 11.3 2 22l10.7-3.79",key:"gwxi1d"}],["path",{d:"M4 3h.01",key:"1vcuye"}],["path",{d:"M22 8h.01",key:"1mrtc2"}],["path",{d:"M15 2h.01",key:"1cjtqr"}],["path",{d:"M22 20h.01",key:"1mrys2"}],["path",{d:"m22 2-2.24.75a2.9 2.9 0 0 0-1.96 3.12c.1.86-.57 1.63-1.45 1.63h-.38c-.86 0-1.6.6-1.76 1.44L14 10",key:"hbicv8"}],["path",{d:"m22 13-.82-.33c-.86-.34-1.82.2-1.98 1.11c-.11.7-.72 1.22-1.43 1.22H17",key:"1i94pl"}],["path",{d:"m11 2 .33.82c.34.86-.2 1.82-1.11 1.98C9.52 4.9 9 5.52 9 6.23V7",key:"1cofks"}],["path",{d:"M11 13c1.93 1.93 2.83 4.17 2 5-.83.83-3.07-.07-5-2-1.93-1.93-2.83-4.17-2-5 .83-.83 3.07.07 5 2Z",key:"4kbmks"}]]),Ed=r("PenLine",[["path",{d:"M12 20h9",key:"t2du7b"}],["path",{d:"M16.376 3.622a1 1 0 0 1 3.002 3.002L7.368 18.635a2 2 0 0 1-.855.506l-2.872.838a.5.5 0 0 1-.62-.62l.838-2.872a2 2 0 0 1 .506-.854z",key:"1ykcvy"}]]),Nd=r("Play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]]),jd=r("Presentation",[["path",{d:"M2 3h20",key:"91anmk"}],["path",{d:"M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3",key:"2k9sn8"}],["path",{d:"m7 21 5-5 5 5",key:"bip4we"}]]),_d=r("Regex",[["path",{d:"M17 3v10",key:"15fgeh"}],["path",{d:"m12.67 5.5 8.66 5",key:"1gpheq"}],["path",{d:"m12.67 10.5 8.66-5",key:"1dkfa6"}],["path",{d:"M9 17a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2v-2z",key:"swwfx4"}]]),Id=r("RotateCcw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]),Ad=r("Rows3",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M21 9H3",key:"1338ky"}],["path",{d:"M21 15H3",key:"9uk58r"}]]),Td=r("Save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]),Md=r("Scissors",[["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M8.12 8.12 12 12",key:"1alkpv"}],["path",{d:"M20 4 8.12 15.88",key:"xgtan2"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["path",{d:"M14.8 14.8 20 20",key:"ptml3r"}]]),Od=r("ScrollText",[["path",{d:"M15 12h-5",key:"r7krc0"}],["path",{d:"M15 8h-5",key:"1khuty"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]]),Dd=r("Share2",[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]]),Rd=r("SquareCode",[["path",{d:"M10 9.5 8 12l2 2.5",key:"3mjy60"}],["path",{d:"m14 9.5 2 2.5-2 2.5",key:"1bir2l"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]),Pd=r("SquareDashedBottomCode",[["path",{d:"M10 9.5 8 12l2 2.5",key:"3mjy60"}],["path",{d:"M14 21h1",key:"v9vybs"}],["path",{d:"m14 9.5 2 2.5-2 2.5",key:"1bir2l"}],["path",{d:"M5 21a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2",key:"as5y1o"}],["path",{d:"M9 21h1",key:"15o7lz"}]]),Ld=r("SquareEqual",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M7 10h10",key:"1101jm"}],["path",{d:"M7 14h10",key:"1mhdw3"}]]),zd=r("SquareM",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M8 16V8l4 4 4-4v8",key:"141u4e"}]]),Fd=r("SquarePlay",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"m9 8 6 4-6 4Z",key:"f1r3lt"}]]),Bd=r("SquarePlus",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M8 12h8",key:"1wcyev"}],["path",{d:"M12 8v8",key:"napkw2"}]]),Ud=r("SquarePower",[["path",{d:"M12 7v4",key:"xawao1"}],["path",{d:"M7.998 9.003a5 5 0 1 0 8-.005",key:"1pek45"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}]]),$d=r("SquareTerminal",[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]]),Vd=r("Table2",[["path",{d:"M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18",key:"gugj83"}]]),Hd=r("TextCursorInput",[["path",{d:"M5 4h1a3 3 0 0 1 3 3 3 3 0 0 1 3-3h1",key:"18xjzo"}],["path",{d:"M13 20h-1a3 3 0 0 1-3-3 3 3 0 0 1-3 3H5",key:"fj48gi"}],["path",{d:"M5 16H4a2 2 0 0 1-2-2v-4a2 2 0 0 1 2-2h1",key:"1n9rhb"}],["path",{d:"M13 8h7a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2h-7",key:"13ksps"}],["path",{d:"M9 7v10",key:"1vc8ob"}]]),Wd=r("TextSearch",[["path",{d:"M21 6H3",key:"1jwq7v"}],["path",{d:"M10 12H3",key:"1ulcyk"}],["path",{d:"M10 18H3",key:"13769t"}],["circle",{cx:"17",cy:"15",r:"3",key:"1upz2a"}],["path",{d:"m21 19-1.9-1.9",key:"dwi7p8"}]]),Gd=r("Undo2",[["path",{d:"M9 14 4 9l5-5",key:"102s5s"}],["path",{d:"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11",key:"f3b9sd"}]]),qd=r("View",[["path",{d:"M21 17v2a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-2",key:"mrq65r"}],["path",{d:"M21 7V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v2",key:"be3xqs"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["path",{d:"M18.944 12.33a1 1 0 0 0 0-.66 7.5 7.5 0 0 0-13.888 0 1 1 0 0 0 0 .66 7.5 7.5 0 0 0 13.888 0",key:"11ak4c"}]]),Yd=r("WholeWord",[["circle",{cx:"7",cy:"12",r:"3",key:"12clwm"}],["path",{d:"M10 9v6",key:"17i7lo"}],["circle",{cx:"17",cy:"12",r:"3",key:"gl7c2s"}],["path",{d:"M14 7v8",key:"dl84cr"}],["path",{d:"M22 17v1c0 .5-.5 1-1 1H3c-.5 0-1-.5-1-1v-1",key:"lt2kga"}]]),Jd=r("Workflow",[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]]),Xd=r("ZapOff",[["path",{d:"M10.513 4.856 13.12 2.17a.5.5 0 0 1 .86.46l-1.377 4.317",key:"193nxd"}],["path",{d:"M15.656 10H20a1 1 0 0 1 .78 1.63l-1.72 1.773",key:"27a7lr"}],["path",{d:"M16.273 16.273 10.88 21.83a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14H4a1 1 0 0 1-.78-1.63l4.507-4.643",key:"1e0qe9"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]),Kd=r("Zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);const Zd=o.createContext({}),Qd=o.forwardRef((function(e,t){[e,t]=c(e,t,Zd);let{toolbarProps:n}=function(e,t){const{"aria-label":n,"aria-labelledby":r,orientation:c="horizontal"}=e;let[d,u]=o.useState(!1);s((()=>{var e;u(!(!t.current||!(null===(e=t.current.parentElement)||void 0===e?void 0:e.closest('[role="toolbar"]'))))}));const{direction:h}=i(),f="rtl"===h&&"horizontal"===c;let p=l(t);const m=o.useRef(null);return{toolbarProps:{...a(e,{labelable:!0}),role:d?"group":"toolbar","aria-orientation":c,"aria-label":n,"aria-labelledby":null==n?r:void 0,onKeyDownCapture:d?void 0:e=>{if(e.currentTarget.contains(e.target)){if("horizontal"===c&&"ArrowRight"===e.key||"vertical"===c&&"ArrowDown"===e.key)f?p.focusPrevious():p.focusNext();else{if(!("horizontal"===c&&"ArrowLeft"===e.key||"vertical"===c&&"ArrowUp"===e.key))return"Tab"===e.key?(e.stopPropagation(),m.current=document.activeElement,void(e.shiftKey?p.focusFirst():p.focusLast())):void 0;f?p.focusNext():p.focusPrevious()}e.stopPropagation(),e.preventDefault()}},onFocusCapture:d?void 0:e=>{var n,r;m.current&&!e.currentTarget.contains(e.relatedTarget)&&(null===(n=t.current)||void 0===n?void 0:n.contains(e.target))&&(null===(r=m.current)||void 0===r||r.focus(),m.current=null)},onBlurCapture:d?void 0:e=>{e.currentTarget.contains(e.relatedTarget)||m.current||(m.current=e.target)}}}}(e,t),r=d({...e,values:{orientation:e.orientation||"horizontal"},defaultClassName:"react-aria-Toolbar"}),f=a(e);return delete f.id,u.createElement("div",{...h(n,f),...r,ref:t,slot:e.slot||void 0,"data-orientation":e.orientation||"horizontal"},r.children)}));function eu(e,t){const n=+f(e)-+f(t);return n<0?-1:n>0?1:n}function tu(e,t){const n=f(e,null==t?void 0:t.in);return+function(e,t){const n=f(e,null==t?void 0:t.in);return n.setHours(23,59,59,999),n}(n,t)==+function(e,t){const n=f(e,null==t?void 0:t.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}(n,t)}function nu(e,t,n){const[r,o,s]=m(null==n?void 0:n.in,e,e,t),i=eu(o,s),a=Math.abs(function(e,t,n){const[r,o]=m(null==n?void 0:n.in,e,t);return 12*(r.getFullYear()-o.getFullYear())+(r.getMonth()-o.getMonth())}(o,s));if(a<1)return 0;1===o.getMonth()&&o.getDate()>27&&o.setDate(30),o.setMonth(o.getMonth()-i*a);let l=eu(o,s)===-i;tu(r)&&1===a&&1===eu(r,s)&&(l=!1);const c=i*(a-+l);return 0===c?0:c}function ru(e,t,n){const r=function(e,t){return+f(e)-+f(t)}(e,t)/1e3;return(e=>{const t=(0,Math.trunc)(e);return 0===t?0:t})(r)}function ou(e,t){return function(e,t,n){const r=y(),o=(null==n?void 0:n.locale)??r.locale??b,s=eu(e,t);if(isNaN(s))throw new RangeError("Invalid time value");const i=Object.assign({},n,{addSuffix:null==n?void 0:n.addSuffix,comparison:s}),[a,l]=m(null==n?void 0:n.in,...s>0?[t,e]:[e,t]),c=ru(l,a),d=(g(l)-g(a))/1e3,u=Math.round((c-d)/60);let h;if(u<2)return 0===u?o.formatDistance("lessThanXMinutes",1,i):o.formatDistance("xMinutes",u,i);if(u<45)return o.formatDistance("xMinutes",u,i);if(u<90)return o.formatDistance("aboutXHours",1,i);if(u{const e=C.c(7),{selectedLayout:t}=Gl(),{setLayoutView:n}=ql();if(E()&&!iu("wasm_layouts"))return null;let r,o,s,i;return e[0]!==n?(r=e=>n(e),e[0]=n,e[1]=r):r=e[1],e[2]===Symbol.for("react.memo_cache_sentinel")?(o=N.jsx(D,{className:"min-w-[110px] border-border bg-background","data-testid":"layout-select",children:N.jsx(R,{placeholder:"Select a view"})}),e[2]=o):o=e[2],e[3]===Symbol.for("react.memo_cache_sentinel")?(s=N.jsx(j,{children:N.jsxs(_,{children:[N.jsx(I,{children:"View as"}),Yl.map(uu)]})}),e[3]=s):s=e[3],e[4]!==t||e[5]!==r?(i=N.jsxs(P,{"data-testid":"layout-select",value:t,onValueChange:r,children:[o,s]}),e[4]=t,e[5]=r,e[6]=i):i=e[6],i};function lu(e){const t=cu(e);return N.jsx(t,{className:"h-4 w-4"})}function cu(e){switch(e){case"vertical":return fd;case"grid":return ml;case"slides":return jd;default:return M(e),O}}function du(e){return T(e)}function uu(e){return N.jsx(A,{value:e,children:N.jsxs("div",{className:"flex items-center gap-1.5 leading-5",children:[lu(e),N.jsx("span",{children:du(e)})]})},e)}function hu(){const e=C.c(7);let t;e[0]===Symbol.for("react.memo_cache_sentinel")?(t=[],e[0]=t):t=e[0];const[n,r]=function(e,t){const n=C.c(10);let r;n[0]!==t||n[1]!==e?(r=new L(e,t),n[0]=t,n[1]=e,n[2]=r):r=n[2];const s=r;let i;n[3]!==s?(i=()=>s.get(),n[3]=s,n[4]=i):i=n[4];const[a,l]=o.useState(i);let c;n[5]!==s?(c=e=>{l(e),s.set(e)},n[5]=s,n[6]=c):c=n[6];const d=c;let u;return n[7]!==d||n[8]!==a?(u=[a,d],n[7]=d,n[8]=a,n[9]=u):u=n[9],u}("marimo:commands",t);let s,i;return e[1]!==n||e[2]!==r?(s=e=>{const t=(o=[e,...n],[...new Set(o)]);var o;r(t.slice(0,3))},e[1]=n,e[2]=r,e[3]=s):s=e[3],e[4]!==n||e[5]!==s?(i={recentCommands:n,addRecentCommand:s},e[4]=n,e[5]=s,e[6]=i):i=e[6],i}function fu(e){return void 0!==e.dropdown}function pu(e,t=""){return e.flatMap((e=>e.label?fu(e)?pu(e.dropdown,`${t+e.label} > `):{...e,label:t+e.label}:[]))}const mu=e=>{const t=C.c(8),{children:n,layerTop:r}=e,o=void 0!==r&&r;let s;t[0]!==n?(s=u.Children.toArray(n),t[0]=n,t[1]=s):s=t[1];const[i,a]=s,l=`second-icon absolute ${o?"top-[-2px] left-[-2px]":"bottom-[-2px] right-[-2px]"} rounded-full`;let c,d;return t[2]!==a||t[3]!==l?(c=N.jsx("div",{className:l,children:a}),t[2]=a,t[3]=l,t[4]=c):c=t[4],t[5]!==i||t[6]!==c?(d=N.jsxs("div",{className:"multi-icon relative w-fit",children:[i,c]}),t[5]=i,t[6]=c,t[7]=d):d=t[7],d};function gu(){const e=C.c(2),t=yu();let n;e[0]!==t?(n=()=>t(H(V())),e[0]=t,e[1]=n):n=e[1];return B(n)}function yu(){const e=C.c(2),{prepareForRun:t}=U();let n;e[0]!==t?(n=async e=>{if(0===e.length)return;const{cellHandles:n,cellData:r}=V(),o=[];for(const s of e){const e=n[s];e.current?(o.push(W(e.current.editorView)),e.current.registerRun()):(t({cellId:s}),o.push(r[s].code))}await G({cellIds:e,codes:o}).catch(bu)},e[0]=t,e[1]=n):n=e[1];return B(n)}function bu(e){w.error(e)}const xu=q(null),vu=q(!1),wu=q({chats:[],activeChatId:null}),ku=q((e=>{const t=e(wu);return t.chats.find((e=>e.id===t.activeChatId))}),((e,t,n)=>{t(wu,(e=>({...e,activeChatId:n})))})),Su=e=>{const t=C.c(7);let n,r;t[0]!==e?(n=t=>{var n;(t.ctrlKey||t.metaKey)&&"z"===t.key&&(t.preventDefault(),t.stopPropagation(),null==(n=e.onClick)||n.call(e,t))},t[0]=e,t[1]=n):n=t[1],t[2]===Symbol.for("react.memo_cache_sentinel")?(r={capture:!0},t[2]=r):r=t[2],Y(window,"keydown",n,r);const o=e.children??"Undo";let s,i;return t[3]===Symbol.for("react.memo_cache_sentinel")?(s=N.jsx(X,{className:"ml-2",shortcut:"cmd-z"}),t[3]=s):s=t[3],t[4]!==o||t[5]!==e?(i=N.jsxs(J,{"data-testid":"undo-button",size:"sm",variant:"outline",...e,children:[o," ",s]}),t[4]=o,t[5]=e,t[6]=i):i=t[6],i};function Cu(){const e=C.c(3),{deleteCell:t,undoDeleteCell:n}=U();let r;return e[0]!==t||e[1]!==n?(r=e=>{if(K.get(Z))return;const{cellId:r}=e;t({cellId:r}),Q({cellId:r}).catch((()=>{n()}));const{dismiss:o}=ee({title:"Cell deleted",description:"You can bring it back by clicking undo or through the command palette.",action:N.jsx(Su,{"data-testid":"undo-delete-button",onClick:()=>{n(),s()}})}),s=o},e[0]=t,e[1]=n,e[2]=r):r=e[2],B(r)}function Eu(e,t,n,r=K){if(t in r.get(te))return!1;const{cellData:o,cellIds:s}=r.get(ne),i=new RegExp(`import[ \t]+${e}[ \t]+as[ \t]+${t}`,"g");for(const a of s.inOrderIds)if(i.test(o[a].code))return!1;return n(`import ${e} as ${t}`),!0}function Nu(e,t,n){return Eu("marimo","mo",(r=>{const o=re.create();t({cellId:n??"__end__",before:!1,code:r,lastCodeRun:e?r:void 0,newCellId:o,autoFocus:!1}),e&&G({cellIds:[o],codes:[r]})}))}function ju(){const e=C.c(3),{splitCell:t,undoSplitCell:n}=U();let r;return e[0]!==t||e[1]!==n?(r=e=>{const r=oe(e.cellId);if(!r)return;const o=W(r);t(e);const{dismiss:s}=ee({title:"Cell split",action:N.jsx(Su,{"data-testid":"undo-split-button",size:"sm",variant:"outline",onClick:()=>{n({...e,snapshot:o}),i()},children:"Undo"})}),i=s},e[0]=t,e[1]=n,e[2]=r):r=e[2],B(r)}function _u(e){const t=C.c(49),{cell:n}=e,{createNewCell:r,updateCellConfig:o,updateCellCode:s,updateCellName:i,moveCell:a,sendToTop:l,sendToBottom:c,addColumnBreakpoint:d,clearCellOutput:u}=U(),h=ju(),f=function(e){const t=C.c(3),n=yu();let r;return t[0]!==e||t[1]!==n?(r=()=>{void 0!==e&&n([e])},t[0]=e,t[1]=n,t[2]=r):r=t[2],B(r)}(null==n?void 0:n.cellId),p=!se(Z),m=Cu(),{openModal:g}=ie(),y=ae(xu),b=se(le),x=se(ce),v=se(de),w=se(ue);if(!n||v){let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=[],t[0]=e):e=t[0],e}const{cellId:k,config:S,getEditorView:E,name:j,hasOutput:_,hasConsoleOutput:I,status:A}=n;let T;t[1]!==k||t[2]!==S.disabled||t[3]!==o?(T=async()=>{const e={disabled:!S.disabled};await _e({configs:{[k]:e}}),o({cellId:k,config:e})},t[1]=k,t[2]=S.disabled,t[3]=o,t[4]=T):T=t[4];const M=T;let O;t[5]!==k||t[6]!==S.hide_code||t[7]!==E||t[8]!==o?(O=async()=>{const e={hide_code:!S.hide_code};await _e({configs:{[k]:e}}),o({cellId:k,config:e});const t=E();t&&(e.hide_code?t.contentDOM.blur():t.focus())},t[5]=k,t[6]=S.hide_code,t[7]=E,t[8]=o,t[9]=O):O=t[9];const D=O;let R,P,L,$,V;if(t[10]===Symbol.for("react.memo_cache_sentinel")?(R=N.jsx(Hd,{size:13,strokeWidth:1.5}),t[10]=R):R=t[10],t[11]!==k||t[12]!==j||t[13]!==g||t[14]!==i?(P=()=>{g(N.jsxs(Ie,{children:[N.jsx(Ae,{children:N.jsx(Te,{children:"Rename cell"})}),N.jsxs("div",{className:"flex items-center justify-between",children:[N.jsx(Me,{htmlFor:"cell-name",children:"Cell name"}),N.jsx(Xl,{placeholder:"cell name",value:j,onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),e.stopPropagation(),g(null))},onChange:e=>i({cellId:k,name:e})})]})]}))},t[11]=k,t[12]=j,t[13]=g,t[14]=i,t[15]=P):P=t[15],t[16]!==k||t[17]!==i?(L=e=>i({cellId:k,name:e}),t[16]=k,t[17]=i,t[18]=L):L=t[18],t[19]!==j||t[20]!==L?($=N.jsx(Xl,{placeholder:"cell name",value:j,onChange:L}),t[19]=j,t[20]=L,t[21]=$):$=t[21],t[22]!==d||t[23]!==b||t[24]!==w||t[25]!==x||t[26]!==p||t[27]!==k||t[28]!==u||t[29]!==S.disabled||t[30]!==S.hide_code||t[31]!==r||t[32]!==m||t[33]!==E||t[34]!==I||t[35]!==_||t[36]!==a||t[37]!==f||t[38]!==c||t[39]!==l||t[40]!==y||t[41]!==h||t[42]!==A||t[43]!==P||t[44]!==$||t[45]!==M||t[46]!==D||t[47]!==s){V=[[{icon:R,label:"Name",disableClick:!0,handle:Mu,handleHeadless:P,rightElement:$},{icon:N.jsx(Nd,{size:13,strokeWidth:1.5}),label:"Run cell",hotkey:"cell.run",hidden:"running"===A||"queued"===A||"disabled-transitively"===A||S.disabled,handle:()=>f()},{icon:N.jsx(he,{size:13,strokeWidth:1.5}),label:"AI completion",hidden:!b,handle:()=>{y((e=>(null==e?void 0:e.cellId)===k?null:{cellId:k}))},hotkey:"cell.aiCompletion"},{icon:N.jsx(Md,{size:13,strokeWidth:1.5}),label:"Split cell",hotkey:"cell.splitCell",handle:()=>h({cellId:k})},{icon:N.jsx(Jl,{size:13,strokeWidth:1.5}),label:"Export output as PNG",hidden:!_,handle:()=>function(e){const t=document.getElementById(z.create(e));t&&(t.classList.add("printing-output"),F(t,"result.png").finally((()=>{t.classList.remove("printing-output")})))}(k)},{icon:N.jsx(pe,{size:13,strokeWidth:1.5}),label:"Format cell",hotkey:"cell.format",handle:()=>{const e=E();e&&fe({[k]:e},s)}},{icon:S.hide_code?N.jsx(me,{size:13,strokeWidth:1.5}):N.jsx(ge,{size:13,strokeWidth:1.5}),label:S.hide_code?"Show code":"Hide code",handle:D,hotkey:"cell.hideCode"},{icon:S.disabled?N.jsx(Xd,{size:13,strokeWidth:1.5}):N.jsx(Kd,{size:13,strokeWidth:1.5}),label:"Reactive execution",rightElement:N.jsx(ye,{"data-testid":"cell-disable-switch",checked:!S.disabled,size:"sm",onCheckedChange:M}),handle:M},{icon:N.jsx(be,{size:13,strokeWidth:1.5}),label:"Clear output",hidden:!(_||I),handle:()=>{u({cellId:k})}}],[{icon:N.jsx(gl,{}),label:"Convert to Markdown",hotkey:"cell.viewAsMarkdown",handle:()=>{const e=E();e&&(Nu(x,r),xe(e,"markdown",{keepCodeAsIs:!0}))}},{icon:N.jsx(ve,{size:13,strokeWidth:1.5}),label:"Convert to SQL",handle:()=>{const e=E();e&&(Nu(x,r),xe(e,"sql",{keepCodeAsIs:!0}))}},{icon:N.jsx(yl,{}),label:"Toggle as Python",handle:()=>{const e=E();e&&(Nu(x,r),we(e,"python",{force:!0}))}}],[{icon:N.jsxs(mu,{children:[N.jsx(Wc,{size:13,strokeWidth:1.5}),N.jsx(ke,{size:8,strokeWidth:2})]}),label:"Create cell above",hotkey:"cell.createAbove",handle:()=>r({cellId:k,before:!0})},{icon:N.jsxs(mu,{children:[N.jsx(Wc,{size:13,strokeWidth:1.5}),N.jsx(Se,{size:8,strokeWidth:2})]}),label:"Create cell below",hotkey:"cell.createBelow",handle:()=>r({cellId:k,before:!1})},{icon:N.jsx(ke,{size:13,strokeWidth:1.5}),label:"Move cell up",hotkey:"cell.moveUp",handle:()=>a({cellId:k,before:!0})},{icon:N.jsx(Se,{size:13,strokeWidth:1.5}),label:"Move cell down",hotkey:"cell.moveDown",handle:()=>a({cellId:k,before:!1})},{icon:N.jsx(Ce,{size:13,strokeWidth:1.5}),label:"Move cell left",hotkey:"cell.moveLeft",handle:()=>a({cellId:k,direction:"left"}),hidden:"columns"!==w},{icon:N.jsx(Ee,{size:13,strokeWidth:1.5}),label:"Move cell right",hotkey:"cell.moveRight",handle:()=>a({cellId:k,direction:"right"}),hidden:"columns"!==w},{icon:N.jsx($c,{size:13,strokeWidth:1.5}),label:"Send to top",hotkey:"cell.sendToTop",handle:()=>l({cellId:k})},{icon:N.jsx(Uc,{size:13,strokeWidth:1.5}),label:"Send to bottom",hotkey:"cell.sendToBottom",handle:()=>c({cellId:k})},{icon:N.jsx(Ne,{size:13,strokeWidth:1.5}),label:"Break into new column",hotkey:"cell.addColumnBreakpoint",hidden:"columns"!==w,handle:()=>d({cellId:k})}],[{label:"Delete",hidden:!p,variant:"danger",icon:N.jsx(je,{size:13,strokeWidth:1.5}),handle:()=>{m({cellId:k})}}]].map(Au).filter(Iu),t[22]=d,t[23]=b,t[24]=w,t[25]=x,t[26]=p,t[27]=k,t[28]=u,t[29]=S.disabled,t[30]=S.hide_code,t[31]=r,t[32]=m,t[33]=E,t[34]=I,t[35]=_,t[36]=a,t[37]=f,t[38]=c,t[39]=l,t[40]=y,t[41]=h,t[42]=A,t[43]=P,t[44]=$,t[45]=M,t[46]=D,t[47]=s,t[48]=V}else V=t[48];return V}function Iu(e){return e.length>0}function Au(e){return e.filter(Tu)}function Tu(e){return!e.hidden}function Mu(e){null==e||e.stopPropagation(),null==e||e.preventDefault()}const Ou=q(null);function Du(){return se(Ou)}const Ru=q((e=>{const t=e(Ou);return t?t===Oe?null:Pu(t,e(ne)):null}));function Pu(e,t){var n;const{cellData:r,cellHandles:o,cellRuntime:s}=t,i=r[e],a=s[e],l=null==(n=o[e])?void 0:n.current;if(!i||!l)return null;return{cellId:e,name:i.name,config:i.config,status:a?a.status:"idle",getEditorView:()=>l.editorView,hasOutput:null!=(null==a?void 0:a.output),hasConsoleOutput:null!=(null==a?void 0:a.consoleOutputs)}}function Lu(e){return!e.hidden}const zu=q(!1),Fu=()=>{const e=C.c(32),[t,n]=ze(zu),r=xl(),o=se(Ru),s=se(Fe);let i;e[0]!==o?(i={cell:o},e[0]=o,e[1]=i):i=e[1];let a=_u(i).flat();a=pu(a);const l=function(){const e=C.c(46),{theme:t}=De(),[n,r]=Re(),[o,s]=Pe();let i;e[0]!==r?(i=async e=>{await S({config:e}).then((()=>{r(e)}))},e[0]=r,e[1]=i):i=e[1];const a=i;let l;e[2]!==s?(l=async e=>{await Le({config:e}).then((()=>{s(e)}))},e[2]=s,e[3]=l):l=e[3];const c=l;let d,u;if(e[4]!==o||e[5]!==c){let t;e[7]!==o.width?(t=e=>e!==o.width,e[7]=o.width,e[8]=t):t=e[8],d=bl().filter(t).map((e=>({label:`App config > Set width=${e}`,handle:()=>{c({...o,width:e})}}))),e[4]=o,e[5]=c,e[6]=d}else d=e[6];e[9]!==n||e[10]!==a||e[11]!==t?(u={label:"Config > Toggle dark mode",handle:()=>{a({...n,display:{...n.display,theme:"dark"===t?"light":"dark"}})}},e[9]=n,e[10]=a,e[11]=t,e[12]=u):u=e[12];const h="vim"===n.keymap.preset;let f,p;e[13]!==n||e[14]!==a?(f=()=>{a({...n,keymap:{...n.keymap,preset:"vim"}})},e[13]=n,e[14]=a,e[15]=f):f=e[15],e[16]!==h||e[17]!==f?(p={label:"Config > Switch keymap to VIM",hidden:h,handle:f},e[16]=h,e[17]=f,e[18]=p):p=e[18];const m="default"===n.keymap.preset;let g,y,b;e[19]!==n||e[20]!==a?(g=()=>{a({...n,keymap:{...n.keymap,preset:"default"}})},e[19]=n,e[20]=a,e[21]=g):g=e[21],e[22]!==m||e[23]!==g?(y={label:"Config > Switch keymap to default (current: VIM)",hidden:m,handle:g},e[22]=m,e[23]=g,e[24]=y):y=e[24],e[25]!==n||e[26]!==a?(b=()=>{a({...n,completion:{...n.completion,copilot:!1}})},e[25]=n,e[26]=a,e[27]=b):b=e[27];const x="github"!==n.completion.copilot;let v,w;e[28]!==b||e[29]!==x?(v={label:"Config > Disable GitHub Copilot",handle:b,hidden:x},e[28]=b,e[29]=x,e[30]=v):v=e[30],e[31]!==n||e[32]!==a?(w=()=>{a({...n,completion:{...n.completion,copilot:"github"}})},e[31]=n,e[32]=a,e[33]=w):w=e[33];const k="github"===n.completion.copilot;let E,N;e[34]!==w||e[35]!==k?(E={label:"Config > Enable GitHub Copilot",handle:w,hidden:k},e[34]=w,e[35]=k,e[36]=E):E=e[36],e[37]!==v||e[38]!==E||e[39]!==d||e[40]!==u||e[41]!==p||e[42]!==y?(N=[...d,u,p,y,v,E],e[37]=v,e[38]=E,e[39]=d,e[40]=u,e[41]=p,e[42]=y,e[43]=N):N=e[43];const j=N;let _;return e[44]!==j?(_=j.filter(Lu),e[44]=j,e[45]=_):_=e[45],_}();let c=Sh();c=[...pu(c),...pu(l)];const d=c.filter(Bu),u=Be.keyBy(d,Uu),{recentCommands:h,addRecentCommand:f}=hu(),p=new Set(h);let m,g;e[2]!==s||e[3]!==n?(m=e=>{Ge(s.getHotkey("global.commandPalette").key)(e)&&(e.preventDefault(),n($u))},e[2]=s,e[3]=n,e[4]=m):m=e[4],Y(document,"keydown",m),e[5]!==f||e[6]!==s||e[7]!==r||e[8]!==n?(g=(e,t)=>{const o=r[e];if(!o)return null;const i=s.getHotkey(e);return N.jsxs(qe,{disabled:t.disabled,onSelect:()=>{f(e),n(!1),requestAnimationFrame((()=>{o()}))},value:i.name,children:[N.jsxs("span",{children:[i.name,t.tooltip&&N.jsx("span",{className:"ml-2",children:t.tooltip})]}),N.jsx(Ye,{children:N.jsx(Je,{shortcut:i.key})})]},e)},e[5]=f,e[6]=s,e[7]=r,e[8]=n,e[9]=g):g=e[9];const y=g;let b;e[10]!==f||e[11]!==s||e[12]!==n?(b=(e,t,r,o)=>{const i=void 0===r?{}:r;return N.jsxs(qe,{disabled:i.disabled,onSelect:()=>{f(e),n(!1),requestAnimationFrame((()=>{t()}))},value:e,children:[N.jsxs("span",{children:[e,i.tooltip&&N.jsxs("span",{className:"ml-2",children:["(",i.tooltip,")"]})]}),o&&N.jsx(Ye,{children:N.jsx(Je,{shortcut:s.getHotkey(o).key})})]},e)},e[10]=f,e[11]=s,e[12]=n,e[13]=b):b=e[13];const x=b,v=We;let w;e[14]===Symbol.for("react.memo_cache_sentinel")?(w=N.jsx(Xe,{placeholder:"Type to search..."}),e[14]=w):w=e[14];const k=He;let E;e[15]===Symbol.for("react.memo_cache_sentinel")?(E=N.jsx(Ke,{children:"No results found."}),e[15]=E):E=e[15];const j=h.length>0&&N.jsxs(N.Fragment,{children:[N.jsx(Ue,{heading:"Recently Used",children:h.map((e=>{const t=u[e];return $e(e)?y(e,{disabled:null==t?void 0:t.disabled,tooltip:null==t?void 0:t.tooltip}):t&&!fu(t)?x(t.label,t.handleHeadless||t.handle,{disabled:t.disabled,tooltip:t.tooltip}):null}))}),N.jsx(Ve,{})]}),_=Ue,I=s.iterate().map((e=>{if(p.has(e))return null;const t=u[e];return y(e,{disabled:null==t?void 0:t.disabled,tooltip:null==t?void 0:t.tooltip})})),A=d.map((e=>p.has(e.label)?null:x(e.label,e.handleHeadless||e.handle,{disabled:e.disabled,tooltip:e.tooltip}))),T=a.map((e=>p.has(e.label)?null:x(`Cell > ${e.label}`,e.handleHeadless||e.handle,{disabled:e.disabled,tooltip:e.tooltip})));let M,O,D;return e[16]!==_||e[17]!==T||e[18]!==I||e[19]!==A?(M=N.jsxs(_,{heading:"Commands",children:[I,A,T]}),e[16]=_,e[17]=T,e[18]=I,e[19]=A,e[20]=M):M=e[20],e[21]!==k||e[22]!==M||e[23]!==E||e[24]!==j?(O=N.jsxs(k,{children:[E,j,M]}),e[21]=k,e[22]=M,e[23]=E,e[24]=j,e[25]=O):O=e[25],e[26]!==v||e[27]!==t||e[28]!==n||e[29]!==O||e[30]!==w?(D=N.jsxs(v,{open:t,onOpenChange:n,children:[w,O]}),e[26]=v,e[27]=t,e[28]=n,e[29]=O,e[30]=w,e[31]=D):D=e[31],D};function Bu(e){return!e.hotkey}function Uu(e){return e.label}function $u(e){return!e}const Vu="https://static.marimo.app",Hu=e=>{const t=C.c(24),{onClose:n}=e,[r,s]=o.useState("");let i;i=Math.random().toString(36).slice(2,6);const a=`${r}-${i}`,l=`${Vu}/static/${a}`;let c,d,u,h,f,p,m,g,y,b,x;return t[0]!==n||t[1]!==a?(c=async e=>{e.preventDefault(),n();const t=await Ze({download:!1,includeCode:!0,files:Kl.INSTANCE.filenames()}),r=ee({title:"Uploading static notebook...",description:"Please wait."});await fetch(`${Vu}/api/static`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({html:t,path:a})}).catch((()=>{r.dismiss(),ee({title:"Error uploading static page",description:N.jsxs("div",{children:["Please try again later. If the problem persists, please file a bug report on"," ",N.jsx("a",{href:Qe.issuesPage,target:"_blank",rel:"noreferrer",className:"underline",children:"GitHub"}),"."]})})})),r.dismiss(),ee({title:"Static page uploaded!",description:N.jsxs("div",{children:["The URL has been copied to your clipboard.",N.jsx("br",{}),"You can share it with anyone."]})})},t[0]=n,t[1]=a,t[2]=c):c=t[2],t[3]===Symbol.for("react.memo_cache_sentinel")?(d=N.jsx(Te,{children:"Share static notebook"}),t[3]=d):d=t[3],t[4]===Symbol.for("react.memo_cache_sentinel")?(u=N.jsxs(Ae,{children:[d,N.jsxs(et,{children:["You can publish a static, non-interactive version of this notebook to the public web. We will create a link for you that lives on"," ",N.jsx("a",{href:Vu,target:"_blank",rel:"noreferrer",children:Vu}),"."]})]}),t[4]=u):u=t[4],t[5]===Symbol.for("react.memo_cache_sentinel")?(h=e=>{const t=e.target.value.toLowerCase().replaceAll(/\s/g,"-").replaceAll(/[^\da-z-]/g,"");s(t)},t[5]=h):h=t[5],t[6]!==r?(f=N.jsx(tt,{"data-testid":"slug-input",id:"slug",autoFocus:!0,value:r,placeholder:"Notebook slug",onChange:h,required:!0,autoComplete:"off"}),t[6]=r,t[7]=f):f=t[7],t[8]!==l?(p=N.jsxs("div",{className:"font-semibold text-sm text-muted-foreground gap-2 flex flex-col",children:["Anyone will be able to access your notebook at this URL:",N.jsxs("div",{className:"flex items-center gap-2",children:[N.jsx(Wu,{text:l}),N.jsx("span",{className:"text-primary",children:l})]})]}),t[8]=l,t[9]=p):p=t[9],t[10]!==f||t[11]!==p?(m=N.jsxs("div",{className:"flex flex-col gap-6 py-4",children:[f,p]}),t[10]=f,t[11]=p,t[12]=m):m=t[12],t[13]!==n?(g=N.jsx(J,{"data-testid":"cancel-share-static-notebook-button",variant:"secondary",onClick:n,children:"Cancel"}),t[13]=n,t[14]=g):g=t[14],t[15]!==l?(y=N.jsx(J,{"data-testid":"share-static-notebook-button","aria-label":"Save",variant:"default",type:"submit",onClick:async()=>{await nt(l)},children:"Create"}),t[15]=l,t[16]=y):y=t[16],t[17]!==y||t[18]!==g?(b=N.jsxs(rt,{children:[g,y]}),t[17]=y,t[18]=g,t[19]=b):b=t[19],t[20]!==b||t[21]!==c||t[22]!==m?(x=N.jsx(Ie,{className:"w-fit",children:N.jsxs("form",{onSubmit:c,children:[u,m,b]})}),t[20]=b,t[21]=c,t[22]=m,t[23]=x):x=t[23],x},Wu=e=>{const t=C.c(8),[n,r]=u.useState(!1);let o;t[0]!==e.text?(o=ot.stopPropagation((async t=>{t.preventDefault(),await nt(e.text),r(!0),setTimeout((()=>r(!1)),2e3)})),t[0]=e.text,t[1]=o):o=t[1];const s=o;let i,a,l;return t[2]===Symbol.for("react.memo_cache_sentinel")?(i=N.jsx(st,{size:14,strokeWidth:1.5}),t[2]=i):i=t[2],t[3]!==s?(a=N.jsx(J,{"data-testid":"copy-static-notebook-url-button",onClick:s,size:"xs",variant:"secondary",children:i}),t[3]=s,t[4]=a):a=t[4],t[5]!==n||t[6]!==a?(l=N.jsx(it,{content:"Copied!",open:n,children:a}),t[5]=n,t[6]=a,t[7]=l):l=t[7],l};function Gu(){const e=C.c(3),{openConfirm:t}=ie(),n=ae(at);let r;return e[0]!==t||e[1]!==n?(r=()=>{t({title:"Restart Kernel",description:"This will restart the Python kernel. You'll lose all data that's in memory. You will also lose any unsaved changes, so make sure to save your work before restarting.",variant:"destructive",confirmAction:N.jsx(lt,{onClick:async()=>{n({state:ct.CLOSING}),await dt(),ut()},"aria-label":"Confirm Restart",children:"Restart"})})},e[0]=t,e[1]=n,e[2]=r):r=e[2],r}const qu=new ft("marimo:sidebar",pt.object({selectedPanel:pt.string().optional().transform((e=>e)),isSidebarOpen:pt.boolean(),isTerminalOpen:pt.boolean()}),(function(){return{selectedPanel:"variables",isSidebarOpen:!1,isTerminalOpen:!1}}));const{valueAtom:Yu,useActions:Ju}=ht((()=>qu.get()),{openApplication:(e,t)=>({...e,selectedPanel:t,isSidebarOpen:!e.isSidebarOpen||e.selectedPanel!==t}),toggleSidebarPanel:e=>({...e,isSidebarOpen:!e.isSidebarOpen}),setIsSidebarOpen:(e,t)=>({...e,isSidebarOpen:t}),toggleTerminal:e=>({...e,isTerminalOpen:!e.isTerminalOpen}),setIsTerminalOpen:(e,t)=>({...e,isTerminalOpen:t})},[(e,t)=>qu.set(t)]),Xu=()=>{const e=C.c(2),t=se(Yu);if(t.isSidebarOpen)return t;let n;return e[0]!==t?(n={...t,selectedPanel:void 0},e[0]=t,e[1]=n):n=e[1],n};function Ku(){return Ju()}const Zu=[{type:"files",Icon:sd,tooltip:"View files",position:"sidebar"},{type:"variables",Icon:mt,tooltip:"Explore variables",position:"sidebar"},{type:"datasources",Icon:ve,tooltip:"Explore data sources",position:"sidebar"},{type:"dependencies",Icon:yd,tooltip:"Explore dependencies",position:"sidebar"},{type:"packages",Icon:Bc,tooltip:"Manage packages",position:"sidebar"},{type:"outline",Icon:Od,tooltip:"View outline",position:"sidebar"},{type:"chat",Icon:gt,tooltip:"Chat with AI",position:"sidebar",hidden:!iu("chat_sidebar")},{type:"documentation",Icon:Wd,tooltip:"View live docs",position:"sidebar"},{type:"logs",Icon:yt,tooltip:"Notebook logs",position:"sidebar"},{type:"tracing",Icon:vl,tooltip:"Tracing",position:"sidebar"},{type:"snippets",Icon:Pd,tooltip:"Snippets",position:"sidebar"},{type:"scratchpad",Icon:bd,hidden:!iu("scratchpad"),tooltip:"Scratchpad",position:"sidebar"},{type:"errors",Icon:be,tooltip:"View errors",position:"footer"}];function Qu(){const e=C.c(2),t=ae(bt);let n;e[0]!==t?(n=()=>{const e=document.getElementsByClassName("output-area"),n=window.innerHeight||document.documentElement.clientHeight;let r;r=null;for(const t of Array.from(e)){const e=t.getBoundingClientRect();if(e.top>=0&&e.top<=n||e.bottom>=0&&e.bottom<=n){r=xt.parse(t.parentNode.id);break}}t((e=>({mode:vt(e.mode),cellAnchor:r}))),requestAnimationFrame((()=>{var e;null!==r&&(null==(e=document.getElementById(xt.create(r)))||e.scrollIntoView())}))},e[0]=t,e[1]=n):n=e[1];return n}function eh(){return pt.string().optional().describe(Ct.of({label:"Password",inputType:"password",placeholder:"password"}))}function th(){return pt.string().nonempty().describe(Ct.of({label:"Host",placeholder:"localhost"}))}function nh(){return pt.string().describe(Ct.of({label:"Database",placeholder:"db name"}))}function rh(){return pt.string().nonempty().describe(Ct.of({label:"Username",placeholder:"username"}))}function oh(e){return pt.coerce.string().default(e.toString()).describe(Ct.of({label:"Port",inputType:"number",placeholder:e.toString()})).transform(Number).refine((e=>e>=0&&e<=65535),{message:"Port must be between 0 and 65535"})}const sh=pt.object({type:pt.literal("postgres"),host:th(),port:oh(5432),database:nh(),username:rh(),password:eh(),ssl:pt.boolean().default(!1).describe(Ct.of({label:"Use SSL"}))}).describe(Ct.of({direction:"two-columns"})),ih=pt.object({type:pt.literal("mysql"),host:th(),port:oh(3306),database:nh(),username:rh(),password:eh(),ssl:pt.boolean().default(!1).describe(Ct.of({label:"Use SSL"}))}).describe(Ct.of({direction:"two-columns"})),ah=pt.object({type:pt.literal("sqlite"),database:nh().describe(Ct.of({label:"Database Path"}))}).describe(Ct.of({direction:"two-columns"})),lh=pt.object({type:pt.literal("duckdb"),database:nh().describe(Ct.of({label:"Database Path"})),read_only:pt.boolean().default(!1).describe(Ct.of({label:"Read Only"}))}).describe(Ct.of({direction:"two-columns"})),ch=pt.object({type:pt.literal("snowflake"),account:pt.string().nonempty().describe(Ct.of({label:"Account"})),warehouse:pt.string().optional().describe(Ct.of({label:"Warehouse"})),database:nh(),schema:pt.string().optional().describe(Ct.of({label:"Schema"})),username:rh(),password:eh(),role:pt.string().optional().describe(Ct.of({label:"Role"}))}).describe(Ct.of({direction:"two-columns"})),dh=pt.object({type:pt.literal("bigquery"),project:pt.string().nonempty().describe(Ct.of({label:"Project ID"})),dataset:pt.string().nonempty().describe(Ct.of({label:"Dataset"})),credentials_json:pt.string().describe(Ct.of({label:"Credentials JSON",inputType:"textarea"}))}).describe(Ct.of({direction:"two-columns"})),uh=pt.discriminatedUnion("type",[sh,ih,ah,lh,ch,dh]),hh={sqlmodel:"SQLModel",sqlalchemy:"SQLAlchemy"};const fh=Nt("marimo:preferred-connection","sqlalchemy"),ph=[{name:"PostgreSQL",schema:sh,color:"#336791",logo:"postgres"},{name:"MySQL",schema:ih,color:"#00758F",logo:"mysql"},{name:"SQLite",schema:ah,color:"#003B57",logo:"sqlite"},{name:"DuckDB",schema:lh,color:"#FFD700",logo:"duckdb"},{name:"Snowflake",schema:ch,color:"#29B5E8",logo:"snowflake"},{name:"BigQuery",schema:dh,color:"#4285F4",logo:"bigquery"}],mh=e=>{const t=C.c(4),{onSelect:n}=e;let r,o;return t[0]!==n?(r=ph.map((e=>{const{name:t,schema:r,color:o,logo:s}=e;return N.jsxs("button",{type:"button",className:"h-28 flex flex-col items-center justify-center gap-3 transition-all hover:scale-105 hover:brightness-110 rounded shadow-smSolid hover:shadow-mdSolid",style:{backgroundColor:o},onClick:()=>n(r),children:[N.jsx(jt,{name:s,className:"w-10 h-10 text-white brightness-0 invert dark:invert"}),N.jsx("span",{className:"text-white font-medium text-lg",children:t})]},t)})),t[0]=n,t[1]=r):r=t[1],t[2]!==r?(o=N.jsx("div",{className:"grid grid-cols-2 md:grid-cols-3 gap-6",children:r}),t[2]=r,t[3]=o):o=t[3],o},gh=e=>{const t=C.c(35),{schema:n,onSubmit:r,onBack:o}=e;let s,i,a;t[0]!==n?(s=_t(n),t[0]=n,t[1]=s):s=t[1],t[2]!==n?(i=It(n),t[2]=n,t[3]=i):i=t[3],t[4]!==s||t[5]!==i?(a={defaultValues:s,resolver:i,reValidateMode:"onChange"},t[4]=s,t[5]=i,t[6]=a):a=t[6];const l=At(a),[c,d]=ze(fh);let u,h,f,p;t[7]!==l||t[8]!==r?(u=l.handleSubmit(r),t[7]=l,t[8]=r,t[9]=u):u=t[9],t[10]===Symbol.for("react.memo_cache_sentinel")?(h=N.jsx(Tt,{}),t[10]=h):h=t[10],t[11]!==l||t[12]!==n?(f=N.jsx(Mt,{schema:n,form:l,renderers:void 0,children:h}),t[11]=l,t[12]=n,t[13]=f):f=t[13],t[14]!==o?(p=N.jsx(J,{type:"button",variant:"outline",onClick:o,children:"Back"}),t[14]=o,t[15]=p):p=t[15];const m=!l.formState.isValid;let g,y,b,x,v,w,k,S;return t[16]!==m?(g=N.jsx(J,{type:"submit",disabled:m,children:"Add"}),t[16]=m,t[17]=g):g=t[17],t[18]!==p||t[19]!==g?(y=N.jsxs("div",{className:"flex gap-2",children:[p,g]}),t[18]=p,t[19]=g,t[20]=y):y=t[20],t[21]!==d?(b=e=>d(e),t[21]=d,t[22]=b):b=t[22],t[23]===Symbol.for("react.memo_cache_sentinel")?(x=N.jsxs("div",{className:"flex flex-col gap-1 items-end",children:[N.jsx(D,{children:N.jsx(R,{placeholder:"Select a library"})}),N.jsx("span",{className:"text-xs text-muted-foreground",children:"Preferred connection library"})]}),t[23]=x):x=t[23],t[24]===Symbol.for("react.memo_cache_sentinel")?(v=N.jsx(j,{children:N.jsx(_,{children:Object.entries(hh).map(vh)})}),t[24]=v):v=t[24],t[25]!==c||t[26]!==b?(w=N.jsx("div",{children:N.jsxs(P,{value:c,onValueChange:b,children:[x,v]})}),t[25]=c,t[26]=b,t[27]=w):w=t[27],t[28]!==y||t[29]!==w?(k=N.jsxs("div",{className:"flex gap-2 justify-between",children:[y,w]}),t[28]=y,t[29]=w,t[30]=k):k=t[30],t[31]!==k||t[32]!==u||t[33]!==f?(S=N.jsxs("form",{onSubmit:u,className:"space-y-4",children:[f,k]}),t[31]=k,t[32]=u,t[33]=f,t[34]=S):S=t[34],S},yh=e=>{const t=C.c(5),{onSubmit:n}=e,[r,s]=o.useState(null);if(!r){let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx(mh,{onSelect:s}),t[0]=e):e=t[0],e}let i,a;return t[1]===Symbol.for("react.memo_cache_sentinel")?(i=()=>s(null),t[1]=i):i=t[1],t[2]!==n||t[3]!==r?(a=N.jsx(gh,{schema:r,onSubmit:n,onBack:i}),t[2]=n,t[3]=r,t[4]=a):a=t[4],a},bh=e=>{const t=C.c(6),{children:n}=e,[r,s]=o.useState(!1);let i,a,l;return t[0]!==n?(i=N.jsx(Ot,{asChild:!0,children:n}),t[0]=n,t[1]=i):i=t[1],t[2]===Symbol.for("react.memo_cache_sentinel")?(a=N.jsx(xh,{onClose:()=>s(!1)}),t[2]=a):a=t[2],t[3]!==r||t[4]!==i?(l=N.jsxs(Dt,{open:r,onOpenChange:s,children:[i,a]}),t[3]=r,t[4]=i,t[5]=l):l=t[5],l},xh=e=>{const t=C.c(11),{onClose:n}=e,{createNewCell:r}=U(),o=Du(),s=se(fh);let i;t[0]!==r||t[1]!==o?(i=e=>{r({code:e,before:!1,cellId:o??"__end__",skipIfCodeExists:!0,autoFocus:!0})},t[0]=r,t[1]=o,t[2]=i):i=t[2];const a=i;let l;t[3]!==a||t[4]!==n||t[5]!==s?(l=e=>{a(function(e,t){if(!(t in hh))throw new Error(`Unsupported library: ${t}`);uh.parse(e);const n="sqlmodel"===t?["from sqlmodel import create_engine","import os"]:["from sqlalchemy import create_engine","import os"];let r="";switch(e.type){case"postgres":r=`\npassword = os.environ.get("POSTGRES_PASSWORD", "${e.password}")\nDATABASE_URL = f"postgresql://${e.username}:{password}@${e.host}:${e.port}/${e.database}"\nengine = create_engine(DATABASE_URL${e.ssl?", connect_args={'sslmode': 'require'}":""})\n`;break;case"mysql":r=`\npassword = os.environ.get("MYSQL_PASSWORD", "${e.password}")\nDATABASE_URL = f"mysql+pymysql://${e.username}:{password}@${e.host}:${e.port}/${e.database}"\nengine = create_engine(DATABASE_URL${e.ssl?", connect_args={'ssl': {'ssl-mode': 'preferred'}}":""})\n`;break;case"sqlite":r=`\nDATABASE_URL = "sqlite:///${e.database}"\nengine = create_engine(DATABASE_URL)\n`;break;case"snowflake":{n.push("from snowflake.sqlalchemy import URL","import sqlalchemy as sa");const t={account:e.account,user:e.username,password:`os.environ.get("SNOWFLAKE_PASSWORD", "${e.password}")`,database:e.database,warehouse:e.warehouse,schema:e.schema,role:e.role},o=Object.entries(t).filter((([,e])=>e)).map((([e,t])=>` ${e}=${t}`)).join(",\n");r=`\npassword = os.environ.get("SNOWFLAKE_PASSWORD", "${e.password}")\nengine = sa.create_engine(\n URL(\n${o}\n )\n)\n`;break}case"bigquery":n.push("import json"),r=`\ncredentials = json.loads("""${e.credentials_json}""")\nengine = create_engine(f"bigquery://${e.project}/${e.dataset}", credentials_info=credentials)\n`;break;case"duckdb":r=`\nengine = create_engine("duckdb:${e.database||":memory:"}"${e.read_only?", read_only=True":""})\n`;break;default:Et(e)}return`${n.join("\n")}\n${r.trim()}`}(e,s)),n()},t[3]=a,t[4]=n,t[5]=s,t[6]=l):l=t[6];const c=l;let d,u,h;return t[7]===Symbol.for("react.memo_cache_sentinel")?(d=N.jsx(Te,{children:"Add Database Connection"}),t[7]=d):d=t[7],t[8]===Symbol.for("react.memo_cache_sentinel")?(u=N.jsxs(Ae,{className:"mb-4",children:[d,N.jsxs(et,{children:["Connect to your database to query data directly from your notebook. Learn more about how to connect to your database in our"," ",N.jsx("a",{href:"http://docs.marimo.io/guides/working_with_data/sql/#connecting-to-a-custom-database",target:"_blank",rel:"noreferrer",className:"text-link hover:underline",children:"docs."})]})]}),t[8]=u):u=t[8],t[9]!==c?(h=N.jsxs(Ie,{children:[u,N.jsx(yh,{onSubmit:e=>{c(e)}})]}),t[9]=c,t[10]=h):h=t[10],h};function vh(e){const[t,n]=e;return N.jsx(A,{value:t,children:n},t)}const wh=()=>{const e=C.c(2),{updateCellConfig:t}=U();let n;return e[0]!==t?(n=async()=>{const e=new Rt,n=V(),r=n.cellIds.inOrderIds,o={};for(const t of r){if(void 0===n.cellData[t])continue;const{code:r,config:s}=n.cellData[t];s.hide_code||e.isSupported(r)&&(o[t]={hide_code:!0})}const s=Be.entries(o);if(0!==s.length){await _e({configs:o});for(const[e,n]of s)t({cellId:e,config:n})}},e[0]=t,e[1]=n):n=e[1],n},kh=e=>{null==e||e.preventDefault(),null==e||e.stopPropagation()};function Sh(){const e=C.c(133),t=Pt(),{openModal:n,closeModal:r}=ie(),{openApplication:o}=Ku(),{selectedPanel:s}=Xu(),[i]=ze(bt),a=se(de),l=wh(),{updateCellConfig:c,undoDeleteCell:d,clearAllCellOutputs:u}=U(),h=Gu(),f=gu(),p=function(e){const t=C.c(4),{openPrompt:n,closeModal:r}=ie();let o;return t[0]!==r||t[1]!==n||t[2]!==e?(o=()=>{if(!e)return null;const t=wt.guessDeliminator(e),o=kt.basename(e);n({title:"Copy notebook",description:"Enter a new filename for the notebook copy.",defaultValue:`_${o}`,confirmText:"Copy notebook",spellCheck:!1,onConfirm:n=>{const o=t.join(kt.dirname(e),n);St({source:e,destination:o}).then((()=>{r(),ee({title:"Notebook copied",description:"A copy of the notebook has been created."}),window.open(`/?file=${o}`,"_blank")}))}})},t[0]=r,t[1]=n,t[2]=e,t[3]=o):o=t[3],o}(t),m=ae(zu),g=ae(wl),y=ae(kl),b=se(Lt),x=se(zt),v=se(Ft),{selectedLayout:w}=Gl(),{setLayoutView:k}=ql(),S=Qu(),j=Bh;let _,I,A,M,O,D,R,P,L,z,F,B,$;e[0]===Symbol.for("react.memo_cache_sentinel")?(_=N.jsx(Dd,{size:14,strokeWidth:1.5}),e[0]=_):_=e[0],e[1]===Symbol.for("react.memo_cache_sentinel")?(I=N.jsx(Ht,{size:14,strokeWidth:1.5}),e[1]=I):I=e[1],e[2]!==r||e[3]!==n?(A={icon:I,label:"Publish HTML to web",handle:async()=>{n(N.jsx(Hu,{onClose:r}))}},e[2]=r,e[3]=n,e[4]=A):A=e[4],e[5]===Symbol.for("react.memo_cache_sentinel")?(M={icon:N.jsx(hd,{size:14,strokeWidth:1.5}),label:"Create WebAssembly link",handle:Fh},e[5]=M):M=e[5],e[6]!==A?(O={icon:_,label:"Share",handle:kh,dropdown:[A,M]},e[6]=A,e[7]=O):O=e[7],e[8]===Symbol.for("react.memo_cache_sentinel")?(D=N.jsx(Wt,{size:14,strokeWidth:1.5}),e[8]=D):D=e[8],e[9]===Symbol.for("react.memo_cache_sentinel")?(R=N.jsx(Zl,{size:14,strokeWidth:1.5}),e[9]=R):R=e[9],e[10]!==t?(P={icon:R,label:"Download as HTML",handle:async()=>{t?await Ql({filename:t,includeCode:!0}):ee({variant:"danger",title:"Error",description:"Notebooks must be named to be exported."})}},e[10]=t,e[11]=P):P=e[11],e[12]===Symbol.for("react.memo_cache_sentinel")?(L=N.jsx(Zl,{size:14,strokeWidth:1.5}),e[12]=L):L=e[12],e[13]!==t?(z={icon:L,label:"Download as HTML (exclude code)",handle:async()=>{t?await Ql({filename:t,includeCode:!1}):ee({variant:"danger",title:"Error",description:"Notebooks must be named to be exported."})}},e[13]=t,e[14]=z):z=e[14],e[15]===Symbol.for("react.memo_cache_sentinel")?(F={icon:N.jsx(gl,{strokeWidth:1.5,style:{width:14,height:14}}),label:"Download as Markdown",handle:zh},B={icon:N.jsx(Jc,{size:14,strokeWidth:1.5}),label:"Download Python code",handle:Lh},e[15]=F,e[16]=B):(F=e[15],B=e[16]),e[17]===Symbol.for("react.memo_cache_sentinel")?($=N.jsx(Jl,{size:14,strokeWidth:1.5}),e[17]=$):$=e[17];const W="present"!==i.mode;let G,q,Y;e[18]!==i.mode?(G="present"===i.mode?void 0:N.jsxs("span",{children:["Only available in app view. ",N.jsx("br",{}),"Toggle with: ",Bt("global.hideCode",!1)]}),e[18]=i.mode,e[19]=G):G=e[19],e[20]!==W||e[21]!==G?(q={divider:!0,icon:$,label:"Download as PNG",disabled:W,tooltip:G,handle:Ph},e[20]=W,e[21]=G,e[22]=q):q=e[22],e[23]===Symbol.for("react.memo_cache_sentinel")?(Y=N.jsx(Gt,{size:14,strokeWidth:1.5}),e[23]=Y):Y=e[23];const J="present"!==i.mode;let X,K,Z,Q,te,ne,re,oe,le,ce,ue,he,fe,pe,me,ye;e[24]!==i.mode?(X="present"===i.mode?void 0:N.jsxs("span",{children:["Only available in app view. ",N.jsx("br",{}),"Toggle with: ",Bt("global.hideCode",!1)]}),e[24]=i.mode,e[25]=X):X=e[25],e[26]!==J||e[27]!==X?(K={icon:Y,label:"Download as PDF",disabled:J,tooltip:X,handle:Dh},e[26]=J,e[27]=X,e[28]=K):K=e[28],e[29]!==q||e[30]!==K||e[31]!==P||e[32]!==z?(Z={icon:D,label:"Download",handle:kh,dropdown:[P,z,F,B,q,K]},e[29]=q,e[30]=K,e[31]=P,e[32]=z,e[33]=Z):Z=e[33],e[34]===Symbol.for("react.memo_cache_sentinel")?(Q=N.jsx(Sd,{size:14,strokeWidth:1.5}),e[34]=Q):Q=e[34],e[35]!==o||e[36]!==s?(te=Zu.flatMap((e=>{const{type:t,Icon:n,hidden:r}=e;return r?[]:{label:T(t),rightElement:j(s===t),icon:N.jsx(n,{size:14,strokeWidth:1.5}),handle:()=>o(t)}})),e[35]=o,e[36]=s,e[37]=te):te=e[37],e[38]!==te?(ne={divider:!0,icon:Q,label:"Helper panel",handle:kh,dropdown:te},e[38]=te,e[39]=ne):ne=e[39],e[40]===Symbol.for("react.memo_cache_sentinel")?(re=N.jsx(jd,{size:14,strokeWidth:1.5}),e[40]=re):re=e[40],e[41]!==i.mode?(oe="present"===i.mode?N.jsx(Ut,{size:14,strokeWidth:1.5}):N.jsx(ud,{size:14,strokeWidth:1.5}),e[41]=i.mode,e[42]=oe):oe=e[42],e[43]!==S?(le=()=>{S()},e[43]=S,e[44]=le):le=e[44],e[45]!==oe||e[46]!==le?(ce={icon:oe,label:"Toggle app view",hotkey:"global.hideCode",handle:le},e[45]=oe,e[46]=le,e[47]=ce):ce=e[47],e[48]!==w||e[49]!==k||e[50]!==S||e[51]!==i.mode?(ue=Yl.map(((e,t)=>{const n=cu(e);return{divider:0===t,label:du(e),icon:N.jsx(n,{size:14,strokeWidth:1.5}),rightElement:N.jsx("div",{className:"w-8 flex justify-end",children:w===e&&N.jsx($t,{size:14})}),handle:()=>{k(e),"edit"===i.mode&&S()}}})),e[48]=w,e[49]=k,e[50]=S,e[51]=i.mode,e[52]=ue):ue=e[52],e[53]!==ce||e[54]!==ue?(he={icon:re,label:"Present as",handle:kh,dropdown:[ce,...ue]},e[53]=ce,e[54]=ue,e[55]=he):he=e[55],e[56]===Symbol.for("react.memo_cache_sentinel")?(fe=N.jsx(rd,{size:14,strokeWidth:1.5}),e[56]=fe):fe=e[56],e[57]!==t?(pe=!t||E(),e[57]=t,e[58]=pe):pe=e[58],e[59]!==p||e[60]!==pe?(me={icon:fe,label:"Create notebook copy",hidden:pe,handle:p},e[59]=p,e[60]=pe,e[61]=me):me=e[61],e[62]===Symbol.for("react.memo_cache_sentinel")?(ye=N.jsx(Gc,{size:14,strokeWidth:1.5}),e[62]=ye):ye=e[62];const xe=!t;let we,ke;e[63]!==xe?(we={icon:ye,label:"Copy code to clipboard",hidden:xe,handle:Oh},e[63]=xe,e[64]=we):we=e[64],e[65]===Symbol.for("react.memo_cache_sentinel")?(ke=N.jsx(Kd,{size:14,strokeWidth:1.5}),e[65]=ke):ke=e[65];const Se=!b||a;let Ce,Ee,Ne;e[66]!==c?(Ce=async()=>{const e=V(),t=qt(e),n=Be.fromEntries(t.map(Mh));await _e({configs:n});for(const r of t)c({cellId:r,config:{disabled:!1}})},e[66]=c,e[67]=Ce):Ce=e[67],e[68]!==Se||e[69]!==Ce?(Ee={icon:ke,label:"Enable all cells",hidden:Se,handle:Ce},e[68]=Se,e[69]=Ce,e[70]=Ee):Ee=e[70],e[71]===Symbol.for("react.memo_cache_sentinel")?(Ne=N.jsx(Xd,{size:14,strokeWidth:1.5}),e[71]=Ne):Ne=e[71];const je=!x||a;let Ie,Ae,Te,Me,Oe,De,Re,Pe,Le;e[72]!==c?(Ie=async()=>{const e=V(),t=H(e),n=Be.fromEntries(t.map(Th));await _e({configs:n});for(const r of t)c({cellId:r,config:{disabled:!0}})},e[72]=c,e[73]=Ie):Ie=e[73],e[74]!==je||e[75]!==Ie?(Ae={icon:Ne,label:"Disable all cells",hidden:je,handle:Ie},e[74]=je,e[75]=Ie,e[76]=Ae):Ae=e[76],e[77]===Symbol.for("react.memo_cache_sentinel")?(Te=N.jsx(ge,{size:14,strokeWidth:1.5}),e[77]=Te):Te=e[77],e[78]!==l?(Me={icon:Te,label:"Hide all markdown code",handle:l},e[78]=l,e[79]=Me):Me=e[79],e[80]===Symbol.for("react.memo_cache_sentinel")?(Oe=N.jsx(be,{size:14,strokeWidth:1.5}),e[80]=Oe):Oe=e[80],e[81]!==u?(De={icon:Oe,label:"Clear all outputs",handle:()=>{u()}},e[81]=u,e[82]=De):De=e[82],e[83]===Symbol.for("react.memo_cache_sentinel")?(Re=N.jsx(ed,{size:14,strokeWidth:1.5}),e[83]=Re):Re=e[83],e[84]!==f?(Pe={icon:Re,label:"Re-run all cells",hotkey:"global.runAll",handle:async()=>{f()}},e[84]=f,e[85]=Pe):Pe=e[85],e[86]===Symbol.for("react.memo_cache_sentinel")?(Le=N.jsx(Gd,{size:14,strokeWidth:1.5}),e[86]=Le):Le=e[86];const Fe=!v||a;let Ue,$e,Ve,He,We,Ge,qe,Ye,Je,Xe,Ke,Ze,Qe,et,tt,nt,rt,ot;e[87]!==d?(Ue=()=>{d()},e[87]=d,e[88]=Ue):Ue=e[88],e[89]!==Fe||e[90]!==Ue?($e={icon:Le,label:"Undo cell deletion",hidden:Fe,handle:Ue},e[89]=Fe,e[90]=Ue,e[91]=$e):$e=e[91],e[92]===Symbol.for("react.memo_cache_sentinel")?(Ve=N.jsx(ve,{size:14,strokeWidth:1.5}),e[92]=Ve):Ve=e[92],e[93]!==r||e[94]!==n?(He={icon:Ve,label:"Add database connection",handle:()=>{n(N.jsx(xh,{onClose:r}))}},e[93]=r,e[94]=n,e[95]=He):He=e[95],e[96]===Symbol.for("react.memo_cache_sentinel")?(We=N.jsx(Xc,{size:14,strokeWidth:1.5}),e[96]=We):We=e[96],e[97]!==m?(Ge={divider:!0,icon:We,label:"Command palette",hotkey:"global.commandPalette",handle:()=>m(Ah)},e[97]=m,e[98]=Ge):Ge=e[98],e[99]===Symbol.for("react.memo_cache_sentinel")?(qe=N.jsx(Yt,{size:14,strokeWidth:1.5}),e[99]=qe):qe=e[99],e[100]!==g?(Ye={icon:qe,label:"User settings",handle:()=>g(Ih)},e[100]=g,e[101]=Ye):Ye=e[101],e[102]===Symbol.for("react.memo_cache_sentinel")?(Je=N.jsx(dd,{size:14,strokeWidth:1.5}),e[102]=Je):Je=e[102],e[103]!==y?(Xe={icon:Je,label:"Keyboard shortcuts",hotkey:"global.showHelp",handle:()=>y(_h)},e[103]=y,e[104]=Xe):Xe=e[104],e[105]===Symbol.for("react.memo_cache_sentinel")?(Ke={icon:N.jsx(Fc,{size:14,strokeWidth:1.5}),label:"Open documentation",handle:jh},e[105]=Ke):Ke=e[105],e[106]===Symbol.for("react.memo_cache_sentinel")?(Ze=N.jsx(cd,{size:14,strokeWidth:1.5}),e[106]=Ze):Ze=e[106],e[107]===Symbol.for("react.memo_cache_sentinel")?(Qe={divider:!0,icon:Ze,label:"Return home",hidden:!location.search.includes("file"),handle:Nh},et=N.jsx(nd,{size:14,strokeWidth:1.5}),e[107]=Qe,e[108]=et):(Qe=e[107],et=e[108]),e[109]===Symbol.for("react.memo_cache_sentinel")?(tt={icon:et,label:"New notebook",hidden:!location.search.includes("file"),handle:Eh},nt=N.jsx(Ud,{size:14,strokeWidth:1.5}),e[109]=tt,e[110]=nt):(tt=e[109],nt=e[110]),e[111]!==h?(rt={icon:nt,label:"Restart kernel",variant:"danger",handle:h},e[111]=h,e[112]=rt):rt=e[112],e[113]!==Z||e[114]!==ne||e[115]!==he||e[116]!==me||e[117]!==we||e[118]!==Ee||e[119]!==O||e[120]!==Ae||e[121]!==Me||e[122]!==De||e[123]!==Pe||e[124]!==$e||e[125]!==He||e[126]!==Ge||e[127]!==Ye||e[128]!==Xe||e[129]!==rt?(ot=[O,Z,ne,he,me,we,Ee,Ae,Me,De,Pe,$e,He,Ge,Ye,Xe,Ke,Qe,tt,rt],e[113]=Z,e[114]=ne,e[115]=he,e[116]=me,e[117]=we,e[118]=Ee,e[119]=O,e[120]=Ae,e[121]=Me,e[122]=De,e[123]=Pe,e[124]=$e,e[125]=He,e[126]=Ge,e[127]=Ye,e[128]=Xe,e[129]=rt,e[130]=ot):ot=e[130];const st=ot;let it;return e[131]!==st?(it=st.filter(Ch),e[131]=st,e[132]=it):it=e[132],it}function Ch(e){return!e.hidden}function Eh(){const e=Vt();window.open(e,"_blank")}function Nh(){const e=document.baseURI.split("?")[0];window.open(e,"_self")}function jh(){window.open("https://docs.marimo.io","_blank")}function _h(e){return!e}function Ih(e){return!e}function Ah(e){return!e}function Th(e){return[e,{disabled:!0}]}function Mh(e){return[e,{disabled:!1}]}async function Oh(){const e=await Jt();await nt(e.contents),ee({title:"Copied",description:"Code copied to clipboard."})}async function Dh(){const e=new Event("export-beforeprint"),t=new Event("export-afterprint");window.dispatchEvent(e),setTimeout(Rh,0),setTimeout((()=>window.dispatchEvent(t)),0)}function Rh(){return window.print()}async function Ph(){const e=document.getElementById("App");e&&await F(e,document.title)}async function Lh(){const e=await Jt();Xt(new Blob([e.contents],{type:"text/plain"}),Kt.toPY(document.title))}async function zh(){const e=await Zt({download:!1});Xt(new Blob([e],{type:"text/plain"}),Kt.toMarkdown(document.title))}async function Fh(){const e=await Jt(),t=Qt({code:e.contents});await nt(t),ee({title:"Copied",description:"Link copied to clipboard."})}function Bh(e){return N.jsx("div",{className:"w-8 flex justify-end",children:e&&N.jsx($t,{size:14})})}const Uh=()=>{const e=C.c(10),t=Sh();let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=N.jsx(Sl,{"aria-label":"Config",shape:"circle",size:"small",className:"h-[27px] w-[27px]","data-testid":"notebook-menu-dropdown",color:"hint-green",children:N.jsx(ec,{strokeWidth:1.8})}),e[0]=n):n=e[0];const r=n,o=$h;let s;e[1]===Symbol.for("react.memo_cache_sentinel")?(s=e=>{const t=N.jsx(tn,{variant:e.variant,disabled:e.disabled,onSelect:t=>e.handle(t),"data-testid":`notebook-menu-dropdown-${e.label}`,children:o(e)},e.label);return e.tooltip?N.jsx(it,{content:e.tooltip,side:"left",delayDuration:100,children:N.jsx("span",{children:t})},e.label):t},e[1]=s):s=e[1];const i=s;let a,l,c,d,h;if(e[2]===Symbol.for("react.memo_cache_sentinel")?(a=N.jsx(nn,{asChild:!0,children:r}),e[2]=a):a=e[2],e[3]!==t){let n;e[5]===Symbol.for("react.memo_cache_sentinel")?(n=e=>e.hidden?null:e.dropdown?N.jsxs(rn,{children:[N.jsx(on,{"data-testid":`notebook-menu-dropdown-${e.label}`,children:o(e)}),N.jsx(sn,{children:N.jsx(an,{children:e.dropdown.map((e=>N.jsxs(u.Fragment,{children:[e.divider&&N.jsx(ln,{}),i(e)]},e.label)))})})]},e.label):N.jsxs(u.Fragment,{children:[e.divider&&N.jsx(ln,{}),i(e)]},e.label),e[5]=n):n=e[5],l=t.map(n),e[3]=t,e[4]=l}else l=e[4];return e[6]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsx(ln,{}),e[6]=c):c=e[6],e[7]===Symbol.for("react.memo_cache_sentinel")?(d=N.jsx("div",{className:"flex-1 px-2 text-xs text-muted-foreground",children:N.jsxs("span",{children:["Version: ",en()]})}),e[7]=d):d=e[7],e[8]!==l?(h=N.jsxs(cn,{modal:!1,children:[a,N.jsxs(dn,{align:"end",className:"no-print w-[240px]",children:[l,c,d]})]}),e[8]=l,e[9]=h):h=e[9],h};function $h(e){return N.jsxs(N.Fragment,{children:[e.icon&&N.jsx("span",{className:"flex-0 mr-2",children:e.icon}),N.jsx("span",{className:"flex-1",children:e.labelElement||e.label}),e.hotkey&&N.jsx(un,{shortcut:e.hotkey,className:"ml-4"}),e.rightElement]})}const Vh=hn({findText:"",replaceText:"",caseSensitive:!1,wholeWord:!1,regexp:!1,isOpen:!1,currentView:void 0},((e,t)=>{if(void 0===t)return e;switch(t.type){case"setFind":return{...e,findText:t.find};case"setReplace":return{...e,replaceText:t.replace};case"setCaseSensitive":return{...e,caseSensitive:t.caseSensitive};case"setWholeWord":return{...e,wholeWord:t.wholeWord};case"setRegex":return{...e,regexp:t.regexp};case"setIsOpen":return{...e,isOpen:t.isOpen};case"setCurrentView":return{...e,currentView:{view:t.view,range:t.range}};case"clearCurrentView":return{...e,currentView:void 0}}}));function Hh(e){if([...document.querySelectorAll('[role="dialog"][data-state="open"]')].some((e=>e instanceof HTMLElement&&e.childNodes.length>0)))return!1;if(e){const t=e.state.selection.main,n=e.state.sliceDoc(t.from,t.to);n?(K.set(Vh,{type:"setFind",find:n}),K.set(Vh,{type:"setCurrentView",view:e,range:{from:t.from,to:t.to}})):K.set(Vh,{type:"setCurrentView",view:e,range:{from:0,to:0}})}return K.get(Vh).isOpen?(K.set(Vh,{type:"setIsOpen",isOpen:!1}),requestAnimationFrame((()=>{K.set(Vh,{type:"setIsOpen",isOpen:!0})})),!0):(K.set(Vh,{type:"setIsOpen",isOpen:!0}),!0)}function Wh(){return!!K.get(Vh).isOpen&&(K.set(Vh,{type:"setIsOpen",isOpen:!1}),!0)}function Gh(e){return fn("create"in e,'Expected query to have a "create" method'),e}function qh(e){return()=>{const t=K.get(Vh),n=new pn({search:t.findText,caseSensitive:t.caseSensitive,regexp:t.regexp,replace:t.replaceText,wholeWord:t.wholeWord});return!!n.valid&&e({query:Gh(n).create(),search:n})}}const Yh=e=>qh((({query:t})=>{const n=mn(),r=K.get(Vh).currentView||{view:n[0],range:{from:0,to:0}};let o=r.range.to;"prev"===e&&(n.reverse(),o=r.range.from);let s=n.indexOf(r.view);s<0&&(s=0);const i=[...n,...n].slice(s);for(const a of i){const n="next"===e?t.nextMatch(a.state,0,o??0):t.prevMatch(a.state,o??a.state.doc.length,a.state.doc.length);if(!n){o=null,a.dispatch({selection:gn.single(0)});continue}const r=gn.single(n.from,n.to);return a.dispatch({selection:r,effects:[yn.scrollIntoView(r.main,{y:"center"})],userEvent:"select.search"}),K.set(Vh,{type:"setCurrentView",view:a,range:{from:n.from,to:n.to}}),n}return!1})),Jh=Yh("next"),Xh=Yh("prev"),Kh=qh((({query:e})=>{var t;const n=mn(),r=[];for(const o of n){if(o.state.readOnly)continue;const n=null==(t=e.matchAll(o.state,1e9))?void 0:t.map((t=>{const{from:n,to:r}=t;return{from:n,to:r,insert:e.getReplacement(t)}}));if(!n||0===n.length)continue;const s=o.state.doc.toString();r.push((()=>{o.dispatch({changes:[{from:0,to:o.state.doc.length,insert:s}],userEvent:"input.replace.all"})})),o.dispatch({changes:n,userEvent:"input.replace.all"})}return()=>{for(const e of r)e()}})),Zh=qh((({query:e})=>{const t=mn(),n=K.get(Vh).currentView||{view:t[0],range:{from:0}};let r=n.range.from,o=t.indexOf(n.view);o<0&&(o=0);const s=[...t,...t].slice(o);for(const i of s){const t=e.nextMatch(i.state,0,r??0);if(!t){r=null,i.dispatch({selection:gn.single(0)});continue}const n=i.state.toText(e.getReplacement(t));return i.dispatch({changes:[{from:t.from,to:t.to,insert:n}],userEvent:"input.replace"}),Jh()}return!1})),Qh=qh((({query:e})=>{const t=mn();let n=0;const r=new Map;for(const o of t){const t=e.matchAll(o.state,1e9)||[];for(const e of t){const{from:t,to:s}=e,i=r.get(o)||new Map;i.set(`${t}:${s}`,n++),r.set(o,i)}}return{count:n,position:r}})),ef=kn.define();function tf(){const e=mn();for(const t of e)t.state.readOnly||t.dispatch({effects:ef.of(new pn({search:""}))})}const nf=xn.define({create(){const e=K.get(Vh);return Gh(new pn({search:e.findText,caseSensitive:e.caseSensitive,regexp:e.regexp,replace:e.replaceText,wholeWord:e.wholeWord})).create()},update(e,t){for(const n of t.effects)n.is(ef)&&(e=Gh(n.value).create());return e}}),rf=vn.mark({class:"cm-searchMatch"}),of=vn.mark({class:"cm-searchMatch cm-searchMatch-selected"}),sf=bn.fromClass(class{constructor(e){this.view=e,this.decorations=void 0,this.decorations=this.highlight(e.state.field(nf))}update(e){const t=e.state.field(nf);(t!==e.startState.field(nf)||e.docChanged||e.selectionSet||e.viewportChanged)&&(this.decorations=this.highlight(t))}highlight(e){if(!e.spec.valid)return vn.none;const{view:t}=this,n=new wn,r=t.visibleRanges,o=r.length;for(let s=0;sr[s+1].from-500;)i=r[++s].to;e.highlight(t.state,a,i,((e,r)=>{const o=t.state.selection.ranges.some((t=>t.from===e&&t.to===r));n.add(e,r,o?of:rf)}))}return n.finish()}},{decorations:e=>e.decorations}),af=yn.baseTheme({"&light .cm-searchMatch":{backgroundColor:"#99ff7780"},"&dark .cm-searchMatch":{backgroundColor:"#22bb0070"},"&light .cm-searchMatch-selected":{backgroundColor:"transparent"},"&dark .cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff88 !important"}}),lf=()=>{var e;const t=C.c(102),[n,r]=o.useState(!1),[s,i]=ze(Vh),[a,l]=o.useState(),c=o.useRef(null),d=se(Fe);let u,h;t[0]!==n||t[1]!==s.isOpen?(u=()=>(!n||!s.isOpen)&&Hh(),t[0]=n,t[1]=s.isOpen,t[2]=u):u=t[2],Cl("cell.findAndReplace",u),t[3]===Symbol.for("react.memo_cache_sentinel")?(h=()=>{const e=Qh();l(!1===e?void 0:e)},t[3]=h):h=t[3];const f=h;let p,m,g,y;if(t[4]!==s.isOpen?(p=()=>{s.isOpen&&c.current&&(c.current.focus(),c.current.select())},m=[s.isOpen],t[4]=s.isOpen,t[5]=p,t[6]=m):(p=t[5],m=t[6]),o.useEffect(p,m),t[7]!==s.findText||t[8]!==s.isOpen?(g=()=>{if(s.isOpen){if(""===s.findText)return l(void 0),void tf();f(),function(){const e=K.get(Vh),t=mn();for(const n of t)n.state.readOnly||n.dispatch({effects:ef.of(new pn({search:e.findText,caseSensitive:e.caseSensitive,regexp:e.regexp,replace:e.replaceText,wholeWord:e.wholeWord}))})}()}else tf()},t[7]=s.findText,t[8]=s.isOpen,t[9]=g):g=t[9],t[10]!==s.caseSensitive||t[11]!==s.findText||t[12]!==s.isOpen||t[13]!==s.regexp||t[14]!==s.wholeWord?(y=[s.findText,s.isOpen,s.caseSensitive,s.regexp,s.wholeWord],t[10]=s.caseSensitive,t[11]=s.findText,t[12]=s.isOpen,t[13]=s.regexp,t[14]=s.wholeWord,t[15]=y):y=t[15],o.useEffect(g,y),!s.isOpen)return null;const b=s.currentView;let x;t[16]!==a||t[17]!==b?(x=b&&a?null==(e=a.position.get(b.view))?void 0:e.get(`${b.range.from}:${b.range.to}`):void 0,t[16]=a,t[17]=b,t[18]=x):x=t[18];const v=x;let w,k,S,E,j,_,I,A,T,M,O;t[19]===Symbol.for("react.memo_cache_sentinel")?(w=()=>r(!0),t[19]=w):w=t[19],t[20]===Symbol.for("react.memo_cache_sentinel")?(k=()=>r(!1),t[20]=k):k=t[20],t[21]!==i?(S=e=>{"Escape"===e.key&&i({type:"setIsOpen",isOpen:!1})},t[21]=i,t[22]=S):S=t[22],t[23]!==i?(E=()=>i({type:"setIsOpen",isOpen:!1}),t[23]=i,t[24]=E):E=t[24],t[25]===Symbol.for("react.memo_cache_sentinel")?(j=N.jsx(Cn,{className:"w-4 h-4"}),t[25]=j):j=t[25],t[26]!==E?(_=N.jsx("div",{className:"absolute top-0 right-0",children:N.jsx(J,{"data-testid":"close-find-replace-button",onClick:E,size:"xs",variant:"text",children:j})}),t[26]=E,t[27]=_):_=t[27],t[28]!==i?(I=e=>{i({type:"setFind",find:e.target.value})},t[28]=i,t[29]=I):I=t[29],t[30]!==s.findText||t[31]!==I?(A=N.jsx(tt,{ref:c,"data-testid":"find-input",value:s.findText,autoFocus:!0,className:"mr-2 mb-0",placeholder:"Find",onKeyDown:df,onChange:I}),t[30]=s.findText,t[31]=I,t[32]=A):A=t[32],t[33]!==i?(T=e=>{i({type:"setReplace",replace:e.target.value})},t[33]=i,t[34]=T):T=t[34],t[35]!==s.replaceText||t[36]!==T?(M=N.jsx(tt,{"data-testid":"replace-input",value:s.replaceText,placeholder:"Replace",onChange:T}),t[35]=s.replaceText,t[36]=T,t[37]=M):M=t[37],t[38]!==A||t[39]!==M?(O=N.jsxs("div",{className:"flex flex-col flex-2 gap-2 w-[55%]",children:[A,M]}),t[38]=A,t[39]=M,t[40]=O):O=t[40];const D=s.caseSensitive?"on":"off";let R,P,L;t[41]!==i?(R=e=>i({type:"setCaseSensitive",caseSensitive:e}),t[41]=i,t[42]=R):R=t[42],t[43]===Symbol.for("react.memo_cache_sentinel")?(P=N.jsx(En,{className:"w-4 h-4"}),t[43]=P):P=t[43],t[44]!==s.caseSensitive||t[45]!==D||t[46]!==R?(L=N.jsx(it,{content:"Case Sensitive",children:N.jsx(Sn,{size:"sm",pressed:s.caseSensitive,"data-state":D,onPressedChange:R,children:P})}),t[44]=s.caseSensitive,t[45]=D,t[46]=R,t[47]=L):L=t[47];const z=s.wholeWord?"on":"off";let F,B,U;t[48]!==i?(F=e=>i({type:"setWholeWord",wholeWord:e}),t[48]=i,t[49]=F):F=t[49],t[50]===Symbol.for("react.memo_cache_sentinel")?(B=N.jsx(Yd,{className:"w-4 h-4"}),t[50]=B):B=t[50],t[51]!==s.wholeWord||t[52]!==z||t[53]!==F?(U=N.jsx(it,{content:"Match Whole Word",children:N.jsx(Sn,{size:"sm",pressed:s.wholeWord,"data-state":z,onPressedChange:F,children:B})}),t[51]=s.wholeWord,t[52]=z,t[53]=F,t[54]=U):U=t[54];const $=s.regexp?"on":"off";let V,H,W,G,q;t[55]!==i?(V=e=>i({type:"setRegex",regexp:e}),t[55]=i,t[56]=V):V=t[56],t[57]===Symbol.for("react.memo_cache_sentinel")?(H=N.jsx(_d,{className:"w-4 h-4"}),t[57]=H):H=t[57],t[58]!==s.regexp||t[59]!==$||t[60]!==V?(W=N.jsx(it,{content:"Use Regular Expression",children:N.jsx(Sn,{size:"sm",pressed:s.regexp,"data-state":$,onPressedChange:V,children:H})}),t[58]=s.regexp,t[59]=$,t[60]=V,t[61]=W):W=t[61],t[62]!==L||t[63]!==U||t[64]!==W?(G=N.jsxs("div",{className:"flex items-center gap-[2px]",children:[L,U,W]}),t[62]=L,t[63]=U,t[64]=W,t[65]=G):G=t[65],t[66]===Symbol.for("react.memo_cache_sentinel")?(q=()=>{Zh()&&f()},t[66]=q):q=t[66];const Y=""===s.findText;let X,Z;t[67]!==Y?(X=N.jsx(J,{"data-testid":"replace-next-button",size:"xs",variant:"outline",className:"h-6 text-xs",onClick:q,disabled:Y,children:"Replace Next"}),t[67]=Y,t[68]=X):X=t[68],t[69]===Symbol.for("react.memo_cache_sentinel")?(Z=()=>{const e=Kh();if(!e)return;f();const{dismiss:t}=ee({title:"Replaced all occurrences",action:N.jsx(Su,{"data-testid":"undo-replace-all-button",onClick:()=>{e(),n()}})}),n=t},t[69]=Z):Z=t[69];const Q=""===s.findText;let te,ne,re,oe,ie,ae,le,ce,de,ue,he,fe;return t[70]!==Q?(te=N.jsx(J,{"data-testid":"replace-all-button",size:"xs",variant:"outline",className:"h-6 text-xs",onClick:Z,disabled:Q,children:"Replace All"}),t[70]=Q,t[71]=te):te=t[71],t[72]!==X||t[73]!==te?(ne=N.jsxs("div",{className:"flex items-center gap-[2px]",children:[X,te]}),t[72]=X,t[73]=te,t[74]=ne):ne=t[74],t[75]!==G||t[76]!==ne?(re=N.jsxs("div",{className:"flex flex-col gap-2",children:[G,ne]}),t[75]=G,t[76]=ne,t[77]=re):re=t[77],t[78]!==O||t[79]!==re?(oe=N.jsxs("div",{className:"flex items-center gap-3",children:[O,re]}),t[78]=O,t[79]=re,t[80]=oe):oe=t[80],t[81]===Symbol.for("react.memo_cache_sentinel")?(ie=N.jsx(it,{content:"Find Previous",children:N.jsx(J,{"data-testid":"find-prev-button",size:"xs",variant:"secondary",onClick:uf,children:N.jsx(Oc,{className:"w-4 h-4"})})}),t[81]=ie):ie=t[81],t[82]===Symbol.for("react.memo_cache_sentinel")?(ae=N.jsx(it,{content:"Find Next",children:N.jsx(J,{"data-testid":"find-next-button",size:"xs",variant:"secondary",onClick:hf,children:N.jsx(Pc,{className:"w-4 h-4"})})}),t[82]=ae):ae=t[82],t[83]!==v||t[84]!==a?(le=null!=a&&null==v&&N.jsxs("span",{className:"text-sm",children:[a.count," matches"]}),t[83]=v,t[84]=a,t[85]=le):le=t[85],t[86]!==v||t[87]!==a?(ce=null!=a&&null!=v&&N.jsxs("span",{className:"text-sm",children:[v+1," of ",a.count]}),t[86]=v,t[87]=a,t[88]=ce):ce=t[88],t[89]!==le||t[90]!==ce?(de=N.jsxs("div",{className:"flex items-center gap-2",children:[ie,ae,le,ce]}),t[89]=le,t[90]=ce,t[91]=de):de=t[91],t[92]!==d?(ue=d.getHotkey("cell.findAndReplace"),t[92]=d,t[93]=ue):ue=t[93],t[94]!==ue.key?(he=N.jsxs("div",{className:"text-xs text-muted-foreground flex gap-1 mt-2",children:["Press"," ",N.jsx(Je,{shortcut:ue.key})," ","again to open the native browser search."]}),t[94]=ue.key,t[95]=he):he=t[95],t[96]!==_||t[97]!==oe||t[98]!==de||t[99]!==he||t[100]!==S?(fe=N.jsx(Nn,{restoreFocus:!0,autoFocus:!0,children:N.jsxs("div",{onFocus:w,onClick:cf,onBlur:k,className:"fixed top-0 right-0 w-[500px] flex flex-col bg-[var(--sage-1)] p-4 z-50 mt-2 mr-3 rounded-md shadow-lg border gap-2 print:hidden",onKeyDown:S,children:[_,oe,de,he]})}),t[96]=_,t[97]=oe,t[98]=de,t[99]=he,t[100]=S,t[101]=fe):fe=t[101],fe};function cf(e){e.stopPropagation(),e.preventDefault()}function df(e){"Enter"===e.key&&(e.shiftKey?Xh():Jh())}function uf(){return Xh()}function hf(){return Jh()}function ff(e){const t=C.c(3),[n,r]=o.useState(!1);let s,i;return t[0]!==e?(s=()=>{if(!e)return;r(!1);const t=setTimeout((()=>{r(!0)}),200);return()=>clearTimeout(t)},i=[e],t[0]=e,t[1]=s,t[2]=i):(s=t[1],i=t[2]),o.useEffect(s,i),e&&n}const pf=()=>{const e=C.c(6),t=ae(zu);let n;e[0]!==t?(n=()=>t(mf),e[0]=t,e[1]=n):n=e[1];const r=n;let o,s,i;return e[2]===Symbol.for("react.memo_cache_sentinel")?(o=Bt("global.commandPalette"),e[2]=o):o=e[2],e[3]===Symbol.for("react.memo_cache_sentinel")?(s=N.jsx(Xc,{strokeWidth:1.5,size:18}),e[3]=s):s=e[3],e[4]!==r?(i=N.jsx(it,{content:o,children:N.jsx(Sl,{"data-testid":"command-palette-button",onClick:r,shape:"rectangle",color:"hint-green",children:s})}),e[4]=r,e[5]=i):i=e[5],i};function mf(e){return!e}const gf=e=>{const{children:t}=e;return se(de)?null:t},yf=e=>{const{children:t}=e;return se(de)?t:null},bf=e=>{const t=C.c(38),{resetOnBlur:n,placeholderText:r,initialValue:s,flexibleWidth:i,onNameChange:a,className:l}=e,c=void 0!==n&&n,d=void 0===s?null:s,u=void 0!==i&&i,[h,f]=o.useState(d);let p;t[0]===Symbol.for("react.memo_cache_sentinel")?(p=[],t[0]=p):p=t[0];const[m,g]=o.useState(p),[y,b]=o.useState(!1),x=o.useRef(null),v=o.useRef(!1);let w,k,S;t[1]!==d?(w=()=>{f(d)},k=[d],t[1]=d,t[2]=w,t[3]=k):(w=t[2],k=t[3]),o.useEffect(w,k),t[4]===Symbol.for("react.memo_cache_sentinel")?(S=()=>{b(!0)},t[4]=S):S=t[4];const E=S;let j;t[5]!==d||t[6]!==c?(j=e=>{var t;(null==(t=e.relatedTarget)?void 0:t.closest(".filename-input"))||(b(!1),c&&f(d))},t[5]=d,t[6]=c,t[7]=j):j=t[7];const _=j;let I;t[8]!==h?(I=kt.dirname(h||""),t[8]=h,t[9]=I):I=t[9];const A=I,T=kt.basename(h||""),M=m.filter((e=>kt.basename(e.path).startsWith(T)));let O,D;t[10]!==A||t[11]!==y?(O=async()=>{if(!y)return void g([]);const e=await Tn({path:A});g(e.files)},D=[A,y],t[10]=A,t[11]=y,t[12]=O,t[13]=D):(O=t[12],D=t[13]);const{loading:R}=jn(O,D),P=function(e,t,n){if(!e)return;if(e.endsWith("/"))return;(iu("markdown")?new Set(["py","md","markdown","qmd"]):new Set(["py"])).has(kt.extension(e))||(e=e.endsWith(".")?`${e}py`:e.endsWith(".p")?`${e}y`:`${e}.py`);if(t.some((t=>t.path===e||kt.basename(t.path)===e)))return;if(n&&(n===e||kt.basename(n)===e))return;return e}(h,m,d),L=(P||M.length>0)&&N.jsxs(He,{className:"font-mono",children:[!R&&N.jsx(Ke,{children:"No files"}),P&&N.jsxs(qe,{variant:"success",className:"py-2 px-3",onSelect:()=>{var e;P&&(v.current=!0,a(P),null==(e=x.current)||e.blur())},children:[N.jsx(td,{className:"w-4 h-4 mr-2"})," ",N.jsxs("span",{className:"text-sm",children:[d?"Rename to: ":"Save as: ",N.jsx("span",{className:"font-medium text-sm",children:kt.basename(P)})]})]},"_rename_"),M.map((e=>{const t=e.isDirectory?"directory":_n(e.path),n=In[t];return N.jsxs(qe,{variant:e.isDirectory?"default":"muted",className:"py-2 px-3",onSelect:()=>{e.isDirectory?f(`${e.path}/`):f(e.path)},children:[N.jsx(n,{className:"w-4 h-4 mr-2"})," ",kt.basename(e.path)]},e.path)}))]}),z=10*Math.max(20,(null==h?void 0:h.length)||(null==r?void 0:r.length)||0),F=y?h||"":d||"";let B,U,$;t[14]!==u||t[15]!==z?(B=u?{maxWidth:z}:void 0,t[14]=u,t[15]=z,t[16]=B):B=t[16],t[17]!==l?(U=An(l,"w-full px-4 py-1 my-1 h-9 font-mono text-foreground/60"),t[17]=l,t[18]=U):U=t[18],t[19]!==r||t[20]!==F||t[21]!==B||t[22]!==U?($=N.jsx(Mn,{children:N.jsx(Xe,{"data-testid":"dir-completion-input",tabIndex:-1,rootClassName:"border-none justify-center px-1",spellCheck:"false",value:F,onKeyDown:xf,icon:null,ref:x,onValueChange:f,placeholder:r,autoComplete:"off",style:B,className:U})}),t[19]=r,t[20]=F,t[21]=B,t[22]=U,t[23]=$):$=t[23];const V=L&&"group-focus-within:block";let H,W,G,q,Y;return t[24]!==V?(H=An("p-0 w-full min-w-80 max-w-80vw hidden",V),t[24]=V,t[25]=H):H=t[25],t[26]!==L||t[27]!==H?(W=N.jsx(On,{side:"bottom",className:H,portal:!1,children:L}),t[26]=L,t[27]=H,t[28]=W):W=t[28],t[29]!==$||t[30]!==W?(G=N.jsxs(He,{children:[$,W]}),t[29]=$,t[30]=W,t[31]=G):G=t[31],t[32]!==_||t[33]!==G?(q=N.jsx(Dn,{onFocus:E,onBlur:_,shouldFilter:!1,id:"filename-input",className:"bg-transparent group filename-input",children:G}),t[32]=_,t[33]=G,t[34]=q):q=t[34],t[35]!==y||t[36]!==q?(Y=N.jsx(Rn,{children:N.jsx(Pn,{open:y,modal:!1,children:q})}),t[35]=y,t[36]=q,t[37]=Y):Y=t[37],Y};function xf(e){"Escape"===e.key&&e.currentTarget.blur()}function vf(e){return JSON.stringify(e)}const wf=q(void 0),kf=q((e=>{const t=e(wf);return function(e,t,n){if(!n)return!1;const{cellIds:r,cellData:o}=e,s=r.inOrderIds.map((e=>o[e])),i=s.map((e=>e.code)),a=s.map((e=>e.config)),l=s.map((e=>e.name));return!(Ln(i,n.codes)&&Ln(l,n.names)&&zn(a,n.configs)&&zn(t.selectedLayout,n.layout.selectedLayout)&&zn(t.layoutData,n.layout.layoutData))}(e(ne),e(tc),t)}));const Sf=e=>{const t=C.c(35),n=Pt(),r=()=>{Xt(new Blob([s()],{type:"text/plain"}),`${e.proposedName}.json`)};let o;t[0]!==n?(o=()=>{const e=V(),t=Fn(e);return JSON.stringify({filename:n,cells:t.map(Ef)},null,2)},t[0]=n,t[1]=o):o=t[1];const s=B(o);let i,a,l,c,d,u,h,f,p,m,g,y,b,x,v,w,k;return t[2]!==r||t[3]!==e?(i=t=>{t.preventDefault(),r(),e.closeModal()},t[2]=r,t[3]=e,t[4]=i):i=t[4],t[5]!==e?(a=t=>{"Escape"===t.key&&e.closeModal()},t[5]=e,t[6]=a):a=t[6],t[7]===Symbol.for("react.memo_cache_sentinel")?(l=N.jsx(Te,{className:"text-accent-foreground mb-6",children:"Download unsaved changes?"}),t[7]=l):l=t[7],t[8]===Symbol.for("react.memo_cache_sentinel")?(c={wordBreak:"break-word"},t[8]=c):c=t[8],t[9]===Symbol.for("react.memo_cache_sentinel")?(d=N.jsx("p",{children:"This app has unsaved changes. To recover:"}),u={paddingBottom:"10px"},t[9]=d,t[10]=u):(d=t[9],u=t[10]),t[11]!==e.proposedName?(h=N.jsxs("li",{style:u,children:['Click the "Download" button. This will download a file called ',N.jsxs("code",{children:[e.proposedName,".json"]}),". This file contains your code."]}),t[11]=e.proposedName,t[12]=h):h=t[12],t[13]===Symbol.for("react.memo_cache_sentinel")?(f={paddingBottom:"10px"},t[13]=f):f=t[13],t[14]===Symbol.for("react.memo_cache_sentinel")?(p={display:"block",padding:"10px"},t[14]=p):p=t[14],t[15]!==e.proposedName?(m=N.jsxs("code",{style:p,children:["marimo recover ",e.proposedName,".json ",">"," ",e.proposedName,".py"]}),t[15]=e.proposedName,t[16]=m):m=t[16],t[17]!==e.proposedName?(g=N.jsxs("code",{children:[e.proposedName,".py"]}),t[17]=e.proposedName,t[18]=g):g=t[18],t[19]!==m||t[20]!==g?(y=N.jsxs("li",{style:f,children:["In your terminal, type",m,"to overwrite ",g," with the recovered changes."]}),t[19]=m,t[20]=g,t[21]=y):y=t[21],t[22]!==y||t[23]!==h?(b=N.jsx(et,{className:"markdown break-words",style:c,children:N.jsxs("div",{className:"prose dark:prose-invert",children:[d,N.jsxs("ol",{children:[h,y]})]})}),t[22]=y,t[23]=h,t[24]=b):b=t[24],t[25]!==e.closeModal?(x=N.jsx(J,{"aria-label":"Cancel",variant:"secondary","data-testid":"cancel-recovery-button",onClick:e.closeModal,children:"Cancel"}),t[25]=e.closeModal,t[26]=x):x=t[26],t[27]===Symbol.for("react.memo_cache_sentinel")?(v=N.jsx(J,{"data-testid":"download-recovery-button","aria-label":"Download",variant:"default",type:"submit",children:"Download"}),t[27]=v):v=t[27],t[28]!==x?(w=N.jsxs(rt,{children:[x,v]}),t[28]=x,t[29]=w):w=t[29],t[30]!==i||t[31]!==b||t[32]!==w||t[33]!==a?(k=N.jsx(Ie,{className:"w-fit",children:N.jsxs("form",{onSubmit:i,onKeyDown:a,children:[l,b,w]})}),t[30]=i,t[31]=b,t[32]=w,t[33]=a,t[34]=k):k=t[34],k},Cf=e=>{const t=C.c(12),{filename:n,needsSave:r}=e,{openModal:o,closeModal:s}=ie();let i;t[0]!==n?(i=null===n?"app":n.slice(0,-3),t[0]=n,t[1]=i):i=t[1];const a=i;let l;t[2]!==s||t[3]!==r||t[4]!==o||t[5]!==a?(l=()=>{r&&o(N.jsx(Sf,{proposedName:a,closeModal:s}))},t[2]=s,t[3]=r,t[4]=o,t[5]=a,t[6]=l):l=t[6];const c=l;let d;Cl("global.save",c),t[7]===Symbol.for("react.memo_cache_sentinel")?(d=Bt("global.save"),t[7]=d):d=t[7];const u=r?"yellow":"gray";let h,f;return t[8]===Symbol.for("react.memo_cache_sentinel")?(h=N.jsx(Td,{strokeWidth:1.5,size:18}),t[8]=h):h=t[8],t[9]!==c||t[10]!==u?(f=N.jsx(it,{content:d,children:N.jsx(Sl,{onClick:c,id:"save-button","aria-label":"Save",className:"rectangle",color:u,children:h})}),t[9]=c,t[10]=u,t[11]=f):f=t[11],f};function Ef(e){return{name:e.name,code:e.code}}const Nf=5e3;async function jf(){await Vn({download:!1})}async function _f(){await $n({download:!1,includeCode:!0,files:Kl.INSTANCE.filenames()})}async function If(){await Un({download:!1})}const Af=e=>{const t=C.c(13),{kioskMode:n,appConfig:r}=e,s=Pt();let i;t[0]!==r||t[1]!==n?(i={appConfig:r,kioskMode:n},t[0]=r,t[1]=n,t[2]=i):i=t[2];const{saveOrNameNotebook:a,needsSave:l,closed:c}=function(e){const t=C.c(41),{kioskMode:n}=e,r=se(Hn),{updateCellCode:s}=U(),i=Wn(),[a]=ze(at),l=Pt(),{openModal:c,closeModal:d,openAlert:u}=ie(),h=ae(wf),f=Gn(),p=se(kf),m=Gl();let g;t[0]!==r||t[1]!==a.state||t[2]!==n||t[3]!==m||t[4]!==i||t[5]!==u||t[6]!==h||t[7]!==s?(g=(e,t)=>{const o=Fn(i),l=o.map(Rf),c=o.map(Df),d=o.map(Of),f=qn(i);n||0!==c.length&&(a.state===ct.OPEN?(w.log("saving to ",e),Yn({cellIds:l,codes:c,names:d,filename:e,configs:f,layout:nc(),persist:!0}).then((()=>{t&&r.format_on_save&&Jn(s),h({names:d,codes:c,configs:f,layout:m})}))):u("Failed to save notebook: not connected to a kernel."))},t[0]=r,t[1]=a.state,t[2]=n,t[3]=m,t[4]=i,t[5]=u,t[6]=h,t[7]=s,t[8]=g):g=t[8];const y=B(g);let b;t[9]!==a.state||t[10]!==l||t[11]!==y?(b=e=>{const t=void 0!==e&&e;null!==l&&a.state===ct.OPEN&&y(l,t)},t[9]=a.state,t[10]=l,t[11]=y,t[12]=b):b=t[12];const x=B(b);let v;t[13]!==y||t[14]!==f?(v=e=>{f(e).then((e=>{null!==e&&y(e,!0)}))},t[13]=y,t[14]=f,t[15]=v):v=t[15];const k=v;let S;t[16]!==d||t[17]!==a.state||t[18]!==l||t[19]!==k||t[20]!==c||t[21]!==x?(S=()=>{x(!0),null===l&&a.state!==ct.CLOSED&&c(N.jsx(Pf,{onClose:d,onSave:k}))},t[16]=d,t[17]=a.state,t[18]=l,t[19]=k,t[20]=c,t[21]=x,t[22]=S):S=t[22];const E=B(S);let j,_;if(t[23]!==i){const e=Fn(i);j=e.map(Mf),_=e.map(Tf),t[23]=i,t[24]=j,t[25]=_}else j=t[24],_=t[25];const I=_;let A;t[26]!==i?(A=qn(i),t[26]=i,t[27]=A):A=t[27];const T=A;let M;t[28]!==r||t[29]!==I||t[30]!==j||t[31]!==T||t[32]!==a||t[33]!==n||t[34]!==p||t[35]!==x?(M={onSave:x,needsSave:p,codes:j,cellConfigs:T,cellNames:I,connStatus:a,config:r,kioskMode:n},t[28]=r,t[29]=I,t[30]=j,t[31]=T,t[32]=a,t[33]=n,t[34]=p,t[35]=x,t[36]=M):M=t[36];!function(e){const t=C.c(21),{codes:n,cellConfigs:r,config:s,connStatus:i,cellNames:a,needsSave:l,kioskMode:c,onSave:d}=e,u=o.useRef(null);let h;t[0]!==n?(h=n.join(":"),t[0]=n,t[1]=h):h=t[1];const f=h;let p;t[2]!==r?(p=r.map(vf).join(":"),t[2]=r,t[3]=p):p=t[3];const m=p;let g;t[4]!==a?(g=a.join(":"),t[4]=a,t[5]=g):g=t[5];const y=g;let b,x;t[6]!==s||t[7]!==i.state||t[8]!==c||t[9]!==l||t[10]!==d?(b=()=>{if(!c)return"after_delay"===s.autosave&&(null!==u.current&&clearTimeout(u.current),l&&i.state===ct.OPEN&&(u.current=setTimeout(d,s.autosave_delay))),()=>{null!==u.current&&clearTimeout(u.current)}},t[6]=s,t[7]=i.state,t[8]=c,t[9]=l,t[10]=d,t[11]=b):b=t[11],t[12]!==m||t[13]!==y||t[14]!==f||t[15]!==s||t[16]!==i.state||t[17]!==c||t[18]!==l||t[19]!==d?(x=[f,m,y,s,i.state,d,c,l],t[12]=m,t[13]=y,t[14]=f,t[15]=s,t[16]=i.state,t[17]=c,t[18]=l,t[19]=d,t[20]=x):x=t[20],o.useEffect(b,x)}(M);const O=a.state===ct.CLOSED;let D;t[37]!==p||t[38]!==E||t[39]!==O?(D={saveOrNameNotebook:E,needsSave:p,closed:O},t[37]=p,t[38]=E,t[39]=O,t[40]=D):D=t[40];return D}(i);let d;!function(){const e=C.c(6),t=se(Bn),{state:n}=se(at),r=t.auto_download.includes("markdown"),o=t.auto_download.includes("html"),s=t.auto_download.includes("ipynb"),i=!r||n!==ct.OPEN,a=!o||n!==ct.OPEN,l=!s||n!==ct.OPEN;let c,d,u;e[0]!==i?(c={delayMs:Nf,whenVisible:!0,disabled:i},e[0]=i,e[1]=c):c=e[1],El(If,c),e[2]!==a?(d={delayMs:Nf,whenVisible:!0,disabled:a},e[2]=a,e[3]=d):d=e[3],El(_f,d),e[4]!==l?(u={delayMs:Nf,whenVisible:!0,disabled:l},e[4]=l,e[5]=u):u=e[5],El(jf,u)}(),t[3]!==a?(d=e=>{e.preventDefault(),e.stopPropagation(),a()},t[3]=a,t[4]=d):d=t[4];const u=d;if(Cl("global.save",a),c){let e;return t[5]!==s||t[6]!==l?(e=N.jsx(Cf,{filename:s,needsSave:l}),t[5]=s,t[6]=l,t[7]=e):e=t[7],e}let h;t[8]===Symbol.for("react.memo_cache_sentinel")?(h=Bt("global.save"),t[8]=h):h=t[8];const f=l?"yellow":"hint-green";let p,m;return t[9]===Symbol.for("react.memo_cache_sentinel")?(p=N.jsx(Td,{strokeWidth:1.5,size:18}),t[9]=p):p=t[9],t[10]!==u||t[11]!==f?(m=N.jsx(it,{content:h,children:N.jsx(Sl,{"data-testid":"save-button",id:"save-button",shape:"rectangle",color:f,onClick:u,children:p})}),t[10]=u,t[11]=f,t[12]=m):m=t[12],m};function Tf(e){return e.name}function Mf(e){return e.code}function Of(e){return e.name}function Df(e){return e.code}function Rf(e){return e.id}const Pf=e=>{const t=C.c(17),{onClose:n,onSave:r}=e,[s,i]=o.useState();let a;t[0]!==n||t[1]!==r?(a=e=>{i(e),e.trim()&&(r(e),n())},t[0]=n,t[1]=r,t[2]=a):a=t[2];const l=a;let c,d,u,h;t[3]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsx(Te,{children:"Save notebook"}),t[3]=c):c=t[3],t[4]===Symbol.for("react.memo_cache_sentinel")?(d=N.jsx(Me,{className:"text-md pt-6 px-1",children:"Save as"}),t[4]=d):d=t[4],t[5]!==l?(u=N.jsxs("div",{className:"flex flex-col",children:[d,N.jsx(bf,{onNameChange:l,placeholderText:"filename",className:"missing-filename"})]}),t[5]=l,t[6]=u):u=t[6],t[7]!==n?(h=N.jsx(J,{"data-testid":"cancel-save-dialog-button","aria-label":"Cancel",variant:"secondary",onClick:n,children:"Cancel"}),t[7]=n,t[8]=h):h=t[8];const f=!s;let p,m,g;return t[9]!==f?(p=N.jsx(J,{"data-testid":"submit-save-dialog-button","aria-label":"Save",variant:"default",disabled:f,type:"submit",children:"Save"}),t[9]=f,t[10]=p):p=t[10],t[11]!==h||t[12]!==p?(m=N.jsxs(rt,{children:[h,p]}),t[11]=h,t[12]=p,t[13]=m):m=t[13],t[14]!==u||t[15]!==m?(g=N.jsxs(Ie,{children:[c,u,m]}),t[14]=u,t[15]=m,t[16]=g):g=t[16],g},Lf=e=>{const t=C.c(42),{presenting:n,onTogglePresenting:r,onInterrupt:o,onRun:s,closed:i,running:a,appConfig:l}=e,c=l.width,d=se(Ft),u=se(Xn),{undoDeleteCell:h}=U();let f,p,m=null;if(!i&&d){let e,n;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx(Gd,{size:16,strokeWidth:1.5}),t[0]=e):e=t[0],t[1]!==h?(n=N.jsx(it,{content:"Undo cell deletion",children:N.jsx(Sl,{"data-testid":"undo-delete-cell",size:"medium",color:"hint-green",shape:"circle",onClick:h,children:e})}),t[1]=h,t[2]=n):n=t[2],m=n}t[3]!==n?(f=!n&&N.jsx(lf,{}),t[3]=n,t[4]=f):f=t[4],t[5]!==i||t[6]!==n?(p=!i&&N.jsxs("div",{className:Bf,children:[n&&N.jsx(au,{}),N.jsx(Uh,{}),N.jsx(Nl,{}),N.jsx(jl,{description:"This will terminate the Python kernel. You'll lose all data that's in memory."})]}),t[5]=i,t[6]=n,t[7]=p):p=t[7];const g="compact"===c&&"xl:flex-row items-end";let y,b,x,v,w,k,S,E,j,_,I,A,T;return t[8]!==g?(y=An(Uf,g),t[8]=g,t[9]=y):y=t[9],t[10]!==l?(b=N.jsx(gf,{children:N.jsx(Af,{kioskMode:!1,appConfig:l})}),t[10]=l,t[11]=b):b=t[11],t[12]===Symbol.for("react.memo_cache_sentinel")?(x=Bt("global.hideCode"),t[12]=x):x=t[12],t[13]!==n?(v=n?N.jsx(Ut,{strokeWidth:1.5,size:18}):N.jsx(ud,{strokeWidth:1.5,size:18}),t[13]=n,t[14]=v):v=t[14],t[15]!==r||t[16]!==v?(w=N.jsx(it,{content:x,children:N.jsx(Sl,{"data-testid":"hide-code-button",id:"preview-button",shape:"rectangle",color:"hint-green",onClick:r,children:v})}),t[15]=r,t[16]=v,t[17]=w):w=t[17],t[18]===Symbol.for("react.memo_cache_sentinel")?(E=N.jsx(pf,{}),k=N.jsx(_l,{}),S=N.jsx("div",{}),t[18]=k,t[19]=S,t[20]=E):(k=t[18],S=t[19],E=t[20]),t[21]!==i||t[22]!==o||t[23]!==a?(j=!i&&N.jsx(Ff,{running:a,onInterrupt:o}),t[21]=i,t[22]=o,t[23]=a,t[24]=j):j=t[24],t[25]!==i||t[26]!==u||t[27]!==s?(_=!i&&N.jsx(zf,{needsRun:u,onRun:s}),t[25]=i,t[26]=u,t[27]=s,t[28]=_):_=t[28],t[29]!==j||t[30]!==_||t[31]!==m?(I=N.jsx(gf,{children:N.jsxs("div",{className:"flex flex-col gap-2 items-center",children:[m,j,_]})}),t[29]=j,t[30]=_,t[31]=m,t[32]=I):I=t[32],t[33]!==I||t[34]!==y||t[35]!==b||t[36]!==w?(A=N.jsxs("div",{className:y,children:[b,w,E,k,S,I]}),t[33]=I,t[34]=y,t[35]=b,t[36]=w,t[37]=A):A=t[37],t[38]!==f||t[39]!==A||t[40]!==p?(T=N.jsxs(N.Fragment,{children:[f,p,A]}),t[38]=f,t[39]=A,t[40]=p,t[41]=T):T=t[41],T},zf=e=>{const t=C.c(5),{needsRun:n,onRun:r}=e;if(n){let e,n,o;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=Bt("global.runStale"),t[0]=e):e=t[0],t[1]===Symbol.for("react.memo_cache_sentinel")?(n=N.jsx(Nd,{strokeWidth:1.5,size:16}),t[1]=n):n=t[1],t[2]!==r?(o=N.jsx(it,{content:e,children:N.jsx(Sl,{"data-testid":"run-button",size:"medium",color:"yellow",shape:"circle",onClick:r,children:n})}),t[2]=r,t[3]=o):o=t[3],o}let o;return t[4]===Symbol.for("react.memo_cache_sentinel")?(o=N.jsx(it,{content:"Nothing to run",children:N.jsx(Sl,{"data-testid":"run-button",className:"inactive-button",color:"disabled",size:"medium",shape:"circle",children:N.jsx(Nd,{strokeWidth:1.5,size:16})})}),t[4]=o):o=t[4],o},Ff=e=>{const t=C.c(8),{running:n,onInterrupt:r}=e,o=ff(n);let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=Bt("global.interrupt"),t[0]=s):s=t[0];const i=!o&&"inactive-button active:shadow-xsSolid";let a;t[1]!==i?(a=An(i),t[1]=i,t[2]=a):a=t[2];const l=o?"yellow":"disabled",c=o?r:Kn.NOOP;let d,u;return t[3]===Symbol.for("react.memo_cache_sentinel")?(d=N.jsx(O,{strokeWidth:1.5,size:16}),t[3]=d):d=t[3],t[4]!==a||t[5]!==l||t[6]!==c?(u=N.jsx(it,{content:s,children:N.jsx(Sl,{className:a,"data-testid":"interrupt-button",size:"medium",color:l,shape:"circle",onClick:c,children:d})}),t[4]=a,t[5]=l,t[6]=c,t[7]=u):u=t[7],u},Bf="absolute top-3 right-5 m-0 flex items-center space-x-3 min-h-[28px] no-print pointer-events-auto z-30 print:hidden",Uf="absolute bottom-5 right-5 flex flex-col gap-2 items-center no-print pointer-events-auto z-30 print:hidden",$f=e=>{const t=C.c(7),{filename:n}=e,r=Gn();let o;t[0]!==n?(o=n?kt.basename(n):"untitled marimo app",t[0]=n,t[1]=o):o=t[1];const s=null===n?"missing-filename":"filename";let i;return t[2]!==n||t[3]!==r||t[4]!==o||t[5]!==s?(i=N.jsx(bf,{placeholderText:o,initialValue:n,onNameChange:r,flexibleWidth:!0,resetOnBlur:!0,"data-testid":"filename-input",className:s}),t[2]=n,t[3]=r,t[4]=o,t[5]=s,t[6]=i):i=t[6],i},Vf=Zn(Qn,400),Hf=(e,t)=>{K.get(de)||e.isEmpty()||t.isEmpty()||zn(e.inOrderIds,t.inOrderIds)||Vf({cell_ids:e.inOrderIds})};function Wf(e){return[er.of([{key:"Escape",preventDefault:!1,run:Wh},{key:e.getHotkey("cell.selectNextOccurrence").key,preventDefault:!0,run:nr},{key:e.getHotkey("cell.findAndReplace").key,preventDefault:!0,run:Hh}]),tr(),sf,nf,af]}var Gf=Object.defineProperty,qf=(e,t,n)=>(((e,t,n)=>{t in e?Gf(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n})(e,"symbol"!=typeof t?t+"":t,n),n);const Yf=xn.define({create:()=>({suggestion:null}),update(e,t){const n=t.effects.find((e=>e.is(Jf)));return t.state.doc&&n&&t.state.doc==n.value.doc?{suggestion:n.value.text}:{suggestion:null}}}),Jf=kn.define();class Xf extends or{constructor(e){super(),qf(this,"suggestion"),this.suggestion=e}toDOM(){const e=document.createElement("span");return e.style.opacity="0.4",e.className="cm-inline-suggestion",e.textContent=this.suggestion,e}get lineBreaks(){return this.suggestion.split("\n").length-1}}const Kf=e=>bn.fromClass(class{async update(t){const n=t.state.doc;if(!t.docChanged)return;const r=await e(t.state);t.view.dispatch({effects:Jf.of({text:r,doc:n})})}}),Zf=bn.fromClass(class{constructor(){qf(this,"decorations"),this.decorations=vn.none}update(e){var t;const n=null==(t=e.state.field(Yf))?void 0:t.suggestion;this.decorations=n?function(e,t){const n=e.state.selection.main.head,r=[],o=vn.widget({widget:new Xf(t),side:1});return r.push(o.range(n)),vn.set(r)}(e.view,n):vn.none}},{decorations:e=>e.decorations}),Qf=rr.highest(er.of([{key:"Tab",run:e=>{var t;const n=null==(t=e.state.field(Yf))?void 0:t.suggestion;return!!n&&(e.dispatch({...ep(e.state,n,e.state.selection.main.head,e.state.selection.main.head)}),!0)}}]));function ep(e,t,n,r){return{...e.changeByRange((o=>{if(o==e.selection.main)return{changes:{from:n,to:r,insert:t},range:gn.cursor(n+t.length)};const s=r-n;return!o.empty||s&&e.sliceDoc(o.from-s,o.from)!=e.sliceDoc(n,r)?{range:o}:{changes:{from:o.from-s,to:o.from,insert:t},range:gn.cursor(o.from-s+t.length)}})),userEvent:"input.complete"}}function tp(e){const{delay:t=500}=e,n=function(e,t,n){let r=()=>{};return(...o)=>(r(),new Promise(((s,i)=>{const a=setTimeout((()=>s(e(...o))),t);r=()=>{clearTimeout(a),void 0!==n&&i(n)}})))}(e.fetchFn,t);return[Yf,Kf(n),Zf,Qf]}const np=kn.define(),rp=kn.define(),op=kn.define();function sp(e,t){if(!e)throw new Error(t)}function ip(e){if("number"!=typeof e)throw new Error("invalid int 32: "+typeof e);if(!Number.isInteger(e)||e>2147483647||e<-2147483648)throw new Error("invalid int 32: "+e)}function ap(e){if("number"!=typeof e)throw new Error("invalid uint 32: "+typeof e);if(!Number.isInteger(e)||e>4294967295||e<0)throw new Error("invalid uint 32: "+e)}function lp(e){if("number"!=typeof e)throw new Error("invalid float 32: "+typeof e);if(Number.isFinite(e)&&(e>34028234663852886e22||e<-34028234663852886e22))throw new Error("invalid float 32: "+e)}const cp=Symbol("@bufbuild/protobuf/enum-type");function dp(e){const t=e[cp];return sp(t,"missing enum type on enum object"),t}function up(e,t,n,r){e[cp]=hp(t,n.map((t=>({no:t.no,name:t.name,localName:e[t.no]}))))}function hp(e,t,n){const r=Object.create(null),o=Object.create(null),s=[];for(const i of t){const e=pp(i);s.push(e),r[i.name]=e,o[i.no]=e}return{typeName:e,values:s,findName:e=>r[e],findNumber:e=>o[e]}}function fp(e,t,n){const r={};for(const o of t){const e=pp(o);r[e.localName]=e.no,r[e.no]=e.localName}return up(r,e,t),r}function pp(e){return"localName"in e?e:Object.assign(Object.assign({},e),{localName:e.name})}class mp{equals(e){return this.getType().runtime.util.equals(this.getType(),this,e)}clone(){return this.getType().runtime.util.clone(this)}fromBinary(e,t){const n=this.getType().runtime.bin,r=n.makeReadOptions(t);return n.readMessage(this,r.readerFactory(e),e.byteLength,r),this}fromJson(e,t){const n=this.getType(),r=n.runtime.json,o=r.makeReadOptions(t);return r.readMessage(n,e,o,this),this}fromJsonString(e,t){let n;try{n=JSON.parse(e)}catch(r){throw new Error(`cannot decode ${this.getType().typeName} from JSON: ${r instanceof Error?r.message:String(r)}`)}return this.fromJson(n,t)}toBinary(e){const t=this.getType().runtime.bin,n=t.makeWriteOptions(e),r=n.writerFactory();return t.writeMessage(this,r,n),r.finish()}toJson(e){const t=this.getType().runtime.json,n=t.makeWriteOptions(e);return t.writeMessage(this,n)}toJsonString(e){var t;const n=this.toJson(e);return JSON.stringify(n,null,null!==(t=null==e?void 0:e.prettySpaces)&&void 0!==t?t:0)}toJSON(){return this.toJson({emitDefaultValues:!0})}getType(){return Object.getPrototypeOf(this).constructor}}function gp(){let e=0,t=0;for(let r=0;r<28;r+=7){let n=this.buf[this.pos++];if(e|=(127&n)<>4,!(128&n))return this.assertBounds(),[e,t];for(let r=3;r<=31;r+=7){let n=this.buf[this.pos++];if(t|=(127&n)<>>s,o=!(r>>>7==0&&0==t),i=255&(o?128|r:r);if(n.push(i),!o)return}const r=e>>>28&15|(7&t)<<4,o=!!(t>>3);if(n.push(255&(o?128|r:r)),o){for(let e=3;e<31;e+=7){const r=t>>>e,o=!(r>>>7==0),s=255&(o?128|r:r);if(n.push(s),!o)return}n.push(t>>>31&1)}}const bp=4294967296;function xp(e){const t="-"===e[0];t&&(e=e.slice(1));const n=1e6;let r=0,o=0;function s(t,s){const i=Number(e.slice(t,s));o*=n,r=r*n+i,r>=bp&&(o+=r/bp|0,r%=bp)}return s(-24,-18),s(-18,-12),s(-12,-6),s(-6),t?kp(r,o):wp(r,o)}function vp(e,t){if(({lo:e,hi:t}=function(e,t){return{lo:e>>>0,hi:t>>>0}}(e,t)),t<=2097151)return String(bp*t+e);const n=16777215&(e>>>24|t<<8),r=t>>16&65535;let o=(16777215&e)+6777216*n+6710656*r,s=n+8147497*r,i=2*r;const a=1e7;return o>=a&&(s+=Math.floor(o/a),o%=a),s>=a&&(i+=Math.floor(s/a),s%=a),i.toString()+Sp(s)+Sp(o)}function wp(e,t){return{lo:0|e,hi:0|t}}function kp(e,t){return t=~t,e?e=1+~e:t+=1,wp(e,t)}const Sp=e=>{const t=String(e);return"0000000".slice(t.length)+t};function Cp(e,t){if(e>=0){for(;e>127;)t.push(127&e|128),e>>>=7;t.push(e)}else{for(let n=0;n<9;n++)t.push(127&e|128),e>>=7;t.push(1)}}function Ep(){let e=this.buf[this.pos++],t=127&e;if(!(128&e))return this.assertBounds(),t;if(e=this.buf[this.pos++],t|=(127&e)<<7,!(128&e))return this.assertBounds(),t;if(e=this.buf[this.pos++],t|=(127&e)<<14,!(128&e))return this.assertBounds(),t;if(e=this.buf[this.pos++],t|=(127&e)<<21,!(128&e))return this.assertBounds(),t;e=this.buf[this.pos++],t|=(15&e)<<28;for(let n=5;128&e&&n<10;n++)e=this.buf[this.pos++];if(128&e)throw new Error("invalid varint");return this.assertBounds(),t>>>0}var Np={};const jp=function(){const e=new DataView(new ArrayBuffer(8));if("function"==typeof BigInt&&"function"==typeof e.getBigInt64&&"function"==typeof e.getBigUint64&&"function"==typeof e.setBigInt64&&"function"==typeof e.setBigUint64&&("object"!=typeof process||"1"!==Np.BUF_BIGINT_DISABLE)){const t=BigInt("-9223372036854775808"),n=BigInt("9223372036854775807"),r=BigInt("0"),o=BigInt("18446744073709551615");return{zero:BigInt(0),supported:!0,parse(e){const r="bigint"==typeof e?e:BigInt(e);if(r>n||ro||t(e.setInt32(0,t,!0),e.setInt32(4,n,!0),e.getBigInt64(0,!0)),uDec:(t,n)=>(e.setInt32(0,t,!0),e.setInt32(4,n,!0),e.getBigUint64(0,!0))}}const t=e=>sp(/^-?[0-9]+$/.test(e),`int64 invalid: ${e}`),n=e=>sp(/^[0-9]+$/.test(e),`uint64 invalid: ${e}`);return{zero:"0",supported:!1,parse:e=>("string"!=typeof e&&(e=e.toString()),t(e),e),uParse:e=>("string"!=typeof e&&(e=e.toString()),n(e),e),enc:e=>("string"!=typeof e&&(e=e.toString()),t(e),xp(e)),uEnc:e=>("string"!=typeof e&&(e=e.toString()),n(e),xp(e)),dec:(e,t)=>function(e,t){let n=wp(e,t);const r=2147483648&n.hi;r&&(n=kp(n.lo,n.hi));const o=vp(n.lo,n.hi);return r?"-"+o:o}(e,t),uDec:(e,t)=>vp(e,t)}}();var _p,Ip,Ap,Tp,Mp,Op;function Dp(e,t,n){if(t===n)return!0;if(e==_p.BYTES){if(!(t instanceof Uint8Array&&n instanceof Uint8Array))return!1;if(t.length!==n.length)return!1;for(let e=0;e>>0)}raw(e){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(e),this}uint32(e){for(ap(e);e>127;)this.buf.push(127&e|128),e>>>=7;return this.buf.push(e),this}int32(e){return ip(e),Cp(e,this.buf),this}bool(e){return this.buf.push(e?1:0),this}bytes(e){return this.uint32(e.byteLength),this.raw(e)}string(e){let t=this.textEncoder.encode(e);return this.uint32(t.byteLength),this.raw(t)}float(e){lp(e);let t=new Uint8Array(4);return new DataView(t.buffer).setFloat32(0,e,!0),this.raw(t)}double(e){let t=new Uint8Array(8);return new DataView(t.buffer).setFloat64(0,e,!0),this.raw(t)}fixed32(e){ap(e);let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e,!0),this.raw(t)}sfixed32(e){ip(e);let t=new Uint8Array(4);return new DataView(t.buffer).setInt32(0,e,!0),this.raw(t)}sint32(e){return ip(e),Cp(e=(e<<1^e>>31)>>>0,this.buf),this}sfixed64(e){let t=new Uint8Array(8),n=new DataView(t.buffer),r=jp.enc(e);return n.setInt32(0,r.lo,!0),n.setInt32(4,r.hi,!0),this.raw(t)}fixed64(e){let t=new Uint8Array(8),n=new DataView(t.buffer),r=jp.uEnc(e);return n.setInt32(0,r.lo,!0),n.setInt32(4,r.hi,!0),this.raw(t)}int64(e){let t=jp.enc(e);return yp(t.lo,t.hi,this.buf),this}sint64(e){let t=jp.enc(e),n=t.hi>>31;return yp(t.lo<<1^n,(t.hi<<1|t.lo>>>31)^n,this.buf),this}uint64(e){let t=jp.uEnc(e);return yp(t.lo,t.hi,this.buf),this}}class zp{constructor(e,t){this.varint64=gp,this.uint32=Ep,this.buf=e,this.len=e.length,this.pos=0,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.textDecoder=null!=t?t:new TextDecoder}tag(){let e=this.uint32(),t=e>>>3,n=7&e;if(t<=0||n<0||n>5)throw new Error("illegal tag: field no "+t+" wire type "+n);return[t,n]}skip(e,t){let n=this.pos;switch(e){case Mp.Varint:for(;128&this.buf[this.pos++];);break;case Mp.Bit64:this.pos+=4;case Mp.Bit32:this.pos+=4;break;case Mp.LengthDelimited:let n=this.uint32();this.pos+=n;break;case Mp.StartGroup:for(;;){const[e,n]=this.tag();if(n===Mp.EndGroup){if(void 0!==t&&e!==t)throw new Error("invalid end group tag");break}this.skip(n,e)}break;default:throw new Error("cant skip wire type "+e)}return this.assertBounds(),this.buf.subarray(n,this.pos)}assertBounds(){if(this.pos>this.len)throw new RangeError("premature EOF")}int32(){return 0|this.uint32()}sint32(){let e=this.uint32();return e>>>1^-(1&e)}int64(){return jp.dec(...this.varint64())}uint64(){return jp.uDec(...this.varint64())}sint64(){let[e,t]=this.varint64(),n=-(1&e);return e=(e>>>1|(1&t)<<31)^n,t=t>>>1^n,jp.dec(e,t)}bool(){let[e,t]=this.varint64();return 0!==e||0!==t}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return jp.uDec(this.sfixed32(),this.sfixed32())}sfixed64(){return jp.dec(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let e=this.uint32(),t=this.pos;return this.pos+=e,this.assertBounds(),this.buf.subarray(t,t+e)}string(){return this.textDecoder.decode(this.bytes())}}function Fp(e){const t=e.field.localName,n=Object.create(null);return n[t]=function(e){const t=e.field;if(t.repeated)return[];if(void 0!==t.default)return t.default;switch(t.kind){case"enum":return t.T.values[0].no;case"scalar":return Rp(t.T,t.L);case"message":const e=t.T,n=new e;return e.fieldWrapper?e.fieldWrapper.unwrapField(n):n;case"map":throw"map fields are not allowed to be extensions"}}(e),[n,()=>n[t]]}let Bp="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),Up=[];for(let zY=0;zY>4,i=n,s=2;break;case 2:r[o++]=(15&i)<<4|(60&n)>>2,i=n,s=3;break;case 3:r[o++]=(3&i)<<6|n,s=0}}if(1==s)throw Error("invalid base64 string.");return r.subarray(0,o)},enc(e){let t,n="",r=0,o=0;for(let s=0;s>2],o=(3&t)<<4,r=1;break;case 1:n+=Bp[o|t>>4],o=(15&t)<<2,r=2;break;case 2:n+=Bp[o|t>>6],n+=Bp[63&t],r=0}return r&&(n+=Bp[o],n+="=",1==r&&(n+="=")),n}};function Vp(e,t,n){Gp(t,e);const r=t.runtime.bin.makeReadOptions(n),o=function(e,t){if(!t.repeated&&("enum"==t.kind||"scalar"==t.kind)){for(let n=e.length-1;n>=0;--n)if(e[n].no==t.no)return[e[n]];return[]}return e.filter((e=>e.no===t.no))}(e.getType().runtime.bin.listUnknownFields(e),t.field),[s,i]=Fp(t);for(const a of o)t.runtime.bin.readField(s,r.readerFactory(a.data),t.field,a.wireType,r);return i()}function Hp(e,t,n,r){Gp(t,e);const o=t.runtime.bin.makeReadOptions(r),s=t.runtime.bin.makeWriteOptions(r);if(Wp(e,t)){const n=e.getType().runtime.bin.listUnknownFields(e).filter((e=>e.no!=t.field.no));e.getType().runtime.bin.discardUnknownFields(e);for(const t of n)e.getType().runtime.bin.onUnknownField(e,t.no,t.wireType,t.data)}const i=s.writerFactory();let a=t.field;a.opt||a.repeated||"enum"!=a.kind&&"scalar"!=a.kind||(a=Object.assign(Object.assign({},t.field),{opt:!0})),t.runtime.bin.writeField(a,n,i,s);const l=o.readerFactory(i.finish());for(;l.pose.no==t.field.no))}function Gp(e,t){sp(e.extendee.typeName==t.getType().typeName,`extension ${e.typeName} can only be applied to message ${e.extendee.typeName}`)}function qp(e,t){const n=e.localName;if(e.repeated)return t[n].length>0;if(e.oneof)return t[e.oneof.localName].case===n;switch(e.kind){case"enum":case"scalar":return e.opt||e.req?void 0!==t[n]:"enum"==e.kind?t[n]!==e.T.values[0].no:!Pp(e.T,t[n]);case"message":return void 0!==t[n];case"map":return Object.keys(t[n]).length>0}}function Yp(e,t){const n=e.localName,r=!e.opt&&!e.req;if(e.repeated)t[n]=[];else if(e.oneof)t[e.oneof.localName]={case:void 0};else switch(e.kind){case"map":t[n]={};break;case"enum":t[n]=r?e.T.values[0].no:void 0;break;case"scalar":t[n]=r?Rp(e.T,e.L):void 0;break;case"message":t[n]=void 0}}function Jp(e,t){if(null===e||"object"!=typeof e)return!1;if(!Object.getOwnPropertyNames(mp.prototype).every((t=>t in e&&"function"==typeof e[t])))return!1;const n=e.getType();return null!==n&&"function"==typeof n&&"typeName"in n&&"string"==typeof n.typeName&&(void 0===t||n.typeName==t.typeName)}function Xp(e,t){return Jp(t)||!e.fieldWrapper?t:e.fieldWrapper.wrapField(t)}_p.DOUBLE,_p.FLOAT,_p.INT64,_p.UINT64,_p.INT32,_p.UINT32,_p.BOOL,_p.STRING,_p.BYTES;const Kp={ignoreUnknownFields:!1},Zp={emitDefaultValues:!1,enumAsInteger:!1,useProtoFieldName:!1,prettySpaces:0};function Qp(e){return e?Object.assign(Object.assign({},Kp),e):Kp}function em(e){return e?Object.assign(Object.assign({},Zp),e):Zp}const tm=Symbol(),nm=Symbol();function rm(e){if(null===e)return"null";switch(typeof e){case"object":return Array.isArray(e)?"array":"object";case"string":return e.length>100?"string":`"${e.split('"').join('\\"')}"`;default:return String(e)}}function om(e,t,n,r,o){let s=n.localName;if(n.repeated){if(sp("map"!=n.kind),null===t)return;if(!Array.isArray(t))throw new Error(`cannot decode field ${o.typeName}.${n.name} from JSON: ${rm(t)}`);const a=e[s];for(const e of t){if(null===e)throw new Error(`cannot decode field ${o.typeName}.${n.name} from JSON: ${rm(e)}`);switch(n.kind){case"message":a.push(n.T.fromJson(e,r));break;case"enum":const t=am(n.T,e,r.ignoreUnknownFields,!0);t!==nm&&a.push(t);break;case"scalar":try{a.push(im(n.T,e,n.L,!0))}catch(i){let t=`cannot decode field ${o.typeName}.${n.name} from JSON: ${rm(e)}`;throw i instanceof Error&&i.message.length>0&&(t+=`: ${i.message}`),new Error(t)}}}}else if("map"==n.kind){if(null===t)return;if("object"!=typeof t||Array.isArray(t))throw new Error(`cannot decode field ${o.typeName}.${n.name} from JSON: ${rm(t)}`);const a=e[s];for(const[e,s]of Object.entries(t)){if(null===s)throw new Error(`cannot decode field ${o.typeName}.${n.name} from JSON: map value null`);let l;try{l=sm(n.K,e)}catch(i){let e=`cannot decode map key for field ${o.typeName}.${n.name} from JSON: ${rm(t)}`;throw i instanceof Error&&i.message.length>0&&(e+=`: ${i.message}`),new Error(e)}switch(n.V.kind){case"message":a[l]=n.V.T.fromJson(s,r);break;case"enum":const e=am(n.V.T,s,r.ignoreUnknownFields,!0);e!==nm&&(a[l]=e);break;case"scalar":try{a[l]=im(n.V.T,s,Ap.BIGINT,!0)}catch(i){let e=`cannot decode map value for field ${o.typeName}.${n.name} from JSON: ${rm(t)}`;throw i instanceof Error&&i.message.length>0&&(e+=`: ${i.message}`),new Error(e)}}}}else switch(n.oneof&&(e=e[n.oneof.localName]={case:s},s="value"),n.kind){case"message":const a=n.T;if(null===t&&"google.protobuf.Value"!=a.typeName)return;let l=e[s];Jp(l)?l.fromJson(t,r):(e[s]=l=a.fromJson(t,r),a.fieldWrapper&&!n.oneof&&(e[s]=a.fieldWrapper.unwrapField(l)));break;case"enum":const c=am(n.T,t,r.ignoreUnknownFields,!1);switch(c){case tm:Yp(n,e);break;case nm:break;default:e[s]=c}break;case"scalar":try{const r=im(n.T,t,n.L,!1);if(r===tm)Yp(n,e);else e[s]=r}catch(i){let e=`cannot decode field ${o.typeName}.${n.name} from JSON: ${rm(t)}`;throw i instanceof Error&&i.message.length>0&&(e+=`: ${i.message}`),new Error(e)}}}function sm(e,t){if(e===_p.BOOL)switch(t){case"true":t=!0;break;case"false":t=!1}return im(e,t,Ap.BIGINT,!0).toString()}function im(e,t,n,r){if(null===t)return r?Rp(e,n):tm;switch(e){case _p.DOUBLE:case _p.FLOAT:if("NaN"===t)return Number.NaN;if("Infinity"===t)return Number.POSITIVE_INFINITY;if("-Infinity"===t)return Number.NEGATIVE_INFINITY;if(""===t)break;if("string"==typeof t&&t.trim().length!==t.length)break;if("string"!=typeof t&&"number"!=typeof t)break;const r=Number(t);if(Number.isNaN(r))break;if(!Number.isFinite(r))break;return e==_p.FLOAT&&lp(r),r;case _p.INT32:case _p.FIXED32:case _p.SFIXED32:case _p.SINT32:case _p.UINT32:let s;if("number"==typeof t?s=t:"string"==typeof t&&t.length>0&&t.trim().length===t.length&&(s=Number(t)),void 0===s)break;return e==_p.UINT32||e==_p.FIXED32?ap(s):ip(s),s;case _p.INT64:case _p.SFIXED64:case _p.SINT64:if("number"!=typeof t&&"string"!=typeof t)break;const i=jp.parse(t);return n?i.toString():i;case _p.FIXED64:case _p.UINT64:if("number"!=typeof t&&"string"!=typeof t)break;const a=jp.uParse(t);return n?a.toString():a;case _p.BOOL:if("boolean"!=typeof t)break;return t;case _p.STRING:if("string"!=typeof t)break;try{encodeURIComponent(t)}catch(o){throw new Error("invalid UTF8")}return t;case _p.BYTES:if(""===t)return new Uint8Array(0);if("string"!=typeof t)break;return $p.dec(t)}throw new Error}function am(e,t,n,r){if(null===t)return"google.protobuf.NullValue"==e.typeName?0:r?e.values[0].no:tm;switch(typeof t){case"number":if(Number.isInteger(t))return t;break;case"string":const r=e.findName(t);if(void 0!==r)return r.no;if(n)return nm}throw new Error(`cannot decode enum ${e.typeName} from JSON: ${rm(t)}`)}function lm(e){return!(!e.repeated&&"map"!=e.kind)||!e.oneof&&("message"!=e.kind&&(!e.opt&&!e.req))}function cm(e,t,n){if("map"==e.kind){sp("object"==typeof t&&null!=t);const r={},o=Object.entries(t);switch(e.V.kind){case"scalar":for(const[n,s]of o)r[n.toString()]=um(e.V.T,s);break;case"message":for(const[e,s]of o)r[e.toString()]=s.toJson(n);break;case"enum":const t=e.V.T;for(const[e,s]of o)r[e.toString()]=dm(t,s,n.enumAsInteger)}return n.emitDefaultValues||o.length>0?r:void 0}if(e.repeated){sp(Array.isArray(t));const r=[];switch(e.kind){case"scalar":for(let n=0;n0?r:void 0}switch(e.kind){case"scalar":return um(e.T,t);case"enum":return dm(e.T,t,n.enumAsInteger);case"message":return Xp(e.T,t).toJson(n)}}function dm(e,t,n){var r;if(sp("number"==typeof t),"google.protobuf.NullValue"==e.typeName)return null;if(n)return t;const o=e.findNumber(t);return null!==(r=null==o?void 0:o.name)&&void 0!==r?r:t}function um(e,t){switch(e){case _p.INT32:case _p.SFIXED32:case _p.SINT32:case _p.FIXED32:case _p.UINT32:return sp("number"==typeof t),t;case _p.FLOAT:case _p.DOUBLE:return sp("number"==typeof t),Number.isNaN(t)?"NaN":t===Number.POSITIVE_INFINITY?"Infinity":t===Number.NEGATIVE_INFINITY?"-Infinity":t;case _p.STRING:return sp("string"==typeof t),t;case _p.BOOL:return sp("boolean"==typeof t),t;case _p.UINT64:case _p.FIXED64:case _p.INT64:case _p.SFIXED64:case _p.SINT64:return sp("bigint"==typeof t||"string"==typeof t||"number"==typeof t),t.toString();case _p.BYTES:return sp(t instanceof Uint8Array),$p.enc(t)}}const hm=Symbol("@bufbuild/protobuf/unknown-fields"),fm={readUnknownFields:!0,readerFactory:e=>new zp(e)},pm={writeUnknownFields:!0,writerFactory:()=>new Lp};function mm(e){return e?Object.assign(Object.assign({},fm),e):fm}function gm(e){return e?Object.assign(Object.assign({},pm),e):pm}function ym(e,t,n,r,o){let{repeated:s,localName:i}=n;switch(n.oneof&&((e=e[n.oneof.localName]).case!=i&&delete e.value,e.case=i,i="value"),n.kind){case"scalar":case"enum":const a="enum"==n.kind?_p.INT32:n.T;let l=vm;if("scalar"==n.kind&&n.L>0&&(l=xm),s){let n=e[i];if(r==Mp.LengthDelimited&&a!=_p.STRING&&a!=_p.BYTES){let e=t.uint32()+t.pos;for(;t.pose.no-t.no))),this.numbersAsc}byMember(){if(!this.members){this.members=[];const e=this.members;let t;for(const n of this.list())n.oneof?n.oneof!==t&&(t=n.oneof,e.push(t)):e.push(n)}return this.members}}function Im(e,t){const n=Tm(e);return t?n:Pm(Rm(n))}const Am=Tm;function Tm(e){let t=!1;const n=[];for(let r=0;r`${e}$`,Rm=e=>Om.has(e)?Dm(e):e,Pm=e=>Mm.has(e)?Dm(e):e;class Lm{constructor(e){this.kind="oneof",this.repeated=!1,this.packed=!1,this.opt=!1,this.req=!1,this.default=void 0,this.fields=[],this.name=e,this.localName=Im(e,!1)}addField(e){sp(e.oneof===this,`field ${e.name} not one of ${this.name}`),this.fields.push(e)}findField(e){if(!this._lookup){this._lookup=Object.create(null);for(let e=0;enew _m(e,(e=>function(e){var t,n,r,o,s,i;const a=[];let l;for(const c of"function"==typeof e?e():e){const e=c;if(e.localName=Im(c.name,void 0!==c.oneof),e.jsonName=null!==(t=c.jsonName)&&void 0!==t?t:Am(c.name),e.repeated=null!==(n=c.repeated)&&void 0!==n&&n,"scalar"==c.kind&&(e.L=null!==(r=c.L)&&void 0!==r?r:Ap.BIGINT),e.delimited=null!==(o=c.delimited)&&void 0!==o&&o,e.req=null!==(s=c.req)&&void 0!==s&&s,e.opt=null!==(i=c.opt)&&void 0!==i&&i,void 0===c.packed&&(e.packed="enum"==c.kind||"scalar"==c.kind&&c.T!=_p.BYTES&&c.T!=_p.STRING),void 0!==c.oneof){const t="string"==typeof c.oneof?c.oneof:c.oneof.name;l&&l.name==t||(l=new Lm(t)),e.oneof=l,l.addField(e)}a.push(e)}return a}(e))),Bm=e=>{for(const t of e.getType().fields.byMember()){if(t.opt)continue;const n=t.localName,r=e;if(t.repeated)r[n]=[];else switch(t.kind){case"oneof":r[n]={case:void 0};break;case"enum":r[n]=0;break;case"map":r[n]={};break;case"scalar":r[n]=Rp(t.T,t.L)}}},{syntax:"proto3",json:{makeReadOptions:Qp,makeWriteOptions:em,readMessage(e,t,n,r){if(null==t||Array.isArray(t)||"object"!=typeof t)throw new Error(`cannot decode message ${e.typeName} from JSON: ${rm(t)}`);r=null!=r?r:new e;const o=new Map,s=n.typeRegistry;for(const[i,a]of Object.entries(t)){const t=e.fields.findJsonName(i);if(t){if(t.oneof){if(null===a&&"scalar"==t.kind)continue;const n=o.get(t.oneof);if(void 0!==n)throw new Error(`cannot decode message ${e.typeName} from JSON: multiple keys for oneof "${t.oneof.name}" present: "${n}", "${i}"`);o.set(t.oneof,i)}om(r,a,t,n,e)}else{let t=!1;if((null==s?void 0:s.findExtension)&&i.startsWith("[")&&i.endsWith("]")){const o=s.findExtension(i.substring(1,i.length-1));if(o&&o.extendee.typeName==e.typeName){t=!0;const[e,s]=Fp(o);om(e,a,o.field,n,o),Hp(r,o,s(),n)}}if(!t&&!n.ignoreUnknownFields)throw new Error(`cannot decode message ${e.typeName} from JSON: key "${i}" is unknown`)}}return r},writeMessage(e,t){const n=e.getType(),r={};let o;try{for(o of n.fields.byNumber()){if(!qp(o,e)){if(o.req)throw"required field not set";if(!t.emitDefaultValues)continue;if(!lm(o))continue}const n=cm(o,o.oneof?e[o.oneof.localName].value:e[o.localName],t);void 0!==n&&(r[t.useProtoFieldName?o.name:o.jsonName]=n)}const s=t.typeRegistry;if(null==s?void 0:s.findExtensionFor)for(const o of n.runtime.bin.listUnknownFields(e)){const i=s.findExtensionFor(n.typeName,o.no);if(i&&Wp(e,i)){const n=Vp(e,i,t),o=cm(i.field,n,t);void 0!==o&&(r[i.field.jsonName]=o)}}}catch(s){const e=o?`cannot encode field ${n.typeName}.${o.name} to JSON`:`cannot encode message ${n.typeName} to JSON`,t=s instanceof Error?s.message:String(s);throw new Error(e+(t.length>0?`: ${t}`:""))}return r},readScalar:(e,t,n)=>im(e,t,null!=n?n:Ap.BIGINT,!0),writeScalar(e,t,n){if(void 0!==t)return n||Pp(e,t)?um(e,t):void 0},debug:rm},bin:{makeReadOptions:mm,makeWriteOptions:gm,listUnknownFields(e){var t;return null!==(t=e[hm])&&void 0!==t?t:[]},discardUnknownFields(e){delete e[hm]},writeUnknownFields(e,t){const n=e[hm];if(n)for(const r of n)t.tag(r.no,r.wireType).raw(r.data)},onUnknownField(e,t,n,r){const o=e;Array.isArray(o[hm])||(o[hm]=[]),o[hm].push({no:t,wireType:n,data:r})},readMessage(e,t,n,r,o){const s=e.getType(),i=o?t.len:t.pos+n;let a,l;for(;t.posJp(e,l)?e:new l(e)));else{const e=s[n];l.fieldWrapper?"google.protobuf.BytesValue"===l.typeName?o[n]=jm(e):o[n]=e:o[n]=Jp(e,l)?e:new l(e)}}}},equals:(e,t,n)=>t===n||!(!t||!n)&&e.fields.byMember().every((e=>{const r=t[e.localName],o=n[e.localName];if(e.repeated){if(r.length!==o.length)return!1;switch(e.kind){case"message":return r.every(((t,n)=>e.T.equals(t,o[n])));case"scalar":return r.every(((t,n)=>Dp(e.T,t,o[n])));case"enum":return r.every(((e,t)=>Dp(_p.INT32,e,o[t])))}throw new Error(`repeated cannot contain ${e.kind}`)}switch(e.kind){case"message":return e.T.equals(r,o);case"enum":return Dp(_p.INT32,r,o);case"scalar":return Dp(e.T,r,o);case"oneof":if(r.case!==o.case)return!1;const t=e.findField(r.case);if(void 0===t)return!0;switch(t.kind){case"message":return t.T.equals(r.value,o.value);case"enum":return Dp(_p.INT32,r.value,o.value);case"scalar":return Dp(t.T,r.value,o.value)}throw new Error(`oneof cannot contain ${t.kind}`);case"map":const n=Object.keys(r).concat(Object.keys(o));switch(e.V.kind){case"message":const t=e.V.T;return n.every((e=>t.equals(r[e],o[e])));case"enum":return n.every((e=>Dp(_p.INT32,r[e],o[e])));case"scalar":const s=e.V.T;return n.every((e=>Dp(s,r[e],o[e])))}}})),clone(e){const t=e.getType(),n=new t,r=n;for(const o of t.fields.byMember()){const t=e[o.localName];let n;if(o.repeated)n=t.map(Nm);else if("map"==o.kind){n=r[o.localName];for(const[e,r]of Object.entries(t))n[e]=Nm(r)}else n="oneof"==o.kind?o.findField(t.case)?{case:t.case,value:Nm(t.value)}:{case:void 0}:Nm(t);r[o.localName]=n}for(const o of t.runtime.bin.listUnknownFields(e))t.runtime.bin.onUnknownField(r,o.no,o.wireType,o.data);return n}}),{newFieldList:Fm,initFields:Bm}),makeMessageType(e,t,n){return function(e,t,n,r){var o;const s=null!==(o=null==r?void 0:r.localName)&&void 0!==o?o:t.substring(t.lastIndexOf(".")+1),i={[s]:function(t){e.util.initFields(this),e.util.initPartial(t,this)}}[s];return Object.setPrototypeOf(i.prototype,new mp),Object.assign(i,{runtime:e,typeName:t,fields:e.util.newFieldList(n),fromBinary:(e,t)=>(new i).fromBinary(e,t),fromJson:(e,t)=>(new i).fromJson(e,t),fromJsonString:(e,t)=>(new i).fromJsonString(e,t),equals:(t,n)=>e.util.equals(i,t,n)}),i}(this,e,t,n)},makeEnum:fp,makeEnumType:hp,getEnumType:dp,makeExtension(e,t,n){return function(e,t,n,r){let o;return{typeName:t,extendee:n,get field(){if(!o){const n="function"==typeof r?r():r;n.name=t.split(".").pop(),n.jsonName=`[${t}]`,o=e.util.newFieldList([n]).list()[0]}return o},runtime:e}}(this,e,t,n)}});var Fm,Bm,Um,$m,Vm,Hm,Wm,Gm,qm,Ym,Jm,Xm,Km,Zm,Qm,eg;($m=Um||(Um={}))[$m.Unary=0]="Unary",$m[$m.ServerStreaming=1]="ServerStreaming",$m[$m.ClientStreaming=2]="ClientStreaming",$m[$m.BiDiStreaming=3]="BiDiStreaming",(Hm=Vm||(Vm={}))[Hm.NoSideEffects=1]="NoSideEffects",Hm[Hm.Idempotent=2]="Idempotent",(Gm=Wm||(Wm={}))[Gm.UNSPECIFIED=0]="UNSPECIFIED",Gm[Gm.JUPYTER_FORMAT=77]="JUPYTER_FORMAT",zm.util.setEnumType(Wm,"exa.codeium_common_pb.ExperimentKey",[{no:0,name:"UNSPECIFIED"},{no:77,name:"JUPYTER_FORMAT"}]),(Ym=qm||(qm={}))[Ym.CODEIUM=0]="CODEIUM",zm.util.setEnumType(qm,"exa.codeium_common_pb.AuthSource",[{no:0,name:"AUTH_SOURCE_CODEIUM"}]),(Xm=Jm||(Jm={}))[Xm.UNSPECIFIED=0]="UNSPECIFIED",Xm[Xm.ENABLE_CODEIUM=1]="ENABLE_CODEIUM",Xm[Xm.DISABLE_CODEIUM=2]="DISABLE_CODEIUM",Xm[Xm.SHOW_PREVIOUS_COMPLETION=3]="SHOW_PREVIOUS_COMPLETION",Xm[Xm.SHOW_NEXT_COMPLETION=4]="SHOW_NEXT_COMPLETION",zm.util.setEnumType(Jm,"exa.codeium_common_pb.EventType",[{no:0,name:"EVENT_TYPE_UNSPECIFIED"},{no:1,name:"EVENT_TYPE_ENABLE_CODEIUM"},{no:2,name:"EVENT_TYPE_DISABLE_CODEIUM"},{no:3,name:"EVENT_TYPE_SHOW_PREVIOUS_COMPLETION"},{no:4,name:"EVENT_TYPE_SHOW_NEXT_COMPLETION"}]),(Zm=Km||(Km={}))[Zm.UNSPECIFIED=0]="UNSPECIFIED",Zm[Zm.TYPING_AS_SUGGESTED=1]="TYPING_AS_SUGGESTED",Zm[Zm.CACHE=2]="CACHE",Zm[Zm.NETWORK=3]="NETWORK",zm.util.setEnumType(Km,"exa.codeium_common_pb.CompletionSource",[{no:0,name:"COMPLETION_SOURCE_UNSPECIFIED"},{no:1,name:"COMPLETION_SOURCE_TYPING_AS_SUGGESTED"},{no:2,name:"COMPLETION_SOURCE_CACHE"},{no:3,name:"COMPLETION_SOURCE_NETWORK"}]),(eg=Qm||(Qm={}))[eg.UNSPECIFIED=0]="UNSPECIFIED",eg[eg.C=1]="C",eg[eg.CLOJURE=2]="CLOJURE",eg[eg.COFFEESCRIPT=3]="COFFEESCRIPT",eg[eg.CPP=4]="CPP",eg[eg.CSHARP=5]="CSHARP",eg[eg.CSS=6]="CSS",eg[eg.CUDACPP=7]="CUDACPP",eg[eg.DOCKERFILE=8]="DOCKERFILE",eg[eg.GO=9]="GO",eg[eg.GROOVY=10]="GROOVY",eg[eg.HANDLEBARS=11]="HANDLEBARS",eg[eg.HASKELL=12]="HASKELL",eg[eg.HCL=13]="HCL",eg[eg.HTML=14]="HTML",eg[eg.INI=15]="INI",eg[eg.JAVA=16]="JAVA",eg[eg.JAVASCRIPT=17]="JAVASCRIPT",eg[eg.JSON=18]="JSON",eg[eg.JULIA=19]="JULIA",eg[eg.KOTLIN=20]="KOTLIN",eg[eg.LATEX=21]="LATEX",eg[eg.LESS=22]="LESS",eg[eg.LUA=23]="LUA",eg[eg.MAKEFILE=24]="MAKEFILE",eg[eg.MARKDOWN=25]="MARKDOWN",eg[eg.OBJECTIVEC=26]="OBJECTIVEC",eg[eg.OBJECTIVECPP=27]="OBJECTIVECPP",eg[eg.PERL=28]="PERL",eg[eg.PHP=29]="PHP",eg[eg.PLAINTEXT=30]="PLAINTEXT",eg[eg.PROTOBUF=31]="PROTOBUF",eg[eg.PBTXT=32]="PBTXT",eg[eg.PYTHON=33]="PYTHON",eg[eg.R=34]="R",eg[eg.RUBY=35]="RUBY",eg[eg.RUST=36]="RUST",eg[eg.SASS=37]="SASS",eg[eg.SCALA=38]="SCALA",eg[eg.SCSS=39]="SCSS",eg[eg.SHELL=40]="SHELL",eg[eg.SQL=41]="SQL",eg[eg.STARLARK=42]="STARLARK",eg[eg.SWIFT=43]="SWIFT",eg[eg.TSX=44]="TSX",eg[eg.TYPESCRIPT=45]="TYPESCRIPT",eg[eg.VISUALBASIC=46]="VISUALBASIC",eg[eg.VUE=47]="VUE",eg[eg.XML=48]="XML",eg[eg.XSL=49]="XSL",eg[eg.YAML=50]="YAML",eg[eg.SVELTE=51]="SVELTE",eg[eg.TOML=52]="TOML",eg[eg.DART=53]="DART",eg[eg.RST=54]="RST",eg[eg.OCAML=55]="OCAML",eg[eg.CMAKE=56]="CMAKE",eg[eg.PASCAL=57]="PASCAL",eg[eg.ELIXIR=58]="ELIXIR",eg[eg.FSHARP=59]="FSHARP",eg[eg.LISP=60]="LISP",eg[eg.MATLAB=61]="MATLAB",eg[eg.POWERSHELL=62]="POWERSHELL",eg[eg.SOLIDITY=63]="SOLIDITY",eg[eg.ADA=64]="ADA",eg[eg.OCAML_INTERFACE=65]="OCAML_INTERFACE",zm.util.setEnumType(Qm,"exa.codeium_common_pb.Language",[{no:0,name:"LANGUAGE_UNSPECIFIED"},{no:1,name:"LANGUAGE_C"},{no:2,name:"LANGUAGE_CLOJURE"},{no:3,name:"LANGUAGE_COFFEESCRIPT"},{no:4,name:"LANGUAGE_CPP"},{no:5,name:"LANGUAGE_CSHARP"},{no:6,name:"LANGUAGE_CSS"},{no:7,name:"LANGUAGE_CUDACPP"},{no:8,name:"LANGUAGE_DOCKERFILE"},{no:9,name:"LANGUAGE_GO"},{no:10,name:"LANGUAGE_GROOVY"},{no:11,name:"LANGUAGE_HANDLEBARS"},{no:12,name:"LANGUAGE_HASKELL"},{no:13,name:"LANGUAGE_HCL"},{no:14,name:"LANGUAGE_HTML"},{no:15,name:"LANGUAGE_INI"},{no:16,name:"LANGUAGE_JAVA"},{no:17,name:"LANGUAGE_JAVASCRIPT"},{no:18,name:"LANGUAGE_JSON"},{no:19,name:"LANGUAGE_JULIA"},{no:20,name:"LANGUAGE_KOTLIN"},{no:21,name:"LANGUAGE_LATEX"},{no:22,name:"LANGUAGE_LESS"},{no:23,name:"LANGUAGE_LUA"},{no:24,name:"LANGUAGE_MAKEFILE"},{no:25,name:"LANGUAGE_MARKDOWN"},{no:26,name:"LANGUAGE_OBJECTIVEC"},{no:27,name:"LANGUAGE_OBJECTIVECPP"},{no:28,name:"LANGUAGE_PERL"},{no:29,name:"LANGUAGE_PHP"},{no:30,name:"LANGUAGE_PLAINTEXT"},{no:31,name:"LANGUAGE_PROTOBUF"},{no:32,name:"LANGUAGE_PBTXT"},{no:33,name:"LANGUAGE_PYTHON"},{no:34,name:"LANGUAGE_R"},{no:35,name:"LANGUAGE_RUBY"},{no:36,name:"LANGUAGE_RUST"},{no:37,name:"LANGUAGE_SASS"},{no:38,name:"LANGUAGE_SCALA"},{no:39,name:"LANGUAGE_SCSS"},{no:40,name:"LANGUAGE_SHELL"},{no:41,name:"LANGUAGE_SQL"},{no:42,name:"LANGUAGE_STARLARK"},{no:43,name:"LANGUAGE_SWIFT"},{no:44,name:"LANGUAGE_TSX"},{no:45,name:"LANGUAGE_TYPESCRIPT"},{no:46,name:"LANGUAGE_VISUALBASIC"},{no:47,name:"LANGUAGE_VUE"},{no:48,name:"LANGUAGE_XML"},{no:49,name:"LANGUAGE_XSL"},{no:50,name:"LANGUAGE_YAML"},{no:51,name:"LANGUAGE_SVELTE"},{no:52,name:"LANGUAGE_TOML"},{no:53,name:"LANGUAGE_DART"},{no:54,name:"LANGUAGE_RST"},{no:55,name:"LANGUAGE_OCAML"},{no:56,name:"LANGUAGE_CMAKE"},{no:57,name:"LANGUAGE_PASCAL"},{no:58,name:"LANGUAGE_ELIXIR"},{no:59,name:"LANGUAGE_FSHARP"},{no:60,name:"LANGUAGE_LISP"},{no:61,name:"LANGUAGE_MATLAB"},{no:62,name:"LANGUAGE_POWERSHELL"},{no:63,name:"LANGUAGE_SOLIDITY"},{no:64,name:"LANGUAGE_ADA"},{no:65,name:"LANGUAGE_OCAML_INTERFACE"}]);const tg=class e extends mp{constructor(e){super(),n(this,"completionId",""),n(this,"text",""),n(this,"prefix",""),n(this,"stop",""),n(this,"score",0),n(this,"tokens",[]),n(this,"decodedTokens",[]),n(this,"probabilities",[]),n(this,"adjustedProbabilities",[]),n(this,"generatedLength",jp.zero),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(tg,"runtime",zm),n(tg,"typeName","exa.codeium_common_pb.Completion"),n(tg,"fields",zm.util.newFieldList((()=>[{no:1,name:"completion_id",kind:"scalar",T:9},{no:2,name:"text",kind:"scalar",T:9},{no:3,name:"prefix",kind:"scalar",T:9},{no:4,name:"stop",kind:"scalar",T:9},{no:5,name:"score",kind:"scalar",T:1},{no:6,name:"tokens",kind:"scalar",T:4,repeated:!0},{no:7,name:"decoded_tokens",kind:"scalar",T:9,repeated:!0},{no:8,name:"probabilities",kind:"scalar",T:1,repeated:!0},{no:9,name:"adjusted_probabilities",kind:"scalar",T:1,repeated:!0},{no:10,name:"generated_length",kind:"scalar",T:4}])));let ng=tg;const rg=class e extends mp{constructor(e){super(),n(this,"ideName",""),n(this,"ideVersion",""),n(this,"extensionName",""),n(this,"extensionVersion",""),n(this,"apiKey",""),n(this,"locale",""),n(this,"sessionId",""),n(this,"requestId",jp.zero),n(this,"userAgent",""),n(this,"url",""),n(this,"authSource",qm.CODEIUM),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(rg,"runtime",zm),n(rg,"typeName","exa.codeium_common_pb.Metadata"),n(rg,"fields",zm.util.newFieldList((()=>[{no:1,name:"ide_name",kind:"scalar",T:9},{no:7,name:"ide_version",kind:"scalar",T:9},{no:12,name:"extension_name",kind:"scalar",T:9},{no:2,name:"extension_version",kind:"scalar",T:9},{no:3,name:"api_key",kind:"scalar",T:9},{no:4,name:"locale",kind:"scalar",T:9},{no:10,name:"session_id",kind:"scalar",T:9},{no:9,name:"request_id",kind:"scalar",T:4},{no:13,name:"user_agent",kind:"scalar",T:9},{no:14,name:"url",kind:"scalar",T:9},{no:15,name:"auth_source",kind:"enum",T:zm.getEnumType(qm)}])));let og=rg;const sg=class e extends mp{constructor(e){super(),n(this,"tabSize",jp.zero),n(this,"insertSpaces",!1),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(sg,"runtime",zm),n(sg,"typeName","exa.codeium_common_pb.EditorOptions"),n(sg,"fields",zm.util.newFieldList((()=>[{no:1,name:"tab_size",kind:"scalar",T:4},{no:2,name:"insert_spaces",kind:"scalar",T:8}])));let ig=sg;e=class extends mp{constructor(e){super(),n(this,"eventType",Jm.UNSPECIFIED),n(this,"eventJson",""),n(this,"timestampUnixMs",jp.zero),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}},n(e,"runtime",zm),n(e,"typeName","exa.codeium_common_pb.Event"),n(e,"fields",zm.util.newFieldList((()=>[{no:1,name:"event_type",kind:"enum",T:zm.getEnumType(Jm)},{no:2,name:"event_json",kind:"scalar",T:9},{no:3,name:"timestamp_unix_ms",kind:"scalar",T:3}])));class ag extends or{constructor(e,t){super(),n(this,"index"),n(this,"total"),this.index=e,this.total=t}toDOM(){const e=document.createElement("span");e.setAttribute("aria-hidden","true"),e.className="cm-codeium-cycle";const t=e.appendChild(document.createElement("span"));t.className="cm-codeium-cycle-explanation",t.innerText=`${this.index+1}/${this.total}`;const n=e.appendChild(document.createElement("button"));return n.className="cm-codeium-cycle-key",n.innerText="→ (Ctrl ])",n.dataset.action="codeium-cycle",e}ignoreEvent(){return!1}}const lg=sr.define({combine:e=>ir(e,{language:Qm.TYPESCRIPT,timeout:150,widgetClass:ag,alwaysOn:!0},{})}),cg=sr.define({combine:e=>ir(e,{override:()=>[]},{})}),dg=vn.mark({class:"cm-ghostText"}),ug=xn.define({create:e=>null,update(e,t){var n;const r=t.state.facet(lg);for(const o of t.effects){if(o.is(np)){const{changeSpecs:e,index:t}=o.value,s=e[t].map((e=>dg.range(e.absoluteStartPos,e.absoluteEndPos))),i=null==(n=s.at(-1))?void 0:n.to;return{index:t,decorations:vn.set([...s,...void 0!==i&&e.length>1&&r.widgetClass?[vn.widget({widget:new r.widgetClass(t,e.length),side:1}).range(i)]:[]]),changeSpecs:e,reverseChangeSet:o.value.reverseChangeSet}}if(o.is(rp))return null;if(o.is(op))return null}return e?{...e,decorations:e.decorations.map(t.changes),reverseChangeSet:e.reverseChangeSet.map(t.changes)}:e},provide:e=>yn.decorations.from(e,(e=>(null==e?void 0:e.decorations)||vn.none))}),hg=ar.define(),fg=ar.define();var pg,mg;function gg(e){const t=pg[e];return"string"!=typeof t?e.toString():t[0].toLowerCase()+t.substring(1).replace(/[A-Z]/g,(e=>"_"+e.toLowerCase()))}let yg;(mg=pg||(pg={}))[mg.Canceled=1]="Canceled",mg[mg.Unknown=2]="Unknown",mg[mg.InvalidArgument=3]="InvalidArgument",mg[mg.DeadlineExceeded=4]="DeadlineExceeded",mg[mg.NotFound=5]="NotFound",mg[mg.AlreadyExists=6]="AlreadyExists",mg[mg.PermissionDenied=7]="PermissionDenied",mg[mg.ResourceExhausted=8]="ResourceExhausted",mg[mg.FailedPrecondition=9]="FailedPrecondition",mg[mg.Aborted=10]="Aborted",mg[mg.OutOfRange=11]="OutOfRange",mg[mg.Unimplemented=12]="Unimplemented",mg[mg.Internal=13]="Internal",mg[mg.Unavailable=14]="Unavailable",mg[mg.DataLoss=15]="DataLoss",mg[mg.Unauthenticated=16]="Unauthenticated";class bg extends Error{constructor(e,t=pg.Unknown,n,r,o){super(function(e,t){return e.length?`[${gg(t)}] ${e}`:`[${gg(t)}]`}(e,t)),this.name="ConnectError",Object.setPrototypeOf(this,new.target.prototype),this.rawMessage=e,this.code=t,this.metadata=new Headers(null!=n?n:{}),this.details=null!=r?r:[],this.cause=o}static from(e,t=pg.Unknown){return e instanceof bg?e:e instanceof Error?"AbortError"==e.name?new bg(e.message,pg.Canceled):new bg(e.message,t,void 0,void 0,e):new bg(String(e),t,void 0,void 0,e)}static[Symbol.hasInstance](e){return e instanceof Error&&(Object.getPrototypeOf(e)===bg.prototype||"ConnectError"===e.name&&"code"in e&&"number"==typeof e.code&&"metadata"in e&&"details"in e&&Array.isArray(e.details)&&"rawMessage"in e&&"string"==typeof e.rawMessage&&"cause"in e)}findDetails(e){const t="typeName"in e?{findMessage:t=>t===e.typeName?e:void 0}:e,n=[];for(const o of this.details){if("getType"in o){t.findMessage(o.getType().typeName)&&n.push(o);continue}const e=t.findMessage(o.type);if(e)try{n.push(e.fromBinary(o.value))}catch(r){}}return n}}var xg=function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(n){t[n]=e[n]&&function(t){return new Promise((function(r,o){(function(e,t,n,r){Promise.resolve(r).then((function(t){e({value:t,done:n})}),t)})(r,o,(t=e[n](t)).done,t.value)}))}}},vg=function(e){return this instanceof vg?(this.v=e,this):new vg(e)},wg=function(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,o=n.apply(e,t||[]),s=[];return r={},i("next"),i("throw"),i("return",(function(e){return function(t){return Promise.resolve(t).then(e,c)}})),r[Symbol.asyncIterator]=function(){return this},r;function i(e,t){o[e]&&(r[e]=function(t){return new Promise((function(n,r){s.push([e,t,n,r])>1||a(e,t)}))},t&&(r[e]=t(r[e])))}function a(e,t){try{(n=o[e](t)).value instanceof vg?Promise.resolve(n.value.v).then(l,c):d(s[0][2],n)}catch(r){d(s[0][3],r)}var n}function l(e){a("next",e)}function c(e){a("throw",e)}function d(e,t){e(t),s.shift(),s.length&&a(s[0][0],s[0][1])}};function kg(e){return wg(this,arguments,(function*(){yield vg(yield*function(e){var t,n;return t={},r("next"),r("throw",(function(e){throw e})),r("return"),t[Symbol.iterator]=function(){return this},t;function r(r,o){t[r]=e[r]?function(t){return(n=!n)?{value:vg(e[r](t)),done:!1}:o?o(t):t}:o}}(xg(e)))}))}var Sg=function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(n){t[n]=e[n]&&function(t){return new Promise((function(r,o){(function(e,t,n,r){Promise.resolve(r).then((function(t){e({value:t,done:n})}),t)})(r,o,(t=e[n](t)).done,t.value)}))}}},Cg=function(e){return this instanceof Cg?(this.v=e,this):new Cg(e)},Eg=function(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,o=n.apply(e,t||[]),s=[];return r={},i("next"),i("throw"),i("return",(function(e){return function(t){return Promise.resolve(t).then(e,c)}})),r[Symbol.asyncIterator]=function(){return this},r;function i(e,t){o[e]&&(r[e]=function(t){return new Promise((function(n,r){s.push([e,t,n,r])>1||a(e,t)}))},t&&(r[e]=t(r[e])))}function a(e,t){try{(n=o[e](t)).value instanceof Cg?Promise.resolve(n.value.v).then(l,c):d(s[0][2],n)}catch(r){d(s[0][3],r)}var n}function l(e){a("next",e)}function c(e){a("throw",e)}function d(e,t){e(t),s.shift(),s.length&&a(s[0][0],s[0][1])}};function Ng(e,t){const n=function(){var n,r;return Eg(this,arguments,(function*(){const o=yield Cg(e);null===(n=null==t?void 0:t.onHeader)||void 0===n||n.call(t,o.header),yield Cg(yield*function(e){var t,n;return t={},r("next"),r("throw",(function(e){throw e})),r("return"),t[Symbol.iterator]=function(){return this},t;function r(r,o){t[r]=e[r]?function(t){return(n=!n)?{value:Cg(e[r](t)),done:!1}:o?o(t):t}:o}}(Sg(o.message))),null===(r=null==t?void 0:t.onTrailer)||void 0===r||r.call(t,o.trailer)}))}()[Symbol.asyncIterator]();return{[Symbol.asyncIterator]:()=>({next:()=>n.next()})}}function jg(e){if(!e.aborted)return;if(void 0!==e.reason)return e.reason;const t=new Error("This operation was aborted");return t.name="AbortError",t}function _g(){return{get(e){return e.id in this?this[e.id]:e.defaultValue},set(e,t){return this[e.id]=t,this},delete(e){return delete this[e.id],this}}}function Ig(e,t,n){const r="string"==typeof t?t:t.typeName,o="string"==typeof n?n:n.name;return e.toString().replace(/\/?$/,`/${r}/${o}`)}function Ag(e,t){return t instanceof e?t:new e(t)}function Tg(e,t){function n(t){return!0===t.done?t:{done:t.done,value:Ag(e,t.value)}}return{[Symbol.asyncIterator](){const e=t[Symbol.asyncIterator](),r={next:()=>e.next().then(n)};return void 0!==e.throw&&(r.throw=t=>e.throw(t).then(n)),void 0!==e.return&&(r.return=t=>e.return(t).then(n)),r}}}function Mg(e,t){var n;return null!==(n=null==t?void 0:t.concat().reverse().reduce(((e,t)=>t(e)),e))&&void 0!==n?n:e}function Og(e){var t;const n=Object.assign({},e);return null!==(t=n.ignoreUnknownFields)&&void 0!==t||(n.ignoreUnknownFields=!0),n}function Dg(e,t,n,r){const o=t?Rg(e.I,r):Pg(e.I,n);return{parse:(t?Rg(e.O,r):Pg(e.O,n)).parse,serialize:o.serialize}}function Rg(e,t){return{parse(n){try{return e.fromBinary(n,t)}catch(r){const e=r instanceof Error?r.message:String(r);throw new bg(`parse binary: ${e}`,pg.InvalidArgument)}},serialize(e){try{return e.toBinary(t)}catch(n){const e=n instanceof Error?n.message:String(n);throw new bg(`serialize binary: ${e}`,pg.Internal)}}}}function Pg(e,t){var n,r;const o=null!==(n=null==t?void 0:t.textEncoder)&&void 0!==n?n:new TextEncoder,s=null!==(r=null==t?void 0:t.textDecoder)&&void 0!==r?r:new TextDecoder,i=Og(t);return{parse(t){try{const n=s.decode(t);return e.fromJsonString(n,i)}catch(n){throw bg.from(n,pg.InvalidArgument)}},serialize(e){try{const t=e.toJsonString(i);return o.encode(t)}catch(t){throw bg.from(t,pg.Internal)}}}}const Lg=/^application\/(connect\+)?(?:(json)(?:; ?charset=utf-?8)?|(proto))$/i;function zg(e,t,n){if(t&&new Headers(t).forEach(((e,t)=>n.metadata.append(t,e))),"object"!=typeof e||null==e||Array.isArray(e)||!("code"in e)||"string"!=typeof e.code)throw n;const r=function(e){if(!yg){yg={};for(const e of Object.values(pg))"string"!=typeof e&&(yg[gg(e)]=e)}return yg[e]}(e.code);if(void 0===r)throw n;const o=e.message;if(null!=o&&"string"!=typeof o)throw n;const s=new bg(null!=o?o:"",r,t);if("details"in e&&Array.isArray(e.details))for(const a of e.details){if(null===a||"object"!=typeof a||Array.isArray(a)||"string"!=typeof a.type||"string"!=typeof a.value||"debug"in a&&"object"!=typeof a.debug)throw n;try{s.details.push({type:a.type,value:$p.dec(a.value),debug:a.debug})}catch(i){throw n}}return s}function Fg(e){const t=new bg("invalid end stream",pg.InvalidArgument);let n;try{n=JSON.parse("string"==typeof e?e:(new TextDecoder).decode(e))}catch(o){throw t}if("object"!=typeof n||null==n||Array.isArray(n))throw t;const r=new Headers;if("metadata"in n){if("object"!=typeof n.metadata||null==n.metadata||Array.isArray(n.metadata))throw t;for(const[e,o]of Object.entries(n.metadata)){if(!Array.isArray(o)||o.some((e=>"string"!=typeof e)))throw t;for(const t of o)r.append(e,t)}}return{metadata:r,error:"error"in n?zg(n.error,r,t):void 0}}const Bg="Content-Type",Ug="Content-Length",$g="Content-Encoding",Vg="Accept-Encoding",Hg="Connect-Protocol-Version";function Wg(e){const t=new Headers,n=new Headers;return e.forEach(((e,r)=>{r.toLowerCase().startsWith("trailer-")?n.set(r.substring(8),e):t.set(r,e)})),[t,n]}function Gg(e,t,n,r,o){const s=new Headers(null!=r?r:{});return void 0!==n&&s.set("Connect-Timeout-Ms",`${n}`),s.set(Bg,e==Um.Unary?t?"application/proto":"application/json":t?"application/connect+proto":"application/connect+json"),s.set(Hg,"1"),s}function qg(e,t,n){const r=function(e){const t=null==e?void 0:e.match(Lg);if(!t)return;return{stream:!!t[1],binary:!!t[3]}}(n.get("Content-Type"));if(200!==t){const o=new bg(`HTTP ${t}`,function(e){switch(e){case 400:return pg.InvalidArgument;case 401:return pg.Unauthenticated;case 403:return pg.PermissionDenied;case 404:return pg.Unimplemented;case 408:return pg.DeadlineExceeded;case 409:return pg.Aborted;case 412:return pg.FailedPrecondition;case 413:case 431:return pg.ResourceExhausted;case 415:return pg.Internal;case 429:case 502:case 503:case 504:return pg.Unavailable;default:return pg.Unknown}}(t),n);if(e==Um.Unary&&r&&!r.binary)return{isUnaryError:!0,unaryError:o};throw o}return{isUnaryError:!1}}const Yg="application/";function Jg(e,t,n){let r="?connect=v1";const o=e.header.get(Bg);0===(null==o?void 0:o.indexOf(Yg))&&(r+="&encoding="+encodeURIComponent(o.slice(12)));const s=e.header.get($g);null!==s&&"identity"!==s&&(r+="&compression="+encodeURIComponent(s),n=!0),n&&(r+="&base64=1"),r+="&message="+function(e,t){return t?$p.enc(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,""):encodeURIComponent((new TextDecoder).decode(e))}(t,n);const i=e.url+r,a=new Headers(e.header);return[Hg,Bg,Ug,$g,Vg].forEach((e=>a.delete(e))),Object.assign(Object.assign({},e),{init:Object.assign(Object.assign({},e.init),{method:"GET"}),url:i,header:a})}function Xg(e){const{signal:t,cleanup:n}=function(e){const t=new AbortController,n=()=>{t.abort(new bg("the operation timed out",pg.DeadlineExceeded))};let r;return void 0!==e&&(e<=0?n():r=setTimeout(n,e)),{signal:t.signal,cleanup:()=>clearTimeout(r)}}(e.timeoutMs),r=function(...e){const t=new AbortController,n=e.filter((e=>void 0!==e)).concat(t.signal);for(const o of n){if(o.aborted){r.apply(o);break}o.addEventListener("abort",r)}function r(){t.signal.aborted||t.abort(jg(this));for(const e of n)e.removeEventListener("abort",r)}return t}(e.signal,t);return[r.signal,function(e){const o=bg.from(t.aborted?jg(t):e);return r.abort(o),n(),Promise.reject(o)},function(){n(),r.abort()}]}var Kg,Zg,Qg,ey,ty,ny;(Zg=Kg||(Kg={}))[Zg.UNSPECIFIED=0]="UNSPECIFIED",Zg[Zg.INACTIVE=1]="INACTIVE",Zg[Zg.PROCESSING=2]="PROCESSING",Zg[Zg.SUCCESS=3]="SUCCESS",Zg[Zg.WARNING=4]="WARNING",Zg[Zg.ERROR=5]="ERROR",zm.util.setEnumType(Kg,"exa.language_server_pb.CodeiumState",[{no:0,name:"CODEIUM_STATE_UNSPECIFIED"},{no:1,name:"CODEIUM_STATE_INACTIVE"},{no:2,name:"CODEIUM_STATE_PROCESSING"},{no:3,name:"CODEIUM_STATE_SUCCESS"},{no:4,name:"CODEIUM_STATE_WARNING"},{no:5,name:"CODEIUM_STATE_ERROR"}]),(ey=Qg||(Qg={}))[ey.UNSPECIFIED=0]="UNSPECIFIED",ey[ey.SINGLE=1]="SINGLE",ey[ey.MULTI=2]="MULTI",zm.util.setEnumType(Qg,"exa.language_server_pb.LineType",[{no:0,name:"LINE_TYPE_UNSPECIFIED"},{no:1,name:"LINE_TYPE_SINGLE"},{no:2,name:"LINE_TYPE_MULTI"}]),(ny=ty||(ty={}))[ny.UNSPECIFIED=0]="UNSPECIFIED",ny[ny.INLINE=1]="INLINE",ny[ny.BLOCK=2]="BLOCK",ny[ny.INLINE_MASK=3]="INLINE_MASK",zm.util.setEnumType(ty,"exa.language_server_pb.CompletionPartType",[{no:0,name:"COMPLETION_PART_TYPE_UNSPECIFIED"},{no:1,name:"COMPLETION_PART_TYPE_INLINE"},{no:2,name:"COMPLETION_PART_TYPE_BLOCK"},{no:3,name:"COMPLETION_PART_TYPE_INLINE_MASK"}]);const ry=class e extends mp{constructor(e){super(),n(this,"threshold",0),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(ry,"runtime",zm),n(ry,"typeName","exa.language_server_pb.MultilineConfig"),n(ry,"fields",zm.util.newFieldList((()=>[{no:1,name:"threshold",kind:"scalar",T:2}])));let oy=ry;const sy=class e extends mp{constructor(e){super(),n(this,"metadata"),n(this,"document"),n(this,"editorOptions"),n(this,"otherDocuments",[]),n(this,"experimentConfig"),n(this,"modelName",""),n(this,"multilineConfig"),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(sy,"runtime",zm),n(sy,"typeName","exa.language_server_pb.GetCompletionsRequest"),n(sy,"fields",zm.util.newFieldList((()=>[{no:1,name:"metadata",kind:"message",T:og},{no:2,name:"document",kind:"message",T:vy},{no:3,name:"editor_options",kind:"message",T:ig},{no:5,name:"other_documents",kind:"message",T:vy,repeated:!0},{no:7,name:"experiment_config",kind:"message",T:ky},{no:10,name:"model_name",kind:"scalar",T:9},{no:13,name:"multiline_config",kind:"message",T:oy}])));let iy=sy;const ay=class e extends mp{constructor(e){super(),n(this,"state"),n(this,"completionItems",[]),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(ay,"runtime",zm),n(ay,"typeName","exa.language_server_pb.GetCompletionsResponse"),n(ay,"fields",zm.util.newFieldList((()=>[{no:1,name:"state",kind:"message",T:Cy},{no:2,name:"completion_items",kind:"message",T:My,repeated:!0}])));let ly=ay;const cy=class e extends mp{constructor(e){super(),n(this,"metadata"),n(this,"completionId",""),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(cy,"runtime",zm),n(cy,"typeName","exa.language_server_pb.AcceptCompletionRequest"),n(cy,"fields",zm.util.newFieldList((()=>[{no:1,name:"metadata",kind:"message",T:og},{no:2,name:"completion_id",kind:"scalar",T:9}])));let dy=cy;const uy=class e extends mp{constructor(e){super(),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(uy,"runtime",zm),n(uy,"typeName","exa.language_server_pb.AcceptCompletionResponse"),n(uy,"fields",zm.util.newFieldList((()=>[])));let hy=uy;const fy=class e extends mp{constructor(e){super(),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(fy,"runtime",zm),n(fy,"typeName","exa.language_server_pb.GetAuthTokenRequest"),n(fy,"fields",zm.util.newFieldList((()=>[])));let py=fy;const my=class e extends mp{constructor(e){super(),n(this,"authToken",""),n(this,"uuid",""),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(my,"runtime",zm),n(my,"typeName","exa.language_server_pb.GetAuthTokenResponse"),n(my,"fields",zm.util.newFieldList((()=>[{no:1,name:"auth_token",kind:"scalar",T:9},{no:2,name:"uuid",kind:"scalar",T:9}])));let gy=my;const yy=class e extends mp{constructor(e){super(),n(this,"row",jp.zero),n(this,"col",jp.zero),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(yy,"runtime",zm),n(yy,"typeName","exa.language_server_pb.DocumentPosition"),n(yy,"fields",zm.util.newFieldList((()=>[{no:1,name:"row",kind:"scalar",T:4},{no:2,name:"col",kind:"scalar",T:4}])));let by=yy;const xy=class e extends mp{constructor(e){super(),n(this,"absolutePath",""),n(this,"relativePath",""),n(this,"text",""),n(this,"editorLanguage",""),n(this,"language",Qm.UNSPECIFIED),n(this,"cursorOffset",jp.zero),n(this,"cursorPosition"),n(this,"lineEnding",""),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(xy,"runtime",zm),n(xy,"typeName","exa.language_server_pb.Document"),n(xy,"fields",zm.util.newFieldList((()=>[{no:1,name:"absolute_path",kind:"scalar",T:9},{no:2,name:"relative_path",kind:"scalar",T:9},{no:3,name:"text",kind:"scalar",T:9},{no:4,name:"editor_language",kind:"scalar",T:9},{no:5,name:"language",kind:"enum",T:zm.getEnumType(Qm)},{no:6,name:"cursor_offset",kind:"scalar",T:4},{no:8,name:"cursor_position",kind:"message",T:by},{no:7,name:"line_ending",kind:"scalar",T:9}])));let vy=xy;const wy=class e extends mp{constructor(e){super(),n(this,"forceEnableExperiments",[]),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(wy,"runtime",zm),n(wy,"typeName","exa.language_server_pb.ExperimentConfig"),n(wy,"fields",zm.util.newFieldList((()=>[{no:1,name:"force_enable_experiments",kind:"enum",T:zm.getEnumType(Wm),repeated:!0}])));let ky=wy;const Sy=class e extends mp{constructor(e){super(),n(this,"state",Kg.UNSPECIFIED),n(this,"message",""),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(Sy,"runtime",zm),n(Sy,"typeName","exa.language_server_pb.State"),n(Sy,"fields",zm.util.newFieldList((()=>[{no:1,name:"state",kind:"enum",T:zm.getEnumType(Kg)},{no:2,name:"message",kind:"scalar",T:9}])));let Cy=Sy;const Ey=class e extends mp{constructor(e){super(),n(this,"startOffset",jp.zero),n(this,"endOffset",jp.zero),n(this,"startPosition"),n(this,"endPosition"),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(Ey,"runtime",zm),n(Ey,"typeName","exa.language_server_pb.Range"),n(Ey,"fields",zm.util.newFieldList((()=>[{no:1,name:"start_offset",kind:"scalar",T:4},{no:2,name:"end_offset",kind:"scalar",T:4},{no:3,name:"start_position",kind:"message",T:by},{no:4,name:"end_position",kind:"message",T:by}])));let Ny=Ey;const jy=class e extends mp{constructor(e){super(),n(this,"text",""),n(this,"deltaCursorOffset",jp.zero),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(jy,"runtime",zm),n(jy,"typeName","exa.language_server_pb.Suffix"),n(jy,"fields",zm.util.newFieldList((()=>[{no:1,name:"text",kind:"scalar",T:9},{no:2,name:"delta_cursor_offset",kind:"scalar",T:3}])));let _y=jy;const Iy=class e extends mp{constructor(e){super(),n(this,"text",""),n(this,"offset",jp.zero),n(this,"type",ty.UNSPECIFIED),n(this,"prefix",""),n(this,"line",jp.zero),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(Iy,"runtime",zm),n(Iy,"typeName","exa.language_server_pb.CompletionPart"),n(Iy,"fields",zm.util.newFieldList((()=>[{no:1,name:"text",kind:"scalar",T:9},{no:2,name:"offset",kind:"scalar",T:4},{no:3,name:"type",kind:"enum",T:zm.getEnumType(ty)},{no:4,name:"prefix",kind:"scalar",T:9},{no:5,name:"line",kind:"scalar",T:4}])));let Ay=Iy;const Ty=class e extends mp{constructor(e){super(),n(this,"completion"),n(this,"suffix"),n(this,"range"),n(this,"source",Km.UNSPECIFIED),n(this,"completionParts",[]),zm.util.initPartial(e,this)}static fromBinary(t,n){return(new e).fromBinary(t,n)}static fromJson(t,n){return(new e).fromJson(t,n)}static fromJsonString(t,n){return(new e).fromJsonString(t,n)}static equals(t,n){return zm.util.equals(e,t,n)}};n(Ty,"runtime",zm),n(Ty,"typeName","exa.language_server_pb.CompletionItem"),n(Ty,"fields",zm.util.newFieldList((()=>[{no:1,name:"completion",kind:"message",T:ng},{no:5,name:"suffix",kind:"message",T:_y},{no:2,name:"range",kind:"message",T:Ny},{no:3,name:"source",kind:"enum",T:zm.getEnumType(Km)},{no:8,name:"completion_parts",kind:"message",T:Ay,repeated:!0}])));let My=Ty;const Oy={typeName:"exa.language_server_pb.LanguageServerService",methods:{getCompletions:{name:"GetCompletions",I:iy,O:ly,kind:Um.Unary},acceptCompletion:{name:"AcceptCompletion",I:dy,O:hy,kind:Um.Unary},getAuthToken:{name:"GetAuthToken",I:py,O:gy,kind:Um.Unary}}};var Dy=function(e){return this instanceof Dy?(this.v=e,this):new Dy(e)},Ry=function(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,o=n.apply(e,t||[]),s=[];return r={},i("next"),i("throw"),i("return",(function(e){return function(t){return Promise.resolve(t).then(e,c)}})),r[Symbol.asyncIterator]=function(){return this},r;function i(e,t){o[e]&&(r[e]=function(t){return new Promise((function(n,r){s.push([e,t,n,r])>1||a(e,t)}))},t&&(r[e]=t(r[e])))}function a(e,t){try{(n=o[e](t)).value instanceof Dy?Promise.resolve(n.value.v).then(l,c):d(s[0][2],n)}catch(r){d(s[0][3],r)}var n}function l(e){a("next",e)}function c(e){a("throw",e)}function d(e,t){e(t),s.shift(),s.length&&a(s[0][0],s[0][1])}};const Py=function(e){var t;!function(){try{new Headers}catch(e){throw new Error("connect-web requires the fetch API. Are you running on an old version of Node.js? Node.js is not supported in Connect for Web - please stay tuned for Connect for Node.")}}();const n=null!==(t=e.useBinaryFormat)&&void 0!==t&&t;return{async unary(t,r,o,s,i,a,l){var c;const{serialize:d,parse:u}=Dg(r,n,e.jsonOptions,e.binaryOptions);return s=void 0===s?e.defaultTimeoutMs:s<=0?void 0:s,await function(e){const t=Mg(e.next,e.interceptors),[n,r,o]=Xg(e);return t(Object.assign(Object.assign({},e.req),{message:Ag(e.req.method.I,e.req.message),signal:n})).then((e=>(o(),e)),r)}({interceptors:e.interceptors,signal:o,timeoutMs:s,req:{stream:!1,service:t,method:r,url:Ig(e.baseUrl,t,r),init:{method:"POST",credentials:null!==(c=e.credentials)&&void 0!==c?c:"same-origin",redirect:"error",mode:"cors"},header:Gg(r.kind,n,s,i),contextValues:null!=l?l:_g(),message:a},next:async o=>{var s;let i=null;!0===e.useHttpGet&&r.idempotency===Vm.NoSideEffects?o=Jg(o,d(o.message),n):i=d(o.message);const a=null!==(s=e.fetch)&&void 0!==s?s:globalThis.fetch,l=await a(o.url,Object.assign(Object.assign({},o.init),{headers:o.header,signal:o.signal,body:i})),{isUnaryError:c,unaryError:h}=qg(r.kind,l.status,l.headers);if(c)throw zg(await l.json(),function(...e){const t=new Headers;for(const n of e)n.forEach(((e,n)=>{t.append(n,e)}));return t}(...Wg(l.headers)),h);const[f,p]=Wg(l.headers);return{stream:!1,service:t,method:r,header:f,message:n?u(new Uint8Array(await l.arrayBuffer())):r.O.fromJson(await l.json(),Og(e.jsonOptions)),trailer:p}}})},async stream(t,r,o,s,i,a,l){var c;const{serialize:d,parse:u}=Dg(r,n,e.jsonOptions,e.binaryOptions);function h(e,t,n){return Ry(this,arguments,(function*(){const r=function(e){let t,n=new Uint8Array(0);function r(e){const t=new Uint8Array(n.length+e.length);t.set(n),t.set(e,n.length),n=t}return new ReadableStream({start(){t=e.getReader()},async pull(e){let o;for(;;){if(void 0===o&&n.byteLength>=5){let e=0;for(let t=1;t<5;t++)e=(e<<8)+n[t];o={flags:n[0],length:e}}if(void 0!==o&&n.byteLength>=o.length+5)break;const e=await t.read();if(e.done)break;r(e.value)}if(void 0===o)return 0==n.byteLength?void e.close():void e.error(new bg("premature end of stream",pg.DataLoss));const s=n.subarray(5,5+o.length);n=n.subarray(5+o.length),e.enqueue({flags:o.flags,data:s})}})}(e).getReader();let o=!1;for(;;){const e=yield Dy(r.read());if(e.done)break;const{flags:s,data:i}=e.value;if(2&~s)yield yield Dy(u(i));else{o=!0;const e=Fg(i);if(e.error){const t=e.error;throw n.forEach(((e,n)=>{t.metadata.append(n,e)})),t}e.metadata.forEach(((e,n)=>t.set(n,e)))}}if(!o)throw"missing EndStreamResponse"}))}async function f(e){if(r.kind!=Um.ServerStreaming)throw"The fetch API does not support streaming request bodies";const t=await e[Symbol.asyncIterator]().next();if(1==t.done)throw"missing request message";return function(e,t){const n=new Uint8Array(t.length+5);n.set(t,5);const r=new DataView(n.buffer,n.byteOffset,n.byteLength);return r.setUint8(0,e),r.setUint32(1,t.length),n}(0,d(t.value))}return s=void 0===s?e.defaultTimeoutMs:s<=0?void 0:s,await function(e){const t=Mg(e.next,e.interceptors),[n,r,o]=Xg(e),s=Object.assign(Object.assign({},e.req),{message:Tg(e.req.method.I,e.req.message),signal:n});let i=!1;return n.addEventListener("abort",(function(){var t,n;const r=e.req.message[Symbol.asyncIterator]();i||null===(t=r.throw)||void 0===t||t.call(r,this.reason).catch((()=>{})),null===(n=r.return)||void 0===n||n.call(r).catch((()=>{}))})),t(s).then((e=>Object.assign(Object.assign({},e),{message:{[Symbol.asyncIterator](){const t=e.message[Symbol.asyncIterator]();return{next:()=>t.next().then((e=>(1==e.done&&(i=!0,o()),e)),r)}}}})),r)}({interceptors:e.interceptors,timeoutMs:s,signal:o,req:{stream:!0,service:t,method:r,url:Ig(e.baseUrl,t,r),init:{method:"POST",credentials:null!==(c=e.credentials)&&void 0!==c?c:"same-origin",redirect:"error",mode:"cors"},header:Gg(r.kind,n,s,i),contextValues:null!=l?l:_g(),message:a},next:async t=>{var n;const o=null!==(n=e.fetch)&&void 0!==n?n:globalThis.fetch,s=await o(t.url,Object.assign(Object.assign({},t.init),{headers:t.header,signal:t.signal,body:await f(t.message)}));if(qg(r.kind,s.status,s.headers),null===s.body)throw"missing response body";const i=new Headers;return Object.assign(Object.assign({},t),{header:s.headers,trailer:i,message:h(s.body,i,s.headers)})}})}}}({baseUrl:"https://web-backend.codeium.com",useBinaryFormat:!0}),Ly=(Fy=Py,function(e,t){const n={};for(const[r,o]of Object.entries(e.methods)){const s=t(Object.assign(Object.assign({},o),{localName:r,service:e}));null!=s&&(n[r]=s)}return n}(zy=Oy,(e=>{switch(e.kind){case Um.Unary:return function(e,t,n){return async function(r,o){var s,i;const a=await e.unary(t,n,null==o?void 0:o.signal,null==o?void 0:o.timeoutMs,null==o?void 0:o.headers,r,null==o?void 0:o.contextValues);return null===(s=null==o?void 0:o.onHeader)||void 0===s||s.call(o,a.header),null===(i=null==o?void 0:o.onTrailer)||void 0===i||i.call(o,a.trailer),a.message}}(Fy,zy,e);case Um.ServerStreaming:return function(e,t,n){return function(r,o){return Ng(e.stream(t,n,null==o?void 0:o.signal,null==o?void 0:o.timeoutMs,null==o?void 0:o.headers,kg([r]),null==o?void 0:o.contextValues),o)}}(Fy,zy,e);case Um.ClientStreaming:return function(e,t,n){return async function(r,o){var s,i,a,l,c,d;const u=await e.stream(t,n,null==o?void 0:o.signal,null==o?void 0:o.timeoutMs,null==o?void 0:o.headers,r,null==o?void 0:o.contextValues);let h;null===(c=null==o?void 0:o.onHeader)||void 0===c||c.call(o,u.header);try{for(var f,p=!0,m=Sg(u.message);!(s=(f=await m.next()).done);p=!0)l=f.value,p=!1,h=l}catch(g){i={error:g}}finally{try{p||s||!(a=m.return)||await a.call(m)}finally{if(i)throw i.error}}if(!h)throw new bg("protocol error: missing response message",pg.Internal);return null===(d=null==o?void 0:o.onTrailer)||void 0===d||d.call(o,u.trailer),h}}(Fy,zy,e);case Um.BiDiStreaming:return function(e,t,n){return function(r,o){return Ng(e.stream(t,n,null==o?void 0:o.signal,null==o?void 0:o.timeoutMs,null==o?void 0:o.headers,r,null==o?void 0:o.contextValues),o)}}(Fy,zy,e);default:return null}})));var zy,Fy;let By;try{By=crypto.randomUUID()}catch{By=function(){return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,(e=>(+e^(crypto.getRandomValues(new Uint8Array(1))[0]??0)&15>>+e/4).toString(16)))}()}async function Uy(e,t){const n=e.state.facet(lg),{override:r}=e.state.facet(cg),o=await r(),s=e.state,i=s.selection.main.head,a=s.doc.toString();try{const r=await async function({text:e,cursorOffset:t,config:n,otherDocuments:r}){return await Ly.getCompletions({metadata:{ideName:"web",ideVersion:"0.0.5",extensionName:"@valtown/codemirror-codeium",extensionVersion:"1.0.0",apiKey:n.apiKey,sessionId:By,authSource:n.authSource},document:{text:e,cursorOffset:BigInt(t),language:n.language,editorLanguage:"typescript",lineEnding:"\n"},editorOptions:{tabSize:2n,insertSpaces:!0},otherDocuments:r,multilineConfig:void 0},{headers:{Authorization:`Basic ${n.apiKey}-${By}`}})}({text:a,cursorOffset:i,config:n,otherDocuments:o});if(!r||0===r.completionItems.length)return;if(void 0!==t&&i!==t||"active"===lr(e.state)||!e.hasFocus)return;const l=r.completionItems.map((e=>{let t=0;return e.completionParts.filter((e=>3!==e.type)).map((e=>{const n=Number(e.offset),r=2===e.type?`\n${e.text}`:e.text,o={absoluteStartPos:t+n,absoluteEndPos:t+n+r.length,from:n,to:n,insert:r};return t+=r.length,o}))})),c=0,d=l.at(c);if(!d)return;const u=cr.of(d,s.doc.length),h=u.invert(s.doc);e.dispatch({changes:u,effects:np.of({index:c,reverseChangeSet:h,changeSpecs:l}),annotations:[fg.of(null),hg.of(null),dr.addToHistory.of(!1)]})}catch(l){console.warn("copilot completion failed",l),await new Promise((e=>setTimeout(e,300)))}}function $y(){let e=null,t=0;return yn.updateListener.of((n=>{const r=n.view.state.facet(lg);if(!r.alwaysOn)return;if(!function(e){return e.docChanged&&!e.transactions.some((e=>e.effects.some((e=>e.is(rp)||e.is(op)))))}(n))return;if(e&&clearTimeout(e),function(e){if(!e.view.hasFocus)return!0;if(e.state.field(ug))return!0;if("active"===lr(e.state))return!0;for(const t of e.transactions)if(void 0!==t.annotation(hg))return!0}(n))return;const o=n.state.selection.main.head;r.shouldComplete&&!r.shouldComplete(new ur(n.view.state,o,!1))||(e=setTimeout((async()=>{o===t&&await Uy(n.view,t)}),r.timeout),t=o)}))}function Vy(e){var t;const n=e.state.field(ug);if(!n)return!1;const r=null==(t=n.reverseChangeSet)?void 0:t.invert(e.state.doc);e.dispatch({changes:n.reverseChangeSet,effects:rp.of(null),annotations:[fg.of(null),hg.of(null),dr.addToHistory.of(!1)]});let o=0;return null==r||r.iterChangedRanges(((e,t,n,r)=>{o=r})),e.dispatch({changes:r,selection:gn.cursor(o),annotations:[hg.of(null),dr.addToHistory.of(!0)]}),!0}const Hy=e=>{const{state:t}=e,n=t.field(ug);if(!n)return!1;const{changeSpecs:r}=n;if(r.length<2)return!1;const o=(n.index+1)%r.length,s=r.at(o);if(!s)return!1;const i=n.reverseChangeSet.apply(t.doc),a=cr.of(n.reverseChangeSet,t.doc.length).compose(cr.of(s,i.length)),l=cr.of(s,i.length).invert(i);return e.dispatch({changes:a,effects:np.of({index:o,reverseChangeSet:l,changeSpecs:r}),annotations:[fg.of(null),hg.of(null),dr.addToHistory.of(!1)]}),!0};function Wy(e){const t=e.state.field(ug);return!!t&&(e.dispatch({changes:t.reverseChangeSet,effects:op.of(null),annotations:[fg.of(null),hg.of(null),dr.addToHistory.of(!1)]}),!1)}function Gy(){return yn.domEventHandlers({keydown:(e,t)=>("]"!==e.key||!e.ctrlKey)&&("Shift"!==e.key&&"Control"!==e.key&&"Alt"!==e.key&&"Meta"!==e.key&&function(e,t){return!!e.state.field(ug)&&("Tab"===t?Vy(e):Wy(e))}(t,e.key)),mouseup(e,t){const n=e.target;return"BUTTON"===n.nodeName&&"codeium-cycle"===n.dataset.action?(Hy(t),e.stopPropagation(),e.preventDefault(),!0):function(e){var t,n;let r=!1;const o=null==(t=e.state.selection.asSingle().ranges.at(0))?void 0:t.head,s=e.state.field(ug);return!(void 0===o||!s)&&(null==(n=s.decorations)||n.between(o,o,(()=>{r=!0})),r)}(t)?Vy(t):Wy(t)}})}const qy=e=>{const t=[];return"codeium"===e.copilot&&e.codeium_api_key&&t.push(function(e){return[lg.of(e),ug,rr.highest(er.of([{key:"Ctrl-]",run:Hy}])),rr.highest(yn.updateListener.of((e=>{e.focusChanged&&Wy(e.view)}))),rr.high(Gy()),$y()]}({apiKey:e.codeium_api_key,language:Qm.PYTHON}),cg.of({override:async()=>[{text:hr(""),language:Qm.PYTHON,editorLanguage:"python"}]})),"github"===e.copilot&&t.push(tp({delay:500,fetchFn:async e=>{if(!Al())return"";if(0===e.doc.length)return"";await new Promise((e=>setTimeout(e,20)));const t=e.doc.toString(),n=function(e,t){const n=e.doc.toString(),r=t.split("\n").length-n.split("\n").length,o=function(e,t){const n=e.lineAt(t);return{line:n.number-1,character:t-n.from}}(e.doc,e.selection.main.head);return o.line+=r,{doc:{source:t,tabSize:e.tabSize,indentSize:1,insertSpaces:!0,path:Ol,version:"replace_me",uri:`file://${Ol}`,relativePath:Ol,languageId:Ml,position:o}}}(e,hr(t)),r=function(e,t,n){if(0===e.completions.length)return"";const{displayText:r,position:o}=e.completions[0],s=o.character-t.character,i=s<0?r.slice(-s):r,a=n.doc.sliceString(n.selection.main.head,n.doc.length);for(let l=0;lvn.none,update(e,t){let n=e.map(t.changes);for(const r of t.effects)r.is(Jy)?n=e.update({add:[Yy.range(r.value.from,r.value.to)]}):r.is(Xy)&&(n=vn.none);return n},provide:e=>yn.decorations.from(e)});class Zy{constructor(e,t){this.view=void 0,this.commandClickMode=void 0,this.hoveredRange=void 0,this.onClick=void 0,this.keydown=e=>{"Meta"!==e.key&&"Control"!==e.key||(this.commandClickMode=!0,this.view.dom.addEventListener("mousemove",this.mousemove),this.view.dom.addEventListener("click",this.click))},this.keyup=e=>{"Meta"!==e.key&&"Control"!==e.key||this.exitCommandClickMode()},this.windowBlur=()=>{this.commandClickMode&&this.exitCommandClickMode()},this.mousemove=e=>{if(!e.metaKey&&!e.ctrlKey)return void this.exitCommandClickMode();if(!this.commandClickMode)return void this.clearUnderline();const t=this.view.posAtCoords({x:e.clientX,y:e.clientY});if(null==t)return void this.clearUnderline();const n=fr(this.view.state).cursorAt(t);if("VariableName"===n.name){const{from:e,to:r}=n;if(this.hoveredRange&&this.hoveredRange.from===e&&this.hoveredRange.to===r)return;this.clearUnderline(),this.hoveredRange={from:e,to:r,position:t},this.view.dispatch({effects:Jy.of(this.hoveredRange)})}else this.clearUnderline()},this.click=e=>{if(this.hoveredRange){const t=this.view.state.doc.sliceString(this.hoveredRange.from,this.hoveredRange.to);e.preventDefault(),e.stopPropagation(),this.onClick(this.view,t),this.view.dispatch({selection:{head:this.hoveredRange.position,anchor:this.hoveredRange.position}})}},this.view=e,this.commandClickMode=!1,this.hoveredRange=null,this.onClick=t,window.addEventListener("keydown",this.keydown),window.addEventListener("keyup",this.keyup),window.addEventListener("blur",this.windowBlur),window.addEventListener("mouseleave",this.windowBlur)}update(e){}destroy(){window.removeEventListener("keydown",this.keydown),window.removeEventListener("keyup",this.keyup),window.removeEventListener("blur",this.windowBlur),window.removeEventListener("mouseleave",this.windowBlur),this.view.dom.removeEventListener("mousemove",this.mousemove),this.view.dom.removeEventListener("click",this.click)}exitCommandClickMode(){this.commandClickMode=!1,this.view.dom.removeEventListener("mousemove",this.mousemove),this.view.dom.removeEventListener("click",this.click),this.clearUnderline()}clearUnderline(){this.hoveredRange&&(this.view.dispatch({effects:Xy.of(null)}),this.hoveredRange=null)}}const Qy=({variant:e,settings:t,styles:n})=>{const r=yn.theme({"&":{backgroundColor:t.background,color:t.foreground},".cm-content":{caretColor:t.caret},".cm-cursor, .cm-dropCursor":{borderLeftColor:t.caret},"&.cm-focused .cm-selectionBackgroundm .cm-selectionBackground, .cm-content ::selection":{backgroundColor:t.selection},".cm-activeLine":{backgroundColor:t.lineHighlight},".cm-gutters":{backgroundColor:t.gutterBackground,color:t.gutterForeground},".cm-activeLineGutter":{backgroundColor:t.lineHighlight}},{dark:"dark"===e}),o=mr.define(n);return[r,gr(o)]};Qy({variant:"dark",settings:{background:"#200020",foreground:"#D0D0FF",caret:"#7070FF",selection:"#80000080",gutterBackground:"#200020",gutterForeground:"#C080C0",lineHighlight:"#80000040"},styles:[{tag:yr.comment,color:"#404080"},{tag:[yr.string,yr.regexp],color:"#999999"},{tag:yr.number,color:"#7090B0"},{tag:[yr.bool,yr.null],color:"#8080A0"},{tag:[yr.punctuation,yr.derefOperator],color:"#805080"},{tag:yr.keyword,color:"#60B0FF"},{tag:yr.definitionKeyword,color:"#B0FFF0"},{tag:yr.moduleKeyword,color:"#60B0FF"},{tag:yr.operator,color:"#A0A0FF"},{tag:[yr.variableName,yr.self],color:"#008080"},{tag:yr.operatorKeyword,color:"#A0A0FF"},{tag:yr.controlKeyword,color:"#80A0FF"},{tag:yr.className,color:"#70E080"},{tag:[yr.function(yr.propertyName),yr.propertyName],color:"#50A0A0"},{tag:yr.tagName,color:"#009090"},{tag:yr.modifier,color:"#B0FFF0"},{tag:[yr.squareBracket,yr.attributeName],color:"#D0D0FF"}]}),Qy({variant:"light",settings:{background:"#fcfcfc",foreground:"#5c6166",caret:"#ffaa33",selection:"#036dd626",gutterBackground:"#fcfcfc",gutterForeground:"#8a919966",lineHighlight:"#8a91991a"},styles:[{tag:yr.comment,color:"#787b8099"},{tag:yr.string,color:"#86b300"},{tag:yr.regexp,color:"#4cbf99"},{tag:[yr.number,yr.bool,yr.null],color:"#ffaa33"},{tag:yr.variableName,color:"#5c6166"},{tag:[yr.definitionKeyword,yr.modifier],color:"#fa8d3e"},{tag:[yr.keyword,yr.special(yr.brace)],color:"#fa8d3e"},{tag:yr.operator,color:"#ed9366"},{tag:yr.separator,color:"#5c6166b3"},{tag:yr.punctuation,color:"#5c6166"},{tag:[yr.definition(yr.propertyName),yr.function(yr.variableName)],color:"#f2ae49"},{tag:[yr.className,yr.definition(yr.typeName)],color:"#22a4e6"},{tag:[yr.tagName,yr.typeName,yr.self,yr.labelName],color:"#55b4d4"},{tag:yr.angleBracket,color:"#55b4d480"},{tag:yr.attributeName,color:"#f2ae49"}]}),Qy({variant:"dark",settings:{background:"#15191EFA",foreground:"#EEF2F7",caret:"#C4C4C4",selection:"#90B2D557",gutterBackground:"#15191EFA",gutterForeground:"#aaaaaa95",lineHighlight:"#57575712"},styles:[{tag:yr.comment,color:"#6E6E6E"},{tag:[yr.string,yr.regexp,yr.special(yr.brace)],color:"#5C81B3"},{tag:yr.number,color:"#C1E1B8"},{tag:yr.bool,color:"#53667D"},{tag:[yr.definitionKeyword,yr.modifier,yr.function(yr.propertyName)],color:"#A3D295",fontWeight:"bold"},{tag:[yr.keyword,yr.moduleKeyword,yr.operatorKeyword,yr.operator],color:"#697A8E",fontWeight:"bold"},{tag:[yr.variableName,yr.attributeName],color:"#708E67"},{tag:[yr.function(yr.variableName),yr.definition(yr.propertyName),yr.derefOperator],color:"#fff"},{tag:yr.tagName,color:"#A3D295"}]}),Qy({variant:"dark",settings:{background:"#2e241d",foreground:"#BAAE9E",caret:"#A7A7A7",selection:"#DDF0FF33",gutterBackground:"#28211C",gutterForeground:"#BAAE9E90",lineHighlight:"#FFFFFF08"},styles:[{tag:yr.comment,color:"#666666"},{tag:[yr.string,yr.special(yr.brace)],color:"#54BE0D"},{tag:yr.regexp,color:"#E9C062"},{tag:yr.number,color:"#CF6A4C"},{tag:[yr.keyword,yr.operator],color:"#5EA6EA"},{tag:yr.variableName,color:"#7587A6"},{tag:[yr.definitionKeyword,yr.modifier],color:"#F9EE98"},{tag:[yr.propertyName,yr.function(yr.variableName)],color:"#937121"},{tag:[yr.typeName,yr.angleBracket,yr.tagName],color:"#9B859D"}]}),Qy({variant:"dark",settings:{background:"#3b2627",foreground:"#E6E1C4",caret:"#E6E1C4",selection:"#16120E",gutterBackground:"#3b2627",gutterForeground:"#E6E1C490",lineHighlight:"#1F1611"},styles:[{tag:yr.comment,color:"#6B4E32"},{tag:[yr.keyword,yr.operator,yr.derefOperator],color:"#EF5D32"},{tag:yr.className,color:"#EFAC32",fontWeight:"bold"},{tag:[yr.typeName,yr.propertyName,yr.function(yr.variableName),yr.definition(yr.variableName)],color:"#EFAC32"},{tag:yr.definition(yr.typeName),color:"#EFAC32",fontWeight:"bold"},{tag:yr.labelName,color:"#EFAC32",fontWeight:"bold"},{tag:[yr.number,yr.bool],color:"#6C99BB"},{tag:[yr.variableName,yr.self],color:"#7DAF9C"},{tag:[yr.string,yr.special(yr.brace),yr.regexp],color:"#D9D762"},{tag:[yr.angleBracket,yr.tagName,yr.attributeName],color:"#EFCB43"}]}),Qy({variant:"dark",settings:{background:"#000205",foreground:"#FFFFFF",caret:"#E60065",selection:"#E60C6559",gutterBackground:"#000205",gutterForeground:"#ffffff90",lineHighlight:"#4DD7FC1A"},styles:[{tag:yr.comment,color:"#404040"},{tag:[yr.string,yr.special(yr.brace),yr.regexp],color:"#00D8FF"},{tag:yr.number,color:"#E62286"},{tag:[yr.variableName,yr.attributeName,yr.self],color:"#E62286",fontWeight:"bold"},{tag:yr.function(yr.variableName),color:"#fff",fontWeight:"bold"}]}),Qy({variant:"light",settings:{background:"#fff",foreground:"#000",caret:"#000",selection:"#BDD5FC",gutterBackground:"#fff",gutterForeground:"#00000070",lineHighlight:"#FFFBD1"},styles:[{tag:yr.comment,color:"#BCC8BA"},{tag:[yr.string,yr.special(yr.brace),yr.regexp],color:"#5D90CD"},{tag:[yr.number,yr.bool,yr.null],color:"#46A609"},{tag:yr.keyword,color:"#AF956F"},{tag:[yr.definitionKeyword,yr.modifier],color:"#C52727"},{tag:[yr.angleBracket,yr.tagName,yr.attributeName],color:"#606060"},{tag:yr.self,color:"#000"}]}),Qy({variant:"dark",settings:{background:"#00254b",foreground:"#FFFFFF",caret:"#FFFFFF",selection:"#B36539BF",gutterBackground:"#00254b",gutterForeground:"#FFFFFF70",lineHighlight:"#00000059"},styles:[{tag:yr.comment,color:"#0088FF"},{tag:yr.string,color:"#3AD900"},{tag:yr.regexp,color:"#80FFC2"},{tag:[yr.number,yr.bool,yr.null],color:"#FF628C"},{tag:[yr.definitionKeyword,yr.modifier],color:"#FFEE80"},{tag:yr.variableName,color:"#CCCCCC"},{tag:yr.self,color:"#FF80E1"},{tag:[yr.className,yr.definition(yr.propertyName),yr.function(yr.variableName),yr.definition(yr.typeName),yr.labelName],color:"#FFDD00"},{tag:[yr.keyword,yr.operator],color:"#FF9D00"},{tag:[yr.propertyName,yr.typeName],color:"#80FFBB"},{tag:yr.special(yr.brace),color:"#EDEF7D"},{tag:yr.attributeName,color:"#9EFFFF"},{tag:yr.derefOperator,color:"#fff"}]}),Qy({variant:"dark",settings:{background:"#060521",foreground:"#E0E0E0",caret:"#FFFFFFA6",selection:"#122BBB",gutterBackground:"#060521",gutterForeground:"#E0E0E090",lineHighlight:"#FFFFFF0F"},styles:[{tag:yr.comment,color:"#AEAEAE"},{tag:[yr.string,yr.special(yr.brace),yr.regexp],color:"#8DFF8E"},{tag:[yr.className,yr.definition(yr.propertyName),yr.function(yr.variableName),yr.function(yr.definition(yr.variableName)),yr.definition(yr.typeName)],color:"#A3EBFF"},{tag:[yr.number,yr.bool,yr.null],color:"#62E9BD"},{tag:[yr.keyword,yr.operator],color:"#2BF1DC"},{tag:[yr.definitionKeyword,yr.modifier],color:"#F8FBB1"},{tag:[yr.variableName,yr.self],color:"#B683CA"},{tag:[yr.angleBracket,yr.tagName,yr.typeName,yr.propertyName],color:"#60A4F1"},{tag:yr.derefOperator,color:"#E0E0E0"},{tag:yr.attributeName,color:"#7BACCA"}]}),Qy({variant:"dark",settings:{background:"#2d2f3f",foreground:"#f8f8f2",caret:"#f8f8f0",selection:"#44475a",gutterBackground:"#282a36",gutterForeground:"rgb(144, 145, 148)",lineHighlight:"#44475a"},styles:[{tag:yr.comment,color:"#6272a4"},{tag:[yr.string,yr.special(yr.brace)],color:"#f1fa8c"},{tag:[yr.number,yr.self,yr.bool,yr.null],color:"#bd93f9"},{tag:[yr.keyword,yr.operator],color:"#ff79c6"},{tag:[yr.definitionKeyword,yr.typeName],color:"#8be9fd"},{tag:yr.definition(yr.typeName),color:"#f8f8f2"},{tag:[yr.className,yr.definition(yr.propertyName),yr.function(yr.variableName),yr.attributeName],color:"#50fa7b"}]}),Qy({variant:"light",settings:{background:"#FFFFFF",foreground:"#000000",caret:"#000000",selection:"#80C7FF",gutterBackground:"#FFFFFF",gutterForeground:"#00000070",lineHighlight:"#C1E2F8"},styles:[{tag:yr.comment,color:"#AAAAAA"},{tag:[yr.keyword,yr.operator,yr.typeName,yr.tagName,yr.propertyName],color:"#2F6F9F",fontWeight:"bold"},{tag:[yr.attributeName,yr.definition(yr.propertyName)],color:"#4F9FD0"},{tag:[yr.className,yr.string,yr.special(yr.brace)],color:"#CF4F5F"},{tag:yr.number,color:"#CF4F5F",fontWeight:"bold"},{tag:yr.variableName,fontWeight:"bold"}]}),Qy({variant:"light",settings:{background:"#f2f1f8",foreground:"#0c006b",caret:"#5c49e9",selection:"#d5d1f2",gutterBackground:"#f2f1f8",gutterForeground:"#0c006b70",lineHighlight:"#e1def3"},styles:[{tag:yr.comment,color:"#9995b7"},{tag:yr.keyword,color:"#ff5792",fontWeight:"bold"},{tag:[yr.definitionKeyword,yr.modifier],color:"#ff5792"},{tag:[yr.className,yr.tagName,yr.definition(yr.typeName)],color:"#0094f0"},{tag:[yr.number,yr.bool,yr.null,yr.special(yr.brace)],color:"#5842ff"},{tag:[yr.definition(yr.propertyName),yr.function(yr.variableName)],color:"#0095a8"},{tag:yr.typeName,color:"#b3694d"},{tag:[yr.propertyName,yr.variableName],color:"#fa8900"},{tag:yr.operator,color:"#ff5792"},{tag:yr.self,color:"#e64100"},{tag:[yr.string,yr.regexp],color:"#00b368"},{tag:[yr.paren,yr.bracket],color:"#0431fa"},{tag:yr.labelName,color:"#00bdd6"},{tag:yr.attributeName,color:"#e64100"},{tag:yr.angleBracket,color:"#9995b7"}]}),Qy({variant:"light",settings:{background:"#faf4ed",foreground:"#575279",caret:"#575279",selection:"#6e6a8614",gutterBackground:"#faf4ed",gutterForeground:"#57527970",lineHighlight:"#6e6a860d"},styles:[{tag:yr.comment,color:"#9893a5"},{tag:[yr.bool,yr.null],color:"#286983"},{tag:yr.number,color:"#d7827e"},{tag:yr.className,color:"#d7827e"},{tag:[yr.angleBracket,yr.tagName,yr.typeName],color:"#56949f"},{tag:yr.attributeName,color:"#907aa9"},{tag:yr.punctuation,color:"#797593"},{tag:[yr.keyword,yr.modifier],color:"#286983"},{tag:[yr.string,yr.regexp],color:"#ea9d34"},{tag:yr.variableName,color:"#d7827e"}]}),Qy({variant:"light",settings:{background:"#FFFFFF",foreground:"#000000",caret:"#000000",selection:"#FFFD0054",gutterBackground:"#FFFFFF",gutterForeground:"#00000070",lineHighlight:"#00000008"},styles:[{tag:yr.comment,color:"#CFCFCF"},{tag:[yr.number,yr.bool,yr.null],color:"#E66C29"},{tag:[yr.className,yr.definition(yr.propertyName),yr.function(yr.variableName),yr.labelName,yr.definition(yr.typeName)],color:"#2EB43B"},{tag:yr.keyword,color:"#D8B229"},{tag:yr.operator,color:"#4EA44E",fontWeight:"bold"},{tag:[yr.definitionKeyword,yr.modifier],color:"#925A47"},{tag:yr.string,color:"#704D3D"},{tag:yr.typeName,color:"#2F8996"},{tag:[yr.variableName,yr.propertyName],color:"#77ACB0"},{tag:yr.self,color:"#77ACB0",fontWeight:"bold"},{tag:yr.regexp,color:"#E3965E"},{tag:[yr.tagName,yr.angleBracket],color:"#BAA827"},{tag:yr.attributeName,color:"#B06520"},{tag:yr.derefOperator,color:"#000"}]}),Qy({variant:"light",settings:{background:"#fef7e5",foreground:"#586E75",caret:"#000000",selection:"#073642",gutterBackground:"#fef7e5",gutterForeground:"#586E7580",lineHighlight:"#EEE8D5"},styles:[{tag:yr.comment,color:"#93A1A1"},{tag:yr.string,color:"#2AA198"},{tag:yr.regexp,color:"#D30102"},{tag:yr.number,color:"#D33682"},{tag:yr.variableName,color:"#268BD2"},{tag:[yr.keyword,yr.operator,yr.punctuation],color:"#859900"},{tag:[yr.definitionKeyword,yr.modifier],color:"#073642",fontWeight:"bold"},{tag:[yr.className,yr.self,yr.definition(yr.propertyName)],color:"#268BD2"},{tag:yr.function(yr.variableName),color:"#268BD2"},{tag:[yr.bool,yr.null],color:"#B58900"},{tag:yr.tagName,color:"#268BD2",fontWeight:"bold"},{tag:yr.angleBracket,color:"#93A1A1"},{tag:yr.attributeName,color:"#93A1A1"},{tag:yr.typeName,color:"#859900"}]}),Qy({variant:"light",settings:{background:"#FFFFFF",foreground:"#4D4D4C",caret:"#AEAFAD",selection:"#D6D6D6",gutterBackground:"#FFFFFF",gutterForeground:"#4D4D4C80",lineHighlight:"#EFEFEF"},styles:[{tag:yr.comment,color:"#8E908C"},{tag:[yr.variableName,yr.self,yr.propertyName,yr.attributeName,yr.regexp],color:"#C82829"},{tag:[yr.number,yr.bool,yr.null],color:"#F5871F"},{tag:[yr.className,yr.typeName,yr.definition(yr.typeName)],color:"#C99E00"},{tag:[yr.string,yr.special(yr.brace)],color:"#718C00"},{tag:yr.operator,color:"#3E999F"},{tag:[yr.definition(yr.propertyName),yr.function(yr.variableName)],color:"#4271AE"},{tag:yr.keyword,color:"#8959A8"},{tag:yr.derefOperator,color:"#4D4D4C"}]});const eb=Qy({variant:"light",settings:{background:"#ffffff",foreground:"#000000",caret:"#000000",selection:"#d7d4f0",lineHighlight:"#cceeff44",gutterBackground:"var(--color-background)",gutterForeground:"var(--gray-10)"},styles:[{tag:yr.comment,color:"#708090"},{tag:yr.variableName,color:"#000000"},{tag:[yr.string,yr.special(yr.brace)],color:"#a11"},{tag:yr.number,color:"#164"},{tag:yr.bool,color:"#219"},{tag:yr.null,color:"#219"},{tag:yr.keyword,color:"#708",fontWeight:500},{tag:yr.className,color:"#00f"},{tag:yr.definition(yr.typeName),color:"#00f"},{tag:yr.typeName,color:"#085"},{tag:yr.angleBracket,color:"#000000"},{tag:yr.tagName,color:"#170"},{tag:yr.attributeName,color:"#00c"},{tag:yr.operator,color:"#a2f",fontWeight:500},{tag:[yr.function(yr.variableName)],color:"#00c"},{tag:[yr.propertyName],color:"#05a"}]}),tb=Qy({variant:"dark",settings:{background:"#282c34",foreground:"#abb2bf",caret:"#528bff",selection:"#3E4451",lineHighlight:"#2c313c",gutterBackground:"var(--color-background)",gutterForeground:"var(--gray-10)"},styles:[{tag:yr.comment,color:"#5c6370"},{tag:yr.variableName,color:"#abb2bf"},{tag:[yr.string,yr.special(yr.brace)],color:"#98c379"},{tag:yr.number,color:"#d19a66"},{tag:yr.bool,color:"#d19a66"},{tag:yr.null,color:"#d19a66"},{tag:yr.keyword,color:"#c678dd",fontWeight:500},{tag:yr.className,color:"#61afef"},{tag:yr.definition(yr.typeName),color:"#61afef"},{tag:yr.typeName,color:"#56b6c2"},{tag:yr.angleBracket,color:"#abb2bf"},{tag:yr.tagName,color:"#e06c75"},{tag:yr.attributeName,color:"#d19a66"},{tag:yr.operator,color:"#56b6c2",fontWeight:500},{tag:[yr.function(yr.variableName)],color:"#61afef"},{tag:[yr.propertyName],color:"#e5c07b"}]});const nb="packages-install-input",rb=["%alias","%cd","%clear","%debug","%env","%load","%load_ext","%lsmagic","%matplotlib","%pwd","%who_ls","%system","%%time","%%timeit","%%writefile","%%capture","%%html","%%latex"];let ob;function sb(){const e=async e=>{const t=K.get(wr),n={...t,runtime:{...t.runtime,auto_reload:e}};await S({config:n}).then((()=>K.set(wr,n)))},t=()=>{requestAnimationFrame((()=>{const e=document.getElementById(nb);e&&e.focus()}))},n=[{match:"!pip install",onMatch:()=>{K.set(Yu,(e=>({...e,isSidebarOpen:!0,selectedPanel:"packages"}))),t()},title:"Package Installation",description:N.jsxs(N.Fragment,{children:["The package manager sidebar has been opened.",N.jsx("br",{}),"Install packages directly from there instead."]})},{match:"!uv pip install",onMatch:()=>{K.set(Yu,(e=>({...e,isSidebarOpen:!0,selectedPanel:"packages"}))),t()},title:"Package Installation",description:N.jsxs(N.Fragment,{children:["The package manager sidebar has been opened.",N.jsx("br",{}),"Install packages directly from there instead."]})},{match:"%autoreload 2",onMatch:async()=>{await e("autorun")},title:"Module reload",description:N.jsxs(N.Fragment,{children:["Module reload mode set to ",N.jsx("b",{children:"autorun"})," - module changes will re-run the cells that import them."]})},{match:"%autoreload 1",onMatch:async()=>{await e("lazy")},title:"Module reload",description:N.jsxs(N.Fragment,{children:["Module reload mode set to ",N.jsx("b",{children:"lazy"})," - module changes will mark the cells that import them as stale."]})},{match:"%autoreload 0",onMatch:async()=>{await e("off")},title:"Module reload",description:N.jsx(N.Fragment,{children:"Module reload disabled - module changes will not be detected."})},{match:"!ls",onMatch:()=>{},title:"Listing files",description:N.jsxs(N.Fragment,{children:["Shell commands are not directly supported.",N.jsx("br",{}),"Use ",N.jsx("code",{children:"import subprocess; subprocess.run(['ls'])"})," instead."]})},...rb.map((e=>({match:e,onMatch:()=>{},title:N.jsx(vr,{className:"inline",children:e}),description:N.jsxs(N.Fragment,{children:["Magic commands are not supported in marimo. Read more about replacements in the"," ",N.jsx("a",{href:"https://docs.marimo.io/guides/coming_from/jupyter/#adapting-to-the-absence-of-magic-commands",target:"_blank",className:"text-link underline cursor-pointer",rel:"noopener noreferrer",children:"documentation"}),"."]})})))],r=new Map(n.map((e=>[e.match,e])));return yn.updateListener.of((e=>{if(e.docChanged){const t=e.state.selection.main,n=e.state.doc,o=n.lineAt(t.head),s=n.sliceString(o.from,t.anchor).trim(),i=r.get(s);i&&(i.onMatch(),ob?ob.upsert({title:i.title,description:i.description}):ob=ee({title:i.title,description:i.description}))}}))}function ib(){return[yn.domEventHandlers({paste:(e,t)=>{var n;const r=null==(n=e.clipboardData)?void 0:n.getData("text/plain");if(!(null==r?void 0:r.includes("@app.cell")))return!1;const o=function(e){if(!e.includes("@app.cell"))return[];const t=[],n=e.split("\n");let r=[],o=!1,s=0,i=!1,a=!1,l=0;const c=/\(/g,d=/\)/g,u=new Set(["@"]);function h(e){return(e.match(c)||[]).length-(e.match(d)||[]).length}function f(){if(0!==r.length){for(;r.length>0&&r[r.length-1].trim().startsWith("return");)r.pop();r.some((e=>""!==e.trim()))&&t.push(function(e){const t=e.split("\n");if(0===t.length)return"";const n=t.filter((e=>e.trim().length>0));if(0===n.length)return"";const r=/^\s*/,o=Math.min(...n.map((e=>{var t;return(null==(t=e.match(r))?void 0:t[0].length)??Number.POSITIVE_INFINITY})));return 0===o?e.trim():t.map((e=>e.slice(o))).join("\n").trim()}(r.join("\n"))),r=[]}}for(const p of n){const e=p.trim();(e||o)&&(e.startsWith("@app.cell")?(f(),o=!0,s=1):s>0?(e.startsWith("def")&&e.includes("(")&&!e.includes("):")&&(i=!0,l=h(e)),s--):i?(l+=h(e),0===l&&(i=!1)):o&&(u.has(e[0])||e.startsWith("if __name__")?(f(),o=e.startsWith("@")):e.startsWith("return")?e.includes("(")&&!e.endsWith(")")&&(a=!0,l=h(e)):a?(l+=h(e),0===l&&(a=!1)):r.push(p)))}return f(),t}(r);if(0===o.length)return!1;return t.state.facet(kr).createManyBelow(o),!0}})]}const ab={showInput:"Mod-l",acceptEdit:"Mod-y",rejectEdit:"Mod-u"},lb=sr.define({combine:e=>Object.assign({},...e)}),cb=kn.define(),db=xn.define({create:()=>!1,update(e,t){for(const n of t.effects)if(n.is(cb))return n.value;return e},compare:(e,t)=>e===t}),ub=kn.define(),hb=xn.define({create:()=>({show:!1,from:0,to:0}),update(e,t){for(const n of t.effects)if(n.is(ub))return n.value;return e}}),fb=kn.define(),pb=xn.define({create:()=>null,update(e,t){for(const n of t.effects)if(n.is(fb))return n.value;return e}}),mb=kn.define(),gb=xn.define({create:()=>!1,update(e,t){for(const n of t.effects)if(n.is(mb))return n.value;return e}}),yb=yn.baseTheme({".cm-ai-tooltip":{userSelect:"none",pointerEvents:"none",fontFamily:"system-ui, -apple-system, sans-serif",position:"absolute",right:"8px",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","& > span":{pointerEvents:"auto",cursor:"pointer",display:"inline-block",padding:"2px"},"&:hover":{backgroundColor:"#1177bb"}},".cm-ai-input-container":{display:"flex",flexDirection:"column",gap:"4px",width:"calc(100% + 7px)",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":{fontSize:"10px",paddingLeft:"10px",height:"18px",color:"light-dark(rgb(109, 117, 125), rgb(170, 170, 170))"},".cm-ai-generate-btn":{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",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",bottom:"0",right:"0",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",opacity:"0.8",color:"white","&:hover":{opacity:"1"}},".cm-floating-reject":{backgroundColor:"light-dark(rgb(220, 53, 69), rgb(180, 40, 50))",color:"white",borderTopRightRadius:"5px",opacity:"0.8",borderBottomRightRadius:"5px","&:hover":{opacity:"1"}},".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-btn":{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"}}),bb="⌘",xb="⊞ Win",vb="Ctrl";function wb(e){if(!e.prompt)throw new Error("prompt function is required");const t={onAcceptEdit:e.onAcceptEdit,onRejectEdit:e.onRejectEdit,onError:e.onError||console.error,inputDebounceTime:e.inputDebounceTime||300,keymaps:{...ab,...e.keymaps}};return[lb.of(t),db,hb,pb,gb,kb,yb,er.of([{key:ab.showInput,run:Sb}]),rr.highest([er.of([{key:ab.acceptEdit,run:Cb},{key:ab.rejectEdit,run:Eb}])]),yn.updateListener.of((e=>{if(e.selectionSet){const{from:t,to:n}=e.state.selection.main,r=e.state.field(hb),o=e.state.field(pb),s=e.state.field(db),i=t!==n&&!r.show&&!o;s!==i&&e.view.dispatch({effects:cb.of(i)})}})),yn.decorations.of((e=>{const t=e.state.field(pb);return t?vn.set([vn.mark({class:"cm-new-code-line"}).range(t.from,t.to)]):vn.none})),yn.decorations.compute(["doc",hb],(t=>{const n=t.field(hb),r=[];if(n.show)for(let o=n.from;ovn.none,update(e,t){const n=t.state.field(pb);return n?vn.set([vn.widget({widget:new Nb(n.oldCode),block:!0}).range(n.from)]):vn.none},provide:e=>yn.decorations.from(e)})]}const kb=bn.fromClass(class{constructor(e){n(this,"decorations"),n(this,"tooltip",null),this.decorations=this.createDecorations(e)}update(e){const t=e.startState.doc,n=e.state.doc,r=e.startState.selection.main,o=e.state.selection.main;(t.lineAt(r.from).number!==n.lineAt(o.from).number||e.docChanged||e.viewportChanged||e.transactions.some((e=>e.effects.some((e=>e.is(cb))))))&&(this.decorations=this.createDecorations(e.view))}createDecorations(e){var t;const{from:n,to:r}=e.state.selection.main,o=e.state.field(hb),s=e.state.field(pb),i=e.state.field(db),a=e.state.doc;if(n===r||o.show||s||!i||n<0||r>a.length)return vn.none;let l=n,c=r;for(;ll&&0===a.lineAt(c).length;)c=a.lineAt(c-1).to;if(l===c)return vn.none;if(!this.tooltip){const n=e.state.facet(lb),r={...ab,...n.keymaps};this.tooltip=document.createElement("div"),this.tooltip.className="cm-ai-tooltip",this.tooltip.innerHTML=`Edit ${jb(r.showInput)}`,null==(t=this.tooltip.querySelector("span"))||t.addEventListener("click",(t=>{t.stopPropagation(),Sb(e)}))}const d=this.tooltip;return vn.set([vn.widget({widget:new class extends or{toDOM(){return d}ignoreEvent(){return!0}},side:-1}).range(l)])}destroy(){var e;null==(e=this.tooltip)||e.remove(),this.tooltip=null}},{decorations:e=>e.decorations}),Sb=e=>{const{state:t}=e,n=t.selection.main;if(n.from===n.to)return e.dispatch({effects:[cb.of(!1)]}),!1;const r=t.doc,o=r.lineAt(n.from),s=r.lineAt(n.to);if(t.sliceDoc(n.from,n.to).trim().length<1)return!1;const i=Math.max(0,Math.min(o.from,r.length)),a=Math.max(0,Math.min(s.to,r.length));return e.dispatch({effects:[ub.of({show:!0,from:i,to:a}),cb.of(!1)],selection:gn.cursor(i)}),!0},Cb=e=>!!e.state.field(pb)&&(e.dispatch({effects:[fb.of(null),ub.of({show:!1,from:0,to:0}),mb.of(!1)]}),!0),Eb=e=>{const t=e.state.field(pb);return!!t&&(e.dispatch({changes:{from:t.from,to:t.to,insert:t.oldCode},effects:[fb.of(null),ub.of({show:!1,from:0,to:0}),mb.of(!1)]}),!0)};class Nb extends or{constructor(e){super(),n(this,"oldCode"),this.oldCode=e}toDOM(e){const t=document.createElement("div");t.className="cm-old-code-container",t.setAttribute("role","region"),t.setAttribute("aria-label","Previous code version");const n=document.createElement("div");n.className="cm-old-code cm-line",n.textContent=this.oldCode;const r=document.createElement("div");r.className="cm-floating-buttons";const o=e.state.facet(lb),s={...ab,...o.keymaps},i=document.createElement("button");i.innerHTML=`${jb(s.acceptEdit)} Accept`,i.className="cm-floating-button cm-floating-accept",i.setAttribute("aria-label","Accept changes"),i.addEventListener("click",(t=>{t.preventDefault(),t.stopPropagation(),e.focus(),Cb(e)}));const a=document.createElement("button");return a.innerHTML=`${jb(s.rejectEdit)} Reject`,a.className="cm-floating-button cm-floating-reject",a.setAttribute("aria-label","Reject changes"),a.addEventListener("click",(t=>{t.preventDefault(),t.stopPropagation(),e.focus(),Eb(e)})),r.append(i,a),t.append(n,r),t}updateDOM(e,t){return!0}}function jb(e){return e.replace("Mod",navigator.platform.startsWith("Mac")?bb:navigator.platform.startsWith("Win")?xb:vb).replace("-"," ").toUpperCase()}class _b extends or{constructor(e){super(),n(this,"complete"),n(this,"abortController",null),this.complete=e}toDOM(e){const t=e.state.facet(lb),n=document.createElement("div");n.className="cm-ai-input-container";const r=document.createElement("form");r.className="cm-ai-input-form",r.setAttribute("role","search"),r.setAttribute("aria-label","AI editing instructions"),r.addEventListener("submit",(e=>e.preventDefault()));const o=document.createElement("input");o.className="cm-ai-input",o.placeholder="Editing instructions...",o.setAttribute("aria-label","AI editing instructions"),o.setAttribute("autocomplete","off"),o.setAttribute("spellcheck","true");const s=document.createElement("div");s.className="cm-ai-loading-container";const i=document.createElement("div");i.classList.add("cm-ai-loading-indicator"),i.setAttribute("role","status"),i.setAttribute("aria-live","polite"),i.textContent="Generating";const a=document.createElement("button");a.className="cm-ai-cancel-btn",a.textContent="Cancel",a.setAttribute("aria-label","Cancel code generation"),a.addEventListener("click",(()=>{this.cleanup(),e.dispatch({effects:[ub.of({show:!1,from:0,to:0}),mb.of(!1)]}),e.focus()})),s.append(a,i);const l=document.createElement("div");l.className="cm-ai-help-info",l.setAttribute("role","status"),l.setAttribute("aria-live","polite"),l.textContent="Esc to close";e.state.field(gb)?(l.classList.add("hidden"),o.disabled=!0):s.classList.add("hidden"),requestAnimationFrame((()=>o.focus()));const c=async()=>{var n;const r=e.state.field(hb),i=o.value.trim();if(!r.show||!i)return;const a=e.state.sliceDoc(r.from,r.to),c=e.state.sliceDoc(0,r.from),d=e.state.sliceDoc(r.to);this.abortController=new AbortController,e.dispatch({effects:mb.of(!0)}),s.classList.remove("hidden"),l.classList.add("hidden"),o.disabled=!0;try{const t=await this.complete({prompt:i,selection:a,codeBefore:c,codeAfter:d,editorView:e,signal:this.abortController.signal});if(!e.state.field(hb).show)return;if(!t||"string"!=typeof t)throw new Error("Invalid completion result");e.dispatch({changes:{from:r.from,to:r.to,insert:t},effects:[ub.of({show:!1,from:r.from,to:r.to}),fb.of({from:r.from,to:r.from+t.length,oldCode:a,newCode:t}),mb.of(!1)],selection:gn.cursor(r.to)})}catch(u){if(u instanceof DOMException&&"AbortError"===u.name)return;null==(n=t.onError)||n.call(t,u)}finally{this.cleanup(),s.classList.add("hidden"),l.classList.remove("hidden"),o.disabled=!1,e.focus()}};let d="";return o.addEventListener("input",(()=>{const e=o.value.trim();if(e!==d)if(d=e,l.textContent="",e){const e=document.createElement("button");e.className="cm-ai-generate-btn",e.textContent="⏎ Generate",e.setAttribute("aria-label","Generate code"),e.addEventListener("click",c),l.appendChild(e)}else{const e=document.createTextNode("Esc to close");l.appendChild(e)}})),o.addEventListener("keydown",(async t=>{"Enter"!==t.key||t.shiftKey?"Escape"===t.key&&(this.cleanup(),e.dispatch({effects:[ub.of({show:!1,from:0,to:0}),mb.of(!1)]}),e.focus()):(t.preventDefault(),await c())})),r.append(o),n.append(r,s,l),n}cleanup(){var e;null==(e=this.abortController)||e.abort(),this.abortController=null}destroy(){this.cleanup()}}const Ib=e=>{const{cellId:t,cellMovementCallbacks:n,cellCodeCallbacks:r,keymapConfig:o,hotkeys:s,enableAI:i}=e;return[Dl(o,n),[yn.domEventHandlers({drop:(e,t)=>{var n,r;const o=null==(n=e.dataTransfer)?void 0:n.files[0];if(null==o?void 0:o.type.startsWith("text/"))return e.preventDefault(),br(t,o),!0;if(null==o?void 0:o.type.startsWith("image/"))return e.preventDefault(),xr(t,o),!0;const s=null==(r=e.dataTransfer)?void 0:r.getData("text/plain");if(s){e.preventDefault();const n=t.posAtCoords({x:e.clientX,y:e.clientY});return null!==n&&t.dispatch({changes:{from:n,to:n,insert:s},scrollIntoView:!0}),!0}return!1},dragover:e=>{e.preventDefault()}})],ib(),sb(),Er(t,n,s),Nr(t,r,s),Ab(e),[Ky,(a=(e,t)=>{pr(e,t)},bn.define((e=>new Zy(e,a)))),yn.baseTheme({".underline":{textDecoration:"underline",cursor:"pointer",color:"var(--link)"}})],i&&iu("inline_ai_tooltip")?wb({prompt:e=>async function(e){var t,n;const r=`\nGiven the following code context, ${e.prompt}\n\nSELECTED CODE:\n${e.selection}\n\nCODE BEFORE SELECTION:\n${e.codeBefore}\n\nCODE AFTER SELECTION:\n${e.codeAfter}\n\nInstructions:\n1. Modify ONLY the selected code\n2. Keep the same indentation selected code\n3. Maintain consistent style with surrounding code\n4. Ensure the edit is complete and can be inserted directly\n5. Return ONLY the replacement code, no explanations, no code fences.\n\nYour task: ${e.prompt}`,o=await fetch(Sr("api/ai/completion").toString(),{method:"POST",headers:Cr.headers(),body:JSON.stringify({prompt:r,code:"",includeOtherCode:"",language:e.language})}),s=(null==(t=e.selection.match(/^\s*/))?void 0:t[0])||"",i=null==(n=o.body)?void 0:n.getReader();if(!i)throw new Error("Failed to get response reader");let a="";for(;;){const{done:e,value:t}=await i.read();if(e)break;a+=(new TextDecoder).decode(t)}return a.startsWith(s)||(a=s+a),a}({prompt:e.prompt,selection:e.selection,codeBefore:e.codeBefore,codeAfter:e.codeAfter,language:to(e.editorView)})}):[]];var a},Ab=e=>{const{theme:t,hotkeys:n,completionConfig:r}=e;return[yn.lineWrapping,jr(),_r(),Ir(),Ar(),Tr(),Mr(),Or(),Dr({position:"fixed",parent:document.querySelector("#App")??void 0}),Rr(),"dark"===t?tb:eb,Pr(),qy(r),Lr(),zr(),rr.high(er.of(Wr)),Fr(),Br(),Ur.of(" "),gr(Gr,{fallback:!0}),er.of(qr),$r(e),Vr.of(Yr()),Hr.allowMultipleSelections.of(!0),Wf(n),er.of([{key:"Tab",run:e=>Jr(e)||(e=>{const{from:t,to:n}=e.state.selection.main;if(t!==n)return!1;const r=e.state.doc.lineAt(n);return""!==r.text.slice(0,n-r.from).trim()&&eo(e)})(e)||Xr(e),preventDefault:!0},{key:n.getHotkey("completion.moveDown").key,run:e=>null!==lr(e.state)&&(Kr(!0)(e),!0),preventDefault:!0},{key:n.getHotkey("completion.moveUp").key,run:e=>null!==lr(e.state)&&(Kr(!1)(e),!0),preventDefault:!0}]),er.of([...Zr,Qr])]};function Tb(e){const t=e.current;if(null===t)throw new ReferenceError("Attempting to dereference null object.");return t}var Mb="ContextMenu",[Ob,Db]=so(Mb,[no]),Rb=no(),[Pb,Lb]=Ob(Mb),zb=e=>{const{__scopeContextMenu:t,children:n,onOpenChange:r,dir:s,modal:i=!0}=e,[a,l]=o.useState(!1),c=Rb(t),d=vo(r),u=o.useCallback((e=>{l(e),d(e)}),[d]);return N.jsx(Pb,{scope:t,open:a,onOpenChange:u,modal:i,children:N.jsx(wo,{...c,dir:s,open:a,onOpenChange:u,modal:i,children:n})})};zb.displayName=Mb;var Fb="ContextMenuTrigger",Bb=o.forwardRef(((e,t)=>{const{__scopeContextMenu:n,disabled:r=!1,...s}=e,i=Lb(Fb,n),a=Rb(n),l=o.useRef({x:0,y:0}),c=o.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...l.current})}),d=o.useRef(0),u=o.useCallback((()=>window.clearTimeout(d.current)),[]),h=e=>{l.current={x:e.clientX,y:e.clientY},i.onOpenChange(!0)};return o.useEffect((()=>u),[u]),o.useEffect((()=>{r&&u()}),[r,u]),N.jsxs(N.Fragment,{children:[N.jsx(io,{...a,virtualRef:c}),N.jsx(ao.span,{"data-state":i.open?"open":"closed","data-disabled":r?"":void 0,...s,ref:t,style:{WebkitTouchCallout:"none",...e.style},onContextMenu:r?e.onContextMenu:lo(e.onContextMenu,(e=>{u(),h(e),e.preventDefault()})),onPointerDown:r?e.onPointerDown:lo(e.onPointerDown,Zb((e=>{u(),d.current=window.setTimeout((()=>h(e)),700)}))),onPointerMove:r?e.onPointerMove:lo(e.onPointerMove,Zb(u)),onPointerCancel:r?e.onPointerCancel:lo(e.onPointerCancel,Zb(u)),onPointerUp:r?e.onPointerUp:lo(e.onPointerUp,Zb(u))})]})}));Bb.displayName=Fb;var Ub=e=>{const{__scopeContextMenu:t,...n}=e,r=Rb(t);return N.jsx(ko,{...r,...n})};Ub.displayName="ContextMenuPortal";var $b="ContextMenuContent",Vb=o.forwardRef(((e,t)=>{const{__scopeContextMenu:n,...r}=e,s=Lb($b,n),i=Rb(n),a=o.useRef(!1);return N.jsx(co,{...i,...r,ref:t,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:t=>{var n;null==(n=e.onCloseAutoFocus)||n.call(e,t),!t.defaultPrevented&&a.current&&t.preventDefault(),a.current=!1},onInteractOutside:t=>{var n;null==(n=e.onInteractOutside)||n.call(e,t),t.defaultPrevented||s.modal||(a.current=!0)},style:{...e.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})}));Vb.displayName=$b;o.forwardRef(((e,t)=>{const{__scopeContextMenu:n,...r}=e,o=Rb(n);return N.jsx(uo,{...o,...r,ref:t})})).displayName="ContextMenuGroup";var Hb=o.forwardRef(((e,t)=>{const{__scopeContextMenu:n,...r}=e,o=Rb(n);return N.jsx(ho,{...o,...r,ref:t})}));Hb.displayName="ContextMenuLabel";var Wb=o.forwardRef(((e,t)=>{const{__scopeContextMenu:n,...r}=e,o=Rb(n);return N.jsx(oo,{...o,...r,ref:t})}));Wb.displayName="ContextMenuItem";var Gb=o.forwardRef(((e,t)=>{const{__scopeContextMenu:n,...r}=e,o=Rb(n);return N.jsx(fo,{...o,...r,ref:t})}));Gb.displayName="ContextMenuCheckboxItem";o.forwardRef(((e,t)=>{const{__scopeContextMenu:n,...r}=e,o=Rb(n);return N.jsx(po,{...o,...r,ref:t})})).displayName="ContextMenuRadioGroup";var qb=o.forwardRef(((e,t)=>{const{__scopeContextMenu:n,...r}=e,o=Rb(n);return N.jsx(mo,{...o,...r,ref:t})}));qb.displayName="ContextMenuRadioItem";var Yb=o.forwardRef(((e,t)=>{const{__scopeContextMenu:n,...r}=e,o=Rb(n);return N.jsx(go,{...o,...r,ref:t})}));Yb.displayName="ContextMenuItemIndicator";var Jb=o.forwardRef(((e,t)=>{const{__scopeContextMenu:n,...r}=e,o=Rb(n);return N.jsx(ro,{...o,...r,ref:t})}));Jb.displayName="ContextMenuSeparator";o.forwardRef(((e,t)=>{const{__scopeContextMenu:n,...r}=e,o=Rb(n);return N.jsx(yo,{...o,...r,ref:t})})).displayName="ContextMenuArrow";var Xb=o.forwardRef(((e,t)=>{const{__scopeContextMenu:n,...r}=e,o=Rb(n);return N.jsx(bo,{...o,...r,ref:t})}));Xb.displayName="ContextMenuSubTrigger";var Kb=o.forwardRef(((e,t)=>{const{__scopeContextMenu:n,...r}=e,o=Rb(n);return N.jsx(xo,{...o,...r,ref:t,style:{...e.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})}));function Zb(e){return t=>"mouse"!==t.pointerType?e(t):void 0}Kb.displayName="ContextMenuSubContent";var Qb=Vb,ex=Hb,tx=Wb,nx=Gb,rx=qb,ox=Yb,sx=Jb,ix=Xb,ax=Kb;const lx=zb,cx=Bb,dx=Eo(Ub);o.forwardRef(((e,t)=>{const n=C.c(14);let r,o,s,i,a,l,c;return n[0]!==e?(({className:o,inset:s,children:r,...i}=e),n[0]=e,n[1]=r,n[2]=o,n[3]=s,n[4]=i):(r=n[1],o=n[2],s=n[3],i=n[4]),n[5]!==o||n[6]!==s?(a=No({className:o,inset:s}),n[5]=o,n[6]=s,n[7]=a):a=n[7],n[8]===Symbol.for("react.memo_cache_sentinel")?(l=N.jsx(To,{className:"ml-auto h-4 w-4"}),n[8]=l):l=n[8],n[9]!==r||n[10]!==i||n[11]!==t||n[12]!==a?(c=N.jsxs(ix,{ref:t,className:a,...i,children:[r,l]}),n[9]=r,n[10]=i,n[11]=t,n[12]=a,n[13]=c):c=n[13],c})).displayName=ix.displayName;const ux="data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2";o.forwardRef(((e,t)=>{const n=C.c(9);let r,o,s,i;return n[0]!==e?(({className:r,...o}=e),n[0]=e,n[1]=r,n[2]=o):(r=n[1],o=n[2]),n[3]!==r?(s=An(jo({subcontent:!0}),ux,r),n[3]=r,n[4]=s):s=n[4],n[5]!==o||n[6]!==t||n[7]!==s?(i=N.jsx(ax,{ref:t,className:s,...o}),n[5]=o,n[6]=t,n[7]=s,n[8]=i):i=n[8],i})).displayName=ax.displayName;const hx=o.forwardRef(((e,t)=>{const n=C.c(9);let r,o,s,i;return n[0]!==e?(({className:r,...o}=e),n[0]=e,n[1]=r,n[2]=o):(r=n[1],o=n[2]),n[3]!==r?(s=An(jo(),ux,r),n[3]=r,n[4]=s):s=n[4],n[5]!==o||n[6]!==t||n[7]!==s?(i=N.jsx(dx,{children:N.jsx(_o,{children:N.jsx(Qb,{ref:t,className:s,...o})})}),n[5]=o,n[6]=t,n[7]=s,n[8]=i):i=n[8],i}));hx.displayName=Qb.displayName;const fx=o.forwardRef(((e,t)=>{const n=C.c(13);let r,o,s,i,a,l;return n[0]!==e?(({className:r,inset:o,variant:i,...s}=e),n[0]=e,n[1]=r,n[2]=o,n[3]=s,n[4]=i):(r=n[1],o=n[2],s=n[3],i=n[4]),n[5]!==r||n[6]!==o||n[7]!==i?(a=Co({className:r,inset:o,variant:i}),n[5]=r,n[6]=o,n[7]=i,n[8]=a):a=n[8],n[9]!==s||n[10]!==t||n[11]!==a?(l=N.jsx(tx,{ref:t,className:a,...s}),n[9]=s,n[10]=t,n[11]=a,n[12]=l):l=n[12],l}));fx.displayName=tx.displayName;o.forwardRef(((e,t)=>{const n=C.c(15);let r,o,s,i,a,l,c,d;return n[0]!==e?(({className:s,children:o,checked:r,...i}=e),n[0]=e,n[1]=r,n[2]=o,n[3]=s,n[4]=i):(r=n[1],o=n[2],s=n[3],i=n[4]),n[5]!==s?(a=Io({className:s}),n[5]=s,n[6]=a):a=n[6],n[7]===Symbol.for("react.memo_cache_sentinel")?(l=Io(),n[7]=l):l=n[7],n[8]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsx("span",{className:l,children:N.jsx(ox,{children:N.jsx(Mo,{className:"h-4 w-4"})})}),n[8]=c):c=n[8],n[9]!==r||n[10]!==o||n[11]!==i||n[12]!==t||n[13]!==a?(d=N.jsxs(nx,{ref:t,className:a,checked:r,...i,children:[c,o]}),n[9]=r,n[10]=o,n[11]=i,n[12]=t,n[13]=a,n[14]=d):d=n[14],d})).displayName=nx.displayName;o.forwardRef(((e,t)=>{const n=C.c(13);let r,o,s,i,a,l,c;return n[0]!==e?(({className:o,children:r,...s}=e),n[0]=e,n[1]=r,n[2]=o,n[3]=s):(r=n[1],o=n[2],s=n[3]),n[4]!==o?(i=Io({className:o}),n[4]=o,n[5]=i):i=n[5],n[6]===Symbol.for("react.memo_cache_sentinel")?(a=Io(),n[6]=a):a=n[6],n[7]===Symbol.for("react.memo_cache_sentinel")?(l=N.jsx("span",{className:a,children:N.jsx(ox,{children:N.jsx(Oo,{className:"h-4 w-4 fill-current"})})}),n[7]=l):l=n[7],n[8]!==r||n[9]!==s||n[10]!==t||n[11]!==i?(c=N.jsxs(rx,{ref:t,className:i,...s,children:[l,r]}),n[8]=r,n[9]=s,n[10]=t,n[11]=i,n[12]=c):c=n[12],c})).displayName=rx.displayName;o.forwardRef(((e,t)=>{const n=C.c(11);let r,o,s,i,a;return n[0]!==e?(({className:r,inset:o,...s}=e),n[0]=e,n[1]=r,n[2]=o,n[3]=s):(r=n[1],o=n[2],s=n[3]),n[4]!==r||n[5]!==o?(i=Ao({className:r,inset:o}),n[4]=r,n[5]=o,n[6]=i):i=n[6],n[7]!==s||n[8]!==t||n[9]!==i?(a=N.jsx(ex,{ref:t,className:i,...s}),n[7]=s,n[8]=t,n[9]=i,n[10]=a):a=n[10],a})).displayName=ex.displayName;const px=o.forwardRef(((e,t)=>{const n=C.c(9);let r,o,s,i;return n[0]!==e?(({className:r,...o}=e),n[0]=e,n[1]=r,n[2]=o):(r=n[1],o=n[2]),n[3]!==r?(s=An(So({className:r})),n[3]=r,n[4]=s):s=n[4],n[5]!==o||n[6]!==t||n[7]!==s?(i=N.jsx(sx,{ref:t,className:s,...o}),n[5]=o,n[6]=t,n[7]=s,n[8]=i):i=n[8],i}));px.displayName=sx.displayName;const mx=e=>{const t=C.c(14),{appClosed:n,onClick:r,tooltipContent:o}=e;let s;t[0]!==r?(s=()=>null==r?void 0:r({code:""}),t[0]=r,t[1]=s):s=t[1];const i=n&&" inactive-button";let a,l,c,d,u;return t[2]!==i?(a=An("shoulder-button hover-action",i),t[2]=i,t[3]=a):a=t[3],t[4]===Symbol.for("react.memo_cache_sentinel")?(l=N.jsx(Do,{strokeWidth:1.8}),t[4]=l):l=t[4],t[5]!==s||t[6]!==a?(c=N.jsx(Sl,{onClick:s,className:a,onMouseDown:ot.preventFocus,shape:"circle",size:"small",color:"hint-green","data-testid":"create-cell-button",children:l}),t[5]=s,t[6]=a,t[7]=c):c=t[7],t[8]!==c||t[9]!==o?(d=N.jsx(it,{content:o,usePortal:!1,children:c}),t[8]=c,t[9]=o,t[10]=d):d=t[10],t[11]!==r||t[12]!==d?(u=N.jsx(gx,{onClick:r,children:d}),t[11]=r,t[12]=d,t[13]=u):u=t[13],u},gx=e=>{const t=C.c(24),{children:n,onClick:r}=e;if(!r)return n;let o,s,i,a,l,c,d,u,h,f,p,m;return t[0]!==n?(o=N.jsx(cx,{children:n}),t[0]=n,t[1]=o):o=t[1],t[2]!==r?(s=e=>{e.stopPropagation(),r({code:""})},t[2]=r,t[3]=s):s=t[3],t[4]===Symbol.for("react.memo_cache_sentinel")?(i=N.jsx("div",{className:"mr-3 text-muted-foreground",children:N.jsx(yl,{})}),t[4]=i):i=t[4],t[5]!==s?(a=N.jsxs(fx,{onSelect:s,children:[i,"Python cell"]},"python"),t[5]=s,t[6]=a):a=t[6],t[7]!==r?(l=e=>{e.stopPropagation(),r({code:(new Rt).defaultCode})},t[7]=r,t[8]=l):l=t[8],t[9]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsx("div",{className:"mr-3 text-muted-foreground",children:N.jsx(gl,{})}),t[9]=c):c=t[9],t[10]!==l?(d=N.jsxs(fx,{onSelect:l,children:[c,"Markdown cell"]},"markdown"),t[10]=l,t[11]=d):d=t[11],t[12]!==r?(u=e=>{e.stopPropagation(),r({code:(new Ro).getDefaultCode()})},t[12]=r,t[13]=u):u=t[13],t[14]===Symbol.for("react.memo_cache_sentinel")?(h=N.jsx("div",{className:"mr-3 text-muted-foreground",children:N.jsx(ve,{size:13,strokeWidth:1.5})}),t[14]=h):h=t[14],t[15]!==u?(f=N.jsxs(fx,{onSelect:u,children:[h,"SQL cell"]},"sql"),t[15]=u,t[16]=f):f=t[16],t[17]!==a||t[18]!==d||t[19]!==f?(p=N.jsxs(hx,{children:[a,d,f]}),t[17]=a,t[18]=d,t[19]=f,t[20]=p):p=t[20],t[21]!==o||t[22]!==p?(m=N.jsxs(lx,{children:[o,p]}),t[21]=o,t[22]=p,t[23]=m):m=t[23],m},yx=Po("rounded-full shadow-xsSolid border p-[5px] transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 [&>svg]:size-3 active:shadow-none bg-background",{variants:{variant:{default:"hover:bg-accent hover:text-accent-foreground",stale:"bg-[var(--yellow-3)] hover:bg-[var(--yellow-4)] text-[var(--yellow-11)]",green:"hover:bg-[var(--grass-2)] hover:text-[var(--grass-11)] hover:border-[var(--grass-7)],",disabled:"opacity-50 cursor-not-allowed",danger:"hover:bg-[var(--red-3)] hover:text-[var(--red-11)]"}},defaultVariants:{variant:"default"}}),bx=e=>{const t=C.c(21);let n,r,o,s,i;t[0]!==e?(({children:n,tooltip:s,disabled:o,variant:i,...r}=e),t[0]=e,t[1]=n,t[2]=r,t[3]=o,t[4]=s,t[5]=i):(n=t[1],r=t[2],o=t[3],s=t[4],i=t[5]);const a=void 0!==o&&o;let l,c,d;t[6]!==a||t[7]!==r?(l=e=>{var t;a||null==(t=r.onClick)||t.call(r,e)},t[6]=a,t[7]=r,t[8]=l):l=t[8],t[9]!==r.className||t[10]!==i?(c=An(yx({variant:i}),r.className),t[9]=r.className,t[10]=i,t[11]=c):c=t[11],t[12]!==n||t[13]!==a||t[14]!==r||t[15]!==l||t[16]!==c?(d=N.jsx("button",{disabled:a,...r,onClick:l,onMouseDown:ot.preventFocus,className:c,children:n}),t[12]=n,t[13]=a,t[14]=r,t[15]=l,t[16]=c,t[17]=d):d=t[17];const u=d;if(s){let e;return t[18]!==u||t[19]!==s?(e=N.jsx(it,{content:s,side:"top",delayDuration:200,usePortal:!1,children:u}),t[18]=u,t[19]=s,t[20]=e):e=t[20],e}return u},xx=({children:e,className:t})=>N.jsx(Qd,{className:An("flex items-center gap-1 bg-background m-[2px] rounded-full",t),children:e});const vx=e=>{const t=C.c(22),{onClick:n,appClosed:r,needsRun:o,status:s,config:i,edited:a}=e,l="disabled-transitively"===s,c="running"===s||"queued"===s,d=r||c||!i.disabled&&l&&!a;let u;t[0]!==r||t[1]!==d||t[2]!==c||t[3]!==o?(u=function(e,t,n,r){return e?"disabled":t&&!n?"stale":n||r?"disabled":"green"}(r,o,c,d),t[0]=r,t[1]=d,t[2]=c,t[3]=o,t[4]=u):u=t[4];const h=u;if(i.disabled){let e,r;return t[5]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx(ad,{}),t[5]=e):e=t[5],t[6]!==d||t[7]!==n||t[8]!==h?(r=N.jsx(bx,{tooltip:"Add code to notebook",disabled:d,onClick:n,variant:h,"data-testid":"run-button",children:e}),t[6]=d,t[7]=n,t[8]=h,t[9]=r):r=t[9],r}if(!i.disabled&&l&&!a){let e,r;return t[10]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx(Nd,{strokeWidth:1.2}),t[10]=e):e=t[10],t[11]!==d||t[12]!==n||t[13]!==h?(r=N.jsx(bx,{disabled:d,tooltip:"This cell can't be run because it has a disabled ancestor",onClick:n,variant:h,"data-testid":"run-button",children:e}),t[11]=d,t[12]=n,t[13]=h,t[14]=r):r=t[14],r}let f,p,m;if(r)f="App disconnected";else if("queued"===s)f="This cell is already queued to run";else if("running"===s)f="This cell is already running.";else{let e;t[15]===Symbol.for("react.memo_cache_sentinel")?(e=Bt("cell.run"),t[15]=e):e=t[15],f=e}return t[16]===Symbol.for("react.memo_cache_sentinel")?(p=N.jsx(Nd,{strokeWidth:1.2}),t[16]=p):p=t[16],t[17]!==d||t[18]!==n||t[19]!==f||t[20]!==h?(m=N.jsx(bx,{tooltip:f,disabled:d,onClick:n,variant:h,"data-testid":"run-button",children:p}),t[17]=d,t[18]=n,t[19]=f,t[20]=h,t[21]=m):m=t[21],m},wx=e=>{const t=C.c(10),{status:n,appClosed:r,onClick:o}=e;let s;s=r?"App disconnected":"running"===n?"A cell can't be deleted when it's running":"queued"===n?"A cell can't be deleted when it's queued to run":"Delete";const i=s,a=(r||("running"===n||"queued"===n))&&"inactive-button";let l,c,d,u,h;return t[0]!==a?(l=An("hover:bg-transparent text-destructive/60 hover:text-destructive",a),t[0]=a,t[1]=l):l=t[1],t[2]===Symbol.for("react.memo_cache_sentinel")?(c={boxShadow:"none"},d=N.jsx(je,{size:14}),t[2]=c,t[3]=d):(c=t[2],d=t[3]),t[4]!==o||t[5]!==l?(u=N.jsx(J,{variant:"ghost",size:"icon",onClick:o,"data-testid":"delete-button",onMouseDown:ot.preventFocus,className:l,style:c,children:d}),t[4]=o,t[5]=l,t[6]=u):u=t[6],t[7]!==u||t[8]!==s?(h=N.jsx(it,{content:i,usePortal:!1,children:u}),t[7]=u,t[8]=s,t[9]=h):h=t[9],h};const kx=new Intl.DateTimeFormat("en-US",{hour:"numeric",minute:"numeric",second:"numeric",fractionalSecondDigits:3,hour12:!0}),Sx=new Intl.DateTimeFormat("en-US",{month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",fractionalSecondDigits:3,hour12:!0}),Cx=e=>{const t=C.c(79),{editing:n,status:r,disabled:o,staleInputs:s,edited:i,interrupted:a,elapsedTime:l,runStartTimestamp:c,lastRunStartTimestamp:d,uninstantiated:u}=e;if(!n)return null;const h=c??d;let f;t[0]!==h?(f=h?N.jsx(Nx,{lastRanTime:h}):null,t[0]=h,t[1]=f):f=t[1];const p=f;if(o&&"running"===r)return w.error("CellStatusComponent: disabled and running"),null;if(o&&s){let e,n,r,o;return t[2]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx("span",{children:"This cell is stale, but it's disabled and can't be run"}),t[2]=e):e=t[2],t[3]!==p?(n=N.jsxs("div",{className:"flex flex-col gap-1",children:[e,p]}),t[3]=p,t[4]=n):n=t[4],t[5]===Symbol.for("react.memo_cache_sentinel")?(r=N.jsx("div",{className:"cell-status-icon cell-status-stale","data-testid":"cell-status","data-status":"stale",children:N.jsxs(mu,{children:[N.jsx(Lc,{className:"h-5 w-5",strokeWidth:1.5}),N.jsx(zo,{className:"h-3 w-3",strokeWidth:2.5})]})}),t[5]=r):r=t[5],t[6]!==n?(o=N.jsx(it,{content:n,usePortal:!0,children:r}),t[6]=n,t[7]=o):o=t[7],o}if(o){let e,n,r,o;return t[8]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx("span",{children:"This cell is disabled"}),t[8]=e):e=t[8],t[9]!==p?(n=N.jsxs("div",{className:"flex flex-col gap-1",children:[e,p]}),t[9]=p,t[10]=n):n=t[10],t[11]===Symbol.for("react.memo_cache_sentinel")?(r=N.jsx("div",{className:"cell-status-icon cell-status-disabled","data-testid":"cell-status","data-status":"disabled",children:N.jsx(Lc,{className:"h-5 w-5",strokeWidth:1.5})}),t[11]=r):r=t[11],t[12]!==n?(o=N.jsx(it,{content:n,usePortal:!0,children:r}),t[12]=n,t[13]=o):o=t[13],o}if(!s&&"disabled-transitively"===r){let e,n,r,o;return t[14]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx("span",{children:"An ancestor of this cell is disabled, so it can't be run"}),t[14]=e):e=t[14],t[15]!==p?(n=N.jsxs("div",{className:"flex flex-col gap-1",children:[e,p]}),t[15]=p,t[16]=n):n=t[16],t[17]===Symbol.for("react.memo_cache_sentinel")?(r=N.jsx("div",{className:"cell-status-icon cell-status-stale","data-testid":"cell-status","data-status":"disabled-transitively",children:N.jsxs(mu,{layerTop:!0,children:[N.jsx(Jd,{className:"h-5 w-5",strokeWidth:1.5}),N.jsx(Lc,{className:"h-3 w-3",strokeWidth:2.5})]})}),t[17]=r):r=t[17],t[18]!==n?(o=N.jsx(it,{content:n,usePortal:!0,children:r}),t[18]=n,t[19]=o):o=t[19],o}if(s&&"disabled-transitively"===r){let e,n,r,o;return t[20]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx("span",{children:"This cell is stale, but an ancestor is disabled so it can't be run"}),t[20]=e):e=t[20],t[21]!==p?(n=N.jsxs("div",{className:"flex flex-col gap-1",children:[e,p]}),t[21]=p,t[22]=n):n=t[22],t[23]===Symbol.for("react.memo_cache_sentinel")?(r=N.jsx("div",{className:"cell-status-icon cell-status-stale","data-testid":"cell-status","data-status":"stale",children:N.jsxs(mu,{children:[N.jsx(zo,{className:"h-5 w-5",strokeWidth:1}),N.jsx(Lc,{className:"h-3 w-3",strokeWidth:2.5})]})}),t[23]=r):r=t[23],t[24]!==n?(o=N.jsx(it,{content:n,usePortal:!0,children:r}),t[24]=n,t[25]=o):o=t[25],o}if("running"===r){let e,n,r,o,s;return t[26]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx("span",{children:"This cell is running"}),t[26]=e):e=t[26],t[27]!==p?(n=N.jsxs("div",{className:"flex flex-col gap-1",children:[e,p]}),t[27]=p,t[28]=n):n=t[28],t[29]!==c?(r=Lo.fromSeconds(c)||Lo.now(),t[29]=c,t[30]=r):r=t[30],t[31]!==r?(o=N.jsx("div",{className:"cell-status-icon elapsed-time running","data-testid":"cell-status","data-status":"running",children:N.jsx(_x,{startTime:r})}),t[31]=r,t[32]=o):o=t[32],t[33]!==n||t[34]!==o?(s=N.jsx(it,{content:n,usePortal:!0,children:o}),t[33]=n,t[34]=o,t[35]=s):s=t[35],s}if("queued"===r){let e,n,r,o;return t[36]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx("span",{children:"This cell is queued to run"}),t[36]=e):e=t[36],t[37]!==p?(n=N.jsxs("div",{className:"flex flex-col gap-1",children:[e,p]}),t[37]=p,t[38]=n):n=t[38],t[39]===Symbol.for("react.memo_cache_sentinel")?(r=N.jsx("div",{className:"cell-status-icon cell-status-queued","data-testid":"cell-status","data-status":"queued",children:N.jsx(rc,{className:"h-5 w-5",strokeWidth:1.5})}),t[39]=r):r=t[39],t[40]!==n?(o=N.jsx(it,{content:n,usePortal:!0,children:r}),t[40]=n,t[41]=o):o=t[41],o}if(i||a||s||u){let e;t[42]!==l?(e=jx(l),t[42]=l,t[43]=e):e=t[43];const n=e;let r;t[44]!==l||t[45]!==n?(r=l?N.jsx(Ex,{elapsedTime:n}):null,t[44]=l,t[45]=n,t[46]=r):r=t[46];const o=r;let s,c,d,h,f,m="";if(u)s="This cell has not yet been run";else if(a){let e;s="This cell was interrupted when it was last run",t[47]!==o?(e=N.jsxs("span",{children:["This cell ran for ",o," before being interrupted"]}),t[47]=o,t[48]=e):e=t[48],m=e}else if(i){let e;s="This cell has been modified since it was last run",t[49]!==o?(e=N.jsxs("span",{children:["This cell took ",o," to run"]}),t[49]=o,t[50]=e):e=t[50],m=e}else{let e;s="This cell has not been run with the latest inputs",t[51]!==o?(e=N.jsxs("span",{children:["This cell took ",o," to run"]}),t[51]=o,t[52]=e):e=t[52],m=e}return t[53]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsx("div",{className:"cell-status-stale","data-testid":"cell-status","data-status":"outdated",children:N.jsx(zo,{className:"h-5 w-5",strokeWidth:1.5})}),t[53]=c):c=t[53],t[54]!==s?(d=N.jsx(it,{content:s,usePortal:!0,children:c}),t[54]=s,t[55]=d):d=t[55],t[56]!==l||t[57]!==n||t[58]!==p||t[59]!==m?(h=l&&N.jsx(it,{content:N.jsxs("div",{className:"flex flex-col gap-1",children:[m,p]}),usePortal:!0,children:N.jsx("div",{className:"elapsed-time hover-action","data-testid":"cell-status","data-status":"outdated",children:N.jsx("span",{children:n})})}),t[56]=l,t[57]=n,t[58]=p,t[59]=m,t[60]=h):h=t[60],t[61]!==d||t[62]!==h?(f=N.jsxs("div",{className:"cell-status-icon flex items-center gap-2",children:[d,h]}),t[61]=d,t[62]=h,t[63]=f):f=t[63],f}if(null!==l){let e;t[64]!==l?(e=jx(l),t[64]=l,t[65]=e):e=t[65];const n=e;let r;t[66]!==l||t[67]!==n?(r=l?N.jsx(Ex,{elapsedTime:n}):null,t[66]=l,t[67]=n,t[68]=r):r=t[68];const o=r;let s,i,a,c;return t[69]!==o?(s=N.jsxs("span",{children:["This cell took ",o," to run"]}),t[69]=o,t[70]=s):s=t[70],t[71]!==p||t[72]!==s?(i=N.jsxs("div",{className:"flex flex-col gap-1",children:[s,p]}),t[71]=p,t[72]=s,t[73]=i):i=t[73],t[74]!==n?(a=N.jsx("div",{className:"cell-status-icon elapsed-time hover-action","data-testid":"cell-status","data-status":"idle",children:N.jsx("span",{children:n})}),t[74]=n,t[75]=a):a=t[75],t[76]!==i||t[77]!==a?(c=N.jsx(it,{content:i,usePortal:!0,children:a}),t[76]=i,t[77]=a,t[78]=c):c=t[78],c}return null},Ex=e=>{const t=C.c(2);let n;return t[0]!==e.elapsedTime?(n=N.jsx("span",{className:"tracking-wide font-semibold",children:e.elapsedTime}),t[0]=e.elapsedTime,t[1]=n):n=t[1],n},Nx=e=>{const t=C.c(18),n=1e3*e.lastRanTime;let r,o,s,i,a,l,c,d,u;if(t[0]!==n){const e=new Date(n),d=new Date,u=e.toDateString()===d.toDateString()?kx:Sx;i="Ran at",a=" ",l=N.jsx("strong",{className:"tracking-wide font-semibold",children:u.format(e)}),c=" ",r="text-muted-foreground",o="(",s=ou(e),t[0]=n,t[1]=r,t[2]=o,t[3]=s,t[4]=i,t[5]=a,t[6]=l,t[7]=c}else r=t[1],o=t[2],s=t[3],i=t[4],a=t[5],l=t[6],c=t[7];return t[8]!==r||t[9]!==o||t[10]!==s?(d=N.jsxs("span",{className:r,children:[o,s," ago)"]}),t[8]=r,t[9]=o,t[10]=s,t[11]=d):d=t[11],t[12]!==i||t[13]!==a||t[14]!==l||t[15]!==c||t[16]!==d?(u=N.jsxs("span",{children:[i,a,l,c,d]}),t[12]=i,t[13]=a,t[14]=l,t[15]=c,t[16]=d,t[17]=u):u=t[17],u};function jx(e){if(null===e)return"";const t=e,n=t/1e3;if(n>=60){return`${Math.floor(n/60)}m${Math.floor(n%60)}s`}return n>=1?`${n.toFixed(2).toString()}s`:`${t.toFixed(0).toString()}ms`}const _x=e=>{const t=C.c(6);let n;t[0]!==e.startTime?(n=e.startTime.toMilliseconds(),t[0]=e.startTime,t[1]=n):n=t[1];const r=function(e){const t=o.useRef(e),[n,r]=o.useState(e);return o.useEffect((()=>{const e=setInterval((()=>{r(Lo.now().toMilliseconds())}),17);return()=>clearInterval(e)}),[]),n-t.current}(n);let s,i;return t[2]!==r?(s=jx(r),t[2]=r,t[3]=s):s=t[3],t[4]!==s?(i=N.jsx("span",{children:s}),t[4]=s,t[5]=i):i=t[5],i},Ix={display:"none"};function Ax(e){let{id:t,value:n}=e;return u.createElement("div",{id:t,style:Ix},n)}function Tx(e){let{id:t,announcement:n,ariaLiveType:r="assertive"}=e;return u.createElement("div",{id:t,style:{position:"fixed",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(100%)",whiteSpace:"nowrap"},role:"status","aria-live":r,"aria-atomic":!0},n)}const Mx=o.createContext(null);const Ox={draggable:"\n To pick up a draggable item, press the space bar.\n While dragging, use the arrow keys to move the item.\n Press space again to drop the item in its new position, or press escape to cancel.\n "},Dx={onDragStart(e){let{active:t}=e;return"Picked up draggable item "+t.id+"."},onDragOver(e){let{active:t,over:n}=e;return n?"Draggable item "+t.id+" was moved over droppable area "+n.id+".":"Draggable item "+t.id+" is no longer over a droppable area."},onDragEnd(e){let{active:t,over:n}=e;return n?"Draggable item "+t.id+" was dropped over droppable area "+n.id:"Draggable item "+t.id+" was dropped."},onDragCancel(e){let{active:t}=e;return"Dragging was cancelled. Draggable item "+t.id+" was dropped."}};function Rx(e){let{announcements:t=Dx,container:n,hiddenTextDescribedById:r,screenReaderInstructions:s=Ox}=e;const{announce:i,announcement:a}=function(){const[e,t]=o.useState("");return{announce:o.useCallback((e=>{null!=e&&t(e)}),[]),announcement:e}}(),l=Fo("DndLiveRegion"),[c,d]=o.useState(!1);if(o.useEffect((()=>{d(!0)}),[]),function(e){const t=o.useContext(Mx);o.useEffect((()=>{if(!t)throw new Error("useDndMonitor must be used within a children of ");return t(e)}),[e,t])}(o.useMemo((()=>({onDragStart(e){let{active:n}=e;i(t.onDragStart({active:n}))},onDragMove(e){let{active:n,over:r}=e;t.onDragMove&&i(t.onDragMove({active:n,over:r}))},onDragOver(e){let{active:n,over:r}=e;i(t.onDragOver({active:n,over:r}))},onDragEnd(e){let{active:n,over:r}=e;i(t.onDragEnd({active:n,over:r}))},onDragCancel(e){let{active:n,over:r}=e;i(t.onDragCancel({active:n,over:r}))}})),[i,t])),!c)return null;const h=u.createElement(u.Fragment,null,u.createElement(Ax,{id:r,value:s.draggable}),u.createElement(Tx,{id:l,announcement:a}));return n?es.createPortal(h,n):h}var Px,Lx;function zx(){}function Fx(e,t){return o.useMemo((()=>({sensor:e,options:null!=t?t:{}})),[e,t])}(Lx=Px||(Px={})).DragStart="dragStart",Lx.DragMove="dragMove",Lx.DragEnd="dragEnd",Lx.DragCancel="dragCancel",Lx.DragOver="dragOver",Lx.RegisterDroppable="registerDroppable",Lx.SetDroppableDisabled="setDroppableDisabled",Lx.UnregisterDroppable="unregisterDroppable";const Bx=Object.freeze({x:0,y:0});function Ux(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function $x(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return n-r}function Vx(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return r-n}function Hx(e){let{left:t,top:n,height:r,width:o}=e;return[{x:t,y:n},{x:t+o,y:n},{x:t,y:n+r},{x:t+o,y:n+r}]}function Wx(e,t){if(!e||0===e.length)return null;const[n]=e;return t?n[t]:n}function Gx(e,t,n){return void 0===t&&(t=e.left),void 0===n&&(n=e.top),{x:t+.5*e.width,y:n+.5*e.height}}const qx=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const o=Gx(t,t.left,t.top),s=[];for(const i of r){const{id:e}=i,t=n.get(e);if(t){const n=Ux(Gx(t),o);s.push({id:e,data:{droppableContainer:i,value:n}})}}return s.sort($x)};function Yx(e,t){const n=Math.max(t.top,e.top),r=Math.max(t.left,e.left),o=Math.min(t.left+t.width,e.left+e.width),s=Math.min(t.top+t.height,e.top+e.height),i=o-r,a=s-n;if(r{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const o=[];for(const s of r){const{id:e}=s,r=n.get(e);if(r){const n=Yx(r,t);n>0&&o.push({id:e,data:{droppableContainer:s,value:n}})}}return o.sort(Vx)};function Xx(e,t){const{top:n,left:r,bottom:o,right:s}=t;return n<=e.y&&e.y<=o&&r<=e.x&&e.x<=s}function Kx(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:Bx}function Zx(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o({...t,top:t.top+e*n.y,bottom:t.bottom+e*n.y,left:t.left+e*n.x,right:t.right+e*n.x})),{...t})}}const Qx=Zx(1);const ev={ignoreTransform:!1};function tv(e,t){void 0===t&&(t=ev);let n=e.getBoundingClientRect();if(t.ignoreTransform){const{transform:t,transformOrigin:r}=Ho(e).getComputedStyle(e);t&&(n=function(e,t,n){const r=function(e){if(e.startsWith("matrix3d(")){const t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}if(e.startsWith("matrix(")){const t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}(t);if(!r)return e;const{scaleX:o,scaleY:s,x:i,y:a}=r,l=e.left-i-(1-o)*parseFloat(n),c=e.top-a-(1-s)*parseFloat(n.slice(n.indexOf(" ")+1)),d=o?e.width/o:e.width,u=s?e.height/s:e.height;return{width:d,height:u,top:c,right:l+d,bottom:c+u,left:l}}(n,t,r))}const{top:r,left:o,width:s,height:i,bottom:a,right:l}=n;return{top:r,left:o,width:s,height:i,bottom:a,right:l}}function nv(e){return tv(e,{ignoreTransform:!0})}function rv(e,t){const n=[];return e?function r(o){if(null!=t&&n.length>=t)return n;if(!o)return n;if(Ko(o)&&null!=o.scrollingElement&&!n.includes(o.scrollingElement))return n.push(o.scrollingElement),n;if(!Zo(o)||Qo(o))return n;if(n.includes(o))return n;const s=Ho(e).getComputedStyle(o);return o!==e&&function(e,t){void 0===t&&(t=Ho(e).getComputedStyle(e));const n=/(auto|scroll|overlay)/;return["overflow","overflowX","overflowY"].some((e=>{const r=t[e];return"string"==typeof r&&n.test(r)}))}(o,s)&&n.push(o),function(e,t){return void 0===t&&(t=Ho(e).getComputedStyle(e)),"fixed"===t.position}(o,s)?n:r(o.parentNode)}(e):n}function ov(e){const[t]=rv(e,1);return null!=t?t:null}function sv(e){return Xo&&e?ss(e)?e:is(e)?Ko(e)||e===Wo(e).scrollingElement?window:Zo(e)?e:null:null:null}function iv(e){return ss(e)?e.scrollX:e.scrollLeft}function av(e){return ss(e)?e.scrollY:e.scrollTop}function lv(e){return{x:iv(e),y:av(e)}}var cv,dv;function uv(e){return!(!Xo||!e)&&e===document.scrollingElement}function hv(e){const t={x:0,y:0},n=uv(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},r={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height};return{isTop:e.scrollTop<=t.y,isLeft:e.scrollLeft<=t.x,isBottom:e.scrollTop>=r.y,isRight:e.scrollLeft>=r.x,maxScroll:r,minScroll:t}}(dv=cv||(cv={}))[dv.Forward=1]="Forward",dv[dv.Backward=-1]="Backward";const fv={x:.2,y:.2};function pv(e,t,n,r,o){let{top:s,left:i,right:a,bottom:l}=n;void 0===r&&(r=10),void 0===o&&(o=fv);const{isTop:c,isBottom:d,isLeft:u,isRight:h}=hv(e),f={x:0,y:0},p={x:0,y:0},m=t.height*o.y,g=t.width*o.x;return!c&&s<=t.top+m?(f.y=cv.Backward,p.y=r*Math.abs((t.top+m-s)/m)):!d&&l>=t.bottom-m&&(f.y=cv.Forward,p.y=r*Math.abs((t.bottom-m-l)/m)),!h&&a>=t.right-g?(f.x=cv.Forward,p.x=r*Math.abs((t.right-g-a)/g)):!u&&i<=t.left+g&&(f.x=cv.Backward,p.x=r*Math.abs((t.left+g-i)/g)),{direction:f,speed:p}}function mv(e){if(e===document.scrollingElement){const{innerWidth:e,innerHeight:t}=window;return{top:0,left:0,right:e,bottom:t,width:e,height:t}}const{top:t,left:n,right:r,bottom:o}=e.getBoundingClientRect();return{top:t,left:n,right:r,bottom:o,width:e.clientWidth,height:e.clientHeight}}function gv(e){return e.reduce(((e,t)=>Yo(e,lv(t))),Bx)}const yv=[["x",["left","right"],function(e){return e.reduce(((e,t)=>e+iv(t)),0)}],["y",["top","bottom"],function(e){return e.reduce(((e,t)=>e+av(t)),0)}]];class bv{constructor(e,t){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;const n=rv(t),r=gv(n);this.rect={...e},this.width=e.width,this.height=e.height;for(const[o,s,i]of yv)for(const e of s)Object.defineProperty(this,e,{get:()=>{const t=i(n),s=r[o]-t;return this.rect[e]+s},enumerable:!0});Object.defineProperty(this,"rect",{enumerable:!1})}}class xv{constructor(e){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach((e=>{var t;return null==(t=this.target)?void 0:t.removeEventListener(...e)}))},this.target=e}add(e,t,n){var r;null==(r=this.target)||r.addEventListener(e,t,n),this.listeners.push([e,t,n])}}function vv(e,t){const n=Math.abs(e.x),r=Math.abs(e.y);return"number"==typeof t?Math.sqrt(n**2+r**2)>t:"x"in t&&"y"in t?n>t.x&&r>t.y:"x"in t?n>t.x:"y"in t&&r>t.y}var wv,kv,Sv,Cv;function Ev(e){e.preventDefault()}function Nv(e){e.stopPropagation()}(kv=wv||(wv={})).Click="click",kv.DragStart="dragstart",kv.Keydown="keydown",kv.ContextMenu="contextmenu",kv.Resize="resize",kv.SelectionChange="selectionchange",kv.VisibilityChange="visibilitychange",(Cv=Sv||(Sv={})).Space="Space",Cv.Down="ArrowDown",Cv.Right="ArrowRight",Cv.Left="ArrowLeft",Cv.Up="ArrowUp",Cv.Esc="Escape",Cv.Enter="Enter",Cv.Tab="Tab";const jv={start:[Sv.Space,Sv.Enter],cancel:[Sv.Esc],end:[Sv.Space,Sv.Enter,Sv.Tab]},_v=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case Sv.Right:return{...n,x:n.x+25};case Sv.Left:return{...n,x:n.x-25};case Sv.Down:return{...n,y:n.y+25};case Sv.Up:return{...n,y:n.y-25}}};class Iv{constructor(e){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=e;const{event:{target:t}}=e;this.props=e,this.listeners=new xv(Wo(t)),this.windowListeners=new xv(Ho(t)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(wv.Resize,this.handleCancel),this.windowListeners.add(wv.VisibilityChange,this.handleCancel),setTimeout((()=>this.listeners.add(wv.Keydown,this.handleKeyDown)))}handleStart(){const{activeNode:e,onStart:t}=this.props,n=e.node.current;n&&function(e,t){if(void 0===t&&(t=tv),!e)return;const{top:n,left:r,bottom:o,right:s}=t(e);ov(e)&&(o<=0||s<=0||n>=window.innerHeight||r>=window.innerWidth)&&e.scrollIntoView({block:"center",inline:"center"})}(n),t(Bx)}handleKeyDown(e){if(Go(e)){const{active:t,context:n,options:r}=this.props,{keyboardCodes:o=jv,coordinateGetter:s=_v,scrollBehavior:i="smooth"}=r,{code:a}=e;if(o.end.includes(a))return void this.handleEnd(e);if(o.cancel.includes(a))return void this.handleCancel(e);const{collisionRect:l}=n.current,c=l?{x:l.left,y:l.top}:Bx;this.referenceCoordinates||(this.referenceCoordinates=c);const d=s(e,{active:t,context:n.current,currentCoordinates:c});if(d){const t=qo(d,c),r={x:0,y:0},{scrollableAncestors:o}=n.current;for(const n of o){const o=e.code,{isTop:s,isRight:a,isLeft:l,isBottom:c,maxScroll:u,minScroll:h}=hv(n),f=mv(n),p={x:Math.min(o===Sv.Right?f.right-f.width/2:f.right,Math.max(o===Sv.Right?f.left:f.left+f.width/2,d.x)),y:Math.min(o===Sv.Down?f.bottom-f.height/2:f.bottom,Math.max(o===Sv.Down?f.top:f.top+f.height/2,d.y))},m=o===Sv.Right&&!a||o===Sv.Left&&!l,g=o===Sv.Down&&!c||o===Sv.Up&&!s;if(m&&p.x!==d.x){const e=n.scrollLeft+t.x,s=o===Sv.Right&&e<=u.x||o===Sv.Left&&e>=h.x;if(s&&!t.y)return void n.scrollTo({left:e,behavior:i});r.x=s?n.scrollLeft-e:o===Sv.Right?n.scrollLeft-u.x:n.scrollLeft-h.x,r.x&&n.scrollBy({left:-r.x,behavior:i});break}if(g&&p.y!==d.y){const e=n.scrollTop+t.y,s=o===Sv.Down&&e<=u.y||o===Sv.Up&&e>=h.y;if(s&&!t.x)return void n.scrollTo({top:e,behavior:i});r.y=s?n.scrollTop-e:o===Sv.Down?n.scrollTop-u.y:n.scrollTop-h.y,r.y&&n.scrollBy({top:-r.y,behavior:i});break}}this.handleMove(e,Yo(qo(d,this.referenceCoordinates),r))}}}handleMove(e,t){const{onMove:n}=this.props;e.preventDefault(),n(t)}handleEnd(e){const{onEnd:t}=this.props;e.preventDefault(),this.detach(),t()}handleCancel(e){const{onCancel:t}=this.props;e.preventDefault(),this.detach(),t()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}}function Av(e){return Boolean(e&&"distance"in e)}function Tv(e){return Boolean(e&&"delay"in e)}Iv.activators=[{eventName:"onKeyDown",handler:(e,t,n)=>{let{keyboardCodes:r=jv,onActivation:o}=t,{active:s}=n;const{code:i}=e.nativeEvent;if(r.start.includes(i)){const t=s.activatorNode.current;return(!t||e.target===t)&&(e.preventDefault(),null==o||o({event:e.nativeEvent}),!0)}return!1}}];class Mv{constructor(e,t,n){var r;void 0===n&&(n=function(e){const{EventTarget:t}=Ho(e);return e instanceof t?e:Wo(e)}(e.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=e,this.events=t;const{event:o}=e,{target:s}=o;this.props=e,this.events=t,this.document=Wo(s),this.documentListeners=new xv(this.document),this.listeners=new xv(n),this.windowListeners=new xv(Ho(s)),this.initialCoordinates=null!=(r=Jo(o))?r:Bx,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){const{events:e,props:{options:{activationConstraint:t,bypassActivationConstraint:n}}}=this;if(this.listeners.add(e.move.name,this.handleMove,{passive:!1}),this.listeners.add(e.end.name,this.handleEnd),e.cancel&&this.listeners.add(e.cancel.name,this.handleCancel),this.windowListeners.add(wv.Resize,this.handleCancel),this.windowListeners.add(wv.DragStart,Ev),this.windowListeners.add(wv.VisibilityChange,this.handleCancel),this.windowListeners.add(wv.ContextMenu,Ev),this.documentListeners.add(wv.Keydown,this.handleKeydown),t){if(null!=n&&n({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(Tv(t))return this.timeoutId=setTimeout(this.handleStart,t.delay),void this.handlePending(t);if(Av(t))return void this.handlePending(t)}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),null!==this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(e,t){const{active:n,onPending:r}=this.props;r(n,e,this.initialCoordinates,t)}handleStart(){const{initialCoordinates:e}=this,{onStart:t}=this.props;e&&(this.activated=!0,this.documentListeners.add(wv.Click,Nv,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(wv.SelectionChange,this.removeTextSelection),t(e))}handleMove(e){var t;const{activated:n,initialCoordinates:r,props:o}=this,{onMove:s,options:{activationConstraint:i}}=o;if(!r)return;const a=null!=(t=Jo(e))?t:Bx,l=qo(r,a);if(!n&&i){if(Av(i)){if(null!=i.tolerance&&vv(l,i.tolerance))return this.handleCancel();if(vv(l,i.distance))return this.handleStart()}return Tv(i)&&vv(l,i.tolerance)?this.handleCancel():void this.handlePending(i,l)}e.cancelable&&e.preventDefault(),s(a)}handleEnd(){const{onAbort:e,onEnd:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleCancel(){const{onAbort:e,onCancel:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleKeydown(e){e.code===Sv.Esc&&this.handleCancel()}removeTextSelection(){var e;null==(e=this.document.getSelection())||e.removeAllRanges()}}const Ov={cancel:{name:"pointercancel"},move:{name:"pointermove"},end:{name:"pointerup"}};class Dv extends Mv{constructor(e){const{event:t}=e,n=Wo(t.target);super(e,Ov,n)}}Dv.activators=[{eventName:"onPointerDown",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return!(!n.isPrimary||0!==n.button)&&(null==r||r({event:n}),!0)}}];const Rv={move:{name:"mousemove"},end:{name:"mouseup"}};var Pv,Lv;(Lv=Pv||(Pv={}))[Lv.RightClick=2]="RightClick";(class extends Mv{constructor(e){super(e,Rv,Wo(e.event.target))}}).activators=[{eventName:"onMouseDown",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return n.button!==Pv.RightClick&&(null==r||r({event:n}),!0)}}];const zv={cancel:{name:"touchcancel"},move:{name:"touchmove"},end:{name:"touchend"}};var Fv,Bv,Uv,$v;function Vv(e){let{acceleration:t,activator:n=Fv.Pointer,canScroll:r,draggingRect:s,enabled:i,interval:a=5,order:l=Uv.TreeOrder,pointerCoordinates:c,scrollableAncestors:d,scrollableAncestorRects:u,delta:h,threshold:f}=e;const p=function(e){let{delta:t,disabled:n}=e;const r=rs(t);return ts((e=>{if(n||!r||!e)return Hv;const o={x:Math.sign(t.x-r.x),y:Math.sign(t.y-r.y)};return{x:{[cv.Backward]:e.x[cv.Backward]||-1===o.x,[cv.Forward]:e.x[cv.Forward]||1===o.x},y:{[cv.Backward]:e.y[cv.Backward]||-1===o.y,[cv.Forward]:e.y[cv.Forward]||1===o.y}}}),[n,t,r])}({delta:h,disabled:!i}),[m,g]=ns(),y=o.useRef({x:0,y:0}),b=o.useRef({x:0,y:0}),x=o.useMemo((()=>{switch(n){case Fv.Pointer:return c?{top:c.y,bottom:c.y,left:c.x,right:c.x}:null;case Fv.DraggableRect:return s}}),[n,s,c]),v=o.useRef(null),w=o.useCallback((()=>{const e=v.current;if(!e)return;const t=y.current.x*b.current.x,n=y.current.y*b.current.y;e.scrollBy(t,n)}),[]),k=o.useMemo((()=>l===Uv.TreeOrder?[...d].reverse():d),[l,d]);o.useEffect((()=>{if(i&&d.length&&x){for(const e of k){if(!1===(null==r?void 0:r(e)))continue;const n=d.indexOf(e),o=u[n];if(!o)continue;const{direction:s,speed:i}=pv(e,o,x,t,f);for(const e of["x","y"])p[e][s[e]]||(i[e]=0,s[e]=0);if(i.x>0||i.y>0)return g(),v.current=e,m(w,a),y.current=i,void(b.current=s)}y.current={x:0,y:0},b.current={x:0,y:0},g()}else g()}),[t,w,r,g,i,a,JSON.stringify(x),JSON.stringify(p),m,d,k,u,JSON.stringify(f)])}(class extends Mv{constructor(e){super(e,zv)}static setup(){return window.addEventListener(zv.move.name,e,{capture:!1,passive:!1}),function(){window.removeEventListener(zv.move.name,e)};function e(){}}}).activators=[{eventName:"onTouchStart",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;const{touches:o}=n;return!(o.length>1)&&(null==r||r({event:n}),!0)}}],(Bv=Fv||(Fv={}))[Bv.Pointer=0]="Pointer",Bv[Bv.DraggableRect=1]="DraggableRect",($v=Uv||(Uv={}))[$v.TreeOrder=0]="TreeOrder",$v[$v.ReversedTreeOrder=1]="ReversedTreeOrder";const Hv={x:{[cv.Backward]:!1,[cv.Forward]:!1},y:{[cv.Backward]:!1,[cv.Forward]:!1}};var Wv,Gv,qv;(Gv=Wv||(Wv={}))[Gv.Always=0]="Always",Gv[Gv.BeforeDragging=1]="BeforeDragging",Gv[Gv.WhileDragging=2]="WhileDragging",(qv||(qv={})).Optimized="optimized";const Yv=new Map;function Jv(e,t){return ts((n=>e?n||("function"==typeof t?t(e):e):null),[t,e])}function Xv(e){let{callback:t,disabled:n}=e;const r=Vo(t),s=o.useMemo((()=>{if(n||"undefined"==typeof window||void 0===window.ResizeObserver)return;const{ResizeObserver:e}=window;return new e(r)}),[n]);return o.useEffect((()=>()=>null==s?void 0:s.disconnect()),[s]),s}function Kv(e){return new bv(tv(e),e)}function Zv(e,t,n){void 0===t&&(t=Kv);const[r,s]=o.useState(null);function i(){s((r=>{if(!e)return null;var o;if(!1===e.isConnected)return null!=(o=null!=r?r:n)?o:null;const s=t(e);return JSON.stringify(r)===JSON.stringify(s)?r:s}))}const a=function(e){let{callback:t,disabled:n}=e;const r=Vo(t),s=o.useMemo((()=>{if(n||"undefined"==typeof window||void 0===window.MutationObserver)return;const{MutationObserver:e}=window;return new e(r)}),[r,n]);return o.useEffect((()=>()=>null==s?void 0:s.disconnect()),[s]),s}({callback(t){if(e)for(const n of t){const{type:t,target:r}=n;if("childList"===t&&r instanceof HTMLElement&&r.contains(e)){i();break}}}}),l=Xv({callback:i});return $o((()=>{i(),e?(null==l||l.observe(e),null==a||a.observe(document.body,{childList:!0,subtree:!0})):(null==l||l.disconnect(),null==a||a.disconnect())}),[e]),r}const Qv=[];function ew(e,t){void 0===t&&(t=[]);const n=o.useRef(null);return o.useEffect((()=>{n.current=null}),t),o.useEffect((()=>{const t=e!==Bx;t&&!n.current&&(n.current=e),!t&&n.current&&(n.current=null)}),[e]),n.current?qo(e,n.current):Bx}function tw(e){return o.useMemo((()=>e?function(e){const t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}(e):null),[e])}const nw=[];function rw(e){let{measure:t}=e;const[n,r]=o.useState(null),s=Xv({callback:o.useCallback((e=>{for(const{target:n}of e)if(Zo(n)){r((e=>{const r=t(n);return e?{...e,width:r.width,height:r.height}:r}));break}}),[t])}),i=o.useCallback((e=>{const n=function(e){if(!e)return null;if(e.children.length>1)return e;const t=e.children[0];return Zo(t)?t:e}(e);null==s||s.disconnect(),n&&(null==s||s.observe(n)),r(n?t(n):null)}),[t,s]),[a,l]=Uo(i);return o.useMemo((()=>({nodeRef:a,rect:n,setRef:l})),[n,a,l])}const ow=[{sensor:Dv,options:{}},{sensor:Iv,options:{}}],sw={current:{}},iw={draggable:{measure:nv},droppable:{measure:nv,strategy:Wv.WhileDragging,frequency:qv.Optimized},dragOverlay:{measure:tv}};class aw extends Map{get(e){var t;return null!=e&&null!=(t=super.get(e))?t:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter((e=>{let{disabled:t}=e;return!t}))}getNodeFor(e){var t,n;return null!=(t=null==(n=this.get(e))?void 0:n.node.current)?t:void 0}}const lw={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new aw,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:zx},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:iw,measureDroppableContainers:zx,windowRect:null,measuringScheduled:!1},cw={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:""},dispatch:zx,draggableNodes:new Map,over:null,measureDroppableContainers:zx},dw=o.createContext(cw),uw=o.createContext(lw);function hw(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new aw}}}function fw(e,t){switch(t.type){case Px.DragStart:return{...e,draggable:{...e.draggable,initialCoordinates:t.initialCoordinates,active:t.active}};case Px.DragMove:return null==e.draggable.active?e:{...e,draggable:{...e.draggable,translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}}};case Px.DragEnd:case Px.DragCancel:return{...e,draggable:{...e.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case Px.RegisterDroppable:{const{element:n}=t,{id:r}=n,o=new aw(e.droppable.containers);return o.set(r,n),{...e,droppable:{...e.droppable,containers:o}}}case Px.SetDroppableDisabled:{const{id:n,key:r,disabled:o}=t,s=e.droppable.containers.get(n);if(!s||r!==s.key)return e;const i=new aw(e.droppable.containers);return i.set(n,{...s,disabled:o}),{...e,droppable:{...e.droppable,containers:i}}}case Px.UnregisterDroppable:{const{id:n,key:r}=t,o=e.droppable.containers.get(n);if(!o||r!==o.key)return e;const s=new aw(e.droppable.containers);return s.delete(n),{...e,droppable:{...e.droppable,containers:s}}}default:return e}}function pw(e){let{disabled:t}=e;const{active:n,activatorEvent:r,draggableNodes:s}=o.useContext(dw),i=rs(r),a=rs(null==n?void 0:n.id);return o.useEffect((()=>{if(!t&&!r&&i&&null!=a){if(!Go(i))return;if(document.activeElement===i.target)return;const e=s.get(a);if(!e)return;const{activatorNode:t,node:n}=e;if(!t.current&&!n.current)return;requestAnimationFrame((()=>{for(const e of[t.current,n.current]){if(!e)continue;const t=os(e);if(t){t.focus();break}}}))}}),[r,t,s,a,i]),null}const mw=o.createContext({...Bx,scaleX:1,scaleY:1});var gw,yw;(yw=gw||(gw={}))[yw.Uninitialized=0]="Uninitialized",yw[yw.Initializing=1]="Initializing",yw[yw.Initialized=2]="Initialized";const bw=o.memo((function(e){var t,n,r,s;let{id:i,accessibility:a,autoScroll:l=!0,children:c,sensors:d=ow,collisionDetection:h=Jx,measuring:f,modifiers:p,...m}=e;const g=o.useReducer(fw,void 0,hw),[y,b]=g,[x,v]=function(){const[e]=o.useState((()=>new Set)),t=o.useCallback((t=>(e.add(t),()=>e.delete(t))),[e]);return[o.useCallback((t=>{let{type:n,event:r}=t;e.forEach((e=>{var t;return null==(t=e[n])?void 0:t.call(e,r)}))}),[e]),t]}(),[w,k]=o.useState(gw.Uninitialized),S=w===gw.Initialized,{draggable:{active:C,nodes:E,translate:N},droppable:{containers:j}}=y,_=null!=C?E.get(C):null,I=o.useRef({initial:null,translated:null}),A=o.useMemo((()=>{var e;return null!=C?{id:C,data:null!=(e=null==_?void 0:_.data)?e:sw,rect:I}:null}),[C,_]),T=o.useRef(null),[M,O]=o.useState(null),[D,R]=o.useState(null),P=Bo(m,Object.values(m)),L=Fo("DndDescribedBy",i),z=o.useMemo((()=>j.getEnabled()),[j]),F=(B=f,o.useMemo((()=>({draggable:{...iw.draggable,...null==B?void 0:B.draggable},droppable:{...iw.droppable,...null==B?void 0:B.droppable},dragOverlay:{...iw.dragOverlay,...null==B?void 0:B.dragOverlay}})),[null==B?void 0:B.draggable,null==B?void 0:B.droppable,null==B?void 0:B.dragOverlay]));var B;const{droppableRects:U,measureDroppableContainers:$,measuringScheduled:V}=function(e,t){let{dragging:n,dependencies:r,config:s}=t;const[i,a]=o.useState(null),{frequency:l,measure:c,strategy:d}=s,u=o.useRef(e),h=function(){switch(d){case Wv.Always:return!1;case Wv.BeforeDragging:return n;default:return!n}}(),f=Bo(h),p=o.useCallback((function(e){void 0===e&&(e=[]),f.current||a((t=>null===t?e:t.concat(e.filter((e=>!t.includes(e))))))}),[f]),m=o.useRef(null),g=ts((t=>{if(h&&!n)return Yv;if(!t||t===Yv||u.current!==e||null!=i){const t=new Map;for(let n of e){if(!n)continue;if(i&&i.length>0&&!i.includes(n.id)&&n.rect.current){t.set(n.id,n.rect.current);continue}const e=n.node.current,r=e?new bv(c(e),e):null;n.rect.current=r,r&&t.set(n.id,r)}return t}return t}),[e,i,n,h,c]);return o.useEffect((()=>{u.current=e}),[e]),o.useEffect((()=>{h||p()}),[n,h]),o.useEffect((()=>{i&&i.length>0&&a(null)}),[JSON.stringify(i)]),o.useEffect((()=>{h||"number"!=typeof l||null!==m.current||(m.current=setTimeout((()=>{p(),m.current=null}),l))}),[l,h,p,...r]),{droppableRects:g,measureDroppableContainers:p,measuringScheduled:null!=i}}(z,{dragging:S,dependencies:[N.x,N.y],config:F.droppable}),H=function(e,t){const n=null!=t?e.get(t):void 0,r=n?n.node.current:null;return ts((e=>{var n;return null==t?null:null!=(n=null!=r?r:e)?n:null}),[r,t])}(E,C),W=o.useMemo((()=>D?Jo(D):null),[D]),G=function(){const e=!1===(null==M?void 0:M.autoScrollEnabled),t="object"==typeof l?!1===l.enabled:!1===l,n=S&&!e&&!t;if("object"==typeof l)return{...l,enabled:n};return{enabled:n}}(),q=function(e,t){return Jv(e,t)}(H,F.draggable.measure);!function(e){let{activeNode:t,measure:n,initialRect:r,config:s=!0}=e;const i=o.useRef(!1),{x:a,y:l}="boolean"==typeof s?{x:s,y:s}:s;$o((()=>{if(!a&&!l||!t)return void(i.current=!1);if(i.current||!r)return;const e=null==t?void 0:t.node.current;if(!e||!1===e.isConnected)return;const o=Kx(n(e),r);if(a||(o.x=0),l||(o.y=0),i.current=!0,Math.abs(o.x)>0||Math.abs(o.y)>0){const t=ov(e);t&&t.scrollBy({top:o.y,left:o.x})}}),[t,a,l,r,n])}({activeNode:null!=C?E.get(C):null,config:G.layoutShiftCompensation,initialRect:q,measure:F.draggable.measure});const Y=Zv(H,F.draggable.measure,q),J=Zv(H?H.parentElement:null),X=o.useRef({activatorEvent:null,active:null,activeNode:H,collisionRect:null,collisions:null,droppableRects:U,draggableNodes:E,draggingNode:null,draggingNodeRect:null,droppableContainers:j,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),K=j.getNodeFor(null==(t=X.current.over)?void 0:t.id),Z=rw({measure:F.dragOverlay.measure}),Q=null!=(n=Z.nodeRef.current)?n:H,ee=S?null!=(r=Z.rect)?r:Y:null,te=Boolean(Z.nodeRef.current&&Z.rect),ne=Kx(re=te?null:Y,Jv(re));var re;const oe=tw(Q?Ho(Q):null),se=function(e){const t=o.useRef(e),n=ts((n=>e?n&&n!==Qv&&e&&t.current&&e.parentNode===t.current.parentNode?n:rv(e):Qv),[e]);return o.useEffect((()=>{t.current=e}),[e]),n}(S?null!=K?K:H:null),ie=function(e,t){void 0===t&&(t=tv);const[n]=e,r=tw(n?Ho(n):null),[s,i]=o.useState(nw);function a(){i((()=>e.length?e.map((e=>uv(e)?r:new bv(t(e),e))):nw))}const l=Xv({callback:a});return $o((()=>{null==l||l.disconnect(),a(),e.forEach((e=>null==l?void 0:l.observe(e)))}),[e]),s}(se),ae=function(e,t){let{transform:n,...r}=t;return null!=e&&e.length?e.reduce(((e,t)=>t({transform:e,...r})),n):n}(p,{transform:{x:N.x-ne.x,y:N.y-ne.y,scaleX:1,scaleY:1},activatorEvent:D,active:A,activeNodeRect:Y,containerNodeRect:J,draggingNodeRect:ee,over:X.current.over,overlayNodeRect:Z.rect,scrollableAncestors:se,scrollableAncestorRects:ie,windowRect:oe}),le=W?Yo(W,N):null,ce=function(e){const[t,n]=o.useState(null),r=o.useRef(e),s=o.useCallback((e=>{const t=sv(e.target);t&&n((e=>e?(e.set(t,lv(t)),new Map(e)):null))}),[]);return o.useEffect((()=>{const t=r.current;if(e!==t){o(t);const i=e.map((e=>{const t=sv(e);return t?(t.addEventListener("scroll",s,{passive:!0}),[t,lv(t)]):null})).filter((e=>null!=e));n(i.length?new Map(i):null),r.current=e}return()=>{o(e),o(t)};function o(e){e.forEach((e=>{const t=sv(e);null==t||t.removeEventListener("scroll",s)}))}}),[s,e]),o.useMemo((()=>e.length?t?Array.from(t.values()).reduce(((e,t)=>Yo(e,t)),Bx):gv(e):Bx),[e,t])}(se),de=ew(ce),ue=ew(ce,[Y]),he=Yo(ae,de),fe=ee?Qx(ee,ae):null,pe=A&&fe?h({active:A,collisionRect:fe,droppableRects:U,droppableContainers:z,pointerCoordinates:le}):null,me=Wx(pe,"id"),[ge,ye]=o.useState(null),be=function(e,t,n){return{...e,scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1}}(te?ae:Yo(ae,ue),null!=(s=null==ge?void 0:ge.rect)?s:null,Y),xe=o.useRef(null),ve=o.useCallback(((e,t)=>{let{sensor:n,options:r}=t;if(null==T.current)return;const o=E.get(T.current);if(!o)return;const s=e.nativeEvent,i=new n({active:T.current,activeNode:o,event:s,options:r,context:X,onAbort(e){if(!E.get(e))return;const{onDragAbort:t}=P.current,n={id:e};null==t||t(n),x({type:"onDragAbort",event:n})},onPending(e,t,n,r){if(!E.get(e))return;const{onDragPending:o}=P.current,s={id:e,constraint:t,initialCoordinates:n,offset:r};null==o||o(s),x({type:"onDragPending",event:s})},onStart(e){const t=T.current;if(null==t)return;const n=E.get(t);if(!n)return;const{onDragStart:r}=P.current,o={activatorEvent:s,active:{id:t,data:n.data,rect:I}};es.unstable_batchedUpdates((()=>{null==r||r(o),k(gw.Initializing),b({type:Px.DragStart,initialCoordinates:e,active:t}),x({type:"onDragStart",event:o}),O(xe.current),R(s)}))},onMove(e){b({type:Px.DragMove,coordinates:e})},onEnd:a(Px.DragEnd),onCancel:a(Px.DragCancel)});function a(e){return async function(){const{active:t,collisions:n,over:r,scrollAdjustedTranslate:o}=X.current;let i=null;if(t&&o){const{cancelDrop:a}=P.current;if(i={activatorEvent:s,active:t,collisions:n,delta:o,over:r},e===Px.DragEnd&&"function"==typeof a){await Promise.resolve(a(i))&&(e=Px.DragCancel)}}T.current=null,es.unstable_batchedUpdates((()=>{b({type:e}),k(gw.Uninitialized),ye(null),O(null),R(null),xe.current=null;const t=e===Px.DragEnd?"onDragEnd":"onDragCancel";if(i){const e=P.current[t];null==e||e(i),x({type:t,event:i})}}))}}xe.current=i}),[E]),we=function(e,t){return o.useMemo((()=>e.reduce(((e,n)=>{const{sensor:r}=n;return[...e,...r.activators.map((e=>({eventName:e.eventName,handler:t(e.handler,n)})))]}),[])),[e,t])}(d,o.useCallback(((e,t)=>(n,r)=>{const o=n.nativeEvent,s=E.get(r);if(null!==T.current||!s||o.dndKit||o.defaultPrevented)return;const i={active:s};!0===e(n,t.options,i)&&(o.dndKit={capturedBy:t.sensor},T.current=r,ve(n,t))}),[E,ve]));!function(e){o.useEffect((()=>{if(!Xo)return;const t=e.map((e=>{let{sensor:t}=e;return null==t.setup?void 0:t.setup()}));return()=>{for(const e of t)null==e||e()}}),e.map((e=>{let{sensor:t}=e;return t})))}(d),$o((()=>{Y&&w===gw.Initializing&&k(gw.Initialized)}),[Y,w]),o.useEffect((()=>{const{onDragMove:e}=P.current,{active:t,activatorEvent:n,collisions:r,over:o}=X.current;if(!t||!n)return;const s={active:t,activatorEvent:n,collisions:r,delta:{x:he.x,y:he.y},over:o};es.unstable_batchedUpdates((()=>{null==e||e(s),x({type:"onDragMove",event:s})}))}),[he.x,he.y]),o.useEffect((()=>{const{active:e,activatorEvent:t,collisions:n,droppableContainers:r,scrollAdjustedTranslate:o}=X.current;if(!e||null==T.current||!t||!o)return;const{onDragOver:s}=P.current,i=r.get(me),a=i&&i.rect.current?{id:i.id,rect:i.rect.current,data:i.data,disabled:i.disabled}:null,l={active:e,activatorEvent:t,collisions:n,delta:{x:o.x,y:o.y},over:a};es.unstable_batchedUpdates((()=>{ye(a),null==s||s(l),x({type:"onDragOver",event:l})}))}),[me]),$o((()=>{X.current={activatorEvent:D,active:A,activeNode:H,collisionRect:fe,collisions:pe,droppableRects:U,draggableNodes:E,draggingNode:Q,draggingNodeRect:ee,droppableContainers:j,over:ge,scrollableAncestors:se,scrollAdjustedTranslate:he},I.current={initial:ee,translated:fe}}),[A,H,pe,fe,E,Q,ee,U,j,ge,se,he]),Vv({...G,delta:N,draggingRect:fe,pointerCoordinates:le,scrollableAncestors:se,scrollableAncestorRects:ie});const ke=o.useMemo((()=>({active:A,activeNode:H,activeNodeRect:Y,activatorEvent:D,collisions:pe,containerNodeRect:J,dragOverlay:Z,draggableNodes:E,droppableContainers:j,droppableRects:U,over:ge,measureDroppableContainers:$,scrollableAncestors:se,scrollableAncestorRects:ie,measuringConfiguration:F,measuringScheduled:V,windowRect:oe})),[A,H,Y,D,pe,J,Z,E,j,U,ge,$,se,ie,F,V,oe]),Se=o.useMemo((()=>({activatorEvent:D,activators:we,active:A,activeNodeRect:Y,ariaDescribedById:{draggable:L},dispatch:b,draggableNodes:E,over:ge,measureDroppableContainers:$})),[D,we,A,Y,b,L,E,ge,$]);return u.createElement(Mx.Provider,{value:v},u.createElement(dw.Provider,{value:Se},u.createElement(uw.Provider,{value:ke},u.createElement(mw.Provider,{value:be},c)),u.createElement(pw,{disabled:!1===(null==a?void 0:a.restoreFocus)})),u.createElement(Rx,{...a,hiddenTextDescribedById:L}))})),xw=o.createContext(null),vw="button";function ww(e){let{id:t,data:n,disabled:r=!1,attributes:s}=e;const i=Fo("Draggable"),{activators:a,activatorEvent:l,active:c,activeNodeRect:d,ariaDescribedById:u,draggableNodes:h,over:f}=o.useContext(dw),{role:p=vw,roleDescription:m="draggable",tabIndex:g=0}=null!=s?s:{},y=(null==c?void 0:c.id)===t,b=o.useContext(y?mw:xw),[x,v]=Uo(),[w,k]=Uo(),S=function(e,t){return o.useMemo((()=>e.reduce(((e,n)=>{let{eventName:r,handler:o}=n;return e[r]=e=>{o(e,t)},e}),{})),[e,t])}(a,t),C=Bo(n);$o((()=>(h.set(t,{id:t,key:i,node:x,activatorNode:w,data:C}),()=>{const e=h.get(t);e&&e.key===i&&h.delete(t)})),[h,t]);return{active:c,activatorEvent:l,activeNodeRect:d,attributes:o.useMemo((()=>({role:p,tabIndex:g,"aria-disabled":r,"aria-pressed":!(!y||p!==vw)||void 0,"aria-roledescription":m,"aria-describedby":u.draggable})),[r,p,g,y,m,u.draggable]),isDragging:y,listeners:r?void 0:S,node:x,over:f,setNodeRef:v,setActivatorNodeRef:k,transform:b}}const kw={timeout:25};function Sw(e,t,n){const r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function Cw(e,t){return e.reduce(((e,n,r)=>{const o=t.get(n);return o&&(e[r]=o),e}),Array(e.length))}function Ew(e){return null!==e&&e>=0}const Nw={scaleX:1,scaleY:1},jw=e=>{var t;let{rects:n,activeNodeRect:r,activeIndex:o,overIndex:s,index:i}=e;const a=null!=(t=n[o])?t:r;if(!a)return null;const l=function(e,t,n){const r=e[t],o=e[t-1],s=e[t+1];if(!r||!o&&!s)return 0;if(no&&i<=s?{x:-a.width-l,y:0,...Nw}:i=s?{x:a.width+l,y:0,...Nw}:{x:0,y:0,...Nw}};const _w=e=>{let{rects:t,activeIndex:n,overIndex:r,index:o}=e;const s=Sw(t,r,n),i=t[o],a=s[o];return a&&i?{x:a.left-i.left,y:a.top-i.top,scaleX:a.width/i.width,scaleY:a.height/i.height}:null},Iw={scaleX:1,scaleY:1},Aw=e=>{var t;let{activeIndex:n,activeNodeRect:r,index:o,rects:s,overIndex:i}=e;const a=null!=(t=s[n])?t:r;if(!a)return null;if(o===n){const e=s[i];return e?{x:0,y:nn&&o<=i?{x:0,y:-a.height-l,...Iw}:o=i?{x:0,y:a.height+l,...Iw}:{x:0,y:0,...Iw}};const Tw="Sortable",Mw=u.createContext({activeIndex:-1,containerId:Tw,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:_w,disabled:{draggable:!1,droppable:!1}});function Ow(e){let{children:t,id:n,items:r,strategy:s=_w,disabled:i=!1}=e;const{active:a,dragOverlay:l,droppableRects:c,over:d,measureDroppableContainers:h}=o.useContext(uw),f=Fo(Tw,n),p=Boolean(null!==l.rect),m=o.useMemo((()=>r.map((e=>"object"==typeof e&&"id"in e?e.id:e))),[r]),g=null!=a,y=a?m.indexOf(a.id):-1,b=d?m.indexOf(d.id):-1,x=o.useRef(m),v=!function(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n{v&&g&&h(m)}),[v,m,g,h]),o.useEffect((()=>{x.current=m}),[m]);const S=o.useMemo((()=>({activeIndex:y,containerId:f,disabled:k,disableTransforms:w,items:m,overIndex:b,useDragOverlay:p,sortedRects:Cw(m,c),strategy:s})),[y,f,k.draggable,k.droppable,w,m,b,c,p,s]);return u.createElement(Mw.Provider,{value:S},t)}const Dw=e=>{let{id:t,items:n,activeIndex:r,overIndex:o}=e;return Sw(n,r,o).indexOf(t)},Rw=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:o,items:s,newIndex:i,previousItems:a,previousContainerId:l,transition:c}=e;return!(!c||!r)&&((a===s||o!==i)&&(!!n||i!==o&&t===l))},Pw={duration:200,easing:"ease"},Lw="transform",zw=ls.Transition.toString({property:Lw,duration:0,easing:"linear"}),Fw={roleDescription:"sortable"};function Bw(e){let{animateLayoutChanges:t=Rw,attributes:n,disabled:r,data:s,getNewIndex:i=Dw,id:a,strategy:l,resizeObserverConfig:c,transition:d=Pw}=e;const{items:u,containerId:h,activeIndex:f,disabled:p,disableTransforms:m,sortedRects:g,overIndex:y,useDragOverlay:b,strategy:x}=o.useContext(Mw),v=function(e,t){var n,r;if("boolean"==typeof e)return{draggable:e,droppable:!1};return{draggable:null!=(n=null==e?void 0:e.draggable)?n:t.draggable,droppable:null!=(r=null==e?void 0:e.droppable)?r:t.droppable}}(r,p),w=u.indexOf(a),k=o.useMemo((()=>({sortable:{containerId:h,index:w,items:u},...s})),[h,s,w,u]),S=o.useMemo((()=>u.slice(u.indexOf(a))),[u,a]),{rect:C,node:E,isOver:N,setNodeRef:j}=function(e){let{data:t,disabled:n=!1,id:r,resizeObserverConfig:s}=e;const i=Fo("Droppable"),{active:a,dispatch:l,over:c,measureDroppableContainers:d}=o.useContext(dw),u=o.useRef({disabled:n}),h=o.useRef(!1),f=o.useRef(null),p=o.useRef(null),{disabled:m,updateMeasurementsFor:g,timeout:y}={...kw,...s},b=Bo(null!=g?g:r),x=Xv({callback:o.useCallback((()=>{h.current?(null!=p.current&&clearTimeout(p.current),p.current=setTimeout((()=>{d(Array.isArray(b.current)?b.current:[b.current]),p.current=null}),y)):h.current=!0}),[y]),disabled:m||!a}),v=o.useCallback(((e,t)=>{x&&(t&&(x.unobserve(t),h.current=!1),e&&x.observe(e))}),[x]),[w,k]=Uo(v),S=Bo(t);return o.useEffect((()=>{x&&w.current&&(x.disconnect(),h.current=!1,x.observe(w.current))}),[w,x]),o.useEffect((()=>(l({type:Px.RegisterDroppable,element:{id:r,key:i,disabled:n,node:w,rect:f,data:S}}),()=>l({type:Px.UnregisterDroppable,key:i,id:r}))),[r]),o.useEffect((()=>{n!==u.current.disabled&&(l({type:Px.SetDroppableDisabled,id:r,key:i,disabled:n}),u.current.disabled=n)}),[r,i,n,l]),{active:a,rect:f,isOver:(null==c?void 0:c.id)===r,node:w,over:c,setNodeRef:k}}({id:a,data:k,disabled:v.droppable,resizeObserverConfig:{updateMeasurementsFor:S,...c}}),{active:_,activatorEvent:I,activeNodeRect:A,attributes:T,setNodeRef:M,listeners:O,isDragging:D,over:R,setActivatorNodeRef:P,transform:L}=ww({id:a,data:k,attributes:{...Fw,...n},disabled:v.draggable}),z=as(j,M),F=Boolean(_),B=F&&!m&&Ew(f)&&Ew(y),U=!b&&D,$=U&&B?L:null,V=B?null!=$?$:(null!=l?l:x)({rects:g,activeNodeRect:A,activeIndex:f,overIndex:y,index:w}):null,H=Ew(f)&&Ew(y)?i({id:a,items:u,activeIndex:f,overIndex:y}):w,W=null==_?void 0:_.id,G=o.useRef({activeId:W,items:u,newIndex:H,containerId:h}),q=u!==G.current.items,Y=t({active:_,containerId:h,isDragging:D,isSorting:F,id:a,index:w,items:u,newIndex:G.current.newIndex,previousItems:G.current.items,previousContainerId:G.current.containerId,transition:d,wasDragging:null!=G.current.activeId}),J=function(e){let{disabled:t,index:n,node:r,rect:s}=e;const[i,a]=o.useState(null),l=o.useRef(n);return $o((()=>{if(!t&&n!==l.current&&r.current){const e=s.current;if(e){const t=tv(r.current,{ignoreTransform:!0}),n={x:e.left-t.left,y:e.top-t.top,scaleX:e.width/t.width,scaleY:e.height/t.height};(n.x||n.y)&&a(n)}}n!==l.current&&(l.current=n)}),[t,n,r,s]),o.useEffect((()=>{i&&a(null)}),[i]),i}({disabled:!Y,index:w,node:E,rect:C});return o.useEffect((()=>{F&&G.current.newIndex!==H&&(G.current.newIndex=H),h!==G.current.containerId&&(G.current.containerId=h),u!==G.current.items&&(G.current.items=u)}),[F,H,h,u]),o.useEffect((()=>{if(W===G.current.activeId)return;if(null!=W&&null==G.current.activeId)return void(G.current.activeId=W);const e=setTimeout((()=>{G.current.activeId=W}),50);return()=>clearTimeout(e)}),[W]),{active:_,activeIndex:f,attributes:T,data:k,rect:C,index:w,newIndex:H,items:u,isOver:N,isSorting:F,isDragging:D,listeners:O,node:E,overIndex:y,over:R,setNodeRef:z,setActivatorNodeRef:P,setDroppableNodeRef:j,setDraggableNodeRef:M,transform:null!=J?J:V,transition:function(){if(J||q&&G.current.newIndex===w)return zw;if(U&&!Go(I)||!d)return;if(F||Y)return ls.Transition.toString({...d,property:Lw});return}()}}function Uw(e){if(!e)return!1;const t=e.data.current;return!!(t&&"sortable"in t&&"object"==typeof t.sortable&&"containerId"in t.sortable&&"items"in t.sortable&&"index"in t.sortable)}const $w=[Sv.Down,Sv.Right,Sv.Up,Sv.Left],Vw=(e,t)=>{let{context:{active:n,collisionRect:r,droppableRects:o,droppableContainers:s,over:i,scrollableAncestors:a}}=t;if($w.includes(e.code)){if(e.preventDefault(),!n||!r)return;const t=[];s.getEnabled().forEach((n=>{if(!n||null!=n&&n.disabled)return;const s=o.get(n.id);if(s)switch(e.code){case Sv.Down:r.tops.top&&t.push(n);break;case Sv.Left:r.left>s.left&&t.push(n);break;case Sv.Right:r.left{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const o=Hx(t),s=[];for(const i of r){const{id:e}=i,t=n.get(e);if(t){const n=Hx(t),r=o.reduce(((e,t,r)=>e+Ux(n[r],t)),0),a=Number((r/4).toFixed(4));s.push({id:e,data:{droppableContainer:i,value:a}})}}return s.sort($x)})({collisionRect:r,droppableRects:o,droppableContainers:t});let c=Wx(l,"id");if(c===(null==i?void 0:i.id)&&l.length>1&&(c=l[1].id),null!=c){const e=s.get(n.id),t=s.get(c),i=t?o.get(t.id):null,l=null==t?void 0:t.node.current;if(l&&i&&e&&t){const n=rv(l).some(((e,t)=>a[t]!==e)),o=Hw(e,t),s=function(e,t){if(!Uw(e)||!Uw(t))return!1;if(!Hw(e,t))return!1;return e.data.current.sortable.index{e.forEach((e=>{"function"==typeof e?e(t):null!=e&&(e.current=t)}))}}const Gw=u.createContext(null),qw=o.memo((()=>o.useContext(Gw)));qw.displayName="DragHandle";const Yw=u.forwardRef(((e,t)=>{const n=C.c(21);let r,o,s,i,a;n[0]!==e?(({cellId:o,canMoveX:r,...s}=e),n[0]=e,n[1]=r,n[2]=o,n[3]=s):(r=n[1],o=n[2],s=n[3]),n[4]!==o?(i=o.toString(),n[4]=o,n[5]=i):i=n[5],n[6]!==i?(a={id:i},n[6]=i,n[7]=a):a=n[7];const{attributes:l,listeners:c,setNodeRef:d,transform:u,transition:h,isDragging:f}=Bw(a);let p;n[8]!==u?(p=function(e){return!e||0===e.x&&0===e.y&&1===e.scaleX&&1===e.scaleY}(u)?null:u,n[8]=u,n[9]=p):p=n[9];const m=p,g=null==m?void 0:h;let y;return n[10]!==l||n[11]!==r||n[12]!==o||n[13]!==f||n[14]!==c||n[15]!==s||n[16]!==t||n[17]!==d||n[18]!==m||n[19]!==g?(y=N.jsx(Jw,{ref:t,cellId:o,canMoveX:r,...s,attributes:l,listeners:c,setNodeRef:d,transform:m,transition:g,isDragging:f}),n[10]=l,n[11]=r,n[12]=o,n[13]=f,n[14]=c,n[15]=s,n[16]=t,n[17]=d,n[18]=m,n[19]=g,n[20]=y):y=n[20],y}));Yw.displayName="SortableCell";const Jw=u.forwardRef(((e,t)=>{const n=C.c(37);let r,o,s,i,a,l,c,d,u,h;if(n[0]!==e){const{cellId:t,canMoveX:h,children:f,attributes:p,listeners:m,setNodeRef:g,transform:y,transition:b,isDragging:x,...v}=e;o=h,s=f,r=p,a=m,c=g,d=y,u=b,i=x,l=v,n[0]=e,n[1]=r,n[2]=o,n[3]=s,n[4]=i,n[5]=a,n[6]=l,n[7]=c,n[8]=d,n[9]=u}else r=n[1],o=n[2],s=n[3],i=n[4],a=n[5],l=n[6],c=n[7],d=n[8],u=n[9];n[10]!==o||n[11]!==d?(h=d?ls.Transform.toString({x:o?d.x:0,y:d.y,scaleX:1,scaleY:1}):void 0,n[10]=o,n[11]=d,n[12]=h):h=n[12];const f=i?2:void 0;let p;n[13]!==h||n[14]!==f||n[15]!==u?(p={transform:h,transition:u,zIndex:f,position:"relative"},n[13]=h,n[14]=f,n[15]=u,n[16]=p):p=n[16];const m=p;let g,y;n[17]===Symbol.for("react.memo_cache_sentinel")?(g=N.jsx(id,{strokeWidth:1,size:20}),n[17]=g):g=n[17],n[18]!==r||n[19]!==a?(y=N.jsx("div",{...r,...a,onMouseDown:ot.preventFocus,"data-testid":"drag-button",className:"py-[1px] cursor-grab opacity-50 hover:opacity-100 hover-action hover:bg-muted rounded border border-transparent hover:border-border active:bg-accent",children:g}),n[18]=r,n[19]=a,n[20]=y):y=n[20];const b=y,x=Boolean(d);let v;n[21]!==t||n[22]!==c?(v=e=>{Ww(t,c)(e)},n[21]=t,n[22]=c,n[23]=v):v=n[23];const w=x&&"is-moving";let k,S,E;return n[24]!==l.className||n[25]!==w?(k=An(l.className,w,"outline-offset-4 outline-primary/40 rounded-lg"),n[24]=l.className,n[25]=w,n[26]=k):k=n[26],n[27]!==s||n[28]!==b?(S=N.jsx(Gw.Provider,{value:b,children:s}),n[27]=s,n[28]=b,n[29]=S):S=n[29],n[30]!==i||n[31]!==l||n[32]!==m||n[33]!==v||n[34]!==k||n[35]!==S?(E=N.jsx("div",{tabIndex:-1,ref:v,...l,"data-is-dragging":i,className:k,style:m,children:S}),n[30]=i,n[31]=l,n[32]=m,n[33]=v,n[34]=k,n[35]=S,n[36]=E):E=n[36],E}));Jw.displayName="SortableCellInternal";const Xw=u.memo(u.forwardRef(((e,t)=>{const n=C.c(34);let r,s,i;n[0]!==e?(({children:r,showTooltip:i,...s}=e),n[0]=e,n[1]=r,n[2]=s,n[3]=i):(r=n[1],s=n[2],i=n[3]);const a=void 0===i||i,[l,c]=o.useState(!1);let d;n[4]!==s?(d={cell:s},n[4]=s,n[5]=d):d=n[5];const u=_u(d),h=cs();let f,p,m,g,y,b;if(n[6]===Symbol.for("react.memo_cache_sentinel")?(f=()=>({toggle:()=>c(Zw)}),n[6]=f):f=n[6],o.useImperativeHandle(t,f),n[7]===Symbol.for("react.memo_cache_sentinel")?(p=N.jsx(Xe,{placeholder:"Search actions...",className:"h-6 m-1"}),n[7]=p):p=n[7],n[8]===Symbol.for("react.memo_cache_sentinel")?(m=N.jsx(Ke,{children:"No results"}),n[8]=m):m=n[8],n[9]!==u){let e;n[11]!==u.length?(e=(e,t)=>N.jsxs(o.Fragment,{children:[N.jsx(Ue,{children:e.map((e=>N.jsx(qe,{onSelect:()=>{e.disableClick||(e.handle(),c(!1))},variant:e.variant,children:N.jsxs("div",{className:"flex items-center flex-1",children:[e.icon&&N.jsx("div",{className:"mr-2 w-5 text-muted-foreground",children:e.icon}),N.jsx("div",{className:"flex-1",children:e.label}),N.jsxs("div",{className:"flex-shrink-0 text-sm",children:[e.hotkey&&ds(e.hotkey),e.rightElement]})]})},e.label)))},t),t{const t=C.c(5),{children:n,cellId:r}=e;let o,s;t[0]!==r?(s=function(e){return q((t=>Pu(e,t(ne))))}(r),t[0]=r,t[1]=s):s=t[1],o=s;const i=se(o);if(!i)return null;let a;return t[2]!==n||t[3]!==i?(a=N.jsx(Xw,{showTooltip:!1,...i,children:n}),t[2]=n,t[3]=i,t[4]=a):a=t[4],a}));function Zw(e){return!e}Kw.displayName="ConnectionCellActionsDropdown";const Qw=e=>{const t=C.c(30);let n,r,o;t[0]!==e?(({children:n,...r}=e),t[0]=e,t[1]=n,t[2]=r):(n=t[1],r=t[2]),t[3]!==r?(o={cell:r},t[3]=r,t[4]=o):o=t[4];const s=_u(o),[i,a]=u.useState(),l=Boolean(i);let c,d,h,f,p,m,g,y,b;if(t[5]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsx(st,{size:13,strokeWidth:1.5}),t[5]=c):c=t[5],t[6]!==r.cellId?(d=async()=>{var e;if(null==(e=window.getSelection())?void 0:e.toString())return void document.execCommand("copy");const t=document.getElementById(z.create(r.cellId));t?await nt(t.textContent??""):w.warn("cell-context-menu: output not found")},t[6]=r.cellId,t[7]=d):d=t[7],t[8]!==s||t[9]!==n||t[10]!==i||t[11]!==r||t[12]!==l||t[13]!==d){const e=[{label:"Copy",hidden:l,icon:c,handle:d},{label:"Cut",hidden:Boolean(i),icon:N.jsx(Md,{size:13,strokeWidth:1.5}),handle:ek},{label:"Paste",hidden:Boolean(i),icon:N.jsx(qc,{size:13,strokeWidth:1.5}),handle:async()=>{const{getEditorView:e}=r,t=e();if(t)try{const e=await navigator.clipboard.readText();if(e){const{from:n,to:r}=t.state.selection.main,o=t.state.update({changes:{from:n,to:r,insert:e}});t.dispatch(o)}}catch(n){const e=n;w.error("Failed to paste from clipboard",e),gs({command:"paste"})}}},{label:"Copy image",hidden:!i,icon:N.jsx(Gc,{size:13,strokeWidth:1.5}),handle:async()=>{if(i){const e=await fetch(i.src),t=await e.blob(),n=new ClipboardItem({[t.type]:t});await navigator.clipboard.write([n]).then(tk).catch(nk)}}},{icon:N.jsx(Jl,{size:13,strokeWidth:1.5}),label:"Download image",hidden:!i,handle:()=>{if(i){const e=document.createElement("a");e.download="image.png",e.href=i.src,e.click()}}},{label:"Go to Definition",icon:N.jsx(bs,{size:13,strokeWidth:1.5}),handle:()=>{const{getEditorView:e}=r,t=e();t&&ys(t)}}];let o;f=lx,t[19]===Symbol.for("react.memo_cache_sentinel")?(o=e=>{e.target instanceof HTMLImageElement?a(e.target):a(void 0)},t[19]=o):o=t[19],t[20]!==n?(g=N.jsx(cx,{onContextMenu:o,asChild:!0,children:n}),t[20]=n,t[21]=g):g=t[21],h=hx,p="w-[300px]",m=[e,...s].map(ok),t[8]=s,t[9]=n,t[10]=i,t[11]=r,t[12]=l,t[13]=d,t[14]=h,t[15]=f,t[16]=p,t[17]=m,t[18]=g}else h=t[14],f=t[15],p=t[16],m=t[17],g=t[18];return t[22]!==h||t[23]!==p||t[24]!==m?(y=N.jsx(h,{className:p,children:m}),t[22]=h,t[23]=p,t[24]=m,t[25]=y):y=t[25],t[26]!==f||t[27]!==g||t[28]!==y?(b=N.jsxs(f,{children:[g,y]}),t[26]=f,t[27]=g,t[28]=y,t[29]=b):b=t[29],b};function ek(){document.execCommand("cut")}function tk(){ee({title:"Copied image to clipboard"})}function nk(e){ee({title:"Failed to copy image to clipboard. Try downloading instead.",description:e.message}),w.error("Failed to copy image to clipboard",e)}function rk(e){return e.hidden?null:N.jsx(fx,{onSelect:t=>{e.handle(t)},variant:e.variant,children:N.jsxs("div",{className:"flex items-center flex-1",children:[e.icon&&N.jsx("div",{className:"mr-2 w-5 text-muted-foreground",children:e.icon}),N.jsx("div",{className:"flex-1",children:e.label}),N.jsxs("div",{className:"flex-shrink-0 text-sm",children:[e.hotkey&&ds(e.hotkey),e.rightElement]})]})},e.label)}function ok(e,t){return N.jsxs(o.Fragment,{children:[e.map(rk),t{const t=C.c(24),{editorView:n,code:r,currentLanguageAdapter:o,onAfterToggle:s}=e;let i,a;t[0]!==r?(a=(new Rt).isSupported(r)||""===r.trim(),t[0]=r,t[1]=a):a=t[1],i=a;const l=i;let c,d;t[2]!==r?(d=(new Ro).isSupported(r)||""===r.trim(),t[2]=r,t[3]=d):d=t[3],c=d;const u=c&&"python"===o;let h,f;t[4]===Symbol.for("react.memo_cache_sentinel")?(h=N.jsx(ve,{color:"var(--sky-11)",strokeWidth:2.5,className:"w-4 h-4"}),t[4]=h):h=t[4],t[5]!==o||t[6]!==n||t[7]!==s||t[8]!==u?(f=N.jsx(ik,{editorView:n,currentLanguageAdapter:o,canSwitchToLanguage:u,icon:h,toType:"sql",displayName:"SQL",onAfterToggle:s}),t[5]=o,t[6]=n,t[7]=s,t[8]=u,t[9]=f):f=t[9];const p=l&&"python"===o;let m,g,y,b,x;return t[10]===Symbol.for("react.memo_cache_sentinel")?(m=N.jsx(gl,{fill:"var(--sky-11)",color:"black",className:"w-4 h-4"}),t[10]=m):m=t[10],t[11]!==o||t[12]!==n||t[13]!==s||t[14]!==p?(g=N.jsx(ik,{editorView:n,currentLanguageAdapter:o,canSwitchToLanguage:p,icon:m,toType:"markdown",displayName:"Markdown",onAfterToggle:s}),t[11]=o,t[12]=n,t[13]=s,t[14]=p,t[15]=g):g=t[15],t[16]===Symbol.for("react.memo_cache_sentinel")?(y=N.jsx(yl,{fill:"var(--sky-11)",color:"black",className:"w-4 h-4"}),t[16]=y):y=t[16],t[17]!==o||t[18]!==n?(b=N.jsx(ik,{editorView:n,currentLanguageAdapter:o,canSwitchToLanguage:!0,icon:y,toType:"python",displayName:"Python",onAfterToggle:Kn.NOOP}),t[17]=o,t[18]=n,t[19]=b):b=t[19],t[20]!==g||t[21]!==b||t[22]!==f?(x=N.jsxs("div",{className:"absolute right-3 top-2 z-20 flex hover-action gap-1",children:[f,g,b]}),t[20]=g,t[21]=b,t[22]=f,t[23]=x):x=t[23],x},ik=e=>{const t=C.c(10),{editorView:n,currentLanguageAdapter:r,canSwitchToLanguage:o,icon:s,toType:i,displayName:a,onAfterToggle:l}=e;let c;t[0]!==n||t[1]!==l||t[2]!==i?(c=()=>{n&&(xe(n,i),l())},t[0]=n,t[1]=l,t[2]=i,t[3]=c):c=t[3];const d=c;if(!o)return null;if(r===i)return null;const u=`View as ${a}`;let h,f;return t[4]!==d||t[5]!==s?(h=N.jsx(J,{"data-testid":"language-toggle-button",variant:"text",size:"xs",className:"opacity-80 px-1",onClick:d,children:s}),t[4]=d,t[5]=s,t[6]=h):h=t[6],t[7]!==u||t[8]!==h?(f=N.jsx(it,{content:u,children:h}),t[7]=u,t[8]=h,t[9]=f):f=t[9],f};var ak={modified:{doc:""},original:{doc:""}},lk=o.createContext(ak);function ck(e,t){return xs({},e,t,{modified:xs({},e.modified,t.modified),original:xs({},e.original,t.original)})}var dk=()=>o.useContext(lk),uk=e=>{var{children:t,theme:n}=e,[r,s]=o.useReducer(ck,xs({},ak,{theme:n}));return o.useEffect((()=>s({theme:n})),[n]),N.jsx(lk.Provider,{value:xs({},r,{dispatch:s}),children:t})},hk=["extensions","value","selection","onChange"],fk=e=>{var{extensions:t=[],value:n,selection:r,onChange:s}=e,i=vs(e,hk),{theme:a,dispatch:l}=dk(),c=ws(xs({},i,{theme:a}));return o.useEffect((()=>l({original:{doc:n,selection:r,extensions:[...c,...t]},originalExtension:{onChange:s,option:i,extension:[t]}})),[e]),null};fk.displayName="CodeMirrorMerge.Original";var pk=["extensions","value","selection","onChange"],mk=e=>{var{extensions:t=[],value:n,selection:r,onChange:s}=e,i=vs(e,pk),{theme:a,dispatch:l}=dk(),c=ws(xs({},i,{theme:a}));return o.useEffect((()=>{l({modified:{doc:n,selection:r,extensions:[...c,...t]},modifiedExtension:{onChange:s,option:i,extension:[t]}})}),[e]),null};mk.displayName="CodeMirrorMerge.Modified";class gk{constructor(e,t,n,r){this.fromA=e,this.toA=t,this.fromB=n,this.toB=r}offset(e,t){return new gk(this.fromA+e,this.toA+e,this.fromB+t,this.toB+t)}}function yk(e,t,n,r,o,s){if(e==r)return[];let i=Ck(e,t,n,r,o,s),a=Ek(e,t+i,n,r,o+i,s),l=(n-=a)-(t+=i),c=(s-=a)-(o+=i);if(!l||!c)return[new gk(t,n,o,s)];if(l>c){let i=e.slice(t,n).indexOf(r.slice(o,s));if(i>-1)return[new gk(t,t+i,o,o),new gk(t+i+c,n,s,s)]}else if(c>l){let i=r.slice(o,s).indexOf(e.slice(t,n));if(i>-1)return[new gk(t,t,o,o+i),new gk(n,n,o+i+l,s)]}if(1==l||1==c)return[new gk(t,n,o,s)];let d=jk(e,t,n,r,o,s);if(d){let[i,a,l]=d;return yk(e,t,i,r,o,a).concat(yk(e,i+l,n,r,a+l,s))}return function(e,t,n,r,o,s){let i=n-t,a=s-o;if(bk<1e9&&Math.min(i,a)>16*bk)return Math.min(i,a)>64*bk?[new gk(t,n,o,s)]:_k(e,t,n,r,o,s);let l=Math.ceil((i+a)/2);vk.reset(l),wk.reset(l);let c=(n,s)=>e.charCodeAt(t+n)==r.charCodeAt(o+s),d=(t,o)=>e.charCodeAt(n-t-1)==r.charCodeAt(s-o-1),u=(i-a)%2!=0?wk:null,h=u?null:vk;for(let f=0;fbk)return _k(e,t,n,r,o,s);let p=vk.advance(f,i,a,l,u,!1,c)||wk.advance(f,i,a,l,h,!0,d);if(p)return kk(e,t,n,t+p[0],r,o,s,o+p[1])}return[new gk(t,n,o,s)]}(e,t,n,r,o,s)}let bk=1e9;class xk{constructor(){this.vec=[]}reset(e){this.len=e<<1;for(let t=0;tt)this.end+=2;else if(d>n)this.start+=2;else if(o){let e=r+(t-n)-a;if(e>=0&&e=t-c)return[n,r+n-e]}else{if(c>=t-o.vec[e])return[c,d]}}}return null}}const vk=new xk,wk=new xk;function kk(e,t,n,r,o,s,i,a){let l=!1;return Fk(e,r)||++r!=n||(l=!0),Fk(o,a)||++a!=i||(l=!0),l?[new gk(t,n,s,i)]:yk(e,t,r,o,s,a).concat(yk(e,r,n,o,a,i))}function Sk(e,t){let n=1,r=Math.min(e,t);for(;nn||c>s||e.slice(a,o)!=r.slice(l,c)){if(1==i)return a-t-(Fk(e,a)?0:1);i>>=1}else{if(o==n||c==s)return o-t;a=o,l=c}}}function Ek(e,t,n,r,o,s){if(t==n||o==s||e.charCodeAt(n-1)!=r.charCodeAt(s-1))return 0;let i=Sk(n-t,s-o);for(let a=n,l=s;;){let s=a-i,c=l-i;if(s>=1}else{if(s==t||c==o)return n-s;a=s,l=c}}}function Nk(e,t,n,r,o,s,i,a){let l=r.slice(o,s),c=null;for(;;){if(c||i=n)break;let u=e.slice(a,d),h=-1;for(;-1!=(h=l.indexOf(u,h+1));){let i=Ck(e,d,n,r,o+h+u.length,s),l=Ek(e,t,a,r,o,o+h),f=u.length+i+l;(!c||c[2]>=1}}function jk(e,t,n,r,o,s){let i=n-t,a=s-o;if(io.fromA-t&&r.toB>o.fromB-t&&(e[n-1]=new gk(r.fromA,o.toA,r.fromB,o.toB),e.splice(n--,1))}}let Ak;try{Ak=new RegExp("[\\p{Alphabetic}\\p{Number}]","u")}catch(PY){}function Tk(e){return e>48&&e<58||e>64&&e<91||e>96&&e<123}function Mk(e,t){if(t==e.length)return 0;let n=e.charCodeAt(t);return n<192?Tk(n)?1:0:Ak?Lk(n)&&t!=e.length-1?Ak.test(e.slice(t,t+2))?2:0:Ak.test(String.fromCharCode(n))?1:0:0}function Ok(e,t){if(!t)return 0;let n=e.charCodeAt(t-1);return n<192?Tk(n)?1:0:Ak?zk(n)&&1!=t?Ak.test(e.slice(t-2,t))?2:0:Ak.test(String.fromCharCode(n))?1:0:0}function Dk(e,t,n){if(t==e.length||!Ok(e,t))return t;for(let r=t,o=t+n;;){let n=Mk(e,r);if(!n)return r;if(r+=n,r>o)return t}}function Rk(e,t,n){if(!t||!Mk(e,t))return t;for(let r=t,o=t-n;;){let n=Ok(e,r);if(!n)return r;if(r-=n,re>=55296&&e<=56319,zk=e=>e>=56320&&e<=57343;function Fk(e,t){return!t||t==e.length||!Lk(e.charCodeAt(t-1))||!zk(e.charCodeAt(t))}function Bk(e,t,n){var r;return bk=(null!==(r=null==n?void 0:n.scanLimit)&&void 0!==r?r:1e9)>>1,function(e,t,n){for(;;){Ik(n,1);let r=!1;for(let o=0;o3||a>3){let l=o==e.length-1?t.length:e[o+1].fromA,c=s.fromA-r,d=l-s.toA,u=Rk(t,s.fromA,Math.min(c,5)),h=Dk(t,s.toA,Math.min(d,5)),f=s.fromA-u,p=h-s.toA;if(!i||!a){let d,m,g=Math.max(i,a),[y,b,x]=i?[t,s.fromA,s.toA]:[n,s.fromB,s.toB];f&&p?(g>f&&t.slice(u,s.fromA)==y.slice(x-f,x)?(s=e[o]=new gk(u,u+i,s.fromB-f,s.toB-f),u=s.fromA,h=Dk(t,s.toA,Math.min(l-s.toA,5))):g>p&&t.slice(s.toA,h)==y.slice(b,b+p)&&(s=e[o]=new gk(h-i,h,s.fromB+p,s.toB+p),h=s.toA,u=Rk(t,s.fromA,Math.min(s.fromA-r,5))),f=s.fromA-u,p=h-s.toA):f||p||!(m=s.fromA-(d=Pk(t,s.fromA,c)))||t.slice(d,s.fromA)!=y.slice(x-m,x)||(s=e[o]=new gk(d,d+i,s.fromB-m,s.toB-m))}(f||p)&&(s=e[o]=new gk(s.fromA-f,s.toA+p,s.fromB-f,s.toB+p)),r=s.toA}}return Ik(e,3),e}(Bk(e,t,n),e,t)}const $k=sr.define({combine:e=>e[0]}),Vk=kn.define(),Hk=xn.define({create:e=>null,update(e,t){for(let n of t.effects)n.is(Vk)&&(e=n.value);return e}});class Wk{constructor(e,t,n,r,o){this.changes=e,this.fromA=t,this.toA=n,this.fromB=r,this.toB=o}offset(e,t){return e||t?new Wk(this.changes,this.fromA+e,this.toA+e,this.fromB+t,this.toB+t):this}get endA(){return Math.max(this.fromA,this.toA-1)}get endB(){return Math.max(this.fromB,this.toB-1)}static build(e,t,n){return Yk(Uk(e.toString(),t.toString(),n),e,t,0,0)}static updateA(e,t,n,r,o){return Zk(Kk(e,r,!0,n.length),e,t,n,o)}static updateB(e,t,n,r,o){return Zk(Kk(e,r,!1,t.length),e,t,n,o)}}function Gk(e,t,n,r){let o=n.lineAt(e),s=r.lineAt(t);return o.to==e&&s.to==t&&ed+1&&f>u+1)break;h.push(s.offset(-l+r,-c+o)),[d,u]=qk(s.toA+r,s.toB+o,t,n),i++}s.push(new Wk(h,l,Math.max(l,d),c,Math.max(c,u)))}return s}const Jk=1e3;function Xk(e,t,n,r){let o=0,s=e.length;for(;;){if(o==s){let r=0,s=0;o&&({toA:r,toB:s}=e[o-1]);let i=t-(n?r:s);return[r+i,s+i]}let i=o+s>>1,a=e[i],[l,c]=n?[a.fromA,a.toA]:[a.fromB,a.toB];if(l>t)s=i;else{if(!(c<=t))return r?[a.fromA,a.fromB]:[a.toA,a.toB];o=i+1}}}function Kk(e,t,n,r){let o=[];return t.iterChangedRanges(((s,i,a,l)=>{let c=0,d=n?t.length:r,u=0,h=n?r:t.length;s>Jk&&([c,u]=Xk(e,s-Jk,n,!0)),i=c?o[o.length-1]={fromA:f.fromA,fromB:f.fromB,toA:d,toB:h,diffA:f.diffA+m,diffB:f.diffB+g}:o.push({fromA:c,toA:d,fromB:u,toB:h,diffA:m,diffB:g})})),o}function Zk(e,t,n,r,o){if(!e.length)return t;let s=0,i=0,a=0,l=[];for(let c of e){let e=c.fromA+i,d=c.toA+i+c.diffA,u=c.fromB+a,h=c.toB+a+c.diffB;for(;sd)break;s++}for(let t of Yk(Uk(n.sliceString(e,d),r.sliceString(u,h),o),n,r,e,u))l.push(t);for(i+=c.diffA,a+=c.diffB;sd+i&&e.fromB>h+a)break;s++}}for(;se.deco}),eS=rr.low(Cs({class:"cm-changeGutter",markers:e=>{var t;return(null===(t=e.plugin(Qk))||void 0===t?void 0:t.gutter)||Es.empty}}));const tS=vn.line({class:"cm-changedLine"}),nS=vn.mark({class:"cm-changedText"}),rS=vn.mark({tagName:"ins",class:"cm-insertedLine"}),oS=vn.mark({tagName:"del",class:"cm-deletedLine"}),sS=new class extends Ns{constructor(){super(...arguments),this.elementClass="cm-changedLineGutter"}};function iS(e,t,n,r,o,s){let i=n?e.fromA:e.fromB,a=n?e.toA:e.toB,l=0;if(i!=a){o.add(i,i,tS),o.add(i,a,n?oS:rS),s&&s.add(i,i,sS);for(let c=t.iterRange(i,a-1),d=i;!c.next().done;){if(c.lineBreak){d++,o.add(d,d,tS),s&&s.add(d,d,sS);continue}let t=d+c.value.length;if(r)for(;l=c)break;(s?d.toA:d.toB)>l&&iS(d,e.state.doc,s,r,i,a)}return{deco:i.finish(),gutter:a&&a.finish()}}class lS extends or{constructor(e){super(),this.height=e}eq(e){return this.height==e.height}toDOM(){let e=document.createElement("div");return e.className="cm-mergeSpacer",e.style.height=this.height+"px",e}updateDOM(e){return e.style.height=this.height+"px",!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}}const cS=kn.define({map:(e,t)=>e.map(t)}),dS=xn.define({create:()=>vn.none,update:(e,t)=>{for(let n of t.effects)if(n.is(cS))return n.value;return e.map(t.changes)},provide:e=>yn.decorations.from(e)}),uS=.01;const hS=kn.define({map:(e,t)=>t.mapPos(e)});class fS extends or{constructor(e){super(),this.lines=e}eq(e){return this.lines==e.lines}toDOM(e){let t=document.createElement("div");return t.className="cm-collapsedLines",t.textContent="⦚ "+e.state.phrase("$ unchanged lines",this.lines)+" ⦚",t.addEventListener("click",(t=>{let n=e.posAtDOM(t.target);e.dispatch({effects:hS.of(n)});let{side:r,sibling:o}=e.state.facet($k);o&&o().dispatch({effects:hS.of(pS(n,e.state.field(Hk),"a"==r))})})),t}ignoreEvent(e){return e instanceof MouseEvent}get estimatedHeight(){return 27}}function pS(e,t,n){let r=0,o=0;for(let s=0;;s++){let i=s=e)return o+(e-r);[r,o]=n?[i.toA,i.toB]:[i.toB,i.toA]}}const mS=xn.define({create:e=>vn.none,update(e,t){e=e.map(t.changes);for(let n of t.effects)n.is(hS)&&(e=e.update({filter:e=>e!=n.value}));return e},provide:e=>yn.decorations.from(e)});function gS({margin:e=3,minSize:t=4}){return mS.init((n=>function(e,t,n){let r=new wn,o="a"==e.facet($k).side,s=e.field(Hk),i=1;for(let a=0;;a++){let l=a=n&&r.add(e.doc.line(c).from,e.doc.line(d).to,vn.replace({widget:new fS(u),block:!0})),!l)break;i=e.doc.lineAt(Math.min(e.doc.length,o?l.toA:l.toB)).number}return r.finish()}(n,e,t)))}const yS=yn.styleModule.of(new Ss({".cm-mergeView":{overflowY:"auto"},".cm-mergeViewEditors":{display:"flex",alignItems:"stretch"},".cm-mergeViewEditor":{flexGrow:1,flexBasis:0,overflow:"hidden"},".cm-merge-revert":{width:"1.6em",flexGrow:0,flexShrink:0,position:"relative"},".cm-merge-revert button":{position:"absolute",display:"block",width:"100%",boxSizing:"border-box",textAlign:"center",background:"none",border:"none",font:"inherit",cursor:"pointer"}})),bS=yn.baseTheme({".cm-mergeView & .cm-scroller, .cm-mergeView &":{height:"auto !important",overflowY:"visible !important"},"&.cm-merge-a .cm-changedLine, .cm-deletedChunk":{backgroundColor:"rgba(160, 128, 100, .08)"},"&.cm-merge-b .cm-changedLine":{backgroundColor:"rgba(100, 160, 128, .08)"},"&light.cm-merge-a .cm-changedText, &light .cm-deletedChunk .cm-deletedText":{background:"linear-gradient(#ee443366, #ee443366) bottom/100% 2px no-repeat"},"&dark.cm-merge-a .cm-changedText, &dark .cm-deletedChunk .cm-deletedText":{background:"linear-gradient(#ffaa9966, #ffaa9966) bottom/100% 2px no-repeat"},"&light.cm-merge-b .cm-changedText":{background:"linear-gradient(#22bb2266, #22bb2266) bottom/100% 2px no-repeat"},"&dark.cm-merge-b .cm-changedText":{background:"linear-gradient(#88ff8866, #88ff8866) bottom/100% 2px no-repeat"},".cm-insertedLine, .cm-deletedLine":{textDecoration:"none"},".cm-deletedChunk":{paddingLeft:"6px","& .cm-chunkButtons":{position:"absolute",insetInlineEnd:"5px"},"& button":{border:"none",cursor:"pointer",color:"white",margin:"0 2px",borderRadius:"3px","&[name=accept]":{background:"#2a2"},"&[name=reject]":{background:"#d43"}}},".cm-collapsedLines":{padding:"5px 5px 5px 10px",cursor:"pointer"},"&light .cm-collapsedLines":{color:"#444",background:"linear-gradient(to bottom, transparent 0, #f3f3f3 30%, #f3f3f3 70%, transparent 100%)"},"&dark .cm-collapsedLines":{color:"#ddd",background:"linear-gradient(to bottom, transparent 0, #222 30%, #222 70%, transparent 100%)"},".cm-changeGutter":{width:"3px",paddingLeft:"1px"},"&light.cm-merge-a .cm-changedLineGutter, &light .cm-deletedLineGutter":{background:"#e43"},"&dark.cm-merge-a .cm-changedLineGutter, &dark .cm-deletedLineGutter":{background:"#fa9"},"&light.cm-merge-b .cm-changedLineGutter":{background:"#2b2"},"&dark.cm-merge-b .cm-changedLineGutter":{background:"#8f8"}}),xS=new ks,vS=new ks;class wS{constructor(e){this.revertDOM=null,this.revertToA=!1,this.revertToLeft=!1,this.measuring=-1,this.diffConf=e.diffConfig;let t=[rr.low(Qk),bS,yS,dS,yn.updateListener.of((e=>{this.measuring<0&&(e.heightChanged||e.viewportChanged)&&!e.transactions.some((e=>e.effects.some((e=>e.is(cS)))))&&this.measure()}))],n=[$k.of({side:"a",sibling:()=>this.b,highlightChanges:!1!==e.highlightChanges,markGutter:!1!==e.gutter})];!1!==e.gutter&&n.push(eS);let r=Hr.create({doc:e.a.doc,selection:e.a.selection,extensions:[e.a.extensions||[],yn.editorAttributes.of({class:"cm-merge-a"}),vS.of(n),t]}),o=[$k.of({side:"b",sibling:()=>this.a,highlightChanges:!1!==e.highlightChanges,markGutter:!1!==e.gutter})];!1!==e.gutter&&o.push(eS);let s=Hr.create({doc:e.b.doc,selection:e.b.selection,extensions:[e.b.extensions||[],yn.editorAttributes.of({class:"cm-merge-b"}),vS.of(o),t]});this.chunks=Wk.build(r.doc,s.doc,this.diffConf);let i=[Hk.init((()=>this.chunks)),xS.of(e.collapseUnchanged?gS(e.collapseUnchanged):[])];r=r.update({effects:kn.appendConfig.of(i)}).state,s=s.update({effects:kn.appendConfig.of(i)}).state,this.dom=document.createElement("div"),this.dom.className="cm-mergeView",this.editorDOM=this.dom.appendChild(document.createElement("div")),this.editorDOM.className="cm-mergeViewEditors";let a=e.orientation||"a-b",l=document.createElement("div");l.className="cm-mergeViewEditor";let c=document.createElement("div");c.className="cm-mergeViewEditor",this.editorDOM.appendChild("a-b"==a?l:c),this.editorDOM.appendChild("a-b"==a?c:l),this.a=new yn({state:r,parent:l,root:e.root,dispatchTransactions:e=>this.dispatch(e,this.a)}),this.b=new yn({state:s,parent:c,root:e.root,dispatchTransactions:e=>this.dispatch(e,this.b)}),this.setupRevertControls(!!e.revertControls,"b-to-a"==e.revertControls,e.renderRevertControl),e.parent&&e.parent.appendChild(this.dom),this.scheduleMeasure()}dispatch(e,t){if(e.some((e=>e.docChanged))){let n=e[e.length-1],r=e.reduce(((e,t)=>e.compose(t.changes)),cr.empty(e[0].startState.doc.length));this.chunks=t==this.a?Wk.updateA(this.chunks,n.newDoc,this.b.state.doc,r,this.diffConf):Wk.updateB(this.chunks,this.a.state.doc,n.newDoc,r,this.diffConf),t.update([...e,n.state.update({effects:Vk.of(this.chunks)})]);let o=t==this.a?this.b:this.a;o.update([o.state.update({effects:Vk.of(this.chunks)})]),this.scheduleMeasure()}else t.update(e)}reconfigure(e){if("diffConfig"in e&&(this.diffConf=e.diffConfig),"orientation"in e){let t="b-a"!=e.orientation;if(t!=(this.editorDOM.firstChild==this.a.dom.parentNode)){let e=this.a.dom.parentNode,n=this.b.dom.parentNode;e.remove(),n.remove(),this.editorDOM.insertBefore(t?e:n,this.editorDOM.firstChild),this.editorDOM.appendChild(t?n:e),this.revertToLeft=!this.revertToLeft,this.revertDOM&&(this.revertDOM.textContent="")}}if("revertControls"in e||"renderRevertControl"in e){let t=!!this.revertDOM,n=this.revertToA,r=this.renderRevert;"revertControls"in e&&(t=!!e.revertControls,n="b-to-a"==e.revertControls),"renderRevertControl"in e&&(r=e.renderRevertControl),this.setupRevertControls(t,n,r)}let t="highlightChanges"in e,n="gutter"in e,r="collapseUnchanged"in e;if(t||n||r){let o=[],s=[];if(t||n){let r=this.a.state.facet($k),i=n?!1!==e.gutter:r.markGutter,a=t?!1!==e.highlightChanges:r.highlightChanges;o.push(vS.reconfigure([$k.of({side:"a",sibling:()=>this.b,highlightChanges:a,markGutter:i}),i?eS:[]])),s.push(vS.reconfigure([$k.of({side:"b",sibling:()=>this.a,highlightChanges:a,markGutter:i}),i?eS:[]]))}if(r){let t=xS.reconfigure(e.collapseUnchanged?gS(e.collapseUnchanged):[]);o.push(t),s.push(t)}this.a.dispatch({effects:o}),this.b.dispatch({effects:s})}this.scheduleMeasure()}setupRevertControls(e,t,n){this.revertToA=t,this.revertToLeft=this.revertToA==(this.editorDOM.firstChild==this.a.dom.parentNode),this.renderRevert=n,!e&&this.revertDOM?(this.revertDOM.remove(),this.revertDOM=null):e&&!this.revertDOM?(this.revertDOM=this.editorDOM.insertBefore(document.createElement("div"),this.editorDOM.firstChild.nextSibling),this.revertDOM.addEventListener("mousedown",(e=>this.revertClicked(e))),this.revertDOM.className="cm-merge-revert"):this.revertDOM&&(this.revertDOM.textContent="")}scheduleMeasure(){if(this.measuring<0){let e=this.dom.ownerDocument.defaultView||window;this.measuring=e.requestAnimationFrame((()=>{this.measuring=-1,this.measure()}))}}measure(){!function(e,t,n){let r=new wn,o=new wn,s=e.state.field(dS).iter(),i=t.state.field(dS).iter(),a=0,l=0,c=0,d=0;for(let p=0;;p++){let u=puS&&(d+=n,o.add(l,l,vn.widget({widget:new lS(n),block:!0,side:-1})))}if(!u)break;for(a=u.toA,l=u.toB;s.value&&s.fromuS&&o.add(t.state.doc.length,t.state.doc.length,vn.widget({widget:new lS(u),block:!0,side:1}));let h=r.finish(),f=o.finish();Es.eq([h],[e.state.field(dS)])||e.dispatch({effects:cS.of(h)}),Es.eq([f],[t.state.field(dS)])||t.dispatch({effects:cS.of(f)})}(this.a,this.b,this.chunks),this.revertDOM&&this.updateRevertButtons()}updateRevertButtons(){let e=this.revertDOM,t=e.firstChild,n=this.a.viewport,r=this.b.viewport;for(let o=0;on.to||s.fromB>r.to)break;if(s.fromA-1&&(this.dom.ownerDocument.defaultView||window).cancelAnimationFrame(this.measuring),this.dom.remove()}}function kS(e){let t=e.nextSibling;return e.remove(),t}var SS=["className","children","orientation","revertControls","highlightChanges","gutter","collapseUnchanged","destroyRerender","renderRevertControl"],CS=["modified","modifiedExtension","original","originalExtension","theme","dispatch"],ES=u.forwardRef(((e,t)=>{var{className:n,children:r,orientation:s,revertControls:i,highlightChanges:a,gutter:l,collapseUnchanged:c,destroyRerender:d=!0,renderRevertControl:u}=e,h=vs(e,SS),f=dk(),{modified:p,modifiedExtension:m,original:g,originalExtension:y,theme:b,dispatch:x}=f,v=vs(f,CS),w=o.useRef(null),k=o.useRef(),S={orientation:s,revertControls:i,highlightChanges:a,gutter:l,collapseUnchanged:c,renderRevertControl:u};o.useImperativeHandle(t,(()=>({container:w.current,view:k.current,modified:p,original:g,config:xs({a:g,b:p,parent:w.current},S)})),[w,k,p,g,S]);var C=yn.updateListener.of((e=>{if(e.docChanged&&"function"==typeof(null==y?void 0:y.onChange)){var t=e.state.doc.toString();null==y||y.onChange(t,e)}})),E=yn.updateListener.of((e=>{if(e.docChanged&&"function"==typeof(null==m?void 0:m.onChange)){var t=e.state.doc.toString();null==m||m.onChange(t,e)}}));o.useEffect((()=>{!k.current&&w.current&&y&&m&&(k.current=new wS(xs({a:xs({},g,{extensions:[...(null==y?void 0:y.extension)||[],...ws(xs({},null==y?void 0:y.option,{theme:b})),C]}),b:xs({},p,{extensions:[...(null==m?void 0:m.extension)||[],...ws(xs({},null==m?void 0:m.option,{theme:b})),E]}),parent:w.current},S)),x({view:k.current}))}),[k,w,y,m]),o.useEffect((()=>{if(g&&g.doc&&k.current){var e,t,n=null==(e=k.current)?void 0:e.a.state.doc.toString();if(n!==g.doc)null==(t=k.current)||t.a.dispatch({changes:{from:0,to:n.length,insert:g.doc||""}})}if(p&&p.doc&&k.current){var r,o,s=null==(r=k.current)?void 0:r.b.state.doc.toString();if(s!==p.doc)null==(o=k.current)||o.b.dispatch({changes:{from:0,to:s.length,insert:p.doc||""}})}if(d&&k.current){var i=k.current.a.state.selection.ranges[0].from,a=k.current.b.state.selection.ranges[0].from;k.current.destroy(),k.current=new wS(xs({a:xs({},g,{extensions:[...(null==y?void 0:y.extension)||[],...ws(xs({},null==y?void 0:y.option,{theme:b}))]}),b:xs({},p,{extensions:[...(null==m?void 0:m.extension)||[],...ws(xs({},null==m?void 0:m.option,{theme:b}))]}),parent:w.current},S)),i&&(k.current.a.focus(),k.current.a.dispatch({selection:{anchor:i,head:i}})),a&&(k.current.b.focus(),k.current.b.dispatch({selection:{anchor:a,head:a}}))}}),[k,b,w.current,g,p,y,m,d]),o.useEffect((()=>()=>k.current&&k.current.destroy()),[]),o.useEffect((()=>{if(k.current){var e={};v.orientation!==s&&(e.orientation=s),v.revertControls!==i&&(e.revertControls=i),v.highlightChanges!==a&&(e.highlightChanges=a),v.gutter!==l&&(e.gutter=l),v.collapseUnchanged!==c&&(e.collapseUnchanged=c),v.renderRevertControl!==u&&(e.collapseUnchanged=c),Object.keys(e).length&&x&&k.current&&(k.current.reconfigure(xs({},e)),x(xs({},e)))}}),[x,k,s,i,a,l,c,u]);return N.jsx("div",xs({ref:w,className:"cm-merge-theme"+(n?" "+n:"")},h,{children:r}))}));ES.displayName="CodeMirrorMerge.Internal";var NS=["theme"],jS=u.forwardRef(((e,t)=>{var{theme:n}=e,r=vs(e,NS);return N.jsx(uk,{theme:n,children:N.jsx(ES,xs({},r,{ref:t}))})}));jS.Original=fk,jS.Modified=mk,jS.displayName="CodeMirrorMerge";const _S=jS.Original,IS=jS.Modified,AS=[_s(),yn.lineWrapping],TS=e=>{const t=C.c(55),{className:n,onChange:r,initialPrompt:s,currentLanguageAdapter:i,currentCode:a,declineChange:l,acceptChange:c,enabled:d,children:h}=e;let f;t[0]===Symbol.for("react.memo_cache_sentinel")?(f={},t[0]=f):f=t[0];const[p,m]=o.useState(f),[g,y]=ze(vu);let b,x,v,w,k;t[1]===Symbol.for("react.memo_cache_sentinel")?(b=Sr("api/ai/completion").toString(),x=Cr.headers(),t[1]=b,t[2]=x):(b=t[1],x=t[2]),t[3]!==a||t[4]!==g?(v=g?hr(a):"",t[3]=a,t[4]=g,t[5]=v):v=t[5],t[6]!==p||t[7]!==a||t[8]!==i||t[9]!==v?(w={...p,includeOtherCode:v,code:a,language:i},t[6]=p,t[7]=a,t[8]=i,t[9]=v,t[10]=w):w=t[10],t[11]!==s||t[12]!==w?(k={api:b,headers:x,initialInput:s,streamProtocol:"text",experimental_throttle:100,body:w,onError:MS},t[11]=s,t[12]=w,t[13]=k):k=t[13];const{completion:S,input:E,stop:j,isLoading:_,setCompletion:I,setInput:A,handleSubmit:T}=js(k),M=u.useRef(null);let O,D,R,P;t[14]!==d?(O=()=>{const e=M.current;d&&e&&(requestAnimationFrame((()=>{var t;null==(t=e.view)||t.focus()})),Is(M.current.view))},D=[d],t[14]=d,t[15]=O,t[16]=D):(O=t[15],D=t[16]),o.useEffect(O,D),t[17]!==d||t[18]!==s||t[19]!==A?(P=()=>{d&&A(s||"")},R=[d,s,A],t[17]=d,t[18]=s,t[19]=A,t[20]=R,t[21]=P):(R=t[20],P=t[21]),o.useEffect(P,R);const{theme:L}=De();let z;t[22]!==n?(z=An("flex flex-col w-full rounded-[inherit] overflow-hidden",n),t[22]=n,t[23]=z):z=t[23];const F=d&&"max-h-[400px] min-h-11 visible",B=!d&&"max-h-0 min-h-0 invisible";let U,$,V,H;t[24]!==F||t[25]!==B?(U=An("flex items-center gap-2 border-b px-3 transition-all rounded-[inherit] rounded-b-none duration-300 overflow-hidden",F,B),t[24]=F,t[25]=B,t[26]=U):U=t[26],t[27]!==c||t[28]!==S||t[29]!==l||t[30]!==d||t[31]!==T||t[32]!==g||t[33]!==E||t[34]!==_||t[35]!==I||t[36]!==y||t[37]!==A||t[38]!==j||t[39]!==L?($=d&&N.jsxs(N.Fragment,{children:[N.jsx(he,{className:"text-[var(--blue-10)] flex-shrink-0",size:16}),N.jsx(As,{inputRef:M,theme:L,onClose:()=>{l(),I("")},value:E,onChange:e=>{A(e),m(Ts(e))},onSubmit:()=>{_||T()}}),_&&N.jsxs(J,{"data-testid":"stop-completion-button",variant:"text",size:"xs",className:"mb-0",onClick:j,children:[N.jsx(Ms,{className:"animate-spin mr-1",size:14}),"Stop"]}),!_&&S&&N.jsx(J,{"data-testid":"accept-completion-button",variant:"text",size:"xs",className:"mb-0",disabled:_,onClick:()=>{c(S),I("")},children:N.jsx("span",{className:"text-[var(--grass-11)] opacity-100",children:"Accept"})}),N.jsx("div",{className:"h-full w-px bg-border mx-2"}),N.jsx(it,{content:"Include code from other cells",children:N.jsxs("div",{className:"flex flex-row items-start gap-1 overflow-hidden",children:[N.jsx(Os,{"data-testid":"include-other-cells-checkbox",id:"include-other-cells",checked:g,onCheckedChange:e=>y(Boolean(e))}),N.jsx(Me,{htmlFor:"include-other-cells",className:"text-muted-foreground text-xs whitespace-nowrap ellipsis",children:"Include all code"})]})}),N.jsx(J,{"data-testid":"decline-completion-button",variant:"text",size:"icon",disabled:_,onClick:()=>{j(),l(),I("")},children:N.jsx(Cn,{className:"text-[var(--red-10)]",size:16})})]}),t[27]=c,t[28]=S,t[29]=l,t[30]=d,t[31]=T,t[32]=g,t[33]=E,t[34]=_,t[35]=I,t[36]=y,t[37]=A,t[38]=j,t[39]=L,t[40]=$):$=t[40],t[41]!==U||t[42]!==$?(V=N.jsx("div",{className:U,children:$}),t[41]=U,t[42]=$,t[43]=V):V=t[43],t[44]!==S||t[45]!==a||t[46]!==d||t[47]!==r||t[48]!==L?(H=S&&d&&N.jsxs(jS,{className:"cm",theme:L,children:[N.jsx(_S,{onChange:r,value:a,extensions:AS}),N.jsx(IS,{value:S,editable:!1,readOnly:!0,extensions:AS})]}),t[44]=S,t[45]=a,t[46]=d,t[47]=r,t[48]=L,t[49]=H):H=t[49];const W=(!S||!d)&&h;let G;return t[50]!==z||t[51]!==V||t[52]!==H||t[53]!==W?(G=N.jsxs("div",{className:z,children:[V,H,W]}),t[50]=z,t[51]=V,t[52]=H,t[53]=W,t[54]=G):G=t[54],G};function MS(e){ee({title:"Completion failed",description:Ds(e)})}const OS=()=>new Map,DS=e=>{const t=OS();return e.forEach(((e,n)=>{t.set(n,e)})),t},RS=(e,t,n)=>{let r=e.get(t);return void 0===r&&e.set(t,r=n()),r},PS=()=>new Set,LS=e=>e[e.length-1],zS=(e,t)=>{for(let n=0;n{this.off(e,n),t(...r)};this.on(e,n)}off(e,t){const n=this._observers.get(e);void 0!==n&&(n.delete(t),0===n.size&&this._observers.delete(e))}emit(e,t){return FS((this._observers.get(e)||OS()).values()).forEach((e=>e(...t)))}destroy(){this._observers=OS()}}class $S{constructor(){this._observers=OS()}on(e,t){RS(this._observers,e,PS).add(t)}once(e,t){const n=(...r)=>{this.off(e,n),t(...r)};this.on(e,n)}off(e,t){const n=this._observers.get(e);void 0!==n&&(n.delete(t),0===n.size&&this._observers.delete(e))}emit(e,t){return FS((this._observers.get(e)||OS()).values()).forEach((e=>e(...t)))}destroy(){this._observers=OS()}}const VS=Math.floor,HS=Math.abs,WS=(e,t)=>ee>t?e:t,qS=Math.pow,YS=e=>0!==e?e<0:1/e<0,JS=64,XS=128,KS=127,ZS=Number.MAX_SAFE_INTEGER,QS=Number.isInteger||(e=>"number"==typeof e&&isFinite(e)&&VS(e)===e),eC=String.fromCharCode,tC=/^\s*/g,nC=/([A-Z])/g,rC=(e,t)=>(e=>e.replace(tC,""))(e.replace(nC,(e=>`${t}${(e=>e.toLowerCase())(e)}`))),oC="undefined"!=typeof TextEncoder?new TextEncoder:null,sC=oC?e=>oC.encode(e):e=>{const t=unescape(encodeURIComponent(e)),n=t.length,r=new Uint8Array(n);for(let o=0;onew aC,cC=e=>{let t=e.cpos;for(let n=0;n{const t=new Uint8Array(cC(e));let n=0;for(let r=0;r{const n=e.cbuf.length;e.cpos===n&&(e.bufs.push(e.cbuf),e.cbuf=new Uint8Array(2*n),e.cpos=0),e.cbuf[e.cpos++]=t},hC=uC,fC=(e,t)=>{for(;t>KS;)uC(e,XS|KS&t),t=VS(t/128);uC(e,KS&t)},pC=(e,t)=>{const n=YS(t);for(n&&(t=-t),uC(e,(t>63?XS:0)|(n?JS:0)|63&t),t=VS(t/64);t>0;)uC(e,(t>KS?XS:0)|KS&t),t=VS(t/128)},mC=new Uint8Array(3e4),gC=mC.length/3,yC=oC&&oC.encodeInto?(e,t)=>{if(t.length{const n=unescape(encodeURIComponent(t)),r=n.length;fC(e,r);for(let o=0;o{const n=e.cbuf.length,r=e.cpos,o=WS(n-r,t.length),s=t.length-o;e.cbuf.set(t.subarray(0,o),r),e.cpos+=o,s>0&&(e.bufs.push(e.cbuf),e.cbuf=new Uint8Array(GS(2*n,s)),e.cbuf.set(t.subarray(o)),e.cpos=s)},xC=(e,t)=>{fC(e,t.byteLength),bC(e,t)},vC=(e,t)=>{((e,t)=>{const n=e.cbuf.length;n-e.cpos{switch(typeof t){case"string":uC(e,119),yC(e,t);break;case"number":QS(t)&&HS(t)<=2147483647?(uC(e,125),pC(e,t)):(n=t,wC.setFloat32(0,n),wC.getFloat32(0)===n?(uC(e,124),((e,t)=>{vC(e,4).setFloat32(0,t,!1)})(e,t)):(uC(e,123),((e,t)=>{vC(e,8).setFloat64(0,t,!1)})(e,t)));break;case"bigint":uC(e,122),((e,t)=>{vC(e,8).setBigInt64(0,t,!1)})(e,t);break;case"object":if(null===t)uC(e,126);else if(BS(t)){uC(e,117),fC(e,t.length);for(let n=0;n0&&fC(this,this.count-1),this.count=1,this.w(this,e),this.s=e)}}const CC=e=>{e.count>0&&(pC(e.encoder,1===e.count?e.s:-e.s),e.count>1&&fC(e.encoder,e.count-2))};class EC{constructor(){this.encoder=new aC,this.s=0,this.count=0}write(e){this.s===e?this.count++:(CC(this),this.count=1,this.s=e)}toUint8Array(){return CC(this),dC(this.encoder)}}const NC=e=>{if(e.count>0){const t=2*e.diff+(1===e.count?0:1);pC(e.encoder,t),e.count>1&&fC(e.encoder,e.count-2)}};class jC{constructor(){this.encoder=new aC,this.s=0,this.count=0,this.diff=0}write(e){this.diff===e-this.s?(this.s=e,this.count++):(NC(this),this.count=1,this.diff=e-this.s,this.s=e)}toUint8Array(){return NC(this),dC(this.encoder)}}class _C{constructor(){this.sarr=[],this.s="",this.lensE=new EC}write(e){this.s+=e,this.s.length>19&&(this.sarr.push(this.s),this.s=""),this.lensE.write(e.length)}toUint8Array(){const e=new aC;return this.sarr.push(this.s),this.s="",yC(e,this.sarr.join("")),bC(e,this.lensE.toUint8Array()),dC(e)}}const IC=e=>new Error(e),AC=()=>{throw IC("Method unimplemented")},TC=()=>{throw IC("Unexpected case")},MC=IC("Unexpected end of array"),OC=IC("Integer out of Range");class DC{constructor(e){this.arr=e,this.pos=0}}const RC=e=>new DC(e),PC=e=>((e,t)=>{const n=new Uint8Array(e.arr.buffer,e.pos+e.arr.byteOffset,t);return e.pos+=t,n})(e,zC(e)),LC=e=>e.arr[e.pos++],zC=e=>{let t=0,n=1;const r=e.arr.length;for(;e.posZS)throw OC}throw MC},FC=e=>{let t=e.arr[e.pos++],n=63&t,r=64;const o=(t&JS)>0?-1:1;if(!(t&XS))return o*n;const s=e.arr.length;for(;e.posZS)throw OC}throw MC},BC=iC?e=>iC.decode(PC(e)):e=>{let t=zC(e);if(0===t)return"";{let n=String.fromCodePoint(LC(e));if(--t<100)for(;t--;)n+=String.fromCodePoint(LC(e));else for(;t>0;){const r=t<1e4?t:1e4,o=e.arr.subarray(e.pos,e.pos+r);e.pos+=r,n+=String.fromCodePoint.apply(null,o),t-=r}return decodeURIComponent(escape(n))}},UC=(e,t)=>{const n=new DataView(e.arr.buffer,e.arr.byteOffset+e.pos,t);return e.pos+=t,n},$C=[e=>{},e=>null,FC,e=>UC(e,4).getFloat32(0,!1),e=>UC(e,8).getFloat64(0,!1),e=>UC(e,8).getBigInt64(0,!1),e=>!1,e=>!0,BC,e=>{const t=zC(e),n={};for(let r=0;r{const t=zC(e),n=[];for(let r=0;r$C[127-LC(e)](e);class HC extends DC{constructor(e,t){super(e),this.reader=t,this.s=null,this.count=0}read(){var e;return 0===this.count&&(this.s=this.reader(this),(e=this).pos!==e.arr.length?this.count=zC(this)+1:this.count=-1),this.count--,this.s}}class WC extends DC{constructor(e){super(e),this.s=0,this.count=0}read(){if(0===this.count){this.s=FC(this);const e=YS(this.s);this.count=1,e&&(this.s=-this.s,this.count=zC(this)+2)}return this.count--,this.s}}class GC extends DC{constructor(e){super(e),this.s=0,this.count=0,this.diff=0}read(){if(0===this.count){const e=FC(this),t=1&e;this.diff=VS(e/2),this.count=1,t&&(this.count=zC(this)+2)}return this.s+=this.diff,this.count--,this.s}}class qC{constructor(e){this.decoder=new WC(e),this.str=BC(this.decoder),this.spos=0}read(){const e=this.spos+this.decoder.read(),t=this.str.slice(this.spos,e);return this.spos=e,t}}const YC=crypto.getRandomValues.bind(crypto),JC=()=>YC(new Uint32Array(1))[0],XC="10000000-1000-4000-8000-100000000000",KC=()=>XC.replace(/[018]/g,(e=>(e^JC()&15>>e/4).toString(16))),ZC=Date.now,QC=e=>new Promise(e);Promise.all.bind(Promise);const eE=e=>void 0===e?null:e;let tE=new class{constructor(){this.map=new Map}setItem(e,t){this.map.set(e,t)}getItem(e){return this.map.get(e)}},nE=!0;try{"undefined"!=typeof localStorage&&localStorage&&(tE=localStorage,nE=!1)}catch(LY){}const rE=tE,oE=Object.assign,sE=Object.keys,iE=e=>sE(e).length,aE=e=>sE(e).length,lE=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),cE=Object.freeze,dE=e=>{for(const t in e){const n=e[t];"object"!=typeof n&&"function"!=typeof n||dE(e[t])}return cE(e)},uE=(e,t,n=0)=>{try{for(;ne,fE=(e,t)=>{if(null==e||null==t)return((e,t)=>e===t)(e,t);if(e.constructor!==t.constructor)return!1;if(e===t)return!0;switch(e.constructor){case ArrayBuffer:e=new Uint8Array(e),t=new Uint8Array(t);case Uint8Array:if(e.byteLength!==t.byteLength)return!1;for(let n=0;n(()=>{if(void 0===yE)if(mE){yE=OS();const e=process.argv;let t=null;for(let n=0;n{if(0!==e.length){const[t,n]=e.split("=");yE.set(`--${rC(t,"-")}`,n),yE.set(`-${rC(t,"-")}`,n)}}))):yE=OS();return yE})().has(e),xE=e=>eE(mE?pE[e.toUpperCase().replaceAll("-","_")]:rE.getItem(e)),vE=e=>bE("--"+e)||null!==xE(e);vE("production");const wE=mE&&["true","1","2"].includes(pE.FORCE_COLOR)||!bE("--no-colors")&&!vE("no-color")&&(!mE||process.stdout.isTTY)&&(!mE||bE("--color")||null!==xE("COLORTERM")||(xE("TERM")||"").includes("color")),kE=e=>new Uint8Array(e),SE=gE?e=>{let t="";for(let n=0;nBuffer.from(e.buffer,e.byteOffset,e.byteLength).toString("base64"),CE=gE?e=>{const t=atob(e),n=kE(t.length);for(let r=0;r{const t=Buffer.from(e,"base64");return n=t.buffer,r=t.byteOffset,o=t.byteLength,new Uint8Array(n,r,o);var n,r,o};class EE{constructor(e,t){this.left=e,this.right=t}}const NE=(e,t)=>new EE(e,t);"undefined"!=typeof DOMParser&&new DOMParser;const jE=Symbol,_E=jE(),IE=jE(),AE=jE(),TE=jE(),ME=jE(),OE=jE(),DE=jE(),RE=jE(),PE=jE(),LE={[_E]:NE("font-weight","bold"),[IE]:NE("font-weight","normal"),[AE]:NE("color","blue"),[ME]:NE("color","green"),[TE]:NE("color","grey"),[OE]:NE("color","red"),[DE]:NE("color","purple"),[RE]:NE("color","orange"),[PE]:NE("color","black")},zE=wE?e=>{var t;1===e.length&&(null==(t=e[0])?void 0:t.constructor)===Function&&(e=e[0]());const n=[],r=[],o=OS();let s=[],i=0;for(;i{const n=[];for(const[r,o]of e)n.push(t(o,r));return n})(o,((e,t)=>`${t}:${e};`)).join("");i>0||e.length>0?(n.push("%c"+t),r.push(e)):n.push(t)}}}for(i>0&&(s=r,s.unshift(n.join("")));i{var t;1===e.length&&(null==(t=e[0])?void 0:t.constructor)===Function&&(e=e[0]());const n=[],r=[];let o=0;for(;o0&&r.push(n.join(""));o{console.warn(...zE(e)),e.unshift(RE),BE.forEach((t=>t.print(e)))},BE=PS(),UE=e=>({[Symbol.iterator](){return this},next:e}),$E=(e,t)=>UE((()=>{const{done:n,value:r}=e.next();return{done:n,value:n?void 0:t(r)}}));class VE{constructor(e,t){this.clock=e,this.len=t}}class HE{constructor(){this.clients=new Map}}const WE=(e,t,n)=>t.clients.forEach(((t,r)=>{const o=e.doc.store.clients.get(r);for(let s=0;s{const n=e.clients.get(t.client);return void 0!==n&&null!==((e,t)=>{let n=0,r=e.length-1;for(;n<=r;){const o=VS((n+r)/2),s=e[o],i=s.clock;if(i<=t){if(t{e.clients.forEach((e=>{let t,n;for(e.sort(((e,t)=>e.clock-t.clock)),t=1,n=1;t=o.clock?r.len=GS(r.len,o.clock+o.len-r.clock):(n{const t=new HE;for(let n=0;n{if(!t.clients.has(o)){const s=r.slice();for(let t=n+1;t{RS(e.clients,t,(()=>[])).push(new VE(n,r))},XE=e=>{const t=new HE;return e.clients.forEach(((e,n)=>{const r=[];for(let t=0;t0&&t.clients.set(n,r)})),t},KE=(e,t)=>{fC(e.restEncoder,t.clients.size),FS(t.clients.entries()).sort(((e,t)=>t[0]-e[0])).forEach((([t,n])=>{e.resetDsCurVal(),fC(e.restEncoder,t);const r=n.length;fC(e.restEncoder,r);for(let o=0;o{const t=new HE,n=zC(e.restDecoder);for(let r=0;r0){const o=RS(t.clients,n,(()=>[]));for(let t=0;t{const r=new HE,o=zC(e.restDecoder);for(let s=0;s0){const e=new cN;return fC(e.restEncoder,0),KE(e,r),e.toUint8Array()}return null},eN=JC;class tN extends US{constructor({guid:e=KC(),collectionid:t=null,gc:n=!0,gcFilter:r=()=>!0,meta:o=null,autoLoad:s=!1,shouldLoad:i=!0}={}){super(),this.gc=n,this.gcFilter=r,this.clientID=eN(),this.guid=e,this.collectionid=t,this.share=new Map,this.store=new RN,this._transaction=null,this._transactionCleanups=[],this.subdocs=new Set,this._item=null,this.shouldLoad=i,this.autoLoad=s,this.meta=o,this.isLoaded=!1,this.isSynced=!1,this.isDestroyed=!1,this.whenLoaded=QC((e=>{this.on("load",(()=>{this.isLoaded=!0,e(this)}))}));const a=()=>QC((e=>{const t=n=>{void 0!==n&&!0!==n||(this.off("sync",t),e())};this.on("sync",t)}));this.on("sync",(e=>{!1===e&&this.isSynced&&(this.whenSynced=a()),this.isSynced=void 0===e||!0===e,this.isSynced&&!this.isLoaded&&this.emit("load",[this])})),this.whenSynced=a()}load(){const e=this._item;null===e||this.shouldLoad||XN(e.parent.doc,(e=>{e.subdocsLoaded.add(this)}),null,!0),this.shouldLoad=!0}getSubdocs(){return this.subdocs}getSubdocGuids(){return new Set(FS(this.subdocs).map((e=>e.guid)))}transact(e,t=null){return XN(this,e,t)}get(e,t=wj){const n=RS(this.share,e,(()=>{const e=new t;return e._integrate(this,null),e})),r=n.constructor;if(t!==wj&&r!==t){if(r===wj){const r=new t;r._map=n._map,n._map.forEach((e=>{for(;null!==e;e=e.left)e.parent=r})),r._start=n._start;for(let e=r._start;null!==e;e=e.right)e.parent=r;return r._length=n._length,this.share.set(e,r),r._integrate(this,null),r}throw new Error(`Type with the name ${e} has already been defined with a different constructor`)}return n}getArray(e=""){return this.get(e,Fj)}getText(e=""){return this.get(e,r_)}getMap(e=""){return this.get(e,Uj)}getXmlElement(e=""){return this.get(e,i_)}getXmlFragment(e=""){return this.get(e,s_)}toJSON(){const e={};return this.share.forEach(((t,n)=>{e[n]=t.toJSON()})),e}destroy(){this.isDestroyed=!0,FS(this.subdocs).forEach((e=>e.destroy()));const e=this._item;if(null!==e){this._item=null;const t=e.content;t.doc=new tN({guid:this.guid,...t.opts,shouldLoad:!1}),t.doc._item=e,XN(e.parent.doc,(n=>{const r=t.doc;e.deleted||n.subdocsAdded.add(r),n.subdocsRemoved.add(this)}),null,!0)}this.emit("destroyed",[!0]),this.emit("destroy",[this]),super.destroy()}}class nN{constructor(e){this.restDecoder=e}resetDsCurVal(){}readDsClock(){return zC(this.restDecoder)}readDsLen(){return zC(this.restDecoder)}}class rN extends nN{readLeftID(){return CN(zC(this.restDecoder),zC(this.restDecoder))}readRightID(){return CN(zC(this.restDecoder),zC(this.restDecoder))}readClient(){return zC(this.restDecoder)}readInfo(){return LC(this.restDecoder)}readString(){return BC(this.restDecoder)}readParentInfo(){return 1===zC(this.restDecoder)}readTypeRef(){return zC(this.restDecoder)}readLen(){return zC(this.restDecoder)}readAny(){return VC(this.restDecoder)}readBuf(){return(e=>{const t=kE(e.byteLength);return t.set(e),t})(PC(this.restDecoder))}readJSON(){return JSON.parse(BC(this.restDecoder))}readKey(){return BC(this.restDecoder)}}class oN{constructor(e){this.dsCurrVal=0,this.restDecoder=e}resetDsCurVal(){this.dsCurrVal=0}readDsClock(){return this.dsCurrVal+=zC(this.restDecoder),this.dsCurrVal}readDsLen(){const e=zC(this.restDecoder)+1;return this.dsCurrVal+=e,e}}class sN extends oN{constructor(e){super(e),this.keys=[],zC(e),this.keyClockDecoder=new GC(PC(e)),this.clientDecoder=new WC(PC(e)),this.leftClockDecoder=new GC(PC(e)),this.rightClockDecoder=new GC(PC(e)),this.infoDecoder=new HC(PC(e),LC),this.stringDecoder=new qC(PC(e)),this.parentInfoDecoder=new HC(PC(e),LC),this.typeRefDecoder=new WC(PC(e)),this.lenDecoder=new WC(PC(e))}readLeftID(){return new kN(this.clientDecoder.read(),this.leftClockDecoder.read())}readRightID(){return new kN(this.clientDecoder.read(),this.rightClockDecoder.read())}readClient(){return this.clientDecoder.read()}readInfo(){return this.infoDecoder.read()}readString(){return this.stringDecoder.read()}readParentInfo(){return 1===this.parentInfoDecoder.read()}readTypeRef(){return this.typeRefDecoder.read()}readLen(){return this.lenDecoder.read()}readAny(){return VC(this.restDecoder)}readBuf(){return PC(this.restDecoder)}readJSON(){return VC(this.restDecoder)}readKey(){const e=this.keyClockDecoder.read();if(e{const r=new Map;n.forEach(((e,n)=>{LN(t,n)>e&&r.set(n,e)})),PN(t).forEach(((e,t)=>{n.has(t)||r.set(t,0)})),fC(e.restEncoder,r.size),FS(r.entries()).sort(((e,t)=>t[0]-e[0])).forEach((([n,r])=>{((e,t,n,r)=>{r=GS(r,t[0].id.clock);const o=FN(t,r);fC(e.restEncoder,t.length-o),e.writeClient(n),fC(e.restEncoder,r);const s=t[o];s.write(e,r-s.id.clock);for(let i=o+1;iXN(t,(e=>{e.local=!1;let t=!1;const n=e.doc,o=n.store,s=((e,t)=>{const n=OS(),r=zC(e.restDecoder);for(let o=0;o{const r=[];let o=FS(n.keys()).sort(((e,t)=>e-t));if(0===o.length)return null;const s=()=>{if(0===o.length)return null;let e=n.get(o[o.length-1]);for(;e.refs.length===e.i;){if(o.pop(),!(o.length>0))return null;e=n.get(o[o.length-1])}return e};let i=s();if(null===i)return null;const a=new RN,l=new Map,c=(e,t)=>{const n=l.get(e);(null==n||n>t)&&l.set(e,t)};let d=i.refs[i.i++];const u=new Map,h=()=>{for(const e of r){const t=e.id.client,r=n.get(t);r?(r.i--,a.clients.set(t,r.refs.slice(r.i)),n.delete(t),r.i=0,r.refs=[]):a.clients.set(t,[e]),o=o.filter((e=>e!==t))}r.length=0};for(;;){if(d.constructor!==F_){const o=RS(u,d.id.client,(()=>LN(t,d.id.client)))-d.id.clock;if(o<0)r.push(d),c(d.id.client,d.id.clock-1),h();else{const s=d.getMissing(e,t);if(null!==s){r.push(d);const e=n.get(s)||{refs:[],i:0};if(e.refs.length!==e.i){d=e.refs[e.i++];continue}c(s,LN(t,s)),h()}else(0===o||o0)d=r.pop();else if(null!==i&&i.i0){const e=new cN;return dN(e,a,new Map),fC(e.restEncoder,0),{missing:l,update:e.toUint8Array()}}return null})(e,o,s),a=o.pendingStructs;if(a){for(const[e,n]of a.missing)if(nt)&&a.missing.set(e,t)}a.update=sj([a.update,i.update])}}else o.pendingStructs=i;const l=QE(r,e,o);if(o.pendingDs){const t=new sN(RC(o.pendingDs));zC(t.restDecoder);const n=QE(t,e,o);o.pendingDs=l&&n?sj([l,n]):l||n}else o.pendingDs=l;if(t){const t=o.pendingStructs.update;o.pendingStructs=null,hN(e.doc,t)}}),n,!1),hN=(e,t,n,r=sN)=>{const o=RC(t);uN(o,e,n,new r(o))},fN=(e,t=new Uint8Array([0]),n=new cN)=>{((e,t,n=new Map)=>{dN(e,t.store,n),KE(e,XE(t.store))})(n,e,pN(t));const r=[n.toUint8Array()];if(e.store.pendingDs&&r.push(e.store.pendingDs),e.store.pendingStructs&&r.push(ij(e.store.pendingStructs.update,t)),r.length>1){if(n.constructor===aN)return rj(r.map(((e,t)=>0===t?e:dj(e))));if(n.constructor===cN)return sj(r)}return r[0]},pN=e=>(e=>{const t=new Map,n=zC(e.restDecoder);for(let r=0;r(fC(e.restEncoder,t.size),FS(t.entries()).sort(((e,t)=>t[0]-e[0])).forEach((([t,n])=>{fC(e.restEncoder,t),fC(e.restEncoder,n)})),e),gN=(e,t=new lN)=>(e instanceof Map?mN(t,e):((e,t)=>{mN(e,PN(t.store))})(t,e),t.toUint8Array());class yN{constructor(){this.l=[]}}const bN=()=>new yN,xN=(e,t)=>e.l.push(t),vN=(e,t)=>{const n=e.l,r=n.length;e.l=n.filter((e=>t!==e)),r===e.l.length&&console.error("[yjs] Tried to remove event handler that doesn't exist.")},wN=(e,t,n)=>uE(e.l,[t,n]);class kN{constructor(e,t){this.client=e,this.clock=t}}const SN=(e,t)=>e===t||null!==e&&null!==t&&e.client===t.client&&e.clock===t.clock,CN=(e,t)=>new kN(e,t),EN=e=>{for(const[t,n]of e.doc.share.entries())if(n===e)return t;throw TC()},NN=(e,t)=>{for(;null!==t;){if(t.parent===e)return!0;t=t.parent._item}return!1};class jN{constructor(e,t,n,r=0){this.type=e,this.tname=t,this.item=n,this.assoc=r}}const _N=e=>{const t={};return e.type&&(t.type=e.type),e.tname&&(t.tname=e.tname),e.item&&(t.item=e.item),null!=e.assoc&&(t.assoc=e.assoc),t},IN=e=>new jN(null==e.type?null:CN(e.type.client,e.type.clock),e.tname??null,null==e.item?null:CN(e.item.client,e.item.clock),null==e.assoc?0:e.assoc);class AN{constructor(e,t,n=0){this.type=e,this.index=t,this.assoc=n}}const TN=(e,t,n)=>{let r=null,o=null;return null===e._item?o=EN(e):r=CN(e._item.id.client,e._item.id.clock),new jN(r,o,t,n)},MN=(e,t,n=!0)=>{const r=t.store,o=e.item,s=e.type,i=e.tname,a=e.assoc;let l=null,c=0;if(null!==o){if(LN(r,o.client)<=o.clock)return null;const e=n?T_(r,o):((e,t)=>{const n=BN(e,t);return{item:n,diff:t.clock-n.id.clock}})(r,o),t=e.item;if(!(t instanceof P_))return null;if(l=t.parent,null===l._item||!l._item.deleted){c=t.deleted||!t.countable?0:e.diff+(a>=0?0:1);let n=t.left;for(;null!==n;)!n.deleted&&n.countable&&(c+=n.length),n=n.left}}else{if(null!==i)l=t.get(i);else{if(null===s)throw TC();{if(LN(r,s.client)<=s.clock)return null;const{item:e}=n?T_(r,s):{item:BN(r,s)};if(!(e instanceof P_&&e.content instanceof A_))return null;l=e.content.type}}c=a>=0?l._length:0}return((e,t,n=0)=>new AN(e,t,n))(l,c,e.assoc)},ON=(e,t)=>void 0===t?!e.deleted:t.sv.has(e.id.client)&&(t.sv.get(e.id.client)||0)>e.id.clock&&!GE(t.ds,e.id),DN=(e,t)=>{const n=RS(e.meta,DN,PS),r=e.doc.store;n.has(t)||(t.sv.forEach(((t,n)=>{t{})),n.add(t))};class RN{constructor(){this.clients=new Map,this.pendingStructs=null,this.pendingDs=null}}const PN=e=>{const t=new Map;return e.clients.forEach(((e,n)=>{const r=e[e.length-1];t.set(n,r.id.clock+r.length)})),t},LN=(e,t)=>{const n=e.clients.get(t);if(void 0===n)return 0;const r=n[n.length-1];return r.id.clock+r.length},zN=(e,t)=>{let n=e.clients.get(t.id.client);if(void 0===n)n=[],e.clients.set(t.id.client,n);else{const e=n[n.length-1];if(e.id.clock+e.length!==t.id.clock)throw TC()}n.push(t)},FN=(e,t)=>{let n=0,r=e.length-1,o=e[r],s=o.id.clock;if(s===t)return r;let i=VS(t/(s+o.length-1)*r);for(;n<=r;){if(o=e[i],s=o.id.clock,s<=t){if(t{const n=e.clients.get(t.client);return n[FN(n,t.clock)]},UN=(e,t,n)=>{const r=FN(t,n),o=t[r];return o.id.clock{const n=e.doc.store.clients.get(t.client);return n[UN(e,n,t.clock)]},VN=(e,t,n)=>{const r=t.clients.get(n.client),o=FN(r,n.clock),s=r[o];return n.clock!==s.id.clock+s.length-1&&s.constructor!==u_&&r.splice(o+1,0,O_(e,s,n.clock-s.id.clock+1)),s},HN=(e,t,n,r,o)=>{if(0===r)return;const s=n+r;let i,a=UN(e,t,n);do{i=t[a++],s!(0===t.deleteSet.clients.size&&!((e,t)=>{for(const[n,r]of e)if(t(r,n))return!0;return!1})(t.afterState,((e,n)=>t.beforeState.get(n)!==e)))&&(qE(t.deleteSet),((e,t)=>{dN(e,t.doc.store,t.beforeState)})(e,t),KE(e,t.deleteSet),!0),qN=(e,t,n)=>{const r=t._item;(null===r||r.id.clock<(e.beforeState.get(r.id.client)||0)&&!r.deleted)&&RS(e.changed,t,PS).add(n)},YN=(e,t)=>{let n=e[t],r=e[t-1],o=t;for(;o>0&&(r.deleted===n.deleted&&r.constructor===n.constructor&&r.mergeWith(n));n=r,r=e[--o-1])n instanceof P_&&null!==n.parentSub&&n.parent._map.get(n.parentSub)===n&&n.parent._map.set(n.parentSub,r);const s=t-o;return s&&e.splice(t+1-s,s),s},JN=(e,t)=>{if(te.push((()=>{null!==r._item&&r._item.deleted||r._callObserver(n,t)})))),e.push((()=>{n.changedParentTypes.forEach(((e,t)=>{t._dEH.l.length>0&&(null===t._item||!t._item.deleted)&&((e=e.filter((e=>null===e.target._item||!e.target._item.deleted))).forEach((e=>{e.currentTarget=t,e._path=null})),e.sort(((e,t)=>e.path.length-t.path.length)),wN(t._dEH,e,n))}))})),e.push((()=>r.emit("afterTransaction",[n,r]))),uE(e,[]),n._needFormattingCleanup&&e_(n)}finally{r.gc&&((e,t,n)=>{for(const[r,o]of e.clients.entries()){const e=t.clients.get(r);for(let r=o.length-1;r>=0;r--){const s=o[r],i=s.clock+s.len;for(let r=FN(e,s.clock),o=e[r];r{e.clients.forEach(((e,n)=>{const r=t.clients.get(n);for(let t=e.length-1;t>=0;t--){const n=e[t];for(let e=WS(r.length-1,1+FN(r,n.clock+n.len-1)),t=r[e];e>0&&t.id.clock>=n.clock;t=r[e])e-=1+YN(r,e)}}))})(s,o),n.afterState.forEach(((e,t)=>{const r=n.beforeState.get(t)||0;if(r!==e){const e=o.clients.get(t),n=GS(FN(e,r),1);for(let t=e.length-1;t>=n;)t-=1+YN(e,t)}}));for(let e=i.length-1;e>=0;e--){const{client:t,clock:n}=i[e].id,r=o.clients.get(t),s=FN(r,n);s+11||s>0&&YN(r,s)}if(n.local||n.afterState.get(r.clientID)===n.beforeState.get(r.clientID)||(((...e)=>{console.log(...zE(e)),BE.forEach((t=>t.print(e)))})(RE,_E,"[yjs] ",IE,OE,"Changed the client-id because another client seems to be using it."),r.clientID=eN()),r.emit("afterTransactionCleanup",[n,r]),r._observers.has("update")){const e=new aN;GN(e,n)&&r.emit("update",[e.toUint8Array(),n.origin,r,n])}if(r._observers.has("updateV2")){const e=new cN;GN(e,n)&&r.emit("updateV2",[e.toUint8Array(),n.origin,r,n])}const{subdocsAdded:a,subdocsLoaded:l,subdocsRemoved:c}=n;(a.size>0||c.size>0||l.size>0)&&(a.forEach((e=>{e.clientID=r.clientID,null==e.collectionid&&(e.collectionid=r.collectionid),r.subdocs.add(e)})),c.forEach((e=>r.subdocs.delete(e))),r.emit("subdocs",[{loaded:l,added:a,removed:c},r,n]),c.forEach((e=>e.destroy()))),e.length<=t+1?(r._transactionCleanups=[],r.emit("afterAllTransactions",[r,e])):JN(e,t+1)}}},XN=(e,t,n=null,r=!0)=>{const o=e._transactionCleanups;let s=!1,i=null;null===e._transaction&&(s=!0,e._transaction=new WN(e,n,r),o.push(e._transaction),1===o.length&&e.emit("beforeAllTransactions",[e]),e.emit("beforeTransaction",[e._transaction,e]));try{i=t(e._transaction)}finally{if(s){const t=e._transaction===o[0];e._transaction=null,t&&JN(o,0)}}return i};class KN{constructor(e,t){this.insertions=t,this.deletions=e,this.meta=new Map}}const ZN=(e,t,n)=>{WE(e,n.deletions,(e=>{e instanceof P_&&t.scope.some((t=>NN(t,e)))&&M_(e,!1)}))},QN=(e,t,n)=>{let r=null;const o=e.doc,s=e.scope;XN(o,(n=>{for(;t.length>0&&null===e.currStackItem;){const r=o.store,i=t.pop(),a=new Set,l=[];let c=!1;WE(n,i.insertions,(e=>{if(e instanceof P_){if(null!==e.redone){let{item:t,diff:o}=T_(r,e.id);o>0&&(t=$N(n,CN(t.id.client,t.id.clock+o))),e=t}!e.deleted&&s.some((t=>NN(t,e)))&&l.push(e)}})),WE(n,i.deletions,(e=>{e instanceof P_&&s.some((t=>NN(t,e)))&&!GE(i.insertions,e.id)&&a.add(e)})),a.forEach((t=>{c=null!==R_(n,t,a,i.insertions,e.ignoreRemoteMapChanges,e)||c}));for(let t=l.length-1;t>=0;t--){const r=l[t];e.deleteFilter(r)&&(r.delete(n),c=!0)}e.currStackItem=c?i:null}n.changed.forEach(((e,t)=>{e.has(null)&&t._searchMarker&&(t._searchMarker.length=0)})),r=n}),e);const i=e.currStackItem;if(null!=i){const t=r.changedParentTypes;e.emit("stack-item-popped",[{stackItem:i,type:n,changedParentTypes:t,origin:e},e]),e.currStackItem=null}return i};class ej extends US{constructor(e,{captureTimeout:t=500,captureTransaction:n=e=>!0,deleteFilter:r=()=>!0,trackedOrigins:o=new Set([null]),ignoreRemoteMapChanges:s=!1,doc:i=(BS(e)?e[0].doc:e.doc)}={}){super(),this.scope=[],this.doc=i,this.addToScope(e),this.deleteFilter=r,o.add(this),this.trackedOrigins=o,this.captureTransaction=n,this.undoStack=[],this.redoStack=[],this.undoing=!1,this.redoing=!1,this.currStackItem=null,this.lastChange=0,this.ignoreRemoteMapChanges=s,this.captureTimeout=t,this.afterTransactionHandler=e=>{if(!(this.captureTransaction(e)&&this.scope.some((t=>e.changedParentTypes.has(t)))&&(this.trackedOrigins.has(e.origin)||e.origin&&this.trackedOrigins.has(e.origin.constructor))))return;const t=this.undoing,n=this.redoing,r=t?this.redoStack:this.undoStack;t?this.stopCapturing():n||this.clear(!1,!0);const o=new HE;e.afterState.forEach(((t,n)=>{const r=e.beforeState.get(n)||0,s=t-r;s>0&&JE(o,n,r,s)}));const s=ZC();let i=!1;if(this.lastChange>0&&s-this.lastChange0&&!t&&!n){const t=r[r.length-1];t.deletions=YE([t.deletions,e.deleteSet]),t.insertions=YE([t.insertions,o])}else r.push(new KN(e.deleteSet,o)),i=!0;t||n||(this.lastChange=s),WE(e,e.deleteSet,(e=>{e instanceof P_&&this.scope.some((t=>NN(t,e)))&&M_(e,!0)}));const a=[{stackItem:r[r.length-1],origin:e.origin,type:t?"redo":"undo",changedParentTypes:e.changedParentTypes},this];i?this.emit("stack-item-added",a):this.emit("stack-item-updated",a)},this.doc.on("afterTransaction",this.afterTransactionHandler),this.doc.on("destroy",(()=>{this.destroy()}))}addToScope(e){(e=BS(e)?e:[e]).forEach((e=>{this.scope.every((t=>t!==e))&&(e.doc!==this.doc&&FE("[yjs#509] Not same Y.Doc"),this.scope.push(e))}))}addTrackedOrigin(e){this.trackedOrigins.add(e)}removeTrackedOrigin(e){this.trackedOrigins.delete(e)}clear(e=!0,t=!0){(e&&this.canUndo()||t&&this.canRedo())&&this.doc.transact((n=>{e&&(this.undoStack.forEach((e=>ZN(n,this,e))),this.undoStack=[]),t&&(this.redoStack.forEach((e=>ZN(n,this,e))),this.redoStack=[]),this.emit("stack-cleared",[{undoStackCleared:e,redoStackCleared:t}])}))}stopCapturing(){this.lastChange=0}undo(){let e;this.undoing=!0;try{e=QN(this,this.undoStack,"undo")}finally{this.undoing=!1}return e}redo(){let e;this.redoing=!0;try{e=QN(this,this.redoStack,"redo")}finally{this.redoing=!1}return e}canUndo(){return this.undoStack.length>0}canRedo(){return this.redoStack.length>0}destroy(){this.trackedOrigins.delete(this),this.doc.off("afterTransaction",this.afterTransactionHandler),super.destroy()}}class tj{constructor(e,t){this.gen=function*(e){const t=zC(e.restDecoder);for(let n=0;nsj(e,rN,aN),oj=(e,t)=>{if(e.constructor===u_){const{client:n,clock:r}=e.id;return new u_(CN(n,r+t),e.length-t)}if(e.constructor===F_){const{client:n,clock:r}=e.id;return new F_(CN(n,r+t),e.length-t)}{const n=e,{client:r,clock:o}=n.id;return new P_(CN(r,o+t),null,CN(r,o+t-1),null,n.rightOrigin,n.parent,n.parentSub,n.content.splice(t))}},sj=(e,t=sN,n=cN)=>{if(1===e.length)return e[0];const r=e.map((e=>new t(RC(e))));let o=r.map((e=>new tj(e,!0))),s=null;const i=new n,a=new nj(i);for(;o=o.filter((e=>null!==e.curr)),o.sort(((e,t)=>{if(e.curr.id.client===t.curr.id.client){const n=e.curr.id.clock-t.curr.id.clock;return 0===n?e.curr.constructor===t.curr.constructor?0:e.curr.constructor===F_?1:-1:n}return t.curr.id.client-e.curr.id.client})),0!==o.length;){const e=o[0],t=e.curr.id.client;if(null!==s){let n=e.curr,r=!1;for(;null!==n&&n.id.clock+n.length<=s.struct.id.clock+s.struct.length&&n.id.client>=s.struct.id.client;)n=e.next(),r=!0;if(null===n||n.id.client!==t||r&&n.id.clock>s.struct.id.clock+s.struct.length)continue;if(t!==s.struct.id.client)lj(a,s.struct,s.offset),s={struct:n,offset:0},e.next();else if(s.struct.id.clock+s.struct.length0&&(s.struct.constructor===F_?s.struct.length-=t:n=oj(n,t)),s.struct.mergeWith(n)||(lj(a,s.struct,s.offset),s={struct:n,offset:0},e.next())}}else s={struct:e.curr,offset:0},e.next();for(let n=e.curr;null!==n&&n.id.client===t&&n.id.clock===s.struct.id.clock+s.struct.length&&n.constructor!==F_;n=e.next())lj(a,s.struct,s.offset),s={struct:n,offset:0}}null!==s&&(lj(a,s.struct,s.offset),s=null),cj(a);const l=r.map((e=>ZE(e))),c=YE(l);return KE(i,c),i.toUint8Array()},ij=(e,t,n=sN,r=cN)=>{const o=pN(t),s=new r,i=new nj(s),a=new n(RC(e)),l=new tj(a,!1);for(;l.curr;){const e=l.curr,t=e.id.client,n=o.get(t)||0;if(l.curr.constructor!==F_)if(e.id.clock+e.length>n)for(lj(i,e,GS(n-e.id.clock,0)),l.next();l.curr&&l.curr.id.client===t;)lj(i,l.curr,0),l.next();else for(;l.curr&&l.curr.id.client===t&&l.curr.id.clock+l.curr.length<=n;)l.next();else l.next()}cj(i);const c=ZE(a);return KE(s,c),s.toUint8Array()},aj=e=>{e.written>0&&(e.clientStructs.push({written:e.written,restEncoder:dC(e.encoder.restEncoder)}),e.encoder.restEncoder=lC(),e.written=0)},lj=(e,t,n)=>{e.written>0&&e.currClient!==t.id.client&&aj(e),0===e.written&&(e.currClient=t.id.client,e.encoder.writeClient(t.id.client),fC(e.encoder.restEncoder,t.id.clock+n)),t.write(e.encoder,n),e.written++},cj=e=>{aj(e);const t=e.encoder.restEncoder;fC(t,e.clientStructs.length);for(let n=0;n((e,t,n,r)=>{const o=new n(RC(e)),s=new tj(o,!1),i=new r,a=new nj(i);for(let c=s.curr;null!==c;c=s.next())lj(a,t(c),0);cj(a);const l=ZE(o);return KE(i,l),i.toUint8Array()})(e,hE,sN,aN),uj="You must not compute changes after the event-handler fired.";class hj{constructor(e,t){this.target=e,this.currentTarget=e,this.transaction=t,this._changes=null,this._keys=null,this._delta=null,this._path=null}get path(){return this._path||(this._path=fj(this.currentTarget,this.target))}deletes(e){return GE(this.transaction.deleteSet,e.id)}get keys(){if(null===this._keys){if(0===this.transaction.doc._transactionCleanups.length)throw IC(uj);const e=new Map,t=this.target;this.transaction.changed.get(t).forEach((n=>{if(null!==n){const r=t._map.get(n);let o,s;if(this.adds(r)){let e=r.left;for(;null!==e&&this.adds(e);)e=e.left;if(this.deletes(r)){if(null===e||!this.deletes(e))return;o="delete",s=LS(e.content.getContent())}else null!==e&&this.deletes(e)?(o="update",s=LS(e.content.getContent())):(o="add",s=void 0)}else{if(!this.deletes(r))return;o="delete",s=LS(r.content.getContent())}e.set(n,{action:o,oldValue:s})}})),this._keys=e}return this._keys}get delta(){return this.changes.delta}adds(e){return e.id.clock>=(this.transaction.beforeState.get(e.id.client)||0)}get changes(){let e=this._changes;if(null===e){if(0===this.transaction.doc._transactionCleanups.length)throw IC(uj);const t=this.target,n=PS(),r=PS(),o=[];e={added:n,deleted:r,delta:o,keys:this.keys};if(this.transaction.changed.get(t).has(null)){let e=null;const s=()=>{e&&o.push(e)};for(let o=t._start;null!==o;o=o.right)o.deleted?this.deletes(o)&&!this.adds(o)&&(null!==e&&void 0!==e.delete||(s(),e={delete:0}),e.delete+=o.length,r.add(o)):this.adds(o)?(null!==e&&void 0!==e.insert||(s(),e={insert:[]}),e.insert=e.insert.concat(o.content.getContent()),n.add(o)):(null!==e&&void 0!==e.retain||(s(),e={retain:0}),e.retain+=o.length);null!==e&&void 0===e.retain&&s()}this._changes=e}return e}}const fj=(e,t)=>{const n=[];for(;null!==t._item&&t!==e;){if(null!==t._item.parentSub)n.unshift(t._item.parentSub);else{let e=0,r=t._item.parent._start;for(;r!==t._item&&null!==r;)!r.deleted&&r.countable&&(e+=r.length),r=r.right;n.unshift(e)}t=t._item.parent}return n},pj=()=>{FE("Invalid access: Add Yjs type to a document before reading data.")};let mj=0;class gj{constructor(e,t){e.marker=!0,this.p=e,this.index=t,this.timestamp=mj++}}const yj=(e,t,n)=>{e.p.marker=!1,e.p=t,t.marker=!0,e.index=n,e.timestamp=mj++},bj=(e,t)=>{if(null===e._start||0===t||null===e._searchMarker)return null;const n=0===e._searchMarker.length?null:e._searchMarker.reduce(((e,n)=>HS(t-e.index){e.timestamp=mj++})(n));null!==r.right&&ot;)r=r.left,!r.deleted&&r.countable&&(o-=r.length);for(;null!==r.left&&r.left.id.client===r.id.client&&r.left.id.clock+r.left.length===r.id.clock;)r=r.left,!r.deleted&&r.countable&&(o-=r.length);return null!==n&&HS(n.index-o){if(e.length>=80){const r=e.reduce(((e,t)=>e.timestamp{for(let r=e.length-1;r>=0;r--){const o=e[r];if(n>0){let t=o.p;for(t.marker=!1;t&&(t.deleted||!t.countable);)t=t.left,t&&!t.deleted&&t.countable&&(o.index-=t.length);if(null===t||!0===t.marker){e.splice(r,1);continue}o.p=t,t.marker=!0}(t0&&t===o.index)&&(o.index=GS(t,o.index+n))}},vj=(e,t,n)=>{const r=e,o=t.changedParentTypes;for(;RS(o,e,(()=>[])).push(n),null!==e._item;)e=e._item.parent;wN(r._eH,n,t)};class wj{constructor(){this._item=null,this._map=new Map,this._start=null,this.doc=null,this._length=0,this._eH=bN(),this._dEH=bN(),this._searchMarker=null}get parent(){return this._item?this._item.parent:null}_integrate(e,t){this.doc=e,this._item=t}_copy(){throw AC()}clone(){throw AC()}_write(e){}get _first(){let e=this._start;for(;null!==e&&e.deleted;)e=e.right;return e}_callObserver(e,t){!e.local&&this._searchMarker&&(this._searchMarker.length=0)}observe(e){xN(this._eH,e)}observeDeep(e){xN(this._dEH,e)}unobserve(e){vN(this._eH,e)}unobserveDeep(e){vN(this._dEH,e)}toJSON(){}}const kj=(e,t,n)=>{e.doc??pj(),t<0&&(t=e._length+t),n<0&&(n=e._length+n);let r=n-t;const o=[];let s=e._start;for(;null!==s&&r>0;){if(s.countable&&!s.deleted){const e=s.content.getContent();if(e.length<=t)t-=e.length;else{for(let n=t;n0;n++)o.push(e[n]),r--;t=0}}s=s.right}return o},Sj=e=>{e.doc??pj();const t=[];let n=e._start;for(;null!==n;){if(n.countable&&!n.deleted){const e=n.content.getContent();for(let n=0;n{let n=0,r=e._start;for(e.doc??pj();null!==r;){if(r.countable&&!r.deleted){const o=r.content.getContent();for(let r=0;r{const n=[];return Cj(e,((r,o)=>{n.push(t(r,o,e))})),n},Nj=e=>{let t=e._start,n=null,r=0;return{[Symbol.iterator](){return this},next:()=>{if(null===n){for(;null!==t&&t.deleted;)t=t.right;if(null===t)return{done:!0,value:void 0};n=t.content.getContent(),r=0,t=t.right}const e=n[r++];return n.length<=r&&(n=null),{done:!1,value:e}}}},jj=(e,t)=>{e.doc??pj();const n=bj(e,t);let r=e._start;for(null!==n&&(r=n.p,t-=n.index);null!==r;r=r.right)if(!r.deleted&&r.countable){if(t{let o=n;const s=e.doc,i=s.clientID,a=s.store,l=null===n?t._start:n.right;let c=[];const d=()=>{c.length>0&&(o=new P_(CN(i,LN(a,i)),o,o&&o.lastId,l,l&&l.id,t,null,new v_(c)),o.integrate(e,0),c=[])};r.forEach((n=>{if(null===n)c.push(n);else switch(n.constructor){case Number:case Object:case Boolean:case Array:case String:c.push(n);break;default:switch(d(),n.constructor){case Uint8Array:case ArrayBuffer:o=new P_(CN(i,LN(a,i)),o,o&&o.lastId,l,l&&l.id,t,null,new h_(new Uint8Array(n))),o.integrate(e,0);break;case tN:o=new P_(CN(i,LN(a,i)),o,o&&o.lastId,l,l&&l.id,t,null,new m_(n)),o.integrate(e,0);break;default:if(!(n instanceof wj))throw new Error("Unexpected content type in insert operation");o=new P_(CN(i,LN(a,i)),o,o&&o.lastId,l,l&&l.id,t,null,new A_(n)),o.integrate(e,0)}}})),d()},Ij=()=>IC("Length exceeded!"),Aj=(e,t,n,r)=>{if(n>t._length)throw Ij();if(0===n)return t._searchMarker&&xj(t._searchMarker,n,r.length),_j(e,t,null,r);const o=n,s=bj(t,n);let i=t._start;for(null!==s&&(i=s.p,0===(n-=s.index)&&(i=i.prev,n+=i&&i.countable&&!i.deleted?i.length:0));null!==i;i=i.right)if(!i.deleted&&i.countable){if(n<=i.length){n{if(0===r)return;const o=n,s=r,i=bj(t,n);let a=t._start;for(null!==i&&(a=i.p,n-=i.index);null!==a&&n>0;a=a.right)!a.deleted&&a.countable&&(n0&&null!==a;)a.deleted||(r0)throw Ij();t._searchMarker&&xj(t._searchMarker,o,-s+r)},Mj=(e,t,n)=>{const r=t._map.get(n);void 0!==r&&r.delete(e)},Oj=(e,t,n,r)=>{const o=t._map.get(n)||null,s=e.doc,i=s.clientID;let a;if(null==r)a=new v_([r]);else switch(r.constructor){case Number:case Object:case Boolean:case Array:case String:a=new v_([r]);break;case Uint8Array:a=new h_(r);break;case tN:a=new m_(r);break;default:if(!(r instanceof wj))throw new Error("Unexpected content type");a=new A_(r)}new P_(CN(i,LN(s.store,i)),o,o&&o.lastId,null,null,t,n,a).integrate(e,0)},Dj=(e,t)=>{e.doc??pj();const n=e._map.get(t);return void 0===n||n.deleted?void 0:n.content.getContent()[n.length-1]},Rj=e=>{const t={};return e.doc??pj(),e._map.forEach(((e,n)=>{e.deleted||(t[n]=e.content.getContent()[e.length-1])})),t},Pj=(e,t)=>{e.doc??pj();const n=e._map.get(t);return void 0!==n&&!n.deleted},Lj=e=>{return e.doc??pj(),t=e._map.entries(),n=e=>!e[1].deleted,UE((()=>{let e;do{e=t.next()}while(!e.done&&!n(e.value));return e}));var t,n};class zj extends hj{}class Fj extends wj{constructor(){super(),this._prelimContent=[],this._searchMarker=[]}static from(e){const t=new Fj;return t.push(e),t}_integrate(e,t){super._integrate(e,t),this.insert(0,this._prelimContent),this._prelimContent=null}_copy(){return new Fj}clone(){const e=new Fj;return e.insert(0,this.toArray().map((e=>e instanceof wj?e.clone():e))),e}get length(){return this.doc??pj(),this._length}_callObserver(e,t){super._callObserver(e,t),vj(this,e,new zj(this,e))}insert(e,t){null!==this.doc?XN(this.doc,(n=>{Aj(n,this,e,t)})):this._prelimContent.splice(e,0,...t)}push(e){null!==this.doc?XN(this.doc,(t=>{((e,t,n)=>{let r=(t._searchMarker||[]).reduce(((e,t)=>t.index>e.index?t:e),{index:0,p:t._start}).p;if(r)for(;r.right;)r=r.right;_j(e,t,r,n)})(t,this,e)})):this._prelimContent.push(...e)}unshift(e){this.insert(0,e)}delete(e,t=1){null!==this.doc?XN(this.doc,(n=>{Tj(n,this,e,t)})):this._prelimContent.splice(e,t)}get(e){return jj(this,e)}toArray(){return Sj(this)}slice(e=0,t=this.length){return kj(this,e,t)}toJSON(){return this.map((e=>e instanceof wj?e.toJSON():e))}map(e){return Ej(this,e)}forEach(e){Cj(this,e)}[Symbol.iterator](){return Nj(this)}_write(e){e.writeTypeRef(S_)}}class Bj extends hj{constructor(e,t,n){super(e,t),this.keysChanged=n}}class Uj extends wj{constructor(e){super(),this._prelimContent=null,this._prelimContent=void 0===e?new Map:new Map(e)}_integrate(e,t){super._integrate(e,t),this._prelimContent.forEach(((e,t)=>{this.set(t,e)})),this._prelimContent=null}_copy(){return new Uj}clone(){const e=new Uj;return this.forEach(((t,n)=>{e.set(n,t instanceof wj?t.clone():t)})),e}_callObserver(e,t){vj(this,e,new Bj(this,e,t))}toJSON(){this.doc??pj();const e={};return this._map.forEach(((t,n)=>{if(!t.deleted){const r=t.content.getContent()[t.length-1];e[n]=r instanceof wj?r.toJSON():r}})),e}get size(){return[...Lj(this)].length}keys(){return $E(Lj(this),(e=>e[0]))}values(){return $E(Lj(this),(e=>e[1].content.getContent()[e[1].length-1]))}entries(){return $E(Lj(this),(e=>[e[0],e[1].content.getContent()[e[1].length-1]]))}forEach(e){this.doc??pj(),this._map.forEach(((t,n)=>{t.deleted||e(t.content.getContent()[t.length-1],n,this)}))}[Symbol.iterator](){return this.entries()}delete(e){null!==this.doc?XN(this.doc,(t=>{Mj(t,this,e)})):this._prelimContent.delete(e)}set(e,t){return null!==this.doc?XN(this.doc,(n=>{Oj(n,this,e,t)})):this._prelimContent.set(e,t),t}get(e){return Dj(this,e)}has(e){return Pj(this,e)}clear(){null!==this.doc?XN(this.doc,(e=>{this.forEach((function(t,n,r){Mj(e,r,n)}))})):this._prelimContent.clear()}_write(e){e.writeTypeRef(C_)}}const $j=(e,t)=>e===t||"object"==typeof e&&"object"==typeof t&&e&&t&&((e,t)=>e===t||aE(e)===aE(t)&&((e,t)=>{for(const n in e)if(!t(e[n],n))return!1;return!0})(e,((e,n)=>(void 0!==e||lE(t,n))&&t[n]===e)))(e,t);class Vj{constructor(e,t,n,r){this.left=e,this.right=t,this.index=n,this.currentAttributes=r}forward(){if(null===this.right&&TC(),this.right.content.constructor===y_)this.right.deleted||qj(this.currentAttributes,this.right.content);else this.right.deleted||(this.index+=this.right.length);this.left=this.right,this.right=this.right.right}}const Hj=(e,t,n)=>{for(;null!==t.right&&n>0;){if(t.right.content.constructor===y_)t.right.deleted||qj(t.currentAttributes,t.right.content);else t.right.deleted||(n{const o=new Map,s=r?bj(t,n):null;if(s){const t=new Vj(s.p.left,s.p,s.index,o);return Hj(e,t,n-s.index)}{const r=new Vj(null,t._start,0,o);return Hj(e,r,n)}},Gj=(e,t,n,r)=>{for(;null!==n.right&&(!0===n.right.deleted||n.right.content.constructor===y_&&$j(r.get(n.right.content.key),n.right.content.value));)n.right.deleted||r.delete(n.right.content.key),n.forward();const o=e.doc,s=o.clientID;r.forEach(((r,i)=>{const a=n.left,l=n.right,c=new P_(CN(s,LN(o.store,s)),a,a&&a.lastId,l,l&&l.id,t,null,new y_(i,r));c.integrate(e,0),n.right=c,n.forward()}))},qj=(e,t)=>{const{key:n,value:r}=t;null===r?e.delete(n):e.set(n,r)},Yj=(e,t)=>{for(;null!==e.right&&(e.right.deleted||e.right.content.constructor===y_&&$j(t[e.right.content.key]??null,e.right.content.value));)e.forward()},Jj=(e,t,n,r)=>{const o=e.doc,s=o.clientID,i=new Map;for(const a in r){const l=r[a],c=n.currentAttributes.get(a)??null;if(!$j(c,l)){i.set(a,c);const{left:r,right:d}=n;n.right=new P_(CN(s,LN(o.store,s)),r,r&&r.lastId,d,d&&d.id,t,null,new y_(a,l)),n.right.integrate(e,0),n.forward()}}return i},Xj=(e,t,n,r,o)=>{n.currentAttributes.forEach(((e,t)=>{void 0===o[t]&&(o[t]=null)}));const s=e.doc,i=s.clientID;Yj(n,o);const a=Jj(e,t,n,o),l=r.constructor===String?new w_(r):r instanceof wj?new A_(r):new g_(r);let{left:c,right:d,index:u}=n;t._searchMarker&&xj(t._searchMarker,n.index,l.getLength()),d=new P_(CN(i,LN(s.store,i)),c,c&&c.lastId,d,d&&d.id,t,null,l),d.integrate(e,0),n.right=d,n.index=u,n.forward(),Gj(e,t,n,a)},Kj=(e,t,n,r,o)=>{const s=e.doc,i=s.clientID;Yj(n,o);const a=Jj(e,t,n,o);e:for(;null!==n.right&&(r>0||a.size>0&&(n.right.deleted||n.right.content.constructor===y_));){if(!n.right.deleted)switch(n.right.content.constructor){case y_:{const{key:t,value:s}=n.right.content,i=o[t];if(void 0!==i){if($j(i,s))a.delete(t);else{if(0===r)break e;a.set(t,s)}n.right.delete(e)}else n.currentAttributes.set(t,s);break}default:r0){let o="";for(;r>0;r--)o+="\n";n.right=new P_(CN(i,LN(s.store,i)),n.left,n.left&&n.left.lastId,n.right,n.right&&n.right.id,t,null,new w_(o)),n.right.integrate(e,0),n.forward()}Gj(e,t,n,a)},Zj=(e,t,n,r,o)=>{let s=t;const i=OS();for(;s&&(!s.countable||s.deleted);){if(!s.deleted&&s.content.constructor===y_){const e=s.content;i.set(e.key,e)}s=s.right}let a=0,l=!1;for(;t!==s;){if(n===t&&(l=!0),!t.deleted){const n=t.content;switch(n.constructor){case y_:{const{key:s,value:c}=n,d=r.get(s)??null;i.get(s)===n&&d!==c||(t.delete(e),a++,l||(o.get(s)??null)!==c||d===c||(null===d?o.delete(s):o.set(s,d))),l||t.deleted||qj(o,n);break}}}t=t.right}return a},Qj=e=>{let t=0;return XN(e.doc,(n=>{let r=e._start,o=e._start,s=OS();const i=DS(s);for(;o;){if(!1===o.deleted)if(o.content.constructor===y_)qj(i,o.content);else t+=Zj(n,r,o,s,i),s=DS(i),r=o;o=o.right}})),t},e_=e=>{const t=new Set,n=e.doc;for(const[r,o]of e.afterState.entries()){const s=e.beforeState.get(r)||0;o!==s&&HN(e,n.store.clients.get(r),s,o,(e=>{e.deleted||e.content.constructor!==y_||e.constructor===u_||t.add(e.parent)}))}XN(n,(n=>{WE(e,e.deleteSet,(e=>{if(e instanceof u_||!e.parent._hasFormatting||t.has(e.parent))return;const r=e.parent;e.content.constructor===y_?t.add(r):((e,t)=>{for(;t&&t.right&&(t.right.deleted||!t.right.countable);)t=t.right;const n=new Set;for(;t&&(t.deleted||!t.countable);){if(!t.deleted&&t.content.constructor===y_){const r=t.content.key;n.has(r)?t.delete(e):n.add(r)}t=t.left}})(n,e)}));for(const e of t)Qj(e)}))},t_=(e,t,n)=>{const r=n,o=DS(t.currentAttributes),s=t.right;for(;n>0&&null!==t.right;){if(!1===t.right.deleted)switch(t.right.content.constructor){case A_:case g_:case w_:n{null===e?this.childListChanged=!0:this.keysChanged.add(e)}))}get changes(){if(null===this._changes){const e={keys:this.keys,delta:this.delta,added:new Set,deleted:new Set};this._changes=e}return this._changes}get delta(){if(null===this._delta){const e=this.target.doc,t=[];XN(e,(e=>{const n=new Map,r=new Map;let o=this.target._start,s=null;const i={};let a="",l=0,c=0;const d=()=>{if(null!==s){let e=null;switch(s){case"delete":c>0&&(e={delete:c}),c=0;break;case"insert":("object"==typeof a||a.length>0)&&(e={insert:a},n.size>0&&(e.attributes={},n.forEach(((t,n)=>{null!==t&&(e.attributes[n]=t)})))),a="";break;case"retain":l>0&&(e={retain:l},(e=>{for(const t in e)return!1;return!0})(i)||(e.attributes=oE({},i))),l=0}e&&t.push(e),s=null}};for(;null!==o;){switch(o.content.constructor){case A_:case g_:this.adds(o)?this.deletes(o)||(d(),s="insert",a=o.content.getContent()[0],d()):this.deletes(o)?("delete"!==s&&(d(),s="delete"),c+=1):o.deleted||("retain"!==s&&(d(),s="retain"),l+=1);break;case w_:this.adds(o)?this.deletes(o)||("insert"!==s&&(d(),s="insert"),a+=o.content.str):this.deletes(o)?("delete"!==s&&(d(),s="delete"),c+=o.length):o.deleted||("retain"!==s&&(d(),s="retain"),l+=o.length);break;case y_:{const{key:t,value:a}=o.content;if(this.adds(o)){if(!this.deletes(o)){const l=n.get(t)??null;$j(l,a)?null!==a&&o.delete(e):("retain"===s&&d(),$j(a,r.get(t)??null)?delete i[t]:i[t]=a)}}else if(this.deletes(o)){r.set(t,a);const e=n.get(t)??null;$j(e,a)||("retain"===s&&d(),i[t]=e)}else if(!o.deleted){r.set(t,a);const n=i[t];void 0!==n&&($j(n,a)?null!==n&&o.delete(e):("retain"===s&&d(),null===a?delete i[t]:i[t]=a))}o.deleted||("insert"===s&&d(),qj(n,o.content));break}}o=o.right}for(d();t.length>0;){const e=t[t.length-1];if(void 0===e.retain||void 0!==e.attributes)break;t.pop()}})),this._delta=t}return this._delta}}class r_ extends wj{constructor(e){super(),this._pending=void 0!==e?[()=>this.insert(0,e)]:[],this._searchMarker=[],this._hasFormatting=!1}get length(){return this.doc??pj(),this._length}_integrate(e,t){super._integrate(e,t);try{this._pending.forEach((e=>e()))}catch(LY){console.error(LY)}this._pending=null}_copy(){return new r_}clone(){const e=new r_;return e.applyDelta(this.toDelta()),e}_callObserver(e,t){super._callObserver(e,t);const n=new n_(this,e,t);vj(this,e,n),!e.local&&this._hasFormatting&&(e._needFormattingCleanup=!0)}toString(){this.doc??pj();let e="",t=this._start;for(;null!==t;)!t.deleted&&t.countable&&t.content.constructor===w_&&(e+=t.content.str),t=t.right;return e}toJSON(){return this.toString()}applyDelta(e,{sanitize:t=!0}={}){null!==this.doc?XN(this.doc,(n=>{const r=new Vj(null,this._start,0,new Map);for(let o=0;o0)&&Xj(n,this,r,i,s.attributes||{})}else void 0!==s.retain?Kj(n,this,r,s.retain,s.attributes||{}):void 0!==s.delete&&t_(n,r,s.delete)}})):this._pending.push((()=>this.applyDelta(e)))}toDelta(e,t,n){this.doc??pj();const r=[],o=new Map,s=this.doc;let i="",a=this._start;function l(){if(i.length>0){const e={};let t=!1;o.forEach(((n,r)=>{t=!0,e[r]=n}));const n={insert:i};t&&(n.attributes=e),r.push(n),i=""}}const c=()=>{for(;null!==a;){if(ON(a,e)||void 0!==t&&ON(a,t))switch(a.content.constructor){case w_:{const r=o.get("ychange");void 0===e||ON(a,e)?void 0===t||ON(a,t)?void 0!==r&&(l(),o.delete("ychange")):void 0!==r&&r.user===a.id.client&&"added"===r.type||(l(),o.set("ychange",n?n("added",a.id):{type:"added"})):void 0!==r&&r.user===a.id.client&&"removed"===r.type||(l(),o.set("ychange",n?n("removed",a.id):{type:"removed"})),i+=a.content.str;break}case A_:case g_:{l();const e={insert:a.content.getContent()[0]};if(o.size>0){const t={};e.attributes=t,o.forEach(((e,n)=>{t[n]=e}))}r.push(e);break}case y_:ON(a,e)&&(l(),qj(o,a.content))}a=a.right}l()};return e||t?XN(s,(n=>{e&&DN(n,e),t&&DN(n,t),c()}),"cleanup"):c(),r}insert(e,t,n){if(t.length<=0)return;const r=this.doc;null!==r?XN(r,(r=>{const o=Wj(r,this,e,!n);n||(n={},o.currentAttributes.forEach(((e,t)=>{n[t]=e}))),Xj(r,this,o,t,n)})):this._pending.push((()=>this.insert(e,t,n)))}insertEmbed(e,t,n){const r=this.doc;null!==r?XN(r,(r=>{const o=Wj(r,this,e,!n);Xj(r,this,o,t,n||{})})):this._pending.push((()=>this.insertEmbed(e,t,n||{})))}delete(e,t){if(0===t)return;const n=this.doc;null!==n?XN(n,(n=>{t_(n,Wj(n,this,e,!0),t)})):this._pending.push((()=>this.delete(e,t)))}format(e,t,n){if(0===t)return;const r=this.doc;null!==r?XN(r,(r=>{const o=Wj(r,this,e,!1);null!==o.right&&Kj(r,this,o,t,n)})):this._pending.push((()=>this.format(e,t,n)))}removeAttribute(e){null!==this.doc?XN(this.doc,(t=>{Mj(t,this,e)})):this._pending.push((()=>this.removeAttribute(e)))}setAttribute(e,t){null!==this.doc?XN(this.doc,(n=>{Oj(n,this,e,t)})):this._pending.push((()=>this.setAttribute(e,t)))}getAttribute(e){return Dj(this,e)}getAttributes(){return Rj(this)}_write(e){e.writeTypeRef(E_)}}class o_{constructor(e,t=()=>!0){this._filter=t,this._root=e,this._currentNode=e._start,this._firstCall=!0,e.doc??pj()}[Symbol.iterator](){return this}next(){let e=this._currentNode,t=e&&e.content&&e.content.type;if(null!==e&&(!this._firstCall||e.deleted||!this._filter(t)))do{if(t=e.content.type,e.deleted||t.constructor!==i_&&t.constructor!==s_||null===t._start)for(;null!==e;){if(null!==e.right){e=e.right;break}e=e.parent===this._root?null:e.parent._item}else e=t._start}while(null!==e&&(e.deleted||!this._filter(e.content.type)));return this._firstCall=!1,null===e?{value:void 0,done:!0}:(this._currentNode=e,{value:e.content.type,done:!1})}}class s_ extends wj{constructor(){super(),this._prelimContent=[]}get firstChild(){const e=this._first;return e?e.content.getContent()[0]:null}_integrate(e,t){super._integrate(e,t),this.insert(0,this._prelimContent),this._prelimContent=null}_copy(){return new s_}clone(){const e=new s_;return e.insert(0,this.toArray().map((e=>e instanceof wj?e.clone():e))),e}get length(){return this.doc??pj(),null===this._prelimContent?this._length:this._prelimContent.length}createTreeWalker(e){return new o_(this,e)}querySelector(e){e=e.toUpperCase();const t=new o_(this,(t=>t.nodeName&&t.nodeName.toUpperCase()===e)).next();return t.done?null:t.value}querySelectorAll(e){return e=e.toUpperCase(),FS(new o_(this,(t=>t.nodeName&&t.nodeName.toUpperCase()===e)))}_callObserver(e,t){vj(this,e,new a_(this,t,e))}toString(){return Ej(this,(e=>e.toString())).join("")}toJSON(){return this.toString()}toDOM(e=document,t={},n){const r=e.createDocumentFragment();return void 0!==n&&n._createAssociation(r,this),Cj(this,(o=>{r.insertBefore(o.toDOM(e,t,n),null)})),r}insert(e,t){null!==this.doc?XN(this.doc,(n=>{Aj(n,this,e,t)})):this._prelimContent.splice(e,0,...t)}insertAfter(e,t){if(null!==this.doc)XN(this.doc,(n=>{const r=e&&e instanceof wj?e._item:e;_j(n,this,r,t)}));else{const n=this._prelimContent,r=null===e?0:n.findIndex((t=>t===e))+1;if(0===r&&null!==e)throw IC("Reference item not found");n.splice(r,0,...t)}}delete(e,t=1){null!==this.doc?XN(this.doc,(n=>{Tj(n,this,e,t)})):this._prelimContent.splice(e,t)}toArray(){return Sj(this)}push(e){this.insert(this.length,e)}unshift(e){this.insert(0,e)}get(e){return jj(this,e)}slice(e=0,t=this.length){return kj(this,e,t)}forEach(e){Cj(this,e)}_write(e){e.writeTypeRef(j_)}}class i_ extends s_{constructor(e="UNDEFINED"){super(),this.nodeName=e,this._prelimAttrs=new Map}get nextSibling(){const e=this._item?this._item.next:null;return e?e.content.type:null}get prevSibling(){const e=this._item?this._item.prev:null;return e?e.content.type:null}_integrate(e,t){super._integrate(e,t),this._prelimAttrs.forEach(((e,t)=>{this.setAttribute(t,e)})),this._prelimAttrs=null}_copy(){return new i_(this.nodeName)}clone(){const e=new i_(this.nodeName);return((e,t)=>{for(const n in e)t(e[n],n)})(this.getAttributes(),((t,n)=>{"string"==typeof t&&e.setAttribute(n,t)})),e.insert(0,this.toArray().map((e=>e instanceof wj?e.clone():e))),e}toString(){const e=this.getAttributes(),t=[],n=[];for(const s in e)n.push(s);n.sort();const r=n.length;for(let s=0;s0?" "+t.join(" "):""}>${super.toString()}`}removeAttribute(e){null!==this.doc?XN(this.doc,(t=>{Mj(t,this,e)})):this._prelimAttrs.delete(e)}setAttribute(e,t){null!==this.doc?XN(this.doc,(n=>{Oj(n,this,e,t)})):this._prelimAttrs.set(e,t)}getAttribute(e){return Dj(this,e)}hasAttribute(e){return Pj(this,e)}getAttributes(e){return e?((e,t)=>{const n={};return e._map.forEach(((e,r)=>{let o=e;for(;null!==o&&(!t.sv.has(o.id.client)||o.id.clock>=(t.sv.get(o.id.client)||0));)o=o.left;null!==o&&ON(o,t)&&(n[r]=o.content.getContent()[o.length-1])})),n})(this,e):Rj(this)}toDOM(e=document,t={},n){const r=e.createElement(this.nodeName),o=this.getAttributes();for(const s in o){const e=o[s];"string"==typeof e&&r.setAttribute(s,e)}return Cj(this,(o=>{r.appendChild(o.toDOM(e,t,n))})),void 0!==n&&n._createAssociation(r,this),r}_write(e){e.writeTypeRef(N_),e.writeKey(this.nodeName)}}class a_ extends hj{constructor(e,t,n){super(e,n),this.childListChanged=!1,this.attributesChanged=new Set,t.forEach((e=>{null===e?this.childListChanged=!0:this.attributesChanged.add(e)}))}}class l_ extends Uj{constructor(e){super(),this.hookName=e}_copy(){return new l_(this.hookName)}clone(){const e=new l_(this.hookName);return this.forEach(((t,n)=>{e.set(n,t)})),e}toDOM(e=document,t={},n){const r=t[this.hookName];let o;return o=void 0!==r?r.createDom(this):document.createElement(this.hookName),o.setAttribute("data-yjs-hook",this.hookName),void 0!==n&&n._createAssociation(o,this),o}_write(e){e.writeTypeRef(__),e.writeKey(this.hookName)}}class c_ extends r_{get nextSibling(){const e=this._item?this._item.next:null;return e?e.content.type:null}get prevSibling(){const e=this._item?this._item.prev:null;return e?e.content.type:null}_copy(){return new c_}clone(){const e=new c_;return e.applyDelta(this.toDelta()),e}toDOM(e=document,t,n){const r=e.createTextNode(this.toString());return void 0!==n&&n._createAssociation(r,this),r}toString(){return this.toDelta().map((e=>{const t=[];for(const r in e.attributes){const n=[];for(const t in e.attributes[r])n.push({key:t,value:e.attributes[r][t]});n.sort(((e,t)=>e.keye.nodeName=0;r--)n+=``;return n})).join("")}toJSON(){return this.toString()}_write(e){e.writeTypeRef(I_)}}class d_{constructor(e,t){this.id=e,this.length=t}get deleted(){throw AC()}mergeWith(e){return!1}write(e,t,n){throw AC()}integrate(e,t){throw AC()}}class u_ extends d_{get deleted(){return!0}delete(){}mergeWith(e){return this.constructor===e.constructor&&(this.length+=e.length,!0)}integrate(e,t){t>0&&(this.id.clock+=t,this.length-=t),zN(e.doc.store,this)}write(e,t){e.writeInfo(0),e.writeLen(this.length-t)}getMissing(e,t){return null}}class h_{constructor(e){this.content=e}getLength(){return 1}getContent(){return[this.content]}isCountable(){return!0}copy(){return new h_(this.content)}splice(e){throw AC()}mergeWith(e){return!1}integrate(e,t){}delete(e){}gc(e){}write(e,t){e.writeBuf(this.content)}getRef(){return 3}}class f_{constructor(e){this.len=e}getLength(){return this.len}getContent(){return[]}isCountable(){return!1}copy(){return new f_(this.len)}splice(e){const t=new f_(this.len-e);return this.len=e,t}mergeWith(e){return this.len+=e.len,!0}integrate(e,t){JE(e.deleteSet,t.id.client,t.id.clock,this.len),t.markDeleted()}delete(e){}gc(e){}write(e,t){e.writeLen(this.len-t)}getRef(){return 1}}const p_=(e,t)=>new tN({guid:e,...t,shouldLoad:t.shouldLoad||t.autoLoad||!1});class m_{constructor(e){e._item&&console.error("This document was already integrated as a sub-document. You should create a second instance instead with the same guid."),this.doc=e;const t={};this.opts=t,e.gc||(t.gc=!1),e.autoLoad&&(t.autoLoad=!0),null!==e.meta&&(t.meta=e.meta)}getLength(){return 1}getContent(){return[this.doc]}isCountable(){return!0}copy(){return new m_(p_(this.doc.guid,this.opts))}splice(e){throw AC()}mergeWith(e){return!1}integrate(e,t){this.doc._item=t,e.subdocsAdded.add(this.doc),this.doc.shouldLoad&&e.subdocsLoaded.add(this.doc)}delete(e){e.subdocsAdded.has(this.doc)?e.subdocsAdded.delete(this.doc):e.subdocsRemoved.add(this.doc)}gc(e){}write(e,t){e.writeString(this.doc.guid),e.writeAny(this.opts)}getRef(){return 9}}class g_{constructor(e){this.embed=e}getLength(){return 1}getContent(){return[this.embed]}isCountable(){return!0}copy(){return new g_(this.embed)}splice(e){throw AC()}mergeWith(e){return!1}integrate(e,t){}delete(e){}gc(e){}write(e,t){e.writeJSON(this.embed)}getRef(){return 5}}class y_{constructor(e,t){this.key=e,this.value=t}getLength(){return 1}getContent(){return[]}isCountable(){return!1}copy(){return new y_(this.key,this.value)}splice(e){throw AC()}mergeWith(e){return!1}integrate(e,t){const n=t.parent;n._searchMarker=null,n._hasFormatting=!0}delete(e){}gc(e){}write(e,t){e.writeKey(this.key),e.writeJSON(this.value)}getRef(){return 6}}class b_{constructor(e){this.arr=e}getLength(){return this.arr.length}getContent(){return this.arr}isCountable(){return!0}copy(){return new b_(this.arr)}splice(e){const t=new b_(this.arr.slice(e));return this.arr=this.arr.slice(0,e),t}mergeWith(e){return this.arr=this.arr.concat(e.arr),!0}integrate(e,t){}delete(e){}gc(e){}write(e,t){const n=this.arr.length;e.writeLen(n-t);for(let r=t;r=55296&&n<=56319&&(this.str=this.str.slice(0,e-1)+"�",t.str="�"+t.str.slice(1)),t}mergeWith(e){return this.str+=e.str,!0}integrate(e,t){}delete(e){}gc(e){}write(e,t){e.writeString(0===t?this.str:this.str.slice(t))}getRef(){return 4}}const k_=[e=>new Fj,e=>new Uj,e=>new r_,e=>new i_(e.readKey()),e=>new s_,e=>new l_(e.readKey()),e=>new c_],S_=0,C_=1,E_=2,N_=3,j_=4,__=5,I_=6;class A_{constructor(e){this.type=e}getLength(){return 1}getContent(){return[this.type]}isCountable(){return!0}copy(){return new A_(this.type._copy())}splice(e){throw AC()}mergeWith(e){return!1}integrate(e,t){this.type._integrate(e.doc,t)}delete(e){let t=this.type._start;for(;null!==t;)t.deleted?t.id.clock<(e.beforeState.get(t.id.client)||0)&&e._mergeStructs.push(t):t.delete(e),t=t.right;this.type._map.forEach((t=>{t.deleted?t.id.clock<(e.beforeState.get(t.id.client)||0)&&e._mergeStructs.push(t):t.delete(e)})),e.changed.delete(this.type)}gc(e){let t=this.type._start;for(;null!==t;)t.gc(e,!0),t=t.right;this.type._start=null,this.type._map.forEach((t=>{for(;null!==t;)t.gc(e,!0),t=t.left})),this.type._map=new Map}write(e,t){this.type._write(e)}getRef(){return 7}}const T_=(e,t)=>{let n,r=t,o=0;do{o>0&&(r=CN(r.client,r.clock+o)),n=BN(e,r),o=r.clock-n.id.clock,r=n.redone}while(null!==r&&n instanceof P_);return{item:n,diff:o}},M_=(e,t)=>{for(;null!==e&&e.keep!==t;)e.keep=t,e=e.parent._item},O_=(e,t,n)=>{const{client:r,clock:o}=t.id,s=new P_(CN(r,o+n),t,CN(r,o+n-1),t.right,t.rightOrigin,t.parent,t.parentSub,t.content.splice(n));return t.deleted&&s.markDeleted(),t.keep&&(s.keep=!0),null!==t.redone&&(s.redone=CN(t.redone.client,t.redone.clock+n)),t.right=s,null!==s.right&&(s.right.left=s),e._mergeStructs.push(s),null!==s.parentSub&&null===s.right&&s.parent._map.set(s.parentSub,s),t.length=n,s},D_=(e,t)=>((e,t)=>{for(let n=0;nGE(e.deletions,t))),R_=(e,t,n,r,o,s)=>{const i=e.doc,a=i.store,l=i.clientID,c=t.redone;if(null!==c)return $N(e,c);let d,u=t.parent._item,h=null;if(null!==u&&!0===u.deleted){if(null===u.redone&&(!n.has(u)||null===R_(e,u,n,r,o,s)))return null;for(;null!==u.redone;)u=$N(e,u.redone)}const f=null===u?t.parent:u.content.type;if(null===t.parentSub){for(h=t.left,d=t;null!==h;){let t=h;for(;null!==t&&t.parent._item!==u;)t=null===t.redone?null:$N(e,t.redone);if(null!==t&&t.parent._item===u){h=t;break}h=h.left}for(;null!==d;){let t=d;for(;null!==t&&t.parent._item!==u;)t=null===t.redone?null:$N(e,t.redone);if(null!==t&&t.parent._item===u){d=t;break}d=d.right}}else if(d=null,t.right&&!o){for(h=t;null!==h&&null!==h.right&&(h.right.redone||GE(r,h.right.id)||D_(s.undoStack,h.right.id)||D_(s.redoStack,h.right.id));)for(h=h.right;h.redone;)h=$N(e,h.redone);if(h&&null!==h.right)return null}else h=f._map.get(t.parentSub)||null;const p=LN(a,l),m=CN(l,p),g=new P_(m,h,h&&h.lastId,d,d&&d.id,f,t.parentSub,t.content.copy());return t.redone=m,M_(g,!0),g.integrate(e,0),g};class P_ extends d_{constructor(e,t,n,r,o,s,i,a){super(e,a.getLength()),this.origin=n,this.left=t,this.right=r,this.rightOrigin=o,this.parent=s,this.parentSub=i,this.redone=null,this.content=a,this.info=this.content.isCountable()?2:0}set marker(e){(8&this.info)>0!==e&&(this.info^=8)}get marker(){return(8&this.info)>0}get keep(){return(1&this.info)>0}set keep(e){this.keep!==e&&(this.info^=1)}get countable(){return(2&this.info)>0}get deleted(){return(4&this.info)>0}set deleted(e){this.deleted!==e&&(this.info^=4)}markDeleted(){this.info|=4}getMissing(e,t){if(this.origin&&this.origin.client!==this.id.client&&this.origin.clock>=LN(t,this.origin.client))return this.origin.client;if(this.rightOrigin&&this.rightOrigin.client!==this.id.client&&this.rightOrigin.clock>=LN(t,this.rightOrigin.client))return this.rightOrigin.client;if(this.parent&&this.parent.constructor===kN&&this.id.client!==this.parent.client&&this.parent.clock>=LN(t,this.parent.client))return this.parent.client;if(this.origin&&(this.left=VN(e,t,this.origin),this.origin=this.left.lastId),this.rightOrigin&&(this.right=$N(e,this.rightOrigin),this.rightOrigin=this.right.id),this.left&&this.left.constructor===u_||this.right&&this.right.constructor===u_)this.parent=null;else if(this.parent){if(this.parent.constructor===kN){const e=BN(t,this.parent);e.constructor===u_?this.parent=null:this.parent=e.content.type}}else this.left&&this.left.constructor===P_&&(this.parent=this.left.parent,this.parentSub=this.left.parentSub),this.right&&this.right.constructor===P_&&(this.parent=this.right.parent,this.parentSub=this.right.parentSub);return null}integrate(e,t){if(t>0&&(this.id.clock+=t,this.left=VN(e,e.doc.store,CN(this.id.client,this.id.clock-1)),this.origin=this.left.lastId,this.content=this.content.splice(t),this.length-=t),this.parent){if(!this.left&&(!this.right||null!==this.right.left)||this.left&&this.left.right!==this.right){let t,n=this.left;if(null!==n)t=n.right;else if(null!==this.parentSub)for(t=this.parent._map.get(this.parentSub)||null;null!==t&&null!==t.left;)t=t.left;else t=this.parent._start;const r=new Set,o=new Set;for(;null!==t&&t!==this.right;){if(o.add(t),r.add(t),SN(this.origin,t.origin)){if(t.id.client{t.p===e&&(t.p=this,!this.deleted&&this.countable&&(t.index-=this.length))})),e.keep&&(this.keep=!0),this.right=e.right,null!==this.right&&(this.right.left=this),this.length+=e.length,!0}return!1}delete(e){if(!this.deleted){const t=this.parent;this.countable&&null===this.parentSub&&(t._length-=this.length),this.markDeleted(),JE(e.deleteSet,this.id.client,this.id.clock,this.length),qN(e,t,this.parentSub),this.content.delete(e)}}gc(e,t){if(!this.deleted)throw TC();this.content.gc(e),t?((e,t,n)=>{const r=e.clients.get(t.id.client);r[FN(r,t.id.clock)]=n})(e,this,new u_(this.id,this.length)):this.content=new f_(this.length)}write(e,t){const n=t>0?CN(this.id.client,this.id.clock+t-1):this.origin,r=this.rightOrigin,o=this.parentSub,s=31&this.content.getRef()|(null===n?0:XS)|(null===r?0:JS)|(null===o?0:32);if(e.writeInfo(s),null!==n&&e.writeLeftID(n),null!==r&&e.writeRightID(r),null===n&&null===r){const t=this.parent;if(void 0!==t._item){const n=t._item;if(null===n){const n=EN(t);e.writeParentInfo(!0),e.writeString(n)}else e.writeParentInfo(!1),e.writeLeftID(n.id)}else t.constructor===String?(e.writeParentInfo(!0),e.writeString(t)):t.constructor===kN?(e.writeParentInfo(!1),e.writeLeftID(t)):TC();null!==o&&e.writeString(o)}this.content.write(e,t)}}const L_=(e,t)=>z_[31&t](e),z_=[()=>{TC()},e=>new f_(e.readLen()),e=>{const t=e.readLen(),n=[];for(let r=0;rnew h_(e.readBuf()),e=>new w_(e.readString()),e=>new g_(e.readJSON()),e=>new y_(e.readKey(),e.readJSON()),e=>new A_(k_[e.readTypeRef()](e)),e=>{const t=e.readLen(),n=[];for(let r=0;rnew m_(p_(e.readString(),e.readAny())),()=>{TC()}];class F_ extends d_{get deleted(){return!0}delete(){}mergeWith(e){return this.constructor===e.constructor&&(this.length+=e.length,!0)}integrate(e,t){TC()}write(e,t){e.writeInfo(10),fC(e.restEncoder,this.length-t)}getMissing(e,t){return null}}const B_="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},U_="__ $YJS$ __";!0===B_[U_]&&console.error("Yjs was already imported. This breaks constructor checks and will lead to issues! - https://github.com/yjs/yjs/issues/438"),B_[U_]=!0;class $_{constructor(e,t){this.yanchor=e,this.yhead=t}toJSON(){return{yanchor:_N(this.yanchor),yhead:_N(this.yhead)}}static fromJSON(e){return new $_(IN(e.yanchor),IN(e.yhead))}}class V_{constructor(e,t){this.ytext=e,this.awareness=t,this.undoManager=new ej(e)}toYPos(e,t=0){return((e,t,n=0)=>{let r=e._start;if(n<0){if(0===t)return TN(e,null,n);t--}for(;null!==r;){if(!r.deleted&&r.countable){if(r.length>t)return TN(e,CN(r.id.client,r.id.clock+t),n);t-=r.length}if(null===r.right&&n<0)return TN(e,r.lastId,n);r=r.right}return TN(e,null,n)})(this.ytext,e,t)}fromYPos(e){const t=MN(IN(e),this.ytext.doc);if(null==t||t.type!==this.ytext)throw new Error("[y-codemirror] The position you want to retrieve was created by a different document");return{pos:t.index,assoc:t.assoc}}toYRange(e){const t=e.assoc,n=this.toYPos(e.anchor,t),r=this.toYPos(e.head,t);return new $_(n,r)}fromYRange(e){const t=this.fromYPos(e.yanchor),n=this.fromYPos(e.yhead);return t.pos===n.pos?gn.cursor(n.pos,n.assoc):gn.range(t.pos,n.pos)}}const H_=sr.define({combine:e=>e[e.length-1]}),W_=ar.define();const G_=bn.fromClass(class{constructor(e){this.view=e,this.conf=e.state.facet(H_),this._observer=(t,n)=>{if(n.origin!==this.conf){const n=t.delta,r=[];let o=0;for(let e=0;e0&&e.transactions[0].annotation(W_)===this.conf)return;const t=this.conf.ytext;t.doc.transact((()=>{let n=0;e.changes.iterChanges(((e,r,o,s,i)=>{const a=i.sliceString(0,i.length,"\n");e!==r&&t.delete(e+n,r-e),a.length>0&&t.insert(e+n,a),n+=a.length-(r-e)}))}),this.conf)}destroy(){this._ytext.unobserve(this._observer)}});class q_{constructor(e){this.undoManager=e}addTrackedOrigin(e){this.undoManager.addTrackedOrigin(e)}removeTrackedOrigin(e){this.undoManager.removeTrackedOrigin(e)}undo(){return null!=this.undoManager.undo()}redo(){return null!=this.undoManager.redo()}}const Y_=sr.define({combine:e=>e[e.length-1]});const J_=bn.fromClass(class{constructor(e){this.view=e,this.conf=e.state.facet(Y_),this._undoManager=this.conf.undoManager,this.syncConf=e.state.facet(H_),this._beforeChangeSelection=null,this._mux=(()=>{let e=!0;return(t,n)=>{if(e){e=!1;try{t()}finally{e=!0}}else void 0!==n&&n()}})(),this._onStackItemAdded=({stackItem:e,changedParentTypes:t})=>{t.has(this.syncConf.ytext)&&this._beforeChangeSelection&&!e.meta.has(this)&&e.meta.set(this,this._beforeChangeSelection)},this._onStackItemPopped=({stackItem:t})=>{const n=t.meta.get(this);if(n){const t=this.syncConf.fromYRange(n);e.dispatch(e.state.update({selection:t,effects:[yn.scrollIntoView(t)]})),this._storeSelection()}},this._storeSelection=()=>{this._beforeChangeSelection=this.syncConf.toYRange(this.view.state.selection.main)},this._undoManager.on("stack-item-added",this._onStackItemAdded),this._undoManager.on("stack-item-popped",this._onStackItemPopped),this._undoManager.addTrackedOrigin(this.syncConf)}update(e){!e.selectionSet||0!==e.transactions.length&&e.transactions[0].annotation(W_)===this.syncConf||this._storeSelection()}destroy(){this._undoManager.off("stack-item-added",this._onStackItemAdded),this._undoManager.off("stack-item-popped",this._onStackItemPopped),this._undoManager.removeTrackedOrigin(this.syncConf)}}),X_=(e,t,{undoManager:n=new ej(e)}={})=>{const r=new V_(e,t),o=[H_.of(r),G_];return!1!==n&&o.push(Y_.of(new q_(n)),J_,yn.domEventHandlers({beforeinput:(e,t)=>"historyUndo"===e.inputType?(({state:e,dispatch:t})=>e.facet(Y_).undo()||!0)(t):"historyRedo"===e.inputType&&(({state:e,dispatch:t})=>e.facet(Y_).redo()||!0)(t)})),o},K_=new Map;const Z_="undefined"==typeof BroadcastChannel?class{constructor(e){var t;this.room=e,this.onmessage=null,this._onChange=t=>t.key===e&&null!==this.onmessage&&this.onmessage({data:CE(t.newValue||"")}),t=this._onChange,nE||addEventListener("storage",t)}postMessage(e){rE.setItem(this.room,SE(new Uint8Array(e)))}close(){var e;e=this._onChange,nE||removeEventListener("storage",e)}}:BroadcastChannel,Q_=e=>RS(K_,e,(()=>{const t=PS(),n=new Z_(e);return n.onmessage=e=>t.forEach((t=>t(e.data,"broadcastchannel"))),{bc:n,subs:t}})),eI=(e,t,n=null)=>{const r=Q_(e);r.bc.postMessage(t),r.subs.forEach((e=>e(t,n)))},tI=(e,t)=>{fC(e,0);const n=(e=>gN(e,new iN))(t);xC(e,n)},nI=(e,t,n)=>{fC(e,1),xC(e,((e,t)=>fN(e,t,new aN))(t,n))},rI=(e,t,n)=>{try{((e,t,n)=>{hN(e,t,n,rN)})(t,PC(e),n)}catch(r){console.error("Caught error while handling a Yjs update",r)}},oI=rI,sI=(e,t,n,r)=>{const o=zC(e);switch(o){case 0:((e,t,n)=>{nI(t,n,PC(e))})(e,t,n);break;case 1:rI(e,n,r);break;case 2:oI(e,n,r);break;default:throw new Error("Unknown message type")}return o},iI=3e4;class aI extends $S{constructor(e){super(),this.doc=e,this.clientID=e.clientID,this.states=new Map,this.meta=new Map,this._checkInterval=setInterval((()=>{const e=ZC();null!==this.getLocalState()&&15e3<=e-this.meta.get(this.clientID).lastUpdated&&this.setLocalState(this.getLocalState());const t=[];this.meta.forEach(((n,r)=>{r!==this.clientID&&iI<=e-n.lastUpdated&&this.states.has(r)&&t.push(r)})),t.length>0&&lI(this,t,"timeout")}),VS(3e3)),e.on("destroy",(()=>{this.destroy()})),this.setLocalState({})}destroy(){this.emit("destroy",[this]),this.setLocalState(null),super.destroy(),clearInterval(this._checkInterval)}getLocalState(){return this.states.get(this.clientID)||null}setLocalState(e){const t=this.clientID,n=this.meta.get(t),r=void 0===n?0:n.clock+1,o=this.states.get(t);null===e?this.states.delete(t):this.states.set(t,e),this.meta.set(t,{clock:r,lastUpdated:ZC()});const s=[],i=[],a=[],l=[];null===e?l.push(t):null==o?null!=e&&s.push(t):(i.push(t),fE(o,e)||a.push(t)),(s.length>0||a.length>0||l.length>0)&&this.emit("change",[{added:s,updated:a,removed:l},"local"]),this.emit("update",[{added:s,updated:i,removed:l},"local"])}setLocalStateField(e,t){const n=this.getLocalState();null!==n&&this.setLocalState({...n,[e]:t})}getStates(){return this.states}}const lI=(e,t,n)=>{const r=[];for(let o=0;o0&&(e.emit("change",[{added:[],updated:[],removed:r},n]),e.emit("update",[{added:[],updated:[],removed:r},n]))},cI=(e,t,n=e.states)=>{const r=t.length,o=lC();fC(o,r);for(let s=0;s{fC(e,0);const s=sI(t,e,n.doc,n);r&&1===s&&!n.synced&&(n.synced=!0)},dI[3]=(e,t,n,r,o)=>{fC(e,1),xC(e,cI(n.awareness,Array.from(n.awareness.getStates().keys())))},dI[1]=(e,t,n,r,o)=>{((e,t,n)=>{const r=RC(t),o=ZC(),s=[],i=[],a=[],l=[],c=zC(r);for(let d=0;d0||a.length>0||l.length>0)&&e.emit("change",[{added:s,updated:a,removed:l},n]),(s.length>0||i.length>0||l.length>0)&&e.emit("update",[{added:s,updated:i,removed:l},n])})(n.awareness,PC(t),n)},dI[2]=(e,t,n,r,o)=>{((e,t,n)=>{0===zC(e)&&n(t,BC(e))})(t,n.doc,((e,t)=>uI(n,t)))};const uI=(e,t)=>console.warn(`Permission denied to access ${e.url}.\n${t}`),hI=(e,t,n)=>{const r=RC(t),o=lC(),s=zC(r),i=e.messageHandlers[s];return i?i(o,r,e,n,s):console.error("Unable to compute message"),o},fI=(e,t,n)=>{t===e.ws&&(e.emit("connection-close",[n,e]),e.ws=null,t.close(),e.wsconnecting=!1,e.wsconnected?(e.wsconnected=!1,e.synced=!1,lI(e.awareness,Array.from(e.awareness.getStates().keys()).filter((t=>t!==e.doc.clientID)),e),e.emit("status",[{status:"disconnected"}])):e.wsUnsuccessfulReconnects++,setTimeout(pI,WS(100*qS(2,e.wsUnsuccessfulReconnects),e.maxBackoffTime),e))},pI=e=>{if(e.shouldConnect&&null===e.ws){const t=new e._WS(e.url,e.protocols);t.binaryType="arraybuffer",e.ws=t,e.wsconnecting=!0,e.wsconnected=!1,e.synced=!1,t.onmessage=n=>{e.wsLastMessageReceived=ZC();const r=hI(e,new Uint8Array(n.data),!0);cC(r)>1&&t.send(dC(r))},t.onerror=t=>{e.emit("connection-error",[t,e])},t.onclose=n=>{fI(e,t,n)},t.onopen=()=>{e.wsLastMessageReceived=ZC(),e.wsconnecting=!1,e.wsconnected=!0,e.wsUnsuccessfulReconnects=0,e.emit("status",[{status:"connected"}]);const n=lC();if(fC(n,0),tI(n,e.doc),t.send(dC(n)),null!==e.awareness.getLocalState()){const n=lC();fC(n,1),xC(n,cI(e.awareness,[e.doc.clientID])),t.send(dC(n))}},e.emit("status",[{status:"connecting"}])}},mI=(e,t)=>{const n=e.ws;e.wsconnected&&n&&n.readyState===n.OPEN&&n.send(t),e.bcconnected&&eI(e.bcChannel,t,e)};class gI extends US{constructor(e,t,n,{connect:r=!0,awareness:o=new aI(n),params:s={},protocols:i=[],WebSocketPolyfill:a=WebSocket,resyncInterval:l=-1,maxBackoffTime:c=2500,disableBc:d=!1}={}){for(super();"/"===e[e.length-1];)e=e.slice(0,e.length-1);this.serverUrl=e,this.bcChannel=e+"/"+t,this.maxBackoffTime=c,this.params=s,this.protocols=i,this.roomname=t,this.doc=n,this._WS=a,this.awareness=o,this.wsconnected=!1,this.wsconnecting=!1,this.bcconnected=!1,this.disableBc=d,this.wsUnsuccessfulReconnects=0,this.messageHandlers=dI.slice(),this._synced=!1,this.ws=null,this.wsLastMessageReceived=0,this.shouldConnect=r,this._resyncInterval=0,l>0&&(this._resyncInterval=setInterval((()=>{if(this.ws&&this.ws.readyState===WebSocket.OPEN){const e=lC();fC(e,0),tI(e,n),this.ws.send(dC(e))}}),l)),this._bcSubscriber=(e,t)=>{if(t!==this){const t=hI(this,new Uint8Array(e),!1);cC(t)>1&&eI(this.bcChannel,dC(t),this)}},this._updateHandler=(e,t)=>{if(t!==this){const t=lC();fC(t,0),((e,t)=>{fC(e,2),xC(e,t)})(t,e),mI(this,dC(t))}},this.doc.on("update",this._updateHandler),this._awarenessUpdateHandler=({added:e,updated:t,removed:n},r)=>{const s=e.concat(t).concat(n),i=lC();fC(i,1),xC(i,cI(o,s)),mI(this,dC(i))},this._exitHandler=()=>{lI(this.awareness,[n.clientID],"app closed")},mE&&"undefined"!=typeof process&&process.on("exit",this._exitHandler),o.on("update",this._awarenessUpdateHandler),this._checkInterval=setInterval((()=>{this.wsconnected&&3e4{const n=[];for(const r in e)n.push(t(e[r],r));return n})(this.params,((e,t)=>`${encodeURIComponent(t)}=${encodeURIComponent(e)}`)).join("&");return this.serverUrl+"/"+this.roomname+(0===e.length?"":"?"+e)}get synced(){return this._synced}set synced(e){this._synced!==e&&(this._synced=e,this.emit("synced",[e]),this.emit("sync",[e]))}destroy(){0!==this._resyncInterval&&clearInterval(this._resyncInterval),clearInterval(this._checkInterval),this.disconnect(),mE&&"undefined"!=typeof process&&process.off("exit",this._exitHandler),this.awareness.off("update",this._awarenessUpdateHandler),this.doc.off("update",this._updateHandler),super.destroy()}connectBc(){if(this.disableBc)return;var e,t;this.bcconnected||(e=this.bcChannel,t=this._bcSubscriber,Q_(e).subs.add(t),this.bcconnected=!0);const n=lC();fC(n,0),tI(n,this.doc),eI(this.bcChannel,dC(n),this);const r=lC();fC(r,0),nI(r,this.doc),eI(this.bcChannel,dC(r),this);const o=lC();fC(o,3),eI(this.bcChannel,dC(o),this);const s=lC();fC(s,1),xC(s,cI(this.awareness,[this.doc.clientID])),eI(this.bcChannel,dC(s),this)}disconnectBc(){const e=lC();fC(e,1),xC(e,cI(this.awareness,[this.doc.clientID],new Map)),mI(this,dC(e)),this.bcconnected&&(((e,t)=>{const n=Q_(e),r=n.subs.delete(t);r&&0===n.subs.size&&(n.bc.close(),K_.delete(e))})(this.bcChannel,this._bcSubscriber),this.bcconnected=!1)}disconnect(){this.shouldConnect=!1,this.disconnectBc(),null!==this.ws&&fI(this,this.ws,null)}connect(){this.shouldConnect=!0,this.wsconnected||null!==this.ws||(pI(this),this.connectBc())}}const yI="code",bI="language";class xI{constructor(){this.providers=new Map,this.listenForConnectionChanges()}static getInstance(){return xI.instance||(xI.instance=new xI),xI.instance}getOrCreateProvider(e,t=""){var n;const r=this.providers.get(e);if(r)return{provider:r,ytext:r.doc.getText(yI),ylanguage:r.doc.getText(bI)};const o=new tN,s=o.getText(yI),i=o.getText(bI);t&&0===s.length&&(null==(n=s.doc)||n.transact((()=>{s.delete(0,s.length),s.insert(0,t)})));const a={session_id:Ps()},l=new URLSearchParams(window.location.search).get(Rs.filePath);l&&(a.file=l);const c=new gI("ws",e,o,{params:a});return this.providers.set(e,c),{provider:c,ytext:s,ylanguage:i}}listenForConnectionChanges(){K.sub(at,(()=>{const e=K.get(at);(e.state===ct.CLOSED||e.state===ct.CLOSING)&&this.disconnectAll()}))}disconnect(e){const t=this.providers.get(e);t&&(t.destroy(),this.providers.delete(e))}disconnectAll(){for(const[e]of this.providers)this.disconnect(e)}}function vI(e,t=""){if(E())return{extension:[],code:t};const n=xI.getInstance(),{ytext:r,ylanguage:o}=n.getOrCreateProvider(e,t),s=[bn.define((e=>{const t=()=>{const t=o.toJSON(),n=e.state.field(zs).type;if(t!==n){w.debug(`[debug] Received language change: ${n} -> ${t}`);const r=Fs[t]();xe(e,r.type,{keepCodeAsIs:!0})}};return o.observe(t),{destroy(){o.unobserve(t)}}})),yn.updateListener.of((e=>{var t;for(const n of e.transactions)for(const e of n.effects)if(e.is(Ls)){const n=o.toJSON();n!==e.value.type&&(w.debug(`[debug] Setting language: ${n} -> ${e.value.type}`),null==(t=o.doc)||t.transact((()=>{o.delete(0,o.length),o.insert(0,e.value.type)})))}})),X_(r,null)];return{code:r.toJSON(),extension:s}}xI.instance=void 0;const wI=({theme:e,showPlaceholder:t,allowFocus:n,id:r,config:s,code:i,status:a,serializedEditorState:l,setEditorView:c,runCell:d,updateCellCode:u,createNewCell:h,deleteCell:f,focusCell:p,moveCell:m,moveToNextCell:g,updateCellConfig:y,clearSerializedEditorState:b,userConfig:x,editorViewRef:v,editorViewParentRef:w,hidden:k,hasOutput:S,temporarilyShowCode:E,languageAdapter:j,setLanguageAdapter:_})=>{var I;const[A,T]=ze(xu),M=function(){const e=C.c(2),t=ae(Ou);let n;return e[0]!==t?(n=e=>{Oe!==e&&t(e)},e[0]=t,e[1]=n):n=e[1],n}(),O="running"===a||"queued"===a,{sendToTop:D,sendToBottom:R}=U(),P=ju(),L="markdown"===j,z=B((()=>!O&&(f({cellId:r}),!0))),F=o.useCallback((()=>h({cellId:r,before:!1})),[r,h]),$=o.useCallback((()=>h({cellId:r,before:!0})),[r,h]),V=o.useCallback((()=>m({cellId:r,before:!1})),[r,m]),H=o.useCallback((()=>m({cellId:r,before:!0})),[r,m]),W=o.useCallback((()=>p({cellId:r,before:!1})),[r,p]),G=o.useCallback((()=>p({cellId:r,before:!0})),[r,p]),q=B((()=>{const e=!s.hide_code;return _e({configs:{[r]:{hide_code:e}}}),y({cellId:r,config:{hide_code:e}}),e})),Y=se(ce),J=B((()=>{Nu(Y,h)})),X=Bs(x),Z=o.useMemo((()=>{const n=Ib({cellId:r,showPlaceholder:t,enableAI:X,cellCodeCallbacks:{updateCellCode:u,afterToggleMarkdown:J},cellMovementCallbacks:{onRun:d,deleteCell:z,createAbove:$,createBelow:F,createManyBelow:e=>{for(const t of[...e].reverse())h({code:t,before:!1,cellId:r,skipIfCodeExists:!0})},moveUp:H,moveDown:V,focusUp:G,focusDown:W,sendToTop:D,sendToBottom:R,splitCell:P,moveToNextCell:g,toggleHideCode:q,aiCellCompletion:()=>{let e=!1;return T((t=>(null==t?void 0:t.cellId)===r?(e=!0,null):{cellId:r})),e}},completionConfig:x.completion,keymapConfig:x.keymap,theme:e,hotkeys:new Us(x.keymap.overrides??{})});return n.push(bn.define((e=>{const t=e.state.field(zs);return _(t.type),{update(e){const t=e.state.field(zs);_(t.type)}}}))),n}),[r,x.keymap,x.completion,X,e,t,$,F,G,W,H,V,g,D,R,P,h,q,u,z,d,T,J,_]),Q=B((()=>{if(iu("rtc")){const e=vI(r);Z.push(e.extension),i=e.code}const e=new yn({state:Hr.create({doc:i,extensions:Z})});c(e),xe(e,$s(e.state).type)})),ee=B((()=>{if(fn(null!==v.current,"Editor view is not initialized"),iu("rtc")){const e=vI(r);Z.push(e.extension)}v.current.dispatch({effects:[kn.reconfigure.of([Z]),Vs(v.current,x.completion,new Us(x.keymap.overrides??{}))]})})),te=B((()=>{if(fn(l,"Editor view is not initialized"),iu("rtc")){const e=vI(r,i);Z.push(e.extension)}const e=new yn({state:Hr.fromJSON(l,{doc:i,extensions:Z},{history:Hs})});xe(e,$s(e.state).type),c(e),b({cellId:r})}));o.useEffect((()=>{null===l?null===v.current?Q():ee():te(),null!==v.current&&w&&null!==w.current&&w.current.replaceChildren(v.current.dom)}),[Q,ee,te,v,w,l,Z]);const re=null===v.current||null!==l;o.useEffect((()=>{const e=null!==K.get(ne).scrollKey;re&&n&&!e&&requestAnimationFrame((()=>{var e,t;null==(e=v.current)||e.focus(),null==(t=v.current)||t.dom.scrollIntoView({behavior:"smooth",block:"nearest"})}))}),[re,n,v]),o.useEffect((()=>{const e=v.current;return()=>{null==e||e.destroy()}}),[v]);const oe=k&&!L||k&&L&&!S;let ie="";return L&&k&&S?ie="h-0 overflow-hidden":k&&(ie="opacity-20 h-8 overflow-hidden"),N.jsx(TS,{enabled:(null==A?void 0:A.cellId)===r,initialPrompt:null==A?void 0:A.initialPrompt,currentCode:(null==(I=v.current)?void 0:I.state.doc.toString())??i,currentLanguageAdapter:j,declineChange:B((()=>{var e;T(null),null==(e=v.current)||e.focus()})),onChange:B((e=>{var t;null==(t=v.current)||t.dispatch({changes:{from:0,to:v.current.state.doc.length,insert:e}})})),acceptChange:B((e=>{var t,n;null==(t=v.current)||t.dispatch({changes:{from:0,to:v.current.state.doc.length,insert:e}}),null==(n=v.current)||n.focus(),T(null)})),children:N.jsxs("div",{className:"relative w-full",onFocus:()=>M(r),children:[oe&&N.jsx(Ws,{tooltip:"Edit code",className:"absolute inset-0 z-10",onClick:E}),N.jsx(kI,{className:ie,editorView:v.current,ref:w}),!k&&N.jsx("div",{className:"absolute top-1 right-5",children:N.jsx(sk,{code:i,editorView:v.current,currentLanguageAdapter:j,onAfterToggle:J})})]})})},kI=u.forwardRef(((e,t)=>{const n=C.c(10),{className:r,editorView:s}=e,i=o.useRef(null);let a,l,c,d,u;return n[0]!==s?(a=()=>{null!==s&&null!==i.current&&0===i.current.children.length&&i.current.append(s.dom)},l=[s,i],n[0]=s,n[1]=a,n[2]=l):(a=n[1],l=n[2]),o.useEffect(a,l),n[3]!==r?(c=An("cm",r),n[3]=r,n[4]=c):c=n[4],n[5]!==t?(d=e=>{t?Ww(t,i)(e):Ww(i)(e)},n[5]=t,n[6]=d):d=n[6],n[7]!==c||n[8]!==d?(u=N.jsx("div",{className:c,ref:d,"data-testid":"cell-editor"}),n[7]=c,n[8]=d,n[9]=u):u=n[9],u}));kI.displayName="CellCodeMirrorEditor";const SI=iu("rtc")?function(e){const t=t=>{const n=C.c(2);if(se(at).state===ct.CONNECTING)return null;let r;return n[0]!==t?(r=N.jsx(e,{...t}),n[0]=t,n[1]=r):r=n[1],r};return t.displayName=`WithWaitUntilConnected(${e.displayName})`,t}(o.memo(wI)):o.memo(wI),CI=e=>{const t=C.c(10);let n,r,o,s;return t[0]!==e.left?(n=N.jsx("div",{className:"flex-1 flex item-center gap-2",children:e.left}),t[0]=e.left,t[1]=n):n=t[1],t[2]!==e.center?(r=N.jsx("div",{className:"flex-1 flex item-center gap-2 justify-center",children:e.center}),t[2]=e.center,t[3]=r):r=t[3],t[4]!==e.right?(o=N.jsx("div",{className:"flex-1 flex item-center gap-2 justify-end",children:e.right}),t[4]=e.right,t[5]=o):o=t[5],t[6]!==n||t[7]!==r||t[8]!==o?(s=N.jsxs("div",{className:"flex items-center gap-2 w-full px-3",children:[n,r,o]}),t[6]=n,t[7]=r,t[8]=o,t[9]=s):s=t[9],s},EI=e=>{const t=C.c(8);if(!e.canCollapse&&!e.isCollapsed)return null;const n=e.isCollapsed?"Expand":"Collapse";let r,o,s;return t[0]!==e.isCollapsed?(r=N.jsx(NI,{isCollapsed:e.isCollapsed}),t[0]=e.isCollapsed,t[1]=r):r=t[1],t[2]!==n||t[3]!==r?(o=N.jsx(it,{content:n,children:r}),t[2]=n,t[3]=r,t[4]=o):o=t[4],t[5]!==e.onClick||t[6]!==o?(s=N.jsx(J,{variant:"text",size:"icon",onClick:e.onClick,children:o}),t[5]=e.onClick,t[6]=o,t[7]=s):s=t[7],s},NI=e=>{const t=C.c(2),{isCollapsed:n}=e;let r;return t[0]!==n?(r=n?N.jsx(Ee,{className:"w-5 h-5 flex-shrink-0"}):N.jsx(Se,{className:"w-5 h-5 flex-shrink-0"}),t[0]=n,t[1]=r):r=t[1],r},jI=o.memo((e=>{const t=C.c(24),{onClick:n,count:r,cellId:o}=e,s=Wn();let i;t[0]!==o||t[1]!==s?(i=Gs(s,o),t[0]=o,t[1]=s,t[2]=i):i=t[2];const a=i;let l,c;t[3]===Symbol.for("react.memo_cache_sentinel")?(l=An("flex items-center justify-between w-[calc(100%-2rem)] h-9 bg-muted rounded-b mx-4 opacity-80 hover:opacity-100 cursor-pointer"),t[3]=l):l=t[3],t[4]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsx(Ys,{className:"w-4 h-4 flex-shrink-0"}),t[4]=c):c=t[4];const d=1===r?"cell":"cells";let u,h,f,p,m,g,y;return t[5]!==r||t[6]!==d?(u=N.jsxs(N.Fragment,{children:[c,N.jsxs("span",{className:"text-sm text-gray-500",children:[r," ",d," collapsed"]})]}),t[5]=r,t[6]=d,t[7]=u):u=t[7],t[8]!==a.errored?(h=a.errored&&N.jsx(it,{content:"Has errors",delayDuration:100,children:N.jsx(xd,{className:"w-4 h-4 flex-shrink-0 text-destructive"})}),t[8]=a.errored,t[9]=h):h=t[9],t[10]!==a.stale?(f=a.stale&&N.jsx(it,{content:"Has stale cells",delayDuration:100,children:N.jsx(qs,{className:"w-4 h-4 flex-shrink-0 text-[var(--yellow-11)]"})}),t[10]=a.stale,t[11]=f):f=t[11],t[12]!==a.runningOrQueued?(p=a.runningOrQueued&&N.jsx(it,{content:"Running",delayDuration:100,children:N.jsx(Ms,{className:"w-4 h-4 flex-shrink-0 animate-spin"})}),t[12]=a.runningOrQueued,t[13]=p):p=t[13],t[14]!==h||t[15]!==f||t[16]!==p?(m=N.jsxs(N.Fragment,{children:[h,f,p]}),t[14]=h,t[15]=f,t[16]=p,t[17]=m):m=t[17],t[18]!==u||t[19]!==m?(g=N.jsx(CI,{center:u,right:m}),t[18]=u,t[19]=m,t[20]=g):g=t[20],t[21]!==n||t[22]!==g?(y=N.jsx("div",{onClick:n,className:l,children:g}),t[21]=n,t[22]=g,t[23]=y):y=t[23],y}));jI.displayName="CollapsedCellBanner";const _I=e=>{const t=C.c(6),{appClosed:n,status:r}=e,o=ff("running"===r);let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=Bt("global.interrupt"),t[0]=s):s=t[0];const i=n||!o,a=o?Js:Kn.NOOP,l=o?"stale":"disabled";let c,d;return t[1]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsx(O,{strokeWidth:1.5}),t[1]=c):c=t[1],t[2]!==i||t[3]!==a||t[4]!==l?(d=N.jsx(bx,{tooltip:s,disabled:i,onClick:a,variant:l,"data-testid":"run-button",children:c}),t[2]=i,t[3]=a,t[4]=l,t[5]=d):d=t[5],d},II={width:void 0,height:void 0};function AI(e,t,n){return e[t]?Array.isArray(e[t])?e[t][0][n]:e[t][n]:"contentBoxSize"===t?e.contentRect["inlineSize"===n?"width":"height"]:void 0}const TI=e=>{const t=C.c(27),{edited:n,appClosed:r,status:o,cellConfig:s,needsRun:i,hasOutput:a,hasConsoleOutput:l,onRun:c,cellActionDropdownRef:d,cellId:u,getEditorView:h,name:f}=e,p=!i&&"hover-action";let m;t[0]!==p?(m=An(p),t[0]=p,t[1]=m):m=t[1];const g=r?Kn.NOOP:c;let y,b,x,v,w;return t[2]!==r||t[3]!==s||t[4]!==n||t[5]!==i||t[6]!==o||t[7]!==g?(y=N.jsx(vx,{edited:n,onClick:g,appClosed:r,status:o,config:s,needsRun:i}),t[2]=r,t[3]=s,t[4]=n,t[5]=i,t[6]=o,t[7]=g,t[8]=y):y=t[8],t[9]!==r||t[10]!==o?(b=N.jsx(_I,{status:o,appClosed:r}),t[9]=r,t[10]=o,t[11]=b):b=t[11],t[12]===Symbol.for("react.memo_cache_sentinel")?(x=N.jsx(bx,{variant:"green",tooltip:null,"data-testid":"cell-actions-button",children:N.jsx(rc,{strokeWidth:1.5})}),t[12]=x):x=t[12],t[13]!==d||t[14]!==s||t[15]!==u||t[16]!==h||t[17]!==l||t[18]!==a||t[19]!==f||t[20]!==o?(v=N.jsx(Xw,{ref:d,cellId:u,status:o,getEditorView:h,name:f,config:s,hasOutput:a,hasConsoleOutput:l,children:x}),t[13]=d,t[14]=s,t[15]=u,t[16]=h,t[17]=l,t[18]=a,t[19]=f,t[20]=o,t[21]=v):v=t[21],t[22]!==m||t[23]!==y||t[24]!==b||t[25]!==v?(w=N.jsxs(xx,{className:m,children:[y,b,v]}),t[22]=m,t[23]=y,t[24]=b,t[25]=v,t[26]=w):w=t[26],w},MI=o.memo(o.forwardRef((({theme:e,showPlaceholder:t,allowFocus:n,id:r,code:s,output:i,consoleOutputs:a,status:l,runStartTimestamp:c,lastRunStartTimestamp:d,runElapsedTimeMs:u,edited:h,interrupted:f,errored:p,stopped:m,staleInputs:g,serializedEditorState:y,mode:b,debuggerActive:x,appClosed:v,canDelete:k,updateCellCode:S,prepareForRun:C,createNewCell:E,deleteCell:j,focusCell:_,moveCell:I,setStdinResponse:A,moveToNextCell:T,updateCellConfig:M,clearSerializedEditorState:O,sendToBottom:D,sendToTop:R,collapseCell:P,expandCell:L,userConfig:z,outline:F,isCollapsed:U,collapseCount:$,config:V,canMoveX:H,name:q},Y)=>{w.debug("Rendering Cell",r);const J=o.useRef(null),X=o.useRef(null),K=o.useRef(null),Z=ae(xu),[Q,ee]=o.useState(!1),[te,ne]=o.useState(),re=V.disabled||"disabled-transitively"===l,oe=oi({executionTime:u,status:l,errored:p,interrupted:f,stopped:m}),se=h||f||g&&!re,ie="running"===l||"queued"===l,le=Xs({status:l,output:i,runStartTimestamp:c,interrupted:f,staleInputs:g},h),ce=("queued"===l||h||g)&&!f,de="edit"===b,ue=o.useCallback((()=>{const e=Tb(K),t=W(e);return"markdown"!==to(e)&&Ks(e),C({cellId:r}),t}),[r,K,C]);o.useImperativeHandle(Y,(()=>({get editorView(){return Tb(K)},registerRun:ue})),[K,ue]);const he=o.useCallback((()=>K.current),[K]),fe=B((async()=>{if(ie)return;const e=ue();await G({cellIds:[r],codes:[e]}).catch((e=>{w.error("Error running cell",e)}))})),pe=o.useCallback(((e={})=>E({cellId:r,before:!1,...e})),[r,E]),me=o.useCallback(((e={})=>E({cellId:r,before:!0,...e})),[r,E]),ge=o.useCallback((e=>{null===J.current||J.current.contains(e.relatedTarget)||null===K.current||Ks(K.current)}),[]),ye=o.useCallback((e=>{if(J.current===document.activeElement&&null!==K.current&&"active"===lr(K.current.state)){for(const t of Zs)if(e.key===t.key&&t.run){t.run(K.current),e.preventDefault(),e.stopPropagation();break}K.current.focus()}}),[J,K]),be=!V.hide_code||Q,xe="markdown"===te,ve=xe&&!be,we=o.useRef(null),ke=Qs(F),[Se,Ce]=o.useState(!1),[Ee,Ne]=o.useState(!1);!function(e){const{ref:t,box:n="content-box",skip:r}=e,s=o.useRef({...II}),i=o.useRef(void 0);i.current=e.onResize,o.useEffect((()=>{if(!t.current||r)return;if("undefined"==typeof window||!("ResizeObserver"in window))return;const e=new ResizeObserver((([e])=>{const t="border-box"===n?"borderBoxSize":"device-pixel-content-box"===n?"devicePixelContentBoxSize":"contentBoxSize",r=AI(e,t,"inlineSize"),o=AI(e,t,"blockSize");if(s.current.width!==r||s.current.height!==o){const e={width:r,height:o};s.current.width=r,s.current.height=o,i.current&&i.current(e)}}));return e.observe(t.current,{box:n}),()=>{e.disconnect()}}),[n,t,r])}({ref:we,skip:!xe,onResize:e=>{const t=e.height&&e.height<68,n=ve&&(t||"below"===Oe);Ce(n),ke&&n?Ne(!0):Ee&&Ne(!1)}});const je=o.useRef(null),Ie=o.useCallback((()=>{var e,t;if(!be){ee(!0),null==(e=K.current)||e.focus();const n=null==(t=je.current)?void 0:t.parentElement,r=()=>{requestAnimationFrame((()=>{var e;(null==n?void 0:n.contains(document.activeElement))||(ee(!1),null==(e=K.current)||e.dom.blur(),null==n||n.removeEventListener("focusout",r))}))};null==n||n.addEventListener("focusout",r)}}),[be,K]),Ae=()=>{ve&&Ie()},Te=!ei(i),Me=a.length>0,Oe=z.display.cell_output,De=Te&&"above"===Oe,Re=Te&&"below"===Oe,Pe=e=>N.jsx(Ws,{tooltip:"Edit markdown",className:An("z-20 relative",e),onClick:Ie}),Le=Te&&N.jsxs("div",{className:"relative",onDoubleClick:Ae,children:[N.jsx("div",{className:"absolute top-5 -left-8 z-10 print:hidden",children:N.jsx(EI,{isCollapsed:U,onClick:()=>{U?L({cellId:r}):P({cellId:r})},canCollapse:ke})}),ve&&Re&&Pe("top-3"),N.jsx(ti,{allowExpand:de,forceExpand:ve,output:i,className:"output-area",cellId:r,stale:le}),ve&&De&&Pe("bottom-3")]}),ze=ni("Cell","hover-actions-parent z-10",{published:!de,interactive:de,"needs-run":se,"has-error":p,stopped:m,disabled:V.disabled,stale:"disabled-transitively"===l,borderless:ve&&Te&&de}),Fe=xt.create(r);Rl(de?J:null,{"cell.run":fe,"cell.runAndNewBelow":()=>{fe(),T({cellId:r,before:!1})},"cell.runAndNewAbove":()=>{fe(),T({cellId:r,before:!0})},"cell.createAbove":me,"cell.createBelow":pe,"cell.moveUp":()=>I({cellId:r,before:!0}),"cell.moveDown":()=>I({cellId:r,before:!1}),"cell.moveLeft":()=>H?I({cellId:r,direction:"left"}):void 0,"cell.moveRight":()=>H?I({cellId:r,direction:"right"}):void 0,"cell.hideCode":()=>{var e,t,n;const o=!V.hide_code;_e({configs:{[r]:{hide_code:o}}}),M({cellId:r,config:{hide_code:o}}),o?(null==(e=K.current)||e.contentDOM.blur(),null==(t=J.current)||t.focus()):null==(n=K.current)||n.focus()},"cell.focusDown":()=>T({cellId:r,before:!1}),"cell.focusUp":()=>T({cellId:r,before:!0}),"cell.sendToBottom":()=>D({cellId:r}),"cell.sendToTop":()=>R({cellId:r}),"cell.aiCompletion":()=>{let e=!1;Z((t=>(null==t?void 0:t.cellId)===r?(e=!0,null):{cellId:r})),e&&Tb(K).focus()},"cell.cellActions":()=>{var e;null==(e=X.current)||e.toggle()}}),Pl(de?J:null,{ArrowDown:e=>(!e||!ot.fromInput(e))&&(T({cellId:r,before:!1,noCreate:!0}),!0),ArrowUp:e=>(!e||!ot.fromInput(e))&&(T({cellId:r,before:!0,noCreate:!0}),!0),Enter:()=>(Ae(),!1),..."vim"!==z.keymap.preset||be?{}:{j:e=>(!e||!ot.fromInput(e))&&(T({cellId:r,before:!1,noCreate:!0}),!0),k:e=>(!e||!ot.fromInput(e))&&(T({cellId:r,before:!0,noCreate:!0}),!0)}});const Be=B((e=>{Z({cellId:r,initialPrompt:e.prompt})}));if(!de){const e=ri(null==i?void 0:i.mimetype);return p||f||m||e?null:N.jsx("div",{tabIndex:-1,id:Fe,ref:J,className:ze,"data-cell-id":r,"data-cell-name":q,children:Le})}const Ue=N.jsx(Cx,{status:l,staleInputs:g,interrupted:f,editing:de,edited:h,disabled:V.disabled??!1,elapsedTime:u,runStartTimestamp:c,uninstantiated:oe,lastRunStartTimestamp:d});return N.jsx(si,{children:N.jsx(Qw,{cellId:r,config:V,status:l,getEditorView:he,hasOutput:Te,hasConsoleOutput:Me,name:q,children:N.jsxs(Yw,{tabIndex:-1,ref:J,"data-status":l,onBlur:ge,onKeyDown:ye,cellId:r,canMoveX:H,title:V.disabled?"This cell is disabled":"disabled-transitively"===l?"This cell has a disabled ancestor":void 0,children:[N.jsxs("div",{className:ze,id:Fe,ref:we,"data-cell-id":r,"data-cell-name":q,children:["above"===Oe&&Le,N.jsxs("div",{className:An("tray"),"data-hidden":ve,children:[N.jsx("div",{className:"absolute right-2 -top-4 z-10",children:N.jsx(TI,{edited:h,appClosed:v,status:l,cellConfig:V,needsRun:se,hasOutput:Te,hasConsoleOutput:Me,cellActionDropdownRef:X,cellId:r,name:q,getEditorView:he,onRun:fe})}),N.jsxs("div",{className:An("absolute flex flex-col gap-[2px] justify-center h-full left-[-34px] z-20",ve&&De&&"-top-7",ve&&Re&&"-bottom-8",ve&&Ee&&"-left-[3.8rem]"),children:[N.jsx(mx,{tooltipContent:Bt("cell.createAbove"),appClosed:v,onClick:v?void 0:me}),N.jsx("div",{className:"flex-1"}),N.jsx(mx,{tooltipContent:Bt("cell.createBelow"),appClosed:v,onClick:v?void 0:pe})]}),N.jsx(SI,{theme:e,showPlaceholder:t,allowFocus:n,id:r,code:s,config:V,status:l,serializedEditorState:y,runCell:fe,updateCellCode:S,setEditorView:e=>{K.current=e},createNewCell:E,deleteCell:j,focusCell:_,moveCell:I,moveToNextCell:T,updateCellConfig:M,clearSerializedEditorState:O,userConfig:z,editorViewRef:K,editorViewParentRef:je,hidden:!be,hasOutput:Te,temporarilyShowCode:Ie,languageAdapter:te,setLanguageAdapter:ne}),N.jsxs("div",{className:An("shoulder-right z-20",ve&&"below"===Oe&&"top-14"),children:[!Se&&Ue,N.jsxs("div",{className:"flex gap-2 items-end",children:[N.jsx(qw,{}),Se&&Ue]})]}),N.jsx("div",{className:"shoulder-bottom hover-action",children:k&&be&&N.jsx(wx,{appClosed:v,status:l,onClick:()=>{ie||v||j({cellId:r})}})})]}),"below"===Oe&&Le,N.jsx(oc,{consoleOutputs:a,stale:ce,cellName:q,onRefactorWithAI:Be,onSubmitDebugger:(e,t)=>{A({cellId:r,response:e,outputIndex:t}),ii({text:e})},cellId:r,debuggerActive:x})]}),U&&N.jsx(jI,{onClick:()=>L({cellId:r}),count:$,cellId:r})]})})})}))),OI=e=>{const t=C.c(10),{width:n}=e,{banners:r}=sc(),{removeBanner:o}=ic();if(0===r.length)return null;const s="columns"===n&&"sticky left-12 w-full max-w-[80vw]";let i,a,l;if(t[0]!==s?(i=An("flex flex-col gap-4 mb-5 print:hidden",s),t[0]=s,t[1]=i):i=t[1],t[2]!==r||t[3]!==o){let e;t[5]!==o?(e=e=>N.jsxs(ai,{kind:e.variant||"info",className:"flex flex-col rounded p-3",children:[N.jsxs("div",{className:"flex justify-between",children:[N.jsxs("span",{className:"font-bold text-lg flex items-center mb-2",children:[N.jsx(li,{className:"w-5 h-5 inline-block mr-2"}),e.title]}),N.jsx(J,{"data-testid":"remove-banner-button",variant:"text",size:"icon",onClick:()=>o(e.id),children:N.jsx(Cn,{className:"w-5 h-5"})})]}),N.jsxs("div",{className:"flex justify-between items-end",children:[N.jsx("span",{children:ci({html:e.description})}),"restart"===e.action&&N.jsx(DI,{})]})]},e.id),t[5]=o,t[6]=e):e=t[6],a=r.map(e),t[2]=r,t[3]=o,t[4]=a}else a=t[4];return t[7]!==i||t[8]!==a?(l=N.jsx("div",{className:i,children:a}),t[7]=i,t[8]=a,t[9]=l):l=t[9],l},DI=()=>{const e=C.c(3),t=Gu();let n,r;return e[0]===Symbol.for("react.memo_cache_sentinel")?(n=N.jsx(Id,{className:"w-3 h-3 mr-2"}),e[0]=n):n=e[0],e[1]!==t?(r=N.jsxs(J,{"data-testid":"restart-session-button",variant:"link",size:"xs",onClick:t,children:[n,"Restart"]}),e[1]=t,e[2]=r):r=e[2],r};const RI=(e,t)=>function(e,t){const n=/^(\d+)\.(\d+)\.(\d+)(?:-([\w.-]+))?(?:\+([\w.-]+))?$/,r=e=>{const t=e.match(n);if(!t)return null;const[,r,o,s,i]=t;return{major:Number.parseInt(r,10),minor:Number.parseInt(o,10),patch:Number.parseInt(s,10),preRelease:i||""}};try{const n=r(e),o=r(t);return n&&o?n.major!==o.major?n.major-o.major:n.minor!==o.minor?n.minor-o.minor:n.patch!==o.patch?n.patch-o.patch:""===n.preRelease&&""!==o.preRelease?1:""!==n.preRelease&&""===o.preRelease?-1:n.preRelease.localeCompare(o.preRelease):e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})}catch{return e.localeCompare(t,void 0,{numeric:!0,sensitivity:"base"})}}(t,e);const PI=()=>{const e=C.c(66),{packageAlert:t}=ac(),{clearPackageAlert:n}=lc(),[r]=Re();let s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s={},e[0]=s):s=e[0];const[i,a]=o.useState(s);if(null===t)return null;const l="pixi"!==r.package_management.manager;if(cc(t)){let o,s,c,d,u,h,f,p,m,g;if(e[1]===Symbol.for("react.memo_cache_sentinel")?(o=N.jsxs("span",{className:"font-bold text-lg flex items-center mb-2",children:[N.jsx(wd,{className:"w-5 h-5 inline-block mr-2"}),"Missing packages"]}),e[1]=o):o=e[1],e[2]!==n||e[3]!==t.id?(s=()=>n(t.id),e[2]=n,e[3]=t.id,e[4]=s):s=e[4],e[5]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsx(Cn,{className:"w-5 h-5"}),e[5]=c):c=e[5],e[6]!==s?(d=N.jsxs("div",{className:"flex justify-between",children:[o,N.jsx(J,{variant:"text","data-testid":"remove-banner-button",size:"icon",onClick:s,children:c})]}),e[6]=s,e[7]=d):d=e[7],e[8]===Symbol.for("react.memo_cache_sentinel")?(u=N.jsx("p",{children:"The following packages were not found:"}),e[8]=u):u=e[8],e[9]!==i||e[10]!==l||e[11]!==t.packages){let n;e[13]!==i||e[14]!==l?(n=(e,t)=>N.jsxs("li",{className:"flex items-center gap-1 font-mono text-sm",children:[N.jsx(Bc,{size:"1rem"}),e,l&&N.jsx(BI,{value:i[e]??"latest",onChange:t=>a((n=>({...n,[e]:t}))),packageName:e})]},t),e[13]=i,e[14]=l,e[15]=n):n=e[15],h=t.packages.map(n),e[9]=i,e[10]=l,e[11]=t.packages,e[12]=h}else h=e[12];return e[16]!==h?(f=N.jsxs("div",{children:[u,N.jsx("ul",{className:"list-disc ml-4 mt-1",children:h})]}),e[16]=h,e[17]=f):f=e[17],e[18]!==n||e[19]!==i||e[20]!==t.id||e[21]!==t.isolated||e[22]!==t.packages||e[23]!==r.package_management.manager?(p=N.jsx("div",{className:"ml-auto flex flex-row items-baseline",children:t.isolated?N.jsxs(N.Fragment,{children:[N.jsx(zI,{manager:r.package_management.manager,packages:t.packages,versions:i,clearPackageAlert:()=>n(t.id)}),!E()&&N.jsxs(N.Fragment,{children:[N.jsx("span",{className:"px-2 text-sm",children:"with"})," ",N.jsx(FI,{})]})]}):N.jsxs("p",{children:["If you set up a"," ",N.jsx("a",{href:"https://docs.python.org/3/tutorial/venv.html#creating-virtual-environments",className:"text-accent-foreground hover:underline",target:"_blank",rel:"noreferrer",children:"virtual environment"}),", marimo can install these packages for you."]})}),e[18]=n,e[19]=i,e[20]=t.id,e[21]=t.isolated,e[22]=t.packages,e[23]=r.package_management.manager,e[24]=p):p=e[24],e[25]!==f||e[26]!==p?(m=N.jsxs("div",{className:"flex flex-col gap-4 justify-between items-start text-muted-foreground text-base",children:[f,p]}),e[25]=f,e[26]=p,e[27]=m):m=e[27],e[28]!==d||e[29]!==m?(g=N.jsx("div",{className:"flex flex-col gap-4 mb-5 fixed top-5 left-12 min-w-[400px] z-[200] opacity-95",children:N.jsxs(ai,{kind:"danger",className:"flex flex-col rounded py-3 px-5 animate-in slide-in-from-left",children:[d,m]})}),e[28]=d,e[29]=m,e[30]=g):g=e[30],g}if(dc(t)){let r;e[31]!==t.packages?(r=function(e){const t=new Set(Object.values(e)),n=t.has("queued")||t.has("installing")?"installing":t.has("failed")?"failed":"installed";if("installing"===n)return{status:"installing",title:"Installing packages",titleIcon:N.jsx(Yc,{className:"w-5 h-5 inline-block mr-2"}),description:"Installing packages:"};if("installed"===n)return{status:"installed",title:"All packages installed!",titleIcon:N.jsx(vd,{className:"w-5 h-5 inline-block mr-2"}),description:"Installed packages:"};return{status:"failed",title:"Some packages failed to install",titleIcon:N.jsx(wd,{className:"w-5 h-5 inline-block mr-2"}),description:"See terminal for error logs."}}(t.packages),e[31]=t.packages,e[32]=r):r=e[32];const{status:o,title:s,titleIcon:i,description:a}=r;"installed"===o&&setTimeout((()=>n(t.id)),1e4);const l="failed"===o?"danger":"info";let c,d,u,h,f;e[33]!==s||e[34]!==i?(c=N.jsxs("span",{className:"font-bold text-lg flex items-center mb-2",children:[i,s]}),e[33]=s,e[34]=i,e[35]=c):c=e[35],e[36]!==n||e[37]!==t.id?(d=()=>n(t.id),e[36]=n,e[37]=t.id,e[38]=d):d=e[38],e[39]===Symbol.for("react.memo_cache_sentinel")?(u=N.jsx(Cn,{className:"w-5 h-5"}),e[39]=u):u=e[39],e[40]!==d?(h=N.jsx(J,{variant:"text","data-testid":"remove-banner-button",size:"icon",onClick:d,children:u}),e[40]=d,e[41]=h):h=e[41],e[42]!==c||e[43]!==h?(f=N.jsxs("div",{className:"flex justify-between",children:[c,h]}),e[42]=c,e[43]=h,e[44]=f):f=e[44];const p="installed"===o&&"text-accent-foreground";let m,g,y,b,x,v,w;if(e[45]!==p?(m=An("flex flex-col gap-4 justify-between items-start text-muted-foreground text-base",p),e[45]=p,e[46]=m):m=e[46],e[47]!==a?(g=N.jsx("p",{children:a}),e[47]=a,e[48]=g):g=e[48],e[49]!==t.packages||e[50]!==o){let n;e[52]!==o?(n=(e,t)=>{const[n,r]=e;return N.jsxs("li",{className:An("flex items-center gap-1 font-mono text-sm","installing"===r&&"font-semibold","failed"===r&&"text-destructive","installed"===r&&"text-accent-foreground","installed"===r&&"failed"===o&&"text-muted-foreground"),children:[N.jsx(LI,{status:r}),n]},t)},e[52]=o,e[53]=n):n=e[53],y=Object.entries(t.packages).map(n),e[49]=t.packages,e[50]=o,e[51]=y}else y=e[51];return e[54]!==y?(b=N.jsx("ul",{className:"list-disc ml-4 mt-1",children:y}),e[54]=y,e[55]=b):b=e[55],e[56]!==g||e[57]!==b?(x=N.jsxs("div",{children:[g,b]}),e[56]=g,e[57]=b,e[58]=x):x=e[58],e[59]!==x||e[60]!==m?(v=N.jsx("div",{className:m,children:x}),e[59]=x,e[60]=m,e[61]=v):v=e[61],e[62]!==v||e[63]!==l||e[64]!==f?(w=N.jsx("div",{className:"flex flex-col gap-4 mb-5 fixed top-5 left-12 min-w-[400px] z-[200] opacity-95",children:N.jsxs(ai,{kind:l,className:"flex flex-col rounded pt-3 pb-4 px-5",children:[f,v]})}),e[62]=v,e[63]=l,e[64]=f,e[65]=w):w=e[65],w}return M(t),null};const LI=e=>{const t=C.c(4),{status:n}=e;switch(n){case"queued":{let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx(Bc,{size:"1rem"}),t[0]=e):e=t[0],e}case"installing":{let e;return t[1]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx(Yc,{size:"1rem"}),t[1]=e):e=t[1],e}case"installed":{let e;return t[2]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx($t,{size:"1rem"}),t[2]=e):e=t[2],e}case"failed":{let e;return t[3]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx(Cn,{size:"1rem"}),t[3]=e):e=t[3],e}default:return M(n),null}},zI=e=>{const t=C.c(9),{manager:n,packages:r,versions:o,clearPackageAlert:s}=e;let i,a,l,c;return t[0]!==s||t[1]!==n||t[2]!==r||t[3]!==o?(i=async()=>{s();const e={...o};for(const t of r)e[t]=e[t]??"";await bi({manager:n,versions:e}).catch(UI)},t[0]=s,t[1]=n,t[2]=r,t[3]=o,t[4]=i):i=t[4],t[5]===Symbol.for("react.memo_cache_sentinel")?(a=N.jsx(Yc,{className:"w-4 h-4 mr-2"}),l=N.jsx("span",{className:"font-semibold",children:"Install"}),t[5]=a,t[6]=l):(a=t[5],l=t[6]),t[7]!==i?(c=N.jsxs(J,{variant:"outline","data-testid":"install-packages-button",size:"sm",onClick:i,children:[a,l]}),t[7]=i,t[8]=c):c=t[8],c},FI=()=>{const e=C.c(16),[t,n]=Re();let r,o;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=It(di),e[0]=r):r=e[0],e[1]!==t?(o={resolver:r,defaultValues:t},e[1]=t,e[2]=o):o=e[2];const s=At(o);let i;e[3]!==n?(i=async e=>{await S({config:e}).then((()=>{n(e)}))},e[3]=n,e[4]=i):i=e[4];const a=i;let l,c,d,u;return e[5]!==s||e[6]!==a?(l=s.handleSubmit(a),e[5]=s,e[6]=a,e[7]=l):l=e[7],e[8]!==s.control?(c=N.jsx("div",{className:"flex flex-col gap-3",children:N.jsx(ui,{control:s.control,name:"package_management.manager",render:VI})}),e[8]=s.control,e[9]=c):c=e[9],e[10]!==l||e[11]!==c?(d=N.jsx("form",{onChange:l,className:"flex flex-col gap-5",children:c}),e[10]=l,e[11]=c,e[12]=d):d=e[12],e[13]!==s||e[14]!==d?(u=N.jsx(hi,{...s,children:d}),e[13]=s,e[14]=d,e[15]=u):u=e[15],u},BI=e=>{const t=C.c(21),{value:n,onChange:r,packageName:o}=e;let s,i;t[0]!==o?(s=async()=>{const e=await fetch(`https://pypi.org/pypi/${t=o,t.replaceAll(/\[.*]/g,"").trim()}/json`,{method:"GET",signal:AbortSignal.timeout(5e3)});var t;const n=await e.json();return["latest",...Object.keys(n.releases).sort(RI).slice(0,100)]},i=[o],t[0]=o,t[1]=s,t[2]=i):(s=t[1],i=t[2]);const{data:a,loading:l,error:c}=jn(s,i);let d;t[3]!==a?(d=void 0===a?[]:a,t[3]=a,t[4]=d):d=t[4];const u=d;if(c){let e,o,s;return t[5]!==r?(e=e=>r(e.target.value),t[5]=r,t[6]=e):e=t[6],t[7]===Symbol.for("react.memo_cache_sentinel")?(o=N.jsx("option",{value:"latest",children:"latest"}),t[7]=o):o=t[7],t[8]!==e||t[9]!==n?(s=N.jsx(it,{content:"Failed to fetch package versions",children:N.jsx(mi,{value:n,onChange:e,disabled:!0,className:"inline-flex ml-2",children:o})}),t[8]=e,t[9]=n,t[10]=s):s=t[10],s}let h,f,p;return t[11]!==r?(h=e=>r(e.target.value),t[11]=r,t[12]=h):h=t[12],t[13]!==u||t[14]!==l?(f=l?N.jsx("option",{value:"latest",children:"latest"}):u.map(HI),t[13]=u,t[14]=l,t[15]=f):f=t[15],t[16]!==l||t[17]!==h||t[18]!==f||t[19]!==n?(p=N.jsx(mi,{value:n,onChange:h,disabled:l,className:"inline-flex ml-2",children:f}),t[16]=l,t[17]=h,t[18]=f,t[19]=n,t[20]=p):p=t[20],p};function UI(e){w.error(e)}function $I(e){return N.jsx("option",{value:e,children:e},e)}function VI(e){const{field:t}=e;return N.jsxs(fi,{children:[N.jsx(pi,{children:N.jsx(mi,{"data-testid":"install-package-manager-select",onChange:e=>t.onChange(e.target.value),value:t.value,disabled:t.disabled,className:"inline-flex mr-2",children:gi.map($I)})}),N.jsx(yi,{})]})}function HI(e){return N.jsx("option",{value:e,children:e},e)}const WI=e=>{let{transform:t}=e;return{...t,x:0}},GI={threshold:{x:0,y:.1}},qI=u.memo((e=>{const t=C.c(23),{children:n,multiColumn:r}=e,{dropCellOverCell:s,dropCellOverColumn:i,moveColumn:a,compactColumns:l}=U(),[c,d]=o.useState(null),[u,h]=o.useState(null),[f]=Pe();let p;e:{if("columns"===f.width){p=xi.EMPTY;break e}let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=[WI],t[0]=e):e=t[0],p=e}const m=p;let g,y;t[1]===Symbol.for("react.memo_cache_sentinel")?(g={activationConstraint:{distance:8}},t[1]=g):g=t[1],t[2]===Symbol.for("react.memo_cache_sentinel")?(y={coordinateGetter:Vw},t[2]=y):y=t[2];const b=function(){for(var e=arguments.length,t=new Array(e),n=0;n[...t].filter((e=>null!=e))),[...t])}(Fx(Dv,g),Fx(Iv,y));let x;t[3]===Symbol.for("react.memo_cache_sentinel")?(x=e=>{d(e.active.id);const t=V();h(t.cellIds)},t[3]=x):x=t[3];const v=B(x);let w;t[4]!==u?(w=()=>{d(null),h(null)},t[4]=u,t[5]=w):w=t[5];const k=B(w);let S;t[6]!==c?(S=e=>{const t=e.droppableContainers.filter(XI);if(c&&JI(c))return qx({...e,droppableContainers:t});const n=(e=>{let{droppableContainers:t,droppableRects:n,pointerCoordinates:r}=e;if(!r)return[];const o=[];for(const s of t){const{id:e}=s,t=n.get(e);if(t&&Xx(r,t)){const n=Hx(t).reduce(((e,t)=>e+Ux(r,t)),0),i=Number((n/4).toFixed(4));o.push({id:e,data:{droppableContainer:s,value:i}})}}return o.sort($x)})({...e,droppableContainers:t}),r=Wx(n.length>0?n:Jx({...e,droppableContainers:t}),"id");if(!r)return[];fn(JI(r),`Expected column id. Got: ${r}`);const o=V().cellIds.get(r);if(fn(o,`Expected column. Got: ${r}`),o&&0===o.topLevelIds.length)return[{id:r}];const s=new Set(o.topLevelIds),i=qx({...e,droppableContainers:e.droppableContainers.filter((e=>e.id!==r&&s.has(e.id)))});if(i.length>0){const e=i[0].id;return fn(YI(e),`Expected cell id. Got: ${e}`),[{id:e}]}return[]},t[6]=c,t[7]=S):S=t[7];const E=S;let j;t[8]!==s||t[9]!==i||t[10]!==a?(j=e=>{const{active:t,over:n}=e,r=null==n?void 0:n.id;if(null!=r&&t.id!==r){if(YI(t.id)){if(JI(r))return void i({cellId:t.id,columnId:r});if(YI(r))return void s({cellId:t.id,overCellId:r})}JI(t.id)&&JI(r)&&a({column:t.id,overColumn:r})}},t[8]=s,t[9]=i,t[10]=a,t[11]=j):j=t[11];const _=B(j);let I;t[12]!==l?(I=e=>{const{active:t,over:n}=e;null!==n&&t.id!==n.id&&l()},t[12]=l,t[13]=I):I=t[13];const A=B(I),T=r?E:qx;let M;return t[14]!==n||t[15]!==k||t[16]!==A||t[17]!==_||t[18]!==v||t[19]!==m||t[20]!==b||t[21]!==T?(M=N.jsx(bw,{autoScroll:GI,sensors:b,collisionDetection:T,modifiers:m,onDragEnd:A,onDragStart:v,onDragCancel:k,onDragOver:_,children:n}),t[14]=n,t[15]=k,t[16]=A,t[17]=_,t[18]=v,t[19]=m,t[20]=b,t[21]=T,t[22]=M):M=t[22],M}));function YI(e){return"string"==typeof e&&!e.startsWith("tree_")}function JI(e){return"string"==typeof e&&e.startsWith("tree_")}function XI(e){return JI(e.id)}const KI=u.forwardRef(((e,t)=>{const n=C.c(62);let r,o,s,i,a,l;n[0]!==e?(({columnId:i,canDelete:r,canMoveLeft:o,canMoveRight:s,...a}=e),n[0]=e,n[1]=r,n[2]=o,n[3]=s,n[4]=i,n[5]=a):(r=n[1],o=n[2],s=n[3],i=n[4],a=n[5]),n[6]!==i?(l={id:i},n[6]=i,n[7]=l):l=n[7];const{attributes:c,listeners:d,setNodeRef:u,transform:h,transition:f,isDragging:p,isOver:m}=Bw(l);let g;n[8]!==h?(g=h?ls.Transform.toString({x:h.x,y:0,scaleX:1,scaleY:1}):void 0,n[8]=h,n[9]=g):g=n[9];const y=p?2:void 0;let b;n[10]!==g||n[11]!==y||n[12]!==f?(b={transform:g,transition:f,zIndex:y,position:"relative","--gutter-width":"50px"},n[10]=g,n[11]=y,n[12]=f,n[13]=b):b=n[13];const x=b,{deleteColumn:v,moveColumn:w,addColumn:k}=U();let S;n[14]===Symbol.for("react.memo_cache_sentinel")?(S=An("h-full hover:bg-muted rounded-none"),n[14]=S):S=n[14];const E=S,j=QI;let _;n[15]!==i||n[16]!==w?(_=()=>w({column:i,overColumn:"_left_"}),n[15]=i,n[16]=w,n[17]=_):_=n[17];const I=!o;let A,T,M;n[18]===Symbol.for("react.memo_cache_sentinel")?(A=N.jsx(Ce,{className:"size-4"}),n[18]=A):A=n[18],n[19]!==_||n[20]!==I?(T=N.jsx(it,{content:"Move column left",side:"top",delayDuration:300,children:N.jsx(J,{variant:"text",size:"sm",className:E,onClick:_,disabled:I,children:A})}),n[19]=_,n[20]=I,n[21]=T):T=n[21],n[22]!==i||n[23]!==w?(M=()=>w({column:i,overColumn:"_right_"}),n[22]=i,n[23]=w,n[24]=M):M=n[24];const O=!s;let D,R,P,L,z,F,B,$;n[25]===Symbol.for("react.memo_cache_sentinel")?(D=N.jsx(Ee,{className:"size-4"}),n[25]=D):D=n[25],n[26]!==M||n[27]!==O?(R=N.jsx(it,{content:"Move column right",side:"top",delayDuration:300,children:N.jsx(J,{variant:"text",size:"sm",className:E,onClick:M,disabled:O,children:D})}),n[26]=M,n[27]=O,n[28]=R):R=n[28],n[29]!==c||n[30]!==d?(P=N.jsx("div",{className:"flex gap-2 h-full flex-grow active:bg-accent cursor-grab",...c,...d,"data-testid":"column-drag-button"}),n[29]=c,n[30]=d,n[31]=P):P=n[31],n[32]!==r||n[33]!==i||n[34]!==v?(L=r&&N.jsx(it,{content:"Delete column",side:"top",delayDuration:300,children:N.jsx(J,{variant:"text",size:"sm",className:"opacity-0 group-hover:opacity-70 group-hover:hover:opacity-100 text-destructive h-full hover:bg-destructive/20 rounded-none",onClick:()=>v({columnId:i}),children:N.jsx(Cn,{className:"size-4"})})}),n[32]=r,n[33]=i,n[34]=v,n[35]=L):L=n[35],n[36]!==k||n[37]!==i?(z=()=>{k({columnId:i}),requestAnimationFrame(j)},n[36]=k,n[37]=i,n[38]=z):z=n[38],n[39]===Symbol.for("react.memo_cache_sentinel")?(F=N.jsx(Do,{className:"size-4"}),n[39]=F):F=n[39],n[40]!==z?(B=N.jsx(it,{content:"Add column",side:"top",delayDuration:300,children:N.jsx(J,{variant:"text",size:"sm",className:E,onClick:z,children:F})}),n[40]=z,n[41]=B):B=n[41],n[42]!==R||n[43]!==P||n[44]!==L||n[45]!==B||n[46]!==T?($=N.jsxs("div",{className:"h-6 group flex items-center rounded-t-lg border hover:border-border border-[var(--slate-3)] overflow-hidden bg-[var(--slate-1)]",children:[T,R,P,L,B]}),n[42]=R,n[43]=P,n[44]=L,n[45]=B,n[46]=T,n[47]=$):$=n[47];const V=$;let H;n[48]!==t||n[49]!==u?(H=e=>{Ww(t,u)(e)},n[48]=t,n[49]=u,n[50]=H):H=n[50];const W=p?"":a.className,G=p?"z-20":"z-1 hover:z-10 focus-within:z-10",q=m&&"bg-accent/20";let Y,X;return n[51]!==W||n[52]!==G||n[53]!==q?(Y=An(W,G,q),n[51]=W,n[52]=G,n[53]=q,n[54]=Y):Y=n[54],n[55]!==V||n[56]!==p||n[57]!==a||n[58]!==x||n[59]!==H||n[60]!==Y?(X=N.jsxs("div",{tabIndex:-1,ref:H,...a,style:x,"data-is-dragging":p,className:Y,children:[V,a.children]}),n[55]=V,n[56]=p,n[57]=a,n[58]=x,n[59]=H,n[60]=Y,n[61]=X):X=n[61],X}));KI.displayName="SortableColumn";const ZI=o.memo(KI);function QI(){const e=document.getElementById("App");e&&e.scrollTo({left:e.scrollLeft+1e3,behavior:"smooth"})}const eA=o.memo((e=>{const t=C.c(15),n=o.useRef(null),r="columns"===e.width&&"w-contentWidth box-content min-h-[100px] px-11 py-6";let s,i;t[0]!==r?(s=An("flex flex-col gap-5",r),t[0]=r,t[1]=s):s=t[1],t[2]!==e.children||t[3]!==s?(i=N.jsx("div",{className:s,children:e.children}),t[2]=e.children,t[3]=s,t[4]=i):i=t[4];const a=i;if("columns"===e.width){let r;return t[5]!==a||t[6]!==e.canDelete||t[7]!==e.canMoveLeft||t[8]!==e.canMoveRight||t[9]!==e.columnId||t[10]!==e.footer?(r=N.jsxs(ZI,{tabIndex:-1,ref:n,canDelete:e.canDelete,columnId:e.columnId,canMoveLeft:e.canMoveLeft,canMoveRight:e.canMoveRight,className:"group/column",children:[a,e.footer]}),t[5]=a,t[6]=e.canDelete,t[7]=e.canMoveLeft,t[8]=e.canMoveRight,t[9]=e.columnId,t[10]=e.footer,t[11]=r):r=t[11],r}let l;return t[12]!==a||t[13]!==e.footer?(l=N.jsxs(N.Fragment,{children:[a,e.footer]}),t[12]=a,t[13]=e.footer,t[14]=l):l=t[14],l}));eA.displayName="Column";const tA=e=>{const t=C.c(8),n=se(vi),r="columns"===e.appConfig.width;let o,s,i;return t[0]!==e?(o=N.jsx(nA,{...e}),t[0]=e,t[1]=o):o=t[1],t[2]!==n||t[3]!==o?(s=N.jsx(Ow,{id:"column-container",items:n,strategy:jw,children:o}),t[2]=n,t[3]=o,t[4]=s):s=t[4],t[5]!==r||t[6]!==s?(i=N.jsx(qI,{multiColumn:r,children:s}),t[5]=r,t[6]=s,t[7]=i):i=t[7],i},nA=e=>{const t=C.c(47),{mode:n,userConfig:r,appConfig:s,connStatus:i}=e,a=Wn(),l=U(),{theme:c}=De(),{toggleSidebarPanel:d}=Ku(),{invisible:u}=uc(a.cellIds.idLength,n);let h;Cl("global.focusTop",l.focusTopCell),Cl("global.focusBottom",l.focusBottomCell),Cl("global.toggleSidebar",d),Cl("global.foldCode",l.foldAll),Cl("global.unfoldCode",l.unfoldAll),t[0]!==l.updateCellCode?(h=()=>{Jn(l.updateCellCode)},t[0]=l.updateCellCode,t[1]=h):h=t[1],Cl("global.formatAll",h),Cl("cell.hideCode",Kn.NOOP),Cl("cell.format",Kn.NOOP);const f=Cu(),p=l.scrollToTarget;let m,g,y,b,x,v,w,k,S,E,j,_,I,A;if(t[2]!==a.scrollKey||t[3]!==p?(m=()=>{null!==a.scrollKey&&p()},t[2]=a.scrollKey,t[3]=p,t[4]=m):m=t[4],t[5]!==a.cellIds||t[6]!==a.scrollKey||t[7]!==p?(g=[a.cellIds,a.scrollKey,p],t[5]=a.cellIds,t[6]=a.scrollKey,t[7]=p,t[8]=g):g=t[8],o.useEffect(m,g),t[9]!==l||t[10]!==s||t[11]!==i||t[12]!==u||t[13]!==n||t[14]!==a||t[15]!==f||t[16]!==c||t[17]!==r){const e=a.cellIds.getColumns();let o;t[27]!==a.cellIds?(o=a.cellIds.hasOnlyOneId(),t[27]=a.cellIds,t[28]=o):o=t[28];const d=o;y=hc,k="pb-[40vh]",S=u,E=s,j="pr-4",t[29]===Symbol.for("react.memo_cache_sentinel")?(b=N.jsx(PI,{}),t[29]=b):b=t[29],t[30]!==s.width?(x=N.jsx(OI,{width:s.width}),t[30]=s.width,t[31]=x):x=t[31];const h="columns"===s.width&&"grid grid-flow-col auto-cols-min gap-6";t[32]!==h?(v=An(h),t[32]=h,t[33]=v):v=t[33],w=e.map(((t,o)=>N.jsx(rA,{column:t,index:o,columnsLength:e.length,appConfig:s,notebook:a,mode:n,userConfig:r,connStatus:i,actions:l,theme:c,hasOnlyOneCell:d,invisible:u,onDeleteCell:f},t.id))),t[9]=l,t[10]=s,t[11]=i,t[12]=u,t[13]=n,t[14]=a,t[15]=f,t[16]=c,t[17]=r,t[18]=y,t[19]=b,t[20]=x,t[21]=v,t[22]=w,t[23]=k,t[24]=S,t[25]=E,t[26]=j}else y=t[18],b=t[19],x=t[20],v=t[21],w=t[22],k=t[23],S=t[24],E=t[25],j=t[26];return t[34]!==v||t[35]!==w?(_=N.jsx("div",{className:v,children:w}),t[34]=v,t[35]=w,t[36]=_):_=t[36],t[37]===Symbol.for("react.memo_cache_sentinel")?(I=N.jsx(fc,{}),t[37]=I):I=t[37],t[38]!==y||t[39]!==b||t[40]!==x||t[41]!==_||t[42]!==k||t[43]!==S||t[44]!==E||t[45]!==j?(A=N.jsxs(y,{className:k,invisible:S,appConfig:E,innerClassName:j,children:[b,x,_,I]}),t[38]=y,t[39]=b,t[40]=x,t[41]=_,t[42]=k,t[43]=S,t[44]=E,t[45]=j,t[46]=A):A=t[46],A},rA=e=>{const t=C.c(31),{column:n,index:r,columnsLength:o,appConfig:s,notebook:i,mode:a,userConfig:l,connStatus:c,actions:d,theme:u,hasOnlyOneCell:h,invisible:f,onDeleteCell:p}=e,m=n.id,g=r>0,y=r1,v=n.id,w="columns"===s.width&&"opacity-0 group-hover/column:opacity-100";let k,S;t[0]!==w?(k=An(w),t[0]=w,t[1]=k):k=t[1],t[2]!==n.id||t[3]!==k?(S=N.jsx(oA,{columnId:v,className:k}),t[2]=n.id,t[3]=k,t[4]=S):S=t[4];const E=`column-${r+1}`,j=n.topLevelIds;let _,I,A;return t[5]!==d||t[6]!==s.width||t[7]!==n||t[8]!==c.state||t[9]!==h||t[10]!==f||t[11]!==a||t[12]!==i.cellData||t[13]!==i.cellHandles||t[14]!==i.cellRuntime||t[15]!==p||t[16]!==u||t[17]!==l?(_=n.topLevelIds.map((e=>{const t=i.cellData[e],r=i.cellRuntime[e];return N.jsx(MI,{theme:u,showPlaceholder:h,allowFocus:!f,id:t.id,code:t.code,outline:r.outline,output:r.output,consoleOutputs:r.consoleOutputs,status:r.status,edited:t.edited,interrupted:r.interrupted,errored:r.errored,stopped:r.stopped,staleInputs:r.staleInputs,runStartTimestamp:r.runStartTimestamp,lastRunStartTimestamp:r.lastRunStartTimestamp,runElapsedTimeMs:r.runElapsedTimeMs??t.lastExecutionTime,serializedEditorState:t.serializedEditorState,canDelete:!h,mode:a,appClosed:c.state!==ct.OPEN,ref:i.cellHandles[e],userConfig:l,debuggerActive:r.debuggerActive,config:t.config,name:t.name,isCollapsed:n.isCollapsed(e),collapseCount:n.getCount(e),canMoveX:"columns"===s.width,...d,deleteCell:p},t.id.toString())})),t[5]=d,t[6]=s.width,t[7]=n,t[8]=c.state,t[9]=h,t[10]=f,t[11]=a,t[12]=i.cellData,t[13]=i.cellHandles,t[14]=i.cellRuntime,t[15]=p,t[16]=u,t[17]=l,t[18]=_):_=t[18],t[19]!==n.topLevelIds||t[20]!==E||t[21]!==_?(I=N.jsx(Ow,{id:E,items:j,strategy:Aw,children:_}),t[19]=n.topLevelIds,t[20]=E,t[21]=_,t[22]=I):I=t[22],t[23]!==s.width||t[24]!==n.id||t[25]!==I||t[26]!==g||t[27]!==y||t[28]!==x||t[29]!==S?(A=N.jsx(eA,{columnId:m,canMoveLeft:g,canMoveRight:y,width:b,canDelete:x,footer:S,children:I}),t[23]=s.width,t[24]=n.id,t[25]=I,t[26]=g,t[27]=y,t[28]=x,t[29]=S,t[30]=A):A=t[30],A},oA=e=>{const t=C.c(18),{columnId:n,className:r}=e,{createNewCell:o}=U(),s=se(ce),[i,a]=wi(!1),l=se(le),c=se(ki).sql;let d;t[0]===Symbol.for("react.memo_cache_sentinel")?(d=An("mb-0 rounded-none sm:px-4 md:px-5 lg:px-8 tracking-wide no-wrap whitespace-nowrap","hover:bg-accent hover:text-accent-foreground font-semibold uppercase text-xs"),t[0]=d):d=t[0];const u=d;let h;t[1]!==l||t[2]!==s||t[3]!==n||t[4]!==o||t[5]!==i||t[6]!==a.toggle||t[7]!==c?(h=()=>i?N.jsx(Si,{onClose:a.toggle}):N.jsxs(N.Fragment,{children:[N.jsxs(J,{className:u,variant:"text",size:"sm",onClick:()=>o({cellId:{type:"__end__",columnId:n},before:!1}),children:[N.jsx(Rd,{className:"mr-2 size-4 flex-shrink-0"}),"Python"]}),N.jsxs(J,{className:u,variant:"text",size:"sm",onClick:()=>{Nu(s,o),o({cellId:{type:"__end__",columnId:n},before:!1,code:(new Rt).defaultCode})},children:[N.jsx(zd,{className:"mr-2 size-4 flex-shrink-0"}),"Markdown"]}),N.jsx(it,{content:c?null:N.jsxs("div",{className:"flex flex-col",children:[N.jsxs("span",{children:["Additional dependencies required:",N.jsx(vr,{className:"inline",children:"pip install 'marimo[sql]'"}),"."]}),N.jsx("span",{children:"You will need to restart the notebook after installing."})]}),delayDuration:100,asChild:!1,children:N.jsxs(J,{className:u,variant:"text",size:"sm",disabled:!c,onClick:()=>{Nu(s,o),o({cellId:{type:"__end__",columnId:n},before:!1,code:(new Ro).getDefaultCode()})},children:[N.jsx(ve,{className:"mr-2 size-4 flex-shrink-0"}),"SQL"]})}),N.jsx(it,{content:l?null:N.jsx("span",{children:"Enable via settings under AI Assist"}),delayDuration:100,asChild:!1,children:N.jsxs(J,{className:u,variant:"text",size:"sm",disabled:!l,onClick:a.toggle,children:[N.jsx(he,{className:"mr-2 size-4 flex-shrink-0"}),"Generate with AI"]})})]}),t[1]=l,t[2]=s,t[3]=n,t[4]=o,t[5]=i,t[6]=a.toggle,t[7]=c,t[8]=h):h=t[8];const f=h,p=!i&&"w-fit",m=i&&"opacity-100 w-full max-w-4xl shadow-lg shadow-[var(--blue-3)]";let g,y,b;return t[9]!==r||t[10]!==p||t[11]!==m?(g=An("shadow-sm border border-border rounded transition-all duration-200 overflow-hidden divide-x divide-border flex",p,m,r),t[9]=r,t[10]=p,t[11]=m,t[12]=g):g=t[12],t[13]!==f?(y=f(),t[13]=f,t[14]=y):y=t[14],t[15]!==g||t[16]!==y?(b=N.jsx("div",{className:"flex justify-center mt-4 pt-6 pb-32 group gap-4 w-full print:hidden",children:N.jsx("div",{className:g,children:y})}),t[15]=g,t[16]=y,t[17]=b):b=t[17],b},sA=e=>{const t=C.c(61),{userConfig:n,appConfig:r,hideControls:s}=e,i=void 0!==s&&s;Ci(Ai,Hf);const{setCells:a,mergeAllColumns:l}=U(),c=se(bt),d=se(Ei),u=se(Ni),h=Pt(),f=ae(wf),p="edit"===c.mode,m="present"===c.mode,g=se(ji);let y;t[0]===Symbol.for("react.memo_cache_sentinel")?(y=[],t[0]=y):y=t[0],o.useEffect(aA,y);const b=n.runtime.auto_instantiate;let x,v,w;t[1]!==a||t[2]!==f?(x=(e,t)=>{a(e);const n=e.map(lA),r=e.map(cA),o=e.map(dA);f({names:n,codes:r,configs:o,layout:t})},t[1]=a,t[2]=f,t[3]=x):x=t[3],t[4]===Symbol.for("react.memo_cache_sentinel")?(v=Ps(),t[4]=v):v=t[4],t[5]!==x||t[6]!==n.runtime.auto_instantiate?(w={autoInstantiate:b,setCells:x,sessionId:v},t[5]=x,t[6]=n.runtime.auto_instantiate,t[7]=w):w=t[7];const{connection:k}=pc(w);let S,E;t[8]!==r.app_title||t[9]!==h?(S=()=>{document.title=r.app_title||kt.basename(h??"")||"Untitled Notebook"},E=[r.app_title,h],t[8]=r.app_title,t[9]=h,t[10]=S,t[11]=E):(S=t[10],E=t[11]),o.useEffect(S,E);const j=rs(r.width);let _,I;t[12]!==r.width||t[13]!==l||t[14]!==j?(_=()=>{"columns"===j&&"columns"!==r.width&&l()},t[12]=r.width,t[13]=l,t[14]=j,t[15]=_):_=t[15],t[16]!==r.width||t[17]!==l||t[18]!==d||t[19]!==j?(I=[r.width,j,l,d],t[16]=r.width,t[17]=l,t[18]=d,t[19]=j,t[20]=I):I=t[20],o.useEffect(_,I);const A=function(){const e=C.c(2),t=yu();let n;return e[0]!==t?(n=()=>t($(V())),e[0]=t,e[1]=n):n=e[1],B(n)}(),T=gu(),M=Qu();let O,D,R,P;t[21]!==A?(O=()=>{A()},t[21]=A,t[22]=O):O=t[22],Cl("global.runStale",O),Cl("global.interrupt",uA),t[23]!==M?(D=()=>{M()},t[23]=M,t[24]=D):D=t[24],Cl("global.hideCode",D),t[25]!==T?(R=()=>{T()},t[25]=T,t[26]=R):R=t[26],Cl("global.runAll",R),t[27]!==r||t[28]!==k||t[29]!==n||t[30]!==c.mode?(P=N.jsx(tA,{connStatus:k,mode:c.mode,userConfig:n,appConfig:r}),t[27]=r,t[28]=k,t[29]=n,t[30]=c.mode,t[31]=P):P=t[31];const L=P,z=r.width;let F,H,W,G,q,Y,J;return t[32]===Symbol.for("react.memo_cache_sentinel")?(F=An("pt-4 sm:pt-12 pb-2 mb-4 print:hidden z-50","sticky left-0"),t[32]=F):F=t[32],t[33]!==h||t[34]!==p?(H=p&&N.jsx("div",{className:"flex items-center justify-center container",children:N.jsx($f,{filename:h})}),t[33]=h,t[34]=p,t[35]=H):H=t[35],t[36]!==k||t[37]!==H?(W=N.jsx(yc,{connection:k,className:F,children:H}),t[36]=k,t[37]=H,t[38]=W):W=t[38],t[39]!==r||t[40]!==L||t[41]!==u||t[42]!==c.mode?(G=u&&N.jsx(mc,{appConfig:r,mode:c.mode,children:L}),t[39]=r,t[40]=L,t[41]=u,t[42]=c.mode,t[43]=G):G=t[43],t[44]!==r.width||t[45]!==k||t[46]!==g||t[47]!==W||t[48]!==G?(q=N.jsxs(bc,{connection:k,isRunning:g,width:z,children:[W,G]}),t[44]=r.width,t[45]=k,t[46]=g,t[47]=W,t[48]=G,t[49]=q):q=t[49],t[50]!==r||t[51]!==k||t[52]!==i||t[53]!==m||t[54]!==g||t[55]!==A||t[56]!==M?(Y=!i&&N.jsx(_i,{children:N.jsx(Lf,{presenting:m,onTogglePresenting:M,onInterrupt:Js,onRun:A,closed:k.state===ct.CLOSED,running:g,appConfig:r})}),t[50]=r,t[51]=k,t[52]=i,t[53]=m,t[54]=g,t[55]=A,t[56]=M,t[57]=Y):Y=t[57],t[58]!==q||t[59]!==Y?(J=N.jsxs(N.Fragment,{children:[q,Y]}),t[58]=q,t[59]=Y,t[60]=J):J=t[60],J};function iA(){gc.INSTANCE.stop()}function aA(){return gc.INSTANCE.start(Ii),iA}function lA(e){return e.name}function cA(e){return e.code}function dA(e){return e.config}function uA(){Js()}const{createElement:hA,createContext:fA,forwardRef:pA,useCallback:mA,useContext:gA,useEffect:yA,useImperativeHandle:bA,useLayoutEffect:xA,useMemo:vA,useRef:wA,useState:kA}=Ti,SA=Ti[`useId${Math.random()}`.slice(0,5)],CA=xA,EA=fA(null);EA.displayName="PanelGroupContext";const NA=CA,jA="function"==typeof SA?SA:()=>null;let _A=0;function IA(e=null){const t=jA(),n=wA(e||t||null);return null===n.current&&(n.current=""+_A++),null!=e?e:n.current}function AA({children:e,className:t="",collapsedSize:n,collapsible:r,defaultSize:o,forwardedRef:s,id:i,maxSize:a,minSize:l,onCollapse:c,onExpand:d,onResize:u,order:h,style:f,tagName:p="div",...m}){const g=gA(EA);if(null===g)throw Error("Panel components must be rendered within a PanelGroup container");const{collapsePanel:y,expandPanel:b,getPanelSize:x,getPanelStyle:v,groupId:w,isPanelCollapsed:k,reevaluatePanelConstraints:S,registerPanel:C,resizePanel:E,unregisterPanel:N}=g,j=IA(i),_=wA({callbacks:{onCollapse:c,onExpand:d,onResize:u},constraints:{collapsedSize:n,collapsible:r,defaultSize:o,maxSize:a,minSize:l},id:j,idIsFromProps:void 0!==i,order:h});wA({didLogMissingDefaultSizeWarning:!1}),NA((()=>{const{callbacks:e,constraints:t}=_.current,s={...t};_.current.id=j,_.current.idIsFromProps=void 0!==i,_.current.order=h,e.onCollapse=c,e.onExpand=d,e.onResize=u,t.collapsedSize=n,t.collapsible=r,t.defaultSize=o,t.maxSize=a,t.minSize=l,s.collapsedSize===t.collapsedSize&&s.collapsible===t.collapsible&&s.maxSize===t.maxSize&&s.minSize===t.minSize||S(_.current,s)})),NA((()=>{const e=_.current;return C(e),()=>{N(e)}}),[h,j,C,N]),bA(s,(()=>({collapse:()=>{y(_.current)},expand:e=>{b(_.current,e)},getId:()=>j,getSize:()=>x(_.current),isCollapsed:()=>k(_.current),isExpanded:()=>!k(_.current),resize:e=>{E(_.current,e)}})),[y,b,x,k,j,E]);const I=v(_.current,o);return hA(p,{...m,children:e,className:t,id:i,style:{...I,...f},"data-panel":"","data-panel-collapsible":r||void 0,"data-panel-group-id":w,"data-panel-id":j,"data-panel-size":parseFloat(""+I.flexGrow).toFixed(1)})}const TA=pA(((e,t)=>hA(AA,{...e,forwardedRef:t})));AA.displayName="Panel",TA.displayName="forwardRef(Panel)";let MA=null,OA=null;function DA(e,t){const n=function(e,t){if(t){const e=!!(t&qA),n=!!(t&YA);if(t&WA)return e?"se-resize":n?"ne-resize":"e-resize";if(t&GA)return e?"sw-resize":n?"nw-resize":"w-resize";if(e)return"s-resize";if(n)return"n-resize"}switch(e){case"horizontal":return"ew-resize";case"intersection":return"move";case"vertical":return"ns-resize"}}(e,t);MA!==n&&(MA=n,null===OA&&(OA=document.createElement("style"),document.head.appendChild(OA)),OA.innerHTML=`*{cursor: ${n}!important;}`)}function RA(e){return"keydown"===e.type}function PA(e){return e.type.startsWith("pointer")}function LA(e){return e.type.startsWith("mouse")}function zA(e){if(PA(e)){if(e.isPrimary)return{x:e.clientX,y:e.clientY}}else if(LA(e))return{x:e.clientX,y:e.clientY};return{x:1/0,y:1/0}}const FA=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function BA(e){const t=getComputedStyle(e);return"fixed"===t.position||(!("auto"===t.zIndex||"static"===t.position&&!function(e){var t;const n=getComputedStyle(null!==(t=HA(e))&&void 0!==t?t:e).display;return"flex"===n||"inline-flex"===n}(e))||(+t.opacity<1||("transform"in t&&"none"!==t.transform||("webkitTransform"in t&&"none"!==t.webkitTransform||("mixBlendMode"in t&&"normal"!==t.mixBlendMode||("filter"in t&&"none"!==t.filter||("webkitFilter"in t&&"none"!==t.webkitFilter||("isolation"in t&&"isolate"===t.isolation||(!!FA.test(t.willChange)||"touch"===t.webkitOverflowScrolling)))))))))}function UA(e){let t=e.length;for(;t--;){const n=e[t];if(cT(n,"Missing node"),BA(n))return n}return null}function $A(e){return e&&Number(getComputedStyle(e).zIndex)||0}function VA(e){const t=[];for(;e;)t.push(e),e=HA(e);return t}function HA(e){const{parentNode:t}=e;return t&&t instanceof ShadowRoot?t.host:t}const WA=1,GA=2,qA=4,YA=8,JA="coarse"===function(){if("function"==typeof matchMedia)return matchMedia("(pointer:coarse)").matches?"coarse":"fine"}();let XA=[],KA=!1,ZA=new Map,QA=new Map;const eT=new Set;function tT(e){const{target:t}=e,{x:n,y:r}=zA(e);KA=!0,oT({target:t,x:n,y:r}),aT(),XA.length>0&&(lT("down",e),e.preventDefault(),e.stopPropagation())}function nT(e){const{x:t,y:n}=zA(e);if(KA&&0===e.buttons&&(KA=!1,lT("up",e)),!KA){const{target:r}=e;oT({target:r,x:t,y:n})}lT("move",e),iT(),XA.length>0&&e.preventDefault()}function rT(e){const{target:t}=e,{x:n,y:r}=zA(e);QA.clear(),KA=!1,XA.length>0&&e.preventDefault(),lT("up",e),oT({target:t,x:n,y:r}),iT(),aT()}function oT({target:e,x:t,y:n}){XA.splice(0);let r=null;(e instanceof HTMLElement||e instanceof SVGElement)&&(r=e),eT.forEach((e=>{const{element:o,hitAreaMargins:s}=e,i=o.getBoundingClientRect(),{bottom:a,left:l,right:c,top:d}=i,u=JA?s.coarse:s.fine;if(t>=l-u&&t<=c+u&&n>=d-u&&n<=a+u){if(null!==r&&document.contains(r)&&o!==r&&!o.contains(r)&&!r.contains(o)&&function(e,t){if(e===t)throw new Error("Cannot compare node with itself");const n={a:VA(e),b:VA(t)};let r;for(;n.a.at(-1)===n.b.at(-1);)e=n.a.pop(),t=n.b.pop(),r=e;cT(r,"Stacking order can only be calculated for elements with a common ancestor");const o=$A(UA(n.a)),s=$A(UA(n.b));if(o===s){const e=r.childNodes,t={a:n.a.at(-1),b:n.b.at(-1)};let o=e.length;for(;o--;){const n=e[o];if(n===t.a)return 1;if(n===t.b)return-1}}return Math.sign(o-s)}(r,o)>0){let e=r,t=!1;for(;e&&!e.contains(o);){if(h=e.getBoundingClientRect(),f=i,h.xf.x&&h.yf.y){t=!0;break}e=e.parentElement}if(t)return}XA.push(e)}var h,f}))}function sT(e,t){QA.set(e,t)}function iT(){let e=!1,t=!1;XA.forEach((n=>{const{direction:r}=n;"horizontal"===r?e=!0:t=!0}));let n=0;QA.forEach((e=>{n|=e})),e&&t?DA("intersection",n):e?DA("horizontal",n):t?DA("vertical",n):null!==OA&&(document.head.removeChild(OA),MA=null,OA=null)}function aT(){ZA.forEach(((e,t)=>{const{body:n}=t;n.removeEventListener("contextmenu",rT),n.removeEventListener("pointerdown",tT),n.removeEventListener("pointerleave",nT),n.removeEventListener("pointermove",nT)})),window.removeEventListener("pointerup",rT),window.removeEventListener("pointercancel",rT),eT.size>0&&(KA?(XA.length>0&&ZA.forEach(((e,t)=>{const{body:n}=t;e>0&&(n.addEventListener("contextmenu",rT),n.addEventListener("pointerleave",nT),n.addEventListener("pointermove",nT))})),window.addEventListener("pointerup",rT),window.addEventListener("pointercancel",rT)):ZA.forEach(((e,t)=>{const{body:n}=t;e>0&&(n.addEventListener("pointerdown",tT,{capture:!0}),n.addEventListener("pointermove",nT))})))}function lT(e,t){eT.forEach((n=>{const{setResizeHandlerState:r}=n,o=XA.includes(n);r(e,o,t)}))}function cT(e,t){if(!e)throw console.error(t),Error(t)}function dT(e,t,n=10){return e.toFixed(n)===t.toFixed(n)?0:e>t?1:-1}function uT(e,t,n=10){return 0===dT(e,t,n)}function hT(e,t,n){return 0===dT(e,t,n)}function fT({panelConstraints:e,panelIndex:t,size:n}){const r=e[t];cT(null!=r,`Panel constraints not found for index ${t}`);let{collapsedSize:o=0,collapsible:s,maxSize:i=100,minSize:a=0}=r;if(dT(n,a)<0)if(s){n=dT(n,(o+a)/2)<0?o:a}else n=a;return n=Math.min(i,n),n=parseFloat(n.toFixed(10))}function pT({delta:e,initialLayout:t,panelConstraints:n,pivotIndices:r,prevLayout:o,trigger:s}){if(hT(e,0))return t;const i=[...t],[a,l]=r;cT(null!=a,"Invalid first pivot index"),cT(null!=l,"Invalid second pivot index");let c=0;if("keyboard"===s){{const r=e<0?l:a,o=n[r];cT(o,`Panel constraints not found for index ${r}`);const{collapsedSize:s=0,collapsible:i,minSize:c=0}=o;if(i){const n=t[r];if(cT(null!=n,`Previous layout not found for panel index ${r}`),hT(n,s)){const t=c-n;dT(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}{const r=e<0?a:l,o=n[r];cT(o,`No panel constraints found for index ${r}`);const{collapsedSize:s=0,collapsible:i,minSize:c=0}=o;if(i){const n=t[r];if(cT(null!=n,`Previous layout not found for panel index ${r}`),hT(n,c)){const t=n-s;dT(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}}{const r=e<0?1:-1;let o=e<0?l:a,s=0;for(;;){const e=t[o];cT(null!=e,`Previous layout not found for panel index ${o}`);if(s+=fT({panelConstraints:n,panelIndex:o,size:100})-e,o+=r,o<0||o>=n.length)break}const i=Math.min(Math.abs(e),Math.abs(s));e=e<0?0-i:i}{let r=e<0?a:l;for(;r>=0&&r=0))break;e<0?r--:r++}}if(function(e,t,n){if(e.length!==t.length)return!1;for(let r=0;r=0&&r0?r--:r++}}}return hT(i.reduce(((e,t)=>t+e),0),100)?i:o}function mT({layout:e,panelsArray:t,pivotIndices:n}){let r=0,o=100,s=0,i=0;const a=n[0];cT(null!=a,"No pivot index found"),t.forEach(((e,t)=>{const{constraints:n}=e,{maxSize:l=100,minSize:c=0}=n;t===a?(r=c,o=l):(s+=c,i+=l)}));return{valueMax:Math.min(o,100-s),valueMin:Math.max(r,100-i),valueNow:e[a]}}function gT(e,t=document){return Array.from(t.querySelectorAll(`[data-panel-resize-handle-id][data-panel-group-id="${e}"]`))}function yT(e,t,n=document){const r=gT(e,n).findIndex((e=>e.getAttribute("data-panel-resize-handle-id")===t));return null!=r?r:null}function bT(e,t,n){const r=yT(e,t,n);return null!=r?[r,r+1]:[-1,-1]}function xT(e,t=document){var n;if(t instanceof HTMLElement&&(null==t||null===(n=t.dataset)||void 0===n?void 0:n.panelGroupId)==e)return t;const r=t.querySelector(`[data-panel-group][data-panel-group-id="${e}"]`);return r||null}function vT(e,t=document){const n=t.querySelector(`[data-panel-resize-handle-id="${e}"]`);return n||null}function wT({committedValuesRef:e,eagerValuesRef:t,groupId:n,layout:r,panelDataArray:o,panelGroupElement:s,setLayout:i}){wA({didWarnAboutMissingResizeHandle:!1}),NA((()=>{if(!s)return;const e=gT(n,s);for(let t=0;t{e.forEach(((e,t)=>{e.removeAttribute("aria-controls"),e.removeAttribute("aria-valuemax"),e.removeAttribute("aria-valuemin"),e.removeAttribute("aria-valuenow")}))}}),[n,r,o,s]),yA((()=>{if(!s)return;const e=t.current;cT(e,"Eager values not found");const{panelDataArray:o}=e;cT(null!=xT(n,s),`No group found for id "${n}"`);const a=gT(n,s);cT(a,`No resize handles found for group id "${n}"`);const l=a.map((e=>{const t=e.getAttribute("data-panel-resize-handle-id");cT(t,"Resize handle element has no handle id attribute");const[a,l]=function(e,t,n,r=document){var o,s,i,a;const l=vT(t,r),c=gT(e,r),d=l?c.indexOf(l):-1;return[null!==(o=null===(s=n[d])||void 0===s?void 0:s.id)&&void 0!==o?o:null,null!==(i=null===(a=n[d+1])||void 0===a?void 0:a.id)&&void 0!==i?i:null]}(n,t,o,s);if(null==a||null==l)return()=>{};const c=e=>{if(!e.defaultPrevented)switch(e.key){case"Enter":{e.preventDefault();const l=o.findIndex((e=>e.id===a));if(l>=0){const e=o[l];cT(e,`No panel data found for index ${l}`);const a=r[l],{collapsedSize:c=0,collapsible:d,minSize:u=0}=e.constraints;if(null!=a&&d){const e=pT({delta:hT(a,c)?u-c:c-a,initialLayout:r,panelConstraints:o.map((e=>e.constraints)),pivotIndices:bT(n,t,s),prevLayout:r,trigger:"keyboard"});r!==e&&i(e)}}break}}};return e.addEventListener("keydown",c),()=>{e.removeEventListener("keydown",c)}}));return()=>{l.forEach((e=>e()))}}),[s,e,t,n,r,o,i])}function kT(e,t){if(e.length!==t.length)return!1;for(let n=0;n{const o=e[r];cT(o,`Panel data not found for index ${r}`);const{callbacks:s,constraints:i,id:a}=o,{collapsedSize:l=0,collapsible:c}=i,d=n[a];if(null==d||t!==d){n[a]=t;const{onCollapse:e,onExpand:r,onResize:o}=s;o&&o(t,d),c&&(e||r)&&(!r||null!=d&&!uT(d,l)||uT(t,l)||r(),!e||null!=d&&uT(d,l)||!uT(t,l)||e())}}))}function NT(e,t){if(e.length!==t.length)return!1;for(let n=0;nlocalStorage.getItem(e),e.setItem=(e,t)=>{localStorage.setItem(e,t)}}catch(t){console.error(t),e.getItem=()=>null,e.setItem=()=>{}}}function _T(e){return`react-resizable-panels:${e}`}function IT(e){return e.map((e=>{const{constraints:t,id:n,idIsFromProps:r,order:o}=e;return r?n:o?`${o}:${JSON.stringify(t)}`:JSON.stringify(t)})).sort(((e,t)=>e.localeCompare(t))).join(",")}function AT(e,t){try{const n=_T(e),r=t.getItem(n);if(r){const e=JSON.parse(r);if("object"==typeof e&&null!=e)return e}}catch(n){}return null}function TT(e,t,n,r,o){var s;const i=_T(e),a=IT(t),l=null!==(s=AT(e,o))&&void 0!==s?s:{};l[a]={expandToSizes:Object.fromEntries(n.entries()),layout:r};try{o.setItem(i,JSON.stringify(l))}catch(c){console.error(c)}}function MT({layout:e,panelConstraints:t}){const n=[...e],r=n.reduce(((e,t)=>e+t),0);if(n.length!==t.length)throw Error(`Invalid ${t.length} panel layout: ${n.map((e=>`${e}%`)).join(", ")}`);if(!hT(r,100)&&n.length>0)for(let s=0;s(jT(OT),OT.getItem(e)),setItem:(e,t)=>{jT(OT),OT.setItem(e,t)}},DT={};function RT({autoSaveId:e=null,children:t,className:n="",direction:r,forwardedRef:o,id:s=null,onLayout:i=null,keyboardResizeBy:a=null,storage:l=OT,style:c,tagName:d="div",...u}){const h=IA(s),f=wA(null),[p,m]=kA(null),[g,y]=kA([]),b=function(){const[e,t]=kA(0);return mA((()=>t((e=>e+1))),[])}(),x=wA({}),v=wA(new Map),w=wA(0),k=wA({autoSaveId:e,direction:r,dragState:p,id:h,keyboardResizeBy:a,onLayout:i,storage:l}),S=wA({layout:g,panelDataArray:[],panelDataArrayChanged:!1});wA({didLogIdAndOrderWarning:!1,didLogPanelConstraintsWarning:!1,prevPanelIds:[]}),bA(o,(()=>({getId:()=>k.current.id,getLayout:()=>{const{layout:e}=S.current;return e},setLayout:e=>{const{onLayout:t}=k.current,{layout:n,panelDataArray:r}=S.current,o=MT({layout:e,panelConstraints:r.map((e=>e.constraints))});kT(n,o)||(y(o),S.current.layout=o,t&&t(o),ET(r,o,x.current))}})),[]),NA((()=>{k.current.autoSaveId=e,k.current.direction=r,k.current.dragState=p,k.current.id=h,k.current.onLayout=i,k.current.storage=l})),wT({committedValuesRef:k,eagerValuesRef:S,groupId:h,layout:g,panelDataArray:S.current.panelDataArray,setLayout:y,panelGroupElement:f.current}),yA((()=>{const{panelDataArray:t}=S.current;if(e){if(0===g.length||g.length!==t.length)return;let n=DT[e];null==n&&(n=function(e,t=10){let n=null;return(...r)=>{null!==n&&clearTimeout(n),n=setTimeout((()=>{e(...r)}),t)}}(TT,100),DT[e]=n);const r=[...t],o=new Map(v.current);n(e,r,o,g,l)}}),[e,g,l]),yA((()=>{}));const C=mA((e=>{const{onLayout:t}=k.current,{layout:n,panelDataArray:r}=S.current;if(e.constraints.collapsible){const o=r.map((e=>e.constraints)),{collapsedSize:s=0,panelSize:i,pivotIndices:a}=zT(r,e,n);if(cT(null!=i,`Panel size not found for panel "${e.id}"`),!uT(i,s)){v.current.set(e.id,i);const l=pT({delta:LT(r,e)===r.length-1?i-s:s-i,initialLayout:n,panelConstraints:o,pivotIndices:a,prevLayout:n,trigger:"imperative-api"});NT(n,l)||(y(l),S.current.layout=l,t&&t(l),ET(r,l,x.current))}}}),[]),E=mA(((e,t)=>{const{onLayout:n}=k.current,{layout:r,panelDataArray:o}=S.current;if(e.constraints.collapsible){const s=o.map((e=>e.constraints)),{collapsedSize:i=0,panelSize:a=0,minSize:l=0,pivotIndices:c}=zT(o,e,r),d=null!=t?t:l;if(uT(a,i)){const t=v.current.get(e.id),i=null!=t&&t>=d?t:d,l=pT({delta:LT(o,e)===o.length-1?a-i:i-a,initialLayout:r,panelConstraints:s,pivotIndices:c,prevLayout:r,trigger:"imperative-api"});NT(r,l)||(y(l),S.current.layout=l,n&&n(l),ET(o,l,x.current))}}}),[]),N=mA((e=>{const{layout:t,panelDataArray:n}=S.current,{panelSize:r}=zT(n,e,t);return cT(null!=r,`Panel size not found for panel "${e.id}"`),r}),[]),j=mA(((e,t)=>{const{panelDataArray:n}=S.current,r=LT(n,e);return function({defaultSize:e,dragState:t,layout:n,panelData:r,panelIndex:o,precision:s=3}){const i=n[o];let a;return a=null==i?null!=e?e.toPrecision(s):"1":1===r.length?"1":i.toPrecision(s),{flexBasis:0,flexGrow:a,flexShrink:1,overflow:"hidden",pointerEvents:null!==t?"none":void 0}}({defaultSize:t,dragState:p,layout:g,panelData:n,panelIndex:r})}),[p,g]),_=mA((e=>{const{layout:t,panelDataArray:n}=S.current,{collapsedSize:r=0,collapsible:o,panelSize:s}=zT(n,e,t);return cT(null!=s,`Panel size not found for panel "${e.id}"`),!0===o&&uT(s,r)}),[]),I=mA((e=>{const{layout:t,panelDataArray:n}=S.current,{collapsedSize:r=0,collapsible:o,panelSize:s}=zT(n,e,t);return cT(null!=s,`Panel size not found for panel "${e.id}"`),!o||dT(s,r)>0}),[]),A=mA((e=>{const{panelDataArray:t}=S.current;t.push(e),t.sort(((e,t)=>{const n=e.order,r=t.order;return null==n&&null==r?0:null==n?-1:null==r?1:n-r})),S.current.panelDataArrayChanged=!0,b()}),[b]);NA((()=>{if(S.current.panelDataArrayChanged){S.current.panelDataArrayChanged=!1;const{autoSaveId:e,onLayout:t,storage:n}=k.current,{layout:r,panelDataArray:o}=S.current;let s=null;if(e){const t=function(e,t,n){var r,o;return null!==(o=(null!==(r=AT(e,n))&&void 0!==r?r:{})[IT(t)])&&void 0!==o?o:null}(e,o,n);t&&(v.current=new Map(Object.entries(t.expandToSizes)),s=t.layout)}null==s&&(s=function({panelDataArray:e}){const t=Array(e.length),n=e.map((e=>e.constraints));let r=0,o=100;for(let s=0;se.constraints))});kT(r,i)||(y(i),S.current.layout=i,t&&t(i),ET(o,i,x.current))}})),NA((()=>{const e=S.current;return()=>{e.layout=[]}}),[]);const T=mA((e=>{let t=!1;const n=f.current;if(n){"rtl"===window.getComputedStyle(n,null).getPropertyValue("direction")&&(t=!0)}return function(n){n.preventDefault();const r=f.current;if(!r)return()=>null;const{direction:o,dragState:s,id:i,keyboardResizeBy:a,onLayout:l}=k.current,{layout:c,panelDataArray:d}=S.current,{initialLayout:u}=null!=s?s:{},h=bT(i,e,r);let p=CT(n,e,o,s,a,r);const m="horizontal"===o;m&&t&&(p=-p);const g=pT({delta:p,initialLayout:null!=u?u:c,panelConstraints:d.map((e=>e.constraints)),pivotIndices:h,prevLayout:c,trigger:RA(n)?"keyboard":"mouse-or-touch"}),b=!NT(c,g);(PA(n)||LA(n))&&w.current!=p&&(w.current=p,sT(e,b||0===p?0:m?p<0?WA:GA:p<0?qA:YA)),b&&(y(g),S.current.layout=g,l&&l(g),ET(d,g,x.current))}}),[]),M=mA(((e,t)=>{const{onLayout:n}=k.current,{layout:r,panelDataArray:o}=S.current,s=o.map((e=>e.constraints)),{panelSize:i,pivotIndices:a}=zT(o,e,r);cT(null!=i,`Panel size not found for panel "${e.id}"`);const l=pT({delta:LT(o,e)===o.length-1?i-t:t-i,initialLayout:r,panelConstraints:s,pivotIndices:a,prevLayout:r,trigger:"imperative-api"});NT(r,l)||(y(l),S.current.layout=l,n&&n(l),ET(o,l,x.current))}),[]),O=mA(((e,t)=>{const{layout:n,panelDataArray:r}=S.current,{collapsedSize:o=0,collapsible:s}=t,{collapsedSize:i=0,collapsible:a,maxSize:l=100,minSize:c=0}=e.constraints,{panelSize:d}=zT(r,e,n);null!=d&&(s&&a&&uT(d,o)?uT(o,i)||M(e,i):dl&&M(e,l))}),[M]),D=mA(((e,t)=>{const{direction:n}=k.current,{layout:r}=S.current;if(!f.current)return;const o=vT(e,f.current);cT(o,`Drag handle element not found for id "${e}"`);const s=ST(n,t);m({dragHandleId:e,dragHandleRect:o.getBoundingClientRect(),initialCursorPosition:s,initialLayout:r})}),[]),R=mA((()=>{m(null)}),[]),P=mA((e=>{const{panelDataArray:t}=S.current,n=LT(t,e);n>=0&&(t.splice(n,1),delete x.current[e.id],S.current.panelDataArrayChanged=!0,b())}),[b]),L=vA((()=>({collapsePanel:C,direction:r,dragState:p,expandPanel:E,getPanelSize:N,getPanelStyle:j,groupId:h,isPanelCollapsed:_,isPanelExpanded:I,reevaluatePanelConstraints:O,registerPanel:A,registerResizeHandle:T,resizePanel:M,startDragging:D,stopDragging:R,unregisterPanel:P,panelGroupElement:f.current})),[C,p,r,E,N,j,h,_,I,O,A,T,M,D,R,P]),z={display:"flex",flexDirection:"horizontal"===r?"row":"column",height:"100%",overflow:"hidden",width:"100%"};return hA(EA.Provider,{value:L},hA(d,{...u,children:t,className:n,id:s,ref:f,style:{...z,...c},"data-panel-group":"","data-panel-group-direction":r,"data-panel-group-id":h}))}const PT=pA(((e,t)=>hA(RT,{...e,forwardedRef:t})));function LT(e,t){return e.findIndex((e=>e===t||e.id===t.id))}function zT(e,t,n){const r=LT(e,t),o=r===e.length-1?[r-1,r]:[r,r+1],s=n[r];return{...t.constraints,panelSize:s,pivotIndices:o}}function FT({children:e=null,className:t="",disabled:n=!1,hitAreaMargins:r,id:o,onBlur:s,onDragging:i,onFocus:a,style:l={},tabIndex:c=0,tagName:d="div",...u}){var h,f;const p=wA(null),m=wA({onDragging:i});yA((()=>{m.current.onDragging=i}));const g=gA(EA);if(null===g)throw Error("PanelResizeHandle components must be rendered within a PanelGroup container");const{direction:y,groupId:b,registerResizeHandle:x,startDragging:v,stopDragging:w,panelGroupElement:k}=g,S=IA(o),[C,E]=kA("inactive"),[N,j]=kA(!1),[_,I]=kA(null),A=wA({state:C});NA((()=>{A.current.state=C})),yA((()=>{if(n)I(null);else{const e=x(S);I((()=>e))}}),[n,S,x]);const T=null!==(h=null==r?void 0:r.coarse)&&void 0!==h?h:15,M=null!==(f=null==r?void 0:r.fine)&&void 0!==f?f:5;yA((()=>{if(n||null==_)return;const e=p.current;cT(e,"Element ref not attached");return function(e,t,n,r,o){var s;const{ownerDocument:i}=t,a={direction:n,element:t,hitAreaMargins:r,setResizeHandlerState:o},l=null!==(s=ZA.get(i))&&void 0!==s?s:0;return ZA.set(i,l+1),eT.add(a),aT(),function(){var t;QA.delete(e),eT.delete(a);const n=null!==(t=ZA.get(i))&&void 0!==t?t:1;if(ZA.set(i,n-1),aT(),1===n&&ZA.delete(i),XA.includes(a)){const e=XA.indexOf(a);e>=0&&XA.splice(e,1),iT(),o("up",!0,null)}}}(S,e,y,{coarse:T,fine:M},((e,t,n)=>{if(t)switch(e){case"down":{E("drag"),cT(n,'Expected event to be defined for "down" action'),v(S,n);const{onDragging:e}=m.current;e&&e(!0);break}case"move":{const{state:e}=A.current;"drag"!==e&&E("hover"),cT(n,'Expected event to be defined for "move" action'),_(n);break}case"up":{E("hover"),w();const{onDragging:e}=m.current;e&&e(!1);break}}else E("inactive")}))}),[T,y,n,M,x,S,_,v,w]),function({disabled:e,handleId:t,resizeHandler:n,panelGroupElement:r}){yA((()=>{if(e||null==n||null==r)return;const o=vT(t,r);if(null==o)return;const s=e=>{if(!e.defaultPrevented)switch(e.key){case"ArrowDown":case"ArrowLeft":case"ArrowRight":case"ArrowUp":case"End":case"Home":e.preventDefault(),n(e);break;case"F6":{e.preventDefault();const n=o.getAttribute("data-panel-group-id");cT(n,`No group element found for id "${n}"`);const s=gT(n,r),i=yT(n,t,r);cT(null!==i,`No resize element found for id "${t}"`),s[e.shiftKey?i>0?i-1:s.length-1:i+1{o.removeEventListener("keydown",s)}}),[r,e,t,n])}({disabled:n,handleId:S,resizeHandler:_,panelGroupElement:k});return hA(d,{...u,children:e,className:t,id:o,onBlur:()=>{j(!1),null==s||s()},onFocus:()=>{j(!0),null==a||a()},ref:p,role:"separator",style:{touchAction:"none",userSelect:"none",...l},tabIndex:c,"data-panel-group-direction":y,"data-panel-group-id":b,"data-resize-handle":"","data-resize-handle-active":"drag"===C?"pointer":N?"keyboard":void 0,"data-resize-handle-state":C,"data-panel-resize-handle-enabled":!n,"data-panel-resize-handle-id":S})}RT.displayName="PanelGroup",PT.displayName="forwardRef(PanelGroup)",FT.displayName="PanelResizeHandle";const BT=e=>{const t=C.c(3);let n,r;return t[0]===Symbol.for("react.memo_cache_sentinel")?(n=N.jsx("path",{d:"M205.28 31.36c14.096 14.88 20.016 35.2 22.512 63.68c6.626 0 12.805 1.47 16.976 7.152l7.792 10.56A17.55 17.55 0 0 1 256 123.2v28.688c-.008 3.704-1.843 7.315-4.832 9.504C215.885 187.222 172.35 208 128 208c-49.066 0-98.19-28.273-123.168-46.608c-2.989-2.189-4.825-5.8-4.832-9.504V123.2c0-3.776 1.2-7.424 3.424-10.464l7.792-10.544c4.173-5.657 10.38-7.152 16.992-7.152c2.496-28.48 8.4-48.8 22.512-63.68C77.331 3.165 112.567.06 127.552 0H128c14.72 0 50.4 2.88 77.28 31.36m-77.264 47.376c-3.04 0-6.544.176-10.272.544c-1.312 4.896-3.248 9.312-6.08 12.128c-11.2 11.2-24.704 12.928-31.936 12.928c-6.802 0-13.927-1.42-19.744-5.088c-5.502 1.808-10.786 4.415-11.136 10.912c-.586 12.28-.637 24.55-.688 36.824c-.026 6.16-.05 12.322-.144 18.488c.024 3.579 2.182 6.903 5.44 8.384C79.936 185.92 104.976 192 128.016 192c23.008 0 48.048-6.08 74.512-18.144c3.258-1.48 5.415-4.805 5.44-8.384c.317-18.418.062-36.912-.816-55.312h.016c-.342-6.534-5.648-9.098-11.168-10.912c-5.82 3.652-12.927 5.088-19.728 5.088c-7.232 0-20.72-1.728-31.936-12.928c-2.832-2.816-4.768-7.232-6.08-12.128a106 106 0 0 0-10.24-.544m-26.941 43.93c5.748 0 10.408 4.66 10.408 10.409v19.183c0 5.749-4.66 10.409-10.408 10.409s-10.408-4.66-10.408-10.409v-19.183c0-5.748 4.66-10.408 10.408-10.408m53.333 0c5.749 0 10.409 4.66 10.409 10.409v19.183c0 5.749-4.66 10.409-10.409 10.409c-5.748 0-10.408-4.66-10.408-10.409v-19.183c0-5.748 4.66-10.408 10.408-10.408M81.44 28.32c-11.2 1.12-20.64 4.8-25.44 9.92c-10.4 11.36-8.16 40.16-2.24 46.24c4.32 4.32 12.48 7.2 21.28 7.2c6.72 0 19.52-1.44 30.08-12.16c4.64-4.48 7.52-15.68 7.2-27.04c-.32-9.12-2.88-16.64-6.72-19.84c-4.16-3.68-13.6-5.28-24.16-4.32m68.96 4.32c-3.84 3.2-6.4 10.72-6.72 19.84c-.32 11.36 2.56 22.56 7.2 27.04c10.56 10.72 23.36 12.16 30.08 12.16c8.8 0 16.96-2.88 21.28-7.2c5.92-6.08 8.16-34.88-2.24-46.24c-4.8-5.12-14.24-8.8-25.44-9.92c-10.56-.96-20 .64-24.16 4.32M128 56c-2.56 0-5.6.16-8.96.48c.32 1.76.48 3.68.64 5.76c0 1.44 0 2.88-.16 4.48c3.2-.32 5.92-.32 8.48-.32s5.28 0 8.48.32c-.16-1.6-.16-3.04-.16-4.48c.16-2.08.32-4 .64-5.76c-3.36-.32-6.4-.48-8.96-.48"}),t[0]=n):n=t[0],t[1]!==e?(r=N.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1.24em",height:"1em",viewBox:"0 0 256 208",fill:"currentColor",...e,children:n}),t[1]=e,t[2]=r):r=t[2],r},UT=e=>{const t=C.c(17);let n,r,o,s,i;t[0]!==e?(({children:n,tooltip:i,selected:s,className:r,...o}=e),t[0]=e,t[1]=n,t[2]=r,t[3]=o,t[4]=s,t[5]=i):(n=t[1],r=t[2],o=t[3],s=t[4],i=t[5]);const a=!s&&"hover:bg-[var(--sage-3)]",l=s&&"bg-[var(--sage-4)]";let c,d;t[6]!==r||t[7]!==a||t[8]!==l?(c=An("h-full flex items-center p-2 text-sm shadow-inset font-mono cursor-pointer rounded",a,l,r),t[6]=r,t[7]=a,t[8]=l,t[9]=c):c=t[9],t[10]!==n||t[11]!==o||t[12]!==c?(d=N.jsx("div",{className:c,...o,children:n}),t[10]=n,t[11]=o,t[12]=c,t[13]=d):d=t[13];const u=d;if(i){let e;return t[14]!==u||t[15]!==i?(e=N.jsx(it,{content:i,side:"top",delayDuration:200,children:u}),t[14]=u,t[15]=i,t[16]=e):e=t[16],e}return u},$T=()=>{var e;const t=C.c(14),n=se(HT),r=se(le),o=(null==(e=null==n?void 0:n.open_ai)?void 0:e.model)||"gpt-4-turbo",{handleClick:s}=Ll();if(!r){let e,n,r;return t[0]!==s?(e=()=>s("ai"),t[0]=s,t[1]=e):e=t[1],t[2]===Symbol.for("react.memo_cache_sentinel")?(n=N.jsx(he,{className:"h-4 w-4 opacity-60"}),t[2]=n):n=t[2],t[3]!==e?(r=N.jsx(UT,{tooltip:"Assist is disabled",selected:!1,onClick:e,children:n}),t[3]=e,t[4]=r):r=t[4],r}let i,a,l,c,d;return t[5]===Symbol.for("react.memo_cache_sentinel")?(i=N.jsx("b",{children:"Assist model:"}),t[5]=i):i=t[5],t[6]!==o?(a=N.jsxs(N.Fragment,{children:[i," ",o]}),t[6]=o,t[7]=a):a=t[7],t[8]!==s?(l=()=>s("ai"),t[8]=s,t[9]=l):l=t[9],t[10]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsx(he,{className:"h-4 w-4"}),t[10]=c):c=t[10],t[11]!==a||t[12]!==l?(d=N.jsx(UT,{tooltip:a,onClick:l,selected:!1,children:c}),t[11]=a,t[12]=l,t[13]=d):d=t[13],d},VT=q((e=>e(Mi).completion.copilot)),HT=q((e=>e(Mi).ai)),WT=()=>{const e=C.c(1);if("github"===se(VT)){let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=N.jsx(GT,{}),e[0]=t):t=e[0],t}return null},GT=()=>{const e=se(zl),t=null!==se(Fl),{handleClick:n}=Ll(),r=()=>n("ai"),o=e?"Ready":"Not connected",s=ae(zl),i=ae(Bl);return Oi((()=>{const e=Tl();let t=!0;return(async()=>{try{if(await e.initializePromise.catch((t=>{throw w.error("Copilot#checkConnection: Failed to initialize",t),e.close(),t})),!t)return;const n=await e.signedIn();if(!t)return;s(n),i(n?"signedIn":"signedOut")}catch(n){if(!t)return;w.warn("Copilot#checkConnection: Connection failed",n),s(!1),i("connectionError"),ee({title:"GitHub Copilot Connection Error",description:"Failed to connect to GitHub Copilot. Check settings and try again.",variant:"danger",action:N.jsx(J,{variant:"link",onClick:r,children:"Settings"})})}})(),()=>{t=!1}})),N.jsx(UT,{tooltip:N.jsxs(N.Fragment,{children:[N.jsx("b",{children:"GitHub Copilot:"})," ",o]}),selected:!1,onClick:r,children:N.jsx("span",{children:t?N.jsx(Di,{className:"h-4 w-4"}):N.jsx(BT,{className:An("h-4 w-4",!e&&"opacity-60")})})})},qT=e=>{const t=C.c(18),[n,r]=o.useState(0),s=se(at);let i,a,l,c;t[0]===Symbol.for("react.memo_cache_sentinel")?(i=()=>r(eM),a={delayMs:1e4,whenVisible:!0},t[0]=i,t[1]=a):(i=t[0],a=t[1]),El(i,a),t[2]!==s.state?(l=async()=>E()||s.state!==ct.OPEN?null:Ri(),t[2]=s.state,t[3]=l):l=t[3],t[4]!==s.state||t[5]!==n?(c=[n,s.state],t[4]=s.state,t[5]=n,t[6]=c):c=t[6];const{data:d}=jn(l,c);let u,h,f,p,m;return t[7]!==d?(u=d&&N.jsx(JT,{memory:d.memory,kernel:d.kernel,server:d.server}),t[7]=d,t[8]=u):u=t[8],t[9]!==d?(h=d&&N.jsx(XT,{cpu:d.cpu}),t[9]=d,t[10]=h):h=t[10],t[11]===Symbol.for("react.memo_cache_sentinel")?(f=N.jsxs("div",{className:"flex items-center",children:[N.jsx($T,{}),N.jsx(WT,{})]}),t[11]=f):f=t[11],t[12]!==s.state?(p=N.jsx(YT,{connection:s.state}),t[12]=s.state,t[13]=p):p=t[13],t[14]!==u||t[15]!==h||t[16]!==p?(m=N.jsxs("div",{className:"flex gap-2 items-center",children:[u,h,f,p]}),t[14]=u,t[15]=h,t[16]=p,t[17]=m):m=t[17],m},YT=e=>{const t=C.c(18),{connection:n}=e;let r,o,s,i,a,l,c;return t[0]!==n?(r=T(n.toLowerCase()),t[0]=n,t[1]=r):r=t[1],t[2]!==n?(o=n===ct.OPEN&&N.jsx(Vc,{className:"w-4 h-4"}),t[2]=n,t[3]=o):o=t[3],t[4]!==n?(s=n===ct.CLOSED&&N.jsx(Ul,{className:"w-4 h-4"}),t[4]=n,t[5]=s):s=t[5],t[6]!==n?(i=n===ct.CONNECTING&&N.jsx(Di,{size:"small"}),t[6]=n,t[7]=i):i=t[7],t[8]!==n?(a=n===ct.CLOSING&&N.jsx(Di,{className:"text-destructive",size:"small"}),t[8]=n,t[9]=a):a=t[9],t[10]!==o||t[11]!==s||t[12]!==i||t[13]!==a?(l=N.jsxs("div",{children:[o,s,i,a]}),t[10]=o,t[11]=s,t[12]=i,t[13]=a,t[14]=l):l=t[14],t[15]!==r||t[16]!==l?(c=N.jsx(it,{delayDuration:200,content:r,children:l}),t[15]=r,t[16]=l,t[17]=c):c=t[17],c},JT=e=>{const t=C.c(25),{memory:n,kernel:r,server:o}=e,{percent:s,total:i,used:a}=n;let l;t[0]!==s?(l=Math.round(s),t[0]=s,t[1]=l):l=t[1];const c=l;let d,u,h,f,p,m,g,y,b,x;return t[2]===Symbol.for("react.memo_cache_sentinel")?(d=N.jsx("b",{children:"computer memory:"}),t[2]=d):d=t[2],t[3]!==a?(u=QT(a),t[3]=a,t[4]=u):u=t[4],t[5]!==i?(h=QT(i),t[5]=i,t[6]=h):h=t[6],t[7]!==c||t[8]!==u||t[9]!==h?(f=N.jsxs("span",{children:[d," ",u," / ",h," GB (",c,"%)"]}),t[7]=c,t[8]=u,t[9]=h,t[10]=f):f=t[10],t[11]!==o?(p=(null==o?void 0:o.memory)&&N.jsxs("span",{children:[N.jsx("b",{children:"marimo server:"})," ",ZT(o.memory)]}),t[11]=o,t[12]=p):p=t[12],t[13]!==r?(m=(null==r?void 0:r.memory)&&N.jsxs("span",{children:[N.jsx("b",{children:"kernel:"})," ",ZT(r.memory)]}),t[13]=r,t[14]=m):m=t[14],t[15]!==f||t[16]!==p||t[17]!==m?(g=N.jsxs("div",{className:"flex flex-col gap-1",children:[f,p,m]}),t[15]=f,t[16]=p,t[17]=m,t[18]=g):g=t[18],t[19]===Symbol.for("react.memo_cache_sentinel")?(y=N.jsx(md,{className:"w-4 h-4"}),t[19]=y):y=t[19],t[20]!==c?(b=N.jsxs("div",{className:"flex items-center gap-1",children:[y,N.jsx(KT,{percent:c})]}),t[20]=c,t[21]=b):b=t[21],t[22]!==b||t[23]!==g?(x=N.jsx(it,{delayDuration:200,content:g,children:b}),t[22]=b,t[23]=g,t[24]=x):x=t[24],x},XT=e=>{const t=C.c(11),{cpu:n}=e,{percent:r}=n;let o;t[0]!==r?(o=Math.round(r),t[0]=r,t[1]=o):o=t[1];const s=o;let i,a,l,c,d;return t[2]===Symbol.for("react.memo_cache_sentinel")?(i=N.jsx("b",{children:"CPU:"}),t[2]=i):i=t[2],t[3]!==s?(a=N.jsxs("span",{children:[i," ",s,"%"]}),t[3]=s,t[4]=a):a=t[4],t[5]===Symbol.for("react.memo_cache_sentinel")?(l=N.jsx($l,{className:"w-4 h-4"}),t[5]=l):l=t[5],t[6]!==s?(c=N.jsxs("div",{className:"flex items-center gap-1",children:[l,N.jsx(KT,{percent:s})]}),t[6]=s,t[7]=c):c=t[7],t[8]!==a||t[9]!==c?(d=N.jsx(it,{delayDuration:200,content:a,children:c}),t[8]=a,t[9]=c,t[10]=d):d=t[10],d},KT=e=>{const t=C.c(2),{percent:n}=e,r=`${n}%`;let o;return t[0]!==r?(o=N.jsx("div",{className:"h-3 w-20 bg-[var(--slate-4)] rounded-lg overflow-hidden border",children:N.jsx("div",{className:"h-full bg-primary",style:{width:r}})}),t[0]=r,t[1]=o):o=t[1],o};function ZT(e){return e>1073741824?`${QT(e)} GB`:`${function(e){return new Intl.NumberFormat("en-US",{maximumFractionDigits:0}).format(e/1048576)}(e)} MB`}function QT(e){return new Intl.NumberFormat("en-US",{maximumFractionDigits:2}).format(e/1073741824)}function eM(e){return e+1}const tM=e=>se(ki)[e.capability]?e.children:null,nM=()=>{const e=C.c(56),{selectedPanel:t,isTerminalOpen:n}=Xu(),{openApplication:r,toggleTerminal:o}=Ku(),[s,i]=Re(),a=se(Pi),l=rM,c=Zu.find(oM);let d;fn(c,"Error panel not found"),e[0]!==o?(d=()=>{o()},e[0]=o,e[1]=d):d=e[1],Cl("global.toggleTerminal",d);const u=UT,h=c.tooltip,f=t===c.type,p=()=>r(c.type),m=l(c,a>0?"text-destructive":"");let g,y,b,x,v;e[2]!==a?(g=N.jsx("span",{className:"ml-1 font-mono mt-[0.125rem]",children:a}),e[2]=a,e[3]=g):g=e[3],e[4]!==u||e[5]!==c||e[6]!==f||e[7]!==p||e[8]!==m||e[9]!==g?(y=N.jsxs(u,{tooltip:h,selected:f,onClick:p,children:[m,g]}),e[4]=u,e[5]=c,e[6]=f,e[7]=p,e[8]=m,e[9]=g,e[10]=y):y=e[10],e[11]!==o?(b=()=>o(),e[11]=o,e[12]=b):b=e[12],e[13]===Symbol.for("react.memo_cache_sentinel")?(x=N.jsx($d,{className:"h-5 w-5"}),e[13]=x):x=e[13],e[14]!==n||e[15]!==b?(v=N.jsx(tM,{capability:"terminal",children:N.jsx(UT,{tooltip:"Open terminal",selected:n,onClick:b,children:x})}),e[14]=n,e[15]=b,e[16]=v):v=e[16];const w=s.runtime.auto_instantiate?"Disable autorun on startup":"Enable autorun on startup";let k,j,_;e[17]!==s||e[18]!==i?(k=async()=>{const e={...s,runtime:{...s.runtime,auto_instantiate:!s.runtime.auto_instantiate}};await S({config:e}).then((()=>i(e)))},e[17]=s,e[18]=i,e[19]=k):k=e[19],e[20]===Symbol.for("react.memo_cache_sentinel")?(j=N.jsx("span",{children:"on startup: "}),e[20]=j):j=e[20],e[21]!==s.runtime.auto_instantiate?(_=s.runtime.auto_instantiate?N.jsx(Kd,{size:14}):N.jsx(Xd,{size:14}),e[21]=s.runtime.auto_instantiate,e[22]=_):_=e[22];const I=s.runtime.auto_instantiate?"autorun":"lazy";let A,T,M,O;e[23]!==I?(A=N.jsx("span",{children:I}),e[23]=I,e[24]=A):A=e[24],e[25]!==_||e[26]!==A?(T=N.jsxs("div",{className:"font-prose text-sm flex items-center gap-1",children:[j,_,A]}),e[25]=_,e[26]=A,e[27]=T):T=e[27],e[28]!==w||e[29]!==k||e[30]!==T?(M=N.jsx(UT,{tooltip:w,selected:!1,onClick:k,children:T}),e[28]=w,e[29]=k,e[30]=T,e[31]=M):M=e[31],e[32]===Symbol.for("react.memo_cache_sentinel")?(O=N.jsx("div",{className:"border-r border-border h-6 mx-1"}),e[32]=O):O=e[32];const D="autorun"===s.runtime.on_cell_change?"Disable autorun":"Enable autorun";let R,P,L,z,F,B,U,$,V,H;return e[33]!==s||e[34]!==i?(R=async()=>{const e={...s,runtime:{...s.runtime,on_cell_change:"autorun"===s.runtime.on_cell_change?"lazy":"autorun"}};await S({config:e}).then((()=>i(e)))},e[33]=s,e[34]=i,e[35]=R):R=e[35],e[36]===Symbol.for("react.memo_cache_sentinel")?(P=N.jsx("span",{children:"on cell change: "}),e[36]=P):P=e[36],e[37]!==s.runtime.on_cell_change?(L=N.jsxs("div",{className:"font-prose text-sm flex items-center gap-1",children:[P,"autorun"===s.runtime.on_cell_change?N.jsx(Kd,{size:14}):N.jsx(Xd,{size:14}),N.jsx("span",{children:s.runtime.on_cell_change})]}),e[37]=s.runtime.on_cell_change,e[38]=L):L=e[38],e[39]!==D||e[40]!==R||e[41]!==L?(z=N.jsx(UT,{tooltip:D,selected:!1,onClick:R,children:L}),e[39]=D,e[40]=R,e[41]=L,e[42]=z):z=e[42],e[43]===Symbol.for("react.memo_cache_sentinel")?(F=N.jsx("div",{className:"border-r border-border h-6 mx-1"}),e[43]=F):F=e[43],e[44]!==s||e[45]!==i?(B=!E()&&N.jsx(UT,{tooltip:null,selected:!1,children:N.jsxs(cn,{children:[N.jsxs(nn,{className:"font-prose text-sm flex items-center gap-1",children:[N.jsx("span",{children:"on module change: "}),"off"===s.runtime.auto_reload&&N.jsx(Ul,{size:14}),"lazy"===s.runtime.auto_reload&&N.jsx(Xd,{size:14}),"autorun"===s.runtime.auto_reload&&N.jsx(Kd,{size:14}),N.jsx("span",{children:s.runtime.auto_reload}),N.jsx(Se,{size:14})]}),N.jsx(dn,{children:["off","lazy","autorun"].map((e=>N.jsxs(tn,{onClick:async()=>{const t={...s,runtime:{...s.runtime,auto_reload:e}};await S({config:t}).then((()=>i(t)))},children:["off"===e&&N.jsx(Ul,{size:14,className:"mr-2 text-muted-foreground"}),"lazy"===e&&N.jsx(Xd,{size:14,className:"mr-2 text-muted-foreground"}),"autorun"===e&&N.jsx(Kd,{size:14,className:"mr-2 text-muted-foreground"}),e]},e)))})]})}),e[44]=s,e[45]=i,e[46]=B):B=e[46],e[47]===Symbol.for("react.memo_cache_sentinel")?(U=N.jsx("div",{className:"mx-auto"}),e[47]=U):U=e[47],e[48]===Symbol.for("react.memo_cache_sentinel")?($=N.jsx(yf,{children:N.jsx(it,{content:N.jsx("div",{className:"w-[200px]",children:"Kiosk mode is enabled. This allows you to view the outputs of the cells without the ability to edit them."}),children:N.jsx("span",{className:"text-muted-foreground text-sm mr-4",children:"kiosk mode"})})}),V=N.jsx(qT,{}),e[48]=$,e[49]=V):($=e[48],V=e[49]),e[50]!==v||e[51]!==M||e[52]!==z||e[53]!==B||e[54]!==y?(H=N.jsxs("footer",{className:"h-10 py-2 bg-background flex items-center text-muted-foreground text-md pl-1 pr-4 border-t border-border select-none no-print text-sm shadow-[0_0_4px_1px_rgba(0,0,0,0.1)] z-50 print:hidden hide-on-fullscreen",children:[y,v,M,O,z,F,B,U,$,V]}),e[50]=v,e[51]=M,e[52]=z,e[53]=B,e[54]=y,e[55]=H):H=e[55],H};function rM(e,t){const{Icon:n}=e;return N.jsx(n,{className:An("h-5 w-5",t)})}function oM(e){return"errors"===e.type}const sM=e=>{const t=C.c(6),{children:n}=e,{openModal:r,closeModal:o}=ie();let s,i;return t[0]!==o||t[1]!==r?(s=()=>r(N.jsx(iM,{onClose:o})),t[0]=o,t[1]=r,t[2]=s):s=t[2],t[3]!==n||t[4]!==s?(i=N.jsx(Li,{onClick:s,children:n}),t[3]=n,t[4]=s,t[5]=i):i=t[5],i},iM=e=>{const t=C.c(9),{onClose:n}=e;let r,o,s,i,a,l,c;return t[0]!==n?(r=async e=>{e.preventDefault();const t=new FormData(e.target),r=t.get("rating"),o=t.get("message");fetch("https://marimo.io/api/feedback",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({rating:r,message:o})}),n(),ee({title:"Feedback sent!",description:"Thank you for your feedback!"})},t[0]=n,t[1]=r):r=t[1],t[2]===Symbol.for("react.memo_cache_sentinel")?(o=N.jsx(Te,{children:"Send Feedback"}),t[2]=o):o=t[2],t[3]===Symbol.for("react.memo_cache_sentinel")?(s=N.jsx("p",{className:"my-2 prose dark:prose-invert",children:"We want to hear from you — from minor bug reports to wishlist features and everything in between. Here are some ways you can get in touch:"}),t[3]=s):s=t[3],t[4]===Symbol.for("react.memo_cache_sentinel")?(i=N.jsxs("li",{className:"my-0",children:["Take our"," ",N.jsx("a",{href:Qe.feedbackForm,target:"_blank",rel:"noreferrer",className:"underline",children:"two-minute survey."})]}),t[4]=i):i=t[4],t[5]===Symbol.for("react.memo_cache_sentinel")?(a=N.jsxs("li",{className:"my-0",children:["File a"," ",N.jsx("a",{href:Qe.issuesPage,target:"_blank",rel:"noreferrer",className:"underline",children:"GitHub issue."})]}),t[5]=a):a=t[5],t[6]===Symbol.for("react.memo_cache_sentinel")?(l=N.jsxs(Ae,{children:[o,N.jsxs(et,{children:[s,N.jsxs("ul",{className:"list-disc ml-8 my-2 prose dark:prose-invert",children:[i,a,N.jsxs("li",{className:"my-0",children:["Chat with us on"," ",N.jsx("a",{href:Qe.discordLink,target:"_blank",rel:"noreferrer",className:"underline",children:"Discord."})]})]}),N.jsx("p",{className:"my-2 prose dark:prose-invert",children:"We're excited you're here as we build the future of Python data tooling. Thanks for being part of our community!"})]})]}),t[6]=l):l=t[6],t[7]!==r?(c=N.jsx(Ie,{className:"w-fit",children:N.jsx("form",{onSubmit:r,children:l})}),t[7]=r,t[8]=c):c=t[8],c},aM=()=>{const e=C.c(10),{selectedPanel:t}=Xu(),{openApplication:n}=Ku(),r=dM;let o,s,i,a,l,c;if(e[0]!==n||e[1]!==t){o="h-full pt-4 pb-1 px-1 flex flex-col items-start text-muted-foreground text-md select-none no-print text-sm z-50 dark:bg-background print:hidden hide-on-fullscreen",s=Zu.filter(uM).map((e=>N.jsx(cM,{tooltip:e.tooltip,selected:t===e.type,onClick:()=>n(e.type),children:r(e)},e.type))),e[0]=n,e[1]=t,e[2]=o,e[3]=s}else o=e[2],s=e[3];return e[4]===Symbol.for("react.memo_cache_sentinel")?(i=N.jsx(sM,{children:N.jsx(cM,{tooltip:"Send feedback!",selected:!1,children:N.jsx(gd,{className:"h-5 w-5"})})}),a=N.jsx("div",{className:"flex-1"}),l=N.jsx(lM,{}),e[4]=i,e[5]=a,e[6]=l):(i=e[4],a=e[5],l=e[6]),e[7]!==o||e[8]!==s?(c=N.jsxs("div",{className:o,children:[s,i,a,l]}),e[7]=o,e[8]=s,e[9]=c):c=e[9],c},lM=()=>{const e=C.c(9),t=se(zi);let n,r,o,s;return e[0]!==t?(n=t>0?N.jsxs("span",{children:[t," cell",t>1?"s":""," queued or running"]}):"No cells queued or running",e[0]=t,e[1]=n):n=e[1],e[2]!==t?(r=Array.from({length:t}).map(hM),e[2]=t,e[3]=r):r=e[3],e[4]!==r?(o=N.jsx("div",{className:"flex flex-col-reverse gap-[1px] overflow-hidden",children:r}),e[4]=r,e[5]=o):o=e[5],e[6]!==n||e[7]!==o?(s=N.jsx(it,{content:n,side:"right",delayDuration:200,children:o}),e[6]=n,e[7]=o,e[8]=s):s=e[8],s},cM=e=>{const t=C.c(17);let n,r,o,s,i;t[0]!==e?(({children:n,tooltip:i,selected:s,className:r,...o}=e),t[0]=e,t[1]=n,t[2]=r,t[3]=o,t[4]=s,t[5]=i):(n=t[1],r=t[2],o=t[3],s=t[4],i=t[5]);const a=!s&&"hover:bg-[var(--sage-3)]",l=s&&"bg-[var(--sage-4)]";let c,d,u;return t[6]!==r||t[7]!==a||t[8]!==l?(c=An("flex items-center p-2 text-sm mx-[1px] shadow-inset font-mono cursor-pointer rounded",a,l,r),t[6]=r,t[7]=a,t[8]=l,t[9]=c):c=t[9],t[10]!==n||t[11]!==o||t[12]!==c?(d=N.jsx("div",{className:c,...o,children:n}),t[10]=n,t[11]=o,t[12]=c,t[13]=d):d=t[13],t[14]!==d||t[15]!==i?(u=N.jsx(it,{content:i,side:"right",delayDuration:200,children:d}),t[14]=d,t[15]=i,t[16]=u):u=t[16],u};function dM(e,t){const{Icon:n}=e;return N.jsx(n,{className:An("h-5 w-5",t)})}function uM(e){return!e.hidden&&"sidebar"===e.position}function hM(e,t){return N.jsx("div",{className:"flex-shrink-0 h-1 w-2 bg-[var(--grass-6)] border border-[var(--grass-7)]"},t.toString())}pt.record(pt.tuple([pt.number(),pt.number()]));let fM=null;const pM=e=>{const t=C.c(15),{title:n,description:r,icon:o,action:s}=e;let i,a,l,c,d,h;return t[0]!==o?(i=o&&u.cloneElement(o,{className:"text-accent-foreground"}),t[0]=o,t[1]=i):i=t[1],t[2]!==n?(a=N.jsx("span",{className:"mt-1 text-accent-foreground",children:n}),t[2]=n,t[3]=a):a=t[3],t[4]!==i||t[5]!==a?(l=N.jsxs("div",{className:"flex flex-row gap-2 items-center",children:[i,a]}),t[4]=i,t[5]=a,t[6]=l):l=t[6],t[7]!==r?(c=N.jsx("span",{className:"text-muted-foreground text-sm",children:r}),t[7]=r,t[8]=c):c=t[8],t[9]!==s?(d=s&&N.jsx("div",{className:"mt-2",children:s}),t[9]=s,t[10]=d):d=t[10],t[11]!==l||t[12]!==c||t[13]!==d?(h=N.jsxs("div",{className:"mx-6 my-6 flex flex-col gap-2",children:[l,c,d]}),t[11]=l,t[12]=c,t[13]=d,t[14]=h):h=t[14],h},mM=()=>{const e=C.c(5),t=Fi();if(0===t.length){let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=N.jsx(pM,{title:"No errors!",icon:N.jsx(Cd,{})}),e[0]=t):t=e[0],t}let n,r;return e[1]!==t?(n=t.map(gM),e[1]=t,e[2]=n):n=e[2],e[3]!==n?(r=N.jsx("div",{className:"flex flex-col overflow-auto",children:n}),e[3]=n,e[4]=r):r=e[4],r};function gM(e){return N.jsxs("div",{children:[N.jsx("div",{className:"text-xs font-mono font-semibold bg-muted border-y px-2 py-1",children:N.jsx(Bi,{cellId:e.cellId})}),N.jsx("div",{className:"px-2",children:N.jsx(Ui,{errors:e.output.data,cellId:e.cellId},e.cellId)},e.cellId)]},e.cellId)}const yM=()=>{const e=C.c(6),{items:t}=se($i);let n,r;e[0]!==t?(r=xc(t),e[0]=t,e[1]=r):r=e[1],n=r;const o=n,{activeHeaderId:s}=vc(o);if(0===t.length){let t;return e[2]===Symbol.for("react.memo_cache_sentinel")?(t=N.jsx(pM,{title:"No outline",description:"Add markdown headings to your notebook to create an outline.",icon:N.jsx(Od,{})}),e[2]=t):t=e[2],t}let i;return e[3]!==s||e[4]!==t?(i=N.jsx(wc,{items:t,activeHeaderId:s}),e[3]=s,e[4]=t,e[5]=i):i=e[5],i};function bM(e){if("string"==typeof e||"number"==typeof e)return""+e;let t="";if(Array.isArray(e))for(let n,r=0;re;function kM(e,t=wM,n){const r=vM(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return xM(r),r}const SM=(e,t)=>{const n=Hi(e),r=(e,r=t)=>kM(n,e,r);return Object.assign(r,n),r};function CM(e,t){if(Object.is(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(const[n,r]of e)if(!Object.is(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(const r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}function EM(e,t){if(e=function(e){let t;for(;t=e.sourceEvent;)e=t;return e}(e),void 0===t&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,[(r=r.matrixTransform(t.getScreenCTM().inverse())).x,r.y]}if(t.getBoundingClientRect){var o=t.getBoundingClientRect();return[e.clientX-o.left-t.clientLeft,e.clientY-o.top-t.clientTop]}}return[e.pageX,e.pageY]}const NM={passive:!1},jM={capture:!0,passive:!1};function _M(e){e.stopImmediatePropagation()}function IM(e){e.preventDefault(),e.stopImmediatePropagation()}function AM(e){var t=e.document.documentElement,n=Ec(e).on("dragstart.drag",IM,jM);"onselectstart"in t?n.on("selectstart.drag",IM,jM):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function TM(e,t){var n=e.document.documentElement,r=Ec(e).on("dragstart.drag",null);t&&(r.on("click.drag",IM,jM),setTimeout((function(){r.on("click.drag",null)}),0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}const MM=e=>()=>e;function OM(e,{sourceEvent:t,subject:n,target:r,identifier:o,active:s,x:i,y:a,dx:l,dy:c,dispatch:d}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:o,enumerable:!0,configurable:!0},active:{value:s,enumerable:!0,configurable:!0},x:{value:i,enumerable:!0,configurable:!0},y:{value:a,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:c,enumerable:!0,configurable:!0},_:{value:d}})}function DM(e){return!e.ctrlKey&&!e.button}function RM(){return this.parentNode}function PM(e,t){return null==t?{x:e.x,y:e.y}:t}function LM(){return navigator.maxTouchPoints||"ontouchstart"in this}OM.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};const zM=e=>()=>e;function FM(e,{sourceEvent:t,target:n,transform:r,dispatch:o}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:o}})}function BM(e){e.stopImmediatePropagation()}function UM(e){e.preventDefault(),e.stopImmediatePropagation()}function $M(e){return!(e.ctrlKey&&"wheel"!==e.type||e.button)}function VM(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e).hasAttribute("viewBox")?[[(e=e.viewBox.baseVal).x,e.y],[e.x+e.width,e.y+e.height]]:[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]:[[0,0],[e.clientWidth,e.clientHeight]]}function HM(){return this.__zoom||Nc}function WM(e){return-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function GM(){return navigator.maxTouchPoints||"ontouchstart"in this}function qM(e,t,n){var r=e.invertX(t[0][0])-n[0][0],o=e.invertX(t[1][0])-n[1][0],s=e.invertY(t[0][1])-n[0][1],i=e.invertY(t[1][1])-n[1][1];return e.translate(o>r?(r+o)/2:Math.min(0,r)||Math.max(0,o),i>s?(s+i)/2:Math.min(0,s)||Math.max(0,i))}const YM=o.createContext(null),JM=YM.Provider,XM=e=>`Node type "${e}" not found. Using fallback type "default".`,KM=()=>"The React Flow parent container needs a width and a height to render the graph.",ZM=()=>"Only child nodes can use a parent extent.",QM=e=>`Marker type "${e}" doesn't exist.`,eO=(e,t)=>`Couldn't create edge for ${e?"target":"source"} handle id: "${e?t.targetHandle:t.sourceHandle}", edge id: ${t.id}.`,tO=()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",nO=e=>`Edge type "${e}" not found. Using fallback type "default".`,rO=e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,oO=(()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001")();function sO(e,t){const n=o.useContext(YM);if(null===n)throw new Error(oO);return kM(n,e,t)}const iO=()=>{const e=o.useContext(YM);if(null===e)throw new Error(oO);return o.useMemo((()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe,destroy:e.destroy})),[e])},aO=e=>e.userSelectionActive?"none":"all";function lO({position:e,children:t,className:n,style:r,...o}){const s=sO(aO),i=`${e}`.split("-");return u.createElement("div",{className:bM(["react-flow__panel",n,...i]),style:{...r,pointerEvents:s},...o},t)}function cO({proOptions:e,position:t="bottom-right"}){return(null==e?void 0:e.hideAttribution)?null:u.createElement(lO,{position:t,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://reactflow.dev/pro"},u.createElement("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution"},"React Flow"))}var dO=o.memo((({x:e,y:t,label:n,labelStyle:r={},labelShowBg:s=!0,labelBgStyle:i={},labelBgPadding:a=[2,4],labelBgBorderRadius:l=2,children:c,className:d,...h})=>{const f=o.useRef(null),[p,m]=o.useState({x:0,y:0,width:0,height:0}),g=bM(["react-flow__edge-textwrapper",d]);return o.useEffect((()=>{if(f.current){const e=f.current.getBBox();m({x:e.x,y:e.y,width:e.width,height:e.height})}}),[n]),void 0!==n&&n?u.createElement("g",{transform:`translate(${e-p.width/2} ${t-p.height/2})`,className:g,visibility:p.width?"visible":"hidden",...h},s&&u.createElement("rect",{width:p.width+2*a[0],x:-a[0],y:-a[1],height:p.height+2*a[1],className:"react-flow__edge-textbg",style:i,rx:l,ry:l}),u.createElement("text",{className:"react-flow__edge-text",y:p.height/2,dy:"0.3em",ref:f,style:r},n),c):null}));const uO=e=>({width:e.offsetWidth,height:e.offsetHeight}),hO=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),fO=(e={x:0,y:0},t)=>({x:hO(e.x,t[0][0],t[1][0]),y:hO(e.y,t[0][1],t[1][1])}),pO=(e,t,n)=>en?-hO(Math.abs(e-n),1,50)/50:0,mO=(e,t)=>[20*pO(e.x,35,t.width-35),20*pO(e.y,35,t.height-35)],gO=e=>{var t;return(null==(t=e.getRootNode)?void 0:t.call(e))||(null==window?void 0:window.document)},yO=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),bO=e=>({...e.positionAbsolute||{x:0,y:0},width:e.width||0,height:e.height||0}),xO=(e,t)=>{const n=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),r=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(n*r)},vO=e=>!isNaN(e)&&isFinite(e),wO=Symbol.for("internals"),kO=["Enter"," ","Escape"];function SO(e){var t,n;const r=(e=>"nativeEvent"in e)(e)?e.nativeEvent:e,o=(null==(n=null==(t=r.composedPath)?void 0:t.call(r))?void 0:n[0])||e.target;return["INPUT","SELECT","TEXTAREA"].includes(null==o?void 0:o.nodeName)||(null==o?void 0:o.hasAttribute("contenteditable"))||!!(null==o?void 0:o.closest(".nokey"))}const CO=e=>"clientX"in e,EO=(e,t)=>{var n,r;const o=CO(e),s=o?e.clientX:null==(n=e.touches)?void 0:n[0].clientX,i=o?e.clientY:null==(r=e.touches)?void 0:r[0].clientY;return{x:s-((null==t?void 0:t.left)??0),y:i-((null==t?void 0:t.top)??0)}},NO=()=>{var e;return"undefined"!=typeof navigator&&(null==(e=null==navigator?void 0:navigator.userAgent)?void 0:e.indexOf("Mac"))>=0},jO=({id:e,path:t,labelX:n,labelY:r,label:o,labelStyle:s,labelShowBg:i,labelBgStyle:a,labelBgPadding:l,labelBgBorderRadius:c,style:d,markerEnd:h,markerStart:f,interactionWidth:p=20})=>u.createElement(u.Fragment,null,u.createElement("path",{id:e,style:d,d:t,fill:"none",className:"react-flow__edge-path",markerEnd:h,markerStart:f}),p&&u.createElement("path",{d:t,fill:"none",strokeOpacity:0,strokeWidth:p,className:"react-flow__edge-interaction"}),o&&vO(n)&&vO(r)?u.createElement(dO,{x:n,y:r,label:o,labelStyle:s,labelShowBg:i,labelBgStyle:a,labelBgPadding:l,labelBgBorderRadius:c}):null);function _O(e,t,n){return void 0===n?n:r=>{const o=t().edges.find((t=>t.id===e));o&&n(r,{...o})}}function IO({sourceX:e,sourceY:t,targetX:n,targetY:r}){const o=Math.abs(n-e)/2,s=n{const[y,b,x]=HO({sourceX:e,sourceY:t,sourcePosition:o,targetX:n,targetY:r,targetPosition:s});return u.createElement(jO,{path:y,labelX:b,labelY:x,label:i,labelStyle:a,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:h,style:f,markerEnd:p,markerStart:m,interactionWidth:g})}));WO.displayName="SimpleBezierEdge";const GO={[UO.Left]:{x:-1,y:0},[UO.Right]:{x:1,y:0},[UO.Top]:{x:0,y:-1},[UO.Bottom]:{x:0,y:1}},qO=(e,t)=>Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2));function YO({source:e,sourcePosition:t=UO.Bottom,target:n,targetPosition:r=UO.Top,center:o,offset:s}){const i=GO[t],a=GO[r],l={x:e.x+i.x*s,y:e.y+i.y*s},c={x:n.x+a.x*s,y:n.y+a.y*s},d=(({source:e,sourcePosition:t=UO.Bottom,target:n})=>t===UO.Left||t===UO.Right?e.xe[u]?-1:1)*r:y[u]=(c[u]>n[u]?-1:1)*r}}if(t!==r){const e="x"===u?"y":"x",t=i[u]===a[e],n=l[e]>c[e],r=l[e]=Math.max(Math.abs(b.y-m[0].y),Math.abs(x.y-m[0].y))?(f=(b.x+x.x)/2,p=m[0].y):(f=m[0].x,p=(b.y+x.y)/2)}return[[e,{x:l.x+g.x,y:l.y+g.y},...m,{x:c.x+y.x,y:c.y+y.y},n],f,p,v,w]}function JO({sourceX:e,sourceY:t,sourcePosition:n=UO.Bottom,targetX:r,targetY:o,targetPosition:s=UO.Top,borderRadius:i=5,centerX:a,centerY:l,offset:c=20}){const[d,u,h,f,p]=YO({source:{x:e,y:t},sourcePosition:n,target:{x:r,y:o},targetPosition:s,center:{x:a,y:l},offset:c});return[d.reduce(((e,t,n)=>{let r="";return r=n>0&&n{const[b,x,v]=JO({sourceX:e,sourceY:t,sourcePosition:h,targetX:n,targetY:r,targetPosition:f,borderRadius:null==g?void 0:g.borderRadius,offset:null==g?void 0:g.offset});return u.createElement(jO,{path:b,labelX:x,labelY:v,label:o,labelStyle:s,labelShowBg:i,labelBgStyle:a,labelBgPadding:l,labelBgBorderRadius:c,style:d,markerEnd:p,markerStart:m,interactionWidth:y})}));XO.displayName="SmoothStepEdge";const KO=o.memo((e=>{var t;return u.createElement(XO,{...e,pathOptions:o.useMemo((()=>{var t;return{borderRadius:0,offset:null==(t=e.pathOptions)?void 0:t.offset}}),[null==(t=e.pathOptions)?void 0:t.offset])})}));KO.displayName="StepEdge";const ZO=o.memo((({sourceX:e,sourceY:t,targetX:n,targetY:r,label:o,labelStyle:s,labelShowBg:i,labelBgStyle:a,labelBgPadding:l,labelBgBorderRadius:c,style:d,markerEnd:h,markerStart:f,interactionWidth:p})=>{const[m,g,y]=function({sourceX:e,sourceY:t,targetX:n,targetY:r}){const[o,s,i,a]=IO({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,o,s,i,a]}({sourceX:e,sourceY:t,targetX:n,targetY:r});return u.createElement(jO,{path:m,labelX:g,labelY:y,label:o,labelStyle:s,labelShowBg:i,labelBgStyle:a,labelBgPadding:l,labelBgBorderRadius:c,style:d,markerEnd:h,markerStart:f,interactionWidth:p})}));function QO(e,t){return e>=0?.5*e:25*t*Math.sqrt(-e)}function eD({pos:e,x1:t,y1:n,x2:r,y2:o,c:s}){switch(e){case UO.Left:return[t-QO(t-r,s),n];case UO.Right:return[t+QO(r-t,s),n];case UO.Top:return[t,n-QO(n-o,s)];case UO.Bottom:return[t,n+QO(o-n,s)]}}function tD({sourceX:e,sourceY:t,sourcePosition:n=UO.Bottom,targetX:r,targetY:o,targetPosition:s=UO.Top,curvature:i=.25}){const[a,l]=eD({pos:n,x1:e,y1:t,x2:r,y2:o,c:i}),[c,d]=eD({pos:s,x1:r,y1:o,x2:e,y2:t,c:i}),[u,h,f,p]=AO({sourceX:e,sourceY:t,targetX:r,targetY:o,sourceControlX:a,sourceControlY:l,targetControlX:c,targetControlY:d});return[`M${e},${t} C${a},${l} ${c},${d} ${r},${o}`,u,h,f,p]}ZO.displayName="StraightEdge";const nD=o.memo((({sourceX:e,sourceY:t,targetX:n,targetY:r,sourcePosition:o=UO.Bottom,targetPosition:s=UO.Top,label:i,labelStyle:a,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:h,style:f,markerEnd:p,markerStart:m,pathOptions:g,interactionWidth:y})=>{const[b,x,v]=tD({sourceX:e,sourceY:t,sourcePosition:o,targetX:n,targetY:r,targetPosition:s,curvature:null==g?void 0:g.curvature});return u.createElement(jO,{path:b,labelX:x,labelY:v,label:i,labelStyle:a,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:h,style:f,markerEnd:p,markerStart:m,interactionWidth:y})}));nD.displayName="BezierEdge";const rD=o.createContext(null),oD=rD.Provider;rD.Consumer;const sD=({source:e,sourceHandle:t,target:n,targetHandle:r})=>`reactflow__edge-${e}${t||""}-${n}${r||""}`,iD=(e,t)=>{if(void 0===e)return"";if("string"==typeof e)return e;return`${t?`${t}__`:""}${Object.keys(e).sort().map((t=>`${t}=${e[t]}`)).join("&")}`},aD=({x:e,y:t},[n,r,o],s,[i,a])=>{const l={x:(e-n)/o,y:(t-r)/o};return s?{x:i*Math.round(l.x/i),y:a*Math.round(l.y/a)}:l},lD=({x:e,y:t},[n,r,o])=>({x:e*o+n,y:t*o+r}),cD=(e,t=[0,0])=>{if(!e)return{x:0,y:0,positionAbsolute:{x:0,y:0}};const n=(e.width??0)*t[0],r=(e.height??0)*t[1],o={x:e.position.x-n,y:e.position.y-r};return{...o,positionAbsolute:e.positionAbsolute?{x:e.positionAbsolute.x-n,y:e.positionAbsolute.y-r}:o}},dD=(e,t=[0,0])=>{if(0===e.length)return{x:0,y:0,width:0,height:0};return(({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}))(e.reduce(((e,n)=>{const{x:r,y:o}=cD(n,t).positionAbsolute;return s=e,i=yO({x:r,y:o,width:n.width||0,height:n.height||0}),{x:Math.min(s.x,i.x),y:Math.min(s.y,i.y),x2:Math.max(s.x2,i.x2),y2:Math.max(s.y2,i.y2)};var s,i}),{x:1/0,y:1/0,x2:-1/0,y2:-1/0}))},uD=(e,t,[n,r,o]=[0,0,1],s=!1,i=!1,a=[0,0])=>{const l={x:(t.x-n)/o,y:(t.y-r)/o,width:t.width/o,height:t.height/o},c=[];return e.forEach((e=>{const{width:t,height:n,selectable:r=!0,hidden:o=!1}=e;if(i&&!r||o)return!1;const{positionAbsolute:d}=cD(e,a),u={x:d.x,y:d.y,width:t||0,height:n||0},h=xO(l,u);(void 0===t||void 0===n||null===t||null===n||s&&h>0||h>=(t||0)*(n||0)||e.dragging)&&c.push(e)})),c},hD=(e,t)=>{const n=e.map((e=>e.id));return t.filter((e=>n.includes(e.source)||n.includes(e.target)))},fD=(e,t,n,r,o,s=.1)=>{const i=t/(e.width*(1+s)),a=n/(e.height*(1+s)),l=Math.min(i,a),c=hO(l,r,o);return{x:t/2-(e.x+e.width/2)*c,y:n/2-(e.y+e.height/2)*c,zoom:c}},pD=(e,t=0)=>e.transition().duration(t);function mD(e,t,n,r){return(t[n]||[]).reduce(((t,o)=>{var s,i;return`${e.id}-${o.id}-${n}`!==r&&t.push({id:o.id||null,type:n,nodeId:e.id,x:((null==(s=e.positionAbsolute)?void 0:s.x)??0)+o.x+o.width/2,y:((null==(i=e.positionAbsolute)?void 0:i.y)??0)+o.y+o.height/2}),t}),[])}const gD={source:null,target:null,sourceHandle:null,targetHandle:null},yD=()=>({handleDomNode:null,isValid:!1,connection:gD,endHandle:null});function bD(e,t,n,r,o,s,i){const a="target"===o,l=i.querySelector(`.react-flow__handle[data-id="${null==e?void 0:e.nodeId}-${null==e?void 0:e.id}-${null==e?void 0:e.type}"]`),c={...yD(),handleDomNode:l};if(l){const e=xD(void 0,l),o=l.getAttribute("data-nodeid"),i=l.getAttribute("data-handleid"),d=l.classList.contains("connectable"),u=l.classList.contains("connectableend"),h={source:a?o:n,sourceHandle:a?i:r,target:a?n:o,targetHandle:a?r:i};c.connection=h;d&&u&&(t===TO.Strict?a&&"source"===e||!a&&"target"===e:o!==n||i!==r)&&(c.endHandle={nodeId:o,handleId:i,type:e},c.isValid=s(h))}return c}function xD(e,t){return e||((null==t?void 0:t.classList.contains("target"))?"target":(null==t?void 0:t.classList.contains("source"))?"source":null)}function vD(e){null==e||e.classList.remove("valid","connecting","react-flow__handle-valid","react-flow__handle-connecting")}function wD(e,t){let n=null;return t?n="valid":e&&!t&&(n="invalid"),n}function kD({event:e,handleId:t,nodeId:n,onConnect:r,isTarget:o,getState:s,setState:i,isValidConnection:a,edgeUpdaterType:l,onReconnectEnd:c}){const d=gO(e.target),{connectionMode:u,domNode:h,autoPanOnConnect:f,connectionRadius:p,onConnectStart:m,panBy:g,getNodes:y,cancelConnection:b}=s();let x,v=0;const{x:w,y:k}=EO(e),S=null==d?void 0:d.elementFromPoint(w,k),C=xD(l,S),E=null==h?void 0:h.getBoundingClientRect();if(!E||!C)return;let N,j=EO(e,E),_=!1,I=null,A=!1,T=null;const M=function({nodes:e,nodeId:t,handleId:n,handleType:r}){return e.reduce(((e,o)=>{if(o[wO]){const{handleBounds:s}=o[wO];let i=[],a=[];s&&(i=mD(o,s,"source",`${t}-${n}-${r}`),a=mD(o,s,"target",`${t}-${n}-${r}`)),e.push(...i,...a)}return e}),[])}({nodes:y(),nodeId:n,handleId:t,handleType:C}),O=()=>{if(!f)return;const[e,t]=mO(j,E);g({x:e,y:t}),v=requestAnimationFrame(O)};function D(e){const{transform:r}=s();j=EO(e,E);const{handle:l,validHandleResult:c}=function(e,t,n,r,o,s){const{x:i,y:a}=EO(e),l=t.elementsFromPoint(i,a).find((e=>e.classList.contains("react-flow__handle")));if(l){const e=l.getAttribute("data-nodeid");if(e){const t=xD(void 0,l),r=l.getAttribute("data-handleid"),i=s({nodeId:e,id:r,type:t});if(i){const s=o.find((n=>n.nodeId===e&&n.type===t&&n.id===r));return{handle:{id:r,type:t,nodeId:e,x:(null==s?void 0:s.x)||n.x,y:(null==s?void 0:s.y)||n.y},validHandleResult:i}}}}let c=[],d=1/0;if(o.forEach((e=>{const t=Math.sqrt((e.x-n.x)**2+(e.y-n.y)**2);if(t<=r){const n=s(e);t<=d&&(te.isValid)),h=c.some((({handle:e})=>"target"===e.type));return c.find((({handle:e,validHandleResult:t})=>h?"target"===e.type:!u||t.isValid))||c[0]}(e,d,aD(j,r,!1,[1,1]),p,M,(e=>bD(e,u,n,t,o?"target":"source",a,d)));if(x=l,_||(O(),_=!0),T=c.handleDomNode,I=c.connection,A=c.isValid,i({connectionPosition:x&&A?lD({x:x.x,y:x.y},r):j,connectionStatus:wD(!!x,A),connectionEndHandle:c.endHandle}),!x&&!A&&!T)return vD(N);I.source!==I.target&&T&&(vD(N),N=T,T.classList.add("connecting","react-flow__handle-connecting"),T.classList.toggle("valid",A),T.classList.toggle("react-flow__handle-valid",A))}function R(e){var t,n;(x||T)&&I&&A&&(null==r||r(I)),null==(n=(t=s()).onConnectEnd)||n.call(t,e),l&&(null==c||c(e)),vD(N),b(),cancelAnimationFrame(v),_=!1,A=!1,I=null,T=null,d.removeEventListener("mousemove",D),d.removeEventListener("mouseup",R),d.removeEventListener("touchmove",D),d.removeEventListener("touchend",R)}i({connectionPosition:j,connectionStatus:null,connectionNodeId:n,connectionHandleId:t,connectionHandleType:C,connectionStartHandle:{nodeId:n,handleId:t,type:C},connectionEndHandle:null}),null==m||m(e,{nodeId:n,handleId:t,handleType:C}),d.addEventListener("mousemove",D),d.addEventListener("mouseup",R),d.addEventListener("touchmove",D),d.addEventListener("touchend",R)}const SD=()=>!0,CD=e=>({connectionStartHandle:e.connectionStartHandle,connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName}),ED=o.forwardRef((({type:e="source",position:t=UO.Top,isValidConnection:n,isConnectable:r=!0,isConnectableStart:s=!0,isConnectableEnd:i=!0,id:a,onConnect:l,children:c,className:d,onMouseDown:h,onTouchStart:f,...p},m)=>{var g,y;const b=a||null,x="target"===e,v=iO(),w=o.useContext(rD),{connectOnClick:k,noPanClassName:S}=sO(CD,CM),{connecting:C,clickConnecting:E}=sO(((e,t,n)=>r=>{const{connectionStartHandle:o,connectionEndHandle:s,connectionClickStartHandle:i}=r;return{connecting:(null==o?void 0:o.nodeId)===e&&(null==o?void 0:o.handleId)===t&&(null==o?void 0:o.type)===n||(null==s?void 0:s.nodeId)===e&&(null==s?void 0:s.handleId)===t&&(null==s?void 0:s.type)===n,clickConnecting:(null==i?void 0:i.nodeId)===e&&(null==i?void 0:i.handleId)===t&&(null==i?void 0:i.type)===n}})(w,b,e),CM);w||null==(y=(g=v.getState()).onError)||y.call(g,"010",tO());const N=e=>{const{defaultEdgeOptions:t,onConnect:n,hasDefaultEdges:r}=v.getState(),o={...t,...e};if(r){const{edges:e,setEdges:t}=v.getState();t(((e,t)=>{if(!e.source||!e.target)return t;let n;var r;return n="id"in(r=e)&&"source"in r&&"target"in r?{...e}:{...e,id:sD(e)},((e,t)=>t.some((t=>!(t.source!==e.source||t.target!==e.target||t.sourceHandle!==e.sourceHandle&&(t.sourceHandle||e.sourceHandle)||t.targetHandle!==e.targetHandle&&(t.targetHandle||e.targetHandle)))))(n,t)?t:t.concat(n)})(o,e))}null==n||n(o),null==l||l(o)},j=e=>{if(!w)return;const t=CO(e);s&&(t&&0===e.button||!t)&&kD({event:e,handleId:b,nodeId:w,onConnect:N,isTarget:x,getState:v.getState,setState:v.setState,isValidConnection:n||v.getState().isValidConnection||SD}),t?null==h||h(e):null==f||f(e)};return u.createElement("div",{"data-handleid":b,"data-nodeid":w,"data-handlepos":t,"data-id":`${w}-${b}-${e}`,className:bM(["react-flow__handle",`react-flow__handle-${t}`,"nodrag",S,d,{source:!x,target:x,connectable:r,connectablestart:s,connectableend:i,connecting:E,connectionindicator:r&&(s&&!C||i&&C)}]),onMouseDown:j,onTouchStart:j,onClick:k?t=>{const{onClickConnectStart:r,onClickConnectEnd:o,connectionClickStartHandle:i,connectionMode:a,isValidConnection:l}=v.getState();if(!w||!i&&!s)return;if(!i)return null==r||r(t,{nodeId:w,handleId:b,handleType:e}),void v.setState({connectionClickStartHandle:{nodeId:w,type:e,handleId:b}});const c=gO(t.target),d=n||l||SD,{connection:u,isValid:h}=bD({nodeId:w,id:b,type:e},a,i.nodeId,i.handleId||null,i.type,d,c);h&&N(u),null==o||o(t),v.setState({connectionClickStartHandle:null})}:void 0,ref:m,...p},c)}));ED.displayName="Handle";var ND=o.memo(ED);const jD=({data:e,isConnectable:t,targetPosition:n=UO.Top,sourcePosition:r=UO.Bottom})=>u.createElement(u.Fragment,null,u.createElement(ND,{type:"target",position:n,isConnectable:t}),null==e?void 0:e.label,u.createElement(ND,{type:"source",position:r,isConnectable:t}));jD.displayName="DefaultNode";var _D=o.memo(jD);const ID=({data:e,isConnectable:t,sourcePosition:n=UO.Bottom})=>u.createElement(u.Fragment,null,null==e?void 0:e.label,u.createElement(ND,{type:"source",position:n,isConnectable:t}));ID.displayName="InputNode";var AD=o.memo(ID);const TD=({data:e,isConnectable:t,targetPosition:n=UO.Top})=>u.createElement(u.Fragment,null,u.createElement(ND,{type:"target",position:n,isConnectable:t}),null==e?void 0:e.label);TD.displayName="OutputNode";var MD=o.memo(TD);const OD=()=>null;OD.displayName="GroupNode";const DD=e=>({selectedNodes:e.getNodes().filter((e=>e.selected)),selectedEdges:e.edges.filter((e=>e.selected)).map((e=>({...e})))}),RD=e=>e.id;function PD(e,t){return CM(e.selectedNodes.map(RD),t.selectedNodes.map(RD))&&CM(e.selectedEdges.map(RD),t.selectedEdges.map(RD))}const LD=o.memo((({onSelectionChange:e})=>{const t=iO(),{selectedNodes:n,selectedEdges:r}=sO(DD,PD);return o.useEffect((()=>{const o={nodes:n,edges:r};null==e||e(o),t.getState().onSelectionChange.forEach((e=>e(o)))}),[n,r,e]),null}));LD.displayName="SelectionListener";const zD=e=>!!e.onSelectionChange;function FD({onSelectionChange:e}){const t=sO(zD);return e||t?u.createElement(LD,{onSelectionChange:e}):null}const BD=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset});function UD(e,t){o.useEffect((()=>{void 0!==e&&t(e)}),[e])}function $D(e,t,n){o.useEffect((()=>{void 0!==t&&n({[e]:t})}),[t])}const VD=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:s,onConnectStart:i,onConnectEnd:a,onClickConnectStart:l,onClickConnectEnd:c,nodesDraggable:d,nodesConnectable:u,nodesFocusable:h,edgesFocusable:f,edgesUpdatable:p,elevateNodesOnSelect:m,minZoom:g,maxZoom:y,nodeExtent:b,onNodesChange:x,onEdgesChange:v,elementsSelectable:w,connectionMode:k,snapGrid:S,snapToGrid:C,translateExtent:E,connectOnClick:N,defaultEdgeOptions:j,fitView:_,fitViewOptions:I,onNodesDelete:A,onEdgesDelete:T,onNodeDrag:M,onNodeDragStart:O,onNodeDragStop:D,onSelectionDrag:R,onSelectionDragStart:P,onSelectionDragStop:L,noPanClassName:z,nodeOrigin:F,rfId:B,autoPanOnConnect:U,autoPanOnNodeDrag:$,onError:V,connectionRadius:H,isValidConnection:W,nodeDragThreshold:G})=>{const{setNodes:q,setEdges:Y,setDefaultNodesAndEdges:J,setMinZoom:X,setMaxZoom:K,setTranslateExtent:Z,setNodeExtent:Q,reset:ee}=sO(BD,CM),te=iO();return o.useEffect((()=>{const e=null==r?void 0:r.map((e=>({...e,...j})));return J(n,e),()=>{ee()}}),[]),$D("defaultEdgeOptions",j,te.setState),$D("connectionMode",k,te.setState),$D("onConnect",s,te.setState),$D("onConnectStart",i,te.setState),$D("onConnectEnd",a,te.setState),$D("onClickConnectStart",l,te.setState),$D("onClickConnectEnd",c,te.setState),$D("nodesDraggable",d,te.setState),$D("nodesConnectable",u,te.setState),$D("nodesFocusable",h,te.setState),$D("edgesFocusable",f,te.setState),$D("edgesUpdatable",p,te.setState),$D("elementsSelectable",w,te.setState),$D("elevateNodesOnSelect",m,te.setState),$D("snapToGrid",C,te.setState),$D("snapGrid",S,te.setState),$D("onNodesChange",x,te.setState),$D("onEdgesChange",v,te.setState),$D("connectOnClick",N,te.setState),$D("fitViewOnInit",_,te.setState),$D("fitViewOnInitOptions",I,te.setState),$D("onNodesDelete",A,te.setState),$D("onEdgesDelete",T,te.setState),$D("onNodeDrag",M,te.setState),$D("onNodeDragStart",O,te.setState),$D("onNodeDragStop",D,te.setState),$D("onSelectionDrag",R,te.setState),$D("onSelectionDragStart",P,te.setState),$D("onSelectionDragStop",L,te.setState),$D("noPanClassName",z,te.setState),$D("nodeOrigin",F,te.setState),$D("rfId",B,te.setState),$D("autoPanOnConnect",U,te.setState),$D("autoPanOnNodeDrag",$,te.setState),$D("onError",V,te.setState),$D("connectionRadius",H,te.setState),$D("isValidConnection",W,te.setState),$D("nodeDragThreshold",G,te.setState),UD(e,q),UD(t,Y),UD(g,X),UD(y,K),UD(E,Z),UD(b,Q),null},HD={display:"none"},WD={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},GD="react-flow__node-desc",qD="react-flow__edge-desc",YD=e=>e.ariaLiveMessage;function JD({rfId:e}){const t=sO(YD);return u.createElement("div",{id:`react-flow__aria-live-${e}`,"aria-live":"assertive","aria-atomic":"true",style:WD},t)}function XD({rfId:e,disableKeyboardA11y:t}){return u.createElement(u.Fragment,null,u.createElement("div",{id:`${GD}-${e}`,style:HD},"Press enter or space to select a node.",!t&&"You can then use the arrow keys to move the node around."," Press delete to remove it and escape to cancel."," "),u.createElement("div",{id:`${qD}-${e}`,style:HD},"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel."),!t&&u.createElement(JD,{rfId:e}))}var KD=(e=null,t={actInsideInputWithModifier:!0})=>{const[n,r]=o.useState(!1),s=o.useRef(!1),i=o.useRef(new Set([])),[a,l]=o.useMemo((()=>{if(null!==e){const t=(Array.isArray(e)?e:[e]).filter((e=>"string"==typeof e)).map((e=>e.split("+"))),n=t.reduce(((e,t)=>e.concat(...t)),[]);return[t,n]}return[[],[]]}),[e]);return o.useEffect((()=>{const n="undefined"!=typeof document?document:null,o=(null==t?void 0:t.target)||n;if(null!==e){const e=e=>{s.current=e.ctrlKey||e.metaKey||e.shiftKey;if((!s.current||s.current&&!t.actInsideInputWithModifier)&&SO(e))return!1;const n=QD(e.code,l);i.current.add(e[n]),ZD(a,i.current,!1)&&(e.preventDefault(),r(!0))},n=e=>{if((!s.current||s.current&&!t.actInsideInputWithModifier)&&SO(e))return!1;const n=QD(e.code,l);ZD(a,i.current,!0)?(r(!1),i.current.clear()):i.current.delete(e[n]),"Meta"===e.key&&i.current.clear(),s.current=!1},c=()=>{i.current.clear(),r(!1)};return null==o||o.addEventListener("keydown",e),null==o||o.addEventListener("keyup",n),window.addEventListener("blur",c),()=>{null==o||o.removeEventListener("keydown",e),null==o||o.removeEventListener("keyup",n),window.removeEventListener("blur",c)}}}),[e,r]),n};function ZD(e,t,n){return e.filter((e=>n||e.length===t.size)).some((e=>e.every((e=>t.has(e)))))}function QD(e,t){return t.includes(e)?"code":"key"}function eR(e,t,n,r){var o,s;const i=e.parentNode||e.parentId;if(!i)return n;const a=t.get(i),l=cD(a,r);return eR(a,t,{x:(n.x??0)+l.x,y:(n.y??0)+l.y,z:((null==(o=a[wO])?void 0:o.z)??0)>(n.z??0)?(null==(s=a[wO])?void 0:s.z)??0:n.z??0},r)}function tR(e,t,n){e.forEach((r=>{var o;const s=r.parentNode||r.parentId;if(s&&!e.has(s))throw new Error(`Parent node ${s} not found`);if(s||(null==n?void 0:n[r.id])){const{x:s,y:i,z:a}=eR(r,e,{...r.position,z:(null==(o=r[wO])?void 0:o.z)??0},t);r.positionAbsolute={x:s,y:i},r[wO].z=a,(null==n?void 0:n[r.id])&&(r[wO].isParent=!0)}}))}function nR(e,t,n,r){const o=new Map,s={},i=r?1e3:0;return e.forEach((e=>{var n;const r=(vO(e.zIndex)?e.zIndex:0)+(e.selected?i:0),a=t.get(e.id),l={...e,positionAbsolute:{x:e.position.x,y:e.position.y}},c=e.parentNode||e.parentId;c&&(s[c]=!0);const d=(null==a?void 0:a.type)&&(null==a?void 0:a.type)!==e.type;Object.defineProperty(l,wO,{enumerable:!1,value:{handleBounds:d||null==(n=null==a?void 0:a[wO])?void 0:n.handleBounds,z:r}}),o.set(e.id,l)})),tR(o,n,s),o}function rR(e,t={}){const{getNodes:n,width:r,height:o,minZoom:s,maxZoom:i,d3Zoom:a,d3Selection:l,fitViewOnInitDone:c,fitViewOnInit:d,nodeOrigin:u}=e(),h=t.initial&&!c&&d;if(a&&l&&(h||!t.initial)){const e=n().filter((e=>{var n;const r=t.includeHiddenNodes?e.width&&e.height:!e.hidden;return(null==(n=t.nodes)?void 0:n.length)?r&&t.nodes.some((t=>t.id===e.id)):r})),c=e.every((e=>e.width&&e.height));if(e.length>0&&c){const n=dD(e,u),{x:c,y:d,zoom:h}=fD(n,r,o,t.minZoom??s,t.maxZoom??i,t.padding??.1),f=Nc.translate(c,d).scale(h);return"number"==typeof t.duration&&t.duration>0?a.transform(pD(l,t.duration),f):a.transform(l,f),!0}}return!1}function oR(e,t){return e.forEach((e=>{const n=t.get(e.id);n&&t.set(n.id,{...n,[wO]:n[wO],selected:e.selected})})),new Map(t)}function sR(e,t){return t.map((t=>{const n=e.find((e=>e.id===t.id));return n&&(t.selected=n.selected),t}))}function iR({changedNodes:e,changedEdges:t,get:n,set:r}){const{nodeInternals:o,edges:s,onNodesChange:i,onEdgesChange:a,hasDefaultNodes:l,hasDefaultEdges:c}=n();(null==e?void 0:e.length)&&(l&&r({nodeInternals:oR(e,o)}),null==i||i(e)),(null==t?void 0:t.length)&&(c&&r({edges:sR(t,s)}),null==a||a(t))}const aR=()=>{},lR={zoomIn:aR,zoomOut:aR,zoomTo:aR,getZoom:()=>1,setViewport:aR,getViewport:()=>({x:0,y:0,zoom:1}),fitView:()=>!1,setCenter:aR,fitBounds:aR,project:e=>e,screenToFlowPosition:e=>e,flowToScreenPosition:e=>e,viewportInitialized:!1},cR=e=>({d3Zoom:e.d3Zoom,d3Selection:e.d3Selection});function dR(){const e=(()=>{const e=iO(),{d3Zoom:t,d3Selection:n}=sO(cR,CM),r=o.useMemo((()=>n&&t?{zoomIn:e=>t.scaleBy(pD(n,null==e?void 0:e.duration),1.2),zoomOut:e=>t.scaleBy(pD(n,null==e?void 0:e.duration),1/1.2),zoomTo:(e,r)=>t.scaleTo(pD(n,null==r?void 0:r.duration),e),getZoom:()=>e.getState().transform[2],setViewport:(r,o)=>{const[s,i,a]=e.getState().transform,l=Nc.translate(r.x??s,r.y??i).scale(r.zoom??a);t.transform(pD(n,null==o?void 0:o.duration),l)},getViewport:()=>{const[t,n,r]=e.getState().transform;return{x:t,y:n,zoom:r}},fitView:t=>rR(e.getState,t),setCenter:(r,o,s)=>{const{width:i,height:a,maxZoom:l}=e.getState(),c=void 0!==(null==s?void 0:s.zoom)?s.zoom:l,d=i/2-r*c,u=a/2-o*c,h=Nc.translate(d,u).scale(c);t.transform(pD(n,null==s?void 0:s.duration),h)},fitBounds:(r,o)=>{const{width:s,height:i,minZoom:a,maxZoom:l}=e.getState(),{x:c,y:d,zoom:u}=fD(r,s,i,a,l,(null==o?void 0:o.padding)??.1),h=Nc.translate(c,d).scale(u);t.transform(pD(n,null==o?void 0:o.duration),h)},project:t=>{const{transform:n,snapToGrid:r,snapGrid:o}=e.getState();return console.warn("[DEPRECATED] `project` is deprecated. Instead use `screenToFlowPosition`. There is no need to subtract the react flow bounds anymore! https://reactflow.dev/api-reference/types/react-flow-instance#screen-to-flow-position"),aD(t,n,r,o)},screenToFlowPosition:t=>{const{transform:n,snapToGrid:r,snapGrid:o,domNode:s}=e.getState();if(!s)return t;const{x:i,y:a}=s.getBoundingClientRect(),l={x:t.x-i,y:t.y-a};return aD(l,n,r,o)},flowToScreenPosition:t=>{const{transform:n,domNode:r}=e.getState();if(!r)return t;const{x:o,y:s}=r.getBoundingClientRect(),i=lD(t,n);return{x:i.x+o,y:i.y+s}},viewportInitialized:!0}:lR),[t,n]);return r})(),t=iO(),n=o.useCallback((()=>t.getState().getNodes().map((e=>({...e})))),[]),r=o.useCallback((e=>t.getState().nodeInternals.get(e)),[]),s=o.useCallback((()=>{const{edges:e=[]}=t.getState();return e.map((e=>({...e})))}),[]),i=o.useCallback((e=>{const{edges:n=[]}=t.getState();return n.find((t=>t.id===e))}),[]),a=o.useCallback((e=>{const{getNodes:n,setNodes:r,hasDefaultNodes:o,onNodesChange:s}=t.getState(),i=n(),a="function"==typeof e?e(i):e;if(o)r(a);else if(s){s(0===a.length?i.map((e=>({type:"remove",id:e.id}))):a.map((e=>({item:e,type:"reset"}))))}}),[]),l=o.useCallback((e=>{const{edges:n=[],setEdges:r,hasDefaultEdges:o,onEdgesChange:s}=t.getState(),i="function"==typeof e?e(n):e;if(o)r(i);else if(s){s(0===i.length?n.map((e=>({type:"remove",id:e.id}))):i.map((e=>({item:e,type:"reset"}))))}}),[]),c=o.useCallback((e=>{const n=Array.isArray(e)?e:[e],{getNodes:r,setNodes:o,hasDefaultNodes:s,onNodesChange:i}=t.getState();if(s){o([...r(),...n])}else if(i){i(n.map((e=>({item:e,type:"add"}))))}}),[]),d=o.useCallback((e=>{const n=Array.isArray(e)?e:[e],{edges:r=[],setEdges:o,hasDefaultEdges:s,onEdgesChange:i}=t.getState();if(s)o([...r,...n]);else if(i){i(n.map((e=>({item:e,type:"add"}))))}}),[]),u=o.useCallback((()=>{const{getNodes:e,edges:n=[],transform:r}=t.getState(),[o,s,i]=r;return{nodes:e().map((e=>({...e}))),edges:n.map((e=>({...e}))),viewport:{x:o,y:s,zoom:i}}}),[]),h=o.useCallback((({nodes:e,edges:n})=>{const{nodeInternals:r,getNodes:o,edges:s,hasDefaultNodes:i,hasDefaultEdges:a,onNodesDelete:l,onEdgesDelete:c,onNodesChange:d,onEdgesChange:u}=t.getState(),h=(e||[]).map((e=>e.id)),f=(n||[]).map((e=>e.id)),p=o().reduce(((e,t)=>{const n=t.parentNode||t.parentId,r=!h.includes(t.id)&&n&&e.find((e=>e.id===n));return("boolean"!=typeof t.deletable||t.deletable)&&(h.includes(t.id)||r)&&e.push(t),e}),[]),m=s.filter((e=>"boolean"!=typeof e.deletable||e.deletable)),g=m.filter((e=>f.includes(e.id)));if(p||g){const e=hD(p,m),n=[...g,...e],o=n.reduce(((e,t)=>(e.includes(t.id)||e.push(t.id),e)),[]);if((a||i)&&(a&&t.setState({edges:s.filter((e=>!o.includes(e.id)))}),i&&(p.forEach((e=>{r.delete(e.id)})),t.setState({nodeInternals:new Map(r)}))),o.length>0&&(null==c||c(n),u&&u(o.map((e=>({id:e,type:"remove"}))))),p.length>0&&(null==l||l(p),d)){d(p.map((e=>({id:e.id,type:"remove"}))))}}}),[]),f=o.useCallback((e=>{const n=vO((r=e).width)&&vO(r.height)&&vO(r.x)&&vO(r.y);var r;const o=n?null:t.getState().nodeInternals.get(e.id);if(!n&&!o)return[null,null,n];return[n?e:bO(o),o,n]}),[]),p=o.useCallback(((e,n=!0,r)=>{const[o,s,i]=f(e);return o?(r||t.getState().getNodes()).filter((e=>{if(!(i||e.id!==s.id&&e.positionAbsolute))return!1;const t=bO(e),r=xO(t,o);return n&&r>0||r>=o.width*o.height})):[]}),[]),m=o.useCallback(((e,t,n=!0)=>{const[r]=f(e);if(!r)return!1;const o=xO(r,t);return n&&o>0||o>=r.width*r.height}),[]);return o.useMemo((()=>({...e,getNodes:n,getNode:r,getEdges:s,getEdge:i,setNodes:a,setEdges:l,addNodes:c,addEdges:d,toObject:u,deleteElements:h,getIntersectingNodes:p,isNodeIntersecting:m})),[e,n,r,s,i,a,l,c,d,u,h,p,m])}const uR={actInsideInputWithModifier:!1};const hR={position:"absolute",width:"100%",height:"100%",top:0,left:0},fR=e=>({x:e.x,y:e.y,zoom:e.k}),pR=(e,t)=>e.target.closest(`.${t}`),mR=(e,t)=>2===t&&Array.isArray(e)&&e.includes(2),gR=e=>{const t=e.ctrlKey&&NO()?10:1;return-e.deltaY*(1===e.deltaMode?.05:e.deltaMode?1:.002)*t},yR=e=>({d3Zoom:e.d3Zoom,d3Selection:e.d3Selection,d3ZoomHandler:e.d3ZoomHandler,userSelectionActive:e.userSelectionActive}),bR=({onMove:e,onMoveStart:t,onMoveEnd:n,onPaneContextMenu:r,zoomOnScroll:s=!0,zoomOnPinch:i=!0,panOnScroll:a=!1,panOnScrollSpeed:l=.5,panOnScrollMode:c=OO.Free,zoomOnDoubleClick:d=!0,elementsSelectable:h,panOnDrag:f=!0,defaultViewport:p,translateExtent:m,minZoom:g,maxZoom:y,zoomActivationKeyCode:b,preventScrolling:x=!0,children:v,noWheelClassName:w,noPanClassName:k})=>{const S=o.useRef(),C=iO(),E=o.useRef(!1),N=o.useRef(!1),j=o.useRef(null),_=o.useRef({x:0,y:0,zoom:0}),{d3Zoom:I,d3Selection:A,d3ZoomHandler:T,userSelectionActive:M}=sO(yR,CM),O=KD(b),D=o.useRef(0),R=o.useRef(!1),P=o.useRef();return function(e){const t=iO();o.useEffect((()=>{let n;const r=()=>{var n,r;if(!e.current)return;const o=uO(e.current);0!==o.height&&0!==o.width||null==(r=(n=t.getState()).onError)||r.call(n,"004",KM()),t.setState({width:o.width||500,height:o.height||500})};return r(),window.addEventListener("resize",r),e.current&&(n=new ResizeObserver((()=>r())),n.observe(e.current)),()=>{window.removeEventListener("resize",r),n&&e.current&&n.unobserve(e.current)}}),[])}(j),o.useEffect((()=>{if(j.current){const e=j.current.getBoundingClientRect(),t=function(){var e,t,n,r=$M,o=VM,s=qM,i=WM,a=GM,l=[0,1/0],c=[[-1/0,-1/0],[1/0,1/0]],d=250,u=Ac,h=Ic("start","zoom","end"),f=0,p=10;function m(e){e.property("__zoom",HM).on("wheel.zoom",k,{passive:!1}).on("mousedown.zoom",S).on("dblclick.zoom",C).filter(a).on("touchstart.zoom",E).on("touchmove.zoom",N).on("touchend.zoom touchcancel.zoom",j).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g(e,t){return(t=Math.max(l[0],Math.min(l[1],t)))===e.k?e:new jc(t,e.x,e.y)}function y(e,t,n){var r=t[0]-n[0]*e.k,o=t[1]-n[1]*e.k;return r===e.x&&o===e.y?e:new jc(e.k,r,o)}function b(e){return[(+e[0][0]+ +e[1][0])/2,(+e[0][1]+ +e[1][1])/2]}function x(e,t,n,r){e.on("start.zoom",(function(){v(this,arguments).event(r).start()})).on("interrupt.zoom end.zoom",(function(){v(this,arguments).event(r).end()})).tween("zoom",(function(){var e=this,s=arguments,i=v(e,s).event(r),a=o.apply(e,s),l=null==n?b(a):"function"==typeof n?n.apply(e,s):n,c=Math.max(a[1][0]-a[0][0],a[1][1]-a[0][1]),d=e.__zoom,h="function"==typeof t?t.apply(e,s):t,f=u(d.invert(l).concat(c/d.k),h.invert(l).concat(c/h.k));return function(e){if(1===e)e=h;else{var t=f(e),n=c/t[2];e=new jc(n,l[0]-t[0]*n,l[1]-t[1]*n)}i.zoom(null,e)}}))}function v(e,t,n){return!n&&e.__zooming||new w(e,t)}function w(e,t){this.that=e,this.args=t,this.active=0,this.sourceEvent=null,this.extent=o.apply(e,t),this.taps=0}function k(e,...t){if(r.apply(this,arguments)){var n=v(this,t).event(e),o=this.__zoom,a=Math.max(l[0],Math.min(l[1],o.k*Math.pow(2,i.apply(this,arguments)))),d=EM(e);if(n.wheel)n.mouse[0][0]===d[0]&&n.mouse[0][1]===d[1]||(n.mouse[1]=o.invert(n.mouse[0]=d)),clearTimeout(n.wheel);else{if(o.k===a)return;n.mouse=[d,o.invert(d)],_c(this),n.start()}UM(e),n.wheel=setTimeout((function(){n.wheel=null,n.end()}),150),n.zoom("mouse",s(y(g(o,a),n.mouse[0],n.mouse[1]),n.extent,c))}}function S(e,...t){if(!n&&r.apply(this,arguments)){var o=e.currentTarget,i=v(this,t,!0).event(e),a=Ec(e.view).on("mousemove.zoom",(function(e){if(UM(e),!i.moved){var t=e.clientX-d,n=e.clientY-u;i.moved=t*t+n*n>f}i.event(e).zoom("mouse",s(y(i.that.__zoom,i.mouse[0]=EM(e,o),i.mouse[1]),i.extent,c))}),!0).on("mouseup.zoom",(function(e){a.on("mousemove.zoom mouseup.zoom",null),TM(e.view,i.moved),UM(e),i.event(e).end()}),!0),l=EM(e,o),d=e.clientX,u=e.clientY;AM(e.view),BM(e),i.mouse=[l,this.__zoom.invert(l)],_c(this),i.start()}}function C(e,...t){if(r.apply(this,arguments)){var n=this.__zoom,i=EM(e.changedTouches?e.changedTouches[0]:e,this),a=n.invert(i),l=n.k*(e.shiftKey?.5:2),u=s(y(g(n,l),i,a),o.apply(this,t),c);UM(e),d>0?Ec(this).transition().duration(d).call(x,u,i,e):Ec(this).call(m.transform,u,i,e)}}function E(n,...o){if(r.apply(this,arguments)){var s,i,a,l,c=n.touches,d=c.length,u=v(this,o,n.changedTouches.length===d).event(n);for(BM(n),i=0;i{A&&I&&(!a||O||M?void 0!==T&&A.on("wheel.zoom",(function(e,t){if(!x&&"wheel"===e.type&&!e.ctrlKey||pR(e,w))return null;e.preventDefault(),T.call(this,e,t)}),{passive:!1}):A.on("wheel.zoom",(r=>{if(pR(r,w))return!1;r.preventDefault(),r.stopImmediatePropagation();const o=A.property("__zoom").k||1;if(r.ctrlKey&&i){const e=EM(r),t=gR(r),n=o*Math.pow(2,t);return void I.scaleTo(A,n,e,r)}const s=1===r.deltaMode?20:1;let a=c===OO.Vertical?0:r.deltaX*s,d=c===OO.Horizontal?0:r.deltaY*s;!NO()&&r.shiftKey&&c!==OO.Vertical&&(a=r.deltaY*s,d=0),I.translateBy(A,-a/o*l,-d/o*l,{internal:!0});const u=fR(A.property("__zoom")),{onViewportChangeStart:h,onViewportChange:f,onViewportChangeEnd:p}=C.getState();clearTimeout(P.current),R.current||(R.current=!0,null==t||t(r,u),null==h||h(u)),R.current&&(null==e||e(r,u),null==f||f(u),P.current=setTimeout((()=>{null==n||n(r,u),null==p||p(u),R.current=!1}),150))}),{passive:!1}))}),[M,a,c,A,I,T,O,i,x,w,t,e,n]),o.useEffect((()=>{I&&I.on("start",(e=>{var n,r;if(!e.sourceEvent||e.sourceEvent.internal)return null;D.current=null==(n=e.sourceEvent)?void 0:n.button;const{onViewportChangeStart:o}=C.getState(),s=fR(e.transform);E.current=!0,_.current=s,"mousedown"===(null==(r=e.sourceEvent)?void 0:r.type)&&C.setState({paneDragging:!0}),null==o||o(s),null==t||t(e.sourceEvent,s)}))}),[I,t]),o.useEffect((()=>{I&&(M&&!E.current?I.on("zoom",null):M||I.on("zoom",(t=>{var n;const{onViewportChange:o}=C.getState();if(C.setState({transform:[t.transform.x,t.transform.y,t.transform.k]}),N.current=!(!r||!mR(f,D.current??0)),(e||o)&&!(null==(n=t.sourceEvent)?void 0:n.internal)){const n=fR(t.transform);null==o||o(n),null==e||e(t.sourceEvent,n)}})))}),[M,I,e,f,r]),o.useEffect((()=>{I&&I.on("end",(e=>{if(!e.sourceEvent||e.sourceEvent.internal)return null;const{onViewportChangeEnd:t}=C.getState();if(E.current=!1,C.setState({paneDragging:!1}),r&&mR(f,D.current??0)&&!N.current&&r(e.sourceEvent),N.current=!1,(n||t)&&(o=_.current,s=e.transform,o.x!==s.x||o.y!==s.y||o.zoom!==s.k)){const r=fR(e.transform);_.current=r,clearTimeout(S.current),S.current=setTimeout((()=>{null==t||t(r),null==n||n(e.sourceEvent,r)}),a?150:0)}var o,s}))}),[I,a,f,n,r]),o.useEffect((()=>{I&&I.filter((e=>{const t=O||s,n=i&&e.ctrlKey;if((!0===f||Array.isArray(f)&&f.includes(1))&&1===e.button&&"mousedown"===e.type&&(pR(e,"react-flow__node")||pR(e,"react-flow__edge")))return!0;if(!(f||t||a||d||i))return!1;if(M)return!1;if(!d&&"dblclick"===e.type)return!1;if(pR(e,w)&&"wheel"===e.type)return!1;if(pR(e,k)&&("wheel"!==e.type||a&&"wheel"===e.type&&!O))return!1;if(!i&&e.ctrlKey&&"wheel"===e.type)return!1;if(!t&&!a&&!n&&"wheel"===e.type)return!1;if(!f&&("mousedown"===e.type||"touchstart"===e.type))return!1;if(Array.isArray(f)&&!f.includes(e.button)&&"mousedown"===e.type)return!1;const r=Array.isArray(f)&&f.includes(e.button)||!e.button||e.button<=1;return(!e.ctrlKey||"wheel"===e.type)&&r}))}),[M,I,s,i,a,d,f,h,O]),u.createElement("div",{className:"react-flow__renderer",ref:j,style:hR},v)},xR=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function vR(){const{userSelectionActive:e,userSelectionRect:t}=sO(xR,CM);return e&&t?u.createElement("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}function wR(e,t){const n=t.parentNode||t.parentId,r=e.find((e=>e.id===n));if(r){const e=t.position.x+t.width-r.width,n=t.position.y+t.height-r.height;if(e>0||n>0||t.position.x<0||t.position.y<0){if(r.style={...r.style},r.style.width=r.style.width??r.width,r.style.height=r.style.height??r.height,e>0&&(r.style.width+=e),n>0&&(r.style.height+=n),t.position.x<0){const e=Math.abs(t.position.x);r.position.x=r.position.x-e,r.style.width+=e,t.position.x=0}if(t.position.y<0){const e=Math.abs(t.position.y);r.position.y=r.position.y-e,r.style.height+=e,t.position.y=0}r.width=r.style.width,r.height=r.style.height}}}function kR(e,t){if(e.some((e=>"reset"===e.type)))return e.filter((e=>"reset"===e.type)).map((e=>e.item));const n=e.filter((e=>"add"===e.type)).map((e=>e.item));return t.reduce(((t,n)=>{const r=e.filter((e=>e.id===n.id));if(0===r.length)return t.push(n),t;const o={...n};for(const e of r)if(e)switch(e.type){case"select":o.selected=e.selected;break;case"position":void 0!==e.position&&(o.position=e.position),void 0!==e.positionAbsolute&&(o.positionAbsolute=e.positionAbsolute),void 0!==e.dragging&&(o.dragging=e.dragging),o.expandParent&&wR(t,o);break;case"dimensions":void 0!==e.dimensions&&(o.width=e.dimensions.width,o.height=e.dimensions.height),void 0!==e.updateStyle&&(o.style={...o.style||{},...e.dimensions}),"boolean"==typeof e.resizing&&(o.resizing=e.resizing),o.expandParent&&wR(t,o);break;case"remove":return t}return t.push(o),t}),n)}function SR(e,t){return kR(e,t)}const CR=(e,t)=>({id:e,type:"select",selected:t});function ER(e,t){return e.reduce(((e,n)=>{const r=t.includes(n.id);return!n.selected&&r?(n.selected=!0,e.push(CR(n.id,!0))):n.selected&&!r&&(n.selected=!1,e.push(CR(n.id,!1))),e}),[])}const NR=(e,t)=>n=>{n.target===t.current&&(null==e||e(n))},jR=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,dragging:e.paneDragging}),_R=o.memo((({isSelecting:e,selectionMode:t=RO.Full,panOnDrag:n,onSelectionStart:r,onSelectionEnd:s,onPaneClick:i,onPaneContextMenu:a,onPaneScroll:l,onPaneMouseEnter:c,onPaneMouseMove:d,onPaneMouseLeave:h,children:f})=>{const p=o.useRef(null),m=iO(),g=o.useRef(0),y=o.useRef(0),b=o.useRef(),{userSelectionActive:x,elementsSelectable:v,dragging:w}=sO(jR,CM),k=()=>{m.setState({userSelectionActive:!1,userSelectionRect:null}),g.current=0,y.current=0},S=e=>{null==i||i(e),m.getState().resetSelectedElements(),m.setState({nodesSelectionActive:!1})},C=l?e=>l(e):void 0,E=v&&(e||x);return u.createElement("div",{className:bM(["react-flow__pane",{dragging:w,selection:e}]),onClick:E?void 0:NR(S,p),onContextMenu:NR((e=>{Array.isArray(n)&&(null==n?void 0:n.includes(2))?e.preventDefault():null==a||a(e)}),p),onWheel:NR(C,p),onMouseEnter:E?void 0:c,onMouseDown:E?t=>{const{resetSelectedElements:n,domNode:o}=m.getState();if(b.current=null==o?void 0:o.getBoundingClientRect(),!v||!e||0!==t.button||t.target!==p.current||!b.current)return;const{x:s,y:i}=EO(t,b.current);n(),m.setState({userSelectionRect:{width:0,height:0,startX:s,startY:i,x:s,y:i}}),null==r||r(t)}:void 0,onMouseMove:E?n=>{const{userSelectionRect:r,nodeInternals:o,edges:s,transform:i,onNodesChange:a,onEdgesChange:l,nodeOrigin:c,getNodes:d}=m.getState();if(!e||!b.current||!r)return;m.setState({userSelectionActive:!0,nodesSelectionActive:!1});const u=EO(n,b.current),h=r.startX??0,f=r.startY??0,p={...r,x:u.xe.id)),k=v.map((e=>e.id));if(g.current!==k.length){g.current=k.length;const e=ER(x,k);e.length&&(null==a||a(e))}if(y.current!==w.length){y.current=w.length;const e=ER(s,w);e.length&&(null==l||l(e))}m.setState({userSelectionRect:p})}:d,onMouseUp:E?e=>{if(0!==e.button)return;const{userSelectionRect:t}=m.getState();!x&&t&&e.target===p.current&&(null==S||S(e)),m.setState({nodesSelectionActive:g.current>0}),k(),null==s||s(e)}:void 0,onMouseLeave:E?e=>{x&&(m.setState({nodesSelectionActive:g.current>0}),null==s||s(e)),k()}:h,ref:p,style:hR},f,u.createElement(vR,null))}));function IR(e,t){const n=e.parentNode||e.parentId;if(!n)return!1;const r=t.get(n);return!!r&&(!!r.selected||IR(r,t))}function AR(e,t,n){let r=e;do{if(null==r?void 0:r.matches(t))return!0;if(r===n.current)return!1;r=r.parentElement}while(r);return!1}function TR(e,t,n,r){return Array.from(e.values()).filter((n=>(n.selected||n.id===r)&&(!n.parentNode||n.parentId||!IR(n,e))&&(n.draggable||t&&void 0===n.draggable))).map((e=>{var t,r;return{id:e.id,position:e.position||{x:0,y:0},positionAbsolute:e.positionAbsolute||{x:0,y:0},distance:{x:n.x-((null==(t=e.positionAbsolute)?void 0:t.x)??0),y:n.y-((null==(r=e.positionAbsolute)?void 0:r.y)??0)},delta:{x:0,y:0},extent:e.extent,parentNode:e.parentNode||e.parentId,parentId:e.parentNode||e.parentId,width:e.width,height:e.height,expandParent:e.expandParent}}))}function MR(e,t,n,r,o=[0,0],s){const i=function(e,t){return t&&"parent"!==t?[t[0],[t[1][0]-(e.width||0),t[1][1]-(e.height||0)]]:t}(e,e.extent||r);let a=i;const l=e.parentNode||e.parentId;if("parent"!==e.extent||e.expandParent){if(e.extent&&l&&"parent"!==e.extent){const t=n.get(l),{x:r,y:s}=cD(t,o).positionAbsolute;a=[[e.extent[0][0]+r,e.extent[0][1]+s],[e.extent[1][0]+r,e.extent[1][1]+s]]}}else if(l&&e.width&&e.height){const t=n.get(l),{x:r,y:s}=cD(t,o).positionAbsolute;a=t&&vO(r)&&vO(s)&&vO(t.width)&&vO(t.height)?[[r+e.width*o[0],s+e.height*o[1]],[r+t.width-e.width+e.width*o[0],s+t.height-e.height+e.height*o[1]]]:a}else null==s||s("005",ZM()),a=i;let c={x:0,y:0};if(l){const e=n.get(l);c=cD(e,o).positionAbsolute}const d=a&&"parent"!==a?fO(t,a):t;return{position:{x:d.x-c.x,y:d.y-c.y},positionAbsolute:d}}function OR({nodeId:e,dragItems:t,nodeInternals:n}){const r=t.map((e=>({...n.get(e.id),position:e.position,positionAbsolute:e.positionAbsolute})));return[e?r.find((t=>t.id===e)):r[0],r]}_R.displayName="Pane";const DR=(e,t,n,r)=>{const o=t.querySelectorAll(e);if(!o||!o.length)return null;const s=Array.from(o),i=t.getBoundingClientRect(),a=i.width*r[0],l=i.height*r[1];return s.map((e=>{const t=e.getBoundingClientRect();return{id:e.getAttribute("data-handleid"),position:e.getAttribute("data-handlepos"),x:(t.left-i.left-a)/n,y:(t.top-i.top-l)/n,...uO(e)}}))};function RR(e,t,n){return void 0===n?n:r=>{const o=t().nodeInternals.get(e);o&&n(r,{...o})}}function PR({id:e,store:t,unselect:n=!1,nodeRef:r}){const{addSelectedNodes:o,unselectNodesAndEdges:s,multiSelectionActive:i,nodeInternals:a,onError:l}=t.getState(),c=a.get(e);c?(t.setState({nodesSelectionActive:!1}),c.selected?(n||c.selected&&i)&&(s({nodes:[c],edges:[]}),requestAnimationFrame((()=>{var e;return null==(e=null==r?void 0:r.current)?void 0:e.blur()}))):o([e])):null==l||l("012",rO(e))}function LR(e){return(t,n,r)=>null==e?void 0:e(t,r)}function zR({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:r,nodeId:s,isSelectable:i,selectNodesOnDrag:a}){const l=iO(),[c,d]=o.useState(!1),u=o.useRef([]),h=o.useRef({x:null,y:null}),f=o.useRef(0),p=o.useRef(null),m=o.useRef({x:0,y:0}),g=o.useRef(null),y=o.useRef(!1),b=o.useRef(!1),x=o.useRef(!1),v=function(){const e=iO();return o.useCallback((({sourceEvent:t})=>{const{transform:n,snapGrid:r,snapToGrid:o}=e.getState(),s=t.touches?t.touches[0].clientX:t.clientX,i=t.touches?t.touches[0].clientY:t.clientY,a={x:(s-n[0])/n[2],y:(i-n[1])/n[2]};return{xSnapped:o?r[0]*Math.round(a.x/r[0]):a.x,ySnapped:o?r[1]*Math.round(a.y/r[1]):a.y,...a}}),[])}();return o.useEffect((()=>{if(null==e?void 0:e.current){const o=Ec(e.current),c=({x:e,y:t})=>{const{nodeInternals:n,onNodeDrag:r,onSelectionDrag:o,updateNodePositions:i,nodeExtent:a,snapGrid:c,snapToGrid:f,nodeOrigin:p,onError:m}=l.getState();h.current={x:e,y:t};let y=!1,b={x:0,y:0,x2:0,y2:0};if(u.current.length>1&&a){const e=dD(u.current,p);b=yO(e)}if(u.current=u.current.map((r=>{const o={x:e-r.distance.x,y:t-r.distance.y};f&&(o.x=c[0]*Math.round(o.x/c[0]),o.y=c[1]*Math.round(o.y/c[1]));const s=[[a[0][0],a[0][1]],[a[1][0],a[1][1]]];u.current.length>1&&a&&!r.extent&&(s[0][0]=r.positionAbsolute.x-b.x+a[0][0],s[1][0]=r.positionAbsolute.x+(r.width??0)-b.x2+a[1][0],s[0][1]=r.positionAbsolute.y-b.y+a[0][1],s[1][1]=r.positionAbsolute.y+(r.height??0)-b.y2+a[1][1]);const i=MR(r,o,n,s,p,m);return y=y||r.position.x!==i.position.x||r.position.y!==i.position.y,r.position=i.position,r.positionAbsolute=i.positionAbsolute,r})),!y)return;i(u.current,!0,!0),d(!0);const x=s?r:LR(o);if(x&&g.current){const[e,t]=OR({nodeId:s,dragItems:u.current,nodeInternals:n});x(g.current,e,t)}},w=()=>{if(!p.current)return;const[e,t]=mO(m.current,p.current);if(0!==e||0!==t){const{transform:n,panBy:r}=l.getState();h.current.x=(h.current.x??0)-e/n[2],h.current.y=(h.current.y??0)-t/n[2],r({x:e,y:t})&&c(h.current)}f.current=requestAnimationFrame(w)},k=t=>{var n;const{nodeInternals:r,multiSelectionActive:o,nodesDraggable:c,unselectNodesAndEdges:d,onNodeDragStart:f,onSelectionDragStart:p}=l.getState();b.current=!0;const m=s?f:LR(p);a&&i||o||!s||(null==(n=r.get(s))?void 0:n.selected)||d(),s&&i&&a&&PR({id:s,store:l,nodeRef:e});const g=v(t);if(h.current=g,u.current=TR(r,c,g,s),m&&u.current){const[e,n]=OR({nodeId:s,dragItems:u.current,nodeInternals:r});m(t.sourceEvent,e,n)}};if(!t){const t=function(){var e,t,n,r,o=DM,s=RM,i=PM,a=LM,l={},c=Ic("start","drag","end"),d=0,u=0;function h(e){e.on("mousedown.drag",f).filter(a).on("touchstart.drag",g).on("touchmove.drag",y,NM).on("touchend.drag touchcancel.drag",b).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function f(i,a){if(!r&&o.call(this,i,a)){var l=x(this,s.call(this,i,a),i,a,"mouse");l&&(Ec(i.view).on("mousemove.drag",p,jM).on("mouseup.drag",m,jM),AM(i.view),_M(i),n=!1,e=i.clientX,t=i.clientY,l("start",i))}}function p(r){if(IM(r),!n){var o=r.clientX-e,s=r.clientY-t;n=o*o+s*s>u}l.mouse("drag",r)}function m(e){Ec(e.view).on("mousemove.drag mouseup.drag",null),TM(e.view,n),IM(e),l.mouse("end",e)}function g(e,t){if(o.call(this,e,t)){var n,r,i=e.changedTouches,a=s.call(this,e,t),l=i.length;for(n=0;n{const{domNode:t,nodeDragThreshold:n}=l.getState();0===n&&k(e),x.current=!1;const r=v(e);h.current=r,p.current=(null==t?void 0:t.getBoundingClientRect())||null,m.current=EO(e.sourceEvent,p.current)})).on("drag",(e=>{var t,n;const r=v(e),{autoPanOnNodeDrag:o,nodeDragThreshold:s}=l.getState();if("touchmove"===e.sourceEvent.type&&e.sourceEvent.touches.length>1&&(x.current=!0),!x.current){if(!y.current&&b.current&&o&&(y.current=!0,w()),!b.current){const o=r.xSnapped-((null==(t=null==h?void 0:h.current)?void 0:t.x)??0),i=r.ySnapped-((null==(n=null==h?void 0:h.current)?void 0:n.y)??0);Math.sqrt(o*o+i*i)>s&&k(e)}(h.current.x!==r.xSnapped||h.current.y!==r.ySnapped)&&u.current&&b.current&&(g.current=e.sourceEvent,m.current=EO(e.sourceEvent,p.current),c(r))}})).on("end",(e=>{if(b.current&&!x.current&&(d(!1),y.current=!1,b.current=!1,cancelAnimationFrame(f.current),u.current)){const{updateNodePositions:t,nodeInternals:n,onNodeDragStop:r,onSelectionDragStop:o}=l.getState(),i=s?r:LR(o);if(t(u.current,!1,!1),i){const[t,r]=OR({nodeId:s,dragItems:u.current,nodeInternals:n});i(e.sourceEvent,t,r)}}})).filter((t=>{const o=t.target;return!t.button&&(!n||!AR(o,`.${n}`,e))&&(!r||AR(o,r,e))}));return o.call(t),()=>{o.on(".drag",null)}}o.on(".drag",null)}}),[e,t,n,r,i,l,s,a,v]),c}function FR(){const e=iO();return o.useCallback((t=>{const{nodeInternals:n,nodeExtent:r,updateNodePositions:o,getNodes:s,snapToGrid:i,snapGrid:a,onError:l,nodesDraggable:c}=e.getState(),d=s().filter((e=>e.selected&&(e.draggable||c&&void 0===e.draggable))),u=i?a[0]:5,h=i?a[1]:5,f=t.isShiftPressed?4:1,p=t.x*u*f,m=t.y*h*f;o(d.map((e=>{if(e.positionAbsolute){const t={x:e.positionAbsolute.x+p,y:e.positionAbsolute.y+m};i&&(t.x=a[0]*Math.round(t.x/a[0]),t.y=a[1]*Math.round(t.y/a[1]));const{positionAbsolute:o,position:s}=MR(e,t,n,r,void 0,l);e.position=s,e.positionAbsolute=o}return e})),!0,!1)}),[])}const BR={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};var UR=e=>{const t=({id:t,type:n,data:r,xPos:s,yPos:i,xPosOrigin:a,yPosOrigin:l,selected:c,onClick:d,onMouseEnter:h,onMouseMove:f,onMouseLeave:p,onContextMenu:m,onDoubleClick:g,style:y,className:b,isDraggable:x,isSelectable:v,isConnectable:w,isFocusable:k,selectNodesOnDrag:S,sourcePosition:C,targetPosition:E,hidden:N,resizeObserver:j,dragHandle:_,zIndex:I,isParent:A,noDragClassName:T,noPanClassName:M,initialized:O,disableKeyboardA11y:D,ariaLabel:R,rfId:P,hasHandleBounds:L})=>{const z=iO(),F=o.useRef(null),B=o.useRef(null),U=o.useRef(C),$=o.useRef(E),V=o.useRef(n),H=v||x||d||h||f||p,W=FR(),G=RR(t,z.getState,h),q=RR(t,z.getState,f),Y=RR(t,z.getState,p),J=RR(t,z.getState,m),X=RR(t,z.getState,g);o.useEffect((()=>()=>{B.current&&(null==j||j.unobserve(B.current),B.current=null)}),[]),o.useEffect((()=>{if(F.current&&!N){const e=F.current;O&&L&&B.current===e||(B.current&&(null==j||j.unobserve(B.current)),null==j||j.observe(e),B.current=e)}}),[N,O,L]),o.useEffect((()=>{const e=V.current!==n,r=U.current!==C,o=$.current!==E;F.current&&(e||r||o)&&(e&&(V.current=n),r&&(U.current=C),o&&($.current=E),z.getState().updateNodeDimensions([{id:t,nodeElement:F.current,forceUpdate:!0}]))}),[t,n,C,E]);const K=zR({nodeRef:F,disabled:N||!x,noDragClassName:T,handleSelector:_,nodeId:t,isSelectable:v,selectNodesOnDrag:S});return N?null:u.createElement("div",{className:bM(["react-flow__node",`react-flow__node-${n}`,{[M]:x},b,{selected:c,selectable:v,parent:A,dragging:K}]),ref:F,style:{zIndex:I,transform:`translate(${a}px,${l}px)`,pointerEvents:H?"all":"none",visibility:O?"visible":"hidden",...y},"data-id":t,"data-testid":`rf__node-${t}`,onMouseEnter:G,onMouseMove:q,onMouseLeave:Y,onContextMenu:J,onClick:e=>{const{nodeDragThreshold:n}=z.getState();if(v&&(!S||!x||n>0)&&PR({id:t,store:z,nodeRef:F}),d){const n=z.getState().nodeInternals.get(t);n&&d(e,{...n})}},onDoubleClick:X,onKeyDown:k?e=>{if(!SO(e)&&!D)if(kO.includes(e.key)&&v){const n="Escape"===e.key;PR({id:t,store:z,unselect:n,nodeRef:F})}else x&&c&&Object.prototype.hasOwnProperty.call(BR,e.key)&&(z.setState({ariaLiveMessage:`Moved selected node ${e.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~s}, y: ${~~i}`}),W({x:BR[e.key].x,y:BR[e.key].y,isShiftPressed:e.shiftKey}))}:void 0,tabIndex:k?0:void 0,role:k?"button":void 0,"aria-describedby":D?void 0:`${GD}-${P}`,"aria-label":R},u.createElement(oD,{value:t},u.createElement(e,{id:t,data:r,type:n,xPos:s,yPos:i,selected:c,isConnectable:w,sourcePosition:C,targetPosition:E,dragging:K,dragHandle:_,zIndex:I})))};return t.displayName="NodeWrapper",o.memo(t)};const $R=e=>{const t=e.getNodes().filter((e=>e.selected));return{...dD(t,e.nodeOrigin),transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`,userSelectionActive:e.userSelectionActive}};var VR=o.memo((function({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){const r=iO(),{width:s,height:i,x:a,y:l,transformString:c,userSelectionActive:d}=sO($R,CM),h=FR(),f=o.useRef(null);if(o.useEffect((()=>{var e;n||null==(e=f.current)||e.focus({preventScroll:!0})}),[n]),zR({nodeRef:f}),d||!s||!i)return null;const p=e?t=>{const n=r.getState().getNodes().filter((e=>e.selected));e(t,n)}:void 0;return u.createElement("div",{className:bM(["react-flow__nodesselection","react-flow__container",t]),style:{transform:c}},u.createElement("div",{ref:f,className:"react-flow__nodesselection-rect",onContextMenu:p,tabIndex:n?void 0:-1,onKeyDown:n?void 0:e=>{Object.prototype.hasOwnProperty.call(BR,e.key)&&h({x:BR[e.key].x,y:BR[e.key].y,isShiftPressed:e.shiftKey})},style:{width:s,height:i,top:l,left:a}}))}));const HR=e=>e.nodesSelectionActive,WR=({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:s,onPaneContextMenu:i,onPaneScroll:a,deleteKeyCode:l,onMove:c,onMoveStart:d,onMoveEnd:h,selectionKeyCode:f,selectionOnDrag:p,selectionMode:m,onSelectionStart:g,onSelectionEnd:y,multiSelectionKeyCode:b,panActivationKeyCode:x,zoomActivationKeyCode:v,elementsSelectable:w,zoomOnScroll:k,zoomOnPinch:S,panOnScroll:C,panOnScrollSpeed:E,panOnScrollMode:N,zoomOnDoubleClick:j,panOnDrag:_,defaultViewport:I,translateExtent:A,minZoom:T,maxZoom:M,preventScrolling:O,onSelectionContextMenu:D,noWheelClassName:R,noPanClassName:P,disableKeyboardA11y:L})=>{const z=sO(HR),F=KD(f),B=KD(x),U=B||_,$=B||C,V=F||p&&!0!==U;return(({deleteKeyCode:e,multiSelectionKeyCode:t})=>{const n=iO(),{deleteElements:r}=dR(),s=KD(e,uR),i=KD(t);o.useEffect((()=>{if(s){const{edges:e,getNodes:t}=n.getState(),o=t().filter((e=>e.selected)),s=e.filter((e=>e.selected));r({nodes:o,edges:s}),n.setState({nodesSelectionActive:!1})}}),[s]),o.useEffect((()=>{n.setState({multiSelectionActive:i})}),[i])})({deleteKeyCode:l,multiSelectionKeyCode:b}),u.createElement(bR,{onMove:c,onMoveStart:d,onMoveEnd:h,onPaneContextMenu:i,elementsSelectable:w,zoomOnScroll:k,zoomOnPinch:S,panOnScroll:$,panOnScrollSpeed:E,panOnScrollMode:N,zoomOnDoubleClick:j,panOnDrag:!F&&U,defaultViewport:I,translateExtent:A,minZoom:T,maxZoom:M,zoomActivationKeyCode:v,preventScrolling:O,noWheelClassName:R,noPanClassName:P},u.createElement(_R,{onSelectionStart:g,onSelectionEnd:y,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:s,onPaneContextMenu:i,onPaneScroll:a,panOnDrag:U,isSelecting:!!V,selectionMode:m},e,z&&u.createElement(VR,{onSelectionContextMenu:D,noPanClassName:P,disableKeyboardA11y:L})))};WR.displayName="FlowRenderer";var GR=o.memo(WR);function qR(e){return{...{input:UR(e.input||AD),default:UR(e.default||_D),output:UR(e.output||MD),group:UR(e.group||OD)},...Object.keys(e).filter((e=>!["input","default","output","group"].includes(e))).reduce(((t,n)=>(t[n]=UR(e[n]||_D),t)),{})}}const YR=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,updateNodeDimensions:e.updateNodeDimensions,onError:e.onError}),JR=e=>{const{nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:s,updateNodeDimensions:i,onError:a}=sO(YR,CM),l=(c=e.onlyRenderVisibleElements,sO(o.useCallback((e=>c?uD(e.nodeInternals,{x:0,y:0,width:e.width,height:e.height},e.transform,!0):e.getNodes()),[c])));var c;const d=o.useRef(),h=o.useMemo((()=>{if("undefined"==typeof ResizeObserver)return null;const e=new ResizeObserver((e=>{const t=e.map((e=>({id:e.target.getAttribute("data-id"),nodeElement:e.target,forceUpdate:!0})));i(t)}));return d.current=e,e}),[]);return o.useEffect((()=>()=>{var e;null==(e=null==d?void 0:d.current)||e.disconnect()}),[]),u.createElement("div",{className:"react-flow__nodes",style:hR},l.map((o=>{var i,l,c;let d=o.type||"default";e.nodeTypes[d]||(null==a||a("003",XM(d)),d="default");const f=e.nodeTypes[d]||e.nodeTypes.default,p=!!(o.draggable||t&&void 0===o.draggable),m=!!(o.selectable||s&&void 0===o.selectable),g=!!(o.connectable||n&&void 0===o.connectable),y=!!(o.focusable||r&&void 0===o.focusable),b=e.nodeExtent?fO(o.positionAbsolute,e.nodeExtent):o.positionAbsolute,x=(null==b?void 0:b.x)??0,v=(null==b?void 0:b.y)??0,w=(({x:e,y:t,width:n,height:r,origin:o})=>n&&r?o[0]<0||o[1]<0||o[0]>1||o[1]>1?{x:e,y:t}:{x:e-n*o[0],y:t-r*o[1]}:{x:e,y:t})({x:x,y:v,width:o.width??0,height:o.height??0,origin:e.nodeOrigin});return u.createElement(f,{key:o.id,id:o.id,className:o.className,style:o.style,type:d,data:o.data,sourcePosition:o.sourcePosition||UO.Bottom,targetPosition:o.targetPosition||UO.Top,hidden:o.hidden,xPos:x,yPos:v,xPosOrigin:w.x,yPosOrigin:w.y,selectNodesOnDrag:e.selectNodesOnDrag,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,selected:!!o.selected,isDraggable:p,isSelectable:m,isConnectable:g,isFocusable:y,resizeObserver:h,dragHandle:o.dragHandle,zIndex:(null==(i=o[wO])?void 0:i.z)??0,isParent:!!(null==(l=o[wO])?void 0:l.isParent),noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,initialized:!!o.width&&!!o.height,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,ariaLabel:o.ariaLabel,hasHandleBounds:!!(null==(c=o[wO])?void 0:c.handleBounds)})})))};JR.displayName="NodeRenderer";var XR=o.memo(JR);const KR=(e,t,n)=>n===UO.Left?e-t:n===UO.Right?e+t:e,ZR=(e,t,n)=>n===UO.Top?e-t:n===UO.Bottom?e+t:e,QR="react-flow__edgeupdater",eP=({position:e,centerX:t,centerY:n,radius:r=10,onMouseDown:o,onMouseEnter:s,onMouseOut:i,type:a})=>u.createElement("circle",{onMouseDown:o,onMouseEnter:s,onMouseOut:i,className:bM([QR,`${QR}-${a}`]),cx:KR(t,r,e),cy:ZR(n,r,e),r:r,stroke:"transparent",fill:"transparent"}),tP=()=>!0;var nP=e=>{const t=({id:t,className:n,type:r,data:s,onClick:i,onEdgeDoubleClick:a,selected:l,animated:c,label:d,labelStyle:h,labelShowBg:f,labelBgStyle:p,labelBgPadding:m,labelBgBorderRadius:g,style:y,source:b,target:x,sourceX:v,sourceY:w,targetX:k,targetY:S,sourcePosition:C,targetPosition:E,elementsSelectable:N,hidden:j,sourceHandleId:_,targetHandleId:I,onContextMenu:A,onMouseEnter:T,onMouseMove:M,onMouseLeave:O,reconnectRadius:D,onReconnect:R,onReconnectStart:P,onReconnectEnd:L,markerEnd:z,markerStart:F,rfId:B,ariaLabel:U,isFocusable:$,isReconnectable:V,pathOptions:H,interactionWidth:W,disableKeyboardA11y:G})=>{const q=o.useRef(null),[Y,J]=o.useState(!1),[X,K]=o.useState(!1),Z=iO(),Q=o.useMemo((()=>`url('#${iD(F,B)}')`),[F,B]),ee=o.useMemo((()=>`url('#${iD(z,B)}')`),[z,B]);if(j)return null;const te=_O(t,Z.getState,a),ne=_O(t,Z.getState,A),re=_O(t,Z.getState,T),oe=_O(t,Z.getState,M),se=_O(t,Z.getState,O),ie=(e,n)=>{if(0!==e.button)return;const{edges:r,isValidConnection:o}=Z.getState(),s=n?x:b,i=(n?I:_)||null,a=n?"target":"source",l=o||tP,c=n,d=r.find((e=>e.id===t));K(!0),null==P||P(e,d,a);kD({event:e,handleId:i,nodeId:s,onConnect:e=>null==R?void 0:R(d,e),isTarget:c,getState:Z.getState,setState:Z.setState,isValidConnection:l,edgeUpdaterType:a,onReconnectEnd:e=>{K(!1),null==L||L(e,d,a)}})},ae=()=>J(!0),le=()=>J(!1),ce=!N&&!i;return u.createElement("g",{className:bM(["react-flow__edge",`react-flow__edge-${r}`,n,{selected:l,animated:c,inactive:ce,updating:Y}]),onClick:e=>{var n;const{edges:r,addSelectedEdges:o,unselectNodesAndEdges:s,multiSelectionActive:a}=Z.getState(),l=r.find((e=>e.id===t));l&&(N&&(Z.setState({nodesSelectionActive:!1}),l.selected&&a?(s({nodes:[],edges:[l]}),null==(n=q.current)||n.blur()):o([t])),i&&i(e,l))},onDoubleClick:te,onContextMenu:ne,onMouseEnter:re,onMouseMove:oe,onMouseLeave:se,onKeyDown:$?e=>{var n;if(!G&&kO.includes(e.key)&&N){const{unselectNodesAndEdges:r,addSelectedEdges:o,edges:s}=Z.getState();"Escape"===e.key?(null==(n=q.current)||n.blur(),r({edges:[s.find((e=>e.id===t))]})):o([t])}}:void 0,tabIndex:$?0:void 0,role:$?"button":"img","data-testid":`rf__edge-${t}`,"aria-label":null===U?void 0:U||`Edge from ${b} to ${x}`,"aria-describedby":$?`${qD}-${B}`:void 0,ref:q},!X&&u.createElement(e,{id:t,source:b,target:x,selected:l,animated:c,label:d,labelStyle:h,labelShowBg:f,labelBgStyle:p,labelBgPadding:m,labelBgBorderRadius:g,data:s,style:y,sourceX:v,sourceY:w,targetX:k,targetY:S,sourcePosition:C,targetPosition:E,sourceHandleId:_,targetHandleId:I,markerStart:Q,markerEnd:ee,pathOptions:H,interactionWidth:W}),V&&u.createElement(u.Fragment,null,("source"===V||!0===V)&&u.createElement(eP,{position:C,centerX:v,centerY:w,radius:D,onMouseDown:e=>ie(e,!0),onMouseEnter:ae,onMouseOut:le,type:"source"}),("target"===V||!0===V)&&u.createElement(eP,{position:E,centerX:k,centerY:S,radius:D,onMouseDown:e=>ie(e,!1),onMouseEnter:ae,onMouseOut:le,type:"target"})))};return t.displayName="EdgeWrapper",o.memo(t)};function rP(e){return{...{default:nP(e.default||nD),straight:nP(e.bezier||ZO),step:nP(e.step||KO),smoothstep:nP(e.step||XO),simplebezier:nP(e.simplebezier||WO)},...Object.keys(e).filter((e=>!["default","bezier"].includes(e))).reduce(((t,n)=>(t[n]=nP(e[n]||nD),t)),{})}}function oP(e,t,n=null){const r=((null==n?void 0:n.x)||0)+t.x,o=((null==n?void 0:n.y)||0)+t.y,s=(null==n?void 0:n.width)||t.width,i=(null==n?void 0:n.height)||t.height;switch(e){case UO.Top:return{x:r+s/2,y:o};case UO.Right:return{x:r+s,y:o+i/2};case UO.Bottom:return{x:r+s/2,y:o+i};case UO.Left:return{x:r,y:o+i/2}}}function sP(e,t){return e?1!==e.length&&t?t&&e.find((e=>e.id===t))||null:e[0]:null}function iP(e){var t,n,r,o,s;const i=(null==(t=null==e?void 0:e[wO])?void 0:t.handleBounds)||null,a=i&&(null==e?void 0:e.width)&&(null==e?void 0:e.height)&&void 0!==(null==(n=null==e?void 0:e.positionAbsolute)?void 0:n.x)&&void 0!==(null==(r=null==e?void 0:e.positionAbsolute)?void 0:r.y);return[{x:(null==(o=null==e?void 0:e.positionAbsolute)?void 0:o.x)||0,y:(null==(s=null==e?void 0:e.positionAbsolute)?void 0:s.y)||0,width:(null==e?void 0:e.width)||0,height:(null==e?void 0:e.height)||0},i,!!a]}const aP=[{level:0,isMaxLevel:!0,edges:[]}];function lP(e,t,n){return function(e,t,n=!1){let r=-1;const o=e.reduce(((e,o)=>{var s,i;const a=vO(o.zIndex);let l=a?o.zIndex:0;if(n){const e=t.get(o.target),n=t.get(o.source),r=o.selected||(null==e?void 0:e.selected)||(null==n?void 0:n.selected),c=Math.max((null==(s=null==n?void 0:n[wO])?void 0:s.z)||0,(null==(i=null==e?void 0:e[wO])?void 0:i.z)||0,1e3);l=(a?o.zIndex:0)+(r?c:0)}return e[l]?e[l].push(o):e[l]=[o],r=l>r?l:r,e}),{}),s=Object.entries(o).map((([e,t])=>{const n=+e;return{edges:t,level:n,isMaxLevel:n===r}}));return 0===s.length?aP:s}(sO(o.useCallback((n=>e?n.edges.filter((e=>{const r=t.get(e.source),o=t.get(e.target);return(null==r?void 0:r.width)&&(null==r?void 0:r.height)&&(null==o?void 0:o.width)&&(null==o?void 0:o.height)&&function({sourcePos:e,targetPos:t,sourceWidth:n,sourceHeight:r,targetWidth:o,targetHeight:s,width:i,height:a,transform:l}){const c={x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x+n,t.x+o),y2:Math.max(e.y+r,t.y+s)};c.x===c.x2&&(c.x2+=1),c.y===c.y2&&(c.y2+=1);const d=yO({x:(0-l[0])/l[2],y:(0-l[1])/l[2],width:i/l[2],height:a/l[2]}),u=Math.max(0,Math.min(d.x2,c.x2)-Math.max(d.x,c.x)),h=Math.max(0,Math.min(d.y2,c.y2)-Math.max(d.y,c.y));return Math.ceil(u*h)>0}({sourcePos:r.positionAbsolute||{x:0,y:0},targetPos:o.positionAbsolute||{x:0,y:0},sourceWidth:r.width,sourceHeight:r.height,targetWidth:o.width,targetHeight:o.height,width:n.width,height:n.height,transform:n.transform})})):n.edges),[e,t])),t,n)}const cP={[FO.Arrow]:({color:e="none",strokeWidth:t=1})=>u.createElement("polyline",{style:{stroke:e,strokeWidth:t},strokeLinecap:"round",strokeLinejoin:"round",fill:"none",points:"-5,-4 0,0 -5,4"}),[FO.ArrowClosed]:({color:e="none",strokeWidth:t=1})=>u.createElement("polyline",{style:{stroke:e,fill:e,strokeWidth:t},strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})};const dP=({id:e,type:t,color:n,width:r=12.5,height:s=12.5,markerUnits:i="strokeWidth",strokeWidth:a,orient:l="auto-start-reverse"})=>{const c=function(e){const t=iO();return o.useMemo((()=>{var n,r;return Object.prototype.hasOwnProperty.call(cP,e)?cP[e]:(null==(r=(n=t.getState()).onError)||r.call(n,"009",QM(e)),null)}),[e])}(t);return c?u.createElement("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${r}`,markerHeight:`${s}`,viewBox:"-10 -10 20 20",markerUnits:i,orient:l,refX:"0",refY:"0"},u.createElement(c,{color:n,strokeWidth:a})):null},uP=({defaultColor:e,rfId:t})=>{const n=sO(o.useCallback((({defaultColor:e,rfId:t})=>n=>{const r=[];return n.edges.reduce(((n,o)=>([o.markerStart,o.markerEnd].forEach((o=>{if(o&&"object"==typeof o){const s=iD(o,t);r.includes(s)||(n.push({id:s,color:o.color||e,...o}),r.push(s))}})),n)),[]).sort(((e,t)=>e.id.localeCompare(t.id)))})({defaultColor:e,rfId:t}),[e,t]),((e,t)=>!(e.length!==t.length||e.some(((e,n)=>e.id!==t[n].id)))));return u.createElement("defs",null,n.map((e=>u.createElement(dP,{id:e.id,key:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient}))))};uP.displayName="MarkerDefinitions";var hP=o.memo(uP);const fP=e=>({nodesConnectable:e.nodesConnectable,edgesFocusable:e.edgesFocusable,edgesUpdatable:e.edgesUpdatable,elementsSelectable:e.elementsSelectable,width:e.width,height:e.height,connectionMode:e.connectionMode,nodeInternals:e.nodeInternals,onError:e.onError}),pP=({defaultMarkerColor:e,onlyRenderVisibleElements:t,elevateEdgesOnSelect:n,rfId:r,edgeTypes:o,noPanClassName:s,onEdgeContextMenu:i,onEdgeMouseEnter:a,onEdgeMouseMove:l,onEdgeMouseLeave:c,onEdgeClick:d,onEdgeDoubleClick:h,onReconnect:f,onReconnectStart:p,onReconnectEnd:m,reconnectRadius:g,children:y,disableKeyboardA11y:b})=>{const{edgesFocusable:x,edgesUpdatable:v,elementsSelectable:w,width:k,height:S,connectionMode:C,nodeInternals:E,onError:N}=sO(fP,CM),j=lP(t,E,n);return k?u.createElement(u.Fragment,null,j.map((({level:t,edges:n,isMaxLevel:y})=>u.createElement("svg",{key:t,style:{zIndex:t},width:k,height:S,className:"react-flow__edges react-flow__container"},y&&u.createElement(hP,{defaultColor:e,rfId:r}),u.createElement("g",null,n.map((e=>{const[t,n,y]=iP(E.get(e.source)),[k,S,j]=iP(E.get(e.target));if(!y||!j)return null;let _=e.type||"default";o[_]||(null==N||N("011",nO(_)),_="default");const I=o[_]||o.default,A=C===TO.Strict?S.target:(S.target??[]).concat(S.source??[]),T=sP(n.source,e.sourceHandle),M=sP(A,e.targetHandle),O=(null==T?void 0:T.position)||UO.Bottom,D=(null==M?void 0:M.position)||UO.Top,R=!!(e.focusable||x&&void 0===e.focusable),P=e.reconnectable||e.updatable,L=void 0!==f&&(P||v&&void 0===P);if(!T||!M)return null==N||N("008",eO(T,e)),null;const{sourceX:z,sourceY:F,targetX:B,targetY:U}=((e,t,n,r,o,s)=>{const i=oP(n,e,t),a=oP(s,r,o);return{sourceX:i.x,sourceY:i.y,targetX:a.x,targetY:a.y}})(t,T,O,k,M,D);return u.createElement(I,{key:e.id,id:e.id,className:bM([e.className,s]),type:_,data:e.data,selected:!!e.selected,animated:!!e.animated,hidden:!!e.hidden,label:e.label,labelStyle:e.labelStyle,labelShowBg:e.labelShowBg,labelBgStyle:e.labelBgStyle,labelBgPadding:e.labelBgPadding,labelBgBorderRadius:e.labelBgBorderRadius,style:e.style,source:e.source,target:e.target,sourceHandleId:e.sourceHandle,targetHandleId:e.targetHandle,markerEnd:e.markerEnd,markerStart:e.markerStart,sourceX:z,sourceY:F,targetX:B,targetY:U,sourcePosition:O,targetPosition:D,elementsSelectable:w,onContextMenu:i,onMouseEnter:a,onMouseMove:l,onMouseLeave:c,onClick:d,onEdgeDoubleClick:h,onReconnect:f,onReconnectStart:p,onReconnectEnd:m,reconnectRadius:g,rfId:r,ariaLabel:e.ariaLabel,isFocusable:R,isReconnectable:L,pathOptions:"pathOptions"in e?e.pathOptions:void 0,interactionWidth:e.interactionWidth,disableKeyboardA11y:b})})))))),y):null};pP.displayName="EdgeRenderer";var mP=o.memo(pP);const gP=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function yP({children:e}){const t=sO(gP);return u.createElement("div",{className:"react-flow__viewport react-flow__container",style:{transform:t}},e)}const bP={[UO.Left]:UO.Right,[UO.Right]:UO.Left,[UO.Top]:UO.Bottom,[UO.Bottom]:UO.Top},xP=({nodeId:e,handleType:t,style:n,type:r=LO.Bezier,CustomComponent:s,connectionStatus:i})=>{var a,l,c;const{fromNode:d,handleId:h,toX:f,toY:p,connectionMode:m}=sO(o.useCallback((t=>({fromNode:t.nodeInternals.get(e),handleId:t.connectionHandleId,toX:(t.connectionPosition.x-t.transform[0])/t.transform[2],toY:(t.connectionPosition.y-t.transform[1])/t.transform[2],connectionMode:t.connectionMode})),[e]),CM),g=null==(a=null==d?void 0:d[wO])?void 0:a.handleBounds;let y=null==g?void 0:g[t];if(m===TO.Loose&&(y=y||(null==g?void 0:g["source"===t?"target":"source"])),!d||!y)return null;const b=h?y.find((e=>e.id===h)):y[0],x=b?b.x+b.width/2:(d.width??0)/2,v=b?b.y+b.height/2:d.height??0,w=((null==(l=d.positionAbsolute)?void 0:l.x)??0)+x,k=((null==(c=d.positionAbsolute)?void 0:c.y)??0)+v,S=null==b?void 0:b.position,C=S?bP[S]:null;if(!S||!C)return null;if(s)return u.createElement(s,{connectionLineType:r,connectionLineStyle:n,fromNode:d,fromHandle:b,fromX:w,fromY:k,toX:f,toY:p,fromPosition:S,toPosition:C,connectionStatus:i});let E="";const N={sourceX:w,sourceY:k,sourcePosition:S,targetX:f,targetY:p,targetPosition:C};return r===LO.Bezier?[E]=tD(N):r===LO.Step?[E]=JO({...N,borderRadius:0}):r===LO.SmoothStep?[E]=JO(N):r===LO.SimpleBezier?[E]=HO(N):E=`M${w},${k} ${f},${p}`,u.createElement("path",{d:E,fill:"none",className:"react-flow__connection-path",style:n})};xP.displayName="ConnectionLine";const vP=e=>({nodeId:e.connectionNodeId,handleType:e.connectionHandleType,nodesConnectable:e.nodesConnectable,connectionStatus:e.connectionStatus,width:e.width,height:e.height});function wP({containerStyle:e,style:t,type:n,component:r}){const{nodeId:o,handleType:s,nodesConnectable:i,width:a,height:l,connectionStatus:c}=sO(vP,CM);return!!(o&&s&&a&&i)?u.createElement("svg",{style:e,width:a,height:l,className:"react-flow__edges react-flow__connectionline react-flow__container"},u.createElement("g",{className:bM(["react-flow__connection",c])},u.createElement(xP,{nodeId:o,handleType:s,style:t,type:n,CustomComponent:r,connectionStatus:c}))):null}function kP(e,t){o.useRef(null),iO();return o.useMemo((()=>t(e)),[e])}const SP=({nodeTypes:e,edgeTypes:t,onMove:n,onMoveStart:r,onMoveEnd:s,onInit:i,onNodeClick:a,onEdgeClick:l,onNodeDoubleClick:c,onEdgeDoubleClick:d,onNodeMouseEnter:h,onNodeMouseMove:f,onNodeMouseLeave:p,onNodeContextMenu:m,onSelectionContextMenu:g,onSelectionStart:y,onSelectionEnd:b,connectionLineType:x,connectionLineStyle:v,connectionLineComponent:w,connectionLineContainerStyle:k,selectionKeyCode:S,selectionOnDrag:C,selectionMode:E,multiSelectionKeyCode:N,panActivationKeyCode:j,zoomActivationKeyCode:_,deleteKeyCode:I,onlyRenderVisibleElements:A,elementsSelectable:T,selectNodesOnDrag:M,defaultViewport:O,translateExtent:D,minZoom:R,maxZoom:P,preventScrolling:L,defaultMarkerColor:z,zoomOnScroll:F,zoomOnPinch:B,panOnScroll:U,panOnScrollSpeed:$,panOnScrollMode:V,zoomOnDoubleClick:H,panOnDrag:W,onPaneClick:G,onPaneMouseEnter:q,onPaneMouseMove:Y,onPaneMouseLeave:J,onPaneScroll:X,onPaneContextMenu:K,onEdgeContextMenu:Z,onEdgeMouseEnter:Q,onEdgeMouseMove:ee,onEdgeMouseLeave:te,onReconnect:ne,onReconnectStart:re,onReconnectEnd:oe,reconnectRadius:se,noDragClassName:ie,noWheelClassName:ae,noPanClassName:le,elevateEdgesOnSelect:ce,disableKeyboardA11y:de,nodeOrigin:ue,nodeExtent:he,rfId:fe})=>{const pe=kP(e,qR),me=kP(t,rP);return function(e){const t=dR(),n=o.useRef(!1);o.useEffect((()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout((()=>e(t)),1),n.current=!0)}),[e,t.viewportInitialized])}(i),u.createElement(GR,{onPaneClick:G,onPaneMouseEnter:q,onPaneMouseMove:Y,onPaneMouseLeave:J,onPaneContextMenu:K,onPaneScroll:X,deleteKeyCode:I,selectionKeyCode:S,selectionOnDrag:C,selectionMode:E,onSelectionStart:y,onSelectionEnd:b,multiSelectionKeyCode:N,panActivationKeyCode:j,zoomActivationKeyCode:_,elementsSelectable:T,onMove:n,onMoveStart:r,onMoveEnd:s,zoomOnScroll:F,zoomOnPinch:B,zoomOnDoubleClick:H,panOnScroll:U,panOnScrollSpeed:$,panOnScrollMode:V,panOnDrag:W,defaultViewport:O,translateExtent:D,minZoom:R,maxZoom:P,onSelectionContextMenu:g,preventScrolling:L,noDragClassName:ie,noWheelClassName:ae,noPanClassName:le,disableKeyboardA11y:de},u.createElement(yP,null,u.createElement(mP,{edgeTypes:me,onEdgeClick:l,onEdgeDoubleClick:d,onlyRenderVisibleElements:A,onEdgeContextMenu:Z,onEdgeMouseEnter:Q,onEdgeMouseMove:ee,onEdgeMouseLeave:te,onReconnect:ne,onReconnectStart:re,onReconnectEnd:oe,reconnectRadius:se,defaultMarkerColor:z,noPanClassName:le,elevateEdgesOnSelect:!!ce,disableKeyboardA11y:de,rfId:fe},u.createElement(wP,{style:v,type:x,component:w,containerStyle:k})),u.createElement("div",{className:"react-flow__edgelabel-renderer"}),u.createElement(XR,{nodeTypes:pe,onNodeClick:a,onNodeDoubleClick:c,onNodeMouseEnter:h,onNodeMouseMove:f,onNodeMouseLeave:p,onNodeContextMenu:m,selectNodesOnDrag:M,onlyRenderVisibleElements:A,noPanClassName:le,noDragClassName:ie,disableKeyboardA11y:de,nodeOrigin:ue,nodeExtent:he,rfId:fe})))};SP.displayName="GraphView";var CP=o.memo(SP);const EP=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],NP={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:EP,nodeExtent:EP,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionNodeId:null,connectionHandleId:null,connectionHandleType:"source",connectionPosition:{x:0,y:0},connectionStatus:null,connectionMode:TO.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:(e,t)=>{},isValidConnection:void 0},jP=()=>{return e=(e,t)=>({...NP,setNodes:n=>{const{nodeInternals:r,nodeOrigin:o,elevateNodesOnSelect:s}=t();e({nodeInternals:nR(n,r,o,s)})},getNodes:()=>Array.from(t().nodeInternals.values()),setEdges:n=>{const{defaultEdgeOptions:r={}}=t();e({edges:n.map((e=>({...r,...e})))})},setDefaultNodesAndEdges:(n,r)=>{const o=void 0!==n,s=void 0!==r,i=o?nR(n,new Map,t().nodeOrigin,t().elevateNodesOnSelect):new Map;e({nodeInternals:i,edges:s?r:[],hasDefaultNodes:o,hasDefaultEdges:s})},updateNodeDimensions:n=>{const{onNodesChange:r,nodeInternals:o,fitViewOnInit:s,fitViewOnInitDone:i,fitViewOnInitOptions:a,domNode:l,nodeOrigin:c}=t(),d=null==l?void 0:l.querySelector(".react-flow__viewport");if(!d)return;const u=window.getComputedStyle(d),{m22:h}=new window.DOMMatrixReadOnly(u.transform),f=n.reduce(((e,t)=>{const n=o.get(t.id);if(null==n?void 0:n.hidden)o.set(n.id,{...n,[wO]:{...n[wO],handleBounds:void 0}});else if(n){const r=uO(t.nodeElement);r.width&&r.height&&(n.width!==r.width||n.height!==r.height||t.forceUpdate)&&(o.set(n.id,{...n,[wO]:{...n[wO],handleBounds:{source:DR(".source",t.nodeElement,h,c),target:DR(".target",t.nodeElement,h,c)}},...r}),e.push({id:n.id,type:"dimensions",dimensions:r}))}return e}),[]);tR(o,c);const p=i||s&&!i&&rR(t,{initial:!0,...a});e({nodeInternals:new Map(o),fitViewOnInitDone:p}),(null==f?void 0:f.length)>0&&(null==r||r(f))},updateNodePositions:(e,n=!0,r=!1)=>{const{triggerNodeChanges:o}=t();o(e.map((e=>{const t={id:e.id,type:"position",dragging:r};return n&&(t.positionAbsolute=e.positionAbsolute,t.position=e.position),t})))},triggerNodeChanges:n=>{const{onNodesChange:r,nodeInternals:o,hasDefaultNodes:s,nodeOrigin:i,getNodes:a,elevateNodesOnSelect:l}=t();if(null==n?void 0:n.length){if(s){const t=nR(SR(n,a()),o,i,l);e({nodeInternals:t})}null==r||r(n)}},addSelectedNodes:n=>{const{multiSelectionActive:r,edges:o,getNodes:s}=t();let i,a=null;r?i=n.map((e=>CR(e,!0))):(i=ER(s(),n),a=ER(o,[])),iR({changedNodes:i,changedEdges:a,get:t,set:e})},addSelectedEdges:n=>{const{multiSelectionActive:r,edges:o,getNodes:s}=t();let i,a=null;r?i=n.map((e=>CR(e,!0))):(i=ER(o,n),a=ER(s(),[])),iR({changedNodes:a,changedEdges:i,get:t,set:e})},unselectNodesAndEdges:({nodes:n,edges:r}={})=>{const{edges:o,getNodes:s}=t(),i=r||o;iR({changedNodes:(n||s()).map((e=>(e.selected=!1,CR(e.id,!1)))),changedEdges:i.map((e=>CR(e.id,!1))),get:t,set:e})},setMinZoom:n=>{const{d3Zoom:r,maxZoom:o}=t();null==r||r.scaleExtent([n,o]),e({minZoom:n})},setMaxZoom:n=>{const{d3Zoom:r,minZoom:o}=t();null==r||r.scaleExtent([o,n]),e({maxZoom:n})},setTranslateExtent:n=>{var r;null==(r=t().d3Zoom)||r.translateExtent(n),e({translateExtent:n})},resetSelectedElements:()=>{const{edges:n,getNodes:r}=t();iR({changedNodes:r().filter((e=>e.selected)).map((e=>CR(e.id,!1))),changedEdges:n.filter((e=>e.selected)).map((e=>CR(e.id,!1))),get:t,set:e})},setNodeExtent:n=>{const{nodeInternals:r}=t();r.forEach((e=>{e.positionAbsolute=fO(e.position,n)})),e({nodeExtent:n,nodeInternals:new Map(r)})},panBy:e=>{const{transform:n,width:r,height:o,d3Zoom:s,d3Selection:i,translateExtent:a}=t();if(!s||!i||!e.x&&!e.y)return!1;const l=Nc.translate(n[0]+e.x,n[1]+e.y).scale(n[2]),c=[[0,0],[r,o]],d=null==s?void 0:s.constrain()(l,c,a);return s.transform(i,d),n[0]!==d.x||n[1]!==d.y||n[2]!==d.k},cancelConnection:()=>e({connectionNodeId:NP.connectionNodeId,connectionHandleId:NP.connectionHandleId,connectionHandleType:NP.connectionHandleType,connectionStatus:NP.connectionStatus,connectionStartHandle:NP.connectionStartHandle,connectionEndHandle:NP.connectionEndHandle}),reset:()=>e({...NP})}),t=Object.is,e?SM(e,t):SM;var e,t},_P=({children:e})=>{const t=o.useRef(null);return t.current||(t.current=jP()),u.createElement(JM,{value:t.current},e)};_P.displayName="ReactFlowProvider";const IP=({children:e})=>o.useContext(YM)?u.createElement(u.Fragment,null,e):u.createElement(_P,null,e);IP.displayName="ReactFlowWrapper";const AP={input:AD,default:_D,output:MD,group:OD},TP={default:nD,straight:ZO,step:KO,smoothstep:XO,simplebezier:WO},MP=[0,0],OP=[15,15],DP={x:0,y:0,zoom:1},RP={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0},PP=o.forwardRef((({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,className:o,nodeTypes:s=AP,edgeTypes:i=TP,onNodeClick:a,onEdgeClick:l,onInit:c,onMove:d,onMoveStart:h,onMoveEnd:f,onConnect:p,onConnectStart:m,onConnectEnd:g,onClickConnectStart:y,onClickConnectEnd:b,onNodeMouseEnter:x,onNodeMouseMove:v,onNodeMouseLeave:w,onNodeContextMenu:k,onNodeDoubleClick:S,onNodeDragStart:C,onNodeDrag:E,onNodeDragStop:N,onNodesDelete:j,onEdgesDelete:_,onSelectionChange:I,onSelectionDragStart:A,onSelectionDrag:T,onSelectionDragStop:M,onSelectionContextMenu:O,onSelectionStart:D,onSelectionEnd:R,connectionMode:P=TO.Strict,connectionLineType:L=LO.Bezier,connectionLineStyle:z,connectionLineComponent:F,connectionLineContainerStyle:B,deleteKeyCode:U="Backspace",selectionKeyCode:$="Shift",selectionOnDrag:V=!1,selectionMode:H=RO.Full,panActivationKeyCode:W="Space",multiSelectionKeyCode:G=(NO()?"Meta":"Control"),zoomActivationKeyCode:q=(NO()?"Meta":"Control"),snapToGrid:Y=!1,snapGrid:J=OP,onlyRenderVisibleElements:X=!1,selectNodesOnDrag:K=!0,nodesDraggable:Z,nodesConnectable:Q,nodesFocusable:ee,nodeOrigin:te=MP,edgesFocusable:ne,edgesUpdatable:re,elementsSelectable:oe,defaultViewport:se=DP,minZoom:ie=.5,maxZoom:ae=2,translateExtent:le=EP,preventScrolling:ce=!0,nodeExtent:de,defaultMarkerColor:ue="#b1b1b7",zoomOnScroll:he=!0,zoomOnPinch:fe=!0,panOnScroll:pe=!1,panOnScrollSpeed:me=.5,panOnScrollMode:ge=OO.Free,zoomOnDoubleClick:ye=!0,panOnDrag:be=!0,onPaneClick:xe,onPaneMouseEnter:ve,onPaneMouseMove:we,onPaneMouseLeave:ke,onPaneScroll:Se,onPaneContextMenu:Ce,children:Ee,onEdgeContextMenu:Ne,onEdgeDoubleClick:je,onEdgeMouseEnter:_e,onEdgeMouseMove:Ie,onEdgeMouseLeave:Ae,onEdgeUpdate:Te,onEdgeUpdateStart:Me,onEdgeUpdateEnd:Oe,onReconnect:De,onReconnectStart:Re,onReconnectEnd:Pe,reconnectRadius:Le=10,edgeUpdaterRadius:ze=10,onNodesChange:Fe,onEdgesChange:Be,noDragClassName:Ue="nodrag",noWheelClassName:$e="nowheel",noPanClassName:Ve="nopan",fitView:He=!1,fitViewOptions:We,connectOnClick:Ge=!0,attributionPosition:qe,proOptions:Ye,defaultEdgeOptions:Je,elevateNodesOnSelect:Xe=!0,elevateEdgesOnSelect:Ke=!1,disableKeyboardA11y:Ze=!1,autoPanOnConnect:Qe=!0,autoPanOnNodeDrag:et=!0,connectionRadius:tt=20,isValidConnection:nt,onError:rt,style:ot,id:st,nodeDragThreshold:it,...at},lt)=>{const ct=st||"1";return u.createElement("div",{...at,style:{...ot,...RP},ref:lt,className:bM(["react-flow",o]),"data-testid":"rf__wrapper",id:st},u.createElement(IP,null,u.createElement(CP,{onInit:c,onMove:d,onMoveStart:h,onMoveEnd:f,onNodeClick:a,onEdgeClick:l,onNodeMouseEnter:x,onNodeMouseMove:v,onNodeMouseLeave:w,onNodeContextMenu:k,onNodeDoubleClick:S,nodeTypes:s,edgeTypes:i,connectionLineType:L,connectionLineStyle:z,connectionLineComponent:F,connectionLineContainerStyle:B,selectionKeyCode:$,selectionOnDrag:V,selectionMode:H,deleteKeyCode:U,multiSelectionKeyCode:G,panActivationKeyCode:W,zoomActivationKeyCode:q,onlyRenderVisibleElements:X,selectNodesOnDrag:K,defaultViewport:se,translateExtent:le,minZoom:ie,maxZoom:ae,preventScrolling:ce,zoomOnScroll:he,zoomOnPinch:fe,zoomOnDoubleClick:ye,panOnScroll:pe,panOnScrollSpeed:me,panOnScrollMode:ge,panOnDrag:be,onPaneClick:xe,onPaneMouseEnter:ve,onPaneMouseMove:we,onPaneMouseLeave:ke,onPaneScroll:Se,onPaneContextMenu:Ce,onSelectionContextMenu:O,onSelectionStart:D,onSelectionEnd:R,onEdgeContextMenu:Ne,onEdgeDoubleClick:je,onEdgeMouseEnter:_e,onEdgeMouseMove:Ie,onEdgeMouseLeave:Ae,onReconnect:De??Te,onReconnectStart:Re??Me,onReconnectEnd:Pe??Oe,reconnectRadius:Le??ze,defaultMarkerColor:ue,noDragClassName:Ue,noWheelClassName:$e,noPanClassName:Ve,elevateEdgesOnSelect:Ke,rfId:ct,disableKeyboardA11y:Ze,nodeOrigin:te,nodeExtent:de}),u.createElement(VD,{nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:p,onConnectStart:m,onConnectEnd:g,onClickConnectStart:y,onClickConnectEnd:b,nodesDraggable:Z,nodesConnectable:Q,nodesFocusable:ee,edgesFocusable:ne,edgesUpdatable:re,elementsSelectable:oe,elevateNodesOnSelect:Xe,minZoom:ie,maxZoom:ae,nodeExtent:de,onNodesChange:Fe,onEdgesChange:Be,snapToGrid:Y,snapGrid:J,connectionMode:P,translateExtent:le,connectOnClick:Ge,defaultEdgeOptions:Je,fitView:He,fitViewOptions:We,onNodesDelete:j,onEdgesDelete:_,onNodeDragStart:C,onNodeDrag:E,onNodeDragStop:N,onSelectionDrag:T,onSelectionDragStart:A,onSelectionDragStop:M,noPanClassName:Ve,nodeOrigin:te,rfId:ct,autoPanOnConnect:Qe,autoPanOnNodeDrag:et,onError:rt,connectionRadius:tt,isValidConnection:nt,nodeDragThreshold:it}),u.createElement(FD,{onSelectionChange:I}),Ee,u.createElement(cO,{proOptions:Ye,position:qe}),u.createElement(XD,{rfId:ct,disableKeyboardA11y:Ze})))}));function LP(e){return t=>{const[n,r]=o.useState(t),s=o.useCallback((t=>r((n=>e(t,n)))),[]);return[n,r,s]}}PP.displayName="ReactFlow";const zP=LP(SR),FP=LP((function(e,t){return kR(e,t)}));function BP(){return u.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},u.createElement("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"}))}function UP(){return u.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},u.createElement("path",{d:"M0 0h32v4.2H0z"}))}function $P(){return u.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},u.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 VP(){return u.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},u.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 HP(){return u.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},u.createElement("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"}))}const WP=({children:e,className:t,...n})=>u.createElement("button",{type:"button",className:bM(["react-flow__controls-button",t]),...n},e);WP.displayName="ControlButton";const GP=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom}),qP=({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:r=!0,fitViewOptions:s,onZoomIn:i,onZoomOut:a,onFitView:l,onInteractiveChange:c,className:d,children:h,position:f="bottom-left"})=>{const p=iO(),[m,g]=o.useState(!1),{isInteractive:y,minZoomReached:b,maxZoomReached:x}=sO(GP,CM),{zoomIn:v,zoomOut:w,fitView:k}=dR();if(o.useEffect((()=>{g(!0)}),[]),!m)return null;return u.createElement(lO,{className:bM(["react-flow__controls",d]),position:f,style:e,"data-testid":"rf__controls"},t&&u.createElement(u.Fragment,null,u.createElement(WP,{onClick:()=>{v(),null==i||i()},className:"react-flow__controls-zoomin",title:"zoom in","aria-label":"zoom in",disabled:x},u.createElement(BP,null)),u.createElement(WP,{onClick:()=>{w(),null==a||a()},className:"react-flow__controls-zoomout",title:"zoom out","aria-label":"zoom out",disabled:b},u.createElement(UP,null))),n&&u.createElement(WP,{className:"react-flow__controls-fitview",onClick:()=>{k(s),null==l||l()},title:"fit view","aria-label":"fit view"},u.createElement($P,null)),r&&u.createElement(WP,{className:"react-flow__controls-interactive",onClick:()=>{p.setState({nodesDraggable:!y,nodesConnectable:!y,elementsSelectable:!y}),null==c||c(!y)},title:"toggle interactivity","aria-label":"toggle interactivity"},y?u.createElement(HP,null):u.createElement(VP,null)),h)};qP.displayName="Controls";var YP,JP,XP=o.memo(qP);function KP({color:e,dimensions:t,lineWidth:n}){return u.createElement("path",{stroke:e,strokeWidth:n,d:`M${t[0]/2} 0 V${t[1]} M0 ${t[1]/2} H${t[0]}`})}function ZP({color:e,radius:t}){return u.createElement("circle",{cx:t,cy:t,r:t,fill:e})}(JP=YP||(YP={})).Lines="lines",JP.Dots="dots",JP.Cross="cross";const QP={[YP.Dots]:"#91919a",[YP.Lines]:"#eee",[YP.Cross]:"#e2e2e2"},eL={[YP.Dots]:1,[YP.Lines]:1,[YP.Cross]:6},tL=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function nL({id:e,variant:t=YP.Dots,gap:n=20,size:r,lineWidth:s=1,offset:i=2,color:a,style:l,className:c}){const d=o.useRef(null),{transform:h,patternId:f}=sO(tL,CM),p=a||QP[t],m=r||eL[t],g=t===YP.Dots,y=t===YP.Cross,b=Array.isArray(n)?n:[n,n],x=[b[0]*h[2]||1,b[1]*h[2]||1],v=m*h[2],w=y?[v,v]:x,k=g?[v/i,v/i]:[w[0]/i,w[1]/i];return u.createElement("svg",{className:bM(["react-flow__background",c]),style:{...l,position:"absolute",width:"100%",height:"100%",top:0,left:0},ref:d,"data-testid":"rf__background"},u.createElement("pattern",{id:f+e,x:h[0]%x[0],y:h[1]%x[1],width:x[0],height:x[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${k[0]},-${k[1]})`},g?u.createElement(ZP,{color:p,radius:v/i}):u.createElement(KP,{dimensions:w,color:p,lineWidth:s})),u.createElement("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${f+e})`}))}nL.displayName="Background";var rL=o.memo(nL);function oL(e){return Math.min(11*e+35,200)}const sL=u.createContext("LR"),iL=o.memo((e=>{const t=C.c(51),{data:n,selected:r}=e,s=se(n.atom),i=Wi().inOrderIds.indexOf(s.id),a=r?"var(--gray-9)":"var(--gray-3)",l=sO(lL),c=o.useContext(sL);let d,u,h,f,p;if(t[0]!==s.code||t[1]!==a||t[2]!==c||t[3]!==r){const e=s.code.split("\n").length,n="LR"===c?UO.Left:UO.Top;let o;t[8]!==a?(o={background:a},t[8]=a,t[9]=o):o=t[9],t[10]!==n||t[11]!==o?(h=N.jsx(ND,{type:"target",id:"inputs",position:n,style:o}),t[10]=n,t[11]=o,t[12]=h):h=t[12];const i="LR"===c?UO.Left:UO.Top;let l;t[13]!==a?(l={background:a},t[13]=a,t[14]=l):l=t[14],t[15]!==i||t[16]!==l?(f=N.jsx(ND,{type:"source",id:"inputs",position:i,style:l}),t[15]=i,t[16]=l,t[17]=f):f=t[17];const p=r&&"border-primary";t[18]!==p?(u=An("flex flex-col bg-card border border-input/50 rounded-md mx-[2px] overflow-hidden",p),t[18]=p,t[19]=u):u=t[19],d=oL(e),t[0]=s.code,t[1]=a,t[2]=c,t[3]=r,t[4]=d,t[5]=u,t[6]=h,t[7]=f}else d=t[4],u=t[5],h=t[6],f=t[7];var m;let g;t[20]!==n.forceWidth||t[21]!==l?(p=n.forceWidth||(m=l,Math.min(Math.max(m-100,100),400)),t[20]=n.forceWidth,t[21]=l,t[22]=p):p=t[22],t[23]!==d||t[24]!==p?(g={height:d,width:p},t[23]=d,t[24]=p,t[25]=g):g=t[25];const y=Gi(s.name,i);let b,x,v;t[26]!==y?(b=N.jsx("div",{className:"text-muted-foreground font-semibold text-xs py-1 px-2 bg-muted border-b",children:y}),t[26]=y,t[27]=b):b=t[27],t[28]!==s.code?(x=N.jsx(kc,{code:s.code}),t[28]=s.code,t[29]=x):x=t[29],t[30]!==u||t[31]!==g||t[32]!==b||t[33]!==x?(v=N.jsxs("div",{className:u,style:g,children:[b,x]}),t[30]=u,t[31]=g,t[32]=b,t[33]=x,t[34]=v):v=t[34];const w="LR"===c?UO.Right:UO.Bottom;let k,S;t[35]!==a?(k={background:a},t[35]=a,t[36]=k):k=t[36],t[37]!==w||t[38]!==k?(S=N.jsx(ND,{type:"source",id:"outputs",position:w,style:k}),t[37]=w,t[38]=k,t[39]=S):S=t[39];const E="LR"===c?UO.Right:UO.Bottom;let j,_,I;return t[40]!==a?(j={background:a},t[40]=a,t[41]=j):j=t[41],t[42]!==E||t[43]!==j?(_=N.jsx(ND,{type:"target",id:"outputs",position:E,style:j}),t[42]=E,t[43]=j,t[44]=_):_=t[44],t[45]!==v||t[46]!==S||t[47]!==_||t[48]!==h||t[49]!==f?(I=N.jsxs("div",{children:[h,f,v,S,_]}),t[45]=v,t[46]=S,t[47]=_,t[48]=h,t[49]=f,t[50]=I):I=t[50],I}),((e,t)=>["data","selected","id"].every((n=>e[n]===t[n]))));iL.displayName="CustomNode";const aL={custom:iL};function lL(e){const{width:t}=e;return t}const cL=e=>{const t=C.c(18),{maxCount:n,cellIds:r,onClick:o,skipScroll:s}=e,i=Wi();let a,l,c,d;if(t[0]!==r||t[1]!==i.inOrderIds||t[2]!==n||t[3]!==o||t[4]!==s){c=Symbol.for("react.early_return_sentinel");e:{let e;t[8]!==i.inOrderIds?(e=(e,t)=>i.inOrderIds.indexOf(e)-i.inOrderIds.indexOf(t),t[8]=i.inOrderIds,t[9]=e):e=t[9];const d=[...r].sort(e);if(0===r.length){let e;t[10]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx("div",{className:"text-muted-foreground",children:"--"}),t[10]=e):e=t[10],c=e;break e}let u;t[11]!==r.length||t[12]!==o||t[13]!==s?(u=(e,t)=>N.jsxs("span",{className:"truncate",children:[N.jsx(qi,{variant:"focus",cellId:e,skipScroll:s,className:"whitespace-nowrap",onClick:o?()=>o(e):void 0},e),tn&&N.jsxs(Pn,{children:[N.jsx(hs,{asChild:!0,children:N.jsxs("span",{className:"whitespace-nowrap text-muted-foreground text-xs hover:underline cursor-pointer",children:["+",r.length-n," more"]})}),N.jsx(On,{className:"w-auto",children:N.jsx("div",{className:"flex flex-col gap-1 py-1",children:d.slice(n).map((e=>N.jsx(qi,{variant:"focus",cellId:e,className:"whitespace-nowrap",onClick:o?()=>o(e):void 0},e)))})})]})}t[0]=r,t[1]=i.inOrderIds,t[2]=n,t[3]=o,t[4]=s,t[5]=a,t[6]=l,t[7]=c}else a=t[5],l=t[6],c=t[7];return c!==Symbol.for("react.early_return_sentinel")?c:(t[15]!==a||t[16]!==l?(d=N.jsxs(N.Fragment,{children:[a,l]}),t[15]=a,t[16]=l,t[17]=d):d=t[17],d)},dL=e=>{const t=C.c(15);let n,r,o,s;t[0]!==e?(({name:r,declaredBy:n,onClick:o,...s}=e),t[0]=e,t[1]=n,t[2]=r,t[3]=o,t[4]=s):(n=t[1],r=t[2],o=t[3],s=t[4]);const i=n.length>1?"destructive":"outline";let a,l,c;return t[5]!==r||t[6]!==o?(a=async e=>{o?o(e):(await nt(r),ee({title:"Copied to clipboard"}))},t[5]=r,t[6]=o,t[7]=a):a=t[7],t[8]!==r||t[9]!==i||t[10]!==a?(l=N.jsx(Yi,{title:r,variant:i,className:"rounded-sm text-ellipsis block overflow-hidden max-w-fit cursor-pointer font-medium",onClick:a,children:r}),t[8]=r,t[9]=i,t[10]=a,t[11]=l):l=t[11],t[12]!==s||t[13]!==l?(c=N.jsx("div",{className:"max-w-[130px]",...s,children:l}),t[12]=s,t[13]=l,t[14]=c):c=t[14],c},uL=o.memo((e=>{const t=C.c(38),{onChange:n,view:r,settings:o,onSettingsChange:s}=e;let i;t[0]!==s||t[1]!==o?(i=(e,t)=>{s({...o,[e]:t})},t[0]=s,t[1]=o,t[2]=i):i=t[2];const a=i;let l,c,d,u,h,f;t[3]===Symbol.for("react.memo_cache_sentinel")?(l=N.jsx(hs,{asChild:!0,children:N.jsx(J,{variant:"text",size:"xs",children:N.jsx(Yt,{className:"w-4 h-4"})})}),t[3]=l):l=t[3],t[4]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsx("div",{className:"font-semibold pb-4",children:"Settings"}),t[4]=c):c=t[4],t[5]!==a?(d=e=>a("hidePureMarkdown",Boolean(e)),t[5]=a,t[6]=d):d=t[6],t[7]!==o.hidePureMarkdown||t[8]!==d?(u=N.jsx(Os,{"data-testid":"hide-pure-markdown-checkbox",id:"hide-pure-markdown",checked:o.hidePureMarkdown,onCheckedChange:d}),t[7]=o.hidePureMarkdown,t[8]=d,t[9]=u):u=t[9],t[10]===Symbol.for("react.memo_cache_sentinel")?(h=N.jsx(Me,{htmlFor:"hide-pure-markdown",children:"Hide pure markdown"}),t[10]=h):h=t[10],t[11]!==u?(f=N.jsxs(Pn,{children:[l,N.jsxs(On,{className:"w-auto p-2 text-muted-foreground",children:[c,N.jsxs("div",{className:"flex items-center gap-2",children:[u,h]})]})]}),t[11]=u,t[12]=f):f=t[12];const p=f,m="_minimap_"===r;let g,y,b;t[13]!==n?(g=()=>n("_minimap_"),t[13]=n,t[14]=g):g=t[14],t[15]===Symbol.for("react.memo_cache_sentinel")?(y=N.jsx(Ad,{className:"w-4 h-4 mr-1"}),t[15]=y):y=t[15],t[16]!==m||t[17]!==g?(b=N.jsxs(J,{variant:"outline",className:"bg-background","aria-selected":m,size:"xs",onClick:g,children:[y,"Mini Map"]}),t[16]=m,t[17]=g,t[18]=b):b=t[18];const x="TB"===r;let v,w,k;t[19]!==n?(v=()=>n("TB"),t[19]=n,t[20]=v):v=t[20],t[21]===Symbol.for("react.memo_cache_sentinel")?(w=N.jsx(yd,{className:"w-4 h-4 mr-1"}),t[21]=w):w=t[21],t[22]!==x||t[23]!==v?(k=N.jsxs(J,{variant:"outline",className:"bg-background","aria-selected":x,size:"xs",onClick:v,children:[w,"Vertical Tree"]}),t[22]=x,t[23]=v,t[24]=k):k=t[24];const S="LR"===r;let E,j,_,I;t[25]!==n?(E=()=>n("LR"),t[25]=n,t[26]=E):E=t[26],t[27]===Symbol.for("react.memo_cache_sentinel")?(j=N.jsx(yd,{className:"w-4 h-4 mr-1 transform -rotate-90"}),t[27]=j):j=t[27],t[28]!==S||t[29]!==E?(_=N.jsxs(J,{variant:"outline",className:"bg-background","aria-selected":S,size:"xs",onClick:E,children:[j," ","Horizontal Tree"]}),t[28]=S,t[29]=E,t[30]=_):_=t[30],t[31]!==b||t[32]!==k||t[33]!==_?(I=N.jsxs("div",{className:"flex gap-2",children:[b,k,_]}),t[31]=b,t[32]=k,t[33]=_,t[34]=I):I=t[34];const A="_minimap_"!==r&&p;let T;return t[35]!==I||t[36]!==A?(T=N.jsxs(lO,{position:"top-right",className:"flex flex-col items-end gap-2",children:[I,A]}),t[35]=I,t[36]=A,t[37]=T):T=t[37],T}));uL.displayName="GraphToolbar";const hL=o.memo((e=>{const t=C.c(11),{selection:n,variables:r,onClearSelection:o}=e;if(!n)return null;const s=fL;let i;t[0]!==o||t[1]!==n.id||t[2]!==n.source||t[3]!==n.target||t[4]!==n.type||t[5]!==r?(i=()=>{if("node"===n.type){const e=Object.values(r).filter((e=>e.usedBy.includes(n.id))),t=Object.values(r).filter((e=>e.declaredBy.includes(n.id))),i=(e,t)=>N.jsxs(N.Fragment,{children:[0===e.length&&N.jsx("div",{className:"text-muted-foreground text-sm text-center",children:"--"}),N.jsx("div",{className:"grid grid-cols-5 gap-3 items-center text-sm py-1 flex-1 empty:hidden",children:e.map((e=>N.jsxs(u.Fragment,{children:[N.jsx(dL,{declaredBy:e.declaredBy,name:e.name}),N.jsxs("div",{className:"truncate col-span-2",title:e.value??"",children:[e.value,N.jsxs("span",{className:"ml-1 truncate text-foreground/60 font-mono",children:["(",e.dataType,")"]})]}),N.jsx("div",{className:"truncate col-span-2 gap-1 items-center",children:N.jsx(cL,{skipScroll:!0,onClick:()=>s("in"===t?e.declaredBy[0]:e.usedBy[0],e.name),maxCount:3,cellIds:e.usedBy})})]},e.name)))})]});return N.jsxs(N.Fragment,{children:[N.jsxs("div",{className:"font-bold py-2 flex items-center gap-2 border-b px-3",children:[N.jsx(mt,{className:"w-5 h-5"}),N.jsx(qi,{cellId:n.id}),N.jsx("div",{className:"flex-1"}),N.jsx(Kw,{cellId:n.id,children:N.jsx(J,{variant:"ghost",size:"icon",children:N.jsx(Zc,{className:"w-4 h-4"})})}),N.jsx(J,{variant:"text",size:"icon",onClick:()=>{o()},children:N.jsx(Cn,{className:"w-4 h-4"})})]}),N.jsxs("div",{className:"text-sm flex flex-col py-3 pl-2 pr-4 flex-1 justify-center",children:[N.jsxs("div",{className:"flex flex-col gap-2",children:[N.jsxs("span",{className:"flex items-center gap-2 font-semibold",children:[N.jsx(Dc,{className:"w-4 h-4"}),"Outputs"]}),i(t,"out")]}),N.jsx("hr",{className:"border-divider my-3"}),N.jsxs("div",{className:"flex flex-col gap-2",children:[N.jsxs("span",{className:"flex items-center gap-2 font-semibold",children:[N.jsx(Rc,{className:"w-4 h-4"}),"Inputs"]}),i(e,"in")]})]})]})}if("edge"===n.type){const e=Object.values(r).filter((e=>e.declaredBy.includes(n.source)&&e.usedBy.includes(n.target)));return N.jsxs(N.Fragment,{children:[N.jsxs("div",{className:"font-bold py-2 flex items-center gap-2 border-b px-3",children:[N.jsx(Jd,{className:"w-4 h-4"}),N.jsx(qi,{cellId:n.source}),N.jsx(Pc,{className:"w-4 h-4"}),N.jsx(qi,{cellId:n.target})]}),N.jsx("div",{className:"grid grid-cols-4 gap-3 max-w-[350px] items-center text-sm p-3 flex-1",children:e.map((e=>N.jsxs(u.Fragment,{children:[N.jsx(dL,{declaredBy:e.declaredBy,name:e.name,onClick:()=>{s(e.declaredBy[0],e.name)}}),N.jsx("div",{className:"truncate text-foreground/60 font-mono",children:e.dataType}),N.jsx("div",{className:"truncate col-span-2",title:e.value??"",children:e.value})]},e.name)))})]})}},t[0]=o,t[1]=n.id,t[2]=n.source,t[3]=n.target,t[4]=n.type,t[5]=r,t[6]=i):i=t[6];const a=i;let l,c;return t[7]!==a?(l=a(),t[7]=a,t[8]=l):l=t[8],t[9]!==l?(c=N.jsx(lO,{position:"bottom-left",className:"max-h-[90%] flex flex-col w-[calc(100%-5rem)]",children:N.jsx("div",{className:"min-h-[100px] shadow-md rounded-md border max-w-[550px] border-primary/40 my-4 min-w-[240px] bg-[var(--slate-1)] text-muted-foreground/80 flex flex-col overflow-y-auto",children:l})}),t[9]=l,t[10]=c):c=t[10],c}));function fL(e,t){const n=oe(e);n&&Ji(n,t)}function pL(){const e=C.c(7),t=dR(),n=sO(gL),r=sO(mL);let s;e[0]!==t?(s=()=>{t.fitView({duration:100})},e[0]=t,e[1]=s):s=e[1];const i=Xi(s,100);let a,l;e[2]!==i||e[3]!==r||e[4]!==n?(a=()=>{n&&r&&i()},l=[n,r,i],e[2]=i,e[3]=r,e[4]=n,e[5]=a,e[6]=l):(a=e[5],l=e[6]),o.useEffect(a,l)}function mL(e){const{height:t}=e;return t}function gL(e){const{width:t}=e;return t}hL.displayName="GraphSelectionPanel";const yL=new class{createEdge(e,t,n){return{type:"smoothstep",pathOptions:{offset:20,borderRadius:100},data:{direction:n},markerEnd:{type:FO.Arrow},id:`${e}-${t}-${n}`,source:e,sourceHandle:n,targetHandle:n,target:t}}createNode(e,t,n){return{id:e,data:{atom:t},width:250,type:"custom",height:oL(K.get(t).code.trim().split("\n").length),position:{x:0,y:n+20}}}createElements(e,t,n,r){let o=0;const s=[],i=[];for(const[l,c]of xi.zip(e,t)){const e=this.createNode(l,c,o);s.push(e),o=e.position.y+(e.height||0)}const a=new Set;for(const l of Object.values(n)){const{declaredBy:e,usedBy:t}=l;for(const n of e)for(const e of t){const t=`${n}-${e}`;a.has(t)||(a.add(t),i.push(this.createEdge(n,e,"inputs"),this.createEdge(n,e,"outputs")))}}return{nodes:s,edges:i}}},bL=e=>{const t=C.c(37),{cellIds:n,variables:r,cellAtoms:s,children:i}=e;let a;t[0]!==s||t[1]!==n||t[2]!==r?(a=yL.createElements(n,s,r,!1),t[0]=s,t[1]=n,t[2]=r,t[3]=a):a=t[3];const{nodes:l,edges:c}=a;let d;t[4]===Symbol.for("react.memo_cache_sentinel")?(d=[],t[4]=d):d=t[4];const[u,h]=FP(d),[f,p]=zP(l),[m,g]=o.useState(),[y,b]=o.useState(),x=o.useRef(!1);pL();const v=sO(xL);let w;t[5]!==h||t[6]!==p?(w=e=>{p(e.nodes),h([])},t[5]=h,t[6]=p,t[7]=w):w=t[7];const k=B(w);let S,E,j,_;t[8]!==s||t[9]!==n||t[10]!==k||t[11]!==r?(S=()=>{x.current?k(yL.createElements(n,s,r,!1)):x.current=!0},E=[n,r,s,k],t[8]=s,t[9]=n,t[10]=k,t[11]=r,t[12]=S,t[13]=E):(S=t[12],E=t[13]),o.useEffect(S,E),t[14]!==c||t[15]!==m||t[16]!==h?(j=()=>{if(m){const e=c.filter((e=>{const{source:t,target:n,data:r}=e;return t===m&&"outputs"===r.direction||n===m&&"inputs"===r.direction}));h(e)}},_=[m,h,c],t[14]=c,t[15]=m,t[16]=h,t[17]=j,t[18]=_):(j=t[17],_=t[18]),o.useEffect(j,_);const I=function(e,t){const n=C.c(17);let r,o;if(n[0]!==t||n[1]!==e){let r;n[3]!==t?(r=(e,n)=>{const{position:r}=n;return Math.min(e,r.y-t/2-10)},n[3]=t,n[4]=r):r=n[4],o=e.reduce(r,Number.POSITIVE_INFINITY),n[0]=t,n[1]=e,n[2]=o}else o=n[2];const s=o;let i;if(n[5]!==t||n[6]!==e){let r;n[8]!==t?(r=(e,n)=>{const{position:r}=n;return Math.max(e,r.y+t/2+10)},n[8]=t,n[9]=r):r=n[9],i=e.reduce(r,Number.NEGATIVE_INFINITY),n[5]=t,n[6]=e,n[7]=i}else i=n[7];const a=i;let l,c,d;n[10]!==s?(l=[Number.NEGATIVE_INFINITY,s],n[10]=s,n[11]=l):l=n[11];n[12]!==a?(c=[Number.POSITIVE_INFINITY,a],n[12]=a,n[13]=c):c=n[13];n[14]!==l||n[15]!==c?(d=[l,c],n[14]=l,n[15]=c,n[16]=d):d=n[16];return r=d,r}(f,v);let A;t[19]===Symbol.for("react.memo_cache_sentinel")?(A=()=>{g(void 0),b(void 0)},t[19]=A):A=t[19];const T=A;let M;t[20]!==u||t[21]!==y||t[22]!==m||t[23]!==r?(M=()=>y?N.jsx(hL,{selection:{type:"edge",source:y.source,target:y.target},onClearSelection:T,variables:r,edges:u}):m?N.jsx(hL,{selection:{type:"node",id:m},variables:r,edges:u,onClearSelection:T}):null,t[20]=u,t[21]=y,t[22]=m,t[23]=r,t[24]=M):M=t[24];const O=M;let D,R,P,L;return t[25]!==h?(D=(e,t)=>{const n=t.id;g(n),b(void 0),h([])},t[25]=h,t[26]=D):D=t[26],t[27]===Symbol.for("react.memo_cache_sentinel")?(R=(e,t)=>{b(t)},t[27]=R):R=t[27],t[28]!==O?(P=O(),t[28]=O,t[29]=P):P=t[29],t[30]!==i||t[31]!==u||t[32]!==f||t[33]!==D||t[34]!==P||t[35]!==I?(L=N.jsxs(PP,{nodes:f,edges:u,nodeTypes:aL,translateExtent:I,onNodeClick:D,onNodeDoubleClick:vL,onEdgeClick:R,snapToGrid:!0,fitView:!0,elementsSelectable:!0,minZoom:1,maxZoom:1,draggable:!1,panOnScrollMode:OO.Vertical,zoomOnDoubleClick:!1,nodesDraggable:!1,nodesConnectable:!1,nodesFocusable:!1,edgesFocusable:!1,selectNodesOnDrag:!1,panOnDrag:!1,preventScrolling:!1,zoomOnPinch:!1,panOnScroll:!0,autoPanOnNodeDrag:!1,autoPanOnConnect:!1,children:[P,i]}),t[30]=i,t[31]=u,t[32]=f,t[33]=D,t[34]=P,t[35]=I,t[36]=L):L=t[36],L};function xL(e){const{height:t}=e;return t}function vL(e,t){Ki(t.id,"focus")}var wL,kL,SL,CL,EL,NL,jL,_L,IL,AL,TL,ML,OL,DL,RL,PL,LL,zL,FL,BL,UL,$L,VL,HL,WL,GL,qL,YL,JL,XL,KL,ZL,QL,ez,tz,nz,rz,oz,sz,iz,az,lz,cz,dz,uz,hz,fz,pz,mz,gz,yz,bz,xz,vz,wz,kz,Sz,Cz,Ez,Nz,jz,_z,Iz,Az,Tz,Mz,Oz,Dz,Rz,Pz,Lz,zz,Fz,Bz,Uz,$z,Vz,Hz,Wz,Gz,qz,Yz,Jz,Xz,Kz,Zz,Qz,eF,tF,nF,rF,oF,sF,iF;function aF(){if(kL)return wL;kL=1;var e="\0";function t(e,t){e[t]?e[t]++:e[t]=1}function r(e,t){--e[t]||delete e[t]}function o(e,t,n,r){var o=""+t,s=""+n;if(!e&&o>s){var i=o;o=s,s=i}return o+""+s+""+(void 0===r?"\0":r)}function s(e,t){return o(e,t.v,t.w,t.name)}return wL=class{constructor(t){n(this,"_isDirected",!0),n(this,"_isMultigraph",!1),n(this,"_isCompound",!1),n(this,"_label"),n(this,"_defaultNodeLabelFn",(()=>{})),n(this,"_defaultEdgeLabelFn",(()=>{})),n(this,"_nodes",{}),n(this,"_in",{}),n(this,"_preds",{}),n(this,"_out",{}),n(this,"_sucs",{}),n(this,"_edgeObjs",{}),n(this,"_edgeLabels",{}),n(this,"_nodeCount",0),n(this,"_edgeCount",0),n(this,"_parent"),n(this,"_children"),t&&(this._isDirected=!Object.hasOwn(t,"directed")||t.directed,this._isMultigraph=!!Object.hasOwn(t,"multigraph")&&t.multigraph,this._isCompound=!!Object.hasOwn(t,"compound")&&t.compound),this._isCompound&&(this._parent={},this._children={},this._children[e]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(e){return this._label=e,this}graph(){return this._label}setDefaultNodeLabel(e){return this._defaultNodeLabelFn=e,"function"!=typeof e&&(this._defaultNodeLabelFn=()=>e),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var e=this;return this.nodes().filter((t=>0===Object.keys(e._in[t]).length))}sinks(){var e=this;return this.nodes().filter((t=>0===Object.keys(e._out[t]).length))}setNodes(e,t){var n=arguments,r=this;return e.forEach((function(e){n.length>1?r.setNode(e,t):r.setNode(e)})),this}setNode(t,n){return Object.hasOwn(this._nodes,t)?(arguments.length>1&&(this._nodes[t]=n),this):(this._nodes[t]=arguments.length>1?n:this._defaultNodeLabelFn(t),this._isCompound&&(this._parent[t]=e,this._children[t]={},this._children[e][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return Object.hasOwn(this._nodes,e)}removeNode(e){var t=this;if(Object.hasOwn(this._nodes,e)){var n=e=>t.removeEdge(t._edgeObjs[e]);delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],this.children(e).forEach((function(e){t.setParent(e)})),delete this._children[e]),Object.keys(this._in[e]).forEach(n),delete this._in[e],delete this._preds[e],Object.keys(this._out[e]).forEach(n),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(t,n){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(void 0===n)n=e;else{for(var r=n+="";void 0!==r;r=this.parent(r))if(r===t)throw new Error("Setting "+n+" as parent of "+t+" would create a cycle");this.setNode(n)}return this.setNode(t),this._removeFromParentsChildList(t),this._parent[t]=n,this._children[n][t]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(t){if(this._isCompound){var n=this._parent[t];if(n!==e)return n}}children(t=e){if(this._isCompound){var n=this._children[t];if(n)return Object.keys(n)}else{if(t===e)return this.nodes();if(this.hasNode(t))return[]}}predecessors(e){var t=this._preds[e];if(t)return Object.keys(t)}successors(e){var t=this._sucs[e];if(t)return Object.keys(t)}neighbors(e){var t=this.predecessors(e);if(t){const r=new Set(t);for(var n of this.successors(e))r.add(n);return Array.from(r.values())}}isLeaf(e){return 0===(this.isDirected()?this.successors(e):this.neighbors(e)).length}filterNodes(e){var t=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});t.setGraph(this.graph());var n=this;Object.entries(this._nodes).forEach((function([n,r]){e(n)&&t.setNode(n,r)})),Object.values(this._edgeObjs).forEach((function(e){t.hasNode(e.v)&&t.hasNode(e.w)&&t.setEdge(e,n.edge(e))}));var r={};function o(e){var s=n.parent(e);return void 0===s||t.hasNode(s)?(r[e]=s,s):s in r?r[s]:o(s)}return this._isCompound&&t.nodes().forEach((e=>t.setParent(e,o(e)))),t}setDefaultEdgeLabel(e){return this._defaultEdgeLabelFn=e,"function"!=typeof e&&(this._defaultEdgeLabelFn=()=>e),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(e,t){var n=this,r=arguments;return e.reduce((function(e,o){return r.length>1?n.setEdge(e,o,t):n.setEdge(e,o),o})),this}setEdge(){var e,n,r,s,i=!1,a=arguments[0];"object"==typeof a&&null!==a&&"v"in a?(e=a.v,n=a.w,r=a.name,2===arguments.length&&(s=arguments[1],i=!0)):(e=a,n=arguments[1],r=arguments[3],arguments.length>2&&(s=arguments[2],i=!0)),e=""+e,n=""+n,void 0!==r&&(r=""+r);var l=o(this._isDirected,e,n,r);if(Object.hasOwn(this._edgeLabels,l))return i&&(this._edgeLabels[l]=s),this;if(void 0!==r&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(n),this._edgeLabels[l]=i?s:this._defaultEdgeLabelFn(e,n,r);var c=function(e,t,n,r){var o=""+t,s=""+n;if(!e&&o>s){var i=o;o=s,s=i}var a={v:o,w:s};r&&(a.name=r);return a}(this._isDirected,e,n,r);return e=c.v,n=c.w,Object.freeze(c),this._edgeObjs[l]=c,t(this._preds[n],e),t(this._sucs[e],n),this._in[n][l]=c,this._out[e][l]=c,this._edgeCount++,this}edge(e,t,n){var r=1===arguments.length?s(this._isDirected,arguments[0]):o(this._isDirected,e,t,n);return this._edgeLabels[r]}edgeAsObj(){const e=this.edge(...arguments);return"object"!=typeof e?{label:e}:e}hasEdge(e,t,n){var r=1===arguments.length?s(this._isDirected,arguments[0]):o(this._isDirected,e,t,n);return Object.hasOwn(this._edgeLabels,r)}removeEdge(e,t,n){var i=1===arguments.length?s(this._isDirected,arguments[0]):o(this._isDirected,e,t,n),a=this._edgeObjs[i];return a&&(e=a.v,t=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],r(this._preds[t],e),r(this._sucs[e],t),delete this._in[t][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,t){var n=this._in[e];if(n){var r=Object.values(n);return t?r.filter((e=>e.v===t)):r}}outEdges(e,t){var n=this._out[e];if(n){var r=Object.values(n);return t?r.filter((e=>e.w===t)):r}}nodeEdges(e,t){var n=this.inEdges(e,t);if(n)return n.concat(this.outEdges(e,t))}},wL}function lF(){if(_L)return jL;_L=1;var e=aF();function t(e){return e.nodes().map((function(t){var n=e.node(t),r=e.parent(t),o={v:t};return void 0!==n&&(o.value=n),void 0!==r&&(o.parent=r),o}))}function n(e){return e.edges().map((function(t){var n=e.edge(t),r={v:t.v,w:t.w};return void 0!==t.name&&(r.name=t.name),void 0!==n&&(r.value=n),r}))}return jL={write:function(e){var r={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:t(e),edges:n(e)};void 0!==e.graph()&&(r.value=structuredClone(e.graph()));return r},read:function(t){var n=new e(t.options).setGraph(t.value);return t.nodes.forEach((function(e){n.setNode(e.v,e.value),e.parent&&n.setParent(e.v,e.parent)})),t.edges.forEach((function(e){n.setEdge({v:e.v,w:e.w,name:e.name},e.value)})),n}}}function cF(){if(AL)return IL;return AL=1,IL=function(e){var t,n={},r=[];function o(r){Object.hasOwn(n,r)||(n[r]=!0,t.push(r),e.successors(r).forEach(o),e.predecessors(r).forEach(o))}return e.nodes().forEach((function(e){t=[],o(e),t.length&&r.push(t)})),r}}function dF(){if(ML)return TL;ML=1;return TL=class{constructor(){n(this,"_arr",[]),n(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map((function(e){return e.key}))}has(e){return Object.hasOwn(this._keyIndices,e)}priority(e){var t=this._keyIndices[e];if(void 0!==t)return this._arr[t].priority}min(){if(0===this.size())throw new Error("Queue underflow");return this._arr[0].key}add(e,t){var n=this._keyIndices;if(e=String(e),!Object.hasOwn(n,e)){var r=this._arr,o=r.length;return n[e]=o,r.push({key:e,priority:t}),this._decrease(o),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key}decrease(e,t){var n=this._keyIndices[e];if(t>this._arr[n].priority)throw new Error("New priority is greater than current priority. Key: "+e+" Old: "+this._arr[n].priority+" New: "+t);this._arr[n].priority=t,this._decrease(n)}_heapify(e){var t=this._arr,n=2*e,r=n+1,o=e;n>1].priority0&&(s=l.removeMin(),(i=a[s]).distance!==Number.POSITIVE_INFINITY);)o(s).forEach(c);return a}(n,String(r),o||t,s||function(e){return n.outEdges(e)})};var t=()=>1;return OL}function hF(){if(PL)return RL;PL=1;var e=uF();return RL=function(t,n,r){return t.nodes().reduce((function(o,s){return o[s]=e(t,s,n,r),o}),{})}}function fF(){if(zL)return LL;return zL=1,LL=function(e){var t=0,n=[],r={},o=[];function s(i){var a=r[i]={onStack:!0,lowlink:t,index:t++};if(n.push(i),e.successors(i).forEach((function(e){Object.hasOwn(r,e)?r[e].onStack&&(a.lowlink=Math.min(a.lowlink,r[e].index)):(s(e),a.lowlink=Math.min(a.lowlink,r[e].lowlink))})),a.lowlink===a.index){var l,c=[];do{l=n.pop(),r[l].onStack=!1,c.push(l)}while(i!==l);o.push(c)}}return e.nodes().forEach((function(e){Object.hasOwn(r,e)||s(e)})),o}}function pF(){if(BL)return FL;BL=1;var e=fF();return FL=function(t){return e(t).filter((function(e){return e.length>1||1===e.length&&t.hasEdge(e[0],e[0])}))}}function mF(){if($L)return UL;$L=1,UL=function(t,n,r){return function(e,t,n){var r={},o=e.nodes();return o.forEach((function(e){r[e]={},r[e][e]={distance:0},o.forEach((function(t){e!==t&&(r[e][t]={distance:Number.POSITIVE_INFINITY})})),n(e).forEach((function(n){var o=n.v===e?n.w:n.v,s=t(n);r[e][o]={distance:s,predecessor:e}}))})),o.forEach((function(e){var t=r[e];o.forEach((function(n){var s=r[n];o.forEach((function(n){var r=s[e],o=t[n],i=s[n],a=r.distance+o.distance;a1;return UL}function gF(){if(HL)return VL;function e(e){var n={},r={},o=[];if(e.sinks().forEach((function s(i){if(Object.hasOwn(r,i))throw new t;Object.hasOwn(n,i)||(r[i]=!0,n[i]=!0,e.predecessors(i).forEach(s),delete r[i],o.push(i))})),Object.keys(n).length!==e.nodeCount())throw new t;return o}HL=1;class t extends Error{constructor(){super(...arguments)}}return VL=e,e.CycleException=t,VL}function yF(){if(GL)return WL;GL=1;var e=gF();return WL=function(t){try{e(t)}catch(LY){if(LY instanceof e.CycleException)return!1;throw LY}return!0}}function bF(){if(YL)return qL;function e(e,t,r,o){for(var s=[[e,!1]];s.length>0;){var i=s.pop();i[1]?o.push(i[0]):Object.hasOwn(r,i[0])||(r[i[0]]=!0,s.push([i[0],!0]),n(t(i[0]),(e=>s.push([e,!1]))))}}function t(e,t,r,o){for(var s=[e];s.length>0;){var i=s.pop();Object.hasOwn(r,i)||(r[i]=!0,o.push(i),n(t(i),(e=>s.push(e))))}}function n(e,t){for(var n=e.length;n--;)t(e[n],n,e);return e}return YL=1,qL=function(n,r,o){Array.isArray(r)||(r=[r]);var s=n.isDirected()?e=>n.successors(e):e=>n.neighbors(e),i="post"===o?e:t,a=[],l={};return r.forEach((e=>{if(!n.hasNode(e))throw new Error("Graph does not have node: "+e);i(e,s,l,a)})),a}}function xF(){if(XL)return JL;XL=1;var e=bF();return JL=function(t,n){return e(t,n,"post")}}function vF(){if(ZL)return KL;ZL=1;var e=bF();return KL=function(t,n){return e(t,n,"pre")}}function wF(){if(ez)return QL;ez=1;var e=aF(),t=dF();return QL=function(n,r){var o,s=new e,i={},a=new t;function l(e){var t=e.v===o?e.w:e.v,n=a.priority(t);if(void 0!==n){var s=r(e);s0;){if(o=a.removeMin(),Object.hasOwn(i,o))s.setEdge(o,i[o]);else{if(c)throw new Error("Input graph is not connected: "+n);c=!0}n.nodeEdges(o).forEach(l)}return s}}function kF(){if(oz)return rz;oz=1;var e=NL?EL:(NL=1,EL={Graph:aF(),version:CL?SL:(CL=1,SL="2.2.4")});return rz={Graph:e.Graph,json:lF(),alg:nz?tz:(nz=1,tz={components:cF(),dijkstra:uF(),dijkstraAll:hF(),findCycles:pF(),floydWarshall:mF(),isAcyclic:yF(),postorder:xF(),preorder:vF(),prim:wF(),tarjan:fF(),topsort:gF()}),version:e.version}}function SF(){if(lz)return az;lz=1;let e=kF().Graph,t=function(){if(iz)return sz;function e(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function t(e,t){if("_next"!==e&&"_prev"!==e)return t}return iz=1,sz=class{constructor(){let e={};e._next=e._prev=e,this._sentinel=e}dequeue(){let t=this._sentinel,n=t._prev;if(n!==t)return e(n),n}enqueue(t){let n=this._sentinel;t._prev&&t._next&&e(t),t._next=n._next,n._next._prev=t,n._next=t,t._prev=n}toString(){let e=[],n=this._sentinel,r=n._prev;for(;r!==n;)e.push(JSON.stringify(r,t)),r=r._prev;return"["+e.join(", ")+"]"}}}();az=function(s,i){if(s.nodeCount()<=1)return[];let a=function(n,r){let s=new e,i=0,a=0;n.nodes().forEach((e=>{s.setNode(e,{v:e,in:0,out:0})})),n.edges().forEach((e=>{let t=s.edge(e.v,e.w)||0,n=r(e),o=t+n;s.setEdge(e.v,e.w,o),a=Math.max(a,s.node(e.v).out+=n),i=Math.max(i,s.node(e.w).in+=n)}));let l=function(e){const t=[];for(let n=0;nnew t)),c=i+1;return s.nodes().forEach((e=>{o(l,c,s.node(e))})),{graph:s,buckets:l,zeroIdx:c}}(s,i||n);return function(e,t,n){let o,s=[],i=t[t.length-1],a=t[0];for(;e.nodeCount();){for(;o=a.dequeue();)r(e,t,n,o);for(;o=i.dequeue();)r(e,t,n,o);if(e.nodeCount())for(let i=t.length-2;i>0;--i)if(o=t[i].dequeue(),o){s=s.concat(r(e,t,n,o,!0));break}}return s}(a.graph,a.buckets,a.zeroIdx).flatMap((e=>s.outEdges(e.v,e.w)))};let n=()=>1;function r(e,t,n,r,s){let i=s?[]:void 0;return e.inEdges(r.v).forEach((r=>{let a=e.edge(r),l=e.node(r.v);s&&i.push({v:r.v,w:r.w}),l.out-=a,o(t,n,l)})),e.outEdges(r.v).forEach((r=>{let s=e.edge(r),i=r.w,a=e.node(i);a.in-=s,o(t,n,a)})),e.removeNode(r.v),i}function o(e,t,n){n.out?n.in?e[n.out-n.in+t].enqueue(n):e[e.length-1].enqueue(n):e[0].enqueue(n)}return az}function CF(){if(dz)return cz;dz=1;let e=kF().Graph;function t(e,t,n,r){let o;do{o=i(r)}while(e.hasNode(o));return n.dummy=t,e.setNode(o,n),o}cz={addBorderNode:function(e,n,r,o){let s={width:0,height:0};arguments.length>=4&&(s.rank=r,s.order=o);return t(e,"border",s,n)},addDummyNode:t,applyWithChunking:r,asNonCompoundGraph:function(t){let n=new e({multigraph:t.isMultigraph()}).setGraph(t.graph());return t.nodes().forEach((e=>{t.children(e).length||n.setNode(e,t.node(e))})),t.edges().forEach((e=>{n.setEdge(e,t.edge(e))})),n},buildLayerMatrix:function(e){let t=a(o(e)+1).map((()=>[]));return e.nodes().forEach((n=>{let r=e.node(n),o=r.rank;void 0!==o&&(t[o][r.order]=n)})),t},intersectRect:function(e,t){let n,r,o=e.x,s=e.y,i=t.x-o,a=t.y-s,l=e.width/2,c=e.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");Math.abs(a)*l>Math.abs(i)*c?(a<0&&(c=-c),n=c*i/a,r=c):(i<0&&(l=-l),n=l,r=l*a/i);return{x:o+n,y:s+r}},mapValues:function(e,t){let n=t;"string"==typeof t&&(n=e=>e[t]);return Object.entries(e).reduce(((e,[t,r])=>(e[t]=n(r,t),e)),{})},maxRank:o,normalizeRanks:function(e){let t=e.nodes().map((t=>{let n=e.node(t).rank;return void 0===n?Number.MAX_VALUE:n})),n=r(Math.min,t);e.nodes().forEach((t=>{let r=e.node(t);Object.hasOwn(r,"rank")&&(r.rank-=n)}))},notime:function(e,t){return t()},partition:function(e,t){let n={lhs:[],rhs:[]};return e.forEach((e=>{t(e)?n.lhs.push(e):n.rhs.push(e)})),n},pick:function(e,t){const n={};for(const r of t)void 0!==e[r]&&(n[r]=e[r]);return n},predecessorWeights:function(e){let t=e.nodes().map((t=>{let n={};return e.inEdges(t).forEach((t=>{n[t.v]=(n[t.v]||0)+e.edge(t).weight})),n}));return l(e.nodes(),t)},range:a,removeEmptyRanks:function(e){let t=e.nodes().map((t=>e.node(t).rank)),n=r(Math.min,t),o=[];e.nodes().forEach((t=>{let r=e.node(t).rank-n;o[r]||(o[r]=[]),o[r].push(t)}));let s=0,i=e.graph().nodeRankFactor;Array.from(o).forEach(((t,n)=>{void 0===t&&n%i!=0?--s:void 0!==t&&s&&t.forEach((t=>e.node(t).rank+=s))}))},simplify:function(t){let n=(new e).setGraph(t.graph());return t.nodes().forEach((e=>n.setNode(e,t.node(e)))),t.edges().forEach((e=>{let r=n.edge(e.v,e.w)||{weight:0,minlen:1},o=t.edge(e);n.setEdge(e.v,e.w,{weight:r.weight+o.weight,minlen:Math.max(r.minlen,o.minlen)})})),n},successorWeights:function(e){let t=e.nodes().map((t=>{let n={};return e.outEdges(t).forEach((t=>{n[t.w]=(n[t.w]||0)+e.edge(t).weight})),n}));return l(e.nodes(),t)},time:function(e,t){let n=Date.now();try{return t()}finally{console.log(e+" time: "+(Date.now()-n)+"ms")}},uniqueId:i,zipObject:l};const n=65535;function r(e,t){if(t.length>n){const r=function(e,t=n){const r=[];for(let n=0;ne.apply(null,t))))}return e.apply(null,t)}function o(e){const t=e.nodes().map((t=>{let n=e.node(t).rank;return void 0===n?Number.MIN_VALUE:n}));return r(Math.max,t)}let s=0;function i(e){var t=++s;return toString(e)+t}function a(e,t,n=1){null==t&&(t=e,e=0);let r=e=>et(e[n]=t[r],e)),{})}return cz}function EF(){if(hz)return uz;hz=1;let e=SF(),t=CF().uniqueId;return uz={run:function(n){("greedy"===n.graph().acyclicer?e(n,(r=n,e=>r.edge(e).weight)):function(e){let t=[],n={},r={};function o(s){Object.hasOwn(r,s)||(r[s]=!0,n[s]=!0,e.outEdges(s).forEach((e=>{Object.hasOwn(n,e.w)?t.push(e):o(e.w)})),delete n[s])}return e.nodes().forEach(o),t}(n)).forEach((e=>{let r=n.edge(e);n.removeEdge(e),r.forwardName=e.name,r.reversed=!0,n.setEdge(e.w,e.v,r,t("rev"))}));var r},undo:function(e){e.edges().forEach((t=>{let n=e.edge(t);if(n.reversed){e.removeEdge(t);let r=n.forwardName;delete n.reversed,delete n.forwardName,e.setEdge(t.w,t.v,n,r)}}))}}}function NF(){if(pz)return fz;pz=1;let e=CF();return fz={run:function(t){t.graph().dummyChains=[],t.edges().forEach((n=>function(t,n){let r,o,s,i=n.v,a=t.node(i).rank,l=n.w,c=t.node(l).rank,d=n.name,u=t.edge(n),h=u.labelRank;if(c===a+1)return;for(t.removeEdge(n),s=0,++a;a{let n,r=e.node(t),o=r.edgeLabel;for(e.setEdge(r.edgeObj,o);r.dummy;)n=e.successors(t)[0],e.removeNode(t),o.points.push({x:r.x,y:r.y}),"edge-label"===r.dummy&&(o.x=r.x,o.y=r.y,o.width=r.width,o.height=r.height),t=n,r=e.node(t)}))}}}function jF(){if(gz)return mz;gz=1;const{applyWithChunking:e}=CF();return mz={longestPath:function(t){var n={};t.sources().forEach((function r(o){var s=t.node(o);if(Object.hasOwn(n,o))return s.rank;n[o]=!0;let i=t.outEdges(o).map((e=>null==e?Number.POSITIVE_INFINITY:r(e.w)-t.edge(e).minlen));var a=e(Math.min,i);return a===Number.POSITIVE_INFINITY&&(a=0),s.rank=a}))},slack:function(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}}}function _F(){if(bz)return yz;bz=1;var e=kF().Graph,t=jF().slack;function n(e,n){return e.nodes().forEach((function r(o){n.nodeEdges(o).forEach((s=>{var i=s.v,a=o===i?s.w:i;e.hasNode(a)||t(n,s)||(e.setNode(a,{}),e.setEdge(o,a,{}),r(a))}))})),e.nodeCount()}function r(e,n){return n.edges().reduce(((r,o)=>{let s=Number.POSITIVE_INFINITY;return e.hasNode(o.v)!==e.hasNode(o.w)&&(s=t(n,o)),st.node(e).rank+=n))}return yz=function(s){var i,a,l=new e({directed:!1}),c=s.nodes()[0],d=s.nodeCount();l.setNode(c,{});for(;n(l,s)function(e,t,n){var r=e.node(n),o=r.parent;e.edge(n,o).cutvalue=l(e,t,n)}(e,t,n)))}function l(e,t,n){var r=e.node(n).parent,o=!0,s=t.edge(n,r),i=0;return s||(o=!1,s=t.edge(r,n)),i=s.weight,t.nodeEdges(n).forEach((s=>{var a,l,c=s.v===n,d=c?s.w:s.v;if(d!==r){var u=c===o,h=t.edge(s).weight;if(i+=u?h:-h,a=n,l=d,e.hasEdge(a,l)){var f=e.edge(n,d).cutvalue;i+=u?-f:f}}})),i}function c(e,t){arguments.length<2&&(t=e.nodes()[0]),d(e,{},1,t)}function d(e,t,n,r,o){var s=n,i=e.node(r);return t[r]=!0,e.neighbors(r).forEach((o=>{Object.hasOwn(t,o)||(n=d(e,t,n,o,r))})),i.low=s,i.lim=n++,o?i.parent=o:delete i.parent,n}function u(e){return e.edges().find((t=>e.edge(t).cutvalue<0))}function h(e,n,r){var o=r.v,s=r.w;n.hasEdge(o,s)||(o=r.w,s=r.v);var i=e.node(o),a=e.node(s),l=i,c=!1;return i.lim>a.lim&&(l=a,c=!0),n.edges().filter((t=>c===p(e,e.node(t.v),l)&&c!==p(e,e.node(t.w),l))).reduce(((e,r)=>t(n,r)!t.node(e).parent)),o=r(e,n);(o=o.slice(1)).forEach((n=>{var r=e.node(n).parent,o=t.edge(n,r),s=!1;o||(o=t.edge(r,n),s=!0),t.node(n).rank=t.node(r).rank+(s?o.minlen:-o.minlen)}))}(e,t)}function p(e,t,n){return n.low<=t.lim&&t.lim<=n.lim}return xz=i,i.initLowLimValues=c,i.initCutValues=a,i.calcCutValue=l,i.leaveEdge=u,i.enterEdge=h,i.exchangeEdges=f,xz}function AF(){if(kz)return wz;kz=1;var e=jF().longestPath,t=_F(),n=IF();wz=function(n){switch(n.graph().ranker){case"network-simplex":default:o(n);break;case"tight-tree":!function(n){e(n),t(n)}(n);break;case"longest-path":r(n)}};var r=e;function o(e){n(e)}return wz}function TF(){if(Cz)return Sz;return Cz=1,Sz=function(e){let t=function(e){let t={},n=0;function r(o){let s=n;e.children(o).forEach(r),t[o]={low:s,lim:n++}}return e.children().forEach(r),t}(e);e.graph().dummyChains.forEach((n=>{let r=e.node(n),o=r.edgeObj,s=function(e,t,n,r){let o,s,i=[],a=[],l=Math.min(t[n].low,t[r].low),c=Math.max(t[n].lim,t[r].lim);o=n;do{o=e.parent(o),i.push(o)}while(o&&(t[o].low>l||c>t[o].lim));s=o,o=r;for(;(o=e.parent(o))!==s;)a.push(o);return{path:i.concat(a.reverse()),lca:s}}(e,t,o.v,o.w),i=s.path,a=s.lca,l=0,c=i[l],d=!0;for(;n!==o.w;){if(r=e.node(n),d){for(;(c=i[l])!==a&&e.node(c).maxRank{t(n,r,o,s,i,a,e);let c=n.node(e),h=c.borderTop?c.borderTop:e,f=c.borderBottom?c.borderBottom:e,p=c.borderTop?s:2*s,m=h!==f?1:i-a[l]+1;n.setEdge(d,h,{weight:p,minlen:m,nestingEdge:!0}),n.setEdge(f,u,{weight:p,minlen:m,nestingEdge:!0})})),n.parent(l)||n.setEdge(r,d,{weight:0,minlen:i+a[l]})}return Ez={run:function(n){let r=e.addDummyNode(n,"root",{},"_root"),o=function(e){var t={};function n(r,o){var s=e.children(r);s&&s.length&&s.forEach((e=>n(e,o+1))),t[r]=o}return e.children().forEach((e=>n(e,1))),t}(n),s=Object.values(o),i=e.applyWithChunking(Math.max,s)-1,a=2*i+1;n.graph().nestingRoot=r,n.edges().forEach((e=>n.edge(e).minlen*=a));let l=function(e){return e.edges().reduce(((t,n)=>t+e.edge(n).weight),0)}(n)+1;n.children().forEach((e=>t(n,r,a,l,i,o,e))),n.graph().nodeRankFactor=a},cleanup:function(e){var t=e.graph();e.removeNode(t.nestingRoot),delete t.nestingRoot,e.edges().forEach((t=>{e.edge(t).nestingEdge&&e.removeEdge(t)}))}}}function OF(){if(Az)return Iz;function e(e){e.nodes().forEach((n=>t(e.node(n)))),e.edges().forEach((n=>t(e.edge(n))))}function t(e){let t=e.width;e.width=e.height,e.height=t}function n(e){e.y=-e.y}function r(e){let t=e.x;e.x=e.y,e.y=t}return Az=1,Iz={adjust:function(t){let n=t.graph().rankdir.toLowerCase();"lr"!==n&&"rl"!==n||e(t)},undo:function(t){let o=t.graph().rankdir.toLowerCase();"bt"!==o&&"rl"!==o||function(e){e.nodes().forEach((t=>n(e.node(t)))),e.edges().forEach((t=>{let r=e.edge(t);r.points.forEach(n),Object.hasOwn(r,"y")&&n(r)}))}(t);"lr"!==o&&"rl"!==o||(!function(e){e.nodes().forEach((t=>r(e.node(t)))),e.edges().forEach((t=>{let n=e.edge(t);n.points.forEach(r),Object.hasOwn(n,"x")&&r(n)}))}(t),e(t))}}}function DF(){if(zz)return Lz;zz=1;let e=CF();return Lz=function(t,n){let r={};return t.forEach(((e,t)=>{let n=r[e.v]={indegree:0,in:[],out:[],vs:[e.v],i:t};void 0!==e.barycenter&&(n.barycenter=e.barycenter,n.weight=e.weight)})),n.edges().forEach((e=>{let t=r[e.v],n=r[e.w];void 0!==t&&void 0!==n&&(n.indegree++,t.out.push(r[e.w]))})),function(t){let n=[];function r(e){return t=>{t.merged||(void 0===t.barycenter||void 0===e.barycenter||t.barycenter>=e.barycenter)&&function(e,t){let n=0,r=0;e.weight&&(n+=e.barycenter*e.weight,r+=e.weight);t.weight&&(n+=t.barycenter*t.weight,r+=t.weight);e.vs=t.vs.concat(e.vs),e.barycenter=n/r,e.weight=r,e.i=Math.min(t.i,e.i),t.merged=!0}(e,t)}}function o(e){return n=>{n.in.push(e),0==--n.indegree&&t.push(n)}}for(;t.length;){let e=t.pop();n.push(e),e.in.reverse().forEach(r(e)),e.out.forEach(o(e))}return n.filter((e=>!e.merged)).map((t=>e.pick(t,["vs","i","barycenter","weight"])))}(Object.values(r).filter((e=>!e.indegree)))}}function RF(){if($z)return Uz;$z=1;let e=Pz?Rz:(Pz=1,Rz=function(e,t=[]){return t.map((t=>{let n=e.inEdges(t);if(n.length){let r=n.reduce(((t,n)=>{let r=e.edge(n),o=e.node(n.v);return{sum:t.sum+r.weight*o.order,weight:t.weight+r.weight}}),{sum:0,weight:0});return{v:t,barycenter:r.sum/r.weight,weight:r.weight}}return{v:t}}))}),t=DF(),n=function(){if(Bz)return Fz;Bz=1;let e=CF();function t(e,t,n){let r;for(;t.length&&(r=t[t.length-1]).i<=n;)t.pop(),e.push(r.vs),n++;return n}return Fz=function(n,r){let o=e.partition(n,(e=>Object.hasOwn(e,"barycenter"))),s=o.lhs,i=o.rhs.sort(((e,t)=>t.i-e.i)),a=[],l=0,c=0,d=0;var u;s.sort((u=!!r,(e,t)=>e.barycentert.barycenter?1:u?t.i-e.i:e.i-t.i)),d=t(a,i,d),s.forEach((e=>{d+=e.vs.length,a.push(e.vs),l+=e.barycenter*e.weight,c+=e.weight,d=t(a,i,d)}));let h={vs:a.flat(!0)};return c&&(h.barycenter=l/c,h.weight=c),h}}();return Uz=function r(o,s,i,a){let l=o.children(s),c=o.node(s),d=c?c.borderLeft:void 0,u=c?c.borderRight:void 0,h={};d&&(l=l.filter((e=>e!==d&&e!==u)));let f=e(o,l);f.forEach((e=>{if(o.children(e.v).length){let s=r(o,e.v,i,a);h[e.v]=s,Object.hasOwn(s,"barycenter")&&(n=s,void 0!==(t=e).barycenter?(t.barycenter=(t.barycenter*t.weight+n.barycenter*n.weight)/(t.weight+n.weight),t.weight+=n.weight):(t.barycenter=n.barycenter,t.weight=n.weight))}var t,n}));let p=t(f,i);!function(e,t){e.forEach((e=>{e.vs=e.vs.flatMap((e=>t[e]?t[e].vs:e))}))}(p,h);let m=n(p,a);if(d&&(m.vs=[d,m.vs,u].flat(!0),o.predecessors(d).length)){let e=o.node(o.predecessors(d)[0]),t=o.node(o.predecessors(u)[0]);Object.hasOwn(m,"barycenter")||(m.barycenter=0,m.weight=0),m.barycenter=(m.barycenter*m.weight+e.order+t.order)/(m.weight+2),m.weight+=2}return m},Uz}function PF(){if(Hz)return Vz;Hz=1;let e=kF().Graph,t=CF();return Vz=function(n,r,o){let s=function(e){var n;for(;e.hasNode(n=t.uniqueId("_root")););return n}(n),i=new e({compound:!0}).setGraph({root:s}).setDefaultNodeLabel((e=>n.node(e)));return n.nodes().forEach((e=>{let t=n.node(e),a=n.parent(e);(t.rank===r||t.minRank<=r&&r<=t.maxRank)&&(i.setNode(e),i.setParent(e,a||s),n[o](e).forEach((t=>{let r=t.v===e?t.w:t.v,o=i.edge(r,e),s=void 0!==o?o.weight:0;i.setEdge(r,e,{weight:n.edge(t).weight+s})})),Object.hasOwn(t,"minRank")&&i.setNode(e,{borderLeft:t.borderLeft[r],borderRight:t.borderRight[r]}))})),i}}function LF(){if(Yz)return qz;Yz=1;let e=function(){if(Mz)return Tz;Mz=1;let e=CF();return Tz=function(t){let n={},r=t.nodes().filter((e=>!t.children(e).length)),o=r.map((e=>t.node(e).rank)),s=e.applyWithChunking(Math.max,o),i=e.range(s+1).map((()=>[]));return r.sort(((e,n)=>t.node(e).rank-t.node(n).rank)).forEach((function e(r){if(n[r])return;n[r]=!0;let o=t.node(r);i[o.rank].push(r),t.successors(r).forEach(e)})),i}}(),t=function(){if(Dz)return Oz;Dz=1;let e=CF().zipObject;function t(t,n,r){let o=e(r,r.map(((e,t)=>t))),s=n.flatMap((e=>t.outEdges(e).map((e=>({pos:o[e.w],weight:t.edge(e).weight}))).sort(((e,t)=>e.pos-t.pos)))),i=1;for(;i{let t=e.pos+i;l[t]+=e.weight;let n=0;for(;t>0;)t%2&&(n+=l[t+1]),t=t-1>>1,l[t]+=e.weight;c+=e.weight*n})),c}return Oz=function(e,n){let r=0;for(let o=1;o{let s,i,a=e.parent(n);for(;a;){if(s=e.parent(a),s?(i=o[s],o[s]=a):(i=r,r=a),i&&i!==a)return void t.setEdge(i,a);a=s}}))}),s=kF().Graph,i=CF();function a(e,t,n){return t.map((function(t){return r(e,t,n)}))}function l(e,t){let r=new s;e.forEach((function(e){let s=e.graph().root,i=n(e,s,r,t);i.vs.forEach(((t,n)=>e.node(t).order=n)),o(e,r,i.vs)}))}function c(e,t){Object.values(t).forEach((t=>t.forEach(((t,n)=>e.node(t).order=n))))}return qz=function n(r,o){if(o&&"function"==typeof o.customOrder)return void o.customOrder(r,n);let s=i.maxRank(r),d=a(r,i.range(1,s+1),"inEdges"),u=a(r,i.range(s-1,-1,-1),"outEdges"),h=e(r);if(c(r,h),o&&o.disableOptimalOrderHeuristic)return;let f,p=Number.POSITIVE_INFINITY;for(let e=0,a=0;a<4;++e,++a){l(e%2?d:u,e%4>=2),h=i.buildLayerMatrix(r);let n=t(r,h);n{let d=function(e,t){if(e.node(t).dummy)return e.predecessors(t).find((t=>e.node(t).dummy))}(e,t),u=d?e.node(d).order:a;(d||t===l)&&(r.slice(i,c+1).forEach((t=>{e.predecessors(t).forEach((r=>{let i=e.node(r),a=i.order;!(a{c=n[t],e.node(c).dummy&&e.predecessors(c).forEach((t=>{let n=e.node(t);n.dummy&&(n.orderl)&&o(r,t,c)}))}))}return n.length&&n.reduce((function(t,n){let r,o=-1,i=0;return n.forEach(((a,l)=>{if("border"===e.node(a).dummy){let t=e.predecessors(a);t.length&&(r=e.node(t[0]).order,s(n,i,l,o,r),i=l,o=r)}s(n,i,n.length,r,t.length)})),n})),r}function o(e,t,n){if(t>n){let e=t;t=n,n=e}let r=e[t];r||(e[t]=r={}),r[n]=!0}function s(e,t,n){if(t>n){let e=t;t=n,n=e}return!!e[t]&&Object.hasOwn(e[t],n)}function i(e,t,n,r){let o={},i={},a={};return t.forEach((e=>{e.forEach(((e,t)=>{o[e]=e,i[e]=e,a[e]=t}))})),t.forEach((e=>{let t=-1;e.forEach((e=>{let l=r(e);if(l.length){l=l.sort(((e,t)=>a[e]-a[t]));let r=(l.length-1)/2;for(let c=Math.floor(r),d=Math.ceil(r);c<=d;++c){let r=l[c];i[e]===e&&t{let i,a=r.node(o),l=r.node(s),c=0;if(c+=a.width/2,Object.hasOwn(a,"labelpos"))switch(a.labelpos.toLowerCase()){case"l":i=-a.width/2;break;case"r":i=a.width/2}if(i&&(c+=n?i:-i),i=0,c+=(a.dummy?t:e)/2,c+=(l.dummy?t:e)/2,c+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":i=l.width/2;break;case"r":i=-l.width/2}return i&&(c+=n?i:-i),i=0,c}}(i.nodesep,i.edgesep,o);return n.forEach((e=>{let n;e.forEach((e=>{let o=r[e];if(s.setNode(o),n){var i=r[n],l=s.edge(i,o);s.setEdge(i,o,Math.max(a(t,e,n),l||0))}n=e}))})),s}(t,n,r,s),l=s?"borderLeft":"borderRight";function c(e,t){let n=a.nodes(),r=n.pop(),o={};for(;r;)o[r]?e(r):(o[r]=!0,n.push(r),n=n.concat(t(r))),r=n.pop()}return c((function(e){i[e]=a.inEdges(e).reduce(((e,t)=>Math.max(e,i[t.v]+a.edge(t))),0)}),a.predecessors.bind(a)),c((function(e){let n=a.outEdges(e).reduce(((e,t)=>Math.min(e,i[t.w]-a.edge(t))),Number.POSITIVE_INFINITY),r=t.node(e);n!==Number.POSITIVE_INFINITY&&r.borderType!==l&&(i[e]=Math.max(i[e],n))}),a.successors.bind(a)),Object.keys(o).forEach((e=>i[e]=i[r[e]])),i}function l(e,t){return Object.values(t).reduce(((t,n)=>{let r=Number.NEGATIVE_INFINITY,o=Number.POSITIVE_INFINITY;Object.entries(n).forEach((([t,n])=>{let s=function(e,t){return e.node(t).width}(e,t)/2;r=Math.max(n+s,r),o=Math.min(n-s,o)}));const s=r-o;return s{["l","r"].forEach((i=>{let a=r+i,l=e[a];if(l===n)return;let c=Object.values(l),d=o-t.applyWithChunking(Math.min,c);"l"!==i&&(d=s-t.applyWithChunking(Math.max,c)),d&&(e[a]=t.mapValues(l,(e=>e+d)))}))}))}function d(e,n){return t.mapValues(e.ul,((t,r)=>{if(n)return e[n.toLowerCase()][r];{let t=Object.values(e).map((e=>e[r])).sort(((e,t)=>e-t));return(t[1]+t[2])/2}}))}return Jz={positionX:function(e){let o,s=t.buildLayerMatrix(e),u=Object.assign(n(e,s),r(e,s)),h={};["u","d"].forEach((n=>{o="u"===n?s:Object.values(s).reverse(),["l","r"].forEach((r=>{"r"===r&&(o=o.map((e=>Object.values(e).reverse())));let s=("u"===n?e.predecessors:e.successors).bind(e),l=i(e,o,u,s),c=a(e,o,l.root,l.align,"r"===r);"r"===r&&(c=t.mapValues(c,(e=>-e))),h[n+r]=c}))}));let f=l(e,h);return c(h,f),d(h,e.graph().align)},findType1Conflicts:n,findType2Conflicts:r,addConflict:o,hasConflict:s,verticalAlignment:i,horizontalCompaction:a,alignCoordinates:c,findSmallestWidthAlignment:l,balance:d}}function FF(){if(Zz)return Kz;Zz=1;let e=CF(),t=zF().positionX;return Kz=function(n){(function(t){let n=e.buildLayerMatrix(t),r=t.graph().ranksep,o=0;n.forEach((e=>{const n=e.reduce(((e,n)=>{const r=t.node(n).height;return e>r?e:r}),0);e.forEach((e=>t.node(e).y=o+n/2)),o+=n+r}))})(n=e.asNonCompoundGraph(n)),Object.entries(t(n)).forEach((([e,t])=>n.node(e).x=t))}}function BF(){if(eF)return Qz;eF=1;let e=EF(),t=NF(),n=AF(),r=CF().normalizeRanks,o=TF(),s=CF().removeEmptyRanks,i=MF(),a=function(){if(_z)return jz;_z=1;let e=CF();function t(t,n,r,o,s,i){let a={width:0,height:0,rank:i,borderType:n},l=s[n][i-1],c=e.addDummyNode(t,"border",a,r);s[n][i]=c,t.setParent(c,o),l&&t.setEdge(l,c,{weight:1})}return jz=function(e){e.children().forEach((function n(r){let o=e.children(r),s=e.node(r);if(o.length&&o.forEach(n),Object.hasOwn(s,"minRank")){s.borderLeft=[],s.borderRight=[];for(let n=s.minRank,o=s.maxRank+1;n{let N=E(" buildLayoutGraph",(()=>function(e){let t=new h({multigraph:!0,compound:!0}),n=k(e.graph());return t.setGraph(Object.assign({},p,w(n,f),u.pick(n,m))),e.nodes().forEach((n=>{const r=w(k(e.node(n)),g);Object.keys(y).forEach((e=>{void 0===r[e]&&(r[e]=y[e])})),t.setNode(n,r),t.setParent(n,e.parent(n))})),e.edges().forEach((n=>{let r=k(e.edge(n));t.setEdge(n,Object.assign({},x,w(r,b),u.pick(r,v)))})),t}(S)));E(" runLayout",(()=>function(h,f,p){f(" makeSpaceForEdgeLabels",(()=>function(e){let t=e.graph();t.ranksep/=2,e.edges().forEach((n=>{let r=e.edge(n);r.minlen*=2,"c"!==r.labelpos.toLowerCase()&&("TB"===t.rankdir||"BT"===t.rankdir?r.width+=r.labeloffset:r.height+=r.labeloffset)}))}(h))),f(" removeSelfEdges",(()=>function(e){e.edges().forEach((t=>{if(t.v===t.w){var n=e.node(t.v);n.selfEdges||(n.selfEdges=[]),n.selfEdges.push({e:t,label:e.edge(t)}),e.removeEdge(t)}}))}(h))),f(" acyclic",(()=>e.run(h))),f(" nestingGraph.run",(()=>i.run(h))),f(" rank",(()=>n(u.asNonCompoundGraph(h)))),f(" injectEdgeLabelProxies",(()=>function(e){e.edges().forEach((t=>{let n=e.edge(t);if(n.width&&n.height){let n=e.node(t.v),r={rank:(e.node(t.w).rank-n.rank)/2+n.rank,e:t};u.addDummyNode(e,"edge-proxy",r,"_ep")}}))}(h))),f(" removeEmptyRanks",(()=>s(h))),f(" nestingGraph.cleanup",(()=>i.cleanup(h))),f(" normalizeRanks",(()=>r(h))),f(" assignRankMinMax",(()=>function(e){let t=0;e.nodes().forEach((n=>{let r=e.node(n);r.borderTop&&(r.minRank=e.node(r.borderTop).rank,r.maxRank=e.node(r.borderBottom).rank,t=Math.max(t,r.maxRank))})),e.graph().maxRank=t}(h))),f(" removeEdgeLabelProxies",(()=>function(e){e.nodes().forEach((t=>{let n=e.node(t);"edge-proxy"===n.dummy&&(e.edge(n.e).labelRank=n.rank,e.removeNode(t))}))}(h))),f(" normalize.run",(()=>t.run(h))),f(" parentDummyChains",(()=>o(h))),f(" addBorderSegments",(()=>a(h))),f(" order",(()=>c(h,p))),f(" insertSelfEdges",(()=>function(e){var t=u.buildLayerMatrix(e);t.forEach((t=>{var n=0;t.forEach(((t,r)=>{var o=e.node(t);o.order=r+n,(o.selfEdges||[]).forEach((t=>{u.addDummyNode(e,"selfedge",{width:t.label.width,height:t.label.height,rank:o.rank,order:r+ ++n,e:t.e,label:t.label},"_se")})),delete o.selfEdges}))}))}(h))),f(" adjustCoordinateSystem",(()=>l.adjust(h))),f(" position",(()=>d(h))),f(" positionSelfEdges",(()=>function(e){e.nodes().forEach((t=>{var n=e.node(t);if("selfedge"===n.dummy){var r=e.node(n.e.v),o=r.x+r.width/2,s=r.y,i=n.x-o,a=r.height/2;e.setEdge(n.e,n.label),e.removeNode(t),n.label.points=[{x:o+2*i/3,y:s-a},{x:o+5*i/6,y:s-a},{x:o+i,y:s},{x:o+5*i/6,y:s+a},{x:o+2*i/3,y:s+a}],n.label.x=n.x,n.label.y=n.y}}))}(h))),f(" removeBorderNodes",(()=>function(e){e.nodes().forEach((t=>{if(e.children(t).length){let n=e.node(t),r=e.node(n.borderTop),o=e.node(n.borderBottom),s=e.node(n.borderLeft[n.borderLeft.length-1]),i=e.node(n.borderRight[n.borderRight.length-1]);n.width=Math.abs(i.x-s.x),n.height=Math.abs(o.y-r.y),n.x=s.x+n.width/2,n.y=r.y+n.height/2}})),e.nodes().forEach((t=>{"border"===e.node(t).dummy&&e.removeNode(t)}))}(h))),f(" normalize.undo",(()=>t.undo(h))),f(" fixupEdgeLabelCoords",(()=>function(e){e.edges().forEach((t=>{let n=e.edge(t);if(Object.hasOwn(n,"x"))switch("l"!==n.labelpos&&"r"!==n.labelpos||(n.width-=n.labeloffset),n.labelpos){case"l":n.x-=n.width/2+n.labeloffset;break;case"r":n.x+=n.width/2+n.labeloffset}}))}(h))),f(" undoCoordinateSystem",(()=>l.undo(h))),f(" translateGraph",(()=>function(e){let t=Number.POSITIVE_INFINITY,n=0,r=Number.POSITIVE_INFINITY,o=0,s=e.graph(),i=s.marginx||0,a=s.marginy||0;function l(e){let s=e.x,i=e.y,a=e.width,l=e.height;t=Math.min(t,s-a/2),n=Math.max(n,s+a/2),r=Math.min(r,i-l/2),o=Math.max(o,i+l/2)}e.nodes().forEach((t=>l(e.node(t)))),e.edges().forEach((t=>{let n=e.edge(t);Object.hasOwn(n,"x")&&l(n)})),t-=i,r-=a,e.nodes().forEach((n=>{let o=e.node(n);o.x-=t,o.y-=r})),e.edges().forEach((n=>{let o=e.edge(n);o.points.forEach((e=>{e.x-=t,e.y-=r})),Object.hasOwn(o,"x")&&(o.x-=t),Object.hasOwn(o,"y")&&(o.y-=r)})),s.width=n-t+i,s.height=o-r+a}(h))),f(" assignNodeIntersects",(()=>function(e){e.edges().forEach((t=>{let n,r,o=e.edge(t),s=e.node(t.v),i=e.node(t.w);o.points?(n=o.points[0],r=o.points[o.points.length-1]):(o.points=[],n=i,r=s),o.points.unshift(u.intersectRect(s,n)),o.points.push(u.intersectRect(i,r))}))}(h))),f(" reversePoints",(()=>function(e){e.edges().forEach((t=>{let n=e.edge(t);n.reversed&&n.points.reverse()}))}(h))),f(" acyclic.undo",(()=>e.undo(h)))}(N,E,C))),E(" updateInputGraph",(()=>function(e,t){e.nodes().forEach((n=>{let r=e.node(n),o=t.node(n);r&&(r.x=o.x,r.y=o.y,r.rank=o.rank,t.children(n).length&&(r.width=o.width,r.height=o.height))})),e.edges().forEach((n=>{let r=e.edge(n),o=t.edge(n);r.points=o.points,Object.hasOwn(o,"x")&&(r.x=o.x,r.y=o.y)})),e.graph().width=t.graph().width,e.graph().height=t.graph().height}(S,N)))}))};let f=["nodesep","edgesep","ranksep","marginx","marginy"],p={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},m=["acyclicer","ranker","rankdir","align"],g=["width","height"],y={width:0,height:0},b=["minlen","weight","width","height","labeloffset"],x={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},v=["labelpos"];function w(e,t){return u.mapValues(u.pick(e,t),Number)}function k(e){var t={};return e&&Object.entries(e).forEach((([e,n])=>{"string"==typeof e&&(e=e.toLowerCase()),t[e]=n})),t}return Qz}function UF(){if(nF)return tF;nF=1;let e=CF(),t=kF().Graph;return tF={debugOrdering:function(n){let r=e.buildLayerMatrix(n),o=new t({compound:!0,multigraph:!0}).setGraph({});return n.nodes().forEach((e=>{o.setNode(e,{label:e}),o.setParent(e,"layer"+n.node(e).rank)})),n.edges().forEach((e=>o.setEdge(e.v,e.w,{},e.name))),r.forEach(((e,t)=>{let n="layer"+t;o.setNode(n,{rank:"same"}),e.reduce(((e,t)=>(o.setEdge(e,t,{style:"invis"}),t)))})),o}}}var $F=iF?sF:(iF=1,sF={graphlib:kF(),layout:BF(),debug:UF(),util:{time:CF().time,notime:CF().notime},version:oF?rF:(oF=1,rF="1.1.4")});const VF=(new $F.graphlib.Graph).setDefaultEdgeLabel((()=>({}))),HF=(e,t,n)=>(VF.setGraph({rankdir:n.direction,nodesep:150,ranksep:200,ranker:"longest-path"}),t.forEach((e=>VF.setEdge(e.source,e.target))),e.forEach((e=>VF.setNode(e.id,{...e,width:e.width??0,height:e.height??0}))),$F.layout(VF),{nodes:e.map((e=>{const{x:t,y:n}=VF.node(e.id);return{...e,position:{x:t,y:n}}})),edges:t}),WF=new class{createEdge(e,t){return{animated:!0,markerEnd:{type:FO.ArrowClosed},id:`${e}-${t}`,style:{strokeWidth:2},source:e,sourceHandle:"outputs",targetHandle:"inputs",target:t}}createNode(e,t){return{id:e,data:{atom:t,forceWidth:300},width:300,type:"custom",height:oL(K.get(t).code.trim().split("\n").length),position:{x:0,y:0}}}createElements(e,t,n,r){const o=[],s=[],i=new Set,a=new Set;for(const l of Object.values(n)){if("marimo"===l.value&&"mo"===l.name)continue;const{declaredBy:e,usedBy:t}=l;for(const n of e)for(const e of t){const t=`${n}-${e}`;a.has(t)||(a.add(t),i.add(n),i.add(e),s.push(this.createEdge(n,e)))}}for(const[l,c]of xi.zip(e,t)){r||o.push(this.createNode(l,c));const e=i.has(l),t=K.get(c).code.trim().startsWith("mo.md");!e&&t||o.push(this.createNode(l,c))}return{nodes:o,edges:s}}},GF=e=>{const t=C.c(43),{cellIds:n,variables:r,cellAtoms:s,children:i,layoutDirection:a,settings:l}=e;let c;t[0]!==s||t[1]!==n||t[2]!==a||t[3]!==l.hidePureMarkdown||t[4]!==r?(c=()=>{let e=WF.createElements(n,s,r,l.hidePureMarkdown);return e=HF(e.nodes,e.edges,{direction:a}),e},t[0]=s,t[1]=n,t[2]=a,t[3]=l.hidePureMarkdown,t[4]=r,t[5]=c):c=t[5];const[d]=o.useState(c),[u,h,f]=zP(d.nodes),[p,m,g]=FP(d.edges),y=dR();let b;t[6]!==a||t[7]!==m||t[8]!==h?(b=e=>{const t=HF(e.nodes,e.edges,{direction:a});h(t.nodes),m(t.edges)},t[6]=a,t[7]=m,t[8]=h,t[9]=b):b=t[9];const x=B(b);let v,w;t[10]!==s||t[11]!==n||t[12]!==l.hidePureMarkdown||t[13]!==x||t[14]!==r?(v=()=>{x(WF.createElements(n,s,r,l.hidePureMarkdown))},w=[n,r,s,x,l.hidePureMarkdown],t[10]=s,t[11]=n,t[12]=l.hidePureMarkdown,t[13]=x,t[14]=r,t[15]=v,t[16]=w):(v=t[15],w=t[16]),o.useEffect(v,w);const[k,S]=o.useState();let E;pL(),t[17]===Symbol.for("react.memo_cache_sentinel")?(E=()=>{S(void 0)},t[17]=E):E=t[17];const j=E;let _,I,A,T,M,O,D,R,P,L;return t[18]===Symbol.for("react.memo_cache_sentinel")?(_={minZoom:.5,maxZoom:1.5},I=(e,t)=>{S({type:"node",id:t.id})},A=(e,t)=>{const{source:n,target:r}=t;S({type:"edge",source:n,target:r})},t[18]=_,t[19]=I,t[20]=A):(_=t[18],I=t[19],A=t[20]),t[21]===Symbol.for("react.memo_cache_sentinel")?(T=N.jsx(rL,{color:"#ccc",variant:YP.Dots}),t[21]=T):T=t[21],t[22]!==y||t[23]!==u?(M=()=>{const e=K.get(Ou);if(e){const t=u.find((t=>t.id===e));t&&(y.fitView({padding:1,duration:600,nodes:[t]}),S({type:"node",id:e}))}},t[22]=y,t[23]=u,t[24]=M):M=t[24],t[25]===Symbol.for("react.memo_cache_sentinel")?(O=N.jsx(pd,{className:"size-4"}),t[25]=O):O=t[25],t[26]!==M?(D=N.jsx(XP,{position:"bottom-right",showInteractive:!1,children:N.jsx(it,{content:"Jump to focused cell",delayDuration:200,side:"left",asChild:!1,children:N.jsx(WP,{onMouseDown:ot.preventFocus,onClick:M,children:O})})}),t[26]=M,t[27]=D):D=t[27],t[28]!==p||t[29]!==k||t[30]!==r?(R=N.jsx(hL,{selection:k,variables:r,edges:p,onClearSelection:j}),t[28]=p,t[29]=k,t[30]=r,t[31]=R):R=t[31],t[32]!==i||t[33]!==p||t[34]!==u||t[35]!==g||t[36]!==f||t[37]!==D||t[38]!==R?(P=N.jsxs(PP,{nodes:u,edges:p,nodeTypes:aL,minZoom:.2,fitViewOptions:_,onNodeClick:I,onEdgeClick:A,onNodeDoubleClick:qF,fitView:!0,onNodesChange:f,onEdgesChange:g,zoomOnDoubleClick:!1,nodesConnectable:!1,children:[T,D,R,i]}),t[32]=i,t[33]=p,t[34]=u,t[35]=g,t[36]=f,t[37]=D,t[38]=R,t[39]=P):P=t[39],t[40]!==a||t[41]!==P?(L=N.jsx(sL.Provider,{value:a,children:P}),t[40]=a,t[41]=P,t[42]=L):L=t[42],L};function qF(e,t){Ki(t.id,"focus")}const YF=q("_minimap_"),JF=q({hidePureMarkdown:!0}),XF=e=>{const t=C.c(11),[n,r]=ze(YF),[o,s]=ze(JF);let i;t[0]!==n||t[1]!==e||t[2]!==r||t[3]!==s||t[4]!==o?(i=()=>"_minimap_"===n?N.jsx(bL,{...e,children:N.jsx(uL,{settings:o,onSettingsChange:s,view:n,onChange:r})}):N.jsx(GF,{...e,settings:o,layoutDirection:n,children:N.jsx(uL,{settings:o,onSettingsChange:s,view:n,onChange:r})}),t[0]=n,t[1]=e,t[2]=r,t[3]=s,t[4]=o,t[5]=i):i=t[5];const a=i;let l,c;return t[6]!==a?(l=a(),t[6]=a,t[7]=l):l=t[7],t[8]!==n||t[9]!==l?(c=N.jsx(_P,{children:l},n),t[8]=n,t[9]=l,t[10]=c):c=t[10],c},KF=()=>{const e=C.c(5),t=Zi(),n=Wi(),[r]=Qi();let o,s;return e[0]===Symbol.for("react.memo_cache_sentinel")?(o=An("w-full h-full flex-1 mx-auto -mb-4 relative"),e[0]=o):o=e[0],e[1]!==n.inOrderIds||e[2]!==r||e[3]!==t?(s=N.jsx("div",{className:o,children:N.jsx(XF,{cellAtoms:r,variables:t,cellIds:n.inOrderIds})}),e[1]=n.inOrderIds,e[2]=r,e[3]=t,e[4]=s):s=e[4],s};const ZF="name",QF="type-value",eB="defs-refs",tB=[{id:ZF,accessorFn:e=>[e.name,e.declaredBy],enableSorting:!0,sortingFn:"alphanumeric",header:({column:e})=>N.jsx(pa,{header:"Name",column:e}),cell:({getValue:e})=>{const[t,n]=e();return N.jsx(dL,{name:t,declaredBy:n})}},{id:QF,accessorFn:e=>[e.dataType,e.value],enableSorting:!0,sortingFn:"alphanumeric",header:({column:e})=>N.jsx(pa,{header:N.jsxs("div",{className:"flex flex-col gap-1",children:[N.jsx("span",{children:"Type"}),N.jsx("span",{children:"Value"})]}),column:e}),cell:({getValue:e})=>{const[t,n]=e();return N.jsxs("div",{className:"max-w-[150px]",children:[N.jsx("div",{className:"text-ellipsis overflow-hidden whitespace-nowrap text-muted-foreground font-mono text-xs",children:t}),N.jsx("div",{className:"text-ellipsis overflow-hidden whitespace-nowrap",title:n??"",children:n})]})}},{id:eB,accessorFn:e=>[e.declaredBy,e.usedBy,e.name,e.declaredByNames,e.usedByNames],enableSorting:!0,sortingFn:"basic",header:({column:e})=>N.jsx(pa,{header:N.jsxs("div",{className:"flex flex-col gap-1",children:[N.jsx("span",{children:"Declared By"}),N.jsx("span",{children:"Used By"})]}),column:e}),cell:({getValue:e})=>{const[t,n,r]=e(),o=e=>{const t=oe(e);t&&Ji(t,r)};return N.jsxs("div",{className:"flex flex-col gap-1 py-1",children:[N.jsxs("div",{className:"flex flex-row overflow-auto gap-2 items-center",children:[N.jsx("span",{title:"Declared by",children:N.jsx(Ld,{className:"w-3.5 h-3.5 text-muted-foreground"})}),1===t.length?N.jsx(qi,{variant:"focus",cellId:t[0],skipScroll:!0,onClick:()=>o(t[0])}):N.jsx("div",{className:"text-destructive flex flex-row gap-2",children:t.slice(0,3).map(((e,n)=>N.jsxs("span",{className:"flex",children:[N.jsx(qi,{variant:"focus",cellId:e,skipScroll:!0,className:"whitespace-nowrap text-destructive",onClick:()=>o(e)},e),n{const[r,s]=u.useState([]),[i,a]=u.useState(""),l=ea(),c=o.useMemo((()=>{const e=e=>{const n=l[e];return fa(n)?`cell-${t.indexOf(e)}`:n??`cell-${t.indexOf(e)}`};return Object.values(n).map((t=>({...t,declaredByNames:t.declaredBy.map(e),usedByNames:t.usedBy.map(e)})))}),[n,l,t]),d=o.useMemo((()=>{const e=new Map;return t.forEach(((t,n)=>e.set(t,n))),function(e,t,n){t||(t={id:eB,desc:!1});let r=[];switch(t.id){case ZF:r=Mc(e,(e=>e.name));break;case QF:r=Mc(e,(e=>e.dataType));break;case eB:r=Mc(e,(e=>n.get(e.declaredBy[0])))}return t.desc?r.reverse():r}(c,r[0],e)}),[c,r,t]),h=ta({data:d,columns:tB,getCoreRowModel:oa(),onGlobalFilterChange:a,getFilteredRowModel:ra(),enableFilters:!0,enableGlobalFilter:!0,getColumnCanGlobalFilter:e=>e.columnDef.enableGlobalFilter??!0,globalFilterFn:"auto",manualSorting:!0,onSortingChange:s,getSortedRowModel:na(),state:{sorting:r,globalFilter:i}});return N.jsxs(N.Fragment,{children:[N.jsx(sa,{className:"w-full",placeholder:"Search",value:i,onChange:e=>a(e.target.value)}),N.jsxs(ia,{className:An("w-full text-sm flex-1 border-separate border-spacing-0",e),children:[N.jsx(aa,{children:N.jsx(la,{className:"whitespace-nowrap text-xs",children:h.getFlatHeaders().map((e=>N.jsx(ca,{className:"sticky top-0 bg-background border-b",children:da(e.column.columnDef.header,e.getContext())},e.id)))})}),N.jsx(ua,{children:h.getRowModel().rows.map((e=>N.jsx(la,{className:"hover:bg-accent",children:e.getVisibleCells().map((e=>N.jsx(ha,{className:"border-b",children:da(e.column.columnDef.cell,e.getContext())},e.id)))},e.id)))})]})]})}));nB.displayName="VariableTable";const rB=()=>{const e=C.c(4),t=Zi(),n=Wi();if(0===Object.keys(t).length){let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=N.jsx(pM,{title:"No variables",description:"Global variables will appear here.",icon:N.jsx(mt,{})}),e[0]=t):t=e[0],t}let r;return e[1]!==n.inOrderIds||e[2]!==t?(r=N.jsx(nB,{className:"flex-1",cellIds:n.inOrderIds,variables:t}),e[1]=n.inOrderIds,e[2]=t,e[3]=r):r=e[3],r},oB=e=>N.jsx("button",{type:"button","data-testid":e.dataTestId,className:An("text-xs font-semibold text-accent-foreground",e.className),onClick:e.onClick,children:"Clear"}),sB=()=>{const e=C.c(9),t=ma(),{clearLogs:n}=U();if(0===t.length){let t,n;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=N.jsx("code",{className:"border rounded px-1",children:"stdout"}),e[0]=t):t=e[0],e[1]===Symbol.for("react.memo_cache_sentinel")?(n=N.jsx(pM,{title:"No logs",description:N.jsxs("span",{children:[t," and"," ",N.jsx("code",{className:"border rounded px-1",children:"stderr"})," logs will appear here."]}),icon:N.jsx(yt,{})}),e[1]=n):n=e[1],n}let r,o,s;return e[2]!==n?(r=N.jsx("div",{className:"flex flex-row justify-end px-2 py-1",children:N.jsx(oB,{dataTestId:"clear-logs-button",onClick:n})}),e[2]=n,e[3]=r):r=e[3],e[4]!==t?(o=N.jsx("div",{className:"overflow-auto flex-1",children:N.jsx(iB,{logs:t,className:"min-w-[300px]"})}),e[4]=t,e[5]=o):o=e[5],e[6]!==r||e[7]!==o?(s=N.jsxs(N.Fragment,{children:[r,o]}),e[6]=r,e[7]=o,e[8]=s):s=e[8],s},iB=e=>{const t=C.c(11),{logs:n,className:r}=e;let o,s,i,a,l;if(t[0]!==r?(o=An("flex flex-col",r),t[0]=r,t[1]=o):o=t[1],t[2]===Symbol.for("react.memo_cache_sentinel")?(s={whiteSpace:"pre-wrap"},t[2]=s):s=t[2],t[3]!==n){let e;t[5]===Symbol.for("react.memo_cache_sentinel")?(e=(e,t)=>N.jsxs("div",{className:"contents group",children:[N.jsx("span",{className:An("opacity-70 group-hover:bg-[var(--gray-3)] group-hover:opacity-100","text-right col-span-1 py-1 pr-1"),children:t+1}),N.jsx("span",{className:An("opacity-70 group-hover:bg-[var(--gray-3)] group-hover:opacity-100","px-2 flex gap-x-1.5 py-1 flex-wrap"),children:aB(e)})]},t),t[5]=e):e=t[5],i=n.map(e),t[3]=n,t[4]=i}else i=t[4];return t[6]!==i?(a=N.jsx("pre",{className:"grid text-xs font-mono gap-1 whitespace-break-spaces font-semibold align-left",children:N.jsx("div",{className:"grid grid-cols-[30px,1fr]",style:s,children:i})}),t[6]=i,t[7]=a):a=t[7],t[8]!==o||t[9]!==a?(l=N.jsx("div",{className:o,children:a}),t[8]=o,t[9]=a,t[10]=l):l=t[10],l};function aB(e){const t=ga(e.timestamp),n=lB[e.level],r=e.level.toUpperCase();return N.jsxs(N.Fragment,{children:[N.jsxs("span",{className:"flex-shrink-0 text-[var(--gray-10)] dark:text-[var(--gray-11)]",children:["[",t,"]"]}),N.jsx("span",{className:An("flex-shrink-0",n),children:r}),N.jsxs("span",{className:"flex-shrink-0 text-[var(--gray-10)]",children:["(",N.jsx(qi,{cellId:e.cellId}),")"]}),e.message]})}const lB={stdout:"text-[var(--grass-9)]",stderr:"text-[var(--red-9)]"},cB=()=>{const e=C.c(5),{documentation:t}=se(ya);if(!t){let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=N.jsx(pM,{title:"View docs as you type",description:"Move your text cursor over a symbol to see its documentation.",icon:N.jsx(Wd,{})}),e[0]=t):t=e[0],t}let n,r;return e[1]!==t?(n=ci({html:t}),e[1]=t,e[2]=n):n=e[2],e[3]!==n?(r=N.jsx("div",{className:"p-3 overflow-y-auto overflow-x-hidden h-full docs-documentation flex flex-col gap-4",children:n}),e[3]=n,e[4]=r):r=e[4],r};function dB(e,t,n){return e[t]?e[t][0]?e[t][0][n]:e[t][n]:"contentBoxSize"===t?e.contentRect["inlineSize"===n?"width":"height"]:void 0}function uB(e){void 0===e&&(e={});var t=e.onResize,n=o.useRef(void 0);n.current=t;var r=e.round||Math.round,s=o.useRef(),i=o.useState({width:void 0,height:void 0}),a=i[0],l=i[1],c=o.useRef(!1);o.useEffect((function(){return c.current=!1,function(){c.current=!0}}),[]);var d=o.useRef({width:void 0,height:void 0}),u=function(e,t){var n=o.useRef(null),r=o.useRef(null);r.current=t;var s=o.useRef(null);o.useEffect((function(){i()}));var i=o.useCallback((function(){var t=s.current,o=r.current,i=t||(o?o instanceof Element?o:o.current:null);n.current&&n.current.element===i&&n.current.subscriber===e||(n.current&&n.current.cleanup&&n.current.cleanup(),n.current={element:i,subscriber:e,cleanup:i?e(i):void 0})}),[e]);return o.useEffect((function(){return function(){n.current&&n.current.cleanup&&(n.current.cleanup(),n.current=null)}}),[]),o.useCallback((function(e){s.current=e,i()}),[i])}(o.useCallback((function(t){return s.current&&s.current.box===e.box&&s.current.round===r||(s.current={box:e.box,round:r,instance:new ResizeObserver((function(t){var o=t[0],s="border-box"===e.box?"borderBoxSize":"device-pixel-content-box"===e.box?"devicePixelContentBoxSize":"contentBoxSize",i=dB(o,s,"inlineSize"),a=dB(o,s,"blockSize"),u=i?r(i):void 0,h=a?r(a):void 0;if(d.current.width!==u||d.current.height!==h){var f={width:u,height:h};d.current.width=u,d.current.height=h,n.current?n.current(f):c.current||l(f)}}))}),s.current.instance.observe(t,{box:e.box}),function(){s.current&&s.current.instance.unobserve(t)}}),[e.box,r]),e.ref);return o.useMemo((function(){return{ref:u,width:a.width,height:a.height}}),[u,a.width,a.height])}const hB=new Map,fB=({file:e,onOpenNotebook:t})=>{const{theme:n}=De(),r=se(Fe),[s,i]=o.useState(""),{data:a,loading:l,error:c,setData:d}=jn((async()=>{const t=await ba({path:e.path}),n=t.contents||"";return i(hB.get(e.path)||n),t}),[e.path]),u=async()=>{s!==(null==a?void 0:a.contents)&&await _a({path:e.path,contents:s}).then((e=>{e.success&&(d((e=>e?{...e,contents:s}:void 0)),i(s))}))},h=o.useRef(s);if(h.current=s,o.useEffect((()=>()=>{if(!(null==a?void 0:a.contents))return;const t=h.current;t===a.contents?hB.delete(e.path):hB.set(e.path,t)}),[e.path,null==a?void 0:a.contents]),c)return N.jsx(xa,{error:c});if(l||!a)return null;const f=a.mimeType||"text/plain",p=f in mB;if(!a.contents&&!p)return N.jsxs("div",{className:"grid grid-cols-2 gap-2 p-6",children:[N.jsx("div",{className:"font-bold text-muted-foreground",children:"Name"}),N.jsx("div",{children:a.file.name}),N.jsx("div",{className:"font-bold text-muted-foreground",children:"Type"}),N.jsx("div",{children:f})]});const m=N.jsxs("div",{className:"text-xs text-muted-foreground p-1 flex justify-end gap-2 border-b",children:[e.isMarimoFile&&!E()&&N.jsx(it,{content:"Open notebook",children:N.jsx(Sl,{size:"small",onClick:e=>t(e),children:N.jsx(va,{})})}),N.jsx(it,{content:"Download",children:N.jsx(Sl,{size:"small",onClick:()=>{if(pB(f)){const e=Na(a.contents,f);ja(e,a.file.name)}else Xt(new Blob([a.contents||s],{type:f}),a.file.name)},children:N.jsx(Wt,{})})}),!pB(f)&&N.jsxs(N.Fragment,{children:[N.jsx(it,{content:"Copy contents to clipboard",children:N.jsx(Sl,{size:"small",onClick:async()=>{await nt(s)},children:N.jsx(st,{})})}),N.jsx(it,{content:Bt("global.save"),children:N.jsx(Sl,{size:"small",color:s===a.contents?void 0:"green",onClick:u,disabled:s===a.contents,children:N.jsx(Td,{})})})]})]});return f.startsWith("image/")?N.jsxs(N.Fragment,{children:[m,N.jsx("div",{className:"flex-1 overflow-hidden flex flex-col",children:N.jsx(wa,{base64:a.contents,mime:f})})]}):"text/csv"===f&&a.contents?N.jsxs(N.Fragment,{children:[m,N.jsx("div",{className:"flex-1 overflow-hidden flex flex-col",children:N.jsx(ka,{contents:a.contents})})]}):f.startsWith("audio/")?N.jsxs(N.Fragment,{children:[m,N.jsx("div",{className:"flex-1 overflow-hidden flex flex-col",children:N.jsx(Sa,{base64:a.contents,mime:f})})]}):f.startsWith("video/")?N.jsxs(N.Fragment,{children:[m,N.jsx("div",{className:"flex-1 overflow-hidden flex flex-col",children:N.jsx(Ca,{base64:a.contents,mime:f})})]}):N.jsxs(N.Fragment,{children:[m,N.jsx("div",{className:"flex-1 overflow-auto",children:N.jsx(Ea,{theme:"dark"===n?"dark":"light",language:mB[f]||mB.default,className:"border-b",extensions:[yn.lineWrapping,er.of([{key:r.getHotkey("global.save").key,stopPropagation:!0,run:()=>s!==a.contents&&(u(),!0)}])],value:s,onChange:i})})]})},pB=e=>e.startsWith("image/")||e.startsWith("audio/")||e.startsWith("video/"),mB={"application/javascript":"javascript","text/markdown":"markdown","text/html":"html","text/css":"css","text/x-python":"python","application/json":"json","application/xml":"xml","text/x-yaml":"yaml","text/csv":"markdown","text/plain":"markdown",default:"markdown"};const gB=q(new class{constructor(e){this.callbacks=e,this.delegate=new Vl([]),this.rootPath="",this.onChange=Kn.NOOP,this.path=new wt("/"),this.initialize=async e=>{if(this.onChange=e,0===this.delegate.data.length)try{const e=await this.callbacks.listFiles({path:this.rootPath});this.delegate=new Vl(e.files),this.rootPath=e.root,this.path=wt.guessDeliminator(e.root)}catch(t){ee({title:"Failed",description:Ds(t)})}this.onChange(this.delegate.data)},this.refreshAll=async e=>{const t=[this.rootPath,...e.map((e=>{var t;return null==(t=this.delegate.find(e))?void 0:t.data.path}))].filter(Boolean),n=await Promise.all(t.map((e=>this.callbacks.listFiles({path:e}).catch((()=>({files:[]}))))));for(const[r,o]of t.entries()){const e=n[r];o===this.rootPath?this.delegate=new Vl(e.files):this.delegate.update({id:o,changes:{children:e.files}})}this.onChange(this.delegate.data)},this.relativeFromRoot=e=>{const t=function(e){return e.endsWith("/")?e:`${e}/`}(this.rootPath);return e.startsWith(t)?e.slice(t.length):e},this.handleResponse=e=>e.success?e:(ee({title:"Failed",description:e.message}),null)}async expand(e){const t=this.delegate.find(e);if(!t)return!1;if(!t.data.isDirectory)return!1;if(t.children&&t.children.length>0)return!0;const n=await this.callbacks.listFiles({path:t.data.path});return this.delegate.update({id:e,changes:{children:n.files}}),this.onChange(this.delegate.data),!0}async rename(e,t){const n=this.delegate.find(e);if(!n)return;const r=n.data.path,o=this.path.join(this.path.dirname(r),t);await this.callbacks.renameFileOrFolder({path:r,newPath:o}).then(this.handleResponse),this.delegate.update({id:e,changes:{name:t,path:o}}),this.onChange(this.delegate.data),await this.refreshAll([o])}async move(e,t){var n;const r=t?(null==(n=this.delegate.find(t))?void 0:n.data.path)??t:this.rootPath;await Promise.all(e.map((e=>{this.delegate.move({id:e,parentId:t,index:0});const n=this.delegate.find(e);if(!n)return Promise.resolve();const o=this.path.join(r,this.path.basename(n.data.path));return this.delegate.update({id:e,changes:{path:o}}),this.callbacks.renameFileOrFolder({path:n.data.path,newPath:o}).then(this.handleResponse)}))),this.onChange(this.delegate.data),await this.refreshAll([r])}async createFile(e,t){var n;const r=t?(null==(n=this.delegate.find(t))?void 0:n.data.path)??t:this.rootPath,o=await this.callbacks.createFileOrFolder({path:r,type:"file",name:e}).then(this.handleResponse);(null==o?void 0:o.info)&&(this.delegate.create({parentId:t,index:0,data:o.info}),this.onChange(this.delegate.data),await this.refreshAll([r]))}async createFolder(e,t){var n;const r=t?(null==(n=this.delegate.find(t))?void 0:n.data.path)??t:this.rootPath,o=await this.callbacks.createFileOrFolder({path:r,type:"directory",name:e}).then(this.handleResponse);(null==o?void 0:o.info)&&(this.delegate.create({parentId:t,index:0,data:o.info}),this.onChange(this.delegate.data),await this.refreshAll([r]))}async delete(e){const t=this.delegate.find(e);t&&(await this.callbacks.deleteFileOrFolder({path:t.data.path}).then(this.handleResponse),this.delegate.drop({id:e}),this.onChange(this.delegate.data))}}({listFiles:Tn,createFileOrFolder:Ta,deleteFileOrFolder:Aa,renameFileOrFolder:Ia})),yB=q({});function bB(e){return new Promise(((t,n)=>{const r=new FileReader;r.onload=e=>{var n;t(null==(n=e.target)?void 0:n.result)},r.onerror=e=>{n(new Error(`Failed to read blob: ${e.type}`))},r.readAsDataURL(e)}))}function xB(e){const t=C.c(4);let n;t[0]!==e?(n=void 0===e?{}:e,t[0]=e,t[1]=n):n=t[1];const r=n;let o;return t[2]!==r?(o={multiple:!0,maxSize:104857600,onError:CB,onDropRejected:wB,onDrop:vB,...r},t[2]=r,t[3]=o):o=t[3],Ma(o)}async function vB(e){for(const t of e){const e=(await bB(t)).split(",")[1];await Ta({path:"",type:"file",name:t.name,contents:e})}await async function(){await K.get(gB).refreshAll([])}()}function wB(e){ee({title:"File upload failed",description:N.jsx("div",{className:"flex flex-col gap-1",children:e.map(kB)}),variant:"danger"})}function kB(e){return N.jsxs("div",{children:[e.file.name," (",e.errors.map(SB).join(", "),")"]},e.file.name)}function SB(e){return e.message}function CB(e){w.error(e),ee({title:"File upload failed",description:e.message,variant:"danger"})}const EB=u.createContext(null),NB=e=>{const t=C.c(60),{height:n}=e,r=o.useRef(null),[s]=ze(gB);let i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i=[],t[0]=i):i=t[0];const[a,l]=o.useState(i),[c,d]=o.useState(null),{openPrompt:u}=ie(),[h,f]=ze(yB);let p,m;t[1]!==s?(p=()=>s.initialize(l),t[1]=s,t[2]=p):p=t[2],t[3]===Symbol.for("react.memo_cache_sentinel")?(m=[],t[3]=m):m=t[3];const{loading:g,error:y}=jn(p,m);let b;t[4]!==h||t[5]!==s?(b=()=>{s.refreshAll(Object.keys(h).filter((e=>h[e])))},t[4]=h,t[5]=s,t[6]=b):b=t[6];const x=B(b);let v;t[7]!==u||t[8]!==s?(v=async()=>{u({title:"Folder name",onConfirm:async e=>{s.createFolder(e,null)}})},t[7]=u,t[8]=s,t[9]=v):v=t[9];const w=B(v);let k;t[10]!==u||t[11]!==s?(k=async()=>{u({title:"File name",onConfirm:async e=>{s.createFile(e,null)}})},t[10]=u,t[11]=s,t[12]=k):k=t[12];const S=B(k);let E;t[13]!==f?(E=()=>{var e;null==(e=r.current)||e.closeAll(),f({})},t[13]=f,t[14]=E):E=t[14];const j=B(E);if(g){let e;return t[15]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx(Di,{size:"medium",centered:!0}),t[15]=e):e=t[15],e}if(y){let e;return t[16]!==y?(e=N.jsx(xa,{error:y}),t[16]=y,t[17]=e):e=t[17],e}if(c){let e,n,r,i,a,l;return t[18]===Symbol.for("react.memo_cache_sentinel")?(e=()=>d(null),t[18]=e):e=t[18],t[19]===Symbol.for("react.memo_cache_sentinel")?(n=N.jsx(J,{onClick:e,"data-testid":"file-explorer-back-button",variant:"text",size:"xs",className:"mb-0",children:N.jsx(Oc,{size:16})}),t[19]=n):n=t[19],t[20]!==c.name?(r=N.jsxs("div",{className:"flex items-center pl-1 pr-3 flex-shrink-0 border-b justify-between",children:[n,N.jsx("span",{className:"font-bold",children:c.name})]}),t[20]=c.name,t[21]=r):r=t[21],t[22]!==c.path||t[23]!==s?(i=e=>OB(e,s.relativeFromRoot(c.path)),t[22]=c.path,t[23]=s,t[24]=i):i=t[24],t[25]!==c||t[26]!==i?(a=N.jsx(o.Suspense,{children:N.jsx(fB,{onOpenNotebook:i,file:c})}),t[25]=c,t[26]=i,t[27]=a):a=t[27],t[28]!==r||t[29]!==a?(l=N.jsxs(N.Fragment,{children:[r,a]}),t[28]=r,t[29]=a,t[30]=l):l=t[30],l}let _;t[31]!==j||t[32]!==S||t[33]!==w||t[34]!==x||t[35]!==s?(_=N.jsx(_B,{onRefresh:x,onCreateFile:S,onCreateFolder:w,onCollapseAll:j,tree:s}),t[31]=j,t[32]=S,t[33]=w,t[34]=x,t[35]=s,t[36]=_):_=t[36];const I=n-33;let A,T,M,O,D,R,P,L;return t[37]!==s?(A=async e=>{const{ids:t}=e;for(const n of t)await s.delete(n)},T=async e=>{const{id:t,name:n}=e;await s.rename(t,n)},M=async e=>{const{dragIds:t,parentId:n}=e;await s.move(t,n)},t[37]=s,t[38]=A,t[39]=T,t[40]=M):(A=t[38],T=t[39],M=t[40]),t[41]===Symbol.for("react.memo_cache_sentinel")?(O=e=>{const t=e[0];t&&(t.data.isDirectory||d(t.data))},t[41]=O):O=t[41],t[42]!==h||t[43]!==f||t[44]!==s?(D=async e=>{if(await s.expand(e)){const t=h[e]??!1;f({...h,[e]:!t})}},t[42]=h,t[43]=f,t[44]=s,t[45]=D):D=t[45],t[46]!==a||t[47]!==h||t[48]!==A||t[49]!==T||t[50]!==M||t[51]!==D||t[52]!==I?(R=N.jsx(Hl,{width:"100%",ref:r,height:I,className:"h-full",data:a,initialOpenState:h,openByDefault:!1,renderCursor:DB,disableDrop:RB,onDelete:A,onRename:T,onMove:M,onSelect:O,onToggle:D,padding:15,rowHeight:30,indent:jB,overscanCount:1e3,disableMultiSelection:!0,children:TB}),t[46]=a,t[47]=h,t[48]=A,t[49]=T,t[50]=M,t[51]=D,t[52]=I,t[53]=R):R=t[53],t[54]!==R||t[55]!==s?(P=N.jsx(EB.Provider,{value:s,children:R}),t[54]=R,t[55]=s,t[56]=P):P=t[56],t[57]!==P||t[58]!==_?(L=N.jsxs(N.Fragment,{children:[_,P]}),t[57]=P,t[58]=_,t[59]=L):L=t[59],L},jB=15,_B=e=>{const t=C.c(30),{onRefresh:n,onCreateFile:r,onCreateFolder:o,onCollapseAll:s}=e;let i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i={noDrag:!0,noDragEventsBubbling:!0},t[0]=i):i=t[0];const{getRootProps:a,getInputProps:l}=xB(i);let c,d,u,h,f,p,m,g,y,b,x,v,w,k,S;return t[1]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsx(nd,{size:16}),t[1]=c):c=t[1],t[2]!==r?(d=N.jsx(it,{content:"Add file",children:N.jsx(J,{"data-testid":"file-explorer-add-file-button",onClick:r,variant:"text",size:"xs",children:c})}),t[2]=r,t[3]=d):d=t[3],t[4]===Symbol.for("react.memo_cache_sentinel")?(u=N.jsx(od,{size:16}),t[4]=u):u=t[4],t[5]!==o?(h=N.jsx(it,{content:"Add folder",children:N.jsx(J,{"data-testid":"file-explorer-add-folder-button",onClick:o,variant:"text",size:"xs",children:u})}),t[5]=o,t[6]=h):h=t[6],t[7]!==a?(f=a({}),t[7]=a,t[8]=f):f=t[8],t[9]===Symbol.for("react.memo_cache_sentinel")?(p=Oa({variant:"text",size:"xs"}),m=N.jsx(Da,{size:16}),t[9]=p,t[10]=m):(p=t[9],m=t[10]),t[11]!==f?(g=N.jsx(it,{content:"Upload file",children:N.jsx("button",{"data-testid":"file-explorer-upload-button",...f,className:p,children:m})}),t[11]=f,t[12]=g):g=t[12],t[13]!==l?(y=l({}),t[13]=l,t[14]=y):y=t[14],t[15]!==y?(b=N.jsx("input",{...y,type:"file"}),t[15]=y,t[16]=b):b=t[16],t[17]===Symbol.for("react.memo_cache_sentinel")?(x=N.jsx(qs,{size:16}),t[17]=x):x=t[17],t[18]!==n?(v=N.jsx(it,{content:"Refresh",children:N.jsx(J,{"data-testid":"file-explorer-refresh-button",onClick:n,variant:"text",size:"xs",children:x})}),t[18]=n,t[19]=v):v=t[19],t[20]===Symbol.for("react.memo_cache_sentinel")?(w=N.jsx(Kc,{size:16}),t[20]=w):w=t[20],t[21]!==s?(k=N.jsx(it,{content:"Collapse all folders",children:N.jsx(J,{"data-testid":"file-explorer-collapse-button",onClick:s,variant:"text",size:"xs",children:w})}),t[21]=s,t[22]=k):k=t[22],t[23]!==b||t[24]!==v||t[25]!==k||t[26]!==d||t[27]!==h||t[28]!==g?(S=N.jsxs("div",{className:"flex items-center justify-end px-2 flex-shrink-0 border-b",children:[d,h,g,b,v,k]}),t[23]=b,t[24]=v,t[25]=k,t[26]=d,t[27]=h,t[28]=g,t[29]=S):S=t[29],S},IB=e=>{const t=C.c(9),{node:n,onOpenMarimoFile:r}=e;let o,s,i;return t[0]!==n?(o=e=>{n.data.isDirectory||(e.stopPropagation(),n.select())},t[0]=n,t[1]=o):o=t[1],t[2]!==n.data.isMarimoFile||t[3]!==r?(s=n.data.isMarimoFile&&!E()&&N.jsxs("span",{className:"flex-shrink-0 ml-2 text-sm hidden group-hover:inline hover:underline",onClick:r,children:["open ",N.jsx(va,{className:"inline ml-1",size:12})]}),t[2]=n.data.isMarimoFile,t[3]=r,t[4]=s):s=t[4],t[5]!==n.data.name||t[6]!==o||t[7]!==s?(i=N.jsxs("span",{className:"flex-1 overflow-hidden text-ellipsis",onClick:o,children:[n.data.name,s]}),t[5]=n.data.name,t[6]=o,t[7]=s,t[8]=i):i=t[8],i},AB=e=>{const t=C.c(10),{node:n}=e,r=o.useRef(null);let s,i,a,l,c;return t[0]!==n.data.name?(s=()=>{var e,t;null==(e=r.current)||e.focus(),null==(t=r.current)||t.setSelectionRange(0,n.data.name.lastIndexOf("."))},i=[n.data.name],t[0]=n.data.name,t[1]=s,t[2]=i):(s=t[1],i=t[2]),o.useEffect(s,i),t[3]!==n?(a=()=>n.reset(),l=e=>{"Escape"===e.key&&n.reset(),"Enter"===e.key&&n.submit(e.currentTarget.value)},t[3]=n,t[4]=a,t[5]=l):(a=t[4],l=t[5]),t[6]!==n.data.name||t[7]!==a||t[8]!==l?(c=N.jsx("input",{ref:r,className:"flex-1 bg-transparent border border-border text-muted-foreground",defaultValue:n.data.name,onClick:PB,onBlur:a,onKeyDown:l}),t[6]=n.data.name,t[7]=a,t[8]=l,t[9]=c):c=t[9],c},TB=e=>{const t=C.c(53),{node:n,style:r,dragHandle:s}=e;let i;t[0]!==n.data.isDirectory||t[1]!==n.data.name?(i=n.data.isDirectory?"directory":_n(n.data.name),t[0]=n.data.isDirectory,t[1]=n.data.name,t[2]=i):i=t[2];const a=i,l=In[a],{openConfirm:c,openPrompt:d}=ie(),u=o.useContext(EB);let h;t[3]!==n.data.path||t[4]!==u?(h=async e=>{OB(e,u?u.relativeFromRoot(n.data.path):n.data.path)},t[3]=n.data.path,t[4]=u,t[5]=h):h=t[5];const f=h;let p;t[6]!==n.data.name||t[7]!==n.id||t[8]!==n.tree||t[9]!==c?(p=async e=>{e.stopPropagation(),e.preventDefault(),c({title:"Delete file",description:`Are you sure you want to delete ${n.data.name}?`,confirmAction:N.jsx(lt,{onClick:async()=>{await n.tree.delete(n.id)},"aria-label":"Confirm",children:"Delete"})})},t[6]=n.data.name,t[7]=n.id,t[8]=n.tree,t[9]=c,t[10]=p):p=t[10];const m=p;let g;t[11]!==n||t[12]!==d||t[13]!==u?(g=async()=>{n.open(),d({title:"Folder name",onConfirm:async e=>{null==u||u.createFolder(e,n.id)}})},t[11]=n,t[12]=d,t[13]=u,t[14]=g):g=t[14];const y=B(g);let b;t[15]!==n||t[16]!==d||t[17]!==u?(b=async()=>{n.open(),d({title:"File name",onConfirm:async e=>{null==u||u.createFile(e,n.id)}})},t[15]=n,t[16]=d,t[17]=u,t[18]=b):b=t[18];const x=B(b);let v;t[19]!==a||t[20]!==x||t[21]!==y||t[22]!==m||t[23]!==f||t[24]!==n||t[25]!==u?(v=()=>{const e={size:14,strokeWidth:1.5,className:"mr-2"};return N.jsxs(dn,{align:"end",className:"no-print w-[220px]",onClick:LB,onCloseAutoFocus:zB,children:[!n.data.isDirectory&&N.jsxs(tn,{onSelect:()=>n.select(),children:[N.jsx(qd,{...e}),"Open file"]}),!n.data.isDirectory&&!E()&&N.jsxs(tn,{onSelect:()=>{Ra({path:n.data.path})},children:[N.jsx(va,{...e}),"Open file in external editor"]}),n.data.isDirectory&&N.jsxs(N.Fragment,{children:[N.jsxs(tn,{onSelect:()=>x(),children:[N.jsx(nd,{...e}),"Create file"]}),N.jsxs(tn,{onSelect:()=>y(),children:[N.jsx(od,{...e}),"Create folder"]}),N.jsx(ln,{})]}),N.jsxs(tn,{onSelect:()=>n.edit(),children:[N.jsx(Ed,{...e}),"Rename"]}),N.jsxs(tn,{onSelect:async()=>{await nt(n.data.path),ee({title:"Copied to clipboard"})},children:[N.jsx(st,{...e}),"Copy path"]}),u&&N.jsxs(tn,{onSelect:async()=>{await nt(u.relativeFromRoot(n.data.path)),ee({title:"Copied to clipboard"})},children:[N.jsx(st,{...e}),"Copy relative path"]}),N.jsxs(tn,{onSelect:async()=>{ee({title:"Copied to clipboard",description:"Code to open the file has been copied to your clipboard. You can also drag and drop this file into the editor"});const{path:e}=n.data,t=La[a](e);await nt(t)},children:[N.jsx(Pa,{...e}),"Copy snippet for reading file"]}),n.data.isMarimoFile&&!E()&&N.jsxs(N.Fragment,{children:[N.jsx(ln,{}),N.jsxs(tn,{onSelect:f,children:[N.jsx(Fd,{...e}),"Open notebook"]})]}),N.jsx(ln,{}),!n.data.isDirectory&&N.jsxs(N.Fragment,{children:[N.jsxs(tn,{onSelect:async()=>{const e=(await ba({path:n.data.path})).contents||"";Xt(new Blob([e]),n.data.name)},children:[N.jsx(Wt,{...e}),"Download"]}),N.jsx(ln,{})]}),N.jsxs(tn,{onSelect:m,variant:"danger",children:[N.jsx(je,{...e}),"Delete"]})]})},t[19]=a,t[20]=x,t[21]=y,t[22]=m,t[23]=f,t[24]=n,t[25]=u,t[26]=v):v=t[26];const w=v;let k,S,j;t[27]===Symbol.for("react.memo_cache_sentinel")?(k=An("flex items-center cursor-pointer ml-1 text-muted-foreground whitespace-nowrap group"),t[27]=k):k=t[27],t[28]!==n?(S=e=>{e.stopPropagation(),n.data.isDirectory&&n.toggle()},j=N.jsx(MB,{node:n}),t[28]=n,t[29]=S,t[30]=j):(S=t[29],j=t[30]);const _=n.willReceiveDrop&&n.data.isDirectory&&"bg-accent/80 hover:bg-accent/80 text-accent-foreground";let I,A,T,M,O,D,R;return t[31]!==_?(I=An("flex items-center pl-1 py-1 cursor-pointer hover:bg-accent/50 hover:text-accent-foreground rounded-l flex-1 overflow-hidden group",_),t[31]=_,t[32]=I):I=t[32],t[33]!==l||t[34]!==n.data.isMarimoFile?(A=n.data.isMarimoFile?N.jsx("img",{src:"./favicon.ico",className:"w-5 h-5 flex-shrink-0 mr-2 filter grayscale",alt:"Marimo"}):N.jsx(l,{className:"w-5 h-5 flex-shrink-0 mr-2",strokeWidth:1.5}),t[33]=l,t[34]=n.data.isMarimoFile,t[35]=A):A=t[35],t[36]!==f||t[37]!==n?(T=n.isEditing?N.jsx(AB,{node:n}):N.jsx(IB,{node:n,onOpenMarimoFile:f}),t[36]=f,t[37]=n,t[38]=T):T=t[38],t[39]===Symbol.for("react.memo_cache_sentinel")?(M=N.jsx(nn,{asChild:!0,tabIndex:-1,onClick:FB,children:N.jsx(J,{"data-testid":"file-explorer-more-button",variant:"text",tabIndex:-1,size:"xs",className:"mb-0","aria-label":"More options",children:N.jsx(Zc,{strokeWidth:2,className:"w-5 h-5 hidden group-hover:block"})})}),t[39]=M):M=t[39],t[40]!==w?(O=N.jsxs(cn,{modal:!1,children:[M,w()]}),t[40]=w,t[41]=O):O=t[41],t[42]!==I||t[43]!==A||t[44]!==T||t[45]!==O?(D=N.jsxs("span",{className:I,children:[A,T,O]}),t[42]=I,t[43]=A,t[44]=T,t[45]=O,t[46]=D):D=t[46],t[47]!==s||t[48]!==r||t[49]!==D||t[50]!==S||t[51]!==j?(R=N.jsxs("div",{style:r,ref:s,className:k,draggable:!0,onClick:S,children:[j,D]}),t[47]=s,t[48]=r,t[49]=D,t[50]=S,t[51]=j,t[52]=R):R=t[52],R},MB=e=>{const t=C.c(3),{node:n}=e;if(!n.data.isDirectory){let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx("span",{className:"w-5 h-5 flex-shrink-0"}),t[0]=e):e=t[0],e}let r;return t[1]!==n.isOpen?(r=n.isOpen?N.jsx(Se,{className:"w-5 h-5 flex-shrink-0"}):N.jsx(Ee,{className:"w-5 h-5 flex-shrink-0"}),t[1]=n.isOpen,t[2]=r):r=t[2],r};function OB(e,t){e.stopPropagation(),e.preventDefault(),window.open(`/?file=${t}`,"_blank")}function DB(){return null}function RB(e){const{parentNode:t}=e;return!t.data.isDirectory}function PB(e){return e.stopPropagation()}function LB(e){return e.stopPropagation()}function zB(e){return e.preventDefault()}function FB(e){return e.stopPropagation()}const BB=()=>{const e=C.c(20),{ref:t,height:n}=uB(),r=void 0===n?1:n;let o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o={noClick:!0,noKeyboard:!0},e[0]=o):o=e[0];const{getRootProps:s,getInputProps:i,isDragActive:a}=xB(o);let l,c,d,u,h,f,p,m;return e[1]!==s?(l=s(),e[1]=s,e[2]=l):l=e[2],e[3]===Symbol.for("react.memo_cache_sentinel")?(c=An("flex flex-col flex-1 overflow-hidden relative"),e[3]=c):c=e[3],e[4]!==i?(d=i(),e[4]=i,e[5]=d):d=e[5],e[6]!==d?(u=N.jsx("input",{...d}),e[6]=d,e[7]=u):u=e[7],e[8]!==a?(h=a&&N.jsx("div",{className:"absolute inset-0 flex items-center uppercase justify-center text-xl font-bold text-primary/90 bg-accent/85 z-10 border-2 border-dashed border-primary/90 rounded-lg pointer-events-none",children:"Drop files here"}),e[8]=a,e[9]=h):h=e[9],e[10]!==r?(f=N.jsx(NB,{height:r}),e[10]=r,e[11]=f):f=e[11],e[12]!==t||e[13]!==f?(p=N.jsx("div",{ref:t,className:"flex flex-col flex-1 overflow-hidden",children:f}),e[12]=t,e[13]=f,e[14]=p):p=e[14],e[15]!==l||e[16]!==u||e[17]!==h||e[18]!==p?(m=N.jsxs("div",{...l,className:c,children:[u,h,p]}),e[15]=l,e[16]=u,e[17]=h,e[18]=p,e[19]=m):m=e[19],m},UB=e=>{const t=C.c(6),{children:n}=e,{openModal:r,closeModal:o}=ie();let s,i;return t[0]!==o||t[1]!==r?(s=()=>r(N.jsx(VB,{onClose:o})),t[0]=o,t[1]=r,t[2]=s):s=t[2],t[3]!==n||t[4]!==s?(i=N.jsx(Li,{onClick:s,children:n}),t[3]=n,t[4]=s,t[5]=i):i=t[5],i},$B=[yn.lineWrapping],VB=e=>{const t=C.c(23),{onClose:n}=e,[r,s]=o.useState(""),{theme:i}=De();let a,l,c,d,u,h;t[0]!==n?(a=async e=>{e.preventDefault();const t=new FormData(e.target),r=t.get("title"),o=t.get("description"),s=t.get("code");fetch("https://marimo.io/api/suggest-snippet",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:r,description:o,code:s})}),n(),ee({title:"Snippet Submitted",description:"Thank you for contributing! We will review your snippet shortly."})},t[0]=n,t[1]=a):a=t[1],t[2]===Symbol.for("react.memo_cache_sentinel")?(l=N.jsx(Te,{children:"Contribute a Snippet"}),t[2]=l):l=t[2],t[3]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsxs(Ae,{children:[l,N.jsxs(et,{children:["Have a useful snippet you want to share with the community? Submit it here or make a pull request"," ",N.jsx("a",{href:Qe.githubPage,target:"_blank",rel:"noreferrer",className:"underline",children:"on GitHub"}),"."]})]}),t[3]=c):c=t[3],t[4]===Symbol.for("react.memo_cache_sentinel")?(d=N.jsx(tt,{id:"title",name:"title",autoFocus:!0,placeholder:"Title",required:!0,autoComplete:"off"}),u=N.jsx(za,{id:"description",name:"description",autoFocus:!0,placeholder:"Description",rows:5,required:!0,autoComplete:"off"}),t[4]=d,t[5]=u):(d=t[4],u=t[5]),t[6]!==r?(h=N.jsx("input",{type:"hidden",name:"code",value:r}),t[6]=r,t[7]=h):h=t[7];const f="dark"===i?"dark":"light";let p,m,g,y,b,x;return t[8]!==r||t[9]!==f?(p=N.jsx(Ea,{theme:f,language:"python",className:"cm border rounded overflow-hidden",extensions:$B,value:r,onChange:s}),t[8]=r,t[9]=f,t[10]=p):p=t[10],t[11]!==h||t[12]!==p?(m=N.jsxs("div",{className:"flex flex-col gap-6 py-4",children:[d,u,h,p]}),t[11]=h,t[12]=p,t[13]=m):m=t[13],t[14]!==n?(g=N.jsx(J,{"data-testid":"snippet-cancel-button",variant:"secondary",onClick:n,children:"Cancel"}),t[14]=n,t[15]=g):g=t[15],t[16]===Symbol.for("react.memo_cache_sentinel")?(y=N.jsx(J,{"data-testid":"snippet-send-button","aria-label":"Save",variant:"default",type:"submit",children:"Send"}),t[16]=y):y=t[16],t[17]!==g?(b=N.jsxs(rt,{children:[g,y]}),t[17]=g,t[18]=b):b=t[18],t[19]!==a||t[20]!==b||t[21]!==m?(x=N.jsx(Ie,{className:"w-fit",children:N.jsxs("form",{onSubmit:a,children:[c,m,b]})}),t[19]=a,t[20]=b,t[21]=m,t[22]=x):x=t[22],x},HB=[yn.lineWrapping],WB=()=>{const e=C.c(20),[t,n]=u.useState();let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=[],e[0]=r):r=e[0];const{data:s,error:i,loading:a}=jn(YB,r);if(i){let t;return e[1]!==i?(t=N.jsx(xa,{error:i}),e[1]=i,e[2]=t):t=e[2],t}if(a||!s){let t;return e[3]===Symbol.for("react.memo_cache_sentinel")?(t=N.jsx(Di,{size:"medium",centered:!0}),e[3]=t):t=e[3],t}const l=t?"h-1/3":"h-full";let c,d,h,f,p,m,g,y,b;return e[4]!==l?(c=An("border-b rounded-none",l),e[4]=l,e[5]=c):c=e[5],e[6]===Symbol.for("react.memo_cache_sentinel")?(d=N.jsx(Xe,{placeholder:"Search snippets...",className:"h-6 m-1",rootClassName:"flex-1 border-r"}),e[6]=d):d=e[6],e[7]===Symbol.for("react.memo_cache_sentinel")?(h=N.jsxs("div",{className:"flex items-center w-full",children:[d,N.jsx(UB,{children:N.jsx("button",{className:"float-right border-b px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",children:N.jsx(Do,{className:"h-4 w-4"})})})]}),f=N.jsx(Ke,{children:"No results"}),e[7]=h,e[8]=f):(h=e[7],f=e[8]),e[9]===Symbol.for("react.memo_cache_sentinel")?(p=e=>n(e),e[9]=p):p=e[9],e[10]!==s.snippets?(m=N.jsx(qB,{onSelect:p,snippets:s.snippets}),e[10]=s.snippets,e[11]=m):m=e[11],e[12]!==c||e[13]!==m?(g=N.jsxs(Dn,{className:c,children:[h,f,m]}),e[12]=c,e[13]=m,e[14]=g):g=e[14],e[15]!==t?(y=N.jsx(o.Suspense,{children:N.jsx("div",{className:"h-2/3 snippet-viewer flex flex-col",children:t?N.jsx(GB,{snippet:t},t.title):N.jsx(pM,{title:"",description:"Click on a snippet to view its content."})})}),e[15]=t,e[16]=y):y=e[16],e[17]!==g||e[18]!==y?(b=N.jsxs("div",{className:"flex-1 overflow-hidden",children:[g,y]}),e[17]=g,e[18]=y,e[19]=b):b=e[19],b},GB=e=>{const t=C.c(27),{snippet:n}=e,{theme:r}=De(),{createNewCell:o}=U(),s=Du();let i;t[0]!==o||t[1]!==s||t[2]!==n.sections?(i=()=>{for(const e of[...n.sections].reverse())e.code&&o({code:e.code,before:!1,cellId:s??"__end__",skipIfCodeExists:!0})},t[0]=o,t[1]=s,t[2]=n.sections,t[3]=i):i=t[3];const a=i;let l;t[4]!==o||t[5]!==s?(l=e=>{o({code:e,before:!1,cellId:s??"__end__"})},t[4]=o,t[5]=s,t[6]=l):l=t[6];const c=l;let d,u,h,f,p,m;if(t[7]!==n.title?(d=N.jsx("div",{className:"text-sm font-semibold bg-muted border-y px-2 py-1",children:n.title}),t[7]=n.title,t[8]=d):d=t[8],t[9]===Symbol.for("react.memo_cache_sentinel")?(u=N.jsx(zc,{className:"ml-2 h-4 w-4"}),t[9]=u):u=t[9],t[10]!==a?(h=N.jsx("div",{className:"flex justify-end",children:N.jsx(gf,{children:N.jsxs(J,{className:"float-right",size:"xs",variant:"outline",onClick:a,children:["Insert snippet",u]})})}),t[10]=a,t[11]=h):h=t[11],t[12]!==c||t[13]!==n.sections||t[14]!==n.title||t[15]!==r){let e;t[17]!==c||t[18]!==n.title||t[19]!==r?(e=e=>{const{code:t,html:o,id:s}=e;return o?N.jsx("div",{children:ci({html:o})},`${n.title}-${s}`):t?N.jsxs("div",{className:"relative hover-actions-parent pr-2",children:[N.jsx(gf,{children:N.jsx(it,{content:"Insert snippet",children:N.jsx(J,{className:"absolute -top-2 -right-1 z-10 hover-action px-2 bg-background",size:"sm",variant:"outline",onClick:()=>{c(t)},children:N.jsx(zc,{className:"h-5 w-5"})})})}),N.jsx(Ea,{theme:"dark"===r?"dark":"light",language:"python",className:"cm border rounded overflow-hidden",extensions:HB,value:t,readOnly:!0},`${n.title}-${s}`)]},`${n.title}-${s}`):null},t[17]=c,t[18]=n.title,t[19]=r,t[20]=e):e=t[20],f=n.sections.map(e),t[12]=c,t[13]=n.sections,t[14]=n.title,t[15]=r,t[16]=f}else f=t[16];return t[21]!==h||t[22]!==f?(p=N.jsxs("div",{className:"px-2 py-2 space-y-4 overflow-auto flex-1",children:[h,f]}),t[21]=h,t[22]=f,t[23]=p):p=t[23],t[24]!==d||t[25]!==p?(m=N.jsxs(N.Fragment,{children:[d,p]}),t[24]=d,t[25]=p,t[26]=m):m=t[26],m},qB=e=>{const t=C.c(7),{snippets:n,onSelect:r}=e;let o,s;if(t[0]!==r||t[1]!==n){let e;t[3]!==r?(e=e=>N.jsx(qe,{className:"rounded-none",onSelect:()=>r(e),children:N.jsx("div",{className:"flex flex-row gap-2 items-center",children:N.jsx("span",{className:"mt-1 text-accent-foreground",children:e.title})})},e.title),t[3]=r,t[4]=e):e=t[4],o=n.map(e),t[0]=r,t[1]=n,t[2]=o}else o=t[2];return t[5]!==o?(s=N.jsx(us,{className:"flex flex-col overflow-auto",children:o}),t[5]=o,t[6]=s):s=t[6],s};function YB(){return Fa()}const JB=e=>{const t=C.c(11),{value:n,className:r,tooltip:s}=e,[i,a]=o.useState(!1);let l;t[0]!==n?(l=ot.stopPropagation((async()=>{await nt(n).then((()=>{a(!0),setTimeout((()=>a(!1)),2e3)}))})),t[0]=n,t[1]=l):l=t[1];const c=l;let d,u;t[2]!==r||t[3]!==i?(d=i?N.jsx($t,{className:An(r,"text-[var(--grass-11)]")}):N.jsx(st,{className:r}),t[2]=r,t[3]=i,t[4]=d):d=t[4],t[5]!==c||t[6]!==d?(u=N.jsx("span",{onClick:c,children:d}),t[5]=c,t[6]=d,t[7]=u):u=t[7];const h=u;if(!1===s)return h;const f=i?"Copied!":s??"Copy to clipboard";let p;return t[8]!==h||t[9]!==f?(p=N.jsx(it,{content:f,delayDuration:400,children:h}),t[8]=h,t[9]=f,t[10]=p):p=t[10],p},XB=e=>{const t=C.c(8),{variableName:n,className:r}=e;let o;t[0]!==n?(o=()=>{const e=function(e){const t=K.get(te)[e];if(!t)return;return t.declaredBy[0]}(n);if(!e)return;const t=oe(e);t&&Ji(t,n)},t[0]=n,t[1]=o):o=t[1];const s=o;let i,a;return t[2]!==r?(i=An("text-link opacity-80 hover:opacity-100 hover:underline",r),t[2]=r,t[3]=i):i=t[3],t[4]!==s||t[5]!==i||t[6]!==n?(a=N.jsx("button",{type:"button",onClick:s,className:i,children:n}),t[4]=s,t[5]=i,t[6]=n,t[7]=a):a=t[7],a};const KB=({isExpanded:e})=>N.jsx(Ee,{className:An("h-3 w-3 transition-transform",e&&"rotate-90")}),ZB=e=>{const t=C.c(2),{children:n}=e;let r;return t[0]!==n?(r=N.jsx("div",{className:"flex gap-1 items-center font-bold px-2 py-1.5 text-muted-foreground bg-[var(--slate-2)] text-sm",children:n}),t[0]=n,t[1]=r):r=t[1],r},QB=e=>{const t=C.c(5),{content:n,className:r}=e;let o,s;return t[0]!==r?(o=An("text-sm text-muted-foreground py-1",r),t[0]=r,t[1]=o):o=t[1],t[2]!==n||t[3]!==o?(s=N.jsx("div",{className:o,children:n}),t[2]=n,t[3]=o,t[4]=s):s=t[4],s},eU=q((e=>{const t=e(Ba),n=e(te),r=e(Ai);return Mc(t,(e=>{if(!e.variable_name)return-1;const t=Object.values(n).find((t=>t.name===e.variable_name));if(!t)return 0;const o=r.inOrderIds.indexOf(t.declaredBy[0]);return-1===o?0:o}))})),tU=q((e=>{const t=new Map(e(Ua)),n=t.get($a);return n&&0===n.databases.length&&t.delete($a),Mc([...t.values()],(e=>e.name===$a?"":e.name))})),nU=()=>{const e=C.c(32),[t,n]=u.useState(""),r=ae(Ha),o=se(eU),s=se(tU);if(0===o.length&&0===s.length){let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=N.jsx(pM,{title:"No tables found",description:"Any datasets/dataframes in the global scope will be shown here.",action:N.jsx(bh,{children:N.jsxs(J,{variant:"outline",size:"sm",children:["Add database",N.jsx(Do,{className:"h-4 w-4 ml-2"})]})}),icon:N.jsx(ve,{})}),e[0]=t):t=e[0],t}const i=!!t.trim();let a,l,c,d,h,f,p,m,g,y;if(e[1]!==r?(a=e=>{r(e.length>0),n(e)},e[1]=r,e[2]=a):a=e[2],e[3]!==t||e[4]!==a?(l=N.jsx(Xe,{placeholder:"Search tables...",className:"h-6 m-1",value:t,onValueChange:a,rootClassName:"flex-1 border-r"}),e[3]=t,e[4]=a,e[5]=l):l=e[5],e[6]!==i?(c=i&&N.jsx("button",{type:"button",className:"float-right border-b px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",onClick:()=>n(""),children:N.jsx(Cn,{className:"h-4 w-4"})}),e[6]=i,e[7]=c):c=e[7],e[8]===Symbol.for("react.memo_cache_sentinel")?(d=N.jsx(bh,{children:N.jsx("button",{type:"button",className:"float-right border-b px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",children:N.jsx(Do,{className:"h-4 w-4"})})}),e[8]=d):d=e[8],e[9]!==l||e[10]!==c?(h=N.jsxs("div",{className:"flex items-center w-full",children:[l,c,d]}),e[9]=l,e[10]=c,e[11]=h):h=e[11],e[12]!==s||e[13]!==i||e[14]!==t){let n;e[16]!==i||e[17]!==t?(n=e=>N.jsx(rU,{connection:e,hasChildren:e.databases.length>0,children:e.databases.map((n=>N.jsx(oU,{engineName:e.name,database:n,hasSearch:i,children:N.jsx(sU,{schemas:n.schemas,engineName:e.name,databaseName:n.name,hasSearch:i,searchValue:t})},n.name)))},e.name),e[16]=i,e[17]=t,e[18]=n):n=e[18],f=s.map(n),e[12]=s,e[13]=i,e[14]=t,e[15]=f}else f=e[15];return e[19]!==s.length||e[20]!==o.length?(p=s.length>0&&o.length>0&&N.jsxs(ZB,{children:[N.jsx(yl,{className:"h-4 w-4 text-muted-foreground"}),N.jsx("span",{children:"Python"})]}),e[19]=s.length,e[20]=o.length,e[21]=p):p=e[21],e[22]!==t||e[23]!==o?(m=o.length>0&&N.jsx(aU,{tables:o,searchValue:t}),e[22]=t,e[23]=o,e[24]=m):m=e[24],e[25]!==f||e[26]!==p||e[27]!==m?(g=N.jsxs(us,{className:"flex flex-col",children:[f,p,m]}),e[25]=f,e[26]=p,e[27]=m,e[28]=g):g=e[28],e[29]!==h||e[30]!==g?(y=N.jsxs(Dn,{className:"border-b bg-background rounded-none h-full pb-10 overflow-auto outline-none",shouldFilter:!1,children:[h,g]}),e[29]=h,e[30]=g,e[31]=y):y=e[31],y},rU=e=>{var t;const n=C.c(17),{connection:r,children:o,hasChildren:s}=e,i=r.databases.length>0?(null==(t=r.databases[0])?void 0:t.engine)||"In-Memory":r.name;let a,l,c;n[0]!==r.dialect?(a=N.jsx(jt,{className:"h-4 w-4 text-muted-foreground",name:r.dialect}),l=Wa(r.dialect),n[0]=r.dialect,n[1]=a,n[2]=l):(a=n[1],l=n[2]),n[3]!==l?(c=N.jsx("span",{children:l}),n[3]=l,n[4]=c):c=n[4];const d=i;let u,h,f,p;return n[5]!==d?(u=N.jsxs("span",{className:"text-xs text-muted-foreground",children:["(",N.jsx(XB,{variableName:d}),")"]}),n[5]=d,n[6]=u):u=n[6],n[7]!==a||n[8]!==c||n[9]!==u?(h=N.jsxs(ZB,{children:[a,c,u]}),n[7]=a,n[8]=c,n[9]=u,n[10]=h):h=n[10],n[11]!==o||n[12]!==s?(f=s?o:N.jsx(QB,{content:"No databases available",className:"pl-2"}),n[11]=o,n[12]=s,n[13]=f):f=n[13],n[14]!==h||n[15]!==f?(p=N.jsxs(N.Fragment,{children:[h,f]}),n[14]=h,n[15]=f,n[16]=p):p=n[16],p},oU=e=>{const t=C.c(28),{hasSearch:n,engineName:r,database:o,children:s}=e,[i,a]=u.useState(!1),[l,c]=u.useState(!1);let d,h,f;t[0]!==n?(d=()=>{a(n)},h=[n],t[0]=n,t[1]=d,t[2]=h):(d=t[1],h=t[2]),u.useEffect(d,h),t[3]!==i||t[4]!==l?(f=()=>{a(!i),c(!l)},t[3]=i,t[4]=l,t[5]=f):f=t[5];const p=`${r}:${o.name}`;let m;t[6]!==i?(m=N.jsx(KB,{isExpanded:i}),t[6]=i,t[7]=m):m=t[7];const g=l&&i?"text-foreground":"text-muted-foreground";let y,b;t[8]!==g?(y=An("h-4 w-4",g),t[8]=g,t[9]=y):y=t[9],t[10]!==y?(b=N.jsx(ve,{className:y}),t[10]=y,t[11]=b):b=t[11];const x=l&&i&&"font-semibold";let v,w,k,S;t[12]!==x?(v=An(x),t[12]=x,t[13]=v):v=t[13],t[14]!==o.name?(w=""===o.name?N.jsx("i",{children:"Not connected"}):o.name,t[14]=o.name,t[15]=w):w=t[15],t[16]!==v||t[17]!==w?(k=N.jsx("span",{className:v,children:w}),t[16]=v,t[17]=w,t[18]=k):k=t[18],t[19]!==k||t[20]!==f||t[21]!==p||t[22]!==m||t[23]!==b?(S=N.jsxs(qe,{className:"text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",onSelect:f,value:p,children:[m,b,k]}),t[19]=k,t[20]=f,t[21]=p,t[22]=m,t[23]=b,t[24]=S):S=t[24];const E=i&&s;let j;return t[25]!==S||t[26]!==E?(j=N.jsxs(N.Fragment,{children:[S,E]}),t[25]=S,t[26]=E,t[27]=j):j=t[27],j},sU=e=>{const t=C.c(16),{schemas:n,engineName:r,databaseName:o,hasSearch:s,searchValue:i}=e;if(0===n.length){let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx(QB,{content:"No schemas available",className:"pl-6"}),t[0]=e):e=t[0],e}let a,l;if(t[1]!==o||t[2]!==r||t[3]!==s||t[4]!==n||t[5]!==i){let e;t[7]!==i?(e=e=>!i||e.tables.some((e=>e.name.toLowerCase().includes(i.toLowerCase()))),t[7]=i,t[8]=e):e=t[8];const l=n.filter(e);let c;t[9]!==o||t[10]!==r||t[11]!==s||t[12]!==i?(c=e=>N.jsx(iU,{databaseName:o,schema:e,hasSearch:s,children:N.jsx(aU,{tables:e.tables,searchValue:i,sqlTableContext:{engine:r,database:o,schema:e.name}})},e.name),t[9]=o,t[10]=r,t[11]=s,t[12]=i,t[13]=c):c=t[13],a=l.map(c),t[1]=o,t[2]=r,t[3]=s,t[4]=n,t[5]=i,t[6]=a}else a=t[6];return t[14]!==a?(l=N.jsx(N.Fragment,{children:a}),t[14]=a,t[15]=l):l=t[15],l},iU=e=>{const t=C.c(26),{databaseName:n,schema:r,children:o,hasSearch:s}=e,[i,a]=u.useState(!1),[l,c]=u.useState(!1),d=`${n}:${r.name}`;let h,f,p,m;t[0]!==s?(h=()=>{a(s)},f=[s],t[0]=s,t[1]=h,t[2]=f):(h=t[1],f=t[2]),u.useEffect(h,f),t[3]!==i||t[4]!==l?(p=()=>{a(!i),c(!l)},t[3]=i,t[4]=l,t[5]=p):p=t[5],t[6]!==i?(m=N.jsx(KB,{isExpanded:i}),t[6]=i,t[7]=m):m=t[7];const g=l&&i&&"text-foreground";let y,b;t[8]!==g?(y=An("h-4 w-4 text-muted-foreground",g),t[8]=g,t[9]=y):y=t[9],t[10]!==y?(b=N.jsx(kd,{className:y}),t[10]=y,t[11]=b):b=t[11];const x=l&&i&&"font-semibold";let v,w,k;t[12]!==x?(v=An(x),t[12]=x,t[13]=v):v=t[13],t[14]!==r.name||t[15]!==v?(w=N.jsx("span",{className:v,children:r.name}),t[14]=r.name,t[15]=v,t[16]=w):w=t[16],t[17]!==w||t[18]!==p||t[19]!==m||t[20]!==b||t[21]!==d?(k=N.jsxs(qe,{className:"text-sm flex flex-row gap-1 items-center pl-5 cursor-pointer rounded-none",onSelect:p,value:d,children:[m,b,w]}),t[17]=w,t[18]=p,t[19]=m,t[20]=b,t[21]=d,t[22]=k):k=t[22];const S=i&&o;let E;return t[23]!==k||t[24]!==S?(E=N.jsxs(N.Fragment,{children:[k,S]}),t[23]=k,t[24]=S,t[25]=E):E=t[25],E},aU=e=>{const t=C.c(12),{tables:n,sqlTableContext:r,searchValue:o}=e;if(0===n.length){let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx(QB,{content:"No tables found",className:"pl-9"}),t[0]=e):e=t[0],e}let s,i;if(t[1]!==o||t[2]!==r||t[3]!==n){let e;t[5]!==o?(e=e=>!o||e.name.toLowerCase().includes(o.toLowerCase()),t[5]=o,t[6]=e):e=t[6];const i=n.filter(e);let a;t[7]!==o||t[8]!==r?(a=e=>N.jsx(lU,{table:e,sqlTableContext:r,isSearching:!!o},e.name),t[7]=o,t[8]=r,t[9]=a):a=t[9],s=i.map(a),t[1]=o,t[2]=r,t[3]=n,t[4]=s}else s=t[4];return t[10]!==s?(i=N.jsx(N.Fragment,{children:s}),t[10]=s,t[11]=i):i=t[11],i},lU=e=>{const t=C.c(46),{table:n,sqlTableContext:r,isSearching:o}=e,[s,i]=u.useState(!1),[a,l]=ze(Ga),c=a.get(n.name),d=n.columns.length>0,{loading:h,error:f}=jn((async()=>{if(s&&!d&&r&&!c){const{engine:e,database:t,schema:o}=r,s=await qa.request({engine:e,database:t,schema:o,tableName:n.name});if(!(null==s?void 0:s.table))throw new Error("No table details available");l((e=>new Map(e).set(n.name,s)))}}),[s,d,c]),p=se(ce),m=Du(),{createNewCell:g}=U();let y;t[0]!==p||t[1]!==g||t[2]!==m||t[3]!==r||t[4]!==n.engine||t[5]!==n.name||t[6]!==n.source_type?(y=()=>{Nu(p,g,m);let e="";if(r){const{engine:t,schema:o}=r;e=`_df = mo.sql(f"SELECT * FROM ${o}.${n.name} LIMIT 100", engine=${t})`}else e:switch(n.source_type){case"local":e=`mo.ui.table(${n.name})`;break e;case"duckdb":e=`_df = mo.sql(f"SELECT * FROM ${n.name} LIMIT 100")`;break e;case"connection":e=`_df = mo.sql(f"SELECT * FROM ${n.name} LIMIT 100", engine=${n.engine})`;break e;default:M(n.source_type)}g({code:e,before:!1,cellId:m??"__end__"})},t[0]=p,t[1]=g,t[2]=m,t[3]=r,t[4]=n.engine,t[5]=n.name,t[6]=n.source_type,t[7]=y):y=t[7];const b=y;let x;t[8]!==n.num_columns||t[9]!==n.num_rows?(x=()=>{const e=[];return null!=n.num_rows&&e.push(`${n.num_rows} rows`),null!=n.num_columns&&e.push(`${n.num_columns} columns`),0===e.length?null:N.jsx("div",{className:"flex flex-row gap-2 items-center pl-6 group-hover:hidden",children:N.jsx("span",{className:"text-xs text-muted-foreground",children:e.join(", ")})})},t[8]=n.num_columns,t[9]=n.num_rows,t[10]=x):x=t[10];const v=x;let w;t[11]!==s||t[12]!==o||t[13]!==n.source_type||t[14]!==n.type?(w=()=>{if("local"===n.source_type)return;const e="table"===n.type?Vd:me;return N.jsx(e,{className:"h-3 w-3",strokeWidth:s||o?2.5:void 0})},t[11]=s,t[12]=o,t[13]=n.source_type,t[14]=n.type,t[15]=w):w=t[15];const k=w,S=r?`${r.database}.${r.schema}.${n.name}`:n.name,E=r&&"pl-12",j=(s||o)&&"font-semibold";let _,I,A,T,O,D,R,P,L,z;t[16]!==E||t[17]!==j?(_=An("rounded-none group h-8 cursor-pointer",E,j),t[16]=E,t[17]=j,t[18]=_):_=t[18],t[19]!==s?(I=()=>i(!s),t[19]=s,t[20]=I):I=t[20],t[21]!==k?(A=k(),t[21]=k,t[22]=A):A=t[22],t[23]!==n.name?(T=N.jsx("span",{className:"text-sm",children:n.name}),t[23]=n.name,t[24]=T):T=t[24],t[25]!==A||t[26]!==T?(O=N.jsxs("div",{className:"flex gap-2 items-center flex-1",children:[A,T]}),t[25]=A,t[26]=T,t[27]=O):O=t[27],t[28]!==v?(D=v(),t[28]=v,t[29]=D):D=t[29],t[30]!==b?(R=ot.stopPropagation((()=>b())),t[30]=b,t[31]=R):R=t[31],t[32]===Symbol.for("react.memo_cache_sentinel")?(P=N.jsx(Bd,{className:"h-3 w-3"}),t[32]=P):P=t[32],t[33]!==R?(L=N.jsx(it,{content:"Add table to notebook",delayDuration:400,children:N.jsx(J,{className:"group-hover:inline-flex hidden",variant:"text",size:"icon",onClick:R,children:P})}),t[33]=R,t[34]=L):L=t[34],t[35]!==s||t[36]!==O||t[37]!==D||t[38]!==L||t[39]!==_||t[40]!==I||t[41]!==S?(z=N.jsxs(qe,{className:_,value:S,"aria-selected":s,forceMount:!0,onSelect:I,children:[O,D,L]}),t[35]=s,t[36]=O,t[37]=D,t[38]=L,t[39]=_,t[40]=I,t[41]=S,t[42]=z):z=t[42];const F=s&&(()=>{var e;if(h)return N.jsxs("div",{className:"pl-12 text-sm bg-blue-50 dark:bg-[var(--accent)] text-blue-500 dark:text-blue-50 flex items-center gap-2 p-2 h-8",children:[N.jsx(Ms,{className:"h-4 w-4 animate-spin"}),"Loading columns..."]});if(f)return N.jsxs("div",{className:"pl-12 text-sm bg-red-50 dark:bg-red-900 text-red-600 dark:text-red-50 flex items-center gap-2 p-2 h-8",children:[N.jsx(Cn,{className:"h-4 w-4"}),f.message]});return(d?n.columns:(null==(e=null==c?void 0:c.table)?void 0:e.columns)||[]).map((e=>N.jsx(cU,{table:(null==c?void 0:c.table)??n,column:e,sqlTableContext:r},e.name)))})();let B;return t[43]!==z||t[44]!==F?(B=N.jsxs(N.Fragment,{children:[z,F]}),t[43]=z,t[44]=F,t[45]=B):B=t[45],B},cU=e=>{var t,n;const r=C.c(52),{table:o,column:s,sqlTableContext:i}=e,[a,l]=u.useState(!1),c=se(Ha),d=ae(Ya);let h,f;r[0]!==c?(h=()=>{c&&l(!1)},f=[c],r[0]=c,r[1]=h,r[2]=f):(h=r[1],f=r[2]),u.useEffect(h,f),d(a?e=>new Set([...e,`${o.name}:${s.name}`]):e=>(e.delete(`${o.name}:${s.name}`),new Set(e)));const p=Ja[s.type],m=se(ce),g=Du(),{createNewCell:y}=U(),{columnsPreviews:b}=Xa();let x;r[3]!==s.name||r[4]!==o.primary_keys?(x=(null==(t=o.primary_keys)?void 0:t.includes(s.name))||!1,r[3]=s.name,r[4]=o.primary_keys,r[5]=x):x=r[5];const v=x;let w;r[6]!==s.name||r[7]!==o.indexes?(w=(null==(n=o.indexes)?void 0:n.includes(s.name))||!1,r[6]=s.name,r[7]=o.indexes,r[8]=w):w=r[8];const k=w;let S;r[9]!==m||r[10]!==y||r[11]!==g?(S=e=>{e.includes("alt")&&function(e,t,n){Eu("altair","alt",(r=>{const o=re.create();t({cellId:n??"__end__",before:!1,code:r,lastCodeRun:e?r:void 0,newCellId:o,autoFocus:!1}),e&&G({cellIds:[o],codes:[r]})}))}(m,y,g),y({code:e,before:!1,cellId:g??"__end__"})},r[9]=m,r[10]=y,r[11]=g,r[12]=S):S=r[12];const E=S,j=`${o.name}.${s.name}`,_=`${o.name}.${s.name}`;let I;r[13]!==a?(I=()=>l(!a),r[13]=a,r[14]=I):I=r[14];const A=i?"pl-14":"pl-7";let T,M,O,D,R,P,L,z,F,B,$;return r[15]!==A?(T=An("flex flex-row gap-2 items-center flex-1",A),r[15]=A,r[16]=T):T=r[16],r[17]!==p?(M=N.jsx(p,{className:"flex-shrink-0 h-3 w-3",strokeWidth:1.5}),r[17]=p,r[18]=M):M=r[18],r[19]!==s.name?(O=N.jsx("span",{children:s.name}),r[19]=s.name,r[20]=O):O=r[20],r[21]!==v?(D=v&&N.jsx(it,{content:"Primary Key",delayDuration:100,children:N.jsx("span",{className:"text-xs text-black bg-gray-200 rounded px-1",children:"PK"})}),r[21]=v,r[22]=D):D=r[22],r[23]!==k?(R=k&&N.jsx(it,{content:"Indexed",delayDuration:100,children:N.jsx("span",{className:"text-xs text-black bg-gray-200 rounded px-1",children:"IDX"})}),r[23]=k,r[24]=R):R=r[24],r[25]!==T||r[26]!==M||r[27]!==O||r[28]!==D||r[29]!==R?(P=N.jsxs("div",{className:T,children:[M,O,D,R]}),r[25]=T,r[26]=M,r[27]=O,r[28]=D,r[29]=R,r[30]=P):P=r[30],r[31]!==s.name?(L=N.jsx(it,{content:"Copy column name",delayDuration:400,children:N.jsx(J,{variant:"text",size:"icon",className:"group-hover:opacity-100 opacity-0 hover:bg-muted text-muted-foreground hover:text-foreground",children:N.jsx(JB,{tooltip:!1,value:s.name,className:"h-3 w-3"})})}),r[31]=s.name,r[32]=L):L=r[32],r[33]!==s.external_type?(z=N.jsx("span",{className:"text-xs text-muted-foreground",children:s.external_type}),r[33]=s.external_type,r[34]=z):z=r[34],r[35]!==P||r[36]!==L||r[37]!==z||r[38]!==j||r[39]!==_||r[40]!==I?(F=N.jsxs(qe,{className:"rounded-none py-1 group cursor-pointer",value:_,onSelect:I,children:[P,L,z]},j),r[35]=P,r[36]=L,r[37]=z,r[38]=j,r[39]=_,r[40]=I,r[41]=F):F=r[41],r[42]!==s||r[43]!==b||r[44]!==E||r[45]!==a||r[46]!==i||r[47]!==o?(B=a&&N.jsx("div",{className:"pl-10 pr-2 py-2 bg-[var(--slate-1)] shadow-inner border-b",children:N.jsx(Rn,{children:N.jsx(uU,{table:o,column:s,onAddColumnChart:E,preview:b.get(`${o.name}:${s.name}`),sqlTableContext:i})})}),r[42]=s,r[43]=b,r[44]=E,r[45]=a,r[46]=i,r[47]=o,r[48]=B):B=r[48],r[49]!==F||r[50]!==B?($=N.jsxs(N.Fragment,{children:[F,B]}),r[49]=F,r[50]=B,r[51]=$):$=r[51],$},dU=u.lazy((()=>Va((()=>import("./index-D2GHK8-k.js")),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13]),import.meta.url).then((e=>({default:e.VegaLite}))))),uU=e=>{const t=C.c(39),{table:n,column:r,preview:o,onAddColumnChart:s,sqlTableContext:i}=e,{theme:a}=De();if("connection"===n.source_type||"duckdb"===n.source_type&&"main"!==(null==i?void 0:i.schema)){const e=r.name,o=r.external_type;let a,l,c,d;return t[0]!==r||t[1]!==s||t[2]!==i||t[3]!==n?(a=ot.stopPropagation((()=>{s(hU(n,r,i))})),t[0]=r,t[1]=s,t[2]=i,t[3]=n,t[4]=a):a=t[4],t[5]===Symbol.for("react.memo_cache_sentinel")?(l=N.jsx(Bd,{className:"h-3 w-3 mr-1"}),t[5]=l):l=t[5],t[6]!==a?(c=N.jsxs(J,{variant:"outline",size:"xs",onClick:a,children:[l," Add SQL cell"]}),t[6]=a,t[7]=c):c=t[7],t[8]!==r.external_type||t[9]!==r.name||t[10]!==c?(d=N.jsxs("span",{className:"text-xs text-muted-foreground gap-2 flex items-center justify-between pl-7",children:[e," (",o,")",c]}),t[8]=r.external_type,t[9]=r.name,t[10]=c,t[11]=d):d=t[11],d}if(o||Ka({source:n.source,tableName:n.name,columnName:r.name,sourceType:n.source_type}),!o){let e;return t[12]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx("span",{className:"text-xs text-muted-foreground",children:"Loading..."}),t[12]=e):e=t[12],e}let l;t[13]!==o.error?(l=o.error&&N.jsx("span",{className:"text-xs text-muted-foreground",children:o.error}),t[13]=o.error,t[14]=l):l=t[14];const c=l;let d;t[15]!==o.summary?(d=o.summary&&N.jsx("div",{className:"gap-x-16 gap-y-1 grid grid-cols-2-fit border rounded p-2 empty:hidden",children:Object.entries(o.summary).map(fU)}),t[15]=o.summary,t[16]=d):d=t[16];const u=d,h=pU;let f;t[17]!==o.chart_spec||t[18]!==a?(f=o.chart_spec&&N.jsx(dU,{spec:h(JSON.parse(o.chart_spec)),width:"container",height:100,actions:!1,theme:"dark"===a?"dark":"vox"}),t[17]=o.chart_spec,t[18]=a,t[19]=f):f=t[19];const p=f;let m;t[20]!==s||t[21]!==o.chart_code||t[22]!==n.source_type?(m=o.chart_code&&"local"===n.source_type&&N.jsx(it,{content:"Add chart to notebook",delayDuration:400,children:N.jsx(J,{variant:"outline",size:"icon",className:"z-10 bg-background absolute right-1 -top-1",onClick:ot.stopPropagation((()=>s(o.chart_code||""))),children:N.jsx(Bd,{className:"h-3 w-3"})})}),t[20]=s,t[21]=o.chart_code,t[22]=n.source_type,t[23]=m):m=t[23];const g=m;let y;t[24]!==r||t[25]!==s||t[26]!==i||t[27]!==n?(y="duckdb"===n.source_type&&N.jsx(it,{content:"Add SQL cell",delayDuration:400,children:N.jsx(J,{variant:"outline",size:"icon",className:"z-10 bg-background absolute right-1 -top-1",onClick:ot.stopPropagation((()=>{s(hU(n,r,i))})),children:N.jsx(Bd,{className:"h-3 w-3"})})}),t[24]=r,t[25]=s,t[26]=i,t[27]=n,t[28]=y):y=t[28];const b=y;let x;t[29]!==o.chart_max_rows_errors?(x=o.chart_max_rows_errors&&N.jsx("span",{className:"text-xs text-muted-foreground",children:"Too many rows to render the chart."}),t[29]=o.chart_max_rows_errors,t[30]=x):x=t[30];const v=x;if(!(c||u||p||v)){let e;return t[31]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx("span",{className:"text-xs text-muted-foreground",children:"No data"}),t[31]=e):e=t[31],e}let w;return t[32]!==g||t[33]!==b||t[34]!==p||t[35]!==v||t[36]!==c||t[37]!==u?(w=N.jsxs("div",{className:"flex flex-col gap-2 relative",children:[c,g,b,v,p,u]}),t[32]=g,t[33]=b,t[34]=p,t[35]=v,t[36]=c,t[37]=u,t[38]=w):w=t[38],w};function hU(e,t,n){if(n){const{engine:r,schema:o}=n;return`_df = mo.sql(f'SELECT ${t.name} FROM ${o}.${e.name} LIMIT 100', engine=${r})`}return`_df = mo.sql(f'SELECT "${t.name}" FROM ${e.name} LIMIT 100')`}function fU(e){const[t,n]=e;return null==n?null:N.jsxs("div",{className:"flex items-center gap-1 group",children:[N.jsx(JB,{className:"h-3 w-3 invisible group-hover:visible",value:String(n)}),N.jsx("span",{className:"text-xs min-w-[60px] uppercase",children:t}),N.jsx("span",{className:"text-xs font-bold text-muted-foreground tracking-wide",children:Za(n)})]},t)}function pU(e){return{...e,config:{...e.config,background:"transparent"}}}const mU=()=>{const e=C.c(1);let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=N.jsx(nU,{}),e[0]=t):t=e[0],t},gU=e=>{const t=C.c(4),{isOpen:n,children:r}=e,[o,s]=u.useState(!1);let i,a;return t[0]!==o||t[1]!==n?(i=()=>{n&&!o&&s(!0)},a=[n,o],t[0]=o,t[1]=n,t[2]=i,t[3]=a):(i=t[2],a=t[3]),u.useEffect(i,a),o?r:null},yU=Nt("marimo:scratchpadHistory:v1",[]),bU=q(!1),xU=q(null,((e,t,n)=>{if(!(n=n.trim()))return;const r=e(yU),o=[n,...r.filter((e=>e!==n))].slice(0,15);t(yU,o)})),vU={hide_code:!1,disabled:!1},wU=()=>{const e=C.c(80),t=Wn(),[n]=Re(),{theme:r}=De(),s=o.useRef(null),i=Du(),{createNewCell:a,updateCellCode:l}=U(),c=t.cellRuntime[Oe],d=null==c?void 0:c.output,u=null==c?void 0:c.status,h=null==c?void 0:c.consoleOutputs,f=t.cellData[Oe],p=(null==f?void 0:f.code)??"",m=ae(xU),[g,y]=ze(bU),b=se(yU);let x;e[0]!==m||e[1]!==p?(x=()=>{Qa({code:p}),m(p)},e[0]=m,e[1]=p,e[2]=x):x=e[2];const v=B(x);let w;e[3]!==p||e[4]!==a||e[5]!==i?(w=()=>{p.trim()&&a({code:p,before:!1,cellId:i??"__end__"})},e[3]=p,e[4]=a,e[5]=i,e[6]=w):w=e[6];const k=B(w);let S;e[7]!==l?(S=()=>{l({cellId:Oe,code:"",formattingChange:!1}),Qa({code:""});const e=s.current;e&&e.dispatch({changes:{from:0,to:e.state.doc.length,insert:""}})},e[7]=l,e[8]=S):S=e[8];const E=B(S);let j;e[9]!==y||e[10]!==l?(j=e=>{y(!1),l({cellId:Oe,code:e,formattingChange:!1});const t=s.current;t&&t.dispatch({changes:{from:0,to:t.state.doc.length,insert:e}})},e[9]=y,e[10]=l,e[11]=j):j=e[11];const _=B(j),[I,A]=o.useState();let T,M,O,D,R,P,L,z;if(e[12]!==p||e[13]!==h||e[14]!==E||e[15]!==k||e[16]!==v||e[17]!==_||e[18]!==b||e[19]!==g||e[20]!==I||e[21]!==d||e[22]!==y||e[23]!==u||e[24]!==r||e[25]!==l||e[26]!==n){const t=()=>N.jsxs(N.Fragment,{children:[N.jsx("div",{className:"overflow-auto flex-shrink-0 max-h-[40%]",children:N.jsx(SI,{theme:r,allowFocus:!1,showPlaceholder:!1,id:Oe,code:p,config:vU,status:"idle",serializedEditorState:null,runCell:v,updateCellCode:l,createNewCell:Kn.NOOP,deleteCell:Kn.NOOP,focusCell:Kn.NOOP,moveCell:Kn.NOOP,moveToNextCell:void 0,updateCellConfig:Kn.NOOP,clearSerializedEditorState:Kn.NOOP,userConfig:n,editorViewRef:s,setEditorView:e=>{s.current=e},hidden:!1,temporarilyShowCode:Kn.NOOP,languageAdapter:I,setLanguageAdapter:A})}),N.jsx("div",{className:"flex-1 overflow-auto flex-shrink-0",children:N.jsx(ti,{allowExpand:!1,output:d,className:"output-area",cellId:Oe,stale:!1})}),N.jsx("div",{className:"overflow-auto flex-shrink-0 max-h-[35%]",children:N.jsx(oc,{consoleOutputs:h,className:"overflow-auto",stale:!1,cellName:el,onSubmitDebugger:Kn.NOOP,cellId:Oe,debuggerActive:!1})})]});let o;e[33]!==_||e[34]!==b||e[35]!==g||e[36]!==r?(o=()=>g?N.jsx("div",{className:"absolute inset-0 z-100 bg-background p-3 border-none overflow-auto",children:N.jsx("div",{className:"overflow-auto flex flex-col gap-3",children:b.map(((e,t)=>N.jsx("div",{className:"border rounded-md hover:shadow-sm cursor-pointer hover:border-input overflow-hidden",onClick:()=>_(e),children:N.jsx(Ea,{language:"python",theme:r,basicSetup:{highlightActiveLine:!1,highlightActiveLineGutter:!1},value:e.trim(),editable:!1,readOnly:!0})},t)))})}):null,e[33]=_,e[34]=b,e[35]=g,e[36]=r,e[37]=o):o=e[37];const i=o;let a,c,f,m,x,w,S,C,j;O="flex flex-col h-full overflow-hidden divide-y",e[38]===Symbol.for("react.memo_cache_sentinel")?(D=xt.create(Oe),e[38]=D):D=e[38],e[39]===Symbol.for("react.memo_cache_sentinel")?(a=Bt("cell.run"),e[39]=a):a=e[39],e[40]===Symbol.for("react.memo_cache_sentinel")?(c=N.jsx(Nd,{color:"var(--grass-11)",size:16}),e[40]=c):c=e[40],e[41]!==v||e[42]!==g?(f=N.jsx(it,{content:a,children:N.jsx(J,{"data-testid":"scratchpad-run-button",onClick:v,disabled:g,variant:"text",size:"xs",children:c})}),e[41]=v,e[42]=g,e[43]=f):f=e[43],e[44]===Symbol.for("react.memo_cache_sentinel")?(m=N.jsx(Qc,{size:16}),e[44]=m):m=e[44],e[45]!==E||e[46]!==g?(x=N.jsx(it,{content:"Clear code and outputs",children:N.jsx(J,{disabled:g,size:"xs",variant:"text",onClick:E,children:m})}),e[45]=E,e[46]=g,e[47]=x):x=e[47],e[48]===Symbol.for("react.memo_cache_sentinel")?(w=N.jsx(zc,{size:16}),e[48]=w):w=e[48],e[49]!==k||e[50]!==g?(S=N.jsx(gf,{children:N.jsx(it,{content:"Insert code",children:N.jsx(J,{disabled:g,size:"xs",variant:"text",onClick:k,children:w})})}),e[49]=k,e[50]=g,e[51]=S):S=e[51],e[52]!==u?(C=("running"===u||"queued"===u)&&N.jsx(Di,{className:"inline",size:"small"}),e[52]=u,e[53]=C):C=e[53],e[54]===Symbol.for("react.memo_cache_sentinel")?(j=N.jsx("div",{className:"flex-1"}),e[54]=j):j=e[54];const L=g&&"bg-[var(--sky-3)] rounded-none";let z,F;e[55]!==L?(z=An(L),e[55]=L,e[56]=z):z=e[56],e[57]!==g||e[58]!==y?(F=()=>y(!g),e[57]=g,e[58]=y,e[59]=F):F=e[59];const B=0===b.length;let U,$;e[60]===Symbol.for("react.memo_cache_sentinel")?(U=N.jsx(ld,{size:16}),e[60]=U):U=e[60],e[61]!==z||e[62]!==F||e[63]!==B?($=N.jsx(it,{content:"Toggle history",children:N.jsx(J,{size:"xs",variant:"text",className:z,onClick:F,disabled:B,children:U})}),e[61]=z,e[62]=F,e[63]=B,e[64]=$):$=e[64],e[65]!==f||e[66]!==x||e[67]!==S||e[68]!==C||e[69]!==$?(R=N.jsxs("div",{className:"flex items-center flex-shrink-0",children:[f,x,S,C,j,$]}),e[65]=f,e[66]=x,e[67]=S,e[68]=C,e[69]=$,e[70]=R):R=e[70],T="flex-1 divide-y relative overflow-hidden flex flex-col",M=t(),P=i(),e[12]=p,e[13]=h,e[14]=E,e[15]=k,e[16]=v,e[17]=_,e[18]=b,e[19]=g,e[20]=I,e[21]=d,e[22]=y,e[23]=u,e[24]=r,e[25]=l,e[26]=n,e[27]=T,e[28]=M,e[29]=O,e[30]=D,e[31]=R,e[32]=P}else T=e[27],M=e[28],O=e[29],D=e[30],R=e[31],P=e[32];return e[71]!==T||e[72]!==M||e[73]!==P?(L=N.jsxs("div",{className:T,children:[M,P]}),e[71]=T,e[72]=M,e[73]=P,e[74]=L):L=e[74],e[75]!==L||e[76]!==O||e[77]!==D||e[78]!==R?(z=N.jsxs("div",{className:O,id:D,children:[R,L]}),e[75]=L,e[76]=O,e[77]=D,e[78]=R,e[79]=z):z=e[79],z},kU=()=>{const e=C.c(1);let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=N.jsx(wU,{}),e[0]=t):t=e[0],t},SU=()=>{const e=C.c(16),[t]=Re(),n=t.package_management.manager;let r;e[0]!==n?(r=[n],e[0]=n,e[1]=r):r=e[1];const{data:o,loading:s,error:i,reload:a}=jn(jU,r);if(s&&!o){let t;return e[2]===Symbol.for("react.memo_cache_sentinel")?(t=N.jsx(Di,{size:"medium",centered:!0}),e[2]=t):t=e[2],t}if(i){let t;return e[3]!==i?(t=N.jsx(xa,{error:i}),e[3]=i,e[4]=t):t=e[4],t}let l;e[5]!==(null==o?void 0:o.packages)?(l=(null==o?void 0:o.packages)||[],e[5]=null==o?void 0:o.packages,e[6]=l):l=e[6];const c=l;let d,u,h;return e[7]!==n||e[8]!==a?(d=N.jsx(CU,{packageManager:n,onSuccess:a}),e[7]=n,e[8]=a,e[9]=d):d=e[9],e[10]!==c||e[11]!==a?(u=N.jsx(EU,{packages:c,onSuccess:a}),e[10]=c,e[11]=a,e[12]=u):u=e[12],e[13]!==d||e[14]!==u?(h=N.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[d,u]}),e[13]=d,e[14]=u,e[15]=h):h=e[15],h},CU=({onSuccess:e,packageManager:t})=>{const[n,r]=u.useState(""),[o,s]=u.useState(!1),{handleClick:i}=Ll(),a=async()=>{try{s(!0);const t=await rl({package:n});t.success?(e(),ee({title:"Package added",description:N.jsxs("span",{children:["The package ",N.jsx(vr,{className:"inline",children:n})," and its dependencies has been added to your environment."]})})):ee({title:"Failed to add package",description:t.error,variant:"danger"})}finally{r(""),s(!1)}};return N.jsxs("div",{className:"flex items-center w-full border-b",children:[N.jsx(sa,{placeholder:`Install packages with ${t}...`,id:nb,icon:o?N.jsx(Di,{size:"small",className:"mr-2 h-4 w-4 shrink-0 opacity-50"}):N.jsx(it,{content:"Change package manager",children:N.jsx(Bc,{onClick:()=>i("packageManagement"),className:"mr-2 h-4 w-4 shrink-0 opacity-50 hover:opacity-80 cursor-pointer"})}),rootClassName:"flex-1 border-none",value:n,onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),a())},onChange:e=>r(e.target.value)}),N.jsx(it,{delayDuration:300,side:"left",align:"start",content:N.jsxs("div",{className:"text-sm flex flex-col w-full max-w-[360px]",children:["Packages are installed using the package manager specified in your user configuration. Depending on your package manager, you can install packages with various formats:",N.jsxs("div",{className:"flex flex-col gap-2 mt-2",children:[N.jsxs("div",{children:[N.jsx("span",{className:"font-bold tracking-wide",children:"Package name:"})," A package name; this will install the latest version.",N.jsx("div",{className:"text-muted-foreground",children:"Example: httpx"})]}),N.jsxs("div",{children:[N.jsx("span",{className:"font-bold tracking-wide",children:"Package and version:"})," ","A package with a specific version or version range.",N.jsx("div",{className:"text-muted-foreground",children:"Examples: httpx==0.27.0, httpx>=0.27.0"})]}),N.jsxs("div",{children:[N.jsx("span",{className:"font-bold tracking-wide",children:"Git:"})," A Git repository",N.jsx("div",{className:"text-muted-foreground",children:"Example: git+https://github.com/encode/httpx"})]}),N.jsxs("div",{children:[N.jsx("span",{className:"font-bold tracking-wide",children:"URL:"})," A remote wheel or source distribution.",N.jsx("div",{className:"text-muted-foreground",children:"Example: https://example.com/httpx-0.27.0.tar.gz"})]}),N.jsxs("div",{children:[N.jsx("span",{className:"font-bold tracking-wide",children:"Path:"})," A local wheel, source distribution, or project directory.",N.jsx("div",{className:"text-muted-foreground",children:"Example: /example/foo-0.1.0-py3-none-any.whl"})]})]})]}),children:N.jsx(nl,{className:"h-4 w-4 cursor-help text-muted-foreground hover:text-foreground bg-transparent"})}),N.jsx("button",{type:"button",className:An("float-right px-2 m-0 h-full text-sm text-secondary-foreground ml-2",n&&"bg-accent text-accent-foreground","disabled:cursor-not-allowed disabled:opacity-50"),onClick:a,disabled:!n,children:"Add"})]})},EU=e=>{const t=C.c(9),{onSuccess:n,packages:r}=e;if(0===r.length){let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=N.jsx(pM,{title:"No packages",description:"No packages are installed in this environment.",icon:N.jsx(Bc,{})}),t[0]=e):e=t[0],e}let o,s,i;if(t[1]===Symbol.for("react.memo_cache_sentinel")?(o=N.jsx(aa,{children:N.jsxs(la,{children:[N.jsx(ca,{children:"Name"}),N.jsx(ca,{children:"Version"}),N.jsx(ca,{})]})}),t[1]=o):o=t[1],t[2]!==n||t[3]!==r){let e;t[5]!==n?(e=e=>N.jsxs(la,{className:"group",onClick:async()=>{await nt(`${e.name}==${e.version}`),ee({title:"Copied to clipboard"})},children:[N.jsx(ha,{children:e.name}),N.jsx(ha,{children:e.version}),N.jsx(ha,{children:N.jsx(NU,{packageName:e.name,onSuccess:n})})]},e.name),t[5]=n,t[6]=e):e=t[6],s=r.map(e),t[2]=n,t[3]=r,t[4]=s}else s=t[4];return t[7]!==s?(i=N.jsxs(ia,{className:"overflow-auto flex-1",children:[o,N.jsx(ua,{children:s})]}),t[7]=s,t[8]=i):i=t[8],i},NU=({packageName:e,onSuccess:t})=>{const[n,r]=u.useState(!1);return n?N.jsx(Di,{size:"small",className:"float-right mr-2 h-4 w-4 shrink-0 opacity-50"}):N.jsx("button",{type:"button",className:An("float-right px-2 h-full text-xs text-muted-foreground hover:text-foreground","invisible group-hover:visible"),onClick:ot.stopPropagation((async()=>{try{r(!0);const n=await ol({package:e});n.success?(t(),ee({title:"Package removed",description:N.jsxs("span",{children:["The package ",N.jsx(vr,{className:"inline",children:e})," has been removed from your environment."]})})):ee({title:"Failed to add package",description:n.error,variant:"danger"})}finally{r(!1)}})),children:"Remove"})};function jU(){return tl()}var _U="ScrollArea",[IU,AU]=so(_U),[TU,MU]=IU(_U),OU=o.forwardRef(((e,t)=>{const{__scopeScrollArea:n,type:r="hover",dir:s,scrollHideDelay:i=600,...a}=e,[l,c]=o.useState(null),[d,u]=o.useState(null),[h,f]=o.useState(null),[p,m]=o.useState(null),[g,y]=o.useState(null),[b,x]=o.useState(0),[v,w]=o.useState(0),[k,S]=o.useState(!1),[C,E]=o.useState(!1),j=sl(t,(e=>c(e))),_=il(s);return N.jsx(TU,{scope:n,type:r,dir:_,scrollHideDelay:i,scrollArea:l,viewport:d,onViewportChange:u,content:h,onContentChange:f,scrollbarX:p,onScrollbarXChange:m,scrollbarXEnabled:k,onScrollbarXEnabledChange:S,scrollbarY:g,onScrollbarYChange:y,scrollbarYEnabled:C,onScrollbarYEnabledChange:E,onCornerWidthChange:x,onCornerHeightChange:w,children:N.jsx(ao.div,{dir:_,...a,ref:j,style:{position:"relative","--radix-scroll-area-corner-width":b+"px","--radix-scroll-area-corner-height":v+"px",...e.style}})})}));OU.displayName=_U;var DU="ScrollAreaViewport",RU=o.forwardRef(((e,t)=>{const{__scopeScrollArea:n,children:r,nonce:s,...i}=e,a=MU(DU,n),l=o.useRef(null),c=sl(t,l,a.onViewportChange);return N.jsxs(N.Fragment,{children:[N.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:s}),N.jsx(ao.div,{"data-radix-scroll-area-viewport":"",...i,ref:c,style:{overflowX:a.scrollbarXEnabled?"scroll":"hidden",overflowY:a.scrollbarYEnabled?"scroll":"hidden",...e.style},children:N.jsx("div",{ref:a.onContentChange,style:{minWidth:"100%",display:"table"},children:r})})]})}));RU.displayName=DU;var PU="ScrollAreaScrollbar",LU=o.forwardRef(((e,t)=>{const{forceMount:n,...r}=e,s=MU(PU,e.__scopeScrollArea),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:a}=s,l="horizontal"===e.orientation;return o.useEffect((()=>(l?i(!0):a(!0),()=>{l?i(!1):a(!1)})),[l,i,a]),"hover"===s.type?N.jsx(zU,{...r,ref:t,forceMount:n}):"scroll"===s.type?N.jsx(FU,{...r,ref:t,forceMount:n}):"auto"===s.type?N.jsx(BU,{...r,ref:t,forceMount:n}):"always"===s.type?N.jsx(UU,{...r,ref:t}):null}));LU.displayName=PU;var zU=o.forwardRef(((e,t)=>{const{forceMount:n,...r}=e,s=MU(PU,e.__scopeScrollArea),[i,a]=o.useState(!1);return o.useEffect((()=>{const e=s.scrollArea;let t=0;if(e){const n=()=>{window.clearTimeout(t),a(!0)},r=()=>{t=window.setTimeout((()=>a(!1)),s.scrollHideDelay)};return e.addEventListener("pointerenter",n),e.addEventListener("pointerleave",r),()=>{window.clearTimeout(t),e.removeEventListener("pointerenter",n),e.removeEventListener("pointerleave",r)}}}),[s.scrollArea,s.scrollHideDelay]),N.jsx(al,{present:n||i,children:N.jsx(BU,{"data-state":i?"visible":"hidden",...r,ref:t})})})),FU=o.forwardRef(((e,t)=>{const{forceMount:n,...r}=e,s=MU(PU,e.__scopeScrollArea),i="horizontal"===e.orientation,a=i$((()=>c("SCROLL_END")),100),[l,c]=(d="hidden",u={hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}},o.useReducer(((e,t)=>u[e][t]??e),d));var d,u;return o.useEffect((()=>{if("idle"===l){const e=window.setTimeout((()=>c("HIDE")),s.scrollHideDelay);return()=>window.clearTimeout(e)}}),[l,s.scrollHideDelay,c]),o.useEffect((()=>{const e=s.viewport,t=i?"scrollLeft":"scrollTop";if(e){let n=e[t];const r=()=>{const r=e[t];n!==r&&(c("SCROLL"),a()),n=r};return e.addEventListener("scroll",r),()=>e.removeEventListener("scroll",r)}}),[s.viewport,i,c,a]),N.jsx(al,{present:n||"hidden"!==l,children:N.jsx(UU,{"data-state":"hidden"===l?"hidden":"visible",...r,ref:t,onPointerEnter:lo(e.onPointerEnter,(()=>c("POINTER_ENTER"))),onPointerLeave:lo(e.onPointerLeave,(()=>c("POINTER_LEAVE")))})})})),BU=o.forwardRef(((e,t)=>{const n=MU(PU,e.__scopeScrollArea),{forceMount:r,...s}=e,[i,a]=o.useState(!1),l="horizontal"===e.orientation,c=i$((()=>{if(n.viewport){const e=n.viewport.offsetWidth{const{orientation:n="vertical",...r}=e,s=MU(PU,e.__scopeScrollArea),i=o.useRef(null),a=o.useRef(0),[l,c]=o.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),d=e$(l.viewport,l.content),u={...r,sizes:l,onSizesChange:c,hasThumb:Boolean(d>0&&d<1),onThumbChange:e=>i.current=e,onThumbPointerUp:()=>a.current=0,onThumbPointerDown:e=>a.current=e};function h(e,t){return function(e,t,n,r="ltr"){const o=t$(n),s=o/2,i=t||s,a=o-i,l=n.scrollbar.paddingStart+i,c=n.scrollbar.size-n.scrollbar.paddingEnd-a,d=n.content-n.viewport,u="ltr"===r?[0,d]:[-1*d,0];return r$([l,c],u)(e)}(e,a.current,l,t)}return"horizontal"===n?N.jsx($U,{...u,ref:t,onThumbPositionChange:()=>{if(s.viewport&&i.current){const e=n$(s.viewport.scrollLeft,l,s.dir);i.current.style.transform=`translate3d(${e}px, 0, 0)`}},onWheelScroll:e=>{s.viewport&&(s.viewport.scrollLeft=e)},onDragScroll:e=>{s.viewport&&(s.viewport.scrollLeft=h(e,s.dir))}}):"vertical"===n?N.jsx(VU,{...u,ref:t,onThumbPositionChange:()=>{if(s.viewport&&i.current){const e=n$(s.viewport.scrollTop,l);i.current.style.transform=`translate3d(0, ${e}px, 0)`}},onWheelScroll:e=>{s.viewport&&(s.viewport.scrollTop=e)},onDragScroll:e=>{s.viewport&&(s.viewport.scrollTop=h(e))}}):null})),$U=o.forwardRef(((e,t)=>{const{sizes:n,onSizesChange:r,...s}=e,i=MU(PU,e.__scopeScrollArea),[a,l]=o.useState(),c=o.useRef(null),d=sl(t,c,i.onScrollbarXChange);return o.useEffect((()=>{c.current&&l(getComputedStyle(c.current))}),[c]),N.jsx(GU,{"data-orientation":"horizontal",...s,ref:d,sizes:n,style:{bottom:0,left:"rtl"===i.dir?"var(--radix-scroll-area-corner-width)":0,right:"ltr"===i.dir?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":t$(n)+"px",...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,n)=>{if(i.viewport){const r=i.viewport.scrollLeft+t.deltaX;e.onWheelScroll(r),o$(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&i.viewport&&a&&r({content:i.viewport.scrollWidth,viewport:i.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:QU(a.paddingLeft),paddingEnd:QU(a.paddingRight)}})}})})),VU=o.forwardRef(((e,t)=>{const{sizes:n,onSizesChange:r,...s}=e,i=MU(PU,e.__scopeScrollArea),[a,l]=o.useState(),c=o.useRef(null),d=sl(t,c,i.onScrollbarYChange);return o.useEffect((()=>{c.current&&l(getComputedStyle(c.current))}),[c]),N.jsx(GU,{"data-orientation":"vertical",...s,ref:d,sizes:n,style:{top:0,right:"ltr"===i.dir?0:void 0,left:"rtl"===i.dir?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":t$(n)+"px",...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,n)=>{if(i.viewport){const r=i.viewport.scrollTop+t.deltaY;e.onWheelScroll(r),o$(r,n)&&t.preventDefault()}},onResize:()=>{c.current&&i.viewport&&a&&r({content:i.viewport.scrollHeight,viewport:i.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:QU(a.paddingTop),paddingEnd:QU(a.paddingBottom)}})}})})),[HU,WU]=IU(PU),GU=o.forwardRef(((e,t)=>{const{__scopeScrollArea:n,sizes:r,hasThumb:s,onThumbChange:i,onThumbPointerUp:a,onThumbPointerDown:l,onThumbPositionChange:c,onDragScroll:d,onWheelScroll:u,onResize:h,...f}=e,p=MU(PU,n),[m,g]=o.useState(null),y=sl(t,(e=>g(e))),b=o.useRef(null),x=o.useRef(""),v=p.viewport,w=r.content-r.viewport,k=vo(u),S=vo(c),C=i$(h,10);function E(e){if(b.current){const t=e.clientX-b.current.left,n=e.clientY-b.current.top;d({x:t,y:n})}}return o.useEffect((()=>{const e=e=>{const t=e.target;(null==m?void 0:m.contains(t))&&k(e,w)};return document.addEventListener("wheel",e,{passive:!1}),()=>document.removeEventListener("wheel",e,{passive:!1})}),[v,m,w,k]),o.useEffect(S,[r,S]),a$(m,C),a$(p.content,C),N.jsx(HU,{scope:n,scrollbar:m,hasThumb:s,onThumbChange:vo(i),onThumbPointerUp:vo(a),onThumbPositionChange:S,onThumbPointerDown:vo(l),children:N.jsx(ao.div,{...f,ref:y,style:{position:"absolute",...f.style},onPointerDown:lo(e.onPointerDown,(e=>{if(0===e.button){e.target.setPointerCapture(e.pointerId),b.current=m.getBoundingClientRect(),x.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",p.viewport&&(p.viewport.style.scrollBehavior="auto"),E(e)}})),onPointerMove:lo(e.onPointerMove,E),onPointerUp:lo(e.onPointerUp,(e=>{const t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=x.current,p.viewport&&(p.viewport.style.scrollBehavior=""),b.current=null}))})})})),qU="ScrollAreaThumb",YU=o.forwardRef(((e,t)=>{const{forceMount:n,...r}=e,o=WU(qU,e.__scopeScrollArea);return N.jsx(al,{present:n||o.hasThumb,children:N.jsx(JU,{ref:t,...r})})})),JU=o.forwardRef(((e,t)=>{const{__scopeScrollArea:n,style:r,...s}=e,i=MU(qU,n),a=WU(qU,n),{onThumbPositionChange:l}=a,c=sl(t,(e=>a.onThumbChange(e))),d=o.useRef(void 0),u=i$((()=>{d.current&&(d.current(),d.current=void 0)}),100);return o.useEffect((()=>{const e=i.viewport;if(e){const t=()=>{if(u(),!d.current){const t=s$(e,l);d.current=t,l()}};return l(),e.addEventListener("scroll",t),()=>e.removeEventListener("scroll",t)}}),[i.viewport,u,l]),N.jsx(ao.div,{"data-state":a.hasThumb?"visible":"hidden",...s,ref:c,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...r},onPointerDownCapture:lo(e.onPointerDownCapture,(e=>{const t=e.target.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;a.onThumbPointerDown({x:n,y:r})})),onPointerUp:lo(e.onPointerUp,a.onThumbPointerUp)})}));YU.displayName=qU;var XU="ScrollAreaCorner",KU=o.forwardRef(((e,t)=>{const n=MU(XU,e.__scopeScrollArea),r=Boolean(n.scrollbarX&&n.scrollbarY);return"scroll"!==n.type&&r?N.jsx(ZU,{...e,ref:t}):null}));KU.displayName=XU;var ZU=o.forwardRef(((e,t)=>{const{__scopeScrollArea:n,...r}=e,s=MU(XU,n),[i,a]=o.useState(0),[l,c]=o.useState(0),d=Boolean(i&&l);return a$(s.scrollbarX,(()=>{var e;const t=(null==(e=s.scrollbarX)?void 0:e.offsetHeight)||0;s.onCornerHeightChange(t),c(t)})),a$(s.scrollbarY,(()=>{var e;const t=(null==(e=s.scrollbarY)?void 0:e.offsetWidth)||0;s.onCornerWidthChange(t),a(t)})),d?N.jsx(ao.div,{...r,ref:t,style:{width:i,height:l,position:"absolute",right:"ltr"===s.dir?0:void 0,left:"rtl"===s.dir?0:void 0,bottom:0,...e.style}}):null}));function QU(e){return e?parseInt(e,10):0}function e$(e,t){const n=e/t;return isNaN(n)?0:n}function t$(e){const t=e$(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function n$(e,t,n="ltr"){const r=t$(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,s=t.scrollbar.size-o,i=t.content-t.viewport,a=s-r,l=cl(e,"ltr"===n?[0,i]:[-1*i,0]);return r$([0,i],[0,a])(l)}function r$(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function o$(e,t){return e>0&&e{})=>{let n={left:e.scrollLeft,top:e.scrollTop},r=0;return function o(){const s={left:e.scrollLeft,top:e.scrollTop},i=n.left!==s.left,a=n.top!==s.top;(i||a)&&t(),n=s,r=window.requestAnimationFrame(o)}(),()=>window.cancelAnimationFrame(r)};function i$(e,t){const n=vo(e),r=o.useRef(0);return o.useEffect((()=>()=>window.clearTimeout(r.current)),[]),o.useCallback((()=>{window.clearTimeout(r.current),r.current=window.setTimeout(n,t)}),[n,t])}function a$(e,t){const n=vo(t);ll((()=>{let t=0;if(e){const r=new ResizeObserver((()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(n)}));return r.observe(e),()=>{window.cancelAnimationFrame(t),r.unobserve(e)}}}),[e,n])}var l$=OU,c$=RU,d$=KU;const u$=o.forwardRef(((e,t)=>{const n=C.c(15);let r,o,s,i,a,l,c,d;return n[0]!==e?(({className:o,children:r,...s}=e),n[0]=e,n[1]=r,n[2]=o,n[3]=s):(r=n[1],o=n[2],s=n[3]),n[4]!==o?(i=An("relative overflow-hidden",o),n[4]=o,n[5]=i):i=n[5],n[6]!==r?(a=N.jsx(c$,{className:"h-full w-full rounded-[inherit]",children:r}),n[6]=r,n[7]=a):a=n[7],n[8]===Symbol.for("react.memo_cache_sentinel")?(l=N.jsx(h$,{}),c=N.jsx(d$,{}),n[8]=l,n[9]=c):(l=n[8],c=n[9]),n[10]!==s||n[11]!==t||n[12]!==i||n[13]!==a?(d=N.jsxs(l$,{ref:t,className:i,...s,children:[a,l,c]}),n[10]=s,n[11]=t,n[12]=i,n[13]=a,n[14]=d):d=n[14],d}));u$.displayName=l$.displayName;const h$=o.forwardRef(((e,t)=>{const n=C.c(14);let r,o,s;n[0]!==e?(({className:r,orientation:s,...o}=e),n[0]=e,n[1]=r,n[2]=o,n[3]=s):(r=n[1],o=n[2],s=n[3]);const i=void 0===s?"vertical":s,a="vertical"===i&&"h-full w-2.5 border-l border-l-transparent p-[1px]",l="horizontal"===i&&"h-2.5 flex-col border-t border-t-transparent p-[1px]";let c,d,u;return n[4]!==r||n[5]!==a||n[6]!==l?(c=An("flex touch-none select-none transition-colors",a,l,r),n[4]=r,n[5]=a,n[6]=l,n[7]=c):c=n[7],n[8]===Symbol.for("react.memo_cache_sentinel")?(d=N.jsx(YU,{className:"relative flex-1 rounded-full bg-border"}),n[8]=d):d=n[8],n[9]!==i||n[10]!==o||n[11]!==t||n[12]!==c?(u=N.jsx(LU,{ref:t,orientation:i,className:c,...o,children:d}),n[9]=i,n[10]=o,n[11]=t,n[12]=c,n[13]=u):u=n[13],u}));h$.displayName=LU.displayName;const f$=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,p$=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,m$={};function g$(e,t){return(m$.jsx?p$:f$).test(e)}const y$=/[ \t\n\f\r]/g;function b$(e){return""===e.replace(y$,"")}class x${constructor(e,t,n){this.property=e,this.normal=t,n&&(this.space=n)}}function v$(e,t){const n={},r={};let o=-1;for(;++o"xlink:"+t.slice(5).toLowerCase(),properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null}}),F$=L$({space:"xml",transform:(e,t)=>"xml:"+t.slice(3).toLowerCase(),properties:{xmlLang:null,xmlBase:null,xmlSpace:null}});function B$(e,t){return t in e?e[t]:t}function U$(e,t){return B$(e,t.toLowerCase())}const $$=L$({space:"xmlns",attributes:{xmlnsxlink:"xmlns:xlink"},transform:U$,properties:{xmlns:null,xmlnsXLink:null}}),V$=L$({transform:(e,t)=>"role"===t?t:"aria-"+t.slice(4).toLowerCase(),properties:{ariaActiveDescendant:null,ariaAtomic:E$,ariaAutoComplete:null,ariaBusy:E$,ariaChecked:E$,ariaColCount:j$,ariaColIndex:j$,ariaColSpan:j$,ariaControls:_$,ariaCurrent:null,ariaDescribedBy:_$,ariaDetails:null,ariaDisabled:E$,ariaDropEffect:_$,ariaErrorMessage:null,ariaExpanded:E$,ariaFlowTo:_$,ariaGrabbed:E$,ariaHasPopup:null,ariaHidden:E$,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:_$,ariaLevel:j$,ariaLive:null,ariaModal:E$,ariaMultiLine:E$,ariaMultiSelectable:E$,ariaOrientation:null,ariaOwns:_$,ariaPlaceholder:null,ariaPosInSet:j$,ariaPressed:E$,ariaReadOnly:E$,ariaRelevant:null,ariaRequired:E$,ariaRoleDescription:_$,ariaRowCount:j$,ariaRowIndex:j$,ariaRowSpan:j$,ariaSelected:E$,ariaSetSize:j$,ariaSort:null,ariaValueMax:j$,ariaValueMin:j$,ariaValueNow:j$,ariaValueText:null,role:null}}),H$=L$({space:"html",attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},transform:U$,mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:I$,acceptCharset:_$,accessKey:_$,action:null,allow:null,allowFullScreen:C$,allowPaymentRequest:C$,allowUserMedia:C$,alt:null,as:null,async:C$,autoCapitalize:null,autoComplete:_$,autoFocus:C$,autoPlay:C$,blocking:_$,capture:null,charSet:null,checked:C$,cite:null,className:_$,cols:j$,colSpan:null,content:null,contentEditable:E$,controls:C$,controlsList:_$,coords:j$|I$,crossOrigin:null,data:null,dateTime:null,decoding:null,default:C$,defer:C$,dir:null,dirName:null,disabled:C$,download:N$,draggable:E$,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:C$,formTarget:null,headers:_$,height:j$,hidden:C$,high:j$,href:null,hrefLang:null,htmlFor:_$,httpEquiv:_$,id:null,imageSizes:null,imageSrcSet:null,inert:C$,inputMode:null,integrity:null,is:null,isMap:C$,itemId:null,itemProp:_$,itemRef:_$,itemScope:C$,itemType:_$,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:C$,low:j$,manifest:null,max:null,maxLength:j$,media:null,method:null,min:null,minLength:j$,multiple:C$,muted:C$,name:null,nonce:null,noModule:C$,noValidate:C$,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:C$,optimum:j$,pattern:null,ping:_$,placeholder:null,playsInline:C$,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:C$,referrerPolicy:null,rel:_$,required:C$,reversed:C$,rows:j$,rowSpan:j$,sandbox:_$,scope:null,scoped:C$,seamless:C$,selected:C$,shadowRootClonable:C$,shadowRootDelegatesFocus:C$,shadowRootMode:null,shape:null,size:j$,sizes:null,slot:null,span:j$,spellCheck:E$,src:null,srcDoc:null,srcLang:null,srcSet:null,start:j$,step:null,style:null,tabIndex:j$,target:null,title:null,translate:null,type:null,typeMustMatch:C$,useMap:null,value:E$,width:j$,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:_$,axis:null,background:null,bgColor:null,border:j$,borderColor:null,bottomMargin:j$,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:C$,declare:C$,event:null,face:null,frame:null,frameBorder:null,hSpace:j$,leftMargin:j$,link:null,longDesc:null,lowSrc:null,marginHeight:j$,marginWidth:j$,noResize:C$,noHref:C$,noShade:C$,noWrap:C$,object:null,profile:null,prompt:null,rev:null,rightMargin:j$,rules:null,scheme:null,scrolling:E$,standby:null,summary:null,text:null,topMargin:j$,valueType:null,version:null,vAlign:null,vLink:null,vSpace:j$,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:C$,disableRemotePlayback:C$,prefix:null,property:null,results:j$,security:null,unselectable:null}}),W$=L$({space:"svg",attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},transform:B$,properties:{about:A$,accentHeight:j$,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:j$,amplitude:j$,arabicForm:null,ascent:j$,attributeName:null,attributeType:null,azimuth:j$,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:j$,by:null,calcMode:null,capHeight:j$,className:_$,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:j$,diffuseConstant:j$,direction:null,display:null,dur:null,divisor:j$,dominantBaseline:null,download:C$,dx:null,dy:null,edgeMode:null,editable:null,elevation:j$,enableBackground:null,end:null,event:null,exponent:j$,externalResourcesRequired:null,fill:null,fillOpacity:j$,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:I$,g2:I$,glyphName:I$,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:j$,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:j$,horizOriginX:j$,horizOriginY:j$,id:null,ideographic:j$,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:j$,k:j$,k1:j$,k2:j$,k3:j$,k4:j$,kernelMatrix:A$,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:j$,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:j$,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:j$,overlineThickness:j$,paintOrder:null,panose1:null,path:null,pathLength:j$,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:_$,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:j$,pointsAtY:j$,pointsAtZ:j$,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:A$,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:A$,rev:A$,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:A$,requiredFeatures:A$,requiredFonts:A$,requiredFormats:A$,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:j$,specularExponent:j$,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:j$,strikethroughThickness:j$,string:null,stroke:null,strokeDashArray:A$,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:j$,strokeOpacity:j$,strokeWidth:null,style:null,surfaceScale:j$,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:A$,tabIndex:j$,tableValues:null,target:null,targetX:j$,targetY:j$,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:A$,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:j$,underlineThickness:j$,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:j$,values:null,vAlphabetic:j$,vMathematical:j$,vectorEffect:null,vHanging:j$,vIdeographic:j$,version:null,vertAdvY:j$,vertOriginX:j$,vertOriginY:j$,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:j$,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null}}),G$=/^data[-\w.:]+$/i,q$=/-[a-z]/g,Y$=/[A-Z]/g;function J$(e){return"-"+e.toLowerCase()}function X$(e){return e.charAt(1).toUpperCase()}const K$={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},Z$=v$([F$,z$,$$,V$,H$],"html"),Q$=v$([F$,z$,$$,V$,W$],"svg");const eV=dl(ul()),tV=eV.default||eV,nV=oV("end"),rV=oV("start");function oV(e){return function(t){const n=t&&t.position&&t.position[e]||{};if("number"==typeof n.line&&n.line>0&&"number"==typeof n.column&&n.column>0)return{line:n.line,column:n.column,offset:"number"==typeof n.offset&&n.offset>-1?n.offset:void 0}}}function sV(e){return e&&"object"==typeof e?"position"in e||"type"in e?aV(e.position):"start"in e||"end"in e?aV(e):"line"in e||"column"in e?iV(e):"":""}function iV(e){return lV(e&&e.line)+":"+lV(e&&e.column)}function aV(e){return iV(e&&e.start)+"-"+iV(e&&e.end)}function lV(e){return e&&"number"==typeof e?e:1}class cV extends Error{constructor(e,t,n){super(),"string"==typeof t&&(n=t,t=void 0);let r="",o={},s=!1;if(t&&(o="line"in t&&"column"in t||"start"in t&&"end"in t?{place:t}:"type"in t?{ancestors:[t],place:t.position}:{...t}),"string"==typeof e?r=e:!o.cause&&e&&(s=!0,r=e.message,o.cause=e),!o.ruleId&&!o.source&&"string"==typeof n){const e=n.indexOf(":");-1===e?o.ruleId=n:(o.source=n.slice(0,e),o.ruleId=n.slice(e+1))}if(!o.place&&o.ancestors&&o.ancestors){const e=o.ancestors[o.ancestors.length-1];e&&(o.place=e.position)}const i=o.place&&"start"in o.place?o.place.start:o.place;this.ancestors=o.ancestors||void 0,this.cause=o.cause||void 0,this.column=i?i.column:void 0,this.fatal=void 0,this.file,this.message=r,this.line=i?i.line:void 0,this.name=sV(o.place)||"1:1",this.place=o.place||void 0,this.reason=this.message,this.ruleId=o.ruleId||void 0,this.source=o.source||void 0,this.stack=s&&o.cause&&"string"==typeof o.cause.stack?o.cause.stack:"",this.actual,this.expected,this.note,this.url}}cV.prototype.file="",cV.prototype.name="",cV.prototype.reason="",cV.prototype.message="",cV.prototype.stack="",cV.prototype.column=void 0,cV.prototype.line=void 0,cV.prototype.ancestors=void 0,cV.prototype.cause=void 0,cV.prototype.fatal=void 0,cV.prototype.place=void 0,cV.prototype.ruleId=void 0,cV.prototype.source=void 0;const dV={}.hasOwnProperty,uV=new Map,hV=/[A-Z]/g,fV=/-([a-z])/g,pV=new Set(["table","tbody","thead","tfoot","tr"]),mV=new Set(["td","th"]),gV="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function yV(e,t){if(!t||void 0===t.Fragment)throw new TypeError("Expected `Fragment` in options");const n=t.filePath||void 0;let r;if(t.development){if("function"!=typeof t.jsxDEV)throw new TypeError("Expected `jsxDEV` in options when `development: true`");r=function(e,t){return n;function n(n,r,o,s){const i=Array.isArray(o.children),a=rV(n);return t(r,o,s,i,{columnNumber:a?a.column-1:void 0,fileName:e,lineNumber:a?a.line:void 0},void 0)}}(n,t.jsxDEV)}else{if("function"!=typeof t.jsx)throw new TypeError("Expected `jsx` in production options");if("function"!=typeof t.jsxs)throw new TypeError("Expected `jsxs` in production options");r=function(e,t,n){return r;function r(e,r,o,s){const i=Array.isArray(o.children)?n:t;return s?i(r,o,s):i(r,o)}}(0,t.jsx,t.jsxs)}const o={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:!1!==t.passKeys,passNode:t.passNode||!1,schema:"svg"===t.space?Q$:Z$,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:!1!==t.tableCellAlignToStyle},s=bV(o,e,void 0);return s&&"string"!=typeof s?s:o.create(e,o.Fragment,{children:s||void 0},void 0)}function bV(e,t,n){return"element"===t.type?function(e,t,n){const r=e.schema;let o=r;"svg"===t.tagName.toLowerCase()&&"html"===r.space&&(o=Q$,e.schema=o);e.ancestors.push(t);const s=SV(e,t.tagName,!1),i=function(e,t){const n={};let r,o;for(o in t.properties)if("children"!==o&&dV.call(t.properties,o)){const s=kV(e,o,t.properties[o]);if(s){const[o,i]=s;e.tableCellAlignToStyle&&"align"===o&&"string"==typeof i&&mV.has(t.tagName)?r=i:n[o]=i}}if(r){(n.style||(n.style={}))["css"===e.stylePropertyNameCase?"text-align":"textAlign"]=r}return n}(e,t);let a=wV(e,t);pV.has(t.tagName)&&(a=a.filter((function(e){return"string"!=typeof e||!("object"==typeof(t=e)?"text"===t.type&&b$(t.value):b$(t));var t})));return xV(e,i,s,t),vV(i,a),e.ancestors.pop(),e.schema=r,e.create(t,s,i,n)}(e,t,n):"mdxFlowExpression"===t.type||"mdxTextExpression"===t.type?function(e,t){if(t.data&&t.data.estree&&e.evaluater){const n=t.data.estree.body[0];return n.type,e.evaluater.evaluateExpression(n.expression)}CV(e,t.position)}(e,t):"mdxJsxFlowElement"===t.type||"mdxJsxTextElement"===t.type?function(e,t,n){const r=e.schema;let o=r;"svg"===t.name&&"html"===r.space&&(o=Q$,e.schema=o);e.ancestors.push(t);const s=null===t.name?e.Fragment:SV(e,t.name,!0),i=function(e,t){const n={};for(const r of t.attributes)if("mdxJsxExpressionAttribute"===r.type)if(r.data&&r.data.estree&&e.evaluater){const t=r.data.estree.body[0];t.type;const o=t.expression;o.type;const s=o.properties[0];s.type,Object.assign(n,e.evaluater.evaluateExpression(s.argument))}else CV(e,t.position);else{const o=r.name;let s;if(r.value&&"object"==typeof r.value)if(r.value.data&&r.value.data.estree&&e.evaluater){const t=r.value.data.estree.body[0];t.type,s=e.evaluater.evaluateExpression(t.expression)}else CV(e,t.position);else s=null===r.value||r.value;n[o]=s}return n}(e,t),a=wV(e,t);return xV(e,i,s,t),vV(i,a),e.ancestors.pop(),e.schema=r,e.create(t,s,i,n)}(e,t,n):"mdxjsEsm"===t.type?function(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);CV(e,t.position)}(e,t):"root"===t.type?function(e,t,n){const r={};return vV(r,wV(e,t)),e.create(t,e.Fragment,r,n)}(e,t,n):"text"===t.type?function(e,t){return t.value}(0,t):void 0}function xV(e,t,n,r){"string"!=typeof n&&n!==e.Fragment&&e.passNode&&(t.node=r)}function vV(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function wV(e,t){const n=[];let r=-1;const o=e.passKeys?new Map:uV;for(;++r4&&"data"===n.slice(0,4)&&G$.test(t)){if("-"===t.charAt(4)){const e=t.slice(5).replace(q$,X$);r="data"+e.charAt(0).toUpperCase()+e.slice(1)}else{const e=t.slice(4);if(!q$.test(e)){let n=e.replace(Y$,J$);"-"!==n.charAt(0)&&(n="-"+n),t="data"+n}}o=D$}return new o(r,t)}(e.schema,t);if(!(null==n||"number"==typeof n&&Number.isNaN(n))){if(Array.isArray(n)&&(n=r.commaSeparated?function(e){const t={};return(""===e[e.length-1]?[...e,""]:e).join((t.padRight?" ":"")+","+(!1===t.padLeft?"":" ")).trim()}(n):n.join(" ").trim()),"style"===r.property){let t="object"==typeof n?n:function(e,t){const n={};try{tV(t,r)}catch(o){if(!e.ignoreInvalidStyle){const t=o,n=new cV("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:t,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw n.file=e.filePath||void 0,n.url=gV+"#cannot-parse-style-attribute",n}}return n;function r(e,t){let r=e;"--"!==r.slice(0,2)&&("-ms-"===r.slice(0,4)&&(r="ms-"+r.slice(4)),r=r.replace(fV,NV)),n[r]=t}}(e,String(n));return"css"===e.stylePropertyNameCase&&(t=function(e){const t={};let n;for(n in e)dV.call(e,n)&&(t[EV(n)]=e[n]);return t}(t)),["style",t]}return["react"===e.elementAttributeNameCase&&r.space?K$[r.property]||r.property:r.attribute,n]}}function SV(e,t,n){let r;if(n)if(t.includes(".")){const e=t.split(".");let n,o=-1;for(;++oo?0:o+t:t>o?o:t,n=n>0?n:0,r.length<1e4)s=Array.from(r),s.unshift(t,n),e.splice(...s);else for(n&&e.splice(t,n);i0?(DV(e,e.length,0,t),e):t}const PV={}.hasOwnProperty;function LV(e,t){let n;for(n in t){const r=(PV.call(e,n)?e[n]:void 0)||(e[n]={}),o=t[n];let s;if(o)for(s in o){PV.call(r,s)||(r[s]=[]);const e=o[s];zV(r[s],Array.isArray(e)?e:e?[e]:[])}}}function zV(e,t){let n=-1;const r=[];for(;++n13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||!(65535&~n)||65534==(65535&n)||n>1114111?"�":String.fromCodePoint(n)}function BV(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const UV=QV(/[A-Za-z]/),$V=QV(/[\dA-Za-z]/),VV=QV(/[#-'*+\--9=?A-Z^-~]/);function HV(e){return null!==e&&(e<32||127===e)}const WV=QV(/\d/),GV=QV(/[\dA-Fa-f]/),qV=QV(/[!-/:-@[-`{-~]/);function YV(e){return null!==e&&e<-2}function JV(e){return null!==e&&(e<0||32===e)}function XV(e){return-2===e||-1===e||32===e}const KV=QV(new RegExp("\\p{P}|\\p{S}","u")),ZV=QV(/\s/);function QV(e){return function(t){return null!==t&&t>-1&&e.test(String.fromCharCode(t))}}function eH(e){const t=[];let n=-1,r=0,o=0;for(;++n55295&&s<57344){const t=e.charCodeAt(n+1);s<56320&&t>56319&&t<57344?(i=String.fromCharCode(s,t),o=1):i="�"}else i=String.fromCharCode(s);i&&(t.push(e.slice(r,n),encodeURIComponent(i)),r=n+o+1,i=""),o&&(n+=o,o=0)}return t.join("")+e.slice(r)}function tH(e,t,n,r){const o=r?r-1:Number.POSITIVE_INFINITY;let s=0;return function(r){if(XV(r))return e.enter(n),i(r);return t(r)};function i(r){return XV(r)&&s++s))return;const n=t.events.length;let o,a,l=n;for(;l--;)if("exit"===t.events[l][0]&&"chunkFlow"===t.events[l][1].type){if(o){a=t.events[l][1].end;break}o=!0}for(y(i),e=n;er;){const r=n[o];t.containerState=r[1],r[0].exit.call(t,e)}n.length=r}function b(){r.write([null]),o=void 0,r=void 0,t.containerState._closeFlow=void 0}}},oH={tokenize:function(e,t,n){return tH(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}};function sH(e){return null===e||JV(e)||ZV(e)?1:KV(e)?2:void 0}function iH(e,t,n){const r=[];let o=-1;for(;++o1&&e[d][1].end.offset-e[d][1].start.offset>1?2:1;const u={...e[n][1].end},h={...e[d][1].start};lH(u,-a),lH(h,a),s={type:a>1?"strongSequence":"emphasisSequence",start:u,end:{...e[n][1].end}},i={type:a>1?"strongSequence":"emphasisSequence",start:{...e[d][1].start},end:h},o={type:a>1?"strongText":"emphasisText",start:{...e[n][1].end},end:{...e[d][1].start}},r={type:a>1?"strong":"emphasis",start:{...s.start},end:{...i.end}},e[n][1].end={...s.start},e[d][1].start={...i.end},l=[],e[n][1].end.offset-e[n][1].start.offset&&(l=RV(l,[["enter",e[n][1],t],["exit",e[n][1],t]])),l=RV(l,[["enter",r,t],["enter",s,t],["exit",s,t],["enter",o,t]]),l=RV(l,iH(t.parser.constructs.insideSpan.null,e.slice(n+1,d),t)),l=RV(l,[["exit",o,t],["enter",i,t],["exit",i,t],["exit",r,t]]),e[d][1].end.offset-e[d][1].start.offset?(c=2,l=RV(l,[["enter",e[d][1],t],["exit",e[d][1],t]])):c=0,DV(e,n-1,d-n+3,l),d=n+l.length-c-2;break}d=-1;for(;++d=a?(e.exit("codeFencedFenceSequence"),XV(t)?tH(e,u,"whitespace")(t):u(t)):n(t)}function u(r){return null===r||YV(r)?(e.exit("codeFencedFence"),t(r)):n(r)}}};let s,i=0,a=0;return function(t){return function(t){const n=r.events[r.events.length-1];return i=n&&"linePrefix"===n[1].type?n[2].sliceSerialize(n[1],!0).length:0,s=t,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),l(t)}(t)};function l(t){return t===s?(a++,e.consume(t),l):a<3?n(t):(e.exit("codeFencedFenceSequence"),XV(t)?tH(e,c,"whitespace")(t):c(t))}function c(n){return null===n||YV(n)?(e.exit("codeFencedFence"),r.interrupt?t(n):e.check(pH,f,b)(n)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),d(n))}function d(t){return null===t||YV(t)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),c(t)):XV(t)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),tH(e,u,"whitespace")(t)):96===t&&t===s?n(t):(e.consume(t),d)}function u(t){return null===t||YV(t)?c(t):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),h(t))}function h(t){return null===t||YV(t)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),c(t)):96===t&&t===s?n(t):(e.consume(t),h)}function f(t){return e.attempt(o,b,p)(t)}function p(t){return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),m}function m(t){return i>0&&XV(t)?tH(e,g,"linePrefix",i+1)(t):g(t)}function g(t){return null===t||YV(t)?e.check(pH,f,b)(t):(e.enter("codeFlowValue"),y(t))}function y(t){return null===t||YV(t)?(e.exit("codeFlowValue"),g(t)):(e.consume(t),y)}function b(n){return e.exit("codeFenced"),t(n)}}};const gH={name:"codeIndented",tokenize:function(e,t,n){const r=this;return function(t){return e.enter("codeIndented"),tH(e,o,"linePrefix",5)(t)};function o(e){const t=r.events[r.events.length-1];return t&&"linePrefix"===t[1].type&&t[2].sliceSerialize(t[1],!0).length>=4?s(e):n(e)}function s(t){return null===t?a(t):YV(t)?e.attempt(yH,s,a)(t):(e.enter("codeFlowValue"),i(t))}function i(t){return null===t||YV(t)?(e.exit("codeFlowValue"),s(t)):(e.consume(t),i)}function a(n){return e.exit("codeIndented"),t(n)}}},yH={partial:!0,tokenize:function(e,t,n){const r=this;return o;function o(t){return r.parser.lazy[r.now().line]?n(t):YV(t)?(e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),o):tH(e,s,"linePrefix",5)(t)}function s(e){const s=r.events[r.events.length-1];return s&&"linePrefix"===s[1].type&&s[2].sliceSerialize(s[1],!0).length>=4?t(e):YV(e)?o(e):n(e)}}};const bH={name:"codeText",previous:function(e){return 96!==e||"characterEscape"===this.events[this.events.length-1][1].type},resolve:function(e){let t,n,r=e.length-4,o=3;if(!("lineEnding"!==e[o][1].type&&"space"!==e[o][1].type||"lineEnding"!==e[r][1].type&&"space"!==e[r][1].type))for(t=o;++t=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+e+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return ethis.left.length?this.right.slice(this.right.length-n+this.left.length,this.right.length-e+this.left.length).reverse():this.left.slice(e).concat(this.right.slice(this.right.length-n+this.left.length).reverse())}splice(e,t,n){const r=t||0;this.setCursor(Math.trunc(e));const o=this.right.splice(this.right.length-r,Number.POSITIVE_INFINITY);return n&&vH(this.left,n),o.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(e){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(e)}pushMany(e){this.setCursor(Number.POSITIVE_INFINITY),vH(this.left,e)}unshift(e){this.setCursor(0),this.right.push(e)}unshiftMany(e){this.setCursor(0),vH(this.right,e.reverse())}setCursor(e){if(!(e===this.left.length||e>this.left.length&&0===this.right.length||e<0&&0===this.left.length))if(e=4?t(o):e.interrupt(r.parser.constructs.flow,n,t)(o)}}};function EH(e,t,n,r,o,s,i,a,l){const c=l||Number.POSITIVE_INFINITY;let d=0;return function(t){if(60===t)return e.enter(r),e.enter(o),e.enter(s),e.consume(t),e.exit(s),u;if(null===t||32===t||41===t||HV(t))return n(t);return e.enter(r),e.enter(i),e.enter(a),e.enter("chunkString",{contentType:"string"}),p(t)};function u(n){return 62===n?(e.enter(s),e.consume(n),e.exit(s),e.exit(o),e.exit(r),t):(e.enter(a),e.enter("chunkString",{contentType:"string"}),h(n))}function h(t){return 62===t?(e.exit("chunkString"),e.exit(a),u(t)):null===t||60===t||YV(t)?n(t):(e.consume(t),92===t?f:h)}function f(t){return 60===t||62===t||92===t?(e.consume(t),h):h(t)}function p(o){return d||null!==o&&41!==o&&!JV(o)?d999||null===u||91===u||93===u&&!a||94===u&&!l&&"_hiddenFootnoteSupport"in i.parser.constructs?n(u):93===u?(e.exit(s),e.enter(o),e.consume(u),e.exit(o),e.exit(r),t):YV(u)?(e.enter("lineEnding"),e.consume(u),e.exit("lineEnding"),c):(e.enter("chunkString",{contentType:"string"}),d(u))}function d(t){return null===t||91===t||93===t||YV(t)||l++>999?(e.exit("chunkString"),c(t)):(e.consume(t),a||(a=!XV(t)),92===t?u:d)}function u(t){return 91===t||92===t||93===t?(e.consume(t),l++,d):d(t)}}function jH(e,t,n,r,o,s){let i;return function(t){if(34===t||39===t||40===t)return e.enter(r),e.enter(o),e.consume(t),e.exit(o),i=40===t?41:t,a;return n(t)};function a(n){return n===i?(e.enter(o),e.consume(n),e.exit(o),e.exit(r),t):(e.enter(s),l(n))}function l(t){return t===i?(e.exit(s),a(i)):null===t?n(t):YV(t)?(e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),tH(e,l,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),c(t))}function c(t){return t===i||null===t||YV(t)?(e.exit("chunkString"),l(t)):(e.consume(t),92===t?d:c)}function d(t){return t===i||92===t?(e.consume(t),c):c(t)}}function _H(e,t){let n;return function r(o){if(YV(o))return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),n=!0,r;if(XV(o))return tH(e,r,n?"linePrefix":"lineSuffix")(o);return t(o)}}const IH={name:"definition",tokenize:function(e,t,n){const r=this;let o;return function(t){return e.enter("definition"),function(t){return NH.call(r,e,s,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(t)}(t)};function s(t){return o=BV(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),58===t?(e.enter("definitionMarker"),e.consume(t),e.exit("definitionMarker"),i):n(t)}function i(t){return JV(t)?_H(e,a)(t):a(t)}function a(t){return EH(e,l,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(t)}function l(t){return e.attempt(AH,c,c)(t)}function c(t){return XV(t)?tH(e,d,"whitespace")(t):d(t)}function d(s){return null===s||YV(s)?(e.exit("definition"),r.parser.defined.push(o),t(s)):n(s)}}},AH={partial:!0,tokenize:function(e,t,n){return function(t){return JV(t)?_H(e,r)(t):n(t)};function r(t){return jH(e,o,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(t)}function o(t){return XV(t)?tH(e,s,"whitespace")(t):s(t)}function s(e){return null===e||YV(e)?t(e):n(e)}}};const TH={name:"hardBreakEscape",tokenize:function(e,t,n){return function(t){return e.enter("hardBreakEscape"),e.consume(t),r};function r(r){return YV(r)?(e.exit("hardBreakEscape"),t(r)):n(r)}}};const MH={name:"headingAtx",resolve:function(e,t){let n,r,o=e.length-2,s=3;"whitespace"===e[s][1].type&&(s+=2);o-2>s&&"whitespace"===e[o][1].type&&(o-=2);"atxHeadingSequence"===e[o][1].type&&(s===o-1||o-4>s&&"whitespace"===e[o-2][1].type)&&(o-=s+1===o?2:4);o>s&&(n={type:"atxHeadingText",start:e[s][1].start,end:e[o][1].end},r={type:"chunkText",start:e[s][1].start,end:e[o][1].end,contentType:"text"},DV(e,s,o-s+1,[["enter",n,t],["enter",r,t],["exit",r,t],["exit",n,t]]));return e},tokenize:function(e,t,n){let r=0;return function(t){return e.enter("atxHeading"),function(t){return e.enter("atxHeadingSequence"),o(t)}(t)};function o(t){return 35===t&&r++<6?(e.consume(t),o):null===t||JV(t)?(e.exit("atxHeadingSequence"),s(t)):n(t)}function s(n){return 35===n?(e.enter("atxHeadingSequence"),i(n)):null===n||YV(n)?(e.exit("atxHeading"),t(n)):XV(n)?tH(e,s,"whitespace")(n):(e.enter("atxHeadingText"),a(n))}function i(t){return 35===t?(e.consume(t),i):(e.exit("atxHeadingSequence"),s(t))}function a(t){return null===t||35===t||JV(t)?(e.exit("atxHeadingText"),s(t)):(e.consume(t),a)}}};const OH=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],DH=["pre","script","style","textarea"],RH={concrete:!0,name:"htmlFlow",resolveTo:function(e){let t=e.length;for(;t--&&("enter"!==e[t][0]||"htmlFlow"!==e[t][1].type););t>1&&"linePrefix"===e[t-2][1].type&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2));return e},tokenize:function(e,t,n){const r=this;let o,s,i,a,l;return function(t){return function(t){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(t),c}(t)};function c(a){return 33===a?(e.consume(a),d):47===a?(e.consume(a),s=!0,f):63===a?(e.consume(a),o=3,r.interrupt?t:D):UV(a)?(e.consume(a),i=String.fromCharCode(a),p):n(a)}function d(s){return 45===s?(e.consume(s),o=2,u):91===s?(e.consume(s),o=5,a=0,h):UV(s)?(e.consume(s),o=4,r.interrupt?t:D):n(s)}function u(o){return 45===o?(e.consume(o),r.interrupt?t:D):n(o)}function h(o){const s="CDATA[";return o===s.charCodeAt(a++)?(e.consume(o),6===a?r.interrupt?t:N:h):n(o)}function f(t){return UV(t)?(e.consume(t),i=String.fromCharCode(t),p):n(t)}function p(a){if(null===a||47===a||62===a||JV(a)){const l=47===a,c=i.toLowerCase();return l||s||!DH.includes(c)?OH.includes(i.toLowerCase())?(o=6,l?(e.consume(a),m):r.interrupt?t(a):N(a)):(o=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(a):s?g(a):y(a)):(o=1,r.interrupt?t(a):N(a))}return 45===a||$V(a)?(e.consume(a),i+=String.fromCharCode(a),p):n(a)}function m(o){return 62===o?(e.consume(o),r.interrupt?t:N):n(o)}function g(t){return XV(t)?(e.consume(t),g):C(t)}function y(t){return 47===t?(e.consume(t),C):58===t||95===t||UV(t)?(e.consume(t),b):XV(t)?(e.consume(t),y):C(t)}function b(t){return 45===t||46===t||58===t||95===t||$V(t)?(e.consume(t),b):x(t)}function x(t){return 61===t?(e.consume(t),v):XV(t)?(e.consume(t),x):y(t)}function v(t){return null===t||60===t||61===t||62===t||96===t?n(t):34===t||39===t?(e.consume(t),l=t,w):XV(t)?(e.consume(t),v):k(t)}function w(t){return t===l?(e.consume(t),l=null,S):null===t||YV(t)?n(t):(e.consume(t),w)}function k(t){return null===t||34===t||39===t||47===t||60===t||61===t||62===t||96===t||JV(t)?x(t):(e.consume(t),k)}function S(e){return 47===e||62===e||XV(e)?y(e):n(e)}function C(t){return 62===t?(e.consume(t),E):n(t)}function E(t){return null===t||YV(t)?N(t):XV(t)?(e.consume(t),E):n(t)}function N(t){return 45===t&&2===o?(e.consume(t),A):60===t&&1===o?(e.consume(t),T):62===t&&4===o?(e.consume(t),R):63===t&&3===o?(e.consume(t),D):93===t&&5===o?(e.consume(t),O):!YV(t)||6!==o&&7!==o?null===t||YV(t)?(e.exit("htmlFlowData"),j(t)):(e.consume(t),N):(e.exit("htmlFlowData"),e.check(PH,P,j)(t))}function j(t){return e.check(LH,_,P)(t)}function _(t){return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),I}function I(t){return null===t||YV(t)?j(t):(e.enter("htmlFlowData"),N(t))}function A(t){return 45===t?(e.consume(t),D):N(t)}function T(t){return 47===t?(e.consume(t),i="",M):N(t)}function M(t){if(62===t){const n=i.toLowerCase();return DH.includes(n)?(e.consume(t),R):N(t)}return UV(t)&&i.length<8?(e.consume(t),i+=String.fromCharCode(t),M):N(t)}function O(t){return 93===t?(e.consume(t),D):N(t)}function D(t){return 62===t?(e.consume(t),R):45===t&&2===o?(e.consume(t),D):N(t)}function R(t){return null===t||YV(t)?(e.exit("htmlFlowData"),P(t)):(e.consume(t),R)}function P(n){return e.exit("htmlFlow"),t(n)}}},PH={partial:!0,tokenize:function(e,t,n){return function(r){return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),e.attempt(dH,t,n)}}},LH={partial:!0,tokenize:function(e,t,n){const r=this;return function(t){if(YV(t))return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),o;return n(t)};function o(e){return r.parser.lazy[r.now().line]?n(e):t(e)}}};const zH={name:"htmlText",tokenize:function(e,t,n){const r=this;let o,s,i;return function(t){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(t),a};function a(t){return 33===t?(e.consume(t),l):47===t?(e.consume(t),v):63===t?(e.consume(t),b):UV(t)?(e.consume(t),S):n(t)}function l(t){return 45===t?(e.consume(t),c):91===t?(e.consume(t),s=0,f):UV(t)?(e.consume(t),y):n(t)}function c(t){return 45===t?(e.consume(t),h):n(t)}function d(t){return null===t?n(t):45===t?(e.consume(t),u):YV(t)?(i=d,M(t)):(e.consume(t),d)}function u(t){return 45===t?(e.consume(t),h):d(t)}function h(e){return 62===e?T(e):45===e?u(e):d(e)}function f(t){const r="CDATA[";return t===r.charCodeAt(s++)?(e.consume(t),6===s?p:f):n(t)}function p(t){return null===t?n(t):93===t?(e.consume(t),m):YV(t)?(i=p,M(t)):(e.consume(t),p)}function m(t){return 93===t?(e.consume(t),g):p(t)}function g(t){return 62===t?T(t):93===t?(e.consume(t),g):p(t)}function y(t){return null===t||62===t?T(t):YV(t)?(i=y,M(t)):(e.consume(t),y)}function b(t){return null===t?n(t):63===t?(e.consume(t),x):YV(t)?(i=b,M(t)):(e.consume(t),b)}function x(e){return 62===e?T(e):b(e)}function v(t){return UV(t)?(e.consume(t),w):n(t)}function w(t){return 45===t||$V(t)?(e.consume(t),w):k(t)}function k(t){return YV(t)?(i=k,M(t)):XV(t)?(e.consume(t),k):T(t)}function S(t){return 45===t||$V(t)?(e.consume(t),S):47===t||62===t||JV(t)?C(t):n(t)}function C(t){return 47===t?(e.consume(t),T):58===t||95===t||UV(t)?(e.consume(t),E):YV(t)?(i=C,M(t)):XV(t)?(e.consume(t),C):T(t)}function E(t){return 45===t||46===t||58===t||95===t||$V(t)?(e.consume(t),E):N(t)}function N(t){return 61===t?(e.consume(t),j):YV(t)?(i=N,M(t)):XV(t)?(e.consume(t),N):C(t)}function j(t){return null===t||60===t||61===t||62===t||96===t?n(t):34===t||39===t?(e.consume(t),o=t,_):YV(t)?(i=j,M(t)):XV(t)?(e.consume(t),j):(e.consume(t),I)}function _(t){return t===o?(e.consume(t),o=void 0,A):null===t?n(t):YV(t)?(i=_,M(t)):(e.consume(t),_)}function I(t){return null===t||34===t||39===t||60===t||61===t||96===t?n(t):47===t||62===t||JV(t)?C(t):(e.consume(t),I)}function A(e){return 47===e||62===e||JV(e)?C(e):n(e)}function T(r){return 62===r?(e.consume(r),e.exit("htmlTextData"),e.exit("htmlText"),t):n(r)}function M(t){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),O}function O(t){return XV(t)?tH(e,D,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(t):D(t)}function D(t){return e.enter("htmlTextData"),i(t)}}};const FH={name:"labelEnd",resolveAll:function(e){let t=-1;const n=[];for(;++t=3&&(null===s||YV(s))?(e.exit("thematicBreak"),t(s)):n(s)}function i(t){return t===r?(e.consume(t),o++,i):(e.exit("thematicBreakSequence"),XV(t)?tH(e,s,"whitespace")(t):s(t))}}};const qH={continuation:{tokenize:function(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(dH,(function(n){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,tH(e,t,"listItemIndent",r.containerState.size+1)(n)}),(function(n){if(r.containerState.furtherBlankLines||!XV(n))return r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,o(n);return r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(JH,t,o)(n)}));function o(o){return r.containerState._closeFlow=!0,r.interrupt=void 0,tH(e,e.attempt(qH,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(o)}}},exit:function(e){e.exit(this.containerState.type)},name:"list",tokenize:function(e,t,n){const r=this,o=r.events[r.events.length-1];let s=o&&"linePrefix"===o[1].type?o[2].sliceSerialize(o[1],!0).length:0,i=0;return function(t){const o=r.containerState.type||(42===t||43===t||45===t?"listUnordered":"listOrdered");if("listUnordered"===o?!r.containerState.marker||t===r.containerState.marker:WV(t)){if(r.containerState.type||(r.containerState.type=o,e.enter(o,{_container:!0})),"listUnordered"===o)return e.enter("listItemPrefix"),42===t||45===t?e.check(GH,n,l)(t):l(t);if(!r.interrupt||49===t)return e.enter("listItemPrefix"),e.enter("listItemValue"),a(t)}return n(t)};function a(t){return WV(t)&&++i<10?(e.consume(t),a):(!r.interrupt||i<2)&&(r.containerState.marker?t===r.containerState.marker:41===t||46===t)?(e.exit("listItemValue"),l(t)):n(t)}function l(t){return e.enter("listItemMarker"),e.consume(t),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||t,e.check(dH,r.interrupt?n:c,e.attempt(YH,u,d))}function c(e){return r.containerState.initialBlankLine=!0,s++,u(e)}function d(t){return XV(t)?(e.enter("listItemPrefixWhitespace"),e.consume(t),e.exit("listItemPrefixWhitespace"),u):n(t)}function u(n){return r.containerState.size=s+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(n)}}},YH={partial:!0,tokenize:function(e,t,n){const r=this;return tH(e,(function(e){const o=r.events[r.events.length-1];return!XV(e)&&o&&"listItemPrefixWhitespace"===o[1].type?t(e):n(e)}),"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5)}},JH={partial:!0,tokenize:function(e,t,n){const r=this;return tH(e,(function(e){const o=r.events[r.events.length-1];return o&&"listItemIndent"===o[1].type&&o[2].sliceSerialize(o[1],!0).length===r.containerState.size?t(e):n(e)}),"listItemIndent",r.containerState.size+1)}};const XH={name:"setextUnderline",resolveTo:function(e,t){let n,r,o,s=e.length;for(;s--;)if("enter"===e[s][0]){if("content"===e[s][1].type){n=s;break}"paragraph"===e[s][1].type&&(r=s)}else"content"===e[s][1].type&&e.splice(s,1),o||"definition"!==e[s][1].type||(o=s);const i={type:"setextHeading",start:{...e[r][1].start},end:{...e[e.length-1][1].end}};e[r][1].type="setextHeadingText",o?(e.splice(r,0,["enter",i,t]),e.splice(o+1,0,["exit",e[n][1],t]),e[n][1].end={...e[o][1].end}):e[n][1]=i;return e.push(["exit",i,t]),e},tokenize:function(e,t,n){const r=this;let o;return function(t){let i,a=r.events.length;for(;a--;)if("lineEnding"!==r.events[a][1].type&&"linePrefix"!==r.events[a][1].type&&"content"!==r.events[a][1].type){i="paragraph"===r.events[a][1].type;break}if(!r.parser.lazy[r.now().line]&&(r.interrupt||i))return e.enter("setextHeadingLine"),o=t,function(t){return e.enter("setextHeadingLineSequence"),s(t)}(t);return n(t)};function s(t){return t===o?(e.consume(t),s):(e.exit("setextHeadingLineSequence"),XV(t)?tH(e,i,"lineSuffix")(t):i(t))}function i(r){return null===r||YV(r)?(e.exit("setextHeadingLine"),t(r)):n(r)}}};const KH={tokenize:function(e){const t=this,n=e.attempt(dH,(function(r){if(null===r)return void e.consume(r);return e.enter("lineEndingBlank"),e.consume(r),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}),e.attempt(this.parser.constructs.flowInitial,r,tH(e,e.attempt(this.parser.constructs.flow,r,e.attempt(SH,r)),"linePrefix")));return n;function r(r){if(null!==r)return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),t.currentConstruct=void 0,n;e.consume(r)}}};const ZH={resolveAll:nW()},QH=tW("string"),eW=tW("text");function tW(e){return{resolveAll:nW("text"===e?rW:void 0),tokenize:function(t){const n=this,r=this.parser.constructs[e],o=t.attempt(r,s,i);return s;function s(e){return l(e)?o(e):i(e)}function i(e){if(null!==e)return t.enter("data"),t.consume(e),a;t.consume(e)}function a(e){return l(e)?(t.exit("data"),o(e)):(t.consume(e),a)}function l(e){if(null===e)return!0;const t=r[e];let o=-1;if(t)for(;++o-1){const e=i[0];"string"==typeof e?i[0]=e.slice(r):i.shift()}s>0&&i.push(e[o].slice(0,s))}return i}(i,e)}function h(){const{_bufferIndex:e,_index:t,line:n,column:o,offset:s}=r;return{_bufferIndex:e,_index:t,line:n,column:o,offset:s}}function f(){let e;for(;r._index0){const e=s.tokenStack[s.tokenStack.length-1];(e[1]||kW).call(s,void 0,e[0])}for(r.position={start:xW(e.length>0?e[0][1].start:{line:1,column:1,offset:0}),end:xW(e.length>0?e[e.length-2][1].end:{line:1,column:1,offset:0})},u=-1;++u1:t}function NW(e){const t=String(e),n=/\r?\n|\r/g;let r=n.exec(t),o=0;const s=[];for(;r;)s.push(jW(t.slice(o,r.index),o>0,!0),r[0]),o=r.index+r[0].length,r=n.exec(t);return s.push(jW(t.slice(o),o>0,!1)),s.join("")}function jW(e,t,n){let r=0,o=e.length;if(t){let t=e.codePointAt(r);for(;9===t||32===t;)r++,t=e.codePointAt(r)}if(n){let t=e.codePointAt(o-1);for(;9===t||32===t;)o--,t=e.codePointAt(o-1)}return o>r?e.slice(r,o):""}const _W={blockquote:function(e,t){const n={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)},break:function(e,t){const n={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:"text",value:"\n"}]},code:function(e,t){const n=t.value?t.value+"\n":"",r={};t.lang&&(r.className=["language-"+t.lang]);let o={type:"element",tagName:"code",properties:r,children:[{type:"text",value:n}]};return t.meta&&(o.data={meta:t.meta}),e.patch(t,o),o=e.applyData(t,o),o={type:"element",tagName:"pre",properties:{},children:[o]},e.patch(t,o),o},delete:function(e,t){const n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)},emphasis:function(e,t){const n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)},footnoteReference:function(e,t){const n="string"==typeof e.options.clobberPrefix?e.options.clobberPrefix:"user-content-",r=String(t.identifier).toUpperCase(),o=eH(r.toLowerCase()),s=e.footnoteOrder.indexOf(r);let i,a=e.footnoteCounts.get(r);void 0===a?(a=0,e.footnoteOrder.push(r),i=e.footnoteOrder.length):i=s+1,a+=1,e.footnoteCounts.set(r,a);const l={type:"element",tagName:"a",properties:{href:"#"+n+"fn-"+o,id:n+"fnref-"+o+(a>1?"-"+a:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(i)}]};e.patch(t,l);const c={type:"element",tagName:"sup",properties:{},children:[l]};return e.patch(t,c),e.applyData(t,c)},heading:function(e,t){const n={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)},html:function(e,t){if(e.options.allowDangerousHtml){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}},imageReference:function(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return CW(e,t);const o={src:eH(r.url||""),alt:t.alt};null!==r.title&&void 0!==r.title&&(o.title=r.title);const s={type:"element",tagName:"img",properties:o,children:[]};return e.patch(t,s),e.applyData(t,s)},image:function(e,t){const n={src:eH(t.url)};null!==t.alt&&void 0!==t.alt&&(n.alt=t.alt),null!==t.title&&void 0!==t.title&&(n.title=t.title);const r={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)},inlineCode:function(e,t){const n={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,n);const r={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)},linkReference:function(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return CW(e,t);const o={href:eH(r.url||"")};null!==r.title&&void 0!==r.title&&(o.title=r.title);const s={type:"element",tagName:"a",properties:o,children:e.all(t)};return e.patch(t,s),e.applyData(t,s)},link:function(e,t){const n={href:eH(t.url)};null!==t.title&&void 0!==t.title&&(n.title=t.title);const r={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)},listItem:function(e,t,n){const r=e.all(t),o=n?function(e){let t=!1;if("list"===e.type){t=e.spread||!1;const n=e.children;let r=-1;for(;!t&&++r0&&n.children.unshift({type:"text",value:" "}),n.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),s.className=["task-list-item"]}let a=-1;for(;++a0){const r={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},s=rV(t.children[1]),i=nV(t.children[t.children.length-1]);s&&i&&(r.position={start:s,end:i}),o.push(r)}const s={type:"element",tagName:"table",properties:{},children:e.wrap(o,!0)};return e.patch(t,s),e.applyData(t,s)},tableCell:function(e,t){const n={type:"element",tagName:"td",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)},tableRow:function(e,t,n){const r=n?n.children:void 0,o=0===(r?r.indexOf(t):1)?"th":"td",s=n&&"table"===n.type?n.align:void 0,i=s?s.length:t.children.length;let a=-1;const l=[];for(;++a((e,t)=>{const n=(t,n)=>(e.set(n,t),t),r=o=>{if(e.has(o))return e.get(o);const[s,i]=t[o];switch(s){case 0:case-1:return n(i,o);case 1:{const e=n([],o);for(const t of i)e.push(r(t));return e}case 2:{const e=n({},o);for(const[t,n]of i)e[r(t)]=r(n);return e}case 3:return n(new Date(i),o);case 4:{const{source:e,flags:t}=i;return n(new RegExp(e,t),o)}case 5:{const e=n(new Map,o);for(const[t,n]of i)e.set(r(t),r(n));return e}case 6:{const e=n(new Set,o);for(const t of i)e.add(r(t));return e}case 7:{const{name:e,message:t}=i;return n(new AW[e](t),o)}case 8:return n(BigInt(i),o);case"BigInt":return n(Object(BigInt(i)),o)}return n(new AW[s](i),o)};return r})(new Map,e)(0),MW="",{toString:OW}={},{keys:DW}=Object,RW=e=>{const t=typeof e;if("object"!==t||!e)return[0,t];const n=OW.call(e).slice(8,-1);switch(n){case"Array":return[1,MW];case"Object":return[2,MW];case"Date":return[3,MW];case"RegExp":return[4,MW];case"Map":return[5,MW];case"Set":return[6,MW]}return n.includes("Array")?[1,n]:n.includes("Error")?[7,n]:[2,n]},PW=([e,t])=>0===e&&("function"===t||"symbol"===t),LW=(e,{json:t,lossy:n}={})=>{const r=[];return((e,t,n,r)=>{const o=(e,t)=>{const o=r.push(e)-1;return n.set(t,o),o},s=r=>{if(n.has(r))return n.get(r);let[i,a]=RW(r);switch(i){case 0:{let t=r;switch(a){case"bigint":i=8,t=r.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+a);t=null;break;case"undefined":return o([-1],r)}return o([i,t],r)}case 1:{if(a)return o([a,[...r]],r);const e=[],t=o([i,e],r);for(const n of r)e.push(s(n));return t}case 2:{if(a)switch(a){case"BigInt":return o([a,r.toString()],r);case"Boolean":case"Number":case"String":return o([a,r.valueOf()],r)}if(t&&"toJSON"in r)return s(r.toJSON());const n=[],l=o([i,n],r);for(const t of DW(r))!e&&PW(RW(r[t]))||n.push([s(t),s(r[t])]);return l}case 3:return o([i,r.toISOString()],r);case 4:{const{source:e,flags:t}=r;return o([i,{source:e,flags:t}],r)}case 5:{const t=[],n=o([i,t],r);for(const[o,i]of r)(e||!PW(RW(o))&&!PW(RW(i)))&&t.push([s(o),s(i)]);return n}case 6:{const t=[],n=o([i,t],r);for(const o of r)!e&&PW(RW(o))||t.push(s(o));return n}}const{message:l}=r;return o([i,{name:a,message:l}],r)};return s})(!(t||n),!!t,new Map,r)(e),r},zW="function"==typeof structuredClone?(e,t)=>t&&("json"in t||"lossy"in t)?TW(LW(e,t)):structuredClone(e):(e,t)=>TW(LW(e,t));function FW(e,t){const n=[{type:"text",value:"↩"}];return t>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(t)}]}),n}function BW(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}const UW=function(e){if(null==e)return VW;if("function"==typeof e)return $W(e);if("object"==typeof e)return Array.isArray(e)?function(e){const t=[];let n=-1;for(;++n":"")+")"})}return d;function d(){let c,d,u,h=HW;if((!t||s(o,a,l[l.length-1]||void 0))&&(h=function(e){if(Array.isArray(e))return e;if("number"==typeof e)return[WW,e];return null==e?HW:[e]}(n(o,l)),h[0]===GW))return h;if("children"in o&&o.children){const t=o;if(t.children&&"skip"!==h[0])for(d=(r?t.children.length:-1)+i,u=l.concat(t);d>-1&&d0&&n.push({type:"text",value:"\n"}),n}function tG(e){let t=0,n=e.charCodeAt(t);for(;9===n||32===n;)t++,n=e.charCodeAt(t);return e.slice(t)}function nG(e,t){const n=function(e,t){const n=t||XW,r=new Map,o=new Map,s=new Map,i={..._W,...n.handlers},a={all:function(e){const t=[];if("children"in e){const n=e.children;let r=-1;for(;++r0&&u.push({type:"text",value:" "});let e="string"==typeof n?n:n(l,d);"string"==typeof e&&(e={type:"text",value:e}),u.push({type:"element",tagName:"a",properties:{href:"#"+t+"fnref-"+c+(d>1?"-"+d:""),dataFootnoteBackref:"",ariaLabel:"string"==typeof r?r:r(l,d),className:["data-footnote-backref"]},children:Array.isArray(e)?e:[e]})}const f=s[s.length-1];if(f&&"element"===f.type&&"p"===f.tagName){const e=f.children[f.children.length-1];e&&"text"===e.type?e.value+=" ":f.children.push({type:"text",value:" "}),f.children.push(...u)}else s.push(...u);const p={type:"element",tagName:"li",properties:{id:t+"fn-"+c},children:e.wrap(s,!0)};e.patch(o,p),a.push(p)}if(0!==a.length)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:s,properties:{...zW(i),id:"footnote-label"},children:[{type:"text",value:o}]},{type:"text",value:"\n"},{type:"element",tagName:"ol",properties:{},children:e.wrap(a,!0)},{type:"text",value:"\n"}]}}(n),s=Array.isArray(r)?{type:"root",children:r}:r||{type:"root",children:[]};return o&&s.children.push({type:"text",value:"\n"},o),s}function rG(e,t){return e&&"run"in e?async function(n,r){const o=nG(n,{file:r,...t});await e.run(o,r)}:function(n,r){return nG(n,{file:r,...e||t})}}function oG(e){if(e)throw e}var sG,iG;var aG=function(){if(iG)return sG;iG=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,o=function(e){return"function"==typeof Array.isArray?Array.isArray(e):"[object Array]"===t.call(e)},s=function(n){if(!n||"[object Object]"!==t.call(n))return!1;var r,o=e.call(n,"constructor"),s=n.constructor&&n.constructor.prototype&&e.call(n.constructor.prototype,"isPrototypeOf");if(n.constructor&&!o&&!s)return!1;for(r in n);return void 0===r||e.call(n,r)},i=function(e,t){n&&"__proto__"===t.name?n(e,t.name,{enumerable:!0,configurable:!0,value:t.newValue,writable:!0}):e[t.name]=t.newValue},a=function(t,n){if("__proto__"===n){if(!e.call(t,n))return;if(r)return r(t,n).value}return t[n]};return sG=function e(){var t,n,r,l,c,d,u=arguments[0],h=1,f=arguments.length,p=!1;for("boolean"==typeof u&&(p=u,u=arguments[1]||{},h=2),(null==u||"object"!=typeof u&&"function"!=typeof u)&&(u={});ht.length;let a;r&&t.push(o);try{a=e.apply(this,t)}catch(s){if(r&&n)throw s;return o(s)}r||(a&&a.then&&"function"==typeof a.then?a.then(i,o):a instanceof Error?o(a):i(a))}function o(e,...r){n||(n=!0,t(e,...r))}function i(e){o(null,e)}}(a,o)(...i):r(null,...i)}}(null,...t)},use:function(n){if("function"!=typeof n)throw new TypeError("Expected `middelware` to be a function, not "+n);return e.push(n),t}};return t}const uG={basename:function(e,t){if(void 0!==t&&"string"!=typeof t)throw new TypeError('"ext" argument must be a string');hG(e);let n,r=0,o=-1,s=e.length;if(void 0===t||0===t.length||t.length>e.length){for(;s--;)if(47===e.codePointAt(s)){if(n){r=s+1;break}}else o<0&&(n=!0,o=s+1);return o<0?"":e.slice(r,o)}if(t===e)return"";let i=-1,a=t.length-1;for(;s--;)if(47===e.codePointAt(s)){if(n){r=s+1;break}}else i<0&&(n=!0,i=s+1),a>-1&&(e.codePointAt(s)===t.codePointAt(a--)?a<0&&(o=s):(a=-1,o=i));r===o?o=i:o<0&&(o=e.length);return e.slice(r,o)},dirname:function(e){if(hG(e),0===e.length)return".";let t,n=-1,r=e.length;for(;--r;)if(47===e.codePointAt(r)){if(t){n=r;break}}else t||(t=!0);return n<0?47===e.codePointAt(0)?"/":".":1===n&&47===e.codePointAt(0)?"//":e.slice(0,n)},extname:function(e){hG(e);let t,n=e.length,r=-1,o=0,s=-1,i=0;for(;n--;){const a=e.codePointAt(n);if(47!==a)r<0&&(t=!0,r=n+1),46===a?s<0?s=n:1!==i&&(i=1):s>-1&&(i=-1);else if(t){o=n+1;break}}if(s<0||r<0||0===i||1===i&&s===r-1&&s===o+1)return"";return e.slice(s,r)},join:function(...e){let t,n=-1;for(;++n2){if(r=o.lastIndexOf("/"),r!==o.length-1){r<0?(o="",s=0):(o=o.slice(0,r),s=o.length-1-o.lastIndexOf("/")),i=l,a=0;continue}}else if(o.length>0){o="",s=0,i=l,a=0;continue}t&&(o=o.length>0?o+"/..":"..",s=2)}else o.length>0?o+="/"+e.slice(i+1,l):o=e.slice(i+1,l),s=l-i-1;i=l,a=0}else 46===n&&a>-1?a++:a=-1}return o}(e,!t);0!==n.length||t||(n=".");n.length>0&&47===e.codePointAt(e.length-1)&&(n+="/");return t?"/"+n:n}(t)},sep:"/"};function hG(e){if("string"!=typeof e)throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const fG={cwd:function(){return"/"}};function pG(e){return Boolean(null!==e&&"object"==typeof e&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&void 0===e.auth)}function mG(e){if("string"==typeof e)e=new URL(e);else if(!pG(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if("file:"!==e.protocol){const e=new TypeError("The URL must be of scheme file");throw e.code="ERR_INVALID_URL_SCHEME",e}return function(e){if(""!==e.hostname){const e=new TypeError('File URL host must be "localhost" or empty on darwin');throw e.code="ERR_INVALID_FILE_URL_HOST",e}const t=e.pathname;let n=-1;for(;++n0){let[r,...s]=t;const i=n[o][1];cG(i)&&cG(r)&&(r=lG(!0,i,r)),n[o]=[e,r,...s]}}}}const CG=(new SG).freeze();function EG(e,t){if("function"!=typeof t)throw new TypeError("Cannot `"+e+"` without `parser`")}function NG(e,t){if("function"!=typeof t)throw new TypeError("Cannot `"+e+"` without `compiler`")}function jG(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function _G(e){if(!cG(e)||"string"!=typeof e.type)throw new TypeError("Expected node, got `"+e+"`")}function IG(e,t,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function AG(e){return function(e){return Boolean(e&&"object"==typeof e&&"message"in e&&"messages"in e)}(e)?e:new yG(e)}const TG=[],MG={allowDangerousHtml:!0},OG=/^(https?|ircs?|mailto|xmpp)$/i,DG=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function RG(e){const t=e.allowedElements,n=e.allowElement,r=e.children||"",o=e.className,s=e.components,i=e.disallowedElements,a=e.rehypePlugins||TG,l=e.remarkPlugins||TG,c=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...MG}:MG,d=e.skipHtml,u=e.unwrapDisallowed,h=e.urlTransform||PG,f=CG().use(SW).use(l).use(rG,c).use(a),p=new yG;"string"==typeof r&&(p.value=r);for(const y of DG)Object.hasOwn(e,y.from)&&(y.from,y.to&&y.to,y.id);const m=f.parse(p);let g=f.runSync(m,p);return o&&(g={type:"element",tagName:"div",properties:{className:o},children:"root"===g.type?g.children:[g]}),YW(g,(function(e,r,o){if("raw"===e.type&&o&&"number"==typeof r)return d?o.children.splice(r,1):o.children[r]={type:"text",value:e.value},r;if("element"===e.type){let t;for(t in _V)if(Object.hasOwn(_V,t)&&Object.hasOwn(e.properties,t)){const n=e.properties[t],r=_V[t];(null===r||r.includes(e.tagName))&&(e.properties[t]=h(String(n||""),t,e))}}if("element"===e.type){let s=t?!t.includes(e.tagName):!!i&&i.includes(e.tagName);if(!s&&n&&"number"==typeof r&&(s=!n(e,r,o)),s&&o&&"number"==typeof r)return u&&e.children?o.children.splice(r,1,...e.children):o.children.splice(r,1),r}})),yV(g,{Fragment:N.Fragment,components:s,ignoreInvalidStyle:!0,jsx:N.jsx,jsxs:N.jsxs,passKeys:!0,passNode:!0})}function PG(e){const t=e.indexOf(":"),n=e.indexOf("?"),r=e.indexOf("#"),o=e.indexOf("/");return-1===t||-1!==o&&t>o||-1!==n&&t>n||-1!==r&&t>r||OG.test(e.slice(0,t))?e:""}function LG(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let zG={async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null};function FG(e){zG=e}const BG={exec:()=>null};function UG(e,t=""){let n="string"==typeof e?e:e.source;const r={replace:(e,t)=>{let o="string"==typeof t?t:t.source;return o=o.replace($G.caret,"$1"),n=n.replace(e,o),r},getRegex:()=>new RegExp(n,t)};return r}const $G={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>new RegExp(`^( {0,3}${e})((?:[\t ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ \t][^\\n]*)?(?:\\n|$))`),hrRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,"i")},VG=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,HG=/(?:[*+-]|\d{1,9}[.)])/,WG=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,GG=UG(WG).replace(/bull/g,HG).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),qG=UG(WG).replace(/bull/g,HG).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),YG=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,JG=/(?!\s*\])(?:\\.|[^\[\]\\])+/,XG=UG(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",JG).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),KG=UG(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,HG).getRegex(),ZG="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",QG=/|$))/,eq=UG("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$))","i").replace("comment",QG).replace("tag",ZG).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),tq=UG(YG).replace("hr",VG).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ZG).getRegex(),nq={blockquote:UG(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",tq).getRegex(),code:/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,def:XG,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:VG,html:eq,lheading:GG,list:KG,newline:/^(?:[ \t]*(?:\n|$))+/,paragraph:tq,table:BG,text:/^[^\n]+/},rq=UG("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",VG).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3}\t)[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ZG).getRegex(),oq={...nq,lheading:qG,table:rq,paragraph:UG(YG).replace("hr",VG).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",rq).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",ZG).getRegex()},sq={...nq,html:UG("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",QG).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:BG,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:UG(YG).replace("hr",VG).replace("heading"," *#{1,6} *[^\n]").replace("lheading",GG).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},iq=/^( {2,}|\\)\n(?!\s*$)/,aq=/[\p{P}\p{S}]/u,lq=/[\s\p{P}\p{S}]/u,cq=/[^\s\p{P}\p{S}]/u,dq=UG(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,lq).getRegex(),uq=/(?!~)[\p{P}\p{S}]/u,hq=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,fq=UG(hq,"u").replace(/punct/g,aq).getRegex(),pq=UG(hq,"u").replace(/punct/g,uq).getRegex(),mq="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",gq=UG(mq,"gu").replace(/notPunctSpace/g,cq).replace(/punctSpace/g,lq).replace(/punct/g,aq).getRegex(),yq=UG(mq,"gu").replace(/notPunctSpace/g,/(?:[^\s\p{P}\p{S}]|~)/u).replace(/punctSpace/g,/(?!~)[\s\p{P}\p{S}]/u).replace(/punct/g,uq).getRegex(),bq=UG("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,cq).replace(/punctSpace/g,lq).replace(/punct/g,aq).getRegex(),xq=UG(/\\(punct)/,"gu").replace(/punct/g,aq).getRegex(),vq=UG(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),wq=UG(QG).replace("(?:--\x3e|$)","--\x3e").getRegex(),kq=UG("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",wq).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Sq=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,Cq=UG(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",Sq).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Eq=UG(/^!?\[(label)\]\[(ref)\]/).replace("label",Sq).replace("ref",JG).getRegex(),Nq=UG(/^!?\[(ref)\](?:\[\])?/).replace("ref",JG).getRegex(),jq={_backpedal:BG,anyPunctuation:xq,autolink:vq,blockSkip:/\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g,br:iq,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:BG,emStrongLDelim:fq,emStrongRDelimAst:gq,emStrongRDelimUnd:bq,escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,link:Cq,nolink:Nq,punctuation:dq,reflink:Eq,reflinkSearch:UG("reflink|nolink(?!\\()","g").replace("reflink",Eq).replace("nolink",Nq).getRegex(),tag:kq,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},Dq=e=>Oq[e];function Rq(e,t){if(t){if($G.escapeTest.test(e))return e.replace($G.escapeReplace,Dq)}else if($G.escapeTestNoEncode.test(e))return e.replace($G.escapeReplaceNoEncode,Dq);return e}function Pq(e){try{e=encodeURI(e).replace($G.percentDecode,"%")}catch{return null}return e}function Lq(e,t){var n;const r=e.replace($G.findPipe,((e,t,n)=>{let r=!1,o=t;for(;--o>=0&&"\\"===n[o];)r=!r;return r?"|":" |"})).split($G.splitPipe);let o=0;if(r[0].trim()||r.shift(),r.length>0&&!(null==(n=r.at(-1))?void 0:n.trim())&&r.pop(),t)if(r.length>t)r.splice(t);else for(;r.length0)return{type:"space",raw:t[0]}}code(e){const t=this.rules.block.code.exec(e);if(t){const e=t[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?e:zq(e,"\n")}}}fences(e){const t=this.rules.block.fences.exec(e);if(t){const e=t[0],n=function(e,t,n){const r=e.match(n.other.indentCodeCompensation);if(null===r)return t;const o=r[1];return t.split("\n").map((e=>{const t=e.match(n.other.beginningSpace);if(null===t)return e;const[r]=t;return r.length>=o.length?e.slice(o.length):e})).join("\n")}(e,t[3]||"",this.rules);return{type:"code",raw:e,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:n}}}heading(e){const t=this.rules.block.heading.exec(e);if(t){let e=t[2].trim();if(this.rules.other.endingHash.test(e)){const t=zq(e,"#");this.options.pedantic?e=t.trim():t&&!this.rules.other.endingSpaceChar.test(t)||(e=t.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:e,tokens:this.lexer.inline(e)}}}hr(e){const t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:zq(t[0],"\n")}}blockquote(e){const t=this.rules.block.blockquote.exec(e);if(t){let e=zq(t[0],"\n").split("\n"),n="",r="";const o=[];for(;e.length>0;){let t=!1;const s=[];let i;for(i=0;i1,o={type:"list",raw:"",ordered:r,start:r?+n.slice(0,-1):"",loose:!1,items:[]};n=r?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=r?n:"[*+-]");const s=this.rules.other.listItemRegex(n);let i=!1;for(;e;){let n=!1,r="",a="";if(!(t=s.exec(e)))break;if(this.rules.block.hr.test(e))break;r=t[0],e=e.substring(r.length);let l=t[2].split("\n",1)[0].replace(this.rules.other.listReplaceTabs,(e=>" ".repeat(3*e.length))),c=e.split("\n",1)[0],d=!l.trim(),u=0;if(this.options.pedantic?(u=2,a=l.trimStart()):d?u=t[1].length+1:(u=t[2].search(this.rules.other.nonSpaceChar),u=u>4?1:u,a=l.slice(u),u+=t[1].length),d&&this.rules.other.blankLine.test(c)&&(r+=c+"\n",e=e.substring(c.length+1),n=!0),!n){const t=this.rules.other.nextBulletRegex(u),n=this.rules.other.hrRegex(u),o=this.rules.other.fencesBeginRegex(u),s=this.rules.other.headingBeginRegex(u),i=this.rules.other.htmlBeginRegex(u);for(;e;){const h=e.split("\n",1)[0];let f;if(c=h,this.options.pedantic?(c=c.replace(this.rules.other.listReplaceNesting," "),f=c):f=c.replace(this.rules.other.tabCharGlobal," "),o.test(c))break;if(s.test(c))break;if(i.test(c))break;if(t.test(c))break;if(n.test(c))break;if(f.search(this.rules.other.nonSpaceChar)>=u||!c.trim())a+="\n"+f.slice(u);else{if(d)break;if(l.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4)break;if(o.test(l))break;if(s.test(l))break;if(n.test(l))break;a+="\n"+c}d||c.trim()||(d=!0),r+=h+"\n",e=e.substring(h.length+1),l=f.slice(u)}}o.loose||(i?o.loose=!0:this.rules.other.doubleBlankLine.test(r)&&(i=!0));let h,f=null;this.options.gfm&&(f=this.rules.other.listIsTask.exec(a),f&&(h="[ ] "!==f[0],a=a.replace(this.rules.other.listReplaceTask,""))),o.items.push({type:"list_item",raw:r,task:!!f,checked:h,loose:!1,text:a,tokens:[]}),o.raw+=r}const a=o.items.at(-1);if(!a)return;a.raw=a.raw.trimEnd(),a.text=a.text.trimEnd(),o.raw=o.raw.trimEnd();for(let e=0;e"space"===e.type)),n=t.length>0&&t.some((e=>this.rules.other.anyLine.test(e.raw)));o.loose=n}if(o.loose)for(let e=0;e({text:e,tokens:this.lexer.inline(e),header:!1,align:i.align[t]}))));return i}}lheading(e){const t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:"="===t[2].charAt(0)?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){const t=this.rules.block.paragraph.exec(e);if(t){const e="\n"===t[1].charAt(t[1].length-1)?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:e,tokens:this.lexer.inline(e)}}}text(e){const t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){const t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:t[1]}}tag(e){const t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){const t=this.rules.inline.link.exec(e);if(t){const e=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(e)){if(!this.rules.other.endAngleBracket.test(e))return;const t=zq(e.slice(0,-1),"\\");if((e.length-t.length)%2==0)return}else{const e=function(e,t){if(-1===e.indexOf(t[1]))return-1;let n=0;for(let r=0;r-1){const n=(0===t[0].indexOf("!")?5:4)+t[1].length+e;t[2]=t[2].substring(0,e),t[0]=t[0].substring(0,n).trim(),t[3]=""}}let n=t[2],r="";if(this.options.pedantic){const e=this.rules.other.pedanticHrefTitle.exec(n);e&&(n=e[1],r=e[3])}else r=t[3]?t[3].slice(1,-1):"";return n=n.trim(),this.rules.other.startAngleBracket.test(n)&&(n=this.options.pedantic&&!this.rules.other.endAngleBracket.test(e)?n.slice(1):n.slice(1,-1)),Fq(t,{href:n?n.replace(this.rules.inline.anyPunctuation,"$1"):n,title:r?r.replace(this.rules.inline.anyPunctuation,"$1"):r},t[0],this.lexer,this.rules)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){const e=t[(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal," ").toLowerCase()];if(!e){const e=n[0].charAt(0);return{type:"text",raw:e,text:e}}return Fq(n,e,n[0],this.lexer,this.rules)}}emStrong(e,t,n=""){let r=this.rules.inline.emStrongLDelim.exec(e);if(!r)return;if(r[3]&&n.match(this.rules.other.unicodeAlphaNumeric))return;if(!(r[1]||r[2]||"")||!n||this.rules.inline.punctuation.exec(n)){const n=[...r[0]].length-1;let o,s,i=n,a=0;const l="*"===r[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(l.lastIndex=0,t=t.slice(-1*e.length+n);null!=(r=l.exec(t));){if(o=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!o)continue;if(s=[...o].length,r[3]||r[4]){i+=s;continue}if((r[5]||r[6])&&n%3&&!((n+s)%3)){a+=s;continue}if(i-=s,i>0)continue;s=Math.min(s,s+i+a);const t=[...r[0]][0].length,l=e.slice(0,n+r.index+t+s);if(Math.min(n,s)%2){const e=l.slice(1,-1);return{type:"em",raw:l,text:e,tokens:this.lexer.inlineTokens(e)}}const c=l.slice(2,-2);return{type:"strong",raw:l,text:c,tokens:this.lexer.inlineTokens(c)}}}}codespan(e){const t=this.rules.inline.code.exec(e);if(t){let e=t[2].replace(this.rules.other.newLineCharGlobal," ");const n=this.rules.other.nonSpaceChar.test(e),r=this.rules.other.startingSpaceChar.test(e)&&this.rules.other.endingSpaceChar.test(e);return n&&r&&(e=e.substring(1,e.length-1)),{type:"codespan",raw:t[0],text:e}}}br(e){const t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){const t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){const t=this.rules.inline.autolink.exec(e);if(t){let e,n;return"@"===t[2]?(e=t[1],n="mailto:"+e):(e=t[1],n=e),{type:"link",raw:t[0],text:e,href:n,tokens:[{type:"text",raw:e,text:e}]}}}url(e){var t;let n;if(n=this.rules.inline.url.exec(e)){let e,r;if("@"===n[2])e=n[0],r="mailto:"+e;else{let o;do{o=n[0],n[0]=(null==(t=this.rules.inline._backpedal.exec(n[0]))?void 0:t[0])??""}while(o!==n[0]);e=n[0],r="www."===n[1]?"http://"+n[0]:n[0]}return{type:"link",raw:n[0],text:e,href:r,tokens:[{type:"text",raw:e,text:e}]}}}inlineText(e){const t=this.rules.inline.text.exec(e);if(t){const e=this.lexer.state.inRawBlock;return{type:"text",raw:t[0],text:t[0],escaped:e}}}}class Uq{constructor(e){n(this,"tokens"),n(this,"options"),n(this,"state"),n(this,"tokenizer"),n(this,"inlineQueue"),this.tokens=[],this.tokens.links=Object.create(null),this.options=e||zG,this.options.tokenizer=this.options.tokenizer||new Bq,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};const t={other:$G,block:Tq.normal,inline:Mq.normal};this.options.pedantic?(t.block=Tq.pedantic,t.inline=Mq.pedantic):this.options.gfm&&(t.block=Tq.gfm,this.options.breaks?t.inline=Mq.breaks:t.inline=Mq.gfm),this.tokenizer.rules=t}static get rules(){return{block:Tq,inline:Mq}}static lex(e,t){return new Uq(t).lex(e)}static lexInline(e,t){return new Uq(t).inlineTokens(e)}lex(e){e=e.replace($G.carriageReturn,"\n"),this.blockTokens(e,this.tokens);for(let t=0;t!!(i=n.call({lexer:this},e,t))&&(e=e.substring(i.raw.length),t.push(i),!0))))continue;if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length);const n=t.at(-1);1===i.raw.length&&void 0!==n?n.raw+="\n":t.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length);const n=t.at(-1);"paragraph"===(null==n?void 0:n.type)||"text"===(null==n?void 0:n.type)?(n.raw+="\n"+i.raw,n.text+="\n"+i.text,this.inlineQueue.at(-1).src=n.text):t.push(i);continue}if(i=this.tokenizer.fences(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.heading(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.hr(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.blockquote(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.list(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.html(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.def(e)){e=e.substring(i.raw.length);const n=t.at(-1);"paragraph"===(null==n?void 0:n.type)||"text"===(null==n?void 0:n.type)?(n.raw+="\n"+i.raw,n.text+="\n"+i.raw,this.inlineQueue.at(-1).src=n.text):this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title});continue}if(i=this.tokenizer.table(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.lheading(e)){e=e.substring(i.raw.length),t.push(i);continue}let a=e;if(null==(s=this.options.extensions)?void 0:s.startBlock){let t=1/0;const n=e.slice(1);let r;this.options.extensions.startBlock.forEach((e=>{r=e.call({lexer:this},n),"number"==typeof r&&r>=0&&(t=Math.min(t,r))})),t<1/0&&t>=0&&(a=e.substring(0,t+1))}if(this.state.top&&(i=this.tokenizer.paragraph(a))){const r=t.at(-1);n&&"paragraph"===(null==r?void 0:r.type)?(r.raw+="\n"+i.raw,r.text+="\n"+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=r.text):t.push(i),n=a.length!==e.length,e=e.substring(i.raw.length)}else if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length);const n=t.at(-1);"text"===(null==n?void 0:n.type)?(n.raw+="\n"+i.raw,n.text+="\n"+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=n.text):t.push(i)}else if(e){const t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw new Error(t)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){var n,r,o;let s=e,i=null;if(this.tokens.links){const e=Object.keys(this.tokens.links);if(e.length>0)for(;null!=(i=this.tokenizer.rules.inline.reflinkSearch.exec(s));)e.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(i=this.tokenizer.rules.inline.blockSkip.exec(s));)s=s.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(i=this.tokenizer.rules.inline.anyPunctuation.exec(s));)s=s.slice(0,i.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let a=!1,l="";for(;e;){let i;if(a||(l=""),a=!1,null==(r=null==(n=this.options.extensions)?void 0:n.inline)?void 0:r.some((n=>!!(i=n.call({lexer:this},e,t))&&(e=e.substring(i.raw.length),t.push(i),!0))))continue;if(i=this.tokenizer.escape(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.tag(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.link(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(i.raw.length);const n=t.at(-1);"text"===i.type&&"text"===(null==n?void 0:n.type)?(n.raw+=i.raw,n.text+=i.text):t.push(i);continue}if(i=this.tokenizer.emStrong(e,s,l)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.codespan(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.br(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.del(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.autolink(e)){e=e.substring(i.raw.length),t.push(i);continue}if(!this.state.inLink&&(i=this.tokenizer.url(e))){e=e.substring(i.raw.length),t.push(i);continue}let c=e;if(null==(o=this.options.extensions)?void 0:o.startInline){let t=1/0;const n=e.slice(1);let r;this.options.extensions.startInline.forEach((e=>{r=e.call({lexer:this},n),"number"==typeof r&&r>=0&&(t=Math.min(t,r))})),t<1/0&&t>=0&&(c=e.substring(0,t+1))}if(i=this.tokenizer.inlineText(c)){e=e.substring(i.raw.length),"_"!==i.raw.slice(-1)&&(l=i.raw.slice(-1)),a=!0;const n=t.at(-1);"text"===(null==n?void 0:n.type)?(n.raw+=i.raw,n.text+=i.text):t.push(i)}else if(e){const t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw new Error(t)}}return t}}class $q{constructor(e){n(this,"options"),n(this,"parser"),this.options=e||zG}space(e){return""}code({text:e,lang:t,escaped:n}){var r;const o=null==(r=(t||"").match($G.notSpaceStart))?void 0:r[0],s=e.replace($G.endingNewline,"")+"\n";return o?'
'+(n?s:Rq(s,!0))+"
\n":"
"+(n?s:Rq(s,!0))+"
\n"}blockquote({tokens:e}){return`
\n${this.parser.parse(e)}
\n`}html({text:e}){return e}heading({tokens:e,depth:t}){return`${this.parser.parseInline(e)}\n`}hr(e){return"
\n"}list(e){const t=e.ordered,n=e.start;let r="";for(let s=0;s\n"+r+"\n"}listitem(e){var t;let n="";if(e.task){const r=this.checkbox({checked:!!e.checked});e.loose?"paragraph"===(null==(t=e.tokens[0])?void 0:t.type)?(e.tokens[0].text=r+" "+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&"text"===e.tokens[0].tokens[0].type&&(e.tokens[0].tokens[0].text=r+" "+Rq(e.tokens[0].tokens[0].text),e.tokens[0].tokens[0].escaped=!0)):e.tokens.unshift({type:"text",raw:r+" ",text:r+" ",escaped:!0}):n+=r+" "}return n+=this.parser.parse(e.tokens,!!e.loose),`
  • ${n}
  • \n`}checkbox({checked:e}){return"'}paragraph({tokens:e}){return`

    ${this.parser.parseInline(e)}

    \n`}table(e){let t="",n="";for(let o=0;o${r}`),"\n\n"+t+"\n"+r+"
    \n"}tablerow({text:e}){return`\n${e}\n`}tablecell(e){const t=this.parser.parseInline(e.tokens),n=e.header?"th":"td";return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+`\n`}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${Rq(e,!0)}`}br(e){return"
    "}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:t,tokens:n}){const r=this.parser.parseInline(n),o=Pq(e);if(null===o)return r;let s='
    ",s}image({href:e,title:t,text:n}){const r=Pq(e);if(null===r)return Rq(n);let o=`${n}{const r=e[n].flat(1/0);o=o.concat(this.walkTokens(r,t))})):e.tokens&&(o=o.concat(this.walkTokens(e.tokens,t)))}}return o}use(...e){const t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach((e=>{const n={...e};if(n.async=this.defaults.async||n.async||!1,e.extensions&&(e.extensions.forEach((e=>{if(!e.name)throw new Error("extension name required");if("renderer"in e){const n=t.renderers[e.name];t.renderers[e.name]=n?function(...t){let r=e.renderer.apply(this,t);return!1===r&&(r=n.apply(this,t)),r}:e.renderer}if("tokenizer"in e){if(!e.level||"block"!==e.level&&"inline"!==e.level)throw new Error("extension level must be 'block' or 'inline'");const n=t[e.level];n?n.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&("block"===e.level?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:"inline"===e.level&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}"childTokens"in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)})),n.extensions=t),e.renderer){const t=this.defaults.renderer||new $q(this.defaults);for(const n in e.renderer){if(!(n in t))throw new Error(`renderer '${n}' does not exist`);if(["options","parser"].includes(n))continue;const r=n,o=e.renderer[r],s=t[r];t[r]=(...e)=>{let n=o.apply(t,e);return!1===n&&(n=s.apply(t,e)),n||""}}n.renderer=t}if(e.tokenizer){const t=this.defaults.tokenizer||new Bq(this.defaults);for(const n in e.tokenizer){if(!(n in t))throw new Error(`tokenizer '${n}' does not exist`);if(["options","rules","lexer"].includes(n))continue;const r=n,o=e.tokenizer[r],s=t[r];t[r]=(...e)=>{let n=o.apply(t,e);return!1===n&&(n=s.apply(t,e)),n}}n.tokenizer=t}if(e.hooks){const t=this.defaults.hooks||new Wq;for(const n in e.hooks){if(!(n in t))throw new Error(`hook '${n}' does not exist`);if(["options","block"].includes(n))continue;const r=n,o=e.hooks[r],s=t[r];Wq.passThroughHooks.has(n)?t[r]=e=>{if(this.defaults.async)return Promise.resolve(o.call(t,e)).then((e=>s.call(t,e)));const n=o.call(t,e);return s.call(t,n)}:t[r]=(...e)=>{let n=o.apply(t,e);return!1===n&&(n=s.apply(t,e)),n}}n.hooks=t}if(e.walkTokens){const t=this.defaults.walkTokens,r=e.walkTokens;n.walkTokens=function(e){let n=[];return n.push(r.call(this,e)),t&&(n=n.concat(t.call(this,e))),n}}this.defaults={...this.defaults,...n}})),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return Uq.lex(e,t??this.defaults)}parser(e,t){return Hq.parse(e,t??this.defaults)}parseMarkdown(e){return(t,n)=>{const r={...n},o={...this.defaults,...r},s=this.onError(!!o.silent,!!o.async);if(!0===this.defaults.async&&!1===r.async)return s(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(null==t)return s(new Error("marked(): input parameter is undefined or null"));if("string"!=typeof t)return s(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected"));o.hooks&&(o.hooks.options=o,o.hooks.block=e);const i=o.hooks?o.hooks.provideLexer():e?Uq.lex:Uq.lexInline,a=o.hooks?o.hooks.provideParser():e?Hq.parse:Hq.parseInline;if(o.async)return Promise.resolve(o.hooks?o.hooks.preprocess(t):t).then((e=>i(e,o))).then((e=>o.hooks?o.hooks.processAllTokens(e):e)).then((e=>o.walkTokens?Promise.all(this.walkTokens(e,o.walkTokens)).then((()=>e)):e)).then((e=>a(e,o))).then((e=>o.hooks?o.hooks.postprocess(e):e)).catch(s);try{o.hooks&&(t=o.hooks.preprocess(t));let e=i(t,o);o.hooks&&(e=o.hooks.processAllTokens(e)),o.walkTokens&&this.walkTokens(e,o.walkTokens);let n=a(e,o);return o.hooks&&(n=o.hooks.postprocess(n)),n}catch(LY){return s(LY)}}}onError(e,t){return n=>{if(n.message+="\nPlease report this to https://github.com/markedjs/marked.",e){const e="

    An error occurred:

    "+Rq(n.message+"",!0)+"
    ";return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}};function qq(e,t){return Gq.parse(e,t)}qq.options=qq.setOptions=function(e){return Gq.setOptions(e),qq.defaults=Gq.defaults,FG(qq.defaults),qq},qq.getDefaults=LG,qq.defaults=zG,qq.use=function(...e){return Gq.use(...e),qq.defaults=Gq.defaults,FG(qq.defaults),qq},qq.walkTokens=function(e,t){return Gq.walkTokens(e,t)},qq.parseInline=Gq.parseInline,qq.Parser=Hq,qq.parser=Hq.parse,qq.Renderer=$q,qq.TextRenderer=Vq,qq.Lexer=Uq,qq.lexer=Uq.lex,qq.Tokenizer=Bq,qq.Hooks=Wq,qq.parse=qq,qq.options,qq.setOptions,qq.use,qq.walkTokens,qq.parseInline,Hq.parse,Uq.lex;const Yq=[yn.lineWrapping],Jq=new Set(["python","markdown","sql","json","yaml","toml","shell","javascript","typescript","jsx","tsx","css","html"]);const Xq=e=>{const t=C.c(26),{code:n,language:r}=e,{theme:s}=De(),{createNewCell:i}=U(),a=Du(),l=se(ce),[c,d]=o.useState(n);let u,h,f;t[0]!==n?(u=()=>{d(n)},h=[n],t[0]=n,t[1]=u,t[2]=h):(u=t[1],h=t[2]),o.useEffect(u,h),t[3]!==l||t[4]!==i||t[5]!==r||t[6]!==a||t[7]!==c?(f=()=>{const e=function(e,t){return e?"python"===e?{language:e,code:t}:"sql"===e?{language:"python",code:Ro.fromQuery(t)}:"markdown"===e?{language:"python",code:Rt.fromMarkdown(t)}:"shell"===e||"bash"===e?{language:"python",code:`import subprocess\nsubprocess.run("${t}")`}:{language:"python",code:`_${e} = """\n${t}\n"""`}:{language:"python",code:t}}(r,c);"sql"===r&&Nu(l,i,a),i({code:e.code,before:!1,cellId:a??"__end__"})},t[3]=l,t[4]=i,t[5]=r,t[6]=a,t[7]=c,t[8]=f):f=t[8];const p=f;let m;t[9]!==c?(m=async()=>{await nt(c)},t[9]=c,t[10]=m):m=t[10];const g=m,y="dark"===s?"dark":"light",b=r&&Jq.has(r)?r:void 0;let x,v,w,k,S,E;return t[11]!==y||t[12]!==b||t[13]!==c?(x=N.jsx(Ea,{theme:y,language:b,className:"cm border rounded overflow-hidden",extensions:Yq,value:c,onChange:d}),t[11]=y,t[12]=b,t[13]=c,t[14]=x):x=t[14],t[15]!==g?(v=N.jsx(J,{size:"xs",variant:"outline",onClick:g,children:"Copy"}),t[15]=g,t[16]=v):v=t[16],t[17]===Symbol.for("react.memo_cache_sentinel")?(w=N.jsx(zc,{className:"ml-2 h-4 w-4"}),t[17]=w):w=t[17],t[18]!==p?(k=N.jsxs(J,{size:"xs",variant:"outline",onClick:p,children:["Add to Notebook",w]}),t[18]=p,t[19]=k):k=t[19],t[20]!==k||t[21]!==v?(S=N.jsxs("div",{className:"flex justify-end mt-2 space-x-2",children:[v,k]}),t[20]=k,t[21]=v,t[22]=S):S=t[22],t[23]!==S||t[24]!==x?(E=N.jsxs("div",{className:"relative",children:[x,S]}),t[23]=S,t[24]=x,t[25]=E):E=t[25],E},Kq={code:({children:e,className:t})=>{const n=null==t?void 0:t.replace("language-","");return n&&"string"==typeof e?N.jsxs("div",{children:[N.jsx("div",{className:"text-xs text-muted-foreground pl-1",children:n}),N.jsx(Xq,{code:e.trim(),language:n})]}):N.jsx("code",{className:t,children:e})}};const Zq=o.memo((e=>{const t=C.c(2),{content:n}=e;let r;return t[0]!==n?(r=N.jsx(RG,{components:Kq,className:"prose dark:prose-invert max-w-none prose-pre:pl-0",children:n}),t[0]=n,t[1]=r):r=t[1],r}),((e,t)=>e.content===t.content));Zq.displayName="MemoizedMarkdownBlock";const Qq=o.memo((({content:e})=>{const t=o.useMemo((()=>{return t=e,qq.lexer(t).map((e=>e.raw));var t}),[e]);return N.jsx(N.Fragment,{children:t.map(((e,t)=>N.jsx(Zq,{content:e},`markdown-block-${t}`)))})}));Qq.displayName="MarkdownRenderer";const eY=(e,t,n,r)=>t?{...e,chats:e.chats.map((e=>e.id===t?{...e,messages:[...e.messages,{role:n,content:r,timestamp:Date.now()}],updatedAt:Date.now()}:e))}:e,tY=({onNewChat:e,activeChatId:t,setActiveChat:n,chats:r,setMessages:o})=>N.jsxs("div",{className:"flex border-b px-2 py-1 justify-between flex-shrink-0",children:[N.jsx(it,{content:"New chat",children:N.jsx(J,{variant:"text",size:"icon",onClick:e,children:N.jsx(Do,{className:"h-4 w-4"})})}),N.jsxs(Pn,{children:[N.jsx(it,{content:"Previous chats",children:N.jsx(hs,{asChild:!0,children:N.jsx(J,{variant:"text",size:"icon",children:N.jsx(fl,{className:"h-4 w-4"})})})}),N.jsx(On,{className:"w-[520px] p-0",align:"start",side:"right",children:N.jsx(u$,{className:"h-[500px] p-4",children:N.jsx("div",{className:"space-y-4",children:r.map((e=>N.jsxs("div",{className:An("p-3 rounded-md cursor-pointer hover:bg-accent",e.id===t&&"bg-accent"),onClick:()=>{n(e.id),o(e.messages.map((({role:e,content:t,timestamp:n})=>({role:e,content:t,id:n.toString()}))))},children:[N.jsx("div",{className:"font-medium",children:e.title}),N.jsx("div",{className:"text-sm text-muted-foreground",children:new Date(e.updatedAt).toLocaleString()})]},e.id)))})})})]})]}),nY=o.memo((e=>{const t=C.c(14),{message:n,index:r,theme:o,onEdit:s,setChatState:i,chatState:a}=e,l="user"===n.role?"justify-end":"justify-start";let c,d,u;return t[0]!==l?(c=An("flex",l),t[0]=l,t[1]=c):c=t[1],t[2]!==a||t[3]!==r||t[4]!==n.content||t[5]!==n.id||t[6]!==n.role||t[7]!==s||t[8]!==i||t[9]!==o?(d="user"===n.role?N.jsx("div",{className:"w-[95%] bg-background border p-1 rounded-sm",children:N.jsx(As,{value:n.content,theme:o,placeholder:"Type your message...",onChange:sY,onSubmit:(e,t)=>{t.trim()&&(s(r,t),a.activeChatId&&i((e=>eY(e,a.activeChatId,"user",t))))},onClose:iY},n.id)}):N.jsx("div",{className:"w-[95%]",children:N.jsx(Qq,{content:n.content})}),t[2]=a,t[3]=r,t[4]=n.content,t[5]=n.id,t[6]=n.role,t[7]=s,t[8]=i,t[9]=o,t[10]=d):d=t[10],t[11]!==c||t[12]!==d?(u=N.jsx("div",{className:c,children:d}),t[11]=c,t[12]=d,t[13]=u):u=t[13],u}));nY.displayName="ChatMessage";const rY=o.memo((e=>{var t,n;const r=C.c(8),{input:o,setInput:s,onSubmit:i,theme:a,inputRef:l}=e;let c,d;return r[0]!==(null==(t=l.current)?void 0:t.editor)?(c=()=>{var e,t;return null==(t=null==(e=l.current)?void 0:e.editor)?void 0:t.blur()},r[0]=null==(n=l.current)?void 0:n.editor,r[1]=c):c=r[1],r[2]!==o||r[3]!==i||r[4]!==s||r[5]!==c||r[6]!==a?(d=N.jsx("div",{className:"px-2 py-3 border-t relative flex-shrink-0 min-h-[80px]",children:N.jsx(As,{value:o,onChange:s,onSubmit:i,onClose:c,theme:a,placeholder:"Type your message..."})}),r[2]=o,r[3]=i,r[4]=s,r[5]=c,r[6]=a,r[7]=d):d=r[7],d}));rY.displayName="ChatInput";const oY=()=>{var e;const t=C.c(78),[n,r]=ze(wu),[s,i]=ze(ku),[a,l]=o.useState(""),c=o.useRef(null),d=o.useRef(null),u=o.useRef(null),{theme:h}=De();let f,p,m;t[0]===Symbol.for("react.memo_cache_sentinel")?(f=Sr("api/ai/chat").toString(),p=Cr.headers(),t[0]=f,t[1]=p):(f=t[0],p=t[1]),t[2]!==n.activeChatId||t[3]!==r?(m={keepLastMessageOnError:!0,experimental_throttle:100,api:f,headers:p,experimental_prepareRequestBody:lY,streamProtocol:"text",onFinish:e=>{n.activeChatId?r((t=>eY(t,t.activeChatId,"assistant",e.content))):w.warn("No active chat")},onError:cY,onResponse:dY},t[2]=n.activeChatId,t[3]=r,t[4]=m):m=t[4];const{messages:g,input:y,setInput:b,setMessages:x,append:v,handleSubmit:k,error:S,isLoading:E,reload:j}=hl(m);let _;t[5]!==g?(_=null==(e=g.at(-1))?void 0:e.content,t[5]=g,t[6]=_):_=t[6];const I=_;let A,T,M;t[7]!==E?(A=()=>{var e,t;if(E){const n=null==(e=u.current)?void 0:e.parentElement;if(!n)return;n.scrollHeight-n.scrollTop-n.clientHeight<150&&(null==(t=u.current)||t.scrollIntoView({behavior:"smooth"}))}},t[7]=E,t[8]=A):A=t[8],t[9]!==E||t[10]!==I||t[11]!==g?(T=[g,E,I],t[9]=E,t[10]=I,t[11]=g,t[12]=T):T=t[12],o.useEffect(A,T),t[13]!==v||t[14]!==r||t[15]!==b||t[16]!==x?(M=e=>{const t={id:pl(),title:`${e.slice(0,30)}...`,messages:[{role:"user",content:e,timestamp:Date.now()}],createdAt:Date.now(),updatedAt:Date.now()};r((e=>({chats:[...e.chats,t],activeChatId:t.id}))),x([]),b(""),v({role:"user",content:e})},t[13]=v,t[14]=r,t[15]=b,t[16]=x,t[17]=M):M=t[17];const O=M;let D;t[18]!==i||t[19]!==b||t[20]!==x?(D=()=>{i(null),x([]),b(""),l("")},t[18]=i,t[19]=b,t[20]=x,t[21]=D):D=t[21];const R=D;let P;t[22]!==v||t[23]!==x?(P=(e,t)=>{x((t=>t.slice(0,e))),v({role:"user",content:t})},t[22]=v,t[23]=x,t[24]=P):P=t[24];const L=P;let z;t[25]!==n.activeChatId||t[26]!==k||t[27]!==r?(z=(e,t)=>{t.trim()&&(k(e),n.activeChatId&&r((e=>eY(e,n.activeChatId,"user",t))))},t[25]=n.activeChatId,t[26]=k,t[27]=r,t[28]=z):z=t[28];const F=z;let B;t[29]!==j?(B=()=>{j()},t[29]=j,t[30]=B):B=t[30];const U=B;let $;t[31]!==O||t[32]!==a?($=()=>{a.trim()&&O(a.trim())},t[31]=O,t[32]=a,t[33]=$):$=t[33];const V=$;let H;t[34]===Symbol.for("react.memo_cache_sentinel")?(H=()=>{var e,t;return null==(t=null==(e=c.current)?void 0:e.editor)?void 0:t.blur()},t[34]=H):H=t[34];const W=H,G=null==s?void 0:s.id;let q,Y,X,K,Z,Q,ee,te,ne;if(t[35]!==n.chats||t[36]!==R||t[37]!==i||t[38]!==x||t[39]!==G?(q=N.jsx(tY,{onNewChat:R,activeChatId:G,setActiveChat:i,chats:n.chats,setMessages:x}),t[35]=n.chats,t[36]=R,t[37]=i,t[38]=x,t[39]=G,t[40]=q):q=t[40],t[41]!==V||t[42]!==g||t[43]!==a||t[44]!==h?(Y=(!g||0===g.length)&&N.jsx("div",{className:"flex rounded-md border px-1 bg-background",children:N.jsx(As,{value:a,placeholder:"Ask anything, @ to include context",theme:h,onClose:W,onChange:l,onSubmit:V},"new-thread-input")}),t[41]=V,t[42]=g,t[43]=a,t[44]=h,t[45]=Y):Y=t[45],t[46]!==n||t[47]!==L||t[48]!==g||t[49]!==r||t[50]!==h){let e;t[52]!==n||t[53]!==L||t[54]!==r||t[55]!==h?(e=(e,t)=>N.jsx(nY,{message:e,index:t,theme:h,onEdit:L,setChatState:r,chatState:n},t),t[52]=n,t[53]=L,t[54]=r,t[55]=h,t[56]=e):e=t[56],X=g.map(e),t[46]=n,t[47]=L,t[48]=g,t[49]=r,t[50]=h,t[51]=X}else X=t[51];return t[57]!==E?(K=E&&N.jsx("div",{className:"flex justify-center py-4",children:N.jsx(Ms,{className:"h-4 w-4 animate-spin"})}),t[57]=E,t[58]=K):K=t[58],t[59]!==S||t[60]!==U?(Z=S&&N.jsxs("div",{className:"flex items-center justify-center space-x-2 mb-4",children:[N.jsx(xa,{error:S}),N.jsx(J,{variant:"outline",size:"sm",onClick:U,children:"Retry"})]}),t[59]=S,t[60]=U,t[61]=Z):Z=t[61],t[62]===Symbol.for("react.memo_cache_sentinel")?(Q=N.jsx("div",{ref:u}),t[62]=Q):Q=t[62],t[63]!==Y||t[64]!==X||t[65]!==K||t[66]!==Z?(ee=N.jsxs("div",{className:"flex-1 px-3 bg-[var(--slate-1)] gap-4 py-3 flex flex-col overflow-y-auto",children:[Y,X,K,Z,Q]}),t[63]=Y,t[64]=X,t[65]=K,t[66]=Z,t[67]=ee):ee=t[67],t[68]!==F||t[69]!==y||t[70]!==g||t[71]!==b||t[72]!==h?(te=g&&g.length>0&&N.jsx(rY,{input:y,setInput:b,onSubmit:F,theme:h,inputRef:d}),t[68]=F,t[69]=y,t[70]=g,t[71]=b,t[72]=h,t[73]=te):te=t[73],t[74]!==q||t[75]!==ee||t[76]!==te?(ne=N.jsxs("div",{className:"flex flex-col h-[calc(100%-53px)]",children:[q,ee,te]}),t[74]=q,t[75]=ee,t[76]=te,t[77]=ne):ne=t[77],ne};function sY(){}function iY(){}function aY(e){return e.content}function lY(e){return{...e,...Ts(e.messages.map(aY).join("\n")),includeOtherCode:hr("")}}function cY(e){w.error("An error occurred:",e)}function dY(e){w.debug("Received HTTP response from server:",e)}const uY="hoveredCellId",hY="cellHover",fY="cellNum",pY="startTimestamp",mY="endTimestamp";const gY=q(new Map),yY=()=>{const e=C.c(28),{runIds:t,runMap:n}=se(Sc),r=se(gY),{clearRuns:s}=Cc(),{theme:i}=De(),[a,l]=o.useState("above");let c;e[0]!==a?(c=()=>{l("above"===a?"sideBySide":"above")},e[0]=a,e[1]=c):c=e[1];const d=c;if(0===t.length){let t;return e[2]===Symbol.for("react.memo_cache_sentinel")?(t=N.jsx(pM,{title:"No traces",description:N.jsx("span",{children:"Cells that have ran will appear here."}),icon:N.jsx(vl,{})}),e[2]=t):t=e[2],t}let u;e[3]===Symbol.for("react.memo_cache_sentinel")?(u=N.jsx("label",{htmlFor:"chartPosition",className:"text-xs",children:"Inline chart"}),e[3]=u):u=e[3];const h="sideBySide"===a;let f,p,m,g,y,b;if(e[4]!==h||e[5]!==d?(f=N.jsxs("div",{className:"flex flex-row gap-1 items-center",children:[u,N.jsx("input",{type:"checkbox",name:"chartPosition",id:"chartPosition",onClick:d,defaultChecked:h,className:"h-3 cursor-pointer"})]}),e[4]=h,e[5]=d,e[6]=f):f=e[6],e[7]!==s?(p=N.jsx(oB,{dataTestId:"clear-traces-button",onClick:s}),e[7]=s,e[8]=p):p=e[8],e[9]!==f||e[10]!==p?(m=N.jsxs("div",{className:"flex flex-row justify-end gap-3",children:[f,p]}),e[9]=f,e[10]=p,e[11]=m):m=e[11],e[12]!==a||e[13]!==r||e[14]!==t||e[15]!==n||e[16]!==i){let o;e[18]!==a||e[19]!==r||e[20]!==n||e[21]!==i?(o=(e,t)=>{const o=n.get(e);if(o)return N.jsx(vY,{run:o,isExpanded:r.get(o.runId),isMostRecentRun:0===t,chartPosition:a,theme:i},o.runId)},e[18]=a,e[19]=r,e[20]=n,e[21]=i,e[22]=o):o=e[22],g=t.map(o),e[12]=a,e[13]=r,e[14]=t,e[15]=n,e[16]=i,e[17]=g}else g=e[17];return e[23]!==g?(y=N.jsx("div",{className:"flex flex-col gap-3",children:g}),e[23]=g,e[24]=y):y=e[24],e[25]!==m||e[26]!==y?(b=N.jsxs("div",{className:"py-1 px-2 overflow-y-scroll",children:[m,y]}),e[25]=m,e[26]=y,e[27]=b):b=e[27],b},bY=u.lazy((()=>Va((()=>import("./index-D2GHK8-k.js")),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13]),import.meta.url).then((e=>({default:e.Vega}))))),xY=e=>{const t=C.c(10),{ref:n,width:r}=uB(),o=void 0===r?300:r,s="dark"===e.theme?"dark":void 0,i=o-50;let a,l;return t[0]!==e.height||t[1]!==e.signalListeners||t[2]!==e.vegaSpec||t[3]!==s||t[4]!==i?(a=N.jsx(bY,{spec:e.vegaSpec,theme:s,width:i,height:e.height,signalListeners:e.signalListeners,actions:!1}),t[0]=e.height,t[1]=e.signalListeners,t[2]=e.vegaSpec,t[3]=s,t[4]=i,t[5]=a):a=t[5],t[6]!==e.className||t[7]!==n||t[8]!==a?(l=N.jsx("div",{className:e.className,ref:n,children:a}),t[6]=e.className,t[7]=n,t[8]=a,t[9]=l):l=t[9],l},vY=({run:e,isMostRecentRun:t,chartPosition:n,isExpanded:r,theme:o})=>{const s=ae(gY),i=(r=r??t)?Se:Ee,a=N.jsx(i,{height:16,className:"inline"}),l=N.jsxs("span",{className:"text-sm cursor-pointer",onClick:()=>{s((t=>{const n=new Map(t);return n.set(e.runId,!r),n}))},children:["Run - ",ga(e.runStartTime),a]});return r?N.jsx(wY,{run:e,chartPosition:n,theme:o,title:l},e.runId):N.jsx("div",{className:"flex flex-col",children:N.jsx("pre",{className:"font-mono font-semibold",children:l})},e.runId)},wY=e=>{const t=C.c(32),{run:n,chartPosition:r,theme:s,title:i}=e,[a,l]=o.useState();let c;t[0]===Symbol.for("react.memo_cache_sentinel")?(c={[hY]:(e,t)=>{var n;const r=null==(n=t.cell)?void 0:n[0];l(r??null)}},t[0]=c):c=t[0];const d=c,u=Wi();let h,f;if(t[1]!==u.inOrderIds||t[2]!==r||t[3]!==n.cellRuns||t[4]!==n.runId||t[5]!==s){const e=[...n.cellRuns.values()].map((e=>{const t=e.elapsedTime??0;return{cell:e.cellId,cellNum:u.inOrderIds.indexOf(e.cellId),startTimestamp:EY(e.startTime),endTimestamp:EY(e.startTime+t),elapsedTime:jx(1e3*t),status:e.status}}));h=`hiddenInputElement-${n.runId}`,f=Tc(function(e,t,n,r){return{$schema:"https://vega.github.io/schema/vega-lite/v5.json",background:"dark"===r?"black":void 0,mark:{type:"bar",cornerRadius:2},params:[{name:uY,bind:{element:`#${t}`}},{name:hY,select:{type:"point",on:"mouseover",fields:["cell"],clear:"mouseout"}}],height:{step:23},encoding:{y:{field:fY,scale:{paddingInner:.2},sort:{field:fY},title:"cell",axis:"sideBySide"===n?null:void 0},x:{field:pY,type:"temporal",axis:{orient:"top",title:null}},x2:{field:mY,type:"temporal"},tooltip:[{field:pY,type:"temporal",timeUnit:"dayhoursminutesseconds",title:"Start"},{field:mY,type:"temporal",timeUnit:"dayhoursminutesseconds",title:"End"}],size:{value:{expr:`${uY} == toString(datum.cell) ? 19.5 : 18`}},color:{field:"status",scale:{domain:["success","error"],range:["#37BE5F","red"]},legend:null}},data:{values:e},config:{view:{stroke:"transparent"}}}}(e,h,r,s)),t[1]=u.inOrderIds,t[2]=r,t[3]=n.cellRuns,t[4]=n.runId,t[5]=s,t[6]=h,t[7]=f}else h=t[6],f=t[7];const p=f.spec;let m;t[8]!==h||t[9]!==a||t[10]!==n?(m=N.jsx(kY,{run:n,hoveredCellId:a,hiddenInputElementId:h}),t[8]=h,t[9]=a,t[10]=n,t[11]=m):m=t[11];const g=m;if("above"===r){let e,r,o;return t[12]!==s||t[13]!==p?(e=N.jsx(xY,{vegaSpec:p,height:120,signalListeners:d,theme:s}),t[12]=s,t[13]=p,t[14]=e):e=t[14],t[15]!==e||t[16]!==i||t[17]!==g?(r=N.jsxs("pre",{className:"font-mono font-semibold",children:[i,e,g]}),t[15]=e,t[16]=i,t[17]=g,t[18]=r):r=t[18],t[19]!==n.runId||t[20]!==r?(o=N.jsx("div",{className:"flex flex-col",children:r},n.runId),t[19]=n.runId,t[20]=r,t[21]=o):o=t[21],o}let y,b,x;return t[22]!==i||t[23]!==g?(y=N.jsxs("pre",{className:"font-mono font-semibold",children:[i,g]}),t[22]=i,t[23]=g,t[24]=y):y=t[24],t[25]!==s||t[26]!==p?(b=N.jsx(xY,{className:"-mt-0.5 flex-1",vegaSpec:p,height:100,signalListeners:d,theme:s}),t[25]=s,t[26]=p,t[27]=b):b=t[27],t[28]!==n.runId||t[29]!==y||t[30]!==b?(x=N.jsxs("div",{className:"flex flex-row",children:[y,b]},n.runId),t[28]=n.runId,t[29]=y,t[30]=b,t[31]=x):x=t[31],x},kY=e=>{const t=C.c(14),{run:n,hoveredCellId:r,hiddenInputElementId:s}=e,i=o.useRef(null);let a;t[0]===Symbol.for("react.memo_cache_sentinel")?(a=e=>{i.current&&(i.current.value=String(e),i.current.dispatchEvent(new Event("input",{bubbles:!0})))},t[0]=a):a=t[0];const l=a,c=r||"";let d,u,h,f,p;return t[1]!==s||t[2]!==c?(d=N.jsx("input",{type:"text",id:s,defaultValue:c,hidden:!0,ref:i}),t[1]=s,t[2]=c,t[3]=d):d=t[3],t[4]!==n.cellRuns?(u=n.cellRuns.values(),t[4]=n.cellRuns,t[5]=u):u=t[5],t[6]!==u?(h=[...u],t[6]=u,t[7]=h):h=t[7],t[8]!==r||t[9]!==h?(f=h.map((e=>N.jsx(CY,{cellRun:e,hovered:e.cellId===r,dispatchHoverEvent:l},e.cellId))),t[8]=r,t[9]=h,t[10]=f):f=t[10],t[11]!==d||t[12]!==f?(p=N.jsxs("div",{className:"text-xs mt-0.5 ml-3 flex flex-col gap-0.5",children:[d,f]}),t[11]=d,t[12]=f,t[13]=p):p=t[13],p},SY={success:N.jsx(Vc,{color:"green",size:14}),running:N.jsx(Wl,{color:"var(--blue-10)",size:14}),error:N.jsx(be,{color:"red",size:14}),queued:N.jsx(Hc,{color:"grey",size:14})},CY=e=>{const t=C.c(39),{cellRun:n,hovered:r,dispatchHoverEvent:o}=e;let s;t[0]!==n.elapsedTime?(s=n.elapsedTime?jx(1e3*n.elapsedTime):"-",t[0]=n.elapsedTime,t[1]=s):s=t[1];const i=s;let a;t[2]!==n.elapsedTime||t[3]!==i?(a=n.elapsedTime?N.jsxs("span",{children:["This cell took ",N.jsx(Ex,{elapsedTime:i})," to run"]}):N.jsx("span",{children:"This cell has not been run"}),t[2]=n.elapsedTime,t[3]=i,t[4]=a):a=t[4];const l=a;let c;t[5]!==n.cellId||t[6]!==o?(c=()=>{o(n.cellId)},t[5]=n.cellId,t[6]=o,t[7]=c):c=t[7];const d=c;let u;t[8]!==o?(u=()=>{o(null)},t[8]=o,t[9]=u):u=t[9];const h=u,f=r&&"bg-[var(--gray-3)] opacity-100";let p,m,g,y,b,x,v;t[10]!==f?(p=An("flex flex-row gap-2 py-1 px-1 opacity-70 hover:bg-[var(--gray-3)] hover:opacity-100",f),t[10]=f,t[11]=p):p=t[11],t[12]!==n.startTime?(m=ga(n.startTime),t[12]=n.startTime,t[13]=m):m=t[13],t[14]!==m?(g=N.jsxs("span",{className:"text-[var(--gray-10)] dark:text-[var(--gray-11)]",children:["[",m,"]"]}),t[14]=m,t[15]=g):g=t[15],t[16]!==n.cellId?(y=N.jsxs("span",{className:"text-[var(--gray-10)] w-16",children:["(",N.jsx(qi,{cellId:n.cellId}),")"]}),t[16]=n.cellId,t[17]=y):y=t[17],t[18]!==n.code?(b=N.jsx("span",{className:"w-40 truncate -ml-1",children:n.code}),t[18]=n.code,t[19]=b):b=t[19],t[20]!==i?(x=N.jsx("span",{className:"text-[var(--gray-10)] dark:text-[var(--gray-11)]",children:i}),t[20]=i,t[21]=x):x=t[21],t[22]!==l||t[23]!==x?(v=N.jsx(it,{content:l,children:x}),t[22]=l,t[23]=x,t[24]=v):v=t[24];const w=SY[n.status];let k,S,E;return t[25]!==n.status||t[26]!==w?(k=N.jsx(it,{content:n.status,children:w}),t[25]=n.status,t[26]=w,t[27]=k):k=t[27],t[28]!==v||t[29]!==k?(S=N.jsxs("div",{className:"flex flex-row gap-1 w-16 justify-end -ml-2",children:[v,k]}),t[28]=v,t[29]=k,t[30]=S):S=t[30],t[31]!==d||t[32]!==h||t[33]!==b||t[34]!==S||t[35]!==p||t[36]!==g||t[37]!==y?(E=N.jsxs("div",{className:p,onMouseEnter:d,onMouseLeave:h,children:[g,y,b,S]}),t[31]=d,t[32]=h,t[33]=b,t[34]=S,t[35]=p,t[36]=g,t[37]=y,t[38]=E):E=t[38],E};function EY(e){try{const t=new Date(1e3*e),n=t.getFullYear(),r=String(t.getMonth()+1).padStart(2,"0"),o=String(t.getDate()).padStart(2,"0"),s=String(t.getHours()).padStart(2,"0"),i=String(t.getMinutes()).padStart(2,"0"),a=String(t.getSeconds()).padStart(2,"0");return`${n}-${r}-${o} ${s}:${i}:${a}.${String(t.getMilliseconds()).padStart(3,"0")}`}catch{return""}}const NY=()=>{const e=C.c(1);let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=N.jsx(yY,{}),e[0]=t):t=e[0],t},jY=u.lazy((()=>Va((()=>import("./terminal-Dh_UZMvv.js")),__vite__mapDeps([14,2,3,15,16]),import.meta.url))),_Y=e=>{const t=C.c(116),{children:n}=e,{isSidebarOpen:r,isTerminalOpen:s,selectedPanel:i}=Xu(),{setIsSidebarOpen:a,setIsTerminalOpen:l}=Ku(),c=u.useRef(null),d=u.useRef(null);let h,f,p,m,g;t[0]!==r?(h=()=>{if(!c.current)return;const e=c.current.isCollapsed();r&&e&&c.current.expand(),r||e||c.current.collapse(),requestAnimationFrame(AY)},f=[r],t[0]=r,t[1]=h,t[2]=f):(h=t[1],f=t[2]),o.useEffect(h,f),t[3]!==s?(p=()=>{if(!d.current)return;const e=d.current.isCollapsed();s&&e&&d.current.expand(),s||e||d.current.collapse(),requestAnimationFrame(MY)},m=[s],t[3]=s,t[4]=p,t[5]=m):(p=t[4],m=t[5]),o.useEffect(p,m),t[6]!==n?(g=N.jsx(TA,{id:"app",className:"relative h-full",children:N.jsx(o.Suspense,{children:n})},"app"),t[6]=n,t[7]=g):g=t[7];const y=g,b=OY,x=r?"resize-handle":"resize-handle-collapsed";let v,w;t[8]!==x?(v=An("border-border no-print z-10",x,"vertical"),t[8]=x,t[9]=v):v=t[9],t[10]!==v?(w=N.jsx(FT,{onDragging:b,className:v}),t[10]=v,t[11]=w):w=t[11];const k=w,S=s?"resize-handle":"resize-handle-collapsed";let E,j;t[12]!==S?(E=An("border-border no-print z-20",S,"horizontal"),t[12]=S,t[13]=E):E=t[13],t[14]!==E?(j=N.jsx(FT,{onDragging:b,className:E}),t[14]=E,t[15]=j):j=t[15];const _=j;let I,A,T,M,O,D,R,P,L,z,F,B,U,$,V,H,W,G,q,Y;t[16]!==i?(I=N.jsx("div",{className:"text-sm text-[var(--slate-11)] uppercase tracking-wide font-semibold flex-1",children:i}),t[16]=i,t[17]=I):I=t[17],t[18]!==a?(A=()=>a(!1),t[18]=a,t[19]=A):A=t[19],t[20]===Symbol.for("react.memo_cache_sentinel")?(T=N.jsx(Cn,{className:"w-4 h-4"}),t[20]=T):T=t[20],t[21]!==A?(M=N.jsx(J,{"data-testid":"close-helper-pane",className:"m-0",size:"xs",variant:"text",onClick:A,children:T}),t[21]=A,t[22]=M):M=t[22],t[23]!==I||t[24]!==M?(O=N.jsxs("div",{className:"p-3 border-b flex justify-between items-center",children:[I,M]}),t[23]=I,t[24]=M,t[25]=O):O=t[25],t[26]!==i?(D="files"===i&&N.jsx(BB,{}),t[26]=i,t[27]=D):D=t[27],t[28]!==i?(R="errors"===i&&N.jsx(mM,{}),t[28]=i,t[29]=R):R=t[29],t[30]!==i?(P="variables"===i&&N.jsx(rB,{}),t[30]=i,t[31]=P):P=t[31],t[32]!==i?(L="dependencies"===i&&N.jsx(KF,{}),t[32]=i,t[33]=L):L=t[33],t[34]!==i?(z="packages"===i&&N.jsx(SU,{}),t[34]=i,t[35]=z):z=t[35],t[36]!==i?(F="outline"===i&&N.jsx(yM,{}),t[36]=i,t[37]=F):F=t[37],t[38]!==i?(B="datasources"===i&&N.jsx(mU,{}),t[38]=i,t[39]=B):B=t[39],t[40]!==i?(U="documentation"===i&&N.jsx(cB,{}),t[40]=i,t[41]=U):U=t[41],t[42]!==i?($="snippets"===i&&N.jsx(WB,{}),t[42]=i,t[43]=$):$=t[43],t[44]!==i?(V="scratchpad"===i&&N.jsx(kU,{}),t[44]=i,t[45]=V):V=t[45],t[46]!==i?(H="chat"===i&&N.jsx(oY,{}),t[46]=i,t[47]=H):H=t[47],t[48]!==i?(W="logs"===i&&N.jsx(sB,{}),t[48]=i,t[49]=W):W=t[49],t[50]!==i?(G="tracing"===i&&N.jsx(NY,{}),t[50]=i,t[51]=G):G=t[51],t[52]!==D||t[53]!==R||t[54]!==P||t[55]!==L||t[56]!==z||t[57]!==F||t[58]!==B||t[59]!==U||t[60]!==$||t[61]!==V||t[62]!==H||t[63]!==W||t[64]!==G?(q=N.jsxs(_i,{children:[D,R,P,L,z,F,B,U,$,V,H,W,G]}),t[52]=D,t[53]=R,t[54]=P,t[55]=L,t[56]=z,t[57]=F,t[58]=B,t[59]=U,t[60]=$,t[61]=V,t[62]=H,t[63]=W,t[64]=G,t[65]=q):q=t[65],t[66]!==O||t[67]!==q?(Y=N.jsx(Rn,{children:N.jsx(o.Suspense,{children:N.jsxs("div",{className:"flex flex-col h-full flex-1 overflow-hidden mr-[-4px]",children:[O,q]})})}),t[66]=O,t[67]=q,t[68]=Y):Y=t[68];const X=Y,K=r&&"border-r border-l border-[var(--slate-7)]";let Z,Q,ee,te,ne,re;t[69]!==K?(Z=An("dark:bg-[var(--slate-1)] no-print print:hidden hide-on-fullscreen",K),t[69]=K,t[70]=Z):Z=t[70],t[71]===Symbol.for("react.memo_cache_sentinel")?(Q=(e,t)=>{var n;0===t&&10===e&&(null==(n=c.current)||n.resize(30))},t[71]=Q):Q=t[71],t[72]!==a?(ee=()=>a(!1),te=()=>a(!0),t[72]=a,t[73]=ee,t[74]=te):(ee=t[73],te=t[74]),t[75]!==X||t[76]!==k?(ne=N.jsxs("span",{className:"flex flex-row h-full",children:[X," ",k]}),t[75]=X,t[76]=k,t[77]=ne):ne=t[77],t[78]!==Z||t[79]!==ee||t[80]!==te||t[81]!==ne?(re=N.jsx(TA,{ref:c,id:"helper",collapsedSize:0,collapsible:!0,className:Z,minSize:10,defaultSize:0,maxSize:75,onResize:Q,onCollapse:ee,onExpand:te,children:ne},"helper"),t[78]=Z,t[79]=ee,t[80]=te,t[81]=ne,t[82]=re):re=t[82];const oe=re,se=s&&"border-[var(--slate-7)]";let ie,ae,le,ce,de,ue,he,fe;t[83]!==se?(ie=An("dark:bg-[var(--slate-1)] no-print print:hidden hide-on-fullscreen",se),t[83]=se,t[84]=ie):ie=t[84],t[85]===Symbol.for("react.memo_cache_sentinel")?(ae=(e,t)=>{var n;0===t&&10===e&&(null==(n=d.current)||n.resize(30))},t[85]=ae):ae=t[85],t[86]!==l?(le=()=>l(!1),ce=()=>l(!0),t[86]=l,t[87]=le,t[88]=ce):(le=t[87],ce=t[88]),t[89]!==l?(de=()=>l(!1),t[89]=l,t[90]=de):de=t[90],t[91]!==s||t[92]!==de?(ue=N.jsx(jY,{visible:s,onClose:de}),t[91]=s,t[92]=de,t[93]=ue):ue=t[93],t[94]!==s||t[95]!==ue?(he=N.jsx(gU,{isOpen:s,children:ue}),t[94]=s,t[95]=ue,t[96]=he):he=t[96],t[97]!==ie||t[98]!==le||t[99]!==ce||t[100]!==he||t[101]!==_?(fe=N.jsxs(TA,{ref:d,id:"terminal",collapsedSize:0,collapsible:!0,className:ie,minSize:10,defaultSize:0,maxSize:75,onResize:ae,onCollapse:le,onExpand:ce,children:[_,he]},"terminal"),t[97]=ie,t[98]=le,t[99]=ce,t[100]=he,t[101]=_,t[102]=fe):fe=t[102];const pe=fe;let me,ge,ye,be,xe,ve,we;return t[103]===Symbol.for("react.memo_cache_sentinel")?(me={getItem:e=>fM||(fM??null),setItem(e,t){fM=t||null}},t[103]=me):me=t[103],t[104]===Symbol.for("react.memo_cache_sentinel")?(ge=N.jsx(_i,{children:N.jsx(aM,{})}),t[104]=ge):ge=t[104],t[105]!==pe?(ye=N.jsx(tM,{capability:"terminal",children:pe}),t[105]=pe,t[106]=ye):ye=t[106],t[107]!==y||t[108]!==ye?(be=N.jsx(TA,{children:N.jsxs(PT,{autoSaveId:"marimo:chrome:v1:l1",direction:"vertical",children:[y,ye]})}),t[107]=y,t[108]=ye,t[109]=be):be=t[109],t[110]!==oe||t[111]!==be?(xe=N.jsxs(PT,{autoSaveId:"marimo:chrome:v1:l2",direction:"horizontal",storage:me,children:[ge,oe,be]}),t[110]=oe,t[111]=be,t[112]=xe):xe=t[112],t[113]===Symbol.for("react.memo_cache_sentinel")?(ve=N.jsx(Rn,{children:N.jsx(_i,{children:N.jsx(nM,{})})}),t[113]=ve):ve=t[113],t[114]!==xe?(we=N.jsxs("div",{className:"flex flex-col flex-1 overflow-hidden absolute inset-0 print:relative",children:[xe,ve]}),t[114]=xe,t[115]=we):we=t[115],we};function IY(){window.dispatchEvent(new Event("resize"))}function AY(){requestAnimationFrame(IY)}function TY(){window.dispatchEvent(new Event("resize"))}function MY(){requestAnimationFrame(TY)}function OY(e){e||window.dispatchEvent(new Event("resize"))}const DY="false"===new URL(window.location.href).searchParams.get(Rs.showChrome),RY=e=>{const t=C.c(10);if(DY){let n,r,o;return t[0]!==e?(n=N.jsx(sA,{hideControls:!0,...e}),t[0]=e,t[1]=n):n=t[1],t[2]===Symbol.for("react.memo_cache_sentinel")?(r=N.jsx(Fu,{}),t[2]=r):r=t[2],t[3]!==n?(o=N.jsxs(N.Fragment,{children:[n,r]}),t[3]=n,t[4]=o):o=t[4],o}let n,r,o;return t[5]!==e?(n=N.jsx(sA,{...e}),t[5]=e,t[6]=n):n=t[6],t[7]===Symbol.for("react.memo_cache_sentinel")?(r=N.jsx(Fu,{}),t[7]=r):r=t[7],t[8]!==n?(o=N.jsxs(_Y,{children:[n,r]}),t[8]=n,t[9]=o):o=t[9],o};export{RY as default};