@marimo-team/islands 0.22.1-dev9 → 0.22.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 (481) hide show
  1. package/dist/{ConnectedDataExplorerComponent-iT7t3FxV.js → ConnectedDataExplorerComponent-DuD8BVl6.js} +54 -54
  2. package/dist/{Plot-WhbJAbBh.js → Plot-BxlSHo0G.js} +47 -38
  3. package/dist/_basePickBy-Sow3pJjS.js +41 -0
  4. package/dist/{_baseUniq-B4eL5sTC.js → _baseUniq-C87CckHL.js} +15 -54
  5. package/dist/{any-language-editor-CT_9yBde.js → any-language-editor-BHH_pQ6M.js} +21 -21
  6. package/dist/architecture-7HQA4BMR-BHdkAMvZ.js +6 -0
  7. package/dist/{architectureDiagram-VXUJARFQ-vxgYGIMP.js → architectureDiagram-VXUJARFQ-B3YQo9At.js} +15 -15
  8. package/dist/{arrays-Du-jRBAy.js → arrays-beUWo8RF.js} +1 -1
  9. package/dist/assets/__vite-browser-external-WSlCcXn_.js +1 -0
  10. package/dist/assets/{worker-D10K3OOz.js → worker-DUYMdbtA.js} +2 -2
  11. package/dist/{blockDiagram-VD42YOAC-C7x6YTH7.js → blockDiagram-VD42YOAC-CpQ3TKEN.js} +7 -7
  12. package/dist/{button-qsiIHncQ.js → button-DNlNlZY_.js} +82 -84
  13. package/dist/{c4Diagram-YG6GDRKO-Cx4oseGg.js → c4Diagram-YG6GDRKO-CZSU4uqU.js} +4 -4
  14. package/dist/{capabilities-26mwv03y.js → capabilities-Coe9eM9T.js} +2 -2
  15. package/dist/{channel-C_50jIAn.js → channel-X3JKk8gE.js} +1 -1
  16. package/dist/{chat-ui-CtqUthFR.js → chat-ui-Cel1kBfc.js} +147 -146
  17. package/dist/{check-D_YwHEgY.js → check-CWUkiHmb.js} +1 -1
  18. package/dist/{chunk-4F5CHEZ2-Dvo_CFnR.js → chunk-4F5CHEZ2-D5mClyDv.js} +1 -1
  19. package/dist/{chunk-ABZYJK2D-D5YIs71w.js → chunk-ABZYJK2D-CZYCCtLy.js} +1 -1
  20. package/dist/{chunk-ATLVNIR6-CyOjzOcf.js → chunk-ATLVNIR6-DaOzLLgN.js} +1 -1
  21. package/dist/{chunk-B2363JML-BzZqINRO.js → chunk-B2363JML-Br0eA2T3.js} +1 -1
  22. package/dist/{chunk-B4BG7PRW-ZJeV3KdD.js → chunk-B4BG7PRW-4BjV11Br.js} +4 -4
  23. package/dist/{chunk-DI55MBZ5-Dx_wwX6l.js → chunk-DI55MBZ5-DITY3EyP.js} +4 -4
  24. package/dist/{chunk-EXTU4WIE-CgefpSXQ.js → chunk-EXTU4WIE-jUPSAk3i.js} +1 -1
  25. package/dist/{chunk-FRFDVMJY-Derq8UzY.js → chunk-FRFDVMJY-DnEvEFRR.js} +1 -1
  26. package/dist/{chunk-JA3XYJ7Z-CcIOIFpc.js → chunk-JA3XYJ7Z-BcPEfxk_.js} +2 -2
  27. package/dist/{chunk-JZLCHNYA-CgO0GG1p.js → chunk-JZLCHNYA-2bnLL3xL.js} +4 -4
  28. package/dist/{chunk-N4CR4FBY-2qzGzAxT.js → chunk-N4CR4FBY-CpZSuGSU.js} +5 -5
  29. package/dist/{chunk-PL6DKKU2-KoG71Zin.js → chunk-PL6DKKU2-DnId6G-x.js} +1 -1
  30. package/dist/{chunk-QN33PNHL-Dp1qBo28.js → chunk-QN33PNHL-B9p5ojHB.js} +1 -1
  31. package/dist/{chunk-QXUST7PY-BxmmeIwf.js → chunk-QXUST7PY-Ch6F5Obl.js} +5 -5
  32. package/dist/{chunk-S3R3BYOJ-D3Rys9ZW.js → chunk-S3R3BYOJ-B0UOFJwq.js} +3 -3
  33. package/dist/{chunk-SJTYNZTY-Co-DhKAG.js → chunk-SJTYNZTY-BsBZnJUj.js} +1 -1
  34. package/dist/{chunk-TCCFYFTB-BAhzIqBO.js → chunk-TCCFYFTB-Clbl-fTg.js} +8 -7
  35. package/dist/{chunk-TQ3KTPDO-DxYI735Z.js → chunk-TQ3KTPDO-CFkSQ30e.js} +1 -1
  36. package/dist/{chunk-TZMSLE5B-Dxumt0wv.js → chunk-TZMSLE5B-D45397J2.js} +1 -1
  37. package/dist/{chunk-UMXZTB3W-CuahpKin.js → chunk-UMXZTB3W-D-A834Bq.js} +1 -1
  38. package/dist/{classDiagram-v2-WZHVMYZB-CYoFMQKE.js → classDiagram-2ON5EDUG-C8-zE3Zv.js} +10 -10
  39. package/dist/{classDiagram-2ON5EDUG-DkOvXRlx.js → classDiagram-v2-WZHVMYZB-DrmbGANl.js} +10 -10
  40. package/dist/{clone-DDndUqI0.js → clone-DZFQCtFJ.js} +1 -1
  41. package/dist/{constants-D1Am36hX.js → constants-CvyfaCvs.js} +3 -3
  42. package/dist/{copy-CBo9JcJW.js → copy-B7781WJ3.js} +2 -2
  43. package/dist/{dagre-6UL2VRFP-BXBaU8PB.js → dagre-6UL2VRFP-OMItEBnY.js} +12 -12
  44. package/dist/{dagre-D3dlYz-r.js → dagre-QVd-lCXU.js} +13 -23
  45. package/dist/{data-grid-overlay-editor-nZux6_d2.js → data-grid-overlay-editor-lKF301ME.js} +1 -1
  46. package/dist/{diagram-PSM6KHXK-CJxjk4LG.js → diagram-PSM6KHXK-CkKbohWI.js} +16 -16
  47. package/dist/{diagram-QEK2KX5R-IMILPh_p.js → diagram-QEK2KX5R-DjUMpVcx.js} +14 -14
  48. package/dist/{diagram-S2PKOQOG-6O0g6Boj.js → diagram-S2PKOQOG-b-c0d-wZ.js} +14 -14
  49. package/dist/{dist-BkXs8bw0.js → dist--6TSlp8H.js} +1 -1
  50. package/dist/dist-7K5doRvB.js +6 -0
  51. package/dist/{dist-CQidOwep.js → dist-B43sbpd0.js} +3 -3
  52. package/dist/dist-B6I_A2-E.js +8 -0
  53. package/dist/dist-BEQsmaZY.js +5 -0
  54. package/dist/dist-BasY2RHp.js +8 -0
  55. package/dist/{dist-BemtTYzN.js → dist-Bfp1XXWt.js} +5 -5
  56. package/dist/{dist-v-1kgqZ3.js → dist-BjDuO5JW.js} +1 -1
  57. package/dist/dist-Bosc00dY.js +5 -0
  58. package/dist/{dist-DLNKBPsk.js → dist-BrxqmS9Q.js} +4 -4
  59. package/dist/{dist-DBYL08Lu.js → dist-BvhGByxL.js} +4 -4
  60. package/dist/{dist-CVqlhD3M.js → dist-C4bq5Ioy.js} +2 -2
  61. package/dist/{dist-DwmxBUOe.js → dist-CFKdzOIu.js} +2 -2
  62. package/dist/{dist-5nTQE2yt.js → dist-CIB8w0Fl.js} +2 -2
  63. package/dist/{dist-C-EcLtO9.js → dist-CNF0QBLR.js} +1 -1
  64. package/dist/dist-CQMZOn-_.js +8 -0
  65. package/dist/dist-CViQhWZ8.js +5 -0
  66. package/dist/{dist-Dg65j0em.js → dist-CcMfr7jD.js} +1 -1
  67. package/dist/{dist-C0XYIHKJ.js → dist-Ci0CXEFt.js} +1 -1
  68. package/dist/dist-Cz6rLfwY.js +5 -0
  69. package/dist/dist-D8eq8st3.js +6 -0
  70. package/dist/{dist-qoCY8giM.js → dist-DAfcmt-d.js} +2 -2
  71. package/dist/{dist-B6Op2ogv.js → dist-DD_cYHOl.js} +2 -2
  72. package/dist/{dist-BUSLKXcu.js → dist-DFK94vuS.js} +2 -2
  73. package/dist/{dist-DBXPlQ0D.js → dist-DGNtjMZu.js} +1 -1
  74. package/dist/{dist-C9qF7MRB.js → dist-DJ9F1eHs.js} +2 -2
  75. package/dist/{dist-Ci_jEudG.js → dist-DJKubHDd.js} +1 -1
  76. package/dist/{dist-CnFp2Kcl.js → dist-DLafRu9s.js} +2 -2
  77. package/dist/dist-DM1UDXdl.js +5 -0
  78. package/dist/dist-DNrtWPgS.js +5 -0
  79. package/dist/dist-D_UjpfOY.js +1381 -0
  80. package/dist/{dist-DmFS6KZW.js → dist-DbnBiLNH.js} +3 -3
  81. package/dist/{dist-BiZZAo22.js → dist-DlSUOIm9.js} +1 -1
  82. package/dist/{dist-DStU8He1.js → dist-Doy0mQDg.js} +2 -2
  83. package/dist/{dist-CxAX99oC.js → dist-DpkJHKB8.js} +2 -2
  84. package/dist/{dist-DjaZNkZ7.js → dist-LhQNUe5A.js} +3 -3
  85. package/dist/dist-V7q2qnpA.js +5 -0
  86. package/dist/{dist-BJ3fhRYu.js → dist-VqF3W_ue.js} +2 -2
  87. package/dist/dist-a5_hPgu2.js +8 -0
  88. package/dist/{dist-B9KLrfoh.js → dist-ej6AQKaS.js} +1 -1
  89. package/dist/{dist-Brb6VNc4.js → dist-m9tsXsFf.js} +2 -2
  90. package/dist/{dist-CBwMSFDu.js → dist-tGk0aZ--.js} +2 -2
  91. package/dist/dist-uVyZcV1-.js +5 -0
  92. package/dist/{erDiagram-Q2GNP2WA-sho7Cl9f.js → erDiagram-Q2GNP2WA-CDhLaOZ1.js} +10 -10
  93. package/dist/{error-banner-Bx9kIgrs.js → error-banner-Cjf0RU9I.js} +79 -79
  94. package/dist/{esm-CMg2ABu6.js → esm-4wmsH2lp.js} +6 -6
  95. package/dist/{esm-cqK9POGH.js → esm-CD1iby2n.js} +23 -23
  96. package/dist/{flowDiagram-NV44I4VS-C4nY4Fbz.js → flowDiagram-NV44I4VS-BDi4O4CL.js} +10 -10
  97. package/dist/{ganttDiagram-JELNMOA3-CtxNcCM2.js → ganttDiagram-JELNMOA3-BpZE6kVp.js} +3 -3
  98. package/dist/{gitGraph-G5XIXVHT-SL6TDof6.js → gitGraph-G5XIXVHT-B_c6xFJv.js} +3 -3
  99. package/dist/{gitGraphDiagram-V2S2FVAM-D9885mxd.js → gitGraphDiagram-V2S2FVAM-iQnXzbPM.js} +13 -13
  100. package/dist/{glide-data-editor-CkVEV-Gk.js → glide-data-editor-BqnvTmDo.js} +1739 -1708
  101. package/dist/{graphlib-CxWdvYQt.js → graphlib-BV1_gi0C.js} +4 -3
  102. package/dist/hasIn-DnfJcYpY.js +108 -0
  103. package/dist/{info-VBDWY6EO-6MXPTSmi.js → info-VBDWY6EO-BTyzxmhr.js} +3 -3
  104. package/dist/{infoDiagram-HS3SLOUP-Bw2FlRwF.js → infoDiagram-HS3SLOUP-OYrX6uO3.js} +13 -13
  105. package/dist/{input-BSde8uV4.js → input-CFY9gApZ.js} +5055 -5055
  106. package/dist/{isEmpty-BQtUinxJ.js → isEmpty-B7FX9wKt.js} +1 -1
  107. package/dist/{isSymbol-DFp8040B.js → isSymbol-DCbjQG_U.js} +1 -1
  108. package/dist/{journeyDiagram-XKPGCS4Q-BXlCEth8.js → journeyDiagram-XKPGCS4Q-ClPC94aN.js} +3 -3
  109. package/dist/{kanban-definition-3W4ZIXB7-CorxzSYm.js → kanban-definition-3W4ZIXB7-DHEAKdZt.js} +7 -7
  110. package/dist/{label-DTNqw9tv.js → label-DbZGAoCH.js} +538 -569
  111. package/dist/{loader-CMMa6QVT.js → loader-Bd1kgLn7.js} +15 -15
  112. package/dist/main.js +35011 -34898
  113. package/dist/{memoize-CuHciEBb.js → memoize-CSTI9eOX.js} +1 -1
  114. package/dist/{merge-CA_buyY3.js → merge-CVhG7q_o.js} +1 -1
  115. package/dist/{mermaid-CEKslOkI.js → mermaid-B2HDLx2g.js} +54 -54
  116. package/dist/{mermaid-parser.core-cq4YDee-.js → mermaid-parser.core-ntCgyx0x.js} +8 -8
  117. package/dist/min-Ds3gG0Ff.js +96 -0
  118. package/dist/{mindmap-definition-VGOIOE7T-DRsT8UaN.js → mindmap-definition-VGOIOE7T-CxEUZZvY.js} +9 -9
  119. package/dist/{now-CXAdKY5k.js → now-nrrrOr01.js} +1 -1
  120. package/dist/{once-CZno0h-b.js → once-C_TIu-kR.js} +1 -1
  121. package/dist/{packet-DYOGHKS2-Dw08gMaZ.js → packet-DYOGHKS2-BhvnpoGi.js} +3 -3
  122. package/dist/{pie-VRWISCQL-C5SPSvT8.js → pie-VRWISCQL-dILuA3iG.js} +3 -3
  123. package/dist/{pieDiagram-ADFJNKIX-DhJ1Cx2O.js → pieDiagram-ADFJNKIX-U3LrUqAS.js} +14 -14
  124. package/dist/{process-output-KyzWazB-.js → process-output-DC1TOnIl.js} +3184 -3207
  125. package/dist/{quadrantDiagram-AYHSOK5B-DXUFIWlz.js → quadrantDiagram-AYHSOK5B-BVWuq-3R.js} +2 -2
  126. package/dist/{radar-ZZBFDIW7-BvY0bgSg.js → radar-ZZBFDIW7-DwFrOJDj.js} +3 -3
  127. package/dist/range-fJeId9Ri.js +30 -0
  128. package/dist/{requirementDiagram-UZGBJVZJ-DO_gtQIb.js → requirementDiagram-UZGBJVZJ-D0zpQnKC.js} +9 -9
  129. package/dist/{sankeyDiagram-TZEHDZUN-OZzXEkuG.js → sankeyDiagram-TZEHDZUN-CExy1joT.js} +2 -2
  130. package/dist/{sequenceDiagram-WL72ISMW-K7nZRifV.js → sequenceDiagram-WL72ISMW-D1BJxLjH.js} +4 -4
  131. package/dist/{slides-component-CIcSvFh7.js → slides-component-CX2JC-Ws.js} +2 -2
  132. package/dist/{spec-DYaR1rJh.js → spec-CD7QaCV-.js} +3 -3
  133. package/dist/{stateDiagram-FKZM4ZOC-DzXJZAq7.js → stateDiagram-FKZM4ZOC-B1S8jGMn.js} +12 -12
  134. package/dist/{stateDiagram-v2-4FDKWEC3-BZBPUmyF.js → stateDiagram-v2-4FDKWEC3-BH5ozUbc.js} +10 -10
  135. package/dist/stex-CQDv3aS8.js +4 -0
  136. package/dist/style.css +1 -1
  137. package/dist/{timeline-definition-IT6M3QCI-DNoLAh-i.js → timeline-definition-IT6M3QCI-BDT9JAmn.js} +2 -2
  138. package/dist/{toDate-D6VXexnV.js → toDate-CUqpEbBS.js} +5 -5
  139. package/dist/{toNumber-xFPoy1OI.js → toNumber-55tjPCWr.js} +2 -2
  140. package/dist/tooltip-BXEpXV3R.js +404 -0
  141. package/dist/{treemap-GDKQZRPO-C5OoxpmV.js → treemap-GDKQZRPO-bx2ngsgN.js} +3 -3
  142. package/dist/{types-CQ-RbYxp.js → types-D_ntCXg0.js} +3 -3
  143. package/dist/{useAsyncData-Cd4Urlww.js → useAsyncData-rN1nzPaS.js} +2 -2
  144. package/dist/{useDeepCompareMemoize-DOzKCTzc.js → useDeepCompareMemoize-Ch-7Rk2x.js} +4 -4
  145. package/dist/{useIframeCapabilities-BVQrlRBd.js → useIframeCapabilities-CqhrVue6.js} +1 -1
  146. package/dist/useLifecycle-4fA1pHoh.js +177 -0
  147. package/dist/{useTheme-Dm1WaAGy.js → useTheme-MWfxn4oz.js} +4 -5
  148. package/dist/{vega-component-BaDgUvQP.js → vega-component-CPhNLfZZ.js} +25 -25
  149. package/dist/{xychartDiagram-PRI3JC2R-ehVeySMW.js → xychartDiagram-PRI3JC2R-CuAZiqHS.js} +5 -5
  150. package/dist/{Combination-B--d1_LV.js → zod-C6UGQ3fz.js} +8085 -8151
  151. package/package.json +8 -41
  152. package/src/__mocks__/common.ts +4 -4
  153. package/src/__tests__/main.test.tsx +12 -14
  154. package/src/components/ai/ai-provider-icon.tsx +3 -2
  155. package/src/components/app-config/user-config-form.tsx +0 -27
  156. package/src/components/chat/acp/agent-docs.tsx +3 -3
  157. package/src/components/chat/acp/agent-panel.tsx +71 -24
  158. package/src/components/chat/acp/agent-selector.tsx +2 -11
  159. package/src/components/chat/acp/state.ts +15 -3
  160. package/src/components/chat/chat-history-popover.tsx +1 -1
  161. package/src/components/chat/chat-panel.tsx +2 -1
  162. package/src/components/data-table/TableBottomBar.tsx +7 -1
  163. package/src/components/data-table/TableTopBar.tsx +31 -35
  164. package/src/components/data-table/__tests__/columns.test.tsx +7 -7
  165. package/src/components/data-table/cell-hover-template/types.ts +1 -1
  166. package/src/components/data-table/cell-hover-text/types.ts +1 -1
  167. package/src/components/data-table/cell-selection/__tests__/feature.test.ts +1 -1
  168. package/src/components/data-table/cell-selection/types.ts +4 -3
  169. package/src/components/data-table/cell-styling/types.ts +1 -1
  170. package/src/components/data-table/charts/chart-spec/altair-generator.ts +2 -2
  171. package/src/components/data-table/charts/charts.tsx +2 -2
  172. package/src/components/data-table/charts/components/chart-items.tsx +1 -1
  173. package/src/components/data-table/column-explorer-panel/column-explorer.tsx +1 -1
  174. package/src/components/data-table/column-formatting/types.ts +5 -4
  175. package/src/components/data-table/column-header.tsx +4 -2
  176. package/src/components/data-table/column-summary/legacy-chart-spec.ts +1 -1
  177. package/src/components/data-table/column-wrapping/types.ts +4 -3
  178. package/src/components/data-table/columns.tsx +4 -1
  179. package/src/components/data-table/copy-column/types.ts +4 -3
  180. package/src/components/data-table/data-table.tsx +12 -11
  181. package/src/components/data-table/focus-row/types.ts +4 -3
  182. package/src/components/data-table/loading-table.tsx +1 -1
  183. package/src/components/data-table/pagination.tsx +1 -1
  184. package/src/components/data-table/range-focus/__tests__/atoms.test.ts +13 -13
  185. package/src/components/data-table/range-focus/__tests__/use-cell-range-selection.test.ts +9 -11
  186. package/src/components/data-table/range-focus/atoms.ts +2 -2
  187. package/src/components/data-table/range-focus/cell-selection-stats.tsx +3 -1
  188. package/src/components/data-table/renderers.tsx +18 -12
  189. package/src/components/data-table/row-viewer-panel/row-viewer.tsx +1 -1
  190. package/src/components/data-table/table-explorer-panel/table-explorer-panel.tsx +2 -2
  191. package/src/components/dependency-graph/dependency-graph-tree.tsx +1 -1
  192. package/src/components/editor/__tests__/data-attributes.test.tsx +93 -94
  193. package/src/components/editor/__tests__/dynamic-favicon.test.tsx +1 -1
  194. package/src/components/editor/actions/name-cell-input.tsx +4 -2
  195. package/src/components/editor/actions/pair-with-agent-modal.tsx +179 -0
  196. package/src/components/editor/actions/useCellActionButton.tsx +4 -2
  197. package/src/components/editor/actions/useNotebookActions.tsx +10 -0
  198. package/src/components/editor/ai/add-cell-with-ai.tsx +2 -1
  199. package/src/components/editor/ai/ai-completion-editor.tsx +1 -1
  200. package/src/components/editor/app-container.tsx +1 -1
  201. package/src/components/editor/cell/CellStatus.tsx +4 -5
  202. package/src/components/editor/cell/cell-context-menu.tsx +4 -2
  203. package/src/components/editor/cell/code/cell-editor.tsx +3 -2
  204. package/src/components/editor/cell/toolbar.tsx +2 -1
  205. package/src/components/editor/chrome/components/contribute-snippet-button.tsx +4 -1
  206. package/src/components/editor/chrome/components/feedback-button.tsx +4 -1
  207. package/src/components/editor/chrome/panels/context-aware-panel/context-aware-panel.tsx +1 -1
  208. package/src/components/editor/chrome/panels/empty-state.tsx +1 -0
  209. package/src/components/editor/chrome/panels/file-explorer-panel.tsx +0 -10
  210. package/src/components/editor/chrome/panels/snippets-panel.tsx +1 -1
  211. package/src/components/editor/chrome/panels/write-secret-modal.tsx +1 -1
  212. package/src/components/editor/chrome/wrapper/app-chrome.tsx +4 -1
  213. package/src/components/editor/chrome/wrapper/footer-items/lsp-status.tsx +2 -1
  214. package/src/components/editor/chrome/wrapper/storage.ts +2 -2
  215. package/src/components/editor/connections/database/as-code.ts +1 -1
  216. package/src/components/editor/connections/form-renderers.tsx +1 -1
  217. package/src/components/editor/connections/storage/as-code.ts +1 -1
  218. package/src/components/editor/controls/keyboard-shortcuts.tsx +1 -1
  219. package/src/components/editor/header/filename-input.tsx +4 -1
  220. package/src/components/editor/links/cell-link-list.tsx +1 -1
  221. package/src/components/editor/navigation/__tests__/navigation.test.ts +1 -1
  222. package/src/components/editor/navigation/clipboard.ts +1 -1
  223. package/src/components/editor/navigation/multi-cell-action-toolbar.tsx +2 -2
  224. package/src/components/editor/navigation/navigation.ts +3 -3
  225. package/src/components/editor/notebook-cell.tsx +1 -1
  226. package/src/components/editor/output/JsonOutput.tsx +6 -6
  227. package/src/components/editor/output/ansi-reduce.ts +2 -2
  228. package/src/components/editor/output/console/ConsoleOutput.tsx +2 -2
  229. package/src/components/editor/renderers/cells-renderer.tsx +1 -1
  230. package/src/components/editor/renderers/grid-layout/grid-layout.tsx +1 -1
  231. package/src/components/editor/renderers/plugins.ts +1 -1
  232. package/src/components/editor/renderers/slides-layout/types.ts +2 -2
  233. package/src/components/editor/renderers/vertical-layout/__tests__/useFocusFirstEditor.test.ts +2 -2
  234. package/src/components/editor/renderers/vertical-layout/__tests__/vertical-layout.test.ts +1 -1
  235. package/src/components/editor/renderers/vertical-layout/vertical-layout.tsx +12 -13
  236. package/src/components/find-replace/find-replace.tsx +3 -1
  237. package/src/components/forms/form.tsx +1 -1
  238. package/src/components/forms/options.ts +1 -1
  239. package/src/components/pages/gallery-page.tsx +1 -1
  240. package/src/components/static-html/static-banner.tsx +2 -2
  241. package/src/components/storage/__tests__/storage-snippets.test.ts +4 -6
  242. package/src/components/terminal/terminal.tsx +4 -4
  243. package/src/components/tracing/tracing.test.tsx +30 -30
  244. package/src/components/ui/accordion.tsx +1 -1
  245. package/src/components/ui/alert-dialog.tsx +1 -1
  246. package/src/components/ui/badge.tsx +2 -1
  247. package/src/components/ui/button.tsx +5 -4
  248. package/src/components/ui/calendar.tsx +3 -2
  249. package/src/components/ui/checkbox.tsx +1 -1
  250. package/src/components/ui/combobox.tsx +2 -1
  251. package/src/components/ui/command.tsx +5 -2
  252. package/src/components/ui/context-menu.tsx +1 -1
  253. package/src/components/ui/date-input.tsx +7 -6
  254. package/src/components/ui/date-picker.tsx +6 -4
  255. package/src/components/ui/dialog.tsx +1 -1
  256. package/src/components/ui/draggable-popover.tsx +1 -1
  257. package/src/components/ui/dropdown-menu.tsx +2 -1
  258. package/src/components/ui/field.tsx +1 -2
  259. package/src/components/ui/form.tsx +4 -5
  260. package/src/components/ui/fullscreen.tsx +4 -1
  261. package/src/components/ui/label.tsx +1 -1
  262. package/src/components/ui/navigation.tsx +1 -1
  263. package/src/components/ui/popover.tsx +1 -1
  264. package/src/components/ui/progress.tsx +4 -3
  265. package/src/components/ui/query-param-preserving-link.tsx +4 -2
  266. package/src/components/ui/radio-group.tsx +1 -1
  267. package/src/components/ui/range-slider.tsx +1 -1
  268. package/src/components/ui/scroll-area.tsx +1 -1
  269. package/src/components/ui/select.tsx +1 -1
  270. package/src/components/ui/sheet.tsx +3 -2
  271. package/src/components/ui/slider.tsx +1 -1
  272. package/src/components/ui/switch.tsx +1 -1
  273. package/src/components/ui/tabs.tsx +1 -1
  274. package/src/components/ui/textarea.tsx +1 -2
  275. package/src/components/ui/toast.tsx +1 -1
  276. package/src/components/ui/toggle.tsx +1 -1
  277. package/src/components/ui/tooltip.tsx +1 -1
  278. package/src/components/variables/variables-table.tsx +1 -1
  279. package/src/core/ai/context/providers/__tests__/datasource.test.ts +1 -1
  280. package/src/core/ai/context/providers/__tests__/error.test.ts +1 -1
  281. package/src/core/ai/context/providers/__tests__/variable.test.ts +1 -1
  282. package/src/core/ai/context/providers/cell-output.ts +1 -2
  283. package/src/core/ai/context/registry.ts +2 -2
  284. package/src/core/ai/tools/edit-notebook-tool.ts +4 -3
  285. package/src/core/ai/tools/registry.ts +1 -1
  286. package/src/core/ai/tools/run-cells-tool.ts +4 -3
  287. package/src/core/cells/__tests__/add-missing-import.test.ts +23 -22
  288. package/src/core/cells/__tests__/cell.test.ts +14 -13
  289. package/src/core/cells/__tests__/cells.test.ts +2 -2
  290. package/src/core/cells/__tests__/scrollCellIntoView.test.ts +1 -1
  291. package/src/core/cells/__tests__/session.test.ts +1 -1
  292. package/src/core/cells/__tests__/utils.test.ts +1 -1
  293. package/src/core/cells/cells.ts +2 -2
  294. package/src/core/cells/ids.ts +1 -1
  295. package/src/core/cells/logs.ts +1 -1
  296. package/src/core/codemirror/ai/request.ts +1 -1
  297. package/src/core/codemirror/cells/__tests__/extensions.test.ts +15 -17
  298. package/src/core/codemirror/cells/traceback-decorations.ts +1 -1
  299. package/src/core/codemirror/copilot/__tests__/language-server.test.ts +1 -1
  300. package/src/core/codemirror/copilot/__tests__/transport.test.ts +129 -3
  301. package/src/core/codemirror/copilot/client.ts +9 -2
  302. package/src/core/codemirror/copilot/getCodes.ts +1 -1
  303. package/src/core/codemirror/copilot/language-server.ts +12 -1
  304. package/src/core/codemirror/copilot/transport.ts +34 -8
  305. package/src/core/codemirror/copilot/types.ts +1 -1
  306. package/src/core/codemirror/facet.ts +1 -1
  307. package/src/core/codemirror/language/__tests__/sql.test.ts +4 -4
  308. package/src/core/codemirror/language/languages/markdown.ts +1 -3
  309. package/src/core/codemirror/language/languages/python.ts +4 -0
  310. package/src/core/codemirror/language/languages/sql/completion-builder.ts +1 -1
  311. package/src/core/codemirror/language/languages/sql/completion-sources.tsx +4 -6
  312. package/src/core/codemirror/language/languages/sql/sql.ts +1 -3
  313. package/src/core/codemirror/language/metadata.ts +1 -1
  314. package/src/core/codemirror/language/panel/sql.tsx +4 -1
  315. package/src/core/codemirror/language/types.ts +1 -1
  316. package/src/core/codemirror/lsp/__tests__/notebook-lsp.test.ts +1 -1
  317. package/src/core/codemirror/lsp/notebook-lsp.ts +1 -1
  318. package/src/core/codemirror/misc/__tests__/dnd.test.ts +1 -1
  319. package/src/core/codemirror/reactive-references/__tests__/analyzer.test.ts +28 -42
  320. package/src/core/codemirror/rtc/loro/awareness.ts +1 -1
  321. package/src/core/config/__tests__/config-schema.test.ts +2 -6
  322. package/src/core/config/config-schema.ts +0 -1
  323. package/src/core/config/feature-flag.tsx +1 -3
  324. package/src/core/datasets/data-source-connections.ts +4 -2
  325. package/src/core/datasets/state.ts +1 -1
  326. package/src/core/dom/__tests__/htmlUtils.test.ts +8 -14
  327. package/src/core/dom/__tests__/outline.test.ts +2 -3
  328. package/src/core/dom/outline.ts +1 -1
  329. package/src/core/dom/uiregistry.ts +42 -8
  330. package/src/core/edit-app.tsx +4 -1
  331. package/src/core/export/__tests__/hooks.test.ts +1 -1
  332. package/src/core/hotkeys/__tests__/hotkeys.test.ts +1 -1
  333. package/src/core/hotkeys/shortcuts.ts +1 -1
  334. package/src/core/islands/__tests__/bridge.test.ts +2 -2
  335. package/src/core/islands/__tests__/parse.test.ts +8 -7
  336. package/src/core/islands/bridge.ts +2 -2
  337. package/src/core/islands/components/output-wrapper.tsx +1 -1
  338. package/src/core/islands/parse.ts +1 -1
  339. package/src/core/lsp/__tests__/transport.test.ts +1 -1
  340. package/src/core/network/CachingRequestRegistry.ts +1 -1
  341. package/src/core/network/DeferredRequestRegistry.ts +1 -1
  342. package/src/core/network/__tests__/requests-network.test.ts +1 -1
  343. package/src/core/network/api.ts +2 -2
  344. package/src/core/network/requests-lazy.ts +1 -1
  345. package/src/core/network/requests-toasting.tsx +1 -1
  346. package/src/core/runtime/runtime.ts +1 -0
  347. package/src/core/saving/__tests__/filename.test.ts +7 -6
  348. package/src/core/static/__tests__/download-html.test.ts +16 -15
  349. package/src/core/static/__tests__/files.test.ts +30 -28
  350. package/src/core/static/files.ts +1 -1
  351. package/src/core/vscode/vscode-bindings.ts +1 -1
  352. package/src/core/wasm/bridge.ts +3 -3
  353. package/src/core/wasm/worker/tracer.ts +1 -1
  354. package/src/core/websocket/useWebSocket.tsx +5 -3
  355. package/src/css/app/Cell.css +5 -2
  356. package/src/css/globals.css +18 -16
  357. package/src/custom.d.ts +1 -1
  358. package/src/hooks/__tests__/useDuplicateShortcuts.test.ts +3 -3
  359. package/src/hooks/debug.ts +3 -3
  360. package/src/hooks/useDebounce.ts +1 -1
  361. package/src/hooks/useEventListener.ts +1 -1
  362. package/src/hooks/useHotkey.ts +1 -1
  363. package/src/hooks/useLifecycle.ts +2 -2
  364. package/src/hooks/useNonce.ts +1 -1
  365. package/src/hooks/useResizeObserver.ts +2 -2
  366. package/src/main.tsx +1 -1
  367. package/src/plugins/core/BadPlugin.tsx +7 -6
  368. package/src/plugins/core/RenderHTML.tsx +3 -3
  369. package/src/plugins/core/__test__/registerReactComponent.test.ts +1 -1
  370. package/src/plugins/core/registerReactComponent.tsx +4 -4
  371. package/src/plugins/core/rpc.ts +1 -1
  372. package/src/plugins/impl/CheckboxPlugin.tsx +4 -1
  373. package/src/plugins/impl/DataEditorPlugin.tsx +8 -3
  374. package/src/plugins/impl/DataTablePlugin.tsx +5 -2
  375. package/src/plugins/impl/FileBrowserPlugin.tsx +1 -1
  376. package/src/plugins/impl/FormPlugin.tsx +2 -3
  377. package/src/plugins/impl/__tests__/DataTablePlugin.test.tsx +4 -1
  378. package/src/plugins/impl/__tests__/MatrixPlugin.test.tsx +1 -1
  379. package/src/plugins/impl/__tests__/SliderPlugin.test.tsx +43 -15
  380. package/src/plugins/impl/anywidget/AnyWidgetPlugin.tsx +3 -12
  381. package/src/plugins/impl/anywidget/__tests__/model.test.ts +2 -2
  382. package/src/plugins/impl/anywidget/model.ts +1 -1
  383. package/src/plugins/impl/anywidget/types.ts +2 -2
  384. package/src/plugins/impl/anywidget/widget-binding.ts +1 -1
  385. package/src/plugins/impl/chat/ChatPlugin.tsx +1 -1
  386. package/src/plugins/impl/chat/chat-ui.tsx +5 -2
  387. package/src/plugins/impl/data-editor/glide-data-editor.tsx +2 -2
  388. package/src/plugins/impl/data-explorer/ConnectedDataExplorerComponent.tsx +2 -2
  389. package/src/plugins/impl/data-explorer/components/query-form.tsx +1 -1
  390. package/src/plugins/impl/data-explorer/functions/function.ts +1 -1
  391. package/src/plugins/impl/data-explorer/queries/types.ts +1 -1
  392. package/src/plugins/impl/data-frames/DataFramePlugin.tsx +1 -1
  393. package/src/plugins/impl/data-frames/forms/__tests__/form.test.tsx +7 -9
  394. package/src/plugins/impl/data-frames/forms/renderers.tsx +1 -1
  395. package/src/plugins/impl/data-frames/utils/operators.ts +1 -1
  396. package/src/plugins/impl/matplotlib/MatplotlibPlugin.tsx +1 -1
  397. package/src/plugins/impl/mpl-interactive/MplInteractivePlugin.tsx +1 -1
  398. package/src/plugins/impl/panel/PanelPlugin.tsx +2 -2
  399. package/src/plugins/impl/plotly/Plot.tsx +3 -3
  400. package/src/plugins/impl/plotly/PlotlyPlugin.tsx +65 -103
  401. package/src/plugins/impl/plotly/__tests__/PlotlyPlugin.test.tsx +114 -0
  402. package/src/plugins/impl/plotly/__tests__/selection.test.ts +199 -0
  403. package/src/plugins/impl/plotly/selection.ts +333 -0
  404. package/src/plugins/impl/vega/__tests__/make-selectable.test.ts +13 -14
  405. package/src/plugins/impl/vega/batched.ts +1 -1
  406. package/src/plugins/impl/vega/make-selectable.ts +3 -3
  407. package/src/plugins/impl/vega/types.ts +1 -1
  408. package/src/plugins/layout/DownloadPlugin.tsx +1 -1
  409. package/src/plugins/layout/ImageComparisonPlugin.tsx +1 -3
  410. package/src/plugins/layout/LazyPlugin.tsx +1 -1
  411. package/src/plugins/layout/RoutesPlugin.tsx +1 -1
  412. package/src/plugins/layout/mermaid/mermaid.tsx +1 -1
  413. package/src/plugins/plugins.ts +1 -1
  414. package/src/plugins/stateless-plugin.ts +4 -2
  415. package/src/stories/data-explorer.stories.tsx +1 -1
  416. package/src/stories/dataframe.stories.tsx +1 -1
  417. package/src/stories/editor.stories.tsx +1 -1
  418. package/src/stories/select.stories.tsx +1 -1
  419. package/src/stories/switchable-multi-select.stories.tsx +1 -1
  420. package/src/utils/Logger.ts +1 -1
  421. package/src/utils/__tests__/arrays.test.ts +1 -1
  422. package/src/utils/__tests__/blob.test.ts +1 -1
  423. package/src/utils/__tests__/cell-urls.test.ts +24 -21
  424. package/src/utils/__tests__/dates.test.ts +1 -1
  425. package/src/utils/__tests__/errors.test.ts +1 -1
  426. package/src/utils/__tests__/filenames.test.ts +15 -14
  427. package/src/utils/__tests__/json-parser.test.ts +14 -21
  428. package/src/utils/__tests__/multi-map.test.ts +3 -3
  429. package/src/utils/__tests__/objects.test.ts +3 -3
  430. package/src/utils/__tests__/path.test.ts +34 -31
  431. package/src/utils/__tests__/urls.test.ts +19 -18
  432. package/src/utils/__tests__/versions.test.ts +5 -5
  433. package/src/utils/__tests__/waitForWs.test.ts +1 -1
  434. package/src/utils/arrays.ts +2 -2
  435. package/src/utils/assertNever.ts +1 -1
  436. package/src/utils/batch-requests.ts +2 -2
  437. package/src/utils/createReducer.ts +2 -2
  438. package/src/utils/id-tree.tsx +2 -2
  439. package/src/utils/idle.ts +1 -1
  440. package/src/utils/invariant.ts +1 -2
  441. package/src/utils/json/base64.ts +2 -5
  442. package/src/utils/maps.ts +1 -1
  443. package/src/utils/math.ts +0 -1
  444. package/src/utils/mime-types.ts +1 -1
  445. package/src/utils/multi-map.ts +1 -1
  446. package/src/utils/objects.ts +1 -1
  447. package/src/utils/once.ts +2 -2
  448. package/src/utils/staticImplements.ts +1 -1
  449. package/src/utils/storage/jotai.ts +1 -1
  450. package/src/utils/tracer.ts +3 -2
  451. package/dist/_basePickBy-QjOmBDRE.js +0 -110
  452. package/dist/_baseSet-xgn1IbGV.js +0 -27
  453. package/dist/architecture-7HQA4BMR-BRyVh_Za.js +0 -6
  454. package/dist/assets/__vite-browser-external-Us1ds95c.js +0 -1
  455. package/dist/dist-B0R_ZM4-.js +0 -6
  456. package/dist/dist-B4a9_9pj.js +0 -5
  457. package/dist/dist-BCSUKEwO.js +0 -5
  458. package/dist/dist-BONIDQq6.js +0 -5
  459. package/dist/dist-BYeRx2hb.js +0 -5
  460. package/dist/dist-D2Rk1j4R.js +0 -1381
  461. package/dist/dist-DZjX5TYv.js +0 -5
  462. package/dist/dist-Dkw9x6kc.js +0 -5
  463. package/dist/dist-Ds6UaXGR.js +0 -6
  464. package/dist/dist-KuEJ1Q53.js +0 -8
  465. package/dist/dist-S72WNyTZ.js +0 -5
  466. package/dist/dist-bTG-yssT.js +0 -5
  467. package/dist/dist-diF0sguc.js +0 -8
  468. package/dist/dist-mJ84BIgu.js +0 -8
  469. package/dist/dist-wSIhFWQz.js +0 -8
  470. package/dist/get-CqrzlV1v.js +0 -68
  471. package/dist/range-CYz5jI--.js +0 -17
  472. package/dist/stex-CZyTRGVB.js +0 -4
  473. package/dist/tooltip-DGHTbHl5.js +0 -404
  474. package/dist/useLifecycle-Dids8BPm.js +0 -173
  475. /package/dist/{dist-KZI_BHqV.js → dist-CxZvoNao.js} +0 -0
  476. /package/dist/{invariant-D4hPsZFI.js → invariant-e8eBgdux.js} +0 -0
  477. /package/dist/{isArrayLikeObject-C-hFPChh.js → isArrayLikeObject-LXbTYiBa.js} +0 -0
  478. /package/dist/{main-CvkAPtaq.js → main-XimWhSi_.js} +0 -0
  479. /package/dist/{purify.es-ukiMXY-F.js → purify.es-hTCfRGdl.js} +0 -0
  480. /package/dist/{react-dom-BKwCWYPW.js → react-dom-BSUuJjCR.js} +0 -0
  481. /package/dist/{stex-Ze8D4R_5.js → stex-D887Ylhf.js} +0 -0
