@marimo-team/frontend 0.23.15-dev6 → 0.23.15-dev63

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 (1102) hide show
  1. package/dist/assets/CellStatus-BalYv0pK.js +1 -0
  2. package/dist/assets/ConnectedDataExplorerComponent-DI7mV-Gw.js +1 -0
  3. package/dist/assets/DeferredRequestRegistry-C8EV1PoE.js +1 -0
  4. package/dist/assets/ErrorBoundary-C7_5jjWi.js +1 -0
  5. package/dist/assets/ImageComparisonComponent-Cz3xVDLH.js +1 -0
  6. package/dist/assets/ImperativeModal-BIavOiUv.js +1 -0
  7. package/dist/assets/Inputs-B8-VCb_j.js +1 -0
  8. package/dist/assets/JsonOutput-DnGSkLeP.js +53 -0
  9. package/dist/assets/LazyAnyLanguageCodeMirror-sVm_hz8A.js +2 -0
  10. package/dist/assets/MarimoErrorOutput-DO2k2fA5.js +11 -0
  11. package/dist/assets/Plot-X2G47XHf.js +3789 -0
  12. package/dist/assets/RSPContexts-CgC81f0I.js +1 -0
  13. package/dist/assets/RenderHTML-BCvU9dYz.js +1 -0
  14. package/dist/assets/RunButton-BKRupqr7.js +1 -0
  15. package/dist/assets/__vite-browser-external-BkrtI7wJ.js +1 -0
  16. package/dist/assets/__vite-browser-external-DeX3BBVP.js +1 -0
  17. package/dist/assets/add-cell-with-ai-CEZtaZCK.js +107 -0
  18. package/dist/assets/add-connection-dialog-CEp3SJR2.js +170 -0
  19. package/dist/assets/agent-panel-By4A-Cqr.js +287 -0
  20. package/dist/assets/ai-model-dropdown-DXgLphFa.js +5 -0
  21. package/dist/assets/alert-dialog-BXegNC0I.js +11 -0
  22. package/dist/assets/alert-jlwhGxSb.js +1 -0
  23. package/dist/assets/any-language-editor-DCpZRrpx.js +1 -0
  24. package/dist/assets/apl-DTwRFDps.js +1 -0
  25. package/dist/assets/app-config-button-NrM9ywXA.js +1 -0
  26. package/dist/assets/arc-CfUZAQDm.js +1 -0
  27. package/dist/assets/architecture-7HQA4BMR-Bvqj37EA.js +1 -0
  28. package/dist/assets/architectureDiagram-VXUJARFQ-sx_yisiZ.js +36 -0
  29. package/dist/assets/arrays-DbOq36rN.js +1 -0
  30. package/dist/assets/arrow-right-C1pQZGqv.js +1 -0
  31. package/dist/assets/asciiarmor-CiqkDK0s.js +1 -0
  32. package/dist/assets/asn1-RTvH5MEs.js +1 -0
  33. package/dist/assets/badge-B92a4ePY.js +1 -0
  34. package/dist/assets/ban-DOUu3Y9Q.js +1 -0
  35. package/dist/assets/blockDiagram-VD42YOAC-KexI-fgH.js +122 -0
  36. package/dist/assets/bot-message-square-DTHo_4sQ.js +1 -0
  37. package/dist/assets/brainfuck-szH_VGzd.js +1 -0
  38. package/dist/assets/button-eIihcbUw.js +1 -0
  39. package/dist/assets/c4Diagram-YG6GDRKO-d8NrlxRF.js +10 -0
  40. package/dist/assets/cache-panel-wllSTlbM.js +1 -0
  41. package/dist/assets/capabilities-B09j1Eor.js +1 -0
  42. package/dist/assets/card-VUBaYDpT.js +1 -0
  43. package/dist/assets/cell-editor-DdofA9oQ.js +27 -0
  44. package/dist/assets/cell-link-DqBkyAFe.js +1 -0
  45. package/dist/assets/cells-Cf7bHHq3.js +229 -0
  46. package/dist/assets/channel-D-k8o3T1.js +1 -0
  47. package/dist/assets/chart-no-axes-column-iDRxid4h.js +1 -0
  48. package/dist/assets/chat-display-BG08ltQ3.js +1 -0
  49. package/dist/assets/chat-panel-P2CzCtXJ.js +4 -0
  50. package/dist/assets/chat-ui-fAJZAoTD.js +4 -0
  51. package/dist/assets/check-rzLRd0j9.js +1 -0
  52. package/dist/assets/chevron-right-BS_NcSch.js +1 -0
  53. package/dist/assets/chunk-4BX2VUAB-fhh1HlXH.js +1 -0
  54. package/dist/assets/chunk-4F5CHEZ2-ClSh5rxG.js +1 -0
  55. package/dist/assets/chunk-55IACEB6-xhaY4LU6.js +1 -0
  56. package/dist/assets/chunk-5FQGJX7Z-Cp0LZT-a.js +113 -0
  57. package/dist/assets/chunk-ABZYJK2D-BtK4zInQ.js +80 -0
  58. package/dist/assets/chunk-ATLVNIR6-YZDenslF.js +1 -0
  59. package/dist/assets/chunk-B2363JML-cit0ouFv.js +1 -0
  60. package/dist/assets/chunk-B4BG7PRW-DYIZwDbt.js +165 -0
  61. package/dist/assets/chunk-CVBHYZKI-CIyHeK0Q.js +1 -0
  62. package/dist/assets/chunk-DI55MBZ5-TodwBGEN.js +220 -0
  63. package/dist/assets/chunk-EXTU4WIE-C76bF1UD.js +1 -0
  64. package/dist/assets/chunk-FMBD7UC4-Yq65IDPA.js +15 -0
  65. package/dist/assets/chunk-FRFDVMJY--Re1QfFE.js +1 -0
  66. package/dist/assets/chunk-HN2XXSSU-CcbN4n6W.js +1 -0
  67. package/dist/assets/chunk-JA3XYJ7Z-CPXEu7AX.js +70 -0
  68. package/dist/assets/chunk-JZLCHNYA-D8q1z6Py.js +54 -0
  69. package/dist/assets/chunk-MI3HLSF2-bmomnexd.js +32 -0
  70. package/dist/assets/chunk-N4CR4FBY-BhsjB2qn.js +2 -0
  71. package/dist/assets/chunk-PL6DKKU2-CAwRAr-p.js +1 -0
  72. package/dist/assets/chunk-QN33PNHL-ngvPqyQ0.js +1 -0
  73. package/dist/assets/chunk-QXUST7PY-C4c0Sjmn.js +7 -0
  74. package/dist/assets/chunk-QZHKN3VN-CkbwBDOS.js +1 -0
  75. package/dist/assets/chunk-S3R3BYOJ-Bt2NnquF.js +2 -0
  76. package/dist/assets/chunk-SJTYNZTY-G1spWesO.js +1 -0
  77. package/dist/assets/chunk-TCCFYFTB-BRcmzY4m.js +125 -0
  78. package/dist/assets/chunk-TQ3KTPDO-DBwra5xv.js +1 -0
  79. package/dist/assets/chunk-TZMSLE5B-Dysko1OC.js +1 -0
  80. package/dist/assets/chunk-UMXZTB3W-A5RvYDPE.js +1 -0
  81. package/dist/assets/circle-check-C32B6Qa1.js +1 -0
  82. package/dist/assets/circle-play-9HoTo51X.js +1 -0
  83. package/dist/assets/circle-plus-BluydVNx.js +1 -0
  84. package/dist/assets/classDiagram-2ON5EDUG-C-rIg7EQ.js +1 -0
  85. package/dist/assets/classDiagram-v2-WZHVMYZB-MBAsRLae.js +1 -0
  86. package/dist/assets/clear-button-DQtvx6eq.js +1 -0
  87. package/dist/assets/clike-DKPr2D1_.js +1 -0
  88. package/dist/assets/clipboard-paste-DQh4rXZQ.js +1 -0
  89. package/dist/assets/clojure-CyEbLmch.js +1 -0
  90. package/dist/assets/cmake-Dk8f7QuI.js +1 -0
  91. package/dist/assets/cn-DYvqRARy.js +1 -0
  92. package/dist/assets/cobol-BJJRqW1D.js +1 -0
  93. package/dist/assets/code-B2aKtXoe.js +1 -0
  94. package/dist/assets/code-block-37QAKDTI-DlENujeV.js +2 -0
  95. package/dist/assets/code-xml-aSiY8T7C.js +1 -0
  96. package/dist/assets/coffeescript-BDuWJ9WO.js +1 -0
  97. package/dist/assets/column-preview-BgZLUEOj.js +1 -0
  98. package/dist/assets/command-CAJLPEBq.js +1 -0
  99. package/dist/assets/command-palette-B_QgR-xg.js +1 -0
  100. package/dist/assets/common-CD6Mj8n6.js +1 -0
  101. package/dist/assets/commonlisp-CVHm2VSp.js +1 -0
  102. package/dist/assets/components-BH6gDVv6.js +1 -0
  103. package/dist/assets/config-BbOTTCYY.js +1 -0
  104. package/dist/assets/config-COUOIPEq.js +1 -0
  105. package/dist/assets/constants-CDyU_g2F.js +1 -0
  106. package/dist/assets/context-BFPaAUK_.js +1 -0
  107. package/dist/assets/copy-3iHFdt22.js +1 -0
  108. package/dist/assets/copy-BtTOqPTS.js +1 -0
  109. package/dist/assets/copy-icon-C2pG0ZNK.js +1 -0
  110. package/dist/assets/cose-bilkent-S5V4N54A-BlMw4-M9.js +1 -0
  111. package/dist/assets/createReducer-C7kZ8zEe.js +1 -0
  112. package/dist/assets/crystal-C2Fgr79A.js +1 -0
  113. package/dist/assets/css-DsUcFZz8.js +1 -0
  114. package/dist/assets/cypher-CUlCm6vR.js +1 -0
  115. package/dist/assets/d-4ANEHA6q.js +1 -0
  116. package/dist/assets/dagre-6UL2VRFP-kJ4x17JK.js +4 -0
  117. package/dist/assets/data-grid-overlay-editor-DbobQcVo.js +1 -0
  118. package/dist/assets/database-zap-CKO8g4BU.js +1 -0
  119. package/dist/assets/datasource-ySAiC9gr.js +3 -0
  120. package/dist/assets/dates-D-kIKDYA.js +1 -0
  121. package/dist/assets/dependency-graph-panel-BF23EwcD.js +5 -0
  122. package/dist/assets/diagram-PSM6KHXK-d-5aQNHk.js +24 -0
  123. package/dist/assets/diagram-QEK2KX5R-CO-PXq75.js +43 -0
  124. package/dist/assets/diagram-S2PKOQOG-Dv7pcvYC.js +24 -0
  125. package/dist/assets/dialog-D1DEsRZ2.js +1 -0
  126. package/dist/assets/diff-C-W-5V8L.js +1 -0
  127. package/dist/assets/dist-0QUuSoRx.js +1 -0
  128. package/dist/assets/dist-12S8I4CH.js +14 -0
  129. package/dist/assets/dist-3N7-WLqi.js +1 -0
  130. package/dist/assets/dist-56ul6-mm.js +1 -0
  131. package/dist/assets/dist-6c4zOh78.js +1 -0
  132. package/dist/assets/dist-98K4fusX.js +1 -0
  133. package/dist/assets/dist-B8g3pNYJ.js +1 -0
  134. package/dist/assets/dist-BCMBu0rO.js +2 -0
  135. package/dist/assets/dist-BJZAIIze.js +1 -0
  136. package/dist/assets/dist-BMOD2Pyh.js +1 -0
  137. package/dist/assets/dist-BaKJ0-Tb.js +1 -0
  138. package/dist/assets/dist-Bfm9U3vp.js +1 -0
  139. package/dist/assets/dist-BsphJPAV.js +1 -0
  140. package/dist/assets/dist-ByK00N0T.js +1 -0
  141. package/dist/assets/dist-ByVeMWkr.js +1 -0
  142. package/dist/assets/dist-C5kf6g-d.js +1 -0
  143. package/dist/assets/dist-CCAhuqF-.js +1 -0
  144. package/dist/assets/dist-CDUl-YL4.js +1 -0
  145. package/dist/assets/dist-CECF_J8y.js +1 -0
  146. package/dist/assets/dist-CM-lWxt3.js +1 -0
  147. package/dist/assets/dist-CPjTeT8p.js +3 -0
  148. package/dist/assets/dist-CRrIf3gB.js +1 -0
  149. package/dist/assets/dist-CpbbK4-I.js +1 -0
  150. package/dist/assets/dist-Csf5i4KY.js +1 -0
  151. package/dist/assets/dist-CvWC93qL.js +1 -0
  152. package/dist/assets/dist-D35OyUMQ.js +7 -0
  153. package/dist/assets/dist-D5ToCtv8.js +1 -0
  154. package/dist/assets/dist-D6Iobl3P.js +1 -0
  155. package/dist/assets/dist-DGhK0kPE.js +1 -0
  156. package/dist/assets/dist-DI1-Z60I.js +2 -0
  157. package/dist/assets/dist-DNGKAtWk.js +1 -0
  158. package/dist/assets/dist-DQNaXfK1.js +1 -0
  159. package/dist/assets/dist-DYEuVkEX.js +1 -0
  160. package/dist/assets/dist-DcwTQG1A.js +6 -0
  161. package/dist/assets/dist-DnjsPBRJ.js +1 -0
  162. package/dist/assets/dist-DokId-qM.js +1 -0
  163. package/dist/assets/dist-DrBqBDHF.js +1 -0
  164. package/dist/assets/dist-DrtRBAn8.js +3 -0
  165. package/dist/assets/dist-DsfPGbgk.js +1 -0
  166. package/dist/assets/dist-Du-wcJyR.js +7 -0
  167. package/dist/assets/dist-DzAAhYcW.js +1 -0
  168. package/dist/assets/dist-O5-NiN3f.js +1 -0
  169. package/dist/assets/dist-OgwOt8T2.js +1 -0
  170. package/dist/assets/dist-R1kU4nzJ.js +1 -0
  171. package/dist/assets/dist-SVDIDTM2.js +1 -0
  172. package/dist/assets/dist-aRc_dRed.js +13 -0
  173. package/dist/assets/dist-sPfKr-vH.js +1 -0
  174. package/dist/assets/dist-xSLg7wNV.js +1 -0
  175. package/dist/assets/dockerfile-C2PznFWk.js +1 -0
  176. package/dist/assets/documentation-panel-e9Fi9R7e.js +1 -0
  177. package/dist/assets/download-BomYt3nl.js +9 -0
  178. package/dist/assets/dropdown-menu-BFZLnWeO.js +1 -0
  179. package/dist/assets/dtd-D9h-tL8G.js +1 -0
  180. package/dist/assets/dylan-D3MC56xy.js +1 -0
  181. package/dist/assets/ecl-B6UC4tME.js +1 -0
  182. package/dist/assets/edit-page-Cj3IcXFr.js +9 -0
  183. package/dist/assets/eiffel-CjvEov4k.js +1 -0
  184. package/dist/assets/ellipsis-C_B8Ux9M.js +1 -0
  185. package/dist/assets/elm-DvSbvRWe.js +1 -0
  186. package/dist/assets/empty-state-CqJvEFRk.js +1 -0
  187. package/dist/assets/en-US-CjNeNXDB.js +1 -0
  188. package/dist/assets/erDiagram-Q2GNP2WA-BQ8HfnRu.js +60 -0
  189. package/dist/assets/erlang-DJYaGXyq.js +1 -0
  190. package/dist/assets/error-banner-B6eIlxzg.js +1 -0
  191. package/dist/assets/error-entries-Birw-8VX.js +8 -0
  192. package/dist/assets/error-panel-DdsUL6b7.js +1 -0
  193. package/dist/assets/es-1D83cgiu.js +5 -0
  194. package/dist/assets/esm-BL7jQmzn.js +1 -0
  195. package/dist/assets/esm-Cmv0Nuxi.js +1 -0
  196. package/dist/assets/external-link-BOlXZUla.js +1 -0
  197. package/dist/assets/eye-off-BOZA7gbn.js +1 -0
  198. package/dist/assets/factor-CUQCrkTo.js +1 -0
  199. package/dist/assets/factor-DMrXrOH8.js +1 -0
  200. package/dist/assets/field-BeZbVzXA.js +1 -0
  201. package/dist/assets/file-CJH9JNGH.js +1 -0
  202. package/dist/assets/file-explorer-panel-DbdoJbbF.js +26 -0
  203. package/dist/assets/file-headphone-DAu6VO6j.js +1 -0
  204. package/dist/assets/file-icons-Cb54mIL8.js +1 -0
  205. package/dist/assets/file-name-input-BWFcK1ey.js +3 -0
  206. package/dist/assets/fileToBase64-C2Yy-YXq.js +1 -0
  207. package/dist/assets/floating-outline-wz-WSRgP.js +1 -0
  208. package/dist/assets/flowDiagram-NV44I4VS-xBOzhlfg.js +162 -0
  209. package/dist/assets/focus-DiEyfiAG.js +1 -0
  210. package/dist/assets/form-CgWNb44_.js +2 -0
  211. package/dist/assets/formats-ClEFGPy-.js +1 -0
  212. package/dist/assets/formatting-B_41gSF5.js +1 -0
  213. package/dist/assets/forth-D9xegiCO.js +1 -0
  214. package/dist/assets/fortran-B0Oe0U8s.js +1 -0
  215. package/dist/assets/fullscreen-dUjPYOmm.js +41 -0
  216. package/dist/assets/gallery-page-CWQQAYpa.js +1 -0
  217. package/dist/assets/ganttDiagram-JELNMOA3-D2O_k-Zg.js +267 -0
  218. package/dist/assets/gas-jLjj-PIq.js +1 -0
  219. package/dist/assets/gherkin-3Ig8Crit.js +1 -0
  220. package/dist/assets/gitGraph-G5XIXVHT-8HJwNcdU.js +1 -0
  221. package/dist/assets/gitGraphDiagram-V2S2FVAM-Nk4Ll9GY.js +65 -0
  222. package/dist/assets/github-_JH-0hIO.js +1 -0
  223. package/dist/assets/glide-data-editor-lMARFWHS.js +132 -0
  224. package/dist/assets/groovy-NKpNVJ-n.js +1 -0
  225. package/dist/assets/haskell-OPE4bAjk.js +1 -0
  226. package/dist/assets/hat-glasses-BttHlyvs.js +1 -0
  227. package/dist/assets/haxe-DEAZF8L3.js +1 -0
  228. package/dist/assets/home-page-DJ4jJsZj.js +4 -0
  229. package/dist/assets/house-DS0r7dNZ.js +1 -0
  230. package/dist/assets/html-to-image-CwmX28T9.js +2 -0
  231. package/dist/assets/icons-CIPE8AIY.js +1 -0
  232. package/dist/assets/idl-BM6265Xl.js +1 -0
  233. package/dist/assets/image-5XI2VU-q.js +1 -0
  234. package/dist/assets/index-BjlEpvLC.css +2 -0
  235. package/dist/assets/index-C0JtPo0J.js +38 -0
  236. package/dist/assets/info-VBDWY6EO-rfe3WPvd.js +1 -0
  237. package/dist/assets/infoDiagram-HS3SLOUP-DQnMjKYJ.js +2 -0
  238. package/dist/assets/input-CqrUjynb.js +1 -0
  239. package/dist/assets/isValid-D7naiWNs.js +1 -0
  240. package/dist/assets/javascript-CZ9vDpAy.js +1 -0
  241. package/dist/assets/journeyDiagram-XKPGCS4Q-D61FGivn.js +139 -0
  242. package/dist/assets/julia-BrY9TQnt.js +1 -0
  243. package/dist/assets/kanban-definition-3W4ZIXB7-Bnv0X0Tu.js +89 -0
  244. package/dist/assets/katex-C-lfa1AM.js +1 -0
  245. package/dist/assets/kbd-C5HnBH5U.js +1 -0
  246. package/dist/assets/kiosk-mode-ABm3oYgq.js +1 -0
  247. package/dist/assets/label-BElwWzf0.js +1 -0
  248. package/dist/assets/layout-BOwE7yok.js +9 -0
  249. package/dist/assets/line-DNm2phYo.js +1 -0
  250. package/dist/assets/linear-CTQqNbVX.js +1 -0
  251. package/dist/assets/link-CHdiBDr5.js +1 -0
  252. package/dist/assets/links-CToBjIIj.js +1 -0
  253. package/dist/assets/links-wcQA1Np1.js +1 -0
  254. package/dist/assets/livescript-CNahkUp5.js +1 -0
  255. package/dist/assets/logs-panel-iFV4ZJ9b.js +1 -0
  256. package/dist/assets/loro_wasm_bg-Duqr-kJ2.js +1 -0
  257. package/dist/assets/lua-Skr4TVu_.js +1 -0
  258. package/dist/assets/marimo-icons-C_nFooxr.js +1 -0
  259. package/dist/assets/markdown-renderer-QvXG0CRk.js +5 -0
  260. package/dist/assets/mathematica-BXxhrpeY.js +1 -0
  261. package/dist/assets/mbox-BRrQCVe9.js +1 -0
  262. package/dist/assets/menu-items-DbSLBfXR.js +1 -0
  263. package/dist/assets/mermaid-4DMBBIKO-CDGmT6YQ.js +1 -0
  264. package/dist/assets/mermaid-Bh0flEIb.js +11 -0
  265. package/dist/assets/mermaid-parser.core-Dz2GMGqQ.js +4 -0
  266. package/dist/assets/message-circle-dL5J5ZsZ.js +1 -0
  267. package/dist/assets/mhchem-CIWniJp4.js +1 -0
  268. package/dist/assets/mindmap-definition-VGOIOE7T-C-YaKmEU.js +68 -0
  269. package/dist/assets/mirc-CffYPE4R.js +1 -0
  270. package/dist/assets/mllike-C1DLZhEI.js +1 -0
  271. package/dist/assets/modelica-CvAyRRNV.js +1 -0
  272. package/dist/assets/mscgen-uMZWtMZv.js +1 -0
  273. package/dist/assets/multi-icon-nrKPWjDU.js +1 -0
  274. package/dist/assets/mumps-DFJehEx7.js +1 -0
  275. package/dist/assets/name-cell-input-C6cukQ9k.js +1 -0
  276. package/dist/assets/nsis-BVI9YULz.js +1 -0
  277. package/dist/assets/nsis-Ccvd1gbp.js +1 -0
  278. package/dist/assets/ntriples-Bcdh7b2H.js +1 -0
  279. package/dist/assets/number-overlay-editor-BQ9P6yP7.js +9 -0
  280. package/dist/assets/numbers-CeeaFKqu.js +1 -0
  281. package/dist/assets/objects-BlG0ZrO0.js +1 -0
  282. package/dist/assets/octave-CdAKz6YS.js +1 -0
  283. package/dist/assets/once-CGKw_kwj.js +1 -0
  284. package/dist/assets/ordinal-DyTNGK17.js +1 -0
  285. package/dist/assets/outline-panel-BPlg9_CE.js +1 -0
  286. package/dist/assets/oz-DSySeR-W.js +1 -0
  287. package/dist/assets/package-Bxz_8e44.js +1 -0
  288. package/dist/assets/packages-panel-BzQF60rG.js +1 -0
  289. package/dist/assets/packet-DYOGHKS2-DTVloLa7.js +1 -0
  290. package/dist/assets/pair-with-agent-modal-CKOYwOYw.js +4 -0
  291. package/dist/assets/panel-context-CH75ubGG.js +1 -0
  292. package/dist/assets/panels-CW-PUlv2.js +4 -0
  293. package/dist/assets/pascal-DefziIUN.js +1 -0
  294. package/dist/assets/pathUtils-Bfcp5m-a.js +1 -0
  295. package/dist/assets/perl-BOOloBPk.js +1 -0
  296. package/dist/assets/pie-VRWISCQL-Bmght6JF.js +1 -0
  297. package/dist/assets/pieDiagram-ADFJNKIX-DlFYL0BN.js +30 -0
  298. package/dist/assets/pig-f0nBb-5x.js +1 -0
  299. package/dist/assets/plus-AgXtozBz.js +1 -0
  300. package/dist/assets/popover-DrHQ3KEt.js +1 -0
  301. package/dist/assets/powershell-DToQjbK9.js +1 -0
  302. package/dist/assets/precisionRound-i2ImZxgc.js +1 -0
  303. package/dist/assets/process-output-BEhIGfkO.js +1 -0
  304. package/dist/assets/properties-BRob-nyj.js +1 -0
  305. package/dist/assets/protobuf-DZyC6051.js +1 -0
  306. package/dist/assets/pug-BtXi5KiX.js +1 -0
  307. package/dist/assets/pug-pVoM8FRt.js +1 -0
  308. package/dist/assets/puppet-9fuYG07F.js +1 -0
  309. package/dist/assets/purify.es-CWmnYhGI.js +3 -0
  310. package/dist/assets/python-_Mr8fyXP.js +1 -0
  311. package/dist/assets/q-D73s4Y77.js +1 -0
  312. package/dist/assets/quadrantDiagram-AYHSOK5B-BpJug2BH.js +7 -0
  313. package/dist/assets/r-BOEjz92e.js +1 -0
  314. package/dist/assets/radar-ZZBFDIW7-CYwWzRgW.js +1 -0
  315. package/dist/assets/radio-group-CLBjGkt5.js +1 -0
  316. package/dist/assets/react-vega-TNCk_eWj.js +188 -0
  317. package/dist/assets/readonly-code-display-D63oRtBP.js +1 -0
  318. package/dist/assets/readonly-python-code-CW_G5e4E.js +1 -0
  319. package/dist/assets/refresh-ccw-sLaKP2vj.js +1 -0
  320. package/dist/assets/refresh-cw-CYq4mK5a.js +1 -0
  321. package/dist/assets/renderShortcut-BZLr8D7H.js +1 -0
  322. package/dist/assets/request-registry-DHocQ_4I.js +1 -0
  323. package/dist/assets/requests-9-v2bhoi.js +1 -0
  324. package/dist/assets/requirementDiagram-UZGBJVZJ-Bd-1eny8.js +64 -0
  325. package/dist/assets/reveal-component-DqMRxmUr.js +1069 -0
  326. package/dist/assets/rotate-ccw-CTnUuC8r.js +1 -0
  327. package/dist/assets/rpm-LpXWTM5t.js +1 -0
  328. package/dist/assets/ruby-DodgSDfF.js +1 -0
  329. package/dist/assets/run-page-s6Mf8p78.js +1 -0
  330. package/dist/assets/runs-D51Xwrsk.js +1 -0
  331. package/dist/assets/sankeyDiagram-TZEHDZUN-CDWAE6GV.js +10 -0
  332. package/dist/assets/sas-D9KCtUmL.js +1 -0
  333. package/dist/assets/save-DBuEmnnF.js +1 -0
  334. package/dist/assets/save-worker-_Qc1hOeF.js +102 -0
  335. package/dist/assets/scheme-p8UJxmJw.js +1 -0
  336. package/dist/assets/scratchpad-panel-CXsxdMB-.js +1 -0
  337. package/dist/assets/scroll-to-bottom-button-Cgr10kaJ.js +1 -0
  338. package/dist/assets/secrets-panel-Cc5KDBk6.js +1 -0
  339. package/dist/assets/select-B5TFNjmU.js +1 -0
  340. package/dist/assets/sequenceDiagram-WL72ISMW-B6hjDGBF.js +145 -0
  341. package/dist/assets/session-CEFnN9Cq.js +1 -0
  342. package/dist/assets/session-panel-CmHetqAb.js +1 -0
  343. package/dist/assets/settings-D_PiwXwo.js +1 -0
  344. package/dist/assets/share-CYpcX4N4.js +1 -0
  345. package/dist/assets/shell-BWdqyqwL.js +1 -0
  346. package/dist/assets/sieve-CLwJmtiQ.js +1 -0
  347. package/dist/assets/skeleton-B_4CZVEm.js +1 -0
  348. package/dist/assets/smalltalk-D3KV-Qah.js +1 -0
  349. package/dist/assets/snippets-panel-CXpGflMO.js +1 -0
  350. package/dist/assets/sparkles-DUCpRFlS.js +1 -0
  351. package/dist/assets/sparql-D9Jz2mBw.js +1 -0
  352. package/dist/assets/spec-CzqcmYQk.js +1 -0
  353. package/dist/assets/spinner-D-V4psAa.js +1 -0
  354. package/dist/assets/square-DFICx2Qv.js +1 -0
  355. package/dist/assets/square-function-DNNRTPQJ.js +1 -0
  356. package/dist/assets/src-CIOdyciO.js +1 -0
  357. package/dist/assets/state-BXbiRXZk.js +3 -0
  358. package/dist/assets/state-BvdK8eiw.js +1 -0
  359. package/dist/assets/state-DBzEQtWz.js +1 -0
  360. package/dist/assets/state-WBgc7MiA.js +1 -0
  361. package/dist/assets/stateDiagram-FKZM4ZOC-Bzv6j99z.js +1 -0
  362. package/dist/assets/stateDiagram-v2-4FDKWEC3-CA1l0rNa.js +1 -0
  363. package/dist/assets/step-CDlhJj9-.js +1 -0
  364. package/dist/assets/stex-pjf-hOob.js +1 -0
  365. package/dist/assets/strings-Djnbwmfl.js +2 -0
  366. package/dist/assets/stylus-ClN4l_XO.js +1 -0
  367. package/dist/assets/swift-Dvd_9xBv.js +1 -0
  368. package/dist/assets/swiper-component-DInvCxhI.js +1 -0
  369. package/dist/assets/switch-CvweaCXq.js +1 -0
  370. package/dist/assets/table-CH2plyy9.js +1 -0
  371. package/dist/assets/table-D-tcnZC7.js +1 -0
  372. package/dist/assets/tcl-DR2p8cyi.js +1 -0
  373. package/dist/assets/terminal-D3IQBBYo.js +62 -0
  374. package/dist/assets/textarea-CpFfEUet.js +1 -0
  375. package/dist/assets/textile-D6S27_J2.js +1 -0
  376. package/dist/assets/time-BuRlxEhE.js +1 -0
  377. package/dist/assets/timeline-definition-IT6M3QCI-DXwdU1og.js +61 -0
  378. package/dist/assets/timer-VYMLXPue.js +1 -0
  379. package/dist/assets/toDate-Ct2FT81-.js +1 -0
  380. package/dist/assets/toml-B-YuQ2Id.js +1 -0
  381. package/dist/assets/tooltip-CFX4fYHU.js +1 -0
  382. package/dist/assets/tooltip-HLb6RxVp.js +61 -0
  383. package/dist/assets/tracing-CKn3gWHw.js +1 -0
  384. package/dist/assets/tracing-panel-BU-o_LCd.js +2 -0
  385. package/dist/assets/trash-2-72W0TZ3L.js +1 -0
  386. package/dist/assets/trash-CKgJJN6a.js +1 -0
  387. package/dist/assets/tree-actions-CsC2XmGo.js +1 -0
  388. package/dist/assets/treemap-GDKQZRPO-4Cm6HMmj.js +1 -0
  389. package/dist/assets/triangle-alert-BL4YVsPy.js +1 -0
  390. package/dist/assets/troff-HSk8AoRF.js +1 -0
  391. package/dist/assets/ttcn-CehzlVdx.js +1 -0
  392. package/dist/assets/ttcn-cfg-CLEPwk1s.js +1 -0
  393. package/dist/assets/turtle-DQLHkbOu.js +1 -0
  394. package/dist/assets/types-jdbI9Q8O.js +1 -0
  395. package/dist/assets/use-vega-container-remeasure-CbKTb_jy.js +1 -0
  396. package/dist/assets/useAsyncData-Bg5iAViP.js +1 -0
  397. package/dist/assets/useBoolean-0INKlLC_.js +1 -0
  398. package/dist/assets/useCellActionButton-CRfIEVB5.js +1 -0
  399. package/dist/assets/useDateFormatter-rtpVEy3J.js +1 -0
  400. package/dist/assets/useDeleteCell-EPH4kcG7.js +1 -0
  401. package/dist/assets/useDependencyPanelTab-CZnK7N2L.js +1 -0
  402. package/dist/assets/useEventListener-B_w3A283.js +1 -0
  403. package/dist/assets/useHotkey-DIuRH8Wu.js +1 -0
  404. package/dist/assets/useIframeCapabilities-Ccb4fvKc.js +1 -0
  405. package/dist/assets/useInstallPackage-BRbUAUFn.js +1 -0
  406. package/dist/assets/useInterval-CC0vKpWm.js +1 -0
  407. package/dist/assets/useLifecycle-lLOBhc-1.js +1 -0
  408. package/dist/assets/useNotebookActions-UvL5xEdt.js +14 -0
  409. package/dist/assets/useNumberFormatter-4-Qvf4uR.js +1 -0
  410. package/dist/assets/usePress-5hBv4sjD.js +7 -0
  411. package/dist/assets/useRunCells-CSSF_mJ0.js +1 -0
  412. package/dist/assets/useSplitCell-9Qz93yPZ.js +1 -0
  413. package/dist/assets/useTheme-KXqAyDPC.js +1 -0
  414. package/dist/assets/utils-CCTAhdFi.js +1 -0
  415. package/dist/assets/utils-Z80SV4_d.js +1 -0
  416. package/dist/assets/vb-o1EHrS4z.js +1 -0
  417. package/dist/assets/vbscript-BS8yUFpf.js +1 -0
  418. package/dist/assets/vega-component-Cie3ag_T.js +1 -0
  419. package/dist/assets/vega-embed-container-hDAVOOba.js +1 -0
  420. package/dist/assets/vega-loader.browser-Dun7Qe4B.js +6 -0
  421. package/dist/assets/velocity-u_oGPFaA.js +1 -0
  422. package/dist/assets/verilog-CSmDH7su.js +1 -0
  423. package/dist/assets/vhdl-BCaWLcjw.js +1 -0
  424. package/dist/assets/webidl-Bf6dokXM.js +1 -0
  425. package/dist/assets/worker-BQo2bijx.js +145 -0
  426. package/dist/assets/workflow-e-XGaKyY.js +1 -0
  427. package/dist/assets/write-secret-modal-DEEn7sZV.js +1 -0
  428. package/dist/assets/x-C-Eq0ag8.js +1 -0
  429. package/dist/assets/xquery-Di0kkiXg.js +1 -0
  430. package/dist/assets/xychartDiagram-PRI3JC2R-Cb0exSKs.js +7 -0
  431. package/dist/assets/yacas-DB8tPtyp.js +1 -0
  432. package/dist/assets/youtube-OwaksuQt.js +1 -0
  433. package/dist/assets/z80-DFUvlWxk.js +1 -0
  434. package/dist/index.html +162 -161
  435. package/package.json +3 -1
  436. package/src/__mocks__/requests.ts +3 -0
  437. package/src/components/charts/lazy.tsx +3 -1
  438. package/src/components/charts/vega-embed-container.tsx +18 -0
  439. package/src/components/chat/__tests__/chat-utils.test.ts +244 -1
  440. package/src/components/chat/__tests__/message-queue.test.tsx +121 -0
  441. package/src/components/chat/chat-panel.tsx +196 -67
  442. package/src/components/chat/chat-utils.ts +111 -2
  443. package/src/components/editor/RecoveryButton.tsx +2 -2
  444. package/src/components/editor/SortableCell.tsx +6 -2
  445. package/src/components/editor/__tests__/output-persistence.test.tsx +241 -0
  446. package/src/components/editor/actions/__tests__/pair-with-agent-commands.test.ts +153 -0
  447. package/src/components/editor/actions/pair-with-agent-commands.ts +109 -0
  448. package/src/components/editor/actions/pair-with-agent-modal.tsx +20 -64
  449. package/src/components/editor/actions/useNotebookActions.tsx +8 -0
  450. package/src/components/editor/ai/add-cell-with-ai.tsx +14 -5
  451. package/src/components/editor/ai/ai-completion-editor.tsx +4 -1
  452. package/src/components/editor/cell/cell-context-menu.tsx +7 -0
  453. package/src/components/editor/chrome/components/__tests__/feedback-button.test.tsx +221 -0
  454. package/src/components/editor/chrome/components/feedback-button.tsx +308 -77
  455. package/src/components/editor/chrome/panels/packages-panel.tsx +11 -1
  456. package/src/components/editor/chrome/panels/write-secret-modal.tsx +3 -2
  457. package/src/components/editor/columns/__tests__/cell-column.test.tsx +105 -0
  458. package/src/components/editor/columns/cell-column.tsx +34 -4
  459. package/src/components/editor/columns/sortable-column.tsx +24 -4
  460. package/src/components/editor/connections/__tests__/secret-combobox.test.ts +134 -0
  461. package/src/components/editor/connections/database/schemas.ts +35 -27
  462. package/src/components/editor/connections/form-renderers.tsx +42 -110
  463. package/src/components/editor/connections/secret-combobox.tsx +253 -0
  464. package/src/components/editor/connections/storage/schemas.ts +12 -6
  465. package/src/components/editor/file-tree/download.ts +46 -0
  466. package/src/components/editor/file-tree/file-explorer.tsx +3 -21
  467. package/src/components/editor/file-tree/file-viewer.tsx +4 -27
  468. package/src/components/editor/navigation/__tests__/navigation.test.ts +33 -0
  469. package/src/components/editor/navigation/navigation.ts +8 -1
  470. package/src/components/editor/notebook-cell.tsx +203 -106
  471. package/src/components/editor/renderers/__tests__/cells-renderer.test.tsx +66 -0
  472. package/src/components/editor/renderers/cell-array.tsx +26 -13
  473. package/src/components/editor/renderers/cells-renderer.tsx +8 -2
  474. package/src/components/editor/renderers/slides-layout/__tests__/plugin.test.ts +29 -0
  475. package/src/components/editor/renderers/slides-layout/types.ts +4 -0
  476. package/src/components/editor/renderers/vertical-layout/vertical-layout.tsx +19 -19
  477. package/src/components/slides/reveal-component.tsx +37 -17
  478. package/src/components/slides/slide-form.tsx +72 -0
  479. package/src/components/ui/toast.tsx +11 -3
  480. package/src/components/ui/toaster.tsx +65 -9
  481. package/src/core/ai/context/providers/error.ts +6 -158
  482. package/src/core/cells/__tests__/utils.test.ts +59 -0
  483. package/src/core/cells/utils.ts +51 -0
  484. package/src/core/codemirror/completion/__tests__/signature-hint.test.ts +97 -3
  485. package/src/core/codemirror/completion/signature-hint.ts +78 -11
  486. package/src/core/constants.ts +8 -0
  487. package/src/core/diagnostics/__tests__/issue-details.test.ts +173 -0
  488. package/src/core/diagnostics/issue-details.ts +139 -0
  489. package/src/core/errors/__tests__/error-entries.test.ts +25 -0
  490. package/src/core/errors/error-entries.ts +176 -0
  491. package/src/core/islands/__tests__/bridge.test.ts +341 -46
  492. package/src/core/islands/__tests__/main.test.ts +176 -0
  493. package/src/core/islands/__tests__/parse.test.ts +105 -0
  494. package/src/core/islands/bootstrap.ts +8 -3
  495. package/src/core/islands/bridge.ts +117 -23
  496. package/src/core/islands/components/__tests__/web-components.test.tsx +214 -0
  497. package/src/core/islands/components/web-components.tsx +76 -15
  498. package/src/core/islands/constants.ts +1 -0
  499. package/src/core/islands/main.ts +69 -3
  500. package/src/core/islands/parse.ts +70 -23
  501. package/src/core/islands/worker/__tests__/controller.test.ts +173 -0
  502. package/src/core/islands/worker/worker.tsx +145 -57
  503. package/src/core/network/__tests__/requests-lazy.test.ts +18 -0
  504. package/src/core/network/__tests__/requests-network.test.ts +7 -0
  505. package/src/core/network/requests-lazy.ts +13 -1
  506. package/src/core/network/requests-network.ts +3 -0
  507. package/src/core/network/requests-static.ts +1 -0
  508. package/src/core/network/requests-toasting.tsx +1 -0
  509. package/src/core/network/types.ts +3 -0
  510. package/src/core/runtime/__tests__/runtime.test.ts +64 -0
  511. package/src/core/runtime/runtime.ts +30 -10
  512. package/src/core/wasm/bridge.ts +8 -0
  513. package/src/core/wasm/worker/bootstrap.ts +113 -20
  514. package/src/core/wasm/worker/types.ts +2 -0
  515. package/src/css/app/Cell.css +10 -0
  516. package/src/hooks/__tests__/useHotkey.test.tsx +88 -0
  517. package/src/hooks/useHotkey.ts +29 -4
  518. package/src/plugins/impl/anywidget/__tests__/host.test.ts +6 -9
  519. package/src/plugins/impl/anywidget/__tests__/registry.test.ts +3 -1
  520. package/src/plugins/impl/anywidget/__tests__/widget-binding.test.ts +32 -61
  521. package/src/plugins/impl/anywidget/model-proxy.ts +0 -13
  522. package/src/plugins/impl/anywidget/runtime.ts +1 -0
  523. package/src/plugins/impl/anywidget/widget-binding.ts +8 -34
  524. package/src/plugins/impl/image-comparison/ImageComparisonComponent.tsx +53 -2
  525. package/src/plugins/impl/image-comparison/__tests__/ImageComparisonComponent.test.tsx +71 -0
  526. package/src/plugins/impl/vega/__tests__/use-vega-container-remeasure.test.ts +102 -0
  527. package/src/plugins/impl/vega/use-vega-container-remeasure.ts +39 -0
  528. package/src/plugins/impl/vega/vega-component.tsx +5 -4
  529. package/src/theme/__tests__/useTheme.test.ts +68 -0
  530. package/src/theme/useTheme.ts +16 -1
  531. package/dist/assets/CellStatus-CJiCB3Hi.js +0 -1
  532. package/dist/assets/ConnectedDataExplorerComponent-B4fGzEJZ.js +0 -1
  533. package/dist/assets/DeferredRequestRegistry-RuL7NV1n.js +0 -1
  534. package/dist/assets/ErrorBoundary-Bo313Z9X.js +0 -1
  535. package/dist/assets/ImageComparisonComponent-BHNx9yIG.js +0 -1
  536. package/dist/assets/ImperativeModal-B62Q6S9l.js +0 -1
  537. package/dist/assets/Inputs-SmI80aJQ.js +0 -1
  538. package/dist/assets/JsonOutput-Cqq7S3wn.js +0 -53
  539. package/dist/assets/LazyAnyLanguageCodeMirror-BSGwa0jm.js +0 -2
  540. package/dist/assets/MarimoErrorOutput-t_4q7nKD.js +0 -11
  541. package/dist/assets/Plot-BB9gg44K.js +0 -3789
  542. package/dist/assets/RSPContexts-VzcTZjG1.js +0 -1
  543. package/dist/assets/RenderHTML-DZz6EFTa.js +0 -1
  544. package/dist/assets/RunButton-rOSamvRh.js +0 -1
  545. package/dist/assets/__vite-browser-external-CeH7R2Sf.js +0 -1
  546. package/dist/assets/__vite-browser-external-DTK_qJHK.js +0 -1
  547. package/dist/assets/add-cell-with-ai-Cy1aVVcT.js +0 -110
  548. package/dist/assets/add-connection-dialog-B7evz8iS.js +0 -170
  549. package/dist/assets/agent-panel-CBDRTGjF.js +0 -287
  550. package/dist/assets/ai-model-dropdown-Cs7srqhW.js +0 -5
  551. package/dist/assets/alert-1y_DnRWn.js +0 -1
  552. package/dist/assets/alert-dialog-CC0gG4Av.js +0 -11
  553. package/dist/assets/any-language-editor-DPRB0D1H.js +0 -1
  554. package/dist/assets/apl-Chr9VNQb.js +0 -1
  555. package/dist/assets/app-config-button-vfhq9pUS.js +0 -1
  556. package/dist/assets/arc-DUSwcTI9.js +0 -1
  557. package/dist/assets/architecture-7HQA4BMR-BKC1aYPh.js +0 -1
  558. package/dist/assets/architectureDiagram-VXUJARFQ-9zNZOBwF.js +0 -36
  559. package/dist/assets/arrays-DWxvyYxP.js +0 -1
  560. package/dist/assets/arrow-right-DFk7kYqp.js +0 -1
  561. package/dist/assets/asciiarmor-DzJGO3cy.js +0 -1
  562. package/dist/assets/asn1-Blkd-UVm.js +0 -1
  563. package/dist/assets/badge-6yGCqY1Z.js +0 -1
  564. package/dist/assets/ban-CttLZK8l.js +0 -1
  565. package/dist/assets/blockDiagram-VD42YOAC-CoeffysX.js +0 -122
  566. package/dist/assets/bot-message-square-AslRbAeb.js +0 -1
  567. package/dist/assets/brainfuck-BeRVF6bt.js +0 -1
  568. package/dist/assets/button-BF7GSjhW.js +0 -1
  569. package/dist/assets/c4Diagram-YG6GDRKO-HRtHHrnC.js +0 -10
  570. package/dist/assets/cache-panel-BlIrcwlT.js +0 -1
  571. package/dist/assets/capabilities-CjNGDxxx.js +0 -1
  572. package/dist/assets/card-s1ZaQ9ub.js +0 -1
  573. package/dist/assets/cell-editor-CTnJaccs.js +0 -27
  574. package/dist/assets/cell-link-BZg1pgHT.js +0 -1
  575. package/dist/assets/cells-ChH37lAD.js +0 -229
  576. package/dist/assets/channel-xkFudYwF.js +0 -1
  577. package/dist/assets/chart-no-axes-column-DVEV2j1H.js +0 -1
  578. package/dist/assets/chat-display-g1pE3dpm.js +0 -1
  579. package/dist/assets/chat-panel-DC85y3IW.js +0 -3
  580. package/dist/assets/chat-ui-CcC5kdbn.js +0 -4
  581. package/dist/assets/check-DQmqoJgr.js +0 -1
  582. package/dist/assets/chevron-right-C7RH0Nc7.js +0 -1
  583. package/dist/assets/chunk-4BX2VUAB-B9eTC_as.js +0 -1
  584. package/dist/assets/chunk-4F5CHEZ2-DMnTTluO.js +0 -1
  585. package/dist/assets/chunk-55IACEB6-RaPtcg4Z.js +0 -1
  586. package/dist/assets/chunk-5FQGJX7Z-OScactr4.js +0 -113
  587. package/dist/assets/chunk-ABZYJK2D-BahEojQ2.js +0 -80
  588. package/dist/assets/chunk-ATLVNIR6-x_ij98gB.js +0 -1
  589. package/dist/assets/chunk-B2363JML-Dku8Kg6Q.js +0 -1
  590. package/dist/assets/chunk-B4BG7PRW-CNWrrwyq.js +0 -165
  591. package/dist/assets/chunk-CVBHYZKI-BmNXddyI.js +0 -1
  592. package/dist/assets/chunk-DI55MBZ5-DLtrYKQl.js +0 -220
  593. package/dist/assets/chunk-EXTU4WIE-BosqMJS0.js +0 -1
  594. package/dist/assets/chunk-FMBD7UC4-CXkgki2e.js +0 -15
  595. package/dist/assets/chunk-FRFDVMJY-W8ieZ4T6.js +0 -1
  596. package/dist/assets/chunk-HN2XXSSU-BstCPYtG.js +0 -1
  597. package/dist/assets/chunk-JA3XYJ7Z-BGpTu7cp.js +0 -70
  598. package/dist/assets/chunk-JZLCHNYA-B5kB1fLQ.js +0 -54
  599. package/dist/assets/chunk-MI3HLSF2-BceZdyTR.js +0 -32
  600. package/dist/assets/chunk-N4CR4FBY-BBG_uFjb.js +0 -2
  601. package/dist/assets/chunk-PL6DKKU2-B2NeQSoB.js +0 -1
  602. package/dist/assets/chunk-QN33PNHL-CVHu8q7d.js +0 -1
  603. package/dist/assets/chunk-QXUST7PY-CFthKhW0.js +0 -7
  604. package/dist/assets/chunk-QZHKN3VN-B9NOrYv5.js +0 -1
  605. package/dist/assets/chunk-S3R3BYOJ-C_f67nz1.js +0 -2
  606. package/dist/assets/chunk-SJTYNZTY-KfBChqO5.js +0 -1
  607. package/dist/assets/chunk-TCCFYFTB-Cq0Vz6d2.js +0 -125
  608. package/dist/assets/chunk-TQ3KTPDO-BMxqKE6C.js +0 -1
  609. package/dist/assets/chunk-TZMSLE5B-HjU3PlWB.js +0 -1
  610. package/dist/assets/chunk-UMXZTB3W-BUDrzDik.js +0 -1
  611. package/dist/assets/circle-check-Q2N68uwG.js +0 -1
  612. package/dist/assets/circle-play-BvVg4iiT.js +0 -1
  613. package/dist/assets/circle-plus-BIy1BGHw.js +0 -1
  614. package/dist/assets/classDiagram-2ON5EDUG-BijpneZJ.js +0 -1
  615. package/dist/assets/classDiagram-v2-WZHVMYZB-DcBY2KJt.js +0 -1
  616. package/dist/assets/clear-button-DhIdI0ng.js +0 -1
  617. package/dist/assets/clike-BhFoDDUF.js +0 -1
  618. package/dist/assets/clipboard-paste-CXof_R04.js +0 -1
  619. package/dist/assets/clojure-D3LWk-SC.js +0 -1
  620. package/dist/assets/cmake-238GeNbi.js +0 -1
  621. package/dist/assets/cn-X2M2usMq.js +0 -1
  622. package/dist/assets/cobol-CZP4RjnO.js +0 -1
  623. package/dist/assets/code-DP40S9ln.js +0 -1
  624. package/dist/assets/code-block-37QAKDTI-DhYEpctq.js +0 -2
  625. package/dist/assets/code-xml-tqeFGeKJ.js +0 -1
  626. package/dist/assets/coffeescript-B7XjCOaF.js +0 -1
  627. package/dist/assets/column-preview-47aOuXOh.js +0 -1
  628. package/dist/assets/command-DRHbYHUP.js +0 -1
  629. package/dist/assets/command-palette-Gt0BItEs.js +0 -1
  630. package/dist/assets/common-DLhZ1eJc.js +0 -1
  631. package/dist/assets/commonlisp-DKNhPgyy.js +0 -1
  632. package/dist/assets/components-F3_UehyY.js +0 -1
  633. package/dist/assets/config-CjCV0n0j.js +0 -1
  634. package/dist/assets/config-Vyzo6FSF.js +0 -1
  635. package/dist/assets/constants-B9JJ72XE.js +0 -1
  636. package/dist/assets/context-C2Ie4tn_.js +0 -1
  637. package/dist/assets/copy-D8MtpXgN.js +0 -1
  638. package/dist/assets/copy-IBNGDypD.js +0 -1
  639. package/dist/assets/copy-icon-EHMT-qlr.js +0 -1
  640. package/dist/assets/cose-bilkent-S5V4N54A-BfoWxM7A.js +0 -1
  641. package/dist/assets/createReducer-3wF4dU7I.js +0 -1
  642. package/dist/assets/crystal-DmwO_0_4.js +0 -1
  643. package/dist/assets/css-b-BDNvIM.js +0 -1
  644. package/dist/assets/cypher-Bld-ecrK.js +0 -1
  645. package/dist/assets/d-D0LlbZRM.js +0 -1
  646. package/dist/assets/dagre-6UL2VRFP-D9JPUp6S.js +0 -4
  647. package/dist/assets/data-grid-overlay-editor-DmMSodPy.js +0 -1
  648. package/dist/assets/database-zap-DIlSqcdp.js +0 -1
  649. package/dist/assets/datasource-ii4hOmhM.js +0 -3
  650. package/dist/assets/dates-D8uxHHPL.js +0 -1
  651. package/dist/assets/dependency-graph-panel-BD4d_qw2.js +0 -5
  652. package/dist/assets/diagram-PSM6KHXK-B0tUabrq.js +0 -24
  653. package/dist/assets/diagram-QEK2KX5R-Cw9uF9O2.js +0 -43
  654. package/dist/assets/diagram-S2PKOQOG-CQ2c8wZv.js +0 -24
  655. package/dist/assets/dialog-DkJmIrsG.js +0 -1
  656. package/dist/assets/diff-BhkLDFRp.js +0 -1
  657. package/dist/assets/dist-B0WqBUnf.js +0 -1
  658. package/dist/assets/dist-BKUbUFYs.js +0 -1
  659. package/dist/assets/dist-BP6Oj7vU.js +0 -1
  660. package/dist/assets/dist-BTohsDew.js +0 -1
  661. package/dist/assets/dist-BXnBIECY.js +0 -1
  662. package/dist/assets/dist-BbGE6FVk.js +0 -1
  663. package/dist/assets/dist-BnV7Zv4J.js +0 -1
  664. package/dist/assets/dist-BqW5KzD0.js +0 -1
  665. package/dist/assets/dist-BtrqKtvn.js +0 -3
  666. package/dist/assets/dist-C4-ruy-b.js +0 -1
  667. package/dist/assets/dist-C62CI8Os.js +0 -7
  668. package/dist/assets/dist-C6zQ57IZ.js +0 -1
  669. package/dist/assets/dist-CF7wJiFo.js +0 -1
  670. package/dist/assets/dist-CIQQgRzz.js +0 -1
  671. package/dist/assets/dist-CIlJuwTK.js +0 -1
  672. package/dist/assets/dist-CKCDTgIC.js +0 -1
  673. package/dist/assets/dist-CNKFZCiw.js +0 -1
  674. package/dist/assets/dist-CR5yl751.js +0 -1
  675. package/dist/assets/dist-CUoPT-12.js +0 -1
  676. package/dist/assets/dist-CVIPALxj.js +0 -1
  677. package/dist/assets/dist-CWf9ows7.js +0 -1
  678. package/dist/assets/dist-CcVb-ahb.js +0 -1
  679. package/dist/assets/dist-CfGDksO-.js +0 -2
  680. package/dist/assets/dist-Ci66nyHs.js +0 -1
  681. package/dist/assets/dist-Cr2Z8vBa.js +0 -1
  682. package/dist/assets/dist-CrExO-X4.js +0 -1
  683. package/dist/assets/dist-CruUwJkI.js +0 -1
  684. package/dist/assets/dist-CwfKvuyQ.js +0 -2
  685. package/dist/assets/dist-CzcvL_Z9.js +0 -1
  686. package/dist/assets/dist-D-2yWcX9.js +0 -1
  687. package/dist/assets/dist-DCqDlsgq.js +0 -1
  688. package/dist/assets/dist-DJZFvU6Z.js +0 -1
  689. package/dist/assets/dist-DU8gTNy9.js +0 -1
  690. package/dist/assets/dist-DblYTes5.js +0 -6
  691. package/dist/assets/dist-Dez1I5M9.js +0 -14
  692. package/dist/assets/dist-DgBuTUso.js +0 -7
  693. package/dist/assets/dist-DkYp4RmM.js +0 -1
  694. package/dist/assets/dist-DlREAgj1.js +0 -1
  695. package/dist/assets/dist-FCPDbCwM.js +0 -1
  696. package/dist/assets/dist-KRVJJ-dD.js +0 -1
  697. package/dist/assets/dist-Qjp1OoCV.js +0 -1
  698. package/dist/assets/dist-RW5SS83Z.js +0 -1
  699. package/dist/assets/dist-UghNT0W0.js +0 -3
  700. package/dist/assets/dist-XexmIjM8.js +0 -1
  701. package/dist/assets/dist-ZjSH4Z6x.js +0 -13
  702. package/dist/assets/dist-azqjLiVY.js +0 -1
  703. package/dist/assets/dist-hvL02v1Z.js +0 -1
  704. package/dist/assets/dist-qGjvyIZU.js +0 -1
  705. package/dist/assets/dockerfile-BLAGVcyS.js +0 -1
  706. package/dist/assets/documentation-panel-De-VtKhs.js +0 -1
  707. package/dist/assets/download-BVqpOaYz.js +0 -9
  708. package/dist/assets/dropdown-menu-DfGLyCbP.js +0 -1
  709. package/dist/assets/dtd-CjtwvVlM.js +0 -1
  710. package/dist/assets/dylan-D750ej-H.js +0 -1
  711. package/dist/assets/ecl-ChePjOI6.js +0 -1
  712. package/dist/assets/edit-page-ByuvhrYn.js +0 -9
  713. package/dist/assets/eiffel-MZyxske9.js +0 -1
  714. package/dist/assets/ellipsis-D0iYysLh.js +0 -1
  715. package/dist/assets/elm-gXtxhfT4.js +0 -1
  716. package/dist/assets/empty-state-QmmE2oN4.js +0 -1
  717. package/dist/assets/en-US-BXNio91F.js +0 -1
  718. package/dist/assets/erDiagram-Q2GNP2WA-x4InYUc5.js +0 -60
  719. package/dist/assets/erlang-CEe3KwR2.js +0 -1
  720. package/dist/assets/error-banner-DEWyImqa.js +0 -1
  721. package/dist/assets/error-panel-BWy0Wum5.js +0 -1
  722. package/dist/assets/es-EItoYvXh.js +0 -5
  723. package/dist/assets/esm-B_l4S2x_.js +0 -1
  724. package/dist/assets/esm-X3Tr2pur.js +0 -1
  725. package/dist/assets/external-link-BktyywYg.js +0 -1
  726. package/dist/assets/eye-off-DI0EQXw0.js +0 -1
  727. package/dist/assets/factor-Cf6jeuFE.js +0 -1
  728. package/dist/assets/factor-D7Lm0c37.js +0 -1
  729. package/dist/assets/field-DlNY-dDH.js +0 -1
  730. package/dist/assets/file-BvoBtS_V.js +0 -1
  731. package/dist/assets/file-explorer-panel-lxCbk6eL.js +0 -26
  732. package/dist/assets/file-headphone-CUN2DC78.js +0 -1
  733. package/dist/assets/file-icons-BSYRCaKq.js +0 -1
  734. package/dist/assets/file-name-input-0TQuog_P.js +0 -3
  735. package/dist/assets/fileToBase64-BSOFR3RV.js +0 -1
  736. package/dist/assets/floating-outline-Dy8nXch3.js +0 -1
  737. package/dist/assets/flowDiagram-NV44I4VS-D6dpsSFe.js +0 -162
  738. package/dist/assets/focus-CeA7VBO7.js +0 -1
  739. package/dist/assets/form-x2vXRBGq.js +0 -2
  740. package/dist/assets/formats-ZGU43GQU.js +0 -1
  741. package/dist/assets/formatting-DhA_x3cD.js +0 -1
  742. package/dist/assets/forth-cDDgSP9p.js +0 -1
  743. package/dist/assets/fortran-C8vMa5zJ.js +0 -1
  744. package/dist/assets/fullscreen-BXI8V5i6.js +0 -41
  745. package/dist/assets/gallery-page-DoxZqkrq.js +0 -1
  746. package/dist/assets/ganttDiagram-JELNMOA3-CiHe5iIm.js +0 -267
  747. package/dist/assets/gas-Df167mJ4.js +0 -1
  748. package/dist/assets/gherkin-8tk6kFf5.js +0 -1
  749. package/dist/assets/gitGraph-G5XIXVHT-DR6EWL-x.js +0 -1
  750. package/dist/assets/gitGraphDiagram-V2S2FVAM-DYyxaqXO.js +0 -65
  751. package/dist/assets/github-DghuZBnj.js +0 -1
  752. package/dist/assets/glide-data-editor-zlTMrHkt.js +0 -132
  753. package/dist/assets/globals-B2VpoaLA.js +0 -1
  754. package/dist/assets/groovy-JuojAv0H.js +0 -1
  755. package/dist/assets/haskell-Bpjctb1r.js +0 -1
  756. package/dist/assets/hat-glasses-DlK0E4SX.js +0 -1
  757. package/dist/assets/haxe-DJHguewM.js +0 -1
  758. package/dist/assets/home-page-BDr2ccto.js +0 -4
  759. package/dist/assets/hooks-C9C5iUZz.js +0 -1
  760. package/dist/assets/house-DHu4JLi3.js +0 -1
  761. package/dist/assets/html-to-image-B9XAiAY5.js +0 -2
  762. package/dist/assets/icons-avFV3lBF.js +0 -1
  763. package/dist/assets/idl-feOWH07C.js +0 -1
  764. package/dist/assets/image-BzUcK6ho.js +0 -1
  765. package/dist/assets/index-Bv_jqGHk.js +0 -38
  766. package/dist/assets/index-DZAttTAm.css +0 -2
  767. package/dist/assets/info-VBDWY6EO-CB7fium3.js +0 -1
  768. package/dist/assets/infoDiagram-HS3SLOUP-BvAjf34S.js +0 -2
  769. package/dist/assets/input-DB2LiTiQ.js +0 -1
  770. package/dist/assets/isValid-DKyiOp4U.js +0 -1
  771. package/dist/assets/javascript-BekfVgKQ.js +0 -1
  772. package/dist/assets/journeyDiagram-XKPGCS4Q-DH75OGJw.js +0 -139
  773. package/dist/assets/julia-DG-ah68k.js +0 -1
  774. package/dist/assets/kanban-definition-3W4ZIXB7-DHdmqfgQ.js +0 -89
  775. package/dist/assets/katex-CByyX_jt.js +0 -1
  776. package/dist/assets/kbd-UVzWBHfi.js +0 -1
  777. package/dist/assets/kiosk-mode-jQCgP3s9.js +0 -1
  778. package/dist/assets/label-CFvCMYuj.js +0 -1
  779. package/dist/assets/layout-CvW9L5oQ.js +0 -9
  780. package/dist/assets/line-BKm-YkCh.js +0 -1
  781. package/dist/assets/linear-BD0d4-bn.js +0 -1
  782. package/dist/assets/link-e5mRDDOC.js +0 -1
  783. package/dist/assets/links-Bof3pNQU.js +0 -1
  784. package/dist/assets/links-CCkJpphF.js +0 -1
  785. package/dist/assets/livescript-B2wfFY5r.js +0 -1
  786. package/dist/assets/logs-panel-BTnX1HXX.js +0 -1
  787. package/dist/assets/loro_wasm_bg-B9rbCmxT.js +0 -1
  788. package/dist/assets/lua-CDP4_ezR.js +0 -1
  789. package/dist/assets/marimo-icons-DuRILrB8.js +0 -1
  790. package/dist/assets/markdown-renderer-BxBgsCTf.js +0 -5
  791. package/dist/assets/mathematica-BElcKLBW.js +0 -1
  792. package/dist/assets/mbox-DlwO5A6s.js +0 -1
  793. package/dist/assets/menu-items-CQMqwayA.js +0 -1
  794. package/dist/assets/mermaid-4DMBBIKO-Bc5nhxrT.js +0 -1
  795. package/dist/assets/mermaid-CcR9c7HL.js +0 -11
  796. package/dist/assets/mermaid-parser.core-Chxpj4sw.js +0 -4
  797. package/dist/assets/message-circle-RkIzfQEi.js +0 -1
  798. package/dist/assets/mhchem-CkxmpjZ8.js +0 -1
  799. package/dist/assets/mindmap-definition-VGOIOE7T-DFjySly4.js +0 -68
  800. package/dist/assets/mirc-D6l20mh4.js +0 -1
  801. package/dist/assets/mllike-fwkzyrZt.js +0 -1
  802. package/dist/assets/modelica-DAnB6nmO.js +0 -1
  803. package/dist/assets/mscgen-Cs4VQ67l.js +0 -1
  804. package/dist/assets/multi-icon-CTvmuLdL.js +0 -1
  805. package/dist/assets/mumps-Dt8k0EUU.js +0 -1
  806. package/dist/assets/name-cell-input-DOmw-OQJ.js +0 -1
  807. package/dist/assets/nsis-C1g8DTeO.js +0 -1
  808. package/dist/assets/nsis-C5Oj2cBc.js +0 -1
  809. package/dist/assets/ntriples-DTMBUZ7F.js +0 -1
  810. package/dist/assets/number-overlay-editor-BYYoWTbS.js +0 -9
  811. package/dist/assets/numbers-_ry1Nlla.js +0 -1
  812. package/dist/assets/octave-BwfNaTxP.js +0 -1
  813. package/dist/assets/once-CXj_gH7S.js +0 -1
  814. package/dist/assets/ordinal-BEKpVWu-.js +0 -1
  815. package/dist/assets/outline-panel-CNmQqc8n.js +0 -1
  816. package/dist/assets/oz-6BWZLab7.js +0 -1
  817. package/dist/assets/package-BTIV9-Dk.js +0 -1
  818. package/dist/assets/packages-panel-COIInbnq.js +0 -1
  819. package/dist/assets/packet-DYOGHKS2-DfGBb0Dd.js +0 -1
  820. package/dist/assets/pair-with-agent-modal-CB0Cx-Eb.js +0 -4
  821. package/dist/assets/panel-context-DC1vAeB3.js +0 -1
  822. package/dist/assets/panels-CZgpp-Jc.js +0 -4
  823. package/dist/assets/pascal-64fygDAy.js +0 -1
  824. package/dist/assets/pathUtils-BXCjaLHB.js +0 -1
  825. package/dist/assets/perl-CC5X3ewy.js +0 -1
  826. package/dist/assets/pie-VRWISCQL-BUcldHEm.js +0 -1
  827. package/dist/assets/pieDiagram-ADFJNKIX-Cqy3gKwK.js +0 -30
  828. package/dist/assets/pig-DP6pbekb.js +0 -1
  829. package/dist/assets/plus-ZXRHY1up.js +0 -1
  830. package/dist/assets/popover-DMNO6Poc.js +0 -1
  831. package/dist/assets/powershell-WtGE4kBw.js +0 -1
  832. package/dist/assets/precisionRound-BOmLQIKI.js +0 -1
  833. package/dist/assets/process-output-BSGc23nl.js +0 -1
  834. package/dist/assets/properties-CRoDUVbK.js +0 -1
  835. package/dist/assets/protobuf-BS6gEp_x.js +0 -1
  836. package/dist/assets/pug-CzQlD5xP.js +0 -1
  837. package/dist/assets/pug-STAEJHPq.js +0 -1
  838. package/dist/assets/puppet-BV74Hcdf.js +0 -1
  839. package/dist/assets/purify.es-DfJp_of2.js +0 -2
  840. package/dist/assets/python-4yue3pyq.js +0 -1
  841. package/dist/assets/q-SorAikmF.js +0 -1
  842. package/dist/assets/quadrantDiagram-AYHSOK5B-B3qlPKHh.js +0 -7
  843. package/dist/assets/r-Dc7847Lm.js +0 -1
  844. package/dist/assets/radar-ZZBFDIW7-DALEitfL.js +0 -1
  845. package/dist/assets/radio-group-xSHDhdM7.js +0 -1
  846. package/dist/assets/react-vega-BVvkE5O4.js +0 -1
  847. package/dist/assets/react-vega-DJIihc-q.js +0 -188
  848. package/dist/assets/readonly-code-display-DAO13rnf.js +0 -1
  849. package/dist/assets/readonly-python-code-C12Tt_qR.js +0 -1
  850. package/dist/assets/refresh-ccw-Bee7JLOl.js +0 -1
  851. package/dist/assets/refresh-cw-C9FftltI.js +0 -1
  852. package/dist/assets/renderShortcut-DTZeni4V.js +0 -1
  853. package/dist/assets/request-registry-K6vbazWs.js +0 -1
  854. package/dist/assets/requests-KshNNAOp.js +0 -1
  855. package/dist/assets/requirementDiagram-UZGBJVZJ-C1PyB1kO.js +0 -64
  856. package/dist/assets/reveal-component-Br8zxPxo.js +0 -1069
  857. package/dist/assets/rotate-ccw-ZsOWbQCw.js +0 -1
  858. package/dist/assets/rpm-C2rCOQ1Z.js +0 -1
  859. package/dist/assets/ruby-DNrqAMg4.js +0 -1
  860. package/dist/assets/run-page-DYYDJi1y.js +0 -1
  861. package/dist/assets/runs-ChtaccFx.js +0 -1
  862. package/dist/assets/sankeyDiagram-TZEHDZUN-CWokPFKQ.js +0 -10
  863. package/dist/assets/sas-BKYzR5_z.js +0 -1
  864. package/dist/assets/save-BNNMzGly.js +0 -1
  865. package/dist/assets/save-worker-Bcr7rl0C.js +0 -77
  866. package/dist/assets/scheme-as2FasXy.js +0 -1
  867. package/dist/assets/scratchpad-panel-BpovE3w8.js +0 -1
  868. package/dist/assets/secrets-panel-B_LDPvs3.js +0 -1
  869. package/dist/assets/select-Cjly7tmx.js +0 -1
  870. package/dist/assets/sequenceDiagram-WL72ISMW-Bt2iqyTe.js +0 -145
  871. package/dist/assets/session-CsT5Gg9j.js +0 -1
  872. package/dist/assets/session-panel-D9KEIcxF.js +0 -1
  873. package/dist/assets/settings-1WkYMLdR.js +0 -1
  874. package/dist/assets/share-DQjChRJG.js +0 -1
  875. package/dist/assets/shell-Bf8Q5ES6.js +0 -1
  876. package/dist/assets/sieve-D515TmZq.js +0 -1
  877. package/dist/assets/smalltalk-DYzx-8Vf.js +0 -1
  878. package/dist/assets/snippets-panel-B0kWXd0i.js +0 -1
  879. package/dist/assets/sparkles-COaEc8Qn.js +0 -1
  880. package/dist/assets/sparql-6VnDrYOs.js +0 -1
  881. package/dist/assets/spec-CDgWI0fT.js +0 -1
  882. package/dist/assets/spinner-BbI9qk88.js +0 -1
  883. package/dist/assets/square-35tXIgiR.js +0 -1
  884. package/dist/assets/square-function-Dx0pKHko.js +0 -1
  885. package/dist/assets/src-CvyFXpBy.js +0 -1
  886. package/dist/assets/state-Csq9SFHN.js +0 -3
  887. package/dist/assets/state-DIDUL4YY.js +0 -1
  888. package/dist/assets/state-DjrxAf9W.js +0 -1
  889. package/dist/assets/state-MC8-jN2e.js +0 -1
  890. package/dist/assets/stateDiagram-FKZM4ZOC-Cu-QGXei.js +0 -1
  891. package/dist/assets/stateDiagram-v2-4FDKWEC3-C_watzL2.js +0 -1
  892. package/dist/assets/step-B5y1YzZ4.js +0 -1
  893. package/dist/assets/stex-BBWVYm-R.js +0 -1
  894. package/dist/assets/strings-DvZlHYnD.js +0 -2
  895. package/dist/assets/stylus-DUyoKY_7.js +0 -1
  896. package/dist/assets/swift-CXFwyL-K.js +0 -1
  897. package/dist/assets/swiper-component-1Qq8v34u.js +0 -1
  898. package/dist/assets/switch-DqXjpgoL.js +0 -1
  899. package/dist/assets/table-CnW850Wt.js +0 -1
  900. package/dist/assets/table-DxdydCSG.js +0 -1
  901. package/dist/assets/tcl-DbyqErhh.js +0 -1
  902. package/dist/assets/terminal-BRypP4mE.js +0 -62
  903. package/dist/assets/textarea-D_WnJbC1.js +0 -1
  904. package/dist/assets/textile-8fxKT1uq.js +0 -1
  905. package/dist/assets/time-jEmAyVx0.js +0 -1
  906. package/dist/assets/timeline-definition-IT6M3QCI-DbqS7JT0.js +0 -61
  907. package/dist/assets/timer-B6DpdVnC.js +0 -1
  908. package/dist/assets/toDate-DCE7d2fN.js +0 -1
  909. package/dist/assets/toml-BpCjWJNE.js +0 -1
  910. package/dist/assets/tooltip-CgQpRVyN.js +0 -1
  911. package/dist/assets/tracing-BnSjCbj3.js +0 -1
  912. package/dist/assets/tracing-panel-VQ2bJwVp.js +0 -2
  913. package/dist/assets/trash-2-CqTUwVuU.js +0 -1
  914. package/dist/assets/trash-BW_KaFjz.js +0 -1
  915. package/dist/assets/tree-actions-DONHntzY.js +0 -1
  916. package/dist/assets/treemap-GDKQZRPO-DD4LlMfm.js +0 -1
  917. package/dist/assets/triangle-alert-D8Ft17xk.js +0 -1
  918. package/dist/assets/troff-BhJs9Lif.js +0 -1
  919. package/dist/assets/ttcn-BVPxY_nX.js +0 -1
  920. package/dist/assets/ttcn-cfg-B4sCU0gH.js +0 -1
  921. package/dist/assets/turtle-D4EQx9sx.js +0 -1
  922. package/dist/assets/types-BnrgJ4Gh.js +0 -1
  923. package/dist/assets/useAsyncData-DAQcLiyE.js +0 -1
  924. package/dist/assets/useBoolean-DmobZaim.js +0 -1
  925. package/dist/assets/useCellActionButton-DJgU89TM.js +0 -1
  926. package/dist/assets/useDateFormatter-CAlTJ8HV.js +0 -1
  927. package/dist/assets/useDeleteCell-Dd-rdVr9.js +0 -1
  928. package/dist/assets/useDependencyPanelTab-5uO5bZY0.js +0 -1
  929. package/dist/assets/useEventListener-BakX-tnw.js +0 -1
  930. package/dist/assets/useHotkey-tGzXOQVZ.js +0 -1
  931. package/dist/assets/useIframeCapabilities-B0dNZiKK.js +0 -1
  932. package/dist/assets/useInstallPackage-C1Dd0aIZ.js +0 -1
  933. package/dist/assets/useInterval-DeSrhhRN.js +0 -1
  934. package/dist/assets/useLifecycle-Baf35rp4.js +0 -1
  935. package/dist/assets/useNotebookActions-DAyvCHVP.js +0 -1
  936. package/dist/assets/useNumberFormatter-CuxZh3Bq.js +0 -1
  937. package/dist/assets/usePress-BSFUeqnS.js +0 -7
  938. package/dist/assets/useRunCells-Dmf7GVGt.js +0 -1
  939. package/dist/assets/useSplitCell-BtwG_Ap2.js +0 -1
  940. package/dist/assets/useTheme-COorCcXC.js +0 -1
  941. package/dist/assets/utils-CCzEbCvM.js +0 -1
  942. package/dist/assets/utils-DPvpQ891.js +0 -61
  943. package/dist/assets/vb-D-5BLYdM.js +0 -1
  944. package/dist/assets/vbscript-DOZuVfk8.js +0 -1
  945. package/dist/assets/vega-component-DLk5ZoUT.js +0 -1
  946. package/dist/assets/vega-loader.browser-CZV6_g2i.js +0 -6
  947. package/dist/assets/velocity-BPduikoO.js +0 -1
  948. package/dist/assets/verilog-D9S6puFO.js +0 -1
  949. package/dist/assets/vhdl-YYXNXz0X.js +0 -1
  950. package/dist/assets/webidl-Ct7ps8LR.js +0 -1
  951. package/dist/assets/worker-Bp53hInb.js +0 -120
  952. package/dist/assets/workflow-f8flhcJ1.js +0 -1
  953. package/dist/assets/write-secret-modal-K2n79wHj.js +0 -1
  954. package/dist/assets/x-9vLEgLY6.js +0 -1
  955. package/dist/assets/xquery-9kDflInd.js +0 -1
  956. package/dist/assets/xychartDiagram-PRI3JC2R-BbSJBns5.js +0 -7
  957. package/dist/assets/yacas-u934AJft.js +0 -1
  958. package/dist/assets/youtube-NfBeYlaL.js +0 -1
  959. package/dist/assets/z80-BQ7XtT4U.js +0 -1
  960. /package/dist/assets/{Deferred-BMfCOLaw.js → Deferred-D2igisxY.js} +0 -0
  961. /package/dist/assets/{SSRProvider-DX2edArU.js → SSRProvider-BUSmWJKC.js} +0 -0
  962. /package/dist/assets/{apl-C1zdcQvI.js → apl-DVqFAlEd.js} +0 -0
  963. /package/dist/assets/{array-CEZNxKGf.js → array-Ddg9CgJT.js} +0 -0
  964. /package/dist/assets/{asciiarmor-B--OGpM1.js → asciiarmor-B45BhOLj.js} +0 -0
  965. /package/dist/assets/{asn1-D2UnMTL5.js → asn1-C4T2ctU6.js} +0 -0
  966. /package/dist/assets/{asterisk-Bjb62jej.js → asterisk-9U_4Kgke.js} +0 -0
  967. /package/dist/assets/{azure-DBVzcmvx.js → azure-nN8APleF.js} +0 -0
  968. /package/dist/assets/{blob-BiK5xmlC.js → blob-C3EfaMOb.js} +0 -0
  969. /package/dist/assets/{brainfuck-DrjMyC8V.js → brainfuck-kVh8Eud4.js} +0 -0
  970. /package/dist/assets/{bundle.esm-D544r2Sr.js → bundle.esm-D0TWQ6iT.js} +0 -0
  971. /package/dist/assets/{chunk-DR5Q36YT-SM9ZwAOv.js → chunk-DR5Q36YT-Bsu9Glc0.js} +0 -0
  972. /package/dist/assets/{cjs-DXo9vDEJ.js → cjs-D5tzp-Y6.js} +0 -0
  973. /package/dist/assets/{click-outside-container-C-40Ctlw.js → click-outside-container-CrWZsAF5.js} +0 -0
  974. /package/dist/assets/{clike-CCdVFz-6.js → clike-O0gwXilc.js} +0 -0
  975. /package/dist/assets/{clojure-BjmTMymc.js → clojure-CsbMWxp9.js} +0 -0
  976. /package/dist/assets/{clsx-BtEcuwwV.js → clsx-XrBBnd7s.js} +0 -0
  977. /package/dist/assets/{cmake-CgqRscDS.js → cmake-FpJvOdyj.js} +0 -0
  978. /package/dist/assets/{cobol-DZNhVUeB.js → cobol-Duxbpsru.js} +0 -0
  979. /package/dist/assets/{coffeescript-Qp7k0WHA.js → coffeescript-D-Unz9IP.js} +0 -0
  980. /package/dist/assets/{colors-Dm6L93c7.js → colors-C_0lIznd.js} +0 -0
  981. /package/dist/assets/{common-keywords-D_14jCw0.js → common-keywords-PqH2GDfH.js} +0 -0
  982. /package/dist/assets/{commonlisp-De6q7_JS.js → commonlisp-_nR12oc7.js} +0 -0
  983. /package/dist/assets/{createLucideIcon-BTp1tQDO.js → createLucideIcon-w-Qo9n0R.js} +0 -0
  984. /package/dist/assets/{crystal-BGXRJSF-.js → crystal-dj3W4b1A.js} +0 -0
  985. /package/dist/assets/{css-CNKF6pC6.js → css-0BG6A_BC.js} +0 -0
  986. /package/dist/assets/{cypher-BUDAQ7Fk.js → cypher-CKPokaoH.js} +0 -0
  987. /package/dist/assets/{cytoscape.esm-DHwdGdKb.js → cytoscape.esm-DzUNSF80.js} +0 -0
  988. /package/dist/assets/{d-BIAtzqpc.js → d-BrbqzVa2.js} +0 -0
  989. /package/dist/assets/{defaultLocale-DK1MWd7f.js → defaultLocale-BUCH2FMc.js} +0 -0
  990. /package/dist/assets/{defaultLocale-OkOxlkkM.js → defaultLocale-DOVIEEPN.js} +0 -0
  991. /package/dist/assets/{diff-aadYO3ro.js → diff-BmdR9FsO.js} +0 -0
  992. /package/dist/assets/{dist-COnmrAVZ.js → dist-D9sE1udr.js} +0 -0
  993. /package/dist/assets/{dtd-uNeIl1u0.js → dtd-DbCXDVgi.js} +0 -0
  994. /package/dist/assets/{duckdb-keywords-CSySeB8R.js → duckdb-keywords-mPlR0SxW.js} +0 -0
  995. /package/dist/assets/{dylan-CrZBaY0F.js → dylan-CLLzL2Js.js} +0 -0
  996. /package/dist/assets/{ebnf-KJaLpQez.js → ebnf-Cnws41cu.js} +0 -0
  997. /package/dist/assets/{ecl-ByTsrrt6.js → ecl-BC7x2nzk.js} +0 -0
  998. /package/dist/assets/{eiffel-DRhIEZQi.js → eiffel-CDU836rz.js} +0 -0
  999. /package/dist/assets/{elm-BBPeNBgT.js → elm-D-_bXARs.js} +0 -0
  1000. /package/dist/assets/{emotion-is-prop-valid.esm-CK2zY6a8.js → emotion-is-prop-valid.esm-lG8j6oqk.js} +0 -0
  1001. /package/dist/assets/{erlang-EMEOk6kj.js → erlang-CwDZk2zM.js} +0 -0
  1002. /package/dist/assets/{errors-Bi-kjxOy.js → errors-PgHhDa-M.js} +0 -0
  1003. /package/dist/assets/{esm-D8Ai_4yn.js → esm-D6WfbcL3.js} +0 -0
  1004. /package/dist/assets/{events-XR_LpvHc.js → events-90X9nql5.js} +0 -0
  1005. /package/dist/assets/{extends-CeSFM22p.js → extends-B9D0JO9U.js} +0 -0
  1006. /package/dist/assets/{fcl-Cf241iHu.js → fcl-CwkPc-_9.js} +0 -0
  1007. /package/dist/assets/{forth-BdKkHzwH.js → forth-D6FsO_8x.js} +0 -0
  1008. /package/dist/assets/{fortran-DxGNM9Kj.js → fortran-D4BMbIkG.js} +0 -0
  1009. /package/dist/assets/{gas-hf-H6Zc4.js → gas-JFjzcgdY.js} +0 -0
  1010. /package/dist/assets/{gherkin-D1O_VlrS.js → gherkin-Cyu-qGaF.js} +0 -0
  1011. /package/dist/assets/{groovy-Budmgm6I.js → groovy-CZaE9eN-.js} +0 -0
  1012. /package/dist/assets/{haskell-CDrggYs0.js → haskell-Dc6o0IGr.js} +0 -0
  1013. /package/dist/assets/{haxe-CPnBkTzf.js → haxe-Bsf0tzqs.js} +0 -0
  1014. /package/dist/assets/{http-_roNBajA.js → http-BQNSD-HR.js} +0 -0
  1015. /package/dist/assets/{idl-BTZd0S94.js → idl-1W91kQ8_.js} +0 -0
  1016. /package/dist/assets/{init-BpLL1fe9.js → init-nx27Zb9l.js} +0 -0
  1017. /package/dist/assets/{invariant-C2E8KCbD.js → invariant-CkiqGLcK.js} +0 -0
  1018. /package/dist/assets/{javascript-Czx24F5X.js → javascript-BZ81-2rO.js} +0 -0
  1019. /package/dist/assets/{jsx-runtime-PbYoItBR.js → jsx-runtime-Blw4afVn.js} +0 -0
  1020. /package/dist/assets/{julia-OeEN0FvJ.js → julia-BZOsq0r_.js} +0 -0
  1021. /package/dist/assets/{katex-C5COVNYq.js → katex-CvZ3kCGk.js} +0 -0
  1022. /package/dist/assets/{livescript-DLmsZIyI.js → livescript-CNZfmikk.js} +0 -0
  1023. /package/dist/assets/{loro_wasm_bg-BFCm9sQd.js → loro_wasm_bg-RNUly1SE.js} +0 -0
  1024. /package/dist/assets/{lua-BM3BXoTQ.js → lua-DXGRliwd.js} +0 -0
  1025. /package/dist/assets/{main-DmhaVp6Y.js → main-BNL5rxQw.js} +0 -0
  1026. /package/dist/assets/{math-CpvW-dlE.js → math-CLO4uoaP.js} +0 -0
  1027. /package/dist/assets/{mathematica-BbPQ8-Rw.js → mathematica-BoUj8M7D.js} +0 -0
  1028. /package/dist/assets/{mbox-D2_16jOO.js → mbox-DLVP8LAe.js} +0 -0
  1029. /package/dist/assets/{micromark-factory-space-BUQpMdx2.js → micromark-factory-space-Dx_STMJD.js} +0 -0
  1030. /package/dist/assets/{mirc-CzS_wutP.js → mirc-kI4d5fMu.js} +0 -0
  1031. /package/dist/assets/{mllike-D9b50pH5.js → mllike-CD9vBc_2.js} +0 -0
  1032. /package/dist/assets/{modelica-C8E83p8w.js → modelica-DgfsLJuF.js} +0 -0
  1033. /package/dist/assets/{mscgen-Dk-3wFOB.js → mscgen-B1HDwshJ.js} +0 -0
  1034. /package/dist/assets/{mumps-BRQASZoy.js → mumps-D_-b9TZD.js} +0 -0
  1035. /package/dist/assets/{nginx-Dfd7l9Sj.js → nginx-Cm282mo8.js} +0 -0
  1036. /package/dist/assets/{node-sql-parser-DfWMhh1q.js → node-sql-parser-BWgUjcfV.js} +0 -0
  1037. /package/dist/assets/{ntriples-D6VU4eew.js → ntriples-COX9JFZ8.js} +0 -0
  1038. /package/dist/assets/{objectWithoutPropertiesLoose-BkUn3I0-.js → objectWithoutPropertiesLoose-CboCOq4o.js} +0 -0
  1039. /package/dist/assets/{octave-xff1drIF.js → octave-BejycR79.js} +0 -0
  1040. /package/dist/assets/{oz-CRz8coQc.js → oz-CFFivrGn.js} +0 -0
  1041. /package/dist/assets/{pascal-DZhgfws7.js → pascal-B_p9jkCs.js} +0 -0
  1042. /package/dist/assets/{path-DtYs9Dst.js → path-Bz_hIzg5.js} +0 -0
  1043. /package/dist/assets/{paths-DhuNSnZ_.js → paths-BKO-pHK6.js} +0 -0
  1044. /package/dist/assets/{perl-BKXEkch3.js → perl-C-SFBTly.js} +0 -0
  1045. /package/dist/assets/{pig-rvFhLOOE.js → pig-BhxDMp2k.js} +0 -0
  1046. /package/dist/assets/{powershell-Db7zgjV-.js → powershell-c59M-9N2.js} +0 -0
  1047. /package/dist/assets/{preload-helper-BW0IMuFq.js → preload-helper-TXkS1QI3.js} +0 -0
  1048. /package/dist/assets/{prop-types-B6Y2e__V.js → prop-types-C638SUfx.js} +0 -0
  1049. /package/dist/assets/{properties-BF6anRzc.js → properties-D1JNwCKy.js} +0 -0
  1050. /package/dist/assets/{protobuf-De4giNfG.js → protobuf-DQS7ex8R.js} +0 -0
  1051. /package/dist/assets/{puppet-CMgcPW4L.js → puppet-DaQvhvew.js} +0 -0
  1052. /package/dist/assets/{python-DOZzlkV_.js → python-XHl3eRTS.js} +0 -0
  1053. /package/dist/assets/{q-8XMigH-s.js → q-DppnoRE3.js} +0 -0
  1054. /package/dist/assets/{r-BuEncdBJ.js → r-D8-F_FWj.js} +0 -0
  1055. /package/dist/assets/{range-DNqFcYmr.js → range-u_glTVdi.js} +0 -0
  1056. /package/dist/assets/{react-icons.esm-DCqqMD4w.js → react-icons.esm-D4GMDkIf.js} +0 -0
  1057. /package/dist/assets/{react-resizable-panels.browser.esm-Ce2ksurd.js → react-resizable-panels.browser.esm-Z-MD3n3J.js} +0 -0
  1058. /package/dist/assets/{requests-DqJEWJ-Q.js → requests-DYeT4CEe.js} +0 -0
  1059. /package/dist/assets/{rpm-DnfrioeJ.js → rpm-CegJhNNO.js} +0 -0
  1060. /package/dist/assets/{ruby-C9f8lbWZ.js → ruby-YMIxufV1.js} +0 -0
  1061. /package/dist/assets/{sas-TQvbwzLU.js → sas-wTtX9UIQ.js} +0 -0
  1062. /package/dist/assets/{scheme-DCJ8_Fy0.js → scheme-BGenom3k.js} +0 -0
  1063. /package/dist/assets/{semaphore-X3ApuO41.js → semaphore-DtBYRzWS.js} +0 -0
  1064. /package/dist/assets/{shell-D8pt0LM7.js → shell-Bu1sLaiP.js} +0 -0
  1065. /package/dist/assets/{sieve-DGXZ82l_.js → sieve-ffe6rUQh.js} +0 -0
  1066. /package/dist/assets/{simple-mode-B3UD3n_i.js → simple-mode-DBSzUJLA.js} +0 -0
  1067. /package/dist/assets/{smalltalk-DyRmt5Ka.js → smalltalk-NU5EGjHp.js} +0 -0
  1068. /package/dist/assets/{solr-CJeCgAfj.js → solr-ptw1yIqO.js} +0 -0
  1069. /package/dist/assets/{sparql-CLILkzHY.js → sparql-uqVktnwO.js} +0 -0
  1070. /package/dist/assets/{spreadsheet-BYYvgLKe.js → spreadsheet-VEzeu_mb.js} +0 -0
  1071. /package/dist/assets/{sql-B5I6FC3m.js → sql-tYjnWETe.js} +0 -0
  1072. /package/dist/assets/{src-CW27-Kjl.js → src-BshXgZd4.js} +0 -0
  1073. /package/dist/assets/{stex-0ac7Aukl.js → stex-FMMSUPAS.js} +0 -0
  1074. /package/dist/assets/{stylus-BCmjnwMM.js → stylus-B2E6Ulaz.js} +0 -0
  1075. /package/dist/assets/{swift-BkcVjmPv.js → swift-Rmnn7ATv.js} +0 -0
  1076. /package/dist/assets/{tcl-B3wbfJh2.js → tcl-ZPWCn2nn.js} +0 -0
  1077. /package/dist/assets/{textile-D12VShq0.js → textile-uhA33kFk.js} +0 -0
  1078. /package/dist/assets/{tiddlywiki-hmNzZkq6.js → tiddlywiki-CPkGLyXH.js} +0 -0
  1079. /package/dist/assets/{tiki-BL1SzuSx.js → tiki-BtjLo8OF.js} +0 -0
  1080. /package/dist/assets/{toml-XXoBgyAV.js → toml-BFZv2Mv7.js} +0 -0
  1081. /package/dist/assets/{treemap-qinQgXo1.js → treemap-Bca0xNNq.js} +0 -0
  1082. /package/dist/assets/{troff-D9lX0BP4.js → troff-B5eayHop.js} +0 -0
  1083. /package/dist/assets/{ttcn-DQ5upjvU.js → ttcn-BM0Yp8NY.js} +0 -0
  1084. /package/dist/assets/{ttcn-cfg-pqnJIxH9.js → ttcn-cfg-CfbkL3Q_.js} +0 -0
  1085. /package/dist/assets/{turtle-BUVCUZMx.js → turtle-DvetLxrv.js} +0 -0
  1086. /package/dist/assets/{types-D4wsSrXa.js → types-Da7lA5YC.js} +0 -0
  1087. /package/dist/assets/{use-toast-kCNiuc-_.js → use-toast-BwJoaaDM.js} +0 -0
  1088. /package/dist/assets/{useDebounce-CpLI2dsc.js → useDebounce-JDKr83KO.js} +0 -0
  1089. /package/dist/assets/{useDeepCompareMemoize-CWcgQCbT.js → useDeepCompareMemoize-CSMoa-ga.js} +0 -0
  1090. /package/dist/assets/{useNonce-0SWz6w4W.js → useNonce-CbdaHKzX.js} +0 -0
  1091. /package/dist/assets/{uuid-ClFZlR7U.js → uuid-ImXS-885.js} +0 -0
  1092. /package/dist/assets/{vb-CgKmZtlp.js → vb-i5Z8scch.js} +0 -0
  1093. /package/dist/assets/{vbscript-mB-oVfPH.js → vbscript-BiPYgIyi.js} +0 -0
  1094. /package/dist/assets/{velocity-CrvX3BFT.js → velocity-Dw3R3YoX.js} +0 -0
  1095. /package/dist/assets/{verilog-C0Wzs7-f.js → verilog-B8FhJcX6.js} +0 -0
  1096. /package/dist/assets/{vhdl-s8UGv0A3.js → vhdl-BqPEoXdJ.js} +0 -0
  1097. /package/dist/assets/{web-vitals-B8i8c08M.js → web-vitals-CwE0GGzl.js} +0 -0
  1098. /package/dist/assets/{webidl-GTmlnawS.js → webidl-mMO-qW5Q.js} +0 -0
  1099. /package/dist/assets/{ws-DSN-Rmiu.js → ws-BmTnbVEi.js} +0 -0
  1100. /package/dist/assets/{xquery-Bq3_mXJv.js → xquery-DvqNwq7L.js} +0 -0
  1101. /package/dist/assets/{yacas-B1P8UzPS.js → yacas-Dku9Z6Kf.js} +0 -0
  1102. /package/dist/assets/{z80-C8FzIVqi.js → z80-DvazU5Tr.js} +0 -0
