@marimo-team/frontend 0.23.6-dev10 → 0.23.6-dev12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/dist/assets/{add-cell-with-ai-5QPp1nPl.js → add-cell-with-ai-BqApEAcB.js} +1 -1
  2. package/dist/assets/{agent-panel-Dbk-1jxq.js → agent-panel-fc1sKlOo.js} +1 -1
  3. package/dist/assets/{ai-model-dropdown-DRqlfqFb.js → ai-model-dropdown-DQ9Z4-uL.js} +4 -4
  4. package/dist/assets/{app-config-button-DyNQc93A.js → app-config-button-F1PfzgiC.js} +1 -1
  5. package/dist/assets/{cell-editor-BaK05lPI.js → cell-editor-Cf8hoAWZ.js} +1 -1
  6. package/dist/assets/{chat-display-D4A5J3ON.js → chat-display-Cmk2MWy-.js} +1 -1
  7. package/dist/assets/{chat-panel--TAJZjAo.js → chat-panel-B9_sKM5C.js} +1 -1
  8. package/dist/assets/{chat-ui-Dlmd_U56.js → chat-ui-W3rV7Y85.js} +1 -1
  9. package/dist/assets/{command-palette-kgF1SANg.js → command-palette-tORi89eP.js} +1 -1
  10. package/dist/assets/{edit-page-B4TUnRbq.js → edit-page-CrUPfrQN.js} +3 -3
  11. package/dist/assets/{home-page-B6hZQb34.js → home-page-B-NywDCP.js} +1 -1
  12. package/dist/assets/{hooks-S16Gx0fA.js → hooks-dKyWh547.js} +1 -1
  13. package/dist/assets/{index-6t5Y6NP5.js → index-5vJlRIve.js} +3 -3
  14. package/dist/assets/layout-Cb89Nchy.js +9 -0
  15. package/dist/assets/{packages-panel-bTONt5Lb.js → packages-panel-C973lbUg.js} +1 -1
  16. package/dist/assets/{panels-gY-_wGFa.js → panels-KV8AsQsX.js} +1 -1
  17. package/dist/assets/{reveal-component-BakhgglY.js → reveal-component-CBxtzgFZ.js} +1 -1
  18. package/dist/assets/{run-page-DwUpSMBL.js → run-page-DIAemNxL.js} +1 -1
  19. package/dist/assets/{scratchpad-panel-Bc-DomsH.js → scratchpad-panel-C73QbV5j.js} +1 -1
  20. package/dist/assets/useNotebookActions-D6_uVA9-.js +1 -0
  21. package/dist/index.html +1 -1
  22. package/package.json +1 -1
  23. package/src/components/slides/slide-form.tsx +43 -0
  24. package/dist/assets/layout-D1lkx0Aj.js +0 -9
  25. package/dist/assets/useNotebookActions-DC5VHfXc.js +0 -1
@@ -1,5 +1,5 @@
1
- var Ir=Object.defineProperty;var Kr=(t,e,l)=>e in t?Ir(t,e,{enumerable:!0,configurable:!0,writable:!0,value:l}):t[e]=l;var Ke=(t,e,l)=>Kr(t,typeof e!="symbol"?e+"":e,l);var at;import{s as $l}from"./chunk-LvLJmgfZ.js";import{d as Nt,i as tt,l as lt,n as It,o as Mr,p as st,u as nt}from"./useEvent-D91BmmQi.js";import{t as Dr}from"./react-Bj1aDYRI.js";import{$r as Ar,Br as Vl,Cn as Pr,Jt as Er,Pn as Ll,Si as Ol,W as _r,an as Fr,br as Jt,dn as mt,fn as zr,gr as Tr,hi as Br,hn as Rr,ii as $r,in as Vr,lr as Lr,lt as Or,ni as Hr,ri as Gr,sn as Hl,un as pe,ur as Ur,yr as qr,zr as Kt,zt as re}from"./cells-Jdt48eTG.js";import{t as Gl}from"./react-dom-CSu739Rf.js";import{t as Ie}from"./compiler-runtime-B3qBwwSJ.js";import{t as Wr}from"./isObject-DvLSfCY5.js";import{t as Ul}from"./get-C-qh_et5.js";import{t as Yr}from"./merge-_9WLTEyt.js";import{t as Zr}from"./debounce-DhnxH9Rh.js";import{_ as G,l as Qr,p as ql}from"./useEventListener-BR0C1MaI.js";import{t as Xt}from"./invariant-BUdrueMv.js";import{D as Jr,E as Xr,S as ea,T as Wl,_ as el,c as ta,f as la,l as sa,n as na,p as ia,x as Yl,y as Zl}from"./utils-DIGrmLDO.js";import{S as ot,r as ra,y as aa}from"./config-DczIUz0b.js";import{i as oa,n as tl,t as ca}from"./switch-ecwOrzz3.js";import{t as Pe}from"./cn-DCUzRj2J.js";import{t as da}from"./jsx-runtime-BqBOg78p.js";import{a as ua,i as ma,n as Ql,r as ha,t as Jl}from"./multi-map-rafH3cg3.js";import{a as Xl,c as ht,d as pa,i as ga,o as Mt,r as fa,s as es,t as xa}from"./popover-UExmgBsf.js";import{i as ll,l as De,n as ya,r as va,s as ba,t as ja}from"./select-5i7URBEn.js";import{a as ka,c as Dt,d as ts,f as ls,p as Ca,r as wa,s as Sa,t as Na,u as ss}from"./dropdown-menu-D1A3cFC8.js";import{t as $e}from"./label-DTR8T0AE.js";import{t as qe}from"./tooltip-Gcwqb_SK.js";import{n as Ia,r as ns,t as ie}from"./button-D9nb17Rw.js";import{St as Ve,Wt as is,at as Ka,ct as rs}from"./dist-BrR4M-k3.js";import{A as Ma,D as Da,F as as,I as os,M as Aa,N as Pa,_ as Ea,j as _a,m as Fa,p as za,v as Ta,y as Ba}from"./dist-CHcznzB-.js";import{s as cs}from"./arrays-DYDL-3-i.js";import{n as Ye}from"./once-DRroIaBz.js";import{t as Ra}from"./main-B0OX4z33.js";import{i as $a,n as Va,t as sl}from"./strings-md4mFbOQ.js";import{r as pt,t as La}from"./requests-DIwGYs0l.js";import{t as Ze}from"./createLucideIcon-D5guW7EU.js";import{t as Oa}from"./check-BH35Ndha.js";import{r as Ha,t as nl}from"./x-C-6liIBr.js";import{t as Ga}from"./chevron-right-CG5QYXYk.js";import{u as Ua}from"./toDate-B5A0DFEz.js";import{t as qa}from"./copy-BwrPA9zQ.js";import{n as At,t as ds}from"./spinner-Bhir8k53.js";import{t as Wa}from"./plus-BgB18UzY.js";import{t as us}from"./refresh-cw-DHwG4Mac.js";import{$ as Le,B as Ya,C as Za,D as Qa,G as Pt,J as Ja,O as Et,S as ms,V as il,X as hs,_ as Xa,at as rl,b as eo,ct as al,et as ps,g as to,lt as lo,nt as so,o as gt,r as Oe,rt as no,st as _t,ut as Ft,w as ft}from"./input-BX98vgAu.js";import{a as V,c as R,d as H,g as io,i as ro,l as $,o as U,p as ao,r as oo,s as co,u as B,v as ol,y as gs}from"./textarea-DapfQSws.js";import{t as fs}from"./trash-2-CKlZA04n.js";import{t as cl}from"./triangle-alert-B8l157gP.js";import{t as xt}from"./badge-C7-HR1IO.js";import{t as Fe}from"./use-toast-T0_cQDma.js";import{t as uo}from"./useTheme-Cb4Wekek.js";import{n as mo}from"./copy-BCF-tANo.js";import{B as yt,E as ho,I as xs,M as dl,N as ct,O as ul,P as He,R as ys,V as zt,_ as po,j as Qe,k as ze,l as go,m as fo,p as xo,t as vs,v as bs,y as yo,z as vo}from"./usePress-CfcdTqJM.js";import{t as js}from"./SSRProvider-kyGHZp36.js";import{_ as ks,a as ml,c as Tt,d as bo,f as Je,g as it,m as dt,p as Cs,s as jo,t as ko,u as ws,v as Co}from"./RSPContexts-CINae4Gg.js";import{t as Bt}from"./context-B3MsQb-b.js";import{n as wo}from"./useDebounce-CLMpJfhX.js";import{a as So,c as No,n as Io,o as Ko,s as Mo,t as Do}from"./dialog-Dj0qTFnG.js";import{i as Ao,r as Po,t as Eo}from"./useHotkey-Cm0DaHEJ.js";import{r as _o}from"./errors-TZBmrJmc.js";import{t as ae}from"./kbd-B3Breaz2.js";import{t as de}from"./links-Dpap8NI2.js";import{n as Ss,r as Fo,t as Ns}from"./alert-DvqcBMUv.js";import{n as zo,t as vt}from"./error-banner-C6aBa98y.js";import{n as Is}from"./useAsyncData-BFC6lWG9.js";import{a as To,i as Rt,n as Bo,o as Ks,r as hl,t as Ro}from"./table-DPyRV1LT.js";import{t as pl}from"./renderShortcut-DZpkrZaP.js";import{n as $o,t as Vo}from"./azure-ZuB1zQ8Q.js";import{a as Lo,i as Oo,n as Ho,r as Go,t as Uo}from"./card-BsOjr9wU.js";var qo="Expected a function";function Wo(t,e,l){var n=!0,i=!0;if(typeof t!="function")throw TypeError(qo);return Wr(l)&&(n="leading"in l?!!l.leading:n,i="trailing"in l?!!l.trailing:i),Zr(t,e,{leading:n,maxWait:e,trailing:i})}var Yo=Wo,gl=Ze("brain",[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]]),Ms=Ze("circle-check-big",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]),Ds=Ze("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]),Zo=Ze("flask-conical",[["path",{d:"M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",key:"18mbvz"}],["path",{d:"M6.453 15h11.094",key:"3shlmq"}],["path",{d:"M8.5 2h7",key:"csnxdl"}]]),As=Ze("folder-cog",[["path",{d:"M10.3 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.98a2 2 0 0 1 1.69.9l.66 1.2A2 2 0 0 0 12 6h8a2 2 0 0 1 2 2v3.3",key:"128dxu"}],["path",{d:"m14.305 19.53.923-.382",key:"3m78fa"}],["path",{d:"m15.228 16.852-.923-.383",key:"npixar"}],["path",{d:"m16.852 15.228-.383-.923",key:"5xggr7"}],["path",{d:"m16.852 20.772-.383.924",key:"dpfhf9"}],["path",{d:"m19.148 15.228.383-.923",key:"1reyyz"}],["path",{d:"m19.53 21.696-.382-.924",key:"1goivc"}],["path",{d:"m20.772 16.852.924-.383",key:"htqkph"}],["path",{d:"m20.772 19.148.924.383",key:"9w9pjp"}],["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}]]),Qo=Ze("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]),Ps=Ze("plug",[["path",{d:"M12 22v-5",key:"1ega77"}],["path",{d:"M15 8V2",key:"18g5xt"}],["path",{d:"M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z",key:"1xoxul"}],["path",{d:"M9 8V2",key:"14iosj"}]]),Jo=Ze("square-check-big",[["path",{d:"M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344",key:"2acyp4"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]),g=$l(Dr(),1);function Es(t,e){let l=(0,g.useRef)(!0),n=(0,g.useRef)(null);zt(()=>(l.current=!0,()=>{l.current=!1}),[]),zt(()=>{l.current?l.current=!1:(!n.current||e.some((i,r)=>!Object.is(i,n[r])))&&t(),n.current=e},e)}function _s(t,e){let{collection:l,onLoadMore:n,scrollOffset:i=1}=t,r=(0,g.useRef)(null),a=xo(c=>{for(let o of c)o.isIntersecting&&n&&n()});zt(()=>(e.current&&(r.current=new IntersectionObserver(a,{root:it(e==null?void 0:e.current),rootMargin:`0px ${100*i}% ${100*i}% ${100*i}%`}),r.current.observe(e.current)),()=>{r.current&&r.current.disconnect()}),[l,e,i])}function Fs(t){let e=g.version.split(".");return parseInt(e[0],10)>=19?t:t?"true":void 0}var Xo="react-aria-clear-focus",ec="react-aria-focus",tc=500;function lc(t){let{isDisabled:e,onLongPressStart:l,onLongPressEnd:n,onLongPress:i,threshold:r=tc,accessibilityDescription:a}=t,c=(0,g.useRef)(void 0),{addGlobalListener:o,removeGlobalListener:d}=fo(),{pressProps:u}=vs({isDisabled:e,onPressStart(m){if(m.continuePropagation(),(m.pointerType==="mouse"||m.pointerType==="touch")&&(l&&l({...m,type:"longpressstart"}),c.current=setTimeout(()=>{m.target.dispatchEvent(new PointerEvent("pointercancel",{bubbles:!0})),xs(m.target).activeElement!==m.target&&ul(m.target),i&&i({...m,type:"longpress"}),c.current=void 0},r),m.pointerType==="touch")){let p=f=>{f.preventDefault()};o(m.target,"contextmenu",p,{once:!0}),o(window,"pointerup",()=>{setTimeout(()=>{d(m.target,"contextmenu",p)},30)},{once:!0})}},onPressEnd(m){c.current&&clearTimeout(c.current),n&&(m.pointerType==="mouse"||m.pointerType==="touch")&&n({...m,type:"longpressend"})}});return{longPressProps:ze(u,Cs(i&&!e?a:void 0))}}function sc(t,e){let l=e==null?void 0:e.isDisabled,[n,i]=(0,g.useState)(!1);return zt(()=>{if(t!=null&&t.current&&!l){let r=()=>{t.current&&i(!!Tt(t.current,{tabbable:!0}).nextNode())};r();let a=new MutationObserver(r);return a.observe(t.current,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["tabIndex","disabled"]}),()=>{a.disconnect()}}}),l?!1:n}function zs(t){let e=ic(xs(t));e!==t&&(e&&nc(e,t),t&&Ts(t,e))}function nc(t,e){t.dispatchEvent(new FocusEvent("blur",{relatedTarget:e})),t.dispatchEvent(new FocusEvent("focusout",{bubbles:!0,relatedTarget:e}))}function Ts(t,e){t.dispatchEvent(new FocusEvent("focus",{relatedTarget:e})),t.dispatchEvent(new FocusEvent("focusin",{bubbles:!0,relatedTarget:e}))}function ic(t){let e=ct(t),l=e==null?void 0:e.getAttribute("aria-activedescendant");return l&&t.getElementById(l)||e}function fl(t){return ho()?t.altKey:t.ctrlKey}function $t(t,e){var i,r;let l=`[data-key="${CSS.escape(String(e))}"]`,n=(i=t.current)==null?void 0:i.dataset.collection;return n&&(l=`[data-collection="${CSS.escape(n)}"]${l}`),(r=t.current)==null?void 0:r.querySelector(l)}var Bs=new WeakMap;function rc(t){let e=yt();return Bs.set(t,e),e}function ac(t){return Bs.get(t)}var oc=1e3;function cc(t){let{keyboardDelegate:e,selectionManager:l,onTypeSelect:n}=t,i=(0,g.useRef)({search:"",timeout:void 0}).current;return{typeSelectProps:{onKeyDownCapture:e.getKeyForSearch?r=>{let a=dc(r.key);if(!(!a||r.ctrlKey||r.metaKey||!Qe(r.currentTarget,He(r))||i.search.length===0&&a===" ")){if(a===" "&&i.search.trim().length>0&&(r.preventDefault(),"continuePropagation"in r||r.stopPropagation()),i.search+=a,e.getKeyForSearch!=null){let c=e.getKeyForSearch(i.search,l.focusedKey);c??(c=e.getKeyForSearch(i.search)),c!=null&&(l.setFocusedKey(c),n&&n(c))}clearTimeout(i.timeout),i.timeout=setTimeout(()=>{i.search=""},oc)}}:void 0}}}function dc(t){return t.length===1||!/^[A-Z]/i.test(t)?t:""}var uc=Gl();function mc(t){let{selectionManager:e,keyboardDelegate:l,ref:n,autoFocus:i=!1,shouldFocusWrap:r=!1,disallowEmptySelection:a=!1,disallowSelectAll:c=!1,escapeKeyBehavior:o="clearSelection",selectOnFocus:d=e.selectionBehavior==="replace",disallowTypeAhead:u=!1,shouldUseVirtualFocus:m,allowsTabNavigation:p=!1,scrollRef:f=n,linkBehavior:y="action"}=t,{direction:j}=Bt(),v=bs(),N=b=>{var z,T,q,Y,S,W,ee,oe,ce,ge,ue,fe;if(b.altKey&&b.key==="Tab"&&b.preventDefault(),!n.current||!Qe(n.current,He(b)))return;let P=(E,J)=>{if(E!=null){if(e.isLink(E)&&y==="selection"&&d&&!fl(b)){(0,uc.flushSync)(()=>{e.setFocusedKey(E,J)});let Q=$t(n,E),Z=e.getItemProps(E);Q&&v.open(Q,b,Z.href,Z.routerOptions);return}if(e.setFocusedKey(E,J),e.isLink(E)&&y==="override")return;b.shiftKey&&e.selectionMode==="multiple"?e.extendSelection(E):d&&!fl(b)&&e.replaceSelection(E)}};switch(b.key){case"ArrowDown":if(l.getKeyBelow){let E=e.focusedKey==null?(z=l.getFirstKey)==null?void 0:z.call(l):(T=l.getKeyBelow)==null?void 0:T.call(l,e.focusedKey);E==null&&r&&(E=(q=l.getFirstKey)==null?void 0:q.call(l,e.focusedKey)),E!=null&&(b.preventDefault(),P(E))}break;case"ArrowUp":if(l.getKeyAbove){let E=e.focusedKey==null?(Y=l.getLastKey)==null?void 0:Y.call(l):(S=l.getKeyAbove)==null?void 0:S.call(l,e.focusedKey);E==null&&r&&(E=(W=l.getLastKey)==null?void 0:W.call(l,e.focusedKey)),E!=null&&(b.preventDefault(),P(E))}break;case"ArrowLeft":if(l.getKeyLeftOf){let E=e.focusedKey==null?null:(ee=l.getKeyLeftOf)==null?void 0:ee.call(l,e.focusedKey);E==null&&r&&(E=j==="rtl"?(oe=l.getFirstKey)==null?void 0:oe.call(l,e.focusedKey):(ce=l.getLastKey)==null?void 0:ce.call(l,e.focusedKey)),E!=null&&(b.preventDefault(),P(E,j==="rtl"?"first":"last"))}break;case"ArrowRight":if(l.getKeyRightOf){let E=e.focusedKey==null?null:(ge=l.getKeyRightOf)==null?void 0:ge.call(l,e.focusedKey);E==null&&r&&(E=j==="rtl"?(ue=l.getLastKey)==null?void 0:ue.call(l,e.focusedKey):(fe=l.getFirstKey)==null?void 0:fe.call(l,e.focusedKey)),E!=null&&(b.preventDefault(),P(E,j==="rtl"?"last":"first"))}break;case"Home":if(l.getFirstKey){if(e.focusedKey===null&&b.shiftKey)return;b.preventDefault();let E=l.getFirstKey(e.focusedKey,dt(b));e.setFocusedKey(E),E!=null&&(dt(b)&&b.shiftKey&&e.selectionMode==="multiple"?e.extendSelection(E):d&&e.replaceSelection(E))}break;case"End":if(l.getLastKey){if(e.focusedKey===null&&b.shiftKey)return;b.preventDefault();let E=l.getLastKey(e.focusedKey,dt(b));e.setFocusedKey(E),E!=null&&(dt(b)&&b.shiftKey&&e.selectionMode==="multiple"?e.extendSelection(E):d&&e.replaceSelection(E))}break;case"PageDown":if(l.getKeyPageBelow&&e.focusedKey!=null){let E=l.getKeyPageBelow(e.focusedKey);E!=null&&(b.preventDefault(),P(E))}break;case"PageUp":if(l.getKeyPageAbove&&e.focusedKey!=null){let E=l.getKeyPageAbove(e.focusedKey);E!=null&&(b.preventDefault(),P(E))}break;case"a":dt(b)&&e.selectionMode==="multiple"&&c!==!0&&(b.preventDefault(),e.selectAll());break;case"Escape":o==="clearSelection"&&!a&&e.selectedKeys.size!==0&&(b.stopPropagation(),b.preventDefault(),e.clearSelection());break;case"Tab":if(!p){if(b.shiftKey)n.current.focus();else{let E=Tt(n.current,{tabbable:!0}),J,Q;do Q=E.lastChild(),Q&&(J=Q);while(Q);let Z=ct();J&&(!dl(J)||Z&&!go(Z))&&ul(J)}break}}},w=(0,g.useRef)({top:0,left:0});_t(f,"scroll",()=>{var b,P;w.current={top:((b=f.current)==null?void 0:b.scrollTop)??0,left:((P=f.current)==null?void 0:P.scrollLeft)??0}});let C=b=>{var P,z;if(e.isFocused){Qe(b.currentTarget,He(b))||e.setFocused(!1);return}if(Qe(b.currentTarget,He(b))){if(e.setFocused(!0),e.focusedKey==null){let T=Y=>{Y!=null&&(e.setFocusedKey(Y),d&&!e.isSelected(Y)&&e.replaceSelection(Y))},q=b.relatedTarget;q&&b.currentTarget.compareDocumentPosition(q)&Node.DOCUMENT_POSITION_FOLLOWING?T(e.lastSelectedKey??((P=l.getLastKey)==null?void 0:P.call(l))):T(e.firstSelectedKey??((z=l.getFirstKey)==null?void 0:z.call(l)))}else f.current&&(f.current.scrollTop=w.current.top,f.current.scrollLeft=w.current.left);if(e.focusedKey!=null&&f.current){let T=$t(n,e.focusedKey);T instanceof HTMLElement&&(!dl(T)&&!m&&ul(T),ps()==="keyboard"&&Je(T,{containingElement:n.current}))}}},h=b=>{Qe(b.currentTarget,b.relatedTarget)||e.setFocused(!1)},x=(0,g.useRef)(!1);_t(n,ec,m?b=>{let{detail:P}=b;b.stopPropagation(),e.setFocused(!0),(P==null?void 0:P.focusStrategy)==="first"&&(x.current=!0)}:void 0),Es(()=>{var b;if(x.current){let P=((b=l.getFirstKey)==null?void 0:b.call(l))??null;if(P==null){let z=ct();zs(n.current),Ts(z,null),e.collection.size>0&&(x.current=!1)}else e.setFocusedKey(P),x.current=!1}},[e.collection]),Es(()=>{e.collection.size>0&&(x.current=!1)},[e.focusedKey]),_t(n,Xo,m?b=>{var P;b.stopPropagation(),e.setFocused(!1),(P=b.detail)!=null&&P.clearFocusKey&&e.setFocusedKey(null)}:void 0);let K=(0,g.useRef)(i),D=(0,g.useRef)(!1);(0,g.useEffect)(()=>{var b,P;if(K.current){let z=null;i==="first"&&(z=((b=l.getFirstKey)==null?void 0:b.call(l))??null),i==="last"&&(z=((P=l.getLastKey)==null?void 0:P.call(l))??null);let T=e.selectedKeys;if(T.size){for(let q of T)if(e.canSelectItem(q)){z=q;break}}e.setFocused(!0),e.setFocusedKey(z),z==null&&!m&&n.current&&Le(n.current),e.collection.size>0&&(K.current=!1,D.current=!0)}});let F=(0,g.useRef)(e.focusedKey),I=(0,g.useRef)(null);(0,g.useEffect)(()=>{if(e.isFocused&&e.focusedKey!=null&&(e.focusedKey!==F.current||D.current)&&f.current&&n.current){let b=ps(),P=$t(n,e.focusedKey);if(!(P instanceof HTMLElement))return;(b==="keyboard"||D.current)&&(I.current&&cancelAnimationFrame(I.current),I.current=requestAnimationFrame(()=>{f.current&&(bo(f.current,P),b!=="virtual"&&Je(P,{containingElement:n.current}))}))}!m&&e.isFocused&&e.focusedKey==null&&F.current!=null&&n.current&&Le(n.current),F.current=e.focusedKey,D.current=!1}),(0,g.useEffect)(()=>()=>{I.current&&cancelAnimationFrame(I.current)},[]),_t(n,"react-aria-focus-scope-restore",b=>{b.preventDefault(),e.setFocused(!0)});let _={onKeyDown:N,onFocus:C,onBlur:h,onMouseDown(b){f.current===He(b)&&b.preventDefault()}},{typeSelectProps:M}=cc({keyboardDelegate:l,selectionManager:e});u||(_=ze(M,_));let k;m||(k=e.focusedKey==null?0:-1);let A=rc(e.collection);return{collectionProps:ze(_,{tabIndex:k,"data-collection":A})}}function Rs(t){let{id:e,selectionManager:l,key:n,ref:i,shouldSelectOnPressUp:r,shouldUseVirtualFocus:a,focus:c,isDisabled:o,onAction:d,allowsDifferentPressOrigin:u,linkBehavior:m="action"}=t,p=bs();e=yt(e);let f=S=>{if(S.pointerType==="keyboard"&&fl(S))l.toggleSelection(n);else{if(l.selectionMode==="none")return;if(l.isLink(n)){if(m==="selection"&&i.current){let W=l.getItemProps(n);p.open(i.current,S,W.href,W.routerOptions),l.setSelectedKeys(l.selectedKeys);return}else if(m==="override"||m==="none")return}l.selectionMode==="single"?l.isSelected(n)&&!l.disallowEmptySelection?l.toggleSelection(n):l.replaceSelection(n):S&&S.shiftKey?l.extendSelection(n):l.selectionBehavior==="toggle"||S&&(dt(S)||S.pointerType==="touch"||S.pointerType==="virtual")?l.toggleSelection(n):l.replaceSelection(n)}};(0,g.useEffect)(()=>{n===l.focusedKey&&l.isFocused&&(a?zs(i.current):c?c():ct()!==i.current&&i.current&&Le(i.current))},[i,n,l.focusedKey,l.childFocusStrategy,l.isFocused,a]),o||(o=l.isDisabled(n));let y={};!a&&!o?y={tabIndex:n===l.focusedKey?0:-1,onFocus(S){He(S)===i.current&&l.setFocusedKey(n)}}:o&&(y.onMouseDown=S=>{S.preventDefault()}),(0,g.useEffect)(()=>{o&&l.focusedKey===n&&l.setFocusedKey(null)},[l,o,n]);let j=l.isLink(n)&&m==="override",v=d&&t.UNSTABLE_itemBehavior==="action",N=l.isLink(n)&&m!=="selection"&&m!=="none",w=!o&&l.canSelectItem(n)&&!j&&!v,C=(d||N)&&!o,h=C&&(l.selectionBehavior==="replace"?!w:!w||l.isEmpty),x=C&&w&&l.selectionBehavior==="replace",K=h||x,D=(0,g.useRef)(null),F=K&&w,I=(0,g.useRef)(!1),_=(0,g.useRef)(!1),M=l.getItemProps(n),k=S=>{if(d){var W;d(),(W=i.current)==null||W.dispatchEvent(new CustomEvent("react-aria-item-action",{bubbles:!0}))}N&&i.current&&p.open(i.current,S,M.href,M.routerOptions)},A={ref:i};if(r?(A.onPressStart=S=>{D.current=S.pointerType,I.current=F,S.pointerType==="keyboard"&&(!K||Vs(S.key))&&f(S)},u?(A.onPressUp=h?void 0:S=>{S.pointerType==="mouse"&&w&&f(S)},A.onPress=h?k:S=>{S.pointerType!=="keyboard"&&S.pointerType!=="mouse"&&w&&f(S)}):A.onPress=S=>{if(h||x&&S.pointerType!=="mouse"){if(S.pointerType==="keyboard"&&!$s(S.key))return;k(S)}else S.pointerType!=="keyboard"&&w&&f(S)}):(A.onPressStart=S=>{D.current=S.pointerType,I.current=F,_.current=h,w&&(S.pointerType==="mouse"&&!h||S.pointerType==="keyboard"&&(!C||Vs(S.key)))&&f(S)},A.onPress=S=>{(S.pointerType==="touch"||S.pointerType==="pen"||S.pointerType==="virtual"||S.pointerType==="keyboard"&&K&&$s(S.key)||S.pointerType==="mouse"&&_.current)&&(K?k(S):w&&f(S))}),y["data-collection"]=ac(l.collection),y["data-key"]=n,A.preventFocusOnPress=a,a&&(A=ze(A,{onPressStart(S){S.pointerType!=="touch"&&(l.setFocused(!0),l.setFocusedKey(n))},onPress(S){S.pointerType==="touch"&&(l.setFocused(!0),l.setFocusedKey(n))}})),M)for(let S of["onPressStart","onPressEnd","onPressChange","onPress","onPressUp","onClick"])M[S]&&(A[S]=ys(A[S],M[S]));let{pressProps:b,isPressed:P}=vs(A),z=x?S=>{D.current==="mouse"&&(S.stopPropagation(),S.preventDefault(),k(S))}:void 0,{longPressProps:T}=lc({isDisabled:!F,onLongPress(S){S.pointerType==="touch"&&(f(S),l.setSelectionBehavior("toggle"))}}),q=S=>{D.current==="touch"&&I.current&&S.preventDefault()},Y=m!=="none"&&l.isLink(n)?S=>{po.isOpening||S.preventDefault()}:void 0;return{itemProps:ze(y,w||h||a&&!o?b:{},F?T:{},{onDoubleClick:z,onDragStartCapture:q,onClick:Y,id:e},a?{onMouseDown:S=>S.preventDefault()}:void 0),isPressed:P,isSelected:l.isSelected(n),isFocused:l.isFocused&&l.focusedKey===n,isDisabled:o,allowsSelection:w,hasAction:K}}function $s(t){return t==="Enter"}function Vs(t){return t===" "}var Ls=class{getItemRect(t){let e=this.ref.current;if(!e)return null;let l=t==null?null:$t(this.ref,t);if(!l)return null;let n=e.getBoundingClientRect(),i=l.getBoundingClientRect();return{x:i.left-n.left-e.clientLeft+e.scrollLeft,y:i.top-n.top-e.clientTop+e.scrollTop,width:i.width,height:i.height}}getContentSize(){let t=this.ref.current;return{width:(t==null?void 0:t.scrollWidth)??0,height:(t==null?void 0:t.scrollHeight)??0}}getVisibleRect(){let t=this.ref.current;return{x:(t==null?void 0:t.scrollLeft)??0,y:(t==null?void 0:t.scrollTop)??0,width:(t==null?void 0:t.clientWidth)??0,height:(t==null?void 0:t.clientHeight)??0}}constructor(t){this.ref=t}},xl=class{isDisabled(t){var e;return this.disabledBehavior==="all"&&(((e=t.props)==null?void 0:e.isDisabled)||this.disabledKeys.has(t.key))}findNextNonDisabled(t,e){let l=t;for(;l!=null;){let n=this.collection.getItem(l);if((n==null?void 0:n.type)==="item"&&!this.isDisabled(n))return l;l=e(l)}return null}getNextKey(t){let e=t;return e=this.collection.getKeyAfter(e),this.findNextNonDisabled(e,l=>this.collection.getKeyAfter(l))}getPreviousKey(t){let e=t;return e=this.collection.getKeyBefore(e),this.findNextNonDisabled(e,l=>this.collection.getKeyBefore(l))}findKey(t,e,l){let n=t,i=this.layoutDelegate.getItemRect(n);if(!i||n==null)return null;let r=i;do{if(n=e(n),n==null)break;i=this.layoutDelegate.getItemRect(n)}while(i&&l(r,i)&&n!=null);return n}isSameRow(t,e){return t.y===e.y||t.x!==e.x}isSameColumn(t,e){return t.x===e.x||t.y!==e.y}getKeyBelow(t){return this.layout==="grid"&&this.orientation==="vertical"?this.findKey(t,e=>this.getNextKey(e),this.isSameRow):this.getNextKey(t)}getKeyAbove(t){return this.layout==="grid"&&this.orientation==="vertical"?this.findKey(t,e=>this.getPreviousKey(e),this.isSameRow):this.getPreviousKey(t)}getNextColumn(t,e){return e?this.getPreviousKey(t):this.getNextKey(t)}getKeyRightOf(t){let e=this.direction==="ltr"?"getKeyRightOf":"getKeyLeftOf";return this.layoutDelegate[e]?(t=this.layoutDelegate[e](t),this.findNextNonDisabled(t,l=>this.layoutDelegate[e](l))):this.layout==="grid"?this.orientation==="vertical"?this.getNextColumn(t,this.direction==="rtl"):this.findKey(t,l=>this.getNextColumn(l,this.direction==="rtl"),this.isSameColumn):this.orientation==="horizontal"?this.getNextColumn(t,this.direction==="rtl"):null}getKeyLeftOf(t){let e=this.direction==="ltr"?"getKeyLeftOf":"getKeyRightOf";return this.layoutDelegate[e]?(t=this.layoutDelegate[e](t),this.findNextNonDisabled(t,l=>this.layoutDelegate[e](l))):this.layout==="grid"?this.orientation==="vertical"?this.getNextColumn(t,this.direction==="ltr"):this.findKey(t,l=>this.getNextColumn(l,this.direction==="ltr"),this.isSameColumn):this.orientation==="horizontal"?this.getNextColumn(t,this.direction==="ltr"):null}getFirstKey(){let t=this.collection.getFirstKey();return this.findNextNonDisabled(t,e=>this.collection.getKeyAfter(e))}getLastKey(){let t=this.collection.getLastKey();return this.findNextNonDisabled(t,e=>this.collection.getKeyBefore(e))}getKeyPageAbove(t){let e=this.ref.current,l=this.layoutDelegate.getItemRect(t);if(!l)return null;if(e&&!ks(e))return this.getFirstKey();let n=t;if(this.orientation==="horizontal"){let i=Math.max(0,l.x+l.width-this.layoutDelegate.getVisibleRect().width);for(;l&&l.x>i&&n!=null;)n=this.getKeyAbove(n),l=n==null?null:this.layoutDelegate.getItemRect(n)}else{let i=Math.max(0,l.y+l.height-this.layoutDelegate.getVisibleRect().height);for(;l&&l.y>i&&n!=null;)n=this.getKeyAbove(n),l=n==null?null:this.layoutDelegate.getItemRect(n)}return n??this.getFirstKey()}getKeyPageBelow(t){let e=this.ref.current,l=this.layoutDelegate.getItemRect(t);if(!l)return null;if(e&&!ks(e))return this.getLastKey();let n=t;if(this.orientation==="horizontal"){let i=Math.min(this.layoutDelegate.getContentSize().width,l.y-l.width+this.layoutDelegate.getVisibleRect().width);for(;l&&l.x<i&&n!=null;)n=this.getKeyBelow(n),l=n==null?null:this.layoutDelegate.getItemRect(n)}else{let i=Math.min(this.layoutDelegate.getContentSize().height,l.y-l.height+this.layoutDelegate.getVisibleRect().height);for(;l&&l.y<i&&n!=null;)n=this.getKeyBelow(n),l=n==null?null:this.layoutDelegate.getItemRect(n)}return n??this.getLastKey()}getKeyForSearch(t,e){if(!this.collator)return null;let l=this.collection,n=e||this.getFirstKey();for(;n!=null;){let i=l.getItem(n);if(!i)return null;let r=i.textValue.slice(0,t.length);if(i.textValue&&this.collator.compare(r,t)===0)return n;n=this.getNextKey(n)}return null}constructor(...t){if(t.length===1){let e=t[0];this.collection=e.collection,this.ref=e.ref,this.collator=e.collator,this.disabledKeys=e.disabledKeys||new Set,this.disabledBehavior=e.disabledBehavior||"all",this.orientation=e.orientation||"vertical",this.direction=e.direction,this.layout=e.layout||"stack",this.layoutDelegate=e.layoutDelegate||new Ls(e.ref)}else this.collection=t[0],this.disabledKeys=t[1],this.ref=t[2],this.collator=t[3],this.layout="stack",this.orientation="vertical",this.disabledBehavior="all",this.layoutDelegate=new Ls(this.ref);this.layout==="stack"&&this.orientation==="vertical"&&(this.getKeyLeftOf=void 0,this.getKeyRightOf=void 0)}};function Os(t){let{selectionManager:e,collection:l,disabledKeys:n,ref:i,keyboardDelegate:r,layoutDelegate:a}=t,c=ws({usage:"search",sensitivity:"base"}),o=e.disabledBehavior,d=(0,g.useMemo)(()=>r||new xl({collection:l,disabledKeys:n,disabledBehavior:o,ref:i,collator:c,layoutDelegate:a}),[r,a,l,n,i,c,o]),{collectionProps:u}=mc({...t,ref:i,selectionManager:e,keyboardDelegate:d});return{listProps:u}}var hc=class{build(t,e){return this.context=e,Hs(()=>this.iterateCollection(t))}*iterateCollection(t){let{children:e,items:l}=t;if(g.isValidElement(e)&&e.type===g.Fragment)yield*this.iterateCollection({children:e.props.children,items:l});else if(typeof e=="function"){if(!l)throw Error("props.children was a function but props.items is missing");let n=0;for(let i of l)yield*this.getFullNode({value:i,index:n},{renderer:e}),n++}else{let n=[];g.Children.forEach(e,r=>{r&&n.push(r)});let i=0;for(let r of n){let a=this.getFullNode({element:r,index:i},{});for(let c of a)i++,yield c}}}getKey(t,e,l,n){if(t.key!=null)return t.key;if(e.type==="cell"&&e.key!=null)return`${n}${e.key}`;let i=e.value;if(i!=null){let r=i.key??i.id;if(r==null)throw Error("No key found for item");return r}return n?`${n}.${e.index}`:`$.${e.index}`}getChildState(t,e){return{renderer:e.renderer||t.renderer}}*getFullNode(t,e,l,n){if(g.isValidElement(t.element)&&t.element.type===g.Fragment){let c=[];g.Children.forEach(t.element.props.children,d=>{c.push(d)});let o=t.index??0;for(let d of c)yield*this.getFullNode({element:d,index:o++},e,l,n);return}let i=t.element;if(!i&&t.value&&e&&e.renderer){let c=this.cache.get(t.value);if(c&&(!c.shouldInvalidate||!c.shouldInvalidate(this.context))){c.index=t.index,c.parentKey=n?n.key:null,yield c;return}i=e.renderer(t.value)}if(g.isValidElement(i)){let c=i.type;if(typeof c!="function"&&typeof c.getCollectionNode!="function"){let m=i.type;throw Error(`Unknown element <${m}> in collection.`)}let o=c.getCollectionNode(i.props,this.context),d=t.index??0,u=o.next();for(;!u.done&&u.value;){let m=u.value;t.index=d;let p=m.key??null;p??(p=m.element?null:this.getKey(i,t,e,l));let f=[...this.getFullNode({...m,key:p,index:d,wrapper:pc(t.wrapper,m.wrapper)},this.getChildState(e,m),l?`${l}${i.key}`:i.key,n)];for(let y of f){if(y.value=m.value??t.value??null,y.value&&this.cache.set(y.value,y),t.type&&y.type!==t.type)throw Error(`Unsupported type <${yl(y.type)}> in <${yl((n==null?void 0:n.type)??"unknown parent type")}>. Only <${yl(t.type)}> is supported.`);d++,yield y}u=o.next(f)}return}if(t.key==null||t.type==null)return;let r=this,a={type:t.type,props:t.props,key:t.key,parentKey:n?n.key:null,value:t.value??null,level:n?n.level+1:0,index:t.index,rendered:t.rendered,textValue:t.textValue??"","aria-label":t["aria-label"],wrapper:t.wrapper,shouldInvalidate:t.shouldInvalidate,hasChildNodes:t.hasChildNodes||!1,childNodes:Hs(function*(){if(!t.hasChildNodes||!t.childNodes)return;let c=0;for(let o of t.childNodes()){o.key!=null&&(o.key=`${a.key}${o.key}`);let d=r.getFullNode({...o,index:c},r.getChildState(e,o),a.key,a);for(let u of d)c++,yield u}})};yield a}constructor(){this.cache=new WeakMap}};function Hs(t){let e=[],l=null;return{*[Symbol.iterator](){for(let n of e)yield n;l||(l=t());for(let n of l)e.push(n),yield n}}}function pc(t,e){if(t&&e)return l=>t(e(l));if(t)return t;if(e)return e}function yl(t){return t[0].toUpperCase()+t.slice(1)}function Gs(t,e,l){let n=(0,g.useMemo)(()=>new hc,[]),{children:i,items:r,collection:a}=t;return(0,g.useMemo)(()=>a||e(n.build({children:i,items:r},l)),[n,i,r,a,l,e])}function Us(t,e){return typeof e.getChildren=="function"?e.getChildren(t.key):t.childNodes}function gc(t){return fc(t,0)}function fc(t,e){if(e<0)return;let l=0;for(let n of t){if(l===e)return n;l++}}function vl(t,e,l){if(e.parentKey===l.parentKey)return e.index-l.index;let n=[...qs(t,e),e],i=[...qs(t,l),l],r=n.slice(0,i.length).findIndex((a,c)=>a!==i[c]);return r===-1?n.findIndex(a=>a===l)>=0?1:(i.findIndex(a=>a===e),-1):(e=n[r],l=i[r],e.index-l.index)}function qs(t,e){let l=[],n=e;for(;(n==null?void 0:n.parentKey)!=null;)n=t.getItem(n.parentKey),n&&l.unshift(n);return l}var bl=new WeakMap;function jl(t,e){let{id:l}=bl.get(t)??{};if(!l)throw Error("Unknown list");return`${l}-${xc(e)}`}function xc(t){return typeof t=="string"?t.replace(/\s*/g,""):""+t}var Ws={};Ws={deselectedItem:t=>`${t.item} \u063A\u064A\u0631 \u0627\u0644\u0645\u062D\u062F\u062F`,longPressToSelect:"\u0627\u0636\u063A\u0637 \u0645\u0637\u0648\u0644\u064B\u0627 \u0644\u0644\u062F\u062E\u0648\u0644 \u0625\u0644\u0649 \u0648\u0636\u0639 \u0627\u0644\u062A\u062D\u062F\u064A\u062F.",select:"\u062A\u062D\u062F\u064A\u062F",selectedAll:"\u062C\u0645\u064A\u0639 \u0627\u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u062D\u062F\u062F\u0629.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u0644\u0645 \u064A\u062A\u0645 \u062A\u062D\u062F\u064A\u062F \u0639\u0646\u0627\u0635\u0631",one:()=>`${e.number(t.count)} \u0639\u0646\u0635\u0631 \u0645\u062D\u062F\u062F`,other:()=>`${e.number(t.count)} \u0639\u0646\u0635\u0631 \u0645\u062D\u062F\u062F`})}.`,selectedItem:t=>`${t.item} \u0627\u0644\u0645\u062D\u062F\u062F`};var Ys={};Ys={deselectedItem:t=>`${t.item} \u043D\u0435 \u0435 \u0438\u0437\u0431\u0440\u0430\u043D.`,longPressToSelect:"\u041D\u0430\u0442\u0438\u0441\u043D\u0435\u0442\u0435 \u0438 \u0437\u0430\u0434\u0440\u044A\u0436\u0442\u0435 \u0437\u0430 \u0434\u0430 \u0432\u043B\u0435\u0437\u0435\u0442\u0435 \u0432 \u0438\u0437\u0431\u0438\u0440\u0430\u0442\u0435\u043B\u0435\u043D \u0440\u0435\u0436\u0438\u043C.",select:"\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435",selectedAll:"\u0412\u0441\u0438\u0447\u043A\u0438 \u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438 \u0441\u0430 \u0438\u0437\u0431\u0440\u0430\u043D\u0438.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u041D\u044F\u043C\u0430 \u0438\u0437\u0431\u0440\u0430\u043D\u0438 \u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438",one:()=>`${e.number(t.count)} \u0438\u0437\u0431\u0440\u0430\u043D \u0435\u043B\u0435\u043C\u0435\u043D\u0442`,other:()=>`${e.number(t.count)} \u0438\u0437\u0431\u0440\u0430\u043D\u0438 \u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438`})}.`,selectedItem:t=>`${t.item} \u0438\u0437\u0431\u0440\u0430\u043D.`};var Zs={};Zs={deselectedItem:t=>`Polo\u017Eka ${t.item} nen\xED vybr\xE1na.`,longPressToSelect:"Dlouh\xFDm stisknut\xEDm p\u0159ejdete do re\u017Eimu v\xFDb\u011Bru.",select:"Vybrat",selectedAll:"Vybr\xE1ny v\u0161echny polo\u017Eky.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nevybr\xE1ny \u017E\xE1dn\xE9 polo\u017Eky",one:()=>`Vybr\xE1na ${e.number(t.count)} polo\u017Eka`,other:()=>`Vybr\xE1no ${e.number(t.count)} polo\u017Eek`})}.`,selectedItem:t=>`Vybr\xE1na polo\u017Eka ${t.item}.`};var Qs={};Qs={deselectedItem:t=>`${t.item} ikke valgt.`,longPressToSelect:"Lav et langt tryk for at aktivere valgtilstand.",select:"V\xE6lg",selectedAll:"Alle elementer valgt.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Ingen elementer valgt",one:()=>`${e.number(t.count)} element valgt`,other:()=>`${e.number(t.count)} elementer valgt`})}.`,selectedItem:t=>`${t.item} valgt.`};var Js={};Js={deselectedItem:t=>`${t.item} nicht ausgew\xE4hlt.`,longPressToSelect:"Gedr\xFCckt halten, um Auswahlmodus zu \xF6ffnen.",select:"Ausw\xE4hlen",selectedAll:"Alle Elemente ausgew\xE4hlt.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Keine Elemente ausgew\xE4hlt",one:()=>`${e.number(t.count)} Element ausgew\xE4hlt`,other:()=>`${e.number(t.count)} Elemente ausgew\xE4hlt`})}.`,selectedItem:t=>`${t.item} ausgew\xE4hlt.`};var Xs={};Xs={deselectedItem:t=>`\u0394\u03B5\u03BD \u03B5\u03C0\u03B9\u03BB\u03AD\u03C7\u03B8\u03B7\u03BA\u03B5 \u03C4\u03BF \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF ${t.item}.`,longPressToSelect:"\u03A0\u03B1\u03C4\u03AE\u03C3\u03C4\u03B5 \u03C0\u03B1\u03C1\u03B1\u03C4\u03B5\u03C4\u03B1\u03BC\u03AD\u03BD\u03B1 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03BC\u03C0\u03B5\u03AF\u03C4\u03B5 \u03C3\u03B5 \u03BB\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE\u03C2.",select:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE",selectedAll:"\u0395\u03C0\u03B9\u03BB\u03AD\u03C7\u03B8\u03B7\u03BA\u03B1\u03BD \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u0394\u03B5\u03BD \u03B5\u03C0\u03B9\u03BB\u03AD\u03C7\u03B8\u03B7\u03BA\u03B1\u03BD \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1",one:()=>`\u0395\u03C0\u03B9\u03BB\u03AD\u03C7\u03B8\u03B7\u03BA\u03B5 ${e.number(t.count)} \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF`,other:()=>`\u0395\u03C0\u03B9\u03BB\u03AD\u03C7\u03B8\u03B7\u03BA\u03B1\u03BD ${e.number(t.count)} \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1`})}.`,selectedItem:t=>`\u0395\u03C0\u03B9\u03BB\u03AD\u03C7\u03B8\u03B7\u03BA\u03B5 \u03C4\u03BF \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF ${t.item}.`};var en={};en={deselectedItem:t=>`${t.item} not selected.`,select:"Select",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"No items selected",one:()=>`${e.number(t.count)} item selected`,other:()=>`${e.number(t.count)} items selected`})}.`,selectedAll:"All items selected.",selectedItem:t=>`${t.item} selected.`,longPressToSelect:"Long press to enter selection mode."};var tn={};tn={deselectedItem:t=>`${t.item} no seleccionado.`,longPressToSelect:"Mantenga pulsado para abrir el modo de selecci\xF3n.",select:"Seleccionar",selectedAll:"Todos los elementos seleccionados.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Ning\xFAn elemento seleccionado",one:()=>`${e.number(t.count)} elemento seleccionado`,other:()=>`${e.number(t.count)} elementos seleccionados`})}.`,selectedItem:t=>`${t.item} seleccionado.`};var ln={};ln={deselectedItem:t=>`${t.item} pole valitud.`,longPressToSelect:"Valikure\u017Eiimi sisenemiseks vajutage pikalt.",select:"Vali",selectedAll:"K\xF5ik \xFCksused valitud.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\xDCksusi pole valitud",one:()=>`${e.number(t.count)} \xFCksus valitud`,other:()=>`${e.number(t.count)} \xFCksust valitud`})}.`,selectedItem:t=>`${t.item} valitud.`};var sn={};sn={deselectedItem:t=>`Kohdetta ${t.item} ei valittu.`,longPressToSelect:"Siirry valintatilaan painamalla pitk\xE4\xE4n.",select:"Valitse",selectedAll:"Kaikki kohteet valittu.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Ei yht\xE4\xE4n kohdetta valittu",one:()=>`${e.number(t.count)} kohde valittu`,other:()=>`${e.number(t.count)} kohdetta valittu`})}.`,selectedItem:t=>`${t.item} valittu.`};var nn={};nn={deselectedItem:t=>`${t.item} non s\xE9lectionn\xE9.`,longPressToSelect:"Appuyez de mani\xE8re prolong\xE9e pour passer en mode de s\xE9lection.",select:"S\xE9lectionner",selectedAll:"Tous les \xE9l\xE9ments s\xE9lectionn\xE9s.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Aucun \xE9l\xE9ment s\xE9lectionn\xE9",one:()=>`${e.number(t.count)} \xE9l\xE9ment s\xE9lectionn\xE9`,other:()=>`${e.number(t.count)} \xE9l\xE9ments s\xE9lectionn\xE9s`})}.`,selectedItem:t=>`${t.item} s\xE9lectionn\xE9.`};var rn={};rn={deselectedItem:t=>`${t.item} \u05DC\u05D0 \u05E0\u05D1\u05D7\u05E8.`,longPressToSelect:"\u05D4\u05E7\u05E9\u05D4 \u05D0\u05E8\u05D5\u05DB\u05D4 \u05DC\u05DB\u05E0\u05D9\u05E1\u05D4 \u05DC\u05DE\u05E6\u05D1 \u05D1\u05D7\u05D9\u05E8\u05D4.",select:"\u05D1\u05D7\u05E8",selectedAll:"\u05DB\u05DC \u05D4\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD \u05E0\u05D1\u05D7\u05E8\u05D5.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u05DC\u05D0 \u05E0\u05D1\u05D7\u05E8\u05D5 \u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",one:()=>`\u05E4\u05E8\u05D9\u05D8 ${e.number(t.count)} \u05E0\u05D1\u05D7\u05E8`,other:()=>`${e.number(t.count)} \u05E4\u05E8\u05D9\u05D8\u05D9\u05DD \u05E0\u05D1\u05D7\u05E8\u05D5`})}.`,selectedItem:t=>`${t.item} \u05E0\u05D1\u05D7\u05E8.`};var an={};an={deselectedItem:t=>`Stavka ${t.item} nije odabrana.`,longPressToSelect:"Dugo pritisnite za ulazak u na\u010Din odabira.",select:"Odaberite",selectedAll:"Odabrane su sve stavke.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nije odabrana nijedna stavka",one:()=>`Odabrana je ${e.number(t.count)} stavka`,other:()=>`Odabrano je ${e.number(t.count)} stavki`})}.`,selectedItem:t=>`Stavka ${t.item} je odabrana.`};var on={};on={deselectedItem:t=>`${t.item} nincs kijel\xF6lve.`,longPressToSelect:"Nyomja hosszan a kijel\xF6l\xE9shez.",select:"Kijel\xF6l\xE9s",selectedAll:"Az \xF6sszes elem kijel\xF6lve.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Egy elem sincs kijel\xF6lve",one:()=>`${e.number(t.count)} elem kijel\xF6lve`,other:()=>`${e.number(t.count)} elem kijel\xF6lve`})}.`,selectedItem:t=>`${t.item} kijel\xF6lve.`};var cn={};cn={deselectedItem:t=>`${t.item} non selezionato.`,longPressToSelect:"Premi a lungo per passare alla modalit\xE0 di selezione.",select:"Seleziona",selectedAll:"Tutti gli elementi selezionati.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nessun elemento selezionato",one:()=>`${e.number(t.count)} elemento selezionato`,other:()=>`${e.number(t.count)} elementi selezionati`})}.`,selectedItem:t=>`${t.item} selezionato.`};var dn={};dn={deselectedItem:t=>`${t.item} \u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002`,longPressToSelect:"\u9577\u62BC\u3057\u3057\u3066\u9078\u629E\u30E2\u30FC\u30C9\u3092\u958B\u304D\u307E\u3059\u3002",select:"\u9078\u629E",selectedAll:"\u3059\u3079\u3066\u306E\u9805\u76EE\u3092\u9078\u629E\u3057\u307E\u3057\u305F\u3002",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u9805\u76EE\u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093",one:()=>`${e.number(t.count)} \u9805\u76EE\u3092\u9078\u629E\u3057\u307E\u3057\u305F`,other:()=>`${e.number(t.count)} \u9805\u76EE\u3092\u9078\u629E\u3057\u307E\u3057\u305F`})}\u3002`,selectedItem:t=>`${t.item} \u3092\u9078\u629E\u3057\u307E\u3057\u305F\u3002`};var un={};un={deselectedItem:t=>`${t.item}\uC774(\uAC00) \uC120\uD0DD\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4.`,longPressToSelect:"\uC120\uD0DD \uBAA8\uB4DC\uB85C \uB4E4\uC5B4\uAC00\uB824\uBA74 \uAE38\uAC8C \uB204\uB974\uC2ED\uC2DC\uC624.",select:"\uC120\uD0DD",selectedAll:"\uBAA8\uB4E0 \uD56D\uBAA9\uC774 \uC120\uD0DD\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\uC120\uD0DD\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4",one:()=>`${e.number(t.count)}\uAC1C \uD56D\uBAA9\uC774 \uC120\uD0DD\uB418\uC5C8\uC2B5\uB2C8\uB2E4`,other:()=>`${e.number(t.count)}\uAC1C \uD56D\uBAA9\uC774 \uC120\uD0DD\uB418\uC5C8\uC2B5\uB2C8\uB2E4`})}.`,selectedItem:t=>`${t.item}\uC774(\uAC00) \uC120\uD0DD\uB418\uC5C8\uC2B5\uB2C8\uB2E4.`};var mn={};mn={deselectedItem:t=>`${t.item} nepasirinkta.`,longPressToSelect:"Nor\u0117dami \u012Fjungti pasirinkimo re\u017Eim\u0105, paspauskite ir palaikykite.",select:"Pasirinkti",selectedAll:"Pasirinkti visi elementai.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nepasirinktas n\u0117 vienas elementas",one:()=>`Pasirinktas ${e.number(t.count)} elementas`,other:()=>`Pasirinkta element\u0173: ${e.number(t.count)}`})}.`,selectedItem:t=>`Pasirinkta: ${t.item}.`};var hn={};hn={deselectedItem:t=>`Vienums ${t.item} nav atlas\u012Bts.`,longPressToSelect:"Ilgi turiet nospiestu. lai iesl\u0113gtu atlases re\u017E\u012Bmu.",select:"Atlas\u012Bt",selectedAll:"Atlas\u012Bti visi vienumi.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nav atlas\u012Bts neviens vienums",one:()=>`Atlas\u012Bto vienumu skaits: ${e.number(t.count)}`,other:()=>`Atlas\u012Bto vienumu skaits: ${e.number(t.count)}`})}.`,selectedItem:t=>`Atlas\u012Bts vienums ${t.item}.`};var pn={};pn={deselectedItem:t=>`${t.item} er ikke valgt.`,longPressToSelect:"Bruk et langt trykk for \xE5 g\xE5 inn i valgmodus.",select:"Velg",selectedAll:"Alle elementer er valgt.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Ingen elementer er valgt",one:()=>`${e.number(t.count)} element er valgt`,other:()=>`${e.number(t.count)} elementer er valgt`})}.`,selectedItem:t=>`${t.item} er valgt.`};var gn={};gn={deselectedItem:t=>`${t.item} niet geselecteerd.`,longPressToSelect:"Druk lang om de selectiemodus te openen.",select:"Selecteren",selectedAll:"Alle items geselecteerd.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Geen items geselecteerd",one:()=>`${e.number(t.count)} item geselecteerd`,other:()=>`${e.number(t.count)} items geselecteerd`})}.`,selectedItem:t=>`${t.item} geselecteerd.`};var fn={};fn={deselectedItem:t=>`Nie zaznaczono ${t.item}.`,longPressToSelect:"Naci\u015Bnij i przytrzymaj, aby wej\u015B\u0107 do trybu wyboru.",select:"Zaznacz",selectedAll:"Wszystkie zaznaczone elementy.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nie zaznaczono \u017Cadnych element\xF3w",one:()=>`${e.number(t.count)} zaznaczony element`,other:()=>`${e.number(t.count)} zaznaczonych element\xF3w`})}.`,selectedItem:t=>`Zaznaczono ${t.item}.`};var xn={};xn={deselectedItem:t=>`${t.item} n\xE3o selecionado.`,longPressToSelect:"Mantenha pressionado para entrar no modo de sele\xE7\xE3o.",select:"Selecionar",selectedAll:"Todos os itens selecionados.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nenhum item selecionado",one:()=>`${e.number(t.count)} item selecionado`,other:()=>`${e.number(t.count)} itens selecionados`})}.`,selectedItem:t=>`${t.item} selecionado.`};var yn={};yn={deselectedItem:t=>`${t.item} n\xE3o selecionado.`,longPressToSelect:"Prima continuamente para entrar no modo de sele\xE7\xE3o.",select:"Selecionar",selectedAll:"Todos os itens selecionados.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nenhum item selecionado",one:()=>`${e.number(t.count)} item selecionado`,other:()=>`${e.number(t.count)} itens selecionados`})}.`,selectedItem:t=>`${t.item} selecionado.`};var vn={};vn={deselectedItem:t=>`${t.item} neselectat.`,longPressToSelect:"Ap\u0103sa\u021Bi lung pentru a intra \xEEn modul de selectare.",select:"Selectare",selectedAll:"Toate elementele selectate.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Niciun element selectat",one:()=>`${e.number(t.count)} element selectat`,other:()=>`${e.number(t.count)} elemente selectate`})}.`,selectedItem:t=>`${t.item} selectat.`};var bn={};bn={deselectedItem:t=>`${t.item} \u043D\u0435 \u0432\u044B\u0431\u0440\u0430\u043D\u043E.`,longPressToSelect:"\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0438 \u0443\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0439\u0442\u0435 \u0434\u043B\u044F \u0432\u0445\u043E\u0434\u0430 \u0432 \u0440\u0435\u0436\u0438\u043C \u0432\u044B\u0431\u043E\u0440\u0430.",select:"\u0412\u044B\u0431\u0440\u0430\u0442\u044C",selectedAll:"\u0412\u044B\u0431\u0440\u0430\u043D\u044B \u0432\u0441\u0435 \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u041D\u0435\u0442 \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0445 \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432",one:()=>`${e.number(t.count)} \u044D\u043B\u0435\u043C\u0435\u043D\u0442 \u0432\u044B\u0431\u0440\u0430\u043D`,other:()=>`${e.number(t.count)} \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432 \u0432\u044B\u0431\u0440\u0430\u043D\u043E`})}.`,selectedItem:t=>`${t.item} \u0432\u044B\u0431\u0440\u0430\u043D\u043E.`};var jn={};jn={deselectedItem:t=>`Nevybrat\xE9 polo\u017Eky: ${t.item}.`,longPressToSelect:"Dlh\u0161\xEDm stla\u010Den\xEDm prejdite do re\u017Eimu v\xFDberu.",select:"Vybra\u0165",selectedAll:"V\u0161etky vybrat\xE9 polo\u017Eky.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u017Diadne vybrat\xE9 polo\u017Eky",one:()=>`${e.number(t.count)} vybrat\xE1 polo\u017Eka`,other:()=>`Po\u010Det vybrat\xFDch polo\u017Eiek:${e.number(t.count)}`})}.`,selectedItem:t=>`Vybrat\xE9 polo\u017Eky: ${t.item}.`};var kn={};kn={deselectedItem:t=>`Element ${t.item} ni izbran.`,longPressToSelect:"Za izbirni na\u010Din pritisnite in dlje \u010Dasa dr\u017Eite.",select:"Izberite",selectedAll:"Vsi elementi so izbrani.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Noben element ni izbran",one:()=>`${e.number(t.count)} element je izbran`,other:()=>`${e.number(t.count)} elementov je izbranih`})}.`,selectedItem:t=>`Element ${t.item} je izbran.`};var Cn={};Cn={deselectedItem:t=>`${t.item} nije izabrano.`,longPressToSelect:"Dugo pritisnite za ulazak u re\u017Eim biranja.",select:"Izaberite",selectedAll:"Izabrane su sve stavke.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nije izabrana nijedna stavka",one:()=>`Izabrana je ${e.number(t.count)} stavka`,other:()=>`Izabrano je ${e.number(t.count)} stavki`})}.`,selectedItem:t=>`${t.item} je izabrano.`};var wn={};wn={deselectedItem:t=>`${t.item} ej markerat.`,longPressToSelect:"Tryck l\xE4nge n\xE4r du vill \xF6ppna v\xE4ljarl\xE4ge.",select:"Markera",selectedAll:"Alla markerade objekt.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Inga markerade objekt",one:()=>`${e.number(t.count)} markerat objekt`,other:()=>`${e.number(t.count)} markerade objekt`})}.`,selectedItem:t=>`${t.item} markerat.`};var Sn={};Sn={deselectedItem:t=>`${t.item} se\xE7ilmedi.`,longPressToSelect:"Se\xE7im moduna girmek i\xE7in uzun bas\u0131n.",select:"Se\xE7",selectedAll:"T\xFCm \xF6geler se\xE7ildi.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Hi\xE7bir \xF6ge se\xE7ilmedi",one:()=>`${e.number(t.count)} \xF6ge se\xE7ildi`,other:()=>`${e.number(t.count)} \xF6ge se\xE7ildi`})}.`,selectedItem:t=>`${t.item} se\xE7ildi.`};var Nn={};Nn={deselectedItem:t=>`${t.item} \u043D\u0435 \u0432\u0438\u0431\u0440\u0430\u043D\u043E.`,longPressToSelect:"\u0412\u0438\u043A\u043E\u043D\u0430\u0439\u0442\u0435 \u0434\u043E\u0432\u0433\u0435 \u043D\u0430\u0442\u0438\u0441\u043D\u0435\u043D\u043D\u044F, \u0449\u043E\u0431 \u043F\u0435\u0440\u0435\u0439\u0442\u0438 \u0432 \u0440\u0435\u0436\u0438\u043C \u0432\u0438\u0431\u043E\u0440\u0443.",select:"\u0412\u0438\u0431\u0440\u0430\u0442\u0438",selectedAll:"\u0423\u0441\u0456 \u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438 \u0432\u0438\u0431\u0440\u0430\u043D\u043E.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u0416\u043E\u0434\u043D\u0438\u0445 \u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432 \u043D\u0435 \u0432\u0438\u0431\u0440\u0430\u043D\u043E",one:()=>`${e.number(t.count)} \u0435\u043B\u0435\u043C\u0435\u043D\u0442 \u0432\u0438\u0431\u0440\u0430\u043D\u043E`,other:()=>`\u0412\u0438\u0431\u0440\u0430\u043D\u043E \u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432: ${e.number(t.count)}`})}.`,selectedItem:t=>`${t.item} \u0432\u0438\u0431\u0440\u0430\u043D\u043E.`};var In={};In={deselectedItem:t=>`\u672A\u9009\u62E9 ${t.item}\u3002`,longPressToSelect:"\u957F\u6309\u4EE5\u8FDB\u5165\u9009\u62E9\u6A21\u5F0F\u3002",select:"\u9009\u62E9",selectedAll:"\u5DF2\u9009\u62E9\u6240\u6709\u9879\u76EE\u3002",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u672A\u9009\u62E9\u9879\u76EE",one:()=>`\u5DF2\u9009\u62E9 ${e.number(t.count)} \u4E2A\u9879\u76EE`,other:()=>`\u5DF2\u9009\u62E9 ${e.number(t.count)} \u4E2A\u9879\u76EE`})}\u3002`,selectedItem:t=>`\u5DF2\u9009\u62E9 ${t.item}\u3002`};var Kn={};Kn={deselectedItem:t=>`\u672A\u9078\u53D6\u300C${t.item}\u300D\u3002`,longPressToSelect:"\u9577\u6309\u4EE5\u9032\u5165\u9078\u64C7\u6A21\u5F0F\u3002",select:"\u9078\u53D6",selectedAll:"\u5DF2\u9078\u53D6\u6240\u6709\u9805\u76EE\u3002",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u672A\u9078\u53D6\u4EFB\u4F55\u9805\u76EE",one:()=>`\u5DF2\u9078\u53D6 ${e.number(t.count)} \u500B\u9805\u76EE`,other:()=>`\u5DF2\u9078\u53D6 ${e.number(t.count)} \u500B\u9805\u76EE`})}\u3002`,selectedItem:t=>`\u5DF2\u9078\u53D6\u300C${t.item}\u300D\u3002`};var Vt={};Vt={"ar-AE":Ws,"bg-BG":Ys,"cs-CZ":Zs,"da-DK":Qs,"de-DE":Js,"el-GR":Xs,"en-US":en,"es-ES":tn,"et-EE":ln,"fi-FI":sn,"fr-FR":nn,"he-IL":rn,"hr-HR":an,"hu-HU":on,"it-IT":cn,"ja-JP":dn,"ko-KR":un,"lt-LT":mn,"lv-LV":hn,"nb-NO":pn,"nl-NL":gn,"pl-PL":fn,"pt-BR":xn,"pt-PT":yn,"ro-RO":vn,"ru-RU":bn,"sk-SK":jn,"sl-SI":kn,"sr-SP":Cn,"sv-SE":wn,"tr-TR":Sn,"uk-UA":Nn,"zh-CN":In,"zh-TW":Kn};function yc(t){return t&&t.__esModule?t.default:t}function vc(t,e){let{getRowText:l=c=>{var d,u;var o;return((d=(o=e.collection).getTextValue)==null?void 0:d.call(o,c))??((u=e.collection.getItem(c))==null?void 0:u.textValue)}}=t,n=Pt(yc(Vt),"@react-aria/grid"),i=e.selectionManager.rawSelection,r=(0,g.useRef)(i),a=(0,g.useCallback)(()=>{var m;if(!e.selectionManager.isFocused||i===r.current){r.current=i;return}let c=Mn(i,r.current),o=Mn(r.current,i),d=e.selectionManager.selectionBehavior==="replace",u=[];if(e.selectionManager.selectedKeys.size===1&&d){let p=e.selectionManager.selectedKeys.keys().next().value;if(p!=null&&e.collection.getItem(p)){let f=l(p);f&&u.push(n.format("selectedItem",{item:f}))}}else if(c.size===1&&o.size===0){let p=c.keys().next().value;if(p!=null){let f=l(p);f&&u.push(n.format("selectedItem",{item:f}))}}else if(o.size===1&&c.size===0){let p=o.keys().next().value;if(p!=null&&e.collection.getItem(p)){let f=l(p);f&&u.push(n.format("deselectedItem",{item:f}))}}e.selectionManager.selectionMode==="multiple"&&(u.length===0||i==="all"||i.size>1||r.current==="all"||((m=r.current)==null?void 0:m.size)>1)&&u.push(i==="all"?n.format("selectedAll"):n.format("selectedCount",{count:i.size})),u.length>0&&Ya(u.join(" ")),r.current=i},[i,e.selectionManager.selectedKeys,e.selectionManager.isFocused,e.selectionManager.selectionBehavior,e.selectionManager.selectionMode,e.collection,l,n]);Co(()=>{if(e.selectionManager.isFocused)a();else{let c=requestAnimationFrame(a);return()=>cancelAnimationFrame(c)}},[i,e.selectionManager.isFocused])}function Mn(t,e){let l=new Set;if(t==="all"||e==="all")return l;for(let n of t.keys())e.has(n)||l.add(n);return l}function bc(t){return t&&t.__esModule?t.default:t}function jc(t){let e=Pt(bc(Vt),"@react-aria/grid"),l=so(),n=(l==="pointer"||l==="virtual"||l==null)&&typeof window<"u"&&"ontouchstart"in window;return Cs((0,g.useMemo)(()=>{let i=t.selectionManager.selectionMode,r=t.selectionManager.selectionBehavior,a;return n&&(a=e.format("longPressToSelect")),r==="replace"&&i!=="none"&&t.hasItemActions?a:void 0},[t.selectionManager.selectionMode,t.selectionManager.selectionBehavior,t.hasItemActions,e,n]))}function kc(t){return t&&t.__esModule?t.default:t}function Cc(t,e){let{key:l}=t,n=e.selectionManager,i=yt(),r=!e.selectionManager.canSelectItem(l),a=e.selectionManager.isSelected(l),c=()=>n.toggleSelection(l),o=Pt(kc(Vt),"@react-aria/grid");return{checkboxProps:{id:i,"aria-label":o.format("select"),isSelected:a,isDisabled:r,onChange:c}}}function wc(t,e,l){let{isVirtualized:n,keyboardDelegate:i,layoutDelegate:r,onAction:a,disallowTypeAhead:c,linkBehavior:o="action",keyboardNavigationBehavior:d="arrow",escapeKeyBehavior:u="clearSelection",shouldSelectOnPressUp:m}=t;!t["aria-label"]&&!t["aria-labelledby"]&&console.warn("An aria-label or aria-labelledby prop is required for accessibility.");let{listProps:p}=Os({selectionManager:e.selectionManager,collection:e.collection,disabledKeys:e.disabledKeys,ref:l,keyboardDelegate:i,layoutDelegate:r,isVirtualized:n,selectOnFocus:e.selectionManager.selectionBehavior==="replace",shouldFocusWrap:t.shouldFocusWrap,linkBehavior:o,disallowTypeAhead:c,autoFocus:t.autoFocus,escapeKeyBehavior:u}),f=yt(t.id);bl.set(e,{id:f,onAction:a,linkBehavior:o,keyboardNavigationBehavior:d,shouldSelectOnPressUp:m});let y=jc({selectionManager:e.selectionManager,hasItemActions:!!a}),j=sc(l,{isDisabled:e.collection.size!==0}),v=ze(Ft(t,{labelable:!0}),{role:"grid",id:f,"aria-multiselectable":e.selectionManager.selectionMode==="multiple"?"true":void 0},e.collection.size===0?{tabIndex:j?-1:0}:p,y);return n&&(v["aria-rowcount"]=e.collection.size,v["aria-colcount"]=1),vc({},e),{gridProps:v}}var Dn={expand:{ltr:"ArrowRight",rtl:"ArrowLeft"},collapse:{ltr:"ArrowLeft",rtl:"ArrowRight"}};function Sc(t,e,l){var I,_,M;let{node:n,isVirtualized:i}=t,{direction:r}=Bt(),{onAction:a,linkBehavior:c,keyboardNavigationBehavior:o,shouldSelectOnPressUp:d}=bl.get(e),u=vo(),m=(0,g.useRef)(null),p=()=>{l.current!==null&&(m.current!=null&&n.key!==m.current||!dl(l.current))&&Le(l.current)},f={},y=t.hasChildItems,j=e.selectionManager.isLink(n.key);if(n!=null&&"expandedKeys"in e){var v;let k=(I=(v=e.collection).getChildren)==null?void 0:I.call(v,n.key);y||(y=[...k??[]].length>1),a==null&&!j&&e.selectionManager.selectionMode==="none"&&y&&(a=()=>e.toggleKey(n.key));let A=y?e.expandedKeys.has(n.key):void 0,b=1,P=n.index;if(n.level>=0&&(n==null?void 0:n.parentKey)!=null){let z=e.collection.getItem(n.parentKey);if(z){let T=Nc(z,e.collection);b=[...T].filter(q=>q.type==="item").length,P>0&&T[0].type!=="item"&&--P}}else b=[...e.collection].filter(z=>z.level===0&&z.type==="item").length;f={"aria-expanded":A,"aria-level":n.level+1,"aria-posinset":P+1,"aria-setsize":b}}let{itemProps:N,...w}=Rs({selectionManager:e.selectionManager,key:n.key,ref:l,isVirtualized:i,shouldSelectOnPressUp:t.shouldSelectOnPressUp||d,onAction:a||(_=n.props)!=null&&_.onAction?ys((M=n.props)==null?void 0:M.onAction,a?()=>a(n.key):void 0):void 0,focus:p,linkBehavior:c}),C=k=>{let A=ct();if(!Qe(k.currentTarget,He(k))||!l.current||!A)return;let b=Tt(l.current);if(b.currentNode=A,"expandedKeys"in e&&A===l.current){if(k.key===Dn.expand[r]&&e.selectionManager.focusedKey===n.key&&y&&!e.expandedKeys.has(n.key)){e.toggleKey(n.key),k.stopPropagation();return}else if(k.key===Dn.collapse[r]&&e.selectionManager.focusedKey===n.key&&y&&e.expandedKeys.has(n.key)){e.toggleKey(n.key),k.stopPropagation();return}}switch(k.key){case"ArrowLeft":if(o==="arrow"){let z=r==="rtl"?b.nextNode():b.previousNode();if(z)k.preventDefault(),k.stopPropagation(),Le(z),Je(z,{containingElement:it(l.current)});else if(k.preventDefault(),k.stopPropagation(),r==="rtl")Le(l.current),Je(l.current,{containingElement:it(l.current)});else{b.currentNode=l.current;let T=An(b);T&&(Le(T),Je(T,{containingElement:it(l.current)}))}}break;case"ArrowRight":if(o==="arrow"){let z=r==="rtl"?b.previousNode():b.nextNode();if(z)k.preventDefault(),k.stopPropagation(),Le(z),Je(z,{containingElement:it(l.current)});else if(k.preventDefault(),k.stopPropagation(),r==="ltr")Le(l.current),Je(l.current,{containingElement:it(l.current)});else{b.currentNode=l.current;let T=An(b);T&&(Le(T),Je(T,{containingElement:it(l.current)}))}}break;case"ArrowUp":case"ArrowDown":if(!k.altKey&&Qe(l.current,He(k))){var P;k.stopPropagation(),k.preventDefault(),(P=l.current.parentElement)==null||P.dispatchEvent(new KeyboardEvent(k.nativeEvent.type,k.nativeEvent))}break}},h=k=>{if(m.current=n.key,He(k)!==l.current){no()||e.selectionManager.setFocusedKey(n.key);return}},x=k=>{let A=ct();if(!(!Qe(k.currentTarget,He(k))||!l.current||!A))switch(k.key){case"Tab":if(o==="tab"){let b=Tt(l.current,{tabbable:!0});b.currentNode=A,(k.shiftKey?b.previousNode():b.nextNode())&&k.stopPropagation()}}},K=yo(n.props),D=ze(N,w.hasAction?K:{},{role:"row",onKeyDownCapture:C,onKeyDown:x,onFocus:h,"aria-label":n["aria-label"]||n.textValue||void 0,"aria-selected":e.selectionManager.canSelectItem(n.key)?e.selectionManager.isSelected(n.key):void 0,"aria-disabled":e.selectionManager.isDisabled(n.key)||void 0,"aria-labelledby":u&&(n["aria-label"]||n.textValue)?`${jl(e,n.key)} ${u}`:void 0,id:jl(e,n.key)});if(i){let{collection:k}=e;D["aria-rowindex"]=[...k].find(A=>A.type==="section")?[...k.getKeys()].filter(A=>{var b;return((b=k.getItem(A))==null?void 0:b.type)!=="section"}).findIndex(A=>A===n.key)+1:n.index+1}let F={role:"gridcell","aria-colindex":1};return{rowProps:{...ze(D,f)},gridCellProps:F,descriptionProps:{id:u},...w}}function An(t){let e=null,l=null;do l=t.lastChild(),l&&(e=l);while(l);return e}function Nc(t,e){var a;let l=(a=e.getChildren)==null?void 0:a.call(e,t.key),n=l?Array.from(l):[],i=n.length>0?n[0]:null,r=[];for(;i;)r.push(i),i=i.nextKey==null?null:e.getItem(i.nextKey);return r}function Ic(t,e){let{key:l}=t,{checkboxProps:n}=Cc(t,e);return{checkboxProps:{...n,"aria-labelledby":`${n.id} ${jl(e,l)}`}}}function Kc(t,e,l){let{gridProps:n}=wc(t,e,l);return n.role="treegrid",{gridProps:n}}var Pn={};Pn={collapse:"\u0637\u064A",expand:"\u062A\u0645\u062F\u064A\u062F"};var En={};En={collapse:"\u0421\u0432\u0438\u0432\u0430\u043D\u0435",expand:"\u0420\u0430\u0437\u0448\u0438\u0440\u044F\u0432\u0430\u043D\u0435"};var _n={};_n={collapse:"Sbalit",expand:"Rozt\xE1hnout"};var Fn={};Fn={collapse:"Skjul",expand:"Udvid"};var zn={};zn={collapse:"Reduzieren",expand:"Erweitern"};var Tn={};Tn={collapse:"\u03A3\u03CD\u03BC\u03C0\u03C4\u03C5\u03BE\u03B7",expand:"\u0391\u03BD\u03AC\u03C0\u03C4\u03C5\u03BE\u03B7"};var Bn={};Bn={expand:"Expand",collapse:"Collapse"};var Rn={};Rn={collapse:"Contraer",expand:"Ampliar"};var $n={};$n={collapse:"Ahenda",expand:"Laienda"};var Vn={};Vn={collapse:"Pienenn\xE4",expand:"Laajenna"};var Ln={};Ln={collapse:"R\xE9duire",expand:"D\xE9velopper"};var On={};On={collapse:"\u05DB\u05D5\u05D5\u05E5",expand:"\u05D4\u05E8\u05D7\u05D1"};var Hn={};Hn={collapse:"Sa\u017Emi",expand:"Pro\u0161iri"};var Gn={};Gn={collapse:"\xD6sszecsuk\xE1s",expand:"Kibont\xE1s"};var Un={};Un={collapse:"Comprimi",expand:"Espandi"};var qn={};qn={collapse:"\u6298\u308A\u305F\u305F\u3080",expand:"\u5C55\u958B"};var Wn={};Wn={collapse:"\uC811\uAE30",expand:"\uD3BC\uCE58\uAE30"};var Yn={};Yn={collapse:"Sutraukti",expand:"I\u0161skleisti"};var Zn={};Zn={collapse:"Sak\u013Caut",expand:"Izv\u0113rst"};var Qn={};Qn={collapse:"Skjul",expand:"Utvid"};var Jn={};Jn={collapse:"Samenvouwen",expand:"Uitvouwen"};var Xn={};Xn={collapse:"Zwi\u0144",expand:"Rozwi\u0144"};var ei={};ei={collapse:"Recolher",expand:"Expandir"};var ti={};ti={collapse:"Colapsar",expand:"Expandir"};var li={};li={collapse:"Restr\xE2nge\u021Bi",expand:"Extinde\u021Bi"};var si={};si={collapse:"\u0421\u0432\u0435\u0440\u043D\u0443\u0442\u044C",expand:"\u0420\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u044C"};var ni={};ni={collapse:"Zbali\u0165",expand:"Rozbali\u0165"};var ii={};ii={collapse:"Strni",expand:"Raz\u0161iri"};var ri={};ri={collapse:" Skupi",expand:"Pro\u0161iri"};var ai={};ai={collapse:"D\xF6lj",expand:"Expandera"};var oi={};oi={collapse:"Daralt",expand:"Geni\u015Flet"};var ci={};ci={collapse:"\u0417\u0433\u043E\u0440\u043D\u0443\u0442\u0438",expand:"\u0420\u043E\u0437\u0433\u043E\u0440\u043D\u0443\u0442\u0438"};var di={};di={collapse:"\u6298\u53E0",expand:"\u6269\u5C55"};var ui={};ui={collapse:"\u6536\u5408",expand:"\u5C55\u958B"};var mi={};mi={"ar-AE":Pn,"bg-BG":En,"cs-CZ":_n,"da-DK":Fn,"de-DE":zn,"el-GR":Tn,"en-US":Bn,"es-ES":Rn,"et-EE":$n,"fi-FI":Vn,"fr-FR":Ln,"he-IL":On,"hr-HR":Hn,"hu-HU":Gn,"it-IT":Un,"ja-JP":qn,"ko-KR":Wn,"lt-LT":Yn,"lv-LV":Zn,"nb-NO":Qn,"nl-NL":Jn,"pl-PL":Xn,"pt-BR":ei,"pt-PT":ti,"ro-RO":li,"ru-RU":si,"sk-SK":ni,"sl-SI":ii,"sr-SP":ri,"sv-SE":ai,"tr-TR":oi,"uk-UA":ci,"zh-CN":di,"zh-TW":ui};function Mc(t){return t&&t.__esModule?t.default:t}function hi(t,e,l){let{node:n}=t,i=Sc(t,e,l),r=i.rowProps["aria-expanded"]===!0,a=Pt(Mc(mi),"@react-aria/tree"),c=lo({"aria-label":r?a.format("collapse"):a.format("expand"),"aria-labelledby":i.rowProps.id}),o={onPress:()=>{i.isDisabled||(e.toggleKey(n.key),e.selectionManager.setFocused(!0),e.selectionManager.setFocusedKey(n.key))},excludeFromTabOrder:!0,preventFocusOnPress:!0,"data-react-aria-prevent-focus":!0,...c};return{...i,expandButtonProps:o}}var rt=class{get childNodes(){throw Error("childNodes is not supported")}clone(){let t=new this.constructor(this.key);return t.value=this.value,t.level=this.level,t.hasChildNodes=this.hasChildNodes,t.rendered=this.rendered,t.textValue=this.textValue,t["aria-label"]=this["aria-label"],t.index=this.index,t.parentKey=this.parentKey,t.prevKey=this.prevKey,t.nextKey=this.nextKey,t.firstChildKey=this.firstChildKey,t.lastChildKey=this.lastChildKey,t.props=this.props,t.render=this.render,t.colSpan=this.colSpan,t.colIndex=this.colIndex,t}filter(t,e,l){let n=this.clone();return e.addDescendants(n,t),n}constructor(t){this.value=null,this.level=0,this.hasChildNodes=!1,this.rendered=null,this.textValue="",this["aria-label"]=void 0,this.index=0,this.parentKey=null,this.prevKey=null,this.nextKey=null,this.firstChildKey=null,this.lastChildKey=null,this.props={},this.colSpan=null,this.colIndex=null,this.type=this.constructor.type,this.key=t}},pi=class extends rt{filter(t,e,l){let[n,i]=xi(t,e,this.firstChildKey,l),r=this.clone();return r.firstChildKey=n,r.lastChildKey=i,r}},Dc=class extends rt{};Dc.type="header";var kl=class extends rt{};kl.type="loader";var gi=class extends pi{filter(t,e,l){if(l(this.textValue,this)){let n=this.clone();return e.addDescendants(n,t),n}return null}};gi.type="item";var Ac=class extends pi{filter(t,e,l){let n=super.filter(t,e,l);if(n&&n.lastChildKey!==null){let i=t.getItem(n.lastChildKey);if(i&&i.type!=="header")return n}return null}};Ac.type="section";var fi=class{get size(){return this.itemCount}getKeys(){return this.keyMap.keys()}*[Symbol.iterator](){let t=this.firstKey==null?void 0:this.keyMap.get(this.firstKey);for(;t;)yield t,t=t.nextKey==null?void 0:this.keyMap.get(t.nextKey)}getChildren(t){let e=this.keyMap;return{*[Symbol.iterator](){let l=e.get(t),n=(l==null?void 0:l.firstChildKey)==null?null:e.get(l.firstChildKey);for(;n;)yield n,n=n.nextKey==null?void 0:e.get(n.nextKey)}}}getKeyBefore(t){let e=this.keyMap.get(t);if(!e)return null;if(e.prevKey!=null){for(e=this.keyMap.get(e.prevKey);e&&e.type!=="item"&&e.lastChildKey!=null;)e=this.keyMap.get(e.lastChildKey);return(e==null?void 0:e.key)??null}return e.parentKey}getKeyAfter(t){let e=this.keyMap.get(t);if(!e)return null;if(e.type!=="item"&&e.firstChildKey!=null)return e.firstChildKey;for(;e;){if(e.nextKey!=null)return e.nextKey;if(e.parentKey!=null)e=this.keyMap.get(e.parentKey);else return null}return null}getFirstKey(){return this.firstKey}getLastKey(){let t=this.lastKey==null?null:this.keyMap.get(this.lastKey);for(;(t==null?void 0:t.lastChildKey)!=null;)t=this.keyMap.get(t.lastChildKey);return(t==null?void 0:t.key)??null}getItem(t){return this.keyMap.get(t)??null}at(){throw Error("Not implemented")}clone(){let t=this.constructor,e=new t;return e.keyMap=new Map(this.keyMap),e.firstKey=this.firstKey,e.lastKey=this.lastKey,e.itemCount=this.itemCount,e}addNode(t){if(this.frozen)throw Error("Cannot add a node to a frozen collection");t.type==="item"&&this.keyMap.get(t.key)==null&&this.itemCount++,this.keyMap.set(t.key,t)}addDescendants(t,e){this.addNode(t);let l=e.getChildren(t.key);for(let n of l)this.addDescendants(n,e)}removeNode(t){if(this.frozen)throw Error("Cannot remove a node to a frozen collection");let e=this.keyMap.get(t);e!=null&&e.type==="item"&&this.itemCount--,this.keyMap.delete(t)}commit(t,e,l=!1){if(this.frozen)throw Error("Cannot commit a frozen collection");this.firstKey=t,this.lastKey=e,this.frozen=!l}filter(t){let e=new this.constructor,[l,n]=xi(this,e,this.firstKey,t);return e==null||e.commit(l,n),e}constructor(){this.keyMap=new Map,this.firstKey=null,this.lastKey=null,this.frozen=!1,this.itemCount=0}};function xi(t,e,l,n){if(l==null)return[null,null];let i=null,r=null,a=t.getItem(l);for(;a!=null;){let c=a.filter(t,e,n);c!=null&&(c.nextKey=null,r&&(c.prevKey=r.key,r.nextKey=c.key),i??(i=c),e.addNode(c),r=c),a=a.nextKey?t.getItem(a.nextKey):null}if(r&&r.type==="separator"){let c=r.prevKey;e.removeNode(r.key),c?(r=e.getItem(c),r.nextKey=null):r=null}return[(i==null?void 0:i.key)??null,(r==null?void 0:r.key)??null]}var yi=class{*[Symbol.iterator](){let t=this.firstChild;for(;t;)yield t,t=t.nextSibling}get firstChild(){return this._firstChild}set firstChild(t){this._firstChild=t,this.ownerDocument.markDirty(this)}get lastChild(){return this._lastChild}set lastChild(t){this._lastChild=t,this.ownerDocument.markDirty(this)}get previousSibling(){return this._previousSibling}set previousSibling(t){this._previousSibling=t,this.ownerDocument.markDirty(this)}get nextSibling(){return this._nextSibling}set nextSibling(t){this._nextSibling=t,this.ownerDocument.markDirty(this)}get parentNode(){return this._parentNode}set parentNode(t){this._parentNode=t,this.ownerDocument.markDirty(this)}get isConnected(){var t;return((t=this.parentNode)==null?void 0:t.isConnected)||!1}invalidateChildIndices(t){(this._minInvalidChildIndex==null||!this._minInvalidChildIndex.isConnected||t.index<this._minInvalidChildIndex.index)&&(this._minInvalidChildIndex=t,this.ownerDocument.markDirty(this))}updateChildIndices(){let t=this._minInvalidChildIndex;for(;t;)t.index=t.previousSibling?t.previousSibling.index+1:0,t=t.nextSibling;this._minInvalidChildIndex=null}appendChild(t){t.parentNode&&t.parentNode.removeChild(t),this.firstChild??(this.firstChild=t),this.lastChild?(this.lastChild.nextSibling=t,t.index=this.lastChild.index+1,t.previousSibling=this.lastChild):(t.previousSibling=null,t.index=0),t.parentNode=this,t.nextSibling=null,this.lastChild=t,this.ownerDocument.markDirty(this),this.isConnected&&this.ownerDocument.queueUpdate()}insertBefore(t,e){if(e==null)return this.appendChild(t);t.parentNode&&t.parentNode.removeChild(t),t.nextSibling=e,t.previousSibling=e.previousSibling,t.index=e.index-1,this.firstChild===e?this.firstChild=t:e.previousSibling&&(e.previousSibling.nextSibling=t),e.previousSibling=t,t.parentNode=e.parentNode,this.invalidateChildIndices(t),this.isConnected&&this.ownerDocument.queueUpdate()}removeChild(t){t.parentNode===this&&(this._minInvalidChildIndex===t&&(this._minInvalidChildIndex=null),t.nextSibling&&(this.invalidateChildIndices(t.nextSibling),t.nextSibling.previousSibling=t.previousSibling),t.previousSibling&&(t.previousSibling.nextSibling=t.nextSibling),this.firstChild===t&&(this.firstChild=t.nextSibling),this.lastChild===t&&(this.lastChild=t.previousSibling),t.parentNode=null,t.nextSibling=null,t.previousSibling=null,t.index=0,this.ownerDocument.markDirty(t),this.isConnected&&this.ownerDocument.queueUpdate())}addEventListener(){}removeEventListener(){}get previousVisibleSibling(){let t=this.previousSibling;for(;t&&t.isHidden;)t=t.previousSibling;return t}get nextVisibleSibling(){let t=this.nextSibling;for(;t&&t.isHidden;)t=t.nextSibling;return t}get firstVisibleChild(){let t=this.firstChild;for(;t&&t.isHidden;)t=t.nextSibling;return t}get lastVisibleChild(){let t=this.lastChild;for(;t&&t.isHidden;)t=t.previousSibling;return t}constructor(t){this._firstChild=null,this._lastChild=null,this._previousSibling=null,this._nextSibling=null,this._parentNode=null,this._minInvalidChildIndex=null,this.ownerDocument=t}},Cl=class Tl extends yi{get index(){return this._index}set index(e){this._index=e,this.ownerDocument.markDirty(this)}get level(){var e;return this.parentNode instanceof Tl?this.parentNode.level+(((e=this.parentNode.node)==null?void 0:e.type)==="item"?1:0):0}getMutableNode(){return this.node==null?null:(this.isMutated||(this.isMutated=(this.node=this.node.clone(),!0)),this.ownerDocument.markDirty(this),this.node)}updateNode(){var n,i,r,a,c,o,d,u;let e=this.nextVisibleSibling,l=this.getMutableNode();if(l!=null&&(l.index=this.index,l.level=this.level,l.parentKey=this.parentNode instanceof Tl?((n=this.parentNode.node)==null?void 0:n.key)??null:null,l.prevKey=((r=(i=this.previousVisibleSibling)==null?void 0:i.node)==null?void 0:r.key)??null,l.nextKey=((a=e==null?void 0:e.node)==null?void 0:a.key)??null,l.hasChildNodes=!!this.firstChild,l.firstChildKey=((o=(c=this.firstVisibleChild)==null?void 0:c.node)==null?void 0:o.key)??null,l.lastChildKey=((u=(d=this.lastVisibleChild)==null?void 0:d.node)==null?void 0:u.key)??null,(l.colSpan!=null||l.colIndex!=null)&&e)){let m=(l.colIndex??l.index)+(l.colSpan??1);if(e.node!=null&&m!==e.node.colIndex){let p=e.getMutableNode();p.colIndex=m}}}setProps(e,l,n,i,r){let a,{value:c,textValue:o,id:d,...u}=e;if(this.node==null?(a=new n(d??`react-aria-${++this.ownerDocument.nodeId}`),this.node=a):a=this.getMutableNode(),u.ref=l,a.props=u,a.rendered=i,a.render=r,a.value=c,e["aria-label"]&&(a["aria-label"]=e["aria-label"]),a.textValue=o||(typeof u.children=="string"?u.children:"")||e["aria-label"]||"",d!=null&&d!==a.key)throw Error("Cannot change the id of an item");u.colSpan!=null&&(a.colSpan=u.colSpan),this.isConnected&&this.ownerDocument.queueUpdate()}get style(){let e=this;return{get display(){return e.isHidden?"none":""},set display(l){var i,r;let n=l==="none";if(e.isHidden!==n){(((i=e.parentNode)==null?void 0:i.firstVisibleChild)===e||((r=e.parentNode)==null?void 0:r.lastVisibleChild)===e)&&e.ownerDocument.markDirty(e.parentNode);let a=e.previousVisibleSibling,c=e.nextVisibleSibling;a&&e.ownerDocument.markDirty(a),c&&e.ownerDocument.markDirty(c),e.isHidden=n,e.ownerDocument.markDirty(e)}}}}hasAttribute(){}setAttribute(){}setAttributeNS(){}removeAttribute(){}constructor(e,l){super(l),this.nodeType=8,this.isMutated=!0,this._index=0,this.isHidden=!1,this.node=null}},Pc=class extends yi{get isConnected(){return!0}createElement(t){return new Cl(t,this)}getMutableCollection(){return this.nextCollection||(this.nextCollection=this.collection.clone()),this.nextCollection}markDirty(t){this.dirtyNodes.add(t)}addNode(t){if(t.isHidden||t.node==null)return;let e=this.getMutableCollection();if(!e.getItem(t.node.key))for(let l of t)this.addNode(l);e.addNode(t.node)}removeNode(t){for(let e of t)this.removeNode(e);t.node&&this.getMutableCollection().removeNode(t.node.key)}getCollection(){return this.inSubscription?this.collection:(this.queuedRender=!1,this.updateCollection(),this.collection)}updateCollection(){var t,e,l,n;for(let i of this.dirtyNodes)i instanceof Cl&&(!i.isConnected||i.isHidden)?this.removeNode(i):i.updateChildIndices();for(let i of this.dirtyNodes)i instanceof Cl?(i.isConnected&&!i.isHidden&&(i.updateNode(),this.addNode(i)),i.node&&this.dirtyNodes.delete(i),i.isMutated=!1):this.dirtyNodes.delete(i);this.nextCollection&&(this.nextCollection.commit(((e=(t=this.firstVisibleChild)==null?void 0:t.node)==null?void 0:e.key)??null,((n=(l=this.lastVisibleChild)==null?void 0:l.node)==null?void 0:n.key)??null,this.isSSR),this.isSSR||(this.collection=this.nextCollection,this.nextCollection=null))}queueUpdate(){if(!(this.dirtyNodes.size===0||this.queuedRender)){this.queuedRender=!0,this.inSubscription=!0,this.isSSR||(this.collection=this.collection.clone());for(let t of this.subscriptions)t();this.inSubscription=!1}}subscribe(t){return this.subscriptions.add(t),()=>this.subscriptions.delete(t)}resetAfterSSR(){this.isSSR&&(this.isSSR=!1,this.firstChild=null,this.lastChild=null,this.nodeId=0)}constructor(t){super(null),this.nodeType=11,this.ownerDocument=this,this.dirtyNodes=new Set,this.isSSR=!1,this.nodeId=0,this.nodesByProps=new WeakMap,this.nextCollection=null,this.subscriptions=new Set,this.queuedRender=!1,this.inSubscription=!1,this.collection=t,this.nextCollection=t}};function wl(t){let{children:e,items:l,idScope:n,addIdAndValue:i,dependencies:r=[]}=t,a=(0,g.useMemo)(()=>new WeakMap,r);return(0,g.useMemo)(()=>{if(l&&typeof e=="function"){let c=[];for(let o of l){let d=a.get(o);if(!d){d=e(o);let u=d.props.id??o.key??o.id;if(u==null)throw Error("Could not determine key for item");n!=null&&(u=n+":"+u),d=(0,g.cloneElement)(d,i?{key:u,id:u,value:o}:{key:u}),a.set(o,d)}c.push(d)}return c}else if(typeof e!="function")return e},[e,l,a,n,i])}var Ec=Gl(),_c=pa(),vi=(0,g.createContext)(!1),bt=(0,g.createContext)(null);function bi(t){if((0,g.useContext)(bt))return t.content;let{collection:e,document:l}=Bc(t.createCollection);return g.createElement(g.Fragment,null,g.createElement(eo,null,g.createElement(bt.Provider,{value:l},t.content)),g.createElement(Fc,{render:t.children,collection:e}))}function Fc({collection:t,render:e}){return e(t)}function zc(t,e,l){let n=js(),i=(0,g.useRef)(n);return i.current=n,(0,_c.useSyncExternalStore)(t,(0,g.useCallback)(()=>i.current?l():e(),[e,l]))}var Tc=typeof g.useSyncExternalStore=="function"?g.useSyncExternalStore:zc;function Bc(t){let[e]=(0,g.useState)(()=>new Pc((t==null?void 0:t())||new fi));return{collection:Tc((0,g.useCallback)(l=>e.subscribe(l),[e]),(0,g.useCallback)(()=>{let l=e.getCollection();return e.isSSR&&e.resetAfterSSR(),l},[e]),(0,g.useCallback)(()=>(e.isSSR=!0,e.getCollection()),[e])),document:e}}var Sl=(0,g.createContext)(null);function Rc(t){var e;return e=class extends rt{},e.type=t,e}function ji(t,e,l,n,i,r){typeof t=="string"&&(t=Rc(t));let a=(0,g.useCallback)(o=>{o==null||o.setProps(e,l,t,n,r)},[e,l,n,r,t]),c=(0,g.useContext)(Sl);if(c){let o=c.ownerDocument.nodesByProps.get(e);return o||(o=c.ownerDocument.createElement(t.type),o.setProps(e,l,t,n,r),c.appendChild(o),c.ownerDocument.updateCollection(),c.ownerDocument.nodesByProps.set(e,o)),i?g.createElement(Sl.Provider,{value:o},i):null}return g.createElement(t.type,{ref:a},i)}function Nl(t,e){let l=({node:i})=>e(i.props,i.props.ref,i),n=(0,g.forwardRef)((i,r)=>{let a=(0,g.useContext)(hs);if(!(0,g.useContext)(vi)){if(e.length>=3)throw Error(e.name+" cannot be rendered outside a collection.");return e(i,r)}return ji(t,i,r,"children"in i?i.children:null,null,c=>g.createElement(hs.Provider,{value:a},g.createElement(l,{node:c})))});return n.displayName=e.name,n}function $c(t,e,l=ki){let n=({node:r})=>e(r.props,r.props.ref,r),i=(0,g.forwardRef)((r,a)=>ji(t,r,a,null,l(r),c=>g.createElement(n,{node:c}))??g.createElement(g.Fragment,null));return i.displayName=e.name,i}function ki(t){return wl({...t,addIdAndValue:!0})}var Ci=(0,g.createContext)(null);function wi(t){let e=(0,g.useContext)(Ci),l=((e==null?void 0:e.dependencies)||[]).concat(t.dependencies),n=t.idScope??(e==null?void 0:e.idScope),i=ki({...t,idScope:n,dependencies:l});return(0,g.useContext)(bt)&&(i=g.createElement(Vc,null,i)),e=(0,g.useMemo)(()=>({dependencies:l,idScope:n}),[n,...l]),g.createElement(Ci.Provider,{value:e},i)}function Vc({children:t}){let e=(0,g.useContext)(bt),l=(0,g.useMemo)(()=>g.createElement(bt.Provider,{value:null},g.createElement(vi.Provider,{value:!0},t)),[t]);return js()?g.createElement(Sl.Provider,{value:e},l):(0,Ec.createPortal)(l,e)}var Lc=(0,g.createContext)(null),Si={CollectionRoot({collection:t,renderDropIndicator:e}){return Ni(t,null,e)},CollectionBranch({collection:t,parent:e,renderDropIndicator:l}){return Ni(t,e,l)}};function Ni(t,e,l){return wl({items:e?t.getChildren(e.key):t,dependencies:[l],children(n){if(n.type==="content")return g.createElement(g.Fragment,null);let i=n.render(n);return!l||n.type!=="item"?i:g.createElement(g.Fragment,null,l({type:"item",key:n.key,dropPosition:"before"}),i,Oc(t,n,l))}})}function Oc(t,e,l){let n=e.key,i=t.getKeyAfter(n),r=i==null?null:t.getItem(i);for(;r!=null&&r.type!=="item";)i=t.getKeyAfter(r.key),r=i==null?null:t.getItem(i);let a=e.nextKey==null?null:t.getItem(e.nextKey);for(;a!=null&&a.type!=="item";)a=a.nextKey==null?null:t.getItem(a.nextKey);let c=[];if(a==null){let o=e;for(;(o==null?void 0:o.type)==="item"&&(!r||o.parentKey!==r.parentKey&&r.level<o.level);){let d=l({type:"item",key:o.key,dropPosition:"after"});(0,g.isValidElement)(d)&&c.push((0,g.cloneElement)(d,{key:`${o.key}-after`})),o=o.parentKey==null?null:t.getItem(o.parentKey)}}return c}var Lt=(0,g.createContext)(Si),We=class Sr extends Set{constructor(e,l,n){super(e),e instanceof Sr?(this.anchorKey=l??e.anchorKey,this.currentKey=n??e.currentKey):(this.anchorKey=l??null,this.currentKey=n??null)}};function Hc(t,e){if(t.size!==e.size)return!1;for(let l of t)if(!e.has(l))return!1;return!0}function Ii(t){let{selectionMode:e="none",disallowEmptySelection:l=!1,allowDuplicateSelectionEvents:n,selectionBehavior:i="toggle",disabledBehavior:r="all"}=t,a=(0,g.useRef)(!1),[,c]=(0,g.useState)(!1),o=(0,g.useRef)(null),d=(0,g.useRef)(null),[,u]=(0,g.useState)(null),[m,p]=rl((0,g.useMemo)(()=>Ki(t.selectedKeys),[t.selectedKeys]),(0,g.useMemo)(()=>Ki(t.defaultSelectedKeys,new We),[t.defaultSelectedKeys]),t.onSelectionChange),f=(0,g.useMemo)(()=>t.disabledKeys?new Set(t.disabledKeys):new Set,[t.disabledKeys]),[y,j]=(0,g.useState)(i);i==="replace"&&y==="toggle"&&typeof m=="object"&&m.size===0&&j("replace");let v=(0,g.useRef)(i);return(0,g.useEffect)(()=>{i!==v.current&&(j(i),v.current=i)},[i]),{selectionMode:e,disallowEmptySelection:l,selectionBehavior:y,setSelectionBehavior:j,get isFocused(){return a.current},setFocused(N){a.current=N,c(N)},get focusedKey(){return o.current},get childFocusStrategy(){return d.current},setFocusedKey(N,w="first"){o.current=N,d.current=w,u(N)},selectedKeys:m,setSelectedKeys(N){(n||!Hc(N,m))&&p(N)},disabledKeys:f,disabledBehavior:r}}function Ki(t,e){return t?t==="all"?"all":new We(t):e}var Mi=class Nr{get selectionMode(){return this.state.selectionMode}get disallowEmptySelection(){return this.state.disallowEmptySelection}get selectionBehavior(){return this.state.selectionBehavior}setSelectionBehavior(e){this.state.setSelectionBehavior(e)}get isFocused(){return this.state.isFocused}setFocused(e){this.state.setFocused(e)}get focusedKey(){return this.state.focusedKey}get childFocusStrategy(){return this.state.childFocusStrategy}setFocusedKey(e,l){(e==null||this.collection.getItem(e))&&this.state.setFocusedKey(e,l)}get selectedKeys(){return this.state.selectedKeys==="all"?new Set(this.getSelectAllKeys()):this.state.selectedKeys}get rawSelection(){return this.state.selectedKeys}isSelected(e){if(this.state.selectionMode==="none")return!1;let l=this.getKey(e);return l==null?!1:this.state.selectedKeys==="all"?this.canSelectItem(l):this.state.selectedKeys.has(l)}get isEmpty(){return this.state.selectedKeys!=="all"&&this.state.selectedKeys.size===0}get isSelectAll(){if(this.isEmpty)return!1;if(this.state.selectedKeys==="all")return!0;if(this._isSelectAll!=null)return this._isSelectAll;let e=this.getSelectAllKeys(),l=this.state.selectedKeys;return this._isSelectAll=e.every(n=>l.has(n)),this._isSelectAll}get firstSelectedKey(){let e=null;for(let l of this.state.selectedKeys){let n=this.collection.getItem(l);(!e||n&&vl(this.collection,n,e)<0)&&(e=n)}return(e==null?void 0:e.key)??null}get lastSelectedKey(){let e=null;for(let l of this.state.selectedKeys){let n=this.collection.getItem(l);(!e||n&&vl(this.collection,n,e)>0)&&(e=n)}return(e==null?void 0:e.key)??null}get disabledKeys(){return this.state.disabledKeys}get disabledBehavior(){return this.state.disabledBehavior}extendSelection(e){if(this.selectionMode==="none")return;if(this.selectionMode==="single"){this.replaceSelection(e);return}let l=this.getKey(e);if(l==null)return;let n;if(this.state.selectedKeys==="all")n=new We([l],l,l);else{let i=this.state.selectedKeys,r=i.anchorKey??l;n=new We(i,r,l);for(let a of this.getKeyRange(r,i.currentKey??l))n.delete(a);for(let a of this.getKeyRange(l,r))this.canSelectItem(a)&&n.add(a)}this.state.setSelectedKeys(n)}getKeyRange(e,l){let n=this.collection.getItem(e),i=this.collection.getItem(l);return n&&i?vl(this.collection,n,i)<=0?this.getKeyRangeInternal(e,l):this.getKeyRangeInternal(l,e):[]}getKeyRangeInternal(e,l){var r;if((r=this.layoutDelegate)!=null&&r.getKeyRange)return this.layoutDelegate.getKeyRange(e,l);let n=[],i=e;for(;i!=null;){let a=this.collection.getItem(i);if(a&&(a.type==="item"||a.type==="cell"&&this.allowsCellSelection)&&n.push(i),i===l)return n;i=this.collection.getKeyAfter(i)}return[]}getKey(e){let l=this.collection.getItem(e);if(!l||l.type==="cell"&&this.allowsCellSelection)return e;for(;l&&l.type!=="item"&&l.parentKey!=null;)l=this.collection.getItem(l.parentKey);return!l||l.type!=="item"?null:l.key}toggleSelection(e){if(this.selectionMode==="none")return;if(this.selectionMode==="single"&&!this.isSelected(e)){this.replaceSelection(e);return}let l=this.getKey(e);if(l==null)return;let n=new We(this.state.selectedKeys==="all"?this.getSelectAllKeys():this.state.selectedKeys);n.has(l)?n.delete(l):this.canSelectItem(l)&&(n.add(l),n.anchorKey=l,n.currentKey=l),!(this.disallowEmptySelection&&n.size===0)&&this.state.setSelectedKeys(n)}replaceSelection(e){if(this.selectionMode==="none")return;let l=this.getKey(e);if(l==null)return;let n=this.canSelectItem(l)?new We([l],l,l):new We;this.state.setSelectedKeys(n)}setSelectedKeys(e){if(this.selectionMode==="none")return;let l=new We;for(let n of e){let i=this.getKey(n);if(i!=null&&(l.add(i),this.selectionMode==="single"))break}this.state.setSelectedKeys(l)}getSelectAllKeys(){let e=[],l=n=>{var i;for(;n!=null;){if(this.canSelectItem(n)){let r=this.collection.getItem(n);(r==null?void 0:r.type)==="item"&&e.push(n),r!=null&&r.hasChildNodes&&(this.allowsCellSelection||r.type!=="item")&&l(((i=gc(Us(r,this.collection)))==null?void 0:i.key)??null)}n=this.collection.getKeyAfter(n)}};return l(this.collection.getFirstKey()),e}selectAll(){!this.isSelectAll&&this.selectionMode==="multiple"&&this.state.setSelectedKeys("all")}clearSelection(){!this.disallowEmptySelection&&(this.state.selectedKeys==="all"||this.state.selectedKeys.size>0)&&this.state.setSelectedKeys(new We)}toggleSelectAll(){this.isSelectAll?this.clearSelection():this.selectAll()}select(e,l){this.selectionMode!=="none"&&(this.selectionMode==="single"?this.isSelected(e)&&!this.disallowEmptySelection?this.toggleSelection(e):this.replaceSelection(e):this.selectionBehavior==="toggle"||l&&(l.pointerType==="touch"||l.pointerType==="virtual")?this.toggleSelection(e):this.replaceSelection(e))}isSelectionEqual(e){if(e===this.state.selectedKeys)return!0;let l=this.selectedKeys;if(e.size!==l.size)return!1;for(let n of e)if(!l.has(n))return!1;for(let n of l)if(!e.has(n))return!1;return!0}canSelectItem(e){var n;if(this.state.selectionMode==="none"||this.state.disabledKeys.has(e))return!1;let l=this.collection.getItem(e);return!(!l||l!=null&&((n=l.props)!=null&&n.isDisabled)||l.type==="cell"&&!this.allowsCellSelection)}isDisabled(e){var n;var l;return this.state.disabledBehavior==="all"&&(this.state.disabledKeys.has(e)||!!((l=this.collection.getItem(e))!=null&&((n=l.props)!=null&&n.isDisabled)))}isLink(e){var n;var l;return!!((l=this.collection.getItem(e))!=null&&((n=l.props)!=null&&n.href))}getItemProps(e){var l;return(l=this.collection.getItem(e))==null?void 0:l.props}withCollection(e){return new Nr(e,this.state,{allowsCellSelection:this.allowsCellSelection,layoutDelegate:this.layoutDelegate||void 0})}constructor(e,l,n){this.collection=e,this.state=l,this.allowsCellSelection=(n==null?void 0:n.allowsCellSelection)??!1,this._isSelectAll=null,this.layoutDelegate=(n==null?void 0:n.layoutDelegate)||null}},Gc=class{*[Symbol.iterator](){yield*this.iterable}get size(){return this.keyMap.size}getKeys(){return this.keyMap.keys()}getKeyBefore(t){let e=this.keyMap.get(t);return e?e.prevKey??null:null}getKeyAfter(t){let e=this.keyMap.get(t);return e?e.nextKey??null:null}getFirstKey(){return this.firstKey}getLastKey(){return this.lastKey}getItem(t){return this.keyMap.get(t)??null}at(t){let e=[...this.getKeys()];return this.getItem(e[t])}constructor(t,{expandedKeys:e}={}){this.keyMap=new Map,this.firstKey=null,this.lastKey=null,this.iterable=t,e||(e=new Set);let l=r=>{if(this.keyMap.set(r.key,r),r.childNodes&&(r.type==="section"||e.has(r.key)))for(let a of r.childNodes)l(a)};for(let r of t)l(r);let n=null,i=0;for(let[r,a]of this.keyMap)n?(n.nextKey=r,a.prevKey=n.key):(this.firstKey=r,a.prevKey=void 0),a.type==="item"&&(a.index=i++),n=a,n.nextKey=void 0;this.lastKey=(n==null?void 0:n.key)??null}};function Uc(t){let{onExpandedChange:e}=t,[l,n]=rl(t.expandedKeys?new Set(t.expandedKeys):void 0,t.defaultExpandedKeys?new Set(t.defaultExpandedKeys):new Set,e),i=Ii(t),r=(0,g.useMemo)(()=>t.disabledKeys?new Set(t.disabledKeys):new Set,[t.disabledKeys]),a=Gs(t,(0,g.useCallback)(c=>new Gc(c,{expandedKeys:l}),[l]),null);return(0,g.useEffect)(()=>{i.focusedKey!=null&&!a.getItem(i.focusedKey)&&i.setFocusedKey(null)},[a,i.focusedKey]),{collection:a,expandedKeys:l,disabledKeys:r,toggleKey:c=>{n(qc(l,c))},setExpandedKeys:n,selectionManager:new Mi(a,i)}}function qc(t,e){let l=new Set(t);return l.has(e)?l.delete(e):l.add(e),l}var jt=(0,g.createContext)({}),Il=(0,g.createContext)(null),Wc=(0,g.forwardRef)(function(t,e){let{render:l}=(0,g.useContext)(Il);return g.createElement(g.Fragment,null,l(t,e))});function Di(t,e){var r;let l=t==null?void 0:t.renderDropIndicator,n=(r=t==null?void 0:t.isVirtualDragging)==null?void 0:r.call(t),i=(0,g.useCallback)(a=>{if(n||e!=null&&e.isDropTarget(a))return l?l(a):g.createElement(Wc,{target:a})},[e==null?void 0:e.target,n,l]);return t!=null&&t.useDropIndicator?i:void 0}function Ai(t,e,l){var r,a,c;let n=t.focusedKey,i=null;if(e!=null&&((r=e.isVirtualDragging)!=null&&r.call(e))&&((a=l==null?void 0:l.target)==null?void 0:a.type)==="item"&&(i=l.target.key,l.target.dropPosition==="after")){let o=l.collection.getKeyAfter(i),d=null;if(o!=null){let u=((c=l.collection.getItem(i))==null?void 0:c.level)??0;for(;o;){let m=l.collection.getItem(o);if(!m)break;if(m.type!=="item"){o=l.collection.getKeyAfter(o);continue}if((m.level??0)<=u)break;d=o,o=l.collection.getKeyAfter(o)}}i=o??d??i}return(0,g.useMemo)(()=>new Set([n,i].filter(o=>o!=null)),[n,i])}var Pi=10,Ei=5,Yc=class{setup(t,e,l){this.delegate=t,this.state=e,this.direction=l}getDropTargetFromPoint(t,e,l){let n=this.delegate.getDropTargetFromPoint(t,e,l);return!n||n.type==="root"?n:this.resolveDropTarget(n,t,e,l)}resolveDropTarget(t,e,l,n){let i=this.pointerTracking,r=l-i.lastY,a=e-i.lastX,c=i.yDirection,o=i.xDirection;if(Math.abs(r)>Ei&&(c=r>0?"down":"up",i.yDirection=c,i.lastY=l),Math.abs(a)>Pi&&(o=a>0?"right":"left",i.xDirection=o,i.lastX=e),t.dropPosition==="before"){let m=this.state.collection.getKeyBefore(t.key);if(m!=null){let p={type:"item",key:m,dropPosition:"after"};n(p)&&(t=p)}}let d=this.getPotentialTargets(t,n);if(d.length===0)return{type:"root"};let u;return d.length>1?u=this.selectTarget(d,t,e,l,c,o):(u=d[0],i.boundaryContext=null),u}getPotentialTargets(t,e){if(t.dropPosition==="on")return[t];let l=t,n=this.state.collection,i=n.getItem(l.key);for(;i&&(i==null?void 0:i.type)!=="item"&&i.nextKey!=null;)l.key=i.nextKey,i=n.getItem(i.nextKey);let r=[l];if(i&&i.hasChildNodes&&this.state.expandedKeys.has(i.key)&&n.getChildren&&l.dropPosition==="after"){let o=null;for(let d of n.getChildren(i.key))if(d.type==="item"){o=d;break}if(o){let d={type:"item",key:o.key,dropPosition:"before"};return e(d)?[d]:[]}}if((i==null?void 0:i.nextKey)!=null)return[t];let a=i==null?void 0:i.parentKey,c=[];for(;a;){let o=n.getItem(a),d=o!=null&&o.nextKey?n.getItem(o.nextKey):null;if(!d||d.parentKey!==a){let u={type:"item",key:a,dropPosition:"after"};if(e(u)&&c.push(u),d)break}a=o==null?void 0:o.parentKey}if(c.length>0&&r.push(...c),r.length===1){let o=n.getKeyAfter(l.key),d=o?n.getItem(o):null;if(o!=null&&d&&i&&d.level!=null&&i.level!=null&&d.level>i.level){let u={type:"item",key:o,dropPosition:"before"};if(e(u))return[u]}}return r.filter(e)}selectTarget(t,e,l,n,i,r){var u;if(t.length<2)return t[0];let a=this.pointerTracking,c=(u=this.state.collection.getItem(e.key))==null?void 0:u.parentKey;if(!c)return t[0];(!a.boundaryContext||a.boundaryContext.parentKey!==c)&&(a.boundaryContext={parentKey:c,preferredTargetIndex:a.yDirection==="up"?t.length-1:0,lastSwitchY:n,lastSwitchX:l});let o=a.boundaryContext,d=Math.abs(l-o.lastSwitchX);if(Math.abs(n-o.lastSwitchY)>Ei&&i){let m=o.preferredTargetIndex||0;i==="down"&&m===0?o.preferredTargetIndex=t.length-1:i==="up"&&m===t.length-1&&(o.preferredTargetIndex=0),a.xDirection=null}if(d>Pi&&r){let m=o.preferredTargetIndex||0;r==="left"?this.direction==="ltr"?m<t.length-1&&(o.preferredTargetIndex=m+1,o.lastSwitchX=l):m>0&&(o.preferredTargetIndex=m-1,o.lastSwitchX=l):r==="right"&&(this.direction==="ltr"?m>0&&(o.preferredTargetIndex=m-1,o.lastSwitchX=l):m<t.length-1&&(o.preferredTargetIndex=m+1,o.lastSwitchX=l)),a.yDirection=null}return t[Math.max(0,Math.min(o.preferredTargetIndex||0,t.length-1))]}constructor(){this.delegate=null,this.state=null,this.direction="ltr",this.pointerTracking={lastY:0,lastX:0,yDirection:null,xDirection:null,boundaryContext:null}}},Zc=class Bl extends fi{withExpandedKeys(e,l){let n=this.clone();return n.expandedKeys=l,Bl.cloneAncestorSections(l,e,n),Bl.cloneAncestorSections(e,l,n),n.frozen=this.frozen,n}static cloneAncestorSections(e,l,n){for(let i of e)if(!l.has(i)){let r=i;for(;r!=null;){let a=n.getItem(r);if((a==null?void 0:a.type)==="section"){n.keyMap.set(r,a.clone());break}else r=(a==null?void 0:a.parentKey)??null}}}*[Symbol.iterator](){let e=this.getFirstKey(),l=e==null?null:this.getItem(e);for(;l;)if(yield l,l.type==="section")l=l.nextKey?this.getItem(l.nextKey):null;else{let n=this.getKeyAfter(l.key);l=n?this.getItem(n):null}}getLastKey(){let e=this.lastKey;if(e==null)return null;let l=this.getItem(e);for(;(l==null?void 0:l.lastChildKey)!=null&&(l.type!=="item"||this.expandedKeys.has(l.key));)l=this.getItem(l.lastChildKey);return l==null?void 0:l.key}getKeyAfter(e){let l=this.getItem(e);if(!l)return null;if((this.expandedKeys.has(l.key)||l.type!=="item")&&l.firstChildKey!=null)return l.firstChildKey;for(;l;){if(l.nextKey!=null)return l.nextKey;if(l.parentKey!=null)l=this.getItem(l.parentKey);else return null}return null}getKeyBefore(e){let l=this.getItem(e);if(!l)return null;if(l.prevKey!=null){for(l=this.getItem(l.prevKey);l&&(l.type!=="item"||this.expandedKeys.has(l.key))&&l.lastChildKey!=null;)l=this.getItem(l.lastChildKey);return(l==null?void 0:l.key)??null}return l.parentKey}getChildren(e){let l=this;return{*[Symbol.iterator](){let n=l.getItem(e),i=(n==null?void 0:n.firstChildKey)==null?null:l.getItem(n.firstChildKey);if(n&&n.type==="section"&&i)for(;i&&i.key!==n.nextKey;){yield l.getItem(i.key);let r=l.getKeyAfter(i.key);i=r==null?null:l.getItem(r)}else for(;i;)yield i,i=i.nextKey==null?null:l.getItem(i.nextKey)}}}getTextValue(e){let l=this.getItem(e);return l?l.textValue:""}constructor(...e){super(...e),this.expandedKeys=new Set}},Qc=(0,g.createContext)(null),Kl=(0,g.createContext)(null),Jc=(0,g.forwardRef)(function(t,e){return[t,e]=Za(t,e,Qc),g.createElement(bi,{content:g.createElement(wi,t),createCollection:()=>new Zc},l=>g.createElement(Xc,{props:t,collection:l,treeRef:e}))}),_i={expand:{ltr:"ArrowRight",rtl:"ArrowLeft"},collapse:{ltr:"ArrowLeft",rtl:"ArrowRight"}};function Xc({props:t,collection:e,treeRef:l}){let{dragAndDropHooks:n}=t,{direction:i}=Bt(),r=ws({usage:"search",sensitivity:"base"}),a=!!(n!=null&&n.useDraggableCollectionState),c=!!(n!=null&&n.useDroppableCollectionState),o=(0,g.useRef)(a),d=(0,g.useRef)(c);(0,g.useEffect)(()=>{o.current!==a&&console.warn("Drag hooks were provided during one render, but not another. This should be avoided as it may produce unexpected behavior."),d.current!==c&&console.warn("Drop hooks were provided during one render, but not another. This should be avoided as it may produce unexpected behavior.")},[a,c]);let{selectionMode:u="none",expandedKeys:m,defaultExpandedKeys:p,onExpandedChange:f,disabledBehavior:y="all"}=t,{CollectionRoot:j,isVirtualized:v,layoutDelegate:N,dropTargetDelegate:w}=(0,g.useContext)(Lt),[C,h]=rl(m?new Set(m):void 0,p?new Set(p):new Set,f),[x,K]=(0,g.useState)(e),[D,F]=(0,g.useState)(C),[I,_]=(0,g.useState)(()=>e.withExpandedKeys(D,C));(!nd(D,C)||e!==x)&&(_(e.withExpandedKeys(D,C)),K(e),F(C));let M=Uc({...t,selectionMode:u,expandedKeys:C,onExpandedChange:h,collection:I,children:void 0,disabledBehavior:y}),{gridProps:k}=Kc({...t,isVirtualized:v,layoutDelegate:N},M,l),A,b,P,z=!1,T=null,q=(0,g.useRef)(null);if(a&&n){A=n.useDraggableCollectionState({collection:M.collection,selectionManager:M.selectionManager,preview:n.renderDragPreview?q:void 0}),n.useDraggableCollection({},A,l);let E=n.DragPreview;T=n.renderDragPreview?g.createElement(E,{ref:q},n.renderDragPreview):null}let[Y]=(0,g.useState)(()=>new Yc);if(c&&n){b=n.useDroppableCollectionState({collection:M.collection,selectionManager:M.selectionManager});let E=n.dropTargetDelegate||w||new n.ListDropTargetDelegate(M.collection,l,{direction:i});Y.setup(E,M,i);let J=new xl({collection:M.collection,collator:r,ref:l,disabledKeys:M.selectionManager.disabledKeys,disabledBehavior:M.selectionManager.disabledBehavior,direction:i,layoutDelegate:N});P=n.useDroppableCollection({keyboardDelegate:J,dropTargetDelegate:Y,onDropActivate:Z=>{var X;if(Z.target.type==="item"){let te=Z.target.key,se=M.collection.getItem(te),xe=C.has(te);se&&se.hasChildNodes&&(!xe||n!=null&&((X=n.isVirtualDragging)!=null&&X.call(n)))&&M.toggleKey(te)}},onKeyDown:Z=>{let X=b==null?void 0:b.target;if(X&&X.type==="item"&&X.dropPosition==="on"){let te=M.collection.getItem(X.key);(Z.key===_i.expand[i]&&(te!=null&&te.hasChildNodes)&&!M.expandedKeys.has(X.key)||Z.key===_i.collapse[i]&&(te!=null&&te.hasChildNodes)&&M.expandedKeys.has(X.key))&&M.toggleKey(X.key)}}},b,l);let Q=b.getDropOperation;b.getDropOperation=Z=>{var xe;let{target:X,isInternal:te}=Z,se=(A==null?void 0:A.draggingKeys)??new Set;if(te&&X.type==="item"&&se.size>0){if(se.has(X.key)&&X.dropPosition==="on")return"cancel";let me=X.key;for(;me!=null;){let ne=(xe=M.collection.getItem(me))==null?void 0:xe.parentKey;if(ne!=null&&se.has(ne))return"cancel";me=ne??null}}return Q(Z)},z=b.isDropTarget({type:"root"})}let S=!!(a&&!(A!=null&&A.isDisabled)),{focusProps:W,isFocused:ee,isFocusVisible:oe}=il(),ce={isEmpty:M.collection.size===0,isFocused:ee,isFocusVisible:oe,isDropTarget:z,selectionMode:M.selectionManager.selectionMode,allowsDragging:!!S,state:M},ge=ft({...t,children:void 0,defaultClassName:"react-aria-Tree",values:ce}),ue=null;if(M.collection.size===0&&t.renderEmptyState){let{isEmpty:E,...J}=ce,Q=t.renderEmptyState({...J});ue=g.createElement("div",{role:"row",style:{display:"contents"},"aria-level":1},g.createElement("div",{role:"gridcell",style:{display:"contents"}},Q))}let fe=Ft(t,{global:!0});return g.createElement(g.Fragment,null,g.createElement(jo,null,g.createElement(Et.div,{...ze(fe,ge,k,W,P==null?void 0:P.collectionProps),ref:l,slot:t.slot||void 0,"data-empty":M.collection.size===0||void 0,"data-focused":ee||void 0,"data-drop-target":z||void 0,"data-focus-visible":oe||void 0,"data-selection-mode":M.selectionManager.selectionMode==="none"?void 0:M.selectionManager.selectionMode,"data-allows-dragging":!!S||void 0},g.createElement(ms,{values:[[Kl,M],[jt,{dragAndDropHooks:n,dragState:A,dropState:b}],[Il,{render:ed}]]},c&&g.createElement(sd,null),g.createElement(Ao,null,g.createElement(j,{collection:M.collection,persistedKeys:Ai(M.selectionManager,n,b),scrollRef:l,renderDropIndicator:Di(n,b)}))),ue)),T)}var Fi=class extends rt{};Fi.type="content";var zi=Nl(Fi,function(t){let e=(0,g.useContext)(Ti),l=ft({children:t.children,values:e});return g.createElement(Lt.Provider,{value:Si},l.children)}),Ti=(0,g.createContext)(null),Bi=class extends rt{};Bi.type="item";var Ri=$c(Bi,(t,e,l)=>{let n=(0,g.useContext)(Kl);e=al(e);let{dragAndDropHooks:i,dragState:r,dropState:a}=(0,g.useContext)(jt),{rowProps:c,gridCellProps:o,expandButtonProps:d,descriptionProps:u,...m}=hi({node:l,shouldSelectOnPressUp:!!r},n,e),p=c["aria-expanded"]===!0,f=t.hasChildItems||[...n.collection.getChildren(l.key)].length>1,y=c["aria-level"]||1,{hoverProps:j,isHovered:v}=Ja({isDisabled:!m.allowsSelection&&!m.hasAction,onHoverStart:t.onHoverStart,onHoverChange:t.onHoverChange,onHoverEnd:t.onHoverEnd}),{isFocusVisible:N,focusProps:w}=il(),{isFocusVisible:C,focusProps:h}=il({within:!0}),{checkboxProps:x}=Ic({key:l.key},n),K=null;r&&i&&(K=i.useDraggableItem({key:l.key,hasDragButton:!0},r));let D=null,F=(0,g.useRef)(null),I=(0,g.useRef)(null),_=(0,g.useRef)(null),{visuallyHiddenProps:M}=ml();a&&i&&(D=i.useDropIndicator({target:{type:"item",key:l.key,dropPosition:"on"},activateButtonRef:_},a,I));let k=r&&r.isDragging(l.key),A=D==null?void 0:D.isDropTarget,b=n.selectionManager.selectionMode,P=n.selectionManager.selectionBehavior,z=g.useMemo(()=>({...m,isHovered:v,isFocusVisible:N,isExpanded:p,hasChildItems:f,level:y,selectionMode:b,selectionBehavior:P,isFocusVisibleWithin:C,state:n,id:l.key,allowsDragging:!!r,isDragging:k,isDropTarget:A}),[m,v,N,p,f,y,C,n,l.key,r,k,A,P,b]),T=ft({...t,id:void 0,children:l.rendered,defaultClassName:"react-aria-TreeItem",defaultStyle:{"--tree-item-level":y},values:z});(0,g.useEffect)(()=>{l.textValue},[l.textValue]),(0,g.useEffect)(()=>{f&&F.current},[]);let q=(0,g.useRef)(null);(0,g.useEffect)(()=>{r&&q.current},[]);let Y=wl({items:n.collection.getChildren(l.key),children:ee=>{switch(ee.type){case"content":return ee.render(ee);case"loader":case"item":return g.createElement(g.Fragment,null);default:throw Error("Unsupported element type in TreeRow: "+ee.type)}}}),S=yt(),W=Ft(t,{global:!0});return delete W.id,delete W.onClick,g.createElement(g.Fragment,null,D&&!D.isHidden&&g.createElement("div",{role:"row","aria-level":c["aria-level"],"aria-expanded":c["aria-expanded"],"aria-label":D.dropIndicatorProps["aria-label"]},g.createElement("div",{role:"gridcell","aria-colindex":1,style:{display:"contents"}},g.createElement("div",{role:"button",...M,...D.dropIndicatorProps,ref:I}),c["aria-expanded"]==null?null:g.createElement("div",{role:"button",...M,id:S,"aria-label":d["aria-label"],"aria-labelledby":`${S} ${c.id}`,tabIndex:-1,ref:_}))),g.createElement(Et.div,{...ze(W,c,w,j,h,K==null?void 0:K.dragProps),...T,ref:e,"data-expanded":f&&p||void 0,"data-has-child-items":f||void 0,"data-level":y,"data-selected":m.isSelected||void 0,"data-disabled":m.isDisabled||void 0,"data-hovered":v||void 0,"data-focused":m.isFocused||void 0,"data-focus-visible":N||void 0,"data-pressed":m.isPressed||void 0,"data-selection-mode":n.selectionManager.selectionMode==="none"?void 0:n.selectionManager.selectionMode,"data-allows-dragging":!!r||void 0,"data-dragging":k||void 0,"data-drop-target":A||void 0},g.createElement("div",{...o,style:{display:"contents"}},g.createElement(ms,{values:[[ko,{slots:{selection:x}}],[to,{slots:{[Qa]:{},chevron:{...d,ref:F},drag:{...K==null?void 0:K.dragButtonProps,ref:q,style:{pointerEvents:"none"}}}}],[Ti,{...z}],[Po,{isSelected:m.isSelected}]]},Y))))});Nl(kl,function(t,e,l){let{isVirtualized:n}=(0,g.useContext)(Lt),i=(0,g.useContext)(Kl),{isLoading:r,onLoadMore:a,scrollOffset:c,...o}=t,d=(0,g.useRef)(null);_s((0,g.useMemo)(()=>({onLoadMore:a,collection:i==null?void 0:i.collection,sentinelRef:d,scrollOffset:c}),[a,c,i==null?void 0:i.collection]),d),e=al(e);let{rowProps:u,gridCellProps:m}=hi({node:l},i,e),p=u["aria-level"]||1,f={role:"row","aria-level":u["aria-level"]},y=ft({...o,id:void 0,children:l.rendered,defaultClassName:"react-aria-TreeLoader",values:{level:p}}),j={};return n&&(j={display:"contents"}),g.createElement(g.Fragment,null,g.createElement("div",{style:{position:"relative",width:0,height:0},inert:Fs(!0)},g.createElement("div",{"data-testid":"loadMoreSentinel",ref:d,style:{position:"absolute",height:1,width:1}})),r&&y.children&&g.createElement(Et.div,{ref:e,...ze(Ft(t),f),...y,"data-level":p},g.createElement("div",{...m,style:j},y.children)))});function ed(t,e){var d;e=al(e);let{dragAndDropHooks:l,dropState:n}=(0,g.useContext)(jt),i=(0,g.useRef)(null),{dropIndicatorProps:r,isHidden:a,isDropTarget:c}=l.useDropIndicator(t,n,i);if(a)return null;let o=n&&t.target.type==="item"?(((d=n.collection.getItem(t.target.key))==null?void 0:d.level)||0)+1:1;return g.createElement(ld,{...t,dropIndicatorProps:r,isDropTarget:c,ref:e,buttonRef:i,level:o})}function td(t,e){let{dropIndicatorProps:l,isDropTarget:n,buttonRef:i,level:r,...a}=t,{visuallyHiddenProps:c}=ml(),o=ft({...a,defaultClassName:"react-aria-DropIndicator",defaultStyle:{position:"relative","--tree-item-level":r},values:{isDropTarget:n}});return g.createElement(Et.div,{...o,role:"row","aria-level":r,ref:e,"data-drop-target":n||void 0},g.createElement("div",{role:"gridcell"},g.createElement("div",{...c,role:"button",...l,ref:i}),o.children))}var ld=(0,g.forwardRef)(td);function sd(){let{dragAndDropHooks:t,dropState:e}=(0,g.useContext)(jt),l=(0,g.useRef)(null),{dropIndicatorProps:n}=t.useDropIndicator({target:{type:"root"}},e,l),i=e.isDropTarget({type:"root"}),{visuallyHiddenProps:r}=ml();return!i&&n["aria-hidden"]?null:g.createElement("div",{role:"row","aria-hidden":n["aria-hidden"],style:{position:"absolute"}},g.createElement("div",{role:"gridcell"},g.createElement("div",{role:"button",...r,...n,ref:l})))}function nd(t,e){if(t.size!==e.size)return!1;for(let l of t)if(!e.has(l))return!1;return!0}var id=Ie(),rd=t=>{switch(t){case"chat":return"chat_model";case"autocomplete":return"autocomplete_model";case"edit":return"edit_model"}};const $i=()=>{let t=(0,id.c)(12),[e,l]=lt(ea),{saveUserConfig:n}=pt(),i;t[0]!==n||t[1]!==l?(i=async m=>{await n({config:m}).then(()=>{l(p=>({...p,...m}))})},t[0]=n,t[1]=l,t[2]=i):i=t[2];let r=i,a;t[3]!==r||t[4]!==e?(a=async(m,p)=>{var y,j,v,N,w;let f=rd(p);f&&r({ai:{...e.ai,models:{custom_models:((j=(y=e.ai)==null?void 0:y.models)==null?void 0:j.custom_models)??[],displayed_models:((N=(v=e.ai)==null?void 0:v.models)==null?void 0:N.displayed_models)??[],...(w=e.ai)==null?void 0:w.models,[f]:m}}})},t[3]=r,t[4]=e,t[5]=a):a=t[5];let c=a,o;t[6]!==r||t[7]!==e?(o=async m=>{r({ai:{...e.ai,mode:m}})},t[6]=r,t[7]=e,t[8]=o):o=t[8];let d=o,u;return t[9]!==d||t[10]!==c?(u={saveModelChange:c,saveModeChange:d},t[9]=d,t[10]=c,t[11]=u):u=t[11],u},Ot=["openai","anthropic","google","ollama","bedrock","deepseek","azure","github","openrouter","wandb","marimo"];var Ae=class Rl{constructor(e,l){this.providerId=e,this.shortModelId=l}get id(){return`${this.providerId}/${this.shortModelId}`}static parse(e){if(!e.includes("/"))return new Rl(ad(e),e);let[l,...n]=e.split("/");return new Rl(l,n.join("/"))}};function ad(t){return t.startsWith("gpt")||t.startsWith("o3")||t.startsWith("o1")?"openai":t.startsWith("claude")?"anthropic":t.startsWith("gemini")||t.startsWith("google")?"google":t.startsWith("deepseek")?"deepseek":"ollama"}function Ml(t){return Ot.includes(t)}const od=[{name:"Claude Sonnet 4.6",model:"claude-sonnet-4-6",description:"Most capable Sonnet-class model, with frontier performance across coding, agents, and professional work",providers:["anthropic"],roles:["chat","edit"],thinking:!0},{name:"Claude Opus 4.6",model:"claude-opus-4-6",description:"Strongest model for coding and long-running professional tasks",providers:["anthropic"],roles:["chat","edit"],thinking:!0},{name:"Claude Opus 4.5",model:"claude-opus-4-5",description:"Frontier reasoning model optimized for complex software engineering",providers:["anthropic"],roles:["chat","edit"],thinking:!0},{name:"Claude Sonnet 4.5",model:"claude-sonnet-4-5",description:"Advanced Sonnet model optimized for real-world agents and coding workflows",providers:["anthropic"],roles:["chat","edit"],thinking:!0},{name:"Claude Haiku 4.5",model:"claude-haiku-4-5",description:"Most efficient model, delivering near-frontier intelligence at a fraction of the cost",providers:["anthropic"],roles:["chat","edit"],thinking:!0},{name:"Gemini 3.1 Flash Lite Preview",model:"gemini-3.1-flash-lite-preview",description:"High-efficiency model optimized for high-volume use cases",providers:["google"],roles:["chat","edit"],thinking:!1},{name:"Gemini 3.1 Pro Preview",model:"gemini-3.1-pro-preview",description:"Frontier reasoning model with enhanced software engineering and agentic reliability",providers:["google"],roles:["chat","edit"],thinking:!0},{name:"Gemini 3 Flash Preview",model:"gemini-3-flash-preview",description:"High-speed thinking model for agentic workflows, multi-turn chat, and coding assistance",providers:["google"],roles:["chat","edit"],thinking:!0},{name:"Gemini 2.5 Flash",model:"gemini-2.5-flash",description:"State-of-the-art workhorse model with built-in thinking capabilities",providers:["google"],roles:["chat","edit"],thinking:!0},{name:"Gemini 2.5 Flash Lite",model:"gemini-2.5-flash-lite",description:"Most cost-efficient model supporting high throughput",providers:["google"],roles:["chat","edit"],thinking:!1},{name:"GPT-5.4",model:"gpt-5.4",description:"The latest frontier-grade model, unifying the Codex and GPT lines into a single system",providers:["openai"],roles:["chat","edit"],thinking:!1},{name:"GPT-5.3 Chat",model:"gpt-5.3-chat",description:"Most-used model that makes everyday conversations smoother and more useful",providers:["openai","azure"],roles:["chat","edit"],thinking:!1},{name:"GPT-5.3-Codex",model:"gpt-5.3-codex",description:"Most advanced agentic coding model combining frontier software engineering with broad reasoning",providers:["openai"],roles:["chat","edit"],thinking:!1},{name:"GPT-5 Mini",model:"gpt-5-mini",description:"A faster, cost-efficient version of GPT-5 for well-defined tasks",providers:["openai","azure","github"],roles:["chat","edit"],thinking:!1},{name:"GPT-5 Nano",model:"gpt-5-nano",description:"Fastest, most cost-efficient version of GPT-5",providers:["openai","azure"],roles:["chat","edit"],thinking:!1},{name:"o3",model:"o3",description:"Most powerful reasoning model with chain-of-thought capabilities",providers:["openai","azure"],roles:["chat","edit"],thinking:!0},{name:"o4 Mini",model:"o4-mini",description:"Faster, more affordable reasoning model optimized for math, coding, and visual tasks",providers:["openai","azure"],roles:["chat","edit"],thinking:!0},{name:"GPT-3.5-turbo",model:"gpt-3.5-turbo",description:"Fast and efficient model with excellent performance for everyday tasks",providers:["github"],roles:["chat","edit"],thinking:!1},{name:"Claude 4.7 Opus (Bedrock)",model:"global.anthropic.claude-opus-4-7",description:"Latest Opus model, strongest for coding and long-running professional tasks",providers:["bedrock"],roles:["chat","edit"],thinking:!0},{name:"Claude 4.6 Sonnet (Bedrock)",model:"global.anthropic.claude-sonnet-4-6",description:"Most capable Sonnet-class model, with frontier performance across coding, agents, and professional work",providers:["bedrock"],roles:["chat","edit"],thinking:!0},{name:"Claude 4.6 Opus (Bedrock)",model:"global.anthropic.claude-opus-4-6-v1",description:"Strongest model for coding and long-running professional tasks",providers:["bedrock"],roles:["chat","edit"],thinking:!0},{name:"Claude 4.5 Opus (Bedrock)",model:"global.anthropic.claude-opus-4-5-20251101-v1:0",description:"Frontier reasoning model optimized for complex software engineering",providers:["bedrock"],roles:["chat","edit"],thinking:!0},{name:"Claude 4.5 Sonnet (Bedrock)",model:"global.anthropic.claude-sonnet-4-5-20250929-v1:0",description:"Most advanced Sonnet model to date, optimized for real-world agents",providers:["bedrock"],roles:["chat","edit"],thinking:!0},{name:"Claude 4.5 Haiku (Bedrock)",model:"global.anthropic.claude-haiku-4-5-20251001-v1:0",description:"Most efficient model, delivering near-frontier intelligence at a fraction of the cost",providers:["bedrock"],roles:["chat","edit"],thinking:!0},{name:"Llama 3.3 70B Instruct",model:"us.meta.llama3-3-70b-instruct-v1:0",description:"Large language model optimized for instruction following and chat",providers:["bedrock"],roles:["chat","edit"],thinking:!1},{name:"Cohere Embed Multilingual v3",model:"cohere.embed-multilingual-v3",description:"Multilingual text embedding model for semantic search and similarity",providers:["bedrock"],roles:["embed"],thinking:!1},{name:"Cohere Rerank 3.5",model:"cohere.rerank-v3-5:0",description:"Advanced reranking model for improving search result relevance",providers:["bedrock"],roles:["rerank"],thinking:!1},{name:"gpt-oss 20b",model:"gpt-oss:20b",description:"OpenAI's open-weight models designed for powerful reasoning, agentic tasks, and versatile developer use cases.",providers:["ollama"],roles:["chat","edit"],thinking:!0},{name:"Qwen3 8b",model:"qwen3:8b",description:"Qwen3 is the latest generation of large language models in Qwen series.",providers:["ollama"],roles:["chat","edit"],thinking:!0},{name:"Gemma3 12b",model:"gemma3:12b",description:"Lightweight gemma models trained by Google, trained to run on a single GPU.",providers:["ollama"],roles:["chat","edit"],thinking:!0},{name:"Meta Llama 3.1 8B (W&B)",model:"meta-llama/Llama-3.1-8B-Instruct",description:"Efficient conversational model optimized for responsive multilingual chatbot interactions",providers:["wandb"],roles:["chat","edit"],thinking:!1},{name:"OpenAI GPT OSS 120B",model:"openai/gpt-oss-120b",description:"Efficient Mixture-of-Experts model designed for high-reasoning, agentic and general-purpose use cases",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"OpenAI GPT OSS 20B",model:"openai/gpt-oss-20b",description:"Lower latency Mixture-of-Experts model trained on OpenAI's Harmony response format with reasoning capabilities",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"DeepSeek V3-0324",model:"deepseek-ai/DeepSeek-V3-0324",description:"Robust Mixture-of-Experts model tailored for high-complexity language processing and comprehensive document analysis",providers:["wandb"],roles:["chat","edit"],thinking:!1},{name:"Meta Llama 3.3 70B (W&B)",model:"meta-llama/Llama-3.3-70B-Instruct",description:"Multilingual model excelling in conversational tasks, detailed instruction-following, and coding",providers:["wandb"],roles:["chat","edit"],thinking:!1},{name:"DeepSeek R1-0528",model:"deepseek-ai/DeepSeek-R1-0528",description:"Optimized for precise reasoning tasks including complex coding, math, and structured document analysis",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"MoonshotAI Kimi K2",model:"moonshotai/Kimi-K2-Instruct",description:"Mixture-of-Experts model optimized for complex tool use, reasoning, and code synthesis",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"Z.AI GLM 4.5",model:"zai-org/GLM-4.5",description:"Mixture-of-Experts model with user-controllable thinking/non-thinking modes for strong reasoning, code generation, and agent alignment",providers:["wandb"],roles:["chat","edit"],thinking:!0}],cd=[{name:"OpenAI",id:"openai",description:"OpenAI's API for GPT models, including GPT-3.5 and GPT-4.",url:"https://platform.openai.com/"},{name:"Amazon Bedrock",id:"bedrock",description:"Amazon Bedrock provides access to foundation models from Amazon and leading AI startups via a unified API.",url:"https://aws.amazon.com/bedrock/"},{name:"Azure",id:"azure",description:"Azure provides access to models via the Azure cloud.",url:"https://azure.microsoft.com/en-us/products/ai-services/"},{name:"Anthropic",id:"anthropic",description:"Anthropic's Claude models for conversational and completion tasks.",url:"https://www.anthropic.com/"},{name:"Google AI",id:"google",description:"Google's Vertex AI and PaLM APIs for generative and conversational models.",url:"https://cloud.google.com/vertex-ai/docs/generative-ai/learn/overview"},{name:"Ollama",id:"ollama",description:"Ollama is a lightweight, open-source model server for running and sharing LLMs.",url:"https://ollama.ai/"},{name:"GitHub",id:"github",description:"GitHub's API for GPT models with GitHub-hosted models.",url:"https://github.com/features/copilot"},{name:"marimo",id:"marimo",description:"marimo's hosted models.",url:"https://docs.marimo.io/guides/editor_features/ai_completion/"},{name:"DeepSeek",id:"deepseek",description:"DeepSeek's API for GPT models.",url:"https://deepseek.com/"},{name:"LM Studio",id:"lmstudio",description:"LM Studio's API for GPT models.",url:"https://lmstudio.ai/"},{name:"OpenRouter",id:"openrouter",description:"OpenRouter's API for GPT models.",url:"https://openrouter.ai/"},{name:"Mistral",id:"mistral",description:"Mistral's API for GPT models.",url:"https://mistral.ai/"},{name:"Vercel v0",id:"vercel",description:"Vercel's API for GPT models.",url:"https://vercel.com/"},{name:"Together AI",id:"together",description:"Together AI's API for GPT models.",url:"https://together.ai/"},{name:"xAI",id:"xai",description:"xAI's API for GPT models.",url:"https://x.ai/"},{name:"Weights & Biases",id:"wandb",description:"Weights & Biases' hosted models for ML development and AI inference.",url:"https://wandb.ai/"}],Vi=Ye(()=>{let t=new Map,e=new Map;for(let l of od){let n=l.model,i={...l,model:l.model,roles:l.roles.map(a=>a),providers:l.providers,custom:!1},r=i.roles.includes("chat")||i.roles.includes("edit");for(let a of i.providers){let c=`${a}/${n}`;t.set(c,i),r&&!e.has(a)&&e.set(a,c)}}return{modelMap:t,defaultModelByProvider:e}});var Li=Ye(()=>{let t=new Map,e=new Map;return cd.forEach((l,n)=>{let i=l.id;t.set(i,l),e.set(i,n)}),{providerMap:t,providerToOrderIdx:e}}),kt=class Qt{constructor(e,l){Ke(this,"modelsByProviderMap",new Jl);this.customModels=new Set(e),this.displayedModels=new Set(l),this.modelsMap=new Map,this.buildMaps()}static getProviderInfo(e){let{providerMap:l}=Li();return l.get(e)}static create(e){let{customModels:l=[],displayedModels:n=[]}=e;return new Qt(l.map(i=>Ae.parse(i).id),n.map(i=>Ae.parse(i).id))}buildMaps(){let e=Qt.buildMapsFromConfig({displayedModels:this.displayedModels,customModels:this.customModels});e.modelsMap.size===0&&(G.error("The configured displayed_models have filtered out all registered models. Reverting back to showing all models.",[...this.displayedModels]),e=Qt.buildMapsFromConfig({displayedModels:new Set,customModels:this.customModels})),this.modelsByProviderMap=e.modelsByProviderMap,this.modelsMap=e.modelsMap}static buildMapsFromConfig(e){let{displayedModels:l,customModels:n}=e,i=l.size>0,r=Vi().modelMap,a=new Map,c=new Map,o=new Jl;for(let d of n){if(i&&!l.has(d))continue;let u=Ae.parse(d),m={name:u.shortModelId,model:u.shortModelId,description:"Custom model",providers:[u.providerId],roles:[],thinking:!1,custom:!0};a.set(d,m)}if(i)for(let d of l){let u=r.get(d);u&&c.set(d,u)}else c=new Map(r);c=new Map([...a,...c]);for(let[d,u]of c.entries()){let m=Ae.parse(d);o.add(m.providerId,u)}return{modelsByProviderMap:o,modelsMap:c}}getDisplayedModels(){return this.displayedModels}getCustomModels(){return this.customModels}getModelsByProvider(e){return this.modelsByProviderMap.get(e)||[]}getGroupedModelsByProvider(){return this.modelsByProviderMap}getListModelsByProvider(){let e=[...this.getGroupedModelsByProvider().entries()],l=Li().providerToOrderIdx;return e.sort((n,i)=>{let r=n[0],a=i[0];return(l.get(r)??0)-(l.get(a)??0)}),e}getModelsMap(){return this.modelsMap}getModel(e){return this.modelsMap.get(e)}};const Oi=Ol("marimo:accept-completion-on-enter",!0,Ll,{getOnInit:!0});function dd(t){"scheduler"in window?window.scheduler.postTask(t,{priority:"background"}):"requestIdleCallback"in window?requestIdleCallback(t):setTimeout(t,0)}var Ht=null,ud=class{constructor(t){Ke(this,"abortController",new AbortController);this.view=t.view,this.view.dom.addEventListener("focus",()=>{Ht=new WeakRef(this.view)},{signal:this.abortController.signal,capture:!0}),this.update()}update(){let t=this.view.dom.querySelector(".cm-vimCursorLayer");if(t instanceof HTMLElement)if(_r())t.style.display="none";else{let e=(Ht==null?void 0:Ht.deref())===this.view;t.style.display=e?"":"none"}}destroy(){this.abortController.abort()}};const Hi={map:{args:["lhs","rhs"]},nmap:{mode:"normal",args:["lhs","rhs"]},vmap:{mode:"visual",args:["lhs","rhs"]},imap:{mode:"insert",args:["lhs","rhs"]},noremap:{args:["lhs","rhs"]},nnoremap:{mode:"normal",args:["lhs","rhs"]},vnoremap:{mode:"visual",args:["lhs","rhs"]},inoremap:{mode:"insert",args:["lhs","rhs"]},unmap:{args:["lhs"]},nunmap:{mode:"normal",args:["lhs"]},vunmap:{mode:"visual",args:["lhs"]},iunmap:{mode:"insert",args:["lhs"]},mapclear:{},nmapclear:{mode:"normal"},vmapclear:{mode:"visual"},imapclear:{mode:"insert"}};function md(t,e){let l=[];for(let n of t.split(`
2
- `)){if(n.startsWith('"')||n.trim()==="")continue;let i=hd(n,e);i&&l.push(i)}return l}function hd(t,e){let l=t.split(/\s+/),n=l[0],i=0;if(n in Hi){let r=Hi[n],a={};for(let o of r.args||[])if(i+=1,i<l.length)a[o]=l[i];else{e&&e(`Not enough arguments for "${n}" command: "${t}"`);return}let c={name:n};return"args"in r&&(c.args=a),"mode"in r&&(c.mode=r.mode),c}e&&e(`Unknown vimrc command: "${t}"`)}function pd(){return gd(),fd(),[Ve.of([{key:"j",run:t=>{if(Vr(t,!0)&&Hl(t)){let e=t.state.facet(Kt),l=t.state.facet(Vl);return e.moveToNextCell({cellId:l,before:!1,noCreate:!0}),!0}return!1}}]),Ve.of([{key:"k",run:t=>{if(Fr(t)&&Hl(t)){let e=t.state.facet(Kt),l=t.state.facet(Vl);return e.moveToNextCell({cellId:l,before:!0,noCreate:!0}),!0}return!1}}]),Ve.of([{linux:"Ctrl-[",win:"Ctrl-[",run:t=>{let e=mt(t);return e?Ui(e)?e.state.vim.insertMode?(pe.exitInsertMode(e,!0),!0):!1:(G.warn("Expected CodeMirror instance to have Vim state"),!1):(G.warn("Expected CodeMirror instance to have CodeMirror instance state"),!1)}}]),rs.define(t=>(requestAnimationFrame(()=>{Gi.INSTANCES.addInstance(t)}),{destroy(){Gi.INSTANCES.removeInstance(t)}})),rs.define(t=>new ud({view:t})),Ka.domEventHandlers({keydown(t,e){return t.ctrlKey&&t.key==="Escape"?(e.dom.dispatchEvent(new KeyboardEvent(t.type,t)),!0):!1}})]}var gd=Ye(()=>{pe.defineAction("goToDefinition",t=>{let e=t.cm6;return Rr(e)}),pe.mapCommand("gd","action","goToDefinition",{},{context:"normal"}),pe.defineEx("write","w",t=>{let e=t.cm6;e&&e.state.facet(Kt).saveNotebook()})}),fd=Ye(async()=>{var e;let t=(e=tt.get(el).keymap)==null?void 0:e.vimrc;if(t)try{G.log(`Loading vimrc from ${t}`);let l=(await La().sendFileDetails({path:t})).contents;if(!l){G.error(`Failed to load vimrc from ${t}`);return}xd(md(l,G.warn))}catch(l){G.error("Failed to load vimrc:",l)}});function xd(t){function e(r){if(!r.args){G.warn(`Could not execute vimrc command "${r.name}: expected arguments"`);return}if(!r.args.lhs||!r.args.rhs){G.warn(`Could not execute vimrc command "${r.name}: expected arguments"`);return}r.mode?pe.map(r.args.lhs,r.args.rhs,r.mode):pe.map(r.args.lhs,r.args.rhs)}function l(r){if(!r.args){G.warn(`Could not execute vimrc command "${r.name}: expected arguments"`);return}if(!r.args.lhs||!r.args.rhs){G.warn(`Could not execute vimrc command "${r.name}: expected arguments"`);return}r.mode?pe.noremap(r.args.lhs,r.args.rhs,r.mode):pe.noremap(r.args.lhs,r.args.rhs)}function n(r){if(!r.args){G.warn(`Could not execute vimrc command "${r.name}: expected arguments"`);return}if(!r.args.lhs){G.warn(`Could not execute vimrc command "${r.name}: expected arguments"`);return}r.mode?pe.unmap(r.args.lhs,r.mode):pe.unmap(r.args.lhs)}function i(r){r.mode?pe.mapclear(r.mode):pe.mapclear()}for(let r of t)"map|nmap|vmap|imap".split("|").includes(r.name)?e(r):"noremap|nnoremap|vnoremap|inoremap".split("|").includes(r.name)?l(r):"unmap|nunmap|vunmap|iunmap".split("|").includes(r.name)?n(r):"mapclear|nmapclear|vmapclear|imapclear".split("|").includes(r.name)?i(r):G.warn(`Could not execute vimrc command "${r.name}: unknown command"`)}function yd(t){return"getVimGlobalState_"in t&&typeof t.getVimGlobalState_=="function"}function vd(){var e;if(!yd(pe))return!1;let t=(e=pe.getVimGlobalState_())==null?void 0:e.macroModeState;return t?!!(t.isRecording||t.isPlaying):!1}var Gi=(at=class{constructor(){Ke(this,"instances",new Set);Ke(this,"isBroadcasting",!1)}addInstance(e){this.instances.add(e);let l=mt(e);if(!l){G.warn("Expected CodeMirror instance to have CodeMirror instance state");return}l.on("vim-mode-change",n=>{if(this.isBroadcasting)return;Xt("mode"in n,'Expected event to have a "mode" property');let i=vd();this.isBroadcasting=!0,dd(()=>{i||this.broadcastModeChange(e,n.mode,n.subMode),this.isBroadcasting=!1})})}removeInstance(e){this.instances.delete(e)}broadcastModeChange(e,l,n){Xt("exitInsertMode"in pe,"Vim does not have an exitInsertMode method"),Xt("exitVisualMode"in pe,"Vim does not have an exitVisualMode method");for(let i of this.instances)if(i!==e){let r=mt(i);if(!r){G.warn("Expected CodeMirror instance to have CodeMirror instance state");continue}let a=r.setSelections.bind(r);if(r.setSelections=()=>[],!Ui(r)){G.warn("Expected CodeMirror instance to have Vim state");continue}let c=r.state.vim;switch(l){case"normal":c.insertMode&&pe.exitInsertMode(r,!0),c.visualMode&&pe.exitVisualMode(r,!0);break;case"insert":c.insertMode||pe.handleKey(r,"i","mapping");break;case"visual":break}r.setSelections=a}}},Ke(at,"INSTANCES",new at),at);function Ui(t){return t.state.vim!==void 0}const bd=["default","vim"];function jd(t,e){switch(t.preset){case"default":return[Ve.of(qi()),Ve.of(Wi(e))];case"vim":return[Ve.of(Cd()),Ve.of(Wi(e)),Ve.of([{key:"Enter",run:l=>{var n,i;return(i=(n=mt(l))==null?void 0:n.state.vim)!=null&&i.insertMode?Da(l):!1}}]),is.high(wd("d",l=>l.state.doc.toString()==="",l=>l.state.doc.toString()===""?(l.state.facet(Kt).deleteCell(),!0):!1)),Ve.of(Nd()),zr({status:!1}),is.high(pd())];default:return $a(t.preset),[]}}var kd=new Set([os,as]),qi=Ye(()=>Ba.filter(t=>!kd.has(t.run))),Wi=t=>[{key:t.getHotkey("cell.toggleComment").key,run:os},{key:t.getHotkey("cell.toggleBlockComment").key,run:as}],Cd=Ye(()=>{let t=new Set(["Enter","Ctrl-v","ArrowUp","ArrowDown","ArrowLeft","ArrowRight"]);return qi().filter(e=>!t.has(e.key||e.mac||e.linux||e.win||""))});function wd(t,e,l){let n="",i=0;return Ve.of([{any:(r,a)=>{let c=a.key,o=a.timeStamp;return c!==t||!e(r)?(n="",i=0,!1):n===t&&o-i<500&&l(r)?(n="",i=0,!0):(n=c,i=o,!1)}}])}function Sd(t){var e;return((e=t==null?void 0:t.state.vim)==null?void 0:e.visualMode)===!0}function Nd(){let t=e=>l=>Sd(mt(l))?!1:e(l);return[{key:"ArrowDown",run:t(Ea),shift:t(Aa)},{key:"ArrowUp",run:t(Ta),shift:t(Pa)},{key:"ArrowLeft",run:t(za),shift:t(Ma)},{key:"ArrowRight",run:t(Fa),shift:t(_a)}]}function Yi(){return["compact","medium","full","columns"]}var Id={openai:t=>{var e;return!!((e=t==null?void 0:t.open_ai)!=null&&e.api_key)},anthropic:t=>{var e;return!!((e=t==null?void 0:t.anthropic)!=null&&e.api_key)},google:t=>{var e;return!!((e=t==null?void 0:t.google)!=null&&e.api_key)},github:t=>{var e;return!!((e=t==null?void 0:t.github)!=null&&e.api_key)},openrouter:t=>{var e;return!!((e=t==null?void 0:t.openrouter)!=null&&e.api_key)},azure:t=>{var e,l;return!!((e=t==null?void 0:t.azure)!=null&&e.api_key&&((l=t==null?void 0:t.azure)!=null&&l.base_url))},wandb:t=>{var e;return!!((e=t==null?void 0:t.wandb)!=null&&e.api_key)},bedrock:t=>{var e;return!!((e=t==null?void 0:t.bedrock)!=null&&e.region_name)},ollama:t=>{var e;return!!((e=t==null?void 0:t.ollama)!=null&&e.base_url)},deepseek:()=>!1,marimo:()=>!1};function Kd(t){for(let l of Ot)if(Id[l](t))return l;let e=t==null?void 0:t.custom_providers;if(e){let l=Object.entries(e).find(([n,i])=>i==null?void 0:i.base_url);if(l)return l[0]}}function Md(t){let e=Kd(t);if(e)return Vi().defaultModelByProvider.get(e)}function Dd(t){var r,a;let e={chatModel:void 0,editModel:void 0},l=!((r=t==null?void 0:t.models)!=null&&r.chat_model),n=!((a=t==null?void 0:t.models)!=null&&a.edit_model);if(!l&&!n)return e;let i=Md(t);return i&&(l&&(e.chatModel=i),n&&(e.editModel=i)),e}var Ad=Ie();function Zi(t){return t.toLowerCase().replaceAll("+","-").trim()}function Pd(t,e){let l=t.getHotkeyGroups(),n=e?new Set(l[e]||[]):new Set,i=new Map;for(let c of t.iterate()){if(n.has(c))continue;let o=t.getHotkey(c);if(!o.key||o.key.trim()==="")continue;let d=Zi(o.key);i.has(d)||i.set(d,[]);let u=i.get(d);u&&u.push({action:c,name:o.name})}let r=[],a=new Set;for(let[c,o]of i.entries())if(o.length>1){r.push({key:c,actions:o});for(let{action:d}of o)a.add(d)}return{duplicates:r,hasDuplicate:c=>a.has(c),getDuplicatesFor:c=>{let o=t.getHotkey(c);if(!o.key||o.key.trim()==="")return[];let d=Zi(o.key),u=r.find(m=>m.key===d);return!u||u.actions.length<=1?[]:u.actions.filter(m=>m.action!==c).map(m=>m.action)}}}function Ed(t,e){let l=(0,Ad.c)(3),n;return l[0]!==t||l[1]!==e?(n=Pd(t,e),l[0]=t,l[1]=e,l[2]=n):n=l[2],n}var _d=Ie(),s=$l(da(),1);const Fd=t=>{let e=(0,_d.c)(7),{duplicates:l}=t;if(l.length===0)return null;let n,i;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=(0,s.jsx)(cl,{className:"h-4 w-4"}),i=(0,s.jsx)(Fo,{children:"Duplicate shortcuts"}),e[0]=n,e[1]=i):(n=e[0],i=e[1]);let r;e[2]===Symbol.for("react.memo_cache_sentinel")?(r=(0,s.jsx)("p",{className:"mb-2",children:"Multiple actions are assigned to the same keyboard shortcut:"}),e[2]=r):r=e[2];let a;e[3]===l?a=e[4]:(a=l.map(Td),e[3]=l,e[4]=a);let c;return e[5]===a?c=e[6]:(c=(0,s.jsxs)(Ns,{variant:"warning",className:"mb-4",children:[n,i,(0,s.jsxs)(Ss,{children:[r,(0,s.jsx)("ul",{className:"space-y-2",children:a})]})]}),e[5]=a,e[6]=c),c};function zd(t){let{action:e,name:l}=t;return(0,s.jsx)("li",{children:l},e)}function Td(t){let{key:e,actions:l}=t;return(0,s.jsxs)("li",{className:"text-xs",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 mb-1",children:[(0,s.jsx)(pl,{shortcut:e}),(0,s.jsx)("span",{className:"font-semibold",children:"is used by:"})]}),(0,s.jsx)("ul",{className:"ml-6 list-disc",children:l.map(zd)})]},e)}const Dl=st(!1),Bd=()=>{let[t,e]=lt(Dl),[l,n]=(0,g.useState)(null),[i,r]=(0,g.useState)([]),[a,c]=Zl(),o=nt(ia),{saveUserConfig:d}=pt(),{duplicates:u,hasDuplicate:m,getDuplicatesFor:p}=Ed(o,"Markdown");Eo("global.showHelp",()=>e(h=>!h));let f=async h=>{let x={...a};c(K=>({...K,...h})),await d({config:h}).catch(K=>{throw c(x),K})},y=async h=>{if(!l)return;let x=h.join("-"),K={keymap:{...a.keymap,overrides:{...a.keymap.overrides,[l]:x}}};n(null),r([]),await f(K)},j=async()=>{if(!l)return;let h={keymap:{...a.keymap,overrides:{...a.keymap.overrides}}};delete h.keymap.overrides[l],n(null),r([]),await f(h)},v=async()=>{if(!window.confirm("Are you sure you want to reset all shortcuts to their default values?"))return;let h={keymap:{...a.keymap,overrides:{}}};n(null),r([]),await f(h)};if(!t)return null;let N=h=>{let x=o.getHotkey(h);if(l===h){let F=Qr(h);return(0,s.jsxs)("div",{children:[(0,s.jsx)(Oe,{defaultValue:i.join("+"),placeholder:x.name,onKeyDown:I=>{I.preventDefault();let _=[];if(I.key==="Meta"||I.key==="Control"||I.key==="Alt"||I.key==="Shift"||(I.metaKey&&_.push(ql()?"Cmd":"Meta"),I.ctrlKey&&_.push("Ctrl"),I.altKey&&_.push("Alt"),I.shiftKey&&_.push("Shift"),I.key==="-"))return;if(I.key==="Escape"&&_.length===0){n(null),r([]);return}let M=I.key.length===1?I.key.toLowerCase():I.key;I.key===" "&&(M="Space"),_.push(M),y(_)},autoFocus:!0,endAdornment:(0,s.jsx)(ie,{variant:"text",size:"xs",className:"mb-0",onClick:()=>{n(null),r([])},children:(0,s.jsx)(nl,{className:"w-4 h-4"})})}),(0,s.jsxs)("div",{className:"flex items-center justify-between w-full",children:[(0,s.jsx)("span",{className:"text-muted-foreground text-xs",children:"Press a key combination"}),F.key!==x.key&&(0,s.jsxs)("span",{className:"text-xs cursor-pointer text-primary",onClick:j,children:["Reset to default:"," ",(0,s.jsx)("span",{className:"font-mono",children:F.key})]})]})]},h)}let K=m(h),D=K?p(h):[];return(0,s.jsxs)("div",{className:"grid grid-cols-[auto_2fr_3fr] gap-2 items-center",children:[o.isEditable(h)?(0,s.jsx)(gs,{className:"cursor-pointer opacity-60 hover:opacity-100 text-muted-foreground w-3 h-3",onClick:()=>{r([]),n(h)}}):(0,s.jsx)("div",{className:"w-3 h-3"}),(0,s.jsx)(pl,{className:"justify-end",shortcut:x.key}),(0,s.jsxs)("div",{className:"flex items-center gap-1",children:[(0,s.jsx)("span",{children:x.name.toLowerCase()}),K&&(0,s.jsxs)("div",{className:"group relative inline-flex",children:[(0,s.jsx)(cl,{className:"w-3 h-3 text-(--yellow-11)"}),(0,s.jsxs)("div",{className:"invisible group-hover:visible absolute left-0 top-5 z-10 w-max max-w-xs rounded-md bg-(--yellow-2) border border-(--yellow-7) p-2 text-xs text-(--yellow-11) shadow-md",children:["Also used by:"," ",D.map(F=>o.getHotkey(F).name.toLowerCase()).join(", ")]})]})]})]},h)},w=o.getHotkeyGroups(),C=(h,x)=>{let K=w[h];return(0,s.jsxs)("div",{className:"mb-[40px] gap-2 flex flex-col",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-lg font-medium",children:h}),x]}),K.map(N)]})};return(0,s.jsx)(Do,{open:t,onOpenChange:h=>e(h),children:(0,s.jsxs)(Mo,{className:"sm:items-center sm:top-0",children:[(0,s.jsx)(Ko,{}),(0,s.jsxs)(Io,{usePortal:!1,className:"max-h-screen sm:max-h-[90vh] overflow-y-auto sm:max-w-[850px]",children:[(0,s.jsx)(So,{children:(0,s.jsx)(No,{children:"Shortcuts"})}),(0,s.jsx)(Fd,{duplicates:u}),(0,s.jsxs)("div",{className:"flex flex-row gap-3",children:[(0,s.jsxs)("div",{className:"w-1/2",children:[C("Editing"),C("Markdown")]}),(0,s.jsxs)("div",{className:"w-1/2",children:[C("Navigation"),C("Running Cells"),C("Creation and Ordering"),(h=>C(h,(0,s.jsxs)("p",{className:"text-xs text-muted-foreground flex items-center gap-1",children:["Press"," ",a.keymap.preset==="vim"?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(pl,{shortcut:ql()?"Cmd":"Ctrl"}),(0,s.jsx)(ae,{children:"Esc"})]}):(0,s.jsx)(ae,{children:"Esc"})," ","in a cell to enter command mode"]})))("Command"),C("Other"),(0,s.jsx)(ie,{className:"mt-4 hover:bg-destructive/10 border-destructive hover:border-destructive",variant:"outline",size:"xs",onClick:v,tabIndex:-1,children:(0,s.jsx)("span",{className:"text-destructive",children:"Reset all to default"})})]})]})]})]})})};var Qi="marimo:copilot:signedIn";const Ji=Ol(Qi,null,Ll,{getOnInit:!0}),Xi=st(null),Gt=st(null),Al=st({busy:!1,kind:null,message:null});function Rd(t){tt.set(Gt,t)}function $d(t){tt.get(Gt)===t&&tt.set(Gt,null)}function Vd(){return Br.getItem(Qi)==="true"}function er(){let t=Vd(),e=la();return t&&e.completion.copilot==="github"}function Ld(){return Mr(el,t=>t.completion.copilot==="github")}var Od=Ra(),ve=G.get("@github/copilot-language-server"),Hd=class extends Hr{constructor(e){super(e);Ke(this,"documentVersion",0);Ke(this,"hasOpenedDocument",!1);Ke(this,"copilotSettings",{});Ke(this,"getCompletionInternal",async(e,l)=>await this._request("textDocument/inlineCompletion",{...e,textDocument:{...e.textDocument,version:l}}));Ke(this,"throttledGetCompletionInternal",Yo(this.getCompletionInternal,200));Ke(this,"handleNotification",e=>{if(!e.params)return;let l=e;if(l.method==="statusNotification"&&tt.set(Al,l.params),l.method==="didChangeStatus"&&tt.set(Al,l.params),l.method==="window/logMessage"){let{type:n,message:i}=l.params;switch(n){case 1:ve.error("[GitHub Copilot]",i);break;case 2:ve.warn("[GitHub Copilot]",i);break;case 3:ve.debug("[GitHub Copilot]",i);break;default:ve.log("[GitHub Copilot]",i);break}}});this.copilotSettings=e.copilotSettings??{},this.onNotification(this.handleNotification),this.attachInitializeListener()}attachInitializeListener(){this.initializePromise.then(()=>{this.sendConfiguration()})}async reInitialize(){ve.log("#reInitialize: Re-initializing LSP connection"),this.initializePromise=this.initialize(),await this.initializePromise,await this.sendConfiguration()}async sendConfiguration(){let e=this.copilotSettings;!e||Object.keys(e).length===0||(await this.notify("workspace/didChangeConfiguration",{settings:e}),ve.debug("#sendConfiguration: Configuration sent",e))}async _request(e,l){return await this.request(e,l)}async notify(e,l){return ve.debug("#notify",e,l),super.notify(e,l)}getInitializationOptions(){let e={name:"marimo",version:"0.1.0"};return{...super.getInitializationOptions(),workspaceFolders:[],capabilities:{workspace:{workspaceFolders:!1}},initializationOptions:{editorInfo:e,editorPluginInfo:e}}}isDisabled(){return!er()}async textDocumentDidOpen(e){return this.isDisabled()?e:(this.hasOpenedDocument=!0,super.textDocumentDidOpen(e))}async textDocumentCompletion(e){return[]}async textDocumentDidChange(e){if(this.isDisabled())return e;this.hasOpenedDocument||await this.textDocumentDidOpen({textDocument:{uri:e.textDocument.uri,languageId:"python",version:e.textDocument.version,text:e.contentChanges[0].text}});let l=e.contentChanges;l.length!==1&&ve.warn("#textDocumentDidChange: Multiple changes detected. This is not supported.",l);let n=l[0];"range"in n&&ve.warn("#textDocumentDidChange: Copilot doesn't support range changes.",n);let i=Er(n.text);return super.textDocumentDidChange({...e,contentChanges:[{text:i}],textDocument:Od.VersionedTextDocumentIdentifier.create(e.textDocument.uri,++this.documentVersion)})}textDocumentHover(e){return Promise.resolve({contents:[]})}signOut(){return this._request("signOut",{})}async signInInitiate(){ve.log("#signInInitiate: Starting sign-in flow");try{let e=await this._request("signIn",{});return ve.log("#signInInitiate: Sign-in flow started successfully"),e}catch(e){throw ve.warn("#signInInitiate: Failed to start sign-in flow",e),e}}async signInConfirm(e){ve.log("#signInConfirm: Confirming sign-in");try{let l=await this._request("signInConfirm",e);return ve.log("#signInConfirm: Sign-in confirmed successfully"),l}catch(l){throw ve.warn("#signInConfirm: Failed to confirm sign-in",l),l}}async signedIn(){try{let{status:e}=await this._request("checkStatus",{});return ve.log("#checkStatus: Status check completed",{status:e}),e==="SignedIn"||e==="AlreadySignedIn"||e==="OK"}catch(e){throw ve.warn("#signedIn: Failed to check sign-in status",e),e}}async getCompletion(e){if(this.isDisabled())return null;let l=this.documentVersion;if(e.textDocument.version=l,l===0)return null;Rd(l);let n=await this.throttledGetCompletionInternal(e,l);return $d(l),l===this.documentVersion?n??null:null}},Gd=Gr(),Ud=$r(),qd=class extends Ud.Transport{constructor(e){super();Ke(this,"pendingSubscriptions",[]);Ke(this,"needsReInitialization",!1);this.delegate=void 0,this.pendingSubscriptions=[],this.options={retries:e.retries??3,retryDelayMs:e.retryDelayMs??1e3,maxTimeoutMs:e.maxTimeoutMs??5e3,getWsUrl:e.getWsUrl,waitForReady:e.waitForReady,showError:e.showError}}subscribe(...e){super.subscribe(...e);let[l,n]=e;this.pendingSubscriptions.push({event:l,handler:n}),this.delegate&&this.delegate.subscribe(l,n)}unsubscribe(...e){let l=super.unsubscribe(...e),[n,i]=e;if(this.delegate&&this.delegate.unsubscribe(n,i),i)if(n){let r=this.pendingSubscriptions.findIndex(a=>a.event===n&&a.handler===i);r>-1&&this.pendingSubscriptions.splice(r,1)}else this.pendingSubscriptions=this.pendingSubscriptions.filter(r=>r.handler!==i);else n?this.pendingSubscriptions=this.pendingSubscriptions.filter(r=>r.event!==n):this.pendingSubscriptions=[];return l}createDelegate(){let e=new Gd.WebSocketTransport(this.options.getWsUrl());for(let{event:l,handler:n}of this.pendingSubscriptions)e.subscribe(l,n);return e}async tryConnect(){for(let e=1;e<=this.options.retries;e++)try{this.delegate||(this.delegate=this.createDelegate()),await this.delegate.connect(),G.log("Copilot#connect: Connected successfully");return}catch(l){if(G.warn(`Copilot#connect: Connection attempt ${e}/${this.options.retries} failed`,l),e===this.options.retries)throw this.delegate=void 0,this.needsReInitialization=!0,this.options.showError("GitHub Copilot Connection Error",`Failed to connect to GitHub Copilot. Please check your settings and try again.
1
+ var Ir=Object.defineProperty;var Kr=(t,e,l)=>e in t?Ir(t,e,{enumerable:!0,configurable:!0,writable:!0,value:l}):t[e]=l;var Ke=(t,e,l)=>Kr(t,typeof e!="symbol"?e+"":e,l);var at;import{s as $l}from"./chunk-LvLJmgfZ.js";import{d as Nt,i as tt,l as lt,n as It,o as Mr,p as nt,u as st}from"./useEvent-D91BmmQi.js";import{t as Dr}from"./react-Bj1aDYRI.js";import{$r as Ar,Br as Vl,Cn as Pr,Jt as Er,Pn as Ll,Si as Ol,W as _r,an as Br,br as Jt,dn as mt,fn as zr,gr as Fr,hi as Tr,hn as Rr,ii as $r,in as Vr,lr as Lr,lt as Or,ni as Hr,ri as Gr,sn as Hl,un as pe,ur as Ur,yr as qr,zr as Kt,zt as re}from"./cells-Jdt48eTG.js";import{t as Gl}from"./react-dom-CSu739Rf.js";import{t as Ie}from"./compiler-runtime-B3qBwwSJ.js";import{t as Wr}from"./isObject-DvLSfCY5.js";import{t as Ul}from"./get-C-qh_et5.js";import{t as Qr}from"./merge-_9WLTEyt.js";import{t as Yr}from"./debounce-DhnxH9Rh.js";import{_ as G,l as Zr,p as ql}from"./useEventListener-BR0C1MaI.js";import{t as Xt}from"./invariant-BUdrueMv.js";import{D as Jr,E as Xr,S as ea,T as Wl,_ as el,c as ta,f as la,l as na,n as sa,p as ia,x as Ql,y as Yl}from"./utils-DIGrmLDO.js";import{S as ot,r as ra,y as aa}from"./config-DczIUz0b.js";import{i as oa,n as tl,t as ca}from"./switch-ecwOrzz3.js";import{t as Pe}from"./cn-DCUzRj2J.js";import{t as da}from"./jsx-runtime-BqBOg78p.js";import{a as ua,i as ma,n as Zl,r as ha,t as Jl}from"./multi-map-rafH3cg3.js";import{a as Xl,c as ht,d as pa,i as ga,o as Mt,r as fa,s as en,t as xa}from"./popover-UExmgBsf.js";import{i as ll,l as De,n as ya,r as va,s as ba,t as ja}from"./select-5i7URBEn.js";import{a as ka,c as Dt,d as tn,f as ln,p as wa,r as Ca,s as Sa,t as Na,u as nn}from"./dropdown-menu-D1A3cFC8.js";import{t as $e}from"./label-DTR8T0AE.js";import{t as qe}from"./tooltip-Gcwqb_SK.js";import{n as Ia,r as sn,t as ie}from"./button-D9nb17Rw.js";import{St as Ve,Wt as rn,at as Ka,ct as an}from"./dist-BrR4M-k3.js";import{A as Ma,D as Da,F as on,I as cn,M as Aa,N as Pa,_ as Ea,j as _a,m as Ba,p as za,v as Fa,y as Ta}from"./dist-CHcznzB-.js";import{s as dn}from"./arrays-DYDL-3-i.js";import{n as Qe}from"./once-DRroIaBz.js";import{t as Ra}from"./main-B0OX4z33.js";import{i as $a,n as Va,t as nl}from"./strings-md4mFbOQ.js";import{r as pt,t as La}from"./requests-DIwGYs0l.js";import{t as Ye}from"./createLucideIcon-D5guW7EU.js";import{t as Oa}from"./check-BH35Ndha.js";import{r as Ha,t as sl}from"./x-C-6liIBr.js";import{t as Ga}from"./chevron-right-CG5QYXYk.js";import{u as Ua}from"./toDate-B5A0DFEz.js";import{t as qa}from"./copy-BwrPA9zQ.js";import{n as At,t as un}from"./spinner-Bhir8k53.js";import{t as Wa}from"./plus-BgB18UzY.js";import{t as mn}from"./refresh-cw-DHwG4Mac.js";import{$ as Le,B as Qa,C as Ya,D as Za,G as Pt,J as Ja,O as Et,S as hn,V as il,X as pn,_ as Xa,at as rl,b as eo,ct as al,et as gn,g as to,lt as lo,nt as no,o as gt,r as Oe,rt as so,st as _t,ut as Bt,w as ft}from"./input-BX98vgAu.js";import{a as V,c as R,d as H,g as io,i as ro,l as $,o as U,p as ao,r as oo,s as co,u as T,v as ol,y as fn}from"./textarea-DapfQSws.js";import{t as xn}from"./trash-2-CKlZA04n.js";import{t as cl}from"./triangle-alert-B8l157gP.js";import{t as xt}from"./badge-C7-HR1IO.js";import{t as Be}from"./use-toast-T0_cQDma.js";import{t as uo}from"./useTheme-Cb4Wekek.js";import{n as mo}from"./copy-BCF-tANo.js";import{B as yt,E as ho,I as yn,M as dl,N as ct,O as ul,P as He,R as vn,V as zt,_ as po,j as Ze,k as ze,l as go,m as fo,p as xo,t as bn,v as jn,y as yo,z as vo}from"./usePress-CfcdTqJM.js";import{t as kn}from"./SSRProvider-kyGHZp36.js";import{_ as wn,a as ml,c as Ft,d as bo,f as Je,g as it,m as dt,p as Cn,s as jo,t as ko,u as Sn,v as wo}from"./RSPContexts-CINae4Gg.js";import{t as Tt}from"./context-B3MsQb-b.js";import{n as Co}from"./useDebounce-CLMpJfhX.js";import{a as So,c as No,n as Io,o as Ko,s as Mo,t as Do}from"./dialog-Dj0qTFnG.js";import{i as Ao,r as Po,t as Eo}from"./useHotkey-Cm0DaHEJ.js";import{r as _o}from"./errors-TZBmrJmc.js";import{t as ae}from"./kbd-B3Breaz2.js";import{t as de}from"./links-Dpap8NI2.js";import{n as Nn,r as Bo,t as In}from"./alert-DvqcBMUv.js";import{n as zo,t as vt}from"./error-banner-C6aBa98y.js";import{n as Kn}from"./useAsyncData-BFC6lWG9.js";import{a as Fo,i as Rt,n as To,o as Mn,r as hl,t as Ro}from"./table-DPyRV1LT.js";import{t as pl}from"./renderShortcut-DZpkrZaP.js";import{n as $o,t as Vo}from"./azure-ZuB1zQ8Q.js";import{a as Lo,i as Oo,n as Ho,r as Go,t as Uo}from"./card-BsOjr9wU.js";var qo="Expected a function";function Wo(t,e,l){var s=!0,i=!0;if(typeof t!="function")throw TypeError(qo);return Wr(l)&&(s="leading"in l?!!l.leading:s,i="trailing"in l?!!l.trailing:i),Yr(t,e,{leading:s,maxWait:e,trailing:i})}var Qo=Wo,gl=Ye("brain",[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]]),Dn=Ye("circle-check-big",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]),An=Ye("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]),Yo=Ye("flask-conical",[["path",{d:"M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",key:"18mbvz"}],["path",{d:"M6.453 15h11.094",key:"3shlmq"}],["path",{d:"M8.5 2h7",key:"csnxdl"}]]),Pn=Ye("folder-cog",[["path",{d:"M10.3 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.98a2 2 0 0 1 1.69.9l.66 1.2A2 2 0 0 0 12 6h8a2 2 0 0 1 2 2v3.3",key:"128dxu"}],["path",{d:"m14.305 19.53.923-.382",key:"3m78fa"}],["path",{d:"m15.228 16.852-.923-.383",key:"npixar"}],["path",{d:"m16.852 15.228-.383-.923",key:"5xggr7"}],["path",{d:"m16.852 20.772-.383.924",key:"dpfhf9"}],["path",{d:"m19.148 15.228.383-.923",key:"1reyyz"}],["path",{d:"m19.53 21.696-.382-.924",key:"1goivc"}],["path",{d:"m20.772 16.852.924-.383",key:"htqkph"}],["path",{d:"m20.772 19.148.924.383",key:"9w9pjp"}],["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}]]),Zo=Ye("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]),En=Ye("plug",[["path",{d:"M12 22v-5",key:"1ega77"}],["path",{d:"M15 8V2",key:"18g5xt"}],["path",{d:"M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z",key:"1xoxul"}],["path",{d:"M9 8V2",key:"14iosj"}]]),Jo=Ye("square-check-big",[["path",{d:"M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344",key:"2acyp4"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]),g=$l(Dr(),1);function _n(t,e){let l=(0,g.useRef)(!0),s=(0,g.useRef)(null);zt(()=>(l.current=!0,()=>{l.current=!1}),[]),zt(()=>{l.current?l.current=!1:(!s.current||e.some((i,r)=>!Object.is(i,s[r])))&&t(),s.current=e},e)}function Bn(t,e){let{collection:l,onLoadMore:s,scrollOffset:i=1}=t,r=(0,g.useRef)(null),a=xo(c=>{for(let o of c)o.isIntersecting&&s&&s()});zt(()=>(e.current&&(r.current=new IntersectionObserver(a,{root:it(e==null?void 0:e.current),rootMargin:`0px ${100*i}% ${100*i}% ${100*i}%`}),r.current.observe(e.current)),()=>{r.current&&r.current.disconnect()}),[l,e,i])}function zn(t){let e=g.version.split(".");return parseInt(e[0],10)>=19?t:t?"true":void 0}var Xo="react-aria-clear-focus",ec="react-aria-focus",tc=500;function lc(t){let{isDisabled:e,onLongPressStart:l,onLongPressEnd:s,onLongPress:i,threshold:r=tc,accessibilityDescription:a}=t,c=(0,g.useRef)(void 0),{addGlobalListener:o,removeGlobalListener:d}=fo(),{pressProps:u}=bn({isDisabled:e,onPressStart(m){if(m.continuePropagation(),(m.pointerType==="mouse"||m.pointerType==="touch")&&(l&&l({...m,type:"longpressstart"}),c.current=setTimeout(()=>{m.target.dispatchEvent(new PointerEvent("pointercancel",{bubbles:!0})),yn(m.target).activeElement!==m.target&&ul(m.target),i&&i({...m,type:"longpress"}),c.current=void 0},r),m.pointerType==="touch")){let p=f=>{f.preventDefault()};o(m.target,"contextmenu",p,{once:!0}),o(window,"pointerup",()=>{setTimeout(()=>{d(m.target,"contextmenu",p)},30)},{once:!0})}},onPressEnd(m){c.current&&clearTimeout(c.current),s&&(m.pointerType==="mouse"||m.pointerType==="touch")&&s({...m,type:"longpressend"})}});return{longPressProps:ze(u,Cn(i&&!e?a:void 0))}}function nc(t,e){let l=e==null?void 0:e.isDisabled,[s,i]=(0,g.useState)(!1);return zt(()=>{if(t!=null&&t.current&&!l){let r=()=>{t.current&&i(!!Ft(t.current,{tabbable:!0}).nextNode())};r();let a=new MutationObserver(r);return a.observe(t.current,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["tabIndex","disabled"]}),()=>{a.disconnect()}}}),l?!1:s}function Fn(t){let e=ic(yn(t));e!==t&&(e&&sc(e,t),t&&Tn(t,e))}function sc(t,e){t.dispatchEvent(new FocusEvent("blur",{relatedTarget:e})),t.dispatchEvent(new FocusEvent("focusout",{bubbles:!0,relatedTarget:e}))}function Tn(t,e){t.dispatchEvent(new FocusEvent("focus",{relatedTarget:e})),t.dispatchEvent(new FocusEvent("focusin",{bubbles:!0,relatedTarget:e}))}function ic(t){let e=ct(t),l=e==null?void 0:e.getAttribute("aria-activedescendant");return l&&t.getElementById(l)||e}function fl(t){return ho()?t.altKey:t.ctrlKey}function $t(t,e){var i,r;let l=`[data-key="${CSS.escape(String(e))}"]`,s=(i=t.current)==null?void 0:i.dataset.collection;return s&&(l=`[data-collection="${CSS.escape(s)}"]${l}`),(r=t.current)==null?void 0:r.querySelector(l)}var Rn=new WeakMap;function rc(t){let e=yt();return Rn.set(t,e),e}function ac(t){return Rn.get(t)}var oc=1e3;function cc(t){let{keyboardDelegate:e,selectionManager:l,onTypeSelect:s}=t,i=(0,g.useRef)({search:"",timeout:void 0}).current;return{typeSelectProps:{onKeyDownCapture:e.getKeyForSearch?r=>{let a=dc(r.key);if(!(!a||r.ctrlKey||r.metaKey||!Ze(r.currentTarget,He(r))||i.search.length===0&&a===" ")){if(a===" "&&i.search.trim().length>0&&(r.preventDefault(),"continuePropagation"in r||r.stopPropagation()),i.search+=a,e.getKeyForSearch!=null){let c=e.getKeyForSearch(i.search,l.focusedKey);c??(c=e.getKeyForSearch(i.search)),c!=null&&(l.setFocusedKey(c),s&&s(c))}clearTimeout(i.timeout),i.timeout=setTimeout(()=>{i.search=""},oc)}}:void 0}}}function dc(t){return t.length===1||!/^[A-Z]/i.test(t)?t:""}var uc=Gl();function mc(t){let{selectionManager:e,keyboardDelegate:l,ref:s,autoFocus:i=!1,shouldFocusWrap:r=!1,disallowEmptySelection:a=!1,disallowSelectAll:c=!1,escapeKeyBehavior:o="clearSelection",selectOnFocus:d=e.selectionBehavior==="replace",disallowTypeAhead:u=!1,shouldUseVirtualFocus:m,allowsTabNavigation:p=!1,scrollRef:f=s,linkBehavior:y="action"}=t,{direction:j}=Tt(),v=jn(),N=b=>{var z,F,q,Q,S,W,ee,oe,ce,ge,ue,fe;if(b.altKey&&b.key==="Tab"&&b.preventDefault(),!s.current||!Ze(s.current,He(b)))return;let P=(E,J)=>{if(E!=null){if(e.isLink(E)&&y==="selection"&&d&&!fl(b)){(0,uc.flushSync)(()=>{e.setFocusedKey(E,J)});let Z=$t(s,E),Y=e.getItemProps(E);Z&&v.open(Z,b,Y.href,Y.routerOptions);return}if(e.setFocusedKey(E,J),e.isLink(E)&&y==="override")return;b.shiftKey&&e.selectionMode==="multiple"?e.extendSelection(E):d&&!fl(b)&&e.replaceSelection(E)}};switch(b.key){case"ArrowDown":if(l.getKeyBelow){let E=e.focusedKey==null?(z=l.getFirstKey)==null?void 0:z.call(l):(F=l.getKeyBelow)==null?void 0:F.call(l,e.focusedKey);E==null&&r&&(E=(q=l.getFirstKey)==null?void 0:q.call(l,e.focusedKey)),E!=null&&(b.preventDefault(),P(E))}break;case"ArrowUp":if(l.getKeyAbove){let E=e.focusedKey==null?(Q=l.getLastKey)==null?void 0:Q.call(l):(S=l.getKeyAbove)==null?void 0:S.call(l,e.focusedKey);E==null&&r&&(E=(W=l.getLastKey)==null?void 0:W.call(l,e.focusedKey)),E!=null&&(b.preventDefault(),P(E))}break;case"ArrowLeft":if(l.getKeyLeftOf){let E=e.focusedKey==null?null:(ee=l.getKeyLeftOf)==null?void 0:ee.call(l,e.focusedKey);E==null&&r&&(E=j==="rtl"?(oe=l.getFirstKey)==null?void 0:oe.call(l,e.focusedKey):(ce=l.getLastKey)==null?void 0:ce.call(l,e.focusedKey)),E!=null&&(b.preventDefault(),P(E,j==="rtl"?"first":"last"))}break;case"ArrowRight":if(l.getKeyRightOf){let E=e.focusedKey==null?null:(ge=l.getKeyRightOf)==null?void 0:ge.call(l,e.focusedKey);E==null&&r&&(E=j==="rtl"?(ue=l.getLastKey)==null?void 0:ue.call(l,e.focusedKey):(fe=l.getFirstKey)==null?void 0:fe.call(l,e.focusedKey)),E!=null&&(b.preventDefault(),P(E,j==="rtl"?"last":"first"))}break;case"Home":if(l.getFirstKey){if(e.focusedKey===null&&b.shiftKey)return;b.preventDefault();let E=l.getFirstKey(e.focusedKey,dt(b));e.setFocusedKey(E),E!=null&&(dt(b)&&b.shiftKey&&e.selectionMode==="multiple"?e.extendSelection(E):d&&e.replaceSelection(E))}break;case"End":if(l.getLastKey){if(e.focusedKey===null&&b.shiftKey)return;b.preventDefault();let E=l.getLastKey(e.focusedKey,dt(b));e.setFocusedKey(E),E!=null&&(dt(b)&&b.shiftKey&&e.selectionMode==="multiple"?e.extendSelection(E):d&&e.replaceSelection(E))}break;case"PageDown":if(l.getKeyPageBelow&&e.focusedKey!=null){let E=l.getKeyPageBelow(e.focusedKey);E!=null&&(b.preventDefault(),P(E))}break;case"PageUp":if(l.getKeyPageAbove&&e.focusedKey!=null){let E=l.getKeyPageAbove(e.focusedKey);E!=null&&(b.preventDefault(),P(E))}break;case"a":dt(b)&&e.selectionMode==="multiple"&&c!==!0&&(b.preventDefault(),e.selectAll());break;case"Escape":o==="clearSelection"&&!a&&e.selectedKeys.size!==0&&(b.stopPropagation(),b.preventDefault(),e.clearSelection());break;case"Tab":if(!p){if(b.shiftKey)s.current.focus();else{let E=Ft(s.current,{tabbable:!0}),J,Z;do Z=E.lastChild(),Z&&(J=Z);while(Z);let Y=ct();J&&(!dl(J)||Y&&!go(Y))&&ul(J)}break}}},C=(0,g.useRef)({top:0,left:0});_t(f,"scroll",()=>{var b,P;C.current={top:((b=f.current)==null?void 0:b.scrollTop)??0,left:((P=f.current)==null?void 0:P.scrollLeft)??0}});let w=b=>{var P,z;if(e.isFocused){Ze(b.currentTarget,He(b))||e.setFocused(!1);return}if(Ze(b.currentTarget,He(b))){if(e.setFocused(!0),e.focusedKey==null){let F=Q=>{Q!=null&&(e.setFocusedKey(Q),d&&!e.isSelected(Q)&&e.replaceSelection(Q))},q=b.relatedTarget;q&&b.currentTarget.compareDocumentPosition(q)&Node.DOCUMENT_POSITION_FOLLOWING?F(e.lastSelectedKey??((P=l.getLastKey)==null?void 0:P.call(l))):F(e.firstSelectedKey??((z=l.getFirstKey)==null?void 0:z.call(l)))}else f.current&&(f.current.scrollTop=C.current.top,f.current.scrollLeft=C.current.left);if(e.focusedKey!=null&&f.current){let F=$t(s,e.focusedKey);F instanceof HTMLElement&&(!dl(F)&&!m&&ul(F),gn()==="keyboard"&&Je(F,{containingElement:s.current}))}}},h=b=>{Ze(b.currentTarget,b.relatedTarget)||e.setFocused(!1)},x=(0,g.useRef)(!1);_t(s,ec,m?b=>{let{detail:P}=b;b.stopPropagation(),e.setFocused(!0),(P==null?void 0:P.focusStrategy)==="first"&&(x.current=!0)}:void 0),_n(()=>{var b;if(x.current){let P=((b=l.getFirstKey)==null?void 0:b.call(l))??null;if(P==null){let z=ct();Fn(s.current),Tn(z,null),e.collection.size>0&&(x.current=!1)}else e.setFocusedKey(P),x.current=!1}},[e.collection]),_n(()=>{e.collection.size>0&&(x.current=!1)},[e.focusedKey]),_t(s,Xo,m?b=>{var P;b.stopPropagation(),e.setFocused(!1),(P=b.detail)!=null&&P.clearFocusKey&&e.setFocusedKey(null)}:void 0);let K=(0,g.useRef)(i),D=(0,g.useRef)(!1);(0,g.useEffect)(()=>{var b,P;if(K.current){let z=null;i==="first"&&(z=((b=l.getFirstKey)==null?void 0:b.call(l))??null),i==="last"&&(z=((P=l.getLastKey)==null?void 0:P.call(l))??null);let F=e.selectedKeys;if(F.size){for(let q of F)if(e.canSelectItem(q)){z=q;break}}e.setFocused(!0),e.setFocusedKey(z),z==null&&!m&&s.current&&Le(s.current),e.collection.size>0&&(K.current=!1,D.current=!0)}});let B=(0,g.useRef)(e.focusedKey),I=(0,g.useRef)(null);(0,g.useEffect)(()=>{if(e.isFocused&&e.focusedKey!=null&&(e.focusedKey!==B.current||D.current)&&f.current&&s.current){let b=gn(),P=$t(s,e.focusedKey);if(!(P instanceof HTMLElement))return;(b==="keyboard"||D.current)&&(I.current&&cancelAnimationFrame(I.current),I.current=requestAnimationFrame(()=>{f.current&&(bo(f.current,P),b!=="virtual"&&Je(P,{containingElement:s.current}))}))}!m&&e.isFocused&&e.focusedKey==null&&B.current!=null&&s.current&&Le(s.current),B.current=e.focusedKey,D.current=!1}),(0,g.useEffect)(()=>()=>{I.current&&cancelAnimationFrame(I.current)},[]),_t(s,"react-aria-focus-scope-restore",b=>{b.preventDefault(),e.setFocused(!0)});let _={onKeyDown:N,onFocus:w,onBlur:h,onMouseDown(b){f.current===He(b)&&b.preventDefault()}},{typeSelectProps:M}=cc({keyboardDelegate:l,selectionManager:e});u||(_=ze(M,_));let k;m||(k=e.focusedKey==null?0:-1);let A=rc(e.collection);return{collectionProps:ze(_,{tabIndex:k,"data-collection":A})}}function $n(t){let{id:e,selectionManager:l,key:s,ref:i,shouldSelectOnPressUp:r,shouldUseVirtualFocus:a,focus:c,isDisabled:o,onAction:d,allowsDifferentPressOrigin:u,linkBehavior:m="action"}=t,p=jn();e=yt(e);let f=S=>{if(S.pointerType==="keyboard"&&fl(S))l.toggleSelection(s);else{if(l.selectionMode==="none")return;if(l.isLink(s)){if(m==="selection"&&i.current){let W=l.getItemProps(s);p.open(i.current,S,W.href,W.routerOptions),l.setSelectedKeys(l.selectedKeys);return}else if(m==="override"||m==="none")return}l.selectionMode==="single"?l.isSelected(s)&&!l.disallowEmptySelection?l.toggleSelection(s):l.replaceSelection(s):S&&S.shiftKey?l.extendSelection(s):l.selectionBehavior==="toggle"||S&&(dt(S)||S.pointerType==="touch"||S.pointerType==="virtual")?l.toggleSelection(s):l.replaceSelection(s)}};(0,g.useEffect)(()=>{s===l.focusedKey&&l.isFocused&&(a?Fn(i.current):c?c():ct()!==i.current&&i.current&&Le(i.current))},[i,s,l.focusedKey,l.childFocusStrategy,l.isFocused,a]),o||(o=l.isDisabled(s));let y={};!a&&!o?y={tabIndex:s===l.focusedKey?0:-1,onFocus(S){He(S)===i.current&&l.setFocusedKey(s)}}:o&&(y.onMouseDown=S=>{S.preventDefault()}),(0,g.useEffect)(()=>{o&&l.focusedKey===s&&l.setFocusedKey(null)},[l,o,s]);let j=l.isLink(s)&&m==="override",v=d&&t.UNSTABLE_itemBehavior==="action",N=l.isLink(s)&&m!=="selection"&&m!=="none",C=!o&&l.canSelectItem(s)&&!j&&!v,w=(d||N)&&!o,h=w&&(l.selectionBehavior==="replace"?!C:!C||l.isEmpty),x=w&&C&&l.selectionBehavior==="replace",K=h||x,D=(0,g.useRef)(null),B=K&&C,I=(0,g.useRef)(!1),_=(0,g.useRef)(!1),M=l.getItemProps(s),k=S=>{if(d){var W;d(),(W=i.current)==null||W.dispatchEvent(new CustomEvent("react-aria-item-action",{bubbles:!0}))}N&&i.current&&p.open(i.current,S,M.href,M.routerOptions)},A={ref:i};if(r?(A.onPressStart=S=>{D.current=S.pointerType,I.current=B,S.pointerType==="keyboard"&&(!K||Ln(S.key))&&f(S)},u?(A.onPressUp=h?void 0:S=>{S.pointerType==="mouse"&&C&&f(S)},A.onPress=h?k:S=>{S.pointerType!=="keyboard"&&S.pointerType!=="mouse"&&C&&f(S)}):A.onPress=S=>{if(h||x&&S.pointerType!=="mouse"){if(S.pointerType==="keyboard"&&!Vn(S.key))return;k(S)}else S.pointerType!=="keyboard"&&C&&f(S)}):(A.onPressStart=S=>{D.current=S.pointerType,I.current=B,_.current=h,C&&(S.pointerType==="mouse"&&!h||S.pointerType==="keyboard"&&(!w||Ln(S.key)))&&f(S)},A.onPress=S=>{(S.pointerType==="touch"||S.pointerType==="pen"||S.pointerType==="virtual"||S.pointerType==="keyboard"&&K&&Vn(S.key)||S.pointerType==="mouse"&&_.current)&&(K?k(S):C&&f(S))}),y["data-collection"]=ac(l.collection),y["data-key"]=s,A.preventFocusOnPress=a,a&&(A=ze(A,{onPressStart(S){S.pointerType!=="touch"&&(l.setFocused(!0),l.setFocusedKey(s))},onPress(S){S.pointerType==="touch"&&(l.setFocused(!0),l.setFocusedKey(s))}})),M)for(let S of["onPressStart","onPressEnd","onPressChange","onPress","onPressUp","onClick"])M[S]&&(A[S]=vn(A[S],M[S]));let{pressProps:b,isPressed:P}=bn(A),z=x?S=>{D.current==="mouse"&&(S.stopPropagation(),S.preventDefault(),k(S))}:void 0,{longPressProps:F}=lc({isDisabled:!B,onLongPress(S){S.pointerType==="touch"&&(f(S),l.setSelectionBehavior("toggle"))}}),q=S=>{D.current==="touch"&&I.current&&S.preventDefault()},Q=m!=="none"&&l.isLink(s)?S=>{po.isOpening||S.preventDefault()}:void 0;return{itemProps:ze(y,C||h||a&&!o?b:{},B?F:{},{onDoubleClick:z,onDragStartCapture:q,onClick:Q,id:e},a?{onMouseDown:S=>S.preventDefault()}:void 0),isPressed:P,isSelected:l.isSelected(s),isFocused:l.isFocused&&l.focusedKey===s,isDisabled:o,allowsSelection:C,hasAction:K}}function Vn(t){return t==="Enter"}function Ln(t){return t===" "}var On=class{getItemRect(t){let e=this.ref.current;if(!e)return null;let l=t==null?null:$t(this.ref,t);if(!l)return null;let s=e.getBoundingClientRect(),i=l.getBoundingClientRect();return{x:i.left-s.left-e.clientLeft+e.scrollLeft,y:i.top-s.top-e.clientTop+e.scrollTop,width:i.width,height:i.height}}getContentSize(){let t=this.ref.current;return{width:(t==null?void 0:t.scrollWidth)??0,height:(t==null?void 0:t.scrollHeight)??0}}getVisibleRect(){let t=this.ref.current;return{x:(t==null?void 0:t.scrollLeft)??0,y:(t==null?void 0:t.scrollTop)??0,width:(t==null?void 0:t.clientWidth)??0,height:(t==null?void 0:t.clientHeight)??0}}constructor(t){this.ref=t}},xl=class{isDisabled(t){var e;return this.disabledBehavior==="all"&&(((e=t.props)==null?void 0:e.isDisabled)||this.disabledKeys.has(t.key))}findNextNonDisabled(t,e){let l=t;for(;l!=null;){let s=this.collection.getItem(l);if((s==null?void 0:s.type)==="item"&&!this.isDisabled(s))return l;l=e(l)}return null}getNextKey(t){let e=t;return e=this.collection.getKeyAfter(e),this.findNextNonDisabled(e,l=>this.collection.getKeyAfter(l))}getPreviousKey(t){let e=t;return e=this.collection.getKeyBefore(e),this.findNextNonDisabled(e,l=>this.collection.getKeyBefore(l))}findKey(t,e,l){let s=t,i=this.layoutDelegate.getItemRect(s);if(!i||s==null)return null;let r=i;do{if(s=e(s),s==null)break;i=this.layoutDelegate.getItemRect(s)}while(i&&l(r,i)&&s!=null);return s}isSameRow(t,e){return t.y===e.y||t.x!==e.x}isSameColumn(t,e){return t.x===e.x||t.y!==e.y}getKeyBelow(t){return this.layout==="grid"&&this.orientation==="vertical"?this.findKey(t,e=>this.getNextKey(e),this.isSameRow):this.getNextKey(t)}getKeyAbove(t){return this.layout==="grid"&&this.orientation==="vertical"?this.findKey(t,e=>this.getPreviousKey(e),this.isSameRow):this.getPreviousKey(t)}getNextColumn(t,e){return e?this.getPreviousKey(t):this.getNextKey(t)}getKeyRightOf(t){let e=this.direction==="ltr"?"getKeyRightOf":"getKeyLeftOf";return this.layoutDelegate[e]?(t=this.layoutDelegate[e](t),this.findNextNonDisabled(t,l=>this.layoutDelegate[e](l))):this.layout==="grid"?this.orientation==="vertical"?this.getNextColumn(t,this.direction==="rtl"):this.findKey(t,l=>this.getNextColumn(l,this.direction==="rtl"),this.isSameColumn):this.orientation==="horizontal"?this.getNextColumn(t,this.direction==="rtl"):null}getKeyLeftOf(t){let e=this.direction==="ltr"?"getKeyLeftOf":"getKeyRightOf";return this.layoutDelegate[e]?(t=this.layoutDelegate[e](t),this.findNextNonDisabled(t,l=>this.layoutDelegate[e](l))):this.layout==="grid"?this.orientation==="vertical"?this.getNextColumn(t,this.direction==="ltr"):this.findKey(t,l=>this.getNextColumn(l,this.direction==="ltr"),this.isSameColumn):this.orientation==="horizontal"?this.getNextColumn(t,this.direction==="ltr"):null}getFirstKey(){let t=this.collection.getFirstKey();return this.findNextNonDisabled(t,e=>this.collection.getKeyAfter(e))}getLastKey(){let t=this.collection.getLastKey();return this.findNextNonDisabled(t,e=>this.collection.getKeyBefore(e))}getKeyPageAbove(t){let e=this.ref.current,l=this.layoutDelegate.getItemRect(t);if(!l)return null;if(e&&!wn(e))return this.getFirstKey();let s=t;if(this.orientation==="horizontal"){let i=Math.max(0,l.x+l.width-this.layoutDelegate.getVisibleRect().width);for(;l&&l.x>i&&s!=null;)s=this.getKeyAbove(s),l=s==null?null:this.layoutDelegate.getItemRect(s)}else{let i=Math.max(0,l.y+l.height-this.layoutDelegate.getVisibleRect().height);for(;l&&l.y>i&&s!=null;)s=this.getKeyAbove(s),l=s==null?null:this.layoutDelegate.getItemRect(s)}return s??this.getFirstKey()}getKeyPageBelow(t){let e=this.ref.current,l=this.layoutDelegate.getItemRect(t);if(!l)return null;if(e&&!wn(e))return this.getLastKey();let s=t;if(this.orientation==="horizontal"){let i=Math.min(this.layoutDelegate.getContentSize().width,l.y-l.width+this.layoutDelegate.getVisibleRect().width);for(;l&&l.x<i&&s!=null;)s=this.getKeyBelow(s),l=s==null?null:this.layoutDelegate.getItemRect(s)}else{let i=Math.min(this.layoutDelegate.getContentSize().height,l.y-l.height+this.layoutDelegate.getVisibleRect().height);for(;l&&l.y<i&&s!=null;)s=this.getKeyBelow(s),l=s==null?null:this.layoutDelegate.getItemRect(s)}return s??this.getLastKey()}getKeyForSearch(t,e){if(!this.collator)return null;let l=this.collection,s=e||this.getFirstKey();for(;s!=null;){let i=l.getItem(s);if(!i)return null;let r=i.textValue.slice(0,t.length);if(i.textValue&&this.collator.compare(r,t)===0)return s;s=this.getNextKey(s)}return null}constructor(...t){if(t.length===1){let e=t[0];this.collection=e.collection,this.ref=e.ref,this.collator=e.collator,this.disabledKeys=e.disabledKeys||new Set,this.disabledBehavior=e.disabledBehavior||"all",this.orientation=e.orientation||"vertical",this.direction=e.direction,this.layout=e.layout||"stack",this.layoutDelegate=e.layoutDelegate||new On(e.ref)}else this.collection=t[0],this.disabledKeys=t[1],this.ref=t[2],this.collator=t[3],this.layout="stack",this.orientation="vertical",this.disabledBehavior="all",this.layoutDelegate=new On(this.ref);this.layout==="stack"&&this.orientation==="vertical"&&(this.getKeyLeftOf=void 0,this.getKeyRightOf=void 0)}};function Hn(t){let{selectionManager:e,collection:l,disabledKeys:s,ref:i,keyboardDelegate:r,layoutDelegate:a}=t,c=Sn({usage:"search",sensitivity:"base"}),o=e.disabledBehavior,d=(0,g.useMemo)(()=>r||new xl({collection:l,disabledKeys:s,disabledBehavior:o,ref:i,collator:c,layoutDelegate:a}),[r,a,l,s,i,c,o]),{collectionProps:u}=mc({...t,ref:i,selectionManager:e,keyboardDelegate:d});return{listProps:u}}var hc=class{build(t,e){return this.context=e,Gn(()=>this.iterateCollection(t))}*iterateCollection(t){let{children:e,items:l}=t;if(g.isValidElement(e)&&e.type===g.Fragment)yield*this.iterateCollection({children:e.props.children,items:l});else if(typeof e=="function"){if(!l)throw Error("props.children was a function but props.items is missing");let s=0;for(let i of l)yield*this.getFullNode({value:i,index:s},{renderer:e}),s++}else{let s=[];g.Children.forEach(e,r=>{r&&s.push(r)});let i=0;for(let r of s){let a=this.getFullNode({element:r,index:i},{});for(let c of a)i++,yield c}}}getKey(t,e,l,s){if(t.key!=null)return t.key;if(e.type==="cell"&&e.key!=null)return`${s}${e.key}`;let i=e.value;if(i!=null){let r=i.key??i.id;if(r==null)throw Error("No key found for item");return r}return s?`${s}.${e.index}`:`$.${e.index}`}getChildState(t,e){return{renderer:e.renderer||t.renderer}}*getFullNode(t,e,l,s){if(g.isValidElement(t.element)&&t.element.type===g.Fragment){let c=[];g.Children.forEach(t.element.props.children,d=>{c.push(d)});let o=t.index??0;for(let d of c)yield*this.getFullNode({element:d,index:o++},e,l,s);return}let i=t.element;if(!i&&t.value&&e&&e.renderer){let c=this.cache.get(t.value);if(c&&(!c.shouldInvalidate||!c.shouldInvalidate(this.context))){c.index=t.index,c.parentKey=s?s.key:null,yield c;return}i=e.renderer(t.value)}if(g.isValidElement(i)){let c=i.type;if(typeof c!="function"&&typeof c.getCollectionNode!="function"){let m=i.type;throw Error(`Unknown element <${m}> in collection.`)}let o=c.getCollectionNode(i.props,this.context),d=t.index??0,u=o.next();for(;!u.done&&u.value;){let m=u.value;t.index=d;let p=m.key??null;p??(p=m.element?null:this.getKey(i,t,e,l));let f=[...this.getFullNode({...m,key:p,index:d,wrapper:pc(t.wrapper,m.wrapper)},this.getChildState(e,m),l?`${l}${i.key}`:i.key,s)];for(let y of f){if(y.value=m.value??t.value??null,y.value&&this.cache.set(y.value,y),t.type&&y.type!==t.type)throw Error(`Unsupported type <${yl(y.type)}> in <${yl((s==null?void 0:s.type)??"unknown parent type")}>. Only <${yl(t.type)}> is supported.`);d++,yield y}u=o.next(f)}return}if(t.key==null||t.type==null)return;let r=this,a={type:t.type,props:t.props,key:t.key,parentKey:s?s.key:null,value:t.value??null,level:s?s.level+1:0,index:t.index,rendered:t.rendered,textValue:t.textValue??"","aria-label":t["aria-label"],wrapper:t.wrapper,shouldInvalidate:t.shouldInvalidate,hasChildNodes:t.hasChildNodes||!1,childNodes:Gn(function*(){if(!t.hasChildNodes||!t.childNodes)return;let c=0;for(let o of t.childNodes()){o.key!=null&&(o.key=`${a.key}${o.key}`);let d=r.getFullNode({...o,index:c},r.getChildState(e,o),a.key,a);for(let u of d)c++,yield u}})};yield a}constructor(){this.cache=new WeakMap}};function Gn(t){let e=[],l=null;return{*[Symbol.iterator](){for(let s of e)yield s;l||(l=t());for(let s of l)e.push(s),yield s}}}function pc(t,e){if(t&&e)return l=>t(e(l));if(t)return t;if(e)return e}function yl(t){return t[0].toUpperCase()+t.slice(1)}function Un(t,e,l){let s=(0,g.useMemo)(()=>new hc,[]),{children:i,items:r,collection:a}=t;return(0,g.useMemo)(()=>a||e(s.build({children:i,items:r},l)),[s,i,r,a,l,e])}function qn(t,e){return typeof e.getChildren=="function"?e.getChildren(t.key):t.childNodes}function gc(t){return fc(t,0)}function fc(t,e){if(e<0)return;let l=0;for(let s of t){if(l===e)return s;l++}}function vl(t,e,l){if(e.parentKey===l.parentKey)return e.index-l.index;let s=[...Wn(t,e),e],i=[...Wn(t,l),l],r=s.slice(0,i.length).findIndex((a,c)=>a!==i[c]);return r===-1?s.findIndex(a=>a===l)>=0?1:(i.findIndex(a=>a===e),-1):(e=s[r],l=i[r],e.index-l.index)}function Wn(t,e){let l=[],s=e;for(;(s==null?void 0:s.parentKey)!=null;)s=t.getItem(s.parentKey),s&&l.unshift(s);return l}var bl=new WeakMap;function jl(t,e){let{id:l}=bl.get(t)??{};if(!l)throw Error("Unknown list");return`${l}-${xc(e)}`}function xc(t){return typeof t=="string"?t.replace(/\s*/g,""):""+t}var Qn={};Qn={deselectedItem:t=>`${t.item} \u063A\u064A\u0631 \u0627\u0644\u0645\u062D\u062F\u062F`,longPressToSelect:"\u0627\u0636\u063A\u0637 \u0645\u0637\u0648\u0644\u064B\u0627 \u0644\u0644\u062F\u062E\u0648\u0644 \u0625\u0644\u0649 \u0648\u0636\u0639 \u0627\u0644\u062A\u062D\u062F\u064A\u062F.",select:"\u062A\u062D\u062F\u064A\u062F",selectedAll:"\u062C\u0645\u064A\u0639 \u0627\u0644\u0639\u0646\u0627\u0635\u0631 \u0627\u0644\u0645\u062D\u062F\u062F\u0629.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u0644\u0645 \u064A\u062A\u0645 \u062A\u062D\u062F\u064A\u062F \u0639\u0646\u0627\u0635\u0631",one:()=>`${e.number(t.count)} \u0639\u0646\u0635\u0631 \u0645\u062D\u062F\u062F`,other:()=>`${e.number(t.count)} \u0639\u0646\u0635\u0631 \u0645\u062D\u062F\u062F`})}.`,selectedItem:t=>`${t.item} \u0627\u0644\u0645\u062D\u062F\u062F`};var Yn={};Yn={deselectedItem:t=>`${t.item} \u043D\u0435 \u0435 \u0438\u0437\u0431\u0440\u0430\u043D.`,longPressToSelect:"\u041D\u0430\u0442\u0438\u0441\u043D\u0435\u0442\u0435 \u0438 \u0437\u0430\u0434\u0440\u044A\u0436\u0442\u0435 \u0437\u0430 \u0434\u0430 \u0432\u043B\u0435\u0437\u0435\u0442\u0435 \u0432 \u0438\u0437\u0431\u0438\u0440\u0430\u0442\u0435\u043B\u0435\u043D \u0440\u0435\u0436\u0438\u043C.",select:"\u0418\u0437\u0431\u0435\u0440\u0435\u0442\u0435",selectedAll:"\u0412\u0441\u0438\u0447\u043A\u0438 \u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438 \u0441\u0430 \u0438\u0437\u0431\u0440\u0430\u043D\u0438.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u041D\u044F\u043C\u0430 \u0438\u0437\u0431\u0440\u0430\u043D\u0438 \u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438",one:()=>`${e.number(t.count)} \u0438\u0437\u0431\u0440\u0430\u043D \u0435\u043B\u0435\u043C\u0435\u043D\u0442`,other:()=>`${e.number(t.count)} \u0438\u0437\u0431\u0440\u0430\u043D\u0438 \u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438`})}.`,selectedItem:t=>`${t.item} \u0438\u0437\u0431\u0440\u0430\u043D.`};var Zn={};Zn={deselectedItem:t=>`Polo\u017Eka ${t.item} nen\xED vybr\xE1na.`,longPressToSelect:"Dlouh\xFDm stisknut\xEDm p\u0159ejdete do re\u017Eimu v\xFDb\u011Bru.",select:"Vybrat",selectedAll:"Vybr\xE1ny v\u0161echny polo\u017Eky.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nevybr\xE1ny \u017E\xE1dn\xE9 polo\u017Eky",one:()=>`Vybr\xE1na ${e.number(t.count)} polo\u017Eka`,other:()=>`Vybr\xE1no ${e.number(t.count)} polo\u017Eek`})}.`,selectedItem:t=>`Vybr\xE1na polo\u017Eka ${t.item}.`};var Jn={};Jn={deselectedItem:t=>`${t.item} ikke valgt.`,longPressToSelect:"Lav et langt tryk for at aktivere valgtilstand.",select:"V\xE6lg",selectedAll:"Alle elementer valgt.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Ingen elementer valgt",one:()=>`${e.number(t.count)} element valgt`,other:()=>`${e.number(t.count)} elementer valgt`})}.`,selectedItem:t=>`${t.item} valgt.`};var Xn={};Xn={deselectedItem:t=>`${t.item} nicht ausgew\xE4hlt.`,longPressToSelect:"Gedr\xFCckt halten, um Auswahlmodus zu \xF6ffnen.",select:"Ausw\xE4hlen",selectedAll:"Alle Elemente ausgew\xE4hlt.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Keine Elemente ausgew\xE4hlt",one:()=>`${e.number(t.count)} Element ausgew\xE4hlt`,other:()=>`${e.number(t.count)} Elemente ausgew\xE4hlt`})}.`,selectedItem:t=>`${t.item} ausgew\xE4hlt.`};var es={};es={deselectedItem:t=>`\u0394\u03B5\u03BD \u03B5\u03C0\u03B9\u03BB\u03AD\u03C7\u03B8\u03B7\u03BA\u03B5 \u03C4\u03BF \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF ${t.item}.`,longPressToSelect:"\u03A0\u03B1\u03C4\u03AE\u03C3\u03C4\u03B5 \u03C0\u03B1\u03C1\u03B1\u03C4\u03B5\u03C4\u03B1\u03BC\u03AD\u03BD\u03B1 \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03BC\u03C0\u03B5\u03AF\u03C4\u03B5 \u03C3\u03B5 \u03BB\u03B5\u03B9\u03C4\u03BF\u03C5\u03C1\u03B3\u03AF\u03B1 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE\u03C2.",select:"\u0395\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE",selectedAll:"\u0395\u03C0\u03B9\u03BB\u03AD\u03C7\u03B8\u03B7\u03BA\u03B1\u03BD \u03CC\u03BB\u03B1 \u03C4\u03B1 \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u0394\u03B5\u03BD \u03B5\u03C0\u03B9\u03BB\u03AD\u03C7\u03B8\u03B7\u03BA\u03B1\u03BD \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1",one:()=>`\u0395\u03C0\u03B9\u03BB\u03AD\u03C7\u03B8\u03B7\u03BA\u03B5 ${e.number(t.count)} \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF`,other:()=>`\u0395\u03C0\u03B9\u03BB\u03AD\u03C7\u03B8\u03B7\u03BA\u03B1\u03BD ${e.number(t.count)} \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1`})}.`,selectedItem:t=>`\u0395\u03C0\u03B9\u03BB\u03AD\u03C7\u03B8\u03B7\u03BA\u03B5 \u03C4\u03BF \u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03BF ${t.item}.`};var ts={};ts={deselectedItem:t=>`${t.item} not selected.`,select:"Select",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"No items selected",one:()=>`${e.number(t.count)} item selected`,other:()=>`${e.number(t.count)} items selected`})}.`,selectedAll:"All items selected.",selectedItem:t=>`${t.item} selected.`,longPressToSelect:"Long press to enter selection mode."};var ls={};ls={deselectedItem:t=>`${t.item} no seleccionado.`,longPressToSelect:"Mantenga pulsado para abrir el modo de selecci\xF3n.",select:"Seleccionar",selectedAll:"Todos los elementos seleccionados.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Ning\xFAn elemento seleccionado",one:()=>`${e.number(t.count)} elemento seleccionado`,other:()=>`${e.number(t.count)} elementos seleccionados`})}.`,selectedItem:t=>`${t.item} seleccionado.`};var ns={};ns={deselectedItem:t=>`${t.item} pole valitud.`,longPressToSelect:"Valikure\u017Eiimi sisenemiseks vajutage pikalt.",select:"Vali",selectedAll:"K\xF5ik \xFCksused valitud.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\xDCksusi pole valitud",one:()=>`${e.number(t.count)} \xFCksus valitud`,other:()=>`${e.number(t.count)} \xFCksust valitud`})}.`,selectedItem:t=>`${t.item} valitud.`};var ss={};ss={deselectedItem:t=>`Kohdetta ${t.item} ei valittu.`,longPressToSelect:"Siirry valintatilaan painamalla pitk\xE4\xE4n.",select:"Valitse",selectedAll:"Kaikki kohteet valittu.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Ei yht\xE4\xE4n kohdetta valittu",one:()=>`${e.number(t.count)} kohde valittu`,other:()=>`${e.number(t.count)} kohdetta valittu`})}.`,selectedItem:t=>`${t.item} valittu.`};var is={};is={deselectedItem:t=>`${t.item} non s\xE9lectionn\xE9.`,longPressToSelect:"Appuyez de mani\xE8re prolong\xE9e pour passer en mode de s\xE9lection.",select:"S\xE9lectionner",selectedAll:"Tous les \xE9l\xE9ments s\xE9lectionn\xE9s.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Aucun \xE9l\xE9ment s\xE9lectionn\xE9",one:()=>`${e.number(t.count)} \xE9l\xE9ment s\xE9lectionn\xE9`,other:()=>`${e.number(t.count)} \xE9l\xE9ments s\xE9lectionn\xE9s`})}.`,selectedItem:t=>`${t.item} s\xE9lectionn\xE9.`};var rs={};rs={deselectedItem:t=>`${t.item} \u05DC\u05D0 \u05E0\u05D1\u05D7\u05E8.`,longPressToSelect:"\u05D4\u05E7\u05E9\u05D4 \u05D0\u05E8\u05D5\u05DB\u05D4 \u05DC\u05DB\u05E0\u05D9\u05E1\u05D4 \u05DC\u05DE\u05E6\u05D1 \u05D1\u05D7\u05D9\u05E8\u05D4.",select:"\u05D1\u05D7\u05E8",selectedAll:"\u05DB\u05DC \u05D4\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD \u05E0\u05D1\u05D7\u05E8\u05D5.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u05DC\u05D0 \u05E0\u05D1\u05D7\u05E8\u05D5 \u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",one:()=>`\u05E4\u05E8\u05D9\u05D8 ${e.number(t.count)} \u05E0\u05D1\u05D7\u05E8`,other:()=>`${e.number(t.count)} \u05E4\u05E8\u05D9\u05D8\u05D9\u05DD \u05E0\u05D1\u05D7\u05E8\u05D5`})}.`,selectedItem:t=>`${t.item} \u05E0\u05D1\u05D7\u05E8.`};var as={};as={deselectedItem:t=>`Stavka ${t.item} nije odabrana.`,longPressToSelect:"Dugo pritisnite za ulazak u na\u010Din odabira.",select:"Odaberite",selectedAll:"Odabrane su sve stavke.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nije odabrana nijedna stavka",one:()=>`Odabrana je ${e.number(t.count)} stavka`,other:()=>`Odabrano je ${e.number(t.count)} stavki`})}.`,selectedItem:t=>`Stavka ${t.item} je odabrana.`};var os={};os={deselectedItem:t=>`${t.item} nincs kijel\xF6lve.`,longPressToSelect:"Nyomja hosszan a kijel\xF6l\xE9shez.",select:"Kijel\xF6l\xE9s",selectedAll:"Az \xF6sszes elem kijel\xF6lve.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Egy elem sincs kijel\xF6lve",one:()=>`${e.number(t.count)} elem kijel\xF6lve`,other:()=>`${e.number(t.count)} elem kijel\xF6lve`})}.`,selectedItem:t=>`${t.item} kijel\xF6lve.`};var cs={};cs={deselectedItem:t=>`${t.item} non selezionato.`,longPressToSelect:"Premi a lungo per passare alla modalit\xE0 di selezione.",select:"Seleziona",selectedAll:"Tutti gli elementi selezionati.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nessun elemento selezionato",one:()=>`${e.number(t.count)} elemento selezionato`,other:()=>`${e.number(t.count)} elementi selezionati`})}.`,selectedItem:t=>`${t.item} selezionato.`};var ds={};ds={deselectedItem:t=>`${t.item} \u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002`,longPressToSelect:"\u9577\u62BC\u3057\u3057\u3066\u9078\u629E\u30E2\u30FC\u30C9\u3092\u958B\u304D\u307E\u3059\u3002",select:"\u9078\u629E",selectedAll:"\u3059\u3079\u3066\u306E\u9805\u76EE\u3092\u9078\u629E\u3057\u307E\u3057\u305F\u3002",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u9805\u76EE\u304C\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093",one:()=>`${e.number(t.count)} \u9805\u76EE\u3092\u9078\u629E\u3057\u307E\u3057\u305F`,other:()=>`${e.number(t.count)} \u9805\u76EE\u3092\u9078\u629E\u3057\u307E\u3057\u305F`})}\u3002`,selectedItem:t=>`${t.item} \u3092\u9078\u629E\u3057\u307E\u3057\u305F\u3002`};var us={};us={deselectedItem:t=>`${t.item}\uC774(\uAC00) \uC120\uD0DD\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4.`,longPressToSelect:"\uC120\uD0DD \uBAA8\uB4DC\uB85C \uB4E4\uC5B4\uAC00\uB824\uBA74 \uAE38\uAC8C \uB204\uB974\uC2ED\uC2DC\uC624.",select:"\uC120\uD0DD",selectedAll:"\uBAA8\uB4E0 \uD56D\uBAA9\uC774 \uC120\uD0DD\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\uC120\uD0DD\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4",one:()=>`${e.number(t.count)}\uAC1C \uD56D\uBAA9\uC774 \uC120\uD0DD\uB418\uC5C8\uC2B5\uB2C8\uB2E4`,other:()=>`${e.number(t.count)}\uAC1C \uD56D\uBAA9\uC774 \uC120\uD0DD\uB418\uC5C8\uC2B5\uB2C8\uB2E4`})}.`,selectedItem:t=>`${t.item}\uC774(\uAC00) \uC120\uD0DD\uB418\uC5C8\uC2B5\uB2C8\uB2E4.`};var ms={};ms={deselectedItem:t=>`${t.item} nepasirinkta.`,longPressToSelect:"Nor\u0117dami \u012Fjungti pasirinkimo re\u017Eim\u0105, paspauskite ir palaikykite.",select:"Pasirinkti",selectedAll:"Pasirinkti visi elementai.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nepasirinktas n\u0117 vienas elementas",one:()=>`Pasirinktas ${e.number(t.count)} elementas`,other:()=>`Pasirinkta element\u0173: ${e.number(t.count)}`})}.`,selectedItem:t=>`Pasirinkta: ${t.item}.`};var hs={};hs={deselectedItem:t=>`Vienums ${t.item} nav atlas\u012Bts.`,longPressToSelect:"Ilgi turiet nospiestu. lai iesl\u0113gtu atlases re\u017E\u012Bmu.",select:"Atlas\u012Bt",selectedAll:"Atlas\u012Bti visi vienumi.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nav atlas\u012Bts neviens vienums",one:()=>`Atlas\u012Bto vienumu skaits: ${e.number(t.count)}`,other:()=>`Atlas\u012Bto vienumu skaits: ${e.number(t.count)}`})}.`,selectedItem:t=>`Atlas\u012Bts vienums ${t.item}.`};var ps={};ps={deselectedItem:t=>`${t.item} er ikke valgt.`,longPressToSelect:"Bruk et langt trykk for \xE5 g\xE5 inn i valgmodus.",select:"Velg",selectedAll:"Alle elementer er valgt.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Ingen elementer er valgt",one:()=>`${e.number(t.count)} element er valgt`,other:()=>`${e.number(t.count)} elementer er valgt`})}.`,selectedItem:t=>`${t.item} er valgt.`};var gs={};gs={deselectedItem:t=>`${t.item} niet geselecteerd.`,longPressToSelect:"Druk lang om de selectiemodus te openen.",select:"Selecteren",selectedAll:"Alle items geselecteerd.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Geen items geselecteerd",one:()=>`${e.number(t.count)} item geselecteerd`,other:()=>`${e.number(t.count)} items geselecteerd`})}.`,selectedItem:t=>`${t.item} geselecteerd.`};var fs={};fs={deselectedItem:t=>`Nie zaznaczono ${t.item}.`,longPressToSelect:"Naci\u015Bnij i przytrzymaj, aby wej\u015B\u0107 do trybu wyboru.",select:"Zaznacz",selectedAll:"Wszystkie zaznaczone elementy.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nie zaznaczono \u017Cadnych element\xF3w",one:()=>`${e.number(t.count)} zaznaczony element`,other:()=>`${e.number(t.count)} zaznaczonych element\xF3w`})}.`,selectedItem:t=>`Zaznaczono ${t.item}.`};var xs={};xs={deselectedItem:t=>`${t.item} n\xE3o selecionado.`,longPressToSelect:"Mantenha pressionado para entrar no modo de sele\xE7\xE3o.",select:"Selecionar",selectedAll:"Todos os itens selecionados.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nenhum item selecionado",one:()=>`${e.number(t.count)} item selecionado`,other:()=>`${e.number(t.count)} itens selecionados`})}.`,selectedItem:t=>`${t.item} selecionado.`};var ys={};ys={deselectedItem:t=>`${t.item} n\xE3o selecionado.`,longPressToSelect:"Prima continuamente para entrar no modo de sele\xE7\xE3o.",select:"Selecionar",selectedAll:"Todos os itens selecionados.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nenhum item selecionado",one:()=>`${e.number(t.count)} item selecionado`,other:()=>`${e.number(t.count)} itens selecionados`})}.`,selectedItem:t=>`${t.item} selecionado.`};var vs={};vs={deselectedItem:t=>`${t.item} neselectat.`,longPressToSelect:"Ap\u0103sa\u021Bi lung pentru a intra \xEEn modul de selectare.",select:"Selectare",selectedAll:"Toate elementele selectate.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Niciun element selectat",one:()=>`${e.number(t.count)} element selectat`,other:()=>`${e.number(t.count)} elemente selectate`})}.`,selectedItem:t=>`${t.item} selectat.`};var bs={};bs={deselectedItem:t=>`${t.item} \u043D\u0435 \u0432\u044B\u0431\u0440\u0430\u043D\u043E.`,longPressToSelect:"\u041D\u0430\u0436\u043C\u0438\u0442\u0435 \u0438 \u0443\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0439\u0442\u0435 \u0434\u043B\u044F \u0432\u0445\u043E\u0434\u0430 \u0432 \u0440\u0435\u0436\u0438\u043C \u0432\u044B\u0431\u043E\u0440\u0430.",select:"\u0412\u044B\u0431\u0440\u0430\u0442\u044C",selectedAll:"\u0412\u044B\u0431\u0440\u0430\u043D\u044B \u0432\u0441\u0435 \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u041D\u0435\u0442 \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0445 \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432",one:()=>`${e.number(t.count)} \u044D\u043B\u0435\u043C\u0435\u043D\u0442 \u0432\u044B\u0431\u0440\u0430\u043D`,other:()=>`${e.number(t.count)} \u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432 \u0432\u044B\u0431\u0440\u0430\u043D\u043E`})}.`,selectedItem:t=>`${t.item} \u0432\u044B\u0431\u0440\u0430\u043D\u043E.`};var js={};js={deselectedItem:t=>`Nevybrat\xE9 polo\u017Eky: ${t.item}.`,longPressToSelect:"Dlh\u0161\xEDm stla\u010Den\xEDm prejdite do re\u017Eimu v\xFDberu.",select:"Vybra\u0165",selectedAll:"V\u0161etky vybrat\xE9 polo\u017Eky.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u017Diadne vybrat\xE9 polo\u017Eky",one:()=>`${e.number(t.count)} vybrat\xE1 polo\u017Eka`,other:()=>`Po\u010Det vybrat\xFDch polo\u017Eiek:${e.number(t.count)}`})}.`,selectedItem:t=>`Vybrat\xE9 polo\u017Eky: ${t.item}.`};var ks={};ks={deselectedItem:t=>`Element ${t.item} ni izbran.`,longPressToSelect:"Za izbirni na\u010Din pritisnite in dlje \u010Dasa dr\u017Eite.",select:"Izberite",selectedAll:"Vsi elementi so izbrani.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Noben element ni izbran",one:()=>`${e.number(t.count)} element je izbran`,other:()=>`${e.number(t.count)} elementov je izbranih`})}.`,selectedItem:t=>`Element ${t.item} je izbran.`};var ws={};ws={deselectedItem:t=>`${t.item} nije izabrano.`,longPressToSelect:"Dugo pritisnite za ulazak u re\u017Eim biranja.",select:"Izaberite",selectedAll:"Izabrane su sve stavke.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Nije izabrana nijedna stavka",one:()=>`Izabrana je ${e.number(t.count)} stavka`,other:()=>`Izabrano je ${e.number(t.count)} stavki`})}.`,selectedItem:t=>`${t.item} je izabrano.`};var Cs={};Cs={deselectedItem:t=>`${t.item} ej markerat.`,longPressToSelect:"Tryck l\xE4nge n\xE4r du vill \xF6ppna v\xE4ljarl\xE4ge.",select:"Markera",selectedAll:"Alla markerade objekt.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Inga markerade objekt",one:()=>`${e.number(t.count)} markerat objekt`,other:()=>`${e.number(t.count)} markerade objekt`})}.`,selectedItem:t=>`${t.item} markerat.`};var Ss={};Ss={deselectedItem:t=>`${t.item} se\xE7ilmedi.`,longPressToSelect:"Se\xE7im moduna girmek i\xE7in uzun bas\u0131n.",select:"Se\xE7",selectedAll:"T\xFCm \xF6geler se\xE7ildi.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"Hi\xE7bir \xF6ge se\xE7ilmedi",one:()=>`${e.number(t.count)} \xF6ge se\xE7ildi`,other:()=>`${e.number(t.count)} \xF6ge se\xE7ildi`})}.`,selectedItem:t=>`${t.item} se\xE7ildi.`};var Ns={};Ns={deselectedItem:t=>`${t.item} \u043D\u0435 \u0432\u0438\u0431\u0440\u0430\u043D\u043E.`,longPressToSelect:"\u0412\u0438\u043A\u043E\u043D\u0430\u0439\u0442\u0435 \u0434\u043E\u0432\u0433\u0435 \u043D\u0430\u0442\u0438\u0441\u043D\u0435\u043D\u043D\u044F, \u0449\u043E\u0431 \u043F\u0435\u0440\u0435\u0439\u0442\u0438 \u0432 \u0440\u0435\u0436\u0438\u043C \u0432\u0438\u0431\u043E\u0440\u0443.",select:"\u0412\u0438\u0431\u0440\u0430\u0442\u0438",selectedAll:"\u0423\u0441\u0456 \u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438 \u0432\u0438\u0431\u0440\u0430\u043D\u043E.",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u0416\u043E\u0434\u043D\u0438\u0445 \u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432 \u043D\u0435 \u0432\u0438\u0431\u0440\u0430\u043D\u043E",one:()=>`${e.number(t.count)} \u0435\u043B\u0435\u043C\u0435\u043D\u0442 \u0432\u0438\u0431\u0440\u0430\u043D\u043E`,other:()=>`\u0412\u0438\u0431\u0440\u0430\u043D\u043E \u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432: ${e.number(t.count)}`})}.`,selectedItem:t=>`${t.item} \u0432\u0438\u0431\u0440\u0430\u043D\u043E.`};var Is={};Is={deselectedItem:t=>`\u672A\u9009\u62E9 ${t.item}\u3002`,longPressToSelect:"\u957F\u6309\u4EE5\u8FDB\u5165\u9009\u62E9\u6A21\u5F0F\u3002",select:"\u9009\u62E9",selectedAll:"\u5DF2\u9009\u62E9\u6240\u6709\u9879\u76EE\u3002",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u672A\u9009\u62E9\u9879\u76EE",one:()=>`\u5DF2\u9009\u62E9 ${e.number(t.count)} \u4E2A\u9879\u76EE`,other:()=>`\u5DF2\u9009\u62E9 ${e.number(t.count)} \u4E2A\u9879\u76EE`})}\u3002`,selectedItem:t=>`\u5DF2\u9009\u62E9 ${t.item}\u3002`};var Ks={};Ks={deselectedItem:t=>`\u672A\u9078\u53D6\u300C${t.item}\u300D\u3002`,longPressToSelect:"\u9577\u6309\u4EE5\u9032\u5165\u9078\u64C7\u6A21\u5F0F\u3002",select:"\u9078\u53D6",selectedAll:"\u5DF2\u9078\u53D6\u6240\u6709\u9805\u76EE\u3002",selectedCount:(t,e)=>`${e.plural(t.count,{"=0":"\u672A\u9078\u53D6\u4EFB\u4F55\u9805\u76EE",one:()=>`\u5DF2\u9078\u53D6 ${e.number(t.count)} \u500B\u9805\u76EE`,other:()=>`\u5DF2\u9078\u53D6 ${e.number(t.count)} \u500B\u9805\u76EE`})}\u3002`,selectedItem:t=>`\u5DF2\u9078\u53D6\u300C${t.item}\u300D\u3002`};var Vt={};Vt={"ar-AE":Qn,"bg-BG":Yn,"cs-CZ":Zn,"da-DK":Jn,"de-DE":Xn,"el-GR":es,"en-US":ts,"es-ES":ls,"et-EE":ns,"fi-FI":ss,"fr-FR":is,"he-IL":rs,"hr-HR":as,"hu-HU":os,"it-IT":cs,"ja-JP":ds,"ko-KR":us,"lt-LT":ms,"lv-LV":hs,"nb-NO":ps,"nl-NL":gs,"pl-PL":fs,"pt-BR":xs,"pt-PT":ys,"ro-RO":vs,"ru-RU":bs,"sk-SK":js,"sl-SI":ks,"sr-SP":ws,"sv-SE":Cs,"tr-TR":Ss,"uk-UA":Ns,"zh-CN":Is,"zh-TW":Ks};function yc(t){return t&&t.__esModule?t.default:t}function vc(t,e){let{getRowText:l=c=>{var d,u;var o;return((d=(o=e.collection).getTextValue)==null?void 0:d.call(o,c))??((u=e.collection.getItem(c))==null?void 0:u.textValue)}}=t,s=Pt(yc(Vt),"@react-aria/grid"),i=e.selectionManager.rawSelection,r=(0,g.useRef)(i),a=(0,g.useCallback)(()=>{var m;if(!e.selectionManager.isFocused||i===r.current){r.current=i;return}let c=Ms(i,r.current),o=Ms(r.current,i),d=e.selectionManager.selectionBehavior==="replace",u=[];if(e.selectionManager.selectedKeys.size===1&&d){let p=e.selectionManager.selectedKeys.keys().next().value;if(p!=null&&e.collection.getItem(p)){let f=l(p);f&&u.push(s.format("selectedItem",{item:f}))}}else if(c.size===1&&o.size===0){let p=c.keys().next().value;if(p!=null){let f=l(p);f&&u.push(s.format("selectedItem",{item:f}))}}else if(o.size===1&&c.size===0){let p=o.keys().next().value;if(p!=null&&e.collection.getItem(p)){let f=l(p);f&&u.push(s.format("deselectedItem",{item:f}))}}e.selectionManager.selectionMode==="multiple"&&(u.length===0||i==="all"||i.size>1||r.current==="all"||((m=r.current)==null?void 0:m.size)>1)&&u.push(i==="all"?s.format("selectedAll"):s.format("selectedCount",{count:i.size})),u.length>0&&Qa(u.join(" ")),r.current=i},[i,e.selectionManager.selectedKeys,e.selectionManager.isFocused,e.selectionManager.selectionBehavior,e.selectionManager.selectionMode,e.collection,l,s]);wo(()=>{if(e.selectionManager.isFocused)a();else{let c=requestAnimationFrame(a);return()=>cancelAnimationFrame(c)}},[i,e.selectionManager.isFocused])}function Ms(t,e){let l=new Set;if(t==="all"||e==="all")return l;for(let s of t.keys())e.has(s)||l.add(s);return l}function bc(t){return t&&t.__esModule?t.default:t}function jc(t){let e=Pt(bc(Vt),"@react-aria/grid"),l=no(),s=(l==="pointer"||l==="virtual"||l==null)&&typeof window<"u"&&"ontouchstart"in window;return Cn((0,g.useMemo)(()=>{let i=t.selectionManager.selectionMode,r=t.selectionManager.selectionBehavior,a;return s&&(a=e.format("longPressToSelect")),r==="replace"&&i!=="none"&&t.hasItemActions?a:void 0},[t.selectionManager.selectionMode,t.selectionManager.selectionBehavior,t.hasItemActions,e,s]))}function kc(t){return t&&t.__esModule?t.default:t}function wc(t,e){let{key:l}=t,s=e.selectionManager,i=yt(),r=!e.selectionManager.canSelectItem(l),a=e.selectionManager.isSelected(l),c=()=>s.toggleSelection(l),o=Pt(kc(Vt),"@react-aria/grid");return{checkboxProps:{id:i,"aria-label":o.format("select"),isSelected:a,isDisabled:r,onChange:c}}}function Cc(t,e,l){let{isVirtualized:s,keyboardDelegate:i,layoutDelegate:r,onAction:a,disallowTypeAhead:c,linkBehavior:o="action",keyboardNavigationBehavior:d="arrow",escapeKeyBehavior:u="clearSelection",shouldSelectOnPressUp:m}=t;!t["aria-label"]&&!t["aria-labelledby"]&&console.warn("An aria-label or aria-labelledby prop is required for accessibility.");let{listProps:p}=Hn({selectionManager:e.selectionManager,collection:e.collection,disabledKeys:e.disabledKeys,ref:l,keyboardDelegate:i,layoutDelegate:r,isVirtualized:s,selectOnFocus:e.selectionManager.selectionBehavior==="replace",shouldFocusWrap:t.shouldFocusWrap,linkBehavior:o,disallowTypeAhead:c,autoFocus:t.autoFocus,escapeKeyBehavior:u}),f=yt(t.id);bl.set(e,{id:f,onAction:a,linkBehavior:o,keyboardNavigationBehavior:d,shouldSelectOnPressUp:m});let y=jc({selectionManager:e.selectionManager,hasItemActions:!!a}),j=nc(l,{isDisabled:e.collection.size!==0}),v=ze(Bt(t,{labelable:!0}),{role:"grid",id:f,"aria-multiselectable":e.selectionManager.selectionMode==="multiple"?"true":void 0},e.collection.size===0?{tabIndex:j?-1:0}:p,y);return s&&(v["aria-rowcount"]=e.collection.size,v["aria-colcount"]=1),vc({},e),{gridProps:v}}var Ds={expand:{ltr:"ArrowRight",rtl:"ArrowLeft"},collapse:{ltr:"ArrowLeft",rtl:"ArrowRight"}};function Sc(t,e,l){var I,_,M;let{node:s,isVirtualized:i}=t,{direction:r}=Tt(),{onAction:a,linkBehavior:c,keyboardNavigationBehavior:o,shouldSelectOnPressUp:d}=bl.get(e),u=vo(),m=(0,g.useRef)(null),p=()=>{l.current!==null&&(m.current!=null&&s.key!==m.current||!dl(l.current))&&Le(l.current)},f={},y=t.hasChildItems,j=e.selectionManager.isLink(s.key);if(s!=null&&"expandedKeys"in e){var v;let k=(I=(v=e.collection).getChildren)==null?void 0:I.call(v,s.key);y||(y=[...k??[]].length>1),a==null&&!j&&e.selectionManager.selectionMode==="none"&&y&&(a=()=>e.toggleKey(s.key));let A=y?e.expandedKeys.has(s.key):void 0,b=1,P=s.index;if(s.level>=0&&(s==null?void 0:s.parentKey)!=null){let z=e.collection.getItem(s.parentKey);if(z){let F=Nc(z,e.collection);b=[...F].filter(q=>q.type==="item").length,P>0&&F[0].type!=="item"&&--P}}else b=[...e.collection].filter(z=>z.level===0&&z.type==="item").length;f={"aria-expanded":A,"aria-level":s.level+1,"aria-posinset":P+1,"aria-setsize":b}}let{itemProps:N,...C}=$n({selectionManager:e.selectionManager,key:s.key,ref:l,isVirtualized:i,shouldSelectOnPressUp:t.shouldSelectOnPressUp||d,onAction:a||(_=s.props)!=null&&_.onAction?vn((M=s.props)==null?void 0:M.onAction,a?()=>a(s.key):void 0):void 0,focus:p,linkBehavior:c}),w=k=>{let A=ct();if(!Ze(k.currentTarget,He(k))||!l.current||!A)return;let b=Ft(l.current);if(b.currentNode=A,"expandedKeys"in e&&A===l.current){if(k.key===Ds.expand[r]&&e.selectionManager.focusedKey===s.key&&y&&!e.expandedKeys.has(s.key)){e.toggleKey(s.key),k.stopPropagation();return}else if(k.key===Ds.collapse[r]&&e.selectionManager.focusedKey===s.key&&y&&e.expandedKeys.has(s.key)){e.toggleKey(s.key),k.stopPropagation();return}}switch(k.key){case"ArrowLeft":if(o==="arrow"){let z=r==="rtl"?b.nextNode():b.previousNode();if(z)k.preventDefault(),k.stopPropagation(),Le(z),Je(z,{containingElement:it(l.current)});else if(k.preventDefault(),k.stopPropagation(),r==="rtl")Le(l.current),Je(l.current,{containingElement:it(l.current)});else{b.currentNode=l.current;let F=As(b);F&&(Le(F),Je(F,{containingElement:it(l.current)}))}}break;case"ArrowRight":if(o==="arrow"){let z=r==="rtl"?b.previousNode():b.nextNode();if(z)k.preventDefault(),k.stopPropagation(),Le(z),Je(z,{containingElement:it(l.current)});else if(k.preventDefault(),k.stopPropagation(),r==="ltr")Le(l.current),Je(l.current,{containingElement:it(l.current)});else{b.currentNode=l.current;let F=As(b);F&&(Le(F),Je(F,{containingElement:it(l.current)}))}}break;case"ArrowUp":case"ArrowDown":if(!k.altKey&&Ze(l.current,He(k))){var P;k.stopPropagation(),k.preventDefault(),(P=l.current.parentElement)==null||P.dispatchEvent(new KeyboardEvent(k.nativeEvent.type,k.nativeEvent))}break}},h=k=>{if(m.current=s.key,He(k)!==l.current){so()||e.selectionManager.setFocusedKey(s.key);return}},x=k=>{let A=ct();if(!(!Ze(k.currentTarget,He(k))||!l.current||!A))switch(k.key){case"Tab":if(o==="tab"){let b=Ft(l.current,{tabbable:!0});b.currentNode=A,(k.shiftKey?b.previousNode():b.nextNode())&&k.stopPropagation()}}},K=yo(s.props),D=ze(N,C.hasAction?K:{},{role:"row",onKeyDownCapture:w,onKeyDown:x,onFocus:h,"aria-label":s["aria-label"]||s.textValue||void 0,"aria-selected":e.selectionManager.canSelectItem(s.key)?e.selectionManager.isSelected(s.key):void 0,"aria-disabled":e.selectionManager.isDisabled(s.key)||void 0,"aria-labelledby":u&&(s["aria-label"]||s.textValue)?`${jl(e,s.key)} ${u}`:void 0,id:jl(e,s.key)});if(i){let{collection:k}=e;D["aria-rowindex"]=[...k].find(A=>A.type==="section")?[...k.getKeys()].filter(A=>{var b;return((b=k.getItem(A))==null?void 0:b.type)!=="section"}).findIndex(A=>A===s.key)+1:s.index+1}let B={role:"gridcell","aria-colindex":1};return{rowProps:{...ze(D,f)},gridCellProps:B,descriptionProps:{id:u},...C}}function As(t){let e=null,l=null;do l=t.lastChild(),l&&(e=l);while(l);return e}function Nc(t,e){var a;let l=(a=e.getChildren)==null?void 0:a.call(e,t.key),s=l?Array.from(l):[],i=s.length>0?s[0]:null,r=[];for(;i;)r.push(i),i=i.nextKey==null?null:e.getItem(i.nextKey);return r}function Ic(t,e){let{key:l}=t,{checkboxProps:s}=wc(t,e);return{checkboxProps:{...s,"aria-labelledby":`${s.id} ${jl(e,l)}`}}}function Kc(t,e,l){let{gridProps:s}=Cc(t,e,l);return s.role="treegrid",{gridProps:s}}var Ps={};Ps={collapse:"\u0637\u064A",expand:"\u062A\u0645\u062F\u064A\u062F"};var Es={};Es={collapse:"\u0421\u0432\u0438\u0432\u0430\u043D\u0435",expand:"\u0420\u0430\u0437\u0448\u0438\u0440\u044F\u0432\u0430\u043D\u0435"};var _s={};_s={collapse:"Sbalit",expand:"Rozt\xE1hnout"};var Bs={};Bs={collapse:"Skjul",expand:"Udvid"};var zs={};zs={collapse:"Reduzieren",expand:"Erweitern"};var Fs={};Fs={collapse:"\u03A3\u03CD\u03BC\u03C0\u03C4\u03C5\u03BE\u03B7",expand:"\u0391\u03BD\u03AC\u03C0\u03C4\u03C5\u03BE\u03B7"};var Ts={};Ts={expand:"Expand",collapse:"Collapse"};var Rs={};Rs={collapse:"Contraer",expand:"Ampliar"};var $s={};$s={collapse:"Ahenda",expand:"Laienda"};var Vs={};Vs={collapse:"Pienenn\xE4",expand:"Laajenna"};var Ls={};Ls={collapse:"R\xE9duire",expand:"D\xE9velopper"};var Os={};Os={collapse:"\u05DB\u05D5\u05D5\u05E5",expand:"\u05D4\u05E8\u05D7\u05D1"};var Hs={};Hs={collapse:"Sa\u017Emi",expand:"Pro\u0161iri"};var Gs={};Gs={collapse:"\xD6sszecsuk\xE1s",expand:"Kibont\xE1s"};var Us={};Us={collapse:"Comprimi",expand:"Espandi"};var qs={};qs={collapse:"\u6298\u308A\u305F\u305F\u3080",expand:"\u5C55\u958B"};var Ws={};Ws={collapse:"\uC811\uAE30",expand:"\uD3BC\uCE58\uAE30"};var Qs={};Qs={collapse:"Sutraukti",expand:"I\u0161skleisti"};var Ys={};Ys={collapse:"Sak\u013Caut",expand:"Izv\u0113rst"};var Zs={};Zs={collapse:"Skjul",expand:"Utvid"};var Js={};Js={collapse:"Samenvouwen",expand:"Uitvouwen"};var Xs={};Xs={collapse:"Zwi\u0144",expand:"Rozwi\u0144"};var ei={};ei={collapse:"Recolher",expand:"Expandir"};var ti={};ti={collapse:"Colapsar",expand:"Expandir"};var li={};li={collapse:"Restr\xE2nge\u021Bi",expand:"Extinde\u021Bi"};var ni={};ni={collapse:"\u0421\u0432\u0435\u0440\u043D\u0443\u0442\u044C",expand:"\u0420\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u044C"};var si={};si={collapse:"Zbali\u0165",expand:"Rozbali\u0165"};var ii={};ii={collapse:"Strni",expand:"Raz\u0161iri"};var ri={};ri={collapse:" Skupi",expand:"Pro\u0161iri"};var ai={};ai={collapse:"D\xF6lj",expand:"Expandera"};var oi={};oi={collapse:"Daralt",expand:"Geni\u015Flet"};var ci={};ci={collapse:"\u0417\u0433\u043E\u0440\u043D\u0443\u0442\u0438",expand:"\u0420\u043E\u0437\u0433\u043E\u0440\u043D\u0443\u0442\u0438"};var di={};di={collapse:"\u6298\u53E0",expand:"\u6269\u5C55"};var ui={};ui={collapse:"\u6536\u5408",expand:"\u5C55\u958B"};var mi={};mi={"ar-AE":Ps,"bg-BG":Es,"cs-CZ":_s,"da-DK":Bs,"de-DE":zs,"el-GR":Fs,"en-US":Ts,"es-ES":Rs,"et-EE":$s,"fi-FI":Vs,"fr-FR":Ls,"he-IL":Os,"hr-HR":Hs,"hu-HU":Gs,"it-IT":Us,"ja-JP":qs,"ko-KR":Ws,"lt-LT":Qs,"lv-LV":Ys,"nb-NO":Zs,"nl-NL":Js,"pl-PL":Xs,"pt-BR":ei,"pt-PT":ti,"ro-RO":li,"ru-RU":ni,"sk-SK":si,"sl-SI":ii,"sr-SP":ri,"sv-SE":ai,"tr-TR":oi,"uk-UA":ci,"zh-CN":di,"zh-TW":ui};function Mc(t){return t&&t.__esModule?t.default:t}function hi(t,e,l){let{node:s}=t,i=Sc(t,e,l),r=i.rowProps["aria-expanded"]===!0,a=Pt(Mc(mi),"@react-aria/tree"),c=lo({"aria-label":r?a.format("collapse"):a.format("expand"),"aria-labelledby":i.rowProps.id}),o={onPress:()=>{i.isDisabled||(e.toggleKey(s.key),e.selectionManager.setFocused(!0),e.selectionManager.setFocusedKey(s.key))},excludeFromTabOrder:!0,preventFocusOnPress:!0,"data-react-aria-prevent-focus":!0,...c};return{...i,expandButtonProps:o}}var rt=class{get childNodes(){throw Error("childNodes is not supported")}clone(){let t=new this.constructor(this.key);return t.value=this.value,t.level=this.level,t.hasChildNodes=this.hasChildNodes,t.rendered=this.rendered,t.textValue=this.textValue,t["aria-label"]=this["aria-label"],t.index=this.index,t.parentKey=this.parentKey,t.prevKey=this.prevKey,t.nextKey=this.nextKey,t.firstChildKey=this.firstChildKey,t.lastChildKey=this.lastChildKey,t.props=this.props,t.render=this.render,t.colSpan=this.colSpan,t.colIndex=this.colIndex,t}filter(t,e,l){let s=this.clone();return e.addDescendants(s,t),s}constructor(t){this.value=null,this.level=0,this.hasChildNodes=!1,this.rendered=null,this.textValue="",this["aria-label"]=void 0,this.index=0,this.parentKey=null,this.prevKey=null,this.nextKey=null,this.firstChildKey=null,this.lastChildKey=null,this.props={},this.colSpan=null,this.colIndex=null,this.type=this.constructor.type,this.key=t}},pi=class extends rt{filter(t,e,l){let[s,i]=xi(t,e,this.firstChildKey,l),r=this.clone();return r.firstChildKey=s,r.lastChildKey=i,r}},Dc=class extends rt{};Dc.type="header";var kl=class extends rt{};kl.type="loader";var gi=class extends pi{filter(t,e,l){if(l(this.textValue,this)){let s=this.clone();return e.addDescendants(s,t),s}return null}};gi.type="item";var Ac=class extends pi{filter(t,e,l){let s=super.filter(t,e,l);if(s&&s.lastChildKey!==null){let i=t.getItem(s.lastChildKey);if(i&&i.type!=="header")return s}return null}};Ac.type="section";var fi=class{get size(){return this.itemCount}getKeys(){return this.keyMap.keys()}*[Symbol.iterator](){let t=this.firstKey==null?void 0:this.keyMap.get(this.firstKey);for(;t;)yield t,t=t.nextKey==null?void 0:this.keyMap.get(t.nextKey)}getChildren(t){let e=this.keyMap;return{*[Symbol.iterator](){let l=e.get(t),s=(l==null?void 0:l.firstChildKey)==null?null:e.get(l.firstChildKey);for(;s;)yield s,s=s.nextKey==null?void 0:e.get(s.nextKey)}}}getKeyBefore(t){let e=this.keyMap.get(t);if(!e)return null;if(e.prevKey!=null){for(e=this.keyMap.get(e.prevKey);e&&e.type!=="item"&&e.lastChildKey!=null;)e=this.keyMap.get(e.lastChildKey);return(e==null?void 0:e.key)??null}return e.parentKey}getKeyAfter(t){let e=this.keyMap.get(t);if(!e)return null;if(e.type!=="item"&&e.firstChildKey!=null)return e.firstChildKey;for(;e;){if(e.nextKey!=null)return e.nextKey;if(e.parentKey!=null)e=this.keyMap.get(e.parentKey);else return null}return null}getFirstKey(){return this.firstKey}getLastKey(){let t=this.lastKey==null?null:this.keyMap.get(this.lastKey);for(;(t==null?void 0:t.lastChildKey)!=null;)t=this.keyMap.get(t.lastChildKey);return(t==null?void 0:t.key)??null}getItem(t){return this.keyMap.get(t)??null}at(){throw Error("Not implemented")}clone(){let t=this.constructor,e=new t;return e.keyMap=new Map(this.keyMap),e.firstKey=this.firstKey,e.lastKey=this.lastKey,e.itemCount=this.itemCount,e}addNode(t){if(this.frozen)throw Error("Cannot add a node to a frozen collection");t.type==="item"&&this.keyMap.get(t.key)==null&&this.itemCount++,this.keyMap.set(t.key,t)}addDescendants(t,e){this.addNode(t);let l=e.getChildren(t.key);for(let s of l)this.addDescendants(s,e)}removeNode(t){if(this.frozen)throw Error("Cannot remove a node to a frozen collection");let e=this.keyMap.get(t);e!=null&&e.type==="item"&&this.itemCount--,this.keyMap.delete(t)}commit(t,e,l=!1){if(this.frozen)throw Error("Cannot commit a frozen collection");this.firstKey=t,this.lastKey=e,this.frozen=!l}filter(t){let e=new this.constructor,[l,s]=xi(this,e,this.firstKey,t);return e==null||e.commit(l,s),e}constructor(){this.keyMap=new Map,this.firstKey=null,this.lastKey=null,this.frozen=!1,this.itemCount=0}};function xi(t,e,l,s){if(l==null)return[null,null];let i=null,r=null,a=t.getItem(l);for(;a!=null;){let c=a.filter(t,e,s);c!=null&&(c.nextKey=null,r&&(c.prevKey=r.key,r.nextKey=c.key),i??(i=c),e.addNode(c),r=c),a=a.nextKey?t.getItem(a.nextKey):null}if(r&&r.type==="separator"){let c=r.prevKey;e.removeNode(r.key),c?(r=e.getItem(c),r.nextKey=null):r=null}return[(i==null?void 0:i.key)??null,(r==null?void 0:r.key)??null]}var yi=class{*[Symbol.iterator](){let t=this.firstChild;for(;t;)yield t,t=t.nextSibling}get firstChild(){return this._firstChild}set firstChild(t){this._firstChild=t,this.ownerDocument.markDirty(this)}get lastChild(){return this._lastChild}set lastChild(t){this._lastChild=t,this.ownerDocument.markDirty(this)}get previousSibling(){return this._previousSibling}set previousSibling(t){this._previousSibling=t,this.ownerDocument.markDirty(this)}get nextSibling(){return this._nextSibling}set nextSibling(t){this._nextSibling=t,this.ownerDocument.markDirty(this)}get parentNode(){return this._parentNode}set parentNode(t){this._parentNode=t,this.ownerDocument.markDirty(this)}get isConnected(){var t;return((t=this.parentNode)==null?void 0:t.isConnected)||!1}invalidateChildIndices(t){(this._minInvalidChildIndex==null||!this._minInvalidChildIndex.isConnected||t.index<this._minInvalidChildIndex.index)&&(this._minInvalidChildIndex=t,this.ownerDocument.markDirty(this))}updateChildIndices(){let t=this._minInvalidChildIndex;for(;t;)t.index=t.previousSibling?t.previousSibling.index+1:0,t=t.nextSibling;this._minInvalidChildIndex=null}appendChild(t){t.parentNode&&t.parentNode.removeChild(t),this.firstChild??(this.firstChild=t),this.lastChild?(this.lastChild.nextSibling=t,t.index=this.lastChild.index+1,t.previousSibling=this.lastChild):(t.previousSibling=null,t.index=0),t.parentNode=this,t.nextSibling=null,this.lastChild=t,this.ownerDocument.markDirty(this),this.isConnected&&this.ownerDocument.queueUpdate()}insertBefore(t,e){if(e==null)return this.appendChild(t);t.parentNode&&t.parentNode.removeChild(t),t.nextSibling=e,t.previousSibling=e.previousSibling,t.index=e.index-1,this.firstChild===e?this.firstChild=t:e.previousSibling&&(e.previousSibling.nextSibling=t),e.previousSibling=t,t.parentNode=e.parentNode,this.invalidateChildIndices(t),this.isConnected&&this.ownerDocument.queueUpdate()}removeChild(t){t.parentNode===this&&(this._minInvalidChildIndex===t&&(this._minInvalidChildIndex=null),t.nextSibling&&(this.invalidateChildIndices(t.nextSibling),t.nextSibling.previousSibling=t.previousSibling),t.previousSibling&&(t.previousSibling.nextSibling=t.nextSibling),this.firstChild===t&&(this.firstChild=t.nextSibling),this.lastChild===t&&(this.lastChild=t.previousSibling),t.parentNode=null,t.nextSibling=null,t.previousSibling=null,t.index=0,this.ownerDocument.markDirty(t),this.isConnected&&this.ownerDocument.queueUpdate())}addEventListener(){}removeEventListener(){}get previousVisibleSibling(){let t=this.previousSibling;for(;t&&t.isHidden;)t=t.previousSibling;return t}get nextVisibleSibling(){let t=this.nextSibling;for(;t&&t.isHidden;)t=t.nextSibling;return t}get firstVisibleChild(){let t=this.firstChild;for(;t&&t.isHidden;)t=t.nextSibling;return t}get lastVisibleChild(){let t=this.lastChild;for(;t&&t.isHidden;)t=t.previousSibling;return t}constructor(t){this._firstChild=null,this._lastChild=null,this._previousSibling=null,this._nextSibling=null,this._parentNode=null,this._minInvalidChildIndex=null,this.ownerDocument=t}},wl=class Fl extends yi{get index(){return this._index}set index(e){this._index=e,this.ownerDocument.markDirty(this)}get level(){var e;return this.parentNode instanceof Fl?this.parentNode.level+(((e=this.parentNode.node)==null?void 0:e.type)==="item"?1:0):0}getMutableNode(){return this.node==null?null:(this.isMutated||(this.isMutated=(this.node=this.node.clone(),!0)),this.ownerDocument.markDirty(this),this.node)}updateNode(){var s,i,r,a,c,o,d,u;let e=this.nextVisibleSibling,l=this.getMutableNode();if(l!=null&&(l.index=this.index,l.level=this.level,l.parentKey=this.parentNode instanceof Fl?((s=this.parentNode.node)==null?void 0:s.key)??null:null,l.prevKey=((r=(i=this.previousVisibleSibling)==null?void 0:i.node)==null?void 0:r.key)??null,l.nextKey=((a=e==null?void 0:e.node)==null?void 0:a.key)??null,l.hasChildNodes=!!this.firstChild,l.firstChildKey=((o=(c=this.firstVisibleChild)==null?void 0:c.node)==null?void 0:o.key)??null,l.lastChildKey=((u=(d=this.lastVisibleChild)==null?void 0:d.node)==null?void 0:u.key)??null,(l.colSpan!=null||l.colIndex!=null)&&e)){let m=(l.colIndex??l.index)+(l.colSpan??1);if(e.node!=null&&m!==e.node.colIndex){let p=e.getMutableNode();p.colIndex=m}}}setProps(e,l,s,i,r){let a,{value:c,textValue:o,id:d,...u}=e;if(this.node==null?(a=new s(d??`react-aria-${++this.ownerDocument.nodeId}`),this.node=a):a=this.getMutableNode(),u.ref=l,a.props=u,a.rendered=i,a.render=r,a.value=c,e["aria-label"]&&(a["aria-label"]=e["aria-label"]),a.textValue=o||(typeof u.children=="string"?u.children:"")||e["aria-label"]||"",d!=null&&d!==a.key)throw Error("Cannot change the id of an item");u.colSpan!=null&&(a.colSpan=u.colSpan),this.isConnected&&this.ownerDocument.queueUpdate()}get style(){let e=this;return{get display(){return e.isHidden?"none":""},set display(l){var i,r;let s=l==="none";if(e.isHidden!==s){(((i=e.parentNode)==null?void 0:i.firstVisibleChild)===e||((r=e.parentNode)==null?void 0:r.lastVisibleChild)===e)&&e.ownerDocument.markDirty(e.parentNode);let a=e.previousVisibleSibling,c=e.nextVisibleSibling;a&&e.ownerDocument.markDirty(a),c&&e.ownerDocument.markDirty(c),e.isHidden=s,e.ownerDocument.markDirty(e)}}}}hasAttribute(){}setAttribute(){}setAttributeNS(){}removeAttribute(){}constructor(e,l){super(l),this.nodeType=8,this.isMutated=!0,this._index=0,this.isHidden=!1,this.node=null}},Pc=class extends yi{get isConnected(){return!0}createElement(t){return new wl(t,this)}getMutableCollection(){return this.nextCollection||(this.nextCollection=this.collection.clone()),this.nextCollection}markDirty(t){this.dirtyNodes.add(t)}addNode(t){if(t.isHidden||t.node==null)return;let e=this.getMutableCollection();if(!e.getItem(t.node.key))for(let l of t)this.addNode(l);e.addNode(t.node)}removeNode(t){for(let e of t)this.removeNode(e);t.node&&this.getMutableCollection().removeNode(t.node.key)}getCollection(){return this.inSubscription?this.collection:(this.queuedRender=!1,this.updateCollection(),this.collection)}updateCollection(){var t,e,l,s;for(let i of this.dirtyNodes)i instanceof wl&&(!i.isConnected||i.isHidden)?this.removeNode(i):i.updateChildIndices();for(let i of this.dirtyNodes)i instanceof wl?(i.isConnected&&!i.isHidden&&(i.updateNode(),this.addNode(i)),i.node&&this.dirtyNodes.delete(i),i.isMutated=!1):this.dirtyNodes.delete(i);this.nextCollection&&(this.nextCollection.commit(((e=(t=this.firstVisibleChild)==null?void 0:t.node)==null?void 0:e.key)??null,((s=(l=this.lastVisibleChild)==null?void 0:l.node)==null?void 0:s.key)??null,this.isSSR),this.isSSR||(this.collection=this.nextCollection,this.nextCollection=null))}queueUpdate(){if(!(this.dirtyNodes.size===0||this.queuedRender)){this.queuedRender=!0,this.inSubscription=!0,this.isSSR||(this.collection=this.collection.clone());for(let t of this.subscriptions)t();this.inSubscription=!1}}subscribe(t){return this.subscriptions.add(t),()=>this.subscriptions.delete(t)}resetAfterSSR(){this.isSSR&&(this.isSSR=!1,this.firstChild=null,this.lastChild=null,this.nodeId=0)}constructor(t){super(null),this.nodeType=11,this.ownerDocument=this,this.dirtyNodes=new Set,this.isSSR=!1,this.nodeId=0,this.nodesByProps=new WeakMap,this.nextCollection=null,this.subscriptions=new Set,this.queuedRender=!1,this.inSubscription=!1,this.collection=t,this.nextCollection=t}};function Cl(t){let{children:e,items:l,idScope:s,addIdAndValue:i,dependencies:r=[]}=t,a=(0,g.useMemo)(()=>new WeakMap,r);return(0,g.useMemo)(()=>{if(l&&typeof e=="function"){let c=[];for(let o of l){let d=a.get(o);if(!d){d=e(o);let u=d.props.id??o.key??o.id;if(u==null)throw Error("Could not determine key for item");s!=null&&(u=s+":"+u),d=(0,g.cloneElement)(d,i?{key:u,id:u,value:o}:{key:u}),a.set(o,d)}c.push(d)}return c}else if(typeof e!="function")return e},[e,l,a,s,i])}var Ec=Gl(),_c=pa(),vi=(0,g.createContext)(!1),bt=(0,g.createContext)(null);function bi(t){if((0,g.useContext)(bt))return t.content;let{collection:e,document:l}=Tc(t.createCollection);return g.createElement(g.Fragment,null,g.createElement(eo,null,g.createElement(bt.Provider,{value:l},t.content)),g.createElement(Bc,{render:t.children,collection:e}))}function Bc({collection:t,render:e}){return e(t)}function zc(t,e,l){let s=kn(),i=(0,g.useRef)(s);return i.current=s,(0,_c.useSyncExternalStore)(t,(0,g.useCallback)(()=>i.current?l():e(),[e,l]))}var Fc=typeof g.useSyncExternalStore=="function"?g.useSyncExternalStore:zc;function Tc(t){let[e]=(0,g.useState)(()=>new Pc((t==null?void 0:t())||new fi));return{collection:Fc((0,g.useCallback)(l=>e.subscribe(l),[e]),(0,g.useCallback)(()=>{let l=e.getCollection();return e.isSSR&&e.resetAfterSSR(),l},[e]),(0,g.useCallback)(()=>(e.isSSR=!0,e.getCollection()),[e])),document:e}}var Sl=(0,g.createContext)(null);function Rc(t){var e;return e=class extends rt{},e.type=t,e}function ji(t,e,l,s,i,r){typeof t=="string"&&(t=Rc(t));let a=(0,g.useCallback)(o=>{o==null||o.setProps(e,l,t,s,r)},[e,l,s,r,t]),c=(0,g.useContext)(Sl);if(c){let o=c.ownerDocument.nodesByProps.get(e);return o||(o=c.ownerDocument.createElement(t.type),o.setProps(e,l,t,s,r),c.appendChild(o),c.ownerDocument.updateCollection(),c.ownerDocument.nodesByProps.set(e,o)),i?g.createElement(Sl.Provider,{value:o},i):null}return g.createElement(t.type,{ref:a},i)}function Nl(t,e){let l=({node:i})=>e(i.props,i.props.ref,i),s=(0,g.forwardRef)((i,r)=>{let a=(0,g.useContext)(pn);if(!(0,g.useContext)(vi)){if(e.length>=3)throw Error(e.name+" cannot be rendered outside a collection.");return e(i,r)}return ji(t,i,r,"children"in i?i.children:null,null,c=>g.createElement(pn.Provider,{value:a},g.createElement(l,{node:c})))});return s.displayName=e.name,s}function $c(t,e,l=ki){let s=({node:r})=>e(r.props,r.props.ref,r),i=(0,g.forwardRef)((r,a)=>ji(t,r,a,null,l(r),c=>g.createElement(s,{node:c}))??g.createElement(g.Fragment,null));return i.displayName=e.name,i}function ki(t){return Cl({...t,addIdAndValue:!0})}var wi=(0,g.createContext)(null);function Ci(t){let e=(0,g.useContext)(wi),l=((e==null?void 0:e.dependencies)||[]).concat(t.dependencies),s=t.idScope??(e==null?void 0:e.idScope),i=ki({...t,idScope:s,dependencies:l});return(0,g.useContext)(bt)&&(i=g.createElement(Vc,null,i)),e=(0,g.useMemo)(()=>({dependencies:l,idScope:s}),[s,...l]),g.createElement(wi.Provider,{value:e},i)}function Vc({children:t}){let e=(0,g.useContext)(bt),l=(0,g.useMemo)(()=>g.createElement(bt.Provider,{value:null},g.createElement(vi.Provider,{value:!0},t)),[t]);return kn()?g.createElement(Sl.Provider,{value:e},l):(0,Ec.createPortal)(l,e)}var Lc=(0,g.createContext)(null),Si={CollectionRoot({collection:t,renderDropIndicator:e}){return Ni(t,null,e)},CollectionBranch({collection:t,parent:e,renderDropIndicator:l}){return Ni(t,e,l)}};function Ni(t,e,l){return Cl({items:e?t.getChildren(e.key):t,dependencies:[l],children(s){if(s.type==="content")return g.createElement(g.Fragment,null);let i=s.render(s);return!l||s.type!=="item"?i:g.createElement(g.Fragment,null,l({type:"item",key:s.key,dropPosition:"before"}),i,Oc(t,s,l))}})}function Oc(t,e,l){let s=e.key,i=t.getKeyAfter(s),r=i==null?null:t.getItem(i);for(;r!=null&&r.type!=="item";)i=t.getKeyAfter(r.key),r=i==null?null:t.getItem(i);let a=e.nextKey==null?null:t.getItem(e.nextKey);for(;a!=null&&a.type!=="item";)a=a.nextKey==null?null:t.getItem(a.nextKey);let c=[];if(a==null){let o=e;for(;(o==null?void 0:o.type)==="item"&&(!r||o.parentKey!==r.parentKey&&r.level<o.level);){let d=l({type:"item",key:o.key,dropPosition:"after"});(0,g.isValidElement)(d)&&c.push((0,g.cloneElement)(d,{key:`${o.key}-after`})),o=o.parentKey==null?null:t.getItem(o.parentKey)}}return c}var Lt=(0,g.createContext)(Si),We=class Sr extends Set{constructor(e,l,s){super(e),e instanceof Sr?(this.anchorKey=l??e.anchorKey,this.currentKey=s??e.currentKey):(this.anchorKey=l??null,this.currentKey=s??null)}};function Hc(t,e){if(t.size!==e.size)return!1;for(let l of t)if(!e.has(l))return!1;return!0}function Ii(t){let{selectionMode:e="none",disallowEmptySelection:l=!1,allowDuplicateSelectionEvents:s,selectionBehavior:i="toggle",disabledBehavior:r="all"}=t,a=(0,g.useRef)(!1),[,c]=(0,g.useState)(!1),o=(0,g.useRef)(null),d=(0,g.useRef)(null),[,u]=(0,g.useState)(null),[m,p]=rl((0,g.useMemo)(()=>Ki(t.selectedKeys),[t.selectedKeys]),(0,g.useMemo)(()=>Ki(t.defaultSelectedKeys,new We),[t.defaultSelectedKeys]),t.onSelectionChange),f=(0,g.useMemo)(()=>t.disabledKeys?new Set(t.disabledKeys):new Set,[t.disabledKeys]),[y,j]=(0,g.useState)(i);i==="replace"&&y==="toggle"&&typeof m=="object"&&m.size===0&&j("replace");let v=(0,g.useRef)(i);return(0,g.useEffect)(()=>{i!==v.current&&(j(i),v.current=i)},[i]),{selectionMode:e,disallowEmptySelection:l,selectionBehavior:y,setSelectionBehavior:j,get isFocused(){return a.current},setFocused(N){a.current=N,c(N)},get focusedKey(){return o.current},get childFocusStrategy(){return d.current},setFocusedKey(N,C="first"){o.current=N,d.current=C,u(N)},selectedKeys:m,setSelectedKeys(N){(s||!Hc(N,m))&&p(N)},disabledKeys:f,disabledBehavior:r}}function Ki(t,e){return t?t==="all"?"all":new We(t):e}var Mi=class Nr{get selectionMode(){return this.state.selectionMode}get disallowEmptySelection(){return this.state.disallowEmptySelection}get selectionBehavior(){return this.state.selectionBehavior}setSelectionBehavior(e){this.state.setSelectionBehavior(e)}get isFocused(){return this.state.isFocused}setFocused(e){this.state.setFocused(e)}get focusedKey(){return this.state.focusedKey}get childFocusStrategy(){return this.state.childFocusStrategy}setFocusedKey(e,l){(e==null||this.collection.getItem(e))&&this.state.setFocusedKey(e,l)}get selectedKeys(){return this.state.selectedKeys==="all"?new Set(this.getSelectAllKeys()):this.state.selectedKeys}get rawSelection(){return this.state.selectedKeys}isSelected(e){if(this.state.selectionMode==="none")return!1;let l=this.getKey(e);return l==null?!1:this.state.selectedKeys==="all"?this.canSelectItem(l):this.state.selectedKeys.has(l)}get isEmpty(){return this.state.selectedKeys!=="all"&&this.state.selectedKeys.size===0}get isSelectAll(){if(this.isEmpty)return!1;if(this.state.selectedKeys==="all")return!0;if(this._isSelectAll!=null)return this._isSelectAll;let e=this.getSelectAllKeys(),l=this.state.selectedKeys;return this._isSelectAll=e.every(s=>l.has(s)),this._isSelectAll}get firstSelectedKey(){let e=null;for(let l of this.state.selectedKeys){let s=this.collection.getItem(l);(!e||s&&vl(this.collection,s,e)<0)&&(e=s)}return(e==null?void 0:e.key)??null}get lastSelectedKey(){let e=null;for(let l of this.state.selectedKeys){let s=this.collection.getItem(l);(!e||s&&vl(this.collection,s,e)>0)&&(e=s)}return(e==null?void 0:e.key)??null}get disabledKeys(){return this.state.disabledKeys}get disabledBehavior(){return this.state.disabledBehavior}extendSelection(e){if(this.selectionMode==="none")return;if(this.selectionMode==="single"){this.replaceSelection(e);return}let l=this.getKey(e);if(l==null)return;let s;if(this.state.selectedKeys==="all")s=new We([l],l,l);else{let i=this.state.selectedKeys,r=i.anchorKey??l;s=new We(i,r,l);for(let a of this.getKeyRange(r,i.currentKey??l))s.delete(a);for(let a of this.getKeyRange(l,r))this.canSelectItem(a)&&s.add(a)}this.state.setSelectedKeys(s)}getKeyRange(e,l){let s=this.collection.getItem(e),i=this.collection.getItem(l);return s&&i?vl(this.collection,s,i)<=0?this.getKeyRangeInternal(e,l):this.getKeyRangeInternal(l,e):[]}getKeyRangeInternal(e,l){var r;if((r=this.layoutDelegate)!=null&&r.getKeyRange)return this.layoutDelegate.getKeyRange(e,l);let s=[],i=e;for(;i!=null;){let a=this.collection.getItem(i);if(a&&(a.type==="item"||a.type==="cell"&&this.allowsCellSelection)&&s.push(i),i===l)return s;i=this.collection.getKeyAfter(i)}return[]}getKey(e){let l=this.collection.getItem(e);if(!l||l.type==="cell"&&this.allowsCellSelection)return e;for(;l&&l.type!=="item"&&l.parentKey!=null;)l=this.collection.getItem(l.parentKey);return!l||l.type!=="item"?null:l.key}toggleSelection(e){if(this.selectionMode==="none")return;if(this.selectionMode==="single"&&!this.isSelected(e)){this.replaceSelection(e);return}let l=this.getKey(e);if(l==null)return;let s=new We(this.state.selectedKeys==="all"?this.getSelectAllKeys():this.state.selectedKeys);s.has(l)?s.delete(l):this.canSelectItem(l)&&(s.add(l),s.anchorKey=l,s.currentKey=l),!(this.disallowEmptySelection&&s.size===0)&&this.state.setSelectedKeys(s)}replaceSelection(e){if(this.selectionMode==="none")return;let l=this.getKey(e);if(l==null)return;let s=this.canSelectItem(l)?new We([l],l,l):new We;this.state.setSelectedKeys(s)}setSelectedKeys(e){if(this.selectionMode==="none")return;let l=new We;for(let s of e){let i=this.getKey(s);if(i!=null&&(l.add(i),this.selectionMode==="single"))break}this.state.setSelectedKeys(l)}getSelectAllKeys(){let e=[],l=s=>{var i;for(;s!=null;){if(this.canSelectItem(s)){let r=this.collection.getItem(s);(r==null?void 0:r.type)==="item"&&e.push(s),r!=null&&r.hasChildNodes&&(this.allowsCellSelection||r.type!=="item")&&l(((i=gc(qn(r,this.collection)))==null?void 0:i.key)??null)}s=this.collection.getKeyAfter(s)}};return l(this.collection.getFirstKey()),e}selectAll(){!this.isSelectAll&&this.selectionMode==="multiple"&&this.state.setSelectedKeys("all")}clearSelection(){!this.disallowEmptySelection&&(this.state.selectedKeys==="all"||this.state.selectedKeys.size>0)&&this.state.setSelectedKeys(new We)}toggleSelectAll(){this.isSelectAll?this.clearSelection():this.selectAll()}select(e,l){this.selectionMode!=="none"&&(this.selectionMode==="single"?this.isSelected(e)&&!this.disallowEmptySelection?this.toggleSelection(e):this.replaceSelection(e):this.selectionBehavior==="toggle"||l&&(l.pointerType==="touch"||l.pointerType==="virtual")?this.toggleSelection(e):this.replaceSelection(e))}isSelectionEqual(e){if(e===this.state.selectedKeys)return!0;let l=this.selectedKeys;if(e.size!==l.size)return!1;for(let s of e)if(!l.has(s))return!1;for(let s of l)if(!e.has(s))return!1;return!0}canSelectItem(e){var s;if(this.state.selectionMode==="none"||this.state.disabledKeys.has(e))return!1;let l=this.collection.getItem(e);return!(!l||l!=null&&((s=l.props)!=null&&s.isDisabled)||l.type==="cell"&&!this.allowsCellSelection)}isDisabled(e){var s;var l;return this.state.disabledBehavior==="all"&&(this.state.disabledKeys.has(e)||!!((l=this.collection.getItem(e))!=null&&((s=l.props)!=null&&s.isDisabled)))}isLink(e){var s;var l;return!!((l=this.collection.getItem(e))!=null&&((s=l.props)!=null&&s.href))}getItemProps(e){var l;return(l=this.collection.getItem(e))==null?void 0:l.props}withCollection(e){return new Nr(e,this.state,{allowsCellSelection:this.allowsCellSelection,layoutDelegate:this.layoutDelegate||void 0})}constructor(e,l,s){this.collection=e,this.state=l,this.allowsCellSelection=(s==null?void 0:s.allowsCellSelection)??!1,this._isSelectAll=null,this.layoutDelegate=(s==null?void 0:s.layoutDelegate)||null}},Gc=class{*[Symbol.iterator](){yield*this.iterable}get size(){return this.keyMap.size}getKeys(){return this.keyMap.keys()}getKeyBefore(t){let e=this.keyMap.get(t);return e?e.prevKey??null:null}getKeyAfter(t){let e=this.keyMap.get(t);return e?e.nextKey??null:null}getFirstKey(){return this.firstKey}getLastKey(){return this.lastKey}getItem(t){return this.keyMap.get(t)??null}at(t){let e=[...this.getKeys()];return this.getItem(e[t])}constructor(t,{expandedKeys:e}={}){this.keyMap=new Map,this.firstKey=null,this.lastKey=null,this.iterable=t,e||(e=new Set);let l=r=>{if(this.keyMap.set(r.key,r),r.childNodes&&(r.type==="section"||e.has(r.key)))for(let a of r.childNodes)l(a)};for(let r of t)l(r);let s=null,i=0;for(let[r,a]of this.keyMap)s?(s.nextKey=r,a.prevKey=s.key):(this.firstKey=r,a.prevKey=void 0),a.type==="item"&&(a.index=i++),s=a,s.nextKey=void 0;this.lastKey=(s==null?void 0:s.key)??null}};function Uc(t){let{onExpandedChange:e}=t,[l,s]=rl(t.expandedKeys?new Set(t.expandedKeys):void 0,t.defaultExpandedKeys?new Set(t.defaultExpandedKeys):new Set,e),i=Ii(t),r=(0,g.useMemo)(()=>t.disabledKeys?new Set(t.disabledKeys):new Set,[t.disabledKeys]),a=Un(t,(0,g.useCallback)(c=>new Gc(c,{expandedKeys:l}),[l]),null);return(0,g.useEffect)(()=>{i.focusedKey!=null&&!a.getItem(i.focusedKey)&&i.setFocusedKey(null)},[a,i.focusedKey]),{collection:a,expandedKeys:l,disabledKeys:r,toggleKey:c=>{s(qc(l,c))},setExpandedKeys:s,selectionManager:new Mi(a,i)}}function qc(t,e){let l=new Set(t);return l.has(e)?l.delete(e):l.add(e),l}var jt=(0,g.createContext)({}),Il=(0,g.createContext)(null),Wc=(0,g.forwardRef)(function(t,e){let{render:l}=(0,g.useContext)(Il);return g.createElement(g.Fragment,null,l(t,e))});function Di(t,e){var r;let l=t==null?void 0:t.renderDropIndicator,s=(r=t==null?void 0:t.isVirtualDragging)==null?void 0:r.call(t),i=(0,g.useCallback)(a=>{if(s||e!=null&&e.isDropTarget(a))return l?l(a):g.createElement(Wc,{target:a})},[e==null?void 0:e.target,s,l]);return t!=null&&t.useDropIndicator?i:void 0}function Ai(t,e,l){var r,a,c;let s=t.focusedKey,i=null;if(e!=null&&((r=e.isVirtualDragging)!=null&&r.call(e))&&((a=l==null?void 0:l.target)==null?void 0:a.type)==="item"&&(i=l.target.key,l.target.dropPosition==="after")){let o=l.collection.getKeyAfter(i),d=null;if(o!=null){let u=((c=l.collection.getItem(i))==null?void 0:c.level)??0;for(;o;){let m=l.collection.getItem(o);if(!m)break;if(m.type!=="item"){o=l.collection.getKeyAfter(o);continue}if((m.level??0)<=u)break;d=o,o=l.collection.getKeyAfter(o)}}i=o??d??i}return(0,g.useMemo)(()=>new Set([s,i].filter(o=>o!=null)),[s,i])}var Pi=10,Ei=5,Qc=class{setup(t,e,l){this.delegate=t,this.state=e,this.direction=l}getDropTargetFromPoint(t,e,l){let s=this.delegate.getDropTargetFromPoint(t,e,l);return!s||s.type==="root"?s:this.resolveDropTarget(s,t,e,l)}resolveDropTarget(t,e,l,s){let i=this.pointerTracking,r=l-i.lastY,a=e-i.lastX,c=i.yDirection,o=i.xDirection;if(Math.abs(r)>Ei&&(c=r>0?"down":"up",i.yDirection=c,i.lastY=l),Math.abs(a)>Pi&&(o=a>0?"right":"left",i.xDirection=o,i.lastX=e),t.dropPosition==="before"){let m=this.state.collection.getKeyBefore(t.key);if(m!=null){let p={type:"item",key:m,dropPosition:"after"};s(p)&&(t=p)}}let d=this.getPotentialTargets(t,s);if(d.length===0)return{type:"root"};let u;return d.length>1?u=this.selectTarget(d,t,e,l,c,o):(u=d[0],i.boundaryContext=null),u}getPotentialTargets(t,e){if(t.dropPosition==="on")return[t];let l=t,s=this.state.collection,i=s.getItem(l.key);for(;i&&(i==null?void 0:i.type)!=="item"&&i.nextKey!=null;)l.key=i.nextKey,i=s.getItem(i.nextKey);let r=[l];if(i&&i.hasChildNodes&&this.state.expandedKeys.has(i.key)&&s.getChildren&&l.dropPosition==="after"){let o=null;for(let d of s.getChildren(i.key))if(d.type==="item"){o=d;break}if(o){let d={type:"item",key:o.key,dropPosition:"before"};return e(d)?[d]:[]}}if((i==null?void 0:i.nextKey)!=null)return[t];let a=i==null?void 0:i.parentKey,c=[];for(;a;){let o=s.getItem(a),d=o!=null&&o.nextKey?s.getItem(o.nextKey):null;if(!d||d.parentKey!==a){let u={type:"item",key:a,dropPosition:"after"};if(e(u)&&c.push(u),d)break}a=o==null?void 0:o.parentKey}if(c.length>0&&r.push(...c),r.length===1){let o=s.getKeyAfter(l.key),d=o?s.getItem(o):null;if(o!=null&&d&&i&&d.level!=null&&i.level!=null&&d.level>i.level){let u={type:"item",key:o,dropPosition:"before"};if(e(u))return[u]}}return r.filter(e)}selectTarget(t,e,l,s,i,r){var u;if(t.length<2)return t[0];let a=this.pointerTracking,c=(u=this.state.collection.getItem(e.key))==null?void 0:u.parentKey;if(!c)return t[0];(!a.boundaryContext||a.boundaryContext.parentKey!==c)&&(a.boundaryContext={parentKey:c,preferredTargetIndex:a.yDirection==="up"?t.length-1:0,lastSwitchY:s,lastSwitchX:l});let o=a.boundaryContext,d=Math.abs(l-o.lastSwitchX);if(Math.abs(s-o.lastSwitchY)>Ei&&i){let m=o.preferredTargetIndex||0;i==="down"&&m===0?o.preferredTargetIndex=t.length-1:i==="up"&&m===t.length-1&&(o.preferredTargetIndex=0),a.xDirection=null}if(d>Pi&&r){let m=o.preferredTargetIndex||0;r==="left"?this.direction==="ltr"?m<t.length-1&&(o.preferredTargetIndex=m+1,o.lastSwitchX=l):m>0&&(o.preferredTargetIndex=m-1,o.lastSwitchX=l):r==="right"&&(this.direction==="ltr"?m>0&&(o.preferredTargetIndex=m-1,o.lastSwitchX=l):m<t.length-1&&(o.preferredTargetIndex=m+1,o.lastSwitchX=l)),a.yDirection=null}return t[Math.max(0,Math.min(o.preferredTargetIndex||0,t.length-1))]}constructor(){this.delegate=null,this.state=null,this.direction="ltr",this.pointerTracking={lastY:0,lastX:0,yDirection:null,xDirection:null,boundaryContext:null}}},Yc=class Tl extends fi{withExpandedKeys(e,l){let s=this.clone();return s.expandedKeys=l,Tl.cloneAncestorSections(l,e,s),Tl.cloneAncestorSections(e,l,s),s.frozen=this.frozen,s}static cloneAncestorSections(e,l,s){for(let i of e)if(!l.has(i)){let r=i;for(;r!=null;){let a=s.getItem(r);if((a==null?void 0:a.type)==="section"){s.keyMap.set(r,a.clone());break}else r=(a==null?void 0:a.parentKey)??null}}}*[Symbol.iterator](){let e=this.getFirstKey(),l=e==null?null:this.getItem(e);for(;l;)if(yield l,l.type==="section")l=l.nextKey?this.getItem(l.nextKey):null;else{let s=this.getKeyAfter(l.key);l=s?this.getItem(s):null}}getLastKey(){let e=this.lastKey;if(e==null)return null;let l=this.getItem(e);for(;(l==null?void 0:l.lastChildKey)!=null&&(l.type!=="item"||this.expandedKeys.has(l.key));)l=this.getItem(l.lastChildKey);return l==null?void 0:l.key}getKeyAfter(e){let l=this.getItem(e);if(!l)return null;if((this.expandedKeys.has(l.key)||l.type!=="item")&&l.firstChildKey!=null)return l.firstChildKey;for(;l;){if(l.nextKey!=null)return l.nextKey;if(l.parentKey!=null)l=this.getItem(l.parentKey);else return null}return null}getKeyBefore(e){let l=this.getItem(e);if(!l)return null;if(l.prevKey!=null){for(l=this.getItem(l.prevKey);l&&(l.type!=="item"||this.expandedKeys.has(l.key))&&l.lastChildKey!=null;)l=this.getItem(l.lastChildKey);return(l==null?void 0:l.key)??null}return l.parentKey}getChildren(e){let l=this;return{*[Symbol.iterator](){let s=l.getItem(e),i=(s==null?void 0:s.firstChildKey)==null?null:l.getItem(s.firstChildKey);if(s&&s.type==="section"&&i)for(;i&&i.key!==s.nextKey;){yield l.getItem(i.key);let r=l.getKeyAfter(i.key);i=r==null?null:l.getItem(r)}else for(;i;)yield i,i=i.nextKey==null?null:l.getItem(i.nextKey)}}}getTextValue(e){let l=this.getItem(e);return l?l.textValue:""}constructor(...e){super(...e),this.expandedKeys=new Set}},Zc=(0,g.createContext)(null),Kl=(0,g.createContext)(null),Jc=(0,g.forwardRef)(function(t,e){return[t,e]=Ya(t,e,Zc),g.createElement(bi,{content:g.createElement(Ci,t),createCollection:()=>new Yc},l=>g.createElement(Xc,{props:t,collection:l,treeRef:e}))}),_i={expand:{ltr:"ArrowRight",rtl:"ArrowLeft"},collapse:{ltr:"ArrowLeft",rtl:"ArrowRight"}};function Xc({props:t,collection:e,treeRef:l}){let{dragAndDropHooks:s}=t,{direction:i}=Tt(),r=Sn({usage:"search",sensitivity:"base"}),a=!!(s!=null&&s.useDraggableCollectionState),c=!!(s!=null&&s.useDroppableCollectionState),o=(0,g.useRef)(a),d=(0,g.useRef)(c);(0,g.useEffect)(()=>{o.current!==a&&console.warn("Drag hooks were provided during one render, but not another. This should be avoided as it may produce unexpected behavior."),d.current!==c&&console.warn("Drop hooks were provided during one render, but not another. This should be avoided as it may produce unexpected behavior.")},[a,c]);let{selectionMode:u="none",expandedKeys:m,defaultExpandedKeys:p,onExpandedChange:f,disabledBehavior:y="all"}=t,{CollectionRoot:j,isVirtualized:v,layoutDelegate:N,dropTargetDelegate:C}=(0,g.useContext)(Lt),[w,h]=rl(m?new Set(m):void 0,p?new Set(p):new Set,f),[x,K]=(0,g.useState)(e),[D,B]=(0,g.useState)(w),[I,_]=(0,g.useState)(()=>e.withExpandedKeys(D,w));(!sd(D,w)||e!==x)&&(_(e.withExpandedKeys(D,w)),K(e),B(w));let M=Uc({...t,selectionMode:u,expandedKeys:w,onExpandedChange:h,collection:I,children:void 0,disabledBehavior:y}),{gridProps:k}=Kc({...t,isVirtualized:v,layoutDelegate:N},M,l),A,b,P,z=!1,F=null,q=(0,g.useRef)(null);if(a&&s){A=s.useDraggableCollectionState({collection:M.collection,selectionManager:M.selectionManager,preview:s.renderDragPreview?q:void 0}),s.useDraggableCollection({},A,l);let E=s.DragPreview;F=s.renderDragPreview?g.createElement(E,{ref:q},s.renderDragPreview):null}let[Q]=(0,g.useState)(()=>new Qc);if(c&&s){b=s.useDroppableCollectionState({collection:M.collection,selectionManager:M.selectionManager});let E=s.dropTargetDelegate||C||new s.ListDropTargetDelegate(M.collection,l,{direction:i});Q.setup(E,M,i);let J=new xl({collection:M.collection,collator:r,ref:l,disabledKeys:M.selectionManager.disabledKeys,disabledBehavior:M.selectionManager.disabledBehavior,direction:i,layoutDelegate:N});P=s.useDroppableCollection({keyboardDelegate:J,dropTargetDelegate:Q,onDropActivate:Y=>{var X;if(Y.target.type==="item"){let te=Y.target.key,ne=M.collection.getItem(te),xe=w.has(te);ne&&ne.hasChildNodes&&(!xe||s!=null&&((X=s.isVirtualDragging)!=null&&X.call(s)))&&M.toggleKey(te)}},onKeyDown:Y=>{let X=b==null?void 0:b.target;if(X&&X.type==="item"&&X.dropPosition==="on"){let te=M.collection.getItem(X.key);(Y.key===_i.expand[i]&&(te!=null&&te.hasChildNodes)&&!M.expandedKeys.has(X.key)||Y.key===_i.collapse[i]&&(te!=null&&te.hasChildNodes)&&M.expandedKeys.has(X.key))&&M.toggleKey(X.key)}}},b,l);let Z=b.getDropOperation;b.getDropOperation=Y=>{var xe;let{target:X,isInternal:te}=Y,ne=(A==null?void 0:A.draggingKeys)??new Set;if(te&&X.type==="item"&&ne.size>0){if(ne.has(X.key)&&X.dropPosition==="on")return"cancel";let me=X.key;for(;me!=null;){let se=(xe=M.collection.getItem(me))==null?void 0:xe.parentKey;if(se!=null&&ne.has(se))return"cancel";me=se??null}}return Z(Y)},z=b.isDropTarget({type:"root"})}let S=!!(a&&!(A!=null&&A.isDisabled)),{focusProps:W,isFocused:ee,isFocusVisible:oe}=il(),ce={isEmpty:M.collection.size===0,isFocused:ee,isFocusVisible:oe,isDropTarget:z,selectionMode:M.selectionManager.selectionMode,allowsDragging:!!S,state:M},ge=ft({...t,children:void 0,defaultClassName:"react-aria-Tree",values:ce}),ue=null;if(M.collection.size===0&&t.renderEmptyState){let{isEmpty:E,...J}=ce,Z=t.renderEmptyState({...J});ue=g.createElement("div",{role:"row",style:{display:"contents"},"aria-level":1},g.createElement("div",{role:"gridcell",style:{display:"contents"}},Z))}let fe=Bt(t,{global:!0});return g.createElement(g.Fragment,null,g.createElement(jo,null,g.createElement(Et.div,{...ze(fe,ge,k,W,P==null?void 0:P.collectionProps),ref:l,slot:t.slot||void 0,"data-empty":M.collection.size===0||void 0,"data-focused":ee||void 0,"data-drop-target":z||void 0,"data-focus-visible":oe||void 0,"data-selection-mode":M.selectionManager.selectionMode==="none"?void 0:M.selectionManager.selectionMode,"data-allows-dragging":!!S||void 0},g.createElement(hn,{values:[[Kl,M],[jt,{dragAndDropHooks:s,dragState:A,dropState:b}],[Il,{render:ed}]]},c&&g.createElement(nd,null),g.createElement(Ao,null,g.createElement(j,{collection:M.collection,persistedKeys:Ai(M.selectionManager,s,b),scrollRef:l,renderDropIndicator:Di(s,b)}))),ue)),F)}var Bi=class extends rt{};Bi.type="content";var zi=Nl(Bi,function(t){let e=(0,g.useContext)(Fi),l=ft({children:t.children,values:e});return g.createElement(Lt.Provider,{value:Si},l.children)}),Fi=(0,g.createContext)(null),Ti=class extends rt{};Ti.type="item";var Ri=$c(Ti,(t,e,l)=>{let s=(0,g.useContext)(Kl);e=al(e);let{dragAndDropHooks:i,dragState:r,dropState:a}=(0,g.useContext)(jt),{rowProps:c,gridCellProps:o,expandButtonProps:d,descriptionProps:u,...m}=hi({node:l,shouldSelectOnPressUp:!!r},s,e),p=c["aria-expanded"]===!0,f=t.hasChildItems||[...s.collection.getChildren(l.key)].length>1,y=c["aria-level"]||1,{hoverProps:j,isHovered:v}=Ja({isDisabled:!m.allowsSelection&&!m.hasAction,onHoverStart:t.onHoverStart,onHoverChange:t.onHoverChange,onHoverEnd:t.onHoverEnd}),{isFocusVisible:N,focusProps:C}=il(),{isFocusVisible:w,focusProps:h}=il({within:!0}),{checkboxProps:x}=Ic({key:l.key},s),K=null;r&&i&&(K=i.useDraggableItem({key:l.key,hasDragButton:!0},r));let D=null,B=(0,g.useRef)(null),I=(0,g.useRef)(null),_=(0,g.useRef)(null),{visuallyHiddenProps:M}=ml();a&&i&&(D=i.useDropIndicator({target:{type:"item",key:l.key,dropPosition:"on"},activateButtonRef:_},a,I));let k=r&&r.isDragging(l.key),A=D==null?void 0:D.isDropTarget,b=s.selectionManager.selectionMode,P=s.selectionManager.selectionBehavior,z=g.useMemo(()=>({...m,isHovered:v,isFocusVisible:N,isExpanded:p,hasChildItems:f,level:y,selectionMode:b,selectionBehavior:P,isFocusVisibleWithin:w,state:s,id:l.key,allowsDragging:!!r,isDragging:k,isDropTarget:A}),[m,v,N,p,f,y,w,s,l.key,r,k,A,P,b]),F=ft({...t,id:void 0,children:l.rendered,defaultClassName:"react-aria-TreeItem",defaultStyle:{"--tree-item-level":y},values:z});(0,g.useEffect)(()=>{l.textValue},[l.textValue]),(0,g.useEffect)(()=>{f&&B.current},[]);let q=(0,g.useRef)(null);(0,g.useEffect)(()=>{r&&q.current},[]);let Q=Cl({items:s.collection.getChildren(l.key),children:ee=>{switch(ee.type){case"content":return ee.render(ee);case"loader":case"item":return g.createElement(g.Fragment,null);default:throw Error("Unsupported element type in TreeRow: "+ee.type)}}}),S=yt(),W=Bt(t,{global:!0});return delete W.id,delete W.onClick,g.createElement(g.Fragment,null,D&&!D.isHidden&&g.createElement("div",{role:"row","aria-level":c["aria-level"],"aria-expanded":c["aria-expanded"],"aria-label":D.dropIndicatorProps["aria-label"]},g.createElement("div",{role:"gridcell","aria-colindex":1,style:{display:"contents"}},g.createElement("div",{role:"button",...M,...D.dropIndicatorProps,ref:I}),c["aria-expanded"]==null?null:g.createElement("div",{role:"button",...M,id:S,"aria-label":d["aria-label"],"aria-labelledby":`${S} ${c.id}`,tabIndex:-1,ref:_}))),g.createElement(Et.div,{...ze(W,c,C,j,h,K==null?void 0:K.dragProps),...F,ref:e,"data-expanded":f&&p||void 0,"data-has-child-items":f||void 0,"data-level":y,"data-selected":m.isSelected||void 0,"data-disabled":m.isDisabled||void 0,"data-hovered":v||void 0,"data-focused":m.isFocused||void 0,"data-focus-visible":N||void 0,"data-pressed":m.isPressed||void 0,"data-selection-mode":s.selectionManager.selectionMode==="none"?void 0:s.selectionManager.selectionMode,"data-allows-dragging":!!r||void 0,"data-dragging":k||void 0,"data-drop-target":A||void 0},g.createElement("div",{...o,style:{display:"contents"}},g.createElement(hn,{values:[[ko,{slots:{selection:x}}],[to,{slots:{[Za]:{},chevron:{...d,ref:B},drag:{...K==null?void 0:K.dragButtonProps,ref:q,style:{pointerEvents:"none"}}}}],[Fi,{...z}],[Po,{isSelected:m.isSelected}]]},Q))))});Nl(kl,function(t,e,l){let{isVirtualized:s}=(0,g.useContext)(Lt),i=(0,g.useContext)(Kl),{isLoading:r,onLoadMore:a,scrollOffset:c,...o}=t,d=(0,g.useRef)(null);Bn((0,g.useMemo)(()=>({onLoadMore:a,collection:i==null?void 0:i.collection,sentinelRef:d,scrollOffset:c}),[a,c,i==null?void 0:i.collection]),d),e=al(e);let{rowProps:u,gridCellProps:m}=hi({node:l},i,e),p=u["aria-level"]||1,f={role:"row","aria-level":u["aria-level"]},y=ft({...o,id:void 0,children:l.rendered,defaultClassName:"react-aria-TreeLoader",values:{level:p}}),j={};return s&&(j={display:"contents"}),g.createElement(g.Fragment,null,g.createElement("div",{style:{position:"relative",width:0,height:0},inert:zn(!0)},g.createElement("div",{"data-testid":"loadMoreSentinel",ref:d,style:{position:"absolute",height:1,width:1}})),r&&y.children&&g.createElement(Et.div,{ref:e,...ze(Bt(t),f),...y,"data-level":p},g.createElement("div",{...m,style:j},y.children)))});function ed(t,e){var d;e=al(e);let{dragAndDropHooks:l,dropState:s}=(0,g.useContext)(jt),i=(0,g.useRef)(null),{dropIndicatorProps:r,isHidden:a,isDropTarget:c}=l.useDropIndicator(t,s,i);if(a)return null;let o=s&&t.target.type==="item"?(((d=s.collection.getItem(t.target.key))==null?void 0:d.level)||0)+1:1;return g.createElement(ld,{...t,dropIndicatorProps:r,isDropTarget:c,ref:e,buttonRef:i,level:o})}function td(t,e){let{dropIndicatorProps:l,isDropTarget:s,buttonRef:i,level:r,...a}=t,{visuallyHiddenProps:c}=ml(),o=ft({...a,defaultClassName:"react-aria-DropIndicator",defaultStyle:{position:"relative","--tree-item-level":r},values:{isDropTarget:s}});return g.createElement(Et.div,{...o,role:"row","aria-level":r,ref:e,"data-drop-target":s||void 0},g.createElement("div",{role:"gridcell"},g.createElement("div",{...c,role:"button",...l,ref:i}),o.children))}var ld=(0,g.forwardRef)(td);function nd(){let{dragAndDropHooks:t,dropState:e}=(0,g.useContext)(jt),l=(0,g.useRef)(null),{dropIndicatorProps:s}=t.useDropIndicator({target:{type:"root"}},e,l),i=e.isDropTarget({type:"root"}),{visuallyHiddenProps:r}=ml();return!i&&s["aria-hidden"]?null:g.createElement("div",{role:"row","aria-hidden":s["aria-hidden"],style:{position:"absolute"}},g.createElement("div",{role:"gridcell"},g.createElement("div",{role:"button",...r,...s,ref:l})))}function sd(t,e){if(t.size!==e.size)return!1;for(let l of t)if(!e.has(l))return!1;return!0}var id=Ie(),rd=t=>{switch(t){case"chat":return"chat_model";case"autocomplete":return"autocomplete_model";case"edit":return"edit_model"}};const $i=()=>{let t=(0,id.c)(12),[e,l]=lt(ea),{saveUserConfig:s}=pt(),i;t[0]!==s||t[1]!==l?(i=async m=>{await s({config:m}).then(()=>{l(p=>({...p,...m}))})},t[0]=s,t[1]=l,t[2]=i):i=t[2];let r=i,a;t[3]!==r||t[4]!==e?(a=async(m,p)=>{var y,j,v,N,C;let f=rd(p);f&&r({ai:{...e.ai,models:{custom_models:((j=(y=e.ai)==null?void 0:y.models)==null?void 0:j.custom_models)??[],displayed_models:((N=(v=e.ai)==null?void 0:v.models)==null?void 0:N.displayed_models)??[],...(C=e.ai)==null?void 0:C.models,[f]:m}}})},t[3]=r,t[4]=e,t[5]=a):a=t[5];let c=a,o;t[6]!==r||t[7]!==e?(o=async m=>{r({ai:{...e.ai,mode:m}})},t[6]=r,t[7]=e,t[8]=o):o=t[8];let d=o,u;return t[9]!==d||t[10]!==c?(u={saveModelChange:c,saveModeChange:d},t[9]=d,t[10]=c,t[11]=u):u=t[11],u},Ot=["openai","anthropic","google","ollama","bedrock","deepseek","azure","github","openrouter","wandb","marimo"];var Ae=class Rl{constructor(e,l){this.providerId=e,this.shortModelId=l}get id(){return`${this.providerId}/${this.shortModelId}`}static parse(e){if(!e.includes("/"))return new Rl(ad(e),e);let[l,...s]=e.split("/");return new Rl(l,s.join("/"))}};function ad(t){return t.startsWith("gpt")||t.startsWith("o3")||t.startsWith("o1")?"openai":t.startsWith("claude")?"anthropic":t.startsWith("gemini")||t.startsWith("google")?"google":t.startsWith("deepseek")?"deepseek":"ollama"}function Ml(t){return Ot.includes(t)}const od=[{name:"Claude Sonnet 4.6",model:"claude-sonnet-4-6",description:"Most capable Sonnet-class model, with frontier performance across coding, agents, and professional work",providers:["anthropic"],roles:["chat","edit"],thinking:!0},{name:"Claude Opus 4.6",model:"claude-opus-4-6",description:"Strongest model for coding and long-running professional tasks",providers:["anthropic"],roles:["chat","edit"],thinking:!0},{name:"Claude Opus 4.5",model:"claude-opus-4-5",description:"Frontier reasoning model optimized for complex software engineering",providers:["anthropic"],roles:["chat","edit"],thinking:!0},{name:"Claude Sonnet 4.5",model:"claude-sonnet-4-5",description:"Advanced Sonnet model optimized for real-world agents and coding workflows",providers:["anthropic"],roles:["chat","edit"],thinking:!0},{name:"Claude Haiku 4.5",model:"claude-haiku-4-5",description:"Most efficient model, delivering near-frontier intelligence at a fraction of the cost",providers:["anthropic"],roles:["chat","edit"],thinking:!0},{name:"Gemini 3.1 Flash Lite Preview",model:"gemini-3.1-flash-lite-preview",description:"High-efficiency model optimized for high-volume use cases",providers:["google"],roles:["chat","edit"],thinking:!1},{name:"Gemini 3.1 Pro Preview",model:"gemini-3.1-pro-preview",description:"Frontier reasoning model with enhanced software engineering and agentic reliability",providers:["google"],roles:["chat","edit"],thinking:!0},{name:"Gemini 3 Flash Preview",model:"gemini-3-flash-preview",description:"High-speed thinking model for agentic workflows, multi-turn chat, and coding assistance",providers:["google"],roles:["chat","edit"],thinking:!0},{name:"Gemini 2.5 Flash",model:"gemini-2.5-flash",description:"State-of-the-art workhorse model with built-in thinking capabilities",providers:["google"],roles:["chat","edit"],thinking:!0},{name:"Gemini 2.5 Flash Lite",model:"gemini-2.5-flash-lite",description:"Most cost-efficient model supporting high throughput",providers:["google"],roles:["chat","edit"],thinking:!1},{name:"GPT-5.4",model:"gpt-5.4",description:"The latest frontier-grade model, unifying the Codex and GPT lines into a single system",providers:["openai"],roles:["chat","edit"],thinking:!1},{name:"GPT-5.3 Chat",model:"gpt-5.3-chat",description:"Most-used model that makes everyday conversations smoother and more useful",providers:["openai","azure"],roles:["chat","edit"],thinking:!1},{name:"GPT-5.3-Codex",model:"gpt-5.3-codex",description:"Most advanced agentic coding model combining frontier software engineering with broad reasoning",providers:["openai"],roles:["chat","edit"],thinking:!1},{name:"GPT-5 Mini",model:"gpt-5-mini",description:"A faster, cost-efficient version of GPT-5 for well-defined tasks",providers:["openai","azure","github"],roles:["chat","edit"],thinking:!1},{name:"GPT-5 Nano",model:"gpt-5-nano",description:"Fastest, most cost-efficient version of GPT-5",providers:["openai","azure"],roles:["chat","edit"],thinking:!1},{name:"o3",model:"o3",description:"Most powerful reasoning model with chain-of-thought capabilities",providers:["openai","azure"],roles:["chat","edit"],thinking:!0},{name:"o4 Mini",model:"o4-mini",description:"Faster, more affordable reasoning model optimized for math, coding, and visual tasks",providers:["openai","azure"],roles:["chat","edit"],thinking:!0},{name:"GPT-3.5-turbo",model:"gpt-3.5-turbo",description:"Fast and efficient model with excellent performance for everyday tasks",providers:["github"],roles:["chat","edit"],thinking:!1},{name:"Claude 4.7 Opus (Bedrock)",model:"global.anthropic.claude-opus-4-7",description:"Latest Opus model, strongest for coding and long-running professional tasks",providers:["bedrock"],roles:["chat","edit"],thinking:!0},{name:"Claude 4.6 Sonnet (Bedrock)",model:"global.anthropic.claude-sonnet-4-6",description:"Most capable Sonnet-class model, with frontier performance across coding, agents, and professional work",providers:["bedrock"],roles:["chat","edit"],thinking:!0},{name:"Claude 4.6 Opus (Bedrock)",model:"global.anthropic.claude-opus-4-6-v1",description:"Strongest model for coding and long-running professional tasks",providers:["bedrock"],roles:["chat","edit"],thinking:!0},{name:"Claude 4.5 Opus (Bedrock)",model:"global.anthropic.claude-opus-4-5-20251101-v1:0",description:"Frontier reasoning model optimized for complex software engineering",providers:["bedrock"],roles:["chat","edit"],thinking:!0},{name:"Claude 4.5 Sonnet (Bedrock)",model:"global.anthropic.claude-sonnet-4-5-20250929-v1:0",description:"Most advanced Sonnet model to date, optimized for real-world agents",providers:["bedrock"],roles:["chat","edit"],thinking:!0},{name:"Claude 4.5 Haiku (Bedrock)",model:"global.anthropic.claude-haiku-4-5-20251001-v1:0",description:"Most efficient model, delivering near-frontier intelligence at a fraction of the cost",providers:["bedrock"],roles:["chat","edit"],thinking:!0},{name:"Llama 3.3 70B Instruct",model:"us.meta.llama3-3-70b-instruct-v1:0",description:"Large language model optimized for instruction following and chat",providers:["bedrock"],roles:["chat","edit"],thinking:!1},{name:"Cohere Embed Multilingual v3",model:"cohere.embed-multilingual-v3",description:"Multilingual text embedding model for semantic search and similarity",providers:["bedrock"],roles:["embed"],thinking:!1},{name:"Cohere Rerank 3.5",model:"cohere.rerank-v3-5:0",description:"Advanced reranking model for improving search result relevance",providers:["bedrock"],roles:["rerank"],thinking:!1},{name:"gpt-oss 20b",model:"gpt-oss:20b",description:"OpenAI's open-weight models designed for powerful reasoning, agentic tasks, and versatile developer use cases.",providers:["ollama"],roles:["chat","edit"],thinking:!0},{name:"Qwen3 8b",model:"qwen3:8b",description:"Qwen3 is the latest generation of large language models in Qwen series.",providers:["ollama"],roles:["chat","edit"],thinking:!0},{name:"Gemma3 12b",model:"gemma3:12b",description:"Lightweight gemma models trained by Google, trained to run on a single GPU.",providers:["ollama"],roles:["chat","edit"],thinking:!0},{name:"DeepSeek V3.1",model:"deepseek-ai/DeepSeek-V3.1",description:"Large hybrid Mixture-of-Experts model that supports both thinking and non-thinking modes",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"Google Gemma 4 31B",model:"google/gemma-4-31B-it",description:"Vision and text model designed for advanced reasoning, agentic workflows, and longer context",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"IBM Granite 4.1 8B",model:"ibm-granite/granite-4.1-8b",description:"Long-context text model with enhanced tool calling and instruction following",providers:["wandb"],roles:["chat","edit"],thinking:!1},{name:"Meta Llama 3.3 70B (W&B)",model:"meta-llama/Llama-3.3-70B-Instruct",description:"Multilingual model excelling in conversational tasks, detailed instruction-following, and coding",providers:["wandb"],roles:["chat","edit"],thinking:!1},{name:"Meta Llama 3.1 70B (W&B)",model:"meta-llama/Llama-3.1-70B-Instruct",description:"Multilingual chatbot model optimized for responsiveness",providers:["wandb"],roles:["chat","edit"],thinking:!1},{name:"Meta Llama 3.1 8B (W&B)",model:"meta-llama/Llama-3.1-8B-Instruct",description:"Efficient conversational model optimized for responsive multilingual chatbot interactions",providers:["wandb"],roles:["chat","edit"],thinking:!1},{name:"Microsoft Phi 4 Mini 3.8B",model:"microsoft/Phi-4-mini-instruct",description:"Compact instruction-tuned model for resource-constrained environments",providers:["wandb"],roles:["chat","edit"],thinking:!1},{name:"MiniMax M2.5",model:"MiniMaxAI/MiniMax-M2.5",description:"Mixture-of-Experts model with a highly sparse architecture designed for high-throughput and low latency",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"Moonshot AI Kimi K2.6",model:"moonshotai/Kimi-K2.6",description:"Multimodal Mixture-of-Experts model with 32B activated parameters and 1T total parameters",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"Moonshot AI Kimi K2.5",model:"moonshotai/Kimi-K2.5",description:"Multimodal Mixture-of-Experts model optimized for complex tool use, reasoning, and code synthesis",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"NVIDIA Nemotron 3 Super 120B",model:"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",description:"LatentMoE model for agentic, reasoning, and conversational capabilities",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"OpenAI GPT OSS 120B",model:"openai/gpt-oss-120b",description:"Efficient Mixture-of-Experts model designed for high-reasoning, agentic and general-purpose use cases",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"OpenAI GPT OSS 20B",model:"openai/gpt-oss-20b",description:"Lower latency Mixture-of-Experts model trained on OpenAI's Harmony response format with reasoning capabilities",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"OpenPipe Qwen3 14B Instruct",model:"OpenPipe/Qwen3-14B-Instruct",description:"Multilingual instruction-tuned model optimized for agents",providers:["wandb"],roles:["chat","edit"],thinking:!1},{name:"Qwen3.5 35B A3B",model:"Qwen/Qwen3.5-35B-A3B",description:"Multimodal Mixture-of-Experts model for chat, reasoning, and agentic tasks",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"Qwen3 235B A22B Thinking-2507",model:"Qwen/Qwen3-235B-A22B-Thinking-2507",description:"Mixture-of-Experts model with reasoning capabilities for structured reasoning, math, and long-form generation",providers:["wandb"],roles:["chat","edit"],thinking:!0},{name:"Qwen3 235B A22B Instruct-2507",model:"Qwen/Qwen3-235B-A22B-Instruct-2507",description:"Multilingual Mixture-of-Experts instruction model optimized for logical reasoning",providers:["wandb"],roles:["chat","edit"],thinking:!1},{name:"Qwen3 30B A3B Instruct-2507",model:"Qwen/Qwen3-30B-A3B-Instruct-2507",description:"Mixture-of-Experts model with enhanced reasoning, coding, and long-context understanding",providers:["wandb"],roles:["chat","edit"],thinking:!1},{name:"Qwen3 Coder 480B A35B",model:"Qwen/Qwen3-Coder-480B-A35B-Instruct",description:"Mixture-of-Experts model optimized for agentic coding tasks such as function calling and tool use",providers:["wandb"],roles:["chat","edit"],thinking:!1},{name:"Z.AI GLM 5.1",model:"zai-org/GLM-5.1",description:"Mixture-of-Experts model for long-horizon agentic engineering and advanced reasoning",providers:["wandb"],roles:["chat","edit"],thinking:!0}],cd=[{name:"OpenAI",id:"openai",description:"OpenAI's API for GPT models, including GPT-3.5 and GPT-4.",url:"https://platform.openai.com/"},{name:"Amazon Bedrock",id:"bedrock",description:"Amazon Bedrock provides access to foundation models from Amazon and leading AI startups via a unified API.",url:"https://aws.amazon.com/bedrock/"},{name:"Azure",id:"azure",description:"Azure provides access to models via the Azure cloud.",url:"https://azure.microsoft.com/en-us/products/ai-services/"},{name:"Anthropic",id:"anthropic",description:"Anthropic's Claude models for conversational and completion tasks.",url:"https://www.anthropic.com/"},{name:"Google AI",id:"google",description:"Google's Vertex AI and PaLM APIs for generative and conversational models.",url:"https://cloud.google.com/vertex-ai/docs/generative-ai/learn/overview"},{name:"Ollama",id:"ollama",description:"Ollama is a lightweight, open-source model server for running and sharing LLMs.",url:"https://ollama.ai/"},{name:"GitHub",id:"github",description:"GitHub's API for GPT models with GitHub-hosted models.",url:"https://github.com/features/copilot"},{name:"marimo",id:"marimo",description:"marimo's hosted models.",url:"https://docs.marimo.io/guides/editor_features/ai_completion/"},{name:"DeepSeek",id:"deepseek",description:"DeepSeek's API for GPT models.",url:"https://deepseek.com/"},{name:"LM Studio",id:"lmstudio",description:"LM Studio's API for GPT models.",url:"https://lmstudio.ai/"},{name:"OpenRouter",id:"openrouter",description:"OpenRouter's API for GPT models.",url:"https://openrouter.ai/"},{name:"Mistral",id:"mistral",description:"Mistral's API for GPT models.",url:"https://mistral.ai/"},{name:"Vercel v0",id:"vercel",description:"Vercel's API for GPT models.",url:"https://vercel.com/"},{name:"Together AI",id:"together",description:"Together AI's API for GPT models.",url:"https://together.ai/"},{name:"xAI",id:"xai",description:"xAI's API for GPT models.",url:"https://x.ai/"},{name:"Weights & Biases",id:"wandb",description:"Weights & Biases' hosted models for ML development and AI inference.",url:"https://wandb.ai/"}],Vi=Qe(()=>{let t=new Map,e=new Map;for(let l of od){let s=l.model,i={...l,model:l.model,roles:l.roles.map(a=>a),providers:l.providers,custom:!1},r=i.roles.includes("chat")||i.roles.includes("edit");for(let a of i.providers){let c=`${a}/${s}`;t.set(c,i),r&&!e.has(a)&&e.set(a,c)}}return{modelMap:t,defaultModelByProvider:e}});var Li=Qe(()=>{let t=new Map,e=new Map;return cd.forEach((l,s)=>{let i=l.id;t.set(i,l),e.set(i,s)}),{providerMap:t,providerToOrderIdx:e}}),kt=class Zt{constructor(e,l){Ke(this,"modelsByProviderMap",new Jl);this.customModels=new Set(e),this.displayedModels=new Set(l),this.modelsMap=new Map,this.buildMaps()}static getProviderInfo(e){let{providerMap:l}=Li();return l.get(e)}static create(e){let{customModels:l=[],displayedModels:s=[]}=e;return new Zt(l.map(i=>Ae.parse(i).id),s.map(i=>Ae.parse(i).id))}buildMaps(){let e=Zt.buildMapsFromConfig({displayedModels:this.displayedModels,customModels:this.customModels});e.modelsMap.size===0&&(G.error("The configured displayed_models have filtered out all registered models. Reverting back to showing all models.",[...this.displayedModels]),e=Zt.buildMapsFromConfig({displayedModels:new Set,customModels:this.customModels})),this.modelsByProviderMap=e.modelsByProviderMap,this.modelsMap=e.modelsMap}static buildMapsFromConfig(e){let{displayedModels:l,customModels:s}=e,i=l.size>0,r=Vi().modelMap,a=new Map,c=new Map,o=new Jl;for(let d of s){if(i&&!l.has(d))continue;let u=Ae.parse(d),m={name:u.shortModelId,model:u.shortModelId,description:"Custom model",providers:[u.providerId],roles:[],thinking:!1,custom:!0};a.set(d,m)}if(i)for(let d of l){let u=r.get(d);u&&c.set(d,u)}else c=new Map(r);c=new Map([...a,...c]);for(let[d,u]of c.entries()){let m=Ae.parse(d);o.add(m.providerId,u)}return{modelsByProviderMap:o,modelsMap:c}}getDisplayedModels(){return this.displayedModels}getCustomModels(){return this.customModels}getModelsByProvider(e){return this.modelsByProviderMap.get(e)||[]}getGroupedModelsByProvider(){return this.modelsByProviderMap}getListModelsByProvider(){let e=[...this.getGroupedModelsByProvider().entries()],l=Li().providerToOrderIdx;return e.sort((s,i)=>{let r=s[0],a=i[0];return(l.get(r)??0)-(l.get(a)??0)}),e}getModelsMap(){return this.modelsMap}getModel(e){return this.modelsMap.get(e)}};const Oi=Ol("marimo:accept-completion-on-enter",!0,Ll,{getOnInit:!0});function dd(t){"scheduler"in window?window.scheduler.postTask(t,{priority:"background"}):"requestIdleCallback"in window?requestIdleCallback(t):setTimeout(t,0)}var Ht=null,ud=class{constructor(t){Ke(this,"abortController",new AbortController);this.view=t.view,this.view.dom.addEventListener("focus",()=>{Ht=new WeakRef(this.view)},{signal:this.abortController.signal,capture:!0}),this.update()}update(){let t=this.view.dom.querySelector(".cm-vimCursorLayer");if(t instanceof HTMLElement)if(_r())t.style.display="none";else{let e=(Ht==null?void 0:Ht.deref())===this.view;t.style.display=e?"":"none"}}destroy(){this.abortController.abort()}};const Hi={map:{args:["lhs","rhs"]},nmap:{mode:"normal",args:["lhs","rhs"]},vmap:{mode:"visual",args:["lhs","rhs"]},imap:{mode:"insert",args:["lhs","rhs"]},noremap:{args:["lhs","rhs"]},nnoremap:{mode:"normal",args:["lhs","rhs"]},vnoremap:{mode:"visual",args:["lhs","rhs"]},inoremap:{mode:"insert",args:["lhs","rhs"]},unmap:{args:["lhs"]},nunmap:{mode:"normal",args:["lhs"]},vunmap:{mode:"visual",args:["lhs"]},iunmap:{mode:"insert",args:["lhs"]},mapclear:{},nmapclear:{mode:"normal"},vmapclear:{mode:"visual"},imapclear:{mode:"insert"}};function md(t,e){let l=[];for(let s of t.split(`
2
+ `)){if(s.startsWith('"')||s.trim()==="")continue;let i=hd(s,e);i&&l.push(i)}return l}function hd(t,e){let l=t.split(/\s+/),s=l[0],i=0;if(s in Hi){let r=Hi[s],a={};for(let o of r.args||[])if(i+=1,i<l.length)a[o]=l[i];else{e&&e(`Not enough arguments for "${s}" command: "${t}"`);return}let c={name:s};return"args"in r&&(c.args=a),"mode"in r&&(c.mode=r.mode),c}e&&e(`Unknown vimrc command: "${t}"`)}function pd(){return gd(),fd(),[Ve.of([{key:"j",run:t=>{if(Vr(t,!0)&&Hl(t)){let e=t.state.facet(Kt),l=t.state.facet(Vl);return e.moveToNextCell({cellId:l,before:!1,noCreate:!0}),!0}return!1}}]),Ve.of([{key:"k",run:t=>{if(Br(t)&&Hl(t)){let e=t.state.facet(Kt),l=t.state.facet(Vl);return e.moveToNextCell({cellId:l,before:!0,noCreate:!0}),!0}return!1}}]),Ve.of([{linux:"Ctrl-[",win:"Ctrl-[",run:t=>{let e=mt(t);return e?Ui(e)?e.state.vim.insertMode?(pe.exitInsertMode(e,!0),!0):!1:(G.warn("Expected CodeMirror instance to have Vim state"),!1):(G.warn("Expected CodeMirror instance to have CodeMirror instance state"),!1)}}]),an.define(t=>(requestAnimationFrame(()=>{Gi.INSTANCES.addInstance(t)}),{destroy(){Gi.INSTANCES.removeInstance(t)}})),an.define(t=>new ud({view:t})),Ka.domEventHandlers({keydown(t,e){return t.ctrlKey&&t.key==="Escape"?(e.dom.dispatchEvent(new KeyboardEvent(t.type,t)),!0):!1}})]}var gd=Qe(()=>{pe.defineAction("goToDefinition",t=>{let e=t.cm6;return Rr(e)}),pe.mapCommand("gd","action","goToDefinition",{},{context:"normal"}),pe.defineEx("write","w",t=>{let e=t.cm6;e&&e.state.facet(Kt).saveNotebook()})}),fd=Qe(async()=>{var e;let t=(e=tt.get(el).keymap)==null?void 0:e.vimrc;if(t)try{G.log(`Loading vimrc from ${t}`);let l=(await La().sendFileDetails({path:t})).contents;if(!l){G.error(`Failed to load vimrc from ${t}`);return}xd(md(l,G.warn))}catch(l){G.error("Failed to load vimrc:",l)}});function xd(t){function e(r){if(!r.args){G.warn(`Could not execute vimrc command "${r.name}: expected arguments"`);return}if(!r.args.lhs||!r.args.rhs){G.warn(`Could not execute vimrc command "${r.name}: expected arguments"`);return}r.mode?pe.map(r.args.lhs,r.args.rhs,r.mode):pe.map(r.args.lhs,r.args.rhs)}function l(r){if(!r.args){G.warn(`Could not execute vimrc command "${r.name}: expected arguments"`);return}if(!r.args.lhs||!r.args.rhs){G.warn(`Could not execute vimrc command "${r.name}: expected arguments"`);return}r.mode?pe.noremap(r.args.lhs,r.args.rhs,r.mode):pe.noremap(r.args.lhs,r.args.rhs)}function s(r){if(!r.args){G.warn(`Could not execute vimrc command "${r.name}: expected arguments"`);return}if(!r.args.lhs){G.warn(`Could not execute vimrc command "${r.name}: expected arguments"`);return}r.mode?pe.unmap(r.args.lhs,r.mode):pe.unmap(r.args.lhs)}function i(r){r.mode?pe.mapclear(r.mode):pe.mapclear()}for(let r of t)"map|nmap|vmap|imap".split("|").includes(r.name)?e(r):"noremap|nnoremap|vnoremap|inoremap".split("|").includes(r.name)?l(r):"unmap|nunmap|vunmap|iunmap".split("|").includes(r.name)?s(r):"mapclear|nmapclear|vmapclear|imapclear".split("|").includes(r.name)?i(r):G.warn(`Could not execute vimrc command "${r.name}: unknown command"`)}function yd(t){return"getVimGlobalState_"in t&&typeof t.getVimGlobalState_=="function"}function vd(){var e;if(!yd(pe))return!1;let t=(e=pe.getVimGlobalState_())==null?void 0:e.macroModeState;return t?!!(t.isRecording||t.isPlaying):!1}var Gi=(at=class{constructor(){Ke(this,"instances",new Set);Ke(this,"isBroadcasting",!1)}addInstance(e){this.instances.add(e);let l=mt(e);if(!l){G.warn("Expected CodeMirror instance to have CodeMirror instance state");return}l.on("vim-mode-change",s=>{if(this.isBroadcasting)return;Xt("mode"in s,'Expected event to have a "mode" property');let i=vd();this.isBroadcasting=!0,dd(()=>{i||this.broadcastModeChange(e,s.mode,s.subMode),this.isBroadcasting=!1})})}removeInstance(e){this.instances.delete(e)}broadcastModeChange(e,l,s){Xt("exitInsertMode"in pe,"Vim does not have an exitInsertMode method"),Xt("exitVisualMode"in pe,"Vim does not have an exitVisualMode method");for(let i of this.instances)if(i!==e){let r=mt(i);if(!r){G.warn("Expected CodeMirror instance to have CodeMirror instance state");continue}let a=r.setSelections.bind(r);if(r.setSelections=()=>[],!Ui(r)){G.warn("Expected CodeMirror instance to have Vim state");continue}let c=r.state.vim;switch(l){case"normal":c.insertMode&&pe.exitInsertMode(r,!0),c.visualMode&&pe.exitVisualMode(r,!0);break;case"insert":c.insertMode||pe.handleKey(r,"i","mapping");break;case"visual":break}r.setSelections=a}}},Ke(at,"INSTANCES",new at),at);function Ui(t){return t.state.vim!==void 0}const bd=["default","vim"];function jd(t,e){switch(t.preset){case"default":return[Ve.of(qi()),Ve.of(Wi(e))];case"vim":return[Ve.of(wd()),Ve.of(Wi(e)),Ve.of([{key:"Enter",run:l=>{var s,i;return(i=(s=mt(l))==null?void 0:s.state.vim)!=null&&i.insertMode?Da(l):!1}}]),rn.high(Cd("d",l=>l.state.doc.toString()==="",l=>l.state.doc.toString()===""?(l.state.facet(Kt).deleteCell(),!0):!1)),Ve.of(Nd()),zr({status:!1}),rn.high(pd())];default:return $a(t.preset),[]}}var kd=new Set([cn,on]),qi=Qe(()=>Ta.filter(t=>!kd.has(t.run))),Wi=t=>[{key:t.getHotkey("cell.toggleComment").key,run:cn},{key:t.getHotkey("cell.toggleBlockComment").key,run:on}],wd=Qe(()=>{let t=new Set(["Enter","Ctrl-v","ArrowUp","ArrowDown","ArrowLeft","ArrowRight"]);return qi().filter(e=>!t.has(e.key||e.mac||e.linux||e.win||""))});function Cd(t,e,l){let s="",i=0;return Ve.of([{any:(r,a)=>{let c=a.key,o=a.timeStamp;return c!==t||!e(r)?(s="",i=0,!1):s===t&&o-i<500&&l(r)?(s="",i=0,!0):(s=c,i=o,!1)}}])}function Sd(t){var e;return((e=t==null?void 0:t.state.vim)==null?void 0:e.visualMode)===!0}function Nd(){let t=e=>l=>Sd(mt(l))?!1:e(l);return[{key:"ArrowDown",run:t(Ea),shift:t(Aa)},{key:"ArrowUp",run:t(Fa),shift:t(Pa)},{key:"ArrowLeft",run:t(za),shift:t(Ma)},{key:"ArrowRight",run:t(Ba),shift:t(_a)}]}function Qi(){return["compact","medium","full","columns"]}var Id={openai:t=>{var e;return!!((e=t==null?void 0:t.open_ai)!=null&&e.api_key)},anthropic:t=>{var e;return!!((e=t==null?void 0:t.anthropic)!=null&&e.api_key)},google:t=>{var e;return!!((e=t==null?void 0:t.google)!=null&&e.api_key)},github:t=>{var e;return!!((e=t==null?void 0:t.github)!=null&&e.api_key)},openrouter:t=>{var e;return!!((e=t==null?void 0:t.openrouter)!=null&&e.api_key)},azure:t=>{var e,l;return!!((e=t==null?void 0:t.azure)!=null&&e.api_key&&((l=t==null?void 0:t.azure)!=null&&l.base_url))},wandb:t=>{var e;return!!((e=t==null?void 0:t.wandb)!=null&&e.api_key)},bedrock:t=>{var e;return!!((e=t==null?void 0:t.bedrock)!=null&&e.region_name)},ollama:t=>{var e;return!!((e=t==null?void 0:t.ollama)!=null&&e.base_url)},deepseek:()=>!1,marimo:()=>!1};function Kd(t){for(let l of Ot)if(Id[l](t))return l;let e=t==null?void 0:t.custom_providers;if(e){let l=Object.entries(e).find(([s,i])=>i==null?void 0:i.base_url);if(l)return l[0]}}function Md(t){let e=Kd(t);if(e)return Vi().defaultModelByProvider.get(e)}function Dd(t){var r,a;let e={chatModel:void 0,editModel:void 0},l=!((r=t==null?void 0:t.models)!=null&&r.chat_model),s=!((a=t==null?void 0:t.models)!=null&&a.edit_model);if(!l&&!s)return e;let i=Md(t);return i&&(l&&(e.chatModel=i),s&&(e.editModel=i)),e}var Ad=Ie();function Yi(t){return t.toLowerCase().replaceAll("+","-").trim()}function Pd(t,e){let l=t.getHotkeyGroups(),s=e?new Set(l[e]||[]):new Set,i=new Map;for(let c of t.iterate()){if(s.has(c))continue;let o=t.getHotkey(c);if(!o.key||o.key.trim()==="")continue;let d=Yi(o.key);i.has(d)||i.set(d,[]);let u=i.get(d);u&&u.push({action:c,name:o.name})}let r=[],a=new Set;for(let[c,o]of i.entries())if(o.length>1){r.push({key:c,actions:o});for(let{action:d}of o)a.add(d)}return{duplicates:r,hasDuplicate:c=>a.has(c),getDuplicatesFor:c=>{let o=t.getHotkey(c);if(!o.key||o.key.trim()==="")return[];let d=Yi(o.key),u=r.find(m=>m.key===d);return!u||u.actions.length<=1?[]:u.actions.filter(m=>m.action!==c).map(m=>m.action)}}}function Ed(t,e){let l=(0,Ad.c)(3),s;return l[0]!==t||l[1]!==e?(s=Pd(t,e),l[0]=t,l[1]=e,l[2]=s):s=l[2],s}var _d=Ie(),n=$l(da(),1);const Bd=t=>{let e=(0,_d.c)(7),{duplicates:l}=t;if(l.length===0)return null;let s,i;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,n.jsx)(cl,{className:"h-4 w-4"}),i=(0,n.jsx)(Bo,{children:"Duplicate shortcuts"}),e[0]=s,e[1]=i):(s=e[0],i=e[1]);let r;e[2]===Symbol.for("react.memo_cache_sentinel")?(r=(0,n.jsx)("p",{className:"mb-2",children:"Multiple actions are assigned to the same keyboard shortcut:"}),e[2]=r):r=e[2];let a;e[3]===l?a=e[4]:(a=l.map(Fd),e[3]=l,e[4]=a);let c;return e[5]===a?c=e[6]:(c=(0,n.jsxs)(In,{variant:"warning",className:"mb-4",children:[s,i,(0,n.jsxs)(Nn,{children:[r,(0,n.jsx)("ul",{className:"space-y-2",children:a})]})]}),e[5]=a,e[6]=c),c};function zd(t){let{action:e,name:l}=t;return(0,n.jsx)("li",{children:l},e)}function Fd(t){let{key:e,actions:l}=t;return(0,n.jsxs)("li",{className:"text-xs",children:[(0,n.jsxs)("div",{className:"flex items-center gap-2 mb-1",children:[(0,n.jsx)(pl,{shortcut:e}),(0,n.jsx)("span",{className:"font-semibold",children:"is used by:"})]}),(0,n.jsx)("ul",{className:"ml-6 list-disc",children:l.map(zd)})]},e)}const Dl=nt(!1),Td=()=>{let[t,e]=lt(Dl),[l,s]=(0,g.useState)(null),[i,r]=(0,g.useState)([]),[a,c]=Yl(),o=st(ia),{saveUserConfig:d}=pt(),{duplicates:u,hasDuplicate:m,getDuplicatesFor:p}=Ed(o,"Markdown");Eo("global.showHelp",()=>e(h=>!h));let f=async h=>{let x={...a};c(K=>({...K,...h})),await d({config:h}).catch(K=>{throw c(x),K})},y=async h=>{if(!l)return;let x=h.join("-"),K={keymap:{...a.keymap,overrides:{...a.keymap.overrides,[l]:x}}};s(null),r([]),await f(K)},j=async()=>{if(!l)return;let h={keymap:{...a.keymap,overrides:{...a.keymap.overrides}}};delete h.keymap.overrides[l],s(null),r([]),await f(h)},v=async()=>{if(!window.confirm("Are you sure you want to reset all shortcuts to their default values?"))return;let h={keymap:{...a.keymap,overrides:{}}};s(null),r([]),await f(h)};if(!t)return null;let N=h=>{let x=o.getHotkey(h);if(l===h){let B=Zr(h);return(0,n.jsxs)("div",{children:[(0,n.jsx)(Oe,{defaultValue:i.join("+"),placeholder:x.name,onKeyDown:I=>{I.preventDefault();let _=[];if(I.key==="Meta"||I.key==="Control"||I.key==="Alt"||I.key==="Shift"||(I.metaKey&&_.push(ql()?"Cmd":"Meta"),I.ctrlKey&&_.push("Ctrl"),I.altKey&&_.push("Alt"),I.shiftKey&&_.push("Shift"),I.key==="-"))return;if(I.key==="Escape"&&_.length===0){s(null),r([]);return}let M=I.key.length===1?I.key.toLowerCase():I.key;I.key===" "&&(M="Space"),_.push(M),y(_)},autoFocus:!0,endAdornment:(0,n.jsx)(ie,{variant:"text",size:"xs",className:"mb-0",onClick:()=>{s(null),r([])},children:(0,n.jsx)(sl,{className:"w-4 h-4"})})}),(0,n.jsxs)("div",{className:"flex items-center justify-between w-full",children:[(0,n.jsx)("span",{className:"text-muted-foreground text-xs",children:"Press a key combination"}),B.key!==x.key&&(0,n.jsxs)("span",{className:"text-xs cursor-pointer text-primary",onClick:j,children:["Reset to default:"," ",(0,n.jsx)("span",{className:"font-mono",children:B.key})]})]})]},h)}let K=m(h),D=K?p(h):[];return(0,n.jsxs)("div",{className:"grid grid-cols-[auto_2fr_3fr] gap-2 items-center",children:[o.isEditable(h)?(0,n.jsx)(fn,{className:"cursor-pointer opacity-60 hover:opacity-100 text-muted-foreground w-3 h-3",onClick:()=>{r([]),s(h)}}):(0,n.jsx)("div",{className:"w-3 h-3"}),(0,n.jsx)(pl,{className:"justify-end",shortcut:x.key}),(0,n.jsxs)("div",{className:"flex items-center gap-1",children:[(0,n.jsx)("span",{children:x.name.toLowerCase()}),K&&(0,n.jsxs)("div",{className:"group relative inline-flex",children:[(0,n.jsx)(cl,{className:"w-3 h-3 text-(--yellow-11)"}),(0,n.jsxs)("div",{className:"invisible group-hover:visible absolute left-0 top-5 z-10 w-max max-w-xs rounded-md bg-(--yellow-2) border border-(--yellow-7) p-2 text-xs text-(--yellow-11) shadow-md",children:["Also used by:"," ",D.map(B=>o.getHotkey(B).name.toLowerCase()).join(", ")]})]})]})]},h)},C=o.getHotkeyGroups(),w=(h,x)=>{let K=C[h];return(0,n.jsxs)("div",{className:"mb-[40px] gap-2 flex flex-col",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("h3",{className:"text-lg font-medium",children:h}),x]}),K.map(N)]})};return(0,n.jsx)(Do,{open:t,onOpenChange:h=>e(h),children:(0,n.jsxs)(Mo,{className:"sm:items-center sm:top-0",children:[(0,n.jsx)(Ko,{}),(0,n.jsxs)(Io,{usePortal:!1,className:"max-h-screen sm:max-h-[90vh] overflow-y-auto sm:max-w-[850px]",children:[(0,n.jsx)(So,{children:(0,n.jsx)(No,{children:"Shortcuts"})}),(0,n.jsx)(Bd,{duplicates:u}),(0,n.jsxs)("div",{className:"flex flex-row gap-3",children:[(0,n.jsxs)("div",{className:"w-1/2",children:[w("Editing"),w("Markdown")]}),(0,n.jsxs)("div",{className:"w-1/2",children:[w("Navigation"),w("Running Cells"),w("Creation and Ordering"),(h=>w(h,(0,n.jsxs)("p",{className:"text-xs text-muted-foreground flex items-center gap-1",children:["Press"," ",a.keymap.preset==="vim"?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(pl,{shortcut:ql()?"Cmd":"Ctrl"}),(0,n.jsx)(ae,{children:"Esc"})]}):(0,n.jsx)(ae,{children:"Esc"})," ","in a cell to enter command mode"]})))("Command"),w("Other"),(0,n.jsx)(ie,{className:"mt-4 hover:bg-destructive/10 border-destructive hover:border-destructive",variant:"outline",size:"xs",onClick:v,tabIndex:-1,children:(0,n.jsx)("span",{className:"text-destructive",children:"Reset all to default"})})]})]})]})]})})};var Zi="marimo:copilot:signedIn";const Ji=Ol(Zi,null,Ll,{getOnInit:!0}),Xi=nt(null),Gt=nt(null),Al=nt({busy:!1,kind:null,message:null});function Rd(t){tt.set(Gt,t)}function $d(t){tt.get(Gt)===t&&tt.set(Gt,null)}function Vd(){return Tr.getItem(Zi)==="true"}function er(){let t=Vd(),e=la();return t&&e.completion.copilot==="github"}function Ld(){return Mr(el,t=>t.completion.copilot==="github")}var Od=Ra(),ve=G.get("@github/copilot-language-server"),Hd=class extends Hr{constructor(e){super(e);Ke(this,"documentVersion",0);Ke(this,"hasOpenedDocument",!1);Ke(this,"copilotSettings",{});Ke(this,"getCompletionInternal",async(e,l)=>await this._request("textDocument/inlineCompletion",{...e,textDocument:{...e.textDocument,version:l}}));Ke(this,"throttledGetCompletionInternal",Qo(this.getCompletionInternal,200));Ke(this,"handleNotification",e=>{if(!e.params)return;let l=e;if(l.method==="statusNotification"&&tt.set(Al,l.params),l.method==="didChangeStatus"&&tt.set(Al,l.params),l.method==="window/logMessage"){let{type:s,message:i}=l.params;switch(s){case 1:ve.error("[GitHub Copilot]",i);break;case 2:ve.warn("[GitHub Copilot]",i);break;case 3:ve.debug("[GitHub Copilot]",i);break;default:ve.log("[GitHub Copilot]",i);break}}});this.copilotSettings=e.copilotSettings??{},this.onNotification(this.handleNotification),this.attachInitializeListener()}attachInitializeListener(){this.initializePromise.then(()=>{this.sendConfiguration()})}async reInitialize(){ve.log("#reInitialize: Re-initializing LSP connection"),this.initializePromise=this.initialize(),await this.initializePromise,await this.sendConfiguration()}async sendConfiguration(){let e=this.copilotSettings;!e||Object.keys(e).length===0||(await this.notify("workspace/didChangeConfiguration",{settings:e}),ve.debug("#sendConfiguration: Configuration sent",e))}async _request(e,l){return await this.request(e,l)}async notify(e,l){return ve.debug("#notify",e,l),super.notify(e,l)}getInitializationOptions(){let e={name:"marimo",version:"0.1.0"};return{...super.getInitializationOptions(),workspaceFolders:[],capabilities:{workspace:{workspaceFolders:!1}},initializationOptions:{editorInfo:e,editorPluginInfo:e}}}isDisabled(){return!er()}async textDocumentDidOpen(e){return this.isDisabled()?e:(this.hasOpenedDocument=!0,super.textDocumentDidOpen(e))}async textDocumentCompletion(e){return[]}async textDocumentDidChange(e){if(this.isDisabled())return e;this.hasOpenedDocument||await this.textDocumentDidOpen({textDocument:{uri:e.textDocument.uri,languageId:"python",version:e.textDocument.version,text:e.contentChanges[0].text}});let l=e.contentChanges;l.length!==1&&ve.warn("#textDocumentDidChange: Multiple changes detected. This is not supported.",l);let s=l[0];"range"in s&&ve.warn("#textDocumentDidChange: Copilot doesn't support range changes.",s);let i=Er(s.text);return super.textDocumentDidChange({...e,contentChanges:[{text:i}],textDocument:Od.VersionedTextDocumentIdentifier.create(e.textDocument.uri,++this.documentVersion)})}textDocumentHover(e){return Promise.resolve({contents:[]})}signOut(){return this._request("signOut",{})}async signInInitiate(){ve.log("#signInInitiate: Starting sign-in flow");try{let e=await this._request("signIn",{});return ve.log("#signInInitiate: Sign-in flow started successfully"),e}catch(e){throw ve.warn("#signInInitiate: Failed to start sign-in flow",e),e}}async signInConfirm(e){ve.log("#signInConfirm: Confirming sign-in");try{let l=await this._request("signInConfirm",e);return ve.log("#signInConfirm: Sign-in confirmed successfully"),l}catch(l){throw ve.warn("#signInConfirm: Failed to confirm sign-in",l),l}}async signedIn(){try{let{status:e}=await this._request("checkStatus",{});return ve.log("#checkStatus: Status check completed",{status:e}),e==="SignedIn"||e==="AlreadySignedIn"||e==="OK"}catch(e){throw ve.warn("#signedIn: Failed to check sign-in status",e),e}}async getCompletion(e){if(this.isDisabled())return null;let l=this.documentVersion;if(e.textDocument.version=l,l===0)return null;Rd(l);let s=await this.throttledGetCompletionInternal(e,l);return $d(l),l===this.documentVersion?s??null:null}},Gd=Gr(),Ud=$r(),qd=class extends Ud.Transport{constructor(e){super();Ke(this,"pendingSubscriptions",[]);Ke(this,"needsReInitialization",!1);this.delegate=void 0,this.pendingSubscriptions=[],this.options={retries:e.retries??3,retryDelayMs:e.retryDelayMs??1e3,maxTimeoutMs:e.maxTimeoutMs??5e3,getWsUrl:e.getWsUrl,waitForReady:e.waitForReady,showError:e.showError}}subscribe(...e){super.subscribe(...e);let[l,s]=e;this.pendingSubscriptions.push({event:l,handler:s}),this.delegate&&this.delegate.subscribe(l,s)}unsubscribe(...e){let l=super.unsubscribe(...e),[s,i]=e;if(this.delegate&&this.delegate.unsubscribe(s,i),i)if(s){let r=this.pendingSubscriptions.findIndex(a=>a.event===s&&a.handler===i);r>-1&&this.pendingSubscriptions.splice(r,1)}else this.pendingSubscriptions=this.pendingSubscriptions.filter(r=>r.handler!==i);else s?this.pendingSubscriptions=this.pendingSubscriptions.filter(r=>r.event!==s):this.pendingSubscriptions=[];return l}createDelegate(){let e=new Gd.WebSocketTransport(this.options.getWsUrl());for(let{event:l,handler:s}of this.pendingSubscriptions)e.subscribe(l,s);return e}async tryConnect(){for(let e=1;e<=this.options.retries;e++)try{this.delegate||(this.delegate=this.createDelegate()),await this.delegate.connect(),G.log("Copilot#connect: Connected successfully");return}catch(l){if(G.warn(`Copilot#connect: Connection attempt ${e}/${this.options.retries} failed`,l),e===this.options.retries)throw this.delegate=void 0,this.needsReInitialization=!0,this.options.showError("GitHub Copilot Connection Error",`Failed to connect to GitHub Copilot. Please check your settings and try again.
3
3
 
4
- ${_o(l)}`),l;await new Promise(n=>setTimeout(n,this.options.retryDelayMs))}}async connect(){return await this.options.waitForReady(),this.tryConnect()}close(){var e;(e=this.delegate)==null||e.close(),this.delegate=void 0,this.needsReInitialization=!0}async sendData(e,l){if(!this.delegate){G.log("Copilot#sendData: Delegate not initialized, reconnecting...");try{await this.options.waitForReady(),await this.tryConnect()}catch(n){throw G.error("Copilot#sendData: Failed to reconnect transport",n),Error("Unable to connect to GitHub Copilot. Please check your settings and try again.",{cause:n})}if(this.needsReInitialization&&this.onReconnect){G.log("Copilot#sendData: Re-initializing LSP after reconnection...");try{await this.onReconnect(),this.needsReInitialization=!1}catch(n){throw this.close(),G.error("Copilot#sendData: LSP re-initialization after reconnection failed",n),n}}}if(!this.delegate)throw Error("Failed to initialize GitHub Copilot connection. Please try again.");return l??(l=this.options.maxTimeoutMs),this.delegate.sendData(e,l)}};const tr="/__marimo_copilot__.py";var lr=`file://${tr}`;const Wd=Ye(()=>{let t=ra();return new qd({getWsUrl:()=>t.getLSPURL("copilot").toString(),waitForReady:async()=>{await Ld(),await aa()},showError:(e,l)=>{Fe({variant:"danger",title:e,description:l})}})}),Ct=Ye(()=>{var n,i;let t=((i=(n=tt.get(el).ai)==null?void 0:n.github)==null?void 0:i.copilot_settings)??{},e=Wd(),l=new Hd({rootUri:lr,workspaceFolders:null,transport:e,copilotSettings:t});return e.onReconnect=()=>l.reInitialize(),l});function Yd(){return Ar({documentUri:lr,client:Ct(),languageId:"copilot",hoverEnabled:!1,completionEnabled:!1,definitionEnabled:!1,renameEnabled:!1,codeActionsEnabled:!1,signatureHelpEnabled:!1,diagnosticsEnabled:!1,sendIncrementalChanges:!1})}const sr=(0,g.memo)(()=>{let[t,e]=lt(Ji),[l,n]=lt(Xi),[i,r]=(0,g.useState)(),[a,c]=(0,g.useState)(!1),o=async m=>{m.preventDefault(),c(!0);try{let p=await Qd();if(!(p!=null&&p.verificationUri)||!p.userCode){G.error("Copilot#trySignIn: Invalid response from sign-in",{result:p}),n("connectionError"),Fe({title:"GitHub Copilot Connection Error",description:"Unable to connect to GitHub Copilot. Please check your settings and try again.",variant:"danger"});return}let{verificationUri:f,status:y,userCode:j}=p;rr(y)?e(!0):(n("signingIn"),r({url:f,code:j}))}catch(p){G.error("Copilot#trySignIn: Error during sign-in",p),n("connectionError"),Fe({title:"GitHub Copilot Connection Error",description:p instanceof Error?p.message:"Unable to connect to GitHub Copilot. Please check your settings and try again.",variant:"danger"})}finally{c(!1)}},d=async m=>{if(m.preventDefault(),i){c(!0);try{let p=await Jd(i.code);p.success?(e(!0),n("signedIn")):p.error==="connection"?(n("connectionError"),Fe({title:"GitHub Copilot Connection Error",description:"Lost connection during sign-in. Please try again.",variant:"danger",action:(0,s.jsx)(ie,{onClick:o,children:"Retry"})})):n("signInFailed")}finally{c(!1)}}},u=async m=>{m.preventDefault(),await eu(),e(!1),n("signedOut")};return(()=>{switch(l??(t?"signedIn":"connecting")){case"connecting":return(0,s.jsx)($e,{className:"font-normal flex",children:"Connecting..."});case"signedOut":return(0,s.jsx)(ie,{onClick:o,size:"xs",variant:"link",children:"Sign in to GitHub Copilot"});case"signingIn":return(0,s.jsxs)("ol",{className:"ml-4 text-sm list-decimal [&>li]:mt-2",children:[(0,s.jsx)("li",{children:(0,s.jsxs)("div",{className:"flex items-center",children:["Copy this code:",(0,s.jsx)("strong",{className:"ml-2",children:i==null?void 0:i.code}),(0,s.jsx)(qa,{className:"ml-2 cursor-pointer opacity-60 hover:opacity-100 h-3 w-3",onClick:async()=>{i&&(await mo(i.code),Fe({description:"Copied to clipboard"}))}})]})}),(0,s.jsxs)("li",{children:["Enter the code at this link:",(0,s.jsx)("a",{href:i==null?void 0:i.url,target:"_blank",rel:"noreferrer",className:Ia({variant:"link",size:"xs"}),children:i==null?void 0:i.url})]}),(0,s.jsxs)("li",{children:["Click here when done:",(0,s.jsxs)(ie,{size:"xs",onClick:d,className:"ml-1",children:[a&&(0,s.jsx)(At,{className:"h-3 w-3 mr-1 animate-spin"}),"Done"]})]})]});case"signInFailed":return(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsx)("div",{className:"text-destructive text-sm",children:"Sign in failed. Please try again."}),a?(0,s.jsx)(At,{className:"h-3 w-3 mr-1 animate-spin"}):(0,s.jsx)(ie,{onClick:o,size:"xs",variant:"link",children:"Connect to GitHub Copilot"})]});case"signedIn":return(0,s.jsxs)("div",{className:"flex items-center gap-5",children:[(0,s.jsxs)($e,{className:"font-normal flex items-center",children:[(0,s.jsx)("div",{className:"inline-flex items-center justify-center bg-(--grass-7) rounded-full p-1 mr-2",children:(0,s.jsx)(Oa,{className:"h-3 w-3 text-white"})}),"Connected"]}),(0,s.jsx)(ie,{onClick:u,size:"xs",variant:"text",children:"Disconnect"})]});case"connectionError":return(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsxs)($e,{className:"font-normal flex",children:[(0,s.jsx)(nl,{className:"h-4 w-4 mr-1"}),"Connection Error"]}),(0,s.jsx)("div",{className:"text-sm",children:"Unable to connect to GitHub Copilot."}),(0,s.jsx)(ie,{onClick:o,size:"xs",variant:"link",children:"Retry Connection"})]});case"notConnected":return(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsxs)($e,{className:"font-normal flex",children:[(0,s.jsx)(nl,{className:"h-4 w-4 mr-1"}),"Unable to connect"]}),(0,s.jsxs)("div",{className:"text-sm",children:["For troubleshooting, see the"," ",(0,s.jsx)(de,{href:"https://docs.marimo.io/getting_started/index.html#github-copilot",children:"docs"}),"."]})]})}})()});sr.displayName="CopilotConfig";var nr=5,Zd=3e3;async function Qd(){return await Ct().signInInitiate()}async function Jd(t){let e=Ct();try{G.log("Copilot#tryFinishSignIn: Attempting to confirm sign-in");let{status:l}=await e.signInConfirm({userCode:t});return rr(l)?(G.log("Copilot#tryFinishSignIn: Sign-in confirmed successfully"),{success:!0}):(G.warn("Copilot#tryFinishSignIn: Sign-in confirmation returned unexpected status",{status:l}),{success:!1})}catch(l){return ir(l)?(G.error("Copilot#tryFinishSignIn: Connection error during sign-in",l),{success:!1,error:"connection"}):await Xd(e)}}async function Xd(t){for(let e=0;e<nr;e++)try{if(await new Promise(l=>setTimeout(l,Zd)),await t.signedIn())return G.log("Copilot#tryFinishSignIn: Successfully signed in after retry"),{success:!0}}catch(l){if(G.warn("Copilot#tryFinishSignIn: Retry attempt failed",{attempt:e+1,maxRetries:nr}),ir(l))return{success:!1,error:"connection"}}return G.error("Copilot#tryFinishSignIn: All sign-in attempts failed"),{success:!1}}async function eu(){await Ct().signOut()}function ir(t){return t instanceof Error&&(t.message.includes("ECONNREFUSED")||t.message.includes("WebSocket")||t.message.includes("network"))}function rr(t){return t==="SignedIn"||t==="AlreadySignedIn"||t==="OK"}var ar="data:image/svg+xml,%3csvg%20role='img'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eAnthropic%3c/title%3e%3cpath%20d='M17.3041%203.541h-3.6718l6.696%2016.918H24Zm-10.6082%200L0%2020.459h3.7442l1.3693-3.5527h7.0052l1.3693%203.5528h3.7442L10.5363%203.5409Zm-.3712%2010.2232%202.2914-5.9456%202.2914%205.9456Z'/%3e%3c/svg%3e",tu="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20id='Ebene_1'%20xmlns='http://www.w3.org/2000/svg'%20version='1.1'%20viewBox='0%200%20466.73%20532.09'%3e%3c!--%20Generator:%20Adobe%20Illustrator%2029.6.1,%20SVG%20Export%20Plug-In%20.%20SVG%20Version:%202.1.1%20Build%209)%20--%3e%3cdefs%3e%3cstyle%3e%20.st0%20{%20fill:%20%2326251e;%20}%20%3c/style%3e%3c/defs%3e%3cpath%20class='st0'%20d='M457.43,125.94L244.42,2.96c-6.84-3.95-15.28-3.95-22.12,0L9.3,125.94c-5.75,3.32-9.3,9.46-9.3,16.11v247.99c0,6.65,3.55,12.79,9.3,16.11l213.01,122.98c6.84,3.95,15.28,3.95,22.12,0l213.01-122.98c5.75-3.32,9.3-9.46,9.3-16.11v-247.99c0-6.65-3.55-12.79-9.3-16.11h-.01ZM444.05,151.99l-205.63,356.16c-1.39,2.4-5.06,1.42-5.06-1.36v-233.21c0-4.66-2.49-8.97-6.53-11.31L24.87,145.67c-2.4-1.39-1.42-5.06,1.36-5.06h411.26c5.84,0,9.49,6.33,6.57,11.39h-.01Z'/%3e%3c/svg%3e",lu="data:image/svg+xml,%3csvg%20fill='currentColor'%20fill-rule='evenodd'%20height='1em'%20style='flex:none;line-height:1'%20viewBox='0%200%2024%2024'%20width='1em'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eDeepSeek%3c/title%3e%3cpath%20d='M23.748%204.482c-.254-.124-.364.113-.512.234-.051.039-.094.09-.137.136-.372.397-.806.657-1.373.626-.829-.046-1.537.214-2.163.848-.133-.782-.575-1.248-1.247-1.548-.352-.156-.708-.311-.955-.65-.172-.241-.219-.51-.305-.774-.055-.16-.11-.323-.293-.35-.2-.031-.278.136-.356.276-.313.572-.434%201.202-.422%201.84.027%201.436.633%202.58%201.838%203.393.137.093.172.187.129.323-.082.28-.18.552-.266.833-.055.179-.137.217-.329.14a5.526%205.526%200%2001-1.736-1.18c-.857-.828-1.631-1.742-2.597-2.458a11.365%2011.365%200%2000-.689-.471c-.985-.957.13-1.743.388-1.836.27-.098.093-.432-.779-.428-.872.004-1.67.295-2.687.684a3.055%203.055%200%2001-.465.137%209.597%209.597%200%2000-2.883-.102c-1.885.21-3.39%201.102-4.497%202.623C.082%208.606-.231%2010.684.152%2012.85c.403%202.284%201.569%204.175%203.36%205.653%201.858%201.533%203.997%202.284%206.438%202.14%201.482-.085%203.133-.284%204.994-1.86.47.234.962.327%201.78.397.63.059%201.236-.03%201.705-.128.735-.156.684-.837.419-.961-2.155-1.004-1.682-.595-2.113-.926%201.096-1.296%202.746-2.642%203.392-7.003.05-.347.007-.565%200-.845-.004-.17.035-.237.23-.256a4.173%204.173%200%20001.545-.475c1.396-.763%201.96-2.015%202.093-3.517.02-.23-.004-.467-.247-.588zM11.581%2018c-2.089-1.642-3.102-2.183-3.52-2.16-.392.024-.321.471-.235.763.09.288.207.486.371.739.114.167.192.416-.113.603-.673.416-1.842-.14-1.897-.167-1.361-.802-2.5-1.86-3.301-3.307-.774-1.393-1.224-2.887-1.298-4.482-.02-.386.093-.522.477-.592a4.696%204.696%200%20011.529-.039c2.132.312%203.946%201.265%205.468%202.774.868.86%201.525%201.887%202.202%202.891.72%201.066%201.494%202.082%202.48%202.914.348.292.625.514.891.677-.802.09-2.14.11-3.054-.614zm1-6.44a.306.306%200%2001.415-.287.302.302%200%2001.2.288.306.306%200%2001-.31.307.303.303%200%2001-.304-.308zm3.11%201.596c-.2.081-.399.151-.59.16a1.245%201.245%200%2001-.798-.254c-.274-.23-.47-.358-.552-.758a1.73%201.73%200%2001.016-.588c.07-.327-.008-.537-.239-.727-.187-.156-.426-.199-.688-.199a.559.559%200%2001-.254-.078c-.11-.054-.2-.19-.114-.358.028-.054.16-.186.192-.21.356-.202.767-.136%201.146.016.352.144.618.408%201.001.782.391.451.462.576.685.914.176.265.336.537.445.848.067.195-.019.354-.25.452z'%3e%3c/path%3e%3c/svg%3e",su="data:image/svg+xml,%3csvg%20role='img'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eGitHub%3c/title%3e%3cpath%20d='M12%20.297c-6.63%200-12%205.373-12%2012%200%205.303%203.438%209.8%208.205%2011.385.6.113.82-.258.82-.577%200-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422%2018.07%203.633%2017.7%203.633%2017.7c-1.087-.744.084-.729.084-.729%201.205.084%201.838%201.236%201.838%201.236%201.07%201.835%202.809%201.305%203.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93%200-1.31.465-2.38%201.235-3.22-.135-.303-.54-1.523.105-3.176%200%200%201.005-.322%203.3%201.23.96-.267%201.98-.399%203-.405%201.02.006%202.04.138%203%20.405%202.28-1.552%203.285-1.23%203.285-1.23.645%201.653.24%202.873.12%203.176.765.84%201.23%201.91%201.23%203.22%200%204.61-2.805%205.625-5.475%205.92.42.36.81%201.096.81%202.22%200%201.606-.015%202.896-.015%203.286%200%20.315.21.69.825.57C20.565%2022.092%2024%2017.592%2024%2012.297c0-6.627-5.373-12-12-12'/%3e%3c/svg%3e",or="data:image/svg+xml,%3csvg%20role='img'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eGoogle%20Gemini%3c/title%3e%3cpath%20d='M11.04%2019.32Q12%2021.51%2012%2024q0-2.49.93-4.68.96-2.19%202.58-3.81t3.81-2.55Q21.51%2012%2024%2012q-2.49%200-4.68-.93a12.3%2012.3%200%200%201-3.81-2.58%2012.3%2012.3%200%200%201-2.58-3.81Q12%202.49%2012%200q0%202.49-.96%204.68-.93%202.19-2.55%203.81a12.3%2012.3%200%200%201-3.81%202.58Q2.49%2012%200%2012q2.49%200%204.68.96%202.19.93%203.81%202.55t2.55%203.81'/%3e%3c/svg%3e",nu="data:image/svg+xml,%3csvg%20role='img'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eOllama%3c/title%3e%3cpath%20d='M16.361%2010.26a.894.894%200%200%200-.558.47l-.072.148.001.207c0%20.193.004.217.059.353.076.193.152.312.291.448.24.238.51.3.872.205a.86.86%200%200%200%20.517-.436.752.752%200%200%200%20.08-.498c-.064-.453-.33-.782-.724-.897a1.06%201.06%200%200%200-.466%200zm-9.203.005c-.305.096-.533.32-.65.639a1.187%201.187%200%200%200-.06.52c.057.309.31.59.598.667.362.095.632.033.872-.205.14-.136.215-.255.291-.448.055-.136.059-.16.059-.353l.001-.207-.072-.148a.894.894%200%200%200-.565-.472%201.02%201.02%200%200%200-.474.007Zm4.184%202c-.131.071-.223.25-.195.383.031.143.157.288.353.407.105.063.112.072.117.136.004.038-.01.146-.029.243-.02.094-.036.194-.036.222.002.074.07.195.143.253.064.052.076.054.255.059.164.005.198.001.264-.03.169-.082.212-.234.15-.525-.052-.243-.042-.28.087-.355.137-.08.281-.219.324-.314a.365.365%200%200%200-.175-.48.394.394%200%200%200-.181-.033c-.126%200-.207.03-.355.124l-.085.053-.053-.032c-.219-.13-.259-.145-.391-.143a.396.396%200%200%200-.193.032zm.39-2.195c-.373.036-.475.05-.654.086-.291.06-.68.195-.951.328-.94.46-1.589%201.226-1.787%202.114-.04.176-.045.234-.045.53%200%20.294.005.357.043.524.264%201.16%201.332%202.017%202.714%202.173.3.033%201.596.033%201.896%200%201.11-.125%202.064-.727%202.493-1.571.114-.226.169-.372.22-.602.039-.167.044-.23.044-.523%200-.297-.005-.355-.045-.531-.288-1.29-1.539-2.304-3.072-2.497a6.873%206.873%200%200%200-.855-.031zm.645.937a3.283%203.283%200%200%201%201.44.514c.223.148.537.458.671.662.166.251.26.508.303.82.02.143.01.251-.043.482-.08.345-.332.705-.672.957a3.115%203.115%200%200%201-.689.348c-.382.122-.632.144-1.525.138-.582-.006-.686-.01-.853-.042-.57-.107-1.022-.334-1.35-.68-.264-.28-.385-.535-.45-.946-.03-.192.025-.509.137-.776.136-.326.488-.73.836-.963.403-.269.934-.46%201.422-.512.187-.02.586-.02.773-.002zm-5.503-11a1.653%201.653%200%200%200-.683.298C5.617.74%205.173%201.666%204.985%202.819c-.07.436-.119%201.04-.119%201.503%200%20.544.064%201.24.155%201.721.02.107.031.202.023.208a8.12%208.12%200%200%201-.187.152%205.324%205.324%200%200%200-.949%201.02%205.49%205.49%200%200%200-.94%202.339%206.625%206.625%200%200%200-.023%201.357c.091.78.325%201.438.727%202.04l.13.195-.037.064c-.269.452-.498%201.105-.605%201.732-.084.496-.095.629-.095%201.294%200%20.67.009.803.088%201.266.095.555.288%201.143.503%201.534.071.128.243.393.264.407.007.003-.014.067-.046.141a7.405%207.405%200%200%200-.548%201.873c-.062.417-.071.552-.071.991%200%20.56.031.832.148%201.279L3.42%2024h1.478l-.05-.091c-.297-.552-.325-1.575-.068-2.597.117-.472.25-.819.498-1.296l.148-.29v-.177c0-.165-.003-.184-.057-.293a.915.915%200%200%200-.194-.25%201.74%201.74%200%200%201-.385-.543c-.424-.92-.506-2.286-.208-3.451.124-.486.329-.918.544-1.154a.787.787%200%200%200%20.223-.531c0-.195-.07-.355-.224-.522a3.136%203.136%200%200%201-.817-1.729c-.14-.96.114-2.005.69-2.834.563-.814%201.353-1.336%202.237-1.475.199-.033.57-.028.776.01.226.04.367.028.512-.041.179-.085.268-.19.374-.431.093-.215.165-.333.36-.576.234-.29.46-.489.822-.729.413-.27.884-.467%201.352-.561.17-.035.25-.04.569-.04.319%200%20.398.005.569.04a4.07%204.07%200%200%201%201.914.997c.117.109.398.457.488.602.034.057.095.177.132.267.105.241.195.346.374.43.14.068.286.082.503.045.343-.058.607-.053.943.016%201.144.23%202.14%201.173%202.581%202.437.385%201.108.276%202.267-.296%203.153-.097.15-.193.27-.333.419-.301.322-.301.722-.001%201.053.493.539.801%201.866.708%203.036-.062.772-.26%201.463-.533%201.854a2.096%202.096%200%200%201-.224.258.916.916%200%200%200-.194.25c-.054.109-.057.128-.057.293v.178l.148.29c.248.476.38.823.498%201.295.253%201.008.231%202.01-.059%202.581a.845.845%200%200%200-.044.098c0%20.006.329.009.732.009h.73l.02-.074.036-.134c.019-.076.057-.3.088-.516.029-.217.029-1.016%200-1.258-.11-.875-.295-1.57-.597-2.226-.032-.074-.053-.138-.046-.141.008-.005.057-.074.108-.152.376-.569.607-1.284.724-2.228.031-.26.031-1.378%200-1.628-.083-.645-.182-1.082-.348-1.525a6.083%206.083%200%200%200-.329-.7l-.038-.064.131-.194c.402-.604.636-1.262.727-2.04a6.625%206.625%200%200%200-.024-1.358%205.512%205.512%200%200%200-.939-2.339%205.325%205.325%200%200%200-.95-1.02%208.097%208.097%200%200%201-.186-.152.692.692%200%200%201%20.023-.208c.208-1.087.201-2.443-.017-3.503-.19-.924-.535-1.658-.98-2.082-.354-.338-.716-.482-1.15-.455-.996.059-1.8%201.205-2.116%203.01a6.805%206.805%200%200%200-.097.726c0%20.036-.007.066-.015.066a.96.96%200%200%201-.149-.078A4.857%204.857%200%200%200%2012%203.03c-.832%200-1.687.243-2.456.698a.958.958%200%200%201-.148.078c-.008%200-.015-.03-.015-.066a6.71%206.71%200%200%200-.097-.725C8.997%201.392%208.337.319%207.46.048a2.096%202.096%200%200%200-.585-.041Zm.293%201.402c.248.197.523.759.682%201.388.03.113.06.244.069.292.007.047.026.152.041.233.067.365.098.76.102%201.24l.002.475-.12.175-.118.178h-.278c-.324%200-.646.041-.954.124l-.238.06c-.033.007-.038-.003-.057-.144a8.438%208.438%200%200%201%20.016-2.323c.124-.788.413-1.501.696-1.711.067-.05.079-.049.157.013zm9.825-.012c.17.126.358.46.498.888.28.854.36%202.028.212%203.145-.019.14-.024.151-.057.144l-.238-.06a3.693%203.693%200%200%200-.954-.124h-.278l-.119-.178-.119-.175.002-.474c.004-.669.066-1.19.214-1.772.157-.623.434-1.185.68-1.382.078-.062.09-.063.159-.012z'/%3e%3c/svg%3e",cr="data:image/svg+xml,%3csvg%20role='img'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eOpenAI%3c/title%3e%3cpath%20d='M22.2819%209.8211a5.9847%205.9847%200%200%200-.5157-4.9108%206.0462%206.0462%200%200%200-6.5098-2.9A6.0651%206.0651%200%200%200%204.9807%204.1818a5.9847%205.9847%200%200%200-3.9977%202.9%206.0462%206.0462%200%200%200%20.7427%207.0966%205.98%205.98%200%200%200%20.511%204.9107%206.051%206.051%200%200%200%206.5146%202.9001A5.9847%205.9847%200%200%200%2013.2599%2024a6.0557%206.0557%200%200%200%205.7718-4.2058%205.9894%205.9894%200%200%200%203.9977-2.9001%206.0557%206.0557%200%200%200-.7475-7.0729zm-9.022%2012.6081a4.4755%204.4755%200%200%201-2.8764-1.0408l.1419-.0804%204.7783-2.7582a.7948.7948%200%200%200%20.3927-.6813v-6.7369l2.02%201.1686a.071.071%200%200%201%20.038.052v5.5826a4.504%204.504%200%200%201-4.4945%204.4944zm-9.6607-4.1254a4.4708%204.4708%200%200%201-.5346-3.0137l.142.0852%204.783%202.7582a.7712.7712%200%200%200%20.7806%200l5.8428-3.3685v2.3324a.0804.0804%200%200%201-.0332.0615L9.74%2019.9502a4.4992%204.4992%200%200%201-6.1408-1.6464zM2.3408%207.8956a4.485%204.485%200%200%201%202.3655-1.9728V11.6a.7664.7664%200%200%200%20.3879.6765l5.8144%203.3543-2.0201%201.1685a.0757.0757%200%200%201-.071%200l-4.8303-2.7865A4.504%204.504%200%200%201%202.3408%207.872zm16.5963%203.8558L13.1038%208.364%2015.1192%207.2a.0757.0757%200%200%201%20.071%200l4.8303%202.7913a4.4944%204.4944%200%200%201-.6765%208.1042v-5.6772a.79.79%200%200%200-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759%200%200%200-.7854%200L9.409%209.2297V6.8974a.0662.0662%200%200%201%20.0284-.0615l4.8303-2.7866a4.4992%204.4992%200%200%201%206.6802%204.66zM8.3065%2012.863l-2.02-1.1638a.0804.0804%200%200%201-.038-.0567V6.0742a4.4992%204.4992%200%200%201%207.3757-3.4537l-.142.0805L8.704%205.459a.7948.7948%200%200%200-.3927.6813zm1.0976-2.3654l2.602-1.4998%202.6069%201.4998v2.9994l-2.5974%201.4997-2.6067-1.4997Z'/%3e%3c/svg%3e",iu="data:image/svg+xml,%3csvg%20width='240'%20height='300'%20viewBox='0%200%20240%20300'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_1401_86274)'%3e%3cmask%20id='mask0_1401_86274'%20style='mask-type:luminance'%20maskUnits='userSpaceOnUse'%20x='0'%20y='0'%20width='240'%20height='300'%3e%3cpath%20d='M240%200H0V300H240V0Z'%20fill='white'/%3e%3c/mask%3e%3cg%20mask='url(%23mask0_1401_86274)'%3e%3cpath%20d='M180%20240H60V120H180V240Z'%20fill='%23CFCECD'/%3e%3cpath%20d='M180%2060H60V240H180V60ZM240%20300H0V0H240V300Z'%20fill='%23211E1E'/%3e%3c/g%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_1401_86274'%3e%3crect%20width='240'%20height='300'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e",ru="data:image/svg+xml,%3csvg%20fill='currentColor'%20fill-rule='evenodd'%20height='1em'%20style='flex:none;line-height:1'%20viewBox='0%200%2024%2024'%20width='1em'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eOpenRouter%3c/title%3e%3cpath%20d='M16.804%201.957l7.22%204.105v.087L16.73%2010.21l.017-2.117-.821-.03c-1.059-.028-1.611.002-2.268.11-1.064.175-2.038.577-3.147%201.352L8.345%2011.03c-.284.195-.495.336-.68.455l-.515.322-.397.234.385.23.53.338c.476.314%201.17.796%202.701%201.866%201.11.775%202.083%201.177%203.147%201.352l.3.045c.694.091%201.375.094%202.825.033l.022-2.159%207.22%204.105v.087L16.589%2022l.014-1.862-.635.022c-1.386.042-2.137.002-3.138-.162-1.694-.28-3.26-.926-4.881-2.059l-2.158-1.5a21.997%2021.997%200%2000-.755-.498l-.467-.28a55.927%2055.927%200%2000-.76-.43C2.908%2014.73.563%2014.116%200%2014.116V9.888l.14.004c.564-.007%202.91-.622%203.809-1.124l1.016-.58.438-.274c.428-.28%201.072-.726%202.686-1.853%201.621-1.133%203.186-1.78%204.881-2.059%201.152-.19%201.974-.213%203.814-.138l.02-1.907z'%3e%3c/path%3e%3c/svg%3e",au="data:image/svg+xml,%3csvg%20role='img'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eWeights%20&amp;%20Biases%3c/title%3e%3cpath%20d='M2.48%200a1.55%201.55%200%201%200%200%203.1%201.55%201.55%200%200%200%200-3.1zm19.04%200a1.55%201.55%200%201%200%200%203.101%201.55%201.55%200%200%200%200-3.101zM12%202.295a1.55%201.55%200%201%200%200%203.1%201.55%201.55%200%200%200%200-3.1zM2.48%205.272a2.48%202.48%200%201%200%200%204.96%202.48%202.48%200%200%200%200-4.96zm19.04%200a2.48%202.48%200%201%200%200%204.96%202.48%202.48%200%200%200%200-4.96zM12%208.496a1.55%201.55%200%201%200%200%203.1%201.55%201.55%200%200%200%200-3.1zm-9.52%203.907a1.55%201.55%200%201%200%200%203.1%201.55%201.55%200%200%200%200-3.1zm19.04%200a1.55%201.55%200%201%200%200%203.102%201.55%201.55%200%200%200%200-3.102zM12%2013.767a2.48%202.48%200%201%200%200%204.962%202.48%202.48%200%200%200%200-4.962zm-9.52%203.907a2.48%202.48%200%201%200%20.001%204.962%202.48%202.48%200%200%200%200-4.962zm19.04.93a1.55%201.55%200%201%200%200%203.102%201.55%201.55%200%200%200%200-3.101zM12%2020.9a1.55%201.55%200%201%200%200%203.1%201.55%201.55%200%200%200%200-3.1Z'/%3e%3c/svg%3e",ou="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAABtlJREFUWEetV21QlNcVfs67y67KV/EjJIRdBIxJrB9BotFqAtERTIKkk8SxNiGt7Ipa46DsxvjR0rVTKuKKJFYTE1SIxmhFbR0Kwc4YNSraqmNswhSFIrBUBD8QVGTZfU/nvrDLroqQ4Pm179nnnvvc5557zr2EXlj05hSfhgvO10AUB/A4AOHEFMCADOJrBFQx0zki+ajkkA9eyslr6kVYBUIPA8ZaLOr/ttQtYJKXgRHSy6B2EBVKwMZqa+6hnsZ0S2DY8jlD2uxSIYDxPQVx/S+CSZIEpyx3rI5wXIZsslm3neouxoMJMEhvNv6JwcvcwYkw8kk9xoZFYOjgYAT2HwBZlnH99i1UNtbj9KVKVDZcho9KhX4+GtgdDrQ52sVwGYQcbduAFRUbNrTdS+R+AhaLpL9Vu4kZ8wTYV6vFrydNxTsTY/Bk0KCHinHxymVsP/E1vjz1jRvXSQIEOqGxO39esWFbo2cQbwIzZ6r0QwPSWUa6APlp++GgyYLgwCB8dqQEs8a/iEF+/j3uSPW1RqTt2orTVRfBHmgCyjQaObZidRcJLwJPL032b3XSEQaixMqTJr6s7GlDcxNOVpZj13wz9IOG9EhAABxOJ5buyUfB6RNeeCKU+vnpYsssFrvXKYhImzvcQfJXDISH/GQg5kyeiqzifYh5eiSss+ZgoK9fryb2BMnMeG/HZhR+e/peEmtqrFuU/OpQwGKRdC21pSLjJZKwMuEtZBbtw6ujx+LDXxohfD/WWu12JH6UgfL6OncIAtpVKh5VlbW1XCGgMxlnA7xT/H4zeiLO26oVCUtMv1cyuq/2na0aMz7KcB/PzjO6rdaam6wQ0JuNx5h5EhFhybQZyD54AJuS5iNhzPN9nds9fsXeHdhRetgz3m2nv+ox6ig4qnqAped04UqWn6utwr/SrVBLKmWAkPHClS4Jw4c8jsbmmzheUYaA/r6YPjJKUcp24yqOlH8PiQgvDv8pQj2Obf3NG5i8erlSH9wmcTyFmQ2vyQxR8ZASE48vTh7BlGdGYWOSUgYU+76uBtPXW9zfyZOnYnvpYbQ7nYovSh+BJXGvY27en13FB1ofH+Qlp2LyUyPc4xZ/uQX7zohUcxmvJJ05OQ1M64TrMf9ANLTcxOK4RKTFJXZLQKxQZLin9ffRoLVdOVluGxsWib8tWun+/uZCGd7+NNsTkk+hJkMOAanCK2S8225HeuIsGF+a1i2B0KDBGB4cgkP/Oe/GaNRqxI14DkcvlqG59Y7iF/Eurv7EjRGKjU5Pxe22uy7fYdKZjflgfteT1gevvIGFU1/tlsCnv1qIV0ZFY8If30dd0zUFN2PMOGxKWoDMogJsPFSk+IRS1Wu3eKky6+O1KK0sV3xEKBdNZzszv+OJSvpZLDLe6HLdmwP5hsWY8uxoxK5ZoTQiYTOfn4TsXxiw/h8HkF3y124JLCv4HDtPHu2YjtBIOpNhI4DfeBKIDovE/kXLu1WgLwQy/74Xm74udsVuIr3JsJSBNZ4EREs9tyoH/v36K+5HqUBG4R5sPlzSqQDZSG8yTmPwQReBwX7+uHqrBetnG5Sq+KgJpO7Mxf6zJztzgI5TsDnJV8PaRoCV5Y4bOkyp2888EYqChR8owLob15TG5LJ5sdMxIkSHjMK/oKH5puIeHzEcb0+IwVffnUXx+TOuCZAz2+iVhFOyfoeKhsudKUAbOkuxoYAZbwqvODqvR43H7n8ew/73liN6aKRXgL58VDbU4+Ws37pDSISEDgL3bIOQvvjfZ/FsSCj2LlymHKdHYaZdW7Gn835AwBU//2a9KzLpTMYTAE8QE4kJxfWr9vpVrEyYiXmx8X2ev+j8GSzY/gm4s4ISsaXGunWVe2mh5pQXiJ3i+uLV/EVD+vjd+YgfGfWjSYjtFN2w3dnZiAg2lZ9z1CVLXpOXtnqzIZMZHZnnYYLEkvhEpMTEQav26TWR/zVdxx8O7IZYvYexxJRQnZ2rlEsvAuIhUtliKwK4qxF4jBStetqIMYgKi0TEkGA8ERiEwf4BGKDRulFCYtHOd586hr1nSt3d0QUgolU11lx3a70vu8TF9I5MxWBM8qT9eEAQ1CoJthsdtd9LIfEWUPsouWN3OnC3XXkP3G+E7FrrFjPQdVl+YHqHWFIGqG/J+cz8lmcUX41WSU5R/12vn17uRxskMtWuzRVl38sedr5It3TuPJI5k5kDe5yIqAqACoyBAHtcoamE4EyrWbet7MGi9BA5PNUY7FDjfYCTAQT1SKQDcAmMQiLKq1mX65WBP0QBL+ywRYu0dk3rSwx+AUAkCEFg8eLCHWJcYeYaSVKXOyT527qsXFsvieL/FjzLIPLjeMUAAAAASUVORK5CYII=",cu=Ie(),dr={openai:cr,anthropic:ar,claude:ar,gemini:or,google:or,codex:cr,ollama:nu,azure:Vo,bedrock:$o,deepseek:lu,github:su,openrouter:ru,wandb:au,marimo:ou,opencode:iu,cursor:tu};const Ee=t=>{let e=(0,cu.c)(15),l,n,i;e[0]===t?(l=e[1],n=e[2],i=e[3]):({provider:n,className:i,...l}=t,e[0]=t,e[1]=l,e[2]=n,e[3]=i);let r=i===void 0?"":i;if(n==="openai-compatible"||!(n in dr)){let d;e[4]===r?d=e[5]:(d=Pe("h-4 w-4",r),e[4]=r,e[5]=d);let u;return e[6]===d?u=e[7]:(u=(0,s.jsx)(Jt,{className:d}),e[6]=d,e[7]=u),u}let a=dr[n],c;e[8]===r?c=e[9]:(c=Pe("h-4 w-4 grayscale dark:invert",r),e[8]=r,e[9]=c);let o;return e[10]!==a||e[11]!==l||e[12]!==n||e[13]!==c?(o=(0,s.jsx)("img",{src:a,alt:n,className:c,...l}),e[10]=a,e[11]=l,e[12]=n,e[13]=c,e[14]=o):o=e[14],o};function Ut(t){switch(t){case"chat":return"bg-[var(--purple-3)] text-[var(--purple-11)]";case"autocomplete":return"bg-[var(--green-3)] text-[var(--green-11)]";case"edit":return"bg-[var(--blue-3)] text-[var(--blue-11)]";case"thinking":return"bg-[var(--purple-4)] text-[var(--purple-12)]"}return"bg-[var(--mauve-3)] text-[var(--mauve-11)]"}function ur(t){switch(t){case"chat":return"Current model used for chat conversations";case"autocomplete":return"Current model used for autocomplete autocomplete";case"edit":return"Current model used for code edits";case"rerank":return"Current model used for reranking completions";case"embed":return"Current model used for embedding"}}var qt=Ie();const L="flex flex-row items-center space-x-1 space-y-0",du=t=>{let e=(0,qt.c)(2),{children:l}=t,n;return e[0]===l?n=e[1]:(n=(0,s.jsx)("div",{className:"text-md font-semibold text-muted-foreground uppercase tracking-wide mb-1",children:l}),e[0]=l,e[1]=n),n},ut=t=>{let e=(0,qt.c)(10),l,n,i;e[0]===t?(l=e[1],n=e[2],i=e[3]):({children:l,className:n,...i}=t,e[0]=t,e[1]=l,e[2]=n,e[3]=i);let r;e[4]===n?r=e[5]:(r=Pe("text-base font-semibold underline-offset-2 text-accent-foreground uppercase tracking-wide",n),e[4]=n,e[5]=r);let a;return e[6]!==l||e[7]!==i||e[8]!==r?(a=(0,s.jsx)("div",{...i,className:r,children:l}),e[6]=l,e[7]=i,e[8]=r,e[9]=a):a=e[9],a},uu=t=>{let e=(0,qt.c)(2),{children:l}=t,n;return e[0]===l?n=e[1]:(n=(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:l}),e[0]=l,e[1]=n),n},_e=t=>{let e=(0,qt.c)(5),{title:l,children:n}=t,i;e[0]===l?i=e[1]:(i=(0,s.jsx)(ut,{children:l}),e[0]=l,e[1]=i);let r;return e[2]!==n||e[3]!==i?(r=(0,s.jsxs)("div",{className:"flex flex-col gap-4 pb-4",children:[i,n]}),e[2]=n,e[3]=i,e[4]=r):r=e[4],r},mr=[{label:"Auto (Default)",value:"auto"},{label:"Native",value:"native"},{label:"Polars",value:"polars"},{label:"Lazy Polars",value:"lazy-polars"},{label:"Pandas",value:"pandas"}],mu="us-east-1.us-east-2.us-west-1.us-west-2.ap-northeast-1.ap-northeast-2.ap-northeast-3.ap-south-1.ap-south-2.ap-southeast-1.ap-southeast-2.ap-southeast-3.ap-southeast-4.ap-southeast-5.ap-southeast-7.ap-east-2.ca-central-1.eu-central-1.eu-central-2.eu-north-1.eu-south-1.eu-south-2.eu-west-1.eu-west-2.eu-west-3.il-central-1.me-central-1.sa-east-1.us-gov-east-1.us-gov-west-1".split(".");var hu=Ie();const hr=t=>{let e=(0,hu.c)(12),{value:l,includeSuggestion:n}=t,i=n===void 0?!0:n;if(!l||l.includes("/"))return null;let r;e[0]===l?r=e[1]:(r=Ae.parse(l),e[0]=l,e[1]=r);let a=r.id,c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=(0,s.jsx)("code",{className:"font-bold",children:"provider/model"}),e[2]=c):c=e[2];let o;e[3]===l?o=e[4]:(o=(0,s.jsxs)("span",{children:["Model id should be in the form"," ",c,". ",l," is missing a provider."]}),e[3]=l,e[4]=o);let d;e[5]===Symbol.for("react.memo_cache_sentinel")?(d=(0,s.jsx)("br",{}),e[5]=d):d=e[5];let u;e[6]!==i||e[7]!==a?(u=i&&a&&(0,s.jsxs)("span",{children:["Did you mean ",(0,s.jsx)("code",{className:"font-bold",children:a}),"?"]}),e[6]=i,e[7]=a,e[8]=u):u=e[8];let m;return e[9]!==o||e[10]!==u?(m=(0,s.jsxs)(vt,{kind:"danger",className:"mt-1",children:[o,d,u]}),e[9]=o,e[10]=u,e[11]=m):m=e[11],m};var Pl=Ie();function pr(t,e){let l=(0,Pl.c)(10),n;l[0]!==e||l[1]!==t?(n=Ul(t,e),l[0]=e,l[1]=t,l[2]=n):n=l[2];let i=n,r=nt(sa),a;l[3]!==e||l[4]!==r?(a=Ul(r,e),l[3]=e,l[4]=r,l[5]=a):a=l[5];let c=a,o=c!=null&&i!==c,d;return l[6]!==i||l[7]!==o||l[8]!==c?(d={isOverridden:o,currentValue:i,overriddenValue:c},l[6]=i,l[7]=o,l[8]=c,l[9]=d):d=l[9],d}const pu=t=>{let e=(0,Pl.c)(3),{name:l,children:n}=t,[i]=Yl(),{isOverridden:r}=pr(i,l),a;return e[0]!==n||e[1]!==r?(a=r?(0,s.jsx)(qe,{delayDuration:200,content:(0,s.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,s.jsxs)("p",{children:["This setting is overridden by the"," ",(0,s.jsx)(ae,{className:"inline mx-px",children:"pyproject.toml"})," config."]}),(0,s.jsxs)("p",{children:["To change it, edit the project config"," ",(0,s.jsx)(ae,{className:"inline mx-px",children:"pyproject.toml"}),"directly."]})]}),children:(0,s.jsx)("div",{className:"text-muted-foreground opacity-80 cursor-not-allowed *:pointer-events-none",children:n})}):n,e[0]=n,e[1]=r,e[2]=a):a=e[2],a},O=t=>{let e=(0,Pl.c)(18),{userConfig:l,name:n}=t,{isOverridden:i,currentValue:r,overriddenValue:a}=pr(l,n);if(!i)return null;let c,o;e[0]===Symbol.for("react.memo_cache_sentinel")?(c=(0,s.jsxs)("span",{children:["This setting is overridden by"," ",(0,s.jsx)(ae,{className:"inline",children:"pyproject.toml"}),"."]}),o=(0,s.jsx)("br",{}),e[0]=c,e[1]=o):(c=e[0],o=e[1]);let d,u;e[2]===Symbol.for("react.memo_cache_sentinel")?(d=(0,s.jsxs)("span",{children:["Edit the ",(0,s.jsx)(ae,{className:"inline",children:"pyproject.toml"})," file directly to change this setting."]}),u=(0,s.jsx)("br",{}),e[2]=d,e[3]=u):(d=e[2],u=e[3]);let m=String(r),p;e[4]===m?p=e[5]:(p=(0,s.jsxs)("span",{children:["User value: ",(0,s.jsx)("strong",{children:m})]}),e[4]=m,e[5]=p);let f;e[6]===Symbol.for("react.memo_cache_sentinel")?(f=(0,s.jsx)("br",{}),e[6]=f):f=e[6];let y=String(a),j;e[7]===y?j=e[8]:(j=(0,s.jsxs)("span",{children:["Project value: ",(0,s.jsx)("strong",{children:y})]}),e[7]=y,e[8]=j);let v;e[9]!==p||e[10]!==j?(v=(0,s.jsxs)(s.Fragment,{children:[c,o,d,u,p,f,j]}),e[9]=p,e[10]=j,e[11]=v):v=e[11];let N;e[12]===Symbol.for("react.memo_cache_sentinel")?(N=(0,s.jsx)(As,{className:"w-3 h-3"}),e[12]=N):N=e[12];let w=String(a),C;e[13]===w?C=e[14]:(C=(0,s.jsxs)("span",{className:"text-(--amber-12) text-xs flex items-center gap-1 border rounded px-2 py-1 bg-(--amber-2) border-(--amber-6) ml-1",children:[N,"Overridden by pyproject.toml [",w,"]"]}),e[13]=w,e[14]=C);let h;return e[15]!==v||e[16]!==C?(h=(0,s.jsx)(qe,{content:v,children:C}),e[15]=v,e[16]=C,e[17]=h):h=e[17],h};var gu=Ie();function gr(){let t=(0,gu.c)(1),e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=[],t[0]=e):e=t[0],Is(fu,e)}async function fu(){return tl.get("/ai/mcp/status")}function xu(){let[t,e]=(0,g.useState)(!1);return{refresh:async()=>{e(!0);try{await tl.post("/ai/mcp/refresh",{}),Fe({title:"MCP refreshed",description:"MCP server configuration has been refreshed successfully"})}catch(l){Fe({title:"Refresh failed",description:l instanceof Error?l.message:"Failed to refresh MCP",variant:"danger"})}finally{e(!1)}},isRefreshing:t}}var fr=Ie();const yu=()=>{let t=(0,fr.c)(27),{data:e,refetch:l,isFetching:n}=gr(),i;t[0]===l?i=t[1]:(i=async()=>{try{await tl.post("/ai/mcp/refresh",{}),Fe({title:"MCP refreshed",description:"MCP server configuration has been refreshed"}),l()}catch(h){let x=h;Fe({title:"Refresh failed",description:x instanceof Error?x.message:"Failed to refresh MCP",variant:"danger"})}},t[0]=l,t[1]=i);let r=i,a;t[2]===(e==null?void 0:e.servers)?a=t[3]:(a=(e==null?void 0:e.servers)||{},t[2]=e==null?void 0:e.servers,t[3]=a);let c=a,o=Object.keys(c).length>0,d=(e==null?void 0:e.status)==="ok"&&"text-green-500",u=(e==null?void 0:e.status)==="partial"&&"text-yellow-500",m=(e==null?void 0:e.status)==="error"&&o&&"text-red-500",p;t[4]!==d||t[5]!==u||t[6]!==m?(p=Pe("h-4 w-4",d,u,m),t[4]=d,t[5]=u,t[6]=m,t[7]=p):p=t[7];let f;t[8]===p?f=t[9]:(f=(0,s.jsx)(qe,{content:"MCP Status",children:(0,s.jsx)(ga,{asChild:!0,children:(0,s.jsx)(ie,{variant:"text",size:"icon",children:(0,s.jsx)(Ps,{className:p})})})}),t[8]=p,t[9]=f);let y;t[10]===Symbol.for("react.memo_cache_sentinel")?(y=(0,s.jsx)("h4",{className:"font-medium text-sm",children:"MCP Server Status"}),t[10]=y):y=t[10];let j;t[11]===n?j=t[12]:(j=n?(0,s.jsx)(At,{className:"h-3 w-3 animate-spin"}):(0,s.jsx)(us,{className:"h-3 w-3"}),t[11]=n,t[12]=j);let v;t[13]!==r||t[14]!==n||t[15]!==j?(v=(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[y,(0,s.jsx)(ie,{variant:"ghost",size:"xs",onClick:r,disabled:n,children:j})]}),t[13]=r,t[14]=n,t[15]=j,t[16]=v):v=t[16];let N;t[17]!==o||t[18]!==c||t[19]!==e?(N=e&&(0,s.jsxs)("div",{className:"text-xs space-y-2",children:[o&&(0,s.jsxs)("div",{className:"flex justify-between items-center",children:[(0,s.jsx)("span",{className:"text-muted-foreground",children:"Overall:"}),(0,s.jsx)(Wt,{status:e.status})]}),e.error&&(0,s.jsx)("div",{className:"text-xs text-red-500 bg-red-50 dark:bg-red-950/20 p-2 rounded",children:e.error}),o&&(0,s.jsxs)("div",{className:"space-y-1",children:[(0,s.jsx)("div",{className:"text-muted-foreground font-medium",children:"Servers:"}),Object.entries(c).map(vu)]}),!o&&(0,s.jsxs)("div",{className:"text-muted-foreground text-center py-2",children:["No MCP servers configured. ",(0,s.jsx)("br",{})," Configure under"," ",(0,s.jsx)("b",{children:"Settings > AI > MCP"})]})]}),t[17]=o,t[18]=c,t[19]=e,t[20]=N):N=t[20];let w;t[21]!==N||t[22]!==v?(w=(0,s.jsx)(fa,{className:"w-[320px]",align:"start",side:"right",children:(0,s.jsxs)("div",{className:"space-y-3",children:[v,N]})}),t[21]=N,t[22]=v,t[23]=w):w=t[23];let C;return t[24]!==w||t[25]!==f?(C=(0,s.jsxs)(xa,{children:[f,w]}),t[24]=w,t[25]=f,t[26]=C):C=t[26],C},Wt=t=>{let e=(0,fr.c)(11),{status:l}=t,n=l==="ok"&&"text-green-500",i=l==="partial"&&"text-yellow-500",r=l==="error"&&"text-red-500",a=l==="failed"&&"text-red-500",c=l==="disconnected"&&"text-gray-500",o=l==="pending"&&"text-yellow-500",d=l==="connected"&&"text-green-500",u;e[0]!==n||e[1]!==i||e[2]!==r||e[3]!==a||e[4]!==c||e[5]!==o||e[6]!==d?(u=Pe("text-xs font-medium",n,i,r,a,c,o,d),e[0]=n,e[1]=i,e[2]=r,e[3]=a,e[4]=c,e[5]=o,e[6]=d,e[7]=u):u=e[7];let m;return e[8]!==l||e[9]!==u?(m=(0,s.jsx)("span",{className:u,children:l}),e[8]=l,e[9]=u,e[10]=m):m=e[10],m};function vu(t){let[e,l]=t;return(0,s.jsxs)("div",{className:"flex justify-between items-center pl-2",children:[(0,s.jsx)("span",{className:"text-muted-foreground truncate max-w-[180px]",children:e}),(0,s.jsx)(Wt,{status:l})]},e)}var bu=Ie(),ju=[{id:"marimo",title:"marimo (docs)",description:"Access marimo documentation"},{id:"context7",title:"Context7",description:"Connect to Context7 MCP server"}];const ku=t=>{let e=(0,bu.c)(36),{form:l,onSubmit:n}=t,{handleClick:i}=zl(),{data:r,refetch:a,isFetching:c}=gr(),{refresh:o,isRefreshing:d}=xu(),u;e[0]!==a||e[1]!==o?(u=async()=>{await o(),a()},e[0]=a,e[1]=o,e[2]=u):u=e[2];let m=u,p;e[3]===Symbol.for("react.memo_cache_sentinel")?(p=(0,s.jsx)(ut,{children:"MCP Servers"}),e[3]=p):p=e[3];let f;e[4]===r?f=e[5]:(f=r&&(0,s.jsx)(Wt,{status:r.status}),e[4]=r,e[5]=f);let y=d||c,j;e[6]!==c||e[7]!==d?(j=d||c?(0,s.jsx)(At,{className:"h-3 w-3 animate-spin"}):(0,s.jsx)(us,{className:"h-3 w-3"}),e[6]=c,e[7]=d,e[8]=j):j=e[8];let v;e[9]!==m||e[10]!==y||e[11]!==j?(v=(0,s.jsx)(ie,{variant:"outline",size:"xs",onClick:m,disabled:y,children:j}),e[9]=m,e[10]=y,e[11]=j,e[12]=v):v=e[12];let N;e[13]!==f||e[14]!==v?(N=(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[p,(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[f,v]})]}),e[13]=f,e[14]=v,e[15]=N):N=e[15];let w;e[16]===r?w=e[17]:(w=(r==null?void 0:r.error)&&(0,s.jsx)("div",{className:"text-xs text-red-600 dark:text-red-400 bg-red-50 dark:bg-red-950/20 p-2 rounded",children:r.error}),e[16]=r,e[17]=w);let C;e[18]===r?C=e[19]:(C=(r==null?void 0:r.servers)&&(0,s.jsx)("div",{className:"text-xs text-muted-foreground",children:Object.entries(r.servers).map(Cu)}),e[18]=r,e[19]=C);let h;e[20]===Symbol.for("react.memo_cache_sentinel")?(h=(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:"Enable Model Context Protocol (MCP) servers to provide additional capabilities and data sources for AI features."}),e[20]=h):h=e[20];let x;e[21]===Symbol.for("react.memo_cache_sentinel")?(x=(0,s.jsx)(ae,{className:"inline",children:"marimo[mcp]"}),e[21]=x):x=e[21];let K;e[22]===i?K=e[23]:(K=(0,s.jsxs)("p",{className:"text-sm text-muted-foreground",children:["This feature requires the ",x," ","package. See"," ",(0,s.jsx)(ie,{variant:"link",onClick:()=>i("optionalDeps"),size:"xs",children:"Optional Features"})," ","for more details."]}),e[22]=i,e[23]=K);let D;e[24]!==l||e[25]!==n?(D=_=>{let{field:M}=_,k=M.value||[],A=b=>{let P=k.includes(b)?k.filter(z=>z!==b):[...k,b];M.onChange(P),n(l.getValues())};return(0,s.jsx)($,{children:(0,s.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:ju.map(b=>{let P=k.includes(b.id);return(0,s.jsxs)(Uo,{className:`cursor-pointer transition-all ${P?"border-[var(--blue-9)] bg-[var(--blue-2)]":"hover:border-[var(--blue-7)]"}`,onClick:()=>A(b.id),children:[(0,s.jsx)(Oo,{children:(0,s.jsxs)("div",{className:"flex items-start justify-between",children:[(0,s.jsx)(Lo,{className:"text-base",children:b.title}),(0,s.jsx)("span",{className:`h-5 w-5 flex items-center justify-center rounded border ${P?"border-[var(--blue-7)] bg-[var(--blue-7)] text-foreground":"border-muted bg-background text-muted-foreground"}`,children:P?(0,s.jsx)(Jo,{}):null})]})}),(0,s.jsx)(Ho,{children:(0,s.jsx)(Go,{children:b.description})})]},b.id)})})})},e[24]=l,e[25]=n,e[26]=D):D=e[26];let F;e[27]!==l.control||e[28]!==D?(F=(0,s.jsx)(R,{control:l.control,name:"mcp.presets",render:D}),e[27]=l.control,e[28]=D,e[29]=F):F=e[29];let I;return e[30]!==K||e[31]!==F||e[32]!==N||e[33]!==w||e[34]!==C?(I=(0,s.jsxs)("div",{className:"flex flex-col gap-4",children:[N,w,C,h,K,F]}),e[30]=K,e[31]=F,e[32]=N,e[33]=w,e[34]=C,e[35]=I):I=e[35],I};function Cu(t){let[e,l]=t;return(0,s.jsxs)("div",{children:[e,": ",(0,s.jsx)(Wt,{status:l})]},e)}var je=Ie();const wu=t=>{let e=(0,je.c)(5),{provider:l,children:n}=t,i;e[0]===l?i=e[1]:(i=l&&(0,s.jsx)(Ee,{provider:l,className:"mr-2"}),e[0]=l,e[1]=i);let r;return e[2]!==n||e[3]!==i?(r=(0,s.jsxs)("div",{className:"flex items-center text-base font-semibold",children:[i,n]}),e[2]=n,e[3]=i,e[4]=r):r=e[4],r},Ge=t=>{let e=(0,je.c)(11),{form:l,config:n,name:i,placeholder:r,testId:a,description:c,onChange:o}=t,d;e[0]!==n||e[1]!==c||e[2]!==i||e[3]!==o||e[4]!==r||e[5]!==a?(d=m=>{let{field:p}=m;return(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"API Key"}),(0,s.jsx)(V,{children:(0,s.jsx)(Oe,{"data-testid":a,rootClassName:"flex-1",className:"m-0 inline-flex h-7",placeholder:r,type:"password",...p,value:wt(p.value),onChange:f=>{let y=f.target.value;y.includes("*")||(p.onChange(y),o==null||o(y))}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:n,name:i})]}),c&&(0,s.jsx)(U,{children:c})]})},e[0]=n,e[1]=c,e[2]=i,e[3]=o,e[4]=r,e[5]=a,e[6]=d):d=e[6];let u;return e[7]!==l.control||e[8]!==i||e[9]!==d?(u=(0,s.jsx)(R,{control:l.control,name:i,render:d}),e[7]=l.control,e[8]=i,e[9]=d,e[10]=u):u=e[10],u};function wt(t){return t==null?"":typeof t=="string"?t:String(t)}const Xe=t=>{let e=(0,je.c)(12),{form:l,config:n,name:i,placeholder:r,testId:a,description:c,disabled:o,onChange:d}=t,u=o===void 0?!1:o,m;e[0]!==n||e[1]!==c||e[2]!==u||e[3]!==i||e[4]!==d||e[5]!==r||e[6]!==a?(m=f=>{let{field:y}=f;return(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Base URL"}),(0,s.jsx)(V,{children:(0,s.jsx)(Oe,{"data-testid":a,rootClassName:"flex-1",className:"m-0 inline-flex h-7",placeholder:r,...y,value:wt(y.value),disabled:u,onChange:j=>{y.onChange(j.target.value),d==null||d(j.target.value)}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:n,name:i})]}),c&&(0,s.jsx)(U,{children:c})]})},e[0]=n,e[1]=c,e[2]=u,e[3]=i,e[4]=d,e[5]=r,e[6]=a,e[7]=m):m=e[7];let p;return e[8]!==l.control||e[9]!==i||e[10]!==m?(p=(0,s.jsx)(R,{control:l.control,name:i,render:m}),e[8]=l.control,e[9]=i,e[10]=m,e[11]=p):p=e[11],p},El=t=>{let e=(0,je.c)(13),{form:l,config:n,name:i,placeholder:r,description:a,label:c,forRole:o,onSubmit:d}=t,u;e[0]!==n||e[1]!==a||e[2]!==o||e[3]!==l||e[4]!==c||e[5]!==i||e[6]!==d||e[7]!==r?(u=p=>{let{field:f}=p,y=wt(f.value),j=v=>{f.onChange(v),d(l.getValues())};return(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:c}),(0,s.jsx)(V,{children:(0,s.jsx)(wr,{value:y,placeholder:r,onSelect:j,triggerClassName:"text-sm",customDropdownContent:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(Dt,{}),(0,s.jsxs)("p",{className:"px-2 py-1.5 text-sm text-muted-secondary flex items-center gap-1",children:["Enter a custom model",(0,s.jsx)(qe,{content:"Models should include the provider prefix, e.g. 'openai/gpt-4o'",children:(0,s.jsx)(Ur,{className:"h-3 w-3"})})]}),(0,s.jsxs)("div",{className:"px-2 py-1",children:[(0,s.jsx)(Oe,{className:"w-full border-border shadow-none focus-visible:shadow-xs",placeholder:r,...f,value:wt(f.value),onKeyDown:ns.stopPropagation()}),y&&(0,s.jsx)(hr,{value:y,includeSuggestion:!1})]})]}),forRole:o})}),(0,s.jsx)(H,{})]}),(0,s.jsx)(O,{userConfig:n,name:i}),(0,s.jsx)(hr,{value:y}),a&&(0,s.jsx)(U,{children:a})]})},e[0]=n,e[1]=a,e[2]=o,e[3]=l,e[4]=c,e[5]=i,e[6]=d,e[7]=r,e[8]=u):u=e[8];let m;return e[9]!==l.control||e[10]!==i||e[11]!==u?(m=(0,s.jsx)(R,{control:l.control,name:i,render:u}),e[9]=l.control,e[10]=i,e[11]=u,e[12]=m):m=e[12],m},Su=t=>{let e=(0,je.c)(10),{form:l,config:n,name:i,options:r,testId:a,disabled:c}=t,o=c===void 0?!1:c,d;e[0]!==n||e[1]!==o||e[2]!==i||e[3]!==r||e[4]!==a?(d=m=>{let{field:p}=m;return(0,s.jsx)("div",{className:"flex flex-col space-y-1",children:(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Provider"}),(0,s.jsx)(V,{children:(0,s.jsx)(De,{"data-testid":a,onChange:f=>{f.target.value==="none"?p.onChange(!1):p.onChange(f.target.value)},value:wt(p.value===!0?"github":p.value===!1?"none":p.value),disabled:o,className:"inline-flex mr-2",children:r.map(Tu)})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:n,name:i})]})})},e[0]=n,e[1]=o,e[2]=i,e[3]=r,e[4]=a,e[5]=d):d=e[5];let u;return e[6]!==l.control||e[7]!==i||e[8]!==d?(u=(0,s.jsx)(R,{control:l.control,name:i,render:d}),e[6]=l.control,e[7]=i,e[8]=d,e[9]=u):u=e[9],u};var Nu=({form:t,config:e,onSubmit:l})=>{let n=t.getValues("completion.copilot");if(n===!1)return null;if(n==="codeium")return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("p",{className:"text-sm text-muted-secondary",children:["To get a Windsurf API key, follow"," ",(0,s.jsx)(de,{href:"https://docs.marimo.io/guides/editor_features/ai_completion.html#windsurf-copilot",children:"these instructions"}),"."]}),(0,s.jsx)(Ge,{form:t,config:e,name:"completion.codeium_api_key",placeholder:"key",testId:"codeium-api-key-input"})]});if(n==="github")return(0,s.jsx)(sr,{});if(n==="custom")return(0,s.jsx)(El,{label:"Autocomplete Model",form:t,config:e,name:"ai.models.autocomplete_model",placeholder:"ollama/qwen2.5-coder:1.5b",description:"Model to use for code completion when using a custom provider.",onSubmit:l,forRole:"autocomplete"})},St=t=>{let e=(0,je.c)(5),{children:l,className:n}=t,i;e[0]===n?i=e[1]:(i=Pe("flex flex-col gap-4 pb-4",n),e[0]=n,e[1]=i);let r;return e[2]!==l||e[3]!==i?(r=(0,s.jsx)("div",{className:i,children:l}),e[2]=l,e[3]=i,e[4]=r):r=e[4],r},Iu=t=>{let e=(0,je.c)(23),{qualifiedId:l,model:n,isEnabled:i,onToggle:r,onDelete:a}=t,c;e[0]!==r||e[1]!==l?(c=()=>{r(l)},e[0]=r,e[1]=l,e[2]=c):c=e[2];let o=c,d;e[3]!==a||e[4]!==l?(d=v=>{v.stopPropagation(),v.preventDefault(),a(l)},e[3]=a,e[4]=l,e[5]=d):d=e[5];let u=d,m;e[6]===n?m=e[7]:(m=(0,s.jsx)(Ku,{model:n}),e[6]=n,e[7]=m);let p;e[8]!==u||e[9]!==n.custom?(p=n.custom&&(0,s.jsx)(ie,{variant:"ghost",size:"icon",onClick:u,className:"mr-2 hover:bg-transparent",children:(0,s.jsx)(fs,{className:"h-3.5 w-3.5 text-muted-foreground"})}),e[8]=u,e[9]=n.custom,e[10]=p):p=e[10];let f;e[11]!==o||e[12]!==i?(f=(0,s.jsx)(ca,{checked:i,onClick:o,size:"sm"}),e[11]=o,e[12]=i,e[13]=f):f=e[13];let y;e[14]!==m||e[15]!==p||e[16]!==f?(y=(0,s.jsx)(zi,{children:(0,s.jsxs)("div",{className:"flex items-center justify-between px-3 py-2.5 border-b last:border-b-0 cursor-pointer outline-none",children:[m,p,f]})}),e[14]=m,e[15]=p,e[16]=f,e[17]=y):y=e[17];let j;return e[18]!==o||e[19]!==n.name||e[20]!==l||e[21]!==y?(j=(0,s.jsx)(Ri,{id:l,textValue:n.name,className:"pl-6 outline-none data-focused:bg-muted/50 hover:bg-muted/50",onAction:o,children:y}),e[18]=o,e[19]=n.name,e[20]=l,e[21]=y,e[22]=j):j=e[22],j},Ku=t=>{let e=(0,je.c)(18),{model:l}=t,n;e[0]===l.name?n=e[1]:(n=(0,s.jsx)("h3",{className:"font-medium text-sm",children:l.name}),e[0]=l.name,e[1]=n);let i;e[2]===l.custom?i=e[3]:(i=l.custom&&(0,s.jsx)(Jt,{className:"h-4 w-4"}),e[2]=l.custom,e[3]=i);let r;e[4]===i?r=e[5]:(r=(0,s.jsx)(qe,{content:"Custom model",children:i}),e[4]=i,e[5]=r);let a;e[6]===l.thinking?a=e[7]:(a=l.thinking&&(0,s.jsxs)("div",{className:Pe("flex items-center gap-1 rounded px-1 py-0.5 w-fit",Ut("thinking")),children:[(0,s.jsx)(gl,{className:"h-3 w-3"}),(0,s.jsx)("span",{className:"text-xs font-medium",children:"Reasoning"})]}),e[6]=l.thinking,e[7]=a);let c;e[8]!==n||e[9]!==r||e[10]!==a?(c=(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[n,r,a]}),e[8]=n,e[9]=r,e[10]=a,e[11]=c):c=e[11];let o;e[12]!==l.custom||e[13]!==l.description?(o=l.description&&!l.custom&&(0,s.jsx)("p",{className:"text-sm text-muted-foreground line-clamp-2",children:l.description}),e[12]=l.custom,e[13]=l.description,e[14]=o):o=e[14];let d;return e[15]!==c||e[16]!==o?(d=(0,s.jsxs)("div",{className:"flex flex-col flex-1 gap-0.5",children:[c,o]}),e[15]=c,e[16]=o,e[17]=d):d=e[17],d};const Mu=t=>{let e=(0,je.c)(13),{form:l,config:n,onSubmit:i}=t,r,a;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=(0,s.jsx)(ut,{children:"Code Completion"}),a=(0,s.jsx)("p",{className:"text-sm text-muted-secondary",children:"Choose GitHub Copilot, Codeium, or a custom provider (such as Ollama) to enable AI-powered code completion."}),e[0]=r,e[1]=a):(r=e[0],a=e[1]);let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=["none","github","codeium","custom"],e[2]=c):c=e[2];let o;e[3]!==n||e[4]!==l?(o=(0,s.jsx)(Su,{form:l,config:n,name:"completion.copilot",options:c,testId:"copilot-select"}),e[3]=n,e[4]=l,e[5]=o):o=e[5];let d;e[6]!==n||e[7]!==l||e[8]!==i?(d=Nu({form:l,config:n,onSubmit:i}),e[6]=n,e[7]=l,e[8]=i,e[9]=d):d=e[9];let u;return e[10]!==o||e[11]!==d?(u=(0,s.jsxs)(St,{children:[r,a,o,d]}),e[10]=o,e[11]=d,e[12]=u):u=e[12],u};var Te=t=>{let e=(0,je.c)(15),{title:l,triggerClassName:n,provider:i,children:r,isConfigured:a,value:c}=t,o=c??i,d;e[0]===a?d=e[1]:(d=a&&(0,s.jsx)("span",{className:"ml-2 px-1 rounded bg-muted text-xs font-medium border",children:"Configured"}),e[0]=a,e[1]=d);let u;e[2]!==i||e[3]!==d||e[4]!==l?(u=(0,s.jsxs)(wu,{provider:i,children:[l,d]}),e[2]=i,e[3]=d,e[4]=l,e[5]=u):u=e[5];let m;e[6]!==u||e[7]!==n?(m=(0,s.jsx)(ua,{className:n,children:u}),e[6]=u,e[7]=n,e[8]=m):m=e[8];let p;e[9]===r?p=e[10]:(p=(0,s.jsx)(ha,{wrapperClassName:"flex flex-col gap-4",children:r}),e[9]=r,e[10]=p);let f;return e[11]!==o||e[12]!==m||e[13]!==p?(f=(0,s.jsxs)(ma,{value:o,children:[m,p]}),e[11]=o,e[12]=m,e[13]=p,e[14]=f):f=e[14],f};const Du=({form:t,config:e,onSubmit:l})=>{let[n,i]=(0,g.useState)(!1),[r,a]=(0,g.useState)(""),[c,o]=(0,g.useState)(""),[d,u]=(0,g.useState)(""),m=(0,g.useId)(),p=(0,g.useId)(),f=(0,g.useId)(),y=r.toLowerCase().replaceAll(/\s+/g,"_"),j=t.watch("ai.custom_providers"),v=Ot.includes(y)||j&&Object.keys(j).includes(y),N=y.includes("."),w=y.trim()&&d.trim()&&!v&&!N,C=()=>{a(""),o(""),u(""),i(!1)};return(0,s.jsx)(R,{control:t.control,name:"ai.custom_providers",render:({field:h})=>{let x=h.value||{},K=Object.entries(x),D=()=>{w&&(h.onChange({...x,[y]:{api_key:c||void 0,base_url:d}}),l(t.getValues()),C())},F=k=>{let{[k]:A,...b}=x;t.resetField("ai.custom_providers"),t.setValue("ai.custom_providers",b,{shouldDirty:!0}),l(t.getValues())},I=(0,s.jsxs)("div",{className:"flex flex-col gap-3 p-4 border border-border rounded-md bg-muted/20",children:[(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsx)($e,{htmlFor:m,children:"Provider Name"}),(0,s.jsx)(Oe,{id:m,placeholder:"e.g., together, groq, mistral",value:r,onChange:k=>a(k.target.value)}),v&&(0,s.jsx)("p",{className:"text-xs text-destructive",children:"A provider with this name already exists."}),N&&(0,s.jsx)("p",{className:"text-xs text-destructive",children:"Provider names cannot contain '.' characters."}),r&&!N&&(0,s.jsxs)("p",{className:"text-xs text-muted-secondary",children:["Use models with prefix:"," ",(0,s.jsxs)(ae,{className:"inline text-xs",children:[y,"/"]})]})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsxs)($e,{htmlFor:f,children:["Base URL ",(0,s.jsx)("span",{className:"text-destructive",children:"*"})]}),(0,s.jsx)(Oe,{id:f,placeholder:"e.g., https://api.together.xyz/v1",value:d,onChange:k=>u(k.target.value)})]}),(0,s.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,s.jsx)($e,{htmlFor:p,children:"API Key (optional)"}),(0,s.jsx)(Oe,{id:p,placeholder:"sk-...",type:"password",value:c,onChange:k=>o(k.target.value)})]}),(0,s.jsxs)("div",{className:"flex gap-2 mt-1",children:[(0,s.jsx)(ie,{onClick:D,disabled:!w,size:"xs",children:"Add Provider"}),(0,s.jsx)(ie,{variant:"outline",onClick:C,size:"xs",children:"Cancel"})]})]}),_=k=>{h.onChange({...x,[k.providerName]:{...x[k.providerName],[k.fieldName]:k.value||void 0}})},M=({providerName:k,providerConfig:A,onRemove:b})=>{let P=sl.startCase(k),z=!!A.api_key||!!A.base_url;return(0,s.jsxs)(Te,{title:P,provider:k,value:`custom-${k}`,isConfigured:z,children:[(0,s.jsx)(Ge,{form:t,config:e,name:`ai.custom_providers.${k}.api_key`,placeholder:"sk-...",testId:`custom-provider-${k}-api-key`,onChange:T=>_({providerName:k,fieldName:"api_key",value:T})}),(0,s.jsx)(Xe,{form:t,config:e,name:`ai.custom_providers.${k}.base_url`,placeholder:"https://api.example.com/v1",testId:`custom-provider-${k}-base-url`,onChange:T=>_({providerName:k,fieldName:"base_url",value:T})}),(0,s.jsxs)(ie,{variant:"destructive",size:"xs",onClick:T=>{T.stopPropagation(),T.preventDefault(),b(k)},className:"w-fit self-end",children:[(0,s.jsx)(fs,{className:"h-4 w-4 mr-2"}),"Remove Provider"]})]},`custom-${k}`)};return(0,s.jsxs)(St,{children:[(0,s.jsx)(ut,{children:"Custom Providers"}),(0,s.jsx)("p",{className:"text-sm text-muted-secondary",children:"Add your own OpenAI-compatible provider. Once added, you can configure models in the AI Models tab."}),K.length>0&&(0,s.jsx)(Ql,{type:"multiple",className:"-mt-4",children:K.map(([k,A])=>M({providerName:k,providerConfig:A,onRemove:F}))}),n?I:(0,s.jsx)(xr,{className:"self-start",isFormOpen:n,setIsFormOpen:i,label:"Add Provider"})]})}})},Au=t=>{let e=(0,je.c)(117),{form:l,config:n,onSubmit:i}=t,r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=ot(),e[0]=r):r=e[0];let a=r,c;e[1]===l?c=e[2]:(c=Se=>!!l.getValues(Se),e[1]=l,e[2]=c);let o=c,d;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=(0,s.jsx)(ae,{className:"inline",children:"marimo.toml"}),e[3]=d):d=e[3];let u;e[4]===Symbol.for("react.memo_cache_sentinel")?(u=(0,s.jsxs)("p",{className:"text-sm text-muted-secondary",children:["Add your API keys below or to ",d," ","to set up a provider for the Code Completion and Assistant features; see"," ",(0,s.jsx)(de,{href:"https://docs.marimo.io/guides/editor_features/ai_completion/#connecting-to-an-llm",children:"docs"})," ","for more info."]}),e[4]=u):u=e[4];let m=o("ai.open_ai.api_key"),p;e[5]===Symbol.for("react.memo_cache_sentinel")?(p=(0,s.jsxs)(s.Fragment,{children:["Your OpenAI API key from"," ",(0,s.jsx)(de,{href:"https://platform.openai.com/account/api-keys",children:"platform.openai.com"}),"."]}),e[5]=p):p=e[5];let f,y;e[6]!==n||e[7]!==l?(f=(0,s.jsx)(Ge,{form:l,config:n,name:"ai.open_ai.api_key",placeholder:"sk-proj...",testId:"ai-openai-api-key-input",description:p}),y=(0,s.jsx)(Xe,{form:l,config:n,name:"ai.open_ai.base_url",placeholder:"https://api.openai.com/v1",testId:"ai-base-url-input",disabled:a}),e[6]=n,e[7]=l,e[8]=f,e[9]=y):(f=e[8],y=e[9]);let j;e[10]!==m||e[11]!==f||e[12]!==y?(j=(0,s.jsxs)(Te,{title:"OpenAI",provider:"openai",triggerClassName:"pt-0",isConfigured:m,children:[f,y]}),e[10]=m,e[11]=f,e[12]=y,e[13]=j):j=e[13];let v=o("ai.anthropic.api_key"),N;e[14]===Symbol.for("react.memo_cache_sentinel")?(N=(0,s.jsxs)(s.Fragment,{children:["Your Anthropic API key from"," ",(0,s.jsx)(de,{href:"https://console.anthropic.com/settings/keys",children:"console.anthropic.com"}),"."]}),e[14]=N):N=e[14];let w;e[15]!==n||e[16]!==l?(w=(0,s.jsx)(Ge,{form:l,config:n,name:"ai.anthropic.api_key",placeholder:"sk-ant...",testId:"ai-anthropic-api-key-input",description:N}),e[15]=n,e[16]=l,e[17]=w):w=e[17];let C;e[18]!==v||e[19]!==w?(C=(0,s.jsx)(Te,{title:"Anthropic",provider:"anthropic",isConfigured:v,children:w}),e[18]=v,e[19]=w,e[20]=C):C=e[20];let h=o("ai.google.api_key"),x;e[21]===Symbol.for("react.memo_cache_sentinel")?(x=(0,s.jsxs)(s.Fragment,{children:["Your Google AI API key from"," ",(0,s.jsx)(de,{href:"https://aistudio.google.com/app/apikey",children:"aistudio.google.com"}),"."]}),e[21]=x):x=e[21];let K;e[22]!==n||e[23]!==l?(K=(0,s.jsx)(Ge,{form:l,config:n,name:"ai.google.api_key",placeholder:"AI...",testId:"ai-google-api-key-input",description:x}),e[22]=n,e[23]=l,e[24]=K):K=e[24];let D;e[25]!==h||e[26]!==K?(D=(0,s.jsx)(Te,{title:"Google",provider:"google",isConfigured:h,children:K}),e[25]=h,e[26]=K,e[27]=D):D=e[27];let F=o("ai.ollama.base_url"),I;e[28]!==n||e[29]!==l?(I=(0,s.jsx)(Xe,{form:l,config:n,name:"ai.ollama.base_url",placeholder:"http://localhost:11434/v1",testId:"ollama-base-url-input"}),e[28]=n,e[29]=l,e[30]=I):I=e[30];let _;e[31]!==F||e[32]!==I?(_=(0,s.jsx)(Te,{title:"Ollama",provider:"ollama",isConfigured:F,children:I}),e[31]=F,e[32]=I,e[33]=_):_=e[33];let M=o("ai.github.api_key"),k;e[34]===Symbol.for("react.memo_cache_sentinel")?(k=(0,s.jsx)(Ns,{variant:"warning",className:"py-1.5 px-3 text-xs",children:(0,s.jsxs)(Ss,{children:["Free tier models have low token limits which can cause errors with larger prompts."," ",(0,s.jsx)(de,{href:"https://docs.github.com/en/github-models/prototyping-with-ai-models#rate-limits",children:"Learn more"})]})}),e[34]=k):k=e[34];let A;e[35]===Symbol.for("react.memo_cache_sentinel")?(A=(0,s.jsxs)(s.Fragment,{children:["Your GitHub API token from"," ",(0,s.jsx)(ae,{className:"inline",children:"gh auth token"}),"."]}),e[35]=A):A=e[35];let b,P;e[36]!==n||e[37]!==l?(b=(0,s.jsx)(Ge,{form:l,config:n,name:"ai.github.api_key",placeholder:"gho_...",testId:"ai-github-api-key-input",description:A}),P=(0,s.jsx)(Xe,{form:l,config:n,name:"ai.github.base_url",placeholder:"https://models.github.ai/inference",testId:"ai-github-base-url-input"}),e[36]=n,e[37]=l,e[38]=b,e[39]=P):(b=e[38],P=e[39]);let z;e[40]!==M||e[41]!==b||e[42]!==P?(z=(0,s.jsxs)(Te,{title:"GitHub",provider:"github",isConfigured:M,children:[k,b,P]}),e[40]=M,e[41]=b,e[42]=P,e[43]=z):z=e[43];let T=o("ai.openrouter.api_key"),q;e[44]===Symbol.for("react.memo_cache_sentinel")?(q=(0,s.jsxs)(s.Fragment,{children:["Your OpenRouter API key from ","",(0,s.jsx)(de,{href:"https://openrouter.ai/keys",children:"openrouter.ai"}),"."]}),e[44]=q):q=e[44];let Y,S;e[45]!==n||e[46]!==l?(Y=(0,s.jsx)(Ge,{form:l,config:n,name:"ai.openrouter.api_key",placeholder:"or-...",testId:"ai-openrouter-api-key-input",description:q}),S=(0,s.jsx)(Xe,{form:l,config:n,name:"ai.openrouter.base_url",placeholder:"https://openrouter.ai/api/v1/",testId:"ai-openrouter-base-url-input"}),e[45]=n,e[46]=l,e[47]=Y,e[48]=S):(Y=e[47],S=e[48]);let W;e[49]!==T||e[50]!==Y||e[51]!==S?(W=(0,s.jsxs)(Te,{title:"OpenRouter",provider:"openrouter",isConfigured:T,children:[Y,S]}),e[49]=T,e[50]=Y,e[51]=S,e[52]=W):W=e[52];let ee=o("ai.wandb.api_key"),oe;e[53]===Symbol.for("react.memo_cache_sentinel")?(oe=(0,s.jsxs)(s.Fragment,{children:["Your Weights & Biases API key from"," ",(0,s.jsx)(de,{href:"https://wandb.ai/authorize",children:"wandb.ai"}),"."]}),e[53]=oe):oe=e[53];let ce,ge;e[54]!==n||e[55]!==l?(ce=(0,s.jsx)(Ge,{form:l,config:n,name:"ai.wandb.api_key",placeholder:"your-wandb-api-key",testId:"ai-wandb-api-key-input",description:oe}),ge=(0,s.jsx)(Xe,{form:l,config:n,name:"ai.wandb.base_url",placeholder:"https://api.inference.wandb.ai/v1/",testId:"ai-wandb-base-url-input"}),e[54]=n,e[55]=l,e[56]=ce,e[57]=ge):(ce=e[56],ge=e[57]);let ue;e[58]!==ee||e[59]!==ce||e[60]!==ge?(ue=(0,s.jsxs)(Te,{title:"Weights & Biases",provider:"wandb",isConfigured:ee,children:[ce,ge]}),e[58]=ee,e[59]=ce,e[60]=ge,e[61]=ue):ue=e[61];let fe=o("ai.azure.api_key")&&o("ai.azure.base_url"),E;e[62]===Symbol.for("react.memo_cache_sentinel")?(E=(0,s.jsxs)(s.Fragment,{children:["Your Azure API key from"," ",(0,s.jsx)(de,{href:"https://portal.azure.com/",children:"portal.azure.com"}),"."]}),e[62]=E):E=e[62];let J,Q;e[63]!==n||e[64]!==l?(J=(0,s.jsx)(Ge,{form:l,config:n,name:"ai.azure.api_key",placeholder:"sk-proj...",testId:"ai-azure-api-key-input",description:E}),Q=(0,s.jsx)(Xe,{form:l,config:n,name:"ai.azure.base_url",placeholder:"https://<your-resource-name>.openai.azure.com/openai/deployments/<deployment-name>?api-version=<api-version>",testId:"ai-azure-base-url-input"}),e[63]=n,e[64]=l,e[65]=J,e[66]=Q):(J=e[65],Q=e[66]);let Z;e[67]!==fe||e[68]!==J||e[69]!==Q?(Z=(0,s.jsxs)(Te,{title:"Azure",provider:"azure",isConfigured:fe,children:[J,Q]}),e[67]=fe,e[68]=J,e[69]=Q,e[70]=Z):Z=e[70];let X=o("ai.bedrock.region_name"),te;e[71]===Symbol.for("react.memo_cache_sentinel")?(te=(0,s.jsxs)("p",{className:"text-sm text-muted-secondary mb-2",children:["To use AWS Bedrock, you need to configure AWS credentials and region. See the"," ",(0,s.jsx)(de,{href:"https://docs.marimo.io/guides/editor_features/ai_completion.html#aws-bedrock",children:"documentation"})," ","for more details."]}),e[71]=te):te=e[71];let se;e[72]===n?se=e[73]:(se=Se=>{let{field:Ne}=Se;return(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"AWS Region"}),(0,s.jsx)(V,{children:(0,s.jsx)(De,{"data-testid":"bedrock-region-select",onChange:et=>Ne.onChange(et.target.value),value:typeof Ne.value=="string"?Ne.value:"us-east-1",disabled:Ne.disabled,className:"inline-flex mr-2",children:mu.map(Bu)})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:n,name:"ai.bedrock.region_name"})]}),(0,s.jsx)(U,{children:"The AWS region where Bedrock service is available."})]})},e[72]=n,e[73]=se);let xe;e[74]!==l.control||e[75]!==se?(xe=(0,s.jsx)(R,{control:l.control,disabled:a,name:"ai.bedrock.region_name",render:se}),e[74]=l.control,e[75]=se,e[76]=xe):xe=e[76];let me;e[77]===n?me=e[78]:(me=Se=>{let{field:Ne}=Se;return(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"AWS Profile Name (Optional)"}),(0,s.jsx)(V,{children:(0,s.jsx)(Oe,{"data-testid":"bedrock-profile-input",rootClassName:"flex-1",className:"m-0 inline-flex h-7",placeholder:"default",...Ne,value:Ne.value||""})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:n,name:"ai.bedrock.profile_name"})]}),(0,s.jsx)(U,{children:"The AWS profile name from your ~/.aws/credentials file. Leave blank to use your default AWS credentials."})]})},e[77]=n,e[78]=me);let ne;e[79]!==l.control||e[80]!==me?(ne=(0,s.jsx)(R,{control:l.control,disabled:a,name:"ai.bedrock.profile_name",render:me}),e[79]=l.control,e[80]=me,e[81]=ne):ne=e[81];let he;e[82]!==X||e[83]!==xe||e[84]!==ne?(he=(0,s.jsxs)(Te,{title:"AWS Bedrock",provider:"bedrock",isConfigured:X,children:[te,xe,ne]}),e[82]=X,e[83]=xe,e[84]=ne,e[85]=he):he=e[85];let ke=o("ai.open_ai_compatible.api_key")&&o("ai.open_ai_compatible.base_url"),Be;e[86]===Symbol.for("react.memo_cache_sentinel")?(Be=(0,s.jsx)("p",{className:"text-sm text-amber-600 dark:text-amber-400 mb-2",children:"Consider using Custom Providers instead, which allows you to add multiple providers with distinct names."}),e[86]=Be):Be=e[86];let be;e[87]===Symbol.for("react.memo_cache_sentinel")?(be=(0,s.jsx)(s.Fragment,{children:"API key for any OpenAI-compatible provider (e.g., Together, Groq, Mistral, Perplexity, etc)."}),e[87]=be):be=e[87];let ye;e[88]!==n||e[89]!==l?(ye=(0,s.jsx)(Ge,{form:l,config:n,name:"ai.open_ai_compatible.api_key",placeholder:"sk-...",testId:"ai-openai-compatible-api-key-input",description:be}),e[88]=n,e[89]=l,e[90]=ye):ye=e[90];let Ce;e[91]===Symbol.for("react.memo_cache_sentinel")?(Ce=(0,s.jsx)(s.Fragment,{children:"Base URL for your OpenAI-compatible provider."}),e[91]=Ce):Ce=e[91];let we;e[92]!==n||e[93]!==l?(we=(0,s.jsx)(Xe,{form:l,config:n,name:"ai.open_ai_compatible.base_url",placeholder:"https://api.together.xyz/v1",testId:"ai-openai-compatible-base-url-input",description:Ce}),e[92]=n,e[93]=l,e[94]=we):we=e[94];let le;e[95]!==ke||e[96]!==ye||e[97]!==we?(le=(0,s.jsxs)(Te,{title:"OpenAI-Compatible (Legacy)",provider:"openai-compatible",isConfigured:ke,children:[Be,ye,we]}),e[95]=ke,e[96]=ye,e[97]=we,e[98]=le):le=e[98];let Re;e[99]!==C||e[100]!==D||e[101]!==_||e[102]!==z||e[103]!==W||e[104]!==ue||e[105]!==Z||e[106]!==he||e[107]!==le||e[108]!==j?(Re=(0,s.jsxs)(Ql,{type:"multiple",children:[j,C,D,_,z,W,ue,Z,he,le]}),e[99]=C,e[100]=D,e[101]=_,e[102]=z,e[103]=W,e[104]=ue,e[105]=Z,e[106]=he,e[107]=le,e[108]=j,e[109]=Re):Re=e[109];let Me;e[110]!==n||e[111]!==l||e[112]!==i?(Me=(0,s.jsx)(Du,{form:l,config:n,onSubmit:i}),e[110]=n,e[111]=l,e[112]=i,e[113]=Me):Me=e[113];let Ue;return e[114]!==Re||e[115]!==Me?(Ue=(0,s.jsxs)(St,{children:[u,Re,Me]}),e[114]=Re,e[115]=Me,e[116]=Ue):Ue=e[116],Ue},Pu=t=>{let e=(0,je.c)(24),{form:l,config:n,onSubmit:i}=t,r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=(0,s.jsx)(ut,{children:"AI Assistant"}),e[0]=r):r=e[0];let a;e[1]===l.control?a=e[2]:(a=(0,s.jsx)(R,{control:l.control,name:"ai.inline_tooltip",render:Ru}),e[1]=l.control,e[2]=a);let c;e[3]===Symbol.for("react.memo_cache_sentinel")?(c=(0,s.jsx)(co,{}),e[3]=c):c=e[3];let o;e[4]===Symbol.for("react.memo_cache_sentinel")?(o=(0,s.jsx)("span",{children:"Model to use for chat conversations in the Chat panel."}),e[4]=o):o=e[4];let d;e[5]!==n||e[6]!==l||e[7]!==i?(d=(0,s.jsx)(El,{label:"Chat Model",form:l,config:n,name:"ai.models.chat_model",placeholder:Wl,description:o,forRole:"chat",onSubmit:i}),e[5]=n,e[6]=l,e[7]=i,e[8]=d):d=e[8];let u;e[9]===Symbol.for("react.memo_cache_sentinel")?(u=(0,s.jsxs)("span",{children:["Model to use for code editing with the"," ",(0,s.jsx)(ae,{className:"inline",children:"Generate with AI"})," button."]}),e[9]=u):u=e[9];let m;e[10]!==n||e[11]!==l||e[12]!==i?(m=(0,s.jsx)(El,{label:"Edit Model",form:l,config:n,name:"ai.models.edit_model",placeholder:Wl,description:u,forRole:"edit",onSubmit:i}),e[10]=n,e[11]=l,e[12]=i,e[13]=m):m=e[13];let p;e[14]===n?p=e[15]:(p=j=>{let{field:v}=j;return(0,s.jsxs)("div",{className:"flex flex-col",children:[(0,s.jsxs)($,{children:[(0,s.jsx)(B,{children:"Custom Rules"}),(0,s.jsx)(V,{children:(0,s.jsx)(oo,{"data-testid":"ai-rules-input",className:"m-0 inline-flex w-full h-32 p-2 text-sm",placeholder:"e.g. Always use type hints; prefer polars over pandas",...v,value:v.value})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:n,name:"ai.rules"})]}),(0,s.jsx)(U,{children:"Custom rules to include in all AI completion prompts."})]})},e[14]=n,e[15]=p);let f;e[16]!==l.control||e[17]!==p?(f=(0,s.jsx)(R,{control:l.control,name:"ai.rules",render:p}),e[16]=l.control,e[17]=p,e[18]=f):f=e[18];let y;return e[19]!==a||e[20]!==d||e[21]!==m||e[22]!==f?(y=(0,s.jsxs)(St,{children:[r,a,c,d,m,f]}),e[19]=a,e[20]=d,e[21]=m,e[22]=f,e[23]=y):y=e[23],y};var Eu=t=>{let e=(0,je.c)(51),{providerId:l,models:n,enabledModels:i,onToggleModel:r,onToggleProvider:a,onDeleteModel:c}=t,o;if(e[0]!==i||e[1]!==n||e[2]!==l){let k;e[4]!==i||e[5]!==l?(k=A=>i.has(new Ae(l,A.model).id),e[4]=i,e[5]=l,e[6]=k):k=e[6],o=n.filter(k),e[0]=i,e[1]=n,e[2]=l,e[3]=o}else o=e[3];let d=o.length,u=n.length,m;e[7]===l?m=e[8]:(m=kt.getProviderInfo(l),e[7]=l,e[8]=m);let p=m,f;e[9]!==(p==null?void 0:p.name)||e[10]!==l?(f=(p==null?void 0:p.name)||sl.startCase(l),e[9]=p==null?void 0:p.name,e[10]=l,e[11]=f):f=e[11];let y=f,j=d===0?!1:d===u?!0:"indeterminate",v;e[12]!==d||e[13]!==a||e[14]!==l||e[15]!==u?(v=()=>{a(l,d<u/2)},e[12]=d,e[13]=a,e[14]=l,e[15]=u,e[16]=v):v=e[16];let N=It(v),w;e[17]===Symbol.for("react.memo_cache_sentinel")?(w=ns.stopPropagation(),e[17]=w):w=e[17];let C;e[18]!==j||e[19]!==N?(C=(0,s.jsx)(re,{checked:j,onCheckedChange:N,onClick:w}),e[18]=j,e[19]=N,e[20]=C):C=e[20];let h;e[21]===l?h=e[22]:(h=(0,s.jsx)(Ee,{provider:l,className:"h-5 w-5"}),e[21]=l,e[22]=h);let x;e[23]===y?x=e[24]:(x=(0,s.jsx)("h2",{className:"font-semibold",children:y}),e[23]=y,e[24]=x);let K;e[25]!==d||e[26]!==u?(K=(0,s.jsxs)("p",{className:"text-sm text-muted-secondary",children:[d,"/",u," models"]}),e[25]=d,e[26]=u,e[27]=K):K=e[27];let D;e[28]!==x||e[29]!==K?(D=(0,s.jsxs)("div",{className:"flex items-center justify-between w-full",children:[x,K]}),e[28]=x,e[29]=K,e[30]=D):D=e[30];let F;e[31]===Symbol.for("react.memo_cache_sentinel")?(F=(0,s.jsx)(Xa,{slot:"chevron",children:(0,s.jsx)(Ga,{className:"h-4 w-4 text-muted-foreground shrink-0 transition-transform duration-200 group-data-expanded:rotate-90"})}),e[31]=F):F=e[31];let I;e[32]!==D||e[33]!==C||e[34]!==h?(I=(0,s.jsx)(zi,{children:(0,s.jsxs)("div",{className:"flex items-center gap-3 px-2 py-3 hover:bg-muted/50 cursor-pointer outline-none focus-visible:outline-none border-b group-data-expanded:border-b-0 rounded-sm",children:[C,h,D,F]})}),e[32]=D,e[33]=C,e[34]=h,e[35]=I):I=e[35];let _;if(e[36]!==i||e[37]!==n||e[38]!==c||e[39]!==r||e[40]!==l){let k;e[42]!==i||e[43]!==c||e[44]!==r||e[45]!==l?(k=A=>{let b=new Ae(l,A.model).id;return(0,s.jsx)(Iu,{qualifiedId:b,model:A,isEnabled:i.has(b),onToggle:r,onDelete:c},b)},e[42]=i,e[43]=c,e[44]=r,e[45]=l,e[46]=k):k=e[46],_=n.map(k),e[36]=i,e[37]=n,e[38]=c,e[39]=r,e[40]=l,e[41]=_}else _=e[41];let M;return e[47]!==l||e[48]!==I||e[49]!==_?(M=(0,s.jsxs)(Ri,{id:l,hasChildItems:!0,textValue:l,className:"outline-none data-focused:bg-muted/50 group",children:[I,_]}),e[47]=l,e[48]=I,e[49]=_,e[50]=M):M=e[50],M};const _u=({form:t,onSubmit:e})=>{let l=ol({control:t.control,name:"ai.models.custom_models"}),n=ol({control:t.control,name:"ai.custom_providers"}),i=(0,g.useMemo)(()=>Object.keys(n||{}),[n]),r=(0,g.useMemo)(()=>kt.create({displayedModels:[],customModels:l}),[l]),a=ol({control:t.control,name:"ai.models.displayed_models",defaultValue:[]}),c=new Set(a),o=r.getGroupedModelsByProvider(),d=r.getListModelsByProvider(),u=It(f=>{let y=c.has(f)?a.filter(j=>j!==f):[...a,f];t.setValue("ai.models.displayed_models",y,{shouldDirty:!0,shouldTouch:!0}),e(t.getValues())}),m=It(async(f,y)=>{let j=o.get(f)||[],v=new Set(j.map(w=>new Ae(f,w.model).id)),N=y?[...new Set([...a,...v])]:a.filter(w=>!v.has(w));t.setValue("ai.models.displayed_models",N,{shouldDirty:!0,shouldTouch:!0}),e(t.getValues())}),p=It(f=>{let y=l.filter(v=>v!==f),j=a.filter(v=>v!==f);t.setValue("ai.models.displayed_models",j,{shouldDirty:!0,shouldTouch:!0}),t.setValue("ai.models.custom_models",y,{shouldDirty:!0,shouldTouch:!0}),e(t.getValues())});return(0,s.jsxs)(St,{className:"gap-2",children:[(0,s.jsx)("p",{className:"text-sm text-muted-secondary",children:"Control which AI models are displayed in model selection dropdowns. When no models are selected, all available models will be shown."}),(0,s.jsx)("div",{className:"bg-background",children:(0,s.jsx)(Jc,{"aria-label":"AI Models by Provider",className:"flex-1 overflow-auto outline-none focus-visible:outline-none",selectionMode:"none",children:d.map(([f,y])=>(0,s.jsx)(Eu,{providerId:f,models:y,enabledModels:c,onToggleModel:u,onToggleProvider:m,onDeleteModel:p},f))})}),(0,s.jsx)(Fu,{form:t,customModels:l,customProviderNames:i,onSubmit:e})]})},Fu=t=>{let e=(0,je.c)(77),{form:l,customModels:n,customProviderNames:i,onSubmit:r}=t,[a,c]=(0,g.useState)(!1),[o,d]=(0,g.useState)(!1),[u,m]=(0,g.useState)(null),[p,f]=(0,g.useState)(""),[y,j]=(0,g.useState)(""),v=(0,g.useId)(),N=(0,g.useId)(),w=(0,g.useId)(),C=u==="custom",h=C?p:u,x;e[0]!==y||e[1]!==h?(x=(h==null?void 0:h.trim())&&(y==null?void 0:y.trim()),e[0]=y,e[1]=h,e[2]=x):x=e[2];let K=x,D;e[3]===Symbol.for("react.memo_cache_sentinel")?(D=()=>{m(null),f(""),j(""),c(!1)},e[3]=D):D=e[3];let F=D,I;e[4]!==n||e[5]!==l||e[6]!==K||e[7]!==y||e[8]!==r||e[9]!==h?(I=()=>{if(!K)return;let le=new Ae(h,y);l.setValue("ai.models.custom_models",[le.id,...n],{shouldDirty:!0,shouldTouch:!0}),r(l.getValues()),F(),d(!0),setTimeout(()=>d(!1),2e3)},e[4]=n,e[5]=l,e[6]=K,e[7]=y,e[8]=r,e[9]=h,e[10]=I):I=e[10];let _=I,M;e[11]===v?M=e[12]:(M=(0,s.jsx)($e,{htmlFor:v,className:"text-sm font-medium text-muted-foreground min-w-12",children:"Provider"}),e[11]=v,e[12]=M);let k=u||"",A;e[13]===Symbol.for("react.memo_cache_sentinel")?(A=le=>m(le),e[13]=A):A=e[13];let b;e[14]===u?b=e[15]:(b=u?(0,s.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,s.jsx)(Ee,{provider:u,className:"h-3.5 w-3.5"}),(0,s.jsx)("span",{children:Zt(u)})]}):(0,s.jsx)("span",{className:"text-muted-foreground",children:"Select..."}),e[14]=u,e[15]=b);let P;e[16]!==v||e[17]!==b?(P=(0,s.jsx)(ba,{id:v,className:"w-40 truncate",children:b}),e[16]=v,e[17]=b,e[18]=P):P=e[18];let z;e[19]===i?z=e[20]:(z=i.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("p",{className:"px-2 py-1 text-xs text-muted-secondary font-medium",children:"Custom Providers"}),i.map($u),(0,s.jsx)("p",{className:"px-2 py-1 text-xs text-muted-secondary font-medium mt-1",children:"Built-in Providers"})]}),e[19]=i,e[20]=z);let T;e[21]===i?T=e[22]:(T=Ot.filter(le=>le!=="marimo"&&!i.includes(le)).map(Vu),e[21]=i,e[22]=T);let q;e[23]===Symbol.for("react.memo_cache_sentinel")?(q=(0,s.jsx)("p",{className:"px-2 py-1 text-xs text-muted-secondary font-medium mt-1",children:"Other"}),e[23]=q):q=e[23];let Y;e[24]===Symbol.for("react.memo_cache_sentinel")?(Y=(0,s.jsx)(ll,{value:"custom",children:(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(Ee,{provider:"openai-compatible",className:"h-4 w-4"}),(0,s.jsx)("span",{children:"Enter provider name"})]})}),e[24]=Y):Y=e[24];let S;e[25]!==T||e[26]!==z?(S=(0,s.jsx)(ya,{children:(0,s.jsxs)(va,{children:[z,T,q,Y]})}),e[25]=T,e[26]=z,e[27]=S):S=e[27];let W;e[28]!==S||e[29]!==k||e[30]!==P?(W=(0,s.jsxs)(ja,{value:k,onValueChange:A,children:[P,S]}),e[28]=S,e[29]=k,e[30]=P,e[31]=W):W=e[31];let ee;e[32]!==W||e[33]!==M?(ee=(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[M,W]}),e[32]=W,e[33]=M,e[34]=ee):ee=e[34];let oe;e[35]!==N||e[36]!==p||e[37]!==C?(oe=C&&(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)($e,{htmlFor:N,className:"text-sm font-medium text-muted-foreground min-w-12",children:"Name"}),(0,s.jsx)(Oe,{id:N,value:p,onChange:le=>f(le.target.value),placeholder:"openrouter",className:"w-40 truncate"})]}),e[35]=N,e[36]=p,e[37]=C,e[38]=oe):oe=e[38];let ce;e[39]!==ee||e[40]!==oe?(ce=(0,s.jsxs)("div",{className:"flex flex-col gap-2",children:[ee,oe]}),e[39]=ee,e[40]=oe,e[41]=ce):ce=e[41];let ge=ce,ue=C&&"self-start",fe;e[42]===ue?fe=e[43]:(fe=Pe("flex items-center gap-2",ue),e[42]=ue,e[43]=fe);let E;e[44]===w?E=e[45]:(E=(0,s.jsx)($e,{htmlFor:w,className:"text-sm font-medium text-muted-foreground",children:"Model"}),e[44]=w,e[45]=E);let J;e[46]===Symbol.for("react.memo_cache_sentinel")?(J=le=>j(le.target.value),e[46]=J):J=e[46];let Q;e[47]!==y||e[48]!==w?(Q=(0,s.jsx)(Oe,{id:w,value:y,onChange:J,placeholder:"gpt-4",className:"text-xs mb-0"}),e[47]=y,e[48]=w,e[49]=Q):Q=e[49];let Z;e[50]!==fe||e[51]!==E||e[52]!==Q?(Z=(0,s.jsxs)("div",{className:fe,children:[E,Q]}),e[50]=fe,e[51]=E,e[52]=Q,e[53]=Z):Z=e[53];let X=Z,te=C&&"self-end",se;e[54]===te?se=e[55]:(se=Pe("flex gap-1.5 ml-auto",te),e[54]=te,e[55]=se);let xe=!K,me;e[56]!==_||e[57]!==xe?(me=(0,s.jsx)(ie,{onClick:_,disabled:xe,size:"xs",children:"Add"}),e[56]=_,e[57]=xe,e[58]=me):me=e[58];let ne;e[59]===Symbol.for("react.memo_cache_sentinel")?(ne=(0,s.jsx)(ie,{variant:"outline",onClick:F,size:"xs",children:"Cancel"}),e[59]=ne):ne=e[59];let he;e[60]!==se||e[61]!==me?(he=(0,s.jsxs)("div",{className:se,children:[me,ne]}),e[60]=se,e[61]=me,e[62]=he):he=e[62];let ke;e[63]!==X||e[64]!==ge||e[65]!==he?(ke=(0,s.jsxs)("div",{className:"flex items-center gap-3 p-3 border border-border rounded-md",children:[ge,X,he]}),e[63]=X,e[64]=ge,e[65]=he,e[66]=ke):ke=e[66];let Be=a&&ke,be;e[67]===a?be=e[68]:(be=(0,s.jsx)(xr,{isFormOpen:a,setIsFormOpen:c,label:"Add Model",className:"pl-2"}),e[67]=a,e[68]=be);let ye;e[69]===o?ye=e[70]:(ye=o&&(0,s.jsx)("div",{className:"flex items-center gap-1 text-green-700 bg-green-500/10 px-2 py-1 rounded-md ml-auto",children:"\u2713 Model added"}),e[69]=o,e[70]=ye);let Ce;e[71]!==be||e[72]!==ye?(Ce=(0,s.jsxs)("div",{className:"flex flex-row text-sm",children:[be,ye]}),e[71]=be,e[72]=ye,e[73]=Ce):Ce=e[73];let we;return e[74]!==Be||e[75]!==Ce?(we=(0,s.jsxs)("div",{children:[Be,Ce]}),e[74]=Be,e[75]=Ce,e[76]=we):we=e[76],we};var xr=t=>{let e=(0,je.c)(10),{isFormOpen:l,setIsFormOpen:n,label:i,className:r}=t,a;e[0]===n?a=e[1]:(a=u=>{u.stopPropagation(),u.preventDefault(),n(!0)},e[0]=n,e[1]=a);let c;e[2]===r?c=e[3]:(c=Pe("px-0",r),e[2]=r,e[3]=c);let o;e[4]===Symbol.for("react.memo_cache_sentinel")?(o=(0,s.jsx)(Wa,{className:"h-4 w-4 mr-2 mb-0.5"}),e[4]=o):o=e[4];let d;return e[5]!==l||e[6]!==i||e[7]!==a||e[8]!==c?(d=(0,s.jsxs)(ie,{onClick:a,variant:"link",disabled:l,className:c,children:[o,i]}),e[5]=l,e[6]=i,e[7]=a,e[8]=c,e[9]=d):d=e[9],d};const zu=t=>{let e=(0,je.c)(26),{form:l,config:n,onSubmit:i}=t,r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=ot(),e[0]=r):r=e[0];let a=r,[c,o]=lt(kr),d;e[1]===o?d=e[2]:(d=v=>o(v),e[1]=o,e[2]=d);let u;e[3]===Symbol.for("react.memo_cache_sentinel")?(u=(0,s.jsxs)(es,{className:"mb-2",children:[(0,s.jsx)(ht,{value:"ai-features",children:"AI Features"}),(0,s.jsx)(ht,{value:"ai-providers",children:"AI Providers"}),(0,s.jsx)(ht,{value:"ai-models",children:"AI Models"}),!a&&(0,s.jsx)(ht,{value:"mcp",children:"MCP"})]}),e[3]=u):u=e[3];let m;e[4]!==n||e[5]!==l||e[6]!==i?(m=(0,s.jsxs)(Mt,{value:"ai-features",children:[(0,s.jsx)(Mu,{form:l,config:n,onSubmit:i}),(0,s.jsx)(Pu,{form:l,config:n,onSubmit:i})]}),e[4]=n,e[5]=l,e[6]=i,e[7]=m):m=e[7];let p;e[8]!==n||e[9]!==l||e[10]!==i?(p=(0,s.jsx)(Mt,{value:"ai-providers",children:(0,s.jsx)(Au,{form:l,config:n,onSubmit:i})}),e[8]=n,e[9]=l,e[10]=i,e[11]=p):p=e[11];let f;e[12]!==n||e[13]!==l||e[14]!==i?(f=(0,s.jsx)(Mt,{value:"ai-models",children:(0,s.jsx)(_u,{form:l,config:n,onSubmit:i})}),e[12]=n,e[13]=l,e[14]=i,e[15]=f):f=e[15];let y;e[16]!==l||e[17]!==i?(y=!a&&(0,s.jsx)(Mt,{value:"mcp",children:(0,s.jsx)(ku,{form:l,onSubmit:i})}),e[16]=l,e[17]=i,e[18]=y):y=e[18];let j;return e[19]!==c||e[20]!==d||e[21]!==m||e[22]!==p||e[23]!==f||e[24]!==y?(j=(0,s.jsxs)(Xl,{value:c,onValueChange:d,className:"flex-1",children:[u,m,p,f,y]}),e[19]=c,e[20]=d,e[21]=m,e[22]=p,e[23]=f,e[24]=y,e[25]=j):j=e[25],j};function Tu(t){return(0,s.jsx)("option",{value:t,children:t},t)}function Bu(t){return(0,s.jsx)("option",{value:t,children:t},t)}function Ru(t){let{field:e}=t;return(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"font-normal",children:"AI Edit Tooltip"}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"inline-ai-checkbox",checked:e.value===!0,onCheckedChange:e.onChange})})]}),(0,s.jsx)(U,{children:'Enable "Edit with AI" tooltip when selecting code.'})]})}function $u(t){return(0,s.jsx)(ll,{value:t,children:(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(Ee,{provider:t,className:"h-4 w-4"}),(0,s.jsx)("span",{children:sl.startCase(t)})]})},t)}function Vu(t){return(0,s.jsx)(ll,{value:t,children:(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)(Ee,{provider:t,className:"h-4 w-4"}),(0,s.jsx)("span",{children:Zt(t)})]})},t)}var Lu=Ie(),Ou=["auto","true","false"];const Hu=t=>{let e=(0,Lu.c)(47),{form:l,config:n,onSubmit:i}=t,r;e[0]!==n||e[1]!==l.control?(r=(F,I)=>(0,s.jsx)(R,{control:l.control,name:F,render:_=>{let{field:M}=_,k=A=>{let b=A.target.value;M.onChange(b==="true"?!0:b==="false"?!1:b)};return(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"text-sm font-normal w-16",children:I}),(0,s.jsx)(V,{children:(0,s.jsx)(De,{"data-testid":"auto-discover-schemas-select",onChange:k,value:M.value===void 0?"auto":M.value.toString(),disabled:M.disabled,className:"w-[100px]",children:Ou.map(Gu)})}),(0,s.jsx)(O,{userConfig:n,name:F})]})}}),e[0]=n,e[1]=l.control,e[2]=r):r=e[2];let a=r,c;e[3]===n?c=e[4]:(c=F=>{let{field:I}=F;return(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Dataframe viewer"}),(0,s.jsx)(V,{children:(0,s.jsx)(De,{"data-testid":"display-dataframes-select",onChange:_=>I.onChange(_.target.value),value:I.value,disabled:I.disabled,className:"inline-flex mr-2",children:["rich","plain"].map(Uu)})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:n,name:"display.dataframes"})]}),(0,s.jsx)(U,{children:"Whether to use marimo's rich dataframe viewer or a plain HTML table. This requires restarting your notebook to take effect."})]})},e[3]=n,e[4]=c);let o;e[5]!==l.control||e[6]!==c?(o=(0,s.jsx)(R,{control:l.control,name:"display.dataframes",render:c}),e[5]=l.control,e[6]=c,e[7]=o):o=e[7];let d;e[8]!==n||e[9]!==l||e[10]!==i?(d=F=>{let{field:I}=F;return(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Default table page size"}),(0,s.jsx)(V,{children:(0,s.jsx)(gt,{"aria-label":"Default table page size","data-testid":"default-table-page-size-input",className:"m-0 w-24",...I,value:I.value,minValue:1,step:1,onChange:_=>{I.onChange(_),Number.isNaN(_)||i(l.getValues())}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:n,name:"display.default_table_page_size"})]}),(0,s.jsx)(U,{children:"The default number of rows displayed in dataframes and SQL results."})]})},e[8]=n,e[9]=l,e[10]=i,e[11]=d):d=e[11];let u;e[12]!==l.control||e[13]!==d?(u=(0,s.jsx)(R,{control:l.control,name:"display.default_table_page_size",render:d}),e[12]=l.control,e[13]=d,e[14]=u):u=e[14];let m;e[15]!==n||e[16]!==l||e[17]!==i?(m=F=>{let{field:I}=F;return(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Default table max columns"}),(0,s.jsx)(V,{children:(0,s.jsx)(gt,{"aria-label":"Default table max columns","data-testid":"default-table-max-columns-input",className:"m-0 w-24",...I,value:I.value,minValue:1,step:1,onChange:_=>{I.onChange(_),Number.isNaN(_)||i(l.getValues())}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:n,name:"display.default_table_max_columns"})]}),(0,s.jsx)(U,{children:"The default maximum number of columns displayed in dataframes and SQL results."})]})},e[15]=n,e[16]=l,e[17]=i,e[18]=m):m=e[18];let p;e[19]!==l.control||e[20]!==m?(p=(0,s.jsx)(R,{control:l.control,name:"display.default_table_max_columns",render:m}),e[19]=l.control,e[20]=m,e[21]=p):p=e[21];let f;e[22]===Symbol.for("react.memo_cache_sentinel")?(f=(0,s.jsx)("div",{className:"text-sm text-foreground",children:"Database Schema Discovery"}),e[22]=f):f=e[22];let y,j;e[23]===Symbol.for("react.memo_cache_sentinel")?(j=(0,s.jsx)("br",{}),y=(0,s.jsx)("span",{className:"font-semibold",children:"Can be expensive for large databases."}),e[23]=y,e[24]=j):(y=e[23],j=e[24]);let v;e[25]===Symbol.for("react.memo_cache_sentinel")?(v=(0,s.jsxs)("div",{className:"text-sm text-muted-foreground mb-2",children:["Whether database schemas, tables, and columns are automatically discovered.",j,y," ","Use 'auto' to determine introspection based on the"," ",(0,s.jsx)("a",{className:"text-link hover:underline",rel:"noopener noreferrer",target:"_blank",href:"https://docs.marimo.io/guides/working_with_data/sql/?h=database#database-schema-and-table-auto-discovery",children:"database"}),"."]}),e[25]=v):v=e[25];let N;e[26]===a?N=e[27]:(N=(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[f,v,a("datasources.auto_discover_schemas","Schemas"),a("datasources.auto_discover_tables","Tables"),a("datasources.auto_discover_columns","Columns")]}),e[26]=a,e[27]=N);let w;e[28]===n?w=e[29]:(w=F=>{let{field:I}=F;return(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"SQL Linter"}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"sql-linter-checkbox",checked:I.value,onCheckedChange:I.onChange})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:n,name:"diagnostics.sql_linter"})]}),(0,s.jsx)(U,{children:"Better linting and autocompletions for SQL cells."})]})},e[28]=n,e[29]=w);let C;e[30]!==l.control||e[31]!==w?(C=(0,s.jsx)(R,{control:l.control,name:"diagnostics.sql_linter",render:w}),e[30]=l.control,e[31]=w,e[32]=C):C=e[32];let h;e[33]===n?h=e[34]:(h=F=>{let{field:I}=F;return(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Default SQL output"}),(0,s.jsx)(V,{children:(0,s.jsx)(De,{"data-testid":"user-config-sql-output-select",onChange:_=>I.onChange(_.target.value),value:I.value,disabled:I.disabled,className:"inline-flex mr-2",children:mr.map(qu)})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:n,name:"runtime.default_sql_output"})]}),(0,s.jsx)(U,{children:'The default SQL output type for new notebooks; overridden by "sql_output" in the application config.'})]})},e[33]=n,e[34]=h);let x;e[35]!==l.control||e[36]!==h?(x=(0,s.jsx)(R,{control:l.control,name:"runtime.default_sql_output",render:h}),e[35]=l.control,e[36]=h,e[37]=x):x=e[37];let K;e[38]!==N||e[39]!==C||e[40]!==x?(K=(0,s.jsxs)(_e,{title:"SQL",children:[N,C,x]}),e[38]=N,e[39]=C,e[40]=x,e[41]=K):K=e[41];let D;return e[42]!==K||e[43]!==o||e[44]!==u||e[45]!==p?(D=(0,s.jsxs)(s.Fragment,{children:[o,u,p,K]}),e[42]=K,e[43]=o,e[44]=u,e[45]=p,e[46]=D):D=e[46],D};function Gu(t){return(0,s.jsx)("option",{value:t,children:t},t)}function Uu(t){return(0,s.jsx)("option",{value:t,children:t},t)}function qu(t){return(0,s.jsx)("option",{value:t.value,children:t.label},t.value)}function _l(t,e){let l={};for(let n of Object.keys(e)){let i=e[n],r=t[n];if(r!==void 0){if(i===!0)l[n]=r;else if(typeof i=="object"&&i){let a=_l(r,i);Object.keys(a).length>0&&(l[n]=a)}}}return l}var yr=(t,e)=>{var l,n,i,r,a;e.ai={...e.ai,models:{...(l=e.ai)==null?void 0:l.models,displayed_models:((i=(n=t.ai)==null?void 0:n.models)==null?void 0:i.displayed_models)??[],custom_models:((a=(r=t.ai)==null?void 0:r.models)==null?void 0:a.custom_models)??[]}}},Wu=[["ai.models.displayed_models",yr],["ai.models.custom_models",yr]],Yu=new Map(Wu),Zu=(t,e)=>{if(!t)return!1;let l=t;for(let n of e.split(".")){if(typeof l!="object"||!l)return!1;l=l[n]}return l===!0};const Qu=t=>{let{values:e,dirtyValues:l,touchedFields:n}=t;for(let[i,r]of Yu)Zu(n,i)&&r(e,l)};var Ju=Ie(),vr=[{id:"sql",packagesRequired:[{name:"duckdb"},{name:"sqlglot"}],additionalPackageInstalls:[{name:"polars[pyarrow]"}],description:"SQL cells"},{id:"charts",packagesRequired:[{name:"altair"}],additionalPackageInstalls:[],description:"Charts in datasource viewer"},{id:"fast-charts",packagesRequired:[{name:"vegafusion"},{name:"vl-convert-python"}],additionalPackageInstalls:[],description:"Fast server-side charts"},{id:"formatting",packagesRequired:[ot()?{name:"black"}:{name:"ruff"}],additionalPackageInstalls:[],description:"Formatting"},{id:"ai",packagesRequired:[{name:"openai"}],additionalPackageInstalls:[],description:"AI features"},{id:"mcp",packagesRequired:[{name:"mcp",minVersion:"1"}],additionalPackageInstalls:[{name:"pydantic",minVersion:"2"}],description:"Connect to MCP servers"},{id:"ipy-export",packagesRequired:[{name:"nbformat"}],additionalPackageInstalls:[],description:"Export as IPYNB"},{id:"testing",packagesRequired:[{name:"pytest"}],additionalPackageInstalls:[],description:"Autorun unit tests"}];ot()||vr.push({id:"lsp",packagesRequired:[{name:"python-lsp-server"},{name:"websockets"}],additionalPackageInstalls:[{name:"python-lsp-ruff"}],description:"Language Server Protocol*"});const Xu=()=>{let t=(0,Ju.c)(21),[e]=Zl(),l=e.package_management.manager,{getPackageList:n}=pt(),i;t[0]===n?i=t[1]:(i=()=>n(),t[0]=n,t[1]=i);let r;t[2]===l?r=t[3]:(r=[l],t[2]=l,t[3]=r);let{data:a,error:c,refetch:o,isPending:d}=Is(i,r);if(d){let C;return t[4]===Symbol.for("react.memo_cache_sentinel")?(C=(0,s.jsx)(ds,{size:"medium",centered:!0}),t[4]=C):C=t[4],C}if(c){let C;return t[5]===c?C=t[6]:(C=(0,s.jsx)(zo,{error:c}),t[5]=c,t[6]=C),C}let u;if(t[7]!==(a==null?void 0:a.packages)){let C=(a==null?void 0:a.packages)||[];u=new Set(C.map(t0)),t[7]=a==null?void 0:a.packages,t[8]=u}else u=t[8];let m=u,p;t[9]===Symbol.for("react.memo_cache_sentinel")?(p=(0,s.jsx)(ut,{children:"Optional Features"}),t[9]=p):p=t[9];let f;t[10]===Symbol.for("react.memo_cache_sentinel")?(f=(0,s.jsxs)("p",{className:"text-sm text-muted-foreground",children:["marimo is lightweight, with few dependencies, to maximize compatibility with your own environments.",(0,s.jsx)("br",{}),"To unlock additional features in the marimo editor, you can install these optional dependencies:"]}),t[10]=f):f=t[10];let y;t[11]===Symbol.for("react.memo_cache_sentinel")?(y=(0,s.jsx)(To,{children:(0,s.jsxs)(Ks,{children:[(0,s.jsx)(Rt,{children:"Dependency"}),(0,s.jsx)(Rt,{children:"Feature"}),(0,s.jsx)(Rt,{children:"Status"}),(0,s.jsx)(Rt,{})]})}),t[11]=y):y=t[11];let j;t[12]!==m||t[13]!==l||t[14]!==o?(j=vr.map(C=>{let h=C.packagesRequired.every(K=>m.has(K.name.split("[")[0])),x=C.packagesRequired.map(l0).join(", ");return(0,s.jsxs)(Ks,{className:"text-sm",children:[(0,s.jsx)(hl,{children:C.description}),(0,s.jsx)(hl,{className:"font-mono text-xs",children:x}),(0,s.jsx)(hl,{children:h?(0,s.jsxs)("div",{className:"flex items-center",children:[(0,s.jsx)(Ms,{className:"h-4 w-4 text-(--grass-10) mr-2"}),(0,s.jsx)("span",{children:"Installed"})]}):(0,s.jsxs)("div",{className:"flex items-center",children:[(0,s.jsx)(Tr,{className:"h-4 w-4 text-(--red-10) mr-2"}),(0,s.jsx)(e0,{packageSpecs:[...C.packagesRequired,...C.additionalPackageInstalls],packageManager:l,onSuccess:o})]})})]},C.id)}),t[12]=m,t[13]=l,t[14]=o,t[15]=j):j=t[15];let v;t[16]===j?v=t[17]:(v=(0,s.jsxs)(Ro,{children:[y,(0,s.jsx)(Bo,{children:j})]}),t[16]=j,t[17]=v);let N;t[18]===Symbol.for("react.memo_cache_sentinel")?(N=(0,s.jsx)("p",{className:"text-muted-foreground mt-2",children:"*Requires server restart"}),t[18]=N):N=t[18];let w;return t[19]===v?w=t[20]:(w=(0,s.jsxs)("div",{className:"flex-1 flex flex-col overflow-hidden gap-2",children:[p,f,v,N]}),t[19]=v,t[20]=w),w};var e0=({packageSpecs:t,packageManager:e,onSuccess:l})=>{let[n,i]=g.useState(!1),{addPackage:r}=pt();return(0,s.jsxs)(ie,{size:"xs",variant:"outline",className:Pe("text-xs",n&&"opacity-50 cursor-not-allowed"),onClick:async()=>{try{i(!0);let a=await r({package:t.map(c=>c.minVersion?`${c.name}>=${c.minVersion}`:c.name).join(" "),group:"dev"});a.success?(l(),Fe({title:"Package installed",description:(0,s.jsxs)("span",{children:["The packages"," ",(0,s.jsx)(ae,{className:"inline",children:t.map(c=>c.name).join(", ")})," ","have been added to your environment."]})})):Fe({title:"Failed to install package",description:a.error,variant:"danger"})}finally{i(!1)}},disabled:n,children:[n?(0,s.jsx)(ds,{size:"small",className:"mr-2 h-3 w-3"}):(0,s.jsx)(qr,{className:"mr-2 h-3 w-3"}),"Install with ",e]})};function t0(t){return t.name}function l0(t){return t.name}var br=[{id:"editor",label:"Editor",Icon:gs,className:"bg-(--blue-4)"},{id:"display",label:"Display",Icon:Qo,className:"bg-(--grass-4)"},{id:"packageManagementAndData",label:"Packages & Data",Icon:Lr,className:"bg-(--red-4)"},{id:"runtime",label:"Runtime",Icon:Ds,className:"bg-(--amber-4)"},{id:"ai",label:"AI",Icon:gl,className:"bg-[linear-gradient(45deg,var(--purple-5),var(--cyan-5))]"},{id:"optionalDeps",label:"Optional Dependencies",Icon:As,className:"bg-(--orange-4)"},{id:"labs",label:"Labs",Icon:Zo,className:"bg-(--slate-4)"}];const jr=st(br[0].id);var s0=100,Fl="__system__";const n0=()=>{let[t,e]=Yl(),[l,n]=lt(Oi),i=(0,g.useRef)(null),r=Nt(Dl),[a,c]=lt(jr),o=nt(Pr);nt(Or).mode==="home"&&(o={terminal:!0,pylsp:!0,ty:!0,basedpyright:!0,pyrefly:!0});let d=nt(oa),{locale:u}=Bt(),{saveUserConfig:m}=pt(),p=io({resolver:ao(Jr),defaultValues:t}),f=(h,x)=>{let{chatModel:K,editModel:D}=Dd(h);return(K||D)&&(x={...x,models:{...x==null?void 0:x.models,...K&&{chat_model:K},...D&&{edit_model:D}}},K&&p.setValue("ai.models.chat_model",K),D&&p.setValue("ai.models.edit_model",D)),x},y=wo(async h=>{let x=_l(h,p.formState.dirtyFields);Qu({values:h,dirtyValues:x,touchedFields:p.formState.touchedFields}),Object.keys(x).length!==0&&(x.ai&&(x.ai=f(h.ai,x.ai)),await m({config:x}),e(K=>Yr({},K,x)))},s0),j=ot(),v=(0,g.useId)(),N=(0,g.useId)(),w=()=>{switch(a){case"editor":return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(_e,{title:"Autosave",children:[(0,s.jsx)(R,{control:p.control,name:"save.autosave",render:({field:h})=>(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"font-normal",children:"Autosave enabled"}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"autosave-checkbox",checked:h.value==="after_delay",disabled:h.disabled,onCheckedChange:x=>{h.onChange(x?"after_delay":"off")}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"save.autosave"})]})}),(0,s.jsx)(R,{control:p.control,name:"save.autosave_delay",render:({field:h})=>(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Autosave delay (seconds)"}),(0,s.jsx)(V,{children:(0,s.jsx)(gt,{"aria-label":"Autosave delay","data-testid":"autosave-delay-input",className:"m-0 w-24",isDisabled:p.getValues("save.autosave")!=="after_delay",...h,value:h.value/1e3,minValue:1,onChange:x=>{h.onChange(x*1e3),Number.isNaN(x)||y(p.getValues())}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"save.autosave_delay"})]})}),(0,s.jsx)(R,{control:p.control,name:"runtime.default_auto_download",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Save cell outputs as"}),(0,s.jsx)(V,{children:(0,s.jsxs)("div",{className:"flex gap-4",children:[(0,s.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,s.jsx)(re,{id:v,checked:Array.isArray(h.value)&&h.value.includes("html"),onCheckedChange:()=>{let x=Array.isArray(h.value)?h.value:[];h.onChange(cs(x,"html"))}}),(0,s.jsx)(B,{htmlFor:v,children:"HTML"})]}),(0,s.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,s.jsx)(re,{id:N,checked:Array.isArray(h.value)&&h.value.includes("ipynb"),onCheckedChange:()=>{let x=Array.isArray(h.value)?h.value:[];h.onChange(cs(x,"ipynb"))}}),(0,s.jsx)(B,{htmlFor:N,children:"IPYNB"})]})]})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"runtime.default_auto_download"})]}),(0,s.jsxs)(U,{children:["When enabled, marimo will periodically save notebooks in your selected formats (HTML, IPYNB) to a folder named"," ",(0,s.jsx)(ae,{className:"inline",children:"__marimo__"})," next to your notebook file."]})]})})]}),(0,s.jsxs)(_e,{title:"Formatting",children:[(0,s.jsx)(R,{control:p.control,name:"save.format_on_save",render:({field:h})=>(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"font-normal",children:"Format on save"}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"format-on-save-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(x)}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"save.format_on_save"})]})}),(0,s.jsx)(R,{control:p.control,name:"formatting.line_length",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Line length"}),(0,s.jsx)(V,{children:(0,s.jsx)(gt,{"aria-label":"Line length","data-testid":"line-length-input",className:"m-0 w-24",...h,value:h.value,minValue:1,maxValue:1e3,onChange:x=>{h.onChange(x),Number.isNaN(x)||y(p.getValues())}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"formatting.line_length"})]}),(0,s.jsx)(U,{children:"Maximum line length when formatting code."})]})})]}),(0,s.jsxs)(_e,{title:"Autocomplete",children:[(0,s.jsx)(R,{control:p.control,name:"completion.activate_on_typing",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"font-normal",children:"Autocomplete"}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"autocomplete-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"completion.activate_on_typing"})]}),(0,s.jsx)(U,{children:"When unchecked, code completion is still available through a hotkey."}),(0,s.jsx)("div",{children:(0,s.jsx)(ie,{variant:"link",className:"mb-0 px-0",type:"button",onClick:x=>{x.preventDefault(),x.stopPropagation(),c("ai")},children:"Edit AI autocomplete"})})]})}),(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"font-normal",children:"Accept suggestion on Enter"}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"accept-completion-on-enter-checkbox",checked:l,onCheckedChange:h=>n(!!h)})})]}),(0,s.jsx)(U,{children:"When unchecked, pressing Enter inserts a new line instead of accepting an autocomplete suggestion. Use Tab to accept suggestions."})]}),(0,s.jsx)(R,{control:p.control,name:"completion.signature_hint_on_typing",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"font-normal",children:"Signature hints"}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"signature-hint-on-type-checkbox",checked:h.value??!1,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"completion.signature_hint_on_typing"})]}),(0,s.jsx)(U,{children:"Display signature hints while typing within function calls."})]})})]}),(0,s.jsxs)(_e,{title:"Language Servers",children:[(0,s.jsxs)(U,{children:["See the"," ",(0,s.jsx)(de,{href:"https://docs.marimo.io/guides/editor_features/language_server/",children:"docs"})," ","for more information about language server support."]}),(0,s.jsxs)(U,{children:[(0,s.jsx)("strong",{children:"Note:"})," When using multiple language servers, different features may conflict."]}),(0,s.jsx)(R,{control:p.control,name:"language_servers.pylsp.enabled",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsxs)(B,{children:[(0,s.jsx)(xt,{variant:"defaultOutline",className:"mr-2",children:"Beta"}),"Python Language Server (",(0,s.jsx)(de,{href:"https://github.com/python-lsp/python-lsp-server",children:"docs"}),")"]}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"pylsp-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"language_servers.pylsp.enabled"})]}),h.value&&!o.pylsp&&(0,s.jsxs)(vt,{kind:"danger",children:["The Python Language Server is not available in your current environment. Please install"," ",(0,s.jsx)(ae,{className:"inline",children:"python-lsp-server"})," in your environment."]})]})}),(0,s.jsx)(R,{control:p.control,name:"language_servers.basedpyright.enabled",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsxs)(B,{children:[(0,s.jsx)(xt,{variant:"defaultOutline",className:"mr-2",children:"Beta"}),"basedpyright (",(0,s.jsx)(de,{href:"https://github.com/DetachHead/basedpyright",children:"docs"}),")"]}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"basedpyright-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"language_servers.basedpyright.enabled"})]}),h.value&&!o.basedpyright&&(0,s.jsxs)(vt,{kind:"danger",children:["basedpyright is not available in your current environment. Please install"," ",(0,s.jsx)(ae,{className:"inline",children:"basedpyright"})," in your environment."]})]})}),(0,s.jsx)(R,{control:p.control,name:"language_servers.pyrefly.enabled",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsxs)(B,{children:[(0,s.jsx)(xt,{variant:"defaultOutline",className:"mr-2",children:"Beta"}),"Pyrefly (",(0,s.jsx)(de,{href:"https://github.com/facebook/pyrefly",children:"docs"}),")"]}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"pyrefly-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"language_servers.pyrefly.enabled"})]}),h.value&&!o.pyrefly&&(0,s.jsxs)(vt,{kind:"danger",children:["Pyrefly is not available in your current environment. Please install ",(0,s.jsx)(ae,{className:"inline",children:"pyrefly"})," in your environment."]})]})}),(0,s.jsx)(R,{control:p.control,name:"language_servers.ty.enabled",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsxs)(B,{children:[(0,s.jsx)(xt,{variant:"defaultOutline",className:"mr-2",children:"Beta"}),"ty (",(0,s.jsx)(de,{href:"https://github.com/astral-sh/ty",children:"docs"}),")"]}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"ty-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"language_servers.ty.enabled"})]}),h.value&&!o.ty&&(0,s.jsxs)(vt,{kind:"danger",children:["ty is not available in your current environment. Please install ",(0,s.jsx)(ae,{className:"inline",children:"ty"})," in your environment."]})]})}),(0,s.jsx)(R,{control:p.control,name:"diagnostics.enabled",render:({field:h})=>(0,s.jsxs)($,{className:L,children:[(0,s.jsxs)(B,{children:[(0,s.jsx)(xt,{variant:"defaultOutline",className:"mr-2",children:"Beta"}),"Diagnostics"]}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"diagnostics-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"diagnostics.enabled"})]})})]}),(0,s.jsxs)(_e,{title:"Keymap",children:[(0,s.jsx)(R,{control:p.control,name:"keymap.preset",render:({field:h})=>(0,s.jsx)("div",{className:"flex flex-col space-y-1",children:(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Keymap"}),(0,s.jsx)(V,{children:(0,s.jsx)(De,{"data-testid":"keymap-select",onChange:x=>h.onChange(x.target.value),value:h.value,disabled:h.disabled,className:"inline-flex mr-2",children:bd.map(x=>(0,s.jsx)("option",{value:x,children:x},x))})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"keymap.preset"})]})})}),(0,s.jsx)(R,{control:p.control,name:"keymap.destructive_delete",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"font-normal",children:"Destructive delete"}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"destructive-delete-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"keymap.destructive_delete"})]}),(0,s.jsxs)(U,{className:"flex items-center gap-1",children:["Allow deleting non-empty cells",(0,s.jsx)(qe,{content:(0,s.jsxs)("div",{className:"max-w-xs",children:[(0,s.jsx)("strong",{children:"Use with caution:"})," Deleting cells with code can lose work and computed results since variables are removed from memory."]}),children:(0,s.jsx)(cl,{className:"w-3 h-3 text-(--amber-11)"})})]}),(0,s.jsx)("div",{children:(0,s.jsx)(ie,{variant:"link",className:"mb-0 px-0",type:"button",onClick:x=>{x.preventDefault(),x.stopPropagation(),r(!0)},children:"Edit Keyboard Shortcuts"})})]})})]})]});case"display":return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(_e,{title:"Display",children:[(0,s.jsx)(R,{control:p.control,name:"display.default_width",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Default width"}),(0,s.jsx)(V,{children:(0,s.jsx)(De,{"data-testid":"user-config-width-select",onChange:x=>h.onChange(x.target.value),value:h.value,disabled:h.disabled,className:"inline-flex mr-2",children:Yi().map(x=>(0,s.jsx)("option",{value:x,children:x},x))})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"display.default_width"})]}),(0,s.jsx)(U,{children:'The default app width for new notebooks; overridden by "width" in the application config.'})]})}),(0,s.jsx)(R,{control:p.control,name:"display.theme",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Theme"}),(0,s.jsx)(V,{children:(0,s.jsx)(De,{"data-testid":"theme-select",onChange:x=>h.onChange(x.target.value),value:h.value,disabled:h.disabled,className:"inline-flex mr-2",children:uo.map(x=>(0,s.jsx)("option",{value:x,children:x},x))})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"display.theme"})]}),(0,s.jsx)(U,{children:"This theme will be applied to the user's configuration; it does not affect theme when sharing the notebook."})]})}),(0,s.jsx)(R,{control:p.control,name:"display.code_editor_font_size",render:({field:h})=>(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Code editor font size (px)"}),(0,s.jsx)(V,{children:(0,s.jsx)("span",{className:"inline-flex mr-2",children:(0,s.jsx)(gt,{"aria-label":"Code editor font size","data-testid":"code-editor-font-size-input",className:"m-0 w-24",...h,value:h.value,minValue:8,maxValue:32,onChange:x=>{h.onChange(x),y(p.getValues())}})})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"display.code_editor_font_size"})]})}),(0,s.jsx)(R,{control:p.control,name:"display.locale",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Locale"}),(0,s.jsx)(V,{children:(0,s.jsxs)(De,{"data-testid":"locale-select",onChange:x=>{x.target.value===Fl?h.onChange(void 0):h.onChange(x.target.value)},value:h.value||Fl,disabled:h.disabled,className:"inline-flex mr-2",children:[(0,s.jsx)("option",{value:Fl,children:"System"}),navigator.languages.map(x=>(0,s.jsx)("option",{value:x,children:x},x))]})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"display.locale"})]}),(0,s.jsxs)(U,{children:["The locale to use for the notebook. If your desired locale is not listed, you can change it manually via"," ",(0,s.jsx)(ae,{className:"inline",children:"marimo config show"}),"."]})]})}),(0,s.jsx)(R,{control:p.control,name:"display.reference_highlighting",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Reference highlighting"}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"reference-highlighting-checkbox",checked:h.value,onCheckedChange:h.onChange})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"display.reference_highlighting"})]}),(0,s.jsx)(U,{children:"Visually emphasizes variables in a cell that are defined elsewhere in the notebook."})]})})]}),(0,s.jsx)(_e,{title:"Outputs",children:(0,s.jsx)(R,{control:p.control,name:"display.cell_output",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Cell output area"}),(0,s.jsx)(V,{children:(0,s.jsx)(De,{"data-testid":"cell-output-select",onChange:x=>h.onChange(x.target.value),value:h.value,disabled:h.disabled,className:"inline-flex mr-2",children:["above","below"].map(x=>(0,s.jsx)("option",{value:x,children:x},x))})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"display.cell_output"})]}),(0,s.jsx)(U,{children:"Where to display cell's output."})]})})})]});case"packageManagementAndData":return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(_e,{title:"Package Management",children:(0,s.jsx)(R,{control:p.control,disabled:j,name:"package_management.manager",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{children:"Manager"}),(0,s.jsx)(V,{children:(0,s.jsx)(De,{"data-testid":"package-manager-select",onChange:x=>h.onChange(x.target.value),value:h.value,disabled:h.disabled,className:"inline-flex mr-2",children:Xr.map(x=>(0,s.jsx)("option",{value:x,children:x},x))})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"package_management.manager"})]}),(0,s.jsxs)(U,{children:["When marimo comes across a module that is not installed, you will be prompted to install it using your preferred package manager. Learn more in the"," ",(0,s.jsx)(de,{href:"https://docs.marimo.io/guides/editor_features/package_management.html",children:"docs"}),".",(0,s.jsx)("br",{}),(0,s.jsx)("br",{}),"Running marimo in a"," ",(0,s.jsx)(de,{href:"https://docs.marimo.io/guides/package_management/inlining_dependencies.html",children:"sandboxed environment"})," ","is only supported by ",(0,s.jsx)(ae,{className:"inline",children:"uv"})]})]})})}),(0,s.jsx)(_e,{title:"Data",children:(0,s.jsx)(Hu,{form:p,config:t,onSubmit:y})})]});case"runtime":return(0,s.jsxs)(_e,{title:"Runtime configuration",children:[(0,s.jsx)(R,{control:p.control,name:"runtime.auto_instantiate",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"font-normal",children:"Autorun on startup"}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"auto-instantiate-checkbox",disabled:h.disabled,checked:h.value,onCheckedChange:h.onChange})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"runtime.auto_instantiate"})]}),(0,s.jsx)(U,{children:"Whether to automatically run all cells on startup."})]})}),(0,s.jsx)(R,{control:p.control,name:"runtime.on_cell_change",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"font-normal",children:"On cell change"}),(0,s.jsx)(V,{children:(0,s.jsx)(De,{"data-testid":"on-cell-change-select",onChange:x=>h.onChange(x.target.value),value:h.value,className:"inline-flex mr-2",children:["lazy","autorun"].map(x=>(0,s.jsx)("option",{value:x,children:x},x))})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"runtime.on_cell_change"})]}),(0,s.jsx)(U,{children:`Whether marimo should automatically run cells or just mark them as stale. If "autorun", marimo will automatically run affected cells when a cell is run or a UI element is interacted with; if "lazy", marimo will mark affected cells as stale but won't re-run them.`})]})}),(0,s.jsx)(R,{control:p.control,name:"runtime.auto_reload",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"font-normal",children:"On module change"}),(0,s.jsx)(V,{children:(0,s.jsx)(De,{"data-testid":"auto-reload-select",onChange:x=>h.onChange(x.target.value),value:h.value,disabled:j,className:"inline-flex mr-2",children:["off","lazy","autorun"].map(x=>(0,s.jsx)("option",{value:x,children:x},x))})}),(0,s.jsx)(H,{}),(0,s.jsx)(O,{userConfig:t,name:"runtime.auto_reload"})]}),(0,s.jsx)(U,{children:'Whether marimo should automatically reload modules before executing cells. If "lazy", marimo will mark cells affected by module modifications as stale; if "autorun", affected cells will be automatically re-run.'})]})}),(0,s.jsx)(R,{control:p.control,name:"runtime.reactive_tests",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"font-normal",children:"Autorun Unit Tests"}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"reactive-test-checkbox",checked:h.value,onCheckedChange:h.onChange})})]}),(0,s.jsx)(O,{userConfig:t,name:"runtime.reactive_tests"}),(0,s.jsx)(H,{}),(0,s.jsx)(U,{children:"Enable reactive pytest tests in notebook. When a cell contains only test functions (test_*) and classes (Test_*), marimo will automatically run them with pytest (requires notebook restart)."})," "]})}),(0,s.jsxs)(U,{children:["Learn more in the"," ",(0,s.jsx)(de,{href:"https://docs.marimo.io/guides/reactivity/#configuring-how-marimo-runs-cells",children:"docs"}),"."]})]});case"ai":return(0,s.jsx)(zu,{form:p,config:t,onSubmit:y});case"optionalDeps":return(0,s.jsx)(Xu,{});case"labs":return(0,s.jsxs)(_e,{title:"Experimental Features",children:[(0,s.jsx)("p",{className:"text-sm text-muted-secondary mb-4",children:"\u26A0\uFE0F These features are experimental and may require restarting your notebook to take effect."}),(0,s.jsx)(R,{control:p.control,name:"experimental.rtc_v2",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"font-normal",children:"Real-Time Collaboration"}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"rtc-checkbox",checked:h.value===!0,onCheckedChange:h.onChange})})]}),(0,s.jsx)(U,{children:"Enable experimental real-time collaboration. This change requires a page refresh to take effect."})]})}),(0,s.jsx)(R,{control:p.control,name:"experimental.external_agents",render:({field:h})=>(0,s.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,s.jsxs)($,{className:L,children:[(0,s.jsx)(B,{className:"font-normal",children:"External Agents"}),(0,s.jsx)(V,{children:(0,s.jsx)(re,{"data-testid":"external-agents-checkbox",checked:h.value===!0,onCheckedChange:h.onChange})})]}),(0,s.jsx)(O,{userConfig:t,name:"experimental.external_agents"}),(0,s.jsxs)(U,{children:["Enable experimental external agents such as Claude Code and Gemini CLI. Learn more in the"," ",(0,s.jsx)(de,{href:"https://docs.marimo.io/guides/editor_features/agents/",children:"docs"}),"."]})]})})]})}},C=(0,s.jsxs)("p",{className:"text-muted-secondary",children:["User configuration is stored in ",(0,s.jsx)(ae,{className:"inline",children:"marimo.toml"}),(0,s.jsx)("br",{}),"Run ",(0,s.jsx)(ae,{className:"inline",children:"marimo config show"})," in your terminal to show your current configuration and file location."]});return(0,s.jsx)(ro,{...p,children:(0,s.jsxs)("form",{ref:i,onChange:p.handleSubmit(y),className:"flex text-pretty overflow-hidden",children:[(0,s.jsx)(Xl,{value:a,onValueChange:h=>c(h),orientation:"vertical",className:"w-1/3 border-r h-full overflow-auto p-3",children:(0,s.jsxs)(es,{className:"self-start max-h-none flex flex-col gap-2 shrink-0 bg-background flex-1 min-h-full",children:[br.map(h=>(0,s.jsx)(ht,{value:h.id,className:"w-full text-left p-2 data-[state=active]:bg-primary data-[state=active]:text-primary-foreground justify-start",children:(0,s.jsxs)("div",{className:"flex gap-4 items-center text-lg overflow-hidden",children:[(0,s.jsx)("span",{className:Pe(h.className,"w-8 h-8 rounded flex items-center justify-center text-muted-foreground shrink-0"),children:(0,s.jsx)(h.Icon,{className:"w-4 h-4"})}),(0,s.jsx)("span",{className:"truncate",children:h.label})]})},h.id)),(0,s.jsxs)("div",{className:"p-2 text-xs text-muted-foreground self-start flex flex-col gap-1",children:[(0,s.jsxs)("span",{children:["Version: ",d]}),(0,s.jsxs)("span",{children:["Locale: ",u]})]}),(0,s.jsx)("div",{className:"flex-1"}),!ot()&&C]})}),(0,s.jsx)("div",{className:"w-2/3 pl-6 gap-2 flex flex-col overflow-auto p-6",children:w()})]})})};var i0=Ie();const kr=st("ai-features"),Cr=st(!1);function zl(){let t=(0,i0.c)(4),e=Nt(jr),l=Nt(Cr),n=Nt(kr),i;return t[0]!==e||t[1]!==n||t[2]!==l?(i={handleClick:(r,a)=>{e(r),r==="ai"&&n(a??"ai-features"),l(!0)}},t[0]=e,t[1]=n,t[2]=l,t[3]=i):i=t[3],i}var Yt=Ie();const wr=t=>{var T,q,Y,S,W,ee,oe,ce,ge,ue,fe,E,J,Q,Z,X,te,se;let e=(0,Yt.c)(59),{value:l,placeholder:n,onSelect:i,triggerClassName:r,customDropdownContent:a,iconSize:c,showAddCustomModelDocs:o,forRole:d,displayIconOnly:u}=t,m=c===void 0?"medium":c,p=o===void 0?!1:o,f=u===void 0?!1:u,[y,j]=g.useState(!1),v=nt(na),N=nt(ta),{saveModelChange:w}=$i(),{handleClick:C}=zl(),h=N.copilot==="custom"?(T=v==null?void 0:v.models)==null?void 0:T.autocomplete_model:void 0,x,K,D,F,I,_,M,k,A;if(e[0]!==((q=v==null?void 0:v.models)==null?void 0:q.autocomplete_model)||e[1]!==((Y=v==null?void 0:v.models)==null?void 0:Y.chat_model)||e[2]!==((S=v==null?void 0:v.models)==null?void 0:S.custom_models)||e[3]!==((W=v==null?void 0:v.models)==null?void 0:W.displayed_models)||e[4]!==((ee=v==null?void 0:v.models)==null?void 0:ee.edit_model)||e[5]!==h||e[6]!==f||e[7]!==d||e[8]!==m||e[9]!==y||e[10]!==i||e[11]!==n||e[12]!==w||e[13]!==r||e[14]!==l){let xe=kt.create({customModels:[...((oe=v==null?void 0:v.models)==null?void 0:oe.custom_models)??[],(ce=v==null?void 0:v.models)==null?void 0:ce.chat_model,h,(ge=v==null?void 0:v.models)==null?void 0:ge.edit_model].filter(Boolean),displayedModels:(ue=v==null?void 0:v.models)==null?void 0:ue.displayed_models}),me=xe.getListModelsByProvider(),ne=d==="autocomplete"?(fe=v==null?void 0:v.models)==null?void 0:fe.autocomplete_model:d==="chat"?(E=v==null?void 0:v.models)==null?void 0:E.chat_model:d==="edit"?(J=v==null?void 0:v.models)==null?void 0:J.edit_model:void 0,he=l?Ae.parse(l):ne?Ae.parse(ne):void 0,ke=m==="medium"?"h-4 w-4":"h-3 w-3",Be=(Se,Ne)=>{let et=xe.getModel(Se.id);return(0,s.jsxs)("div",{className:"flex items-center gap-2 w-full px-2 py-1",children:[(0,s.jsx)(Ee,{provider:Se.providerId,className:ke}),(0,s.jsxs)("div",{className:"flex flex-col",children:[(0,s.jsx)("span",{children:(et==null?void 0:et.name)||Se.shortModelId}),(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:Se.id})]}),(0,s.jsx)("div",{className:"ml-auto flex gap-1",children:(0,s.jsx)(qe,{content:ur(Ne),children:(0,s.jsx)("span",{className:`text-xs px-1.5 py-0.5 rounded font-medium ${Ut(Ne)}`,children:Ne},Ne)})})]})},be;e[24]!==d||e[25]!==i||e[26]!==w?(be=Se=>{i?i(Se):w(Se,d),j(!1)},e[24]=d,e[25]=i,e[26]=w,e[27]=be):be=e[27];let ye=be;K=Na,k=y,A=j;let Ce=`flex items-center justify-between px-2 py-0.5 border rounded-md
5
- hover:bg-accent hover:text-accent-foreground ${r}`,we=he?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(Ee,{provider:he.providerId,className:ke}),f?null:(0,s.jsx)("span",{className:"truncate",children:Ml(he.providerId)?he.shortModelId:he.id})]}):(0,s.jsx)("span",{className:"text-muted-foreground truncate",children:n}),le;e[28]===we?le=e[29]:(le=(0,s.jsx)("div",{className:"flex items-center gap-2 truncate",children:we}),e[28]=we,e[29]=le);let Re=`${ke} ml-1`,Me;e[30]===Re?Me=e[31]:(Me=(0,s.jsx)(Ha,{className:Re}),e[30]=Re,e[31]=Me),e[32]!==Ce||e[33]!==le||e[34]!==Me?(D=(0,s.jsxs)(Ca,{className:Ce,children:[le,Me]}),e[32]=Ce,e[33]=le,e[34]=Me,e[35]=D):D=e[35],x=wa,F="w-[300px]",I=ne&&d&&Be(Ae.parse(ne),d),e[36]!==ne||e[37]!==d?(_=ne&&d&&(0,s.jsx)(Dt,{}),e[36]=ne,e[37]=d,e[38]=_):_=e[38];let Ue;e[39]!==ye||e[40]!==ke?(Ue=Se=>{let[Ne,et]=Se;return(0,s.jsx)(r0,{provider:Ne,onSelect:ye,models:et,iconSizeClass:ke},Ne)},e[39]=ye,e[40]=ke,e[41]=Ue):Ue=e[41],M=me.map(Ue),e[0]=(Q=v==null?void 0:v.models)==null?void 0:Q.autocomplete_model,e[1]=(Z=v==null?void 0:v.models)==null?void 0:Z.chat_model,e[2]=(X=v==null?void 0:v.models)==null?void 0:X.custom_models,e[3]=(te=v==null?void 0:v.models)==null?void 0:te.displayed_models,e[4]=(se=v==null?void 0:v.models)==null?void 0:se.edit_model,e[5]=h,e[6]=f,e[7]=d,e[8]=m,e[9]=y,e[10]=i,e[11]=n,e[12]=w,e[13]=r,e[14]=l,e[15]=x,e[16]=K,e[17]=D,e[18]=F,e[19]=I,e[20]=_,e[21]=M,e[22]=k,e[23]=A}else x=e[15],K=e[16],D=e[17],F=e[18],I=e[19],_=e[20],M=e[21],k=e[22],A=e[23];let b;e[42]!==C||e[43]!==p?(b=p&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(Dt,{}),(0,s.jsxs)(ka,{className:"h-7 flex items-center gap-2",onClick:()=>C("ai","ai-models"),children:[(0,s.jsx)(Ua,{className:"h-3 w-3"}),(0,s.jsx)("span",{className:"cursor-pointer text-link",children:"Add custom model"})]})]}),e[42]=C,e[43]=p,e[44]=b):b=e[44];let P;e[45]!==x||e[46]!==a||e[47]!==b||e[48]!==F||e[49]!==I||e[50]!==_||e[51]!==M?(P=(0,s.jsxs)(x,{className:F,children:[I,_,M,a,b]}),e[45]=x,e[46]=a,e[47]=b,e[48]=F,e[49]=I,e[50]=_,e[51]=M,e[52]=P):P=e[52];let z;return e[53]!==K||e[54]!==D||e[55]!==P||e[56]!==k||e[57]!==A?(z=(0,s.jsxs)(K,{open:k,onOpenChange:A,children:[D,P]}),e[53]=K,e[54]=D,e[55]=P,e[56]=k,e[57]=A,e[58]=z):z=e[58],z};var r0=t=>{let e=(0,Yt.c)(26),{provider:l,onSelect:n,models:i,iconSizeClass:r}=t,a=Ml(l)?l:"openai-compatible",c;e[0]===l?c=e[1]:(c=kt.getProviderInfo(l),e[0]=l,e[1]=c);let o=c;if(i.length===0)return null;let d;e[2]!==a||e[3]!==r?(d=(0,s.jsx)(Ee,{provider:a,className:r}),e[2]=a,e[3]=r,e[4]=d):d=e[4];let u;e[5]===l?u=e[6]:(u=Zt(l),e[5]=l,e[6]=u);let m;e[7]!==d||e[8]!==u?(m=(0,s.jsx)(ls,{children:(0,s.jsxs)("p",{className:"flex items-center gap-2",children:[d,u]})}),e[7]=d,e[8]=u,e[9]=m):m=e[9];let p=o?-90:0,f;e[10]===o?f=e[11]:(f=o&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("p",{className:"text-sm text-muted-foreground p-2 max-w-[300px]",children:[o.description,(0,s.jsx)("br",{})]}),(0,s.jsxs)("p",{className:"text-sm text-muted-foreground p-2 pt-0",children:["For more information, see the"," ",(0,s.jsx)("a",{href:o.url,target:"_blank",className:"underline",rel:"noreferrer","aria-label":"Provider details",children:"provider details"}),"."]}),(0,s.jsx)(Dt,{})]}),e[10]=o,e[11]=f);let y;if(e[12]!==i||e[13]!==n||e[14]!==l){let N;e[16]!==n||e[17]!==l?(N=w=>{let C=`${l}/${w.model}`;return(0,s.jsxs)(ss,{children:[(0,s.jsx)(ls,{showChevron:!1,className:"py-2",children:(0,s.jsx)("div",{className:"flex items-center gap-2 w-full cursor-pointer",onClick:()=>{n(C)},children:(0,s.jsx)(a0,{model:w,provider:l})})}),(0,s.jsx)(ts,{className:"p-4 w-80",children:(0,s.jsx)(o0,{model:w,provider:l})})]},C)},e[16]=n,e[17]=l,e[18]=N):N=e[18],y=i.map(N),e[12]=i,e[13]=n,e[14]=l,e[15]=y}else y=e[15];let j;e[19]!==p||e[20]!==f||e[21]!==y?(j=(0,s.jsx)(Sa,{children:(0,s.jsxs)(ts,{className:"max-h-[40vh] overflow-y-auto",alignOffset:p,sideOffset:5,children:[f,y]})}),e[19]=p,e[20]=f,e[21]=y,e[22]=j):j=e[22];let v;return e[23]!==m||e[24]!==j?(v=(0,s.jsxs)(ss,{children:[m,j]}),e[23]=m,e[24]=j,e[25]=v):v=e[25],v},a0=t=>{let e=(0,Yt.c)(17),{model:l,provider:n}=t,i=Ml(n)?n:"openai-compatible",r;e[0]===i?r=e[1]:(r=(0,s.jsx)(Ee,{provider:i,className:"h-4 w-4"}),e[0]=i,e[1]=r);let a;e[2]===l.name?a=e[3]:(a=(0,s.jsx)("span",{children:l.name}),e[2]=l.name,e[3]=a);let c;e[4]===l.thinking?c=e[5]:(c=l.thinking&&(0,s.jsx)(qe,{content:"Reasoning model",children:(0,s.jsx)(gl,{className:`h-5 w-5 rounded-md p-1 ${Ut("thinking")}`})}),e[4]=l.thinking,e[5]=c);let o;e[6]===c?o=e[7]:(o=(0,s.jsx)("div",{className:"ml-auto",children:c}),e[6]=c,e[7]=o);let d;e[8]!==a||e[9]!==o?(d=(0,s.jsxs)("div",{className:"flex flex-row w-full items-center",children:[a,o]}),e[8]=a,e[9]=o,e[10]=d):d=e[10];let u;e[11]===l.custom?u=e[12]:(u=l.custom&&(0,s.jsx)(qe,{content:"Custom model",children:(0,s.jsx)(Jt,{className:"h-5 w-5"})}),e[11]=l.custom,e[12]=u);let m;return e[13]!==r||e[14]!==d||e[15]!==u?(m=(0,s.jsxs)(s.Fragment,{children:[r,d,u]}),e[13]=r,e[14]=d,e[15]=u,e[16]=m):m=e[16],m};const o0=t=>{let e=(0,Yt.c)(28),{model:l,provider:n}=t,i;e[0]===l.name?i=e[1]:(i=(0,s.jsx)("h4",{className:"font-semibold text-base text-foreground",children:l.name}),e[0]=l.name,e[1]=i);let r;e[2]===l.model?r=e[3]:(r=(0,s.jsx)("p",{className:"text-xs text-muted-foreground font-mono",children:l.model}),e[2]=l.model,e[3]=r);let a;e[4]!==i||e[5]!==r?(a=(0,s.jsxs)("div",{children:[i,r]}),e[4]=i,e[5]=r,e[6]=a):a=e[6];let c;e[7]===l.description?c=e[8]:(c=(0,s.jsx)("p",{className:"text-sm text-muted-foreground leading-relaxed",children:l.description}),e[7]=l.description,e[8]=c);let o;e[9]===l.roles?o=e[10]:(o=l.roles.length>0&&(0,s.jsxs)("div",{children:[(0,s.jsx)("p",{className:"text-xs font-medium text-muted-foreground mb-2",children:"Capabilities:"}),(0,s.jsx)("div",{className:"flex flex-wrap gap-1",children:l.roles.map(c0)})]}),e[9]=l.roles,e[10]=o);let d;e[11]===l.thinking?d=e[12]:(d=l.thinking&&(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("div",{className:"w-2 h-2 bg-purple-500 rounded-full animate-pulse"}),(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:"Supports thinking mode"})]}),e[11]=l.thinking,e[12]=d);let u;e[13]===n?u=e[14]:(u=(0,s.jsx)(Ee,{provider:n,className:"h-4 w-4"}),e[13]=n,e[14]=u);let m;e[15]===n?m=e[16]:(m=Zt(n),e[15]=n,e[16]=m);let p;e[17]===m?p=e[18]:(p=(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:m}),e[17]=m,e[18]=p);let f;e[19]!==u||e[20]!==p?(f=(0,s.jsxs)("div",{className:"flex items-center gap-2 pt-2 border-t border-border",children:[u,p]}),e[19]=u,e[20]=p,e[21]=f):f=e[21];let y;return e[22]!==f||e[23]!==a||e[24]!==c||e[25]!==o||e[26]!==d?(y=(0,s.jsxs)("div",{className:"space-y-3",children:[a,c,o,d,f]}),e[22]=f,e[23]=a,e[24]=c,e[25]=o,e[26]=d,e[27]=y):y=e[27],y};function Zt(t){let e=kt.getProviderInfo(t);return e?e.name:Va(t)}function c0(t){return(0,s.jsx)("span",{className:`px-2 py-1 text-xs rounded-md font-medium ${Ut(t)}`,title:ur(t),children:t},t)}export{Il as A,gi as B,jd as C,Di as D,$i as E,Nl as F,Rs as G,Gs as H,bi as I,Ps as J,Fs as K,wi as L,Ii as M,Lt as N,jt as O,Lc as P,kl as R,Yi as S,Ae as T,Os as U,Us as V,xl as W,Ms as X,Ds as Y,Gt as _,_l as a,Bd as b,mr as c,Ee as d,tr as f,Al as g,Xi as h,n0 as i,Mi as j,Ai as k,uu as l,Ct as m,Cr as n,yu as o,Yd as p,_s as q,zl as r,pu as s,wr as t,du as u,er as v,Oi as w,Dl as x,Ji as y,rt as z};
4
+ ${_o(l)}`),l;await new Promise(s=>setTimeout(s,this.options.retryDelayMs))}}async connect(){return await this.options.waitForReady(),this.tryConnect()}close(){var e;(e=this.delegate)==null||e.close(),this.delegate=void 0,this.needsReInitialization=!0}async sendData(e,l){if(!this.delegate){G.log("Copilot#sendData: Delegate not initialized, reconnecting...");try{await this.options.waitForReady(),await this.tryConnect()}catch(s){throw G.error("Copilot#sendData: Failed to reconnect transport",s),Error("Unable to connect to GitHub Copilot. Please check your settings and try again.",{cause:s})}if(this.needsReInitialization&&this.onReconnect){G.log("Copilot#sendData: Re-initializing LSP after reconnection...");try{await this.onReconnect(),this.needsReInitialization=!1}catch(s){throw this.close(),G.error("Copilot#sendData: LSP re-initialization after reconnection failed",s),s}}}if(!this.delegate)throw Error("Failed to initialize GitHub Copilot connection. Please try again.");return l??(l=this.options.maxTimeoutMs),this.delegate.sendData(e,l)}};const tr="/__marimo_copilot__.py";var lr=`file://${tr}`;const Wd=Qe(()=>{let t=ra();return new qd({getWsUrl:()=>t.getLSPURL("copilot").toString(),waitForReady:async()=>{await Ld(),await aa()},showError:(e,l)=>{Be({variant:"danger",title:e,description:l})}})}),wt=Qe(()=>{var s,i;let t=((i=(s=tt.get(el).ai)==null?void 0:s.github)==null?void 0:i.copilot_settings)??{},e=Wd(),l=new Hd({rootUri:lr,workspaceFolders:null,transport:e,copilotSettings:t});return e.onReconnect=()=>l.reInitialize(),l});function Qd(){return Ar({documentUri:lr,client:wt(),languageId:"copilot",hoverEnabled:!1,completionEnabled:!1,definitionEnabled:!1,renameEnabled:!1,codeActionsEnabled:!1,signatureHelpEnabled:!1,diagnosticsEnabled:!1,sendIncrementalChanges:!1})}const nr=(0,g.memo)(()=>{let[t,e]=lt(Ji),[l,s]=lt(Xi),[i,r]=(0,g.useState)(),[a,c]=(0,g.useState)(!1),o=async m=>{m.preventDefault(),c(!0);try{let p=await Zd();if(!(p!=null&&p.verificationUri)||!p.userCode){G.error("Copilot#trySignIn: Invalid response from sign-in",{result:p}),s("connectionError"),Be({title:"GitHub Copilot Connection Error",description:"Unable to connect to GitHub Copilot. Please check your settings and try again.",variant:"danger"});return}let{verificationUri:f,status:y,userCode:j}=p;rr(y)?e(!0):(s("signingIn"),r({url:f,code:j}))}catch(p){G.error("Copilot#trySignIn: Error during sign-in",p),s("connectionError"),Be({title:"GitHub Copilot Connection Error",description:p instanceof Error?p.message:"Unable to connect to GitHub Copilot. Please check your settings and try again.",variant:"danger"})}finally{c(!1)}},d=async m=>{if(m.preventDefault(),i){c(!0);try{let p=await Jd(i.code);p.success?(e(!0),s("signedIn")):p.error==="connection"?(s("connectionError"),Be({title:"GitHub Copilot Connection Error",description:"Lost connection during sign-in. Please try again.",variant:"danger",action:(0,n.jsx)(ie,{onClick:o,children:"Retry"})})):s("signInFailed")}finally{c(!1)}}},u=async m=>{m.preventDefault(),await eu(),e(!1),s("signedOut")};return(()=>{switch(l??(t?"signedIn":"connecting")){case"connecting":return(0,n.jsx)($e,{className:"font-normal flex",children:"Connecting..."});case"signedOut":return(0,n.jsx)(ie,{onClick:o,size:"xs",variant:"link",children:"Sign in to GitHub Copilot"});case"signingIn":return(0,n.jsxs)("ol",{className:"ml-4 text-sm list-decimal [&>li]:mt-2",children:[(0,n.jsx)("li",{children:(0,n.jsxs)("div",{className:"flex items-center",children:["Copy this code:",(0,n.jsx)("strong",{className:"ml-2",children:i==null?void 0:i.code}),(0,n.jsx)(qa,{className:"ml-2 cursor-pointer opacity-60 hover:opacity-100 h-3 w-3",onClick:async()=>{i&&(await mo(i.code),Be({description:"Copied to clipboard"}))}})]})}),(0,n.jsxs)("li",{children:["Enter the code at this link:",(0,n.jsx)("a",{href:i==null?void 0:i.url,target:"_blank",rel:"noreferrer",className:Ia({variant:"link",size:"xs"}),children:i==null?void 0:i.url})]}),(0,n.jsxs)("li",{children:["Click here when done:",(0,n.jsxs)(ie,{size:"xs",onClick:d,className:"ml-1",children:[a&&(0,n.jsx)(At,{className:"h-3 w-3 mr-1 animate-spin"}),"Done"]})]})]});case"signInFailed":return(0,n.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,n.jsx)("div",{className:"text-destructive text-sm",children:"Sign in failed. Please try again."}),a?(0,n.jsx)(At,{className:"h-3 w-3 mr-1 animate-spin"}):(0,n.jsx)(ie,{onClick:o,size:"xs",variant:"link",children:"Connect to GitHub Copilot"})]});case"signedIn":return(0,n.jsxs)("div",{className:"flex items-center gap-5",children:[(0,n.jsxs)($e,{className:"font-normal flex items-center",children:[(0,n.jsx)("div",{className:"inline-flex items-center justify-center bg-(--grass-7) rounded-full p-1 mr-2",children:(0,n.jsx)(Oa,{className:"h-3 w-3 text-white"})}),"Connected"]}),(0,n.jsx)(ie,{onClick:u,size:"xs",variant:"text",children:"Disconnect"})]});case"connectionError":return(0,n.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,n.jsxs)($e,{className:"font-normal flex",children:[(0,n.jsx)(sl,{className:"h-4 w-4 mr-1"}),"Connection Error"]}),(0,n.jsx)("div",{className:"text-sm",children:"Unable to connect to GitHub Copilot."}),(0,n.jsx)(ie,{onClick:o,size:"xs",variant:"link",children:"Retry Connection"})]});case"notConnected":return(0,n.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,n.jsxs)($e,{className:"font-normal flex",children:[(0,n.jsx)(sl,{className:"h-4 w-4 mr-1"}),"Unable to connect"]}),(0,n.jsxs)("div",{className:"text-sm",children:["For troubleshooting, see the"," ",(0,n.jsx)(de,{href:"https://docs.marimo.io/getting_started/index.html#github-copilot",children:"docs"}),"."]})]})}})()});nr.displayName="CopilotConfig";var sr=5,Yd=3e3;async function Zd(){return await wt().signInInitiate()}async function Jd(t){let e=wt();try{G.log("Copilot#tryFinishSignIn: Attempting to confirm sign-in");let{status:l}=await e.signInConfirm({userCode:t});return rr(l)?(G.log("Copilot#tryFinishSignIn: Sign-in confirmed successfully"),{success:!0}):(G.warn("Copilot#tryFinishSignIn: Sign-in confirmation returned unexpected status",{status:l}),{success:!1})}catch(l){return ir(l)?(G.error("Copilot#tryFinishSignIn: Connection error during sign-in",l),{success:!1,error:"connection"}):await Xd(e)}}async function Xd(t){for(let e=0;e<sr;e++)try{if(await new Promise(l=>setTimeout(l,Yd)),await t.signedIn())return G.log("Copilot#tryFinishSignIn: Successfully signed in after retry"),{success:!0}}catch(l){if(G.warn("Copilot#tryFinishSignIn: Retry attempt failed",{attempt:e+1,maxRetries:sr}),ir(l))return{success:!1,error:"connection"}}return G.error("Copilot#tryFinishSignIn: All sign-in attempts failed"),{success:!1}}async function eu(){await wt().signOut()}function ir(t){return t instanceof Error&&(t.message.includes("ECONNREFUSED")||t.message.includes("WebSocket")||t.message.includes("network"))}function rr(t){return t==="SignedIn"||t==="AlreadySignedIn"||t==="OK"}var ar="data:image/svg+xml,%3csvg%20role='img'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eAnthropic%3c/title%3e%3cpath%20d='M17.3041%203.541h-3.6718l6.696%2016.918H24Zm-10.6082%200L0%2020.459h3.7442l1.3693-3.5527h7.0052l1.3693%203.5528h3.7442L10.5363%203.5409Zm-.3712%2010.2232%202.2914-5.9456%202.2914%205.9456Z'/%3e%3c/svg%3e",tu="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20id='Ebene_1'%20xmlns='http://www.w3.org/2000/svg'%20version='1.1'%20viewBox='0%200%20466.73%20532.09'%3e%3c!--%20Generator:%20Adobe%20Illustrator%2029.6.1,%20SVG%20Export%20Plug-In%20.%20SVG%20Version:%202.1.1%20Build%209)%20--%3e%3cdefs%3e%3cstyle%3e%20.st0%20{%20fill:%20%2326251e;%20}%20%3c/style%3e%3c/defs%3e%3cpath%20class='st0'%20d='M457.43,125.94L244.42,2.96c-6.84-3.95-15.28-3.95-22.12,0L9.3,125.94c-5.75,3.32-9.3,9.46-9.3,16.11v247.99c0,6.65,3.55,12.79,9.3,16.11l213.01,122.98c6.84,3.95,15.28,3.95,22.12,0l213.01-122.98c5.75-3.32,9.3-9.46,9.3-16.11v-247.99c0-6.65-3.55-12.79-9.3-16.11h-.01ZM444.05,151.99l-205.63,356.16c-1.39,2.4-5.06,1.42-5.06-1.36v-233.21c0-4.66-2.49-8.97-6.53-11.31L24.87,145.67c-2.4-1.39-1.42-5.06,1.36-5.06h411.26c5.84,0,9.49,6.33,6.57,11.39h-.01Z'/%3e%3c/svg%3e",lu="data:image/svg+xml,%3csvg%20fill='currentColor'%20fill-rule='evenodd'%20height='1em'%20style='flex:none;line-height:1'%20viewBox='0%200%2024%2024'%20width='1em'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eDeepSeek%3c/title%3e%3cpath%20d='M23.748%204.482c-.254-.124-.364.113-.512.234-.051.039-.094.09-.137.136-.372.397-.806.657-1.373.626-.829-.046-1.537.214-2.163.848-.133-.782-.575-1.248-1.247-1.548-.352-.156-.708-.311-.955-.65-.172-.241-.219-.51-.305-.774-.055-.16-.11-.323-.293-.35-.2-.031-.278.136-.356.276-.313.572-.434%201.202-.422%201.84.027%201.436.633%202.58%201.838%203.393.137.093.172.187.129.323-.082.28-.18.552-.266.833-.055.179-.137.217-.329.14a5.526%205.526%200%2001-1.736-1.18c-.857-.828-1.631-1.742-2.597-2.458a11.365%2011.365%200%2000-.689-.471c-.985-.957.13-1.743.388-1.836.27-.098.093-.432-.779-.428-.872.004-1.67.295-2.687.684a3.055%203.055%200%2001-.465.137%209.597%209.597%200%2000-2.883-.102c-1.885.21-3.39%201.102-4.497%202.623C.082%208.606-.231%2010.684.152%2012.85c.403%202.284%201.569%204.175%203.36%205.653%201.858%201.533%203.997%202.284%206.438%202.14%201.482-.085%203.133-.284%204.994-1.86.47.234.962.327%201.78.397.63.059%201.236-.03%201.705-.128.735-.156.684-.837.419-.961-2.155-1.004-1.682-.595-2.113-.926%201.096-1.296%202.746-2.642%203.392-7.003.05-.347.007-.565%200-.845-.004-.17.035-.237.23-.256a4.173%204.173%200%20001.545-.475c1.396-.763%201.96-2.015%202.093-3.517.02-.23-.004-.467-.247-.588zM11.581%2018c-2.089-1.642-3.102-2.183-3.52-2.16-.392.024-.321.471-.235.763.09.288.207.486.371.739.114.167.192.416-.113.603-.673.416-1.842-.14-1.897-.167-1.361-.802-2.5-1.86-3.301-3.307-.774-1.393-1.224-2.887-1.298-4.482-.02-.386.093-.522.477-.592a4.696%204.696%200%20011.529-.039c2.132.312%203.946%201.265%205.468%202.774.868.86%201.525%201.887%202.202%202.891.72%201.066%201.494%202.082%202.48%202.914.348.292.625.514.891.677-.802.09-2.14.11-3.054-.614zm1-6.44a.306.306%200%2001.415-.287.302.302%200%2001.2.288.306.306%200%2001-.31.307.303.303%200%2001-.304-.308zm3.11%201.596c-.2.081-.399.151-.59.16a1.245%201.245%200%2001-.798-.254c-.274-.23-.47-.358-.552-.758a1.73%201.73%200%2001.016-.588c.07-.327-.008-.537-.239-.727-.187-.156-.426-.199-.688-.199a.559.559%200%2001-.254-.078c-.11-.054-.2-.19-.114-.358.028-.054.16-.186.192-.21.356-.202.767-.136%201.146.016.352.144.618.408%201.001.782.391.451.462.576.685.914.176.265.336.537.445.848.067.195-.019.354-.25.452z'%3e%3c/path%3e%3c/svg%3e",nu="data:image/svg+xml,%3csvg%20role='img'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eGitHub%3c/title%3e%3cpath%20d='M12%20.297c-6.63%200-12%205.373-12%2012%200%205.303%203.438%209.8%208.205%2011.385.6.113.82-.258.82-.577%200-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422%2018.07%203.633%2017.7%203.633%2017.7c-1.087-.744.084-.729.084-.729%201.205.084%201.838%201.236%201.838%201.236%201.07%201.835%202.809%201.305%203.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93%200-1.31.465-2.38%201.235-3.22-.135-.303-.54-1.523.105-3.176%200%200%201.005-.322%203.3%201.23.96-.267%201.98-.399%203-.405%201.02.006%202.04.138%203%20.405%202.28-1.552%203.285-1.23%203.285-1.23.645%201.653.24%202.873.12%203.176.765.84%201.23%201.91%201.23%203.22%200%204.61-2.805%205.625-5.475%205.92.42.36.81%201.096.81%202.22%200%201.606-.015%202.896-.015%203.286%200%20.315.21.69.825.57C20.565%2022.092%2024%2017.592%2024%2012.297c0-6.627-5.373-12-12-12'/%3e%3c/svg%3e",or="data:image/svg+xml,%3csvg%20role='img'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eGoogle%20Gemini%3c/title%3e%3cpath%20d='M11.04%2019.32Q12%2021.51%2012%2024q0-2.49.93-4.68.96-2.19%202.58-3.81t3.81-2.55Q21.51%2012%2024%2012q-2.49%200-4.68-.93a12.3%2012.3%200%200%201-3.81-2.58%2012.3%2012.3%200%200%201-2.58-3.81Q12%202.49%2012%200q0%202.49-.96%204.68-.93%202.19-2.55%203.81a12.3%2012.3%200%200%201-3.81%202.58Q2.49%2012%200%2012q2.49%200%204.68.96%202.19.93%203.81%202.55t2.55%203.81'/%3e%3c/svg%3e",su="data:image/svg+xml,%3csvg%20role='img'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eOllama%3c/title%3e%3cpath%20d='M16.361%2010.26a.894.894%200%200%200-.558.47l-.072.148.001.207c0%20.193.004.217.059.353.076.193.152.312.291.448.24.238.51.3.872.205a.86.86%200%200%200%20.517-.436.752.752%200%200%200%20.08-.498c-.064-.453-.33-.782-.724-.897a1.06%201.06%200%200%200-.466%200zm-9.203.005c-.305.096-.533.32-.65.639a1.187%201.187%200%200%200-.06.52c.057.309.31.59.598.667.362.095.632.033.872-.205.14-.136.215-.255.291-.448.055-.136.059-.16.059-.353l.001-.207-.072-.148a.894.894%200%200%200-.565-.472%201.02%201.02%200%200%200-.474.007Zm4.184%202c-.131.071-.223.25-.195.383.031.143.157.288.353.407.105.063.112.072.117.136.004.038-.01.146-.029.243-.02.094-.036.194-.036.222.002.074.07.195.143.253.064.052.076.054.255.059.164.005.198.001.264-.03.169-.082.212-.234.15-.525-.052-.243-.042-.28.087-.355.137-.08.281-.219.324-.314a.365.365%200%200%200-.175-.48.394.394%200%200%200-.181-.033c-.126%200-.207.03-.355.124l-.085.053-.053-.032c-.219-.13-.259-.145-.391-.143a.396.396%200%200%200-.193.032zm.39-2.195c-.373.036-.475.05-.654.086-.291.06-.68.195-.951.328-.94.46-1.589%201.226-1.787%202.114-.04.176-.045.234-.045.53%200%20.294.005.357.043.524.264%201.16%201.332%202.017%202.714%202.173.3.033%201.596.033%201.896%200%201.11-.125%202.064-.727%202.493-1.571.114-.226.169-.372.22-.602.039-.167.044-.23.044-.523%200-.297-.005-.355-.045-.531-.288-1.29-1.539-2.304-3.072-2.497a6.873%206.873%200%200%200-.855-.031zm.645.937a3.283%203.283%200%200%201%201.44.514c.223.148.537.458.671.662.166.251.26.508.303.82.02.143.01.251-.043.482-.08.345-.332.705-.672.957a3.115%203.115%200%200%201-.689.348c-.382.122-.632.144-1.525.138-.582-.006-.686-.01-.853-.042-.57-.107-1.022-.334-1.35-.68-.264-.28-.385-.535-.45-.946-.03-.192.025-.509.137-.776.136-.326.488-.73.836-.963.403-.269.934-.46%201.422-.512.187-.02.586-.02.773-.002zm-5.503-11a1.653%201.653%200%200%200-.683.298C5.617.74%205.173%201.666%204.985%202.819c-.07.436-.119%201.04-.119%201.503%200%20.544.064%201.24.155%201.721.02.107.031.202.023.208a8.12%208.12%200%200%201-.187.152%205.324%205.324%200%200%200-.949%201.02%205.49%205.49%200%200%200-.94%202.339%206.625%206.625%200%200%200-.023%201.357c.091.78.325%201.438.727%202.04l.13.195-.037.064c-.269.452-.498%201.105-.605%201.732-.084.496-.095.629-.095%201.294%200%20.67.009.803.088%201.266.095.555.288%201.143.503%201.534.071.128.243.393.264.407.007.003-.014.067-.046.141a7.405%207.405%200%200%200-.548%201.873c-.062.417-.071.552-.071.991%200%20.56.031.832.148%201.279L3.42%2024h1.478l-.05-.091c-.297-.552-.325-1.575-.068-2.597.117-.472.25-.819.498-1.296l.148-.29v-.177c0-.165-.003-.184-.057-.293a.915.915%200%200%200-.194-.25%201.74%201.74%200%200%201-.385-.543c-.424-.92-.506-2.286-.208-3.451.124-.486.329-.918.544-1.154a.787.787%200%200%200%20.223-.531c0-.195-.07-.355-.224-.522a3.136%203.136%200%200%201-.817-1.729c-.14-.96.114-2.005.69-2.834.563-.814%201.353-1.336%202.237-1.475.199-.033.57-.028.776.01.226.04.367.028.512-.041.179-.085.268-.19.374-.431.093-.215.165-.333.36-.576.234-.29.46-.489.822-.729.413-.27.884-.467%201.352-.561.17-.035.25-.04.569-.04.319%200%20.398.005.569.04a4.07%204.07%200%200%201%201.914.997c.117.109.398.457.488.602.034.057.095.177.132.267.105.241.195.346.374.43.14.068.286.082.503.045.343-.058.607-.053.943.016%201.144.23%202.14%201.173%202.581%202.437.385%201.108.276%202.267-.296%203.153-.097.15-.193.27-.333.419-.301.322-.301.722-.001%201.053.493.539.801%201.866.708%203.036-.062.772-.26%201.463-.533%201.854a2.096%202.096%200%200%201-.224.258.916.916%200%200%200-.194.25c-.054.109-.057.128-.057.293v.178l.148.29c.248.476.38.823.498%201.295.253%201.008.231%202.01-.059%202.581a.845.845%200%200%200-.044.098c0%20.006.329.009.732.009h.73l.02-.074.036-.134c.019-.076.057-.3.088-.516.029-.217.029-1.016%200-1.258-.11-.875-.295-1.57-.597-2.226-.032-.074-.053-.138-.046-.141.008-.005.057-.074.108-.152.376-.569.607-1.284.724-2.228.031-.26.031-1.378%200-1.628-.083-.645-.182-1.082-.348-1.525a6.083%206.083%200%200%200-.329-.7l-.038-.064.131-.194c.402-.604.636-1.262.727-2.04a6.625%206.625%200%200%200-.024-1.358%205.512%205.512%200%200%200-.939-2.339%205.325%205.325%200%200%200-.95-1.02%208.097%208.097%200%200%201-.186-.152.692.692%200%200%201%20.023-.208c.208-1.087.201-2.443-.017-3.503-.19-.924-.535-1.658-.98-2.082-.354-.338-.716-.482-1.15-.455-.996.059-1.8%201.205-2.116%203.01a6.805%206.805%200%200%200-.097.726c0%20.036-.007.066-.015.066a.96.96%200%200%201-.149-.078A4.857%204.857%200%200%200%2012%203.03c-.832%200-1.687.243-2.456.698a.958.958%200%200%201-.148.078c-.008%200-.015-.03-.015-.066a6.71%206.71%200%200%200-.097-.725C8.997%201.392%208.337.319%207.46.048a2.096%202.096%200%200%200-.585-.041Zm.293%201.402c.248.197.523.759.682%201.388.03.113.06.244.069.292.007.047.026.152.041.233.067.365.098.76.102%201.24l.002.475-.12.175-.118.178h-.278c-.324%200-.646.041-.954.124l-.238.06c-.033.007-.038-.003-.057-.144a8.438%208.438%200%200%201%20.016-2.323c.124-.788.413-1.501.696-1.711.067-.05.079-.049.157.013zm9.825-.012c.17.126.358.46.498.888.28.854.36%202.028.212%203.145-.019.14-.024.151-.057.144l-.238-.06a3.693%203.693%200%200%200-.954-.124h-.278l-.119-.178-.119-.175.002-.474c.004-.669.066-1.19.214-1.772.157-.623.434-1.185.68-1.382.078-.062.09-.063.159-.012z'/%3e%3c/svg%3e",cr="data:image/svg+xml,%3csvg%20role='img'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eOpenAI%3c/title%3e%3cpath%20d='M22.2819%209.8211a5.9847%205.9847%200%200%200-.5157-4.9108%206.0462%206.0462%200%200%200-6.5098-2.9A6.0651%206.0651%200%200%200%204.9807%204.1818a5.9847%205.9847%200%200%200-3.9977%202.9%206.0462%206.0462%200%200%200%20.7427%207.0966%205.98%205.98%200%200%200%20.511%204.9107%206.051%206.051%200%200%200%206.5146%202.9001A5.9847%205.9847%200%200%200%2013.2599%2024a6.0557%206.0557%200%200%200%205.7718-4.2058%205.9894%205.9894%200%200%200%203.9977-2.9001%206.0557%206.0557%200%200%200-.7475-7.0729zm-9.022%2012.6081a4.4755%204.4755%200%200%201-2.8764-1.0408l.1419-.0804%204.7783-2.7582a.7948.7948%200%200%200%20.3927-.6813v-6.7369l2.02%201.1686a.071.071%200%200%201%20.038.052v5.5826a4.504%204.504%200%200%201-4.4945%204.4944zm-9.6607-4.1254a4.4708%204.4708%200%200%201-.5346-3.0137l.142.0852%204.783%202.7582a.7712.7712%200%200%200%20.7806%200l5.8428-3.3685v2.3324a.0804.0804%200%200%201-.0332.0615L9.74%2019.9502a4.4992%204.4992%200%200%201-6.1408-1.6464zM2.3408%207.8956a4.485%204.485%200%200%201%202.3655-1.9728V11.6a.7664.7664%200%200%200%20.3879.6765l5.8144%203.3543-2.0201%201.1685a.0757.0757%200%200%201-.071%200l-4.8303-2.7865A4.504%204.504%200%200%201%202.3408%207.872zm16.5963%203.8558L13.1038%208.364%2015.1192%207.2a.0757.0757%200%200%201%20.071%200l4.8303%202.7913a4.4944%204.4944%200%200%201-.6765%208.1042v-5.6772a.79.79%200%200%200-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759%200%200%200-.7854%200L9.409%209.2297V6.8974a.0662.0662%200%200%201%20.0284-.0615l4.8303-2.7866a4.4992%204.4992%200%200%201%206.6802%204.66zM8.3065%2012.863l-2.02-1.1638a.0804.0804%200%200%201-.038-.0567V6.0742a4.4992%204.4992%200%200%201%207.3757-3.4537l-.142.0805L8.704%205.459a.7948.7948%200%200%200-.3927.6813zm1.0976-2.3654l2.602-1.4998%202.6069%201.4998v2.9994l-2.5974%201.4997-2.6067-1.4997Z'/%3e%3c/svg%3e",iu="data:image/svg+xml,%3csvg%20width='240'%20height='300'%20viewBox='0%200%20240%20300'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_1401_86274)'%3e%3cmask%20id='mask0_1401_86274'%20style='mask-type:luminance'%20maskUnits='userSpaceOnUse'%20x='0'%20y='0'%20width='240'%20height='300'%3e%3cpath%20d='M240%200H0V300H240V0Z'%20fill='white'/%3e%3c/mask%3e%3cg%20mask='url(%23mask0_1401_86274)'%3e%3cpath%20d='M180%20240H60V120H180V240Z'%20fill='%23CFCECD'/%3e%3cpath%20d='M180%2060H60V240H180V60ZM240%20300H0V0H240V300Z'%20fill='%23211E1E'/%3e%3c/g%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_1401_86274'%3e%3crect%20width='240'%20height='300'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e",ru="data:image/svg+xml,%3csvg%20fill='currentColor'%20fill-rule='evenodd'%20height='1em'%20style='flex:none;line-height:1'%20viewBox='0%200%2024%2024'%20width='1em'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eOpenRouter%3c/title%3e%3cpath%20d='M16.804%201.957l7.22%204.105v.087L16.73%2010.21l.017-2.117-.821-.03c-1.059-.028-1.611.002-2.268.11-1.064.175-2.038.577-3.147%201.352L8.345%2011.03c-.284.195-.495.336-.68.455l-.515.322-.397.234.385.23.53.338c.476.314%201.17.796%202.701%201.866%201.11.775%202.083%201.177%203.147%201.352l.3.045c.694.091%201.375.094%202.825.033l.022-2.159%207.22%204.105v.087L16.589%2022l.014-1.862-.635.022c-1.386.042-2.137.002-3.138-.162-1.694-.28-3.26-.926-4.881-2.059l-2.158-1.5a21.997%2021.997%200%2000-.755-.498l-.467-.28a55.927%2055.927%200%2000-.76-.43C2.908%2014.73.563%2014.116%200%2014.116V9.888l.14.004c.564-.007%202.91-.622%203.809-1.124l1.016-.58.438-.274c.428-.28%201.072-.726%202.686-1.853%201.621-1.133%203.186-1.78%204.881-2.059%201.152-.19%201.974-.213%203.814-.138l.02-1.907z'%3e%3c/path%3e%3c/svg%3e",au="data:image/svg+xml,%3csvg%20role='img'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3eWeights%20&amp;%20Biases%3c/title%3e%3cpath%20d='M2.48%200a1.55%201.55%200%201%200%200%203.1%201.55%201.55%200%200%200%200-3.1zm19.04%200a1.55%201.55%200%201%200%200%203.101%201.55%201.55%200%200%200%200-3.101zM12%202.295a1.55%201.55%200%201%200%200%203.1%201.55%201.55%200%200%200%200-3.1zM2.48%205.272a2.48%202.48%200%201%200%200%204.96%202.48%202.48%200%200%200%200-4.96zm19.04%200a2.48%202.48%200%201%200%200%204.96%202.48%202.48%200%200%200%200-4.96zM12%208.496a1.55%201.55%200%201%200%200%203.1%201.55%201.55%200%200%200%200-3.1zm-9.52%203.907a1.55%201.55%200%201%200%200%203.1%201.55%201.55%200%200%200%200-3.1zm19.04%200a1.55%201.55%200%201%200%200%203.102%201.55%201.55%200%200%200%200-3.102zM12%2013.767a2.48%202.48%200%201%200%200%204.962%202.48%202.48%200%200%200%200-4.962zm-9.52%203.907a2.48%202.48%200%201%200%20.001%204.962%202.48%202.48%200%200%200%200-4.962zm19.04.93a1.55%201.55%200%201%200%200%203.102%201.55%201.55%200%200%200%200-3.101zM12%2020.9a1.55%201.55%200%201%200%200%203.1%201.55%201.55%200%200%200%200-3.1Z'/%3e%3c/svg%3e",ou="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAABtlJREFUWEetV21QlNcVfs67y67KV/EjJIRdBIxJrB9BotFqAtERTIKkk8SxNiGt7Ipa46DsxvjR0rVTKuKKJFYTE1SIxmhFbR0Kwc4YNSraqmNswhSFIrBUBD8QVGTZfU/nvrDLroqQ4Pm179nnnvvc5557zr2EXlj05hSfhgvO10AUB/A4AOHEFMCADOJrBFQx0zki+ajkkA9eyslr6kVYBUIPA8ZaLOr/ttQtYJKXgRHSy6B2EBVKwMZqa+6hnsZ0S2DY8jlD2uxSIYDxPQVx/S+CSZIEpyx3rI5wXIZsslm3neouxoMJMEhvNv6JwcvcwYkw8kk9xoZFYOjgYAT2HwBZlnH99i1UNtbj9KVKVDZcho9KhX4+GtgdDrQ52sVwGYQcbduAFRUbNrTdS+R+AhaLpL9Vu4kZ8wTYV6vFrydNxTsTY/Bk0KCHinHxymVsP/E1vjz1jRvXSQIEOqGxO39esWFbo2cQbwIzZ6r0QwPSWUa6APlp++GgyYLgwCB8dqQEs8a/iEF+/j3uSPW1RqTt2orTVRfBHmgCyjQaObZidRcJLwJPL032b3XSEQaixMqTJr6s7GlDcxNOVpZj13wz9IOG9EhAABxOJ5buyUfB6RNeeCKU+vnpYsssFrvXKYhImzvcQfJXDISH/GQg5kyeiqzifYh5eiSss+ZgoK9fryb2BMnMeG/HZhR+e/peEmtqrFuU/OpQwGKRdC21pSLjJZKwMuEtZBbtw6ujx+LDXxohfD/WWu12JH6UgfL6OncIAtpVKh5VlbW1XCGgMxlnA7xT/H4zeiLO26oVCUtMv1cyuq/2na0aMz7KcB/PzjO6rdaam6wQ0JuNx5h5EhFhybQZyD54AJuS5iNhzPN9nds9fsXeHdhRetgz3m2nv+ox6ig4qnqAped04UqWn6utwr/SrVBLKmWAkPHClS4Jw4c8jsbmmzheUYaA/r6YPjJKUcp24yqOlH8PiQgvDv8pQj2Obf3NG5i8erlSH9wmcTyFmQ2vyQxR8ZASE48vTh7BlGdGYWOSUgYU+76uBtPXW9zfyZOnYnvpYbQ7nYovSh+BJXGvY27en13FB1ofH+Qlp2LyUyPc4xZ/uQX7zohUcxmvJJ05OQ1M64TrMf9ANLTcxOK4RKTFJXZLQKxQZLin9ffRoLVdOVluGxsWib8tWun+/uZCGd7+NNsTkk+hJkMOAanCK2S8225HeuIsGF+a1i2B0KDBGB4cgkP/Oe/GaNRqxI14DkcvlqG59Y7iF/Eurv7EjRGKjU5Pxe22uy7fYdKZjflgfteT1gevvIGFU1/tlsCnv1qIV0ZFY8If30dd0zUFN2PMOGxKWoDMogJsPFSk+IRS1Wu3eKky6+O1KK0sV3xEKBdNZzszv+OJSvpZLDLe6HLdmwP5hsWY8uxoxK5ZoTQiYTOfn4TsXxiw/h8HkF3y124JLCv4HDtPHu2YjtBIOpNhI4DfeBKIDovE/kXLu1WgLwQy/74Xm74udsVuIr3JsJSBNZ4EREs9tyoH/v36K+5HqUBG4R5sPlzSqQDZSG8yTmPwQReBwX7+uHqrBetnG5Sq+KgJpO7Mxf6zJztzgI5TsDnJV8PaRoCV5Y4bOkyp2888EYqChR8owLob15TG5LJ5sdMxIkSHjMK/oKH5puIeHzEcb0+IwVffnUXx+TOuCZAz2+iVhFOyfoeKhsudKUAbOkuxoYAZbwqvODqvR43H7n8ew/73liN6aKRXgL58VDbU4+Ws37pDSISEDgL3bIOQvvjfZ/FsSCj2LlymHKdHYaZdW7Gn835AwBU//2a9KzLpTMYTAE8QE4kJxfWr9vpVrEyYiXmx8X2ev+j8GSzY/gm4s4ISsaXGunWVe2mh5pQXiJ3i+uLV/EVD+vjd+YgfGfWjSYjtFN2w3dnZiAg2lZ9z1CVLXpOXtnqzIZMZHZnnYYLEkvhEpMTEQav26TWR/zVdxx8O7IZYvYexxJRQnZ2rlEsvAuIhUtliKwK4qxF4jBStetqIMYgKi0TEkGA8ERiEwf4BGKDRulFCYtHOd586hr1nSt3d0QUgolU11lx3a70vu8TF9I5MxWBM8qT9eEAQ1CoJthsdtd9LIfEWUPsouWN3OnC3XXkP3G+E7FrrFjPQdVl+YHqHWFIGqG/J+cz8lmcUX41WSU5R/12vn17uRxskMtWuzRVl38sedr5It3TuPJI5k5kDe5yIqAqACoyBAHtcoamE4EyrWbet7MGi9BA5PNUY7FDjfYCTAQT1SKQDcAmMQiLKq1mX65WBP0QBL+ywRYu0dk3rSwx+AUAkCEFg8eLCHWJcYeYaSVKXOyT527qsXFsvieL/FjzLIPLjeMUAAAAASUVORK5CYII=",cu=Ie(),dr={openai:cr,anthropic:ar,claude:ar,gemini:or,google:or,codex:cr,ollama:su,azure:Vo,bedrock:$o,deepseek:lu,github:nu,openrouter:ru,wandb:au,marimo:ou,opencode:iu,cursor:tu};const Ee=t=>{let e=(0,cu.c)(15),l,s,i;e[0]===t?(l=e[1],s=e[2],i=e[3]):({provider:s,className:i,...l}=t,e[0]=t,e[1]=l,e[2]=s,e[3]=i);let r=i===void 0?"":i;if(s==="openai-compatible"||!(s in dr)){let d;e[4]===r?d=e[5]:(d=Pe("h-4 w-4",r),e[4]=r,e[5]=d);let u;return e[6]===d?u=e[7]:(u=(0,n.jsx)(Jt,{className:d}),e[6]=d,e[7]=u),u}let a=dr[s],c;e[8]===r?c=e[9]:(c=Pe("h-4 w-4 grayscale dark:invert",r),e[8]=r,e[9]=c);let o;return e[10]!==a||e[11]!==l||e[12]!==s||e[13]!==c?(o=(0,n.jsx)("img",{src:a,alt:s,className:c,...l}),e[10]=a,e[11]=l,e[12]=s,e[13]=c,e[14]=o):o=e[14],o};function Ut(t){switch(t){case"chat":return"bg-[var(--purple-3)] text-[var(--purple-11)]";case"autocomplete":return"bg-[var(--green-3)] text-[var(--green-11)]";case"edit":return"bg-[var(--blue-3)] text-[var(--blue-11)]";case"thinking":return"bg-[var(--purple-4)] text-[var(--purple-12)]"}return"bg-[var(--mauve-3)] text-[var(--mauve-11)]"}function ur(t){switch(t){case"chat":return"Current model used for chat conversations";case"autocomplete":return"Current model used for autocomplete autocomplete";case"edit":return"Current model used for code edits";case"rerank":return"Current model used for reranking completions";case"embed":return"Current model used for embedding"}}var qt=Ie();const L="flex flex-row items-center space-x-1 space-y-0",du=t=>{let e=(0,qt.c)(2),{children:l}=t,s;return e[0]===l?s=e[1]:(s=(0,n.jsx)("div",{className:"text-md font-semibold text-muted-foreground uppercase tracking-wide mb-1",children:l}),e[0]=l,e[1]=s),s},ut=t=>{let e=(0,qt.c)(10),l,s,i;e[0]===t?(l=e[1],s=e[2],i=e[3]):({children:l,className:s,...i}=t,e[0]=t,e[1]=l,e[2]=s,e[3]=i);let r;e[4]===s?r=e[5]:(r=Pe("text-base font-semibold underline-offset-2 text-accent-foreground uppercase tracking-wide",s),e[4]=s,e[5]=r);let a;return e[6]!==l||e[7]!==i||e[8]!==r?(a=(0,n.jsx)("div",{...i,className:r,children:l}),e[6]=l,e[7]=i,e[8]=r,e[9]=a):a=e[9],a},uu=t=>{let e=(0,qt.c)(2),{children:l}=t,s;return e[0]===l?s=e[1]:(s=(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:l}),e[0]=l,e[1]=s),s},_e=t=>{let e=(0,qt.c)(5),{title:l,children:s}=t,i;e[0]===l?i=e[1]:(i=(0,n.jsx)(ut,{children:l}),e[0]=l,e[1]=i);let r;return e[2]!==s||e[3]!==i?(r=(0,n.jsxs)("div",{className:"flex flex-col gap-4 pb-4",children:[i,s]}),e[2]=s,e[3]=i,e[4]=r):r=e[4],r},mr=[{label:"Auto (Default)",value:"auto"},{label:"Native",value:"native"},{label:"Polars",value:"polars"},{label:"Lazy Polars",value:"lazy-polars"},{label:"Pandas",value:"pandas"}],mu="us-east-1.us-east-2.us-west-1.us-west-2.ap-northeast-1.ap-northeast-2.ap-northeast-3.ap-south-1.ap-south-2.ap-southeast-1.ap-southeast-2.ap-southeast-3.ap-southeast-4.ap-southeast-5.ap-southeast-7.ap-east-2.ca-central-1.eu-central-1.eu-central-2.eu-north-1.eu-south-1.eu-south-2.eu-west-1.eu-west-2.eu-west-3.il-central-1.me-central-1.sa-east-1.us-gov-east-1.us-gov-west-1".split(".");var hu=Ie();const hr=t=>{let e=(0,hu.c)(12),{value:l,includeSuggestion:s}=t,i=s===void 0?!0:s;if(!l||l.includes("/"))return null;let r;e[0]===l?r=e[1]:(r=Ae.parse(l),e[0]=l,e[1]=r);let a=r.id,c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=(0,n.jsx)("code",{className:"font-bold",children:"provider/model"}),e[2]=c):c=e[2];let o;e[3]===l?o=e[4]:(o=(0,n.jsxs)("span",{children:["Model id should be in the form"," ",c,". ",l," is missing a provider."]}),e[3]=l,e[4]=o);let d;e[5]===Symbol.for("react.memo_cache_sentinel")?(d=(0,n.jsx)("br",{}),e[5]=d):d=e[5];let u;e[6]!==i||e[7]!==a?(u=i&&a&&(0,n.jsxs)("span",{children:["Did you mean ",(0,n.jsx)("code",{className:"font-bold",children:a}),"?"]}),e[6]=i,e[7]=a,e[8]=u):u=e[8];let m;return e[9]!==o||e[10]!==u?(m=(0,n.jsxs)(vt,{kind:"danger",className:"mt-1",children:[o,d,u]}),e[9]=o,e[10]=u,e[11]=m):m=e[11],m};var Pl=Ie();function pr(t,e){let l=(0,Pl.c)(10),s;l[0]!==e||l[1]!==t?(s=Ul(t,e),l[0]=e,l[1]=t,l[2]=s):s=l[2];let i=s,r=st(na),a;l[3]!==e||l[4]!==r?(a=Ul(r,e),l[3]=e,l[4]=r,l[5]=a):a=l[5];let c=a,o=c!=null&&i!==c,d;return l[6]!==i||l[7]!==o||l[8]!==c?(d={isOverridden:o,currentValue:i,overriddenValue:c},l[6]=i,l[7]=o,l[8]=c,l[9]=d):d=l[9],d}const pu=t=>{let e=(0,Pl.c)(3),{name:l,children:s}=t,[i]=Ql(),{isOverridden:r}=pr(i,l),a;return e[0]!==s||e[1]!==r?(a=r?(0,n.jsx)(qe,{delayDuration:200,content:(0,n.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,n.jsxs)("p",{children:["This setting is overridden by the"," ",(0,n.jsx)(ae,{className:"inline mx-px",children:"pyproject.toml"})," config."]}),(0,n.jsxs)("p",{children:["To change it, edit the project config"," ",(0,n.jsx)(ae,{className:"inline mx-px",children:"pyproject.toml"}),"directly."]})]}),children:(0,n.jsx)("div",{className:"text-muted-foreground opacity-80 cursor-not-allowed *:pointer-events-none",children:s})}):s,e[0]=s,e[1]=r,e[2]=a):a=e[2],a},O=t=>{let e=(0,Pl.c)(18),{userConfig:l,name:s}=t,{isOverridden:i,currentValue:r,overriddenValue:a}=pr(l,s);if(!i)return null;let c,o;e[0]===Symbol.for("react.memo_cache_sentinel")?(c=(0,n.jsxs)("span",{children:["This setting is overridden by"," ",(0,n.jsx)(ae,{className:"inline",children:"pyproject.toml"}),"."]}),o=(0,n.jsx)("br",{}),e[0]=c,e[1]=o):(c=e[0],o=e[1]);let d,u;e[2]===Symbol.for("react.memo_cache_sentinel")?(d=(0,n.jsxs)("span",{children:["Edit the ",(0,n.jsx)(ae,{className:"inline",children:"pyproject.toml"})," file directly to change this setting."]}),u=(0,n.jsx)("br",{}),e[2]=d,e[3]=u):(d=e[2],u=e[3]);let m=String(r),p;e[4]===m?p=e[5]:(p=(0,n.jsxs)("span",{children:["User value: ",(0,n.jsx)("strong",{children:m})]}),e[4]=m,e[5]=p);let f;e[6]===Symbol.for("react.memo_cache_sentinel")?(f=(0,n.jsx)("br",{}),e[6]=f):f=e[6];let y=String(a),j;e[7]===y?j=e[8]:(j=(0,n.jsxs)("span",{children:["Project value: ",(0,n.jsx)("strong",{children:y})]}),e[7]=y,e[8]=j);let v;e[9]!==p||e[10]!==j?(v=(0,n.jsxs)(n.Fragment,{children:[c,o,d,u,p,f,j]}),e[9]=p,e[10]=j,e[11]=v):v=e[11];let N;e[12]===Symbol.for("react.memo_cache_sentinel")?(N=(0,n.jsx)(Pn,{className:"w-3 h-3"}),e[12]=N):N=e[12];let C=String(a),w;e[13]===C?w=e[14]:(w=(0,n.jsxs)("span",{className:"text-(--amber-12) text-xs flex items-center gap-1 border rounded px-2 py-1 bg-(--amber-2) border-(--amber-6) ml-1",children:[N,"Overridden by pyproject.toml [",C,"]"]}),e[13]=C,e[14]=w);let h;return e[15]!==v||e[16]!==w?(h=(0,n.jsx)(qe,{content:v,children:w}),e[15]=v,e[16]=w,e[17]=h):h=e[17],h};var gu=Ie();function gr(){let t=(0,gu.c)(1),e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=[],t[0]=e):e=t[0],Kn(fu,e)}async function fu(){return tl.get("/ai/mcp/status")}function xu(){let[t,e]=(0,g.useState)(!1);return{refresh:async()=>{e(!0);try{await tl.post("/ai/mcp/refresh",{}),Be({title:"MCP refreshed",description:"MCP server configuration has been refreshed successfully"})}catch(l){Be({title:"Refresh failed",description:l instanceof Error?l.message:"Failed to refresh MCP",variant:"danger"})}finally{e(!1)}},isRefreshing:t}}var fr=Ie();const yu=()=>{let t=(0,fr.c)(27),{data:e,refetch:l,isFetching:s}=gr(),i;t[0]===l?i=t[1]:(i=async()=>{try{await tl.post("/ai/mcp/refresh",{}),Be({title:"MCP refreshed",description:"MCP server configuration has been refreshed"}),l()}catch(h){let x=h;Be({title:"Refresh failed",description:x instanceof Error?x.message:"Failed to refresh MCP",variant:"danger"})}},t[0]=l,t[1]=i);let r=i,a;t[2]===(e==null?void 0:e.servers)?a=t[3]:(a=(e==null?void 0:e.servers)||{},t[2]=e==null?void 0:e.servers,t[3]=a);let c=a,o=Object.keys(c).length>0,d=(e==null?void 0:e.status)==="ok"&&"text-green-500",u=(e==null?void 0:e.status)==="partial"&&"text-yellow-500",m=(e==null?void 0:e.status)==="error"&&o&&"text-red-500",p;t[4]!==d||t[5]!==u||t[6]!==m?(p=Pe("h-4 w-4",d,u,m),t[4]=d,t[5]=u,t[6]=m,t[7]=p):p=t[7];let f;t[8]===p?f=t[9]:(f=(0,n.jsx)(qe,{content:"MCP Status",children:(0,n.jsx)(ga,{asChild:!0,children:(0,n.jsx)(ie,{variant:"text",size:"icon",children:(0,n.jsx)(En,{className:p})})})}),t[8]=p,t[9]=f);let y;t[10]===Symbol.for("react.memo_cache_sentinel")?(y=(0,n.jsx)("h4",{className:"font-medium text-sm",children:"MCP Server Status"}),t[10]=y):y=t[10];let j;t[11]===s?j=t[12]:(j=s?(0,n.jsx)(At,{className:"h-3 w-3 animate-spin"}):(0,n.jsx)(mn,{className:"h-3 w-3"}),t[11]=s,t[12]=j);let v;t[13]!==r||t[14]!==s||t[15]!==j?(v=(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[y,(0,n.jsx)(ie,{variant:"ghost",size:"xs",onClick:r,disabled:s,children:j})]}),t[13]=r,t[14]=s,t[15]=j,t[16]=v):v=t[16];let N;t[17]!==o||t[18]!==c||t[19]!==e?(N=e&&(0,n.jsxs)("div",{className:"text-xs space-y-2",children:[o&&(0,n.jsxs)("div",{className:"flex justify-between items-center",children:[(0,n.jsx)("span",{className:"text-muted-foreground",children:"Overall:"}),(0,n.jsx)(Wt,{status:e.status})]}),e.error&&(0,n.jsx)("div",{className:"text-xs text-red-500 bg-red-50 dark:bg-red-950/20 p-2 rounded",children:e.error}),o&&(0,n.jsxs)("div",{className:"space-y-1",children:[(0,n.jsx)("div",{className:"text-muted-foreground font-medium",children:"Servers:"}),Object.entries(c).map(vu)]}),!o&&(0,n.jsxs)("div",{className:"text-muted-foreground text-center py-2",children:["No MCP servers configured. ",(0,n.jsx)("br",{})," Configure under"," ",(0,n.jsx)("b",{children:"Settings > AI > MCP"})]})]}),t[17]=o,t[18]=c,t[19]=e,t[20]=N):N=t[20];let C;t[21]!==N||t[22]!==v?(C=(0,n.jsx)(fa,{className:"w-[320px]",align:"start",side:"right",children:(0,n.jsxs)("div",{className:"space-y-3",children:[v,N]})}),t[21]=N,t[22]=v,t[23]=C):C=t[23];let w;return t[24]!==C||t[25]!==f?(w=(0,n.jsxs)(xa,{children:[f,C]}),t[24]=C,t[25]=f,t[26]=w):w=t[26],w},Wt=t=>{let e=(0,fr.c)(11),{status:l}=t,s=l==="ok"&&"text-green-500",i=l==="partial"&&"text-yellow-500",r=l==="error"&&"text-red-500",a=l==="failed"&&"text-red-500",c=l==="disconnected"&&"text-gray-500",o=l==="pending"&&"text-yellow-500",d=l==="connected"&&"text-green-500",u;e[0]!==s||e[1]!==i||e[2]!==r||e[3]!==a||e[4]!==c||e[5]!==o||e[6]!==d?(u=Pe("text-xs font-medium",s,i,r,a,c,o,d),e[0]=s,e[1]=i,e[2]=r,e[3]=a,e[4]=c,e[5]=o,e[6]=d,e[7]=u):u=e[7];let m;return e[8]!==l||e[9]!==u?(m=(0,n.jsx)("span",{className:u,children:l}),e[8]=l,e[9]=u,e[10]=m):m=e[10],m};function vu(t){let[e,l]=t;return(0,n.jsxs)("div",{className:"flex justify-between items-center pl-2",children:[(0,n.jsx)("span",{className:"text-muted-foreground truncate max-w-[180px]",children:e}),(0,n.jsx)(Wt,{status:l})]},e)}var bu=Ie(),ju=[{id:"marimo",title:"marimo (docs)",description:"Access marimo documentation"},{id:"context7",title:"Context7",description:"Connect to Context7 MCP server"}];const ku=t=>{let e=(0,bu.c)(36),{form:l,onSubmit:s}=t,{handleClick:i}=zl(),{data:r,refetch:a,isFetching:c}=gr(),{refresh:o,isRefreshing:d}=xu(),u;e[0]!==a||e[1]!==o?(u=async()=>{await o(),a()},e[0]=a,e[1]=o,e[2]=u):u=e[2];let m=u,p;e[3]===Symbol.for("react.memo_cache_sentinel")?(p=(0,n.jsx)(ut,{children:"MCP Servers"}),e[3]=p):p=e[3];let f;e[4]===r?f=e[5]:(f=r&&(0,n.jsx)(Wt,{status:r.status}),e[4]=r,e[5]=f);let y=d||c,j;e[6]!==c||e[7]!==d?(j=d||c?(0,n.jsx)(At,{className:"h-3 w-3 animate-spin"}):(0,n.jsx)(mn,{className:"h-3 w-3"}),e[6]=c,e[7]=d,e[8]=j):j=e[8];let v;e[9]!==m||e[10]!==y||e[11]!==j?(v=(0,n.jsx)(ie,{variant:"outline",size:"xs",onClick:m,disabled:y,children:j}),e[9]=m,e[10]=y,e[11]=j,e[12]=v):v=e[12];let N;e[13]!==f||e[14]!==v?(N=(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[p,(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[f,v]})]}),e[13]=f,e[14]=v,e[15]=N):N=e[15];let C;e[16]===r?C=e[17]:(C=(r==null?void 0:r.error)&&(0,n.jsx)("div",{className:"text-xs text-red-600 dark:text-red-400 bg-red-50 dark:bg-red-950/20 p-2 rounded",children:r.error}),e[16]=r,e[17]=C);let w;e[18]===r?w=e[19]:(w=(r==null?void 0:r.servers)&&(0,n.jsx)("div",{className:"text-xs text-muted-foreground",children:Object.entries(r.servers).map(wu)}),e[18]=r,e[19]=w);let h;e[20]===Symbol.for("react.memo_cache_sentinel")?(h=(0,n.jsx)("p",{className:"text-sm text-muted-foreground",children:"Enable Model Context Protocol (MCP) servers to provide additional capabilities and data sources for AI features."}),e[20]=h):h=e[20];let x;e[21]===Symbol.for("react.memo_cache_sentinel")?(x=(0,n.jsx)(ae,{className:"inline",children:"marimo[mcp]"}),e[21]=x):x=e[21];let K;e[22]===i?K=e[23]:(K=(0,n.jsxs)("p",{className:"text-sm text-muted-foreground",children:["This feature requires the ",x," ","package. See"," ",(0,n.jsx)(ie,{variant:"link",onClick:()=>i("optionalDeps"),size:"xs",children:"Optional Features"})," ","for more details."]}),e[22]=i,e[23]=K);let D;e[24]!==l||e[25]!==s?(D=_=>{let{field:M}=_,k=M.value||[],A=b=>{let P=k.includes(b)?k.filter(z=>z!==b):[...k,b];M.onChange(P),s(l.getValues())};return(0,n.jsx)($,{children:(0,n.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:ju.map(b=>{let P=k.includes(b.id);return(0,n.jsxs)(Uo,{className:`cursor-pointer transition-all ${P?"border-[var(--blue-9)] bg-[var(--blue-2)]":"hover:border-[var(--blue-7)]"}`,onClick:()=>A(b.id),children:[(0,n.jsx)(Oo,{children:(0,n.jsxs)("div",{className:"flex items-start justify-between",children:[(0,n.jsx)(Lo,{className:"text-base",children:b.title}),(0,n.jsx)("span",{className:`h-5 w-5 flex items-center justify-center rounded border ${P?"border-[var(--blue-7)] bg-[var(--blue-7)] text-foreground":"border-muted bg-background text-muted-foreground"}`,children:P?(0,n.jsx)(Jo,{}):null})]})}),(0,n.jsx)(Ho,{children:(0,n.jsx)(Go,{children:b.description})})]},b.id)})})})},e[24]=l,e[25]=s,e[26]=D):D=e[26];let B;e[27]!==l.control||e[28]!==D?(B=(0,n.jsx)(R,{control:l.control,name:"mcp.presets",render:D}),e[27]=l.control,e[28]=D,e[29]=B):B=e[29];let I;return e[30]!==K||e[31]!==B||e[32]!==N||e[33]!==C||e[34]!==w?(I=(0,n.jsxs)("div",{className:"flex flex-col gap-4",children:[N,C,w,h,K,B]}),e[30]=K,e[31]=B,e[32]=N,e[33]=C,e[34]=w,e[35]=I):I=e[35],I};function wu(t){let[e,l]=t;return(0,n.jsxs)("div",{children:[e,": ",(0,n.jsx)(Wt,{status:l})]},e)}var je=Ie();const Cu=t=>{let e=(0,je.c)(5),{provider:l,children:s}=t,i;e[0]===l?i=e[1]:(i=l&&(0,n.jsx)(Ee,{provider:l,className:"mr-2"}),e[0]=l,e[1]=i);let r;return e[2]!==s||e[3]!==i?(r=(0,n.jsxs)("div",{className:"flex items-center text-base font-semibold",children:[i,s]}),e[2]=s,e[3]=i,e[4]=r):r=e[4],r},Ge=t=>{let e=(0,je.c)(11),{form:l,config:s,name:i,placeholder:r,testId:a,description:c,onChange:o}=t,d;e[0]!==s||e[1]!==c||e[2]!==i||e[3]!==o||e[4]!==r||e[5]!==a?(d=m=>{let{field:p}=m;return(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"API Key"}),(0,n.jsx)(V,{children:(0,n.jsx)(Oe,{"data-testid":a,rootClassName:"flex-1",className:"m-0 inline-flex h-7",placeholder:r,type:"password",...p,value:Ct(p.value),onChange:f=>{let y=f.target.value;y.includes("*")||(p.onChange(y),o==null||o(y))}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:s,name:i})]}),c&&(0,n.jsx)(U,{children:c})]})},e[0]=s,e[1]=c,e[2]=i,e[3]=o,e[4]=r,e[5]=a,e[6]=d):d=e[6];let u;return e[7]!==l.control||e[8]!==i||e[9]!==d?(u=(0,n.jsx)(R,{control:l.control,name:i,render:d}),e[7]=l.control,e[8]=i,e[9]=d,e[10]=u):u=e[10],u};function Ct(t){return t==null?"":typeof t=="string"?t:String(t)}const Xe=t=>{let e=(0,je.c)(12),{form:l,config:s,name:i,placeholder:r,testId:a,description:c,disabled:o,onChange:d}=t,u=o===void 0?!1:o,m;e[0]!==s||e[1]!==c||e[2]!==u||e[3]!==i||e[4]!==d||e[5]!==r||e[6]!==a?(m=f=>{let{field:y}=f;return(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Base URL"}),(0,n.jsx)(V,{children:(0,n.jsx)(Oe,{"data-testid":a,rootClassName:"flex-1",className:"m-0 inline-flex h-7",placeholder:r,...y,value:Ct(y.value),disabled:u,onChange:j=>{y.onChange(j.target.value),d==null||d(j.target.value)}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:s,name:i})]}),c&&(0,n.jsx)(U,{children:c})]})},e[0]=s,e[1]=c,e[2]=u,e[3]=i,e[4]=d,e[5]=r,e[6]=a,e[7]=m):m=e[7];let p;return e[8]!==l.control||e[9]!==i||e[10]!==m?(p=(0,n.jsx)(R,{control:l.control,name:i,render:m}),e[8]=l.control,e[9]=i,e[10]=m,e[11]=p):p=e[11],p},El=t=>{let e=(0,je.c)(13),{form:l,config:s,name:i,placeholder:r,description:a,label:c,forRole:o,onSubmit:d}=t,u;e[0]!==s||e[1]!==a||e[2]!==o||e[3]!==l||e[4]!==c||e[5]!==i||e[6]!==d||e[7]!==r?(u=p=>{let{field:f}=p,y=Ct(f.value),j=v=>{f.onChange(v),d(l.getValues())};return(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:c}),(0,n.jsx)(V,{children:(0,n.jsx)(Cr,{value:y,placeholder:r,onSelect:j,triggerClassName:"text-sm",customDropdownContent:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(Dt,{}),(0,n.jsxs)("p",{className:"px-2 py-1.5 text-sm text-muted-secondary flex items-center gap-1",children:["Enter a custom model",(0,n.jsx)(qe,{content:"Models should include the provider prefix, e.g. 'openai/gpt-4o'",children:(0,n.jsx)(Ur,{className:"h-3 w-3"})})]}),(0,n.jsxs)("div",{className:"px-2 py-1",children:[(0,n.jsx)(Oe,{className:"w-full border-border shadow-none focus-visible:shadow-xs",placeholder:r,...f,value:Ct(f.value),onKeyDown:sn.stopPropagation()}),y&&(0,n.jsx)(hr,{value:y,includeSuggestion:!1})]})]}),forRole:o})}),(0,n.jsx)(H,{})]}),(0,n.jsx)(O,{userConfig:s,name:i}),(0,n.jsx)(hr,{value:y}),a&&(0,n.jsx)(U,{children:a})]})},e[0]=s,e[1]=a,e[2]=o,e[3]=l,e[4]=c,e[5]=i,e[6]=d,e[7]=r,e[8]=u):u=e[8];let m;return e[9]!==l.control||e[10]!==i||e[11]!==u?(m=(0,n.jsx)(R,{control:l.control,name:i,render:u}),e[9]=l.control,e[10]=i,e[11]=u,e[12]=m):m=e[12],m},Su=t=>{let e=(0,je.c)(10),{form:l,config:s,name:i,options:r,testId:a,disabled:c}=t,o=c===void 0?!1:c,d;e[0]!==s||e[1]!==o||e[2]!==i||e[3]!==r||e[4]!==a?(d=m=>{let{field:p}=m;return(0,n.jsx)("div",{className:"flex flex-col space-y-1",children:(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Provider"}),(0,n.jsx)(V,{children:(0,n.jsx)(De,{"data-testid":a,onChange:f=>{f.target.value==="none"?p.onChange(!1):p.onChange(f.target.value)},value:Ct(p.value===!0?"github":p.value===!1?"none":p.value),disabled:o,className:"inline-flex mr-2",children:r.map(Fu)})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:s,name:i})]})})},e[0]=s,e[1]=o,e[2]=i,e[3]=r,e[4]=a,e[5]=d):d=e[5];let u;return e[6]!==l.control||e[7]!==i||e[8]!==d?(u=(0,n.jsx)(R,{control:l.control,name:i,render:d}),e[6]=l.control,e[7]=i,e[8]=d,e[9]=u):u=e[9],u};var Nu=({form:t,config:e,onSubmit:l})=>{let s=t.getValues("completion.copilot");if(s===!1)return null;if(s==="codeium")return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("p",{className:"text-sm text-muted-secondary",children:["To get a Windsurf API key, follow"," ",(0,n.jsx)(de,{href:"https://docs.marimo.io/guides/editor_features/ai_completion.html#windsurf-copilot",children:"these instructions"}),"."]}),(0,n.jsx)(Ge,{form:t,config:e,name:"completion.codeium_api_key",placeholder:"key",testId:"codeium-api-key-input"})]});if(s==="github")return(0,n.jsx)(nr,{});if(s==="custom")return(0,n.jsx)(El,{label:"Autocomplete Model",form:t,config:e,name:"ai.models.autocomplete_model",placeholder:"ollama/qwen2.5-coder:1.5b",description:"Model to use for code completion when using a custom provider.",onSubmit:l,forRole:"autocomplete"})},St=t=>{let e=(0,je.c)(5),{children:l,className:s}=t,i;e[0]===s?i=e[1]:(i=Pe("flex flex-col gap-4 pb-4",s),e[0]=s,e[1]=i);let r;return e[2]!==l||e[3]!==i?(r=(0,n.jsx)("div",{className:i,children:l}),e[2]=l,e[3]=i,e[4]=r):r=e[4],r},Iu=t=>{let e=(0,je.c)(23),{qualifiedId:l,model:s,isEnabled:i,onToggle:r,onDelete:a}=t,c;e[0]!==r||e[1]!==l?(c=()=>{r(l)},e[0]=r,e[1]=l,e[2]=c):c=e[2];let o=c,d;e[3]!==a||e[4]!==l?(d=v=>{v.stopPropagation(),v.preventDefault(),a(l)},e[3]=a,e[4]=l,e[5]=d):d=e[5];let u=d,m;e[6]===s?m=e[7]:(m=(0,n.jsx)(Ku,{model:s}),e[6]=s,e[7]=m);let p;e[8]!==u||e[9]!==s.custom?(p=s.custom&&(0,n.jsx)(ie,{variant:"ghost",size:"icon",onClick:u,className:"mr-2 hover:bg-transparent",children:(0,n.jsx)(xn,{className:"h-3.5 w-3.5 text-muted-foreground"})}),e[8]=u,e[9]=s.custom,e[10]=p):p=e[10];let f;e[11]!==o||e[12]!==i?(f=(0,n.jsx)(ca,{checked:i,onClick:o,size:"sm"}),e[11]=o,e[12]=i,e[13]=f):f=e[13];let y;e[14]!==m||e[15]!==p||e[16]!==f?(y=(0,n.jsx)(zi,{children:(0,n.jsxs)("div",{className:"flex items-center justify-between px-3 py-2.5 border-b last:border-b-0 cursor-pointer outline-none",children:[m,p,f]})}),e[14]=m,e[15]=p,e[16]=f,e[17]=y):y=e[17];let j;return e[18]!==o||e[19]!==s.name||e[20]!==l||e[21]!==y?(j=(0,n.jsx)(Ri,{id:l,textValue:s.name,className:"pl-6 outline-none data-focused:bg-muted/50 hover:bg-muted/50",onAction:o,children:y}),e[18]=o,e[19]=s.name,e[20]=l,e[21]=y,e[22]=j):j=e[22],j},Ku=t=>{let e=(0,je.c)(18),{model:l}=t,s;e[0]===l.name?s=e[1]:(s=(0,n.jsx)("h3",{className:"font-medium text-sm",children:l.name}),e[0]=l.name,e[1]=s);let i;e[2]===l.custom?i=e[3]:(i=l.custom&&(0,n.jsx)(Jt,{className:"h-4 w-4"}),e[2]=l.custom,e[3]=i);let r;e[4]===i?r=e[5]:(r=(0,n.jsx)(qe,{content:"Custom model",children:i}),e[4]=i,e[5]=r);let a;e[6]===l.thinking?a=e[7]:(a=l.thinking&&(0,n.jsxs)("div",{className:Pe("flex items-center gap-1 rounded px-1 py-0.5 w-fit",Ut("thinking")),children:[(0,n.jsx)(gl,{className:"h-3 w-3"}),(0,n.jsx)("span",{className:"text-xs font-medium",children:"Reasoning"})]}),e[6]=l.thinking,e[7]=a);let c;e[8]!==s||e[9]!==r||e[10]!==a?(c=(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[s,r,a]}),e[8]=s,e[9]=r,e[10]=a,e[11]=c):c=e[11];let o;e[12]!==l.custom||e[13]!==l.description?(o=l.description&&!l.custom&&(0,n.jsx)("p",{className:"text-sm text-muted-foreground line-clamp-2",children:l.description}),e[12]=l.custom,e[13]=l.description,e[14]=o):o=e[14];let d;return e[15]!==c||e[16]!==o?(d=(0,n.jsxs)("div",{className:"flex flex-col flex-1 gap-0.5",children:[c,o]}),e[15]=c,e[16]=o,e[17]=d):d=e[17],d};const Mu=t=>{let e=(0,je.c)(13),{form:l,config:s,onSubmit:i}=t,r,a;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=(0,n.jsx)(ut,{children:"Code Completion"}),a=(0,n.jsx)("p",{className:"text-sm text-muted-secondary",children:"Choose GitHub Copilot, Codeium, or a custom provider (such as Ollama) to enable AI-powered code completion."}),e[0]=r,e[1]=a):(r=e[0],a=e[1]);let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=["none","github","codeium","custom"],e[2]=c):c=e[2];let o;e[3]!==s||e[4]!==l?(o=(0,n.jsx)(Su,{form:l,config:s,name:"completion.copilot",options:c,testId:"copilot-select"}),e[3]=s,e[4]=l,e[5]=o):o=e[5];let d;e[6]!==s||e[7]!==l||e[8]!==i?(d=Nu({form:l,config:s,onSubmit:i}),e[6]=s,e[7]=l,e[8]=i,e[9]=d):d=e[9];let u;return e[10]!==o||e[11]!==d?(u=(0,n.jsxs)(St,{children:[r,a,o,d]}),e[10]=o,e[11]=d,e[12]=u):u=e[12],u};var Fe=t=>{let e=(0,je.c)(15),{title:l,triggerClassName:s,provider:i,children:r,isConfigured:a,value:c}=t,o=c??i,d;e[0]===a?d=e[1]:(d=a&&(0,n.jsx)("span",{className:"ml-2 px-1 rounded bg-muted text-xs font-medium border",children:"Configured"}),e[0]=a,e[1]=d);let u;e[2]!==i||e[3]!==d||e[4]!==l?(u=(0,n.jsxs)(Cu,{provider:i,children:[l,d]}),e[2]=i,e[3]=d,e[4]=l,e[5]=u):u=e[5];let m;e[6]!==u||e[7]!==s?(m=(0,n.jsx)(ua,{className:s,children:u}),e[6]=u,e[7]=s,e[8]=m):m=e[8];let p;e[9]===r?p=e[10]:(p=(0,n.jsx)(ha,{wrapperClassName:"flex flex-col gap-4",children:r}),e[9]=r,e[10]=p);let f;return e[11]!==o||e[12]!==m||e[13]!==p?(f=(0,n.jsxs)(ma,{value:o,children:[m,p]}),e[11]=o,e[12]=m,e[13]=p,e[14]=f):f=e[14],f};const Du=({form:t,config:e,onSubmit:l})=>{let[s,i]=(0,g.useState)(!1),[r,a]=(0,g.useState)(""),[c,o]=(0,g.useState)(""),[d,u]=(0,g.useState)(""),m=(0,g.useId)(),p=(0,g.useId)(),f=(0,g.useId)(),y=r.toLowerCase().replaceAll(/\s+/g,"_"),j=t.watch("ai.custom_providers"),v=Ot.includes(y)||j&&Object.keys(j).includes(y),N=y.includes("."),C=y.trim()&&d.trim()&&!v&&!N,w=()=>{a(""),o(""),u(""),i(!1)};return(0,n.jsx)(R,{control:t.control,name:"ai.custom_providers",render:({field:h})=>{let x=h.value||{},K=Object.entries(x),D=()=>{C&&(h.onChange({...x,[y]:{api_key:c||void 0,base_url:d}}),l(t.getValues()),w())},B=k=>{let{[k]:A,...b}=x;t.resetField("ai.custom_providers"),t.setValue("ai.custom_providers",b,{shouldDirty:!0}),l(t.getValues())},I=(0,n.jsxs)("div",{className:"flex flex-col gap-3 p-4 border border-border rounded-md bg-muted/20",children:[(0,n.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,n.jsx)($e,{htmlFor:m,children:"Provider Name"}),(0,n.jsx)(Oe,{id:m,placeholder:"e.g., together, groq, mistral",value:r,onChange:k=>a(k.target.value)}),v&&(0,n.jsx)("p",{className:"text-xs text-destructive",children:"A provider with this name already exists."}),N&&(0,n.jsx)("p",{className:"text-xs text-destructive",children:"Provider names cannot contain '.' characters."}),r&&!N&&(0,n.jsxs)("p",{className:"text-xs text-muted-secondary",children:["Use models with prefix:"," ",(0,n.jsxs)(ae,{className:"inline text-xs",children:[y,"/"]})]})]}),(0,n.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,n.jsxs)($e,{htmlFor:f,children:["Base URL ",(0,n.jsx)("span",{className:"text-destructive",children:"*"})]}),(0,n.jsx)(Oe,{id:f,placeholder:"e.g., https://api.together.xyz/v1",value:d,onChange:k=>u(k.target.value)})]}),(0,n.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,n.jsx)($e,{htmlFor:p,children:"API Key (optional)"}),(0,n.jsx)(Oe,{id:p,placeholder:"sk-...",type:"password",value:c,onChange:k=>o(k.target.value)})]}),(0,n.jsxs)("div",{className:"flex gap-2 mt-1",children:[(0,n.jsx)(ie,{onClick:D,disabled:!C,size:"xs",children:"Add Provider"}),(0,n.jsx)(ie,{variant:"outline",onClick:w,size:"xs",children:"Cancel"})]})]}),_=k=>{h.onChange({...x,[k.providerName]:{...x[k.providerName],[k.fieldName]:k.value||void 0}})},M=({providerName:k,providerConfig:A,onRemove:b})=>{let P=nl.startCase(k),z=!!A.api_key||!!A.base_url;return(0,n.jsxs)(Fe,{title:P,provider:k,value:`custom-${k}`,isConfigured:z,children:[(0,n.jsx)(Ge,{form:t,config:e,name:`ai.custom_providers.${k}.api_key`,placeholder:"sk-...",testId:`custom-provider-${k}-api-key`,onChange:F=>_({providerName:k,fieldName:"api_key",value:F})}),(0,n.jsx)(Xe,{form:t,config:e,name:`ai.custom_providers.${k}.base_url`,placeholder:"https://api.example.com/v1",testId:`custom-provider-${k}-base-url`,onChange:F=>_({providerName:k,fieldName:"base_url",value:F})}),(0,n.jsxs)(ie,{variant:"destructive",size:"xs",onClick:F=>{F.stopPropagation(),F.preventDefault(),b(k)},className:"w-fit self-end",children:[(0,n.jsx)(xn,{className:"h-4 w-4 mr-2"}),"Remove Provider"]})]},`custom-${k}`)};return(0,n.jsxs)(St,{children:[(0,n.jsx)(ut,{children:"Custom Providers"}),(0,n.jsx)("p",{className:"text-sm text-muted-secondary",children:"Add your own OpenAI-compatible provider. Once added, you can configure models in the AI Models tab."}),K.length>0&&(0,n.jsx)(Zl,{type:"multiple",className:"-mt-4",children:K.map(([k,A])=>M({providerName:k,providerConfig:A,onRemove:B}))}),s?I:(0,n.jsx)(xr,{className:"self-start",isFormOpen:s,setIsFormOpen:i,label:"Add Provider"})]})}})},Au=t=>{let e=(0,je.c)(117),{form:l,config:s,onSubmit:i}=t,r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=ot(),e[0]=r):r=e[0];let a=r,c;e[1]===l?c=e[2]:(c=Se=>!!l.getValues(Se),e[1]=l,e[2]=c);let o=c,d;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=(0,n.jsx)(ae,{className:"inline",children:"marimo.toml"}),e[3]=d):d=e[3];let u;e[4]===Symbol.for("react.memo_cache_sentinel")?(u=(0,n.jsxs)("p",{className:"text-sm text-muted-secondary",children:["Add your API keys below or to ",d," ","to set up a provider for the Code Completion and Assistant features; see"," ",(0,n.jsx)(de,{href:"https://docs.marimo.io/guides/editor_features/ai_completion/#connecting-to-an-llm",children:"docs"})," ","for more info."]}),e[4]=u):u=e[4];let m=o("ai.open_ai.api_key"),p;e[5]===Symbol.for("react.memo_cache_sentinel")?(p=(0,n.jsxs)(n.Fragment,{children:["Your OpenAI API key from"," ",(0,n.jsx)(de,{href:"https://platform.openai.com/account/api-keys",children:"platform.openai.com"}),"."]}),e[5]=p):p=e[5];let f,y;e[6]!==s||e[7]!==l?(f=(0,n.jsx)(Ge,{form:l,config:s,name:"ai.open_ai.api_key",placeholder:"sk-proj...",testId:"ai-openai-api-key-input",description:p}),y=(0,n.jsx)(Xe,{form:l,config:s,name:"ai.open_ai.base_url",placeholder:"https://api.openai.com/v1",testId:"ai-base-url-input",disabled:a}),e[6]=s,e[7]=l,e[8]=f,e[9]=y):(f=e[8],y=e[9]);let j;e[10]!==m||e[11]!==f||e[12]!==y?(j=(0,n.jsxs)(Fe,{title:"OpenAI",provider:"openai",triggerClassName:"pt-0",isConfigured:m,children:[f,y]}),e[10]=m,e[11]=f,e[12]=y,e[13]=j):j=e[13];let v=o("ai.anthropic.api_key"),N;e[14]===Symbol.for("react.memo_cache_sentinel")?(N=(0,n.jsxs)(n.Fragment,{children:["Your Anthropic API key from"," ",(0,n.jsx)(de,{href:"https://console.anthropic.com/settings/keys",children:"console.anthropic.com"}),"."]}),e[14]=N):N=e[14];let C;e[15]!==s||e[16]!==l?(C=(0,n.jsx)(Ge,{form:l,config:s,name:"ai.anthropic.api_key",placeholder:"sk-ant...",testId:"ai-anthropic-api-key-input",description:N}),e[15]=s,e[16]=l,e[17]=C):C=e[17];let w;e[18]!==v||e[19]!==C?(w=(0,n.jsx)(Fe,{title:"Anthropic",provider:"anthropic",isConfigured:v,children:C}),e[18]=v,e[19]=C,e[20]=w):w=e[20];let h=o("ai.google.api_key"),x;e[21]===Symbol.for("react.memo_cache_sentinel")?(x=(0,n.jsxs)(n.Fragment,{children:["Your Google AI API key from"," ",(0,n.jsx)(de,{href:"https://aistudio.google.com/app/apikey",children:"aistudio.google.com"}),"."]}),e[21]=x):x=e[21];let K;e[22]!==s||e[23]!==l?(K=(0,n.jsx)(Ge,{form:l,config:s,name:"ai.google.api_key",placeholder:"AI...",testId:"ai-google-api-key-input",description:x}),e[22]=s,e[23]=l,e[24]=K):K=e[24];let D;e[25]!==h||e[26]!==K?(D=(0,n.jsx)(Fe,{title:"Google",provider:"google",isConfigured:h,children:K}),e[25]=h,e[26]=K,e[27]=D):D=e[27];let B=o("ai.ollama.base_url"),I;e[28]!==s||e[29]!==l?(I=(0,n.jsx)(Xe,{form:l,config:s,name:"ai.ollama.base_url",placeholder:"http://localhost:11434/v1",testId:"ollama-base-url-input"}),e[28]=s,e[29]=l,e[30]=I):I=e[30];let _;e[31]!==B||e[32]!==I?(_=(0,n.jsx)(Fe,{title:"Ollama",provider:"ollama",isConfigured:B,children:I}),e[31]=B,e[32]=I,e[33]=_):_=e[33];let M=o("ai.github.api_key"),k;e[34]===Symbol.for("react.memo_cache_sentinel")?(k=(0,n.jsx)(In,{variant:"warning",className:"py-1.5 px-3 text-xs",children:(0,n.jsxs)(Nn,{children:["Free tier models have low token limits which can cause errors with larger prompts."," ",(0,n.jsx)(de,{href:"https://docs.github.com/en/github-models/prototyping-with-ai-models#rate-limits",children:"Learn more"})]})}),e[34]=k):k=e[34];let A;e[35]===Symbol.for("react.memo_cache_sentinel")?(A=(0,n.jsxs)(n.Fragment,{children:["Your GitHub API token from"," ",(0,n.jsx)(ae,{className:"inline",children:"gh auth token"}),"."]}),e[35]=A):A=e[35];let b,P;e[36]!==s||e[37]!==l?(b=(0,n.jsx)(Ge,{form:l,config:s,name:"ai.github.api_key",placeholder:"gho_...",testId:"ai-github-api-key-input",description:A}),P=(0,n.jsx)(Xe,{form:l,config:s,name:"ai.github.base_url",placeholder:"https://models.github.ai/inference",testId:"ai-github-base-url-input"}),e[36]=s,e[37]=l,e[38]=b,e[39]=P):(b=e[38],P=e[39]);let z;e[40]!==M||e[41]!==b||e[42]!==P?(z=(0,n.jsxs)(Fe,{title:"GitHub",provider:"github",isConfigured:M,children:[k,b,P]}),e[40]=M,e[41]=b,e[42]=P,e[43]=z):z=e[43];let F=o("ai.openrouter.api_key"),q;e[44]===Symbol.for("react.memo_cache_sentinel")?(q=(0,n.jsxs)(n.Fragment,{children:["Your OpenRouter API key from ","",(0,n.jsx)(de,{href:"https://openrouter.ai/keys",children:"openrouter.ai"}),"."]}),e[44]=q):q=e[44];let Q,S;e[45]!==s||e[46]!==l?(Q=(0,n.jsx)(Ge,{form:l,config:s,name:"ai.openrouter.api_key",placeholder:"or-...",testId:"ai-openrouter-api-key-input",description:q}),S=(0,n.jsx)(Xe,{form:l,config:s,name:"ai.openrouter.base_url",placeholder:"https://openrouter.ai/api/v1/",testId:"ai-openrouter-base-url-input"}),e[45]=s,e[46]=l,e[47]=Q,e[48]=S):(Q=e[47],S=e[48]);let W;e[49]!==F||e[50]!==Q||e[51]!==S?(W=(0,n.jsxs)(Fe,{title:"OpenRouter",provider:"openrouter",isConfigured:F,children:[Q,S]}),e[49]=F,e[50]=Q,e[51]=S,e[52]=W):W=e[52];let ee=o("ai.wandb.api_key"),oe;e[53]===Symbol.for("react.memo_cache_sentinel")?(oe=(0,n.jsxs)(n.Fragment,{children:["Your Weights & Biases API key from"," ",(0,n.jsx)(de,{href:"https://wandb.ai/authorize",children:"wandb.ai"}),"."]}),e[53]=oe):oe=e[53];let ce,ge;e[54]!==s||e[55]!==l?(ce=(0,n.jsx)(Ge,{form:l,config:s,name:"ai.wandb.api_key",placeholder:"your-wandb-api-key",testId:"ai-wandb-api-key-input",description:oe}),ge=(0,n.jsx)(Xe,{form:l,config:s,name:"ai.wandb.base_url",placeholder:"https://api.inference.wandb.ai/v1/",testId:"ai-wandb-base-url-input"}),e[54]=s,e[55]=l,e[56]=ce,e[57]=ge):(ce=e[56],ge=e[57]);let ue;e[58]!==ee||e[59]!==ce||e[60]!==ge?(ue=(0,n.jsxs)(Fe,{title:"Weights & Biases",provider:"wandb",isConfigured:ee,children:[ce,ge]}),e[58]=ee,e[59]=ce,e[60]=ge,e[61]=ue):ue=e[61];let fe=o("ai.azure.api_key")&&o("ai.azure.base_url"),E;e[62]===Symbol.for("react.memo_cache_sentinel")?(E=(0,n.jsxs)(n.Fragment,{children:["Your Azure API key from"," ",(0,n.jsx)(de,{href:"https://portal.azure.com/",children:"portal.azure.com"}),"."]}),e[62]=E):E=e[62];let J,Z;e[63]!==s||e[64]!==l?(J=(0,n.jsx)(Ge,{form:l,config:s,name:"ai.azure.api_key",placeholder:"sk-proj...",testId:"ai-azure-api-key-input",description:E}),Z=(0,n.jsx)(Xe,{form:l,config:s,name:"ai.azure.base_url",placeholder:"https://<your-resource-name>.openai.azure.com/openai/deployments/<deployment-name>?api-version=<api-version>",testId:"ai-azure-base-url-input"}),e[63]=s,e[64]=l,e[65]=J,e[66]=Z):(J=e[65],Z=e[66]);let Y;e[67]!==fe||e[68]!==J||e[69]!==Z?(Y=(0,n.jsxs)(Fe,{title:"Azure",provider:"azure",isConfigured:fe,children:[J,Z]}),e[67]=fe,e[68]=J,e[69]=Z,e[70]=Y):Y=e[70];let X=o("ai.bedrock.region_name"),te;e[71]===Symbol.for("react.memo_cache_sentinel")?(te=(0,n.jsxs)("p",{className:"text-sm text-muted-secondary mb-2",children:["To use AWS Bedrock, you need to configure AWS credentials and region. See the"," ",(0,n.jsx)(de,{href:"https://docs.marimo.io/guides/editor_features/ai_completion.html#aws-bedrock",children:"documentation"})," ","for more details."]}),e[71]=te):te=e[71];let ne;e[72]===s?ne=e[73]:(ne=Se=>{let{field:Ne}=Se;return(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"AWS Region"}),(0,n.jsx)(V,{children:(0,n.jsx)(De,{"data-testid":"bedrock-region-select",onChange:et=>Ne.onChange(et.target.value),value:typeof Ne.value=="string"?Ne.value:"us-east-1",disabled:Ne.disabled,className:"inline-flex mr-2",children:mu.map(Tu)})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:s,name:"ai.bedrock.region_name"})]}),(0,n.jsx)(U,{children:"The AWS region where Bedrock service is available."})]})},e[72]=s,e[73]=ne);let xe;e[74]!==l.control||e[75]!==ne?(xe=(0,n.jsx)(R,{control:l.control,disabled:a,name:"ai.bedrock.region_name",render:ne}),e[74]=l.control,e[75]=ne,e[76]=xe):xe=e[76];let me;e[77]===s?me=e[78]:(me=Se=>{let{field:Ne}=Se;return(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"AWS Profile Name (Optional)"}),(0,n.jsx)(V,{children:(0,n.jsx)(Oe,{"data-testid":"bedrock-profile-input",rootClassName:"flex-1",className:"m-0 inline-flex h-7",placeholder:"default",...Ne,value:Ne.value||""})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:s,name:"ai.bedrock.profile_name"})]}),(0,n.jsx)(U,{children:"The AWS profile name from your ~/.aws/credentials file. Leave blank to use your default AWS credentials."})]})},e[77]=s,e[78]=me);let se;e[79]!==l.control||e[80]!==me?(se=(0,n.jsx)(R,{control:l.control,disabled:a,name:"ai.bedrock.profile_name",render:me}),e[79]=l.control,e[80]=me,e[81]=se):se=e[81];let he;e[82]!==X||e[83]!==xe||e[84]!==se?(he=(0,n.jsxs)(Fe,{title:"AWS Bedrock",provider:"bedrock",isConfigured:X,children:[te,xe,se]}),e[82]=X,e[83]=xe,e[84]=se,e[85]=he):he=e[85];let ke=o("ai.open_ai_compatible.api_key")&&o("ai.open_ai_compatible.base_url"),Te;e[86]===Symbol.for("react.memo_cache_sentinel")?(Te=(0,n.jsx)("p",{className:"text-sm text-amber-600 dark:text-amber-400 mb-2",children:"Consider using Custom Providers instead, which allows you to add multiple providers with distinct names."}),e[86]=Te):Te=e[86];let be;e[87]===Symbol.for("react.memo_cache_sentinel")?(be=(0,n.jsx)(n.Fragment,{children:"API key for any OpenAI-compatible provider (e.g., Together, Groq, Mistral, Perplexity, etc)."}),e[87]=be):be=e[87];let ye;e[88]!==s||e[89]!==l?(ye=(0,n.jsx)(Ge,{form:l,config:s,name:"ai.open_ai_compatible.api_key",placeholder:"sk-...",testId:"ai-openai-compatible-api-key-input",description:be}),e[88]=s,e[89]=l,e[90]=ye):ye=e[90];let we;e[91]===Symbol.for("react.memo_cache_sentinel")?(we=(0,n.jsx)(n.Fragment,{children:"Base URL for your OpenAI-compatible provider."}),e[91]=we):we=e[91];let Ce;e[92]!==s||e[93]!==l?(Ce=(0,n.jsx)(Xe,{form:l,config:s,name:"ai.open_ai_compatible.base_url",placeholder:"https://api.together.xyz/v1",testId:"ai-openai-compatible-base-url-input",description:we}),e[92]=s,e[93]=l,e[94]=Ce):Ce=e[94];let le;e[95]!==ke||e[96]!==ye||e[97]!==Ce?(le=(0,n.jsxs)(Fe,{title:"OpenAI-Compatible (Legacy)",provider:"openai-compatible",isConfigured:ke,children:[Te,ye,Ce]}),e[95]=ke,e[96]=ye,e[97]=Ce,e[98]=le):le=e[98];let Re;e[99]!==w||e[100]!==D||e[101]!==_||e[102]!==z||e[103]!==W||e[104]!==ue||e[105]!==Y||e[106]!==he||e[107]!==le||e[108]!==j?(Re=(0,n.jsxs)(Zl,{type:"multiple",children:[j,w,D,_,z,W,ue,Y,he,le]}),e[99]=w,e[100]=D,e[101]=_,e[102]=z,e[103]=W,e[104]=ue,e[105]=Y,e[106]=he,e[107]=le,e[108]=j,e[109]=Re):Re=e[109];let Me;e[110]!==s||e[111]!==l||e[112]!==i?(Me=(0,n.jsx)(Du,{form:l,config:s,onSubmit:i}),e[110]=s,e[111]=l,e[112]=i,e[113]=Me):Me=e[113];let Ue;return e[114]!==Re||e[115]!==Me?(Ue=(0,n.jsxs)(St,{children:[u,Re,Me]}),e[114]=Re,e[115]=Me,e[116]=Ue):Ue=e[116],Ue},Pu=t=>{let e=(0,je.c)(24),{form:l,config:s,onSubmit:i}=t,r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=(0,n.jsx)(ut,{children:"AI Assistant"}),e[0]=r):r=e[0];let a;e[1]===l.control?a=e[2]:(a=(0,n.jsx)(R,{control:l.control,name:"ai.inline_tooltip",render:Ru}),e[1]=l.control,e[2]=a);let c;e[3]===Symbol.for("react.memo_cache_sentinel")?(c=(0,n.jsx)(co,{}),e[3]=c):c=e[3];let o;e[4]===Symbol.for("react.memo_cache_sentinel")?(o=(0,n.jsx)("span",{children:"Model to use for chat conversations in the Chat panel."}),e[4]=o):o=e[4];let d;e[5]!==s||e[6]!==l||e[7]!==i?(d=(0,n.jsx)(El,{label:"Chat Model",form:l,config:s,name:"ai.models.chat_model",placeholder:Wl,description:o,forRole:"chat",onSubmit:i}),e[5]=s,e[6]=l,e[7]=i,e[8]=d):d=e[8];let u;e[9]===Symbol.for("react.memo_cache_sentinel")?(u=(0,n.jsxs)("span",{children:["Model to use for code editing with the"," ",(0,n.jsx)(ae,{className:"inline",children:"Generate with AI"})," button."]}),e[9]=u):u=e[9];let m;e[10]!==s||e[11]!==l||e[12]!==i?(m=(0,n.jsx)(El,{label:"Edit Model",form:l,config:s,name:"ai.models.edit_model",placeholder:Wl,description:u,forRole:"edit",onSubmit:i}),e[10]=s,e[11]=l,e[12]=i,e[13]=m):m=e[13];let p;e[14]===s?p=e[15]:(p=j=>{let{field:v}=j;return(0,n.jsxs)("div",{className:"flex flex-col",children:[(0,n.jsxs)($,{children:[(0,n.jsx)(T,{children:"Custom Rules"}),(0,n.jsx)(V,{children:(0,n.jsx)(oo,{"data-testid":"ai-rules-input",className:"m-0 inline-flex w-full h-32 p-2 text-sm",placeholder:"e.g. Always use type hints; prefer polars over pandas",...v,value:v.value})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:s,name:"ai.rules"})]}),(0,n.jsx)(U,{children:"Custom rules to include in all AI completion prompts."})]})},e[14]=s,e[15]=p);let f;e[16]!==l.control||e[17]!==p?(f=(0,n.jsx)(R,{control:l.control,name:"ai.rules",render:p}),e[16]=l.control,e[17]=p,e[18]=f):f=e[18];let y;return e[19]!==a||e[20]!==d||e[21]!==m||e[22]!==f?(y=(0,n.jsxs)(St,{children:[r,a,c,d,m,f]}),e[19]=a,e[20]=d,e[21]=m,e[22]=f,e[23]=y):y=e[23],y};var Eu=t=>{let e=(0,je.c)(51),{providerId:l,models:s,enabledModels:i,onToggleModel:r,onToggleProvider:a,onDeleteModel:c}=t,o;if(e[0]!==i||e[1]!==s||e[2]!==l){let k;e[4]!==i||e[5]!==l?(k=A=>i.has(new Ae(l,A.model).id),e[4]=i,e[5]=l,e[6]=k):k=e[6],o=s.filter(k),e[0]=i,e[1]=s,e[2]=l,e[3]=o}else o=e[3];let d=o.length,u=s.length,m;e[7]===l?m=e[8]:(m=kt.getProviderInfo(l),e[7]=l,e[8]=m);let p=m,f;e[9]!==(p==null?void 0:p.name)||e[10]!==l?(f=(p==null?void 0:p.name)||nl.startCase(l),e[9]=p==null?void 0:p.name,e[10]=l,e[11]=f):f=e[11];let y=f,j=d===0?!1:d===u?!0:"indeterminate",v;e[12]!==d||e[13]!==a||e[14]!==l||e[15]!==u?(v=()=>{a(l,d<u/2)},e[12]=d,e[13]=a,e[14]=l,e[15]=u,e[16]=v):v=e[16];let N=It(v),C;e[17]===Symbol.for("react.memo_cache_sentinel")?(C=sn.stopPropagation(),e[17]=C):C=e[17];let w;e[18]!==j||e[19]!==N?(w=(0,n.jsx)(re,{checked:j,onCheckedChange:N,onClick:C}),e[18]=j,e[19]=N,e[20]=w):w=e[20];let h;e[21]===l?h=e[22]:(h=(0,n.jsx)(Ee,{provider:l,className:"h-5 w-5"}),e[21]=l,e[22]=h);let x;e[23]===y?x=e[24]:(x=(0,n.jsx)("h2",{className:"font-semibold",children:y}),e[23]=y,e[24]=x);let K;e[25]!==d||e[26]!==u?(K=(0,n.jsxs)("p",{className:"text-sm text-muted-secondary",children:[d,"/",u," models"]}),e[25]=d,e[26]=u,e[27]=K):K=e[27];let D;e[28]!==x||e[29]!==K?(D=(0,n.jsxs)("div",{className:"flex items-center justify-between w-full",children:[x,K]}),e[28]=x,e[29]=K,e[30]=D):D=e[30];let B;e[31]===Symbol.for("react.memo_cache_sentinel")?(B=(0,n.jsx)(Xa,{slot:"chevron",children:(0,n.jsx)(Ga,{className:"h-4 w-4 text-muted-foreground shrink-0 transition-transform duration-200 group-data-expanded:rotate-90"})}),e[31]=B):B=e[31];let I;e[32]!==D||e[33]!==w||e[34]!==h?(I=(0,n.jsx)(zi,{children:(0,n.jsxs)("div",{className:"flex items-center gap-3 px-2 py-3 hover:bg-muted/50 cursor-pointer outline-none focus-visible:outline-none border-b group-data-expanded:border-b-0 rounded-sm",children:[w,h,D,B]})}),e[32]=D,e[33]=w,e[34]=h,e[35]=I):I=e[35];let _;if(e[36]!==i||e[37]!==s||e[38]!==c||e[39]!==r||e[40]!==l){let k;e[42]!==i||e[43]!==c||e[44]!==r||e[45]!==l?(k=A=>{let b=new Ae(l,A.model).id;return(0,n.jsx)(Iu,{qualifiedId:b,model:A,isEnabled:i.has(b),onToggle:r,onDelete:c},b)},e[42]=i,e[43]=c,e[44]=r,e[45]=l,e[46]=k):k=e[46],_=s.map(k),e[36]=i,e[37]=s,e[38]=c,e[39]=r,e[40]=l,e[41]=_}else _=e[41];let M;return e[47]!==l||e[48]!==I||e[49]!==_?(M=(0,n.jsxs)(Ri,{id:l,hasChildItems:!0,textValue:l,className:"outline-none data-focused:bg-muted/50 group",children:[I,_]}),e[47]=l,e[48]=I,e[49]=_,e[50]=M):M=e[50],M};const _u=({form:t,onSubmit:e})=>{let l=ol({control:t.control,name:"ai.models.custom_models"}),s=ol({control:t.control,name:"ai.custom_providers"}),i=(0,g.useMemo)(()=>Object.keys(s||{}),[s]),r=(0,g.useMemo)(()=>kt.create({displayedModels:[],customModels:l}),[l]),a=ol({control:t.control,name:"ai.models.displayed_models",defaultValue:[]}),c=new Set(a),o=r.getGroupedModelsByProvider(),d=r.getListModelsByProvider(),u=It(f=>{let y=c.has(f)?a.filter(j=>j!==f):[...a,f];t.setValue("ai.models.displayed_models",y,{shouldDirty:!0,shouldTouch:!0}),e(t.getValues())}),m=It(async(f,y)=>{let j=o.get(f)||[],v=new Set(j.map(C=>new Ae(f,C.model).id)),N=y?[...new Set([...a,...v])]:a.filter(C=>!v.has(C));t.setValue("ai.models.displayed_models",N,{shouldDirty:!0,shouldTouch:!0}),e(t.getValues())}),p=It(f=>{let y=l.filter(v=>v!==f),j=a.filter(v=>v!==f);t.setValue("ai.models.displayed_models",j,{shouldDirty:!0,shouldTouch:!0}),t.setValue("ai.models.custom_models",y,{shouldDirty:!0,shouldTouch:!0}),e(t.getValues())});return(0,n.jsxs)(St,{className:"gap-2",children:[(0,n.jsx)("p",{className:"text-sm text-muted-secondary",children:"Control which AI models are displayed in model selection dropdowns. When no models are selected, all available models will be shown."}),(0,n.jsx)("div",{className:"bg-background",children:(0,n.jsx)(Jc,{"aria-label":"AI Models by Provider",className:"flex-1 overflow-auto outline-none focus-visible:outline-none",selectionMode:"none",children:d.map(([f,y])=>(0,n.jsx)(Eu,{providerId:f,models:y,enabledModels:c,onToggleModel:u,onToggleProvider:m,onDeleteModel:p},f))})}),(0,n.jsx)(Bu,{form:t,customModels:l,customProviderNames:i,onSubmit:e})]})},Bu=t=>{let e=(0,je.c)(77),{form:l,customModels:s,customProviderNames:i,onSubmit:r}=t,[a,c]=(0,g.useState)(!1),[o,d]=(0,g.useState)(!1),[u,m]=(0,g.useState)(null),[p,f]=(0,g.useState)(""),[y,j]=(0,g.useState)(""),v=(0,g.useId)(),N=(0,g.useId)(),C=(0,g.useId)(),w=u==="custom",h=w?p:u,x;e[0]!==y||e[1]!==h?(x=(h==null?void 0:h.trim())&&(y==null?void 0:y.trim()),e[0]=y,e[1]=h,e[2]=x):x=e[2];let K=x,D;e[3]===Symbol.for("react.memo_cache_sentinel")?(D=()=>{m(null),f(""),j(""),c(!1)},e[3]=D):D=e[3];let B=D,I;e[4]!==s||e[5]!==l||e[6]!==K||e[7]!==y||e[8]!==r||e[9]!==h?(I=()=>{if(!K)return;let le=new Ae(h,y);l.setValue("ai.models.custom_models",[le.id,...s],{shouldDirty:!0,shouldTouch:!0}),r(l.getValues()),B(),d(!0),setTimeout(()=>d(!1),2e3)},e[4]=s,e[5]=l,e[6]=K,e[7]=y,e[8]=r,e[9]=h,e[10]=I):I=e[10];let _=I,M;e[11]===v?M=e[12]:(M=(0,n.jsx)($e,{htmlFor:v,className:"text-sm font-medium text-muted-foreground min-w-12",children:"Provider"}),e[11]=v,e[12]=M);let k=u||"",A;e[13]===Symbol.for("react.memo_cache_sentinel")?(A=le=>m(le),e[13]=A):A=e[13];let b;e[14]===u?b=e[15]:(b=u?(0,n.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,n.jsx)(Ee,{provider:u,className:"h-3.5 w-3.5"}),(0,n.jsx)("span",{children:Yt(u)})]}):(0,n.jsx)("span",{className:"text-muted-foreground",children:"Select..."}),e[14]=u,e[15]=b);let P;e[16]!==v||e[17]!==b?(P=(0,n.jsx)(ba,{id:v,className:"w-40 truncate",children:b}),e[16]=v,e[17]=b,e[18]=P):P=e[18];let z;e[19]===i?z=e[20]:(z=i.length>0&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("p",{className:"px-2 py-1 text-xs text-muted-secondary font-medium",children:"Custom Providers"}),i.map($u),(0,n.jsx)("p",{className:"px-2 py-1 text-xs text-muted-secondary font-medium mt-1",children:"Built-in Providers"})]}),e[19]=i,e[20]=z);let F;e[21]===i?F=e[22]:(F=Ot.filter(le=>le!=="marimo"&&!i.includes(le)).map(Vu),e[21]=i,e[22]=F);let q;e[23]===Symbol.for("react.memo_cache_sentinel")?(q=(0,n.jsx)("p",{className:"px-2 py-1 text-xs text-muted-secondary font-medium mt-1",children:"Other"}),e[23]=q):q=e[23];let Q;e[24]===Symbol.for("react.memo_cache_sentinel")?(Q=(0,n.jsx)(ll,{value:"custom",children:(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(Ee,{provider:"openai-compatible",className:"h-4 w-4"}),(0,n.jsx)("span",{children:"Enter provider name"})]})}),e[24]=Q):Q=e[24];let S;e[25]!==F||e[26]!==z?(S=(0,n.jsx)(ya,{children:(0,n.jsxs)(va,{children:[z,F,q,Q]})}),e[25]=F,e[26]=z,e[27]=S):S=e[27];let W;e[28]!==S||e[29]!==k||e[30]!==P?(W=(0,n.jsxs)(ja,{value:k,onValueChange:A,children:[P,S]}),e[28]=S,e[29]=k,e[30]=P,e[31]=W):W=e[31];let ee;e[32]!==W||e[33]!==M?(ee=(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[M,W]}),e[32]=W,e[33]=M,e[34]=ee):ee=e[34];let oe;e[35]!==N||e[36]!==p||e[37]!==w?(oe=w&&(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)($e,{htmlFor:N,className:"text-sm font-medium text-muted-foreground min-w-12",children:"Name"}),(0,n.jsx)(Oe,{id:N,value:p,onChange:le=>f(le.target.value),placeholder:"openrouter",className:"w-40 truncate"})]}),e[35]=N,e[36]=p,e[37]=w,e[38]=oe):oe=e[38];let ce;e[39]!==ee||e[40]!==oe?(ce=(0,n.jsxs)("div",{className:"flex flex-col gap-2",children:[ee,oe]}),e[39]=ee,e[40]=oe,e[41]=ce):ce=e[41];let ge=ce,ue=w&&"self-start",fe;e[42]===ue?fe=e[43]:(fe=Pe("flex items-center gap-2",ue),e[42]=ue,e[43]=fe);let E;e[44]===C?E=e[45]:(E=(0,n.jsx)($e,{htmlFor:C,className:"text-sm font-medium text-muted-foreground",children:"Model"}),e[44]=C,e[45]=E);let J;e[46]===Symbol.for("react.memo_cache_sentinel")?(J=le=>j(le.target.value),e[46]=J):J=e[46];let Z;e[47]!==y||e[48]!==C?(Z=(0,n.jsx)(Oe,{id:C,value:y,onChange:J,placeholder:"gpt-4",className:"text-xs mb-0"}),e[47]=y,e[48]=C,e[49]=Z):Z=e[49];let Y;e[50]!==fe||e[51]!==E||e[52]!==Z?(Y=(0,n.jsxs)("div",{className:fe,children:[E,Z]}),e[50]=fe,e[51]=E,e[52]=Z,e[53]=Y):Y=e[53];let X=Y,te=w&&"self-end",ne;e[54]===te?ne=e[55]:(ne=Pe("flex gap-1.5 ml-auto",te),e[54]=te,e[55]=ne);let xe=!K,me;e[56]!==_||e[57]!==xe?(me=(0,n.jsx)(ie,{onClick:_,disabled:xe,size:"xs",children:"Add"}),e[56]=_,e[57]=xe,e[58]=me):me=e[58];let se;e[59]===Symbol.for("react.memo_cache_sentinel")?(se=(0,n.jsx)(ie,{variant:"outline",onClick:B,size:"xs",children:"Cancel"}),e[59]=se):se=e[59];let he;e[60]!==ne||e[61]!==me?(he=(0,n.jsxs)("div",{className:ne,children:[me,se]}),e[60]=ne,e[61]=me,e[62]=he):he=e[62];let ke;e[63]!==X||e[64]!==ge||e[65]!==he?(ke=(0,n.jsxs)("div",{className:"flex items-center gap-3 p-3 border border-border rounded-md",children:[ge,X,he]}),e[63]=X,e[64]=ge,e[65]=he,e[66]=ke):ke=e[66];let Te=a&&ke,be;e[67]===a?be=e[68]:(be=(0,n.jsx)(xr,{isFormOpen:a,setIsFormOpen:c,label:"Add Model",className:"pl-2"}),e[67]=a,e[68]=be);let ye;e[69]===o?ye=e[70]:(ye=o&&(0,n.jsx)("div",{className:"flex items-center gap-1 text-green-700 bg-green-500/10 px-2 py-1 rounded-md ml-auto",children:"\u2713 Model added"}),e[69]=o,e[70]=ye);let we;e[71]!==be||e[72]!==ye?(we=(0,n.jsxs)("div",{className:"flex flex-row text-sm",children:[be,ye]}),e[71]=be,e[72]=ye,e[73]=we):we=e[73];let Ce;return e[74]!==Te||e[75]!==we?(Ce=(0,n.jsxs)("div",{children:[Te,we]}),e[74]=Te,e[75]=we,e[76]=Ce):Ce=e[76],Ce};var xr=t=>{let e=(0,je.c)(10),{isFormOpen:l,setIsFormOpen:s,label:i,className:r}=t,a;e[0]===s?a=e[1]:(a=u=>{u.stopPropagation(),u.preventDefault(),s(!0)},e[0]=s,e[1]=a);let c;e[2]===r?c=e[3]:(c=Pe("px-0",r),e[2]=r,e[3]=c);let o;e[4]===Symbol.for("react.memo_cache_sentinel")?(o=(0,n.jsx)(Wa,{className:"h-4 w-4 mr-2 mb-0.5"}),e[4]=o):o=e[4];let d;return e[5]!==l||e[6]!==i||e[7]!==a||e[8]!==c?(d=(0,n.jsxs)(ie,{onClick:a,variant:"link",disabled:l,className:c,children:[o,i]}),e[5]=l,e[6]=i,e[7]=a,e[8]=c,e[9]=d):d=e[9],d};const zu=t=>{let e=(0,je.c)(26),{form:l,config:s,onSubmit:i}=t,r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=ot(),e[0]=r):r=e[0];let a=r,[c,o]=lt(kr),d;e[1]===o?d=e[2]:(d=v=>o(v),e[1]=o,e[2]=d);let u;e[3]===Symbol.for("react.memo_cache_sentinel")?(u=(0,n.jsxs)(en,{className:"mb-2",children:[(0,n.jsx)(ht,{value:"ai-features",children:"AI Features"}),(0,n.jsx)(ht,{value:"ai-providers",children:"AI Providers"}),(0,n.jsx)(ht,{value:"ai-models",children:"AI Models"}),!a&&(0,n.jsx)(ht,{value:"mcp",children:"MCP"})]}),e[3]=u):u=e[3];let m;e[4]!==s||e[5]!==l||e[6]!==i?(m=(0,n.jsxs)(Mt,{value:"ai-features",children:[(0,n.jsx)(Mu,{form:l,config:s,onSubmit:i}),(0,n.jsx)(Pu,{form:l,config:s,onSubmit:i})]}),e[4]=s,e[5]=l,e[6]=i,e[7]=m):m=e[7];let p;e[8]!==s||e[9]!==l||e[10]!==i?(p=(0,n.jsx)(Mt,{value:"ai-providers",children:(0,n.jsx)(Au,{form:l,config:s,onSubmit:i})}),e[8]=s,e[9]=l,e[10]=i,e[11]=p):p=e[11];let f;e[12]!==s||e[13]!==l||e[14]!==i?(f=(0,n.jsx)(Mt,{value:"ai-models",children:(0,n.jsx)(_u,{form:l,config:s,onSubmit:i})}),e[12]=s,e[13]=l,e[14]=i,e[15]=f):f=e[15];let y;e[16]!==l||e[17]!==i?(y=!a&&(0,n.jsx)(Mt,{value:"mcp",children:(0,n.jsx)(ku,{form:l,onSubmit:i})}),e[16]=l,e[17]=i,e[18]=y):y=e[18];let j;return e[19]!==c||e[20]!==d||e[21]!==m||e[22]!==p||e[23]!==f||e[24]!==y?(j=(0,n.jsxs)(Xl,{value:c,onValueChange:d,className:"flex-1",children:[u,m,p,f,y]}),e[19]=c,e[20]=d,e[21]=m,e[22]=p,e[23]=f,e[24]=y,e[25]=j):j=e[25],j};function Fu(t){return(0,n.jsx)("option",{value:t,children:t},t)}function Tu(t){return(0,n.jsx)("option",{value:t,children:t},t)}function Ru(t){let{field:e}=t;return(0,n.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"font-normal",children:"AI Edit Tooltip"}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"inline-ai-checkbox",checked:e.value===!0,onCheckedChange:e.onChange})})]}),(0,n.jsx)(U,{children:'Enable "Edit with AI" tooltip when selecting code.'})]})}function $u(t){return(0,n.jsx)(ll,{value:t,children:(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(Ee,{provider:t,className:"h-4 w-4"}),(0,n.jsx)("span",{children:nl.startCase(t)})]})},t)}function Vu(t){return(0,n.jsx)(ll,{value:t,children:(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)(Ee,{provider:t,className:"h-4 w-4"}),(0,n.jsx)("span",{children:Yt(t)})]})},t)}var Lu=Ie(),Ou=["auto","true","false"];const Hu=t=>{let e=(0,Lu.c)(47),{form:l,config:s,onSubmit:i}=t,r;e[0]!==s||e[1]!==l.control?(r=(B,I)=>(0,n.jsx)(R,{control:l.control,name:B,render:_=>{let{field:M}=_,k=A=>{let b=A.target.value;M.onChange(b==="true"?!0:b==="false"?!1:b)};return(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"text-sm font-normal w-16",children:I}),(0,n.jsx)(V,{children:(0,n.jsx)(De,{"data-testid":"auto-discover-schemas-select",onChange:k,value:M.value===void 0?"auto":M.value.toString(),disabled:M.disabled,className:"w-[100px]",children:Ou.map(Gu)})}),(0,n.jsx)(O,{userConfig:s,name:B})]})}}),e[0]=s,e[1]=l.control,e[2]=r):r=e[2];let a=r,c;e[3]===s?c=e[4]:(c=B=>{let{field:I}=B;return(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Dataframe viewer"}),(0,n.jsx)(V,{children:(0,n.jsx)(De,{"data-testid":"display-dataframes-select",onChange:_=>I.onChange(_.target.value),value:I.value,disabled:I.disabled,className:"inline-flex mr-2",children:["rich","plain"].map(Uu)})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:s,name:"display.dataframes"})]}),(0,n.jsx)(U,{children:"Whether to use marimo's rich dataframe viewer or a plain HTML table. This requires restarting your notebook to take effect."})]})},e[3]=s,e[4]=c);let o;e[5]!==l.control||e[6]!==c?(o=(0,n.jsx)(R,{control:l.control,name:"display.dataframes",render:c}),e[5]=l.control,e[6]=c,e[7]=o):o=e[7];let d;e[8]!==s||e[9]!==l||e[10]!==i?(d=B=>{let{field:I}=B;return(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Default table page size"}),(0,n.jsx)(V,{children:(0,n.jsx)(gt,{"aria-label":"Default table page size","data-testid":"default-table-page-size-input",className:"m-0 w-24",...I,value:I.value,minValue:1,step:1,onChange:_=>{I.onChange(_),Number.isNaN(_)||i(l.getValues())}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:s,name:"display.default_table_page_size"})]}),(0,n.jsx)(U,{children:"The default number of rows displayed in dataframes and SQL results."})]})},e[8]=s,e[9]=l,e[10]=i,e[11]=d):d=e[11];let u;e[12]!==l.control||e[13]!==d?(u=(0,n.jsx)(R,{control:l.control,name:"display.default_table_page_size",render:d}),e[12]=l.control,e[13]=d,e[14]=u):u=e[14];let m;e[15]!==s||e[16]!==l||e[17]!==i?(m=B=>{let{field:I}=B;return(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Default table max columns"}),(0,n.jsx)(V,{children:(0,n.jsx)(gt,{"aria-label":"Default table max columns","data-testid":"default-table-max-columns-input",className:"m-0 w-24",...I,value:I.value,minValue:1,step:1,onChange:_=>{I.onChange(_),Number.isNaN(_)||i(l.getValues())}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:s,name:"display.default_table_max_columns"})]}),(0,n.jsx)(U,{children:"The default maximum number of columns displayed in dataframes and SQL results."})]})},e[15]=s,e[16]=l,e[17]=i,e[18]=m):m=e[18];let p;e[19]!==l.control||e[20]!==m?(p=(0,n.jsx)(R,{control:l.control,name:"display.default_table_max_columns",render:m}),e[19]=l.control,e[20]=m,e[21]=p):p=e[21];let f;e[22]===Symbol.for("react.memo_cache_sentinel")?(f=(0,n.jsx)("div",{className:"text-sm text-foreground",children:"Database Schema Discovery"}),e[22]=f):f=e[22];let y,j;e[23]===Symbol.for("react.memo_cache_sentinel")?(j=(0,n.jsx)("br",{}),y=(0,n.jsx)("span",{className:"font-semibold",children:"Can be expensive for large databases."}),e[23]=y,e[24]=j):(y=e[23],j=e[24]);let v;e[25]===Symbol.for("react.memo_cache_sentinel")?(v=(0,n.jsxs)("div",{className:"text-sm text-muted-foreground mb-2",children:["Whether database schemas, tables, and columns are automatically discovered.",j,y," ","Use 'auto' to determine introspection based on the"," ",(0,n.jsx)("a",{className:"text-link hover:underline",rel:"noopener noreferrer",target:"_blank",href:"https://docs.marimo.io/guides/working_with_data/sql/?h=database#database-schema-and-table-auto-discovery",children:"database"}),"."]}),e[25]=v):v=e[25];let N;e[26]===a?N=e[27]:(N=(0,n.jsxs)("div",{className:"flex flex-col gap-1",children:[f,v,a("datasources.auto_discover_schemas","Schemas"),a("datasources.auto_discover_tables","Tables"),a("datasources.auto_discover_columns","Columns")]}),e[26]=a,e[27]=N);let C;e[28]===s?C=e[29]:(C=B=>{let{field:I}=B;return(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"SQL Linter"}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"sql-linter-checkbox",checked:I.value,onCheckedChange:I.onChange})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:s,name:"diagnostics.sql_linter"})]}),(0,n.jsx)(U,{children:"Better linting and autocompletions for SQL cells."})]})},e[28]=s,e[29]=C);let w;e[30]!==l.control||e[31]!==C?(w=(0,n.jsx)(R,{control:l.control,name:"diagnostics.sql_linter",render:C}),e[30]=l.control,e[31]=C,e[32]=w):w=e[32];let h;e[33]===s?h=e[34]:(h=B=>{let{field:I}=B;return(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Default SQL output"}),(0,n.jsx)(V,{children:(0,n.jsx)(De,{"data-testid":"user-config-sql-output-select",onChange:_=>I.onChange(_.target.value),value:I.value,disabled:I.disabled,className:"inline-flex mr-2",children:mr.map(qu)})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:s,name:"runtime.default_sql_output"})]}),(0,n.jsx)(U,{children:'The default SQL output type for new notebooks; overridden by "sql_output" in the application config.'})]})},e[33]=s,e[34]=h);let x;e[35]!==l.control||e[36]!==h?(x=(0,n.jsx)(R,{control:l.control,name:"runtime.default_sql_output",render:h}),e[35]=l.control,e[36]=h,e[37]=x):x=e[37];let K;e[38]!==N||e[39]!==w||e[40]!==x?(K=(0,n.jsxs)(_e,{title:"SQL",children:[N,w,x]}),e[38]=N,e[39]=w,e[40]=x,e[41]=K):K=e[41];let D;return e[42]!==K||e[43]!==o||e[44]!==u||e[45]!==p?(D=(0,n.jsxs)(n.Fragment,{children:[o,u,p,K]}),e[42]=K,e[43]=o,e[44]=u,e[45]=p,e[46]=D):D=e[46],D};function Gu(t){return(0,n.jsx)("option",{value:t,children:t},t)}function Uu(t){return(0,n.jsx)("option",{value:t,children:t},t)}function qu(t){return(0,n.jsx)("option",{value:t.value,children:t.label},t.value)}function _l(t,e){let l={};for(let s of Object.keys(e)){let i=e[s],r=t[s];if(r!==void 0){if(i===!0)l[s]=r;else if(typeof i=="object"&&i){let a=_l(r,i);Object.keys(a).length>0&&(l[s]=a)}}}return l}var yr=(t,e)=>{var l,s,i,r,a;e.ai={...e.ai,models:{...(l=e.ai)==null?void 0:l.models,displayed_models:((i=(s=t.ai)==null?void 0:s.models)==null?void 0:i.displayed_models)??[],custom_models:((a=(r=t.ai)==null?void 0:r.models)==null?void 0:a.custom_models)??[]}}},Wu=[["ai.models.displayed_models",yr],["ai.models.custom_models",yr]],Qu=new Map(Wu),Yu=(t,e)=>{if(!t)return!1;let l=t;for(let s of e.split(".")){if(typeof l!="object"||!l)return!1;l=l[s]}return l===!0};const Zu=t=>{let{values:e,dirtyValues:l,touchedFields:s}=t;for(let[i,r]of Qu)Yu(s,i)&&r(e,l)};var Ju=Ie(),vr=[{id:"sql",packagesRequired:[{name:"duckdb"},{name:"sqlglot"}],additionalPackageInstalls:[{name:"polars[pyarrow]"}],description:"SQL cells"},{id:"charts",packagesRequired:[{name:"altair"}],additionalPackageInstalls:[],description:"Charts in datasource viewer"},{id:"fast-charts",packagesRequired:[{name:"vegafusion"},{name:"vl-convert-python"}],additionalPackageInstalls:[],description:"Fast server-side charts"},{id:"formatting",packagesRequired:[ot()?{name:"black"}:{name:"ruff"}],additionalPackageInstalls:[],description:"Formatting"},{id:"ai",packagesRequired:[{name:"openai"}],additionalPackageInstalls:[],description:"AI features"},{id:"mcp",packagesRequired:[{name:"mcp",minVersion:"1"}],additionalPackageInstalls:[{name:"pydantic",minVersion:"2"}],description:"Connect to MCP servers"},{id:"ipy-export",packagesRequired:[{name:"nbformat"}],additionalPackageInstalls:[],description:"Export as IPYNB"},{id:"testing",packagesRequired:[{name:"pytest"}],additionalPackageInstalls:[],description:"Autorun unit tests"}];ot()||vr.push({id:"lsp",packagesRequired:[{name:"python-lsp-server"},{name:"websockets"}],additionalPackageInstalls:[{name:"python-lsp-ruff"}],description:"Language Server Protocol*"});const Xu=()=>{let t=(0,Ju.c)(21),[e]=Yl(),l=e.package_management.manager,{getPackageList:s}=pt(),i;t[0]===s?i=t[1]:(i=()=>s(),t[0]=s,t[1]=i);let r;t[2]===l?r=t[3]:(r=[l],t[2]=l,t[3]=r);let{data:a,error:c,refetch:o,isPending:d}=Kn(i,r);if(d){let w;return t[4]===Symbol.for("react.memo_cache_sentinel")?(w=(0,n.jsx)(un,{size:"medium",centered:!0}),t[4]=w):w=t[4],w}if(c){let w;return t[5]===c?w=t[6]:(w=(0,n.jsx)(zo,{error:c}),t[5]=c,t[6]=w),w}let u;if(t[7]!==(a==null?void 0:a.packages)){let w=(a==null?void 0:a.packages)||[];u=new Set(w.map(t0)),t[7]=a==null?void 0:a.packages,t[8]=u}else u=t[8];let m=u,p;t[9]===Symbol.for("react.memo_cache_sentinel")?(p=(0,n.jsx)(ut,{children:"Optional Features"}),t[9]=p):p=t[9];let f;t[10]===Symbol.for("react.memo_cache_sentinel")?(f=(0,n.jsxs)("p",{className:"text-sm text-muted-foreground",children:["marimo is lightweight, with few dependencies, to maximize compatibility with your own environments.",(0,n.jsx)("br",{}),"To unlock additional features in the marimo editor, you can install these optional dependencies:"]}),t[10]=f):f=t[10];let y;t[11]===Symbol.for("react.memo_cache_sentinel")?(y=(0,n.jsx)(Fo,{children:(0,n.jsxs)(Mn,{children:[(0,n.jsx)(Rt,{children:"Dependency"}),(0,n.jsx)(Rt,{children:"Feature"}),(0,n.jsx)(Rt,{children:"Status"}),(0,n.jsx)(Rt,{})]})}),t[11]=y):y=t[11];let j;t[12]!==m||t[13]!==l||t[14]!==o?(j=vr.map(w=>{let h=w.packagesRequired.every(K=>m.has(K.name.split("[")[0])),x=w.packagesRequired.map(l0).join(", ");return(0,n.jsxs)(Mn,{className:"text-sm",children:[(0,n.jsx)(hl,{children:w.description}),(0,n.jsx)(hl,{className:"font-mono text-xs",children:x}),(0,n.jsx)(hl,{children:h?(0,n.jsxs)("div",{className:"flex items-center",children:[(0,n.jsx)(Dn,{className:"h-4 w-4 text-(--grass-10) mr-2"}),(0,n.jsx)("span",{children:"Installed"})]}):(0,n.jsxs)("div",{className:"flex items-center",children:[(0,n.jsx)(Fr,{className:"h-4 w-4 text-(--red-10) mr-2"}),(0,n.jsx)(e0,{packageSpecs:[...w.packagesRequired,...w.additionalPackageInstalls],packageManager:l,onSuccess:o})]})})]},w.id)}),t[12]=m,t[13]=l,t[14]=o,t[15]=j):j=t[15];let v;t[16]===j?v=t[17]:(v=(0,n.jsxs)(Ro,{children:[y,(0,n.jsx)(To,{children:j})]}),t[16]=j,t[17]=v);let N;t[18]===Symbol.for("react.memo_cache_sentinel")?(N=(0,n.jsx)("p",{className:"text-muted-foreground mt-2",children:"*Requires server restart"}),t[18]=N):N=t[18];let C;return t[19]===v?C=t[20]:(C=(0,n.jsxs)("div",{className:"flex-1 flex flex-col overflow-hidden gap-2",children:[p,f,v,N]}),t[19]=v,t[20]=C),C};var e0=({packageSpecs:t,packageManager:e,onSuccess:l})=>{let[s,i]=g.useState(!1),{addPackage:r}=pt();return(0,n.jsxs)(ie,{size:"xs",variant:"outline",className:Pe("text-xs",s&&"opacity-50 cursor-not-allowed"),onClick:async()=>{try{i(!0);let a=await r({package:t.map(c=>c.minVersion?`${c.name}>=${c.minVersion}`:c.name).join(" "),group:"dev"});a.success?(l(),Be({title:"Package installed",description:(0,n.jsxs)("span",{children:["The packages"," ",(0,n.jsx)(ae,{className:"inline",children:t.map(c=>c.name).join(", ")})," ","have been added to your environment."]})})):Be({title:"Failed to install package",description:a.error,variant:"danger"})}finally{i(!1)}},disabled:s,children:[s?(0,n.jsx)(un,{size:"small",className:"mr-2 h-3 w-3"}):(0,n.jsx)(qr,{className:"mr-2 h-3 w-3"}),"Install with ",e]})};function t0(t){return t.name}function l0(t){return t.name}var br=[{id:"editor",label:"Editor",Icon:fn,className:"bg-(--blue-4)"},{id:"display",label:"Display",Icon:Zo,className:"bg-(--grass-4)"},{id:"packageManagementAndData",label:"Packages & Data",Icon:Lr,className:"bg-(--red-4)"},{id:"runtime",label:"Runtime",Icon:An,className:"bg-(--amber-4)"},{id:"ai",label:"AI",Icon:gl,className:"bg-[linear-gradient(45deg,var(--purple-5),var(--cyan-5))]"},{id:"optionalDeps",label:"Optional Dependencies",Icon:Pn,className:"bg-(--orange-4)"},{id:"labs",label:"Labs",Icon:Yo,className:"bg-(--slate-4)"}];const jr=nt(br[0].id);var n0=100,Bl="__system__";const s0=()=>{let[t,e]=Ql(),[l,s]=lt(Oi),i=(0,g.useRef)(null),r=Nt(Dl),[a,c]=lt(jr),o=st(Pr);st(Or).mode==="home"&&(o={terminal:!0,pylsp:!0,ty:!0,basedpyright:!0,pyrefly:!0});let d=st(oa),{locale:u}=Tt(),{saveUserConfig:m}=pt(),p=io({resolver:ao(Jr),defaultValues:t}),f=(h,x)=>{let{chatModel:K,editModel:D}=Dd(h);return(K||D)&&(x={...x,models:{...x==null?void 0:x.models,...K&&{chat_model:K},...D&&{edit_model:D}}},K&&p.setValue("ai.models.chat_model",K),D&&p.setValue("ai.models.edit_model",D)),x},y=Co(async h=>{let x=_l(h,p.formState.dirtyFields);Zu({values:h,dirtyValues:x,touchedFields:p.formState.touchedFields}),Object.keys(x).length!==0&&(x.ai&&(x.ai=f(h.ai,x.ai)),await m({config:x}),e(K=>Qr({},K,x)))},n0),j=ot(),v=(0,g.useId)(),N=(0,g.useId)(),C=()=>{switch(a){case"editor":return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(_e,{title:"Autosave",children:[(0,n.jsx)(R,{control:p.control,name:"save.autosave",render:({field:h})=>(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"font-normal",children:"Autosave enabled"}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"autosave-checkbox",checked:h.value==="after_delay",disabled:h.disabled,onCheckedChange:x=>{h.onChange(x?"after_delay":"off")}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"save.autosave"})]})}),(0,n.jsx)(R,{control:p.control,name:"save.autosave_delay",render:({field:h})=>(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Autosave delay (seconds)"}),(0,n.jsx)(V,{children:(0,n.jsx)(gt,{"aria-label":"Autosave delay","data-testid":"autosave-delay-input",className:"m-0 w-24",isDisabled:p.getValues("save.autosave")!=="after_delay",...h,value:h.value/1e3,minValue:1,onChange:x=>{h.onChange(x*1e3),Number.isNaN(x)||y(p.getValues())}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"save.autosave_delay"})]})}),(0,n.jsx)(R,{control:p.control,name:"runtime.default_auto_download",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Save cell outputs as"}),(0,n.jsx)(V,{children:(0,n.jsxs)("div",{className:"flex gap-4",children:[(0,n.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,n.jsx)(re,{id:v,checked:Array.isArray(h.value)&&h.value.includes("html"),onCheckedChange:()=>{let x=Array.isArray(h.value)?h.value:[];h.onChange(dn(x,"html"))}}),(0,n.jsx)(T,{htmlFor:v,children:"HTML"})]}),(0,n.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,n.jsx)(re,{id:N,checked:Array.isArray(h.value)&&h.value.includes("ipynb"),onCheckedChange:()=>{let x=Array.isArray(h.value)?h.value:[];h.onChange(dn(x,"ipynb"))}}),(0,n.jsx)(T,{htmlFor:N,children:"IPYNB"})]})]})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"runtime.default_auto_download"})]}),(0,n.jsxs)(U,{children:["When enabled, marimo will periodically save notebooks in your selected formats (HTML, IPYNB) to a folder named"," ",(0,n.jsx)(ae,{className:"inline",children:"__marimo__"})," next to your notebook file."]})]})})]}),(0,n.jsxs)(_e,{title:"Formatting",children:[(0,n.jsx)(R,{control:p.control,name:"save.format_on_save",render:({field:h})=>(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"font-normal",children:"Format on save"}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"format-on-save-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(x)}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"save.format_on_save"})]})}),(0,n.jsx)(R,{control:p.control,name:"formatting.line_length",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Line length"}),(0,n.jsx)(V,{children:(0,n.jsx)(gt,{"aria-label":"Line length","data-testid":"line-length-input",className:"m-0 w-24",...h,value:h.value,minValue:1,maxValue:1e3,onChange:x=>{h.onChange(x),Number.isNaN(x)||y(p.getValues())}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"formatting.line_length"})]}),(0,n.jsx)(U,{children:"Maximum line length when formatting code."})]})})]}),(0,n.jsxs)(_e,{title:"Autocomplete",children:[(0,n.jsx)(R,{control:p.control,name:"completion.activate_on_typing",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"font-normal",children:"Autocomplete"}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"autocomplete-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"completion.activate_on_typing"})]}),(0,n.jsx)(U,{children:"When unchecked, code completion is still available through a hotkey."}),(0,n.jsx)("div",{children:(0,n.jsx)(ie,{variant:"link",className:"mb-0 px-0",type:"button",onClick:x=>{x.preventDefault(),x.stopPropagation(),c("ai")},children:"Edit AI autocomplete"})})]})}),(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"font-normal",children:"Accept suggestion on Enter"}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"accept-completion-on-enter-checkbox",checked:l,onCheckedChange:h=>s(!!h)})})]}),(0,n.jsx)(U,{children:"When unchecked, pressing Enter inserts a new line instead of accepting an autocomplete suggestion. Use Tab to accept suggestions."})]}),(0,n.jsx)(R,{control:p.control,name:"completion.signature_hint_on_typing",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"font-normal",children:"Signature hints"}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"signature-hint-on-type-checkbox",checked:h.value??!1,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"completion.signature_hint_on_typing"})]}),(0,n.jsx)(U,{children:"Display signature hints while typing within function calls."})]})})]}),(0,n.jsxs)(_e,{title:"Language Servers",children:[(0,n.jsxs)(U,{children:["See the"," ",(0,n.jsx)(de,{href:"https://docs.marimo.io/guides/editor_features/language_server/",children:"docs"})," ","for more information about language server support."]}),(0,n.jsxs)(U,{children:[(0,n.jsx)("strong",{children:"Note:"})," When using multiple language servers, different features may conflict."]}),(0,n.jsx)(R,{control:p.control,name:"language_servers.pylsp.enabled",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsxs)(T,{children:[(0,n.jsx)(xt,{variant:"defaultOutline",className:"mr-2",children:"Beta"}),"Python Language Server (",(0,n.jsx)(de,{href:"https://github.com/python-lsp/python-lsp-server",children:"docs"}),")"]}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"pylsp-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"language_servers.pylsp.enabled"})]}),h.value&&!o.pylsp&&(0,n.jsxs)(vt,{kind:"danger",children:["The Python Language Server is not available in your current environment. Please install"," ",(0,n.jsx)(ae,{className:"inline",children:"python-lsp-server"})," in your environment."]})]})}),(0,n.jsx)(R,{control:p.control,name:"language_servers.basedpyright.enabled",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsxs)(T,{children:[(0,n.jsx)(xt,{variant:"defaultOutline",className:"mr-2",children:"Beta"}),"basedpyright (",(0,n.jsx)(de,{href:"https://github.com/DetachHead/basedpyright",children:"docs"}),")"]}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"basedpyright-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"language_servers.basedpyright.enabled"})]}),h.value&&!o.basedpyright&&(0,n.jsxs)(vt,{kind:"danger",children:["basedpyright is not available in your current environment. Please install"," ",(0,n.jsx)(ae,{className:"inline",children:"basedpyright"})," in your environment."]})]})}),(0,n.jsx)(R,{control:p.control,name:"language_servers.pyrefly.enabled",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsxs)(T,{children:[(0,n.jsx)(xt,{variant:"defaultOutline",className:"mr-2",children:"Beta"}),"Pyrefly (",(0,n.jsx)(de,{href:"https://github.com/facebook/pyrefly",children:"docs"}),")"]}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"pyrefly-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"language_servers.pyrefly.enabled"})]}),h.value&&!o.pyrefly&&(0,n.jsxs)(vt,{kind:"danger",children:["Pyrefly is not available in your current environment. Please install ",(0,n.jsx)(ae,{className:"inline",children:"pyrefly"})," in your environment."]})]})}),(0,n.jsx)(R,{control:p.control,name:"language_servers.ty.enabled",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsxs)(T,{children:[(0,n.jsx)(xt,{variant:"defaultOutline",className:"mr-2",children:"Beta"}),"ty (",(0,n.jsx)(de,{href:"https://github.com/astral-sh/ty",children:"docs"}),")"]}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"ty-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"language_servers.ty.enabled"})]}),h.value&&!o.ty&&(0,n.jsxs)(vt,{kind:"danger",children:["ty is not available in your current environment. Please install ",(0,n.jsx)(ae,{className:"inline",children:"ty"})," in your environment."]})]})}),(0,n.jsx)(R,{control:p.control,name:"diagnostics.enabled",render:({field:h})=>(0,n.jsxs)($,{className:L,children:[(0,n.jsxs)(T,{children:[(0,n.jsx)(xt,{variant:"defaultOutline",className:"mr-2",children:"Beta"}),"Diagnostics"]}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"diagnostics-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"diagnostics.enabled"})]})})]}),(0,n.jsxs)(_e,{title:"Keymap",children:[(0,n.jsx)(R,{control:p.control,name:"keymap.preset",render:({field:h})=>(0,n.jsx)("div",{className:"flex flex-col space-y-1",children:(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Keymap"}),(0,n.jsx)(V,{children:(0,n.jsx)(De,{"data-testid":"keymap-select",onChange:x=>h.onChange(x.target.value),value:h.value,disabled:h.disabled,className:"inline-flex mr-2",children:bd.map(x=>(0,n.jsx)("option",{value:x,children:x},x))})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"keymap.preset"})]})})}),(0,n.jsx)(R,{control:p.control,name:"keymap.destructive_delete",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"font-normal",children:"Destructive delete"}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"destructive-delete-checkbox",checked:h.value,disabled:h.disabled,onCheckedChange:x=>{h.onChange(!!x)}})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"keymap.destructive_delete"})]}),(0,n.jsxs)(U,{className:"flex items-center gap-1",children:["Allow deleting non-empty cells",(0,n.jsx)(qe,{content:(0,n.jsxs)("div",{className:"max-w-xs",children:[(0,n.jsx)("strong",{children:"Use with caution:"})," Deleting cells with code can lose work and computed results since variables are removed from memory."]}),children:(0,n.jsx)(cl,{className:"w-3 h-3 text-(--amber-11)"})})]}),(0,n.jsx)("div",{children:(0,n.jsx)(ie,{variant:"link",className:"mb-0 px-0",type:"button",onClick:x=>{x.preventDefault(),x.stopPropagation(),r(!0)},children:"Edit Keyboard Shortcuts"})})]})})]})]});case"display":return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(_e,{title:"Display",children:[(0,n.jsx)(R,{control:p.control,name:"display.default_width",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Default width"}),(0,n.jsx)(V,{children:(0,n.jsx)(De,{"data-testid":"user-config-width-select",onChange:x=>h.onChange(x.target.value),value:h.value,disabled:h.disabled,className:"inline-flex mr-2",children:Qi().map(x=>(0,n.jsx)("option",{value:x,children:x},x))})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"display.default_width"})]}),(0,n.jsx)(U,{children:'The default app width for new notebooks; overridden by "width" in the application config.'})]})}),(0,n.jsx)(R,{control:p.control,name:"display.theme",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Theme"}),(0,n.jsx)(V,{children:(0,n.jsx)(De,{"data-testid":"theme-select",onChange:x=>h.onChange(x.target.value),value:h.value,disabled:h.disabled,className:"inline-flex mr-2",children:uo.map(x=>(0,n.jsx)("option",{value:x,children:x},x))})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"display.theme"})]}),(0,n.jsx)(U,{children:"This theme will be applied to the user's configuration; it does not affect theme when sharing the notebook."})]})}),(0,n.jsx)(R,{control:p.control,name:"display.code_editor_font_size",render:({field:h})=>(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Code editor font size (px)"}),(0,n.jsx)(V,{children:(0,n.jsx)("span",{className:"inline-flex mr-2",children:(0,n.jsx)(gt,{"aria-label":"Code editor font size","data-testid":"code-editor-font-size-input",className:"m-0 w-24",...h,value:h.value,minValue:8,maxValue:32,onChange:x=>{h.onChange(x),y(p.getValues())}})})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"display.code_editor_font_size"})]})}),(0,n.jsx)(R,{control:p.control,name:"display.locale",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Locale"}),(0,n.jsx)(V,{children:(0,n.jsxs)(De,{"data-testid":"locale-select",onChange:x=>{x.target.value===Bl?h.onChange(void 0):h.onChange(x.target.value)},value:h.value||Bl,disabled:h.disabled,className:"inline-flex mr-2",children:[(0,n.jsx)("option",{value:Bl,children:"System"}),navigator.languages.map(x=>(0,n.jsx)("option",{value:x,children:x},x))]})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"display.locale"})]}),(0,n.jsxs)(U,{children:["The locale to use for the notebook. If your desired locale is not listed, you can change it manually via"," ",(0,n.jsx)(ae,{className:"inline",children:"marimo config show"}),"."]})]})}),(0,n.jsx)(R,{control:p.control,name:"display.reference_highlighting",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Reference highlighting"}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"reference-highlighting-checkbox",checked:h.value,onCheckedChange:h.onChange})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"display.reference_highlighting"})]}),(0,n.jsx)(U,{children:"Visually emphasizes variables in a cell that are defined elsewhere in the notebook."})]})})]}),(0,n.jsx)(_e,{title:"Outputs",children:(0,n.jsx)(R,{control:p.control,name:"display.cell_output",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Cell output area"}),(0,n.jsx)(V,{children:(0,n.jsx)(De,{"data-testid":"cell-output-select",onChange:x=>h.onChange(x.target.value),value:h.value,disabled:h.disabled,className:"inline-flex mr-2",children:["above","below"].map(x=>(0,n.jsx)("option",{value:x,children:x},x))})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"display.cell_output"})]}),(0,n.jsx)(U,{children:"Where to display cell's output."})]})})})]});case"packageManagementAndData":return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(_e,{title:"Package Management",children:(0,n.jsx)(R,{control:p.control,disabled:j,name:"package_management.manager",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col space-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{children:"Manager"}),(0,n.jsx)(V,{children:(0,n.jsx)(De,{"data-testid":"package-manager-select",onChange:x=>h.onChange(x.target.value),value:h.value,disabled:h.disabled,className:"inline-flex mr-2",children:Xr.map(x=>(0,n.jsx)("option",{value:x,children:x},x))})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"package_management.manager"})]}),(0,n.jsxs)(U,{children:["When marimo comes across a module that is not installed, you will be prompted to install it using your preferred package manager. Learn more in the"," ",(0,n.jsx)(de,{href:"https://docs.marimo.io/guides/editor_features/package_management.html",children:"docs"}),".",(0,n.jsx)("br",{}),(0,n.jsx)("br",{}),"Running marimo in a"," ",(0,n.jsx)(de,{href:"https://docs.marimo.io/guides/package_management/inlining_dependencies.html",children:"sandboxed environment"})," ","is only supported by ",(0,n.jsx)(ae,{className:"inline",children:"uv"})]})]})})}),(0,n.jsx)(_e,{title:"Data",children:(0,n.jsx)(Hu,{form:p,config:t,onSubmit:y})})]});case"runtime":return(0,n.jsxs)(_e,{title:"Runtime configuration",children:[(0,n.jsx)(R,{control:p.control,name:"runtime.auto_instantiate",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"font-normal",children:"Autorun on startup"}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"auto-instantiate-checkbox",disabled:h.disabled,checked:h.value,onCheckedChange:h.onChange})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"runtime.auto_instantiate"})]}),(0,n.jsx)(U,{children:"Whether to automatically run all cells on startup."})]})}),(0,n.jsx)(R,{control:p.control,name:"runtime.on_cell_change",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"font-normal",children:"On cell change"}),(0,n.jsx)(V,{children:(0,n.jsx)(De,{"data-testid":"on-cell-change-select",onChange:x=>h.onChange(x.target.value),value:h.value,className:"inline-flex mr-2",children:["lazy","autorun"].map(x=>(0,n.jsx)("option",{value:x,children:x},x))})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"runtime.on_cell_change"})]}),(0,n.jsx)(U,{children:`Whether marimo should automatically run cells or just mark them as stale. If "autorun", marimo will automatically run affected cells when a cell is run or a UI element is interacted with; if "lazy", marimo will mark affected cells as stale but won't re-run them.`})]})}),(0,n.jsx)(R,{control:p.control,name:"runtime.auto_reload",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"font-normal",children:"On module change"}),(0,n.jsx)(V,{children:(0,n.jsx)(De,{"data-testid":"auto-reload-select",onChange:x=>h.onChange(x.target.value),value:h.value,disabled:j,className:"inline-flex mr-2",children:["off","lazy","autorun"].map(x=>(0,n.jsx)("option",{value:x,children:x},x))})}),(0,n.jsx)(H,{}),(0,n.jsx)(O,{userConfig:t,name:"runtime.auto_reload"})]}),(0,n.jsx)(U,{children:'Whether marimo should automatically reload modules before executing cells. If "lazy", marimo will mark cells affected by module modifications as stale; if "autorun", affected cells will be automatically re-run.'})]})}),(0,n.jsx)(R,{control:p.control,name:"runtime.reactive_tests",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"font-normal",children:"Autorun Unit Tests"}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"reactive-test-checkbox",checked:h.value,onCheckedChange:h.onChange})})]}),(0,n.jsx)(O,{userConfig:t,name:"runtime.reactive_tests"}),(0,n.jsx)(H,{}),(0,n.jsx)(U,{children:"Enable reactive pytest tests in notebook. When a cell contains only test functions (test_*) and classes (Test_*), marimo will automatically run them with pytest (requires notebook restart)."})," "]})}),(0,n.jsxs)(U,{children:["Learn more in the"," ",(0,n.jsx)(de,{href:"https://docs.marimo.io/guides/reactivity/#configuring-how-marimo-runs-cells",children:"docs"}),"."]})]});case"ai":return(0,n.jsx)(zu,{form:p,config:t,onSubmit:y});case"optionalDeps":return(0,n.jsx)(Xu,{});case"labs":return(0,n.jsxs)(_e,{title:"Experimental Features",children:[(0,n.jsx)("p",{className:"text-sm text-muted-secondary mb-4",children:"\u26A0\uFE0F These features are experimental and may require restarting your notebook to take effect."}),(0,n.jsx)(R,{control:p.control,name:"experimental.rtc_v2",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"font-normal",children:"Real-Time Collaboration"}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"rtc-checkbox",checked:h.value===!0,onCheckedChange:h.onChange})})]}),(0,n.jsx)(U,{children:"Enable experimental real-time collaboration. This change requires a page refresh to take effect."})]})}),(0,n.jsx)(R,{control:p.control,name:"experimental.external_agents",render:({field:h})=>(0,n.jsxs)("div",{className:"flex flex-col gap-y-1",children:[(0,n.jsxs)($,{className:L,children:[(0,n.jsx)(T,{className:"font-normal",children:"External Agents"}),(0,n.jsx)(V,{children:(0,n.jsx)(re,{"data-testid":"external-agents-checkbox",checked:h.value===!0,onCheckedChange:h.onChange})})]}),(0,n.jsx)(O,{userConfig:t,name:"experimental.external_agents"}),(0,n.jsxs)(U,{children:["Enable experimental external agents such as Claude Code and Gemini CLI. Learn more in the"," ",(0,n.jsx)(de,{href:"https://docs.marimo.io/guides/editor_features/agents/",children:"docs"}),"."]})]})})]})}},w=(0,n.jsxs)("p",{className:"text-muted-secondary",children:["User configuration is stored in ",(0,n.jsx)(ae,{className:"inline",children:"marimo.toml"}),(0,n.jsx)("br",{}),"Run ",(0,n.jsx)(ae,{className:"inline",children:"marimo config show"})," in your terminal to show your current configuration and file location."]});return(0,n.jsx)(ro,{...p,children:(0,n.jsxs)("form",{ref:i,onChange:p.handleSubmit(y),className:"flex text-pretty overflow-hidden",children:[(0,n.jsx)(Xl,{value:a,onValueChange:h=>c(h),orientation:"vertical",className:"w-1/3 border-r h-full overflow-auto p-3",children:(0,n.jsxs)(en,{className:"self-start max-h-none flex flex-col gap-2 shrink-0 bg-background flex-1 min-h-full",children:[br.map(h=>(0,n.jsx)(ht,{value:h.id,className:"w-full text-left p-2 data-[state=active]:bg-primary data-[state=active]:text-primary-foreground justify-start",children:(0,n.jsxs)("div",{className:"flex gap-4 items-center text-lg overflow-hidden",children:[(0,n.jsx)("span",{className:Pe(h.className,"w-8 h-8 rounded flex items-center justify-center text-muted-foreground shrink-0"),children:(0,n.jsx)(h.Icon,{className:"w-4 h-4"})}),(0,n.jsx)("span",{className:"truncate",children:h.label})]})},h.id)),(0,n.jsxs)("div",{className:"p-2 text-xs text-muted-foreground self-start flex flex-col gap-1",children:[(0,n.jsxs)("span",{children:["Version: ",d]}),(0,n.jsxs)("span",{children:["Locale: ",u]})]}),(0,n.jsx)("div",{className:"flex-1"}),!ot()&&w]})}),(0,n.jsx)("div",{className:"w-2/3 pl-6 gap-2 flex flex-col overflow-auto p-6",children:C()})]})})};var i0=Ie();const kr=nt("ai-features"),wr=nt(!1);function zl(){let t=(0,i0.c)(4),e=Nt(jr),l=Nt(wr),s=Nt(kr),i;return t[0]!==e||t[1]!==s||t[2]!==l?(i={handleClick:(r,a)=>{e(r),r==="ai"&&s(a??"ai-features"),l(!0)}},t[0]=e,t[1]=s,t[2]=l,t[3]=i):i=t[3],i}var Qt=Ie();const Cr=t=>{var F,q,Q,S,W,ee,oe,ce,ge,ue,fe,E,J,Z,Y,X,te,ne;let e=(0,Qt.c)(59),{value:l,placeholder:s,onSelect:i,triggerClassName:r,customDropdownContent:a,iconSize:c,showAddCustomModelDocs:o,forRole:d,displayIconOnly:u}=t,m=c===void 0?"medium":c,p=o===void 0?!1:o,f=u===void 0?!1:u,[y,j]=g.useState(!1),v=st(sa),N=st(ta),{saveModelChange:C}=$i(),{handleClick:w}=zl(),h=N.copilot==="custom"?(F=v==null?void 0:v.models)==null?void 0:F.autocomplete_model:void 0,x,K,D,B,I,_,M,k,A;if(e[0]!==((q=v==null?void 0:v.models)==null?void 0:q.autocomplete_model)||e[1]!==((Q=v==null?void 0:v.models)==null?void 0:Q.chat_model)||e[2]!==((S=v==null?void 0:v.models)==null?void 0:S.custom_models)||e[3]!==((W=v==null?void 0:v.models)==null?void 0:W.displayed_models)||e[4]!==((ee=v==null?void 0:v.models)==null?void 0:ee.edit_model)||e[5]!==h||e[6]!==f||e[7]!==d||e[8]!==m||e[9]!==y||e[10]!==i||e[11]!==s||e[12]!==C||e[13]!==r||e[14]!==l){let xe=kt.create({customModels:[...((oe=v==null?void 0:v.models)==null?void 0:oe.custom_models)??[],(ce=v==null?void 0:v.models)==null?void 0:ce.chat_model,h,(ge=v==null?void 0:v.models)==null?void 0:ge.edit_model].filter(Boolean),displayedModels:(ue=v==null?void 0:v.models)==null?void 0:ue.displayed_models}),me=xe.getListModelsByProvider(),se=d==="autocomplete"?(fe=v==null?void 0:v.models)==null?void 0:fe.autocomplete_model:d==="chat"?(E=v==null?void 0:v.models)==null?void 0:E.chat_model:d==="edit"?(J=v==null?void 0:v.models)==null?void 0:J.edit_model:void 0,he=l?Ae.parse(l):se?Ae.parse(se):void 0,ke=m==="medium"?"h-4 w-4":"h-3 w-3",Te=(Se,Ne)=>{let et=xe.getModel(Se.id);return(0,n.jsxs)("div",{className:"flex items-center gap-2 w-full px-2 py-1",children:[(0,n.jsx)(Ee,{provider:Se.providerId,className:ke}),(0,n.jsxs)("div",{className:"flex flex-col",children:[(0,n.jsx)("span",{children:(et==null?void 0:et.name)||Se.shortModelId}),(0,n.jsx)("span",{className:"text-xs text-muted-foreground",children:Se.id})]}),(0,n.jsx)("div",{className:"ml-auto flex gap-1",children:(0,n.jsx)(qe,{content:ur(Ne),children:(0,n.jsx)("span",{className:`text-xs px-1.5 py-0.5 rounded font-medium ${Ut(Ne)}`,children:Ne},Ne)})})]})},be;e[24]!==d||e[25]!==i||e[26]!==C?(be=Se=>{i?i(Se):C(Se,d),j(!1)},e[24]=d,e[25]=i,e[26]=C,e[27]=be):be=e[27];let ye=be;K=Na,k=y,A=j;let we=`flex items-center justify-between px-2 py-0.5 border rounded-md
5
+ hover:bg-accent hover:text-accent-foreground ${r}`,Ce=he?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(Ee,{provider:he.providerId,className:ke}),f?null:(0,n.jsx)("span",{className:"truncate",children:Ml(he.providerId)?he.shortModelId:he.id})]}):(0,n.jsx)("span",{className:"text-muted-foreground truncate",children:s}),le;e[28]===Ce?le=e[29]:(le=(0,n.jsx)("div",{className:"flex items-center gap-2 truncate",children:Ce}),e[28]=Ce,e[29]=le);let Re=`${ke} ml-1`,Me;e[30]===Re?Me=e[31]:(Me=(0,n.jsx)(Ha,{className:Re}),e[30]=Re,e[31]=Me),e[32]!==we||e[33]!==le||e[34]!==Me?(D=(0,n.jsxs)(wa,{className:we,children:[le,Me]}),e[32]=we,e[33]=le,e[34]=Me,e[35]=D):D=e[35],x=Ca,B="w-[300px]",I=se&&d&&Te(Ae.parse(se),d),e[36]!==se||e[37]!==d?(_=se&&d&&(0,n.jsx)(Dt,{}),e[36]=se,e[37]=d,e[38]=_):_=e[38];let Ue;e[39]!==ye||e[40]!==ke?(Ue=Se=>{let[Ne,et]=Se;return(0,n.jsx)(r0,{provider:Ne,onSelect:ye,models:et,iconSizeClass:ke},Ne)},e[39]=ye,e[40]=ke,e[41]=Ue):Ue=e[41],M=me.map(Ue),e[0]=(Z=v==null?void 0:v.models)==null?void 0:Z.autocomplete_model,e[1]=(Y=v==null?void 0:v.models)==null?void 0:Y.chat_model,e[2]=(X=v==null?void 0:v.models)==null?void 0:X.custom_models,e[3]=(te=v==null?void 0:v.models)==null?void 0:te.displayed_models,e[4]=(ne=v==null?void 0:v.models)==null?void 0:ne.edit_model,e[5]=h,e[6]=f,e[7]=d,e[8]=m,e[9]=y,e[10]=i,e[11]=s,e[12]=C,e[13]=r,e[14]=l,e[15]=x,e[16]=K,e[17]=D,e[18]=B,e[19]=I,e[20]=_,e[21]=M,e[22]=k,e[23]=A}else x=e[15],K=e[16],D=e[17],B=e[18],I=e[19],_=e[20],M=e[21],k=e[22],A=e[23];let b;e[42]!==w||e[43]!==p?(b=p&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(Dt,{}),(0,n.jsxs)(ka,{className:"h-7 flex items-center gap-2",onClick:()=>w("ai","ai-models"),children:[(0,n.jsx)(Ua,{className:"h-3 w-3"}),(0,n.jsx)("span",{className:"cursor-pointer text-link",children:"Add custom model"})]})]}),e[42]=w,e[43]=p,e[44]=b):b=e[44];let P;e[45]!==x||e[46]!==a||e[47]!==b||e[48]!==B||e[49]!==I||e[50]!==_||e[51]!==M?(P=(0,n.jsxs)(x,{className:B,children:[I,_,M,a,b]}),e[45]=x,e[46]=a,e[47]=b,e[48]=B,e[49]=I,e[50]=_,e[51]=M,e[52]=P):P=e[52];let z;return e[53]!==K||e[54]!==D||e[55]!==P||e[56]!==k||e[57]!==A?(z=(0,n.jsxs)(K,{open:k,onOpenChange:A,children:[D,P]}),e[53]=K,e[54]=D,e[55]=P,e[56]=k,e[57]=A,e[58]=z):z=e[58],z};var r0=t=>{let e=(0,Qt.c)(26),{provider:l,onSelect:s,models:i,iconSizeClass:r}=t,a=Ml(l)?l:"openai-compatible",c;e[0]===l?c=e[1]:(c=kt.getProviderInfo(l),e[0]=l,e[1]=c);let o=c;if(i.length===0)return null;let d;e[2]!==a||e[3]!==r?(d=(0,n.jsx)(Ee,{provider:a,className:r}),e[2]=a,e[3]=r,e[4]=d):d=e[4];let u;e[5]===l?u=e[6]:(u=Yt(l),e[5]=l,e[6]=u);let m;e[7]!==d||e[8]!==u?(m=(0,n.jsx)(ln,{children:(0,n.jsxs)("p",{className:"flex items-center gap-2",children:[d,u]})}),e[7]=d,e[8]=u,e[9]=m):m=e[9];let p=o?-90:0,f;e[10]===o?f=e[11]:(f=o&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("p",{className:"text-sm text-muted-foreground p-2 max-w-[300px]",children:[o.description,(0,n.jsx)("br",{})]}),(0,n.jsxs)("p",{className:"text-sm text-muted-foreground p-2 pt-0",children:["For more information, see the"," ",(0,n.jsx)("a",{href:o.url,target:"_blank",className:"underline",rel:"noreferrer","aria-label":"Provider details",children:"provider details"}),"."]}),(0,n.jsx)(Dt,{})]}),e[10]=o,e[11]=f);let y;if(e[12]!==i||e[13]!==s||e[14]!==l){let N;e[16]!==s||e[17]!==l?(N=C=>{let w=`${l}/${C.model}`;return(0,n.jsxs)(nn,{children:[(0,n.jsx)(ln,{showChevron:!1,className:"py-2",children:(0,n.jsx)("div",{className:"flex items-center gap-2 w-full cursor-pointer",onClick:()=>{s(w)},children:(0,n.jsx)(a0,{model:C,provider:l})})}),(0,n.jsx)(tn,{className:"p-4 w-80",children:(0,n.jsx)(o0,{model:C,provider:l})})]},w)},e[16]=s,e[17]=l,e[18]=N):N=e[18],y=i.map(N),e[12]=i,e[13]=s,e[14]=l,e[15]=y}else y=e[15];let j;e[19]!==p||e[20]!==f||e[21]!==y?(j=(0,n.jsx)(Sa,{children:(0,n.jsxs)(tn,{className:"max-h-[40vh] overflow-y-auto",alignOffset:p,sideOffset:5,children:[f,y]})}),e[19]=p,e[20]=f,e[21]=y,e[22]=j):j=e[22];let v;return e[23]!==m||e[24]!==j?(v=(0,n.jsxs)(nn,{children:[m,j]}),e[23]=m,e[24]=j,e[25]=v):v=e[25],v},a0=t=>{let e=(0,Qt.c)(17),{model:l,provider:s}=t,i=Ml(s)?s:"openai-compatible",r;e[0]===i?r=e[1]:(r=(0,n.jsx)(Ee,{provider:i,className:"h-4 w-4"}),e[0]=i,e[1]=r);let a;e[2]===l.name?a=e[3]:(a=(0,n.jsx)("span",{children:l.name}),e[2]=l.name,e[3]=a);let c;e[4]===l.thinking?c=e[5]:(c=l.thinking&&(0,n.jsx)(qe,{content:"Reasoning model",children:(0,n.jsx)(gl,{className:`h-5 w-5 rounded-md p-1 ${Ut("thinking")}`})}),e[4]=l.thinking,e[5]=c);let o;e[6]===c?o=e[7]:(o=(0,n.jsx)("div",{className:"ml-auto",children:c}),e[6]=c,e[7]=o);let d;e[8]!==a||e[9]!==o?(d=(0,n.jsxs)("div",{className:"flex flex-row w-full items-center",children:[a,o]}),e[8]=a,e[9]=o,e[10]=d):d=e[10];let u;e[11]===l.custom?u=e[12]:(u=l.custom&&(0,n.jsx)(qe,{content:"Custom model",children:(0,n.jsx)(Jt,{className:"h-5 w-5"})}),e[11]=l.custom,e[12]=u);let m;return e[13]!==r||e[14]!==d||e[15]!==u?(m=(0,n.jsxs)(n.Fragment,{children:[r,d,u]}),e[13]=r,e[14]=d,e[15]=u,e[16]=m):m=e[16],m};const o0=t=>{let e=(0,Qt.c)(28),{model:l,provider:s}=t,i;e[0]===l.name?i=e[1]:(i=(0,n.jsx)("h4",{className:"font-semibold text-base text-foreground",children:l.name}),e[0]=l.name,e[1]=i);let r;e[2]===l.model?r=e[3]:(r=(0,n.jsx)("p",{className:"text-xs text-muted-foreground font-mono",children:l.model}),e[2]=l.model,e[3]=r);let a;e[4]!==i||e[5]!==r?(a=(0,n.jsxs)("div",{children:[i,r]}),e[4]=i,e[5]=r,e[6]=a):a=e[6];let c;e[7]===l.description?c=e[8]:(c=(0,n.jsx)("p",{className:"text-sm text-muted-foreground leading-relaxed",children:l.description}),e[7]=l.description,e[8]=c);let o;e[9]===l.roles?o=e[10]:(o=l.roles.length>0&&(0,n.jsxs)("div",{children:[(0,n.jsx)("p",{className:"text-xs font-medium text-muted-foreground mb-2",children:"Capabilities:"}),(0,n.jsx)("div",{className:"flex flex-wrap gap-1",children:l.roles.map(c0)})]}),e[9]=l.roles,e[10]=o);let d;e[11]===l.thinking?d=e[12]:(d=l.thinking&&(0,n.jsxs)("div",{className:"flex items-center gap-2",children:[(0,n.jsx)("div",{className:"w-2 h-2 bg-purple-500 rounded-full animate-pulse"}),(0,n.jsx)("span",{className:"text-xs text-muted-foreground",children:"Supports thinking mode"})]}),e[11]=l.thinking,e[12]=d);let u;e[13]===s?u=e[14]:(u=(0,n.jsx)(Ee,{provider:s,className:"h-4 w-4"}),e[13]=s,e[14]=u);let m;e[15]===s?m=e[16]:(m=Yt(s),e[15]=s,e[16]=m);let p;e[17]===m?p=e[18]:(p=(0,n.jsx)("span",{className:"text-xs text-muted-foreground",children:m}),e[17]=m,e[18]=p);let f;e[19]!==u||e[20]!==p?(f=(0,n.jsxs)("div",{className:"flex items-center gap-2 pt-2 border-t border-border",children:[u,p]}),e[19]=u,e[20]=p,e[21]=f):f=e[21];let y;return e[22]!==f||e[23]!==a||e[24]!==c||e[25]!==o||e[26]!==d?(y=(0,n.jsxs)("div",{className:"space-y-3",children:[a,c,o,d,f]}),e[22]=f,e[23]=a,e[24]=c,e[25]=o,e[26]=d,e[27]=y):y=e[27],y};function Yt(t){let e=kt.getProviderInfo(t);return e?e.name:Va(t)}function c0(t){return(0,n.jsx)("span",{className:`px-2 py-1 text-xs rounded-md font-medium ${Ut(t)}`,title:ur(t),children:t},t)}export{Il as A,gi as B,jd as C,Di as D,$i as E,Nl as F,$n as G,Un as H,bi as I,En as J,zn as K,Ci as L,Ii as M,Lt as N,jt as O,Lc as P,kl as R,Qi as S,Ae as T,Hn as U,qn as V,xl as W,Dn as X,An as Y,Gt as _,_l as a,Td as b,mr as c,Ee as d,tr as f,Al as g,Xi as h,s0 as i,Mi as j,Ai as k,uu as l,wt as m,wr as n,yu as o,Qd as p,Bn as q,zl as r,pu as s,Cr as t,du as u,er as v,Oi as w,Dl as x,Ji as y,rt as z};