@marimo-team/frontend 0.24.3-dev83 → 0.24.3-dev88

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 (100) hide show
  1. package/dist/assets/{ConnectedDataExplorerComponent-BpquZl-D.js → ConnectedDataExplorerComponent-Bdak5-o8.js} +1 -1
  2. package/dist/assets/{ErrorBoundary-BQqmHnXk.js → ErrorBoundary-DrliQ_7g.js} +2 -2
  3. package/dist/assets/{LazyAnyLanguageCodeMirror-CvxfNkWH.js → LazyAnyLanguageCodeMirror-EBegnOE0.js} +2 -2
  4. package/dist/assets/{RunButton-DNkIh9-L.js → RunButton-qknEPbRR.js} +1 -1
  5. package/dist/assets/{abnfDiagram-VCTEODGH-CnUMzJx3.js → abnfDiagram-VCTEODGH-dm832Yw9.js} +1 -1
  6. package/dist/assets/{add-cell-with-ai-BMP2uVIa.js → add-cell-with-ai-Ovbsj95O.js} +1 -1
  7. package/dist/assets/{agent-panel-45n6y1yx.js → agent-panel-CJva58SL.js} +1 -1
  8. package/dist/assets/{ai-model-dropdown-DHCy-cih.js → ai-model-dropdown-1t7m1iFc.js} +1 -1
  9. package/dist/assets/{any-language-editor-C4RQC2Cx.js → any-language-editor-B7QvjaYO.js} +1 -1
  10. package/dist/assets/{app-config-button-_8eL7EEp.js → app-config-button-vCxNGhe2.js} +1 -1
  11. package/dist/assets/{architectureDiagram-5GKGNRK7-bfcUxn_j.js → architectureDiagram-5GKGNRK7-CiRaYU5G.js} +1 -1
  12. package/dist/assets/{blockDiagram-I7D4REHJ-BpF8yI-R.js → blockDiagram-I7D4REHJ-BK3JcsXA.js} +1 -1
  13. package/dist/assets/{cache-panel-BR4yhYeu.js → cache-panel-DxdmvFwH.js} +1 -1
  14. package/dist/assets/{chat-display-C_qIajXO.js → chat-display-TI342pMF.js} +1 -1
  15. package/dist/assets/{chat-panel-DZ_Wgf9u.js → chat-panel-CzdR8RG_.js} +1 -1
  16. package/dist/assets/{chat-ui-BrP572Cm.js → chat-ui-B1aeiWdr.js} +1 -1
  17. package/dist/assets/{chunk-IMKFNOWR-C-rPN2GF.js → chunk-IMKFNOWR-yy9Ec7ZM.js} +1 -1
  18. package/dist/assets/{chunk-SHT3W25Y-P5kn0hWZ.js → chunk-SHT3W25Y-lri4OQTX.js} +1 -1
  19. package/dist/assets/{chunk-SVP7TREG-BDSmMBZT.js → chunk-SVP7TREG-B3ISFgJc.js} +1 -1
  20. package/dist/assets/{chunk-TICWLB2K-D3dtJ1vz.js → chunk-TICWLB2K-CJ7ETjY3.js} +1 -1
  21. package/dist/assets/{classDiagram-ZZMXUADV-DHIDyAFc.js → classDiagram-ZZMXUADV-CIEFh40S.js} +1 -1
  22. package/dist/assets/{classDiagram-v2-VYDZK3BY-DHIDyAFc.js → classDiagram-v2-VYDZK3BY-CIEFh40S.js} +1 -1
  23. package/dist/assets/{code-visibility-DB0T__on.js → code-visibility-G0W4ym3Y.js} +1 -1
  24. package/dist/assets/{command-palette-DvYu24TH.js → command-palette-DhdK67bL.js} +1 -1
  25. package/dist/assets/{common-C53kupuv.js → common-cDzShymV.js} +1 -1
  26. package/dist/assets/{components-BrsyCK82.js → components-B3KlHXnD.js} +1 -1
  27. package/dist/assets/{components-BuvKvfSS.js → components-CQVZgYvR.js} +1 -1
  28. package/dist/assets/{cynefinDiagram-5FMLGOSQ-CYdbFzEV.js → cynefinDiagram-5FMLGOSQ-1zl1wSTB.js} +1 -1
  29. package/dist/assets/{dagre-SOh4Qguh.js → dagre-DM-Ch8wC.js} +1 -1
  30. package/dist/assets/{dagre-GXQ25YYZ-CSEPMX9I.js → dagre-GXQ25YYZ-BqoUeivc.js} +1 -1
  31. package/dist/assets/{data-grid-overlay-editor-ierQMJA6.js → data-grid-overlay-editor-DbqMOWZn.js} +1 -1
  32. package/dist/assets/{dependency-graph-panel-DBaLCinF.js → dependency-graph-panel-C-SFFOPF.js} +1 -1
  33. package/dist/assets/{diagram-S7CK7UJ4-D5YIr9T4.js → diagram-S7CK7UJ4-CF90sb1m.js} +1 -1
  34. package/dist/assets/{diagram-UQ7AKVKN-uqarxJJM.js → diagram-UQ7AKVKN-DgbZAUCH.js} +1 -1
  35. package/dist/assets/{diagram-VX7I27RA-HcvMY8pK.js → diagram-VX7I27RA-6dC0a_-i.js} +1 -1
  36. package/dist/assets/{diagram-Z3DM3KII-fJYqqcs8.js → diagram-Z3DM3KII-C1OXYmlB.js} +1 -1
  37. package/dist/assets/{documentation-panel-LhtR1Gdz.js → documentation-panel-idK3s0j3.js} +1 -1
  38. package/dist/assets/{ebnfDiagram-PWID7BFC-z1dFbGgp.js → ebnfDiagram-PWID7BFC-7gC3cuC7.js} +1 -1
  39. package/dist/assets/{edit-page-B28h9Fb6.js → edit-page-_D_Nv3dJ.js} +4 -4
  40. package/dist/assets/{erDiagram-RLTQ6QDP-D0QTGZaN.js → erDiagram-RLTQ6QDP-BsE87b_i.js} +1 -1
  41. package/dist/assets/{error-panel-JrTKWez-.js → error-panel-YAFgCest.js} +1 -1
  42. package/dist/assets/{feedback-button-CXZUuGO0.js → feedback-button-sRQQL2TH.js} +1 -1
  43. package/dist/assets/{file-explorer-panel-0uckfsy9.js → file-explorer-panel-LAa-LxTN.js} +1 -1
  44. package/dist/assets/{file-name-input-B1oP4qI1.js → file-name-input-BXq6eIDs.js} +1 -1
  45. package/dist/assets/{flowDiagram-HODETNUW-CvnIcAyp.js → flowDiagram-HODETNUW-B4xRBXB1.js} +1 -1
  46. package/dist/assets/{gallery-page-Dr6gmPct.js → gallery-page-CH8TM7bV.js} +1 -1
  47. package/dist/assets/{glide-data-editor-BdNlPATo.js → glide-data-editor-DPMjaN4R.js} +4 -4
  48. package/dist/assets/{graphlib-coUtpRhg.js → graphlib-DDJ8O6ZH.js} +1 -1
  49. package/dist/assets/has-CanCEarv.js +1 -0
  50. package/dist/assets/{home-page-DU_vk7YP.js → home-page-vDWLpS4F.js} +1 -1
  51. package/dist/assets/{index-C0mx13kv.css → index-2TQenOiQ.css} +1 -1
  52. package/dist/assets/{index-anJECncb.js → index-CgQsZfww.js} +9 -9
  53. package/dist/assets/{infoDiagram-27XIBGKW-B-ESiKKL.js → infoDiagram-27XIBGKW-FE7De1I6.js} +1 -1
  54. package/dist/assets/{ishikawaDiagram-5VMMS53U-958453Qs.js → ishikawaDiagram-5VMMS53U-CSEGYrJ-.js} +1 -1
  55. package/dist/assets/{kanban-definition-UXKFOSKX-Cl3MvgdV.js → kanban-definition-UXKFOSKX-d7iAZsOb.js} +1 -1
  56. package/dist/assets/{logs-panel-B6dW8QcS.js → logs-panel-xMj01DRN.js} +1 -1
  57. package/dist/assets/{mermaid-Dk7Zo_kD.js → mermaid-CNjXdDrA.js} +4 -4
  58. package/dist/assets/{mindmap-definition-YA3MSWOX-ObRzpp8l.js → mindmap-definition-YA3MSWOX-CddM9_uP.js} +1 -1
  59. package/dist/assets/{number-overlay-editor-BaA6YHpZ.js → number-overlay-editor-N57if5NT.js} +1 -1
  60. package/dist/assets/{outline-panel-AF6eqkBP.js → outline-panel-Garp-f5k.js} +1 -1
  61. package/dist/assets/{packages-panel-DnQBjrbw.js → packages-panel-B8HU9FAM.js} +1 -1
  62. package/dist/assets/{panels-Gl9xHiUG.js → panels-CnbmgzkS.js} +3 -3
  63. package/dist/assets/{pegDiagram-XKGWAZYB-Dr1N-uz9.js → pegDiagram-XKGWAZYB-CEns8d-M.js} +1 -1
  64. package/dist/assets/{pieDiagram-E7YTZNPT-CuOB3ooB.js → pieDiagram-E7YTZNPT-wyb0xQ0R.js} +1 -1
  65. package/dist/assets/{process-output-dY19eMY7.js → process-output-ObDfw1uu.js} +1 -1
  66. package/dist/assets/{railroadDiagram-O6MQD6OU-B-2q9lGc.js → railroadDiagram-O6MQD6OU-DZZVHmr2.js} +1 -1
  67. package/dist/assets/{requirementDiagram-BXWQKSXE-DDO3d-q-.js → requirementDiagram-BXWQKSXE-C3Bf4dd5.js} +1 -1
  68. package/dist/assets/{reveal-component-CVZuomdL.js → reveal-component-DgrXq3Kv.js} +1 -1
  69. package/dist/assets/{run-page-q9RV38Se.js → run-page-E0qMru0p.js} +1 -1
  70. package/dist/assets/{scratchpad-panel-CB7Fy9xQ.js → scratchpad-panel-CCFyaegO.js} +1 -1
  71. package/dist/assets/{secrets-panel-fyK3DrMo.js → secrets-panel-4dRIaZfY.js} +1 -1
  72. package/dist/assets/{sequenceDiagram-WJ2MYXX4-09ej9W_c.js → sequenceDiagram-WJ2MYXX4-BIY0mgX7.js} +1 -1
  73. package/dist/assets/{session-panel-CQR7EQYe.js → session-panel-CR3BHLhQ.js} +1 -1
  74. package/dist/assets/{snippets-panel-C8pCQY6-.js → snippets-panel-Dn22yTr_.js} +1 -1
  75. package/dist/assets/{stateDiagram-D77RDMKH-Dwreh_3X.js → stateDiagram-D77RDMKH-D_xRHRLf.js} +1 -1
  76. package/dist/assets/{stateDiagram-v2-MP3YSRHH-CYctHUHC.js → stateDiagram-v2-MP3YSRHH-BQvYFx_a.js} +1 -1
  77. package/dist/assets/{swimlanes-42K2YHIH-CqtUaFZN.js → swimlanes-42K2YHIH-CDQzpfz0.js} +1 -1
  78. package/dist/assets/{swimlanesDiagram-VR7AAH4N-BTvyGqcs.js → swimlanesDiagram-VR7AAH4N-BAn2JKhB.js} +1 -1
  79. package/dist/assets/{swiper-component-BPjhKuFC.js → swiper-component-j-Lk25wW.js} +1 -1
  80. package/dist/assets/{terminal-CWmhjUVd.js → terminal-BToH-U1t.js} +1 -1
  81. package/dist/assets/{timeline-definition-24CTP7MA-DESfjZe6.js → timeline-definition-24CTP7MA-D5Jgj1fz.js} +1 -1
  82. package/dist/assets/{tracing-DHQdLJrw.js → tracing-DtKLmNHj.js} +1 -1
  83. package/dist/assets/{tracing-panel-DkDpfzxp.js → tracing-panel-C5ybTQyJ.js} +2 -2
  84. package/dist/assets/{useCellActionButton-JBMxiVrN.js → useCellActionButton-Bm9OZdcq.js} +1 -1
  85. package/dist/assets/{vega-component-C3dIfNSQ.js → vega-component-DVSvu4vP.js} +1 -1
  86. package/dist/assets/{vega-embed-container-DRnOQFW3.js → vega-embed-container-QM1zZmYi.js} +1 -1
  87. package/dist/assets/{vennDiagram-4TSXK5OY-DVP0MtbH.js → vennDiagram-4TSXK5OY-Cv6jxbpX.js} +1 -1
  88. package/dist/assets/{wardleyDiagram-VM6X3IG4-Boyg2AlL.js → wardleyDiagram-VM6X3IG4-lwv-YoWo.js} +1 -1
  89. package/dist/assets/{xychartDiagram-S5SC5T6Z-6MNoagFi.js → xychartDiagram-S5SC5T6Z-CGM4LlFN.js} +1 -1
  90. package/dist/index.html +4 -4
  91. package/package.json +1 -1
  92. package/src/__tests__/fixtures/pair-preview.ts +1 -1
  93. package/src/components/editor/actions/__tests__/pair-with-agent-commands.test.ts +6 -6
  94. package/src/components/editor/actions/__tests__/pair-with-agent-modal.test.tsx +1 -1
  95. package/src/components/editor/output/Outputs.css +0 -1
  96. package/src/components/ui/table.tsx +1 -1
  97. package/src/css/app/Cell.css +0 -2
  98. package/src/plugins/impl/FileBrowserPlugin.tsx +10 -4
  99. package/src/plugins/impl/__tests__/FileBrowserPlugin.test.tsx +50 -1
  100. package/dist/assets/has-HvSiby4C.js +0 -1