@@ -0,0 +1,176 @@
1
+ /* Copyright 2026 Marimo. All rights reserved. */
2
+
3
+ import { beforeEach, describe, expect, expectTypeOf, it, vi } from "vitest";
4
+ import type * as MainModule from "../main";
5
+
6
+ // `main.ts` is the public islands entry point (see islands/vite.config.mts),
7
+ // so this suite snapshots its export surface + signatures and covers each
8
+ // entry point. The real bridge/bootstrap spin up a Web Worker and the plugin
9
+ // runtime, so we mock them.
10
+ const mockInitializeApps = vi.fn(() => Promise.resolve());
11
+ const mockStopSession = vi.fn((_appId?: string) => Promise.resolve());
12
+ const mockInitializeIslands = vi.fn(() => Promise.resolve());
13
+ const mockParseMarimoIslandApps = vi.fn(() => [] as Array<{ id: string }>);
14
+
15
+ vi.mock("@/core/islands/bridge", () => ({
16
+ getGlobalBridge: () => ({
17
+ initializeApps: mockInitializeApps,
18
+ stopSession: mockStopSession,
19
+ }),
20
+ }));
21
+
22
+ vi.mock("@/core/islands/bootstrap", () => ({
23
+ initializeIslands: mockInitializeIslands,
24
+ }));
25
+
26
+ vi.mock("@/core/islands/parse", () => ({
27
+ parseMarimoIslandApps: mockParseMarimoIslandApps,
28
+ }));
29
+
30
+ /**
31
+ * Re-import a fresh copy of `main.ts` so the module-level `bootstrapPromise`
32
+ * memoization does not leak between tests. The module auto-runs `initialize()`
33
+ * on load, so we clear the DOM first to keep that a no-op.
34
+ */
35
+ async function importMain(): Promise<typeof MainModule> {
36
+ vi.resetModules();
37
+ return import("../main");
38
+ }
39
+
40
+ beforeEach(() => {
41
+ document.body.replaceChildren();
42
+ mockInitializeApps.mockClear();
43
+ mockStopSession.mockClear();
44
+ mockInitializeIslands.mockClear();
45
+ mockParseMarimoIslandApps.mockReset();
46
+ mockParseMarimoIslandApps.mockReturnValue([]);
47
+ });
48
+
49
+ describe("islands public API surface", () => {
50
+ it("exposes a stable set of exports and signatures", async () => {
51
+ const mod = await importMain();
52
+ const surface = Object.fromEntries(
53
+ Object.keys(mod)
54
+ .toSorted()
55
+ .map((key) => {
56
+ const value = (mod as Record<string, unknown>)[key];
57
+ return [
58
+ key,
59
+ typeof value === "function"
60
+ ? `function(arity ${value.length})`
61
+ : typeof value,
62
+ ];
63
+ }),
64
+ );
65
+
66
+ expect(surface).toMatchInlineSnapshot(`
67
+ {
68
+ "canReplaceApp": "function(arity 0)",
69
+ "initialize": "function(arity 0)",
70
+ "stopApp": "function(arity 1)",
71
+ }
72
+ `);
73
+ });
74
+
75
+ it("matches the declared TypeScript signatures", () => {
76
+ expectTypeOf<typeof MainModule.canReplaceApp>().toEqualTypeOf<
77
+ () => boolean
78
+ >();
79
+ expectTypeOf<typeof MainModule.initialize>().toEqualTypeOf<
80
+ () => Promise<void>
81
+ >();
82
+ expectTypeOf<typeof MainModule.stopApp>().toEqualTypeOf<
83
+ (appId?: string) => Promise<void>
84
+ >();
85
+ });
86
+ });
87
+
88
+ describe("canReplaceApp", () => {
89
+ it("returns false when the document has no island element", async () => {
90
+ const mod = await importMain();
91
+
92
+ expect(mod.canReplaceApp()).toBe(false);
93
+ // Short-circuits on the DOM guard before parsing.
94
+ expect(mockParseMarimoIslandApps).not.toHaveBeenCalled();
95
+ });
96
+
97
+ it("returns true for exactly one app without materializing the DOM", async () => {
98
+ const mod = await importMain();
99
+ document.body.innerHTML = `<marimo-island data-app-id="app-1"></marimo-island>`;
100
+ mockParseMarimoIslandApps.mockReturnValue([{ id: "app-1" }]);
101
+
102
+ expect(mod.canReplaceApp()).toBe(true);
103
+ // A probe must not mutate island attributes.
104
+ expect(mockParseMarimoIslandApps).toHaveBeenCalledWith(document, {
105
+ materialize: false,
106
+ });
107
+ });
108
+
109
+ it("returns false when more than one app is present", async () => {
110
+ const mod = await importMain();
111
+ document.body.innerHTML = `<marimo-island data-app-id="app-1"></marimo-island>`;
112
+ mockParseMarimoIslandApps.mockReturnValue([
113
+ { id: "app-1" },
114
+ { id: "app-2" },
115
+ ]);
116
+
117
+ expect(mod.canReplaceApp()).toBe(false);
118
+ });
119
+
120
+ it("returns false when the island parses into zero apps", async () => {
121
+ const mod = await importMain();
122
+ document.body.innerHTML = `<marimo-island></marimo-island>`;
123
+ mockParseMarimoIslandApps.mockReturnValue([]);
124
+
125
+ expect(mod.canReplaceApp()).toBe(false);
126
+ });
127
+ });
128
+
129
+ describe("stopApp", () => {
130
+ it("forwards the requested app id to the bridge", async () => {
131
+ const mod = await importMain();
132
+
133
+ await mod.stopApp("app-7");
134
+ expect(mockStopSession).toHaveBeenCalledWith("app-7");
135
+
136
+ await mod.stopApp();
137
+ expect(mockStopSession).toHaveBeenLastCalledWith(undefined);
138
+ });
139
+ });
140
+
141
+ describe("initialize", () => {
142
+ it("skips bootstrap and app start when no islands are present", async () => {
143
+ const mod = await importMain();
144
+
145
+ await mod.initialize();
146
+
147
+ expect(mockInitializeIslands).not.toHaveBeenCalled();
148
+ expect(mockInitializeApps).not.toHaveBeenCalled();
149
+ });
150
+
151
+ it("bootstraps once, marks islands, and starts apps on each call", async () => {
152
+ const mod = await importMain();
153
+ document.body.innerHTML = `<marimo-island></marimo-island>`;
154
+
155
+ await mod.initialize();
156
+ await mod.initialize();
157
+
158
+ expect(mockInitializeIslands).toHaveBeenCalledOnce();
159
+ expect(mockInitializeApps).toHaveBeenCalledTimes(2);
160
+ expect(
161
+ document.querySelector("marimo-island")?.classList.contains("marimo"),
162
+ ).toBe(true);
163
+ });
164
+
165
+ it("clears the memoized bootstrap when it fails so it can be retried", async () => {
166
+ const mod = await importMain();
167
+ document.body.innerHTML = `<marimo-island></marimo-island>`;
168
+ mockInitializeIslands.mockRejectedValueOnce(new Error("bootstrap failed"));
169
+
170
+ await expect(mod.initialize()).rejects.toThrow("bootstrap failed");
171
+ await mod.initialize();
172
+
173
+ expect(mockInitializeIslands).toHaveBeenCalledTimes(2);
174
+ expect(mockInitializeApps).toHaveBeenCalledOnce();
175
+ });
176
+ });
@@ -15,6 +15,7 @@ import {
15
15
  parseIslandElement,
16
16
  parseIslandElementsIntoApps,
17
17
  parseMarimoIslandApps,
18
+ retainIslandSource,
18
19
  } from "../parse";