@@ -230,7 +230,8 @@ interface ComboboxItemOptions<TValue> {
230
230
  }
231
231
 
232
232
  export interface ComboboxItemProps<TValue>
233
- extends ComboboxItemOptions<TValue>,
233
+ extends
234
+ ComboboxItemOptions<TValue>,
234
235
  Omit<
235
236
  React.ComponentProps<typeof CommandItem>,
236
237
  keyof ComboboxItemOptions<TValue> | "onSelect" | "role"
@@ -1,6 +1,9 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import type { DialogProps } from "@radix-ui/react-dialog";
3
+ import type { Dialog as DialogPrimitive } from "radix-ui";
4
+
5
+ type DialogProps = DialogPrimitive.DialogProps;
6
+
4
7
  import type { VariantProps } from "class-variance-authority";
5
8
  import { Command as CommandPrimitive } from "cmdk";
6
9
  import { Search } from "lucide-react";
@@ -58,7 +61,7 @@ const CommandInput = React.forwardRef<
58
61
  >(({ className, icon, rootClassName, ...props }, ref) => (
59
62
  <div
60
63
  className={cn("flex items-center border-b px-3", rootClassName)}
61
- // eslint-disable-next-line react/no-unknown-property
64
+ // oxlint-disable-next-line react/no-unknown-property
62
65
  cmdk-input-wrapper=""
63
66
  >
64
67
  {icon === null ? null : (
@@ -1,12 +1,12 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as ContextMenuPrimitive from "@radix-ui/react-context-menu";
4
3
  import {
5
4
  CheckIcon,
6
5
  ChevronRightIcon,
7
6
  DotFilledIcon,
8
7
  } from "@radix-ui/react-icons";
9
8
  import type { VariantProps } from "class-variance-authority";
9
+ import { ContextMenu as ContextMenuPrimitive } from "radix-ui";
10
10
  import * as React from "react";
11
11
  import { StyleNamespace } from "@/theme/namespace";
12
12
  import { cn } from "@/utils/cn";
@@ -41,8 +41,7 @@ const DateSegment = ({ className, ...props }: AriaDateSegmentProps) => {
41
41
  };
42
42
 
43
43
  interface DateInputProps
44
- extends AriaDateInputProps,
45
- VariantProps<typeof fieldGroupVariants> {}
44
+ extends AriaDateInputProps, VariantProps<typeof fieldGroupVariants> {}
46
45
 
47
46
  const DateInput = ({
48
47
  className,
@@ -61,8 +60,9 @@ const DateInput = ({
61
60
  );
62
61
  };
63
62
 
64
- interface DateFieldProps<T extends AriaDateValue>
65
- extends AriaDateFieldProps<T> {
63
+ interface DateFieldProps<
64
+ T extends AriaDateValue,
65
+ > extends AriaDateFieldProps<T> {
66
66
  label?: string;
67
67
  description?: string;
68
68
  errorMessage?: string | ((validation: AriaValidationResult) => string);
@@ -94,8 +94,9 @@ const DateField = <T extends AriaDateValue>({
94
94
  );
95
95
  };
96
96
 
97
- interface TimeFieldProps<T extends AriaTimeValue>
98
- extends AriaTimeFieldProps<T> {
97
+ interface TimeFieldProps<
98
+ T extends AriaTimeValue,
99
+ > extends AriaTimeFieldProps<T> {
99
100
  label?: string;
100
101
  description?: string;
101
102
  errorMessage?: string | ((validation: AriaValidationResult) => string);
@@ -51,8 +51,9 @@ const DatePickerContent = ({
51
51
  </Popover>
52
52
  );
53
53
 
54
- interface DatePickerProps<T extends AriaDateValue>
55
- extends AriaDatePickerProps<T> {
54
+ interface DatePickerProps<
55
+ T extends AriaDateValue,
56
+ > extends AriaDatePickerProps<T> {
56
57
  label?: string;
57
58
  description?: string;
58
59
  errorMessage?: string | ((validation: AriaValidationResult) => string);
@@ -115,8 +116,9 @@ const DatePicker = <T extends AriaDateValue>({
115
116
  );
116
117
  };
117
118
 
118
- interface DateRangePickerProps<T extends AriaDateValue>
119
- extends AriaDateRangePickerProps<T> {
119
+ interface DateRangePickerProps<
120
+ T extends AriaDateValue,
121
+ > extends AriaDateRangePickerProps<T> {
120
122
  label?: string;
121
123
  description?: string;
122
124
  errorMessage?: string | ((validation: AriaValidationResult) => string);
@@ -1,7 +1,7 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as DialogPrimitive from "@radix-ui/react-dialog";
4
3
  import { X } from "lucide-react";
4
+ import { Dialog as DialogPrimitive } from "radix-ui";
5
5
  import * as React from "react";
6
6
  import { StyleNamespace } from "@/theme/namespace";
7
7
  import { cn } from "@/utils/cn";
@@ -1,7 +1,7 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import type * as PopoverPrimitive from "@radix-ui/react-popover";
4
3
  import { GripHorizontalIcon } from "lucide-react";
4
+ import type { Popover as PopoverPrimitive } from "radix-ui";
5
5
  import { useRef, useState } from "react";
6
6
  import { Popover, PopoverContent, PopoverTrigger } from "./popover";
7
7
 
@@ -1,7 +1,8 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
- import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+
3
3
  import type { VariantProps } from "class-variance-authority";
4
4
  import { Check, ChevronRight, Circle } from "lucide-react";
5
+ import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
5
6
  import React from "react";
6
7
  import { StyleNamespace } from "@/theme/namespace";
7
8
  import { cn } from "@/utils/cn";
@@ -66,8 +66,7 @@ const fieldGroupVariants = cva("", {
66
66
  });
67
67
 
68
68
  interface GroupProps
69
- extends AriaGroupProps,
70
- VariantProps<typeof fieldGroupVariants> {}
69
+ extends AriaGroupProps, VariantProps<typeof fieldGroupVariants> {}
71
70
 
72
71
  const FieldGroup = ({ className, variant, ...props }: GroupProps) => {
73
72
  return (
@@ -1,8 +1,7 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import type * as LabelPrimitive from "@radix-ui/react-label";
4
- import { Slot } from "@radix-ui/react-slot";
5
3
  import { AlertCircleIcon } from "lucide-react";
4
+ import { type Label as LabelPrimitive, Slot as SlotPrimitive } from "radix-ui";
6
5
  import * as React from "react";
7
6
  import {
8
7
  Controller,
@@ -130,14 +129,14 @@ const FormLabel = React.forwardRef<
130
129
  FormLabel.displayName = "FormLabel";
131
130
 
132
131
  const FormControl = React.forwardRef<
133
- React.ElementRef<typeof Slot>,
134
- React.ComponentPropsWithoutRef<typeof Slot>
132
+ React.ElementRef<typeof SlotPrimitive.Slot>,
133
+ React.ComponentPropsWithoutRef<typeof SlotPrimitive.Slot>
135
134
  >(({ ...props }, ref) => {
136
135
  const { error, formItemId, formDescriptionId, formMessageId } =
137
136
  useFormField();
138
137
 
139
138
  return (
140
- <Slot
139
+ <SlotPrimitive.Slot
141
140
  ref={ref}
142
141
  id={formItemId}
143
142
  aria-describedby={
@@ -1,6 +1,9 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import type { PopoverContentProps } from "@radix-ui/react-popover";
3
+ import type { Popover } from "radix-ui";
4
+
5
+ type PopoverContentProps = Popover.PopoverContentProps;
6
+
4
7
  import React, { useState } from "react";
5
8
  import { isInVscodeExtension } from "@/core/vscode/is-in-vscode";
6
9
  import { useEventListener } from "@/hooks/useEventListener";
@@ -1,7 +1,7 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as LabelPrimitive from "@radix-ui/react-label";
4
3
  import { cva, type VariantProps } from "class-variance-authority";
4
+ import { Label as LabelPrimitive } from "radix-ui";
5
5
  import * as React from "react";
6
6
 
7
7
  import { cn } from "@/utils/cn";
@@ -1,8 +1,8 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
3
  import { ChevronDownIcon } from "@radix-ui/react-icons";
4
- import * as NavigationMenuPrimitive from "@radix-ui/react-navigation-menu";
5
4
  import { cva, type VariantProps } from "class-variance-authority";
5
+ import { NavigationMenu as NavigationMenuPrimitive } from "radix-ui";
6
6
  import * as React from "react";
7
7
  import { cn } from "@/utils/cn";
8
8
 
@@ -1,6 +1,6 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as PopoverPrimitive from "@radix-ui/react-popover";
3
+ import { Popover as PopoverPrimitive } from "radix-ui";
4
4
  import * as React from "react";
5
5
  import { StyleNamespace } from "@/theme/namespace";
6
6
  import { cn } from "@/utils/cn";
@@ -1,12 +1,13 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as ProgressPrimitive from "@radix-ui/react-progress";
3
+ import { Progress as ProgressPrimitive } from "radix-ui";
4
4
  import * as React from "react";
5
5
 
6
6
  import { cn } from "@/utils/cn";
7
7
 
8
- interface ProgressProps
9
- extends React.ComponentPropsWithoutRef<typeof ProgressPrimitive.Root> {
8
+ interface ProgressProps extends React.ComponentPropsWithoutRef<
9
+ typeof ProgressPrimitive.Root
10
+ > {
10
11
  /**
11
12
  * When true, shows an indeterminate animated progress bar.
12
13
  */
@@ -3,8 +3,10 @@
3
3
  import React, { useRef } from "react";
4
4
  import { usePress } from "react-aria";
5
5
 
6
- interface QueryParamPreservingLinkProps
7
- extends Omit<React.HTMLAttributes<HTMLAnchorElement>, "href"> {
6
+ interface QueryParamPreservingLinkProps extends Omit<
7
+ React.HTMLAttributes<HTMLAnchorElement>,
8
+ "href"
9
+ > {
8
10
  href: string;
9
11
  children: React.ReactNode;
10
12
  }
@@ -1,7 +1,7 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
4
3
  import { Circle } from "lucide-react";
4
+ import { RadioGroup as RadioGroupPrimitive } from "radix-ui";
5
5
  import * as React from "react";
6
6
 
7
7
  import { cn } from "@/utils/cn";
@@ -1,6 +1,6 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as SliderPrimitive from "@radix-ui/react-slider";
3
+ import { Slider as SliderPrimitive } from "radix-ui";
4
4
  import * as React from "react";
5
5
  import { useLocale } from "react-aria";
6
6
  import { cn } from "@/utils/cn";
@@ -1,6 +1,6 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as ScrollAreaPrimitive from "@radix-ui/react-scroll-area";
3
+ import { ScrollArea as ScrollAreaPrimitive } from "radix-ui";
4
4
  import * as React from "react";
5
5
  import { cn } from "@/utils/cn";
6
6
 
@@ -1,6 +1,5 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as SelectPrimitive from "@radix-ui/react-select";
4
3
  import type { VariantProps } from "class-variance-authority";
5
4
  import {
6
5
  CheckIcon,
@@ -9,6 +8,7 @@ import {
9
8
  ChevronUpIcon,
10
9
  XIcon,
11
10
  } from "lucide-react";
11
+ import { Select as SelectPrimitive } from "radix-ui";
12
12
  import * as React from "react";
13
13
  import { StyleNamespace } from "@/theme/namespace";
14
14
  import { cn } from "@/utils/cn";
@@ -1,8 +1,8 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as SheetPrimitive from "@radix-ui/react-dialog";
4
3
  import { Cross2Icon } from "@radix-ui/react-icons";
5
4
  import { cva, type VariantProps } from "class-variance-authority";
5
+ import { Dialog as SheetPrimitive } from "radix-ui";
6
6
  import React from "react";
7
7
  import { StyleNamespace } from "@/theme/namespace";
8
8
  import { cn } from "@/utils/cn";
@@ -51,7 +51,8 @@ const sheetVariants = cva(
51
51
  );
52
52
 
53
53
  interface SheetContentProps
54
- extends React.ComponentPropsWithoutRef<typeof SheetPrimitive.Content>,
54
+ extends
55
+ React.ComponentPropsWithoutRef<typeof SheetPrimitive.Content>,
55
56
  VariantProps<typeof sheetVariants> {}
56
57
 
57
58
  const SheetContent = React.forwardRef<
@@ -1,6 +1,6 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as SliderPrimitive from "@radix-ui/react-slider";
3
+ import { Slider as SliderPrimitive } from "radix-ui";
4
4
  import * as React from "react";
5
5
  import { useLocale } from "react-aria";
6
6
  import { cn } from "@/utils/cn";
@@ -1,7 +1,7 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as SwitchPrimitives from "@radix-ui/react-switch";
4
3
  import { cva, type VariantProps } from "class-variance-authority";
4
+ import { Switch as SwitchPrimitives } from "radix-ui";
5
5
  import * as React from "react";
6
6
  import { cn } from "@/utils/cn";
7
7
 
@@ -1,6 +1,6 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as TabsPrimitive from "@radix-ui/react-tabs";
3
+ import { Tabs as TabsPrimitive } from "radix-ui";
4
4
  import * as React from "react";
5
5
 
6
6
  import { cn } from "@/utils/cn";
@@ -6,8 +6,7 @@ import { useDebounceControlledState } from "@/hooks/useDebounce";
6
6
  import { cn } from "@/utils/cn";
7
7
  import { Events } from "@/utils/events";
8
8
 
9
- export interface TextareaProps
10
- extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {
9
+ export interface TextareaProps extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {
11
10
  bottomAdornment?: React.ReactNode;
12
11
  }
13
12
 
@@ -1,8 +1,8 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as ToastPrimitives from "@radix-ui/react-toast";
4
3
  import { cva, type VariantProps } from "class-variance-authority";
5
4
  import { X } from "lucide-react";
5
+ import { Toast as ToastPrimitives } from "radix-ui";
6
6
  import * as React from "react";
7
7
 
8
8
  import { cn } from "@/utils/cn";
@@ -1,7 +1,7 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as TogglePrimitive from "@radix-ui/react-toggle";
4
3
  import { cva, type VariantProps } from "class-variance-authority";
4
+ import { Toggle as TogglePrimitive } from "radix-ui";
5
5
  import * as React from "react";
6
6
 
7
7
  import { cn } from "@/utils/cn";
@@ -1,6 +1,6 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import * as TooltipPrimitive from "@radix-ui/react-tooltip";
3
+ import { Tooltip as TooltipPrimitive } from "radix-ui";
4
4
  import * as React from "react";
5
5
  import { StyleNamespace } from "@/theme/namespace";
6
6
  import { cn } from "@/utils/cn";
@@ -226,7 +226,7 @@ function sortData({
226
226
  break;
227
227
  }
228
228
 
229
- return sort.desc ? sortedVariables.reverse() : sortedVariables;
229
+ return sort.desc ? sortedVariables.toReversed() : sortedVariables;
230
230
  }
231
231
 
232
232
  export const VariableTable: React.FC<Props> = memo(
@@ -1,5 +1,5 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ /* oxlint-disable typescript/no-explicit-any */
3
3
 
4
4
  import { beforeEach, describe, expect, it } from "vitest";
5
5
  import { cellId, variableName } from "@/__tests__/branded";
@@ -1,5 +1,5 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ /* oxlint-disable typescript/no-explicit-any */
3
3
 
4
4
  import { createStore } from "jotai";
5
5
  import { beforeEach, describe, expect, it } from "vitest";
@@ -1,5 +1,5 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ /* oxlint-disable typescript/no-explicit-any */
3
3
 
4
4
  import { describe, expect, it, vi } from "vitest";
5
5
  import { cellId, variableName } from "@/__tests__/branded";
@@ -34,8 +34,7 @@ export interface CellOutputData {
34
34
  // For the context provider
35
35
  // Currently, we enforce that cellOutput is present.
36
36
  interface CellOutputContextData
37
- extends CellOutputData,
38
- Record<string, unknown> {
37
+ extends CellOutputData, Record<string, unknown> {
39
38
  cellOutput: BaseOutput;
40
39
  }
41
40
 
@@ -98,7 +98,7 @@ export abstract class AIContextProvider<
98
98
  * Registry for managing different AI context providers
99
99
  */
100
100
  export class AIContextRegistry<T extends AIContextItem> {
101
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
101
+ // oxlint-disable-next-line typescript/no-explicit-any
102
102
  private providers = new Set<AIContextProvider<any>>();
103
103
 
104
104
  /**
@@ -106,7 +106,7 @@ export class AIContextRegistry<T extends AIContextItem> {
106
106
  */
107
107
  register<U extends AIContextItem>(
108
108
  provider: AIContextProvider<U>,
109
- // eslint-disable-next-line @typescript-eslint/prefer-return-this-type
109
+ // oxlint-disable-next-line typescript/prefer-return-this-type
110
110
  ): AIContextRegistry<U | T> {
111
111
  this.providers.add(provider);
112
112
  return this;
@@ -72,9 +72,10 @@ type EditNotebookInput = z.infer<typeof editNotebookSchema>;
72
72
  type EditOperation = EditNotebookInput["edit"];
73
73
  export type EditType = EditOperation["type"];
74
74
 
75
- export class EditNotebookTool
76
- implements AiTool<EditNotebookInput, ToolOutputBase>
77
- {
75
+ export class EditNotebookTool implements AiTool<
76
+ EditNotebookInput,
77
+ ToolOutputBase
78
+ > {
78
79
  readonly name = "edit_notebook_tool";
79
80
  readonly description = description;
80
81
  readonly schema = editNotebookSchema;
@@ -14,7 +14,7 @@ import { formatToolDescription } from "./utils";
14
14
 
15
15
  export type AnyZodObject = ZodObject<z.ZodRawShape>;
16
16
 
17
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
17
+ // oxlint-disable-next-line typescript/no-explicit-any
18
18
  type StoredTool = AiTool<any, any>;
19
19
 
20
20
  interface InvokeResult<TName> {
@@ -50,9 +50,10 @@ const filePartSchema = z.object({
50
50
  mediaType: z.string(),
51
51
  }) satisfies z.ZodType<FileUIPart>;
52
52
 
53
- export class RunStaleCellsTool
54
- implements AiTool<EmptyToolInput, RunStaleCellsOutput>
55
- {
53
+ export class RunStaleCellsTool implements AiTool<
54
+ EmptyToolInput,
55
+ RunStaleCellsOutput
56
+ > {
56
57
  readonly name = "run_stale_cells_tool";
57
58
  readonly description = description;
58
59
  readonly schema = z.object({});
@@ -48,28 +48,29 @@ describe("maybeAddMissingImport", () => {
48
48
  "import marimo as mo\nimport marimo as mo",
49
49
  "import marimo as mo",
50
50
  ];
51
- it.each(
52
- VALID_IMPORTS,
53
- )("should not add an import if the import statement already exists in the notebook", (code) => {
54
- const appStore = createStore();
55
- appStore.set(variablesAtom, {} as Variables);
56
- appStore.set(
57
- notebookAtom,
58
- MockNotebook.notebookState({
59
- cellData: {
60
- [Cell1]: { code: code },
61
- },
62
- }),
63
- );
64
- const onAddImport = vi.fn();
65
- maybeAddMissingImport({
66
- moduleName: "marimo",
67
- variableName: "mo",
68
- onAddImport,
69
- appStore,
70
- });
71
- expect(onAddImport).not.toHaveBeenCalled();
72
- });
51
+ it.each(VALID_IMPORTS)(
52
+ "should not add an import if the import statement already exists in the notebook",
53
+ (code) => {
54
+ const appStore = createStore();
55
+ appStore.set(variablesAtom, {} as Variables);
56
+ appStore.set(
57
+ notebookAtom,
58
+ MockNotebook.notebookState({
59
+ cellData: {
60
+ [Cell1]: { code: code },
61
+ },
62
+ }),
63
+ );
64
+ const onAddImport = vi.fn();
65
+ maybeAddMissingImport({
66
+ moduleName: "marimo",
67
+ variableName: "mo",
68
+ onAddImport,
69
+ appStore,
70
+ });
71
+ expect(onAddImport).not.toHaveBeenCalled();
72
+ },
73
+ );
73
74
 
74
75
  it("should add an import if the variable is not in the variables state and the import statement does not exist in the notebook", () => {
75
76
  const appStore = createStore();
@@ -43,19 +43,20 @@ describe("outputIsLoading", () => {
43
43
  });
44
44
 
45
45
  describe("outputIsStale", () => {
46
- it.each(
47
- STATUSES,
48
- )("should return true if the cell is edited and status is %s", (status) => {
49
- const cell = {
50
- status: status,
51
- staleInputs: true,
52
- output: null,
53
- runStartTimestamp: null,
54
- interrupted: false,
55
- };
56
- const edited = true;
57
- expect(outputIsStale(cell, edited)).toBe(true);
58
- });
46
+ it.each(STATUSES)(
47
+ "should return true if the cell is edited and status is %s",
48
+ (status) => {
49
+ const cell = {
50
+ status: status,
51
+ staleInputs: true,
52
+ output: null,
53
+ runStartTimestamp: null,
54
+ interrupted: false,
55
+ };
56
+ const edited = true;
57
+ expect(outputIsStale(cell, edited)).toBe(true);
58
+ },
59
+ );
59
60
 
60
61
  it("should return true if the cell is loading", () => {
61
62
  const cell = {
@@ -45,7 +45,7 @@ vi.mock("@/core/codemirror/editing/commands", () => ({
45
45
  vi.mock("../scrollCellIntoView", async (importOriginal) => {
46
46
  const actual = await importOriginal();
47
47
  return {
48
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
48
+ // oxlint-disable-next-line typescript/no-explicit-any
49
49
  ...(actual as any),
50
50
  scrollToTop: vi.fn(),
51
51
  scrollToBottom: vi.fn(),
@@ -1023,7 +1023,7 @@ describe("cell reducer", () => {
1023
1023
  });
1024
1024
  cell = cells[0];
1025
1025
  expect(cell.status).toBe("idle");
1026
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1026
+ // oxlint-disable-next-line typescript/no-explicit-any no-unsafe-optional-chaining
1027
1027
  expect((cell.output?.data as any)[0].msg).toBe(
1028
1028
  "This cell wasn't run because an ancestor was stopped with `mo.stop`: ",
1029
1029
  );
@@ -40,7 +40,7 @@ describe("scrollCellIntoView", () => {
40
40
 
41
41
  it("should scroll active line when editor has focus", () => {
42
42
  const mockEditor = { hasFocus: true };
43
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
43
+ // oxlint-disable-next-line typescript/no-explicit-any
44
44
  mockGetCellEditorView.mockReturnValue(mockEditor as any);
45
45
 
46
46
  scrollCellIntoView(cid);
@@ -1,7 +1,7 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
3
  import type * as api from "@marimo-team/marimo-api";
4
- /* eslint-disable @typescript-eslint/no-explicit-any */
4
+ /* oxlint-disable typescript/no-explicit-any */
5
5
  import { beforeEach, describe, expect, it, vi } from "vitest";
6
6
  import { Mocks } from "@/__mocks__/common";
7
7
  import { cellId } from "@/__tests__/branded";
@@ -1,5 +1,5 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ /* oxlint-disable typescript/no-explicit-any */
3
3
  import { describe, expect, it } from "vitest";
4
4
  import {
5
5
  getCellConfigs,