@@ -5,8 +5,9 @@ import { beforeAll, describe, expect, it, vi } from "vitest";
5
5
  import { SetupMocks } from "@/__mocks__/common";
6
6
  import { initialModeAtom } from "@/core/mode";
7
7
  import { store } from "@/core/state/jotai";
8
+ import { CellNotInitializedError } from "@/utils/errors";
8
9
  import type { IPluginProps } from "../../types";
9
- import { FileBrowserPlugin } from "../FileBrowserPlugin";
10
+ import { FileBrowser, FileBrowserPlugin } from "../FileBrowserPlugin";
10
11
 
11
12
  interface MockFile {
12
13
  id: string;
@@ -80,6 +81,54 @@ beforeAll(() => {
80
81
  store.set(initialModeAtom, "edit");
81
82
  });
82
83
 
84
+ describe("FileBrowserPlugin session cache recovery", () => {
85
+ it("retries a failed cached listing when the plugin resets", async () => {
86
+ const host = document.createElement("marimo-file-browser");
87
+ const wrapper = document.createElement("marimo-ui-element");
88
+ wrapper.setAttribute("random-id", "cached-id");
89
+ wrapper.append(host);
90
+
91
+ const props = {
92
+ initialPath: "/home/user",
93
+ filetypes: [],
94
+ selectionMode: "directory",
95
+ multiple: false,
96
+ label: "Pick folder",
97
+ restrictNavigation: false,
98
+ value: [],
99
+ setValue: vi.fn(),
100
+ host,
101
+ };
102
+ const error = new CellNotInitializedError();
103
+ const cachedListDirectory = vi.fn().mockRejectedValue(error);
104
+ const { rerender } = render(
105
+ <FileBrowser {...props} list_directory={cachedListDirectory} />,
106
+ );
107
+ expect(await screen.findByText(error.message)).toBeInTheDocument();
108
+
109
+ // PluginSlot recreates the RPC functions on reset, even when the path
110
+ // and the host's attributes are unchanged.
111
+ const liveListDirectory = mockListDirectory(FILES);
112
+ rerender(<FileBrowser {...props} list_directory={liveListDirectory} />);
113
+
114
+ expect(await screen.findByText("docs")).toBeInTheDocument();
115
+ expect(screen.queryByText(error.message)).not.toBeInTheDocument();
116
+ expect(liveListDirectory.mock.calls).toEqual([[{ path: "/home/user" }]]);
117
+
118
+ fireEvent.click(screen.getByRole("checkbox", { name: "Select docs" }));
119
+ expect(props.setValue).toHaveBeenCalledWith([
120
+ { ...FILES[0], id: FILES[0].path },
121
+ ]);
122
+
123
+ fireEvent.keyDown(screen.getAllByRole("row")[0], { key: "End" });
124
+ rerender(
125
+ <FileBrowser {...props} list_directory={mockListDirectory([FILES[0]])} />,
126
+ );
127
+ await waitFor(() => expect(screen.getAllByRole("row")).toHaveLength(2));
128
+ expect(screen.getAllByRole("row")[0]).toHaveAttribute("tabindex", "0");
129
+ });
130
+ });
131
+
83
132
  describe("FileBrowserPlugin keyboard accessibility", () => {
84
133
  it("renders a row per file plus the parent row", async () => {
85
134
  renderBrowser();
@@ -1 +0,0 @@
1
- import{Ga as e}from"./index-anJECncb.js";var t=Object.prototype.hasOwnProperty;function n(e,n){return e!=null&&t.call(e,n)}function r(t,r){return t!=null&&e(t,r,n)}export{r as t};