@marimo-team/frontend 0.19.7-dev35 → 0.19.7-dev37

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 (84) hide show
  1. package/dist/assets/{JsonOutput-BGSqWZkD.js → JsonOutput-DtidtKaJ.js} +2 -2
  2. package/dist/assets/{MarimoErrorOutput-DFV7O8tN.js → MarimoErrorOutput-Cci2wITc.js} +1 -1
  3. package/dist/assets/{add-cell-with-ai-gDjJxct8.js → add-cell-with-ai-DT1ae2MK.js} +1 -1
  4. package/dist/assets/{add-database-form-CqEjMrq2.js → add-database-form-_pTLtiHN.js} +1 -1
  5. package/dist/assets/{agent-panel-D_hcgMlT.js → agent-panel-oLGqa4bG.js} +1 -1
  6. package/dist/assets/{ai-model-dropdown-C_l_zAXd.js → ai-model-dropdown-BL-PaF8o.js} +1 -1
  7. package/dist/assets/{app-config-button-CM05VD_Y.js → app-config-button-BiwYEPE8.js} +1 -1
  8. package/dist/assets/{cell-editor-ihhw9Ql3.js → cell-editor-B3U1SnYJ.js} +1 -1
  9. package/dist/assets/{chat-display-yGAtJXm0.js → chat-display-B34MaCGM.js} +1 -1
  10. package/dist/assets/{chat-panel-D3T1CjpZ.js → chat-panel-fuQFRvFm.js} +1 -1
  11. package/dist/assets/{column-preview-DbqM1diq.js → column-preview-B-dViv1i.js} +1 -1
  12. package/dist/assets/{command-palette-C2L80RlN.js → command-palette-KuNgJNix.js} +1 -1
  13. package/dist/assets/{common-D32S2RVD.js → common-DxKcMlJZ.js} +1 -1
  14. package/dist/assets/{dependency-graph-panel-C7ZXgECY.js → dependency-graph-panel-BZEIOxVz.js} +1 -1
  15. package/dist/assets/download-Bwa9P-Pz.js +6 -0
  16. package/dist/assets/{dropdown-menu-df9T83C0.js → dropdown-menu-B-6unW-7.js} +1 -1
  17. package/dist/assets/edit-page-DBFIML4p.js +13 -0
  18. package/dist/assets/{error-panel-DKIWwbhe.js → error-panel-DulelhA-.js} +1 -1
  19. package/dist/assets/{file-explorer-panel-D4VHkjMW.js → file-explorer-panel-Dn9tKw3E.js} +1 -1
  20. package/dist/assets/{form-XjMNGyzu.js → form-B1n-e_X0.js} +1 -1
  21. package/dist/assets/{glide-data-editor-BBSxoBI-.js → glide-data-editor-HGkaxqOo.js} +1 -1
  22. package/dist/assets/home-page--XVUAUCM.js +4 -0
  23. package/dist/assets/hooks-B1nUQK2T.js +1 -0
  24. package/dist/assets/{html-to-image-DKvXQkl5.js → html-to-image-Cu1p0tCK.js} +2 -2
  25. package/dist/assets/{index-DmMvDRRC.css → index-Bj5F80Z9.css} +1 -1
  26. package/dist/assets/{index-BRCNo5ma.js → index-DTpRqi46.js} +5 -5
  27. package/dist/assets/{layout-DiDoTAUA.js → layout-KY92f2Sm.js} +3 -3
  28. package/dist/assets/{markdown-renderer-xQJ1KM4c.js → markdown-renderer-Dpn5NCvn.js} +1 -1
  29. package/dist/assets/{packages-panel-D53RuG3X.js → packages-panel-CBc59eNR.js} +1 -1
  30. package/dist/assets/{panels-BhznEx5N.js → panels-B0B71dYl.js} +1 -1
  31. package/dist/assets/{popover-D16ZremR.js → popover-Gz-GJzym.js} +1 -1
  32. package/dist/assets/{readonly-python-code-kImQwJ5f.js → readonly-python-code-CCwpyiLX.js} +1 -1
  33. package/dist/assets/{renderShortcut-DHc-p-_c.js → renderShortcut-DEwfrKeS.js} +1 -1
  34. package/dist/assets/run-page-Dug0EU2T.js +1 -0
  35. package/dist/assets/{scratchpad-panel-C8wx6cRl.js → scratchpad-panel-SMFZ5eRQ.js} +1 -1
  36. package/dist/assets/{secrets-panel-Br6CcsOE.js → secrets-panel-BaEqnh6m.js} +1 -1
  37. package/dist/assets/{session-panel-JOOuJNOH.js → session-panel-CR_CZBSy.js} +1 -1
  38. package/dist/assets/table-C8uQmBAN.js +1 -0
  39. package/dist/assets/{terminal-DNwT6UrR.js → terminal-C7HXI-7B.js} +1 -1
  40. package/dist/assets/{tree-BdwmBGSx.js → tree-B1vM35Zj.js} +1 -1
  41. package/dist/assets/{useAddCell-BMDEXuVk.js → useAddCell-DRmuczCx.js} +1 -1
  42. package/dist/assets/{useCellActionButton-BDMlZzyv.js → useCellActionButton-DwRoApVS.js} +1 -1
  43. package/dist/assets/{useDeleteCell-BrMXAFkS.js → useDeleteCell-CR3IczUk.js} +1 -1
  44. package/dist/assets/{useDependencyPanelTab-B63bb4YX.js → useDependencyPanelTab-CLgnO1zH.js} +1 -1
  45. package/dist/assets/useNotebookActions-DhF-uJ0P.js +1 -0
  46. package/dist/assets/{useSplitCell-Cb0lf5MV.js → useSplitCell-IQsKBoRj.js} +1 -1
  47. package/dist/assets/{utilities.esm-BVFPJPyV.js → utilities.esm-DyYLtC1k.js} +2 -2
  48. package/dist/index.html +20 -20
  49. package/package.json +1 -1
  50. package/src/components/data-table/TableActions.tsx +5 -3
  51. package/src/components/data-table/download-actions.tsx +7 -2
  52. package/src/components/data-table/pagination.tsx +4 -4
  53. package/src/components/debug/indicator.tsx +1 -1
  54. package/src/components/editor/actions/useNotebookActions.tsx +4 -2
  55. package/src/components/editor/chrome/panels/context-aware-panel/context-aware-panel.tsx +1 -1
  56. package/src/components/editor/chrome/wrapper/app-chrome.tsx +6 -4
  57. package/src/components/editor/chrome/wrapper/footer-items/lsp-status.tsx +178 -0
  58. package/src/components/editor/chrome/wrapper/footer.tsx +1 -1
  59. package/src/components/editor/chrome/wrapper/sidebar.tsx +1 -1
  60. package/src/components/editor/controls/Controls.tsx +2 -2
  61. package/src/components/editor/controls/notebook-menu-dropdown.tsx +1 -1
  62. package/src/components/editor/file-tree/file-explorer.tsx +1 -1
  63. package/src/components/editor/header/status.tsx +1 -1
  64. package/src/components/editor/renderers/vertical-layout/vertical-layout.tsx +13 -4
  65. package/src/components/home/components.tsx +1 -1
  66. package/src/components/static-html/static-banner.tsx +1 -1
  67. package/src/components/ui/dropdown-menu.tsx +1 -1
  68. package/src/components/ui/table.tsx +1 -1
  69. package/src/core/export/__tests__/hooks.test.ts +60 -58
  70. package/src/core/export/hooks.ts +71 -31
  71. package/src/core/network/types.ts +4 -0
  72. package/src/css/app/print.css +0 -14
  73. package/src/utils/__tests__/async-capture-tracker.test.ts +353 -0
  74. package/src/utils/__tests__/download.test.tsx +5 -114
  75. package/src/utils/async-capture-tracker.ts +168 -0
  76. package/src/utils/download.ts +17 -57
  77. package/src/utils/html-to-image.ts +9 -12
  78. package/dist/assets/download-CzPV-R6Z.js +0 -6
  79. package/dist/assets/edit-page-DFpXAt-U.js +0 -12
  80. package/dist/assets/home-page-DBWXVxWa.js +0 -4
  81. package/dist/assets/hooks-CpjzmBkw.js +0 -1
  82. package/dist/assets/run-page-BCOAGhl5.js +0 -1
  83. package/dist/assets/table-BSASHvkq.js +0 -1
  84. package/dist/assets/useNotebookActions-Cj4FtiIb.js +0 -1
