@marimo-team/frontend 0.23.7-dev12 → 0.23.7-dev14

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.
@@ -1 +1 @@
1
- var UA=Object.defineProperty;var VA=(a,A,e)=>A in a?UA(a,A,{enumerable:!0,configurable:!0,writable:!0,value:e}):a[A]=e;var kA=(a,A,e)=>VA(a,typeof A!="symbol"?A+"":A,e);import{s as mA}from"./chunk-LvLJmgfZ.js";import{d as S,i as YA,l as fA,u as y}from"./useEvent-D91BmmQi.js";import{t as qA}from"./react-Bj1aDYRI.js";import{Cn as WA,Dr as XA,E as pA,F as JA,Gt as zA,In as $A,Kt as Ae,L as ee,Li as ae,Mr as xA,T as te,Ut as Ge,Wt as oe,b as se,g as re,h as iA,it as ne,ji as ke,k as ie,l as Re,lt as le,ot as wA,rt as Ze,vn as ce,z as ge}from"./cells-BBDzmUIS.js";import{t as h}from"./compiler-runtime-B3qBwwSJ.js";import{C as de,_ as he,b as Be,c as ue,h as me,i as Ye,m as fe,n as pe,o as Q,r as xe,s as we,t as De,x as ve,y as Ee}from"./state-B_kYpAQh.js";import{_ as p,d as DA,t as ye}from"./useEventListener-BR0C1MaI.js";import{C as Ce,b as be}from"./utils-BrXijSdZ.js";import{r as RA}from"./constants-DMpttj8Q.js";import{C as P,T as lA,d as Me,l as vA,o as Ne,v as _e,w as x}from"./config-CPqw1wUv.js";import{n as je,o as Fe}from"./switch-BvybnC9P.js";import{n as Se}from"./ErrorBoundary-DzYV_VeY.js";import{n as Qe,t as Y}from"./cn-DCUzRj2J.js";import{t as Pe}from"./jsx-runtime-BqBOg78p.js";import{a as Le,n as Oe}from"./fullscreen-BDxedMYP.js";import{_ as Te,f as Ie,g as Ke,h as EA,m as yA,p as CA,v as bA,y as He}from"./alert-dialog-BGBdrcqJ.js";import{dt as Ue,ft as Ve,st as MA}from"./JsonOutput-B0sjIMBK.js";import{h as qe}from"./download-QGh9oR1D.js";import{t as ZA}from"./tooltip-Gcwqb_SK.js";import{t as cA}from"./button-D9nb17Rw.js";import{t as We}from"./createReducer-1ePoj7v6.js";import{i as Xe}from"./strings-md4mFbOQ.js";import{t as Je}from"./requests-DIwGYs0l.js";import{t as J}from"./createLucideIcon-D5guW7EU.js";import{N as ze,P as NA,a as $e,i as _A,n as Aa,o as ea,s as aa}from"./layout-D5myrs5s.js";import{o as ta,r as Ga,s as oa}from"./state-B34hXjp9.js";import{c as sa}from"./markdown-renderer-CVd_mMPt.js";import{n as ra}from"./spinner-Bhir8k53.js";import{i as na,n as ka}from"./readonly-python-code-DOXF2p8K.js";import{t as ia}from"./uuid-DercMavo.js";import{t as z}from"./use-toast-T0_cQDma.js";import{i as Ra}from"./session-VtovaFBS.js";import{t as la}from"./RenderHTML-CruxVneu.js";import{r as jA}from"./share-CqnSBwZy.js";import{r as gA}from"./errors-CPlNr33a.js";import{s as Za}from"./react-icons.esm-D9xfKaPZ.js";import{r as FA}from"./events-BRAWQiYK.js";import{i as ca}from"./cell-link-DqiCeeeS.js";import{t as ga}from"./error-banner-C10O4l3y.js";import{n as da}from"./useAsyncData-BFC6lWG9.js";import{t as ha}from"./requests-QKoDeQkn.js";import{t as Ba}from"./request-registry-5ELz5pd2.js";import{t as ua}from"./ws-BZQmQxZ7.js";import{n as ma}from"./types-Bhw3Hco_.js";import{n as Ya}from"./runs-DRld30N_.js";var fa=J("hourglass",[["path",{d:"M5 22h14",key:"ehvnwv"}],["path",{d:"M5 2h14",key:"pdyrp9"}],["path",{d:"M17 22v-4.172a2 2 0 0 0-.586-1.414L12 12l-4.414 4.414A2 2 0 0 0 7 17.828V22",key:"1d314k"}],["path",{d:"M7 2v4.172a2 2 0 0 0 .586 1.414L12 12l4.414-4.414A2 2 0 0 0 17 6.172V2",key:"1vvvr6"}]]),SA=J("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]),pa=J("square-arrow-right",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M8 12h8",key:"1wcyev"}],["path",{d:"m12 16 4-4-4-4",key:"1i9zcv"}]]),xa=J("unlink",[["path",{d:"m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71",key:"yqzxt4"}],["path",{d:"m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71",key:"4qinb0"}],["line",{x1:"8",x2:"8",y1:"2",y2:"5",key:"1041cp"}],["line",{x1:"2",x2:"5",y1:"8",y2:"8",key:"14m1p5"}],["line",{x1:"16",x2:"16",y1:"19",y2:"22",key:"rzdirn"}],["line",{x1:"19",x2:"22",y1:"16",y2:"16",key:"ox905f"}]]),wa=h(),n=mA(Pe(),1);const Da=a=>{let A=(0,wa.c)(10),{reason:e,canTakeover:t}=a,o=t===void 0?!1:t,G=va;if(o){let R;A[0]===Symbol.for("react.memo_cache_sentinel")?(R=(0,n.jsx)("div",{className:"flex justify-between",children:(0,n.jsx)("span",{className:"font-bold text-xl flex items-center mb-2",children:"Notebook already connected"})}),A[0]=R):R=A[0];let r;A[1]===e?r=A[2]:(r=(0,n.jsx)("span",{children:e}),A[1]=e,A[2]=r);let k;A[3]===o?k=A[4]:(k=o&&(0,n.jsxs)(cA,{onClick:G,variant:"outline","data-testid":"takeover-button",className:"shrink-0",children:[(0,n.jsx)(pa,{className:"w-4 h-4 mr-2"}),"Take over session"]}),A[3]=o,A[4]=k);let i;return A[5]!==r||A[6]!==k?(i=(0,n.jsx)("div",{className:"flex justify-center",children:(0,n.jsxs)(ga,{kind:"info",className:"mt-10 flex flex-col rounded p-3 max-w-[800px] mx-4",children:[R,(0,n.jsxs)("div",{className:"flex justify-between items-end text-base gap-20",children:[r,k]})]})}),A[5]=r,A[6]=k,A[7]=i):i=A[7],i}let s;return A[8]===e?s=A[9]:(s=(0,n.jsx)("div",{className:"font-mono text-center text-base text-(--red-11)",children:(0,n.jsx)("p",{children:e})}),A[8]=e,A[9]=s),s};async function va(){try{let a=new URL(window.location.href).searchParams;await je.post(`/kernel/takeover?${a.toString()}`,{}),jA()}catch(a){z({title:"Failed to take over session",description:gA(a),variant:"danger"})}}var Ea=h(),B=mA(qA(),1);const ya=a=>{let A=(0,Ea.c)(8),{connection:e,className:t,children:o}=a,G;A[0]!==e.canTakeover||A[1]!==e.reason||A[2]!==e.state?(G=e.state===x.CLOSED&&(0,n.jsx)(Da,{reason:e.reason,canTakeover:e.canTakeover}),A[0]=e.canTakeover,A[1]=e.reason,A[2]=e.state,A[3]=G):G=A[3];let s;return A[4]!==o||A[5]!==t||A[6]!==G?(s=(0,n.jsxs)("div",{className:t,children:[o,G]}),A[4]=o,A[5]=t,A[6]=G,A[7]=s):s=A[7],s};var Ca=h();const ba=a=>{let A=(0,Ca.c)(10),{title:e}=a,[t,o]=(0,B.useState)(e),[G,s]=(0,B.useState)(!0),R,r;A[0]!==t||A[1]!==e?(R=()=>{if(e!==t){s(!1);let g=setTimeout(()=>{o(e),s(!0)},300);return()=>clearTimeout(g)}},r=[e,t],A[0]=t,A[1]=e,A[2]=R,A[3]=r):(R=A[2],r=A[3]),(0,B.useEffect)(R,r);let k;A[4]===Symbol.for("react.memo_cache_sentinel")?(k=(0,n.jsx)(ra,{className:"size-20 animate-spin text-primary","data-testid":"large-spinner",strokeWidth:1}),A[4]=k):k=A[4];let i=G?"opacity-100":"opacity-0",l;A[5]===i?l=A[6]:(l=Y("mt-2 text-muted-foreground font-semibold text-lg transition-opacity duration-300",i),A[5]=i,A[6]=l);let c;return A[7]!==t||A[8]!==l?(c=(0,n.jsxs)("div",{className:"flex flex-col h-full flex-1 items-center justify-center p-4",children:[k,(0,n.jsx)("div",{className:l,children:t})]}),A[7]=t,A[8]=l,A[9]=c):c=A[9],c};var dA=h();const Ma=a=>{let A=(0,dA.c)(2),{children:e}=a;if(!lA())return e;let t;return A[0]===e?t=A[1]:(t=(0,n.jsx)(Na,{children:e}),A[0]=e,A[1]=t),t};var Na=a=>{let A=(0,dA.c)(9),{children:e}=a,t;A[0]===Symbol.for("react.memo_cache_sentinel")?(t=[],A[0]=t):t=A[0];let{error:o}=da(Sa,t),G=y(re),s=y(he),R;A[1]!==G||A[2]!==s?(R=ja({hasCells:G,hasOutput:s,mode:ne(),codeHidden:_a()}),A[1]=G,A[2]=s,A[3]=R):R=A[3];let r=R,k=(0,B.useRef)(!1),i,l;if(A[4]!==o||A[5]!==r?(i=()=>{o&&!r&&!k.current&&(k.current=!0,p.error("Pyodide failed to initialize",o),z({title:"Failed to start the notebook runtime",description:gA(o),variant:"danger"}))},l=[o,r],A[4]=o,A[5]=r,A[6]=i,A[7]=l):(i=A[6],l=A[7]),(0,B.useEffect)(i,l),o&&r)throw o;if(r){let c;return A[8]===Symbol.for("react.memo_cache_sentinel")?(c=(0,n.jsx)(Fa,{}),A[8]=c):c=A[8],c}return e};function _a(){return Ra(RA.showCode,"false")||!YA.get(Fe)}function ja(a){let{hasCells:A,hasOutput:e,mode:t,codeHidden:o}=a;return A?!e&&t==="read"&&o:!0}const Fa=a=>{let A=(0,dA.c)(2),e=y(Ee),t;return A[0]===e?t=A[1]:(t=(0,n.jsx)(ba,{title:e}),A[0]=e,A[1]=t),t};async function Sa(){return await fe.INSTANCE.initialized.promise,!0}var Qa={idle:"./favicon.ico",success:"data:image/x-icon;base64,AAABAAEAMDAAAAEACACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAAAkAAAAAAAAAAAAAAAEAAAABAAAAAAAAXXQAAFd3AwBWeAQAVngEAFd4AwBXeAQAVnkEAFh3AwBXdwQAVXcGAFd4BQBXeAQAWHgEAFd6AwBXeAMAVnkEAFZ5AwBXdwQAV3cFAFd4BABYeAQAV3gEAFh4BABXeAQA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYYGAYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcYGBgYGBgYGBgYGBgYGAcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGBgYGBgYGBgYGBgYGBgYGBgYCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAsYGBgYGBgYDA0OChkZGRkKDg0MGBgYGBgYGAsAAAAAAAAAAAAAAAAAAAAAAAAAAxgYGBgYGA8QGRkZGRkZGRkZGRkZEA8YGBgYGBgDAAAAAAAAAAAAAAAAAAAAAAARGBgYGBgSChkZGRkZGRkZGRkZGRkZGRkKEhgYGBgYEQAAAAAAAAAAAAAAAAAAAAMYGBgYGBMZGRkZGRkZGRkZGRkZGRkZGRkZGRMYGBgYGAMAAAAAAAAAAAAAAAAACxgYGBgUEBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkQFBgYGBgLAAAAAAAAAAAAAAAKGBgYGBQKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChQYGBgYCgAAAAAAAAAAAAAEGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYBAAAAAAAAAAAAAgYGBgYExkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTGBgYGAgAAAAAAAAAAAkYGBgSGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZEhgYGAkAAAAAAAAAAhgYGBgKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChgYGBgCAAAAAAAABxgYGA8ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGQ8YGBgHAAAAAAABGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYAQAAAAACGBgYDBkZGRkZGRkZGRkZGRkXFhYVGRkZGRkZGRkZGRkZGRkZGRkMGBgYAgAAAAADGBgYDRkZGRkZGRkZGRkZGRcYGBgYFxkZGRkZGRkZGRkZGRkZGRkNGBgYAwAAAAAEGBgYDhkZGRkZGRkZGRkZFxgYGBgYGBcZGRkZGRkZGRkZGRkZGRkOGBgYBAAAAAAFGBgYChkZGRkZGRkZGRkXGBgYGBgYGBgXGRkZGRkZGRkZGRkZGRkKGBgYBQAAAAAGGBgYGRkZGRkZGRkZGRUYGBgYGBgYGBgYFxkZGRkZGRkZGRkZGRkZGBgYBgAAAAAYGBgYGRkZGRkZGRkZGRYYGBgYFxcYGBgYGBcZGRkZGRkZGRkZGRkZGBgYGAAAAAAYGBgYGRkZGRkZGRkZGRYYGBgXGRkXGBgYGBgXGRkZGRkZGRkZGRkZGBgYGAAAAAAGGBgYGRkZGRkZGRkZGRUWFhcZGRkZFxgYGBgYFxkZGRkZGRkZGRkZGBgYBgAAAAAFGBgYChkZGRkZGRkZGRkZGRkZGRkZGRcYGBgYGBcZGRkZGRkZGRkKGBgYBQAAAAAEGBgYDhkZGRkZGRkZGRkZGRkZGRkZGRkXGBgYGBYZGRkZGRkZGRkOGBgYBAAAAAADGBgYDRkZGRkZGRkZGRkZGRkZGRkZGRkZFxgYGBYZGRkZGRkZGRkNGBgYAwAAAAACGBgYDBkZGRkZGRkZGRkZGRkZGRkZGRkZGRUWFhUZGRkZGRkZGRkMGBgYAgAAAAABGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYAQAAAAAABxgYGA8ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGQ8YGBgHAAAAAAAAAhgYGBgKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChgYGBgCAAAAAAAAAAkYGBgSGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZEhgYGAkAAAAAAAAAAAgYGBgYExkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTGBgYGAgAAAAAAAAAAAAEGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYBAAAAAAAAAAAAAAKGBgYGBQKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChQYGBgYCgAAAAAAAAAAAAAACxgYGBgUEBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkQFBgYGBgLAAAAAAAAAAAAAAAAAAMYGBgYGBMZGRkZGRkZGRkZGRkZGRkZGRkZGRMYGBgYGAMAAAAAAAAAAAAAAAAAAAARGBgYGBgSChkZGRkZGRkZGRkZGRkZGRkKEhgYGBgYEQAAAAAAAAAAAAAAAAAAAAAAAxgYGBgYGA8QGRkZGRkZGRkZGRkZEA8YGBgYGBgDAAAAAAAAAAAAAAAAAAAAAAAAAAsYGBgYGBgYDA0OChkZGRkKDg0MGBgYGBgYGAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGBgYGBgYGBgYGBgYGBgYGBgYCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcYGBgYGBgYGBgYGBgYGAcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYYGAYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP//gAH//wAA//4AAH//AAD/+AAAH/8AAP/gAAAH/wAA/8AAAAP/AAD/gAAAAf8AAP8AAAAA/wAA/gAAAAB/AAD8AAAAAD8AAPgAAAAAHwAA+AAAAAAfAADwAAAAAA8AAPAAAAAADwAA4AAAAAAHAADgAAAAAAcAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADgAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAAAA8AAPgAAAAAHwAA+AAAAAAfAAD8AAAAAD8AAP4AAAAAfwAA/wAAAAD/AAD/gAAAAf8AAP/AAAAD/wAA/+AAAAf/AAD/+AAAH/8AAP/+AAB//wAA//+AAf//AAD///////8AAP///////wAA",running:"data:image/x-icon;base64,AAABAAEAMDAAAAEACACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAAAkAAAAAAAAAAAAAAAEAAAABAAAAAAAA0YsAAMWEAwDHgwIAx4QBAMeEAgDGhAIAyIUBAMaFAwDGhAIAxoIAAMaFAgDHhAIAx4QCAMiFAwDHhAIAx4YAAMaFAgDHhQEAxoMCAMeEAgDHgwQAx4QDAMeDAgDHhAIA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYYGAYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcYGBgYGBgYGBgYGBgYGAcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGBgYGBgYGBgYGBgYGBgYGBgYCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAsYGBgYGBgYDA0OChkZGRkKDg0MGBgYGBgYGAsAAAAAAAAAAAAAAAAAAAAAAAAAAxgYGBgYGA8QGRkZGRkZGRkZGRkZEA8YGBgYGBgDAAAAAAAAAAAAAAAAAAAAAAARGBgYGBgSChkZGRkZGRkZGRkZGRkZGRkKEhgYGBgYEQAAAAAAAAAAAAAAAAAAAAMYGBgYGBMZGRkZGRkZGRkZGRkZGRkZGRkZGRMYGBgYGAMAAAAAAAAAAAAAAAAACxgYGBgUEBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkQFBgYGBgLAAAAAAAAAAAAAAAKGBgYGBQKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChQYGBgYCgAAAAAAAAAAAAAEGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYBAAAAAAAAAAAAAgYGBgYExkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTGBgYGAgAAAAAAAAAAAkYGBgSGRkZGRkZGRkZFRgWFxkZGRkZGRkZGRkZGRkZGRkZEhgYGAkAAAAAAAAAAhgYGBgKGRkZGRkZGRkZFhgYGBYVGRkZGRkZGRkZGRkZGRkZChgYGBgCAAAAAAAABxgYGA8ZGRkZGRkZGRkZGBgYGBgYFxkZGRkZGRkZGRkZGRkZGQ8YGBgHAAAAAAABGBgYGBAZGRkZGRkZGRkZGBgYGBgYGBYVGRkZGRkZGRkZGRkZGRAYGBgYAQAAAAACGBgYDBkZGRkZGRkZGRkZGBgYGBgYGBgYFxkZGRkZGRkZGRkZGRkMGBgYAgAAAAADGBgYDRkZGRkZGRkZGRkZGBgYGBgYGBgYGBYVGRkZGRkZGRkZGRkNGBgYAwAAAAAEGBgYDhkZGRkZGRkZGRkZGBgYGBUWGBgYGBgYFxkZGRkZGRkZGRkOGBgYBAAAAAAFGBgYChkZGRkZGRkZGRkZGBgYGBkZFxgYGBgYGBYVGRkZGRkZGRkKGBgYBQAAAAAGGBgYGRkZGRkZGRkZGRkZGBgYGBkZGRUWGBgYGBgYFxkZGRkZGRkZGBgYBgAAAAAYGBgYGRkZGRkZGRkZGRkZGBgYGBkZGRkZFxgYGBgYFxkZGRkZGRkZGBgYGAAAAAAYGBgYGRkZGRkZGRkZGRkZGBgYGBkZGRkZFxgYGBgYFhkZGRkZGRkZGBgYGAAAAAAGGBgYGRkZGRkZGRkZGRkZGBgYGBkZGRkXGBgYGBgYFRkZGRkZGRkZGBgYBgAAAAAFGBgYChkZGRkZGRkZGRkZGBgYGBkZFxgYGBgYGBcZGRkZGRkZGRkKGBgYBQAAAAAEGBgYDhkZGRkZGRkZGRkZGBgYGBkXGBgYGBgYFxkZGRkZGRkZGRkOGBgYBAAAAAADGBgYDRkZGRkZGRkZGRkZGBgYGBgYGBgYGBcZGRkZGRkZGRkZGRkNGBgYAwAAAAACGBgYDBkZGRkZGRkZGRkZGBgYGBgYGBgYFxkZGRkZGRkZGRkZGRkMGBgYAgAAAAABGBgYGBAZGRkZGRkZGRkZGBgYGBgYGBcZGRkZGRkZGRkZGRkZGRAYGBgYAQAAAAAABxgYGA8ZGRkZGRkZGRkZGBgYGBgYFxkZGRkZGRkZGRkZGRkZGQ8YGBgHAAAAAAAAAhgYGBgKGRkZGRkZGRkZFhgYGBcZGRkZGRkZGRkZGRkZGRkZChgYGBgCAAAAAAAAAAkYGBgSGRkZGRkZGRkZFRYWFxkZGRkZGRkZGRkZGRkZGRkZEhgYGAkAAAAAAAAAAAgYGBgYExkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTGBgYGAgAAAAAAAAAAAAEGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYBAAAAAAAAAAAAAAKGBgYGBQKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChQYGBgYCgAAAAAAAAAAAAAACxgYGBgUEBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkQFBgYGBgLAAAAAAAAAAAAAAAAAAMYGBgYGBMZGRkZGRkZGRkZGRkZGRkZGRkZGRMYGBgYGAMAAAAAAAAAAAAAAAAAAAARGBgYGBgSChkZGRkZGRkZGRkZGRkZGRkKEhgYGBgYEQAAAAAAAAAAAAAAAAAAAAAAAxgYGBgYGA8QGRkZGRkZGRkZGRkZEA8YGBgYGBgDAAAAAAAAAAAAAAAAAAAAAAAAAAsYGBgYGBgYDA0OChkZGRkKDg0MGBgYGBgYGAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGBgYGBgYGBgYGBgYGBgYGBgYCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcYGBgYGBgYGBgYGBgYGAcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYYGAYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP//gAH//wAA//4AAH//AAD/+AAAH/8AAP/gAAAH/wAA/8AAAAP/AAD/gAAAAf8AAP8AAAAA/wAA/gAAAAB/AAD8AAAAAD8AAPgAAAAAHwAA+AAAAAAfAADwAAAAAA8AAPAAAAAADwAA4AAAAAAHAADgAAAAAAcAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADgAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAAAA8AAPgAAAAAHwAA+AAAAAAfAAD8AAAAAD8AAP4AAAAAfwAA/wAAAAD/AAD/gAAAAf8AAP/AAAAD/wAA/+AAAAf/AAD/+AAAH/8AAP/+AAB//wAA//+AAf//AAD///////8AAP///////wAA",error:"data:image/x-icon;base64,AAABAAEAMDAAAAEACACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAAAkAAAAAAAAAAAAAAAEAAAABAAAAAAAALi7oACcn2wAlJdsAJibcACYm3AAmJtsAJyfdACUl3QAmJtsAKCjdACUl3AAmJtwAJyfcACYm3AAoKNcAJibcACcn3AAmJt0AJibcACUl3AAmJtwAKCjbACcn3AAmJtsAJibcAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYZGQYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcZGRkZGRkZGRkZGRkZGQcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGRkZGRkZGRkZGRkZGRkZGRkZCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAsZGRkZGRkZDA0ODxoaGhoPDg0MGRkZGRkZGQsAAAAAAAAAAAAAAAAAAAAAAAAAAxkZGRkZGRARGhoaGhoaGhoaGhoaERAZGRkZGRkDAAAAAAAAAAAAAAAAAAAAAAASGRkZGRkTDxoaGhoaGhoaGhoaGhoaGhoPExkZGRkZEgAAAAAAAAAAAAAAAAAAAAMZGRkZGRQaGhoaGhoaGhoaGhoaGhoaGhoaGhQZGRkZGQMAAAAAAAAAAAAAAAAACxkZGRkVERoaGhoaGhoaGhoaGhoaGhoaGhoaGhoRFRkZGRkLAAAAAAAAAAAAAAAKGRkZGRUPGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaDxUZGRkZCgAAAAAAAAAAAAAEGRkZGREaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhEZGRkZBAAAAAAAAAAAAAgZGRkZFBoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoUGRkZGQgAAAAAAAAAAAkZGRkTGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaExkZGQkAAAAAAAAAAhkZGRkPGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaDxkZGRkCAAAAAAAABxkZGRAaGhoaGhoaGhYXFxYaGhoaGhoaGhgXFxYaGhoaGhoaGhAZGRkHAAAAAAABGRkZGREaGhoaGhoaGhcZGRkYGhoaGhoaGBkZGRcaGhoaGhoaGhEZGRkZAQAAAAACGRkZDBoaGhoaGhoaGhcZGRkZGBoaGhoYGRkZGRcaGhoaGhoaGhoMGRkZAgAAAAADGRkZDRoaGhoaGhoaGhgZGRkZGRgaGhgZGRkZGRYaGhoaGhoaGhoNGRkZAwAAAAAEGRkZDhoaGhoaGhoaGhoYGRkZGRkYGBkZGRkZGBoaGhoaGhoaGhoOGRkZBAAAAAAFGRkZDxoaGhoaGhoaGhoaGBkZGRkZGRkZGRkYGhoaGhoaGhoaGhoPGRkZBQAAAAAGGRkZGhoaGhoaGhoaGhoaGhgZGRkZGRkZGRgaGhoaGhoaGhoaGhoaGRkZBgAAAAAZGRkZGhoaGhoaGhoaGhoaGhoYGRkZGRkZGBoaGhoaGhoaGhoaGhoaGRkZGQAAAAAZGRkZGhoaGhoaGhoaGhoaGhoYGRkZGRkZGBoaGhoaGhoaGhoaGhoaGRkZGQAAAAAGGRkZGhoaGhoaGhoaGhoaGhgZGRkZGRkZGRgaGhoaGhoaGhoaGhoaGRkZBgAAAAAFGRkZDxoaGhoaGhoaGhoaGBkZGRkZGRkZGRkYGhoaGhoaGhoaGhoPGRkZBQAAAAAEGRkZDhoaGhoaGhoaGhoYGRkZGRkYGBkZGRkZGBoaGhoaGhoaGhoOGRkZBAAAAAADGRkZDRoaGhoaGhoaGhYZGRkZGRgaGhgZGRkZGRgaGhoaGhoaGhoNGRkZAwAAAAACGRkZDBoaGhoaGhoaGhcZGRkZGBoaGhoYGRkZGRcaGhoaGhoaGhoMGRkZAgAAAAABGRkZGREaGhoaGhoaGhcZGRkYGhoaGhoaGBkZGRcaGhoaGhoaGhEZGRkZAQAAAAAABxkZGRAaGhoaGhoaGhYXFxgaGhoaGhoaGhYXFxYaGhoaGhoaGhAZGRkHAAAAAAAAAhkZGRkPGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaDxkZGRkCAAAAAAAAAAkZGRkTGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaExkZGQkAAAAAAAAAAAgZGRkZFBoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoUGRkZGQgAAAAAAAAAAAAEGRkZGREaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhEZGRkZBAAAAAAAAAAAAAAKGRkZGRUPGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaDxUZGRkZCgAAAAAAAAAAAAAACxkZGRkVERoaGhoaGhoaGhoaGhoaGhoaGhoaGhoRFRkZGRkLAAAAAAAAAAAAAAAAAAMZGRkZGRQaGhoaGhoaGhoaGhoaGhoaGhoaGhQZGRkZGQMAAAAAAAAAAAAAAAAAAAASGRkZGRkTDxoaGhoaGhoaGhoaGhoaGhoPExkZGRkZEgAAAAAAAAAAAAAAAAAAAAAAAxkZGRkZGRARGhoaGhoaGhoaGhoaERAZGRkZGRkDAAAAAAAAAAAAAAAAAAAAAAAAAAsZGRkZGRkZDA0ODxoaGhoPDg0MGRkZGRkZGQsAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGRkZGRkZGRkZGRkZGRkZGRkZCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcZGRkZGRkZGRkZGRkZGQcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYZGQYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP//gAH//wAA//4AAH//AAD/+AAAH/8AAP/gAAAH/wAA/8AAAAP/AAD/gAAAAf8AAP8AAAAA/wAA/gAAAAB/AAD8AAAAAD8AAPgAAAAAHwAA+AAAAAAfAADwAAAAAA8AAPAAAAAADwAA4AAAAAAHAADgAAAAAAcAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADgAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAAAA8AAPgAAAAAHwAA+AAAAAAfAAD8AAAAAD8AAP4AAAAAfwAA/wAAAAD/AAD/gAAAAf8AAP/AAAAD/wAA/+AAAAf/AAD/+AAAH/8AAP/+AAB//wAA//+AAf//AAD///////8AAP///////wAA"};async function L(a){return Qa[a]}function Pa(a){if(document.visibilityState==="visible")return;let A=async()=>{a===0?new Notification("Execution completed",{body:"Your notebook run completed successfully.",icon:await L("success")}):new Notification("Execution failed",{body:`Your notebook run encountered ${a} error(s).`,icon:await L("error")})};!("Notification"in window)||Notification.permission==="denied"||(Notification.permission==="granted"?A():Notification.permission==="default"&&Notification.requestPermission().then(e=>{e==="granted"&&A()}))}const La=a=>{let{isRunning:A}=a,e=ie(),t=document.querySelector("link[rel~='icon']");t||(t=document.createElement("link"),t.rel="icon",document.getElementsByTagName("head")[0].append(t)),(0,B.useEffect)(()=>{!A&&t.href.includes("favicon")||(async()=>{let G;if(G=A?"running":e.length===0?"success":"error",t.href=await L(G),!document.hasFocus())return;let s=setTimeout(async()=>{t.href=await L("idle")},3e3);return()=>clearTimeout(s)})()},[A,e,t]);let o=ze(A)??A;return(0,B.useEffect)(()=>{o&&!A&&Pa(e.length)},[e,o,A]),ye(window,"focus",async G=>{A||(t.href=await L("idle"))}),null};function Oa(){let{cellRuntime:a}=YA.get(se),A=DA.entries(a).find(([e,t])=>t.status==="running");A&&ca(A[0],"focus")}var O=h();const Ta=a=>{let A=(0,O.c)(22),{connection:e,isRunning:t}=a,{mode:o}=y(le),G=e.state===x.CLOSED,s=e.state===x.OPEN,R;A[0]!==e.canTakeover||A[1]!==G?(R=G&&!e.canTakeover&&(0,n.jsx)(Ua,{}),A[0]=e.canTakeover,A[1]=G,A[2]=R):R=A[2];let r=o==="read"?"fixed":"absolute",k;A[3]===r?k=A[4]:(k=Y("z-50 top-4 left-4",r),A[3]=r,A[4]=k);let i;A[5]!==s||A[6]!==t?(i=s&&t&&(0,n.jsx)(Ha,{}),A[5]=s,A[6]=t,A[7]=i):i=A[7];let l;A[8]!==e.canTakeover||A[9]!==G?(l=G&&!e.canTakeover&&(0,n.jsx)(Ia,{}),A[8]=e.canTakeover,A[9]=G,A[10]=l):l=A[10];let c;A[11]!==e.canTakeover||A[12]!==G?(c=G&&e.canTakeover&&(0,n.jsx)(Ka,{}),A[11]=e.canTakeover,A[12]=G,A[13]=c):c=A[13];let g;A[14]!==k||A[15]!==i||A[16]!==l||A[17]!==c?(g=(0,n.jsxs)("div",{className:k,children:[i,l,c]}),A[14]=k,A[15]=i,A[16]=l,A[17]=c,A[18]=g):g=A[18];let u;return A[19]!==R||A[20]!==g?(u=(0,n.jsxs)(n.Fragment,{children:[R,g]}),A[19]=R,A[20]=g,A[21]=u):u=A[21],u};var hA="print:hidden pointer-events-auto hover:cursor-pointer",Ia=()=>{let a=(0,O.c)(1),A;return a[0]===Symbol.for("react.memo_cache_sentinel")?(A=(0,n.jsx)(ZA,{content:"App disconnected",children:(0,n.jsx)("div",{className:hA,children:(0,n.jsx)(xa,{className:"w-[25px] h-[25px] text-(--red-11)"})})}),a[0]=A):A=a[0],A},Ka=()=>{let a=(0,O.c)(1),A;return a[0]===Symbol.for("react.memo_cache_sentinel")?(A=(0,n.jsx)(ZA,{content:"Notebook locked",children:(0,n.jsx)("div",{className:hA,children:(0,n.jsx)(na,{className:"w-[25px] h-[25px] text-(--blue-11)"})})}),a[0]=A):A=a[0],A},Ha=()=>{let a=(0,O.c)(6),A=y(te),e=A?"Scratchpad is running":"Jump to running cell",t=A?void 0:Oa,o;a[0]===Symbol.for("react.memo_cache_sentinel")?(o=(0,n.jsx)(fa,{className:"running-app-icon",size:30,strokeWidth:1}),a[0]=o):o=a[0];let G;a[1]===t?G=a[2]:(G=(0,n.jsx)("div",{className:hA,"data-testid":"loading-indicator",onClick:t,children:o}),a[1]=t,a[2]=G);let s;return a[3]!==G||a[4]!==e?(s=(0,n.jsx)(ZA,{content:e,side:"right",children:G}),a[3]=G,a[4]=e,a[5]=s):s=a[5],s},Ua=()=>{let a=(0,O.c)(1),A;return a[0]===Symbol.for("react.memo_cache_sentinel")?(A=(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"noise"}),(0,n.jsx)("div",{className:"disconnected-gradient"})]}),a[0]=A):A=a[0],A},b=h(),Va=Te,qa=He,Wa=Oe(Ke),QA=B.forwardRef((a,A)=>{let e=(0,b.c)(9),t,o;e[0]===a?(t=e[1],o=e[2]):({className:t,...o}=a,e[0]=a,e[1]=t,e[2]=o);let G;e[3]===t?G=e[4]:(G=Y("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),e[3]=t,e[4]=G);let s;return e[5]!==o||e[6]!==A||e[7]!==G?(s=(0,n.jsx)(EA,{className:G,...o,ref:A}),e[5]=o,e[6]=A,e[7]=G,e[8]=s):s=e[8],s});QA.displayName=EA.displayName;var Xa=Qe("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),PA=B.forwardRef((a,A)=>{let e=(0,b.c)(15),t,o,G,s;e[0]===a?(t=e[1],o=e[2],G=e[3],s=e[4]):({side:s,className:o,children:t,...G}=a,e[0]=a,e[1]=t,e[2]=o,e[3]=G,e[4]=s);let R=s===void 0?"right":s,r;e[5]===Symbol.for("react.memo_cache_sentinel")?(r=(0,n.jsx)(QA,{}),e[5]=r):r=e[5];let k;e[6]!==o||e[7]!==R?(k=Y(Xa({side:R}),o),e[6]=o,e[7]=R,e[8]=k):k=e[8];let i;e[9]===Symbol.for("react.memo_cache_sentinel")?(i=(0,n.jsxs)(Ie,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",children:[(0,n.jsx)(Za,{className:"h-4 w-4"}),(0,n.jsx)("span",{className:"sr-only",children:"Close"})]}),e[9]=i):i=e[9];let l;return e[10]!==t||e[11]!==G||e[12]!==A||e[13]!==k?(l=(0,n.jsx)(Wa,{children:(0,n.jsxs)(Le,{children:[r,(0,n.jsxs)(CA,{ref:A,className:k,...G,children:[t,i]})]})}),e[10]=t,e[11]=G,e[12]=A,e[13]=k,e[14]=l):l=e[14],l});PA.displayName=CA.displayName;var Ja=a=>{let A=(0,b.c)(8),e,t;A[0]===a?(e=A[1],t=A[2]):({className:e,...t}=a,A[0]=a,A[1]=e,A[2]=t);let o;A[3]===e?o=A[4]:(o=Y("flex flex-col space-y-2 text-center sm:text-left",e),A[3]=e,A[4]=o);let G;return A[5]!==t||A[6]!==o?(G=(0,n.jsx)("div",{className:o,...t}),A[5]=t,A[6]=o,A[7]=G):G=A[7],G};Ja.displayName="SheetHeader";var za=a=>{let A=(0,b.c)(8),e,t;A[0]===a?(e=A[1],t=A[2]):({className:e,...t}=a,A[0]=a,A[1]=e,A[2]=t);let o;A[3]===e?o=A[4]:(o=Y("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),A[3]=e,A[4]=o);let G;return A[5]!==t||A[6]!==o?(G=(0,n.jsx)("div",{className:o,...t}),A[5]=t,A[6]=o,A[7]=G):G=A[7],G};za.displayName="SheetFooter";var $a=B.forwardRef((a,A)=>{let e=(0,b.c)(9),t,o;e[0]===a?(t=e[1],o=e[2]):({className:t,...o}=a,e[0]=a,e[1]=t,e[2]=o);let G;e[3]===t?G=e[4]:(G=Y("text-lg font-semibold text-foreground",t),e[3]=t,e[4]=G);let s;return e[5]!==o||e[6]!==A||e[7]!==G?(s=(0,n.jsx)(bA,{ref:A,className:G,...o}),e[5]=o,e[6]=A,e[7]=G,e[8]=s):s=e[8],s});$a.displayName=bA.displayName;var At=B.forwardRef((a,A)=>{let e=(0,b.c)(9),t,o;e[0]===a?(t=e[1],o=e[2]):({className:t,...o}=a,e[0]=a,e[1]=t,e[2]=o);let G;e[3]===t?G=e[4]:(G=Y("text-sm text-muted-foreground",t),e[3]=t,e[4]=G);let s;return e[5]!==o||e[6]!==A||e[7]!==G?(s=(0,n.jsx)(yA,{ref:A,className:G,...o}),e[5]=o,e[6]=A,e[7]=G,e[8]=s):s=e[8],s});At.displayName=yA.displayName;var et=h();const BA=(0,B.memo)(()=>{let a=(0,et.c)(1),A;return a[0]===Symbol.for("react.memo_cache_sentinel")?(A=(0,n.jsx)(Ue,{name:MA.SIDEBAR}),a[0]=A):A=a[0],A});BA.displayName="SidebarSlot";var at=h();const tt=a=>{let A=(0,at.c)(6),{openWidth:e}=a,t;A[0]===Symbol.for("react.memo_cache_sentinel")?(t=(0,n.jsx)(qa,{className:"lg:hidden",asChild:!0,children:(0,n.jsx)(cA,{variant:"ghost",className:"bg-background",children:(0,n.jsx)(SA,{className:"w-5 h-5"})})}),A[0]=t):t=A[0];let o;A[1]===e?o=A[2]:(o={maxWidth:e},A[1]=e,A[2]=o);let G;A[3]===Symbol.for("react.memo_cache_sentinel")?(G=(0,n.jsx)(BA,{}),A[3]=G):G=A[3];let s;return A[4]===o?s=A[5]:(s=(0,n.jsxs)(Va,{children:[t,(0,n.jsx)(PA,{className:"w-full px-3 h-full flex flex-col overflow-y-auto",style:o,side:"left",children:G})]}),A[4]=o,A[5]=s),s};var Gt=h();const ot=a=>{let A=(0,Gt.c)(7),{isOpen:e,toggle:t}=a,o=e?"rotate-0":"rotate-180",G;A[0]===o?G=A[1]:(G=Y("h-5 w-5 transition-transform ease-in-out duration-700",o),A[0]=o,A[1]=G);let s;A[2]===G?s=A[3]:(s=(0,n.jsx)(qe,{className:G}),A[2]=G,A[3]=s);let R;return A[4]!==s||A[5]!==t?(R=(0,n.jsx)("div",{className:"invisible lg:visible absolute top-[12px] right-[16px] z-20",children:(0,n.jsx)(cA,{onClick:t,className:"w-10 h-8",variant:"ghost",size:"icon",children:s})}),A[4]=s,A[5]=t,A[6]=R):R=A[6],R};var st=h();const rt=a=>{let A=(0,st.c)(11),{isOpen:e,toggle:t,width:o}=a,G=e?o:De,s;A[0]===G?s=A[1]:(s={width:G},A[0]=G,A[1]=s);let R;A[2]===Symbol.for("react.memo_cache_sentinel")?(R=Y("app-sidebar auto-collapse-nav","top-0 left-0 z-20 h-full hidden lg:block relative transition-[width] ease-in-out duration-300"),A[2]=R):R=A[2];let r;A[3]!==e||A[4]!==t?(r=(0,n.jsx)(ot,{isOpen:e,toggle:t}),A[3]=e,A[4]=t,A[5]=r):r=A[5];let k;A[6]===Symbol.for("react.memo_cache_sentinel")?(k=(0,n.jsx)("div",{className:"relative h-full flex flex-col px-3 pb-16 pt-14 overflow-y-auto shadow-sm border-l",children:(0,n.jsx)(BA,{})}),A[6]=k):k=A[6];let i;return A[7]!==e||A[8]!==s||A[9]!==r?(i=(0,n.jsxs)("aside",{"data-expanded":e,style:s,className:R,children:[r,k]}),A[7]=e,A[8]=s,A[9]=r,A[10]=i):i=A[10],i};var nt=h();const kt=a=>{let A=(0,nt.c)(15),{children:e}=a,[t,o]=fA(xe),{isOpen:G,width:s}=t;if(Ve(MA.SIDEBAR).length===0)return e;let R;A[0]===s?R=A[1]:(R=pe(s),A[0]=s,A[1]=R);let r=R,k;A[2]!==o||A[3]!==G?(k=()=>o({type:"toggle",isOpen:!G}),A[2]=o,A[3]=G,A[4]=k):k=A[4];let i;A[5]!==G||A[6]!==r||A[7]!==k?(i=(0,n.jsx)(rt,{isOpen:G,width:r,toggle:k}),A[5]=G,A[6]=r,A[7]=k,A[8]=i):i=A[8];let l;A[9]===r?l=A[10]:(l=(0,n.jsx)("div",{className:"absolute top-3 left-4 flex items-center z-50",children:(0,n.jsx)(tt,{openWidth:r})}),A[9]=r,A[10]=l);let c;return A[11]!==e||A[12]!==i||A[13]!==l?(c=(0,n.jsxs)("div",{className:"inset-0 absolute flex",children:[i,l,e]}),A[11]=e,A[12]=i,A[13]=l,A[14]=c):c=A[14],c};var it=h();const Rt=a=>{let A=(0,it.c)(17),{width:e,connection:t,isRunning:o,children:G}=a,s=t.state,R;A[0]===o?R=A[1]:(R=(0,n.jsx)(La,{isRunning:o}),A[0]=o,A[1]=R);let r;A[2]!==t||A[3]!==o?(r=(0,n.jsx)(Ta,{connection:t,isRunning:o}),A[2]=t,A[3]=o,A[4]=r):r=A[4];let k;A[5]!==s||A[6]!==e?(k=Y("mathjax_ignore",Me(s)&&"disconnected","bg-background w-full h-full text-textColor","flex flex-col overflow-y-auto",e==="full"&&"config-width-full",e==="columns"?"overflow-x-auto":"overflow-x-hidden","print:height-fit"),A[5]=s,A[6]=e,A[7]=k):k=A[7];let i;A[8]!==G||A[9]!==s||A[10]!==k||A[11]!==e?(i=(0,n.jsx)(Ma,{children:(0,n.jsx)(kt,{children:(0,n.jsx)("div",{id:"App","data-config-width":e,"data-connection-state":s,className:k,children:G})})}),A[8]=G,A[9]=s,A[10]=k,A[11]=e,A[12]=i):i=A[12];let l;return A[13]!==R||A[14]!==r||A[15]!==i?(l=(0,n.jsxs)(n.Fragment,{children:[R,r,i]}),A[13]=R,A[14]=r,A[15]=i,A[16]=l):l=A[16],l};function lt(a){return a.kind==="missing"}function LA(a){return a.kind==="installing"}var{valueAtom:Zt,useActions:ct}=We(()=>({packageAlert:null,startupLogsAlert:null,packageLogs:{}}),{addPackageAlert:(a,A)=>{var o;let e={...a.packageLogs};if(LA(A)&&A.logs&&A.log_status)for(let[G,s]of Object.entries(A.logs))switch(A.log_status){case"start":e[G]=s;break;case"append":e[G]=(e[G]||"")+s;break;case"done":e[G]=(e[G]||"")+s;break}let t=((o=a.packageAlert)==null?void 0:o.id)||ia();return{...a,packageAlert:{id:t,...A},packageLogs:e}},clearPackageAlert:(a,A)=>a.packageAlert!==null&&a.packageAlert.id===A?{...a,packageAlert:null,packageLogs:{}}:a,addStartupLog:(a,A)=>{var t;let e=((t=a.startupLogsAlert)==null?void 0:t.content)||"";return{...a,startupLogsAlert:{...a.startupLogsAlert,content:e+A.content,status:A.status}}},clearStartupLogsAlert:a=>({...a,startupLogsAlert:null})});const gt=()=>y(Zt);function OA(){return ct()}var TA=h();const IA=(0,B.memo)(a=>{let A=(0,TA.c)(11),{appConfig:e,mode:t,children:o}=a,{selectedLayout:G,layoutData:s}=$e(),R=y(wA);if(t==="edit"&&!R)return o;let r;if(A[0]!==t||A[1]!==G){r=G;let c=new URLSearchParams(window.location.search);if(t==="read"&&c.has(RA.viewAs)){let g=c.get(RA.viewAs);ma.includes(g)&&(r=g)}A[0]=t,A[1]=G,A[2]=r}else r=A[2];let k;A[3]===r?k=A[4]:(k=ea.find(c=>c.type===r),A[3]=r,A[4]=k);let i=k;if(!i)return o;let l;return A[5]!==e||A[6]!==r||A[7]!==s||A[8]!==t||A[9]!==i?(l=(0,n.jsx)(dt,{appConfig:e,mode:t,plugin:i,layoutData:s,finalLayout:r}),A[5]=e,A[6]=r,A[7]=s,A[8]=t,A[9]=i,A[10]=l):l=A[10],l});IA.displayName="CellsRenderer";const dt=a=>{let A=(0,TA.c)(18),{appConfig:e,mode:t,plugin:o,layoutData:G,finalLayout:s}=a,R=JA(),{setCurrentLayoutData:r}=_A(),k,i,l,c,g;if(A[0]!==e||A[1]!==s||A[2]!==G||A[3]!==t||A[4]!==R||A[5]!==o){let w=Re(R);k=o.Component,i=e,l=t,c=w,g=G[s]||o.getInitialLayout(w),A[0]=e,A[1]=s,A[2]=G,A[3]=t,A[4]=R,A[5]=o,A[6]=k,A[7]=i,A[8]=l,A[9]=c,A[10]=g}else k=A[6],i=A[7],l=A[8],c=A[9],g=A[10];let u;return A[11]!==k||A[12]!==r||A[13]!==i||A[14]!==l||A[15]!==c||A[16]!==g?(u=(0,n.jsx)(k,{appConfig:i,mode:l,cells:c,layout:g,setLayout:r}),A[11]=k,A[12]=r,A[13]=i,A[14]=l,A[15]=c,A[16]=g,A[17]=u):u=A[17],u};var ht=class KA{constructor(A){kA(this,"hasStarted",!1);kA(this,"handleReadyEvent",A=>{let e=A.detail.objectId;if(!this.uiElementRegistry.has(e))return;let t=this.uiElementRegistry.lookupValue(e);t!==void 0&&this.sendComponentValues({objectIds:[e],values:[t]}).catch(o=>{p.warn(o)})});this.uiElementRegistry=A}static get INSTANCE(){let A="_marimo_private_RuntimeState";return window[A]||(window[A]=new KA(Q)),window[A]}get sendComponentValues(){if(!this._sendComponentValues)throw Error("sendComponentValues is not set");return this._sendComponentValues}start(A){if(this.hasStarted){p.warn("RuntimeState already started");return}this._sendComponentValues=A,document.addEventListener(FA.TYPE,this.handleReadyEvent),this.hasStarted=!0}stop(){if(!this.hasStarted){p.warn("RuntimeState already stopped");return}document.removeEventListener(FA.TYPE,this.handleReadyEvent),this.hasStarted=!1}},Bt=h();function ut(a){if(a.static)return Be.empty();if(lA())return me();let A=a.url;return new ua(A,void 0,{maxRetries:10,debug:!1,startClosed:!0,connectionTimeout:1e4})}function mt(a){let A=(0,Bt.c)(15),{onOpen:e,onMessage:t,onClose:o,onError:G,waitToConnect:s}=a,R;A[0]!==o||A[1]!==G||A[2]!==t||A[3]!==e||A[4]!==a?(R=()=>{let l=ut(a);return l.addEventListener("open",e),l.addEventListener("close",o),l.addEventListener("error",G),l.addEventListener("message",t),l},A[0]=o,A[1]=G,A[2]=t,A[3]=e,A[4]=a,A[5]=R):R=A[5];let[r]=(0,B.useState)(R),k;A[6]!==o||A[7]!==G||A[8]!==t||A[9]!==e||A[10]!==r||A[11]!==s?(k=()=>(r.readyState===WebSocket.CLOSED&&s().then(()=>r.reconnect()).catch(l=>{p.error("Healthy connection never made",l),r.close()}),()=>{p.warn("useConnectionTransport is unmounting. This likely means there is a bug."),r.close(),r.removeEventListener("open",e),r.removeEventListener("close",o),r.removeEventListener("error",G),r.removeEventListener("message",t)}),A[6]=o,A[7]=G,A[8]=t,A[9]=e,A[10]=r,A[11]=s,A[12]=k):k=A[12];let i;return A[13]===r?i=A[14]:(i=[r],A[13]=r,A[14]=i),(0,B.useEffect)(k,i),r}function Yt(a){let{codes:A,names:e,configs:t,cell_ids:o,last_executed_code:G,last_execution_time:s}=a,R=G||{},r=s||{};return A.map((k,i)=>{let l=o[i],c=R[l];return ee({id:l,code:k,edited:c?c!==k:!1,name:e[i],lastCodeRun:R[l]??null,lastExecutionTime:r[l]??null,config:t[i]})})}function ft(a,A,e){let t=Aa(),{layout:o}=a;if(o){let G=o.type,s=aa({type:G,data:o.data,cells:A});t.selectedLayout=G,t.layoutData[G]=s,e({layoutView:G,data:s})}return t}function pt(){let a=[],A=[];return Q.entries.forEach((e,t)=>{a.push(t),A.push(e.value)}),{objectIds:a,values:A}}function xt(a,A){let{existingCells:e,autoInstantiate:t,setCells:o,setLayoutData:G,setAppConfig:s,setCapabilities:R,setKernelState:r,onError:k}=A,{resumed:i,ui_values:l,app_config:c,capabilities:g,auto_instantiated:u}=a,w=e&&e.length>0,C=w&&!i?e:Yt(a);o(C,ft(a,C,G));let v=Ce.safeParse(c);if(v.success?s(v.data):p.error("Failed to parse app config",v.error),R(g),u)return;if(i){for(let[m,j]of DA.entries(l||{})){let F=m;Q.set(F,j)}return}let{objectIds:M,values:N}=pt(),_=w?Object.fromEntries(e.map(m=>[m.id,m.code])):void 0;Je().sendInstantiate({objectIds:M,values:N,autoRun:t,codes:_}).then(()=>{r({isInstantiated:!0,error:null})}).catch(m=>{r({isInstantiated:!1,error:m}),k(Error("Failed to instantiate",{cause:m}))})}function wt(a){let A=a.cell_id;Q.removeElementsByCell(A),NA.INSTANCE.removeForCellId(A)}function Dt(a,A){A(a),NA.INSTANCE.track(a)}const $={append:a=>{let A=new URL(window.location.href);A.searchParams.append(a.key,a.value),window.history.pushState({},"",`${A.pathname}${A.search}`)},set:a=>{let A=new URL(window.location.href);Array.isArray(a.value)?(A.searchParams.delete(a.key),a.value.forEach(e=>A.searchParams.append(a.key,e))):A.searchParams.set(a.key,a.value),window.history.pushState({},"",`${A.pathname}${A.search}`)},delete:a=>{let A=new URL(window.location.href);a.value==null?A.searchParams.delete(a.key):A.searchParams.delete(a.key,a.value),window.history.pushState({},"",`${A.pathname}${A.search}`)},clear:()=>{let a=new URL(window.location.href);a.search="",window.history.pushState({},"",`${a.pathname}${a.search}`)}};var vt=h();function Et(){return Object.values(iA().cellData).filter(a=>a.id!==ke)}function yt(a){let A=(0,vt.c)(41),e=(0,B.useRef)(!0),{autoInstantiate:t,sessionId:o,setCells:G}=a,{showBoundary:s}=Se(),{handleCellMessage:R}=pA(),r;A[0]===Symbol.for("react.memo_cache_sentinel")?(r={skipMiddleware:!0},A[0]=r):r=A[0];let k=pA(r),i;A[1]===k?i=A[2]:(i=d=>{Ze(d.changes,k,Ft)},A[1]=k,A[2]=i);let l=i,{addCellNotification:c}=Ya(),g=S(ka),u=be(),{setVariables:w,setMetadata:C}=$A(),{addColumnPreview:v}=xA(),{addDatasets:M,filterDatasetsFromVariables:N}=xA(),{addDataSourceConnection:_,filterDataSourcesFromVariables:m}=XA(),{setLayoutData:j}=_A(),[F,D]=fA(_e),{addBanner:AA}=de(),{addPackageAlert:T,addStartupLog:eA}=OA(),aA=S(wA),tA=S(WA),E=Ne(),GA=S(ha),oA=S(ve),{setNamespaces:sA,filterFromVariables:rA}=Ga(),I;A[3]!==AA||A[4]!==c||A[5]!==v||A[6]!==_||A[7]!==M||A[8]!==T||A[9]!==eA||A[10]!==t||A[11]!==m||A[12]!==N||A[13]!==rA||A[14]!==R||A[15]!==l||A[16]!==u||A[17]!==GA||A[18]!==tA||A[19]!==G||A[20]!==oA||A[21]!==g||A[22]!==aA||A[23]!==j||A[24]!==C||A[25]!==sA||A[26]!==w||A[27]!==s?(I=d=>{let Z=ae(d.data);switch(Z.data.op){case"reload":jA();return;case"kernel-ready":{let f=Et();xt(Z.data,{autoInstantiate:t,setCells:G,setLayoutData:j,setAppConfig:u,setCapabilities:tA,setKernelState:g,onError:s,existingCells:f}),aA(Z.data.kiosk);return}case"completed-run":return;case"interrupted":return;case"kernel-startup-error":oA(Z.data.error);return;case"send-ui-element-message":{let f=Z.data.ui_element;if(f){let HA=sa(Z.data);Q.broadcastMessage(f,Z.data.message,HA)}return}case"model-lifecycle":ue(we,Z.data);return;case"remove-ui-elements":wt(Z.data);return;case"completion-result":ce.resolve(Z.data.completion_id,Z.data);return;case"function-call-result":Ye.resolve(Z.data.function_call_id,Z.data);return;case"cell-op":{Dt(Z.data,R);let f=iA().cellData[Z.data.cell_id];if(!f)return;c({cellNotification:Z.data,code:f.code});return}case"variables":w(Z.data.variables.map(jt)),N(Z.data.variables.map(_t)),m(Z.data.variables.map(Nt)),rA(Z.data.variables.map(Mt));return;case"variable-values":C(Z.data.variables.map(bt));return;case"alert":z({title:Z.data.title,description:la({html:Z.data.description}),variant:Z.data.variant});return;case"banner":AA(Z.data);return;case"missing-package-alert":T({...Z.data,kind:"missing"});return;case"installing-package-alert":T({...Z.data,kind:"installing"});return;case"startup-logs":eA({content:Z.data.content,status:Z.data.status});return;case"query-params-append":$.append(Z.data);return;case"query-params-set":$.set(Z.data);return;case"query-params-delete":$.delete(Z.data);return;case"query-params-clear":$.clear();return;case"datasets":M(Z.data);return;case"data-column-preview":v(Z.data);return;case"sql-table-preview":oe.resolve(Z.data.request_id,Z.data);return;case"sql-table-list-preview":zA.resolve(Z.data.request_id,Z.data);return;case"sql-schema-list-preview":Ge.resolve(Z.data.request_id,Z.data);return;case"validate-sql-result":Ae.resolve(Z.data.request_id,Z.data);return;case"secret-keys-result":Ba.resolve(Z.data.request_id,Z.data);return;case"cache-info":GA(Z.data);return;case"cache-cleared":return;case"data-source-connections":_({connections:Z.data.connections.map(Ct)});return;case"storage-namespaces":sA(Z.data);return;case"storage-entries":oa.resolve(Z.data.request_id,Z.data);return;case"storage-download-ready":ta.resolve(Z.data.request_id,Z.data);return;case"reconnected":return;case"focus-cell":ge(Z.data.cell_id);return;case"notebook-document-transaction":l(Z.data.transaction);return;default:Xe(Z.data)}},A[3]=AA,A[4]=c,A[5]=v,A[6]=_,A[7]=M,A[8]=T,A[9]=eA,A[10]=t,A[11]=m,A[12]=N,A[13]=rA,A[14]=R,A[15]=l,A[16]=u,A[17]=GA,A[18]=tA,A[19]=G,A[20]=oA,A[21]=g,A[22]=aA,A[23]=j,A[24]=C,A[25]=sA,A[26]=w,A[27]=s,A[28]=I):I=A[28];let nA=I,uA=(d,Z)=>{e.current&&(e.current=!1,W.reconnect(d,Z))},K;A[29]===Symbol.for("react.memo_cache_sentinel")?(K=vA(),A[29]=K):K=A[29];let H;A[30]!==E||A[31]!==o?(H=()=>E.getWsURL(o).toString(),A[30]=E,A[31]=o,A[32]=H):H=A[32];let U;A[33]===D?U=A[34]:(U=async()=>{e.current=!0,D({state:x.OPEN})},A[33]=D,A[34]=U);let V;A[35]===E?V=A[36]:(V=async()=>{vA()||lA()||E.isSameOrigin||await E.waitForHealthy()},A[35]=E,A[36]=V);let q;A[37]===nA?q=A[38]:(q=d=>{try{nA(d)}catch(Z){let f=Z;p.error("Failed to handle message",d.data,f),z({title:"Failed to handle message",description:gA(f),variant:"danger"})}},A[37]=nA,A[38]=q);let W=mt({static:K,url:H,onOpen:U,waitToConnect:V,onMessage:q,onClose:d=>{switch(p.warn("WebSocket closed",d.code,d.reason),d.reason){case"MARIMO_ALREADY_CONNECTED":D({state:x.CLOSED,code:P.ALREADY_RUNNING,reason:"another browser tab is already connected to the kernel",canTakeover:!0}),W.close();return;case"MARIMO_WRONG_KERNEL_ID":case"MARIMO_NO_FILE_KEY":case"MARIMO_NO_SESSION_ID":case"MARIMO_NO_SESSION":case"MARIMO_SHUTDOWN":D({state:x.CLOSED,code:P.KERNEL_DISCONNECTED,reason:"kernel not found"}),W.close();return;case"MARIMO_MALFORMED_QUERY":D({state:x.CLOSED,code:P.MALFORMED_QUERY,reason:"the kernel did not recognize a request; please file a bug with marimo"});return;default:if(d.reason==="MARIMO_KERNEL_STARTUP_ERROR"){D({state:x.CLOSED,code:P.KERNEL_STARTUP_ERROR,reason:"Failed to start kernel sandbox"}),W.close();return}D({state:x.CONNECTING}),uA(d.code,d.reason)}},onError:d=>{p.warn("WebSocket error",d),D({state:x.CLOSED,code:P.KERNEL_DISCONNECTED,reason:"kernel not found"}),uA()}}),X;return A[39]===F?X=A[40]:(X={connection:F},A[39]=F,A[40]=X),X}function Ct(a){return{...a,name:a.name}}function bt(a){return{name:a.name,dataType:a.datatype,value:a.value}}function Mt(a){return a.name}function Nt(a){return a.name}function _t(a){return a.name}function jt(a){return{name:a.name,declaredBy:a.declared_by,usedBy:a.used_by}}function Ft(){return iA().cellIds.inOrderIds}var St=h();const Qt=a=>{let A=(0,St.c)(2),{children:e}=a,t;return A[0]===e?t=A[1]:(t=(0,n.jsx)("div",{className:"flex flex-col flex-1 overflow-hidden absolute inset-0 print:relative",children:e}),A[0]=e,A[1]=t),t};export{LA as a,gt as c,SA as d,IA as i,Rt as l,yt as n,lt as o,ht as r,OA as s,Qt as t,ya as u};
1
+ var UA=Object.defineProperty;var VA=(a,A,e)=>A in a?UA(a,A,{enumerable:!0,configurable:!0,writable:!0,value:e}):a[A]=e;var kA=(a,A,e)=>VA(a,typeof A!="symbol"?A+"":A,e);import{s as mA}from"./chunk-LvLJmgfZ.js";import{d as S,i as YA,l as fA,u as y}from"./useEvent-D91BmmQi.js";import{t as qA}from"./react-Bj1aDYRI.js";import{Cn as WA,Dr as XA,E as pA,F as JA,Gt as zA,In as $A,Kt as Ae,L as ee,Li as ae,Mr as xA,T as te,Ut as Ge,Wt as oe,b as se,g as re,h as iA,it as ne,ji as ke,k as ie,l as Re,lt as le,ot as wA,rt as Ze,vn as ce,z as ge}from"./cells-BBDzmUIS.js";import{t as h}from"./compiler-runtime-B3qBwwSJ.js";import{C as de,_ as he,b as Be,c as ue,h as me,i as Ye,m as fe,n as pe,o as Q,r as xe,s as we,t as De,x as ve,y as Ee}from"./state-BaHWS0qi.js";import{_ as p,d as DA,t as ye}from"./useEventListener-BR0C1MaI.js";import{C as Ce,b as be}from"./utils-BrXijSdZ.js";import{r as RA}from"./constants-DMpttj8Q.js";import{C as P,T as lA,d as Me,l as vA,o as Ne,v as _e,w as x}from"./config-CPqw1wUv.js";import{n as je,o as Fe}from"./switch-BvybnC9P.js";import{n as Se}from"./ErrorBoundary-DzYV_VeY.js";import{n as Qe,t as Y}from"./cn-DCUzRj2J.js";import{t as Pe}from"./jsx-runtime-BqBOg78p.js";import{a as Le,n as Oe}from"./fullscreen-BDxedMYP.js";import{_ as Te,f as Ie,g as Ke,h as EA,m as yA,p as CA,v as bA,y as He}from"./alert-dialog-BGBdrcqJ.js";import{dt as Ue,ft as Ve,st as MA}from"./JsonOutput-B0sjIMBK.js";import{h as qe}from"./download-QGh9oR1D.js";import{t as ZA}from"./tooltip-Gcwqb_SK.js";import{t as cA}from"./button-D9nb17Rw.js";import{t as We}from"./createReducer-1ePoj7v6.js";import{i as Xe}from"./strings-md4mFbOQ.js";import{t as Je}from"./requests-DIwGYs0l.js";import{t as J}from"./createLucideIcon-D5guW7EU.js";import{N as ze,P as NA,a as $e,i as _A,n as Aa,o as ea,s as aa}from"./layout-D5myrs5s.js";import{o as ta,r as Ga,s as oa}from"./state-B34hXjp9.js";import{c as sa}from"./markdown-renderer-CVd_mMPt.js";import{n as ra}from"./spinner-Bhir8k53.js";import{i as na,n as ka}from"./readonly-python-code-DOXF2p8K.js";import{t as ia}from"./uuid-DercMavo.js";import{t as z}from"./use-toast-T0_cQDma.js";import{i as Ra}from"./session-VtovaFBS.js";import{t as la}from"./RenderHTML-CruxVneu.js";import{r as jA}from"./share-CqnSBwZy.js";import{r as gA}from"./errors-CPlNr33a.js";import{s as Za}from"./react-icons.esm-D9xfKaPZ.js";import{r as FA}from"./events-BRAWQiYK.js";import{i as ca}from"./cell-link-DqiCeeeS.js";import{t as ga}from"./error-banner-C10O4l3y.js";import{n as da}from"./useAsyncData-BFC6lWG9.js";import{t as ha}from"./requests-QKoDeQkn.js";import{t as Ba}from"./request-registry-5ELz5pd2.js";import{t as ua}from"./ws-BZQmQxZ7.js";import{n as ma}from"./types-Bhw3Hco_.js";import{n as Ya}from"./runs-DRld30N_.js";var fa=J("hourglass",[["path",{d:"M5 22h14",key:"ehvnwv"}],["path",{d:"M5 2h14",key:"pdyrp9"}],["path",{d:"M17 22v-4.172a2 2 0 0 0-.586-1.414L12 12l-4.414 4.414A2 2 0 0 0 7 17.828V22",key:"1d314k"}],["path",{d:"M7 2v4.172a2 2 0 0 0 .586 1.414L12 12l4.414-4.414A2 2 0 0 0 17 6.172V2",key:"1vvvr6"}]]),SA=J("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]),pa=J("square-arrow-right",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M8 12h8",key:"1wcyev"}],["path",{d:"m12 16 4-4-4-4",key:"1i9zcv"}]]),xa=J("unlink",[["path",{d:"m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71",key:"yqzxt4"}],["path",{d:"m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71",key:"4qinb0"}],["line",{x1:"8",x2:"8",y1:"2",y2:"5",key:"1041cp"}],["line",{x1:"2",x2:"5",y1:"8",y2:"8",key:"14m1p5"}],["line",{x1:"16",x2:"16",y1:"19",y2:"22",key:"rzdirn"}],["line",{x1:"19",x2:"22",y1:"16",y2:"16",key:"ox905f"}]]),wa=h(),n=mA(Pe(),1);const Da=a=>{let A=(0,wa.c)(10),{reason:e,canTakeover:t}=a,o=t===void 0?!1:t,G=va;if(o){let R;A[0]===Symbol.for("react.memo_cache_sentinel")?(R=(0,n.jsx)("div",{className:"flex justify-between",children:(0,n.jsx)("span",{className:"font-bold text-xl flex items-center mb-2",children:"Notebook already connected"})}),A[0]=R):R=A[0];let r;A[1]===e?r=A[2]:(r=(0,n.jsx)("span",{children:e}),A[1]=e,A[2]=r);let k;A[3]===o?k=A[4]:(k=o&&(0,n.jsxs)(cA,{onClick:G,variant:"outline","data-testid":"takeover-button",className:"shrink-0",children:[(0,n.jsx)(pa,{className:"w-4 h-4 mr-2"}),"Take over session"]}),A[3]=o,A[4]=k);let i;return A[5]!==r||A[6]!==k?(i=(0,n.jsx)("div",{className:"flex justify-center",children:(0,n.jsxs)(ga,{kind:"info",className:"mt-10 flex flex-col rounded p-3 max-w-[800px] mx-4",children:[R,(0,n.jsxs)("div",{className:"flex justify-between items-end text-base gap-20",children:[r,k]})]})}),A[5]=r,A[6]=k,A[7]=i):i=A[7],i}let s;return A[8]===e?s=A[9]:(s=(0,n.jsx)("div",{className:"font-mono text-center text-base text-(--red-11)",children:(0,n.jsx)("p",{children:e})}),A[8]=e,A[9]=s),s};async function va(){try{let a=new URL(window.location.href).searchParams;await je.post(`/kernel/takeover?${a.toString()}`,{}),jA()}catch(a){z({title:"Failed to take over session",description:gA(a),variant:"danger"})}}var Ea=h(),B=mA(qA(),1);const ya=a=>{let A=(0,Ea.c)(8),{connection:e,className:t,children:o}=a,G;A[0]!==e.canTakeover||A[1]!==e.reason||A[2]!==e.state?(G=e.state===x.CLOSED&&(0,n.jsx)(Da,{reason:e.reason,canTakeover:e.canTakeover}),A[0]=e.canTakeover,A[1]=e.reason,A[2]=e.state,A[3]=G):G=A[3];let s;return A[4]!==o||A[5]!==t||A[6]!==G?(s=(0,n.jsxs)("div",{className:t,children:[o,G]}),A[4]=o,A[5]=t,A[6]=G,A[7]=s):s=A[7],s};var Ca=h();const ba=a=>{let A=(0,Ca.c)(10),{title:e}=a,[t,o]=(0,B.useState)(e),[G,s]=(0,B.useState)(!0),R,r;A[0]!==t||A[1]!==e?(R=()=>{if(e!==t){s(!1);let g=setTimeout(()=>{o(e),s(!0)},300);return()=>clearTimeout(g)}},r=[e,t],A[0]=t,A[1]=e,A[2]=R,A[3]=r):(R=A[2],r=A[3]),(0,B.useEffect)(R,r);let k;A[4]===Symbol.for("react.memo_cache_sentinel")?(k=(0,n.jsx)(ra,{className:"size-20 animate-spin text-primary","data-testid":"large-spinner",strokeWidth:1}),A[4]=k):k=A[4];let i=G?"opacity-100":"opacity-0",l;A[5]===i?l=A[6]:(l=Y("mt-2 text-muted-foreground font-semibold text-lg transition-opacity duration-300",i),A[5]=i,A[6]=l);let c;return A[7]!==t||A[8]!==l?(c=(0,n.jsxs)("div",{className:"flex flex-col h-full flex-1 items-center justify-center p-4",children:[k,(0,n.jsx)("div",{className:l,children:t})]}),A[7]=t,A[8]=l,A[9]=c):c=A[9],c};var dA=h();const Ma=a=>{let A=(0,dA.c)(2),{children:e}=a;if(!lA())return e;let t;return A[0]===e?t=A[1]:(t=(0,n.jsx)(Na,{children:e}),A[0]=e,A[1]=t),t};var Na=a=>{let A=(0,dA.c)(9),{children:e}=a,t;A[0]===Symbol.for("react.memo_cache_sentinel")?(t=[],A[0]=t):t=A[0];let{error:o}=da(Sa,t),G=y(re),s=y(he),R;A[1]!==G||A[2]!==s?(R=ja({hasCells:G,hasOutput:s,mode:ne(),codeHidden:_a()}),A[1]=G,A[2]=s,A[3]=R):R=A[3];let r=R,k=(0,B.useRef)(!1),i,l;if(A[4]!==o||A[5]!==r?(i=()=>{o&&!r&&!k.current&&(k.current=!0,p.error("Pyodide failed to initialize",o),z({title:"Failed to start the notebook runtime",description:gA(o),variant:"danger"}))},l=[o,r],A[4]=o,A[5]=r,A[6]=i,A[7]=l):(i=A[6],l=A[7]),(0,B.useEffect)(i,l),o&&r)throw o;if(r){let c;return A[8]===Symbol.for("react.memo_cache_sentinel")?(c=(0,n.jsx)(Fa,{}),A[8]=c):c=A[8],c}return e};function _a(){return Ra(RA.showCode,"false")||!YA.get(Fe)}function ja(a){let{hasCells:A,hasOutput:e,mode:t,codeHidden:o}=a;return A?!e&&t==="read"&&o:!0}const Fa=a=>{let A=(0,dA.c)(2),e=y(Ee),t;return A[0]===e?t=A[1]:(t=(0,n.jsx)(ba,{title:e}),A[0]=e,A[1]=t),t};async function Sa(){return await fe.INSTANCE.initialized.promise,!0}var Qa={idle:"./favicon.ico",success:"data:image/x-icon;base64,AAABAAEAMDAAAAEACACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAAAkAAAAAAAAAAAAAAAEAAAABAAAAAAAAXXQAAFd3AwBWeAQAVngEAFd4AwBXeAQAVnkEAFh3AwBXdwQAVXcGAFd4BQBXeAQAWHgEAFd6AwBXeAMAVnkEAFZ5AwBXdwQAV3cFAFd4BABYeAQAV3gEAFh4BABXeAQA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYYGAYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcYGBgYGBgYGBgYGBgYGAcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGBgYGBgYGBgYGBgYGBgYGBgYCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAsYGBgYGBgYDA0OChkZGRkKDg0MGBgYGBgYGAsAAAAAAAAAAAAAAAAAAAAAAAAAAxgYGBgYGA8QGRkZGRkZGRkZGRkZEA8YGBgYGBgDAAAAAAAAAAAAAAAAAAAAAAARGBgYGBgSChkZGRkZGRkZGRkZGRkZGRkKEhgYGBgYEQAAAAAAAAAAAAAAAAAAAAMYGBgYGBMZGRkZGRkZGRkZGRkZGRkZGRkZGRMYGBgYGAMAAAAAAAAAAAAAAAAACxgYGBgUEBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkQFBgYGBgLAAAAAAAAAAAAAAAKGBgYGBQKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChQYGBgYCgAAAAAAAAAAAAAEGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYBAAAAAAAAAAAAAgYGBgYExkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTGBgYGAgAAAAAAAAAAAkYGBgSGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZEhgYGAkAAAAAAAAAAhgYGBgKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChgYGBgCAAAAAAAABxgYGA8ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGQ8YGBgHAAAAAAABGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYAQAAAAACGBgYDBkZGRkZGRkZGRkZGRkXFhYVGRkZGRkZGRkZGRkZGRkZGRkMGBgYAgAAAAADGBgYDRkZGRkZGRkZGRkZGRcYGBgYFxkZGRkZGRkZGRkZGRkZGRkNGBgYAwAAAAAEGBgYDhkZGRkZGRkZGRkZFxgYGBgYGBcZGRkZGRkZGRkZGRkZGRkOGBgYBAAAAAAFGBgYChkZGRkZGRkZGRkXGBgYGBgYGBgXGRkZGRkZGRkZGRkZGRkKGBgYBQAAAAAGGBgYGRkZGRkZGRkZGRUYGBgYGBgYGBgYFxkZGRkZGRkZGRkZGRkZGBgYBgAAAAAYGBgYGRkZGRkZGRkZGRYYGBgYFxcYGBgYGBcZGRkZGRkZGRkZGRkZGBgYGAAAAAAYGBgYGRkZGRkZGRkZGRYYGBgXGRkXGBgYGBgXGRkZGRkZGRkZGRkZGBgYGAAAAAAGGBgYGRkZGRkZGRkZGRUWFhcZGRkZFxgYGBgYFxkZGRkZGRkZGRkZGBgYBgAAAAAFGBgYChkZGRkZGRkZGRkZGRkZGRkZGRcYGBgYGBcZGRkZGRkZGRkKGBgYBQAAAAAEGBgYDhkZGRkZGRkZGRkZGRkZGRkZGRkXGBgYGBYZGRkZGRkZGRkOGBgYBAAAAAADGBgYDRkZGRkZGRkZGRkZGRkZGRkZGRkZFxgYGBYZGRkZGRkZGRkNGBgYAwAAAAACGBgYDBkZGRkZGRkZGRkZGRkZGRkZGRkZGRUWFhUZGRkZGRkZGRkMGBgYAgAAAAABGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYAQAAAAAABxgYGA8ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGQ8YGBgHAAAAAAAAAhgYGBgKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChgYGBgCAAAAAAAAAAkYGBgSGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZEhgYGAkAAAAAAAAAAAgYGBgYExkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTGBgYGAgAAAAAAAAAAAAEGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYBAAAAAAAAAAAAAAKGBgYGBQKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChQYGBgYCgAAAAAAAAAAAAAACxgYGBgUEBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkQFBgYGBgLAAAAAAAAAAAAAAAAAAMYGBgYGBMZGRkZGRkZGRkZGRkZGRkZGRkZGRMYGBgYGAMAAAAAAAAAAAAAAAAAAAARGBgYGBgSChkZGRkZGRkZGRkZGRkZGRkKEhgYGBgYEQAAAAAAAAAAAAAAAAAAAAAAAxgYGBgYGA8QGRkZGRkZGRkZGRkZEA8YGBgYGBgDAAAAAAAAAAAAAAAAAAAAAAAAAAsYGBgYGBgYDA0OChkZGRkKDg0MGBgYGBgYGAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGBgYGBgYGBgYGBgYGBgYGBgYCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcYGBgYGBgYGBgYGBgYGAcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYYGAYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP//gAH//wAA//4AAH//AAD/+AAAH/8AAP/gAAAH/wAA/8AAAAP/AAD/gAAAAf8AAP8AAAAA/wAA/gAAAAB/AAD8AAAAAD8AAPgAAAAAHwAA+AAAAAAfAADwAAAAAA8AAPAAAAAADwAA4AAAAAAHAADgAAAAAAcAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADgAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAAAA8AAPgAAAAAHwAA+AAAAAAfAAD8AAAAAD8AAP4AAAAAfwAA/wAAAAD/AAD/gAAAAf8AAP/AAAAD/wAA/+AAAAf/AAD/+AAAH/8AAP/+AAB//wAA//+AAf//AAD///////8AAP///////wAA",running:"data:image/x-icon;base64,AAABAAEAMDAAAAEACACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAAAkAAAAAAAAAAAAAAAEAAAABAAAAAAAA0YsAAMWEAwDHgwIAx4QBAMeEAgDGhAIAyIUBAMaFAwDGhAIAxoIAAMaFAgDHhAIAx4QCAMiFAwDHhAIAx4YAAMaFAgDHhQEAxoMCAMeEAgDHgwQAx4QDAMeDAgDHhAIA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYYGAYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcYGBgYGBgYGBgYGBgYGAcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGBgYGBgYGBgYGBgYGBgYGBgYCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAsYGBgYGBgYDA0OChkZGRkKDg0MGBgYGBgYGAsAAAAAAAAAAAAAAAAAAAAAAAAAAxgYGBgYGA8QGRkZGRkZGRkZGRkZEA8YGBgYGBgDAAAAAAAAAAAAAAAAAAAAAAARGBgYGBgSChkZGRkZGRkZGRkZGRkZGRkKEhgYGBgYEQAAAAAAAAAAAAAAAAAAAAMYGBgYGBMZGRkZGRkZGRkZGRkZGRkZGRkZGRMYGBgYGAMAAAAAAAAAAAAAAAAACxgYGBgUEBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkQFBgYGBgLAAAAAAAAAAAAAAAKGBgYGBQKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChQYGBgYCgAAAAAAAAAAAAAEGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYBAAAAAAAAAAAAAgYGBgYExkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTGBgYGAgAAAAAAAAAAAkYGBgSGRkZGRkZGRkZFRgWFxkZGRkZGRkZGRkZGRkZGRkZEhgYGAkAAAAAAAAAAhgYGBgKGRkZGRkZGRkZFhgYGBYVGRkZGRkZGRkZGRkZGRkZChgYGBgCAAAAAAAABxgYGA8ZGRkZGRkZGRkZGBgYGBgYFxkZGRkZGRkZGRkZGRkZGQ8YGBgHAAAAAAABGBgYGBAZGRkZGRkZGRkZGBgYGBgYGBYVGRkZGRkZGRkZGRkZGRAYGBgYAQAAAAACGBgYDBkZGRkZGRkZGRkZGBgYGBgYGBgYFxkZGRkZGRkZGRkZGRkMGBgYAgAAAAADGBgYDRkZGRkZGRkZGRkZGBgYGBgYGBgYGBYVGRkZGRkZGRkZGRkNGBgYAwAAAAAEGBgYDhkZGRkZGRkZGRkZGBgYGBUWGBgYGBgYFxkZGRkZGRkZGRkOGBgYBAAAAAAFGBgYChkZGRkZGRkZGRkZGBgYGBkZFxgYGBgYGBYVGRkZGRkZGRkKGBgYBQAAAAAGGBgYGRkZGRkZGRkZGRkZGBgYGBkZGRUWGBgYGBgYFxkZGRkZGRkZGBgYBgAAAAAYGBgYGRkZGRkZGRkZGRkZGBgYGBkZGRkZFxgYGBgYFxkZGRkZGRkZGBgYGAAAAAAYGBgYGRkZGRkZGRkZGRkZGBgYGBkZGRkZFxgYGBgYFhkZGRkZGRkZGBgYGAAAAAAGGBgYGRkZGRkZGRkZGRkZGBgYGBkZGRkXGBgYGBgYFRkZGRkZGRkZGBgYBgAAAAAFGBgYChkZGRkZGRkZGRkZGBgYGBkZFxgYGBgYGBcZGRkZGRkZGRkKGBgYBQAAAAAEGBgYDhkZGRkZGRkZGRkZGBgYGBkXGBgYGBgYFxkZGRkZGRkZGRkOGBgYBAAAAAADGBgYDRkZGRkZGRkZGRkZGBgYGBgYGBgYGBcZGRkZGRkZGRkZGRkNGBgYAwAAAAACGBgYDBkZGRkZGRkZGRkZGBgYGBgYGBgYFxkZGRkZGRkZGRkZGRkMGBgYAgAAAAABGBgYGBAZGRkZGRkZGRkZGBgYGBgYGBcZGRkZGRkZGRkZGRkZGRAYGBgYAQAAAAAABxgYGA8ZGRkZGRkZGRkZGBgYGBgYFxkZGRkZGRkZGRkZGRkZGQ8YGBgHAAAAAAAAAhgYGBgKGRkZGRkZGRkZFhgYGBcZGRkZGRkZGRkZGRkZGRkZChgYGBgCAAAAAAAAAAkYGBgSGRkZGRkZGRkZFRYWFxkZGRkZGRkZGRkZGRkZGRkZEhgYGAkAAAAAAAAAAAgYGBgYExkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTGBgYGAgAAAAAAAAAAAAEGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYBAAAAAAAAAAAAAAKGBgYGBQKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChQYGBgYCgAAAAAAAAAAAAAACxgYGBgUEBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkQFBgYGBgLAAAAAAAAAAAAAAAAAAMYGBgYGBMZGRkZGRkZGRkZGRkZGRkZGRkZGRMYGBgYGAMAAAAAAAAAAAAAAAAAAAARGBgYGBgSChkZGRkZGRkZGRkZGRkZGRkKEhgYGBgYEQAAAAAAAAAAAAAAAAAAAAAAAxgYGBgYGA8QGRkZGRkZGRkZGRkZEA8YGBgYGBgDAAAAAAAAAAAAAAAAAAAAAAAAAAsYGBgYGBgYDA0OChkZGRkKDg0MGBgYGBgYGAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGBgYGBgYGBgYGBgYGBgYGBgYCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcYGBgYGBgYGBgYGBgYGAcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYYGAYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP//gAH//wAA//4AAH//AAD/+AAAH/8AAP/gAAAH/wAA/8AAAAP/AAD/gAAAAf8AAP8AAAAA/wAA/gAAAAB/AAD8AAAAAD8AAPgAAAAAHwAA+AAAAAAfAADwAAAAAA8AAPAAAAAADwAA4AAAAAAHAADgAAAAAAcAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADgAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAAAA8AAPgAAAAAHwAA+AAAAAAfAAD8AAAAAD8AAP4AAAAAfwAA/wAAAAD/AAD/gAAAAf8AAP/AAAAD/wAA/+AAAAf/AAD/+AAAH/8AAP/+AAB//wAA//+AAf//AAD///////8AAP///////wAA",error:"data:image/x-icon;base64,AAABAAEAMDAAAAEACACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAAAkAAAAAAAAAAAAAAAEAAAABAAAAAAAALi7oACcn2wAlJdsAJibcACYm3AAmJtsAJyfdACUl3QAmJtsAKCjdACUl3AAmJtwAJyfcACYm3AAoKNcAJibcACcn3AAmJt0AJibcACUl3AAmJtwAKCjbACcn3AAmJtsAJibcAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYZGQYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcZGRkZGRkZGRkZGRkZGQcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGRkZGRkZGRkZGRkZGRkZGRkZCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAsZGRkZGRkZDA0ODxoaGhoPDg0MGRkZGRkZGQsAAAAAAAAAAAAAAAAAAAAAAAAAAxkZGRkZGRARGhoaGhoaGhoaGhoaERAZGRkZGRkDAAAAAAAAAAAAAAAAAAAAAAASGRkZGRkTDxoaGhoaGhoaGhoaGhoaGhoPExkZGRkZEgAAAAAAAAAAAAAAAAAAAAMZGRkZGRQaGhoaGhoaGhoaGhoaGhoaGhoaGhQZGRkZGQMAAAAAAAAAAAAAAAAACxkZGRkVERoaGhoaGhoaGhoaGhoaGhoaGhoaGhoRFRkZGRkLAAAAAAAAAAAAAAAKGRkZGRUPGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaDxUZGRkZCgAAAAAAAAAAAAAEGRkZGREaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhEZGRkZBAAAAAAAAAAAAAgZGRkZFBoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoUGRkZGQgAAAAAAAAAAAkZGRkTGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaExkZGQkAAAAAAAAAAhkZGRkPGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaDxkZGRkCAAAAAAAABxkZGRAaGhoaGhoaGhYXFxYaGhoaGhoaGhgXFxYaGhoaGhoaGhAZGRkHAAAAAAABGRkZGREaGhoaGhoaGhcZGRkYGhoaGhoaGBkZGRcaGhoaGhoaGhEZGRkZAQAAAAACGRkZDBoaGhoaGhoaGhcZGRkZGBoaGhoYGRkZGRcaGhoaGhoaGhoMGRkZAgAAAAADGRkZDRoaGhoaGhoaGhgZGRkZGRgaGhgZGRkZGRYaGhoaGhoaGhoNGRkZAwAAAAAEGRkZDhoaGhoaGhoaGhoYGRkZGRkYGBkZGRkZGBoaGhoaGhoaGhoOGRkZBAAAAAAFGRkZDxoaGhoaGhoaGhoaGBkZGRkZGRkZGRkYGhoaGhoaGhoaGhoPGRkZBQAAAAAGGRkZGhoaGhoaGhoaGhoaGhgZGRkZGRkZGRgaGhoaGhoaGhoaGhoaGRkZBgAAAAAZGRkZGhoaGhoaGhoaGhoaGhoYGRkZGRkZGBoaGhoaGhoaGhoaGhoaGRkZGQAAAAAZGRkZGhoaGhoaGhoaGhoaGhoYGRkZGRkZGBoaGhoaGhoaGhoaGhoaGRkZGQAAAAAGGRkZGhoaGhoaGhoaGhoaGhgZGRkZGRkZGRgaGhoaGhoaGhoaGhoaGRkZBgAAAAAFGRkZDxoaGhoaGhoaGhoaGBkZGRkZGRkZGRkYGhoaGhoaGhoaGhoPGRkZBQAAAAAEGRkZDhoaGhoaGhoaGhoYGRkZGRkYGBkZGRkZGBoaGhoaGhoaGhoOGRkZBAAAAAADGRkZDRoaGhoaGhoaGhYZGRkZGRgaGhgZGRkZGRgaGhoaGhoaGhoNGRkZAwAAAAACGRkZDBoaGhoaGhoaGhcZGRkZGBoaGhoYGRkZGRcaGhoaGhoaGhoMGRkZAgAAAAABGRkZGREaGhoaGhoaGhcZGRkYGhoaGhoaGBkZGRcaGhoaGhoaGhEZGRkZAQAAAAAABxkZGRAaGhoaGhoaGhYXFxgaGhoaGhoaGhYXFxYaGhoaGhoaGhAZGRkHAAAAAAAAAhkZGRkPGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaDxkZGRkCAAAAAAAAAAkZGRkTGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaExkZGQkAAAAAAAAAAAgZGRkZFBoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoUGRkZGQgAAAAAAAAAAAAEGRkZGREaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhEZGRkZBAAAAAAAAAAAAAAKGRkZGRUPGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaDxUZGRkZCgAAAAAAAAAAAAAACxkZGRkVERoaGhoaGhoaGhoaGhoaGhoaGhoaGhoRFRkZGRkLAAAAAAAAAAAAAAAAAAMZGRkZGRQaGhoaGhoaGhoaGhoaGhoaGhoaGhQZGRkZGQMAAAAAAAAAAAAAAAAAAAASGRkZGRkTDxoaGhoaGhoaGhoaGhoaGhoPExkZGRkZEgAAAAAAAAAAAAAAAAAAAAAAAxkZGRkZGRARGhoaGhoaGhoaGhoaERAZGRkZGRkDAAAAAAAAAAAAAAAAAAAAAAAAAAsZGRkZGRkZDA0ODxoaGhoPDg0MGRkZGRkZGQsAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGRkZGRkZGRkZGRkZGRkZGRkZCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcZGRkZGRkZGRkZGRkZGQcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYZGQYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP//gAH//wAA//4AAH//AAD/+AAAH/8AAP/gAAAH/wAA/8AAAAP/AAD/gAAAAf8AAP8AAAAA/wAA/gAAAAB/AAD8AAAAAD8AAPgAAAAAHwAA+AAAAAAfAADwAAAAAA8AAPAAAAAADwAA4AAAAAAHAADgAAAAAAcAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADgAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAAAA8AAPgAAAAAHwAA+AAAAAAfAAD8AAAAAD8AAP4AAAAAfwAA/wAAAAD/AAD/gAAAAf8AAP/AAAAD/wAA/+AAAAf/AAD/+AAAH/8AAP/+AAB//wAA//+AAf//AAD///////8AAP///////wAA"};async function L(a){return Qa[a]}function Pa(a){if(document.visibilityState==="visible")return;let A=async()=>{a===0?new Notification("Execution completed",{body:"Your notebook run completed successfully.",icon:await L("success")}):new Notification("Execution failed",{body:`Your notebook run encountered ${a} error(s).`,icon:await L("error")})};!("Notification"in window)||Notification.permission==="denied"||(Notification.permission==="granted"?A():Notification.permission==="default"&&Notification.requestPermission().then(e=>{e==="granted"&&A()}))}const La=a=>{let{isRunning:A}=a,e=ie(),t=document.querySelector("link[rel~='icon']");t||(t=document.createElement("link"),t.rel="icon",document.getElementsByTagName("head")[0].append(t)),(0,B.useEffect)(()=>{!A&&t.href.includes("favicon")||(async()=>{let G;if(G=A?"running":e.length===0?"success":"error",t.href=await L(G),!document.hasFocus())return;let s=setTimeout(async()=>{t.href=await L("idle")},3e3);return()=>clearTimeout(s)})()},[A,e,t]);let o=ze(A)??A;return(0,B.useEffect)(()=>{o&&!A&&Pa(e.length)},[e,o,A]),ye(window,"focus",async G=>{A||(t.href=await L("idle"))}),null};function Oa(){let{cellRuntime:a}=YA.get(se),A=DA.entries(a).find(([e,t])=>t.status==="running");A&&ca(A[0],"focus")}var O=h();const Ta=a=>{let A=(0,O.c)(22),{connection:e,isRunning:t}=a,{mode:o}=y(le),G=e.state===x.CLOSED,s=e.state===x.OPEN,R;A[0]!==e.canTakeover||A[1]!==G?(R=G&&!e.canTakeover&&(0,n.jsx)(Ua,{}),A[0]=e.canTakeover,A[1]=G,A[2]=R):R=A[2];let r=o==="read"?"fixed":"absolute",k;A[3]===r?k=A[4]:(k=Y("z-50 top-4 left-4",r),A[3]=r,A[4]=k);let i;A[5]!==s||A[6]!==t?(i=s&&t&&(0,n.jsx)(Ha,{}),A[5]=s,A[6]=t,A[7]=i):i=A[7];let l;A[8]!==e.canTakeover||A[9]!==G?(l=G&&!e.canTakeover&&(0,n.jsx)(Ia,{}),A[8]=e.canTakeover,A[9]=G,A[10]=l):l=A[10];let c;A[11]!==e.canTakeover||A[12]!==G?(c=G&&e.canTakeover&&(0,n.jsx)(Ka,{}),A[11]=e.canTakeover,A[12]=G,A[13]=c):c=A[13];let g;A[14]!==k||A[15]!==i||A[16]!==l||A[17]!==c?(g=(0,n.jsxs)("div",{className:k,children:[i,l,c]}),A[14]=k,A[15]=i,A[16]=l,A[17]=c,A[18]=g):g=A[18];let u;return A[19]!==R||A[20]!==g?(u=(0,n.jsxs)(n.Fragment,{children:[R,g]}),A[19]=R,A[20]=g,A[21]=u):u=A[21],u};var hA="print:hidden pointer-events-auto hover:cursor-pointer",Ia=()=>{let a=(0,O.c)(1),A;return a[0]===Symbol.for("react.memo_cache_sentinel")?(A=(0,n.jsx)(ZA,{content:"App disconnected",children:(0,n.jsx)("div",{className:hA,children:(0,n.jsx)(xa,{className:"w-[25px] h-[25px] text-(--red-11)"})})}),a[0]=A):A=a[0],A},Ka=()=>{let a=(0,O.c)(1),A;return a[0]===Symbol.for("react.memo_cache_sentinel")?(A=(0,n.jsx)(ZA,{content:"Notebook locked",children:(0,n.jsx)("div",{className:hA,children:(0,n.jsx)(na,{className:"w-[25px] h-[25px] text-(--blue-11)"})})}),a[0]=A):A=a[0],A},Ha=()=>{let a=(0,O.c)(6),A=y(te),e=A?"Scratchpad is running":"Jump to running cell",t=A?void 0:Oa,o;a[0]===Symbol.for("react.memo_cache_sentinel")?(o=(0,n.jsx)(fa,{className:"running-app-icon",size:30,strokeWidth:1}),a[0]=o):o=a[0];let G;a[1]===t?G=a[2]:(G=(0,n.jsx)("div",{className:hA,"data-testid":"loading-indicator",onClick:t,children:o}),a[1]=t,a[2]=G);let s;return a[3]!==G||a[4]!==e?(s=(0,n.jsx)(ZA,{content:e,side:"right",children:G}),a[3]=G,a[4]=e,a[5]=s):s=a[5],s},Ua=()=>{let a=(0,O.c)(1),A;return a[0]===Symbol.for("react.memo_cache_sentinel")?(A=(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"noise"}),(0,n.jsx)("div",{className:"disconnected-gradient"})]}),a[0]=A):A=a[0],A},b=h(),Va=Te,qa=He,Wa=Oe(Ke),QA=B.forwardRef((a,A)=>{let e=(0,b.c)(9),t,o;e[0]===a?(t=e[1],o=e[2]):({className:t,...o}=a,e[0]=a,e[1]=t,e[2]=o);let G;e[3]===t?G=e[4]:(G=Y("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),e[3]=t,e[4]=G);let s;return e[5]!==o||e[6]!==A||e[7]!==G?(s=(0,n.jsx)(EA,{className:G,...o,ref:A}),e[5]=o,e[6]=A,e[7]=G,e[8]=s):s=e[8],s});QA.displayName=EA.displayName;var Xa=Qe("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),PA=B.forwardRef((a,A)=>{let e=(0,b.c)(15),t,o,G,s;e[0]===a?(t=e[1],o=e[2],G=e[3],s=e[4]):({side:s,className:o,children:t,...G}=a,e[0]=a,e[1]=t,e[2]=o,e[3]=G,e[4]=s);let R=s===void 0?"right":s,r;e[5]===Symbol.for("react.memo_cache_sentinel")?(r=(0,n.jsx)(QA,{}),e[5]=r):r=e[5];let k;e[6]!==o||e[7]!==R?(k=Y(Xa({side:R}),o),e[6]=o,e[7]=R,e[8]=k):k=e[8];let i;e[9]===Symbol.for("react.memo_cache_sentinel")?(i=(0,n.jsxs)(Ie,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",children:[(0,n.jsx)(Za,{className:"h-4 w-4"}),(0,n.jsx)("span",{className:"sr-only",children:"Close"})]}),e[9]=i):i=e[9];let l;return e[10]!==t||e[11]!==G||e[12]!==A||e[13]!==k?(l=(0,n.jsx)(Wa,{children:(0,n.jsxs)(Le,{children:[r,(0,n.jsxs)(CA,{ref:A,className:k,...G,children:[t,i]})]})}),e[10]=t,e[11]=G,e[12]=A,e[13]=k,e[14]=l):l=e[14],l});PA.displayName=CA.displayName;var Ja=a=>{let A=(0,b.c)(8),e,t;A[0]===a?(e=A[1],t=A[2]):({className:e,...t}=a,A[0]=a,A[1]=e,A[2]=t);let o;A[3]===e?o=A[4]:(o=Y("flex flex-col space-y-2 text-center sm:text-left",e),A[3]=e,A[4]=o);let G;return A[5]!==t||A[6]!==o?(G=(0,n.jsx)("div",{className:o,...t}),A[5]=t,A[6]=o,A[7]=G):G=A[7],G};Ja.displayName="SheetHeader";var za=a=>{let A=(0,b.c)(8),e,t;A[0]===a?(e=A[1],t=A[2]):({className:e,...t}=a,A[0]=a,A[1]=e,A[2]=t);let o;A[3]===e?o=A[4]:(o=Y("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),A[3]=e,A[4]=o);let G;return A[5]!==t||A[6]!==o?(G=(0,n.jsx)("div",{className:o,...t}),A[5]=t,A[6]=o,A[7]=G):G=A[7],G};za.displayName="SheetFooter";var $a=B.forwardRef((a,A)=>{let e=(0,b.c)(9),t,o;e[0]===a?(t=e[1],o=e[2]):({className:t,...o}=a,e[0]=a,e[1]=t,e[2]=o);let G;e[3]===t?G=e[4]:(G=Y("text-lg font-semibold text-foreground",t),e[3]=t,e[4]=G);let s;return e[5]!==o||e[6]!==A||e[7]!==G?(s=(0,n.jsx)(bA,{ref:A,className:G,...o}),e[5]=o,e[6]=A,e[7]=G,e[8]=s):s=e[8],s});$a.displayName=bA.displayName;var At=B.forwardRef((a,A)=>{let e=(0,b.c)(9),t,o;e[0]===a?(t=e[1],o=e[2]):({className:t,...o}=a,e[0]=a,e[1]=t,e[2]=o);let G;e[3]===t?G=e[4]:(G=Y("text-sm text-muted-foreground",t),e[3]=t,e[4]=G);let s;return e[5]!==o||e[6]!==A||e[7]!==G?(s=(0,n.jsx)(yA,{ref:A,className:G,...o}),e[5]=o,e[6]=A,e[7]=G,e[8]=s):s=e[8],s});At.displayName=yA.displayName;var et=h();const BA=(0,B.memo)(()=>{let a=(0,et.c)(1),A;return a[0]===Symbol.for("react.memo_cache_sentinel")?(A=(0,n.jsx)(Ue,{name:MA.SIDEBAR}),a[0]=A):A=a[0],A});BA.displayName="SidebarSlot";var at=h();const tt=a=>{let A=(0,at.c)(6),{openWidth:e}=a,t;A[0]===Symbol.for("react.memo_cache_sentinel")?(t=(0,n.jsx)(qa,{className:"lg:hidden",asChild:!0,children:(0,n.jsx)(cA,{variant:"ghost",className:"bg-background",children:(0,n.jsx)(SA,{className:"w-5 h-5"})})}),A[0]=t):t=A[0];let o;A[1]===e?o=A[2]:(o={maxWidth:e},A[1]=e,A[2]=o);let G;A[3]===Symbol.for("react.memo_cache_sentinel")?(G=(0,n.jsx)(BA,{}),A[3]=G):G=A[3];let s;return A[4]===o?s=A[5]:(s=(0,n.jsxs)(Va,{children:[t,(0,n.jsx)(PA,{className:"w-full px-3 h-full flex flex-col overflow-y-auto",style:o,side:"left",children:G})]}),A[4]=o,A[5]=s),s};var Gt=h();const ot=a=>{let A=(0,Gt.c)(7),{isOpen:e,toggle:t}=a,o=e?"rotate-0":"rotate-180",G;A[0]===o?G=A[1]:(G=Y("h-5 w-5 transition-transform ease-in-out duration-700",o),A[0]=o,A[1]=G);let s;A[2]===G?s=A[3]:(s=(0,n.jsx)(qe,{className:G}),A[2]=G,A[3]=s);let R;return A[4]!==s||A[5]!==t?(R=(0,n.jsx)("div",{className:"invisible lg:visible absolute top-[12px] right-[16px] z-20",children:(0,n.jsx)(cA,{onClick:t,className:"w-10 h-8",variant:"ghost",size:"icon",children:s})}),A[4]=s,A[5]=t,A[6]=R):R=A[6],R};var st=h();const rt=a=>{let A=(0,st.c)(11),{isOpen:e,toggle:t,width:o}=a,G=e?o:De,s;A[0]===G?s=A[1]:(s={width:G},A[0]=G,A[1]=s);let R;A[2]===Symbol.for("react.memo_cache_sentinel")?(R=Y("app-sidebar auto-collapse-nav","top-0 left-0 z-20 h-full hidden lg:block relative transition-[width] ease-in-out duration-300"),A[2]=R):R=A[2];let r;A[3]!==e||A[4]!==t?(r=(0,n.jsx)(ot,{isOpen:e,toggle:t}),A[3]=e,A[4]=t,A[5]=r):r=A[5];let k;A[6]===Symbol.for("react.memo_cache_sentinel")?(k=(0,n.jsx)("div",{className:"relative h-full flex flex-col px-3 pb-16 pt-14 overflow-y-auto shadow-sm border-l",children:(0,n.jsx)(BA,{})}),A[6]=k):k=A[6];let i;return A[7]!==e||A[8]!==s||A[9]!==r?(i=(0,n.jsxs)("aside",{"data-expanded":e,style:s,className:R,children:[r,k]}),A[7]=e,A[8]=s,A[9]=r,A[10]=i):i=A[10],i};var nt=h();const kt=a=>{let A=(0,nt.c)(15),{children:e}=a,[t,o]=fA(xe),{isOpen:G,width:s}=t;if(Ve(MA.SIDEBAR).length===0)return e;let R;A[0]===s?R=A[1]:(R=pe(s),A[0]=s,A[1]=R);let r=R,k;A[2]!==o||A[3]!==G?(k=()=>o({type:"toggle",isOpen:!G}),A[2]=o,A[3]=G,A[4]=k):k=A[4];let i;A[5]!==G||A[6]!==r||A[7]!==k?(i=(0,n.jsx)(rt,{isOpen:G,width:r,toggle:k}),A[5]=G,A[6]=r,A[7]=k,A[8]=i):i=A[8];let l;A[9]===r?l=A[10]:(l=(0,n.jsx)("div",{className:"absolute top-3 left-4 flex items-center z-50",children:(0,n.jsx)(tt,{openWidth:r})}),A[9]=r,A[10]=l);let c;return A[11]!==e||A[12]!==i||A[13]!==l?(c=(0,n.jsxs)("div",{className:"inset-0 absolute flex",children:[i,l,e]}),A[11]=e,A[12]=i,A[13]=l,A[14]=c):c=A[14],c};var it=h();const Rt=a=>{let A=(0,it.c)(17),{width:e,connection:t,isRunning:o,children:G}=a,s=t.state,R;A[0]===o?R=A[1]:(R=(0,n.jsx)(La,{isRunning:o}),A[0]=o,A[1]=R);let r;A[2]!==t||A[3]!==o?(r=(0,n.jsx)(Ta,{connection:t,isRunning:o}),A[2]=t,A[3]=o,A[4]=r):r=A[4];let k;A[5]!==s||A[6]!==e?(k=Y("mathjax_ignore",Me(s)&&"disconnected","bg-background w-full h-full text-textColor","flex flex-col overflow-y-auto",e==="full"&&"config-width-full",e==="columns"?"overflow-x-auto":"overflow-x-hidden","print:height-fit"),A[5]=s,A[6]=e,A[7]=k):k=A[7];let i;A[8]!==G||A[9]!==s||A[10]!==k||A[11]!==e?(i=(0,n.jsx)(Ma,{children:(0,n.jsx)(kt,{children:(0,n.jsx)("div",{id:"App","data-config-width":e,"data-connection-state":s,className:k,children:G})})}),A[8]=G,A[9]=s,A[10]=k,A[11]=e,A[12]=i):i=A[12];let l;return A[13]!==R||A[14]!==r||A[15]!==i?(l=(0,n.jsxs)(n.Fragment,{children:[R,r,i]}),A[13]=R,A[14]=r,A[15]=i,A[16]=l):l=A[16],l};function lt(a){return a.kind==="missing"}function LA(a){return a.kind==="installing"}var{valueAtom:Zt,useActions:ct}=We(()=>({packageAlert:null,startupLogsAlert:null,packageLogs:{}}),{addPackageAlert:(a,A)=>{var o;let e={...a.packageLogs};if(LA(A)&&A.logs&&A.log_status)for(let[G,s]of Object.entries(A.logs))switch(A.log_status){case"start":e[G]=s;break;case"append":e[G]=(e[G]||"")+s;break;case"done":e[G]=(e[G]||"")+s;break}let t=((o=a.packageAlert)==null?void 0:o.id)||ia();return{...a,packageAlert:{id:t,...A},packageLogs:e}},clearPackageAlert:(a,A)=>a.packageAlert!==null&&a.packageAlert.id===A?{...a,packageAlert:null,packageLogs:{}}:a,addStartupLog:(a,A)=>{var t;let e=((t=a.startupLogsAlert)==null?void 0:t.content)||"";return{...a,startupLogsAlert:{...a.startupLogsAlert,content:e+A.content,status:A.status}}},clearStartupLogsAlert:a=>({...a,startupLogsAlert:null})});const gt=()=>y(Zt);function OA(){return ct()}var TA=h();const IA=(0,B.memo)(a=>{let A=(0,TA.c)(11),{appConfig:e,mode:t,children:o}=a,{selectedLayout:G,layoutData:s}=$e(),R=y(wA);if(t==="edit"&&!R)return o;let r;if(A[0]!==t||A[1]!==G){r=G;let c=new URLSearchParams(window.location.search);if(t==="read"&&c.has(RA.viewAs)){let g=c.get(RA.viewAs);ma.includes(g)&&(r=g)}A[0]=t,A[1]=G,A[2]=r}else r=A[2];let k;A[3]===r?k=A[4]:(k=ea.find(c=>c.type===r),A[3]=r,A[4]=k);let i=k;if(!i)return o;let l;return A[5]!==e||A[6]!==r||A[7]!==s||A[8]!==t||A[9]!==i?(l=(0,n.jsx)(dt,{appConfig:e,mode:t,plugin:i,layoutData:s,finalLayout:r}),A[5]=e,A[6]=r,A[7]=s,A[8]=t,A[9]=i,A[10]=l):l=A[10],l});IA.displayName="CellsRenderer";const dt=a=>{let A=(0,TA.c)(18),{appConfig:e,mode:t,plugin:o,layoutData:G,finalLayout:s}=a,R=JA(),{setCurrentLayoutData:r}=_A(),k,i,l,c,g;if(A[0]!==e||A[1]!==s||A[2]!==G||A[3]!==t||A[4]!==R||A[5]!==o){let w=Re(R);k=o.Component,i=e,l=t,c=w,g=G[s]||o.getInitialLayout(w),A[0]=e,A[1]=s,A[2]=G,A[3]=t,A[4]=R,A[5]=o,A[6]=k,A[7]=i,A[8]=l,A[9]=c,A[10]=g}else k=A[6],i=A[7],l=A[8],c=A[9],g=A[10];let u;return A[11]!==k||A[12]!==r||A[13]!==i||A[14]!==l||A[15]!==c||A[16]!==g?(u=(0,n.jsx)(k,{appConfig:i,mode:l,cells:c,layout:g,setLayout:r}),A[11]=k,A[12]=r,A[13]=i,A[14]=l,A[15]=c,A[16]=g,A[17]=u):u=A[17],u};var ht=class KA{constructor(A){kA(this,"hasStarted",!1);kA(this,"handleReadyEvent",A=>{let e=A.detail.objectId;if(!this.uiElementRegistry.has(e))return;let t=this.uiElementRegistry.lookupValue(e);t!==void 0&&this.sendComponentValues({objectIds:[e],values:[t]}).catch(o=>{p.warn(o)})});this.uiElementRegistry=A}static get INSTANCE(){let A="_marimo_private_RuntimeState";return window[A]||(window[A]=new KA(Q)),window[A]}get sendComponentValues(){if(!this._sendComponentValues)throw Error("sendComponentValues is not set");return this._sendComponentValues}start(A){if(this.hasStarted){p.warn("RuntimeState already started");return}this._sendComponentValues=A,document.addEventListener(FA.TYPE,this.handleReadyEvent),this.hasStarted=!0}stop(){if(!this.hasStarted){p.warn("RuntimeState already stopped");return}document.removeEventListener(FA.TYPE,this.handleReadyEvent),this.hasStarted=!1}},Bt=h();function ut(a){if(a.static)return Be.empty();if(lA())return me();let A=a.url;return new ua(A,void 0,{maxRetries:10,debug:!1,startClosed:!0,connectionTimeout:1e4})}function mt(a){let A=(0,Bt.c)(15),{onOpen:e,onMessage:t,onClose:o,onError:G,waitToConnect:s}=a,R;A[0]!==o||A[1]!==G||A[2]!==t||A[3]!==e||A[4]!==a?(R=()=>{let l=ut(a);return l.addEventListener("open",e),l.addEventListener("close",o),l.addEventListener("error",G),l.addEventListener("message",t),l},A[0]=o,A[1]=G,A[2]=t,A[3]=e,A[4]=a,A[5]=R):R=A[5];let[r]=(0,B.useState)(R),k;A[6]!==o||A[7]!==G||A[8]!==t||A[9]!==e||A[10]!==r||A[11]!==s?(k=()=>(r.readyState===WebSocket.CLOSED&&s().then(()=>r.reconnect()).catch(l=>{p.error("Healthy connection never made",l),r.close()}),()=>{p.warn("useConnectionTransport is unmounting. This likely means there is a bug."),r.close(),r.removeEventListener("open",e),r.removeEventListener("close",o),r.removeEventListener("error",G),r.removeEventListener("message",t)}),A[6]=o,A[7]=G,A[8]=t,A[9]=e,A[10]=r,A[11]=s,A[12]=k):k=A[12];let i;return A[13]===r?i=A[14]:(i=[r],A[13]=r,A[14]=i),(0,B.useEffect)(k,i),r}function Yt(a){let{codes:A,names:e,configs:t,cell_ids:o,last_executed_code:G,last_execution_time:s}=a,R=G||{},r=s||{};return A.map((k,i)=>{let l=o[i],c=R[l];return ee({id:l,code:k,edited:c?c!==k:!1,name:e[i],lastCodeRun:R[l]??null,lastExecutionTime:r[l]??null,config:t[i]})})}function ft(a,A,e){let t=Aa(),{layout:o}=a;if(o){let G=o.type,s=aa({type:G,data:o.data,cells:A});t.selectedLayout=G,t.layoutData[G]=s,e({layoutView:G,data:s})}return t}function pt(){let a=[],A=[];return Q.entries.forEach((e,t)=>{a.push(t),A.push(e.value)}),{objectIds:a,values:A}}function xt(a,A){let{existingCells:e,autoInstantiate:t,setCells:o,setLayoutData:G,setAppConfig:s,setCapabilities:R,setKernelState:r,onError:k}=A,{resumed:i,ui_values:l,app_config:c,capabilities:g,auto_instantiated:u}=a,w=e&&e.length>0,C=w&&!i?e:Yt(a);o(C,ft(a,C,G));let v=Ce.safeParse(c);if(v.success?s(v.data):p.error("Failed to parse app config",v.error),R(g),u)return;if(i){for(let[m,j]of DA.entries(l||{})){let F=m;Q.set(F,j)}return}let{objectIds:M,values:N}=pt(),_=w?Object.fromEntries(e.map(m=>[m.id,m.code])):void 0;Je().sendInstantiate({objectIds:M,values:N,autoRun:t,codes:_}).then(()=>{r({isInstantiated:!0,error:null})}).catch(m=>{r({isInstantiated:!1,error:m}),k(Error("Failed to instantiate",{cause:m}))})}function wt(a){let A=a.cell_id;Q.removeElementsByCell(A),NA.INSTANCE.removeForCellId(A)}function Dt(a,A){A(a),NA.INSTANCE.track(a)}const $={append:a=>{let A=new URL(window.location.href);A.searchParams.append(a.key,a.value),window.history.pushState({},"",`${A.pathname}${A.search}`)},set:a=>{let A=new URL(window.location.href);Array.isArray(a.value)?(A.searchParams.delete(a.key),a.value.forEach(e=>A.searchParams.append(a.key,e))):A.searchParams.set(a.key,a.value),window.history.pushState({},"",`${A.pathname}${A.search}`)},delete:a=>{let A=new URL(window.location.href);a.value==null?A.searchParams.delete(a.key):A.searchParams.delete(a.key,a.value),window.history.pushState({},"",`${A.pathname}${A.search}`)},clear:()=>{let a=new URL(window.location.href);a.search="",window.history.pushState({},"",`${a.pathname}${a.search}`)}};var vt=h();function Et(){return Object.values(iA().cellData).filter(a=>a.id!==ke)}function yt(a){let A=(0,vt.c)(41),e=(0,B.useRef)(!0),{autoInstantiate:t,sessionId:o,setCells:G}=a,{showBoundary:s}=Se(),{handleCellMessage:R}=pA(),r;A[0]===Symbol.for("react.memo_cache_sentinel")?(r={skipMiddleware:!0},A[0]=r):r=A[0];let k=pA(r),i;A[1]===k?i=A[2]:(i=d=>{Ze(d.changes,k,Ft)},A[1]=k,A[2]=i);let l=i,{addCellNotification:c}=Ya(),g=S(ka),u=be(),{setVariables:w,setMetadata:C}=$A(),{addColumnPreview:v}=xA(),{addDatasets:M,filterDatasetsFromVariables:N}=xA(),{addDataSourceConnection:_,filterDataSourcesFromVariables:m}=XA(),{setLayoutData:j}=_A(),[F,D]=fA(_e),{addBanner:AA}=de(),{addPackageAlert:T,addStartupLog:eA}=OA(),aA=S(wA),tA=S(WA),E=Ne(),GA=S(ha),oA=S(ve),{setNamespaces:sA,filterFromVariables:rA}=Ga(),I;A[3]!==AA||A[4]!==c||A[5]!==v||A[6]!==_||A[7]!==M||A[8]!==T||A[9]!==eA||A[10]!==t||A[11]!==m||A[12]!==N||A[13]!==rA||A[14]!==R||A[15]!==l||A[16]!==u||A[17]!==GA||A[18]!==tA||A[19]!==G||A[20]!==oA||A[21]!==g||A[22]!==aA||A[23]!==j||A[24]!==C||A[25]!==sA||A[26]!==w||A[27]!==s?(I=d=>{let Z=ae(d.data);switch(Z.data.op){case"reload":jA();return;case"kernel-ready":{let f=Et();xt(Z.data,{autoInstantiate:t,setCells:G,setLayoutData:j,setAppConfig:u,setCapabilities:tA,setKernelState:g,onError:s,existingCells:f}),aA(Z.data.kiosk);return}case"completed-run":return;case"interrupted":return;case"kernel-startup-error":oA(Z.data.error);return;case"send-ui-element-message":{let f=Z.data.ui_element;if(f){let HA=sa(Z.data);Q.broadcastMessage(f,Z.data.message,HA)}return}case"model-lifecycle":ue(we,Z.data);return;case"remove-ui-elements":wt(Z.data);return;case"completion-result":ce.resolve(Z.data.completion_id,Z.data);return;case"function-call-result":Ye.resolve(Z.data.function_call_id,Z.data);return;case"cell-op":{Dt(Z.data,R);let f=iA().cellData[Z.data.cell_id];if(!f)return;c({cellNotification:Z.data,code:f.code});return}case"variables":w(Z.data.variables.map(jt)),N(Z.data.variables.map(_t)),m(Z.data.variables.map(Nt)),rA(Z.data.variables.map(Mt));return;case"variable-values":C(Z.data.variables.map(bt));return;case"alert":z({title:Z.data.title,description:la({html:Z.data.description}),variant:Z.data.variant});return;case"banner":AA(Z.data);return;case"missing-package-alert":T({...Z.data,kind:"missing"});return;case"installing-package-alert":T({...Z.data,kind:"installing"});return;case"startup-logs":eA({content:Z.data.content,status:Z.data.status});return;case"query-params-append":$.append(Z.data);return;case"query-params-set":$.set(Z.data);return;case"query-params-delete":$.delete(Z.data);return;case"query-params-clear":$.clear();return;case"datasets":M(Z.data);return;case"data-column-preview":v(Z.data);return;case"sql-table-preview":oe.resolve(Z.data.request_id,Z.data);return;case"sql-table-list-preview":zA.resolve(Z.data.request_id,Z.data);return;case"sql-schema-list-preview":Ge.resolve(Z.data.request_id,Z.data);return;case"validate-sql-result":Ae.resolve(Z.data.request_id,Z.data);return;case"secret-keys-result":Ba.resolve(Z.data.request_id,Z.data);return;case"cache-info":GA(Z.data);return;case"cache-cleared":return;case"data-source-connections":_({connections:Z.data.connections.map(Ct)});return;case"storage-namespaces":sA(Z.data);return;case"storage-entries":oa.resolve(Z.data.request_id,Z.data);return;case"storage-download-ready":ta.resolve(Z.data.request_id,Z.data);return;case"reconnected":return;case"focus-cell":ge(Z.data.cell_id);return;case"notebook-document-transaction":l(Z.data.transaction);return;default:Xe(Z.data)}},A[3]=AA,A[4]=c,A[5]=v,A[6]=_,A[7]=M,A[8]=T,A[9]=eA,A[10]=t,A[11]=m,A[12]=N,A[13]=rA,A[14]=R,A[15]=l,A[16]=u,A[17]=GA,A[18]=tA,A[19]=G,A[20]=oA,A[21]=g,A[22]=aA,A[23]=j,A[24]=C,A[25]=sA,A[26]=w,A[27]=s,A[28]=I):I=A[28];let nA=I,uA=(d,Z)=>{e.current&&(e.current=!1,W.reconnect(d,Z))},K;A[29]===Symbol.for("react.memo_cache_sentinel")?(K=vA(),A[29]=K):K=A[29];let H;A[30]!==E||A[31]!==o?(H=()=>E.getWsURL(o).toString(),A[30]=E,A[31]=o,A[32]=H):H=A[32];let U;A[33]===D?U=A[34]:(U=async()=>{e.current=!0,D({state:x.OPEN})},A[33]=D,A[34]=U);let V;A[35]===E?V=A[36]:(V=async()=>{vA()||lA()||E.isSameOrigin||await E.waitForHealthy()},A[35]=E,A[36]=V);let q;A[37]===nA?q=A[38]:(q=d=>{try{nA(d)}catch(Z){let f=Z;p.error("Failed to handle message",d.data,f),z({title:"Failed to handle message",description:gA(f),variant:"danger"})}},A[37]=nA,A[38]=q);let W=mt({static:K,url:H,onOpen:U,waitToConnect:V,onMessage:q,onClose:d=>{switch(p.warn("WebSocket closed",d.code,d.reason),d.reason){case"MARIMO_ALREADY_CONNECTED":D({state:x.CLOSED,code:P.ALREADY_RUNNING,reason:"another browser tab is already connected to the kernel",canTakeover:!0}),W.close();return;case"MARIMO_WRONG_KERNEL_ID":case"MARIMO_NO_FILE_KEY":case"MARIMO_NO_SESSION_ID":case"MARIMO_NO_SESSION":case"MARIMO_SHUTDOWN":D({state:x.CLOSED,code:P.KERNEL_DISCONNECTED,reason:"kernel not found"}),W.close();return;case"MARIMO_MALFORMED_QUERY":D({state:x.CLOSED,code:P.MALFORMED_QUERY,reason:"the kernel did not recognize a request; please file a bug with marimo"});return;default:if(d.reason==="MARIMO_KERNEL_STARTUP_ERROR"){D({state:x.CLOSED,code:P.KERNEL_STARTUP_ERROR,reason:"Failed to start kernel sandbox"}),W.close();return}D({state:x.CONNECTING}),uA(d.code,d.reason)}},onError:d=>{p.warn("WebSocket error",d),D({state:x.CLOSED,code:P.KERNEL_DISCONNECTED,reason:"kernel not found"}),uA()}}),X;return A[39]===F?X=A[40]:(X={connection:F},A[39]=F,A[40]=X),X}function Ct(a){return{...a,name:a.name}}function bt(a){return{name:a.name,dataType:a.datatype,value:a.value}}function Mt(a){return a.name}function Nt(a){return a.name}function _t(a){return a.name}function jt(a){return{name:a.name,declaredBy:a.declared_by,usedBy:a.used_by}}function Ft(){return iA().cellIds.inOrderIds}var St=h();const Qt=a=>{let A=(0,St.c)(2),{children:e}=a,t;return A[0]===e?t=A[1]:(t=(0,n.jsx)("div",{className:"flex flex-col flex-1 overflow-hidden absolute inset-0 print:relative",children:e}),A[0]=e,A[1]=t),t};export{LA as a,gt as c,SA as d,IA as i,Rt as l,yt as n,lt as o,ht as r,OA as s,Qt as t,ya as u};
@@ -1 +1 @@
1
- import{s as T}from"./chunk-LvLJmgfZ.js";import{u as R}from"./useEvent-D91BmmQi.js";import{t as L}from"./react-Bj1aDYRI.js";import{E as U,g as $,gi as V,x as W}from"./cells-BBDzmUIS.js";import"./react-dom-CSu739Rf.js";import{t as E}from"./compiler-runtime-B3qBwwSJ.js";import{n as I}from"./constants-DMpttj8Q.js";import{T as F,l as O,m as H}from"./config-CPqw1wUv.js";import{t as M}from"./cn-DCUzRj2J.js";import{t as q}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-BDxedMYP.js";import"./popover-UExmgBsf.js";import{I as G,_t as J,b as K}from"./JsonOutput-B0sjIMBK.js";import{r as Q}from"./download-QGh9oR1D.js";import{n as X,t as P}from"./button-D9nb17Rw.js";import"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{r as Y}from"./requests-DIwGYs0l.js";import"./layout-D5myrs5s.js";import{c as Z}from"./state-B34hXjp9.js";import"./markdown-renderer-CVd_mMPt.js";import{t as ee}from"./copy-BwrPA9zQ.js";import{i as te,l as re,n as se,r as A,t as oe,u as ae}from"./panels-COAp5_gz.js";import{t as ie}from"./spinner-Bhir8k53.js";import"./dist-DQOq2Tf-.js";import"./dist-DBiqbYe-.js";import"./dist-VjDnmGCZ.js";import"./dist-E6ttb8td.js";import"./dist-B324sPca.js";import{t as le}from"./use-toast-T0_cQDma.js";import{t as me}from"./session-VtovaFBS.js";import"./purify.es-DBmVz-Wl.js";import"./dates-CAlnO9QB.js";import{n as ne}from"./copy-BCF-tANo.js";import{a as ce,c as de,l as pe,n as he,r as fe,t as xe}from"./dialog-Dj0qTFnG.js";import{t as be}from"./share-CqnSBwZy.js";import"./utils-CGtUbqcR.js";import"./vega-loader.browser-BegSZk0G.js";import"./defaultLocale-YteS-k_t.js";import"./defaultLocale-B6z1Qyqt.js";import{a as je}from"./cell-link-DqiCeeeS.js";import"./chunk-5FQGJX7Z-BReOK4Lg.js";import"./html-to-image-CAiN3VHj.js";import{n as ue,t as ge}from"./react-resizable-panels.browser.esm-BUNcfKXO.js";import"./esm-BmrwxxCo.js";import"./name-cell-input-DDQOQSsh.js";import{n as ye,t as ke}from"./marimo-icons-Dk6YhPWV.js";import"./ws-BZQmQxZ7.js";import"./dist-D_yqofzt.js";import"./dist-DdITFgCr.js";import"./dist-B847wb8t.js";import"./dist-Bu99ARwH.js";import"./dist-CQG39nVX.js";import"./dist-1sgFrolC.js";import"./dist-GYoBJCzF.js";import"./dist-BjkXqMhR.js";import"./dist-Bxj5sO2I.js";import"./esm-DN_A77ya.js";var _e=E(),Ne=T(L(),1),t=T(q(),1);const ve=o=>{let e=(0,_e.c)(26),{appConfig:s}=o,{setCells:r}=U(),{sendComponentValues:d}=Y(),l;e[0]===d?l=e[1]:(l=()=>(A.INSTANCE.start(d),we),e[0]=d,e[1]=l);let i;e[2]===Symbol.for("react.memo_cache_sentinel")?(i=[],e[2]=i):i=e[2],(0,Ne.useEffect)(l,i);let m;e[3]===Symbol.for("react.memo_cache_sentinel")?(m=me(),e[3]=m):m=e[3];let g;e[4]===r?g=e[5]:(g={autoInstantiate:!0,setCells:r,sessionId:m},e[4]=r,e[5]=g);let{connection:a}=se(g),v=R(W),y;e[6]===a.state?y=e[7]:(y=H(a.state),e[6]=a.state,e[7]=y);let j=y,w=R($),k;e[8]!==s||e[9]!==w||e[10]!==j?(k=()=>j&&!w?(0,t.jsxs)(G,{milliseconds:2e3,fallback:null,children:[(0,t.jsx)(ie,{className:"mx-auto"}),(0,t.jsx)("p",{className:"text-center text-sm text-muted-foreground mt-2",children:"Connecting..."})]}):(0,t.jsx)(te,{appConfig:s,mode:"read"}),e[8]=s,e[9]=w,e[10]=j,e[11]=k):k=e[11];let u=k,p;e:{if(typeof window>"u"){p=null;break e}let b,c;if(e[12]===Symbol.for("react.memo_cache_sentinel")){if(c=new URL(window.location.href),!c.searchParams.has("file")){p=null;break e}c.searchParams.delete("file"),b=c.searchParams.toString(),e[12]=b,e[13]=c,e[14]=p}else b=e[12],c=e[13],p=e[14];let N=b;p=N?`${c.pathname}?${N}`:c.pathname}let _=p,S=s.width,h;e[15]===Symbol.for("react.memo_cache_sentinel")?(h=_&&(0,t.jsx)("div",{className:"flex items-center px-6 pt-4 sm:-mt-8",children:(0,t.jsxs)("a",{href:_,"aria-label":"Back to gallery",className:M(X({variant:"text",size:"sm"}),"gap-2 px-0 text-muted-foreground hover:text-foreground"),children:[(0,t.jsx)(Z,{className:"size-4","aria-hidden":!0}),(0,t.jsx)("span",{children:"Back"})]})}),e[15]=h):h=e[15];let n;e[16]===a?n=e[17]:(n=(0,t.jsx)(ae,{connection:a,className:"sm:pt-8",children:h}),e[16]=a,e[17]=n);let f;e[18]===u?f=e[19]:(f=u(),e[18]=u,e[19]=f);let x;return e[20]!==s.width||e[21]!==a||e[22]!==v||e[23]!==n||e[24]!==f?(x=(0,t.jsxs)(re,{connection:a,isRunning:v,width:S,children:[n,f]}),e[20]=s.width,e[21]=a,e[22]=v,e[23]=n,e[24]=f,e[25]=x):x=e[25],x};function we(){A.INSTANCE.stop()}var B=E();const Se=()=>{let o=(0,B.c)(3),e=R(V);if(!O()||!e)return null;let s;o[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsxs)("span",{children:["Static"," ",(0,t.jsx)("a",{href:I.githubPage,target:"_blank",className:"text-(--sky-11) font-medium underline",children:"marimo"})," ","notebook - Run or edit for full interactivity"]}),o[0]=s):s=o[0];let r;return o[1]===e?r=o[2]:(r=(0,t.jsxs)("div",{className:"px-4 py-2 bg-(--sky-2) border-b border-(--sky-7) text-(--sky-11) flex justify-between items-center gap-4 print:hidden text-sm","data-testid":"static-notebook-banner",children:[s,(0,t.jsx)("span",{className:"shrink-0",children:(0,t.jsx)(Ce,{code:e})})]}),o[1]=e,o[2]=r),r};var Ce=o=>{let e=(0,B.c)(39),{code:s}=o,r=je()||"notebook.py",d=r.lastIndexOf("/");d!==-1&&(r=r.slice(d+1));let l=window.location.href,i;e[0]===s?i=e[1]:(i=be({code:s,baseUrl:`${I.molab}/new`}),e[0]=s,e[1]=i);let m=i,g;e[2]===Symbol.for("react.memo_cache_sentinel")?(g=(0,t.jsx)(pe,{asChild:!0,children:(0,t.jsx)(P,{"data-testid":"static-notebook-dialog-trigger",variant:"outline",size:"xs",children:"Run or Edit"})}),e[2]=g):g=e[2];let a;e[3]===r?a=e[4]:(a=(0,t.jsx)(de,{children:r}),e[3]=r,e[4]=a);let v;e[5]===Symbol.for("react.memo_cache_sentinel")?(v=(0,t.jsxs)("p",{children:["This is a static"," ",(0,t.jsx)("a",{href:I.githubPage,target:"_blank",className:"text-(--sky-11) hover:underline font-medium",children:"marimo"})," ","notebook. To run interactively:"]}),e[5]=v):v=e[5];let y;e[6]===Symbol.for("react.memo_cache_sentinel")?(y=(0,t.jsx)("br",{}),e[6]=y):y=e[6];let j;e[7]===r?j=e[8]:(j=(0,t.jsx)("div",{className:"rounded-lg p-3 border bg-(--sky-2) border-(--sky-7)",children:(0,t.jsxs)("div",{className:"font-mono text-(--sky-11) leading-relaxed",children:["pip install marimo",y,"marimo edit ",r]})}),e[7]=r,e[8]=j);let w;e[9]===Symbol.for("react.memo_cache_sentinel")?(w=!l.endsWith(".html")&&(0,t.jsxs)("div",{className:"rounded-lg p-3 border bg-(--sky-2) border-(--sky-7)",children:[(0,t.jsx)("div",{className:"text-sm text-(--sky-12) mb-1",children:"Or run directly from URL:"}),(0,t.jsxs)("div",{className:"font-mono text-(--sky-11) break-all",children:["marimo edit ",window.location.href]})]}),e[9]=w):w=e[9];let k;e[10]===Symbol.for("react.memo_cache_sentinel")?(k=(0,t.jsx)(ye,{size:12,strokeWidth:1.5,className:"mr-1.5 mt-px text-(--grass-11)"}),e[10]=k):k=e[10];let u;e[11]===m?u=e[12]:(u=(0,t.jsx)(P,{asChild:!0,variant:"outline",size:"xs",className:"shrink-0",children:(0,t.jsxs)("a",{href:m,target:"_blank",rel:"noopener noreferrer",children:[k,"Open in molab"]})}),e[11]=m,e[12]=u);let p;e[13]===Symbol.for("react.memo_cache_sentinel")?(p=(0,t.jsxs)("p",{className:"text-sm text-(--sky-12)",children:["Run this notebook in"," ",(0,t.jsx)("span",{className:"font-semibold",children:"molab"}),", marimo's cloud-hosted notebook platform."]}),e[13]=p):p=e[13];let _;e[14]===u?_=e[15]:(_=(0,t.jsxs)("div",{className:"pt-3 border-t flex gap-2 items-center",children:[u,p]}),e[14]=u,e[15]=_);let S;e[16]!==_||e[17]!==j?(S=(0,t.jsxs)(fe,{className:"pt-3 text-left space-y-3",children:[v,j,w,_]}),e[16]=_,e[17]=j,e[18]=S):S=e[18];let h;e[19]!==S||e[20]!==a?(h=(0,t.jsxs)(ce,{children:[a,S]}),e[19]=S,e[20]=a,e[21]=h):h=e[21];let n;e[22]===s?n=e[23]:(n=async()=>{await ne(s),le({title:"Copied to clipboard"})},e[22]=s,e[23]=n);let f;e[24]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsx)(ee,{className:"w-3 h-3 mr-2"}),e[24]=f):f=e[24];let x;e[25]===n?x=e[26]:(x=(0,t.jsxs)(P,{"data-testid":"copy-static-notebook-dialog-button",variant:"outline",size:"sm",onClick:n,children:[f,"Copy code"]}),e[25]=n,e[26]=x);let b;e[27]!==s||e[28]!==r?(b=()=>{Q(new Blob([s],{type:"text/plain"}),r)},e[27]=s,e[28]=r,e[29]=b):b=e[29];let c;e[30]===Symbol.for("react.memo_cache_sentinel")?(c=(0,t.jsx)(J,{className:"w-3 h-3 mr-2"}),e[30]=c):c=e[30];let N;e[31]===b?N=e[32]:(N=(0,t.jsxs)(P,{"data-testid":"download-static-notebook-dialog-button",variant:"outline",size:"sm",onClick:b,children:[c,"Download"]}),e[31]=b,e[32]=N);let C;e[33]!==x||e[34]!==N?(C=(0,t.jsxs)("div",{className:"flex gap-3 pt-2",children:[x,N]}),e[33]=x,e[34]=N,e[35]=C):C=e[35];let z;return e[36]!==h||e[37]!==C?(z=(0,t.jsxs)(xe,{children:[g,(0,t.jsxs)(he,{children:[h,C]})]}),e[36]=h,e[37]=C,e[38]=z):z=e[38],z},D=E(),ze=F()||O(),Ie=o=>{let e=(0,D.c)(9),s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(Se,{}),e[0]=s):s=e[0];let r;e[1]===o.appConfig?r=e[2]:(r=(0,t.jsx)(ve,{appConfig:o.appConfig}),e[1]=o.appConfig,e[2]=r);let d;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=ze&&(0,t.jsx)(Pe,{}),e[3]=d):d=e[3];let l;e[4]===r?l=e[5]:(l=(0,t.jsxs)(ge,{children:[s,r,d]}),e[4]=r,e[5]=l);let i;e[6]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(K,{}),e[6]=i):i=e[6];let m;return e[7]===l?m=e[8]:(m=(0,t.jsx)(oe,{children:(0,t.jsxs)(ue,{direction:"horizontal",autoSaveId:"marimo:chrome:v1:run1",children:[l,i]})}),e[7]=l,e[8]=m),m},Pe=()=>{let o=(0,D.c)(1),e;return o[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)("div",{className:"fixed bottom-0 right-0 z-50","data-testid":"watermark",children:(0,t.jsxs)("a",{href:I.githubPage,target:"_blank",className:"text-sm text-(--grass-11) font-bold tracking-wide transition-colors bg-(--grass-4) hover:bg-(--grass-5) border-t border-l border-(--grass-8) px-3 py-1 rounded-tl-md flex items-center gap-2",children:[(0,t.jsx)("span",{children:"made with marimo"}),(0,t.jsx)(ke,{className:"h-4 w-auto"})]})}),o[0]=e):e=o[0],e},Re=Ie;export{Re as default};
1
+ import{s as T}from"./chunk-LvLJmgfZ.js";import{u as R}from"./useEvent-D91BmmQi.js";import{t as L}from"./react-Bj1aDYRI.js";import{E as U,g as $,gi as V,x as W}from"./cells-BBDzmUIS.js";import"./react-dom-CSu739Rf.js";import{t as E}from"./compiler-runtime-B3qBwwSJ.js";import{n as I}from"./constants-DMpttj8Q.js";import{T as F,l as O,m as H}from"./config-CPqw1wUv.js";import{t as M}from"./cn-DCUzRj2J.js";import{t as q}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-BDxedMYP.js";import"./popover-UExmgBsf.js";import{I as G,_t as J,b as K}from"./JsonOutput-B0sjIMBK.js";import{r as Q}from"./download-QGh9oR1D.js";import{n as X,t as P}from"./button-D9nb17Rw.js";import"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{r as Y}from"./requests-DIwGYs0l.js";import"./layout-D5myrs5s.js";import{c as Z}from"./state-B34hXjp9.js";import"./markdown-renderer-CVd_mMPt.js";import{t as ee}from"./copy-BwrPA9zQ.js";import{i as te,l as re,n as se,r as A,t as oe,u as ae}from"./panels-C-Vq2Qyd.js";import{t as ie}from"./spinner-Bhir8k53.js";import"./dist-DQOq2Tf-.js";import"./dist-DBiqbYe-.js";import"./dist-VjDnmGCZ.js";import"./dist-E6ttb8td.js";import"./dist-B324sPca.js";import{t as le}from"./use-toast-T0_cQDma.js";import{t as me}from"./session-VtovaFBS.js";import"./purify.es-DBmVz-Wl.js";import"./dates-CAlnO9QB.js";import{n as ne}from"./copy-BCF-tANo.js";import{a as ce,c as de,l as pe,n as he,r as fe,t as xe}from"./dialog-Dj0qTFnG.js";import{t as be}from"./share-CqnSBwZy.js";import"./utils-CGtUbqcR.js";import"./vega-loader.browser-BegSZk0G.js";import"./defaultLocale-YteS-k_t.js";import"./defaultLocale-B6z1Qyqt.js";import{a as je}from"./cell-link-DqiCeeeS.js";import"./chunk-5FQGJX7Z-BReOK4Lg.js";import"./html-to-image-CAiN3VHj.js";import{n as ue,t as ge}from"./react-resizable-panels.browser.esm-BUNcfKXO.js";import"./esm-BmrwxxCo.js";import"./name-cell-input-DDQOQSsh.js";import{n as ye,t as ke}from"./marimo-icons-Dk6YhPWV.js";import"./ws-BZQmQxZ7.js";import"./dist-D_yqofzt.js";import"./dist-DdITFgCr.js";import"./dist-B847wb8t.js";import"./dist-Bu99ARwH.js";import"./dist-CQG39nVX.js";import"./dist-1sgFrolC.js";import"./dist-GYoBJCzF.js";import"./dist-BjkXqMhR.js";import"./dist-Bxj5sO2I.js";import"./esm-DN_A77ya.js";var _e=E(),Ne=T(L(),1),t=T(q(),1);const ve=o=>{let e=(0,_e.c)(26),{appConfig:s}=o,{setCells:r}=U(),{sendComponentValues:d}=Y(),l;e[0]===d?l=e[1]:(l=()=>(A.INSTANCE.start(d),we),e[0]=d,e[1]=l);let i;e[2]===Symbol.for("react.memo_cache_sentinel")?(i=[],e[2]=i):i=e[2],(0,Ne.useEffect)(l,i);let m;e[3]===Symbol.for("react.memo_cache_sentinel")?(m=me(),e[3]=m):m=e[3];let g;e[4]===r?g=e[5]:(g={autoInstantiate:!0,setCells:r,sessionId:m},e[4]=r,e[5]=g);let{connection:a}=se(g),v=R(W),y;e[6]===a.state?y=e[7]:(y=H(a.state),e[6]=a.state,e[7]=y);let j=y,w=R($),k;e[8]!==s||e[9]!==w||e[10]!==j?(k=()=>j&&!w?(0,t.jsxs)(G,{milliseconds:2e3,fallback:null,children:[(0,t.jsx)(ie,{className:"mx-auto"}),(0,t.jsx)("p",{className:"text-center text-sm text-muted-foreground mt-2",children:"Connecting..."})]}):(0,t.jsx)(te,{appConfig:s,mode:"read"}),e[8]=s,e[9]=w,e[10]=j,e[11]=k):k=e[11];let u=k,p;e:{if(typeof window>"u"){p=null;break e}let b,c;if(e[12]===Symbol.for("react.memo_cache_sentinel")){if(c=new URL(window.location.href),!c.searchParams.has("file")){p=null;break e}c.searchParams.delete("file"),b=c.searchParams.toString(),e[12]=b,e[13]=c,e[14]=p}else b=e[12],c=e[13],p=e[14];let N=b;p=N?`${c.pathname}?${N}`:c.pathname}let _=p,S=s.width,h;e[15]===Symbol.for("react.memo_cache_sentinel")?(h=_&&(0,t.jsx)("div",{className:"flex items-center px-6 pt-4 sm:-mt-8",children:(0,t.jsxs)("a",{href:_,"aria-label":"Back to gallery",className:M(X({variant:"text",size:"sm"}),"gap-2 px-0 text-muted-foreground hover:text-foreground"),children:[(0,t.jsx)(Z,{className:"size-4","aria-hidden":!0}),(0,t.jsx)("span",{children:"Back"})]})}),e[15]=h):h=e[15];let n;e[16]===a?n=e[17]:(n=(0,t.jsx)(ae,{connection:a,className:"sm:pt-8",children:h}),e[16]=a,e[17]=n);let f;e[18]===u?f=e[19]:(f=u(),e[18]=u,e[19]=f);let x;return e[20]!==s.width||e[21]!==a||e[22]!==v||e[23]!==n||e[24]!==f?(x=(0,t.jsxs)(re,{connection:a,isRunning:v,width:S,children:[n,f]}),e[20]=s.width,e[21]=a,e[22]=v,e[23]=n,e[24]=f,e[25]=x):x=e[25],x};function we(){A.INSTANCE.stop()}var B=E();const Se=()=>{let o=(0,B.c)(3),e=R(V);if(!O()||!e)return null;let s;o[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsxs)("span",{children:["Static"," ",(0,t.jsx)("a",{href:I.githubPage,target:"_blank",className:"text-(--sky-11) font-medium underline",children:"marimo"})," ","notebook - Run or edit for full interactivity"]}),o[0]=s):s=o[0];let r;return o[1]===e?r=o[2]:(r=(0,t.jsxs)("div",{className:"px-4 py-2 bg-(--sky-2) border-b border-(--sky-7) text-(--sky-11) flex justify-between items-center gap-4 print:hidden text-sm","data-testid":"static-notebook-banner",children:[s,(0,t.jsx)("span",{className:"shrink-0",children:(0,t.jsx)(Ce,{code:e})})]}),o[1]=e,o[2]=r),r};var Ce=o=>{let e=(0,B.c)(39),{code:s}=o,r=je()||"notebook.py",d=r.lastIndexOf("/");d!==-1&&(r=r.slice(d+1));let l=window.location.href,i;e[0]===s?i=e[1]:(i=be({code:s,baseUrl:`${I.molab}/new`}),e[0]=s,e[1]=i);let m=i,g;e[2]===Symbol.for("react.memo_cache_sentinel")?(g=(0,t.jsx)(pe,{asChild:!0,children:(0,t.jsx)(P,{"data-testid":"static-notebook-dialog-trigger",variant:"outline",size:"xs",children:"Run or Edit"})}),e[2]=g):g=e[2];let a;e[3]===r?a=e[4]:(a=(0,t.jsx)(de,{children:r}),e[3]=r,e[4]=a);let v;e[5]===Symbol.for("react.memo_cache_sentinel")?(v=(0,t.jsxs)("p",{children:["This is a static"," ",(0,t.jsx)("a",{href:I.githubPage,target:"_blank",className:"text-(--sky-11) hover:underline font-medium",children:"marimo"})," ","notebook. To run interactively:"]}),e[5]=v):v=e[5];let y;e[6]===Symbol.for("react.memo_cache_sentinel")?(y=(0,t.jsx)("br",{}),e[6]=y):y=e[6];let j;e[7]===r?j=e[8]:(j=(0,t.jsx)("div",{className:"rounded-lg p-3 border bg-(--sky-2) border-(--sky-7)",children:(0,t.jsxs)("div",{className:"font-mono text-(--sky-11) leading-relaxed",children:["pip install marimo",y,"marimo edit ",r]})}),e[7]=r,e[8]=j);let w;e[9]===Symbol.for("react.memo_cache_sentinel")?(w=!l.endsWith(".html")&&(0,t.jsxs)("div",{className:"rounded-lg p-3 border bg-(--sky-2) border-(--sky-7)",children:[(0,t.jsx)("div",{className:"text-sm text-(--sky-12) mb-1",children:"Or run directly from URL:"}),(0,t.jsxs)("div",{className:"font-mono text-(--sky-11) break-all",children:["marimo edit ",window.location.href]})]}),e[9]=w):w=e[9];let k;e[10]===Symbol.for("react.memo_cache_sentinel")?(k=(0,t.jsx)(ye,{size:12,strokeWidth:1.5,className:"mr-1.5 mt-px text-(--grass-11)"}),e[10]=k):k=e[10];let u;e[11]===m?u=e[12]:(u=(0,t.jsx)(P,{asChild:!0,variant:"outline",size:"xs",className:"shrink-0",children:(0,t.jsxs)("a",{href:m,target:"_blank",rel:"noopener noreferrer",children:[k,"Open in molab"]})}),e[11]=m,e[12]=u);let p;e[13]===Symbol.for("react.memo_cache_sentinel")?(p=(0,t.jsxs)("p",{className:"text-sm text-(--sky-12)",children:["Run this notebook in"," ",(0,t.jsx)("span",{className:"font-semibold",children:"molab"}),", marimo's cloud-hosted notebook platform."]}),e[13]=p):p=e[13];let _;e[14]===u?_=e[15]:(_=(0,t.jsxs)("div",{className:"pt-3 border-t flex gap-2 items-center",children:[u,p]}),e[14]=u,e[15]=_);let S;e[16]!==_||e[17]!==j?(S=(0,t.jsxs)(fe,{className:"pt-3 text-left space-y-3",children:[v,j,w,_]}),e[16]=_,e[17]=j,e[18]=S):S=e[18];let h;e[19]!==S||e[20]!==a?(h=(0,t.jsxs)(ce,{children:[a,S]}),e[19]=S,e[20]=a,e[21]=h):h=e[21];let n;e[22]===s?n=e[23]:(n=async()=>{await ne(s),le({title:"Copied to clipboard"})},e[22]=s,e[23]=n);let f;e[24]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsx)(ee,{className:"w-3 h-3 mr-2"}),e[24]=f):f=e[24];let x;e[25]===n?x=e[26]:(x=(0,t.jsxs)(P,{"data-testid":"copy-static-notebook-dialog-button",variant:"outline",size:"sm",onClick:n,children:[f,"Copy code"]}),e[25]=n,e[26]=x);let b;e[27]!==s||e[28]!==r?(b=()=>{Q(new Blob([s],{type:"text/plain"}),r)},e[27]=s,e[28]=r,e[29]=b):b=e[29];let c;e[30]===Symbol.for("react.memo_cache_sentinel")?(c=(0,t.jsx)(J,{className:"w-3 h-3 mr-2"}),e[30]=c):c=e[30];let N;e[31]===b?N=e[32]:(N=(0,t.jsxs)(P,{"data-testid":"download-static-notebook-dialog-button",variant:"outline",size:"sm",onClick:b,children:[c,"Download"]}),e[31]=b,e[32]=N);let C;e[33]!==x||e[34]!==N?(C=(0,t.jsxs)("div",{className:"flex gap-3 pt-2",children:[x,N]}),e[33]=x,e[34]=N,e[35]=C):C=e[35];let z;return e[36]!==h||e[37]!==C?(z=(0,t.jsxs)(xe,{children:[g,(0,t.jsxs)(he,{children:[h,C]})]}),e[36]=h,e[37]=C,e[38]=z):z=e[38],z},D=E(),ze=F()||O(),Ie=o=>{let e=(0,D.c)(9),s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(Se,{}),e[0]=s):s=e[0];let r;e[1]===o.appConfig?r=e[2]:(r=(0,t.jsx)(ve,{appConfig:o.appConfig}),e[1]=o.appConfig,e[2]=r);let d;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=ze&&(0,t.jsx)(Pe,{}),e[3]=d):d=e[3];let l;e[4]===r?l=e[5]:(l=(0,t.jsxs)(ge,{children:[s,r,d]}),e[4]=r,e[5]=l);let i;e[6]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(K,{}),e[6]=i):i=e[6];let m;return e[7]===l?m=e[8]:(m=(0,t.jsx)(oe,{children:(0,t.jsxs)(ue,{direction:"horizontal",autoSaveId:"marimo:chrome:v1:run1",children:[l,i]})}),e[7]=l,e[8]=m),m},Pe=()=>{let o=(0,D.c)(1),e;return o[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)("div",{className:"fixed bottom-0 right-0 z-50","data-testid":"watermark",children:(0,t.jsxs)("a",{href:I.githubPage,target:"_blank",className:"text-sm text-(--grass-11) font-bold tracking-wide transition-colors bg-(--grass-4) hover:bg-(--grass-5) border-t border-l border-(--grass-8) px-3 py-1 rounded-tl-md flex items-center gap-2",children:[(0,t.jsx)("span",{children:"made with marimo"}),(0,t.jsx)(ke,{className:"h-4 w-auto"})]})}),o[0]=e):e=o[0],e},Re=Ie;export{Re as default};
@@ -38,7 +38,7 @@ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=
38
38
 
