@marimo-team/frontend 0.20.0 → 0.20.1

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 (66) hide show
  1. package/dist/assets/{CellStatus-C-x2V01u.js → CellStatus-CXzj7sRm.js} +1 -1
  2. package/dist/assets/{JsonOutput-GcxmOJYP.js → JsonOutput-Cf8A51yY.js} +1 -1
  3. package/dist/assets/{MarimoErrorOutput-DXW0JM3_.js → MarimoErrorOutput-DDh0mN6J.js} +1 -1
  4. package/dist/assets/{RenderHTML-Daud0S_p.js → RenderHTML-BtyszmRY.js} +1 -1
  5. package/dist/assets/{add-cell-with-ai-tKFEu3DZ.js → add-cell-with-ai-BCTdiv0p.js} +1 -1
  6. package/dist/assets/{add-database-form-CzPD2bTj.js → add-database-form-Be5HSGc6.js} +1 -1
  7. package/dist/assets/{agent-panel-CQbchvK2.js → agent-panel-2Q2T5S16.js} +1 -1
  8. package/dist/assets/{ai-model-dropdown-CKWg_XHD.js → ai-model-dropdown-BC0cdhi9.js} +1 -1
  9. package/dist/assets/{app-config-button-R5x8Kgdf.js → app-config-button-DmKmnxml.js} +1 -1
  10. package/dist/assets/{cell-editor-Dwrvpw6E.js → cell-editor-DW3vX0Hr.js} +1 -1
  11. package/dist/assets/{cell-link-Bhvw0on1.js → cell-link-HggHOhac.js} +1 -1
  12. package/dist/assets/{cells-3SLwRjPd.js → cells-BvQJ_wGv.js} +1 -1
  13. package/dist/assets/{chat-display-CjlWzBMp.js → chat-display-Bvu3qbng.js} +1 -1
  14. package/dist/assets/{chat-panel-C7GNMsJo.js → chat-panel-BGfg1SLf.js} +1 -1
  15. package/dist/assets/{column-preview-3XIyjT9T.js → column-preview-CJ3a0IPi.js} +1 -1
  16. package/dist/assets/{command-zI_q-_PG.js → command-D2UvWA5R.js} +1 -1
  17. package/dist/assets/{command-palette-CqYF4pMC.js → command-palette-D8rmVaQE.js} +1 -1
  18. package/dist/assets/{common-DORX-NKD.js → common-CdY4MV1-.js} +1 -1
  19. package/dist/assets/{datasource-BNFc5bM1.js → datasource-ow4Y3Yl7.js} +1 -1
  20. package/dist/assets/{dependency-graph-panel--665IS5c.js → dependency-graph-panel-G7LHU1W_.js} +1 -1
  21. package/dist/assets/{documentation-panel-CaE2ohYn.js → documentation-panel-C1BKTYu6.js} +1 -1
  22. package/dist/assets/{download-BWdagSya.js → download-FoG6dAm7.js} +1 -1
  23. package/dist/assets/{edit-page-D3xQ9L_f.js → edit-page-qkwPqNNl.js} +3 -3
  24. package/dist/assets/{error-panel-CUvQCWJt.js → error-panel-Cse2qyD7.js} +1 -1
  25. package/dist/assets/{file-explorer-panel-DeybZaOo.js → file-explorer-panel-I8XsTAeG.js} +1 -1
  26. package/dist/assets/{floating-outline-2m6YWlpq.js → floating-outline-D3kzMiv3.js} +1 -1
  27. package/dist/assets/{focus-DyBJP5Y2.js → focus-CPRFg4kn.js} +1 -1
  28. package/dist/assets/{form-B3o-gHpb.js → form-DISpbGyw.js} +1 -1
  29. package/dist/assets/{globals-rTjtfYVE.js → globals-g_NWGBtF.js} +1 -1
  30. package/dist/assets/{home-page-Dd3yQLeM.js → home-page-DFksLw4j.js} +1 -1
  31. package/dist/assets/{hooks-C44T-jvI.js → hooks-DDDn7T5i.js} +1 -1
  32. package/dist/assets/{html-to-image-BODKgB04.js → html-to-image-DvPYLUI8.js} +1 -1
  33. package/dist/assets/{index-CUYYOT3v.js → index-DEPjuBkG.js} +11 -11
  34. package/dist/assets/{kiosk-mode-DBQu1lzt.js → kiosk-mode-DChTDQjX.js} +1 -1
  35. package/dist/assets/{layout-DvylFImy.js → layout-W7LHtlpD.js} +1 -1
  36. package/dist/assets/{logs-panel-HEDRaCpU.js → logs-panel-WG80bH91.js} +1 -1
  37. package/dist/assets/{markdown-renderer-DKn81PWh.js → markdown-renderer-Dyy86-0S.js} +1 -1
  38. package/dist/assets/{mode-CuFbHwND.js → mode-COhtYT4e.js} +1 -1
  39. package/dist/assets/{name-cell-input-CIs7Aqay.js → name-cell-input-Cga4BASx.js} +1 -1
  40. package/dist/assets/{outline-panel-B2F8-xpS.js → outline-panel-oVyrH0zg.js} +1 -1
  41. package/dist/assets/{packages-panel-CPc1z9d4.js → packages-panel-CAj1iddH.js} +1 -1
  42. package/dist/assets/{panels-Dh7M-Zzp.js → panels-BP4rsYL6.js} +1 -1
  43. package/dist/assets/{process-output-BpbC_Aow.js → process-output-WvCcApgB.js} +1 -1
  44. package/dist/assets/{readonly-python-code-D3Z8uYT4.js → readonly-python-code-ZwGAfelJ.js} +1 -1
  45. package/dist/assets/{run-page-DwpujfMt.js → run-page-BsDIxokV.js} +1 -1
  46. package/dist/assets/{scratchpad-panel-BlFZic7K.js → scratchpad-panel-Bl5zLNBf.js} +1 -1
  47. package/dist/assets/{session-panel-C40jAnsp.js → session-panel-C2uwzFbP.js} +1 -1
  48. package/dist/assets/{snippets-panel-DQ_FNiaw.js → snippets-panel-DE-LV-IU.js} +1 -1
  49. package/dist/assets/{state-EtDJEfA8.js → state-D0hcaf71.js} +1 -1
  50. package/dist/assets/{switch-KP9aBLRd.js → switch-C3e8vdXY.js} +1 -1
  51. package/dist/assets/{textarea-BeKvrxrf.js → textarea-DIGVRG-E.js} +1 -1
  52. package/dist/assets/{tracing-DXW2T0PZ.js → tracing-h7TdA1_p.js} +1 -1
  53. package/dist/assets/{tracing-panel-BakKzZZ8.js → tracing-panel-Babikkit.js} +2 -2
  54. package/dist/assets/{types-BWsfSnQV.js → types-B0GfsfZC.js} +1 -1
  55. package/dist/assets/{useAddCell-Bxc74D8L.js → useAddCell-DWpYLvcR.js} +1 -1
  56. package/dist/assets/{useCellActionButton-CYbF-pxP.js → useCellActionButton-Db9MI9XQ.js} +1 -1
  57. package/dist/assets/{useDeleteCell-MooOUPWp.js → useDeleteCell-87_Oh8sv.js} +1 -1
  58. package/dist/assets/{useDependencyPanelTab-BJ-miHJJ.js → useDependencyPanelTab-BloSVZ6I.js} +1 -1
  59. package/dist/assets/{useNotebookActions-CMrugtYC.js → useNotebookActions-_M_GKcKV.js} +1 -1
  60. package/dist/assets/{useRunCells-DQIUBAoK.js → useRunCells-DCLlGGDx.js} +1 -1
  61. package/dist/assets/{useSplitCell-DPGiPYwq.js → useSplitCell-BGRLlxZG.js} +1 -1
  62. package/dist/assets/{utilities.esm-BHFwaIGQ.js → utilities.esm-C57m8aJQ.js} +1 -1
  63. package/dist/index.html +30 -30
  64. package/package.json +1 -1
  65. package/src/core/codemirror/extensions.ts +2 -7
  66. package/src/plugins/impl/matplotlib/matplotlib-renderer.ts +18 -7
