@marimo-team/frontend 0.23.15-dev7 → 0.23.15-dev71

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 (1108) 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-CQErELbD.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-D8mKmEIz.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-D89u30n-.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__/bootstrap.test.ts +61 -0
  492. package/src/core/islands/__tests__/bridge.test.ts +373 -47
  493. package/src/core/islands/__tests__/main.test.ts +176 -0
  494. package/src/core/islands/__tests__/parse.test.ts +105 -0
  495. package/src/core/islands/bootstrap.ts +28 -5
  496. package/src/core/islands/bridge.ts +140 -39
  497. package/src/core/islands/components/__tests__/web-components.test.tsx +248 -0
  498. package/src/core/islands/components/output-wrapper.tsx +4 -1
  499. package/src/core/islands/components/web-components.tsx +76 -15
  500. package/src/core/islands/constants.ts +1 -0
  501. package/src/core/islands/main.ts +69 -3
  502. package/src/core/islands/parse.ts +70 -23
  503. package/src/core/islands/state.ts +9 -0
  504. package/src/core/islands/worker/__tests__/controller.test.ts +173 -0
  505. package/src/core/islands/worker/worker.tsx +159 -63
  506. package/src/core/network/__tests__/requests-lazy.test.ts +18 -0
  507. package/src/core/network/__tests__/requests-network.test.ts +7 -0
  508. package/src/core/network/requests-lazy.ts +13 -1
  509. package/src/core/network/requests-network.ts +3 -0
  510. package/src/core/network/requests-static.ts +1 -0
  511. package/src/core/network/requests-toasting.tsx +1 -0
  512. package/src/core/network/types.ts +3 -0
  513. package/src/core/runtime/__tests__/runtime.test.ts +64 -0
  514. package/src/core/runtime/runtime.ts +30 -10
  515. package/src/core/wasm/bridge.ts +8 -0
  516. package/src/core/wasm/worker/bootstrap.ts +113 -20
  517. package/src/core/wasm/worker/types.ts +2 -0
  518. package/src/css/app/Cell.css +10 -0
  519. package/src/hooks/__tests__/useHotkey.test.tsx +88 -0
  520. package/src/hooks/useHotkey.ts +29 -4
  521. package/src/plugins/impl/anywidget/AnyWidgetPlugin.tsx +7 -1
  522. package/src/plugins/impl/anywidget/__tests__/AnyWidgetPlugin.test.tsx +26 -1
  523. package/src/plugins/impl/anywidget/__tests__/host.test.ts +6 -9
  524. package/src/plugins/impl/anywidget/__tests__/registry.test.ts +3 -1
  525. package/src/plugins/impl/anywidget/__tests__/widget-binding.test.ts +32 -61
  526. package/src/plugins/impl/anywidget/model-proxy.ts +0 -13
  527. package/src/plugins/impl/anywidget/runtime.ts +1 -0
  528. package/src/plugins/impl/anywidget/widget-binding.ts +8 -34
  529. package/src/plugins/impl/image-comparison/ImageComparisonComponent.tsx +53 -2
  530. package/src/plugins/impl/image-comparison/__tests__/ImageComparisonComponent.test.tsx +71 -0
  531. package/src/plugins/impl/vega/__tests__/use-vega-container-remeasure.test.ts +102 -0
  532. package/src/plugins/impl/vega/use-vega-container-remeasure.ts +39 -0
  533. package/src/plugins/impl/vega/vega-component.tsx +5 -4
  534. package/src/plugins/layout/NavigationMenuPlugin.tsx +156 -25
  535. package/src/theme/__tests__/useTheme.test.ts +68 -0
  536. package/src/theme/useTheme.ts +16 -1
  537. package/dist/assets/CellStatus-CJiCB3Hi.js +0 -1
  538. package/dist/assets/ConnectedDataExplorerComponent-B4fGzEJZ.js +0 -1
  539. package/dist/assets/DeferredRequestRegistry-RuL7NV1n.js +0 -1
  540. package/dist/assets/ErrorBoundary-Bo313Z9X.js +0 -1
  541. package/dist/assets/ImageComparisonComponent-BHNx9yIG.js +0 -1
  542. package/dist/assets/ImperativeModal-B62Q6S9l.js +0 -1
  543. package/dist/assets/Inputs-SmI80aJQ.js +0 -1
  544. package/dist/assets/JsonOutput-Cqq7S3wn.js +0 -53
  545. package/dist/assets/LazyAnyLanguageCodeMirror-BSGwa0jm.js +0 -2
  546. package/dist/assets/MarimoErrorOutput-t_4q7nKD.js +0 -11
  547. package/dist/assets/Plot-BB9gg44K.js +0 -3789
  548. package/dist/assets/RSPContexts-VzcTZjG1.js +0 -1
  549. package/dist/assets/RenderHTML-DZz6EFTa.js +0 -1
  550. package/dist/assets/RunButton-rOSamvRh.js +0 -1
  551. package/dist/assets/__vite-browser-external-CeH7R2Sf.js +0 -1
  552. package/dist/assets/__vite-browser-external-DTK_qJHK.js +0 -1
  553. package/dist/assets/add-cell-with-ai-Cy1aVVcT.js +0 -110
  554. package/dist/assets/add-connection-dialog-B7evz8iS.js +0 -170
  555. package/dist/assets/agent-panel-CBDRTGjF.js +0 -287
  556. package/dist/assets/ai-model-dropdown-Cs7srqhW.js +0 -5
  557. package/dist/assets/alert-1y_DnRWn.js +0 -1
  558. package/dist/assets/alert-dialog-CC0gG4Av.js +0 -11
  559. package/dist/assets/any-language-editor-DPRB0D1H.js +0 -1
  560. package/dist/assets/apl-Chr9VNQb.js +0 -1
  561. package/dist/assets/app-config-button-vfhq9pUS.js +0 -1
  562. package/dist/assets/arc-DUSwcTI9.js +0 -1
  563. package/dist/assets/architecture-7HQA4BMR-BKC1aYPh.js +0 -1
  564. package/dist/assets/architectureDiagram-VXUJARFQ-9zNZOBwF.js +0 -36
  565. package/dist/assets/arrays-DWxvyYxP.js +0 -1
  566. package/dist/assets/arrow-right-DFk7kYqp.js +0 -1
  567. package/dist/assets/asciiarmor-DzJGO3cy.js +0 -1
  568. package/dist/assets/asn1-Blkd-UVm.js +0 -1
  569. package/dist/assets/badge-6yGCqY1Z.js +0 -1
  570. package/dist/assets/ban-CttLZK8l.js +0 -1
  571. package/dist/assets/blockDiagram-VD42YOAC-CoeffysX.js +0 -122
  572. package/dist/assets/bot-message-square-AslRbAeb.js +0 -1
  573. package/dist/assets/brainfuck-BeRVF6bt.js +0 -1
  574. package/dist/assets/button-BF7GSjhW.js +0 -1
  575. package/dist/assets/c4Diagram-YG6GDRKO-HRtHHrnC.js +0 -10
  576. package/dist/assets/cache-panel-BlIrcwlT.js +0 -1
  577. package/dist/assets/capabilities-CjNGDxxx.js +0 -1
  578. package/dist/assets/card-s1ZaQ9ub.js +0 -1
  579. package/dist/assets/cell-editor-CTnJaccs.js +0 -27
  580. package/dist/assets/cell-link-BZg1pgHT.js +0 -1
  581. package/dist/assets/cells-ChH37lAD.js +0 -229
  582. package/dist/assets/channel-xkFudYwF.js +0 -1
  583. package/dist/assets/chart-no-axes-column-DVEV2j1H.js +0 -1
  584. package/dist/assets/chat-display-g1pE3dpm.js +0 -1
  585. package/dist/assets/chat-panel-DC85y3IW.js +0 -3
  586. package/dist/assets/chat-ui-CcC5kdbn.js +0 -4
  587. package/dist/assets/check-DQmqoJgr.js +0 -1
  588. package/dist/assets/chevron-right-C7RH0Nc7.js +0 -1
  589. package/dist/assets/chunk-4BX2VUAB-B9eTC_as.js +0 -1
  590. package/dist/assets/chunk-4F5CHEZ2-DMnTTluO.js +0 -1
  591. package/dist/assets/chunk-55IACEB6-RaPtcg4Z.js +0 -1
  592. package/dist/assets/chunk-5FQGJX7Z-OScactr4.js +0 -113
  593. package/dist/assets/chunk-ABZYJK2D-BahEojQ2.js +0 -80
  594. package/dist/assets/chunk-ATLVNIR6-x_ij98gB.js +0 -1
  595. package/dist/assets/chunk-B2363JML-Dku8Kg6Q.js +0 -1
  596. package/dist/assets/chunk-B4BG7PRW-CNWrrwyq.js +0 -165
  597. package/dist/assets/chunk-CVBHYZKI-BmNXddyI.js +0 -1
  598. package/dist/assets/chunk-DI55MBZ5-DLtrYKQl.js +0 -220
  599. package/dist/assets/chunk-EXTU4WIE-BosqMJS0.js +0 -1
  600. package/dist/assets/chunk-FMBD7UC4-CXkgki2e.js +0 -15
  601. package/dist/assets/chunk-FRFDVMJY-W8ieZ4T6.js +0 -1
  602. package/dist/assets/chunk-HN2XXSSU-BstCPYtG.js +0 -1
  603. package/dist/assets/chunk-JA3XYJ7Z-BGpTu7cp.js +0 -70
  604. package/dist/assets/chunk-JZLCHNYA-B5kB1fLQ.js +0 -54
  605. package/dist/assets/chunk-MI3HLSF2-BceZdyTR.js +0 -32
  606. package/dist/assets/chunk-N4CR4FBY-BBG_uFjb.js +0 -2
  607. package/dist/assets/chunk-PL6DKKU2-B2NeQSoB.js +0 -1
  608. package/dist/assets/chunk-QN33PNHL-CVHu8q7d.js +0 -1
  609. package/dist/assets/chunk-QXUST7PY-CFthKhW0.js +0 -7
  610. package/dist/assets/chunk-QZHKN3VN-B9NOrYv5.js +0 -1
  611. package/dist/assets/chunk-S3R3BYOJ-C_f67nz1.js +0 -2
  612. package/dist/assets/chunk-SJTYNZTY-KfBChqO5.js +0 -1
  613. package/dist/assets/chunk-TCCFYFTB-Cq0Vz6d2.js +0 -125
  614. package/dist/assets/chunk-TQ3KTPDO-BMxqKE6C.js +0 -1
  615. package/dist/assets/chunk-TZMSLE5B-HjU3PlWB.js +0 -1
  616. package/dist/assets/chunk-UMXZTB3W-BUDrzDik.js +0 -1
  617. package/dist/assets/circle-check-Q2N68uwG.js +0 -1
  618. package/dist/assets/circle-play-BvVg4iiT.js +0 -1
  619. package/dist/assets/circle-plus-BIy1BGHw.js +0 -1
  620. package/dist/assets/classDiagram-2ON5EDUG-BijpneZJ.js +0 -1
  621. package/dist/assets/classDiagram-v2-WZHVMYZB-DcBY2KJt.js +0 -1
  622. package/dist/assets/clear-button-DhIdI0ng.js +0 -1
  623. package/dist/assets/clike-BhFoDDUF.js +0 -1
  624. package/dist/assets/clipboard-paste-CXof_R04.js +0 -1
  625. package/dist/assets/clojure-D3LWk-SC.js +0 -1
  626. package/dist/assets/cmake-238GeNbi.js +0 -1
  627. package/dist/assets/cn-X2M2usMq.js +0 -1
  628. package/dist/assets/cobol-CZP4RjnO.js +0 -1
  629. package/dist/assets/code-DP40S9ln.js +0 -1
  630. package/dist/assets/code-block-37QAKDTI-DhYEpctq.js +0 -2
  631. package/dist/assets/code-xml-tqeFGeKJ.js +0 -1
  632. package/dist/assets/coffeescript-B7XjCOaF.js +0 -1
  633. package/dist/assets/column-preview-47aOuXOh.js +0 -1
  634. package/dist/assets/command-DRHbYHUP.js +0 -1
  635. package/dist/assets/command-palette-Gt0BItEs.js +0 -1
  636. package/dist/assets/common-DLhZ1eJc.js +0 -1
  637. package/dist/assets/commonlisp-DKNhPgyy.js +0 -1
  638. package/dist/assets/components-F3_UehyY.js +0 -1
  639. package/dist/assets/config-CjCV0n0j.js +0 -1
  640. package/dist/assets/config-Vyzo6FSF.js +0 -1
  641. package/dist/assets/constants-B9JJ72XE.js +0 -1
  642. package/dist/assets/context-C2Ie4tn_.js +0 -1
  643. package/dist/assets/copy-D8MtpXgN.js +0 -1
  644. package/dist/assets/copy-IBNGDypD.js +0 -1
  645. package/dist/assets/copy-icon-EHMT-qlr.js +0 -1
  646. package/dist/assets/cose-bilkent-S5V4N54A-BfoWxM7A.js +0 -1
  647. package/dist/assets/createReducer-3wF4dU7I.js +0 -1
  648. package/dist/assets/crystal-DmwO_0_4.js +0 -1
  649. package/dist/assets/css-b-BDNvIM.js +0 -1
  650. package/dist/assets/cypher-Bld-ecrK.js +0 -1
  651. package/dist/assets/d-D0LlbZRM.js +0 -1
  652. package/dist/assets/dagre-6UL2VRFP-D9JPUp6S.js +0 -4
  653. package/dist/assets/data-grid-overlay-editor-DmMSodPy.js +0 -1
  654. package/dist/assets/database-zap-DIlSqcdp.js +0 -1
  655. package/dist/assets/datasource-ii4hOmhM.js +0 -3
  656. package/dist/assets/dates-D8uxHHPL.js +0 -1
  657. package/dist/assets/dependency-graph-panel-BD4d_qw2.js +0 -5
  658. package/dist/assets/diagram-PSM6KHXK-B0tUabrq.js +0 -24
  659. package/dist/assets/diagram-QEK2KX5R-Cw9uF9O2.js +0 -43
  660. package/dist/assets/diagram-S2PKOQOG-CQ2c8wZv.js +0 -24
  661. package/dist/assets/dialog-DkJmIrsG.js +0 -1
  662. package/dist/assets/diff-BhkLDFRp.js +0 -1
  663. package/dist/assets/dist-B0WqBUnf.js +0 -1
  664. package/dist/assets/dist-BKUbUFYs.js +0 -1
  665. package/dist/assets/dist-BP6Oj7vU.js +0 -1
  666. package/dist/assets/dist-BTohsDew.js +0 -1
  667. package/dist/assets/dist-BXnBIECY.js +0 -1
  668. package/dist/assets/dist-BbGE6FVk.js +0 -1
  669. package/dist/assets/dist-BnV7Zv4J.js +0 -1
  670. package/dist/assets/dist-BqW5KzD0.js +0 -1
  671. package/dist/assets/dist-BtrqKtvn.js +0 -3
  672. package/dist/assets/dist-C4-ruy-b.js +0 -1
  673. package/dist/assets/dist-C62CI8Os.js +0 -7
  674. package/dist/assets/dist-C6zQ57IZ.js +0 -1
  675. package/dist/assets/dist-CF7wJiFo.js +0 -1
  676. package/dist/assets/dist-CIQQgRzz.js +0 -1
  677. package/dist/assets/dist-CIlJuwTK.js +0 -1
  678. package/dist/assets/dist-CKCDTgIC.js +0 -1
  679. package/dist/assets/dist-CNKFZCiw.js +0 -1
  680. package/dist/assets/dist-CR5yl751.js +0 -1
  681. package/dist/assets/dist-CUoPT-12.js +0 -1
  682. package/dist/assets/dist-CVIPALxj.js +0 -1
  683. package/dist/assets/dist-CWf9ows7.js +0 -1
  684. package/dist/assets/dist-CcVb-ahb.js +0 -1
  685. package/dist/assets/dist-CfGDksO-.js +0 -2
  686. package/dist/assets/dist-Ci66nyHs.js +0 -1
  687. package/dist/assets/dist-Cr2Z8vBa.js +0 -1
  688. package/dist/assets/dist-CrExO-X4.js +0 -1
  689. package/dist/assets/dist-CruUwJkI.js +0 -1
  690. package/dist/assets/dist-CwfKvuyQ.js +0 -2
  691. package/dist/assets/dist-CzcvL_Z9.js +0 -1
  692. package/dist/assets/dist-D-2yWcX9.js +0 -1
  693. package/dist/assets/dist-DCqDlsgq.js +0 -1
  694. package/dist/assets/dist-DJZFvU6Z.js +0 -1
  695. package/dist/assets/dist-DU8gTNy9.js +0 -1
  696. package/dist/assets/dist-DblYTes5.js +0 -6
  697. package/dist/assets/dist-Dez1I5M9.js +0 -14
  698. package/dist/assets/dist-DgBuTUso.js +0 -7
  699. package/dist/assets/dist-DkYp4RmM.js +0 -1
  700. package/dist/assets/dist-DlREAgj1.js +0 -1
  701. package/dist/assets/dist-FCPDbCwM.js +0 -1
  702. package/dist/assets/dist-KRVJJ-dD.js +0 -1
  703. package/dist/assets/dist-Qjp1OoCV.js +0 -1
  704. package/dist/assets/dist-RW5SS83Z.js +0 -1
  705. package/dist/assets/dist-UghNT0W0.js +0 -3
  706. package/dist/assets/dist-XexmIjM8.js +0 -1
  707. package/dist/assets/dist-ZjSH4Z6x.js +0 -13
  708. package/dist/assets/dist-azqjLiVY.js +0 -1
  709. package/dist/assets/dist-hvL02v1Z.js +0 -1
  710. package/dist/assets/dist-qGjvyIZU.js +0 -1
  711. package/dist/assets/dockerfile-BLAGVcyS.js +0 -1
  712. package/dist/assets/documentation-panel-De-VtKhs.js +0 -1
  713. package/dist/assets/download-BVqpOaYz.js +0 -9
  714. package/dist/assets/dropdown-menu-DfGLyCbP.js +0 -1
  715. package/dist/assets/dtd-CjtwvVlM.js +0 -1
  716. package/dist/assets/dylan-D750ej-H.js +0 -1
  717. package/dist/assets/ecl-ChePjOI6.js +0 -1
  718. package/dist/assets/edit-page-ByuvhrYn.js +0 -9
  719. package/dist/assets/eiffel-MZyxske9.js +0 -1
  720. package/dist/assets/ellipsis-D0iYysLh.js +0 -1
  721. package/dist/assets/elm-gXtxhfT4.js +0 -1
  722. package/dist/assets/empty-state-QmmE2oN4.js +0 -1
  723. package/dist/assets/en-US-BXNio91F.js +0 -1
  724. package/dist/assets/erDiagram-Q2GNP2WA-x4InYUc5.js +0 -60
  725. package/dist/assets/erlang-CEe3KwR2.js +0 -1
  726. package/dist/assets/error-banner-DEWyImqa.js +0 -1
  727. package/dist/assets/error-panel-BWy0Wum5.js +0 -1
  728. package/dist/assets/es-EItoYvXh.js +0 -5
  729. package/dist/assets/esm-B_l4S2x_.js +0 -1
  730. package/dist/assets/esm-X3Tr2pur.js +0 -1
  731. package/dist/assets/external-link-BktyywYg.js +0 -1
  732. package/dist/assets/eye-off-DI0EQXw0.js +0 -1
  733. package/dist/assets/factor-Cf6jeuFE.js +0 -1
  734. package/dist/assets/factor-D7Lm0c37.js +0 -1
  735. package/dist/assets/field-DlNY-dDH.js +0 -1
  736. package/dist/assets/file-BvoBtS_V.js +0 -1
  737. package/dist/assets/file-explorer-panel-lxCbk6eL.js +0 -26
  738. package/dist/assets/file-headphone-CUN2DC78.js +0 -1
  739. package/dist/assets/file-icons-BSYRCaKq.js +0 -1
  740. package/dist/assets/file-name-input-0TQuog_P.js +0 -3
  741. package/dist/assets/fileToBase64-BSOFR3RV.js +0 -1
  742. package/dist/assets/floating-outline-Dy8nXch3.js +0 -1
  743. package/dist/assets/flowDiagram-NV44I4VS-D6dpsSFe.js +0 -162
  744. package/dist/assets/focus-CeA7VBO7.js +0 -1
  745. package/dist/assets/form-x2vXRBGq.js +0 -2
  746. package/dist/assets/formats-ZGU43GQU.js +0 -1
  747. package/dist/assets/formatting-DhA_x3cD.js +0 -1
  748. package/dist/assets/forth-cDDgSP9p.js +0 -1
  749. package/dist/assets/fortran-C8vMa5zJ.js +0 -1
  750. package/dist/assets/fullscreen-BXI8V5i6.js +0 -41
  751. package/dist/assets/gallery-page-DoxZqkrq.js +0 -1
  752. package/dist/assets/ganttDiagram-JELNMOA3-CiHe5iIm.js +0 -267
  753. package/dist/assets/gas-Df167mJ4.js +0 -1
  754. package/dist/assets/gherkin-8tk6kFf5.js +0 -1
  755. package/dist/assets/gitGraph-G5XIXVHT-DR6EWL-x.js +0 -1
  756. package/dist/assets/gitGraphDiagram-V2S2FVAM-DYyxaqXO.js +0 -65
  757. package/dist/assets/github-DghuZBnj.js +0 -1
  758. package/dist/assets/glide-data-editor-zlTMrHkt.js +0 -132
  759. package/dist/assets/globals-B2VpoaLA.js +0 -1
  760. package/dist/assets/groovy-JuojAv0H.js +0 -1
  761. package/dist/assets/haskell-Bpjctb1r.js +0 -1
  762. package/dist/assets/hat-glasses-DlK0E4SX.js +0 -1
  763. package/dist/assets/haxe-DJHguewM.js +0 -1
  764. package/dist/assets/home-page-BDr2ccto.js +0 -4
  765. package/dist/assets/hooks-C9C5iUZz.js +0 -1
  766. package/dist/assets/house-DHu4JLi3.js +0 -1
  767. package/dist/assets/html-to-image-B9XAiAY5.js +0 -2
  768. package/dist/assets/icons-avFV3lBF.js +0 -1
  769. package/dist/assets/idl-feOWH07C.js +0 -1
  770. package/dist/assets/image-BzUcK6ho.js +0 -1
  771. package/dist/assets/index-Bv_jqGHk.js +0 -38
  772. package/dist/assets/index-DZAttTAm.css +0 -2
  773. package/dist/assets/info-VBDWY6EO-CB7fium3.js +0 -1
  774. package/dist/assets/infoDiagram-HS3SLOUP-BvAjf34S.js +0 -2
  775. package/dist/assets/input-DB2LiTiQ.js +0 -1
  776. package/dist/assets/isValid-DKyiOp4U.js +0 -1
  777. package/dist/assets/javascript-BekfVgKQ.js +0 -1
  778. package/dist/assets/journeyDiagram-XKPGCS4Q-DH75OGJw.js +0 -139
  779. package/dist/assets/julia-DG-ah68k.js +0 -1
  780. package/dist/assets/kanban-definition-3W4ZIXB7-DHdmqfgQ.js +0 -89
  781. package/dist/assets/katex-CByyX_jt.js +0 -1
  782. package/dist/assets/kbd-UVzWBHfi.js +0 -1
  783. package/dist/assets/kiosk-mode-jQCgP3s9.js +0 -1
  784. package/dist/assets/label-CFvCMYuj.js +0 -1
  785. package/dist/assets/layout-CvW9L5oQ.js +0 -9
  786. package/dist/assets/line-BKm-YkCh.js +0 -1
  787. package/dist/assets/linear-BD0d4-bn.js +0 -1
  788. package/dist/assets/link-e5mRDDOC.js +0 -1
  789. package/dist/assets/links-Bof3pNQU.js +0 -1
  790. package/dist/assets/links-CCkJpphF.js +0 -1
  791. package/dist/assets/livescript-B2wfFY5r.js +0 -1
  792. package/dist/assets/logs-panel-BTnX1HXX.js +0 -1
  793. package/dist/assets/loro_wasm_bg-B9rbCmxT.js +0 -1
  794. package/dist/assets/lua-CDP4_ezR.js +0 -1
  795. package/dist/assets/marimo-icons-DuRILrB8.js +0 -1
  796. package/dist/assets/markdown-renderer-BxBgsCTf.js +0 -5
  797. package/dist/assets/mathematica-BElcKLBW.js +0 -1
  798. package/dist/assets/mbox-DlwO5A6s.js +0 -1
  799. package/dist/assets/menu-items-CQMqwayA.js +0 -1
  800. package/dist/assets/mermaid-4DMBBIKO-Bc5nhxrT.js +0 -1
  801. package/dist/assets/mermaid-CcR9c7HL.js +0 -11
  802. package/dist/assets/mermaid-parser.core-Chxpj4sw.js +0 -4
  803. package/dist/assets/message-circle-RkIzfQEi.js +0 -1
  804. package/dist/assets/mhchem-CkxmpjZ8.js +0 -1
  805. package/dist/assets/mindmap-definition-VGOIOE7T-DFjySly4.js +0 -68
  806. package/dist/assets/mirc-D6l20mh4.js +0 -1
  807. package/dist/assets/mllike-fwkzyrZt.js +0 -1
  808. package/dist/assets/modelica-DAnB6nmO.js +0 -1
  809. package/dist/assets/mscgen-Cs4VQ67l.js +0 -1
  810. package/dist/assets/multi-icon-CTvmuLdL.js +0 -1
  811. package/dist/assets/mumps-Dt8k0EUU.js +0 -1
  812. package/dist/assets/name-cell-input-DOmw-OQJ.js +0 -1
  813. package/dist/assets/nsis-C1g8DTeO.js +0 -1
  814. package/dist/assets/nsis-C5Oj2cBc.js +0 -1
  815. package/dist/assets/ntriples-DTMBUZ7F.js +0 -1
  816. package/dist/assets/number-overlay-editor-BYYoWTbS.js +0 -9
  817. package/dist/assets/numbers-_ry1Nlla.js +0 -1
  818. package/dist/assets/octave-BwfNaTxP.js +0 -1
  819. package/dist/assets/once-CXj_gH7S.js +0 -1
  820. package/dist/assets/ordinal-BEKpVWu-.js +0 -1
  821. package/dist/assets/outline-panel-CNmQqc8n.js +0 -1
  822. package/dist/assets/oz-6BWZLab7.js +0 -1
  823. package/dist/assets/package-BTIV9-Dk.js +0 -1
  824. package/dist/assets/packages-panel-COIInbnq.js +0 -1
  825. package/dist/assets/packet-DYOGHKS2-DfGBb0Dd.js +0 -1
  826. package/dist/assets/pair-with-agent-modal-CB0Cx-Eb.js +0 -4
  827. package/dist/assets/panel-context-DC1vAeB3.js +0 -1
  828. package/dist/assets/panels-CZgpp-Jc.js +0 -4
  829. package/dist/assets/pascal-64fygDAy.js +0 -1
  830. package/dist/assets/pathUtils-BXCjaLHB.js +0 -1
  831. package/dist/assets/perl-CC5X3ewy.js +0 -1
  832. package/dist/assets/pie-VRWISCQL-BUcldHEm.js +0 -1
  833. package/dist/assets/pieDiagram-ADFJNKIX-Cqy3gKwK.js +0 -30
  834. package/dist/assets/pig-DP6pbekb.js +0 -1
  835. package/dist/assets/plus-ZXRHY1up.js +0 -1
  836. package/dist/assets/popover-DMNO6Poc.js +0 -1
  837. package/dist/assets/powershell-WtGE4kBw.js +0 -1
  838. package/dist/assets/precisionRound-BOmLQIKI.js +0 -1
  839. package/dist/assets/process-output-BSGc23nl.js +0 -1
  840. package/dist/assets/properties-CRoDUVbK.js +0 -1
  841. package/dist/assets/protobuf-BS6gEp_x.js +0 -1
  842. package/dist/assets/pug-CzQlD5xP.js +0 -1
  843. package/dist/assets/pug-STAEJHPq.js +0 -1
  844. package/dist/assets/puppet-BV74Hcdf.js +0 -1
  845. package/dist/assets/purify.es-DfJp_of2.js +0 -2
  846. package/dist/assets/python-4yue3pyq.js +0 -1
  847. package/dist/assets/q-SorAikmF.js +0 -1
  848. package/dist/assets/quadrantDiagram-AYHSOK5B-B3qlPKHh.js +0 -7
  849. package/dist/assets/r-Dc7847Lm.js +0 -1
  850. package/dist/assets/radar-ZZBFDIW7-DALEitfL.js +0 -1
  851. package/dist/assets/radio-group-xSHDhdM7.js +0 -1
  852. package/dist/assets/react-vega-BVvkE5O4.js +0 -1
  853. package/dist/assets/react-vega-DJIihc-q.js +0 -188
  854. package/dist/assets/readonly-code-display-DAO13rnf.js +0 -1
  855. package/dist/assets/readonly-python-code-C12Tt_qR.js +0 -1
  856. package/dist/assets/refresh-ccw-Bee7JLOl.js +0 -1
  857. package/dist/assets/refresh-cw-C9FftltI.js +0 -1
  858. package/dist/assets/renderShortcut-DTZeni4V.js +0 -1
  859. package/dist/assets/request-registry-K6vbazWs.js +0 -1
  860. package/dist/assets/requests-KshNNAOp.js +0 -1
  861. package/dist/assets/requirementDiagram-UZGBJVZJ-C1PyB1kO.js +0 -64
  862. package/dist/assets/reveal-component-Br8zxPxo.js +0 -1069
  863. package/dist/assets/rotate-ccw-ZsOWbQCw.js +0 -1
  864. package/dist/assets/rpm-C2rCOQ1Z.js +0 -1
  865. package/dist/assets/ruby-DNrqAMg4.js +0 -1
  866. package/dist/assets/run-page-DYYDJi1y.js +0 -1
  867. package/dist/assets/runs-ChtaccFx.js +0 -1
  868. package/dist/assets/sankeyDiagram-TZEHDZUN-CWokPFKQ.js +0 -10
  869. package/dist/assets/sas-BKYzR5_z.js +0 -1
  870. package/dist/assets/save-BNNMzGly.js +0 -1
  871. package/dist/assets/save-worker-Bcr7rl0C.js +0 -77
  872. package/dist/assets/scheme-as2FasXy.js +0 -1
  873. package/dist/assets/scratchpad-panel-BpovE3w8.js +0 -1
  874. package/dist/assets/secrets-panel-B_LDPvs3.js +0 -1
  875. package/dist/assets/select-Cjly7tmx.js +0 -1
  876. package/dist/assets/sequenceDiagram-WL72ISMW-Bt2iqyTe.js +0 -145
  877. package/dist/assets/session-CsT5Gg9j.js +0 -1
  878. package/dist/assets/session-panel-D9KEIcxF.js +0 -1
  879. package/dist/assets/settings-1WkYMLdR.js +0 -1
  880. package/dist/assets/share-DQjChRJG.js +0 -1
  881. package/dist/assets/shell-Bf8Q5ES6.js +0 -1
  882. package/dist/assets/sieve-D515TmZq.js +0 -1
  883. package/dist/assets/smalltalk-DYzx-8Vf.js +0 -1
  884. package/dist/assets/snippets-panel-B0kWXd0i.js +0 -1
  885. package/dist/assets/sparkles-COaEc8Qn.js +0 -1
  886. package/dist/assets/sparql-6VnDrYOs.js +0 -1
  887. package/dist/assets/spec-CDgWI0fT.js +0 -1
  888. package/dist/assets/spinner-BbI9qk88.js +0 -1
  889. package/dist/assets/square-35tXIgiR.js +0 -1
  890. package/dist/assets/square-function-Dx0pKHko.js +0 -1
  891. package/dist/assets/src-CvyFXpBy.js +0 -1
  892. package/dist/assets/state-Csq9SFHN.js +0 -3
  893. package/dist/assets/state-DIDUL4YY.js +0 -1
  894. package/dist/assets/state-DjrxAf9W.js +0 -1
  895. package/dist/assets/state-MC8-jN2e.js +0 -1
  896. package/dist/assets/stateDiagram-FKZM4ZOC-Cu-QGXei.js +0 -1
  897. package/dist/assets/stateDiagram-v2-4FDKWEC3-C_watzL2.js +0 -1
  898. package/dist/assets/step-B5y1YzZ4.js +0 -1
  899. package/dist/assets/stex-BBWVYm-R.js +0 -1
  900. package/dist/assets/strings-DvZlHYnD.js +0 -2
  901. package/dist/assets/stylus-DUyoKY_7.js +0 -1
  902. package/dist/assets/swift-CXFwyL-K.js +0 -1
  903. package/dist/assets/swiper-component-1Qq8v34u.js +0 -1
  904. package/dist/assets/switch-DqXjpgoL.js +0 -1
  905. package/dist/assets/table-CnW850Wt.js +0 -1
  906. package/dist/assets/table-DxdydCSG.js +0 -1
  907. package/dist/assets/tcl-DbyqErhh.js +0 -1
  908. package/dist/assets/terminal-BRypP4mE.js +0 -62
  909. package/dist/assets/textarea-D_WnJbC1.js +0 -1
  910. package/dist/assets/textile-8fxKT1uq.js +0 -1
  911. package/dist/assets/time-jEmAyVx0.js +0 -1
  912. package/dist/assets/timeline-definition-IT6M3QCI-DbqS7JT0.js +0 -61
  913. package/dist/assets/timer-B6DpdVnC.js +0 -1
  914. package/dist/assets/toDate-DCE7d2fN.js +0 -1
  915. package/dist/assets/toml-BpCjWJNE.js +0 -1
  916. package/dist/assets/tooltip-CgQpRVyN.js +0 -1
  917. package/dist/assets/tracing-BnSjCbj3.js +0 -1
  918. package/dist/assets/tracing-panel-VQ2bJwVp.js +0 -2
  919. package/dist/assets/trash-2-CqTUwVuU.js +0 -1
  920. package/dist/assets/trash-BW_KaFjz.js +0 -1
  921. package/dist/assets/tree-actions-DONHntzY.js +0 -1
  922. package/dist/assets/treemap-GDKQZRPO-DD4LlMfm.js +0 -1
  923. package/dist/assets/triangle-alert-D8Ft17xk.js +0 -1
  924. package/dist/assets/troff-BhJs9Lif.js +0 -1
  925. package/dist/assets/ttcn-BVPxY_nX.js +0 -1
  926. package/dist/assets/ttcn-cfg-B4sCU0gH.js +0 -1
  927. package/dist/assets/turtle-D4EQx9sx.js +0 -1
  928. package/dist/assets/types-BnrgJ4Gh.js +0 -1
  929. package/dist/assets/useAsyncData-DAQcLiyE.js +0 -1
  930. package/dist/assets/useBoolean-DmobZaim.js +0 -1
  931. package/dist/assets/useCellActionButton-DJgU89TM.js +0 -1
  932. package/dist/assets/useDateFormatter-CAlTJ8HV.js +0 -1
  933. package/dist/assets/useDeleteCell-Dd-rdVr9.js +0 -1
  934. package/dist/assets/useDependencyPanelTab-5uO5bZY0.js +0 -1
  935. package/dist/assets/useEventListener-BakX-tnw.js +0 -1
  936. package/dist/assets/useHotkey-tGzXOQVZ.js +0 -1
  937. package/dist/assets/useIframeCapabilities-B0dNZiKK.js +0 -1
  938. package/dist/assets/useInstallPackage-C1Dd0aIZ.js +0 -1
  939. package/dist/assets/useInterval-DeSrhhRN.js +0 -1
  940. package/dist/assets/useLifecycle-Baf35rp4.js +0 -1
  941. package/dist/assets/useNotebookActions-DAyvCHVP.js +0 -1
  942. package/dist/assets/useNumberFormatter-CuxZh3Bq.js +0 -1
  943. package/dist/assets/usePress-BSFUeqnS.js +0 -7
  944. package/dist/assets/useRunCells-Dmf7GVGt.js +0 -1
  945. package/dist/assets/useSplitCell-BtwG_Ap2.js +0 -1
  946. package/dist/assets/useTheme-COorCcXC.js +0 -1
  947. package/dist/assets/utils-CCzEbCvM.js +0 -1
  948. package/dist/assets/utils-DPvpQ891.js +0 -61
  949. package/dist/assets/vb-D-5BLYdM.js +0 -1
  950. package/dist/assets/vbscript-DOZuVfk8.js +0 -1
  951. package/dist/assets/vega-component-DLk5ZoUT.js +0 -1
  952. package/dist/assets/vega-loader.browser-CZV6_g2i.js +0 -6
  953. package/dist/assets/velocity-BPduikoO.js +0 -1
  954. package/dist/assets/verilog-D9S6puFO.js +0 -1
  955. package/dist/assets/vhdl-YYXNXz0X.js +0 -1
  956. package/dist/assets/webidl-Ct7ps8LR.js +0 -1
  957. package/dist/assets/worker-Bp53hInb.js +0 -120
  958. package/dist/assets/workflow-f8flhcJ1.js +0 -1
  959. package/dist/assets/write-secret-modal-K2n79wHj.js +0 -1
  960. package/dist/assets/x-9vLEgLY6.js +0 -1
  961. package/dist/assets/xquery-9kDflInd.js +0 -1
  962. package/dist/assets/xychartDiagram-PRI3JC2R-BbSJBns5.js +0 -7
  963. package/dist/assets/yacas-u934AJft.js +0 -1
  964. package/dist/assets/youtube-NfBeYlaL.js +0 -1
  965. package/dist/assets/z80-BQ7XtT4U.js +0 -1
  966. /package/dist/assets/{Deferred-BMfCOLaw.js → Deferred-D2igisxY.js} +0 -0
  967. /package/dist/assets/{SSRProvider-DX2edArU.js → SSRProvider-BUSmWJKC.js} +0 -0
  968. /package/dist/assets/{apl-C1zdcQvI.js → apl-DVqFAlEd.js} +0 -0
  969. /package/dist/assets/{array-CEZNxKGf.js → array-Ddg9CgJT.js} +0 -0
  970. /package/dist/assets/{asciiarmor-B--OGpM1.js → asciiarmor-B45BhOLj.js} +0 -0
  971. /package/dist/assets/{asn1-D2UnMTL5.js → asn1-C4T2ctU6.js} +0 -0
  972. /package/dist/assets/{asterisk-Bjb62jej.js → asterisk-9U_4Kgke.js} +0 -0
  973. /package/dist/assets/{azure-DBVzcmvx.js → azure-nN8APleF.js} +0 -0
  974. /package/dist/assets/{blob-BiK5xmlC.js → blob-C3EfaMOb.js} +0 -0
  975. /package/dist/assets/{brainfuck-DrjMyC8V.js → brainfuck-kVh8Eud4.js} +0 -0
  976. /package/dist/assets/{bundle.esm-D544r2Sr.js → bundle.esm-D0TWQ6iT.js} +0 -0
  977. /package/dist/assets/{chunk-DR5Q36YT-SM9ZwAOv.js → chunk-DR5Q36YT-Bsu9Glc0.js} +0 -0
  978. /package/dist/assets/{cjs-DXo9vDEJ.js → cjs-D5tzp-Y6.js} +0 -0
  979. /package/dist/assets/{click-outside-container-C-40Ctlw.js → click-outside-container-CrWZsAF5.js} +0 -0
  980. /package/dist/assets/{clike-CCdVFz-6.js → clike-O0gwXilc.js} +0 -0
  981. /package/dist/assets/{clojure-BjmTMymc.js → clojure-CsbMWxp9.js} +0 -0
  982. /package/dist/assets/{clsx-BtEcuwwV.js → clsx-XrBBnd7s.js} +0 -0
  983. /package/dist/assets/{cmake-CgqRscDS.js → cmake-FpJvOdyj.js} +0 -0
  984. /package/dist/assets/{cobol-DZNhVUeB.js → cobol-Duxbpsru.js} +0 -0
  985. /package/dist/assets/{coffeescript-Qp7k0WHA.js → coffeescript-D-Unz9IP.js} +0 -0
  986. /package/dist/assets/{colors-Dm6L93c7.js → colors-C_0lIznd.js} +0 -0
  987. /package/dist/assets/{common-keywords-D_14jCw0.js → common-keywords-PqH2GDfH.js} +0 -0
  988. /package/dist/assets/{commonlisp-De6q7_JS.js → commonlisp-_nR12oc7.js} +0 -0
  989. /package/dist/assets/{createLucideIcon-BTp1tQDO.js → createLucideIcon-w-Qo9n0R.js} +0 -0
  990. /package/dist/assets/{crystal-BGXRJSF-.js → crystal-dj3W4b1A.js} +0 -0
  991. /package/dist/assets/{css-CNKF6pC6.js → css-0BG6A_BC.js} +0 -0
  992. /package/dist/assets/{cypher-BUDAQ7Fk.js → cypher-CKPokaoH.js} +0 -0
  993. /package/dist/assets/{cytoscape.esm-DHwdGdKb.js → cytoscape.esm-DzUNSF80.js} +0 -0
  994. /package/dist/assets/{d-BIAtzqpc.js → d-BrbqzVa2.js} +0 -0
  995. /package/dist/assets/{defaultLocale-DK1MWd7f.js → defaultLocale-BUCH2FMc.js} +0 -0
  996. /package/dist/assets/{defaultLocale-OkOxlkkM.js → defaultLocale-DOVIEEPN.js} +0 -0
  997. /package/dist/assets/{diff-aadYO3ro.js → diff-BmdR9FsO.js} +0 -0
  998. /package/dist/assets/{dist-COnmrAVZ.js → dist-D9sE1udr.js} +0 -0
  999. /package/dist/assets/{dtd-uNeIl1u0.js → dtd-DbCXDVgi.js} +0 -0
  1000. /package/dist/assets/{duckdb-keywords-CSySeB8R.js → duckdb-keywords-mPlR0SxW.js} +0 -0
  1001. /package/dist/assets/{dylan-CrZBaY0F.js → dylan-CLLzL2Js.js} +0 -0
  1002. /package/dist/assets/{ebnf-KJaLpQez.js → ebnf-Cnws41cu.js} +0 -0
  1003. /package/dist/assets/{ecl-ByTsrrt6.js → ecl-BC7x2nzk.js} +0 -0
  1004. /package/dist/assets/{eiffel-DRhIEZQi.js → eiffel-CDU836rz.js} +0 -0
  1005. /package/dist/assets/{elm-BBPeNBgT.js → elm-D-_bXARs.js} +0 -0
  1006. /package/dist/assets/{emotion-is-prop-valid.esm-CK2zY6a8.js → emotion-is-prop-valid.esm-lG8j6oqk.js} +0 -0
  1007. /package/dist/assets/{erlang-EMEOk6kj.js → erlang-CwDZk2zM.js} +0 -0
  1008. /package/dist/assets/{errors-Bi-kjxOy.js → errors-PgHhDa-M.js} +0 -0
  1009. /package/dist/assets/{esm-D8Ai_4yn.js → esm-D6WfbcL3.js} +0 -0
  1010. /package/dist/assets/{events-XR_LpvHc.js → events-90X9nql5.js} +0 -0
  1011. /package/dist/assets/{extends-CeSFM22p.js → extends-B9D0JO9U.js} +0 -0
  1012. /package/dist/assets/{fcl-Cf241iHu.js → fcl-CwkPc-_9.js} +0 -0
  1013. /package/dist/assets/{forth-BdKkHzwH.js → forth-D6FsO_8x.js} +0 -0
  1014. /package/dist/assets/{fortran-DxGNM9Kj.js → fortran-D4BMbIkG.js} +0 -0
  1015. /package/dist/assets/{gas-hf-H6Zc4.js → gas-JFjzcgdY.js} +0 -0
  1016. /package/dist/assets/{gherkin-D1O_VlrS.js → gherkin-Cyu-qGaF.js} +0 -0
  1017. /package/dist/assets/{groovy-Budmgm6I.js → groovy-CZaE9eN-.js} +0 -0
  1018. /package/dist/assets/{haskell-CDrggYs0.js → haskell-Dc6o0IGr.js} +0 -0
  1019. /package/dist/assets/{haxe-CPnBkTzf.js → haxe-Bsf0tzqs.js} +0 -0
  1020. /package/dist/assets/{http-_roNBajA.js → http-BQNSD-HR.js} +0 -0
  1021. /package/dist/assets/{idl-BTZd0S94.js → idl-1W91kQ8_.js} +0 -0
  1022. /package/dist/assets/{init-BpLL1fe9.js → init-nx27Zb9l.js} +0 -0
  1023. /package/dist/assets/{invariant-C2E8KCbD.js → invariant-CkiqGLcK.js} +0 -0
  1024. /package/dist/assets/{javascript-Czx24F5X.js → javascript-BZ81-2rO.js} +0 -0
  1025. /package/dist/assets/{jsx-runtime-PbYoItBR.js → jsx-runtime-Blw4afVn.js} +0 -0
  1026. /package/dist/assets/{julia-OeEN0FvJ.js → julia-BZOsq0r_.js} +0 -0
  1027. /package/dist/assets/{katex-C5COVNYq.js → katex-CvZ3kCGk.js} +0 -0
  1028. /package/dist/assets/{livescript-DLmsZIyI.js → livescript-CNZfmikk.js} +0 -0
  1029. /package/dist/assets/{loro_wasm_bg-BFCm9sQd.js → loro_wasm_bg-RNUly1SE.js} +0 -0
  1030. /package/dist/assets/{lua-BM3BXoTQ.js → lua-DXGRliwd.js} +0 -0
  1031. /package/dist/assets/{main-DmhaVp6Y.js → main-BNL5rxQw.js} +0 -0
  1032. /package/dist/assets/{math-CpvW-dlE.js → math-CLO4uoaP.js} +0 -0
  1033. /package/dist/assets/{mathematica-BbPQ8-Rw.js → mathematica-BoUj8M7D.js} +0 -0
  1034. /package/dist/assets/{mbox-D2_16jOO.js → mbox-DLVP8LAe.js} +0 -0
  1035. /package/dist/assets/{micromark-factory-space-BUQpMdx2.js → micromark-factory-space-Dx_STMJD.js} +0 -0
  1036. /package/dist/assets/{mirc-CzS_wutP.js → mirc-kI4d5fMu.js} +0 -0
  1037. /package/dist/assets/{mllike-D9b50pH5.js → mllike-CD9vBc_2.js} +0 -0
  1038. /package/dist/assets/{modelica-C8E83p8w.js → modelica-DgfsLJuF.js} +0 -0
  1039. /package/dist/assets/{mscgen-Dk-3wFOB.js → mscgen-B1HDwshJ.js} +0 -0
  1040. /package/dist/assets/{mumps-BRQASZoy.js → mumps-D_-b9TZD.js} +0 -0
  1041. /package/dist/assets/{nginx-Dfd7l9Sj.js → nginx-Cm282mo8.js} +0 -0
  1042. /package/dist/assets/{node-sql-parser-DfWMhh1q.js → node-sql-parser-BWgUjcfV.js} +0 -0
  1043. /package/dist/assets/{ntriples-D6VU4eew.js → ntriples-COX9JFZ8.js} +0 -0
  1044. /package/dist/assets/{objectWithoutPropertiesLoose-BkUn3I0-.js → objectWithoutPropertiesLoose-CboCOq4o.js} +0 -0
  1045. /package/dist/assets/{octave-xff1drIF.js → octave-BejycR79.js} +0 -0
  1046. /package/dist/assets/{oz-CRz8coQc.js → oz-CFFivrGn.js} +0 -0
  1047. /package/dist/assets/{pascal-DZhgfws7.js → pascal-B_p9jkCs.js} +0 -0
  1048. /package/dist/assets/{path-DtYs9Dst.js → path-Bz_hIzg5.js} +0 -0
  1049. /package/dist/assets/{paths-DhuNSnZ_.js → paths-BKO-pHK6.js} +0 -0
  1050. /package/dist/assets/{perl-BKXEkch3.js → perl-C-SFBTly.js} +0 -0
  1051. /package/dist/assets/{pig-rvFhLOOE.js → pig-BhxDMp2k.js} +0 -0
  1052. /package/dist/assets/{powershell-Db7zgjV-.js → powershell-c59M-9N2.js} +0 -0
  1053. /package/dist/assets/{preload-helper-BW0IMuFq.js → preload-helper-TXkS1QI3.js} +0 -0
  1054. /package/dist/assets/{prop-types-B6Y2e__V.js → prop-types-C638SUfx.js} +0 -0
  1055. /package/dist/assets/{properties-BF6anRzc.js → properties-D1JNwCKy.js} +0 -0
  1056. /package/dist/assets/{protobuf-De4giNfG.js → protobuf-DQS7ex8R.js} +0 -0
  1057. /package/dist/assets/{puppet-CMgcPW4L.js → puppet-DaQvhvew.js} +0 -0
  1058. /package/dist/assets/{python-DOZzlkV_.js → python-XHl3eRTS.js} +0 -0
  1059. /package/dist/assets/{q-8XMigH-s.js → q-DppnoRE3.js} +0 -0
  1060. /package/dist/assets/{r-BuEncdBJ.js → r-D8-F_FWj.js} +0 -0
  1061. /package/dist/assets/{range-DNqFcYmr.js → range-u_glTVdi.js} +0 -0
  1062. /package/dist/assets/{react-icons.esm-DCqqMD4w.js → react-icons.esm-D4GMDkIf.js} +0 -0
  1063. /package/dist/assets/{react-resizable-panels.browser.esm-Ce2ksurd.js → react-resizable-panels.browser.esm-Z-MD3n3J.js} +0 -0
  1064. /package/dist/assets/{requests-DqJEWJ-Q.js → requests-DYeT4CEe.js} +0 -0
  1065. /package/dist/assets/{rpm-DnfrioeJ.js → rpm-CegJhNNO.js} +0 -0
  1066. /package/dist/assets/{ruby-C9f8lbWZ.js → ruby-YMIxufV1.js} +0 -0
  1067. /package/dist/assets/{sas-TQvbwzLU.js → sas-wTtX9UIQ.js} +0 -0
  1068. /package/dist/assets/{scheme-DCJ8_Fy0.js → scheme-BGenom3k.js} +0 -0
  1069. /package/dist/assets/{semaphore-X3ApuO41.js → semaphore-DtBYRzWS.js} +0 -0
  1070. /package/dist/assets/{shell-D8pt0LM7.js → shell-Bu1sLaiP.js} +0 -0
  1071. /package/dist/assets/{sieve-DGXZ82l_.js → sieve-ffe6rUQh.js} +0 -0
  1072. /package/dist/assets/{simple-mode-B3UD3n_i.js → simple-mode-DBSzUJLA.js} +0 -0
  1073. /package/dist/assets/{smalltalk-DyRmt5Ka.js → smalltalk-NU5EGjHp.js} +0 -0
  1074. /package/dist/assets/{solr-CJeCgAfj.js → solr-ptw1yIqO.js} +0 -0
  1075. /package/dist/assets/{sparql-CLILkzHY.js → sparql-uqVktnwO.js} +0 -0
  1076. /package/dist/assets/{spreadsheet-BYYvgLKe.js → spreadsheet-VEzeu_mb.js} +0 -0
  1077. /package/dist/assets/{sql-B5I6FC3m.js → sql-tYjnWETe.js} +0 -0
  1078. /package/dist/assets/{src-CW27-Kjl.js → src-BshXgZd4.js} +0 -0
  1079. /package/dist/assets/{stex-0ac7Aukl.js → stex-FMMSUPAS.js} +0 -0
  1080. /package/dist/assets/{stylus-BCmjnwMM.js → stylus-B2E6Ulaz.js} +0 -0
  1081. /package/dist/assets/{swift-BkcVjmPv.js → swift-Rmnn7ATv.js} +0 -0
  1082. /package/dist/assets/{tcl-B3wbfJh2.js → tcl-ZPWCn2nn.js} +0 -0
  1083. /package/dist/assets/{textile-D12VShq0.js → textile-uhA33kFk.js} +0 -0
  1084. /package/dist/assets/{tiddlywiki-hmNzZkq6.js → tiddlywiki-CPkGLyXH.js} +0 -0
  1085. /package/dist/assets/{tiki-BL1SzuSx.js → tiki-BtjLo8OF.js} +0 -0
  1086. /package/dist/assets/{toml-XXoBgyAV.js → toml-BFZv2Mv7.js} +0 -0
  1087. /package/dist/assets/{treemap-qinQgXo1.js → treemap-Bca0xNNq.js} +0 -0
  1088. /package/dist/assets/{troff-D9lX0BP4.js → troff-B5eayHop.js} +0 -0
  1089. /package/dist/assets/{ttcn-DQ5upjvU.js → ttcn-BM0Yp8NY.js} +0 -0
  1090. /package/dist/assets/{ttcn-cfg-pqnJIxH9.js → ttcn-cfg-CfbkL3Q_.js} +0 -0
  1091. /package/dist/assets/{turtle-BUVCUZMx.js → turtle-DvetLxrv.js} +0 -0
  1092. /package/dist/assets/{types-D4wsSrXa.js → types-Da7lA5YC.js} +0 -0
  1093. /package/dist/assets/{use-toast-kCNiuc-_.js → use-toast-BwJoaaDM.js} +0 -0
  1094. /package/dist/assets/{useDebounce-CpLI2dsc.js → useDebounce-JDKr83KO.js} +0 -0
  1095. /package/dist/assets/{useDeepCompareMemoize-CWcgQCbT.js → useDeepCompareMemoize-CSMoa-ga.js} +0 -0
  1096. /package/dist/assets/{useNonce-0SWz6w4W.js → useNonce-CbdaHKzX.js} +0 -0
  1097. /package/dist/assets/{uuid-ClFZlR7U.js → uuid-ImXS-885.js} +0 -0
  1098. /package/dist/assets/{vb-CgKmZtlp.js → vb-i5Z8scch.js} +0 -0
  1099. /package/dist/assets/{vbscript-mB-oVfPH.js → vbscript-BiPYgIyi.js} +0 -0
  1100. /package/dist/assets/{velocity-CrvX3BFT.js → velocity-Dw3R3YoX.js} +0 -0
  1101. /package/dist/assets/{verilog-C0Wzs7-f.js → verilog-B8FhJcX6.js} +0 -0
  1102. /package/dist/assets/{vhdl-s8UGv0A3.js → vhdl-BqPEoXdJ.js} +0 -0
  1103. /package/dist/assets/{web-vitals-B8i8c08M.js → web-vitals-CwE0GGzl.js} +0 -0
  1104. /package/dist/assets/{webidl-GTmlnawS.js → webidl-mMO-qW5Q.js} +0 -0
  1105. /package/dist/assets/{ws-DSN-Rmiu.js → ws-BmTnbVEi.js} +0 -0
  1106. /package/dist/assets/{xquery-Bq3_mXJv.js → xquery-DvqNwq7L.js} +0 -0
  1107. /package/dist/assets/{yacas-B1P8UzPS.js → yacas-Dku9Z6Kf.js} +0 -0
  1108. /package/dist/assets/{z80-C8FzIVqi.js → z80-DvazU5Tr.js} +0 -0
