@marimo-team/frontend 0.19.8-dev37 → 0.19.8-dev39

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 (67) hide show
  1. package/dist/assets/{CellStatus-BjDayMOF.js → CellStatus-D-CCv4h6.js} +1 -1
  2. package/dist/assets/{JsonOutput-BUok9dqY.js → JsonOutput-CU0ad2LH.js} +1 -1
  3. package/dist/assets/{MarimoErrorOutput-Dxf6p5lw.js → MarimoErrorOutput-BydcsyYP.js} +1 -1
  4. package/dist/assets/{RenderHTML-BUCe3qCj.js → RenderHTML-3amWMGgo.js} +1 -1
  5. package/dist/assets/{add-cell-with-ai-J44RQi7o.js → add-cell-with-ai-B07D0AiE.js} +1 -1
  6. package/dist/assets/{add-database-form-mXHOy5uZ.js → add-database-form-BnEY6X5s.js} +1 -1
  7. package/dist/assets/{agent-panel-Cf8Ij8-7.js → agent-panel-C1O0Y8Bi.js} +1 -1
  8. package/dist/assets/{ai-model-dropdown-DC4t5PJE.js → ai-model-dropdown-Cugcw6NV.js} +4 -4
  9. package/dist/assets/{app-config-button-xVJ4tqzu.js → app-config-button-66OSct-U.js} +1 -1
  10. package/dist/assets/{cell-editor-DqRAVfCm.js → cell-editor-DZgQrVMs.js} +1 -1
  11. package/dist/assets/{cell-link-dnd6DfEI.js → cell-link-B37i0WNz.js} +1 -1
  12. package/dist/assets/{cells-CiFhRLUd.js → cells-B0XKj2oa.js} +1 -1
  13. package/dist/assets/{chat-components-C5FA1-Vu.js → chat-components-BNjAKvAv.js} +1 -1
  14. package/dist/assets/{chat-display-ChS1NL3o.js → chat-display-q9RdcWB-.js} +1 -1
  15. package/dist/assets/{chat-panel-Duk4139r.js → chat-panel-viPqlAXC.js} +1 -1
  16. package/dist/assets/{column-preview-BUTci9vI.js → column-preview-DrmYyyvE.js} +1 -1
  17. package/dist/assets/{command-MHa10zT2.js → command-DTFQw11F.js} +1 -1
  18. package/dist/assets/{command-palette-CV-A8WzZ.js → command-palette-CrOe4bpD.js} +1 -1
  19. package/dist/assets/{common-CR6DwVIy.js → common-C0Pspoza.js} +1 -1
  20. package/dist/assets/{datasource-C7Acf9BM.js → datasource-2_-ICoTV.js} +1 -1
  21. package/dist/assets/{dependency-graph-panel-n8clB1B4.js → dependency-graph-panel-z8kf8Tus.js} +1 -1
  22. package/dist/assets/{documentation-panel-B4SYV31-.js → documentation-panel-DIp1L-6Y.js} +1 -1
  23. package/dist/assets/{download-CUgZOA9O.js → download-CxmzcjnR.js} +1 -1
  24. package/dist/assets/{edit-page-DTcdRtOK.js → edit-page-Bo-t07GL.js} +3 -3
  25. package/dist/assets/{error-panel-Dp0gIK8O.js → error-panel-Cz3rrpG9.js} +1 -1
  26. package/dist/assets/{file-explorer-panel-BqVToUzC.js → file-explorer-panel-BJWXa6fg.js} +1 -1
  27. package/dist/assets/{floating-outline-CZzxqWyr.js → floating-outline-BSd7WV6r.js} +1 -1
  28. package/dist/assets/{focus-CtXToHnV.js → focus-CZLCQiuh.js} +1 -1
  29. package/dist/assets/{form-CvVbbh8Y.js → form-BQhIjeKF.js} +1 -1
  30. package/dist/assets/{globals-D1aM0aUX.js → globals-DvWD0xHx.js} +1 -1
  31. package/dist/assets/{home-page-DJMymeT8.js → home-page-BaZhe30b.js} +1 -1
  32. package/dist/assets/{hooks-STSuFYve.js → hooks-B2h7NTXb.js} +1 -1
  33. package/dist/assets/{html-to-image-BKGhRUqR.js → html-to-image-Cc7t14sm.js} +1 -1
  34. package/dist/assets/{index-GARjwpYQ.js → index-BSNJ0Y0E.js} +3 -3
  35. package/dist/assets/{kiosk-mode-B93ch1Yg.js → kiosk-mode-S90PbrZr.js} +1 -1
  36. package/dist/assets/{layout-DWzvYkJc.js → layout-BRVYycwo.js} +1 -1
  37. package/dist/assets/{logs-panel-Cqc-8g3U.js → logs-panel-DU1PTK6I.js} +1 -1
  38. package/dist/assets/{markdown-renderer-Dotqbx_q.js → markdown-renderer-Y3WEBmX7.js} +1 -1
  39. package/dist/assets/{mode-O-1bKZO6.js → mode-CTf4rB7H.js} +1 -1
  40. package/dist/assets/{name-cell-input-Bb4XgE9B.js → name-cell-input-Bmq-KdJ-.js} +1 -1
  41. package/dist/assets/{outline-panel-DvQn81N7.js → outline-panel-Cfpy5BTW.js} +1 -1
  42. package/dist/assets/{packages-panel-CFja8lcb.js → packages-panel-C2SNGD_P.js} +1 -1
  43. package/dist/assets/{panels-DkQNKTXx.js → panels-H6ZOifLe.js} +1 -1
  44. package/dist/assets/{process-output-B1EqjOGn.js → process-output-CdIpMer6.js} +1 -1
  45. package/dist/assets/{readonly-python-code-3nLIGqDx.js → readonly-python-code-o3TsTcFg.js} +1 -1
  46. package/dist/assets/{run-page-CyMNZt0d.js → run-page-C4QFxEzE.js} +1 -1
  47. package/dist/assets/{scratchpad-panel-eznTRPdo.js → scratchpad-panel-9Nh-KCKz.js} +1 -1
  48. package/dist/assets/{session-panel-y6latVrC.js → session-panel-9cibvZIi.js} +1 -1
  49. package/dist/assets/{snippets-panel-Exg8CrcD.js → snippets-panel-BLiaEg0s.js} +1 -1
  50. package/dist/assets/{state-CMAvJZxx.js → state-Q32Iqos3.js} +1 -1
  51. package/dist/assets/{switch-BF1BnESM.js → switch-D5W4wgWK.js} +1 -1
  52. package/dist/assets/{textarea-sdXkC92D.js → textarea-UfsPtSW1.js} +1 -1
  53. package/dist/assets/{tracing-BCW3BhkT.js → tracing-BqFhwuOc.js} +1 -1
  54. package/dist/assets/{tracing-panel-0nE7-znv.js → tracing-panel-R9i0TrmX.js} +2 -2
  55. package/dist/assets/{types-ChPQge47.js → types-DIb0tcCO.js} +1 -1
  56. package/dist/assets/{useAddCell-DQzBfMNz.js → useAddCell-CXRk4Ma4.js} +1 -1
  57. package/dist/assets/{useCellActionButton-ChlSq72t.js → useCellActionButton-Du-bZZ06.js} +1 -1
  58. package/dist/assets/{useDeleteCell-BocCAiDk.js → useDeleteCell-D0DAGwMP.js} +1 -1
  59. package/dist/assets/{useDependencyPanelTab-BUgnrQ1n.js → useDependencyPanelTab-CN5-nxOy.js} +1 -1
  60. package/dist/assets/{useNotebookActions-DuB13MhL.js → useNotebookActions--9xrGXss.js} +1 -1
  61. package/dist/assets/{useRunCells-CNmJhP6h.js → useRunCells-DaW_oMnr.js} +1 -1
  62. package/dist/assets/{useSplitCell-DwvRo6W7.js → useSplitCell-Cjr7nuBc.js} +1 -1
  63. package/dist/assets/{utilities.esm-OH_d3CNC.js → utilities.esm-Bfd1Y8aF.js} +1 -1
  64. package/dist/index.html +31 -31
  65. package/package.json +1 -1
  66. package/src/utils/__tests__/id-tree.test.ts +22 -7
  67. package/src/utils/id-tree.tsx +11 -19
