@marimo-team/frontend 0.21.2-dev63 → 0.21.2-dev64

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (22) hide show
  1. package/dist/assets/{JsonOutput-Ca8qF0Zd.js → JsonOutput-C6G83us5.js} +9 -9
  2. package/dist/assets/{agent-panel-lhTAqQ2T.js → agent-panel-CEBChEgo.js} +1 -1
  3. package/dist/assets/{cell-editor-DlHW5qr3.js → cell-editor-By2GGVYQ.js} +1 -1
  4. package/dist/assets/{column-preview-ClCjoT33.js → column-preview-Bxza9N1V.js} +1 -1
  5. package/dist/assets/{command-palette-CF05xO-u.js → command-palette-Dx3dFDHn.js} +1 -1
  6. package/dist/assets/{context-aware-panel-BNcqd7JQ.js → context-aware-panel-BAsDUfG1.js} +1 -1
  7. package/dist/assets/{edit-page-CZshKgxH.js → edit-page-D2jHQ99Z.js} +3 -3
  8. package/dist/assets/{file-explorer-panel-DSpZ25B3.js → file-explorer-panel-Dxy2wacg.js} +1 -1
  9. package/dist/assets/{hooks-CpTBKWcv.js → hooks-DVW0qFsD.js} +1 -1
  10. package/dist/assets/{index-DIqPLE1R.js → index-BUi88mQ-.js} +15 -15
  11. package/dist/assets/{layout-am3J4ZNA.js → layout-b4TrkjtJ.js} +1 -1
  12. package/dist/assets/{panels-cRpwb1m4.js → panels-DxPykKF0.js} +1 -1
  13. package/dist/assets/{run-page-CUq8ZpoZ.js → run-page-Ce8MQ2gg.js} +1 -1
  14. package/dist/assets/{scratchpad-panel-CaZOnp24.js → scratchpad-panel-OulpXAJO.js} +1 -1
  15. package/dist/assets/{session-panel-B5exQEib.js → session-panel-BBXXuMQG.js} +1 -1
  16. package/dist/assets/{useNotebookActions-DH_ihkjl.js → useNotebookActions-BqjNClzw.js} +1 -1
  17. package/dist/index.html +4 -4
  18. package/package.json +1 -1
  19. package/src/components/data-table/__tests__/columns.test.tsx +138 -0
  20. package/src/components/data-table/columns.tsx +44 -4
  21. package/src/components/data-table/filters.ts +1 -0
  22. package/src/plugins/impl/DataTablePlugin.tsx +27 -0
