@marimo-team/frontend 0.19.3-dev28 → 0.19.3-dev30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/dist/assets/{CellStatus-CjIIwo1z.js → CellStatus-CGsC_xni.js} +1 -1
  2. package/dist/assets/{JsonOutput-p0zb9mQ1.js → JsonOutput-CCSLhScI.js} +1 -1
  3. package/dist/assets/{MarimoErrorOutput-ClRs2jYh.js → MarimoErrorOutput-CDtUiLzW.js} +1 -1
  4. package/dist/assets/{RenderHTML-KzGVguaA.js → RenderHTML-B1PnGgGU.js} +1 -1
  5. package/dist/assets/{add-cell-with-ai-Dq4w_0vC.js → add-cell-with-ai-DG5ez5tQ.js} +1 -1
  6. package/dist/assets/{add-database-form-BF1XmV3g.js → add-database-form-BDC4sw5d.js} +1 -1
  7. package/dist/assets/{agent-panel-BfZGOZw7.js → agent-panel-DvdoiTMc.js} +1 -1
  8. package/dist/assets/{ai-model-dropdown-DgfCTAMr.js → ai-model-dropdown-DSzuccWn.js} +1 -1
  9. package/dist/assets/{app-config-button-CGT3LJN6.js → app-config-button-DrOOXwCm.js} +1 -1
  10. package/dist/assets/{cell-editor-04MlZjuj.js → cell-editor-Bowbis7w.js} +1 -1
  11. package/dist/assets/{cell-link-Bm4hypmB.js → cell-link-DXYH8FLx.js} +1 -1
  12. package/dist/assets/{cells-Bybxko6N.js → cells-4S-e0VcC.js} +1 -1
  13. package/dist/assets/{chat-components-BnEh1lQ3.js → chat-components-Bs4IxADW.js} +1 -1
  14. package/dist/assets/{chat-display-CpaVYsBS.js → chat-display-CPq1j1yR.js} +1 -1
  15. package/dist/assets/{chat-panel-i0LPxeA1.js → chat-panel-dvZilXEF.js} +1 -1
  16. package/dist/assets/{client-BHJbjyLn.js → client-DdSTQs8P.js} +1 -1
  17. package/dist/assets/{column-preview-CXH7PEzS.js → column-preview-DtHgotrc.js} +1 -1
  18. package/dist/assets/{command-BGzGALfV.js → command-NXYtUgbp.js} +1 -1
  19. package/dist/assets/{command-palette-DeVuHykX.js → command-palette-85dl4RPg.js} +1 -1
  20. package/dist/assets/{common-GkW6UhNG.js → common-DTmoX7TD.js} +1 -1
  21. package/dist/assets/{datasource-C9Ibn98W.js → datasource-CPVUAqzI.js} +1 -1
  22. package/dist/assets/{dependency-graph-panel-BrsHwP7n.js → dependency-graph-panel-VYsYCQNm.js} +1 -1
  23. package/dist/assets/{documentation-panel-B1bUgdJq.js → documentation-panel-CwAtyJSz.js} +1 -1
  24. package/dist/assets/{download-DFqv8W29.js → download-BcXr1SQk.js} +1 -1
  25. package/dist/assets/{edit-page-yvETOAn1.js → edit-page-CCa1yDjZ.js} +6 -6
  26. package/dist/assets/{error-panel-D81fcnK8.js → error-panel-BbbZ1gDy.js} +1 -1
  27. package/dist/assets/{es-m6vibNCH.js → es-B3NV9-gC.js} +1 -1
  28. package/dist/assets/{file-explorer-panel-CExHg-qi.js → file-explorer-panel-JB9Lb6XZ.js} +1 -1
  29. package/dist/assets/{floating-outline-BDi2NbaY.js → floating-outline-BDIr9Bbt.js} +1 -1
  30. package/dist/assets/{focus-B3JRNMT5.js → focus-DAgLzXHM.js} +1 -1
  31. package/dist/assets/{form-BjfR2hxv.js → form-DVkjQxq_.js} +1 -1
  32. package/dist/assets/{globals-BoC3OJDy.js → globals-BJD8iIVw.js} +1 -1
  33. package/dist/assets/{home-page-CsSMsmF_.js → home-page-5ew0gT8b.js} +1 -1
  34. package/dist/assets/{index-Bxyo05m8.js → index-D2zgBMLw.js} +3 -3
  35. package/dist/assets/{kiosk-mode-M31wY0Z2.js → kiosk-mode-Cev1VOAm.js} +1 -1
  36. package/dist/assets/{layout-CExKZnfn.js → layout-CurIookF.js} +1 -1
  37. package/dist/assets/{logs-panel-Dv0ah0zz.js → logs-panel-CLsE2AN1.js} +1 -1
  38. package/dist/assets/{markdown-renderer-SDmn1dcA.js → markdown-renderer-Cc0PiY-K.js} +1 -1
  39. package/dist/assets/{mode-C0y8rrJY.js → mode-B3tNMXH2.js} +1 -1
  40. package/dist/assets/{name-cell-input-DmRA2_vx.js → name-cell-input-lkGsSC32.js} +1 -1
  41. package/dist/assets/{outline-panel-oCJ7sxbY.js → outline-panel-CR_3Njth.js} +1 -1
  42. package/dist/assets/{packages-panel-Ce4m7a1D.js → packages-panel-D2JfrhoE.js} +1 -1
  43. package/dist/assets/{panels-qBb6VQPe.js → panels-CpuHPy5a.js} +1 -1
  44. package/dist/assets/{process-output-dhnUvKF1.js → process-output-rKnBuRRW.js} +1 -1
  45. package/dist/assets/{readonly-python-code-Cz2byyYU.js → readonly-python-code-D7ixCdRP.js} +1 -1
  46. package/dist/assets/{run-page-qahhaONh.js → run-page-UbtG3woR.js} +1 -1
  47. package/dist/assets/{scratchpad-panel-XqKr3sTw.js → scratchpad-panel-Bvg9Sbf8.js} +1 -1
  48. package/dist/assets/{session-panel-C0lo88fb.js → session-panel-CE7qRaFP.js} +1 -1
  49. package/dist/assets/{snippets-panel-B3enTa5R.js → snippets-panel-CiNTJKw4.js} +1 -1
  50. package/dist/assets/{state-C_Zihs8j.js → state-CZqgb3sC.js} +1 -1
  51. package/dist/assets/{state-DSeEWQ7X.js → state-lX2Tur1r.js} +1 -1
  52. package/dist/assets/{switch-BrMSOK9-.js → switch-utDdERLs.js} +1 -1
  53. package/dist/assets/{textarea-CtGg_oNS.js → textarea-CuGxnSJT.js} +1 -1
  54. package/dist/assets/{tracing-CBQUni3z.js → tracing-CfhQiEJB.js} +1 -1
  55. package/dist/assets/{tracing-panel-DBRgqvXk.js → tracing-panel-BES8ykC_.js} +2 -2
  56. package/dist/assets/{types-9ye0mIoa.js → types-BqIUl7zM.js} +1 -1
  57. package/dist/assets/{useAddCell-Dnxw4Tgv.js → useAddCell-B5Yugh3r.js} +1 -1
  58. package/dist/assets/{useCellActionButton-6Zfn7U1K.js → useCellActionButton-BNKqQ1-h.js} +1 -1
  59. package/dist/assets/{useDeleteCell-cgZ94jOt.js → useDeleteCell-ChzEFH8j.js} +1 -1
  60. package/dist/assets/{useDependencyPanelTab-BgvTVQ8s.js → useDependencyPanelTab-MCxvkAot.js} +1 -1
  61. package/dist/assets/{useNotebookActions-DlrFYxYS.js → useNotebookActions-BRPD06EX.js} +1 -1
  62. package/dist/assets/{useRunCells-CcuO6KPm.js → useRunCells-Dgv3VAFX.js} +1 -1
  63. package/dist/assets/{useSplitCell-CrWmr1Ul.js → useSplitCell-_rfoF197.js} +1 -1
  64. package/dist/assets/{utilities.esm-B_yGlyHc.js → utilities.esm-C0AZu44u.js} +1 -1
  65. package/dist/index.html +31 -31
  66. package/package.json +2 -2
  67. package/src/components/editor/chrome/wrapper/app-chrome.tsx +55 -58
  68. package/src/components/utils/lazy-mount.tsx +29 -8