39
39
  Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function Wr(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e===`$ref`||e===`allOf`||e in a||delete i[e];if(s.$ref&&n.def)for(let e in i)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(a[e.defId]=e.def)}e.external||Object.keys(a).length>0&&(e.target===`draft-2020-12`?i.$defs=a:i.definitions=a);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,`~standard`,{value:{...t[`~standard`],jsonSchema:{input:Kr(t,`input`,e.processors),output:Kr(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function I(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return I(r.element,n);if(r.type===`set`)return I(r.valueType,n);if(r.type===`lazy`)return I(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type===`default`||r.type===`prefault`)return I(r.innerType,n);if(r.type===`intersection`)return I(r.left,n)||I(r.right,n);if(r.type===`record`||r.type===`map`)return I(r.keyType,n)||I(r.valueType,n);if(r.type===`pipe`)return I(r.in,n)||I(r.out,n);if(r.type===`object`){for(let e in r.shape)if(I(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(I(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(I(e,n))return!0;return!!(r.rest&&I(r.rest,n))}return!1}const Gr=(e,t={})=>n=>{let r=Hr({...n,processors:t});return F(e,r),Ur(r,e),Wr(r,e)},Kr=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=Hr({...i??{},target:a,io:t,processors:n});return F(e,o),Ur(o,e),Wr(o,e)},qr={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},Jr=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=qr[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},Yr=(e,t,n,r)=>{n.not={}},Xr=(e,t,n,r)=>{let i=e._zod.def,a=de(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},Zr=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},Qr=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},$r=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=F(a.element,t,{...r,path:[...r.path,`items`]})},ei=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=F(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=F(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},ti=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>F(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},ni=(e,t,n,r)=>{let i=e._zod.def,a=F(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=F(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},ri=(e,t,n,r)=>{let i=e._zod.def,a=F(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},ii=(e,t,n,r)=>{let i=e._zod.def;F(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},ai=(e,t,n,r)=>{let i=e._zod.def;F(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},oi=(e,t,n,r)=>{let i=e._zod.def;F(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},si=(e,t,n,r)=>{let i=e._zod.def;F(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},ci=(e,t,n,r)=>{let i=e._zod.def,a=t.io===`input`?i.in._zod.def.type===`transform`?i.out:i.in:i.out;F(a,t,r);let o=t.seen.get(e);o.ref=a},li=(e,t,n,r)=>{let i=e._zod.def;F(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},ui=(e,t,n,r)=>{let i=e._zod.def;F(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},di=v(`ZodISODateTime`,(e,t)=>{Qt.init(e,t),z.init(e,t)});function fi(e){return vr(di,e)}const pi=v(`ZodISODate`,(e,t)=>{$t.init(e,t),z.init(e,t)});function mi(e){return yr(pi,e)}const hi=v(`ZodISOTime`,(e,t)=>{en.init(e,t),z.init(e,t)});function gi(e){return br(hi,e)}const _i=v(`ZodISODuration`,(e,t)=>{tn.init(e,t),z.init(e,t)});function vi(e){return xr(_i,e)}const yi=(e,t)=>{Le.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>Be(e,t)},flatten:{value:t=>ze(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,fe,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,fe,2)}},isEmpty:{get(){return e.issues.length===0}}})};v(`ZodError`,yi);const L=v(`ZodError`,yi,{Parent:Error}),bi=Ve(L),xi=He(L),Si=Ue(L),Ci=Ge(L),wi=qe(L),Ti=Je(L),Ei=Ye(L),Di=Xe(L),Oi=Ze(L),ki=Qe(L),Ai=$e(L),ji=et(L),R=v(`ZodType`,(e,t)=>(j.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:Kr(e,`input`),output:Kr(e,`output`)}}),e.toJSONSchema=Gr(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,`_def`,{value:t}),e.check=(...n)=>e.clone(C(t,{checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0}),e.with=e.check,e.clone=(t,n)=>T(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.parse=(t,n)=>bi(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Si(e,t,n),e.parseAsync=async(t,n)=>xi(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Ci(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>wi(e,t,n),e.decode=(t,n)=>Ti(e,t,n),e.encodeAsync=async(t,n)=>Ei(e,t,n),e.decodeAsync=async(t,n)=>Di(e,t,n),e.safeEncode=(t,n)=>Oi(e,t,n),e.safeDecode=(t,n)=>ki(e,t,n),e.safeEncodeAsync=async(t,n)=>Ai(e,t,n),e.safeDecodeAsync=async(t,n)=>ji(e,t,n),e.refine=(t,n)=>e.check(Fa(t,n)),e.superRefine=t=>e.check(Ia(t)),e.overwrite=t=>e.check(P(t)),e.optional=()=>_a(e),e.exactOptional=()=>ya(e),e.nullable=()=>xa(e),e.nullish=()=>_a(xa(e)),e.nonoptional=t=>Da(e,t),e.array=()=>aa(e),e.or=t=>la([e,t]),e.and=t=>da(e,t),e.transform=t=>ja(e,ha(t)),e.default=t=>Ca(e,t),e.prefault=t=>Ta(e,t),e.catch=t=>ka(e,t),e.pipe=t=>ja(e,t),e.readonly=()=>Na(e),e.describe=t=>{let n=e.clone();return N.add(n,{description:t}),n},Object.defineProperty(e,`description`,{get(){return N.get(e)?.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return N.get(e);let n=e.clone();return N.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=t=>t(e),e)),Mi=v(`_ZodString`,(e,t)=>{Bt.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Jr(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(Dr(...t)),e.includes=(...t)=>e.check(Ar(...t)),e.startsWith=(...t)=>e.check(jr(...t)),e.endsWith=(...t)=>e.check(Mr(...t)),e.min=(...t)=>e.check(Tr(...t)),e.max=(...t)=>e.check(wr(...t)),e.length=(...t)=>e.check(Er(...t)),e.nonempty=(...t)=>e.check(Tr(1,...t)),e.lowercase=t=>e.check(Or(t)),e.uppercase=t=>e.check(kr(t)),e.trim=()=>e.check(Pr()),e.normalize=(...t)=>e.check(Nr(...t)),e.toLowerCase=()=>e.check(Fr()),e.toUpperCase=()=>e.check(Ir()),e.slugify=()=>e.check(Lr())}),Ni=v(`ZodString`,(e,t)=>{Bt.init(e,t),Mi.init(e,t),e.email=t=>e.check(Xn(Fi,t)),e.url=t=>e.check(nr(Ri,t)),e.jwt=t=>e.check(_r($i,t)),e.emoji=t=>e.check(rr(zi,t)),e.guid=t=>e.check(Zn(Ii,t)),e.uuid=t=>e.check(Qn(Li,t)),e.uuidv4=t=>e.check($n(Li,t)),e.uuidv6=t=>e.check(er(Li,t)),e.uuidv7=t=>e.check(tr(Li,t)),e.nanoid=t=>e.check(ir(Bi,t)),e.guid=t=>e.check(Zn(Ii,t)),e.cuid=t=>e.check(ar(Vi,t)),e.cuid2=t=>e.check(or(Hi,t)),e.ulid=t=>e.check(sr(Ui,t)),e.base64=t=>e.check(mr(Xi,t)),e.base64url=t=>e.check(hr(Zi,t)),e.xid=t=>e.check(cr(Wi,t)),e.ksuid=t=>e.check(lr(Gi,t)),e.ipv4=t=>e.check(ur(Ki,t)),e.ipv6=t=>e.check(dr(qi,t)),e.cidrv4=t=>e.check(fr(Ji,t)),e.cidrv6=t=>e.check(pr(Yi,t)),e.e164=t=>e.check(gr(Qi,t)),e.datetime=t=>e.check(fi(t)),e.date=t=>e.check(mi(t)),e.time=t=>e.check(gi(t)),e.duration=t=>e.check(vi(t))});function Pi(e){return Yn(Ni,e)}const z=v(`ZodStringFormat`,(e,t)=>{M.init(e,t),Mi.init(e,t)}),Fi=v(`ZodEmail`,(e,t)=>{Ut.init(e,t),z.init(e,t)}),Ii=v(`ZodGUID`,(e,t)=>{Vt.init(e,t),z.init(e,t)}),Li=v(`ZodUUID`,(e,t)=>{Ht.init(e,t),z.init(e,t)}),Ri=v(`ZodURL`,(e,t)=>{Wt.init(e,t),z.init(e,t)}),zi=v(`ZodEmoji`,(e,t)=>{Gt.init(e,t),z.init(e,t)}),Bi=v(`ZodNanoID`,(e,t)=>{Kt.init(e,t),z.init(e,t)}),Vi=v(`ZodCUID`,(e,t)=>{qt.init(e,t),z.init(e,t)}),Hi=v(`ZodCUID2`,(e,t)=>{Jt.init(e,t),z.init(e,t)}),Ui=v(`ZodULID`,(e,t)=>{Yt.init(e,t),z.init(e,t)}),Wi=v(`ZodXID`,(e,t)=>{Xt.init(e,t),z.init(e,t)}),Gi=v(`ZodKSUID`,(e,t)=>{Zt.init(e,t),z.init(e,t)}),Ki=v(`ZodIPv4`,(e,t)=>{nn.init(e,t),z.init(e,t)}),qi=v(`ZodIPv6`,(e,t)=>{rn.init(e,t),z.init(e,t)}),Ji=v(`ZodCIDRv4`,(e,t)=>{an.init(e,t),z.init(e,t)}),Yi=v(`ZodCIDRv6`,(e,t)=>{on.init(e,t),z.init(e,t)}),Xi=v(`ZodBase64`,(e,t)=>{cn.init(e,t),z.init(e,t)}),Zi=v(`ZodBase64URL`,(e,t)=>{un.init(e,t),z.init(e,t)}),Qi=v(`ZodE164`,(e,t)=>{dn.init(e,t),z.init(e,t)}),$i=v(`ZodJWT`,(e,t)=>{pn.init(e,t),z.init(e,t)}),ea=v(`ZodUnknown`,(e,t)=>{mn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function ta(){return Sr(ea)}const na=v(`ZodNever`,(e,t)=>{hn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Yr(e,t,n,r)});function ra(e){return Cr(na,e)}const ia=v(`ZodArray`,(e,t)=>{_n.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>$r(e,t,n,r),e.element=t.element,e.min=(t,n)=>e.check(Tr(t,n)),e.nonempty=t=>e.check(Tr(1,t)),e.max=(t,n)=>e.check(wr(t,n)),e.length=(t,n)=>e.check(Er(t,n)),e.unwrap=()=>e.element});function aa(e,t){return Rr(ia,e,t)}const oa=v(`ZodObject`,(e,t)=>{Sn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ei(e,t,n,r),x(e,`shape`,()=>t.shape),e.keyof=()=>pa(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:ta()}),e.loose=()=>e.clone({...e._zod.def,catchall:ta()}),e.strict=()=>e.clone({...e._zod.def,catchall:ra()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>Oe(e,t),e.safeExtend=t=>ke(e,t),e.merge=t=>Ae(e,t),e.pick=t=>Ee(e,t),e.omit=t=>De(e,t),e.partial=(...t)=>je(ga,e,t[0]),e.required=(...t)=>Me(Ea,e,t[0])});function sa(e,t){return new oa({type:`object`,shape:e??{},...E(t)})}const ca=v(`ZodUnion`,(e,t)=>{wn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ti(e,t,n,r),e.options=t.options});function la(e,t){return new ca({type:`union`,options:e,...E(t)})}const ua=v(`ZodIntersection`,(e,t)=>{Tn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ni(e,t,n,r)});function da(e,t){return new ua({type:`intersection`,left:e,right:t})}const fa=v(`ZodEnum`,(e,t)=>{On.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Xr(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new fa({...t,checks:[],...E(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new fa({...t,checks:[],...E(r),entries:i})}});function pa(e,t){return new fa({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...E(t)})}const ma=v(`ZodTransform`,(e,t)=>{kn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Qr(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new le(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(k(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(k(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function ha(e){return new ma({type:`transform`,transform:e})}const ga=v(`ZodOptional`,(e,t)=>{jn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ui(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function _a(e){return new ga({type:`optional`,innerType:e})}const va=v(`ZodExactOptional`,(e,t)=>{Mn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ui(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function ya(e){return new va({type:`optional`,innerType:e})}const ba=v(`ZodNullable`,(e,t)=>{Nn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ri(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function xa(e){return new ba({type:`nullable`,innerType:e})}const Sa=v(`ZodDefault`,(e,t)=>{Pn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ai(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Ca(e,t){return new Sa({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():Se(t)}})}const wa=v(`ZodPrefault`,(e,t)=>{In.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>oi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Ta(e,t){return new wa({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():Se(t)}})}const Ea=v(`ZodNonOptional`,(e,t)=>{Ln.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ii(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Da(e,t){return new Ea({type:`nonoptional`,innerType:e,...E(t)})}const Oa=v(`ZodCatch`,(e,t)=>{zn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>si(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ka(e,t){return new Oa({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}const Aa=v(`ZodPipe`,(e,t)=>{Bn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ci(e,t,n,r),e.in=t.in,e.out=t.out});function ja(e,t){return new Aa({type:`pipe`,in:e,out:t})}const Ma=v(`ZodReadonly`,(e,t)=>{Hn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>li(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Na(e){return new Ma({type:`readonly`,innerType:e})}const Pa=v(`ZodCustom`,(e,t)=>{Wn.init(e,t),R.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Zr(e,t,n,r)});function Fa(e,t={}){return zr(Pa,e,t)}function Ia(e){return Br(e)}const La=sa({detail:Pi()}),Ra=sa({error:Pi()});function za(e){if(!e)return`Unknown error`;if(e instanceof Error){let t=La.safeParse(e.cause);return t.success?t.data.detail:Ba(e.message)}if(typeof e==`object`){let t=La.safeParse(e);if(t.success)return t.data.detail;let n=Ra.safeParse(e);if(n.success)return n.data.error}try{return JSON.stringify(e)}catch{return String(e)}}function Ba(e){let t=Va(e);if(!t)return e;let n=La.safeParse(t);if(n.success)return n.data.detail;let r=Ra.safeParse(t);return r.success?r.data.error:e}function Va(e){try{return JSON.parse(e)}catch{return e}}function B(e){return e.FS}const Ha=`notebook.py`,V=`/marimo`,H={NOTEBOOK_FILENAME:Ha,HOME_DIR:V,createHomeDir:e=>{let t=B(e);try{t.mkdirTree(V)}catch{}t.chdir(V)},mountFS:e=>{B(e).mount(e.FS.filesystems.IDBFS,{root:`.`},V)},populateFilesToMemory:async e=>{await Ua(e,!0)},persistFilesToRemote:async e=>{await Ua(e,!1)},readNotebook:e=>{let t=B(e),n=`${V}/${Ha}`;return ce(t.readFile(n))},initNotebookCode:e=>{let{pyodide:t,filename:n,code:r}=e,i=B(t),a=e=>{try{return ce(i.readFile(e))}catch{return null}};if(n&&n!==Ha){let e=a(n);if(e)return{code:e,filename:n}}return i.writeFile(Ha,r),{code:r,filename:Ha}}};function Ua(e,t){return new Promise((n,r)=>{B(e).syncfs(t,e=>{if(e instanceof Error){r(e);return}n()})})}var Wa=Object.defineProperty,U=(e,t)=>Wa(e,`name`,{value:t,configurable:!0}),Ga=(e=>typeof u<`u`?u:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof u<`u`?u:e)[t]}):e)(function(e){if(typeof u<`u`)return u.apply(this,arguments);throw Error(`Dynamic require of "`+e+`" is not supported`)});function Ka(e){return!isNaN(parseFloat(e))&&isFinite(e)}U(Ka,`_isNumber`);function W(e){return e.charAt(0).toUpperCase()+e.substring(1)}U(W,`_capitalize`);function qa(e){return function(){return this[e]}}U(qa,`_getter`);var G=[`isConstructor`,`isEval`,`isNative`,`isToplevel`],K=[`columnNumber`,`lineNumber`],q=[`fileName`,`functionName`,`source`],Ja=G.concat(K,q,[`args`],[`evalOrigin`]);function J(e){if(e)for(var t=0;t<Ja.length;t++)e[Ja[t]]!==void 0&&this[`set`+W(Ja[t])](e[Ja[t]])}for(U(J,`StackFrame`),J.prototype={getArgs:function(){return this.args},setArgs:function(e){if(Object.prototype.toString.call(e)!==`[object Array]`)throw TypeError(`Args must be an Array`);this.args=e},getEvalOrigin:function(){return this.evalOrigin},setEvalOrigin:function(e){if(e instanceof J)this.evalOrigin=e;else if(e instanceof Object)this.evalOrigin=new J(e);else throw TypeError(`Eval Origin must be an Object or StackFrame`)},toString:function(){var e=this.getFileName()||``,t=this.getLineNumber()||``,n=this.getColumnNumber()||``,r=this.getFunctionName()||``;return this.getIsEval()?e?`[eval] (`+e+`:`+t+`:`+n+`)`:`[eval]:`+t+`:`+n:r?r+` (`+e+`:`+t+`:`+n+`)`:e+`:`+t+`:`+n}},J.fromString=U(function(e){var t=e.indexOf(`(`),n=e.lastIndexOf(`)`),r=e.substring(0,t),i=e.substring(t+1,n).split(`,`),a=e.substring(n+1);if(a.indexOf(`@`)===0)var o=/@(.+?)(?::(\d+))?(?::(\d+))?$/.exec(a,``),s=o[1],c=o[2],l=o[3];return new J({functionName:r,args:i||void 0,fileName:s,lineNumber:c||void 0,columnNumber:l||void 0})},`StackFrame$$fromString`),Y=0;Y<G.length;Y++)J.prototype[`get`+W(G[Y])]=qa(G[Y]),J.prototype[`set`+W(G[Y])]=function(e){return function(t){this[e]=!!t}}(G[Y]);var Y;for(X=0;X<K.length;X++)J.prototype[`get`+W(K[X])]=qa(K[X]),J.prototype[`set`+W(K[X])]=function(e){return function(t){if(!Ka(t))throw TypeError(e+` must be a Number`);this[e]=Number(t)}}(K[X]);var X;for(Z=0;Z<q.length;Z++)J.prototype[`get`+W(q[Z])]=qa(q[Z]),J.prototype[`set`+W(q[Z])]=function(e){return function(t){this[e]=String(t)}}(q[Z]);var Z,Ya=J;function Xa(){var e=/^\s*at .*(\S+:\d+|\(native\))/m,t=/^(eval@)?(\[native code])?$/;return{parse:U(function(t){if(t.stack&&t.stack.match(e))return this.parseV8OrIE(t);if(t.stack)return this.parseFFOrSafari(t);throw Error(`Cannot parse given Error object`)},`ErrorStackParser$$parse`),extractLocation:U(function(e){if(e.indexOf(`:`)===-1)return[e];var t=/(.+?)(?::(\d+))?(?::(\d+))?$/.exec(e.replace(/[()]/g,``));return[t[1],t[2]||void 0,t[3]||void 0]},`ErrorStackParser$$extractLocation`),parseV8OrIE:U(function(t){return t.stack.split(`
40
40
  `).filter(function(t){return!!t.match(e)},this).map(function(e){e.indexOf(`(eval `)>-1&&(e=e.replace(/eval code/g,`eval`).replace(/(\(eval at [^()]*)|(,.*$)/g,``));var t=e.replace(/^\s+/,``).replace(/\(eval code/g,`(`).replace(/^.*?\s+/,``),n=t.match(/ (\(.+\)$)/);t=n?t.replace(n[0],``):t;var r=this.extractLocation(n?n[1]:t);return new Ya({functionName:n&&t||void 0,fileName:[`eval`,`<anonymous>`].indexOf(r[0])>-1?void 0:r[0],lineNumber:r[1],columnNumber:r[2],source:e})},this)},`ErrorStackParser$$parseV8OrIE`),parseFFOrSafari:U(function(e){return e.stack.split(`
41
- `).filter(function(e){return!e.match(t)},this).map(function(e){if(e.indexOf(` > eval`)>-1&&(e=e.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,`:$1`)),e.indexOf(`@`)===-1&&e.indexOf(`:`)===-1)return new Ya({functionName:e});var t=/((.*".+"[^@]*)?[^@]*)(?:@)/,n=e.match(t),r=n&&n[1]?n[1]:void 0,i=this.extractLocation(e.replace(t,``));return new Ya({functionName:r,fileName:i[0],lineNumber:i[1],columnNumber:i[2],source:e})},this)},`ErrorStackParser$$parseFFOrSafari`)}}U(Xa,`ErrorStackParser`);var Za=new Xa,Q=typeof process==`object`&&typeof process.versions==`object`&&typeof process.versions.node==`string`&&!process.browser,Qa=Q&&typeof module<`u`&&typeof module.exports<`u`&&typeof Ga<`u`&&typeof __dirname<`u`,$a=Q&&!Qa;globalThis.Bun;var eo=!Q&&!(typeof Deno<`u`),to=eo&&typeof window==`object`&&typeof document==`object`&&typeof document.createElement==`function`&&`sessionStorage`in window&&typeof importScripts!=`function`,no=eo&&typeof importScripts==`function`&&typeof self==`object`;typeof navigator==`object`&&typeof navigator.userAgent==`string`&&navigator.userAgent.indexOf(`Chrome`)==-1&&navigator.userAgent.indexOf(`Safari`);var ro,io,ao,oo,so;async function co(){if(!Q||(ro=(await import(`./__vite-browser-external-D0cSGXjR.js`).then(l(1))).default,oo=await import(`./__vite-browser-external-D0cSGXjR.js`).then(l(1)),so=await import(`./__vite-browser-external-D0cSGXjR.js`).then(l(1)),ao=(await import(`./__vite-browser-external-D0cSGXjR.js`).then(l(1))).default,io=await import(`./__vite-browser-external-D0cSGXjR.js`).then(l(1)),po=io.sep,typeof Ga<`u`))return;let e={fs:oo,crypto:await import(`./__vite-browser-external-D0cSGXjR.js`).then(l(1)),ws:await import(`./__vite-browser-external-D0cSGXjR.js`).then(l(1)),child_process:await import(`./__vite-browser-external-D0cSGXjR.js`).then(l(1))};globalThis.require=function(t){return e[t]}}U(co,`initNodeModules`);function lo(e,t){return io.resolve(t||`.`,e)}U(lo,`node_resolvePath`);function uo(e,t){return t===void 0&&(t=location),new URL(e,t).toString()}U(uo,`browser_resolvePath`);var fo=Q?lo:uo,po;Q||(po=`/`);function mo(e,t){return e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?{response:fetch(e)}:{binary:so.readFile(e).then(e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength))}}U(mo,`node_getBinaryResponse`);function ho(e,t){let n=new URL(e,location);return{response:fetch(n,t?{integrity:t}:{})}}U(ho,`browser_getBinaryResponse`);var go=Q?mo:ho;async function _o(e,t){let{response:n,binary:r}=go(e,t);if(r)return r;let i=await n;if(!i.ok)throw Error(`Failed to load '${e}': request failed.`);return new Uint8Array(await i.arrayBuffer())}U(_o,`loadBinaryFile`);var vo;if(to)vo=U(async e=>await import(e),`loadScript`);else if(no)vo=U(async e=>{try{globalThis.importScripts(e)}catch(t){if(t instanceof TypeError)await import(e);else throw t}},`loadScript`);else if(Q)vo=yo;else throw Error(`Cannot determine runtime environment`);async function yo(e){e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?ao.runInThisContext(await(await fetch(e)).text()):await import(ro.pathToFileURL(e).href)}U(yo,`nodeLoadScript`);async function bo(e){if(Q){await co();let t=await so.readFile(e,{encoding:`utf8`});return JSON.parse(t)}else return await(await fetch(e)).json()}U(bo,`loadLockFile`);async function xo(){if(Qa)return __dirname;let e;try{throw Error()}catch(t){e=t}let t=Za.parse(e)[0].fileName;if(Q&&!t.startsWith(`file://`)&&(t=`file://${t}`),$a){let e=await import(`./__vite-browser-external-D0cSGXjR.js`).then(l(1));return(await import(`./__vite-browser-external-D0cSGXjR.js`).then(l(1))).fileURLToPath(e.dirname(t))}let n=t.lastIndexOf(po);if(n===-1)throw Error(`Could not extract indexURL path from pyodide module location`);return t.slice(0,n)}U(xo,`calculateDirname`);function So(e){let t=e.FS,n=e.FS.filesystems.MEMFS,r=e.PATH,i={DIR_MODE:16895,FILE_MODE:33279,mount:function(e){if(!e.opts.fileSystemHandle)throw Error(`opts.fileSystemHandle is required`);return n.mount.apply(null,arguments)},syncfs:async(e,t,n)=>{try{let r=i.getLocalSet(e),a=await i.getRemoteSet(e),o=t?a:r,s=t?r:a;await i.reconcile(e,o,s),n(null)}catch(e){n(e)}},getLocalSet:e=>{let n=Object.create(null);function i(e){return e!==`.`&&e!==`..`}U(i,`isRealDir`);function a(e){return t=>r.join2(e,t)}U(a,`toAbsolute`);let o=t.readdir(e.mountpoint).filter(i).map(a(e.mountpoint));for(;o.length;){let e=o.pop(),r=t.stat(e);t.isDir(r.mode)&&o.push.apply(o,t.readdir(e).filter(i).map(a(e))),n[e]={timestamp:r.mtime,mode:r.mode}}return{type:`local`,entries:n}},getRemoteSet:async e=>{let t=Object.create(null),n=await Co(e.opts.fileSystemHandle);for(let[a,o]of n)a!==`.`&&(t[r.join2(e.mountpoint,a)]={timestamp:o.kind===`file`?new Date((await o.getFile()).lastModified):new Date,mode:o.kind===`file`?i.FILE_MODE:i.DIR_MODE});return{type:`remote`,entries:t,handles:n}},loadLocalEntry:e=>{let r=t.lookupPath(e).node,i=t.stat(e);if(t.isDir(i.mode))return{timestamp:i.mtime,mode:i.mode};if(t.isFile(i.mode))return r.contents=n.getFileDataAsTypedArray(r),{timestamp:i.mtime,mode:i.mode,contents:r.contents};throw Error(`node type not supported`)},storeLocalEntry:(e,n)=>{if(t.isDir(n.mode))t.mkdirTree(e,n.mode);else if(t.isFile(n.mode))t.writeFile(e,n.contents,{canOwn:!0});else throw Error(`node type not supported`);t.chmod(e,n.mode),t.utime(e,n.timestamp,n.timestamp)},removeLocalEntry:e=>{var n=t.stat(e);t.isDir(n.mode)?t.rmdir(e):t.isFile(n.mode)&&t.unlink(e)},loadRemoteEntry:async e=>{if(e.kind===`file`){let t=await e.getFile();return{contents:new Uint8Array(await t.arrayBuffer()),mode:i.FILE_MODE,timestamp:new Date(t.lastModified)}}else{if(e.kind===`directory`)return{mode:i.DIR_MODE,timestamp:new Date};throw Error(`unknown kind: `+e.kind)}},storeRemoteEntry:async(e,n,i)=>{let a=e.get(r.dirname(n)),o=t.isFile(i.mode)?await a.getFileHandle(r.basename(n),{create:!0}):await a.getDirectoryHandle(r.basename(n),{create:!0});if(o.kind===`file`){let e=await o.createWritable();await e.write(i.contents),await e.close()}e.set(n,o)},removeRemoteEntry:async(e,t)=>{await e.get(r.dirname(t)).removeEntry(r.basename(t)),e.delete(t)},reconcile:async(e,n,a)=>{let o=0,s=[];Object.keys(n.entries).forEach(function(e){let r=n.entries[e],i=a.entries[e];(!i||t.isFile(r.mode)&&r.timestamp.getTime()>i.timestamp.getTime())&&(s.push(e),o++)}),s.sort();let c=[];if(Object.keys(a.entries).forEach(function(e){n.entries[e]||(c.push(e),o++)}),c.sort().reverse(),!o)return;let l=n.type===`remote`?n.handles:a.handles;for(let t of s){let n=r.normalize(t.replace(e.mountpoint,`/`)).substring(1);if(a.type===`local`){let e=l.get(n),r=await i.loadRemoteEntry(e);i.storeLocalEntry(t,r)}else{let e=i.loadLocalEntry(t);await i.storeRemoteEntry(l,n,e)}}for(let t of c)if(a.type===`local`)i.removeLocalEntry(t);else{let n=r.normalize(t.replace(e.mountpoint,`/`)).substring(1);await i.removeRemoteEntry(l,n)}}};e.FS.filesystems.NATIVEFS_ASYNC=i}U(So,`initializeNativeFS`);var Co=U(async e=>{let t=[];async function n(e){for await(let r of e.values())t.push(r),r.kind===`directory`&&await n(r)}U(n,`collect`),await n(e);let r=new Map;r.set(`.`,e);for(let n of t){let t=(await e.resolve(n)).join(`/`);r.set(t,n)}return r},`getFsHandles`);function wo(e){let t={noImageDecoding:!0,noAudioDecoding:!0,noWasmDecoding:!1,preRun:ko(e),quit(e,n){throw t.exited={status:e,toThrow:n},n},print:e.stdout,printErr:e.stderr,thisProgram:e._sysExecutable,arguments:e.args,API:{config:e},locateFile:t=>e.indexURL+t,instantiateWasm:Ao(e.indexURL)};return t}U(wo,`createSettings`);function To(e){return function(t){try{t.FS.mkdirTree(e)}catch(t){console.error(`Error occurred while making a home directory '${e}':`),console.error(t),console.error(`Using '/' for a home directory instead`),e=`/`}t.FS.chdir(e)}}U(To,`createHomeDirectory`);function Eo(e){return function(t){Object.assign(t.ENV,e)}}U(Eo,`setEnvironment`);function Do(e){return e?[async t=>{t.addRunDependency(`fsInitHook`);try{await e(t.FS,{sitePackages:t.API.sitePackages})}finally{t.removeRunDependency(`fsInitHook`)}}]:[]}U(Do,`callFsInitHook`);function Oo(e){let t=_o(e);return async e=>{let n=e._py_version_major(),r=e._py_version_minor();e.FS.mkdirTree(`/lib`),e.API.sitePackages=`/lib/python${n}.${r}/site-packages`,e.FS.mkdirTree(e.API.sitePackages),e.addRunDependency(`install-stdlib`);try{let i=await t;e.FS.writeFile(`/lib/python${n}${r}.zip`,i)}catch(e){console.error(`Error occurred while installing the standard library:`),console.error(e)}finally{e.removeRunDependency(`install-stdlib`)}}}U(Oo,`installStdlib`);function ko(e){let t;return t=e.stdLibURL==null?e.indexURL+`python_stdlib.zip`:e.stdLibURL,[...Do(e.fsInit),Oo(t),To(e.env.HOME),Eo(e.env),So]}U(ko,`getFileSystemInitializationFuncs`);function Ao(e){if(typeof WasmOffsetConverter<`u`)return;let{binary:t,response:n}=go(e+`pyodide.asm.wasm`);return function(e,r){return async function(){try{let i;i=n?await WebAssembly.instantiateStreaming(n,e):await WebAssembly.instantiate(await t,e);let{instance:a,module:o}=i;r(a,o)}catch(e){console.warn(`wasm instantiation failed!`),console.warn(e)}}(),{}}}U(Ao,`getInstantiateWasmFunc`);var jo=`0.27.7`;async function Mo(e={}){var t,n;await co();let r=e.indexURL||await xo();r=fo(r),r.endsWith(`/`)||(r+=`/`),e.indexURL=r;let i={fullStdLib:!1,jsglobals:globalThis,stdin:globalThis.prompt?globalThis.prompt:void 0,lockFileURL:r+`pyodide-lock.json`,args:[],env:{},packageCacheDir:r,packages:[],enableRunUntilComplete:!0,checkAPIVersion:!0,BUILD_ID:`e94377f5ce7dcf67e0417b69a0016733c2cfb6b4622ee8c490a6f17eb58e863b`},a=Object.assign(i,e);(t=a.env).HOME??(t.HOME=`/home/pyodide`),(n=a.env).PYTHONINSPECT??(n.PYTHONINSPECT=`1`);let o=wo(a),s=o.API;if(s.lockFilePromise=bo(a.lockFileURL),typeof _createPyodideModule!=`function`){let e=`${a.indexURL}pyodide.asm.js`;await vo(e)}let c;if(e._loadSnapshot){let t=await e._loadSnapshot;c=ArrayBuffer.isView(t)?t:new Uint8Array(t),o.noInitialRun=!0,o.INITIAL_MEMORY=c.length}let l=await _createPyodideModule(o);if(o.exited)throw o.exited.toThrow;if(e.pyproxyToStringRepr&&s.setPyProxyToStringMethod(!0),s.version!==jo&&a.checkAPIVersion)throw Error(`Pyodide version does not match: '${jo}' <==> '${s.version}'. If you updated the Pyodide version, make sure you also updated the 'indexURL' parameter passed to loadPyodide.`);l.locateFile=e=>{throw Error(`Didn't expect to load any more file_packager files!`)};let u;c&&(u=s.restoreSnapshot(c));let d=s.finalizeBootstrap(u,e._snapshotDeserializer);return s.sys.path.insert(0,``),d.version.includes(`dev`)||s.setCdnUrl(`https://cdn.jsdelivr.net/pyodide/v${d.version}/full/`),s._pyodide.set_excepthook(),await s.packageIndexReady,s.initializeStreams(a.stdin,a.stdout,a.stderr),d}U(Mo,`loadPyodide`);function No(e,t){if(!e)throw Error(t)}function Po(e){return`marimo-base`}const $=new class{spans=[];startSpan(e,t={}){let n={name:e,startTime:Date.now(),attributes:t,end:(e=`ok`)=>this.endSpan(n,e)};return this.spans.push(n),n}endSpan(e,t=`ok`){e.endTime=Date.now(),e.status=t}getSpans(){return this.spans}wrap(e,t,n={}){let r=this.startSpan(t||e.name,n);try{let t=e();return this.endSpan(r),t}catch(e){throw this.endSpan(r,`error`),e}}wrapAsync(e,t,n={}){return(async(...r)=>{let i=this.startSpan(t||e.name,n);try{let t=await e(...r);return this.endSpan(i),t}catch(e){throw this.endSpan(i,`error`),e}})}logSpans(){}};globalThis.t=$;var Fo=class{pyodide=null;get requirePyodide(){return No(this.pyodide,`Pyodide not loaded`),this.pyodide}async bootstrap(e){return await this.loadPyodideAndPackages(e)}async loadPyodideAndPackages(e){if(!Mo)throw Error(`loadPyodide is not defined`);let t=$.startSpan(`loadPyodide`);try{let n=await Mo({packages:[`micropip`,`msgspec`,Po(e.version),`Markdown`,`pymdown-extensions`,`narwhals`,`packaging`],_makeSnapshot:!1,lockFileURL:`https://wasm.marimo.app/pyodide-lock.json?v=${e.version}&pyodide=${e.pyodideVersion}`,indexURL:`https://cdn.jsdelivr.net/pyodide/${e.pyodideVersion}/full/`});return this.pyodide=n,t.end(`ok`),n}catch(e){throw _.error(`Failed to load Pyodide`,e),e}}async mountFilesystem(e){let t=$.startSpan(`mountFilesystem`);return H.createHomeDir(this.requirePyodide),H.mountFS(this.requirePyodide),await H.populateFilesToMemory(this.requirePyodide),t.end(`ok`),H.initNotebookCode({pyodide:this.requirePyodide,code:e.code,filename:e.filename})}async startSession(e){let{code:t,filename:n,onMessage:r,queryParameters:i,userConfig:a}=e;self.messenger={callback:r},self.query_params=i,self.user_config=a;let o=$.startSpan(`startSession.runPython`),s=n||H.NOTEBOOK_FILENAME,[c,l,u]=this.requirePyodide.runPython(`
41
+ `).filter(function(e){return!e.match(t)},this).map(function(e){if(e.indexOf(` > eval`)>-1&&(e=e.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,`:$1`)),e.indexOf(`@`)===-1&&e.indexOf(`:`)===-1)return new Ya({functionName:e});var t=/((.*".+"[^@]*)?[^@]*)(?:@)/,n=e.match(t),r=n&&n[1]?n[1]:void 0,i=this.extractLocation(e.replace(t,``));return new Ya({functionName:r,fileName:i[0],lineNumber:i[1],columnNumber:i[2],source:e})},this)},`ErrorStackParser$$parseFFOrSafari`)}}U(Xa,`ErrorStackParser`);var Za=new Xa,Q=typeof process==`object`&&typeof process.versions==`object`&&typeof process.versions.node==`string`&&!process.browser,Qa=Q&&typeof module<`u`&&typeof module.exports<`u`&&typeof Ga<`u`&&typeof __dirname<`u`,$a=Q&&!Qa;globalThis.Bun;var eo=!Q&&!(typeof Deno<`u`),to=eo&&typeof window==`object`&&typeof document==`object`&&typeof document.createElement==`function`&&`sessionStorage`in window&&typeof importScripts!=`function`,no=eo&&typeof importScripts==`function`&&typeof self==`object`;typeof navigator==`object`&&typeof navigator.userAgent==`string`&&navigator.userAgent.indexOf(`Chrome`)==-1&&navigator.userAgent.indexOf(`Safari`);var ro,io,ao,oo,so;async function co(){if(!Q||(ro=(await import(`./__vite-browser-external-DuZehUbK.js`).then(l(1))).default,oo=await import(`./__vite-browser-external-DuZehUbK.js`).then(l(1)),so=await import(`./__vite-browser-external-DuZehUbK.js`).then(l(1)),ao=(await import(`./__vite-browser-external-DuZehUbK.js`).then(l(1))).default,io=await import(`./__vite-browser-external-DuZehUbK.js`).then(l(1)),po=io.sep,typeof Ga<`u`))return;let e={fs:oo,crypto:await import(`./__vite-browser-external-DuZehUbK.js`).then(l(1)),ws:await import(`./__vite-browser-external-DuZehUbK.js`).then(l(1)),child_process:await import(`./__vite-browser-external-DuZehUbK.js`).then(l(1))};globalThis.require=function(t){return e[t]}}U(co,`initNodeModules`);function lo(e,t){return io.resolve(t||`.`,e)}U(lo,`node_resolvePath`);function uo(e,t){return t===void 0&&(t=location),new URL(e,t).toString()}U(uo,`browser_resolvePath`);var fo=Q?lo:uo,po;Q||(po=`/`);function mo(e,t){return e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?{response:fetch(e)}:{binary:so.readFile(e).then(e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength))}}U(mo,`node_getBinaryResponse`);function ho(e,t){let n=new URL(e,location);return{response:fetch(n,t?{integrity:t}:{})}}U(ho,`browser_getBinaryResponse`);var go=Q?mo:ho;async function _o(e,t){let{response:n,binary:r}=go(e,t);if(r)return r;let i=await n;if(!i.ok)throw Error(`Failed to load '${e}': request failed.`);return new Uint8Array(await i.arrayBuffer())}U(_o,`loadBinaryFile`);var vo;if(to)vo=U(async e=>await import(e),`loadScript`);else if(no)vo=U(async e=>{try{globalThis.importScripts(e)}catch(t){if(t instanceof TypeError)await import(e);else throw t}},`loadScript`);else if(Q)vo=yo;else throw Error(`Cannot determine runtime environment`);async function yo(e){e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?ao.runInThisContext(await(await fetch(e)).text()):await import(ro.pathToFileURL(e).href)}U(yo,`nodeLoadScript`);async function bo(e){if(Q){await co();let t=await so.readFile(e,{encoding:`utf8`});return JSON.parse(t)}else return await(await fetch(e)).json()}U(bo,`loadLockFile`);async function xo(){if(Qa)return __dirname;let e;try{throw Error()}catch(t){e=t}let t=Za.parse(e)[0].fileName;if(Q&&!t.startsWith(`file://`)&&(t=`file://${t}`),$a){let e=await import(`./__vite-browser-external-DuZehUbK.js`).then(l(1));return(await import(`./__vite-browser-external-DuZehUbK.js`).then(l(1))).fileURLToPath(e.dirname(t))}let n=t.lastIndexOf(po);if(n===-1)throw Error(`Could not extract indexURL path from pyodide module location`);return t.slice(0,n)}U(xo,`calculateDirname`);function So(e){let t=e.FS,n=e.FS.filesystems.MEMFS,r=e.PATH,i={DIR_MODE:16895,FILE_MODE:33279,mount:function(e){if(!e.opts.fileSystemHandle)throw Error(`opts.fileSystemHandle is required`);return n.mount.apply(null,arguments)},syncfs:async(e,t,n)=>{try{let r=i.getLocalSet(e),a=await i.getRemoteSet(e),o=t?a:r,s=t?r:a;await i.reconcile(e,o,s),n(null)}catch(e){n(e)}},getLocalSet:e=>{let n=Object.create(null);function i(e){return e!==`.`&&e!==`..`}U(i,`isRealDir`);function a(e){return t=>r.join2(e,t)}U(a,`toAbsolute`);let o=t.readdir(e.mountpoint).filter(i).map(a(e.mountpoint));for(;o.length;){let e=o.pop(),r=t.stat(e);t.isDir(r.mode)&&o.push.apply(o,t.readdir(e).filter(i).map(a(e))),n[e]={timestamp:r.mtime,mode:r.mode}}return{type:`local`,entries:n}},getRemoteSet:async e=>{let t=Object.create(null),n=await Co(e.opts.fileSystemHandle);for(let[a,o]of n)a!==`.`&&(t[r.join2(e.mountpoint,a)]={timestamp:o.kind===`file`?new Date((await o.getFile()).lastModified):new Date,mode:o.kind===`file`?i.FILE_MODE:i.DIR_MODE});return{type:`remote`,entries:t,handles:n}},loadLocalEntry:e=>{let r=t.lookupPath(e).node,i=t.stat(e);if(t.isDir(i.mode))return{timestamp:i.mtime,mode:i.mode};if(t.isFile(i.mode))return r.contents=n.getFileDataAsTypedArray(r),{timestamp:i.mtime,mode:i.mode,contents:r.contents};throw Error(`node type not supported`)},storeLocalEntry:(e,n)=>{if(t.isDir(n.mode))t.mkdirTree(e,n.mode);else if(t.isFile(n.mode))t.writeFile(e,n.contents,{canOwn:!0});else throw Error(`node type not supported`);t.chmod(e,n.mode),t.utime(e,n.timestamp,n.timestamp)},removeLocalEntry:e=>{var n=t.stat(e);t.isDir(n.mode)?t.rmdir(e):t.isFile(n.mode)&&t.unlink(e)},loadRemoteEntry:async e=>{if(e.kind===`file`){let t=await e.getFile();return{contents:new Uint8Array(await t.arrayBuffer()),mode:i.FILE_MODE,timestamp:new Date(t.lastModified)}}else{if(e.kind===`directory`)return{mode:i.DIR_MODE,timestamp:new Date};throw Error(`unknown kind: `+e.kind)}},storeRemoteEntry:async(e,n,i)=>{let a=e.get(r.dirname(n)),o=t.isFile(i.mode)?await a.getFileHandle(r.basename(n),{create:!0}):await a.getDirectoryHandle(r.basename(n),{create:!0});if(o.kind===`file`){let e=await o.createWritable();await e.write(i.contents),await e.close()}e.set(n,o)},removeRemoteEntry:async(e,t)=>{await e.get(r.dirname(t)).removeEntry(r.basename(t)),e.delete(t)},reconcile:async(e,n,a)=>{let o=0,s=[];Object.keys(n.entries).forEach(function(e){let r=n.entries[e],i=a.entries[e];(!i||t.isFile(r.mode)&&r.timestamp.getTime()>i.timestamp.getTime())&&(s.push(e),o++)}),s.sort();let c=[];if(Object.keys(a.entries).forEach(function(e){n.entries[e]||(c.push(e),o++)}),c.sort().reverse(),!o)return;let l=n.type===`remote`?n.handles:a.handles;for(let t of s){let n=r.normalize(t.replace(e.mountpoint,`/`)).substring(1);if(a.type===`local`){let e=l.get(n),r=await i.loadRemoteEntry(e);i.storeLocalEntry(t,r)}else{let e=i.loadLocalEntry(t);await i.storeRemoteEntry(l,n,e)}}for(let t of c)if(a.type===`local`)i.removeLocalEntry(t);else{let n=r.normalize(t.replace(e.mountpoint,`/`)).substring(1);await i.removeRemoteEntry(l,n)}}};e.FS.filesystems.NATIVEFS_ASYNC=i}U(So,`initializeNativeFS`);var Co=U(async e=>{let t=[];async function n(e){for await(let r of e.values())t.push(r),r.kind===`directory`&&await n(r)}U(n,`collect`),await n(e);let r=new Map;r.set(`.`,e);for(let n of t){let t=(await e.resolve(n)).join(`/`);r.set(t,n)}return r},`getFsHandles`);function wo(e){let t={noImageDecoding:!0,noAudioDecoding:!0,noWasmDecoding:!1,preRun:ko(e),quit(e,n){throw t.exited={status:e,toThrow:n},n},print:e.stdout,printErr:e.stderr,thisProgram:e._sysExecutable,arguments:e.args,API:{config:e},locateFile:t=>e.indexURL+t,instantiateWasm:Ao(e.indexURL)};return t}U(wo,`createSettings`);function To(e){return function(t){try{t.FS.mkdirTree(e)}catch(t){console.error(`Error occurred while making a home directory '${e}':`),console.error(t),console.error(`Using '/' for a home directory instead`),e=`/`}t.FS.chdir(e)}}U(To,`createHomeDirectory`);function Eo(e){return function(t){Object.assign(t.ENV,e)}}U(Eo,`setEnvironment`);function Do(e){return e?[async t=>{t.addRunDependency(`fsInitHook`);try{await e(t.FS,{sitePackages:t.API.sitePackages})}finally{t.removeRunDependency(`fsInitHook`)}}]:[]}U(Do,`callFsInitHook`);function Oo(e){let t=_o(e);return async e=>{let n=e._py_version_major(),r=e._py_version_minor();e.FS.mkdirTree(`/lib`),e.API.sitePackages=`/lib/python${n}.${r}/site-packages`,e.FS.mkdirTree(e.API.sitePackages),e.addRunDependency(`install-stdlib`);try{let i=await t;e.FS.writeFile(`/lib/python${n}${r}.zip`,i)}catch(e){console.error(`Error occurred while installing the standard library:`),console.error(e)}finally{e.removeRunDependency(`install-stdlib`)}}}U(Oo,`installStdlib`);function ko(e){let t;return t=e.stdLibURL==null?e.indexURL+`python_stdlib.zip`:e.stdLibURL,[...Do(e.fsInit),Oo(t),To(e.env.HOME),Eo(e.env),So]}U(ko,`getFileSystemInitializationFuncs`);function Ao(e){if(typeof WasmOffsetConverter<`u`)return;let{binary:t,response:n}=go(e+`pyodide.asm.wasm`);return function(e,r){return async function(){try{let i;i=n?await WebAssembly.instantiateStreaming(n,e):await WebAssembly.instantiate(await t,e);let{instance:a,module:o}=i;r(a,o)}catch(e){console.warn(`wasm instantiation failed!`),console.warn(e)}}(),{}}}U(Ao,`getInstantiateWasmFunc`);var jo=`0.27.7`;async function Mo(e={}){var t,n;await co();let r=e.indexURL||await xo();r=fo(r),r.endsWith(`/`)||(r+=`/`),e.indexURL=r;let i={fullStdLib:!1,jsglobals:globalThis,stdin:globalThis.prompt?globalThis.prompt:void 0,lockFileURL:r+`pyodide-lock.json`,args:[],env:{},packageCacheDir:r,packages:[],enableRunUntilComplete:!0,checkAPIVersion:!0,BUILD_ID:`e94377f5ce7dcf67e0417b69a0016733c2cfb6b4622ee8c490a6f17eb58e863b`},a=Object.assign(i,e);(t=a.env).HOME??(t.HOME=`/home/pyodide`),(n=a.env).PYTHONINSPECT??(n.PYTHONINSPECT=`1`);let o=wo(a),s=o.API;if(s.lockFilePromise=bo(a.lockFileURL),typeof _createPyodideModule!=`function`){let e=`${a.indexURL}pyodide.asm.js`;await vo(e)}let c;if(e._loadSnapshot){let t=await e._loadSnapshot;c=ArrayBuffer.isView(t)?t:new Uint8Array(t),o.noInitialRun=!0,o.INITIAL_MEMORY=c.length}let l=await _createPyodideModule(o);if(o.exited)throw o.exited.toThrow;if(e.pyproxyToStringRepr&&s.setPyProxyToStringMethod(!0),s.version!==jo&&a.checkAPIVersion)throw Error(`Pyodide version does not match: '${jo}' <==> '${s.version}'. If you updated the Pyodide version, make sure you also updated the 'indexURL' parameter passed to loadPyodide.`);l.locateFile=e=>{throw Error(`Didn't expect to load any more file_packager files!`)};let u;c&&(u=s.restoreSnapshot(c));let d=s.finalizeBootstrap(u,e._snapshotDeserializer);return s.sys.path.insert(0,``),d.version.includes(`dev`)||s.setCdnUrl(`https://cdn.jsdelivr.net/pyodide/v${d.version}/full/`),s._pyodide.set_excepthook(),await s.packageIndexReady,s.initializeStreams(a.stdin,a.stdout,a.stderr),d}U(Mo,`loadPyodide`);function No(e,t){if(!e)throw Error(t)}function Po(e){return`marimo-base`}const $=new class{spans=[];startSpan(e,t={}){let n={name:e,startTime:Date.now(),attributes:t,end:(e=`ok`)=>this.endSpan(n,e)};return this.spans.push(n),n}endSpan(e,t=`ok`){e.endTime=Date.now(),e.status=t}getSpans(){return this.spans}wrap(e,t,n={}){let r=this.startSpan(t||e.name,n);try{let t=e();return this.endSpan(r),t}catch(e){throw this.endSpan(r,`error`),e}}wrapAsync(e,t,n={}){return(async(...r)=>{let i=this.startSpan(t||e.name,n);try{let t=await e(...r);return this.endSpan(i),t}catch(e){throw this.endSpan(i,`error`),e}})}logSpans(){}};globalThis.t=$;const Fo=/(^|\n)\s*(?:import\s+[^\n#]*\bduckdb\b|from\s+duckdb\b|[^\n#]*\bduckdb\s*\.)/;function Io(e,t){return e.includes(`mo.sql`)||Fo.test(e)||t?.has(`duckdb`)===!0}var Lo=class{pyodide=null;get requirePyodide(){return No(this.pyodide,`Pyodide not loaded`),this.pyodide}async bootstrap(e){return await this.loadPyodideAndPackages(e)}async loadPyodideAndPackages(e){if(!Mo)throw Error(`loadPyodide is not defined`);let t=$.startSpan(`loadPyodide`);try{let n=await Mo({packages:[`micropip`,`msgspec`,Po(e.version),`Markdown`,`pymdown-extensions`,`narwhals`,`packaging`],_makeSnapshot:!1,lockFileURL:`https://wasm.marimo.app/pyodide-lock.json?v=${e.version}&pyodide=${e.pyodideVersion}`,indexURL:`https://cdn.jsdelivr.net/pyodide/${e.pyodideVersion}/full/`});return this.pyodide=n,t.end(`ok`),n}catch(e){throw _.error(`Failed to load Pyodide`,e),e}}async mountFilesystem(e){let t=$.startSpan(`mountFilesystem`);return H.createHomeDir(this.requirePyodide),H.mountFS(this.requirePyodide),await H.populateFilesToMemory(this.requirePyodide),t.end(`ok`),H.initNotebookCode({pyodide:this.requirePyodide,code:e.code,filename:e.filename})}async startSession(e){let{code:t,filename:n,onMessage:r,queryParameters:i,userConfig:a}=e;self.messenger={callback:r},self.query_params=i,self.user_config=a;let o=$.startSpan(`startSession.runPython`),s=n||H.NOTEBOOK_FILENAME,[c,l,u]=this.requirePyodide.runPython(`
42
42
  print("[py] Starting marimo...")
43
43
  import asyncio
44
44
  import js
@@ -62,7 +62,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
62
62
  with open("${s}", "r") as f:
63
63
  packages = session.find_packages(f.read())
64
64
 
65
- bridge, init, packages`);o.end();let d=new Set(u.toJs());return this.loadNotebookDeps(t,d).then(()=>l(a.runtime.auto_instantiate)),c}async loadNotebookDeps(e,t){let n=this.requirePyodide;e.includes(`mo.sql`)&&(e=`import pandas\n${e}`,e=`import duckdb\n${e}`,e=`import sqlglot\n${e}`,e.includes(`polars`)&&(e=`import pyarrow\n${e}`)),e=`import docutils\n${e}`,e=`import pygments\n${e}`,e=`import jedi\n${e}`,e=`import pyodide_http\n${e}`;let r=[...t],i=$.startSpan(`pyodide.loadPackage`);await n.loadPackagesFromImports(e,{errorCallback:_.error,messageCallback:_.log}),i.end(),i=$.startSpan(`micropip.install`);let a=r.filter(e=>!n.loadedPackages[e]);a.length>0&&await n.runPythonAsync(`
65
+ bridge, init, packages`);o.end();let d=new Set(u.toJs());return this.loadNotebookDeps(t,d).then(()=>l(a.runtime.auto_instantiate)),c}async loadNotebookDeps(e,t){let n=this.requirePyodide;Io(e,t)&&(e=`import pandas\n${e}`,e=`import duckdb\n${e}`,e=`import sqlglot\n${e}`,e.includes(`polars`)&&(e=`import pyarrow\n${e}`)),e=`import docutils\n${e}`,e=`import pygments\n${e}`,e=`import jedi\n${e}`,e=`import pyodide_http\n${e}`;let r=[...t],i=$.startSpan(`pyodide.loadPackage`);await n.loadPackagesFromImports(e,{errorCallback:_.error,messageCallback:_.log}),i.end(),i=$.startSpan(`micropip.install`);let a=r.filter(e=>!n.loadedPackages[e]);a.length>0&&await n.runPythonAsync(`
66
66
  import micropip
67
67
  import sys
68
68
  # Filter out builtins
@@ -70,8 +70,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
70
70
  if len(missing) > 0:
71
71
  print("Loading from micropip:", missing)
72
72
  await micropip.install(missing)
73
- `).catch(e=>{_.error(`Failed to load packages from micropip`,e)}),i.end()}};async function Io(e){if(!(self.name?.includes(`::controller`)??!1))return new Fo;try{return await import(`/wasm/controller.js?version=${e}`)}catch{return new Fo}}function Lo(e){return e.includes(`dev`),`v${jo}`}async function Ro(){try{let e=Ho(),t=Lo(e),n=await Io(e);self.controller=n,self.pyodide=await n.bootstrap({version:e,pyodideVersion:t}),await n.mountFilesystem?.({code:``,filename:null}),Vo.send.initialized({})}catch(e){_.error(`Error bootstrapping`,e),Vo.send.initializedError({error:za(e)})}}const zo=Ro(),Bo=d({readFile:async e=>(await zo,ce(self.pyodide.FS.readFile(e))),readNotebook:async()=>(await zo,H.readNotebook(self.pyodide)),saveNotebook:async e=>{await zo,await self.pyodide.runPython(`
73
+ `).catch(e=>{_.error(`Failed to load packages from micropip`,e)}),i.end()}};async function Ro(e){if(!(self.name?.includes(`::controller`)??!1))return new Lo;try{return await import(`/wasm/controller.js?version=${e}`)}catch{return new Lo}}function zo(e){return e.includes(`dev`),`v${jo}`}async function Bo(){try{let e=Wo(),t=zo(e),n=await Ro(e);self.controller=n,self.pyodide=await n.bootstrap({version:e,pyodideVersion:t}),await n.mountFilesystem?.({code:``,filename:null}),Uo.send.initialized({})}catch(e){_.error(`Error bootstrapping`,e),Uo.send.initializedError({error:za(e)})}}const Vo=Bo(),Ho=d({readFile:async e=>(await Vo,ce(self.pyodide.FS.readFile(e))),readNotebook:async()=>(await Vo,H.readNotebook(self.pyodide)),saveNotebook:async e=>{await Vo,await self.pyodide.runPython(`
74
74
  from marimo._pyodide.bootstrap import save_file
75
75
 
76
76
  save_file
77
- `)(JSON.stringify(e),H.NOTEBOOK_FILENAME),await H.persistFilesToRemote(self.pyodide)}}),Vo=ee({transport:m({transportId:`marimo-transport`}),requestHandler:Bo});Vo.send(`ready`,{});function Ho(){return self.name.split(`::`)[0]}export{o as t};
77
+ `)(JSON.stringify(e),H.NOTEBOOK_FILENAME),await H.persistFilesToRemote(self.pyodide)}}),Uo=ee({transport:m({transportId:`marimo-transport`}),requestHandler:Ho});Uo.send(`ready`,{});function Wo(){return self.name.split(`::`)[0]}export{o as t};