@marimo-team/frontend 0.21.1-dev17 → 0.21.1-dev21
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-CoejXnCc.js → CellStatus-CDSBsjjF.js} +1 -1
- package/dist/assets/{Combination-CBJmtdux.js → Combination-Cs9nbinQ.js} +1 -1
- package/dist/assets/{ConnectedDataExplorerComponent-DsPvYWwS.js → ConnectedDataExplorerComponent-Buaffg3u.js} +1 -1
- package/dist/assets/{ErrorBoundary-H5EQrcAX.js → ErrorBoundary-Ba0LbbH4.js} +1 -1
- package/dist/assets/{ImperativeModal-CDxa8mJa.js → ImperativeModal-qEtcJ95s.js} +1 -1
- package/dist/assets/{JsonOutput-CBK4dhVh.js → JsonOutput-DKXKGKvX.js} +5 -5
- package/dist/assets/{LazyAnyLanguageCodeMirror-CrcxjfJR.js → LazyAnyLanguageCodeMirror-m8w66E4s.js} +2 -2
- package/dist/assets/{MarimoErrorOutput-B0nc63rx.js → MarimoErrorOutput-az74f3Mp.js} +5 -5
- package/dist/assets/{RenderHTML-Bp9XY06U.js → RenderHTML-DJ8khuob.js} +1 -1
- package/dist/assets/{add-cell-with-ai-CrnYAxuA.js → add-cell-with-ai-DUn4LN4W.js} +9 -9
- package/dist/assets/{add-connection-dialog-I31C6j-5.js → add-connection-dialog-CBz0AUVX.js} +23 -23
- package/dist/assets/{agent-panel-ufAvSbof.js → agent-panel-u83dsDsM.js} +3 -3
- package/dist/assets/{ai-model-dropdown-BYDC_z7s.js → ai-model-dropdown-DPTa_EpU.js} +4 -4
- package/dist/assets/{alert-dialog-B31Yst9T.js → alert-dialog-9WfvUF7e.js} +1 -1
- package/dist/assets/{any-language-editor-BQW3AtUK.js → any-language-editor-DwQMnAM3.js} +1 -1
- package/dist/assets/{app-config-button-CRfW3S6Z.js → app-config-button-rDu-lCIB.js} +1 -1
- package/dist/assets/{assertNever-CTRGz-ul.js → assertNever-DWSyoPEi.js} +1 -1
- package/dist/assets/{azure-q5TZ9bt0.js → azure-BTXHztTw.js} +1 -1
- package/dist/assets/{button-BZAv3veu.js → button-Ej3vmCIF.js} +1 -1
- package/dist/assets/{cache-panel-BPbLoq59.js → cache-panel-qIxnndwr.js} +1 -1
- package/dist/assets/{capabilities-B1-dYWS8.js → capabilities-D3x_db9Y.js} +1 -1
- package/dist/assets/{capitalize-DcpkQwJe.js → capitalize-BfkXNxmI.js} +1 -1
- package/dist/assets/{cell-editor-I71mfVcF.js → cell-editor-DX7IcqNr.js} +13 -13
- package/dist/assets/cell-link-Q_UEP94Z.js +1 -0
- package/dist/assets/{cells-Dqou-uie.js → cells-fq1RMGX_.js} +53 -53
- package/dist/assets/{chat-display-Vedn01P6.js → chat-display-D_Fuuy6r.js} +1 -1
- package/dist/assets/{chat-panel-udyCNql9.js → chat-panel-BO-JoQSp.js} +2 -2
- package/dist/assets/{column-preview-DPhs4evg.js → column-preview-WsubyItX.js} +1 -1
- package/dist/assets/{command-palette-Bgqtu-pE.js → command-palette-Bez4BqJF.js} +1 -1
- package/dist/assets/{command-Ckfx4w5C.js → command-rfxSsiHU.js} +1 -1
- package/dist/assets/{common-DMx0N5jj.js → common-BYwO983A.js} +1 -1
- package/dist/assets/{components-Bgj5U8rZ.js → components-Bpgzv_5_.js} +1 -1
- package/dist/assets/components-Ozq0825a.js +1 -0
- package/dist/assets/{config-DeEqZTX7.js → config-3Aq84phF.js} +1 -1
- package/dist/assets/{context-aware-panel-TU7i7Ais.js → context-aware-panel-CfsfBlhO.js} +2 -2
- package/dist/assets/{copy-B0pTwxmU.js → copy-YwM0Pd7v.js} +1 -1
- package/dist/assets/{copy-icon-Ditn6lfU.js → copy-icon-BgmMM9Zg.js} +1 -1
- package/dist/assets/{createReducer-DgaMD0B6.js → createReducer-Drh7NmIR.js} +1 -1
- package/dist/assets/{datasource-Cn-Wy4lo.js → datasource-F9sJtuof.js} +2 -2
- package/dist/assets/{dates-BcvJrESI.js → dates-CHaNfieI.js} +1 -1
- package/dist/assets/{dependency-graph-panel-Dd_ypMAw.js → dependency-graph-panel-AOBcX2tP.js} +4 -4
- package/dist/assets/{dialog-CyL4o0mA.js → dialog-CVN1lcMF.js} +1 -1
- package/dist/assets/{dist-D7GD2EM4.js → dist-BhNN2V5a.js} +1 -1
- package/dist/assets/{dist-D98wU_Qc.js → dist-DJBpXGro.js} +1 -1
- package/dist/assets/documentation-panel-D28MpqbI.js +1 -0
- package/dist/assets/{download-D6Fv1GMQ.js → download-B9_ToVd4.js} +3 -3
- package/dist/assets/{dropdown-menu-CJ-Wwa2I.js → dropdown-menu-DdPu5Kfu.js} +1 -1
- package/dist/assets/{edit-page-DmVjpKhV.js → edit-page-otS-QvnC.js} +7 -7
- package/dist/assets/{error-banner-DQBz1e-2.js → error-banner-BRG6IPhC.js} +1 -1
- package/dist/assets/{error-panel-BfF_Pl3q.js → error-panel-RRoj_iOR.js} +1 -1
- package/dist/assets/{es-997LzX0P.js → es-CzkousWe.js} +1 -1
- package/dist/assets/{field-qoWy8wEy.js → field-B1jGbQlH.js} +1 -1
- package/dist/assets/{file-explorer-panel-C6RCpRgm.js → file-explorer-panel-CB8vF5ob.js} +3 -3
- package/dist/assets/{file-icons-0zZkfGbI.js → file-icons-CWLHDa1J.js} +1 -1
- package/dist/assets/{floating-outline-CNejeNGC.js → floating-outline-BvQKiC0F.js} +1 -1
- package/dist/assets/{focus-CQRBseis.js → focus-DYwTiH9-.js} +1 -1
- package/dist/assets/{form-B9Fj5Rl-.js → form-CrQYrsUC.js} +2 -2
- package/dist/assets/{formats-DzzQnJYt.js → formats-rhOJovGE.js} +1 -1
- package/dist/assets/{formatting-IErTLHRl.js → formatting-B4ZCH3ol.js} +1 -1
- package/dist/assets/{gallery-page-CzYOKRSH.js → gallery-page-eRea0yic.js} +1 -1
- package/dist/assets/{glide-data-editor-NQ4lbZ3N.js → glide-data-editor-xt5xNZeV.js} +1 -1
- package/dist/assets/{globals-DE7Q2ffe.js → globals-BsV5fVR-.js} +1 -1
- package/dist/assets/{home-page-C8mwmLAs.js → home-page-itW0tRmv.js} +2 -2
- package/dist/assets/{hooks-BjjG_ojV.js → hooks-CHx5dUUq.js} +1 -1
- package/dist/assets/{html-to-image-BFwmkFZ4.js → html-to-image-BnSc-Wa0.js} +1 -1
- package/dist/assets/{index-CNvKxpKE.js → index-0n92c_W7.js} +10 -10
- package/dist/assets/{input-BRZ8bt6P.js → input-CUwqpKjd.js} +1 -1
- package/dist/assets/{kiosk-mode-BO-KqM9l.js → kiosk-mode-DNjEnIWb.js} +1 -1
- package/dist/assets/{label-SLjr8zzy.js → label-TNNaT1M9.js} +1 -1
- package/dist/assets/{layout-pYw8vaT6.js → layout-CwFtCyW8.js} +4 -4
- package/dist/assets/{links-D1lqztbf.js → links-CIQwYQ48.js} +1 -1
- package/dist/assets/{logs-panel-BebwAaGv.js → logs-panel-BU1tNEVc.js} +1 -1
- package/dist/assets/{maps-CqKCrVZ8.js → maps-OKerBHH8.js} +1 -1
- package/dist/assets/{markdown-renderer-CdEqa6lQ.js → markdown-renderer-MR9df58W.js} +3 -3
- package/dist/assets/{menu-items-Z4F08mfP.js → menu-items-UxKrm8hS.js} +1 -1
- package/dist/assets/{mermaid-DkQrVBDR.js → mermaid-Djr3jUAB.js} +1 -1
- package/dist/assets/{mode-DSINUCzY.js → mode-AcL8c6qH.js} +1 -1
- package/dist/assets/{multi-map-CJMleYLX.js → multi-map-Pp1P2DOX.js} +1 -1
- package/dist/assets/{name-cell-input-DaDgZhjE.js → name-cell-input-DVFEv_aO.js} +1 -1
- package/dist/assets/{numbers-aIvy9Kr7.js → numbers-CYnquDho.js} +1 -1
- package/dist/assets/{outline-panel-DCpOiLnR.js → outline-panel-CP0oIuiU.js} +1 -1
- package/dist/assets/{packages-panel-kOdMspq6.js → packages-panel-CzRELimG.js} +1 -1
- package/dist/assets/panels-wTweRyIv.js +1 -0
- package/dist/assets/{popover-Du6bDNYH.js → popover-BPGG2gPG.js} +1 -1
- package/dist/assets/process-output-CTVsT--B.js +1 -0
- package/dist/assets/{readonly-python-code-CysvH2Zj.js → readonly-python-code-DH-1xZGq.js} +1 -1
- package/dist/assets/{renderShortcut-Bgu3XVfT.js → renderShortcut-CnD1Dah5.js} +1 -1
- package/dist/assets/{run-page-CNdaj2P8.js → run-page-FCvGnICa.js} +1 -1
- package/dist/assets/{runs-DZ_uu7bP.js → runs-Bhy0tbWr.js} +1 -1
- package/dist/assets/scratchpad-panel-k9lrm-rC.js +1 -0
- package/dist/assets/{secrets-panel-Ckqi3z-M.js → secrets-panel-B1Z-6dmz.js} +1 -1
- package/dist/assets/{select-Ch6m1k2G.js → select-CxT2Geqr.js} +1 -1
- package/dist/assets/{session-CXChHxAw.js → session-BrEm7qNv.js} +1 -1
- package/dist/assets/{session-panel-BACIy3wf.js → session-panel-WhN0qilM.js} +1 -1
- package/dist/assets/{share-BYioqUE0.js → share-BdH_5I58.js} +1 -1
- package/dist/assets/{slides-component-y5hJNJFx.js → slides-component-Brm_TS4x.js} +1 -1
- package/dist/assets/snippets-panel-BCDHUuku.js +1 -0
- package/dist/assets/{spec-CYMZZDXr.js → spec-DbmSqx09.js} +1 -1
- package/dist/assets/{state-BqEQgvo3.js → state-3V5UxC3B.js} +1 -1
- package/dist/assets/{state-D59a73JQ.js → state-CBmCYWFH.js} +1 -1
- package/dist/assets/{state-Y7yVqxf_.js → state-Ce7CVShi.js} +1 -1
- package/dist/assets/{switch-JycgoJcn.js → switch-CVKxYu_0.js} +1 -1
- package/dist/assets/{terminal-vzbCncOF.js → terminal-Cr7wbEjz.js} +1 -1
- package/dist/assets/{toggle-BiIJZR6-.js → toggle-RCwU-rnE.js} +1 -1
- package/dist/assets/{tooltip-CNmaER6z.js → tooltip-D9723Brr.js} +1 -1
- package/dist/assets/{tracing-1AoHNFA-.js → tracing-DUVd0jtl.js} +1 -1
- package/dist/assets/{tracing-panel-CrlCrmHo.js → tracing-panel-CuTxPn_x.js} +2 -2
- package/dist/assets/{tree-4weMpXk4.js → tree-Ch2-GuhG.js} +1 -1
- package/dist/assets/useAddCell-YC7rpcmD.js +1 -0
- package/dist/assets/{useBoolean-Cm61eWz0.js → useBoolean-m1e6E3Ao.js} +1 -1
- package/dist/assets/useCellActionButton-GUb2fXU8.js +1 -0
- package/dist/assets/{useDeleteCell-DSpj4wDu.js → useDeleteCell-DRUDRiy0.js} +1 -1
- package/dist/assets/{useDependencyPanelTab-1iAP2AMB.js → useDependencyPanelTab-nFVMlEx0.js} +1 -1
- package/dist/assets/useEventListener-Dy81QR4n.js +1 -0
- package/dist/assets/{useIframeCapabilities-DDlGrM1g.js → useIframeCapabilities-DTN9kFDq.js} +1 -1
- package/dist/assets/{useInstallPackage-CIJ1-EHx.js → useInstallPackage-C9V-on2J.js} +1 -1
- package/dist/assets/{useInterval-D7ibzbpc.js → useInterval-BJucVdV-.js} +1 -1
- package/dist/assets/{useLifecycle-CWjBWFMI.js → useLifecycle-DA9DjSPo.js} +1 -1
- package/dist/assets/{useNotebookActions-m1fxrzno.js → useNotebookActions-ChLHy-0O.js} +1 -1
- package/dist/assets/useRunCells-5m6jCnyo.js +1 -0
- package/dist/assets/useSplitCell-DGD9smMq.js +1 -0
- package/dist/assets/{useTheme-CM9j8dgy.js → useTheme-BYXBU1of.js} +1 -1
- package/dist/assets/{utils-BuPoTKhl.js → utils-CdjCA1J8.js} +1 -1
- package/dist/assets/{utils-BvPM6Bro.js → utils-tNbLd14P.js} +1 -1
- package/dist/assets/{vega-component-S1h0g70Q.js → vega-component-CRbeDmeM.js} +1 -1
- package/dist/assets/{write-secret-modal-VGPgwkTg.js → write-secret-modal-BCvuRAFb.js} +1 -1
- package/dist/index.html +75 -75
- package/package.json +1 -1
- package/src/components/editor/actions/useCellActionButton.tsx +38 -29
- package/src/components/editor/cell/code/cell-editor.tsx +9 -0
- package/src/components/editor/header/status.tsx +19 -11
- package/src/core/cells/cells.ts +6 -0
- package/src/core/cells/utils.ts +1 -0
- package/src/core/codemirror/__tests__/setup.test.ts +1 -0
- package/src/core/codemirror/cells/state.ts +1 -0
- package/src/core/codemirror/extensions.ts +20 -0
- package/src/core/codemirror/language/utils.ts +16 -1
- package/src/core/hotkeys/hotkeys.ts +8 -0
- package/dist/assets/cell-link-DWQZUFhO.js +0 -1
- package/dist/assets/components-CHO2M34L.js +0 -1
- package/dist/assets/documentation-panel-C1QC0dL_.js +0 -1
- package/dist/assets/panels-DVL7ce_r.js +0 -1
- package/dist/assets/process-output-4ypD4fg7.js +0 -1
- package/dist/assets/scratchpad-panel-C1sDAoTh.js +0 -1
- package/dist/assets/snippets-panel-BjUFMiXc.js +0 -1
- package/dist/assets/useAddCell-BSbQWv3q.js +0 -1
- package/dist/assets/useCellActionButton-DpdThmJR.js +0 -1
- package/dist/assets/useEventListener-BGihH8bs.js +0 -1
- package/dist/assets/useRunCells-BSsgvk4y.js +0 -1
- package/dist/assets/useSplitCell-Ct7RykE3.js +0 -1
package/dist/index.html
CHANGED
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
<marimo-server-token data-token="{{ server_token }}" hidden></marimo-server-token>
|
|
67
67
|
<!-- /TODO -->
|
|
68
68
|
<title>{{ title }}</title>
|
|
69
|
-
<script type="module" crossorigin src="./assets/index-
|
|
69
|
+
<script type="module" crossorigin src="./assets/index-0n92c_W7.js"></script>
|
|
70
70
|
<link rel="modulepreload" crossorigin href="./assets/preload-helper-BW0IMuFq.js">
|
|
71
71
|
<link rel="modulepreload" crossorigin href="./assets/clsx-BDxNtGmi.js">
|
|
72
72
|
<link rel="modulepreload" crossorigin href="./assets/cn-BoaCR37F.js">
|
|
@@ -75,17 +75,17 @@
|
|
|
75
75
|
<link rel="modulepreload" crossorigin href="./assets/compiler-runtime-B3qBwwSJ.js">
|
|
76
76
|
<link rel="modulepreload" crossorigin href="./assets/jsx-runtime-icT_Ltz2.js">
|
|
77
77
|
<link rel="modulepreload" crossorigin href="./assets/badge-hTpPIsMT.js">
|
|
78
|
-
<link rel="modulepreload" crossorigin href="./assets/useEventListener-
|
|
79
|
-
<link rel="modulepreload" crossorigin href="./assets/button-
|
|
78
|
+
<link rel="modulepreload" crossorigin href="./assets/useEventListener-Dy81QR4n.js">
|
|
79
|
+
<link rel="modulepreload" crossorigin href="./assets/button-Ej3vmCIF.js">
|
|
80
80
|
<link rel="modulepreload" crossorigin href="./assets/react-dom-CSu739Rf.js">
|
|
81
|
-
<link rel="modulepreload" crossorigin href="./assets/Combination-
|
|
82
|
-
<link rel="modulepreload" crossorigin href="./assets/menu-items-
|
|
83
|
-
<link rel="modulepreload" crossorigin href="./assets/dist-
|
|
81
|
+
<link rel="modulepreload" crossorigin href="./assets/Combination-Cs9nbinQ.js">
|
|
82
|
+
<link rel="modulepreload" crossorigin href="./assets/menu-items-UxKrm8hS.js">
|
|
83
|
+
<link rel="modulepreload" crossorigin href="./assets/dist-DJBpXGro.js">
|
|
84
84
|
<link rel="modulepreload" crossorigin href="./assets/createLucideIcon-Cm-Z7dYr.js">
|
|
85
85
|
<link rel="modulepreload" crossorigin href="./assets/check-BE0hEwVo.js">
|
|
86
86
|
<link rel="modulepreload" crossorigin href="./assets/x-BI1M8X_v.js">
|
|
87
|
-
<link rel="modulepreload" crossorigin href="./assets/select-
|
|
88
|
-
<link rel="modulepreload" crossorigin href="./assets/tooltip-
|
|
87
|
+
<link rel="modulepreload" crossorigin href="./assets/select-CxT2Geqr.js">
|
|
88
|
+
<link rel="modulepreload" crossorigin href="./assets/tooltip-D9723Brr.js">
|
|
89
89
|
<link rel="modulepreload" crossorigin href="./assets/use-toast-Hc8CXlvz.js">
|
|
90
90
|
<link rel="modulepreload" crossorigin href="./assets/_Uint8Array-C0aUZfE0.js">
|
|
91
91
|
<link rel="modulepreload" crossorigin href="./assets/_baseIsEqual-EYp9AUJI.js">
|
|
@@ -94,26 +94,26 @@
|
|
|
94
94
|
<link rel="modulepreload" crossorigin href="./assets/isArrayLikeObject-Dx6-QZGQ.js">
|
|
95
95
|
<link rel="modulepreload" crossorigin href="./assets/merge-CfcLlFFp.js">
|
|
96
96
|
<link rel="modulepreload" crossorigin href="./assets/zod-H_cgTO0M.js">
|
|
97
|
-
<link rel="modulepreload" crossorigin href="./assets/utils-
|
|
97
|
+
<link rel="modulepreload" crossorigin href="./assets/utils-tNbLd14P.js">
|
|
98
98
|
<link rel="modulepreload" crossorigin href="./assets/Deferred-BMfCOLaw.js">
|
|
99
99
|
<link rel="modulepreload" crossorigin href="./assets/uuid-ClFZlR7U.js">
|
|
100
100
|
<link rel="modulepreload" crossorigin href="./assets/DeferredRequestRegistry-O6RDJKs0.js">
|
|
101
101
|
<link rel="modulepreload" crossorigin href="./assets/constants-Rz_lD4HK.js">
|
|
102
|
-
<link rel="modulepreload" crossorigin href="./assets/session-
|
|
103
|
-
<link rel="modulepreload" crossorigin href="./assets/config-
|
|
102
|
+
<link rel="modulepreload" crossorigin href="./assets/session-BrEm7qNv.js">
|
|
103
|
+
<link rel="modulepreload" crossorigin href="./assets/config-3Aq84phF.js">
|
|
104
104
|
<link rel="modulepreload" crossorigin href="./assets/requests-Bgjtqo_1.js">
|
|
105
105
|
<link rel="modulepreload" crossorigin href="./assets/isSymbol-CiGN2w5X.js">
|
|
106
106
|
<link rel="modulepreload" crossorigin href="./assets/toString-lmrYznmk.js">
|
|
107
107
|
<link rel="modulepreload" crossorigin href="./assets/_baseSlice-39dTX4Wi.js">
|
|
108
108
|
<link rel="modulepreload" crossorigin href="./assets/_hasUnicode-QS_pSfjY.js">
|
|
109
|
-
<link rel="modulepreload" crossorigin href="./assets/assertNever-
|
|
109
|
+
<link rel="modulepreload" crossorigin href="./assets/assertNever-DWSyoPEi.js">
|
|
110
110
|
<link rel="modulepreload" crossorigin href="./assets/_arrayReduce-BKEr35uH.js">
|
|
111
|
-
<link rel="modulepreload" crossorigin href="./assets/useLifecycle-
|
|
111
|
+
<link rel="modulepreload" crossorigin href="./assets/useLifecycle-DA9DjSPo.js">
|
|
112
112
|
<link rel="modulepreload" crossorigin href="./assets/useNonce-BtW-rR_1.js">
|
|
113
|
-
<link rel="modulepreload" crossorigin href="./assets/useTheme-
|
|
113
|
+
<link rel="modulepreload" crossorigin href="./assets/useTheme-BYXBU1of.js">
|
|
114
114
|
<link rel="modulepreload" crossorigin href="./assets/once-CJOnx12W.js">
|
|
115
|
-
<link rel="modulepreload" crossorigin href="./assets/capabilities-
|
|
116
|
-
<link rel="modulepreload" crossorigin href="./assets/createReducer-
|
|
115
|
+
<link rel="modulepreload" crossorigin href="./assets/capabilities-D3x_db9Y.js">
|
|
116
|
+
<link rel="modulepreload" crossorigin href="./assets/createReducer-Drh7NmIR.js">
|
|
117
117
|
<link rel="modulepreload" crossorigin href="./assets/paths-D2lG83Oh.js">
|
|
118
118
|
<link rel="modulepreload" crossorigin href="./assets/dist-B_cxg-E4.js">
|
|
119
119
|
<link rel="modulepreload" crossorigin href="./assets/dist-D0Vj4Kqc.js">
|
|
@@ -134,119 +134,119 @@
|
|
|
134
134
|
<link rel="modulepreload" crossorigin href="./assets/toInteger-CO3ppIfA.js">
|
|
135
135
|
<link rel="modulepreload" crossorigin href="./assets/database-zap-DTWCDKdn.js">
|
|
136
136
|
<link rel="modulepreload" crossorigin href="./assets/main-DrBRErTM.js">
|
|
137
|
-
<link rel="modulepreload" crossorigin href="./assets/cells-
|
|
137
|
+
<link rel="modulepreload" crossorigin href="./assets/cells-fq1RMGX_.js">
|
|
138
138
|
<link rel="modulepreload" crossorigin href="./assets/spinner-C5JoisA7.js">
|
|
139
139
|
<link rel="modulepreload" crossorigin href="./assets/chevron-right-D0GQBpTb.js">
|
|
140
|
-
<link rel="modulepreload" crossorigin href="./assets/dropdown-menu-
|
|
140
|
+
<link rel="modulepreload" crossorigin href="./assets/dropdown-menu-DdPu5Kfu.js">
|
|
141
141
|
<link rel="modulepreload" crossorigin href="./assets/kbd-DvKpAc6K.js">
|
|
142
|
-
<link rel="modulepreload" crossorigin href="./assets/renderShortcut-
|
|
143
|
-
<link rel="modulepreload" crossorigin href="./assets/multi-map-
|
|
142
|
+
<link rel="modulepreload" crossorigin href="./assets/renderShortcut-CnD1Dah5.js">
|
|
143
|
+
<link rel="modulepreload" crossorigin href="./assets/multi-map-Pp1P2DOX.js">
|
|
144
144
|
<link rel="modulepreload" crossorigin href="./assets/alert-OQZHipbB.js">
|
|
145
145
|
<link rel="modulepreload" crossorigin href="./assets/card-C-c-4jyF.js">
|
|
146
|
-
<link rel="modulepreload" crossorigin href="./assets/alert-dialog-
|
|
147
|
-
<link rel="modulepreload" crossorigin href="./assets/dialog-
|
|
148
|
-
<link rel="modulepreload" crossorigin href="./assets/dist-
|
|
149
|
-
<link rel="modulepreload" crossorigin href="./assets/label-
|
|
146
|
+
<link rel="modulepreload" crossorigin href="./assets/alert-dialog-9WfvUF7e.js">
|
|
147
|
+
<link rel="modulepreload" crossorigin href="./assets/dialog-CVN1lcMF.js">
|
|
148
|
+
<link rel="modulepreload" crossorigin href="./assets/dist-BhNN2V5a.js">
|
|
149
|
+
<link rel="modulepreload" crossorigin href="./assets/label-TNNaT1M9.js">
|
|
150
150
|
<link rel="modulepreload" crossorigin href="./assets/useDebounce-B0dx2Gp0.js">
|
|
151
|
-
<link rel="modulepreload" crossorigin href="./assets/azure-
|
|
152
|
-
<link rel="modulepreload" crossorigin href="./assets/numbers-
|
|
151
|
+
<link rel="modulepreload" crossorigin href="./assets/azure-BTXHztTw.js">
|
|
152
|
+
<link rel="modulepreload" crossorigin href="./assets/numbers-CYnquDho.js">
|
|
153
153
|
<link rel="modulepreload" crossorigin href="./assets/SSRProvider-DC7ElCZZ.js">
|
|
154
154
|
<link rel="modulepreload" crossorigin href="./assets/context-CIAP2NOh.js">
|
|
155
155
|
<link rel="modulepreload" crossorigin href="./assets/useNumberFormatter-DbDKSvEd.js">
|
|
156
156
|
<link rel="modulepreload" crossorigin href="./assets/usePress-BHGkpw8X.js">
|
|
157
|
-
<link rel="modulepreload" crossorigin href="./assets/input-
|
|
157
|
+
<link rel="modulepreload" crossorigin href="./assets/input-CUwqpKjd.js">
|
|
158
158
|
<link rel="modulepreload" crossorigin href="./assets/links-DzgPOFJ-.js">
|
|
159
|
-
<link rel="modulepreload" crossorigin href="./assets/popover-
|
|
160
|
-
<link rel="modulepreload" crossorigin href="./assets/switch-
|
|
159
|
+
<link rel="modulepreload" crossorigin href="./assets/popover-BPGG2gPG.js">
|
|
160
|
+
<link rel="modulepreload" crossorigin href="./assets/switch-CVKxYu_0.js">
|
|
161
161
|
<link rel="modulepreload" crossorigin href="./assets/table-BhH-Mm8O.js">
|
|
162
|
-
<link rel="modulepreload" crossorigin href="./assets/mode-
|
|
162
|
+
<link rel="modulepreload" crossorigin href="./assets/mode-AcL8c6qH.js">
|
|
163
163
|
<link rel="modulepreload" crossorigin href="./assets/useAsyncData-D-4ifFXh.js">
|
|
164
164
|
<link rel="modulepreload" crossorigin href="./assets/errors-Bfogio62.js">
|
|
165
|
-
<link rel="modulepreload" crossorigin href="./assets/error-banner-
|
|
166
|
-
<link rel="modulepreload" crossorigin href="./assets/copy-
|
|
165
|
+
<link rel="modulepreload" crossorigin href="./assets/error-banner-BRG6IPhC.js">
|
|
166
|
+
<link rel="modulepreload" crossorigin href="./assets/copy-YwM0Pd7v.js">
|
|
167
167
|
<link rel="modulepreload" crossorigin href="./assets/memoize-Bw1ifb7c.js">
|
|
168
168
|
<link rel="modulepreload" crossorigin href="./assets/get-DBdMgUNq.js">
|
|
169
|
-
<link rel="modulepreload" crossorigin href="./assets/capitalize-
|
|
169
|
+
<link rel="modulepreload" crossorigin href="./assets/capitalize-BfkXNxmI.js">
|
|
170
170
|
<link rel="modulepreload" crossorigin href="./assets/copy-CkudG0Ej.js">
|
|
171
171
|
<link rel="modulepreload" crossorigin href="./assets/plus-dVmh0yTy.js">
|
|
172
172
|
<link rel="modulepreload" crossorigin href="./assets/refresh-cw-CHAHPgkx.js">
|
|
173
173
|
<link rel="modulepreload" crossorigin href="./assets/trash-2-CAoNMkjq.js">
|
|
174
174
|
<link rel="modulepreload" crossorigin href="./assets/triangle-alert-qZo1ox6x.js">
|
|
175
|
-
<link rel="modulepreload" crossorigin href="./assets/ai-model-dropdown-
|
|
175
|
+
<link rel="modulepreload" crossorigin href="./assets/ai-model-dropdown-DPTa_EpU.js">
|
|
176
176
|
<link rel="modulepreload" crossorigin href="./assets/defaultLocale-OkOxlkkM.js">
|
|
177
177
|
<link rel="modulepreload" crossorigin href="./assets/precisionRound-BOmLQIKI.js">
|
|
178
178
|
<link rel="modulepreload" crossorigin href="./assets/defaultLocale-DK1MWd7f.js">
|
|
179
179
|
<link rel="modulepreload" crossorigin href="./assets/vega-loader.browser-CZV6_g2i.js">
|
|
180
|
-
<link rel="modulepreload" crossorigin href="./assets/utils-
|
|
181
|
-
<link rel="modulepreload" crossorigin href="./assets/ErrorBoundary-
|
|
182
|
-
<link rel="modulepreload" crossorigin href="./assets/useInstallPackage-
|
|
183
|
-
<link rel="modulepreload" crossorigin href="./assets/ImperativeModal-
|
|
184
|
-
<link rel="modulepreload" crossorigin href="./assets/cell-link-
|
|
185
|
-
<link rel="modulepreload" crossorigin href="./assets/datasource-
|
|
186
|
-
<link rel="modulepreload" crossorigin href="./assets/state-
|
|
187
|
-
<link rel="modulepreload" crossorigin href="./assets/MarimoErrorOutput-
|
|
188
|
-
<link rel="modulepreload" crossorigin href="./assets/copy-icon-
|
|
189
|
-
<link rel="modulepreload" crossorigin href="./assets/html-to-image-
|
|
190
|
-
<link rel="modulepreload" crossorigin href="./assets/focus-
|
|
191
|
-
<link rel="modulepreload" crossorigin href="./assets/LazyAnyLanguageCodeMirror-
|
|
180
|
+
<link rel="modulepreload" crossorigin href="./assets/utils-CdjCA1J8.js">
|
|
181
|
+
<link rel="modulepreload" crossorigin href="./assets/ErrorBoundary-Ba0LbbH4.js">
|
|
182
|
+
<link rel="modulepreload" crossorigin href="./assets/useInstallPackage-C9V-on2J.js">
|
|
183
|
+
<link rel="modulepreload" crossorigin href="./assets/ImperativeModal-qEtcJ95s.js">
|
|
184
|
+
<link rel="modulepreload" crossorigin href="./assets/cell-link-Q_UEP94Z.js">
|
|
185
|
+
<link rel="modulepreload" crossorigin href="./assets/datasource-F9sJtuof.js">
|
|
186
|
+
<link rel="modulepreload" crossorigin href="./assets/state-3V5UxC3B.js">
|
|
187
|
+
<link rel="modulepreload" crossorigin href="./assets/MarimoErrorOutput-az74f3Mp.js">
|
|
188
|
+
<link rel="modulepreload" crossorigin href="./assets/copy-icon-BgmMM9Zg.js">
|
|
189
|
+
<link rel="modulepreload" crossorigin href="./assets/html-to-image-BnSc-Wa0.js">
|
|
190
|
+
<link rel="modulepreload" crossorigin href="./assets/focus-DYwTiH9-.js">
|
|
191
|
+
<link rel="modulepreload" crossorigin href="./assets/LazyAnyLanguageCodeMirror-m8w66E4s.js">
|
|
192
192
|
<link rel="modulepreload" crossorigin href="./assets/chunk-5FQGJX7Z-CM1a_K7I.js">
|
|
193
193
|
<link rel="modulepreload" crossorigin href="./assets/katex-rvFxOCU-.js">
|
|
194
|
-
<link rel="modulepreload" crossorigin href="./assets/markdown-renderer-
|
|
195
|
-
<link rel="modulepreload" crossorigin href="./assets/command-
|
|
196
|
-
<link rel="modulepreload" crossorigin href="./assets/download-
|
|
197
|
-
<link rel="modulepreload" crossorigin href="./assets/useRunCells-
|
|
198
|
-
<link rel="modulepreload" crossorigin href="./assets/RenderHTML-
|
|
199
|
-
<link rel="modulepreload" crossorigin href="./assets/useIframeCapabilities-
|
|
200
|
-
<link rel="modulepreload" crossorigin href="./assets/formats-
|
|
194
|
+
<link rel="modulepreload" crossorigin href="./assets/markdown-renderer-MR9df58W.js">
|
|
195
|
+
<link rel="modulepreload" crossorigin href="./assets/command-rfxSsiHU.js">
|
|
196
|
+
<link rel="modulepreload" crossorigin href="./assets/download-B9_ToVd4.js">
|
|
197
|
+
<link rel="modulepreload" crossorigin href="./assets/useRunCells-5m6jCnyo.js">
|
|
198
|
+
<link rel="modulepreload" crossorigin href="./assets/RenderHTML-DJ8khuob.js">
|
|
199
|
+
<link rel="modulepreload" crossorigin href="./assets/useIframeCapabilities-DTN9kFDq.js">
|
|
200
|
+
<link rel="modulepreload" crossorigin href="./assets/formats-rhOJovGE.js">
|
|
201
201
|
<link rel="modulepreload" crossorigin href="./assets/en-US-BO8E69bZ.js">
|
|
202
202
|
<link rel="modulepreload" crossorigin href="./assets/isValid-BGe7pJXT.js">
|
|
203
|
-
<link rel="modulepreload" crossorigin href="./assets/dates-
|
|
204
|
-
<link rel="modulepreload" crossorigin href="./assets/maps-
|
|
203
|
+
<link rel="modulepreload" crossorigin href="./assets/dates-CHaNfieI.js">
|
|
204
|
+
<link rel="modulepreload" crossorigin href="./assets/maps-OKerBHH8.js">
|
|
205
205
|
<link rel="modulepreload" crossorigin href="./assets/extends-DRbCSry7.js">
|
|
206
206
|
<link rel="modulepreload" crossorigin href="./assets/emotion-is-prop-valid.esm-D1keIaYa.js">
|
|
207
207
|
<link rel="modulepreload" crossorigin href="./assets/useDateFormatter-CpE7XQLs.js">
|
|
208
208
|
<link rel="modulepreload" crossorigin href="./assets/range-CJeRXUtp.js">
|
|
209
209
|
<link rel="modulepreload" crossorigin href="./assets/table-BCnp9gKC.js">
|
|
210
|
-
<link rel="modulepreload" crossorigin href="./assets/JsonOutput-
|
|
211
|
-
<link rel="modulepreload" crossorigin href="./assets/useDeleteCell-
|
|
210
|
+
<link rel="modulepreload" crossorigin href="./assets/JsonOutput-DKXKGKvX.js">
|
|
211
|
+
<link rel="modulepreload" crossorigin href="./assets/useDeleteCell-DRUDRiy0.js">
|
|
212
212
|
<link rel="modulepreload" crossorigin href="./assets/icons-CrUXojcA.js">
|
|
213
|
-
<link rel="modulepreload" crossorigin href="./assets/process-output-
|
|
213
|
+
<link rel="modulepreload" crossorigin href="./assets/process-output-CTVsT--B.js">
|
|
214
214
|
<link rel="modulepreload" crossorigin href="./assets/blob-CObhN-9g.js">
|
|
215
215
|
<link rel="modulepreload" crossorigin href="./assets/objectWithoutPropertiesLoose-DP4vAkvg.js">
|
|
216
216
|
<link rel="modulepreload" crossorigin href="./assets/esm-CBkHtTOV.js">
|
|
217
217
|
<link rel="modulepreload" crossorigin href="./assets/file-DzHkbIdO.js">
|
|
218
218
|
<link rel="modulepreload" crossorigin href="./assets/image-DXfkah9d.js">
|
|
219
219
|
<link rel="modulepreload" crossorigin href="./assets/play-DKSqmedg.js">
|
|
220
|
-
<link rel="modulepreload" crossorigin href="./assets/add-cell-with-ai-
|
|
220
|
+
<link rel="modulepreload" crossorigin href="./assets/add-cell-with-ai-DUn4LN4W.js">
|
|
221
221
|
<link rel="modulepreload" crossorigin href="./assets/isEmpty-CfmnKtgL.js">
|
|
222
222
|
<link rel="modulepreload" crossorigin href="./assets/bot-message-square-CK6eoGWy.js">
|
|
223
|
-
<link rel="modulepreload" crossorigin href="./assets/chat-display-
|
|
223
|
+
<link rel="modulepreload" crossorigin href="./assets/chat-display-D_Fuuy6r.js">
|
|
224
224
|
<link rel="modulepreload" crossorigin href="./assets/chart-no-axes-column-DV8gdCvH.js">
|
|
225
225
|
<link rel="modulepreload" crossorigin href="./assets/square-function-B006EYFX.js">
|
|
226
|
-
<link rel="modulepreload" crossorigin href="./assets/spec-
|
|
226
|
+
<link rel="modulepreload" crossorigin href="./assets/spec-DbmSqx09.js">
|
|
227
227
|
<link rel="modulepreload" crossorigin href="./assets/ellipsis-vertical-CAB7tdza.js">
|
|
228
|
-
<link rel="modulepreload" crossorigin href="./assets/components-
|
|
229
|
-
<link rel="modulepreload" crossorigin href="./assets/column-preview-
|
|
230
|
-
<link rel="modulepreload" crossorigin href="./assets/toggle-
|
|
231
|
-
<link rel="modulepreload" crossorigin href="./assets/globals-
|
|
232
|
-
<link rel="modulepreload" crossorigin href="./assets/share-
|
|
228
|
+
<link rel="modulepreload" crossorigin href="./assets/components-Bpgzv_5_.js">
|
|
229
|
+
<link rel="modulepreload" crossorigin href="./assets/column-preview-WsubyItX.js">
|
|
230
|
+
<link rel="modulepreload" crossorigin href="./assets/toggle-RCwU-rnE.js">
|
|
231
|
+
<link rel="modulepreload" crossorigin href="./assets/globals-BsV5fVR-.js">
|
|
232
|
+
<link rel="modulepreload" crossorigin href="./assets/share-BdH_5I58.js">
|
|
233
233
|
<link rel="modulepreload" crossorigin href="./assets/_baseSet-D5BgdrnX.js">
|
|
234
234
|
<link rel="modulepreload" crossorigin href="./assets/react-resizable-panels.browser.esm-DDRqG5ui.js">
|
|
235
|
-
<link rel="modulepreload" crossorigin href="./assets/context-aware-panel-
|
|
236
|
-
<link rel="modulepreload" crossorigin href="./assets/floating-outline-
|
|
237
|
-
<link rel="modulepreload" crossorigin href="./assets/useAddCell-
|
|
235
|
+
<link rel="modulepreload" crossorigin href="./assets/context-aware-panel-CfsfBlhO.js">
|
|
236
|
+
<link rel="modulepreload" crossorigin href="./assets/floating-outline-BvQKiC0F.js">
|
|
237
|
+
<link rel="modulepreload" crossorigin href="./assets/useAddCell-YC7rpcmD.js">
|
|
238
238
|
<link rel="modulepreload" crossorigin href="./assets/eye-off-vwi9L975.js">
|
|
239
|
-
<link rel="modulepreload" crossorigin href="./assets/readonly-python-code-
|
|
239
|
+
<link rel="modulepreload" crossorigin href="./assets/readonly-python-code-DH-1xZGq.js">
|
|
240
240
|
<link rel="modulepreload" crossorigin href="./assets/file-headphone-B5q2Ow55.js">
|
|
241
|
-
<link rel="modulepreload" crossorigin href="./assets/file-icons-
|
|
241
|
+
<link rel="modulepreload" crossorigin href="./assets/file-icons-CWLHDa1J.js">
|
|
242
242
|
<link rel="modulepreload" crossorigin href="./assets/refresh-ccw-DLpfIr8v.js">
|
|
243
|
-
<link rel="modulepreload" crossorigin href="./assets/form-
|
|
244
|
-
<link rel="modulepreload" crossorigin href="./assets/field-
|
|
245
|
-
<link rel="modulepreload" crossorigin href="./assets/useBoolean-
|
|
243
|
+
<link rel="modulepreload" crossorigin href="./assets/form-CrQYrsUC.js">
|
|
244
|
+
<link rel="modulepreload" crossorigin href="./assets/field-B1jGbQlH.js">
|
|
245
|
+
<link rel="modulepreload" crossorigin href="./assets/useBoolean-m1e6E3Ao.js">
|
|
246
246
|
<link rel="modulepreload" crossorigin href="./assets/useDeepCompareMemoize-yyiB9aJX.js">
|
|
247
247
|
<link rel="modulepreload" crossorigin href="./assets/types-C1RN112u.js">
|
|
248
248
|
<link rel="modulepreload" crossorigin href="./assets/prop-types-RrUi-pOT.js">
|
|
249
|
-
<link rel="modulepreload" crossorigin href="./assets/es-
|
|
249
|
+
<link rel="modulepreload" crossorigin href="./assets/es-CzkousWe.js">
|
|
250
250
|
<link rel="modulepreload" crossorigin href="./assets/hasIn-Bx4-SO9M.js">
|
|
251
251
|
<link rel="modulepreload" crossorigin href="./assets/_baseFlatten-Be7p_si8.js">
|
|
252
252
|
<link rel="modulepreload" crossorigin href="./assets/_basePickBy-Ck7z0-tq.js">
|
package/package.json
CHANGED
|
@@ -41,7 +41,10 @@ import { hasOnlyOneCellAtom, useCellActions } from "@/core/cells/cells";
|
|
|
41
41
|
import { type CellId, SETUP_CELL_ID } from "@/core/cells/ids";
|
|
42
42
|
import type { CellData } from "@/core/cells/types";
|
|
43
43
|
import { formatEditorViews } from "@/core/codemirror/format";
|
|
44
|
-
import {
|
|
44
|
+
import {
|
|
45
|
+
getCurrentLanguageAdapter,
|
|
46
|
+
toggleToLanguage,
|
|
47
|
+
} from "@/core/codemirror/language/commands";
|
|
45
48
|
import { switchLanguage } from "@/core/codemirror/language/extension";
|
|
46
49
|
import { MARKDOWN_INITIAL_HIDE_CODE } from "@/core/codemirror/language/languages/markdown";
|
|
47
50
|
import {
|
|
@@ -235,35 +238,41 @@ export function useCellActionButtons({ cell, closePopover }: Props) {
|
|
|
235
238
|
},
|
|
236
239
|
hidden: isSetupCell,
|
|
237
240
|
},
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
241
|
+
// We need to check this here because the user may have toggled the language
|
|
242
|
+
getCurrentLanguageAdapter(getEditorView()) === "sql"
|
|
243
|
+
? {
|
|
244
|
+
icon: <PythonIcon />,
|
|
245
|
+
label: "View as Python",
|
|
246
|
+
hotkey: "cell.viewAsSQL",
|
|
247
|
+
handle: () => {
|
|
248
|
+
const editorView = getEditorView();
|
|
249
|
+
if (!editorView) {
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
252
|
+
toggleToLanguage(editorView, "python", { force: true });
|
|
253
|
+
},
|
|
254
|
+
hidden: isSetupCell,
|
|
245
255
|
}
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
},
|
|
256
|
+
: {
|
|
257
|
+
icon: <DatabaseIcon size={13} strokeWidth={1.5} />,
|
|
258
|
+
label: "Convert to SQL",
|
|
259
|
+
hotkey: "cell.viewAsSQL",
|
|
260
|
+
handle: () => {
|
|
261
|
+
const editorView = getEditorView();
|
|
262
|
+
if (!editorView) {
|
|
263
|
+
return;
|
|
264
|
+
}
|
|
265
|
+
maybeAddMarimoImport({
|
|
266
|
+
autoInstantiate,
|
|
267
|
+
createNewCell: createCell,
|
|
268
|
+
});
|
|
269
|
+
switchLanguage(editorView, {
|
|
270
|
+
language: "sql",
|
|
271
|
+
keepCodeAsIs: false,
|
|
272
|
+
});
|
|
273
|
+
},
|
|
274
|
+
hidden: isSetupCell,
|
|
275
|
+
},
|
|
267
276
|
],
|
|
268
277
|
|
|
269
278
|
// Movement
|
|
@@ -163,6 +163,13 @@ const CellEditorInternal = ({
|
|
|
163
163
|
}
|
|
164
164
|
});
|
|
165
165
|
|
|
166
|
+
const afterToggleSQL = useEvent(() => {
|
|
167
|
+
maybeAddMarimoImport({
|
|
168
|
+
autoInstantiate,
|
|
169
|
+
createNewCell: cellActions.createNewCell,
|
|
170
|
+
});
|
|
171
|
+
});
|
|
172
|
+
|
|
166
173
|
const aiEnabled = isAiEnabled(userConfig);
|
|
167
174
|
|
|
168
175
|
const extensions = useMemo(() => {
|
|
@@ -173,6 +180,7 @@ const CellEditorInternal = ({
|
|
|
173
180
|
cellActions: {
|
|
174
181
|
...cellActions,
|
|
175
182
|
afterToggleMarkdown,
|
|
183
|
+
afterToggleSQL,
|
|
176
184
|
onRun: handleRunCell,
|
|
177
185
|
deleteCell: handleDelete,
|
|
178
186
|
saveNotebook: saveOrNameNotebook,
|
|
@@ -267,6 +275,7 @@ const CellEditorInternal = ({
|
|
|
267
275
|
handleRunCell,
|
|
268
276
|
setAiCompletionCell,
|
|
269
277
|
afterToggleMarkdown,
|
|
278
|
+
afterToggleSQL,
|
|
270
279
|
setLanguageAdapter,
|
|
271
280
|
showHiddenCode,
|
|
272
281
|
saveOrNameNotebook,
|
|
@@ -5,6 +5,7 @@ import { HourglassIcon, LockIcon, UnlinkIcon } from "lucide-react";
|
|
|
5
5
|
import React from "react";
|
|
6
6
|
import { Tooltip } from "@/components/ui/tooltip";
|
|
7
7
|
import { notebookScrollToRunning } from "@/core/cells/actions";
|
|
8
|
+
import { onlyScratchpadIsRunningAtom } from "@/core/cells/cells";
|
|
8
9
|
import { viewStateAtom } from "@/core/mode";
|
|
9
10
|
import { type ConnectionStatus, WebSocketState } from "@/core/websocket/types";
|
|
10
11
|
import { cn } from "@/utils/cn";
|
|
@@ -52,17 +53,24 @@ const LockedIcon = () => (
|
|
|
52
53
|
</Tooltip>
|
|
53
54
|
);
|
|
54
55
|
|
|
55
|
-
const RunningIcon = () =>
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
56
|
+
const RunningIcon = () => {
|
|
57
|
+
const scratchpadOnly = useAtomValue(onlyScratchpadIsRunningAtom);
|
|
58
|
+
const tooltip = scratchpadOnly
|
|
59
|
+
? "Scratchpad is running"
|
|
60
|
+
: "Jump to running cell";
|
|
61
|
+
|
|
62
|
+
return (
|
|
63
|
+
<Tooltip content={tooltip} side="right">
|
|
64
|
+
<div
|
|
65
|
+
className={topLeftStatus}
|
|
66
|
+
data-testid="loading-indicator"
|
|
67
|
+
onClick={scratchpadOnly ? undefined : notebookScrollToRunning}
|
|
68
|
+
>
|
|
69
|
+
<HourglassIcon className="running-app-icon" size={30} strokeWidth={1} />
|
|
70
|
+
</div>
|
|
71
|
+
</Tooltip>
|
|
72
|
+
);
|
|
73
|
+
};
|
|
66
74
|
|
|
67
75
|
const NoiseBackground = () => (
|
|
68
76
|
<>
|
package/src/core/cells/cells.ts
CHANGED
|
@@ -1640,6 +1640,12 @@ export const cellsRuntimeAtom = atom((get) => get(notebookAtom).cellRuntime);
|
|
|
1640
1640
|
export const notebookIsRunningAtom = atom((get) =>
|
|
1641
1641
|
notebookIsRunning(get(notebookAtom)),
|
|
1642
1642
|
);
|
|
1643
|
+
export const onlyScratchpadIsRunningAtom = atom((get) => {
|
|
1644
|
+
const { cellRuntime } = get(notebookAtom);
|
|
1645
|
+
return Object.entries(cellRuntime).every(
|
|
1646
|
+
([id, rt]) => rt.status !== "running" || id === SCRATCH_CELL_ID,
|
|
1647
|
+
);
|
|
1648
|
+
});
|
|
1643
1649
|
export const notebookQueuedOrRunningCountAtom = atom((get) =>
|
|
1644
1650
|
notebookQueueOrRunningCount(get(notebookAtom)),
|
|
1645
1651
|
);
|
package/src/core/cells/utils.ts
CHANGED
|
@@ -11,6 +11,7 @@ export function notebookIsRunning(state: NotebookState) {
|
|
|
11
11
|
(cell) => cell.status === "running",
|
|
12
12
|
);
|
|
13
13
|
}
|
|
14
|
+
|
|
14
15
|
export function notebookQueueOrRunningCount(state: NotebookState) {
|
|
15
16
|
return Object.values(state.cellRuntime).filter(
|
|
16
17
|
(cell) => cell.status === "running" || cell.status === "queued",
|
|
@@ -45,6 +45,7 @@ function getOpts() {
|
|
|
45
45
|
onRun: namedFunction("onRun"),
|
|
46
46
|
deleteCell: namedFunction("deleteCell"),
|
|
47
47
|
afterToggleMarkdown: namedFunction("afterToggleMarkdown"),
|
|
48
|
+
afterToggleSQL: namedFunction("afterToggleSQL"),
|
|
48
49
|
} as unknown as CodemirrorCellActions,
|
|
49
50
|
completionConfig: {
|
|
50
51
|
activate_on_typing: false,
|
|
@@ -42,6 +42,26 @@ export function formatKeymapExtension(hotkeys: HotkeyProvider) {
|
|
|
42
42
|
actions.afterToggleMarkdown();
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
+
return response !== false;
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
key: hotkeys.getHotkey("cell.viewAsSQL").key,
|
|
50
|
+
preventDefault: true,
|
|
51
|
+
run: (ev) => {
|
|
52
|
+
const currentLanguage = getCurrentLanguageAdapter(ev);
|
|
53
|
+
const destinationLanguage =
|
|
54
|
+
currentLanguage === "sql" ? "python" : "sql";
|
|
55
|
+
|
|
56
|
+
const response = toggleToLanguage(ev, destinationLanguage, {
|
|
57
|
+
force: true,
|
|
58
|
+
});
|
|
59
|
+
|
|
60
|
+
if (response === "sql") {
|
|
61
|
+
const actions = ev.state.facet(cellActionsState);
|
|
62
|
+
actions.afterToggleSQL();
|
|
63
|
+
}
|
|
64
|
+
|
|
45
65
|
return response !== false;
|
|
46
66
|
},
|
|
47
67
|
},
|
|
@@ -3,7 +3,11 @@
|
|
|
3
3
|
import type { EditorState } from "@codemirror/state";
|
|
4
4
|
import type { EditorView } from "@codemirror/view";
|
|
5
5
|
import { replaceEditorContent } from "../replace-editor-content";
|
|
6
|
-
import {
|
|
6
|
+
import {
|
|
7
|
+
languageAdapterFromCode,
|
|
8
|
+
languageAdapterState,
|
|
9
|
+
switchLanguage,
|
|
10
|
+
} from "./extension";
|
|
7
11
|
import { languageMetadataField } from "./metadata";
|
|
8
12
|
|
|
9
13
|
/**
|
|
@@ -35,6 +39,17 @@ export function updateEditorCodeFromPython(
|
|
|
35
39
|
editor: EditorView,
|
|
36
40
|
pythonCode: string,
|
|
37
41
|
): string {
|
|
42
|
+
const currentAdapter = editor.state.field(languageAdapterState);
|
|
43
|
+
const correctAdapter = languageAdapterFromCode(pythonCode);
|
|
44
|
+
|
|
45
|
+
// If the language type changed (e.g., markdown → python), switch adapters
|
|
46
|
+
if (correctAdapter.type !== currentAdapter.type) {
|
|
47
|
+
switchLanguage(editor, {
|
|
48
|
+
language: correctAdapter.type,
|
|
49
|
+
keepCodeAsIs: true,
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
|
|
38
53
|
const languageAdapter = editor.state.field(languageAdapterState);
|
|
39
54
|
const [code] = languageAdapter.transformIn(pythonCode);
|
|
40
55
|
// Use replaceEditorContent which preserves cursor position when focused
|
|
@@ -142,6 +142,14 @@ const DEFAULT_HOT_KEY = {
|
|
|
142
142
|
group: "Editing",
|
|
143
143
|
key: "Mod-Shift-m",
|
|
144
144
|
},
|
|
145
|
+
"cell.viewAsSQL": {
|
|
146
|
+
name: "Toggle SQL",
|
|
147
|
+
group: "Editing",
|
|
148
|
+
key: {
|
|
149
|
+
windows: "Alt-Shift-l",
|
|
150
|
+
main: "Mod-Shift-l",
|
|
151
|
+
},
|
|
152
|
+
},
|
|
145
153
|
"cell.complete": {
|
|
146
154
|
name: "Code completion",
|
|
147
155
|
group: "Editing",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as L}from"./chunk-LvLJmgfZ.js";import{d as P,l as j,n as y,u as A}from"./useEvent-O0nX5vok.js";import{A as O,M as T,T as w,Zr as b,Zt as E,bt as S,ci as $}from"./cells-Dqou-uie.js";import{t as _}from"./compiler-runtime-B3qBwwSJ.js";import{m as D}from"./useEventListener-BGihH8bs.js";import{d as F}from"./utils-BvPM6Bro.js";import{r as x}from"./constants-Rz_lD4HK.js";import{h as M,x as Z}from"./config-DeEqZTX7.js";import{t as q}from"./jsx-runtime-icT_Ltz2.js";import{t as B}from"./cn-BoaCR37F.js";import{r as H}from"./requests-Bgjtqo_1.js";import{n as R}from"./paths-D2lG83Oh.js";import{s as U}from"./session-CXChHxAw.js";import{n as V}from"./ImperativeModal-CDxa8mJa.js";var z=_();function I(){return A(b)}function G(){let r=(0,z.c)(5),[t]=j(M),e=P(b),{openAlert:s}=V(),{sendRename:o}=H(),a;return r[0]!==t.state||r[1]!==s||r[2]!==o||r[3]!==e?(a=async l=>{let n=F();return t.state===Z.OPEN?(U(i=>{l===null?i.delete(x.filePath):i.set(x.filePath,l)}),o({filename:l}).then(()=>(e(l),document.title=n.app_title||R.basename(l)||"Untitled Notebook",l)).catch(i=>(s(i.message),null))):(s("Failed to save notebook: not connected to a kernel."),null)},r[0]=t.state,r[1]=s,r[2]=o,r[3]=e,r[4]=a):a=r[4],y(a)}var p=_(),v=L(q(),1);const h=r=>{let t=(0,p.c)(12),{className:e,cellId:s,variant:o,onClick:a,formatCellName:l,skipScroll:n}=r,i=T()[s]??"",C=O().inOrderIds.indexOf(s),{showCellIfHidden:d}=w(),g=l??Q,c;t[0]===e?c=t[1]:(c=B("inline-block cursor-pointer text-link hover:underline",e),t[0]=e,t[1]=c);let m;t[2]!==s||t[3]!==a||t[4]!==d||t[5]!==n||t[6]!==o?(m=k=>{if(s==="__scratch__")return!1;d({cellId:s}),k.stopPropagation(),k.preventDefault(),requestAnimationFrame(()=>{N(s,o,n)&&(a==null||a())})},t[2]=s,t[3]=a,t[4]=d,t[5]=n,t[6]=o,t[7]=m):m=t[7];let f=g(S(i,C)),u;return t[8]!==c||t[9]!==m||t[10]!==f?(u=(0,v.jsx)("div",{className:c,role:"link",tabIndex:-1,onClick:m,children:f}),t[8]=c,t[9]=m,t[10]=f,t[11]=u):u=t[11],u},J=r=>{let t=(0,p.c)(2),e;return t[0]===r?e=t[1]:(e=(0,v.jsx)(h,{...r,variant:"destructive"}),t[0]=r,t[1]=e),e},K=r=>{let t=(0,p.c)(10),{cellId:e,lineNumber:s}=r,o=I(),a;t[0]!==e||t[1]!==s?(a=()=>E(e,s),t[0]=e,t[1]=s,t[2]=a):a=t[2];let l;t[3]!==e||t[4]!==o?(l=i=>e==="__scratch__"?"scratch":`marimo://${o||"untitled"}#cell=${i}`,t[3]=e,t[4]=o,t[5]=l):l=t[5];let n;return t[6]!==e||t[7]!==a||t[8]!==l?(n=(0,v.jsx)(h,{cellId:e,onClick:a,skipScroll:!0,variant:"destructive",className:"traceback-cell-link",formatCellName:l}),t[6]=e,t[7]=a,t[8]=l,t[9]=n):n=t[9],n};function N(r,t,e){let s=$.create(r),o=document.getElementById(s),a=o==null?void 0:o.classList.contains("has-error");return o===null?(D.error(`Cell ${s} not found on page.`),!1):(e||o.scrollIntoView({behavior:"smooth",block:"center"}),(t==="destructive"||a&&t===void 0)&&(o.classList.add("error-outline"),setTimeout(()=>{o.classList.remove("error-outline")},2e3)),(t==="focus"||!a&&t===void 0)&&(o.classList.add("focus-outline"),setTimeout(()=>{o.classList.remove("focus-outline")},2e3)),!0)}function Q(r){return r}export{I as a,N as i,J as n,G as o,K as r,h as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as N}from"./chunk-LvLJmgfZ.js";import{i as b}from"./useEvent-O0nX5vok.js";import{t as j}from"./react-Bj1aDYRI.js";import{en as w,f as P,xn as C}from"./cells-Dqou-uie.js";import{t as u}from"./compiler-runtime-B3qBwwSJ.js";import{t as k}from"./jsx-runtime-icT_Ltz2.js";import{t as c}from"./cn-BoaCR37F.js";import{t as A}from"./badge-hTpPIsMT.js";import{a as R,i as B,r as I}from"./multi-map-CJMleYLX.js";var S=u(),m=N(k(),1);const T=o=>{let e=(0,S.c)(8),{variableName:a,className:r}=o,t;e[0]===a?t=e[1]:(t=i=>{i.stopPropagation();let d=_(a);if(!d)return;let x=P(d);x&&w(x,a)},e[0]=a,e[1]=t);let s=t,l;e[2]===r?l=e[3]:(l=c("text-link opacity-80 hover:opacity-100 hover:underline",r),e[2]=r,e[3]=l);let n;return e[4]!==s||e[5]!==l||e[6]!==a?(n=(0,m.jsx)("button",{type:"button",onClick:s,className:l,children:a}),e[4]=s,e[5]=l,e[6]=a,e[7]=n):n=e[7],n};function _(o){let e=b.get(C)[o];if(e)return e.declaredBy[0]}var p=u(),f=N(j(),1),y=f.forwardRef((o,e)=>{let a=(0,p.c)(11),r,t,s;a[0]===o?(r=a[1],t=a[2],s=a[3]):({className:r,lastItem:t,...s}=o,a[0]=o,a[1]=r,a[2]=t,a[3]=s);let l=t&&"border-b-0",n;a[4]!==r||a[5]!==l?(n=c(l,r),a[4]=r,a[5]=l,a[6]=n):n=a[6];let i;return a[7]!==s||a[8]!==e||a[9]!==n?(i=(0,m.jsx)(B,{ref:e,className:n,...s}),a[7]=s,a[8]=e,a[9]=n,a[10]=i):i=a[10],i});y.displayName="PanelAccordionItem";var v=f.forwardRef((o,e)=>{let a=(0,p.c)(13),r,t,s;a[0]===o?(r=a[1],t=a[2],s=a[3]):({className:t,children:r,...s}=o,a[0]=o,a[1]=r,a[2]=t,a[3]=s);let l;a[4]===t?l=a[5]:(l=c("px-3 py-2 text-xs font-semibold uppercase tracking-wide hover:no-underline",t),a[4]=t,a[5]=l);let n;a[6]===r?n=a[7]:(n=(0,m.jsx)("span",{className:"flex items-center gap-2",children:r}),a[6]=r,a[7]=n);let i;return a[8]!==s||a[9]!==e||a[10]!==l||a[11]!==n?(i=(0,m.jsx)(R,{ref:e,className:l,...s,children:n}),a[8]=s,a[9]=e,a[10]=l,a[11]=n,a[12]=i):i=a[12],i});v.displayName="PanelAccordionTrigger";var g=f.forwardRef((o,e)=>{let a=(0,p.c)(9),r,t;a[0]===o?(r=a[1],t=a[2]):({wrapperClassName:t,...r}=o,a[0]=o,a[1]=r,a[2]=t);let s;a[3]===t?s=a[4]:(s=c("p-0",t),a[3]=t,a[4]=s);let l;return a[5]!==r||a[6]!==e||a[7]!==s?(l=(0,m.jsx)(I,{ref:e,wrapperClassName:s,...r}),a[5]=r,a[6]=e,a[7]=s,a[8]=l):l=a[8],l});g.displayName="PanelAccordionContent";var h=o=>{let e=(0,p.c)(8),a,r;e[0]===o?(a=e[1],r=e[2]):({className:a,...r}=o,e[0]=o,e[1]=a,e[2]=r);let t;e[3]===a?t=e[4]:(t=c("py-0 px-1.5 text-[10px]",a),e[3]=a,e[4]=t);let s;return e[5]!==r||e[6]!==t?(s=(0,m.jsx)(A,{variant:"secondary",className:t,...r}),e[5]=r,e[6]=t,e[7]=s):s=e[7],s};h.displayName="PanelBadge";export{T as a,h as i,y as n,v as r,g as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as a}from"./chunk-LvLJmgfZ.js";import{u as p}from"./useEvent-O0nX5vok.js";import{t as s}from"./react-Bj1aDYRI.js";import{Ln as l,on as n}from"./cells-Dqou-uie.js";import"./react-dom-CSu739Rf.js";import{t as c}from"./compiler-runtime-B3qBwwSJ.js";import{t as f}from"./jsx-runtime-icT_Ltz2.js";import"./dist-B_cxg-E4.js";import"./cjs-BU2qXMKx.js";import"./main-DrBRErTM.js";import"./useNonce-BtW-rR_1.js";import"./dist-BNC_tnlW.js";import"./dist-CXLJUPFl.js";import"./dist-CQqv2gQL.js";import"./dist-8UD0A5sU.js";import"./dist-apDpadc4.js";import"./session-CXChHxAw.js";import"./Combination-CBJmtdux.js";import"./purify.es-BBn8CPhf.js";import{t as u}from"./RenderHTML-Bp9XY06U.js";import{t as d}from"./empty-state-B_US46Us.js";var x=c();s();var e=a(f(),1),v=()=>{let o=(0,x.c)(5),{documentation:r}=p(n);if(!r){let i;return o[0]===Symbol.for("react.memo_cache_sentinel")?(i=(0,e.jsx)(d,{title:"View docs as you type",description:"Move your text cursor over a symbol to see its documentation.",icon:(0,e.jsx)(l,{})}),o[0]=i):i=o[0],i}let t;o[1]===r?t=o[2]:(t=u({html:r}),o[1]=r,o[2]=t);let m;return o[3]===t?m=o[4]:(m=(0,e.jsx)("div",{className:"p-3 overflow-y-auto overflow-x-hidden h-full docs-documentation flex flex-col gap-4",children:t}),o[3]=t,o[4]=m),m};export{v as default};
|