@@ -1,4 +0,0 @@
1
- import{s as X}from"./chunk-LvLJmgfZ.js";import{d as xe,l as ee}from"./useEvent-DO6uJBas.js";import{t as ge}from"./react-BGmjiNul.js";import{$n as ye,Gn as je,St as be,Un as te,Zr as re,_n as ae,er as ve,pi as ke,qn as we,zt as se}from"./cells-BW_4R0Qw.js";import"./react-dom-C9fstfnp.js";import{t as oe}from"./compiler-runtime-DeeZ7FnK.js";import{a as Ne,f as _e}from"./hotkeys-BHHWjLlp.js";import{n as R}from"./constants-B6Cb__3x.js";import{c as Se,f as ze,m as ie,s as Ce}from"./config-CIrPQIbt.js";import{t as Me}from"./ErrorBoundary-ChCiwl15.js";import{t as Ie}from"./jsx-runtime-ZmTK25f3.js";import{t as H}from"./button-YC1gW_kJ.js";import{t as De}from"./cn-BKtXLv3a.js";import"./dist-DBwNzi3C.js";import"./cjs-CH5Rj0g8.js";import"./main-U5Goe76G.js";import"./useNonce-_Aax6sXd.js";import{r as V}from"./requests-BsVD4CdD.js";import{t as W}from"./createLucideIcon-CnW3RofX.js";import{t as Pe}from"./chart-no-axes-column-W42b2ZIs.js";import{_ as Oe}from"./select-V5IdpNiR.js";import{t as Te}from"./chevron-right-DwagBitu.js";import{f as E,p as Ae,r as Re,t as le}from"./maps-t9yNKYA8.js";import{t as We}from"./circle-play-BuOtSgid.js";import{a as Fe,p as $e,r as Le,t as Ue}from"./dropdown-menu-df9T83C0.js";import{r as He,t as Ve}from"./types-fTSozrNJ.js";import{t as qe}from"./file-Cs1JbsV6.js";import{i as Ye,n as Be,r as Ee,t as Ge}from"./youtube-8p26v8EM.js";import{t as Je}from"./link-BsTPF7B0.js";import{t as G}from"./spinner-DaIKav-i.js";import{n as Qe,r as Ze,t as Ke}from"./app-config-button-CM05VD_Y.js";import{t as Xe}from"./refresh-ccw-DLEiQDS3.js";import{lt as et,r as tt}from"./input-pAun1m1X.js";import"./dist-Cayq-K1c.js";import"./dist-TiFCI16_.js";import"./dist-BIKFl48f.js";import"./dist-B0VqT_4z.js";import"./dist-BYyu59D8.js";import{t as rt}from"./use-toast-rmUWldD_.js";import"./Combination-CMPwuAmi.js";import{t as at}from"./tooltip-CEc2ajau.js";import{i as st}from"./dates-Dhn1r-h6.js";import{o as ot}from"./alert-dialog-DwQffb13.js";import{t as it}from"./context-JwD-oSsl.js";import"./popover-D16ZremR.js";import{n as lt}from"./ImperativeModal-CUbWEBci.js";import{r as nt}from"./errors-2SszdW9t.js";import{t as ct}from"./tree-BdwmBGSx.js";import{t as ne}from"./error-banner-DUzsIXtq.js";import{n as J,t as mt}from"./useAsyncData-C4XRy1BE.js";import{t as dt}from"./label-Be1daUcS.js";import{t as Q}from"./icons-BhEXrzsb.js";import{t as ht}from"./links-C-GGaW8R.js";import"./Inputs-D2Xn4HON.js";import{t as pt}from"./useInterval-Cu9ChZf-.js";var ft=W("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]),ut=W("book-text",[["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}],["path",{d:"M8 11h8",key:"vwpz6n"}],["path",{d:"M8 7h6",key:"1f0q6e"}]]),xt=W("graduation-cap",[["path",{d:"M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z",key:"j76jl0"}],["path",{d:"M22 10v6",key:"1lu8f3"}],["path",{d:"M6 12.5V16a6 3 0 0 0 12 0v-3.5",key:"1r8lef"}]]),gt=W("orbit",[["path",{d:"M20.341 6.484A10 10 0 0 1 10.266 21.85",key:"1enhxb"}],["path",{d:"M3.659 17.516A10 10 0 0 1 13.74 2.152",key:"1crzgf"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["circle",{cx:"19",cy:"5",r:"2",key:"mhkx31"}],["circle",{cx:"5",cy:"19",r:"2",key:"v8kfzx"}]]),yt=W("panels-top-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M3 9h18",key:"1pudct"}],["path",{d:"M9 21V9",key:"1oto5p"}]]),T=X(ge(),1),Z=oe(),a=X(Ie(),1),jt={intro:["Introduction",ft,"Get started with marimo basics"],dataflow:["Dataflow",ve,"Learn how cells interact with each other"],ui:["UI Elements",yt,"Create interactive UI components"],markdown:["Markdown",te,"Format text with parameterized markdown"],plots:["Plots",Pe,"Create interactive visualizations"],sql:["SQL",je,"Query databases directly in marimo"],layout:["Layout",Ee,"Customize the layout of your cells' output"],fileformat:["File format",qe,"Understand marimo's pure-Python file format"],"for-jupyter-users":["For Jupyter users",gt,"Transiting from Jupyter to marimo"],"markdown-format":["Markdown format",Q,"Using marimo to edit markdown files"]};const bt=()=>{let e=(0,Z.c)(6),{openTutorial:t}=V(),r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=(0,a.jsx)(xt,{className:"w-4 h-4 mr-2"}),e[0]=r):r=e[0];let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=(0,a.jsx)($e,{asChild:!0,children:(0,a.jsxs)(H,{"data-testid":"open-tutorial-button",size:"xs",variant:"outline",children:[r,"Tutorials",(0,a.jsx)(Re,{className:"w-3 h-3 ml-1"})]})}),e[1]=o):o=e[1];let s;e[2]===t?s=e[3]:(s=Ne.entries(jt).map(i=>{let[m,d]=i,[c,h,p]=d;return(0,a.jsxs)(Fe,{onSelect:async()=>{let n=await t({tutorialId:m});n&&ht(n.path)},children:[(0,a.jsx)(h,{strokeWidth:1.5,className:"w-4 h-4 mr-3 self-start mt-1.5 text-muted-foreground"}),(0,a.jsx)("div",{className:"flex items-center",children:(0,a.jsxs)("div",{className:"flex flex-col",children:[(0,a.jsx)("span",{children:c}),(0,a.jsx)("span",{className:"text-xs text-muted-foreground pr-1",children:p})]})})]},m)}),e[2]=t,e[3]=s);let l;return e[4]===s?l=e[5]:(l=(0,a.jsxs)(Ue,{children:[o,(0,a.jsx)(Le,{side:"bottom",align:"end",className:"no-print",children:s})]}),e[4]=s,e[5]=l),l};var vt=[{title:"Documentation",description:"Official marimo documentation and API reference",icon:ye,url:R.docsPage},{title:"GitHub",description:"View source code, report issues, or contribute",icon:Ye,url:R.githubPage},{title:"Community",description:"Join the marimo Discord community",icon:Be,url:R.discordLink},{title:"YouTube",description:"Watch tutorials and demos",icon:Ge,url:R.youtube},{title:"Changelog",description:"See what's new in marimo",icon:te,url:R.releasesPage}];const kt=()=>{let e=(0,Z.c)(2),t;e[0]===Symbol.for("react.memo_cache_sentinel")?(t=(0,a.jsx)(q,{Icon:Je,children:"Resources"}),e[0]=t):t=e[0];let r;return e[1]===Symbol.for("react.memo_cache_sentinel")?(r=(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[t,(0,a.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-3",children:vt.map(wt)})]}),e[1]=r):r=e[1],r},q=e=>{let t=(0,Z.c)(8),{Icon:r,control:o,children:s}=e,l;t[0]===r?l=t[1]:(l=(0,a.jsx)(r,{className:"h-5 w-5"}),t[0]=r,t[1]=l);let i;t[2]!==s||t[3]!==l?(i=(0,a.jsxs)("h2",{className:"flex items-center gap-2 text-xl font-semibold text-muted-foreground select-none",children:[l,s]}),t[2]=s,t[3]=l,t[4]=i):i=t[4];let m;return t[5]!==o||t[6]!==i?(m=(0,a.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[i,o]}),t[5]=o,t[6]=i,t[7]=m):m=t[7],m};function wt(e){return(0,a.jsxs)("a",{href:e.url,target:"_blank",className:"flex items-start gap-3 py-3 px-3 rounded-lg border hover:bg-accent/20 transition-colors shadow-xs",children:[(0,a.jsx)(e.icon,{className:"w-5 h-5 mt-1.5 text-primary"}),(0,a.jsxs)("div",{children:[(0,a.jsx)("h3",{className:"font-medium",children:e.title}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:e.description})]})]},e.title)}const ce=T.createContext({runningNotebooks:new Map,setRunningNotebooks:_e.NOOP}),me=T.createContext(""),Nt=re("marimo:home:include-markdown",!1,ae,{getOnInit:!0}),de=re("marimo:home:expanded-folders",{},ae,{getOnInit:!0});var P=oe();function he(e){return`${Ce()}-${encodeURIComponent(e)}`}var _t=()=>{let e=(0,P.c)(56),[t,r]=(0,T.useState)(0),{getRecentFiles:o,getRunningNotebooks:s}=V(),l;e[0]===o?l=e[1]:(l=()=>o(),e[0]=o,e[1]=l);let i;e[2]===Symbol.for("react.memo_cache_sentinel")?(i=[],e[2]=i):i=e[2];let m=J(l,i),d,c;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=()=>{r(Tt)},c={delayMs:1e4,whenVisible:!0},e[3]=d,e[4]=c):(d=e[3],c=e[4]),pt(d,c);let h;e[5]===s?h=e[6]:(h=async()=>{let A=await s();return le.keyBy(A.files,At)},e[5]=s,e[6]=h);let p;e[7]===t?p=e[8]:(p=[t],e[7]=t,e[8]=p);let n=J(h,p),f,x,u,g,k,y,b,v,w,N,_,z,S;if(e[9]!==m||e[10]!==n){w=Symbol.for("react.early_return_sentinel");e:{let A=mt(m,n);if(A.error)throw A.error;let K=A.data;if(!K){let U;e[24]===Symbol.for("react.memo_cache_sentinel")?(U=(0,a.jsx)(G,{centered:!0,size:"xlarge"}),e[24]=U):U=e[24],w=U;break e}let[ue,Y]=K;g=ue,u=T.Suspense,x=ce,b={runningNotebooks:Y,setRunningNotebooks:n.setData};let $,L;e[25]===Symbol.for("react.memo_cache_sentinel")?($=(0,a.jsx)(bt,{}),L=(0,a.jsx)(Ke,{showAppConfig:!1}),e[25]=$,e[26]=L):($=e[25],L=e[26]);let B=`This will shutdown the notebook server and terminate all running notebooks (${Y.size}). You'll lose all data that's in memory.`;e[27]===B?v=e[28]:(v=(0,a.jsxs)("div",{className:"absolute top-3 right-5 flex gap-3 z-50",children:[$,L,(0,a.jsx)(Qe,{description:B})]}),e[27]=B,e[28]=v),z="flex flex-col gap-6 max-w-6xl container pt-5 pb-20 z-10",e[29]===Symbol.for("react.memo_cache_sentinel")?(S=(0,a.jsx)("img",{src:"logo.png",alt:"marimo logo",className:"w-48 mb-2"}),k=(0,a.jsx)(Pt,{}),y=(0,a.jsx)(kt,{}),e[29]=k,e[30]=y,e[31]=S):(k=e[29],y=e[30],S=e[31]),f=pe,e[32]===Symbol.for("react.memo_cache_sentinel")?(N=(0,a.jsx)(q,{Icon:We,children:"Running notebooks"}),e[32]=N):N=e[32],_=[...Y.values()]}e[9]=m,e[10]=n,e[11]=f,e[12]=x,e[13]=u,e[14]=g,e[15]=k,e[16]=y,e[17]=b,e[18]=v,e[19]=w,e[20]=N,e[21]=_,e[22]=z,e[23]=S}else f=e[11],x=e[12],u=e[13],g=e[14],k=e[15],y=e[16],b=e[17],v=e[18],w=e[19],N=e[20],_=e[21],z=e[22],S=e[23];if(w!==Symbol.for("react.early_return_sentinel"))return w;let C;e[33]!==f||e[34]!==N||e[35]!==_?(C=(0,a.jsx)(f,{header:N,files:_}),e[33]=f,e[34]=N,e[35]=_,e[36]=C):C=e[36];let I;e[37]===Symbol.for("react.memo_cache_sentinel")?(I=(0,a.jsx)(q,{Icon:we,children:"Recent notebooks"}),e[37]=I):I=e[37];let M;e[38]===g.files?M=e[39]:(M=(0,a.jsx)(pe,{header:I,files:g.files}),e[38]=g.files,e[39]=M);let O;e[40]===Symbol.for("react.memo_cache_sentinel")?(O=(0,a.jsx)(Me,{children:(0,a.jsx)(St,{})}),e[40]=O):O=e[40];let j;e[41]!==k||e[42]!==y||e[43]!==C||e[44]!==M||e[45]!==z||e[46]!==S?(j=(0,a.jsxs)("div",{className:z,children:[S,k,y,C,M,O]}),e[41]=k,e[42]=y,e[43]=C,e[44]=M,e[45]=z,e[46]=S,e[47]=j):j=e[47];let D;e[48]!==x||e[49]!==b||e[50]!==v||e[51]!==j?(D=(0,a.jsxs)(x,{value:b,children:[v,j]}),e[48]=x,e[49]=b,e[50]=v,e[51]=j,e[52]=D):D=e[52];let F;return e[53]!==u||e[54]!==D?(F=(0,a.jsx)(u,{children:D}),e[53]=u,e[54]=D,e[55]=F):F=e[55],F},St=()=>{let e=(0,P.c)(48),{getWorkspaceFiles:t}=V(),[r,o]=ee(Nt),[s,l]=(0,T.useState)(""),i;e[0]!==t||e[1]!==r?(i=()=>t({includeMarkdown:r}),e[0]=t,e[1]=r,e[2]=i):i=e[2];let m;e[3]===r?m=e[4]:(m=[r],e[3]=r,e[4]=m);let{isPending:d,data:c,error:h,isFetching:p,refetch:n}=J(i,m);if(d){let j;return e[5]===Symbol.for("react.memo_cache_sentinel")?(j=(0,a.jsx)(G,{centered:!0,size:"xlarge",className:"mt-6"}),e[5]=j):j=e[5],j}if(h){let j;e[6]===h?j=e[7]:(j=nt(h),e[6]=h,e[7]=j);let D;return e[8]===j?D=e[9]:(D=(0,a.jsx)(ne,{kind:"danger",className:"rounded p-4",children:j}),e[8]=j,e[9]=D),D}let f;e[10]!==c.fileCount||e[11]!==c.hasMore?(f=c.hasMore&&(0,a.jsxs)(ne,{kind:"warn",className:"rounded p-4",children:["Showing first ",c.fileCount," files. Your workspace has more files."]}),e[10]=c.fileCount,e[11]=c.hasMore,e[12]=f):f=e[12];let x,u;e[13]===Symbol.for("react.memo_cache_sentinel")?(x=(0,a.jsx)(et,{size:13}),u=j=>l(j.target.value),e[13]=x,e[14]=u):(x=e[13],u=e[14]);let g;e[15]===s?g=e[16]:(g=(0,a.jsx)(tt,{id:"search",value:s,icon:x,onChange:u,placeholder:"Search",className:"mb-0 border-border"}),e[15]=s,e[16]=g);let k;e[17]===Symbol.for("react.memo_cache_sentinel")?(k=(0,a.jsx)(zt,{}),e[17]=k):k=e[17];let y;e[18]===o?y=e[19]:(y=j=>o(!!j),e[18]=o,e[19]=y);let b;e[20]!==r||e[21]!==y?(b=(0,a.jsx)(be,{"data-testid":"include-markdown-checkbox",id:"include-markdown",checked:r,onCheckedChange:y}),e[20]=r,e[21]=y,e[22]=b):b=e[22];let v;e[23]===Symbol.for("react.memo_cache_sentinel")?(v=(0,a.jsx)(dt,{htmlFor:"include-markdown",children:"Include markdown"}),e[23]=v):v=e[23];let w;e[24]!==g||e[25]!==b?(w=(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[g,k,b,v]}),e[24]=g,e[25]=b,e[26]=w):w=e[26];let N;e[27]===n?N=e[28]:(N=()=>n(),e[27]=n,e[28]=N);let _;e[29]===Symbol.for("react.memo_cache_sentinel")?(_=(0,a.jsx)(Xe,{className:"w-4 h-4"}),e[29]=_):_=e[29];let z;e[30]===N?z=e[31]:(z=(0,a.jsx)(H,{variant:"text",size:"icon",className:"w-4 h-4 ml-1 p-0 opacity-70 hover:opacity-100",onClick:N,"aria-label":"Refresh workspace",children:_}),e[30]=N,e[31]=z);let S;e[32]===p?S=e[33]:(S=p&&(0,a.jsx)(G,{size:"small"}),e[32]=p,e[33]=S);let C;e[34]!==w||e[35]!==z||e[36]!==S?(C=(0,a.jsxs)(q,{Icon:ut,control:w,children:["Workspace",z,S]}),e[34]=w,e[35]=z,e[36]=S,e[37]=C):C=e[37];let I;e[38]!==s||e[39]!==c.files?(I=(0,a.jsx)("div",{className:"flex flex-col divide-y divide-(--slate-3) border rounded overflow-hidden max-h-192 overflow-y-auto shadow-sm bg-background",children:(0,a.jsx)(Ct,{searchText:s,files:c.files})}),e[38]=s,e[39]=c.files,e[40]=I):I=e[40];let M;e[41]!==C||e[42]!==I||e[43]!==f?(M=(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[f,C,I]}),e[41]=C,e[42]=I,e[43]=f,e[44]=M):M=e[44];let O;return e[45]!==M||e[46]!==c.root?(O=(0,a.jsx)(me,{value:c.root,children:M}),e[45]=M,e[46]=c.root,e[47]=O):O=e[47],O},zt=()=>{let e=(0,P.c)(5),t=xe(de),r;e[0]===t?r=e[1]:(r=()=>{t({})},e[0]=t,e[1]=r);let o;e[2]===Symbol.for("react.memo_cache_sentinel")?(o=(0,a.jsx)(Ae,{className:"w-4 h-4 mr-1"}),e[2]=o):o=e[2];let s;return e[3]===r?s=e[4]:(s=(0,a.jsxs)(H,{variant:"text",size:"sm",className:"h-fit hidden sm:flex",onClick:r,children:[o,"Collapse all"]}),e[3]=r,e[4]=s),s},Ct=e=>{let t=(0,P.c)(12),{files:r,searchText:o}=e,[s,l]=ee(de),i=Object.keys(s).length===0,m=(0,T.useRef)(void 0),d,c;if(t[0]===i?(d=t[1],c=t[2]):(d=()=>{var n;i&&((n=m.current)==null||n.closeAll())},c=[i],t[0]=i,t[1]=d,t[2]=c),(0,T.useEffect)(d,c),r.length===0){let n;return t[3]===Symbol.for("react.memo_cache_sentinel")?(n=(0,a.jsx)("div",{className:"flex flex-col px-5 py-10 items-center justify-center",children:(0,a.jsx)("p",{className:"text-center text-muted-foreground",children:"No files in this workspace"})}),t[3]=n):n=t[3],n}let h;t[4]!==s||t[5]!==l?(h=async n=>{let f=s[n]??!1;l({...s,[n]:!f})},t[4]=s,t[5]=l,t[6]=h):h=t[6];let p;return t[7]!==r||t[8]!==s||t[9]!==o||t[10]!==h?(p=(0,a.jsx)(ct,{ref:m,width:"100%",height:500,searchTerm:o,className:"h-full",idAccessor:Rt,data:r,openByDefault:!1,initialOpenState:s,onToggle:h,padding:5,rowHeight:35,indent:15,overscanCount:1e3,renderCursor:Wt,disableDrop:!0,disableDrag:!0,disableEdit:!0,disableMultiSelection:!0,children:Mt}),t[7]=r,t[8]=s,t[9]=o,t[10]=h,t[11]=p):p=t[11],p},Mt=e=>{let t=(0,P.c)(19),{node:r,style:o}=e,s=Ve[r.data.isDirectory?"directory":He(r.data.name)],l;t[0]===s?l=t[1]:(l=(0,a.jsx)(s,{className:"w-5 h-5 shrink-0",strokeWidth:1.5}),t[0]=s,t[1]=l);let i=l,m=(0,T.use)(me),d;t[2]!==i||t[3]!==r.data.isDirectory||t[4]!==r.data.name||t[5]!==r.data.path||t[6]!==m?(d=()=>{if(r.data.isDirectory)return(0,a.jsxs)("span",{className:"flex items-center pl-1 cursor-pointer hover:bg-accent/50 hover:text-accent-foreground rounded-l flex-1 overflow-hidden h-full pr-3 gap-2",children:[i,r.data.name]});let u=r.data.path.startsWith(m)&&se.isAbsolute(r.data.path)?se.rest(r.data.path,m):r.data.path,g=u.endsWith(".md")||u.endsWith(".qmd");return(0,a.jsxs)("a",{className:"flex items-center pl-1 cursor-pointer hover:bg-accent/50 hover:text-accent-foreground rounded-l flex-1 overflow-hidden h-full pr-3 gap-2",href:ie(`?file=${u}`).toString(),target:he(u),children:[i,(0,a.jsxs)("span",{className:"flex-1 overflow-hidden text-ellipsis",children:[r.data.name,g&&(0,a.jsx)(Q,{className:"ml-2 inline opacity-80"})]}),(0,a.jsx)(fe,{filePath:u}),(0,a.jsx)(E,{size:20,className:"group-hover:opacity-100 opacity-0 text-primary"})]})},t[2]=i,t[3]=r.data.isDirectory,t[4]=r.data.name,t[5]=r.data.path,t[6]=m,t[7]=d):d=t[7];let c=d,h;t[8]===Symbol.for("react.memo_cache_sentinel")?(h=De("flex items-center cursor-pointer ml-1 text-muted-foreground whitespace-nowrap group h-full"),t[8]=h):h=t[8];let p,n;t[9]===r?(p=t[10],n=t[11]):(p=u=>{u.stopPropagation(),r.data.isDirectory&&r.toggle()},n=(0,a.jsx)(It,{node:r}),t[9]=r,t[10]=p,t[11]=n);let f;t[12]===c?f=t[13]:(f=c(),t[12]=c,t[13]=f);let x;return t[14]!==o||t[15]!==p||t[16]!==n||t[17]!==f?(x=(0,a.jsxs)("div",{style:o,className:h,onClick:p,children:[n,f]}),t[14]=o,t[15]=p,t[16]=n,t[17]=f,t[18]=x):x=t[18],x},It=e=>{let t=(0,P.c)(3),{node:r}=e;if(!r.data.isDirectory){let s;return t[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,a.jsx)("span",{className:"w-5 h-5 shrink-0"}),t[0]=s):s=t[0],s}let o;return t[1]===r.isOpen?o=t[2]:(o=r.isOpen?(0,a.jsx)(Oe,{className:"w-5 h-5 shrink-0"}):(0,a.jsx)(Te,{className:"w-5 h-5 shrink-0"}),t[1]=r.isOpen,t[2]=o),o},pe=e=>{let t=(0,P.c)(7),{header:r,files:o}=e;if(o.length===0)return null;let s;t[0]===o?s=t[1]:(s=o.map(Ft),t[0]=o,t[1]=s);let l;t[2]===s?l=t[3]:(l=(0,a.jsx)("div",{className:"flex flex-col divide-y divide-(--slate-3) border rounded overflow-hidden max-h-192 overflow-y-auto shadow-sm bg-background",children:s}),t[2]=s,t[3]=l);let i;return t[4]!==r||t[5]!==l?(i=(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[r,l]}),t[4]=r,t[5]=l,t[6]=i):i=t[6],i},Dt=e=>{let t=(0,P.c)(41),{file:r}=e,{locale:o}=it(),s;t[0]===r.path?s=t[1]:(s=Se(r.path),t[0]=r.path,t[1]=s);let l=s,i,m,d,c;if(t[2]!==r.initializationId||t[3]!==r.path||t[4]!==l){let N=ie(l?`?file=${r.initializationId}&session_id=${r.path}`:`?file=${r.path}`),_;t[9]===r.path?_=t[10]:(_=r.path.endsWith(".md"),t[9]=r.path,t[10]=_),i=_,m="py-1.5 px-4 hover:bg-(--blue-2) hover:text-primary transition-all duration-300 cursor-pointer group relative flex gap-4 items-center",d=r.path,c=N.toString(),t[2]=r.initializationId,t[3]=r.path,t[4]=l,t[5]=i,t[6]=m,t[7]=d,t[8]=c}else i=t[5],m=t[6],d=t[7],c=t[8];let h=r.initializationId||r.path,p;t[11]===h?p=t[12]:(p=he(h),t[11]=h,t[12]=p);let n;t[13]===i?n=t[14]:(n=i&&(0,a.jsx)("span",{className:"opacity-80",children:(0,a.jsx)(Q,{})}),t[13]=i,t[14]=n);let f;t[15]!==r.name||t[16]!==n?(f=(0,a.jsxs)("span",{className:"flex items-center gap-2",children:[r.name,n]}),t[15]=r.name,t[16]=n,t[17]=f):f=t[17];let x;t[18]===r.path?x=t[19]:(x=(0,a.jsx)("p",{title:r.path,className:"text-sm text-muted-foreground overflow-hidden whitespace-nowrap text-ellipsis",children:r.path}),t[18]=r.path,t[19]=x);let u;t[20]!==f||t[21]!==x?(u=(0,a.jsxs)("div",{className:"flex flex-col justify-between flex-1",children:[f,x]}),t[20]=f,t[21]=x,t[22]=u):u=t[22];let g;t[23]===r.path?g=t[24]:(g=(0,a.jsx)("div",{children:(0,a.jsx)(fe,{filePath:r.path})}),t[23]=r.path,t[24]=g);let k;t[25]===Symbol.for("react.memo_cache_sentinel")?(k=(0,a.jsx)(E,{size:20,className:"group-hover:opacity-100 opacity-0 transition-all duration-300 text-primary"}),t[25]=k):k=t[25];let y;t[26]===g?y=t[27]:(y=(0,a.jsxs)("div",{className:"flex gap-3 items-center",children:[g,k]}),t[26]=g,t[27]=y);let b;t[28]!==r.lastModified||t[29]!==o?(b=!!r.lastModified&&(0,a.jsx)("div",{className:"text-xs text-muted-foreground opacity-80",children:st(r.lastModified*1e3,o)}),t[28]=r.lastModified,t[29]=o,t[30]=b):b=t[30];let v;t[31]!==y||t[32]!==b?(v=(0,a.jsxs)("div",{className:"flex flex-col gap-1 items-end",children:[y,b]}),t[31]=y,t[32]=b,t[33]=v):v=t[33];let w;return t[34]!==u||t[35]!==v||t[36]!==m||t[37]!==d||t[38]!==c||t[39]!==p?(w=(0,a.jsxs)("a",{className:m,href:c,target:p,children:[u,v]},d),t[34]=u,t[35]=v,t[36]=m,t[37]=d,t[38]=c,t[39]=p,t[40]=w):w=t[40],w},fe=e=>{let t=(0,P.c)(10),{filePath:r}=e,{openConfirm:o,closeModal:s}=lt(),{shutdownSession:l}=V(),{runningNotebooks:i,setRunningNotebooks:m}=(0,T.use)(ce);if(!i.has(r))return null;let d;t[0]!==s||t[1]!==r||t[2]!==o||t[3]!==i||t[4]!==m||t[5]!==l?(d=p=>{p.stopPropagation(),p.preventDefault(),o({title:"Shutdown",description:"This will terminate the Python kernel. You'll lose all data that's in memory.",variant:"destructive",confirmAction:(0,a.jsx)(ot,{onClick:()=>{let n=i.get(r);ke(n==null?void 0:n.sessionId),l({sessionId:n.sessionId}).then(f=>{m(le.keyBy(f.files,$t))}),s(),rt({description:"Notebook has been shutdown."})},"aria-label":"Confirm Shutdown",children:"Shutdown"})})},t[0]=s,t[1]=r,t[2]=o,t[3]=i,t[4]=m,t[5]=l,t[6]=d):d=t[6];let c;t[7]===Symbol.for("react.memo_cache_sentinel")?(c=(0,a.jsx)(Ze,{size:14}),t[7]=c):c=t[7];let h;return t[8]===d?h=t[9]:(h=(0,a.jsx)(at,{content:"Shutdown",children:(0,a.jsx)(H,{size:"icon",variant:"outline",className:"opacity-80 hover:opacity-100 hover:bg-accent text-destructive border-destructive hover:border-destructive hover:text-destructive bg-background hover:bg-(--red-1)",onClick:d,children:c})}),t[8]=d,t[9]=h),h},Pt=()=>{let e=(0,P.c)(3),t;e[0]===Symbol.for("react.memo_cache_sentinel")?(t=ze(),e[0]=t):t=e[0];let r=t,o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o=(0,a.jsx)("h2",{className:"text-lg font-semibold",children:"Create a new notebook"}),e[1]=o):o=e[1];let s;return e[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,a.jsxs)("a",{className:`relative rounded-lg p-6 group
2
- text-primary hover:bg-(--blue-2) shadow-md-solid shadow-accent border bg-(--blue-1)
3
- transition-all duration-300 cursor-pointer
4
- `,href:r,target:"_blank",rel:"noreferrer",children:[o,(0,a.jsx)("div",{className:"group-hover:opacity-100 opacity-0 absolute right-5 top-0 bottom-0 rounded-lg flex items-center justify-center transition-all duration-300",children:(0,a.jsx)(E,{size:24})})]}),e[2]=s):s=e[2],s},Ot=_t;function Tt(e){return e+1}function At(e){return e.path}function Rt(e){return e.path}function Wt(){return null}function Ft(e){return(0,a.jsx)(Dt,{file:e},e.path)}function $t(e){return e.path}export{Ot as default};
@@ -1 +0,0 @@
1
- import{l as S,p as j,u as E}from"./useEvent-DO6uJBas.js";import{o as T}from"./cells-BW_4R0Qw.js";import{t as I}from"./compiler-runtime-DeeZ7FnK.js";import{a as A,d as x}from"./hotkeys-BHHWjLlp.js";import{i as N}from"./utils-DXvhzCGS.js";import{A as _,w as F}from"./config-CIrPQIbt.js";import{r as P}from"./requests-BsVD4CdD.js";import{f as V}from"./layout-DiDoTAUA.js";import{l as D,o as $}from"./download-CzPV-R6Z.js";import{t as z}from"./use-toast-rmUWldD_.js";import{t as C}from"./useInterval-Cu9ChZf-.js";var B=I(),k=5e3;function H(){let t=(0,B.c)(14),i=E(N),{state:u}=E(F),o=i.auto_download.includes("markdown"),b=i.auto_download.includes("html"),m=i.auto_download.includes("ipynb"),r=u===_.OPEN,d=!o||!r,s=!b||!r,l=!m||!r,{autoExportAsHTML:p,autoExportAsIPYNB:a,autoExportAsMarkdown:e,updateCellOutputs:n}=P(),c=M(),f;t[0]===e?f=t[1]:(f=async()=>{await e({download:!1})},t[0]=e,t[1]=f);let w;t[2]===d?w=t[3]:(w={delayMs:k,whenVisible:!0,disabled:d},t[2]=d,t[3]=w),C(f,w);let h;t[4]===p?h=t[5]:(h=async()=>{await p({download:!1,includeCode:!0,files:V.INSTANCE.filenames()})},t[4]=p,t[5]=h);let y;t[6]===s?y=t[7]:(y={delayMs:k,whenVisible:!0,disabled:s},t[6]=s,t[7]=y),C(h,y);let v;t[8]!==a||t[9]!==c||t[10]!==n?(v=async()=>{await O({takeScreenshots:()=>c({progress:D.indeterminate(),snappy:!0}),updateCellOutputs:n}),await a({download:!1})},t[8]=a,t[9]=c,t[10]=n,t[11]=v):v=t[11];let g;t[12]===l?g=t[13]:(g={delayMs:k,whenVisible:!0,disabled:l,skipIfRunning:!0},t[12]=l,t[13]=g),C(v,g)}var L=j({}),R=new Set(["text/html","application/vnd.vegalite.v5+json","application/vnd.vega.v5+json","application/vnd.vegalite.v6+json","application/vnd.vega.v6+json"]);function M(){let[t,i]=S(L),u=E(T);return async({progress:o,snappy:b})=>{var l,p;let m={},r=[];for(let[a,e]of A.entries(u)){let n=(l=e.output)==null?void 0:l.data,c=t[a]!==n;m[a]=n,(p=e.output)!=null&&p.mimetype&&R.has(e.output.mimetype)&&n&&c&&r.push([a,e])}if(i(m),r.length===0)return{};let d=r.length;o.addTotal(d);let s={};for(let[a]of r)try{let e=await $(a,b);if(!e){x.error(`Failed to capture screenshot for cell ${a}`);continue}s[a]=["image/png",e]}catch(e){x.error(`Error screenshotting cell ${a}:`,e)}finally{o.increment(1)}return s}}async function O(t){let{takeScreenshots:i,updateCellOutputs:u}=t;try{let o=await i();A.size(o)>0&&await u({cellIdsToOutput:o})}catch(o){x.error("Error updating cell outputs with screenshots:",o),z({title:"Failed to capture cell outputs",description:"Some outputs may not appear in the PDF. Continuing with export.",variant:"danger"})}}export{H as n,M as r,O as t};
@@ -1 +0,0 @@
1
- import{s as J}from"./chunk-LvLJmgfZ.js";import{u as K}from"./useEvent-DO6uJBas.js";import{t as Z}from"./react-BGmjiNul.js";import{b as $,qr as ee,w as te}from"./cells-BW_4R0Qw.js";import"./react-dom-C9fstfnp.js";import{t as V}from"./compiler-runtime-DeeZ7FnK.js";import"./tooltip-BGrCWNss.js";import{w as re}from"./utilities.esm-BVFPJPyV.js";import{n as Y}from"./constants-B6Cb__3x.js";import{b as oe,j as se,s as ae}from"./config-CIrPQIbt.js";import{t as ie}from"./jsx-runtime-ZmTK25f3.js";import{t as F}from"./button-YC1gW_kJ.js";import"./dist-DBwNzi3C.js";import{E as me,Y as H}from"./JsonOutput-BGSqWZkD.js";import"./cjs-CH5Rj0g8.js";import"./main-U5Goe76G.js";import"./useNonce-_Aax6sXd.js";import{r as le}from"./requests-BsVD4CdD.js";import"./layout-DiDoTAUA.js";import{n as ne}from"./download-CzPV-R6Z.js";import"./markdown-renderer-xQJ1KM4c.js";import{t as ce}from"./copy-CQ15EONK.js";import{t as de}from"./download-B9SUL40m.js";import{i as pe,l as he,n as xe,r as M,t as fe,u as be}from"./panels-BhznEx5N.js";import{t as je}from"./spinner-DaIKav-i.js";import"./dist-Cayq-K1c.js";import"./dist-TiFCI16_.js";import"./dist-BIKFl48f.js";import"./dist-B0VqT_4z.js";import"./dist-BYyu59D8.js";import{t as ye}from"./use-toast-rmUWldD_.js";import"./Combination-CMPwuAmi.js";import"./dates-Dhn1r-h6.js";import{a as ue,c as ge,l as ke,n as _e,r as Ne,t as we}from"./dialog-CxGKN4C_.js";import"./popover-D16ZremR.js";import{t as ve}from"./share-CbPtIlnM.js";import"./vega-loader.browser-CRZ52CKf.js";import"./defaultLocale-D_rSvXvJ.js";import"./defaultLocale-C92Rrpmf.js";import{t as Se}from"./copy-Bv2DBpIS.js";import"./purify.es-DNVQZNFu.js";import{a as Ce}from"./cell-link-_-mIiddP.js";import"./chunk-5FQGJX7Z-CVUXBqX6.js";import"./katex-Dc8yG8NU.js";import"./html-to-image-DKvXQkl5.js";import"./esm-DpMp6qko.js";import{n as Ie,t as Ae}from"./react-resizable-panels.browser.esm-Ctj_10o2.js";import"./name-cell-input-D6uaGwg7.js";import{t as Ee}from"./icon-32x32-ClOCJ7rj.js";import"./ws-BApgRfsy.js";import"./dist-C9XNJlLJ.js";import"./dist-fsvXrTzp.js";import"./dist-6cIjG-FS.js";import"./dist-CldbmzwA.js";import"./dist-OM63llNV.js";import"./dist-BmvOPdv_.js";import"./dist-DDGPBuw4.js";import"./dist-C4h-1T2Q.js";import"./dist-D_XLVesh.js";import"./esm-l4kcybiY.js";var Te=V(),ze=J(Z(),1),t=J(ie(),1);const Re=s=>{let e=(0,Te.c)(21),{appConfig:o}=s,{setCells:r}=te(),{sendComponentValues:x}=le(),n;e[0]===x?n=e[1]:(n=()=>(M.INSTANCE.start(x),Pe),e[0]=x,e[1]=n);let a;e[2]===Symbol.for("react.memo_cache_sentinel")?(a=[],e[2]=a):a=e[2],(0,ze.useEffect)(n,a);let i;e[3]===Symbol.for("react.memo_cache_sentinel")?(i=ae(),e[3]=i):i=e[3];let f;e[4]===r?f=e[5]:(f={autoInstantiate:!0,setCells:r,sessionId:i},e[4]=r,e[5]=f);let{connection:m}=xe(f),y=K($),b;e[6]===m.state?b=e[7]:(b=oe(m.state),e[6]=m.state,e[7]=b);let p=b,c;e[8]!==o||e[9]!==p?(c=()=>p?(0,t.jsxs)(me,{milliseconds:2e3,fallback:null,children:[(0,t.jsx)(je,{className:"mx-auto"}),(0,t.jsx)("p",{className:"text-center text-sm text-muted-foreground mt-2",children:"Connecting..."})]}):(0,t.jsx)(pe,{appConfig:o,mode:"read"}),e[8]=o,e[9]=p,e[10]=c):c=e[10];let h=c,u=o.width,l;e[11]===m?l=e[12]:(l=(0,t.jsx)(be,{connection:m,className:"sm:pt-8"}),e[11]=m,e[12]=l);let d;e[13]===h?d=e[14]:(d=h(),e[13]=h,e[14]=d);let j;return e[15]!==o.width||e[16]!==m||e[17]!==y||e[18]!==l||e[19]!==d?(j=(0,t.jsxs)(he,{connection:m,isRunning:y,width:u,children:[l,d]}),e[15]=o.width,e[16]=m,e[17]=y,e[18]=l,e[19]=d,e[20]=j):j=e[20],j};function Pe(){M.INSTANCE.stop()}var Q=V();const We=()=>{let s=(0,Q.c)(3),e=K(ee);if(!H()||!e)return null;let o;s[0]===Symbol.for("react.memo_cache_sentinel")?(o=(0,t.jsxs)("span",{children:["Static"," ",(0,t.jsx)("a",{href:Y.githubPage,target:"_blank",className:"text-(--sky-11) font-medium underline",children:"marimo"})," ","notebook - Run or edit for full interactivity"]}),s[0]=o):o=s[0];let r;return s[1]===e?r=s[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 no-print text-sm","data-testid":"static-notebook-banner",children:[o,(0,t.jsx)("span",{className:"shrink-0",children:(0,t.jsx)(Oe,{code:e})})]}),s[1]=e,s[2]=r),r};var Oe=s=>{let e=(0,Q.c)(78),{code:o}=s,r=Ce()||"notebook.py",x=r.lastIndexOf("/");x!==-1&&(r=r.slice(x+1));let n=window.location.href,a,i,f,m,y,b,p,c,h,u,l,d,j,k,_,N,g,w,v;if(e[0]!==o||e[1]!==r){let G=ve({code:o});m=we,e[21]===Symbol.for("react.memo_cache_sentinel")?(l=(0,t.jsx)(ke,{asChild:!0,children:(0,t.jsx)(F,{"data-testid":"static-notebook-dialog-trigger",variant:"outline",size:"xs",children:"Run or Edit"})}),e[21]=l):l=e[21],f=_e,i=ue,e[22]===r?u=e[23]:(u=(0,t.jsx)(ge,{children:r}),e[22]=r,e[23]=u),a=Ne,b="pt-3 text-left space-y-3",e[24]===Symbol.for("react.memo_cache_sentinel")?(p=(0,t.jsxs)("p",{children:["This is a static"," ",(0,t.jsx)("a",{href:Y.githubPage,target:"_blank",className:"text-(--sky-11) hover:underline font-medium",children:"marimo"})," ","notebook. To run interactively:"]}),e[24]=p):p=e[24];let U;e[25]===Symbol.for("react.memo_cache_sentinel")?(U=(0,t.jsx)("br",{}),e[25]=U):U=e[25],e[26]===r?c=e[27]:(c=(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[26]=r,e[27]=c),e[28]===Symbol.for("react.memo_cache_sentinel")?(h=!n.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[28]=h):h=e[28],v="pt-3 border-t border-(--sky-7)",N="text-sm text-(--sky-12) mb-2",e[29]===Symbol.for("react.memo_cache_sentinel")?(g=(0,t.jsx)("strong",{children:"Try in browser with WebAssembly:"}),e[29]=g):g=e[29],w=" ",y=G,d="_blank",j="text-(--sky-11) hover:underline break-all",k="noreferrer",_=G.slice(0,50),e[0]=o,e[1]=r,e[2]=a,e[3]=i,e[4]=f,e[5]=m,e[6]=y,e[7]=b,e[8]=p,e[9]=c,e[10]=h,e[11]=u,e[12]=l,e[13]=d,e[14]=j,e[15]=k,e[16]=_,e[17]=N,e[18]=g,e[19]=w,e[20]=v}else a=e[2],i=e[3],f=e[4],m=e[5],y=e[6],b=e[7],p=e[8],c=e[9],h=e[10],u=e[11],l=e[12],d=e[13],j=e[14],k=e[15],_=e[16],N=e[17],g=e[18],w=e[19],v=e[20];let S;e[30]!==y||e[31]!==d||e[32]!==j||e[33]!==k||e[34]!==_?(S=(0,t.jsxs)("a",{href:y,target:d,className:j,rel:k,children:[_,"..."]}),e[30]=y,e[31]=d,e[32]=j,e[33]=k,e[34]=_,e[35]=S):S=e[35];let C;e[36]!==S||e[37]!==N||e[38]!==g||e[39]!==w?(C=(0,t.jsxs)("p",{className:N,children:[g,w,S]}),e[36]=S,e[37]=N,e[38]=g,e[39]=w,e[40]=C):C=e[40];let q;e[41]===Symbol.for("react.memo_cache_sentinel")?(q=(0,t.jsx)("p",{className:"text-sm text-(--sky-12)",children:"Note: WebAssembly may not work for all notebooks. Additionally, some dependencies may not be available in the browser."}),e[41]=q):q=e[41];let I;e[42]!==C||e[43]!==v?(I=(0,t.jsxs)("div",{className:v,children:[C,q]}),e[42]=C,e[43]=v,e[44]=I):I=e[44];let A;e[45]!==a||e[46]!==b||e[47]!==p||e[48]!==c||e[49]!==h||e[50]!==I?(A=(0,t.jsxs)(a,{className:b,children:[p,c,h,I]}),e[45]=a,e[46]=b,e[47]=p,e[48]=c,e[49]=h,e[50]=I,e[51]=A):A=e[51];let E;e[52]!==i||e[53]!==u||e[54]!==A?(E=(0,t.jsxs)(i,{children:[u,A]}),e[52]=i,e[53]=u,e[54]=A,e[55]=E):E=e[55];let T;e[56]===o?T=e[57]:(T=async()=>{await Se(o),ye({title:"Copied to clipboard"})},e[56]=o,e[57]=T);let B;e[58]===Symbol.for("react.memo_cache_sentinel")?(B=(0,t.jsx)(ce,{className:"w-3 h-3 mr-2"}),e[58]=B):B=e[58];let z;e[59]===T?z=e[60]:(z=(0,t.jsxs)(F,{"data-testid":"copy-static-notebook-dialog-button",variant:"outline",size:"sm",onClick:T,children:[B,"Copy code"]}),e[59]=T,e[60]=z);let R;e[61]!==o||e[62]!==r?(R=()=>{ne(new Blob([o],{type:"text/plain"}),r)},e[61]=o,e[62]=r,e[63]=R):R=e[63];let D;e[64]===Symbol.for("react.memo_cache_sentinel")?(D=(0,t.jsx)(de,{className:"w-3 h-3 mr-2"}),e[64]=D):D=e[64];let P;e[65]===R?P=e[66]:(P=(0,t.jsxs)(F,{"data-testid":"download-static-notebook-dialog-button",variant:"outline",size:"sm",onClick:R,children:[D,"Download"]}),e[65]=R,e[66]=P);let W;e[67]!==z||e[68]!==P?(W=(0,t.jsxs)("div",{className:"flex gap-3 pt-2",children:[z,P]}),e[67]=z,e[68]=P,e[69]=W):W=e[69];let O;e[70]!==f||e[71]!==E||e[72]!==W?(O=(0,t.jsxs)(f,{children:[E,W]}),e[70]=f,e[71]=E,e[72]=W,e[73]=O):O=e[73];let L;return e[74]!==m||e[75]!==l||e[76]!==O?(L=(0,t.jsxs)(m,{children:[l,O]}),e[74]=m,e[75]=l,e[76]=O,e[77]=L):L=e[77],L},X=V(),qe=se()||H(),Be=s=>{let e=(0,X.c)(9),o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o=(0,t.jsx)(We,{}),e[0]=o):o=e[0];let r;e[1]===s.appConfig?r=e[2]:(r=(0,t.jsx)(Re,{appConfig:s.appConfig}),e[1]=s.appConfig,e[2]=r);let x;e[3]===Symbol.for("react.memo_cache_sentinel")?(x=qe&&(0,t.jsx)(De,{}),e[3]=x):x=e[3];let n;e[4]===r?n=e[5]:(n=(0,t.jsxs)(Ae,{children:[o,r,x]}),e[4]=r,e[5]=n);let a;e[6]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(re,{}),e[6]=a):a=e[6];let i;return e[7]===n?i=e[8]:(i=(0,t.jsx)(fe,{children:(0,t.jsxs)(Ie,{direction:"horizontal",autoSaveId:"marimo:chrome:v1:run1",children:[n,a]})}),e[7]=n,e[8]=i),i},De=()=>{let s=(0,X.c)(1),e;return s[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:Y.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)("img",{src:Ee,alt:"marimo",className:"h-4 w-auto"})]})}),s[0]=e):e=s[0],e},Le=Be;export{Le as default};
@@ -1 +0,0 @@
1
- import{s as n}from"./chunk-LvLJmgfZ.js";import{t as g}from"./react-BGmjiNul.js";import{t as h}from"./compiler-runtime-DeeZ7FnK.js";import{t as w}from"./jsx-runtime-ZmTK25f3.js";import{t as c}from"./cn-BKtXLv3a.js";var d=h(),f=n(g(),1),m=n(w(),1),i=f.forwardRef((t,o)=>{let a=(0,d.c)(9),e,r;a[0]===t?(e=a[1],r=a[2]):({className:e,...r}=t,a[0]=t,a[1]=e,a[2]=r);let l;a[3]===e?l=a[4]:(l=c("w-full caption-bottom text-sm",e),a[3]=e,a[4]=l);let s;return a[5]!==r||a[6]!==o||a[7]!==l?(s=(0,m.jsx)("div",{className:"w-full overflow-auto scrollbar-thin flex-1",children:(0,m.jsx)("table",{ref:o,className:l,...r})}),a[5]=r,a[6]=o,a[7]=l,a[8]=s):s=a[8],s});i.displayName="Table";var b=f.forwardRef((t,o)=>{let a=(0,d.c)(9),e,r;a[0]===t?(e=a[1],r=a[2]):({className:e,...r}=t,a[0]=t,a[1]=e,a[2]=r);let l;a[3]===e?l=a[4]:(l=c("[&_tr]:border-b bg-background",e),a[3]=e,a[4]=l);let s;return a[5]!==r||a[6]!==o||a[7]!==l?(s=(0,m.jsx)("thead",{ref:o,className:l,...r}),a[5]=r,a[6]=o,a[7]=l,a[8]=s):s=a[8],s});b.displayName="TableHeader";var N=f.forwardRef((t,o)=>{let a=(0,d.c)(9),e,r;a[0]===t?(e=a[1],r=a[2]):({className:e,...r}=t,a[0]=t,a[1]=e,a[2]=r);let l;a[3]===e?l=a[4]:(l=c("[&_tr:last-child]:border-0",e),a[3]=e,a[4]=l);let s;return a[5]!==r||a[6]!==o||a[7]!==l?(s=(0,m.jsx)("tbody",{ref:o,className:l,...r}),a[5]=r,a[6]=o,a[7]=l,a[8]=s):s=a[8],s});N.displayName="TableBody";var y=f.forwardRef((t,o)=>{let a=(0,d.c)(9),e,r;a[0]===t?(e=a[1],r=a[2]):({className:e,...r}=t,a[0]=t,a[1]=e,a[2]=r);let l;a[3]===e?l=a[4]:(l=c("bg-primary font-medium text-primary-foreground",e),a[3]=e,a[4]=l);let s;return a[5]!==r||a[6]!==o||a[7]!==l?(s=(0,m.jsx)("tfoot",{ref:o,className:l,...r}),a[5]=r,a[6]=o,a[7]=l,a[8]=s):s=a[8],s});y.displayName="TableFooter";var p=f.forwardRef((t,o)=>{let a=(0,d.c)(9),e,r;a[0]===t?(e=a[1],r=a[2]):({className:e,...r}=t,a[0]=t,a[1]=e,a[2]=r);let l;a[3]===e?l=a[4]:(l=c("border-b transition-colors bg-background hover:bg-(--slate-2) data-[state=selected]:bg-(--slate-3)",e),a[3]=e,a[4]=l);let s;return a[5]!==r||a[6]!==o||a[7]!==l?(s=(0,m.jsx)("tr",{ref:o,className:l,...r}),a[5]=r,a[6]=o,a[7]=l,a[8]=s):s=a[8],s});p.displayName="TableRow";var u=f.forwardRef((t,o)=>{let a=(0,d.c)(9),e,r;a[0]===t?(e=a[1],r=a[2]):({className:e,...r}=t,a[0]=t,a[1]=e,a[2]=r);let l;a[3]===e?l=a[4]:(l=c("h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",e),a[3]=e,a[4]=l);let s;return a[5]!==r||a[6]!==o||a[7]!==l?(s=(0,m.jsx)("th",{ref:o,className:l,...r}),a[5]=r,a[6]=o,a[7]=l,a[8]=s):s=a[8],s});u.displayName="TableHead";var x=f.forwardRef((t,o)=>{let a=(0,d.c)(9),e,r;a[0]===t?(e=a[1],r=a[2]):({className:e,...r}=t,a[0]=t,a[1]=e,a[2]=r);let l;a[3]===e?l=a[4]:(l=c("p-1.5 align-middle [&:has([role=checkbox])]:pr-0",e),a[3]=e,a[4]=l);let s;return a[5]!==r||a[6]!==o||a[7]!==l?(s=(0,m.jsx)("td",{ref:o,className:l,...r}),a[5]=r,a[6]=o,a[7]=l,a[8]=s):s=a[8],s});x.displayName="TableCell";var v=f.forwardRef((t,o)=>{let a=(0,d.c)(9),e,r;a[0]===t?(e=a[1],r=a[2]):({className:e,...r}=t,a[0]=t,a[1]=e,a[2]=r);let l;a[3]===e?l=a[4]:(l=c("mt-4 text-sm text-muted-foreground",e),a[3]=e,a[4]=l);let s;return a[5]!==r||a[6]!==o||a[7]!==l?(s=(0,m.jsx)("caption",{ref:o,className:l,...r}),a[5]=r,a[6]=o,a[7]=l,a[8]=s):s=a[8],s});v.displayName="TableCaption";export{b as a,u as i,N as n,p as o,x as r,i as t};
@@ -1 +0,0 @@
1
- import{s as de}from"./chunk-LvLJmgfZ.js";import{d as D,l as Oe,p as Be,u as ee}from"./useEvent-DO6uJBas.js";import{t as $e}from"./react-BGmjiNul.js";import{$n as Ue,Gn as Ye,Jn as Fe,Rt as Ge,Un as Je,ai as te,dn as Ke,g as Xe,hn as ce,jt as Ze,ln as Qe,m as he,t as et,un as tt,w as pe,yr as at,zt as me}from"./cells-BW_4R0Qw.js";import{t as W}from"./compiler-runtime-DeeZ7FnK.js";import{n as ot}from"./assertNever-CBU83Y6o.js";import{s as ue}from"./useLifecycle-D35CBukS.js";import{n as nt}from"./add-database-form-CqEjMrq2.js";import{n as it,x as lt}from"./ai-model-dropdown-C_l_zAXd.js";import{a as fe,d as P}from"./hotkeys-BHHWjLlp.js";import{y as st}from"./utils-DXvhzCGS.js";import{n as _,t as ye}from"./constants-B6Cb__3x.js";import{A as rt,f as dt,j as ke,w as ct}from"./config-CIrPQIbt.js";import{t as ht}from"./jsx-runtime-ZmTK25f3.js";import{r as pt,t as ae}from"./button-YC1gW_kJ.js";import{r as I}from"./requests-BsVD4CdD.js";import{t as h}from"./createLucideIcon-CnW3RofX.js";import{a as be,f as mt,i as xe,m as ut,p as we,u as ge}from"./layout-DiDoTAUA.js";import{t as je}from"./check-DdfN0k2d.js";import{a as ft,c as yt,i as kt,n as bt,r as xt,s as wt,t as gt}from"./select-V5IdpNiR.js";import{a as jt,n as ve,s as vt,t as Ct,u as Ce}from"./download-CzPV-R6Z.js";import{f as zt}from"./maps-t9yNKYA8.js";import{r as Mt}from"./useCellActionButton-BDMlZzyv.js";import{t as Wt}from"./copy-CQ15EONK.js";import{t as _t}from"./download-B9SUL40m.js";import{t as At}from"./eye-off-BhExYOph.js";import{t as St}from"./file-plus-corner-Da9I6dgU.js";import{t as Nt}from"./file-Cs1JbsV6.js";import{i as Dt,n as Pt,r as It,t as Et}from"./youtube-8p26v8EM.js";import{n as Tt,t as Ht}from"./house-DhFkiXz7.js";import{n as Lt}from"./play-BPIh-ZEU.js";import{t as qt}from"./link-BsTPF7B0.js";import{r as Rt}from"./input-pAun1m1X.js";import{t as Vt}from"./settings-DOXWMfVd.js";import{y as Ot}from"./textarea-DSR2T2ft.js";import{t as Bt}from"./square-C8Tw_XXG.js";import{t as C}from"./use-toast-rmUWldD_.js";import{t as $t}from"./tooltip-CEc2ajau.js";import{a as ze,i as Ut,r as Yt}from"./mode-BCr7l3Th.js";import{o as Ft}from"./alert-dialog-DwQffb13.js";import{a as Gt,c as Jt,i as Kt,n as Xt,r as Zt}from"./dialog-CxGKN4C_.js";import{n as oe}from"./ImperativeModal-CUbWEBci.js";import{r as Qt,t as ea}from"./share-CbPtIlnM.js";import{t as $}from"./copy-Bv2DBpIS.js";import{r as ta}from"./useRunCells-C50mliNM.js";import{a as aa}from"./cell-link-_-mIiddP.js";import{a as Me}from"./renderShortcut-DHc-p-_c.js";import{t as oa}from"./icons-BhEXrzsb.js";import{t as na}from"./links-C-GGaW8R.js";import{r as ia,t as la}from"./hooks-CpjzmBkw.js";import{t as We}from"./types-z6Sk3JCV.js";var sa=h("circle-chevron-down",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16 10-4 4-4-4",key:"894hmk"}]]),ra=h("circle-chevron-right",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m10 8 4 4-4 4",key:"1wy4r4"}]]),_e=h("clipboard-copy",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]]),Ae=h("command",[["path",{d:"M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3",key:"11bfej"}]]),Se=h("diamond-plus",[["path",{d:"M12 8v8",key:"napkw2"}],["path",{d:"M2.7 10.3a2.41 2.41 0 0 0 0 3.41l7.59 7.59a2.41 2.41 0 0 0 3.41 0l7.59-7.59a2.41 2.41 0 0 0 0-3.41L13.7 2.71a2.41 2.41 0 0 0-3.41 0z",key:"1ey20j"}],["path",{d:"M8 12h8",key:"1wcyev"}]]),da=h("fast-forward",[["path",{d:"M12 6a2 2 0 0 1 3.414-1.414l6 6a2 2 0 0 1 0 2.828l-6 6A2 2 0 0 1 12 18z",key:"b19h5q"}],["path",{d:"M2 6a2 2 0 0 1 3.414-1.414l6 6a2 2 0 0 1 0 2.828l-6 6A2 2 0 0 1 2 18z",key:"h7h5ge"}]]),ca=h("files",[["path",{d:"M15 2h-4a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V8",key:"14sh0y"}],["path",{d:"M16.706 2.706A2.4 2.4 0 0 0 15 2v5a1 1 0 0 0 1 1h5a2.4 2.4 0 0 0-.706-1.706z",key:"1970lx"}],["path",{d:"M5 7a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 1.732-1",key:"l4dndm"}]]),ha=h("keyboard",[["path",{d:"M10 8h.01",key:"1r9ogq"}],["path",{d:"M12 12h.01",key:"1mp3jc"}],["path",{d:"M14 8h.01",key:"1primd"}],["path",{d:"M16 12h.01",key:"1l6xoz"}],["path",{d:"M18 8h.01",key:"emo2bl"}],["path",{d:"M6 8h.01",key:"x9i8wu"}],["path",{d:"M7 16h10",key:"wp8him"}],["path",{d:"M8 12h.01",key:"czm47f"}],["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}]]),Ne=h("layout-template",[["rect",{width:"18",height:"7",x:"3",y:"3",rx:"1",key:"f1a2em"}],["rect",{width:"9",height:"7",x:"3",y:"14",rx:"1",key:"jqznyg"}],["rect",{width:"5",height:"7",x:"16",y:"14",rx:"1",key:"q5h2i8"}]]),pa=h("list",[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]]),ma=h("panel-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]]),De=h("presentation",[["path",{d:"M2 3h20",key:"91anmk"}],["path",{d:"M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3",key:"2k9sn8"}],["path",{d:"m7 21 5-5 5 5",key:"bip4we"}]]),ua=h("share-2",[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]]),fa=h("square-power",[["path",{d:"M12 7v4",key:"xawao1"}],["path",{d:"M7.998 9.003a5 5 0 1 0 8-.005",key:"1pek45"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}]]),Pe=h("undo-2",[["path",{d:"M9 14 4 9l5-5",key:"102s5s"}],["path",{d:"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11",key:"f3b9sd"}]]),Ie=W(),ne=de($e(),1),a=de(ht(),1),U="https://static.marimo.app";const ya=e=>{let t=(0,Ie.c)(25),{onClose:n}=e,[o,l]=(0,ne.useState)(""),{exportAsHTML:r}=I(),s=`${o}-${Math.random().toString(36).slice(2,6)}`,i=`${U}/static/${s}`,d;t[0]!==r||t[1]!==n||t[2]!==s?(d=async v=>{v.preventDefault(),n();let A=await r({download:!1,includeCode:!0,files:mt.INSTANCE.filenames()}),z=C({title:"Uploading static notebook...",description:"Please wait."});await fetch(`${U}/api/static`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({html:A,path:s})}).catch(()=>{z.dismiss(),C({title:"Error uploading static page",description:(0,a.jsxs)("div",{children:["Please try again later. If the problem persists, please file a bug report on"," ",(0,a.jsx)("a",{href:_.issuesPage,target:"_blank",className:"underline",children:"GitHub"}),"."]})})}),z.dismiss(),C({title:"Static page uploaded!",description:(0,a.jsxs)("div",{children:["The URL has been copied to your clipboard.",(0,a.jsx)("br",{}),"You can share it with anyone."]})})},t[0]=r,t[1]=n,t[2]=s,t[3]=d):d=t[3];let p;t[4]===Symbol.for("react.memo_cache_sentinel")?(p=(0,a.jsx)(Jt,{children:"Share static notebook"}),t[4]=p):p=t[4];let w;t[5]===Symbol.for("react.memo_cache_sentinel")?(w=(0,a.jsxs)(Gt,{children:[p,(0,a.jsxs)(Zt,{children:["You can publish a static, non-interactive version of this notebook to the public web. We will create a link for you that lives on"," ",(0,a.jsx)("a",{href:U,target:"_blank",children:U}),"."]})]}),t[5]=w):w=t[5];let g;t[6]===Symbol.for("react.memo_cache_sentinel")?(g=v=>{l(v.target.value.toLowerCase().replaceAll(/\s/g,"-").replaceAll(/[^\da-z-]/g,""))},t[6]=g):g=t[6];let m;t[7]===o?m=t[8]:(m=(0,a.jsx)(Rt,{"data-testid":"slug-input",id:"slug",autoFocus:!0,value:o,placeholder:"Notebook slug",onChange:g,required:!0,autoComplete:"off"}),t[7]=o,t[8]=m);let u;t[9]===i?u=t[10]:(u=(0,a.jsxs)("div",{className:"font-semibold text-sm text-muted-foreground gap-2 flex flex-col",children:["Anyone will be able to access your notebook at this URL:",(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(ka,{text:i}),(0,a.jsx)("span",{className:"text-primary",children:i})]})]}),t[9]=i,t[10]=u);let f;t[11]!==m||t[12]!==u?(f=(0,a.jsxs)("div",{className:"flex flex-col gap-6 py-4",children:[m,u]}),t[11]=m,t[12]=u,t[13]=f):f=t[13];let y;t[14]===n?y=t[15]:(y=(0,a.jsx)(ae,{"data-testid":"cancel-share-static-notebook-button",variant:"secondary",onClick:n,children:"Cancel"}),t[14]=n,t[15]=y);let k;t[16]===i?k=t[17]:(k=(0,a.jsx)(ae,{"data-testid":"share-static-notebook-button","aria-label":"Save",variant:"default",type:"submit",onClick:async()=>{await $(i)},children:"Create"}),t[16]=i,t[17]=k);let b;t[18]!==y||t[19]!==k?(b=(0,a.jsxs)(Kt,{children:[y,k]}),t[18]=y,t[19]=k,t[20]=b):b=t[20];let j;return t[21]!==d||t[22]!==b||t[23]!==f?(j=(0,a.jsx)(Xt,{className:"w-fit",children:(0,a.jsxs)("form",{onSubmit:d,children:[w,f,b]})}),t[21]=d,t[22]=b,t[23]=f,t[24]=j):j=t[24],j};var ka=e=>{let t=(0,Ie.c)(8),[n,o]=ne.useState(!1),l;t[0]===e.text?l=t[1]:(l=pt.stopPropagation(async p=>{p.preventDefault(),await $(e.text),o(!0),setTimeout(()=>o(!1),2e3)}),t[0]=e.text,t[1]=l);let r=l,s;t[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,a.jsx)(Wt,{size:14,strokeWidth:1.5}),t[2]=s):s=t[2];let i;t[3]===r?i=t[4]:(i=(0,a.jsx)(ae,{"data-testid":"copy-static-notebook-url-button",onClick:r,size:"xs",variant:"secondary",children:s}),t[3]=r,t[4]=i);let d;return t[5]!==n||t[6]!==i?(d=(0,a.jsx)($t,{content:"Copied!",open:n,children:i}),t[5]=n,t[6]=i,t[7]=d):d=t[7],d},ba=W();function xa(){let e=document.getElementsByClassName(ye.outputArea);for(let t of e){let n=t.getBoundingClientRect();if(n.bottom>0&&n.top<window.innerHeight){let o=te.findElement(t);if(!o){P.warn("Could not find HTMLCellId for visible output area",t);continue}return{cellId:te.parse(o.id)}}}return P.warn("No visible output area found for scroll anchor"),null}function wa(e){if(!e){P.warn("No scroll anchor provided to restore scroll position");return}let t=document.getElementById(te.create(e.cellId));if(!t){P.warn("Could not find cell element to restore scroll position",e.cellId);return}if(!t.querySelector(`.${ye.outputArea}`)){P.warn("Could not find output area to restore scroll position",e.cellId);return}t.scrollIntoView({block:"start",behavior:"auto"})}function Ee(){let e=(0,ba.c)(2),t=D(ze),n;return e[0]===t?n=e[1]:(n=()=>{let o=xa();t(l=>({mode:Ut(l.mode),cellAnchor:(o==null?void 0:o.cellId)??null})),requestAnimationFrame(()=>{requestAnimationFrame(()=>{wa(o)})})},e[0]=t,e[1]=n),n}const Te=Be(!1);var ga=W();const ja=()=>{let e=(0,ga.c)(7),{selectedLayout:t}=be(),{setLayoutView:n}=xe();if(ke()&&!ce("wasm_layouts"))return null;let o;e[0]===n?o=e[1]:(o=i=>n(i),e[0]=n,e[1]=o);let l;e[2]===Symbol.for("react.memo_cache_sentinel")?(l=(0,a.jsx)(wt,{className:"min-w-[110px] border-border bg-background","data-testid":"layout-select",children:(0,a.jsx)(yt,{placeholder:"Select a view"})}),e[2]=l):l=e[2];let r;e[3]===Symbol.for("react.memo_cache_sentinel")?(r=(0,a.jsx)(bt,{children:(0,a.jsxs)(xt,{children:[(0,a.jsx)(ft,{children:"View as"}),We.map(Ca)]})}),e[3]=r):r=e[3];let s;return e[4]!==t||e[5]!==o?(s=(0,a.jsxs)(gt,{"data-testid":"layout-select",value:t,onValueChange:o,children:[l,r]}),e[4]=t,e[5]=o,e[6]=s):s=e[6],s};function va(e){return(0,a.jsx)(He(e),{className:"h-4 w-4"})}function He(e){switch(e){case"vertical":return pa;case"grid":return It;case"slides":return De;default:return ot(e),Bt}}function Le(e){return ue(e)}function Ca(e){return(0,a.jsx)(kt,{value:e,children:(0,a.jsxs)("div",{className:"flex items-center gap-1.5 leading-5",children:[va(e),(0,a.jsx)("span",{children:Le(e)})]})},e)}var za=W();function Ma(e){let t=(0,za.c)(5),{openPrompt:n,closeModal:o}=oe(),{sendCopy:l}=I(),r;return t[0]!==o||t[1]!==n||t[2]!==l||t[3]!==e?(r=()=>{if(!e)return null;let s=Ge.guessDeliminator(e);n({title:"Copy notebook",description:"Enter a new filename for the notebook copy.",defaultValue:`_${me.basename(e)}`,confirmText:"Copy notebook",spellCheck:!1,onConfirm:i=>{let d=s.join(me.dirname(e),i);l({source:e,destination:d}).then(()=>{o(),C({title:"Notebook copied",description:"A copy of the notebook has been created."}),na(d)})}})},t[0]=o,t[1]=n,t[2]=l,t[3]=e,t[4]=r):r=t[4],r}const Wa=()=>{let{updateCellConfig:e}=pe(),{saveCellConfig:t}=I();return(0,ne.useCallback)(async()=>{let n=new Ze,o=he(),l=o.cellIds.inOrderIds,r={};for(let i of l){if(o.cellData[i]===void 0)continue;let{code:d,config:p}=o.cellData[i];p.hide_code||n.isSupported(d)&&(r[i]={hide_code:!0})}let s=fe.entries(r);if(s.length!==0){await t({configs:r});for(let[i,d]of s)e({cellId:i,config:d})}},[e])};var _a=W();function qe(){let e=(0,_a.c)(4),{openConfirm:t}=oe(),n=D(ct),{sendRestart:o}=I(),l;return e[0]!==t||e[1]!==o||e[2]!==n?(l=()=>{t({title:"Restart Kernel",description:"This will restart the Python kernel. You'll lose all data that's in memory. You will also lose any unsaved changes, so make sure to save your work before restarting.",variant:"destructive",confirmAction:(0,a.jsx)(Ft,{onClick:async()=>{n({state:rt.CLOSING}),await o(),Qt()},"aria-label":"Confirm Restart",children:"Restart"})})},e[0]=t,e[1]=o,e[2]=n,e[3]=l):l=e[3],l}var Aa=W(),E=e=>{e==null||e.preventDefault(),e==null||e.stopPropagation()};function Sa(){var se,re;let e=(0,Aa.c)(40),t=aa(),{openModal:n,closeModal:o}=oe(),{toggleApplication:l}=Qe(),{selectedPanel:r}=tt(),[s]=Oe(ze),i=ee(Yt),d=Wa(),[p]=st(),{updateCellConfig:w,undoDeleteCell:g,clearAllCellOutputs:m,addSetupCellIfDoesntExist:u,collapseAllCells:f,expandAllCells:y}=pe(),k=qe(),b=ta(),j=Ma(t),v=D(Te),A=D(it),z=D(lt),{exportAsMarkdown:Y,readCode:S,saveCellConfig:F,updateCellOutputs:G}=I(),J=ee(Xe),K=ee(et),{selectedLayout:X}=be(),{setLayoutView:Z}=xe(),T=Ee(),Q=ia(),H=((se=p.sharing)==null?void 0:se.html)??!0,L=((re=p.sharing)==null?void 0:re.wasm)??!0,q;e[0]===Symbol.for("react.memo_cache_sentinel")?(q=ce("server_side_pdf_export"),e[0]=q):q=e[0];let le=q,R=le||s.mode==="present",Re=Fa,V;e[1]===Symbol.for("react.memo_cache_sentinel")?(V=(0,a.jsx)(_t,{size:14,strokeWidth:1.5}),e[1]=V):V=e[1];let O;e[2]===Symbol.for("react.memo_cache_sentinel")?(O=(0,a.jsx)(we,{size:14,strokeWidth:1.5}),e[2]=O):O=e[2];let M;e[3]===t?M=e[4]:(M=async()=>{if(!t){ie();return}await ge({filename:t,includeCode:!0})},e[3]=t,e[4]=M);let B;return e[5]!==u||e[6]!==K||e[7]!==m||e[8]!==o||e[9]!==f||e[10]!==j||e[11]!==y||e[12]!==Y||e[13]!==t||e[14]!==J||e[15]!==d||e[16]!==i||e[17]!==n||e[18]!==R||e[19]!==S||e[20]!==k||e[21]!==b||e[22]!==F||e[23]!==X||e[24]!==r||e[25]!==v||e[26]!==z||e[27]!==Z||e[28]!==A||e[29]!==H||e[30]!==L||e[31]!==M||e[32]!==Q||e[33]!==l||e[34]!==T||e[35]!==g||e[36]!==w||e[37]!==G||e[38]!==s.mode?(B=[{icon:V,label:"Download",handle:E,dropdown:[{icon:O,label:"Download as HTML",handle:M},{icon:(0,a.jsx)(we,{size:14,strokeWidth:1.5}),label:"Download as HTML (exclude code)",handle:async()=>{if(!t){ie();return}await ge({filename:t,includeCode:!1})}},{icon:(0,a.jsx)(oa,{strokeWidth:1.5,style:{width:14,height:14}}),label:"Download as Markdown",handle:async()=>{let c=await Y({download:!1});ve(new Blob([c],{type:"text/plain"}),Ce.toMarkdown(document.title))}},{icon:(0,a.jsx)(ut,{size:14,strokeWidth:1.5}),label:"Download Python code",handle:async()=>{let c=await S();ve(new Blob([c.contents],{type:"text/plain"}),Ce.toPY(document.title))}},{divider:!0,icon:(0,a.jsx)(Lt,{size:14,strokeWidth:1.5}),label:"Download as PNG",disabled:s.mode!=="present",tooltip:s.mode==="present"?void 0:(0,a.jsxs)("span",{children:["Only available in app view. ",(0,a.jsx)("br",{}),"Toggle with: ",Me("global.hideCode",!1)]}),handle:Ya},{icon:(0,a.jsx)(Nt,{size:14,strokeWidth:1.5}),label:"Download as PDF",disabled:!R,tooltip:R?void 0:(0,a.jsxs)("span",{children:["Only available in app view. ",(0,a.jsx)("br",{}),"Toggle with: ",Me("global.hideCode",!1)]}),handle:async()=>{if(le){if(!t){ie();return}await vt("Downloading PDF...",async N=>{await la({takeScreenshots:()=>Q({progress:N,snappy:!1}),updateCellOutputs:G}),await Ct({filename:t,webpdf:!1})});return}let c=new Event("export-beforeprint"),x=new Event("export-afterprint");(function(){window.dispatchEvent(c),setTimeout(Ua,0),setTimeout(()=>window.dispatchEvent(x),0)})()}}]},{icon:(0,a.jsx)(ua,{size:14,strokeWidth:1.5}),label:"Share",handle:E,hidden:!H&&!L,dropdown:[{icon:(0,a.jsx)(Tt,{size:14,strokeWidth:1.5}),label:"Publish HTML to web",hidden:!H,handle:async()=>{n((0,a.jsx)(ya,{onClose:o}))}},{icon:(0,a.jsx)(qt,{size:14,strokeWidth:1.5}),label:"Create WebAssembly link",hidden:!L,handle:async()=>{await $(ea({code:(await S()).contents})),C({title:"Copied",description:"Link copied to clipboard."})}}]},{icon:(0,a.jsx)(ma,{size:14,strokeWidth:1.5}),label:"Helper panel",redundant:!0,handle:E,dropdown:Ke.flatMap(c=>{let{type:x,Icon:N,hidden:Ve}=c;return Ve?[]:{label:ue(x),rightElement:Re(r===x),icon:(0,a.jsx)(N,{size:14,strokeWidth:1.5}),handle:()=>l(x)}})},{icon:(0,a.jsx)(De,{size:14,strokeWidth:1.5}),label:"Present as",handle:E,dropdown:[{icon:s.mode==="present"?(0,a.jsx)(Ot,{size:14,strokeWidth:1.5}):(0,a.jsx)(Ne,{size:14,strokeWidth:1.5}),label:"Toggle app view",hotkey:"global.hideCode",handle:()=>{T()}},...We.map((c,x)=>{let N=He(c);return{divider:x===0,label:Le(c),icon:(0,a.jsx)(N,{size:14,strokeWidth:1.5}),rightElement:(0,a.jsx)("div",{className:"w-8 flex justify-end",children:X===c&&(0,a.jsx)(je,{size:14})}),handle:()=>{Z(c),s.mode==="edit"&&T()}}})]},{icon:(0,a.jsx)(ca,{size:14,strokeWidth:1.5}),label:"Duplicate notebook",hidden:!t||ke(),handle:j},{icon:(0,a.jsx)(_e,{size:14,strokeWidth:1.5}),label:"Copy code to clipboard",hidden:!t,handle:async()=>{await $((await S()).contents),C({title:"Copied",description:"Code copied to clipboard."})}},{icon:(0,a.jsx)(Mt,{size:14,strokeWidth:1.5}),label:"Enable all cells",hidden:!J||i,handle:async()=>{let c=at(he());await F({configs:fe.fromEntries(c.map($a))});for(let x of c)w({cellId:x,config:{disabled:!1}})}},{divider:!0,icon:(0,a.jsx)(Se,{size:14,strokeWidth:1.5}),label:"Add setup cell",handle:()=>{u({})}},{icon:(0,a.jsx)(Ye,{size:14,strokeWidth:1.5}),label:"Add database connection",handle:()=>{n((0,a.jsx)(nt,{onClose:o}))}},{icon:(0,a.jsx)(Pe,{size:14,strokeWidth:1.5}),label:"Undo cell deletion",hidden:!K||i,handle:()=>{g()}},{icon:(0,a.jsx)(fa,{size:14,strokeWidth:1.5}),label:"Restart kernel",variant:"danger",handle:k},{icon:(0,a.jsx)(da,{size:14,strokeWidth:1.5}),label:"Re-run all cells",redundant:!0,hotkey:"global.runAll",handle:async()=>{b()}},{icon:(0,a.jsx)(Fe,{size:14,strokeWidth:1.5}),label:"Clear all outputs",redundant:!0,handle:()=>{m()}},{icon:(0,a.jsx)(At,{size:14,strokeWidth:1.5}),label:"Hide all markdown code",handle:d,redundant:!0},{icon:(0,a.jsx)(ra,{size:14,strokeWidth:1.5}),label:"Collapse all sections",hotkey:"global.collapseAllSections",handle:f,redundant:!0},{icon:(0,a.jsx)(sa,{size:14,strokeWidth:1.5}),label:"Expand all sections",hotkey:"global.expandAllSections",handle:y,redundant:!0},{divider:!0,icon:(0,a.jsx)(Ae,{size:14,strokeWidth:1.5}),label:"Command palette",hotkey:"global.commandPalette",handle:()=>v(Ba)},{icon:(0,a.jsx)(ha,{size:14,strokeWidth:1.5}),label:"Keyboard shortcuts",hotkey:"global.showHelp",handle:()=>z(Oa)},{icon:(0,a.jsx)(Vt,{size:14,strokeWidth:1.5}),label:"User settings",handle:()=>A(Va),redundant:!0},{icon:(0,a.jsx)(zt,{size:14,strokeWidth:1.5}),label:"Resources",handle:E,dropdown:[{icon:(0,a.jsx)(Ue,{size:14,strokeWidth:1.5}),label:"Documentation",handle:Ra},{icon:(0,a.jsx)(Dt,{size:14,strokeWidth:1.5}),label:"GitHub",handle:qa},{icon:(0,a.jsx)(Pt,{size:14,strokeWidth:1.5}),label:"Discord Community",handle:La},{icon:(0,a.jsx)(Et,{size:14,strokeWidth:1.5}),label:"YouTube",handle:Ha},{icon:(0,a.jsx)(Je,{size:14,strokeWidth:1.5}),label:"Changelog",handle:Ta}]},{divider:!0,icon:(0,a.jsx)(Ht,{size:14,strokeWidth:1.5}),label:"Return home",hidden:!location.search.includes("file"),handle:Ea},{icon:(0,a.jsx)(St,{size:14,strokeWidth:1.5}),label:"New notebook",hidden:!location.search.includes("file"),handle:Ia}].filter(Pa).map(Na),e[5]=u,e[6]=K,e[7]=m,e[8]=o,e[9]=f,e[10]=j,e[11]=y,e[12]=Y,e[13]=t,e[14]=J,e[15]=d,e[16]=i,e[17]=n,e[18]=R,e[19]=S,e[20]=k,e[21]=b,e[22]=F,e[23]=X,e[24]=r,e[25]=v,e[26]=z,e[27]=Z,e[28]=A,e[29]=H,e[30]=L,e[31]=M,e[32]=Q,e[33]=l,e[34]=T,e[35]=g,e[36]=w,e[37]=G,e[38]=s.mode,e[39]=B):B=e[39],B}function Na(e){return e.dropdown?{...e,dropdown:e.dropdown.filter(Da)}:e}function Da(e){return!e.hidden}function Pa(e){return!e.hidden}function Ia(){let e=dt();window.open(e,"_blank")}function Ea(){let e=document.baseURI.split("?")[0];window.open(e,"_self")}function Ta(){window.open(_.releasesPage,"_blank")}function Ha(){window.open(_.youtube,"_blank")}function La(){window.open(_.discordLink,"_blank")}function qa(){window.open(_.githubPage,"_blank")}function Ra(){window.open(_.docsPage,"_blank")}function Va(e){return!e}function Oa(e){return!e}function Ba(e){return!e}function $a(e){return[e,{disabled:!1}]}function Ua(){return window.print()}async function Ya(){let e=document.getElementById("App");e&&await jt({element:e,filename:document.title})}function Fa(e){return(0,a.jsx)("div",{className:"w-8 flex justify-end",children:e&&(0,a.jsx)(je,{size:14})})}function ie(){C({title:"Error",description:"Notebooks must be named to be exported.",variant:"danger"})}export{Ee as a,Se as c,Te as i,Ae as l,qe as n,Pe as o,ja as r,Ne as s,Sa as t,_e as u};