@@ -1,6 +1,7 @@
1
1
  /* Copyright 2026 Marimo. All rights reserved. */
2
2
 
3
- import { render, waitFor } from "@testing-library/react";
3
+ import { act, render, waitFor } from "@testing-library/react";
4
+ import { Provider, createStore } from "jotai";
4
5
  import {
5
6
  afterEach,
6
7
  beforeEach,
@@ -10,6 +11,7 @@ import {
10
11
  type MockInstance,
11
12
  vi,
12
13
  } from "vitest";
14
+ import { islandsPendingInitialRunsAtom } from "@/core/islands/state";
13
15
  import type { IPluginProps } from "@/plugins/types";
14
16
  import { visibleForTesting } from "../AnyWidgetPlugin";
15
17
  import { Model } from "../model";
@@ -88,6 +90,29 @@ describe("AnyWidgetSlot", () => {
88
90
  });
89
91
  });
90
92
 
93
+ it("waits for islands hydration before resolving the model", async () => {
94
+ const islandsStore = createStore();
95
+ islandsStore.set(islandsPendingInitialRunsAtom, new Set([1]));
96
+ const createViewSpy = vi.spyOn(WIDGET_REGISTRY, "createView");
97
+
98
+ render(
99
+ <Provider store={islandsStore}>
100
+ <AnyWidgetSlot {...props(modelId)} />
101
+ </Provider>,
102
+ );
103
+
104
+ expect(createViewSpy).not.toHaveBeenCalled();
105
+
106
+ act(() => {
107
+ islandsStore.set(islandsPendingInitialRunsAtom, new Set());
108
+ });
109
+
110
+ await waitFor(() => {
111
+ expect(createViewSpy).toHaveBeenCalledOnce();
112
+ });
113
+ createViewSpy.mockRestore();
114
+ });
115
+
91
116
  it("aborts the runtime-owned view on unmount", async () => {
92
117
  const { unmount } = render(<AnyWidgetSlot {...props(modelId)} />);
93
118
  await waitFor(() => {
@@ -277,25 +277,22 @@ describe("WidgetBinding receives a host in render props", () => {
277
277
  });
278
278
  });
279
279
 
280
- describe("host-mounted views hydrate like display-mounted ones", () => {
281
- it("replays current state to a child's render listeners", async () => {
282
- const childId = asModelId("host-hydration-child");
280
+ describe("host-mounted views", () => {
281
+ it("render with the child's current model state", async () => {
282
+ const childId = asModelId("host-child-state");
283
283
  const parentController = new AbortController();
284
284
  const getModuleSpy = vi.spyOn(WIDGET_DEF_REGISTRY, "getModule");
285
285
  try {
286
286
  const childWidget = {
287
287
  render: vi.fn(({ model, el }) => {
288
- el.textContent = "count is 5";
289
- model.on("change:count", () => {
290
- el.textContent = `count is ${model.get("count")}`;
291
- });
288
+ el.textContent = `count is ${model.get("count")}`;
292
289
  }),
293
290
  };
294
291
  const childModel = new Model<ModelState>({ count: 8 }, createMockComm());
295
292
  WIDGET_REGISTRY.setModel(childId, childModel);
296
293
  WIDGET_REGISTRY.setSpec(childId, {
297
- url: "./@file/10-host-hydration-child.js",
298
- hash: "hash-host-hydration-child",
294
+ url: "./@file/10-host-child-state.js",
295
+ hash: "hash-host-child-state",
299
296
  });
300
297
  getModuleSpy.mockResolvedValue({ default: childWidget });
301
298
 
@@ -210,7 +210,7 @@ describe("WidgetRegistry.getWidget", () => {
210
210
  });
211
211
 
212
212
  afterEach(() => {
213
- getModuleSpy.mockRestore();
213
+ vi.restoreAllMocks();
214
214
  });
215
215
 
216
216
  it("binds an undisplayed widget from its ESM spec", async () => {
@@ -309,6 +309,7 @@ describe("WidgetRegistry.getWidget", () => {
309
309
  });
310
310
 
311
311
  it("rejects with the AFM error when the module has no usable exports", async () => {
312
+ const invalidateSpy = vi.spyOn(WIDGET_DEF_REGISTRY, "invalidate");
312
313
  getModuleSpy.mockResolvedValue({ notAWidget: true });
313
314
 
314
315
  const model = new Model<ModelState>({ count: 0 }, createMockComm());
@@ -318,6 +319,7 @@ describe("WidgetRegistry.getWidget", () => {
318
319
  await expect(registry.getWidget(testId)).rejects.toThrow(
319
320
  /missing a default export/,
320
321
  );
322
+ expect(invalidateSpy).toHaveBeenCalledWith(SPEC.hash);
321
323
  });
322
324
 
323
325
  it("rejects when the model never arrives", async () => {
@@ -95,6 +95,16 @@ describe("WidgetDefRegistry", () => {
95
95
  promise1.catch(() => undefined);
96
96
  });
97
97
 
98
+ it("should retry a new URL after invalidating the same hash", () => {
99
+ const promise1 = getModule(registry, "http://localhost/a.js", "same-hash");
100
+ registry.invalidate("same-hash");
101
+ const promise2 = getModule(registry, "http://localhost/b.js", "same-hash");
102
+
103
+ expect(promise1).not.toBe(promise2);
104
+ promise1.catch(() => undefined);
105
+ promise2.catch(() => undefined);
106
+ });
107
+
98
108
  it("should create different promises for different hashes", () => {
99
109
  const promise1 = getModule(registry, "http://localhost/a.js", "hash-a");
100
110
  const promise2 = getModule(registry, "http://localhost/b.js", "hash-b");
@@ -337,13 +347,12 @@ describe("WidgetBinding", () => {
337
347
  { el: document.createElement("div") },
338
348
  { signal: controller.signal },
339
349
  );
340
- // Called once by the hydration replay at mount, once by the set.
341
350
  model.set("count", 1);
342
- expect(onCount).toHaveBeenCalledTimes(2);
351
+ expect(onCount).toHaveBeenCalledTimes(1);
343
352
 
344
353
  controller.abort();
345
354
  model.set("count", 2);
346
- expect(onCount).toHaveBeenCalledTimes(2);
355
+ expect(onCount).toHaveBeenCalledTimes(1);
347
356
  });
348
357
 
349
358
  it("should auto-clear initialize listeners on destroy", async () => {
@@ -366,92 +375,54 @@ describe("WidgetBinding", () => {
366
375
  });
367
376
  });
368
377
 
369
- describe("WidgetBinding hydration replay", () => {
370
- it("replays current state to render listeners exactly once", async () => {
378
+ describe("WidgetBinding render listeners", () => {
379
+ it("fire only for changes after mount, never for pre-existing state", async () => {
371
380
  const model = new Model<ModelState>({ count: 8 }, createMockComm());
372
- const el = document.createElement("div");
373
- const widgetDef = {
374
- render: vi.fn(({ model, el }) => {
375
- // A widget view that starts with a local default and relies on
376
- // change events for hydration.
377
- el.textContent = "count is 5";
378
- model.on("change:count", () => {
379
- el.textContent = `count is ${model.get("count")}`;
380
- });
381
- }),
382
- };
383
- const binding = await createBinding(widgetDef, model);
384
-
385
- const controller = new AbortController();
386
- await binding.createView({ el }, { signal: controller.signal });
387
- expect(el.textContent).toBe("count is 8");
388
- });
389
-
390
- it("does not re-fire listeners of already-mounted views", async () => {
391
- // Mounting view B must not double-paint view A: the replay is
392
- // scoped to the listeners the new render attached.
393
- const model = new Model<ModelState>({ count: 0 }, createMockComm());
394
- const listeners: Array<ReturnType<typeof vi.fn>> = [];
381
+ const onCount = vi.fn();
382
+ const onAnyChange = vi.fn();
395
383
  const widgetDef = {
396
384
  render: vi.fn(({ model }) => {
397
- const listener = vi.fn();
398
- listeners.push(listener);
399
- model.on("change:count", listener);
385
+ model.on("change:count", onCount);
386
+ model.on("change", onAnyChange);
400
387
  }),
401
388
  };
402
389
  const binding = await createBinding(widgetDef, model);
403
390
  const controller = new AbortController();
404
-
405
391
  await binding.createView(
406
392
  { el: document.createElement("div") },
407
393
  { signal: controller.signal },
408
394
  );
409
- expect(listeners[0]).toHaveBeenCalledTimes(1);
395
+ expect(onCount).not.toHaveBeenCalled();
396
+ expect(onAnyChange).not.toHaveBeenCalled();
410
397
 
411
- await binding.createView(
412
- { el: document.createElement("div") },
413
- { signal: controller.signal },
414
- );
415
- // View B's listener hydrated once; view A's was left alone.
416
- expect(listeners[1]).toHaveBeenCalledTimes(1);
417
- expect(listeners[0]).toHaveBeenCalledTimes(1);
398
+ model.set("count", 9);
399
+ expect(onCount).toHaveBeenCalledTimes(1);
400
+ expect(onCount).toHaveBeenCalledWith(9);
418
401
  });
419
402
 
420
- it("replays the any-change event to its listeners", async () => {
421
- const model = new Model<ModelState>({ count: 1 }, createMockComm());
422
- const onAnyChange = vi.fn();
403
+ it("mounting a second view does not fire the first view's listeners", async () => {
404
+ const model = new Model<ModelState>({ count: 0 }, createMockComm());
405
+ const listeners: Array<ReturnType<typeof vi.fn>> = [];
423
406
  const widgetDef = {
424
407
  render: vi.fn(({ model }) => {
425
- model.on("change", onAnyChange);
408
+ const listener = vi.fn();
409
+ listeners.push(listener);
410
+ model.on("change:count", listener);
426
411
  }),
427
412
  };
428
413
  const binding = await createBinding(widgetDef, model);
429
414
  const controller = new AbortController();
415
+
430
416
  await binding.createView(
431
417
  { el: document.createElement("div") },
432
418
  { signal: controller.signal },
433
419
  );
434
- expect(onAnyChange).toHaveBeenCalledTimes(1);
435
- });
436
-
437
- it("does not replay initialize listeners", async () => {
438
- // The guarantee is per-view: initialize listeners existed before
439
- // any view, and replaying at them would fire once per mount.
440
- const model = new Model<ModelState>({ count: 1 }, createMockComm());
441
- const initListener = vi.fn();
442
- const widgetDef = {
443
- initialize: vi.fn(({ model }) => {
444
- model.on("change:count", initListener);
445
- }),
446
- render: vi.fn(),
447
- };
448
- const binding = await createBinding(widgetDef, model);
449
- const controller = new AbortController();
450
420
  await binding.createView(
451
421
  { el: document.createElement("div") },
452
422
  { signal: controller.signal },
453
423
  );
454
- expect(initListener).not.toHaveBeenCalled();
424
+ expect(listeners[0]).not.toHaveBeenCalled();
425
+ expect(listeners[1]).not.toHaveBeenCalled();
455
426
  });
456
427
 
457
428
  it("clears the element before rendering into it", async () => {
@@ -5,15 +5,6 @@ import type { ModelState } from "./types";
5
5
 
6
6
  type ModelEventCallback = Parameters<AnyModel<ModelState>["on"]>[1];
7
7
 
8
- /**
9
- * A listener registered through a model proxy (see the hydration
10
- * replay in `WidgetBinding.createView`).
11
- */
12
- export interface ProxyRegistration {
13
- event: string;
14
- callback: ModelEventCallback;
15
- }
16
-
17
8
  /**
18
9
  * Wrap a model so every `on()` call from inside `initialize` or `render`
19
10
  * is auto-tied to a lifetime `AbortSignal`. When the signal aborts,
@@ -27,14 +18,11 @@ export interface ProxyRegistration {
27
18
  * The proxy is purely a host-side ergonomic helper. The widget author
28
19
  * still writes `model.on("change:foo", handler)` exactly as before; the
29
20
  * cleanup signal is supplied transparently.
30
- *
31
- * `onRegister`, when given, observes each `on()` registration.
32
21
  */
33
22
  // oxlint-disable-next-line marimo/prefer-object-params -- concise internal helper used at protocol call sites
34
23
  export function modelProxy<T extends ModelState>(
35
24
  model: AnyModel<T>,
36
25
  signal: AbortSignal,
37
- onRegister?: (registration: ProxyRegistration) => void,
38
26
  ): AnyModel<T> {
39
27
  return {
40
28
  get(key) {
@@ -55,7 +43,6 @@ export function modelProxy<T extends ModelState>(
55
43
  signal.addEventListener("abort", () => model.off(name, callback), {
56
44
  once: true,
57
45
  });
58
- onRegister?.({ event: name, callback });
59
46
  },
60
47
  off(name?: string | null, callback?: ModelEventCallback | null): void {
61
48
  model.off(name ?? null, callback ?? null);
@@ -211,6 +211,7 @@ export class WidgetRuntime {
211
211
  });
212
212
  const widget = resolveAnyWidget(mod, spec.url);
213
213
  if (!widget) {
214
+ WIDGET_DEF_REGISTRY.invalidate(spec.hash);
214
215
  throw getInvalidAnyWidgetModuleError(mod, spec.url);
215
216
  }
216
217
  return WidgetBinding.create({
@@ -12,7 +12,7 @@ import { isTrustedVirtualFileUrl } from "@/plugins/core/trusted-url";
12
12
  import { Logger } from "@/utils/Logger";
13
13
  import type { Host } from "./host";
14
14
  import type { Model } from "./model";
15
- import { modelProxy, type ProxyRegistration } from "./model-proxy";
15
+ import { modelProxy } from "./model-proxy";
16
16
  import type { ModelState } from "./types";
17
17
 
18
18
  export const experimental: Experimental = {
@@ -80,6 +80,10 @@ class WidgetDefRegistry {
80
80
  return promise;
81
81
  }
82
82
 
83
+ invalidate(jsHash: string): void {
84
+ this.#cache.delete(jsHash);
85
+ }
86
+
83
87
  async #doImport(
84
88
  jsUrl: string,
85
89
  opts: { kernelAuthored?: boolean } = {},
@@ -266,9 +270,8 @@ export class WidgetBinding<T extends ModelState = ModelState> {
266
270
  * when the caller's `signal` fires or the binding is destroyed, and
267
271
  * listeners registered inside `render` auto-clear on abort.
268
272
  *
269
- * Hydration guarantee: listeners attached during `render` observe
270
- * current model state exactly once, after `render` settles. Scoped
271
- * to this view's listeners; re-firing at other views double-paints.
273
+ * `render` reads current state via `model.get`; change listeners
274
+ * observe only subsequent changes, matching Jupyter semantics.
272
275
  */
273
276
  async createView(
274
277
  target: { el: HTMLElement },
@@ -305,11 +308,8 @@ export class WidgetBinding<T extends ModelState = ModelState> {
305
308
  // Each view gets a host scoped to its own signal so child views tear
306
309
  // down with this view.
307
310
  const host = this.#createHost(renderSignal);
308
- const registrations: ProxyRegistration[] = [];
309
311
  const renderCleanup = await widget.render({
310
- model: modelProxy(this.#model, renderSignal, (registration) =>
311
- registrations.push(registration),
312
- ),
312
+ model: modelProxy(this.#model, renderSignal),
313
313
  el: target.el,
314
314
  experimental,
315
315
  signal: renderSignal,
@@ -333,7 +333,6 @@ export class WidgetBinding<T extends ModelState = ModelState> {
333
333
  once: true,
334
334
  });
335
335
  }
336
- this.#replayState(registrations, renderSignal);
337
336
  }
338
337
 
339
338
  #trackCleanup(cleanup: Cleanup, reason: string): Promise<void> {
@@ -343,31 +342,6 @@ export class WidgetBinding<T extends ModelState = ModelState> {
343
342
  return task;
344
343
  }
345
344
 
346
- /**
347
- * The hydration guarantee documented on `createView`.
348
- */
349
- #replayState(
350
- registrations: readonly ProxyRegistration[],
351
- renderSignal: AbortSignal,
352
- ): void {
353
- const changePrefix = "change:";
354
- for (const { event, callback } of registrations) {
355
- if (renderSignal.aborted) {
356
- return;
357
- }
358
- try {
359
- if (event.startsWith(changePrefix)) {
360
- const key = event.slice(changePrefix.length);
361
- callback(this.#model.get(key));
362
- } else if (event === "change") {
363
- callback();
364
- }
365
- } catch (error) {
366
- Logger.error("[WidgetBinding] Error replaying state", error);
367
- }
368
- }
369
- }
370
-
371
345
  /**
372
346
  * Destroy this generation, running initialize/render cleanups and
373
347
  * clearing listeners registered through its model proxies.
@@ -12,6 +12,13 @@ export interface ImageComparisonData {
12
12
  height?: string;
13
13
  }
14
14
 
15
+ // Truncate long sources (e.g. base64 data URLs) so error messages stay
16
+ // readable.
17
+ function truncateSrc(src: string): string {
18
+ const MAX_LENGTH = 100;
19
+ return src.length > MAX_LENGTH ? `${src.slice(0, MAX_LENGTH)}…` : src;
20
+ }
21
+
15
22
  const ImageComparisonComponent: React.FC<ImageComparisonData> = ({
16
23
  beforeSrc,
17
24
  afterSrc,
@@ -20,17 +27,61 @@ const ImageComparisonComponent: React.FC<ImageComparisonData> = ({
20
27
  width,
21
28
  height,
22
29
  }) => {
30
+ const [failedSrcs, setFailedSrcs] = React.useState<ReadonlySet<string>>(
31
+ () => new Set(),
32
+ );
33
+
34
+ React.useEffect(() => {
35
+ setFailedSrcs(new Set());
36
+ }, [beforeSrc, afterSrc]);
37
+
38
+ const handleError = React.useCallback((src: string) => {
39
+ setFailedSrcs((prev) => new Set(prev).add(src));
40
+ }, []);
41
+
23
42
  const containerStyle: React.CSSProperties = {
24
43
  width: width || "100%",
25
44
  height: height || (direction === "vertical" ? "400px" : "auto"),
26
45
  maxWidth: "100%",
46
+ // The slider derives its height entirely from its (loaded) images, so a
47
+ // broken/slow-loading source would otherwise collapse it to nothing and
48
+ // render an empty output. Keep a minimum height so it stays visible.
49
+ minHeight: "2rem",
27
50
  };
28
51
 
52
+ // If an image fails to load, the slider collapses to nothing; surface a
53
+ // visible error instead of silently rendering an empty output.
54
+ if (failedSrcs.size > 0) {
55
+ return (
56
+ <div
57
+ style={containerStyle}
58
+ className="flex items-center justify-center rounded border border-destructive/40 bg-destructive/5 p-3 text-sm text-destructive"
59
+ >
60
+ <span>
61
+ Failed to load {failedSrcs.size > 1 ? "images" : "image"}:{" "}
62
+ {[...failedSrcs].map((src) => `"${truncateSrc(src)}"`).join(", ")}
63
+ </span>
64
+ </div>
65
+ );
66
+ }
67
+
29
68
  return (
30
69
  <div style={containerStyle}>
31
70
  <ImgComparisonSlider value={value} direction={direction}>
32
- <img slot="first" src={beforeSrc} alt="Before" width="100%" />
33
- <img slot="second" src={afterSrc} alt="After" width="100%" />
71
+ <img
72
+ slot="first"
73
+ src={beforeSrc}
74
+ alt="Before"
75
+ width="100%"
76
+ onError={() => handleError(beforeSrc)}
77
+ />
78
+ <img
79
+ slot="second"
80
+ src={afterSrc}
81
+ alt="After"
82
+ width="100%"
83
+ onError={() => handleError(afterSrc)}
84
+ />
34
85
  </ImgComparisonSlider>
35
86
  </div>
36
87
  );
@@ -0,0 +1,71 @@
1
+ /* Copyright 2026 Marimo. All rights reserved. */
2
+
3
+ import { fireEvent, render } from "@testing-library/react";
4
+ import { describe, expect, it } from "vitest";
5
+ import ImageComparisonComponent from "../ImageComparisonComponent";
6
+
7
+ const baseProps = {
8
+ beforeSrc: "before.png",
9
+ afterSrc: "after.png",
10
+ value: 50,
11
+ direction: "horizontal" as const,
12
+ };
13
+
14
+ describe("ImageComparisonComponent", () => {
15
+ it("renders the comparison slider with both images", () => {
16
+ const { getByAltText, container } = render(
17
+ <ImageComparisonComponent {...baseProps} />,
18
+ );
19
+ expect(getByAltText("Before")).toBeTruthy();
20
+ expect(getByAltText("After")).toBeTruthy();
21
+ expect(container.querySelector("img-comparison-slider")).toBeTruthy();
22
+ });
23
+
24
+ it("shows a visible error instead of collapsing when an image fails to load", () => {
25
+ const brokenSrc = "https://example.com/does-not-exist.png";
26
+ const { getByAltText, queryByText, container } = render(
27
+ <ImageComparisonComponent {...baseProps} beforeSrc={brokenSrc} />,
28
+ );
29
+
30
+ // No error before the image fails.
31
+ expect(queryByText(/Failed to load/)).toBeNull();
32
+
33
+ fireEvent.error(getByAltText("Before"));
34
+
35
+ // The slider is replaced with a visible error mentioning the source, so
36
+ // the output is never a silent blank.
37
+ expect(container.querySelector("img-comparison-slider")).toBeNull();
38
+ const error = queryByText(/Failed to load image/);
39
+ expect(error).toBeTruthy();
40
+ expect(error?.textContent).toContain(brokenSrc);
41
+ });
42
+
43
+ it("clears the error when the sources change so new images can load", () => {
44
+ const brokenSrc = "https://example.com/does-not-exist.png";
45
+ const { getByAltText, queryByText, container, rerender } = render(
46
+ <ImageComparisonComponent {...baseProps} beforeSrc={brokenSrc} />,
47
+ );
48
+
49
+ fireEvent.error(getByAltText("Before"));
50
+ expect(queryByText(/Failed to load/)).toBeTruthy();
51
+
52
+ // Re-render with a new source (e.g. the user fixed the notebook): the error
53
+ // should clear and the slider should mount again rather than stay stuck.
54
+ rerender(<ImageComparisonComponent {...baseProps} beforeSrc="fixed.png" />);
55
+ expect(queryByText(/Failed to load/)).toBeNull();
56
+ expect(container.querySelector("img-comparison-slider")).toBeTruthy();
57
+ });
58
+
59
+ it("truncates long sources (e.g. data URLs) in the error message", () => {
60
+ const longSrc = `data:image/png;base64,${"A".repeat(200)}`;
61
+ const { getByAltText, queryByText } = render(
62
+ <ImageComparisonComponent {...baseProps} afterSrc={longSrc} />,
63
+ );
64
+
65
+ fireEvent.error(getByAltText("After"));
66
+
67
+ const error = queryByText(/Failed to load image/);
68
+ expect(error?.textContent).toContain("…");
69
+ expect(error?.textContent).not.toContain("A".repeat(200));
70
+ });
71
+ });
@@ -0,0 +1,102 @@
1
+ /* Copyright 2026 Marimo. All rights reserved. */
2
+
3
+ import { renderHook } from "@testing-library/react";
4
+ import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
5
+ import { useRef } from "react";
6
+ import { useVegaContainerRemeasure } from "../use-vega-container-remeasure";
7
+
8
+ describe("useVegaContainerRemeasure", () => {
9
+ let observers: FakeResizeObserver[];
10
+ let OriginalResizeObserver: typeof ResizeObserver;
11
+
12
+ class FakeResizeObserver {
13
+ callback: ResizeObserverCallback;
14
+ el: Element | null = null;
15
+
16
+ constructor(callback: ResizeObserverCallback) {
17
+ this.callback = callback;
18
+ observers.push(this);
19
+ }
20
+
21
+ observe(el: Element) {
22
+ this.el = el;
23
+ }
24
+
25
+ disconnect() {
26
+ this.el = null;
27
+ }
28
+
29
+ unobserve() {
30
+ this.el = null;
31
+ }
32
+
33
+ trigger(width: number) {
34
+ this.callback(
35
+ [
36
+ {
37
+ target: this.el!,
38
+ contentRect: {
39
+ width,
40
+ height: 100,
41
+ x: 0,
42
+ y: 0,
43
+ top: 0,
44
+ left: 0,
45
+ bottom: 100,
46
+ right: width,
47
+ toJSON: () => ({}),
48
+ },
49
+ borderBoxSize: [],
50
+ contentBoxSize: [],
51
+ devicePixelContentBoxSize: [],
52
+ } satisfies ResizeObserverEntry,
53
+ ],
54
+ this,
55
+ );
56
+ }
57
+ }
58
+
59
+ beforeEach(() => {
60
+ observers = [];
61
+ OriginalResizeObserver = globalThis.ResizeObserver;
62
+ globalThis.ResizeObserver =
63
+ FakeResizeObserver as unknown as typeof ResizeObserver;
64
+ vi.stubGlobal("requestAnimationFrame", (cb: FrameRequestCallback) => {
65
+ cb(0);
66
+ return 0;
67
+ });
68
+ });
69
+
70
+ afterEach(() => {
71
+ globalThis.ResizeObserver = OriginalResizeObserver;
72
+ vi.unstubAllGlobals();
73
+ });
74
+
75
+ it("dispatches window resize when the container gains width", () => {
76
+ const el = document.createElement("div");
77
+ Object.defineProperty(el, "clientWidth", { value: 0, configurable: true });
78
+ const dispatchSpy = vi.spyOn(window, "dispatchEvent");
79
+
80
+ renderHook(() => {
81
+ const ref = useRef<HTMLDivElement>(el);
82
+ useVegaContainerRemeasure(ref, true);
83
+ });
84
+
85
+ expect(observers).toHaveLength(1);
86
+ observers[0].trigger(0);
87
+ expect(dispatchSpy).not.toHaveBeenCalled();
88
+
89
+ observers[0].trigger(640);
90
+ expect(dispatchSpy).toHaveBeenCalledWith(expect.any(Event));
91
+ expect(dispatchSpy.mock.calls[0][0].type).toBe("resize");
92
+ });
93
+
94
+ it("is a no-op when disabled", () => {
95
+ const el = document.createElement("div");
96
+ renderHook(() => {
97
+ const ref = useRef<HTMLDivElement>(el);
98
+ useVegaContainerRemeasure(ref, false);
99
+ });
100
+ expect(observers).toHaveLength(0);
101
+ });
102
+ });
@@ -0,0 +1,39 @@
1
+ /* Copyright 2026 Marimo. All rights reserved. */
2
+
3
+ import { type RefObject, useEffect } from "react";
4
+
5
+ /**
6
+ * Vega-Lite's width:"container" only remeasures on window.resize — not when a
7
+ * parent goes from display:none / zero-size to a real layout size. Observe the
8
+ * embed host and dispatch the event Vega already listens for when the container
9
+ * gains a positive width.
10
+ */
11
+ export function useVegaContainerRemeasure(
12
+ ref: RefObject<HTMLElement | null>,
13
+ enabled: boolean,
14
+ ): void {
15
+ useEffect(() => {
16
+ const el = ref.current;
17
+ if (!el || !enabled || typeof ResizeObserver === "undefined") {
18
+ return;
19
+ }
20
+
21
+ let lastWidth = el.clientWidth;
22
+ const observer = new ResizeObserver((entries) => {
23
+ const width = entries[0]?.contentRect.width ?? 0;
24
+ if (width <= 0) {
25
+ lastWidth = 0;
26
+ return;
27
+ }
28
+ if (Math.round(width) === Math.round(lastWidth)) {
29
+ return;
30
+ }
31
+ lastWidth = width;
32
+ requestAnimationFrame(() => {
33
+ window.dispatchEvent(new Event("resize"));
34
+ });
35
+ });
36
+ observer.observe(el);
37
+ return () => observer.disconnect();
38
+ }, [ref, enabled]);
39
+ }