@marimo-team/frontend 0.18.5-dev186 → 0.18.5-dev189

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 (77) hide show
  1. package/dist/assets/{CellStatus-DqLx71xI.js → CellStatus-Bo1x1B6n.js} +1 -1
  2. package/dist/assets/{JsonOutput-3u2O9mUd.js → JsonOutput-BCHaEg3R.js} +1 -1
  3. package/dist/assets/MarimoErrorOutput-BIIhR96K.js +7 -0
  4. package/dist/assets/{RenderHTML-Dp8s4Bzr.js → RenderHTML-BUhX0rkG.js} +1 -1
  5. package/dist/assets/{add-cell-with-ai-DTIq0l6h.js → add-cell-with-ai-CLrEdPGH.js} +1 -1
  6. package/dist/assets/{add-database-form-C20ZnUUx.js → add-database-form-DkSxzOXk.js} +1 -1
  7. package/dist/assets/{agent-panel-D08HI0-X.js → agent-panel-Bz7HLWO3.js} +2 -2
  8. package/dist/assets/{ai-model-dropdown-CK5sei5N.js → ai-model-dropdown-ea-cOLAL.js} +1 -1
  9. package/dist/assets/{app-config-button-Ce5Tkr5O.js → app-config-button-BFjdAlTt.js} +1 -1
  10. package/dist/assets/{cell-link-B7EjqLUL.js → cell-link-DNVmmRzI.js} +1 -1
  11. package/dist/assets/{cells-BLhvmrVl.js → cells-Dk_j8HX9.js} +50 -50
  12. package/dist/assets/{chat-components-DHkUyXWV.js → chat-components-BMWBGknq.js} +1 -1
  13. package/dist/assets/{chat-display-DZMIiHZy.js → chat-display-CEYX5MXY.js} +1 -1
  14. package/dist/assets/{chat-panel-Bm-_lPiR.js → chat-panel-DmUjYxAt.js} +1 -1
  15. package/dist/assets/{client-hHcgVFo7.js → client-D08Rbi3p.js} +1 -1
  16. package/dist/assets/{column-preview-B1AyyIgE.js → column-preview-Cqovvoyb.js} +1 -1
  17. package/dist/assets/{command-CDWT71Ts.js → command-gUA-HncX.js} +1 -1
  18. package/dist/assets/{command-palette-BcPZK2Wg.js → command-palette-Dt43cGFk.js} +1 -1
  19. package/dist/assets/{common-4ZdFNk6L.js → common-BWR26KIv.js} +1 -1
  20. package/dist/assets/{datasource-DNy_uzDr.js → datasource-i415crE1.js} +1 -1
  21. package/dist/assets/{dependency-graph-panel-B6oPfRTp.js → dependency-graph-panel-BwaKuCE7.js} +1 -1
  22. package/dist/assets/{documentation-panel-BRHbbFlV.js → documentation-panel-C4aTmugE.js} +1 -1
  23. package/dist/assets/{download-DPiYP-j0.js → download-Dsuja3On.js} +1 -1
  24. package/dist/assets/edit-page-sCQCmucY.js +12 -0
  25. package/dist/assets/{error-panel-qGIXpWqc.js → error-panel-DCozbyWc.js} +1 -1
  26. package/dist/assets/{es-CR1H2K7u.js → es-DjCjT1hB.js} +1 -1
  27. package/dist/assets/{file-explorer-panel-DdOLBo1H.js → file-explorer-panel-BvRpCXWv.js} +1 -1
  28. package/dist/assets/{floating-outline-foC3RCPc.js → floating-outline-DYdnwTX9.js} +1 -1
  29. package/dist/assets/{focus-CgHW_IRL.js → focus-U1ePwk4d.js} +1 -1
  30. package/dist/assets/{form-NWifpNWT.js → form-D8BW7hlS.js} +1 -1
  31. package/dist/assets/{glide-data-editor-Brckuic5.js → glide-data-editor-DqvrqciP.js} +1 -1
  32. package/dist/assets/{globals-CiRTn5Vt.js → globals-BBskDqJi.js} +1 -1
  33. package/dist/assets/{home-page-WElJkZm5.js → home-page-c43aYnLs.js} +1 -1
  34. package/dist/assets/{index-CBtg35hI.js → index-BG4TYPt5.js} +4 -4
  35. package/dist/assets/{kiosk-mode-vS4t3di8.js → kiosk-mode-C23fjW_G.js} +1 -1
  36. package/dist/assets/{layout-D1qNIXxE.js → layout-DenYhPfS.js} +1 -1
  37. package/dist/assets/{logs-panel-BUqhCH8r.js → logs-panel-CmImbuAp.js} +1 -1
  38. package/dist/assets/{markdown-renderer-DgV_KnEf.js → markdown-renderer-COkLQ1b5.js} +1 -1
  39. package/dist/assets/{mode-BeOhz3YE.js → mode-BOijHAOc.js} +1 -1
  40. package/dist/assets/{name-cell-input-lVGcUDBb.js → name-cell-input-Cf2CUXDm.js} +1 -1
  41. package/dist/assets/{outline-panel-DHLUaY4X.js → outline-panel-CdaUT0TE.js} +1 -1
  42. package/dist/assets/{packages-panel-DhVyvWkj.js → packages-panel-CghFsvM0.js} +1 -1
  43. package/dist/assets/{panel-context-B3nGD1_W.js → panel-context-DUUPei-R.js} +1 -1
  44. package/dist/assets/{panels-BMfGXS7h.js → panels-CymS0QU-.js} +1 -1
  45. package/dist/assets/{process-output-C2mignv4.js → process-output-BAfpcew-.js} +1 -1
  46. package/dist/assets/{readonly-python-code-C3URGhHv.js → readonly-python-code-B8gfuyX1.js} +1 -1
  47. package/dist/assets/{run-page-BqTaOWHL.js → run-page-rr9Ilre7.js} +1 -1
  48. package/dist/assets/{scratchpad-panel-5FCgSkW8.js → scratchpad-panel-fzQUjA3o.js} +1 -1
  49. package/dist/assets/{session-panel-6od-_OeM.js → session-panel-BsMBi24k.js} +1 -1
  50. package/dist/assets/{snippets-panel-CAAC62vz.js → snippets-panel-DW6lWuPh.js} +1 -1
  51. package/dist/assets/{state-CGIjjAWG.js → state-DWEWL_KV.js} +1 -1
  52. package/dist/assets/{state-CoslvOiH.js → state-HUtu_wpA.js} +1 -1
  53. package/dist/assets/{switch-BLEwkiUl.js → switch-Cd5iA-KH.js} +1 -1
  54. package/dist/assets/{textarea-S24k5l8r.js → textarea-jTWtOsHe.js} +1 -1
  55. package/dist/assets/{tracing-Cl31yJ-W.js → tracing-CDJRdFd4.js} +1 -1
  56. package/dist/assets/{tracing-panel-Cw103_Tm.js → tracing-panel-BrBmQCJr.js} +2 -2
  57. package/dist/assets/{types-DiksLxkJ.js → types-CiMSegk1.js} +1 -1
  58. package/dist/assets/{useAddCell-DGhb_PpU.js → useAddCell-FisWjOQO.js} +1 -1
  59. package/dist/assets/{useCellActionButton-COxDEyF8.js → useCellActionButton-DLwn_yx9.js} +1 -1
  60. package/dist/assets/{useDeleteCell-BVWdwuvc.js → useDeleteCell-CFtiNna2.js} +1 -1
  61. package/dist/assets/{useDependencyPanelTab-DgtlzfpF.js → useDependencyPanelTab-DWfKzMhf.js} +1 -1
  62. package/dist/assets/{useNotebookActions-BeEH92nn.js → useNotebookActions-B4HR9n-p.js} +1 -1
  63. package/dist/assets/{useRunCells-Buew9vMX.js → useRunCells-DLQFWY1L.js} +1 -1
  64. package/dist/assets/{useSplitCell-LsoCeBEb.js → useSplitCell-DDFoE9WM.js} +1 -1
  65. package/dist/assets/{utilities.esm-BAGxBLhu.js → utilities.esm-DlnAwGsz.js} +1 -1
  66. package/dist/index.html +31 -31
  67. package/package.json +1 -1
  68. package/src/components/editor/chrome/state.ts +62 -24
  69. package/src/components/editor/chrome/wrapper/app-chrome.tsx +4 -8
  70. package/src/components/editor/chrome/wrapper/footer-items/backend-status.tsx +1 -1
  71. package/src/components/editor/chrome/wrapper/footer.tsx +5 -13
  72. package/src/components/editor/chrome/wrapper/sidebar.tsx +2 -3
  73. package/src/components/editor/output/MarimoErrorOutput.tsx +2 -2
  74. package/src/components/terminal/hooks.ts +2 -2
  75. package/src/plugins/impl/data-editor/glide-data-editor.tsx +0 -1
  76. package/dist/assets/MarimoErrorOutput-HLzwepOd.js +0 -7
  77. package/dist/assets/edit-page-BNwlX8qM.js +0 -12
