@marimo-team/frontend 0.24.3-dev81 → 0.24.3-dev83

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 (147) hide show
  1. package/dist/assets/{ConnectedDataExplorerComponent-DkTZ7AvX.js → ConnectedDataExplorerComponent-BpquZl-D.js} +1 -1
  2. package/dist/assets/{ErrorBoundary-DTpbqvzY.js → ErrorBoundary-BQqmHnXk.js} +2 -2
  3. package/dist/assets/{LazyAnyLanguageCodeMirror-DYsZfkSk.js → LazyAnyLanguageCodeMirror-CvxfNkWH.js} +2 -2
  4. package/dist/assets/{RunButton-IMtEkRXV.js → RunButton-DNkIh9-L.js} +8 -8
  5. package/dist/assets/{abnfDiagram-VCTEODGH-pTFf_XLR.js → abnfDiagram-VCTEODGH-CnUMzJx3.js} +1 -1
  6. package/dist/assets/add-cell-with-ai-BMP2uVIa.js +76 -0
  7. package/dist/assets/{agent-panel-DxU4qgxk.js → agent-panel-45n6y1yx.js} +5 -5
  8. package/dist/assets/ai-model-dropdown-DHCy-cih.js +3 -0
  9. package/dist/assets/{any-language-editor-DBp5CC3w.js → any-language-editor-C4RQC2Cx.js} +1 -1
  10. package/dist/assets/{app-config-button-BjxXAmKd.js → app-config-button-_8eL7EEp.js} +1 -1
  11. package/dist/assets/{architectureDiagram-5GKGNRK7-C7t0AR-N.js → architectureDiagram-5GKGNRK7-bfcUxn_j.js} +1 -1
  12. package/dist/assets/arrow-down-BFFrjzad.js +1 -0
  13. package/dist/assets/{blockDiagram-I7D4REHJ-DZgXohrV.js → blockDiagram-I7D4REHJ-BpF8yI-R.js} +1 -1
  14. package/dist/assets/{cache-panel-DDlfv8BP.js → cache-panel-BR4yhYeu.js} +1 -1
  15. package/dist/assets/cells-BcQ8Tm3j.js +220 -0
  16. package/dist/assets/{chat-display-CHxh_MGC.js → chat-display-C_qIajXO.js} +1 -1
  17. package/dist/assets/{chat-panel-Ca6yjxkg.js → chat-panel-DZ_Wgf9u.js} +3 -3
  18. package/dist/assets/{chat-ui-D5zW1hYM.js → chat-ui-BrP572Cm.js} +1 -1
  19. package/dist/assets/{chunk-IMKFNOWR-CAmhQu-F.js → chunk-IMKFNOWR-C-rPN2GF.js} +1 -1
  20. package/dist/assets/{chunk-SHT3W25Y-BqEFXoRq.js → chunk-SHT3W25Y-P5kn0hWZ.js} +1 -1
  21. package/dist/assets/{chunk-SVP7TREG-Dxu0eRzD.js → chunk-SVP7TREG-BDSmMBZT.js} +1 -1
  22. package/dist/assets/{chunk-TICWLB2K-gHNMAWa9.js → chunk-TICWLB2K-D3dtJ1vz.js} +1 -1
  23. package/dist/assets/{classDiagram-ZZMXUADV-DE3i3SzX.js → classDiagram-ZZMXUADV-DHIDyAFc.js} +1 -1
  24. package/dist/assets/{classDiagram-v2-VYDZK3BY-DE3i3SzX.js → classDiagram-v2-VYDZK3BY-DHIDyAFc.js} +1 -1
  25. package/dist/assets/{code-visibility-kUtIY_sH.js → code-visibility-DB0T__on.js} +1 -1
  26. package/dist/assets/{command-palette-BZJRR34P.js → command-palette-DvYu24TH.js} +1 -1
  27. package/dist/assets/{common-DtiDLSXB.js → common-C53kupuv.js} +1 -1
  28. package/dist/assets/{components-DScgyZ8j.js → components-BrsyCK82.js} +1 -1
  29. package/dist/assets/{components-CHh1MGbL.js → components-BuvKvfSS.js} +1 -1
  30. package/dist/assets/config-CmBpjGXk.js +1 -0
  31. package/dist/assets/{cynefinDiagram-5FMLGOSQ-C8RK-PLH.js → cynefinDiagram-5FMLGOSQ-CYdbFzEV.js} +1 -1
  32. package/dist/assets/{dagre-GXQ25YYZ-DZ6JGcBM.js → dagre-GXQ25YYZ-CSEPMX9I.js} +1 -1
  33. package/dist/assets/dagre-SOh4Qguh.js +1 -0
  34. package/dist/assets/{data-grid-overlay-editor-BkZfO-uG.js → data-grid-overlay-editor-ierQMJA6.js} +1 -1
  35. package/dist/assets/dependency-graph-panel-DBaLCinF.js +5 -0
  36. package/dist/assets/{diagram-S7CK7UJ4-BN77DDKM.js → diagram-S7CK7UJ4-D5YIr9T4.js} +1 -1
  37. package/dist/assets/{diagram-UQ7AKVKN-BZthP0T4.js → diagram-UQ7AKVKN-uqarxJJM.js} +1 -1
  38. package/dist/assets/{diagram-VX7I27RA-D3GF3lRq.js → diagram-VX7I27RA-HcvMY8pK.js} +1 -1
  39. package/dist/assets/{diagram-Z3DM3KII-DnsKITpy.js → diagram-Z3DM3KII-fJYqqcs8.js} +1 -1
  40. package/dist/assets/{documentation-panel-D8fz9UDV.js → documentation-panel-LhtR1Gdz.js} +1 -1
  41. package/dist/assets/{ebnfDiagram-PWID7BFC-CHqqdhbQ.js → ebnfDiagram-PWID7BFC-z1dFbGgp.js} +1 -1
  42. package/dist/assets/edit-page-B28h9Fb6.js +176 -0
  43. package/dist/assets/{erDiagram-RLTQ6QDP-ChDyfc3w.js → erDiagram-RLTQ6QDP-D0QTGZaN.js} +1 -1
  44. package/dist/assets/{error-entries-Dy7E9tUS.js → error-entries-C-LFkdXb.js} +1 -1
  45. package/dist/assets/{error-panel-FYd4Tvsc.js → error-panel-JrTKWez-.js} +1 -1
  46. package/dist/assets/{feedback-button-Zjt-Mi38.js → feedback-button-CXZUuGO0.js} +2 -2
  47. package/dist/assets/file-explorer-panel-0uckfsy9.js +1 -0
  48. package/dist/assets/{file-name-input-DifonhZ7.js → file-name-input-B1oP4qI1.js} +1 -1
  49. package/dist/assets/{flowDiagram-HODETNUW-CelwDl0Y.js → flowDiagram-HODETNUW-CvnIcAyp.js} +1 -1
  50. package/dist/assets/{gallery-page-C0T1oyzr.js → gallery-page-Dr6gmPct.js} +1 -1
  51. package/dist/assets/{glide-data-editor-Dqd-if6R.js → glide-data-editor-BdNlPATo.js} +4 -4
  52. package/dist/assets/{graphlib-6_f7N0YM.js → graphlib-coUtpRhg.js} +1 -1
  53. package/dist/assets/has-HvSiby4C.js +1 -0
  54. package/dist/assets/home-page-DU_vk7YP.js +4 -0
  55. package/dist/assets/index-C0mx13kv.css +2 -0
  56. package/dist/assets/index-anJECncb.js +62 -0
  57. package/dist/assets/{infoDiagram-27XIBGKW-Dh0ztpYZ.js → infoDiagram-27XIBGKW-B-ESiKKL.js} +1 -1
  58. package/dist/assets/{ishikawaDiagram-5VMMS53U-Yy11Lj-8.js → ishikawaDiagram-5VMMS53U-958453Qs.js} +1 -1
  59. package/dist/assets/{kanban-definition-UXKFOSKX-_hCm9ITM.js → kanban-definition-UXKFOSKX-Cl3MvgdV.js} +1 -1
  60. package/dist/assets/{logs-panel-D_Ki0PRi.js → logs-panel-B6dW8QcS.js} +1 -1
  61. package/dist/assets/{mermaid-DUZOkwYg.js → mermaid-Dk7Zo_kD.js} +4 -4
  62. package/dist/assets/{mindmap-definition-YA3MSWOX-CqKVab9Z.js → mindmap-definition-YA3MSWOX-ObRzpp8l.js} +1 -1
  63. package/dist/assets/{number-overlay-editor-BFwgibS5.js → number-overlay-editor-BaA6YHpZ.js} +1 -1
  64. package/dist/assets/{outline-panel-BVLrHsJa.js → outline-panel-AF6eqkBP.js} +1 -1
  65. package/dist/assets/packages-panel-DnQBjrbw.js +1 -0
  66. package/dist/assets/panel-context-BPaQeOuV.js +1 -0
  67. package/dist/assets/panels-Gl9xHiUG.js +33 -0
  68. package/dist/assets/{pegDiagram-XKGWAZYB-Cq-QrQFc.js → pegDiagram-XKGWAZYB-Dr1N-uz9.js} +1 -1
  69. package/dist/assets/{pieDiagram-E7YTZNPT-DXU0ndOt.js → pieDiagram-E7YTZNPT-CuOB3ooB.js} +1 -1
  70. package/dist/assets/{process-output-B76bPsnA.js → process-output-dY19eMY7.js} +1 -1
  71. package/dist/assets/{railroadDiagram-O6MQD6OU-CFI_pgSK.js → railroadDiagram-O6MQD6OU-B-2q9lGc.js} +1 -1
  72. package/dist/assets/{requirementDiagram-BXWQKSXE-DgdygEWz.js → requirementDiagram-BXWQKSXE-DDO3d-q-.js} +1 -1
  73. package/dist/assets/{reveal-component-BqiZOsW3.js → reveal-component-CVZuomdL.js} +3 -3
  74. package/dist/assets/run-page-q9RV38Se.js +1 -0
  75. package/dist/assets/scratchpad-panel-CB7Fy9xQ.js +1 -0
  76. package/dist/assets/scroll-to-bottom-button-BSCkDXet.js +1 -0
  77. package/dist/assets/{secrets-panel-CeovmJAu.js → secrets-panel-fyK3DrMo.js} +1 -1
  78. package/dist/assets/{sequenceDiagram-WJ2MYXX4-Cq7P3SPg.js → sequenceDiagram-WJ2MYXX4-09ej9W_c.js} +1 -1
  79. package/dist/assets/session-panel-CQR7EQYe.js +1 -0
  80. package/dist/assets/snippets-panel-C8pCQY6-.js +1 -0
  81. package/dist/assets/{stateDiagram-D77RDMKH-CO8GuJdh.js → stateDiagram-D77RDMKH-Dwreh_3X.js} +1 -1
  82. package/dist/assets/{stateDiagram-v2-MP3YSRHH-DA7CflqT.js → stateDiagram-v2-MP3YSRHH-CYctHUHC.js} +1 -1
  83. package/dist/assets/{swimlanes-42K2YHIH-Bkf4BWja.js → swimlanes-42K2YHIH-CqtUaFZN.js} +1 -1
  84. package/dist/assets/{swimlanesDiagram-VR7AAH4N-Bf0FHwi-.js → swimlanesDiagram-VR7AAH4N-BTvyGqcs.js} +1 -1
  85. package/dist/assets/{swiper-component-Dcb47cI1.js → swiper-component-BPjhKuFC.js} +1 -1
  86. package/dist/assets/{terminal-bvd8BLSi.js → terminal-CWmhjUVd.js} +2 -2
  87. package/dist/assets/{timeline-definition-24CTP7MA-CWdT681e.js → timeline-definition-24CTP7MA-DESfjZe6.js} +1 -1
  88. package/dist/assets/tracing-DHQdLJrw.js +1 -0
  89. package/dist/assets/{tracing-panel-AQUl8b58.js → tracing-panel-DkDpfzxp.js} +2 -2
  90. package/dist/assets/{useCellActionButton-DIiKKxoN.js → useCellActionButton-JBMxiVrN.js} +1 -1
  91. package/dist/assets/{vega-component-C5LY21OO.js → vega-component-C3dIfNSQ.js} +1 -1
  92. package/dist/assets/{vega-embed-container-C6Hr9CZj.js → vega-embed-container-DRnOQFW3.js} +1 -1
  93. package/dist/assets/{vennDiagram-4TSXK5OY-B3uJF3gV.js → vennDiagram-4TSXK5OY-DVP0MtbH.js} +1 -1
  94. package/dist/assets/{wardleyDiagram-VM6X3IG4-DGmcLh5J.js → wardleyDiagram-VM6X3IG4-Boyg2AlL.js} +1 -1
  95. package/dist/assets/{xychartDiagram-S5SC5T6Z-kFxqIAk2.js → xychartDiagram-S5SC5T6Z-6MNoagFi.js} +1 -1
  96. package/dist/index.html +6 -6
  97. package/package.json +1 -1
  98. package/src/components/editor/alerts/__tests__/connection-notice.test.tsx +186 -0
  99. package/src/components/editor/alerts/__tests__/startup-progress.test.tsx +185 -0
  100. package/src/components/editor/alerts/connection-notice.tsx +100 -54
  101. package/src/components/editor/alerts/startup-output.tsx +173 -0
  102. package/src/components/editor/alerts/startup-progress.tsx +204 -0
  103. package/src/components/editor/chrome/panels/__tests__/packages-panel.test.tsx +53 -4
  104. package/src/components/editor/chrome/panels/__tests__/sandbox-details.test.tsx +358 -0
  105. package/src/components/editor/chrome/panels/__tests__/sandbox-recovery.test.tsx +5 -2
  106. package/src/components/editor/chrome/panels/packages-panel.tsx +32 -21
  107. package/src/components/editor/chrome/panels/sandbox-details-state.ts +38 -0
  108. package/src/components/editor/chrome/panels/sandbox-panel.tsx +188 -131
  109. package/src/components/editor/chrome/panels/sandbox-toggle.tsx +52 -0
  110. package/src/components/editor/chrome/wrapper/app-chrome.tsx +7 -0
  111. package/src/components/editor/package-alert.tsx +112 -66
  112. package/src/core/alerts/__tests__/environment.test.ts +183 -0
  113. package/src/core/alerts/__tests__/state.test.tsx +240 -0
  114. package/src/core/alerts/environment.ts +57 -0
  115. package/src/core/alerts/state.ts +155 -99
  116. package/src/core/islands/bootstrap.ts +2 -1
  117. package/src/core/kernel/messages.ts +2 -2
  118. package/src/core/network/connection-notice.ts +45 -12
  119. package/src/core/network/connection.ts +19 -0
  120. package/src/core/network/useConnectionNotice.ts +53 -0
  121. package/src/core/packages/__tests__/useSandboxController.test.tsx +86 -5
  122. package/src/core/packages/sandbox-state.ts +56 -4
  123. package/src/core/packages/useSandboxController.ts +27 -7
  124. package/src/core/websocket/__tests__/useMarimoKernelConnection.hook.test.tsx +199 -8
  125. package/src/core/websocket/types.ts +1 -1
  126. package/src/core/websocket/useMarimoKernelConnection.tsx +31 -19
  127. package/src/stories/sandbox.stories.tsx +230 -50
  128. package/dist/assets/add-cell-with-ai-CSNC0MIy.js +0 -76
  129. package/dist/assets/ai-model-dropdown-Ct4CTWKe.js +0 -3
  130. package/dist/assets/cells-C0itXtA7.js +0 -220
  131. package/dist/assets/config-CBLBAU5c.js +0 -1
  132. package/dist/assets/dagre-Be6hV3Qt.js +0 -1
  133. package/dist/assets/dependency-graph-panel-DhGTFsO9.js +0 -5
  134. package/dist/assets/edit-page-Cw1A5Rhq.js +0 -176
  135. package/dist/assets/file-explorer-panel-BpklXFSu.js +0 -1
  136. package/dist/assets/has-D5vyh6J_.js +0 -1
  137. package/dist/assets/home-page-CN05bwXu.js +0 -4
  138. package/dist/assets/index-B8OSEJVD.css +0 -2
  139. package/dist/assets/index-CcaMC2ZX.js +0 -62
  140. package/dist/assets/packages-panel-cq-qnvM5.js +0 -1
  141. package/dist/assets/panels-DwxpnIFf.js +0 -33
  142. package/dist/assets/run-page-DVqnr-8x.js +0 -1
  143. package/dist/assets/scratchpad-panel-BT2lF-Gs.js +0 -1
  144. package/dist/assets/scroll-to-bottom-button-D4qWtyN8.js +0 -1
  145. package/dist/assets/session-panel-CGddxX8c.js +0 -1
  146. package/dist/assets/snippets-panel-UawnfExC.js +0 -1
  147. package/dist/assets/tracing-BbV840Cl.js +0 -1
