@marimo-team/frontend 0.20.5-dev64 → 0.20.5-dev65
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{add-connection-dialog-DS033hDE.js → add-connection-dialog-DVxfAULb.js} +41 -41
- package/dist/assets/{command-palette-BqxnATcC.js → command-palette-CnmuHC-K.js} +1 -1
- package/dist/assets/{edit-page-DhaaVp0t.js → edit-page-dgMbnPkJ.js} +3 -3
- package/dist/assets/{file-explorer-panel-oUugl36h.js → file-explorer-panel-CRxTuNmM.js} +1 -1
- package/dist/assets/{index-Dm1Npvfm.js → index-B6j3GjGF.js} +2 -2
- package/dist/assets/{session-panel-CXK0e5N_.js → session-panel-KnTyM1M-.js} +1 -1
- package/dist/assets/{useNotebookActions-Cab6kvWf.js → useNotebookActions-DvWNs3kA.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/src/components/editor/connections/add-connection-dialog.tsx +27 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as re}from"./chunk-LvLJmgfZ.js";import{d as oe,l as Le,p as ce,u as Y}from"./useEvent-O0nX5vok.js";import{t as Be}from"./react-Bj1aDYRI.js";import{A as Me,An as Ve,Ar as me,Bt as Ee,Cr as Pe,Dr as ie,Er as de,Kn as Oe,M as Ae,Mn as Re,Nt as Ue,Sr as ze,T as Ge,Tt as We,Yn as Ke,a as Ye,ar as se,br as he,dn as He,f as Je,gr as Xe,ir as Qe,kn as Ze,kr as ea,qn as aa,tr as ta,ui as sa,xr as ue,yr as xe,zt as la}from"./cells-5wegzPD4.js";import"./react-dom-CSu739Rf.js";import{t as pe}from"./compiler-runtime-B3qBwwSJ.js";import{n as na}from"./assertNever-CTRGz-ul.js";import"./tooltip-WkrsrB6k.js";import{t as H}from"./sortBy-CbaC49oe.js";import{t as fe}from"./add-connection-dialog-DS033hDE.js";import{o as ra}from"./utils-HIU-NsEv.js";import{t as oa}from"./ErrorBoundary-H5EQrcAX.js";import{t as ca}from"./jsx-runtime-icT_Ltz2.js";import{r as ma,t as ee}from"./button-BZAv3veu.js";import{t as O}from"./cn-BoaCR37F.js";import"./dist-B_cxg-E4.js";import{D as le,F as ia,I as da,L as ha,P as be,R as ua}from"./JsonOutput-BzXkaUJB.js";import"./cjs-BU2qXMKx.js";import"./main-DrBRErTM.js";import"./useNonce-BtW-rR_1.js";import{r as xa}from"./requests-Bgjtqo_1.js";import{t as pa}from"./createLucideIcon-Cm-Z7dYr.js";import{t as fa}from"./x-BI1M8X_v.js";import"./download-B8XlLSji.js";import"./markdown-renderer-D0ROu8n3.js";import{t as ge}from"./plus-dVmh0yTy.js";import{a as ba}from"./input-C5eatTLl.js";import{n as ga,o as ja}from"./column-preview-46vONjMD.js";import{t as Na}from"./workflow-BmeqNuSH.js";import"./dist-BNC_tnlW.js";import"./dist-CXLJUPFl.js";import"./dist-CQqv2gQL.js";import"./dist-8UD0A5sU.js";import"./dist-apDpadc4.js";import"./session-CXChHxAw.js";import"./Combination-CBJmtdux.js";import{t as ne}from"./tooltip-CNmaER6z.js";import"./purify.es-BBn8CPhf.js";import"./dates-BcvJrESI.js";import{t as ya}from"./context-CRmPPhx9.js";import"./popover-JNsSzROl.js";import"./vega-loader.browser-BJ9oKrvH.js";import"./defaultLocale-CuYNS33t.js";import"./defaultLocale-CGfP-Ye3.js";import{t as va}from"./copy-icon-Cu7az85f.js";import{n as wa}from"./multi-map-x_GQgXMS.js";import{t as je}from"./cell-link-C9qZWgbj.js";import{n as Ne}from"./useAsyncData-a8f2Q_nk.js";import{a as Sa,o as ae,t as _a,u as Ca}from"./command-B7XhH0hz.js";import"./chunk-5FQGJX7Z-DEi7JZeU.js";import"./katex-0Z75JF53.js";import{r as ka}from"./html-to-image-BYwkVvZl.js";import{o as $a}from"./focus-BjrLbkmu.js";import{a as Fa,i as Ta,n as Ia,o as ye,r as qa,t as Da}from"./table-CKtrITeZ.js";import{n as La}from"./icons-T5yQRjuT.js";import{t as ve}from"./useAddCell-CKoCjXpL.js";import{a as we,i as te,o as Se,r as _e,s as Ce,t as Ba,u as Ma}from"./components-CMr3IGTz.js";import{t as Va}from"./empty-state-qEnkddw9.js";import{n as Ea,t as Pa}from"./common-NG61OZ4y.js";import{a as Oa,i as Aa,n as ke,r as $e,t as Fe}from"./components-BtpAwxaG.js";var Ra=pa("square-equal",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M7 10h10",key:"1101jm"}],["path",{d:"M7 14h10",key:"1mhdw3"}]]),U=pe(),C=re(Be(),1),t=re(ca(),1),_={engineEmpty:"pl-3",engine:"pl-3 pr-2",database:"pl-4",schemaEmpty:"pl-8",schema:"pl-7",tableLoading:"pl-11",tableSchemaless:"pl-8",tableWithSchema:"pl-12",columnLocal:"pl-5",columnSql:"pl-13",columnPreview:"pl-10"},Ua=ce(a=>{let e=a(ue),s=a(Re),l=a(Ye);return H(e,r=>{if(!r.variable_name)return-1;let c=Object.values(s).find(j=>j.name===r.variable_name);if(!c)return 0;let n=l.inOrderIds.indexOf(c.declaredBy[0]);return n===-1?0:n})});const Te=ce(a=>{let e=new Map(a(Xe));for(let s of me){let l=e.get(s);l&&(l.databases.length===0&&e.delete(s),l.databases.length===1&&l.databases[0].name==="memory"&&l.databases[0].schemas.length===0&&e.delete(s))}return H([...e.values()],s=>me.has(s.name)?1:0)}),za=()=>{let a=(0,U.c)(32),[e,s]=C.useState(""),l=oe(he),r=Y(Ua),c=Y(Te);if(r.length===0&&c.length===0){let p;return a[0]===Symbol.for("react.memo_cache_sentinel")?(p=(0,t.jsx)(Va,{title:"No tables found",description:"Any datasets/dataframes in the global scope will be shown here.",action:(0,t.jsx)(fe,{children:(0,t.jsxs)(ee,{variant:"outline",size:"sm",children:["Add database or catalog",(0,t.jsx)(ge,{className:"h-4 w-4 ml-2"})]})}),icon:(0,t.jsx)(se,{})}),a[0]=p):p=a[0],p}let n=!!e.trim(),j;a[1]===l?j=a[2]:(j=p=>{l(p.length>0),s(p)},a[1]=l,a[2]=j);let b;a[3]!==e||a[4]!==j?(b=(0,t.jsx)(Sa,{placeholder:"Search tables...",className:"h-6 m-1",value:e,onValueChange:j,rootClassName:"flex-1 border-r border-b-0"}),a[3]=e,a[4]=j,a[5]=b):b=a[5];let g;a[6]===n?g=a[7]:(g=n&&(0,t.jsx)("button",{type:"button",className:"float-right border-b px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",onClick:()=>s(""),children:(0,t.jsx)(fa,{className:"h-4 w-4"})}),a[6]=n,a[7]=g);let u;a[8]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)(fe,{children:(0,t.jsx)(ee,{variant:"ghost",size:"sm",className:"px-2 rounded-none focus-visible:outline-hidden",children:(0,t.jsx)(ge,{className:"h-4 w-4"})})}),a[8]=u):u=a[8];let m;a[9]!==b||a[10]!==g?(m=(0,t.jsxs)("div",{className:"flex items-center w-full border-b",children:[b,g,u]}),a[9]=b,a[10]=g,a[11]=m):m=a[11];let o;if(a[12]!==c||a[13]!==n||a[14]!==e){let p;a[16]!==n||a[17]!==e?(p=f=>(0,t.jsx)(Ga,{connection:f,hasChildren:f.databases.length>0,children:f.databases.map(N=>(0,t.jsx)(Wa,{engineName:f.name,database:N,hasSearch:n,children:(0,t.jsx)(Ka,{schemas:N.schemas,defaultSchema:f.default_schema,defaultDatabase:f.default_database,engineName:f.name,databaseName:N.name,hasSearch:n,searchValue:e,dialect:f.dialect})},N.name))},f.name),a[16]=n,a[17]=e,a[18]=p):p=a[18],o=c.map(p),a[12]=c,a[13]=n,a[14]=e,a[15]=o}else o=a[15];let h;a[19]!==c.length||a[20]!==r.length?(h=c.length>0&&r.length>0&&(0,t.jsxs)(_e,{className:_.engine,children:[(0,t.jsx)(La,{className:"h-4 w-4 text-muted-foreground"}),(0,t.jsx)("span",{className:"text-xs",children:"Python"})]}),a[19]=c.length,a[20]=r.length,a[21]=h):h=a[21];let x;a[22]!==e||a[23]!==r?(x=r.length>0&&(0,t.jsx)(Ie,{tables:r,searchValue:e}),a[22]=e,a[23]=r,a[24]=x):x=a[24];let d;a[25]!==o||a[26]!==h||a[27]!==x?(d=(0,t.jsxs)(Ca,{className:"flex flex-col",children:[o,h,x]}),a[25]=o,a[26]=h,a[27]=x,a[28]=d):d=a[28];let i;return a[29]!==m||a[30]!==d?(i=(0,t.jsxs)(_a,{className:"border-b bg-background rounded-none h-full pb-10 overflow-auto outline-hidden",shouldFilter:!1,children:[m,d]}),a[29]=m,a[30]=d,a[31]=i):i=a[31],i};var Ga=a=>{let e=(0,U.c)(25),{connection:s,children:l,hasChildren:r}=a,c=s.name===ea,n=c?"In-Memory":s.name,{previewDataSourceConnection:j}=xa(),b;e[0]!==s.name||e[1]!==j?(b=async()=>{await j({engine:s.name})},e[0]=s.name,e[1]=j,e[2]=b):b=e[2];let g=b,u;e[3]===s.dialect?u=e[4]:(u=(0,t.jsx)(We,{className:"h-4 w-4 text-muted-foreground",name:s.dialect}),e[3]=s.dialect,e[4]=u);let m;e[5]===s.dialect?m=e[6]:(m=Oe(s.dialect),e[5]=s.dialect,e[6]=m);let o;e[7]===m?o=e[8]:(o=(0,t.jsx)("span",{className:"text-xs",children:m}),e[7]=m,e[8]=o);let h=n,x;e[9]===h?x=e[10]:(x=(0,t.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",(0,t.jsx)(Oa,{variableName:h}),")"]}),e[9]=h,e[10]=x);let d;e[11]!==g||e[12]!==c?(d=!c&&(0,t.jsx)(Ma,{onClick:g,tooltip:"Refresh connection",className:"ml-auto h-4 p-0",iconClassName:"h-3.5 w-3.5"}),e[11]=g,e[12]=c,e[13]=d):d=e[13];let i;e[14]!==u||e[15]!==o||e[16]!==x||e[17]!==d?(i=(0,t.jsxs)(_e,{className:_.engine,children:[u,o,x,d]}),e[14]=u,e[15]=o,e[16]=x,e[17]=d,e[18]=i):i=e[18];let p;e[19]!==l||e[20]!==r?(p=r?l:(0,t.jsx)(te,{content:"No databases available",className:_.engineEmpty}),e[19]=l,e[20]=r,e[21]=p):p=e[21];let f;return e[22]!==i||e[23]!==p?(f=(0,t.jsxs)(t.Fragment,{children:[i,p]}),e[22]=i,e[23]=p,e[24]=f):f=e[24],f},Wa=a=>{let e=(0,U.c)(26),{hasSearch:s,engineName:l,database:r,children:c}=a,[n,j]=C.useState(!1),[b,g]=C.useState(!1),[u,m]=C.useState(s);u!==s&&(m(s),j(s));let o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o=O("text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",_.database),e[0]=o):o=e[0];let h;e[1]!==n||e[2]!==b?(h=()=>{j(!n),g(!b)},e[1]=n,e[2]=b,e[3]=h):h=e[3];let x=`${l}:${r.name}`,d;e[4]===n?d=e[5]:(d=(0,t.jsx)(Ce,{isExpanded:n}),e[4]=n,e[5]=d);let i=b&&n?"text-foreground":"text-muted-foreground",p;e[6]===i?p=e[7]:(p=O("h-4 w-4",i),e[6]=i,e[7]=p);let f;e[8]===p?f=e[9]:(f=(0,t.jsx)(se,{className:p}),e[8]=p,e[9]=f);let N=b&&n&&"font-semibold",y;e[10]===N?y=e[11]:(y=O(N),e[10]=N,e[11]=y);let v;e[12]===r.name?v=e[13]:(v=r.name===""?(0,t.jsx)("i",{children:"Not connected"}):r.name,e[12]=r.name,e[13]=v);let w;e[14]!==v||e[15]!==y?(w=(0,t.jsx)("span",{className:y,children:v}),e[14]=v,e[15]=y,e[16]=w):w=e[16];let S;e[17]!==w||e[18]!==h||e[19]!==x||e[20]!==d||e[21]!==f?(S=(0,t.jsxs)(ae,{className:o,onSelect:h,value:x,children:[d,f,w]}),e[17]=w,e[18]=h,e[19]=x,e[20]=d,e[21]=f,e[22]=S):S=e[22];let q=n&&c,k;return e[23]!==S||e[24]!==q?(k=(0,t.jsxs)(t.Fragment,{children:[S,q]}),e[23]=S,e[24]=q,e[25]=k):k=e[25],k},Ka=a=>{let e=(0,U.c)(22),{schemas:s,defaultSchema:l,defaultDatabase:r,dialect:c,engineName:n,databaseName:j,hasSearch:b,searchValue:g}=a;if(s.length===0){let o;return e[0]===Symbol.for("react.memo_cache_sentinel")?(o=(0,t.jsx)(te,{content:"No schemas available",className:_.schemaEmpty}),e[0]=o):o=e[0],o}let u;if(e[1]!==j||e[2]!==r||e[3]!==l||e[4]!==c||e[5]!==n||e[6]!==b||e[7]!==s||e[8]!==g){let o;e[10]===g?o=e[11]:(o=d=>g?d.tables.some(i=>i.name.toLowerCase().includes(g.toLowerCase())):!0,e[10]=g,e[11]=o);let h=s.filter(o),x;e[12]!==j||e[13]!==r||e[14]!==l||e[15]!==c||e[16]!==n||e[17]!==b||e[18]!==g?(x=d=>(0,t.jsx)(Ya,{databaseName:j,schema:d,hasSearch:b,children:(0,t.jsx)(Ie,{tables:d.tables,searchValue:g,sqlTableContext:{engine:n,database:j,schema:d.name,defaultSchema:l,defaultDatabase:r,dialect:c}})},d.name),e[12]=j,e[13]=r,e[14]=l,e[15]=c,e[16]=n,e[17]=b,e[18]=g,e[19]=x):x=e[19],u=h.map(x),e[1]=j,e[2]=r,e[3]=l,e[4]=c,e[5]=n,e[6]=b,e[7]=s,e[8]=g,e[9]=u}else u=e[9];let m;return e[20]===u?m=e[21]:(m=(0,t.jsx)(t.Fragment,{children:u}),e[20]=u,e[21]=m),m},Ya=a=>{let e=(0,U.c)(24),{databaseName:s,schema:l,children:r,hasSearch:c}=a,[n,j]=C.useState(c),[b,g]=C.useState(!1),u=`${s}:${l.name}`;if(de(l.name))return r;let m;e[0]===Symbol.for("react.memo_cache_sentinel")?(m=O("text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",_.schema),e[0]=m):m=e[0];let o;e[1]!==n||e[2]!==b?(o=()=>{j(!n),g(!b)},e[1]=n,e[2]=b,e[3]=o):o=e[3];let h;e[4]===n?h=e[5]:(h=(0,t.jsx)(Ce,{isExpanded:n}),e[4]=n,e[5]=h);let x=b&&n&&"text-foreground",d;e[6]===x?d=e[7]:(d=O("h-4 w-4 text-muted-foreground",x),e[6]=x,e[7]=d);let i;e[8]===d?i=e[9]:(i=(0,t.jsx)(ta,{className:d}),e[8]=d,e[9]=i);let p=b&&n&&"font-semibold",f;e[10]===p?f=e[11]:(f=O(p),e[10]=p,e[11]=f);let N;e[12]!==l.name||e[13]!==f?(N=(0,t.jsx)("span",{className:f,children:l.name}),e[12]=l.name,e[13]=f,e[14]=N):N=e[14];let y;e[15]!==o||e[16]!==h||e[17]!==i||e[18]!==N||e[19]!==u?(y=(0,t.jsxs)(ae,{className:m,onSelect:o,value:u,children:[h,i,N]}),e[15]=o,e[16]=h,e[17]=i,e[18]=N,e[19]=u,e[20]=y):y=e[20];let v=n&&r,w;return e[21]!==y||e[22]!==v?(w=(0,t.jsxs)(t.Fragment,{children:[y,v]}),e[21]=y,e[22]=v,e[23]=w):w=e[23],w},Ie=a=>{let e=(0,U.c)(24),{tables:s,sqlTableContext:l,searchValue:r}=a,{addTableList:c}=xe(),[n,j]=C.useState(!1),[b,g]=C.useState(!1),u;e[0]!==c||e[1]!==l||e[2]!==s.length||e[3]!==n?(u=async()=>{if(s.length===0&&l&&!n){j(!0),g(!0);let{engine:i,database:p,schema:f}=l,N=await Ee.request({engine:i,database:p,schema:f});if(!(N!=null&&N.tables))throw g(!1),Error("No tables available");c({tables:N.tables,sqlTableContext:l}),g(!1)}},e[0]=c,e[1]=l,e[2]=s.length,e[3]=n,e[4]=u):u=e[4];let m;e[5]!==l||e[6]!==s.length||e[7]!==n?(m=[s.length,l,n],e[5]=l,e[6]=s.length,e[7]=n,e[8]=m):m=e[8];let{isPending:o,error:h}=Ne(u,m);if(o||b){let i;return e[9]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(Se,{message:"Loading tables...",className:_.tableLoading}),e[9]=i):i=e[9],i}if(h){let i;return e[10]===h?i=e[11]:(i=(0,t.jsx)(we,{error:h,className:_.tableLoading}),e[10]=h,e[11]=i),i}if(s.length===0){let i;return e[12]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(te,{content:"No tables found",className:_.tableLoading}),e[12]=i):i=e[12],i}let x;if(e[13]!==r||e[14]!==l||e[15]!==s){let i;e[17]===r?i=e[18]:(i=N=>r?N.name.toLowerCase().includes(r.toLowerCase()):!0,e[17]=r,e[18]=i);let p=s.filter(i),f;e[19]!==r||e[20]!==l?(f=N=>(0,t.jsx)(Ha,{table:N,sqlTableContext:l,isSearching:!!r},N.name),e[19]=r,e[20]=l,e[21]=f):f=e[21],x=p.map(f),e[13]=r,e[14]=l,e[15]=s,e[16]=x}else x=e[16];let d;return e[22]===x?d=e[23]:(d=(0,t.jsx)(t.Fragment,{children:x}),e[22]=x,e[23]=d),d},Ha=a=>{let e=(0,U.c)(64),{table:s,sqlTableContext:l,isSearching:r}=a,{addTable:c}=xe(),[n,j]=C.useState(!1),[b,g]=C.useState(!1),u=s.columns.length>0,m;e[0]!==c||e[1]!==n||e[2]!==l||e[3]!==s.name||e[4]!==u||e[5]!==b?(m=async()=>{if(n&&!u&&l&&!b){g(!0);let{engine:B,database:Q,schema:De}=l,Z=await la.request({engine:B,database:Q,schema:De,tableName:s.name});if(!(Z!=null&&Z.table))throw Error("No table details available");c({table:Z.table,sqlTableContext:l})}},e[0]=c,e[1]=n,e[2]=l,e[3]=s.name,e[4]=u,e[5]=b,e[6]=m):m=e[6];let o;e[7]!==n||e[8]!==u?(o=[n,u],e[7]=n,e[8]=u,e[9]=o):o=e[9];let{isFetching:h,isPending:x,error:d}=Ne(m,o),i=Y(ra),p=$a(),{createNewCell:f}=Ge(),N=ve(),y;e[10]!==N||e[11]!==i||e[12]!==f||e[13]!==p||e[14]!==l||e[15]!==s?(y=()=>{ka({autoInstantiate:i,createNewCell:f,fromCellId:p}),N((()=>{if(s.source_type==="catalog"){let B=l!=null&&l.database?`${l.database}.${s.name}`:s.name;return`${s.engine}.load_table("${B}")`}if(l)return ie({table:s,columnName:"*",sqlTableContext:l});switch(s.source_type){case"local":return`mo.ui.table(${s.name})`;case"duckdb":case"connection":return ie({table:s,columnName:"*",sqlTableContext:l});default:return na(s.source_type),""}})())},e[10]=N,e[11]=i,e[12]=f,e[13]=p,e[14]=l,e[15]=s,e[16]=y):y=e[16];let v=y,w;e[17]!==s.num_columns||e[18]!==s.num_rows?(w=()=>{let B=[];return s.num_rows!=null&&B.push(`${s.num_rows} rows`),s.num_columns!=null&&B.push(`${s.num_columns} columns`),B.length===0?null:(0,t.jsx)("div",{className:"flex flex-row gap-2 items-center pl-6 group-hover:hidden",children:(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:B.join(", ")})})},e[17]=s.num_columns,e[18]=s.num_rows,e[19]=w):w=e[19];let S=w,q;e[20]!==d||e[21]!==h||e[22]!==x||e[23]!==l||e[24]!==s?(q=()=>{if(x||h)return(0,t.jsx)(Se,{message:"Loading columns...",className:_.tableLoading});if(d)return(0,t.jsx)(we,{error:d,className:_.tableLoading});let B=s.columns;return B.length===0?(0,t.jsx)(te,{content:"No columns found",className:_.tableLoading}):B.map(Q=>(0,t.jsx)(Ja,{table:s,column:Q,sqlTableContext:l},Q.name))},e[20]=d,e[21]=h,e[22]=x,e[23]=l,e[24]=s,e[25]=q):q=e[25];let k=q,D;e[26]!==n||e[27]!==r||e[28]!==s.source_type||e[29]!==s.type?(D=()=>{if(s.source_type!=="local")return(0,t.jsx)(s.type==="table"?Ke:Qe,{className:"h-3 w-3",strokeWidth:n||r?2.5:void 0})},e[26]=n,e[27]=r,e[28]=s.source_type,e[29]=s.type,e[30]=D):D=e[30];let M=D,V=l?`${l.database}.${l.schema}.${s.name}`:s.name,E=l&&(de(l.schema)?_.tableSchemaless:_.tableWithSchema),P=(n||r)&&"font-semibold",$;e[31]!==E||e[32]!==P?($=O("rounded-none group h-8 cursor-pointer",E,P),e[31]=E,e[32]=P,e[33]=$):$=e[33];let F;e[34]===n?F=e[35]:(F=()=>j(!n),e[34]=n,e[35]=F);let T;e[36]===M?T=e[37]:(T=M(),e[36]=M,e[37]=T);let L;e[38]===s.name?L=e[39]:(L=(0,t.jsx)("span",{className:"text-sm",children:s.name}),e[38]=s.name,e[39]=L);let A;e[40]!==T||e[41]!==L?(A=(0,t.jsxs)("div",{className:"flex gap-2 items-center flex-1 pl-1",children:[T,L]}),e[40]=T,e[41]=L,e[42]=A):A=e[42];let R;e[43]===S?R=e[44]:(R=S(),e[43]=S,e[44]=R);let I;e[45]===v?I=e[46]:(I=ma.stopPropagation(()=>v()),e[45]=v,e[46]=I);let J;e[47]===Symbol.for("react.memo_cache_sentinel")?(J=(0,t.jsx)(ja,{className:"h-3 w-3"}),e[47]=J):J=e[47];let G;e[48]===I?G=e[49]:(G=(0,t.jsx)(ne,{content:"Add table to notebook",delayDuration:400,children:(0,t.jsx)(ee,{className:"group-hover:inline-flex hidden",variant:"text",size:"icon",onClick:I,children:J})}),e[48]=I,e[49]=G);let W;e[50]!==n||e[51]!==F||e[52]!==A||e[53]!==R||e[54]!==G||e[55]!==$||e[56]!==V?(W=(0,t.jsxs)(ae,{className:$,value:V,"aria-selected":n,forceMount:!0,onSelect:F,children:[A,R,G]}),e[50]=n,e[51]=F,e[52]=A,e[53]=R,e[54]=G,e[55]=$,e[56]=V,e[57]=W):W=e[57];let K;e[58]!==n||e[59]!==k?(K=n&&k(),e[58]=n,e[59]=k,e[60]=K):K=e[60];let X;return e[61]!==W||e[62]!==K?(X=(0,t.jsxs)(t.Fragment,{children:[W,K]}),e[61]=W,e[62]=K,e[63]=X):X=e[63],X},Ja=a=>{var A,R;let e=(0,U.c)(48),{table:s,column:l,sqlTableContext:r}=a,[c,n]=C.useState(!1),j=Y(he),b=oe(ze);j&&c&&n(!1),b(c?I=>new Set([...I,`${s.name}:${l.name}`]):I=>(I.delete(`${s.name}:${l.name}`),new Set(I)));let g=ve(),{columnsPreviews:u}=Pe(),m;e[0]!==l.name||e[1]!==s.primary_keys?(m=((A=s.primary_keys)==null?void 0:A.includes(l.name))||!1,e[0]=l.name,e[1]=s.primary_keys,e[2]=m):m=e[2];let o=m,h;e[3]!==l.name||e[4]!==s.indexes?(h=((R=s.indexes)==null?void 0:R.includes(l.name))||!1,e[3]=l.name,e[4]=s.indexes,e[5]=h):h=e[5];let x=h,d;e[6]===g?d=e[7]:(d=I=>{g(I)},e[6]=g,e[7]=d);let i=d,p=Xa,f=c?"font-semibold":"",N;e[8]!==l.name||e[9]!==f?(N=(0,t.jsx)("span",{className:f,children:l.name}),e[8]=l.name,e[9]=f,e[10]=N):N=e[10];let y=N,v=`${s.name}.${l.name}`,w=`${s.name}.${l.name}`,S;e[11]===c?S=e[12]:(S=()=>n(!c),e[11]=c,e[12]=S);let q=r?_.columnSql:_.columnLocal,k;e[13]===q?k=e[14]:(k=O("flex flex-row gap-2 items-center flex-1",q),e[13]=q,e[14]=k);let D;e[15]!==l.type||e[16]!==y?(D=(0,t.jsx)(Ba,{columnName:y,dataType:l.type}),e[15]=l.type,e[16]=y,e[17]=D):D=e[17];let M;e[18]===o?M=e[19]:(M=o&&p({tooltipContent:"Primary key",content:"PK"}),e[18]=o,e[19]=M);let V;e[20]===x?V=e[21]:(V=x&&p({tooltipContent:"Indexed",content:"IDX"}),e[20]=x,e[21]=V);let E;e[22]!==k||e[23]!==D||e[24]!==M||e[25]!==V?(E=(0,t.jsxs)("div",{className:k,children:[D,M,V]}),e[22]=k,e[23]=D,e[24]=M,e[25]=V,e[26]=E):E=e[26];let P;e[27]===l.name?P=e[28]:(P=(0,t.jsx)(ne,{content:"Copy column name",delayDuration:400,children:(0,t.jsx)(ee,{variant:"text",size:"icon",className:"group-hover:opacity-100 opacity-0 hover:bg-muted text-muted-foreground hover:text-foreground",children:(0,t.jsx)(va,{tooltip:!1,value:l.name,className:"h-3 w-3"})})}),e[27]=l.name,e[28]=P);let $;e[29]===l.external_type?$=e[30]:($=(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:l.external_type}),e[29]=l.external_type,e[30]=$);let F;e[31]!==E||e[32]!==P||e[33]!==$||e[34]!==v||e[35]!==w||e[36]!==S?(F=(0,t.jsxs)(ae,{className:"rounded-none py-1 group cursor-pointer",value:w,onSelect:S,children:[E,P,$]},v),e[31]=E,e[32]=P,e[33]=$,e[34]=v,e[35]=w,e[36]=S,e[37]=F):F=e[37];let T;e[38]!==l||e[39]!==u||e[40]!==i||e[41]!==c||e[42]!==r||e[43]!==s?(T=c&&(0,t.jsx)("div",{className:O(_.columnPreview,"pr-2 py-2 bg-(--slate-1) shadow-inner border-b"),children:(0,t.jsx)(oa,{children:(0,t.jsx)(ga,{table:s,column:l,onAddColumnChart:i,preview:u.get(r?`${r.database}.${r.schema}.${s.name}:${l.name}`:`${s.name}:${l.name}`),sqlTableContext:r})})}),e[38]=l,e[39]=u,e[40]=i,e[41]=c,e[42]=r,e[43]=s,e[44]=T):T=e[44];let L;return e[45]!==F||e[46]!==T?(L=(0,t.jsxs)(t.Fragment,{children:[F,T]}),e[45]=F,e[46]=T,e[47]=L):L=e[47],L};function Xa(a){let{tooltipContent:e,content:s}=a;return(0,t.jsx)(ne,{content:e,delayDuration:100,children:(0,t.jsx)("span",{className:"text-xs text-black bg-gray-100 dark:invert rounded px-1",children:s})})}function is(a){return a}var z={name:"name",type:"type-value",defs:"defs-refs"},Qa=[{id:z.name,accessorFn:a=>[a.name,a.declaredBy],enableSorting:!0,sortingFn:"alphanumeric",header:({column:a})=>(0,t.jsx)(le,{header:"Name",column:a}),cell:({getValue:a})=>{let[e,s]=a();return(0,t.jsx)(Pa,{name:e,declaredBy:s})}},{id:z.type,accessorFn:a=>[a.dataType,a.value],enableSorting:!0,sortingFn:"alphanumeric",header:({column:a})=>(0,t.jsx)(le,{header:(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("span",{children:"Type"}),(0,t.jsx)("span",{children:"Value"})]}),column:a}),cell:({getValue:a})=>{let[e,s]=a();return(0,t.jsxs)("div",{className:"max-w-[150px]",children:[(0,t.jsx)("div",{className:"text-ellipsis overflow-hidden whitespace-nowrap text-muted-foreground font-mono text-xs",children:e}),(0,t.jsx)("div",{className:"text-ellipsis overflow-hidden whitespace-nowrap",title:s??"",children:s})]})}},{id:z.defs,accessorFn:a=>[a.declaredBy,a.usedBy,a.name,a.declaredByNames,a.usedByNames],enableSorting:!0,sortingFn:"basic",header:({column:a})=>(0,t.jsx)(le,{header:(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("span",{children:"Declared By"}),(0,t.jsx)("span",{children:"Used By"})]}),column:a}),cell:({getValue:a})=>{let[e,s,l]=a(),r=c=>{let n=Je(c);n&&He(n,l)};return(0,t.jsxs)("div",{className:"flex flex-col gap-1 py-1",children:[(0,t.jsxs)("div",{className:"flex flex-row overflow-auto gap-2 items-center",children:[(0,t.jsx)("span",{title:"Declared by",children:(0,t.jsx)(Ra,{className:"w-3.5 h-3.5 text-muted-foreground"})}),e.length===1?(0,t.jsx)(je,{variant:"focus",cellId:e[0],skipScroll:!0,onClick:()=>r(e[0])}):(0,t.jsx)("div",{className:"text-destructive flex flex-row gap-2",children:e.slice(0,3).map((c,n)=>(0,t.jsxs)("span",{className:"flex",children:[(0,t.jsx)(je,{variant:"focus",cellId:c,skipScroll:!0,className:"whitespace-nowrap text-destructive",onClick:()=>r(c)},c),n<e.length-1&&", "]},c))})]}),(0,t.jsxs)("div",{className:"flex flex-row overflow-auto gap-2 items-baseline",children:[(0,t.jsx)("span",{title:"Used by",children:(0,t.jsx)(Na,{className:"w-3.5 h-3.5 text-muted-foreground"})}),(0,t.jsx)(Ea,{maxCount:3,cellIds:s,skipScroll:!0,onClick:r})]})]})}}];function Za({variables:a,sort:e,cellIdToIndex:s}){e||(e={id:z.defs,desc:!1});let l=[];switch(e.id){case z.name:l=H(a,r=>r.name);break;case z.type:l=H(a,r=>r.dataType);break;case z.defs:l=H(a,r=>s.get(r.declaredBy[0]));break}return e.desc?l.reverse():l}const qe=(0,C.memo)(({className:a,cellIds:e,variables:s})=>{let[l,r]=C.useState([]),[c,n]=C.useState(""),j=Ae(),{locale:b}=ya(),g=(0,C.useMemo)(()=>{let m=o=>{let h=j[o];return Ue(h)?`cell-${e.indexOf(o)}`:h??`cell-${e.indexOf(o)}`};return Object.values(s).map(o=>({...o,declaredByNames:o.declaredBy.map(m),usedByNames:o.usedBy.map(m)}))},[s,j,e]),u=ia({data:(0,C.useMemo)(()=>{let m=new Map;return e.forEach((o,h)=>m.set(o,h)),Za({variables:g,sort:l[0],cellIdToIndex:m})},[g,l,e]),columns:Qa,getCoreRowModel:da(),onGlobalFilterChange:n,getFilteredRowModel:ha(),enableFilters:!0,enableGlobalFilter:!0,enableColumnPinning:!1,getColumnCanGlobalFilter(m){return m.columnDef.enableGlobalFilter??!0},globalFilterFn:"auto",manualSorting:!0,locale:b,onSortingChange:r,getSortedRowModel:ua(),state:{sorting:l,globalFilter:c}});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(ba,{className:"w-full",placeholder:"Search",value:c,onChange:m=>n(m.target.value)}),(0,t.jsxs)(Da,{className:O("w-full text-sm flex-1 border-separate border-spacing-0",a),children:[(0,t.jsx)(Fa,{children:(0,t.jsx)(ye,{className:"whitespace-nowrap text-xs",children:u.getFlatHeaders().map(m=>(0,t.jsx)(Ta,{className:"sticky top-0 bg-background border-b",children:be(m.column.columnDef.header,m.getContext())},m.id))})}),(0,t.jsx)(Ia,{children:u.getRowModel().rows.map(m=>(0,t.jsx)(ye,{className:"hover:bg-accent",children:m.getVisibleCells().map(o=>(0,t.jsx)(qa,{className:"border-b",children:be(o.column.columnDef.cell,o.getContext())},o.id))},m.id))})]})]})});qe.displayName="VariableTable";var et=pe(),at=sa("marimo:session-panel:state",{openSections:["variables"],hasUserInteracted:!1},Ze),tt=()=>{let a=(0,et.c)(24),e=Ve(),s=Me(),l=Y(ue),r=Y(Te),[c,n]=Le(at),j=l.length+r.length,b;a[0]!==j||a[1]!==c.hasUserInteracted||a[2]!==c.openSections?(b=!c.hasUserInteracted&&j>0?[...new Set([...c.openSections,"datasources"])]:c.openSections,a[0]=j,a[1]=c.hasUserInteracted,a[2]=c.openSections,a[3]=b):b=a[3];let g=b,u;a[4]===n?u=a[5]:(u=v=>{n({openSections:v,hasUserInteracted:!0})},a[4]=n,a[5]=u);let m=u,o=!g.includes("datasources")&&j>0,h;a[6]===Symbol.for("react.memo_cache_sentinel")?(h=(0,t.jsx)(se,{className:"w-4 h-4"}),a[6]=h):h=a[6];let x;a[7]!==j||a[8]!==o?(x=o&&(0,t.jsx)(Aa,{children:j}),a[7]=j,a[8]=o,a[9]=x):x=a[9];let d;a[10]===x?d=a[11]:(d=(0,t.jsxs)($e,{children:[h,"Data sources",x]}),a[10]=x,a[11]=d);let i;a[12]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(Fe,{children:(0,t.jsx)(za,{})}),a[12]=i):i=a[12];let p;a[13]===d?p=a[14]:(p=(0,t.jsxs)(ke,{value:"datasources",children:[d,i]}),a[13]=d,a[14]=p);let f;a[15]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsxs)($e,{children:[(0,t.jsx)(aa,{className:"w-4 h-4"}),"Variables"]}),a[15]=f):f=a[15];let N;a[16]!==s||a[17]!==e?(N=(0,t.jsxs)(ke,{value:"variables",lastItem:!0,children:[f,(0,t.jsx)(Fe,{children:Object.keys(e).length===0?(0,t.jsx)("div",{className:"px-3 py-4 text-sm text-muted-foreground",children:"No variables defined"}):(0,t.jsx)(qe,{cellIds:s.inOrderIds,variables:e})})]}),a[16]=s,a[17]=e,a[18]=N):N=a[18];let y;return a[19]!==m||a[20]!==g||a[21]!==p||a[22]!==N?(y=(0,t.jsxs)(wa,{type:"multiple",value:g,onValueChange:m,className:"flex flex-col h-full overflow-auto",children:[p,N]}),a[19]=m,a[20]=g,a[21]=p,a[22]=N,a[23]=y):y=a[23],y};export{tt as default};
|
|
1
|
+
import{s as re}from"./chunk-LvLJmgfZ.js";import{d as oe,l as Le,p as ce,u as Y}from"./useEvent-O0nX5vok.js";import{t as Be}from"./react-Bj1aDYRI.js";import{A as Me,An as Ve,Ar as me,Bt as Ee,Cr as Pe,Dr as ie,Er as de,Kn as Oe,M as Ae,Mn as Re,Nt as Ue,Sr as ze,T as Ge,Tt as We,Yn as Ke,a as Ye,ar as se,br as he,dn as He,f as Je,gr as Xe,ir as Qe,kn as Ze,kr as ea,qn as aa,tr as ta,ui as sa,xr as ue,yr as xe,zt as la}from"./cells-5wegzPD4.js";import"./react-dom-CSu739Rf.js";import{t as pe}from"./compiler-runtime-B3qBwwSJ.js";import{n as na}from"./assertNever-CTRGz-ul.js";import"./tooltip-WkrsrB6k.js";import{t as H}from"./sortBy-CbaC49oe.js";import{t as fe}from"./add-connection-dialog-DVxfAULb.js";import{o as ra}from"./utils-HIU-NsEv.js";import{t as oa}from"./ErrorBoundary-H5EQrcAX.js";import{t as ca}from"./jsx-runtime-icT_Ltz2.js";import{r as ma,t as ee}from"./button-BZAv3veu.js";import{t as O}from"./cn-BoaCR37F.js";import"./dist-B_cxg-E4.js";import{D as le,F as ia,I as da,L as ha,P as be,R as ua}from"./JsonOutput-BzXkaUJB.js";import"./cjs-BU2qXMKx.js";import"./main-DrBRErTM.js";import"./useNonce-BtW-rR_1.js";import{r as xa}from"./requests-Bgjtqo_1.js";import{t as pa}from"./createLucideIcon-Cm-Z7dYr.js";import{t as fa}from"./x-BI1M8X_v.js";import"./download-B8XlLSji.js";import"./markdown-renderer-D0ROu8n3.js";import{t as ge}from"./plus-dVmh0yTy.js";import{a as ba}from"./input-C5eatTLl.js";import{n as ga,o as ja}from"./column-preview-46vONjMD.js";import{t as Na}from"./workflow-BmeqNuSH.js";import"./dist-BNC_tnlW.js";import"./dist-CXLJUPFl.js";import"./dist-CQqv2gQL.js";import"./dist-8UD0A5sU.js";import"./dist-apDpadc4.js";import"./session-CXChHxAw.js";import"./Combination-CBJmtdux.js";import{t as ne}from"./tooltip-CNmaER6z.js";import"./purify.es-BBn8CPhf.js";import"./dates-BcvJrESI.js";import{t as ya}from"./context-CRmPPhx9.js";import"./popover-JNsSzROl.js";import"./vega-loader.browser-BJ9oKrvH.js";import"./defaultLocale-CuYNS33t.js";import"./defaultLocale-CGfP-Ye3.js";import{t as va}from"./copy-icon-Cu7az85f.js";import{n as wa}from"./multi-map-x_GQgXMS.js";import{t as je}from"./cell-link-C9qZWgbj.js";import{n as Ne}from"./useAsyncData-a8f2Q_nk.js";import{a as Sa,o as ae,t as _a,u as Ca}from"./command-B7XhH0hz.js";import"./chunk-5FQGJX7Z-DEi7JZeU.js";import"./katex-0Z75JF53.js";import{r as ka}from"./html-to-image-BYwkVvZl.js";import{o as $a}from"./focus-BjrLbkmu.js";import{a as Fa,i as Ta,n as Ia,o as ye,r as qa,t as Da}from"./table-CKtrITeZ.js";import{n as La}from"./icons-T5yQRjuT.js";import{t as ve}from"./useAddCell-CKoCjXpL.js";import{a as we,i as te,o as Se,r as _e,s as Ce,t as Ba,u as Ma}from"./components-CMr3IGTz.js";import{t as Va}from"./empty-state-qEnkddw9.js";import{n as Ea,t as Pa}from"./common-NG61OZ4y.js";import{a as Oa,i as Aa,n as ke,r as $e,t as Fe}from"./components-BtpAwxaG.js";var Ra=pa("square-equal",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M7 10h10",key:"1101jm"}],["path",{d:"M7 14h10",key:"1mhdw3"}]]),U=pe(),C=re(Be(),1),t=re(ca(),1),_={engineEmpty:"pl-3",engine:"pl-3 pr-2",database:"pl-4",schemaEmpty:"pl-8",schema:"pl-7",tableLoading:"pl-11",tableSchemaless:"pl-8",tableWithSchema:"pl-12",columnLocal:"pl-5",columnSql:"pl-13",columnPreview:"pl-10"},Ua=ce(a=>{let e=a(ue),s=a(Re),l=a(Ye);return H(e,r=>{if(!r.variable_name)return-1;let c=Object.values(s).find(j=>j.name===r.variable_name);if(!c)return 0;let n=l.inOrderIds.indexOf(c.declaredBy[0]);return n===-1?0:n})});const Te=ce(a=>{let e=new Map(a(Xe));for(let s of me){let l=e.get(s);l&&(l.databases.length===0&&e.delete(s),l.databases.length===1&&l.databases[0].name==="memory"&&l.databases[0].schemas.length===0&&e.delete(s))}return H([...e.values()],s=>me.has(s.name)?1:0)}),za=()=>{let a=(0,U.c)(32),[e,s]=C.useState(""),l=oe(he),r=Y(Ua),c=Y(Te);if(r.length===0&&c.length===0){let p;return a[0]===Symbol.for("react.memo_cache_sentinel")?(p=(0,t.jsx)(Va,{title:"No tables found",description:"Any datasets/dataframes in the global scope will be shown here.",action:(0,t.jsx)(fe,{children:(0,t.jsxs)(ee,{variant:"outline",size:"sm",children:["Add database or catalog",(0,t.jsx)(ge,{className:"h-4 w-4 ml-2"})]})}),icon:(0,t.jsx)(se,{})}),a[0]=p):p=a[0],p}let n=!!e.trim(),j;a[1]===l?j=a[2]:(j=p=>{l(p.length>0),s(p)},a[1]=l,a[2]=j);let b;a[3]!==e||a[4]!==j?(b=(0,t.jsx)(Sa,{placeholder:"Search tables...",className:"h-6 m-1",value:e,onValueChange:j,rootClassName:"flex-1 border-r border-b-0"}),a[3]=e,a[4]=j,a[5]=b):b=a[5];let g;a[6]===n?g=a[7]:(g=n&&(0,t.jsx)("button",{type:"button",className:"float-right border-b px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",onClick:()=>s(""),children:(0,t.jsx)(fa,{className:"h-4 w-4"})}),a[6]=n,a[7]=g);let u;a[8]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)(fe,{children:(0,t.jsx)(ee,{variant:"ghost",size:"sm",className:"px-2 rounded-none focus-visible:outline-hidden",children:(0,t.jsx)(ge,{className:"h-4 w-4"})})}),a[8]=u):u=a[8];let m;a[9]!==b||a[10]!==g?(m=(0,t.jsxs)("div",{className:"flex items-center w-full border-b",children:[b,g,u]}),a[9]=b,a[10]=g,a[11]=m):m=a[11];let o;if(a[12]!==c||a[13]!==n||a[14]!==e){let p;a[16]!==n||a[17]!==e?(p=f=>(0,t.jsx)(Ga,{connection:f,hasChildren:f.databases.length>0,children:f.databases.map(N=>(0,t.jsx)(Wa,{engineName:f.name,database:N,hasSearch:n,children:(0,t.jsx)(Ka,{schemas:N.schemas,defaultSchema:f.default_schema,defaultDatabase:f.default_database,engineName:f.name,databaseName:N.name,hasSearch:n,searchValue:e,dialect:f.dialect})},N.name))},f.name),a[16]=n,a[17]=e,a[18]=p):p=a[18],o=c.map(p),a[12]=c,a[13]=n,a[14]=e,a[15]=o}else o=a[15];let h;a[19]!==c.length||a[20]!==r.length?(h=c.length>0&&r.length>0&&(0,t.jsxs)(_e,{className:_.engine,children:[(0,t.jsx)(La,{className:"h-4 w-4 text-muted-foreground"}),(0,t.jsx)("span",{className:"text-xs",children:"Python"})]}),a[19]=c.length,a[20]=r.length,a[21]=h):h=a[21];let x;a[22]!==e||a[23]!==r?(x=r.length>0&&(0,t.jsx)(Ie,{tables:r,searchValue:e}),a[22]=e,a[23]=r,a[24]=x):x=a[24];let d;a[25]!==o||a[26]!==h||a[27]!==x?(d=(0,t.jsxs)(Ca,{className:"flex flex-col",children:[o,h,x]}),a[25]=o,a[26]=h,a[27]=x,a[28]=d):d=a[28];let i;return a[29]!==m||a[30]!==d?(i=(0,t.jsxs)(_a,{className:"border-b bg-background rounded-none h-full pb-10 overflow-auto outline-hidden",shouldFilter:!1,children:[m,d]}),a[29]=m,a[30]=d,a[31]=i):i=a[31],i};var Ga=a=>{let e=(0,U.c)(25),{connection:s,children:l,hasChildren:r}=a,c=s.name===ea,n=c?"In-Memory":s.name,{previewDataSourceConnection:j}=xa(),b;e[0]!==s.name||e[1]!==j?(b=async()=>{await j({engine:s.name})},e[0]=s.name,e[1]=j,e[2]=b):b=e[2];let g=b,u;e[3]===s.dialect?u=e[4]:(u=(0,t.jsx)(We,{className:"h-4 w-4 text-muted-foreground",name:s.dialect}),e[3]=s.dialect,e[4]=u);let m;e[5]===s.dialect?m=e[6]:(m=Oe(s.dialect),e[5]=s.dialect,e[6]=m);let o;e[7]===m?o=e[8]:(o=(0,t.jsx)("span",{className:"text-xs",children:m}),e[7]=m,e[8]=o);let h=n,x;e[9]===h?x=e[10]:(x=(0,t.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",(0,t.jsx)(Oa,{variableName:h}),")"]}),e[9]=h,e[10]=x);let d;e[11]!==g||e[12]!==c?(d=!c&&(0,t.jsx)(Ma,{onClick:g,tooltip:"Refresh connection",className:"ml-auto h-4 p-0",iconClassName:"h-3.5 w-3.5"}),e[11]=g,e[12]=c,e[13]=d):d=e[13];let i;e[14]!==u||e[15]!==o||e[16]!==x||e[17]!==d?(i=(0,t.jsxs)(_e,{className:_.engine,children:[u,o,x,d]}),e[14]=u,e[15]=o,e[16]=x,e[17]=d,e[18]=i):i=e[18];let p;e[19]!==l||e[20]!==r?(p=r?l:(0,t.jsx)(te,{content:"No databases available",className:_.engineEmpty}),e[19]=l,e[20]=r,e[21]=p):p=e[21];let f;return e[22]!==i||e[23]!==p?(f=(0,t.jsxs)(t.Fragment,{children:[i,p]}),e[22]=i,e[23]=p,e[24]=f):f=e[24],f},Wa=a=>{let e=(0,U.c)(26),{hasSearch:s,engineName:l,database:r,children:c}=a,[n,j]=C.useState(!1),[b,g]=C.useState(!1),[u,m]=C.useState(s);u!==s&&(m(s),j(s));let o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o=O("text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",_.database),e[0]=o):o=e[0];let h;e[1]!==n||e[2]!==b?(h=()=>{j(!n),g(!b)},e[1]=n,e[2]=b,e[3]=h):h=e[3];let x=`${l}:${r.name}`,d;e[4]===n?d=e[5]:(d=(0,t.jsx)(Ce,{isExpanded:n}),e[4]=n,e[5]=d);let i=b&&n?"text-foreground":"text-muted-foreground",p;e[6]===i?p=e[7]:(p=O("h-4 w-4",i),e[6]=i,e[7]=p);let f;e[8]===p?f=e[9]:(f=(0,t.jsx)(se,{className:p}),e[8]=p,e[9]=f);let N=b&&n&&"font-semibold",y;e[10]===N?y=e[11]:(y=O(N),e[10]=N,e[11]=y);let v;e[12]===r.name?v=e[13]:(v=r.name===""?(0,t.jsx)("i",{children:"Not connected"}):r.name,e[12]=r.name,e[13]=v);let w;e[14]!==v||e[15]!==y?(w=(0,t.jsx)("span",{className:y,children:v}),e[14]=v,e[15]=y,e[16]=w):w=e[16];let S;e[17]!==w||e[18]!==h||e[19]!==x||e[20]!==d||e[21]!==f?(S=(0,t.jsxs)(ae,{className:o,onSelect:h,value:x,children:[d,f,w]}),e[17]=w,e[18]=h,e[19]=x,e[20]=d,e[21]=f,e[22]=S):S=e[22];let q=n&&c,k;return e[23]!==S||e[24]!==q?(k=(0,t.jsxs)(t.Fragment,{children:[S,q]}),e[23]=S,e[24]=q,e[25]=k):k=e[25],k},Ka=a=>{let e=(0,U.c)(22),{schemas:s,defaultSchema:l,defaultDatabase:r,dialect:c,engineName:n,databaseName:j,hasSearch:b,searchValue:g}=a;if(s.length===0){let o;return e[0]===Symbol.for("react.memo_cache_sentinel")?(o=(0,t.jsx)(te,{content:"No schemas available",className:_.schemaEmpty}),e[0]=o):o=e[0],o}let u;if(e[1]!==j||e[2]!==r||e[3]!==l||e[4]!==c||e[5]!==n||e[6]!==b||e[7]!==s||e[8]!==g){let o;e[10]===g?o=e[11]:(o=d=>g?d.tables.some(i=>i.name.toLowerCase().includes(g.toLowerCase())):!0,e[10]=g,e[11]=o);let h=s.filter(o),x;e[12]!==j||e[13]!==r||e[14]!==l||e[15]!==c||e[16]!==n||e[17]!==b||e[18]!==g?(x=d=>(0,t.jsx)(Ya,{databaseName:j,schema:d,hasSearch:b,children:(0,t.jsx)(Ie,{tables:d.tables,searchValue:g,sqlTableContext:{engine:n,database:j,schema:d.name,defaultSchema:l,defaultDatabase:r,dialect:c}})},d.name),e[12]=j,e[13]=r,e[14]=l,e[15]=c,e[16]=n,e[17]=b,e[18]=g,e[19]=x):x=e[19],u=h.map(x),e[1]=j,e[2]=r,e[3]=l,e[4]=c,e[5]=n,e[6]=b,e[7]=s,e[8]=g,e[9]=u}else u=e[9];let m;return e[20]===u?m=e[21]:(m=(0,t.jsx)(t.Fragment,{children:u}),e[20]=u,e[21]=m),m},Ya=a=>{let e=(0,U.c)(24),{databaseName:s,schema:l,children:r,hasSearch:c}=a,[n,j]=C.useState(c),[b,g]=C.useState(!1),u=`${s}:${l.name}`;if(de(l.name))return r;let m;e[0]===Symbol.for("react.memo_cache_sentinel")?(m=O("text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",_.schema),e[0]=m):m=e[0];let o;e[1]!==n||e[2]!==b?(o=()=>{j(!n),g(!b)},e[1]=n,e[2]=b,e[3]=o):o=e[3];let h;e[4]===n?h=e[5]:(h=(0,t.jsx)(Ce,{isExpanded:n}),e[4]=n,e[5]=h);let x=b&&n&&"text-foreground",d;e[6]===x?d=e[7]:(d=O("h-4 w-4 text-muted-foreground",x),e[6]=x,e[7]=d);let i;e[8]===d?i=e[9]:(i=(0,t.jsx)(ta,{className:d}),e[8]=d,e[9]=i);let p=b&&n&&"font-semibold",f;e[10]===p?f=e[11]:(f=O(p),e[10]=p,e[11]=f);let N;e[12]!==l.name||e[13]!==f?(N=(0,t.jsx)("span",{className:f,children:l.name}),e[12]=l.name,e[13]=f,e[14]=N):N=e[14];let y;e[15]!==o||e[16]!==h||e[17]!==i||e[18]!==N||e[19]!==u?(y=(0,t.jsxs)(ae,{className:m,onSelect:o,value:u,children:[h,i,N]}),e[15]=o,e[16]=h,e[17]=i,e[18]=N,e[19]=u,e[20]=y):y=e[20];let v=n&&r,w;return e[21]!==y||e[22]!==v?(w=(0,t.jsxs)(t.Fragment,{children:[y,v]}),e[21]=y,e[22]=v,e[23]=w):w=e[23],w},Ie=a=>{let e=(0,U.c)(24),{tables:s,sqlTableContext:l,searchValue:r}=a,{addTableList:c}=xe(),[n,j]=C.useState(!1),[b,g]=C.useState(!1),u;e[0]!==c||e[1]!==l||e[2]!==s.length||e[3]!==n?(u=async()=>{if(s.length===0&&l&&!n){j(!0),g(!0);let{engine:i,database:p,schema:f}=l,N=await Ee.request({engine:i,database:p,schema:f});if(!(N!=null&&N.tables))throw g(!1),Error("No tables available");c({tables:N.tables,sqlTableContext:l}),g(!1)}},e[0]=c,e[1]=l,e[2]=s.length,e[3]=n,e[4]=u):u=e[4];let m;e[5]!==l||e[6]!==s.length||e[7]!==n?(m=[s.length,l,n],e[5]=l,e[6]=s.length,e[7]=n,e[8]=m):m=e[8];let{isPending:o,error:h}=Ne(u,m);if(o||b){let i;return e[9]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(Se,{message:"Loading tables...",className:_.tableLoading}),e[9]=i):i=e[9],i}if(h){let i;return e[10]===h?i=e[11]:(i=(0,t.jsx)(we,{error:h,className:_.tableLoading}),e[10]=h,e[11]=i),i}if(s.length===0){let i;return e[12]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(te,{content:"No tables found",className:_.tableLoading}),e[12]=i):i=e[12],i}let x;if(e[13]!==r||e[14]!==l||e[15]!==s){let i;e[17]===r?i=e[18]:(i=N=>r?N.name.toLowerCase().includes(r.toLowerCase()):!0,e[17]=r,e[18]=i);let p=s.filter(i),f;e[19]!==r||e[20]!==l?(f=N=>(0,t.jsx)(Ha,{table:N,sqlTableContext:l,isSearching:!!r},N.name),e[19]=r,e[20]=l,e[21]=f):f=e[21],x=p.map(f),e[13]=r,e[14]=l,e[15]=s,e[16]=x}else x=e[16];let d;return e[22]===x?d=e[23]:(d=(0,t.jsx)(t.Fragment,{children:x}),e[22]=x,e[23]=d),d},Ha=a=>{let e=(0,U.c)(64),{table:s,sqlTableContext:l,isSearching:r}=a,{addTable:c}=xe(),[n,j]=C.useState(!1),[b,g]=C.useState(!1),u=s.columns.length>0,m;e[0]!==c||e[1]!==n||e[2]!==l||e[3]!==s.name||e[4]!==u||e[5]!==b?(m=async()=>{if(n&&!u&&l&&!b){g(!0);let{engine:B,database:Q,schema:De}=l,Z=await la.request({engine:B,database:Q,schema:De,tableName:s.name});if(!(Z!=null&&Z.table))throw Error("No table details available");c({table:Z.table,sqlTableContext:l})}},e[0]=c,e[1]=n,e[2]=l,e[3]=s.name,e[4]=u,e[5]=b,e[6]=m):m=e[6];let o;e[7]!==n||e[8]!==u?(o=[n,u],e[7]=n,e[8]=u,e[9]=o):o=e[9];let{isFetching:h,isPending:x,error:d}=Ne(m,o),i=Y(ra),p=$a(),{createNewCell:f}=Ge(),N=ve(),y;e[10]!==N||e[11]!==i||e[12]!==f||e[13]!==p||e[14]!==l||e[15]!==s?(y=()=>{ka({autoInstantiate:i,createNewCell:f,fromCellId:p}),N((()=>{if(s.source_type==="catalog"){let B=l!=null&&l.database?`${l.database}.${s.name}`:s.name;return`${s.engine}.load_table("${B}")`}if(l)return ie({table:s,columnName:"*",sqlTableContext:l});switch(s.source_type){case"local":return`mo.ui.table(${s.name})`;case"duckdb":case"connection":return ie({table:s,columnName:"*",sqlTableContext:l});default:return na(s.source_type),""}})())},e[10]=N,e[11]=i,e[12]=f,e[13]=p,e[14]=l,e[15]=s,e[16]=y):y=e[16];let v=y,w;e[17]!==s.num_columns||e[18]!==s.num_rows?(w=()=>{let B=[];return s.num_rows!=null&&B.push(`${s.num_rows} rows`),s.num_columns!=null&&B.push(`${s.num_columns} columns`),B.length===0?null:(0,t.jsx)("div",{className:"flex flex-row gap-2 items-center pl-6 group-hover:hidden",children:(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:B.join(", ")})})},e[17]=s.num_columns,e[18]=s.num_rows,e[19]=w):w=e[19];let S=w,q;e[20]!==d||e[21]!==h||e[22]!==x||e[23]!==l||e[24]!==s?(q=()=>{if(x||h)return(0,t.jsx)(Se,{message:"Loading columns...",className:_.tableLoading});if(d)return(0,t.jsx)(we,{error:d,className:_.tableLoading});let B=s.columns;return B.length===0?(0,t.jsx)(te,{content:"No columns found",className:_.tableLoading}):B.map(Q=>(0,t.jsx)(Ja,{table:s,column:Q,sqlTableContext:l},Q.name))},e[20]=d,e[21]=h,e[22]=x,e[23]=l,e[24]=s,e[25]=q):q=e[25];let k=q,D;e[26]!==n||e[27]!==r||e[28]!==s.source_type||e[29]!==s.type?(D=()=>{if(s.source_type!=="local")return(0,t.jsx)(s.type==="table"?Ke:Qe,{className:"h-3 w-3",strokeWidth:n||r?2.5:void 0})},e[26]=n,e[27]=r,e[28]=s.source_type,e[29]=s.type,e[30]=D):D=e[30];let M=D,V=l?`${l.database}.${l.schema}.${s.name}`:s.name,E=l&&(de(l.schema)?_.tableSchemaless:_.tableWithSchema),P=(n||r)&&"font-semibold",$;e[31]!==E||e[32]!==P?($=O("rounded-none group h-8 cursor-pointer",E,P),e[31]=E,e[32]=P,e[33]=$):$=e[33];let F;e[34]===n?F=e[35]:(F=()=>j(!n),e[34]=n,e[35]=F);let T;e[36]===M?T=e[37]:(T=M(),e[36]=M,e[37]=T);let L;e[38]===s.name?L=e[39]:(L=(0,t.jsx)("span",{className:"text-sm",children:s.name}),e[38]=s.name,e[39]=L);let A;e[40]!==T||e[41]!==L?(A=(0,t.jsxs)("div",{className:"flex gap-2 items-center flex-1 pl-1",children:[T,L]}),e[40]=T,e[41]=L,e[42]=A):A=e[42];let R;e[43]===S?R=e[44]:(R=S(),e[43]=S,e[44]=R);let I;e[45]===v?I=e[46]:(I=ma.stopPropagation(()=>v()),e[45]=v,e[46]=I);let J;e[47]===Symbol.for("react.memo_cache_sentinel")?(J=(0,t.jsx)(ja,{className:"h-3 w-3"}),e[47]=J):J=e[47];let G;e[48]===I?G=e[49]:(G=(0,t.jsx)(ne,{content:"Add table to notebook",delayDuration:400,children:(0,t.jsx)(ee,{className:"group-hover:inline-flex hidden",variant:"text",size:"icon",onClick:I,children:J})}),e[48]=I,e[49]=G);let W;e[50]!==n||e[51]!==F||e[52]!==A||e[53]!==R||e[54]!==G||e[55]!==$||e[56]!==V?(W=(0,t.jsxs)(ae,{className:$,value:V,"aria-selected":n,forceMount:!0,onSelect:F,children:[A,R,G]}),e[50]=n,e[51]=F,e[52]=A,e[53]=R,e[54]=G,e[55]=$,e[56]=V,e[57]=W):W=e[57];let K;e[58]!==n||e[59]!==k?(K=n&&k(),e[58]=n,e[59]=k,e[60]=K):K=e[60];let X;return e[61]!==W||e[62]!==K?(X=(0,t.jsxs)(t.Fragment,{children:[W,K]}),e[61]=W,e[62]=K,e[63]=X):X=e[63],X},Ja=a=>{var A,R;let e=(0,U.c)(48),{table:s,column:l,sqlTableContext:r}=a,[c,n]=C.useState(!1),j=Y(he),b=oe(ze);j&&c&&n(!1),b(c?I=>new Set([...I,`${s.name}:${l.name}`]):I=>(I.delete(`${s.name}:${l.name}`),new Set(I)));let g=ve(),{columnsPreviews:u}=Pe(),m;e[0]!==l.name||e[1]!==s.primary_keys?(m=((A=s.primary_keys)==null?void 0:A.includes(l.name))||!1,e[0]=l.name,e[1]=s.primary_keys,e[2]=m):m=e[2];let o=m,h;e[3]!==l.name||e[4]!==s.indexes?(h=((R=s.indexes)==null?void 0:R.includes(l.name))||!1,e[3]=l.name,e[4]=s.indexes,e[5]=h):h=e[5];let x=h,d;e[6]===g?d=e[7]:(d=I=>{g(I)},e[6]=g,e[7]=d);let i=d,p=Xa,f=c?"font-semibold":"",N;e[8]!==l.name||e[9]!==f?(N=(0,t.jsx)("span",{className:f,children:l.name}),e[8]=l.name,e[9]=f,e[10]=N):N=e[10];let y=N,v=`${s.name}.${l.name}`,w=`${s.name}.${l.name}`,S;e[11]===c?S=e[12]:(S=()=>n(!c),e[11]=c,e[12]=S);let q=r?_.columnSql:_.columnLocal,k;e[13]===q?k=e[14]:(k=O("flex flex-row gap-2 items-center flex-1",q),e[13]=q,e[14]=k);let D;e[15]!==l.type||e[16]!==y?(D=(0,t.jsx)(Ba,{columnName:y,dataType:l.type}),e[15]=l.type,e[16]=y,e[17]=D):D=e[17];let M;e[18]===o?M=e[19]:(M=o&&p({tooltipContent:"Primary key",content:"PK"}),e[18]=o,e[19]=M);let V;e[20]===x?V=e[21]:(V=x&&p({tooltipContent:"Indexed",content:"IDX"}),e[20]=x,e[21]=V);let E;e[22]!==k||e[23]!==D||e[24]!==M||e[25]!==V?(E=(0,t.jsxs)("div",{className:k,children:[D,M,V]}),e[22]=k,e[23]=D,e[24]=M,e[25]=V,e[26]=E):E=e[26];let P;e[27]===l.name?P=e[28]:(P=(0,t.jsx)(ne,{content:"Copy column name",delayDuration:400,children:(0,t.jsx)(ee,{variant:"text",size:"icon",className:"group-hover:opacity-100 opacity-0 hover:bg-muted text-muted-foreground hover:text-foreground",children:(0,t.jsx)(va,{tooltip:!1,value:l.name,className:"h-3 w-3"})})}),e[27]=l.name,e[28]=P);let $;e[29]===l.external_type?$=e[30]:($=(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:l.external_type}),e[29]=l.external_type,e[30]=$);let F;e[31]!==E||e[32]!==P||e[33]!==$||e[34]!==v||e[35]!==w||e[36]!==S?(F=(0,t.jsxs)(ae,{className:"rounded-none py-1 group cursor-pointer",value:w,onSelect:S,children:[E,P,$]},v),e[31]=E,e[32]=P,e[33]=$,e[34]=v,e[35]=w,e[36]=S,e[37]=F):F=e[37];let T;e[38]!==l||e[39]!==u||e[40]!==i||e[41]!==c||e[42]!==r||e[43]!==s?(T=c&&(0,t.jsx)("div",{className:O(_.columnPreview,"pr-2 py-2 bg-(--slate-1) shadow-inner border-b"),children:(0,t.jsx)(oa,{children:(0,t.jsx)(ga,{table:s,column:l,onAddColumnChart:i,preview:u.get(r?`${r.database}.${r.schema}.${s.name}:${l.name}`:`${s.name}:${l.name}`),sqlTableContext:r})})}),e[38]=l,e[39]=u,e[40]=i,e[41]=c,e[42]=r,e[43]=s,e[44]=T):T=e[44];let L;return e[45]!==F||e[46]!==T?(L=(0,t.jsxs)(t.Fragment,{children:[F,T]}),e[45]=F,e[46]=T,e[47]=L):L=e[47],L};function Xa(a){let{tooltipContent:e,content:s}=a;return(0,t.jsx)(ne,{content:e,delayDuration:100,children:(0,t.jsx)("span",{className:"text-xs text-black bg-gray-100 dark:invert rounded px-1",children:s})})}function is(a){return a}var z={name:"name",type:"type-value",defs:"defs-refs"},Qa=[{id:z.name,accessorFn:a=>[a.name,a.declaredBy],enableSorting:!0,sortingFn:"alphanumeric",header:({column:a})=>(0,t.jsx)(le,{header:"Name",column:a}),cell:({getValue:a})=>{let[e,s]=a();return(0,t.jsx)(Pa,{name:e,declaredBy:s})}},{id:z.type,accessorFn:a=>[a.dataType,a.value],enableSorting:!0,sortingFn:"alphanumeric",header:({column:a})=>(0,t.jsx)(le,{header:(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("span",{children:"Type"}),(0,t.jsx)("span",{children:"Value"})]}),column:a}),cell:({getValue:a})=>{let[e,s]=a();return(0,t.jsxs)("div",{className:"max-w-[150px]",children:[(0,t.jsx)("div",{className:"text-ellipsis overflow-hidden whitespace-nowrap text-muted-foreground font-mono text-xs",children:e}),(0,t.jsx)("div",{className:"text-ellipsis overflow-hidden whitespace-nowrap",title:s??"",children:s})]})}},{id:z.defs,accessorFn:a=>[a.declaredBy,a.usedBy,a.name,a.declaredByNames,a.usedByNames],enableSorting:!0,sortingFn:"basic",header:({column:a})=>(0,t.jsx)(le,{header:(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("span",{children:"Declared By"}),(0,t.jsx)("span",{children:"Used By"})]}),column:a}),cell:({getValue:a})=>{let[e,s,l]=a(),r=c=>{let n=Je(c);n&&He(n,l)};return(0,t.jsxs)("div",{className:"flex flex-col gap-1 py-1",children:[(0,t.jsxs)("div",{className:"flex flex-row overflow-auto gap-2 items-center",children:[(0,t.jsx)("span",{title:"Declared by",children:(0,t.jsx)(Ra,{className:"w-3.5 h-3.5 text-muted-foreground"})}),e.length===1?(0,t.jsx)(je,{variant:"focus",cellId:e[0],skipScroll:!0,onClick:()=>r(e[0])}):(0,t.jsx)("div",{className:"text-destructive flex flex-row gap-2",children:e.slice(0,3).map((c,n)=>(0,t.jsxs)("span",{className:"flex",children:[(0,t.jsx)(je,{variant:"focus",cellId:c,skipScroll:!0,className:"whitespace-nowrap text-destructive",onClick:()=>r(c)},c),n<e.length-1&&", "]},c))})]}),(0,t.jsxs)("div",{className:"flex flex-row overflow-auto gap-2 items-baseline",children:[(0,t.jsx)("span",{title:"Used by",children:(0,t.jsx)(Na,{className:"w-3.5 h-3.5 text-muted-foreground"})}),(0,t.jsx)(Ea,{maxCount:3,cellIds:s,skipScroll:!0,onClick:r})]})]})}}];function Za({variables:a,sort:e,cellIdToIndex:s}){e||(e={id:z.defs,desc:!1});let l=[];switch(e.id){case z.name:l=H(a,r=>r.name);break;case z.type:l=H(a,r=>r.dataType);break;case z.defs:l=H(a,r=>s.get(r.declaredBy[0]));break}return e.desc?l.reverse():l}const qe=(0,C.memo)(({className:a,cellIds:e,variables:s})=>{let[l,r]=C.useState([]),[c,n]=C.useState(""),j=Ae(),{locale:b}=ya(),g=(0,C.useMemo)(()=>{let m=o=>{let h=j[o];return Ue(h)?`cell-${e.indexOf(o)}`:h??`cell-${e.indexOf(o)}`};return Object.values(s).map(o=>({...o,declaredByNames:o.declaredBy.map(m),usedByNames:o.usedBy.map(m)}))},[s,j,e]),u=ia({data:(0,C.useMemo)(()=>{let m=new Map;return e.forEach((o,h)=>m.set(o,h)),Za({variables:g,sort:l[0],cellIdToIndex:m})},[g,l,e]),columns:Qa,getCoreRowModel:da(),onGlobalFilterChange:n,getFilteredRowModel:ha(),enableFilters:!0,enableGlobalFilter:!0,enableColumnPinning:!1,getColumnCanGlobalFilter(m){return m.columnDef.enableGlobalFilter??!0},globalFilterFn:"auto",manualSorting:!0,locale:b,onSortingChange:r,getSortedRowModel:ua(),state:{sorting:l,globalFilter:c}});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(ba,{className:"w-full",placeholder:"Search",value:c,onChange:m=>n(m.target.value)}),(0,t.jsxs)(Da,{className:O("w-full text-sm flex-1 border-separate border-spacing-0",a),children:[(0,t.jsx)(Fa,{children:(0,t.jsx)(ye,{className:"whitespace-nowrap text-xs",children:u.getFlatHeaders().map(m=>(0,t.jsx)(Ta,{className:"sticky top-0 bg-background border-b",children:be(m.column.columnDef.header,m.getContext())},m.id))})}),(0,t.jsx)(Ia,{children:u.getRowModel().rows.map(m=>(0,t.jsx)(ye,{className:"hover:bg-accent",children:m.getVisibleCells().map(o=>(0,t.jsx)(qa,{className:"border-b",children:be(o.column.columnDef.cell,o.getContext())},o.id))},m.id))})]})]})});qe.displayName="VariableTable";var et=pe(),at=sa("marimo:session-panel:state",{openSections:["variables"],hasUserInteracted:!1},Ze),tt=()=>{let a=(0,et.c)(24),e=Ve(),s=Me(),l=Y(ue),r=Y(Te),[c,n]=Le(at),j=l.length+r.length,b;a[0]!==j||a[1]!==c.hasUserInteracted||a[2]!==c.openSections?(b=!c.hasUserInteracted&&j>0?[...new Set([...c.openSections,"datasources"])]:c.openSections,a[0]=j,a[1]=c.hasUserInteracted,a[2]=c.openSections,a[3]=b):b=a[3];let g=b,u;a[4]===n?u=a[5]:(u=v=>{n({openSections:v,hasUserInteracted:!0})},a[4]=n,a[5]=u);let m=u,o=!g.includes("datasources")&&j>0,h;a[6]===Symbol.for("react.memo_cache_sentinel")?(h=(0,t.jsx)(se,{className:"w-4 h-4"}),a[6]=h):h=a[6];let x;a[7]!==j||a[8]!==o?(x=o&&(0,t.jsx)(Aa,{children:j}),a[7]=j,a[8]=o,a[9]=x):x=a[9];let d;a[10]===x?d=a[11]:(d=(0,t.jsxs)($e,{children:[h,"Data sources",x]}),a[10]=x,a[11]=d);let i;a[12]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(Fe,{children:(0,t.jsx)(za,{})}),a[12]=i):i=a[12];let p;a[13]===d?p=a[14]:(p=(0,t.jsxs)(ke,{value:"datasources",children:[d,i]}),a[13]=d,a[14]=p);let f;a[15]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsxs)($e,{children:[(0,t.jsx)(aa,{className:"w-4 h-4"}),"Variables"]}),a[15]=f):f=a[15];let N;a[16]!==s||a[17]!==e?(N=(0,t.jsxs)(ke,{value:"variables",lastItem:!0,children:[f,(0,t.jsx)(Fe,{children:Object.keys(e).length===0?(0,t.jsx)("div",{className:"px-3 py-4 text-sm text-muted-foreground",children:"No variables defined"}):(0,t.jsx)(qe,{cellIds:s.inOrderIds,variables:e})})]}),a[16]=s,a[17]=e,a[18]=N):N=a[18];let y;return a[19]!==m||a[20]!==g||a[21]!==p||a[22]!==N?(y=(0,t.jsxs)(wa,{type:"multiple",value:g,onValueChange:m,className:"flex flex-col h-full overflow-auto",children:[p,N]}),a[19]=m,a[20]=g,a[21]=p,a[22]=N,a[23]=y):y=a[23],y};export{tt as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as we}from"./chunk-LvLJmgfZ.js";import{d as L,l as Ze,p as Qe,u as de}from"./useEvent-O0nX5vok.js";import{t as et}from"./react-Bj1aDYRI.js";import{Cn as tt,En as at,Gt as ot,Nr as nt,Sn as it,T as ge,_ as st,ar as lt,cr as rt,dt as je,h as ve,lt as dt,pr as ct,pt as ht,rr as pt,t as mt,ut,vi as ce,xn as ft}from"./cells-5wegzPD4.js";import{t as _}from"./compiler-runtime-B3qBwwSJ.js";import{n as yt}from"./assertNever-CTRGz-ul.js";import{s as Ce}from"./useLifecycle-CWjBWFMI.js";import{i as kt,n as ze}from"./add-connection-dialog-DS033hDE.js";import{n as bt,x as xt}from"./ai-model-dropdown-DJn8Mf6B.js";import{c as Me,m as T}from"./useEventListener-BGihH8bs.js";import{y as wt}from"./utils-HIU-NsEv.js";import{n as A,t as We}from"./constants-Rz_lD4HK.js";import{S as he,h as gt,x as jt}from"./config-RexwtI0U.js";import{t as vt}from"./jsx-runtime-icT_Ltz2.js";import{r as Ct,t as pe}from"./button-BZAv3veu.js";import{r as H}from"./requests-Bgjtqo_1.js";import{t as h}from"./createLucideIcon-Cm-Z7dYr.js";import{a as Se,f as zt,i as De,m as Mt,p as _e,u as Ae}from"./layout-CpSNosnt.js";import{t as Ne}from"./check-BE0hEwVo.js";import{c as Pe,d as me,n as Wt,o as St,r as ue,t as Dt}from"./download-B8XlLSji.js";import{f as _t}from"./maps-CqKCrVZ8.js";import{r as At}from"./useCellActionButton-DPHJ31aq.js";import{t as Nt}from"./copy-CkudG0Ej.js";import{t as Pt}from"./download-DBW9RXtT.js";import{t as It}from"./eye-off-vwi9L975.js";import{t as Et}from"./file-plus-corner-lLQw9OnR.js";import{t as J}from"./file-DzHkbIdO.js";import{t as Lt}from"./github-BVtI-3F1.js";import{m as Tt}from"./form-p9cBnWwo.js";import{n as Ht,r as qt,t as Rt}from"./youtube-DE-Ej6FR.js";import{n as Bt,t as Ft}from"./square-CxAsQQ77.js";import{t as Ot}from"./image-DXfkah9d.js";import{t as Vt}from"./link-Cf10mh3t.js";import{r as Yt}from"./input-C5eatTLl.js";import{t as Kt}from"./settings-CzQUw9rV.js";import{x as Ut}from"./azure-a3T26UGw.js";import{t as C}from"./use-toast-Hc8CXlvz.js";import{n as Ie,t as Gt}from"./paths-D2lG83Oh.js";import{o as $t}from"./session-CXChHxAw.js";import{a as Jt,c as Xt,i as Zt,n as Qt,r as ea,s as ta,t as aa}from"./select-Ch6m1k2G.js";import{t as oa}from"./tooltip-CNmaER6z.js";import{o as na}from"./alert-dialog-DbQ_TZC7.js";import{a as ia,c as sa,i as la,n as ra,r as da}from"./dialog-DCGn-_Ip.js";import{n as fe}from"./ImperativeModal-b5nJtLod.js";import{r as ca,t as ha}from"./share-DdWa0mV7.js";import{t as X}from"./copy-f2iEg0yL.js";import{a as pa}from"./cell-link-C9qZWgbj.js";import{a as ma}from"./renderShortcut-BSq2vc9J.js";import{t as ua}from"./icons-T5yQRjuT.js";import{t as fa}from"./links-XdsYEk97.js";import{r as ya,t as Ee}from"./hooks-WmIIm80L.js";import{t as Le}from"./types-DBNA0l6L.js";var ka=h("circle-chevron-down",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16 10-4 4-4-4",key:"894hmk"}]]),ba=h("circle-chevron-right",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m10 8 4 4-4 4",key:"1wy4r4"}]]),Te=h("clipboard-copy",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]]),He=h("command",[["path",{d:"M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3",key:"11bfej"}]]),qe=h("diamond-plus",[["path",{d:"M12 8v8",key:"napkw2"}],["path",{d:"M2.7 10.3a2.41 2.41 0 0 0 0 3.41l7.59 7.59a2.41 2.41 0 0 0 3.41 0l7.59-7.59a2.41 2.41 0 0 0 0-3.41L13.7 2.71a2.41 2.41 0 0 0-3.41 0z",key:"1ey20j"}],["path",{d:"M8 12h8",key:"1wcyev"}]]),xa=h("fast-forward",[["path",{d:"M12 6a2 2 0 0 1 3.414-1.414l6 6a2 2 0 0 1 0 2.828l-6 6A2 2 0 0 1 12 18z",key:"b19h5q"}],["path",{d:"M2 6a2 2 0 0 1 3.414-1.414l6 6a2 2 0 0 1 0 2.828l-6 6A2 2 0 0 1 2 18z",key:"h7h5ge"}]]),wa=h("files",[["path",{d:"M15 2h-4a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V8",key:"14sh0y"}],["path",{d:"M16.706 2.706A2.4 2.4 0 0 0 15 2v5a1 1 0 0 0 1 1h5a2.4 2.4 0 0 0-.706-1.706z",key:"1970lx"}],["path",{d:"M5 7a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 1.732-1",key:"l4dndm"}]]),ga=h("keyboard",[["path",{d:"M10 8h.01",key:"1r9ogq"}],["path",{d:"M12 12h.01",key:"1mp3jc"}],["path",{d:"M14 8h.01",key:"1primd"}],["path",{d:"M16 12h.01",key:"1l6xoz"}],["path",{d:"M18 8h.01",key:"emo2bl"}],["path",{d:"M6 8h.01",key:"x9i8wu"}],["path",{d:"M7 16h10",key:"wp8him"}],["path",{d:"M8 12h.01",key:"czm47f"}],["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}]]),Re=h("layout-template",[["rect",{width:"18",height:"7",x:"3",y:"3",rx:"1",key:"f1a2em"}],["rect",{width:"9",height:"7",x:"3",y:"14",rx:"1",key:"jqznyg"}],["rect",{width:"5",height:"7",x:"16",y:"14",rx:"1",key:"q5h2i8"}]]),ja=h("list",[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]]),va=h("notebook",[["path",{d:"M2 6h4",key:"aawbzj"}],["path",{d:"M2 10h4",key:"l0bgd4"}],["path",{d:"M2 14h4",key:"1gsvsf"}],["path",{d:"M2 18h4",key:"1bu2t1"}],["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",key:"1nb95v"}],["path",{d:"M16 2v20",key:"rotuqe"}]]),Ca=h("panel-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]]),Be=h("presentation",[["path",{d:"M2 3h20",key:"91anmk"}],["path",{d:"M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3",key:"2k9sn8"}],["path",{d:"m7 21 5-5 5 5",key:"bip4we"}]]),za=h("share-2",[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]]),Ma=h("square-power",[["path",{d:"M12 7v4",key:"xawao1"}],["path",{d:"M7.998 9.003a5 5 0 1 0 8-.005",key:"1pek45"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}]]),Fe=h("undo-2",[["path",{d:"M9 14 4 9l5-5",key:"102s5s"}],["path",{d:"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11",key:"f3b9sd"}]]),Oe=_(),ye=we(et(),1),a=we(vt(),1),Z="https://static.marimo.app";const Wa=e=>{let t=(0,Oe.c)(25),{onClose:n}=e,[o,s]=(0,ye.useState)(""),{exportAsHTML:r}=H(),l=`${o}-${Math.random().toString(36).slice(2,6)}`,i=`${Z}/static/${l}`,d;t[0]!==r||t[1]!==n||t[2]!==l?(d=async v=>{v.preventDefault(),n();let P=await r({download:!1,includeCode:!0,files:zt.INSTANCE.filenames()}),z=C({title:"Uploading static notebook...",description:"Please wait."});await fetch(`${Z}/api/static`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({html:P,path:l})}).catch(()=>{z.dismiss(),C({title:"Error uploading static page",description:(0,a.jsxs)("div",{children:["Please try again later. If the problem persists, please file a bug report on"," ",(0,a.jsx)("a",{href:A.issuesPage,target:"_blank",className:"underline",children:"GitHub"}),"."]})})}),z.dismiss(),C({title:"Static page uploaded!",description:(0,a.jsxs)("div",{children:["The URL has been copied to your clipboard.",(0,a.jsx)("br",{}),"You can share it with anyone."]})})},t[0]=r,t[1]=n,t[2]=l,t[3]=d):d=t[3];let m;t[4]===Symbol.for("react.memo_cache_sentinel")?(m=(0,a.jsx)(sa,{children:"Share static notebook"}),t[4]=m):m=t[4];let w;t[5]===Symbol.for("react.memo_cache_sentinel")?(w=(0,a.jsxs)(ia,{children:[m,(0,a.jsxs)(da,{children:["You can publish a static, non-interactive version of this notebook to the public web. We will create a link for you that lives on"," ",(0,a.jsx)("a",{href:Z,target:"_blank",children:Z}),"."]})]}),t[5]=w):w=t[5];let g;t[6]===Symbol.for("react.memo_cache_sentinel")?(g=v=>{s(v.target.value.toLowerCase().replaceAll(/\s/g,"-").replaceAll(/[^\da-z-]/g,""))},t[6]=g):g=t[6];let u;t[7]===o?u=t[8]:(u=(0,a.jsx)(Yt,{"data-testid":"slug-input",id:"slug",autoFocus:!0,value:o,placeholder:"Notebook slug",onChange:g,required:!0,autoComplete:"off"}),t[7]=o,t[8]=u);let f;t[9]===i?f=t[10]:(f=(0,a.jsxs)("div",{className:"font-semibold text-sm text-muted-foreground gap-2 flex flex-col",children:["Anyone will be able to access your notebook at this URL:",(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(Sa,{text:i}),(0,a.jsx)("span",{className:"text-primary",children:i})]})]}),t[9]=i,t[10]=f);let y;t[11]!==u||t[12]!==f?(y=(0,a.jsxs)("div",{className:"flex flex-col gap-6 py-4",children:[u,f]}),t[11]=u,t[12]=f,t[13]=y):y=t[13];let k;t[14]===n?k=t[15]:(k=(0,a.jsx)(pe,{"data-testid":"cancel-share-static-notebook-button",variant:"secondary",onClick:n,children:"Cancel"}),t[14]=n,t[15]=k);let b;t[16]===i?b=t[17]:(b=(0,a.jsx)(pe,{"data-testid":"share-static-notebook-button","aria-label":"Save",variant:"default",type:"submit",onClick:async()=>{await X(i)},children:"Create"}),t[16]=i,t[17]=b);let x;t[18]!==k||t[19]!==b?(x=(0,a.jsxs)(la,{children:[k,b]}),t[18]=k,t[19]=b,t[20]=x):x=t[20];let j;return t[21]!==d||t[22]!==x||t[23]!==y?(j=(0,a.jsx)(ra,{className:"w-fit",children:(0,a.jsxs)("form",{onSubmit:d,children:[w,y,x]})}),t[21]=d,t[22]=x,t[23]=y,t[24]=j):j=t[24],j};var Sa=e=>{let t=(0,Oe.c)(8),[n,o]=ye.useState(!1),s;t[0]===e.text?s=t[1]:(s=Ct.stopPropagation(async m=>{m.preventDefault(),await X(e.text),o(!0),setTimeout(()=>o(!1),2e3)}),t[0]=e.text,t[1]=s);let r=s,l;t[2]===Symbol.for("react.memo_cache_sentinel")?(l=(0,a.jsx)(Nt,{size:14,strokeWidth:1.5}),t[2]=l):l=t[2];let i;t[3]===r?i=t[4]:(i=(0,a.jsx)(pe,{"data-testid":"copy-static-notebook-url-button",onClick:r,size:"xs",variant:"secondary",children:l}),t[3]=r,t[4]=i);let d;return t[5]!==n||t[6]!==i?(d=(0,a.jsx)(oa,{content:"Copied!",open:n,children:i}),t[5]=n,t[6]=i,t[7]=d):d=t[7],d},Da=_();function _a(){let e=document.getElementsByClassName(We.outputArea);for(let t of e){let n=t.getBoundingClientRect();if(n.bottom>0&&n.top<window.innerHeight){let o=ce.findElement(t);if(!o){T.warn("Could not find HTMLCellId for visible output area",t);continue}return{cellId:ce.parse(o.id)}}}return T.warn("No visible output area found for scroll anchor"),null}function Aa(e){if(!e){T.warn("No scroll anchor provided to restore scroll position");return}let t=document.getElementById(ce.create(e.cellId));if(!t){T.warn("Could not find cell element to restore scroll position",e.cellId);return}if(!t.querySelector(`.${We.outputArea}`)){T.warn("Could not find output area to restore scroll position",e.cellId);return}t.scrollIntoView({block:"start",behavior:"auto"})}function Ve(){let e=(0,Da.c)(2),t=L(je),n;return e[0]===t?n=e[1]:(n=()=>{let o=_a();t(s=>({mode:ut(s.mode),cellAnchor:(o==null?void 0:o.cellId)??null})),requestAnimationFrame(()=>{requestAnimationFrame(()=>{Aa(o)})})},e[0]=t,e[1]=n),n}const Ye=Qe(!1);var Na=_();const Pa=()=>{let e=(0,Na.c)(7),{selectedLayout:t}=Se(),{setLayoutView:n}=De();if(he()&&!at("wasm_layouts"))return null;let o;e[0]===n?o=e[1]:(o=i=>n(i),e[0]=n,e[1]=o);let s;e[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,a.jsx)(ta,{className:"min-w-[110px] border-border bg-background","data-testid":"layout-select",children:(0,a.jsx)(Xt,{placeholder:"Select a view"})}),e[2]=s):s=e[2];let r;e[3]===Symbol.for("react.memo_cache_sentinel")?(r=(0,a.jsx)(Qt,{children:(0,a.jsxs)(ea,{children:[(0,a.jsx)(Jt,{children:"View as"}),Le.map(Ea)]})}),e[3]=r):r=e[3];let l;return e[4]!==t||e[5]!==o?(l=(0,a.jsxs)(aa,{"data-testid":"layout-select",value:t,onValueChange:o,children:[s,r]}),e[4]=t,e[5]=o,e[6]=l):l=e[6],l};function Ia(e){return(0,a.jsx)(Ke(e),{className:"h-4 w-4"})}function Ke(e){switch(e){case"vertical":return ja;case"grid":return qt;case"slides":return Be;default:return yt(e),Ft}}function Ue(e){return Ce(e)}function Ea(e){return(0,a.jsx)(Zt,{value:e,children:(0,a.jsxs)("div",{className:"flex items-center gap-1.5 leading-5",children:[Ia(e),(0,a.jsx)("span",{children:Ue(e)})]})},e)}async function La(e){let{filename:t,preset:n,downloadPDF:o}=e;await o({filename:t,webpdf:!1,preset:n,includeInputs:!0,rasterServer:"static"})}var Ta=_();function Ha(e){let t=(0,Ta.c)(5),{openPrompt:n,closeModal:o}=fe(),{sendCopy:s}=H(),r;return t[0]!==o||t[1]!==n||t[2]!==s||t[3]!==e?(r=()=>{if(!e)return null;let l=Gt.guessDeliminator(e);n({title:"Copy notebook",description:"Enter a new filename for the notebook copy.",defaultValue:`_${Ie.basename(e)}`,confirmText:"Copy notebook",spellCheck:!1,onConfirm:i=>{let d=l.join(Ie.dirname(e),i);s({source:e,destination:d}).then(()=>{o(),C({title:"Notebook copied",description:"A copy of the notebook has been created."}),fa(d)})}})},t[0]=o,t[1]=n,t[2]=s,t[3]=e,t[4]=r):r=t[4],r}const qa=()=>{let{updateCellConfig:e}=ge(),{saveCellConfig:t}=H();return(0,ye.useCallback)(async()=>{let n=new ot,o=ve(),s=o.cellIds.inOrderIds,r={};for(let i of s){if(o.cellData[i]===void 0)continue;let{code:d,config:m}=o.cellData[i];m.hide_code||n.isSupported(d)&&(r[i]={hide_code:!0})}let l=Me.entries(r);if(l.length!==0){await t({configs:r});for(let[i,d]of l)e({cellId:i,config:d})}},[e])};var Ra=_();function Ge(){let e=(0,Ra.c)(4),{openConfirm:t}=fe(),n=L(gt),{sendRestart:o}=H(),s;return e[0]!==t||e[1]!==o||e[2]!==n?(s=()=>{t({title:"Restart Kernel",description:"This will restart the Python kernel. You'll lose all data that's in memory. You will also lose any unsaved changes, so make sure to save your work before restarting.",variant:"destructive",confirmAction:(0,a.jsx)(na,{onClick:async()=>{n({state:jt.CLOSING}),await o(),ca()},"aria-label":"Confirm Restart",children:"Restart"})})},e[0]=t,e[1]=o,e[2]=n,e[3]=s):s=e[3],s}var Ba=_(),N=e=>{e==null||e.preventDefault(),e==null||e.stopPropagation()};function Fa(){var be,xe;let e=(0,Ba.c)(51),t=pa(),{openModal:n,closeModal:o}=fe(),{toggleApplication:s}=ft(),{selectedPanel:r}=it(),[l]=Ze(je),i=de(dt),d=qa(),[m]=wt(),{updateCellConfig:w,undoDeleteCell:g,clearAllCellOutputs:u,addSetupCellIfDoesntExist:f,collapseAllCells:y,expandAllCells:k}=ge(),b=Ge(),x=ht(),j=Ha(t),v=L(Ye),P=L(bt),z=L(xt),{exportAsIPYNB:ee,exportAsMarkdown:te,readCode:I,saveCellConfig:ae,updateCellOutputs:M}=H(),W=ya(),oe=de(st),ne=de(mt),{selectedLayout:q}=Se(),{setLayoutView:ie}=De(),R=Ve(),B=((be=m.sharing)==null?void 0:be.html)??!0,F=((xe=m.sharing)==null?void 0:xe.wasm)??!0,ke=!he(),se=q==="slides",$e=so,Je=io,O;e[0]!==t||e[1]!==W||e[2]!==M?(O=async c=>{let{preset:p,title:E}=c;if(!t){Q();return}await Pe(E,async re=>{await Ee({takeScreenshots:()=>W({progress:re}),updateCellOutputs:M}),await La({filename:t,preset:p,downloadPDF:Wt})})},e[0]=t,e[1]=W,e[2]=M,e[3]=O):O=e[3];let S=O,V;e[4]===S?V=e[5]:(V=async()=>{if(ke){await S({preset:"document",title:"Downloading Document PDF..."});return}let c=new Event("export-beforeprint"),p=new Event("export-afterprint");window.dispatchEvent(c),setTimeout(no,0),setTimeout(()=>window.dispatchEvent(p),0)},e[4]=S,e[5]=V);let Y=V,K;e[6]!==ee||e[7]!==t||e[8]!==W||e[9]!==M?(K=async()=>{if(!t){Q();return}await Pe("Downloading IPYNB...",async c=>{await Ee({takeScreenshots:()=>W({progress:c}),updateCellOutputs:M});let p=await ee({download:!1});ue(new Blob([p],{type:"application/x-ipynb+json"}),me.toIPYNB(document.title))})},e[6]=ee,e[7]=t,e[8]=W,e[9]=M,e[10]=K):K=e[10];let le=K,U;e[11]===Symbol.for("react.memo_cache_sentinel")?(U=(0,a.jsx)(Pt,{size:14,strokeWidth:1.5}),e[11]=U):U=e[11];let G;e[12]===Symbol.for("react.memo_cache_sentinel")?(G=(0,a.jsx)(_e,{size:14,strokeWidth:1.5}),e[12]=G):G=e[12];let D;e[13]===t?D=e[14]:(D=async()=>{if(!t){Q();return}await Ae({filename:t,includeCode:!0})},e[13]=t,e[14]=D);let $;return e[15]!==f||e[16]!==ne||e[17]!==u||e[18]!==o||e[19]!==y||e[20]!==j||e[21]!==S||e[22]!==k||e[23]!==te||e[24]!==t||e[25]!==Y||e[26]!==le||e[27]!==oe||e[28]!==d||e[29]!==se||e[30]!==i||e[31]!==n||e[32]!==I||e[33]!==b||e[34]!==x||e[35]!==ae||e[36]!==q||e[37]!==r||e[38]!==v||e[39]!==z||e[40]!==ie||e[41]!==P||e[42]!==B||e[43]!==F||e[44]!==D||e[45]!==s||e[46]!==R||e[47]!==g||e[48]!==w||e[49]!==l.mode?($=[{icon:U,label:"Download",handle:N,dropdown:[{icon:G,label:"Download as HTML",handle:D},{icon:(0,a.jsx)(_e,{size:14,strokeWidth:1.5}),label:"Download as HTML (exclude code)",handle:async()=>{if(!t){Q();return}await Ae({filename:t,includeCode:!1})}},{icon:(0,a.jsx)(ua,{strokeWidth:1.5,style:{width:14,height:14}}),label:"Download as Markdown",handle:async()=>{let c=await te({download:!1});ue(new Blob([c],{type:"text/plain"}),me.toMarkdown(document.title))}},{icon:(0,a.jsx)(va,{size:14,strokeWidth:1.5}),label:"Download as ipynb",handle:le},{icon:(0,a.jsx)(Mt,{size:14,strokeWidth:1.5}),label:"Download Python code",handle:async()=>{let c=await I();ue(new Blob([c.contents],{type:"text/plain"}),me.toPY(document.title))}},{divider:!0,icon:(0,a.jsx)(Ot,{size:14,strokeWidth:1.5}),label:"Download as PNG",disabled:l.mode!=="present",tooltip:l.mode==="present"?void 0:(0,a.jsxs)("span",{children:["Only available in app view. ",(0,a.jsx)("br",{}),"Toggle with: ",ma("global.hideCode",!1)]}),handle:oo},se?{divider:!0,icon:(0,a.jsx)(J,{size:14,strokeWidth:1.5}),label:"Download as PDF",handle:N,dropdown:[{icon:(0,a.jsx)(J,{size:14,strokeWidth:1.5}),label:"Document Layout",handle:Y},{icon:(0,a.jsx)(J,{size:14,strokeWidth:1.5}),label:"Slides Layout",rightElement:Je(!0),hidden:!ke,handle:async()=>{await S({preset:"slides",title:"Downloading Slides PDF..."})}}]}:{divider:!0,icon:(0,a.jsx)(J,{size:14,strokeWidth:1.5}),label:"Download as PDF",handle:Y}]},{icon:(0,a.jsx)(za,{size:14,strokeWidth:1.5}),label:"Share",handle:N,hidden:!B&&!F,dropdown:[{icon:(0,a.jsx)(Tt,{size:14,strokeWidth:1.5}),label:"Publish HTML to web",hidden:!B,handle:async()=>{n((0,a.jsx)(Wa,{onClose:o}))}},{icon:(0,a.jsx)(Vt,{size:14,strokeWidth:1.5}),label:"Create WebAssembly link",hidden:!F,handle:async()=>{await X(ha({code:(await I()).contents})),C({title:"Copied",description:"Link copied to clipboard."})}}]},{icon:(0,a.jsx)(Ca,{size:14,strokeWidth:1.5}),label:"Helper panel",redundant:!0,handle:N,dropdown:tt.flatMap(c=>{let{type:p,Icon:E,hidden:re,additionalKeywords:Xe}=c;return re?[]:{label:Ce(p),rightElement:$e(r===p),icon:(0,a.jsx)(E,{size:14,strokeWidth:1.5}),handle:()=>s(p),additionalKeywords:Xe}})},{icon:(0,a.jsx)(Be,{size:14,strokeWidth:1.5}),label:"Present as",handle:N,dropdown:[{icon:l.mode==="present"?(0,a.jsx)(Ut,{size:14,strokeWidth:1.5}):(0,a.jsx)(Re,{size:14,strokeWidth:1.5}),label:"Toggle app view",hotkey:"global.hideCode",handle:()=>{R()}},...Le.map((c,p)=>{let E=Ke(c);return{divider:p===0,label:Ue(c),icon:(0,a.jsx)(E,{size:14,strokeWidth:1.5}),rightElement:(0,a.jsx)("div",{className:"w-8 flex justify-end",children:q===c&&(0,a.jsx)(Ne,{size:14})}),handle:()=>{ie(c),l.mode==="edit"&&R()}}})]},{icon:(0,a.jsx)(wa,{size:14,strokeWidth:1.5}),label:"Duplicate notebook",hidden:!t||he(),handle:j},{icon:(0,a.jsx)(Te,{size:14,strokeWidth:1.5}),label:"Copy code to clipboard",hidden:!t,handle:async()=>{await X((await I()).contents),C({title:"Copied",description:"Code copied to clipboard."})}},{icon:(0,a.jsx)(At,{size:14,strokeWidth:1.5}),label:"Enable all cells",hidden:!oe||i,handle:async()=>{let c=nt(ve());await ae({configs:Me.fromEntries(c.map(ao))});for(let p of c)w({cellId:p,config:{disabled:!1}})}},{divider:!0,icon:(0,a.jsx)(qe,{size:14,strokeWidth:1.5}),label:"Add setup cell",handle:()=>{f({})}},{icon:(0,a.jsx)(lt,{size:14,strokeWidth:1.5}),label:"Add database connection",handle:()=>{n((0,a.jsx)(ze,{onClose:o}))}},{icon:(0,a.jsx)(kt,{size:14,strokeWidth:1.5}),label:"Add remote storage",handle:()=>{n((0,a.jsx)(ze,{defaultTab:"storage",onClose:o}))}},{icon:(0,a.jsx)(Fe,{size:14,strokeWidth:1.5}),label:"Undo cell deletion",hidden:!ne||i,handle:()=>{g()}},{icon:(0,a.jsx)(Ma,{size:14,strokeWidth:1.5}),label:"Restart kernel",variant:"danger",handle:b,additionalKeywords:["reset","reload","restart"]},{icon:(0,a.jsx)(xa,{size:14,strokeWidth:1.5}),label:"Re-run all cells",redundant:!0,hotkey:"global.runAll",handle:async()=>{x()}},{icon:(0,a.jsx)(rt,{size:14,strokeWidth:1.5}),label:"Clear all outputs",redundant:!0,handle:()=>{u()}},{icon:(0,a.jsx)(It,{size:14,strokeWidth:1.5}),label:"Hide all markdown code",handle:d,redundant:!0},{icon:(0,a.jsx)(ba,{size:14,strokeWidth:1.5}),label:"Collapse all sections",hotkey:"global.collapseAllSections",handle:y,redundant:!0},{icon:(0,a.jsx)(ka,{size:14,strokeWidth:1.5}),label:"Expand all sections",hotkey:"global.expandAllSections",handle:k,redundant:!0},{divider:!0,icon:(0,a.jsx)(He,{size:14,strokeWidth:1.5}),label:"Command palette",hotkey:"global.commandPalette",handle:()=>v(to)},{icon:(0,a.jsx)(ga,{size:14,strokeWidth:1.5}),label:"Keyboard shortcuts",hotkey:"global.showHelp",handle:()=>z(eo)},{icon:(0,a.jsx)(Kt,{size:14,strokeWidth:1.5}),label:"User settings",handle:()=>P(Qa),redundant:!0,additionalKeywords:["preferences","options","configuration"]},{icon:(0,a.jsx)(_t,{size:14,strokeWidth:1.5}),label:"Resources",handle:N,dropdown:[{icon:(0,a.jsx)(ct,{size:14,strokeWidth:1.5}),label:"Documentation",handle:Za},{icon:(0,a.jsx)(Lt,{size:14,strokeWidth:1.5}),label:"GitHub",handle:Xa},{icon:(0,a.jsx)(Ht,{size:14,strokeWidth:1.5}),label:"Discord Community",handle:Ja},{icon:(0,a.jsx)(Rt,{size:14,strokeWidth:1.5}),label:"YouTube",handle:$a},{icon:(0,a.jsx)(pt,{size:14,strokeWidth:1.5}),label:"Changelog",handle:Ga}]},{divider:!0,icon:(0,a.jsx)(Bt,{size:14,strokeWidth:1.5}),label:"Return home",hidden:!location.search.includes("file"),handle:Ua},{icon:(0,a.jsx)(Et,{size:14,strokeWidth:1.5}),label:"New notebook",hidden:!location.search.includes("file"),handle:Ka}].filter(Ya).map(Oa),e[15]=f,e[16]=ne,e[17]=u,e[18]=o,e[19]=y,e[20]=j,e[21]=S,e[22]=k,e[23]=te,e[24]=t,e[25]=Y,e[26]=le,e[27]=oe,e[28]=d,e[29]=se,e[30]=i,e[31]=n,e[32]=I,e[33]=b,e[34]=x,e[35]=ae,e[36]=q,e[37]=r,e[38]=v,e[39]=z,e[40]=ie,e[41]=P,e[42]=B,e[43]=F,e[44]=D,e[45]=s,e[46]=R,e[47]=g,e[48]=w,e[49]=l.mode,e[50]=$):$=e[50],$}function Oa(e){return e.dropdown?{...e,dropdown:e.dropdown.filter(Va)}:e}function Va(e){return!e.hidden}function Ya(e){return!e.hidden}function Ka(){let e=$t();window.open(e,"_blank")}function Ua(){let e=document.baseURI.split("?")[0];window.open(e,"_self")}function Ga(){window.open(A.releasesPage,"_blank")}function $a(){window.open(A.youtube,"_blank")}function Ja(){window.open(A.discordLink,"_blank")}function Xa(){window.open(A.githubPage,"_blank")}function Za(){window.open(A.docsPage,"_blank")}function Qa(e){return!e}function eo(e){return!e}function to(e){return!e}function ao(e){return[e,{disabled:!1}]}async function oo(){let e=document.getElementById("App");e&&await St({element:e,filename:document.title,prepare:Dt})}function no(){return window.print()}function io(e){return e?(0,a.jsx)("span",{className:"ml-3 shrink-0 rounded-full border border-emerald-200 bg-emerald-50 px-2 py-0.5 text-[10px] font-semibold uppercase tracking-wide text-emerald-700",children:"Recommended"}):null}function so(e){return(0,a.jsx)("div",{className:"w-8 flex justify-end",children:e&&(0,a.jsx)(Ne,{size:14})})}function Q(){C({title:"Error",description:"Notebooks must be named to be exported.",variant:"danger"})}export{Ve as a,qe as c,Ye as i,He as l,Ge as n,Fe as o,Pa as r,Re as s,Fa as t,Te as u};
|
|
1
|
+
import{s as we}from"./chunk-LvLJmgfZ.js";import{d as L,l as Ze,p as Qe,u as de}from"./useEvent-O0nX5vok.js";import{t as et}from"./react-Bj1aDYRI.js";import{Cn as tt,En as at,Gt as ot,Nr as nt,Sn as it,T as ge,_ as st,ar as lt,cr as rt,dt as je,h as ve,lt as dt,pr as ct,pt as ht,rr as pt,t as mt,ut,vi as ce,xn as ft}from"./cells-5wegzPD4.js";import{t as _}from"./compiler-runtime-B3qBwwSJ.js";import{n as yt}from"./assertNever-CTRGz-ul.js";import{s as Ce}from"./useLifecycle-CWjBWFMI.js";import{i as kt,n as ze}from"./add-connection-dialog-DVxfAULb.js";import{n as bt,x as xt}from"./ai-model-dropdown-DJn8Mf6B.js";import{c as Me,m as T}from"./useEventListener-BGihH8bs.js";import{y as wt}from"./utils-HIU-NsEv.js";import{n as A,t as We}from"./constants-Rz_lD4HK.js";import{S as he,h as gt,x as jt}from"./config-RexwtI0U.js";import{t as vt}from"./jsx-runtime-icT_Ltz2.js";import{r as Ct,t as pe}from"./button-BZAv3veu.js";import{r as H}from"./requests-Bgjtqo_1.js";import{t as h}from"./createLucideIcon-Cm-Z7dYr.js";import{a as Se,f as zt,i as De,m as Mt,p as _e,u as Ae}from"./layout-CpSNosnt.js";import{t as Ne}from"./check-BE0hEwVo.js";import{c as Pe,d as me,n as Wt,o as St,r as ue,t as Dt}from"./download-B8XlLSji.js";import{f as _t}from"./maps-CqKCrVZ8.js";import{r as At}from"./useCellActionButton-DPHJ31aq.js";import{t as Nt}from"./copy-CkudG0Ej.js";import{t as Pt}from"./download-DBW9RXtT.js";import{t as It}from"./eye-off-vwi9L975.js";import{t as Et}from"./file-plus-corner-lLQw9OnR.js";import{t as J}from"./file-DzHkbIdO.js";import{t as Lt}from"./github-BVtI-3F1.js";import{m as Tt}from"./form-p9cBnWwo.js";import{n as Ht,r as qt,t as Rt}from"./youtube-DE-Ej6FR.js";import{n as Bt,t as Ft}from"./square-CxAsQQ77.js";import{t as Ot}from"./image-DXfkah9d.js";import{t as Vt}from"./link-Cf10mh3t.js";import{r as Yt}from"./input-C5eatTLl.js";import{t as Kt}from"./settings-CzQUw9rV.js";import{x as Ut}from"./azure-a3T26UGw.js";import{t as C}from"./use-toast-Hc8CXlvz.js";import{n as Ie,t as Gt}from"./paths-D2lG83Oh.js";import{o as $t}from"./session-CXChHxAw.js";import{a as Jt,c as Xt,i as Zt,n as Qt,r as ea,s as ta,t as aa}from"./select-Ch6m1k2G.js";import{t as oa}from"./tooltip-CNmaER6z.js";import{o as na}from"./alert-dialog-DbQ_TZC7.js";import{a as ia,c as sa,i as la,n as ra,r as da}from"./dialog-DCGn-_Ip.js";import{n as fe}from"./ImperativeModal-b5nJtLod.js";import{r as ca,t as ha}from"./share-DdWa0mV7.js";import{t as X}from"./copy-f2iEg0yL.js";import{a as pa}from"./cell-link-C9qZWgbj.js";import{a as ma}from"./renderShortcut-BSq2vc9J.js";import{t as ua}from"./icons-T5yQRjuT.js";import{t as fa}from"./links-XdsYEk97.js";import{r as ya,t as Ee}from"./hooks-WmIIm80L.js";import{t as Le}from"./types-DBNA0l6L.js";var ka=h("circle-chevron-down",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16 10-4 4-4-4",key:"894hmk"}]]),ba=h("circle-chevron-right",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m10 8 4 4-4 4",key:"1wy4r4"}]]),Te=h("clipboard-copy",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]]),He=h("command",[["path",{d:"M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3",key:"11bfej"}]]),qe=h("diamond-plus",[["path",{d:"M12 8v8",key:"napkw2"}],["path",{d:"M2.7 10.3a2.41 2.41 0 0 0 0 3.41l7.59 7.59a2.41 2.41 0 0 0 3.41 0l7.59-7.59a2.41 2.41 0 0 0 0-3.41L13.7 2.71a2.41 2.41 0 0 0-3.41 0z",key:"1ey20j"}],["path",{d:"M8 12h8",key:"1wcyev"}]]),xa=h("fast-forward",[["path",{d:"M12 6a2 2 0 0 1 3.414-1.414l6 6a2 2 0 0 1 0 2.828l-6 6A2 2 0 0 1 12 18z",key:"b19h5q"}],["path",{d:"M2 6a2 2 0 0 1 3.414-1.414l6 6a2 2 0 0 1 0 2.828l-6 6A2 2 0 0 1 2 18z",key:"h7h5ge"}]]),wa=h("files",[["path",{d:"M15 2h-4a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V8",key:"14sh0y"}],["path",{d:"M16.706 2.706A2.4 2.4 0 0 0 15 2v5a1 1 0 0 0 1 1h5a2.4 2.4 0 0 0-.706-1.706z",key:"1970lx"}],["path",{d:"M5 7a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 1.732-1",key:"l4dndm"}]]),ga=h("keyboard",[["path",{d:"M10 8h.01",key:"1r9ogq"}],["path",{d:"M12 12h.01",key:"1mp3jc"}],["path",{d:"M14 8h.01",key:"1primd"}],["path",{d:"M16 12h.01",key:"1l6xoz"}],["path",{d:"M18 8h.01",key:"emo2bl"}],["path",{d:"M6 8h.01",key:"x9i8wu"}],["path",{d:"M7 16h10",key:"wp8him"}],["path",{d:"M8 12h.01",key:"czm47f"}],["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}]]),Re=h("layout-template",[["rect",{width:"18",height:"7",x:"3",y:"3",rx:"1",key:"f1a2em"}],["rect",{width:"9",height:"7",x:"3",y:"14",rx:"1",key:"jqznyg"}],["rect",{width:"5",height:"7",x:"16",y:"14",rx:"1",key:"q5h2i8"}]]),ja=h("list",[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]]),va=h("notebook",[["path",{d:"M2 6h4",key:"aawbzj"}],["path",{d:"M2 10h4",key:"l0bgd4"}],["path",{d:"M2 14h4",key:"1gsvsf"}],["path",{d:"M2 18h4",key:"1bu2t1"}],["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",key:"1nb95v"}],["path",{d:"M16 2v20",key:"rotuqe"}]]),Ca=h("panel-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]]),Be=h("presentation",[["path",{d:"M2 3h20",key:"91anmk"}],["path",{d:"M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3",key:"2k9sn8"}],["path",{d:"m7 21 5-5 5 5",key:"bip4we"}]]),za=h("share-2",[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]]),Ma=h("square-power",[["path",{d:"M12 7v4",key:"xawao1"}],["path",{d:"M7.998 9.003a5 5 0 1 0 8-.005",key:"1pek45"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}]]),Fe=h("undo-2",[["path",{d:"M9 14 4 9l5-5",key:"102s5s"}],["path",{d:"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11",key:"f3b9sd"}]]),Oe=_(),ye=we(et(),1),a=we(vt(),1),Z="https://static.marimo.app";const Wa=e=>{let t=(0,Oe.c)(25),{onClose:n}=e,[o,s]=(0,ye.useState)(""),{exportAsHTML:r}=H(),l=`${o}-${Math.random().toString(36).slice(2,6)}`,i=`${Z}/static/${l}`,d;t[0]!==r||t[1]!==n||t[2]!==l?(d=async v=>{v.preventDefault(),n();let P=await r({download:!1,includeCode:!0,files:zt.INSTANCE.filenames()}),z=C({title:"Uploading static notebook...",description:"Please wait."});await fetch(`${Z}/api/static`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({html:P,path:l})}).catch(()=>{z.dismiss(),C({title:"Error uploading static page",description:(0,a.jsxs)("div",{children:["Please try again later. If the problem persists, please file a bug report on"," ",(0,a.jsx)("a",{href:A.issuesPage,target:"_blank",className:"underline",children:"GitHub"}),"."]})})}),z.dismiss(),C({title:"Static page uploaded!",description:(0,a.jsxs)("div",{children:["The URL has been copied to your clipboard.",(0,a.jsx)("br",{}),"You can share it with anyone."]})})},t[0]=r,t[1]=n,t[2]=l,t[3]=d):d=t[3];let m;t[4]===Symbol.for("react.memo_cache_sentinel")?(m=(0,a.jsx)(sa,{children:"Share static notebook"}),t[4]=m):m=t[4];let w;t[5]===Symbol.for("react.memo_cache_sentinel")?(w=(0,a.jsxs)(ia,{children:[m,(0,a.jsxs)(da,{children:["You can publish a static, non-interactive version of this notebook to the public web. We will create a link for you that lives on"," ",(0,a.jsx)("a",{href:Z,target:"_blank",children:Z}),"."]})]}),t[5]=w):w=t[5];let g;t[6]===Symbol.for("react.memo_cache_sentinel")?(g=v=>{s(v.target.value.toLowerCase().replaceAll(/\s/g,"-").replaceAll(/[^\da-z-]/g,""))},t[6]=g):g=t[6];let u;t[7]===o?u=t[8]:(u=(0,a.jsx)(Yt,{"data-testid":"slug-input",id:"slug",autoFocus:!0,value:o,placeholder:"Notebook slug",onChange:g,required:!0,autoComplete:"off"}),t[7]=o,t[8]=u);let f;t[9]===i?f=t[10]:(f=(0,a.jsxs)("div",{className:"font-semibold text-sm text-muted-foreground gap-2 flex flex-col",children:["Anyone will be able to access your notebook at this URL:",(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(Sa,{text:i}),(0,a.jsx)("span",{className:"text-primary",children:i})]})]}),t[9]=i,t[10]=f);let y;t[11]!==u||t[12]!==f?(y=(0,a.jsxs)("div",{className:"flex flex-col gap-6 py-4",children:[u,f]}),t[11]=u,t[12]=f,t[13]=y):y=t[13];let k;t[14]===n?k=t[15]:(k=(0,a.jsx)(pe,{"data-testid":"cancel-share-static-notebook-button",variant:"secondary",onClick:n,children:"Cancel"}),t[14]=n,t[15]=k);let b;t[16]===i?b=t[17]:(b=(0,a.jsx)(pe,{"data-testid":"share-static-notebook-button","aria-label":"Save",variant:"default",type:"submit",onClick:async()=>{await X(i)},children:"Create"}),t[16]=i,t[17]=b);let x;t[18]!==k||t[19]!==b?(x=(0,a.jsxs)(la,{children:[k,b]}),t[18]=k,t[19]=b,t[20]=x):x=t[20];let j;return t[21]!==d||t[22]!==x||t[23]!==y?(j=(0,a.jsx)(ra,{className:"w-fit",children:(0,a.jsxs)("form",{onSubmit:d,children:[w,y,x]})}),t[21]=d,t[22]=x,t[23]=y,t[24]=j):j=t[24],j};var Sa=e=>{let t=(0,Oe.c)(8),[n,o]=ye.useState(!1),s;t[0]===e.text?s=t[1]:(s=Ct.stopPropagation(async m=>{m.preventDefault(),await X(e.text),o(!0),setTimeout(()=>o(!1),2e3)}),t[0]=e.text,t[1]=s);let r=s,l;t[2]===Symbol.for("react.memo_cache_sentinel")?(l=(0,a.jsx)(Nt,{size:14,strokeWidth:1.5}),t[2]=l):l=t[2];let i;t[3]===r?i=t[4]:(i=(0,a.jsx)(pe,{"data-testid":"copy-static-notebook-url-button",onClick:r,size:"xs",variant:"secondary",children:l}),t[3]=r,t[4]=i);let d;return t[5]!==n||t[6]!==i?(d=(0,a.jsx)(oa,{content:"Copied!",open:n,children:i}),t[5]=n,t[6]=i,t[7]=d):d=t[7],d},Da=_();function _a(){let e=document.getElementsByClassName(We.outputArea);for(let t of e){let n=t.getBoundingClientRect();if(n.bottom>0&&n.top<window.innerHeight){let o=ce.findElement(t);if(!o){T.warn("Could not find HTMLCellId for visible output area",t);continue}return{cellId:ce.parse(o.id)}}}return T.warn("No visible output area found for scroll anchor"),null}function Aa(e){if(!e){T.warn("No scroll anchor provided to restore scroll position");return}let t=document.getElementById(ce.create(e.cellId));if(!t){T.warn("Could not find cell element to restore scroll position",e.cellId);return}if(!t.querySelector(`.${We.outputArea}`)){T.warn("Could not find output area to restore scroll position",e.cellId);return}t.scrollIntoView({block:"start",behavior:"auto"})}function Ve(){let e=(0,Da.c)(2),t=L(je),n;return e[0]===t?n=e[1]:(n=()=>{let o=_a();t(s=>({mode:ut(s.mode),cellAnchor:(o==null?void 0:o.cellId)??null})),requestAnimationFrame(()=>{requestAnimationFrame(()=>{Aa(o)})})},e[0]=t,e[1]=n),n}const Ye=Qe(!1);var Na=_();const Pa=()=>{let e=(0,Na.c)(7),{selectedLayout:t}=Se(),{setLayoutView:n}=De();if(he()&&!at("wasm_layouts"))return null;let o;e[0]===n?o=e[1]:(o=i=>n(i),e[0]=n,e[1]=o);let s;e[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,a.jsx)(ta,{className:"min-w-[110px] border-border bg-background","data-testid":"layout-select",children:(0,a.jsx)(Xt,{placeholder:"Select a view"})}),e[2]=s):s=e[2];let r;e[3]===Symbol.for("react.memo_cache_sentinel")?(r=(0,a.jsx)(Qt,{children:(0,a.jsxs)(ea,{children:[(0,a.jsx)(Jt,{children:"View as"}),Le.map(Ea)]})}),e[3]=r):r=e[3];let l;return e[4]!==t||e[5]!==o?(l=(0,a.jsxs)(aa,{"data-testid":"layout-select",value:t,onValueChange:o,children:[s,r]}),e[4]=t,e[5]=o,e[6]=l):l=e[6],l};function Ia(e){return(0,a.jsx)(Ke(e),{className:"h-4 w-4"})}function Ke(e){switch(e){case"vertical":return ja;case"grid":return qt;case"slides":return Be;default:return yt(e),Ft}}function Ue(e){return Ce(e)}function Ea(e){return(0,a.jsx)(Zt,{value:e,children:(0,a.jsxs)("div",{className:"flex items-center gap-1.5 leading-5",children:[Ia(e),(0,a.jsx)("span",{children:Ue(e)})]})},e)}async function La(e){let{filename:t,preset:n,downloadPDF:o}=e;await o({filename:t,webpdf:!1,preset:n,includeInputs:!0,rasterServer:"static"})}var Ta=_();function Ha(e){let t=(0,Ta.c)(5),{openPrompt:n,closeModal:o}=fe(),{sendCopy:s}=H(),r;return t[0]!==o||t[1]!==n||t[2]!==s||t[3]!==e?(r=()=>{if(!e)return null;let l=Gt.guessDeliminator(e);n({title:"Copy notebook",description:"Enter a new filename for the notebook copy.",defaultValue:`_${Ie.basename(e)}`,confirmText:"Copy notebook",spellCheck:!1,onConfirm:i=>{let d=l.join(Ie.dirname(e),i);s({source:e,destination:d}).then(()=>{o(),C({title:"Notebook copied",description:"A copy of the notebook has been created."}),fa(d)})}})},t[0]=o,t[1]=n,t[2]=s,t[3]=e,t[4]=r):r=t[4],r}const qa=()=>{let{updateCellConfig:e}=ge(),{saveCellConfig:t}=H();return(0,ye.useCallback)(async()=>{let n=new ot,o=ve(),s=o.cellIds.inOrderIds,r={};for(let i of s){if(o.cellData[i]===void 0)continue;let{code:d,config:m}=o.cellData[i];m.hide_code||n.isSupported(d)&&(r[i]={hide_code:!0})}let l=Me.entries(r);if(l.length!==0){await t({configs:r});for(let[i,d]of l)e({cellId:i,config:d})}},[e])};var Ra=_();function Ge(){let e=(0,Ra.c)(4),{openConfirm:t}=fe(),n=L(gt),{sendRestart:o}=H(),s;return e[0]!==t||e[1]!==o||e[2]!==n?(s=()=>{t({title:"Restart Kernel",description:"This will restart the Python kernel. You'll lose all data that's in memory. You will also lose any unsaved changes, so make sure to save your work before restarting.",variant:"destructive",confirmAction:(0,a.jsx)(na,{onClick:async()=>{n({state:jt.CLOSING}),await o(),ca()},"aria-label":"Confirm Restart",children:"Restart"})})},e[0]=t,e[1]=o,e[2]=n,e[3]=s):s=e[3],s}var Ba=_(),N=e=>{e==null||e.preventDefault(),e==null||e.stopPropagation()};function Fa(){var be,xe;let e=(0,Ba.c)(51),t=pa(),{openModal:n,closeModal:o}=fe(),{toggleApplication:s}=ft(),{selectedPanel:r}=it(),[l]=Ze(je),i=de(dt),d=qa(),[m]=wt(),{updateCellConfig:w,undoDeleteCell:g,clearAllCellOutputs:u,addSetupCellIfDoesntExist:f,collapseAllCells:y,expandAllCells:k}=ge(),b=Ge(),x=ht(),j=Ha(t),v=L(Ye),P=L(bt),z=L(xt),{exportAsIPYNB:ee,exportAsMarkdown:te,readCode:I,saveCellConfig:ae,updateCellOutputs:M}=H(),W=ya(),oe=de(st),ne=de(mt),{selectedLayout:q}=Se(),{setLayoutView:ie}=De(),R=Ve(),B=((be=m.sharing)==null?void 0:be.html)??!0,F=((xe=m.sharing)==null?void 0:xe.wasm)??!0,ke=!he(),se=q==="slides",$e=so,Je=io,O;e[0]!==t||e[1]!==W||e[2]!==M?(O=async c=>{let{preset:p,title:E}=c;if(!t){Q();return}await Pe(E,async re=>{await Ee({takeScreenshots:()=>W({progress:re}),updateCellOutputs:M}),await La({filename:t,preset:p,downloadPDF:Wt})})},e[0]=t,e[1]=W,e[2]=M,e[3]=O):O=e[3];let S=O,V;e[4]===S?V=e[5]:(V=async()=>{if(ke){await S({preset:"document",title:"Downloading Document PDF..."});return}let c=new Event("export-beforeprint"),p=new Event("export-afterprint");window.dispatchEvent(c),setTimeout(no,0),setTimeout(()=>window.dispatchEvent(p),0)},e[4]=S,e[5]=V);let Y=V,K;e[6]!==ee||e[7]!==t||e[8]!==W||e[9]!==M?(K=async()=>{if(!t){Q();return}await Pe("Downloading IPYNB...",async c=>{await Ee({takeScreenshots:()=>W({progress:c}),updateCellOutputs:M});let p=await ee({download:!1});ue(new Blob([p],{type:"application/x-ipynb+json"}),me.toIPYNB(document.title))})},e[6]=ee,e[7]=t,e[8]=W,e[9]=M,e[10]=K):K=e[10];let le=K,U;e[11]===Symbol.for("react.memo_cache_sentinel")?(U=(0,a.jsx)(Pt,{size:14,strokeWidth:1.5}),e[11]=U):U=e[11];let G;e[12]===Symbol.for("react.memo_cache_sentinel")?(G=(0,a.jsx)(_e,{size:14,strokeWidth:1.5}),e[12]=G):G=e[12];let D;e[13]===t?D=e[14]:(D=async()=>{if(!t){Q();return}await Ae({filename:t,includeCode:!0})},e[13]=t,e[14]=D);let $;return e[15]!==f||e[16]!==ne||e[17]!==u||e[18]!==o||e[19]!==y||e[20]!==j||e[21]!==S||e[22]!==k||e[23]!==te||e[24]!==t||e[25]!==Y||e[26]!==le||e[27]!==oe||e[28]!==d||e[29]!==se||e[30]!==i||e[31]!==n||e[32]!==I||e[33]!==b||e[34]!==x||e[35]!==ae||e[36]!==q||e[37]!==r||e[38]!==v||e[39]!==z||e[40]!==ie||e[41]!==P||e[42]!==B||e[43]!==F||e[44]!==D||e[45]!==s||e[46]!==R||e[47]!==g||e[48]!==w||e[49]!==l.mode?($=[{icon:U,label:"Download",handle:N,dropdown:[{icon:G,label:"Download as HTML",handle:D},{icon:(0,a.jsx)(_e,{size:14,strokeWidth:1.5}),label:"Download as HTML (exclude code)",handle:async()=>{if(!t){Q();return}await Ae({filename:t,includeCode:!1})}},{icon:(0,a.jsx)(ua,{strokeWidth:1.5,style:{width:14,height:14}}),label:"Download as Markdown",handle:async()=>{let c=await te({download:!1});ue(new Blob([c],{type:"text/plain"}),me.toMarkdown(document.title))}},{icon:(0,a.jsx)(va,{size:14,strokeWidth:1.5}),label:"Download as ipynb",handle:le},{icon:(0,a.jsx)(Mt,{size:14,strokeWidth:1.5}),label:"Download Python code",handle:async()=>{let c=await I();ue(new Blob([c.contents],{type:"text/plain"}),me.toPY(document.title))}},{divider:!0,icon:(0,a.jsx)(Ot,{size:14,strokeWidth:1.5}),label:"Download as PNG",disabled:l.mode!=="present",tooltip:l.mode==="present"?void 0:(0,a.jsxs)("span",{children:["Only available in app view. ",(0,a.jsx)("br",{}),"Toggle with: ",ma("global.hideCode",!1)]}),handle:oo},se?{divider:!0,icon:(0,a.jsx)(J,{size:14,strokeWidth:1.5}),label:"Download as PDF",handle:N,dropdown:[{icon:(0,a.jsx)(J,{size:14,strokeWidth:1.5}),label:"Document Layout",handle:Y},{icon:(0,a.jsx)(J,{size:14,strokeWidth:1.5}),label:"Slides Layout",rightElement:Je(!0),hidden:!ke,handle:async()=>{await S({preset:"slides",title:"Downloading Slides PDF..."})}}]}:{divider:!0,icon:(0,a.jsx)(J,{size:14,strokeWidth:1.5}),label:"Download as PDF",handle:Y}]},{icon:(0,a.jsx)(za,{size:14,strokeWidth:1.5}),label:"Share",handle:N,hidden:!B&&!F,dropdown:[{icon:(0,a.jsx)(Tt,{size:14,strokeWidth:1.5}),label:"Publish HTML to web",hidden:!B,handle:async()=>{n((0,a.jsx)(Wa,{onClose:o}))}},{icon:(0,a.jsx)(Vt,{size:14,strokeWidth:1.5}),label:"Create WebAssembly link",hidden:!F,handle:async()=>{await X(ha({code:(await I()).contents})),C({title:"Copied",description:"Link copied to clipboard."})}}]},{icon:(0,a.jsx)(Ca,{size:14,strokeWidth:1.5}),label:"Helper panel",redundant:!0,handle:N,dropdown:tt.flatMap(c=>{let{type:p,Icon:E,hidden:re,additionalKeywords:Xe}=c;return re?[]:{label:Ce(p),rightElement:$e(r===p),icon:(0,a.jsx)(E,{size:14,strokeWidth:1.5}),handle:()=>s(p),additionalKeywords:Xe}})},{icon:(0,a.jsx)(Be,{size:14,strokeWidth:1.5}),label:"Present as",handle:N,dropdown:[{icon:l.mode==="present"?(0,a.jsx)(Ut,{size:14,strokeWidth:1.5}):(0,a.jsx)(Re,{size:14,strokeWidth:1.5}),label:"Toggle app view",hotkey:"global.hideCode",handle:()=>{R()}},...Le.map((c,p)=>{let E=Ke(c);return{divider:p===0,label:Ue(c),icon:(0,a.jsx)(E,{size:14,strokeWidth:1.5}),rightElement:(0,a.jsx)("div",{className:"w-8 flex justify-end",children:q===c&&(0,a.jsx)(Ne,{size:14})}),handle:()=>{ie(c),l.mode==="edit"&&R()}}})]},{icon:(0,a.jsx)(wa,{size:14,strokeWidth:1.5}),label:"Duplicate notebook",hidden:!t||he(),handle:j},{icon:(0,a.jsx)(Te,{size:14,strokeWidth:1.5}),label:"Copy code to clipboard",hidden:!t,handle:async()=>{await X((await I()).contents),C({title:"Copied",description:"Code copied to clipboard."})}},{icon:(0,a.jsx)(At,{size:14,strokeWidth:1.5}),label:"Enable all cells",hidden:!oe||i,handle:async()=>{let c=nt(ve());await ae({configs:Me.fromEntries(c.map(ao))});for(let p of c)w({cellId:p,config:{disabled:!1}})}},{divider:!0,icon:(0,a.jsx)(qe,{size:14,strokeWidth:1.5}),label:"Add setup cell",handle:()=>{f({})}},{icon:(0,a.jsx)(lt,{size:14,strokeWidth:1.5}),label:"Add database connection",handle:()=>{n((0,a.jsx)(ze,{onClose:o}))}},{icon:(0,a.jsx)(kt,{size:14,strokeWidth:1.5}),label:"Add remote storage",handle:()=>{n((0,a.jsx)(ze,{defaultTab:"storage",onClose:o}))}},{icon:(0,a.jsx)(Fe,{size:14,strokeWidth:1.5}),label:"Undo cell deletion",hidden:!ne||i,handle:()=>{g()}},{icon:(0,a.jsx)(Ma,{size:14,strokeWidth:1.5}),label:"Restart kernel",variant:"danger",handle:b,additionalKeywords:["reset","reload","restart"]},{icon:(0,a.jsx)(xa,{size:14,strokeWidth:1.5}),label:"Re-run all cells",redundant:!0,hotkey:"global.runAll",handle:async()=>{x()}},{icon:(0,a.jsx)(rt,{size:14,strokeWidth:1.5}),label:"Clear all outputs",redundant:!0,handle:()=>{u()}},{icon:(0,a.jsx)(It,{size:14,strokeWidth:1.5}),label:"Hide all markdown code",handle:d,redundant:!0},{icon:(0,a.jsx)(ba,{size:14,strokeWidth:1.5}),label:"Collapse all sections",hotkey:"global.collapseAllSections",handle:y,redundant:!0},{icon:(0,a.jsx)(ka,{size:14,strokeWidth:1.5}),label:"Expand all sections",hotkey:"global.expandAllSections",handle:k,redundant:!0},{divider:!0,icon:(0,a.jsx)(He,{size:14,strokeWidth:1.5}),label:"Command palette",hotkey:"global.commandPalette",handle:()=>v(to)},{icon:(0,a.jsx)(ga,{size:14,strokeWidth:1.5}),label:"Keyboard shortcuts",hotkey:"global.showHelp",handle:()=>z(eo)},{icon:(0,a.jsx)(Kt,{size:14,strokeWidth:1.5}),label:"User settings",handle:()=>P(Qa),redundant:!0,additionalKeywords:["preferences","options","configuration"]},{icon:(0,a.jsx)(_t,{size:14,strokeWidth:1.5}),label:"Resources",handle:N,dropdown:[{icon:(0,a.jsx)(ct,{size:14,strokeWidth:1.5}),label:"Documentation",handle:Za},{icon:(0,a.jsx)(Lt,{size:14,strokeWidth:1.5}),label:"GitHub",handle:Xa},{icon:(0,a.jsx)(Ht,{size:14,strokeWidth:1.5}),label:"Discord Community",handle:Ja},{icon:(0,a.jsx)(Rt,{size:14,strokeWidth:1.5}),label:"YouTube",handle:$a},{icon:(0,a.jsx)(pt,{size:14,strokeWidth:1.5}),label:"Changelog",handle:Ga}]},{divider:!0,icon:(0,a.jsx)(Bt,{size:14,strokeWidth:1.5}),label:"Return home",hidden:!location.search.includes("file"),handle:Ua},{icon:(0,a.jsx)(Et,{size:14,strokeWidth:1.5}),label:"New notebook",hidden:!location.search.includes("file"),handle:Ka}].filter(Ya).map(Oa),e[15]=f,e[16]=ne,e[17]=u,e[18]=o,e[19]=y,e[20]=j,e[21]=S,e[22]=k,e[23]=te,e[24]=t,e[25]=Y,e[26]=le,e[27]=oe,e[28]=d,e[29]=se,e[30]=i,e[31]=n,e[32]=I,e[33]=b,e[34]=x,e[35]=ae,e[36]=q,e[37]=r,e[38]=v,e[39]=z,e[40]=ie,e[41]=P,e[42]=B,e[43]=F,e[44]=D,e[45]=s,e[46]=R,e[47]=g,e[48]=w,e[49]=l.mode,e[50]=$):$=e[50],$}function Oa(e){return e.dropdown?{...e,dropdown:e.dropdown.filter(Va)}:e}function Va(e){return!e.hidden}function Ya(e){return!e.hidden}function Ka(){let e=$t();window.open(e,"_blank")}function Ua(){let e=document.baseURI.split("?")[0];window.open(e,"_self")}function Ga(){window.open(A.releasesPage,"_blank")}function $a(){window.open(A.youtube,"_blank")}function Ja(){window.open(A.discordLink,"_blank")}function Xa(){window.open(A.githubPage,"_blank")}function Za(){window.open(A.docsPage,"_blank")}function Qa(e){return!e}function eo(e){return!e}function to(e){return!e}function ao(e){return[e,{disabled:!1}]}async function oo(){let e=document.getElementById("App");e&&await St({element:e,filename:document.title,prepare:Dt})}function no(){return window.print()}function io(e){return e?(0,a.jsx)("span",{className:"ml-3 shrink-0 rounded-full border border-emerald-200 bg-emerald-50 px-2 py-0.5 text-[10px] font-semibold uppercase tracking-wide text-emerald-700",children:"Recommended"}):null}function so(e){return(0,a.jsx)("div",{className:"w-8 flex justify-end",children:e&&(0,a.jsx)(Ne,{size:14})})}function Q(){C({title:"Error",description:"Notebooks must be named to be exported.",variant:"danger"})}export{Ve as a,qe as c,Ye as i,He as l,Ge as n,Fe as o,Pa as r,Re as s,Fa as t,Te as u};
|
package/dist/index.html
CHANGED
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
<marimo-server-token data-token="{{ server_token }}" hidden></marimo-server-token>
|
|
67
67
|
<!-- /TODO -->
|
|
68
68
|
<title>{{ title }}</title>
|
|
69
|
-
<script type="module" crossorigin src="./assets/index-
|
|
69
|
+
<script type="module" crossorigin src="./assets/index-B6j3GjGF.js"></script>
|
|
70
70
|
<link rel="modulepreload" crossorigin href="./assets/preload-helper-BW0IMuFq.js">
|
|
71
71
|
<link rel="modulepreload" crossorigin href="./assets/clsx-BDxNtGmi.js">
|
|
72
72
|
<link rel="modulepreload" crossorigin href="./assets/cn-BoaCR37F.js">
|
package/package.json
CHANGED
|
@@ -37,6 +37,8 @@ export const AddConnectionDialogContent: React.FC<{
|
|
|
37
37
|
defaultTab?: ConnectionTab;
|
|
38
38
|
onClose: () => void;
|
|
39
39
|
}> = ({ defaultTab = "databases", onClose }) => {
|
|
40
|
+
const [activeTab, setActiveTab] = useState<ConnectionTab>(defaultTab);
|
|
41
|
+
|
|
40
42
|
const tabHeader = (
|
|
41
43
|
<TabsList className="w-full mb-4">
|
|
42
44
|
<TabsTrigger value="databases" className="flex-1">
|
|
@@ -48,6 +50,25 @@ export const AddConnectionDialogContent: React.FC<{
|
|
|
48
50
|
</TabsList>
|
|
49
51
|
);
|
|
50
52
|
|
|
53
|
+
const codeSnippetHint =
|
|
54
|
+
activeTab === "databases" ? (
|
|
55
|
+
<>
|
|
56
|
+
Don't see your database or connection method? A{" "}
|
|
57
|
+
<ExternalLink href="https://docs.marimo.io/guides/working_with_data/sql/#connecting-to-a-custom-database">
|
|
58
|
+
code snippet
|
|
59
|
+
</ExternalLink>{" "}
|
|
60
|
+
is all you need.
|
|
61
|
+
</>
|
|
62
|
+
) : (
|
|
63
|
+
<>
|
|
64
|
+
Don't see your storage or connection method? A{" "}
|
|
65
|
+
<ExternalLink href="https://docs.marimo.io/guides/working_with_data/remote_storage/#creating-a-storage-connection">
|
|
66
|
+
code snippet
|
|
67
|
+
</ExternalLink>{" "}
|
|
68
|
+
is all you need.
|
|
69
|
+
</>
|
|
70
|
+
);
|
|
71
|
+
|
|
51
72
|
return (
|
|
52
73
|
<DialogContent className="max-h-[75vh] overflow-y-auto">
|
|
53
74
|
<DialogHeader>
|
|
@@ -61,10 +82,14 @@ export const AddConnectionDialogContent: React.FC<{
|
|
|
61
82
|
<ExternalLink href="https://docs.marimo.io/guides/working_with_data/remote_storage/">
|
|
62
83
|
remote storage
|
|
63
84
|
</ExternalLink>{" "}
|
|
64
|
-
|
|
85
|
+
directly from your notebook.
|
|
86
|
+
<span className="block">{codeSnippetHint}</span>
|
|
65
87
|
</DialogDescription>
|
|
66
88
|
</DialogHeader>
|
|
67
|
-
<Tabs
|
|
89
|
+
<Tabs
|
|
90
|
+
value={activeTab}
|
|
91
|
+
onValueChange={(v) => setActiveTab(v as ConnectionTab)}
|
|
92
|
+
>
|
|
68
93
|
<TabsContent
|
|
69
94
|
value="databases"
|
|
70
95
|
className="mt-0 focus-visible:ring-0 focus-visible:ring-offset-0"
|