@@ -1,5 +1,9 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
- import React, { type PropsWithChildren } from "react";
2
+ import React, {
3
+ Activity,
4
+ type ActivityProps,
5
+ type PropsWithChildren,
6
+ } from "react";
3
7
 
4
8
  interface Props {
5
9
  isOpen: boolean;
@@ -12,13 +16,30 @@ export const LazyMount: React.FC<PropsWithChildren<Props>> = ({
12
16
  isOpen,
13
17
  children,
14
18
  }) => {
15
- const [isMounted, setIsMounted] = React.useState(false);
19
+ const [hasMountedBefore, setHasMountedBefore] = React.useState(false);
16
20
 
17
- React.useEffect(() => {
18
- if (isOpen && !isMounted) {
19
- setIsMounted(true);
20
- }
21
- }, [isOpen, isMounted]);
21
+ if (isOpen && !hasMountedBefore) {
22
+ setHasMountedBefore(true);
23
+ }
22
24
 
23
- return isMounted ? children : null;
25
+ return hasMountedBefore || isOpen ? children : null;
26
+ };
27
+
28
+ /**
29
+ * Wraps a component in an Activity component. It is not mounted until it is open for the first time.
30
+ */
31
+ export const LazyActivity: React.FC<PropsWithChildren<ActivityProps>> = (
32
+ props,
33
+ ) => {
34
+ const [hasMountedBefore, setHasMountedBefore] = React.useState(false);
35
+
36
+ if (props.mode === "visible" && !hasMountedBefore) {
37
+ setHasMountedBefore(true);
38
+ }
39
+
40
+ if (hasMountedBefore) {
41
+ return <Activity {...props} />;
42
+ }
43
+
44
+ return null;
24
45
  };