@@ -1 +1 @@
1
- import{s as re}from"./chunk-LvLJmgfZ.js";import{d as oe,i as Ve,l as Me,p as ce,u as Z}from"./useEvent-DlWF5OMa.js";import{t as Oe}from"./react-BGmjiNul.js";import{A as Le,An as Pe,Bn as se,C as Ae,Dn as ze,In as Ee,Jt as me,Kr as Re,O as Ge,On as Ke,St as He,Zn as Je,a as Ue,cr as ie,d as de,dr as ue,dt as We,er as he,fn as Xe,hn as xe,ht as Ye,ir as pe,nr as Ze,pn as Qe,rr as ea,sr as fe,tr as be,ur as aa,xt as ta,zn as sa}from"./cells-BLhvmrVl.js";import"./react-dom-C9fstfnp.js";import{t as le}from"./compiler-runtime-DeeZ7FnK.js";import{i as la}from"./useLifecycle-CmDXEyIC.js";import{t as ge}from"./add-database-form-C20ZnUUx.js";import"./tooltip-CrRUCOBw.js";import{t as J}from"./sortBy-Bdnw8bdS.js";import{o as na}from"./utils-CJJIceVn.js";import"./config-babG4OBR.js";import{t as ra}from"./ErrorBoundary-Drf1manw.js";import{t as oa}from"./jsx-runtime-DN_bIXfG.js";import{r as ca,t as Q}from"./button-DuYGqRtX.js";import{t as z}from"./cn-C1rgT0yh.js";import"./dist-CAcX026F.js";import{B as ma,I as je,L as ia,R as da,k as ne,z as ua}from"./JsonOutput-3u2O9mUd.js";import"./cjs-Bj40p_Np.js";import"./main-CwSdzVhm.js";import"./useNonce-EAuSVK-5.js";import{r as ha}from"./requests-C0HaHO6a.js";import{t as xa}from"./createLucideIcon-CW2xpJ57.js";import{h as pa}from"./select-D0g5GnIs.js";import"./download-DPiYP-j0.js";import"./markdown-renderer-DgV_KnEf.js";import{t as Ne}from"./plus-CHesBJpY.js";import{t as fa}from"./refresh-cw-Din9uFKE.js";import{a as ba}from"./input-CaEtLL8p.js";import{c as ye,d as ve,f as we,l as ee,n as ga,o as ja,p as Na,u as Se}from"./column-preview-B1AyyIgE.js";import{t as ya}from"./workflow-ZGK5flRg.js";import{t as va}from"./badge-DAnNhy3O.js";import"./dist-HGZzCB0y.js";import"./dist-CVj-_Iiz.js";import"./dist-BVf1IY4_.js";import"./dist-Cq_4nPfh.js";import"./dist-RKnr9SNh.js";import"./Combination-D1TsGrBC.js";import{t as ae}from"./tooltip-CvjcEpZC.js";import"./dates-CdsE1R40.js";import{t as wa}from"./context-BAYdLMF_.js";import"./popover-DtnzNVk-.js";import"./vega-loader.browser-C8wT63Va.js";import"./defaultLocale-BLUna9fQ.js";import"./defaultLocale-DzliDDTm.js";import{t as Sa}from"./copy-icon-B69c-352.js";import"./purify.es-N-2faAGj.js";import{a as Ce,i as _e,n as Ca,r as ke}from"./multi-map-fjX9ImVF.js";import{t as $e}from"./cell-link-B7EjqLUL.js";import{n as Fe}from"./useAsyncData-BJJJOr9W.js";import{a as _a,o as te,t as ka,u as $a}from"./command-CDWT71Ts.js";import"./chunk-OGVTOU66-CjNLT2C3.js";import"./katex-AwOI3EvM.js";import"./marked.esm-CHnOtnr3.js";import{r as Fa}from"./es-CR1H2K7u.js";import{o as Ta}from"./focus-CgHW_IRL.js";import{a as Ia,i as Ba,n as Da,o as Te,r as qa,t as Va}from"./table--_20dwBZ.js";import{n as Ma}from"./icons-D4lB4En9.js";import{t as Ie}from"./useAddCell-DGhb_PpU.js";import{t as Oa}from"./empty-state-B0XJ9ZUi.js";import{n as La,t as Pa}from"./common-4ZdFNk6L.js";var Aa=xa("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"}]]),w=re(Oe(),1),za=le(),t=re(oa(),1);const Ea=a=>{let e=(0,za.c)(8),{variableName:s,className:l}=a,r;e[0]===s?r=e[1]:(r=()=>{let p=Ra(s);if(!p)return;let f=de(p);f&&me(f,s)},e[0]=s,e[1]=r);let m=r,n;e[2]===l?n=e[3]:(n=z("text-link opacity-80 hover:opacity-100 hover:underline",l),e[2]=l,e[3]=n);let j;return e[4]!==m||e[5]!==n||e[6]!==s?(j=(0,t.jsx)("button",{type:"button",onClick:m,className:n,children:s}),e[4]=m,e[5]=n,e[6]=s,e[7]=j):j=e[7],j};function Ra(a){let e=Ve.get(xe)[a];if(e)return e.declaredBy[0]}var E=le(),Ga=ce(a=>{let e=a(Ze),s=a(xe),l=a(Ue);return J(e,r=>{if(!r.variable_name)return-1;let m=Object.values(s).find(j=>j.name===r.variable_name);if(!m)return 0;let n=l.inOrderIds.indexOf(m.declaredBy[0]);return n===-1?0:n})}),Ka=ce(a=>{let e=new Map(a(Je));for(let s of ue){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 J([...e.values()],s=>ue.has(s.name)?1:0)});const Ha=()=>{let a=(0,E.c)(32),[e,s]=w.useState(""),l=oe(be),r=Z(Ga),m=Z(Ka);if(r.length===0&&m.length===0){let b;return a[0]===Symbol.for("react.memo_cache_sentinel")?(b=(0,t.jsx)(Oa,{title:"No tables found",description:"Any datasets/dataframes in the global scope will be shown here.",action:(0,t.jsx)(ge,{children:(0,t.jsxs)(Q,{variant:"outline",size:"sm",children:["Add database or catalog",(0,t.jsx)(Ne,{className:"h-4 w-4 ml-2"})]})}),icon:(0,t.jsx)(se,{})}),a[0]=b):b=a[0],b}let n=!!e.trim(),j;a[1]===l?j=a[2]:(j=b=>{l(b.length>0),s(b)},a[1]=l,a[2]=j);let p;a[3]!==e||a[4]!==j?(p=(0,t.jsx)(_a,{placeholder:"Search tables...",className:"h-6 m-1",value:e,onValueChange:j,rootClassName:"flex-1 border-r"}),a[3]=e,a[4]=j,a[5]=p):p=a[5];let f;a[6]===n?f=a[7]:(f=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)(pa,{className:"h-4 w-4"})}),a[6]=n,a[7]=f);let x;a[8]===Symbol.for("react.memo_cache_sentinel")?(x=(0,t.jsx)(ge,{children:(0,t.jsx)("button",{type:"button",className:"float-right border-b px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",children:(0,t.jsx)(Ne,{className:"h-4 w-4"})})}),a[8]=x):x=a[8];let c;a[9]!==p||a[10]!==f?(c=(0,t.jsxs)("div",{className:"flex items-center w-full",children:[p,f,x]}),a[9]=p,a[10]=f,a[11]=c):c=a[11];let o;if(a[12]!==m||a[13]!==n||a[14]!==e){let b;a[16]!==n||a[17]!==e?(b=N=>(0,t.jsx)(Ja,{connection:N,hasChildren:N.databases.length>0,children:N.databases.map(g=>(0,t.jsx)(Ua,{engineName:N.name,database:g,hasSearch:n,children:(0,t.jsx)(Wa,{schemas:g.schemas,defaultSchema:N.default_schema,defaultDatabase:N.default_database,engineName:N.name,databaseName:g.name,hasSearch:n,searchValue:e,dialect:N.dialect})},g.name))},N.name),a[16]=n,a[17]=e,a[18]=b):b=a[18],o=m.map(b),a[12]=m,a[13]=n,a[14]=e,a[15]=o}else o=a[15];let h;a[19]!==m.length||a[20]!==r.length?(h=m.length>0&&r.length>0&&(0,t.jsxs)(ye,{children:[(0,t.jsx)(Ma,{className:"h-4 w-4 text-muted-foreground"}),(0,t.jsx)("span",{className:"text-xs",children:"Python"})]}),a[19]=m.length,a[20]=r.length,a[21]=h):h=a[21];let d;a[22]!==e||a[23]!==r?(d=r.length>0&&(0,t.jsx)(Be,{tables:r,searchValue:e}),a[22]=e,a[23]=r,a[24]=d):d=a[24];let u;a[25]!==o||a[26]!==h||a[27]!==d?(u=(0,t.jsxs)($a,{className:"flex flex-col",children:[o,h,d]}),a[25]=o,a[26]=h,a[27]=d,a[28]=u):u=a[28];let i;return a[29]!==c||a[30]!==u?(i=(0,t.jsxs)(ka,{className:"border-b bg-background rounded-none h-full pb-10 overflow-auto outline-hidden",shouldFilter:!1,children:[c,u]}),a[29]=c,a[30]=u,a[31]=i):i=a[31],i};var Ja=a=>{let e=(0,E.c)(26),{connection:s,children:l,hasChildren:r}=a,m=s.name===aa,n=m?"In-Memory":s.name,{previewDataSourceConnection:j}=ha(),[p,f]=w.useState(!1),x;e[0]!==s.name||e[1]!==j?(x=async()=>{f(!0),await j({engine:s.name}),setTimeout(()=>f(!1),500)},e[0]=s.name,e[1]=j,e[2]=x):x=e[2];let c=x,o;e[3]===s.dialect?o=e[4]:(o=(0,t.jsx)(We,{className:"h-4 w-4 text-muted-foreground",name:s.dialect}),e[3]=s.dialect,e[4]=o);let h;e[5]===s.dialect?h=e[6]:(h=ze(s.dialect),e[5]=s.dialect,e[6]=h);let d;e[7]===h?d=e[8]:(d=(0,t.jsx)("span",{className:"text-xs",children:h}),e[7]=h,e[8]=d);let u=n,i;e[9]===u?i=e[10]:(i=(0,t.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",(0,t.jsx)(Ea,{variableName:u}),")"]}),e[9]=u,e[10]=i);let b;e[11]!==c||e[12]!==m||e[13]!==p?(b=!m&&(0,t.jsx)(ae,{content:"Refresh connection",children:(0,t.jsx)(Q,{variant:"ghost",size:"icon",className:"ml-auto hover:bg-transparent hover:shadow-none",onClick:c,children:(0,t.jsx)(fa,{className:z("h-4 w-4 text-muted-foreground hover:text-foreground",p&&"animate-[spin_0.5s]")})})}),e[11]=c,e[12]=m,e[13]=p,e[14]=b):b=e[14];let N;e[15]!==o||e[16]!==d||e[17]!==i||e[18]!==b?(N=(0,t.jsxs)(ye,{children:[o,d,i,b]}),e[15]=o,e[16]=d,e[17]=i,e[18]=b,e[19]=N):N=e[19];let g;e[20]!==l||e[21]!==r?(g=r?l:(0,t.jsx)(ee,{content:"No databases available",className:"pl-2"}),e[20]=l,e[21]=r,e[22]=g):g=e[22];let y;return e[23]!==N||e[24]!==g?(y=(0,t.jsxs)(t.Fragment,{children:[N,g]}),e[23]=N,e[24]=g,e[25]=y):y=e[25],y},Ua=a=>{let e=(0,E.c)(25),{hasSearch:s,engineName:l,database:r,children:m}=a,[n,j]=w.useState(!1),[p,f]=w.useState(!1),[x,c]=w.useState(s);x!==s&&(c(s),j(s));let o;e[0]!==n||e[1]!==p?(o=()=>{j(!n),f(!p)},e[0]=n,e[1]=p,e[2]=o):o=e[2];let h=`${l}:${r.name}`,d;e[3]===n?d=e[4]:(d=(0,t.jsx)(we,{isExpanded:n}),e[3]=n,e[4]=d);let u=p&&n?"text-foreground":"text-muted-foreground",i;e[5]===u?i=e[6]:(i=z("h-4 w-4",u),e[5]=u,e[6]=i);let b;e[7]===i?b=e[8]:(b=(0,t.jsx)(se,{className:i}),e[7]=i,e[8]=b);let N=p&&n&&"font-semibold",g;e[9]===N?g=e[10]:(g=z(N),e[9]=N,e[10]=g);let y;e[11]===r.name?y=e[12]:(y=r.name===""?(0,t.jsx)("i",{children:"Not connected"}):r.name,e[11]=r.name,e[12]=y);let v;e[13]!==g||e[14]!==y?(v=(0,t.jsx)("span",{className:g,children:y}),e[13]=g,e[14]=y,e[15]=v):v=e[15];let S;e[16]!==o||e[17]!==v||e[18]!==h||e[19]!==d||e[20]!==b?(S=(0,t.jsxs)(te,{className:"text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",onSelect:o,value:h,children:[d,b,v]}),e[16]=o,e[17]=v,e[18]=h,e[19]=d,e[20]=b,e[21]=S):S=e[21];let C=n&&m,_;return e[22]!==S||e[23]!==C?(_=(0,t.jsxs)(t.Fragment,{children:[S,C]}),e[22]=S,e[23]=C,e[24]=_):_=e[24],_},Wa=a=>{let e=(0,E.c)(22),{schemas:s,defaultSchema:l,defaultDatabase:r,dialect:m,engineName:n,databaseName:j,hasSearch:p,searchValue:f}=a;if(s.length===0){let o;return e[0]===Symbol.for("react.memo_cache_sentinel")?(o=(0,t.jsx)(ee,{content:"No schemas available",className:"pl-6"}),e[0]=o):o=e[0],o}let x;if(e[1]!==j||e[2]!==r||e[3]!==l||e[4]!==m||e[5]!==n||e[6]!==p||e[7]!==s||e[8]!==f){let o;e[10]===f?o=e[11]:(o=u=>f?u.tables.some(i=>i.name.toLowerCase().includes(f.toLowerCase())):!0,e[10]=f,e[11]=o);let h=s.filter(o),d;e[12]!==j||e[13]!==r||e[14]!==l||e[15]!==m||e[16]!==n||e[17]!==p||e[18]!==f?(d=u=>(0,t.jsx)(Xa,{databaseName:j,schema:u,hasSearch:p,children:(0,t.jsx)(Be,{tables:u.tables,searchValue:f,sqlTableContext:{engine:n,database:j,schema:u.name,defaultSchema:l,defaultDatabase:r,dialect:m}})},u.name),e[12]=j,e[13]=r,e[14]=l,e[15]=m,e[16]=n,e[17]=p,e[18]=f,e[19]=d):d=e[19],x=h.map(d),e[1]=j,e[2]=r,e[3]=l,e[4]=m,e[5]=n,e[6]=p,e[7]=s,e[8]=f,e[9]=x}else x=e[9];let c;return e[20]===x?c=e[21]:(c=(0,t.jsx)(t.Fragment,{children:x}),e[20]=x,e[21]=c),c},Xa=a=>{let e=(0,E.c)(23),{databaseName:s,schema:l,children:r,hasSearch:m}=a,[n,j]=w.useState(m),[p,f]=w.useState(!1),x=`${s}:${l.name}`;if(fe(l.name))return r;let c;e[0]!==n||e[1]!==p?(c=()=>{j(!n),f(!p)},e[0]=n,e[1]=p,e[2]=c):c=e[2];let o;e[3]===n?o=e[4]:(o=(0,t.jsx)(we,{isExpanded:n}),e[3]=n,e[4]=o);let h=p&&n&&"text-foreground",d;e[5]===h?d=e[6]:(d=z("h-4 w-4 text-muted-foreground",h),e[5]=h,e[6]=d);let u;e[7]===d?u=e[8]:(u=(0,t.jsx)(Ee,{className:d}),e[7]=d,e[8]=u);let i=p&&n&&"font-semibold",b;e[9]===i?b=e[10]:(b=z(i),e[9]=i,e[10]=b);let N;e[11]!==l.name||e[12]!==b?(N=(0,t.jsx)("span",{className:b,children:l.name}),e[11]=l.name,e[12]=b,e[13]=N):N=e[13];let g;e[14]!==c||e[15]!==o||e[16]!==u||e[17]!==N||e[18]!==x?(g=(0,t.jsxs)(te,{className:"text-sm flex flex-row gap-1 items-center pl-5 cursor-pointer rounded-none",onSelect:c,value:x,children:[o,u,N]}),e[14]=c,e[15]=o,e[16]=u,e[17]=N,e[18]=x,e[19]=g):g=e[19];let y=n&&r,v;return e[20]!==y||e[21]!==g?(v=(0,t.jsxs)(t.Fragment,{children:[g,y]}),e[20]=y,e[21]=g,e[22]=v):v=e[22],v},Be=a=>{let e=(0,E.c)(24),{tables:s,sqlTableContext:l,searchValue:r}=a,{addTableList:m}=he(),[n,j]=w.useState(!1),[p,f]=w.useState(!1),x;e[0]!==m||e[1]!==l||e[2]!==s.length||e[3]!==n?(x=async()=>{if(s.length===0&&l&&!n){j(!0),f(!0);let{engine:i,database:b,schema:N}=l,g=await He.request({engine:i,database:b,schema:N});if(!(g!=null&&g.tables))throw f(!1),Error("No tables available");m({tables:g.tables,sqlTableContext:l}),f(!1)}},e[0]=m,e[1]=l,e[2]=s.length,e[3]=n,e[4]=x):x=e[4];let c;e[5]!==l||e[6]!==s.length||e[7]!==n?(c=[s.length,l,n],e[5]=l,e[6]=s.length,e[7]=n,e[8]=c):c=e[8];let{isPending:o,error:h}=Fe(x,c);if(o||p){let i;return e[9]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(ve,{message:"Loading tables...",className:"pl-12"}),e[9]=i):i=e[9],i}if(h){let i;return e[10]===h?i=e[11]:(i=(0,t.jsx)(Se,{error:h,className:"pl-12"}),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)(ee,{content:"No tables found",className:"pl-9"}),e[12]=i):i=e[12],i}let d;if(e[13]!==r||e[14]!==l||e[15]!==s){let i;e[17]===r?i=e[18]:(i=g=>r?g.name.toLowerCase().includes(r.toLowerCase()):!0,e[17]=r,e[18]=i);let b=s.filter(i),N;e[19]!==r||e[20]!==l?(N=g=>(0,t.jsx)(Ya,{table:g,sqlTableContext:l,isSearching:!!r},g.name),e[19]=r,e[20]=l,e[21]=N):N=e[21],d=b.map(N),e[13]=r,e[14]=l,e[15]=s,e[16]=d}else d=e[16];let u;return e[22]===d?u=e[23]:(u=(0,t.jsx)(t.Fragment,{children:d}),e[22]=d,e[23]=u),u},Ya=a=>{let e=(0,E.c)(64),{table:s,sqlTableContext:l,isSearching:r}=a,{addTable:m}=he(),[n,j]=w.useState(!1),[p,f]=w.useState(!1),x=s.columns.length>0,c;e[0]!==m||e[1]!==n||e[2]!==l||e[3]!==s.name||e[4]!==x||e[5]!==p?(c=async()=>{if(n&&!x&&l&&!p){f(!0);let{engine:D,database:X,schema:qe}=l,Y=await ta.request({engine:D,database:X,schema:qe,tableName:s.name});if(!(Y!=null&&Y.table))throw Error("No table details available");m({table:Y.table,sqlTableContext:l})}},e[0]=m,e[1]=n,e[2]=l,e[3]=s.name,e[4]=x,e[5]=p,e[6]=c):c=e[6];let o;e[7]!==n||e[8]!==x?(o=[n,x],e[7]=n,e[8]=x,e[9]=o):o=e[9];let{isFetching:h,isPending:d,error:u}=Fe(c,o),i=Z(na),b=Ta(),{createNewCell:N}=Ae(),g=Ie(),y;e[10]!==g||e[11]!==i||e[12]!==N||e[13]!==b||e[14]!==l||e[15]!==s?(y=()=>{Fa({autoInstantiate:i,createNewCell:N,fromCellId:b}),g((()=>{if(s.source_type==="catalog"){let D=l!=null&&l.database?`${l.database}.${s.name}`:s.name;return`${s.engine}.load_table("${D}")`}if(l)return ie({table:s,columnName:"*",sqlTableContext:l});switch(s.source_type){case"local":return`mo.ui.table(${s.name})`;case"duckdb":case"connection":return ie({table:s,columnName:"*",sqlTableContext:l});default:return la(s.source_type),""}})())},e[10]=g,e[11]=i,e[12]=N,e[13]=b,e[14]=l,e[15]=s,e[16]=y):y=e[16];let v=y,S;e[17]!==s.num_columns||e[18]!==s.num_rows?(S=()=>{let D=[];return s.num_rows!=null&&D.push(`${s.num_rows} rows`),s.num_columns!=null&&D.push(`${s.num_columns} columns`),D.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:D.join(", ")})})},e[17]=s.num_columns,e[18]=s.num_rows,e[19]=S):S=e[19];let C=S,_;e[20]!==u||e[21]!==h||e[22]!==d||e[23]!==l||e[24]!==s?(_=()=>{if(d||h)return(0,t.jsx)(ve,{message:"Loading columns...",className:"pl-12"});if(u)return(0,t.jsx)(Se,{error:u,className:"pl-12"});let D=s.columns;return D.length===0?(0,t.jsx)(ee,{content:"No columns found",className:"pl-12"}):D.map(X=>(0,t.jsx)(Za,{table:s,column:X,sqlTableContext:l},X.name))},e[20]=u,e[21]=h,e[22]=d,e[23]=l,e[24]=s,e[25]=_):_=e[25];let q=_,I;e[26]!==n||e[27]!==r||e[28]!==s.source_type||e[29]!==s.type?(I=()=>{if(s.source_type!=="local")return(0,t.jsx)(s.type==="table"?Pe:sa,{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]=I):I=e[30];let V=I,M=l?`${l.database}.${l.schema}.${s.name}`:s.name,O=l&&(fe(l.schema)?"pl-9":"pl-12"),L=(n||r)&&"font-semibold",k;e[31]!==O||e[32]!==L?(k=z("rounded-none group h-8 cursor-pointer",O,L),e[31]=O,e[32]=L,e[33]=k):k=e[33];let $;e[34]===n?$=e[35]:($=()=>j(!n),e[34]=n,e[35]=$);let F;e[36]===V?F=e[37]:(F=V(),e[36]=V,e[37]=F);let B;e[38]===s.name?B=e[39]:(B=(0,t.jsx)("span",{className:"text-sm",children:s.name}),e[38]=s.name,e[39]=B);let P;e[40]!==F||e[41]!==B?(P=(0,t.jsxs)("div",{className:"flex gap-2 items-center flex-1",children:[F,B]}),e[40]=F,e[41]=B,e[42]=P):P=e[42];let A;e[43]===C?A=e[44]:(A=C(),e[43]=C,e[44]=A);let T;e[45]===v?T=e[46]:(T=ca.stopPropagation(()=>v()),e[45]=v,e[46]=T);let U;e[47]===Symbol.for("react.memo_cache_sentinel")?(U=(0,t.jsx)(Na,{className:"h-3 w-3"}),e[47]=U):U=e[47];let G;e[48]===T?G=e[49]:(G=(0,t.jsx)(ae,{content:"Add table to notebook",delayDuration:400,children:(0,t.jsx)(Q,{className:"group-hover:inline-flex hidden",variant:"text",size:"icon",onClick:T,children:U})}),e[48]=T,e[49]=G);let K;e[50]!==n||e[51]!==$||e[52]!==P||e[53]!==A||e[54]!==G||e[55]!==k||e[56]!==M?(K=(0,t.jsxs)(te,{className:k,value:M,"aria-selected":n,forceMount:!0,onSelect:$,children:[P,A,G]}),e[50]=n,e[51]=$,e[52]=P,e[53]=A,e[54]=G,e[55]=k,e[56]=M,e[57]=K):K=e[57];let H;e[58]!==n||e[59]!==q?(H=n&&q(),e[58]=n,e[59]=q,e[60]=H):H=e[60];let W;return e[61]!==K||e[62]!==H?(W=(0,t.jsxs)(t.Fragment,{children:[K,H]}),e[61]=K,e[62]=H,e[63]=W):W=e[63],W},Za=a=>{var P,A;let e=(0,E.c)(48),{table:s,column:l,sqlTableContext:r}=a,[m,n]=w.useState(!1),j=Z(be),p=oe(ea);j&&m&&n(!1),p(m?T=>new Set([...T,`${s.name}:${l.name}`]):T=>(T.delete(`${s.name}:${l.name}`),new Set(T)));let f=Ie(),{columnsPreviews:x}=pe(),c;e[0]!==l.name||e[1]!==s.primary_keys?(c=((P=s.primary_keys)==null?void 0:P.includes(l.name))||!1,e[0]=l.name,e[1]=s.primary_keys,e[2]=c):c=e[2];let o=c,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 d=h,u;e[6]===f?u=e[7]:(u=T=>{f(T)},e[6]=f,e[7]=u);let i=u,b=Qa,N=m?"font-semibold":"",g;e[8]!==l.name||e[9]!==N?(g=(0,t.jsx)("span",{className:N,children:l.name}),e[8]=l.name,e[9]=N,e[10]=g):g=e[10];let y=g,v=`${s.name}.${l.name}`,S=`${s.name}.${l.name}`,C;e[11]===m?C=e[12]:(C=()=>n(!m),e[11]=m,e[12]=C);let _=r?"pl-14":"pl-7",q;e[13]===_?q=e[14]:(q=z("flex flex-row gap-2 items-center flex-1",_),e[13]=_,e[14]=q);let I;e[15]!==l.type||e[16]!==y?(I=(0,t.jsx)(ja,{columnName:y,dataType:l.type}),e[15]=l.type,e[16]=y,e[17]=I):I=e[17];let V;e[18]===o?V=e[19]:(V=o&&b({tooltipContent:"Primary key",content:"PK"}),e[18]=o,e[19]=V);let M;e[20]===d?M=e[21]:(M=d&&b({tooltipContent:"Indexed",content:"IDX"}),e[20]=d,e[21]=M);let O;e[22]!==q||e[23]!==I||e[24]!==V||e[25]!==M?(O=(0,t.jsxs)("div",{className:q,children:[I,V,M]}),e[22]=q,e[23]=I,e[24]=V,e[25]=M,e[26]=O):O=e[26];let L;e[27]===l.name?L=e[28]:(L=(0,t.jsx)(ae,{content:"Copy column name",delayDuration:400,children:(0,t.jsx)(Q,{variant:"text",size:"icon",className:"group-hover:opacity-100 opacity-0 hover:bg-muted text-muted-foreground hover:text-foreground",children:(0,t.jsx)(Sa,{tooltip:!1,value:l.name,className:"h-3 w-3"})})}),e[27]=l.name,e[28]=L);let k;e[29]===l.external_type?k=e[30]:(k=(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:l.external_type}),e[29]=l.external_type,e[30]=k);let $;e[31]!==O||e[32]!==L||e[33]!==k||e[34]!==v||e[35]!==S||e[36]!==C?($=(0,t.jsxs)(te,{className:"rounded-none py-1 group cursor-pointer",value:S,onSelect:C,children:[O,L,k]},v),e[31]=O,e[32]=L,e[33]=k,e[34]=v,e[35]=S,e[36]=C,e[37]=$):$=e[37];let F;e[38]!==l||e[39]!==x||e[40]!==i||e[41]!==m||e[42]!==r||e[43]!==s?(F=m&&(0,t.jsx)("div",{className:"pl-10 pr-2 py-2 bg-(--slate-1) shadow-inner border-b",children:(0,t.jsx)(ra,{children:(0,t.jsx)(ga,{table:s,column:l,onAddColumnChart:i,preview:x.get(r?`${r.database}.${r.schema}.${s.name}:${l.name}`:`${s.name}:${l.name}`),sqlTableContext:r})})}),e[38]=l,e[39]=x,e[40]=i,e[41]=m,e[42]=r,e[43]=s,e[44]=F):F=e[44];let B;return e[45]!==$||e[46]!==F?(B=(0,t.jsxs)(t.Fragment,{children:[$,F]}),e[45]=$,e[46]=F,e[47]=B):B=e[47],B};function Qa(a){let{tooltipContent:e,content:s}=a;return(0,t.jsx)(ae,{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 hs(a){return a}var R={name:"name",type:"type-value",defs:"defs-refs"},et=[{id:R.name,accessorFn:a=>[a.name,a.declaredBy],enableSorting:!0,sortingFn:"alphanumeric",header:({column:a})=>(0,t.jsx)(ne,{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)(ne,{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)(ne,{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=m=>{let n=de(m);n&&me(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)($e,{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((m,n)=>(0,t.jsxs)("span",{className:"flex",children:[(0,t.jsx)($e,{variant:"focus",cellId:m,skipScroll:!0,className:"whitespace-nowrap text-destructive",onClick:()=>r(m)},m),n<e.length-1&&", "]},m))})]}),(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)(ya,{className:"w-3.5 h-3.5 text-muted-foreground"})}),(0,t.jsx)(La,{maxCount:3,cellIds:s,skipScroll:!0,onClick:r})]})]})}}];function at({variables:a,sort:e,cellIdToIndex:s}){e||(e={id:R.defs,desc:!1});let l=[];switch(e.id){case R.name:l=J(a,r=>r.name);break;case R.type:l=J(a,r=>r.dataType);break;case R.defs:l=J(a,r=>s.get(r.declaredBy[0]));break}return e.desc?l.reverse():l}const De=(0,w.memo)(({className:a,cellIds:e,variables:s})=>{let[l,r]=w.useState([]),[m,n]=w.useState(""),j=Le(),{locale:p}=wa(),f=(0,w.useMemo)(()=>{let c=o=>{let h=j[o];return Ye(h)?`cell-${e.indexOf(o)}`:h??`cell-${e.indexOf(o)}`};return Object.values(s).map(o=>({...o,declaredByNames:o.declaredBy.map(c),usedByNames:o.usedBy.map(c)}))},[s,j,e]),x=ia({data:(0,w.useMemo)(()=>{let c=new Map;return e.forEach((o,h)=>c.set(o,h)),at({variables:f,sort:l[0],cellIdToIndex:c})},[f,l,e]),columns:et,getCoreRowModel:da(),onGlobalFilterChange:n,getFilteredRowModel:ua(),enableFilters:!0,enableGlobalFilter:!0,enableColumnPinning:!1,getColumnCanGlobalFilter(c){return c.columnDef.enableGlobalFilter??!0},globalFilterFn:"auto",manualSorting:!0,locale:p,onSortingChange:r,getSortedRowModel:ma(),state:{sorting:l,globalFilter:m}});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(ba,{className:"w-full",placeholder:"Search",value:m,onChange:c=>n(c.target.value)}),(0,t.jsxs)(Va,{className:z("w-full text-sm flex-1 border-separate border-spacing-0",a),children:[(0,t.jsx)(Ia,{children:(0,t.jsx)(Te,{className:"whitespace-nowrap text-xs",children:x.getFlatHeaders().map(c=>(0,t.jsx)(Ba,{className:"sticky top-0 bg-background border-b",children:je(c.column.columnDef.header,c.getContext())},c.id))})}),(0,t.jsx)(Da,{children:x.getRowModel().rows.map(c=>(0,t.jsx)(Te,{className:"hover:bg-accent",children:c.getVisibleCells().map(o=>(0,t.jsx)(qa,{className:"border-b",children:je(o.column.columnDef.cell,o.getContext())},o.id))},c.id))})]})]})});De.displayName="VariableTable";var tt=le(),st=Re("marimo:session-panel:open-sections",["variables"],Xe),lt=()=>{let a=(0,tt.c)(20),e=Qe(),s=Ge(),l=pe(),[r,m]=Me(st),n=l.tables.length,j;a[0]===r?j=a[1]:(j=r.includes("datasources"),a[0]=r,a[1]=j);let p=j,f;a[2]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsx)(se,{className:"w-4 h-4"}),a[2]=f):f=a[2];let x;a[3]!==n||a[4]!==p?(x=!p&&n>0&&(0,t.jsx)(va,{variant:"secondary",className:"ml-1 px-1.5 py-0 text-[10px]",children:n}),a[3]=n,a[4]=p,a[5]=x):x=a[5];let c;a[6]===x?c=a[7]:(c=(0,t.jsx)(Ce,{className:"px-3 py-2 text-xs font-semibold uppercase tracking-wide hover:no-underline",children:(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[f,"Data sources",x]})}),a[6]=x,a[7]=c);let o;a[8]===Symbol.for("react.memo_cache_sentinel")?(o=(0,t.jsx)(ke,{wrapperClassName:"p-0",children:(0,t.jsx)(Ha,{})}),a[8]=o):o=a[8];let h;a[9]===c?h=a[10]:(h=(0,t.jsxs)(_e,{value:"datasources",className:"border-b",children:[c,o]}),a[9]=c,a[10]=h);let d;a[11]===Symbol.for("react.memo_cache_sentinel")?(d=(0,t.jsx)(Ce,{className:"px-3 py-2 text-xs font-semibold uppercase tracking-wide hover:no-underline",children:(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)(Ke,{className:"w-4 h-4"}),"Variables"]})}),a[11]=d):d=a[11];let u;a[12]!==s||a[13]!==e?(u=(0,t.jsxs)(_e,{value:"variables",className:"border-b-0",children:[d,(0,t.jsx)(ke,{wrapperClassName:"p-0",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)(De,{cellIds:s.inOrderIds,variables:e})})]}),a[12]=s,a[13]=e,a[14]=u):u=a[14];let i;return a[15]!==r||a[16]!==m||a[17]!==h||a[18]!==u?(i=(0,t.jsxs)(Ca,{type:"multiple",value:r,onValueChange:m,className:"flex flex-col h-full overflow-auto",children:[h,u]}),a[15]=r,a[16]=m,a[17]=h,a[18]=u,a[19]=i):i=a[19],i};export{lt as default};
1
+ import{s as re}from"./chunk-LvLJmgfZ.js";import{d as oe,i as Ve,l as Me,p as ce,u as Z}from"./useEvent-DlWF5OMa.js";import{t as Oe}from"./react-BGmjiNul.js";import{A as Le,An as Pe,Bn as se,C as Ae,Dn as ze,In as Ee,Jt as me,Kr as Re,O as Ge,On as Ke,St as He,Zn as Je,a as Ue,cr as ie,d as de,dr as ue,dt as We,er as he,fn as Xe,hn as xe,ht as Ye,ir as pe,nr as Ze,pn as Qe,rr as ea,sr as fe,tr as be,ur as aa,xt as ta,zn as sa}from"./cells-Dk_j8HX9.js";import"./react-dom-C9fstfnp.js";import{t as le}from"./compiler-runtime-DeeZ7FnK.js";import{i as la}from"./useLifecycle-CmDXEyIC.js";import{t as ge}from"./add-database-form-DkSxzOXk.js";import"./tooltip-CrRUCOBw.js";import{t as J}from"./sortBy-Bdnw8bdS.js";import{o as na}from"./utils-CJJIceVn.js";import"./config-babG4OBR.js";import{t as ra}from"./ErrorBoundary-Drf1manw.js";import{t as oa}from"./jsx-runtime-DN_bIXfG.js";import{r as ca,t as Q}from"./button-DuYGqRtX.js";import{t as z}from"./cn-C1rgT0yh.js";import"./dist-CAcX026F.js";import{B as ma,I as je,L as ia,R as da,k as ne,z as ua}from"./JsonOutput-BCHaEg3R.js";import"./cjs-Bj40p_Np.js";import"./main-CwSdzVhm.js";import"./useNonce-EAuSVK-5.js";import{r as ha}from"./requests-C0HaHO6a.js";import{t as xa}from"./createLucideIcon-CW2xpJ57.js";import{h as pa}from"./select-D0g5GnIs.js";import"./download-Dsuja3On.js";import"./markdown-renderer-COkLQ1b5.js";import{t as Ne}from"./plus-CHesBJpY.js";import{t as fa}from"./refresh-cw-Din9uFKE.js";import{a as ba}from"./input-CaEtLL8p.js";import{c as ye,d as ve,f as we,l as ee,n as ga,o as ja,p as Na,u as Se}from"./column-preview-Cqovvoyb.js";import{t as ya}from"./workflow-ZGK5flRg.js";import{t as va}from"./badge-DAnNhy3O.js";import"./dist-HGZzCB0y.js";import"./dist-CVj-_Iiz.js";import"./dist-BVf1IY4_.js";import"./dist-Cq_4nPfh.js";import"./dist-RKnr9SNh.js";import"./Combination-D1TsGrBC.js";import{t as ae}from"./tooltip-CvjcEpZC.js";import"./dates-CdsE1R40.js";import{t as wa}from"./context-BAYdLMF_.js";import"./popover-DtnzNVk-.js";import"./vega-loader.browser-C8wT63Va.js";import"./defaultLocale-BLUna9fQ.js";import"./defaultLocale-DzliDDTm.js";import{t as Sa}from"./copy-icon-B69c-352.js";import"./purify.es-N-2faAGj.js";import{a as Ce,i as _e,n as Ca,r as ke}from"./multi-map-fjX9ImVF.js";import{t as $e}from"./cell-link-DNVmmRzI.js";import{n as Fe}from"./useAsyncData-BJJJOr9W.js";import{a as _a,o as te,t as ka,u as $a}from"./command-gUA-HncX.js";import"./chunk-OGVTOU66-CjNLT2C3.js";import"./katex-AwOI3EvM.js";import"./marked.esm-CHnOtnr3.js";import{r as Fa}from"./es-DjCjT1hB.js";import{o as Ta}from"./focus-U1ePwk4d.js";import{a as Ia,i as Ba,n as Da,o as Te,r as qa,t as Va}from"./table--_20dwBZ.js";import{n as Ma}from"./icons-D4lB4En9.js";import{t as Ie}from"./useAddCell-FisWjOQO.js";import{t as Oa}from"./empty-state-B0XJ9ZUi.js";import{n as La,t as Pa}from"./common-BWR26KIv.js";var Aa=xa("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"}]]),w=re(Oe(),1),za=le(),t=re(oa(),1);const Ea=a=>{let e=(0,za.c)(8),{variableName:s,className:l}=a,r;e[0]===s?r=e[1]:(r=()=>{let p=Ra(s);if(!p)return;let f=de(p);f&&me(f,s)},e[0]=s,e[1]=r);let m=r,n;e[2]===l?n=e[3]:(n=z("text-link opacity-80 hover:opacity-100 hover:underline",l),e[2]=l,e[3]=n);let j;return e[4]!==m||e[5]!==n||e[6]!==s?(j=(0,t.jsx)("button",{type:"button",onClick:m,className:n,children:s}),e[4]=m,e[5]=n,e[6]=s,e[7]=j):j=e[7],j};function Ra(a){let e=Ve.get(xe)[a];if(e)return e.declaredBy[0]}var E=le(),Ga=ce(a=>{let e=a(Ze),s=a(xe),l=a(Ue);return J(e,r=>{if(!r.variable_name)return-1;let m=Object.values(s).find(j=>j.name===r.variable_name);if(!m)return 0;let n=l.inOrderIds.indexOf(m.declaredBy[0]);return n===-1?0:n})}),Ka=ce(a=>{let e=new Map(a(Je));for(let s of ue){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 J([...e.values()],s=>ue.has(s.name)?1:0)});const Ha=()=>{let a=(0,E.c)(32),[e,s]=w.useState(""),l=oe(be),r=Z(Ga),m=Z(Ka);if(r.length===0&&m.length===0){let b;return a[0]===Symbol.for("react.memo_cache_sentinel")?(b=(0,t.jsx)(Oa,{title:"No tables found",description:"Any datasets/dataframes in the global scope will be shown here.",action:(0,t.jsx)(ge,{children:(0,t.jsxs)(Q,{variant:"outline",size:"sm",children:["Add database or catalog",(0,t.jsx)(Ne,{className:"h-4 w-4 ml-2"})]})}),icon:(0,t.jsx)(se,{})}),a[0]=b):b=a[0],b}let n=!!e.trim(),j;a[1]===l?j=a[2]:(j=b=>{l(b.length>0),s(b)},a[1]=l,a[2]=j);let p;a[3]!==e||a[4]!==j?(p=(0,t.jsx)(_a,{placeholder:"Search tables...",className:"h-6 m-1",value:e,onValueChange:j,rootClassName:"flex-1 border-r"}),a[3]=e,a[4]=j,a[5]=p):p=a[5];let f;a[6]===n?f=a[7]:(f=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)(pa,{className:"h-4 w-4"})}),a[6]=n,a[7]=f);let x;a[8]===Symbol.for("react.memo_cache_sentinel")?(x=(0,t.jsx)(ge,{children:(0,t.jsx)("button",{type:"button",className:"float-right border-b px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",children:(0,t.jsx)(Ne,{className:"h-4 w-4"})})}),a[8]=x):x=a[8];let c;a[9]!==p||a[10]!==f?(c=(0,t.jsxs)("div",{className:"flex items-center w-full",children:[p,f,x]}),a[9]=p,a[10]=f,a[11]=c):c=a[11];let o;if(a[12]!==m||a[13]!==n||a[14]!==e){let b;a[16]!==n||a[17]!==e?(b=N=>(0,t.jsx)(Ja,{connection:N,hasChildren:N.databases.length>0,children:N.databases.map(g=>(0,t.jsx)(Ua,{engineName:N.name,database:g,hasSearch:n,children:(0,t.jsx)(Wa,{schemas:g.schemas,defaultSchema:N.default_schema,defaultDatabase:N.default_database,engineName:N.name,databaseName:g.name,hasSearch:n,searchValue:e,dialect:N.dialect})},g.name))},N.name),a[16]=n,a[17]=e,a[18]=b):b=a[18],o=m.map(b),a[12]=m,a[13]=n,a[14]=e,a[15]=o}else o=a[15];let h;a[19]!==m.length||a[20]!==r.length?(h=m.length>0&&r.length>0&&(0,t.jsxs)(ye,{children:[(0,t.jsx)(Ma,{className:"h-4 w-4 text-muted-foreground"}),(0,t.jsx)("span",{className:"text-xs",children:"Python"})]}),a[19]=m.length,a[20]=r.length,a[21]=h):h=a[21];let d;a[22]!==e||a[23]!==r?(d=r.length>0&&(0,t.jsx)(Be,{tables:r,searchValue:e}),a[22]=e,a[23]=r,a[24]=d):d=a[24];let u;a[25]!==o||a[26]!==h||a[27]!==d?(u=(0,t.jsxs)($a,{className:"flex flex-col",children:[o,h,d]}),a[25]=o,a[26]=h,a[27]=d,a[28]=u):u=a[28];let i;return a[29]!==c||a[30]!==u?(i=(0,t.jsxs)(ka,{className:"border-b bg-background rounded-none h-full pb-10 overflow-auto outline-hidden",shouldFilter:!1,children:[c,u]}),a[29]=c,a[30]=u,a[31]=i):i=a[31],i};var Ja=a=>{let e=(0,E.c)(26),{connection:s,children:l,hasChildren:r}=a,m=s.name===aa,n=m?"In-Memory":s.name,{previewDataSourceConnection:j}=ha(),[p,f]=w.useState(!1),x;e[0]!==s.name||e[1]!==j?(x=async()=>{f(!0),await j({engine:s.name}),setTimeout(()=>f(!1),500)},e[0]=s.name,e[1]=j,e[2]=x):x=e[2];let c=x,o;e[3]===s.dialect?o=e[4]:(o=(0,t.jsx)(We,{className:"h-4 w-4 text-muted-foreground",name:s.dialect}),e[3]=s.dialect,e[4]=o);let h;e[5]===s.dialect?h=e[6]:(h=ze(s.dialect),e[5]=s.dialect,e[6]=h);let d;e[7]===h?d=e[8]:(d=(0,t.jsx)("span",{className:"text-xs",children:h}),e[7]=h,e[8]=d);let u=n,i;e[9]===u?i=e[10]:(i=(0,t.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",(0,t.jsx)(Ea,{variableName:u}),")"]}),e[9]=u,e[10]=i);let b;e[11]!==c||e[12]!==m||e[13]!==p?(b=!m&&(0,t.jsx)(ae,{content:"Refresh connection",children:(0,t.jsx)(Q,{variant:"ghost",size:"icon",className:"ml-auto hover:bg-transparent hover:shadow-none",onClick:c,children:(0,t.jsx)(fa,{className:z("h-4 w-4 text-muted-foreground hover:text-foreground",p&&"animate-[spin_0.5s]")})})}),e[11]=c,e[12]=m,e[13]=p,e[14]=b):b=e[14];let N;e[15]!==o||e[16]!==d||e[17]!==i||e[18]!==b?(N=(0,t.jsxs)(ye,{children:[o,d,i,b]}),e[15]=o,e[16]=d,e[17]=i,e[18]=b,e[19]=N):N=e[19];let g;e[20]!==l||e[21]!==r?(g=r?l:(0,t.jsx)(ee,{content:"No databases available",className:"pl-2"}),e[20]=l,e[21]=r,e[22]=g):g=e[22];let y;return e[23]!==N||e[24]!==g?(y=(0,t.jsxs)(t.Fragment,{children:[N,g]}),e[23]=N,e[24]=g,e[25]=y):y=e[25],y},Ua=a=>{let e=(0,E.c)(25),{hasSearch:s,engineName:l,database:r,children:m}=a,[n,j]=w.useState(!1),[p,f]=w.useState(!1),[x,c]=w.useState(s);x!==s&&(c(s),j(s));let o;e[0]!==n||e[1]!==p?(o=()=>{j(!n),f(!p)},e[0]=n,e[1]=p,e[2]=o):o=e[2];let h=`${l}:${r.name}`,d;e[3]===n?d=e[4]:(d=(0,t.jsx)(we,{isExpanded:n}),e[3]=n,e[4]=d);let u=p&&n?"text-foreground":"text-muted-foreground",i;e[5]===u?i=e[6]:(i=z("h-4 w-4",u),e[5]=u,e[6]=i);let b;e[7]===i?b=e[8]:(b=(0,t.jsx)(se,{className:i}),e[7]=i,e[8]=b);let N=p&&n&&"font-semibold",g;e[9]===N?g=e[10]:(g=z(N),e[9]=N,e[10]=g);let y;e[11]===r.name?y=e[12]:(y=r.name===""?(0,t.jsx)("i",{children:"Not connected"}):r.name,e[11]=r.name,e[12]=y);let v;e[13]!==g||e[14]!==y?(v=(0,t.jsx)("span",{className:g,children:y}),e[13]=g,e[14]=y,e[15]=v):v=e[15];let S;e[16]!==o||e[17]!==v||e[18]!==h||e[19]!==d||e[20]!==b?(S=(0,t.jsxs)(te,{className:"text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",onSelect:o,value:h,children:[d,b,v]}),e[16]=o,e[17]=v,e[18]=h,e[19]=d,e[20]=b,e[21]=S):S=e[21];let C=n&&m,_;return e[22]!==S||e[23]!==C?(_=(0,t.jsxs)(t.Fragment,{children:[S,C]}),e[22]=S,e[23]=C,e[24]=_):_=e[24],_},Wa=a=>{let e=(0,E.c)(22),{schemas:s,defaultSchema:l,defaultDatabase:r,dialect:m,engineName:n,databaseName:j,hasSearch:p,searchValue:f}=a;if(s.length===0){let o;return e[0]===Symbol.for("react.memo_cache_sentinel")?(o=(0,t.jsx)(ee,{content:"No schemas available",className:"pl-6"}),e[0]=o):o=e[0],o}let x;if(e[1]!==j||e[2]!==r||e[3]!==l||e[4]!==m||e[5]!==n||e[6]!==p||e[7]!==s||e[8]!==f){let o;e[10]===f?o=e[11]:(o=u=>f?u.tables.some(i=>i.name.toLowerCase().includes(f.toLowerCase())):!0,e[10]=f,e[11]=o);let h=s.filter(o),d;e[12]!==j||e[13]!==r||e[14]!==l||e[15]!==m||e[16]!==n||e[17]!==p||e[18]!==f?(d=u=>(0,t.jsx)(Xa,{databaseName:j,schema:u,hasSearch:p,children:(0,t.jsx)(Be,{tables:u.tables,searchValue:f,sqlTableContext:{engine:n,database:j,schema:u.name,defaultSchema:l,defaultDatabase:r,dialect:m}})},u.name),e[12]=j,e[13]=r,e[14]=l,e[15]=m,e[16]=n,e[17]=p,e[18]=f,e[19]=d):d=e[19],x=h.map(d),e[1]=j,e[2]=r,e[3]=l,e[4]=m,e[5]=n,e[6]=p,e[7]=s,e[8]=f,e[9]=x}else x=e[9];let c;return e[20]===x?c=e[21]:(c=(0,t.jsx)(t.Fragment,{children:x}),e[20]=x,e[21]=c),c},Xa=a=>{let e=(0,E.c)(23),{databaseName:s,schema:l,children:r,hasSearch:m}=a,[n,j]=w.useState(m),[p,f]=w.useState(!1),x=`${s}:${l.name}`;if(fe(l.name))return r;let c;e[0]!==n||e[1]!==p?(c=()=>{j(!n),f(!p)},e[0]=n,e[1]=p,e[2]=c):c=e[2];let o;e[3]===n?o=e[4]:(o=(0,t.jsx)(we,{isExpanded:n}),e[3]=n,e[4]=o);let h=p&&n&&"text-foreground",d;e[5]===h?d=e[6]:(d=z("h-4 w-4 text-muted-foreground",h),e[5]=h,e[6]=d);let u;e[7]===d?u=e[8]:(u=(0,t.jsx)(Ee,{className:d}),e[7]=d,e[8]=u);let i=p&&n&&"font-semibold",b;e[9]===i?b=e[10]:(b=z(i),e[9]=i,e[10]=b);let N;e[11]!==l.name||e[12]!==b?(N=(0,t.jsx)("span",{className:b,children:l.name}),e[11]=l.name,e[12]=b,e[13]=N):N=e[13];let g;e[14]!==c||e[15]!==o||e[16]!==u||e[17]!==N||e[18]!==x?(g=(0,t.jsxs)(te,{className:"text-sm flex flex-row gap-1 items-center pl-5 cursor-pointer rounded-none",onSelect:c,value:x,children:[o,u,N]}),e[14]=c,e[15]=o,e[16]=u,e[17]=N,e[18]=x,e[19]=g):g=e[19];let y=n&&r,v;return e[20]!==y||e[21]!==g?(v=(0,t.jsxs)(t.Fragment,{children:[g,y]}),e[20]=y,e[21]=g,e[22]=v):v=e[22],v},Be=a=>{let e=(0,E.c)(24),{tables:s,sqlTableContext:l,searchValue:r}=a,{addTableList:m}=he(),[n,j]=w.useState(!1),[p,f]=w.useState(!1),x;e[0]!==m||e[1]!==l||e[2]!==s.length||e[3]!==n?(x=async()=>{if(s.length===0&&l&&!n){j(!0),f(!0);let{engine:i,database:b,schema:N}=l,g=await He.request({engine:i,database:b,schema:N});if(!(g!=null&&g.tables))throw f(!1),Error("No tables available");m({tables:g.tables,sqlTableContext:l}),f(!1)}},e[0]=m,e[1]=l,e[2]=s.length,e[3]=n,e[4]=x):x=e[4];let c;e[5]!==l||e[6]!==s.length||e[7]!==n?(c=[s.length,l,n],e[5]=l,e[6]=s.length,e[7]=n,e[8]=c):c=e[8];let{isPending:o,error:h}=Fe(x,c);if(o||p){let i;return e[9]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(ve,{message:"Loading tables...",className:"pl-12"}),e[9]=i):i=e[9],i}if(h){let i;return e[10]===h?i=e[11]:(i=(0,t.jsx)(Se,{error:h,className:"pl-12"}),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)(ee,{content:"No tables found",className:"pl-9"}),e[12]=i):i=e[12],i}let d;if(e[13]!==r||e[14]!==l||e[15]!==s){let i;e[17]===r?i=e[18]:(i=g=>r?g.name.toLowerCase().includes(r.toLowerCase()):!0,e[17]=r,e[18]=i);let b=s.filter(i),N;e[19]!==r||e[20]!==l?(N=g=>(0,t.jsx)(Ya,{table:g,sqlTableContext:l,isSearching:!!r},g.name),e[19]=r,e[20]=l,e[21]=N):N=e[21],d=b.map(N),e[13]=r,e[14]=l,e[15]=s,e[16]=d}else d=e[16];let u;return e[22]===d?u=e[23]:(u=(0,t.jsx)(t.Fragment,{children:d}),e[22]=d,e[23]=u),u},Ya=a=>{let e=(0,E.c)(64),{table:s,sqlTableContext:l,isSearching:r}=a,{addTable:m}=he(),[n,j]=w.useState(!1),[p,f]=w.useState(!1),x=s.columns.length>0,c;e[0]!==m||e[1]!==n||e[2]!==l||e[3]!==s.name||e[4]!==x||e[5]!==p?(c=async()=>{if(n&&!x&&l&&!p){f(!0);let{engine:D,database:X,schema:qe}=l,Y=await ta.request({engine:D,database:X,schema:qe,tableName:s.name});if(!(Y!=null&&Y.table))throw Error("No table details available");m({table:Y.table,sqlTableContext:l})}},e[0]=m,e[1]=n,e[2]=l,e[3]=s.name,e[4]=x,e[5]=p,e[6]=c):c=e[6];let o;e[7]!==n||e[8]!==x?(o=[n,x],e[7]=n,e[8]=x,e[9]=o):o=e[9];let{isFetching:h,isPending:d,error:u}=Fe(c,o),i=Z(na),b=Ta(),{createNewCell:N}=Ae(),g=Ie(),y;e[10]!==g||e[11]!==i||e[12]!==N||e[13]!==b||e[14]!==l||e[15]!==s?(y=()=>{Fa({autoInstantiate:i,createNewCell:N,fromCellId:b}),g((()=>{if(s.source_type==="catalog"){let D=l!=null&&l.database?`${l.database}.${s.name}`:s.name;return`${s.engine}.load_table("${D}")`}if(l)return ie({table:s,columnName:"*",sqlTableContext:l});switch(s.source_type){case"local":return`mo.ui.table(${s.name})`;case"duckdb":case"connection":return ie({table:s,columnName:"*",sqlTableContext:l});default:return la(s.source_type),""}})())},e[10]=g,e[11]=i,e[12]=N,e[13]=b,e[14]=l,e[15]=s,e[16]=y):y=e[16];let v=y,S;e[17]!==s.num_columns||e[18]!==s.num_rows?(S=()=>{let D=[];return s.num_rows!=null&&D.push(`${s.num_rows} rows`),s.num_columns!=null&&D.push(`${s.num_columns} columns`),D.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:D.join(", ")})})},e[17]=s.num_columns,e[18]=s.num_rows,e[19]=S):S=e[19];let C=S,_;e[20]!==u||e[21]!==h||e[22]!==d||e[23]!==l||e[24]!==s?(_=()=>{if(d||h)return(0,t.jsx)(ve,{message:"Loading columns...",className:"pl-12"});if(u)return(0,t.jsx)(Se,{error:u,className:"pl-12"});let D=s.columns;return D.length===0?(0,t.jsx)(ee,{content:"No columns found",className:"pl-12"}):D.map(X=>(0,t.jsx)(Za,{table:s,column:X,sqlTableContext:l},X.name))},e[20]=u,e[21]=h,e[22]=d,e[23]=l,e[24]=s,e[25]=_):_=e[25];let q=_,I;e[26]!==n||e[27]!==r||e[28]!==s.source_type||e[29]!==s.type?(I=()=>{if(s.source_type!=="local")return(0,t.jsx)(s.type==="table"?Pe:sa,{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]=I):I=e[30];let V=I,M=l?`${l.database}.${l.schema}.${s.name}`:s.name,O=l&&(fe(l.schema)?"pl-9":"pl-12"),L=(n||r)&&"font-semibold",k;e[31]!==O||e[32]!==L?(k=z("rounded-none group h-8 cursor-pointer",O,L),e[31]=O,e[32]=L,e[33]=k):k=e[33];let $;e[34]===n?$=e[35]:($=()=>j(!n),e[34]=n,e[35]=$);let F;e[36]===V?F=e[37]:(F=V(),e[36]=V,e[37]=F);let B;e[38]===s.name?B=e[39]:(B=(0,t.jsx)("span",{className:"text-sm",children:s.name}),e[38]=s.name,e[39]=B);let P;e[40]!==F||e[41]!==B?(P=(0,t.jsxs)("div",{className:"flex gap-2 items-center flex-1",children:[F,B]}),e[40]=F,e[41]=B,e[42]=P):P=e[42];let A;e[43]===C?A=e[44]:(A=C(),e[43]=C,e[44]=A);let T;e[45]===v?T=e[46]:(T=ca.stopPropagation(()=>v()),e[45]=v,e[46]=T);let U;e[47]===Symbol.for("react.memo_cache_sentinel")?(U=(0,t.jsx)(Na,{className:"h-3 w-3"}),e[47]=U):U=e[47];let G;e[48]===T?G=e[49]:(G=(0,t.jsx)(ae,{content:"Add table to notebook",delayDuration:400,children:(0,t.jsx)(Q,{className:"group-hover:inline-flex hidden",variant:"text",size:"icon",onClick:T,children:U})}),e[48]=T,e[49]=G);let K;e[50]!==n||e[51]!==$||e[52]!==P||e[53]!==A||e[54]!==G||e[55]!==k||e[56]!==M?(K=(0,t.jsxs)(te,{className:k,value:M,"aria-selected":n,forceMount:!0,onSelect:$,children:[P,A,G]}),e[50]=n,e[51]=$,e[52]=P,e[53]=A,e[54]=G,e[55]=k,e[56]=M,e[57]=K):K=e[57];let H;e[58]!==n||e[59]!==q?(H=n&&q(),e[58]=n,e[59]=q,e[60]=H):H=e[60];let W;return e[61]!==K||e[62]!==H?(W=(0,t.jsxs)(t.Fragment,{children:[K,H]}),e[61]=K,e[62]=H,e[63]=W):W=e[63],W},Za=a=>{var P,A;let e=(0,E.c)(48),{table:s,column:l,sqlTableContext:r}=a,[m,n]=w.useState(!1),j=Z(be),p=oe(ea);j&&m&&n(!1),p(m?T=>new Set([...T,`${s.name}:${l.name}`]):T=>(T.delete(`${s.name}:${l.name}`),new Set(T)));let f=Ie(),{columnsPreviews:x}=pe(),c;e[0]!==l.name||e[1]!==s.primary_keys?(c=((P=s.primary_keys)==null?void 0:P.includes(l.name))||!1,e[0]=l.name,e[1]=s.primary_keys,e[2]=c):c=e[2];let o=c,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 d=h,u;e[6]===f?u=e[7]:(u=T=>{f(T)},e[6]=f,e[7]=u);let i=u,b=Qa,N=m?"font-semibold":"",g;e[8]!==l.name||e[9]!==N?(g=(0,t.jsx)("span",{className:N,children:l.name}),e[8]=l.name,e[9]=N,e[10]=g):g=e[10];let y=g,v=`${s.name}.${l.name}`,S=`${s.name}.${l.name}`,C;e[11]===m?C=e[12]:(C=()=>n(!m),e[11]=m,e[12]=C);let _=r?"pl-14":"pl-7",q;e[13]===_?q=e[14]:(q=z("flex flex-row gap-2 items-center flex-1",_),e[13]=_,e[14]=q);let I;e[15]!==l.type||e[16]!==y?(I=(0,t.jsx)(ja,{columnName:y,dataType:l.type}),e[15]=l.type,e[16]=y,e[17]=I):I=e[17];let V;e[18]===o?V=e[19]:(V=o&&b({tooltipContent:"Primary key",content:"PK"}),e[18]=o,e[19]=V);let M;e[20]===d?M=e[21]:(M=d&&b({tooltipContent:"Indexed",content:"IDX"}),e[20]=d,e[21]=M);let O;e[22]!==q||e[23]!==I||e[24]!==V||e[25]!==M?(O=(0,t.jsxs)("div",{className:q,children:[I,V,M]}),e[22]=q,e[23]=I,e[24]=V,e[25]=M,e[26]=O):O=e[26];let L;e[27]===l.name?L=e[28]:(L=(0,t.jsx)(ae,{content:"Copy column name",delayDuration:400,children:(0,t.jsx)(Q,{variant:"text",size:"icon",className:"group-hover:opacity-100 opacity-0 hover:bg-muted text-muted-foreground hover:text-foreground",children:(0,t.jsx)(Sa,{tooltip:!1,value:l.name,className:"h-3 w-3"})})}),e[27]=l.name,e[28]=L);let k;e[29]===l.external_type?k=e[30]:(k=(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:l.external_type}),e[29]=l.external_type,e[30]=k);let $;e[31]!==O||e[32]!==L||e[33]!==k||e[34]!==v||e[35]!==S||e[36]!==C?($=(0,t.jsxs)(te,{className:"rounded-none py-1 group cursor-pointer",value:S,onSelect:C,children:[O,L,k]},v),e[31]=O,e[32]=L,e[33]=k,e[34]=v,e[35]=S,e[36]=C,e[37]=$):$=e[37];let F;e[38]!==l||e[39]!==x||e[40]!==i||e[41]!==m||e[42]!==r||e[43]!==s?(F=m&&(0,t.jsx)("div",{className:"pl-10 pr-2 py-2 bg-(--slate-1) shadow-inner border-b",children:(0,t.jsx)(ra,{children:(0,t.jsx)(ga,{table:s,column:l,onAddColumnChart:i,preview:x.get(r?`${r.database}.${r.schema}.${s.name}:${l.name}`:`${s.name}:${l.name}`),sqlTableContext:r})})}),e[38]=l,e[39]=x,e[40]=i,e[41]=m,e[42]=r,e[43]=s,e[44]=F):F=e[44];let B;return e[45]!==$||e[46]!==F?(B=(0,t.jsxs)(t.Fragment,{children:[$,F]}),e[45]=$,e[46]=F,e[47]=B):B=e[47],B};function Qa(a){let{tooltipContent:e,content:s}=a;return(0,t.jsx)(ae,{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 hs(a){return a}var R={name:"name",type:"type-value",defs:"defs-refs"},et=[{id:R.name,accessorFn:a=>[a.name,a.declaredBy],enableSorting:!0,sortingFn:"alphanumeric",header:({column:a})=>(0,t.jsx)(ne,{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)(ne,{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)(ne,{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=m=>{let n=de(m);n&&me(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)($e,{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((m,n)=>(0,t.jsxs)("span",{className:"flex",children:[(0,t.jsx)($e,{variant:"focus",cellId:m,skipScroll:!0,className:"whitespace-nowrap text-destructive",onClick:()=>r(m)},m),n<e.length-1&&", "]},m))})]}),(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)(ya,{className:"w-3.5 h-3.5 text-muted-foreground"})}),(0,t.jsx)(La,{maxCount:3,cellIds:s,skipScroll:!0,onClick:r})]})]})}}];function at({variables:a,sort:e,cellIdToIndex:s}){e||(e={id:R.defs,desc:!1});let l=[];switch(e.id){case R.name:l=J(a,r=>r.name);break;case R.type:l=J(a,r=>r.dataType);break;case R.defs:l=J(a,r=>s.get(r.declaredBy[0]));break}return e.desc?l.reverse():l}const De=(0,w.memo)(({className:a,cellIds:e,variables:s})=>{let[l,r]=w.useState([]),[m,n]=w.useState(""),j=Le(),{locale:p}=wa(),f=(0,w.useMemo)(()=>{let c=o=>{let h=j[o];return Ye(h)?`cell-${e.indexOf(o)}`:h??`cell-${e.indexOf(o)}`};return Object.values(s).map(o=>({...o,declaredByNames:o.declaredBy.map(c),usedByNames:o.usedBy.map(c)}))},[s,j,e]),x=ia({data:(0,w.useMemo)(()=>{let c=new Map;return e.forEach((o,h)=>c.set(o,h)),at({variables:f,sort:l[0],cellIdToIndex:c})},[f,l,e]),columns:et,getCoreRowModel:da(),onGlobalFilterChange:n,getFilteredRowModel:ua(),enableFilters:!0,enableGlobalFilter:!0,enableColumnPinning:!1,getColumnCanGlobalFilter(c){return c.columnDef.enableGlobalFilter??!0},globalFilterFn:"auto",manualSorting:!0,locale:p,onSortingChange:r,getSortedRowModel:ma(),state:{sorting:l,globalFilter:m}});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(ba,{className:"w-full",placeholder:"Search",value:m,onChange:c=>n(c.target.value)}),(0,t.jsxs)(Va,{className:z("w-full text-sm flex-1 border-separate border-spacing-0",a),children:[(0,t.jsx)(Ia,{children:(0,t.jsx)(Te,{className:"whitespace-nowrap text-xs",children:x.getFlatHeaders().map(c=>(0,t.jsx)(Ba,{className:"sticky top-0 bg-background border-b",children:je(c.column.columnDef.header,c.getContext())},c.id))})}),(0,t.jsx)(Da,{children:x.getRowModel().rows.map(c=>(0,t.jsx)(Te,{className:"hover:bg-accent",children:c.getVisibleCells().map(o=>(0,t.jsx)(qa,{className:"border-b",children:je(o.column.columnDef.cell,o.getContext())},o.id))},c.id))})]})]})});De.displayName="VariableTable";var tt=le(),st=Re("marimo:session-panel:open-sections",["variables"],Xe),lt=()=>{let a=(0,tt.c)(20),e=Qe(),s=Ge(),l=pe(),[r,m]=Me(st),n=l.tables.length,j;a[0]===r?j=a[1]:(j=r.includes("datasources"),a[0]=r,a[1]=j);let p=j,f;a[2]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsx)(se,{className:"w-4 h-4"}),a[2]=f):f=a[2];let x;a[3]!==n||a[4]!==p?(x=!p&&n>0&&(0,t.jsx)(va,{variant:"secondary",className:"ml-1 px-1.5 py-0 text-[10px]",children:n}),a[3]=n,a[4]=p,a[5]=x):x=a[5];let c;a[6]===x?c=a[7]:(c=(0,t.jsx)(Ce,{className:"px-3 py-2 text-xs font-semibold uppercase tracking-wide hover:no-underline",children:(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[f,"Data sources",x]})}),a[6]=x,a[7]=c);let o;a[8]===Symbol.for("react.memo_cache_sentinel")?(o=(0,t.jsx)(ke,{wrapperClassName:"p-0",children:(0,t.jsx)(Ha,{})}),a[8]=o):o=a[8];let h;a[9]===c?h=a[10]:(h=(0,t.jsxs)(_e,{value:"datasources",className:"border-b",children:[c,o]}),a[9]=c,a[10]=h);let d;a[11]===Symbol.for("react.memo_cache_sentinel")?(d=(0,t.jsx)(Ce,{className:"px-3 py-2 text-xs font-semibold uppercase tracking-wide hover:no-underline",children:(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)(Ke,{className:"w-4 h-4"}),"Variables"]})}),a[11]=d):d=a[11];let u;a[12]!==s||a[13]!==e?(u=(0,t.jsxs)(_e,{value:"variables",className:"border-b-0",children:[d,(0,t.jsx)(ke,{wrapperClassName:"p-0",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)(De,{cellIds:s.inOrderIds,variables:e})})]}),a[12]=s,a[13]=e,a[14]=u):u=a[14];let i;return a[15]!==r||a[16]!==m||a[17]!==h||a[18]!==u?(i=(0,t.jsxs)(Ca,{type:"multiple",value:r,onValueChange:m,className:"flex flex-col h-full overflow-auto",children:[h,u]}),a[15]=r,a[16]=m,a[17]=h,a[18]=u,a[19]=i):i=a[19],i};export{lt as default};
@@ -1 +1 @@
1
- import{s as z}from"./chunk-LvLJmgfZ.js";import"./useEvent-DlWF5OMa.js";import{t as P}from"./react-BGmjiNul.js";import{C as D}from"./cells-BLhvmrVl.js";import"./react-dom-C9fstfnp.js";import{t as I}from"./compiler-runtime-DeeZ7FnK.js";import{n as F}from"./constants-Bkp4R3bQ.js";import"./config-babG4OBR.js";import{t as O}from"./jsx-runtime-DN_bIXfG.js";import{i as W,t as g}from"./button-DuYGqRtX.js";import{t as q}from"./cn-C1rgT0yh.js";import{at as A}from"./dist-CAcX026F.js";import"./cjs-Bj40p_Np.js";import"./main-CwSdzVhm.js";import"./useNonce-EAuSVK-5.js";import{r as B}from"./requests-C0HaHO6a.js";import{n as $,t as G}from"./LazyAnyLanguageCodeMirror-jpEDlD0M.js";import{h as L}from"./select-D0g5GnIs.js";import{t as R}from"./spinner-C1czjtp7.js";import{t as T}from"./plus-CHesBJpY.js";import"./dist-HGZzCB0y.js";import"./dist-CVj-_Iiz.js";import"./dist-BVf1IY4_.js";import"./dist-Cq_4nPfh.js";import"./dist-RKnr9SNh.js";import{r as U}from"./useTheme-DfP1CWaW.js";import"./Combination-D1TsGrBC.js";import{t as V}from"./tooltip-CvjcEpZC.js";import{a as J,c as K,i as Q,n as X,r as Y}from"./dialog-DUEuLcT2.js";import{n as Z}from"./ImperativeModal-q6QlC2aZ.js";import{n as ee}from"./error-banner-DU5Qb8a8.js";import{t as te}from"./RenderHTML-Dp8s4Bzr.js";import"./purify.es-N-2faAGj.js";import{n as se}from"./useAsyncData-BJJJOr9W.js";import{a as re,o as le,r as oe,t as ie,u as ae}from"./command-CDWT71Ts.js";import{o as ne}from"./focus-CgHW_IRL.js";import{t as me}from"./empty-state-B0XJ9ZUi.js";import{t as M}from"./kiosk-mode-vS4t3di8.js";var E=I(),w=z(P(),1),s=z(O(),1);const ce=t=>{let e=(0,E.c)(6),{children:r}=t,{openModal:i,closeModal:o}=Z(),l;e[0]!==o||e[1]!==i?(l=()=>i((0,s.jsx)(de,{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)(W,{onClick:l,children:r}),e[3]=r,e[4]=l,e[5]=a):a=e[5],a};var de=t=>{let e=(0,E.c)(4),{onClose:r}=t,i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=(0,s.jsx)(K,{children:"Contribute a Snippet"}),e[0]=i):i=e[0];let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=(0,s.jsxs)(J,{children:[i,(0,s.jsxs)(Y,{children:["Have a useful snippet you want to share with the community? Make a pull request"," ",(0,s.jsx)("a",{href:F.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)(g,{"data-testid":"snippet-close-button",variant:"default",onClick:r,children:"Close"})})]}),e[2]=r,e[3]=l),l},C=I(),pe=[A.lineWrapping],he=()=>{let t=(0,C.c)(22),{readSnippets:e}=B(),[r,i]=w.useState(),o;t[0]===e?o=t[1]:(o=()=>e(),t[0]=e,t[1]=o);let l;t[2]===Symbol.for("react.memo_cache_sentinel")?(l=[],t[2]=l):l=t[2];let{data:a,error:m,isPending:N}=se(o,l);if(m){let n;return t[3]===m?n=t[4]:(n=(0,s.jsx)(ee,{error:m}),t[3]=m,t[4]=n),n}if(N||!a){let n;return t[5]===Symbol.for("react.memo_cache_sentinel")?(n=(0,s.jsx)(R,{size:"medium",centered:!0}),t[5]=n):n=t[5],n}let _=r?"h-1/3":"h-full",p;t[6]===_?p=t[7]:(p=q("border-b rounded-none",_),t[6]=_,t[7]=p);let h;t[8]===Symbol.for("react.memo_cache_sentinel")?(h=(0,s.jsx)(re,{placeholder:"Search snippets...",className:"h-6 m-1",rootClassName:"flex-1 border-r"}),t[8]=h):h=t[8];let b,f;t[9]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsxs)("div",{className:"flex items-center w-full",children:[h,(0,s.jsx)(ce,{children:(0,s.jsx)("button",{className:"float-right border-b px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",children:(0,s.jsx)(T,{className:"h-4 w-4"})})})]}),f=(0,s.jsx)(oe,{children:"No results"}),t[9]=b,t[10]=f):(b=t[9],f=t[10]);let x;t[11]===Symbol.for("react.memo_cache_sentinel")?(x=n=>i(n),t[11]=x):x=t[11];let u;t[12]===a.snippets?u=t[13]:(u=(0,s.jsx)(xe,{onSelect:x,snippets:a.snippets}),t[12]=a.snippets,t[13]=u);let c;t[14]!==p||t[15]!==u?(c=(0,s.jsxs)(ie,{className:p,children:[b,f,u]}),t[14]=p,t[15]=u,t[16]=c):c=t[16];let d;t[17]===r?d=t[18]:(d=(0,s.jsx)(w.Suspense,{children:(0,s.jsx)("div",{className:"h-2/3 snippet-viewer flex flex-col",children:r?(0,s.jsx)(fe,{snippet:r,onClose:()=>i(void 0)},r.title):(0,s.jsx)(me,{title:"",description:"Click on a snippet to view its content."})})}),t[17]=r,t[18]=d);let j;return t[19]!==d||t[20]!==c?(j=(0,s.jsxs)("div",{className:"flex-1 overflow-hidden",children:[c,d]}),t[19]=d,t[20]=c,t[21]=j):j=t[21],j},fe=t=>{let e=(0,C.c)(33),{snippet:r,onClose:i}=t,{theme:o}=U(),{createNewCell:l}=D(),a=ne(),m;e[0]!==l||e[1]!==a||e[2]!==r.sections?(m=()=>{for(let v of[...r.sections].reverse())v.code&&l({code:v.code,before:!1,cellId:a??"__end__",skipIfCodeExists:!0})},e[0]=l,e[1]=a,e[2]=r.sections,e[3]=m):m=e[3];let N=m,_;e[4]!==l||e[5]!==a?(_=v=>{l({code:v,before:!1,cellId:a??"__end__"})},e[4]=l,e[5]=a,e[6]=_):_=e[6];let p=_,h;e[7]===r.title?h=e[8]:(h=(0,s.jsx)("span",{children:r.title}),e[7]=r.title,e[8]=h);let b;e[9]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsx)(L,{className:"h-4 w-4"}),e[9]=b):b=e[9];let f;e[10]===i?f=e[11]:(f=(0,s.jsx)(g,{size:"sm",variant:"ghost",onClick:i,className:"h-6 w-6 p-0 hover:bg-muted-foreground/10",children:b}),e[10]=i,e[11]=f);let x;e[12]!==h||e[13]!==f?(x=(0,s.jsxs)("div",{className:"text-sm font-semibold bg-muted border-y px-2 py-1 flex justify-between items-center",children:[h,f]}),e[12]=h,e[13]=f,e[14]=x):x=e[14];let u;e[15]===Symbol.for("react.memo_cache_sentinel")?(u=(0,s.jsx)($,{className:"ml-2 h-4 w-4"}),e[15]=u):u=e[15];let c;e[16]===N?c=e[17]:(c=(0,s.jsx)("div",{className:"flex justify-end",children:(0,s.jsx)(M,{children:(0,s.jsxs)(g,{className:"float-right",size:"xs",variant:"outline",onClick:N,children:["Insert snippet",u]})})}),e[16]=N,e[17]=c);let d;if(e[18]!==p||e[19]!==r.sections||e[20]!==r.title||e[21]!==o){let v;e[23]!==p||e[24]!==r.title||e[25]!==o?(v=H=>{let{code:y,html:k,id:S}=H;return k?(0,s.jsx)("div",{children:te({html:k})},`${r.title}-${S}`):y?(0,s.jsxs)("div",{className:"relative hover-actions-parent pr-2",children:[(0,s.jsx)(M,{children:(0,s.jsx)(V,{content:"Insert snippet",children:(0,s.jsx)(g,{className:"absolute -top-2 -right-1 z-10 hover-action px-2 bg-background",size:"sm",variant:"outline",onClick:()=>{p(y)},children:(0,s.jsx)($,{className:"h-5 w-5"})})})}),(0,s.jsx)(w.Suspense,{children:(0,s.jsx)(G,{theme:o==="dark"?"dark":"light",language:"python",className:"cm border rounded overflow-hidden",extensions:pe,value:y,readOnly:!0},`${r.title}-${S}`)})]},`${r.title}-${S}`):null},e[23]=p,e[24]=r.title,e[25]=o,e[26]=v):v=e[26],d=r.sections.map(v),e[18]=p,e[19]=r.sections,e[20]=r.title,e[21]=o,e[22]=d}else d=e[22];let j;e[27]!==c||e[28]!==d?(j=(0,s.jsxs)("div",{className:"px-2 py-2 space-y-4 overflow-auto flex-1",children:[c,d]}),e[27]=c,e[28]=d,e[29]=j):j=e[29];let n;return e[30]!==j||e[31]!==x?(n=(0,s.jsxs)(s.Fragment,{children:[x,j]}),e[30]=j,e[31]=x,e[32]=n):n=e[32],n},xe=t=>{let e=(0,C.c)(7),{snippets:r,onSelect:i}=t,o;if(e[0]!==i||e[1]!==r){let a;e[3]===i?a=e[4]:(a=m=>(0,s.jsx)(le,{className:"rounded-none",onSelect:()=>i(m),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:m.title})})},m.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)(ae,{className:"flex flex-col overflow-auto",children:o}),e[5]=o,e[6]=l),l};export{he as default};
1
+ import{s as z}from"./chunk-LvLJmgfZ.js";import"./useEvent-DlWF5OMa.js";import{t as P}from"./react-BGmjiNul.js";import{C as D}from"./cells-Dk_j8HX9.js";import"./react-dom-C9fstfnp.js";import{t as I}from"./compiler-runtime-DeeZ7FnK.js";import{n as F}from"./constants-Bkp4R3bQ.js";import"./config-babG4OBR.js";import{t as O}from"./jsx-runtime-DN_bIXfG.js";import{i as W,t as g}from"./button-DuYGqRtX.js";import{t as q}from"./cn-C1rgT0yh.js";import{at as A}from"./dist-CAcX026F.js";import"./cjs-Bj40p_Np.js";import"./main-CwSdzVhm.js";import"./useNonce-EAuSVK-5.js";import{r as B}from"./requests-C0HaHO6a.js";import{n as $,t as G}from"./LazyAnyLanguageCodeMirror-jpEDlD0M.js";import{h as L}from"./select-D0g5GnIs.js";import{t as R}from"./spinner-C1czjtp7.js";import{t as T}from"./plus-CHesBJpY.js";import"./dist-HGZzCB0y.js";import"./dist-CVj-_Iiz.js";import"./dist-BVf1IY4_.js";import"./dist-Cq_4nPfh.js";import"./dist-RKnr9SNh.js";import{r as U}from"./useTheme-DfP1CWaW.js";import"./Combination-D1TsGrBC.js";import{t as V}from"./tooltip-CvjcEpZC.js";import{a as J,c as K,i as Q,n as X,r as Y}from"./dialog-DUEuLcT2.js";import{n as Z}from"./ImperativeModal-q6QlC2aZ.js";import{n as ee}from"./error-banner-DU5Qb8a8.js";import{t as te}from"./RenderHTML-BUhX0rkG.js";import"./purify.es-N-2faAGj.js";import{n as se}from"./useAsyncData-BJJJOr9W.js";import{a as re,o as le,r as oe,t as ie,u as ae}from"./command-gUA-HncX.js";import{o as ne}from"./focus-U1ePwk4d.js";import{t as me}from"./empty-state-B0XJ9ZUi.js";import{t as M}from"./kiosk-mode-C23fjW_G.js";var E=I(),w=z(P(),1),s=z(O(),1);const ce=t=>{let e=(0,E.c)(6),{children:r}=t,{openModal:i,closeModal:o}=Z(),l;e[0]!==o||e[1]!==i?(l=()=>i((0,s.jsx)(de,{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)(W,{onClick:l,children:r}),e[3]=r,e[4]=l,e[5]=a):a=e[5],a};var de=t=>{let e=(0,E.c)(4),{onClose:r}=t,i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=(0,s.jsx)(K,{children:"Contribute a Snippet"}),e[0]=i):i=e[0];let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=(0,s.jsxs)(J,{children:[i,(0,s.jsxs)(Y,{children:["Have a useful snippet you want to share with the community? Make a pull request"," ",(0,s.jsx)("a",{href:F.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)(g,{"data-testid":"snippet-close-button",variant:"default",onClick:r,children:"Close"})})]}),e[2]=r,e[3]=l),l},C=I(),pe=[A.lineWrapping],he=()=>{let t=(0,C.c)(22),{readSnippets:e}=B(),[r,i]=w.useState(),o;t[0]===e?o=t[1]:(o=()=>e(),t[0]=e,t[1]=o);let l;t[2]===Symbol.for("react.memo_cache_sentinel")?(l=[],t[2]=l):l=t[2];let{data:a,error:m,isPending:N}=se(o,l);if(m){let n;return t[3]===m?n=t[4]:(n=(0,s.jsx)(ee,{error:m}),t[3]=m,t[4]=n),n}if(N||!a){let n;return t[5]===Symbol.for("react.memo_cache_sentinel")?(n=(0,s.jsx)(R,{size:"medium",centered:!0}),t[5]=n):n=t[5],n}let _=r?"h-1/3":"h-full",p;t[6]===_?p=t[7]:(p=q("border-b rounded-none",_),t[6]=_,t[7]=p);let h;t[8]===Symbol.for("react.memo_cache_sentinel")?(h=(0,s.jsx)(re,{placeholder:"Search snippets...",className:"h-6 m-1",rootClassName:"flex-1 border-r"}),t[8]=h):h=t[8];let b,f;t[9]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsxs)("div",{className:"flex items-center w-full",children:[h,(0,s.jsx)(ce,{children:(0,s.jsx)("button",{className:"float-right border-b px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground",children:(0,s.jsx)(T,{className:"h-4 w-4"})})})]}),f=(0,s.jsx)(oe,{children:"No results"}),t[9]=b,t[10]=f):(b=t[9],f=t[10]);let x;t[11]===Symbol.for("react.memo_cache_sentinel")?(x=n=>i(n),t[11]=x):x=t[11];let u;t[12]===a.snippets?u=t[13]:(u=(0,s.jsx)(xe,{onSelect:x,snippets:a.snippets}),t[12]=a.snippets,t[13]=u);let c;t[14]!==p||t[15]!==u?(c=(0,s.jsxs)(ie,{className:p,children:[b,f,u]}),t[14]=p,t[15]=u,t[16]=c):c=t[16];let d;t[17]===r?d=t[18]:(d=(0,s.jsx)(w.Suspense,{children:(0,s.jsx)("div",{className:"h-2/3 snippet-viewer flex flex-col",children:r?(0,s.jsx)(fe,{snippet:r,onClose:()=>i(void 0)},r.title):(0,s.jsx)(me,{title:"",description:"Click on a snippet to view its content."})})}),t[17]=r,t[18]=d);let j;return t[19]!==d||t[20]!==c?(j=(0,s.jsxs)("div",{className:"flex-1 overflow-hidden",children:[c,d]}),t[19]=d,t[20]=c,t[21]=j):j=t[21],j},fe=t=>{let e=(0,C.c)(33),{snippet:r,onClose:i}=t,{theme:o}=U(),{createNewCell:l}=D(),a=ne(),m;e[0]!==l||e[1]!==a||e[2]!==r.sections?(m=()=>{for(let v of[...r.sections].reverse())v.code&&l({code:v.code,before:!1,cellId:a??"__end__",skipIfCodeExists:!0})},e[0]=l,e[1]=a,e[2]=r.sections,e[3]=m):m=e[3];let N=m,_;e[4]!==l||e[5]!==a?(_=v=>{l({code:v,before:!1,cellId:a??"__end__"})},e[4]=l,e[5]=a,e[6]=_):_=e[6];let p=_,h;e[7]===r.title?h=e[8]:(h=(0,s.jsx)("span",{children:r.title}),e[7]=r.title,e[8]=h);let b;e[9]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsx)(L,{className:"h-4 w-4"}),e[9]=b):b=e[9];let f;e[10]===i?f=e[11]:(f=(0,s.jsx)(g,{size:"sm",variant:"ghost",onClick:i,className:"h-6 w-6 p-0 hover:bg-muted-foreground/10",children:b}),e[10]=i,e[11]=f);let x;e[12]!==h||e[13]!==f?(x=(0,s.jsxs)("div",{className:"text-sm font-semibold bg-muted border-y px-2 py-1 flex justify-between items-center",children:[h,f]}),e[12]=h,e[13]=f,e[14]=x):x=e[14];let u;e[15]===Symbol.for("react.memo_cache_sentinel")?(u=(0,s.jsx)($,{className:"ml-2 h-4 w-4"}),e[15]=u):u=e[15];let c;e[16]===N?c=e[17]:(c=(0,s.jsx)("div",{className:"flex justify-end",children:(0,s.jsx)(M,{children:(0,s.jsxs)(g,{className:"float-right",size:"xs",variant:"outline",onClick:N,children:["Insert snippet",u]})})}),e[16]=N,e[17]=c);let d;if(e[18]!==p||e[19]!==r.sections||e[20]!==r.title||e[21]!==o){let v;e[23]!==p||e[24]!==r.title||e[25]!==o?(v=H=>{let{code:y,html:k,id:S}=H;return k?(0,s.jsx)("div",{children:te({html:k})},`${r.title}-${S}`):y?(0,s.jsxs)("div",{className:"relative hover-actions-parent pr-2",children:[(0,s.jsx)(M,{children:(0,s.jsx)(V,{content:"Insert snippet",children:(0,s.jsx)(g,{className:"absolute -top-2 -right-1 z-10 hover-action px-2 bg-background",size:"sm",variant:"outline",onClick:()=>{p(y)},children:(0,s.jsx)($,{className:"h-5 w-5"})})})}),(0,s.jsx)(w.Suspense,{children:(0,s.jsx)(G,{theme:o==="dark"?"dark":"light",language:"python",className:"cm border rounded overflow-hidden",extensions:pe,value:y,readOnly:!0},`${r.title}-${S}`)})]},`${r.title}-${S}`):null},e[23]=p,e[24]=r.title,e[25]=o,e[26]=v):v=e[26],d=r.sections.map(v),e[18]=p,e[19]=r.sections,e[20]=r.title,e[21]=o,e[22]=d}else d=e[22];let j;e[27]!==c||e[28]!==d?(j=(0,s.jsxs)("div",{className:"px-2 py-2 space-y-4 overflow-auto flex-1",children:[c,d]}),e[27]=c,e[28]=d,e[29]=j):j=e[29];let n;return e[30]!==j||e[31]!==x?(n=(0,s.jsxs)(s.Fragment,{children:[x,j]}),e[30]=j,e[31]=x,e[32]=n):n=e[32],n},xe=t=>{let e=(0,C.c)(7),{snippets:r,onSelect:i}=t,o;if(e[0]!==i||e[1]!==r){let a;e[3]===i?a=e[4]:(a=m=>(0,s.jsx)(le,{className:"rounded-none",onSelect:()=>i(m),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:m.title})})},m.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)(ae,{className:"flex flex-col overflow-auto",children:o}),e[5]=o,e[6]=l),l};export{he as default};