@marimo-team/frontend 0.23.4-dev0 → 0.23.4-dev1

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 (80) hide show
  1. package/dist/assets/{CellStatus-BTL_sgUY.js → CellStatus-PIeZtHEl.js} +1 -1
  2. package/dist/assets/JsonOutput-BVAcY5xS.js +49 -0
  3. package/dist/assets/{MarimoErrorOutput-BBD405a6.js → MarimoErrorOutput-B9_RO5eX.js} +2 -2
  4. package/dist/assets/{RenderHTML-BT9obKLc.js → RenderHTML-DR6lqJGS.js} +1 -1
  5. package/dist/assets/{add-cell-with-ai-qEfAzC8R.js → add-cell-with-ai-DjfY8mF1.js} +9 -9
  6. package/dist/assets/{add-connection-dialog-HCShSlr3.js → add-connection-dialog-gd2yD9Qo.js} +2 -2
  7. package/dist/assets/{agent-panel-CoBHxHpJ.js → agent-panel-TetMUXWP.js} +3 -3
  8. package/dist/assets/{ai-model-dropdown-CYx9ZfdS.js → ai-model-dropdown-By4Ohb0R.js} +3 -3
  9. package/dist/assets/{app-config-button-DC5UlXZA.js → app-config-button-YS8lpoUa.js} +1 -1
  10. package/dist/assets/{cell-editor-BMjfXh0J.js → cell-editor-C6vZfKyj.js} +10 -10
  11. package/dist/assets/{cell-link-BA7Demf0.js → cell-link-d38hFEon.js} +1 -1
  12. package/dist/assets/{cells-CJlo_hG2.js → cells-A-ljPpuj.js} +55 -55
  13. package/dist/assets/{chat-display-DbztpRD4.js → chat-display-Be0U92hE.js} +1 -1
  14. package/dist/assets/{chat-panel-H-xFzATI.js → chat-panel-BEz970S3.js} +1 -1
  15. package/dist/assets/{chat-ui-CFqAy2ck.js → chat-ui-CdW7awFa.js} +1 -1
  16. package/dist/assets/{column-preview-DzN2QumC.js → column-preview-_5uYiy74.js} +1 -1
  17. package/dist/assets/{command-DbT_zkRP.js → command-CzIDL1VI.js} +1 -1
  18. package/dist/assets/{command-palette-DSSR50KF.js → command-palette-DfotChyr.js} +1 -1
  19. package/dist/assets/{common-CquNY-ok.js → common-DC9LEIym.js} +1 -1
  20. package/dist/assets/{components-BXKuiPiF.js → components-BDnRtsA5.js} +1 -1
  21. package/dist/assets/{components-BiBOcq1x.js → components-FepcpFGL.js} +1 -1
  22. package/dist/assets/{datasource-BKDU-4D5.js → datasource-BCnGIjqn.js} +2 -2
  23. package/dist/assets/{dependency-graph-panel-ayo-Mm2j.js → dependency-graph-panel-Yk1Ch_Gj.js} +1 -1
  24. package/dist/assets/{documentation-panel-ph6755dz.js → documentation-panel-BMrGuByB.js} +1 -1
  25. package/dist/assets/{download-mzsKQgiy.js → download-Iyng0xCz.js} +4 -4
  26. package/dist/assets/{edit-page-Bxa5DWoE.js → edit-page-C-LIP5uT.js} +6 -6
  27. package/dist/assets/{error-panel-BfG_JeMA.js → error-panel-CHSsnRFF.js} +1 -1
  28. package/dist/assets/{file-explorer-panel-D7-d0Puf.js → file-explorer-panel-Dlwspu2Y.js} +3 -3
  29. package/dist/assets/{file-icons-BNrh8MRG.js → file-icons-DTNZv05h.js} +1 -1
  30. package/dist/assets/{floating-outline-BMB4_phA.js → floating-outline-CSNGDMAm.js} +1 -1
  31. package/dist/assets/{focus-BX3gXJxx.js → focus-Baz7rlo0.js} +1 -1
  32. package/dist/assets/form-Dr-_EXr8.js +2 -0
  33. package/dist/assets/{home-page-B1ELDhn8.js → home-page-QvO22-4u.js} +1 -1
  34. package/dist/assets/{hooks-b3J1eFE-.js → hooks-CNPv5U-N.js} +1 -1
  35. package/dist/assets/{html-to-image-Cz8lDF-Y.js → html-to-image-tbPEMBJg.js} +1 -1
  36. package/dist/assets/{index-BjiE1T38.js → index-BFivsT-R.js} +8 -8
  37. package/dist/assets/index-DH5UUBE4.css +2 -0
  38. package/dist/assets/{kiosk-mode-Dxbs5i5g.js → kiosk-mode-cWTXpegb.js} +1 -1
  39. package/dist/assets/{layout-lxwMDUgI.js → layout-DDh3d8oW.js} +5 -5
  40. package/dist/assets/{logs-panel-BW6S5AI1.js → logs-panel-Dgkr6V7q.js} +1 -1
  41. package/dist/assets/{markdown-renderer-CeHY2KoQ.js → markdown-renderer-CFrgiLqu.js} +1 -1
  42. package/dist/assets/{name-cell-input-B1BCybeo.js → name-cell-input-C5LXTI3T.js} +1 -1
  43. package/dist/assets/{outline-panel-DgMz83Mx.js → outline-panel-0lyts6z4.js} +1 -1
  44. package/dist/assets/{packages-panel-CbjavFh2.js → packages-panel-BhI1lbfw.js} +1 -1
  45. package/dist/assets/{panels-BPzk3EbR.js → panels-CbRenLjk.js} +1 -1
  46. package/dist/assets/{process-output-CggRIZ6s.js → process-output-BwZ5VxXO.js} +1 -1
  47. package/dist/assets/{readonly-python-code-Ccd8HM-7.js → readonly-python-code-B0nrQE3U.js} +1 -1
  48. package/dist/assets/{reveal-component-BamXsTkr.js → reveal-component-CLjsFHmT.js} +1 -1
  49. package/dist/assets/{run-page-C5cZvltI.js → run-page-C1Wd8dr8.js} +1 -1
  50. package/dist/assets/{scratchpad-panel-PMFH4Ktp.js → scratchpad-panel-DpqODhZ3.js} +1 -1
  51. package/dist/assets/{session-panel-CUTSr9rt.js → session-panel-BvCIuxgU.js} +1 -1
  52. package/dist/assets/{slide-form-Bi8ZYBHP.js → slide-form-CXqvfwGg.js} +1 -1
  53. package/dist/assets/{snippets-panel-CdhDsAII.js → snippets-panel-COBTGJcr.js} +1 -1
  54. package/dist/assets/{state-C5AUgyZT.js → state-Bsz477is.js} +1 -1
  55. package/dist/assets/{state-DHlRrwyY.js → state-LyvUXW6A.js} +2 -2
  56. package/dist/assets/{textarea-BXPC1-kb.js → textarea-Dd0InTQJ.js} +1 -1
  57. package/dist/assets/{tracing-wSufGcF9.js → tracing-DjZGgWTo.js} +1 -1
  58. package/dist/assets/{tracing-panel-BO6MMAXa.js → tracing-panel-8eFzEjG0.js} +2 -2
  59. package/dist/assets/{useAddCell-CqBbGhrY.js → useAddCell-De9xD63_.js} +1 -1
  60. package/dist/assets/{useCellActionButton-DYwx4pGE.js → useCellActionButton-Bjxun3wK.js} +1 -1
  61. package/dist/assets/{useDeleteCell-BJlGbsbV.js → useDeleteCell-C2Stbb6Q.js} +1 -1
  62. package/dist/assets/{useDependencyPanelTab-rkAIQ6zL.js → useDependencyPanelTab-DFZNQ3a8.js} +1 -1
  63. package/dist/assets/{useNotebookActions-Dga3qEHF.js → useNotebookActions-F5fGMe9N.js} +1 -1
  64. package/dist/assets/{useRunCells-B531RIUE.js → useRunCells-DU1tawR-.js} +1 -1
  65. package/dist/assets/{useSplitCell-BnuJW5uo.js → useSplitCell-BZPuhd8z.js} +1 -1
  66. package/dist/index.html +25 -25
  67. package/package.json +1 -1
  68. package/src/components/data-table/data-table.tsx +11 -2
  69. package/src/components/data-table/filter-by-values-picker.tsx +238 -0
  70. package/src/components/data-table/filter-pill-editor.tsx +470 -0
  71. package/src/components/data-table/filter-pills.tsx +177 -41
  72. package/src/components/ui/checkbox.tsx +8 -4
  73. package/src/components/ui/combobox.tsx +3 -0
  74. package/src/css/app/Cell.css +4 -0
  75. package/src/plugins/impl/DataTablePlugin.tsx +1 -0
  76. package/src/plugins/impl/data-frames/forms/__tests__/__snapshots__/form.test.tsx.snap +15 -15
  77. package/src/utils/sets.ts +13 -0
  78. package/dist/assets/JsonOutput-DXnOS_Hk.js +0 -49
  79. package/dist/assets/form-CPDlIjdV.js +0 -2
  80. package/dist/assets/index-BYLYJcAY.css +0 -2