@@ -360,7 +360,8 @@ export class CollapsibleTree<T> {
360
360
  }
361
361
 
362
362
  /**
363
- * Expand a node and all of its children
363
+ * Expand a node and all of its children.
364
+ * If the node is already expanded, returns the same tree (no-op).
364
365
  */
365
366
  expand(id: T): CollapsibleTree<T> {
366
367
  const nodeIndex = this.nodes.findIndex((n) => n.value === id);
@@ -373,7 +374,8 @@ export class CollapsibleTree<T> {
373
374
  let nodes = [...this.nodes];
374
375
  const node = nodes[nodeIndex];
375
376
  if (!node.isCollapsed) {
376
- throw new Error(`Node ${id} is already expanded`);
377
+ // Already expanded, no-op
378
+ return this;
377
379
  }
378
380
 
379
381
  nodes[nodeIndex] = new TreeNode(node.value, false, []);
@@ -495,13 +497,9 @@ export class CollapsibleTree<T> {
495
497
  */
496
498
  deleteAtIndex(idx: number): CollapsibleTree<T> {
497
499
  const id = this.atOrThrow(idx);
498
- let tree = this.withNodes(this.nodes);
499
- try {
500
- tree = tree.expand(id);
501
- } catch {
502
- // Don't care if its not expanded
503
- }
504
- return this.withNodes(arrayDelete(tree.nodes, idx));
500
+ // Expand the node first (if collapsed) to bring children back to top level
501
+ const tree = this.expand(id);
502
+ return tree.withNodes(arrayDelete(tree.nodes, idx));
505
503
  }
506
504
 
507
505
  delete(id: T): CollapsibleTree<T> {
@@ -524,16 +522,10 @@ export class CollapsibleTree<T> {
524
522
  if (found.length === 0) {
525
523
  return this;
526
524
  }
527
- let result = this.withNodes(this.nodes);
528
- for (const node of found) {
529
- try {
530
- result = result.expand(node);
531
- } catch {
532
- // Don't care if its the last node and its not expanded
533
- }
534
- }
535
-
536
- return result;
525
+ return found.reduce<CollapsibleTree<T>>(
526
+ (acc, node) => acc.expand(node),
527
+ this,
528
+ );
537
529
  }
538
530
 
539
531
  /**