@marimo-team/frontend 0.21.2-dev27 → 0.21.2-dev28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/dist/assets/JsonOutput-BKsCyU13.js +46 -0
  2. package/dist/assets/{LazyAnyLanguageCodeMirror-m8w66E4s.js → LazyAnyLanguageCodeMirror-Dmh6kfiy.js} +2 -2
  3. package/dist/assets/{RenderHTML-C_fyTOvC.js → RenderHTML-D_zT74Lq.js} +1 -1
  4. package/dist/assets/{add-cell-with-ai-BRtYorDJ.js → add-cell-with-ai-mTm-dtan.js} +1 -1
  5. package/dist/assets/{agent-panel-DGJVT16i.js → agent-panel-B33uC899.js} +4 -4
  6. package/dist/assets/{ai-model-dropdown-DudGwo8M.js → ai-model-dropdown-aWQwR5QF.js} +1 -1
  7. package/dist/assets/{any-language-editor-DwQMnAM3.js → any-language-editor-C4OP3txB.js} +1 -1
  8. package/dist/assets/{app-config-button-DpzUMkw9.js → app-config-button-BPvtPnFO.js} +1 -1
  9. package/dist/assets/{cell-editor-2jUky7HX.js → cell-editor-CphJ_7RI.js} +1 -1
  10. package/dist/assets/{chat-display-CUgnBuwx.js → chat-display-B6a8fK7j.js} +1 -1
  11. package/dist/assets/{chat-panel-BOonHbD0.js → chat-panel-B247iLHO.js} +1 -1
  12. package/dist/assets/{column-preview-DxF69H1r.js → column-preview-CtAbPvyW.js} +1 -1
  13. package/dist/assets/{command-palette-DOuVk9HJ.js → command-palette-Ba8b6UXV.js} +1 -1
  14. package/dist/assets/{common-lw1c9Wgv.js → common-DrrPhv3x.js} +1 -1
  15. package/dist/assets/{context-aware-panel-BvlpddI6.js → context-aware-panel-91O6JrAw.js} +3 -3
  16. package/dist/assets/copy-CA4fP28I.js +1 -0
  17. package/dist/assets/{copy-icon-BgmMM9Zg.js → copy-icon-C6n2vWSW.js} +1 -1
  18. package/dist/assets/{dependency-graph-panel-8tHjw4xN.js → dependency-graph-panel-BHHmugpa.js} +1 -1
  19. package/dist/assets/{documentation-panel-CiqkAFTI.js → documentation-panel-C0LXfz0P.js} +1 -1
  20. package/dist/assets/{edit-page-BVY1l3nw.js → edit-page-DrMpMRcp.js} +3 -3
  21. package/dist/assets/{file-explorer-panel-_OxGV-EN.js → file-explorer-panel-BS6bXHdR.js} +1 -1
  22. package/dist/assets/{glide-data-editor-xt5xNZeV.js → glide-data-editor-CoE8cs_o.js} +1 -1
  23. package/dist/assets/{home-page-h9VVoEDu.js → home-page-D7Z_Tlyv.js} +1 -1
  24. package/dist/assets/{hooks-Dy_0RQ1Z.js → hooks-3nahTPnh.js} +1 -1
  25. package/dist/assets/index-CIk_2P5O.js +38 -0
  26. package/dist/assets/{layout-BC0sIu2P.js → layout-fT20kG4_.js} +3 -3
  27. package/dist/assets/{markdown-renderer-Cj9ft7VI.js → markdown-renderer-A3Ed0cjI.js} +1 -1
  28. package/dist/assets/{packages-panel-B1mp4FDH.js → packages-panel-BU9XDexQ.js} +1 -1
  29. package/dist/assets/{panels-DQcWYSGG.js → panels-BQFJvWY0.js} +1 -1
  30. package/dist/assets/{readonly-python-code-CKdreYF8.js → readonly-python-code-i_LeNopW.js} +1 -1
  31. package/dist/assets/{run-page-BVFSk_-Z.js → run-page-DRNJCJFp.js} +1 -1
  32. package/dist/assets/{scratchpad-panel-DKj6qzI8.js → scratchpad-panel-DlQ1e62a.js} +1 -1
  33. package/dist/assets/{secrets-panel-B1Z-6dmz.js → secrets-panel-CfWyTaso.js} +1 -1
  34. package/dist/assets/{session-panel-C4ctrCWJ.js → session-panel-B1yjHqHu.js} +1 -1
  35. package/dist/assets/{snippets-panel-DXimlux2.js → snippets-panel-Dk7Ka2Gd.js} +1 -1
  36. package/dist/assets/{terminal-Cr7wbEjz.js → terminal-BZZqbl0D.js} +1 -1
  37. package/dist/assets/{useBoolean-3u0CYJkt.js → useBoolean-BYlCXj8U.js} +1 -1
  38. package/dist/assets/{useCellActionButton-CL2hZzP1.js → useCellActionButton-D-FPtHfb.js} +1 -1
  39. package/dist/assets/{useDependencyPanelTab-uG7OU1qF.js → useDependencyPanelTab-CYwz2tNi.js} +1 -1
  40. package/dist/assets/{useNotebookActions-DkhkeIz3.js → useNotebookActions-BeK3aC7s.js} +1 -1
  41. package/dist/index.html +14 -14
  42. package/package.json +1 -1
  43. package/src/components/data-table/__tests__/utils.test.ts +138 -1
  44. package/src/components/data-table/context-menu.tsx +9 -5
  45. package/src/components/data-table/data-table.tsx +3 -0
  46. package/src/components/data-table/range-focus/__tests__/atoms.test.ts +8 -2
  47. package/src/components/data-table/range-focus/__tests__/test-utils.ts +2 -0
  48. package/src/components/data-table/range-focus/__tests__/utils.test.ts +82 -8
  49. package/src/components/data-table/range-focus/atoms.ts +2 -2
  50. package/src/components/data-table/range-focus/utils.ts +50 -12
  51. package/src/components/data-table/types.ts +7 -0
  52. package/src/components/data-table/utils.ts +87 -0
  53. package/src/plugins/impl/DataTablePlugin.tsx +23 -2
  54. package/src/utils/copy.ts +18 -5
  55. package/dist/assets/JsonOutput-BRPU4yqw.js +0 -46
  56. package/dist/assets/copy-YwM0Pd7v.js +0 -1
  57. package/dist/assets/index-D3_EYEUd.js +0 -38