@@ -1 +1 @@
1
- import{s as R}from"./chunk-LvLJmgfZ.js";import{u as T}from"./useEvent-D91BmmQi.js";import{t as L}from"./react-Bj1aDYRI.js";import{E as $,fi as D,x as V}from"./cells-CJlo_hG2.js";import"./react-dom-CSu739Rf.js";import{t as I}from"./compiler-runtime-B3qBwwSJ.js";import{n as P}from"./constants-DMpttj8Q.js";import{S as W,d as F}from"./config-ChCHm539.js";import{t as M}from"./cn-DCUzRj2J.js";import{t as q}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-BDxedMYP.js";import"./popover-UExmgBsf.js";import{P as G,st as B,v as H,vt as J}from"./JsonOutput-DXnOS_Hk.js";import{r as K}from"./download-mzsKQgiy.js";import{n as Q,t as E}from"./button-D9nb17Rw.js";import"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{r as X}from"./requests-DIwGYs0l.js";import"./layout-lxwMDUgI.js";import{c as Y}from"./state-svfaehZt.js";import"./markdown-renderer-CeHY2KoQ.js";import{t as Z}from"./copy-Dk_3y0H-.js";import{i as ee,l as te,n as re,r as O,t as se,u as oe}from"./panels-BPzk3EbR.js";import{t as ae}from"./spinner-Bhir8k53.js";import"./dist-Ds4ite_2.js";import"./dist-CEysMnMQ.js";import"./dist-DGxytjtv.js";import"./dist-DZ2qbK2N.js";import"./dist-CRPTyqAT.js";import{t as ie}from"./use-toast-BDYuj3zG.js";import{t as le}from"./session-nmTRerwF.js";import"./purify.es-DC4RGS9t.js";import"./dates-DhByPWH5.js";import{n as me}from"./copy-B5qyZn5s.js";import{a as ne,c as ce,l as de,n as pe,r as he,t as fe}from"./dialog-EekxpBBM.js";import{t as xe}from"./share-BXN2Sd1t.js";import"./utils-Bq5kLQ87.js";import"./vega-loader.browser-DXARUlxo.js";import"./defaultLocale-JieDVWC_.js";import"./defaultLocale-BLne0bXb.js";import{a as be}from"./cell-link-BA7Demf0.js";import"./chunk-5FQGJX7Z-B4RvNAGm.js";import"./html-to-image-Cz8lDF-Y.js";import{n as je,t as ue}from"./react-resizable-panels.browser.esm-Bcm5njwd.js";import"./esm-G1JMtvxe.js";import"./name-cell-input-B1BCybeo.js";import{n as ge,t as ye}from"./marimo-icons-BSB-Z_W3.js";import"./ws-CtTwmdal.js";import"./dist-DS5RCKZO.js";import"./dist-9g-_Ln9y.js";import"./dist-DBBYmRY4.js";import"./dist-DggusHaA.js";import"./dist-DmZscTVZ.js";import"./dist-CsEqrZxx.js";import"./dist-OWcDq-O3.js";import"./dist-ooLAQ9IK.js";import"./dist-HW7R98td.js";import"./esm-CbD72kxC.js";var ke=I(),_e=R(L(),1),t=R(q(),1);const Ne=o=>{let e=(0,ke.c)(25),{appConfig:s}=o,{setCells:r}=$(),{sendComponentValues:h}=X(),m;e[0]===h?m=e[1]:(m=()=>(O.INSTANCE.start(h),ve),e[0]=h,e[1]=m);let l;e[2]===Symbol.for("react.memo_cache_sentinel")?(l=[],e[2]=l):l=e[2],(0,_e.useEffect)(m,l);let n;e[3]===Symbol.for("react.memo_cache_sentinel")?(n=le(),e[3]=n):n=e[3];let j;e[4]===r?j=e[5]:(j={autoInstantiate:!0,setCells:r,sessionId:n},e[4]=r,e[5]=j);let{connection:a}=re(j),k=T(V),u;e[6]===a.state?u=e[7]:(u=F(a.state),e[6]=a.state,e[7]=u);let b=u,g;e[8]!==s||e[9]!==b?(g=()=>b?(0,t.jsxs)(G,{milliseconds:2e3,fallback:null,children:[(0,t.jsx)(ae,{className:"mx-auto"}),(0,t.jsx)("p",{className:"text-center text-sm text-muted-foreground mt-2",children:"Connecting..."})]}):(0,t.jsx)(ee,{appConfig:s,mode:"read"}),e[8]=s,e[9]=b,e[10]=g):g=e[10];let _=g,c;e:{if(typeof window>"u"){c=null;break e}let x,i;if(e[11]===Symbol.for("react.memo_cache_sentinel")){if(i=new URL(window.location.href),!i.searchParams.has("file")){c=null;break e}i.searchParams.delete("file"),x=i.searchParams.toString(),e[11]=x,e[12]=i,e[13]=c}else x=e[11],i=e[12],c=e[13];let w=x;c=w?`${i.pathname}?${w}`:i.pathname}let v=c,N=s.width,f;e[14]===Symbol.for("react.memo_cache_sentinel")?(f=v&&(0,t.jsx)("div",{className:"flex items-center px-6 pt-4 sm:-mt-8",children:(0,t.jsxs)("a",{href:v,"aria-label":"Back to gallery",className:M(Q({variant:"text",size:"sm"}),"gap-2 px-0 text-muted-foreground hover:text-foreground"),children:[(0,t.jsx)(Y,{className:"size-4","aria-hidden":!0}),(0,t.jsx)("span",{children:"Back"})]})}),e[14]=f):f=e[14];let d;e[15]===a?d=e[16]:(d=(0,t.jsx)(oe,{connection:a,className:"sm:pt-8",children:f}),e[15]=a,e[16]=d);let p;e[17]===_?p=e[18]:(p=_(),e[17]=_,e[18]=p);let y;return e[19]!==s.width||e[20]!==a||e[21]!==k||e[22]!==d||e[23]!==p?(y=(0,t.jsxs)(te,{connection:a,isRunning:k,width:N,children:[d,p]}),e[19]=s.width,e[20]=a,e[21]=k,e[22]=d,e[23]=p,e[24]=y):y=e[24],y};function ve(){O.INSTANCE.stop()}var U=I();const we=()=>{let o=(0,U.c)(3),e=T(D);if(!B()||!e)return null;let s;o[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsxs)("span",{children:["Static"," ",(0,t.jsx)("a",{href:P.githubPage,target:"_blank",className:"text-(--sky-11) font-medium underline",children:"marimo"})," ","notebook - Run or edit for full interactivity"]}),o[0]=s):s=o[0];let r;return o[1]===e?r=o[2]:(r=(0,t.jsxs)("div",{className:"px-4 py-2 bg-(--sky-2) border-b border-(--sky-7) text-(--sky-11) flex justify-between items-center gap-4 print:hidden text-sm","data-testid":"static-notebook-banner",children:[s,(0,t.jsx)("span",{className:"shrink-0",children:(0,t.jsx)(Se,{code:e})})]}),o[1]=e,o[2]=r),r};var Se=o=>{let e=(0,U.c)(39),{code:s}=o,r=be()||"notebook.py",h=r.lastIndexOf("/");h!==-1&&(r=r.slice(h+1));let m=window.location.href,l;e[0]===s?l=e[1]:(l=xe({code:s,baseUrl:`${P.molab}/new`}),e[0]=s,e[1]=l);let n=l,j;e[2]===Symbol.for("react.memo_cache_sentinel")?(j=(0,t.jsx)(de,{asChild:!0,children:(0,t.jsx)(E,{"data-testid":"static-notebook-dialog-trigger",variant:"outline",size:"xs",children:"Run or Edit"})}),e[2]=j):j=e[2];let a;e[3]===r?a=e[4]:(a=(0,t.jsx)(ce,{children:r}),e[3]=r,e[4]=a);let k;e[5]===Symbol.for("react.memo_cache_sentinel")?(k=(0,t.jsxs)("p",{children:["This is a static"," ",(0,t.jsx)("a",{href:P.githubPage,target:"_blank",className:"text-(--sky-11) hover:underline font-medium",children:"marimo"})," ","notebook. To run interactively:"]}),e[5]=k):k=e[5];let u;e[6]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)("br",{}),e[6]=u):u=e[6];let b;e[7]===r?b=e[8]:(b=(0,t.jsx)("div",{className:"rounded-lg p-3 border bg-(--sky-2) border-(--sky-7)",children:(0,t.jsxs)("div",{className:"font-mono text-(--sky-11) leading-relaxed",children:["pip install marimo",u,"marimo edit ",r]})}),e[7]=r,e[8]=b);let g;e[9]===Symbol.for("react.memo_cache_sentinel")?(g=!m.endsWith(".html")&&(0,t.jsxs)("div",{className:"rounded-lg p-3 border bg-(--sky-2) border-(--sky-7)",children:[(0,t.jsx)("div",{className:"text-sm text-(--sky-12) mb-1",children:"Or run directly from URL:"}),(0,t.jsxs)("div",{className:"font-mono text-(--sky-11) break-all",children:["marimo edit ",window.location.href]})]}),e[9]=g):g=e[9];let _;e[10]===Symbol.for("react.memo_cache_sentinel")?(_=(0,t.jsx)(ge,{size:12,strokeWidth:1.5,className:"mr-1.5 mt-px text-(--grass-11)"}),e[10]=_):_=e[10];let c;e[11]===n?c=e[12]:(c=(0,t.jsx)(E,{asChild:!0,variant:"outline",size:"xs",className:"shrink-0",children:(0,t.jsxs)("a",{href:n,target:"_blank",rel:"noopener noreferrer",children:[_,"Open in molab"]})}),e[11]=n,e[12]=c);let v;e[13]===Symbol.for("react.memo_cache_sentinel")?(v=(0,t.jsxs)("p",{className:"text-sm text-(--sky-12)",children:["Run this notebook in"," ",(0,t.jsx)("span",{className:"font-semibold",children:"molab"}),", marimo's cloud-hosted notebook platform."]}),e[13]=v):v=e[13];let N;e[14]===c?N=e[15]:(N=(0,t.jsxs)("div",{className:"pt-3 border-t flex gap-2 items-center",children:[c,v]}),e[14]=c,e[15]=N);let f;e[16]!==N||e[17]!==b?(f=(0,t.jsxs)(he,{className:"pt-3 text-left space-y-3",children:[k,b,g,N]}),e[16]=N,e[17]=b,e[18]=f):f=e[18];let d;e[19]!==f||e[20]!==a?(d=(0,t.jsxs)(ne,{children:[a,f]}),e[19]=f,e[20]=a,e[21]=d):d=e[21];let p;e[22]===s?p=e[23]:(p=async()=>{await me(s),ie({title:"Copied to clipboard"})},e[22]=s,e[23]=p);let y;e[24]===Symbol.for("react.memo_cache_sentinel")?(y=(0,t.jsx)(Z,{className:"w-3 h-3 mr-2"}),e[24]=y):y=e[24];let x;e[25]===p?x=e[26]:(x=(0,t.jsxs)(E,{"data-testid":"copy-static-notebook-dialog-button",variant:"outline",size:"sm",onClick:p,children:[y,"Copy code"]}),e[25]=p,e[26]=x);let i;e[27]!==s||e[28]!==r?(i=()=>{K(new Blob([s],{type:"text/plain"}),r)},e[27]=s,e[28]=r,e[29]=i):i=e[29];let w;e[30]===Symbol.for("react.memo_cache_sentinel")?(w=(0,t.jsx)(J,{className:"w-3 h-3 mr-2"}),e[30]=w):w=e[30];let S;e[31]===i?S=e[32]:(S=(0,t.jsxs)(E,{"data-testid":"download-static-notebook-dialog-button",variant:"outline",size:"sm",onClick:i,children:[w,"Download"]}),e[31]=i,e[32]=S);let C;e[33]!==x||e[34]!==S?(C=(0,t.jsxs)("div",{className:"flex gap-3 pt-2",children:[x,S]}),e[33]=x,e[34]=S,e[35]=C):C=e[35];let z;return e[36]!==d||e[37]!==C?(z=(0,t.jsxs)(fe,{children:[j,(0,t.jsxs)(pe,{children:[d,C]})]}),e[36]=d,e[37]=C,e[38]=z):z=e[38],z},A=I(),Ce=W()||B(),ze=o=>{let e=(0,A.c)(9),s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(we,{}),e[0]=s):s=e[0];let r;e[1]===o.appConfig?r=e[2]:(r=(0,t.jsx)(Ne,{appConfig:o.appConfig}),e[1]=o.appConfig,e[2]=r);let h;e[3]===Symbol.for("react.memo_cache_sentinel")?(h=Ce&&(0,t.jsx)(Pe,{}),e[3]=h):h=e[3];let m;e[4]===r?m=e[5]:(m=(0,t.jsxs)(ue,{children:[s,r,h]}),e[4]=r,e[5]=m);let l;e[6]===Symbol.for("react.memo_cache_sentinel")?(l=(0,t.jsx)(H,{}),e[6]=l):l=e[6];let n;return e[7]===m?n=e[8]:(n=(0,t.jsx)(se,{children:(0,t.jsxs)(je,{direction:"horizontal",autoSaveId:"marimo:chrome:v1:run1",children:[m,l]})}),e[7]=m,e[8]=n),n},Pe=()=>{let o=(0,A.c)(1),e;return o[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)("div",{className:"fixed bottom-0 right-0 z-50","data-testid":"watermark",children:(0,t.jsxs)("a",{href:P.githubPage,target:"_blank",className:"text-sm text-(--grass-11) font-bold tracking-wide transition-colors bg-(--grass-4) hover:bg-(--grass-5) border-t border-l border-(--grass-8) px-3 py-1 rounded-tl-md flex items-center gap-2",children:[(0,t.jsx)("span",{children:"made with marimo"}),(0,t.jsx)(ye,{className:"h-4 w-auto"})]})}),o[0]=e):e=o[0],e},Ee=ze;export{Ee as default};
1
+ import{s as R}from"./chunk-LvLJmgfZ.js";import{u as T}from"./useEvent-D91BmmQi.js";import{t as L}from"./react-Bj1aDYRI.js";import{E as $,pi as D,x as V}from"./cells-A-ljPpuj.js";import"./react-dom-CSu739Rf.js";import{t as P}from"./compiler-runtime-B3qBwwSJ.js";import{n as I}from"./constants-DMpttj8Q.js";import{S as W,d as F}from"./config-ChCHm539.js";import{t as M}from"./cn-DCUzRj2J.js";import{t as q}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-BDxedMYP.js";import"./popover-UExmgBsf.js";import{I as G,b as H,bt as J,lt as B}from"./JsonOutput-BVAcY5xS.js";import{r as K}from"./download-Iyng0xCz.js";import{n as Q,t as E}from"./button-D9nb17Rw.js";import"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{r as X}from"./requests-DIwGYs0l.js";import"./layout-DDh3d8oW.js";import{c as Y}from"./state-svfaehZt.js";import"./markdown-renderer-CFrgiLqu.js";import{t as Z}from"./copy-Dk_3y0H-.js";import{i as ee,l as te,n as re,r as O,t as se,u as oe}from"./panels-CbRenLjk.js";import{t as ae}from"./spinner-Bhir8k53.js";import"./dist-Ds4ite_2.js";import"./dist-CEysMnMQ.js";import"./dist-DGxytjtv.js";import"./dist-DZ2qbK2N.js";import"./dist-CRPTyqAT.js";import{t as ie}from"./use-toast-BDYuj3zG.js";import{t as le}from"./session-nmTRerwF.js";import"./purify.es-DC4RGS9t.js";import"./dates-DhByPWH5.js";import{n as me}from"./copy-B5qyZn5s.js";import{a as ne,c as ce,l as de,n as pe,r as he,t as fe}from"./dialog-EekxpBBM.js";import{t as xe}from"./share-BXN2Sd1t.js";import"./utils-Bq5kLQ87.js";import"./vega-loader.browser-DXARUlxo.js";import"./defaultLocale-JieDVWC_.js";import"./defaultLocale-BLne0bXb.js";import{a as be}from"./cell-link-d38hFEon.js";import"./chunk-5FQGJX7Z-B4RvNAGm.js";import"./html-to-image-tbPEMBJg.js";import{n as je,t as ue}from"./react-resizable-panels.browser.esm-Bcm5njwd.js";import"./esm-G1JMtvxe.js";import"./name-cell-input-C5LXTI3T.js";import{n as ge,t as ye}from"./marimo-icons-BSB-Z_W3.js";import"./ws-CtTwmdal.js";import"./dist-DS5RCKZO.js";import"./dist-9g-_Ln9y.js";import"./dist-DBBYmRY4.js";import"./dist-DggusHaA.js";import"./dist-DmZscTVZ.js";import"./dist-CsEqrZxx.js";import"./dist-OWcDq-O3.js";import"./dist-ooLAQ9IK.js";import"./dist-HW7R98td.js";import"./esm-CbD72kxC.js";var ke=P(),_e=R(L(),1),t=R(q(),1);const Ne=o=>{let e=(0,ke.c)(25),{appConfig:s}=o,{setCells:r}=$(),{sendComponentValues:h}=X(),m;e[0]===h?m=e[1]:(m=()=>(O.INSTANCE.start(h),ve),e[0]=h,e[1]=m);let l;e[2]===Symbol.for("react.memo_cache_sentinel")?(l=[],e[2]=l):l=e[2],(0,_e.useEffect)(m,l);let n;e[3]===Symbol.for("react.memo_cache_sentinel")?(n=le(),e[3]=n):n=e[3];let j;e[4]===r?j=e[5]:(j={autoInstantiate:!0,setCells:r,sessionId:n},e[4]=r,e[5]=j);let{connection:a}=re(j),k=T(V),u;e[6]===a.state?u=e[7]:(u=F(a.state),e[6]=a.state,e[7]=u);let b=u,g;e[8]!==s||e[9]!==b?(g=()=>b?(0,t.jsxs)(G,{milliseconds:2e3,fallback:null,children:[(0,t.jsx)(ae,{className:"mx-auto"}),(0,t.jsx)("p",{className:"text-center text-sm text-muted-foreground mt-2",children:"Connecting..."})]}):(0,t.jsx)(ee,{appConfig:s,mode:"read"}),e[8]=s,e[9]=b,e[10]=g):g=e[10];let _=g,c;e:{if(typeof window>"u"){c=null;break e}let x,i;if(e[11]===Symbol.for("react.memo_cache_sentinel")){if(i=new URL(window.location.href),!i.searchParams.has("file")){c=null;break e}i.searchParams.delete("file"),x=i.searchParams.toString(),e[11]=x,e[12]=i,e[13]=c}else x=e[11],i=e[12],c=e[13];let w=x;c=w?`${i.pathname}?${w}`:i.pathname}let v=c,N=s.width,f;e[14]===Symbol.for("react.memo_cache_sentinel")?(f=v&&(0,t.jsx)("div",{className:"flex items-center px-6 pt-4 sm:-mt-8",children:(0,t.jsxs)("a",{href:v,"aria-label":"Back to gallery",className:M(Q({variant:"text",size:"sm"}),"gap-2 px-0 text-muted-foreground hover:text-foreground"),children:[(0,t.jsx)(Y,{className:"size-4","aria-hidden":!0}),(0,t.jsx)("span",{children:"Back"})]})}),e[14]=f):f=e[14];let d;e[15]===a?d=e[16]:(d=(0,t.jsx)(oe,{connection:a,className:"sm:pt-8",children:f}),e[15]=a,e[16]=d);let p;e[17]===_?p=e[18]:(p=_(),e[17]=_,e[18]=p);let y;return e[19]!==s.width||e[20]!==a||e[21]!==k||e[22]!==d||e[23]!==p?(y=(0,t.jsxs)(te,{connection:a,isRunning:k,width:N,children:[d,p]}),e[19]=s.width,e[20]=a,e[21]=k,e[22]=d,e[23]=p,e[24]=y):y=e[24],y};function ve(){O.INSTANCE.stop()}var U=P();const we=()=>{let o=(0,U.c)(3),e=T(D);if(!B()||!e)return null;let s;o[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsxs)("span",{children:["Static"," ",(0,t.jsx)("a",{href:I.githubPage,target:"_blank",className:"text-(--sky-11) font-medium underline",children:"marimo"})," ","notebook - Run or edit for full interactivity"]}),o[0]=s):s=o[0];let r;return o[1]===e?r=o[2]:(r=(0,t.jsxs)("div",{className:"px-4 py-2 bg-(--sky-2) border-b border-(--sky-7) text-(--sky-11) flex justify-between items-center gap-4 print:hidden text-sm","data-testid":"static-notebook-banner",children:[s,(0,t.jsx)("span",{className:"shrink-0",children:(0,t.jsx)(Se,{code:e})})]}),o[1]=e,o[2]=r),r};var Se=o=>{let e=(0,U.c)(39),{code:s}=o,r=be()||"notebook.py",h=r.lastIndexOf("/");h!==-1&&(r=r.slice(h+1));let m=window.location.href,l;e[0]===s?l=e[1]:(l=xe({code:s,baseUrl:`${I.molab}/new`}),e[0]=s,e[1]=l);let n=l,j;e[2]===Symbol.for("react.memo_cache_sentinel")?(j=(0,t.jsx)(de,{asChild:!0,children:(0,t.jsx)(E,{"data-testid":"static-notebook-dialog-trigger",variant:"outline",size:"xs",children:"Run or Edit"})}),e[2]=j):j=e[2];let a;e[3]===r?a=e[4]:(a=(0,t.jsx)(ce,{children:r}),e[3]=r,e[4]=a);let k;e[5]===Symbol.for("react.memo_cache_sentinel")?(k=(0,t.jsxs)("p",{children:["This is a static"," ",(0,t.jsx)("a",{href:I.githubPage,target:"_blank",className:"text-(--sky-11) hover:underline font-medium",children:"marimo"})," ","notebook. To run interactively:"]}),e[5]=k):k=e[5];let u;e[6]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)("br",{}),e[6]=u):u=e[6];let b;e[7]===r?b=e[8]:(b=(0,t.jsx)("div",{className:"rounded-lg p-3 border bg-(--sky-2) border-(--sky-7)",children:(0,t.jsxs)("div",{className:"font-mono text-(--sky-11) leading-relaxed",children:["pip install marimo",u,"marimo edit ",r]})}),e[7]=r,e[8]=b);let g;e[9]===Symbol.for("react.memo_cache_sentinel")?(g=!m.endsWith(".html")&&(0,t.jsxs)("div",{className:"rounded-lg p-3 border bg-(--sky-2) border-(--sky-7)",children:[(0,t.jsx)("div",{className:"text-sm text-(--sky-12) mb-1",children:"Or run directly from URL:"}),(0,t.jsxs)("div",{className:"font-mono text-(--sky-11) break-all",children:["marimo edit ",window.location.href]})]}),e[9]=g):g=e[9];let _;e[10]===Symbol.for("react.memo_cache_sentinel")?(_=(0,t.jsx)(ge,{size:12,strokeWidth:1.5,className:"mr-1.5 mt-px text-(--grass-11)"}),e[10]=_):_=e[10];let c;e[11]===n?c=e[12]:(c=(0,t.jsx)(E,{asChild:!0,variant:"outline",size:"xs",className:"shrink-0",children:(0,t.jsxs)("a",{href:n,target:"_blank",rel:"noopener noreferrer",children:[_,"Open in molab"]})}),e[11]=n,e[12]=c);let v;e[13]===Symbol.for("react.memo_cache_sentinel")?(v=(0,t.jsxs)("p",{className:"text-sm text-(--sky-12)",children:["Run this notebook in"," ",(0,t.jsx)("span",{className:"font-semibold",children:"molab"}),", marimo's cloud-hosted notebook platform."]}),e[13]=v):v=e[13];let N;e[14]===c?N=e[15]:(N=(0,t.jsxs)("div",{className:"pt-3 border-t flex gap-2 items-center",children:[c,v]}),e[14]=c,e[15]=N);let f;e[16]!==N||e[17]!==b?(f=(0,t.jsxs)(he,{className:"pt-3 text-left space-y-3",children:[k,b,g,N]}),e[16]=N,e[17]=b,e[18]=f):f=e[18];let d;e[19]!==f||e[20]!==a?(d=(0,t.jsxs)(ne,{children:[a,f]}),e[19]=f,e[20]=a,e[21]=d):d=e[21];let p;e[22]===s?p=e[23]:(p=async()=>{await me(s),ie({title:"Copied to clipboard"})},e[22]=s,e[23]=p);let y;e[24]===Symbol.for("react.memo_cache_sentinel")?(y=(0,t.jsx)(Z,{className:"w-3 h-3 mr-2"}),e[24]=y):y=e[24];let x;e[25]===p?x=e[26]:(x=(0,t.jsxs)(E,{"data-testid":"copy-static-notebook-dialog-button",variant:"outline",size:"sm",onClick:p,children:[y,"Copy code"]}),e[25]=p,e[26]=x);let i;e[27]!==s||e[28]!==r?(i=()=>{K(new Blob([s],{type:"text/plain"}),r)},e[27]=s,e[28]=r,e[29]=i):i=e[29];let w;e[30]===Symbol.for("react.memo_cache_sentinel")?(w=(0,t.jsx)(J,{className:"w-3 h-3 mr-2"}),e[30]=w):w=e[30];let S;e[31]===i?S=e[32]:(S=(0,t.jsxs)(E,{"data-testid":"download-static-notebook-dialog-button",variant:"outline",size:"sm",onClick:i,children:[w,"Download"]}),e[31]=i,e[32]=S);let C;e[33]!==x||e[34]!==S?(C=(0,t.jsxs)("div",{className:"flex gap-3 pt-2",children:[x,S]}),e[33]=x,e[34]=S,e[35]=C):C=e[35];let z;return e[36]!==d||e[37]!==C?(z=(0,t.jsxs)(fe,{children:[j,(0,t.jsxs)(pe,{children:[d,C]})]}),e[36]=d,e[37]=C,e[38]=z):z=e[38],z},A=P(),Ce=W()||B(),ze=o=>{let e=(0,A.c)(9),s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(we,{}),e[0]=s):s=e[0];let r;e[1]===o.appConfig?r=e[2]:(r=(0,t.jsx)(Ne,{appConfig:o.appConfig}),e[1]=o.appConfig,e[2]=r);let h;e[3]===Symbol.for("react.memo_cache_sentinel")?(h=Ce&&(0,t.jsx)(Ie,{}),e[3]=h):h=e[3];let m;e[4]===r?m=e[5]:(m=(0,t.jsxs)(ue,{children:[s,r,h]}),e[4]=r,e[5]=m);let l;e[6]===Symbol.for("react.memo_cache_sentinel")?(l=(0,t.jsx)(H,{}),e[6]=l):l=e[6];let n;return e[7]===m?n=e[8]:(n=(0,t.jsx)(se,{children:(0,t.jsxs)(je,{direction:"horizontal",autoSaveId:"marimo:chrome:v1:run1",children:[m,l]})}),e[7]=m,e[8]=n),n},Ie=()=>{let o=(0,A.c)(1),e;return o[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)("div",{className:"fixed bottom-0 right-0 z-50","data-testid":"watermark",children:(0,t.jsxs)("a",{href:I.githubPage,target:"_blank",className:"text-sm text-(--grass-11) font-bold tracking-wide transition-colors bg-(--grass-4) hover:bg-(--grass-5) border-t border-l border-(--grass-8) px-3 py-1 rounded-tl-md flex items-center gap-2",children:[(0,t.jsx)("span",{children:"made with marimo"}),(0,t.jsx)(ye,{className:"h-4 w-auto"})]})}),o[0]=e):e=o[0],e},Ee=ze;export{Ee as default};
@@ -1 +1 @@
1
- import{s as ae}from"./chunk-LvLJmgfZ.js";import{d as ye,l as be,n as V,p as oe,u as Ne}from"./useEvent-D91BmmQi.js";import{t as we}from"./react-Bj1aDYRI.js";import{Di as n,E as ke,Ei as ze,F as Ce,Nn as Se,vi as Oe,__tla as Ae}from"./cells-CJlo_hG2.js";import"./react-dom-CSu739Rf.js";import{t as se}from"./compiler-runtime-B3qBwwSJ.js";import{v as ie}from"./useEventListener-BR0C1MaI.js";import{y as Ee}from"./utils-DIGrmLDO.js";import{t as Ie}from"./constants-DMpttj8Q.js";import{t as le}from"./cn-DCUzRj2J.js";import{t as Le}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-BDxedMYP.js";import"./popover-UExmgBsf.js";import{n as Me,__tla as Pe}from"./JsonOutput-DXnOS_Hk.js";import"./download-mzsKQgiy.js";import{t as z}from"./tooltip-Gcwqb_SK.js";import{t as C}from"./button-D9nb17Rw.js";import"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{r as De}from"./requests-DIwGYs0l.js";import{t as me}from"./createLucideIcon-D5guW7EU.js";import{d as Re,__tla as He}from"./layout-lxwMDUgI.js";import{n as Ve,t as qe,__tla as Te}from"./LazyAnyLanguageCodeMirror-0gZO1asr.js";import{__tla as Fe}from"./markdown-renderer-CeHY2KoQ.js";import{u as Ge}from"./toDate-B5A0DFEz.js";import{t as Ue,__tla as Be}from"./cell-editor-BMjfXh0J.js";import{t as Je}from"./spinner-Bhir8k53.js";import{t as Ke}from"./play-C7DcCsoO.js";import"./dist-Ds4ite_2.js";import"./dist-CEysMnMQ.js";import"./dist-DGxytjtv.js";import"./dist-DZ2qbK2N.js";import"./dist-CRPTyqAT.js";import"./session-nmTRerwF.js";import{r as Qe}from"./useTheme-DEcgJENn.js";import"./purify.es-DC4RGS9t.js";import"./dates-DhByPWH5.js";import"./utils-Bq5kLQ87.js";import"./vega-loader.browser-DXARUlxo.js";import"./defaultLocale-JieDVWC_.js";import"./defaultLocale-BLne0bXb.js";import{__tla as We}from"./chunk-5FQGJX7Z-B4RvNAGm.js";import"./html-to-image-Cz8lDF-Y.js";import{o as Xe}from"./focus-BX3gXJxx.js";import{n as Ye,r as Ze,t as ne}from"./react-resizable-panels.browser.esm-Bcm5njwd.js";import{a as $e}from"./renderShortcut-CkNNAheg.js";import"./esm-G1JMtvxe.js";import"./name-cell-input-B1BCybeo.js";import{n as et,r as tt}from"./panel-context-B3J07LRC.js";import{__tla as rt}from"./loro_wasm_bg-Ds40eH8K.js";import"./ws-CtTwmdal.js";import"./Inputs-BdyX096j.js";import"./dist-DS5RCKZO.js";import"./dist-9g-_Ln9y.js";import"./dist-DBBYmRY4.js";import"./dist-DggusHaA.js";import"./dist-DmZscTVZ.js";import"./dist-CsEqrZxx.js";import"./dist-OWcDq-O3.js";import"./dist-ooLAQ9IK.js";import"./dist-HW7R98td.js";import"./esm-CbD72kxC.js";import{t as at}from"./kiosk-mode-Dxbs5i5g.js";let ce,ot=Promise.all([(()=>{try{return Ae}catch{}})(),(()=>{try{return Pe}catch{}})(),(()=>{try{return He}catch{}})(),(()=>{try{return Te}catch{}})(),(()=>{try{return Fe}catch{}})(),(()=>{try{return Be}catch{}})(),(()=>{try{return We}catch{}})(),(()=>{try{return rt}catch{}})()]).then(async()=>{var de=me("eraser",[["path",{d:"M21 21H8a2 2 0 0 1-1.42-.587l-3.994-3.999a2 2 0 0 1 0-2.828l10-10a2 2 0 0 1 2.829 0l5.999 6a2 2 0 0 1 0 2.828L12.834 21",key:"g5wo59"}],["path",{d:"m5.082 11.09 8.828 8.828",key:"1wx5vj"}]]),he=me("history",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]]),pe=se(),q=ae(we(),1),ue=15;const T=Oe("marimo:scratchpadHistory:v1",[],Se),fe=oe(!1),xe=oe(null,(e,s,i)=>{if(i=i.trim(),!i)return;let m=e(T);s(T,[i,...m.filter(c=>c!==i)].slice(0,ue))});var t=ae(Le(),1),_e={hide_code:!1,disabled:!1};const ve=()=>{var re;let e=(0,pe.c)(60),s=Ce(),[i]=Ee(),{theme:m}=Qe(),c=(0,q.useRef)(null),F=Xe(),{createNewCell:G,updateCellCode:d}=ke(),{sendRunScratchpad:h}=De(),S=et(),U=tt(),l=s.cellRuntime[n],B=l==null?void 0:l.output,O=l==null?void 0:l.status,J=l==null?void 0:l.consoleOutputs,r=((re=s.cellData.__scratch__)==null?void 0:re.code)??"",K=ye(xe),[o,p]=be(fe),u=Ne(T),A;e[0]!==K||e[1]!==r||e[2]!==h?(A=()=>{h({code:r}),K(r)},e[0]=K,e[1]=r,e[2]=h,e[3]=A):A=e[3];let f=V(A),E;e[4]!==r||e[5]!==G||e[6]!==F?(E=()=>{r.trim()&&G({code:r,before:!1,cellId:F??"__end__"})},e[4]=r,e[5]=G,e[6]=F,e[7]=E):E=e[7];let Q=V(E),I;e[8]!==h||e[9]!==d?(I=()=>{d({cellId:n,code:"",formattingChange:!1}),h({code:""});let a=c.current;a&&a.dispatch({changes:{from:0,to:a.state.doc.length,insert:""}})},e[8]=h,e[9]=d,e[10]=I):I=e[10];let W=V(I),L;e[11]!==p||e[12]!==d?(L=a=>{p(!1),d({cellId:n,code:a,formattingChange:!1});let k=c.current;k&&k.dispatch({changes:{from:0,to:k.state.doc.length,insert:a}})},e[11]=p,e[12]=d,e[13]=L):L=e[13];let X=V(L),[Y,ge]=(0,q.useState)(),M;e[14]!==X||e[15]!==u||e[16]!==o||e[17]!==m?(M=()=>o?(0,t.jsx)("div",{className:"absolute inset-0 z-100 bg-background p-3 border-none overflow-auto",children:(0,t.jsx)("div",{className:"overflow-auto flex flex-col gap-3",children:u.map((a,k)=>(0,t.jsx)("div",{className:"border rounded-md hover:shadow-sm cursor-pointer hover:border-input overflow-hidden",onClick:()=>X(a),children:(0,t.jsx)(q.Suspense,{children:(0,t.jsx)(qe,{language:"python",theme:m,basicSetup:{highlightActiveLine:!1,highlightActiveLineGutter:!1},value:a.trim(),editable:!1,readOnly:!0})})},k))})}):null,e[14]=X,e[15]=u,e[16]=o,e[17]=m,e[18]=M):M=e[18];let Z=M,P;e[19]!==W||e[20]!==Q||e[21]!==f||e[22]!==u.length||e[23]!==o||e[24]!==p||e[25]!==O?(P=()=>(0,t.jsxs)("div",{className:"flex items-center shrink-0 border-b",children:[(0,t.jsx)(z,{content:$e("cell.run"),children:(0,t.jsx)(C,{"data-testid":"scratchpad-run-button",onClick:f,disabled:o,variant:"text",size:"xs",children:(0,t.jsx)(Ke,{color:"var(--grass-11)",size:16})})}),(0,t.jsx)(z,{content:"Clear code and outputs",children:(0,t.jsx)(C,{disabled:o,size:"xs",variant:"text",onClick:W,children:(0,t.jsx)(de,{size:16})})}),(0,t.jsx)(at,{children:(0,t.jsx)(z,{content:"Insert code",children:(0,t.jsx)(C,{disabled:o,size:"xs",variant:"text",onClick:Q,children:(0,t.jsx)(Ve,{size:16})})})}),(O==="running"||O==="queued")&&(0,t.jsx)(Je,{className:"inline",size:"small"}),(0,t.jsx)("div",{className:"flex-1"}),(0,t.jsx)(z,{content:"Toggle history",children:(0,t.jsx)(C,{size:"xs",variant:"text",className:le(o&&"bg-(--sky-3) rounded-none"),onClick:()=>p(!o),disabled:u.length===0,children:(0,t.jsx)(he,{size:16})})}),(0,t.jsx)(z,{content:(0,t.jsx)("span",{className:"block max-w-prose",children:"Use this scratchpad to experiment with code without restrictions on variable names. Variables defined here aren't saved to notebook memory, and the code is not saved in the notebook file."}),children:(0,t.jsx)(C,{size:"xs",variant:"text",children:(0,t.jsx)(Ge,{size:16})})})]}),e[19]=W,e[20]=Q,e[21]=f,e[22]=u.length,e[23]=o,e[24]=p,e[25]=O,e[26]=P):P=e[26];let $=P,je=S==="vertical",D;e[27]===Symbol.for("react.memo_cache_sentinel")?(D=ze.create(n),e[27]=D):D=e[27];let x;e[28]===$?x=e[29]:(x=$(),e[28]=$,e[29]=x);let R;e[30]===Symbol.for("react.memo_cache_sentinel")?(R=a=>{c.current=a},e[30]=R):R=e[30];let _;e[31]!==r||e[32]!==f||e[33]!==Y||e[34]!==m||e[35]!==i?(_=(0,t.jsx)("div",{className:"flex-1 overflow-auto",children:(0,t.jsx)(Ue,{theme:m,showPlaceholder:!1,id:n,code:r,config:_e,status:"idle",serializedEditorState:null,runCell:f,userConfig:i,editorViewRef:c,setEditorView:R,hidden:!1,showHiddenCode:ie.NOOP,languageAdapter:Y,setLanguageAdapter:ge})}),e[31]=r,e[32]=f,e[33]=Y,e[34]=m,e[35]=i,e[36]=_):_=e[36];let v;e[37]===Z?v=e[38]:(v=Z(),e[37]=Z,e[38]=v);let g;e[39]!==v||e[40]!==x||e[41]!==_?(g=(0,t.jsx)(ne,{defaultSize:40,minSize:20,maxSize:70,children:(0,t.jsxs)("div",{className:"h-full flex flex-col overflow-hidden relative",children:[x,_,v]})}),e[39]=v,e[40]=x,e[41]=_,e[42]=g):g=e[42];let ee=je?"h-1":"w-1",j;e[43]===ee?j=e[44]:(j=le("bg-border hover:bg-primary/50 transition-colors",ee),e[43]=ee,e[44]=j);let y;e[45]===j?y=e[46]:(y=(0,t.jsx)(Ze,{className:j}),e[45]=j,e[46]=y);let b;e[47]===B?b=e[48]:(b=(0,t.jsx)("div",{className:"flex-1 overflow-auto",children:(0,t.jsx)(Me,{allowExpand:!1,output:B,className:Ie.outputArea,cellId:n,stale:!1,loading:!1})}),e[47]=B,e[48]=b);let N;e[49]===J?N=e[50]:(N=(0,t.jsx)("div",{className:"overflow-auto shrink-0 max-h-[50%]",children:(0,t.jsx)(Re,{consoleOutputs:J,className:"overflow-auto",stale:!1,cellName:"_",onSubmitDebugger:ie.NOOP,cellId:n,debuggerActive:!1})}),e[49]=J,e[50]=N);let w;e[51]!==b||e[52]!==N?(w=(0,t.jsx)(ne,{defaultSize:60,minSize:20,children:(0,t.jsxs)("div",{className:"h-full flex flex-col divide-y overflow-hidden",children:[b,N]})}),e[51]=b,e[52]=N,e[53]=w):w=e[53];let H;return e[54]!==S||e[55]!==U||e[56]!==g||e[57]!==y||e[58]!==w?(H=(0,t.jsx)("div",{className:"flex flex-col h-full overflow-hidden",id:D,children:(0,t.jsxs)(Ye,{direction:S,className:"h-full",children:[g,y,w]},U)}),e[54]=S,e[55]=U,e[56]=g,e[57]=y,e[58]=w,e[59]=H):H=e[59],H};let te;te=se(),ce=()=>{let e=(0,te.c)(1),s;return e[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(ve,{}),e[0]=s):s=e[0],s}});export{ot as __tla,ce as default};
1
+ import{s as ae}from"./chunk-LvLJmgfZ.js";import{d as ye,l as be,n as V,p as oe,u as Ne}from"./useEvent-D91BmmQi.js";import{t as we}from"./react-Bj1aDYRI.js";import{Di as ke,E as ze,F as Ce,Nn as Se,Oi as n,yi as Oe,__tla as Ae}from"./cells-A-ljPpuj.js";import"./react-dom-CSu739Rf.js";import{t as se}from"./compiler-runtime-B3qBwwSJ.js";import{v as ie}from"./useEventListener-BR0C1MaI.js";import{y as Ie}from"./utils-DIGrmLDO.js";import{t as Ee}from"./constants-DMpttj8Q.js";import{t as le}from"./cn-DCUzRj2J.js";import{t as Le}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-BDxedMYP.js";import"./popover-UExmgBsf.js";import{n as Me,__tla as Pe}from"./JsonOutput-BVAcY5xS.js";import"./download-Iyng0xCz.js";import{t as z}from"./tooltip-Gcwqb_SK.js";import{t as C}from"./button-D9nb17Rw.js";import"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{r as De}from"./requests-DIwGYs0l.js";import{t as me}from"./createLucideIcon-D5guW7EU.js";import{d as Re,__tla as He}from"./layout-DDh3d8oW.js";import{n as Ve,t as qe,__tla as Te}from"./LazyAnyLanguageCodeMirror-0gZO1asr.js";import{__tla as Fe}from"./markdown-renderer-CFrgiLqu.js";import{u as Ge}from"./toDate-B5A0DFEz.js";import{t as Ue,__tla as Be}from"./cell-editor-C6vZfKyj.js";import{t as Je}from"./spinner-Bhir8k53.js";import{t as Ke}from"./play-C7DcCsoO.js";import"./dist-Ds4ite_2.js";import"./dist-CEysMnMQ.js";import"./dist-DGxytjtv.js";import"./dist-DZ2qbK2N.js";import"./dist-CRPTyqAT.js";import"./session-nmTRerwF.js";import{r as Qe}from"./useTheme-DEcgJENn.js";import"./purify.es-DC4RGS9t.js";import"./dates-DhByPWH5.js";import"./utils-Bq5kLQ87.js";import"./vega-loader.browser-DXARUlxo.js";import"./defaultLocale-JieDVWC_.js";import"./defaultLocale-BLne0bXb.js";import{__tla as We}from"./chunk-5FQGJX7Z-B4RvNAGm.js";import"./html-to-image-tbPEMBJg.js";import{o as Xe}from"./focus-Baz7rlo0.js";import{n as Ye,r as Ze,t as ne}from"./react-resizable-panels.browser.esm-Bcm5njwd.js";import{a as $e}from"./renderShortcut-CkNNAheg.js";import"./esm-G1JMtvxe.js";import"./name-cell-input-C5LXTI3T.js";import{n as et,r as tt}from"./panel-context-B3J07LRC.js";import{__tla as rt}from"./loro_wasm_bg-Ds40eH8K.js";import"./ws-CtTwmdal.js";import"./Inputs-BdyX096j.js";import"./dist-DS5RCKZO.js";import"./dist-9g-_Ln9y.js";import"./dist-DBBYmRY4.js";import"./dist-DggusHaA.js";import"./dist-DmZscTVZ.js";import"./dist-CsEqrZxx.js";import"./dist-OWcDq-O3.js";import"./dist-ooLAQ9IK.js";import"./dist-HW7R98td.js";import"./esm-CbD72kxC.js";import{t as at}from"./kiosk-mode-cWTXpegb.js";let ce,ot=Promise.all([(()=>{try{return Ae}catch{}})(),(()=>{try{return Pe}catch{}})(),(()=>{try{return He}catch{}})(),(()=>{try{return Te}catch{}})(),(()=>{try{return Fe}catch{}})(),(()=>{try{return Be}catch{}})(),(()=>{try{return We}catch{}})(),(()=>{try{return rt}catch{}})()]).then(async()=>{var de=me("eraser",[["path",{d:"M21 21H8a2 2 0 0 1-1.42-.587l-3.994-3.999a2 2 0 0 1 0-2.828l10-10a2 2 0 0 1 2.829 0l5.999 6a2 2 0 0 1 0 2.828L12.834 21",key:"g5wo59"}],["path",{d:"m5.082 11.09 8.828 8.828",key:"1wx5vj"}]]),he=me("history",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]]),pe=se(),q=ae(we(),1),ue=15;const T=Oe("marimo:scratchpadHistory:v1",[],Se),fe=oe(!1),xe=oe(null,(e,s,i)=>{if(i=i.trim(),!i)return;let m=e(T);s(T,[i,...m.filter(c=>c!==i)].slice(0,ue))});var t=ae(Le(),1),_e={hide_code:!1,disabled:!1};const ve=()=>{var re;let e=(0,pe.c)(60),s=Ce(),[i]=Ie(),{theme:m}=Qe(),c=(0,q.useRef)(null),F=Xe(),{createNewCell:G,updateCellCode:d}=ze(),{sendRunScratchpad:h}=De(),S=et(),U=tt(),l=s.cellRuntime[n],B=l==null?void 0:l.output,O=l==null?void 0:l.status,J=l==null?void 0:l.consoleOutputs,r=((re=s.cellData.__scratch__)==null?void 0:re.code)??"",K=ye(xe),[o,p]=be(fe),u=Ne(T),A;e[0]!==K||e[1]!==r||e[2]!==h?(A=()=>{h({code:r}),K(r)},e[0]=K,e[1]=r,e[2]=h,e[3]=A):A=e[3];let f=V(A),I;e[4]!==r||e[5]!==G||e[6]!==F?(I=()=>{r.trim()&&G({code:r,before:!1,cellId:F??"__end__"})},e[4]=r,e[5]=G,e[6]=F,e[7]=I):I=e[7];let Q=V(I),E;e[8]!==h||e[9]!==d?(E=()=>{d({cellId:n,code:"",formattingChange:!1}),h({code:""});let a=c.current;a&&a.dispatch({changes:{from:0,to:a.state.doc.length,insert:""}})},e[8]=h,e[9]=d,e[10]=E):E=e[10];let W=V(E),L;e[11]!==p||e[12]!==d?(L=a=>{p(!1),d({cellId:n,code:a,formattingChange:!1});let k=c.current;k&&k.dispatch({changes:{from:0,to:k.state.doc.length,insert:a}})},e[11]=p,e[12]=d,e[13]=L):L=e[13];let X=V(L),[Y,ge]=(0,q.useState)(),M;e[14]!==X||e[15]!==u||e[16]!==o||e[17]!==m?(M=()=>o?(0,t.jsx)("div",{className:"absolute inset-0 z-100 bg-background p-3 border-none overflow-auto",children:(0,t.jsx)("div",{className:"overflow-auto flex flex-col gap-3",children:u.map((a,k)=>(0,t.jsx)("div",{className:"border rounded-md hover:shadow-sm cursor-pointer hover:border-input overflow-hidden",onClick:()=>X(a),children:(0,t.jsx)(q.Suspense,{children:(0,t.jsx)(qe,{language:"python",theme:m,basicSetup:{highlightActiveLine:!1,highlightActiveLineGutter:!1},value:a.trim(),editable:!1,readOnly:!0})})},k))})}):null,e[14]=X,e[15]=u,e[16]=o,e[17]=m,e[18]=M):M=e[18];let Z=M,P;e[19]!==W||e[20]!==Q||e[21]!==f||e[22]!==u.length||e[23]!==o||e[24]!==p||e[25]!==O?(P=()=>(0,t.jsxs)("div",{className:"flex items-center shrink-0 border-b",children:[(0,t.jsx)(z,{content:$e("cell.run"),children:(0,t.jsx)(C,{"data-testid":"scratchpad-run-button",onClick:f,disabled:o,variant:"text",size:"xs",children:(0,t.jsx)(Ke,{color:"var(--grass-11)",size:16})})}),(0,t.jsx)(z,{content:"Clear code and outputs",children:(0,t.jsx)(C,{disabled:o,size:"xs",variant:"text",onClick:W,children:(0,t.jsx)(de,{size:16})})}),(0,t.jsx)(at,{children:(0,t.jsx)(z,{content:"Insert code",children:(0,t.jsx)(C,{disabled:o,size:"xs",variant:"text",onClick:Q,children:(0,t.jsx)(Ve,{size:16})})})}),(O==="running"||O==="queued")&&(0,t.jsx)(Je,{className:"inline",size:"small"}),(0,t.jsx)("div",{className:"flex-1"}),(0,t.jsx)(z,{content:"Toggle history",children:(0,t.jsx)(C,{size:"xs",variant:"text",className:le(o&&"bg-(--sky-3) rounded-none"),onClick:()=>p(!o),disabled:u.length===0,children:(0,t.jsx)(he,{size:16})})}),(0,t.jsx)(z,{content:(0,t.jsx)("span",{className:"block max-w-prose",children:"Use this scratchpad to experiment with code without restrictions on variable names. Variables defined here aren't saved to notebook memory, and the code is not saved in the notebook file."}),children:(0,t.jsx)(C,{size:"xs",variant:"text",children:(0,t.jsx)(Ge,{size:16})})})]}),e[19]=W,e[20]=Q,e[21]=f,e[22]=u.length,e[23]=o,e[24]=p,e[25]=O,e[26]=P):P=e[26];let $=P,je=S==="vertical",D;e[27]===Symbol.for("react.memo_cache_sentinel")?(D=ke.create(n),e[27]=D):D=e[27];let x;e[28]===$?x=e[29]:(x=$(),e[28]=$,e[29]=x);let R;e[30]===Symbol.for("react.memo_cache_sentinel")?(R=a=>{c.current=a},e[30]=R):R=e[30];let _;e[31]!==r||e[32]!==f||e[33]!==Y||e[34]!==m||e[35]!==i?(_=(0,t.jsx)("div",{className:"flex-1 overflow-auto",children:(0,t.jsx)(Ue,{theme:m,showPlaceholder:!1,id:n,code:r,config:_e,status:"idle",serializedEditorState:null,runCell:f,userConfig:i,editorViewRef:c,setEditorView:R,hidden:!1,showHiddenCode:ie.NOOP,languageAdapter:Y,setLanguageAdapter:ge})}),e[31]=r,e[32]=f,e[33]=Y,e[34]=m,e[35]=i,e[36]=_):_=e[36];let v;e[37]===Z?v=e[38]:(v=Z(),e[37]=Z,e[38]=v);let g;e[39]!==v||e[40]!==x||e[41]!==_?(g=(0,t.jsx)(ne,{defaultSize:40,minSize:20,maxSize:70,children:(0,t.jsxs)("div",{className:"h-full flex flex-col overflow-hidden relative",children:[x,_,v]})}),e[39]=v,e[40]=x,e[41]=_,e[42]=g):g=e[42];let ee=je?"h-1":"w-1",j;e[43]===ee?j=e[44]:(j=le("bg-border hover:bg-primary/50 transition-colors",ee),e[43]=ee,e[44]=j);let y;e[45]===j?y=e[46]:(y=(0,t.jsx)(Ze,{className:j}),e[45]=j,e[46]=y);let b;e[47]===B?b=e[48]:(b=(0,t.jsx)("div",{className:"flex-1 overflow-auto",children:(0,t.jsx)(Me,{allowExpand:!1,output:B,className:Ee.outputArea,cellId:n,stale:!1,loading:!1})}),e[47]=B,e[48]=b);let N;e[49]===J?N=e[50]:(N=(0,t.jsx)("div",{className:"overflow-auto shrink-0 max-h-[50%]",children:(0,t.jsx)(Re,{consoleOutputs:J,className:"overflow-auto",stale:!1,cellName:"_",onSubmitDebugger:ie.NOOP,cellId:n,debuggerActive:!1})}),e[49]=J,e[50]=N);let w;e[51]!==b||e[52]!==N?(w=(0,t.jsx)(ne,{defaultSize:60,minSize:20,children:(0,t.jsxs)("div",{className:"h-full flex flex-col divide-y overflow-hidden",children:[b,N]})}),e[51]=b,e[52]=N,e[53]=w):w=e[53];let H;return e[54]!==S||e[55]!==U||e[56]!==g||e[57]!==y||e[58]!==w?(H=(0,t.jsx)("div",{className:"flex flex-col h-full overflow-hidden",id:D,children:(0,t.jsxs)(Ye,{direction:S,className:"h-full",children:[g,y,w]},U)}),e[54]=S,e[55]=U,e[56]=g,e[57]=y,e[58]=w,e[59]=H):H=e[59],H};let te;te=se(),ce=()=>{let e=(0,te.c)(1),s;return e[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(ve,{}),e[0]=s):s=e[0],s}});export{ot as __tla,ce as default};
@@ -1 +1 @@
1
- import{s as ie}from"./chunk-LvLJmgfZ.js";import{d as de,l as De,p as he,u as K}from"./useEvent-D91BmmQi.js";import{t as Be}from"./react-Bj1aDYRI.js";import{$n as Me,Dr as ue,E as Ve,Er as xe,Fr as Pe,Ht as Ee,In as Oe,Ir as pe,It as Ue,Mr as fe,N as Re,Nn as Ae,Nr as be,Or as Ge,Ot as We,Pn as ze,Qn as He,Sr as Ke,Tr as se,Ut as Je,Wt as Xe,a as Qe,dr as le,f as Ye,hn as Ze,j as ea,kr as aa,sr as ta,tr as sa,ur as la,vi as na}from"./cells-CJlo_hG2.js";import"./react-dom-CSu739Rf.js";import{t as ge}from"./compiler-runtime-B3qBwwSJ.js";import{o as ra}from"./utils-DIGrmLDO.js";import{t as oa}from"./ErrorBoundary-DzYV_VeY.js";import{t as O}from"./cn-DCUzRj2J.js";import{t as ma}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-BDxedMYP.js";import{n as ca}from"./multi-map-rafH3cg3.js";import"./popover-UExmgBsf.js";import{J as ia,K as je,L as ne,X as da,Y as ha,q as ua}from"./JsonOutput-DXnOS_Hk.js";import"./download-mzsKQgiy.js";import{t as re}from"./tooltip-Gcwqb_SK.js";import{r as xa,t as ee}from"./button-D9nb17Rw.js";import"./dist-BrR4M-k3.js";import{u as J}from"./arrays-DYDL-3-i.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{i as pa}from"./strings-md4mFbOQ.js";import{r as fa}from"./requests-DIwGYs0l.js";import{t as ba}from"./createLucideIcon-D5guW7EU.js";import{t as ga}from"./x-C-6liIBr.js";import"./markdown-renderer-CeHY2KoQ.js";import{t as Ne}from"./add-connection-dialog-HCShSlr3.js";import{t as ye}from"./plus-BgB18UzY.js";import{a as ja}from"./input-DyPS_GiK.js";import{n as Na,o as ya}from"./column-preview-DzN2QumC.js";import{t as va}from"./workflow-DYcZF-oV.js";import"./dist-Ds4ite_2.js";import"./dist-CEysMnMQ.js";import"./dist-DGxytjtv.js";import"./dist-DZ2qbK2N.js";import"./dist-CRPTyqAT.js";import"./session-nmTRerwF.js";import"./purify.es-DC4RGS9t.js";import"./dates-DhByPWH5.js";import{t as wa}from"./copy-icon-C67c9EwB.js";import{t as Sa}from"./context-DGqo1TbK.js";import"./utils-Bq5kLQ87.js";import"./vega-loader.browser-DXARUlxo.js";import"./defaultLocale-JieDVWC_.js";import"./defaultLocale-BLne0bXb.js";import{t as ve}from"./cell-link-BA7Demf0.js";import{n as oe}from"./useAsyncData-dS4Ne6pU.js";import{a as Ca,o as ae,t as _a,u as ka}from"./command-DbT_zkRP.js";import"./chunk-5FQGJX7Z-B4RvNAGm.js";import{r as $a}from"./html-to-image-Cz8lDF-Y.js";import{o as Fa}from"./focus-BX3gXJxx.js";import{a as Ia,i as Ta,n as La,o as we,r as qa,t as Da}from"./table-23NNA1s9.js";import"./react-resizable-panels.browser.esm-Bcm5njwd.js";import{n as Ba}from"./icons-BRopQwI3.js";import{t as Se}from"./useAddCell-CqBbGhrY.js";import{r as Ma}from"./tree-actions-oMCx6WNc.js";import{a as me,i as te,o as ce,r as Ce,s as _e,t as Va}from"./components-BiBOcq1x.js";import{t as Pa}from"./empty-state-CsVQSqKA.js";import{n as Ea,t as Oa}from"./common-CquNY-ok.js";import{a as Ua,i as Ra,n as ke,r as $e,t as Fe}from"./components-BXKuiPiF.js";var Aa=ba("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=ge(),C=ie(Be(),1),t=ie(ma(),1),S={engineEmpty:"pl-3",engine:"pl-3 pr-2",database:"pl-4",schemaEmpty:"pl-8",schema:"pl-7",schemaLoading:"pl-8",tableLoading:"pl-11",tableSchemaless:"pl-8",tableWithSchema:"pl-12",columnLocal:"pl-5",columnSql:"pl-13",columnPreview:"pl-10"},Ga=he(a=>{let e=a(ue),s=a(Oe),l=a(Qe);return J(e,r=>{if(!r.variable_name)return-1;let o=Object.values(s).find(j=>j.name===r.variable_name);if(!o)return 0;let n=l.inOrderIds.indexOf(o.declaredBy[0]);return n===-1?0:n})});const Ie=he(a=>{let e=new Map(a(Ke));for(let s of pe){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=>pe.has(s.name)?1:0)}),Wa=()=>{let a=(0,A.c)(32),[e,s]=C.useState(""),l=de(xe),r=K(Ga),o=K(Ie);if(r.length===0&&o.length===0){let u;return a[0]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)(Pa,{title:"No tables found",description:"Any datasets/dataframes in the global scope will be shown here.",action:(0,t.jsx)(Ne,{children:(0,t.jsxs)(ee,{variant:"outline",size:"sm",children:["Add database or catalog",(0,t.jsx)(ye,{className:"h-4 w-4 ml-2"})]})}),icon:(0,t.jsx)(le,{})}),a[0]=u):u=a[0],u}let n=!!e.trim(),j;a[1]===l?j=a[2]:(j=u=>{l(u.length>0),s(u)},a[1]=l,a[2]=j);let g;a[3]!==e||a[4]!==j?(g=(0,t.jsx)(Ca,{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]=g):g=a[5];let N;a[6]===n?N=a[7]:(N=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)(ga,{className:"h-4 w-4"})}),a[6]=n,a[7]=N);let f;a[8]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsx)(Ne,{children:(0,t.jsx)(ee,{variant:"ghost",size:"sm",className:"px-2 rounded-none focus-visible:outline-hidden",children:(0,t.jsx)(ye,{className:"h-4 w-4"})})}),a[8]=f):f=a[8];let c;a[9]!==g||a[10]!==N?(c=(0,t.jsxs)("div",{className:"flex items-center w-full border-b",children:[g,N,f]}),a[9]=g,a[10]=N,a[11]=c):c=a[11];let i;if(a[12]!==o||a[13]!==n||a[14]!==e){let u;a[16]!==n||a[17]!==e?(u=x=>(0,t.jsx)(za,{connection:x,hasChildren:x.databases.length>0,children:x.databases.map(b=>(0,t.jsx)(Ha,{engineName:x.name,database:b,hasSearch:n,children:(0,t.jsx)(Ka,{schemas:b.schemas,defaultSchema:x.default_schema,defaultDatabase:x.default_database,engineName:x.name,databaseName:b.name,hasSearch:n,searchValue:e,dialect:x.dialect})},b.name))},x.name),a[16]=n,a[17]=e,a[18]=u):u=a[18],i=o.map(u),a[12]=o,a[13]=n,a[14]=e,a[15]=i}else i=a[15];let h;a[19]!==o.length||a[20]!==r.length?(h=o.length>0&&r.length>0&&(0,t.jsxs)(Ce,{className:S.engine,children:[(0,t.jsx)(Ba,{className:"h-4 w-4 text-muted-foreground"}),(0,t.jsx)("span",{className:"text-xs",children:"Python"})]}),a[19]=o.length,a[20]=r.length,a[21]=h):h=a[21];let p;a[22]!==e||a[23]!==r?(p=r.length>0&&(0,t.jsx)(Te,{tables:r,searchValue:e}),a[22]=e,a[23]=r,a[24]=p):p=a[24];let d;a[25]!==i||a[26]!==h||a[27]!==p?(d=(0,t.jsxs)(ka,{className:"flex flex-col",children:[i,h,p]}),a[25]=i,a[26]=h,a[27]=p,a[28]=d):d=a[28];let m;return a[29]!==c||a[30]!==d?(m=(0,t.jsxs)(_a,{className:"border-b bg-background rounded-none h-full pb-10 overflow-auto outline-hidden",shouldFilter:!1,children:[c,d]}),a[29]=c,a[30]=d,a[31]=m):m=a[31],m};var za=a=>{let e=(0,A.c)(25),{connection:s,children:l,hasChildren:r}=a,o=s.name===Pe,n=o?"In-Memory":s.name,{previewDataSourceConnection:j}=fa(),g;e[0]!==s.name||e[1]!==j?(g=async()=>{await j({engine:s.name})},e[0]=s.name,e[1]=j,e[2]=g):g=e[2];let N=g,f;e[3]===s.dialect?f=e[4]:(f=(0,t.jsx)(We,{className:"h-4 w-4 text-muted-foreground",name:s.dialect}),e[3]=s.dialect,e[4]=f);let c;e[5]===s.dialect?c=e[6]:(c=He(s.dialect),e[5]=s.dialect,e[6]=c);let i;e[7]===c?i=e[8]:(i=(0,t.jsx)("span",{className:"text-xs",children:c}),e[7]=c,e[8]=i);let h=n,p;e[9]===h?p=e[10]:(p=(0,t.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",(0,t.jsx)(Ua,{variableName:h}),")"]}),e[9]=h,e[10]=p);let d;e[11]!==N||e[12]!==o?(d=!o&&(0,t.jsx)(Ma,{onClick:N,tooltip:"Refresh connection",className:"ml-auto h-4 p-0",iconClassName:"h-3.5 w-3.5"}),e[11]=N,e[12]=o,e[13]=d):d=e[13];let m;e[14]!==f||e[15]!==i||e[16]!==p||e[17]!==d?(m=(0,t.jsxs)(Ce,{className:S.engine,children:[f,i,p,d]}),e[14]=f,e[15]=i,e[16]=p,e[17]=d,e[18]=m):m=e[18];let u;e[19]!==l||e[20]!==r?(u=r?l:(0,t.jsx)(te,{content:"No databases available",className:S.engineEmpty}),e[19]=l,e[20]=r,e[21]=u):u=e[21];let x;return e[22]!==m||e[23]!==u?(x=(0,t.jsxs)(t.Fragment,{children:[m,u]}),e[22]=m,e[23]=u,e[24]=x):x=e[24],x},Ha=a=>{let e=(0,A.c)(26),{hasSearch:s,engineName:l,database:r,children:o}=a,[n,j]=C.useState(!1),[g,N]=C.useState(!1),[f,c]=C.useState(s);f!==s&&(c(s),j(s));let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=O("text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",S.database),e[0]=i):i=e[0];let h;e[1]!==n||e[2]!==g?(h=()=>{j(!n),N(!g)},e[1]=n,e[2]=g,e[3]=h):h=e[3];let p=`${l}:${r.name}`,d;e[4]===n?d=e[5]:(d=(0,t.jsx)(_e,{isExpanded:n}),e[4]=n,e[5]=d);let m=g&&n?"text-foreground":"text-muted-foreground",u;e[6]===m?u=e[7]:(u=O("h-4 w-4",m),e[6]=m,e[7]=u);let x;e[8]===u?x=e[9]:(x=(0,t.jsx)(le,{className:u}),e[8]=u,e[9]=x);let b=g&&n&&"font-semibold",y;e[10]===b?y=e[11]:(y=O(b),e[10]=b,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 _;e[17]!==w||e[18]!==h||e[19]!==p||e[20]!==d||e[21]!==x?(_=(0,t.jsxs)(ae,{className:i,onSelect:h,value:p,children:[d,x,w]}),e[17]=w,e[18]=h,e[19]=p,e[20]=d,e[21]=x,e[22]=_):_=e[22];let L=n&&o,k;return e[23]!==_||e[24]!==L?(k=(0,t.jsxs)(t.Fragment,{children:[_,L]}),e[23]=_,e[24]=L,e[25]=k):k=e[25],k},Ka=({schemas:a,defaultSchema:e,defaultDatabase:s,dialect:l,engineName:r,databaseName:o,hasSearch:n,searchValue:j})=>{let{addSchemaList:g}=se(),[N,f]=C.useState(!1),[c,i]=C.useState(!1),{isPending:h,error:p}=oe(async()=>{if(a.length===0&&r&&!N){f(!0),i(!0);try{g({schemas:(await Ee.request({engine:r,database:o})).schemas??[],sqlSchemaContext:{engine:r,database:o}})}finally{i(!1)}}},[a.length,r,o,N]);return h||c?(0,t.jsx)(ce,{message:"Loading schemas...",className:S.schemaLoading}):p?(0,t.jsx)(me,{error:p,className:S.schemaLoading}):a.length===0?(0,t.jsx)(te,{content:"No schemas available",className:S.schemaEmpty}):(0,t.jsx)(t.Fragment,{children:a.filter(d=>j?d.tables.some(m=>m.name.toLowerCase().includes(j.toLowerCase())):!0).map(d=>(0,t.jsx)(Ja,{databaseName:o,schema:d,hasSearch:n,children:(0,t.jsx)(Te,{tables:d.tables,searchValue:j,sqlTableContext:{engine:r,database:o,schema:d.name,defaultSchema:e,defaultDatabase:s,dialect:l}})},d.name))})},Ja=a=>{let e=(0,A.c)(24),{databaseName:s,schema:l,children:r,hasSearch:o}=a,[n,j]=C.useState(o),[g,N]=C.useState(!1),f=`${s}:${l.name}`;if(fe(l.name))return r;let c;e[0]===Symbol.for("react.memo_cache_sentinel")?(c=O("text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",S.schema),e[0]=c):c=e[0];let i;e[1]!==n||e[2]!==g?(i=()=>{j(!n),N(!g)},e[1]=n,e[2]=g,e[3]=i):i=e[3];let h;e[4]===n?h=e[5]:(h=(0,t.jsx)(_e,{isExpanded:n}),e[4]=n,e[5]=h);let p=g&&n&&"text-foreground",d;e[6]===p?d=e[7]:(d=O("h-4 w-4 text-muted-foreground",p),e[6]=p,e[7]=d);let m;e[8]===d?m=e[9]:(m=(0,t.jsx)(ta,{className:d}),e[8]=d,e[9]=m);let u=g&&n&&"font-semibold",x;e[10]===u?x=e[11]:(x=O(u),e[10]=u,e[11]=x);let b;e[12]!==l.name||e[13]!==x?(b=(0,t.jsx)("span",{className:x,children:l.name}),e[12]=l.name,e[13]=x,e[14]=b):b=e[14];let y;e[15]!==i||e[16]!==h||e[17]!==m||e[18]!==b||e[19]!==f?(y=(0,t.jsxs)(ae,{className:c,onSelect:i,value:f,children:[h,m,b]}),e[15]=i,e[16]=h,e[17]=m,e[18]=b,e[19]=f,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:o}=se(),[n,j]=C.useState(!1),[g,N]=C.useState(!1),f;e[0]!==o||e[1]!==l||e[2]!==s.length||e[3]!==n?(f=async()=>{if(s.length===0&&l&&!n){j(!0),N(!0);let{engine:m,database:u,schema:x}=l,b=await Xe.request({engine:m,database:u,schema:x});if(!(b!=null&&b.tables))throw N(!1),Error("No tables available");o({tables:b.tables,sqlTableContext:l}),N(!1)}},e[0]=o,e[1]=l,e[2]=s.length,e[3]=n,e[4]=f):f=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:i,error:h}=oe(f,c);if(i||g){let m;return e[9]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)(ce,{message:"Loading tables...",className:S.tableLoading}),e[9]=m):m=e[9],m}if(h){let m;return e[10]===h?m=e[11]:(m=(0,t.jsx)(me,{error:h,className:S.tableLoading}),e[10]=h,e[11]=m),m}if(s.length===0){let m;return e[12]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)(te,{content:"No tables found",className:S.tableLoading}),e[12]=m):m=e[12],m}let p;if(e[13]!==r||e[14]!==l||e[15]!==s){let m;e[17]===r?m=e[18]:(m=b=>r?b.name.toLowerCase().includes(r.toLowerCase()):!0,e[17]=r,e[18]=m);let u=s.filter(m),x;e[19]!==r||e[20]!==l?(x=b=>(0,t.jsx)(Xa,{table:b,sqlTableContext:l,isSearching:!!r},b.name),e[19]=r,e[20]=l,e[21]=x):x=e[21],p=u.map(x),e[13]=r,e[14]=l,e[15]=s,e[16]=p}else p=e[16];let d;return e[22]===p?d=e[23]:(d=(0,t.jsx)(t.Fragment,{children:p}),e[22]=p,e[23]=d),d},Xa=a=>{let e=(0,A.c)(64),{table:s,sqlTableContext:l,isSearching:r}=a,{addTable:o}=se(),[n,j]=C.useState(!1),[g,N]=C.useState(!1),f=s.columns.length>0,c;e[0]!==o||e[1]!==n||e[2]!==l||e[3]!==s.name||e[4]!==f||e[5]!==g?(c=async()=>{if(n&&!f&&l&&!g){N(!0);let{engine:B,database:Y,schema:qe}=l,Z=await Je.request({engine:B,database:Y,schema:qe,tableName:s.name});if(!(Z!=null&&Z.table))throw Error("No table details available");o({table:Z.table,sqlTableContext:l})}},e[0]=o,e[1]=n,e[2]=l,e[3]=s.name,e[4]=f,e[5]=g,e[6]=c):c=e[6];let i;e[7]!==n||e[8]!==f?(i=[n,f],e[7]=n,e[8]=f,e[9]=i):i=e[9];let{isFetching:h,isPending:p,error:d}=oe(c,i),m=K(ra),u=Fa(),{createNewCell:x}=Ve(),b=Se(),y;e[10]!==b||e[11]!==m||e[12]!==x||e[13]!==u||e[14]!==l||e[15]!==s?(y=()=>{$a({autoInstantiate:m,createNewCell:x,fromCellId:u}),b((()=>{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 be({table:s,columnName:"*",sqlTableContext:l});switch(s.source_type){case"local":return`mo.ui.table(${s.name})`;case"duckdb":case"connection":return be({table:s,columnName:"*",sqlTableContext:l});default:return pa(s.source_type),""}})())},e[10]=b,e[11]=m,e[12]=x,e[13]=u,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 _=w,L;e[20]!==d||e[21]!==h||e[22]!==p||e[23]!==l||e[24]!==s?(L=()=>{if(p||h)return(0,t.jsx)(ce,{message:"Loading columns...",className:S.tableLoading});if(d)return(0,t.jsx)(me,{error:d,className:S.tableLoading});let B=s.columns;return B.length===0?(0,t.jsx)(te,{content:"No columns found",className:S.tableLoading}):B.map(Y=>(0,t.jsx)(Qa,{table:s,column:Y,sqlTableContext:l},Y.name))},e[20]=d,e[21]=h,e[22]=p,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"?sa:la,{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,P=l&&(fe(l.schema)?S.tableSchemaless:S.tableWithSchema),E=(n||r)&&"font-semibold",$;e[31]!==P||e[32]!==E?($=O("rounded-none group h-8 cursor-pointer",P,E),e[31]=P,e[32]=E,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 R;e[43]===_?R=e[44]:(R=_(),e[43]=_,e[44]=R);let T;e[45]===v?T=e[46]:(T=xa.stopPropagation(()=>v()),e[45]=v,e[46]=T);let X;e[47]===Symbol.for("react.memo_cache_sentinel")?(X=(0,t.jsx)(ya,{className:"h-3 w-3"}),e[47]=X):X=e[47];let W;e[48]===T?W=e[49]:(W=(0,t.jsx)(re,{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]=W);let z;e[50]!==n||e[51]!==F||e[52]!==U||e[53]!==R||e[54]!==W||e[55]!==$||e[56]!==V?(z=(0,t.jsxs)(ae,{className:$,value:V,"aria-selected":n,forceMount:!0,onSelect:F,children:[U,R,W]}),e[50]=n,e[51]=F,e[52]=U,e[53]=R,e[54]=W,e[55]=$,e[56]=V,e[57]=z):z=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 Q;return e[61]!==z||e[62]!==H?(Q=(0,t.jsxs)(t.Fragment,{children:[z,H]}),e[61]=z,e[62]=H,e[63]=Q):Q=e[63],Q},Qa=a=>{var U,R;let e=(0,A.c)(48),{table:s,column:l,sqlTableContext:r}=a,[o,n]=C.useState(!1),j=K(xe),g=de(Ge);j&&o&&n(!1),g(o?T=>new Set([...T,`${s.name}:${l.name}`]):T=>(T.delete(`${s.name}:${l.name}`),new Set(T)));let N=Se(),{columnsPreviews:f}=aa(),c;e[0]!==l.name||e[1]!==s.primary_keys?(c=((U=s.primary_keys)==null?void 0:U.includes(l.name))||!1,e[0]=l.name,e[1]=s.primary_keys,e[2]=c):c=e[2];let i=c,h;e[3]!==l.name||e[4]!==s.indexes?(h=((R=s.indexes)==null?void 0:R.includes(l.name))||!1,e[3]=l.name,e[4]=s.indexes,e[5]=h):h=e[5];let p=h,d;e[6]===N?d=e[7]:(d=T=>{N(T)},e[6]=N,e[7]=d);let m=d,u=Ya,x=o?"font-semibold":"",b;e[8]!==l.name||e[9]!==x?(b=(0,t.jsx)("span",{className:x,children:l.name}),e[8]=l.name,e[9]=x,e[10]=b):b=e[10];let y=b,v=`${s.name}.${l.name}`,w=`${s.name}.${l.name}`,_;e[11]===o?_=e[12]:(_=()=>n(!o),e[11]=o,e[12]=_);let L=r?S.columnSql:S.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)(Va,{columnName:y,dataType:l.type}),e[15]=l.type,e[16]=y,e[17]=q):q=e[17];let M;e[18]===i?M=e[19]:(M=i&&u({tooltipContent:"Primary key",content:"PK"}),e[18]=i,e[19]=M);let V;e[20]===p?V=e[21]:(V=p&&u({tooltipContent:"Indexed",content:"IDX"}),e[20]=p,e[21]=V);let P;e[22]!==k||e[23]!==q||e[24]!==M||e[25]!==V?(P=(0,t.jsxs)("div",{className:k,children:[q,M,V]}),e[22]=k,e[23]=q,e[24]=M,e[25]=V,e[26]=P):P=e[26];let E;e[27]===l.name?E=e[28]:(E=(0,t.jsx)(re,{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)(wa,{tooltip:!1,value:l.name,className:"h-3 w-3"})})}),e[27]=l.name,e[28]=E);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]!==P||e[32]!==E||e[33]!==$||e[34]!==v||e[35]!==w||e[36]!==_?(F=(0,t.jsxs)(ae,{className:"rounded-none py-1 group cursor-pointer",value:w,onSelect:_,children:[P,E,$]},v),e[31]=P,e[32]=E,e[33]=$,e[34]=v,e[35]=w,e[36]=_,e[37]=F):F=e[37];let I;e[38]!==l||e[39]!==f||e[40]!==m||e[41]!==o||e[42]!==r||e[43]!==s?(I=o&&(0,t.jsx)("div",{className:O(S.columnPreview,"pr-2 py-2 bg-(--slate-1) shadow-inner border-b"),children:(0,t.jsx)(oa,{children:(0,t.jsx)(Na,{table:s,column:l,onAddColumnChart:m,preview:f.get(r?`${r.database}.${r.schema}.${s.name}:${l.name}`:`${s.name}:${l.name}`),sqlTableContext:r})})}),e[38]=l,e[39]=f,e[40]=m,e[41]=o,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)(re,{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 G={name:"name",type:"type-value",defs:"defs-refs"},Za=[{id:G.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)(Oa,{name:e,declaredBy:s})}},{id:G.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:G.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=o=>{let n=Ye(o);n&&Ze(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)(ve,{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((o,n)=>(0,t.jsxs)("span",{className:"flex",children:[(0,t.jsx)(ve,{variant:"focus",cellId:o,skipScroll:!0,className:"whitespace-nowrap text-destructive",onClick:()=>r(o)},o),n<e.length-1&&", "]},o))})]}),(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)(va,{className:"w-3.5 h-3.5 text-muted-foreground"})}),(0,t.jsx)(Ea,{maxCount:3,cellIds:s,skipScroll:!0,onClick:r})]})]})}}];function et({variables:a,sort:e,cellIdToIndex:s}){e||(e={id:G.defs,desc:!1});let l=[];switch(e.id){case G.name:l=J(a,r=>r.name);break;case G.type:l=J(a,r=>r.dataType);break;case G.defs:l=J(a,r=>s.get(r.declaredBy[0]));break}return e.desc?l.toReversed():l}const Le=(0,C.memo)(({className:a,cellIds:e,variables:s})=>{let[l,r]=C.useState([]),[o,n]=C.useState(""),j=Re(),{locale:g}=Sa(),N=(0,C.useMemo)(()=>{let c=i=>{let h=j[i];return Ue(h)?`cell-${e.indexOf(i)}`:h??`cell-${e.indexOf(i)}`};return Object.values(s).map(i=>({...i,declaredByNames:i.declaredBy.map(c),usedByNames:i.usedBy.map(c)}))},[s,j,e]),f=ua({data:(0,C.useMemo)(()=>{let c=new Map;return e.forEach((i,h)=>c.set(i,h)),et({variables:N,sort:l[0],cellIdToIndex:c})},[N,l,e]),columns:Za,getCoreRowModel:ia(),onGlobalFilterChange:n,getFilteredRowModel:ha(),enableFilters:!0,enableGlobalFilter:!0,enableColumnPinning:!1,getColumnCanGlobalFilter(c){return c.columnDef.enableGlobalFilter??!0},globalFilterFn:"auto",manualSorting:!0,locale:g,onSortingChange:r,getSortedRowModel:da(),state:{sorting:l,globalFilter:o}});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(ja,{className:"w-full",placeholder:"Search",value:o,onChange:c=>n(c.target.value)}),(0,t.jsxs)(Da,{className:O("w-full text-sm flex-1 border-separate border-spacing-0",a),children:[(0,t.jsx)(Ia,{children:(0,t.jsx)(we,{className:"whitespace-nowrap text-xs",children:f.getFlatHeaders().map(c=>(0,t.jsx)(Ta,{className:"sticky top-0 bg-background border-b",children:je(c.column.columnDef.header,c.getContext())},c.id))})}),(0,t.jsx)(La,{children:f.getRowModel().rows.map(c=>(0,t.jsx)(we,{className:"hover:bg-accent",children:c.getVisibleCells().map(i=>(0,t.jsx)(qa,{className:"border-b",children:je(i.column.columnDef.cell,i.getContext())},i.id))},c.id))})]})]})});Le.displayName="VariableTable";var at=ge(),tt=na("marimo:session-panel:state",{openSections:["variables"],hasUserInteracted:!1},Ae),st=()=>{let a=(0,at.c)(24),e=ze(),s=ea(),l=K(ue),r=K(Ie),[o,n]=De(tt),j=l.length+r.length,g;a[0]!==j||a[1]!==o.hasUserInteracted||a[2]!==o.openSections?(g=!o.hasUserInteracted&&j>0?[...new Set([...o.openSections,"datasources"])]:o.openSections,a[0]=j,a[1]=o.hasUserInteracted,a[2]=o.openSections,a[3]=g):g=a[3];let N=g,f;a[4]===n?f=a[5]:(f=v=>{n({openSections:v,hasUserInteracted:!0})},a[4]=n,a[5]=f);let c=f,i=!N.includes("datasources")&&j>0,h;a[6]===Symbol.for("react.memo_cache_sentinel")?(h=(0,t.jsx)(le,{className:"w-4 h-4"}),a[6]=h):h=a[6];let p;a[7]!==j||a[8]!==i?(p=i&&(0,t.jsx)(Ra,{children:j}),a[7]=j,a[8]=i,a[9]=p):p=a[9];let d;a[10]===p?d=a[11]:(d=(0,t.jsxs)($e,{children:[h,"Data sources",p]}),a[10]=p,a[11]=d);let m;a[12]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)(Fe,{children:(0,t.jsx)(Wa,{})}),a[12]=m):m=a[12];let u;a[13]===d?u=a[14]:(u=(0,t.jsxs)(ke,{value:"datasources",children:[d,m]}),a[13]=d,a[14]=u);let x;a[15]===Symbol.for("react.memo_cache_sentinel")?(x=(0,t.jsxs)($e,{children:[(0,t.jsx)(Me,{className:"w-4 h-4"}),"Variables"]}),a[15]=x):x=a[15];let b;a[16]!==s||a[17]!==e?(b=(0,t.jsxs)(ke,{value:"variables",lastItem:!0,children:[x,(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]=b):b=a[18];let y;return a[19]!==c||a[20]!==N||a[21]!==u||a[22]!==b?(y=(0,t.jsxs)(ca,{type:"multiple",value:N,onValueChange:c,className:"flex flex-col h-full overflow-auto",children:[u,b]}),a[19]=c,a[20]=N,a[21]=u,a[22]=b,a[23]=y):y=a[23],y};export{st as default};
1
+ import{s as ie}from"./chunk-LvLJmgfZ.js";import{d as de,l as De,p as he,u as J}from"./useEvent-D91BmmQi.js";import{t as Be}from"./react-Bj1aDYRI.js";import{$n as Ve,Ar as Me,Cr as Pe,Dr as ue,E as Ee,Er as se,Ht as Oe,In as Ue,Ir as Ae,It as Re,Lr as xe,N as ze,Nn as Ge,Nr as pe,Or as fe,Ot as We,Pn as He,Pr as be,Qn as Je,Ut as Ke,Wt as Qe,a as Xe,cr as Ye,dr as Ze,f as ea,fr as le,hn as aa,j as ta,kr as sa,tr as la,yi as na}from"./cells-A-ljPpuj.js";import"./react-dom-CSu739Rf.js";import{t as ge}from"./compiler-runtime-B3qBwwSJ.js";import{o as ra}from"./utils-DIGrmLDO.js";import{t as oa}from"./ErrorBoundary-DzYV_VeY.js";import{t as O}from"./cn-DCUzRj2J.js";import{t as ma}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-BDxedMYP.js";import{n as ca}from"./multi-map-rafH3cg3.js";import"./popover-UExmgBsf.js";import{J as je,Q as ia,X as da,Y as ha,Z as ua,z as ne}from"./JsonOutput-BVAcY5xS.js";import"./download-Iyng0xCz.js";import{t as re}from"./tooltip-Gcwqb_SK.js";import{r as xa,t as ee}from"./button-D9nb17Rw.js";import"./dist-BrR4M-k3.js";import{u as K}from"./arrays-DYDL-3-i.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{i as pa}from"./strings-md4mFbOQ.js";import{r as fa}from"./requests-DIwGYs0l.js";import{t as ba}from"./createLucideIcon-D5guW7EU.js";import{t as ga}from"./x-C-6liIBr.js";import"./markdown-renderer-CFrgiLqu.js";import{t as Ne}from"./add-connection-dialog-gd2yD9Qo.js";import{t as ye}from"./plus-BgB18UzY.js";import{a as ja}from"./input-DyPS_GiK.js";import{n as Na,o as ya}from"./column-preview-_5uYiy74.js";import{t as va}from"./workflow-DYcZF-oV.js";import"./dist-Ds4ite_2.js";import"./dist-CEysMnMQ.js";import"./dist-DGxytjtv.js";import"./dist-DZ2qbK2N.js";import"./dist-CRPTyqAT.js";import"./session-nmTRerwF.js";import"./purify.es-DC4RGS9t.js";import"./dates-DhByPWH5.js";import{t as wa}from"./copy-icon-C67c9EwB.js";import{t as Sa}from"./context-DGqo1TbK.js";import"./utils-Bq5kLQ87.js";import"./vega-loader.browser-DXARUlxo.js";import"./defaultLocale-JieDVWC_.js";import"./defaultLocale-BLne0bXb.js";import{t as ve}from"./cell-link-d38hFEon.js";import{n as oe}from"./useAsyncData-dS4Ne6pU.js";import{a as Ca,d as _a,o as ae,t as $a}from"./command-CzIDL1VI.js";import"./chunk-5FQGJX7Z-B4RvNAGm.js";import{r as ka}from"./html-to-image-tbPEMBJg.js";import{o as Fa}from"./focus-Baz7rlo0.js";import{a as Ia,i as Ta,n as La,o as we,r as qa,t as Da}from"./table-23NNA1s9.js";import"./react-resizable-panels.browser.esm-Bcm5njwd.js";import{n as Ba}from"./icons-BRopQwI3.js";import{t as Se}from"./useAddCell-De9xD63_.js";import{r as Va}from"./tree-actions-oMCx6WNc.js";import{a as me,i as te,o as ce,r as Ce,s as _e,t as Ma}from"./components-FepcpFGL.js";import{t as Pa}from"./empty-state-CsVQSqKA.js";import{n as Ea,t as Oa}from"./common-DC9LEIym.js";import{a as Ua,i as Aa,n as $e,r as ke,t as Fe}from"./components-BDnRtsA5.js";var Ra=ba("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=ge(),C=ie(Be(),1),t=ie(ma(),1),S={engineEmpty:"pl-3",engine:"pl-3 pr-2",database:"pl-4",schemaEmpty:"pl-8",schema:"pl-7",schemaLoading:"pl-8",tableLoading:"pl-11",tableSchemaless:"pl-8",tableWithSchema:"pl-12",columnLocal:"pl-5",columnSql:"pl-13",columnPreview:"pl-10"},za=he(a=>{let e=a(fe),s=a(Ue),l=a(Xe);return K(e,r=>{if(!r.variable_name)return-1;let o=Object.values(s).find(j=>j.name===r.variable_name);if(!o)return 0;let n=l.inOrderIds.indexOf(o.declaredBy[0]);return n===-1?0:n})});const Ie=he(a=>{let e=new Map(a(Pe));for(let s of xe){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=>xe.has(s.name)?1:0)}),Ga=()=>{let a=(0,R.c)(32),[e,s]=C.useState(""),l=de(ue),r=J(za),o=J(Ie);if(r.length===0&&o.length===0){let u;return a[0]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)(Pa,{title:"No tables found",description:"Any datasets/dataframes in the global scope will be shown here.",action:(0,t.jsx)(Ne,{children:(0,t.jsxs)(ee,{variant:"outline",size:"sm",children:["Add database or catalog",(0,t.jsx)(ye,{className:"h-4 w-4 ml-2"})]})}),icon:(0,t.jsx)(le,{})}),a[0]=u):u=a[0],u}let n=!!e.trim(),j;a[1]===l?j=a[2]:(j=u=>{l(u.length>0),s(u)},a[1]=l,a[2]=j);let g;a[3]!==e||a[4]!==j?(g=(0,t.jsx)(Ca,{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]=g):g=a[5];let N;a[6]===n?N=a[7]:(N=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)(ga,{className:"h-4 w-4"})}),a[6]=n,a[7]=N);let f;a[8]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsx)(Ne,{children:(0,t.jsx)(ee,{variant:"ghost",size:"sm",className:"px-2 rounded-none focus-visible:outline-hidden",children:(0,t.jsx)(ye,{className:"h-4 w-4"})})}),a[8]=f):f=a[8];let c;a[9]!==g||a[10]!==N?(c=(0,t.jsxs)("div",{className:"flex items-center w-full border-b",children:[g,N,f]}),a[9]=g,a[10]=N,a[11]=c):c=a[11];let i;if(a[12]!==o||a[13]!==n||a[14]!==e){let u;a[16]!==n||a[17]!==e?(u=x=>(0,t.jsx)(Wa,{connection:x,hasChildren:x.databases.length>0,children:x.databases.map(b=>(0,t.jsx)(Ha,{engineName:x.name,database:b,hasSearch:n,children:(0,t.jsx)(Ja,{schemas:b.schemas,defaultSchema:x.default_schema,defaultDatabase:x.default_database,engineName:x.name,databaseName:b.name,hasSearch:n,searchValue:e,dialect:x.dialect})},b.name))},x.name),a[16]=n,a[17]=e,a[18]=u):u=a[18],i=o.map(u),a[12]=o,a[13]=n,a[14]=e,a[15]=i}else i=a[15];let h;a[19]!==o.length||a[20]!==r.length?(h=o.length>0&&r.length>0&&(0,t.jsxs)(Ce,{className:S.engine,children:[(0,t.jsx)(Ba,{className:"h-4 w-4 text-muted-foreground"}),(0,t.jsx)("span",{className:"text-xs",children:"Python"})]}),a[19]=o.length,a[20]=r.length,a[21]=h):h=a[21];let p;a[22]!==e||a[23]!==r?(p=r.length>0&&(0,t.jsx)(Te,{tables:r,searchValue:e}),a[22]=e,a[23]=r,a[24]=p):p=a[24];let d;a[25]!==i||a[26]!==h||a[27]!==p?(d=(0,t.jsxs)(_a,{className:"flex flex-col",children:[i,h,p]}),a[25]=i,a[26]=h,a[27]=p,a[28]=d):d=a[28];let m;return a[29]!==c||a[30]!==d?(m=(0,t.jsxs)($a,{className:"border-b bg-background rounded-none h-full pb-10 overflow-auto outline-hidden",shouldFilter:!1,children:[c,d]}),a[29]=c,a[30]=d,a[31]=m):m=a[31],m};var Wa=a=>{let e=(0,R.c)(25),{connection:s,children:l,hasChildren:r}=a,o=s.name===Ae,n=o?"In-Memory":s.name,{previewDataSourceConnection:j}=fa(),g;e[0]!==s.name||e[1]!==j?(g=async()=>{await j({engine:s.name})},e[0]=s.name,e[1]=j,e[2]=g):g=e[2];let N=g,f;e[3]===s.dialect?f=e[4]:(f=(0,t.jsx)(We,{className:"h-4 w-4 text-muted-foreground",name:s.dialect}),e[3]=s.dialect,e[4]=f);let c;e[5]===s.dialect?c=e[6]:(c=Je(s.dialect),e[5]=s.dialect,e[6]=c);let i;e[7]===c?i=e[8]:(i=(0,t.jsx)("span",{className:"text-xs",children:c}),e[7]=c,e[8]=i);let h=n,p;e[9]===h?p=e[10]:(p=(0,t.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",(0,t.jsx)(Ua,{variableName:h}),")"]}),e[9]=h,e[10]=p);let d;e[11]!==N||e[12]!==o?(d=!o&&(0,t.jsx)(Va,{onClick:N,tooltip:"Refresh connection",className:"ml-auto h-4 p-0",iconClassName:"h-3.5 w-3.5"}),e[11]=N,e[12]=o,e[13]=d):d=e[13];let m;e[14]!==f||e[15]!==i||e[16]!==p||e[17]!==d?(m=(0,t.jsxs)(Ce,{className:S.engine,children:[f,i,p,d]}),e[14]=f,e[15]=i,e[16]=p,e[17]=d,e[18]=m):m=e[18];let u;e[19]!==l||e[20]!==r?(u=r?l:(0,t.jsx)(te,{content:"No databases available",className:S.engineEmpty}),e[19]=l,e[20]=r,e[21]=u):u=e[21];let x;return e[22]!==m||e[23]!==u?(x=(0,t.jsxs)(t.Fragment,{children:[m,u]}),e[22]=m,e[23]=u,e[24]=x):x=e[24],x},Ha=a=>{let e=(0,R.c)(26),{hasSearch:s,engineName:l,database:r,children:o}=a,[n,j]=C.useState(!1),[g,N]=C.useState(!1),[f,c]=C.useState(s);f!==s&&(c(s),j(s));let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=O("text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",S.database),e[0]=i):i=e[0];let h;e[1]!==n||e[2]!==g?(h=()=>{j(!n),N(!g)},e[1]=n,e[2]=g,e[3]=h):h=e[3];let p=`${l}:${r.name}`,d;e[4]===n?d=e[5]:(d=(0,t.jsx)(_e,{isExpanded:n}),e[4]=n,e[5]=d);let m=g&&n?"text-foreground":"text-muted-foreground",u;e[6]===m?u=e[7]:(u=O("h-4 w-4",m),e[6]=m,e[7]=u);let x;e[8]===u?x=e[9]:(x=(0,t.jsx)(le,{className:u}),e[8]=u,e[9]=x);let b=g&&n&&"font-semibold",y;e[10]===b?y=e[11]:(y=O(b),e[10]=b,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 _;e[17]!==w||e[18]!==h||e[19]!==p||e[20]!==d||e[21]!==x?(_=(0,t.jsxs)(ae,{className:i,onSelect:h,value:p,children:[d,x,w]}),e[17]=w,e[18]=h,e[19]=p,e[20]=d,e[21]=x,e[22]=_):_=e[22];let L=n&&o,$;return e[23]!==_||e[24]!==L?($=(0,t.jsxs)(t.Fragment,{children:[_,L]}),e[23]=_,e[24]=L,e[25]=$):$=e[25],$},Ja=({schemas:a,defaultSchema:e,defaultDatabase:s,dialect:l,engineName:r,databaseName:o,hasSearch:n,searchValue:j})=>{let{addSchemaList:g}=se(),[N,f]=C.useState(!1),[c,i]=C.useState(!1),{isPending:h,error:p}=oe(async()=>{if(a.length===0&&r&&!N){f(!0),i(!0);try{g({schemas:(await Oe.request({engine:r,database:o})).schemas??[],sqlSchemaContext:{engine:r,database:o}})}finally{i(!1)}}},[a.length,r,o,N]);return h||c?(0,t.jsx)(ce,{message:"Loading schemas...",className:S.schemaLoading}):p?(0,t.jsx)(me,{error:p,className:S.schemaLoading}):a.length===0?(0,t.jsx)(te,{content:"No schemas available",className:S.schemaEmpty}):(0,t.jsx)(t.Fragment,{children:a.filter(d=>j?d.tables.some(m=>m.name.toLowerCase().includes(j.toLowerCase())):!0).map(d=>(0,t.jsx)(Ka,{databaseName:o,schema:d,hasSearch:n,children:(0,t.jsx)(Te,{tables:d.tables,searchValue:j,sqlTableContext:{engine:r,database:o,schema:d.name,defaultSchema:e,defaultDatabase:s,dialect:l}})},d.name))})},Ka=a=>{let e=(0,R.c)(24),{databaseName:s,schema:l,children:r,hasSearch:o}=a,[n,j]=C.useState(o),[g,N]=C.useState(!1),f=`${s}:${l.name}`;if(pe(l.name))return r;let c;e[0]===Symbol.for("react.memo_cache_sentinel")?(c=O("text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none",S.schema),e[0]=c):c=e[0];let i;e[1]!==n||e[2]!==g?(i=()=>{j(!n),N(!g)},e[1]=n,e[2]=g,e[3]=i):i=e[3];let h;e[4]===n?h=e[5]:(h=(0,t.jsx)(_e,{isExpanded:n}),e[4]=n,e[5]=h);let p=g&&n&&"text-foreground",d;e[6]===p?d=e[7]:(d=O("h-4 w-4 text-muted-foreground",p),e[6]=p,e[7]=d);let m;e[8]===d?m=e[9]:(m=(0,t.jsx)(Ye,{className:d}),e[8]=d,e[9]=m);let u=g&&n&&"font-semibold",x;e[10]===u?x=e[11]:(x=O(u),e[10]=u,e[11]=x);let b;e[12]!==l.name||e[13]!==x?(b=(0,t.jsx)("span",{className:x,children:l.name}),e[12]=l.name,e[13]=x,e[14]=b):b=e[14];let y;e[15]!==i||e[16]!==h||e[17]!==m||e[18]!==b||e[19]!==f?(y=(0,t.jsxs)(ae,{className:c,onSelect:i,value:f,children:[h,m,b]}),e[15]=i,e[16]=h,e[17]=m,e[18]=b,e[19]=f,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:o}=se(),[n,j]=C.useState(!1),[g,N]=C.useState(!1),f;e[0]!==o||e[1]!==l||e[2]!==s.length||e[3]!==n?(f=async()=>{if(s.length===0&&l&&!n){j(!0),N(!0);let{engine:m,database:u,schema:x}=l,b=await Qe.request({engine:m,database:u,schema:x});if(!(b!=null&&b.tables))throw N(!1),Error("No tables available");o({tables:b.tables,sqlTableContext:l}),N(!1)}},e[0]=o,e[1]=l,e[2]=s.length,e[3]=n,e[4]=f):f=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:i,error:h}=oe(f,c);if(i||g){let m;return e[9]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)(ce,{message:"Loading tables...",className:S.tableLoading}),e[9]=m):m=e[9],m}if(h){let m;return e[10]===h?m=e[11]:(m=(0,t.jsx)(me,{error:h,className:S.tableLoading}),e[10]=h,e[11]=m),m}if(s.length===0){let m;return e[12]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)(te,{content:"No tables found",className:S.tableLoading}),e[12]=m):m=e[12],m}let p;if(e[13]!==r||e[14]!==l||e[15]!==s){let m;e[17]===r?m=e[18]:(m=b=>r?b.name.toLowerCase().includes(r.toLowerCase()):!0,e[17]=r,e[18]=m);let u=s.filter(m),x;e[19]!==r||e[20]!==l?(x=b=>(0,t.jsx)(Qa,{table:b,sqlTableContext:l,isSearching:!!r},b.name),e[19]=r,e[20]=l,e[21]=x):x=e[21],p=u.map(x),e[13]=r,e[14]=l,e[15]=s,e[16]=p}else p=e[16];let d;return e[22]===p?d=e[23]:(d=(0,t.jsx)(t.Fragment,{children:p}),e[22]=p,e[23]=d),d},Qa=a=>{let e=(0,R.c)(64),{table:s,sqlTableContext:l,isSearching:r}=a,{addTable:o}=se(),[n,j]=C.useState(!1),[g,N]=C.useState(!1),f=s.columns.length>0,c;e[0]!==o||e[1]!==n||e[2]!==l||e[3]!==s.name||e[4]!==f||e[5]!==g?(c=async()=>{if(n&&!f&&l&&!g){N(!0);let{engine:B,database:Y,schema:qe}=l,Z=await Ke.request({engine:B,database:Y,schema:qe,tableName:s.name});if(!(Z!=null&&Z.table))throw Error("No table details available");o({table:Z.table,sqlTableContext:l})}},e[0]=o,e[1]=n,e[2]=l,e[3]=s.name,e[4]=f,e[5]=g,e[6]=c):c=e[6];let i;e[7]!==n||e[8]!==f?(i=[n,f],e[7]=n,e[8]=f,e[9]=i):i=e[9];let{isFetching:h,isPending:p,error:d}=oe(c,i),m=J(ra),u=Fa(),{createNewCell:x}=Ee(),b=Se(),y;e[10]!==b||e[11]!==m||e[12]!==x||e[13]!==u||e[14]!==l||e[15]!==s?(y=()=>{ka({autoInstantiate:m,createNewCell:x,fromCellId:u}),b((()=>{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 be({table:s,columnName:"*",sqlTableContext:l});switch(s.source_type){case"local":return`mo.ui.table(${s.name})`;case"duckdb":case"connection":return be({table:s,columnName:"*",sqlTableContext:l});default:return pa(s.source_type),""}})())},e[10]=b,e[11]=m,e[12]=x,e[13]=u,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 _=w,L;e[20]!==d||e[21]!==h||e[22]!==p||e[23]!==l||e[24]!==s?(L=()=>{if(p||h)return(0,t.jsx)(ce,{message:"Loading columns...",className:S.tableLoading});if(d)return(0,t.jsx)(me,{error:d,className:S.tableLoading});let B=s.columns;return B.length===0?(0,t.jsx)(te,{content:"No columns found",className:S.tableLoading}):B.map(Y=>(0,t.jsx)(Xa,{table:s,column:Y,sqlTableContext:l},Y.name))},e[20]=d,e[21]=h,e[22]=p,e[23]=l,e[24]=s,e[25]=L):L=e[25];let $=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:Ze,{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 V=q,M=l?`${l.database}.${l.schema}.${s.name}`:s.name,P=l&&(pe(l.schema)?S.tableSchemaless:S.tableWithSchema),E=(n||r)&&"font-semibold",k;e[31]!==P||e[32]!==E?(k=O("rounded-none group h-8 cursor-pointer",P,E),e[31]=P,e[32]=E,e[33]=k):k=e[33];let F;e[34]===n?F=e[35]:(F=()=>j(!n),e[34]=n,e[35]=F);let I;e[36]===V?I=e[37]:(I=V(),e[36]=V,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]===_?A=e[44]:(A=_(),e[43]=_,e[44]=A);let T;e[45]===v?T=e[46]:(T=xa.stopPropagation(()=>v()),e[45]=v,e[46]=T);let Q;e[47]===Symbol.for("react.memo_cache_sentinel")?(Q=(0,t.jsx)(ya,{className:"h-3 w-3"}),e[47]=Q):Q=e[47];let G;e[48]===T?G=e[49]:(G=(0,t.jsx)(re,{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:Q})}),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]!==k||e[56]!==M?(W=(0,t.jsxs)(ae,{className:k,value:M,"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]=k,e[56]=M,e[57]=W):W=e[57];let H;e[58]!==n||e[59]!==$?(H=n&&$(),e[58]=n,e[59]=$,e[60]=H):H=e[60];let X;return e[61]!==W||e[62]!==H?(X=(0,t.jsxs)(t.Fragment,{children:[W,H]}),e[61]=W,e[62]=H,e[63]=X):X=e[63],X},Xa=a=>{var U,A;let e=(0,R.c)(48),{table:s,column:l,sqlTableContext:r}=a,[o,n]=C.useState(!1),j=J(ue),g=de(sa);j&&o&&n(!1),g(o?T=>new Set([...T,`${s.name}:${l.name}`]):T=>(T.delete(`${s.name}:${l.name}`),new Set(T)));let N=Se(),{columnsPreviews:f}=Me(),c;e[0]!==l.name||e[1]!==s.primary_keys?(c=((U=s.primary_keys)==null?void 0:U.includes(l.name))||!1,e[0]=l.name,e[1]=s.primary_keys,e[2]=c):c=e[2];let i=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 p=h,d;e[6]===N?d=e[7]:(d=T=>{N(T)},e[6]=N,e[7]=d);let m=d,u=Ya,x=o?"font-semibold":"",b;e[8]!==l.name||e[9]!==x?(b=(0,t.jsx)("span",{className:x,children:l.name}),e[8]=l.name,e[9]=x,e[10]=b):b=e[10];let y=b,v=`${s.name}.${l.name}`,w=`${s.name}.${l.name}`,_;e[11]===o?_=e[12]:(_=()=>n(!o),e[11]=o,e[12]=_);let L=r?S.columnSql:S.columnLocal,$;e[13]===L?$=e[14]:($=O("flex flex-row gap-2 items-center flex-1",L),e[13]=L,e[14]=$);let q;e[15]!==l.type||e[16]!==y?(q=(0,t.jsx)(Ma,{columnName:y,dataType:l.type}),e[15]=l.type,e[16]=y,e[17]=q):q=e[17];let V;e[18]===i?V=e[19]:(V=i&&u({tooltipContent:"Primary key",content:"PK"}),e[18]=i,e[19]=V);let M;e[20]===p?M=e[21]:(M=p&&u({tooltipContent:"Indexed",content:"IDX"}),e[20]=p,e[21]=M);let P;e[22]!==$||e[23]!==q||e[24]!==V||e[25]!==M?(P=(0,t.jsxs)("div",{className:$,children:[q,V,M]}),e[22]=$,e[23]=q,e[24]=V,e[25]=M,e[26]=P):P=e[26];let E;e[27]===l.name?E=e[28]:(E=(0,t.jsx)(re,{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)(wa,{tooltip:!1,value:l.name,className:"h-3 w-3"})})}),e[27]=l.name,e[28]=E);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 F;e[31]!==P||e[32]!==E||e[33]!==k||e[34]!==v||e[35]!==w||e[36]!==_?(F=(0,t.jsxs)(ae,{className:"rounded-none py-1 group cursor-pointer",value:w,onSelect:_,children:[P,E,k]},v),e[31]=P,e[32]=E,e[33]=k,e[34]=v,e[35]=w,e[36]=_,e[37]=F):F=e[37];let I;e[38]!==l||e[39]!==f||e[40]!==m||e[41]!==o||e[42]!==r||e[43]!==s?(I=o&&(0,t.jsx)("div",{className:O(S.columnPreview,"pr-2 py-2 bg-(--slate-1) shadow-inner border-b"),children:(0,t.jsx)(oa,{children:(0,t.jsx)(Na,{table:s,column:l,onAddColumnChart:m,preview:f.get(r?`${r.database}.${r.schema}.${s.name}:${l.name}`:`${s.name}:${l.name}`),sqlTableContext:r})})}),e[38]=l,e[39]=f,e[40]=m,e[41]=o,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)(re,{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 z={name:"name",type:"type-value",defs:"defs-refs"},Za=[{id:z.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)(Oa,{name:e,declaredBy:s})}},{id:z.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:z.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=o=>{let n=ea(o);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)(Ra,{className:"w-3.5 h-3.5 text-muted-foreground"})}),e.length===1?(0,t.jsx)(ve,{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((o,n)=>(0,t.jsxs)("span",{className:"flex",children:[(0,t.jsx)(ve,{variant:"focus",cellId:o,skipScroll:!0,className:"whitespace-nowrap text-destructive",onClick:()=>r(o)},o),n<e.length-1&&", "]},o))})]}),(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)(va,{className:"w-3.5 h-3.5 text-muted-foreground"})}),(0,t.jsx)(Ea,{maxCount:3,cellIds:s,skipScroll:!0,onClick:r})]})]})}}];function et({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.toReversed():l}const Le=(0,C.memo)(({className:a,cellIds:e,variables:s})=>{let[l,r]=C.useState([]),[o,n]=C.useState(""),j=ze(),{locale:g}=Sa(),N=(0,C.useMemo)(()=>{let c=i=>{let h=j[i];return Re(h)?`cell-${e.indexOf(i)}`:h??`cell-${e.indexOf(i)}`};return Object.values(s).map(i=>({...i,declaredByNames:i.declaredBy.map(c),usedByNames:i.usedBy.map(c)}))},[s,j,e]),f=ha({data:(0,C.useMemo)(()=>{let c=new Map;return e.forEach((i,h)=>c.set(i,h)),et({variables:N,sort:l[0],cellIdToIndex:c})},[N,l,e]),columns:Za,getCoreRowModel:da(),onGlobalFilterChange:n,getFilteredRowModel:ua(),enableFilters:!0,enableGlobalFilter:!0,enableColumnPinning:!1,getColumnCanGlobalFilter(c){return c.columnDef.enableGlobalFilter??!0},globalFilterFn:"auto",manualSorting:!0,locale:g,onSortingChange:r,getSortedRowModel:ia(),state:{sorting:l,globalFilter:o}});return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(ja,{className:"w-full",placeholder:"Search",value:o,onChange:c=>n(c.target.value)}),(0,t.jsxs)(Da,{className:O("w-full text-sm flex-1 border-separate border-spacing-0",a),children:[(0,t.jsx)(Ia,{children:(0,t.jsx)(we,{className:"whitespace-nowrap text-xs",children:f.getFlatHeaders().map(c=>(0,t.jsx)(Ta,{className:"sticky top-0 bg-background border-b",children:je(c.column.columnDef.header,c.getContext())},c.id))})}),(0,t.jsx)(La,{children:f.getRowModel().rows.map(c=>(0,t.jsx)(we,{className:"hover:bg-accent",children:c.getVisibleCells().map(i=>(0,t.jsx)(qa,{className:"border-b",children:je(i.column.columnDef.cell,i.getContext())},i.id))},c.id))})]})]})});Le.displayName="VariableTable";var at=ge(),tt=na("marimo:session-panel:state",{openSections:["variables"],hasUserInteracted:!1},Ge),st=()=>{let a=(0,at.c)(24),e=He(),s=ta(),l=J(fe),r=J(Ie),[o,n]=De(tt),j=l.length+r.length,g;a[0]!==j||a[1]!==o.hasUserInteracted||a[2]!==o.openSections?(g=!o.hasUserInteracted&&j>0?[...new Set([...o.openSections,"datasources"])]:o.openSections,a[0]=j,a[1]=o.hasUserInteracted,a[2]=o.openSections,a[3]=g):g=a[3];let N=g,f;a[4]===n?f=a[5]:(f=v=>{n({openSections:v,hasUserInteracted:!0})},a[4]=n,a[5]=f);let c=f,i=!N.includes("datasources")&&j>0,h;a[6]===Symbol.for("react.memo_cache_sentinel")?(h=(0,t.jsx)(le,{className:"w-4 h-4"}),a[6]=h):h=a[6];let p;a[7]!==j||a[8]!==i?(p=i&&(0,t.jsx)(Aa,{children:j}),a[7]=j,a[8]=i,a[9]=p):p=a[9];let d;a[10]===p?d=a[11]:(d=(0,t.jsxs)(ke,{children:[h,"Data sources",p]}),a[10]=p,a[11]=d);let m;a[12]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)(Fe,{children:(0,t.jsx)(Ga,{})}),a[12]=m):m=a[12];let u;a[13]===d?u=a[14]:(u=(0,t.jsxs)($e,{value:"datasources",children:[d,m]}),a[13]=d,a[14]=u);let x;a[15]===Symbol.for("react.memo_cache_sentinel")?(x=(0,t.jsxs)(ke,{children:[(0,t.jsx)(Ve,{className:"w-4 h-4"}),"Variables"]}),a[15]=x):x=a[15];let b;a[16]!==s||a[17]!==e?(b=(0,t.jsxs)($e,{value:"variables",lastItem:!0,children:[x,(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]=b):b=a[18];let y;return a[19]!==c||a[20]!==N||a[21]!==u||a[22]!==b?(y=(0,t.jsxs)(ca,{type:"multiple",value:N,onValueChange:c,className:"flex flex-col h-full overflow-auto",children:[u,b]}),a[19]=c,a[20]=N,a[21]=u,a[22]=b,a[23]=y):y=a[23],y};export{st as default};
@@ -1 +1 @@
1
- import{s as S}from"./chunk-LvLJmgfZ.js";import{t as E}from"./react-Bj1aDYRI.js";import{ut as F}from"./cells-CJlo_hG2.js";import{t as _}from"./compiler-runtime-B3qBwwSJ.js";import{t as w}from"./cn-DCUzRj2J.js";import{t as V}from"./jsx-runtime-BqBOg78p.js";import{a as A,c as C,o as I,s as D}from"./popover-UExmgBsf.js";import{c as H,i as O,n as T,s as Z,t as B}from"./select-5i7URBEn.js";import{n as P}from"./JsonOutput-DXnOS_Hk.js";import{n as W,t as G}from"./radio-group-BtBoRbGH.js";import{t as J}from"./tooltip-Gcwqb_SK.js";import{t as K}from"./button-D9nb17Rw.js";import{t as j}from"./createLucideIcon-D5guW7EU.js";import{t as Q}from"./eye-off-BT-KOYV5.js";var U=j("cookie",[["path",{d:"M12 2a10 10 0 1 0 10 10 4 4 0 0 1-5-5 4 4 0 0 1-5-5",key:"laymnq"}],["path",{d:"M8.5 8.5v.01",key:"ue8clq"}],["path",{d:"M16 15.5v.01",key:"14dtrp"}],["path",{d:"M12 12v.01",key:"u5ubse"}],["path",{d:"M11 17v.01",key:"1hyl5a"}],["path",{d:"M7 14v.01",key:"uct60s"}]]),M=j("layout-template",[["rect",{width:"18",height:"7",x:"3",y:"3",rx:"1",key:"f1a2em"}],["rect",{width:"9",height:"7",x:"3",y:"14",rx:"1",key:"jqznyg"}],["rect",{width:"5",height:"7",x:"16",y:"14",rx:"1",key:"q5h2i8"}]]),X=j("panel-right-close",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}],["path",{d:"m8 9 3 3-3 3",key:"12hl5m"}]]),Y=j("panel-right-open",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}],["path",{d:"m10 15-3-3 3-3",key:"1pgupc"}]]),$=j("rows-2",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M3 12h18",key:"1i2n21"}]]),ee=_(),L=S(E(),1),l=S(V(),1);const z=(0,L.memo)(f=>{let e=(0,ee.c)(6),{output:a,cellId:i,status:r}=f,s;e[0]===r?s=e[1]:(s=F(r),e[0]=r,e[1]=s);let t=s,o;return e[2]!==i||e[3]!==t||e[4]!==a?(o=(0,l.jsx)(P,{className:"contents",allowExpand:!1,output:a,cellId:i,stale:t,loading:t}),e[2]=i,e[3]=t,e[4]=a,e[5]=o):o=e[5],o});z.displayName="Slide";var N=_();const te="slide",le="slide";var ae=36;const R=[{value:"slide",label:"Slide",description:"A new top-level slide. Advances horizontally with the right arrow.",Icon:M},{value:"sub-slide",label:"Sub-slide",description:"Stacks vertically under the previous slide. Reached with the down arrow.",Icon:$},{value:"fragment",label:"Fragment",description:"Reveals step-by-step on the current slide without advancing.",Icon:U},{value:"skip",label:"Skip",description:"Hidden from the presentation. Still visible here in the editor.",Icon:Q}],se=Object.fromEntries(R.map(f=>[f.value,f]));var q=[{value:"none",label:"None",description:"No animation between slides."},{value:"fade",label:"Fade",description:"Cross-fade between slides."},{value:"slide",label:"Slide",description:"Slides move horizontally / vertically."},{value:"convex",label:"Convex",description:"Rotate with a convex curve."},{value:"concave",label:"Concave",description:"Rotate with a concave curve."},{value:"zoom",label:"Zoom",description:"Zoom into the next slide."}],re=f=>{let e=(0,N.c)(11),{layout:a,setLayout:i,cellId:r}=f,s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,l.jsxs)(D,{className:"grid grid-cols-2",children:[(0,l.jsx)(C,{value:"slide",children:"Slide"}),(0,l.jsx)(C,{value:"deck",children:"Deck"})]}),e[0]=s):s=e[0];let t;e[1]!==r||e[2]!==a||e[3]!==i?(t=(0,l.jsx)(I,{value:"slide",className:"mt-0 flex-1",children:(0,l.jsx)(ie,{layout:a,setLayout:i,cellId:r})}),e[1]=r,e[2]=a,e[3]=i,e[4]=t):t=e[4];let o;e[5]!==a||e[6]!==i?(o=(0,l.jsx)(I,{value:"deck",className:"mt-0 flex-1",children:(0,l.jsx)(oe,{layout:a,setLayout:i})}),e[5]=a,e[6]=i,e[7]=o):o=e[7];let c;return e[8]!==t||e[9]!==o?(c=(0,l.jsxs)(A,{defaultValue:"slide",className:"flex flex-col flex-1 p-3 gap-3",children:[s,t,o]}),e[8]=t,e[9]=o,e[10]=c):c=e[10],c},ie=f=>{var v;let e=(0,N.c)(13),{layout:a,setLayout:i,cellId:r}=f,s=((v=a.cells.get(r))==null?void 0:v.type)??"slide",t;e[0]!==r||e[1]!==a||e[2]!==i?(t=u=>{let n=a.cells.get(r),x=new Map(a.cells);x.set(r,{...n,type:u}),i({...a,cells:x})},e[0]=r,e[1]=a,e[2]=i,e[3]=t):t=e[3];let o=t,c;e[4]===Symbol.for("react.memo_cache_sentinel")?(c=(0,l.jsx)("span",{className:"font-semibold text-sm",children:"Slide type"}),e[4]=c):c=e[4];let d;e[5]===o?d=e[6]:(d=u=>o(u),e[5]=o,e[6]=d);let m;e[7]===s?m=e[8]:(m=R.map(u=>{let{value:n,label:x,description:y,Icon:g}=u,p=s===n;return(0,l.jsx)(W,{value:n,className:w("group h-auto w-full text-left rounded-md p-2.5 transition-colors shadow-none! border","focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",p?"border-primary bg-primary/5":"border-border bg-background hover:bg-accent/50 hover:border-foreground/30"),children:(0,l.jsxs)("div",{className:"flex items-start gap-2.5",children:[(0,l.jsx)("span",{className:w("mt-0.5 flex h-6 w-6 shrink-0 items-center justify-center rounded",p?"bg-primary/10 text-primary":"bg-muted text-muted-foreground group-hover:text-foreground"),children:(0,l.jsx)(g,{className:"h-3.5 w-3.5"})}),(0,l.jsxs)("div",{children:[(0,l.jsx)("p",{className:w("text-sm font-medium leading-tight",p?"text-primary":"text-foreground"),children:x}),(0,l.jsx)("p",{className:"mt-0.5 text-xs text-foreground/70",children:y})]})]})},n)}),e[7]=s,e[8]=m);let h;return e[9]!==s||e[10]!==d||e[11]!==m?(h=(0,l.jsxs)("div",{className:"flex flex-col gap-3",children:[c,(0,l.jsx)(G,{"aria-label":"Slide type",value:s,onValueChange:d,className:"flex flex-col gap-1.5",children:m})]}),e[9]=s,e[10]=d,e[11]=m,e[12]=h):h=e[12],h},oe=f=>{var y,g;let e=(0,N.c)(18),{layout:a,setLayout:i}=f,r=((y=a.deck)==null?void 0:y.transition)??"slide",s;e[0]===r?s=e[1]:(s=(g=q.find(p=>p.value===r))==null?void 0:g.description,e[0]=r,e[1]=s);let t=s,o;e[2]!==a||e[3]!==i?(o=p=>{i({...a,deck:{...a.deck,transition:p}})},e[2]=a,e[3]=i,e[4]=o):o=e[4];let c=o,d;e[5]===Symbol.for("react.memo_cache_sentinel")?(d=(0,l.jsx)("label",{htmlFor:"deck-transition",className:"font-semibold text-sm text-foreground",children:"Transition"}),e[5]=d):d=e[5];let m;e[6]===c?m=e[7]:(m=p=>c(p),e[6]=c,e[7]=m);let h;e[8]===Symbol.for("react.memo_cache_sentinel")?(h=(0,l.jsx)(Z,{id:"deck-transition","aria-label":"Slide transition",children:(0,l.jsx)(H,{})}),e[8]=h):h=e[8];let v;e[9]===Symbol.for("react.memo_cache_sentinel")?(v=(0,l.jsx)(T,{children:q.map(de)}),e[9]=v):v=e[9];let u;e[10]!==r||e[11]!==m?(u=(0,l.jsxs)(B,{value:r,onValueChange:m,children:[h,v]}),e[10]=r,e[11]=m,e[12]=u):u=e[12];let n;e[13]===t?n=e[14]:(n=t&&(0,l.jsx)("p",{className:"text-xs text-foreground/70",children:t}),e[13]=t,e[14]=n);let x;return e[15]!==u||e[16]!==n?(x=(0,l.jsx)("div",{className:"flex flex-col gap-3",children:(0,l.jsxs)("div",{className:"flex flex-col gap-1.5",children:[d,u,n]})}),e[15]=u,e[16]=n,e[17]=x):x=e[17],x};const ne=f=>{let e=(0,N.c)(30),{configWidth:a,layout:i,setLayout:r,activeConfigCell:s}=f,[t,o]=(0,L.useState)(!1),c=t?a:ae,d;e[0]===c?d=e[1]:(d={width:c},e[0]=c,e[1]=d);let m=t?"justify-between px-2":"justify-center px-0",h;e[2]===m?h=e[3]:(h=w("flex items-center h-9 shrink-0 border-b border-border/60",m),e[2]=m,e[3]=h);let v;e[4]===t?v=e[5]:(v=t&&(0,l.jsx)("span",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground pl-1",children:"Configuration"}),e[4]=t,e[5]=v);let u=t?"Collapse panel":"Expand panel",n;e[6]===t?n=e[7]:(n=()=>o(!t),e[6]=t,e[7]=n);let x;e[8]===t?x=e[9]:(x=t?(0,l.jsx)(X,{className:"h-4 w-4"}):(0,l.jsx)(Y,{className:"h-4 w-4"}),e[8]=t,e[9]=x);let y;e[10]!==t||e[11]!==n||e[12]!==x?(y=(0,l.jsx)(K,{variant:"ghost",size:"icon",className:"h-7 w-7 text-muted-foreground hover:text-foreground",onClick:n,"aria-expanded":t,"aria-controls":"slide-config-panel",children:x}),e[10]=t,e[11]=n,e[12]=x,e[13]=y):y=e[13];let g;e[14]!==u||e[15]!==y?(g=(0,l.jsx)(J,{content:u,children:y}),e[14]=u,e[15]=y,e[16]=g):g=e[16];let p;e[17]!==g||e[18]!==h||e[19]!==v?(p=(0,l.jsxs)("header",{className:h,children:[v,g]}),e[17]=g,e[18]=h,e[19]=v,e[20]=p):p=e[20];let b;e[21]!==s||e[22]!==t||e[23]!==i||e[24]!==r?(b=t&&(0,l.jsx)("div",{id:"slide-config-panel",className:"flex-1 overflow-y-auto overflow-x-hidden",children:s?(0,l.jsx)(re,{layout:i,setLayout:r,cellId:s.id}):(0,l.jsxs)("div",{className:"flex flex-col gap-1.5 p-3 text-xs text-muted-foreground",children:[(0,l.jsx)("span",{className:"font-semibold text-sm text-foreground",children:"No slides yet"}),(0,l.jsx)("p",{children:"Run a cell that produces output to add it to the deck. Slide settings will appear here once a slide is selected."})]})}),e[21]=s,e[22]=t,e[23]=i,e[24]=r,e[25]=b):b=e[25];let k;return e[26]!==p||e[27]!==b||e[28]!==d?(k=(0,l.jsxs)("aside",{className:"h-full flex flex-col border-l border-border/60 bg-muted/20 transition-[width] duration-200 ease-out overflow-hidden",style:d,"aria-label":"Slide configuration",children:[p,b]}),e[26]=p,e[27]=b,e[28]=d,e[29]=k):k=e[29],k};function de(f){let{value:e,label:a}=f;return(0,l.jsx)(O,{value:e,children:a},e)}export{z as a,ne as i,te as n,M as o,se as r,le as t};
1
+ import{s as S}from"./chunk-LvLJmgfZ.js";import{t as E}from"./react-Bj1aDYRI.js";import{ut as F}from"./cells-A-ljPpuj.js";import{t as _}from"./compiler-runtime-B3qBwwSJ.js";import{t as w}from"./cn-DCUzRj2J.js";import{t as V}from"./jsx-runtime-BqBOg78p.js";import{a as A,c as C,o as I,s as D}from"./popover-UExmgBsf.js";import{c as H,i as O,n as T,s as Z,t as B}from"./select-5i7URBEn.js";import{n as P}from"./JsonOutput-BVAcY5xS.js";import{n as W,t as G}from"./radio-group-BtBoRbGH.js";import{t as J}from"./tooltip-Gcwqb_SK.js";import{t as K}from"./button-D9nb17Rw.js";import{t as j}from"./createLucideIcon-D5guW7EU.js";import{t as Q}from"./eye-off-BT-KOYV5.js";var U=j("cookie",[["path",{d:"M12 2a10 10 0 1 0 10 10 4 4 0 0 1-5-5 4 4 0 0 1-5-5",key:"laymnq"}],["path",{d:"M8.5 8.5v.01",key:"ue8clq"}],["path",{d:"M16 15.5v.01",key:"14dtrp"}],["path",{d:"M12 12v.01",key:"u5ubse"}],["path",{d:"M11 17v.01",key:"1hyl5a"}],["path",{d:"M7 14v.01",key:"uct60s"}]]),M=j("layout-template",[["rect",{width:"18",height:"7",x:"3",y:"3",rx:"1",key:"f1a2em"}],["rect",{width:"9",height:"7",x:"3",y:"14",rx:"1",key:"jqznyg"}],["rect",{width:"5",height:"7",x:"16",y:"14",rx:"1",key:"q5h2i8"}]]),X=j("panel-right-close",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}],["path",{d:"m8 9 3 3-3 3",key:"12hl5m"}]]),Y=j("panel-right-open",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}],["path",{d:"m10 15-3-3 3-3",key:"1pgupc"}]]),$=j("rows-2",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M3 12h18",key:"1i2n21"}]]),ee=_(),L=S(E(),1),l=S(V(),1);const z=(0,L.memo)(f=>{let e=(0,ee.c)(6),{output:a,cellId:i,status:r}=f,s;e[0]===r?s=e[1]:(s=F(r),e[0]=r,e[1]=s);let t=s,o;return e[2]!==i||e[3]!==t||e[4]!==a?(o=(0,l.jsx)(P,{className:"contents",allowExpand:!1,output:a,cellId:i,stale:t,loading:t}),e[2]=i,e[3]=t,e[4]=a,e[5]=o):o=e[5],o});z.displayName="Slide";var N=_();const te="slide",le="slide";var ae=36;const R=[{value:"slide",label:"Slide",description:"A new top-level slide. Advances horizontally with the right arrow.",Icon:M},{value:"sub-slide",label:"Sub-slide",description:"Stacks vertically under the previous slide. Reached with the down arrow.",Icon:$},{value:"fragment",label:"Fragment",description:"Reveals step-by-step on the current slide without advancing.",Icon:U},{value:"skip",label:"Skip",description:"Hidden from the presentation. Still visible here in the editor.",Icon:Q}],se=Object.fromEntries(R.map(f=>[f.value,f]));var q=[{value:"none",label:"None",description:"No animation between slides."},{value:"fade",label:"Fade",description:"Cross-fade between slides."},{value:"slide",label:"Slide",description:"Slides move horizontally / vertically."},{value:"convex",label:"Convex",description:"Rotate with a convex curve."},{value:"concave",label:"Concave",description:"Rotate with a concave curve."},{value:"zoom",label:"Zoom",description:"Zoom into the next slide."}],re=f=>{let e=(0,N.c)(11),{layout:a,setLayout:i,cellId:r}=f,s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,l.jsxs)(D,{className:"grid grid-cols-2",children:[(0,l.jsx)(C,{value:"slide",children:"Slide"}),(0,l.jsx)(C,{value:"deck",children:"Deck"})]}),e[0]=s):s=e[0];let t;e[1]!==r||e[2]!==a||e[3]!==i?(t=(0,l.jsx)(I,{value:"slide",className:"mt-0 flex-1",children:(0,l.jsx)(ie,{layout:a,setLayout:i,cellId:r})}),e[1]=r,e[2]=a,e[3]=i,e[4]=t):t=e[4];let o;e[5]!==a||e[6]!==i?(o=(0,l.jsx)(I,{value:"deck",className:"mt-0 flex-1",children:(0,l.jsx)(oe,{layout:a,setLayout:i})}),e[5]=a,e[6]=i,e[7]=o):o=e[7];let c;return e[8]!==t||e[9]!==o?(c=(0,l.jsxs)(A,{defaultValue:"slide",className:"flex flex-col flex-1 p-3 gap-3",children:[s,t,o]}),e[8]=t,e[9]=o,e[10]=c):c=e[10],c},ie=f=>{var v;let e=(0,N.c)(13),{layout:a,setLayout:i,cellId:r}=f,s=((v=a.cells.get(r))==null?void 0:v.type)??"slide",t;e[0]!==r||e[1]!==a||e[2]!==i?(t=u=>{let n=a.cells.get(r),x=new Map(a.cells);x.set(r,{...n,type:u}),i({...a,cells:x})},e[0]=r,e[1]=a,e[2]=i,e[3]=t):t=e[3];let o=t,c;e[4]===Symbol.for("react.memo_cache_sentinel")?(c=(0,l.jsx)("span",{className:"font-semibold text-sm",children:"Slide type"}),e[4]=c):c=e[4];let d;e[5]===o?d=e[6]:(d=u=>o(u),e[5]=o,e[6]=d);let m;e[7]===s?m=e[8]:(m=R.map(u=>{let{value:n,label:x,description:y,Icon:g}=u,p=s===n;return(0,l.jsx)(W,{value:n,className:w("group h-auto w-full text-left rounded-md p-2.5 transition-colors shadow-none! border","focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",p?"border-primary bg-primary/5":"border-border bg-background hover:bg-accent/50 hover:border-foreground/30"),children:(0,l.jsxs)("div",{className:"flex items-start gap-2.5",children:[(0,l.jsx)("span",{className:w("mt-0.5 flex h-6 w-6 shrink-0 items-center justify-center rounded",p?"bg-primary/10 text-primary":"bg-muted text-muted-foreground group-hover:text-foreground"),children:(0,l.jsx)(g,{className:"h-3.5 w-3.5"})}),(0,l.jsxs)("div",{children:[(0,l.jsx)("p",{className:w("text-sm font-medium leading-tight",p?"text-primary":"text-foreground"),children:x}),(0,l.jsx)("p",{className:"mt-0.5 text-xs text-foreground/70",children:y})]})]})},n)}),e[7]=s,e[8]=m);let h;return e[9]!==s||e[10]!==d||e[11]!==m?(h=(0,l.jsxs)("div",{className:"flex flex-col gap-3",children:[c,(0,l.jsx)(G,{"aria-label":"Slide type",value:s,onValueChange:d,className:"flex flex-col gap-1.5",children:m})]}),e[9]=s,e[10]=d,e[11]=m,e[12]=h):h=e[12],h},oe=f=>{var y,g;let e=(0,N.c)(18),{layout:a,setLayout:i}=f,r=((y=a.deck)==null?void 0:y.transition)??"slide",s;e[0]===r?s=e[1]:(s=(g=q.find(p=>p.value===r))==null?void 0:g.description,e[0]=r,e[1]=s);let t=s,o;e[2]!==a||e[3]!==i?(o=p=>{i({...a,deck:{...a.deck,transition:p}})},e[2]=a,e[3]=i,e[4]=o):o=e[4];let c=o,d;e[5]===Symbol.for("react.memo_cache_sentinel")?(d=(0,l.jsx)("label",{htmlFor:"deck-transition",className:"font-semibold text-sm text-foreground",children:"Transition"}),e[5]=d):d=e[5];let m;e[6]===c?m=e[7]:(m=p=>c(p),e[6]=c,e[7]=m);let h;e[8]===Symbol.for("react.memo_cache_sentinel")?(h=(0,l.jsx)(Z,{id:"deck-transition","aria-label":"Slide transition",children:(0,l.jsx)(H,{})}),e[8]=h):h=e[8];let v;e[9]===Symbol.for("react.memo_cache_sentinel")?(v=(0,l.jsx)(T,{children:q.map(de)}),e[9]=v):v=e[9];let u;e[10]!==r||e[11]!==m?(u=(0,l.jsxs)(B,{value:r,onValueChange:m,children:[h,v]}),e[10]=r,e[11]=m,e[12]=u):u=e[12];let n;e[13]===t?n=e[14]:(n=t&&(0,l.jsx)("p",{className:"text-xs text-foreground/70",children:t}),e[13]=t,e[14]=n);let x;return e[15]!==u||e[16]!==n?(x=(0,l.jsx)("div",{className:"flex flex-col gap-3",children:(0,l.jsxs)("div",{className:"flex flex-col gap-1.5",children:[d,u,n]})}),e[15]=u,e[16]=n,e[17]=x):x=e[17],x};const ne=f=>{let e=(0,N.c)(30),{configWidth:a,layout:i,setLayout:r,activeConfigCell:s}=f,[t,o]=(0,L.useState)(!1),c=t?a:ae,d;e[0]===c?d=e[1]:(d={width:c},e[0]=c,e[1]=d);let m=t?"justify-between px-2":"justify-center px-0",h;e[2]===m?h=e[3]:(h=w("flex items-center h-9 shrink-0 border-b border-border/60",m),e[2]=m,e[3]=h);let v;e[4]===t?v=e[5]:(v=t&&(0,l.jsx)("span",{className:"text-xs font-medium uppercase tracking-wide text-muted-foreground pl-1",children:"Configuration"}),e[4]=t,e[5]=v);let u=t?"Collapse panel":"Expand panel",n;e[6]===t?n=e[7]:(n=()=>o(!t),e[6]=t,e[7]=n);let x;e[8]===t?x=e[9]:(x=t?(0,l.jsx)(X,{className:"h-4 w-4"}):(0,l.jsx)(Y,{className:"h-4 w-4"}),e[8]=t,e[9]=x);let y;e[10]!==t||e[11]!==n||e[12]!==x?(y=(0,l.jsx)(K,{variant:"ghost",size:"icon",className:"h-7 w-7 text-muted-foreground hover:text-foreground",onClick:n,"aria-expanded":t,"aria-controls":"slide-config-panel",children:x}),e[10]=t,e[11]=n,e[12]=x,e[13]=y):y=e[13];let g;e[14]!==u||e[15]!==y?(g=(0,l.jsx)(J,{content:u,children:y}),e[14]=u,e[15]=y,e[16]=g):g=e[16];let p;e[17]!==g||e[18]!==h||e[19]!==v?(p=(0,l.jsxs)("header",{className:h,children:[v,g]}),e[17]=g,e[18]=h,e[19]=v,e[20]=p):p=e[20];let b;e[21]!==s||e[22]!==t||e[23]!==i||e[24]!==r?(b=t&&(0,l.jsx)("div",{id:"slide-config-panel",className:"flex-1 overflow-y-auto overflow-x-hidden",children:s?(0,l.jsx)(re,{layout:i,setLayout:r,cellId:s.id}):(0,l.jsxs)("div",{className:"flex flex-col gap-1.5 p-3 text-xs text-muted-foreground",children:[(0,l.jsx)("span",{className:"font-semibold text-sm text-foreground",children:"No slides yet"}),(0,l.jsx)("p",{children:"Run a cell that produces output to add it to the deck. Slide settings will appear here once a slide is selected."})]})}),e[21]=s,e[22]=t,e[23]=i,e[24]=r,e[25]=b):b=e[25];let k;return e[26]!==p||e[27]!==b||e[28]!==d?(k=(0,l.jsxs)("aside",{className:"h-full flex flex-col border-l border-border/60 bg-muted/20 transition-[width] duration-200 ease-out overflow-hidden",style:d,"aria-label":"Slide configuration",children:[p,b]}),e[26]=p,e[27]=b,e[28]=d,e[29]=k):k=e[29],k};function de(f){let{value:e,label:a}=f;return(0,l.jsx)(O,{value:e,children:a},e)}export{z as a,ne as i,te as n,M as o,se as r,le as t};
@@ -1 +1 @@
1
- import{s as I}from"./chunk-LvLJmgfZ.js";import"./useEvent-D91BmmQi.js";import{t as P}from"./react-Bj1aDYRI.js";import{E as q}from"./cells-CJlo_hG2.js";import"./react-dom-CSu739Rf.js";import{t as $}from"./compiler-runtime-B3qBwwSJ.js";import{n as D}from"./useEventListener-BR0C1MaI.js";import{n as F}from"./constants-DMpttj8Q.js";import{t as G}from"./cn-DCUzRj2J.js";import{t as R}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-BDxedMYP.js";import{t as T}from"./tooltip-Gcwqb_SK.js";import{t as w}from"./button-D9nb17Rw.js";import{at as W}from"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{r as A}from"./requests-DIwGYs0l.js";import{n as E,t as B}from"./LazyAnyLanguageCodeMirror-0gZO1asr.js";import{t as J}from"./x-C-6liIBr.js";import{t as K}from"./spinner-Bhir8k53.js";import{t as L}from"./plus-BgB18UzY.js";import"./dist-Ds4ite_2.js";import"./dist-CEysMnMQ.js";import"./dist-DGxytjtv.js";import"./dist-DZ2qbK2N.js";import"./dist-CRPTyqAT.js";import"./session-nmTRerwF.js";import{r as U}from"./useTheme-DEcgJENn.js";import"./purify.es-DC4RGS9t.js";import{t as V}from"./RenderHTML-BT9obKLc.js";import{a as X,c as Y,i as Q,n as Z,r as ee}from"./dialog-EekxpBBM.js";import{n as te}from"./ImperativeModal-BBqcKmmk.js";import{n as se}from"./error-banner-CTBwdcdk.js";import{n as re}from"./useAsyncData-dS4Ne6pU.js";import{a as le,o as oe,r as ie,t as ae,u as ne}from"./command-DbT_zkRP.js";import{o as me}from"./focus-BX3gXJxx.js";import{n as ce,r as de,t as M}from"./react-resizable-panels.browser.esm-Bcm5njwd.js";import{t as pe}from"./empty-state-CsVQSqKA.js";import{n as he,r as fe}from"./panel-context-B3J07LRC.js";import{t as H}from"./kiosk-mode-Dxbs5i5g.js";var O=$(),C=I(P(),1),s=I(R(),1),xe=D;const ue=t=>{let e=(0,O.c)(6),{children:r}=t,{openModal:i,closeModal:o}=te(),l;e[0]!==o||e[1]!==i?(l=()=>i((0,s.jsx)(je,{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)(xe,{onClick:l,children:r}),e[3]=r,e[4]=l,e[5]=a):a=e[5],a};var je=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)(X,{children:[i,(0,s.jsxs)(ee,{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)(Z,{className:"max-w-md",children:[o,(0,s.jsx)(Q,{children:(0,s.jsx)(w,{"data-testid":"snippet-close-button",variant:"default",onClick:r,children:"Close"})})]}),e[2]=r,e[3]=l),l},k=$(),be=[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",b;t[6]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsx)(le,{placeholder:"Search snippets...",className:"h-6 m-1",rootClassName:"flex-1 border-r"}),t[6]=b):b=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:[b,(0,s.jsx)(ue,{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 v;t[9]===Symbol.for("react.memo_cache_sentinel")?(v=m=>i(m),t[9]=v):v=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)(_e,{onSelect:v,snippets:N.snippets})]})}),t[10]=N.snippets,t[11]=d);let u=_?"h-1":"w-1",p;t[12]===u?p=t[13]:(p=G("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)(Ne,{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},Ne=t=>{let e=(0,k.c)(33),{snippet:r,onClose:i}=t,{theme:o}=U(),{createNewCell:l}=q(),a=me(),c;e[0]!==l||e[1]!==a||e[2]!==r.sections?(c=()=>{for(let n of r.sections.toReversed())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 b;e[9]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsx)(J,{className:"h-4 w-4"}),e[9]=b):b=e[9];let h;e[10]===i?h=e[11]:(h=(0,s.jsx)(w,{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]=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 v;e[15]===Symbol.for("react.memo_cache_sentinel")?(v=(0,s.jsx)(E,{className:"ml-2 h-4 w-4"}),e[15]=v):v=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)(w,{className:"float-right",size:"xs",variant:"outline",onClick:N,children:["Insert snippet",v]})})}),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:y}=S;return z?(0,s.jsx)("div",{children:V({html:z})},`${r.title}-${y}`):m?(0,s.jsxs)("div",{className:"relative hover-actions-parent pr-2",children:[(0,s.jsx)(H,{children:(0,s.jsx)(T,{content:"Insert snippet",children:(0,s.jsx)(w,{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:be,value:m,readOnly:!0},`${r.title}-${y}`)})]},`${r.title}-${y}`):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},_e=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-D91BmmQi.js";import{t as P}from"./react-Bj1aDYRI.js";import{E as q}from"./cells-A-ljPpuj.js";import"./react-dom-CSu739Rf.js";import{t as $}from"./compiler-runtime-B3qBwwSJ.js";import{n as D}from"./useEventListener-BR0C1MaI.js";import{n as F}from"./constants-DMpttj8Q.js";import{t as G}from"./cn-DCUzRj2J.js";import{t as R}from"./jsx-runtime-BqBOg78p.js";import"./fullscreen-BDxedMYP.js";import{t as T}from"./tooltip-Gcwqb_SK.js";import{t as w}from"./button-D9nb17Rw.js";import{at as W}from"./dist-BrR4M-k3.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{r as A}from"./requests-DIwGYs0l.js";import{n as E,t as B}from"./LazyAnyLanguageCodeMirror-0gZO1asr.js";import{t as J}from"./x-C-6liIBr.js";import{t as K}from"./spinner-Bhir8k53.js";import{t as L}from"./plus-BgB18UzY.js";import"./dist-Ds4ite_2.js";import"./dist-CEysMnMQ.js";import"./dist-DGxytjtv.js";import"./dist-DZ2qbK2N.js";import"./dist-CRPTyqAT.js";import"./session-nmTRerwF.js";import{r as U}from"./useTheme-DEcgJENn.js";import"./purify.es-DC4RGS9t.js";import{t as V}from"./RenderHTML-DR6lqJGS.js";import{a as X,c as Y,i as Q,n as Z,r as ee}from"./dialog-EekxpBBM.js";import{n as te}from"./ImperativeModal-BBqcKmmk.js";import{n as se}from"./error-banner-CTBwdcdk.js";import{n as re}from"./useAsyncData-dS4Ne6pU.js";import{a as le,d as oe,o as ie,r as ae,t as ne}from"./command-CzIDL1VI.js";import{o as me}from"./focus-Baz7rlo0.js";import{n as ce,r as de,t as M}from"./react-resizable-panels.browser.esm-Bcm5njwd.js";import{t as pe}from"./empty-state-CsVQSqKA.js";import{n as he,r as fe}from"./panel-context-B3J07LRC.js";import{t as H}from"./kiosk-mode-cWTXpegb.js";var O=$(),C=I(P(),1),s=I(R(),1),xe=D;const ue=t=>{let e=(0,O.c)(6),{children:r}=t,{openModal:i,closeModal:o}=te(),l;e[0]!==o||e[1]!==i?(l=()=>i((0,s.jsx)(je,{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)(xe,{onClick:l,children:r}),e[3]=r,e[4]=l,e[5]=a):a=e[5],a};var je=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)(X,{children:[i,(0,s.jsxs)(ee,{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)(Z,{className:"max-w-md",children:[o,(0,s.jsx)(Q,{children:(0,s.jsx)(w,{"data-testid":"snippet-close-button",variant:"default",onClick:r,children:"Close"})})]}),e[2]=r,e[3]=l),l},k=$(),be=[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",b;t[6]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsx)(le,{placeholder:"Search snippets...",className:"h-6 m-1",rootClassName:"flex-1 border-r"}),t[6]=b):b=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:[b,(0,s.jsx)(ue,{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)(ae,{children:"No results"}),t[7]=h,t[8]=f):(h=t[7],f=t[8]);let v;t[9]===Symbol.for("react.memo_cache_sentinel")?(v=m=>i(m),t[9]=v):v=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)(ne,{className:"h-full rounded-none",children:[h,f,(0,s.jsx)(_e,{onSelect:v,snippets:N.snippets})]})}),t[10]=N.snippets,t[11]=d);let u=_?"h-1":"w-1",p;t[12]===u?p=t[13]:(p=G("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)(Ne,{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},Ne=t=>{let e=(0,k.c)(33),{snippet:r,onClose:i}=t,{theme:o}=U(),{createNewCell:l}=q(),a=me(),c;e[0]!==l||e[1]!==a||e[2]!==r.sections?(c=()=>{for(let n of r.sections.toReversed())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 b;e[9]===Symbol.for("react.memo_cache_sentinel")?(b=(0,s.jsx)(J,{className:"h-4 w-4"}),e[9]=b):b=e[9];let h;e[10]===i?h=e[11]:(h=(0,s.jsx)(w,{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]=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 v;e[15]===Symbol.for("react.memo_cache_sentinel")?(v=(0,s.jsx)(E,{className:"ml-2 h-4 w-4"}),e[15]=v):v=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)(w,{className:"float-right",size:"xs",variant:"outline",onClick:N,children:["Insert snippet",v]})})}),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:y}=S;return z?(0,s.jsx)("div",{children:V({html:z})},`${r.title}-${y}`):m?(0,s.jsxs)("div",{className:"relative hover-actions-parent pr-2",children:[(0,s.jsx)(H,{children:(0,s.jsx)(T,{content:"Insert snippet",children:(0,s.jsx)(w,{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:be,value:m,readOnly:!0},`${r.title}-${y}`)})]},`${r.title}-${y}`):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},_e=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)(ie,{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)(oe,{className:"flex flex-col overflow-auto",children:o}),e[5]=o,e[6]=l),l};export{ve as default};
@@ -1 +1 @@
1
- import{p as r}from"./useEvent-D91BmmQi.js";import{Mn as o,Nn as h,vi as n}from"./cells-CJlo_hG2.js";import{f as m}from"./arrays-DYDL-3-i.js";var v="marimo:ai:chatState:v5";const d=r(null),f=n("marimo:ai:includeOtherCells",!0,h);function u(t){let a=new Map;for(let[s,e]of t.entries()){if(e.messages.length===0)continue;let c=m(e.messages,l=>l.id);a.set(s,{...e,messages:c})}return a}const i=n(v,{chats:new Map,activeChatId:null},o({toSerializable:t=>({chats:[...u(t.chats).entries()],activeChatId:t.activeChatId}),fromSerializable:t=>({chats:new Map(t.chats),activeChatId:t.activeChatId})})),C=r(t=>{let a=t(i);return a.activeChatId?a.chats.get(a.activeChatId):null},(t,a,s)=>{a(i,e=>({...e,activeChatId:s}))});export{f as i,d as n,i as r,C as t};
1
+ import{p as r}from"./useEvent-D91BmmQi.js";import{Mn as o,Nn as h,yi as n}from"./cells-A-ljPpuj.js";import{f as m}from"./arrays-DYDL-3-i.js";var d="marimo:ai:chatState:v5";const v=r(null),f=n("marimo:ai:includeOtherCells",!0,h);function u(t){let a=new Map;for(let[s,e]of t.entries()){if(e.messages.length===0)continue;let c=m(e.messages,l=>l.id);a.set(s,{...e,messages:c})}return a}const i=n(d,{chats:new Map,activeChatId:null},o({toSerializable:t=>({chats:[...u(t.chats).entries()],activeChatId:t.activeChatId}),fromSerializable:t=>({chats:new Map(t.chats),activeChatId:t.activeChatId})})),C=r(t=>{let a=t(i);return a.activeChatId?a.chats.get(a.activeChatId):null},(t,a,s)=>{a(i,e=>({...e,activeChatId:s}))});export{f as i,v as n,i as r,C as t};
@@ -1,3 +1,3 @@
1
- var zt=Object.defineProperty;var Oe=f=>{throw TypeError(f)};var Vt=(f,h,y)=>h in f?zt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:y}):f[h]=y;var n=(f,h,y)=>Vt(f,typeof h!="symbol"?h+"":h,y),ue=(f,h,y)=>h.has(f)||Oe("Cannot "+y);var o=(f,h,y)=>(ue(f,h,"read from private field"),y?y.call(f):h.get(f)),_=(f,h,y)=>h.has(f)?Oe("Cannot add the same private member more than once"):h instanceof WeakSet?h.add(f):h.set(f,y),C=(f,h,y,Q)=>(ue(f,h,"write to private field"),Q?Q.call(f,y):h.set(f,y),y),A=(f,h,y)=>(ue(f,h,"access private method"),y);import{i as z,p as de,u as Qt}from"./useEvent-D91BmmQi.js";import{Ci as G,Si as Yt,_i as Gt,b as Jt,fi as Kt,it as He,jn as Xt,li as Zt,mi as er,x as tr,__tla as rr}from"./cells-CJlo_hG2.js";import{t as sr}from"./get-C-qh_et5.js";import{t as nr}from"./debounce-DhnxH9Rh.js";import{t as ar}from"./_baseSet-CxV9N1bc.js";import{_ as p,y as g}from"./useEventListener-BR0C1MaI.js";import{t as ir}from"./invariant-BUdrueMv.js";import{S as or}from"./utils-DIGrmLDO.js";import{S as lr,n as ur}from"./config-ChCHm539.js";import{n as dr}from"./switch-DlgpDZMk.js";import{n as $e}from"./globals-xVhZei_S.js";import{ot as ce,st as ze,__tla as cr}from"./JsonOutput-DXnOS_Hk.js";import{t as pr}from"./createReducer-1ePoj7v6.js";import{r as fr}from"./strings-md4mFbOQ.js";import{t as pe}from"./requests-DIwGYs0l.js";import{a as Ve,l as hr,r as Qe,__tla as mr}from"./markdown-renderer-CeHY2KoQ.js";import{t as gr}from"./DeferredRequestRegistry-DjHgMr3S.js";import{t as yr}from"./preload-helper-D2MJg03u.js";import{t as Ye}from"./Deferred-DxQeE5uh.js";import{t as Ge}from"./uuid-DXdzqzcr.js";import{t as wr}from"./use-toast-BDYuj3zG.js";import{n as br}from"./RenderHTML-BT9obKLc.js";import{t as vr}from"./useRunCells-B531RIUE.js";import{n as _r,r as Cr,t as Rr}from"./share-BXN2Sd1t.js";import{t as xr}from"./blob-CTort_or.js";import{i as Je,r as qr,t as Er}from"./events-Qeh-bHlj.js";let J,Ke,Xe,fe,Ze,et,he,tt,V,rt,st,me,ge,nt,at,it,ot,ne,lt,ut,ye,dt,we,Sr=Promise.all([(()=>{try{return rr}catch{}})(),(()=>{try{return cr}catch{}})(),(()=>{try{return mr}catch{}})()]).then(async()=>{var U,ee,pt,Le,M,j,S,Ne,P,Ae,F,Y,D,ae,Ue,je,te,I,L,O,R,W,N,ft,ht,mt,re;function f(t,e,r){return t==null?t:ar(t,e,r)}J=f,Ze=de(null);var{valueAtom:h,useActions:y}=pr(()=>({banners:[]}),{addBanner:(t,e)=>({...t,banners:[...t.banners,{...e,id:Ge()}]}),removeBanner:(t,e)=>({...t,banners:t.banners.filter(r=>r.id!==e)}),clearBanners:t=>({...t,banners:[]})});dt=()=>Qt(h),Ke=function(){return y()};let Q,ve,_e;Q=class{constructor(){n(this,"subscriptions",new Map)}addSubscription(t,e){var r;this.subscriptions.has(t)||this.subscriptions.set(t,new Set),(r=this.subscriptions.get(t))==null||r.add(e)}removeSubscription(t,e){var r;(r=this.subscriptions.get(t))==null||r.delete(e)}notify(t,e){for(let r of this.subscriptions.get(t)??[])r(e)}},we=class be{constructor(e){n(this,"subscriptions",new Q);this.producer=e}static withProducerCallback(e){return new be(e)}static empty(){return new be}startProducer(){this.producer&&this.producer(e=>{this.subscriptions.notify("message",e)})}connect(){return new Promise(e=>setTimeout(e,0)).then(()=>{this.subscriptions.notify("open",new Event("open"))})}get readyState(){return WebSocket.OPEN}reconnect(e,r){this.close(),this.connect()}close(){this.subscriptions.notify("close",new Event("close"))}send(e){return this.subscriptions.notify("message",new MessageEvent("message",{data:e})),Promise.resolve()}addEventListener(e,r){this.subscriptions.addSubscription(e,r),e==="open"&&r(new Event("open")),e==="message"&&this.startProducer()}removeEventListener(e,r){this.subscriptions.removeSubscription(e,r)}},ve=1e10,_e=1e3;function K(t,e){let r=t.map(s=>`"${s}"`).join(", ");return Error(`This RPC instance cannot ${e} because the transport did not provide one or more of these methods: ${r}`)}function yt(t={}){let e={};function r(l){e=l}let s={};function a(l){var c;s.unregisterHandler&&s.unregisterHandler(),s=l,(c=s.registerHandler)==null||c.call(s,$t)}let i;function u(l){if(typeof l=="function"){i=l;return}i=(c,w)=>{let m=l[c];if(m)return m(w);let b=l._;if(!b)throw Error(`The requested method has no handler: ${c}`);return b(c,w)}}let{maxRequestTime:d=_e}=t;t.transport&&a(t.transport),t.requestHandler&&u(t.requestHandler),t._debugHooks&&r(t._debugHooks);let v=0;function x(){return v<=ve?++v:v=0}let q=new Map,E=new Map;function H(l,...c){let w=c[0];return new Promise((m,b)=>{var $;if(!s.send)throw K(["send"],"make requests");let k=x(),B={type:"request",id:k,method:l,params:w};q.set(k,{resolve:m,reject:b}),d!==1/0&&E.set(k,setTimeout(()=>{E.delete(k),b(Error("RPC request timed out."))},d)),($=e.onSend)==null||$.call(e,B),s.send(B)})}let se=new Proxy(H,{get:(l,c,w)=>c in l?Reflect.get(l,c,w):m=>H(c,m)}),We=se;function Te(l,...c){var b;let w=c[0];if(!s.send)throw K(["send"],"send messages");let m={type:"message",id:l,payload:w};(b=e.onSend)==null||b.call(e,m),s.send(m)}let Be=new Proxy(Te,{get:(l,c,w)=>c in l?Reflect.get(l,c,w):m=>Te(c,m)}),De=Be,T=new Map,le=new Set;function Ot(l,c){var w;if(!s.registerHandler)throw K(["registerHandler"],"register message listeners");if(l==="*"){le.add(c);return}T.has(l)||T.set(l,new Set),(w=T.get(l))==null||w.add(c)}function Ht(l,c){var w,m;if(l==="*"){le.delete(c);return}(w=T.get(l))==null||w.delete(c),((m=T.get(l))==null?void 0:m.size)===0&&T.delete(l)}async function $t(l){var c,w;if((c=e.onReceive)==null||c.call(e,l),!("type"in l))throw Error("Message does not contain a type.");if(l.type==="request"){if(!s.send||!i)throw K(["send","requestHandler"],"handle requests");let{id:m,method:b,params:k}=l,B;try{B={type:"response",id:m,success:!0,payload:await i(b,k)}}catch($){if(!($ instanceof Error))throw $;B={type:"response",id:m,success:!1,error:$.message}}(w=e.onSend)==null||w.call(e,B),s.send(B);return}if(l.type==="response"){let m=E.get(l.id);m!=null&&clearTimeout(m);let{resolve:b,reject:k}=q.get(l.id)??{};l.success?b==null||b(l.payload):k==null||k(Error(l.error));return}if(l.type==="message"){for(let b of le)b(l.id,l.payload);let m=T.get(l.id);if(!m)return;for(let b of m)b(l.payload);return}throw Error(`Unexpected RPC message type: ${l.type}`)}return{setTransport:a,setRequestHandler:u,request:se,requestProxy:We,send:Be,sendProxy:De,addMessageListener:Ot,removeMessageListener:Ht,proxy:{send:De,request:We},_setDebugHooks:r}}function wt(t){return yt(t)}var Ce="[transport-id]";function bt(t,e){let{transportId:r}=e;return r==null?t:{[Ce]:r,data:t}}function vt(t,e){let{transportId:r,filter:s}=e,a=s==null?void 0:s();if(r!=null&&a!=null)throw Error("Cannot use both `transportId` and `filter` at the same time");let i=t;if(r){if(t[Ce]!==r)return[!0];i=t.data}return a===!1?[!0]:[!1,i]}function _t(t,e={}){let{transportId:r,filter:s,remotePort:a}=e,i=t,u=a??t,d;return{send(v){u.postMessage(bt(v,{transportId:r}))},registerHandler(v){d=x=>{let q=x.data,[E,H]=vt(q,{transportId:r,filter:()=>s==null?void 0:s(x)});E||v(H)},i.addEventListener("message",d)},unregisterHandler(){d&&i.removeEventListener("message",d)}}}function Ct(t,e){return _t(t,e)}function Re(t){return wt({transport:Ct(t,{transportId:"marimo-transport"}),maxRequestTime:2e4,_debugHooks:{onSend:e=>{p.debug("[rpc] Parent -> Worker",e)},onReceive:e=>{p.debug("[rpc] Worker -> Parent",e)}}})}ye=de("Initializing..."),Xe=de(t=>{let e=t(Jt),r=Object.values(e.cellRuntime);return r.some(s=>!hr(s.output))?!0:r.every(s=>s.status==="idle")});var xe=_r(),qe="marimo:file",Ee=new Zt(null);const Rt={saveFile(t){Ee.set(qe,t)},readFile(){return Ee.get(qe)}};var xt={saveFile(t){G.setCodeForHash((0,xe.compressToEncodedURIComponent)(t))},readFile(){let t=G.getCodeFromHash()||G.getCodeFromSearchParam();return t?(0,xe.decompressFromEncodedURIComponent)(t):null}};const qt={saveFile(t){},readFile(){let t=document.querySelector("marimo-code");return t?decodeURIComponent(t.textContent||"").trim():null}};var Et={saveFile(t){},readFile(){if(window.location.hostname!=="marimo.app")return null;let t=new URL("files/wasm-intro.py",document.baseURI);return fetch(t.toString()).then(e=>e.ok?e.text():null).catch(()=>null)}};const St={saveFile(t){},readFile(){return z.get(Kt)??null}};var kt={saveFile(t){},readFile(){return["import marimo","app = marimo.App()","","@app.cell","def __():"," return","",'if __name__ == "__main__":'," app.run()"].join(`
1
+ var zt=Object.defineProperty;var Oe=f=>{throw TypeError(f)};var Vt=(f,h,y)=>h in f?zt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:y}):f[h]=y;var n=(f,h,y)=>Vt(f,typeof h!="symbol"?h+"":h,y),ue=(f,h,y)=>h.has(f)||Oe("Cannot "+y);var o=(f,h,y)=>(ue(f,h,"read from private field"),y?y.call(f):h.get(f)),_=(f,h,y)=>h.has(f)?Oe("Cannot add the same private member more than once"):h instanceof WeakSet?h.add(f):h.set(f,y),C=(f,h,y,Q)=>(ue(f,h,"write to private field"),Q?Q.call(f,y):h.set(f,y),y),A=(f,h,y)=>(ue(f,h,"access private method"),y);import{i as z,p as de,u as Qt}from"./useEvent-D91BmmQi.js";import{Ci as Yt,b as Gt,hi as Jt,it as He,jn as Kt,pi as Xt,ui as Zt,vi as er,wi as G,x as tr,__tla as rr}from"./cells-A-ljPpuj.js";import{t as sr}from"./get-C-qh_et5.js";import{t as nr}from"./debounce-DhnxH9Rh.js";import{t as ar}from"./_baseSet-CxV9N1bc.js";import{_ as p,y as g}from"./useEventListener-BR0C1MaI.js";import{t as ir}from"./invariant-BUdrueMv.js";import{S as or}from"./utils-DIGrmLDO.js";import{S as lr,n as ur}from"./config-ChCHm539.js";import{n as dr}from"./switch-DlgpDZMk.js";import{n as $e}from"./globals-xVhZei_S.js";import{ct as ce,lt as ze,__tla as cr}from"./JsonOutput-BVAcY5xS.js";import{t as pr}from"./createReducer-1ePoj7v6.js";import{r as fr}from"./strings-md4mFbOQ.js";import{t as pe}from"./requests-DIwGYs0l.js";import{a as Ve,l as hr,r as Qe,__tla as mr}from"./markdown-renderer-CFrgiLqu.js";import{t as gr}from"./DeferredRequestRegistry-DjHgMr3S.js";import{t as yr}from"./preload-helper-D2MJg03u.js";import{t as Ye}from"./Deferred-DxQeE5uh.js";import{t as Ge}from"./uuid-DXdzqzcr.js";import{t as wr}from"./use-toast-BDYuj3zG.js";import{n as br}from"./RenderHTML-DR6lqJGS.js";import{t as vr}from"./useRunCells-DU1tawR-.js";import{n as _r,r as Cr,t as Rr}from"./share-BXN2Sd1t.js";import{t as xr}from"./blob-CTort_or.js";import{i as Je,r as qr,t as Er}from"./events-Qeh-bHlj.js";let J,Ke,Xe,fe,Ze,et,he,tt,V,rt,st,me,ge,nt,at,it,ot,ne,lt,ut,ye,dt,we,Sr=Promise.all([(()=>{try{return rr}catch{}})(),(()=>{try{return cr}catch{}})(),(()=>{try{return mr}catch{}})()]).then(async()=>{var U,ee,pt,Le,M,j,S,Ne,P,Ae,F,Y,D,ae,Ue,je,te,I,L,O,R,W,N,ft,ht,mt,re;function f(t,e,r){return t==null?t:ar(t,e,r)}J=f,Ze=de(null);var{valueAtom:h,useActions:y}=pr(()=>({banners:[]}),{addBanner:(t,e)=>({...t,banners:[...t.banners,{...e,id:Ge()}]}),removeBanner:(t,e)=>({...t,banners:t.banners.filter(r=>r.id!==e)}),clearBanners:t=>({...t,banners:[]})});dt=()=>Qt(h),Ke=function(){return y()};let Q,ve,_e;Q=class{constructor(){n(this,"subscriptions",new Map)}addSubscription(t,e){var r;this.subscriptions.has(t)||this.subscriptions.set(t,new Set),(r=this.subscriptions.get(t))==null||r.add(e)}removeSubscription(t,e){var r;(r=this.subscriptions.get(t))==null||r.delete(e)}notify(t,e){for(let r of this.subscriptions.get(t)??[])r(e)}},we=class be{constructor(e){n(this,"subscriptions",new Q);this.producer=e}static withProducerCallback(e){return new be(e)}static empty(){return new be}startProducer(){this.producer&&this.producer(e=>{this.subscriptions.notify("message",e)})}connect(){return new Promise(e=>setTimeout(e,0)).then(()=>{this.subscriptions.notify("open",new Event("open"))})}get readyState(){return WebSocket.OPEN}reconnect(e,r){this.close(),this.connect()}close(){this.subscriptions.notify("close",new Event("close"))}send(e){return this.subscriptions.notify("message",new MessageEvent("message",{data:e})),Promise.resolve()}addEventListener(e,r){this.subscriptions.addSubscription(e,r),e==="open"&&r(new Event("open")),e==="message"&&this.startProducer()}removeEventListener(e,r){this.subscriptions.removeSubscription(e,r)}},ve=1e10,_e=1e3;function K(t,e){let r=t.map(s=>`"${s}"`).join(", ");return Error(`This RPC instance cannot ${e} because the transport did not provide one or more of these methods: ${r}`)}function yt(t={}){let e={};function r(l){e=l}let s={};function a(l){var c;s.unregisterHandler&&s.unregisterHandler(),s=l,(c=s.registerHandler)==null||c.call(s,$t)}let i;function u(l){if(typeof l=="function"){i=l;return}i=(c,w)=>{let m=l[c];if(m)return m(w);let b=l._;if(!b)throw Error(`The requested method has no handler: ${c}`);return b(c,w)}}let{maxRequestTime:d=_e}=t;t.transport&&a(t.transport),t.requestHandler&&u(t.requestHandler),t._debugHooks&&r(t._debugHooks);let v=0;function x(){return v<=ve?++v:v=0}let q=new Map,E=new Map;function H(l,...c){let w=c[0];return new Promise((m,b)=>{var $;if(!s.send)throw K(["send"],"make requests");let k=x(),B={type:"request",id:k,method:l,params:w};q.set(k,{resolve:m,reject:b}),d!==1/0&&E.set(k,setTimeout(()=>{E.delete(k),b(Error("RPC request timed out."))},d)),($=e.onSend)==null||$.call(e,B),s.send(B)})}let se=new Proxy(H,{get:(l,c,w)=>c in l?Reflect.get(l,c,w):m=>H(c,m)}),We=se;function Te(l,...c){var b;let w=c[0];if(!s.send)throw K(["send"],"send messages");let m={type:"message",id:l,payload:w};(b=e.onSend)==null||b.call(e,m),s.send(m)}let Be=new Proxy(Te,{get:(l,c,w)=>c in l?Reflect.get(l,c,w):m=>Te(c,m)}),De=Be,T=new Map,le=new Set;function Ot(l,c){var w;if(!s.registerHandler)throw K(["registerHandler"],"register message listeners");if(l==="*"){le.add(c);return}T.has(l)||T.set(l,new Set),(w=T.get(l))==null||w.add(c)}function Ht(l,c){var w,m;if(l==="*"){le.delete(c);return}(w=T.get(l))==null||w.delete(c),((m=T.get(l))==null?void 0:m.size)===0&&T.delete(l)}async function $t(l){var c,w;if((c=e.onReceive)==null||c.call(e,l),!("type"in l))throw Error("Message does not contain a type.");if(l.type==="request"){if(!s.send||!i)throw K(["send","requestHandler"],"handle requests");let{id:m,method:b,params:k}=l,B;try{B={type:"response",id:m,success:!0,payload:await i(b,k)}}catch($){if(!($ instanceof Error))throw $;B={type:"response",id:m,success:!1,error:$.message}}(w=e.onSend)==null||w.call(e,B),s.send(B);return}if(l.type==="response"){let m=E.get(l.id);m!=null&&clearTimeout(m);let{resolve:b,reject:k}=q.get(l.id)??{};l.success?b==null||b(l.payload):k==null||k(Error(l.error));return}if(l.type==="message"){for(let b of le)b(l.id,l.payload);let m=T.get(l.id);if(!m)return;for(let b of m)b(l.payload);return}throw Error(`Unexpected RPC message type: ${l.type}`)}return{setTransport:a,setRequestHandler:u,request:se,requestProxy:We,send:Be,sendProxy:De,addMessageListener:Ot,removeMessageListener:Ht,proxy:{send:De,request:We},_setDebugHooks:r}}function wt(t){return yt(t)}var Ce="[transport-id]";function bt(t,e){let{transportId:r}=e;return r==null?t:{[Ce]:r,data:t}}function vt(t,e){let{transportId:r,filter:s}=e,a=s==null?void 0:s();if(r!=null&&a!=null)throw Error("Cannot use both `transportId` and `filter` at the same time");let i=t;if(r){if(t[Ce]!==r)return[!0];i=t.data}return a===!1?[!0]:[!1,i]}function _t(t,e={}){let{transportId:r,filter:s,remotePort:a}=e,i=t,u=a??t,d;return{send(v){u.postMessage(bt(v,{transportId:r}))},registerHandler(v){d=x=>{let q=x.data,[E,H]=vt(q,{transportId:r,filter:()=>s==null?void 0:s(x)});E||v(H)},i.addEventListener("message",d)},unregisterHandler(){d&&i.removeEventListener("message",d)}}}function Ct(t,e){return _t(t,e)}function Re(t){return wt({transport:Ct(t,{transportId:"marimo-transport"}),maxRequestTime:2e4,_debugHooks:{onSend:e=>{p.debug("[rpc] Parent -> Worker",e)},onReceive:e=>{p.debug("[rpc] Worker -> Parent",e)}}})}ye=de("Initializing..."),Xe=de(t=>{let e=t(Gt),r=Object.values(e.cellRuntime);return r.some(s=>!hr(s.output))?!0:r.every(s=>s.status==="idle")});var xe=_r(),qe="marimo:file",Ee=new Zt(null);const Rt={saveFile(t){Ee.set(qe,t)},readFile(){return Ee.get(qe)}};var xt={saveFile(t){G.setCodeForHash((0,xe.compressToEncodedURIComponent)(t))},readFile(){let t=G.getCodeFromHash()||G.getCodeFromSearchParam();return t?(0,xe.decompressFromEncodedURIComponent)(t):null}};const qt={saveFile(t){},readFile(){let t=document.querySelector("marimo-code");return t?decodeURIComponent(t.textContent||"").trim():null}};var Et={saveFile(t){},readFile(){if(window.location.hostname!=="marimo.app")return null;let t=new URL("files/wasm-intro.py",document.baseURI);return fetch(t.toString()).then(e=>e.ok?e.text():null).catch(()=>null)}};const St={saveFile(t){},readFile(){return z.get(Xt)??null}};var kt={saveFile(t){},readFile(){return["import marimo","app = marimo.App()","","@app.cell","def __():"," return","",'if __name__ == "__main__":'," app.run()"].join(`
2
2
  `)}},Se=class{constructor(t){this.stores=t}insert(t,e){this.stores.splice(t,0,e)}saveFile(t){this.stores.forEach(e=>e.saveFile(t))}readFile(){for(let t of this.stores){let e=t.readFile();if(e)return e}return null}};let X;V=new Se([St,qt,xt]),X=new Se([Rt,Et,kt]),ge=class ct{constructor(){n(this,"initialized",new Ye);n(this,"sendRename",async({filename:e})=>(e===null||(G.setFilename(e),await this.rpc.proxy.request.bridge({functionName:"rename_file",payload:e})),null));n(this,"sendSave",async e=>{if(!this.saveRpc)return p.warn("Save RPC not initialized"),null;await this.saveRpc.saveNotebook(e);let r=await this.readCode();return r.contents&&(V.saveFile(r.contents),X.saveFile(r.contents)),this.rpc.proxy.request.saveNotebook(e).catch(s=>{p.error(s)}),null});n(this,"sendCopy",async()=>{g()});n(this,"sendStdin",async e=>(await this.rpc.proxy.request.bridge({functionName:"put_input",payload:e.text}),null));n(this,"sendPdb",async()=>{g()});n(this,"sendRun",async e=>(await this.rpc.proxy.request.loadPackages(e.codes.join(`
3
- `)),await this.putControlRequest({type:"execute-cells",...e}),null));n(this,"sendRunScratchpad",async e=>(await this.rpc.proxy.request.loadPackages(e.code),await this.putControlRequest({type:"execute-scratchpad",...e}),null));n(this,"sendInterrupt",async()=>(this.interruptBuffer!==void 0&&(this.interruptBuffer[0]=2),null));n(this,"sendShutdown",async()=>(window.close(),null));n(this,"sendFormat",async e=>await this.rpc.proxy.request.bridge({functionName:"format",payload:e}));n(this,"sendDeleteCell",async e=>(await this.putControlRequest({type:"delete-cell",...e}),null));n(this,"sendInstallMissingPackages",async e=>(this.putControlRequest({type:"install-packages",...e}),null));n(this,"sendCodeCompletionRequest",async e=>(z.get(tr)||await this.rpc.proxy.request.bridge({functionName:"code_complete",payload:e}),null));n(this,"saveUserConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_user_config",payload:e}),dr.post("/kernel/save_user_config",e,{baseUrl:"/"}).catch(r=>(p.error(r),null))));n(this,"saveAppConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_app_config",payload:e}),null));n(this,"saveCellConfig",async e=>(await this.putControlRequest({type:"update-cell-config",...e}),null));n(this,"sendRestart",async()=>{let e=await this.readCode();return e.contents&&(V.saveFile(e.contents),X.saveFile(e.contents)),Cr(),null});n(this,"readCode",async()=>this.saveRpc?{contents:await this.saveRpc.readNotebook()}:(p.warn("Save RPC not initialized"),{contents:""}));n(this,"readSnippets",async()=>await this.rpc.proxy.request.bridge({functionName:"read_snippets",payload:void 0}));n(this,"openFile",async({path:e})=>{let r=Rr({code:null,baseUrl:window.location.origin});return window.open(r,"_blank"),null});n(this,"sendListFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"list_files",payload:e}));n(this,"sendSearchFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"search_files",payload:e}));n(this,"sendComponentValues",async e=>(await this.putControlRequest({type:"update-ui-element",...e,token:Ge()}),null));n(this,"sendInstantiate",async e=>null);n(this,"sendFunctionRequest",async e=>(await this.putControlRequest({type:"invoke-function",...e}),null));n(this,"sendCreateFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"create_file_or_directory",payload:e}));n(this,"sendDeleteFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"delete_file_or_directory",payload:e}));n(this,"sendCopyFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"copy_file_or_directory",payload:e}));n(this,"sendRenameFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"move_file_or_directory",payload:e}));n(this,"sendUpdateFile",async e=>await this.rpc.proxy.request.bridge({functionName:"update_file",payload:e}));n(this,"sendFileDetails",async e=>await this.rpc.proxy.request.bridge({functionName:"file_details",payload:e}));n(this,"exportAsHTML",async e=>await this.rpc.proxy.request.bridge({functionName:"export_html",payload:e}));n(this,"exportAsMarkdown",async e=>await this.rpc.proxy.request.bridge({functionName:"export_markdown",payload:e}));n(this,"previewDatasetColumn",async e=>(await this.putControlRequest({type:"preview-dataset-column",...e}),null));n(this,"previewSQLTable",async e=>(await this.putControlRequest({type:"preview-sql-table",...e}),null));n(this,"previewSQLTableList",async e=>(await this.putControlRequest({type:"list-sql-tables",...e}),null));n(this,"previewSQLSchemaList",async e=>(await this.putControlRequest({type:"list-sql-schemas",...e}),null));n(this,"previewDataSourceConnection",async e=>(await this.putControlRequest({type:"list-data-source-connection",...e}),null));n(this,"validateSQL",async e=>(await this.putControlRequest({type:"validate-sql",...e}),null));n(this,"sendModelValue",async e=>(await this.putControlRequest({type:"model",...e}),null));n(this,"sendDocumentTransaction",()=>Promise.resolve(null));n(this,"addPackage",async e=>this.rpc.proxy.request.addPackage(e));n(this,"removePackage",async e=>this.rpc.proxy.request.removePackage(e));n(this,"getPackageList",async()=>await this.rpc.proxy.request.listPackages());n(this,"getDependencyTree",async()=>({tree:{dependencies:[],name:"",tags:[],version:null}}));n(this,"listSecretKeys",async e=>(await this.putControlRequest({type:"list-secret-keys",...e}),null));n(this,"getUsageStats",g);n(this,"openTutorial",g);n(this,"getRecentFiles",g);n(this,"getWorkspaceFiles",g);n(this,"getRunningNotebooks",g);n(this,"shutdownSession",g);n(this,"exportAsIPYNB",g);n(this,"exportAsPDF",g);n(this,"autoExportAsHTML",g);n(this,"autoExportAsMarkdown",g);n(this,"autoExportAsIPYNB",g);n(this,"updateCellOutputs",g);n(this,"writeSecret",g);n(this,"invokeAiTool",g);n(this,"clearCache",g);n(this,"getCacheInfo",g);n(this,"listStorageEntries",g);n(this,"downloadStorage",g);lr()&&(this.rpc=Re(new Worker(new URL(""+new URL("worker-ztl1wuLb.js",import.meta.url).href,""+import.meta.url),{type:"module",name:$e()})),this.rpc.addMessageListener("ready",()=>{this.startSession()}),this.rpc.addMessageListener("initialized",()=>{this.saveRpc=this.getSaveWorker(),this.setInterruptBuffer(),this.initialized.resolve()}),this.rpc.addMessageListener("initializingMessage",({message:e})=>{z.set(ye,e)}),this.rpc.addMessageListener("initializedError",({error:e})=>{this.initialized.status==="resolved"&&(p.error(e),wr({title:"Error initializing",description:e,variant:"danger"})),this.initialized.reject(Error(e))}),this.rpc.addMessageListener("kernelMessage",({message:e})=>{var r;(r=this.messageConsumer)==null||r.call(this,new MessageEvent("message",{data:e}))}))}static get INSTANCE(){let e="_marimo_private_PyodideBridge";return window[e]||(window[e]=new ct),window[e]}getSaveWorker(){return He()==="read"?(p.debug("Using partially disabled SaveWorker in read-mode"),{readFile:g,readNotebook:async()=>await V.readFile()??"",saveNotebook:g}):Re(new Worker(new URL(""+new URL("save-worker-CtJsIYIM.js",import.meta.url).href,""+import.meta.url),{type:"module",name:$e()})).proxy.request}async startSession(){let e=await V.readFile(),r=await X.readFile(),s=z.get(er)??G.getFilename(),a=z.get(or),i={},u=new URLSearchParams(window.location.search);for(let d of u.keys()){let v=u.getAll(d);i[d]=v.length===1?v[0]:v}await this.rpc.proxy.request.startSession({queryParameters:i,code:e||r||"",filename:s,userConfig:{...a,runtime:{...a.runtime,auto_instantiate:He()==="read"?!0:a.runtime.auto_instantiate}}})}setInterruptBuffer(){crossOriginIsolated?(this.interruptBuffer=new Uint8Array(new SharedArrayBuffer(1)),this.rpc.proxy.request.setInterruptBuffer(this.interruptBuffer)):p.warn("Not running in a secure context; interrupts are not available.")}attachMessageConsumer(e){this.messageConsumer=e,this.rpc.proxy.send.consumerReady({})}async putControlRequest(e){await this.rpc.proxy.request.bridge({functionName:"put_control_request",payload:e})}},rt=function(){return we.withProducerCallback(t=>{ge.INSTANCE.attachMessageConsumer(t)})},tt=function(t=ce()){let e=window.fetch;return window.fetch=async(r,s)=>{let a=r instanceof Request?r.url:r.toString();if(a.startsWith("data:"))return e(r,s);try{let i=Z(a,t);if(i){let u=await(await e(i)).arrayBuffer();return new Response(u,{headers:{"Content-Type":Mt(a)}})}return e(r,s)}catch(i){return p.error("Error parsing URL",i),e(r,s)}},()=>{window.fetch=e}};function Mt(t){return t.endsWith(".csv")?"text/csv":t.endsWith(".json")?"application/json":t.endsWith(".txt")?"text/plain":"application/octet-stream"}it=function(t,e=ce()){let r=t.http.bind(t),s=t.load.bind(t);return t.http=async a=>{let i=Z(a,e);if(i)return await window.fetch(i).then(u=>u.text());try{return await r(a)}catch(u){if(a.startsWith("data:"))return await window.fetch(a).then(d=>d.text());throw u}},t.load=async a=>{let i=Z(a,e);if(i)return await window.fetch(i).then(u=>u.text());try{return await s(a)}catch(u){if(a.startsWith("data:"))return await window.fetch(a).then(d=>d.text());throw u}},()=>{t.http=r,t.load=s}};function ke(t){return t.startsWith(".")?t.slice(1):t}function Ft(t,e=ce()){let r=Z(t,e);if(!r)return t;let s=xr(r);return URL.createObjectURL(s)}function Z(t,e){let r=document.baseURI;r.startsWith("blob:")&&(r=r.replace("blob:",""));let s=new URL(t,r).pathname,a=Me(t),i=Me(s);return e[t]||e[ke(t)]||e[s]||e[ke(s)]||a&&e[a]||i&&e[i]}function Me(t){let e=t.indexOf("/@file/");return e===-1?null:t.slice(e)}function ie(t,e=[]){let r=[];if(t instanceof DataView)r.push(e);else if(Array.isArray(t))for(let[s,a]of t.entries())r.push(...ie(a,[...e,s]));else if(typeof t=="object"&&t)for(let[s,a]of Object.entries(t))r.push(...ie(a,[...e,s]));return r}function Pt(t){let e=ie(t);if(e.length===0)return{state:t,buffers:[],bufferPaths:[]};let r=structuredClone(t),s=[],a=[];for(let i of e){let u=sr(t,i);if(u instanceof DataView){let d=Ve(u);s.push(d),a.push(i),J(r,i,d)}}return{state:r,buffers:s,bufferPaths:a}}function Fe(t){let{state:e,bufferPaths:r,buffers:s}=t;if(!r||r.length===0)return e;s&&ir(s.length===r.length,"Buffers and buffer paths not the same length");let a=e;for(let[i,u]of r.entries()){let d=s==null?void 0:s[i];if(d==null){p.warn("[anywidget] Could not find buffer at path",u);continue}typeof d=="string"?J(a,u,Qe(d)):J(a,u,d)}return a}he=function(t){return typeof t!="string"||t.length===0?!1:!!(/^(\.?\/)?@file\/[^?#]+$/.test(t)||Lt(t))};function It(){return z.get(vr)||br()}function Lt(t){return t.startsWith("data:text/javascript;base64,")||t.startsWith("data:application/javascript;base64,")||t.startsWith("data:text/css;base64,")?It():!1}const Pe={invoke:async()=>{let t="anywidget.invoke not supported in marimo. Please file an issue at https://github.com/marimo-team/marimo/issues";throw p.warn(t),Error(t)}};function Nt(t){if(typeof AbortSignal.any=="function")return AbortSignal.any(t);let e=new AbortController;for(let r of t){if(r.aborted)return e.abort(r.reason),e.signal;r.addEventListener("abort",()=>e.abort(r.reason),{once:!0})}return e.signal}var At=(Le=class{constructor(){_(this,ee);_(this,U,new Map)}getModule(t,e){let r=o(this,U).get(e);if(r)return r;let s=A(this,ee,pt).call(this,t).catch(a=>{throw o(this,U).delete(e),a});return o(this,U).set(e,s),s}invalidate(t){p.debug(`[WidgetDefRegistry] Invalidating module cache for hash=${t}`),o(this,U).delete(t)}},U=new WeakMap,ee=new WeakSet,pt=async function(t){if(!he(t))throw Error(`Refusing to load anywidget module from untrusted URL: ${String(t)}`);let e=ur(t).toString();return ze()&&(e=Ft(e)),yr(()=>import(e).then(async r=>(await r.__tla,r)),[],import.meta.url)},Le),Ut=(Ne=class{constructor(){_(this,M);_(this,j);_(this,S)}async bind(t,e){var i,u;if(o(this,S)&&o(this,j)===t)return o(this,S);o(this,S)&&o(this,j)!==t&&(p.debug("[WidgetBinding] Hot-reload detected, aborting previous binding"),(i=o(this,M))==null||i.abort(),C(this,M,void 0),C(this,S,void 0)),C(this,j,t),C(this,M,new AbortController);let r=o(this,M).signal,s=typeof t=="function"?await t():t,a=await((u=s.initialize)==null?void 0:u.call(s,{model:e,experimental:Pe}));return a&&r.addEventListener("abort",a),C(this,S,async(d,v)=>{var q;let x=await((q=s.render)==null?void 0:q.call(s,{model:e,el:d,experimental:Pe}));x&&Nt([v,r]).addEventListener("abort",()=>{let E=v.aborted?"view unmount":"binding destroyed";p.debug(`[WidgetBinding] Render cleanup triggered (reason: ${E})`),x()})}),o(this,S)}destroy(){var t;p.debug("[WidgetBinding] Destroying binding, aborting initialize lifecycle"),(t=o(this,M))==null||t.abort(),C(this,M,void 0),C(this,j,void 0),C(this,S,void 0)}},M=new WeakMap,j=new WeakMap,S=new WeakMap,Ne),jt=(Ae=class{constructor(){_(this,P,new Map)}getOrCreate(t){let e=o(this,P).get(t);return e||(e=new Ut,o(this,P).set(t,e)),e}destroy(t){let e=o(this,P).get(t);e&&(p.debug(`[BindingManager] Destroying binding for model=${t}`),e.destroy(),o(this,P).delete(t))}has(t){return o(this,P).has(t)}},P=new WeakMap,Ae);ut=new At,me=new jt;var Wt=(Ue=class{constructor(t=1e4){_(this,D);_(this,F,new Map);_(this,Y);C(this,Y,t)}get(t){let e=A(this,D,ae).call(this,t);return e.deferred.status==="pending"&&setTimeout(()=>{e.deferred.status==="pending"&&(e.deferred.reject(Error(`Model not found for key: ${t}`)),o(this,F).delete(t))},o(this,Y)),e.deferred.promise}create(t,e){let r=A(this,D,ae).call(this,t);r.deferred.resolve(e(r.controller.signal))}set(t,e){A(this,D,ae).call(this,t).deferred.resolve(e)}getSync(t){let e=o(this,F).get(t);if(e&&e.deferred.status==="resolved")return e.deferred.value}delete(t){var e;p.debug(`[ModelManager] Deleting model=${t}, aborting lifecycle signal`),(e=o(this,F).get(t))==null||e.controller.abort(),o(this,F).delete(t)}},F=new WeakMap,Y=new WeakMap,D=new WeakSet,ae=function(t){let e=o(this,F).get(t);return e||(e={deferred:new Ye,controller:new AbortController},o(this,F).set(t,e)),e},Ue),Ie=Symbol("marimo");function oe(t){return t[Ie]}ne=new Wt;var Tt=(je=Ie,W=class{constructor(e,r,s){_(this,N);_(this,te,"change");_(this,I);_(this,L);_(this,O);_(this,R,{});n(this,je,{updateAndEmitDiffs:e=>A(this,N,ht).call(this,e),emitCustomMessage:(e,r)=>A(this,N,mt).call(this,e,r)});n(this,"widget_manager",{async get_model(e){let r=await W._modelManager.get(e);if(!r)throw Error(`Model not found with id: ${e}. This is likely because the model was not registered.`);return r}});_(this,re,nr(()=>{let e=o(this,R)[o(this,te)];if(e)for(let r of e)try{r()}catch(s){p.error("Error emitting event",s)}},0));C(this,L,e),C(this,O,r),C(this,I,new Map),s&&s.addEventListener("abort",()=>{p.debug("[Model] Signal aborted, clearing all listeners"),C(this,R,{})})}off(e,r){var s;if(!e){C(this,R,{});return}if(!r){o(this,R)[e]=new Set;return}(s=o(this,R)[e])==null||s.delete(r)}send(e,r,s){let a=(s??[]).map(i=>i instanceof ArrayBuffer?new DataView(i):new DataView(i.buffer,i.byteOffset,i.byteLength));return o(this,O).sendCustomMessage(e,a).then(()=>r==null?void 0:r())}get(e){return o(this,L)[e]}set(e,r){C(this,L,{...o(this,L),[e]:r}),o(this,I).set(e,r),A(this,N,ft).call(this,`change:${e}`,r),o(this,re).call(this)}save_changes(){if(o(this,I).size===0)return;let e=Object.fromEntries(o(this,I).entries());o(this,I).clear(),o(this,O).sendUpdate(e)}on(e,r){o(this,R)[e]||(o(this,R)[e]=new Set),o(this,R)[e].add(r)}},te=new WeakMap,I=new WeakMap,L=new WeakMap,O=new WeakMap,R=new WeakMap,N=new WeakSet,ft=function(e,r){if(!o(this,R)[e])return;let s=o(this,R)[e];for(let a of s)try{a(r)}catch(i){p.error("Error emitting event",i)}},ht=function(e){e!=null&&Object.keys(e).forEach(r=>{let s=r;o(this,L)[s]!==e[s]&&this.set(s,e[s])})},mt=function(e,r=[]){let s=o(this,R)["msg:custom"];if(s)for(let a of s)try{a(e.content,r)}catch(i){p.error("Error emitting event",i)}},re=new WeakMap,n(W,"_modelManager",ne),W);et=async function(t,e){let r=e.model_id,s=e.message,a=("buffers"in s?s.buffers:[]).map(Qe);switch(s.method){case"open":{let{state:i,buffer_paths:u=[]}=s,d=Fe({state:i,bufferPaths:u,buffers:a}),v=t.getSync(r);if(v){oe(v).updateAndEmitDiffs(d);return}t.create(r,x=>new Tt(d,ze()?{sendUpdate:async()=>{},sendCustomMessage:async()=>{}}:{async sendUpdate(q){if(x.aborted){p.debug(`[Model] sendUpdate suppressed for model=${r} (signal aborted)`);return}let{state:E,buffers:H,bufferPaths:se}=Pt(q);await pe().sendModelValue({modelId:r,message:{method:"update",state:E,bufferPaths:se},buffers:H})},async sendCustomMessage(q,E){if(x.aborted){p.debug(`[Model] sendCustomMessage suppressed for model=${r} (signal aborted)`);return}await pe().sendModelValue({modelId:r,message:{method:"custom",content:q},buffers:E.map(Ve)})}},x));return}case"custom":oe(await t.get(r)).emitCustomMessage({method:"custom",content:s.content},a);return;case"close":me.destroy(r),t.delete(r);return;case"update":{let{state:i,buffer_paths:u=[]}=s,d=Fe({state:i,bufferPaths:u,buffers:a});oe(await t.get(r)).updateAndEmitDiffs(d);return}default:fr(s)}},Xt(ne,"MODEL_MANAGER");function Bt(t){return typeof t!="object"||!t?!1:"type"in t&&t.type==="marimo-ui-value-update"}fe=class gt{static get INSTANCE(){let e="_marimo_private_UIElementRegistry";return window[e]||(window[e]=new gt),window[e]}constructor(){this.entries=new Map}has(e){return this.entries.has(e)}set(e,r){this.entries.has(e)&&p.debug("UIElementRegistry overwriting entry for objectId.",e),this.entries.set(e,{objectId:e,value:r,elements:new Set})}registerInstance(e,r){let s=this.entries.get(e);s===void 0?this.entries.set(e,{objectId:e,value:Yt(r,this),elements:new Set([r])}):s.elements.add(r)}removeInstance(e,r){let s=this.entries.get(e);s!=null&&s.elements.has(r)&&s.elements.delete(r)}removeElementsByCell(e){[...this.entries.keys()].filter(r=>r.startsWith(`${e}-`)).forEach(r=>{this.entries.delete(r)})}lookupValue(e){let r=this.entries.get(e);return r===void 0?void 0:r.value}broadcastMessage(e,r,s){let a=this.entries.get(e);if(a===void 0){p.warn("UIElementRegistry missing entry",e);return}if(Bt(r)){a.value=r.value,a.elements.forEach(i=>{i.dispatchEvent(Je.create({bubbles:!1,composed:!0,detail:{value:r.value,element:i}}))});return}a.elements.forEach(i=>{i.dispatchEvent(Er.create({bubbles:!1,composed:!0,detail:{objectId:e,message:r,buffers:s}}))})}broadcastValueUpdate(e,r,s){let a=this.entries.get(r);a===void 0?p.warn("UIElementRegistry missing entry",r):(a.value=s,a.elements.forEach(i=>{i!==e&&i.dispatchEvent(Je.create({bubbles:!1,composed:!0,detail:{value:s,element:i}}))}),document.dispatchEvent(qr.create({bubbles:!0,composed:!0,detail:{objectId:r}})))}},at=fe.INSTANCE,st=new gr("function-call-result",async(t,e)=>{await pe().sendFunctionRequest({functionCallId:t,...e})}),lt="68px";var Dt="288px";nt=t=>t?/^\d+$/.test(t)?`${t}px`:t:Dt,ot=Gt({isOpen:!0},(t,e)=>{if(!e)return t;switch(e.type){case"toggle":return{...t,isOpen:e.isOpen??t.isOpen};case"setWidth":return{...t,width:e.width};default:return t}})});export{J as C,Ke as S,Xe as _,Sr as __tla,fe as a,Ze as b,et as c,he as d,tt as f,V as g,rt as h,st as i,me as l,ge as m,nt as n,at as o,it as p,ot as r,ne as s,lt as t,ut as u,ye as v,dt as x,we as y};
3
+ `)),await this.putControlRequest({type:"execute-cells",...e}),null));n(this,"sendRunScratchpad",async e=>(await this.rpc.proxy.request.loadPackages(e.code),await this.putControlRequest({type:"execute-scratchpad",...e}),null));n(this,"sendInterrupt",async()=>(this.interruptBuffer!==void 0&&(this.interruptBuffer[0]=2),null));n(this,"sendShutdown",async()=>(window.close(),null));n(this,"sendFormat",async e=>await this.rpc.proxy.request.bridge({functionName:"format",payload:e}));n(this,"sendDeleteCell",async e=>(await this.putControlRequest({type:"delete-cell",...e}),null));n(this,"sendInstallMissingPackages",async e=>(this.putControlRequest({type:"install-packages",...e}),null));n(this,"sendCodeCompletionRequest",async e=>(z.get(tr)||await this.rpc.proxy.request.bridge({functionName:"code_complete",payload:e}),null));n(this,"saveUserConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_user_config",payload:e}),dr.post("/kernel/save_user_config",e,{baseUrl:"/"}).catch(r=>(p.error(r),null))));n(this,"saveAppConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_app_config",payload:e}),null));n(this,"saveCellConfig",async e=>(await this.putControlRequest({type:"update-cell-config",...e}),null));n(this,"sendRestart",async()=>{let e=await this.readCode();return e.contents&&(V.saveFile(e.contents),X.saveFile(e.contents)),Cr(),null});n(this,"readCode",async()=>this.saveRpc?{contents:await this.saveRpc.readNotebook()}:(p.warn("Save RPC not initialized"),{contents:""}));n(this,"readSnippets",async()=>await this.rpc.proxy.request.bridge({functionName:"read_snippets",payload:void 0}));n(this,"openFile",async({path:e})=>{let r=Rr({code:null,baseUrl:window.location.origin});return window.open(r,"_blank"),null});n(this,"sendListFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"list_files",payload:e}));n(this,"sendSearchFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"search_files",payload:e}));n(this,"sendComponentValues",async e=>(await this.putControlRequest({type:"update-ui-element",...e,token:Ge()}),null));n(this,"sendInstantiate",async e=>null);n(this,"sendFunctionRequest",async e=>(await this.putControlRequest({type:"invoke-function",...e}),null));n(this,"sendCreateFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"create_file_or_directory",payload:e}));n(this,"sendDeleteFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"delete_file_or_directory",payload:e}));n(this,"sendCopyFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"copy_file_or_directory",payload:e}));n(this,"sendRenameFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"move_file_or_directory",payload:e}));n(this,"sendUpdateFile",async e=>await this.rpc.proxy.request.bridge({functionName:"update_file",payload:e}));n(this,"sendFileDetails",async e=>await this.rpc.proxy.request.bridge({functionName:"file_details",payload:e}));n(this,"exportAsHTML",async e=>await this.rpc.proxy.request.bridge({functionName:"export_html",payload:e}));n(this,"exportAsMarkdown",async e=>await this.rpc.proxy.request.bridge({functionName:"export_markdown",payload:e}));n(this,"previewDatasetColumn",async e=>(await this.putControlRequest({type:"preview-dataset-column",...e}),null));n(this,"previewSQLTable",async e=>(await this.putControlRequest({type:"preview-sql-table",...e}),null));n(this,"previewSQLTableList",async e=>(await this.putControlRequest({type:"list-sql-tables",...e}),null));n(this,"previewSQLSchemaList",async e=>(await this.putControlRequest({type:"list-sql-schemas",...e}),null));n(this,"previewDataSourceConnection",async e=>(await this.putControlRequest({type:"list-data-source-connection",...e}),null));n(this,"validateSQL",async e=>(await this.putControlRequest({type:"validate-sql",...e}),null));n(this,"sendModelValue",async e=>(await this.putControlRequest({type:"model",...e}),null));n(this,"sendDocumentTransaction",()=>Promise.resolve(null));n(this,"addPackage",async e=>this.rpc.proxy.request.addPackage(e));n(this,"removePackage",async e=>this.rpc.proxy.request.removePackage(e));n(this,"getPackageList",async()=>await this.rpc.proxy.request.listPackages());n(this,"getDependencyTree",async()=>({tree:{dependencies:[],name:"",tags:[],version:null}}));n(this,"listSecretKeys",async e=>(await this.putControlRequest({type:"list-secret-keys",...e}),null));n(this,"getUsageStats",g);n(this,"openTutorial",g);n(this,"getRecentFiles",g);n(this,"getWorkspaceFiles",g);n(this,"getRunningNotebooks",g);n(this,"shutdownSession",g);n(this,"exportAsIPYNB",g);n(this,"exportAsPDF",g);n(this,"autoExportAsHTML",g);n(this,"autoExportAsMarkdown",g);n(this,"autoExportAsIPYNB",g);n(this,"updateCellOutputs",g);n(this,"writeSecret",g);n(this,"invokeAiTool",g);n(this,"clearCache",g);n(this,"getCacheInfo",g);n(this,"listStorageEntries",g);n(this,"downloadStorage",g);lr()&&(this.rpc=Re(new Worker(new URL(""+new URL("worker-ztl1wuLb.js",import.meta.url).href,""+import.meta.url),{type:"module",name:$e()})),this.rpc.addMessageListener("ready",()=>{this.startSession()}),this.rpc.addMessageListener("initialized",()=>{this.saveRpc=this.getSaveWorker(),this.setInterruptBuffer(),this.initialized.resolve()}),this.rpc.addMessageListener("initializingMessage",({message:e})=>{z.set(ye,e)}),this.rpc.addMessageListener("initializedError",({error:e})=>{this.initialized.status==="resolved"&&(p.error(e),wr({title:"Error initializing",description:e,variant:"danger"})),this.initialized.reject(Error(e))}),this.rpc.addMessageListener("kernelMessage",({message:e})=>{var r;(r=this.messageConsumer)==null||r.call(this,new MessageEvent("message",{data:e}))}))}static get INSTANCE(){let e="_marimo_private_PyodideBridge";return window[e]||(window[e]=new ct),window[e]}getSaveWorker(){return He()==="read"?(p.debug("Using partially disabled SaveWorker in read-mode"),{readFile:g,readNotebook:async()=>await V.readFile()??"",saveNotebook:g}):Re(new Worker(new URL(""+new URL("save-worker-CtJsIYIM.js",import.meta.url).href,""+import.meta.url),{type:"module",name:$e()})).proxy.request}async startSession(){let e=await V.readFile(),r=await X.readFile(),s=z.get(Jt)??G.getFilename(),a=z.get(or),i={},u=new URLSearchParams(window.location.search);for(let d of u.keys()){let v=u.getAll(d);i[d]=v.length===1?v[0]:v}await this.rpc.proxy.request.startSession({queryParameters:i,code:e||r||"",filename:s,userConfig:{...a,runtime:{...a.runtime,auto_instantiate:He()==="read"?!0:a.runtime.auto_instantiate}}})}setInterruptBuffer(){crossOriginIsolated?(this.interruptBuffer=new Uint8Array(new SharedArrayBuffer(1)),this.rpc.proxy.request.setInterruptBuffer(this.interruptBuffer)):p.warn("Not running in a secure context; interrupts are not available.")}attachMessageConsumer(e){this.messageConsumer=e,this.rpc.proxy.send.consumerReady({})}async putControlRequest(e){await this.rpc.proxy.request.bridge({functionName:"put_control_request",payload:e})}},rt=function(){return we.withProducerCallback(t=>{ge.INSTANCE.attachMessageConsumer(t)})},tt=function(t=ce()){let e=window.fetch;return window.fetch=async(r,s)=>{let a=r instanceof Request?r.url:r.toString();if(a.startsWith("data:"))return e(r,s);try{let i=Z(a,t);if(i){let u=await(await e(i)).arrayBuffer();return new Response(u,{headers:{"Content-Type":Mt(a)}})}return e(r,s)}catch(i){return p.error("Error parsing URL",i),e(r,s)}},()=>{window.fetch=e}};function Mt(t){return t.endsWith(".csv")?"text/csv":t.endsWith(".json")?"application/json":t.endsWith(".txt")?"text/plain":"application/octet-stream"}it=function(t,e=ce()){let r=t.http.bind(t),s=t.load.bind(t);return t.http=async a=>{let i=Z(a,e);if(i)return await window.fetch(i).then(u=>u.text());try{return await r(a)}catch(u){if(a.startsWith("data:"))return await window.fetch(a).then(d=>d.text());throw u}},t.load=async a=>{let i=Z(a,e);if(i)return await window.fetch(i).then(u=>u.text());try{return await s(a)}catch(u){if(a.startsWith("data:"))return await window.fetch(a).then(d=>d.text());throw u}},()=>{t.http=r,t.load=s}};function ke(t){return t.startsWith(".")?t.slice(1):t}function Ft(t,e=ce()){let r=Z(t,e);if(!r)return t;let s=xr(r);return URL.createObjectURL(s)}function Z(t,e){let r=document.baseURI;r.startsWith("blob:")&&(r=r.replace("blob:",""));let s=new URL(t,r).pathname,a=Me(t),i=Me(s);return e[t]||e[ke(t)]||e[s]||e[ke(s)]||a&&e[a]||i&&e[i]}function Me(t){let e=t.indexOf("/@file/");return e===-1?null:t.slice(e)}function ie(t,e=[]){let r=[];if(t instanceof DataView)r.push(e);else if(Array.isArray(t))for(let[s,a]of t.entries())r.push(...ie(a,[...e,s]));else if(typeof t=="object"&&t)for(let[s,a]of Object.entries(t))r.push(...ie(a,[...e,s]));return r}function Pt(t){let e=ie(t);if(e.length===0)return{state:t,buffers:[],bufferPaths:[]};let r=structuredClone(t),s=[],a=[];for(let i of e){let u=sr(t,i);if(u instanceof DataView){let d=Ve(u);s.push(d),a.push(i),J(r,i,d)}}return{state:r,buffers:s,bufferPaths:a}}function Fe(t){let{state:e,bufferPaths:r,buffers:s}=t;if(!r||r.length===0)return e;s&&ir(s.length===r.length,"Buffers and buffer paths not the same length");let a=e;for(let[i,u]of r.entries()){let d=s==null?void 0:s[i];if(d==null){p.warn("[anywidget] Could not find buffer at path",u);continue}typeof d=="string"?J(a,u,Qe(d)):J(a,u,d)}return a}he=function(t){return typeof t!="string"||t.length===0?!1:!!(/^(\.?\/)?@file\/[^?#]+$/.test(t)||Lt(t))};function It(){return z.get(vr)||br()}function Lt(t){return t.startsWith("data:text/javascript;base64,")||t.startsWith("data:application/javascript;base64,")||t.startsWith("data:text/css;base64,")?It():!1}const Pe={invoke:async()=>{let t="anywidget.invoke not supported in marimo. Please file an issue at https://github.com/marimo-team/marimo/issues";throw p.warn(t),Error(t)}};function Nt(t){if(typeof AbortSignal.any=="function")return AbortSignal.any(t);let e=new AbortController;for(let r of t){if(r.aborted)return e.abort(r.reason),e.signal;r.addEventListener("abort",()=>e.abort(r.reason),{once:!0})}return e.signal}var At=(Le=class{constructor(){_(this,ee);_(this,U,new Map)}getModule(t,e){let r=o(this,U).get(e);if(r)return r;let s=A(this,ee,pt).call(this,t).catch(a=>{throw o(this,U).delete(e),a});return o(this,U).set(e,s),s}invalidate(t){p.debug(`[WidgetDefRegistry] Invalidating module cache for hash=${t}`),o(this,U).delete(t)}},U=new WeakMap,ee=new WeakSet,pt=async function(t){if(!he(t))throw Error(`Refusing to load anywidget module from untrusted URL: ${String(t)}`);let e=ur(t).toString();return ze()&&(e=Ft(e)),yr(()=>import(e).then(async r=>(await r.__tla,r)),[],import.meta.url)},Le),Ut=(Ne=class{constructor(){_(this,M);_(this,j);_(this,S)}async bind(t,e){var i,u;if(o(this,S)&&o(this,j)===t)return o(this,S);o(this,S)&&o(this,j)!==t&&(p.debug("[WidgetBinding] Hot-reload detected, aborting previous binding"),(i=o(this,M))==null||i.abort(),C(this,M,void 0),C(this,S,void 0)),C(this,j,t),C(this,M,new AbortController);let r=o(this,M).signal,s=typeof t=="function"?await t():t,a=await((u=s.initialize)==null?void 0:u.call(s,{model:e,experimental:Pe}));return a&&r.addEventListener("abort",a),C(this,S,async(d,v)=>{var q;let x=await((q=s.render)==null?void 0:q.call(s,{model:e,el:d,experimental:Pe}));x&&Nt([v,r]).addEventListener("abort",()=>{let E=v.aborted?"view unmount":"binding destroyed";p.debug(`[WidgetBinding] Render cleanup triggered (reason: ${E})`),x()})}),o(this,S)}destroy(){var t;p.debug("[WidgetBinding] Destroying binding, aborting initialize lifecycle"),(t=o(this,M))==null||t.abort(),C(this,M,void 0),C(this,j,void 0),C(this,S,void 0)}},M=new WeakMap,j=new WeakMap,S=new WeakMap,Ne),jt=(Ae=class{constructor(){_(this,P,new Map)}getOrCreate(t){let e=o(this,P).get(t);return e||(e=new Ut,o(this,P).set(t,e)),e}destroy(t){let e=o(this,P).get(t);e&&(p.debug(`[BindingManager] Destroying binding for model=${t}`),e.destroy(),o(this,P).delete(t))}has(t){return o(this,P).has(t)}},P=new WeakMap,Ae);ut=new At,me=new jt;var Wt=(Ue=class{constructor(t=1e4){_(this,D);_(this,F,new Map);_(this,Y);C(this,Y,t)}get(t){let e=A(this,D,ae).call(this,t);return e.deferred.status==="pending"&&setTimeout(()=>{e.deferred.status==="pending"&&(e.deferred.reject(Error(`Model not found for key: ${t}`)),o(this,F).delete(t))},o(this,Y)),e.deferred.promise}create(t,e){let r=A(this,D,ae).call(this,t);r.deferred.resolve(e(r.controller.signal))}set(t,e){A(this,D,ae).call(this,t).deferred.resolve(e)}getSync(t){let e=o(this,F).get(t);if(e&&e.deferred.status==="resolved")return e.deferred.value}delete(t){var e;p.debug(`[ModelManager] Deleting model=${t}, aborting lifecycle signal`),(e=o(this,F).get(t))==null||e.controller.abort(),o(this,F).delete(t)}},F=new WeakMap,Y=new WeakMap,D=new WeakSet,ae=function(t){let e=o(this,F).get(t);return e||(e={deferred:new Ye,controller:new AbortController},o(this,F).set(t,e)),e},Ue),Ie=Symbol("marimo");function oe(t){return t[Ie]}ne=new Wt;var Tt=(je=Ie,W=class{constructor(e,r,s){_(this,N);_(this,te,"change");_(this,I);_(this,L);_(this,O);_(this,R,{});n(this,je,{updateAndEmitDiffs:e=>A(this,N,ht).call(this,e),emitCustomMessage:(e,r)=>A(this,N,mt).call(this,e,r)});n(this,"widget_manager",{async get_model(e){let r=await W._modelManager.get(e);if(!r)throw Error(`Model not found with id: ${e}. This is likely because the model was not registered.`);return r}});_(this,re,nr(()=>{let e=o(this,R)[o(this,te)];if(e)for(let r of e)try{r()}catch(s){p.error("Error emitting event",s)}},0));C(this,L,e),C(this,O,r),C(this,I,new Map),s&&s.addEventListener("abort",()=>{p.debug("[Model] Signal aborted, clearing all listeners"),C(this,R,{})})}off(e,r){var s;if(!e){C(this,R,{});return}if(!r){o(this,R)[e]=new Set;return}(s=o(this,R)[e])==null||s.delete(r)}send(e,r,s){let a=(s??[]).map(i=>i instanceof ArrayBuffer?new DataView(i):new DataView(i.buffer,i.byteOffset,i.byteLength));return o(this,O).sendCustomMessage(e,a).then(()=>r==null?void 0:r())}get(e){return o(this,L)[e]}set(e,r){C(this,L,{...o(this,L),[e]:r}),o(this,I).set(e,r),A(this,N,ft).call(this,`change:${e}`,r),o(this,re).call(this)}save_changes(){if(o(this,I).size===0)return;let e=Object.fromEntries(o(this,I).entries());o(this,I).clear(),o(this,O).sendUpdate(e)}on(e,r){o(this,R)[e]||(o(this,R)[e]=new Set),o(this,R)[e].add(r)}},te=new WeakMap,I=new WeakMap,L=new WeakMap,O=new WeakMap,R=new WeakMap,N=new WeakSet,ft=function(e,r){if(!o(this,R)[e])return;let s=o(this,R)[e];for(let a of s)try{a(r)}catch(i){p.error("Error emitting event",i)}},ht=function(e){e!=null&&Object.keys(e).forEach(r=>{let s=r;o(this,L)[s]!==e[s]&&this.set(s,e[s])})},mt=function(e,r=[]){let s=o(this,R)["msg:custom"];if(s)for(let a of s)try{a(e.content,r)}catch(i){p.error("Error emitting event",i)}},re=new WeakMap,n(W,"_modelManager",ne),W);et=async function(t,e){let r=e.model_id,s=e.message,a=("buffers"in s?s.buffers:[]).map(Qe);switch(s.method){case"open":{let{state:i,buffer_paths:u=[]}=s,d=Fe({state:i,bufferPaths:u,buffers:a}),v=t.getSync(r);if(v){oe(v).updateAndEmitDiffs(d);return}t.create(r,x=>new Tt(d,ze()?{sendUpdate:async()=>{},sendCustomMessage:async()=>{}}:{async sendUpdate(q){if(x.aborted){p.debug(`[Model] sendUpdate suppressed for model=${r} (signal aborted)`);return}let{state:E,buffers:H,bufferPaths:se}=Pt(q);await pe().sendModelValue({modelId:r,message:{method:"update",state:E,bufferPaths:se},buffers:H})},async sendCustomMessage(q,E){if(x.aborted){p.debug(`[Model] sendCustomMessage suppressed for model=${r} (signal aborted)`);return}await pe().sendModelValue({modelId:r,message:{method:"custom",content:q},buffers:E.map(Ve)})}},x));return}case"custom":oe(await t.get(r)).emitCustomMessage({method:"custom",content:s.content},a);return;case"close":me.destroy(r),t.delete(r);return;case"update":{let{state:i,buffer_paths:u=[]}=s,d=Fe({state:i,bufferPaths:u,buffers:a});oe(await t.get(r)).updateAndEmitDiffs(d);return}default:fr(s)}},Kt(ne,"MODEL_MANAGER");function Bt(t){return typeof t!="object"||!t?!1:"type"in t&&t.type==="marimo-ui-value-update"}fe=class gt{static get INSTANCE(){let e="_marimo_private_UIElementRegistry";return window[e]||(window[e]=new gt),window[e]}constructor(){this.entries=new Map}has(e){return this.entries.has(e)}set(e,r){this.entries.has(e)&&p.debug("UIElementRegistry overwriting entry for objectId.",e),this.entries.set(e,{objectId:e,value:r,elements:new Set})}registerInstance(e,r){let s=this.entries.get(e);s===void 0?this.entries.set(e,{objectId:e,value:Yt(r,this),elements:new Set([r])}):s.elements.add(r)}removeInstance(e,r){let s=this.entries.get(e);s!=null&&s.elements.has(r)&&s.elements.delete(r)}removeElementsByCell(e){[...this.entries.keys()].filter(r=>r.startsWith(`${e}-`)).forEach(r=>{this.entries.delete(r)})}lookupValue(e){let r=this.entries.get(e);return r===void 0?void 0:r.value}broadcastMessage(e,r,s){let a=this.entries.get(e);if(a===void 0){p.warn("UIElementRegistry missing entry",e);return}if(Bt(r)){a.value=r.value,a.elements.forEach(i=>{i.dispatchEvent(Je.create({bubbles:!1,composed:!0,detail:{value:r.value,element:i}}))});return}a.elements.forEach(i=>{i.dispatchEvent(Er.create({bubbles:!1,composed:!0,detail:{objectId:e,message:r,buffers:s}}))})}broadcastValueUpdate(e,r,s){let a=this.entries.get(r);a===void 0?p.warn("UIElementRegistry missing entry",r):(a.value=s,a.elements.forEach(i=>{i!==e&&i.dispatchEvent(Je.create({bubbles:!1,composed:!0,detail:{value:s,element:i}}))}),document.dispatchEvent(qr.create({bubbles:!0,composed:!0,detail:{objectId:r}})))}},at=fe.INSTANCE,st=new gr("function-call-result",async(t,e)=>{await pe().sendFunctionRequest({functionCallId:t,...e})}),lt="68px";var Dt="288px";nt=t=>t?/^\d+$/.test(t)?`${t}px`:t:Dt,ot=er({isOpen:!0},(t,e)=>{if(!e)return t;switch(e.type){case"toggle":return{...t,isOpen:e.isOpen??t.isOpen};case"setWidth":return{...t,width:e.width};default:return t}})});export{J as C,Ke as S,Xe as _,Sr as __tla,fe as a,Ze as b,et as c,he as d,tt as f,V as g,rt as h,st as i,me as l,ge as m,nt as n,at as o,it as p,ot as r,ne as s,lt as t,ut as u,ye as v,dt as x,we as y};