19
20
  import { createMockIslandElement, createMockIslands } from "./test-utils.tsx";
20
21
 
@@ -53,6 +54,7 @@ function appendPayload(
53
54
  script.type = ISLANDS_JSON_SCRIPT_TYPE;
54
55
  script.textContent = JSON.stringify(payload);
55
56
  root.appendChild(script);
57
+ return script;
56
58
  }
57
59
 
58
60
  describe("createMarimoFile", () => {
@@ -317,6 +319,39 @@ describe("parseIslandElement", () => {
317
319
 
318
320
  expect(result).toBeNull();
319
321
  });
322
+
323
+ it("uses retained source after the custom element renders", () => {
324
+ const element = document.createElement(ISLAND_TAG_NAMES.ISLAND);
325
+ retainIslandSource(element, {
326
+ code: 'print("retained")',
327
+ output: "<div>retained output</div>",
328
+ });
329
+
330
+ expect(parseIslandElement(element)).toEqual({
331
+ code: 'print("retained")',
332
+ output: "<div>retained output</div>",
333
+ });
334
+
335
+ retainIslandSource(element, { code: "", output: "<div>static</div>" });
336
+ expect(parseIslandElement(element)).toBeNull();
337
+ });
338
+
339
+ it("prefers new live source when an island element is reused", () => {
340
+ const element = createMockIslandElement({
341
+ code: 'print("new")',
342
+ innerHTML: "<div>new output</div>",
343
+ });
344
+ element.setAttribute(ISLAND_DATA_ATTRIBUTES.REACTIVE, "true");
345
+ retainIslandSource(element, {
346
+ code: 'print("retained")',
347
+ output: "<div>retained output</div>",
348
+ });
349
+
350
+ expect(parseIslandElement(element)).toEqual({
351
+ code: 'print("new")',
352
+ output: "<div>new output</div>",
353
+ });
354
+ });
320
355
  });
