@marimo-team/frontend 0.25.2-dev9 → 0.25.2-dev91

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 (944) hide show
  1. package/dist/assets/CellStatus-2Psjnl5F.css +1 -0
  2. package/dist/assets/CellStatus-Bj7PvY_u.js +1 -0
  3. package/dist/assets/ConnectedDataExplorerComponent-C5UW0p9I.js +1 -0
  4. package/dist/assets/ErrorBoundary-CG6gtgym.js +2 -0
  5. package/dist/assets/Inputs-BlygJyl1.js +1 -0
  6. package/dist/assets/JsonOutput-B0GmlMnR.css +2 -0
  7. package/dist/assets/JsonOutput-NVH7GWyC.js +11 -0
  8. package/dist/assets/LazyAnyLanguageCodeMirror-CeTd_wFt.js +2 -0
  9. package/dist/assets/MarimoErrorOutput-z5iFryzf.js +6 -0
  10. package/dist/assets/RenderHTML-C7QcdAgB.js +2 -0
  11. package/dist/assets/RunButton-A__3wcpF.js +1 -0
  12. package/dist/assets/__vite-browser-external-BgsHWynV.js +1 -0
  13. package/dist/assets/__vite-browser-external-DMJaCYJh.js +1 -0
  14. package/dist/assets/_baseSet-Bpdo9AvU.js +1 -0
  15. package/dist/assets/_hasPath-BmRQipI0.js +1 -0
  16. package/dist/assets/abnfDiagram-VCTEODGH-BuHNQB7l.js +1 -0
  17. package/dist/assets/add-cell-with-ai-Wyt6GBhk.js +76 -0
  18. package/dist/assets/add-connection-dialog-bl8dqCVs.js +166 -0
  19. package/dist/assets/agent-panel-BcoO8S6Q.js +286 -0
  20. package/dist/assets/ai-model-dropdown-CvJsRj9y.js +5 -0
  21. package/dist/assets/alert-MrQXRIin.js +1 -0
  22. package/dist/assets/alert-dialog-DlL1c-bx.js +1 -0
  23. package/dist/assets/any-language-editor-DtOWujZJ.js +1 -0
  24. package/dist/assets/api-DVLtXyp7.js +1 -0
  25. package/dist/assets/apl-CYIAEF37.js +1 -0
  26. package/dist/assets/apl-gw27yJ2n.js +1 -0
  27. package/dist/assets/app-config-button-C7QrZbqr.js +1 -0
  28. package/dist/assets/arc-Yxk2k_uq.js +1 -0
  29. package/dist/assets/architecture-7GRP2DOG-BMOPAkUC.js +1 -0
  30. package/dist/assets/architectureDiagram-5GKGNRK7-DvIXijdN.js +36 -0
  31. package/dist/assets/array-BifhSqXX.js +1 -0
  32. package/dist/assets/arrow-left-DzPJ79ZB.js +1 -0
  33. package/dist/assets/arrow-right-xoNT7eIQ.js +1 -0
  34. package/dist/assets/asciiarmor-CF6FHpQl.js +1 -0
  35. package/dist/assets/asciiarmor-Cor5STs8.js +1 -0
  36. package/dist/assets/asn1-CPEENLyz.js +1 -0
  37. package/dist/assets/asn1-CmtZ6NID.js +1 -0
  38. package/dist/assets/azure-Dcn397wY.js +1 -0
  39. package/dist/assets/ban-3HAzm9Fj.js +1 -0
  40. package/dist/assets/blob-Bx8A10xl.js +1 -0
  41. package/dist/assets/blockDiagram-I7D4REHJ-DGAMO17L.js +129 -0
  42. package/dist/assets/brainfuck-a_fzgFtj.js +1 -0
  43. package/dist/assets/brainfuck-vE42J6oQ.js +1 -0
  44. package/dist/assets/bundle.esm-CklCb9AD.js +1 -0
  45. package/dist/assets/button-M49xxKoi.js +1 -0
  46. package/dist/assets/c4Diagram-7LVT6UL2-qqO5IOnV.js +38 -0
  47. package/dist/assets/cache-panel-BNPF4X5e.js +1 -0
  48. package/dist/assets/capabilities-BScjbYOK.js +1 -0
  49. package/dist/assets/cell-editor-C-58hQJU.css +2 -0
  50. package/dist/assets/cell-editor-CevZDS63.js +21 -0
  51. package/dist/assets/cell-link-DC1UZQr_.js +1 -0
  52. package/dist/assets/cells-CxY8RSp7.js +220 -0
  53. package/dist/assets/channel-DXBvxHxq.js +1 -0
  54. package/dist/assets/chart-no-axes-column-B6FT5Xvu.js +1 -0
  55. package/dist/assets/chat-display-YETh6yXV.js +1 -0
  56. package/dist/assets/chat-panel-DyaePe7B.js +4 -0
  57. package/dist/assets/chat-ui-D_QL46qM.js +4 -0
  58. package/dist/assets/chunk-2E4U76K2-DqA2CBL0.js +2 -0
  59. package/dist/assets/chunk-2ZTRR5NV-C2qZJila.js +2 -0
  60. package/dist/assets/chunk-3Z5EZCMW-DMniOlPd.js +1 -0
  61. package/dist/assets/chunk-4HAMMTFA-DaFOJTOO.js +62 -0
  62. package/dist/assets/chunk-5V3GS4D5-i-ZDOEnP.js +1 -0
  63. package/dist/assets/chunk-6AZGARVD-BB6FqMl-.js +1 -0
  64. package/dist/assets/chunk-6EIED4P4-DdUJkP0f.js +1 -0
  65. package/dist/assets/chunk-6K3QC6MW-CqVsVn-y.js +1 -0
  66. package/dist/assets/chunk-6TQVIW2G-DKlLbNIP.js +1 -0
  67. package/dist/assets/chunk-747NJXEK-BFkZPlab.js +2 -0
  68. package/dist/assets/chunk-75Z2AOVW-DEp7Wbaj.js +2 -0
  69. package/dist/assets/chunk-CLGD4ZFX-BxW11Imt.js +1 -0
  70. package/dist/assets/chunk-DU6HZSFF-CDmPCRkr.js +126 -0
  71. package/dist/assets/chunk-F27PBJKO-455JWNM3.js +1 -0
  72. package/dist/assets/chunk-GMAD6QVW-ahdTJvh0.js +72 -0
  73. package/dist/assets/chunk-GVQU2GXP-CPkYne1h.js +1 -0
  74. package/dist/assets/chunk-I5DQTOEV-Hm2LfiYI.js +1 -0
  75. package/dist/assets/chunk-ICYGCRZG-749o-pGJ.js +1 -0
  76. package/dist/assets/chunk-IH6LHLGP-CC6I9F3i.js +1 -0
  77. package/dist/assets/chunk-IMKFNOWR-fARccL86.js +231 -0
  78. package/dist/assets/chunk-KI3K4JFJ-Rma-0k_M.js +1 -0
  79. package/dist/assets/chunk-L3NEJ4N5-BOK6HmaY.js +1 -0
  80. package/dist/assets/chunk-LNGE3PJU-DWpGwHrW.js +34 -0
  81. package/dist/assets/chunk-OSK3NFVY-CEcyPnHo.js +10 -0
  82. package/dist/assets/chunk-OUJLGHUK-D0j2JRSg.js +2 -0
  83. package/dist/assets/chunk-P2QGCYS3-Bw5LRT6S.js +1 -0
  84. package/dist/assets/chunk-POPQ4Y6H-C--NLIXc.js +1 -0
  85. package/dist/assets/chunk-PWAF6VOD-B1mxlptQ.js +1 -0
  86. package/dist/assets/chunk-SHT3W25Y-Diet96b1.js +168 -0
  87. package/dist/assets/chunk-SVP7TREG-BbcEGfNl.js +88 -0
  88. package/dist/assets/chunk-TICWLB2K-BypOyFjf.js +206 -0
  89. package/dist/assets/chunk-TLUHSLCS-DvvqZUl_.js +2 -0
  90. package/dist/assets/chunk-UY3FDG6J-CnmaAkG5.js +1 -0
  91. package/dist/assets/chunk-XHIXRSVI-BFQ6B8BE.js +1 -0
  92. package/dist/assets/chunk-YOKDWASO-84E-_nIR.js +142 -0
  93. package/dist/assets/circle-Bb1IbBVn.js +1 -0
  94. package/dist/assets/circle-check-BF80fXZd.js +1 -0
  95. package/dist/assets/classDiagram-ZZMXUADV--9ShP1h2.js +1 -0
  96. package/dist/assets/classDiagram-v2-VYDZK3BY--9ShP1h2.js +1 -0
  97. package/dist/assets/click-outside-container-CHoodRk9.js +1 -0
  98. package/dist/assets/clike-Bo1_pR8B.js +1 -0
  99. package/dist/assets/clike-DZROJv43.js +1 -0
  100. package/dist/assets/clipboard-paste-D0gau9Xw.js +1 -0
  101. package/dist/assets/clojure-1zb6N0Kd.js +1 -0
  102. package/dist/assets/clojure-sW2N62b5.js +1 -0
  103. package/dist/assets/cmake-DA9yMhzJ.js +1 -0
  104. package/dist/assets/cmake-DSEb40G9.js +1 -0
  105. package/dist/assets/cobol-BYACvGhO.js +1 -0
  106. package/dist/assets/cobol-ttQu-eUm.js +1 -0
  107. package/dist/assets/code-DW4kNwKG.js +1 -0
  108. package/dist/assets/code-visibility-DNzJgrTz.js +1 -0
  109. package/dist/assets/code-xml-CW65k2pN.js +1 -0
  110. package/dist/assets/coerce-CZiN7rQ_.js +1 -0
  111. package/dist/assets/coffeescript-73GxLNLH.js +1 -0
  112. package/dist/assets/coffeescript-CcHmp8ZW.js +1 -0
  113. package/dist/assets/column-preview-sL_Jo0hX.js +1 -0
  114. package/dist/assets/command-palette-DMQFuWz1.js +1 -0
  115. package/dist/assets/common-Cy3lJDvJ.js +1 -0
  116. package/dist/assets/commonlisp-BAY0IMda.js +1 -0
  117. package/dist/assets/commonlisp-DHrixoxv.js +1 -0
  118. package/dist/assets/components-D9ZIJGG8.js +1 -0
  119. package/dist/assets/components-M5WFQ0gs.js +1 -0
  120. package/dist/assets/components-ufN33X-R.js +1 -0
  121. package/dist/assets/config-CR2d-XsP.js +1 -0
  122. package/dist/assets/config-Cyum2gRs.js +1 -0
  123. package/dist/assets/config-D_c_6ce1.js +1 -0
  124. package/dist/assets/copy-D03Y7IMR.js +1 -0
  125. package/dist/assets/copy-icon-wfSGfX8v.js +1 -0
  126. package/dist/assets/createReducer-W5dowuCe.js +1 -0
  127. package/dist/assets/crystal-DLlr59il.js +1 -0
  128. package/dist/assets/crystal-fOwNIMzy.js +1 -0
  129. package/dist/assets/css-CbZNFbVv.js +1 -0
  130. package/dist/assets/css-aD3t-znF.js +1 -0
  131. package/dist/assets/cynefin-OW5HDTMX-7tP7QfM3.js +1 -0
  132. package/dist/assets/cynefinDiagram-5FMLGOSQ-BW3uXbHa.js +62 -0
  133. package/dist/assets/cypher-CpQ0ACJl.js +1 -0
  134. package/dist/assets/cypher-q6-coHOK.js +1 -0
  135. package/dist/assets/d-BFwRCF-p.js +1 -0
  136. package/dist/assets/d-Drt6ZXrF.js +1 -0
  137. package/dist/assets/dagre-BjpQhh5X.js +1 -0
  138. package/dist/assets/dagre-GXQ25YYZ-DIV0whJf.js +4 -0
  139. package/dist/assets/data-grid-overlay-editor-DuYKABwo.js +1 -0
  140. package/dist/assets/data-grid-types-DgHVN_Zz.js +1 -0
  141. package/dist/assets/datasource-Tst92Pzi.js +3 -0
  142. package/dist/assets/dates-BgcKUsHb.js +1 -0
  143. package/dist/assets/dependency-graph-panel-BwMayTyZ.js +5 -0
  144. package/dist/assets/diagram-S7CK7UJ4-BzoPaaoH.js +30 -0
  145. package/dist/assets/diagram-UQ7AKVKN-BnOSn29R.js +41 -0
  146. package/dist/assets/diagram-VSXAHHWV-DAz8vger.js +3 -0
  147. package/dist/assets/diagram-VX7I27RA-BQOZxgYE.js +24 -0
  148. package/dist/assets/diagram-Z3DM3KII-B_OF69Ac.js +24 -0
  149. package/dist/assets/diff-CYBnW6ZU.js +1 -0
  150. package/dist/assets/diff-Ib_BKd8h.js +1 -0
  151. package/dist/assets/dist-1tmpVXyz.js +1 -0
  152. package/dist/assets/dist-4SpsNdg9.js +1 -0
  153. package/dist/assets/dist-AelfNxj6.js +3 -0
  154. package/dist/assets/dist-BCteMNTR.js +1 -0
  155. package/dist/assets/dist-BOfh4hMd.js +2 -0
  156. package/dist/assets/dist-BXTY2Z6u.js +1 -0
  157. package/dist/assets/dist-BZAAgYK3.js +1 -0
  158. package/dist/assets/dist-BeKmSRy3.js +1 -0
  159. package/dist/assets/dist-BmExfiwX.js +23 -0
  160. package/dist/assets/dist-Bqtq4wYM.js +1 -0
  161. package/dist/assets/dist-BxKJ9CUC.js +1 -0
  162. package/dist/assets/dist-C08rfu50.js +1 -0
  163. package/dist/assets/dist-C1ZMbzEY.js +1 -0
  164. package/dist/assets/dist-C43s7KMp.js +1 -0
  165. package/dist/assets/dist-C9ULdZil.js +1 -0
  166. package/dist/assets/dist-CJ4Ekjf-.js +1 -0
  167. package/dist/assets/dist-COseLvbK.js +1 -0
  168. package/dist/assets/dist-CWcX5iL_.js +1 -0
  169. package/dist/assets/dist-CcKu0kT5.js +1 -0
  170. package/dist/assets/dist-CdpiHIsZ.js +1 -0
  171. package/dist/assets/dist-Ceg_d-nu.js +1 -0
  172. package/dist/assets/dist-CibNXpH2.js +1 -0
  173. package/dist/assets/dist-Cllq-3AX.js +1 -0
  174. package/dist/assets/dist-Cm7MoInu.js +7 -0
  175. package/dist/assets/dist-Cny7_yZb.js +14 -0
  176. package/dist/assets/dist-Cw0_qzU5.js +1 -0
  177. package/dist/assets/dist-D0Fg9FgU.js +1 -0
  178. package/dist/assets/dist-DBMV4gqt.js +2 -0
  179. package/dist/assets/dist-DDpltFEG.js +1 -0
  180. package/dist/assets/dist-DF6q90J2.js +1 -0
  181. package/dist/assets/dist-DG2TCPkT.js +1 -0
  182. package/dist/assets/dist-DH7Tm1i8.js +1 -0
  183. package/dist/assets/dist-DLwSLd_v.js +1 -0
  184. package/dist/assets/dist-DOsgOC8X.js +11 -0
  185. package/dist/assets/dist-DcvY27K9.js +1 -0
  186. package/dist/assets/dist-DewjJKIE.js +1 -0
  187. package/dist/assets/dist-DfGC5qxC.js +1 -0
  188. package/dist/assets/dist-DfRK-QAy.js +1 -0
  189. package/dist/assets/dist-DmUAWIff.js +1 -0
  190. package/dist/assets/dist-DoYtnejk.js +1 -0
  191. package/dist/assets/dist-DoyTOIOd.js +1 -0
  192. package/dist/assets/dist-DtH-7lot.js +1 -0
  193. package/dist/assets/dist-DusFODSa.js +9 -0
  194. package/dist/assets/dist-LSsCJjA3.js +6 -0
  195. package/dist/assets/dist-PsHgCCpB.js +1 -0
  196. package/dist/assets/dist-mPh3sAH5.js +1 -0
  197. package/dist/assets/dist-qhAY4L2r.js +1 -0
  198. package/dist/assets/dist-uBfhY3mF.js +1 -0
  199. package/dist/assets/documentation-panel-OMUbXgKW.js +1 -0
  200. package/dist/assets/download-CPMAf7re.js +9 -0
  201. package/dist/assets/dropdown-menu-B2JUUcK7.js +1 -0
  202. package/dist/assets/dtd-DgBHwr-e.js +1 -0
  203. package/dist/assets/dtd-DqGG8R4P.js +1 -0
  204. package/dist/assets/dylan-BTCYgsmh.js +1 -0
  205. package/dist/assets/dylan-fdbf6J3T.js +1 -0
  206. package/dist/assets/ebnfDiagram-PWID7BFC-BbkBTazy.js +1 -0
  207. package/dist/assets/ecl-BPsxRGqR.js +1 -0
  208. package/dist/assets/ecl-K_KNI3_u.js +1 -0
  209. package/dist/assets/edit-page-DD1NFkiu.js +9 -0
  210. package/dist/assets/eiffel-BCguJEP-.js +1 -0
  211. package/dist/assets/eiffel-DatcW1fL.js +1 -0
  212. package/dist/assets/ellipsis-CLMWXUqY.js +1 -0
  213. package/dist/assets/elm-DbcUgz-o.js +1 -0
  214. package/dist/assets/elm-DnNeI1M2.js +1 -0
  215. package/dist/assets/en-US-B4U3zuiu.js +1 -0
  216. package/dist/assets/erDiagram-RLTQ6QDP-DxDHwsU0.js +99 -0
  217. package/dist/assets/erlang-BistxQAs.js +1 -0
  218. package/dist/assets/erlang-DkHPV6ru.js +1 -0
  219. package/dist/assets/error-banner-D1_bPN9u.js +1 -0
  220. package/dist/assets/error-entries-DBpwg0GC.js +5 -0
  221. package/dist/assets/error-panel-ByOEJuZN.js +1 -0
  222. package/dist/assets/es-KNLgCZL4.js +5 -0
  223. package/dist/assets/esm-3WkPrffD.js +1 -0
  224. package/dist/assets/esm-CQuf--zt.js +1 -0
  225. package/dist/assets/eventmodeling-NTZA5JFV-BR2FzK4R.js +1 -0
  226. package/dist/assets/events-CbeVJ6OD.js +1 -0
  227. package/dist/assets/extends-CvVTau-c.js +1 -0
  228. package/dist/assets/external-link-D2lKwXyB.js +1 -0
  229. package/dist/assets/eye-off-CfkK-QS3.js +1 -0
  230. package/dist/assets/factor-DwQNJbiW.js +1 -0
  231. package/dist/assets/factor-ZZBBZpXK.js +1 -0
  232. package/dist/assets/feedback-button-7KY7nL-j.js +10 -0
  233. package/dist/assets/feedback-button-DxjoRfo3.js +1 -0
  234. package/dist/assets/file-explorer-panel-B92ugwxr.js +1 -0
  235. package/dist/assets/file-headphone-DKocX1z0.js +1 -0
  236. package/dist/assets/file-icons-e7tmeyP-.js +1 -0
  237. package/dist/assets/file-mCR_SMtq.js +1 -0
  238. package/dist/assets/file-name-input-DZehOHLA.js +3 -0
  239. package/dist/assets/fileToBase64-aqhlf6Jj.js +1 -0
  240. package/dist/assets/floating-outline-K7cVdOlC.js +1 -0
  241. package/dist/assets/flowDiagram-HODETNUW-BGVnBaF-.js +1 -0
  242. package/dist/assets/formats-DkOlpVdf.js +1 -0
  243. package/dist/assets/formatting-Civx9FAg.js +1 -0
  244. package/dist/assets/forth-B-tqi4f_.js +1 -0
  245. package/dist/assets/forth-DUDizG3o.js +1 -0
  246. package/dist/assets/fortran-BarbOvgW.js +1 -0
  247. package/dist/assets/fortran-C9M6nI39.js +1 -0
  248. package/dist/assets/fullscreen-DEBblJKh.js +41 -0
  249. package/dist/assets/gallery-page-DoriMrLH.js +1 -0
  250. package/dist/assets/ganttDiagram-EL5Y4UJY-BzkL5tY7.js +292 -0
  251. package/dist/assets/gas-DJ-ntEw0.js +1 -0
  252. package/dist/assets/gas-mybzrfIH.js +1 -0
  253. package/dist/assets/gherkin-BlnXaZZf.js +1 -0
  254. package/dist/assets/gherkin-Co7qm0Mt.js +1 -0
  255. package/dist/assets/gitGraph-4MIJSDKK-DYlXv_yJ.js +1 -0
  256. package/dist/assets/gitGraphDiagram-WWUBYQGX-DqtmYSBS.js +106 -0
  257. package/dist/assets/glide-data-editor-DWyeHe3u.js +131 -0
  258. package/dist/assets/glide-utils-BzwA3q-e.js +2 -0
  259. package/dist/assets/globe-CmFhHoL1.js +1 -0
  260. package/dist/assets/graphlib-Blky6igo.js +1 -0
  261. package/dist/assets/groovy-DkYAhc5g.js +1 -0
  262. package/dist/assets/groovy-cYuFC_ot.js +1 -0
  263. package/dist/assets/has-sKqQhP6r.js +1 -0
  264. package/dist/assets/hasIn-yw4sIeJR.js +1 -0
  265. package/dist/assets/haskell-CuLp9g3a.js +1 -0
  266. package/dist/assets/haskell-QbTWCmtk.js +1 -0
  267. package/dist/assets/haxe-CiIUZbdX.js +1 -0
  268. package/dist/assets/haxe-CmR2u-6B.js +1 -0
  269. package/dist/assets/highlighted-body-KPVGNVTW-DxcqwMAu.js +1 -0
  270. package/dist/assets/home-page-BcJJsD_Q.js +4 -0
  271. package/dist/assets/hooks-DNPsQf79.js +1 -0
  272. package/dist/assets/house-CbkYoQ5W.js +1 -0
  273. package/dist/assets/html-to-image-CFVIG1VZ.js +2 -0
  274. package/dist/assets/icons-CVdkfEA3.js +1 -0
  275. package/dist/assets/idl-BHq7WyPV.js +1 -0
  276. package/dist/assets/idl-DY5VfUGL.js +1 -0
  277. package/dist/assets/image-CTch9x2I.js +1 -0
  278. package/dist/assets/index-B7ZZVUcj.css +2 -0
  279. package/dist/assets/index-CqJKdR1j.js +29 -0
  280. package/dist/assets/info-A6RAGUB7-BlU-8_xu.js +1 -0
  281. package/dist/assets/infoDiagram-27XIBGKW-7rLCp1UQ.js +2 -0
  282. package/dist/assets/input-DPd57MDP.js +7 -0
  283. package/dist/assets/isValid-BEbe1fFs.js +1 -0
  284. package/dist/assets/ishikawaDiagram-5VMMS53U-BH7XUtkN.js +70 -0
  285. package/dist/assets/javascript-BWjar7HY.js +1 -0
  286. package/dist/assets/javascript-D-FtdkNC.js +1 -0
  287. package/dist/assets/journeyDiagram-3NMN7TZE-BOj0kV6v.js +139 -0
  288. package/dist/assets/julia-CBfVM-ng.js +1 -0
  289. package/dist/assets/julia-CoYYMTcZ.js +1 -0
  290. package/dist/assets/kanban-definition-UXKFOSKX-CPrudFOv.js +89 -0
  291. package/dist/assets/katex-CQIbPNPT.js +1 -0
  292. package/dist/assets/katex-DUp2KybH.js +257 -0
  293. package/dist/assets/kbd-BnUiViRu.js +1 -0
  294. package/dist/assets/kiosk-mode-DCHo0R3W.js +1 -0
  295. package/dist/assets/layout-BaluekG6.js +9 -0
  296. package/dist/assets/layout-D-WxHzKd.css +1 -0
  297. package/dist/assets/line-io_go0HI.js +1 -0
  298. package/dist/assets/link-BF4dGmOQ.js +1 -0
  299. package/dist/assets/links-BJx6KCyC.js +1 -0
  300. package/dist/assets/livescript-C1gEZ5Hk.js +1 -0
  301. package/dist/assets/livescript-CC7i4CEo.js +1 -0
  302. package/dist/assets/logs-panel-OkoO5mbN.js +1 -0
  303. package/dist/assets/loro_wasm_bg-PyJsS6iH.wasm +0 -0
  304. package/dist/assets/loro_wasm_bg-Vo2IoHaL.js +1 -0
  305. package/dist/assets/loro_wasm_bg-oTW3uoGB.js +1 -0
  306. package/dist/assets/lua-1tNpM92n.js +1 -0
  307. package/dist/assets/lua-DXBxhmso.js +1 -0
  308. package/dist/assets/markdown-export-DzhB1FrN.js +1 -0
  309. package/dist/assets/markdown-renderer-DjIHoF9Z.css +1 -0
  310. package/dist/assets/markdown-renderer-mDlWBE1M.js +2 -0
  311. package/dist/assets/math-Bi_r_ZWc.js +1 -0
  312. package/dist/assets/mathematica-CwlrU_TQ.js +1 -0
  313. package/dist/assets/mathematica-DWMBVyLs.js +1 -0
  314. package/dist/assets/mbox-DvNfx9hX.js +1 -0
  315. package/dist/assets/mbox-skR0V6cu.js +1 -0
  316. package/dist/assets/menu-items-DAaNKHJF.js +1 -0
  317. package/dist/assets/mermaid-CX6aTquk.js +11 -0
  318. package/dist/assets/mermaid-HWGCJPDP-Bk1fR60Q.js +1 -0
  319. package/dist/assets/mermaid-parser.core-CodvbdHU.js +4 -0
  320. package/dist/assets/message-circle-OTHnVlxO.js +1 -0
  321. package/dist/assets/mhchem-hMh9XtQZ.js +1 -0
  322. package/dist/assets/mindmap-definition-YA3MSWOX-kWyI8sXl.js +96 -0
  323. package/dist/assets/mirc-BASUkO3C.js +1 -0
  324. package/dist/assets/mirc-CTGUd79I.js +1 -0
  325. package/dist/assets/mllike-BKN6OcTc.js +1 -0
  326. package/dist/assets/mllike-DHDLWZl9.js +1 -0
  327. package/dist/assets/modelica-C2NfUrdY.js +1 -0
  328. package/dist/assets/modelica-DZs5SjV_.js +1 -0
  329. package/dist/assets/mscgen-Bo5N9WUj.js +1 -0
  330. package/dist/assets/mscgen-C7woTLsY.js +1 -0
  331. package/dist/assets/multi-icon-D129IBvu.css +2 -0
  332. package/dist/assets/multi-icon-DWzZu-9u.js +1 -0
  333. package/dist/assets/mumps-BNg2Yq-1.js +1 -0
  334. package/dist/assets/mumps-DwVYUX8b.js +1 -0
  335. package/dist/assets/name-cell-input-D_Q2IhP9.js +1 -0
  336. package/dist/assets/name-cell-input-ujOhus_y.css +1 -0
  337. package/dist/assets/nsis-B6H_Q9YJ.js +1 -0
  338. package/dist/assets/nsis-DWBX_aOH.js +1 -0
  339. package/dist/assets/ntriples-CSqEHNgf.js +1 -0
  340. package/dist/assets/ntriples-Ck5rp6GE.js +1 -0
  341. package/dist/assets/number-overlay-editor-myrryj7o.js +9 -0
  342. package/dist/assets/numbers-BEfBaQtu.js +1 -0
  343. package/dist/assets/objectWithoutPropertiesLoose-Do6ywDBO.js +1 -0
  344. package/dist/assets/octave-BRpd3hBF.js +1 -0
  345. package/dist/assets/octave-ImTMIie9.js +1 -0
  346. package/dist/assets/outline-panel-Dy2cmYDF.js +1 -0
  347. package/dist/assets/oz-BUEZmvHT.js +1 -0
  348. package/dist/assets/oz-BuYcBdKy.js +1 -0
  349. package/dist/assets/package-data-BwaspaKJ.js +1 -0
  350. package/dist/assets/packages-panel-CIvhx0hb.js +1 -0
  351. package/dist/assets/packet-AYTQ26CC-BSJEH9Lb.js +1 -0
  352. package/dist/assets/pair-_FSgYVX4.js +1 -0
  353. package/dist/assets/panel-accordion-state-BI4SU22L.js +1 -0
  354. package/dist/assets/panels-CO6Clgel.js +4 -0
  355. package/dist/assets/panels-DuFuRfRM.css +2 -0
  356. package/dist/assets/pascal-B50DmceL.js +1 -0
  357. package/dist/assets/pascal-DBfxUwpj.js +1 -0
  358. package/dist/assets/path-BCdg30Y0.js +1 -0
  359. package/dist/assets/pathUtils-BKesuhdv.js +1 -0
  360. package/dist/assets/pegDiagram-XKGWAZYB-CiBJGPte.js +1 -0
  361. package/dist/assets/perl-DmFVAwdF.js +1 -0
  362. package/dist/assets/perl-v9vsztCj.js +1 -0
  363. package/dist/assets/pick-DKIID_Mo.js +1 -0
  364. package/dist/assets/pie-WAS4IAKB-qxv01Y8W.js +1 -0
  365. package/dist/assets/pieDiagram-E7YTZNPT-RpjpKhU6.js +39 -0
  366. package/dist/assets/pig-BnQuru9N.js +1 -0
  367. package/dist/assets/pig-CrKTIB-m.js +1 -0
  368. package/dist/assets/powershell-89xdb5K_.js +1 -0
  369. package/dist/assets/powershell-B1pJyAAD.js +1 -0
  370. package/dist/assets/preload-helper-uBIymjUX.js +1 -0
  371. package/dist/assets/process-output-Crm0vqbi.js +1 -0
  372. package/dist/assets/prop-types-Djf4O40e.js +1 -0
  373. package/dist/assets/properties-Ci7guRqV.js +1 -0
  374. package/dist/assets/properties-DaUFoXFR.js +1 -0
  375. package/dist/assets/protobuf-Ci5XvpF4.js +1 -0
  376. package/dist/assets/protobuf-CoqP8wM5.js +1 -0
  377. package/dist/assets/pug-CJsoo9v0.js +1 -0
  378. package/dist/assets/pug-DPY-Ajan.js +1 -0
  379. package/dist/assets/puppet-C9UYpvtZ.js +1 -0
  380. package/dist/assets/puppet-Da8ZxG7z.js +1 -0
  381. package/dist/assets/purify.es--06brOip.js +3 -0
  382. package/dist/assets/python-C4CVWZ7v.js +1 -0
  383. package/dist/assets/python-xiYauDc4.js +1 -0
  384. package/dist/assets/q-BjtI5Irp.js +1 -0
  385. package/dist/assets/q-CKkOe1xA.js +1 -0
  386. package/dist/assets/quadrantDiagram-AXDQQJYC-Ci_qzCqs.js +7 -0
  387. package/dist/assets/r-Bwc-y-iL.js +1 -0
  388. package/dist/assets/r-vSi6pWDr.js +1 -0
  389. package/dist/assets/radar-RG4KPBEZ-B6h6pWOs.js +1 -0
  390. package/dist/assets/railroad-74A4TZTK-CGtTWdGc.js +1 -0
  391. package/dist/assets/railroad-abnf-HS5TGJTU-Cq7y22IA.js +1 -0
  392. package/dist/assets/railroad-ebnf-LZEXJU2U-V0aQVv9m.js +1 -0
  393. package/dist/assets/railroad-peg-WCYAUIDC-BQiIsX_p.js +1 -0
  394. package/dist/assets/railroadDiagram-O6MQD6OU-B2IWK3fJ.js +1 -0
  395. package/dist/assets/react-icons.esm-C6SMwKZH.js +1 -0
  396. package/dist/assets/react-resizable-panels.browser.esm-BL2E7f5c.js +1 -0
  397. package/dist/assets/react-vega-Jq3Jd7eX.js +189 -0
  398. package/dist/assets/readonly-code-display-CNbw6v1-.js +1 -0
  399. package/dist/assets/readonly-python-code-DcYhdd1B.js +1 -0
  400. package/dist/assets/refresh-cw-CEGpOrzd.js +1 -0
  401. package/dist/assets/renderShortcut-BnRfkbwf.js +1 -0
  402. package/dist/assets/requests-DFPPfagc.js +1 -0
  403. package/dist/assets/requirementDiagram-BXWQKSXE-B0_CyV0T.js +84 -0
  404. package/dist/assets/reveal-component-DeZTBbnn.js +1069 -0
  405. package/dist/assets/rotate-ccw-se3Oa1US.js +1 -0
  406. package/dist/assets/rpm-Cv5HmAkX.js +1 -0
  407. package/dist/assets/rpm-UQSdNQr2.js +1 -0
  408. package/dist/assets/ruby-CKIsIBWn.js +1 -0
  409. package/dist/assets/ruby-CrY8zrT8.js +1 -0
  410. package/dist/assets/run-page-BNEg-Ro9.js +1 -0
  411. package/dist/assets/runs-DyluVj69.js +1 -0
  412. package/dist/assets/runtime-details-state-lxXYwJcI.js +1 -0
  413. package/dist/assets/sankeyDiagram-P5KCCOFB-BekzhMvv.js +40 -0
  414. package/dist/assets/sas-CssadkTB.js +1 -0
  415. package/dist/assets/sas-D3-6PWmJ.js +1 -0
  416. package/dist/assets/save-D4cG4pP2.js +1 -0
  417. package/dist/assets/save-worker-C880NC3o.js +113 -0
  418. package/dist/assets/scheme-CkJWoRmu.js +1 -0
  419. package/dist/assets/scheme-DqTb0ELD.js +1 -0
  420. package/dist/assets/scratchpad-panel-lDJWcpVs.js +1 -0
  421. package/dist/assets/scroll-to-bottom-button-Dmrd5bjQ.js +1 -0
  422. package/dist/assets/secrets-panel-DT1Nansx.js +1 -0
  423. package/dist/assets/select-BwRFbZty.js +1 -0
  424. package/dist/assets/semaphore-BjoL5P0h.js +1 -0
  425. package/dist/assets/sequenceDiagram-WJ2MYXX4-DELi1Kz5.js +162 -0
  426. package/dist/assets/session-BykGt6S3.js +1 -0
  427. package/dist/assets/session-panel-BqutyoYd.js +1 -0
  428. package/dist/assets/share-BZW3tzEX.js +1 -0
  429. package/dist/assets/shell-DySzVBqR.js +1 -0
  430. package/dist/assets/shell-FgUEpLdy.js +1 -0
  431. package/dist/assets/shim-5li_pJY_.js +1 -0
  432. package/dist/assets/sieve-BLxcNk7A.js +1 -0
  433. package/dist/assets/sieve-CoBbN2aF.js +1 -0
  434. package/dist/assets/smalltalk-CJJAzHnb.js +1 -0
  435. package/dist/assets/smalltalk-d1Dbk6V4.js +1 -0
  436. package/dist/assets/snippets-panel-YttkYAW9.js +1 -0
  437. package/dist/assets/sparql-CUZhKeRb.js +1 -0
  438. package/dist/assets/sparql-CjwbV0fX.js +1 -0
  439. package/dist/assets/spec-D9d9nT0z.js +1 -0
  440. package/dist/assets/spinner-CGdRKCnw.js +1 -0
  441. package/dist/assets/square-DvOKKLHZ.js +1 -0
  442. package/dist/assets/square-function-DyFIOFp5.js +1 -0
  443. package/dist/assets/state-B2ZbImvm.js +1 -0
  444. package/dist/assets/state-B85OOscw.js +1 -0
  445. package/dist/assets/state-BxLm8vme.js +1 -0
  446. package/dist/assets/state-YaAkDV8S.js +1 -0
  447. package/dist/assets/state-ja7GWeCS.js +1 -0
  448. package/dist/assets/state-sbCCk7ZP.js +3 -0
  449. package/dist/assets/stateDiagram-D77RDMKH-udui7EYS.js +1 -0
  450. package/dist/assets/stateDiagram-v2-MP3YSRHH-BhduIvF1.js +1 -0
  451. package/dist/assets/step-CqgdNM3U.js +1 -0
  452. package/dist/assets/stex-3SJlFZg3.js +1 -0
  453. package/dist/assets/stex-Dc5bKD4z.js +1 -0
  454. package/dist/assets/strings-hlCLC-K1.js +2 -0
  455. package/dist/assets/stylus-BvudHrj4.js +1 -0
  456. package/dist/assets/stylus-uh0Gd-Iz.js +1 -0
  457. package/dist/assets/swift-CUIczYYb.js +1 -0
  458. package/dist/assets/swift-D5IK5OrP.js +1 -0
  459. package/dist/assets/swimlanes-42K2YHIH-C-iTrYJs.js +1 -0
  460. package/dist/assets/swimlanesDiagram-VR7AAH4N-WC2Zewqb.js +8 -0
  461. package/dist/assets/swiper-component-eXUBvFuA.js +1 -0
  462. package/dist/assets/switch-C-83e2fG.js +1 -0
  463. package/dist/assets/table-B7KYyTxw.js +1 -0
  464. package/dist/assets/table-Dg1KxH-q.js +1 -0
  465. package/dist/assets/tabs-QRT1DYjj.js +1 -0
  466. package/dist/assets/tcl-BvqzOD3a.js +1 -0
  467. package/dist/assets/tcl-SjROh4xB.js +1 -0
  468. package/dist/assets/terminal-3hxM6K9q.js +20 -0
  469. package/dist/assets/textile--JQHE1pJ.js +1 -0
  470. package/dist/assets/textile-DgW6fC9R.js +1 -0
  471. package/dist/assets/timeline-definition-24CTP7MA-D2u0nOZp.js +120 -0
  472. package/dist/assets/toast-BRwEbWb6.js +1 -0
  473. package/dist/assets/toml-BcC_uO4q.js +1 -0
  474. package/dist/assets/toml-lWmHdWv5.js +1 -0
  475. package/dist/assets/tooltip-B5pI8o2n.js +1 -0
  476. package/dist/assets/tooltip-BeP4eX87.js +61 -0
  477. package/dist/assets/tracing-DZYfCw6p.js +1 -0
  478. package/dist/assets/tracing-panel-BUPJ77jB.js +2 -0
  479. package/dist/assets/tree-actions-D5clvgKl.js +1 -0
  480. package/dist/assets/treeView-Q6P3EWNA-BTTYcvrF.js +1 -0
  481. package/dist/assets/treemap-WGGIJYW6-Cg7tyfH8.js +1 -0
  482. package/dist/assets/triangle-alert-BeRqoThc.js +1 -0
  483. package/dist/assets/troff-BMlKH74u.js +1 -0
  484. package/dist/assets/troff-r7W702V9.js +1 -0
  485. package/dist/assets/ttcn-1CwPIugQ.js +1 -0
  486. package/dist/assets/ttcn-P2iYmK_j.js +1 -0
  487. package/dist/assets/ttcn-cfg-2bl9aE98.js +1 -0
  488. package/dist/assets/ttcn-cfg-CHYEAF6D.js +1 -0
  489. package/dist/assets/turtle-DDf6uD3p.js +1 -0
  490. package/dist/assets/turtle-D_5eCUwg.js +1 -0
  491. package/dist/assets/use-restore-focus-GUh2Nd8Z.js +1 -0
  492. package/dist/assets/useAddCell-Bhv6GT3m.js +1 -0
  493. package/dist/assets/useBoolean-Co-_MyFz.js +1 -0
  494. package/dist/assets/useCellActionButton-DwAUf_Cn.js +1 -0
  495. package/dist/assets/useDateFormatter-CTYCgKB-.js +1 -0
  496. package/dist/assets/useDeepCompareMemoize-DSlTt6u_.js +1 -0
  497. package/dist/assets/useDeleteCell-BKN7t4DH.js +1 -0
  498. package/dist/assets/useDependencyPanelTab-CbcGEmqM.js +1 -0
  499. package/dist/assets/useEventListener-IRzG-0mH.js +1 -0
  500. package/dist/assets/useIframeCapabilities-yd8sMuIo.js +1 -0
  501. package/dist/assets/useInstallPackage-HTUlGg0U.js +1 -0
  502. package/dist/assets/useInterval-D1QGqQ_I.js +1 -0
  503. package/dist/assets/useNotebookActions-pXzVjrlk.js +1 -0
  504. package/dist/assets/useNumberFormatter-BP99Zbyy.js +1 -0
  505. package/dist/assets/useRunCells-zMO43eNR.js +1 -0
  506. package/dist/assets/useSplitCell-xEtFLByO.js +1 -0
  507. package/dist/assets/useTheme-BkPLyRl9.js +1 -0
  508. package/dist/assets/utils-CaQYvazl.js +1 -0
  509. package/dist/assets/vb-CrfmF706.js +1 -0
  510. package/dist/assets/vb-Vd6lTutg.js +1 -0
  511. package/dist/assets/vbscript-CcW6E3ma.js +1 -0
  512. package/dist/assets/vbscript-Cpiv2llq.js +1 -0
  513. package/dist/assets/vega-component-Chbfi__Q.js +1 -0
  514. package/dist/assets/vega-embed-container-CRZZ4FTx.js +1 -0
  515. package/dist/assets/velocity-5N54agTA.js +1 -0
  516. package/dist/assets/velocity-CuSicjhq.js +1 -0
  517. package/dist/assets/vennDiagram-4TSXK5OY-BKSHsv-w.js +34 -0
  518. package/dist/assets/verilog-DH7aBYt7.js +1 -0
  519. package/dist/assets/verilog-DPWRmpYS.js +1 -0
  520. package/dist/assets/vhdl-BmegRbqn.js +1 -0
  521. package/dist/assets/vhdl-sLYad3YP.js +1 -0
  522. package/dist/assets/wardley-WFR3VGLG-C6N1rULY.js +1 -0
  523. package/dist/assets/wardleyDiagram-VM6X3IG4-CUDQDDoy.js +78 -0
  524. package/dist/assets/webidl-CNY2gQL0.js +1 -0
  525. package/dist/assets/webidl-dw5if_Lv.js +1 -0
  526. package/dist/assets/worker-B5tVfGoh.js +153 -0
  527. package/dist/assets/workflow-nBi9HGeO.js +1 -0
  528. package/dist/assets/write-secret-modal-BcosCmZy.js +2 -0
  529. package/dist/assets/ws-BXWY541V.js +22 -0
  530. package/dist/assets/xquery-CuDTgW6S.js +1 -0
  531. package/dist/assets/xquery-d3Qdoigy.js +1 -0
  532. package/dist/assets/xychartDiagram-S5SC5T6Z-BXDsTxGu.js +7 -0
  533. package/dist/assets/yacas-BjDXhrkW.js +1 -0
  534. package/dist/assets/yacas-Dn2coKff.js +1 -0
  535. package/dist/assets/youtube-2MBs34oQ.js +1 -0
  536. package/dist/assets/z80-ByJO5ysu.js +1 -0
  537. package/dist/assets/z80-z4BkVl0y.js +1 -0
  538. package/dist/index.html +130 -50
  539. package/package.json +16 -16
  540. package/src/__tests__/mount.test.ts +6 -6
  541. package/src/components/chat/tool-call/__tests__/tool-result.test.tsx +56 -0
  542. package/src/components/chat/tool-call/tool-result.tsx +3 -3
  543. package/src/components/data-table/TableTopBar.tsx +4 -0
  544. package/src/components/data-table/__tests__/export-actions.test.tsx +1111 -14
  545. package/src/components/data-table/__tests__/pagination.test.tsx +85 -1
  546. package/src/components/data-table/__tests__/schemas.test.ts +57 -0
  547. package/src/components/data-table/charts/__tests__/schemas.test.ts +25 -0
  548. package/src/components/data-table/charts/__tests__/spec.test.ts +26 -23
  549. package/src/components/data-table/charts/constants.ts +11 -10
  550. package/src/components/data-table/charts/types.ts +1 -0
  551. package/src/components/data-table/data-table.tsx +3 -0
  552. package/src/components/data-table/export-actions.tsx +365 -81
  553. package/src/components/data-table/pagination.tsx +16 -2
  554. package/src/components/data-table/schemas.ts +90 -14
  555. package/src/components/editor/actions/__tests__/pair-with-agent-commands.test.ts +32 -46
  556. package/src/components/editor/actions/__tests__/pair-with-agent-modal.test.tsx +29 -40
  557. package/src/components/editor/actions/pair-with-agent-commands.ts +3 -4
  558. package/src/components/editor/actions/pair-with-agent-modal.tsx +4 -7
  559. package/src/components/editor/actions/useRestartKernel.tsx +2 -2
  560. package/src/components/editor/alerts/__tests__/connection-notice.test.tsx +224 -17
  561. package/src/components/editor/alerts/connection-details.tsx +61 -0
  562. package/src/components/editor/alerts/connection-notice.tsx +46 -53
  563. package/src/components/editor/alerts/startup-progress.tsx +73 -129
  564. package/src/components/editor/app-container.tsx +2 -2
  565. package/src/components/editor/boundary/__tests__/ErrorBoundary.test.tsx +2 -2
  566. package/src/components/editor/cell/CreateCellButton.tsx +2 -2
  567. package/src/components/editor/cell/DeleteButton.tsx +2 -2
  568. package/src/components/editor/cell/RunButton.tsx +3 -3
  569. package/src/components/editor/cell/StopButton.tsx +2 -2
  570. package/src/components/editor/chrome/components/__tests__/feedback-button.test.tsx +4 -4
  571. package/src/components/editor/chrome/components/feedback-button.tsx +3 -3
  572. package/src/components/editor/chrome/panels/__tests__/packages-panel.test.tsx +8 -8
  573. package/src/components/editor/chrome/panels/__tests__/runtime-details.test.tsx +430 -0
  574. package/src/components/editor/chrome/panels/__tests__/sandbox-recovery.test.tsx +4 -4
  575. package/src/components/editor/chrome/panels/packages-panel.tsx +8 -29
  576. package/src/components/editor/chrome/panels/runtime-details-state.ts +38 -0
  577. package/src/components/editor/chrome/panels/runtime-panel.tsx +202 -0
  578. package/src/components/editor/chrome/panels/runtime-status-toggle.tsx +56 -0
  579. package/src/components/editor/chrome/panels/sandbox-controller.tsx +2 -2
  580. package/src/components/editor/chrome/wrapper/app-chrome.tsx +3 -3
  581. package/src/components/editor/chrome/wrapper/footer-items/machine-stats.tsx +2 -2
  582. package/src/components/editor/controls/Controls.tsx +3 -3
  583. package/src/components/editor/controls/__tests__/notebook-menu-dropdown.test.tsx +2 -2
  584. package/src/components/editor/header/__tests__/status.test.tsx +4 -4
  585. package/src/components/editor/header/app-header.tsx +2 -2
  586. package/src/components/editor/header/status.tsx +3 -3
  587. package/src/components/editor/navigation/__tests__/navigation.test.ts +8 -8
  588. package/src/components/ui/__tests__/slider.test.tsx +30 -0
  589. package/src/components/ui/progress-stages.tsx +114 -0
  590. package/src/core/codemirror/lsp/__tests__/notebook-lsp.test.ts +106 -5
  591. package/src/core/codemirror/lsp/notebook-lsp.ts +16 -2
  592. package/src/core/codemirror/readonly/__tests__/extension.test.ts +6 -6
  593. package/src/core/codemirror/readonly/extension.ts +2 -2
  594. package/src/core/config/pair.ts +0 -1
  595. package/src/core/datasets/__tests__/data-source-discovery.test.ts +2 -2
  596. package/src/core/edit-app.tsx +5 -1
  597. package/src/core/export/hooks.ts +2 -2
  598. package/src/core/islands/bootstrap.ts +1 -0
  599. package/src/core/kernel/session.ts +9 -0
  600. package/src/core/network/__tests__/connection.test.ts +3 -3
  601. package/src/core/network/connection-notice.ts +5 -5
  602. package/src/core/network/connection.ts +9 -9
  603. package/src/core/network/requests-lazy.ts +2 -2
  604. package/src/core/packages/__tests__/useSandboxController.test.tsx +2 -2
  605. package/src/core/packages/useSandboxController.ts +6 -6
  606. package/src/core/runtime/__tests__/adapter.test.ts +6 -6
  607. package/src/core/runtime/adapter.ts +7 -7
  608. package/src/core/runtime/config.ts +2 -2
  609. package/src/core/saving/filename.ts +2 -2
  610. package/src/core/saving/save-component.tsx +5 -5
  611. package/src/core/saving/useAutoSave.ts +2 -2
  612. package/src/core/wasm/__tests__/bootstrap.test.ts +33 -1
  613. package/src/core/wasm/worker/bootstrap.ts +22 -3
  614. package/src/core/websocket/__tests__/useMarimoKernelConnection.hook.test.tsx +30 -25
  615. package/src/core/websocket/__tests__/useMarimoKernelConnection.test.ts +5 -5
  616. package/src/core/websocket/connection-utils.ts +21 -21
  617. package/src/core/websocket/types.ts +8 -9
  618. package/src/core/websocket/useMarimoKernelConnection.tsx +33 -22
  619. package/src/css/katex.min.css +145 -144
  620. package/src/mount.tsx +2 -2
  621. package/src/plugins/core/__test__/registerReactComponent.test.ts +55 -0
  622. package/src/plugins/core/registerReactComponent.tsx +3 -1
  623. package/src/plugins/impl/CheckboxPlugin.tsx +1 -1
  624. package/src/plugins/impl/DataTablePlugin.tsx +23 -2
  625. package/src/plugins/impl/DatePickerPlugin.tsx +5 -3
  626. package/src/plugins/impl/DateRangePlugin.tsx +5 -3
  627. package/src/plugins/impl/DateTimePickerPlugin.tsx +5 -3
  628. package/src/plugins/impl/DropdownPlugin.tsx +1 -1
  629. package/src/plugins/impl/MultiselectPlugin.tsx +1 -1
  630. package/src/plugins/impl/NumberPlugin.tsx +1 -1
  631. package/src/plugins/impl/RadioPlugin.tsx +5 -1
  632. package/src/plugins/impl/RangeSliderPlugin.tsx +1 -1
  633. package/src/plugins/impl/SearchableSelect.tsx +1 -1
  634. package/src/plugins/impl/SliderPlugin.tsx +1 -1
  635. package/src/plugins/impl/SwitchPlugin.tsx +6 -1
  636. package/src/plugins/impl/TextAreaPlugin.tsx +23 -4
  637. package/src/plugins/impl/TextInputPlugin.tsx +10 -2
  638. package/src/plugins/impl/__test__/text-labels.test.tsx +141 -0
  639. package/src/plugins/impl/__tests__/DataTablePlugin.test.tsx +65 -8
  640. package/src/plugins/impl/__tests__/widget-labels.test.tsx +122 -0
  641. package/src/plugins/impl/chat/ChatPlugin.tsx +1 -1
  642. package/src/plugins/impl/common/labeled.tsx +9 -3
  643. package/src/plugins/impl/data-frames/DataFramePlugin.tsx +15 -3
  644. package/src/plugins/impl/data-frames/forms/__tests__/__snapshots__/form.test.tsx.snap +0 -22
  645. package/src/stories/cell.stories.tsx +2 -2
  646. package/src/stories/dataframe.stories.tsx +7 -0
  647. package/src/stories/layout/vertical/one-column.stories.tsx +5 -5
  648. package/src/stories/progress-stages.stories.tsx +62 -0
  649. package/src/stories/runtime-existing.stories.tsx +44 -0
  650. package/src/stories/runtime-maintenance.stories.tsx +40 -0
  651. package/src/stories/runtime-pixi.stories.tsx +28 -0
  652. package/src/stories/runtime-story.tsx +527 -0
  653. package/src/stories/runtime-uv.stories.tsx +56 -0
  654. package/dist/assets/ConnectedDataExplorerComponent-BFDHLGyp.js +0 -1
  655. package/dist/assets/ErrorBoundary-CtGZ1MAN.js +0 -2
  656. package/dist/assets/LazyAnyLanguageCodeMirror-CaEYnB8x.js +0 -2
  657. package/dist/assets/RunButton-Czeyf3Pi.css +0 -2
  658. package/dist/assets/RunButton-YN1KKz4a.js +0 -22
  659. package/dist/assets/__vite-browser-external-Cw9Ccr_O.js +0 -1
  660. package/dist/assets/__vite-browser-external-DBuuG05M.js +0 -1
  661. package/dist/assets/abnfDiagram-VCTEODGH-CqPJWAgx.js +0 -1
  662. package/dist/assets/add-cell-with-ai-Dceg80EG.js +0 -76
  663. package/dist/assets/agent-panel-CEG8eS3F.js +0 -286
  664. package/dist/assets/ai-model-dropdown-SOxGsjRY.js +0 -5
  665. package/dist/assets/alert-dialog-BsB0FYEL.js +0 -7
  666. package/dist/assets/any-language-editor-b9spizfh.js +0 -1
  667. package/dist/assets/apl-CFg5GYAr.js +0 -1
  668. package/dist/assets/app-config-button-CTTg_TIX.js +0 -1
  669. package/dist/assets/arc-DR2VsF_m.js +0 -1
  670. package/dist/assets/architecture-7GRP2DOG-D_jUzZ2f.js +0 -1
  671. package/dist/assets/architectureDiagram-5GKGNRK7-DXjBUUE6.js +0 -36
  672. package/dist/assets/asciiarmor-DcSiPPgr.js +0 -1
  673. package/dist/assets/asn1-BPjkVyGQ.js +0 -1
  674. package/dist/assets/blockDiagram-I7D4REHJ-DS6I1u-N.js +0 -129
  675. package/dist/assets/brainfuck-DunkcVMy.js +0 -1
  676. package/dist/assets/button-qFeU84ax.js +0 -1
  677. package/dist/assets/c4Diagram-7LVT6UL2-CMQEYn6T.js +0 -38
  678. package/dist/assets/cache-panel-Ct9EFgP7.js +0 -1
  679. package/dist/assets/capabilities-BqUNf14U.js +0 -1
  680. package/dist/assets/cells-CU9huD49.js +0 -220
  681. package/dist/assets/channel-CGdeorQk.js +0 -1
  682. package/dist/assets/chat-display-DWPnai8M.js +0 -1
  683. package/dist/assets/chat-panel-DGnu6v96.js +0 -4
  684. package/dist/assets/chat-ui-BqLN7iW4.js +0 -4
  685. package/dist/assets/chunk-4HAMMTFA-C6Tl7kEY.js +0 -62
  686. package/dist/assets/chunk-75Z2AOVW-BzzYECN7.js +0 -2
  687. package/dist/assets/chunk-DU6HZSFF-BlpgvKzl.js +0 -126
  688. package/dist/assets/chunk-F27PBJKO-BVIgLGPF.js +0 -1
  689. package/dist/assets/chunk-GMAD6QVW-hv6IsAru.js +0 -72
  690. package/dist/assets/chunk-GVQU2GXP-Duv4ZYb-.js +0 -1
  691. package/dist/assets/chunk-IMKFNOWR-s8kQsL8K.js +0 -231
  692. package/dist/assets/chunk-L3NEJ4N5-B2hafvRU.js +0 -1
  693. package/dist/assets/chunk-OSK3NFVY-SNGRdtNA.js +0 -10
  694. package/dist/assets/chunk-P2QGCYS3-_SeE0QXb.js +0 -1
  695. package/dist/assets/chunk-POPQ4Y6H-BB5NNJFE.js +0 -1
  696. package/dist/assets/chunk-PWAF6VOD-BZoBqp8x.js +0 -1
  697. package/dist/assets/chunk-SHT3W25Y-CM7-8w1-.js +0 -168
  698. package/dist/assets/chunk-SVP7TREG-BErtDMhh.js +0 -88
  699. package/dist/assets/chunk-TICWLB2K-CGVR3aYq.js +0 -206
  700. package/dist/assets/chunk-YOKDWASO-CaoEAGJk.js +0 -142
  701. package/dist/assets/circle-CzTMKZwz.js +0 -1
  702. package/dist/assets/classDiagram-ZZMXUADV-isldMhyu.js +0 -1
  703. package/dist/assets/classDiagram-v2-VYDZK3BY-isldMhyu.js +0 -1
  704. package/dist/assets/clike-DVzjdKyz.js +0 -1
  705. package/dist/assets/clojure-B0g4lNAw.js +0 -1
  706. package/dist/assets/cmake-DPXbK5QP.js +0 -1
  707. package/dist/assets/cobol-fTfgAx9-.js +0 -1
  708. package/dist/assets/code-visibility-BGq9NyQN.js +0 -1
  709. package/dist/assets/coffeescript-Ow8rTsfP.js +0 -1
  710. package/dist/assets/command-palette-CyBHUvlK.js +0 -1
  711. package/dist/assets/common-CdJQaC_v.js +0 -1
  712. package/dist/assets/commonlisp-CRQC3SaM.js +0 -1
  713. package/dist/assets/components-DsJLlugL.js +0 -1
  714. package/dist/assets/components-zfCkpDjF.js +0 -1
  715. package/dist/assets/config-2Nts63h2.js +0 -1
  716. package/dist/assets/config-BdH5RvM0.js +0 -1
  717. package/dist/assets/config-D7CP5wR5.js +0 -1
  718. package/dist/assets/copy-B--GzTEX.js +0 -1
  719. package/dist/assets/copy-icon-DQuttmjH.js +0 -1
  720. package/dist/assets/createReducer-CI8rlZE9.js +0 -1
  721. package/dist/assets/crystal-BrD_FAHX.js +0 -1
  722. package/dist/assets/css-bBkWhGQX.js +0 -1
  723. package/dist/assets/cynefin-OW5HDTMX-DIiiykJg.js +0 -1
  724. package/dist/assets/cynefinDiagram-5FMLGOSQ-B7iZDq2a.js +0 -62
  725. package/dist/assets/cypher-i9OcNAXL.js +0 -1
  726. package/dist/assets/d-vXL79Y_P.js +0 -1
  727. package/dist/assets/dagre-DkKsNZNe.js +0 -1
  728. package/dist/assets/dagre-GXQ25YYZ-CLT8-BB_.js +0 -4
  729. package/dist/assets/data-grid-overlay-editor-Bt4aaHfB.js +0 -1
  730. package/dist/assets/dependency-graph-panel-DPFdz5rd.js +0 -5
  731. package/dist/assets/diagram-S7CK7UJ4-SuzEYncV.js +0 -30
  732. package/dist/assets/diagram-UQ7AKVKN-cuBTTzq8.js +0 -41
  733. package/dist/assets/diagram-VSXAHHWV-CK4GkM-q.js +0 -3
  734. package/dist/assets/diagram-VX7I27RA-h6SkZKIl.js +0 -24
  735. package/dist/assets/diagram-Z3DM3KII-C-Vebae0.js +0 -24
  736. package/dist/assets/diff-Cpbyjb1r.js +0 -1
  737. package/dist/assets/dist-BH-S-j9V.js +0 -1
  738. package/dist/assets/dist-BN-7G8qZ.js +0 -2
  739. package/dist/assets/dist-BTskHGpb.js +0 -2
  740. package/dist/assets/dist-BWSz9T8E.js +0 -1
  741. package/dist/assets/dist-BYSOsNiK.js +0 -1
  742. package/dist/assets/dist-BYab5Kqm.js +0 -1
  743. package/dist/assets/dist-BczecT6V.js +0 -14
  744. package/dist/assets/dist-Bviq_Dee.js +0 -1
  745. package/dist/assets/dist-CCiiXOoB.js +0 -1
  746. package/dist/assets/dist-CEjBPDxA.js +0 -1
  747. package/dist/assets/dist-CI-3E0S2.js +0 -1
  748. package/dist/assets/dist-CQvJDryh.js +0 -7
  749. package/dist/assets/dist-Ccyblc8N.js +0 -1
  750. package/dist/assets/dist-CiUBikfn.js +0 -1
  751. package/dist/assets/dist-Cx42VZlZ.js +0 -1
  752. package/dist/assets/dist-D5LovWSN.js +0 -1
  753. package/dist/assets/dist-DBqBVprh.js +0 -6
  754. package/dist/assets/dist-DFI04FfI.js +0 -1
  755. package/dist/assets/dist-DuOZdyY2.js +0 -1
  756. package/dist/assets/dist-DueXZKz9.js +0 -9
  757. package/dist/assets/dist-DvHtpUI7.js +0 -11
  758. package/dist/assets/dist-Dz4H5Lpr.js +0 -1
  759. package/dist/assets/dist-Gcu0m5O1.js +0 -1
  760. package/dist/assets/dist-MRn68vX1.js +0 -23
  761. package/dist/assets/dist-vrBHmefa.js +0 -1
  762. package/dist/assets/dist-yiD-qDpu.js +0 -1
  763. package/dist/assets/documentation-panel-YTTKKIe_.js +0 -1
  764. package/dist/assets/dropdown-menu-Crx6knLg.js +0 -1
  765. package/dist/assets/dtd-BN3Z36N0.js +0 -1
  766. package/dist/assets/dylan-DtbpL-5i.js +0 -1
  767. package/dist/assets/ebnfDiagram-PWID7BFC-Bm_qbW1t.js +0 -1
  768. package/dist/assets/ecl-BWUyrr3C.js +0 -1
  769. package/dist/assets/edit-page-CWbb1Sdk.js +0 -174
  770. package/dist/assets/eiffel-CWDL_R9u.js +0 -1
  771. package/dist/assets/elm-BzsnjhuV.js +0 -1
  772. package/dist/assets/erDiagram-RLTQ6QDP-Dwwt91bq.js +0 -99
  773. package/dist/assets/erlang-DXJDmcpF.js +0 -1
  774. package/dist/assets/error-entries-DvgFKvod.js +0 -5
  775. package/dist/assets/error-panel-D1XBOiHc.js +0 -1
  776. package/dist/assets/esm-BErdoAcz.js +0 -1
  777. package/dist/assets/eventmodeling-NTZA5JFV-DqXXj9CO.js +0 -1
  778. package/dist/assets/factor-Tpb8PZTx.js +0 -1
  779. package/dist/assets/feedback-button-CXjDdARJ.js +0 -10
  780. package/dist/assets/file-explorer-panel-BKJMBA3O.js +0 -1
  781. package/dist/assets/file-name-input-Bd3Q-WUK.js +0 -3
  782. package/dist/assets/filename-rhW-R6K2.js +0 -1
  783. package/dist/assets/flowDiagram-HODETNUW-CqLwY5NX.js +0 -1
  784. package/dist/assets/forth-Dw2vWL7C.js +0 -1
  785. package/dist/assets/fortran-DKiYgGt5.js +0 -1
  786. package/dist/assets/fullscreen-3wS6IaIC.js +0 -41
  787. package/dist/assets/gallery-page-CrkxyZTA.js +0 -1
  788. package/dist/assets/ganttDiagram-EL5Y4UJY-Cgy11k0G.js +0 -292
  789. package/dist/assets/gas-Ei6cTQl-.js +0 -1
  790. package/dist/assets/gherkin-yFF3mfsd.js +0 -1
  791. package/dist/assets/gitGraph-4MIJSDKK-BlIdVC2G.js +0 -1
  792. package/dist/assets/gitGraphDiagram-WWUBYQGX-CVH8fay_.js +0 -106
  793. package/dist/assets/glide-data-editor-B5WqL5gm.js +0 -131
  794. package/dist/assets/graphlib-6Yb0YQgW.js +0 -1
  795. package/dist/assets/groovy-UTCC12KJ.js +0 -1
  796. package/dist/assets/has-B4C7ywdy.js +0 -1
  797. package/dist/assets/haskell-BHJQXLHt.js +0 -1
  798. package/dist/assets/haxe-nTPzqrqE.js +0 -1
  799. package/dist/assets/highlighted-body-KPVGNVTW-D9V82ncH.js +0 -1
  800. package/dist/assets/home-page-BNKKAvoF.js +0 -4
  801. package/dist/assets/idl-CuG-upqW.js +0 -1
  802. package/dist/assets/index--sT8xf-8.css +0 -2
  803. package/dist/assets/index-C9FPQNuH.js +0 -62
  804. package/dist/assets/info-A6RAGUB7-BdPbe-lF.js +0 -1
  805. package/dist/assets/infoDiagram-27XIBGKW-dRXMROiS.js +0 -2
  806. package/dist/assets/input-D4bMj5Nb.js +0 -7
  807. package/dist/assets/ishikawaDiagram-5VMMS53U-CvBCDJJe.js +0 -70
  808. package/dist/assets/javascript-DeVynBqR.js +0 -1
  809. package/dist/assets/journeyDiagram-3NMN7TZE-DRc8ACzh.js +0 -139
  810. package/dist/assets/julia-pvaK4Pax.js +0 -1
  811. package/dist/assets/kanban-definition-UXKFOSKX-fIKpyolW.js +0 -89
  812. package/dist/assets/katex-DkE0ukCy.js +0 -257
  813. package/dist/assets/livescript-DT1P5eZp.js +0 -1
  814. package/dist/assets/logs-panel-adAvx6o3.js +0 -1
  815. package/dist/assets/loro_wasm_bg-BwsqTTze.wasm +0 -0
  816. package/dist/assets/lua-BveDyMVp.js +0 -1
  817. package/dist/assets/mathematica-BRcOIGly.js +0 -1
  818. package/dist/assets/mbox-DZvbm2hT.js +0 -1
  819. package/dist/assets/menu-items-D-vbZmqL.js +0 -1
  820. package/dist/assets/mermaid-DpSqZGNM.js +0 -44
  821. package/dist/assets/mermaid-HWGCJPDP-UrYE0_I-.js +0 -1
  822. package/dist/assets/mermaid-parser.core-3RKOfUXB.js +0 -7
  823. package/dist/assets/mhchem-CmzEtQj8.js +0 -1
  824. package/dist/assets/mindmap-definition-YA3MSWOX-B95LGKLt.js +0 -96
  825. package/dist/assets/mirc-Bjfymsl0.js +0 -1
  826. package/dist/assets/mllike-DKHdPBJ4.js +0 -1
  827. package/dist/assets/modelica-DSjP6M5g.js +0 -1
  828. package/dist/assets/mscgen-BLnPHriT.js +0 -1
  829. package/dist/assets/mumps-C8StcE5K.js +0 -1
  830. package/dist/assets/nsis-T1iBtB9C.js +0 -1
  831. package/dist/assets/ntriples-ChQ5ETDi.js +0 -1
  832. package/dist/assets/number-overlay-editor-Bs5xzKX-.js +0 -9
  833. package/dist/assets/numbers-DyJNv6Vk.js +0 -1
  834. package/dist/assets/octave-B1-zg_Ax.js +0 -1
  835. package/dist/assets/outline-panel-B9u6Wgol.js +0 -1
  836. package/dist/assets/oz-Bl-j8Qgc.js +0 -1
  837. package/dist/assets/packages-panel-D-g71io7.js +0 -1
  838. package/dist/assets/packet-AYTQ26CC-st4ZYus8.js +0 -1
  839. package/dist/assets/panels-C5xQNcZv.js +0 -33
  840. package/dist/assets/panels-CsyUBsel.css +0 -1
  841. package/dist/assets/pascal-BOvYlg0k.js +0 -1
  842. package/dist/assets/pegDiagram-XKGWAZYB-CMaSc5Ln.js +0 -1
  843. package/dist/assets/perl-Bg-67FLb.js +0 -1
  844. package/dist/assets/pie-WAS4IAKB-GwT5MHDl.js +0 -1
  845. package/dist/assets/pieDiagram-E7YTZNPT-CZY0tLgh.js +0 -39
  846. package/dist/assets/pig-Dm1oyrLX.js +0 -1
  847. package/dist/assets/powershell-DohryO0B.js +0 -1
  848. package/dist/assets/preload-helper-HclGiUj8.js +0 -1
  849. package/dist/assets/process-output-CpF79y4D.js +0 -1
  850. package/dist/assets/properties-C9Sx0CY6.js +0 -1
  851. package/dist/assets/protobuf-CkyW36SJ.js +0 -1
  852. package/dist/assets/pug-Db3Zt5v4.js +0 -1
  853. package/dist/assets/puppet-B65Z6MIR.js +0 -1
  854. package/dist/assets/purify.es-CYRiAeUx.js +0 -3
  855. package/dist/assets/python-D2ExL5QM.js +0 -1
  856. package/dist/assets/q-uBS-kSZE.js +0 -1
  857. package/dist/assets/quadrantDiagram-AXDQQJYC-D_wrOwLk.js +0 -7
  858. package/dist/assets/r-BieRum_u.js +0 -1
  859. package/dist/assets/radar-RG4KPBEZ-h1Tdn-Oz.js +0 -1
  860. package/dist/assets/railroad-74A4TZTK-r4Uf-msd.js +0 -1
  861. package/dist/assets/railroad-abnf-HS5TGJTU-BOoktJ2s.js +0 -1
  862. package/dist/assets/railroad-ebnf-LZEXJU2U-BzJtHsBe.js +0 -1
  863. package/dist/assets/railroad-peg-WCYAUIDC-C3wGFTzw.js +0 -1
  864. package/dist/assets/railroadDiagram-O6MQD6OU-BSMijs6s.js +0 -1
  865. package/dist/assets/react-vega-DNkV_C37.js +0 -189
  866. package/dist/assets/requirementDiagram-BXWQKSXE-DjzkUUZk.js +0 -84
  867. package/dist/assets/reveal-component-ZyDayfDQ.js +0 -1069
  868. package/dist/assets/rpm-CmRXh_9v.js +0 -1
  869. package/dist/assets/ruby-B4BmRxk8.js +0 -1
  870. package/dist/assets/run-page-Ba_64fL5.js +0 -1
  871. package/dist/assets/sankeyDiagram-P5KCCOFB-CvvUY6tS.js +0 -40
  872. package/dist/assets/sas-DL2uE5J1.js +0 -1
  873. package/dist/assets/save-worker-Dw8ybFWq.js +0 -113
  874. package/dist/assets/scheme-CPTXU9en.js +0 -1
  875. package/dist/assets/scratchpad-panel-7bxRkpPb.js +0 -1
  876. package/dist/assets/scroll-to-bottom-button-BLNi0TGS.js +0 -1
  877. package/dist/assets/secrets-panel-DmKgIV5x.js +0 -1
  878. package/dist/assets/select-CWHHoM53.js +0 -1
  879. package/dist/assets/sequenceDiagram-WJ2MYXX4-Dp7JdkJ6.js +0 -162
  880. package/dist/assets/session-panel-D9qVJogC.js +0 -1
  881. package/dist/assets/session-ztCnZJHI.js +0 -1
  882. package/dist/assets/shell-B2QETDWa.js +0 -1
  883. package/dist/assets/sieve-DWZh8qcF.js +0 -1
  884. package/dist/assets/smalltalk-BZOwo1hk.js +0 -1
  885. package/dist/assets/snippets-panel-QdZvjlBm.js +0 -1
  886. package/dist/assets/sparql-Va5qPe7r.js +0 -1
  887. package/dist/assets/state-0NZOvqJz.js +0 -1
  888. package/dist/assets/stateDiagram-D77RDMKH-CR5QDK_-.js +0 -1
  889. package/dist/assets/stateDiagram-v2-MP3YSRHH-BmMYN-vz.js +0 -1
  890. package/dist/assets/step-CriubqJO.js +0 -1
  891. package/dist/assets/stex-CJTNBbet.js +0 -1
  892. package/dist/assets/strings-LjhpYwmx.js +0 -2
  893. package/dist/assets/stylus-B7NEtOjg.js +0 -1
  894. package/dist/assets/swift-CyXDuJhH.js +0 -1
  895. package/dist/assets/swimlanes-42K2YHIH-By_1jYHM.js +0 -1
  896. package/dist/assets/swimlanesDiagram-VR7AAH4N-DjMyvNFc.js +0 -8
  897. package/dist/assets/swiper-component-Cbtej5b-.js +0 -1
  898. package/dist/assets/tcl-DmU4tnXP.js +0 -1
  899. package/dist/assets/terminal-Ri8br8XX.js +0 -20
  900. package/dist/assets/textile-DSm0gG7z.js +0 -1
  901. package/dist/assets/timeline-definition-24CTP7MA-BjNxu6yh.js +0 -120
  902. package/dist/assets/toast-DXkezxWI.js +0 -1
  903. package/dist/assets/toml-DtceOx7T.js +0 -1
  904. package/dist/assets/tooltip-BQ9qHrrN.js +0 -61
  905. package/dist/assets/tooltip-CamoSiGF.js +0 -1
  906. package/dist/assets/tracing-BxMH9HGb.js +0 -1
  907. package/dist/assets/tracing-panel-EeL3md5x.js +0 -2
  908. package/dist/assets/treeView-Q6P3EWNA-DwYCsGZ1.js +0 -1
  909. package/dist/assets/treemap-WGGIJYW6-BH3CfKBr.js +0 -1
  910. package/dist/assets/troff-DXoHE4S9.js +0 -1
  911. package/dist/assets/ttcn-DYcxXVLi.js +0 -1
  912. package/dist/assets/ttcn-cfg-BfQlKCwV.js +0 -1
  913. package/dist/assets/turtle-CljXEmAu.js +0 -1
  914. package/dist/assets/use-restore-focus-D0UtBPD6.js +0 -5
  915. package/dist/assets/useCellActionButton-Di4NkDbT.js +0 -1
  916. package/dist/assets/useEventListener-CUPWI_1X.js +0 -1
  917. package/dist/assets/useInterval-DluQa5sq.js +0 -1
  918. package/dist/assets/useNumberFormatter-C4-_TnkF.js +0 -1
  919. package/dist/assets/useTheme-CnWB5G1X.js +0 -1
  920. package/dist/assets/vb-CHFvWjRU.js +0 -1
  921. package/dist/assets/vbscript-BEDR3krh.js +0 -1
  922. package/dist/assets/vega-component-DGTXJwmx.js +0 -1
  923. package/dist/assets/vega-embed-container-Din5FYpB.js +0 -1
  924. package/dist/assets/velocity-BoKDxc_x.js +0 -1
  925. package/dist/assets/vennDiagram-4TSXK5OY-BR66J2hx.js +0 -34
  926. package/dist/assets/verilog-48D_RyTw.js +0 -1
  927. package/dist/assets/vhdl-B_DNZIiR.js +0 -1
  928. package/dist/assets/wardley-WFR3VGLG-Cr2mp5U6.js +0 -1
  929. package/dist/assets/wardleyDiagram-VM6X3IG4-Kg0-lASD.js +0 -78
  930. package/dist/assets/webidl-DXE3DXqw.js +0 -1
  931. package/dist/assets/worker-ByzyDs4N.js +0 -153
  932. package/dist/assets/write-secret-modal-wFgr-1dA.js +0 -2
  933. package/dist/assets/xquery-BriQFVWe.js +0 -1
  934. package/dist/assets/xychartDiagram-S5SC5T6Z-BSXFWSRW.js +0 -7
  935. package/dist/assets/yacas-Cyn2f2Yi.js +0 -1
  936. package/dist/assets/youtube-Ck_NlGi9.js +0 -1
  937. package/dist/assets/z80-BG8AOCL_.js +0 -1
  938. package/src/components/editor/chrome/panels/__tests__/sandbox-details.test.tsx +0 -358
  939. package/src/components/editor/chrome/panels/sandbox-details-state.ts +0 -38
  940. package/src/components/editor/chrome/panels/sandbox-panel.tsx +0 -230
  941. package/src/components/editor/chrome/panels/sandbox-toggle.tsx +0 -52
  942. package/src/stories/sandbox.stories.tsx +0 -488
  943. /package/dist/assets/{context-BFOBKCJB.js → I18nProvider-BFOBKCJB.js} +0 -0
  944. /package/dist/assets/{useInterval-CV_Lf9-w.css → Inputs-CV_Lf9-w.css} +0 -0