@@ -1 +1 @@
1
- import{s as M}from"./chunk-LvLJmgfZ.js";import{u as R}from"./useEvent-O0nX5vok.js";import{t as W}from"./react-Bj1aDYRI.js";import{Cr as B,E as G,Tr as D}from"./cells-BZ2tqr8k.js";import{t as q}from"./compiler-runtime-B3qBwwSJ.js";import{t as H}from"./useLifecycle-DA9DjSPo.js";import{o as K}from"./utils-tNbLd14P.js";import{t as U}from"./jsx-runtime-icT_Ltz2.js";import{r as A,t as S}from"./button-Ej3vmCIF.js";import{t as V}from"./cn-BoaCR37F.js";import{W as X}from"./JsonOutput-Ca8qF0Zd.js";import{r as Y}from"./requests-Bgjtqo_1.js";import{t as Z}from"./createLucideIcon-Cm-Z7dYr.js";import{t as ee}from"./spinner-C5JoisA7.js";import{r as te}from"./useTheme-BYu4ZPLV.js";import{t as L}from"./tooltip-BCGmr4TU.js";import{t as ae}from"./context-BPhh8SWw.js";import{r as re}from"./numbers-D_Gm93M5.js";import{t as se}from"./copy-icon-BNQYrUYC.js";import{t as oe}from"./useInstallPackage-DYIBbH-R.js";import{n as ne}from"./html-to-image-D_3oFpSp.js";import{o as le}from"./focus-CpM6NAz2.js";import{n as ce}from"./components-4-hSIFip.js";var z=Z("square-plus",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M8 12h8",key:"1wcyev"}],["path",{d:"M12 8v8",key:"napkw2"}]]),ie=q(),me=M(W(),1),s=M(U(),1);const pe=d=>{let e=(0,ie.c)(13),{packages:t,showMaxPackages:a,className:r,onInstall:c}=d,{handleInstallPackages:o}=oe();if(!t||t.length===0)return null;let m;e[0]!==o||e[1]!==c||e[2]!==t?(m=()=>{o(t,c)},e[0]=o,e[1]=c,e[2]=t,e[3]=m):m=e[3];let n;e[4]===r?n=e[5]:(n=V("ml-2",r),e[4]=r,e[5]=n);let i;e[6]!==t||e[7]!==a?(i=a?t.slice(0,a).join(", "):t.join(", "),e[6]=t,e[7]=a,e[8]=i):i=e[8];let p;return e[9]!==m||e[10]!==n||e[11]!==i?(p=(0,s.jsxs)(S,{variant:"outline",size:"xs",onClick:m,className:n,children:["Install"," ",i]}),e[9]=m,e[10]=n,e[11]=i,e[12]=p):p=e[12],p};var O=q();const de=d=>{let e=(0,O.c)(53),{table:t,column:a,preview:r,onAddColumnChart:c,sqlTableContext:o}=d,{theme:m}=te(),{previewDatasetColumn:n}=Y(),{locale:i}=ae(),p;e[0]!==a.name||e[1]!==n||e[2]!==o||e[3]!==t.name||e[4]!==t.source||e[5]!==t.source_type?(p=()=>{n({source:t.source,tableName:t.name,columnName:a.name,sourceType:t.source_type,fullyQualifiedTableName:o?`${o.database}.${o.schema}.${t.name}`:t.name})},e[0]=a.name,e[1]=n,e[2]=o,e[3]=t.name,e[4]=t.source,e[5]=t.source_type,e[6]=p):p=e[6];let u=p,h;if(e[7]!==r||e[8]!==u||e[9]!==t.source_type?(h=()=>{r||t.source_type==="connection"||t.source_type==="catalog"||u()},e[7]=r,e[8]=u,e[9]=t.source_type,e[10]=h):h=e[10],H(h),t.source_type==="connection"){let l=a.name,J=a.external_type,x;e[11]!==a.name||e[12]!==c||e[13]!==o||e[14]!==t?(x=A.stopPropagation(()=>{c(D({table:t,columnName:a.name,sqlTableContext:o}))}),e[11]=a.name,e[12]=c,e[13]=o,e[14]=t,e[15]=x):x=e[15];let C;e[16]===Symbol.for("react.memo_cache_sentinel")?(C=(0,s.jsx)(z,{className:"h-3 w-3 mr-1"}),e[16]=C):C=e[16];let f;e[17]===x?f=e[18]:(f=(0,s.jsxs)(S,{variant:"outline",size:"xs",onClick:x,children:[C," Add SQL cell"]}),e[17]=x,e[18]=f);let P;return e[19]!==a.external_type||e[20]!==a.name||e[21]!==f?(P=(0,s.jsxs)("span",{className:"text-xs text-muted-foreground gap-2 flex items-center justify-between pl-7",children:[l," (",J,")",f]}),e[19]=a.external_type,e[20]=a.name,e[21]=f,e[22]=P):P=e[22],P}if(t.source_type==="catalog"){let l;return e[23]!==a.external_type||e[24]!==a.name?(l=(0,s.jsxs)("span",{className:"text-xs text-muted-foreground gap-2 flex items-center justify-between pl-7",children:[a.name," (",a.external_type,")"]}),e[23]=a.external_type,e[24]=a.name,e[25]=l):l=e[25],l}if(!r){let l;return e[26]===Symbol.for("react.memo_cache_sentinel")?(l=(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:"Loading..."}),e[26]=l):l=e[26],l}let g;e[27]!==r.error||e[28]!==r.missing_packages||e[29]!==u?(g=r.error&&Q({error:r.error,missingPackages:r.missing_packages,refetchPreview:u}),e[27]=r.error,e[28]=r.missing_packages,e[29]=u,e[30]=g):g=e[30];let y=g,_;e[31]!==a.type||e[32]!==i||e[33]!==r.stats?(_=r.stats&&$({stats:r.stats,dataType:a.type,locale:i}),e[31]=a.type,e[32]=i,e[33]=r.stats,e[34]=_):_=e[34];let b=_,j;e[35]!==r.chart_spec||e[36]!==m?(j=r.chart_spec&&E(r.chart_spec,m),e[35]=r.chart_spec,e[36]=m,e[37]=j):j=e[37];let N=j,k;e[38]!==r.chart_code||e[39]!==t.source_type?(k=r.chart_code&&t.source_type==="local"&&(0,s.jsx)(F,{chartCode:r.chart_code}),e[38]=r.chart_code,e[39]=t.source_type,e[40]=k):k=e[40];let T=k,v;e[41]!==a.name||e[42]!==c||e[43]!==o||e[44]!==t?(v=t.source_type==="duckdb"&&(0,s.jsx)(L,{content:"Add SQL cell",delayDuration:400,children:(0,s.jsx)(S,{variant:"outline",size:"icon",className:"z-10 bg-background absolute right-1 -top-1",onClick:A.stopPropagation(()=>{c(D({table:t,columnName:a.name,sqlTableContext:o}))}),children:(0,s.jsx)(z,{className:"h-3 w-3"})})}),e[41]=a.name,e[42]=c,e[43]=o,e[44]=t,e[45]=v):v=e[45];let I=v;if(!y&&!b&&!N){let l;return e[46]===Symbol.for("react.memo_cache_sentinel")?(l=(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:"No data"}),e[46]=l):l=e[46],l}let w;return e[47]!==T||e[48]!==I||e[49]!==N||e[50]!==y||e[51]!==b?(w=(0,s.jsxs)(ce,{children:[y,T,I,N,b]}),e[47]=T,e[48]=I,e[49]=N,e[50]=y,e[51]=b,e[52]=w):w=e[52],w};function Q({error:d,missingPackages:e,refetchPreview:t}){return(0,s.jsxs)("div",{className:"text-xs text-muted-foreground p-2 border border-border rounded flex items-center justify-between",children:[(0,s.jsx)("span",{children:d}),e&&(0,s.jsx)(pe,{packages:e,showMaxPackages:1,className:"w-32",onInstall:t})]})}function $({stats:d,dataType:e,locale:t}){return(0,s.jsx)("div",{className:"gap-x-16 gap-y-1 grid grid-cols-2-fit border rounded p-2 empty:hidden",children:Object.entries(d).map(([a,r])=>r==null?null:(0,s.jsxs)("div",{className:"flex items-center gap-1 group",children:[(0,s.jsx)("span",{className:"text-xs min-w-[60px] capitalize",children:B(a,e)}),(0,s.jsx)("span",{className:"text-xs font-bold text-muted-foreground tracking-wide",children:re(r,t)}),(0,s.jsx)(se,{className:"h-3 w-3 invisible group-hover:visible",value:String(r)})]},a))})}var ue=(0,s.jsx)("div",{className:"flex justify-center",children:(0,s.jsx)(ee,{className:"size-4"})});function E(d,e){let t=a=>({...a,background:"transparent",config:{...a.config,background:"transparent"}});return(0,s.jsx)(me.Suspense,{fallback:ue,children:(0,s.jsx)(X,{"data-container-width":"container",spec:t(JSON.parse(d)),options:{theme:e==="dark"?"dark":"vox",height:100,width:"container",actions:!1,renderer:"canvas"}})})}const F=d=>{let e=(0,O.c)(10),{chartCode:t}=d,a=R(K),r=le(),{createNewCell:c}=G(),o;e[0]!==a||e[1]!==c||e[2]!==r?(o=u=>{u.includes("alt")&&ne({autoInstantiate:a,createNewCell:c,fromCellId:r}),c({code:u,before:!1,cellId:r??"__end__"})},e[0]=a,e[1]=c,e[2]=r,e[3]=o):o=e[3];let m=o,n;e[4]!==t||e[5]!==m?(n=A.stopPropagation(()=>m(t)),e[4]=t,e[5]=m,e[6]=n):n=e[6];let i;e[7]===Symbol.for("react.memo_cache_sentinel")?(i=(0,s.jsx)(z,{className:"h-3 w-3"}),e[7]=i):i=e[7];let p;return e[8]===n?p=e[9]:(p=(0,s.jsx)(L,{content:"Add chart to notebook",delayDuration:400,children:(0,s.jsx)(S,{variant:"outline",size:"icon",className:"z-10 bg-background absolute right-1 -top-0.5",onClick:n,children:i})}),e[8]=n,e[9]=p),p};export{$ as a,Q as i,de as n,z as o,E as r,F as t};
1
+ import{s as M}from"./chunk-LvLJmgfZ.js";import{u as R}from"./useEvent-O0nX5vok.js";import{t as W}from"./react-Bj1aDYRI.js";import{Cr as B,E as G,Tr as D}from"./cells-BZ2tqr8k.js";import{t as q}from"./compiler-runtime-B3qBwwSJ.js";import{t as H}from"./useLifecycle-DA9DjSPo.js";import{o as K}from"./utils-tNbLd14P.js";import{t as U}from"./jsx-runtime-icT_Ltz2.js";import{r as A,t as S}from"./button-Ej3vmCIF.js";import{t as V}from"./cn-BoaCR37F.js";import{W as X}from"./JsonOutput-C6G83us5.js";import{r as Y}from"./requests-Bgjtqo_1.js";import{t as Z}from"./createLucideIcon-Cm-Z7dYr.js";import{t as ee}from"./spinner-C5JoisA7.js";import{r as te}from"./useTheme-BYu4ZPLV.js";import{t as L}from"./tooltip-BCGmr4TU.js";import{t as ae}from"./context-BPhh8SWw.js";import{r as re}from"./numbers-D_Gm93M5.js";import{t as se}from"./copy-icon-BNQYrUYC.js";import{t as oe}from"./useInstallPackage-DYIBbH-R.js";import{n as ne}from"./html-to-image-D_3oFpSp.js";import{o as le}from"./focus-CpM6NAz2.js";import{n as ce}from"./components-4-hSIFip.js";var z=Z("square-plus",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M8 12h8",key:"1wcyev"}],["path",{d:"M12 8v8",key:"napkw2"}]]),ie=q(),me=M(W(),1),s=M(U(),1);const pe=d=>{let e=(0,ie.c)(13),{packages:t,showMaxPackages:a,className:r,onInstall:c}=d,{handleInstallPackages:o}=oe();if(!t||t.length===0)return null;let m;e[0]!==o||e[1]!==c||e[2]!==t?(m=()=>{o(t,c)},e[0]=o,e[1]=c,e[2]=t,e[3]=m):m=e[3];let n;e[4]===r?n=e[5]:(n=V("ml-2",r),e[4]=r,e[5]=n);let i;e[6]!==t||e[7]!==a?(i=a?t.slice(0,a).join(", "):t.join(", "),e[6]=t,e[7]=a,e[8]=i):i=e[8];let p;return e[9]!==m||e[10]!==n||e[11]!==i?(p=(0,s.jsxs)(S,{variant:"outline",size:"xs",onClick:m,className:n,children:["Install"," ",i]}),e[9]=m,e[10]=n,e[11]=i,e[12]=p):p=e[12],p};var O=q();const de=d=>{let e=(0,O.c)(53),{table:t,column:a,preview:r,onAddColumnChart:c,sqlTableContext:o}=d,{theme:m}=te(),{previewDatasetColumn:n}=Y(),{locale:i}=ae(),p;e[0]!==a.name||e[1]!==n||e[2]!==o||e[3]!==t.name||e[4]!==t.source||e[5]!==t.source_type?(p=()=>{n({source:t.source,tableName:t.name,columnName:a.name,sourceType:t.source_type,fullyQualifiedTableName:o?`${o.database}.${o.schema}.${t.name}`:t.name})},e[0]=a.name,e[1]=n,e[2]=o,e[3]=t.name,e[4]=t.source,e[5]=t.source_type,e[6]=p):p=e[6];let u=p,h;if(e[7]!==r||e[8]!==u||e[9]!==t.source_type?(h=()=>{r||t.source_type==="connection"||t.source_type==="catalog"||u()},e[7]=r,e[8]=u,e[9]=t.source_type,e[10]=h):h=e[10],H(h),t.source_type==="connection"){let l=a.name,J=a.external_type,x;e[11]!==a.name||e[12]!==c||e[13]!==o||e[14]!==t?(x=A.stopPropagation(()=>{c(D({table:t,columnName:a.name,sqlTableContext:o}))}),e[11]=a.name,e[12]=c,e[13]=o,e[14]=t,e[15]=x):x=e[15];let C;e[16]===Symbol.for("react.memo_cache_sentinel")?(C=(0,s.jsx)(z,{className:"h-3 w-3 mr-1"}),e[16]=C):C=e[16];let f;e[17]===x?f=e[18]:(f=(0,s.jsxs)(S,{variant:"outline",size:"xs",onClick:x,children:[C," Add SQL cell"]}),e[17]=x,e[18]=f);let P;return e[19]!==a.external_type||e[20]!==a.name||e[21]!==f?(P=(0,s.jsxs)("span",{className:"text-xs text-muted-foreground gap-2 flex items-center justify-between pl-7",children:[l," (",J,")",f]}),e[19]=a.external_type,e[20]=a.name,e[21]=f,e[22]=P):P=e[22],P}if(t.source_type==="catalog"){let l;return e[23]!==a.external_type||e[24]!==a.name?(l=(0,s.jsxs)("span",{className:"text-xs text-muted-foreground gap-2 flex items-center justify-between pl-7",children:[a.name," (",a.external_type,")"]}),e[23]=a.external_type,e[24]=a.name,e[25]=l):l=e[25],l}if(!r){let l;return e[26]===Symbol.for("react.memo_cache_sentinel")?(l=(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:"Loading..."}),e[26]=l):l=e[26],l}let g;e[27]!==r.error||e[28]!==r.missing_packages||e[29]!==u?(g=r.error&&Q({error:r.error,missingPackages:r.missing_packages,refetchPreview:u}),e[27]=r.error,e[28]=r.missing_packages,e[29]=u,e[30]=g):g=e[30];let y=g,_;e[31]!==a.type||e[32]!==i||e[33]!==r.stats?(_=r.stats&&$({stats:r.stats,dataType:a.type,locale:i}),e[31]=a.type,e[32]=i,e[33]=r.stats,e[34]=_):_=e[34];let b=_,j;e[35]!==r.chart_spec||e[36]!==m?(j=r.chart_spec&&E(r.chart_spec,m),e[35]=r.chart_spec,e[36]=m,e[37]=j):j=e[37];let N=j,k;e[38]!==r.chart_code||e[39]!==t.source_type?(k=r.chart_code&&t.source_type==="local"&&(0,s.jsx)(F,{chartCode:r.chart_code}),e[38]=r.chart_code,e[39]=t.source_type,e[40]=k):k=e[40];let T=k,v;e[41]!==a.name||e[42]!==c||e[43]!==o||e[44]!==t?(v=t.source_type==="duckdb"&&(0,s.jsx)(L,{content:"Add SQL cell",delayDuration:400,children:(0,s.jsx)(S,{variant:"outline",size:"icon",className:"z-10 bg-background absolute right-1 -top-1",onClick:A.stopPropagation(()=>{c(D({table:t,columnName:a.name,sqlTableContext:o}))}),children:(0,s.jsx)(z,{className:"h-3 w-3"})})}),e[41]=a.name,e[42]=c,e[43]=o,e[44]=t,e[45]=v):v=e[45];let I=v;if(!y&&!b&&!N){let l;return e[46]===Symbol.for("react.memo_cache_sentinel")?(l=(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:"No data"}),e[46]=l):l=e[46],l}let w;return e[47]!==T||e[48]!==I||e[49]!==N||e[50]!==y||e[51]!==b?(w=(0,s.jsxs)(ce,{children:[y,T,I,N,b]}),e[47]=T,e[48]=I,e[49]=N,e[50]=y,e[51]=b,e[52]=w):w=e[52],w};function Q({error:d,missingPackages:e,refetchPreview:t}){return(0,s.jsxs)("div",{className:"text-xs text-muted-foreground p-2 border border-border rounded flex items-center justify-between",children:[(0,s.jsx)("span",{children:d}),e&&(0,s.jsx)(pe,{packages:e,showMaxPackages:1,className:"w-32",onInstall:t})]})}function $({stats:d,dataType:e,locale:t}){return(0,s.jsx)("div",{className:"gap-x-16 gap-y-1 grid grid-cols-2-fit border rounded p-2 empty:hidden",children:Object.entries(d).map(([a,r])=>r==null?null:(0,s.jsxs)("div",{className:"flex items-center gap-1 group",children:[(0,s.jsx)("span",{className:"text-xs min-w-[60px] capitalize",children:B(a,e)}),(0,s.jsx)("span",{className:"text-xs font-bold text-muted-foreground tracking-wide",children:re(r,t)}),(0,s.jsx)(se,{className:"h-3 w-3 invisible group-hover:visible",value:String(r)})]},a))})}var ue=(0,s.jsx)("div",{className:"flex justify-center",children:(0,s.jsx)(ee,{className:"size-4"})});function E(d,e){let t=a=>({...a,background:"transparent",config:{...a.config,background:"transparent"}});return(0,s.jsx)(me.Suspense,{fallback:ue,children:(0,s.jsx)(X,{"data-container-width":"container",spec:t(JSON.parse(d)),options:{theme:e==="dark"?"dark":"vox",height:100,width:"container",actions:!1,renderer:"canvas"}})})}const F=d=>{let e=(0,O.c)(10),{chartCode:t}=d,a=R(K),r=le(),{createNewCell:c}=G(),o;e[0]!==a||e[1]!==c||e[2]!==r?(o=u=>{u.includes("alt")&&ne({autoInstantiate:a,createNewCell:c,fromCellId:r}),c({code:u,before:!1,cellId:r??"__end__"})},e[0]=a,e[1]=c,e[2]=r,e[3]=o):o=e[3];let m=o,n;e[4]!==t||e[5]!==m?(n=A.stopPropagation(()=>m(t)),e[4]=t,e[5]=m,e[6]=n):n=e[6];let i;e[7]===Symbol.for("react.memo_cache_sentinel")?(i=(0,s.jsx)(z,{className:"h-3 w-3"}),e[7]=i):i=e[7];let p;return e[8]===n?p=e[9]:(p=(0,s.jsx)(L,{content:"Add chart to notebook",delayDuration:400,children:(0,s.jsx)(S,{variant:"outline",size:"icon",className:"z-10 bg-background absolute right-1 -top-0.5",onClick:n,children:i})}),e[8]=n,e[9]=p),p};export{$ as a,Q as i,de as n,z as o,E as r,F as t};
@@ -1 +1 @@
1
- import{s as U}from"./chunk-LvLJmgfZ.js";import{l as X,u as V}from"./useEvent-O0nX5vok.js";import{t as Y}from"./react-Bj1aDYRI.js";import{ti as Z}from"./cells-BZ2tqr8k.js";import"./react-dom-CSu739Rf.js";import{t as O}from"./compiler-runtime-B3qBwwSJ.js";import"./utils-BGl6s90X.js";import{S as ee}from"./ai-model-dropdown-C_T_oAXa.js";import{c as le,f as te,s as ie,t as ae}from"./useEventListener-Dy81QR4n.js";import{p as oe,v as re,y as ne}from"./utils-tNbLd14P.js";import{i as de}from"./switch-SqaUg_Rv.js";import{t as se}from"./jsx-runtime-icT_Ltz2.js";import"./dist-B_cxg-E4.js";import"./JsonOutput-Ca8qF0Zd.js";import"./cjs-BU2qXMKx.js";import"./main-DrBRErTM.js";import"./useNonce-BtW-rR_1.js";import{r as pe}from"./requests-Bgjtqo_1.js";import"./layout-am3J4ZNA.js";import"./download-BX5RBVL8.js";import{t as me}from"./useCellActionButton-DBXavVBJ.js";import"./markdown-renderer-CGLrhCH1.js";import{i as he,t as ce}from"./useNotebookActions-DH_ihkjl.js";import"./dist-1ZGGzJka.js";import"./dist-DA4gn7fy.js";import"./dist-Bh-vrbeU.js";import"./dist-4rKUx1vk.js";import"./dist-BXtR56No.js";import"./session-DKzpcHdK.js";import"./Combination-CXstThSr.js";import"./purify.es-ByGlPBcv.js";import"./dates-Bh1ltXGt.js";import"./popover-C5P0DZBj.js";import"./share-BKUsoia0.js";import"./vega-loader.browser-W8QXhYr5.js";import"./defaultLocale-D_LmbLH5.js";import"./defaultLocale-CvLIK2MU.js";import{a as ye,c as fe,i as L,l as z,n as ue,o as J,r as be,s as ge}from"./command-BeKqRjOY.js";import"./chunk-5FQGJX7Z-Fb8WLBdo.js";import"./katex-BrOUG02-.js";import"./html-to-image-D_3oFpSp.js";import{r as ke}from"./focus-CpM6NAz2.js";import{t as Q}from"./renderShortcut-DKHsNYY8.js";import"./esm-DXwI6ZUw.js";import"./name-cell-input-CFXvT7wQ.js";import"./multi-icon-DQ0zErpq.js";import"./dist-Rq9HjYxD.js";import"./dist-DVEj2fgt.js";import"./dist-BbueVrZr.js";import"./dist--yGrqaJH.js";import"./dist-21ZHvMu-.js";import"./dist-CmNOQaWE.js";import"./dist-DniPQ7Qm.js";import"./dist-CIhoH-X1.js";import"./dist-BHxWDjO3.js";import"./esm-Uis3U2sE.js";var we=O(),Ce=U(Y(),1);function je(e,l){let t=(0,we.c)(11),n;t[0]===l?n=t[1]:(n=new Z(l),t[0]=l,t[1]=n);let d=n,r;t[2]!==e||t[3]!==d?(r=()=>d.get(e),t[2]=e,t[3]=d,t[4]=r):r=t[4];let[m,k]=(0,Ce.useState)(r),i;t[5]!==e||t[6]!==d?(i=w=>{k(w),d.set(e,w)},t[5]=e,t[6]=d,t[7]=i):i=t[7];let f=i,h;return t[8]!==f||t[9]!==m?(h=[m,f],t[8]=f,t[9]=m,t[10]=h):h=t[10],h}var xe=O(),ve=3;function Se(){let e=(0,xe.c)(7),l;e[0]===Symbol.for("react.memo_cache_sentinel")?(l=[],e[0]=l):l=e[0];let[t,n]=je("marimo:commands",l),d;e[1]!==t||e[2]!==n?(d=m=>{n(_e([m,...t]).slice(0,ve))},e[1]=t,e[2]=n,e[3]=d):d=e[3];let r;return e[4]!==t||e[5]!==d?(r={recentCommands:t,addRecentCommand:d},e[4]=t,e[5]=d,e[6]=r):r=e[6],r}function _e(e){return[...new Set(e)]}function W(e){return e.dropdown!==void 0}function T(e,l=""){return e.flatMap(t=>t.label?W(t)?T(t.dropdown,`${l+t.label} > `):{...t,label:l+t.label,additionalKeywords:t.additionalKeywords}:[])}var Ke=O();function He(){let e=(0,Ke.c)(75),[l,t]=ne(),[n,d]=re(),{saveAppConfig:r,saveUserConfig:m}=pe(),k;e[0]!==m||e[1]!==t?(k=async p=>{await m({config:p}).then(()=>{t(c=>({...c,...p}))})},e[0]=m,e[1]=t,e[2]=k):k=e[2];let i=k,f;e[3]!==r||e[4]!==d?(f=async p=>{await r({config:p}).then(()=>{d(p)})},e[3]=r,e[4]=d,e[5]=f):f=e[5];let h=f,w;if(e[6]!==n||e[7]!==l.completion||e[8]!==l.display||e[9]!==l.keymap||e[10]!==h||e[11]!==i){let p;e[13]===n?p=e[14]:(p=B=>B!==n.width,e[13]=n,e[14]=p);let c;e[15]!==n||e[16]!==h?(c=B=>({label:`App config > Set width=${B}`,handle:()=>{h({...n,width:B})}}),e[15]=n,e[16]=h,e[17]=c):c=e[17];let K;e[18]!==l.display||e[19]!==i?(K={label:"Config > Set theme: dark",handle:()=>{i({display:{...l.display,theme:"dark"}})}},e[18]=l.display,e[19]=i,e[20]=K):K=e[20];let C;e[21]!==l.display||e[22]!==i?(C={label:"Config > Set theme: light",handle:()=>{i({display:{...l.display,theme:"light"}})}},e[21]=l.display,e[22]=i,e[23]=C):C=e[23];let H;e[24]!==l.display||e[25]!==i?(H={label:"Config > Set theme: system",handle:()=>{i({display:{...l.display,theme:"system"}})}},e[24]=l.display,e[25]=i,e[26]=H):H=e[26];let E=l.keymap.preset==="vim",A;e[27]!==l.keymap||e[28]!==i?(A=()=>{i({keymap:{...l.keymap,preset:"vim"}})},e[27]=l.keymap,e[28]=i,e[29]=A):A=e[29];let M;e[30]!==E||e[31]!==A?(M={label:"Config > Switch keymap to VIM",hidden:E,handle:A},e[30]=E,e[31]=A,e[32]=M):M=e[32];let N=l.keymap.preset==="default",j;e[33]!==l.keymap||e[34]!==i?(j=()=>{i({keymap:{...l.keymap,preset:"default"}})},e[33]=l.keymap,e[34]=i,e[35]=j):j=e[35];let u;e[36]!==N||e[37]!==j?(u={label:"Config > Switch keymap to default (current: VIM)",hidden:N,handle:j},e[36]=N,e[37]=j,e[38]=u):u=e[38];let x;e[39]!==l.completion||e[40]!==i?(x=()=>{i({completion:{...l.completion,copilot:!1}})},e[39]=l.completion,e[40]=i,e[41]=x):x=e[41];let v=l.completion.copilot!=="github",P;e[42]!==x||e[43]!==v?(P={label:"Config > Disable GitHub Copilot",handle:x,hidden:v},e[42]=x,e[43]=v,e[44]=P):P=e[44];let S;e[45]!==l.completion||e[46]!==i?(S=()=>{i({completion:{...l.completion,copilot:"github"}})},e[45]=l.completion,e[46]=i,e[47]=S):S=e[47];let G=l.completion.copilot==="github",$;e[48]!==S||e[49]!==G?($={label:"Config > Enable GitHub Copilot",handle:S,hidden:G},e[48]=S,e[49]=G,e[50]=$):$=e[50];let q=!l.display.reference_highlighting,_;e[51]!==l.display||e[52]!==i?(_=()=>{i({display:{...l.display,reference_highlighting:!1}})},e[51]=l.display,e[52]=i,e[53]=_):_=e[53];let b;e[54]!==q||e[55]!==_?(b={label:"Config > Disable reference highlighting",hidden:q,handle:_},e[54]=q,e[55]=_,e[56]=b):b=e[56];let y;e[57]!==l.display||e[58]!==i?(y=()=>{i({display:{...l.display,reference_highlighting:!0}})},e[57]=l.display,e[58]=i,e[59]=y):y=e[59];let D;e[60]!==l.display.reference_highlighting||e[61]!==y?(D={label:"Config > Enable reference highlighting",hidden:l.display.reference_highlighting,handle:y},e[60]=l.display.reference_highlighting,e[61]=y,e[62]=D):D=e[62];let a=l.display.cell_output==="above",o;e[63]!==l.display||e[64]!==i?(o=()=>{i({display:{...l.display,cell_output:"above"}})},e[63]=l.display,e[64]=i,e[65]=o):o=e[65];let F;e[66]!==a||e[67]!==o?(F={label:"Config > Set cell output area: above",hidden:a,handle:o},e[66]=a,e[67]=o,e[68]=F):F=e[68];let g=l.display.cell_output==="below",R;e[69]!==l.display||e[70]!==i?(R=()=>{i({display:{...l.display,cell_output:"below"}})},e[69]=l.display,e[70]=i,e[71]=R):R=e[71];let I;e[72]!==g||e[73]!==R?(I={label:"Config > Set cell output area: below",hidden:g,handle:R},e[72]=g,e[73]=R,e[74]=I):I=e[74],w=[...ee().filter(p).map(c),K,C,H,M,u,P,$,b,D,F,I].filter(Ae),e[6]=n,e[7]=l.completion,e[8]=l.display,e[9]=l.keymap,e[10]=h,e[11]=i,e[12]=w}else w=e[12];return w}function Ae(e){return!e.hidden}var Me=O(),s=U(se(),1),Ne=()=>{let e=(0,Me.c)(37),[l,t]=X(he),n=de(),d=V(ke),r=V(oe),m;e[0]===d?m=e[1]:(m={cell:d},e[0]=d,e[1]=m);let k=me(m).flat();k=T(k);let i=He(),f=ce();f=[...T(f),...T(i)];let h=f.filter(De),w=le.keyBy(h,Fe),{recentCommands:p,addRecentCommand:c}=Se(),K;e[2]===p?K=e[3]:(K=new Set(p),e[2]=p,e[3]=K);let C=K,H;e[4]!==r||e[5]!==t?(H=a=>{te(r.getHotkey("global.commandPalette").key)(a)&&(a.preventDefault(),t(Re))},e[4]=r,e[5]=t,e[6]=H):H=e[6],ae(document,"keydown",H);let E;e[7]!==c||e[8]!==r||e[9]!==n||e[10]!==t?(E=(a,o)=>{let F=n[a];if(!F)return null;let g=r.getHotkey(a);return(0,s.jsxs)(J,{disabled:o.disabled,keywords:g.additionalKeywords,onSelect:()=>{c(a),t(!1),requestAnimationFrame(()=>{F()})},value:g.name,children:[(0,s.jsxs)("span",{children:[g.name,o.tooltip&&(0,s.jsx)("span",{className:"ml-2",children:o.tooltip})]}),(0,s.jsx)(z,{children:(0,s.jsx)(Q,{shortcut:g.key})})]},a)},e[7]=c,e[8]=r,e[9]=n,e[10]=t,e[11]=E):E=e[11];let A=E,M;e[12]!==c||e[13]!==r||e[14]!==t?(M=a=>{let{label:o,handle:F,props:g,hotkey:R,additionalKeywords:I}=a,B=g===void 0?{}:g;return(0,s.jsxs)(J,{disabled:B.disabled,keywords:I,onSelect:()=>{c(o),t(!1),requestAnimationFrame(()=>{F()})},value:o,children:[(0,s.jsxs)("span",{children:[o,B.tooltip&&(0,s.jsxs)("span",{className:"ml-2",children:["(",B.tooltip,")"]})]}),R&&(0,s.jsx)(z,{children:(0,s.jsx)(Q,{shortcut:r.getHotkey(R).key})})]},o)},e[12]=c,e[13]=r,e[14]=t,e[15]=M):M=e[15];let N=M,j=ue,u;e[16]===Symbol.for("react.memo_cache_sentinel")?(u=(0,s.jsx)(ye,{placeholder:"Type to search..."}),e[16]=u):u=e[16];let x=ge,v;e[17]===Symbol.for("react.memo_cache_sentinel")?(v=(0,s.jsx)(be,{children:"No results found."}),e[17]=v):v=e[17];let P=p.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(L,{heading:"Recently Used",children:p.map(a=>{let o=w[a];return ie(a)?A(a,{disabled:o==null?void 0:o.disabled,tooltip:o==null?void 0:o.tooltip}):o&&!W(o)?N({label:o.label,handle:o.handleHeadless||o.handle,props:{disabled:o.disabled,tooltip:o.tooltip},additionalKeywords:o.additionalKeywords}):null})}),(0,s.jsx)(fe,{})]}),S=L,G=r.iterate().map(a=>{if(C.has(a))return null;let o=w[a];return A(a,{disabled:o==null?void 0:o.disabled,tooltip:o==null?void 0:o.tooltip})}),$=h.map(a=>C.has(a.label)?null:N({label:a.label,handle:a.handleHeadless||a.handle,props:{disabled:a.disabled,tooltip:a.tooltip},additionalKeywords:a.additionalKeywords})),q;e[18]!==C||e[19]!==N?(q=a=>C.has(a.label)?null:N({label:`Cell > ${a.label}`,handle:a.handleHeadless||a.handle,props:{disabled:a.disabled,tooltip:a.tooltip},additionalKeywords:a.additionalKeywords}),e[18]=C,e[19]=N,e[20]=q):q=e[20];let _=k.map(q),b;e[21]!==S||e[22]!==$||e[23]!==_||e[24]!==G?(b=(0,s.jsxs)(S,{heading:"Commands",children:[G,$,_]}),e[21]=S,e[22]=$,e[23]=_,e[24]=G,e[25]=b):b=e[25];let y;e[26]!==x||e[27]!==b||e[28]!==v||e[29]!==P?(y=(0,s.jsxs)(x,{children:[v,P,b]}),e[26]=x,e[27]=b,e[28]=v,e[29]=P,e[30]=y):y=e[30];let D;return e[31]!==j||e[32]!==l||e[33]!==t||e[34]!==y||e[35]!==u?(D=(0,s.jsxs)(j,{open:l,onOpenChange:t,children:[u,y]}),e[31]=j,e[32]=l,e[33]=t,e[34]=y,e[35]=u,e[36]=D):D=e[36],D};function De(e){return!e.hotkey}function Fe(e){return e.label}function Re(e){return!e}export{Ne as default};
1
+ import{s as U}from"./chunk-LvLJmgfZ.js";import{l as X,u as V}from"./useEvent-O0nX5vok.js";import{t as Y}from"./react-Bj1aDYRI.js";import{ti as Z}from"./cells-BZ2tqr8k.js";import"./react-dom-CSu739Rf.js";import{t as O}from"./compiler-runtime-B3qBwwSJ.js";import"./utils-BGl6s90X.js";import{S as ee}from"./ai-model-dropdown-C_T_oAXa.js";import{c as le,f as te,s as ie,t as ae}from"./useEventListener-Dy81QR4n.js";import{p as oe,v as re,y as ne}from"./utils-tNbLd14P.js";import{i as de}from"./switch-SqaUg_Rv.js";import{t as se}from"./jsx-runtime-icT_Ltz2.js";import"./dist-B_cxg-E4.js";import"./JsonOutput-C6G83us5.js";import"./cjs-BU2qXMKx.js";import"./main-DrBRErTM.js";import"./useNonce-BtW-rR_1.js";import{r as pe}from"./requests-Bgjtqo_1.js";import"./layout-b4TrkjtJ.js";import"./download-BX5RBVL8.js";import{t as me}from"./useCellActionButton-DBXavVBJ.js";import"./markdown-renderer-CGLrhCH1.js";import{i as he,t as ce}from"./useNotebookActions-BqjNClzw.js";import"./dist-1ZGGzJka.js";import"./dist-DA4gn7fy.js";import"./dist-Bh-vrbeU.js";import"./dist-4rKUx1vk.js";import"./dist-BXtR56No.js";import"./session-DKzpcHdK.js";import"./Combination-CXstThSr.js";import"./purify.es-ByGlPBcv.js";import"./dates-Bh1ltXGt.js";import"./popover-C5P0DZBj.js";import"./share-BKUsoia0.js";import"./vega-loader.browser-W8QXhYr5.js";import"./defaultLocale-D_LmbLH5.js";import"./defaultLocale-CvLIK2MU.js";import{a as ye,c as fe,i as L,l as z,n as ue,o as J,r as be,s as ge}from"./command-BeKqRjOY.js";import"./chunk-5FQGJX7Z-Fb8WLBdo.js";import"./katex-BrOUG02-.js";import"./html-to-image-D_3oFpSp.js";import{r as ke}from"./focus-CpM6NAz2.js";import{t as Q}from"./renderShortcut-DKHsNYY8.js";import"./esm-DXwI6ZUw.js";import"./name-cell-input-CFXvT7wQ.js";import"./multi-icon-DQ0zErpq.js";import"./dist-Rq9HjYxD.js";import"./dist-DVEj2fgt.js";import"./dist-BbueVrZr.js";import"./dist--yGrqaJH.js";import"./dist-21ZHvMu-.js";import"./dist-CmNOQaWE.js";import"./dist-DniPQ7Qm.js";import"./dist-CIhoH-X1.js";import"./dist-BHxWDjO3.js";import"./esm-Uis3U2sE.js";var we=O(),Ce=U(Y(),1);function je(e,l){let t=(0,we.c)(11),n;t[0]===l?n=t[1]:(n=new Z(l),t[0]=l,t[1]=n);let d=n,r;t[2]!==e||t[3]!==d?(r=()=>d.get(e),t[2]=e,t[3]=d,t[4]=r):r=t[4];let[m,k]=(0,Ce.useState)(r),i;t[5]!==e||t[6]!==d?(i=w=>{k(w),d.set(e,w)},t[5]=e,t[6]=d,t[7]=i):i=t[7];let f=i,h;return t[8]!==f||t[9]!==m?(h=[m,f],t[8]=f,t[9]=m,t[10]=h):h=t[10],h}var xe=O(),ve=3;function Se(){let e=(0,xe.c)(7),l;e[0]===Symbol.for("react.memo_cache_sentinel")?(l=[],e[0]=l):l=e[0];let[t,n]=je("marimo:commands",l),d;e[1]!==t||e[2]!==n?(d=m=>{n(_e([m,...t]).slice(0,ve))},e[1]=t,e[2]=n,e[3]=d):d=e[3];let r;return e[4]!==t||e[5]!==d?(r={recentCommands:t,addRecentCommand:d},e[4]=t,e[5]=d,e[6]=r):r=e[6],r}function _e(e){return[...new Set(e)]}function W(e){return e.dropdown!==void 0}function T(e,l=""){return e.flatMap(t=>t.label?W(t)?T(t.dropdown,`${l+t.label} > `):{...t,label:l+t.label,additionalKeywords:t.additionalKeywords}:[])}var Ke=O();function He(){let e=(0,Ke.c)(75),[l,t]=ne(),[n,d]=re(),{saveAppConfig:r,saveUserConfig:m}=pe(),k;e[0]!==m||e[1]!==t?(k=async p=>{await m({config:p}).then(()=>{t(c=>({...c,...p}))})},e[0]=m,e[1]=t,e[2]=k):k=e[2];let i=k,f;e[3]!==r||e[4]!==d?(f=async p=>{await r({config:p}).then(()=>{d(p)})},e[3]=r,e[4]=d,e[5]=f):f=e[5];let h=f,w;if(e[6]!==n||e[7]!==l.completion||e[8]!==l.display||e[9]!==l.keymap||e[10]!==h||e[11]!==i){let p;e[13]===n?p=e[14]:(p=B=>B!==n.width,e[13]=n,e[14]=p);let c;e[15]!==n||e[16]!==h?(c=B=>({label:`App config > Set width=${B}`,handle:()=>{h({...n,width:B})}}),e[15]=n,e[16]=h,e[17]=c):c=e[17];let K;e[18]!==l.display||e[19]!==i?(K={label:"Config > Set theme: dark",handle:()=>{i({display:{...l.display,theme:"dark"}})}},e[18]=l.display,e[19]=i,e[20]=K):K=e[20];let C;e[21]!==l.display||e[22]!==i?(C={label:"Config > Set theme: light",handle:()=>{i({display:{...l.display,theme:"light"}})}},e[21]=l.display,e[22]=i,e[23]=C):C=e[23];let H;e[24]!==l.display||e[25]!==i?(H={label:"Config > Set theme: system",handle:()=>{i({display:{...l.display,theme:"system"}})}},e[24]=l.display,e[25]=i,e[26]=H):H=e[26];let E=l.keymap.preset==="vim",A;e[27]!==l.keymap||e[28]!==i?(A=()=>{i({keymap:{...l.keymap,preset:"vim"}})},e[27]=l.keymap,e[28]=i,e[29]=A):A=e[29];let M;e[30]!==E||e[31]!==A?(M={label:"Config > Switch keymap to VIM",hidden:E,handle:A},e[30]=E,e[31]=A,e[32]=M):M=e[32];let N=l.keymap.preset==="default",j;e[33]!==l.keymap||e[34]!==i?(j=()=>{i({keymap:{...l.keymap,preset:"default"}})},e[33]=l.keymap,e[34]=i,e[35]=j):j=e[35];let u;e[36]!==N||e[37]!==j?(u={label:"Config > Switch keymap to default (current: VIM)",hidden:N,handle:j},e[36]=N,e[37]=j,e[38]=u):u=e[38];let x;e[39]!==l.completion||e[40]!==i?(x=()=>{i({completion:{...l.completion,copilot:!1}})},e[39]=l.completion,e[40]=i,e[41]=x):x=e[41];let v=l.completion.copilot!=="github",P;e[42]!==x||e[43]!==v?(P={label:"Config > Disable GitHub Copilot",handle:x,hidden:v},e[42]=x,e[43]=v,e[44]=P):P=e[44];let S;e[45]!==l.completion||e[46]!==i?(S=()=>{i({completion:{...l.completion,copilot:"github"}})},e[45]=l.completion,e[46]=i,e[47]=S):S=e[47];let G=l.completion.copilot==="github",$;e[48]!==S||e[49]!==G?($={label:"Config > Enable GitHub Copilot",handle:S,hidden:G},e[48]=S,e[49]=G,e[50]=$):$=e[50];let q=!l.display.reference_highlighting,_;e[51]!==l.display||e[52]!==i?(_=()=>{i({display:{...l.display,reference_highlighting:!1}})},e[51]=l.display,e[52]=i,e[53]=_):_=e[53];let b;e[54]!==q||e[55]!==_?(b={label:"Config > Disable reference highlighting",hidden:q,handle:_},e[54]=q,e[55]=_,e[56]=b):b=e[56];let y;e[57]!==l.display||e[58]!==i?(y=()=>{i({display:{...l.display,reference_highlighting:!0}})},e[57]=l.display,e[58]=i,e[59]=y):y=e[59];let D;e[60]!==l.display.reference_highlighting||e[61]!==y?(D={label:"Config > Enable reference highlighting",hidden:l.display.reference_highlighting,handle:y},e[60]=l.display.reference_highlighting,e[61]=y,e[62]=D):D=e[62];let a=l.display.cell_output==="above",o;e[63]!==l.display||e[64]!==i?(o=()=>{i({display:{...l.display,cell_output:"above"}})},e[63]=l.display,e[64]=i,e[65]=o):o=e[65];let F;e[66]!==a||e[67]!==o?(F={label:"Config > Set cell output area: above",hidden:a,handle:o},e[66]=a,e[67]=o,e[68]=F):F=e[68];let g=l.display.cell_output==="below",R;e[69]!==l.display||e[70]!==i?(R=()=>{i({display:{...l.display,cell_output:"below"}})},e[69]=l.display,e[70]=i,e[71]=R):R=e[71];let I;e[72]!==g||e[73]!==R?(I={label:"Config > Set cell output area: below",hidden:g,handle:R},e[72]=g,e[73]=R,e[74]=I):I=e[74],w=[...ee().filter(p).map(c),K,C,H,M,u,P,$,b,D,F,I].filter(Ae),e[6]=n,e[7]=l.completion,e[8]=l.display,e[9]=l.keymap,e[10]=h,e[11]=i,e[12]=w}else w=e[12];return w}function Ae(e){return!e.hidden}var Me=O(),s=U(se(),1),Ne=()=>{let e=(0,Me.c)(37),[l,t]=X(he),n=de(),d=V(ke),r=V(oe),m;e[0]===d?m=e[1]:(m={cell:d},e[0]=d,e[1]=m);let k=me(m).flat();k=T(k);let i=He(),f=ce();f=[...T(f),...T(i)];let h=f.filter(De),w=le.keyBy(h,Fe),{recentCommands:p,addRecentCommand:c}=Se(),K;e[2]===p?K=e[3]:(K=new Set(p),e[2]=p,e[3]=K);let C=K,H;e[4]!==r||e[5]!==t?(H=a=>{te(r.getHotkey("global.commandPalette").key)(a)&&(a.preventDefault(),t(Re))},e[4]=r,e[5]=t,e[6]=H):H=e[6],ae(document,"keydown",H);let E;e[7]!==c||e[8]!==r||e[9]!==n||e[10]!==t?(E=(a,o)=>{let F=n[a];if(!F)return null;let g=r.getHotkey(a);return(0,s.jsxs)(J,{disabled:o.disabled,keywords:g.additionalKeywords,onSelect:()=>{c(a),t(!1),requestAnimationFrame(()=>{F()})},value:g.name,children:[(0,s.jsxs)("span",{children:[g.name,o.tooltip&&(0,s.jsx)("span",{className:"ml-2",children:o.tooltip})]}),(0,s.jsx)(z,{children:(0,s.jsx)(Q,{shortcut:g.key})})]},a)},e[7]=c,e[8]=r,e[9]=n,e[10]=t,e[11]=E):E=e[11];let A=E,M;e[12]!==c||e[13]!==r||e[14]!==t?(M=a=>{let{label:o,handle:F,props:g,hotkey:R,additionalKeywords:I}=a,B=g===void 0?{}:g;return(0,s.jsxs)(J,{disabled:B.disabled,keywords:I,onSelect:()=>{c(o),t(!1),requestAnimationFrame(()=>{F()})},value:o,children:[(0,s.jsxs)("span",{children:[o,B.tooltip&&(0,s.jsxs)("span",{className:"ml-2",children:["(",B.tooltip,")"]})]}),R&&(0,s.jsx)(z,{children:(0,s.jsx)(Q,{shortcut:r.getHotkey(R).key})})]},o)},e[12]=c,e[13]=r,e[14]=t,e[15]=M):M=e[15];let N=M,j=ue,u;e[16]===Symbol.for("react.memo_cache_sentinel")?(u=(0,s.jsx)(ye,{placeholder:"Type to search..."}),e[16]=u):u=e[16];let x=ge,v;e[17]===Symbol.for("react.memo_cache_sentinel")?(v=(0,s.jsx)(be,{children:"No results found."}),e[17]=v):v=e[17];let P=p.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(L,{heading:"Recently Used",children:p.map(a=>{let o=w[a];return ie(a)?A(a,{disabled:o==null?void 0:o.disabled,tooltip:o==null?void 0:o.tooltip}):o&&!W(o)?N({label:o.label,handle:o.handleHeadless||o.handle,props:{disabled:o.disabled,tooltip:o.tooltip},additionalKeywords:o.additionalKeywords}):null})}),(0,s.jsx)(fe,{})]}),S=L,G=r.iterate().map(a=>{if(C.has(a))return null;let o=w[a];return A(a,{disabled:o==null?void 0:o.disabled,tooltip:o==null?void 0:o.tooltip})}),$=h.map(a=>C.has(a.label)?null:N({label:a.label,handle:a.handleHeadless||a.handle,props:{disabled:a.disabled,tooltip:a.tooltip},additionalKeywords:a.additionalKeywords})),q;e[18]!==C||e[19]!==N?(q=a=>C.has(a.label)?null:N({label:`Cell > ${a.label}`,handle:a.handleHeadless||a.handle,props:{disabled:a.disabled,tooltip:a.tooltip},additionalKeywords:a.additionalKeywords}),e[18]=C,e[19]=N,e[20]=q):q=e[20];let _=k.map(q),b;e[21]!==S||e[22]!==$||e[23]!==_||e[24]!==G?(b=(0,s.jsxs)(S,{heading:"Commands",children:[G,$,_]}),e[21]=S,e[22]=$,e[23]=_,e[24]=G,e[25]=b):b=e[25];let y;e[26]!==x||e[27]!==b||e[28]!==v||e[29]!==P?(y=(0,s.jsxs)(x,{children:[v,P,b]}),e[26]=x,e[27]=b,e[28]=v,e[29]=P,e[30]=y):y=e[30];let D;return e[31]!==j||e[32]!==l||e[33]!==t||e[34]!==y||e[35]!==u?(D=(0,s.jsxs)(j,{open:l,onOpenChange:t,children:[u,y]}),e[31]=j,e[32]=l,e[33]=t,e[34]=y,e[35]=u,e[36]=D):D=e[36],D};function De(e){return!e.hotkey}function Fe(e){return e.label}function Re(e){return!e}export{Ne as default};
@@ -1,3 +1,3 @@
1
- var Nr=Object.defineProperty;var lt=g=>{throw TypeError(g)};var kr=(g,y,E)=>y in g?Nr(g,y,{enumerable:!0,configurable:!0,writable:!0,value:E}):g[y]=E;var a=(g,y,E)=>kr(g,typeof y!="symbol"?y+"":y,E),Ee=(g,y,E)=>y.has(g)||lt("Cannot "+E);var l=(g,y,E)=>(Ee(g,y,"read from private field"),E?E.call(g):y.get(g)),F=(g,y,E)=>y.has(g)?lt("Cannot add the same private member more than once"):y instanceof WeakSet?y.add(g):y.set(g,E),N=(g,y,E,de)=>(Ee(g,y,"write to private field"),de?de.call(g,E):y.set(g,E),E),$=(g,y,E)=>(Ee(g,y,"access private method"),E);import{s as dt}from"./chunk-LvLJmgfZ.js";import{i as se,l as ge,p as V,u as qr}from"./useEvent-O0nX5vok.js";import{t as Mr}from"./react-Bj1aDYRI.js";import{Cn as Pr,G as ut,Q as ct,b as jr,ci as Ar,ii as Lr,mi as ie,oi as Ir,pi as Ur,ti as Tr,x as zr,__tla as Wr}from"./cells-BZ2tqr8k.js";import{t as ht}from"./compiler-runtime-B3qBwwSJ.js";import{t as Or}from"./get-DBdMgUNq.js";import{t as Dr}from"./assertNever-DWSyoPEi.js";import{t as Br}from"./debounce-DS_VtWMt.js";import{t as Hr}from"./_baseSet-D5BgdrnX.js";import{g as v,m as f}from"./useEventListener-Dy81QR4n.js";import{t as $r}from"./invariant-CQUIhlu2.js";import{S as Vr}from"./utils-tNbLd14P.js";import{S as Xr,n as Qr}from"./config-DRN1Q5Ol.js";import{a as Yr}from"./switch-SqaUg_Rv.js";import{n as pt}from"./globals-zG_ueqN3.js";import{t as mt}from"./ErrorBoundary-Ba0LbbH4.js";import{t as Gr}from"./jsx-runtime-icT_Ltz2.js";import{t as Jr}from"./button-Ej3vmCIF.js";import{t as Kr}from"./cn-BoaCR37F.js";import{Q as Zr,X as ft,Y as Ce,__tla as en}from"./JsonOutput-Ca8qF0Zd.js";import{t as tn}from"./createReducer-Dvh64vBW.js";import{t as Re}from"./requests-Bgjtqo_1.js";import{t as gt}from"./createLucideIcon-Cm-Z7dYr.js";import{t as rn}from"./x-CdLP7-v3.js";import{a as yt,l as nn,r as wt}from"./markdown-renderer-CGLrhCH1.js";import{t as sn}from"./DeferredRequestRegistry-D1ivqOZL.js";import{t as an}from"./preload-helper-TXkS1QI3.js";import{t as bt}from"./Deferred-D2igisxY.js";import{t as vt}from"./uuid-ImXS-885.js";import{t as on}from"./use-toast-BhMe50aT.js";import{t as xt}from"./tooltip-BCGmr4TU.js";import{n as ln,r as dn,t as un}from"./share-BKUsoia0.js";import{t as cn}from"./blob-BTrKZERf.js";import{i as hn,r as pn,t as mn}from"./events-GxnDgt0p.js";import{r as fn,t as gn}from"./react-resizable-panels.browser.esm-CHZt2sgR.js";import{t as _t}from"./toggle-iY_IwLg6.js";let Et,ae,oe,Se,le,Ct,Fe,Rt,ye,St,Ne,ke,qe,Ft,Me,Nt,kt,qt,we,Pe,Mt,Pt,jt,At,Lt,je,Ae,Le,It,Ut,Tt,zt,Wt,Ie,Ot,yn=Promise.all([(()=>{try{return Wr}catch{}})(),(()=>{try{return en}catch{}})()]).then(async()=>{var X,pe,Bt,nt,T,Q,I,st,W,it,z,te,J,be,at,ot,me,O,D,K,k,Y,B,Ht,$t,Vt,fe;function g(t,e,r){return t==null?t:Hr(t,e,r)}let y,E;le=g,y=gt("crosshair",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"22",x2:"18",y1:"12",y2:"12",key:"l9bcsi"}],["line",{x1:"6",x2:"2",y1:"12",y2:"12",key:"13hhkx"}],["line",{x1:"12",x2:"12",y1:"6",y2:"2",key:"10w3f3"}],["line",{x1:"12",x2:"12",y1:"22",y2:"18",key:"15g9kq"}]]),E=gt("pin",[["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z",key:"1nkz8b"}]]);function de(t){return{all:t||(t=new Map),on:function(e,r){var n=t.get(e);n?n.push(r):t.set(e,[r])},off:function(e,r){var n=t.get(e);n&&(r?n.splice(n.indexOf(r)>>>0,1):t.set(e,[]))},emit:function(e,r){var n=t.get(e);n&&n.slice().map(function(s){s(r)}),(n=t.get("*"))&&n.slice().map(function(s){s(e,r)})}}}var R=dt(Mr(),1),ve=(0,R.createContext)(null),Qt=t=>{let{controller:e}=(0,R.useContext)(ve),r=R.useRef(Symbol("fill"));return(0,R.useEffect)(()=>(e.mount({name:t.name,ref:r.current,children:t.children}),()=>{e.unmount({name:t.name,ref:r.current})}),[]),(0,R.useEffect)(()=>{e.update({name:t.name,ref:r.current,children:t.children})}),null},Yt=Object.defineProperty,Gt=(t,e,r)=>e in t?Yt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Te=(t,e,r)=>(Gt(t,typeof e=="symbol"?e:e+"",r),r),ze=console,Jt=class{constructor(t){Te(this,"_bus"),Te(this,"_db"),this._bus=t,this.handleFillMount=this.handleFillMount.bind(this),this.handleFillUpdated=this.handleFillUpdated.bind(this),this.handleFillUnmount=this.handleFillUnmount.bind(this),this._db={byName:new Map,byFill:new Map}}mount(){this._bus.on("fill-mount",this.handleFillMount),this._bus.on("fill-updated",this.handleFillUpdated),this._bus.on("fill-unmount",this.handleFillUnmount)}unmount(){this._bus.off("fill-mount",this.handleFillMount),this._bus.off("fill-updated",this.handleFillUpdated),this._bus.off("fill-unmount",this.handleFillUnmount)}handleFillMount({fill:t}){let e=R.Children.toArray(t.children),r=t.name,n={fill:t,children:e,name:r},s=this._db.byName.get(r);s?(s.components.push(n),s.listeners.forEach(i=>i([...s.components]))):this._db.byName.set(r,{listeners:[],components:[n]}),this._db.byFill.set(t.ref,n)}handleFillUpdated({fill:t}){let e=this._db.byFill.get(t.ref),r=R.Children.toArray(t.children);if(e){e.children=r;let n=this._db.byName.get(e.name);if(n)n.listeners.forEach(s=>s([...n.components]));else throw Error("registration was expected to be defined")}else{ze.error("[handleFillUpdated] component was expected to be defined");return}}handleFillUnmount({fill:t}){let e=this._db.byFill.get(t.ref);if(!e){ze.error("[handleFillUnmount] component was expected to be defined");return}let r=e.name,n=this._db.byName.get(r);if(!n)throw Error("registration was expected to be defined");n.components=n.components.filter(s=>s!==e),this._db.byFill.delete(t.ref),n.listeners.length===0&&n.components.length===0?this._db.byName.delete(r):n.listeners.forEach(s=>s([...n.components]))}onComponentsChange(t,e){let r=this._db.byName.get(t);r?(r.listeners.push(e),e(r.components)):(this._db.byName.set(t,{listeners:[e],components:[]}),e([]))}getFillsByName(t){let e=this._db.byName.get(t);return e?e.components.map(r=>r.fill):[]}getChildrenByName(t){let e=this._db.byName.get(t);return e?e.components.map(r=>r.children).reduce((r,n)=>r.concat(n),[]):[]}removeOnComponentsChange(t,e){let r=this._db.byName.get(t);if(!r)throw Error("expected registration to be defined");let n=r.listeners;n.splice(n.indexOf(e),1)}},Kt=Object.defineProperty,Zt=(t,e,r)=>e in t?Kt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,er=(t,e,r)=>(Zt(t,typeof e=="symbol"?e:e+"",r),r),We=class{constructor(){er(this,"bus",de())}mount(t){this.bus.emit("fill-mount",{fill:t})}unmount(t){this.bus.emit("fill-unmount",{fill:t})}update(t){this.bus.emit("fill-updated",{fill:t})}};function tr(t){let e=t||new We;return{controller:e,manager:new Jt(e.bus)}}Ct=({controller:t,children:e})=>{let[r]=R.useState(()=>{let n=tr(t);return n.manager.mount(),n});return R.useEffect(()=>()=>{r.manager.unmount()},[]),R.createElement(ve.Provider,{value:r},e)},ye=function(t,e){let[r,n]=(0,R.useState)([]),{manager:s}=(0,R.useContext)(ve);return(0,R.useEffect)(()=>(s.onComponentsChange(t,n),()=>{s.removeOnComponentsChange(t,n)}),[t]),r.flatMap((i,u)=>{let{children:d}=i;return d.map((m,w)=>{if(typeof m=="number"||typeof m=="string")throw Error("Only element children will work here");return R.cloneElement(m,{key:u.toString()+w.toString(),...e})})})},Fe=t=>{let e=ye(t.name,t.childProps);if(typeof t.children=="function"){let r=t.children(e);if(R.isValidElement(r)||r===null)return r;throw Error("Slot rendered with function must return a valid React Element.")}return e},Pt=V(null);var{valueAtom:rr,useActions:nr}=tn(()=>({banners:[]}),{addBanner:(t,e)=>({...t,banners:[...t.banners,{...e,id:vt()}]}),removeBanner:(t,e)=>({...t,banners:t.banners.filter(r=>r.id!==e)}),clearBanners:t=>({...t,banners:[]})});Et=()=>qr(rr),Mt=function(){return nr()},Rt=new We,oe={SIDEBAR:"sidebar",CONTEXT_AWARE_PANEL:"context-aware-panel"};let Oe,De,Be;Oe=class{constructor(){a(this,"subscriptions",new Map)}addSubscription(t,e){var r;this.subscriptions.has(t)||this.subscriptions.set(t,new Set),(r=this.subscriptions.get(t))==null||r.add(e)}removeSubscription(t,e){var r;(r=this.subscriptions.get(t))==null||r.delete(e)}notify(t,e){for(let r of this.subscriptions.get(t)??[])r(e)}},Se=class Ue{constructor(e){a(this,"subscriptions",new Oe);this.producer=e}static withProducerCallback(e){return new Ue(e)}static empty(){return new Ue}startProducer(){this.producer&&this.producer(e=>{this.subscriptions.notify("message",e)})}connect(){return new Promise(e=>setTimeout(e,0)).then(()=>{this.subscriptions.notify("open",new Event("open"))})}get readyState(){return WebSocket.OPEN}reconnect(e,r){this.close(),this.connect()}close(){this.subscriptions.notify("close",new Event("close"))}send(e){return this.subscriptions.notify("message",new MessageEvent("message",{data:e})),Promise.resolve()}addEventListener(e,r){this.subscriptions.addSubscription(e,r),e==="open"&&r(new Event("open")),e==="message"&&this.startProducer()}removeEventListener(e,r){this.subscriptions.removeSubscription(e,r)}},De=1e10,Be=1e3;function ue(t,e){let r=t.map(n=>`"${n}"`).join(", ");return Error(`This RPC instance cannot ${e} because the transport did not provide one or more of these methods: ${r}`)}function sr(t={}){let e={};function r(o){e=o}let n={};function s(o){var p;n.unregisterHandler&&n.unregisterHandler(),n=o,(p=n.registerHandler)==null||p.call(n,ne)}let i;function u(o){if(typeof o=="function"){i=o;return}i=(p,x)=>{let c=o[p];if(c)return c(x);let b=o._;if(!b)throw Error(`The requested method has no handler: ${p}`);return b(p,x)}}let{maxRequestTime:d=Be}=t;t.transport&&s(t.transport),t.requestHandler&&u(t.requestHandler),t._debugHooks&&r(t._debugHooks);let m=0;function w(){return m<=De?++m:m=0}let C=new Map,_=new Map;function q(o,...p){let x=p[0];return new Promise((c,b)=>{var ee;if(!n.send)throw ue(["send"],"make requests");let U=w(),G={type:"request",id:U,method:o,params:x};C.set(U,{resolve:c,reject:b}),d!==1/0&&_.set(U,setTimeout(()=>{_.delete(U),b(Error("RPC request timed out."))},d)),(ee=e.onSend)==null||ee.call(e,G),n.send(G)})}let M=new Proxy(q,{get:(o,p,x)=>p in o?Reflect.get(o,p,x):c=>q(p,c)}),P=M;function j(o,...p){var b;let x=p[0];if(!n.send)throw ue(["send"],"send messages");let c={type:"message",id:o,payload:x};(b=e.onSend)==null||b.call(e,c),n.send(c)}let A=new Proxy(j,{get:(o,p,x)=>p in o?Reflect.get(o,p,x):c=>j(p,c)}),S=A,L=new Map,H=new Set;function Z(o,p){var x;if(!n.registerHandler)throw ue(["registerHandler"],"register message listeners");if(o==="*"){H.add(p);return}L.has(o)||L.set(o,new Set),(x=L.get(o))==null||x.add(p)}function re(o,p){var x,c;if(o==="*"){H.delete(p);return}(x=L.get(o))==null||x.delete(p),((c=L.get(o))==null?void 0:c.size)===0&&L.delete(o)}async function ne(o){var p,x;if((p=e.onReceive)==null||p.call(e,o),!("type"in o))throw Error("Message does not contain a type.");if(o.type==="request"){if(!n.send||!i)throw ue(["send","requestHandler"],"handle requests");let{id:c,method:b,params:U}=o,G;try{G={type:"response",id:c,success:!0,payload:await i(b,U)}}catch(ee){if(!(ee instanceof Error))throw ee;G={type:"response",id:c,success:!1,error:ee.message}}(x=e.onSend)==null||x.call(e,G),n.send(G);return}if(o.type==="response"){let c=_.get(o.id);c!=null&&clearTimeout(c);let{resolve:b,reject:U}=C.get(o.id)??{};o.success?b==null||b(o.payload):U==null||U(Error(o.error));return}if(o.type==="message"){for(let b of H)b(o.id,o.payload);let c=L.get(o.id);if(!c)return;for(let b of c)b(o.payload);return}throw Error(`Unexpected RPC message type: ${o.type}`)}return{setTransport:s,setRequestHandler:u,request:M,requestProxy:P,send:A,sendProxy:S,addMessageListener:Z,removeMessageListener:re,proxy:{send:S,request:P},_setDebugHooks:r}}function ir(t){return sr(t)}var He="[transport-id]";function ar(t,e){let{transportId:r}=e;return r==null?t:{[He]:r,data:t}}function or(t,e){let{transportId:r,filter:n}=e,s=n==null?void 0:n();if(r!=null&&s!=null)throw Error("Cannot use both `transportId` and `filter` at the same time");let i=t;if(r){if(t[He]!==r)return[!0];i=t.data}return s===!1?[!0]:[!1,i]}function lr(t,e={}){let{transportId:r,filter:n,remotePort:s}=e,i=t,u=s??t,d;return{send(m){u.postMessage(ar(m,{transportId:r}))},registerHandler(m){d=w=>{let C=w.data,[_,q]=or(C,{transportId:r,filter:()=>n==null?void 0:n(w)});_||m(q)},i.addEventListener("message",d)},unregisterHandler(){d&&i.removeEventListener("message",d)}}}function dr(t,e){return lr(t,e)}function $e(t){return ir({transport:dr(t,{transportId:"marimo-transport"}),maxRequestTime:2e4,_debugHooks:{onSend:e=>{f.debug("[rpc] Parent -> Worker",e)},onReceive:e=>{f.debug("[rpc] Worker -> Parent",e)}}})}Ne=V("Initializing..."),Wt=V(t=>{let e=t(jr),r=Object.values(e.cellRuntime);return r.some(n=>!nn(n.output))?!0:r.every(n=>n.status==="idle")});var Ve=ln(),Xe="marimo:file",Qe=new Tr(null);const ur={saveFile(t){Qe.set(Xe,t)},readFile(){return Qe.get(Xe)}};var cr={saveFile(t){ie.setCodeForHash((0,Ve.compressToEncodedURIComponent)(t))},readFile(){let t=ie.getCodeFromHash()||ie.getCodeFromSearchParam();return t?(0,Ve.decompressFromEncodedURIComponent)(t):null}};const hr={saveFile(t){},readFile(){let t=document.querySelector("marimo-code");return t?decodeURIComponent(t.textContent||"").trim():null}};var pr={saveFile(t){},readFile(){if(window.location.hostname!=="marimo.app")return null;let t=new URL("files/wasm-intro.py",document.baseURI);return fetch(t.toString()).then(e=>e.ok?e.text():null).catch(()=>null)}};const mr={saveFile(t){},readFile(){return se.get(Lr)??null}};var fr={saveFile(t){},readFile(){return["import marimo","app = marimo.App()","","@app.cell","def __():"," return","",'if __name__ == "__main__":'," app.run()"].join(`
1
+ var Nr=Object.defineProperty;var lt=g=>{throw TypeError(g)};var kr=(g,y,E)=>y in g?Nr(g,y,{enumerable:!0,configurable:!0,writable:!0,value:E}):g[y]=E;var a=(g,y,E)=>kr(g,typeof y!="symbol"?y+"":y,E),Ee=(g,y,E)=>y.has(g)||lt("Cannot "+E);var l=(g,y,E)=>(Ee(g,y,"read from private field"),E?E.call(g):y.get(g)),F=(g,y,E)=>y.has(g)?lt("Cannot add the same private member more than once"):y instanceof WeakSet?y.add(g):y.set(g,E),N=(g,y,E,de)=>(Ee(g,y,"write to private field"),de?de.call(g,E):y.set(g,E),E),$=(g,y,E)=>(Ee(g,y,"access private method"),E);import{s as dt}from"./chunk-LvLJmgfZ.js";import{i as se,l as ge,p as V,u as qr}from"./useEvent-O0nX5vok.js";import{t as Mr}from"./react-Bj1aDYRI.js";import{Cn as Pr,G as ut,Q as ct,b as jr,ci as Ar,ii as Lr,mi as ie,oi as Ir,pi as Ur,ti as Tr,x as zr,__tla as Wr}from"./cells-BZ2tqr8k.js";import{t as ht}from"./compiler-runtime-B3qBwwSJ.js";import{t as Or}from"./get-DBdMgUNq.js";import{t as Dr}from"./assertNever-DWSyoPEi.js";import{t as Br}from"./debounce-DS_VtWMt.js";import{t as Hr}from"./_baseSet-D5BgdrnX.js";import{g as v,m as f}from"./useEventListener-Dy81QR4n.js";import{t as $r}from"./invariant-CQUIhlu2.js";import{S as Vr}from"./utils-tNbLd14P.js";import{S as Xr,n as Qr}from"./config-DRN1Q5Ol.js";import{a as Yr}from"./switch-SqaUg_Rv.js";import{n as pt}from"./globals-zG_ueqN3.js";import{t as mt}from"./ErrorBoundary-Ba0LbbH4.js";import{t as Gr}from"./jsx-runtime-icT_Ltz2.js";import{t as Jr}from"./button-Ej3vmCIF.js";import{t as Kr}from"./cn-BoaCR37F.js";import{Q as Zr,X as ft,Y as Ce,__tla as en}from"./JsonOutput-C6G83us5.js";import{t as tn}from"./createReducer-Dvh64vBW.js";import{t as Re}from"./requests-Bgjtqo_1.js";import{t as gt}from"./createLucideIcon-Cm-Z7dYr.js";import{t as rn}from"./x-CdLP7-v3.js";import{a as yt,l as nn,r as wt}from"./markdown-renderer-CGLrhCH1.js";import{t as sn}from"./DeferredRequestRegistry-D1ivqOZL.js";import{t as an}from"./preload-helper-TXkS1QI3.js";import{t as bt}from"./Deferred-D2igisxY.js";import{t as vt}from"./uuid-ImXS-885.js";import{t as on}from"./use-toast-BhMe50aT.js";import{t as xt}from"./tooltip-BCGmr4TU.js";import{n as ln,r as dn,t as un}from"./share-BKUsoia0.js";import{t as cn}from"./blob-BTrKZERf.js";import{i as hn,r as pn,t as mn}from"./events-GxnDgt0p.js";import{r as fn,t as gn}from"./react-resizable-panels.browser.esm-CHZt2sgR.js";import{t as _t}from"./toggle-iY_IwLg6.js";let Et,ae,oe,Se,le,Ct,Fe,Rt,ye,St,Ne,ke,qe,Ft,Me,Nt,kt,qt,we,Pe,Mt,Pt,jt,At,Lt,je,Ae,Le,It,Ut,Tt,zt,Wt,Ie,Ot,yn=Promise.all([(()=>{try{return Wr}catch{}})(),(()=>{try{return en}catch{}})()]).then(async()=>{var X,pe,Bt,nt,T,Q,I,st,W,it,z,te,J,be,at,ot,me,O,D,K,k,Y,B,Ht,$t,Vt,fe;function g(t,e,r){return t==null?t:Hr(t,e,r)}let y,E;le=g,y=gt("crosshair",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"22",x2:"18",y1:"12",y2:"12",key:"l9bcsi"}],["line",{x1:"6",x2:"2",y1:"12",y2:"12",key:"13hhkx"}],["line",{x1:"12",x2:"12",y1:"6",y2:"2",key:"10w3f3"}],["line",{x1:"12",x2:"12",y1:"22",y2:"18",key:"15g9kq"}]]),E=gt("pin",[["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z",key:"1nkz8b"}]]);function de(t){return{all:t||(t=new Map),on:function(e,r){var n=t.get(e);n?n.push(r):t.set(e,[r])},off:function(e,r){var n=t.get(e);n&&(r?n.splice(n.indexOf(r)>>>0,1):t.set(e,[]))},emit:function(e,r){var n=t.get(e);n&&n.slice().map(function(s){s(r)}),(n=t.get("*"))&&n.slice().map(function(s){s(e,r)})}}}var R=dt(Mr(),1),ve=(0,R.createContext)(null),Qt=t=>{let{controller:e}=(0,R.useContext)(ve),r=R.useRef(Symbol("fill"));return(0,R.useEffect)(()=>(e.mount({name:t.name,ref:r.current,children:t.children}),()=>{e.unmount({name:t.name,ref:r.current})}),[]),(0,R.useEffect)(()=>{e.update({name:t.name,ref:r.current,children:t.children})}),null},Yt=Object.defineProperty,Gt=(t,e,r)=>e in t?Yt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Te=(t,e,r)=>(Gt(t,typeof e=="symbol"?e:e+"",r),r),ze=console,Jt=class{constructor(t){Te(this,"_bus"),Te(this,"_db"),this._bus=t,this.handleFillMount=this.handleFillMount.bind(this),this.handleFillUpdated=this.handleFillUpdated.bind(this),this.handleFillUnmount=this.handleFillUnmount.bind(this),this._db={byName:new Map,byFill:new Map}}mount(){this._bus.on("fill-mount",this.handleFillMount),this._bus.on("fill-updated",this.handleFillUpdated),this._bus.on("fill-unmount",this.handleFillUnmount)}unmount(){this._bus.off("fill-mount",this.handleFillMount),this._bus.off("fill-updated",this.handleFillUpdated),this._bus.off("fill-unmount",this.handleFillUnmount)}handleFillMount({fill:t}){let e=R.Children.toArray(t.children),r=t.name,n={fill:t,children:e,name:r},s=this._db.byName.get(r);s?(s.components.push(n),s.listeners.forEach(i=>i([...s.components]))):this._db.byName.set(r,{listeners:[],components:[n]}),this._db.byFill.set(t.ref,n)}handleFillUpdated({fill:t}){let e=this._db.byFill.get(t.ref),r=R.Children.toArray(t.children);if(e){e.children=r;let n=this._db.byName.get(e.name);if(n)n.listeners.forEach(s=>s([...n.components]));else throw Error("registration was expected to be defined")}else{ze.error("[handleFillUpdated] component was expected to be defined");return}}handleFillUnmount({fill:t}){let e=this._db.byFill.get(t.ref);if(!e){ze.error("[handleFillUnmount] component was expected to be defined");return}let r=e.name,n=this._db.byName.get(r);if(!n)throw Error("registration was expected to be defined");n.components=n.components.filter(s=>s!==e),this._db.byFill.delete(t.ref),n.listeners.length===0&&n.components.length===0?this._db.byName.delete(r):n.listeners.forEach(s=>s([...n.components]))}onComponentsChange(t,e){let r=this._db.byName.get(t);r?(r.listeners.push(e),e(r.components)):(this._db.byName.set(t,{listeners:[e],components:[]}),e([]))}getFillsByName(t){let e=this._db.byName.get(t);return e?e.components.map(r=>r.fill):[]}getChildrenByName(t){let e=this._db.byName.get(t);return e?e.components.map(r=>r.children).reduce((r,n)=>r.concat(n),[]):[]}removeOnComponentsChange(t,e){let r=this._db.byName.get(t);if(!r)throw Error("expected registration to be defined");let n=r.listeners;n.splice(n.indexOf(e),1)}},Kt=Object.defineProperty,Zt=(t,e,r)=>e in t?Kt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,er=(t,e,r)=>(Zt(t,typeof e=="symbol"?e:e+"",r),r),We=class{constructor(){er(this,"bus",de())}mount(t){this.bus.emit("fill-mount",{fill:t})}unmount(t){this.bus.emit("fill-unmount",{fill:t})}update(t){this.bus.emit("fill-updated",{fill:t})}};function tr(t){let e=t||new We;return{controller:e,manager:new Jt(e.bus)}}Ct=({controller:t,children:e})=>{let[r]=R.useState(()=>{let n=tr(t);return n.manager.mount(),n});return R.useEffect(()=>()=>{r.manager.unmount()},[]),R.createElement(ve.Provider,{value:r},e)},ye=function(t,e){let[r,n]=(0,R.useState)([]),{manager:s}=(0,R.useContext)(ve);return(0,R.useEffect)(()=>(s.onComponentsChange(t,n),()=>{s.removeOnComponentsChange(t,n)}),[t]),r.flatMap((i,u)=>{let{children:d}=i;return d.map((m,w)=>{if(typeof m=="number"||typeof m=="string")throw Error("Only element children will work here");return R.cloneElement(m,{key:u.toString()+w.toString(),...e})})})},Fe=t=>{let e=ye(t.name,t.childProps);if(typeof t.children=="function"){let r=t.children(e);if(R.isValidElement(r)||r===null)return r;throw Error("Slot rendered with function must return a valid React Element.")}return e},Pt=V(null);var{valueAtom:rr,useActions:nr}=tn(()=>({banners:[]}),{addBanner:(t,e)=>({...t,banners:[...t.banners,{...e,id:vt()}]}),removeBanner:(t,e)=>({...t,banners:t.banners.filter(r=>r.id!==e)}),clearBanners:t=>({...t,banners:[]})});Et=()=>qr(rr),Mt=function(){return nr()},Rt=new We,oe={SIDEBAR:"sidebar",CONTEXT_AWARE_PANEL:"context-aware-panel"};let Oe,De,Be;Oe=class{constructor(){a(this,"subscriptions",new Map)}addSubscription(t,e){var r;this.subscriptions.has(t)||this.subscriptions.set(t,new Set),(r=this.subscriptions.get(t))==null||r.add(e)}removeSubscription(t,e){var r;(r=this.subscriptions.get(t))==null||r.delete(e)}notify(t,e){for(let r of this.subscriptions.get(t)??[])r(e)}},Se=class Ue{constructor(e){a(this,"subscriptions",new Oe);this.producer=e}static withProducerCallback(e){return new Ue(e)}static empty(){return new Ue}startProducer(){this.producer&&this.producer(e=>{this.subscriptions.notify("message",e)})}connect(){return new Promise(e=>setTimeout(e,0)).then(()=>{this.subscriptions.notify("open",new Event("open"))})}get readyState(){return WebSocket.OPEN}reconnect(e,r){this.close(),this.connect()}close(){this.subscriptions.notify("close",new Event("close"))}send(e){return this.subscriptions.notify("message",new MessageEvent("message",{data:e})),Promise.resolve()}addEventListener(e,r){this.subscriptions.addSubscription(e,r),e==="open"&&r(new Event("open")),e==="message"&&this.startProducer()}removeEventListener(e,r){this.subscriptions.removeSubscription(e,r)}},De=1e10,Be=1e3;function ue(t,e){let r=t.map(n=>`"${n}"`).join(", ");return Error(`This RPC instance cannot ${e} because the transport did not provide one or more of these methods: ${r}`)}function sr(t={}){let e={};function r(o){e=o}let n={};function s(o){var p;n.unregisterHandler&&n.unregisterHandler(),n=o,(p=n.registerHandler)==null||p.call(n,ne)}let i;function u(o){if(typeof o=="function"){i=o;return}i=(p,x)=>{let c=o[p];if(c)return c(x);let b=o._;if(!b)throw Error(`The requested method has no handler: ${p}`);return b(p,x)}}let{maxRequestTime:d=Be}=t;t.transport&&s(t.transport),t.requestHandler&&u(t.requestHandler),t._debugHooks&&r(t._debugHooks);let m=0;function w(){return m<=De?++m:m=0}let C=new Map,_=new Map;function q(o,...p){let x=p[0];return new Promise((c,b)=>{var ee;if(!n.send)throw ue(["send"],"make requests");let U=w(),G={type:"request",id:U,method:o,params:x};C.set(U,{resolve:c,reject:b}),d!==1/0&&_.set(U,setTimeout(()=>{_.delete(U),b(Error("RPC request timed out."))},d)),(ee=e.onSend)==null||ee.call(e,G),n.send(G)})}let M=new Proxy(q,{get:(o,p,x)=>p in o?Reflect.get(o,p,x):c=>q(p,c)}),P=M;function j(o,...p){var b;let x=p[0];if(!n.send)throw ue(["send"],"send messages");let c={type:"message",id:o,payload:x};(b=e.onSend)==null||b.call(e,c),n.send(c)}let A=new Proxy(j,{get:(o,p,x)=>p in o?Reflect.get(o,p,x):c=>j(p,c)}),S=A,L=new Map,H=new Set;function Z(o,p){var x;if(!n.registerHandler)throw ue(["registerHandler"],"register message listeners");if(o==="*"){H.add(p);return}L.has(o)||L.set(o,new Set),(x=L.get(o))==null||x.add(p)}function re(o,p){var x,c;if(o==="*"){H.delete(p);return}(x=L.get(o))==null||x.delete(p),((c=L.get(o))==null?void 0:c.size)===0&&L.delete(o)}async function ne(o){var p,x;if((p=e.onReceive)==null||p.call(e,o),!("type"in o))throw Error("Message does not contain a type.");if(o.type==="request"){if(!n.send||!i)throw ue(["send","requestHandler"],"handle requests");let{id:c,method:b,params:U}=o,G;try{G={type:"response",id:c,success:!0,payload:await i(b,U)}}catch(ee){if(!(ee instanceof Error))throw ee;G={type:"response",id:c,success:!1,error:ee.message}}(x=e.onSend)==null||x.call(e,G),n.send(G);return}if(o.type==="response"){let c=_.get(o.id);c!=null&&clearTimeout(c);let{resolve:b,reject:U}=C.get(o.id)??{};o.success?b==null||b(o.payload):U==null||U(Error(o.error));return}if(o.type==="message"){for(let b of H)b(o.id,o.payload);let c=L.get(o.id);if(!c)return;for(let b of c)b(o.payload);return}throw Error(`Unexpected RPC message type: ${o.type}`)}return{setTransport:s,setRequestHandler:u,request:M,requestProxy:P,send:A,sendProxy:S,addMessageListener:Z,removeMessageListener:re,proxy:{send:S,request:P},_setDebugHooks:r}}function ir(t){return sr(t)}var He="[transport-id]";function ar(t,e){let{transportId:r}=e;return r==null?t:{[He]:r,data:t}}function or(t,e){let{transportId:r,filter:n}=e,s=n==null?void 0:n();if(r!=null&&s!=null)throw Error("Cannot use both `transportId` and `filter` at the same time");let i=t;if(r){if(t[He]!==r)return[!0];i=t.data}return s===!1?[!0]:[!1,i]}function lr(t,e={}){let{transportId:r,filter:n,remotePort:s}=e,i=t,u=s??t,d;return{send(m){u.postMessage(ar(m,{transportId:r}))},registerHandler(m){d=w=>{let C=w.data,[_,q]=or(C,{transportId:r,filter:()=>n==null?void 0:n(w)});_||m(q)},i.addEventListener("message",d)},unregisterHandler(){d&&i.removeEventListener("message",d)}}}function dr(t,e){return lr(t,e)}function $e(t){return ir({transport:dr(t,{transportId:"marimo-transport"}),maxRequestTime:2e4,_debugHooks:{onSend:e=>{f.debug("[rpc] Parent -> Worker",e)},onReceive:e=>{f.debug("[rpc] Worker -> Parent",e)}}})}Ne=V("Initializing..."),Wt=V(t=>{let e=t(jr),r=Object.values(e.cellRuntime);return r.some(n=>!nn(n.output))?!0:r.every(n=>n.status==="idle")});var Ve=ln(),Xe="marimo:file",Qe=new Tr(null);const ur={saveFile(t){Qe.set(Xe,t)},readFile(){return Qe.get(Xe)}};var cr={saveFile(t){ie.setCodeForHash((0,Ve.compressToEncodedURIComponent)(t))},readFile(){let t=ie.getCodeFromHash()||ie.getCodeFromSearchParam();return t?(0,Ve.decompressFromEncodedURIComponent)(t):null}};const hr={saveFile(t){},readFile(){let t=document.querySelector("marimo-code");return t?decodeURIComponent(t.textContent||"").trim():null}};var pr={saveFile(t){},readFile(){if(window.location.hostname!=="marimo.app")return null;let t=new URL("files/wasm-intro.py",document.baseURI);return fetch(t.toString()).then(e=>e.ok?e.text():null).catch(()=>null)}};const mr={saveFile(t){},readFile(){return se.get(Lr)??null}};var fr={saveFile(t){},readFile(){return["import marimo","app = marimo.App()","","@app.cell","def __():"," return","",'if __name__ == "__main__":'," app.run()"].join(`
2
2
  `)}},Ye=class{constructor(t){this.stores=t}insert(t,e){this.stores.splice(t,0,e)}saveFile(t){this.stores.forEach(e=>e.saveFile(t))}readFile(){for(let t of this.stores){let e=t.readFile();if(e)return e}return null}};let ce;ae=new Ye([mr,hr,cr]),ce=new Ye([ur,pr,fr]),Ie=class Dt{constructor(){a(this,"initialized",new bt);a(this,"sendRename",async({filename:e})=>(e===null||(ie.setFilename(e),await this.rpc.proxy.request.bridge({functionName:"rename_file",payload:e})),null));a(this,"sendSave",async e=>{if(!this.saveRpc)return f.warn("Save RPC not initialized"),null;await this.saveRpc.saveNotebook(e);let r=await this.readCode();return r.contents&&(ae.saveFile(r.contents),ce.saveFile(r.contents)),this.rpc.proxy.request.saveNotebook(e).catch(n=>{f.error(n)}),null});a(this,"sendCopy",async()=>{v()});a(this,"sendStdin",async e=>(await this.rpc.proxy.request.bridge({functionName:"put_input",payload:e.text}),null));a(this,"sendPdb",async()=>{v()});a(this,"sendRun",async e=>(await this.rpc.proxy.request.loadPackages(e.codes.join(`
3
3
  `)),await this.putControlRequest({type:"execute-cells",...e}),null));a(this,"sendRunScratchpad",async e=>(await this.rpc.proxy.request.loadPackages(e.code),await this.putControlRequest({type:"execute-scratchpad",...e}),null));a(this,"sendInterrupt",async()=>(this.interruptBuffer!==void 0&&(this.interruptBuffer[0]=2),null));a(this,"sendShutdown",async()=>(window.close(),null));a(this,"sendFormat",async e=>await this.rpc.proxy.request.bridge({functionName:"format",payload:e}));a(this,"sendDeleteCell",async e=>(await this.putControlRequest({type:"delete-cell",...e}),null));a(this,"sendInstallMissingPackages",async e=>(this.putControlRequest({type:"install-packages",...e}),null));a(this,"sendCodeCompletionRequest",async e=>(se.get(zr)||await this.rpc.proxy.request.bridge({functionName:"code_complete",payload:e}),null));a(this,"saveUserConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_user_config",payload:e}),Yr.post("/kernel/save_user_config",e,{baseUrl:"/"}).catch(r=>(f.error(r),null))));a(this,"saveAppConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_app_config",payload:e}),null));a(this,"saveCellConfig",async e=>(await this.putControlRequest({type:"update-cell-config",...e}),null));a(this,"sendRestart",async()=>{let e=await this.readCode();return e.contents&&(ae.saveFile(e.contents),ce.saveFile(e.contents)),dn(),null});a(this,"readCode",async()=>this.saveRpc?{contents:await this.saveRpc.readNotebook()}:(f.warn("Save RPC not initialized"),{contents:""}));a(this,"readSnippets",async()=>await this.rpc.proxy.request.bridge({functionName:"read_snippets",payload:void 0}));a(this,"openFile",async({path:e})=>{let r=un({code:null,baseUrl:window.location.origin});return window.open(r,"_blank"),null});a(this,"sendListFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"list_files",payload:e}));a(this,"sendSearchFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"search_files",payload:e}));a(this,"sendComponentValues",async e=>(await this.putControlRequest({type:"update-ui-element",...e,token:vt()}),null));a(this,"sendInstantiate",async e=>null);a(this,"sendFunctionRequest",async e=>(await this.putControlRequest({type:"invoke-function",...e}),null));a(this,"sendCreateFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"create_file_or_directory",payload:e}));a(this,"sendDeleteFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"delete_file_or_directory",payload:e}));a(this,"sendRenameFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"move_file_or_directory",payload:e}));a(this,"sendUpdateFile",async e=>await this.rpc.proxy.request.bridge({functionName:"update_file",payload:e}));a(this,"sendFileDetails",async e=>await this.rpc.proxy.request.bridge({functionName:"file_details",payload:e}));a(this,"exportAsHTML",async e=>await this.rpc.proxy.request.bridge({functionName:"export_html",payload:e}));a(this,"exportAsMarkdown",async e=>await this.rpc.proxy.request.bridge({functionName:"export_markdown",payload:e}));a(this,"previewDatasetColumn",async e=>(await this.putControlRequest({type:"preview-dataset-column",...e}),null));a(this,"previewSQLTable",async e=>(await this.putControlRequest({type:"preview-sql-table",...e}),null));a(this,"previewSQLTableList",async e=>(await this.putControlRequest({type:"list-sql-tables",...e}),null));a(this,"previewDataSourceConnection",async e=>(await this.putControlRequest({type:"list-data-source-connection",...e}),null));a(this,"validateSQL",async e=>(await this.putControlRequest({type:"validate-sql",...e}),null));a(this,"sendModelValue",async e=>(await this.putControlRequest({type:"model",...e}),null));a(this,"syncCellIds",()=>Promise.resolve(null));a(this,"sendDocumentTransaction",()=>Promise.resolve(null));a(this,"addPackage",async e=>this.rpc.proxy.request.addPackage(e));a(this,"removePackage",async e=>this.rpc.proxy.request.removePackage(e));a(this,"getPackageList",async()=>await this.rpc.proxy.request.listPackages());a(this,"getDependencyTree",async()=>({tree:{dependencies:[],name:"",tags:[],version:null}}));a(this,"listSecretKeys",async e=>(await this.putControlRequest({type:"list-secret-keys",...e}),null));a(this,"getUsageStats",v);a(this,"openTutorial",v);a(this,"getRecentFiles",v);a(this,"getWorkspaceFiles",v);a(this,"getRunningNotebooks",v);a(this,"shutdownSession",v);a(this,"exportAsIPYNB",v);a(this,"exportAsPDF",v);a(this,"autoExportAsHTML",v);a(this,"autoExportAsMarkdown",v);a(this,"autoExportAsIPYNB",v);a(this,"updateCellOutputs",v);a(this,"writeSecret",v);a(this,"invokeAiTool",v);a(this,"clearCache",v);a(this,"getCacheInfo",v);a(this,"listStorageEntries",v);a(this,"downloadStorage",v);Xr()&&(this.rpc=$e(new Worker(new URL(""+new URL("worker-BPV9SmHz.js",import.meta.url).href,""+import.meta.url),{type:"module",name:pt()})),this.rpc.addMessageListener("ready",()=>{this.startSession()}),this.rpc.addMessageListener("initialized",()=>{this.saveRpc=this.getSaveWorker(),this.setInterruptBuffer(),this.initialized.resolve()}),this.rpc.addMessageListener("initializingMessage",({message:e})=>{se.set(Ne,e)}),this.rpc.addMessageListener("initializedError",({error:e})=>{this.initialized.status==="resolved"&&(f.error(e),on({title:"Error initializing",description:e,variant:"danger"})),this.initialized.reject(Error(e))}),this.rpc.addMessageListener("kernelMessage",({message:e})=>{var r;(r=this.messageConsumer)==null||r.call(this,new MessageEvent("message",{data:e}))}))}static get INSTANCE(){let e="_marimo_private_PyodideBridge";return window[e]||(window[e]=new Dt),window[e]}getSaveWorker(){return ct()==="read"?(f.debug("Skipping SaveWorker in read-mode"),{readFile:v,readNotebook:v,saveNotebook:v}):$e(new Worker(new URL(""+new URL("save-worker-CtJsIYIM.js",import.meta.url).href,""+import.meta.url),{type:"module",name:pt()})).proxy.request}async startSession(){let e=await ae.readFile(),r=await ce.readFile(),n=se.get(Ir)??ie.getFilename(),s=se.get(Vr),i={},u=new URLSearchParams(window.location.search);for(let d of u.keys()){let m=u.getAll(d);i[d]=m.length===1?m[0]:m}await this.rpc.proxy.request.startSession({queryParameters:i,code:e||r||"",filename:n,userConfig:{...s,runtime:{...s.runtime,auto_instantiate:ct()==="read"?!0:s.runtime.auto_instantiate}}})}setInterruptBuffer(){crossOriginIsolated?(this.interruptBuffer=new Uint8Array(new SharedArrayBuffer(1)),this.rpc.proxy.request.setInterruptBuffer(this.interruptBuffer)):f.warn("Not running in a secure context; interrupts are not available.")}attachMessageConsumer(e){this.messageConsumer=e,this.rpc.proxy.send.consumerReady({})}async putControlRequest(e){await this.rpc.proxy.request.bridge({functionName:"put_control_request",payload:e})}},St=function(){return Se.withProducerCallback(t=>{Ie.INSTANCE.attachMessageConsumer(t)})},Ot=function(t=Ce()){let e=window.fetch;return window.fetch=async(r,n)=>{let s=r instanceof Request?r.url:r.toString();if(s.startsWith("data:"))return e(r,n);try{let i=he(s,t);if(i){let u=await(await e(i)).arrayBuffer();return new Response(u,{headers:{"Content-Type":gr(s)}})}return e(r,n)}catch(i){return f.error("Error parsing URL",i),e(r,n)}},()=>{window.fetch=e}};function gr(t){return t.endsWith(".csv")?"text/csv":t.endsWith(".json")?"application/json":t.endsWith(".txt")?"text/plain":"application/octet-stream"}Ft=function(t,e=Ce()){let r=t.http.bind(t),n=t.load.bind(t);return t.http=async s=>{let i=he(s,e);if(i)return await window.fetch(i).then(u=>u.text());try{return await r(s)}catch(u){if(s.startsWith("data:"))return await window.fetch(s).then(d=>d.text());throw u}},t.load=async s=>{let i=he(s,e);if(i)return await window.fetch(i).then(u=>u.text());try{return await n(s)}catch(u){if(s.startsWith("data:"))return await window.fetch(s).then(d=>d.text());throw u}},()=>{t.http=r,t.load=n}};function Ge(t){return t.startsWith(".")?t.slice(1):t}function yr(t,e=Ce()){let r=he(t,e);if(!r)return t;let n=cn(r);return URL.createObjectURL(n)}function he(t,e){let r=document.baseURI;r.startsWith("blob:")&&(r=r.replace("blob:",""));let n=new URL(t,r).pathname,s=Je(t),i=Je(n);return e[t]||e[Ge(t)]||e[n]||e[Ge(n)]||s&&e[s]||i&&e[i]}function Je(t){let e=t.indexOf("/@file/");return e===-1?null:t.slice(e)}function xe(t,e=[]){let r=[];if(t instanceof DataView)r.push(e);else if(Array.isArray(t))for(let[n,s]of t.entries())r.push(...xe(s,[...e,n]));else if(typeof t=="object"&&t)for(let[n,s]of Object.entries(t))r.push(...xe(s,[...e,n]));return r}function wr(t){let e=xe(t);if(e.length===0)return{state:t,buffers:[],bufferPaths:[]};let r=structuredClone(t),n=[],s=[];for(let i of e){let u=Or(t,i);if(u instanceof DataView){let d=yt(u);n.push(d),s.push(i),le(r,i,d)}}return{state:r,buffers:n,bufferPaths:s}}function Ke(t){let{state:e,bufferPaths:r,buffers:n}=t;if(!r||r.length===0)return e;n&&$r(n.length===r.length,"Buffers and buffer paths not the same length");let s=e;for(let[i,u]of r.entries()){let d=n==null?void 0:n[i];if(d==null){f.warn("[anywidget] Could not find buffer at path",u);continue}typeof d=="string"?le(s,u,wt(d)):le(s,u,d)}return s}const Ze={invoke:async()=>{let t="anywidget.invoke not supported in marimo. Please file an issue at https://github.com/marimo-team/marimo/issues";throw f.warn(t),Error(t)}};function br(t){if(typeof AbortSignal.any=="function")return AbortSignal.any(t);let e=new AbortController;for(let r of t){if(r.aborted)return e.abort(r.reason),e.signal;r.addEventListener("abort",()=>e.abort(r.reason),{once:!0})}return e.signal}var vr=(nt=class{constructor(){F(this,pe);F(this,X,new Map)}getModule(t,e){let r=l(this,X).get(e);if(r)return r;let n=$(this,pe,Bt).call(this,t).catch(s=>{throw l(this,X).delete(e),s});return l(this,X).set(e,n),n}invalidate(t){f.debug(`[WidgetDefRegistry] Invalidating module cache for hash=${t}`),l(this,X).delete(t)}},X=new WeakMap,pe=new WeakSet,Bt=async function(t){let e=Qr(t).toString();return ft()&&(e=yr(e)),an(()=>import(e).then(async r=>(await r.__tla,r)),[],import.meta.url)},nt),xr=(st=class{constructor(){F(this,T);F(this,Q);F(this,I)}async bind(t,e){var i,u;if(l(this,I)&&l(this,Q)===t)return l(this,I);l(this,I)&&l(this,Q)!==t&&(f.debug("[WidgetBinding] Hot-reload detected, aborting previous binding"),(i=l(this,T))==null||i.abort(),N(this,T,void 0),N(this,I,void 0)),N(this,Q,t),N(this,T,new AbortController);let r=l(this,T).signal,n=typeof t=="function"?await t():t,s=await((u=n.initialize)==null?void 0:u.call(n,{model:e,experimental:Ze}));return s&&r.addEventListener("abort",s),N(this,I,async(d,m)=>{var C;let w=await((C=n.render)==null?void 0:C.call(n,{model:e,el:d,experimental:Ze}));w&&br([m,r]).addEventListener("abort",()=>{let _=m.aborted?"view unmount":"binding destroyed";f.debug(`[WidgetBinding] Render cleanup triggered (reason: ${_})`),w()})}),l(this,I)}destroy(){var t;f.debug("[WidgetBinding] Destroying binding, aborting initialize lifecycle"),(t=l(this,T))==null||t.abort(),N(this,T,void 0),N(this,Q,void 0),N(this,I,void 0)}},T=new WeakMap,Q=new WeakMap,I=new WeakMap,st),_r=(it=class{constructor(){F(this,W,new Map)}getOrCreate(t){let e=l(this,W).get(t);return e||(e=new xr,l(this,W).set(t,e)),e}destroy(t){let e=l(this,W).get(t);e&&(f.debug(`[BindingManager] Destroying binding for model=${t}`),e.destroy(),l(this,W).delete(t))}has(t){return l(this,W).has(t)}},W=new WeakMap,it);zt=new vr,ke=new _r;var Er=(at=class{constructor(t=1e4){F(this,J);F(this,z,new Map);F(this,te);N(this,te,t)}get(t){let e=$(this,J,be).call(this,t);return e.deferred.status==="pending"&&setTimeout(()=>{e.deferred.status==="pending"&&(e.deferred.reject(Error(`Model not found for key: ${t}`)),l(this,z).delete(t))},l(this,te)),e.deferred.promise}create(t,e){let r=$(this,J,be).call(this,t);r.deferred.resolve(e(r.controller.signal))}set(t,e){$(this,J,be).call(this,t).deferred.resolve(e)}getSync(t){let e=l(this,z).get(t);if(e&&e.deferred.status==="resolved")return e.deferred.value}delete(t){var e;f.debug(`[ModelManager] Deleting model=${t}, aborting lifecycle signal`),(e=l(this,z).get(t))==null||e.controller.abort(),l(this,z).delete(t)}},z=new WeakMap,te=new WeakMap,J=new WeakSet,be=function(t){let e=l(this,z).get(t);return e||(e={deferred:new bt,controller:new AbortController},l(this,z).set(t,e)),e},at),et=Symbol("marimo");function _e(t){return t[et]}we=new Er;var Cr=(ot=et,Y=class{constructor(e,r,n){F(this,B);F(this,me,"change");F(this,O);F(this,D);F(this,K);F(this,k,{});a(this,ot,{updateAndEmitDiffs:e=>$(this,B,$t).call(this,e),emitCustomMessage:(e,r)=>$(this,B,Vt).call(this,e,r)});a(this,"widget_manager",{async get_model(e){let r=await Y._modelManager.get(e);if(!r)throw Error(`Model not found with id: ${e}. This is likely because the model was not registered.`);return r}});F(this,fe,Br(()=>{let e=l(this,k)[l(this,me)];if(e)for(let r of e)try{r()}catch(n){f.error("Error emitting event",n)}},0));N(this,D,e),N(this,K,r),N(this,O,new Map),n&&n.addEventListener("abort",()=>{f.debug("[Model] Signal aborted, clearing all listeners"),N(this,k,{})})}off(e,r){var n;if(!e){N(this,k,{});return}if(!r){l(this,k)[e]=new Set;return}(n=l(this,k)[e])==null||n.delete(r)}send(e,r,n){let s=(n??[]).map(i=>i instanceof ArrayBuffer?new DataView(i):new DataView(i.buffer,i.byteOffset,i.byteLength));return l(this,K).sendCustomMessage(e,s).then(()=>r==null?void 0:r())}get(e){return l(this,D)[e]}set(e,r){N(this,D,{...l(this,D),[e]:r}),l(this,O).set(e,r),$(this,B,Ht).call(this,`change:${e}`,r),l(this,fe).call(this)}save_changes(){if(l(this,O).size===0)return;let e=Object.fromEntries(l(this,O).entries());l(this,O).clear(),l(this,K).sendUpdate(e)}on(e,r){l(this,k)[e]||(l(this,k)[e]=new Set),l(this,k)[e].add(r)}},me=new WeakMap,O=new WeakMap,D=new WeakMap,K=new WeakMap,k=new WeakMap,B=new WeakSet,Ht=function(e,r){if(!l(this,k)[e])return;let n=l(this,k)[e];for(let s of n)try{s(r)}catch(i){f.error("Error emitting event",i)}},$t=function(e){e!=null&&Object.keys(e).forEach(r=>{let n=r;l(this,D)[n]!==e[n]&&this.set(n,e[n])})},Vt=function(e,r=[]){let n=l(this,k)["msg:custom"];if(n)for(let s of n)try{s(e.content,r)}catch(i){f.error("Error emitting event",i)}},fe=new WeakMap,a(Y,"_modelManager",we),Y);qt=async function(t,e){let r=e.model_id,n=e.message,s=("buffers"in n?n.buffers:[]).map(wt);switch(n.method){case"open":{let{state:i,buffer_paths:u=[]}=n,d=Ke({state:i,bufferPaths:u,buffers:s}),m=t.getSync(r);if(m){_e(m).updateAndEmitDiffs(d);return}t.create(r,w=>new Cr(d,ft()?{sendUpdate:async()=>{},sendCustomMessage:async()=>{}}:{async sendUpdate(C){if(w.aborted){f.debug(`[Model] sendUpdate suppressed for model=${r} (signal aborted)`);return}let{state:_,buffers:q,bufferPaths:M}=wr(C);await Re().sendModelValue({modelId:r,message:{method:"update",state:_,bufferPaths:M},buffers:q})},async sendCustomMessage(C,_){if(w.aborted){f.debug(`[Model] sendCustomMessage suppressed for model=${r} (signal aborted)`);return}await Re().sendModelValue({modelId:r,message:{method:"custom",content:C},buffers:_.map(yt)})}},w));return}case"custom":_e(await t.get(r)).emitCustomMessage({method:"custom",content:n.content},s);return;case"close":ke.destroy(r),t.delete(r);return;case"update":{let{state:i,buffer_paths:u=[]}=n,d=Ke({state:i,bufferPaths:u,buffers:s});_e(await t.get(r)).updateAndEmitDiffs(d);return}default:Dr(n)}},Pr(we,"MODEL_MANAGER"),Ae=class Xt{static get INSTANCE(){let e="_marimo_private_UIElementRegistry";return window[e]||(window[e]=new Xt),window[e]}constructor(){this.entries=new Map}has(e){return this.entries.has(e)}set(e,r){this.entries.has(e)&&f.debug("UIElementRegistry overwriting entry for objectId.",e),this.entries.set(e,{objectId:e,value:r,elements:new Set})}registerInstance(e,r){let n=this.entries.get(e);n===void 0?this.entries.set(e,{objectId:e,value:Ur(r,this),elements:new Set([r])}):n.elements.add(r)}removeInstance(e,r){let n=this.entries.get(e);n!=null&&n.elements.has(r)&&n.elements.delete(r)}removeElementsByCell(e){[...this.entries.keys()].filter(r=>r.startsWith(`${e}-`)).forEach(r=>{this.entries.delete(r)})}lookupValue(e){let r=this.entries.get(e);return r===void 0?void 0:r.value}broadcastMessage(e,r,n){let s=this.entries.get(e);s===void 0?f.warn("UIElementRegistry missing entry",e):s.elements.forEach(i=>{i.dispatchEvent(mn.create({bubbles:!1,composed:!0,detail:{objectId:e,message:r,buffers:n}}))})}broadcastValueUpdate(e,r,n){let s=this.entries.get(r);s===void 0?f.warn("UIElementRegistry missing entry",r):(s.value=n,s.elements.forEach(i=>{i!==e&&i.dispatchEvent(hn.create({bubbles:!1,composed:!0,detail:{value:n,element:i}}))}),document.dispatchEvent(pn.create({bubbles:!0,composed:!0,detail:{objectId:r}})))}},At=Ae.INSTANCE,kt=new sn("function-call-result",async(t,e)=>{await Re().sendFunctionRequest({functionCallId:t,...e})}),jt="68px";var Rr="288px";let tt;Tt=t=>t?/^\d+$/.test(t)?`${t}px`:t:Rr,Nt=Ar({isOpen:!0},(t,e)=>{if(!e)return t;switch(e.type){case"toggle":return{...t,isOpen:e.isOpen??t.isOpen};case"setWidth":return{...t,width:e.width};default:return t}}),je=V(null),It=V(null),qe=V(!1),tt=V(!1),Me=V(!1);var Sr=ht();Pe=t=>{let e=(0,Sr.c)(8),{onResize:r,startingWidth:n,minWidth:s,maxWidth:i}=t,u=(0,R.useRef)(null),d=(0,R.useRef)(null),m=(0,R.useRef)(null),w,C;e[0]!==i||e[1]!==s||e[2]!==r?(w=()=>{let P=u.current,j=d.current,A=m.current;if(!P||!j&&!A)return;let S=Number.parseInt(window.getComputedStyle(P).width,10),L=0,H=!1,Z=null,re=c=>{if(!P||!H||!Z)return;let b=c.clientX-L;L=c.clientX,S=Z==="left"?S-b:S+b,s&&(S=Math.max(s,S)),i&&(S=Math.min(i,S)),P.style.width=`${S}px`},ne=()=>{H&&(r==null||r(S),H=!1,Z=null),document.removeEventListener("mousemove",re),document.removeEventListener("mouseup",ne)},o=(c,b)=>{c.preventDefault(),H=!0,Z=b,L=c.clientX,document.addEventListener("mousemove",re),document.addEventListener("mouseup",ne)},p=c=>o(c,"left"),x=c=>o(c,"right");return j&&j.addEventListener("mousedown",p),A&&A.addEventListener("mousedown",x),()=>{j&&j.removeEventListener("mousedown",p),A&&A.removeEventListener("mousedown",x),document.removeEventListener("mousemove",re),document.removeEventListener("mouseup",ne)}},C=[s,i,r],e[0]=i,e[1]=s,e[2]=r,e[3]=w,e[4]=C):(w=e[3],C=e[4]),(0,R.useEffect)(w,C);let _;e[5]===Symbol.for("react.memo_cache_sentinel")?(_={left:d,right:m},e[5]=_):_=e[5];let q=n==="contentWidth"?"var(--content-width-medium)":`${n}px`,M;return e[6]===q?M=e[7]:(M={resizableDivRef:u,handleRefs:_,style:{width:q}},e[6]=q,e[7]=M),M},Le=function(t){t||ut(()=>{window.dispatchEvent(new Event("resize"))})};var rt=ht(),h=dt(Gr(),1);Ut=()=>{let t=(0,rt.c)(16),[e,r]=ge(je),[n,s]=ge(qe),[i,u]=ge(tt),[d,m]=ge(Me),w;t[0]!==s||t[1]!==r?(w=()=>{r(null),s(!1)},t[0]=s,t[1]=r,t[2]=w):w=t[2];let C=w;if(ye(oe.CONTEXT_AWARE_PANEL).length===0||!e||!n)return null;let _;t[3]!==d||t[4]!==i||t[5]!==m||t[6]!==u?(_=()=>(0,h.jsxs)("div",{className:"flex flex-row items-center gap-3",children:[(0,h.jsx)(xt,{content:i?"Unpin panel":"Pin panel",children:(0,h.jsx)(_t,{size:"xs",onPressedChange:()=>u(!i),pressed:i,"aria-label":i?"Unpin panel":"Pin panel",children:i?(0,h.jsx)(E,{className:"w-4 h-4"}):(0,h.jsx)(Zr,{className:"w-4 h-4"})})}),(0,h.jsx)(xt,{content:d?(0,h.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,h.jsx)("span",{children:"Follow focused table"}),(0,h.jsx)("span",{className:"text-xs text-muted-foreground w-64",children:"The panel updates as cells that output tables are focused. Click to fix to the current cell."})]}):(0,h.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,h.jsx)("span",{children:"Focus on current table"}),(0,h.jsx)("span",{className:"text-xs text-muted-foreground w-64",children:"The panel is focused on the current table. Click to update based on which cell is focused."})]}),children:(0,h.jsx)(_t,{size:"xs",onPressedChange:()=>m(!d),pressed:d,"aria-label":d?"Follow focused cell":"Fixed",children:(0,h.jsx)(y,{className:Kr("w-4 h-4",d&&"text-primary")})})})]}),t[3]=d,t[4]=i,t[5]=m,t[6]=u,t[7]=_):_=t[7];let q=_,M;t[8]!==C||t[9]!==q?(M=()=>(0,h.jsxs)("div",{className:"mt-2 pb-7 mb-4 h-full overflow-auto",children:[(0,h.jsxs)("div",{className:"flex flex-row justify-between items-center mx-2",children:[q(),(0,h.jsx)(Jr,{variant:"linkDestructive",size:"icon",onClick:C,"aria-label":"Close selection panel",children:(0,h.jsx)(rn,{className:"w-4 h-4"})})]}),(0,h.jsx)(mt,{children:(0,h.jsx)(Fe,{name:oe.CONTEXT_AWARE_PANEL})})]}),t[8]=C,t[9]=q,t[10]=M):M=t[10];let P=M;if(!i){let S;return t[11]===P?S=t[12]:(S=(0,h.jsx)(Fr,{children:P()}),t[11]=P,t[12]=S),S}let j;t[13]===Symbol.for("react.memo_cache_sentinel")?(j=(0,h.jsx)(fn,{onDragging:Le,className:"resize-handle border-border z-20 print:hidden border-l"}),t[13]=j):j=t[13];let A;return t[14]===P?A=t[15]:(A=(0,h.jsxs)(h.Fragment,{children:[j,(0,h.jsx)(gn,{defaultSize:20,minSize:15,maxSize:80,children:P()})]}),t[14]=P,t[15]=A),A},Lt=t=>{let e=(0,rt.c)(2),{children:r}=t,n;return e[0]===r?n=e[1]:(n=(0,h.jsx)(mt,{children:(0,h.jsx)(Qt,{name:oe.CONTEXT_AWARE_PANEL,children:r})}),e[0]=r,e[1]=n),n};var Fr=({children:t})=>{let{resizableDivRef:e,handleRefs:r,style:n}=Pe({startingWidth:400,minWidth:300,maxWidth:1500,onResize:()=>{ut(()=>{window.dispatchEvent(new Event("resize"))})}});return(0,h.jsxs)("div",{className:"absolute z-40 right-0 h-full bg-background flex flex-row",children:[(0,h.jsx)("div",{ref:r.left,className:"w-1 h-full cursor-col-resize border-l"}),(0,h.jsx)("div",{ref:e,style:n,children:t})]})}});export{Et as A,ae as C,oe as D,Se as E,le as F,Ct as M,Fe as N,Rt as O,ye as P,St as S,Ne as T,ke as _,yn as __tla,qe as a,Ft as b,Me as c,Nt as d,kt as f,qt as g,we as h,Pe as i,Mt as j,Pt as k,jt as l,At as m,Lt as n,je as o,Ae as p,Le as r,It as s,Ut as t,Tt as u,zt as v,Wt as w,Ie as x,Ot as y};