@@ -1 +0,0 @@
1
- import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{c as t,f as n,l as r}from"./useEvent-Dc9HkKI2.js";import{t as i}from"./react-CUdNIagt.js";import{D as a,La as o,g as s,lo as c,x as l}from"./cells-C0itXtA7.js";import{t as u}from"./compiler-runtime-BQ9S8nyo.js";import{w as d}from"./utils-B3E7otfg.js";import{n as f}from"./constants-BDbGiS7O.js";import{_ as p,l as m,p as h,w as g}from"./config-CBLBAU5c.js";import{t as _}from"./cn-ldLVeaqm.js";import{t as v}from"./jsx-runtime-B74pBk57.js";import{a as y,c as b,i as x,l as S,n as C,s as w,t as T}from"./alert-dialog-CeE3i3Qa.js";import{n as E,t as D}from"./button-BoklZTGL.js";import{n as O}from"./paths-CzfpItSz.js";import{$ as k,a as A,d as j,f as M,n as N,o as P,ot as F,q as I,rt as L,t as ee}from"./panels-DwxpnIFf.js";import{t as R}from"./copy-RyCOE8jo.js";import{Gt as z,Ut as te,Wt as ne,Xt as re,Zt as ie,qt as ae}from"./input-BDakodZ2.js";import{n as B}from"./copy-BhJktFeI.js";import{t as V}from"./use-toast-CC89xOwH.js";import{r as H}from"./requests-yTHMxhVa.js";import{t as U}from"./session-C8nQMsOE.js";import{Ci as W,In as G,Ln as K,Ma as q,Rn as J,Ti as oe,ar as se,dn as ce,ei as le,hn as ue,mn as de,ui as fe,zn as Y,zt as pe}from"./index-CcaMC2ZX.js";import{n as me}from"./code-visibility-kUtIY_sH.js";import{n as he,t as ge}from"./marimo-icons-B_1oPpIE.js";var _e=e(i(),1),X=u(),Z=v(),ve=()=>{let e=(0,X.c)(25),[n,r]=t(I);if(n===null)return null;let i;e[0]===n?i=e[1]:(i=async()=>{try{await navigator.clipboard.writeText(n),V({title:`Copied to clipboard`,description:`Error details have been copied to your clipboard.`})}catch{V({title:`Failed to copy`,description:`Could not copy to clipboard.`,variant:`danger`})}},e[0]=n,e[1]=i);let a=i,o;e[2]===r?o=e[3]:(o=()=>{r(null)},e[2]=r,e[3]=o);let s=o,l=ye,u;e[4]===s?u=e[5]:(u=e=>!e&&s(),e[4]=s,e[5]=u);let d;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,Z.jsxs)(b,{children:[(0,Z.jsxs)(S,{className:`flex items-center gap-2 text-destructive`,children:[(0,Z.jsx)(c,{className:`h-5 w-5`}),`Kernel Startup Failed`]}),(0,Z.jsx)(y,{children:`The kernel failed to start. This usually happens when the package manager can't install your notebook's dependencies.`})]}),e[6]=d):d=e[6];let f;e[7]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,Z.jsx)(`span`,{className:`text-sm font-medium text-muted-foreground`,children:`Error Details`}),e[7]=f):f=e[7];let p;e[8]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,Z.jsx)(R,{className:`h-3 w-3`}),e[8]=p):p=e[8];let m;e[9]===a?m=e[10]:(m=(0,Z.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[f,(0,Z.jsxs)(D,{variant:`outline`,size:`xs`,onClick:a,className:`flex items-center gap-1`,children:[p,`Copy`]})]}),e[9]=a,e[10]=m);let h;e[11]===n?h=e[12]:(h=(0,Z.jsx)(`pre`,{className:`bg-muted p-4 rounded-md text-sm font-mono overflow-auto max-h-80`,children:n}),e[11]=n,e[12]=h);let g;e[13]!==m||e[14]!==h?(g=(0,Z.jsxs)(`div`,{className:`my-4 overflow-hidden`,children:[m,h]}),e[13]=m,e[14]=h,e[15]=g):g=e[15];let _;e[16]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,Z.jsxs)(D,{variant:`outline`,onClick:l,className:`flex items-center gap-2`,children:[(0,Z.jsx)(L,{className:`h-4 w-4`}),`Return to Home`]}),e[16]=_):_=e[16];let v;e[17]===s?v=e[18]:(v=(0,Z.jsxs)(w,{children:[_,(0,Z.jsx)(C,{onClick:s,children:`Dismiss`})]}),e[17]=s,e[18]=v);let E;e[19]!==v||e[20]!==g?(E=(0,Z.jsxs)(x,{className:`max-w-2xl`,children:[d,g,v]}),e[19]=v,e[20]=g,e[21]=E):E=e[21];let O;return e[22]!==E||e[23]!==u?(O=(0,Z.jsx)(T,{open:!0,onOpenChange:u,children:E}),e[22]=E,e[23]=u,e[24]=O):O=e[24],O};function ye(){let e=document.baseURI.split(`?`)[0];window.open(e,`_self`)}var be=e=>{let t=(0,X.c)(2),{reason:n}=e,r;return t[0]===n?r=t[1]:(r=(0,Z.jsx)(`div`,{className:`font-mono text-center text-base text-(--red-11)`,children:(0,Z.jsx)(`p`,{children:n})}),t[0]=n,t[1]=r),r},xe=e=>{let t=(0,X.c)(7),{connection:n,className:r,children:i}=e,a;t[0]!==n.reason||t[1]!==n.state?(a=n.state===g.CLOSED&&(0,Z.jsx)(be,{reason:n.reason}),t[0]=n.reason,t[1]=n.state,t[2]=a):a=t[2];let o;return t[3]!==i||t[4]!==r||t[5]!==a?(o=(0,Z.jsxs)(`div`,{className:r,children:[i,a]}),t[3]=i,t[4]=r,t[5]=a,t[6]=o):o=t[6],o},Q=n(e=>e(s)||!h(e(p).state)),Se=e=>{let t=(0,X.c)(22),{appConfig:n,hideHeader:i}=e,{setCells:o}=a(),{sendComponentValues:s}=H(),c;t[0]===s?c=t[1]:(c=()=>(A.INSTANCE.start(s),Ce),t[0]=s,t[1]=c);let u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=[],t[2]=u):u=t[2],(0,_e.useEffect)(c,u);let d;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(d=U(),t[3]=d):d=t[3];let f;t[4]===o?f=t[5]:(f={autoInstantiate:!0,setCells:o,sessionId:d},t[4]=o,t[5]=f);let{connection:p,reconnect:m}=N(f),h=r(l),g;if(t[6]===Symbol.for(`react.memo_cache_sentinel`)){bb0:{if(typeof window>`u`){g=null;break bb0}let e=new URL(window.location.href);if(!e.searchParams.has(`file`)){g=null;break bb0}e.searchParams.delete(`file`);let t=e.searchParams.toString();g=t?`${e.pathname}?${t}`:e.pathname}t[6]=g}else g=t[6];let v=g,y;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,Z.jsx)(ve,{}),t[7]=y):y=t[7];let b=i?`hidden`:`sm:pt-8`,x;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(x=v&&(0,Z.jsx)(`div`,{className:`flex items-center px-6 pt-4 sm:-mt-8`,children:(0,Z.jsxs)(`a`,{href:v,"aria-label":`Back to gallery`,className:_(E({variant:`text`,size:`sm`}),`gap-2 px-0 text-muted-foreground hover:text-foreground`),children:[(0,Z.jsx)(F,{className:`size-4`,"aria-hidden":!0}),(0,Z.jsx)(`span`,{children:`Back`})]})}),t[8]=x):x=t[8];let S;t[9]!==p||t[10]!==b?(S=(0,Z.jsx)(xe,{connection:p,className:b,children:x}),t[9]=p,t[10]=b,t[11]=S):S=t[11];let C;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(le,{className:`mx-auto`}),(0,Z.jsx)(`p`,{className:`text-center text-sm text-muted-foreground mt-2`,children:`Connecting...`})]}),t[12]=C):C=t[12];let w;t[13]===n?w=t[14]:(w=(0,Z.jsx)(M,{requires:Q,delay:2e3,fallback:C,children:(0,Z.jsx)(P,{appConfig:n,mode:`read`})}),t[13]=n,t[14]=w);let T;return t[15]!==n.width||t[16]!==p||t[17]!==h||t[18]!==m||t[19]!==w||t[20]!==S?(T=(0,Z.jsxs)(j,{connection:p,isRunning:h,width:n.width,onReconnect:m,children:[y,S,w]}),t[15]=n.width,t[16]=p,t[17]=h,t[18]=m,t[19]=w,t[20]=S,t[21]=T):T=t[21],T};function Ce(){A.INSTANCE.stop()}var we=()=>{let e=(0,X.c)(3),t=r(o);if(!m()||!t)return null;let n;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Z.jsxs)(`span`,{children:[`Static`,` `,(0,Z.jsx)(`a`,{href:f.githubPage,target:`_blank`,className:`text-(--sky-11) font-medium underline`,children:`marimo`}),` `,`notebook - Run or edit for full interactivity`]}),e[0]=n):n=e[0];let i;return e[1]===t?i=e[2]:(i=(0,Z.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:[n,(0,Z.jsx)(`span`,{className:`shrink-0`,children:(0,Z.jsx)(Te,{code:t})})]}),e[1]=t,e[2]=i),i},Te=e=>{let t=(0,X.c)(44),{code:n}=e,r=O.basename(se()||`notebook.py`),[i]=d(),a=i.sharing?.molab??!0,o=Ee(window.location.href,r),s=o!==r,c=k(o),l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,Z.jsx)(ie,{asChild:!0,children:(0,Z.jsx)(D,{"data-testid":`static-notebook-dialog-trigger`,variant:`outline`,size:`xs`,children:`Run or Edit`})}),t[0]=l):l=t[0];let u;t[1]===r?u=t[2]:(u=(0,Z.jsx)(re,{children:r}),t[1]=r,t[2]=u);let p;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,Z.jsx)(`a`,{href:f.githubPage,target:`_blank`,className:`text-(--sky-11) hover:underline font-medium`,children:`marimo`}),t[3]=p):p=t[3];let m=s?`Run it`:`Download it, then run it`,h;t[4]===m?h=t[5]:(h=(0,Z.jsxs)(`p`,{children:[`This is a static`,` `,p,` `,`notebook. `,m,` `,`locally for full interactivity.`]}),t[4]=m,t[5]=h);let g;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,Z.jsxs)(J,{"aria-label":`Package manager`,children:[(0,Z.jsx)(Y,{value:`uv`,children:`uv`}),(0,Z.jsx)(Y,{value:`pip`,children:`pip`}),(0,Z.jsx)(Y,{value:`conda`,children:`conda`})]}),t[6]=g):g=t[6];let _=`uvx marimo edit --sandbox ${c}`,v;t[7]===_?v=t[8]:(v=(0,Z.jsx)(K,{value:`uv`,children:(0,Z.jsx)($,{command:_})}),t[7]=_,t[8]=v);let y=`pip install marimo\nmarimo edit ${c}`,b;t[9]===y?b=t[10]:(b=(0,Z.jsx)(K,{value:`pip`,children:(0,Z.jsx)($,{command:y})}),t[9]=y,t[10]=b);let x=`conda install -c conda-forge marimo\nmarimo edit ${c}`,S;t[11]===x?S=t[12]:(S=(0,Z.jsx)(K,{value:`conda`,children:(0,Z.jsx)($,{command:x})}),t[11]=x,t[12]=S);let C;t[13]!==b||t[14]!==S||t[15]!==v?(C=(0,Z.jsxs)(G,{defaultValue:`uv`,children:[g,v,b,S]}),t[13]=b,t[14]=S,t[15]=v,t[16]=C):C=t[16];let w;t[17]!==n||t[18]!==a?(w=a&&(0,Z.jsx)(De,{code:n}),t[17]=n,t[18]=a,t[19]=w):w=t[19];let T;t[20]!==C||t[21]!==w||t[22]!==h?(T=(0,Z.jsx)(z,{asChild:!0,children:(0,Z.jsxs)(`div`,{className:`pt-3 text-left space-y-3`,children:[h,C,w]})}),t[20]=C,t[21]=w,t[22]=h,t[23]=T):T=t[23];let E;t[24]!==T||t[25]!==u?(E=(0,Z.jsxs)(ae,{children:[u,T]}),t[24]=T,t[25]=u,t[26]=E):E=t[26];let A;t[27]===n?A=t[28]:(A=async()=>{await B(n),V({title:`Copied to clipboard`})},t[27]=n,t[28]=A);let j;t[29]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,Z.jsx)(R,{className:`w-3 h-3 mr-2`}),t[29]=j):j=t[29];let M;t[30]===A?M=t[31]:(M=(0,Z.jsxs)(D,{"data-testid":`copy-static-notebook-dialog-button`,variant:`outline`,size:`sm`,onClick:A,children:[j,`Copy code`]}),t[30]=A,t[31]=M);let N;t[32]!==n||t[33]!==r?(N=()=>{pe(new Blob([n],{type:`text/plain`}),r)},t[32]=n,t[33]=r,t[34]=N):N=t[34];let P;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,Z.jsx)(q,{className:`w-3 h-3 mr-2`}),t[35]=P):P=t[35];let F;t[36]===N?F=t[37]:(F=(0,Z.jsxs)(D,{"data-testid":`download-static-notebook-dialog-button`,variant:`outline`,size:`sm`,onClick:N,children:[P,`Download`]}),t[36]=N,t[37]=F);let I;t[38]!==M||t[39]!==F?(I=(0,Z.jsxs)(`div`,{className:`flex gap-3 pt-2`,children:[M,F]}),t[38]=M,t[39]=F,t[40]=I):I=t[40];let L;return t[41]!==E||t[42]!==I?(L=(0,Z.jsxs)(te,{children:[l,(0,Z.jsxs)(ne,{children:[E,I]})]}),t[41]=E,t[42]=I,t[43]=L):L=t[43],L};function Ee(e,t){let n=new URL(e);if(n.protocol!==`http:`&&n.protocol!==`https:`)return t;let r=n.pathname.endsWith(`.html`)&&n.search===``,i=n.protocol===`https:`&&(n.hostname===`marimo.app`||n.hostname===`links.marimo.app`||n.hostname===`static.marimo.app`&&n.pathname.startsWith(`/static`)||n.pathname.includes(`/notebooks/nb`));return!r&&!i?t:(n.hash=``,n.href)}var $=e=>{let t=(0,X.c)(10),{command:n}=e,r;t[0]===n?r=t[1]:(r=(0,Z.jsx)(`pre`,{className:`p-3 pr-10 font-mono text-(--sky-11) leading-relaxed whitespace-pre-wrap break-all`,children:n}),t[0]=n,t[1]=r);let i;t[2]===n?i=t[3]:(i=async()=>{await B(n),V({title:`Command copied to clipboard`})},t[2]=n,t[3]=i);let a;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Z.jsx)(R,{className:`w-3.5 h-3.5`}),t[4]=a):a=t[4];let o;t[5]===i?o=t[6]:(o=(0,Z.jsx)(D,{"aria-label":`Copy command`,className:`absolute right-2 top-2`,variant:`ghost`,size:`icon`,onClick:i,children:a}),t[5]=i,t[6]=o);let s;return t[7]!==r||t[8]!==o?(s=(0,Z.jsxs)(`div`,{className:`relative rounded-lg border bg-(--sky-2) border-(--sky-7)`,children:[r,o]}),t[7]=r,t[8]=o,t[9]=s):s=t[9],s},De=e=>{let t=(0,X.c)(8),{code:n}=e,r;t[0]===n?r=t[1]:(r=fe({code:n,baseUrl:`${f.molab}/new`}),t[0]=n,t[1]=r);let i=r,a;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Z.jsx)(he,{size:12,strokeWidth:1.5,className:`mr-1.5 mt-px text-(--grass-11)`}),t[2]=a):a=t[2];let o;t[3]===i?o=t[4]:(o=(0,Z.jsx)(D,{asChild:!0,variant:`outline`,size:`xs`,className:`shrink-0`,children:(0,Z.jsxs)(`a`,{href:i,target:`_blank`,rel:`noopener noreferrer`,children:[a,`Open in molab`]})}),t[3]=i,t[4]=o);let s;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,Z.jsxs)(`p`,{className:`text-sm text-(--sky-12)`,children:[`Run this notebook in `,(0,Z.jsx)(`span`,{className:`font-semibold`,children:`molab`}),`, marimo's cloud-hosted notebook platform.`]}),t[5]=s):s=t[5];let c;return t[6]===o?c=t[7]:(c=(0,Z.jsxs)(`div`,{className:`pt-3 border-t flex gap-2 items-center`,children:[o,s]}),t[6]=o,t[7]=c),c},Oe=e=>{let t=(0,X.c)(17),n=r(me).kind,i=n===`static`||n===`wasm`,{selectedLayout:a}=oe(),o;t[0]===a?o=t[1]:(o=W({selectedLayout:a,isReading:!0,searchParams:new URLSearchParams(window.location.search)}),t[0]=a,t[1]=o);let s=i&&o===`slides`,c;t[2]===s?c=t[3]:(c=!s&&(0,Z.jsx)(we,{}),t[2]=s,t[3]=c);let l;t[4]!==s||t[5]!==e.appConfig?(l=(0,Z.jsx)(Se,{appConfig:e.appConfig,hideHeader:s}),t[4]=s,t[5]=e.appConfig,t[6]=l):l=t[6];let u;t[7]!==i||t[8]!==s?(u=i&&!s&&(0,Z.jsx)(ke,{}),t[7]=i,t[8]=s,t[9]=u):u=t[9];let d;t[10]!==c||t[11]!==l||t[12]!==u?(d=(0,Z.jsxs)(de,{children:[c,l,u]}),t[10]=c,t[11]=l,t[12]=u,t[13]=d):d=t[13];let f;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,Z.jsx)(ce,{}),t[14]=f):f=t[14];let p;return t[15]===d?p=t[16]:(p=(0,Z.jsx)(ee,{children:(0,Z.jsxs)(ue,{direction:`horizontal`,autoSaveId:`marimo:chrome:v1:run1`,children:[d,f]})}),t[15]=d,t[16]=p),p},ke=()=>{let e=(0,X.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Z.jsx)(`div`,{className:`fixed bottom-0 right-0 z-50 print:hidden`,"data-testid":`watermark`,children:(0,Z.jsxs)(`a`,{href:f.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,Z.jsx)(`span`,{children:`made with marimo`}),(0,Z.jsx)(ge,{className:`h-4 w-auto`})]})}),e[0]=t):t=e[0],t};export{Oe as default};
@@ -1 +0,0 @@
1
- import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{c as t,f as n,l as ee,t as r,u as te}from"./useEvent-Dc9HkKI2.js";import{t as i}from"./react-CUdNIagt.js";import{D as ne,I as re,Qr as a,Rt as ie,To as o,Ua as s,wo as ae}from"./cells-C0itXtA7.js";import{t as c}from"./compiler-runtime-BQ9S8nyo.js";import{w as oe}from"./utils-B3E7otfg.js";import{_ as se}from"./useEventListener-BdZUApHd.js";import{t as ce}from"./constants-BDbGiS7O.js";import{t as le}from"./cn-ldLVeaqm.js";import{t as l}from"./jsx-runtime-B74pBk57.js";import{t as u}from"./tooltip-DR2Z2N4w.js";import{t as d}from"./button-BoklZTGL.js";import{t as f}from"./createLucideIcon-rHn2EdoM.js";import{b as ue}from"./panels-DwxpnIFf.js";import{n as de,t as fe}from"./LazyAnyLanguageCodeMirror-DYsZfkSk.js";import{c as pe}from"./RunButton-IMtEkRXV.js";import{u as me}from"./toDate-BbJ1_N2T.js";import{a as he}from"./process-output-B76bPsnA.js";import{r as ge}from"./requests-yTHMxhVa.js";import{r as _e}from"./useTheme-Ho3YdAx3.js";import{Et as ve,Mt as ye,ei as be,gn as xe,hn as Se,mn as Ce}from"./index-CcaMC2ZX.js";import{f as we,i as Te,p as Ee}from"./edit-page-Cw1A5Rhq.js";var De=f(`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`}]]),Oe=f(`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`}]]),p=e(i(),1),ke=c(),m=15,h=s(`marimo:scratchpadHistory:v1`,[],a),Ae=n(!1),je=n(null,(e,t,n)=>{if(n=n.trim(),!n)return;let ee=e(h);t(h,[n,...ee.filter(e=>e!==n)].slice(0,m))}),g=l(),Me={hide_code:!1,disabled:!1},_=()=>{let e=(0,ke.c)(60),n=re(),[i]=oe(),{theme:a}=_e(),s=(0,p.useRef)(null),c=ie(),{createNewCell:l,updateCellCode:f}=ne(),{sendRunScratchpad:m}=ge(),_=we(),v=Ee(),y=n.cellRuntime[o],b=y?.output,x=y?.status,S=y?.consoleOutputs,C=n.cellData.__scratch__?.code??``,w=te(je),[T,E]=t(Ae),D=ee(h),O;e[0]!==w||e[1]!==C||e[2]!==m?(O=()=>{m({code:C}),w(C)},e[0]=w,e[1]=C,e[2]=m,e[3]=O):O=e[3];let k=r(O),A;e[4]!==C||e[5]!==l||e[6]!==c?(A=()=>{C.trim()&&l({code:C,before:!1,cellId:c??`__end__`})},e[4]=C,e[5]=l,e[6]=c,e[7]=A):A=e[7];let j=r(A),M;e[8]!==m||e[9]!==f?(M=()=>{f({cellId:o,code:``,formattingChange:!1}),m({code:``});let e=s.current;e&&e.dispatch({changes:{from:0,to:e.state.doc.length,insert:``}})},e[8]=m,e[9]=f,e[10]=M):M=e[10];let N=r(M),P;e[11]!==E||e[12]!==f?(P=e=>{E(!1),f({cellId:o,code:e,formattingChange:!1});let t=s.current;t&&t.dispatch({changes:{from:0,to:t.state.doc.length,insert:e}})},e[11]=E,e[12]=f,e[13]=P):P=e[13];let F=r(P),[I,Ne]=(0,p.useState)(),L;e[14]!==F||e[15]!==D||e[16]!==T||e[17]!==a?(L=()=>T?(0,g.jsx)(`div`,{className:`absolute inset-0 z-100 bg-background p-3 border-none overflow-auto`,children:(0,g.jsx)(`div`,{className:`overflow-auto flex flex-col gap-3`,children:D.map((e,t)=>(0,g.jsx)(`div`,{className:`border rounded-md hover:shadow-sm cursor-pointer hover:border-input overflow-hidden`,onClick:()=>F(e),children:(0,g.jsx)(p.Suspense,{children:(0,g.jsx)(fe,{language:`python`,theme:a,basicSetup:{highlightActiveLine:!1,highlightActiveLineGutter:!1},value:e.trim(),editable:!1,readOnly:!0})})},t))})}):null,e[14]=F,e[15]=D,e[16]=T,e[17]=a,e[18]=L):L=e[18];let R=L,z;e[19]!==N||e[20]!==j||e[21]!==k||e[22]!==D.length||e[23]!==T||e[24]!==E||e[25]!==x?(z=()=>(0,g.jsxs)(`div`,{className:`flex items-center shrink-0 border-b`,children:[(0,g.jsx)(u,{content:ve(`cell.run`),children:(0,g.jsx)(d,{"data-testid":`scratchpad-run-button`,onClick:k,disabled:T,variant:`text`,size:`xs`,children:(0,g.jsx)(he,{color:`var(--grass-11)`,size:16})})}),(0,g.jsx)(u,{content:`Clear code and outputs`,children:(0,g.jsx)(d,{disabled:T,size:`xs`,variant:`text`,onClick:N,children:(0,g.jsx)(De,{size:16})})}),(0,g.jsx)(Te,{children:(0,g.jsx)(u,{content:`Insert code`,children:(0,g.jsx)(d,{disabled:T,size:`xs`,variant:`text`,onClick:j,children:(0,g.jsx)(de,{size:16})})})}),(x===`running`||x===`queued`)&&(0,g.jsx)(be,{className:`inline`,size:`small`}),(0,g.jsx)(`div`,{className:`flex-1`}),(0,g.jsx)(u,{content:`Toggle history`,children:(0,g.jsx)(d,{size:`xs`,variant:`text`,className:le(T&&`bg-(--sky-3) rounded-none`),onClick:()=>E(!T),disabled:D.length===0,children:(0,g.jsx)(Oe,{size:16})})}),(0,g.jsx)(u,{content:(0,g.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,g.jsx)(d,{size:`xs`,variant:`text`,children:(0,g.jsx)(me,{size:16})})})]}),e[19]=N,e[20]=j,e[21]=k,e[22]=D.length,e[23]=T,e[24]=E,e[25]=x,e[26]=z):z=e[26];let B=z,Pe=_===`vertical`,V;e[27]===Symbol.for(`react.memo_cache_sentinel`)?(V=ae.create(o),e[27]=V):V=e[27];let H;e[28]===B?H=e[29]:(H=B(),e[28]=B,e[29]=H);let U;e[30]===Symbol.for(`react.memo_cache_sentinel`)?(U=e=>{s.current=e},e[30]=U):U=e[30];let W;e[31]!==C||e[32]!==k||e[33]!==I||e[34]!==a||e[35]!==i?(W=(0,g.jsx)(`div`,{className:`flex-1 overflow-auto`,children:(0,g.jsx)(pe,{theme:a,showPlaceholder:!1,id:o,code:C,config:Me,status:`idle`,serializedEditorState:null,runCell:k,userConfig:i,editorViewRef:s,setEditorView:U,hidden:!1,showHiddenCode:se.NOOP,languageAdapter:I,setLanguageAdapter:Ne})}),e[31]=C,e[32]=k,e[33]=I,e[34]=a,e[35]=i,e[36]=W):W=e[36];let G;e[37]===R?G=e[38]:(G=R(),e[37]=R,e[38]=G);let K;e[39]!==G||e[40]!==H||e[41]!==W?(K=(0,g.jsx)(Ce,{defaultSize:40,minSize:20,maxSize:70,children:(0,g.jsxs)(`div`,{className:`h-full flex flex-col overflow-hidden relative`,children:[H,W,G]})}),e[39]=G,e[40]=H,e[41]=W,e[42]=K):K=e[42];let q=Pe?`h-1`:`w-1`,J;e[43]===q?J=e[44]:(J=le(`bg-border hover:bg-primary/50 transition-colors`,q),e[43]=q,e[44]=J);let Y;e[45]===J?Y=e[46]:(Y=(0,g.jsx)(xe,{className:J}),e[45]=J,e[46]=Y);let X;e[47]===b?X=e[48]:(X=(0,g.jsx)(`div`,{className:`flex-1 overflow-auto`,children:(0,g.jsx)(ye,{allowExpand:!1,output:b,className:ce.outputArea,cellId:o,stale:!1,loading:!1})}),e[47]=b,e[48]=X);let Z;e[49]===S?Z=e[50]:(Z=(0,g.jsx)(`div`,{className:`overflow-auto shrink-0 max-h-[50%]`,children:(0,g.jsx)(ue,{consoleOutputs:S,className:`overflow-auto`,stale:!1,interrupted:!1,cellName:`_`,onSubmitDebugger:se.NOOP,cellId:o,debuggerActive:!1})}),e[49]=S,e[50]=Z);let Q;e[51]!==X||e[52]!==Z?(Q=(0,g.jsx)(Ce,{defaultSize:60,minSize:20,children:(0,g.jsxs)(`div`,{className:`h-full flex flex-col divide-y overflow-hidden`,children:[X,Z]})}),e[51]=X,e[52]=Z,e[53]=Q):Q=e[53];let $;return e[54]!==_||e[55]!==v||e[56]!==K||e[57]!==Y||e[58]!==Q?($=(0,g.jsx)(`div`,{className:`flex flex-col h-full overflow-hidden`,id:V,children:(0,g.jsxs)(Se,{direction:_,className:`h-full`,children:[K,Y,Q]},v)}),e[54]=_,e[55]=v,e[56]=K,e[57]=Y,e[58]=Q,e[59]=$):$=e[59],$},v=()=>{let e=(0,ke.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,g.jsx)(_,{}),e[0]=t):t=e[0],t};export{v as default};
@@ -1 +0,0 @@
1
- import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{t}from"./react-CUdNIagt.js";import{t as n}from"./compiler-runtime-BQ9S8nyo.js";import{t as r}from"./cn-ldLVeaqm.js";import{t as i}from"./jsx-runtime-B74pBk57.js";import{t as a}from"./button-BoklZTGL.js";import{t as o}from"./createLucideIcon-rHn2EdoM.js";var s=o(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),c=n(),l=e(t(),1),u=i(),d=(0,l.memo)(e=>{let t=(0,c.c)(10),{isVisible:n,onScrollToBottom:i,className:o}=e;if(!n)return null;let l;t[0]===o?l=t[1]:(l=r(`absolute bottom-2 right-6 z-10 animate-in fade-in-0 zoom-in-95 duration-200`,o),t[0]=o,t[1]=l);let d,f,p;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(d=r(`h-8 w-8 p-0 rounded-full`,`bg-background/90 backdrop-blur-sm`,`border border-border/50`,`shadow-md shadow-black/10`,`hover:bg-background hover:shadow-black/15`,`transition-all duration-200`,`focus:outline-hidden focus:ring-2 focus:ring-primary/50`),f=(0,u.jsx)(s,{className:`h-4 w-4`}),p=(0,u.jsx)(`span`,{className:`sr-only`,children:`Scroll to bottom`}),t[2]=d,t[3]=f,t[4]=p):(d=t[2],f=t[3],p=t[4]);let m;t[5]===i?m=t[6]:(m=(0,u.jsxs)(a,{variant:`secondary`,size:`sm`,onClick:i,className:d,children:[f,p]}),t[5]=i,t[6]=m);let h;return t[7]!==l||t[8]!==m?(h=(0,u.jsx)(`div`,{className:l,children:m}),t[7]=l,t[8]=m,t[9]=h):h=t[9],h});d.displayName=`ScrollToBottomButton`;export{d as t};
@@ -1 +0,0 @@
1
- import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{c as t,f as n,l as r,u as i}from"./useEvent-Dc9HkKI2.js";import{t as a}from"./react-CUdNIagt.js";import{$r as o,Ai as s,Bi as c,Bt as l,Cn as u,D as d,Ga as f,Gn as p,Hi as m,Ii as h,Ji as g,Ki as _,Kn as v,Li as y,M as b,Mi as x,P as S,Qr as C,Ri as w,Rn as T,Rt as E,Ua as D,Ui as O,Wi as k,Xi as A,Yi as j,Zi as M,_n as ee,c as N,fn as P,gn as F,i as I,io as L,jn as R,oo as te,qa as ne,qi as re,qn as z,ti as ie,yr as B,yt as V,zi as H}from"./cells-C0itXtA7.js";import{t as U}from"./compiler-runtime-BQ9S8nyo.js";import{c as ae}from"./utils-B3E7otfg.js";import{t as W}from"./ErrorBoundary-DTpbqvzY.js";import{t as oe}from"./cn-ldLVeaqm.js";import{t as G}from"./jsx-runtime-B74pBk57.js";import{r as se}from"./config-CMqNngzA.js";import{t as ce}from"./tooltip-DR2Z2N4w.js";import{r as le,t as ue}from"./button-BoklZTGL.js";import{t as K}from"./createLucideIcon-rHn2EdoM.js";import{i as q}from"./paths-CzfpItSz.js";import{r as J}from"./useNumberFormatter-C4-_TnkF.js";import{R as de,j as fe}from"./RunButton-IMtEkRXV.js";import{a as pe}from"./input-BDakodZ2.js";import{t as me}from"./copy-icon-DFhUGBjO.js";import{l as he}from"./arrays-BqUx5USx.js";import{i as ge}from"./strings-BHZPE0Mc.js";import{r as _e}from"./requests-yTHMxhVa.js";import{t as ve}from"./context-BFOBKCJB.js";import{n as ye}from"./useAsyncData-DucTwMkf.js";import{$t as be,An as xe,Jt as Se,Mn as Ce,Nn as we,On as Te,Qt as Ee,S as De,Sn as Oe,Xt as ke,Yt as Ae,Zt as je,_ as Me,_n as Ne,bn as Pe,da as Fe,in as Ie,jn as Le,k as Re,kn as ze,nn as Be,nr as Ve,v as He,vn as Ue,xn as We,yn as Ge}from"./index-CcaMC2ZX.js";import{t as Ke}from"./empty-state-CzxjZqGW.js";import{n as qe,t as Je}from"./common-DtiDLSXB.js";import{a as Ye,i as Xe,n as Ze,o as Qe,r as $e,s as et,t as tt}from"./components-DScgyZ8j.js";var nt=K(`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`}]]),Y=U(),X=e(a(),1),Z=G(),rt=1;function it(e){return 1.75+e*rt}function at(e){return 3+e*rt}function ot(e){return 3.25+e*rt}var Q={engineEmpty:.75,engine:.75,database:1,tableLoading:2.75,tableSchemaless:2,columnLocal:1.25,columnPreview:2.5};function $(e){return{paddingLeft:`${e}rem`}}var st=n(e=>{let t=e(w),n=e(ie),r=e(I);return he(t,e=>{if(!e.variable_name)return-1;let t=Object.values(n).find(t=>t.name===e.variable_name);if(!t)return 0;let i=r.inOrderIds.indexOf(t.declaredBy[0]);return i===-1?0:i})}),ct=D(`marimo:datasources:hideEmpty`,!1,C,{getOnInit:!0});function lt(e){let t=!1,n=[];for(let r of e){if(!k(r)||!m(r)){n.push(r);continue}let e=r.child_schemas??[],i=lt(e);if(r.tables.length===0&&i.length===0){t=!0;continue}if(i===e){n.push(r);continue}t=!0,n.push({...r,child_schemas:i})}return t?n:e}function ut(e){let t=!1,n=[];for(let r of e){if(O(r)&&r.schemas.length===0){t=!0;continue}if(r.schemas.length===0){n.push(r);continue}let e=lt(r.schemas);if(e.length===0){t=!0;continue}if(e===r.schemas){n.push(r);continue}t=!0,n.push({...r,schemas:e})}return t?n:e}var dt=()=>{let e=(0,Y.c)(42),[n,a]=X.useState(``),[o,s]=t(ct),c=i(y),l=r(st),d=r(x),f;bb0:{if(!o){f=d;break bb0}let t,n;e[0]===d?(t=e[1],n=e[2]):(t=!1,n=d.map(e=>{let n=ut(e.databases);return n===e.databases?e:(t=!0,{...e,databases:n})}),e[0]=d,e[1]=t,e[2]=n),f=t?n:d}let p=f;if(l.length===0&&p.length===0){let t;return e[3]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Z.jsx)(Ke,{title:`No tables found`,description:`Any datasets/dataframes in the global scope will be shown here.`,action:(0,Z.jsx)(Qe,{group:`database`,label:`Add database or catalog`,variant:`outline`,size:`sm`}),icon:(0,Z.jsx)(q,{})}),e[3]=t):t=e[3],t}let m;e[4]===n?m=e[5]:(m=n.trim(),e[4]=n,e[5]=m);let h=!!m,g;e[6]===c?g=e[7]:(g=e=>{c(e.length>0),a(e)},e[6]=c,e[7]=g);let _;e[8]!==n||e[9]!==g?(_=(0,Z.jsx)(F,{placeholder:`Search tables...`,className:`h-6 m-1`,value:n,onValueChange:g,rootClassName:`flex-1 border-r border-b-0`}),e[8]=n,e[9]=g,e[10]=_):_=e[10];let v;e[11]===h?v=e[12]:(v=h&&(0,Z.jsx)(`button`,{type:`button`,className:`float-right border-b px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground`,onClick:()=>a(``),children:(0,Z.jsx)(J,{className:`h-4 w-4`})}),e[11]=h,e[12]=v);let b=!o,S;e[13]!==o||e[14]!==s?(S=()=>s(!o),e[13]=o,e[14]=s,e[15]=S):S=e[15];let C;e[16]!==b||e[17]!==S?(C=(0,Z.jsx)(Ie,{"data-testid":`datasources-hide-empty-button`,isVisible:b,onToggle:S,showTooltip:`Show empty schemas and databases`,hideTooltip:`Hide empty schemas and databases`,size:`sm`,className:`px-2 rounded-none focus-visible:outline-hidden`}),e[16]=b,e[17]=S,e[18]=C):C=e[18];let w;e[19]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,Z.jsx)(Qe,{group:`database`,label:`Add database or catalog`,compact:!0,variant:`ghost`,size:`sm`,className:`px-2 rounded-none focus-visible:outline-hidden`}),e[19]=w):w=e[19];let T;e[20]!==_||e[21]!==v||e[22]!==C?(T=(0,Z.jsxs)(`div`,{className:`flex items-center w-full border-b`,children:[_,v,C,w]}),e[20]=_,e[21]=v,e[22]=C,e[23]=T):T=e[23];let E;if(e[24]!==p||e[25]!==n){let t;e[27]===n?t=e[28]:(t=e=>(0,Z.jsx)(ft,{connection:e,hasChildren:e.databases.length>0,children:e.databases.map(t=>(0,Z.jsx)(gt,{connection:e,database:t,searchValue:n},t.name))},e.name),e[27]=n,e[28]=t),E=p.map(t),e[24]=p,e[25]=n,e[26]=E}else E=e[26];let D;e[29]!==p.length||e[30]!==l.length?(D=p.length>0&&l.length>0&&(0,Z.jsxs)(Ae,{className:`pr-2`,style:$(Q.engine),children:[(0,Z.jsx)(Re,{className:`h-4 w-4 text-muted-foreground`}),(0,Z.jsx)(`span`,{className:`text-xs`,children:`Python`})]}),e[29]=p.length,e[30]=l.length,e[31]=D):D=e[31];let O;e[32]!==n||e[33]!==l?(O=l.length>0&&(0,Z.jsx)(bt,{tables:l,searchValue:n}),e[32]=n,e[33]=l,e[34]=O):O=e[34];let k;e[35]!==E||e[36]!==D||e[37]!==O?(k=(0,Z.jsxs)(u,{className:`flex flex-col`,children:[E,D,O]}),e[35]=E,e[36]=D,e[37]=O,e[38]=k):k=e[38];let A;return e[39]!==k||e[40]!==T?(A=(0,Z.jsxs)(P,{className:`border-b bg-background rounded-none h-full pb-10 overflow-auto outline-hidden`,shouldFilter:!1,children:[T,k]}),e[39]=k,e[40]=T,e[41]=A):A=e[41],A},ft=e=>{let t=(0,Y.c)(26),{connection:n,children:r,hasChildren:i}=e,a=n.name===M,o=a?`In-Memory`:n.name,{previewDataSourceConnection:c}=_e(),l;t[0]!==n.name||t[1]!==c?(l=async()=>{await c({engine:n.name})},t[0]=n.name,t[1]=c,t[2]=l):l=t[2];let u=l,d;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(d=$(Q.engine),t[3]=d):d=t[3];let f;t[4]===n.dialect?f=t[5]:(f=(0,Z.jsx)(R,{className:`h-4 w-4 text-muted-foreground`,name:n.dialect}),t[4]=n.dialect,t[5]=f);let p;t[6]===n.dialect?p=t[7]:(p=s(n.dialect),t[6]=n.dialect,t[7]=p);let m;t[8]===p?m=t[9]:(m=(0,Z.jsx)(`span`,{className:`text-xs`,children:p}),t[8]=p,t[9]=m);let h=o,g;t[10]===h?g=t[11]:(g=(0,Z.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[`(`,(0,Z.jsx)(et,{variableName:h}),`)`]}),t[10]=h,t[11]=g);let _;t[12]!==u||t[13]!==a?(_=!a&&(0,Z.jsx)(Be,{onClick:u,tooltip:`Refresh connection`,className:`ml-auto h-4 p-0`,iconClassName:`h-3.5 w-3.5`}),t[12]=u,t[13]=a,t[14]=_):_=t[14];let v;t[15]!==f||t[16]!==m||t[17]!==g||t[18]!==_?(v=(0,Z.jsxs)(Ae,{className:`pr-2`,style:d,children:[f,m,g,_]}),t[15]=f,t[16]=m,t[17]=g,t[18]=_,t[19]=v):v=t[19];let y;t[20]!==r||t[21]!==i?(y=i?r:(0,Z.jsx)(ke,{content:`No databases available`,style:$(Q.engineEmpty)}),t[20]=r,t[21]=i,t[22]=y):y=t[22];let b;return t[23]!==y||t[24]!==v?(b=(0,Z.jsxs)(Z.Fragment,{children:[v,y]}),t[23]=y,t[24]=v,t[25]=b):b=t[25],b},pt=X.createContext(null);function mt(){let e=X.useContext(pt);if(e==null)throw Error(`useDataSourceTree must be used within a DataSourceTreeContext.Provider`);return e}function ht(e,{schema:t,schemaPath:n}){return{engine:e.engineName,database:e.databaseName,schema:t,schemaPath:n,defaultSchema:e.defaultSchema,defaultDatabase:e.defaultDatabase,dialect:e.dialect}}var gt=e=>{let t=(0,Y.c)(21),{connection:n,database:r,searchValue:i}=e,a;t[0]!==n.default_database||t[1]!==n.default_schema||t[2]!==n.dialect||t[3]!==n.name||t[4]!==r.name||t[5]!==i?(a={engineName:n.name,databaseName:r.name,dialect:n.dialect,defaultSchema:n.default_schema,defaultDatabase:n.default_database,searchValue:i},t[0]=n.default_database,t[1]=n.default_schema,t[2]=n.dialect,t[3]=n.name,t[4]=r.name,t[5]=i,t[6]=a):a=t[6];let o=a,s=n.name,c=r.schemas,l;t[7]===r?l=t[8]:(l=O(r),t[7]=r,t[8]=l);let u;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(u=[],t[9]=u):u=t[9];let d;t[10]!==r.schemas||t[11]!==l?(d=(0,Z.jsx)(vt,{schemas:c,schemasResolved:l,schemaPath:u,depth:0}),t[10]=r.schemas,t[11]=l,t[12]=d):d=t[12];let f;t[13]!==d||t[14]!==o?(f=(0,Z.jsx)(pt.Provider,{value:o,children:d}),t[13]=d,t[14]=o,t[15]=f):f=t[15];let p;return t[16]!==n.name||t[17]!==r||t[18]!==i||t[19]!==f?(p=(0,Z.jsx)(_t,{engineName:s,database:r,searchValue:i,children:f}),t[16]=n.name,t[17]=r,t[18]=i,t[19]=f,t[20]=p):p=t[20],p},_t=e=>{let t=(0,Y.c)(29),{searchValue:n,engineName:r,database:i,children:a}=e,o;t[0]!==i||t[1]!==n?(o=g(i,n),t[0]=i,t[1]=n,t[2]=o):o=t[2];let s=o,[c,l]=X.useState(s),[u,d]=X.useState(!1),[f,p]=X.useState(n),[m,h]=X.useState(s);(f!==n||m!==s)&&(p(n),h(s),l(s));let _;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(_=$(Q.database),t[3]=_):_=t[3];let v;t[4]!==c||t[5]!==u?(v=()=>{l(!c),d(!u)},t[4]=c,t[5]=u,t[6]=v):v=t[6];let y=`${r}:${i.name}`,b;t[7]===c?b=t[8]:(b=(0,Z.jsx)(be,{isExpanded:c}),t[7]=c,t[8]=b);let x=u&&c?`text-foreground`:`text-muted-foreground`,S;t[9]===x?S=t[10]:(S=oe(`h-4 w-4`,x),t[9]=x,t[10]=S);let C;t[11]===S?C=t[12]:(C=(0,Z.jsx)(q,{className:S}),t[11]=S,t[12]=C);let w=u&&c&&`font-semibold`,T;t[13]===w?T=t[14]:(T=oe(w),t[13]=w,t[14]=T);let E;t[15]===i.name?E=t[16]:(E=i.name===``?(0,Z.jsx)(`i`,{children:`Not connected`}):i.name,t[15]=i.name,t[16]=E);let D;t[17]!==T||t[18]!==E?(D=(0,Z.jsx)(`span`,{className:T,children:E}),t[17]=T,t[18]=E,t[19]=D):D=t[19];let O;t[20]!==D||t[21]!==v||t[22]!==y||t[23]!==b||t[24]!==C?(O=(0,Z.jsxs)(ee,{className:`text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none`,style:_,onSelect:v,value:y,children:[b,C,D]}),t[20]=D,t[21]=v,t[22]=y,t[23]=b,t[24]=C,t[25]=O):O=t[25];let k=c&&a,A;return t[26]!==O||t[27]!==k?(A=(0,Z.jsxs)(Z.Fragment,{children:[O,k]}),t[26]=O,t[27]=k,t[28]=A):A=t[28],A},vt=e=>{let{schemas:t,schemasResolved:n,depth:r}=e,i=mt(),{engineName:a,databaseName:o,searchValue:s}=i,{addSchemaList:c}=h(),l=Me(e.schemaPath),[u,d]=X.useState(!1),{isPending:f,error:m}=ye(async()=>{if(!n&&a){d(!0);try{let e=await p.request({engine:a,database:o,schemaPath:l});c({schemas:e.schemas??[],sqlSchemaContext:{engine:a,database:o,schemaPath:l}})}finally{d(!1)}}},[n,a,o,l]),g=$(it(r));return f||u?(0,Z.jsx)(Ee,{message:`Loading schemas...`,style:g}):m?(0,Z.jsx)(je,{error:m,style:g}):t.length===0?(0,Z.jsx)(ke,{content:`No schemas available`,style:g}):(0,Z.jsx)(Z.Fragment,{children:t.map(e=>_(e.name)?(0,Z.jsx)(bt,{tables:e.tables,tablesResolved:k(e),searchValue:s,sqlTableContext:ht(i,{schema:e.name,schemaPath:l})},e.name):(0,Z.jsx)(yt,{schema:e,schemaPath:[...l,e.name],depth:r},e.name))})},yt=e=>{let t=(0,Y.c)(41),{schema:n,schemaPath:r,depth:i}=e,a=mt(),{databaseName:o,searchValue:s}=a,c;t[0]!==n||t[1]!==s?(c=re(n,s),t[0]=n,t[1]=s,t[2]=c):c=t[2];let l=c,[u,d]=X.useState(l),[f,p]=X.useState(!1),[h,g]=X.useState(s),[_,v]=X.useState(l),y;t[3]===r?y=t[4]:(y=r.join(`.`),t[3]=r,t[4]=y);let b=`${o}:${y}`,x;t[5]===n.child_schemas?x=t[6]:(x=n.child_schemas??[],t[5]=n.child_schemas,t[6]=x);let S=x;(h!==s||_!==l)&&(g(s),v(l),d(l));let C;t[7]===i?C=t[8]:(C=$(it(i)),t[7]=i,t[8]=C);let w;t[9]!==u||t[10]!==f?(w=()=>{d(!u),p(!f)},t[9]=u,t[10]=f,t[11]=w):w=t[11];let T;t[12]===u?T=t[13]:(T=(0,Z.jsx)(be,{isExpanded:u}),t[12]=u,t[13]=T);let E=f&&u&&`text-foreground`,D;t[14]===E?D=t[15]:(D=oe(`h-4 w-4 text-muted-foreground`,E),t[14]=E,t[15]=D);let O;t[16]===D?O=t[17]:(O=(0,Z.jsx)(L,{className:D}),t[16]=D,t[17]=O);let A=f&&u&&`font-semibold`,j;t[18]===A?j=t[19]:(j=oe(A),t[18]=A,t[19]=j);let M;t[20]!==n.name||t[21]!==j?(M=(0,Z.jsx)(`span`,{className:j,children:n.name}),t[20]=n.name,t[21]=j,t[22]=M):M=t[22];let N;t[23]!==M||t[24]!==C||t[25]!==w||t[26]!==T||t[27]!==O||t[28]!==b?(N=(0,Z.jsxs)(ee,{className:`text-sm flex flex-row gap-1 items-center cursor-pointer rounded-none`,style:C,onSelect:w,value:b,children:[T,O,M]}),t[23]=M,t[24]=C,t[25]=w,t[26]=T,t[27]=O,t[28]=b,t[29]=N):N=t[29];let P;t[30]!==S||t[31]!==i||t[32]!==u||t[33]!==n||t[34]!==r||t[35]!==s||t[36]!==a?(P=u&&(0,Z.jsxs)(Z.Fragment,{children:[(S.length>0||!m(n))&&(0,Z.jsx)(vt,{schemas:S,schemasResolved:m(n),schemaPath:r,depth:i+1}),(0,Z.jsx)(bt,{tables:n.tables,tablesResolved:k(n),searchValue:s,tableIndentRem:at(i),columnIndentRem:ot(i),sqlTableContext:ht(a,{schema:n.name,schemaPath:r})})]}),t[30]=S,t[31]=i,t[32]=u,t[33]=n,t[34]=r,t[35]=s,t[36]=a,t[37]=P):P=t[37];let F;return t[38]!==N||t[39]!==P?(F=(0,Z.jsxs)(Z.Fragment,{children:[N,P]}),t[38]=N,t[39]=P,t[40]=F):F=t[40],F},bt=e=>{let t=(0,Y.c)(31),{tables:n,sqlTableContext:r,searchValue:i,tablesResolved:a,tableIndentRem:o,columnIndentRem:s}=e,c=a===void 0||a,{addTableList:l}=h(),[u,d]=X.useState(!1),f;t[0]!==l||t[1]!==r||t[2]!==c?(f=async()=>{if(!c&&r){d(!0);let{engine:e,database:t,schema:n,schemaPath:i}=r,a=await z.request({engine:e,database:t,schema:n,schemaPath:i??[]});if(!a?.tables)throw d(!1),Error(`No tables available`);l({tables:a.tables,sqlTableContext:r}),d(!1)}},t[0]=l,t[1]=r,t[2]=c,t[3]=f):f=t[3];let p;t[4]!==r||t[5]!==c?(p=[c,r],t[4]=r,t[5]=c,t[6]=p):p=t[6];let{isPending:m,error:g}=ye(f,p),_=o??Q.tableLoading,v;t[7]===_?v=t[8]:(v=$(_),t[7]=_,t[8]=v);let y=v;if(m||u){let e;return t[9]===y?e=t[10]:(e=(0,Z.jsx)(Ee,{message:`Loading tables...`,style:y}),t[9]=y,t[10]=e),e}if(g){let e;return t[11]!==g||t[12]!==y?(e=(0,Z.jsx)(je,{error:g,style:y}),t[11]=g,t[12]=y,t[13]=e):e=t[13],e}if(n.length===0){let e;return t[14]===y?e=t[15]:(e=(0,Z.jsx)(ke,{content:`No tables found`,style:y}),t[14]=y,t[15]=e),e}let b;if(t[16]!==s||t[17]!==i||t[18]!==r||t[19]!==o||t[20]!==n){let e;t[22]===i?e=t[23]:(e=e=>!i||e.name.toLowerCase().includes(i.toLowerCase()),t[22]=i,t[23]=e);let a=n.filter(e),c;t[24]!==s||t[25]!==i||t[26]!==r||t[27]!==o?(c=e=>(0,Z.jsx)(xt,{table:e,sqlTableContext:r,isSearching:!!i,tableIndentRem:o,columnIndentRem:s},e.name),t[24]=s,t[25]=i,t[26]=r,t[27]=o,t[28]=c):c=t[28],b=a.map(c),t[16]=s,t[17]=i,t[18]=r,t[19]=o,t[20]=n,t[21]=b}else b=t[21];let x;return t[29]===b?x=t[30]:(x=(0,Z.jsx)(Z.Fragment,{children:b}),t[29]=b,t[30]=x),x},xt=e=>{let t=(0,Y.c)(69),{table:n,sqlTableContext:i,isSearching:a,tableIndentRem:o,columnIndentRem:s}=e,{addTable:c}=h(),[u,f]=X.useState(!1),p=n.columns.length>0,m;t[0]!==c||t[1]!==u||t[2]!==i||t[3]!==n.name||t[4]!==p?(m=async()=>{if(u&&!p&&i){let{engine:e,database:t,schema:r,schemaPath:a}=i,o=await v.request({engine:e,database:t,schema:r,tableName:n.name,schemaPath:a??[]});if(!o?.table)throw Error(`No table details available`);c({table:o.table,sqlTableContext:i})}},t[0]=c,t[1]=u,t[2]=i,t[3]=n.name,t[4]=p,t[5]=m):m=t[5];let g;t[6]!==u||t[7]!==p?(g=[u,p],t[6]=u,t[7]=p,t[8]=g):g=t[8];let{isFetching:_,isPending:y,error:b}=ye(m,g),x=r(ae),S=E(),{createNewCell:C}=d(),w=De(),T;t[9]!==w||t[10]!==x||t[11]!==C||t[12]!==S||t[13]!==i||t[14]!==n?(T=()=>{l({autoInstantiate:x,createNewCell:C,fromCellId:S}),w((()=>{if(n.source_type===`catalog`){let e=i?.database?[i.database,...i.schemaPath??[],n.name].join(`.`):n.name;return`${n.engine}.load_table("${e}")`}if(i)return j({table:n,columnName:`*`,sqlTableContext:i});switch(n.source_type){case`local`:return`mo.ui.table(${n.name})`;case`duckdb`:case`connection`:return j({table:n,columnName:`*`,sqlTableContext:i});default:return ge(n.source_type),``}})())},t[9]=w,t[10]=x,t[11]=C,t[12]=S,t[13]=i,t[14]=n,t[15]=T):T=t[15];let D=T,O;t[16]!==n.num_columns||t[17]!==n.num_rows?(O=()=>{let e=[];return n.num_rows!=null&&e.push(`${n.num_rows} rows`),n.num_columns!=null&&e.push(`${n.num_columns} columns`),e.length===0?null:(0,Z.jsx)(`div`,{className:`flex flex-row gap-2 items-center pl-6 group-hover:hidden`,children:(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.join(`, `)})})},t[16]=n.num_columns,t[17]=n.num_rows,t[18]=O):O=t[18];let k=O,M;t[19]!==s||t[20]!==b||t[21]!==_||t[22]!==y||t[23]!==i||t[24]!==n?(M=()=>{let e=$(s??Q.tableLoading);if(y||_)return(0,Z.jsx)(Ee,{message:`Loading columns...`,style:e});if(b)return(0,Z.jsx)(je,{error:b,style:e});let t=n.columns;return t.length===0?(0,Z.jsx)(ke,{content:`No columns found`,style:e}):t.map(e=>(0,Z.jsx)(St,{table:n,column:e,sqlTableContext:i,columnIndentRem:s},e.name))},t[19]=s,t[20]=b,t[21]=_,t[22]=y,t[23]=i,t[24]=n,t[25]=M):M=t[25];let N=M,P;t[26]!==u||t[27]!==a||t[28]!==n.source_type||t[29]!==n.type?(P=()=>{if(n.source_type===`local`)return;let e=n.type===`table`?ne:te;return(0,Z.jsx)(e,{className:`h-3 w-3`,strokeWidth:u||a?2.5:void 0})},t[26]=u,t[27]=a,t[28]=n.source_type,t[29]=n.type,t[30]=P):P=t[30];let F=P,I;t[31]!==i||t[32]!==n.name?(I=A(i,n.name),t[31]=i,t[32]=n.name,t[33]=I):I=t[33];let L=I,R=o??(i?Q.tableSchemaless:0),re=(u||a)&&`font-semibold`,z;t[34]===re?z=t[35]:(z=oe(`rounded-none group h-8 cursor-pointer`,re),t[34]=re,t[35]=z);let ie;t[36]===R?ie=t[37]:(ie=$(R),t[36]=R,t[37]=ie);let B;t[38]===u?B=t[39]:(B=()=>f(!u),t[38]=u,t[39]=B);let V;t[40]===F?V=t[41]:(V=F(),t[40]=F,t[41]=V);let H;t[42]===n.name?H=t[43]:(H=(0,Z.jsx)(`span`,{className:`text-sm`,children:n.name}),t[42]=n.name,t[43]=H);let U;t[44]!==V||t[45]!==H?(U=(0,Z.jsxs)(`div`,{className:`flex gap-2 items-center flex-1 pl-1`,children:[V,H]}),t[44]=V,t[45]=H,t[46]=U):U=t[46];let W;t[47]===k?W=t[48]:(W=k(),t[47]=k,t[48]=W);let G;t[49]===D?G=t[50]:(G=le.stopPropagation(()=>D()),t[49]=D,t[50]=G);let se;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(se=(0,Z.jsx)(Fe,{className:`h-3 w-3`}),t[51]=se):se=t[51];let K;t[52]===G?K=t[53]:(K=(0,Z.jsx)(ce,{content:`Add table to notebook`,delayDuration:400,children:(0,Z.jsx)(ue,{className:`group-hover:inline-flex hidden`,variant:`text`,size:`icon`,onClick:G,children:se})}),t[52]=G,t[53]=K);let q;t[54]!==u||t[55]!==ie||t[56]!==B||t[57]!==U||t[58]!==W||t[59]!==K||t[60]!==z||t[61]!==L?(q=(0,Z.jsxs)(ee,{className:z,style:ie,value:L,"aria-selected":u,forceMount:!0,onSelect:B,children:[U,W,K]}),t[54]=u,t[55]=ie,t[56]=B,t[57]=U,t[58]=W,t[59]=K,t[60]=z,t[61]=L,t[62]=q):q=t[62];let J;t[63]!==u||t[64]!==N?(J=u&&N(),t[63]=u,t[64]=N,t[65]=J):J=t[65];let de;return t[66]!==q||t[67]!==J?(de=(0,Z.jsxs)(Z.Fragment,{children:[q,J]}),t[66]=q,t[67]=J,t[68]=de):de=t[68],de},St=e=>{let t=(0,Y.c)(51),{table:n,column:a,sqlTableContext:o,columnIndentRem:s}=e,[l,u]=X.useState(!1),d=r(y),f=i(H);d&&l&&u(!1),f(l?e=>new Set([...e,`${n.name}:${a.name}`]):e=>(e.delete(`${n.name}:${a.name}`),new Set(e)));let p=De(),{columnsPreviews:m}=c(),h;t[0]!==a.name||t[1]!==n.primary_keys?(h=n.primary_keys?.includes(a.name)||!1,t[0]=a.name,t[1]=n.primary_keys,t[2]=h):h=t[2];let g=h,_;t[3]!==a.name||t[4]!==n.indexes?(_=n.indexes?.includes(a.name)||!1,t[3]=a.name,t[4]=n.indexes,t[5]=_):_=t[5];let v=_,b;t[6]===p?b=t[7]:(b=e=>{p(e)},t[6]=p,t[7]=b);let x=b,S=Ct,C=l?`font-semibold`:``,w;t[8]!==a.name||t[9]!==C?(w=(0,Z.jsx)(`span`,{className:C,children:a.name}),t[8]=a.name,t[9]=C,t[10]=w):w=t[10];let T=w,E=`${n.name}.${a.name}`,D=`${n.name}.${a.name}`,O;t[11]===l?O=t[12]:(O=()=>u(!l),t[11]=l,t[12]=O);let k;t[13]!==s||t[14]!==o?(k=s??(o?ot(0):Q.columnLocal),t[13]=s,t[14]=o,t[15]=k):k=t[15];let A;t[16]===k?A=t[17]:(A=$(k),t[16]=k,t[17]=A);let j;t[18]!==a.type||t[19]!==T?(j=(0,Z.jsx)(Se,{columnName:T,dataType:a.type}),t[18]=a.type,t[19]=T,t[20]=j):j=t[20];let M;t[21]===g?M=t[22]:(M=g&&S({tooltipContent:`Primary key`,content:`PK`}),t[21]=g,t[22]=M);let N;t[23]===v?N=t[24]:(N=v&&S({tooltipContent:`Indexed`,content:`IDX`}),t[23]=v,t[24]=N);let P;t[25]!==A||t[26]!==j||t[27]!==M||t[28]!==N?(P=(0,Z.jsxs)(`div`,{className:`flex flex-row gap-2 items-center flex-1`,style:A,children:[j,M,N]}),t[25]=A,t[26]=j,t[27]=M,t[28]=N,t[29]=P):P=t[29];let F;t[30]===a.name?F=t[31]:(F=(0,Z.jsx)(ce,{content:`Copy column name`,delayDuration:400,children:(0,Z.jsx)(ue,{variant:`text`,size:`icon`,className:`group-hover:opacity-100 opacity-0 hover:bg-muted text-muted-foreground hover:text-foreground`,children:(0,Z.jsx)(me,{tooltip:!1,value:a.name,className:`h-3 w-3`})})}),t[30]=a.name,t[31]=F);let I;t[32]===a.external_type?I=t[33]:(I=(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:a.external_type}),t[32]=a.external_type,t[33]=I);let L;t[34]!==P||t[35]!==F||t[36]!==I||t[37]!==E||t[38]!==D||t[39]!==O?(L=(0,Z.jsxs)(ee,{className:`rounded-none py-1 group cursor-pointer`,value:D,onSelect:O,children:[P,F,I]},E),t[34]=P,t[35]=F,t[36]=I,t[37]=E,t[38]=D,t[39]=O,t[40]=L):L=t[40];let R;t[41]!==a||t[42]!==m||t[43]!==x||t[44]!==l||t[45]!==o||t[46]!==n?(R=l&&(0,Z.jsx)(`div`,{className:`pr-2 py-2 bg-(--slate-1) shadow-inner border-b`,style:$(Q.columnPreview),children:(0,Z.jsx)(W,{children:(0,Z.jsx)(He,{table:n,column:a,onAddColumnChart:x,preview:m.get(o?`${o.database}.${o.schema}.${n.name}:${a.name}`:`${n.name}:${a.name}`),sqlTableContext:o})})}),t[41]=a,t[42]=m,t[43]=x,t[44]=l,t[45]=o,t[46]=n,t[47]=R):R=t[47];let te;return t[48]!==L||t[49]!==R?(te=(0,Z.jsxs)(Z.Fragment,{children:[L,R]}),t[48]=L,t[49]=R,t[50]=te):te=t[50],te};function Ct(e){let{tooltipContent:t,content:n}=e;return(0,Z.jsx)(ce,{content:t,delayDuration:100,children:(0,Z.jsx)(`span`,{className:`text-xs text-black bg-gray-100 dark:invert rounded px-1`,children:n})})}function wt(e){return e}var Tt={name:`name`,type:`type-value`,defs:`defs-refs`},Et=[wt({id:Tt.name,accessorFn:e=>[e.name,e.declaredBy],enableSorting:!0,sortingFn:`alphanumeric`,header:({column:e})=>(0,Z.jsx)(Te,{header:`Name`,column:e}),cell:({getValue:e})=>{let[t,n]=e();return(0,Z.jsx)(Je,{name:t,declaredBy:n})}}),wt({id:Tt.type,accessorFn:e=>[e.dataType,e.value],enableSorting:!0,sortingFn:`alphanumeric`,header:({column:e})=>(0,Z.jsx)(Te,{header:(0,Z.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Z.jsx)(`span`,{children:`Type`}),(0,Z.jsx)(`span`,{children:`Value`})]}),column:e}),cell:({getValue:e})=>{let[t,n]=e();return(0,Z.jsxs)(`div`,{className:`max-w-[150px]`,children:[(0,Z.jsx)(`div`,{className:`text-ellipsis overflow-hidden whitespace-nowrap text-muted-foreground font-mono text-xs`,children:t}),(0,Z.jsx)(`div`,{className:`text-ellipsis overflow-hidden whitespace-nowrap`,title:n??``,children:n})]})}}),wt({id:Tt.defs,accessorFn:e=>[e.declaredBy,e.usedBy,e.name,e.declaredByNames,e.usedByNames],enableSorting:!0,sortingFn:`basic`,header:({column:e})=>(0,Z.jsx)(Te,{header:(0,Z.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Z.jsx)(`span`,{children:`Declared By`}),(0,Z.jsx)(`span`,{children:`Used By`})]}),column:e}),cell:({getValue:e})=>{let[t,n,r]=e(),i=e=>{let t=N(e);t&&B(t,r)};return(0,Z.jsxs)(`div`,{className:`flex flex-col gap-1 py-1`,children:[(0,Z.jsxs)(`div`,{className:`flex flex-row overflow-auto gap-2 items-center`,children:[(0,Z.jsx)(`span`,{title:`Declared by`,children:(0,Z.jsx)(nt,{className:`w-3.5 h-3.5 text-muted-foreground`})}),t.length===1?(0,Z.jsx)(Ve,{variant:`focus`,cellId:t[0],skipScroll:!0,onClick:()=>i(t[0])}):(0,Z.jsx)(`div`,{className:`text-destructive flex flex-row gap-2`,children:t.slice(0,3).map((e,n)=>(0,Z.jsxs)(`span`,{className:`flex`,children:[(0,Z.jsx)(Ve,{variant:`focus`,cellId:e,skipScroll:!0,className:`whitespace-nowrap text-destructive`,onClick:()=>i(e)},e),n<t.length-1&&`, `]},e))})]}),(0,Z.jsxs)(`div`,{className:`flex flex-row overflow-auto gap-2 items-baseline`,children:[(0,Z.jsx)(`span`,{title:`Used by`,children:(0,Z.jsx)(de,{className:`w-3.5 h-3.5 text-muted-foreground`})}),(0,Z.jsx)(qe,{maxCount:3,cellIds:n,skipScroll:!0,onClick:i})]})]})}})];function Dt({variables:e,sort:t,cellIdToIndex:n}){t||={id:Tt.defs,desc:!1};let r=[];switch(t.id){case Tt.name:r=he(e,e=>e.name);break;case Tt.type:r=he(e,e=>e.dataType);break;case Tt.defs:r=he(e,e=>n.get(e.declaredBy[0]))}return t.desc?r.toReversed():r}var Ot=(0,X.memo)(({className:e,cellIds:t,variables:n})=>{let[r,i]=X.useState([]),[a,o]=X.useState(``),s=S(),{locale:c}=ve(),l=(0,X.useMemo)(()=>{let e=e=>{let n=s[e];return T(n)?`cell-${t.indexOf(e)}`:n??`cell-${t.indexOf(e)}`};return Object.values(n).map(t=>({...t,declaredByNames:t.declaredBy.map(e),usedByNames:t.usedBy.map(e)}))},[n,s,t]),u=(0,X.useMemo)(()=>{let e=new Map;return t.forEach((t,n)=>e.set(t,n)),Dt({variables:l,sort:r[0],cellIdToIndex:e})},[l,r,t]),d=xe({data:u,columns:Et,getCoreRowModel:Le(),onGlobalFilterChange:o,getFilteredRowModel:Ce(),enableFilters:!0,enableGlobalFilter:!0,enableColumnPinning:!1,getColumnCanGlobalFilter(e){return e.columnDef.enableGlobalFilter??!0},globalFilterFn:`auto`,manualSorting:!0,locale:c,onSortingChange:i,getSortedRowModel:we(),state:{sorting:r,globalFilter:a}});return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(pe,{className:`w-full`,placeholder:`Search`,value:a,onChange:e=>o(e.target.value)}),(0,Z.jsxs)(Ne,{className:oe(`w-full text-sm flex-1 border-separate border-spacing-0`,e),children:[(0,Z.jsx)(We,{children:(0,Z.jsx)(Oe,{className:`whitespace-nowrap text-xs`,children:d.getFlatHeaders().map(e=>(0,Z.jsx)(Pe,{className:`sticky top-0 bg-background border-b`,children:ze(e.column.columnDef.header,e.getContext())},e.id))})}),(0,Z.jsx)(Ue,{children:d.getRowModel().rows.map(e=>(0,Z.jsx)(Oe,{className:`hover:bg-accent`,children:e.getVisibleCells().map(e=>(0,Z.jsx)(Ge,{className:`border-b`,children:ze(e.column.columnDef.cell,e.getContext())},e.id))},e.id))})]})]})});Ot.displayName=`VariableTable`;var kt=()=>{let e=(0,Y.c)(30),n=o(),i=b(),a=r(w),s=r(x),c=V(`database`),[l,u]=t(fe),d=a.length+s.length,p;e[0]!==d||e[1]!==l.hasUserInteracted||e[2]!==l.openSections?(p=!l.hasUserInteracted&&d>0?[...new Set([...l.openSections,`datasources`])]:l.openSections,e[0]=d,e[1]=l.hasUserInteracted,e[2]=l.openSections,e[3]=p):p=e[3];let m=p,h;e[4]===u?h=e[5]:(h=e=>{u({openSections:e,hasUserInteracted:!0})},e[4]=u,e[5]=h);let g=h,_;e[6]===m?_=e[7]:(_=m.includes(`datasources`),e[6]=m,e[7]=_);let v=!_&&d>0,y=c.length>0,S;e[8]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,Z.jsx)(q,{className:`w-4 h-4`}),e[8]=S):S=e[8];let C;e[9]!==d||e[10]!==v?(C=v&&(0,Z.jsx)(Ye,{children:d}),e[9]=d,e[10]=v,e[11]=C):C=e[11];let T;e[12]!==c.length||e[13]!==y?(T=y&&(0,Z.jsx)(tt,{count:c.length,type:`database`}),e[12]=c.length,e[13]=y,e[14]=T):T=e[14];let E;e[15]!==C||e[16]!==T?(E=(0,Z.jsxs)(Xe,{children:[S,`Data sources`,C,T]}),e[15]=C,e[16]=T,e[17]=E):E=e[17];let D;e[18]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,Z.jsx)(Ze,{children:(0,Z.jsx)(dt,{})}),e[18]=D):D=e[18];let O;e[19]===E?O=e[20]:(O=(0,Z.jsxs)($e,{value:`datasources`,children:[E,D]}),e[19]=E,e[20]=O);let k;e[21]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,Z.jsxs)(Xe,{children:[(0,Z.jsx)(f,{className:`w-4 h-4`}),`Variables`]}),e[21]=k):k=e[21];let A;e[22]!==i||e[23]!==n?(A=(0,Z.jsxs)($e,{value:`variables`,lastItem:!0,children:[k,(0,Z.jsx)(Ze,{children:Object.keys(n).length===0?(0,Z.jsx)(`div`,{className:`px-3 py-4 text-sm text-muted-foreground`,children:`No variables defined`}):(0,Z.jsx)(Ot,{cellIds:i.inOrderIds,variables:n})})]}),e[22]=i,e[23]=n,e[24]=A):A=e[24];let j;return e[25]!==g||e[26]!==m||e[27]!==A||e[28]!==O?(j=(0,Z.jsxs)(se,{type:`multiple`,value:m,onValueChange:g,className:`flex flex-col h-full overflow-auto`,children:[O,A]}),e[25]=g,e[26]=m,e[27]=A,e[28]=O,e[29]=j):j=e[29],j};export{kt as default};
@@ -1 +0,0 @@
1
- import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{t}from"./react-CUdNIagt.js";import{Cn as n,D as r,Rt as i,_n as a,fn as o,gn as s,mn as c}from"./cells-C0itXtA7.js";import{t as l}from"./compiler-runtime-BQ9S8nyo.js";import{n as u}from"./useEventListener-BdZUApHd.js";import{n as d}from"./constants-BDbGiS7O.js";import{t as f}from"./cn-ldLVeaqm.js";import{t as p}from"./jsx-runtime-B74pBk57.js";import{t as m}from"./tooltip-DR2Z2N4w.js";import{t as h}from"./button-BoklZTGL.js";import{y as g}from"./panels-DwxpnIFf.js";import{n as _,t as v}from"./LazyAnyLanguageCodeMirror-DYsZfkSk.js";import{r as y}from"./useNumberFormatter-C4-_TnkF.js";import{b}from"./write-secret-modal-CBUZw27N.js";import{t as x}from"./plus-gbN72xHe.js";import{Gt as S,Kt as C,Wt as w,Xt as T,qt as E}from"./input-BDakodZ2.js";import{st as D}from"./dist-BczecT6V.js";import{r as O}from"./requests-yTHMxhVa.js";import{r as k}from"./useTheme-Ho3YdAx3.js";import{n as A}from"./useAsyncData-DucTwMkf.js";import{Hn as j,Oi as M,ei as N,gn as P,hn as F,mn as I}from"./index-CcaMC2ZX.js";import{t as L}from"./empty-state-CzxjZqGW.js";import{f as R,i as z,p as B}from"./edit-page-Cw1A5Rhq.js";var V=e(t(),1),H=l(),U=p(),W=u,G=e=>{let t=(0,H.c)(6),{children:n}=e,{openModal:r,closeModal:i}=b(),a;t[0]!==i||t[1]!==r?(a=()=>r((0,U.jsx)(K,{onClose:i})),t[0]=i,t[1]=r,t[2]=a):a=t[2];let o;return t[3]!==n||t[4]!==a?(o=(0,U.jsx)(W,{onClick:a,children:n}),t[3]=n,t[4]=a,t[5]=o):o=t[5],o},K=e=>{let t=(0,H.c)(4),{onClose:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,U.jsx)(T,{children:`Contribute a Snippet`}),t[0]=r):r=t[0];let i;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,U.jsxs)(E,{children:[r,(0,U.jsxs)(S,{children:[`Have a useful snippet you want to share with the community? Make a pull request`,` `,(0,U.jsx)(`a`,{href:d.githubPage,target:`_blank`,className:`underline`,children:`on GitHub`}),`.`]})]}),t[1]=i):i=t[1];let a;return t[2]===n?a=t[3]:(a=(0,U.jsxs)(w,{className:`max-w-md`,children:[i,(0,U.jsx)(C,{children:(0,U.jsx)(h,{"data-testid":`snippet-close-button`,variant:`default`,onClick:n,children:`Close`})})]}),t[2]=n,t[3]=a),a},q=[D.lineWrapping],J=()=>{let e=(0,H.c)(24),{readSnippets:t}=O(),[n,r]=V.useState(),i=R(),a=B(),l;e[0]===t?l=e[1]:(l=()=>t(),e[0]=t,e[1]=l);let u;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=[],e[2]=u):u=e[2];let{data:d,error:p,isPending:m}=A(l,u);if(p){let t;return e[3]===p?t=e[4]:(t=(0,U.jsx)(j,{error:p}),e[3]=p,e[4]=t),t}if(m||!d){let t;return e[5]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,U.jsx)(N,{size:`medium`,centered:!0}),e[5]=t):t=e[5],t}let h=i===`vertical`,g;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,U.jsx)(s,{placeholder:`Search snippets...`,className:`h-6 m-1`,rootClassName:`flex-1 border-r`}),e[6]=g):g=e[6];let _,v;e[7]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,U.jsxs)(`div`,{className:`flex items-center w-full border-b`,children:[g,(0,U.jsx)(G,{children:(0,U.jsx)(`button`,{className:`float-right px-2 m-0 h-full hover:bg-accent hover:text-accent-foreground`,children:(0,U.jsx)(x,{className:`h-4 w-4`})})})]}),v=(0,U.jsx)(c,{children:`No results`}),e[7]=_,e[8]=v):(_=e[7],v=e[8]);let y;e[9]===Symbol.for(`react.memo_cache_sentinel`)?(y=e=>r(e),e[9]=y):y=e[9];let b;e[10]===d.snippets?b=e[11]:(b=(0,U.jsx)(I,{defaultSize:40,minSize:20,maxSize:70,children:(0,U.jsxs)(o,{className:`h-full rounded-none`,children:[_,v,(0,U.jsx)(X,{onSelect:y,snippets:d.snippets})]})}),e[10]=d.snippets,e[11]=b);let S=h?`h-1`:`w-1`,C;e[12]===S?C=e[13]:(C=f(`bg-border hover:bg-primary/50 transition-colors`,S),e[12]=S,e[13]=C);let w;e[14]===C?w=e[15]:(w=(0,U.jsx)(P,{className:C}),e[14]=C,e[15]=w);let T;e[16]===n?T=e[17]:(T=(0,U.jsx)(I,{defaultSize:60,minSize:20,children:(0,U.jsx)(V.Suspense,{children:(0,U.jsx)(`div`,{className:`h-full snippet-viewer flex flex-col overflow-hidden`,children:n?(0,U.jsx)(Y,{snippet:n,onClose:()=>r(void 0)},n.title):(0,U.jsx)(L,{title:``,description:`Click on a snippet to view its content.`})})})}),e[16]=n,e[17]=T);let E;return e[18]!==i||e[19]!==a||e[20]!==T||e[21]!==b||e[22]!==w?(E=(0,U.jsx)(`div`,{className:`flex-1 overflow-hidden h-full`,children:(0,U.jsxs)(F,{direction:i,className:`h-full`,children:[b,w,T]},a)}),e[18]=i,e[19]=a,e[20]=T,e[21]=b,e[22]=w,e[23]=E):E=e[23],E},Y=e=>{let t=(0,H.c)(33),{snippet:n,onClose:a}=e,{theme:o}=k(),{createNewCell:s}=r(),c=i(),l;t[0]!==s||t[1]!==c||t[2]!==n.sections?(l=()=>{for(let e of n.sections.toReversed())e.code&&s({code:e.code,before:!1,cellId:c??`__end__`,skipIfCodeExists:!0})},t[0]=s,t[1]=c,t[2]=n.sections,t[3]=l):l=t[3];let u=l,d;t[4]!==s||t[5]!==c?(d=e=>{s({code:e,before:!1,cellId:c??`__end__`})},t[4]=s,t[5]=c,t[6]=d):d=t[6];let f=d,p;t[7]===n.title?p=t[8]:(p=(0,U.jsx)(`span`,{children:n.title}),t[7]=n.title,t[8]=p);let b;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,U.jsx)(y,{className:`h-4 w-4`}),t[9]=b):b=t[9];let x;t[10]===a?x=t[11]:(x=(0,U.jsx)(h,{size:`sm`,variant:`ghost`,onClick:a,className:`h-6 w-6 p-0 hover:bg-muted-foreground/10`,children:b}),t[10]=a,t[11]=x);let S;t[12]!==p||t[13]!==x?(S=(0,U.jsxs)(`div`,{className:`text-sm font-semibold bg-muted border-y px-2 py-1 flex justify-between items-center`,children:[p,x]}),t[12]=p,t[13]=x,t[14]=S):S=t[14];let C;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,U.jsx)(_,{className:`ml-2 h-4 w-4`}),t[15]=C):C=t[15];let w;t[16]===u?w=t[17]:(w=(0,U.jsx)(`div`,{className:`flex justify-end`,children:(0,U.jsx)(z,{children:(0,U.jsxs)(h,{className:`float-right`,size:`xs`,variant:`outline`,onClick:u,children:[`Insert snippet`,C]})})}),t[16]=u,t[17]=w);let T;if(t[18]!==f||t[19]!==n.sections||t[20]!==n.title||t[21]!==o){let e;t[23]!==f||t[24]!==n.title||t[25]!==o?(e=e=>{let{code:t,html:r,id:i}=e;if(r)return(0,U.jsx)(`div`,{children:M({html:r})},`${n.title}-${i}`);if(!t)return null;let{language:a,code:s}=g(t);return(0,U.jsxs)(`div`,{className:`relative hover-actions-parent pr-2`,children:[(0,U.jsx)(z,{children:(0,U.jsx)(m,{content:`Insert snippet`,children:(0,U.jsx)(h,{className:`absolute -top-2 -right-1 z-10 hover-action px-2 bg-background`,size:`sm`,variant:`outline`,onClick:()=>{f(t)},children:(0,U.jsx)(_,{className:`h-5 w-5`})})})}),(0,U.jsx)(V.Suspense,{children:(0,U.jsx)(v,{theme:o===`dark`?`dark`:`light`,language:a,className:`cm border rounded overflow-hidden`,extensions:q,value:s,readOnly:!0},`${n.title}-${i}`)})]},`${n.title}-${i}`)},t[23]=f,t[24]=n.title,t[25]=o,t[26]=e):e=t[26],T=n.sections.map(e),t[18]=f,t[19]=n.sections,t[20]=n.title,t[21]=o,t[22]=T}else T=t[22];let E;t[27]!==w||t[28]!==T?(E=(0,U.jsxs)(`div`,{className:`px-2 py-2 space-y-4 overflow-auto flex-1`,children:[w,T]}),t[27]=w,t[28]=T,t[29]=E):E=t[29];let D;return t[30]!==E||t[31]!==S?(D=(0,U.jsxs)(U.Fragment,{children:[S,E]}),t[30]=E,t[31]=S,t[32]=D):D=t[32],D},X=e=>{let t=(0,H.c)(7),{snippets:r,onSelect:i}=e,o;if(t[0]!==i||t[1]!==r){let e;t[3]===i?e=t[4]:(e=e=>(0,U.jsx)(a,{className:`rounded-none`,onSelect:()=>i(e),children:(0,U.jsx)(`div`,{className:`flex flex-row gap-2 items-center`,children:(0,U.jsx)(`span`,{className:`mt-1 text-accent-foreground`,children:e.title})})},e.title),t[3]=i,t[4]=e),o=r.map(e),t[0]=i,t[1]=r,t[2]=o}else o=t[2];let s;return t[5]===o?s=t[6]:(s=(0,U.jsx)(n,{className:`flex flex-col overflow-auto`,children:o}),t[5]=o,t[6]=s),s};export{J as default};
@@ -1 +0,0 @@
1
- import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{f as t,l as n,u as r}from"./useEvent-Dc9HkKI2.js";import{t as i}from"./react-CUdNIagt.js";import{M as a,dr as o,lo as s,q as c}from"./cells-C0itXtA7.js";import{t as l}from"./compiler-runtime-BQ9S8nyo.js";import{t as u}from"./cn-ldLVeaqm.js";import{t as d}from"./jsx-runtime-B74pBk57.js";import{t as f}from"./tooltip-DR2Z2N4w.js";import{t as p}from"./createLucideIcon-rHn2EdoM.js";import{o as m}from"./paths-CzfpItSz.js";import{i as h,r as g}from"./panels-DwxpnIFf.js";import{a as _}from"./useNumberFormatter-C4-_TnkF.js";import{t as v}from"./chevron-right-DOPs2jx8.js";import{V as y,r as b}from"./RunButton-IMtEkRXV.js";import{t as x}from"./circle-play-X3K8DkEc.js";import{r as S}from"./useTheme-Ho3YdAx3.js";import{r as C,t as w}from"./react-vega-DNkV_C37.js";import{A as T,gn as E,hn as D,mn as O,nr as k}from"./index-CcaMC2ZX.js";import{t as A}from"./empty-state-CzxjZqGW.js";import{t as j}from"./clear-button-BGfeXcJ3.js";import{p as M}from"./edit-page-Cw1A5Rhq.js";var N=p(`circle-ellipsis`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M17 12h.01`,key:`1m0b6t`}],[`path`,{d:`M12 12h.01`,key:`1mp3jc`}],[`path`,{d:`M7 12h.01`,key:`eqddd0`}]]),P=e(i(),1),F=l(),I=`hoveredCellId`,L=`cellHover`,R=`cellNum`,z=`cell`,B=`startTimestamp`,V=`endTimestamp`,H=`status`;function U(e,t,n,r){let i=`hoursminutessecondsmilliseconds`;return{$schema:`https://vega.github.io/schema/vega-lite/v6.json`,background:r===`dark`?`black`:void 0,mark:{type:`bar`,cornerRadius:2},params:[{name:I,bind:{element:`#${t}`}},{name:L,select:{type:`point`,on:`mouseover`,fields:[z],clear:`mouseout`}}],height:{step:n===`sideBySide`?26:21},encoding:{y:{field:R,scale:{paddingInner:.2},sort:{field:`sortPriority`},title:`cell`,axis:n===`sideBySide`?null:void 0},x:{field:B,type:`temporal`,axis:{orient:`top`,title:null}},x2:{field:V,type:`temporal`},tooltip:[{field:B,type:`temporal`,timeUnit:i,title:`Start`},{field:V,type:`temporal`,timeUnit:i,title:`End`}],size:{value:{expr:`${I} == toString(datum.${z}) ? 19.5 : 18`}},color:{field:H,scale:{domain:[`success`,`error`],range:[`#37BE5F`,`red`]},legend:null}},data:{values:e},transform:[{calculate:`datum.${H} === 'queued' ? 9999999999999 : datum.${B}`,as:`sortPriority`}],config:{view:{stroke:`transparent`}}}}function W(e){try{let t=new Date(e*1e3);return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,`0`)}-${String(t.getDate()).padStart(2,`0`)} ${String(t.getHours()).padStart(2,`0`)}:${String(t.getMinutes()).padStart(2,`0`)}:${String(t.getSeconds()).padStart(2,`0`)}.${String(t.getMilliseconds()).padStart(3,`0`)}`}catch{return``}}var G=d(),K=t(new Map),q=()=>{let e=(0,F.c)(34),{runIds:t,runMap:r}=n(g),i=n(K),{clearRuns:a}=h(),{theme:o}=S(),[s,c]=(0,P.useState)(`above`),l=M(),u;e[0]===s?u=e[1]:(u=()=>{c(s===`above`?`sideBySide`:`above`)},e[0]=s,e[1]=u);let d=u;if(t.length===0){let t;return e[2]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,G.jsx)(A,{title:`No traces`,description:(0,G.jsx)(`span`,{children:`Cells that have ran will appear here.`}),icon:(0,G.jsx)(m,{})}),e[2]=t):t=e[2],t}let f;e[3]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,G.jsx)(`label`,{htmlFor:`chartPosition`,className:`text-xs`,children:`Inline chart`}),e[3]=f):f=e[3];let p=s===`sideBySide`,_;e[4]!==p||e[5]!==d?(_=(0,G.jsxs)(`div`,{className:`flex flex-row gap-1 items-center`,children:[f,(0,G.jsx)(`input`,{type:`checkbox`,name:`chartPosition`,"data-testid":`chartPosition`,onClick:d,defaultChecked:p,className:`h-3 cursor-pointer`})]}),e[4]=p,e[5]=d,e[6]=_):_=e[6];let v;e[7]===a?v=e[8]:(v=(0,G.jsx)(j,{dataTestId:`clear-traces-button`,onClick:a}),e[7]=a,e[8]=v);let y;e[9]!==_||e[10]!==v?(y=(0,G.jsxs)(`div`,{className:`flex flex-row justify-start gap-3`,children:[_,v]}),e[9]=_,e[10]=v,e[11]=y):y=e[11];let b;if(e[12]!==s||e[13]!==i||e[14]!==t||e[15]!==r||e[16]!==o){let n;e[18]!==s||e[19]!==i||e[20]!==r||e[21]!==o?(n=(e,t)=>{let n=r.get(e);return n?(0,G.jsx)(J,{run:n,isExpanded:i.get(n.runId),isMostRecentRun:t===0,chartPosition:s,theme:o},n.runId):null},e[18]=s,e[19]=i,e[20]=r,e[21]=o,e[22]=n):n=e[22],b=t.map(n),e[12]=s,e[13]=i,e[14]=t,e[15]=r,e[16]=o,e[17]=b}else b=e[17];let x;e[23]===b?x=e[24]:(x=(0,G.jsx)(`div`,{className:`flex flex-col gap-3`,children:b}),e[23]=b,e[24]=x);let C;e[25]!==y||e[26]!==x?(C=(0,G.jsxs)(`div`,{className:`py-1 px-2 overflow-y-scroll h-full`,children:[y,x]}),e[25]=y,e[26]=x,e[27]=C):C=e[27];let w=C;if(l===`sidebar`)return w;let T;e[28]===w?T=e[29]:(T=(0,G.jsx)(O,{defaultSize:50,minSize:30,maxSize:80,children:w}),e[28]=w,e[29]=T);let k;e[30]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,G.jsx)(E,{className:`w-1 bg-border hover:bg-primary/50 transition-colors`}),e[30]=k):k=e[30];let N;e[31]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,G.jsx)(O,{defaultSize:50,children:(0,G.jsx)(`div`,{})}),e[31]=N):N=e[31];let I;return e[32]===T?I=e[33]:(I=(0,G.jsxs)(D,{direction:`horizontal`,className:`h-full`,children:[T,k,N]}),e[32]=T,e[33]=I),I},J=e=>{let t=(0,F.c)(22),{run:n,isMostRecentRun:i,chartPosition:a,isExpanded:o,theme:s}=e,l=o,u=r(K);l??=i;let d;t[0]!==l||t[1]!==n.runId||t[2]!==u?(d=()=>{u(e=>{let t=new Map(e);return t.set(n.runId,!l),t})},t[0]=l,t[1]=n.runId,t[2]=u,t[3]=d):d=t[3];let f=d,p=l?_:v,m;t[4]===p?m=t[5]:(m=(0,G.jsx)(p,{height:16,className:`inline`}),t[4]=p,t[5]=m);let h=m,g;t[6]===n.runStartTime?g=t[7]:(g=c(n.runStartTime),t[6]=n.runStartTime,t[7]=g);let y;t[8]!==h||t[9]!==f||t[10]!==g?(y=(0,G.jsxs)(`span`,{className:`text-sm cursor-pointer`,onClick:f,children:[`Run - `,g,h]}),t[8]=h,t[9]=f,t[10]=g,t[11]=y):y=t[11];let b=y;if(!l){let e;t[12]===b?e=t[13]:(e=(0,G.jsx)(`pre`,{className:`font-mono font-semibold`,children:b}),t[12]=b,t[13]=e);let r;return t[14]!==n.runId||t[15]!==e?(r=(0,G.jsx)(`div`,{className:`flex flex-col`,children:e},n.runId),t[14]=n.runId,t[15]=e,t[16]=r):r=t[16],r}let x;return t[17]!==a||t[18]!==n||t[19]!==s||t[20]!==b?(x=(0,G.jsx)(Y,{run:n,chartPosition:a,theme:s,title:b},n.runId),t[17]=a,t[18]=n,t[19]=s,t[20]=b,t[21]=x):x=t[21],x},Y=e=>{let t=(0,F.c)(40),{run:n,chartPosition:r,theme:i,title:s}=e,[c,l]=(0,P.useState)(),u=(0,P.useRef)(null),{ref:d,width:f}=T(),p=f===void 0?300:f,m=a(),h,g;if(t[0]!==m||t[1]!==r||t[2]!==n.cellRuns||t[3]!==n.runId||t[4]!==i){let e=[...n.cellRuns.values()].map(e=>{let t=e.elapsedTime??0;return{cell:e.cellId,cellNum:m.inOrderIds.indexOf(e.cellId),startTimestamp:W(e.startTime),endTimestamp:W(e.startTime+t),elapsedTime:o(t*1e3),status:e.status}});h=`hiddenInputElement-${n.runId}`,g=C(U(e,h,r,i)),t[0]=m,t[1]=r,t[2]=n.cellRuns,t[3]=n.runId,t[4]=i,t[5]=h,t[6]=g}else h=t[5],g=t[6];let _=g.spec,v=i===`dark`?`dark`:void 0,y=p-50,b=r===`above`?120:100,x;t[7]!==v||t[8]!==y||t[9]!==b?(x={theme:v,width:y,height:b,actions:!1,mode:`vega`,renderer:`canvas`},t[7]=v,t[8]=y,t[9]=b,t[10]=x):x=t[10];let S;t[11]!==x||t[12]!==_?(S={ref:u,spec:_,options:x},t[11]=x,t[12]=_,t[13]=S):S=t[13];let E=w(S),D;t[14]===E?.view?D=t[15]:(D=()=>{let e=[{signalName:L,handler:(e,t)=>{let n=t.cell?.[0]??void 0;l(n??null)}}];return e.forEach(e=>{let{signalName:t,handler:n}=e;E?.view.addSignalListener(t,n)}),()=>{e.forEach(e=>{let{signalName:t,handler:n}=e;E?.view.removeSignalListener(t,n)})}},t[14]=E?.view,t[15]=D);let O;t[16]===E?O=t[17]:(O=[E],t[16]=E,t[17]=O),(0,P.useEffect)(D,O);let k;t[18]!==h||t[19]!==c||t[20]!==n?(k=(0,G.jsx)(X,{run:n,hoveredCellId:c,hiddenInputElementId:h}),t[18]=h,t[19]=c,t[20]=n,t[21]=k):k=t[21];let A=k,j=r===`sideBySide`?`-mt-0.5 flex-1`:``,M;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,G.jsx)(P.Suspense,{children:(0,G.jsx)(`div`,{ref:u})}),t[22]=M):M=t[22];let N;t[23]!==d||t[24]!==j?(N=(0,G.jsx)(`div`,{className:j,ref:d,children:M}),t[23]=d,t[24]=j,t[25]=N):N=t[25];let I=N;if(r===`above`){let e;t[26]!==I||t[27]!==s||t[28]!==A?(e=(0,G.jsxs)(`pre`,{className:`font-mono font-semibold`,children:[s,I,A]}),t[26]=I,t[27]=s,t[28]=A,t[29]=e):e=t[29];let r;return t[30]!==n.runId||t[31]!==e?(r=(0,G.jsx)(`div`,{className:`flex flex-col`,children:e},n.runId),t[30]=n.runId,t[31]=e,t[32]=r):r=t[32],r}let R;t[33]!==s||t[34]!==A?(R=(0,G.jsxs)(`pre`,{className:`font-mono font-semibold`,children:[s,A]}),t[33]=s,t[34]=A,t[35]=R):R=t[35];let z;return t[36]!==I||t[37]!==n.runId||t[38]!==R?(z=(0,G.jsxs)(`div`,{className:`flex flex-row`,children:[R,I]},n.runId),t[36]=I,t[37]=n.runId,t[38]=R,t[39]=z):z=t[39],z},X=e=>{let t=(0,F.c)(12),{run:n,hoveredCellId:r,hiddenInputElementId:i}=e,a=(0,P.useRef)(null),o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=e=>{a.current&&(a.current.value=String(e),a.current.dispatchEvent(new Event(`input`,{bubbles:!0})))},t[0]=o):o=t[0];let s=o,c=r||``,l;t[1]!==i||t[2]!==c?(l=(0,G.jsx)(`input`,{type:`text`,id:i,defaultValue:c,hidden:!0,ref:a}),t[1]=i,t[2]=c,t[3]=l):l=t[3];let u;t[4]===n.cellRuns?u=t[5]:(u=[...n.cellRuns.values()],t[4]=n.cellRuns,t[5]=u);let d;t[6]!==r||t[7]!==u?(d=u.map(e=>(0,G.jsx)(Q,{cellRun:e,hovered:e.cellId===r,dispatchHoverEvent:s},e.cellId)),t[6]=r,t[7]=u,t[8]=d):d=t[8];let f;return t[9]!==l||t[10]!==d?(f=(0,G.jsxs)(`div`,{className:`text-xs mt-0.5 ml-3 flex flex-col gap-0.5`,children:[l,d]}),t[9]=l,t[10]=d,t[11]=f):f=t[11],f},Z={success:(0,G.jsx)(y,{color:`green`,size:14}),running:(0,G.jsx)(x,{color:`var(--blue-10)`,size:14}),error:(0,G.jsx)(s,{color:`red`,size:14}),queued:(0,G.jsx)(N,{color:`grey`,size:14})},Q=e=>{let t=(0,F.c)(39),{cellRun:n,hovered:r,dispatchHoverEvent:i}=e,a;t[0]===n.elapsedTime?a=t[1]:(a=n.elapsedTime?o(n.elapsedTime*1e3):`-`,t[0]=n.elapsedTime,t[1]=a);let s=a,l;t[2]!==n.elapsedTime||t[3]!==s?(l=n.elapsedTime?(0,G.jsxs)(`span`,{children:[`This cell took `,(0,G.jsx)(b,{elapsedTime:s}),` to run`]}):(0,G.jsx)(`span`,{children:`This cell has not been run`}),t[2]=n.elapsedTime,t[3]=s,t[4]=l):l=t[4];let d=l,p;t[5]!==n.cellId||t[6]!==i?(p=()=>{i(n.cellId)},t[5]=n.cellId,t[6]=i,t[7]=p):p=t[7];let m=p,h;t[8]===i?h=t[9]:(h=()=>{i(null)},t[8]=i,t[9]=h);let g=h,_=r&&`bg-(--gray-3) opacity-100`,v;t[10]===_?v=t[11]:(v=u(`flex flex-row gap-2 py-1 px-1 opacity-70 hover:bg-(--gray-3) hover:opacity-100`,_),t[10]=_,t[11]=v);let y;t[12]===n.startTime?y=t[13]:(y=c(n.startTime),t[12]=n.startTime,t[13]=y);let x;t[14]===y?x=t[15]:(x=(0,G.jsxs)(`span`,{className:`text-(--gray-10) dark:text-(--gray-11)`,children:[`[`,y,`]`]}),t[14]=y,t[15]=x);let S;t[16]===n.cellId?S=t[17]:(S=(0,G.jsxs)(`span`,{className:`text-(--gray-10) w-16 overflow-hidden`,children:[`(`,(0,G.jsx)(k,{cellId:n.cellId}),`)`]}),t[16]=n.cellId,t[17]=S);let C;t[18]===n.code?C=t[19]:(C=(0,G.jsx)(`span`,{className:`w-40 truncate -ml-1`,children:n.code}),t[18]=n.code,t[19]=C);let w;t[20]===s?w=t[21]:(w=(0,G.jsx)(`span`,{className:`text-(--gray-10) dark:text-(--gray-11)`,children:s}),t[20]=s,t[21]=w);let T;t[22]!==d||t[23]!==w?(T=(0,G.jsx)(f,{content:d,children:w}),t[22]=d,t[23]=w,t[24]=T):T=t[24];let E=Z[n.status],D;t[25]!==n.status||t[26]!==E?(D=(0,G.jsx)(f,{content:n.status,children:E}),t[25]=n.status,t[26]=E,t[27]=D):D=t[27];let O;t[28]!==T||t[29]!==D?(O=(0,G.jsxs)(`div`,{className:`flex flex-row gap-1 w-16 justify-end -ml-2`,children:[T,D]}),t[28]=T,t[29]=D,t[30]=O):O=t[30];let A;return t[31]!==m||t[32]!==g||t[33]!==C||t[34]!==O||t[35]!==v||t[36]!==x||t[37]!==S?(A=(0,G.jsxs)(`div`,{className:v,onMouseEnter:m,onMouseLeave:g,children:[x,S,C,O]}),t[31]=m,t[32]=g,t[33]=C,t[34]=O,t[35]=v,t[36]=x,t[37]=S,t[38]=A):A=t[38],A};export{q as Tracing};