@marimo-team/frontend 0.23.12-dev4 → 0.23.12-dev7

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 (188) hide show
  1. package/dist/assets/{CellStatus-DWKF60ch.js → CellStatus-6opTJjMX.js} +1 -1
  2. package/dist/assets/{ConnectedDataExplorerComponent-DjiALugX.js → ConnectedDataExplorerComponent-i1kaFF7n.js} +1 -1
  3. package/dist/assets/{ErrorBoundary-YqGfStRa.js → ErrorBoundary-Bo313Z9X.js} +1 -1
  4. package/dist/assets/{ImperativeModal-_JsD8Geg.js → ImperativeModal-B62Q6S9l.js} +1 -1
  5. package/dist/assets/{Inputs-CuKU-ENz.css → Inputs-C4Oo7q-H.css} +1 -1
  6. package/dist/assets/{JsonOutput-B7vuddcd.css → JsonOutput-BQtz7-np.css} +1 -1
  7. package/dist/assets/{JsonOutput-QXW7KD7g.js → JsonOutput-CWVuEz6C.js} +3 -3
  8. package/dist/assets/{LazyAnyLanguageCodeMirror-BqPfvXlM.js → LazyAnyLanguageCodeMirror-CsAMDSIw.js} +2 -2
  9. package/dist/assets/{MarimoErrorOutput-CbSSWhjw.js → MarimoErrorOutput-dYrcxVwq.js} +2 -2
  10. package/dist/assets/{RSPContexts-B9yuKjdT.js → RSPContexts-VzcTZjG1.js} +1 -1
  11. package/dist/assets/{RenderHTML-B283s7MJ.js → RenderHTML-ohul2q99.js} +1 -1
  12. package/dist/assets/{RunButton-C_19zU-4.js → RunButton-BMpP08P_.js} +1 -1
  13. package/dist/assets/{add-cell-with-ai-63FLemQ6.js → add-cell-with-ai-5tJjrFh0.js} +1 -1
  14. package/dist/assets/{add-connection-dialog-Bv2XA3ka.js → add-connection-dialog-pVExi7gB.js} +1 -1
  15. package/dist/assets/{agent-panel-7V3dGxQ5.js → agent-panel-By97CFFK.js} +5 -5
  16. package/dist/assets/{ai-model-dropdown-C6gk2SxA.js → ai-model-dropdown-Dvmxl0HU.js} +4 -4
  17. package/dist/assets/alert-1y_DnRWn.js +1 -0
  18. package/dist/assets/{alert-dialog-Dj7YzzBi.js → alert-dialog-CC0gG4Av.js} +1 -1
  19. package/dist/assets/{any-language-editor-DadY-3pz.js → any-language-editor-F2HBwXr3.js} +1 -1
  20. package/dist/assets/{app-config-button-CC-L3J3r.js → app-config-button-BB5z7_FE.js} +1 -1
  21. package/dist/assets/{button-DuHyjdW2.js → button-BF7GSjhW.js} +1 -1
  22. package/dist/assets/{cache-panel-BHYMMbEc.js → cache-panel-BlIrcwlT.js} +1 -1
  23. package/dist/assets/{capabilities-ClLgkhPb.js → capabilities-CjNGDxxx.js} +1 -1
  24. package/dist/assets/{cell-editor-b-XUcy_0.js → cell-editor-DQKaGrC9.js} +2 -2
  25. package/dist/assets/cell-editor-_cVIHMNI.css +2 -0
  26. package/dist/assets/{cell-link-CltAZE6t.js → cell-link-DBKqdVgo.js} +1 -1
  27. package/dist/assets/{cells-pu5xzE_v.css → cells-BVzo2MHf.css} +2 -2
  28. package/dist/assets/{cells-CHWMpikY.js → cells-DiASVTIh.js} +20 -20
  29. package/dist/assets/{chat-display-0upQ9ApT.js → chat-display-D8X6vz7W.js} +1 -1
  30. package/dist/assets/{chat-panel-C3iqwnxV.js → chat-panel-B9l3ukjX.js} +1 -1
  31. package/dist/assets/{chat-ui-CG7BMZQT.js → chat-ui-BwH7dd6n.js} +1 -1
  32. package/dist/assets/{column-preview-DPRIVh2U.js → column-preview-B3CdpsbL.js} +1 -1
  33. package/dist/assets/{command-emRtRCMn.js → command-DRHbYHUP.js} +1 -1
  34. package/dist/assets/{command-palette-J0bFdD9g.js → command-palette-D2BHtSuk.js} +1 -1
  35. package/dist/assets/{common-YBBQumDk.js → common-CvUUt55g.js} +1 -1
  36. package/dist/assets/{components-DBOw-EPg.js → components-CimBDpZ8.js} +1 -1
  37. package/dist/assets/{config-6vnnoRNy.js → config-3clPIEB9.js} +1 -1
  38. package/dist/assets/{copy-C_iQKqnH.js → copy-D8MtpXgN.js} +1 -1
  39. package/dist/assets/{copy-icon-CeGeeBdW.js → copy-icon-EHMT-qlr.js} +1 -1
  40. package/dist/assets/{createReducer-CzbhqMat.js → createReducer-3wF4dU7I.js} +1 -1
  41. package/dist/assets/{datasource-C6_8-viy.js → datasource-Da-qoi34.js} +1 -1
  42. package/dist/assets/{dates-C61OL-dM.js → dates-D8uxHHPL.js} +1 -1
  43. package/dist/assets/{dependency-graph-panel-D83-WLVK.js → dependency-graph-panel-CMjZH8W-.js} +2 -2
  44. package/dist/assets/{dialog-HQS6OqZN.js → dialog-DkJmIrsG.js} +1 -1
  45. package/dist/assets/{dist-C3166O2z.js → dist-DCqDlsgq.js} +1 -1
  46. package/dist/assets/{documentation-panel-DTnM09IC.js → documentation-panel-BS_uG8hW.js} +1 -1
  47. package/dist/assets/{download-Ct_TgW5r.js → download-CdS_EveB.js} +1 -1
  48. package/dist/assets/{dropdown-menu-ItqBTuc3.js → dropdown-menu-DfGLyCbP.js} +1 -1
  49. package/dist/assets/{edit-page-CRS0yn99.js → edit-page-DanoliKk.js} +6 -6
  50. package/dist/assets/empty-state-QmmE2oN4.js +1 -0
  51. package/dist/assets/{error-banner-Ct1mv9wE.js → error-banner-BSQVN46J.js} +1 -1
  52. package/dist/assets/{error-panel-DLrrxrpE.js → error-panel-Csh1BgrG.js} +1 -1
  53. package/dist/assets/{es-D70Vphlx.js → es-EItoYvXh.js} +1 -1
  54. package/dist/assets/{field-tn87_E9F.js → field-DlNY-dDH.js} +1 -1
  55. package/dist/assets/{file-explorer-panel-C4On50ex.js → file-explorer-panel--h0xwnRB.js} +1 -1
  56. package/dist/assets/{file-icons-CYkhl3GL.js → file-icons-D6BjDFSV.js} +1 -1
  57. package/dist/assets/{file-name-input-ChsdEroc.js → file-name-input-CsUxNFtr.js} +1 -1
  58. package/dist/assets/{floating-outline-BYOWegDI.js → floating-outline-D2cwxR8Z.js} +1 -1
  59. package/dist/assets/{focus-D5qOsUgK.js → focus-BvvRVcVF.js} +1 -1
  60. package/dist/assets/{form-DeUXsgGH.js → form-CO925gWV.js} +1 -1
  61. package/dist/assets/{formats-CBt24TWP.js → formats-ZGU43GQU.js} +1 -1
  62. package/dist/assets/{formatting-eWiw-Q8f.js → formatting-DhA_x3cD.js} +1 -1
  63. package/dist/assets/{fullscreen-BWhrFYLX.js → fullscreen-BXI8V5i6.js} +1 -1
  64. package/dist/assets/{gallery-page-Cdzff-Qg.js → gallery-page-CNPcxPCI.js} +1 -1
  65. package/dist/assets/{glide-data-editor-C-TEbaaI.js → glide-data-editor-Bmm8OMxa.js} +1 -1
  66. package/dist/assets/glide-data-editor-bv6Gjy-B.css +1 -0
  67. package/dist/assets/{globals-CtlGW6I9.js → globals-Bx8Km3LH.js} +1 -1
  68. package/dist/assets/{home-page-mSJrlwQP.js → home-page-CPt4LGp0.js} +1 -1
  69. package/dist/assets/{hooks-B7Rts5E9.js → hooks-7dyPrQQS.js} +1 -1
  70. package/dist/assets/{html-to-image-CwotZpj4.js → html-to-image-BWhkUSek.js} +1 -1
  71. package/dist/assets/index-C65kCpI9.css +2 -0
  72. package/dist/assets/{index-CPP8bPS4.js → index-awbrczCl.js} +7 -7
  73. package/dist/assets/{input-DqLOEfxi.js → input-DB2LiTiQ.js} +1 -1
  74. package/dist/assets/{kiosk-mode-BbYPCeNP.js → kiosk-mode-D0mAc3Fr.js} +1 -1
  75. package/dist/assets/{label-B0dIDKzs.js → label-CFvCMYuj.js} +1 -1
  76. package/dist/assets/{layout-D6cTuIkL.js → layout-C0MKkswN.js} +3 -3
  77. package/dist/assets/{links-DyPoFWQA.js → links-BN8FYTyp.js} +1 -1
  78. package/dist/assets/{logs-panel-Bbs9bNZs.js → logs-panel-BaGDTq_5.js} +1 -1
  79. package/dist/assets/{markdown-renderer-BNkLMIkn.js → markdown-renderer-CyLjgnQY.js} +1 -1
  80. package/dist/assets/{menu-items-CO4MfAgB.js → menu-items-CQMqwayA.js} +1 -1
  81. package/dist/assets/{mermaid-x93GPw1i.js → mermaid-yhDJCmk2.js} +1 -1
  82. package/dist/assets/{multi-icon-pwGWVz3d.css → multi-icon-CW3_9bja.css} +1 -1
  83. package/dist/assets/{multi-map-BRoHtMOY.js → multi-map-9ogswH46.js} +1 -1
  84. package/dist/assets/{name-cell-input-BLlsboll.js → name-cell-input-DBkW5PZU.js} +1 -1
  85. package/dist/assets/{numbers-B5K_E7OP.js → numbers-_ry1Nlla.js} +1 -1
  86. package/dist/assets/{outline-panel-w43V587L.css → outline-panel-DHPbKZNT.css} +1 -1
  87. package/dist/assets/{outline-panel-rkIr1QNz.js → outline-panel-xLeB4sTR.js} +1 -1
  88. package/dist/assets/{packages-panel-BDeQ6RMe.js → packages-panel-BbWGOWIZ.js} +1 -1
  89. package/dist/assets/{pair-with-agent-modal-LNomHeQ3.js → pair-with-agent-modal-Q9Od23Rh.js} +2 -2
  90. package/dist/assets/{panels-B4E3DsXP.css → panels-DDsRoC3H.css} +1 -1
  91. package/dist/assets/{panels-DklBul5F.js → panels-id0eyz64.js} +1 -1
  92. package/dist/assets/{popover-CjugjEGp.js → popover-DMNO6Poc.js} +1 -1
  93. package/dist/assets/process-output-BcuY_Us9.js +1 -0
  94. package/dist/assets/{radio-group-ro2znWCo.js → radio-group-XouISBp9.js} +1 -1
  95. package/dist/assets/{readonly-python-code-Rbx7Ee_u.js → readonly-python-code-BK3Xk2qY.js} +1 -1
  96. package/dist/assets/{renderShortcut-D7vPTxQw.js → renderShortcut-LpVarhnQ.js} +1 -1
  97. package/dist/assets/{reveal-component-CMD1_gk8.css → reveal-component-55QLSQaY.css} +1 -1
  98. package/dist/assets/{reveal-component-D--4ov10.js → reveal-component-Do91RUH9.js} +2 -2
  99. package/dist/assets/{run-page-HMHhlHXA.js → run-page-CYnMjVum.js} +1 -1
  100. package/dist/assets/{runs-C1XrKvr5.js → runs-Edg4TRSI.js} +1 -1
  101. package/dist/assets/{scratchpad-panel-1N03WMvF.js → scratchpad-panel-DH3KlUbZ.js} +1 -1
  102. package/dist/assets/{secrets-panel-BdUz6vG7.js → secrets-panel-CgahHnqr.js} +1 -1
  103. package/dist/assets/{select-D8ewebPZ.js → select-Cjly7tmx.js} +1 -1
  104. package/dist/assets/{session-NNbloO8g.js → session-CsT5Gg9j.js} +1 -1
  105. package/dist/assets/{session-panel-sp7p_i1J.js → session-panel-BJP2lKfE.js} +1 -1
  106. package/dist/assets/{share-C1RBdbis.js → share-DQjChRJG.js} +1 -1
  107. package/dist/assets/{snippets-panel-BWo8lxGn.js → snippets-panel-DKenTNmv.js} +1 -1
  108. package/dist/assets/{snippets-panel-fg1cdAzn.css → snippets-panel-Qc3aWbYx.css} +1 -1
  109. package/dist/assets/{spec-CegvVOyV.js → spec-CDgWI0fT.js} +1 -1
  110. package/dist/assets/{state-Des6nv42.js → state-Cy10NkuA.js} +1 -1
  111. package/dist/assets/{state-nw3MJ7Ul.js → state-DjrxAf9W.js} +1 -1
  112. package/dist/assets/{state-3LYweM3z.js → state-DwAS0kE4.js} +1 -1
  113. package/dist/assets/{state-C2QvlGMs.js → state-MC8-jN2e.js} +1 -1
  114. package/dist/assets/{strings-C0KZ4uek.js → strings-DvZlHYnD.js} +1 -1
  115. package/dist/assets/{swiper-component-CJYx1rIa.js → swiper-component-BwPCQTdo.js} +1 -1
  116. package/dist/assets/{swiper-component-a65-SW8d.css → swiper-component-UB_Zmrma.css} +1 -1
  117. package/dist/assets/{switch-CAAV-Q_3.js → switch-DvDNxcZP.js} +1 -1
  118. package/dist/assets/{table-D0oF_Cv_.js → table-CnW850Wt.js} +1 -1
  119. package/dist/assets/{terminal-Bd0wzkSP.js → terminal-BXH7Uaqi.js} +1 -1
  120. package/dist/assets/{textarea-BF6sxhXQ.js → textarea-BBpaAGpK.js} +1 -1
  121. package/dist/assets/{tooltip-DfvClvB6.js → tooltip-CgQpRVyN.js} +1 -1
  122. package/dist/assets/{tracing-Cgii-4al.js → tracing-Bz68-Fa1.js} +1 -1
  123. package/dist/assets/{tracing-panel-BXvvt77y.js → tracing-panel-BfgGYFNi.js} +2 -2
  124. package/dist/assets/{tree-actions-D0qu4tQX.js → tree-actions-C729o8TG.js} +1 -1
  125. package/dist/assets/{useBoolean-CEf-f6bo.js → useBoolean-BMzj74q1.js} +1 -1
  126. package/dist/assets/{useCellActionButton-CctL-6ce.js → useCellActionButton-VGB6-gGh.js} +1 -1
  127. package/dist/assets/{useDeleteCell-9SpULTHH.js → useDeleteCell-D_p8uMly.js} +1 -1
  128. package/dist/assets/{useDependencyPanelTab-DEoqXf8l.js → useDependencyPanelTab-v8fQPE_U.js} +1 -1
  129. package/dist/assets/{useEventListener-Wyg6Md5s.js → useEventListener-BakX-tnw.js} +1 -1
  130. package/dist/assets/{useHotkey-BK1MRrIi.js → useHotkey-CJo8iX8v.js} +1 -1
  131. package/dist/assets/{useIframeCapabilities-piGMPmIq.js → useIframeCapabilities-B0dNZiKK.js} +1 -1
  132. package/dist/assets/{useInstallPackage-D_8LtT7f.js → useInstallPackage-C1Dd0aIZ.js} +1 -1
  133. package/dist/assets/{useInterval-D6xsFpdR.js → useInterval-BvJQmQqd.js} +1 -1
  134. package/dist/assets/{useNotebookActions-WDk7rlWv.js → useNotebookActions-Hdu82BAI.js} +1 -1
  135. package/dist/assets/{useRunCells-CXNnlQUh.js → useRunCells-DXtOL4UR.js} +1 -1
  136. package/dist/assets/{useSplitCell-7Ob0s_PE.js → useSplitCell-CzaZEqwj.js} +1 -1
  137. package/dist/assets/{useTheme-D7YEMvxS.js → useTheme-D_ZbTTJw.js} +1 -1
  138. package/dist/assets/{utils-B-XvLACn.js → utils-DPvpQ891.js} +1 -1
  139. package/dist/assets/{utils-Dcn8htEz.js → utils-Dev6I_Kv.js} +1 -1
  140. package/dist/assets/{vega-component-Cc5BbafI.js → vega-component-Ch7x9hsC.js} +1 -1
  141. package/dist/assets/{write-secret-modal-DW9FRn4n.js → write-secret-modal-K2n79wHj.js} +1 -1
  142. package/dist/index.html +70 -70
  143. package/package.json +3 -3
  144. package/src/components/ai/display-helpers.tsx +5 -5
  145. package/src/components/app-config/ai-config.tsx +5 -5
  146. package/src/components/app-config/mcp-config.tsx +3 -3
  147. package/src/components/chat/acp/agent-panel.tsx +3 -3
  148. package/src/components/chat/acp/blocks.tsx +36 -38
  149. package/src/components/chat/acp/common.tsx +12 -16
  150. package/src/components/chat/acp/scroll-to-bottom-button.tsx +1 -1
  151. package/src/components/chat/acp/session-tabs.tsx +2 -2
  152. package/src/components/chat/chat-history-popover.tsx +1 -1
  153. package/src/components/data-table/columns.tsx +2 -2
  154. package/src/components/data-table/filter-pill-editor.tsx +1 -1
  155. package/src/components/dependency-graph/minimap-content.tsx +1 -1
  156. package/src/components/editor/RecoveryButton.tsx +1 -1
  157. package/src/components/editor/actions/pair-with-agent-modal.tsx +2 -2
  158. package/src/components/editor/ai/ai-completion-editor.tsx +1 -1
  159. package/src/components/editor/cell/CreateCellButton.tsx +1 -1
  160. package/src/components/editor/chrome/panels/empty-state.tsx +1 -1
  161. package/src/components/editor/chrome/panels/outline/floating-outline.tsx +1 -1
  162. package/src/components/editor/chrome/wrapper/pending-ai-cells.tsx +1 -1
  163. package/src/components/editor/columns/cell-column.tsx +1 -1
  164. package/src/components/editor/columns/sortable-column.tsx +2 -2
  165. package/src/components/editor/output/MarimoErrorOutput.tsx +1 -1
  166. package/src/components/editor/output/TextOutput.tsx +2 -2
  167. package/src/components/slides/minimap.tsx +2 -2
  168. package/src/components/slides/reveal-component.tsx +1 -1
  169. package/src/components/ui/alert.tsx +1 -1
  170. package/src/components/ui/command.tsx +2 -2
  171. package/src/components/ui/reorderable-list.tsx +1 -1
  172. package/src/components/ui/table.tsx +2 -5
  173. package/src/core/codemirror/language/languages/sql/renderers.tsx +60 -68
  174. package/src/core/hotkeys/hotkeys.ts +1 -0
  175. package/src/plugins/impl/MatrixPlugin.tsx +2 -2
  176. package/src/plugins/impl/TabsPlugin.tsx +1 -1
  177. package/src/plugins/impl/matplotlib/matplotlib-renderer.ts +1 -1
  178. package/src/plugins/impl/mpl-interactive/MplInteractivePlugin.tsx +155 -98
  179. package/src/plugins/impl/mpl-interactive/__tests__/MplInteractivePlugin.test.tsx +154 -1
  180. package/src/plugins/impl/mpl-interactive/mpl-websocket-shim.ts +10 -0
  181. package/dist/assets/alert-DqbbTJFm.js +0 -1
  182. package/dist/assets/cell-editor-nqEF4IhQ.css +0 -2
  183. package/dist/assets/empty-state-COZ7sMv4.js +0 -1
  184. package/dist/assets/glide-data-editor-BrZJn3-g.css +0 -1
  185. package/dist/assets/index-DYQYDO53.css +0 -2
  186. package/dist/assets/process-output-B1Leg7X7.js +0 -1
  187. /package/dist/assets/{Inputs-Ce5uKBe1.js → Inputs-CqgPhOqy.js} +0 -0
  188. /package/dist/assets/{multi-icon-DZE4vMSW.js → multi-icon-CTvmuLdL.js} +0 -0