321
356
 
322
357
  describe("parseIslandElementsIntoApps", () => {
@@ -630,6 +665,76 @@ describe("parseMarimoIslandApps", () => {
630
665
  );
631
666
  });
632
667
 
668
+ it("preserves payload-backed cells after a non-materializing capability probe", () => {
669
+ const island = createMockIslandElement({
670
+ appId: "app1",
671
+ cellId: "cell-2",
672
+ code: "dom_code = True",
673
+ innerHTML: "<div>dom output</div>",
674
+ });
675
+ island.setAttribute(ISLAND_DATA_ATTRIBUTES.REACTIVE, "true");
676
+ container.appendChild(island);
677
+ appendPayload(container, {
678
+ schemaVersion: 1,
679
+ appId: "app1",
680
+ cells: [createPayloadCell({ cellId: "cell-2" })],
681
+ });
682
+ const originalIsland = island.outerHTML;
683
+
684
+ const probed = parseMarimoIslandApps(container, { materialize: false });
685
+
686
+ expect(probed).toHaveLength(1);
687
+ expect(island.outerHTML).toBe(originalIsland);
688
+
689
+ expect(parseMarimoIslandApps(container)).toEqual(probed);
690
+ expect(island.getAttribute(ISLAND_DATA_ATTRIBUTES.CELL_ID)).toBeNull();
691
+ expect(island.getAttribute(ISLAND_DATA_ATTRIBUTES.CELL_IDX)).toBe("0");
692
+ });
693
+
694
+ it("refreshes a reused payload anchor when its content changes", () => {
695
+ const island = createMockIslandElement({
696
+ appId: "app1",
697
+ cellId: "cell-1",
698
+ code: 'print("dom")',
699
+ innerHTML: "<div>dom output</div>",
700
+ });
701
+ island.insertAdjacentHTML(
702
+ "beforeend",
703
+ '<div data-marimo-element><marimo-code-editor data-initial-value="old"></marimo-code-editor></div>',
704
+ );
705
+ island.setAttribute(ISLAND_DATA_ATTRIBUTES.REACTIVE, "true");
706
+ container.appendChild(island);
707
+ const script = appendPayload(container, {
708
+ schemaVersion: 1,
709
+ appId: "app1",
710
+ cells: [createPayloadCell()],
711
+ });
712
+ parseMarimoIslandApps(container);
713
+
714
+ script.textContent = JSON.stringify({
715
+ schemaVersion: 1,
716
+ appId: "app1",
717
+ cells: [
718
+ createPayloadCell({
719
+ code: 'print("updated")',
720
+ outputHtml: "<div>updated output</div>",
721
+ }),
722
+ ],
723
+ });
724
+
725
+ parseMarimoIslandApps(container);
726
+
727
+ expect(extractIslandCodeFromEmbed(island)).toBe('print("updated")');
728
+ expect(island.querySelector(ISLAND_TAG_NAMES.CELL_OUTPUT)?.innerHTML).toBe(
729
+ "<div>updated output</div>",
730
+ );
731
+ expect(
732
+ island
733
+ .querySelector(ISLAND_TAG_NAMES.CODE_EDITOR)
734
+ ?.getAttribute("data-initial-value"),
735
+ ).toBe(JSON.stringify('print("updated")'));
736
+ });
737
+
633
738
  it("should parse Python-generated island payload snapshots", () => {
634
739
  const html = readFileSync(
635
740
  new URL(
@@ -108,14 +108,17 @@ export async function initializeIslands(
108
108
  // Loading indicator: dim islands while Pyodide initializes
109
109
  store.sub(shouldShowIslandsWarningIndicatorAtom, () => {
110
110
  const showing = store.get(shouldShowIslandsWarningIndicatorAtom);
111
+ const currentIslands = root.querySelectorAll<HTMLElement>(
112
+ ISLAND_TAG_NAMES.ISLAND,
113
+ );
111
114
  if (showing) {
112
115
  toastIslandsLoading();
113
- for (const island of islands) {
116
+ for (const island of currentIslands) {
114
117
  island.style.setProperty("opacity", "0.5");
115
118
  }
116
119
  } else {
117
120
  dismissIslandsLoadingToast();
118
- for (const island of islands) {
121
+ for (const island of currentIslands) {
119
122
  island.style.removeProperty("opacity");
120
123
  }
121
124
  }
@@ -208,7 +211,9 @@ function handleMessage(
208
211
  setKernelState: Functions.NOOP,
209
212
  onError: Logger.error,
210
213
  });
211
- defineCustomElement(ISLAND_TAG_NAMES.ISLAND, MarimoIslandElement);
214
+ if (!window.customElements?.get(ISLAND_TAG_NAMES.ISLAND)) {
215
+ defineCustomElement(ISLAND_TAG_NAMES.ISLAND, MarimoIslandElement);
216
+ }
212
217
  return;
213
218
 
214
219
  case "send-ui-element-message":
@@ -7,6 +7,7 @@ import { throwNotImplemented } from "@/utils/functions";
7
7
  import type { JsonString } from "@/utils/json/base64";
8
8
  import { Logger } from "@/utils/Logger";
9
9
  import { generateUUID } from "@/utils/uuid";
10
+ import { initialNotebookState, notebookAtom } from "../cells/cells";
10
11
  import type { CommandMessage, NotificationPayload } from "../kernel/messages";
11
12
  import type { EditRequests, RunRequests } from "../network/types";
12
13
  import { store as defaultStore } from "../state/jotai";
@@ -35,11 +36,12 @@ export interface IslandsBridgeConfig {
35
36
  * Optional root element for parsing islands (for testing)
36
37
  */
37
38
  root?: Document | Element;
39
+ }
38
40
 
39
- /**
40
- * Whether to auto-start sessions on worker ready (default: true)
41
- */
42
- autoStartSessions?: boolean;
41
+ interface AppSession {
42
+ appId: string;
43
+ code?: string;
44
+ sessionGeneration: number;
43
45
  }
44
46
 
45
47
  /**
@@ -51,8 +53,8 @@ export interface IslandsBridgeConfig {
51
53
  * @example
52
54
  * ```ts
53
55
  * const bridge = new IslandsPyodideBridge();
54
- * await bridge.initialized;
55
56
  * bridge.consumeMessages(message => console.log(message));
57
+ * await bridge.initializeApps();
56
58
  * ```
57
59
  */
58
60
  export class IslandsPyodideBridge implements RunRequests, EditRequests {
@@ -62,14 +64,17 @@ export class IslandsPyodideBridge implements RunRequests, EditRequests {
62
64
  | undefined;
63
65
  private readonly store: typeof defaultStore;
64
66
  private readonly root: Document | Element;
65
- private readonly autoStartSessions: boolean;
67
+ private session: AppSession | undefined;
68
+ private sessionReady = new Deferred<AppSession>();
69
+ private nextSessionGeneration = 0;
70
+ private appTransition = Promise.resolve();
71
+ private workerReady = new Deferred<void>();
66
72
 
67
73
  public initialized = new Deferred<void>();
68
74
 
69
75
  constructor(config: IslandsBridgeConfig = {}) {
70
76
  this.store = config.store || defaultStore;
71
77
  this.root = config.root || document;
72
- this.autoStartSessions = config.autoStartSessions ?? true;
73
78
 
74
79
  try {
75
80
  const factory = config.workerFactory || new DefaultWorkerFactory();
@@ -88,9 +93,7 @@ export class IslandsPyodideBridge implements RunRequests, EditRequests {
88
93
  */
89
94
  private setupMessageListeners(): void {
90
95
  this.rpc.addMessageListener("ready", () => {
91
- if (this.autoStartSessions) {
92
- this.startSessionsForAllApps();
93
- }
96
+ this.workerReady.resolve();
94
97
  });
95
98
 
96
99
  this.rpc.addMessageListener("initialized", () => {
@@ -115,11 +118,16 @@ export class IslandsPyodideBridge implements RunRequests, EditRequests {
115
118
  );
116
119
  }
117
120
 
118
- /**
119
- * Starts sessions for all apps found in the DOM
120
- */
121
- private startSessionsForAllApps(): void {
121
+ async initializeApps(): Promise<void> {
122
+ await this.enqueueAppTransition(async () => {
123
+ await this.workerReady.promise;
124
+ await this.startApps();
125
+ });
126
+ }
127
+
128
+ private async startApps(): Promise<void> {
122
129
  const apps = parseMarimoIslandApps(this.root);
130
+ const managesSingleApp = apps.length === 1;
123
131
  Logger.debug(
124
132
  `Starting sessions for ${apps.length} app(s):`,
125
133
  apps.map((a) => `${a.id} (${a.cells.length} cells)`),
@@ -134,20 +142,83 @@ export class IslandsPyodideBridge implements RunRequests, EditRequests {
134
142
  const notebookCode = exportContext?.notebookCode;
135
143
  for (const app of apps) {
136
144
  const file = notebookCode || createMarimoFile(app);
145
+ if (
146
+ managesSingleApp &&
147
+ this.session?.appId === app.id &&
148
+ this.session.code === file
149
+ ) {
150
+ return;
151
+ }
137
152
  Logger.debug(`App ${app.id} marimo file:\n`, file);
138
- this.startSession({
153
+ const request = {
139
154
  code: file,
140
155
  appId: app.id,
141
- }).catch((error) => {
156
+ sessionGeneration: ++this.nextSessionGeneration,
157
+ };
158
+ const previousSession = this.session;
159
+ const replacesSession = managesSingleApp && previousSession !== undefined;
160
+ if (replacesSession) {
161
+ this.store.set(notebookAtom, initialNotebookState());
162
+ }
163
+ if (managesSingleApp || !previousSession) {
164
+ if (managesSingleApp && this.sessionReady.status !== "pending") {
165
+ this.sessionReady = new Deferred<AppSession>();
166
+ }
167
+ this.session = {
168
+ ...request,
169
+ code: managesSingleApp ? file : undefined,
170
+ };
171
+ }
172
+ const operation = replacesSession
173
+ ? this.rpc.proxy.request.replaceSession(request)
174
+ : this.startSession(request);
175
+ try {
176
+ await operation;
177
+ if (this.sessionReady.status === "pending" && this.session) {
178
+ this.sessionReady.resolve(this.session);
179
+ }
180
+ } catch (error) {
181
+ if (this.session?.sessionGeneration === request.sessionGeneration) {
182
+ this.session = previousSession;
183
+ }
142
184
  Logger.error(`Failed to start session for app ${app.id}:`, error);
143
- });
185
+ if (managesSingleApp) {
186
+ throw error;
187
+ }
188
+ }
144
189
  }
145
190
  }
146
191
 
192
+ async stopSession(appId?: string): Promise<void> {
193
+ await this.enqueueAppTransition(async () => {
194
+ const session = this.session;
195
+ if (session?.code === undefined || (appId && session.appId !== appId)) {
196
+ return;
197
+ }
198
+ await this.rpc.proxy.request.stopSession({
199
+ appId: session.appId,
200
+ sessionGeneration: session.sessionGeneration,
201
+ });
202
+ this.session = undefined;
203
+ this.sessionReady = new Deferred<AppSession>();
204
+ this.store.set(notebookAtom, initialNotebookState());
205
+ });
206
+ }
207
+
208
+ private enqueueAppTransition(operation: () => Promise<void>): Promise<void> {
209
+ const result = this.appTransition.then(operation);
210
+ this.appTransition = result.catch(() => undefined);
211
+ return result;
212
+ }
213
+
147
214
  /**
148
215
  * Starts a new Python session for an app
149
216
  */
150
- async startSession(opts: { code: string; appId: string }): Promise<void> {
217
+ async startSession(opts: {
218
+ code: string;
219
+ appId: string;
220
+ sessionGeneration: number;
221
+ }): Promise<void> {
151
222
  await this.rpc.proxy.request.startSession(opts);
152
223
  }
153
224
 
@@ -203,11 +274,19 @@ export class IslandsPyodideBridge implements RunRequests, EditRequests {
203
274
  // ============================================================================
204
275
 
205
276
  sendRun: EditRequests["sendRun"] = async (request): Promise<null> => {
206
- await this.rpc.proxy.request.loadPackages(request.codes.join("\n"));
207
- await this.putControlRequest({
208
- type: "execute-cells",
209
- ...request,
277
+ const session = await this.getActiveSession();
278
+ await this.rpc.proxy.request.loadPackages({
279
+ appId: session.appId,
280
+ code: request.codes.join("\n"),
281
+ sessionGeneration: session.sessionGeneration,
210
282
  });
283
+ await this.putControlRequest(
284
+ {
285
+ type: "execute-cells",
286
+ ...request,
287
+ },
288
+ session,
289
+ );
211
290
  return null;
212
291
  };
213
292
 
@@ -216,6 +295,7 @@ export class IslandsPyodideBridge implements RunRequests, EditRequests {
216
295
  // ============================================================================
217
296
 
218
297
  getUsageStats = throwNotImplemented;
298
+ getEnvironmentInfo = throwNotImplemented;
219
299
  sendRename = throwNotImplemented;
220
300
  sendSave = throwNotImplemented;
221
301
  sendCopy = throwNotImplemented;
@@ -278,13 +358,27 @@ export class IslandsPyodideBridge implements RunRequests, EditRequests {
278
358
 
279
359
  // The kernel uses msgspec to parse control requests, which requires a 'type'
280
360
  // field for discriminated union deserialization.
281
- private async putControlRequest(operation: CommandMessage): Promise<void> {
361
+ private async putControlRequest(
362
+ operation: CommandMessage,
363
+ session?: AppSession,
364
+ ): Promise<void> {
365
+ session ??= await this.getActiveSession();
282
366
  await this.rpc.proxy.request.bridge({
367
+ appId: session.appId,
283
368
  functionName: "put_control_request",
284
369
  payload: operation,
370
+ sessionGeneration: session.sessionGeneration,
285
371
  });
286
372
  }
287
373
 
374
+ private async getActiveSession(): Promise<AppSession> {
375
+ const transition = this.appTransition;
376
+ const session = this.session;
377
+ const ready = this.sessionReady;
378
+ await transition;
379
+ return session ?? ready.promise;
380
+ }
381
+
288
382
  /**
289
383
  * Cleans up resources (for testing)
290
384
  */