@@ -1 +1 @@
1
- import{s as re}from"./chunk-LvLJmgfZ.js";import{d as oe,l as De,p as ce,u as J}from"./useEvent-O0nX5vok.js";import{t as Be}from"./react-Bj1aDYRI.js";import{At as Me,Ct as Ve,E as Ee,Gn as Pe,In as Oe,Jn as Ue,Ln as Ae,N as Re,Sn as ze,Yn as se,_r as me,a as Ge,bn as We,br as ie,dr as de,f as He,fr as Je,gr as he,ht as Ke,j as Xe,kt as Ye,lr as ue,or as Qe,pr as Ze,ti as ea,tn as aa,ur as xe,yn as ta,yr as sa,zn as la}from"./cells-Bg7-G3QJ.js";import"./react-dom-CSu739Rf.js";import{t as pe}from"./compiler-runtime-B3qBwwSJ.js";import{n as na}from"./assertNever-DWSyoPEi.js";import"./utils-CdjCA1J8.js";import{t as K}from"./sortBy-CbaC49oe.js";import{t as fe}from"./add-connection-dialog-D-YPxf1v.js";import{o as ra}from"./utils-tNbLd14P.js";import{t as oa}from"./ErrorBoundary-Ba0LbbH4.js";import{t as ca}from"./jsx-runtime-icT_Ltz2.js";import{r as ma,t as ee}from"./button-Ej3vmCIF.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-BRPU4yqw.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-hacnp18J.js";import"./markdown-renderer-Cj9ft7VI.js";import{t as ge}from"./plus-dVmh0yTy.js";import{a as ba}from"./input-CUwqpKjd.js";import{n as ga,o as ja}from"./column-preview-DxF69H1r.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-BrEm7qNv.js";import"./Combination-Cs9nbinQ.js";import{t as ne}from"./tooltip-D9723Brr.js";import"./purify.es-BBn8CPhf.js";import"./dates-CHaNfieI.js";import{t as ya}from"./context-CIAP2NOh.js";import"./popover-BPGG2gPG.js";import"./vega-loader.browser-CZV6_g2i.js";import"./defaultLocale-OkOxlkkM.js";import"./defaultLocale-DK1MWd7f.js";import{t as va}from"./copy-icon-BgmMM9Zg.js";import{n as wa}from"./multi-map-Pp1P2DOX.js";import{t as je}from"./cell-link-DFqw-p8a.js";import{n as Ne}from"./useAsyncData-D-4ifFXh.js";import{a as Sa,o as ae,t as _a,u as Ca}from"./command-Bb5BQ9IQ.js";import"./chunk-5FQGJX7Z-CM1a_K7I.js";import"./katex-rvFxOCU-.js";import{r as ka}from"./html-to-image-CN0roffg.js";import{o as $a}from"./focus-DKnBT1ji.js";import{a as Fa,i as Ia,n as Ta,o as ye,r as La,t as qa}from"./table-BhH-Mm8O.js";import{n as Da}from"./icons-CrUXojcA.js";import{t as ve}from"./useAddCell-rz5hgq-s.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-DREyNirk.js";import{t as Va}from"./empty-state-B_US46Us.js";import{n as Ea,t as Pa}from"./common-lw1c9Wgv.js";import{a as Oa,i as Ua,n as ke,r as $e,t as Fe}from"./components-B4UeUHl_.js";var Aa=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"}]]),R=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"},Ra=ce(a=>{let e=a(de),s=a(ze),l=a(Ge);return K(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 Ie=ce(a=>{let e=new Map(a(Qe));for(let s of ie){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 K([...e.values()],s=>ie.has(s.name)?1:0)}),za=()=>{let a=(0,R.c)(32),[e,s]=C.useState(""),l=oe(xe),r=J(Ra),c=J(Ie);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)(Ha,{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)(Da,{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)(Te,{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,R.c)(25),{connection:s,children:l,hasChildren:r}=a,c=s.name===sa,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)(Ke,{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,R.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 L=n&&c,k;return e[23]!==S||e[24]!==L?(k=(0,t.jsxs)(t.Fragment,{children:[S,L]}),e[23]=S,e[24]=L,e[25]=k):k=e[25],k},Ha=a=>{let e=(0,R.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)(Ja,{databaseName:j,schema:d,hasSearch:b,children:(0,t.jsx)(Te,{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},Ja=a=>{let e=(0,R.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(he(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)(Pe,{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},Te=a=>{let e=(0,R.c)(24),{tables:s,sqlTableContext:l,searchValue:r}=a,{addTableList:c}=ue(),[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 Me.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)(Ka,{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},Ka=a=>{let e=(0,R.c)(64),{table:s,sqlTableContext:l,isSearching:r}=a,{addTable:c}=ue(),[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:qe}=l,Z=await Ye.request({engine:B,database:Q,schema:qe,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=J(ra),p=$a(),{createNewCell:f}=Ee(),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 me({table:s,columnName:"*",sqlTableContext:l});switch(s.source_type){case"local":return`mo.ui.table(${s.name})`;case"duckdb":case"connection":return me({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,L;e[20]!==d||e[21]!==h||e[22]!==x||e[23]!==l||e[24]!==s?(L=()=>{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)(Xa,{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]=L):L=e[25];let k=L,q;e[26]!==n||e[27]!==r||e[28]!==s.source_type||e[29]!==s.type?(q=()=>{if(s.source_type!=="local")return(0,t.jsx)(s.type==="table"?la:Ue,{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]=q):q=e[30];let M=q,V=l?`${l.database}.${l.schema}.${s.name}`:s.name,E=l&&(he(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 I;e[36]===M?I=e[37]:(I=M(),e[36]=M,e[37]=I);let D;e[38]===s.name?D=e[39]:(D=(0,t.jsx)("span",{className:"text-sm",children:s.name}),e[38]=s.name,e[39]=D);let U;e[40]!==I||e[41]!==D?(U=(0,t.jsxs)("div",{className:"flex gap-2 items-center flex-1 pl-1",children:[I,D]}),e[40]=I,e[41]=D,e[42]=U):U=e[42];let A;e[43]===S?A=e[44]:(A=S(),e[43]=S,e[44]=A);let T;e[45]===v?T=e[46]:(T=ma.stopPropagation(()=>v()),e[45]=v,e[46]=T);let X;e[47]===Symbol.for("react.memo_cache_sentinel")?(X=(0,t.jsx)(ja,{className:"h-3 w-3"}),e[47]=X):X=e[47];let G;e[48]===T?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:T,children:X})}),e[48]=T,e[49]=G);let W;e[50]!==n||e[51]!==F||e[52]!==U||e[53]!==A||e[54]!==G||e[55]!==$||e[56]!==V?(W=(0,t.jsxs)(ae,{className:$,value:V,"aria-selected":n,forceMount:!0,onSelect:F,children:[U,A,G]}),e[50]=n,e[51]=F,e[52]=U,e[53]=A,e[54]=G,e[55]=$,e[56]=V,e[57]=W):W=e[57];let H;e[58]!==n||e[59]!==k?(H=n&&k(),e[58]=n,e[59]=k,e[60]=H):H=e[60];let Y;return e[61]!==W||e[62]!==H?(Y=(0,t.jsxs)(t.Fragment,{children:[W,H]}),e[61]=W,e[62]=H,e[63]=Y):Y=e[63],Y},Xa=a=>{var U,A;let e=(0,R.c)(48),{table:s,column:l,sqlTableContext:r}=a,[c,n]=C.useState(!1),j=J(xe),b=oe(Je);j&&c&&n(!1),b(c?T=>new Set([...T,`${s.name}:${l.name}`]):T=>(T.delete(`${s.name}:${l.name}`),new Set(T)));let g=ve(),{columnsPreviews:u}=Ze(),m;e[0]!==l.name||e[1]!==s.primary_keys?(m=((U=s.primary_keys)==null?void 0:U.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=((A=s.indexes)==null?void 0:A.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=T=>{g(T)},e[6]=g,e[7]=d);let i=d,p=Ya,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 L=r?_.columnSql:_.columnLocal,k;e[13]===L?k=e[14]:(k=O("flex flex-row gap-2 items-center flex-1",L),e[13]=L,e[14]=k);let q;e[15]!==l.type||e[16]!==y?(q=(0,t.jsx)(Ba,{columnName:y,dataType:l.type}),e[15]=l.type,e[16]=y,e[17]=q):q=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]!==q||e[24]!==M||e[25]!==V?(E=(0,t.jsxs)("div",{className:k,children:[q,M,V]}),e[22]=k,e[23]=q,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 I;e[38]!==l||e[39]!==u||e[40]!==i||e[41]!==c||e[42]!==r||e[43]!==s?(I=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]=I):I=e[44];let D;return e[45]!==F||e[46]!==I?(D=(0,t.jsxs)(t.Fragment,{children:[F,I]}),e[45]=F,e[46]=I,e[47]=D):D=e[47],D};function Ya(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=He(c);n&&aa(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)(Aa,{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=K(a,r=>r.name);break;case z.type:l=K(a,r=>r.dataType);break;case z.defs:l=K(a,r=>s.get(r.declaredBy[0]));break}return e.desc?l.reverse():l}const Le=(0,C.memo)(({className:a,cellIds:e,variables:s})=>{let[l,r]=C.useState([]),[c,n]=C.useState(""),j=Re(),{locale:b}=ya(),g=(0,C.useMemo)(()=>{let m=o=>{let h=j[o];return Ve(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)(qa,{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)(Ia,{className:"sticky top-0 bg-background border-b",children:be(m.column.columnDef.header,m.getContext())},m.id))})}),(0,t.jsx)(Ta,{children:u.getRowModel().rows.map(m=>(0,t.jsx)(ye,{className:"hover:bg-accent",children:m.getVisibleCells().map(o=>(0,t.jsx)(La,{className:"border-b",children:be(o.column.columnDef.cell,o.getContext())},o.id))},m.id))})]})]})});Le.displayName="VariableTable";var et=pe(),at=ea("marimo:session-panel:state",{openSections:["variables"],hasUserInteracted:!1},ta),tt=()=>{let a=(0,et.c)(24),e=We(),s=Xe(),l=J(de),r=J(Ie),[c,n]=De(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)(Ua,{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)(Ae,{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)(Le,{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 De,p as ce,u as J}from"./useEvent-O0nX5vok.js";import{t as Be}from"./react-Bj1aDYRI.js";import{At as Ee,Ct as Me,E as Ve,Gn as Pe,In as Oe,Jn as Ue,Ln as ze,N as Ae,Sn as Re,Yn as se,_r as me,a as Ge,bn as We,br as ie,dr as de,f as He,fr as Je,gr as he,ht as Ke,j as Xe,kt as Ye,lr as ue,or as Qe,pr as Ze,ti as ea,tn as aa,ur as xe,yn as ta,yr as sa,zn as la}from"./cells-Bg7-G3QJ.js";import"./react-dom-CSu739Rf.js";import{t as pe}from"./compiler-runtime-B3qBwwSJ.js";import{n as na}from"./assertNever-DWSyoPEi.js";import"./utils-CdjCA1J8.js";import{t as K}from"./sortBy-CbaC49oe.js";import{t as fe}from"./add-connection-dialog-D-YPxf1v.js";import{o as ra}from"./utils-tNbLd14P.js";import{t as oa}from"./ErrorBoundary-Ba0LbbH4.js";import{t as ca}from"./jsx-runtime-icT_Ltz2.js";import{r as ma,t as ee}from"./button-Ej3vmCIF.js";import{t as O}from"./cn-BoaCR37F.js";import"./dist-B_cxg-E4.js";import{E as le,F as be,I as ia,L as da,R as ha,z as ua}from"./JsonOutput-BKsCyU13.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-hacnp18J.js";import"./markdown-renderer-A3Ed0cjI.js";import{t as ge}from"./plus-dVmh0yTy.js";import{a as ba}from"./input-CUwqpKjd.js";import{n as ga,o as ja}from"./column-preview-CtAbPvyW.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-BrEm7qNv.js";import"./Combination-Cs9nbinQ.js";import{t as ne}from"./tooltip-D9723Brr.js";import"./purify.es-BBn8CPhf.js";import"./dates-CHaNfieI.js";import{t as ya}from"./context-CIAP2NOh.js";import"./popover-BPGG2gPG.js";import"./vega-loader.browser-CZV6_g2i.js";import"./defaultLocale-OkOxlkkM.js";import"./defaultLocale-DK1MWd7f.js";import{t as va}from"./copy-icon-C6n2vWSW.js";import{n as wa}from"./multi-map-Pp1P2DOX.js";import{t as je}from"./cell-link-DFqw-p8a.js";import{n as Ne}from"./useAsyncData-D-4ifFXh.js";import{a as Sa,o as ae,t as _a,u as Ca}from"./command-Bb5BQ9IQ.js";import"./chunk-5FQGJX7Z-CM1a_K7I.js";import"./katex-rvFxOCU-.js";import{r as ka}from"./html-to-image-CN0roffg.js";import{o as $a}from"./focus-DKnBT1ji.js";import{a as Fa,i as Ia,n as Ta,o as ye,r as La,t as qa}from"./table-BhH-Mm8O.js";import{n as Da}from"./icons-CrUXojcA.js";import{t as ve}from"./useAddCell-rz5hgq-s.js";import{a as we,i as te,o as Se,r as _e,s as Ce,t as Ba,u as Ea}from"./components-DREyNirk.js";import{t as Ma}from"./empty-state-B_US46Us.js";import{n as Va,t as Pa}from"./common-DrrPhv3x.js";import{a as Oa,i as Ua,n as ke,r as $e,t as Fe}from"./components-B4UeUHl_.js";var za=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"}]]),A=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"},Aa=ce(a=>{let e=a(de),s=a(Re),l=a(Ge);return K(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 Ie=ce(a=>{let e=new Map(a(Qe));for(let s of ie){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 K([...e.values()],s=>ie.has(s.name)?1:0)}),Ra=()=>{let a=(0,A.c)(32),[e,s]=C.useState(""),l=oe(xe),r=J(Aa),c=J(Ie);if(r.length===0&&c.length===0){let p;return a[0]===Symbol.for("react.memo_cache_sentinel")?(p=(0,t.jsx)(Ma,{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)(Ha,{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)(Da,{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)(Te,{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,A.c)(25),{connection:s,children:l,hasChildren:r}=a,c=s.name===sa,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)(Ke,{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)(Ea,{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,A.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 L=n&&c,k;return e[23]!==S||e[24]!==L?(k=(0,t.jsxs)(t.Fragment,{children:[S,L]}),e[23]=S,e[24]=L,e[25]=k):k=e[25],k},Ha=a=>{let e=(0,A.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)(Ja,{databaseName:j,schema:d,hasSearch:b,children:(0,t.jsx)(Te,{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},Ja=a=>{let e=(0,A.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(he(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)(Pe,{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},Te=a=>{let e=(0,A.c)(24),{tables:s,sqlTableContext:l,searchValue:r}=a,{addTableList:c}=ue(),[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)(Ka,{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},Ka=a=>{let e=(0,A.c)(64),{table:s,sqlTableContext:l,isSearching:r}=a,{addTable:c}=ue(),[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:qe}=l,Z=await Ye.request({engine:B,database:Q,schema:qe,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=J(ra),p=$a(),{createNewCell:f}=Ve(),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 me({table:s,columnName:"*",sqlTableContext:l});switch(s.source_type){case"local":return`mo.ui.table(${s.name})`;case"duckdb":case"connection":return me({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,L;e[20]!==d||e[21]!==h||e[22]!==x||e[23]!==l||e[24]!==s?(L=()=>{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)(Xa,{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]=L):L=e[25];let k=L,q;e[26]!==n||e[27]!==r||e[28]!==s.source_type||e[29]!==s.type?(q=()=>{if(s.source_type!=="local")return(0,t.jsx)(s.type==="table"?la:Ue,{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]=q):q=e[30];let E=q,M=l?`${l.database}.${l.schema}.${s.name}`:s.name,V=l&&(he(l.schema)?_.tableSchemaless:_.tableWithSchema),P=(n||r)&&"font-semibold",$;e[31]!==V||e[32]!==P?($=O("rounded-none group h-8 cursor-pointer",V,P),e[31]=V,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 I;e[36]===E?I=e[37]:(I=E(),e[36]=E,e[37]=I);let D;e[38]===s.name?D=e[39]:(D=(0,t.jsx)("span",{className:"text-sm",children:s.name}),e[38]=s.name,e[39]=D);let U;e[40]!==I||e[41]!==D?(U=(0,t.jsxs)("div",{className:"flex gap-2 items-center flex-1 pl-1",children:[I,D]}),e[40]=I,e[41]=D,e[42]=U):U=e[42];let z;e[43]===S?z=e[44]:(z=S(),e[43]=S,e[44]=z);let T;e[45]===v?T=e[46]:(T=ma.stopPropagation(()=>v()),e[45]=v,e[46]=T);let X;e[47]===Symbol.for("react.memo_cache_sentinel")?(X=(0,t.jsx)(ja,{className:"h-3 w-3"}),e[47]=X):X=e[47];let G;e[48]===T?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:T,children:X})}),e[48]=T,e[49]=G);let W;e[50]!==n||e[51]!==F||e[52]!==U||e[53]!==z||e[54]!==G||e[55]!==$||e[56]!==M?(W=(0,t.jsxs)(ae,{className:$,value:M,"aria-selected":n,forceMount:!0,onSelect:F,children:[U,z,G]}),e[50]=n,e[51]=F,e[52]=U,e[53]=z,e[54]=G,e[55]=$,e[56]=M,e[57]=W):W=e[57];let H;e[58]!==n||e[59]!==k?(H=n&&k(),e[58]=n,e[59]=k,e[60]=H):H=e[60];let Y;return e[61]!==W||e[62]!==H?(Y=(0,t.jsxs)(t.Fragment,{children:[W,H]}),e[61]=W,e[62]=H,e[63]=Y):Y=e[63],Y},Xa=a=>{var U,z;let e=(0,A.c)(48),{table:s,column:l,sqlTableContext:r}=a,[c,n]=C.useState(!1),j=J(xe),b=oe(Je);j&&c&&n(!1),b(c?T=>new Set([...T,`${s.name}:${l.name}`]):T=>(T.delete(`${s.name}:${l.name}`),new Set(T)));let g=ve(),{columnsPreviews:u}=Ze(),m;e[0]!==l.name||e[1]!==s.primary_keys?(m=((U=s.primary_keys)==null?void 0:U.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=((z=s.indexes)==null?void 0:z.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=T=>{g(T)},e[6]=g,e[7]=d);let i=d,p=Ya,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 L=r?_.columnSql:_.columnLocal,k;e[13]===L?k=e[14]:(k=O("flex flex-row gap-2 items-center flex-1",L),e[13]=L,e[14]=k);let q;e[15]!==l.type||e[16]!==y?(q=(0,t.jsx)(Ba,{columnName:y,dataType:l.type}),e[15]=l.type,e[16]=y,e[17]=q):q=e[17];let E;e[18]===o?E=e[19]:(E=o&&p({tooltipContent:"Primary key",content:"PK"}),e[18]=o,e[19]=E);let M;e[20]===x?M=e[21]:(M=x&&p({tooltipContent:"Indexed",content:"IDX"}),e[20]=x,e[21]=M);let V;e[22]!==k||e[23]!==q||e[24]!==E||e[25]!==M?(V=(0,t.jsxs)("div",{className:k,children:[q,E,M]}),e[22]=k,e[23]=q,e[24]=E,e[25]=M,e[26]=V):V=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]!==V||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:[V,P,$]},v),e[31]=V,e[32]=P,e[33]=$,e[34]=v,e[35]=w,e[36]=S,e[37]=F):F=e[37];let I;e[38]!==l||e[39]!==u||e[40]!==i||e[41]!==c||e[42]!==r||e[43]!==s?(I=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]=I):I=e[44];let D;return e[45]!==F||e[46]!==I?(D=(0,t.jsxs)(t.Fragment,{children:[F,I]}),e[45]=F,e[46]=I,e[47]=D):D=e[47],D};function Ya(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 R={name:"name",type:"type-value",defs:"defs-refs"},Qa=[{id:R.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:R.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:R.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=He(c);n&&aa(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)(za,{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)(Va,{maxCount:3,cellIds:s,skipScroll:!0,onClick:r})]})]})}}];function Za({variables:a,sort:e,cellIdToIndex:s}){e||(e={id:R.defs,desc:!1});let l=[];switch(e.id){case R.name:l=K(a,r=>r.name);break;case R.type:l=K(a,r=>r.dataType);break;case R.defs:l=K(a,r=>s.get(r.declaredBy[0]));break}return e.desc?l.reverse():l}const Le=(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 Me(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)(qa,{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)(Ia,{className:"sticky top-0 bg-background border-b",children:be(m.column.columnDef.header,m.getContext())},m.id))})}),(0,t.jsx)(Ta,{children:u.getRowModel().rows.map(m=>(0,t.jsx)(ye,{className:"hover:bg-accent",children:m.getVisibleCells().map(o=>(0,t.jsx)(La,{className:"border-b",children:be(o.column.columnDef.cell,o.getContext())},o.id))},m.id))})]})]})});Le.displayName="VariableTable";var et=pe(),at=ea("marimo:session-panel:state",{openSections:["variables"],hasUserInteracted:!1},ta),tt=()=>{let a=(0,et.c)(24),e=We(),s=Xe(),l=J(de),r=J(Ie),[c,n]=De(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)(Ua,{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)(Ra,{})}),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)(ze,{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)(Le,{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 I}from"./chunk-LvLJmgfZ.js";import"./useEvent-O0nX5vok.js";import{t as P}from"./react-Bj1aDYRI.js";import{E as q}from"./cells-Bg7-G3QJ.js";import"./react-dom-CSu739Rf.js";import{t as $}from"./compiler-runtime-B3qBwwSJ.js";import{n as D}from"./constants-Rz_lD4HK.js";import{t as F}from"./jsx-runtime-icT_Ltz2.js";import{i as G,t as y}from"./button-Ej3vmCIF.js";import{t as T}from"./cn-BoaCR37F.js";import{at as W}from"./dist-B_cxg-E4.js";import"./cjs-BU2qXMKx.js";import"./main-DrBRErTM.js";import"./useNonce-BtW-rR_1.js";import{r as A}from"./requests-Bgjtqo_1.js";import{n as E,t as B}from"./LazyAnyLanguageCodeMirror-m8w66E4s.js";import{t as J}from"./x-BI1M8X_v.js";import{t as K}from"./spinner-C5JoisA7.js";import{t as L}from"./plus-dVmh0yTy.js";import"./dist-BNC_tnlW.js";import"./dist-CXLJUPFl.js";import"./dist-CQqv2gQL.js";import"./dist-8UD0A5sU.js";import"./dist-apDpadc4.js";import"./session-BrEm7qNv.js";import{r as R}from"./useTheme-BYXBU1of.js";import"./Combination-Cs9nbinQ.js";import{t as U}from"./tooltip-D9723Brr.js";import"./purify.es-BBn8CPhf.js";import{a as V,c as Y,i as Q,n as X,r as Z}from"./dialog-CVN1lcMF.js";import{n as ee}from"./ImperativeModal-qEtcJ95s.js";import{t as te}from"./RenderHTML-C_fyTOvC.js";import{n as se}from"./error-banner-BRG6IPhC.js";import{n as re}from"./useAsyncData-D-4ifFXh.js";import{a as le,o as oe,r as ie,t as ae,u as ne}from"./command-Bb5BQ9IQ.js";import{o as me}from"./focus-DKnBT1ji.js";import{n as ce,r as de,t as M}from"./react-resizable-panels.browser.esm-DDRqG5ui.js";import{t as pe}from"./empty-state-B_US46Us.js";import{n as he,r as fe}from"./panel-context-BN0DQXiK.js";import{t as H}from"./kiosk-mode-BRjlh6JD.js";var O=$(),C=I(P(),1),s=I(F(),1);const xe=t=>{let e=(0,O.c)(6),{children:r}=t,{openModal:i,closeModal:o}=ee(),l;e[0]!==o||e[1]!==i?(l=()=>i((0,s.jsx)(ue,{onClose:o})),e[0]=o,e[1]=i,e[2]=l):l=e[2];let a;return e[3]!==r||e[4]!==l?(a=(0,s.jsx)(G,{onClick:l,children:r}),e[3]=r,e[4]=l,e[5]=a):a=e[5],a};var ue=t=>{let e=(0,O.c)(4),{onClose:r}=t,i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=(0,s.jsx)(Y,{children:"Contribute a Snippet"}),e[0]=i):i=e[0];let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=(0,s.jsxs)(V,{children:[i,(0,s.jsxs)(Z,{children:["Have a useful snippet you want to share with the community? Make a pull request"," ",(0,s.jsx)("a",{href:D.githubPage,target:"_blank",className:"underline",children:"on GitHub"}),"."]})]}),e[1]=o):o=e[1];let l;return e[2]===r?l=e[3]:(l=(0,s.jsxs)(X,{className:"max-w-md",children:[o,(0,s.jsx)(Q,{children:(0,s.jsx)(y,{"data-testid":"snippet-close-button",variant:"default",onClick:r,children:"Close"})})]}),e[2]=r,e[3]=l),l},k=$(),je=[W.lineWrapping],ve=()=>{let t=(0,k.c)(24),{readSnippets:e}=A(),[r,i]=C.useState(),o=he(),l=fe(),a;t[0]===e?a=t[1]:(a=()=>e(),t[0]=e,t[1]=a);let c;t[2]===Symbol.for("react.memo_cache_sentinel")?(c=[],t[2]=c):c=t[2];let{data:N,error:j,isPending:g}=re(a,c);if(j){let m;return t[3]===j?m=t[4]:(m=(0,s.jsx)(se,{error:j}),t[3]=j,t[4]=m),m}if(g||!N){let m;return t[5]===Symbol.for("react.memo_cache_sentinel")?(m=(0,s.jsx)(K,{size:"medium",centered:!0}),t[5]=m):m=t[5],m}let _=o==="vertical",v;t[6]===Symbol.for("react.memo_cache_sentinel")?(v=(0,s.jsx)(le,{placeholder:"Search snippets...",className:"h-6 m-1",rootClassName:"flex-1 border-r"}),t[6]=v):v=t[6];let h,f;t[7]===Symbol.for("react.memo_cache_sentinel")?(h=(0,s.jsxs)("div",{className:"flex items-center w-full border-b",children:[v,(0,s.jsx)(xe,{children:(0,s.jsx)("button",{className:"float-right px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",children:(0,s.jsx)(L,{className:"h-4 w-4"})})})]}),f=(0,s.jsx)(ie,{children:"No results"}),t[7]=h,t[8]=f):(h=t[7],f=t[8]);let b;t[9]===Symbol.for("react.memo_cache_sentinel")?(b=m=>i(m),t[9]=b):b=t[9];let d;t[10]===N.snippets?d=t[11]:(d=(0,s.jsx)(M,{defaultSize:40,minSize:20,maxSize:70,children:(0,s.jsxs)(ae,{className:"h-full rounded-none",children:[h,f,(0,s.jsx)(Ne,{onSelect:b,snippets:N.snippets})]})}),t[10]=N.snippets,t[11]=d);let u=_?"h-1":"w-1",p;t[12]===u?p=t[13]:(p=T("bg-border hover:bg-primary/50 transition-colors",u),t[12]=u,t[13]=p);let x;t[14]===p?x=t[15]:(x=(0,s.jsx)(de,{className:p}),t[14]=p,t[15]=x);let n;t[16]===r?n=t[17]:(n=(0,s.jsx)(M,{defaultSize:60,minSize:20,children:(0,s.jsx)(C.Suspense,{children:(0,s.jsx)("div",{className:"h-full snippet-viewer flex flex-col overflow-hidden",children:r?(0,s.jsx)(be,{snippet:r,onClose:()=>i(void 0)},r.title):(0,s.jsx)(pe,{title:"",description:"Click on a snippet to view its content."})})})}),t[16]=r,t[17]=n);let S;return t[18]!==o||t[19]!==l||t[20]!==n||t[21]!==d||t[22]!==x?(S=(0,s.jsx)("div",{className:"flex-1 overflow-hidden h-full",children:(0,s.jsxs)(ce,{direction:o,className:"h-full",children:[d,x,n]},l)}),t[18]=o,t[19]=l,t[20]=n,t[21]=d,t[22]=x,t[23]=S):S=t[23],S},be=t=>{let e=(0,k.c)(33),{snippet:r,onClose:i}=t,{theme:o}=R(),{createNewCell:l}=q(),a=me(),c;e[0]!==l||e[1]!==a||e[2]!==r.sections?(c=()=>{for(let n of[...r.sections].reverse())n.code&&l({code:n.code,before:!1,cellId:a??"__end__",skipIfCodeExists:!0})},e[0]=l,e[1]=a,e[2]=r.sections,e[3]=c):c=e[3];let N=c,j;e[4]!==l||e[5]!==a?(j=n=>{l({code:n,before:!1,cellId:a??"__end__"})},e[4]=l,e[5]=a,e[6]=j):j=e[6];let g=j,_;e[7]===r.title?_=e[8]:(_=(0,s.jsx)("span",{children:r.title}),e[7]=r.title,e[8]=_);let v;e[9]===Symbol.for("react.memo_cache_sentinel")?(v=(0,s.jsx)(J,{className:"h-4 w-4"}),e[9]=v):v=e[9];let h;e[10]===i?h=e[11]:(h=(0,s.jsx)(y,{size:"sm",variant:"ghost",onClick:i,className:"h-6 w-6 p-0 hover:bg-muted-foreground/10",children:v}),e[10]=i,e[11]=h);let f;e[12]!==_||e[13]!==h?(f=(0,s.jsxs)("div",{className:"text-sm font-semibold bg-muted border-y px-2 py-1 flex justify-between items-center",children:[_,h]}),e[12]=_,e[13]=h,e[14]=f):f=e[14];let b;e[15]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsx)(E,{className:"ml-2 h-4 w-4"}),e[15]=b):b=e[15];let d;e[16]===N?d=e[17]:(d=(0,s.jsx)("div",{className:"flex justify-end",children:(0,s.jsx)(H,{children:(0,s.jsxs)(y,{className:"float-right",size:"xs",variant:"outline",onClick:N,children:["Insert snippet",b]})})}),e[16]=N,e[17]=d);let u;if(e[18]!==g||e[19]!==r.sections||e[20]!==r.title||e[21]!==o){let n;e[23]!==g||e[24]!==r.title||e[25]!==o?(n=S=>{let{code:m,html:z,id:w}=S;return z?(0,s.jsx)("div",{children:te({html:z})},`${r.title}-${w}`):m?(0,s.jsxs)("div",{className:"relative hover-actions-parent pr-2",children:[(0,s.jsx)(H,{children:(0,s.jsx)(U,{content:"Insert snippet",children:(0,s.jsx)(y,{className:"absolute -top-2 -right-1 z-10 hover-action px-2 bg-background",size:"sm",variant:"outline",onClick:()=>{g(m)},children:(0,s.jsx)(E,{className:"h-5 w-5"})})})}),(0,s.jsx)(C.Suspense,{children:(0,s.jsx)(B,{theme:o==="dark"?"dark":"light",language:"python",className:"cm border rounded overflow-hidden",extensions:je,value:m,readOnly:!0},`${r.title}-${w}`)})]},`${r.title}-${w}`):null},e[23]=g,e[24]=r.title,e[25]=o,e[26]=n):n=e[26],u=r.sections.map(n),e[18]=g,e[19]=r.sections,e[20]=r.title,e[21]=o,e[22]=u}else u=e[22];let p;e[27]!==d||e[28]!==u?(p=(0,s.jsxs)("div",{className:"px-2 py-2 space-y-4 overflow-auto flex-1",children:[d,u]}),e[27]=d,e[28]=u,e[29]=p):p=e[29];let x;return e[30]!==p||e[31]!==f?(x=(0,s.jsxs)(s.Fragment,{children:[f,p]}),e[30]=p,e[31]=f,e[32]=x):x=e[32],x},Ne=t=>{let e=(0,k.c)(7),{snippets:r,onSelect:i}=t,o;if(e[0]!==i||e[1]!==r){let a;e[3]===i?a=e[4]:(a=c=>(0,s.jsx)(oe,{className:"rounded-none",onSelect:()=>i(c),children:(0,s.jsx)("div",{className:"flex flex-row gap-2 items-center",children:(0,s.jsx)("span",{className:"mt-1 text-accent-foreground",children:c.title})})},c.title),e[3]=i,e[4]=a),o=r.map(a),e[0]=i,e[1]=r,e[2]=o}else o=e[2];let l;return e[5]===o?l=e[6]:(l=(0,s.jsx)(ne,{className:"flex flex-col overflow-auto",children:o}),e[5]=o,e[6]=l),l};export{ve as default};
1
+ import{s as I}from"./chunk-LvLJmgfZ.js";import"./useEvent-O0nX5vok.js";import{t as P}from"./react-Bj1aDYRI.js";import{E as q}from"./cells-Bg7-G3QJ.js";import"./react-dom-CSu739Rf.js";import{t as $}from"./compiler-runtime-B3qBwwSJ.js";import{n as D}from"./constants-Rz_lD4HK.js";import{t as F}from"./jsx-runtime-icT_Ltz2.js";import{i as G,t as y}from"./button-Ej3vmCIF.js";import{t as T}from"./cn-BoaCR37F.js";import{at as W}from"./dist-B_cxg-E4.js";import"./cjs-BU2qXMKx.js";import"./main-DrBRErTM.js";import"./useNonce-BtW-rR_1.js";import{r as A}from"./requests-Bgjtqo_1.js";import{n as E,t as B}from"./LazyAnyLanguageCodeMirror-Dmh6kfiy.js";import{t as J}from"./x-BI1M8X_v.js";import{t as K}from"./spinner-C5JoisA7.js";import{t as L}from"./plus-dVmh0yTy.js";import"./dist-BNC_tnlW.js";import"./dist-CXLJUPFl.js";import"./dist-CQqv2gQL.js";import"./dist-8UD0A5sU.js";import"./dist-apDpadc4.js";import"./session-BrEm7qNv.js";import{r as R}from"./useTheme-BYXBU1of.js";import"./Combination-Cs9nbinQ.js";import{t as U}from"./tooltip-D9723Brr.js";import"./purify.es-BBn8CPhf.js";import{a as V,c as Y,i as Q,n as X,r as Z}from"./dialog-CVN1lcMF.js";import{n as ee}from"./ImperativeModal-qEtcJ95s.js";import{t as te}from"./RenderHTML-D_zT74Lq.js";import{n as se}from"./error-banner-BRG6IPhC.js";import{n as re}from"./useAsyncData-D-4ifFXh.js";import{a as le,o as oe,r as ie,t as ae,u as ne}from"./command-Bb5BQ9IQ.js";import{o as me}from"./focus-DKnBT1ji.js";import{n as ce,r as de,t as M}from"./react-resizable-panels.browser.esm-DDRqG5ui.js";import{t as pe}from"./empty-state-B_US46Us.js";import{n as he,r as fe}from"./panel-context-BN0DQXiK.js";import{t as H}from"./kiosk-mode-BRjlh6JD.js";var O=$(),C=I(P(),1),s=I(F(),1);const xe=t=>{let e=(0,O.c)(6),{children:r}=t,{openModal:i,closeModal:o}=ee(),l;e[0]!==o||e[1]!==i?(l=()=>i((0,s.jsx)(ue,{onClose:o})),e[0]=o,e[1]=i,e[2]=l):l=e[2];let a;return e[3]!==r||e[4]!==l?(a=(0,s.jsx)(G,{onClick:l,children:r}),e[3]=r,e[4]=l,e[5]=a):a=e[5],a};var ue=t=>{let e=(0,O.c)(4),{onClose:r}=t,i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=(0,s.jsx)(Y,{children:"Contribute a Snippet"}),e[0]=i):i=e[0];let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=(0,s.jsxs)(V,{children:[i,(0,s.jsxs)(Z,{children:["Have a useful snippet you want to share with the community? Make a pull request"," ",(0,s.jsx)("a",{href:D.githubPage,target:"_blank",className:"underline",children:"on GitHub"}),"."]})]}),e[1]=o):o=e[1];let l;return e[2]===r?l=e[3]:(l=(0,s.jsxs)(X,{className:"max-w-md",children:[o,(0,s.jsx)(Q,{children:(0,s.jsx)(y,{"data-testid":"snippet-close-button",variant:"default",onClick:r,children:"Close"})})]}),e[2]=r,e[3]=l),l},k=$(),je=[W.lineWrapping],ve=()=>{let t=(0,k.c)(24),{readSnippets:e}=A(),[r,i]=C.useState(),o=he(),l=fe(),a;t[0]===e?a=t[1]:(a=()=>e(),t[0]=e,t[1]=a);let c;t[2]===Symbol.for("react.memo_cache_sentinel")?(c=[],t[2]=c):c=t[2];let{data:N,error:j,isPending:g}=re(a,c);if(j){let m;return t[3]===j?m=t[4]:(m=(0,s.jsx)(se,{error:j}),t[3]=j,t[4]=m),m}if(g||!N){let m;return t[5]===Symbol.for("react.memo_cache_sentinel")?(m=(0,s.jsx)(K,{size:"medium",centered:!0}),t[5]=m):m=t[5],m}let _=o==="vertical",v;t[6]===Symbol.for("react.memo_cache_sentinel")?(v=(0,s.jsx)(le,{placeholder:"Search snippets...",className:"h-6 m-1",rootClassName:"flex-1 border-r"}),t[6]=v):v=t[6];let h,f;t[7]===Symbol.for("react.memo_cache_sentinel")?(h=(0,s.jsxs)("div",{className:"flex items-center w-full border-b",children:[v,(0,s.jsx)(xe,{children:(0,s.jsx)("button",{className:"float-right px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",children:(0,s.jsx)(L,{className:"h-4 w-4"})})})]}),f=(0,s.jsx)(ie,{children:"No results"}),t[7]=h,t[8]=f):(h=t[7],f=t[8]);let b;t[9]===Symbol.for("react.memo_cache_sentinel")?(b=m=>i(m),t[9]=b):b=t[9];let d;t[10]===N.snippets?d=t[11]:(d=(0,s.jsx)(M,{defaultSize:40,minSize:20,maxSize:70,children:(0,s.jsxs)(ae,{className:"h-full rounded-none",children:[h,f,(0,s.jsx)(Ne,{onSelect:b,snippets:N.snippets})]})}),t[10]=N.snippets,t[11]=d);let u=_?"h-1":"w-1",p;t[12]===u?p=t[13]:(p=T("bg-border hover:bg-primary/50 transition-colors",u),t[12]=u,t[13]=p);let x;t[14]===p?x=t[15]:(x=(0,s.jsx)(de,{className:p}),t[14]=p,t[15]=x);let n;t[16]===r?n=t[17]:(n=(0,s.jsx)(M,{defaultSize:60,minSize:20,children:(0,s.jsx)(C.Suspense,{children:(0,s.jsx)("div",{className:"h-full snippet-viewer flex flex-col overflow-hidden",children:r?(0,s.jsx)(be,{snippet:r,onClose:()=>i(void 0)},r.title):(0,s.jsx)(pe,{title:"",description:"Click on a snippet to view its content."})})})}),t[16]=r,t[17]=n);let S;return t[18]!==o||t[19]!==l||t[20]!==n||t[21]!==d||t[22]!==x?(S=(0,s.jsx)("div",{className:"flex-1 overflow-hidden h-full",children:(0,s.jsxs)(ce,{direction:o,className:"h-full",children:[d,x,n]},l)}),t[18]=o,t[19]=l,t[20]=n,t[21]=d,t[22]=x,t[23]=S):S=t[23],S},be=t=>{let e=(0,k.c)(33),{snippet:r,onClose:i}=t,{theme:o}=R(),{createNewCell:l}=q(),a=me(),c;e[0]!==l||e[1]!==a||e[2]!==r.sections?(c=()=>{for(let n of[...r.sections].reverse())n.code&&l({code:n.code,before:!1,cellId:a??"__end__",skipIfCodeExists:!0})},e[0]=l,e[1]=a,e[2]=r.sections,e[3]=c):c=e[3];let N=c,j;e[4]!==l||e[5]!==a?(j=n=>{l({code:n,before:!1,cellId:a??"__end__"})},e[4]=l,e[5]=a,e[6]=j):j=e[6];let g=j,_;e[7]===r.title?_=e[8]:(_=(0,s.jsx)("span",{children:r.title}),e[7]=r.title,e[8]=_);let v;e[9]===Symbol.for("react.memo_cache_sentinel")?(v=(0,s.jsx)(J,{className:"h-4 w-4"}),e[9]=v):v=e[9];let h;e[10]===i?h=e[11]:(h=(0,s.jsx)(y,{size:"sm",variant:"ghost",onClick:i,className:"h-6 w-6 p-0 hover:bg-muted-foreground/10",children:v}),e[10]=i,e[11]=h);let f;e[12]!==_||e[13]!==h?(f=(0,s.jsxs)("div",{className:"text-sm font-semibold bg-muted border-y px-2 py-1 flex justify-between items-center",children:[_,h]}),e[12]=_,e[13]=h,e[14]=f):f=e[14];let b;e[15]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsx)(E,{className:"ml-2 h-4 w-4"}),e[15]=b):b=e[15];let d;e[16]===N?d=e[17]:(d=(0,s.jsx)("div",{className:"flex justify-end",children:(0,s.jsx)(H,{children:(0,s.jsxs)(y,{className:"float-right",size:"xs",variant:"outline",onClick:N,children:["Insert snippet",b]})})}),e[16]=N,e[17]=d);let u;if(e[18]!==g||e[19]!==r.sections||e[20]!==r.title||e[21]!==o){let n;e[23]!==g||e[24]!==r.title||e[25]!==o?(n=S=>{let{code:m,html:z,id:w}=S;return z?(0,s.jsx)("div",{children:te({html:z})},`${r.title}-${w}`):m?(0,s.jsxs)("div",{className:"relative hover-actions-parent pr-2",children:[(0,s.jsx)(H,{children:(0,s.jsx)(U,{content:"Insert snippet",children:(0,s.jsx)(y,{className:"absolute -top-2 -right-1 z-10 hover-action px-2 bg-background",size:"sm",variant:"outline",onClick:()=>{g(m)},children:(0,s.jsx)(E,{className:"h-5 w-5"})})})}),(0,s.jsx)(C.Suspense,{children:(0,s.jsx)(B,{theme:o==="dark"?"dark":"light",language:"python",className:"cm border rounded overflow-hidden",extensions:je,value:m,readOnly:!0},`${r.title}-${w}`)})]},`${r.title}-${w}`):null},e[23]=g,e[24]=r.title,e[25]=o,e[26]=n):n=e[26],u=r.sections.map(n),e[18]=g,e[19]=r.sections,e[20]=r.title,e[21]=o,e[22]=u}else u=e[22];let p;e[27]!==d||e[28]!==u?(p=(0,s.jsxs)("div",{className:"px-2 py-2 space-y-4 overflow-auto flex-1",children:[d,u]}),e[27]=d,e[28]=u,e[29]=p):p=e[29];let x;return e[30]!==p||e[31]!==f?(x=(0,s.jsxs)(s.Fragment,{children:[f,p]}),e[30]=p,e[31]=f,e[32]=x):x=e[32],x},Ne=t=>{let e=(0,k.c)(7),{snippets:r,onSelect:i}=t,o;if(e[0]!==i||e[1]!==r){let a;e[3]===i?a=e[4]:(a=c=>(0,s.jsx)(oe,{className:"rounded-none",onSelect:()=>i(c),children:(0,s.jsx)("div",{className:"flex flex-row gap-2 items-center",children:(0,s.jsx)("span",{className:"mt-1 text-accent-foreground",children:c.title})})},c.title),e[3]=i,e[4]=a),o=r.map(a),e[0]=i,e[1]=r,e[2]=o}else o=e[2];let l;return e[5]===o?l=e[6]:(l=(0,s.jsx)(ne,{className:"flex flex-col overflow-auto",children:o}),e[5]=o,e[6]=l),l};export{ve as default};