@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.
- package/dist/assets/{ConnectedDataExplorerComponent-DkTZ7AvX.js → ConnectedDataExplorerComponent-BpquZl-D.js} +1 -1
- package/dist/assets/{ErrorBoundary-DTpbqvzY.js → ErrorBoundary-BQqmHnXk.js} +2 -2
- package/dist/assets/{LazyAnyLanguageCodeMirror-DYsZfkSk.js → LazyAnyLanguageCodeMirror-CvxfNkWH.js} +2 -2
- package/dist/assets/{RunButton-IMtEkRXV.js → RunButton-DNkIh9-L.js} +8 -8
- package/dist/assets/{abnfDiagram-VCTEODGH-pTFf_XLR.js → abnfDiagram-VCTEODGH-CnUMzJx3.js} +1 -1
- package/dist/assets/add-cell-with-ai-BMP2uVIa.js +76 -0
- package/dist/assets/{agent-panel-DxU4qgxk.js → agent-panel-45n6y1yx.js} +5 -5
- package/dist/assets/ai-model-dropdown-DHCy-cih.js +3 -0
- package/dist/assets/{any-language-editor-DBp5CC3w.js → any-language-editor-C4RQC2Cx.js} +1 -1
- package/dist/assets/{app-config-button-BjxXAmKd.js → app-config-button-_8eL7EEp.js} +1 -1
- package/dist/assets/{architectureDiagram-5GKGNRK7-C7t0AR-N.js → architectureDiagram-5GKGNRK7-bfcUxn_j.js} +1 -1
- package/dist/assets/arrow-down-BFFrjzad.js +1 -0
- package/dist/assets/{blockDiagram-I7D4REHJ-DZgXohrV.js → blockDiagram-I7D4REHJ-BpF8yI-R.js} +1 -1
- package/dist/assets/{cache-panel-DDlfv8BP.js → cache-panel-BR4yhYeu.js} +1 -1
- package/dist/assets/cells-BcQ8Tm3j.js +220 -0
- package/dist/assets/{chat-display-CHxh_MGC.js → chat-display-C_qIajXO.js} +1 -1
- package/dist/assets/{chat-panel-Ca6yjxkg.js → chat-panel-DZ_Wgf9u.js} +3 -3
- package/dist/assets/{chat-ui-D5zW1hYM.js → chat-ui-BrP572Cm.js} +1 -1
- package/dist/assets/{chunk-IMKFNOWR-CAmhQu-F.js → chunk-IMKFNOWR-C-rPN2GF.js} +1 -1
- package/dist/assets/{chunk-SHT3W25Y-BqEFXoRq.js → chunk-SHT3W25Y-P5kn0hWZ.js} +1 -1
- package/dist/assets/{chunk-SVP7TREG-Dxu0eRzD.js → chunk-SVP7TREG-BDSmMBZT.js} +1 -1
- package/dist/assets/{chunk-TICWLB2K-gHNMAWa9.js → chunk-TICWLB2K-D3dtJ1vz.js} +1 -1
- package/dist/assets/{classDiagram-ZZMXUADV-DE3i3SzX.js → classDiagram-ZZMXUADV-DHIDyAFc.js} +1 -1
- package/dist/assets/{classDiagram-v2-VYDZK3BY-DE3i3SzX.js → classDiagram-v2-VYDZK3BY-DHIDyAFc.js} +1 -1
- package/dist/assets/{code-visibility-kUtIY_sH.js → code-visibility-DB0T__on.js} +1 -1
- package/dist/assets/{command-palette-BZJRR34P.js → command-palette-DvYu24TH.js} +1 -1
- package/dist/assets/{common-DtiDLSXB.js → common-C53kupuv.js} +1 -1
- package/dist/assets/{components-DScgyZ8j.js → components-BrsyCK82.js} +1 -1
- package/dist/assets/{components-CHh1MGbL.js → components-BuvKvfSS.js} +1 -1
- package/dist/assets/config-CmBpjGXk.js +1 -0
- package/dist/assets/{cynefinDiagram-5FMLGOSQ-C8RK-PLH.js → cynefinDiagram-5FMLGOSQ-CYdbFzEV.js} +1 -1
- package/dist/assets/{dagre-GXQ25YYZ-DZ6JGcBM.js → dagre-GXQ25YYZ-CSEPMX9I.js} +1 -1
- package/dist/assets/dagre-SOh4Qguh.js +1 -0
- package/dist/assets/{data-grid-overlay-editor-BkZfO-uG.js → data-grid-overlay-editor-ierQMJA6.js} +1 -1
- package/dist/assets/dependency-graph-panel-DBaLCinF.js +5 -0
- package/dist/assets/{diagram-S7CK7UJ4-BN77DDKM.js → diagram-S7CK7UJ4-D5YIr9T4.js} +1 -1
- package/dist/assets/{diagram-UQ7AKVKN-BZthP0T4.js → diagram-UQ7AKVKN-uqarxJJM.js} +1 -1
- package/dist/assets/{diagram-VX7I27RA-D3GF3lRq.js → diagram-VX7I27RA-HcvMY8pK.js} +1 -1
- package/dist/assets/{diagram-Z3DM3KII-DnsKITpy.js → diagram-Z3DM3KII-fJYqqcs8.js} +1 -1
- package/dist/assets/{documentation-panel-D8fz9UDV.js → documentation-panel-LhtR1Gdz.js} +1 -1
- package/dist/assets/{ebnfDiagram-PWID7BFC-CHqqdhbQ.js → ebnfDiagram-PWID7BFC-z1dFbGgp.js} +1 -1
- package/dist/assets/edit-page-B28h9Fb6.js +176 -0
- package/dist/assets/{erDiagram-RLTQ6QDP-ChDyfc3w.js → erDiagram-RLTQ6QDP-D0QTGZaN.js} +1 -1
- package/dist/assets/{error-entries-Dy7E9tUS.js → error-entries-C-LFkdXb.js} +1 -1
- package/dist/assets/{error-panel-FYd4Tvsc.js → error-panel-JrTKWez-.js} +1 -1
- package/dist/assets/{feedback-button-Zjt-Mi38.js → feedback-button-CXZUuGO0.js} +2 -2
- package/dist/assets/file-explorer-panel-0uckfsy9.js +1 -0
- package/dist/assets/{file-name-input-DifonhZ7.js → file-name-input-B1oP4qI1.js} +1 -1
- package/dist/assets/{flowDiagram-HODETNUW-CelwDl0Y.js → flowDiagram-HODETNUW-CvnIcAyp.js} +1 -1
- package/dist/assets/{gallery-page-C0T1oyzr.js → gallery-page-Dr6gmPct.js} +1 -1
- package/dist/assets/{glide-data-editor-Dqd-if6R.js → glide-data-editor-BdNlPATo.js} +4 -4
- package/dist/assets/{graphlib-6_f7N0YM.js → graphlib-coUtpRhg.js} +1 -1
- package/dist/assets/has-HvSiby4C.js +1 -0
- package/dist/assets/home-page-DU_vk7YP.js +4 -0
- package/dist/assets/index-C0mx13kv.css +2 -0
- package/dist/assets/index-anJECncb.js +62 -0
- package/dist/assets/{infoDiagram-27XIBGKW-Dh0ztpYZ.js → infoDiagram-27XIBGKW-B-ESiKKL.js} +1 -1
- package/dist/assets/{ishikawaDiagram-5VMMS53U-Yy11Lj-8.js → ishikawaDiagram-5VMMS53U-958453Qs.js} +1 -1
- package/dist/assets/{kanban-definition-UXKFOSKX-_hCm9ITM.js → kanban-definition-UXKFOSKX-Cl3MvgdV.js} +1 -1
- package/dist/assets/{logs-panel-D_Ki0PRi.js → logs-panel-B6dW8QcS.js} +1 -1
- package/dist/assets/{mermaid-DUZOkwYg.js → mermaid-Dk7Zo_kD.js} +4 -4
- package/dist/assets/{mindmap-definition-YA3MSWOX-CqKVab9Z.js → mindmap-definition-YA3MSWOX-ObRzpp8l.js} +1 -1
- package/dist/assets/{number-overlay-editor-BFwgibS5.js → number-overlay-editor-BaA6YHpZ.js} +1 -1
- package/dist/assets/{outline-panel-BVLrHsJa.js → outline-panel-AF6eqkBP.js} +1 -1
- package/dist/assets/packages-panel-DnQBjrbw.js +1 -0
- package/dist/assets/panel-context-BPaQeOuV.js +1 -0
- package/dist/assets/panels-Gl9xHiUG.js +33 -0
- package/dist/assets/{pegDiagram-XKGWAZYB-Cq-QrQFc.js → pegDiagram-XKGWAZYB-Dr1N-uz9.js} +1 -1
- package/dist/assets/{pieDiagram-E7YTZNPT-DXU0ndOt.js → pieDiagram-E7YTZNPT-CuOB3ooB.js} +1 -1
- package/dist/assets/{process-output-B76bPsnA.js → process-output-dY19eMY7.js} +1 -1
- package/dist/assets/{railroadDiagram-O6MQD6OU-CFI_pgSK.js → railroadDiagram-O6MQD6OU-B-2q9lGc.js} +1 -1
- package/dist/assets/{requirementDiagram-BXWQKSXE-DgdygEWz.js → requirementDiagram-BXWQKSXE-DDO3d-q-.js} +1 -1
- package/dist/assets/{reveal-component-BqiZOsW3.js → reveal-component-CVZuomdL.js} +3 -3
- package/dist/assets/run-page-q9RV38Se.js +1 -0
- package/dist/assets/scratchpad-panel-CB7Fy9xQ.js +1 -0
- package/dist/assets/scroll-to-bottom-button-BSCkDXet.js +1 -0
- package/dist/assets/{secrets-panel-CeovmJAu.js → secrets-panel-fyK3DrMo.js} +1 -1
- package/dist/assets/{sequenceDiagram-WJ2MYXX4-Cq7P3SPg.js → sequenceDiagram-WJ2MYXX4-09ej9W_c.js} +1 -1
- package/dist/assets/session-panel-CQR7EQYe.js +1 -0
- package/dist/assets/snippets-panel-C8pCQY6-.js +1 -0
- package/dist/assets/{stateDiagram-D77RDMKH-CO8GuJdh.js → stateDiagram-D77RDMKH-Dwreh_3X.js} +1 -1
- package/dist/assets/{stateDiagram-v2-MP3YSRHH-DA7CflqT.js → stateDiagram-v2-MP3YSRHH-CYctHUHC.js} +1 -1
- package/dist/assets/{swimlanes-42K2YHIH-Bkf4BWja.js → swimlanes-42K2YHIH-CqtUaFZN.js} +1 -1
- package/dist/assets/{swimlanesDiagram-VR7AAH4N-Bf0FHwi-.js → swimlanesDiagram-VR7AAH4N-BTvyGqcs.js} +1 -1
- package/dist/assets/{swiper-component-Dcb47cI1.js → swiper-component-BPjhKuFC.js} +1 -1
- package/dist/assets/{terminal-bvd8BLSi.js → terminal-CWmhjUVd.js} +2 -2
- package/dist/assets/{timeline-definition-24CTP7MA-CWdT681e.js → timeline-definition-24CTP7MA-DESfjZe6.js} +1 -1
- package/dist/assets/tracing-DHQdLJrw.js +1 -0
- package/dist/assets/{tracing-panel-AQUl8b58.js → tracing-panel-DkDpfzxp.js} +2 -2
- package/dist/assets/{useCellActionButton-DIiKKxoN.js → useCellActionButton-JBMxiVrN.js} +1 -1
- package/dist/assets/{vega-component-C5LY21OO.js → vega-component-C3dIfNSQ.js} +1 -1
- package/dist/assets/{vega-embed-container-C6Hr9CZj.js → vega-embed-container-DRnOQFW3.js} +1 -1
- package/dist/assets/{vennDiagram-4TSXK5OY-B3uJF3gV.js → vennDiagram-4TSXK5OY-DVP0MtbH.js} +1 -1
- package/dist/assets/{wardleyDiagram-VM6X3IG4-DGmcLh5J.js → wardleyDiagram-VM6X3IG4-Boyg2AlL.js} +1 -1
- package/dist/assets/{xychartDiagram-S5SC5T6Z-kFxqIAk2.js → xychartDiagram-S5SC5T6Z-6MNoagFi.js} +1 -1
- package/dist/index.html +6 -6
- package/package.json +1 -1
- package/src/components/editor/alerts/__tests__/connection-notice.test.tsx +186 -0
- package/src/components/editor/alerts/__tests__/startup-progress.test.tsx +185 -0
- package/src/components/editor/alerts/connection-notice.tsx +100 -54
- package/src/components/editor/alerts/startup-output.tsx +173 -0
- package/src/components/editor/alerts/startup-progress.tsx +204 -0
- package/src/components/editor/chrome/panels/__tests__/packages-panel.test.tsx +53 -4
- package/src/components/editor/chrome/panels/__tests__/sandbox-details.test.tsx +358 -0
- package/src/components/editor/chrome/panels/__tests__/sandbox-recovery.test.tsx +5 -2
- package/src/components/editor/chrome/panels/packages-panel.tsx +32 -21
- package/src/components/editor/chrome/panels/sandbox-details-state.ts +38 -0
- package/src/components/editor/chrome/panels/sandbox-panel.tsx +188 -131
- package/src/components/editor/chrome/panels/sandbox-toggle.tsx +52 -0
- package/src/components/editor/chrome/wrapper/app-chrome.tsx +7 -0
- package/src/components/editor/package-alert.tsx +112 -66
- package/src/core/alerts/__tests__/environment.test.ts +183 -0
- package/src/core/alerts/__tests__/state.test.tsx +240 -0
- package/src/core/alerts/environment.ts +57 -0
- package/src/core/alerts/state.ts +155 -99
- package/src/core/islands/bootstrap.ts +2 -1
- package/src/core/kernel/messages.ts +2 -2
- package/src/core/network/connection-notice.ts +45 -12
- package/src/core/network/connection.ts +19 -0
- package/src/core/network/useConnectionNotice.ts +53 -0
- package/src/core/packages/__tests__/useSandboxController.test.tsx +86 -5
- package/src/core/packages/sandbox-state.ts +56 -4
- package/src/core/packages/useSandboxController.ts +27 -7
- package/src/core/websocket/__tests__/useMarimoKernelConnection.hook.test.tsx +199 -8
- package/src/core/websocket/types.ts +1 -1
- package/src/core/websocket/useMarimoKernelConnection.tsx +31 -19
- package/src/stories/sandbox.stories.tsx +230 -50
- package/dist/assets/add-cell-with-ai-CSNC0MIy.js +0 -76
- package/dist/assets/ai-model-dropdown-Ct4CTWKe.js +0 -3
- package/dist/assets/cells-C0itXtA7.js +0 -220
- package/dist/assets/config-CBLBAU5c.js +0 -1
- package/dist/assets/dagre-Be6hV3Qt.js +0 -1
- package/dist/assets/dependency-graph-panel-DhGTFsO9.js +0 -5
- package/dist/assets/edit-page-Cw1A5Rhq.js +0 -176
- package/dist/assets/file-explorer-panel-BpklXFSu.js +0 -1
- package/dist/assets/has-D5vyh6J_.js +0 -1
- package/dist/assets/home-page-CN05bwXu.js +0 -4
- package/dist/assets/index-B8OSEJVD.css +0 -2
- package/dist/assets/index-CcaMC2ZX.js +0 -62
- package/dist/assets/packages-panel-cq-qnvM5.js +0 -1
- package/dist/assets/panels-DwxpnIFf.js +0 -33
- package/dist/assets/run-page-DVqnr-8x.js +0 -1
- package/dist/assets/scratchpad-panel-BT2lF-Gs.js +0 -1
- package/dist/assets/scroll-to-bottom-button-D4qWtyN8.js +0 -1
- package/dist/assets/session-panel-CGddxX8c.js +0 -1
- package/dist/assets/snippets-panel-UawnfExC.js +0 -1
- package/dist/assets/tracing-BbV840Cl.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{l as t,t as n,u as r}from"./useEvent-Dc9HkKI2.js";import{t as i}from"./react-CUdNIagt.js";import{po as a}from"./cells-C0itXtA7.js";import{t as o}from"./compiler-runtime-BQ9S8nyo.js";import{w as s}from"./utils-B3E7otfg.js";import{r as c}from"./ai-model-dropdown-Ct4CTWKe.js";import{M as l,v as u}from"./config-CBLBAU5c.js";import{t as d}from"./cn-ldLVeaqm.js";import{t as f}from"./jsx-runtime-B74pBk57.js";import{t as p}from"./tooltip-DR2Z2N4w.js";import{r as m}from"./button-BoklZTGL.js";import{a as h}from"./useNumberFormatter-C4-_TnkF.js";import{t as g}from"./chevron-right-DOPs2jx8.js";import{u as _}from"./toDate-BbJ1_N2T.js";import{a as v}from"./input-BDakodZ2.js";import{n as y}from"./copy-BhJktFeI.js";import{t as b}from"./use-toast-CC89xOwH.js";import{r as x}from"./requests-yTHMxhVa.js";import{n as S}from"./useAsyncData-DucTwMkf.js";import{a as C}from"./errors-D9vyuMar.js";import{Fr as w,Hn as T,Nr as E,Qn as D,Sn as O,Yn as k,Zn as A,_n as j,bi as M,bn as N,ei as P,er as F,vn as I,xn as L,yn as R}from"./index-CcaMC2ZX.js";import{t as z}from"./empty-state-CzxjZqGW.js";import{a as B,c as V,l as H,o as U,s as W}from"./edit-page-Cw1A5Rhq.js";var G=e(i(),1),K=o();function ee(e){let t=e.trim();for(let e of[`pip install`,`pip3 install`,`uv add`,`uv pip install`,`poetry add`,`conda install`,`pipenv install`])if(t.toLowerCase().startsWith(e.toLowerCase()))return t.slice(e.length).trim();return t}function q(e,t,r){let{addPackage:i,removePackage:a}=x(),[o,s]=(0,G.useState)(!1),c=(0,G.useRef)(!1);return{loading:o,run:n(async()=>{if(c.current)return;c.current=!0,s(!0);let n=e===`upgrade`?F:D;try{let o={package:t,group:r?.find(e=>e.kind===`group`)?.value},s=await(e===`upgrade`?i({...o,upgrade:!0}):a(o));s.restartRequired?A():s.success?n(t):n(t,s.error||`Package operation failed.`)}catch(e){n(t,C(e))}finally{c.current=!1,s(!1)}})}}function J(){let e=(0,K.c)(8),n=t(M),[r]=s(),i=r.package_management.manager,{getDependencyTree:a,getPackageList:o}=x(),c;e[0]!==a||e[1]!==o?(c=async()=>{let{context:e,tree:t}=await a();return{list:e.kind===`sandbox`?[]:(await o()).packages,context:e,tree:t}},e[0]=a,e[1]=o,e[2]=c):c=e[2];let l;return e[3]!==a||e[4]!==o||e[5]!==n||e[6]!==i?(l=[a,o,i,n],e[3]=a,e[4]=o,e[5]=n,e[6]=i,e[7]=l):l=e[7],S(c,l)}var Y=f(),X=e=>{let t=(0,K.c)(9),{onClick:n,loading:r,children:i,className:a}=e;if(r){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(P,{size:`small`,className:`h-4 w-4 shrink-0 opacity-50`}),t[0]=e):e=t[0],e}let o;t[1]===a?o=t[2]:(o=d(`px-2 h-full text-xs text-muted-foreground hover:text-foreground`,`invisible group-hover:visible`,a),t[1]=a,t[2]=o);let s;t[3]===n?s=t[4]:(s=m.stopPropagation(n),t[3]=n,t[4]=s);let c;return t[5]!==i||t[6]!==o||t[7]!==s?(c=(0,Y.jsx)(`button`,{type:`button`,className:o,onClick:s,children:i}),t[5]=i,t[6]=o,t[7]=s,t[8]=c):c=t[8],c},te=()=>{let e=(0,K.c)(18),n=t(V),r=t(u),i=t(W),a=t(H);if(n?.backend){let t;e[0]!==r||e[1]!==i||e[2]!==a?(t=i&&(!a.pending||!r)?(0,Y.jsx)(U,{}):(0,Y.jsx)(Z,{}),e[0]=r,e[1]=i,e[2]=a,e[3]=t):t=e[3];let n;e[4]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,Y.jsx)(B,{}),e[4]=n):n=e[4];let o;return e[5]===t?o=e[6]:(o=(0,Y.jsxs)(`div`,{className:`flex flex-col flex-1 min-h-0 overflow-hidden`,children:[t,n]}),e[5]=t,e[6]=o),o}if(i){let t;e[7]===i.pending?t=e[8]:(t=i.pending&&(0,Y.jsx)(P,{className:`size-3`}),e[7]=i.pending,e[8]=t);let n;e[9]!==i.title||e[10]!==t?(n=(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[t,i.title]}),e[9]=i.title,e[10]=t,e[11]=n):n=e[11];let r;e[12]===i.error?r=e[13]:(r=i.error&&(0,Y.jsx)(`pre`,{className:`mt-3 text-xs whitespace-pre-wrap break-words max-h-52 overflow-auto`,children:i.error}),e[12]=i.error,e[13]=r);let a;return e[14]!==n||e[15]!==r?(a=(0,Y.jsxs)(`div`,{className:`p-4 text-sm text-muted-foreground`,children:[n,r]}),e[14]=n,e[15]=r,e[16]=a):a=e[16],a}let o;return e[17]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(Z,{}),e[17]=o):o=e[17],o},Z=()=>{let e=(0,K.c)(29),{pending:n}=t(H),[r,i]=G.useState(null),{data:a,error:o,isPending:s}=J();if(s){let t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Y.jsx)(P,{size:`medium`,centered:!0}),e[0]=t):t=e[0],t}if(o){let t;return e[1]===o?t=e[2]:(t=(0,Y.jsx)(T,{error:o}),e[1]=o,e[2]=t),t}let c=a.tree!=null,l=a.tree?.name,u=a?.tree?.version,f=a.context.kind===`sandbox`?a.context.backend:null,p=f!==null,m;e[3]!==p||e[4]!==c||e[5]!==r?(m=p?`tree`:oe(r,c),e[3]=p,e[4]=c,e[5]=r,e[6]=m):m=e[6];let h=m,g=l&&l!==`<root>`?`project`:`environment`,_;e[7]===a.context?_=e[8]:(_=(0,Y.jsx)(ne,{context:a.context}),e[7]=a.context,e[8]=_);let v;e[9]!==n||e[10]!==_?(v=(0,Y.jsx)(`fieldset`,{disabled:n,className:`contents`,children:_}),e[9]=n,e[10]=_,e[11]=v):v=e[11];let y;e[12]!==p||e[13]!==c||e[14]!==l||e[15]!==g||e[16]!==u||e[17]!==h?(y=c&&!p&&(0,Y.jsxs)(`div`,{className:`flex items-center justify-between px-2 py-1 border-b`,children:[(0,Y.jsxs)(`div`,{className:`flex gap-1`,children:[(0,Y.jsx)(`button`,{type:`button`,className:d(`px-2 py-1 text-xs rounded`,h===`list`?`bg-accent text-accent-foreground`:`text-muted-foreground hover:text-foreground`),onClick:()=>i(`list`),children:`List`}),(0,Y.jsx)(`button`,{type:`button`,className:d(`px-2 py-1 text-xs rounded`,h===`tree`?`bg-accent text-accent-foreground`:`text-muted-foreground hover:text-foreground`),onClick:()=>i(`tree`),children:`Tree`})]}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(`div`,{className:`items-center border px-2 py-0.5 text-xs transition-colors focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 text-foreground rounded-sm text-ellipsis block overflow-hidden max-w-fit font-medium`,title:g,children:g}),l&&(0,Y.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[l,u&&` v${u}`]})]})]}),e[12]=p,e[13]=c,e[14]=l,e[15]=g,e[16]=u,e[17]=h,e[18]=y):y=e[18];let b;e[19]!==a.list||e[20]!==a.tree||e[21]!==o||e[22]!==f||e[23]!==h?(b=h===`list`?(0,Y.jsx)(Q,{packages:a.list}):(0,Y.jsx)(ie,{tree:a.tree,error:o,sandboxBackend:f}),e[19]=a.list,e[20]=a.tree,e[21]=o,e[22]=f,e[23]=h,e[24]=b):b=e[24];let x;return e[25]!==v||e[26]!==y||e[27]!==b?(x=(0,Y.jsxs)(`div`,{className:`flex-1 flex flex-col overflow-hidden`,children:[v,y,b]}),e[25]=v,e[26]=y,e[27]=b,e[28]=x):x=e[28],x},ne=e=>{let n=(0,K.c)(50),{context:i}=e,[o,s]=G.useState(``),{handleClick:l}=c(),u=i.kind===`sandbox`,f=u?i.backend:i.name,m=t(w),h=r(w),g,y;n[0]!==m||n[1]!==h?(g=()=>{m&&(s(m),h(null))},y=[m,h],n[0]=m,n[1]=h,n[2]=g,n[3]=y):(g=n[2],y=n[3]),G.useEffect(g,y);let{loading:b,handleInstallPackages:x}=k(),S;n[4]===Symbol.for(`react.memo_cache_sentinel`)?(S=()=>{s(``)},n[4]=S):S=n[4];let C=S,T;n[5]!==x||n[6]!==o?(T=()=>{let e=ee(o);x([e],C)},n[5]=x,n[6]=o,n[7]=T):T=n[7];let D=T,O=u?`Add packages to ${f} sandbox...`:`Install packages with ${f}...`,A;n[8]!==u||n[9]!==b||n[10]!==l||n[11]!==f?(A=b?(0,Y.jsx)(P,{size:`small`,className:`mr-2 h-4 w-4 shrink-0 opacity-50`}):u?(0,Y.jsx)(a,{"aria-hidden":`true`,className:`mr-2 h-4 w-4 shrink-0 opacity-50`}):(0,Y.jsx)(p,{content:`Change package manager (currently ${f})`,children:(0,Y.jsx)(`button`,{type:`button`,"aria-label":`Change package manager`,onClick:()=>l(`packageManagementAndData`),className:`pointer-events-auto mr-2 rounded-sm opacity-50 hover:opacity-80 focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring`,children:(0,Y.jsx)(a,{"aria-hidden":`true`,className:`h-4 w-4 shrink-0`})})}),n[8]=u,n[9]=b,n[10]=l,n[11]=f,n[12]=A):A=n[12];let j;n[13]===D?j=n[14]:(j=e=>{e.key===`Enter`&&(e.preventDefault(),D())},n[13]=D,n[14]=j);let M;n[15]===Symbol.for(`react.memo_cache_sentinel`)?(M=e=>s(e.target.value),n[15]=M):M=n[15];let N;n[16]!==o||n[17]!==O||n[18]!==A||n[19]!==j?(N=(0,Y.jsx)(v,{placeholder:O,id:E,icon:A,rootClassName:`flex-1 border-none`,value:o,onKeyDown:j,onChange:M}),n[16]=o,n[17]=O,n[18]=A,n[19]=j,n[20]=N):N=n[20];let F;n[21]!==u||n[22]!==f?(F=u?(0,Y.jsxs)(`span`,{children:[`Packages are recorded in this notebook's inline metadata and synchronized with its `,f,` sandbox. To switch backends, restart marimo with a different --sandbox option.`]}):(0,Y.jsxs)(`span`,{children:[`Packages are installed using `,f,`, selected in your user configuration.`]}),n[21]=u,n[22]=f,n[23]=F):F=n[23];let I;n[24]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,Y.jsx)(`span`,{className:`mt-2`,children:`You can install packages with various formats:`}),n[24]=I):I=n[24];let L;n[25]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,Y.jsx)(`span`,{className:`font-bold tracking-wide`,children:`Package name:`}),n[25]=L):L=n[25];let R,z;n[26]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,Y.jsxs)(`div`,{children:[L,` A package name; this will install the latest version.`,(0,Y.jsx)(`div`,{className:`text-muted-foreground`,children:`Example: httpx`})]}),z=(0,Y.jsx)(`span`,{className:`font-bold tracking-wide`,children:`Package and version:`}),n[26]=R,n[27]=z):(R=n[26],z=n[27]);let B,V;n[28]===Symbol.for(`react.memo_cache_sentinel`)?(B=(0,Y.jsxs)(`div`,{children:[z,` `,`A package with a specific version or version range.`,(0,Y.jsx)(`div`,{className:`text-muted-foreground`,children:`Examples: httpx==0.27.0, httpx>=0.27.0`})]}),V=(0,Y.jsx)(`span`,{className:`font-bold tracking-wide`,children:`Git:`}),n[28]=B,n[29]=V):(B=n[28],V=n[29]);let H,U;n[30]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,Y.jsxs)(`div`,{children:[V,` A Git repository`,(0,Y.jsx)(`div`,{className:`text-muted-foreground`,children:`Example: git+https://github.com/encode/httpx`})]}),U=(0,Y.jsx)(`span`,{className:`font-bold tracking-wide`,children:`URL:`}),n[30]=H,n[31]=U):(H=n[30],U=n[31]);let W,q;n[32]===Symbol.for(`react.memo_cache_sentinel`)?(W=(0,Y.jsxs)(`div`,{children:[U,` A remote wheel or source distribution.`,(0,Y.jsx)(`div`,{className:`text-muted-foreground`,children:`Example: https://example.com/httpx-0.27.0.tar.gz`})]}),q=(0,Y.jsx)(`span`,{className:`font-bold tracking-wide`,children:`Path:`}),n[32]=W,n[33]=q):(W=n[32],q=n[33]);let J;n[34]===Symbol.for(`react.memo_cache_sentinel`)?(J=(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2 mt-2`,children:[R,B,H,W,(0,Y.jsxs)(`div`,{children:[q,` A local wheel, source distribution, or project directory.`,(0,Y.jsx)(`div`,{className:`text-muted-foreground`,children:`Example: /example/foo-0.1.0-py3-none-any.whl`})]})]}),n[34]=J):J=n[34];let X;n[35]===F?X=n[36]:(X=(0,Y.jsxs)(`div`,{className:`text-sm flex flex-col w-full max-w-[360px]`,children:[F,I,J]}),n[35]=F,n[36]=X);let te;n[37]===Symbol.for(`react.memo_cache_sentinel`)?(te=(0,Y.jsx)(_,{className:`h-4 w-4 cursor-help text-muted-foreground hover:text-foreground bg-transparent`}),n[37]=te):te=n[37];let Z;n[38]===X?Z=n[39]:(Z=(0,Y.jsx)(p,{delayDuration:300,side:`left`,align:`start`,content:X,children:te}),n[38]=X,n[39]=Z);let ne=o&&`bg-accent text-accent-foreground`,Q;n[40]===ne?Q=n[41]:(Q=d(`float-right px-2 m-0 h-full text-sm text-secondary-foreground ml-2`,ne,`disabled:cursor-not-allowed disabled:opacity-50`),n[40]=ne,n[41]=Q);let re=!o,$;n[42]!==D||n[43]!==Q||n[44]!==re?($=(0,Y.jsx)(`button`,{type:`button`,className:Q,onClick:D,disabled:re,children:`Add`}),n[42]=D,n[43]=Q,n[44]=re,n[45]=$):$=n[45];let ie;return n[46]!==Z||n[47]!==$||n[48]!==N?(ie=(0,Y.jsxs)(`div`,{className:`flex items-center w-full border-b`,children:[N,Z,$]}),n[46]=Z,n[47]=$,n[48]=N,n[49]=ie):ie=n[49],ie},Q=e=>{let t=(0,K.c)(8),{packages:n}=e,r;t[0]===n?r=t[1]:(r=n.toSorted(se),t[0]=n,t[1]=r);let i=r;if(n.length===0){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(z,{title:`No packages`,description:`No packages are installed in this environment.`,icon:(0,Y.jsx)(a,{})}),t[2]=e):e=t[2],e}let o;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Y.jsx)(L,{children:(0,Y.jsxs)(O,{children:[(0,Y.jsx)(N,{children:`Name`}),(0,Y.jsx)(N,{children:`Version`}),(0,Y.jsx)(N,{})]})}),t[3]=o):o=t[3];let s;t[4]===i?s=t[5]:(s=i.map(ce),t[4]=i,t[5]=s);let c;return t[6]===s?c=t[7]:(c=(0,Y.jsxs)(j,{className:`overflow-auto flex-1`,children:[o,(0,Y.jsx)(I,{children:s})]}),t[6]=s,t[7]=c),c},re=e=>{let t=(0,K.c)(3),{packageName:n,tags:r}=e,{loading:i,run:a}=q(`upgrade`,n,r);if(l())return null;let o;return t[0]!==i||t[1]!==a?(o=(0,Y.jsx)(X,{onClick:a,loading:i,children:`Upgrade`}),t[0]=i,t[1]=a,t[2]=o):o=t[2],o},$=e=>{let t=(0,K.c)(3),{packageName:n,tags:r}=e,{loading:i,run:a}=q(`remove`,n,r);if(n.toLowerCase()===`marimo`)return null;let o;return t[0]!==i||t[1]!==a?(o=(0,Y.jsx)(X,{onClick:a,loading:i,children:`Remove`}),t[0]=i,t[1]=a,t[2]=o):o=t[2],o},ie=e=>{let t=(0,K.c)(17),{tree:n,error:r,sandboxBackend:i}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=new Set,t[0]=o):o=t[0];let[s,c]=G.useState(o),l;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(l=()=>{c(new Set)},t[1]=l):l=t[1];let u;if(t[2]===n?u=t[3]:(u=[n],t[2]=n,t[3]=u),G.useEffect(l,u),r){let e;return t[4]===r?e=t[5]:(e=(0,Y.jsx)(T,{error:r}),t[4]=r,t[5]=e),e}if(!n){let e;return t[6]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(z,{title:`Dependency tree unavailable`,description:`The sandbox did not return a dependency tree.`,icon:(0,Y.jsx)(a,{})}),t[6]=e):e=t[6],e}if(n.dependencies.length===0){if(i===`pixi`){let e;return t[7]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(z,{title:`No PyPI dependencies`,description:`Conda dependencies are not shown in this panel.`,icon:(0,Y.jsx)(a,{})}),t[7]=e):e=t[7],e}let e;return t[8]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Y.jsx)(z,{title:`No dependencies`,description:`No package dependencies found in this environment.`,icon:(0,Y.jsx)(a,{})}),t[8]=e):e=t[8],e}let d;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(d=e=>{c(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},t[9]=d):d=t[9];let f=d,p;if(t[10]!==s||t[11]!==n.dependencies){let e;t[13]===s?e=t[14]:(e=(e,t)=>(0,Y.jsx)(`div`,{className:`border-b`,children:(0,Y.jsx)(ae,{nodeId:`root-${t}`,node:e,level:0,isTopLevel:!0,expandedNodes:s,onToggle:f})},`${e.name}-${t}`),t[13]=s,t[14]=e),p=n.dependencies.map(e),t[10]=s,t[11]=n.dependencies,t[12]=p}else p=t[12];let m;return t[15]===p?m=t[16]:(m=(0,Y.jsx)(`div`,{className:`flex-1 overflow-auto`,children:(0,Y.jsx)(`div`,{children:p})}),t[15]=p,t[16]=m),m},ae=e=>{let t=(0,K.c)(56),{nodeId:n,node:r,level:i,isTopLevel:a,expandedNodes:o,onToggle:s}=e,c=a!==void 0&&a,l=r.dependencies.length>0,u;t[0]!==o||t[1]!==n?(u=o.has(n),t[0]=o,t[1]=n,t[2]=u):u=t[2];let f=u,p=c?0:16+i*16,m;t[3]!==l||t[4]!==n||t[5]!==s?(m=e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),l&&s(n))},t[3]=l,t[4]=n,t[5]=s,t[6]=m):m=t[6];let _=m,v;t[7]!==l||t[8]!==n||t[9]!==s?(v=e=>{e.stopPropagation(),l&&s(n)},t[7]=l,t[8]=n,t[9]=s,t[10]=v):v=t[10];let y=v,b=l&&`select-none`,x=c?`px-2 py-0.5`:``,S;t[11]!==b||t[12]!==x?(S=d(`flex items-center group cursor-pointer text-sm whitespace-nowrap`,`hover:bg-(--slate-2) focus:bg-(--slate-2) focus:outline-hidden`,b,x),t[11]=b,t[12]=x,t[13]=S):S=t[13];let C;t[14]!==p||t[15]!==c?(C=c?{}:{paddingLeft:`${p}px`},t[14]=p,t[15]=c,t[16]=C):C=t[16];let w=l?f:void 0,T;t[17]!==l||t[18]!==f?(T=l?f?(0,Y.jsx)(h,{className:`w-4 h-4 mr-2 shrink-0`}):(0,Y.jsx)(g,{className:`w-4 h-4 mr-2 shrink-0`}):(0,Y.jsx)(`div`,{className:`w-4 mr-2 shrink-0`}),t[17]=l,t[18]=f,t[19]=T):T=t[19];let E;t[20]===r.name?E=t[21]:(E=(0,Y.jsx)(`span`,{className:`font-medium truncate`,children:r.name}),t[20]=r.name,t[21]=E);let D;t[22]===r.version?D=t[23]:(D=r.version&&(0,Y.jsxs)(`span`,{className:`text-muted-foreground text-xs`,children:[`v`,r.version]}),t[22]=r.version,t[23]=D);let O;t[24]!==E||t[25]!==D?(O=(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 flex-1 min-w-0 py-1.5`,children:[E,D]}),t[24]=E,t[25]=D,t[26]=O):O=t[26];let k;t[27]===r.tags?k=t[28]:(k=r.tags.map(le),t[27]=r.tags,t[28]=k);let A;t[29]===k?A=t[30]:(A=(0,Y.jsx)(`div`,{className:`flex items-center gap-1 ml-2`,children:k}),t[29]=k,t[30]=A);let j;t[31]!==c||t[32]!==r.name||t[33]!==r.tags?(j=c&&(0,Y.jsxs)(`div`,{className:`flex gap-1 invisible group-hover:visible`,children:[(0,Y.jsx)(re,{packageName:r.name,tags:r.tags}),(0,Y.jsx)($,{packageName:r.name,tags:r.tags})]}),t[31]=c,t[32]=r.name,t[33]=r.tags,t[34]=j):j=t[34];let M;t[35]!==y||t[36]!==_||t[37]!==T||t[38]!==O||t[39]!==A||t[40]!==j||t[41]!==S||t[42]!==C||t[43]!==w?(M=(0,Y.jsxs)(`div`,{className:S,style:C,onClick:y,onKeyDown:_,tabIndex:0,role:`treeitem`,"aria-selected":!1,"aria-expanded":w,children:[T,O,A,j]}),t[35]=y,t[36]=_,t[37]=T,t[38]=O,t[39]=A,t[40]=j,t[41]=S,t[42]=C,t[43]=w,t[44]=M):M=t[44];let N;t[45]!==o||t[46]!==l||t[47]!==f||t[48]!==i||t[49]!==r.dependencies||t[50]!==n||t[51]!==s?(N=l&&f&&(0,Y.jsx)(`div`,{role:`group`,children:r.dependencies.map((e,t)=>(0,Y.jsx)(ae,{nodeId:`${n}-${t}`,node:e,level:i+1,isTopLevel:!1,expandedNodes:o,onToggle:s},`${e.name}-${t}`))}),t[45]=o,t[46]=l,t[47]=f,t[48]=i,t[49]=r.dependencies,t[50]=n,t[51]=s,t[52]=N):N=t[52];let P;return t[53]!==M||t[54]!==N?(P=(0,Y.jsxs)(`div`,{children:[M,N]}),t[53]=M,t[54]=N,t[55]=P):P=t[55],P};function oe(e,t){return e===`list`?`list`:t?e||`tree`:`list`}function se(e,t){return e.name.localeCompare(t.name,void 0,{sensitivity:`base`})}function ce(e){return(0,Y.jsxs)(O,{className:`group`,onClick:async()=>{await y(`${e.name}==${e.version}`),b({title:`Copied to clipboard`})},children:[(0,Y.jsx)(R,{children:e.name}),(0,Y.jsx)(R,{children:e.version}),(0,Y.jsxs)(R,{className:`flex justify-end`,children:[(0,Y.jsx)(re,{packageName:e.name}),(0,Y.jsx)($,{packageName:e.name})]})]},e.name)}function le(e,t){return e.kind===`dedupe`?(0,Y.jsx)(`div`,{className:`items-center border px-2 py-0.5 text-xs transition-colors focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 text-muted-foreground rounded-sm text-ellipsis block overflow-hidden max-w-fit font-medium`,title:`Package tree already displayed`,children:`already in tree`},t):e.kind===`cycle`?(0,Y.jsx)(`div`,{className:`items-center border px-2 py-0.5 text-xs transition-colors focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 text-foreground rounded-sm text-ellipsis block overflow-hidden max-w-fit font-medium border-orange-300 dark:border-orange-700 text-orange-700 dark:text-orange-300`,title:`cycle`,children:`cycle`},t):e.kind===`extra`?(0,Y.jsx)(`div`,{className:`items-center border px-2 py-0.5 text-xs transition-colors focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 text-foreground rounded-sm text-ellipsis block overflow-hidden max-w-fit font-medium border-blue-300 dark:border-blue-700 text-blue-700 dark:text-blue-300`,title:e.value,children:e.value},t):e.kind===`group`?(0,Y.jsx)(`div`,{className:`items-center border px-2 py-0.5 text-xs transition-colors focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 text-foreground rounded-sm text-ellipsis block overflow-hidden max-w-fit font-medium border-green-300 dark:border-green-700 text-green-700 dark:text-green-300`,title:e.value,children:e.value},t):null}export{te as default};
|