@marimo-team/frontend 0.19.3-dev8 → 0.19.4-dev0
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/{CellStatus-BwPGnX3z.js → CellStatus--kUu6N2K.js} +1 -1
- package/dist/assets/{ConnectedDataExplorerComponent-KlUs_Sz3.js → ConnectedDataExplorerComponent-BKJwCHu7.js} +1 -1
- package/dist/assets/{ErrorBoundary-Drf1manw.js → ErrorBoundary-C7JBxSzd.js} +1 -1
- package/dist/assets/{ImperativeModal-q6QlC2aZ.js → ImperativeModal-DVhvP4lH.js} +1 -1
- package/dist/assets/{JsonOutput--AuyEErr.js → JsonOutput-BSGE-MRo.js} +5 -5
- package/dist/assets/{LazyAnyLanguageCodeMirror-jpEDlD0M.js → LazyAnyLanguageCodeMirror-Cp2punaU.js} +2 -2
- package/dist/assets/{MarimoErrorOutput-BZjY8e2w.js → MarimoErrorOutput-CX0SCJOZ.js} +2 -2
- package/dist/assets/{RenderHTML-BTLaM20B.js → RenderHTML-Do_PVqRy.js} +1 -1
- package/dist/assets/VisuallyHidden-B9t3FhTP.js +1 -0
- package/dist/assets/{add-cell-with-ai-BWWVs9qV.js → add-cell-with-ai-manh7kBT.js} +21 -21
- package/dist/assets/{add-database-form-Bw_YRH1r.js → add-database-form-CgkV0MRs.js} +2 -2
- package/dist/assets/agent-panel-D-OmT-rw.js +287 -0
- package/dist/assets/{ai-model-dropdown-BrUOgnWS.js → ai-model-dropdown-DzyBY5VA.js} +1 -1
- package/dist/assets/{alert-dialog-k5KxevGr.js → alert-dialog-jcHA5geR.js} +1 -1
- package/dist/assets/{any-language-editor-DQu1Tt2N.js → any-language-editor-Cm83E7D_.js} +1 -1
- package/dist/assets/{app-config-button-B8CXELx0.js → app-config-button-DC3alCuB.js} +1 -1
- package/dist/assets/button-B8cGZzP5.js +1 -0
- package/dist/assets/{cache-panel-C1So4Zu3.js → cache-panel-1FqnpB9y.js} +1 -1
- package/dist/assets/cell-editor-RHFZmO74.js +23 -0
- package/dist/assets/cell-link-Dqj_nfXA.js +1 -0
- package/dist/assets/{cells-DU3EySUd.js → cells-BNQUQiDS.js} +49 -49
- package/dist/assets/{chat-components-Bc9j9ls4.js → chat-components-CWiXtKu6.js} +1 -1
- package/dist/assets/{chat-display-BrTi6c8V.js → chat-display-CGnOamQG.js} +1 -1
- package/dist/assets/{chat-panel-8Dym5Gv3.js → chat-panel-Dh1M55c9.js} +2 -2
- package/dist/assets/client-CDjmJmVw.js +4 -0
- package/dist/assets/{column-preview-Ck6B_-sQ.js → column-preview-CKxT2s-S.js} +1 -1
- package/dist/assets/{command-B_minI8b.js → command-YPFTinLj.js} +1 -1
- package/dist/assets/{command-palette-BT3u6JBB.js → command-palette-7fVEhKGc.js} +1 -1
- package/dist/assets/common-DJkPpBxC.js +1 -0
- package/dist/assets/config-D6nhy4FA.js +1 -0
- package/dist/assets/context-DHfVoQfl.js +1 -0
- package/dist/assets/{copy-icon-B69c-352.js → copy-icon-jWsqdLn1.js} +1 -1
- package/dist/assets/{datasource-DCvPlnaJ.js → datasource-DerBLc6V.js} +2 -2
- package/dist/assets/{dependency-graph-panel-C9jYZ6pA.js → dependency-graph-panel-Vd-OsVLa.js} +4 -4
- package/dist/assets/{dialog-DUEuLcT2.js → dialog-CF5DtF1E.js} +1 -1
- package/dist/assets/{dist-DOFFh6Ii.js → dist-Dg7UO_Vw.js} +1 -1
- package/dist/assets/{documentation-panel-AsatrTfg.js → documentation-panel-xG2-zpwg.js} +1 -1
- package/dist/assets/{download-PR1bF3g_.js → download-B6EJS7Ar.js} +1 -1
- package/dist/assets/edit-page-7Hkti2j_.js +12 -0
- package/dist/assets/{error-banner-DU5Qb8a8.js → error-banner-DvT0IGDZ.js} +1 -1
- package/dist/assets/{error-panel-D_wVKV6I.js → error-panel-BxBpZYvt.js} +1 -1
- package/dist/assets/{es-CEE_7T0w.js → es-BoHEdemq.js} +1 -1
- package/dist/assets/{field-DDKGFzpC.js → field-Clr_fqUr.js} +1 -1
- package/dist/assets/{file-explorer-panel-DltK8JVp.js → file-explorer-panel-C9K0vIPl.js} +1 -1
- package/dist/assets/{floating-outline-BfdazXWm.js → floating-outline-DCrTuu2G.js} +1 -1
- package/dist/assets/{focus-CtlWIiQr.js → focus-DM53w5BH.js} +1 -1
- package/dist/assets/{form-Cy5TkLzh.js → form-BcKfhfZc.js} +2 -2
- package/dist/assets/{glide-data-editor-D_bRnWfy.js → glide-data-editor-CRb9AiCG.js} +1 -1
- package/dist/assets/{globals-BSLm1nlz.js → globals-Bf30kOQF.js} +1 -1
- package/dist/assets/{home-page-CEnaUutq.js → home-page-BRyNf7fl.js} +2 -2
- package/dist/assets/index-CBMqMxiq.js +43 -0
- package/dist/assets/index-DDc_1b-N.css +2 -0
- package/dist/assets/input-B80Yt1uu.js +1 -0
- package/dist/assets/{kiosk-mode-BnTZR6mM.js → kiosk-mode-P-NYHJID.js} +1 -1
- package/dist/assets/{label-qwandMoh.js → label-CNZLffHW.js} +1 -1
- package/dist/assets/{layout-BTiWDrbh.js → layout-DT91GUei.js} +4 -4
- package/dist/assets/links-D529u6GQ.js +1 -0
- package/dist/assets/{logs-panel-Cnp9tO_1.js → logs-panel-C2dfrRig.js} +1 -1
- package/dist/assets/{markdown-renderer-BSrbBHwX.js → markdown-renderer-BPnVa0ym.js} +2 -2
- package/dist/assets/{mermaid-BPkO79lo.js → mermaid--ZwxKP7u.js} +1 -1
- package/dist/assets/mode-Dq8MKjNR.js +1 -0
- package/dist/assets/{multi-map-fjX9ImVF.js → multi-map-CQd4MZr5.js} +1 -1
- package/dist/assets/name-cell-input-BaEPC7ON.js +1 -0
- package/dist/assets/{outline-panel-DCfj1bI-.js → outline-panel-Cca864H0.js} +1 -1
- package/dist/assets/{packages-panel-BiEckVdM.js → packages-panel-Cy_KAYmq.js} +1 -1
- package/dist/assets/{panels-BXRys72u.js → panels-BzlLZfye.js} +1 -1
- package/dist/assets/{process-output-wGlHkL-Q.js → process-output-Dn1rOp26.js} +1 -1
- package/dist/assets/{readonly-python-code-xbh7G2Y2.js → readonly-python-code-CXeF74Iq.js} +1 -1
- package/dist/assets/{renderShortcut-D0Pei-OA.js → renderShortcut-eU5Hsfml.js} +1 -1
- package/dist/assets/{run-page-BCwJRhCq.js → run-page-CM_n6pXD.js} +1 -1
- package/dist/assets/scratchpad-panel-XCkVY3Hp.js +1 -0
- package/dist/assets/{secrets-panel-CDWmmmBS.js → secrets-panel-BMY6PPth.js} +1 -1
- package/dist/assets/{select-D0g5GnIs.js → select-D9lTzMzP.js} +1 -1
- package/dist/assets/{session-panel-DuQl_oQp.js → session-panel-BDt6Y_mU.js} +1 -1
- package/dist/assets/{slides-component-MkPkpql1.js → slides-component-Dp0Yv5b0.js} +1 -1
- package/dist/assets/{snippets-panel-R_ql6HGu.js → snippets-panel-K-JKJQBf.js} +1 -1
- package/dist/assets/state-DWRZTH2y.js +1 -0
- package/dist/assets/state-JzO-Ni5T.js +1 -0
- package/dist/assets/{switch-CWzL-0WF.js → switch-RowEjq0T.js} +1 -1
- package/dist/assets/{terminal-BWM0fOMh.js → terminal-BhbNfCNw.js} +1 -1
- package/dist/assets/{textarea-CfvBt_Xm.js → textarea-Di1KKcL4.js} +1 -1
- package/dist/assets/{tracing-Kscqc1t3.js → tracing-nvbrZdpf.js} +1 -1
- package/dist/assets/{tracing-panel-BEzOflWc.js → tracing-panel-CTXJaO-A.js} +2 -2
- package/dist/assets/{types-DhuSHMNQ.js → types-CT2U5Ljy.js} +1 -1
- package/dist/assets/{useAddCell-C9lbOVO1.js → useAddCell-COb93CUl.js} +1 -1
- package/dist/assets/{useBoolean-B-A0dyIW.js → useBoolean-B_S7yTZz.js} +1 -1
- package/dist/assets/{useCellActionButton-fsh9MTAX.js → useCellActionButton-D5Zt1dDz.js} +1 -1
- package/dist/assets/{useDateFormatter-CV0QXb5P.js → useDateFormatter-DsANziQR.js} +1 -1
- package/dist/assets/useDeleteCell-DHF_xvAh.js +1 -0
- package/dist/assets/{useDependencyPanelTab-CngFbla0.js → useDependencyPanelTab-D59iW_MD.js} +1 -1
- package/dist/assets/useInterval-BGPIviJp.js +1 -0
- package/dist/assets/{useNotebookActions-D01w160c.js → useNotebookActions-DEl-rH-3.js} +1 -1
- package/dist/assets/{useNumberFormatter-D8ks3oPN.js → useNumberFormatter-FoXhpyAb.js} +1 -1
- package/dist/assets/usePress-DTwIUo40.js +7 -0
- package/dist/assets/useRunCells-CKEmgeKM.js +1 -0
- package/dist/assets/useSplitCell-D9YiO-z5.js +1 -0
- package/dist/assets/{useTheme-DfP1CWaW.js → useTheme-CNj0G_ol.js} +1 -1
- package/dist/assets/utilities.esm-DG4qccZc.js +3 -0
- package/dist/assets/utils-pfqq9IdB.js +1 -0
- package/dist/assets/{vega-component-B8ghmMYW.js → vega-component-C1voDf5W.js} +1 -1
- package/dist/assets/{write-secret-modal-CLm48gMe.js → write-secret-modal-hOetwavI.js} +1 -1
- package/dist/index.html +56 -56
- package/package.json +5 -5
- package/src/__mocks__/requests.ts +1 -0
- package/src/__tests__/mount.test.ts +128 -0
- package/src/components/app-config/__tests__/get-dirty-values.test.ts +1 -1
- package/src/components/app-config/ai-config.tsx +328 -28
- package/src/components/app-config/user-config-form.tsx +10 -3
- package/src/components/chat/acp/agent-panel.tsx +56 -43
- package/src/components/chat/chat-utils.ts +0 -19
- package/src/components/data-table/column-header.tsx +1 -1
- package/src/components/editor/KernelStartupErrorModal.tsx +2 -2
- package/src/components/editor/actions/name-cell-input.tsx +10 -4
- package/src/components/editor/ai/completion-handlers.tsx +1 -1
- package/src/components/editor/alerts/connecting-alert.tsx +33 -6
- package/src/components/editor/chrome/types.ts +2 -4
- package/src/components/editor/chrome/wrapper/app-chrome.tsx +55 -58
- package/src/components/editor/chrome/wrapper/footer-items/runtime-settings.tsx +150 -96
- package/src/components/editor/renderers/vertical-layout/__tests__/useFocusFirstEditor.test.ts +27 -0
- package/src/components/editor/renderers/vertical-layout/useFocusFirstEditor.ts +6 -0
- package/src/components/utils/lazy-mount.tsx +29 -8
- package/src/core/ai/ids/ids.ts +12 -4
- package/src/core/cells/cells.ts +2 -0
- package/src/core/cells/scrollCellIntoView.ts +3 -2
- package/src/core/codemirror/cm.ts +2 -0
- package/src/core/codemirror/lsp/__tests__/notebook-lsp.test.ts +123 -0
- package/src/core/codemirror/lsp/notebook-lsp.ts +44 -4
- package/src/core/codemirror/misc/__tests__/string-braces.test.ts +200 -0
- package/src/core/codemirror/misc/string-braces.ts +37 -0
- package/src/core/config/__tests__/config-schema.test.ts +36 -0
- package/src/core/config/config-schema.ts +1 -0
- package/src/core/export/__tests__/hooks.test.ts +504 -0
- package/src/core/export/hooks.ts +93 -4
- package/src/core/islands/bridge.ts +1 -0
- package/src/core/kernel/__tests__/handlers.test.ts +2 -2
- package/src/core/kernel/state.ts +1 -0
- package/src/core/network/__tests__/requests-lazy.test.ts +1 -1
- package/src/core/network/__tests__/requests-network.test.ts +0 -18
- package/src/core/network/requests-lazy.ts +3 -2
- package/src/core/network/requests-network.ts +10 -7
- package/src/core/network/requests-static.ts +1 -0
- package/src/core/network/requests-toasting.tsx +1 -0
- package/src/core/network/types.ts +2 -0
- package/src/core/wasm/bridge.ts +1 -0
- package/src/css/globals.css +2 -0
- package/src/hooks/__tests__/useInterval.test.tsx +104 -0
- package/src/hooks/useInterval.ts +32 -6
- package/src/mount.tsx +6 -0
- package/src/plugins/impl/chat/ChatPlugin.tsx +2 -4
- package/src/plugins/impl/chat/chat-ui.tsx +62 -191
- package/src/plugins/impl/chat/types.ts +5 -12
- package/src/plugins/impl/data-frames/DataFramePlugin.tsx +3 -1
- package/src/utils/events.ts +1 -0
- package/dist/assets/VisuallyHidden-BodIky8L.js +0 -1
- package/dist/assets/agent-panel-Bm-vW8YL.js +0 -287
- package/dist/assets/button-DuYGqRtX.js +0 -1
- package/dist/assets/cell-editor-Cdtc1m3g.js +0 -23
- package/dist/assets/cell-link-CFAPzUg5.js +0 -1
- package/dist/assets/client-DfkWorYM.js +0 -4
- package/dist/assets/common-jorbwXZC.js +0 -1
- package/dist/assets/config-Ba3eeYri.js +0 -1
- package/dist/assets/context-BAYdLMF_.js +0 -1
- package/dist/assets/edit-page-B1Ed6RKp.js +0 -12
- package/dist/assets/index-DNg7_e7t.js +0 -43
- package/dist/assets/index-__6MNWbe.css +0 -2
- package/dist/assets/input-CaEtLL8p.js +0 -1
- package/dist/assets/links-Bpd4gqTj.js +0 -1
- package/dist/assets/mode-yhfN-4ye.js +0 -1
- package/dist/assets/name-cell-input-CmuWqgFR.js +0 -1
- package/dist/assets/scratchpad-panel-C6PpCYtK.js +0 -1
- package/dist/assets/state-DEHWsmkM.js +0 -1
- package/dist/assets/state-DXAf-ejz.js +0 -1
- package/dist/assets/useDeleteCell-ByImoTpm.js +0 -1
- package/dist/assets/useInterval-DpipYmgs.js +0 -1
- package/dist/assets/usePress-C2LPFxyv.js +0 -7
- package/dist/assets/useRunCells-CmnSPQtM.js +0 -1
- package/dist/assets/useSplitCell-BTH64tve.js +0 -1
- package/dist/assets/utilities.esm-CMQs6YPp.js +0 -3
- package/dist/assets/utils-CJJIceVn.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as oe}from"./chunk-LvLJmgfZ.js";import{d as N,l as Ie,p as Te,u as K}from"./useEvent-DlWF5OMa.js";import{t as He}from"./react-BGmjiNul.js";import{Bn as Le,C as ie,Et as qe,Jn as Re,Nt as Ve,Pt as ne,Rn as Be,Un as Oe,an as Ue,ei as Q,h as Ye,in as $e,mr as Fe,on as Ge,p as le,t as Je,un as Ke}from"./cells-DU3EySUd.js";import{t as W}from"./compiler-runtime-DeeZ7FnK.js";import{i as Qe}from"./useLifecycle-CmDXEyIC.js";import{a as se}from"./type-BdyvjzTI.js";import{n as Xe}from"./add-database-form-Bw_YRH1r.js";import{a as re,d as P}from"./hotkeys-uKX61F1_.js";import{v as Ze}from"./utils-CJJIceVn.js";import{n as _,t as de}from"./constants-Bkp4R3bQ.js";import{M as ce,f as et,j as tt,w as at}from"./config-Ba3eeYri.js";import{t as ot}from"./jsx-runtime-DN_bIXfG.js";import{r as it,t as X}from"./button-DuYGqRtX.js";import{r as E}from"./requests-C0HaHO6a.js";import{t as c}from"./createLucideIcon-CW2xpJ57.js";import{a as he,f as nt,i as pe,m as lt,p as me,u as ue}from"./layout-BTiWDrbh.js";import{t as fe}from"./check-CrAQug3q.js";import{a as st,c as rt,i as dt,n as ct,r as ht,s as pt,t as mt}from"./select-D0g5GnIs.js";import{i as ye,r as ut,t as be}from"./download-PR1bF3g_.js";import{f as ft}from"./maps-s2pQkyf5.js";import{r as yt}from"./useCellActionButton-fsh9MTAX.js";import{t as bt}from"./copy-gBVL4NN-.js";import{d as kt,t as xt}from"./state-DEHWsmkM.js";import{t as wt}from"./download-DobaYJPt.js";import{t as gt}from"./eye-off-D9zAYqG9.js";import{t as jt}from"./file-plus-corner-BO_uS88s.js";import{t as vt}from"./file-BnFXtaZZ.js";import{i as Ct,n as zt,r as Mt,t as Wt}from"./youtube-BJQRl2JC.js";import{n as _t,t as At}from"./house-CncUa_LL.js";import{n as St}from"./play-BJDBXApx.js";import{t as Nt}from"./link-54sBkoQp.js";import{r as Pt}from"./input-CaEtLL8p.js";import{t as Et}from"./settings-MTlHVxz3.js";import{y as Dt}from"./textarea-CfvBt_Xm.js";import{t as It}from"./square-leQTJTJJ.js";import{t as j}from"./use-toast-Bzf3rpev.js";import{t as Tt}from"./tooltip-CvjcEpZC.js";import{a as ke,i as Ht,r as Lt}from"./mode-yhfN-4ye.js";import{o as qt}from"./alert-dialog-k5KxevGr.js";import{a as Rt,c as Vt,i as Bt,n as Ot,r as Ut}from"./dialog-DUEuLcT2.js";import{n as Z}from"./ImperativeModal-q6QlC2aZ.js";import{r as Yt,t as $t}from"./share-CXQVxivL.js";import{t as V}from"./copy-DRhpWiOq.js";import{r as Ft}from"./useRunCells-CmnSPQtM.js";import{a as Gt}from"./cell-link-CFAPzUg5.js";import{a as xe}from"./renderShortcut-D0Pei-OA.js";import{t as Jt}from"./icons-D4lB4En9.js";import{t as Kt}from"./links-Bpd4gqTj.js";import{t as we}from"./types-BLEgJ92v.js";var Qt=c("circle-chevron-down",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16 10-4 4-4-4",key:"894hmk"}]]),Xt=c("circle-chevron-right",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m10 8 4 4-4 4",key:"1wy4r4"}]]),ge=c("clipboard-copy",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]]),je=c("command",[["path",{d:"M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3",key:"11bfej"}]]),ve=c("diamond-plus",[["path",{d:"M12 8v8",key:"napkw2"}],["path",{d:"M2.7 10.3a2.41 2.41 0 0 0 0 3.41l7.59 7.59a2.41 2.41 0 0 0 3.41 0l7.59-7.59a2.41 2.41 0 0 0 0-3.41L13.7 2.71a2.41 2.41 0 0 0-3.41 0z",key:"1ey20j"}],["path",{d:"M8 12h8",key:"1wcyev"}]]),Zt=c("fast-forward",[["path",{d:"M12 6a2 2 0 0 1 3.414-1.414l6 6a2 2 0 0 1 0 2.828l-6 6A2 2 0 0 1 12 18z",key:"b19h5q"}],["path",{d:"M2 6a2 2 0 0 1 3.414-1.414l6 6a2 2 0 0 1 0 2.828l-6 6A2 2 0 0 1 2 18z",key:"h7h5ge"}]]),ea=c("files",[["path",{d:"M15 2h-4a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V8",key:"14sh0y"}],["path",{d:"M16.706 2.706A2.4 2.4 0 0 0 15 2v5a1 1 0 0 0 1 1h5a2.4 2.4 0 0 0-.706-1.706z",key:"1970lx"}],["path",{d:"M5 7a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 1.732-1",key:"l4dndm"}]]),ta=c("keyboard",[["path",{d:"M10 8h.01",key:"1r9ogq"}],["path",{d:"M12 12h.01",key:"1mp3jc"}],["path",{d:"M14 8h.01",key:"1primd"}],["path",{d:"M16 12h.01",key:"1l6xoz"}],["path",{d:"M18 8h.01",key:"emo2bl"}],["path",{d:"M6 8h.01",key:"x9i8wu"}],["path",{d:"M7 16h10",key:"wp8him"}],["path",{d:"M8 12h.01",key:"czm47f"}],["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}]]),Ce=c("layout-template",[["rect",{width:"18",height:"7",x:"3",y:"3",rx:"1",key:"f1a2em"}],["rect",{width:"9",height:"7",x:"3",y:"14",rx:"1",key:"jqznyg"}],["rect",{width:"5",height:"7",x:"16",y:"14",rx:"1",key:"q5h2i8"}]]),aa=c("list",[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]]),oa=c("panel-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]]),ze=c("presentation",[["path",{d:"M2 3h20",key:"91anmk"}],["path",{d:"M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3",key:"2k9sn8"}],["path",{d:"m7 21 5-5 5 5",key:"bip4we"}]]),ia=c("share-2",[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]]),na=c("square-power",[["path",{d:"M12 7v4",key:"xawao1"}],["path",{d:"M7.998 9.003a5 5 0 1 0 8-.005",key:"1pek45"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}]]),Me=c("undo-2",[["path",{d:"M9 14 4 9l5-5",key:"102s5s"}],["path",{d:"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11",key:"f3b9sd"}]]),We=W(),ee=oe(He(),1),a=oe(ot(),1),B="https://static.marimo.app";const la=e=>{let t=(0,We.c)(25),{onClose:i}=e,[o,l]=(0,ee.useState)(""),{exportAsHTML:r}=E(),s=`${o}-${Math.random().toString(36).slice(2,6)}`,n=`${B}/static/${s}`,d;t[0]!==r||t[1]!==i||t[2]!==s?(d=async v=>{v.preventDefault(),i();let A=await r({download:!1,includeCode:!0,files:nt.INSTANCE.filenames()}),z=j({title:"Uploading static notebook...",description:"Please wait."});await fetch(`${B}/api/static`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({html:A,path:s})}).catch(()=>{z.dismiss(),j({title:"Error uploading static page",description:(0,a.jsxs)("div",{children:["Please try again later. If the problem persists, please file a bug report on"," ",(0,a.jsx)("a",{href:_.issuesPage,target:"_blank",className:"underline",children:"GitHub"}),"."]})})}),z.dismiss(),j({title:"Static page uploaded!",description:(0,a.jsxs)("div",{children:["The URL has been copied to your clipboard.",(0,a.jsx)("br",{}),"You can share it with anyone."]})})},t[0]=r,t[1]=i,t[2]=s,t[3]=d):d=t[3];let p;t[4]===Symbol.for("react.memo_cache_sentinel")?(p=(0,a.jsx)(Vt,{children:"Share static notebook"}),t[4]=p):p=t[4];let x;t[5]===Symbol.for("react.memo_cache_sentinel")?(x=(0,a.jsxs)(Rt,{children:[p,(0,a.jsxs)(Ut,{children:["You can publish a static, non-interactive version of this notebook to the public web. We will create a link for you that lives on"," ",(0,a.jsx)("a",{href:B,target:"_blank",children:B}),"."]})]}),t[5]=x):x=t[5];let w;t[6]===Symbol.for("react.memo_cache_sentinel")?(w=v=>{l(v.target.value.toLowerCase().replaceAll(/\s/g,"-").replaceAll(/[^\da-z-]/g,""))},t[6]=w):w=t[6];let m;t[7]===o?m=t[8]:(m=(0,a.jsx)(Pt,{"data-testid":"slug-input",id:"slug",autoFocus:!0,value:o,placeholder:"Notebook slug",onChange:w,required:!0,autoComplete:"off"}),t[7]=o,t[8]=m);let u;t[9]===n?u=t[10]:(u=(0,a.jsxs)("div",{className:"font-semibold text-sm text-muted-foreground gap-2 flex flex-col",children:["Anyone will be able to access your notebook at this URL:",(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(sa,{text:n}),(0,a.jsx)("span",{className:"text-primary",children:n})]})]}),t[9]=n,t[10]=u);let f;t[11]!==m||t[12]!==u?(f=(0,a.jsxs)("div",{className:"flex flex-col gap-6 py-4",children:[m,u]}),t[11]=m,t[12]=u,t[13]=f):f=t[13];let y;t[14]===i?y=t[15]:(y=(0,a.jsx)(X,{"data-testid":"cancel-share-static-notebook-button",variant:"secondary",onClick:i,children:"Cancel"}),t[14]=i,t[15]=y);let b;t[16]===n?b=t[17]:(b=(0,a.jsx)(X,{"data-testid":"share-static-notebook-button","aria-label":"Save",variant:"default",type:"submit",onClick:async()=>{await V(n)},children:"Create"}),t[16]=n,t[17]=b);let k;t[18]!==y||t[19]!==b?(k=(0,a.jsxs)(Bt,{children:[y,b]}),t[18]=y,t[19]=b,t[20]=k):k=t[20];let g;return t[21]!==d||t[22]!==k||t[23]!==f?(g=(0,a.jsx)(Ot,{className:"w-fit",children:(0,a.jsxs)("form",{onSubmit:d,children:[x,f,k]})}),t[21]=d,t[22]=k,t[23]=f,t[24]=g):g=t[24],g};var sa=e=>{let t=(0,We.c)(8),[i,o]=ee.useState(!1),l;t[0]===e.text?l=t[1]:(l=it.stopPropagation(async p=>{p.preventDefault(),await V(e.text),o(!0),setTimeout(()=>o(!1),2e3)}),t[0]=e.text,t[1]=l);let r=l,s;t[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,a.jsx)(bt,{size:14,strokeWidth:1.5}),t[2]=s):s=t[2];let n;t[3]===r?n=t[4]:(n=(0,a.jsx)(X,{"data-testid":"copy-static-notebook-url-button",onClick:r,size:"xs",variant:"secondary",children:s}),t[3]=r,t[4]=n);let d;return t[5]!==i||t[6]!==n?(d=(0,a.jsx)(Tt,{content:"Copied!",open:i,children:n}),t[5]=i,t[6]=n,t[7]=d):d=t[7],d},ra=W();function da(){let e=document.getElementsByClassName(de.outputArea);for(let t of e){let i=t.getBoundingClientRect();if(i.bottom>0&&i.top<window.innerHeight){let o=Q.findElement(t);if(!o){P.warn("Could not find HTMLCellId for visible output area",t);continue}return{cellId:Q.parse(o.id)}}}return P.warn("No visible output area found for scroll anchor"),null}function ca(e){if(!e){P.warn("No scroll anchor provided to restore scroll position");return}let t=document.getElementById(Q.create(e.cellId));if(!t){P.warn("Could not find cell element to restore scroll position",e.cellId);return}if(!t.querySelector(`.${de.outputArea}`)){P.warn("Could not find output area to restore scroll position",e.cellId);return}t.scrollIntoView({block:"start",behavior:"auto"})}function _e(){let e=(0,ra.c)(2),t=N(ke),i;return e[0]===t?i=e[1]:(i=()=>{let o=da();t(l=>({mode:Ht(l.mode),cellAnchor:(o==null?void 0:o.cellId)??null})),requestAnimationFrame(()=>{requestAnimationFrame(()=>{ca(o)})})},e[0]=t,e[1]=i),i}const Ae=Te(!1);var ha=W();const pa=()=>{let e=(0,ha.c)(7),{selectedLayout:t}=he(),{setLayoutView:i}=pe();if(ce()&&!Ke("wasm_layouts"))return null;let o;e[0]===i?o=e[1]:(o=n=>i(n),e[0]=i,e[1]=o);let l;e[2]===Symbol.for("react.memo_cache_sentinel")?(l=(0,a.jsx)(pt,{className:"min-w-[110px] border-border bg-background","data-testid":"layout-select",children:(0,a.jsx)(rt,{placeholder:"Select a view"})}),e[2]=l):l=e[2];let r;e[3]===Symbol.for("react.memo_cache_sentinel")?(r=(0,a.jsx)(ct,{children:(0,a.jsxs)(ht,{children:[(0,a.jsx)(st,{children:"View as"}),we.map(ua)]})}),e[3]=r):r=e[3];let s;return e[4]!==t||e[5]!==o?(s=(0,a.jsxs)(mt,{"data-testid":"layout-select",value:t,onValueChange:o,children:[l,r]}),e[4]=t,e[5]=o,e[6]=s):s=e[6],s};function ma(e){return(0,a.jsx)(Se(e),{className:"h-4 w-4"})}function Se(e){switch(e){case"vertical":return aa;case"grid":return Mt;case"slides":return ze;default:return Qe(e),It}}function Ne(e){return se(e)}function ua(e){return(0,a.jsx)(dt,{value:e,children:(0,a.jsxs)("div",{className:"flex items-center gap-1.5 leading-5",children:[ma(e),(0,a.jsx)("span",{children:Ne(e)})]})},e)}var fa=W();function ya(e){let t=(0,fa.c)(5),{openPrompt:i,closeModal:o}=Z(),{sendCopy:l}=E(),r;return t[0]!==o||t[1]!==i||t[2]!==l||t[3]!==e?(r=()=>{if(!e)return null;let s=Ve.guessDeliminator(e);i({title:"Copy notebook",description:"Enter a new filename for the notebook copy.",defaultValue:`_${ne.basename(e)}`,confirmText:"Copy notebook",spellCheck:!1,onConfirm:n=>{let d=s.join(ne.dirname(e),n);l({source:e,destination:d}).then(()=>{o(),j({title:"Notebook copied",description:"A copy of the notebook has been created."}),Kt(d)})}})},t[0]=o,t[1]=i,t[2]=l,t[3]=e,t[4]=r):r=t[4],r}const ba=()=>{let{updateCellConfig:e}=ie(),{saveCellConfig:t}=E();return(0,ee.useCallback)(async()=>{let i=new qe,o=le(),l=o.cellIds.inOrderIds,r={};for(let n of l){if(o.cellData[n]===void 0)continue;let{code:d,config:p}=o.cellData[n];p.hide_code||i.isSupported(d)&&(r[n]={hide_code:!0})}let s=re.entries(r);if(s.length!==0){await t({configs:r});for(let[n,d]of s)e({cellId:n,config:d})}},[e])};var ka=W();function Pe(){let e=(0,ka.c)(4),{openConfirm:t}=Z(),i=N(at),{sendRestart:o}=E(),l;return e[0]!==t||e[1]!==o||e[2]!==i?(l=()=>{t({title:"Restart Kernel",description:"This will restart the Python kernel. You'll lose all data that's in memory. You will also lose any unsaved changes, so make sure to save your work before restarting.",variant:"destructive",confirmAction:(0,a.jsx)(qt,{onClick:async()=>{i({state:tt.CLOSING}),await o(),Yt()},"aria-label":"Confirm Restart",children:"Restart"})})},e[0]=t,e[1]=o,e[2]=i,e[3]=l):l=e[3],l}var xa=W(),D=e=>{e==null||e.preventDefault(),e==null||e.stopPropagation()};function wa(){var te,ae;let e=(0,xa.c)(36),t=Gt(),{openModal:i,closeModal:o}=Z(),{toggleApplication:l}=$e(),{selectedPanel:r}=Ue(),[s]=Ie(ke),n=K(Lt),d=ba(),[p]=Ze(),{updateCellConfig:x,undoDeleteCell:w,clearAllCellOutputs:m,addSetupCellIfDoesntExist:u,collapseAllCells:f,expandAllCells:y}=ie(),b=Pe(),k=Ft(),g=ya(t),v=N(Ae),A=N(xt),z=N(kt),{exportAsMarkdown:O,readCode:S,saveCellConfig:U}=E(),Y=K(Ye),$=K(Je),{selectedLayout:F}=he(),{setLayoutView:G}=pe(),I=_e(),T=((te=p.sharing)==null?void 0:te.html)??!0,H=((ae=p.sharing)==null?void 0:ae.wasm)??!0,Ee=La,L;e[0]===Symbol.for("react.memo_cache_sentinel")?(L=(0,a.jsx)(wt,{size:14,strokeWidth:1.5}),e[0]=L):L=e[0];let q;e[1]===Symbol.for("react.memo_cache_sentinel")?(q=(0,a.jsx)(me,{size:14,strokeWidth:1.5}),e[1]=q):q=e[1];let M;e[2]===t?M=e[3]:(M=async()=>{if(!t){j({variant:"danger",title:"Error",description:"Notebooks must be named to be exported."});return}await ue({filename:t,includeCode:!0})},e[2]=t,e[3]=M);let R;return e[4]!==u||e[5]!==$||e[6]!==m||e[7]!==o||e[8]!==f||e[9]!==g||e[10]!==y||e[11]!==O||e[12]!==t||e[13]!==Y||e[14]!==d||e[15]!==n||e[16]!==i||e[17]!==S||e[18]!==b||e[19]!==k||e[20]!==U||e[21]!==F||e[22]!==r||e[23]!==v||e[24]!==z||e[25]!==G||e[26]!==A||e[27]!==T||e[28]!==H||e[29]!==M||e[30]!==l||e[31]!==I||e[32]!==w||e[33]!==x||e[34]!==s.mode?(R=[{icon:L,label:"Download",handle:D,dropdown:[{icon:q,label:"Download as HTML",handle:M},{icon:(0,a.jsx)(me,{size:14,strokeWidth:1.5}),label:"Download as HTML (exclude code)",handle:async()=>{if(!t){j({variant:"danger",title:"Error",description:"Notebooks must be named to be exported."});return}await ue({filename:t,includeCode:!1})}},{icon:(0,a.jsx)(Jt,{strokeWidth:1.5,style:{width:14,height:14}}),label:"Download as Markdown",handle:async()=>{let h=await O({download:!1});be(new Blob([h],{type:"text/plain"}),ye.toMarkdown(document.title))}},{icon:(0,a.jsx)(lt,{size:14,strokeWidth:1.5}),label:"Download Python code",handle:async()=>{let h=await S();be(new Blob([h.contents],{type:"text/plain"}),ye.toPY(document.title))}},{divider:!0,icon:(0,a.jsx)(St,{size:14,strokeWidth:1.5}),label:"Download as PNG",disabled:s.mode!=="present",tooltip:s.mode==="present"?void 0:(0,a.jsxs)("span",{children:["Only available in app view. ",(0,a.jsx)("br",{}),"Toggle with: ",xe("global.hideCode",!1)]}),handle:Ha},{icon:(0,a.jsx)(vt,{size:14,strokeWidth:1.5}),label:"Download as PDF",disabled:s.mode!=="present",tooltip:s.mode==="present"?void 0:(0,a.jsxs)("span",{children:["Only available in app view. ",(0,a.jsx)("br",{}),"Toggle with: ",xe("global.hideCode",!1)]}),handle:Ia}]},{icon:(0,a.jsx)(ia,{size:14,strokeWidth:1.5}),label:"Share",handle:D,hidden:!T&&!H,dropdown:[{icon:(0,a.jsx)(_t,{size:14,strokeWidth:1.5}),label:"Publish HTML to web",hidden:!T,handle:async()=>{i((0,a.jsx)(la,{onClose:o}))}},{icon:(0,a.jsx)(Nt,{size:14,strokeWidth:1.5}),label:"Create WebAssembly link",hidden:!H,handle:async()=>{await V($t({code:(await S()).contents})),j({title:"Copied",description:"Link copied to clipboard."})}}]},{icon:(0,a.jsx)(oa,{size:14,strokeWidth:1.5}),label:"Helper panel",redundant:!0,handle:D,dropdown:Ge.flatMap(h=>{let{type:C,Icon:J,hidden:De}=h;return De?[]:{label:se(C),rightElement:Ee(r===C),icon:(0,a.jsx)(J,{size:14,strokeWidth:1.5}),handle:()=>l(C)}})},{icon:(0,a.jsx)(ze,{size:14,strokeWidth:1.5}),label:"Present as",handle:D,dropdown:[{icon:s.mode==="present"?(0,a.jsx)(Dt,{size:14,strokeWidth:1.5}):(0,a.jsx)(Ce,{size:14,strokeWidth:1.5}),label:"Toggle app view",hotkey:"global.hideCode",handle:()=>{I()}},...we.map((h,C)=>{let J=Se(h);return{divider:C===0,label:Ne(h),icon:(0,a.jsx)(J,{size:14,strokeWidth:1.5}),rightElement:(0,a.jsx)("div",{className:"w-8 flex justify-end",children:F===h&&(0,a.jsx)(fe,{size:14})}),handle:()=>{G(h),s.mode==="edit"&&I()}}})]},{icon:(0,a.jsx)(ea,{size:14,strokeWidth:1.5}),label:"Duplicate notebook",hidden:!t||ce(),handle:g},{icon:(0,a.jsx)(ge,{size:14,strokeWidth:1.5}),label:"Copy code to clipboard",hidden:!t,handle:async()=>{await V((await S()).contents),j({title:"Copied",description:"Code copied to clipboard."})}},{icon:(0,a.jsx)(yt,{size:14,strokeWidth:1.5}),label:"Enable all cells",hidden:!Y||n,handle:async()=>{let h=Fe(le());await U({configs:re.fromEntries(h.map(Da))});for(let C of h)x({cellId:C,config:{disabled:!1}})}},{divider:!0,icon:(0,a.jsx)(ve,{size:14,strokeWidth:1.5}),label:"Add setup cell",handle:()=>{u({})}},{icon:(0,a.jsx)(Le,{size:14,strokeWidth:1.5}),label:"Add database connection",handle:()=>{i((0,a.jsx)(Xe,{onClose:o}))}},{icon:(0,a.jsx)(Me,{size:14,strokeWidth:1.5}),label:"Undo cell deletion",hidden:!$||n,handle:()=>{w()}},{icon:(0,a.jsx)(na,{size:14,strokeWidth:1.5}),label:"Restart kernel",variant:"danger",handle:b},{icon:(0,a.jsx)(Zt,{size:14,strokeWidth:1.5}),label:"Re-run all cells",redundant:!0,hotkey:"global.runAll",handle:async()=>{k()}},{icon:(0,a.jsx)(Oe,{size:14,strokeWidth:1.5}),label:"Clear all outputs",redundant:!0,handle:()=>{m()}},{icon:(0,a.jsx)(gt,{size:14,strokeWidth:1.5}),label:"Hide all markdown code",handle:d,redundant:!0},{icon:(0,a.jsx)(Xt,{size:14,strokeWidth:1.5}),label:"Collapse all sections",hotkey:"global.collapseAllSections",handle:f,redundant:!0},{icon:(0,a.jsx)(Qt,{size:14,strokeWidth:1.5}),label:"Expand all sections",hotkey:"global.expandAllSections",handle:y,redundant:!0},{divider:!0,icon:(0,a.jsx)(je,{size:14,strokeWidth:1.5}),label:"Command palette",hotkey:"global.commandPalette",handle:()=>v(Ea)},{icon:(0,a.jsx)(ta,{size:14,strokeWidth:1.5}),label:"Keyboard shortcuts",hotkey:"global.showHelp",handle:()=>z(Pa)},{icon:(0,a.jsx)(Et,{size:14,strokeWidth:1.5}),label:"User settings",handle:()=>A(Na),redundant:!0},{icon:(0,a.jsx)(ft,{size:14,strokeWidth:1.5}),label:"Resources",handle:D,dropdown:[{icon:(0,a.jsx)(Re,{size:14,strokeWidth:1.5}),label:"Documentation",handle:Sa},{icon:(0,a.jsx)(Ct,{size:14,strokeWidth:1.5}),label:"GitHub",handle:Aa},{icon:(0,a.jsx)(zt,{size:14,strokeWidth:1.5}),label:"Discord Community",handle:_a},{icon:(0,a.jsx)(Wt,{size:14,strokeWidth:1.5}),label:"YouTube",handle:Wa},{icon:(0,a.jsx)(Be,{size:14,strokeWidth:1.5}),label:"Changelog",handle:Ma}]},{divider:!0,icon:(0,a.jsx)(At,{size:14,strokeWidth:1.5}),label:"Return home",hidden:!location.search.includes("file"),handle:za},{icon:(0,a.jsx)(jt,{size:14,strokeWidth:1.5}),label:"New notebook",hidden:!location.search.includes("file"),handle:Ca}].filter(va).map(ga),e[4]=u,e[5]=$,e[6]=m,e[7]=o,e[8]=f,e[9]=g,e[10]=y,e[11]=O,e[12]=t,e[13]=Y,e[14]=d,e[15]=n,e[16]=i,e[17]=S,e[18]=b,e[19]=k,e[20]=U,e[21]=F,e[22]=r,e[23]=v,e[24]=z,e[25]=G,e[26]=A,e[27]=T,e[28]=H,e[29]=M,e[30]=l,e[31]=I,e[32]=w,e[33]=x,e[34]=s.mode,e[35]=R):R=e[35],R}function ga(e){return e.dropdown?{...e,dropdown:e.dropdown.filter(ja)}:e}function ja(e){return!e.hidden}function va(e){return!e.hidden}function Ca(){let e=et();window.open(e,"_blank")}function za(){let e=document.baseURI.split("?")[0];window.open(e,"_self")}function Ma(){window.open(_.releasesPage,"_blank")}function Wa(){window.open(_.youtube,"_blank")}function _a(){window.open(_.discordLink,"_blank")}function Aa(){window.open(_.githubPage,"_blank")}function Sa(){window.open(_.docsPage,"_blank")}function Na(e){return!e}function Pa(e){return!e}function Ea(e){return!e}function Da(e){return[e,{disabled:!1}]}async function Ia(){let e=new Event("export-beforeprint"),t=new Event("export-afterprint");(function(){window.dispatchEvent(e),setTimeout(Ta,0),setTimeout(()=>window.dispatchEvent(t),0)})()}function Ta(){return window.print()}async function Ha(){let e=document.getElementById("App");e&&await ut(e,document.title)}function La(e){return(0,a.jsx)("div",{className:"w-8 flex justify-end",children:e&&(0,a.jsx)(fe,{size:14})})}export{_e as a,ve as c,Ae as i,je as l,Pe as n,Me as o,pa as r,Ce as s,wa as t,ge as u};
|
|
1
|
+
import{s as oe}from"./chunk-LvLJmgfZ.js";import{d as N,l as Ie,p as Te,u as J}from"./useEvent-DlWF5OMa.js";import{t as He}from"./react-BGmjiNul.js";import{Dt as Le,Ft as ie,Pt as qe,Vn as Re,Wn as Ve,Yn as Oe,an as Be,dn as Ue,g as Ye,hr as Fe,m as ne,on as $e,sn as Ge,t as Ke,ti as Q,w as se,zn as Je}from"./cells-BNQUQiDS.js";import{t as W}from"./compiler-runtime-DeeZ7FnK.js";import{i as Qe}from"./useLifecycle-CmDXEyIC.js";import{a as le}from"./type-BdyvjzTI.js";import{n as Xe}from"./add-database-form-CgkV0MRs.js";import{a as re,d as P}from"./hotkeys-uKX61F1_.js";import{v as Ze}from"./utils-pfqq9IdB.js";import{n as _,t as de}from"./constants-Bkp4R3bQ.js";import{A as et,f as tt,j as ce,w as at}from"./config-D6nhy4FA.js";import{t as ot}from"./jsx-runtime-DN_bIXfG.js";import{r as it,t as X}from"./button-B8cGZzP5.js";import{r as D}from"./requests-C0HaHO6a.js";import{t as c}from"./createLucideIcon-CW2xpJ57.js";import{a as he,f as nt,i as pe,m as st,p as me,u as ue}from"./layout-DT91GUei.js";import{t as fe}from"./check-CrAQug3q.js";import{a as lt,c as rt,i as dt,n as ct,r as ht,s as pt,t as mt}from"./select-D9lTzMzP.js";import{i as ye,r as ut,t as be}from"./download-B6EJS7Ar.js";import{f as ft}from"./maps-s2pQkyf5.js";import{r as yt}from"./useCellActionButton-D5Zt1dDz.js";import{t as bt}from"./copy-gBVL4NN-.js";import{d as kt,t as xt}from"./state-JzO-Ni5T.js";import{t as wt}from"./download-DobaYJPt.js";import{t as gt}from"./eye-off-D9zAYqG9.js";import{t as jt}from"./file-plus-corner-BO_uS88s.js";import{t as vt}from"./file-BnFXtaZZ.js";import{i as Ct,n as zt,r as Mt,t as Wt}from"./youtube-BJQRl2JC.js";import{n as _t,t as At}from"./house-CncUa_LL.js";import{n as St}from"./play-BJDBXApx.js";import{t as Nt}from"./link-54sBkoQp.js";import{r as Pt}from"./input-B80Yt1uu.js";import{t as Dt}from"./settings-MTlHVxz3.js";import{y as Et}from"./textarea-Di1KKcL4.js";import{t as It}from"./square-leQTJTJJ.js";import{t as j}from"./use-toast-Bzf3rpev.js";import{t as Tt}from"./tooltip-CvjcEpZC.js";import{a as ke,i as Ht,r as Lt}from"./mode-Dq8MKjNR.js";import{o as qt}from"./alert-dialog-jcHA5geR.js";import{a as Rt,c as Vt,i as Ot,n as Bt,r as Ut}from"./dialog-CF5DtF1E.js";import{n as Z}from"./ImperativeModal-DVhvP4lH.js";import{r as Yt,t as Ft}from"./share-CXQVxivL.js";import{t as V}from"./copy-DRhpWiOq.js";import{r as $t}from"./useRunCells-CKEmgeKM.js";import{a as Gt}from"./cell-link-Dqj_nfXA.js";import{a as xe}from"./renderShortcut-eU5Hsfml.js";import{t as Kt}from"./icons-D4lB4En9.js";import{t as Jt}from"./links-D529u6GQ.js";import{t as we}from"./types-BLEgJ92v.js";var Qt=c("circle-chevron-down",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m16 10-4 4-4-4",key:"894hmk"}]]),Xt=c("circle-chevron-right",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m10 8 4 4-4 4",key:"1wy4r4"}]]),ge=c("clipboard-copy",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]]),je=c("command",[["path",{d:"M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3",key:"11bfej"}]]),ve=c("diamond-plus",[["path",{d:"M12 8v8",key:"napkw2"}],["path",{d:"M2.7 10.3a2.41 2.41 0 0 0 0 3.41l7.59 7.59a2.41 2.41 0 0 0 3.41 0l7.59-7.59a2.41 2.41 0 0 0 0-3.41L13.7 2.71a2.41 2.41 0 0 0-3.41 0z",key:"1ey20j"}],["path",{d:"M8 12h8",key:"1wcyev"}]]),Zt=c("fast-forward",[["path",{d:"M12 6a2 2 0 0 1 3.414-1.414l6 6a2 2 0 0 1 0 2.828l-6 6A2 2 0 0 1 12 18z",key:"b19h5q"}],["path",{d:"M2 6a2 2 0 0 1 3.414-1.414l6 6a2 2 0 0 1 0 2.828l-6 6A2 2 0 0 1 2 18z",key:"h7h5ge"}]]),ea=c("files",[["path",{d:"M15 2h-4a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V8",key:"14sh0y"}],["path",{d:"M16.706 2.706A2.4 2.4 0 0 0 15 2v5a1 1 0 0 0 1 1h5a2.4 2.4 0 0 0-.706-1.706z",key:"1970lx"}],["path",{d:"M5 7a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 1.732-1",key:"l4dndm"}]]),ta=c("keyboard",[["path",{d:"M10 8h.01",key:"1r9ogq"}],["path",{d:"M12 12h.01",key:"1mp3jc"}],["path",{d:"M14 8h.01",key:"1primd"}],["path",{d:"M16 12h.01",key:"1l6xoz"}],["path",{d:"M18 8h.01",key:"emo2bl"}],["path",{d:"M6 8h.01",key:"x9i8wu"}],["path",{d:"M7 16h10",key:"wp8him"}],["path",{d:"M8 12h.01",key:"czm47f"}],["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}]]),Ce=c("layout-template",[["rect",{width:"18",height:"7",x:"3",y:"3",rx:"1",key:"f1a2em"}],["rect",{width:"9",height:"7",x:"3",y:"14",rx:"1",key:"jqznyg"}],["rect",{width:"5",height:"7",x:"16",y:"14",rx:"1",key:"q5h2i8"}]]),aa=c("list",[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]]),oa=c("panel-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]]),ze=c("presentation",[["path",{d:"M2 3h20",key:"91anmk"}],["path",{d:"M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3",key:"2k9sn8"}],["path",{d:"m7 21 5-5 5 5",key:"bip4we"}]]),ia=c("share-2",[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]]),na=c("square-power",[["path",{d:"M12 7v4",key:"xawao1"}],["path",{d:"M7.998 9.003a5 5 0 1 0 8-.005",key:"1pek45"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}]]),Me=c("undo-2",[["path",{d:"M9 14 4 9l5-5",key:"102s5s"}],["path",{d:"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11",key:"f3b9sd"}]]),We=W(),ee=oe(He(),1),a=oe(ot(),1),O="https://static.marimo.app";const sa=e=>{let t=(0,We.c)(25),{onClose:i}=e,[o,s]=(0,ee.useState)(""),{exportAsHTML:r}=D(),l=`${o}-${Math.random().toString(36).slice(2,6)}`,n=`${O}/static/${l}`,d;t[0]!==r||t[1]!==i||t[2]!==l?(d=async v=>{v.preventDefault(),i();let A=await r({download:!1,includeCode:!0,files:nt.INSTANCE.filenames()}),z=j({title:"Uploading static notebook...",description:"Please wait."});await fetch(`${O}/api/static`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({html:A,path:l})}).catch(()=>{z.dismiss(),j({title:"Error uploading static page",description:(0,a.jsxs)("div",{children:["Please try again later. If the problem persists, please file a bug report on"," ",(0,a.jsx)("a",{href:_.issuesPage,target:"_blank",className:"underline",children:"GitHub"}),"."]})})}),z.dismiss(),j({title:"Static page uploaded!",description:(0,a.jsxs)("div",{children:["The URL has been copied to your clipboard.",(0,a.jsx)("br",{}),"You can share it with anyone."]})})},t[0]=r,t[1]=i,t[2]=l,t[3]=d):d=t[3];let p;t[4]===Symbol.for("react.memo_cache_sentinel")?(p=(0,a.jsx)(Vt,{children:"Share static notebook"}),t[4]=p):p=t[4];let x;t[5]===Symbol.for("react.memo_cache_sentinel")?(x=(0,a.jsxs)(Rt,{children:[p,(0,a.jsxs)(Ut,{children:["You can publish a static, non-interactive version of this notebook to the public web. We will create a link for you that lives on"," ",(0,a.jsx)("a",{href:O,target:"_blank",children:O}),"."]})]}),t[5]=x):x=t[5];let w;t[6]===Symbol.for("react.memo_cache_sentinel")?(w=v=>{s(v.target.value.toLowerCase().replaceAll(/\s/g,"-").replaceAll(/[^\da-z-]/g,""))},t[6]=w):w=t[6];let m;t[7]===o?m=t[8]:(m=(0,a.jsx)(Pt,{"data-testid":"slug-input",id:"slug",autoFocus:!0,value:o,placeholder:"Notebook slug",onChange:w,required:!0,autoComplete:"off"}),t[7]=o,t[8]=m);let u;t[9]===n?u=t[10]:(u=(0,a.jsxs)("div",{className:"font-semibold text-sm text-muted-foreground gap-2 flex flex-col",children:["Anyone will be able to access your notebook at this URL:",(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)(la,{text:n}),(0,a.jsx)("span",{className:"text-primary",children:n})]})]}),t[9]=n,t[10]=u);let f;t[11]!==m||t[12]!==u?(f=(0,a.jsxs)("div",{className:"flex flex-col gap-6 py-4",children:[m,u]}),t[11]=m,t[12]=u,t[13]=f):f=t[13];let y;t[14]===i?y=t[15]:(y=(0,a.jsx)(X,{"data-testid":"cancel-share-static-notebook-button",variant:"secondary",onClick:i,children:"Cancel"}),t[14]=i,t[15]=y);let b;t[16]===n?b=t[17]:(b=(0,a.jsx)(X,{"data-testid":"share-static-notebook-button","aria-label":"Save",variant:"default",type:"submit",onClick:async()=>{await V(n)},children:"Create"}),t[16]=n,t[17]=b);let k;t[18]!==y||t[19]!==b?(k=(0,a.jsxs)(Ot,{children:[y,b]}),t[18]=y,t[19]=b,t[20]=k):k=t[20];let g;return t[21]!==d||t[22]!==k||t[23]!==f?(g=(0,a.jsx)(Bt,{className:"w-fit",children:(0,a.jsxs)("form",{onSubmit:d,children:[x,f,k]})}),t[21]=d,t[22]=k,t[23]=f,t[24]=g):g=t[24],g};var la=e=>{let t=(0,We.c)(8),[i,o]=ee.useState(!1),s;t[0]===e.text?s=t[1]:(s=it.stopPropagation(async p=>{p.preventDefault(),await V(e.text),o(!0),setTimeout(()=>o(!1),2e3)}),t[0]=e.text,t[1]=s);let r=s,l;t[2]===Symbol.for("react.memo_cache_sentinel")?(l=(0,a.jsx)(bt,{size:14,strokeWidth:1.5}),t[2]=l):l=t[2];let n;t[3]===r?n=t[4]:(n=(0,a.jsx)(X,{"data-testid":"copy-static-notebook-url-button",onClick:r,size:"xs",variant:"secondary",children:l}),t[3]=r,t[4]=n);let d;return t[5]!==i||t[6]!==n?(d=(0,a.jsx)(Tt,{content:"Copied!",open:i,children:n}),t[5]=i,t[6]=n,t[7]=d):d=t[7],d},ra=W();function da(){let e=document.getElementsByClassName(de.outputArea);for(let t of e){let i=t.getBoundingClientRect();if(i.bottom>0&&i.top<window.innerHeight){let o=Q.findElement(t);if(!o){P.warn("Could not find HTMLCellId for visible output area",t);continue}return{cellId:Q.parse(o.id)}}}return P.warn("No visible output area found for scroll anchor"),null}function ca(e){if(!e){P.warn("No scroll anchor provided to restore scroll position");return}let t=document.getElementById(Q.create(e.cellId));if(!t){P.warn("Could not find cell element to restore scroll position",e.cellId);return}if(!t.querySelector(`.${de.outputArea}`)){P.warn("Could not find output area to restore scroll position",e.cellId);return}t.scrollIntoView({block:"start",behavior:"auto"})}function _e(){let e=(0,ra.c)(2),t=N(ke),i;return e[0]===t?i=e[1]:(i=()=>{let o=da();t(s=>({mode:Ht(s.mode),cellAnchor:(o==null?void 0:o.cellId)??null})),requestAnimationFrame(()=>{requestAnimationFrame(()=>{ca(o)})})},e[0]=t,e[1]=i),i}const Ae=Te(!1);var ha=W();const pa=()=>{let e=(0,ha.c)(7),{selectedLayout:t}=he(),{setLayoutView:i}=pe();if(ce()&&!Ue("wasm_layouts"))return null;let o;e[0]===i?o=e[1]:(o=n=>i(n),e[0]=i,e[1]=o);let s;e[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,a.jsx)(pt,{className:"min-w-[110px] border-border bg-background","data-testid":"layout-select",children:(0,a.jsx)(rt,{placeholder:"Select a view"})}),e[2]=s):s=e[2];let r;e[3]===Symbol.for("react.memo_cache_sentinel")?(r=(0,a.jsx)(ct,{children:(0,a.jsxs)(ht,{children:[(0,a.jsx)(lt,{children:"View as"}),we.map(ua)]})}),e[3]=r):r=e[3];let l;return e[4]!==t||e[5]!==o?(l=(0,a.jsxs)(mt,{"data-testid":"layout-select",value:t,onValueChange:o,children:[s,r]}),e[4]=t,e[5]=o,e[6]=l):l=e[6],l};function ma(e){return(0,a.jsx)(Se(e),{className:"h-4 w-4"})}function Se(e){switch(e){case"vertical":return aa;case"grid":return Mt;case"slides":return ze;default:return Qe(e),It}}function Ne(e){return le(e)}function ua(e){return(0,a.jsx)(dt,{value:e,children:(0,a.jsxs)("div",{className:"flex items-center gap-1.5 leading-5",children:[ma(e),(0,a.jsx)("span",{children:Ne(e)})]})},e)}var fa=W();function ya(e){let t=(0,fa.c)(5),{openPrompt:i,closeModal:o}=Z(),{sendCopy:s}=D(),r;return t[0]!==o||t[1]!==i||t[2]!==s||t[3]!==e?(r=()=>{if(!e)return null;let l=qe.guessDeliminator(e);i({title:"Copy notebook",description:"Enter a new filename for the notebook copy.",defaultValue:`_${ie.basename(e)}`,confirmText:"Copy notebook",spellCheck:!1,onConfirm:n=>{let d=l.join(ie.dirname(e),n);s({source:e,destination:d}).then(()=>{o(),j({title:"Notebook copied",description:"A copy of the notebook has been created."}),Jt(d)})}})},t[0]=o,t[1]=i,t[2]=s,t[3]=e,t[4]=r):r=t[4],r}const ba=()=>{let{updateCellConfig:e}=se(),{saveCellConfig:t}=D();return(0,ee.useCallback)(async()=>{let i=new Le,o=ne(),s=o.cellIds.inOrderIds,r={};for(let n of s){if(o.cellData[n]===void 0)continue;let{code:d,config:p}=o.cellData[n];p.hide_code||i.isSupported(d)&&(r[n]={hide_code:!0})}let l=re.entries(r);if(l.length!==0){await t({configs:r});for(let[n,d]of l)e({cellId:n,config:d})}},[e])};var ka=W();function Pe(){let e=(0,ka.c)(4),{openConfirm:t}=Z(),i=N(at),{sendRestart:o}=D(),s;return e[0]!==t||e[1]!==o||e[2]!==i?(s=()=>{t({title:"Restart Kernel",description:"This will restart the Python kernel. You'll lose all data that's in memory. You will also lose any unsaved changes, so make sure to save your work before restarting.",variant:"destructive",confirmAction:(0,a.jsx)(qt,{onClick:async()=>{i({state:et.CLOSING}),await o(),Yt()},"aria-label":"Confirm Restart",children:"Restart"})})},e[0]=t,e[1]=o,e[2]=i,e[3]=s):s=e[3],s}var xa=W(),E=e=>{e==null||e.preventDefault(),e==null||e.stopPropagation()};function wa(){var te,ae;let e=(0,xa.c)(36),t=Gt(),{openModal:i,closeModal:o}=Z(),{toggleApplication:s}=Be(),{selectedPanel:r}=$e(),[l]=Ie(ke),n=J(Lt),d=ba(),[p]=Ze(),{updateCellConfig:x,undoDeleteCell:w,clearAllCellOutputs:m,addSetupCellIfDoesntExist:u,collapseAllCells:f,expandAllCells:y}=se(),b=Pe(),k=$t(),g=ya(t),v=N(Ae),A=N(xt),z=N(kt),{exportAsMarkdown:B,readCode:S,saveCellConfig:U}=D(),Y=J(Ye),F=J(Ke),{selectedLayout:$}=he(),{setLayoutView:G}=pe(),I=_e(),T=((te=p.sharing)==null?void 0:te.html)??!0,H=((ae=p.sharing)==null?void 0:ae.wasm)??!0,De=La,L;e[0]===Symbol.for("react.memo_cache_sentinel")?(L=(0,a.jsx)(wt,{size:14,strokeWidth:1.5}),e[0]=L):L=e[0];let q;e[1]===Symbol.for("react.memo_cache_sentinel")?(q=(0,a.jsx)(me,{size:14,strokeWidth:1.5}),e[1]=q):q=e[1];let M;e[2]===t?M=e[3]:(M=async()=>{if(!t){j({variant:"danger",title:"Error",description:"Notebooks must be named to be exported."});return}await ue({filename:t,includeCode:!0})},e[2]=t,e[3]=M);let R;return e[4]!==u||e[5]!==F||e[6]!==m||e[7]!==o||e[8]!==f||e[9]!==g||e[10]!==y||e[11]!==B||e[12]!==t||e[13]!==Y||e[14]!==d||e[15]!==n||e[16]!==i||e[17]!==S||e[18]!==b||e[19]!==k||e[20]!==U||e[21]!==$||e[22]!==r||e[23]!==v||e[24]!==z||e[25]!==G||e[26]!==A||e[27]!==T||e[28]!==H||e[29]!==M||e[30]!==s||e[31]!==I||e[32]!==w||e[33]!==x||e[34]!==l.mode?(R=[{icon:L,label:"Download",handle:E,dropdown:[{icon:q,label:"Download as HTML",handle:M},{icon:(0,a.jsx)(me,{size:14,strokeWidth:1.5}),label:"Download as HTML (exclude code)",handle:async()=>{if(!t){j({variant:"danger",title:"Error",description:"Notebooks must be named to be exported."});return}await ue({filename:t,includeCode:!1})}},{icon:(0,a.jsx)(Kt,{strokeWidth:1.5,style:{width:14,height:14}}),label:"Download as Markdown",handle:async()=>{let h=await B({download:!1});be(new Blob([h],{type:"text/plain"}),ye.toMarkdown(document.title))}},{icon:(0,a.jsx)(st,{size:14,strokeWidth:1.5}),label:"Download Python code",handle:async()=>{let h=await S();be(new Blob([h.contents],{type:"text/plain"}),ye.toPY(document.title))}},{divider:!0,icon:(0,a.jsx)(St,{size:14,strokeWidth:1.5}),label:"Download as PNG",disabled:l.mode!=="present",tooltip:l.mode==="present"?void 0:(0,a.jsxs)("span",{children:["Only available in app view. ",(0,a.jsx)("br",{}),"Toggle with: ",xe("global.hideCode",!1)]}),handle:Ha},{icon:(0,a.jsx)(vt,{size:14,strokeWidth:1.5}),label:"Download as PDF",disabled:l.mode!=="present",tooltip:l.mode==="present"?void 0:(0,a.jsxs)("span",{children:["Only available in app view. ",(0,a.jsx)("br",{}),"Toggle with: ",xe("global.hideCode",!1)]}),handle:Ia}]},{icon:(0,a.jsx)(ia,{size:14,strokeWidth:1.5}),label:"Share",handle:E,hidden:!T&&!H,dropdown:[{icon:(0,a.jsx)(_t,{size:14,strokeWidth:1.5}),label:"Publish HTML to web",hidden:!T,handle:async()=>{i((0,a.jsx)(sa,{onClose:o}))}},{icon:(0,a.jsx)(Nt,{size:14,strokeWidth:1.5}),label:"Create WebAssembly link",hidden:!H,handle:async()=>{await V(Ft({code:(await S()).contents})),j({title:"Copied",description:"Link copied to clipboard."})}}]},{icon:(0,a.jsx)(oa,{size:14,strokeWidth:1.5}),label:"Helper panel",redundant:!0,handle:E,dropdown:Ge.flatMap(h=>{let{type:C,Icon:K,hidden:Ee}=h;return Ee?[]:{label:le(C),rightElement:De(r===C),icon:(0,a.jsx)(K,{size:14,strokeWidth:1.5}),handle:()=>s(C)}})},{icon:(0,a.jsx)(ze,{size:14,strokeWidth:1.5}),label:"Present as",handle:E,dropdown:[{icon:l.mode==="present"?(0,a.jsx)(Et,{size:14,strokeWidth:1.5}):(0,a.jsx)(Ce,{size:14,strokeWidth:1.5}),label:"Toggle app view",hotkey:"global.hideCode",handle:()=>{I()}},...we.map((h,C)=>{let K=Se(h);return{divider:C===0,label:Ne(h),icon:(0,a.jsx)(K,{size:14,strokeWidth:1.5}),rightElement:(0,a.jsx)("div",{className:"w-8 flex justify-end",children:$===h&&(0,a.jsx)(fe,{size:14})}),handle:()=>{G(h),l.mode==="edit"&&I()}}})]},{icon:(0,a.jsx)(ea,{size:14,strokeWidth:1.5}),label:"Duplicate notebook",hidden:!t||ce(),handle:g},{icon:(0,a.jsx)(ge,{size:14,strokeWidth:1.5}),label:"Copy code to clipboard",hidden:!t,handle:async()=>{await V((await S()).contents),j({title:"Copied",description:"Code copied to clipboard."})}},{icon:(0,a.jsx)(yt,{size:14,strokeWidth:1.5}),label:"Enable all cells",hidden:!Y||n,handle:async()=>{let h=Fe(ne());await U({configs:re.fromEntries(h.map(Ea))});for(let C of h)x({cellId:C,config:{disabled:!1}})}},{divider:!0,icon:(0,a.jsx)(ve,{size:14,strokeWidth:1.5}),label:"Add setup cell",handle:()=>{u({})}},{icon:(0,a.jsx)(Re,{size:14,strokeWidth:1.5}),label:"Add database connection",handle:()=>{i((0,a.jsx)(Xe,{onClose:o}))}},{icon:(0,a.jsx)(Me,{size:14,strokeWidth:1.5}),label:"Undo cell deletion",hidden:!F||n,handle:()=>{w()}},{icon:(0,a.jsx)(na,{size:14,strokeWidth:1.5}),label:"Restart kernel",variant:"danger",handle:b},{icon:(0,a.jsx)(Zt,{size:14,strokeWidth:1.5}),label:"Re-run all cells",redundant:!0,hotkey:"global.runAll",handle:async()=>{k()}},{icon:(0,a.jsx)(Ve,{size:14,strokeWidth:1.5}),label:"Clear all outputs",redundant:!0,handle:()=>{m()}},{icon:(0,a.jsx)(gt,{size:14,strokeWidth:1.5}),label:"Hide all markdown code",handle:d,redundant:!0},{icon:(0,a.jsx)(Xt,{size:14,strokeWidth:1.5}),label:"Collapse all sections",hotkey:"global.collapseAllSections",handle:f,redundant:!0},{icon:(0,a.jsx)(Qt,{size:14,strokeWidth:1.5}),label:"Expand all sections",hotkey:"global.expandAllSections",handle:y,redundant:!0},{divider:!0,icon:(0,a.jsx)(je,{size:14,strokeWidth:1.5}),label:"Command palette",hotkey:"global.commandPalette",handle:()=>v(Da)},{icon:(0,a.jsx)(ta,{size:14,strokeWidth:1.5}),label:"Keyboard shortcuts",hotkey:"global.showHelp",handle:()=>z(Pa)},{icon:(0,a.jsx)(Dt,{size:14,strokeWidth:1.5}),label:"User settings",handle:()=>A(Na),redundant:!0},{icon:(0,a.jsx)(ft,{size:14,strokeWidth:1.5}),label:"Resources",handle:E,dropdown:[{icon:(0,a.jsx)(Oe,{size:14,strokeWidth:1.5}),label:"Documentation",handle:Sa},{icon:(0,a.jsx)(Ct,{size:14,strokeWidth:1.5}),label:"GitHub",handle:Aa},{icon:(0,a.jsx)(zt,{size:14,strokeWidth:1.5}),label:"Discord Community",handle:_a},{icon:(0,a.jsx)(Wt,{size:14,strokeWidth:1.5}),label:"YouTube",handle:Wa},{icon:(0,a.jsx)(Je,{size:14,strokeWidth:1.5}),label:"Changelog",handle:Ma}]},{divider:!0,icon:(0,a.jsx)(At,{size:14,strokeWidth:1.5}),label:"Return home",hidden:!location.search.includes("file"),handle:za},{icon:(0,a.jsx)(jt,{size:14,strokeWidth:1.5}),label:"New notebook",hidden:!location.search.includes("file"),handle:Ca}].filter(va).map(ga),e[4]=u,e[5]=F,e[6]=m,e[7]=o,e[8]=f,e[9]=g,e[10]=y,e[11]=B,e[12]=t,e[13]=Y,e[14]=d,e[15]=n,e[16]=i,e[17]=S,e[18]=b,e[19]=k,e[20]=U,e[21]=$,e[22]=r,e[23]=v,e[24]=z,e[25]=G,e[26]=A,e[27]=T,e[28]=H,e[29]=M,e[30]=s,e[31]=I,e[32]=w,e[33]=x,e[34]=l.mode,e[35]=R):R=e[35],R}function ga(e){return e.dropdown?{...e,dropdown:e.dropdown.filter(ja)}:e}function ja(e){return!e.hidden}function va(e){return!e.hidden}function Ca(){let e=tt();window.open(e,"_blank")}function za(){let e=document.baseURI.split("?")[0];window.open(e,"_self")}function Ma(){window.open(_.releasesPage,"_blank")}function Wa(){window.open(_.youtube,"_blank")}function _a(){window.open(_.discordLink,"_blank")}function Aa(){window.open(_.githubPage,"_blank")}function Sa(){window.open(_.docsPage,"_blank")}function Na(e){return!e}function Pa(e){return!e}function Da(e){return!e}function Ea(e){return[e,{disabled:!1}]}async function Ia(){let e=new Event("export-beforeprint"),t=new Event("export-afterprint");(function(){window.dispatchEvent(e),setTimeout(Ta,0),setTimeout(()=>window.dispatchEvent(t),0)})()}function Ta(){return window.print()}async function Ha(){let e=document.getElementById("App");e&&await ut(e,document.title)}function La(e){return(0,a.jsx)("div",{className:"w-8 flex justify-end",children:e&&(0,a.jsx)(fe,{size:14})})}export{_e as a,ve as c,Ae as i,je as l,Pe as n,Me as o,pa as r,Ce as s,wa as t,ge as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as h}from"./chunk-LvLJmgfZ.js";import{t as c}from"./react-BGmjiNul.js";import{t as y}from"./context-
|
|
1
|
+
import{s as h}from"./chunk-LvLJmgfZ.js";import{t as c}from"./react-BGmjiNul.js";import{t as y}from"./context-DHfVoQfl.js";var l=new Map,m=!1;try{m=new Intl.NumberFormat("de-DE",{signDisplay:"exceptZero"}).resolvedOptions().signDisplay==="exceptZero"}catch{}var u=!1;try{u=new Intl.NumberFormat("de-DE",{style:"unit",unit:"degree"}).resolvedOptions().style==="unit"}catch{}var p={degree:{narrow:{default:"\xB0","ja-JP":" \u5EA6","zh-TW":"\u5EA6","sl-SI":" \xB0"}}},f=class{format(t){var e;let r="";if(r=!m&&this.options.signDisplay!=null?b(this.numberFormatter,this.options.signDisplay,t):this.numberFormatter.format(t),this.options.style==="unit"&&!u){let{unit:s,unitDisplay:i="short",locale:a}=this.resolvedOptions();if(!s)return r;let o=(e=p[s])==null?void 0:e[i];r+=o[a]||o.default}return r}formatToParts(t){return this.numberFormatter.formatToParts(t)}formatRange(t,r){if(typeof this.numberFormatter.formatRange=="function")return this.numberFormatter.formatRange(t,r);if(r<t)throw RangeError("End date must be >= start date");return`${this.format(t)} \u2013 ${this.format(r)}`}formatRangeToParts(t,r){if(typeof this.numberFormatter.formatRangeToParts=="function")return this.numberFormatter.formatRangeToParts(t,r);if(r<t)throw RangeError("End date must be >= start date");let e=this.numberFormatter.formatToParts(t),s=this.numberFormatter.formatToParts(r);return[...e.map(i=>({...i,source:"startRange"})),{type:"literal",value:" \u2013 ",source:"shared"},...s.map(i=>({...i,source:"endRange"}))]}resolvedOptions(){let t=this.numberFormatter.resolvedOptions();return!m&&this.options.signDisplay!=null&&(t={...t,signDisplay:this.options.signDisplay}),!u&&this.options.style==="unit"&&(t={...t,style:"unit",unit:this.options.unit,unitDisplay:this.options.unitDisplay}),t}constructor(t,r={}){this.numberFormatter=d(t,r),this.options=r}};function d(t,r={}){var a;let{numberingSystem:e}=r;if(e&&t.includes("-nu-")&&(t.includes("-u-")||(t+="-u-"),t+=`-nu-${e}`),r.style==="unit"&&!u){let{unit:o,unitDisplay:n="short"}=r;if(!o)throw Error('unit option must be provided with style: "unit"');if(!((a=p[o])!=null&&a[n]))throw Error(`Unsupported unit ${o} with unitDisplay = ${n}`);r={...r,style:"decimal"}}let s=t+(r?Object.entries(r).sort((o,n)=>o[0]<n[0]?-1:1).join():"");if(l.has(s))return l.get(s);let i=new Intl.NumberFormat(t,r);return l.set(s,i),i}function b(t,r,e){if(r==="auto")return t.format(e);if(r==="never")return t.format(Math.abs(e));{let s=!1;if(r==="always"?s=e>0||Object.is(e,0):r==="exceptZero"&&(Object.is(e,-0)||Object.is(e,0)?e=Math.abs(e):s=e>0),s){let i=t.format(-e),a=t.format(e),o=i.replace(a,"").replace(/\u200e|\u061C/,"");return[...o].length!==1&&console.warn("@react-aria/i18n polyfill for NumberFormat signDisplay: Unsupported case"),i.replace(a,"!!!").replace(o,"+").replace("!!!",a)}else return t.format(e)}}var g=h(c(),1);function D(t={}){let{locale:r}=y();return(0,g.useMemo)(()=>new f(r,t),[r,t])}export{f as n,D as t};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import{s as Qe}from"./chunk-LvLJmgfZ.js";import{t as Ze}from"./react-BGmjiNul.js";import{t as et}from"./react-dom-C9fstfnp.js";import{n as tt}from"./clsx-D0MtrJOx.js";import{n as nt}from"./SSRProvider-DD7JA3RM.js";var d=Qe(Ze(),1),T=typeof document<"u"?d.useLayoutEffect:()=>{};function rt(e){let[t,n]=(0,d.useState)(e),a=(0,d.useRef)(t),o=(0,d.useRef)(null),l=(0,d.useRef)(()=>{if(!o.current)return;let s=o.current.next();if(s.done){o.current=null;return}a.current===s.value?l.current():n(s.value)});return T(()=>{a.current=t,o.current&&l.current()}),[t,(0,d.useCallback)(s=>{o.current=s(a.current),l.current()},[l])]}var it=!!(typeof window<"u"&&window.document&&window.document.createElement),O=new Map,U;typeof FinalizationRegistry<"u"&&(U=new FinalizationRegistry(e=>{O.delete(e)}));function ke(e){let[t,n]=(0,d.useState)(e),a=(0,d.useRef)(null),o=nt(t),l=(0,d.useRef)(null);if(U&&U.register(l,o),it){let s=O.get(o);s&&!s.includes(a)?s.push(a):O.set(o,[a])}return T(()=>{let s=o;return()=>{U&&U.unregister(l),O.delete(s)}},[o]),(0,d.useEffect)(()=>{let s=a.current;return s&&n(s),()=>{s&&(a.current=null)}}),o}function at(e,t){if(e===t)return e;let n=O.get(e);if(n)return n.forEach(o=>o.current=t),t;let a=O.get(t);return a?(a.forEach(o=>o.current=e),e):t}function ot(e=[]){let t=ke(),[n,a]=rt(t),o=(0,d.useCallback)(()=>{a(function*(){yield t,yield document.getElementById(t)?t:void 0})},[t,a]);return T(o,[t,o,...e]),n}function te(...e){return(...t)=>{for(let n of e)typeof n=="function"&&n(...t)}}var E=e=>(e==null?void 0:e.ownerDocument)??document,z=e=>e&&"window"in e&&e.window===e?e:E(e).defaultView||window;function st(e){return typeof e=="object"&&!!e&&"nodeType"in e&&typeof e.nodeType=="number"}function lt(e){return st(e)&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&"host"in e}var ut=!1;function B(){return ut}function h(e,t){if(!B())return t&&e?e.contains(t):!1;if(!e||!t)return!1;let n=t;for(;n!==null;){if(n===e)return!0;n=n.tagName==="SLOT"&&n.assignedSlot?n.assignedSlot.parentNode:lt(n)?n.host:n.parentNode}return!1}var ct=(e=document)=>{var n;if(!B())return e.activeElement;let t=e.activeElement;for(;t&&"shadowRoot"in t&&((n=t.shadowRoot)!=null&&n.activeElement);)t=t.shadowRoot.activeElement;return t};function b(e){return B()&&e.target.shadowRoot&&e.composedPath?e.composedPath()[0]:e.target}function ne(...e){let t={...e[0]};for(let n=1;n<e.length;n++){let a=e[n];for(let o in a){let l=t[o],s=a[o];typeof l=="function"&&typeof s=="function"&&o[0]==="o"&&o[1]==="n"&&o.charCodeAt(2)>=65&&o.charCodeAt(2)<=90?t[o]=te(l,s):(o==="className"||o==="UNSAFE_className")&&typeof l=="string"&&typeof s=="string"?t[o]=tt(l,s):o==="id"&&l&&s?t.id=at(l,s):t[o]=s===void 0?l:s}}return t}function G(e){if(dt())e.focus({preventScroll:!0});else{let t=ft(e);e.focus(),pt(t)}}var W=null;function dt(){if(W==null){W=!1;try{document.createElement("div").focus({get preventScroll(){return W=!0,!0}})}catch{}}return W}function ft(e){let t=e.parentNode,n=[],a=document.scrollingElement||document.documentElement;for(;t instanceof HTMLElement&&t!==a;)(t.offsetHeight<t.scrollHeight||t.offsetWidth<t.scrollWidth)&&n.push({element:t,scrollTop:t.scrollTop,scrollLeft:t.scrollLeft}),t=t.parentNode;return a instanceof HTMLElement&&n.push({element:a,scrollTop:a.scrollTop,scrollLeft:a.scrollLeft}),n}function pt(e){for(let{element:t,scrollTop:n,scrollLeft:a}of e)t.scrollTop=n,t.scrollLeft=a}function _(e){var n;if(typeof window>"u"||window.navigator==null)return!1;let t=(n=window.navigator.userAgentData)==null?void 0:n.brands;return Array.isArray(t)&&t.some(a=>e.test(a.brand))||e.test(window.navigator.userAgent)}function re(e){var t;return typeof window<"u"&&window.navigator!=null?e.test(((t=window.navigator.userAgentData)==null?void 0:t.platform)||window.navigator.platform):!1}function w(e){let t=null;return()=>(t??(t=e()),t)}var x=w(function(){return re(/^Mac/i)}),Le=w(function(){return re(/^iPhone/i)}),ie=w(function(){return re(/^iPad/i)||x()&&navigator.maxTouchPoints>1}),Y=w(function(){return Le()||ie()}),gt=w(function(){return x()||Y()}),Se=w(function(){return _(/AppleWebKit/i)&&!Ae()}),Ae=w(function(){return _(/Chrome/i)}),ae=w(function(){return _(/Android/i)}),vt=w(function(){return _(/Firefox/i)}),yt=(0,d.createContext)({isNative:!0,open:bt,useHref:e=>e});function oe(){return(0,d.useContext)(yt)}function S(e,t,n=!0){var v;var a;let{metaKey:o,ctrlKey:l,altKey:s,shiftKey:p}=t;vt()&&(a=window.event)!=null&&((v=a.type)!=null&&v.startsWith("key"))&&e.target==="_blank"&&(x()?o=!0:l=!0);let g=Se()&&x()&&!ie()?new KeyboardEvent("keydown",{keyIdentifier:"Enter",metaKey:o,ctrlKey:l,altKey:s,shiftKey:p}):new MouseEvent("click",{metaKey:o,ctrlKey:l,altKey:s,shiftKey:p,detail:1,bubbles:!0,cancelable:!0});S.isOpening=n,G(e),e.dispatchEvent(g),S.isOpening=!1}S.isOpening=!1;function mt(e,t){if(e instanceof HTMLAnchorElement)t(e);else if(e.hasAttribute("data-href")){let n=document.createElement("a");n.href=e.getAttribute("data-href"),e.hasAttribute("data-target")&&(n.target=e.getAttribute("data-target")),e.hasAttribute("data-rel")&&(n.rel=e.getAttribute("data-rel")),e.hasAttribute("data-download")&&(n.download=e.getAttribute("data-download")),e.hasAttribute("data-ping")&&(n.ping=e.getAttribute("data-ping")),e.hasAttribute("data-referrer-policy")&&(n.referrerPolicy=e.getAttribute("data-referrer-policy")),e.appendChild(n),t(n),e.removeChild(n)}}function bt(e,t){mt(e,n=>S(n,t))}function Et(e){let t=oe().useHref(e.href??"");return{"data-href":e.href?t:void 0,"data-target":e.target,"data-rel":e.rel,"data-download":e.download,"data-ping":e.ping,"data-referrer-policy":e.referrerPolicy}}function ht(e){let t=oe().useHref((e==null?void 0:e.href)??"");return{href:e!=null&&e.href?t:void 0,target:e==null?void 0:e.target,rel:e==null?void 0:e.rel,download:e==null?void 0:e.download,ping:e==null?void 0:e.ping,referrerPolicy:e==null?void 0:e.referrerPolicy}}var k=new Map,se=new Set;function Ce(){if(typeof window>"u")return;function e(a){return"propertyName"in a}let t=a=>{if(!e(a)||!a.target)return;let o=k.get(a.target);o||(o=new Set,k.set(a.target,o),a.target.addEventListener("transitioncancel",n,{once:!0})),o.add(a.propertyName)},n=a=>{if(!e(a)||!a.target)return;let o=k.get(a.target);if(o&&(o.delete(a.propertyName),o.size===0&&(a.target.removeEventListener("transitioncancel",n),k.delete(a.target)),k.size===0)){for(let l of se)l();se.clear()}};document.body.addEventListener("transitionrun",t),document.body.addEventListener("transitionend",n)}typeof document<"u"&&(document.readyState==="loading"?document.addEventListener("DOMContentLoaded",Ce):Ce());function Tt(){for(let[e]of k)"isConnected"in e&&!e.isConnected&&k.delete(e)}function Me(e){requestAnimationFrame(()=>{Tt(),k.size===0?e():se.add(e)})}function Ke(){let e=(0,d.useRef)(new Map),t=(0,d.useCallback)((o,l,s,p)=>{let g=p!=null&&p.once?(...v)=>{e.current.delete(s),s(...v)}:s;e.current.set(s,{type:l,eventTarget:o,fn:g,options:p}),o.addEventListener(l,g,p)},[]),n=(0,d.useCallback)((o,l,s,p)=>{var v;let g=((v=e.current.get(s))==null?void 0:v.fn)||s;o.removeEventListener(l,g,p),e.current.delete(s)},[]),a=(0,d.useCallback)(()=>{e.current.forEach((o,l)=>{n(o.eventTarget,o.type,l,o.options)})},[n]);return(0,d.useEffect)(()=>a,[a]),{addGlobalListener:t,removeGlobalListener:n,removeAllGlobalListeners:a}}var wt=d.useInsertionEffect??T;function j(e){let t=(0,d.useRef)(null);return wt(()=>{t.current=e},[e]),(0,d.useCallback)((...n)=>{let a=t.current;return a==null?void 0:a(...n)},[])}function Ie(e,t){T(()=>{if(e&&e.ref&&t)return e.ref.current=t.current,()=>{e.ref&&(e.ref.current=null)}})}function Oe(e){return e.pointerType===""&&e.isTrusted?!0:ae()&&e.pointerType?e.type==="click"&&e.buttons===1:e.detail===0&&!e.pointerType}function xe(e){return!ae()&&e.width===0&&e.height===0||e.width===1&&e.height===1&&e.pressure===0&&e.detail===0&&e.pointerType==="mouse"}var Pt=typeof Element<"u"&&"checkVisibility"in Element.prototype;function kt(e){let t=z(e);if(!(e instanceof t.HTMLElement)&&!(e instanceof t.SVGElement))return!1;let{display:n,visibility:a}=e.style,o=n!=="none"&&a!=="hidden"&&a!=="collapse";if(o){let{getComputedStyle:l}=e.ownerDocument.defaultView,{display:s,visibility:p}=l(e);o=s!=="none"&&p!=="hidden"&&p!=="collapse"}return o}function Lt(e,t){return!e.hasAttribute("hidden")&&!e.hasAttribute("data-react-aria-prevent-focus")&&(e.nodeName==="DETAILS"&&t&&t.nodeName!=="SUMMARY"?e.hasAttribute("open"):!0)}function le(e,t){return Pt?e.checkVisibility({visibilityProperty:!0})&&!e.closest("[data-react-aria-prevent-focus]"):e.nodeName!=="#comment"&&kt(e)&&Lt(e,t)&&(!e.parentElement||le(e.parentElement,e))}var ue=["input:not([disabled]):not([type=hidden])","select:not([disabled])","textarea:not([disabled])","button:not([disabled])","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]",'[contenteditable]:not([contenteditable^="false"])',"permission"],St=ue.join(":not([hidden]),")+",[tabindex]:not([disabled]):not([hidden])";ue.push('[tabindex]:not([tabindex="-1"]):not([disabled])');var At=ue.join(':not([hidden]):not([tabindex="-1"]),');function Fe(e){return e.matches(St)&&le(e)&&!Ne(e)}function Ct(e){return e.matches(At)&&le(e)&&!Ne(e)}function Ne(e){let t=e;for(;t!=null;){if(t instanceof t.ownerDocument.defaultView.HTMLElement&&t.inert)return!0;t=t.parentElement}return!1}function Mt(e,t){if(t.has(e))throw TypeError("Cannot initialize the same private elements twice on an object")}function He(e,t,n){Mt(e,t),t.set(e,n)}function ce(e){let t=e;return t.nativeEvent=e,t.isDefaultPrevented=()=>t.defaultPrevented,t.isPropagationStopped=()=>t.cancelBubble,t.persist=()=>{},t}function Re(e,t){Object.defineProperty(e,"target",{value:t}),Object.defineProperty(e,"currentTarget",{value:t})}function Kt(e){let t=(0,d.useRef)({isFocused:!1,observer:null});return T(()=>{let n=t.current;return()=>{n.observer&&(n.observer=(n.observer.disconnect(),null))}},[]),(0,d.useCallback)(n=>{if(n.target instanceof HTMLButtonElement||n.target instanceof HTMLInputElement||n.target instanceof HTMLTextAreaElement||n.target instanceof HTMLSelectElement){t.current.isFocused=!0;let a=n.target;a.addEventListener("focusout",o=>{if(t.current.isFocused=!1,a.disabled){let l=ce(o);e==null||e(l)}t.current.observer&&(t.current.observer.disconnect(),t.current.observer=null)},{once:!0}),t.current.observer=new MutationObserver(()=>{if(t.current.isFocused&&a.disabled){var o;(o=t.current.observer)==null||o.disconnect();let l=a===document.activeElement?null:document.activeElement;a.dispatchEvent(new FocusEvent("blur",{relatedTarget:l})),a.dispatchEvent(new FocusEvent("focusout",{bubbles:!0,relatedTarget:l}))}}),t.current.observer.observe(a,{attributes:!0,attributeFilter:["disabled"]})}},[e])}var de=!1;function It(e){for(;e&&!Fe(e);)e=e.parentElement;let t=z(e),n=t.document.activeElement;if(!n||n===e)return;de=!0;let a=!1,o=y=>{(y.target===n||a)&&y.stopImmediatePropagation()},l=y=>{(y.target===n||a)&&(y.stopImmediatePropagation(),!e&&!a&&(a=!0,G(n),g()))},s=y=>{(y.target===e||a)&&y.stopImmediatePropagation()},p=y=>{(y.target===e||a)&&(y.stopImmediatePropagation(),a||(a=!0,G(n),g()))};t.addEventListener("blur",o,!0),t.addEventListener("focusout",l,!0),t.addEventListener("focusin",p,!0),t.addEventListener("focus",s,!0);let g=()=>{cancelAnimationFrame(v),t.removeEventListener("blur",o,!0),t.removeEventListener("focusout",l,!0),t.removeEventListener("focusin",p,!0),t.removeEventListener("focus",s,!0),de=!1,a=!1},v=requestAnimationFrame(g);return g}var F="default",fe="",X=new WeakMap;function Ot(e){if(Y()){if(F==="default"){let t=E(e);fe=t.documentElement.style.webkitUserSelect,t.documentElement.style.webkitUserSelect="none"}F="disabled"}else if(e instanceof HTMLElement||e instanceof SVGElement){let t="userSelect"in e.style?"userSelect":"webkitUserSelect";X.set(e,e.style[t]),e.style[t]="none"}}function De(e){if(Y()){if(F!=="disabled")return;F="restoring",setTimeout(()=>{Me(()=>{if(F==="restoring"){let t=E(e);t.documentElement.style.webkitUserSelect==="none"&&(t.documentElement.style.webkitUserSelect=fe||""),fe="",F="default"}})},300)}else if((e instanceof HTMLElement||e instanceof SVGElement)&&e&&X.has(e)){let t=X.get(e),n="userSelect"in e.style?"userSelect":"webkitUserSelect";e.style[n]==="none"&&(e.style[n]=t),e.getAttribute("style")===""&&e.removeAttribute("style"),X.delete(e)}}var pe=d.createContext({register:()=>{}});pe.displayName="PressResponderContext";function xt(e,t){return t.get?t.get.call(e):t.value}function Ue(e,t,n){if(!t.has(e))throw TypeError("attempted to "+n+" private field on non-instance");return t.get(e)}function Ft(e,t){return xt(e,Ue(e,t,"get"))}function Nt(e,t,n){if(t.set)t.set.call(e,n);else{if(!t.writable)throw TypeError("attempted to set read only private field");t.value=n}}function ze(e,t,n){return Nt(e,Ue(e,t,"set"),n),n}et();function Ht(e){let t=(0,d.useContext)(pe);if(t){let{register:n,...a}=t;e=ne(a,e),n()}return Ie(t,e.ref),e}var q=new WeakMap,$=class{continuePropagation(){ze(this,q,!1)}get shouldStopPropagation(){return Ft(this,q)}constructor(e,t,n,a){var v;He(this,q,{writable:!0,value:void 0}),ze(this,q,!0);let o=(v=(a==null?void 0:a.target)??n.currentTarget)==null?void 0:v.getBoundingClientRect(),l,s=0,p,g=null;n.clientX!=null&&n.clientY!=null&&(p=n.clientX,g=n.clientY),o&&(p!=null&&g!=null?(l=p-o.left,s=g-o.top):(l=o.width/2,s=o.height/2)),this.type=e,this.pointerType=t,this.target=n.currentTarget,this.shiftKey=n.shiftKey,this.metaKey=n.metaKey,this.ctrlKey=n.ctrlKey,this.altKey=n.altKey,this.x=l,this.y=s}},Ge=Symbol("linkClicked"),je="react-aria-pressable-style",Ve="data-react-aria-pressable";function Rt(e){let{onPress:t,onPressChange:n,onPressStart:a,onPressEnd:o,onPressUp:l,onClick:s,isDisabled:p,isPressed:g,preventFocusOnPress:v,shouldCancelOnPointerExit:y,allowTextSelectionOnPress:C,ref:J,..._e}=Ht(e),[Ye,ye]=(0,d.useState)(!1),P=(0,d.useRef)({isPressed:!1,ignoreEmulatedMouseEvents:!1,didFirePressStart:!1,isTriggeringEvent:!1,activePointerId:null,target:null,isOverTarget:!1,pointerType:null,disposables:[]}),{addGlobalListener:M,removeAllGlobalListeners:N,removeGlobalListener:H}=Ke(),R=(0,d.useCallback)((r,u)=>{let i=P.current;if(p||i.didFirePressStart)return!1;let f=!0;if(i.isTriggeringEvent=!0,a){let c=new $("pressstart",u,r);a(c),f=c.shouldStopPropagation}return n&&n(!0),i.isTriggeringEvent=!1,i.didFirePressStart=!0,ye(!0),f},[p,a,n]),L=(0,d.useCallback)((r,u,i=!0)=>{let f=P.current;if(!f.didFirePressStart)return!1;f.didFirePressStart=!1,f.isTriggeringEvent=!0;let c=!0;if(o){let m=new $("pressend",u,r);o(m),c=m.shouldStopPropagation}if(n&&n(!1),ye(!1),t&&i&&!p){let m=new $("press",u,r);t(m),c&&(c=m.shouldStopPropagation)}return f.isTriggeringEvent=!1,c},[p,o,n,t]),Xe=j(L),D=(0,d.useCallback)((r,u)=>{let i=P.current;if(p)return!1;if(l){i.isTriggeringEvent=!0;let f=new $("pressup",u,r);return l(f),i.isTriggeringEvent=!1,f.shouldStopPropagation}return!0},[p,l]),qe=j(D),K=(0,d.useCallback)(r=>{let u=P.current;if(u.isPressed&&u.target){u.didFirePressStart&&u.pointerType!=null&&L(A(u.target,r),u.pointerType,!1),u.isPressed=!1,we(null),u.isOverTarget=!1,u.activePointerId=null,u.pointerType=null,N(),C||De(u.target);for(let i of u.disposables)i();u.disposables=[]}},[C,N,L]),Q=j(K),me=(0,d.useCallback)(r=>{y&&K(r)},[y,K]),Z=(0,d.useCallback)(r=>{p||(s==null||s(r))},[p,s]),be=(0,d.useCallback)((r,u)=>{if(!p&&s){let i=new MouseEvent("click",r);Re(i,u),s(ce(i))}},[p,s]),$e=j(be),[Ee,he]=(0,d.useState)(!1);T(()=>{let r=P.current;if(Ee){let u=c=>{var Pe;if(r.isPressed&&r.target&&ve(c,r.target)){var m;Be(b(c),c.key)&&c.preventDefault();let ee=b(c),V=h(r.target,b(c));Xe(A(r.target,c),"keyboard",V),V&&$e(c,r.target),N(),c.key!=="Enter"&&ge(r.target)&&h(r.target,ee)&&!c[Ge]&&(c[Ge]=!0,S(r.target,c,!1)),r.isPressed=!1,he(!1),(m=r.metaKeyEvents)==null||m.delete(c.key)}else if(c.key==="Meta"&&((Pe=r.metaKeyEvents)!=null&&Pe.size)){var I;let ee=r.metaKeyEvents;r.metaKeyEvents=void 0;for(let V of ee.values())(I=r.target)==null||I.dispatchEvent(new KeyboardEvent("keyup",V))}},i=r.target,f=te(c=>{i&&ve(c,i)&&!c.repeat&&h(i,b(c))&&r.target&&qe(A(r.target,c),"keyboard")},u);return M(E(r.target),"keyup",f,!0),()=>{H(E(r.target),"keyup",f,!0)}}},[Ee,M,N,H]);let[Te,we]=(0,d.useState)(null);T(()=>{let r=P.current;if(Te==="pointer"){let u=f=>{if(f.pointerId===r.activePointerId&&r.isPressed&&f.button===0&&r.target){if(h(r.target,b(f))&&r.pointerType!=null){let c=!1,m=setTimeout(()=>{r.isPressed&&r.target instanceof HTMLElement&&(c?Q(f):(G(r.target),r.target.click()))},80);M(f.currentTarget,"click",()=>c=!0,!0),r.disposables.push(()=>clearTimeout(m))}else Q(f);r.isOverTarget=!1}},i=f=>{Q(f)};return M(E(r.target),"pointerup",u,!1),M(E(r.target),"pointercancel",i,!1),()=>{H(E(r.target),"pointerup",u,!1),H(E(r.target),"pointercancel",i,!1)}}},[Te,M,H]);let Je=(0,d.useMemo)(()=>{let r=P.current,u={onKeyDown(i){if(ve(i.nativeEvent,i.currentTarget)&&h(i.currentTarget,b(i.nativeEvent))){var f;Be(b(i.nativeEvent),i.key)&&i.preventDefault();let c=!0;!r.isPressed&&!i.repeat&&(r.target=i.currentTarget,r.isPressed=!0,he(!0),r.pointerType="keyboard",c=R(i,"keyboard")),c&&i.stopPropagation(),i.metaKey&&x()&&((f=r.metaKeyEvents)==null||f.set(i.key,i.nativeEvent))}else i.key==="Meta"&&(r.metaKeyEvents=new Map)},onClick(i){if(!(i&&!h(i.currentTarget,b(i.nativeEvent)))&&i&&i.button===0&&!r.isTriggeringEvent&&!S.isOpening){let f=!0;if(p&&i.preventDefault(),!r.ignoreEmulatedMouseEvents&&!r.isPressed&&(r.pointerType==="virtual"||Oe(i.nativeEvent))){let c=R(i,"virtual"),m=D(i,"virtual"),I=L(i,"virtual");Z(i),f=c&&m&&I}else if(r.isPressed&&r.pointerType!=="keyboard"){let c=r.pointerType||i.nativeEvent.pointerType||"virtual",m=D(A(i.currentTarget,i),c),I=L(A(i.currentTarget,i),c,!0);f=m&&I,r.isOverTarget=!1,Z(i),K(i)}r.ignoreEmulatedMouseEvents=!1,f&&i.stopPropagation()}}};return typeof PointerEvent<"u"&&(u.onPointerDown=i=>{if(i.button!==0||!h(i.currentTarget,b(i.nativeEvent)))return;if(xe(i.nativeEvent)){r.pointerType="virtual";return}r.pointerType=i.pointerType;let f=!0;if(!r.isPressed){r.isPressed=!0,we("pointer"),r.isOverTarget=!0,r.activePointerId=i.pointerId,r.target=i.currentTarget,C||Ot(r.target),f=R(i,r.pointerType);let c=b(i.nativeEvent);"releasePointerCapture"in c&&c.releasePointerCapture(i.pointerId)}f&&i.stopPropagation()},u.onMouseDown=i=>{if(h(i.currentTarget,b(i.nativeEvent))&&i.button===0){if(v){let f=It(i.target);f&&r.disposables.push(f)}i.stopPropagation()}},u.onPointerUp=i=>{!h(i.currentTarget,b(i.nativeEvent))||r.pointerType==="virtual"||i.button===0&&!r.isPressed&&D(i,r.pointerType||i.pointerType)},u.onPointerEnter=i=>{i.pointerId===r.activePointerId&&r.target&&!r.isOverTarget&&r.pointerType!=null&&(r.isOverTarget=!0,R(A(r.target,i),r.pointerType))},u.onPointerLeave=i=>{i.pointerId===r.activePointerId&&r.target&&r.isOverTarget&&r.pointerType!=null&&(r.isOverTarget=!1,L(A(r.target,i),r.pointerType,!1),me(i))},u.onDragStart=i=>{h(i.currentTarget,b(i.nativeEvent))&&K(i)}),u},[p,v,N,C,K,me,L,R,D,Z,be]);return(0,d.useEffect)(()=>{if(!J)return;let r=E(J.current);if(!r||!r.head||r.getElementById(je))return;let u=r.createElement("style");u.id=je,u.textContent=`
|
|
2
|
+
@layer {
|
|
3
|
+
[${Ve}] {
|
|
4
|
+
touch-action: pan-x pan-y pinch-zoom;
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
`.trim(),r.head.prepend(u)},[J]),(0,d.useEffect)(()=>{let r=P.current;return()=>{C||De(r.target??void 0);for(let u of r.disposables)u();r.disposables=[]}},[C]),{isPressed:g||Ye,pressProps:ne(_e,Je,{[Ve]:!0})}}function ge(e){return e.tagName==="A"&&e.hasAttribute("href")}function ve(e,t){let{key:n,code:a}=e,o=t,l=o.getAttribute("role");return(n==="Enter"||n===" "||n==="Spacebar"||a==="Space")&&!(o instanceof z(o).HTMLInputElement&&!We(o,n)||o instanceof z(o).HTMLTextAreaElement||o.isContentEditable)&&!((l==="link"||!l&&ge(o))&&n!=="Enter")}function A(e,t){let n=t.clientX,a=t.clientY;return{currentTarget:e,shiftKey:t.shiftKey,ctrlKey:t.ctrlKey,metaKey:t.metaKey,altKey:t.altKey,clientX:n,clientY:a}}function Dt(e){return e instanceof HTMLInputElement?!1:e instanceof HTMLButtonElement?e.type!=="submit"&&e.type!=="reset":!ge(e)}function Be(e,t){return e instanceof HTMLInputElement?!We(e,t):Dt(e)}var Ut=new Set(["checkbox","radio","range","color","file","image","button","submit","reset"]);function We(e,t){return e.type==="checkbox"||e.type==="radio"?t===" ":Ut.has(e.type)}export{h as A,ie as C,Y as D,gt as E,z as F,te as I,ot as L,b as M,B as N,G as O,E as P,ke as R,Se as S,ae as T,S as _,Re as a,Le as b,Fe as c,Oe as d,Ie as f,ht as g,Me as h,Kt as i,ct as j,ne as k,Ct as l,Ke as m,pe as n,de as o,j as p,ce as r,He as s,Rt as t,xe as u,oe as v,x as w,Ae as x,Et as y,T as z};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{d as w,n as l,p as I}from"./useEvent-DlWF5OMa.js";import{br as b,gr as k,it as y,m as p,vn as F,w as x}from"./cells-BNQUQiDS.js";import{t as D}from"./compiler-runtime-DeeZ7FnK.js";import{d as H}from"./hotkeys-uKX61F1_.js";import{o as V}from"./dist-DKNOF5xd.js";import{r as _}from"./requests-C0HaHO6a.js";var u=D();const g=I(!1);function j(){let r=(0,u.c)(2),n=d(),t;return r[0]===n?t=r[1]:(t=()=>n(b(p())),r[0]=n,r[1]=t),l(t)}function q(r){let n=(0,u.c)(3),t=d(),e;return n[0]!==r||n[1]!==t?(e=()=>{r!==void 0&&t([r])},n[0]=r,n[1]=t,n[2]=e):e=n[2],l(e)}function z(){let r=(0,u.c)(2),n=d(),t;return r[0]===n?t=r[1]:(t=()=>n(k(p())),r[0]=n,r[1]=t),l(t)}function d(){let r=(0,u.c)(4),{prepareForRun:n}=x(),{sendRun:t}=_(),e=w(g),o;return r[0]!==n||r[1]!==t||r[2]!==e?(o=async s=>{if(s.length===0)return;let c=p();return e(!0),v({cellIds:s,sendRun:t,prepareForRun:n,notebook:c})},r[0]=n,r[1]=t,r[2]=e,r[3]=o):o=r[3],l(o)}async function v({cellIds:r,sendRun:n,prepareForRun:t,notebook:e}){var m,R,h;if(r.length===0)return;let{cellHandles:o,cellData:s}=e,c=[];for(let a of r){let i=(R=(m=o[a])==null?void 0:m.current)==null?void 0:R.editorView,f;i?(F(i)!=="markdown"&&V(i),f=y(i)):f=((h=s[a])==null?void 0:h.code)||"",c.push(f),t({cellId:a})}await n({cellIds:r,codes:c}).catch(a=>{H.error(a)})}export{d as a,q as i,v as n,j as o,z as r,g as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{s as n}from"./chunk-LvLJmgfZ.js";import{n as p}from"./useEvent-DlWF5OMa.js";import{f as d,it as f,w as u}from"./cells-BNQUQiDS.js";import{t as c}from"./compiler-runtime-DeeZ7FnK.js";import{t as C}from"./jsx-runtime-DN_bIXfG.js";import{t as h}from"./use-toast-Bzf3rpev.js";import{r as v}from"./useDeleteCell-DHF_xvAh.js";var x=c(),b=n(C(),1);function j(){let t=(0,x.c)(3),{splitCell:o,undoSplitCell:r}=u(),i;return t[0]!==o||t[1]!==r?(i=s=>{let l=d(s.cellId);if(!l)return;let a=f(l);o(s);let{dismiss:e}=h({title:"Cell split",action:(0,b.jsx)(v,{"data-testid":"undo-split-button",size:"sm",variant:"outline",onClick:()=>{r({...s,snapshot:a}),m()},children:"Undo"})}),m=e},t[0]=o,t[1]=r,t[2]=i):i=t[2],p(i)}export{j as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as o,p as d,u as h}from"./useEvent-DlWF5OMa.js";import{t as f}from"./compiler-runtime-DeeZ7FnK.js";import{g as k,t as g}from"./utils-
|
|
1
|
+
import{i as o,p as d,u as h}from"./useEvent-DlWF5OMa.js";import{t as f}from"./compiler-runtime-DeeZ7FnK.js";import{g as k,t as g}from"./utils-pfqq9IdB.js";var y=f();const b=["light","dark","system"];var p=d(t=>{if(g()){if(document.body.classList.contains("dark-mode")||document.body.classList.contains("dark")||document.body.dataset.theme==="dark"||document.body.dataset.mode==="dark"||s()==="dark")return"dark";let e=window.getComputedStyle(document.body),r=e.getPropertyValue("color-scheme").trim();if(r)return r.includes("dark")?"dark":"light";let a=e.getPropertyValue("background-color").match(/\d+/g);if(a){let[m,u,l]=a.map(Number);return(m*299+u*587+l*114)/1e3<128?"dark":"light"}return"light"}return t(k).display.theme}),n=d(!1);function v(){if(typeof window>"u"||!window.matchMedia)return;let t=window.matchMedia("(prefers-color-scheme: dark)");o.set(n,t.matches),t.addEventListener("change",e=>{o.set(n,e.matches)})}v();function s(){switch(document.body.dataset.vscodeThemeKind){case"vscode-dark":return"dark";case"vscode-high-contrast":return"dark";case"vscode-light":return"light"}}var i=d(s());function w(){let t=new MutationObserver(()=>{let e=s();o.set(i,e)});return t.observe(document.body,{attributes:!0,attributeFilter:["data-vscode-theme-kind"]}),()=>t.disconnect()}w();const c=d(t=>{let e=t(p),r=t(i);if(r!==void 0)return r;let a=t(n);return e==="system"?a?"dark":"light":e});function L(){let t=(0,y.c)(3),e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e={store:o},t[0]=e):e=t[0];let r=h(c,e),a;return t[1]===r?a=t[2]:(a={theme:r},t[1]=r,t[2]=a),a}export{c as n,L as r,b as t};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var it=Object.defineProperty;var ot=(t,e,n)=>e in t?it(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var a=(t,e,n)=>ot(t,typeof e!="symbol"?e+"":e,n);var M;import{s as ce}from"./chunk-LvLJmgfZ.js";import{i as G,l as D,o as lt,p as q,u as ut}from"./useEvent-DlWF5OMa.js";import{t as ct}from"./react-BGmjiNul.js";import{Br as dt,Kr as ft,Qr as z,Zr as mt,b as pt,y as ht}from"./cells-BNQUQiDS.js";import{B as gt,C as de,D as yt,I as bt,N as wt,P as O,R as fe,k as W,w as me}from"./zod-Cg4WLWh2.js";import{t as pe}from"./compiler-runtime-DeeZ7FnK.js";import{t as vt}from"./get-CyLJYAfP.js";import{r as xt}from"./useLifecycle-CmDXEyIC.js";import{t as Et}from"./debounce-BbFlGgjv.js";import{t as _t}from"./_baseSet-6FYvpjrm.js";import{d as E,p as y}from"./hotkeys-uKX61F1_.js";import{t as Ct}from"./invariant-C6yE60hi.js";import{x as kt}from"./utils-pfqq9IdB.js";import{j as Rt}from"./config-D6nhy4FA.js";import{a as Ft}from"./switch-RowEjq0T.js";import{n as he}from"./globals-Bf30kOQF.js";import{t as ge}from"./ErrorBoundary-C7JBxSzd.js";import{t as Nt}from"./jsx-runtime-DN_bIXfG.js";import{t as St}from"./button-B8cGZzP5.js";import{t as qt}from"./cn-C1rgT0yh.js";import{Z as Pt}from"./JsonOutput-BSGE-MRo.js";import{t as jt}from"./createReducer-DDa-hVe3.js";import{t as ye}from"./requests-C0HaHO6a.js";import{t as be}from"./createLucideIcon-CW2xpJ57.js";import{h as Mt}from"./select-D9lTzMzP.js";import{c as At,i as Tt,l as It,r as Lt,u as Ut}from"./markdown-renderer-BPnVa0ym.js";import{t as zt}from"./DeferredRequestRegistry-B3BENoUa.js";import{t as K}from"./Deferred-DzyBMRsy.js";import{t as we}from"./uuid-ClFZlR7U.js";import{t as Ot}from"./use-toast-Bzf3rpev.js";import{t as ve}from"./tooltip-CvjcEpZC.js";import{t as xe}from"./mode-Dq8MKjNR.js";import{n as Wt,r as Dt,t as Ht}from"./share-CXQVxivL.js";import{r as Bt,t as Vt}from"./react-resizable-panels.browser.esm-BqxQegSf.js";import{t as Ee}from"./toggle-G1t0cQyf.js";function $t(t,e,n){return t==null?t:_t(t,e,n)}var H=$t,Xt=be("crosshair",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"22",x2:"18",y1:"12",y2:"12",key:"l9bcsi"}],["line",{x1:"6",x2:"2",y1:"12",y2:"12",key:"13hhkx"}],["line",{x1:"12",x2:"12",y1:"6",y2:"2",key:"10w3f3"}],["line",{x1:"12",x2:"12",y1:"22",y2:"18",key:"15g9kq"}]]),Yt=be("pin",[["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z",key:"1nkz8b"}]]);function Qt(t){return{all:t||(t=new Map),on:function(e,n){var r=t.get(e);r?r.push(n):t.set(e,[n])},off:function(e,n){var r=t.get(e);r&&(n?r.splice(r.indexOf(n)>>>0,1):t.set(e,[]))},emit:function(e,n){var r=t.get(e);r&&r.slice().map(function(s){s(n)}),(r=t.get("*"))&&r.slice().map(function(s){s(e,n)})}}}var u=ce(ct(),1),Z=(0,u.createContext)(null),Gt=t=>{let{controller:e}=(0,u.useContext)(Z),n=u.useRef(Symbol("fill"));return(0,u.useEffect)(()=>(e.mount({name:t.name,ref:n.current,children:t.children}),()=>{e.unmount({name:t.name,ref:n.current})}),[]),(0,u.useEffect)(()=>{e.update({name:t.name,ref:n.current,children:t.children})}),null},Kt=Object.defineProperty,Zt=(t,e,n)=>e in t?Kt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,_e=(t,e,n)=>(Zt(t,typeof e=="symbol"?e:e+"",n),n),Ce=console,Jt=class{constructor(t){_e(this,"_bus"),_e(this,"_db"),this._bus=t,this.handleFillMount=this.handleFillMount.bind(this),this.handleFillUpdated=this.handleFillUpdated.bind(this),this.handleFillUnmount=this.handleFillUnmount.bind(this),this._db={byName:new Map,byFill:new Map}}mount(){this._bus.on("fill-mount",this.handleFillMount),this._bus.on("fill-updated",this.handleFillUpdated),this._bus.on("fill-unmount",this.handleFillUnmount)}unmount(){this._bus.off("fill-mount",this.handleFillMount),this._bus.off("fill-updated",this.handleFillUpdated),this._bus.off("fill-unmount",this.handleFillUnmount)}handleFillMount({fill:t}){let e=u.Children.toArray(t.children),n=t.name,r={fill:t,children:e,name:n},s=this._db.byName.get(n);s?(s.components.push(r),s.listeners.forEach(i=>i([...s.components]))):this._db.byName.set(n,{listeners:[],components:[r]}),this._db.byFill.set(t.ref,r)}handleFillUpdated({fill:t}){let e=this._db.byFill.get(t.ref),n=u.Children.toArray(t.children);if(e){e.children=n;let r=this._db.byName.get(e.name);if(r)r.listeners.forEach(s=>s([...r.components]));else throw Error("registration was expected to be defined")}else{Ce.error("[handleFillUpdated] component was expected to be defined");return}}handleFillUnmount({fill:t}){let e=this._db.byFill.get(t.ref);if(!e){Ce.error("[handleFillUnmount] component was expected to be defined");return}let n=e.name,r=this._db.byName.get(n);if(!r)throw Error("registration was expected to be defined");r.components=r.components.filter(s=>s!==e),this._db.byFill.delete(t.ref),r.listeners.length===0&&r.components.length===0?this._db.byName.delete(n):r.listeners.forEach(s=>s([...r.components]))}onComponentsChange(t,e){let n=this._db.byName.get(t);n?(n.listeners.push(e),e(n.components)):(this._db.byName.set(t,{listeners:[e],components:[]}),e([]))}getFillsByName(t){let e=this._db.byName.get(t);return e?e.components.map(n=>n.fill):[]}getChildrenByName(t){let e=this._db.byName.get(t);return e?e.components.map(n=>n.children).reduce((n,r)=>n.concat(r),[]):[]}removeOnComponentsChange(t,e){let n=this._db.byName.get(t);if(!n)throw Error("expected registration to be defined");let r=n.listeners;r.splice(r.indexOf(e),1)}},en=Object.defineProperty,tn=(t,e,n)=>e in t?en(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,nn=(t,e,n)=>(tn(t,typeof e=="symbol"?e:e+"",n),n),ke=class{constructor(){nn(this,"bus",Qt())}mount(t){this.bus.emit("fill-mount",{fill:t})}unmount(t){this.bus.emit("fill-unmount",{fill:t})}update(t){this.bus.emit("fill-updated",{fill:t})}};function rn(t){let e=t||new ke;return{controller:e,manager:new Jt(e.bus)}}var sn=({controller:t,children:e})=>{let[n]=u.useState(()=>{let r=rn(t);return r.manager.mount(),r});return u.useEffect(()=>()=>{n.manager.unmount()},[]),u.createElement(Z.Provider,{value:n},e)};function J(t,e){let[n,r]=(0,u.useState)([]),{manager:s}=(0,u.useContext)(Z);return(0,u.useEffect)(()=>(s.onComponentsChange(t,r),()=>{s.removeOnComponentsChange(t,r)}),[t]),n.flatMap((i,d)=>{let{children:l}=i;return l.map((p,b)=>{if(typeof p=="number"||typeof p=="string")throw Error("Only element children will work here");return u.cloneElement(p,{key:d.toString()+b.toString(),...e})})})}var Re=t=>{let e=J(t.name,t.childProps);if(typeof t.children=="function"){let n=t.children(e);if(u.isValidElement(n)||n===null)return n;throw Error("Slot rendered with function must return a valid React Element.")}return e};const an=q(null);var{valueAtom:on,useActions:ln}=jt(()=>({banners:[]}),{addBanner:(t,e)=>({...t,banners:[...t.banners,{...e,id:we()}]}),removeBanner:(t,e)=>({...t,banners:t.banners.filter(n=>n.id!==e)}),clearBanners:t=>({...t,banners:[]})});const un=()=>ut(on);function cn(){return ln()}const dn=new ke,B={SIDEBAR:"sidebar",CONTEXT_AWARE_PANEL:"context-aware-panel"};var fn=class{constructor(){a(this,"subscriptions",new Map)}addSubscription(t,e){var n;this.subscriptions.has(t)||this.subscriptions.set(t,new Set),(n=this.subscriptions.get(t))==null||n.add(e)}removeSubscription(t,e){var n;(n=this.subscriptions.get(t))==null||n.delete(e)}notify(t,e){for(let n of this.subscriptions.get(t)??[])n(e)}},Fe=class ue{constructor(e){a(this,"subscriptions",new fn);this.producer=e}static withProducerCallback(e){return new ue(e)}static empty(){return new ue}startProducer(){this.producer&&this.producer(e=>{this.subscriptions.notify("message",e)})}connect(){return new Promise(e=>setTimeout(e,0)).then(()=>{this.subscriptions.notify("open",new Event("open"))})}get readyState(){return WebSocket.OPEN}reconnect(e,n){this.close(),this.connect()}close(){this.subscriptions.notify("close",new Event("close"))}send(e){return this.subscriptions.notify("message",new MessageEvent("message",{data:e})),Promise.resolve()}addEventListener(e,n){this.subscriptions.addSubscription(e,n),e==="open"&&n(new Event("open")),e==="message"&&this.startProducer()}removeEventListener(e,n){this.subscriptions.removeSubscription(e,n)}},mn=1e10,pn=1e3;function V(t,e){let n=t.map(r=>`"${r}"`).join(", ");return Error(`This RPC instance cannot ${e} because the transport did not provide one or more of these methods: ${n}`)}function hn(t={}){let e={};function n(o){e=o}let r={};function s(o){var f;r.unregisterHandler&&r.unregisterHandler(),r=o,(f=r.registerHandler)==null||f.call(r,U)}let i;function d(o){if(typeof o=="function"){i=o;return}i=(f,g)=>{let c=o[f];if(c)return c(g);let h=o._;if(!h)throw Error(`The requested method has no handler: ${f}`);return h(f,g)}}let{maxRequestTime:l=pn}=t;t.transport&&s(t.transport),t.requestHandler&&d(t.requestHandler),t._debugHooks&&n(t._debugHooks);let p=0;function b(){return p<=mn?++p:p=0}let x=new Map,w=new Map;function _(o,...f){let g=f[0];return new Promise((c,h)=>{var T;if(!r.send)throw V(["send"],"make requests");let S=b(),j={type:"request",id:S,method:o,params:g};x.set(S,{resolve:c,reject:h}),l!==1/0&&w.set(S,setTimeout(()=>{w.delete(S),h(Error("RPC request timed out."))},l)),(T=e.onSend)==null||T.call(e,j),r.send(j)})}let F=new Proxy(_,{get:(o,f,g)=>f in o?Reflect.get(o,f,g):c=>_(f,c)}),C=F;function k(o,...f){var h;let g=f[0];if(!r.send)throw V(["send"],"send messages");let c={type:"message",id:o,payload:g};(h=e.onSend)==null||h.call(e,c),r.send(c)}let R=new Proxy(k,{get:(o,f,g)=>f in o?Reflect.get(o,f,g):c=>k(f,c)}),v=R,N=new Map,P=new Set;function A(o,f){var g;if(!r.registerHandler)throw V(["registerHandler"],"register message listeners");if(o==="*"){P.add(f);return}N.has(o)||N.set(o,new Set),(g=N.get(o))==null||g.add(f)}function L(o,f){var g,c;if(o==="*"){P.delete(f);return}(g=N.get(o))==null||g.delete(f),((c=N.get(o))==null?void 0:c.size)===0&&N.delete(o)}async function U(o){var f,g;if((f=e.onReceive)==null||f.call(e,o),!("type"in o))throw Error("Message does not contain a type.");if(o.type==="request"){if(!r.send||!i)throw V(["send","requestHandler"],"handle requests");let{id:c,method:h,params:S}=o,j;try{j={type:"response",id:c,success:!0,payload:await i(h,S)}}catch(T){if(!(T instanceof Error))throw T;j={type:"response",id:c,success:!1,error:T.message}}(g=e.onSend)==null||g.call(e,j),r.send(j);return}if(o.type==="response"){let c=w.get(o.id);c!=null&&clearTimeout(c);let{resolve:h,reject:S}=x.get(o.id)??{};o.success?h==null||h(o.payload):S==null||S(Error(o.error));return}if(o.type==="message"){for(let h of P)h(o.id,o.payload);let c=N.get(o.id);if(!c)return;for(let h of c)h(o.payload);return}throw Error(`Unexpected RPC message type: ${o.type}`)}return{setTransport:s,setRequestHandler:d,request:F,requestProxy:C,send:R,sendProxy:v,addMessageListener:A,removeMessageListener:L,proxy:{send:v,request:C},_setDebugHooks:n}}function gn(t){return hn(t)}var Ne="[transport-id]";function yn(t,e){let{transportId:n}=e;return n==null?t:{[Ne]:n,data:t}}function bn(t,e){let{transportId:n,filter:r}=e,s=r==null?void 0:r();if(n!=null&&s!=null)throw Error("Cannot use both `transportId` and `filter` at the same time");let i=t;if(n){if(t[Ne]!==n)return[!0];i=t.data}return s===!1?[!0]:[!1,i]}function wn(t,e={}){let{transportId:n,filter:r,remotePort:s}=e,i=t,d=s??t,l;return{send(p){d.postMessage(yn(p,{transportId:n}))},registerHandler(p){l=b=>{let x=b.data,[w,_]=bn(x,{transportId:n,filter:()=>r==null?void 0:r(b)});w||p(_)},i.addEventListener("message",l)},unregisterHandler(){l&&i.removeEventListener("message",l)}}}function vn(t,e){return wn(t,e)}function Se(t){return gn({transport:vn(t,{transportId:"marimo-transport"}),maxRequestTime:2e4,_debugHooks:{onSend:e=>{E.debug("[rpc] Parent -> Worker",e)},onReceive:e=>{E.debug("[rpc] Worker -> Parent",e)}}})}const qe=q("Initializing..."),xn=q(t=>{let e=t(ht),n=Object.values(e.cellRuntime);return n.some(r=>!Ut(r.output))?!0:n.every(r=>r.status==="idle")});var Pe=Wt(),je="marimo:file",Me=new dt(null);const En={saveFile(t){Me.set(je,t)},readFile(){return Me.get(je)}};var _n={saveFile(t){z.setCodeForHash((0,Pe.compressToEncodedURIComponent)(t))},readFile(){let t=z.getCodeFromHash()||z.getCodeFromSearchParam();return t?(0,Pe.decompressFromEncodedURIComponent)(t):null}};const Cn={saveFile(t){},readFile(){let t=document.querySelector("marimo-code");return t?decodeURIComponent(t.textContent||"").trim():null}};var kn={saveFile(t){},readFile(){if(window.location.hostname!=="marimo.app")return null;let t=new URL("files/wasm-intro.py",document.baseURI);return fetch(t.toString()).then(e=>e.ok?e.text():null).catch(()=>null)}},Rn={saveFile(t){},readFile(){return["import marimo","app = marimo.App()","","@app.cell","def __():"," return","",'if __name__ == "__main__":'," app.run()"].join(`
|
|
2
|
+
`)}},Ae=class{constructor(t){this.stores=t}insert(t,e){this.stores.splice(t,0,e)}saveFile(t){this.stores.forEach(e=>e.saveFile(t))}readFile(){for(let t of this.stores){let e=t.readFile();if(e)return e}return null}};const $=new Ae([Cn,_n]),ee=new Ae([En,kn,Rn]);var Te=class st{constructor(){a(this,"initialized",new K);a(this,"sendRename",async({filename:e})=>(e===null||(z.setFilename(e),await this.rpc.proxy.request.bridge({functionName:"rename_file",payload:e})),null));a(this,"sendSave",async e=>{if(!this.saveRpc)return E.warn("Save RPC not initialized"),null;await this.saveRpc.saveNotebook(e);let n=await this.readCode();return n.contents&&($.saveFile(n.contents),ee.saveFile(n.contents)),this.rpc.proxy.request.saveNotebook(e).catch(r=>{E.error(r)}),null});a(this,"sendCopy",async()=>{y()});a(this,"sendStdin",async e=>(await this.rpc.proxy.request.bridge({functionName:"put_input",payload:e.text}),null));a(this,"sendPdb",async()=>{y()});a(this,"sendRun",async e=>(await this.rpc.proxy.request.loadPackages(e.codes.join(`
|
|
3
|
+
`)),await this.putControlRequest({type:"execute-cells",...e}),null));a(this,"sendRunScratchpad",async e=>(await this.rpc.proxy.request.loadPackages(e.code),await this.putControlRequest({type:"execute-scratchpad",...e}),null));a(this,"sendInterrupt",async()=>(this.interruptBuffer!==void 0&&(this.interruptBuffer[0]=2),null));a(this,"sendShutdown",async()=>(window.close(),null));a(this,"sendFormat",async e=>await this.rpc.proxy.request.bridge({functionName:"format",payload:e}));a(this,"sendDeleteCell",async e=>(await this.putControlRequest({type:"delete-cell",...e}),null));a(this,"sendInstallMissingPackages",async e=>(this.putControlRequest({type:"install-packages",...e}),null));a(this,"sendCodeCompletionRequest",async e=>(G.get(pt)||await this.rpc.proxy.request.bridge({functionName:"code_complete",payload:e}),null));a(this,"saveUserConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_user_config",payload:e}),Ft.post("/kernel/save_user_config",e,{baseUrl:"/"}).catch(n=>(E.error(n),null))));a(this,"saveAppConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_app_config",payload:e}),null));a(this,"saveCellConfig",async e=>(await this.putControlRequest({type:"update-cell-config",...e}),null));a(this,"sendRestart",async()=>{let e=await this.readCode();return e.contents&&($.saveFile(e.contents),ee.saveFile(e.contents)),Dt(),null});a(this,"readCode",async()=>this.saveRpc?{contents:await this.saveRpc.readNotebook()}:(E.warn("Save RPC not initialized"),{contents:""}));a(this,"readSnippets",async()=>await this.rpc.proxy.request.bridge({functionName:"read_snippets",payload:void 0}));a(this,"openFile",async({path:e})=>{let n=Ht({code:null,baseUrl:window.location.origin});return window.open(n,"_blank"),null});a(this,"sendListFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"list_files",payload:e}));a(this,"sendSearchFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"search_files",payload:e}));a(this,"sendComponentValues",async e=>(await this.putControlRequest({type:"update-ui-element",...e,token:we()}),null));a(this,"sendInstantiate",async e=>null);a(this,"sendFunctionRequest",async e=>(await this.putControlRequest({type:"invoke-function",...e}),null));a(this,"sendCreateFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"create_file_or_directory",payload:e}));a(this,"sendDeleteFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"delete_file_or_directory",payload:e}));a(this,"sendRenameFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"move_file_or_directory",payload:e}));a(this,"sendUpdateFile",async e=>await this.rpc.proxy.request.bridge({functionName:"update_file",payload:e}));a(this,"sendFileDetails",async e=>await this.rpc.proxy.request.bridge({functionName:"file_details",payload:e}));a(this,"exportAsHTML",async e=>await this.rpc.proxy.request.bridge({functionName:"export_html",payload:e}));a(this,"exportAsMarkdown",async e=>await this.rpc.proxy.request.bridge({functionName:"export_markdown",payload:e}));a(this,"previewDatasetColumn",async e=>(await this.putControlRequest({type:"preview-dataset-column",...e}),null));a(this,"previewSQLTable",async e=>(await this.putControlRequest({type:"preview-sql-table",...e}),null));a(this,"previewSQLTableList",async e=>(await this.putControlRequest({type:"list-sql-tables",...e}),null));a(this,"previewDataSourceConnection",async e=>(await this.putControlRequest({type:"list-data-source-connection",...e}),null));a(this,"validateSQL",async e=>(await this.putControlRequest({type:"validate-sql",...e}),null));a(this,"sendModelValue",async e=>(await this.putControlRequest({type:"update-widget-model",...e}),null));a(this,"syncCellIds",()=>Promise.resolve(null));a(this,"addPackage",async e=>this.rpc.proxy.request.addPackage(e));a(this,"removePackage",async e=>this.rpc.proxy.request.removePackage(e));a(this,"getPackageList",async()=>await this.rpc.proxy.request.listPackages());a(this,"getDependencyTree",async()=>({tree:{dependencies:[],name:"",tags:[],version:null}}));a(this,"listSecretKeys",async e=>(await this.putControlRequest({type:"list-secret-keys",...e}),null));a(this,"getUsageStats",y);a(this,"openTutorial",y);a(this,"getRecentFiles",y);a(this,"getWorkspaceFiles",y);a(this,"getRunningNotebooks",y);a(this,"shutdownSession",y);a(this,"autoExportAsHTML",y);a(this,"autoExportAsMarkdown",y);a(this,"autoExportAsIPYNB",y);a(this,"updateCellOutputs",y);a(this,"writeSecret",y);a(this,"invokeAiTool",y);a(this,"clearCache",y);a(this,"getCacheInfo",y);Rt()&&(this.rpc=Se(new Worker(new URL(""+new URL("worker-CUL1lW-N.js",import.meta.url).href,""+import.meta.url),{type:"module",name:he()})),this.rpc.addMessageListener("ready",()=>{this.startSession()}),this.rpc.addMessageListener("initialized",()=>{this.saveRpc=this.getSaveWorker(),this.setInterruptBuffer(),this.initialized.resolve()}),this.rpc.addMessageListener("initializingMessage",({message:e})=>{G.set(qe,e)}),this.rpc.addMessageListener("initializedError",({error:e})=>{this.initialized.status==="resolved"&&(E.error(e),Ot({title:"Error initializing",description:e,variant:"danger"})),this.initialized.reject(Error(e))}),this.rpc.addMessageListener("kernelMessage",({message:e})=>{var n;(n=this.messageConsumer)==null||n.call(this,new MessageEvent("message",{data:e}))}))}static get INSTANCE(){let e="_marimo_private_PyodideBridge";return window[e]||(window[e]=new st),window[e]}getSaveWorker(){return xe()==="read"?(E.debug("Skipping SaveWorker in read-mode"),{readFile:y,readNotebook:y,saveNotebook:y}):Se(new Worker(new URL(""+new URL("save-worker-DtF6B3PS.js",import.meta.url).href,""+import.meta.url),{type:"module",name:he()})).proxy.request}async startSession(){let e=await $.readFile(),n=await ee.readFile(),r=z.getFilename(),s=G.get(kt),i={},d=new URLSearchParams(window.location.search);for(let l of d.keys()){let p=d.getAll(l);i[l]=p.length===1?p[0]:p}await this.rpc.proxy.request.startSession({queryParameters:i,code:e||n||"",filename:r,userConfig:{...s,runtime:{...s.runtime,auto_instantiate:xe()==="read"?!0:s.runtime.auto_instantiate}}})}setInterruptBuffer(){crossOriginIsolated?(this.interruptBuffer=new Uint8Array(new SharedArrayBuffer(1)),this.rpc.proxy.request.setInterruptBuffer(this.interruptBuffer)):E.warn("Not running in a secure context; interrupts are not available.")}attachMessageConsumer(e){this.messageConsumer=e,this.rpc.proxy.send.consumerReady({})}async putControlRequest(e){await this.rpc.proxy.request.bridge({functionName:"put_control_request",payload:e})}};function Fn(){return Fe.withProducerCallback(t=>{Te.INSTANCE.attachMessageConsumer(t)})}const Ie=q({isInstantiated:!1,error:null});function Nn(){return lt(Ie,t=>t.isInstantiated)}function X(t){return()=>({TYPE:t,is(e){return e.type===t},create(e){return new CustomEvent(t,e)}})}const Le=X("marimo-value-input")(),Ue=X("marimo-value-update")(),ze=X("marimo-value-ready")(),Oe=X("marimo-incoming-message")();function Sn(t,e){return Le.create({bubbles:!0,composed:!0,detail:{value:t,element:e}})}var We=class at{static get INSTANCE(){let e="_marimo_private_UIElementRegistry";return window[e]||(window[e]=new at),window[e]}constructor(){this.entries=new Map}has(e){return this.entries.has(e)}set(e,n){if(this.entries.has(e))throw Error(`UIElement ${e} already registered`);this.entries.set(e,{objectId:e,value:n,elements:new Set})}registerInstance(e,n){let r=this.entries.get(e);r===void 0?this.entries.set(e,{objectId:e,value:mt(n,this),elements:new Set([n])}):r.elements.add(n)}removeInstance(e,n){let r=this.entries.get(e);r!=null&&r.elements.has(n)&&r.elements.delete(n)}removeElementsByCell(e){[...this.entries.keys()].filter(n=>n.startsWith(`${e}-`)).forEach(n=>{this.entries.delete(n)})}lookupValue(e){let n=this.entries.get(e);return n===void 0?void 0:n.value}broadcastMessage(e,n,r){let s=this.entries.get(e);s===void 0?E.warn("UIElementRegistry missing entry",e):s.elements.forEach(i=>{i.dispatchEvent(Oe.create({bubbles:!1,composed:!0,detail:{objectId:e,message:n,buffers:r}}))})}broadcastValueUpdate(e,n,r){let s=this.entries.get(n);s===void 0?E.warn("UIElementRegistry missing entry",n):(s.value=r,s.elements.forEach(i=>{i!==e&&i.dispatchEvent(Ue.create({bubbles:!1,composed:!0,detail:{value:r,element:i}}))}),document.dispatchEvent(ze.create({bubbles:!0,composed:!0,detail:{objectId:n}})))}};const qn=We.INSTANCE,Pn=new zt("function-call-result",async(t,e)=>{await ye().sendFunctionRequest({functionCallId:t,...e})}),jn="68px";var Mn="288px";const An=t=>t?/^\d+$/.test(t)?`${t}px`:t:Mn,Tn=ft({isOpen:!0},(t,e)=>{if(!e)return t;switch(e.type){case"toggle":return{...t,isOpen:e.isOpen??t.isOpen};case"setWidth":return{...t,width:e.width};default:return t}});function In(t){return It(Lt(new Uint8Array(t.buffer,t.byteOffset,t.byteLength)))}function te(t,e=[]){let n=[];if(t instanceof DataView)n.push(e);else if(Array.isArray(t))for(let[r,s]of t.entries())n.push(...te(s,[...e,r]));else if(typeof t=="object"&&t)for(let[r,s]of Object.entries(t))n.push(...te(s,[...e,r]));return n}function ne(t){let e=te(t);if(e.length===0)return{state:t,buffers:[],bufferPaths:[]};let n=structuredClone(t),r=[],s=[];for(let i of e){let d=vt(t,i);if(d instanceof DataView){let l=In(d);r.push(l),s.push(i),H(n,i,l)}}return{state:n,buffers:r,bufferPaths:s}}function Ln(t){return typeof t=="object"&&!!t&&"state"in t&&"bufferPaths"in t&&"buffers"in t}function Y(t){let{state:e,bufferPaths:n,buffers:r}=t;if(!n||n.length===0)return e;r&&Ct(r.length===n.length,"Buffers and buffer paths not the same length");let s=structuredClone(e);for(let[i,d]of n.entries()){let l=r==null?void 0:r[i];if(l==null){E.warn("[anywidget] Could not find buffer at path",d);continue}if(typeof l=="string"){let p=Tt(At(l));H(s,d,new DataView(p.buffer))}else H(s,d,l)}return s}const De=new class{constructor(t=1e4){a(this,"models",new Map);this.timeout=t}get(t){let e=this.models.get(t);return e||(e=new K,this.models.set(t,e),setTimeout(()=>{e.status==="pending"&&(e.reject(Error(`Model not found for key: ${t}`)),this.models.delete(t))},this.timeout)),e.promise}set(t,e){let n=this.models.get(t);n||(n=new K,this.models.set(t,n)),n.resolve(e)}delete(t){this.models.delete(t)}};var He=(M=class{constructor(e,n,r,s){a(this,"ANY_CHANGE_EVENT","change");a(this,"listeners",{});a(this,"widget_manager",{async get_model(e){let n=await M._modelManager.get(e);if(!n)throw Error(`Model not found with id: ${e}. This is likely because the model was not registered.`);return n}});a(this,"emitAnyChange",Et(()=>{var e;(e=this.listeners[this.ANY_CHANGE_EVENT])==null||e.forEach(n=>n())},0));this.data=e,this.onChange=n,this.sendToWidget=r,this.dirtyFields=new Map([...s].map(i=>[i,this.data[i]]))}off(e,n){var r;if(!e){this.listeners={};return}if(!n){this.listeners[e]=new Set;return}(r=this.listeners[e])==null||r.delete(n)}send(e,n,r){let{state:s,bufferPaths:i,buffers:d}=ne(e);this.sendToWidget({content:{state:s,bufferPaths:i},buffers:d}).then(n)}get(e){return this.data[e]}set(e,n){this.data={...this.data,[e]:n},this.dirtyFields.set(e,n),this.emit(`change:${e}`,n),this.emitAnyChange()}save_changes(){if(this.dirtyFields.size===0)return;let e=Object.fromEntries(this.dirtyFields.entries());this.dirtyFields.clear(),this.onChange(e)}updateAndEmitDiffs(e){e!=null&&Object.keys(e).forEach(n=>{let r=n;this.data[r]!==e[r]&&this.set(r,e[r])})}receiveCustomMessage(e,n=[]){var s;let r=Be.safeParse(e);if(r.success){let i=r.data;switch(i.method){case"update":this.updateAndEmitDiffs(Y({state:i.state,bufferPaths:i.buffer_paths??[],buffers:n}));break;case"custom":(s=this.listeners["msg:custom"])==null||s.forEach(d=>d(i.content,n));break;case"open":this.updateAndEmitDiffs(Y({state:i.state,bufferPaths:i.buffer_paths??[],buffers:n}));break;case"echo_update":break;default:E.error("[anywidget] Unknown message method",i.method);break}}else E.error("Failed to parse message",r.error),E.error("Message",e)}on(e,n){this.listeners[e]||(this.listeners[e]=new Set),this.listeners[e].add(n)}emit(e,n){this.listeners[e]&&this.listeners[e].forEach(r=>r(n))}},a(M,"_modelManager",De),M),re=me(me(gt([fe(),wt()]))),se=bt(fe(),de()),Be=yt("method",[O({method:W("open"),state:se,buffer_paths:re.optional()}),O({method:W("update"),state:se,buffer_paths:re.optional()}),O({method:W("custom"),content:de()}),O({method:W("echo_update"),buffer_paths:re,state:se}),O({method:W("close")})]);function Un(t){return t==null?!1:Be.safeParse(t).success}async function zn({modelId:t,msg:e,buffers:n,modelManager:r}){if(e.method==="echo_update")return;if(e.method==="custom"){(await r.get(t)).receiveCustomMessage(e,n);return}if(e.method==="close"){r.delete(t);return}let{method:s,state:i,buffer_paths:d=[]}=e,l=Y({state:i,bufferPaths:d,buffers:n});if(s==="open"){let p=new He(l,b=>{let{state:x,buffers:w,bufferPaths:_}=ne(b);ye().sendModelValue({modelId:t,message:{state:x,bufferPaths:_},buffers:w})},y,new Set);r.set(t,p);return}if(s==="update"){(await r.get(t)).updateAndEmitDiffs(l);return}xt(s)}const Ve=q(null),On=q(null),$e=q(!1),Wn=q(!1),Xe=q(!1);var Dn=pe();const Ye=t=>{let e=(0,Dn.c)(8),{onResize:n,startingWidth:r,minWidth:s,maxWidth:i}=t,d=(0,u.useRef)(null),l=(0,u.useRef)(null),p=(0,u.useRef)(null),b,x;e[0]!==i||e[1]!==s||e[2]!==n?(b=()=>{let C=d.current,k=l.current,R=p.current;if(!C||!k&&!R)return;let v=Number.parseInt(window.getComputedStyle(C).width,10),N=0,P=!1,A=null,L=c=>{if(!C||!P||!A)return;let h=c.clientX-N;N=c.clientX,v=A==="left"?v-h:v+h,s&&(v=Math.max(s,v)),i&&(v=Math.min(i,v)),C.style.width=`${v}px`},U=()=>{P&&(n==null||n(v),P=!1,A=null),document.removeEventListener("mousemove",L),document.removeEventListener("mouseup",U)},o=(c,h)=>{c.preventDefault(),P=!0,A=h,N=c.clientX,document.addEventListener("mousemove",L),document.addEventListener("mouseup",U)},f=c=>o(c,"left"),g=c=>o(c,"right");return k&&k.addEventListener("mousedown",f),R&&R.addEventListener("mousedown",g),()=>{k&&k.removeEventListener("mousedown",f),R&&R.removeEventListener("mousedown",g),document.removeEventListener("mousemove",L),document.removeEventListener("mouseup",U)}},x=[s,i,n],e[0]=i,e[1]=s,e[2]=n,e[3]=b,e[4]=x):(b=e[3],x=e[4]),(0,u.useEffect)(b,x);let w;e[5]===Symbol.for("react.memo_cache_sentinel")?(w={left:l,right:p},e[5]=w):w=e[5];let _=r==="contentWidth"?"var(--content-width-medium)":`${r}px`,F;return e[6]===_?F=e[7]:(F={resizableDivRef:d,handleRefs:w,style:{width:_}},e[6]=_,e[7]=F),F};function Qe(t){t||window.dispatchEvent(new Event("resize"))}var Ge=pe(),m=ce(Nt(),1);const Hn=()=>{let t=(0,Ge.c)(16),[e,n]=D(Ve),[r,s]=D($e),[i,d]=D(Wn),[l,p]=D(Xe),b;t[0]!==s||t[1]!==n?(b=()=>{n(null),s(!1)},t[0]=s,t[1]=n,t[2]=b):b=t[2];let x=b;if(J(B.CONTEXT_AWARE_PANEL).length===0||!e||!r)return null;let w;t[3]!==l||t[4]!==i||t[5]!==p||t[6]!==d?(w=()=>(0,m.jsxs)("div",{className:"flex flex-row items-center gap-3",children:[(0,m.jsx)(ve,{content:i?"Unpin panel":"Pin panel",children:(0,m.jsx)(Ee,{size:"xs",onPressedChange:()=>d(!i),pressed:i,"aria-label":i?"Unpin panel":"Pin panel",children:i?(0,m.jsx)(Yt,{className:"w-4 h-4"}):(0,m.jsx)(Pt,{className:"w-4 h-4"})})}),(0,m.jsx)(ve,{content:l?(0,m.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,m.jsx)("span",{children:"Follow focused table"}),(0,m.jsx)("span",{className:"text-xs text-muted-foreground w-64",children:"The panel updates as cells that output tables are focused. Click to fix to the current cell."})]}):(0,m.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,m.jsx)("span",{children:"Focus on current table"}),(0,m.jsx)("span",{className:"text-xs text-muted-foreground w-64",children:"The panel is focused on the current table. Click to update based on which cell is focused."})]}),children:(0,m.jsx)(Ee,{size:"xs",onPressedChange:()=>p(!l),pressed:l,"aria-label":l?"Follow focused cell":"Fixed",children:(0,m.jsx)(Xt,{className:qt("w-4 h-4",l&&"text-primary")})})})]}),t[3]=l,t[4]=i,t[5]=p,t[6]=d,t[7]=w):w=t[7];let _=w,F;t[8]!==x||t[9]!==_?(F=()=>(0,m.jsxs)("div",{className:"mt-2 pb-7 mb-4 h-full overflow-auto",children:[(0,m.jsxs)("div",{className:"flex flex-row justify-between items-center mx-2",children:[_(),(0,m.jsx)(St,{variant:"linkDestructive",size:"icon",onClick:x,"aria-label":"Close selection panel",children:(0,m.jsx)(Mt,{className:"w-4 h-4"})})]}),(0,m.jsx)(ge,{children:(0,m.jsx)(Re,{name:B.CONTEXT_AWARE_PANEL})})]}),t[8]=x,t[9]=_,t[10]=F):F=t[10];let C=F;if(!i){let v;return t[11]===C?v=t[12]:(v=(0,m.jsx)(Vn,{children:C()}),t[11]=C,t[12]=v),v}let k;t[13]===Symbol.for("react.memo_cache_sentinel")?(k=(0,m.jsx)(Bt,{onDragging:Qe,className:"resize-handle border-border z-20 no-print border-l"}),t[13]=k):k=t[13];let R;return t[14]===C?R=t[15]:(R=(0,m.jsxs)(m.Fragment,{children:[k,(0,m.jsx)(Vt,{defaultSize:20,minSize:15,maxSize:80,children:C()})]}),t[14]=C,t[15]=R),R},Bn=t=>{let e=(0,Ge.c)(2),{children:n}=t,r;return e[0]===n?r=e[1]:(r=(0,m.jsx)(ge,{children:(0,m.jsx)(Gt,{name:B.CONTEXT_AWARE_PANEL,children:n})}),e[0]=n,e[1]=r),r};var Vn=({children:t})=>{let{resizableDivRef:e,handleRefs:n,style:r}=Ye({startingWidth:400,minWidth:300,maxWidth:1500});return(0,m.jsxs)("div",{className:"absolute z-40 right-0 h-full bg-background flex flex-row",children:[(0,m.jsx)("div",{ref:n.left,className:"w-1 h-full cursor-col-resize border-l"}),(0,m.jsx)("div",{ref:e,style:r,children:t})]})};function $n(){var t=[...arguments];return(0,u.useMemo)(()=>e=>{t.forEach(n=>n(e))},t)}var Ke=typeof window<"u"&&window.document!==void 0&&window.document.createElement!==void 0;function Q(t){let e=Object.prototype.toString.call(t);return e==="[object Window]"||e==="[object global]"}function ae(t){return"nodeType"in t}function I(t){var e;return t?Q(t)?t:ae(t)?((e=t.ownerDocument)==null?void 0:e.defaultView)??window:window:window}function Ze(t){let{Document:e}=I(t);return t instanceof e}function Je(t){return Q(t)?!1:t instanceof I(t).HTMLElement}function et(t){return t instanceof I(t).SVGElement}function Xn(t){return t?Q(t)?t.document:ae(t)?Ze(t)?t:Je(t)||et(t)?t.ownerDocument:document:document:document}var ie=Ke?u.useLayoutEffect:u.useEffect;function tt(t){let e=(0,u.useRef)(t);return ie(()=>{e.current=t}),(0,u.useCallback)(function(){var n=[...arguments];return e.current==null?void 0:e.current(...n)},[])}function Yn(){let t=(0,u.useRef)(null);return[(0,u.useCallback)((e,n)=>{t.current=setInterval(e,n)},[]),(0,u.useCallback)(()=>{t.current!==null&&(clearInterval(t.current),t.current=null)},[])]}function Qn(t,e){e===void 0&&(e=[t]);let n=(0,u.useRef)(t);return ie(()=>{n.current!==t&&(n.current=t)},e),n}function Gn(t,e){let n=(0,u.useRef)();return(0,u.useMemo)(()=>{let r=t(n.current);return n.current=r,r},[...e])}function Kn(t){let e=tt(t),n=(0,u.useRef)(null);return[n,(0,u.useCallback)(r=>{r!==n.current&&(e==null||e(r,n.current)),n.current=r},[])]}function Zn(t){let e=(0,u.useRef)();return(0,u.useEffect)(()=>{e.current=t},[t]),e.current}var oe={};function Jn(t,e){return(0,u.useMemo)(()=>{if(e)return e;let n=oe[t]==null?0:oe[t]+1;return oe[t]=n,t+"-"+n},[t,e])}function nt(t){return function(e){return[...arguments].slice(1).reduce((n,r)=>{let s=Object.entries(r);for(let[i,d]of s){let l=n[i];l!=null&&(n[i]=l+t*d)}return n},{...e})}}var er=nt(1),tr=nt(-1);function nr(t){return"clientX"in t&&"clientY"in t}function rr(t){if(!t)return!1;let{KeyboardEvent:e}=I(t.target);return e&&t instanceof e}function sr(t){if(!t)return!1;let{TouchEvent:e}=I(t.target);return e&&t instanceof e}function ar(t){if(sr(t)){if(t.touches&&t.touches.length){let{clientX:e,clientY:n}=t.touches[0];return{x:e,y:n}}else if(t.changedTouches&&t.changedTouches.length){let{clientX:e,clientY:n}=t.changedTouches[0];return{x:e,y:n}}}return nr(t)?{x:t.clientX,y:t.clientY}:null}var le=Object.freeze({Translate:{toString(t){if(!t)return;let{x:e,y:n}=t;return"translate3d("+(e?Math.round(e):0)+"px, "+(n?Math.round(n):0)+"px, 0)"}},Scale:{toString(t){if(!t)return;let{scaleX:e,scaleY:n}=t;return"scaleX("+e+") scaleY("+n+")"}},Transform:{toString(t){if(t)return[le.Translate.toString(t),le.Scale.toString(t)].join(" ")}},Transition:{toString(t){let{property:e,duration:n,easing:r}=t;return e+" "+n+"ms "+r}}}),rt="a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]";function ir(t){return t.matches(rt)?t:t.querySelector(rt)}export{Fn as $,On as A,An as B,Jn as C,Ye as D,Qe as E,Un as F,Oe as G,Pn as H,Y as I,Ue as J,Le as K,Ln as L,De as M,He as N,$e as O,zn as P,Te as Q,ne as R,Zn as S,Bn as T,We as U,Tn as V,qn as W,Ie as X,Sn as Y,Nn as Z,Yn as _,ar as a,dn as at,Gn as b,Ze as c,cn as ct,ae as d,J as dt,$ as et,et as f,H as ft,tt as g,$n as h,ir as i,B as it,Xe as j,Ve as k,Je as l,sn as lt,tr as m,er as n,qe as nt,Xn as o,an as ot,Q as p,ze as q,Ke as r,Fe as rt,I as s,un as st,le as t,xn as tt,rr as u,Re as ut,ie as v,Hn as w,Kn as x,Qn as y,jn as z};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{d as w,i as x,l as z,p as r,u as C}from"./useEvent-DlWF5OMa.js";import{A as l,B as D,I as j,J as I,N as d,P as h,R as t,T as n,U as J,b as o,w as _}from"./zod-Cg4WLWh2.js";import{t as N}from"./compiler-runtime-DeeZ7FnK.js";import{t as R}from"./merge-BBX6ug-N.js";import{d as m,n as S,u as U}from"./hotkeys-uKX61F1_.js";import{t as F}from"./invariant-C6yE60hi.js";const M=["pip","uv","rye","poetry","pixi"];var $=["normal","compact","medium","full","columns"],q=["auto","native","polars","lazy-polars","pandas"];const G="openai/gpt-4o";var O=["html","markdown","ipynb"];const H=["manual","ask","agent"];var p=h({api_key:t().optional(),base_url:t().optional(),project:t().optional()}).loose(),K=h({chat_model:t().nullish(),edit_model:t().nullish(),autocomplete_model:t().nullish(),displayed_models:_(t()).default([]),custom_models:_(t()).default([])});const v=l({completion:h({activate_on_typing:n().prefault(!0),signature_hint_on_typing:n().prefault(!1),copilot:D([n(),o(["github","codeium","custom"])]).prefault(!1).transform(a=>a===!0?"github":a),codeium_api_key:t().nullish()}).prefault({}),save:l({autosave:o(["off","after_delay"]).prefault("after_delay"),autosave_delay:d().nonnegative().transform(a=>Math.max(a,1e3)).prefault(1e3),format_on_save:n().prefault(!1)}).prefault({}),formatting:l({line_length:d().nonnegative().prefault(79).transform(a=>Math.min(a,1e3))}).prefault({}),keymap:l({preset:o(["default","vim"]).prefault("default"),overrides:j(t(),t()).prefault({}),destructive_delete:n().prefault(!0)}).prefault({}),runtime:l({auto_instantiate:n().prefault(!0),on_cell_change:o(["lazy","autorun"]).prefault("autorun"),auto_reload:o(["off","lazy","autorun"]).prefault("off"),reactive_tests:n().prefault(!0),watcher_on_save:o(["lazy","autorun"]).prefault("lazy"),default_sql_output:o(q).prefault("auto"),default_auto_download:_(o(O)).prefault([])}).prefault({}),display:l({theme:o(["light","dark","system"]).prefault("light"),code_editor_font_size:d().nonnegative().prefault(14),cell_output:o(["above","below"]).prefault("below"),dataframes:o(["rich","plain"]).prefault("rich"),default_table_page_size:d().prefault(10),default_table_max_columns:d().prefault(50),default_width:o($).prefault("medium").transform(a=>a==="normal"?"compact":a),locale:t().nullable().optional(),reference_highlighting:n().prefault(!0)}).prefault({}),package_management:l({manager:o(M).prefault("pip")}).prefault({}),ai:l({rules:t().prefault(""),mode:o(H).prefault("manual"),inline_tooltip:n().prefault(!1),open_ai:p.optional(),anthropic:p.optional(),google:p.optional(),ollama:p.optional(),openrouter:p.optional(),wandb:p.optional(),open_ai_compatible:p.optional(),azure:p.optional(),bedrock:l({region_name:t().optional(),profile_name:t().optional(),aws_access_key_id:t().optional(),aws_secret_access_key:t().optional()}).optional(),custom_providers:j(t(),p).prefault({}),models:K.prefault({displayed_models:[],custom_models:[]})}).prefault({}),experimental:l({markdown:n().optional(),rtc:n().optional()}).prefault(()=>({})),server:l({}).prefault(()=>({})),diagnostics:l({enabled:n().optional(),sql_linter:n().optional()}).prefault(()=>({})),sharing:l({html:n().optional(),wasm:n().optional()}).optional(),mcp:l({presets:_(o(["marimo","context7"])).optional()}).optional().prefault({})}).partial().prefault(()=>({completion:{},save:{},formatting:{},keymap:{},runtime:{},display:{},diagnostics:{},experimental:{},server:{},ai:{},package_management:{},mcp:{}})),E=t(),L=o(q).prefault("auto"),b=h({width:o($).prefault("medium").transform(a=>a==="normal"?"compact":a),app_title:E.nullish(),css_file:t().nullish(),html_head_file:t().nullish(),auto_download:_(o(O)).prefault([]),sql_output:L}).prefault(()=>({width:"medium",auto_download:[],sql_output:"auto"}));function P(a){try{return b.parse(a)}catch(e){return m.error(`Marimo got an unexpected value in the configuration file: ${e}`),b.parse({})}}function Q(a){try{let e=v.parse(a);for(let[u,s]of Object.entries(e.experimental??{}))s===!0&&m.log(`\u{1F9EA} Experimental feature "${u}" is enabled.`);return e}catch(e){return e instanceof J?m.error(`Marimo got an unexpected value in the configuration file: ${I(e)}`):m.error(`Marimo got an unexpected value in the configuration file: ${e}`),T()}}function V(a){try{let e=a;return F(typeof e=="object","internal-error: marimo-config-overrides is not an object"),Object.keys(e).length>0&&m.log("\u{1F527} Project configuration overrides:",e),e}catch(e){return m.error(`Marimo got an unexpected configuration overrides: ${e}`),{}}}function T(){return v.parse({completion:{},save:{},formatting:{},keymap:{},runtime:{},display:{},diagnostics:{},experimental:{},server:{},ai:{},package_management:{},mcp:{}})}var W=N();const y=r(T()),A=r({}),i=r(a=>{let e=a(A);return R({},a(y),e)}),X=r(a=>a(i).runtime.auto_instantiate),Y=r(a=>a(i).keymap.overrides??{}),Z=r(U()),aa=r(a=>new S(a(Y),{platform:a(Z)})),ea=r(a=>a(i).save),ta=r(a=>a(i).ai),oa=r(a=>a(i).completion),ra=r(a=>a(i).keymap.preset);function na(){return z(y)}function la(){let a=(0,W.c)(3),e=C(i),u=w(y),s;return a[0]!==e||a[1]!==u?(s=[e,u],a[0]=e,a[1]=u,a[2]=s):s=a[2],s}function ia(){return x.get(i)}const sa=r(a=>B(a(i)));r(a=>a(i).display.code_editor_font_size);const ua=r(a=>a(i).display.locale);function B(a){var e,u,s,f,c,k;return!!((u=(e=a.ai)==null?void 0:e.models)!=null&&u.chat_model)||!!((f=(s=a.ai)==null?void 0:s.models)!=null&&f.edit_model)||!!((k=(c=a.ai)==null?void 0:c.models)!=null&&k.autocomplete_model)}const g=r(P({}));function pa(){return z(g)}function ma(){return w(g)}function fa(){return x.get(g)}const ca=r(a=>a(g).width);r(a=>{var f,c;let e=a(i),u=((f=e.snippets)==null?void 0:f.custom_paths)??[],s=(c=e.snippets)==null?void 0:c.include_default_snippets;return u.length>0||s===!0});function da(){return!1}export{E as C,P as D,v as E,V as O,b as S,M as T,pa as _,ca as a,na as b,oa as c,ia as d,aa as f,i as g,ua as h,g as i,Q as k,A as l,ra as m,ta as n,X as o,B as p,sa as r,ea as s,da as t,fa as u,la as v,G as w,y as x,ma as y};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as Z}from"./chunk-LvLJmgfZ.js";import{n as C}from"./useEvent-DlWF5OMa.js";import{t as R}from"./react-BGmjiNul.js";import"./react-dom-C9fstfnp.js";import{t as tt}from"./compiler-runtime-DeeZ7FnK.js";import{t as nt}from"./_baseUniq-CsutM-S0.js";import{t as et}from"./debounce-BbFlGgjv.js";import{r as rt,t as at}from"./tooltip-CrRUCOBw.js";import{a as V,d as _}from"./hotkeys-uKX61F1_.js";import{n as z}from"./config-Ba3eeYri.js";import{t as it}from"./jsx-runtime-DN_bIXfG.js";import{r as ot}from"./button-DuYGqRtX.js";import{u as lt}from"./toDate-5JckKRQn.js";import{r as ct}from"./useTheme-DfP1CWaW.js";import"./Combination-D1TsGrBC.js";import{t as st}from"./tooltip-CvjcEpZC.js";import{t as mt}from"./isValid-DhzaK-Y1.js";import{n as pt}from"./error-banner-DU5Qb8a8.js";import{n as ut}from"./vega-loader.browser-C8wT63Va.js";import{t as ft}from"./react-vega-ENLQ2Qtg.js";import"./defaultLocale-BLUna9fQ.js";import"./defaultLocale-DzliDDTm.js";import{r as dt,t as ht}from"./alert-BEdExd6A.js";import{n as gt}from"./useAsyncData-BJJJOr9W.js";import{t as yt}from"./formats-B9CrBoaO.js";import{t as H}from"./useDeepCompareMemoize-gzLRYatP.js";function vt(t){return t&&t.length?nt(t):[]}var N=vt,kt=tt(),x=Z(R(),1);function bt(t){return t.data&&"url"in t.data&&(t.data.url=z(t.data.url).href),t}const u={arc:"arc",area:"area",bar:"bar",image:"image",line:"line",point:"point",rect:"rect",rule:"rule",text:"text",tick:"tick",trail:"trail",circle:"circle",square:"square",geoshape:"geoshape"};var F=new Set(["boxplot","errorband","errorbar"]);const S={getMarkType(t){let n=typeof t=="string"?t:t.type;if(F.has(n))throw Error("Not supported");return n},isInteractive(t){let n=typeof t=="string"?t:t.type;return!F.has(n)},makeClickable(t){let n=typeof t=="string"?t:t.type;return n in u?typeof t=="string"?{type:t,cursor:"pointer",tooltip:!0}:{...t,type:n,cursor:"pointer",tooltip:!0}:t},getOpacity(t){return typeof t=="string"?null:"opacity"in t&&typeof t.opacity=="number"?t.opacity:null}},y={point(t){return t==null?"select_point":`select_point_${t}`},interval(t){return t==null?"select_interval":`select_interval_${t}`},legendSelection(t){return`legend_selection_${t}`},binColoring(t){return t==null?"bin_coloring":`bin_coloring_${t}`},HIGHLIGHT:"highlight",PAN_ZOOM:"pan_zoom",hasPoint(t){return t.some(n=>n.startsWith("select_point"))},hasInterval(t){return t.some(n=>n.startsWith("select_interval"))},hasLegend(t){return t.some(n=>n.startsWith("legend_selection"))},hasPanZoom(t){return t.some(n=>n.startsWith("pan_zoom"))},isBinColoring(t){return t.startsWith("bin_coloring")}},j={highlight(){return{name:y.HIGHLIGHT,select:{type:"point",on:"mouseover"}}},interval(t,n){return{name:y.interval(n),select:{type:"interval",encodings:W(t),mark:{fill:"#669EFF",fillOpacity:.07,stroke:"#669EFF",strokeOpacity:.4},on:"[mousedown[!event.metaKey], mouseup] > mousemove[!event.metaKey]",translate:"[mousedown[!event.metaKey], mouseup] > mousemove[!event.metaKey]"}}},point(t,n){return{name:y.point(n),select:{type:"point",encodings:W(t),on:"click[!event.metaKey]"}}},binColoring(t){return{name:y.binColoring(t),select:{type:"point",on:"click[!event.metaKey]"}}},legend(t){return{name:y.legendSelection(t),select:{type:"point",fields:[t]},bind:"legend"}},panZoom(){return{name:y.PAN_ZOOM,bind:"scales",select:{type:"interval",on:"[mousedown[event.metaKey], window:mouseup] > window:mousemove!",translate:"[mousedown[event.metaKey], window:mouseup] > window:mousemove!",zoom:"wheel![event.metaKey]"}}}};function W(t){switch(S.getMarkType(t.mark)){case u.image:case u.trail:return;case u.area:case u.arc:return["color"];case u.bar:{let n=wt(t);return n==="horizontal"?["y"]:n==="vertical"?["x"]:void 0}case u.circle:case u.geoshape:case u.line:case u.point:case u.rect:case u.rule:case u.square:case u.text:case u.tick:return["x","y"]}}function P(t){return"params"in t&&t.params&&t.params.length>0?N(t.params.filter(n=>n==null?!1:"select"in n&&n.select!==void 0).map(n=>n.name)):"layer"in t?N(t.layer.flatMap(P)):"vconcat"in t?N(t.vconcat.flatMap(P)):"hconcat"in t?N(t.hconcat.flatMap(P)):[]}function wt(t){var a,r;if(!t||!("mark"in t))return;let n=(a=t.encoding)==null?void 0:a.x,e=(r=t.encoding)==null?void 0:r.y;if(n&&"type"in n&&n.type==="nominal")return"vertical";if(e&&"type"in e&&e.type==="nominal"||n&&"aggregate"in n)return"horizontal";if(e&&"aggregate"in e)return"vertical"}function xt(t){if(!t.encoding)return[];let n=[];for(let e of Object.values(t.encoding))e&&typeof e=="object"&&"bin"in e&&e.bin&&"field"in e&&typeof e.field=="string"&&n.push(e.field);return n}function D(t){if(!t||!("encoding"in t))return[];let{encoding:n}=t;return n?Object.entries(n).flatMap(e=>{let[a,r]=e;return!r||!St.has(a)?[]:"field"in r&&typeof r.field=="string"?[r.field]:"condition"in r&&r.condition&&typeof r.condition=="object"&&"field"in r.condition&&r.condition.field&&typeof r.condition.field=="string"?[r.condition.field]:[]}):[]}var St=new Set(["color","fill","fillOpacity","opacity","shape","size"]);function G(t,n,e,a){let r=e.filter(o=>y.isBinColoring(o)),i={and:(r.length>0?r:e).map(o=>({param:o}))};if(t==="opacity"){let o=S.getOpacity(a)||1;return{...n,opacity:{condition:{test:i,value:o},value:o/5}}}else return n}function At(t){if(!("select"in t)||!t.select)return JSON.stringify(t);let n=t.select;if(typeof n=="string")return JSON.stringify({type:n,bind:t.bind});let e={type:n.type,encodings:"encodings"in n&&n.encodings?[...n.encodings].sort():void 0,fields:"fields"in n&&n.fields?[...n.fields].sort():void 0,bind:t.bind};return JSON.stringify(e)}function $(t){let n=E(t);if(n.length===0)return t;let e=_t(n);return e.length===0?t:{...L(K(t,new Set(e.map(a=>a.name))),e.map(a=>a.name)),params:[...t.params||[],...e]}}function E(t){let n=[];if("vconcat"in t&&Array.isArray(t.vconcat))for(let e of t.vconcat)n.push(...E(e));else if("hconcat"in t&&Array.isArray(t.hconcat))for(let e of t.hconcat)n.push(...E(e));else{if("layer"in t)return[];"mark"in t&&"params"in t&&t.params&&t.params.length>0&&n.push({params:t.params})}return n}function _t(t){if(t.length===0)return[];let n=new Map,e=t.length;for(let{params:r}of t){let i=new Set;for(let o of r){let l=At(o);i.has(l)||(i.add(l),n.has(l)||n.set(l,{count:0,param:o}),n.get(l).count++)}}let a=[];for(let[,{count:r,param:i}]of n)r===e&&a.push(i);return a}function K(t,n){if("vconcat"in t&&Array.isArray(t.vconcat))return{...t,vconcat:t.vconcat.map(e=>K(e,n))};if("hconcat"in t&&Array.isArray(t.hconcat))return{...t,hconcat:t.hconcat.map(e=>K(e,n))};if("mark"in t&&"params"in t&&t.params){let e=t.params,a=[];for(let r of e){if(!r||typeof r!="object"||!("name"in r)){a.push(r);continue}n.has(r.name)||a.push(r)}if(a.length===0){let{params:r,...i}=t;return i}return{...t,params:a}}return t}function L(t,n){return"vconcat"in t&&Array.isArray(t.vconcat)?{...t,vconcat:t.vconcat.map(e=>L(e,n))}:"hconcat"in t&&Array.isArray(t.hconcat)?{...t,hconcat:t.hconcat.map(e=>L(e,n))}:"layer"in t?t:"mark"in t&&S.isInteractive(t.mark)?{...t,mark:S.makeClickable(t.mark),encoding:G("opacity",t.encoding||{},n,t.mark)}:t}function T(t,n){var l,k;let{chartSelection:e=!0,fieldSelection:a=!0}=n;if(!e&&!a)return t;(l=t.params)!=null&&l.some(s=>s.bind==="legend")&&(a=!1);let r=(k=t.params)==null?void 0:k.some(s=>!s.bind);r&&(e=!1);let i="vconcat"in t||"hconcat"in t;if(r&&i)return t;if("vconcat"in t){let s=t.vconcat.map(m=>"mark"in m?T(m,{chartSelection:e,fieldSelection:a}):m);return $({...t,vconcat:s})}if("hconcat"in t){let s=t.hconcat.map(m=>"mark"in m?T(m,{chartSelection:e,fieldSelection:a}):m);return $({...t,hconcat:s})}if("layer"in t){let s=t.params&&t.params.length>0,m=a!==!1&&!s,v=[];if(m){let p=t.layer.flatMap(f=>"mark"in f?D(f):[]);v=[...new Set(p)],Array.isArray(a)&&(v=v.filter(f=>a.includes(f)))}let w=t.layer.map((p,f)=>{if(!("mark"in p))return p;let h=p;if(f===0&&v.length>0){let O=v.map(M=>j.legend(M));h={...h,params:[...h.params||[],...O]}}return h=q(h,e,f),h=J(h),f===0&&(h=B(h)),h});return{...t,layer:w}}if(!("mark"in t)||!S.isInteractive(t.mark))return t;let o=t;return o=jt(o,a),o=q(o,e,void 0),o=J(o),o=B(o),o}function jt(t,n){if(n===!1)return t;let e=D(t);Array.isArray(n)&&(e=e.filter(i=>n.includes(i)));let a=e.map(i=>j.legend(i)),r=[...t.params||[],...a];return{...t,params:r}}function q(t,n,e){if(n===!1)return t;let a;try{a=S.getMarkType(t.mark)}catch{return t}if(a==="geoshape")return t;let r=xt(t),i=n===!0?r.length>0?["point"]:Ot(a):[n];if(!i||i.length===0)return t;let o=i.map(k=>k==="interval"?j.interval(t,e):j.point(t,e)),l=[...t.params||[],...o];return r.length>0&&i.includes("point")&&l.push(j.binColoring(e)),{...t,params:l}}function B(t){let n;try{n=S.getMarkType(t.mark)}catch{}if(n==="geoshape")return t;let e=t.params||[];return e.some(a=>a.bind==="scales")?t:{...t,params:[...e,j.panZoom()]}}function J(t){let n="encoding"in t?t.encoding:void 0,e=t.params||[],a=e.map(r=>r.name);return e.length===0||!S.isInteractive(t.mark)?t:{...t,mark:S.makeClickable(t.mark),encoding:G("opacity",n||{},a,t.mark)}}function Ot(t){switch(t){case"arc":case"area":return["point"];case"text":case"bar":return["point","interval"];case"line":return;default:return["point","interval"]}}async function Mt(t){if(!t)return t;let n="datasets"in t?{...t.datasets}:{},e=async r=>{if(!r)return r;if("layer"in r){let l=await Promise.all(r.layer.map(e));r={...r,layer:l}}if("hconcat"in r){let l=await Promise.all(r.hconcat.map(e));r={...r,hconcat:l}}if("vconcat"in r){let l=await Promise.all(r.vconcat.map(e));r={...r,vconcat:l}}if("spec"in r&&(r={...r,spec:await e(r.spec)}),!r.data||!("url"in r.data))return r;let i;try{i=z(r.data.url)}catch{return r}let o=await rt(i.href,r.data.format);return n[i.pathname]=o,{...r,data:{name:i.pathname}}},a=await e(t);return Object.keys(n).length===0?a:{...a,datasets:n}}var d=Z(it(),1);ut("arrow",yt);var Nt=t=>{let n=(0,kt.c)(12),{value:e,setValue:a,chartSelection:r,fieldSelection:i,spec:o,embedOptions:l}=t,k,s;n[0]===o?(k=n[1],s=n[2]):(k=async()=>Mt(o),s=[o],n[0]=o,n[1]=k,n[2]=s);let{data:m,error:v}=gt(k,s);if(v){let p;return n[3]===v?p=n[4]:(p=(0,d.jsx)(pt,{error:v}),n[3]=v,n[4]=p),p}if(!m)return null;let w;return n[5]!==r||n[6]!==l||n[7]!==i||n[8]!==m||n[9]!==a||n[10]!==e?(w=(0,d.jsx)(Pt,{value:e,setValue:a,chartSelection:r,fieldSelection:i,spec:m,embedOptions:l}),n[5]=r,n[6]=l,n[7]=i,n[8]=m,n[9]=a,n[10]=e,n[11]=w):w=n[11],w},Pt=({value:t,setValue:n,chartSelection:e,fieldSelection:a,spec:r,embedOptions:i})=>{let{theme:o}=ct(),l=(0,x.useRef)(null),k=(0,x.useRef)(void 0),[s,m]=(0,x.useState)(),v=(0,x.useMemo)(()=>i&&"actions"in i?i.actions:{source:!1,compiled:!1},[i]),w=H(r),p=(0,x.useMemo)(()=>T(bt(w),{chartSelection:e,fieldSelection:a}),[w,e,a]),f=(0,x.useMemo)(()=>P(p),[p]),h=C(c=>{n({...t,...c})}),O=(0,x.useMemo)(()=>et((c,g)=>{_.debug("[Vega signal]",c,g);let b=V.mapValues(g,Ct);b=V.mapValues(b,It),h({[c]:b})},100),[h]),M=H(f),I=(0,x.useMemo)(()=>M.reduce((c,g)=>(y.PAN_ZOOM===g||y.isBinColoring(g)||c.push({signalName:g,handler:(b,Y)=>O(b,Y)}),c),[]),[M,O]),Q=C(c=>{_.error(c),_.debug(p),m(c)}),U=C(c=>{_.debug("[Vega view] created",c),k.current=c,m(void 0)}),X=()=>{let c=[];return y.hasPoint(f)&&c.push(["Point selection","click to select a point; hold shift for multi-select"]),y.hasInterval(f)&&c.push(["Interval selection","click and drag to select an interval"]),y.hasLegend(f)&&c.push(["Legend selection","click to select a legend item; hold shift for multi-select"]),y.hasPanZoom(f)&&c.push(["Pan","hold the meta key and drag"],["Zoom","hold the meta key and scroll"]),c.length===0?null:(0,d.jsx)(st,{delayDuration:300,side:"left",content:(0,d.jsx)("div",{className:"text-xs flex flex-col",children:c.map((g,b)=>(0,d.jsxs)("div",{children:[(0,d.jsxs)("span",{className:"font-bold tracking-wide",children:[g[0],":"]})," ",g[1]]},b))}),children:(0,d.jsx)(lt,{className:"absolute bottom-1 right-0 m-2 h-4 w-4 cursor-help text-muted-foreground hover:text-foreground"})})},A=ft({ref:l,spec:p,options:{theme:o==="dark"?"dark":void 0,actions:v,mode:"vega-lite",tooltip:at.call,renderer:"canvas"},onError:Q,onEmbed:U});return(0,x.useEffect)(()=>(I.forEach(({signalName:c,handler:g})=>{try{A==null||A.view.addSignalListener(c,g)}catch(b){_.error(b)}}),()=>{I.forEach(({signalName:c,handler:g})=>{try{A==null||A.view.removeSignalListener(c,g)}catch(b){_.error(b)}})}),[A,I]),(0,d.jsxs)(d.Fragment,{children:[s&&(0,d.jsxs)(ht,{variant:"destructive",children:[(0,d.jsx)(dt,{children:s.message}),(0,d.jsx)("div",{className:"text-md",children:s.stack})]}),(0,d.jsxs)("div",{className:"relative",onPointerDown:ot.stopPropagation(),children:[(0,d.jsx)("div",{ref:l}),X()]})]})};function It(t){return t instanceof Set?[...t]:t}function Ct(t){return Array.isArray(t)?t.map(n=>n instanceof Date&&mt(n)?new Date(n).getTime():n):t}var Et=Nt;export{Et as default};
|
|
1
|
+
import{s as Z}from"./chunk-LvLJmgfZ.js";import{n as C}from"./useEvent-DlWF5OMa.js";import{t as R}from"./react-BGmjiNul.js";import"./react-dom-C9fstfnp.js";import{t as tt}from"./compiler-runtime-DeeZ7FnK.js";import{t as nt}from"./_baseUniq-CsutM-S0.js";import{t as et}from"./debounce-BbFlGgjv.js";import{r as rt,t as at}from"./tooltip-CrRUCOBw.js";import{a as V,d as _}from"./hotkeys-uKX61F1_.js";import{n as z}from"./config-D6nhy4FA.js";import{t as it}from"./jsx-runtime-DN_bIXfG.js";import{r as ot}from"./button-B8cGZzP5.js";import{u as lt}from"./toDate-5JckKRQn.js";import{r as ct}from"./useTheme-CNj0G_ol.js";import"./Combination-D1TsGrBC.js";import{t as st}from"./tooltip-CvjcEpZC.js";import{t as mt}from"./isValid-DhzaK-Y1.js";import{n as pt}from"./error-banner-DvT0IGDZ.js";import{n as ut}from"./vega-loader.browser-C8wT63Va.js";import{t as ft}from"./react-vega-ENLQ2Qtg.js";import"./defaultLocale-BLUna9fQ.js";import"./defaultLocale-DzliDDTm.js";import{r as dt,t as ht}from"./alert-BEdExd6A.js";import{n as gt}from"./useAsyncData-BJJJOr9W.js";import{t as yt}from"./formats-B9CrBoaO.js";import{t as H}from"./useDeepCompareMemoize-gzLRYatP.js";function vt(t){return t&&t.length?nt(t):[]}var N=vt,kt=tt(),x=Z(R(),1);function bt(t){return t.data&&"url"in t.data&&(t.data.url=z(t.data.url).href),t}const u={arc:"arc",area:"area",bar:"bar",image:"image",line:"line",point:"point",rect:"rect",rule:"rule",text:"text",tick:"tick",trail:"trail",circle:"circle",square:"square",geoshape:"geoshape"};var F=new Set(["boxplot","errorband","errorbar"]);const S={getMarkType(t){let n=typeof t=="string"?t:t.type;if(F.has(n))throw Error("Not supported");return n},isInteractive(t){let n=typeof t=="string"?t:t.type;return!F.has(n)},makeClickable(t){let n=typeof t=="string"?t:t.type;return n in u?typeof t=="string"?{type:t,cursor:"pointer",tooltip:!0}:{...t,type:n,cursor:"pointer",tooltip:!0}:t},getOpacity(t){return typeof t=="string"?null:"opacity"in t&&typeof t.opacity=="number"?t.opacity:null}},y={point(t){return t==null?"select_point":`select_point_${t}`},interval(t){return t==null?"select_interval":`select_interval_${t}`},legendSelection(t){return`legend_selection_${t}`},binColoring(t){return t==null?"bin_coloring":`bin_coloring_${t}`},HIGHLIGHT:"highlight",PAN_ZOOM:"pan_zoom",hasPoint(t){return t.some(n=>n.startsWith("select_point"))},hasInterval(t){return t.some(n=>n.startsWith("select_interval"))},hasLegend(t){return t.some(n=>n.startsWith("legend_selection"))},hasPanZoom(t){return t.some(n=>n.startsWith("pan_zoom"))},isBinColoring(t){return t.startsWith("bin_coloring")}},j={highlight(){return{name:y.HIGHLIGHT,select:{type:"point",on:"mouseover"}}},interval(t,n){return{name:y.interval(n),select:{type:"interval",encodings:W(t),mark:{fill:"#669EFF",fillOpacity:.07,stroke:"#669EFF",strokeOpacity:.4},on:"[mousedown[!event.metaKey], mouseup] > mousemove[!event.metaKey]",translate:"[mousedown[!event.metaKey], mouseup] > mousemove[!event.metaKey]"}}},point(t,n){return{name:y.point(n),select:{type:"point",encodings:W(t),on:"click[!event.metaKey]"}}},binColoring(t){return{name:y.binColoring(t),select:{type:"point",on:"click[!event.metaKey]"}}},legend(t){return{name:y.legendSelection(t),select:{type:"point",fields:[t]},bind:"legend"}},panZoom(){return{name:y.PAN_ZOOM,bind:"scales",select:{type:"interval",on:"[mousedown[event.metaKey], window:mouseup] > window:mousemove!",translate:"[mousedown[event.metaKey], window:mouseup] > window:mousemove!",zoom:"wheel![event.metaKey]"}}}};function W(t){switch(S.getMarkType(t.mark)){case u.image:case u.trail:return;case u.area:case u.arc:return["color"];case u.bar:{let n=wt(t);return n==="horizontal"?["y"]:n==="vertical"?["x"]:void 0}case u.circle:case u.geoshape:case u.line:case u.point:case u.rect:case u.rule:case u.square:case u.text:case u.tick:return["x","y"]}}function P(t){return"params"in t&&t.params&&t.params.length>0?N(t.params.filter(n=>n==null?!1:"select"in n&&n.select!==void 0).map(n=>n.name)):"layer"in t?N(t.layer.flatMap(P)):"vconcat"in t?N(t.vconcat.flatMap(P)):"hconcat"in t?N(t.hconcat.flatMap(P)):[]}function wt(t){var a,r;if(!t||!("mark"in t))return;let n=(a=t.encoding)==null?void 0:a.x,e=(r=t.encoding)==null?void 0:r.y;if(n&&"type"in n&&n.type==="nominal")return"vertical";if(e&&"type"in e&&e.type==="nominal"||n&&"aggregate"in n)return"horizontal";if(e&&"aggregate"in e)return"vertical"}function xt(t){if(!t.encoding)return[];let n=[];for(let e of Object.values(t.encoding))e&&typeof e=="object"&&"bin"in e&&e.bin&&"field"in e&&typeof e.field=="string"&&n.push(e.field);return n}function D(t){if(!t||!("encoding"in t))return[];let{encoding:n}=t;return n?Object.entries(n).flatMap(e=>{let[a,r]=e;return!r||!St.has(a)?[]:"field"in r&&typeof r.field=="string"?[r.field]:"condition"in r&&r.condition&&typeof r.condition=="object"&&"field"in r.condition&&r.condition.field&&typeof r.condition.field=="string"?[r.condition.field]:[]}):[]}var St=new Set(["color","fill","fillOpacity","opacity","shape","size"]);function G(t,n,e,a){let r=e.filter(o=>y.isBinColoring(o)),i={and:(r.length>0?r:e).map(o=>({param:o}))};if(t==="opacity"){let o=S.getOpacity(a)||1;return{...n,opacity:{condition:{test:i,value:o},value:o/5}}}else return n}function At(t){if(!("select"in t)||!t.select)return JSON.stringify(t);let n=t.select;if(typeof n=="string")return JSON.stringify({type:n,bind:t.bind});let e={type:n.type,encodings:"encodings"in n&&n.encodings?[...n.encodings].sort():void 0,fields:"fields"in n&&n.fields?[...n.fields].sort():void 0,bind:t.bind};return JSON.stringify(e)}function $(t){let n=E(t);if(n.length===0)return t;let e=_t(n);return e.length===0?t:{...L(K(t,new Set(e.map(a=>a.name))),e.map(a=>a.name)),params:[...t.params||[],...e]}}function E(t){let n=[];if("vconcat"in t&&Array.isArray(t.vconcat))for(let e of t.vconcat)n.push(...E(e));else if("hconcat"in t&&Array.isArray(t.hconcat))for(let e of t.hconcat)n.push(...E(e));else{if("layer"in t)return[];"mark"in t&&"params"in t&&t.params&&t.params.length>0&&n.push({params:t.params})}return n}function _t(t){if(t.length===0)return[];let n=new Map,e=t.length;for(let{params:r}of t){let i=new Set;for(let o of r){let l=At(o);i.has(l)||(i.add(l),n.has(l)||n.set(l,{count:0,param:o}),n.get(l).count++)}}let a=[];for(let[,{count:r,param:i}]of n)r===e&&a.push(i);return a}function K(t,n){if("vconcat"in t&&Array.isArray(t.vconcat))return{...t,vconcat:t.vconcat.map(e=>K(e,n))};if("hconcat"in t&&Array.isArray(t.hconcat))return{...t,hconcat:t.hconcat.map(e=>K(e,n))};if("mark"in t&&"params"in t&&t.params){let e=t.params,a=[];for(let r of e){if(!r||typeof r!="object"||!("name"in r)){a.push(r);continue}n.has(r.name)||a.push(r)}if(a.length===0){let{params:r,...i}=t;return i}return{...t,params:a}}return t}function L(t,n){return"vconcat"in t&&Array.isArray(t.vconcat)?{...t,vconcat:t.vconcat.map(e=>L(e,n))}:"hconcat"in t&&Array.isArray(t.hconcat)?{...t,hconcat:t.hconcat.map(e=>L(e,n))}:"layer"in t?t:"mark"in t&&S.isInteractive(t.mark)?{...t,mark:S.makeClickable(t.mark),encoding:G("opacity",t.encoding||{},n,t.mark)}:t}function T(t,n){var l,k;let{chartSelection:e=!0,fieldSelection:a=!0}=n;if(!e&&!a)return t;(l=t.params)!=null&&l.some(s=>s.bind==="legend")&&(a=!1);let r=(k=t.params)==null?void 0:k.some(s=>!s.bind);r&&(e=!1);let i="vconcat"in t||"hconcat"in t;if(r&&i)return t;if("vconcat"in t){let s=t.vconcat.map(m=>"mark"in m?T(m,{chartSelection:e,fieldSelection:a}):m);return $({...t,vconcat:s})}if("hconcat"in t){let s=t.hconcat.map(m=>"mark"in m?T(m,{chartSelection:e,fieldSelection:a}):m);return $({...t,hconcat:s})}if("layer"in t){let s=t.params&&t.params.length>0,m=a!==!1&&!s,v=[];if(m){let p=t.layer.flatMap(f=>"mark"in f?D(f):[]);v=[...new Set(p)],Array.isArray(a)&&(v=v.filter(f=>a.includes(f)))}let w=t.layer.map((p,f)=>{if(!("mark"in p))return p;let h=p;if(f===0&&v.length>0){let O=v.map(M=>j.legend(M));h={...h,params:[...h.params||[],...O]}}return h=q(h,e,f),h=J(h),f===0&&(h=B(h)),h});return{...t,layer:w}}if(!("mark"in t)||!S.isInteractive(t.mark))return t;let o=t;return o=jt(o,a),o=q(o,e,void 0),o=J(o),o=B(o),o}function jt(t,n){if(n===!1)return t;let e=D(t);Array.isArray(n)&&(e=e.filter(i=>n.includes(i)));let a=e.map(i=>j.legend(i)),r=[...t.params||[],...a];return{...t,params:r}}function q(t,n,e){if(n===!1)return t;let a;try{a=S.getMarkType(t.mark)}catch{return t}if(a==="geoshape")return t;let r=xt(t),i=n===!0?r.length>0?["point"]:Ot(a):[n];if(!i||i.length===0)return t;let o=i.map(k=>k==="interval"?j.interval(t,e):j.point(t,e)),l=[...t.params||[],...o];return r.length>0&&i.includes("point")&&l.push(j.binColoring(e)),{...t,params:l}}function B(t){let n;try{n=S.getMarkType(t.mark)}catch{}if(n==="geoshape")return t;let e=t.params||[];return e.some(a=>a.bind==="scales")?t:{...t,params:[...e,j.panZoom()]}}function J(t){let n="encoding"in t?t.encoding:void 0,e=t.params||[],a=e.map(r=>r.name);return e.length===0||!S.isInteractive(t.mark)?t:{...t,mark:S.makeClickable(t.mark),encoding:G("opacity",n||{},a,t.mark)}}function Ot(t){switch(t){case"arc":case"area":return["point"];case"text":case"bar":return["point","interval"];case"line":return;default:return["point","interval"]}}async function Mt(t){if(!t)return t;let n="datasets"in t?{...t.datasets}:{},e=async r=>{if(!r)return r;if("layer"in r){let l=await Promise.all(r.layer.map(e));r={...r,layer:l}}if("hconcat"in r){let l=await Promise.all(r.hconcat.map(e));r={...r,hconcat:l}}if("vconcat"in r){let l=await Promise.all(r.vconcat.map(e));r={...r,vconcat:l}}if("spec"in r&&(r={...r,spec:await e(r.spec)}),!r.data||!("url"in r.data))return r;let i;try{i=z(r.data.url)}catch{return r}let o=await rt(i.href,r.data.format);return n[i.pathname]=o,{...r,data:{name:i.pathname}}},a=await e(t);return Object.keys(n).length===0?a:{...a,datasets:n}}var d=Z(it(),1);ut("arrow",yt);var Nt=t=>{let n=(0,kt.c)(12),{value:e,setValue:a,chartSelection:r,fieldSelection:i,spec:o,embedOptions:l}=t,k,s;n[0]===o?(k=n[1],s=n[2]):(k=async()=>Mt(o),s=[o],n[0]=o,n[1]=k,n[2]=s);let{data:m,error:v}=gt(k,s);if(v){let p;return n[3]===v?p=n[4]:(p=(0,d.jsx)(pt,{error:v}),n[3]=v,n[4]=p),p}if(!m)return null;let w;return n[5]!==r||n[6]!==l||n[7]!==i||n[8]!==m||n[9]!==a||n[10]!==e?(w=(0,d.jsx)(Pt,{value:e,setValue:a,chartSelection:r,fieldSelection:i,spec:m,embedOptions:l}),n[5]=r,n[6]=l,n[7]=i,n[8]=m,n[9]=a,n[10]=e,n[11]=w):w=n[11],w},Pt=({value:t,setValue:n,chartSelection:e,fieldSelection:a,spec:r,embedOptions:i})=>{let{theme:o}=ct(),l=(0,x.useRef)(null),k=(0,x.useRef)(void 0),[s,m]=(0,x.useState)(),v=(0,x.useMemo)(()=>i&&"actions"in i?i.actions:{source:!1,compiled:!1},[i]),w=H(r),p=(0,x.useMemo)(()=>T(bt(w),{chartSelection:e,fieldSelection:a}),[w,e,a]),f=(0,x.useMemo)(()=>P(p),[p]),h=C(c=>{n({...t,...c})}),O=(0,x.useMemo)(()=>et((c,g)=>{_.debug("[Vega signal]",c,g);let b=V.mapValues(g,Ct);b=V.mapValues(b,It),h({[c]:b})},100),[h]),M=H(f),I=(0,x.useMemo)(()=>M.reduce((c,g)=>(y.PAN_ZOOM===g||y.isBinColoring(g)||c.push({signalName:g,handler:(b,Y)=>O(b,Y)}),c),[]),[M,O]),Q=C(c=>{_.error(c),_.debug(p),m(c)}),U=C(c=>{_.debug("[Vega view] created",c),k.current=c,m(void 0)}),X=()=>{let c=[];return y.hasPoint(f)&&c.push(["Point selection","click to select a point; hold shift for multi-select"]),y.hasInterval(f)&&c.push(["Interval selection","click and drag to select an interval"]),y.hasLegend(f)&&c.push(["Legend selection","click to select a legend item; hold shift for multi-select"]),y.hasPanZoom(f)&&c.push(["Pan","hold the meta key and drag"],["Zoom","hold the meta key and scroll"]),c.length===0?null:(0,d.jsx)(st,{delayDuration:300,side:"left",content:(0,d.jsx)("div",{className:"text-xs flex flex-col",children:c.map((g,b)=>(0,d.jsxs)("div",{children:[(0,d.jsxs)("span",{className:"font-bold tracking-wide",children:[g[0],":"]})," ",g[1]]},b))}),children:(0,d.jsx)(lt,{className:"absolute bottom-1 right-0 m-2 h-4 w-4 cursor-help text-muted-foreground hover:text-foreground"})})},A=ft({ref:l,spec:p,options:{theme:o==="dark"?"dark":void 0,actions:v,mode:"vega-lite",tooltip:at.call,renderer:"canvas"},onError:Q,onEmbed:U});return(0,x.useEffect)(()=>(I.forEach(({signalName:c,handler:g})=>{try{A==null||A.view.addSignalListener(c,g)}catch(b){_.error(b)}}),()=>{I.forEach(({signalName:c,handler:g})=>{try{A==null||A.view.removeSignalListener(c,g)}catch(b){_.error(b)}})}),[A,I]),(0,d.jsxs)(d.Fragment,{children:[s&&(0,d.jsxs)(ht,{variant:"destructive",children:[(0,d.jsx)(dt,{children:s.message}),(0,d.jsx)("div",{className:"text-md",children:s.stack})]}),(0,d.jsxs)("div",{className:"relative",onPointerDown:ot.stopPropagation(),children:[(0,d.jsx)("div",{ref:l}),X()]})]})};function It(t){return t instanceof Set?[...t]:t}function Ct(t){return Array.isArray(t)?t.map(n=>n instanceof Date&&mt(n)?new Date(n).getTime():n):t}var Et=Nt;export{Et as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as V}from"./chunk-LvLJmgfZ.js";import{t as B}from"./react-BGmjiNul.js";import{t as G}from"./compiler-runtime-DeeZ7FnK.js";import{t as H}from"./jsx-runtime-DN_bIXfG.js";import{t as W}from"./button-
|
|
1
|
+
import{s as V}from"./chunk-LvLJmgfZ.js";import{t as B}from"./react-BGmjiNul.js";import{t as G}from"./compiler-runtime-DeeZ7FnK.js";import{t as H}from"./jsx-runtime-DN_bIXfG.js";import{t as W}from"./button-B8cGZzP5.js";import{r as I}from"./requests-C0HaHO6a.js";import{c as J,i as O,n as Q,s as U,t as X}from"./select-D9lTzMzP.js";import{r as D}from"./input-B80Yt1uu.js";import{t as E}from"./use-toast-Bzf3rpev.js";import{a as Z,c as $,i as ee,n as te,r as re}from"./dialog-CF5DtF1E.js";import{t as ae}from"./links-DNmjkr65.js";import{t as P}from"./label-CNZLffHW.js";import{r as L}from"./field-Clr_fqUr.js";var oe=G(),T=V(B(),1),t=V(H(),1);function ne(a){return a.sort((e,r)=>e.provider==="env"?1:r.provider==="env"?-1:0)}const le=a=>{let e=(0,oe.c)(43),{providerNames:r,onClose:A,onSuccess:F}=a,{writeSecret:Y}=I(),[o,M]=T.useState(""),[l,R]=T.useState(""),[n,z]=T.useState(r[0]),g;e[0]!==o||e[1]!==n||e[2]!==F||e[3]!==l||e[4]!==Y?(g=async s=>{if(s.preventDefault(),!n){E({title:"Error",description:"No location selected for the secret.",variant:"danger"});return}if(!o||!l||!n){E({title:"Error",description:"Please fill in all fields.",variant:"danger"});return}try{await Y({key:o,value:l,provider:"dotenv",name:n}),E({title:"Secret created",description:"The secret has been created successfully."}),F(o)}catch{E({title:"Error",description:"Failed to create secret. Please try again.",variant:"danger"})}},e[0]=o,e[1]=n,e[2]=F,e[3]=l,e[4]=Y,e[5]=g):g=e[5];let q=g,j;e[6]===Symbol.for("react.memo_cache_sentinel")?(j=(0,t.jsxs)(Z,{children:[(0,t.jsx)($,{children:"Add Secret"}),(0,t.jsx)(re,{children:"Add a new secret to your environment variables."})]}),e[6]=j):j=e[6];let y;e[7]===Symbol.for("react.memo_cache_sentinel")?(y=(0,t.jsx)(P,{htmlFor:"key",children:"Key"}),e[7]=y):y=e[7];let S;e[8]===Symbol.for("react.memo_cache_sentinel")?(S=s=>{M(se(s.target.value))},e[8]=S):S=e[8];let i;e[9]===o?i=e[10]:(i=(0,t.jsxs)("div",{className:"grid gap-2",children:[y,(0,t.jsx)(D,{id:"key",value:o,onChange:S,placeholder:"MY_SECRET_KEY",required:!0})]}),e[9]=o,e[10]=i);let _;e[11]===Symbol.for("react.memo_cache_sentinel")?(_=(0,t.jsx)(P,{htmlFor:"value",children:"Value"}),e[11]=_):_=e[11];let b;e[12]===Symbol.for("react.memo_cache_sentinel")?(b=s=>R(s.target.value),e[12]=b):b=e[12];let c;e[13]===l?c=e[14]:(c=(0,t.jsx)(D,{id:"value",type:"password",value:l,onChange:b,required:!0,autoComplete:"off"}),e[13]=l,e[14]=c);let C;e[15]===Symbol.for("react.memo_cache_sentinel")?(C=ie()&&(0,t.jsx)(L,{children:"Note: You are sending this key over http."}),e[15]=C):C=e[15];let d;e[16]===c?d=e[17]:(d=(0,t.jsxs)("div",{className:"grid gap-2",children:[_,c,C]}),e[16]=c,e[17]=d);let N;e[18]===Symbol.for("react.memo_cache_sentinel")?(N=(0,t.jsx)(P,{htmlFor:"location",children:"Location"}),e[18]=N):N=e[18];let m;e[19]===r.length?m=e[20]:(m=r.length===0&&(0,t.jsx)("p",{className:"text-sm text-muted-foreground",children:"No dotenv locations configured."}),e[19]=r.length,e[20]=m);let h;e[21]!==n||e[22]!==r?(h=r.length>0&&(0,t.jsxs)(X,{value:n,onValueChange:s=>z(s),children:[(0,t.jsx)(U,{children:(0,t.jsx)(J,{placeholder:"Select a provider"})}),(0,t.jsx)(Q,{children:r.map(ce)})]}),e[21]=n,e[22]=r,e[23]=h):h=e[23];let k;e[24]===Symbol.for("react.memo_cache_sentinel")?(k=(0,t.jsxs)(L,{children:["You can configure the location by setting the"," ",(0,t.jsx)(ae,{href:"https://links.marimo.app/dotenv",children:"dotenv configuration"}),"."]}),e[24]=k):k=e[24];let p;e[25]!==m||e[26]!==h?(p=(0,t.jsxs)("div",{className:"grid gap-2",children:[N,m,h,k]}),e[25]=m,e[26]=h,e[27]=p):p=e[27];let u;e[28]!==d||e[29]!==p||e[30]!==i?(u=(0,t.jsxs)("div",{className:"grid gap-4 py-4",children:[i,d,p]}),e[28]=d,e[29]=p,e[30]=i,e[31]=u):u=e[31];let f;e[32]===A?f=e[33]:(f=(0,t.jsx)(W,{type:"button",variant:"outline",onClick:A,children:"Cancel"}),e[32]=A,e[33]=f);let K=!o||!l||!n,v;e[34]===K?v=e[35]:(v=(0,t.jsx)(W,{type:"submit",disabled:K,children:"Add Secret"}),e[34]=K,e[35]=v);let x;e[36]!==f||e[37]!==v?(x=(0,t.jsxs)(ee,{children:[f,v]}),e[36]=f,e[37]=v,e[38]=x):x=e[38];let w;return e[39]!==q||e[40]!==u||e[41]!==x?(w=(0,t.jsx)(te,{children:(0,t.jsxs)("form",{onSubmit:q,children:[j,u,x]})}),e[39]=q,e[40]=u,e[41]=x,e[42]=w):w=e[42],w};function se(a){return a.replaceAll(/\W/g,"_")}function ie(){return window.location.href.startsWith("http://")}function ce(a){return(0,t.jsx)(O,{value:a,children:a},a)}export{ne as n,le as t};
|