@@ -330,10 +330,7 @@ export class MatplotlibRenderer {
330
330
  const prev = this.#state;
331
331
  this.#state = state;
332
332
 
333
- if (state.chartBase64 !== this.#currentChartBase64) {
334
- this.#loadImage(state.chartBase64);
335
- return;
336
- }
333
+ let needsRedraw = false;
337
334
 
338
335
  // Update canvas dimensions if changed
339
336
  if (state.width !== prev.width || state.height !== prev.height) {
@@ -342,15 +339,20 @@ export class MatplotlibRenderer {
342
339
  this.#canvas.height = state.height * dpr;
343
340
  this.#canvas.style.width = `${state.width}px`;
344
341
  this.#canvas.style.height = `${state.height}px`;
342
+ needsRedraw = true;
343
+ }
344
+
345
+ if (state.chartBase64 !== this.#currentChartBase64) {
346
+ this.#loadImage(state.chartBase64);
347
+ return;
345
348
  }
346
349
 
347
350
  // Redraw if style props changed or dimensions changed
348
351
  if (
352
+ needsRedraw ||
349
353
  state.selectionColor !== prev.selectionColor ||
350
354
  state.selectionOpacity !== prev.selectionOpacity ||
351
- state.strokeWidth !== prev.strokeWidth ||
352
- state.width !== prev.width ||
353
- state.height !== prev.height
355
+ state.strokeWidth !== prev.strokeWidth
354
356
  ) {
355
357
  this.#drawCanvas();
356
358
  }
@@ -364,6 +366,15 @@ export class MatplotlibRenderer {
364
366
  // Clear selection on new chart
365
367
  this.#interaction = { type: "idle" };
366
368
 
369
+ // Clear stale image so old content doesn't linger while new image loads
370
+ this.#image = null;
371
+ const ctx = this.#canvas.getContext("2d");
372
+ if (ctx) {
373
+ const dpr = globalThis.devicePixelRatio ?? 1;
374
+ ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
375
+ ctx.clearRect(0, 0, this.#state.width, this.#state.height);
376
+ }
377
+
367
378
  const img = new Image();
368
379
  img.onload = () => {
369
380
  if (generation !== this.#imageGeneration) {