@@ -1,3 +1,3 @@
1
- var Vt=Object.defineProperty;var $e=f=>{throw TypeError(f)};var Qt=(f,h,y)=>h in f?Vt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:y}):f[h]=y;var n=(f,h,y)=>Qt(f,typeof h!="symbol"?h+"":h,y),ce=(f,h,y)=>h.has(f)||$e("Cannot "+y);var o=(f,h,y)=>(ce(f,h,"read from private field"),y?y.call(f):h.get(f)),_=(f,h,y)=>h.has(f)?$e("Cannot add the same private member more than once"):h instanceof WeakSet?h.add(f):h.set(f,y),C=(f,h,y,Q)=>(ce(f,h,"write to private field"),Q?Q.call(f,y):h.set(f,y),y),A=(f,h,y)=>(ce(f,h,"access private method"),y);import{i as U,p as ne,u as Yt}from"./useEvent-D91BmmQi.js";import{Bi as G,Ei as Gt,Pi as Kt,Pn as Jt,b as Xt,ji as Zt,ki as er,ot as ze,x as tr,zi as rr,__tla as sr}from"./cells-CHWMpikY.js";import{t as nr}from"./get-C-qh_et5.js";import{t as ar}from"./debounce-OiXznToA.js";import{t as ir}from"./_baseSet-CsW0tABf.js";import{_ as p,y as g}from"./useEventListener-Wyg6Md5s.js";import{t as or}from"./invariant-C2E8KCbD.js";import{w as lr}from"./utils-Dcn8htEz.js";import{T as ur,c as pe,l as Ve,n as dr}from"./config-6vnnoRNy.js";import{n as cr}from"./switch-CAAV-Q_3.js";import{n as pr}from"./globals-CtlGW6I9.js";import{t as fr}from"./createReducer-CzbhqMat.js";import{r as hr}from"./strings-C0KZ4uek.js";import{t as fe}from"./requests-KshNNAOp.js";import{a as Qe,l as mr,r as Ye,__tla as gr}from"./markdown-renderer-BNkLMIkn.js";import{t as yr}from"./DeferredRequestRegistry-RuL7NV1n.js";import{t as wr}from"./preload-helper-BW0IMuFq.js";import{t as Ge}from"./Deferred-BMfCOLaw.js";import{t as Ke}from"./uuid-ClFZlR7U.js";import{t as br}from"./use-toast-kCNiuc-_.js";import{n as vr}from"./RenderHTML-B283s7MJ.js";import{t as _r}from"./useRunCells-CXNnlQUh.js";import{n as Cr,t as Rr}from"./blob-BiK5xmlC.js";import{n as xr,r as qr,t as Er}from"./share-C1RBdbis.js";import{i as Je,r as Sr,t as Mr}from"./events-XR_LpvHc.js";let Xe,Ze,et,he,me,tt,ge,rt,V,st,nt,ye,we,at,it,ot,lt,ae,ut,dt,ie,K,ct,be,kr=Promise.all([(()=>{try{return sr}catch{}})(),(()=>{try{return gr}catch{}})()]).then(async()=>{var T,ee,ft,Ae,k,W,S,Ue,F,Te,P,Y,D,oe,We,je,te,I,L,H,R,j,N,ht,mt,gt,re;function f(t,e,r){return t==null?t:ir(t,e,r)}K=f,ct=ne(null);var{valueAtom:h,useActions:y}=fr(()=>({banners:[]}),{addBanner:(t,e)=>({...t,banners:[...t.banners,{...e,id:Ke()}]}),removeBanner:(t,e)=>({...t,banners:t.banners.filter(r=>r.id!==e)}),clearBanners:t=>({...t,banners:[]})});Ze=()=>Yt(h),Xe=function(){return y()};let Q,_e,Ce;Q=class{constructor(){n(this,"subscriptions",new Map)}addSubscription(t,e){var r;this.subscriptions.has(t)||this.subscriptions.set(t,new Set),(r=this.subscriptions.get(t))==null||r.add(e)}removeSubscription(t,e){var r;(r=this.subscriptions.get(t))==null||r.delete(e)}notify(t,e){for(let r of this.subscriptions.get(t)??[])r(e)}},me=class ve{constructor(e){n(this,"subscriptions",new Q);this.producer=e}static withProducerCallback(e){return new ve(e)}static empty(){return new ve}startProducer(){this.producer&&this.producer(e=>{this.subscriptions.notify("message",e)})}connect(){return new Promise(e=>setTimeout(e,0)).then(()=>{this.subscriptions.notify("open",new Event("open"))})}get readyState(){return WebSocket.OPEN}reconnect(e,r){this.close(),this.connect()}close(){this.subscriptions.notify("close",new Event("close"))}send(e){return this.subscriptions.notify("message",new MessageEvent("message",{data:e})),Promise.resolve()}addEventListener(e,r){this.subscriptions.addSubscription(e,r),e==="open"&&r(new Event("open")),e==="message"&&this.startProducer()}removeEventListener(e,r){this.subscriptions.removeSubscription(e,r)}},_e=1e10,Ce=1e3;function J(t,e){let r=t.map(s=>`"${s}"`).join(", ");return Error(`This RPC instance cannot ${e} because the transport did not provide one or more of these methods: ${r}`)}function wt(t={}){let e={};function r(l){e=l}let s={};function a(l){var c;s.unregisterHandler&&s.unregisterHandler(),s=l,(c=s.registerHandler)==null||c.call(s,zt)}let i;function u(l){if(typeof l=="function"){i=l;return}i=(c,w)=>{let m=l[c];if(m)return m(w);let b=l._;if(!b)throw Error(`The requested method has no handler: ${c}`);return b(c,w)}}let{maxRequestTime:d=Ce}=t;t.transport&&a(t.transport),t.requestHandler&&u(t.requestHandler),t._debugHooks&&r(t._debugHooks);let v=0;function x(){return v<=_e?++v:v=0}let q=new Map,E=new Map;function $(l,...c){let w=c[0];return new Promise((m,b)=>{var z;if(!s.send)throw J(["send"],"make requests");let M=x(),O={type:"request",id:M,method:l,params:w};q.set(M,{resolve:m,reject:b}),d!==1/0&&E.set(M,setTimeout(()=>{E.delete(M),b(Error("RPC request timed out."))},d)),(z=e.onSend)==null||z.call(e,O),s.send(O)})}let se=new Proxy($,{get:(l,c,w)=>c in l?Reflect.get(l,c,w):m=>$(c,m)}),Be=se;function Oe(l,...c){var b;let w=c[0];if(!s.send)throw J(["send"],"send messages");let m={type:"message",id:l,payload:w};(b=e.onSend)==null||b.call(e,m),s.send(m)}let De=new Proxy(Oe,{get:(l,c,w)=>c in l?Reflect.get(l,c,w):m=>Oe(c,m)}),He=De,B=new Map,de=new Set;function Ht(l,c){var w;if(!s.registerHandler)throw J(["registerHandler"],"register message listeners");if(l==="*"){de.add(c);return}B.has(l)||B.set(l,new Set),(w=B.get(l))==null||w.add(c)}function $t(l,c){var w,m;if(l==="*"){de.delete(c);return}(w=B.get(l))==null||w.delete(c),((m=B.get(l))==null?void 0:m.size)===0&&B.delete(l)}async function zt(l){var c,w;if((c=e.onReceive)==null||c.call(e,l),!("type"in l))throw Error("Message does not contain a type.");if(l.type==="request"){if(!s.send||!i)throw J(["send","requestHandler"],"handle requests");let{id:m,method:b,params:M}=l,O;try{O={type:"response",id:m,success:!0,payload:await i(b,M)}}catch(z){if(!(z instanceof Error))throw z;O={type:"response",id:m,success:!1,error:z.message}}(w=e.onSend)==null||w.call(e,O),s.send(O);return}if(l.type==="response"){let m=E.get(l.id);m!=null&&clearTimeout(m);let{resolve:b,reject:M}=q.get(l.id)??{};l.success?b==null||b(l.payload):M==null||M(Error(l.error));return}if(l.type==="message"){for(let b of de)b(l.id,l.payload);let m=B.get(l.id);if(!m)return;for(let b of m)b(l.payload);return}throw Error(`Unexpected RPC message type: ${l.type}`)}return{setTransport:a,setRequestHandler:u,request:se,requestProxy:Be,send:De,sendProxy:He,addMessageListener:Ht,removeMessageListener:$t,proxy:{send:He,request:Be},_setDebugHooks:r}}function bt(t){return wt(t)}var Re="[transport-id]";function vt(t,e){let{transportId:r}=e;return r==null?t:{[Re]:r,data:t}}function _t(t,e){let{transportId:r,filter:s}=e,a=s==null?void 0:s();if(r!=null&&a!=null)throw Error("Cannot use both `transportId` and `filter` at the same time");let i=t;if(r){if(t[Re]!==r)return[!0];i=t.data}return a===!1?[!0]:[!1,i]}function Ct(t,e={}){let{transportId:r,filter:s,remotePort:a}=e,i=t,u=a??t,d;return{send(v){u.postMessage(vt(v,{transportId:r}))},registerHandler(v){d=x=>{let q=x.data,[E,$]=_t(q,{transportId:r,filter:()=>s==null?void 0:s(x)});E||v($)},i.addEventListener("message",d)},unregisterHandler(){d&&i.removeEventListener("message",d)}}}function Rt(t,e){return Ct(t,e)}function xe(t){return bt({transport:Rt(t,{transportId:"marimo-transport"}),maxRequestTime:2e4,_debugHooks:{onSend:e=>{p.debug("[rpc] Parent -> Worker",e)},onReceive:e=>{p.debug("[rpc] Worker -> Parent",e)}}})}be=ne("Initializing..."),ie=ne("loading"),et=ne(t=>{let e=t(Xt),r=Object.values(e.cellRuntime);return r.some(s=>!mr(s.output))?!0:r.every(s=>s.status==="idle")});var qe=xr(),Ee="marimo:file",Se=new Gt(null);const xt={saveFile(t){Se.set(Ee,t)},readFile(){return Se.get(Ee)}};var qt={saveFile(t){G.setCodeForHash((0,qe.compressToEncodedURIComponent)(t))},readFile(){let t=G.getCodeFromHash()||G.getCodeFromSearchParam();return t?(0,qe.decompressFromEncodedURIComponent)(t):null}};const Et={saveFile(t){},readFile(){let t=document.querySelector("marimo-code");return t?decodeURIComponent(t.textContent||"").trim():null}};var St={saveFile(t){},readFile(){if(window.location.hostname!=="marimo.app")return null;let t=new URL("files/wasm-intro.py",document.baseURI);return fetch(t.toString()).then(e=>e.ok?e.text():null).catch(()=>null)}};const Mt={saveFile(t){},readFile(){return U.get(er)??null}};var kt={saveFile(t){},readFile(){return["import marimo","app = marimo.App()","","@app.cell","def __():"," return","",'if __name__ == "__main__":'," app.run()"].join(`
1
+ var Vt=Object.defineProperty;var $e=f=>{throw TypeError(f)};var Qt=(f,h,y)=>h in f?Vt(f,h,{enumerable:!0,configurable:!0,writable:!0,value:y}):f[h]=y;var n=(f,h,y)=>Qt(f,typeof h!="symbol"?h+"":h,y),ce=(f,h,y)=>h.has(f)||$e("Cannot "+y);var o=(f,h,y)=>(ce(f,h,"read from private field"),y?y.call(f):h.get(f)),_=(f,h,y)=>h.has(f)?$e("Cannot add the same private member more than once"):h instanceof WeakSet?h.add(f):h.set(f,y),C=(f,h,y,Q)=>(ce(f,h,"write to private field"),Q?Q.call(f,y):h.set(f,y),y),A=(f,h,y)=>(ce(f,h,"access private method"),y);import{i as U,p as ne,u as Yt}from"./useEvent-D91BmmQi.js";import{Bi as G,Ei as Gt,Pi as Kt,Pn as Jt,b as Xt,ji as Zt,ki as er,ot as ze,x as tr,zi as rr,__tla as sr}from"./cells-DiASVTIh.js";import{t as nr}from"./get-C-qh_et5.js";import{t as ar}from"./debounce-OiXznToA.js";import{t as ir}from"./_baseSet-CsW0tABf.js";import{_ as p,y as g}from"./useEventListener-BakX-tnw.js";import{t as or}from"./invariant-C2E8KCbD.js";import{w as lr}from"./utils-Dev6I_Kv.js";import{T as ur,c as pe,l as Ve,n as dr}from"./config-3clPIEB9.js";import{n as cr}from"./switch-DvDNxcZP.js";import{n as pr}from"./globals-Bx8Km3LH.js";import{t as fr}from"./createReducer-3wF4dU7I.js";import{r as hr}from"./strings-DvZlHYnD.js";import{t as fe}from"./requests-KshNNAOp.js";import{a as Qe,l as mr,r as Ye,__tla as gr}from"./markdown-renderer-CyLjgnQY.js";import{t as yr}from"./DeferredRequestRegistry-RuL7NV1n.js";import{t as wr}from"./preload-helper-BW0IMuFq.js";import{t as Ge}from"./Deferred-BMfCOLaw.js";import{t as Ke}from"./uuid-ClFZlR7U.js";import{t as br}from"./use-toast-kCNiuc-_.js";import{n as vr}from"./RenderHTML-ohul2q99.js";import{t as _r}from"./useRunCells-DXtOL4UR.js";import{n as Cr,t as Rr}from"./blob-BiK5xmlC.js";import{n as xr,r as qr,t as Er}from"./share-DQjChRJG.js";import{i as Je,r as Sr,t as Mr}from"./events-XR_LpvHc.js";let Xe,Ze,et,he,me,tt,ge,rt,V,st,nt,ye,we,at,it,ot,lt,ae,ut,dt,ie,K,ct,be,kr=Promise.all([(()=>{try{return sr}catch{}})(),(()=>{try{return gr}catch{}})()]).then(async()=>{var T,ee,ft,Ae,k,W,S,Ue,F,Te,P,Y,D,oe,We,je,te,I,L,H,R,j,N,ht,mt,gt,re;function f(t,e,r){return t==null?t:ir(t,e,r)}K=f,ct=ne(null);var{valueAtom:h,useActions:y}=fr(()=>({banners:[]}),{addBanner:(t,e)=>({...t,banners:[...t.banners,{...e,id:Ke()}]}),removeBanner:(t,e)=>({...t,banners:t.banners.filter(r=>r.id!==e)}),clearBanners:t=>({...t,banners:[]})});Ze=()=>Yt(h),Xe=function(){return y()};let Q,_e,Ce;Q=class{constructor(){n(this,"subscriptions",new Map)}addSubscription(t,e){var r;this.subscriptions.has(t)||this.subscriptions.set(t,new Set),(r=this.subscriptions.get(t))==null||r.add(e)}removeSubscription(t,e){var r;(r=this.subscriptions.get(t))==null||r.delete(e)}notify(t,e){for(let r of this.subscriptions.get(t)??[])r(e)}},me=class ve{constructor(e){n(this,"subscriptions",new Q);this.producer=e}static withProducerCallback(e){return new ve(e)}static empty(){return new ve}startProducer(){this.producer&&this.producer(e=>{this.subscriptions.notify("message",e)})}connect(){return new Promise(e=>setTimeout(e,0)).then(()=>{this.subscriptions.notify("open",new Event("open"))})}get readyState(){return WebSocket.OPEN}reconnect(e,r){this.close(),this.connect()}close(){this.subscriptions.notify("close",new Event("close"))}send(e){return this.subscriptions.notify("message",new MessageEvent("message",{data:e})),Promise.resolve()}addEventListener(e,r){this.subscriptions.addSubscription(e,r),e==="open"&&r(new Event("open")),e==="message"&&this.startProducer()}removeEventListener(e,r){this.subscriptions.removeSubscription(e,r)}},_e=1e10,Ce=1e3;function J(t,e){let r=t.map(s=>`"${s}"`).join(", ");return Error(`This RPC instance cannot ${e} because the transport did not provide one or more of these methods: ${r}`)}function wt(t={}){let e={};function r(l){e=l}let s={};function a(l){var c;s.unregisterHandler&&s.unregisterHandler(),s=l,(c=s.registerHandler)==null||c.call(s,zt)}let i;function u(l){if(typeof l=="function"){i=l;return}i=(c,w)=>{let m=l[c];if(m)return m(w);let b=l._;if(!b)throw Error(`The requested method has no handler: ${c}`);return b(c,w)}}let{maxRequestTime:d=Ce}=t;t.transport&&a(t.transport),t.requestHandler&&u(t.requestHandler),t._debugHooks&&r(t._debugHooks);let v=0;function x(){return v<=_e?++v:v=0}let q=new Map,E=new Map;function $(l,...c){let w=c[0];return new Promise((m,b)=>{var z;if(!s.send)throw J(["send"],"make requests");let M=x(),O={type:"request",id:M,method:l,params:w};q.set(M,{resolve:m,reject:b}),d!==1/0&&E.set(M,setTimeout(()=>{E.delete(M),b(Error("RPC request timed out."))},d)),(z=e.onSend)==null||z.call(e,O),s.send(O)})}let se=new Proxy($,{get:(l,c,w)=>c in l?Reflect.get(l,c,w):m=>$(c,m)}),Be=se;function Oe(l,...c){var b;let w=c[0];if(!s.send)throw J(["send"],"send messages");let m={type:"message",id:l,payload:w};(b=e.onSend)==null||b.call(e,m),s.send(m)}let De=new Proxy(Oe,{get:(l,c,w)=>c in l?Reflect.get(l,c,w):m=>Oe(c,m)}),He=De,B=new Map,de=new Set;function Ht(l,c){var w;if(!s.registerHandler)throw J(["registerHandler"],"register message listeners");if(l==="*"){de.add(c);return}B.has(l)||B.set(l,new Set),(w=B.get(l))==null||w.add(c)}function $t(l,c){var w,m;if(l==="*"){de.delete(c);return}(w=B.get(l))==null||w.delete(c),((m=B.get(l))==null?void 0:m.size)===0&&B.delete(l)}async function zt(l){var c,w;if((c=e.onReceive)==null||c.call(e,l),!("type"in l))throw Error("Message does not contain a type.");if(l.type==="request"){if(!s.send||!i)throw J(["send","requestHandler"],"handle requests");let{id:m,method:b,params:M}=l,O;try{O={type:"response",id:m,success:!0,payload:await i(b,M)}}catch(z){if(!(z instanceof Error))throw z;O={type:"response",id:m,success:!1,error:z.message}}(w=e.onSend)==null||w.call(e,O),s.send(O);return}if(l.type==="response"){let m=E.get(l.id);m!=null&&clearTimeout(m);let{resolve:b,reject:M}=q.get(l.id)??{};l.success?b==null||b(l.payload):M==null||M(Error(l.error));return}if(l.type==="message"){for(let b of de)b(l.id,l.payload);let m=B.get(l.id);if(!m)return;for(let b of m)b(l.payload);return}throw Error(`Unexpected RPC message type: ${l.type}`)}return{setTransport:a,setRequestHandler:u,request:se,requestProxy:Be,send:De,sendProxy:He,addMessageListener:Ht,removeMessageListener:$t,proxy:{send:He,request:Be},_setDebugHooks:r}}function bt(t){return wt(t)}var Re="[transport-id]";function vt(t,e){let{transportId:r}=e;return r==null?t:{[Re]:r,data:t}}function _t(t,e){let{transportId:r,filter:s}=e,a=s==null?void 0:s();if(r!=null&&a!=null)throw Error("Cannot use both `transportId` and `filter` at the same time");let i=t;if(r){if(t[Re]!==r)return[!0];i=t.data}return a===!1?[!0]:[!1,i]}function Ct(t,e={}){let{transportId:r,filter:s,remotePort:a}=e,i=t,u=a??t,d;return{send(v){u.postMessage(vt(v,{transportId:r}))},registerHandler(v){d=x=>{let q=x.data,[E,$]=_t(q,{transportId:r,filter:()=>s==null?void 0:s(x)});E||v($)},i.addEventListener("message",d)},unregisterHandler(){d&&i.removeEventListener("message",d)}}}function Rt(t,e){return Ct(t,e)}function xe(t){return bt({transport:Rt(t,{transportId:"marimo-transport"}),maxRequestTime:2e4,_debugHooks:{onSend:e=>{p.debug("[rpc] Parent -> Worker",e)},onReceive:e=>{p.debug("[rpc] Worker -> Parent",e)}}})}be=ne("Initializing..."),ie=ne("loading"),et=ne(t=>{let e=t(Xt),r=Object.values(e.cellRuntime);return r.some(s=>!mr(s.output))?!0:r.every(s=>s.status==="idle")});var qe=xr(),Ee="marimo:file",Se=new Gt(null);const xt={saveFile(t){Se.set(Ee,t)},readFile(){return Se.get(Ee)}};var qt={saveFile(t){G.setCodeForHash((0,qe.compressToEncodedURIComponent)(t))},readFile(){let t=G.getCodeFromHash()||G.getCodeFromSearchParam();return t?(0,qe.decompressFromEncodedURIComponent)(t):null}};const Et={saveFile(t){},readFile(){let t=document.querySelector("marimo-code");return t?decodeURIComponent(t.textContent||"").trim():null}};var St={saveFile(t){},readFile(){if(window.location.hostname!=="marimo.app")return null;let t=new URL("files/wasm-intro.py",document.baseURI);return fetch(t.toString()).then(e=>e.ok?e.text():null).catch(()=>null)}};const Mt={saveFile(t){},readFile(){return U.get(er)??null}};var kt={saveFile(t){},readFile(){return["import marimo","app = marimo.App()","","@app.cell","def __():"," return","",'if __name__ == "__main__":'," app.run()"].join(`
2
2
  `)}},Me=class{constructor(t){this.stores=t}insert(t,e){this.stores.splice(t,0,e)}saveFile(t){this.stores.forEach(e=>e.saveFile(t))}readFile(){for(let t of this.stores){let e=t.readFile();if(e)return e}return null}};let X;V=new Me([Mt,Et,qt]),X=new Me([xt,St,kt]),we=class pt{constructor(){n(this,"initialized",new Ge);n(this,"sendRename",async({filename:e})=>(e===null||(G.setFilename(e),await this.rpc.proxy.request.bridge({functionName:"rename_file",payload:e})),null));n(this,"sendSave",async e=>{if(!this.saveRpc)return p.warn("Save RPC not initialized"),null;await this.saveRpc.saveNotebook(e);let r=await this.readCode();return r.contents&&(V.saveFile(r.contents),X.saveFile(r.contents)),this.rpc.proxy.request.saveNotebook(e).catch(s=>{p.error(s)}),null});n(this,"sendCopy",async()=>{g()});n(this,"sendStdin",async e=>(await this.rpc.proxy.request.bridge({functionName:"put_input",payload:e.text}),null));n(this,"sendPdb",async()=>{g()});n(this,"sendRun",async e=>(await this.rpc.proxy.request.loadPackages(e.codes.join(`
3
3
  `)),await this.putControlRequest({type:"execute-cells",...e}),null));n(this,"sendRunScratchpad",async e=>(await this.rpc.proxy.request.loadPackages(e.code),await this.putControlRequest({type:"execute-scratchpad",...e}),null));n(this,"sendInterrupt",async()=>(this.interruptBuffer!==void 0&&(this.interruptBuffer[0]=2),null));n(this,"sendShutdown",async()=>(window.close(),null));n(this,"sendFormat",async e=>await this.rpc.proxy.request.bridge({functionName:"format",payload:e}));n(this,"sendDeleteCell",async e=>(await this.putControlRequest({type:"delete-cell",...e}),null));n(this,"sendInstallMissingPackages",async e=>(this.putControlRequest({type:"install-packages",...e}),null));n(this,"sendCodeCompletionRequest",async e=>(U.get(tr)||await this.rpc.proxy.request.bridge({functionName:"code_complete",payload:e}),null));n(this,"saveUserConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_user_config",payload:e}),cr.post("/kernel/save_user_config",e,{baseUrl:"/"}).catch(r=>(p.error(r),null))));n(this,"saveAppConfig",async e=>(await this.rpc.proxy.request.bridge({functionName:"save_app_config",payload:e}),null));n(this,"saveCellConfig",async e=>(await this.putControlRequest({type:"update-cell-config",...e}),null));n(this,"sendRestart",async()=>{let e=await this.readCode();return e.contents&&(V.saveFile(e.contents),X.saveFile(e.contents)),qr(),null});n(this,"readCode",async()=>this.saveRpc?{contents:await this.saveRpc.readNotebook()}:(p.warn("Save RPC not initialized"),{contents:""}));n(this,"readSnippets",async()=>await this.rpc.proxy.request.bridge({functionName:"read_snippets",payload:void 0}));n(this,"openFile",async({path:e})=>{let r=Er({code:null,baseUrl:window.location.origin});return window.open(r,"_blank"),null});n(this,"sendListFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"list_files",payload:e}));n(this,"sendSearchFiles",async e=>await this.rpc.proxy.request.bridge({functionName:"search_files",payload:e}));n(this,"sendComponentValues",async e=>(await this.putControlRequest({type:"update-ui-element",...e,token:Ke()}),null));n(this,"sendInstantiate",async e=>null);n(this,"sendFunctionRequest",async e=>(await this.putControlRequest({type:"invoke-function",...e}),null));n(this,"sendCreateFileOrFolder",async e=>{let r=null;return e.file&&(r=(await Cr(e.file)).split(",")[1]??""),await this.rpc.proxy.request.bridge({functionName:"create_file_or_directory",payload:{path:e.path,type:e.type,name:e.name,contents:r}})});n(this,"sendDeleteFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"delete_file_or_directory",payload:e}));n(this,"sendCopyFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"copy_file_or_directory",payload:e}));n(this,"sendRenameFileOrFolder",async e=>await this.rpc.proxy.request.bridge({functionName:"move_file_or_directory",payload:e}));n(this,"sendUpdateFile",async e=>await this.rpc.proxy.request.bridge({functionName:"update_file",payload:e}));n(this,"sendFileDetails",async e=>await this.rpc.proxy.request.bridge({functionName:"file_details",payload:e}));n(this,"exportAsHTML",async e=>await this.rpc.proxy.request.bridge({functionName:"export_html",payload:e}));n(this,"exportAsMarkdown",async e=>await this.rpc.proxy.request.bridge({functionName:"export_markdown",payload:e}));n(this,"previewDatasetColumn",async e=>(await this.putControlRequest({type:"preview-dataset-column",...e}),null));n(this,"previewSQLTable",async e=>(await this.putControlRequest({type:"preview-sql-table",...e}),null));n(this,"previewSQLTableList",async e=>(await this.putControlRequest({type:"list-sql-tables",...e}),null));n(this,"previewSQLSchemaList",async e=>(await this.putControlRequest({type:"list-sql-schemas",...e}),null));n(this,"previewDataSourceConnection",async e=>(await this.putControlRequest({type:"list-data-source-connection",...e}),null));n(this,"validateSQL",async e=>(await this.putControlRequest({type:"validate-sql",...e}),null));n(this,"sendModelValue",async e=>(await this.putControlRequest({type:"model",...e}),null));n(this,"sendDocumentTransaction",()=>Promise.resolve(null));n(this,"addPackage",async e=>this.rpc.proxy.request.addPackage(e));n(this,"removePackage",async e=>this.rpc.proxy.request.removePackage(e));n(this,"getPackageList",async()=>await this.rpc.proxy.request.listPackages());n(this,"getDependencyTree",async()=>({tree:{dependencies:[],name:"",tags:[],version:null}}));n(this,"listSecretKeys",async e=>(await this.putControlRequest({type:"list-secret-keys",...e}),null));n(this,"getUsageStats",g);n(this,"openTutorial",g);n(this,"getRecentFiles",g);n(this,"getWorkspaceFiles",g);n(this,"getRunningNotebooks",g);n(this,"shutdownSession",g);n(this,"exportAsIPYNB",g);n(this,"exportAsPDF",g);n(this,"autoExportAsHTML",g);n(this,"autoExportAsMarkdown",g);n(this,"autoExportAsIPYNB",g);n(this,"updateCellOutputs",g);n(this,"writeSecret",g);n(this,"invokeAiTool",g);n(this,"clearCache",g);n(this,"getCacheInfo",g);n(this,"listStorageEntries",g);n(this,"downloadStorage",g);ur()&&(this.rpc=xe(new Worker(new URL(""+new URL("worker-Bp53hInb.js",import.meta.url).href,""+import.meta.url),{type:"module",name:ke()})),this.rpc.addMessageListener("ready",()=>{this.startSession()}),this.rpc.addMessageListener("initialized",()=>{this.saveRpc=this.getSaveWorker(),this.setInterruptBuffer(),U.set(ie,"ready"),this.initialized.resolve()}),this.rpc.addMessageListener("initializingMessage",({message:e})=>{U.set(be,e)}),this.rpc.addMessageListener("initializedError",({error:e})=>{if(this.initialized.status==="resolved"){p.error(e),br({title:"Error initializing",description:e,variant:"danger"});return}U.set(ie,"error"),this.initialized.reject(Error(e))}),this.rpc.addMessageListener("kernelMessage",({message:e})=>{var r;(r=this.messageConsumer)==null||r.call(this,new MessageEvent("message",{data:e}))}))}static get INSTANCE(){let e="_marimo_private_PyodideBridge";return window[e]||(window[e]=new pt),window[e]}getSaveWorker(){return ze()==="read"?(p.debug("Using partially disabled SaveWorker in read-mode"),{readFile:g,readNotebook:async()=>await V.readFile()??"",saveNotebook:g}):xe(new Worker(new URL(""+new URL("save-worker-Bcr7rl0C.js",import.meta.url).href,""+import.meta.url),{type:"module",name:ke()})).proxy.request}async startSession(){let e=await V.readFile(),r=await X.readFile(),s=U.get(Zt)??G.getFilename(),a=U.get(lr),i={},u=new URLSearchParams(window.location.search);for(let d of u.keys()){let v=u.getAll(d);i[d]=v.length===1?v[0]:v}await this.rpc.proxy.request.startSession({queryParameters:i,code:e||r||"",filename:s,userConfig:{...a,runtime:{...a.runtime,auto_instantiate:ze()==="read"?!0:a.runtime.auto_instantiate}}})}setInterruptBuffer(){crossOriginIsolated?(this.interruptBuffer=new Uint8Array(new SharedArrayBuffer(1)),this.rpc.proxy.request.setInterruptBuffer(this.interruptBuffer)):p.warn("Not running in a secure context; interrupts are not available.")}attachMessageConsumer(e){this.messageConsumer=e,this.rpc.proxy.send.consumerReady({})}async putControlRequest(e){await this.rpc.proxy.request.bridge({functionName:"put_control_request",payload:e})}},st=function(){return me.withProducerCallback(t=>{we.INSTANCE.attachMessageConsumer(t)})};function ke(){let t=typeof window<"u"&&window.__MARIMO_HAS_WASM_CONTROLLER__===!0;return pr()+(t?"::controller":"")}rt=function(t=pe()){let e=window.fetch;return window.fetch=async(r,s)=>{let a=r instanceof Request?r.url:r.toString();if(a.startsWith("data:"))return e(r,s);try{let i=Z(a,t);if(i){let u=await(await e(i)).arrayBuffer();return new Response(u,{headers:{"Content-Type":Pt(a)}})}return e(r,s)}catch(i){return p.error("Error parsing URL",i),e(r,s)}},()=>{window.fetch=e}};function Pt(t){return t.endsWith(".csv")?"text/csv":t.endsWith(".json")?"application/json":t.endsWith(".txt")?"text/plain":"application/octet-stream"}ot=function(t,e=pe()){let r=t.http.bind(t),s=t.load.bind(t);return t.http=async a=>{let i=Z(a,e);if(i)return await window.fetch(i).then(u=>u.text());try{return await r(a)}catch(u){if(a.startsWith("data:"))return await window.fetch(a).then(d=>d.text());throw u}},t.load=async a=>{let i=Z(a,e);if(i)return await window.fetch(i).then(u=>u.text());try{return await s(a)}catch(u){if(a.startsWith("data:"))return await window.fetch(a).then(d=>d.text());throw u}},()=>{t.http=r,t.load=s}};function Pe(t){return t.startsWith(".")?t.slice(1):t}function Ft(t,e=pe()){let r=Z(t,e);if(!r)return t;let s=Rr(r);return URL.createObjectURL(s)}function Z(t,e){let r=document.baseURI;r.startsWith("blob:")&&(r=r.replace("blob:",""));let s=new URL(t,r).pathname,a=Fe(t),i=Fe(s);return e[t]||e[Pe(t)]||e[s]||e[Pe(s)]||a&&e[a]||i&&e[i]}function Fe(t){let e=t.indexOf("/@file/");return e===-1?null:t.slice(e)}function le(t,e=[]){let r=[];if(t instanceof DataView)r.push(e);else if(Array.isArray(t))for(let[s,a]of t.entries())r.push(...le(a,[...e,s]));else if(typeof t=="object"&&t)for(let[s,a]of Object.entries(t))r.push(...le(a,[...e,s]));return r}function It(t){let e=le(t);if(e.length===0)return{state:t,buffers:[],bufferPaths:[]};let r=structuredClone(t),s=[],a=[];for(let i of e){let u=nr(t,i);if(u instanceof DataView){let d=Qe(u);s.push(d),a.push(i),K(r,i,d)}}return{state:r,buffers:s,bufferPaths:a}}function Ie(t){let{state:e,bufferPaths:r,buffers:s}=t;if(!r||r.length===0)return e;s&&or(s.length===r.length,"Buffers and buffer paths not the same length");let a=e;for(let[i,u]of r.entries()){let d=s==null?void 0:s[i];if(d==null){p.warn("[anywidget] Could not find buffer at path",u);continue}typeof d=="string"?K(a,u,Ye(d)):K(a,u,d)}return a}ge=function(t){return typeof t!="string"||t.length===0?!1:!!(/^(\.?\/)?@file\/[^?#]+$/.test(t)||Nt(t))};function Lt(){return U.get(_r)||vr()}function Nt(t){return t.startsWith("data:text/javascript;base64,")||t.startsWith("data:application/javascript;base64,")||t.startsWith("data:text/css;base64,")?Lt():!1}const Le={invoke:async()=>{let t="anywidget.invoke not supported in marimo. Please file an issue at https://github.com/marimo-team/marimo/issues";throw p.warn(t),Error(t)}};function At(t){if(typeof AbortSignal.any=="function")return AbortSignal.any(t);let e=new AbortController;for(let r of t){if(r.aborted)return e.abort(r.reason),e.signal;r.addEventListener("abort",()=>e.abort(r.reason),{once:!0})}return e.signal}var Ut=(Ae=class{constructor(){_(this,ee);_(this,T,new Map)}getModule(t,e){let r=o(this,T).get(e);if(r)return r;let s=A(this,ee,ft).call(this,t).catch(a=>{throw o(this,T).delete(e),a});return o(this,T).set(e,s),s}invalidate(t){p.debug(`[WidgetDefRegistry] Invalidating module cache for hash=${t}`),o(this,T).delete(t)}},T=new WeakMap,ee=new WeakSet,ft=async function(t){if(!ge(t))throw Error(`Refusing to load anywidget module from untrusted URL: ${String(t)}`);let e=dr(t).toString();return Ve()&&(e=Ft(e)),wr(()=>import(e).then(async r=>(await r.__tla,r)),[],import.meta.url)},Ae),Tt=(Ue=class{constructor(){_(this,k);_(this,W);_(this,S)}async bind(t,e){var i,u;if(o(this,S)&&o(this,W)===t)return o(this,S);o(this,S)&&o(this,W)!==t&&(p.debug("[WidgetBinding] Hot-reload detected, aborting previous binding"),(i=o(this,k))==null||i.abort(),C(this,k,void 0),C(this,S,void 0)),C(this,W,t),C(this,k,new AbortController);let r=o(this,k).signal,s=typeof t=="function"?await t():t,a=await((u=s.initialize)==null?void 0:u.call(s,{model:e,experimental:Le}));return a&&r.addEventListener("abort",a),C(this,S,async(d,v)=>{var q;let x=await((q=s.render)==null?void 0:q.call(s,{model:e,el:d,experimental:Le}));x&&At([v,r]).addEventListener("abort",()=>{let E=v.aborted?"view unmount":"binding destroyed";p.debug(`[WidgetBinding] Render cleanup triggered (reason: ${E})`),x()})}),o(this,S)}destroy(){var t;p.debug("[WidgetBinding] Destroying binding, aborting initialize lifecycle"),(t=o(this,k))==null||t.abort(),C(this,k,void 0),C(this,W,void 0),C(this,S,void 0)}},k=new WeakMap,W=new WeakMap,S=new WeakMap,Ue),Wt=(Te=class{constructor(){_(this,F,new Map)}getOrCreate(t){let e=o(this,F).get(t);return e||(e=new Tt,o(this,F).set(t,e)),e}destroy(t){let e=o(this,F).get(t);e&&(p.debug(`[BindingManager] Destroying binding for model=${t}`),e.destroy(),o(this,F).delete(t))}has(t){return o(this,F).has(t)}},F=new WeakMap,Te);dt=new Ut,ye=new Wt;var jt=(We=class{constructor(t=1e4){_(this,D);_(this,P,new Map);_(this,Y);C(this,Y,t)}get(t){let e=A(this,D,oe).call(this,t);return e.deferred.status==="pending"&&setTimeout(()=>{e.deferred.status==="pending"&&(e.deferred.reject(Error(`Model not found for key: ${t}`)),o(this,P).delete(t))},o(this,Y)),e.deferred.promise}create(t,e){let r=A(this,D,oe).call(this,t);r.deferred.resolve(e(r.controller.signal))}set(t,e){A(this,D,oe).call(this,t).deferred.resolve(e)}getSync(t){let e=o(this,P).get(t);if(e&&e.deferred.status==="resolved")return e.deferred.value}delete(t){var e;p.debug(`[ModelManager] Deleting model=${t}, aborting lifecycle signal`),(e=o(this,P).get(t))==null||e.controller.abort(),o(this,P).delete(t)}},P=new WeakMap,Y=new WeakMap,D=new WeakSet,oe=function(t){let e=o(this,P).get(t);return e||(e={deferred:new Ge,controller:new AbortController},o(this,P).set(t,e)),e},We),Ne=Symbol("marimo");function ue(t){return t[Ne]}ae=new jt;var Bt=(je=Ne,j=class{constructor(e,r,s){_(this,N);_(this,te,"change");_(this,I);_(this,L);_(this,H);_(this,R,{});n(this,je,{updateAndEmitDiffs:e=>A(this,N,mt).call(this,e),emitCustomMessage:(e,r)=>A(this,N,gt).call(this,e,r)});n(this,"widget_manager",{async get_model(e){let r=await j._modelManager.get(e);if(!r)throw Error(`Model not found with id: ${e}. This is likely because the model was not registered.`);return r}});_(this,re,ar(()=>{let e=o(this,R)[o(this,te)];if(e)for(let r of e)try{r()}catch(s){p.error("Error emitting event",s)}},0));C(this,L,e),C(this,H,r),C(this,I,new Map),s&&s.addEventListener("abort",()=>{p.debug("[Model] Signal aborted, clearing all listeners"),C(this,R,{})})}off(e,r){var s;if(!e){C(this,R,{});return}if(!r){o(this,R)[e]=new Set;return}(s=o(this,R)[e])==null||s.delete(r)}send(e,r,s){let a=(s??[]).map(i=>i instanceof ArrayBuffer?new DataView(i):new DataView(i.buffer,i.byteOffset,i.byteLength));return o(this,H).sendCustomMessage(e,a).then(()=>r==null?void 0:r())}get(e){return o(this,L)[e]}set(e,r){C(this,L,{...o(this,L),[e]:r}),o(this,I).set(e,r),A(this,N,ht).call(this,`change:${e}`,r),o(this,re).call(this)}save_changes(){if(o(this,I).size===0)return;let e=Object.fromEntries(o(this,I).entries());o(this,I).clear(),o(this,H).sendUpdate(e)}on(e,r){o(this,R)[e]||(o(this,R)[e]=new Set),o(this,R)[e].add(r)}},te=new WeakMap,I=new WeakMap,L=new WeakMap,H=new WeakMap,R=new WeakMap,N=new WeakSet,ht=function(e,r){if(!o(this,R)[e])return;let s=o(this,R)[e];for(let a of s)try{a(r)}catch(i){p.error("Error emitting event",i)}},mt=function(e){e!=null&&Object.keys(e).forEach(r=>{let s=r;o(this,L)[s]!==e[s]&&this.set(s,e[s])})},gt=function(e,r=[]){let s=o(this,R)["msg:custom"];if(s)for(let a of s)try{a(e.content,r)}catch(i){p.error("Error emitting event",i)}},re=new WeakMap,n(j,"_modelManager",ae),j);tt=async function(t,e){let r=e.model_id,s=e.message,a=("buffers"in s?s.buffers:[]).map(Ye);switch(s.method){case"open":{let{state:i,buffer_paths:u=[]}=s,d=Ie({state:i,bufferPaths:u,buffers:a}),v=t.getSync(r);if(v){ue(v).updateAndEmitDiffs(d);return}t.create(r,x=>new Bt(d,Ve()?{sendUpdate:async()=>{},sendCustomMessage:async()=>{}}:{async sendUpdate(q){if(x.aborted){p.debug(`[Model] sendUpdate suppressed for model=${r} (signal aborted)`);return}let{state:E,buffers:$,bufferPaths:se}=It(q);await fe().sendModelValue({modelId:r,message:{method:"update",state:E,bufferPaths:se},buffers:$})},async sendCustomMessage(q,E){if(x.aborted){p.debug(`[Model] sendCustomMessage suppressed for model=${r} (signal aborted)`);return}await fe().sendModelValue({modelId:r,message:{method:"custom",content:q},buffers:E.map(Qe)})}},x));return}case"custom":ue(await t.get(r)).emitCustomMessage({method:"custom",content:s.content},a);return;case"close":ye.destroy(r),t.delete(r);return;case"update":{let{state:i,buffer_paths:u=[]}=s,d=Ie({state:i,bufferPaths:u,buffers:a});ue(await t.get(r)).updateAndEmitDiffs(d);return}default:hr(s)}},Jt(ae,"MODEL_MANAGER");function Ot(t){return typeof t!="object"||!t?!1:"type"in t&&t.type==="marimo-ui-value-update"}he=class yt{static get INSTANCE(){let e="_marimo_private_UIElementRegistry";return window[e]||(window[e]=new yt),window[e]}constructor(){this.entries=new Map}has(e){return this.entries.has(e)}set(e,r){this.entries.has(e)&&p.debug("UIElementRegistry overwriting entry for objectId.",e),this.entries.set(e,{objectId:e,value:r,elements:new Set})}registerInstance(e,r){let s=this.entries.get(e);s===void 0?this.entries.set(e,{objectId:e,value:rr(r,this),elements:new Set([r])}):s.elements.add(r)}removeInstance(e,r){let s=this.entries.get(e);s!=null&&s.elements.has(r)&&s.elements.delete(r)}removeElementsByCell(e){[...this.entries.keys()].filter(r=>r.startsWith(`${e}-`)).forEach(r=>{this.entries.delete(r)})}lookupValue(e){let r=this.entries.get(e);return r===void 0?void 0:r.value}broadcastMessage(e,r,s){let a=this.entries.get(e);if(a===void 0){p.warn("UIElementRegistry missing entry",e);return}if(Ot(r)){a.value=r.value,a.elements.forEach(i=>{i.dispatchEvent(Je.create({bubbles:!1,composed:!0,detail:{value:r.value,element:i}}))});return}a.elements.forEach(i=>{i.dispatchEvent(Mr.create({bubbles:!1,composed:!0,detail:{objectId:e,message:r,buffers:s}}))})}broadcastValueUpdate(e,r,s){let a=this.entries.get(r);a===void 0?p.warn("UIElementRegistry missing entry",r):(a.value=s,a.elements.forEach(i=>{i!==e&&i.dispatchEvent(Je.create({bubbles:!1,composed:!0,detail:{value:s,element:i}}))}),document.dispatchEvent(Sr.create({bubbles:!0,composed:!0,detail:{objectId:r}})))}},it=he.INSTANCE,nt=new yr("function-call-result",async(t,e)=>{await fe().sendFunctionRequest({functionCallId:t,...e})}),ut="68px";var Dt="288px";at=t=>t?/^\d+$/.test(t)?`${t}px`:t:Dt,lt=Kt({isOpen:!0},(t,e)=>{if(!e)return t;switch(e.type){case"toggle":return{...t,isOpen:e.isOpen??t.isOpen};case"setWidth":return{...t,width:e.width};default:return t}})});export{Xe as C,Ze as S,et as _,kr as __tla,he as a,me as b,tt as c,ge as d,rt as f,V as g,st as h,nt as i,ye as l,we as m,at as n,it as o,ot as p,lt as r,ae as s,ut as t,dt as u,ie as v,K as w,ct as x,be as y};
@@ -1 +1 @@
1
- import{u as o}from"./useEvent-D91BmmQi.js";import{t}from"./createReducer-CzbhqMat.js";import{t as a}from"./uuid-ClFZlR7U.js";function d(){return{pendingCommands:[],isReady:!1}}var{reducer:f,createActions:g,valueAtom:r,useActions:i}=t(d,{addCommand:(n,m)=>{let e={id:a(),text:m,timestamp:Date.now()};return{...n,pendingCommands:[...n.pendingCommands,e]}},removeCommand:(n,m)=>({...n,pendingCommands:n.pendingCommands.filter(e=>e.id!==m)}),setReady:(n,m)=>({...n,isReady:m}),clearCommands:n=>({...n,pendingCommands:[]})});const s=()=>o(r);function p(){return i()}export{s as n,p as t};
1
+ import{u as o}from"./useEvent-D91BmmQi.js";import{t}from"./createReducer-3wF4dU7I.js";import{t as a}from"./uuid-ClFZlR7U.js";function d(){return{pendingCommands:[],isReady:!1}}var{reducer:f,createActions:g,valueAtom:r,useActions:i}=t(d,{addCommand:(n,m)=>{let e={id:a(),text:m,timestamp:Date.now()};return{...n,pendingCommands:[...n.pendingCommands,e]}},removeCommand:(n,m)=>({...n,pendingCommands:n.pendingCommands.filter(e=>e.id!==m)}),setReady:(n,m)=>({...n,isReady:m}),clearCommands:n=>({...n,pendingCommands:[]})});const s=()=>o(r);function p(){return i()}export{s as n,p as t};
@@ -1 +1 @@
1
- import{p as r}from"./useEvent-D91BmmQi.js";import{Fi as n,Fn as o,In as h}from"./cells-CHWMpikY.js";import{f as m}from"./arrays-DWxvyYxP.js";var d="marimo:ai:chatState:v5";const v=r(null),f=n("marimo:ai:includeOtherCells",!0,h);function u(t){let a=new Map;for(let[s,e]of t.entries()){if(e.messages.length===0)continue;let c=m(e.messages,l=>l.id);a.set(s,{...e,messages:c})}return a}const i=n(d,{chats:new Map,activeChatId:null},o({toSerializable:t=>({chats:[...u(t.chats).entries()],activeChatId:t.activeChatId}),fromSerializable:t=>({chats:new Map(t.chats),activeChatId:t.activeChatId})})),C=r(t=>{let a=t(i);return a.activeChatId?a.chats.get(a.activeChatId):null},(t,a,s)=>{a(i,e=>({...e,activeChatId:s}))});export{f as i,v as n,i as r,C as t};
1
+ import{p as r}from"./useEvent-D91BmmQi.js";import{Fi as n,Fn as o,In as h}from"./cells-DiASVTIh.js";import{f as m}from"./arrays-DWxvyYxP.js";var d="marimo:ai:chatState:v5";const v=r(null),f=n("marimo:ai:includeOtherCells",!0,h);function u(t){let a=new Map;for(let[s,e]of t.entries()){if(e.messages.length===0)continue;let c=m(e.messages,l=>l.id);a.set(s,{...e,messages:c})}return a}const i=n(d,{chats:new Map,activeChatId:null},o({toSerializable:t=>({chats:[...u(t.chats).entries()],activeChatId:t.activeChatId}),fromSerializable:t=>({chats:new Map(t.chats),activeChatId:t.activeChatId})})),C=r(t=>{let a=t(i);return a.activeChatId?a.chats.get(a.activeChatId):null},(t,a,s)=>{a(i,e=>({...e,activeChatId:s}))});export{f as i,v as n,i as r,C as t};
@@ -1 +1 @@
1
- import{s as _}from"./chunk-LvLJmgfZ.js";import{p as b,u as q}from"./useEvent-D91BmmQi.js";import{t as A}from"./react-Bj1aDYRI.js";import{t as C}from"./compiler-runtime-B3qBwwSJ.js";import{t as $}from"./createReducer-CzbhqMat.js";import{t as y}from"./requests-KshNNAOp.js";import{t as I}from"./createLucideIcon-BTp1tQDO.js";import{t as w}from"./DeferredRequestRegistry-RuL7NV1n.js";import{n as N}from"./useAsyncData-DAQcLiyE.js";var W=I("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);const M=new w("storage-list-entries",async(e,a)=>{await y().listStorageEntries({requestId:e,...a})}),z=new w("storage-download",async(e,a)=>{await y().downloadStorage({requestId:e,...a})});function m(e,a){return`${e}::${a??""}`}function D(e){return`${e}::`}var F=C(),p=_(A(),1);function H(){return{namespaces:[],entriesByPath:new Map,pageMetadataByPath:new Map}}var{reducer:ee,createActions:ae,valueAtom:P,useActions:L}=$(H,{setNamespaces:(e,a)=>{let t=new Map(e.namespaces.map(r=>[r.name,r]));for(let r of a.namespaces)t.set(r.name,r);return{...e,namespaces:[...t.values()]}},setEntries:(e,a)=>{let t=m(a.namespace,a.prefix),r=new Map(e.entriesByPath),s=a.append&&r.has(t)?[...r.get(t)??[],...a.entries]:a.entries;r.set(t,s);let n=new Map(e.pageMetadataByPath);return n.set(t,{nextPageToken:a.nextPageToken??null}),{...e,entriesByPath:r,pageMetadataByPath:n}},clearNamespaceCache:(e,a)=>{let t=new Map(e.entriesByPath),r=new Map(e.pageMetadataByPath),s=D(a);for(let n of t.keys())n.startsWith(s)&&t.delete(n);for(let n of r.keys())n.startsWith(s)&&r.delete(n);return{...e,entriesByPath:t,pageMetadataByPath:r}},filterFromVariables:(e,a)=>{let t=new Set(a),r=e.namespaces.filter(s=>t.has(s.name));return{...e,namespaces:r}}});const x=()=>q(P),R=b(e=>e(P).namespaces);function f(){return L()}async function u({namespace:e,prefix:a,pageToken:t,append:r,setEntries:s}){let n=await M.request({namespace:e,prefix:a??"",limit:150,...t==null?{}:{pageToken:t}});if(n.error)throw Error(n.error);return s({namespace:e,prefix:a,entries:n.entries,nextPageToken:n.next_page_token,append:r}),n}function V(e,a){var h;let{entriesByPath:t,pageMetadataByPath:r}=x(),{setEntries:s}=f(),n=m(e,a),o=t.get(n),i=((h=r.get(n))==null?void 0:h.nextPageToken)??null,c=(0,p.useRef)(!1),[k,d]=(0,p.useState)(!1),[E,g]=(0,p.useState)(),{isPending:B,error:v,refetch:T}=N(async()=>{o||await u({namespace:e,prefix:a,setEntries:s})},[e,a,o===void 0]),S=(0,p.useCallback)(async()=>{if(!(i==null||c.current)){c.current=!0,d(!0),g(void 0);try{await u({namespace:e,prefix:a,pageToken:i,append:!0,setEntries:s})}catch(l){g(l instanceof Error?l:Error(String(l)))}finally{c.current=!1,d(!1)}}},[e,a,i,s]);return{entries:o??[],isPending:B&&!o,error:o?void 0:v,hasMore:i!==null,loadMore:S,isLoadingMore:k,loadMoreError:E,refetch:T}}function j(){let e=(0,F.c)(2),{setEntries:a}=f(),t;return e[0]===a?t=e[1]:(t=r=>u({...r,setEntries:a}),e[0]=a,e[1]=t),t}export{j as a,M as c,V as i,W as l,x as n,m as o,f as r,z as s,R as t};
1
+ import{s as _}from"./chunk-LvLJmgfZ.js";import{p as b,u as q}from"./useEvent-D91BmmQi.js";import{t as A}from"./react-Bj1aDYRI.js";import{t as C}from"./compiler-runtime-B3qBwwSJ.js";import{t as $}from"./createReducer-3wF4dU7I.js";import{t as y}from"./requests-KshNNAOp.js";import{t as I}from"./createLucideIcon-BTp1tQDO.js";import{t as w}from"./DeferredRequestRegistry-RuL7NV1n.js";import{n as N}from"./useAsyncData-DAQcLiyE.js";var W=I("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);const M=new w("storage-list-entries",async(e,a)=>{await y().listStorageEntries({requestId:e,...a})}),z=new w("storage-download",async(e,a)=>{await y().downloadStorage({requestId:e,...a})});function m(e,a){return`${e}::${a??""}`}function D(e){return`${e}::`}var F=C(),p=_(A(),1);function H(){return{namespaces:[],entriesByPath:new Map,pageMetadataByPath:new Map}}var{reducer:ee,createActions:ae,valueAtom:P,useActions:L}=$(H,{setNamespaces:(e,a)=>{let t=new Map(e.namespaces.map(r=>[r.name,r]));for(let r of a.namespaces)t.set(r.name,r);return{...e,namespaces:[...t.values()]}},setEntries:(e,a)=>{let t=m(a.namespace,a.prefix),r=new Map(e.entriesByPath),s=a.append&&r.has(t)?[...r.get(t)??[],...a.entries]:a.entries;r.set(t,s);let n=new Map(e.pageMetadataByPath);return n.set(t,{nextPageToken:a.nextPageToken??null}),{...e,entriesByPath:r,pageMetadataByPath:n}},clearNamespaceCache:(e,a)=>{let t=new Map(e.entriesByPath),r=new Map(e.pageMetadataByPath),s=D(a);for(let n of t.keys())n.startsWith(s)&&t.delete(n);for(let n of r.keys())n.startsWith(s)&&r.delete(n);return{...e,entriesByPath:t,pageMetadataByPath:r}},filterFromVariables:(e,a)=>{let t=new Set(a),r=e.namespaces.filter(s=>t.has(s.name));return{...e,namespaces:r}}});const x=()=>q(P),R=b(e=>e(P).namespaces);function f(){return L()}async function u({namespace:e,prefix:a,pageToken:t,append:r,setEntries:s}){let n=await M.request({namespace:e,prefix:a??"",limit:150,...t==null?{}:{pageToken:t}});if(n.error)throw Error(n.error);return s({namespace:e,prefix:a,entries:n.entries,nextPageToken:n.next_page_token,append:r}),n}function V(e,a){var h;let{entriesByPath:t,pageMetadataByPath:r}=x(),{setEntries:s}=f(),n=m(e,a),o=t.get(n),i=((h=r.get(n))==null?void 0:h.nextPageToken)??null,c=(0,p.useRef)(!1),[k,d]=(0,p.useState)(!1),[E,g]=(0,p.useState)(),{isPending:B,error:v,refetch:T}=N(async()=>{o||await u({namespace:e,prefix:a,setEntries:s})},[e,a,o===void 0]),S=(0,p.useCallback)(async()=>{if(!(i==null||c.current)){c.current=!0,d(!0),g(void 0);try{await u({namespace:e,prefix:a,pageToken:i,append:!0,setEntries:s})}catch(l){g(l instanceof Error?l:Error(String(l)))}finally{c.current=!1,d(!1)}}},[e,a,i,s]);return{entries:o??[],isPending:B&&!o,error:o?void 0:v,hasMore:i!==null,loadMore:S,isLoadingMore:k,loadMoreError:E,refetch:T}}function j(){let e=(0,F.c)(2),{setEntries:a}=f(),t;return e[0]===a?t=e[1]:(t=r=>u({...r,setEntries:a}),e[0]=a,e[1]=t),t}export{j as a,M as c,V as i,W as l,x as n,m as o,f as r,z as s,R as t};
@@ -1,2 +1,2 @@
1
- import{_ as t}from"./useEventListener-Wyg6Md5s.js";import{t as l}from"./invariant-C2E8KCbD.js";function i(r){l(!1,`Unexpected object: ${r}`)}function n(r){return t.warn(`Unexpected object: ${JSON.stringify(r)}`),r}function e(r){return r?r.charAt(0).toUpperCase()+r.slice(1):""}function a(r){if(!r)return"";if(typeof r!="string")throw t.error(r),TypeError(`Expected string, got ${typeof r}`);return/[A-Za-z]/.test(r)?r.replaceAll(/([\da-z])([A-Z])/g,"$1 $2").replaceAll(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").replaceAll(/[\s_-]+/g," ").trim().split(" ").map(e).join(" "):r}const s={startCase:a,htmlEscape:r=>r&&r.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll('"',"&quot;").replaceAll("'","&#039;").replaceAll(`
1
+ import{_ as t}from"./useEventListener-BakX-tnw.js";import{t as l}from"./invariant-C2E8KCbD.js";function i(r){l(!1,`Unexpected object: ${r}`)}function n(r){return t.warn(`Unexpected object: ${JSON.stringify(r)}`),r}function e(r){return r?r.charAt(0).toUpperCase()+r.slice(1):""}function a(r){if(!r)return"";if(typeof r!="string")throw t.error(r),TypeError(`Expected string, got ${typeof r}`);return/[A-Za-z]/.test(r)?r.replaceAll(/([\da-z])([A-Z])/g,"$1 $2").replaceAll(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").replaceAll(/[\s_-]+/g," ").trim().split(" ").map(e).join(" "):r}const s={startCase:a,htmlEscape:r=>r&&r.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll('"',"&quot;").replaceAll("'","&#039;").replaceAll(`
2
2
  `," "),withTrailingSlash(r){return r.endsWith("/")?r:`${r}/`},withoutTrailingSlash(r){return r.endsWith("/")?r.slice(0,-1):r},withoutLeadingSlash(r){return r.startsWith("/")?r.slice(1):r},asString:r=>{if(typeof r=="string")return r;try{return JSON.stringify(r)}catch{return String(r)}}};export{n as i,e as n,i as r,s as t};