@@ -31,7 +31,7 @@ import { layoutStateAtom } from "../layout/state";
31
31
  import { kioskModeAtom } from "../mode";
32
32
  import { connectionAtom } from "../network/connection";
33
33
  import { useRequestClient } from "../network/requests";
34
- import { WebSocketState } from "../websocket/types";
34
+ import { ConnectionState } from "../websocket/types";
35
35
  import { filenameAtom } from "./file-state";
36
36
  import { useFilename, useUpdateFilename } from "./filename";
37
37
  import { lastSavedNotebookAtom, needsSaveAtom } from "./state";
@@ -55,7 +55,7 @@ export function enqueueNotebookSave<T>(save: () => Promise<T>): Promise<T> {
55
55
  export const SaveComponent = ({ kioskMode }: SaveNotebookProps) => {
56
56
  const filename = useFilename();
57
57
  const needsSave = useAtomValue(needsSaveAtom);
58
- const closed = useAtomValue(connectionAtom).state === WebSocketState.CLOSED;
58
+ const closed = useAtomValue(connectionAtom).state === ConnectionState.CLOSED;
59
59
  const { saveOrNameNotebook, saveIfNotebookIsPersistent } = useSaveNotebook();
60
60
  useAutoSaveNotebook({ onSave: saveIfNotebookIsPersistent, kioskMode });
61
61
 
@@ -120,7 +120,7 @@ export function useSaveNotebook() {
120
120
  }
121
121
 
122
122
  // Don't save if we are not connected to a kernel
123
- if (connection.state !== WebSocketState.OPEN) {
123
+ if (connection.state !== ConnectionState.OPEN) {
124
124
  openAlert("Failed to save notebook: not connected to a kernel.");
125
125
  return;
126
126
  }
@@ -168,7 +168,7 @@ export function useSaveNotebook() {
168
168
  const connection = store.get(connectionAtom);
169
169
  if (
170
170
  isNamedPersistentFile(filename) &&
171
- connection.state === WebSocketState.OPEN
171
+ connection.state === ConnectionState.OPEN
172
172
  ) {
173
173
  saveNotebook(filename, userInitiated);
174
174
  }
@@ -191,7 +191,7 @@ export function useSaveNotebook() {
191
191
  // Filename does not exist and we are connected to a kernel
192
192
  if (
193
193
  !isNamedPersistentFile(filename) &&
194
- connection.state !== WebSocketState.CLOSED
194
+ connection.state !== ConnectionState.CLOSED
195
195
  ) {
196
196
  openModal(<SaveDialog onClose={closeModal} onSave={handleSaveDialog} />);
197
197
  }
@@ -2,7 +2,7 @@
2
2
  import { useEffect, useRef } from "react";
3
3
  import type { UserConfig } from "../config/config-schema";
4
4
  import type { CellConfig } from "../network/types";
5
- import { type ConnectionStatus, WebSocketState } from "../websocket/types";
5
+ import { type ConnectionStatus, ConnectionState } from "../websocket/types";
6
6
 
7
7
  export function useAutoSave(opts: {
8
8
  codes: string[];
@@ -43,7 +43,7 @@ export function useAutoSave(opts: {
43
43
  clearTimeout(autosaveTimeoutId.current);
44
44
  }
45
45
 
46
- if (needsSave && connStatus.state === WebSocketState.OPEN) {
46
+ if (needsSave && connStatus.state === ConnectionState.OPEN) {
47
47
  autosaveTimeoutId.current = setTimeout(onSave, config.autosave_delay);
48
48
  }
49
49
  }
@@ -3,7 +3,7 @@
3
3
  import { loadPyodide } from "pyodide";
4
4
  import type { PyodideInterface } from "pyodide";
5
5
  import { beforeEach, describe, expect, it, vi } from "vitest";
6
- import { DefaultWasmController } from "../worker/bootstrap";
6
+ import { DefaultWasmController, requirementName } from "../worker/bootstrap";
7
7
 
8
8
  vi.mock("pyodide", () => ({ loadPyodide: vi.fn() }));
9
9
  vi.mock("../worker/getMarimoWheel", () => ({
@@ -61,3 +61,35 @@ describe("WASM runtime sources", () => {
61
61
  expect(controller.requirePyodide).toBe(pyodide);
62
62
  });
63
63
  });
64
+
65
+ describe("requirementName", () => {
66
+ it("returns the distribution name for a bare requirement", () => {
67
+ expect(requirementName("pandas")).toBe("pandas");
68
+ });
69
+
70
+ it.each([
71
+ ["pandas==2.1.0", "pandas"],
72
+ ["pandas>=2", "pandas"],
73
+ ["pandas<=2", "pandas"],
74
+ ["pandas~=2.1", "pandas"],
75
+ ["pandas!=2.0", "pandas"],
76
+ ["nltools===0.6.0.dev2", "nltools"],
77
+ ])("cuts the specifier off %s", (requirement, expected) => {
78
+ expect(requirementName(requirement)).toBe(expected);
79
+ });
80
+
81
+ it("cuts extras and markers", () => {
82
+ expect(requirementName("rich[jupyter]>=13")).toBe("rich");
83
+ expect(requirementName('cowsay==6.1; sys_platform == "emscripten"')).toBe(
84
+ "cowsay",
85
+ );
86
+ });
87
+
88
+ it("cuts a URL requirement at the name", () => {
89
+ expect(requirementName("pkg @ https://example.com/pkg.whl")).toBe("pkg");
90
+ });
91
+
92
+ it("tolerates surrounding whitespace", () => {
93
+ expect(requirementName(" pandas >= 2 ")).toBe("pandas");
94
+ });
95
+ });
@@ -30,6 +30,17 @@ type SessionResources = [
30
30
  // 3.b Install from micropip
31
31
  // 4. Initialize the notebook
32
32
 
33
+ /**
34
+ * The distribution name of a PEP 508 requirement: "pandas>=2" -> "pandas".
35
+ *
36
+ * Extras, markers and URL forms are all cut at their first delimiter, which is
37
+ * enough for the "already installed" lookups this is used for.
38
+ */
39
+ export function requirementName(requirement: string): string {
40
+ // Trim first: a leading space would otherwise split into an empty name.
41
+ return requirement.trim().split(/[[<>=!~;@\s]/)[0];
42
+ }
43
+
33
44
  export class DefaultWasmController implements WasmController {
34
45
  protected pyodide: PyodideInterface | null = null;
35
46
  private packageLoadQueue = Promise.resolve();
@@ -314,18 +325,26 @@ export class DefaultWasmController implements WasmController {
314
325
  });
315
326
  loadSpan.end();
316
327
 
317
- // Load from micropip
328
+ // Load from micropip.
329
+ //
330
+ // `imports` are PEP 508 requirements and may carry a version specifier
331
+ // ("pandas>=2", "nltools==0.6.0.dev2"). micropip wants them whole, but the
332
+ // "do we already have this?" checks below are keyed by name, so compare on
333
+ // the name and install the requirement.
318
334
  loadSpan = t.startSpan("micropip.install");
319
335
  const missingPackages = imports.filter(
320
- (pkg) => !pyodide.loadedPackages[pkg],
336
+ (pkg) => !pyodide.loadedPackages[requirementName(pkg)],
321
337
  );
322
338
  if (missingPackages.length > 0) {
339
+ const byName = missingPackages.map(
340
+ (pkg) => [requirementName(pkg), pkg] as const,
341
+ );
323
342
  await pyodide
324
343
  .runPythonAsync(`
325
344
  import micropip
326
345
  import sys
327
346
  # Filter out builtins
328
- missing = [p for p in ${JSON.stringify(missingPackages)} if p not in sys.modules]
347
+ missing = [req for name, req in ${JSON.stringify(byName)} if name not in sys.modules]
329
348
  if len(missing) > 0:
330
349
  print("Loading from micropip:", missing)
331
350
  await micropip.install(missing)
@@ -52,7 +52,7 @@ import { useRuntimeManager } from "@/core/runtime/config";
52
52
  import { initialRunCompletedAtom } from "../../kernel/state";
53
53
  import { connectionAtom, startupProgressAtom } from "../../network/connection";
54
54
  import type { SessionId } from "../../kernel/session";
55
- import { WebSocketClosedReason, WebSocketState } from "../types";
55
+ import { WebSocketClosedReason, ConnectionState } from "../types";
56
56
  import type { IConnectionTransport } from "../transports/transport";
57
57
  import { useMarimoKernelConnection } from "../useMarimoKernelConnection";
58
58
  import { useConnectionTransport } from "../useWebSocket";
@@ -118,7 +118,7 @@ describe("useMarimoKernelConnection.reconnect()", () => {
118
118
  isHealthy = vi.fn<() => Promise<boolean>>().mockResolvedValue(true);
119
119
  store = createStore();
120
120
  store.set(connectionAtom, {
121
- state: WebSocketState.CLOSED,
121
+ state: ConnectionState.CLOSED,
122
122
  code: WebSocketClosedReason.KERNEL_DISCONNECTED,
123
123
  reason: "kernel not found",
124
124
  });
@@ -163,7 +163,7 @@ describe("useMarimoKernelConnection.reconnect()", () => {
163
163
  expect(isHealthy).toHaveBeenCalledOnce();
164
164
  expect(transport.reconnect).toHaveBeenCalledOnce();
165
165
  expect(store.get(connectionAtom)).toEqual({
166
- state: WebSocketState.CONNECTING,
166
+ state: ConnectionState.CONNECTING,
167
167
  });
168
168
  });
169
169
 
@@ -176,7 +176,7 @@ describe("useMarimoKernelConnection.reconnect()", () => {
176
176
  expect(isHealthy).toHaveBeenCalledOnce();
177
177
  expect(transport.reconnect).not.toHaveBeenCalled();
178
178
  expect(store.get(connectionAtom)).toEqual({
179
- state: WebSocketState.CLOSED,
179
+ state: ConnectionState.CLOSED,
180
180
  code: WebSocketClosedReason.KERNEL_DISCONNECTED,
181
181
  reason: "kernel not found",
182
182
  });
@@ -215,7 +215,7 @@ it.each(["kernel-ready", "reconnected"])(
215
215
  "waits for %s before marking the session connected",
216
216
  async (op) => {
217
217
  const store = createStore();
218
- store.set(connectionAtom, { state: WebSocketState.CONNECTING });
218
+ store.set(connectionAtom, { state: ConnectionState.CONNECTING });
219
219
  vi.mocked(useConnectionTransport).mockClear();
220
220
  vi.mocked(useConnectionTransport).mockReturnValue(
221
221
  makeTransport(WebSocket.OPEN),
@@ -229,7 +229,7 @@ it.each(["kernel-ready", "reconnected"])(
229
229
  await act(async () => {
230
230
  await options.onOpen(new Event("open"));
231
231
  });
232
- expect(store.get(connectionAtom).state).toBe(WebSocketState.CONNECTING);
232
+ expect(store.get(connectionAtom).state).toBe(ConnectionState.CONNECTING);
233
233
 
234
234
  act(() => {
235
235
  options.onMessage(
@@ -257,7 +257,7 @@ it.each(["kernel-ready", "reconnected"])(
257
257
  }),
258
258
  );
259
259
  });
260
- expect(store.get(connectionAtom).state).toBe(WebSocketState.OPEN);
260
+ expect(store.get(connectionAtom).state).toBe(ConnectionState.OPEN);
261
261
  },
262
262
  );
263
263
 
@@ -267,7 +267,7 @@ describe("connection notice", () => {
267
267
 
268
268
  function renderNotice() {
269
269
  const store = createStore();
270
- store.set(connectionAtom, { state: WebSocketState.CONNECTING });
270
+ store.set(connectionAtom, { state: ConnectionState.CONNECTING });
271
271
  const transport = makeTransport(WebSocket.OPEN);
272
272
  vi.mocked(useConnectionTransport).mockReturnValue(transport);
273
273
  vi.mocked(useRuntimeManager).mockReturnValue(
@@ -322,14 +322,6 @@ describe("connection notice", () => {
322
322
  );
323
323
  act(() => vi.advanceTimersByTime(35_000));
324
324
  expect(screen.getByText("Elapsed 35s")).toBeInTheDocument();
325
- act(() =>
326
- store.set(
327
- notebookAtom,
328
- MockNotebook.notebookState({
329
- cellData: { [cellId("test")]: { code: "answer = 42" } },
330
- }),
331
- ),
332
- );
333
325
  send({
334
326
  op: "startup-progress",
335
327
  phase: "starting-kernel",
@@ -338,6 +330,18 @@ describe("connection notice", () => {
338
330
  });
339
331
  expect(screen.getByRole("status")).toHaveTextContent("Starting kernel");
340
332
  expect(screen.getByText("Elapsed 35s")).toBeInTheDocument();
333
+ act(() =>
334
+ store.set(
335
+ notebookAtom,
336
+ MockNotebook.notebookState({
337
+ cellData: { [cellId("test")]: { code: "answer = 42" } },
338
+ }),
339
+ ),
340
+ );
341
+ expect(
342
+ screen.getByRole("button", { name: "Starting kernel… Open Packages" }),
343
+ ).toBeVisible();
344
+ expect(screen.queryByText(/Elapsed/)).not.toBeInTheDocument();
341
345
  send({ op: "reconnected" });
342
346
  expect(
343
347
  screen.queryByRole("region", { name: "Notebook startup" }),
@@ -345,7 +349,7 @@ describe("connection notice", () => {
345
349
  act(() => options.onClose(new CloseEvent("close")));
346
350
  act(() => vi.advanceTimersByTime(500));
347
351
  expect(store.get(connectionAtom)).toEqual({
348
- state: WebSocketState.CONNECTING,
352
+ state: ConnectionState.CONNECTING,
349
353
  phase: "reconnecting",
350
354
  });
351
355
  expect(
@@ -388,7 +392,7 @@ describe("connection notice", () => {
388
392
  logs: "Kernel startup output\n",
389
393
  log_mode: "replace",
390
394
  });
391
- expect(store.get(connectionAtom)).toEqual({ state: WebSocketState.OPEN });
395
+ expect(store.get(connectionAtom)).toEqual({ state: ConnectionState.OPEN });
392
396
  expect(store.get(startupProgressAtom)).toEqual({
393
397
  phase: "starting-kernel",
394
398
  logs: "Kernel startup output\n",
@@ -429,12 +433,9 @@ describe("connection notice", () => {
429
433
  ).not.toBeInTheDocument();
430
434
  });
431
435
 
432
- it.each([
433
- ["preparing-environment", "Sandbox setup failed"],
434
- ["starting-kernel", "Kernel failed to start"],
435
- ] as const)(
436
+ it.each(["preparing-environment", "starting-kernel"] as const)(
436
437
  "keeps a %s failure available until the user retries",
437
- async (phase, title) => {
438
+ async (phase) => {
438
439
  const { store, transport, options, send } = renderNotice();
439
440
  send({ op: "startup-progress", phase, logs: "", log_mode: "replace" });
440
441
  const error = "A full diagnostic\nwith <stderr> details";
@@ -445,9 +446,13 @@ describe("connection notice", () => {
445
446
  new CloseEvent("close", { reason: "MARIMO_KERNEL_STARTUP_ERROR" }),
446
447
  ),
447
448
  );
448
- expect(screen.getByRole("status")).toHaveTextContent(title);
449
+ expect(screen.getByRole("status")).toHaveTextContent(
450
+ "Kernel failed to start",
451
+ );
449
452
  act(() => vi.advanceTimersByTime(30_000));
450
- expect(screen.getByRole("status")).toHaveTextContent(title);
453
+ expect(screen.getByRole("status")).toHaveTextContent(
454
+ "Kernel failed to start",
455
+ );
451
456
  expect(screen.getByLabelText("Error details")).toHaveTextContent(error, {
452
457
  normalizeWhitespace: false,
453
458
  });
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { afterEach, describe, expect, it, vi } from "vitest";
4
4
  import { Logger } from "@/utils/Logger";
5
- import { WebSocketClosedReason, WebSocketState } from "../types";
5
+ import { WebSocketClosedReason, ConnectionState } from "../types";
6
6
  import { classifyCloseEvent } from "../useMarimoKernelConnection";
7
7
 
8
8
  function classify(reason: string | undefined) {
@@ -14,7 +14,7 @@ describe("classifyCloseEvent", () => {
14
14
  it("retries on empty/undefined reason", () => {
15
15
  const decision = classify(undefined);
16
16
  expect(decision.kind).toBe("retry");
17
- expect(decision.status).toEqual({ state: WebSocketState.CONNECTING });
17
+ expect(decision.status).toEqual({ state: ConnectionState.CONNECTING });
18
18
  });
19
19
 
20
20
  it("treats unknown reason strings as transient and logs a warning", () => {
@@ -44,7 +44,7 @@ describe("classifyCloseEvent", () => {
44
44
  const decision = classify(reason);
45
45
  expect(decision.kind).toBe("terminal");
46
46
  expect(decision.status).toMatchObject({
47
- state: WebSocketState.CLOSED,
47
+ state: ConnectionState.CLOSED,
48
48
  code: WebSocketClosedReason.KERNEL_DISCONNECTED,
49
49
  });
50
50
  expect(decision).toMatchObject({
@@ -57,7 +57,7 @@ describe("classifyCloseEvent", () => {
57
57
  const decision = classify("MARIMO_KERNEL_STARTUP_ERROR");
58
58
  expect(decision.kind).toBe("terminal");
59
59
  expect(decision.status).toMatchObject({
60
- state: WebSocketState.CLOSED,
60
+ state: ConnectionState.CLOSED,
61
61
  code: WebSocketClosedReason.KERNEL_STARTUP_ERROR,
62
62
  });
63
63
  expect(decision).toMatchObject({
@@ -72,7 +72,7 @@ describe("classifyCloseEvent", () => {
72
72
  const decision = classify("MARIMO_TRANSPORT_EXHAUSTED");
73
73
  expect(decision.kind).toBe("gave-up");
74
74
  expect(decision.status).toEqual({
75
- state: WebSocketState.CLOSED,
75
+ state: ConnectionState.CLOSED,
76
76
  code: WebSocketClosedReason.KERNEL_DISCONNECTED,
77
77
  reason: "kernel not found",
78
78
  });
@@ -1,66 +1,66 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
- import { WebSocketState } from "./types";
2
+ import { ConnectionState } from "./types";
3
3
 
4
4
  /**
5
5
  * Check if the app is in a closed/disconnected state
6
6
  */
7
- export function isAppClosed(state: WebSocketState): boolean {
8
- return state === WebSocketState.CLOSED;
7
+ export function isAppClosed(state: ConnectionState): boolean {
8
+ return state === ConnectionState.CLOSED;
9
9
  }
10
10
 
11
11
  /**
12
12
  * Check if the app is in a connecting state
13
13
  */
14
- export function isAppConnecting(state: WebSocketState): boolean {
15
- return state === WebSocketState.CONNECTING;
14
+ export function isAppConnecting(state: ConnectionState): boolean {
15
+ return state === ConnectionState.CONNECTING;
16
16
  }
17
17
 
18
18
  /**
19
19
  * Check if the app is in an open/connected state
20
20
  */
21
- export function isAppConnected(state: WebSocketState): boolean {
22
- return state === WebSocketState.OPEN;
21
+ export function isAppConnected(state: ConnectionState): boolean {
22
+ return state === ConnectionState.OPEN;
23
23
  }
24
24
 
25
25
  /**
26
26
  * Check if the app is in a closing state
27
27
  */
28
- export function isAppClosing(state: WebSocketState): boolean {
29
- return state === WebSocketState.CLOSING;
28
+ export function isAppClosing(state: ConnectionState): boolean {
29
+ return state === ConnectionState.CLOSING;
30
30
  }
31
31
 
32
32
  /**
33
33
  * Check if the app is in a not started state
34
34
  */
35
- export function isAppNotStarted(state: WebSocketState): boolean {
36
- return state === WebSocketState.NOT_STARTED;
35
+ export function isAppNotStarted(state: ConnectionState): boolean {
36
+ return state === ConnectionState.NOT_STARTED;
37
37
  }
38
38
 
39
39
  /**
40
40
  * Check if the app is in a state where user interactions should be disabled
41
41
  */
42
- export function isAppInteractionDisabled(state: WebSocketState): boolean {
42
+ export function isAppInteractionDisabled(state: ConnectionState): boolean {
43
43
  return (
44
- state === WebSocketState.CLOSED ||
45
- state === WebSocketState.CLOSING ||
46
- state === WebSocketState.CONNECTING
44
+ state === ConnectionState.CLOSED ||
45
+ state === ConnectionState.CLOSING ||
46
+ state === ConnectionState.CONNECTING
47
47
  );
48
48
  }
49
49
 
50
50
  /**
51
51
  * Get a human-readable tooltip message for the connection state
52
52
  */
53
- export function getConnectionTooltip(state: WebSocketState): string {
53
+ export function getConnectionTooltip(state: ConnectionState): string {
54
54
  switch (state) {
55
- case WebSocketState.CLOSED:
55
+ case ConnectionState.CLOSED:
56
56
  return "App disconnected";
57
- case WebSocketState.CONNECTING:
57
+ case ConnectionState.CONNECTING:
58
58
  return "Connecting to a runtime ...";
59
- case WebSocketState.CLOSING:
59
+ case ConnectionState.CLOSING:
60
60
  return "App disconnecting...";
61
- case WebSocketState.OPEN:
61
+ case ConnectionState.OPEN:
62
62
  return "";
63
- case WebSocketState.NOT_STARTED:
63
+ case ConnectionState.NOT_STARTED:
64
64
  return "Click to connect to a runtime";
65
65
  default:
66
66
  return "";
@@ -6,8 +6,7 @@ export type ConnectionPhase =
6
6
  | NotificationMessageData<"startup-progress">["phase"]
7
7
  | "reconnecting";
8
8
 
9
- // TODO: rename to ConnectionState
10
- export const WebSocketState = {
9
+ export const ConnectionState = {
11
10
  NOT_STARTED: "NOT_STARTED",
12
11
  CONNECTING: "CONNECTING",
13
12
  OPEN: "OPEN",
@@ -15,8 +14,8 @@ export const WebSocketState = {
15
14
  CLOSED: "CLOSED",
16
15
  } as const;
17
16
 
18
- export type WebSocketState =
19
- (typeof WebSocketState)[keyof typeof WebSocketState];
17
+ export type ConnectionState =
18
+ (typeof ConnectionState)[keyof typeof ConnectionState];
20
19
 
21
20
  export const WebSocketClosedReason = {
22
21
  KERNEL_DISCONNECTED: "KERNEL_DISCONNECTED",
@@ -28,7 +27,7 @@ export type WebSocketClosedReason =
28
27
 
29
28
  export type ConnectionStatus =
30
29
  | {
31
- state: typeof WebSocketState.CLOSED;
30
+ state: typeof ConnectionState.CLOSED;
32
31
  code: WebSocketClosedReason;
33
32
  /**
34
33
  * Human-readable reason for closing the connection.
@@ -37,12 +36,12 @@ export type ConnectionStatus =
37
36
  phase?: ConnectionPhase;
38
37
  }
39
38
  | {
40
- state: typeof WebSocketState.CONNECTING;
39
+ state: typeof ConnectionState.CONNECTING;
41
40
  phase?: ConnectionPhase;
42
41
  }
43
42
  | {
44
43
  state:
45
- | typeof WebSocketState.OPEN
46
- | typeof WebSocketState.CLOSING
47
- | typeof WebSocketState.NOT_STARTED;
44
+ | typeof ConnectionState.OPEN
45
+ | typeof ConnectionState.CLOSING
46
+ | typeof ConnectionState.NOT_STARTED;
48
47
  };
@@ -60,7 +60,11 @@ import {
60
60
  handleRemoveUIElements,
61
61
  } from "../kernel/handlers";
62
62
  import { queryParamHandlers } from "../kernel/queryParamHandlers";
63
- import type { SessionId } from "../kernel/session";
63
+ import {
64
+ type SessionId,
65
+ type StableSessionId,
66
+ stableSessionIdAtom,
67
+ } from "../kernel/session";
64
68
  import { initialRunCompletedAtom, kernelStateAtom } from "../kernel/state";
65
69
  import { type LayoutState, useLayoutActions } from "../layout/state";
66
70
  import { kioskModeAtom } from "../mode";
@@ -80,7 +84,7 @@ import { isWasm } from "../wasm/utils";
80
84
  import {
81
85
  type ConnectionStatus,
82
86
  WebSocketClosedReason,
83
- WebSocketState,
87
+ ConnectionState,
84
88
  } from "./types";
85
89
 
86
90
  const SUPPORTS_LAZY_KERNELS = true;
@@ -112,7 +116,7 @@ export function classifyCloseEvent(event: { reason?: string }): CloseDecision {
112
116
  return {
113
117
  kind: "gave-up",
114
118
  status: {
115
- state: WebSocketState.CLOSED,
119
+ state: ConnectionState.CLOSED,
116
120
  code: WebSocketClosedReason.KERNEL_DISCONNECTED,
117
121
  reason: "kernel not found",
118
122
  },
@@ -124,7 +128,7 @@ export function classifyCloseEvent(event: { reason?: string }): CloseDecision {
124
128
  return {
125
129
  kind: "terminal",
126
130
  status: {
127
- state: WebSocketState.CLOSED,
131
+ state: ConnectionState.CLOSED,
128
132
  code: WebSocketClosedReason.KERNEL_DISCONNECTED,
129
133
  reason: "kernel not found",
130
134
  },
@@ -134,7 +138,7 @@ export function classifyCloseEvent(event: { reason?: string }): CloseDecision {
134
138
  return {
135
139
  kind: "terminal",
136
140
  status: {
137
- state: WebSocketState.CLOSED,
141
+ state: ConnectionState.CLOSED,
138
142
  code: WebSocketClosedReason.KERNEL_DISCONNECTED,
139
143
  reason: "not authorized",
140
144
  },
@@ -144,7 +148,7 @@ export function classifyCloseEvent(event: { reason?: string }): CloseDecision {
144
148
  return {
145
149
  kind: "terminal",
146
150
  status: {
147
- state: WebSocketState.CLOSED,
151
+ state: ConnectionState.CLOSED,
148
152
  code: WebSocketClosedReason.KERNEL_DISCONNECTED,
149
153
  reason: "kiosk mode is not available for this session",
150
154
  },
@@ -154,7 +158,7 @@ export function classifyCloseEvent(event: { reason?: string }): CloseDecision {
154
158
  return {
155
159
  kind: "terminal",
156
160
  status: {
157
- state: WebSocketState.CLOSED,
161
+ state: ConnectionState.CLOSED,
158
162
  code: WebSocketClosedReason.KERNEL_STARTUP_ERROR,
159
163
  reason: "Failed to start kernel sandbox",
160
164
  },
@@ -171,7 +175,7 @@ export function classifyCloseEvent(event: { reason?: string }): CloseDecision {
171
175
 
172
176
  return {
173
177
  kind: "retry",
174
- status: { state: WebSocketState.CONNECTING },
178
+ status: { state: ConnectionState.CONNECTING },
175
179
  };
176
180
  }
177
181
 
@@ -231,6 +235,7 @@ export function useMarimoKernelConnection(opts: {
231
235
  addStartupLog,
232
236
  } = useAlertActions();
233
237
  const setKioskMode = useSetAtom(kioskModeAtom);
238
+ const setStableSessionId = useSetAtom(stableSessionIdAtom);
234
239
  const setCapabilities = useSetAtom(capabilitiesAtom);
235
240
  const runtimeManager = useRuntimeManager();
236
241
  const transportType = useAtomValue(connectionTransportTypeAtom);
@@ -251,17 +256,17 @@ export function useMarimoKernelConnection(opts: {
251
256
  const { phase } = msg.data;
252
257
  updateStartupProgress(msg.data);
253
258
  setConnection((previous) =>
254
- previous.state === WebSocketState.OPEN ||
255
- (previous.state === WebSocketState.CONNECTING &&
259
+ previous.state === ConnectionState.OPEN ||
260
+ (previous.state === ConnectionState.CONNECTING &&
256
261
  previous.phase === phase)
257
262
  ? previous
258
- : { state: WebSocketState.CONNECTING, phase },
263
+ : { state: ConnectionState.CONNECTING, phase },
259
264
  );
260
265
  return;
261
266
  }
262
267
  case "kernel-ready": {
263
268
  setKernelStartupError(null);
264
- setConnection({ state: WebSocketState.OPEN });
269
+ setConnection({ state: ConnectionState.OPEN });
265
270
  setInitialRunCompleted(
266
271
  Boolean(msg.data.resumed || msg.data.auto_instantiated),
267
272
  );
@@ -284,6 +289,10 @@ export function useMarimoKernelConnection(opts: {
284
289
  invalidateDataSourceDiscovery();
285
290
  }
286
291
  setKioskMode(msg.data.kiosk);
292
+ setStableSessionId(
293
+ (msg.data.stable_session_id as StableSessionId | null | undefined) ??
294
+ null,
295
+ );
287
296
  // A freshly started kernel has no breakpoints of its own; re-push
288
297
  // the client's set so they still apply, and clear the stale
289
298
  // highlighted line from the previous kernel instance.
@@ -295,6 +304,8 @@ export function useMarimoKernelConnection(opts: {
295
304
  case "completed-run":
296
305
  setInitialRunCompleted(true);
297
306
  return;
307
+ case "execution":
308
+ return;
298
309
  case "interrupted":
299
310
  return;
300
311
 
@@ -470,7 +481,7 @@ export function useMarimoKernelConnection(opts: {
470
481
 
471
482
  case "reconnected":
472
483
  setKernelStartupError(null);
473
- setConnection({ state: WebSocketState.OPEN });
484
+ setConnection({ state: ConnectionState.OPEN });
474
485
  return;
475
486
 
476
487
  case "focus-cell":
@@ -515,12 +526,12 @@ export function useMarimoKernelConnection(opts: {
515
526
  }
516
527
  shouldTryReconnecting.current = true;
517
528
  setKernelStartupError(null);
518
- setConnection({ state: WebSocketState.CONNECTING });
529
+ setConnection({ state: ConnectionState.CONNECTING });
519
530
  const healthy = await runtimeManager.reconcileFromHealth();
520
531
  if (!healthy) {
521
532
  shouldTryReconnecting.current = false;
522
533
  setConnection({
523
- state: WebSocketState.CLOSED,
534
+ state: ConnectionState.CLOSED,
524
535
  code: WebSocketClosedReason.KERNEL_DISCONNECTED,
525
536
  reason: "kernel not found",
526
537
  });
@@ -596,17 +607,17 @@ export function useMarimoKernelConnection(opts: {
596
607
  setConnection((previous) => {
597
608
  const status = decision.status;
598
609
  if (
599
- status.state === WebSocketState.CLOSED &&
610
+ status.state === ConnectionState.CLOSED &&
600
611
  status.code === WebSocketClosedReason.KERNEL_STARTUP_ERROR &&
601
- (previous.state === WebSocketState.CONNECTING ||
602
- previous.state === WebSocketState.CLOSED)
612
+ (previous.state === ConnectionState.CONNECTING ||
613
+ previous.state === ConnectionState.CLOSED)
603
614
  ) {
604
615
  return { ...status, phase: previous.phase };
605
616
  }
606
617
  if (
607
- status.state === WebSocketState.CONNECTING &&
608
- (previous.state === WebSocketState.OPEN ||
609
- (previous.state === WebSocketState.CONNECTING &&
618
+ status.state === ConnectionState.CONNECTING &&
619
+ (previous.state === ConnectionState.OPEN ||
620
+ (previous.state === ConnectionState.CONNECTING &&
610
621
  previous.phase === "reconnecting"))
611
622
  ) {
612
623
  return { ...status, phase: "reconnecting" };
@@ -631,7 +642,7 @@ export function useMarimoKernelConnection(opts: {
631
642
  onError: (e) => {
632
643
  Logger.warn("WebSocket error", e);
633
644
  setConnection({
634
- state: WebSocketState.CLOSED,
645
+ state: ConnectionState.CLOSED,
635
646
  code: WebSocketClosedReason.KERNEL_DISCONNECTED,
636
647
  reason: "kernel not found",
637
648
  });