@marimo-team/frontend 0.23.14-dev15 → 0.23.14-dev17
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/{JsonOutput-B3xvHnzm.js → JsonOutput-CkXJwn8J.js} +16 -16
- package/dist/assets/{add-connection-dialog-eFUDnHSy.js → add-connection-dialog--pz-XpsT.js} +1 -1
- package/dist/assets/{agent-panel-BGCbua1N.js → agent-panel-DY1YEHWw.js} +1 -1
- package/dist/assets/{cell-editor-_AISMwze.js → cell-editor-BnUCBSjC.js} +10 -10
- package/dist/assets/{column-preview-CRLyhWfr.js → column-preview-Bg3hDGJD.js} +1 -1
- package/dist/assets/{command-palette-CURV9AtB.js → command-palette-BbdDofd1.js} +1 -1
- package/dist/assets/{edit-page-Cd-kRjle.js → edit-page-LQnB3t-T.js} +5 -5
- package/dist/assets/{file-explorer-panel-BDDhE9ga.js → file-explorer-panel-DMwNb6Bg.js} +1 -1
- package/dist/assets/{form-DLyKzVpg.js → form-CQTcitBT.js} +2 -2
- package/dist/assets/{hooks-Dcm9QPMI.js → hooks-ckvJhsKD.js} +1 -1
- package/dist/assets/index-DqUQke09.js +38 -0
- package/dist/assets/{layout-Cy69mJ4R.js → layout-BQlueWdU.js} +5 -5
- package/dist/assets/{panels-D1nMzvUE.js → panels-CJMr5_0N.js} +1 -1
- package/dist/assets/{reveal-component-Bd93re9J.js → reveal-component-CNQCJm8q.js} +1 -1
- package/dist/assets/{run-page-CHEVBMSK.js → run-page-XJQF29mv.js} +1 -1
- package/dist/assets/{scratchpad-panel-Yk9GKgbH.js → scratchpad-panel-9LuOS7Lm.js} +1 -1
- package/dist/assets/session-panel-D1SRta-0.js +1 -0
- package/dist/assets/{useNotebookActions-D1WisUZZ.js → useNotebookActions-Dh4T1ZtI.js} +1 -1
- package/dist/index.html +4 -4
- package/package.json +1 -1
- package/src/components/data-table/__tests__/column-explorer.test.tsx +25 -0
- package/src/components/data-table/__tests__/column-visibility-dropdown.test.tsx +60 -3
- package/src/components/data-table/column-explorer-panel/column-explorer.tsx +33 -12
- package/src/components/data-table/column-visibility-dropdown.tsx +15 -0
- package/dist/assets/index-CB7HgmZd.js +0 -38
- package/dist/assets/session-panel-BoVyS6Gh.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as ge}from"./chunk-LvLJmgfZ.js";import{d as je,l as ye,p as ve,u as W}from"./useEvent-D91BmmQi.js";import{t as Xe}from"./react-Bj1aDYRI.js";import{Bn as Ye,D as Ze,Fr as oe,Gr as ea,Gt as aa,Hr as Ne,Ir as we,Jr as Se,Kr as ta,Kt as sa,Li as _e,Ln as Ce,Lr as Ie,M as la,Mr as na,P as ra,Qr as ke,Rn as oa,Rr as ca,Ur as ce,Vr as me,Yr as ma,Zr as ia,_r as da,a as ha,br as ua,cr as xa,f as pa,jt as fa,qr as ba,qt as ga,sr as ja,ur as ya,xr as ie,yn as va,zr as Na,zt as wa}from"./cells-B7YKR2ed.js";import"./react-dom-CSu739Rf.js";import{t as Pe}from"./compiler-runtime-B3qBwwSJ.js";import{c as Sa}from"./utils-Dev6I_Kv.js";import{t as _a}from"./ErrorBoundary-Bo313Z9X.js";import{t as X}from"./cn-X2M2usMq.js";import{t as Ca}from"./jsx-runtime-PbYoItBR.js";import"./fullscreen-BXI8V5i6.js";import{r as Ia}from"./config-DMNo9K-z.js";import"./popover-DMNO6Poc.js";import{$ as Te,Q as de,et as ka,f as Fe,g as $e,h as he,m as ue,nt as Pa,p as le,rt as Ta,tt as Fa,u as $a}from"./JsonOutput-B3xvHnzm.js";import"./download-DiInTgPW.js";import{r as Re}from"./radio-group-CGYJUACh.js";import{t as xe}from"./tooltip-CgQpRVyN.js";import{r as Ra,t as ne}from"./button-BF7GSjhW.js";import"./dist-Dez1I5M9.js";import{u as Y}from"./arrays-DWxvyYxP.js";import"./cjs-DXo9vDEJ.js";import"./main-DmhaVp6Y.js";import"./useNonce-0SWz6w4W.js";import{i as Da}from"./strings-DvZlHYnD.js";import{r as Va}from"./requests-KshNNAOp.js";import{t as qa}from"./createLucideIcon-BTp1tQDO.js";import{t as La}from"./x-9vLEgLY6.js";import{a as Ma,r as Ba}from"./tree-actions-CRyQHv6h.js";import"./markdown-renderer-C-Xg_eay.js";import{t as De}from"./add-connection-dialog-eFUDnHSy.js";import{t as Ve}from"./plus-ZXRHY1up.js";import{a as Ea}from"./input-DB2LiTiQ.js";import{n as Oa,o as Ua}from"./column-preview-CRLyhWfr.js";import{t as za}from"./workflow-f8flhcJ1.js";import"./dist-DblYTes5.js";import"./dist-D-2yWcX9.js";import"./dist-CNKFZCiw.js";import"./dist-ZjSH4Z6x.js";import"./dist-BtrqKtvn.js";import"./session-CsT5Gg9j.js";import"./purify.es-DfJp_of2.js";import"./dates-D8uxHHPL.js";import{t as Aa}from"./copy-icon-EHMT-qlr.js";import{t as Ga}from"./context-C2Ie4tn_.js";import"./utils-DPvpQ891.js";import"./vega-loader.browser-CZV6_g2i.js";import"./defaultLocale-OkOxlkkM.js";import"./defaultLocale-DK1MWd7f.js";import{t as qe}from"./cell-link-DO4acQD0.js";import"./chunk-5FQGJX7Z-DcW-_LxK.js";import{r as Ha}from"./html-to-image-C_aIFrkD.js";import{o as Ka}from"./focus-M6_Axyyu.js";import{n as pe}from"./useAsyncData-DAQcLiyE.js";import{a as Ja,i as Qa,n as Wa,o as Le,r as Xa,t as Ya}from"./table-CnW850Wt.js";import"./react-resizable-panels.browser.esm-Ce2ksurd.js";import{a as Za,f as et,o as re,t as at}from"./command-DRHbYHUP.js";import{n as tt}from"./icons-avFV3lBF.js";import{t as st}from"./useDeepCompareMemoize-CWcgQCbT.js";import{t as lt}from"./empty-state-QmmE2oN4.js";import{n as nt,t as rt}from"./common-DDyT57dI.js";import{a as ot,i as ct,n as Me,r as Be,t as Ee}from"./components-CCxUdXt3.js";var mt=qa("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"}]]),A=Pe(),F=ge(Xe(),1),s=ge(Ca(),1),fe=1;function Oe(a){return 1.75+a*fe}function it(a){return 3+a*fe}function Ue(a){return 3.25+a*fe}var z={engineEmpty:.75,engine:.75,database:1,tableLoading:2.75,tableSchemaless:2,columnLocal:1.25,columnPreview:2.5};function E(a){return{paddingLeft:`${a}rem`}}var dt=ve(a=>{let e=a(Ie),t=a(Ye),l=a(ha);return Y(e,n=>{if(!n.variable_name)return-1;let i=Object.values(t).find(d=>d.name===n.variable_name);if(!i)return 0;let c=l.inOrderIds.indexOf(i.declaredBy[0]);return c===-1?0:c})});const ht=_e("marimo:datasources:hideEmpty",!1,Ce,{getOnInit:!0});function ze(a){let e=!1,t=[];for(let l of a){if(!ce(l)||!me(l)){t.push(l);continue}let n=l.child_schemas??[],i=ze(n);if(l.tables.length===0&&i.length===0){e=!0;continue}if(i===n){t.push(l);continue}e=!0,t.push({...l,child_schemas:i})}return e?t:a}function ut(a){let e=!1,t=[];for(let l of a){if(Ne(l)&&l.schemas.length===0){e=!0;continue}if(l.schemas.length===0){t.push(l);continue}let n=ze(l.schemas);if(n.length===0){e=!0;continue}if(n===l.schemas){t.push(l);continue}e=!0,t.push({...l,schemas:n})}return e?t:a}const Ae=ve(a=>{let e=new Map(a(na));for(let t of ke){let l=e.get(t);l&&(l.databases.length===0&&e.delete(t),l.databases.length===1&&l.databases[0].name==="memory"&&l.databases[0].schemas.length===0&&e.delete(t))}return Y([...e.values()],t=>ke.has(t.name)?1:0)}),xt=()=>{let a=(0,A.c)(40),[e,t]=F.useState(""),[l,n]=ye(ht),i=je(we),c=W(dt),d=W(Ae),r;e:{if(!l){r=d;break e}let f,v;a[0]===d?(f=a[1],v=a[2]):(f=!1,v=d.map(C=>{let k=ut(C.databases);return k===C.databases?C:(f=!0,{...C,databases:k})}),a[0]=d,a[1]=f,a[2]=v),r=f?v:d}let x=r;if(c.length===0&&x.length===0){let f;return a[3]===Symbol.for("react.memo_cache_sentinel")?(f=(0,s.jsx)(lt,{title:"No tables found",description:"Any datasets/dataframes in the global scope will be shown here.",action:(0,s.jsx)(De,{children:(0,s.jsxs)(ne,{variant:"outline",size:"sm",children:["Add database or catalog",(0,s.jsx)(Ve,{className:"h-4 w-4 ml-2"})]})}),icon:(0,s.jsx)(ie,{})}),a[3]=f):f=a[3],f}let h=!!e.trim(),m;a[4]===i?m=a[5]:(m=f=>{i(f.length>0),t(f)},a[4]=i,a[5]=m);let o;a[6]!==e||a[7]!==m?(o=(0,s.jsx)(Za,{placeholder:"Search tables...",className:"h-6 m-1",value:e,onValueChange:m,rootClassName:"flex-1 border-r border-b-0"}),a[6]=e,a[7]=m,a[8]=o):o=a[8];let p;a[9]===h?p=a[10]:(p=h&&(0,s.jsx)("button",{type:"button",className:"float-right border-b px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",onClick:()=>t(""),children:(0,s.jsx)(La,{className:"h-4 w-4"})}),a[9]=h,a[10]=p);let S=!l,b;a[11]!==l||a[12]!==n?(b=()=>n(!l),a[11]=l,a[12]=n,a[13]=b):b=a[13];let N;a[14]!==S||a[15]!==b?(N=(0,s.jsx)(Ma,{"data-testid":"datasources-hide-empty-button",isVisible:S,onToggle:b,showTooltip:"Show empty schemas and databases",hideTooltip:"Hide empty schemas and databases",size:"sm",className:"px-2 rounded-none focus-visible:outline-hidden"}),a[14]=S,a[15]=b,a[16]=N):N=a[16];let y;a[17]===Symbol.for("react.memo_cache_sentinel")?(y=(0,s.jsx)(De,{children:(0,s.jsx)(ne,{variant:"ghost",size:"sm",className:"px-2 rounded-none focus-visible:outline-hidden",children:(0,s.jsx)(Ve,{className:"h-4 w-4"})})}),a[17]=y):y=a[17];let j;a[18]!==o||a[19]!==p||a[20]!==N?(j=(0,s.jsxs)("div",{className:"flex items-center w-full border-b",children:[o,p,N,y]}),a[18]=o,a[19]=p,a[20]=N,a[21]=j):j=a[21];let g;if(a[22]!==x||a[23]!==e){let f;a[25]===e?f=a[26]:(f=v=>(0,s.jsx)(pt,{connection:v,hasChildren:v.databases.length>0,children:v.databases.map(C=>(0,s.jsx)(ft,{connection:v,database:C,searchValue:e},C.name))},v.name),a[25]=e,a[26]=f),g=x.map(f),a[22]=x,a[23]=e,a[24]=g}else g=a[24];let w;a[27]!==x.length||a[28]!==c.length?(w=x.length>0&&c.length>0&&(0,s.jsxs)(Fe,{className:"pr-2",style:E(z.engine),children:[(0,s.jsx)(tt,{className:"h-4 w-4 text-muted-foreground"}),(0,s.jsx)("span",{className:"text-xs",children:"Python"})]}),a[27]=x.length,a[28]=c.length,a[29]=w):w=a[29];let u;a[30]!==e||a[31]!==c?(u=c.length>0&&(0,s.jsx)(be,{tables:c,searchValue:e}),a[30]=e,a[31]=c,a[32]=u):u=a[32];let _;a[33]!==w||a[34]!==u||a[35]!==g?(_=(0,s.jsxs)(et,{className:"flex flex-col",children:[g,w,u]}),a[33]=w,a[34]=u,a[35]=g,a[36]=_):_=a[36];let I;return a[37]!==_||a[38]!==j?(I=(0,s.jsxs)(at,{className:"border-b bg-background rounded-none h-full pb-10 overflow-auto outline-hidden",shouldFilter:!1,children:[j,_]}),a[37]=_,a[38]=j,a[39]=I):I=a[39],I};var pt=a=>{let e=(0,A.c)(26),{connection:t,children:l,hasChildren:n}=a,i=t.name===ia,c=i?"In-Memory":t.name,{previewDataSourceConnection:d}=Va(),r;e[0]!==t.name||e[1]!==d?(r=async()=>{await d({engine:t.name})},e[0]=t.name,e[1]=d,e[2]=r):r=e[2];let x=r,h;e[3]===Symbol.for("react.memo_cache_sentinel")?(h=E(z.engine),e[3]=h):h=e[3];let m;e[4]===t.dialect?m=e[5]:(m=(0,s.jsx)(fa,{className:"h-4 w-4 text-muted-foreground",name:t.dialect}),e[4]=t.dialect,e[5]=m);let o;e[6]===t.dialect?o=e[7]:(o=ja(t.dialect),e[6]=t.dialect,e[7]=o);let p;e[8]===o?p=e[9]:(p=(0,s.jsx)("span",{className:"text-xs",children:o}),e[8]=o,e[9]=p);let S=c,b;e[10]===S?b=e[11]:(b=(0,s.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",(0,s.jsx)(ot,{variableName:S}),")"]}),e[10]=S,e[11]=b);let N;e[12]!==x||e[13]!==i?(N=!i&&(0,s.jsx)(Ba,{onClick:x,tooltip:"Refresh connection",className:"ml-auto h-4 p-0",iconClassName:"h-3.5 w-3.5"}),e[12]=x,e[13]=i,e[14]=N):N=e[14];let y;e[15]!==m||e[16]!==p||e[17]!==b||e[18]!==N?(y=(0,s.jsxs)(Fe,{className:"pr-2",style:h,children:[m,p,b,N]}),e[15]=m,e[16]=p,e[17]=b,e[18]=N,e[19]=y):y=e[19];let j;e[20]!==l||e[21]!==n?(j=n?l:(0,s.jsx)(le,{content:"No databases available",style:E(z.engineEmpty)}),e[20]=l,e[21]=n,e[22]=j):j=e[22];let g;return e[23]!==j||e[24]!==y?(g=(0,s.jsxs)(s.Fragment,{children:[y,j]}),e[23]=j,e[24]=y,e[25]=g):g=e[25],g},Ge=F.createContext(null);function He(){let a=F.useContext(Ge);if(a==null)throw Error("useDataSourceTree must be used within a DataSourceTreeContext.Provider");return a}function Ke(a,{schema:e,schemaPath:t}){return{engine:a.engineName,database:a.databaseName,schema:e,schemaPath:t,defaultSchema:a.defaultSchema,defaultDatabase:a.defaultDatabase,dialect:a.dialect}}var ft=a=>{let e=(0,A.c)(21),{connection:t,database:l,searchValue:n}=a,i;e[0]!==t.default_database||e[1]!==t.default_schema||e[2]!==t.dialect||e[3]!==t.name||e[4]!==l.name||e[5]!==n?(i={engineName:t.name,databaseName:l.name,dialect:t.dialect,defaultSchema:t.default_schema,defaultDatabase:t.default_database,searchValue:n},e[0]=t.default_database,e[1]=t.default_schema,e[2]=t.dialect,e[3]=t.name,e[4]=l.name,e[5]=n,e[6]=i):i=e[6];let c=i,d=t.name,r=l.schemas,x;e[7]===l?x=e[8]:(x=Ne(l),e[7]=l,e[8]=x);let h;e[9]===Symbol.for("react.memo_cache_sentinel")?(h=[],e[9]=h):h=e[9];let m;e[10]!==l.schemas||e[11]!==x?(m=(0,s.jsx)(Je,{schemas:r,schemasResolved:x,schemaPath:h,depth:0}),e[10]=l.schemas,e[11]=x,e[12]=m):m=e[12];let o;e[13]!==m||e[14]!==c?(o=(0,s.jsx)(Ge.Provider,{value:c,children:m}),e[13]=m,e[14]=c,e[15]=o):o=e[15];let p;return e[16]!==t.name||e[17]!==l||e[18]!==n||e[19]!==o?(p=(0,s.jsx)(bt,{engineName:d,database:l,searchValue:n,children:o}),e[16]=t.name,e[17]=l,e[18]=n,e[19]=o,e[20]=p):p=e[20],p},bt=a=>{let e=(0,A.c)(29),{searchValue:t,engineName:l,database:n,children:i}=a,c;e[0]!==n||e[1]!==t?(c=ba(n,t),e[0]=n,e[1]=t,e[2]=c):c=e[2];let d=c,[r,x]=F.useState(d),[h,m]=F.useState(!1),[o,p]=F.useState(t),[S,b]=F.useState(d);(o!==t||S!==d)&&(p(t),b(d),x(d));let N;e[3]===Symbol.for("react.memo_cache_sentinel")?(N=E(z.database),e[3]=N):N=e[3];let y;e[4]!==r||e[5]!==h?(y=()=>{x(!r),m(!h)},e[4]=r,e[5]=h,e[6]=y):y=e[6];let j=`${l}:${n.name}`,g;e[7]===r?g=e[8]:(g=(0,s.jsx)($e,{isExpanded:r}),e[7]=r,e[8]=g);let w=h&&r?"text-foreground":"text-muted-foreground",u;e[9]===w?u=e[10]:(u=X("h-4 w-4",w),e[9]=w,e[10]=u);let _;e[11]===u?_=e[12]:(_=(0,s.jsx)(ie,{className:u}),e[11]=u,e[12]=_);let I=h&&r&&"font-semibold",f;e[13]===I?f=e[14]:(f=X(I),e[13]=I,e[14]=f);let v;e[15]===n.name?v=e[16]:(v=n.name===""?(0,s.jsx)("i",{children:"Not connected"}):n.name,e[15]=n.name,e[16]=v);let C;e[17]!==f||e[18]!==v?(C=(0,s.jsx)("span",{className:f,children:v}),e[17]=f,e[18]=v,e[19]=C):C=e[19];let k;e[20]!==C||e[21]!==y||e[22]!==j||e[23]!==g||e[24]!==_?(k=(0,s.jsxs)(re,{className:"text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",style:N,onSelect:y,value:j,children:[g,_,C]}),e[20]=C,e[21]=y,e[22]=j,e[23]=g,e[24]=_,e[25]=k):k=e[25];let P=r&&i,T;return e[26]!==k||e[27]!==P?(T=(0,s.jsxs)(s.Fragment,{children:[k,P]}),e[26]=k,e[27]=P,e[28]=T):T=e[28],T},Je=a=>{let{schemas:e,schemasResolved:t,depth:l}=a,n=He(),{engineName:i,databaseName:c,searchValue:d}=n,{addSchemaList:r}=oe(),x=st(a.schemaPath),[h,m]=F.useState(!1),{isPending:o,error:p}=pe(async()=>{if(!t&&i){m(!0);try{r({schemas:(await aa.request({engine:i,database:c,schemaPath:x})).schemas??[],sqlSchemaContext:{engine:i,database:c,schemaPath:x}})}finally{m(!1)}}},[t,i,c,x]),S=E(Oe(l));return o||h?(0,s.jsx)(he,{message:"Loading schemas...",style:S}):p?(0,s.jsx)(ue,{error:p,style:S}):e.length===0?(0,s.jsx)(le,{content:"No schemas available",style:S}):(0,s.jsx)(s.Fragment,{children:e.map(b=>ea(b.name)?(0,s.jsx)(be,{tables:b.tables,tablesResolved:ce(b),searchValue:d,sqlTableContext:Ke(n,{schema:b.name,schemaPath:x})},b.name):(0,s.jsx)(gt,{schema:b,schemaPath:[...x,b.name],depth:l},b.name))})},gt=a=>{let e=(0,A.c)(39),{schema:t,schemaPath:l,depth:n}=a,i=He(),{databaseName:c,searchValue:d}=i,r;e[0]!==t||e[1]!==d?(r=ta(t,d),e[0]=t,e[1]=d,e[2]=r):r=e[2];let x=r,[h,m]=F.useState(x),[o,p]=F.useState(!1),[S,b]=F.useState(d),[N,y]=F.useState(x),j=`${c}:${l.join(".")}`,g;e[3]===t.child_schemas?g=e[4]:(g=t.child_schemas??[],e[3]=t.child_schemas,e[4]=g);let w=g;(S!==d||N!==x)&&(b(d),y(x),m(x));let u;e[5]===n?u=e[6]:(u=E(Oe(n)),e[5]=n,e[6]=u);let _;e[7]!==h||e[8]!==o?(_=()=>{m(!h),p(!o)},e[7]=h,e[8]=o,e[9]=_):_=e[9];let I;e[10]===h?I=e[11]:(I=(0,s.jsx)($e,{isExpanded:h}),e[10]=h,e[11]=I);let f=o&&h&&"text-foreground",v;e[12]===f?v=e[13]:(v=X("h-4 w-4 text-muted-foreground",f),e[12]=f,e[13]=v);let C;e[14]===v?C=e[15]:(C=(0,s.jsx)(da,{className:v}),e[14]=v,e[15]=C);let k=o&&h&&"font-semibold",P;e[16]===k?P=e[17]:(P=X(k),e[16]=k,e[17]=P);let T;e[18]!==t.name||e[19]!==P?(T=(0,s.jsx)("span",{className:P,children:t.name}),e[18]=t.name,e[19]=P,e[20]=T):T=e[20];let R;e[21]!==T||e[22]!==u||e[23]!==_||e[24]!==I||e[25]!==C||e[26]!==j?(R=(0,s.jsxs)(re,{className:"text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",style:u,onSelect:_,value:j,children:[I,C,T]}),e[21]=T,e[22]=u,e[23]=_,e[24]=I,e[25]=C,e[26]=j,e[27]=R):R=e[27];let D;e[28]!==w||e[29]!==n||e[30]!==h||e[31]!==t||e[32]!==l||e[33]!==d||e[34]!==i?(D=h&&(0,s.jsxs)(s.Fragment,{children:[(w.length>0||!me(t))&&(0,s.jsx)(Je,{schemas:w,schemasResolved:me(t),schemaPath:l,depth:n+1}),(0,s.jsx)(be,{tables:t.tables,tablesResolved:ce(t),searchValue:d,tableIndentRem:it(n),columnIndentRem:Ue(n),sqlTableContext:Ke(i,{schema:t.name,schemaPath:l})})]}),e[28]=w,e[29]=n,e[30]=h,e[31]=t,e[32]=l,e[33]=d,e[34]=i,e[35]=D):D=e[35];let $;return e[36]!==R||e[37]!==D?($=(0,s.jsxs)(s.Fragment,{children:[R,D]}),e[36]=R,e[37]=D,e[38]=$):$=e[38],$},be=a=>{let e=(0,A.c)(31),{tables:t,sqlTableContext:l,searchValue:n,tablesResolved:i,tableIndentRem:c,columnIndentRem:d}=a,r=i===void 0?!0:i,{addTableList:x}=oe(),[h,m]=F.useState(!1),o;e[0]!==x||e[1]!==l||e[2]!==r?(o=async()=>{if(!r&&l){m(!0);let{engine:u,database:_,schema:I,schemaPath:f}=l,v=await ga.request({engine:u,database:_,schema:I,schemaPath:f??[]});if(!(v!=null&&v.tables))throw m(!1),Error("No tables available");x({tables:v.tables,sqlTableContext:l}),m(!1)}},e[0]=x,e[1]=l,e[2]=r,e[3]=o):o=e[3];let p;e[4]!==l||e[5]!==r?(p=[r,l],e[4]=l,e[5]=r,e[6]=p):p=e[6];let{isPending:S,error:b}=pe(o,p),N=c??z.tableLoading,y;e[7]===N?y=e[8]:(y=E(N),e[7]=N,e[8]=y);let j=y;if(S||h){let u;return e[9]===j?u=e[10]:(u=(0,s.jsx)(he,{message:"Loading tables...",style:j}),e[9]=j,e[10]=u),u}if(b){let u;return e[11]!==b||e[12]!==j?(u=(0,s.jsx)(ue,{error:b,style:j}),e[11]=b,e[12]=j,e[13]=u):u=e[13],u}if(t.length===0){let u;return e[14]===j?u=e[15]:(u=(0,s.jsx)(le,{content:"No tables found",style:j}),e[14]=j,e[15]=u),u}let g;if(e[16]!==d||e[17]!==n||e[18]!==l||e[19]!==c||e[20]!==t){let u;e[22]===n?u=e[23]:(u=f=>n?f.name.toLowerCase().includes(n.toLowerCase()):!0,e[22]=n,e[23]=u);let _=t.filter(u),I;e[24]!==d||e[25]!==n||e[26]!==l||e[27]!==c?(I=f=>(0,s.jsx)(jt,{table:f,sqlTableContext:l,isSearching:!!n,tableIndentRem:c,columnIndentRem:d},f.name),e[24]=d,e[25]=n,e[26]=l,e[27]=c,e[28]=I):I=e[28],g=_.map(I),e[16]=d,e[17]=n,e[18]=l,e[19]=c,e[20]=t,e[21]=g}else g=e[21];let w;return e[29]===g?w=e[30]:(w=(0,s.jsx)(s.Fragment,{children:g}),e[29]=g,e[30]=w),w},jt=a=>{let e=(0,A.c)(69),{table:t,sqlTableContext:l,isSearching:n,tableIndentRem:i,columnIndentRem:c}=a,{addTable:d}=oe(),[r,x]=F.useState(!1),h=t.columns.length>0,m;e[0]!==d||e[1]!==r||e[2]!==l||e[3]!==t.name||e[4]!==h?(m=async()=>{if(r&&!h&&l){let{engine:M,database:ae,schema:te,schemaPath:We}=l,se=await sa.request({engine:M,database:ae,schema:te,tableName:t.name,schemaPath:We??[]});if(!(se!=null&&se.table))throw Error("No table details available");d({table:se.table,sqlTableContext:l})}},e[0]=d,e[1]=r,e[2]=l,e[3]=t.name,e[4]=h,e[5]=m):m=e[5];let o;e[6]!==r||e[7]!==h?(o=[r,h],e[6]=r,e[7]=h,e[8]=o):o=e[8];let{isFetching:p,isPending:S,error:b}=pe(m,o),N=W(Sa),y=Ka(),{createNewCell:j}=Ze(),g=Re(),w;e[9]!==g||e[10]!==N||e[11]!==j||e[12]!==y||e[13]!==l||e[14]!==t?(w=()=>{Ha({autoInstantiate:N,createNewCell:j,fromCellId:y}),g((()=>{if(t.source_type==="catalog"){let M=l!=null&&l.database?[l.database,...l.schemaPath??[],t.name].join("."):t.name;return`${t.engine}.load_table("${M}")`}if(l)return Se({table:t,columnName:"*",sqlTableContext:l});switch(t.source_type){case"local":return`mo.ui.table(${t.name})`;case"duckdb":case"connection":return Se({table:t,columnName:"*",sqlTableContext:l});default:return Da(t.source_type),""}})())},e[9]=g,e[10]=N,e[11]=j,e[12]=y,e[13]=l,e[14]=t,e[15]=w):w=e[15];let u=w,_;e[16]!==t.num_columns||e[17]!==t.num_rows?(_=()=>{let M=[];return t.num_rows!=null&&M.push(`${t.num_rows} rows`),t.num_columns!=null&&M.push(`${t.num_columns} columns`),M.length===0?null:(0,s.jsx)("div",{className:"flex flex-row gap-2 items-center pl-6 group-hover:hidden",children:(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:M.join(", ")})})},e[16]=t.num_columns,e[17]=t.num_rows,e[18]=_):_=e[18];let I=_,f;e[19]!==c||e[20]!==b||e[21]!==p||e[22]!==S||e[23]!==l||e[24]!==t?(f=()=>{let M=E(c??z.tableLoading);if(S||p)return(0,s.jsx)(he,{message:"Loading columns...",style:M});if(b)return(0,s.jsx)(ue,{error:b,style:M});let ae=t.columns;return ae.length===0?(0,s.jsx)(le,{content:"No columns found",style:M}):ae.map(te=>(0,s.jsx)(yt,{table:t,column:te,sqlTableContext:l,columnIndentRem:c},te.name))},e[19]=c,e[20]=b,e[21]=p,e[22]=S,e[23]=l,e[24]=t,e[25]=f):f=e[25];let v=f,C;e[26]!==r||e[27]!==n||e[28]!==t.source_type||e[29]!==t.type?(C=()=>{if(t.source_type!=="local")return(0,s.jsx)(t.type==="table"?ya:ua,{className:"h-3 w-3",strokeWidth:r||n?2.5:void 0})},e[26]=r,e[27]=n,e[28]=t.source_type,e[29]=t.type,e[30]=C):C=e[30];let k=C,P;e[31]!==l||e[32]!==t.name?(P=ma(l,t.name),e[31]=l,e[32]=t.name,e[33]=P):P=e[33];let T=P,R=i??(l?z.tableSchemaless:0),D=(r||n)&&"font-semibold",$;e[34]===D?$=e[35]:($=X("rounded-none group h-8 cursor-pointer",D),e[34]=D,e[35]=$);let V;e[36]===R?V=e[37]:(V=E(R),e[36]=R,e[37]=V);let q;e[38]===r?q=e[39]:(q=()=>x(!r),e[38]=r,e[39]=q);let B;e[40]===k?B=e[41]:(B=k(),e[40]=k,e[41]=B);let O;e[42]===t.name?O=e[43]:(O=(0,s.jsx)("span",{className:"text-sm",children:t.name}),e[42]=t.name,e[43]=O);let U;e[44]!==B||e[45]!==O?(U=(0,s.jsxs)("div",{className:"flex gap-2 items-center flex-1 pl-1",children:[B,O]}),e[44]=B,e[45]=O,e[46]=U):U=e[46];let L;e[47]===I?L=e[48]:(L=I(),e[47]=I,e[48]=L);let H;e[49]===u?H=e[50]:(H=Ra.stopPropagation(()=>u()),e[49]=u,e[50]=H);let Z;e[51]===Symbol.for("react.memo_cache_sentinel")?(Z=(0,s.jsx)(Ua,{className:"h-3 w-3"}),e[51]=Z):Z=e[51];let K;e[52]===H?K=e[53]:(K=(0,s.jsx)(xe,{content:"Add table to notebook",delayDuration:400,children:(0,s.jsx)(ne,{className:"group-hover:inline-flex hidden",variant:"text",size:"icon",onClick:H,children:Z})}),e[52]=H,e[53]=K);let J;e[54]!==r||e[55]!==V||e[56]!==q||e[57]!==U||e[58]!==L||e[59]!==K||e[60]!==$||e[61]!==T?(J=(0,s.jsxs)(re,{className:$,style:V,value:T,"aria-selected":r,forceMount:!0,onSelect:q,children:[U,L,K]}),e[54]=r,e[55]=V,e[56]=q,e[57]=U,e[58]=L,e[59]=K,e[60]=$,e[61]=T,e[62]=J):J=e[62];let Q;e[63]!==r||e[64]!==v?(Q=r&&v(),e[63]=r,e[64]=v,e[65]=Q):Q=e[65];let ee;return e[66]!==J||e[67]!==Q?(ee=(0,s.jsxs)(s.Fragment,{children:[J,Q]}),e[66]=J,e[67]=Q,e[68]=ee):ee=e[68],ee},yt=a=>{var O,U;let e=(0,A.c)(51),{table:t,column:l,sqlTableContext:n,columnIndentRem:i}=a,[c,d]=F.useState(!1),r=W(we),x=je(ca);r&&c&&d(!1),x(c?L=>new Set([...L,`${t.name}:${l.name}`]):L=>(L.delete(`${t.name}:${l.name}`),new Set(L)));let h=Re(),{columnsPreviews:m}=Na(),o;e[0]!==l.name||e[1]!==t.primary_keys?(o=((O=t.primary_keys)==null?void 0:O.includes(l.name))||!1,e[0]=l.name,e[1]=t.primary_keys,e[2]=o):o=e[2];let p=o,S;e[3]!==l.name||e[4]!==t.indexes?(S=((U=t.indexes)==null?void 0:U.includes(l.name))||!1,e[3]=l.name,e[4]=t.indexes,e[5]=S):S=e[5];let b=S,N;e[6]===h?N=e[7]:(N=L=>{h(L)},e[6]=h,e[7]=N);let y=N,j=vt,g=c?"font-semibold":"",w;e[8]!==l.name||e[9]!==g?(w=(0,s.jsx)("span",{className:g,children:l.name}),e[8]=l.name,e[9]=g,e[10]=w):w=e[10];let u=w,_=`${t.name}.${l.name}`,I=`${t.name}.${l.name}`,f;e[11]===c?f=e[12]:(f=()=>d(!c),e[11]=c,e[12]=f);let v;e[13]!==i||e[14]!==n?(v=i??(n?Ue(0):z.columnLocal),e[13]=i,e[14]=n,e[15]=v):v=e[15];let C;e[16]===v?C=e[17]:(C=E(v),e[16]=v,e[17]=C);let k;e[18]!==l.type||e[19]!==u?(k=(0,s.jsx)($a,{columnName:u,dataType:l.type}),e[18]=l.type,e[19]=u,e[20]=k):k=e[20];let P;e[21]===p?P=e[22]:(P=p&&j({tooltipContent:"Primary key",content:"PK"}),e[21]=p,e[22]=P);let T;e[23]===b?T=e[24]:(T=b&&j({tooltipContent:"Indexed",content:"IDX"}),e[23]=b,e[24]=T);let R;e[25]!==C||e[26]!==k||e[27]!==P||e[28]!==T?(R=(0,s.jsxs)("div",{className:"flex flex-row gap-2 items-center flex-1",style:C,children:[k,P,T]}),e[25]=C,e[26]=k,e[27]=P,e[28]=T,e[29]=R):R=e[29];let D;e[30]===l.name?D=e[31]:(D=(0,s.jsx)(xe,{content:"Copy column name",delayDuration:400,children:(0,s.jsx)(ne,{variant:"text",size:"icon",className:"group-hover:opacity-100 opacity-0 hover:bg-muted text-muted-foreground hover:text-foreground",children:(0,s.jsx)(Aa,{tooltip:!1,value:l.name,className:"h-3 w-3"})})}),e[30]=l.name,e[31]=D);let $;e[32]===l.external_type?$=e[33]:($=(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:l.external_type}),e[32]=l.external_type,e[33]=$);let V;e[34]!==R||e[35]!==D||e[36]!==$||e[37]!==_||e[38]!==I||e[39]!==f?(V=(0,s.jsxs)(re,{className:"rounded-none py-1 group cursor-pointer",value:I,onSelect:f,children:[R,D,$]},_),e[34]=R,e[35]=D,e[36]=$,e[37]=_,e[38]=I,e[39]=f,e[40]=V):V=e[40];let q;e[41]!==l||e[42]!==m||e[43]!==y||e[44]!==c||e[45]!==n||e[46]!==t?(q=c&&(0,s.jsx)("div",{className:"pr-2 py-2 bg-(--slate-1) shadow-inner border-b",style:E(z.columnPreview),children:(0,s.jsx)(_a,{children:(0,s.jsx)(Oa,{table:t,column:l,onAddColumnChart:y,preview:m.get(n?`${n.database}.${n.schema}.${t.name}:${l.name}`:`${t.name}:${l.name}`),sqlTableContext:n})})}),e[41]=l,e[42]=m,e[43]=y,e[44]=c,e[45]=n,e[46]=t,e[47]=q):q=e[47];let B;return e[48]!==V||e[49]!==q?(B=(0,s.jsxs)(s.Fragment,{children:[V,q]}),e[48]=V,e[49]=q,e[50]=B):B=e[50],B};function vt(a){let{tooltipContent:e,content:t}=a;return(0,s.jsx)(xe,{content:e,delayDuration:100,children:(0,s.jsx)("span",{className:"text-xs text-black bg-gray-100 dark:invert rounded px-1",children:t})})}function Vs(a){return a}var G={name:"name",type:"type-value",defs:"defs-refs"},Nt=[{id:G.name,accessorFn:a=>[a.name,a.declaredBy],enableSorting:!0,sortingFn:"alphanumeric",header:({column:a})=>(0,s.jsx)(de,{header:"Name",column:a}),cell:({getValue:a})=>{let[e,t]=a();return(0,s.jsx)(rt,{name:e,declaredBy:t})}},{id:G.type,accessorFn:a=>[a.dataType,a.value],enableSorting:!0,sortingFn:"alphanumeric",header:({column:a})=>(0,s.jsx)(de,{header:(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsx)("span",{children:"Type"}),(0,s.jsx)("span",{children:"Value"})]}),column:a}),cell:({getValue:a})=>{let[e,t]=a();return(0,s.jsxs)("div",{className:"max-w-[150px]",children:[(0,s.jsx)("div",{className:"text-ellipsis overflow-hidden whitespace-nowrap text-muted-foreground font-mono text-xs",children:e}),(0,s.jsx)("div",{className:"text-ellipsis overflow-hidden whitespace-nowrap",title:t??"",children:t})]})}},{id:G.defs,accessorFn:a=>[a.declaredBy,a.usedBy,a.name,a.declaredByNames,a.usedByNames],enableSorting:!0,sortingFn:"basic",header:({column:a})=>(0,s.jsx)(de,{header:(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsx)("span",{children:"Declared By"}),(0,s.jsx)("span",{children:"Used By"})]}),column:a}),cell:({getValue:a})=>{let[e,t,l]=a(),n=i=>{let c=pa(i);c&&va(c,l)};return(0,s.jsxs)("div",{className:"flex flex-col gap-1 py-1",children:[(0,s.jsxs)("div",{className:"flex flex-row overflow-auto gap-2 items-center",children:[(0,s.jsx)("span",{title:"Declared by",children:(0,s.jsx)(mt,{className:"w-3.5 h-3.5 text-muted-foreground"})}),e.length===1?(0,s.jsx)(qe,{variant:"focus",cellId:e[0],skipScroll:!0,onClick:()=>n(e[0])}):(0,s.jsx)("div",{className:"text-destructive flex flex-row gap-2",children:e.slice(0,3).map((i,c)=>(0,s.jsxs)("span",{className:"flex",children:[(0,s.jsx)(qe,{variant:"focus",cellId:i,skipScroll:!0,className:"whitespace-nowrap text-destructive",onClick:()=>n(i)},i),c<e.length-1&&", "]},i))})]}),(0,s.jsxs)("div",{className:"flex flex-row overflow-auto gap-2 items-baseline",children:[(0,s.jsx)("span",{title:"Used by",children:(0,s.jsx)(za,{className:"w-3.5 h-3.5 text-muted-foreground"})}),(0,s.jsx)(nt,{maxCount:3,cellIds:t,skipScroll:!0,onClick:n})]})]})}}];function wt({variables:a,sort:e,cellIdToIndex:t}){e||(e={id:G.defs,desc:!1});let l=[];switch(e.id){case G.name:l=Y(a,n=>n.name);break;case G.type:l=Y(a,n=>n.dataType);break;case G.defs:l=Y(a,n=>t.get(n.declaredBy[0]));break}return e.desc?l.toReversed():l}const Qe=(0,F.memo)(({className:a,cellIds:e,variables:t})=>{let[l,n]=F.useState([]),[i,c]=F.useState(""),d=ra(),{locale:r}=Ga(),x=(0,F.useMemo)(()=>{let m=o=>{let p=d[o];return wa(p)?`cell-${e.indexOf(o)}`:p??`cell-${e.indexOf(o)}`};return Object.values(t).map(o=>({...o,declaredByNames:o.declaredBy.map(m),usedByNames:o.usedBy.map(m)}))},[t,d,e]),h=ka({data:(0,F.useMemo)(()=>{let m=new Map;return e.forEach((o,p)=>m.set(o,p)),wt({variables:x,sort:l[0],cellIdToIndex:m})},[x,l,e]),columns:Nt,getCoreRowModel:Fa(),onGlobalFilterChange:c,getFilteredRowModel:Pa(),enableFilters:!0,enableGlobalFilter:!0,enableColumnPinning:!1,getColumnCanGlobalFilter(m){return m.columnDef.enableGlobalFilter??!0},globalFilterFn:"auto",manualSorting:!0,locale:r,onSortingChange:n,getSortedRowModel:Ta(),state:{sorting:l,globalFilter:i}});return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(Ea,{className:"w-full",placeholder:"Search",value:i,onChange:m=>c(m.target.value)}),(0,s.jsxs)(Ya,{className:X("w-full text-sm flex-1 border-separate border-spacing-0",a),children:[(0,s.jsx)(Ja,{children:(0,s.jsx)(Le,{className:"whitespace-nowrap text-xs",children:h.getFlatHeaders().map(m=>(0,s.jsx)(Qa,{className:"sticky top-0 bg-background border-b",children:Te(m.column.columnDef.header,m.getContext())},m.id))})}),(0,s.jsx)(Wa,{children:h.getRowModel().rows.map(m=>(0,s.jsx)(Le,{className:"hover:bg-accent",children:m.getVisibleCells().map(o=>(0,s.jsx)(Xa,{className:"border-b",children:Te(o.column.columnDef.cell,o.getContext())},o.id))},m.id))})]})]})});Qe.displayName="VariableTable";var St=Pe(),_t=_e("marimo:session-panel:state",{openSections:["variables"],hasUserInteracted:!1},Ce),Ct=()=>{let a=(0,St.c)(24),e=oa(),t=la(),l=W(Ie),n=W(Ae),[i,c]=ye(_t),d=l.length+n.length,r;a[0]!==d||a[1]!==i.hasUserInteracted||a[2]!==i.openSections?(r=!i.hasUserInteracted&&d>0?[...new Set([...i.openSections,"datasources"])]:i.openSections,a[0]=d,a[1]=i.hasUserInteracted,a[2]=i.openSections,a[3]=r):r=a[3];let x=r,h;a[4]===c?h=a[5]:(h=u=>{c({openSections:u,hasUserInteracted:!0})},a[4]=c,a[5]=h);let m=h,o=!x.includes("datasources")&&d>0,p;a[6]===Symbol.for("react.memo_cache_sentinel")?(p=(0,s.jsx)(ie,{className:"w-4 h-4"}),a[6]=p):p=a[6];let S;a[7]!==d||a[8]!==o?(S=o&&(0,s.jsx)(ct,{children:d}),a[7]=d,a[8]=o,a[9]=S):S=a[9];let b;a[10]===S?b=a[11]:(b=(0,s.jsxs)(Be,{children:[p,"Data sources",S]}),a[10]=S,a[11]=b);let N;a[12]===Symbol.for("react.memo_cache_sentinel")?(N=(0,s.jsx)(Ee,{children:(0,s.jsx)(xt,{})}),a[12]=N):N=a[12];let y;a[13]===b?y=a[14]:(y=(0,s.jsxs)(Me,{value:"datasources",children:[b,N]}),a[13]=b,a[14]=y);let j;a[15]===Symbol.for("react.memo_cache_sentinel")?(j=(0,s.jsxs)(Be,{children:[(0,s.jsx)(xa,{className:"w-4 h-4"}),"Variables"]}),a[15]=j):j=a[15];let g;a[16]!==t||a[17]!==e?(g=(0,s.jsxs)(Me,{value:"variables",lastItem:!0,children:[j,(0,s.jsx)(Ee,{children:Object.keys(e).length===0?(0,s.jsx)("div",{className:"px-3 py-4 text-sm text-muted-foreground",children:"No variables defined"}):(0,s.jsx)(Qe,{cellIds:t.inOrderIds,variables:e})})]}),a[16]=t,a[17]=e,a[18]=g):g=a[18];let w;return a[19]!==m||a[20]!==x||a[21]!==y||a[22]!==g?(w=(0,s.jsxs)(Ia,{type:"multiple",value:x,onValueChange:m,className:"flex flex-col h-full overflow-auto",children:[y,g]}),a[19]=m,a[20]=x,a[21]=y,a[22]=g,a[23]=w):w=a[23],w};export{Ct as default};
|