@marimo-team/frontend 0.25.3-dev5 → 0.25.3-dev51

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 (304) hide show
  1. package/dist/assets/CellStatus-RQxLjC9P.js +1 -0
  2. package/dist/assets/{ConnectedDataExplorerComponent-t8fH_TNc.js → ConnectedDataExplorerComponent-D9UK8o9A.js} +1 -1
  3. package/dist/assets/{ErrorBoundary-B4n9EnHB.js → ErrorBoundary-DzEMMFh0.js} +2 -2
  4. package/dist/assets/JsonOutput-9IONH7hu.js +11 -0
  5. package/dist/assets/{LazyAnyLanguageCodeMirror-CKcCbG2G.js → LazyAnyLanguageCodeMirror-BPYE76jR.js} +2 -2
  6. package/dist/assets/MarimoErrorOutput-BT8Qy5wh.js +10 -0
  7. package/dist/assets/{RenderHTML-9bMgbYmo.js → RenderHTML-PyMU3fBB.js} +1 -1
  8. package/dist/assets/{RunButton-CFQUNN5c.js → RunButton-2p2uCp9U.js} +1 -1
  9. package/dist/assets/{add-cell-with-ai-C_SruRWS.js → add-cell-with-ai-CEQ8jvcR.js} +7 -7
  10. package/dist/assets/{add-connection-dialog-CoE_PhuD.js → add-connection-dialog-D9fnw-j0.js} +2 -2
  11. package/dist/assets/{agent-panel-0b3k4QzJ.js → agent-panel-DkTYXm6j.js} +3 -3
  12. package/dist/assets/ai-model-dropdown-Cv9fEAp9.js +13 -0
  13. package/dist/assets/{alert-dialog-BaPGzeOK.js → alert-dialog-C-sWmKva.js} +1 -1
  14. package/dist/assets/any-language-editor-DUMe1UCk.js +1 -0
  15. package/dist/assets/{app-config-button-iXdCWvfC.js → app-config-button-BZzwY1BU.js} +1 -1
  16. package/dist/assets/arrays-0R2reF2y.js +1 -0
  17. package/dist/assets/{blob-iOBwGaP9.js → blob-DmUUV8Xf.js} +1 -1
  18. package/dist/assets/{button-COI-NGrx.js → button-D8gVKwe-.js} +1 -1
  19. package/dist/assets/{cache-panel-DTY1dqvi.js → cache-panel-Byolv2ht.js} +1 -1
  20. package/dist/assets/{capabilities-BJvf-MD4.js → capabilities-Pq1YNPlK.js} +1 -1
  21. package/dist/assets/{cell-editor-CR-tZNnc.js → cell-editor-C6xeN3x0.js} +6 -6
  22. package/dist/assets/cell-link-BNDZZ97N.js +1 -0
  23. package/dist/assets/{cells-rA_jsZCj.js → cells-0e2dpq3z.js} +56 -56
  24. package/dist/assets/{chat-display-luF7psRA.js → chat-display-D6TNcsmz.js} +1 -1
  25. package/dist/assets/chat-panel-CN45Q9wF.js +4 -0
  26. package/dist/assets/{chat-ui-nV_m4Btr.js → chat-ui-BGl1jPPe.js} +1 -1
  27. package/dist/assets/{circle-DXf-VWZG.js → circle-B6D_6D8w.js} +1 -1
  28. package/dist/assets/code-visibility-CV3S4xuf.js +1 -0
  29. package/dist/assets/coerce-DWjFeXOY.js +1 -0
  30. package/dist/assets/{column-preview-uosAAL4X.js → column-preview-D7sTOokc.js} +1 -1
  31. package/dist/assets/command-palette-CP5KmR-S.js +1 -0
  32. package/dist/assets/{common-lisZ0l6a.js → common-GvwCMUGF.js} +1 -1
  33. package/dist/assets/{components-CP_UoFtT.js → components-DrU8dOzy.js} +1 -1
  34. package/dist/assets/{components-CXfO-F47.js → components-lDm0qi2t.js} +1 -1
  35. package/dist/assets/{components-S7ZwOrvO.js → components-nnFZuekV.js} +1 -1
  36. package/dist/assets/config-CjQ4WJnJ.js +1 -0
  37. package/dist/assets/config-DGX7JYor.js +1 -0
  38. package/dist/assets/config-DzdxZb17.js +1 -0
  39. package/dist/assets/{copy-D8O_CYCG.js → copy-KlhazlhB.js} +1 -1
  40. package/dist/assets/{copy-icon-BIiRXh_3.js → copy-icon-8-a5vovc.js} +1 -1
  41. package/dist/assets/{createReducer-DgRODTW6.js → createReducer-HKXUbqyz.js} +1 -1
  42. package/dist/assets/{datasource-V0-52XOh.js → datasource-BpMPWJoj.js} +1 -1
  43. package/dist/assets/{dates-CfmdTL6B.js → dates-CQMwFko2.js} +1 -1
  44. package/dist/assets/{dependency-graph-panel-B0uP-_id.js → dependency-graph-panel-lyJ3aygI.js} +1 -1
  45. package/dist/assets/{dist-iaThVDkA.js → dist-jlhMTKo_.js} +1 -1
  46. package/dist/assets/{documentation-panel-DVl_ebWy.js → documentation-panel-CTUWNQQy.js} +1 -1
  47. package/dist/assets/{download-Bx55LMki.js → download-Csw35OD4.js} +1 -1
  48. package/dist/assets/{dropdown-menu-C1rnl-0o.js → dropdown-menu-DS6umAnH.js} +1 -1
  49. package/dist/assets/{edit-page-CGyjT-CQ.js → edit-page-Dwf3-IB6.js} +6 -6
  50. package/dist/assets/{error-banner-Cd69vvyX.js → error-banner-B5kzVf_0.js} +1 -1
  51. package/dist/assets/{error-entries-DOWpdGvI.js → error-entries-D3H6JH3A.js} +1 -1
  52. package/dist/assets/{error-panel-C-uxLOHF.js → error-panel-CgpCPUEO.js} +1 -1
  53. package/dist/assets/{errors-DCrsa1nH.js → errors-CNsgAw6m.js} +1 -1
  54. package/dist/assets/{es-Cqst59WX.js → es-N9SHpmG7.js} +1 -1
  55. package/dist/assets/feedback-button-B8idT199.js +1 -0
  56. package/dist/assets/{feedback-button-B99ThNJW.js → feedback-button-BEBY1q2a.js} +2 -2
  57. package/dist/assets/file-explorer-panel-MnNgzxxE.js +1 -0
  58. package/dist/assets/{file-name-input-ChnBsDE_.js → file-name-input-DrtIQ1VP.js} +1 -1
  59. package/dist/assets/{floating-outline-MYqQW4Vp.js → floating-outline-Dtc8YhnE.js} +1 -1
  60. package/dist/assets/{formats-yZ06h1Pl.js → formats-zylfwejq.js} +1 -1
  61. package/dist/assets/{formatting-BqrP-n49.js → formatting-uom1es4b.js} +1 -1
  62. package/dist/assets/{fullscreen-B9tHcfpV.js → fullscreen-BWTs8pYZ.js} +1 -1
  63. package/dist/assets/{gallery-page-DSL0J4md.js → gallery-page-DL4SSfun.js} +1 -1
  64. package/dist/assets/{ganttDiagram-EL5Y4UJY-2n7Ig5Jm.js → ganttDiagram-EL5Y4UJY-CYqkCfFG.js} +1 -1
  65. package/dist/assets/{glide-data-editor-B1MWlKeM.js → glide-data-editor-BTlU9F_s.js} +2 -2
  66. package/dist/assets/{glide-utils-CIrAxdjv.js → glide-utils-HFqhvWHI.js} +2 -2
  67. package/dist/assets/{home-page-B1M3X9Yf.js → home-page-BOmrrw3X.js} +3 -3
  68. package/dist/assets/{hooks-Bj0C0zrZ.js → hooks-DRNEKPFW.js} +1 -1
  69. package/dist/assets/{html-to-image-DK9Zl1lU.js → html-to-image-D_0rd3_B.js} +1 -1
  70. package/dist/assets/index-BdCbOYjS.js +30 -0
  71. package/dist/assets/index-evFWHKmM.css +2 -0
  72. package/dist/assets/{input-BoBxR50a.js → input-ByHt6aoV.js} +1 -1
  73. package/dist/assets/{kiosk-mode-BZECfg9k.js → kiosk-mode-BGmMSc7A.js} +1 -1
  74. package/dist/assets/{layout-DBuMeWh0.js → layout-DY2TXsTM.js} +5 -5
  75. package/dist/assets/linear-Bma8J3iM.js +1 -0
  76. package/dist/assets/links-CXcpNIM0.js +1 -0
  77. package/dist/assets/{logs-panel-y0XnfulJ.js → logs-panel-9f0amGf0.js} +1 -1
  78. package/dist/assets/{markdown-renderer-Q5AhbRU3.js → markdown-renderer-BRDCZeXA.js} +1 -1
  79. package/dist/assets/{menu-items-BrwnTgyK.js → menu-items-BgUyNUpu.js} +1 -1
  80. package/dist/assets/{mermaid-a3xYymTy.js → mermaid-B6mqMm5_.js} +2 -2
  81. package/dist/assets/{name-cell-input-BNOnF6-0.js → name-cell-input-13mN6CiO.js} +1 -1
  82. package/dist/assets/numbers-CsZVw3Dc.js +1 -0
  83. package/dist/assets/{objects-snlMn4yk.js → objects-rLPlQ3X_.js} +1 -1
  84. package/dist/assets/{once-Haz_uxEL.js → once-6KNTRW0u.js} +1 -1
  85. package/dist/assets/{outline-panel-Be7stWwv.js → outline-panel-DxC82nfD.js} +1 -1
  86. package/dist/assets/{packages-panel-9Qs1npCZ.js → packages-panel-Bi_mcFbl.js} +1 -1
  87. package/dist/assets/{panel-accordion-state-GeMEdCPw.js → panel-accordion-state-D_2i5aDC.js} +1 -1
  88. package/dist/assets/panels-C-ygF1Rv.js +107 -0
  89. package/dist/assets/precisionRound-BxlUs8G4.js +1 -0
  90. package/dist/assets/process-output-DlZH3EId.js +1 -0
  91. package/dist/assets/{quadrantDiagram-AXDQQJYC-yBhCDI7E.js → quadrantDiagram-AXDQQJYC-D9KH5Zge.js} +1 -1
  92. package/dist/assets/react-vega-BTNeboR2.js +189 -0
  93. package/dist/assets/{readonly-code-display-YULOXf4h.js → readonly-code-display-C8kpTYRT.js} +1 -1
  94. package/dist/assets/{readonly-python-code-CadgXgRu.js → readonly-python-code-XeDpkiXX.js} +1 -1
  95. package/dist/assets/{renderShortcut-BkVJQ_Zh.js → renderShortcut-H60uiHBp.js} +1 -1
  96. package/dist/assets/{reveal-component-B9FLjTg_.js → reveal-component-DgYlZOla.js} +37 -37
  97. package/dist/assets/run-page-C_A8W1eR.js +1 -0
  98. package/dist/assets/{runs-BLp5jezv.js → runs-6lJxKV1w.js} +1 -1
  99. package/dist/assets/{runtime-details-state-DuChzsA6.js → runtime-details-state-BeyT-Z-4.js} +1 -1
  100. package/dist/assets/{schemas-Dv42wLFq.js → schemas-ChRqMOTL.js} +1 -1
  101. package/dist/assets/{scratchpad-panel-DtB0A8xj.js → scratchpad-panel-Fb-8g4-S.js} +1 -1
  102. package/dist/assets/{scroll-to-bottom-button-1FyowpWV.js → scroll-to-bottom-button-CIkON2WJ.js} +1 -1
  103. package/dist/assets/{secrets-panel-Bctbtkrp.js → secrets-panel-CmLZsNfp.js} +1 -1
  104. package/dist/assets/{select-DTBn5eTb.js → select-3CVGlYrC.js} +1 -1
  105. package/dist/assets/{session-DqoWmb7X.js → session-B8Y-GJnS.js} +1 -1
  106. package/dist/assets/{session-panel-B6tA28BD.js → session-panel-Cl85FUT5.js} +1 -1
  107. package/dist/assets/{snippets-panel-CQ1dn3lA.js → snippets-panel-1hl_ey1w.js} +1 -1
  108. package/dist/assets/{spec-BfSBcO5B.js → spec-uCpVvaAR.js} +1 -1
  109. package/dist/assets/{state-uwRvJLb8.js → state-BY4_P6ko.js} +1 -1
  110. package/dist/assets/{state-BAJYRhmO.js → state-C0irhlOZ.js} +1 -1
  111. package/dist/assets/{state-BUsmcyaT.js → state-CbjD81T1.js} +3 -3
  112. package/dist/assets/{state-DxQnC_1I.js → state-Ck7FMD5A.js} +1 -1
  113. package/dist/assets/{state-Bfh_2SLl.js → state-ClkxCKxQ.js} +1 -1
  114. package/dist/assets/{state-C3oDoyFe.js → state-DaWgt-rn.js} +1 -1
  115. package/dist/assets/{strings-B2vv-ENv.js → strings-C25fhMR_.js} +1 -1
  116. package/dist/assets/{swiper-component-a07domrZ.js → swiper-component-CRGRy5_O.js} +1 -1
  117. package/dist/assets/{switch-CTaiAjrz.js → switch-1h011wlH.js} +1 -1
  118. package/dist/assets/{tabs-BuQlZFbt.js → tabs-CY8E4r9U.js} +1 -1
  119. package/dist/assets/{terminal-Ck_vK-34.js → terminal-D__Z_QZ0.js} +1 -1
  120. package/dist/assets/{time-MgToa8VM.js → time-DswSXBDk.js} +1 -1
  121. package/dist/assets/{toast-BGzLGnvw.js → toast-Gzxi-le_.js} +1 -1
  122. package/dist/assets/tooltip-Brya4Ghn.js +61 -0
  123. package/dist/assets/{tooltip-C9TuY18o.js → tooltip-CkGm8X7m.js} +1 -1
  124. package/dist/assets/tracing-DcFczEy0.js +1 -0
  125. package/dist/assets/{tracing-panel-dgnr2fIN.js → tracing-panel-EWvfWPFQ.js} +2 -2
  126. package/dist/assets/{tree-actions-DAd80MbP.js → tree-actions-Dof5VISm.js} +1 -1
  127. package/dist/assets/{use-restore-focus-BxEGwIbk.js → use-restore-focus-DdS7Tl0F.js} +1 -1
  128. package/dist/assets/{useAddCell-DGstJK0S.js → useAddCell-CqnFgwhm.js} +1 -1
  129. package/dist/assets/useAsyncData-DhhdOGGd.js +1 -0
  130. package/dist/assets/useBoolean-CMgj9hnq.js +1 -0
  131. package/dist/assets/{useCellActionButton-DY9RlJTb.js → useCellActionButton--Sq8PDBs.js} +1 -1
  132. package/dist/assets/{useDeleteCell-DFBGlSQk.js → useDeleteCell-DNTqIwU8.js} +1 -1
  133. package/dist/assets/{useDependencyPanelTab-DydxsE5d.js → useDependencyPanelTab-C4_EiuVH.js} +1 -1
  134. package/dist/assets/{useEventListener-D9cftcHj.js → useEventListener-CjDeLqFC.js} +1 -1
  135. package/dist/assets/{useIframeCapabilities-CwTkczVN.js → useIframeCapabilities-Czr9e4uG.js} +1 -1
  136. package/dist/assets/{useInstallPackage-iX1eufdl.js → useInstallPackage-DDjpV5RE.js} +1 -1
  137. package/dist/assets/{useInterval--x3s1VpI.js → useInterval-DJdQmXnq.js} +1 -1
  138. package/dist/assets/{useNotebookActions-CupIPSlg.js → useNotebookActions-C00MOhyT.js} +1 -1
  139. package/dist/assets/{useRunCells-BFjFX3hz.js → useRunCells-DqLsZnRn.js} +1 -1
  140. package/dist/assets/{useSplitCell-Tqv5pPtL.js → useSplitCell-Daxc689Z.js} +1 -1
  141. package/dist/assets/{useTheme-COhSHkCj.js → useTheme-DLtPc-39.js} +1 -1
  142. package/dist/assets/{utils-CaQYvazl.js → utils-DfElfBpz.js} +1 -1
  143. package/dist/assets/vega-component-D7JFthDD.js +1 -0
  144. package/dist/assets/{vega-embed-container-DJPNkHPb.js → vega-embed-container-DtArSJz1.js} +1 -1
  145. package/dist/assets/vega-loader.browser-Bu25TKax.js +6 -0
  146. package/dist/assets/{write-secret-modal-DzKAInL2.js → write-secret-modal-usRSi1bb.js} +1 -1
  147. package/dist/assets/{xychartDiagram-S5SC5T6Z-KbGzG6-u.js → xychartDiagram-S5SC5T6Z-CeRnBS5e.js} +1 -1
  148. package/dist/index.html +73 -73
  149. package/package.json +4 -4
  150. package/src/__tests__/fixtures/{pair-preview.ts → pair-config.ts} +3 -2
  151. package/src/__tests__/host-imports.test.ts +1 -0
  152. package/src/__tests__/mount.test.ts +8 -8
  153. package/src/components/app-config/ai-config.tsx +5 -1
  154. package/src/components/chat/__tests__/message-queue.test.tsx +17 -0
  155. package/src/components/chat/chat-panel.tsx +3 -7
  156. package/src/components/chat/chat-utils.ts +4 -8
  157. package/src/components/data-table/__tests__/context-menu-interaction.test.tsx +130 -0
  158. package/src/components/data-table/__tests__/date-popover.test.tsx +72 -0
  159. package/src/components/data-table/__tests__/export-actions.test.tsx +417 -6
  160. package/src/components/data-table/column-visibility-dropdown.tsx +8 -13
  161. package/src/components/data-table/columns.tsx +2 -1
  162. package/src/components/data-table/context-menu.tsx +36 -20
  163. package/src/components/data-table/date-popover.tsx +6 -4
  164. package/src/components/data-table/export-actions.tsx +263 -161
  165. package/src/components/data-table/row-viewer-panel/row-viewer.tsx +2 -2
  166. package/src/components/data-table/schemas.ts +14 -36
  167. package/src/components/editor/Output.tsx +5 -1
  168. package/src/components/editor/__tests__/dynamic-favicon.test.tsx +111 -18
  169. package/src/components/editor/actions/__tests__/pair-with-agent-commands.test.ts +80 -252
  170. package/src/components/editor/actions/__tests__/pair-with-agent-modal.test.tsx +186 -34
  171. package/src/components/editor/actions/pair-with-agent-commands.ts +42 -51
  172. package/src/components/editor/actions/pair-with-agent-modal.tsx +96 -36
  173. package/src/components/editor/ai/add-cell-with-ai.tsx +3 -3
  174. package/src/components/editor/cell/CreateCellButton.tsx +8 -10
  175. package/src/components/editor/cell/code/__tests__/language-toggle.test.tsx +54 -0
  176. package/src/components/editor/cell/code/cell-editor.tsx +1 -1
  177. package/src/components/editor/cell/code/language-toggle.tsx +8 -7
  178. package/src/components/editor/chrome/wrapper/__tests__/attachment-status.test.tsx +277 -78
  179. package/src/components/editor/chrome/wrapper/footer-items/attachment-status.tsx +196 -41
  180. package/src/components/editor/connections/components.tsx +1 -1
  181. package/src/components/editor/controls/__tests__/command-palette.test.tsx +53 -0
  182. package/src/components/editor/controls/command-palette.tsx +22 -10
  183. package/src/components/editor/dynamic-favicon.tsx +21 -40
  184. package/src/components/editor/errors/__tests__/send-error-report-button.test.tsx +139 -36
  185. package/src/components/editor/errors/send-error-report-button.tsx +10 -7
  186. package/src/components/editor/file-tree/file-viewer.tsx +4 -2
  187. package/src/components/editor/output/MarimoTracebackOutput.tsx +28 -22
  188. package/src/components/editor/output/console/ConsoleOutput.tsx +8 -18
  189. package/src/components/pages/home-page.tsx +4 -4
  190. package/src/components/slides/slide-cell-view.tsx +1 -1
  191. package/src/components/tracing/tracing.tsx +2 -2
  192. package/src/core/attachments/__tests__/toast.test.tsx +58 -0
  193. package/src/core/attachments/state.ts +5 -8
  194. package/src/core/attachments/toast.ts +15 -0
  195. package/src/core/cells/__tests__/error-report.test.ts +53 -3
  196. package/src/core/cells/__tests__/notebook-outline.test.ts +113 -0
  197. package/src/core/cells/__tests__/session.test.ts +18 -3
  198. package/src/core/cells/cells.ts +2 -1
  199. package/src/core/cells/error-report.ts +14 -6
  200. package/src/core/cells/pending-delete-service.ts +2 -6
  201. package/src/core/cells/session.ts +19 -1
  202. package/src/core/config/pair.ts +5 -3
  203. package/src/core/datasets/__tests__/data-source-discovery.test.ts +4 -4
  204. package/src/core/datasets/data-source-discovery.ts +4 -6
  205. package/src/core/edit-app.tsx +2 -2
  206. package/src/core/host/AGENTS.md +11 -2
  207. package/src/core/host/__tests__/attachments.test.ts +56 -0
  208. package/src/core/host/__tests__/document.test.ts +126 -0
  209. package/src/core/host/__tests__/events.test.ts +49 -0
  210. package/src/core/host/__tests__/fixtures.ts +41 -0
  211. package/src/core/host/__tests__/notebook-client.test.ts +496 -0
  212. package/src/core/host/connection.ts +81 -0
  213. package/src/core/host/events.ts +68 -0
  214. package/src/core/host/notebook-client.ts +316 -0
  215. package/src/core/host/resources/attachments.ts +19 -0
  216. package/src/core/host/resources/document.ts +101 -0
  217. package/src/core/hotkeys/actions.ts +2 -4
  218. package/src/core/islands/__tests__/bootstrap.test.ts +0 -26
  219. package/src/core/islands/bootstrap.ts +0 -1
  220. package/src/core/network/connection.ts +4 -2
  221. package/src/core/run-app.tsx +2 -2
  222. package/src/core/runtime/__tests__/runtime.test.ts +5 -12
  223. package/src/core/runtime/runtime.ts +5 -5
  224. package/src/core/static/files.ts +2 -0
  225. package/src/core/websocket/__tests__/{useMarimoKernelConnection.test.ts → connection-state.test.ts} +15 -17
  226. package/src/core/websocket/__tests__/{useWebSocket.test.ts → createConnectionTransport.test.ts} +1 -1
  227. package/src/core/websocket/__tests__/useNotebookClient.hook.test.tsx +149 -0
  228. package/src/core/websocket/__tests__/{useMarimoKernelConnection.hook.test.tsx → useNotebookSession.hook.test.tsx} +168 -253
  229. package/src/core/websocket/connection-state.ts +70 -0
  230. package/src/core/websocket/state.ts +7 -0
  231. package/src/core/websocket/transports/__tests__/sse.test.ts +18 -4
  232. package/src/core/websocket/transports/create.ts +31 -0
  233. package/src/core/websocket/transports/sse.ts +14 -2
  234. package/src/core/websocket/transports/transport.ts +12 -23
  235. package/src/core/websocket/types.ts +9 -39
  236. package/src/core/websocket/useNotebookClient.ts +78 -0
  237. package/src/core/websocket/{useMarimoKernelConnection.tsx → useNotebookSession.tsx} +53 -233
  238. package/src/hooks/__tests__/useAsyncData.test.tsx +148 -0
  239. package/src/hooks/useAsyncData.ts +3 -3
  240. package/src/hooks/useDataSourceDiscovery.ts +6 -4
  241. package/src/hooks/useElapsedTime.ts +3 -3
  242. package/src/hooks/useInputHistory.ts +4 -7
  243. package/src/hooks/useResizeObserver.ts +4 -7
  244. package/src/mount.tsx +3 -3
  245. package/src/plugins/core/registerReactComponent.tsx +1 -1
  246. package/src/plugins/impl/DropdownPlugin.tsx +2 -6
  247. package/src/plugins/impl/FormPlugin.tsx +1 -1
  248. package/src/plugins/impl/__tests__/DataTablePlugin.test.tsx +84 -0
  249. package/src/plugins/impl/anywidget/__tests__/registry.test.ts +2 -0
  250. package/src/plugins/impl/anywidget/__tests__/widget-binding.test.ts +241 -2
  251. package/src/plugins/impl/anywidget/runtime.ts +21 -9
  252. package/src/plugins/impl/anywidget/widget-binding.ts +160 -82
  253. package/src/plugins/impl/code/any-language-editor.tsx +2 -2
  254. package/src/plugins/impl/data-editor/glide-data-editor.tsx +8 -5
  255. package/src/plugins/impl/data-editor/glide-utils.ts +3 -1
  256. package/src/plugins/impl/mpl-interactive/MplInteractivePlugin.tsx +5 -3
  257. package/src/plugins/impl/panel/PanelPlugin.tsx +15 -16
  258. package/src/plugins/impl/panel/__tests__/utils.test.ts +39 -1
  259. package/src/plugins/impl/panel/utils.ts +17 -0
  260. package/src/plugins/impl/vega/make-selectable.ts +3 -6
  261. package/src/stories/__tests__/editor-story.test.tsx +33 -0
  262. package/src/stories/editor.stories.tsx +24 -17
  263. package/src/utils/__tests__/arrays.test.ts +35 -0
  264. package/src/utils/__tests__/numbers.test.ts +48 -1
  265. package/src/utils/__tests__/objects.test.ts +21 -0
  266. package/src/utils/arrays.ts +10 -0
  267. package/src/utils/numbers.ts +28 -17
  268. package/src/utils/objects.ts +3 -7
  269. package/src/utils/once.ts +19 -19
  270. package/dist/assets/CellStatus-nZpuDkm7.js +0 -1
  271. package/dist/assets/JsonOutput-d-k8v_17.js +0 -11
  272. package/dist/assets/MarimoErrorOutput-CLYUxiKW.js +0 -10
  273. package/dist/assets/ai-model-dropdown-C6GHHEdR.js +0 -5
  274. package/dist/assets/any-language-editor-BLCAD3yx.js +0 -1
  275. package/dist/assets/arrays-BqUx5USx.js +0 -1
  276. package/dist/assets/cell-link-1CynTVGQ.js +0 -1
  277. package/dist/assets/chat-panel-DDDTnLvB.js +0 -4
  278. package/dist/assets/code-visibility-B-_GvwR5.js +0 -1
  279. package/dist/assets/coerce-CpE6kUdX.js +0 -1
  280. package/dist/assets/command-palette-BZ13RKDJ.js +0 -1
  281. package/dist/assets/config-DX8Y2WbJ.js +0 -1
  282. package/dist/assets/config-FzDtjF1-.js +0 -1
  283. package/dist/assets/config-VPSq73n8.js +0 -1
  284. package/dist/assets/feedback-button-DlqZkJwz.js +0 -1
  285. package/dist/assets/file-explorer-panel-D3CphidS.js +0 -1
  286. package/dist/assets/index-CXIE-QEG.css +0 -2
  287. package/dist/assets/index-DnIgeCyQ.js +0 -29
  288. package/dist/assets/linear-0eij_aAG.js +0 -1
  289. package/dist/assets/links-DkkL9DVa.js +0 -1
  290. package/dist/assets/numbers-Mk3-CcoU.js +0 -1
  291. package/dist/assets/panels-B9x935By.js +0 -4
  292. package/dist/assets/precisionRound-Bq_nmf5u.js +0 -1
  293. package/dist/assets/process-output-DNFKMODr.js +0 -1
  294. package/dist/assets/react-vega-C3rYGtP6.js +0 -189
  295. package/dist/assets/run-page-CjdGaic3.js +0 -1
  296. package/dist/assets/tooltip-mT3CGest.js +0 -61
  297. package/dist/assets/tracing-BARlJ_Dk.js +0 -1
  298. package/dist/assets/useAsyncData-C7aJJz0Y.js +0 -1
  299. package/dist/assets/useBoolean-BDD6_xQQ.js +0 -1
  300. package/dist/assets/vega-component-CnadTgoE.js +0 -1
  301. package/dist/assets/vega-loader.browser-CLRkNgm7.js +0 -6
  302. package/src/core/host/__tests__/protocol.test.ts +0 -214
  303. package/src/core/host/protocol.ts +0 -1943
  304. package/src/core/websocket/useWebSocket.tsx +0 -88
@@ -1 +0,0 @@
1
- import{a as e,c as t,i as n,n as r,o as i,r as a,s as o,t as s}from"./precisionRound-Bq_nmf5u.js";import{i as c,n as l,t as u}from"./defaultLocale-CNPGWpMu.js";import{n as d}from"./init-ZlXS9mIS.js";import{d as f,f as p,h as m,v as h,w as g}from"./cubic-DELhj3Tx.js";function _(e){return e===null?NaN:+e}function*v(e,t){if(t===void 0)for(let t of e)t!=null&&(t=+t)>=t&&(yield t);else{let n=-1;for(let r of e)(r=t(r,++n,e))!=null&&(r=+r)>=r&&(yield r)}}var y=o(t),b=y.right,x=y.left;o(_).center;function S(e,t){t||=[];var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;i<n;++i)r[i]=e[i]*(1-a)+t[i]*a;return r}}function C(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function w(e,t){return(C(t)?S:T)(e,t)}function T(e,t){var n=t?t.length:0,r=e?Math.min(n,e.length):0,i=Array(r),a=Array(n),o;for(o=0;o<r;++o)i[o]=O(e[o],t[o]);for(;o<n;++o)a[o]=t[o];return function(e){for(o=0;o<r;++o)a[o]=i[o](e);return a}}function E(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function D(e,t){var n={},r={},i;for(i in(typeof e!=`object`||!e)&&(e={}),(typeof t!=`object`||!t)&&(t={}),t)i in e?n[i]=O(e[i],t[i]):r[i]=t[i];return function(e){for(i in n)r[i]=n[i](e);return r}}function O(e,t){var n=typeof t,r;return t==null||n===`boolean`?h(t):(n===`number`?p:n===`string`?(r=g(t))?(t=r,m):f:t instanceof g?m:t instanceof Date?E:C(t)?S:Array.isArray(t)?T:typeof t.valueOf!=`function`&&typeof t.toString!=`function`||isNaN(t)?D:p)(e,t)}function k(e,t){return e=+e,t=+t,function(n){return Math.round(e*(1-n)+t*n)}}function A(e){return function(){return e}}function j(e){return+e}var M=[0,1];function N(e){return e}function P(e,t){return(t-=e=+e)?function(n){return(n-e)/t}:A(isNaN(t)?NaN:.5)}function F(e,t){var n;return e>t&&(n=e,e=t,t=n),function(n){return Math.max(e,Math.min(t,n))}}function I(e,t,n){var r=e[0],i=e[1],a=t[0],o=t[1];return i<r?(r=P(i,r),a=n(o,a)):(r=P(r,i),a=n(a,o)),function(e){return a(r(e))}}function L(e,t,n){var r=Math.min(e.length,t.length)-1,i=Array(r),a=Array(r),o=-1;for(e[r]<e[0]&&(e=e.slice().reverse(),t=t.slice().reverse());++o<r;)i[o]=P(e[o],e[o+1]),a[o]=n(t[o],t[o+1]);return function(t){var n=b(e,t,1,r)-1;return a[n](i[n](t))}}function R(e,t){return t.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp()).unknown(e.unknown())}function z(){var e=M,t=M,n=O,r,i,a,o=N,s,c,l;function u(){var n=Math.min(e.length,t.length);return o!==N&&(o=F(e[0],e[n-1])),s=n>2?L:I,c=l=null,d}function d(i){return i==null||isNaN(i=+i)?a:(c||=s(e.map(r),t,n))(r(o(i)))}return d.invert=function(n){return o(i((l||=s(t,e.map(r),p))(n)))},d.domain=function(t){return arguments.length?(e=Array.from(t,j),u()):e.slice()},d.range=function(e){return arguments.length?(t=Array.from(e),u()):t.slice()},d.rangeRound=function(e){return t=Array.from(e),n=k,u()},d.clamp=function(e){return arguments.length?(o=e?!0:N,u()):o!==N},d.interpolate=function(e){return arguments.length?(n=e,u()):n},d.unknown=function(e){return arguments.length?(a=e,d):a},function(e,t){return r=e,i=t,u()}}function B(){return z()(N,N)}function V(t,n,i,o){var d=e(t,n,i),f;switch(o=c(o??`,f`),o.type){case`s`:var p=Math.max(Math.abs(t),Math.abs(n));return o.precision==null&&!isNaN(f=r(d,p))&&(o.precision=f),l(o,p);case``:case`e`:case`g`:case`p`:case`r`:o.precision==null&&!isNaN(f=s(d,Math.max(Math.abs(t),Math.abs(n))))&&(o.precision=f-(o.type===`e`));break;case`f`:case`%`:o.precision==null&&!isNaN(f=a(d))&&(o.precision=f-(o.type===`%`)*2)}return u(o)}function H(e){var t=e.domain;return e.ticks=function(e){var n=t();return i(n[0],n[n.length-1],e??10)},e.tickFormat=function(e,n){var r=t();return V(r[0],r[r.length-1],e??10,n)},e.nice=function(r){r??=10;var i=t(),a=0,o=i.length-1,s=i[a],c=i[o],l,u,d=10;for(c<s&&(u=s,s=c,c=u,u=a,a=o,o=u);d-->0;){if(u=n(s,c,r),u===l)return i[a]=s,i[o]=c,t(i);if(u>0)s=Math.floor(s/u)*u,c=Math.ceil(c/u)*u;else if(u<0)s=Math.ceil(s*u)/u,c=Math.floor(c*u)/u;else break;l=u}return e},e}function U(){var e=B();return e.copy=function(){return R(e,U())},d.apply(e,arguments),H(e)}export{_,R as a,j as c,D as d,E as f,b as g,x as h,B as i,k as l,S as m,H as n,N as o,w as p,V as r,z as s,U as t,O as u,v};
@@ -1 +0,0 @@
1
- import{l as e}from"./session-DqoWmb7X.js";function t(t){window.open(e(`?file=${encodeURIComponent(t)}`).toString(),`_blank`)}export{t};
@@ -1 +0,0 @@
1
- import{g as e}from"./useEventListener-D9cftcHj.js";import{t}from"./once-Haz_uxEL.js";var n=t(t=>{for(let n of[100,20,2,0])try{return new Intl.NumberFormat(t,{minimumFractionDigits:0,maximumFractionDigits:n}).format(1),n}catch(t){e.error(t)}return 0});function r(e){if(!Number.isFinite(e)||e===0)return 0;let t=e.toFixed(12).replace(/\.?0+$/,``),n=t.indexOf(`.`);return n===-1?0:t.length-n-1}function i(e,t){let n=r(t);for(let t of e)n=Math.max(n,r(t));return n}function a(e,t){return Number(e.toFixed(t))}function o(e,t){return e==null?``:Array.isArray(e)?String(e):typeof e==`string`?e:typeof e==`boolean`?String(e):typeof e==`number`||typeof e==`bigint`?e.toLocaleString(t,{minimumFractionDigits:0,maximumFractionDigits:2}):String(e)}function s(e){return e===0?`0`:Number.isNaN(e)?`NaN`:Number.isFinite(e)?null:e>0?`Infinity`:`-Infinity`}function c(e,t){let r=s(e);if(r!==null)return r;let i=Math.abs(e);if(i<.01||i>=1e6)return new Intl.NumberFormat(t.locale,{minimumFractionDigits:1,maximumFractionDigits:1,notation:`scientific`}).format(e).toLowerCase();let{shouldRound:a,locale:o}=t;return a?new Intl.NumberFormat(o,{minimumFractionDigits:0,maximumFractionDigits:2}).format(e):e.toLocaleString(o,{minimumFractionDigits:0,maximumFractionDigits:n(o)})}var l={24:`Y`,21:`Z`,18:`E`,15:`P`,12:`T`,9:`G`,6:`M`,3:`k`,0:``,"-3":`m`,"-6":`µ`,"-9":`n`,"-12":`p`,"-15":`f`,"-18":`a`,"-21":`z`,"-24":`y`};function u(e,t){let n=s(e);if(n!==null)return n;let[r,i]=new Intl.NumberFormat(t,{notation:`engineering`,maximumSignificantDigits:3}).format(e).split(`E`);return i in l?r+l[i]:`${r}E${i}`}export{c as a,o as i,n,a as o,u as r,i as t};
@@ -1,4 +0,0 @@
1
- import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{c as t,f as n,l as r,r as i,u as a}from"./useEvent-Dfcbgjhg.js";import{t as o}from"./react-DVplv7_D.js";import{$ as s,A as c,B as l,D as u,Dt as d,Et as f,Gn as p,Hr as m,I as h,Ii as g,Jn as ee,Kn as te,Mr as ne,Oo as re,Ot as ie,R as ae,So as oe,St as se,T as _,Vi as ce,Wn as le,b as v,ei as ue,g as y,h as de,l as fe,mr as pe,pr as me,qn as he}from"./cells-rA_jsZCj.js";import{t as b}from"./compiler-runtime-BrajqUja.js";import{D as ge,d as _e,w as ve}from"./config-VPSq73n8.js";import{_ as x,c as ye,g as be,i as xe,m as Se,n as Ce,o as S,p as we,r as Te,s as Ee,t as De}from"./state-BUsmcyaT.js";import{g as C,t as Oe}from"./useEventListener-D9cftcHj.js";import{t as ke}from"./objects-snlMn4yk.js";import{i as w}from"./utils-B4K466FK.js";import{a as T,f as E,m as Ae,r as je,v as D}from"./session-DqoWmb7X.js";import{M as Me,T as O,_ as Ne,l as Pe,o as Fe,w as k,x as Ie}from"./config-DX8Y2WbJ.js";import{r as A}from"./state-BAJYRhmO.js";import{i as Le,o as j,r as Re}from"./state-C3oDoyFe.js";import{r as ze}from"./ErrorBoundary-B4n9EnHB.js";import{n as M,t as N}from"./cn-ldLVeaqm.js";import{t as P}from"./jsx-runtime-B74pBk57.js";import{i as F,s as Be}from"./fullscreen-B9tHcfpV.js";import{a as I,c as L,i as R,l as z,n as Ve,o as B,r as He,s as Ue}from"./use-restore-focus-BxEGwIbk.js";import{Dt as V,Ot as We,St as Ge}from"./JsonOutput-d-k8v_17.js";import{p as Ke}from"./download-Bx55LMki.js";import{t as H}from"./tooltip-C9TuY18o.js";import{t as U}from"./button-COI-NGrx.js";import{t as W}from"./createLucideIcon-DfJ2oMlA.js";import{P as G,a as K,c as q,i as J,n as Y}from"./layout-DBuMeWh0.js";import{d as qe,n as Je}from"./markdown-renderer-Q5AhbRU3.js";import{v as Ye}from"./write-secret-modal-DzKAInL2.js";import{n as Xe}from"./spinner-DyNE-o8o.js";import{c as Ze,l as Qe,s as $e}from"./readonly-python-code-CadgXgRu.js";import{o as et}from"./MarimoErrorOutput-CLYUxiKW.js";import{t as tt}from"./use-toast-Wu434mLr.js";import{i as nt}from"./strings-B2vv-ENv.js";import{t as rt}from"./requests-lt0JK8Jt.js";import{n as it}from"./useAsyncData-C7aJJz0Y.js";import{t as at}from"./RenderHTML-9bMgbYmo.js";import{t as ot}from"./package-data-dv4FBHxR.js";import{f as st}from"./useInstallPackage-iX1eufdl.js";import{a as ct}from"./errors-DCrsa1nH.js";import{s as lt}from"./react-icons.esm-D6tfmvq8.js";import{r as ut}from"./events-CbeVJ6OD.js";import{i as dt}from"./cell-link-1CynTVGQ.js";import{t as ft}from"./requests-CgSY1X4a.js";import{r as pt,s as mt,t as ht}from"./state-DxQnC_1I.js";import{t as gt}from"./ws-BXWY541V.js";import{n as _t}from"./runs-BLp5jezv.js";var vt=W(`hourglass`,[[`path`,{d:`M5 22h14`,key:`ehvnwv`}],[`path`,{d:`M5 2h14`,key:`pdyrp9`}],[`path`,{d:`M17 22v-4.172a2 2 0 0 0-.586-1.414L12 12l-4.414 4.414A2 2 0 0 0 7 17.828V22`,key:`1d314k`}],[`path`,{d:`M7 2v4.172a2 2 0 0 0 .586 1.414L12 12l4.414-4.414A2 2 0 0 0 17 6.172V2`,key:`1vvvr6`}]]),yt=W(`menu`,[[`path`,{d:`M4 5h16`,key:`1tepv9`}],[`path`,{d:`M4 12h16`,key:`1lakjw`}],[`path`,{d:`M4 19h16`,key:`1djgab`}]]),bt=W(`unlink`,[[`path`,{d:`m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71`,key:`yqzxt4`}],[`path`,{d:`m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71`,key:`4qinb0`}],[`line`,{x1:`8`,x2:`8`,y1:`2`,y2:`5`,key:`1041cp`}],[`line`,{x1:`2`,x2:`5`,y1:`8`,y2:`8`,key:`14m1p5`}],[`line`,{x1:`16`,x2:`16`,y1:`19`,y2:`22`,key:`rzdirn`}],[`line`,{x1:`19`,x2:`22`,y1:`16`,y2:`16`,key:`ox905f`}]]),X=P(),Z=b(),Q=e(o(),1);function xt(e){let t=(0,Z.c)(3),[n,r]=(0,Q.useState)(e<=0),i,a;return t[0]===e?(i=t[1],a=t[2]):(i=()=>{if(e<=0){r(!0);return}r(!1);let t=setTimeout(()=>r(!0),e);return()=>clearTimeout(t)},a=[e],t[0]=e,t[1]=i,t[2]=a),(0,Q.useLayoutEffect)(i,a),n}var St=e=>{let{requires:t,fallback:n,delay:i,children:a}=e,o=n===void 0?null:n,s=i===void 0?0:i,c=r(t),l=xt(c?0:s);return c?a:l?o:null},Ct=e=>{let t=(0,Z.c)(10),{title:n}=e,[r,i]=(0,Q.useState)(n),[a,o]=(0,Q.useState)(!0),s,c;t[0]!==r||t[1]!==n?(s=()=>{if(n!==r){o(!1);let e=setTimeout(()=>{i(n),o(!0)},300);return()=>clearTimeout(e)}},c=[n,r],t[0]=r,t[1]=n,t[2]=s,t[3]=c):(s=t[2],c=t[3]),(0,Q.useEffect)(s,c);let l;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,X.jsx)(Xe,{className:`size-20 animate-spin text-primary`,"data-testid":`large-spinner`,strokeWidth:1}),t[4]=l):l=t[4];let u=a?`opacity-100`:`opacity-0`,d;t[5]===u?d=t[6]:(d=N(`mt-2 text-muted-foreground font-semibold text-lg transition-opacity duration-300`,u),t[5]=u,t[6]=d);let f;return t[7]!==r||t[8]!==d?(f=(0,X.jsxs)(`div`,{className:`flex flex-col h-full flex-1 items-center justify-center p-4`,children:[l,(0,X.jsx)(`div`,{className:d,children:r})]}),t[7]=r,t[8]=d,t[9]=f):f=t[9],f};function wt(e,t){return e===`edit`||e===`home`||e===`gallery`?!0:e===`present`||T(w.includeCode,`false`)||T(w.showCode,`false`)?!1:T(w.showCode,`true`)?!0:t}function Tt(e){let t=wt(e.mode,e.showAppCode),n=e.hasCells&&e.hasCachedOutputs;return{showCode:t,showCachedOutputs:n,canPaint:e.hasCells&&(t||n||e.allCellsIdle)}}var Et=n(e=>{let t=!1,n=!0;for(let r of Object.values(e(v).cellRuntime))Je(r.output)||(t=!0),r.status!==`idle`&&(n=!1);return{hasCachedOutputs:t,allCellsIdle:n}}),Dt=n(e=>e(Et).hasCachedOutputs),Ot=n(e=>e(Et).allCellsIdle),kt=n(e=>Tt({mode:e(E),showAppCode:e(A),hasCells:e(y),hasCachedOutputs:e(Dt),allCellsIdle:e(Ot)})),At=n(e=>e(kt).canPaint),jt=e=>{let t=(0,Z.c)(2),{children:n}=e;if(!Me())return n;let r;return t[0]===n?r=t[1]:(r=(0,X.jsx)(Mt,{children:n}),t[0]=n,t[1]=r),r},Mt=e=>{let t=(0,Z.c)(8),{children:n}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=[],t[0]=i):i=t[0];let{error:a}=it(Pt,i),o=r(At),s=(0,Q.useRef)(!1),c,l;if(t[1]!==o||t[2]!==a?(c=()=>{a&&o&&!s.current&&(s.current=!0,C.error(`Pyodide failed to initialize`,a),tt({title:`Failed to start the notebook runtime`,description:ct(a),variant:`danger`}))},l=[a,o],t[1]=o,t[2]=a,t[3]=c,t[4]=l):(c=t[3],l=t[4]),(0,Q.useEffect)(c,l),a&&!o)throw a;let u;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,X.jsx)(Nt,{}),t[5]=u):u=t[5];let d;return t[6]===n?d=t[7]:(d=(0,X.jsx)(St,{requires:At,fallback:u,children:n}),t[6]=n,t[7]=d),d},Nt=()=>{let e=(0,Z.c)(2),t=r(j),n=t.kind===`loading`?t.message:`Loading…`,i;return e[0]===n?i=e[1]:(i=(0,X.jsx)(Ct,{title:n}),e[0]=n,e[1]=i),i};async function Pt(){return await we.INSTANCE.initialized.promise,!0}var Ft={idle:`./favicon.ico`,success:`data:image/x-icon;base64,AAABAAEAMDAAAAEACACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAAAkAAAAAAAAAAAAAAAEAAAABAAAAAAAAXXQAAFd3AwBWeAQAVngEAFd4AwBXeAQAVnkEAFh3AwBXdwQAVXcGAFd4BQBXeAQAWHgEAFd6AwBXeAMAVnkEAFZ5AwBXdwQAV3cFAFd4BABYeAQAV3gEAFh4BABXeAQA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYYGAYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcYGBgYGBgYGBgYGBgYGAcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGBgYGBgYGBgYGBgYGBgYGBgYCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAsYGBgYGBgYDA0OChkZGRkKDg0MGBgYGBgYGAsAAAAAAAAAAAAAAAAAAAAAAAAAAxgYGBgYGA8QGRkZGRkZGRkZGRkZEA8YGBgYGBgDAAAAAAAAAAAAAAAAAAAAAAARGBgYGBgSChkZGRkZGRkZGRkZGRkZGRkKEhgYGBgYEQAAAAAAAAAAAAAAAAAAAAMYGBgYGBMZGRkZGRkZGRkZGRkZGRkZGRkZGRMYGBgYGAMAAAAAAAAAAAAAAAAACxgYGBgUEBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkQFBgYGBgLAAAAAAAAAAAAAAAKGBgYGBQKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChQYGBgYCgAAAAAAAAAAAAAEGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYBAAAAAAAAAAAAAgYGBgYExkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTGBgYGAgAAAAAAAAAAAkYGBgSGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZEhgYGAkAAAAAAAAAAhgYGBgKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChgYGBgCAAAAAAAABxgYGA8ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGQ8YGBgHAAAAAAABGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYAQAAAAACGBgYDBkZGRkZGRkZGRkZGRkXFhYVGRkZGRkZGRkZGRkZGRkZGRkMGBgYAgAAAAADGBgYDRkZGRkZGRkZGRkZGRcYGBgYFxkZGRkZGRkZGRkZGRkZGRkNGBgYAwAAAAAEGBgYDhkZGRkZGRkZGRkZFxgYGBgYGBcZGRkZGRkZGRkZGRkZGRkOGBgYBAAAAAAFGBgYChkZGRkZGRkZGRkXGBgYGBgYGBgXGRkZGRkZGRkZGRkZGRkKGBgYBQAAAAAGGBgYGRkZGRkZGRkZGRUYGBgYGBgYGBgYFxkZGRkZGRkZGRkZGRkZGBgYBgAAAAAYGBgYGRkZGRkZGRkZGRYYGBgYFxcYGBgYGBcZGRkZGRkZGRkZGRkZGBgYGAAAAAAYGBgYGRkZGRkZGRkZGRYYGBgXGRkXGBgYGBgXGRkZGRkZGRkZGRkZGBgYGAAAAAAGGBgYGRkZGRkZGRkZGRUWFhcZGRkZFxgYGBgYFxkZGRkZGRkZGRkZGBgYBgAAAAAFGBgYChkZGRkZGRkZGRkZGRkZGRkZGRcYGBgYGBcZGRkZGRkZGRkKGBgYBQAAAAAEGBgYDhkZGRkZGRkZGRkZGRkZGRkZGRkXGBgYGBYZGRkZGRkZGRkOGBgYBAAAAAADGBgYDRkZGRkZGRkZGRkZGRkZGRkZGRkZFxgYGBYZGRkZGRkZGRkNGBgYAwAAAAACGBgYDBkZGRkZGRkZGRkZGRkZGRkZGRkZGRUWFhUZGRkZGRkZGRkMGBgYAgAAAAABGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYAQAAAAAABxgYGA8ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGQ8YGBgHAAAAAAAAAhgYGBgKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChgYGBgCAAAAAAAAAAkYGBgSGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZEhgYGAkAAAAAAAAAAAgYGBgYExkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTGBgYGAgAAAAAAAAAAAAEGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYBAAAAAAAAAAAAAAKGBgYGBQKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChQYGBgYCgAAAAAAAAAAAAAACxgYGBgUEBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkQFBgYGBgLAAAAAAAAAAAAAAAAAAMYGBgYGBMZGRkZGRkZGRkZGRkZGRkZGRkZGRMYGBgYGAMAAAAAAAAAAAAAAAAAAAARGBgYGBgSChkZGRkZGRkZGRkZGRkZGRkKEhgYGBgYEQAAAAAAAAAAAAAAAAAAAAAAAxgYGBgYGA8QGRkZGRkZGRkZGRkZEA8YGBgYGBgDAAAAAAAAAAAAAAAAAAAAAAAAAAsYGBgYGBgYDA0OChkZGRkKDg0MGBgYGBgYGAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGBgYGBgYGBgYGBgYGBgYGBgYCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcYGBgYGBgYGBgYGBgYGAcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYYGAYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP//gAH//wAA//4AAH//AAD/+AAAH/8AAP/gAAAH/wAA/8AAAAP/AAD/gAAAAf8AAP8AAAAA/wAA/gAAAAB/AAD8AAAAAD8AAPgAAAAAHwAA+AAAAAAfAADwAAAAAA8AAPAAAAAADwAA4AAAAAAHAADgAAAAAAcAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADgAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAAAA8AAPgAAAAAHwAA+AAAAAAfAAD8AAAAAD8AAP4AAAAAfwAA/wAAAAD/AAD/gAAAAf8AAP/AAAAD/wAA/+AAAAf/AAD/+AAAH/8AAP/+AAB//wAA//+AAf//AAD///////8AAP///////wAA`,running:`data:image/x-icon;base64,AAABAAEAMDAAAAEACACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAAAkAAAAAAAAAAAAAAAEAAAABAAAAAAAA0YsAAMWEAwDHgwIAx4QBAMeEAgDGhAIAyIUBAMaFAwDGhAIAxoIAAMaFAgDHhAIAx4QCAMiFAwDHhAIAx4YAAMaFAgDHhQEAxoMCAMeEAgDHgwQAx4QDAMeDAgDHhAIA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYYGAYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcYGBgYGBgYGBgYGBgYGAcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGBgYGBgYGBgYGBgYGBgYGBgYCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAsYGBgYGBgYDA0OChkZGRkKDg0MGBgYGBgYGAsAAAAAAAAAAAAAAAAAAAAAAAAAAxgYGBgYGA8QGRkZGRkZGRkZGRkZEA8YGBgYGBgDAAAAAAAAAAAAAAAAAAAAAAARGBgYGBgSChkZGRkZGRkZGRkZGRkZGRkKEhgYGBgYEQAAAAAAAAAAAAAAAAAAAAMYGBgYGBMZGRkZGRkZGRkZGRkZGRkZGRkZGRMYGBgYGAMAAAAAAAAAAAAAAAAACxgYGBgUEBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkQFBgYGBgLAAAAAAAAAAAAAAAKGBgYGBQKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChQYGBgYCgAAAAAAAAAAAAAEGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYBAAAAAAAAAAAAAgYGBgYExkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTGBgYGAgAAAAAAAAAAAkYGBgSGRkZGRkZGRkZFRgWFxkZGRkZGRkZGRkZGRkZGRkZEhgYGAkAAAAAAAAAAhgYGBgKGRkZGRkZGRkZFhgYGBYVGRkZGRkZGRkZGRkZGRkZChgYGBgCAAAAAAAABxgYGA8ZGRkZGRkZGRkZGBgYGBgYFxkZGRkZGRkZGRkZGRkZGQ8YGBgHAAAAAAABGBgYGBAZGRkZGRkZGRkZGBgYGBgYGBYVGRkZGRkZGRkZGRkZGRAYGBgYAQAAAAACGBgYDBkZGRkZGRkZGRkZGBgYGBgYGBgYFxkZGRkZGRkZGRkZGRkMGBgYAgAAAAADGBgYDRkZGRkZGRkZGRkZGBgYGBgYGBgYGBYVGRkZGRkZGRkZGRkNGBgYAwAAAAAEGBgYDhkZGRkZGRkZGRkZGBgYGBUWGBgYGBgYFxkZGRkZGRkZGRkOGBgYBAAAAAAFGBgYChkZGRkZGRkZGRkZGBgYGBkZFxgYGBgYGBYVGRkZGRkZGRkKGBgYBQAAAAAGGBgYGRkZGRkZGRkZGRkZGBgYGBkZGRUWGBgYGBgYFxkZGRkZGRkZGBgYBgAAAAAYGBgYGRkZGRkZGRkZGRkZGBgYGBkZGRkZFxgYGBgYFxkZGRkZGRkZGBgYGAAAAAAYGBgYGRkZGRkZGRkZGRkZGBgYGBkZGRkZFxgYGBgYFhkZGRkZGRkZGBgYGAAAAAAGGBgYGRkZGRkZGRkZGRkZGBgYGBkZGRkXGBgYGBgYFRkZGRkZGRkZGBgYBgAAAAAFGBgYChkZGRkZGRkZGRkZGBgYGBkZFxgYGBgYGBcZGRkZGRkZGRkKGBgYBQAAAAAEGBgYDhkZGRkZGRkZGRkZGBgYGBkXGBgYGBgYFxkZGRkZGRkZGRkOGBgYBAAAAAADGBgYDRkZGRkZGRkZGRkZGBgYGBgYGBgYGBcZGRkZGRkZGRkZGRkNGBgYAwAAAAACGBgYDBkZGRkZGRkZGRkZGBgYGBgYGBgYFxkZGRkZGRkZGRkZGRkMGBgYAgAAAAABGBgYGBAZGRkZGRkZGRkZGBgYGBgYGBcZGRkZGRkZGRkZGRkZGRAYGBgYAQAAAAAABxgYGA8ZGRkZGRkZGRkZGBgYGBgYFxkZGRkZGRkZGRkZGRkZGQ8YGBgHAAAAAAAAAhgYGBgKGRkZGRkZGRkZFhgYGBcZGRkZGRkZGRkZGRkZGRkZChgYGBgCAAAAAAAAAAkYGBgSGRkZGRkZGRkZFRYWFxkZGRkZGRkZGRkZGRkZGRkZEhgYGAkAAAAAAAAAAAgYGBgYExkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTGBgYGAgAAAAAAAAAAAAEGBgYGBAZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRAYGBgYBAAAAAAAAAAAAAAKGBgYGBQKGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZChQYGBgYCgAAAAAAAAAAAAAACxgYGBgUEBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkQFBgYGBgLAAAAAAAAAAAAAAAAAAMYGBgYGBMZGRkZGRkZGRkZGRkZGRkZGRkZGRMYGBgYGAMAAAAAAAAAAAAAAAAAAAARGBgYGBgSChkZGRkZGRkZGRkZGRkZGRkKEhgYGBgYEQAAAAAAAAAAAAAAAAAAAAAAAxgYGBgYGA8QGRkZGRkZGRkZGRkZEA8YGBgYGBgDAAAAAAAAAAAAAAAAAAAAAAAAAAsYGBgYGBgYDA0OChkZGRkKDg0MGBgYGBgYGAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGBgYGBgYGBgYGBgYGBgYGBgYCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcYGBgYGBgYGBgYGBgYGAcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYYGAYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP//gAH//wAA//4AAH//AAD/+AAAH/8AAP/gAAAH/wAA/8AAAAP/AAD/gAAAAf8AAP8AAAAA/wAA/gAAAAB/AAD8AAAAAD8AAPgAAAAAHwAA+AAAAAAfAADwAAAAAA8AAPAAAAAADwAA4AAAAAAHAADgAAAAAAcAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADgAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAAAA8AAPgAAAAAHwAA+AAAAAAfAAD8AAAAAD8AAP4AAAAAfwAA/wAAAAD/AAD/gAAAAf8AAP/AAAAD/wAA/+AAAAf/AAD/+AAAH/8AAP/+AAB//wAA//+AAf//AAD///////8AAP///////wAA`,error:`data:image/x-icon;base64,AAABAAEAMDAAAAEACACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAAAkAAAAAAAAAAAAAAAEAAAABAAAAAAAALi7oACcn2wAlJdsAJibcACYm3AAmJtsAJyfdACUl3QAmJtsAKCjdACUl3AAmJtwAJyfcACYm3AAoKNcAJibcACcn3AAmJt0AJibcACUl3AAmJtwAKCjbACcn3AAmJtsAJibcAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYZGQYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcZGRkZGRkZGRkZGRkZGQcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGRkZGRkZGRkZGRkZGRkZGRkZCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAsZGRkZGRkZDA0ODxoaGhoPDg0MGRkZGRkZGQsAAAAAAAAAAAAAAAAAAAAAAAAAAxkZGRkZGRARGhoaGhoaGhoaGhoaERAZGRkZGRkDAAAAAAAAAAAAAAAAAAAAAAASGRkZGRkTDxoaGhoaGhoaGhoaGhoaGhoPExkZGRkZEgAAAAAAAAAAAAAAAAAAAAMZGRkZGRQaGhoaGhoaGhoaGhoaGhoaGhoaGhQZGRkZGQMAAAAAAAAAAAAAAAAACxkZGRkVERoaGhoaGhoaGhoaGhoaGhoaGhoaGhoRFRkZGRkLAAAAAAAAAAAAAAAKGRkZGRUPGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaDxUZGRkZCgAAAAAAAAAAAAAEGRkZGREaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhEZGRkZBAAAAAAAAAAAAAgZGRkZFBoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoUGRkZGQgAAAAAAAAAAAkZGRkTGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaExkZGQkAAAAAAAAAAhkZGRkPGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaDxkZGRkCAAAAAAAABxkZGRAaGhoaGhoaGhYXFxYaGhoaGhoaGhgXFxYaGhoaGhoaGhAZGRkHAAAAAAABGRkZGREaGhoaGhoaGhcZGRkYGhoaGhoaGBkZGRcaGhoaGhoaGhEZGRkZAQAAAAACGRkZDBoaGhoaGhoaGhcZGRkZGBoaGhoYGRkZGRcaGhoaGhoaGhoMGRkZAgAAAAADGRkZDRoaGhoaGhoaGhgZGRkZGRgaGhgZGRkZGRYaGhoaGhoaGhoNGRkZAwAAAAAEGRkZDhoaGhoaGhoaGhoYGRkZGRkYGBkZGRkZGBoaGhoaGhoaGhoOGRkZBAAAAAAFGRkZDxoaGhoaGhoaGhoaGBkZGRkZGRkZGRkYGhoaGhoaGhoaGhoPGRkZBQAAAAAGGRkZGhoaGhoaGhoaGhoaGhgZGRkZGRkZGRgaGhoaGhoaGhoaGhoaGRkZBgAAAAAZGRkZGhoaGhoaGhoaGhoaGhoYGRkZGRkZGBoaGhoaGhoaGhoaGhoaGRkZGQAAAAAZGRkZGhoaGhoaGhoaGhoaGhoYGRkZGRkZGBoaGhoaGhoaGhoaGhoaGRkZGQAAAAAGGRkZGhoaGhoaGhoaGhoaGhgZGRkZGRkZGRgaGhoaGhoaGhoaGhoaGRkZBgAAAAAFGRkZDxoaGhoaGhoaGhoaGBkZGRkZGRkZGRkYGhoaGhoaGhoaGhoPGRkZBQAAAAAEGRkZDhoaGhoaGhoaGhoYGRkZGRkYGBkZGRkZGBoaGhoaGhoaGhoOGRkZBAAAAAADGRkZDRoaGhoaGhoaGhYZGRkZGRgaGhgZGRkZGRgaGhoaGhoaGhoNGRkZAwAAAAACGRkZDBoaGhoaGhoaGhcZGRkZGBoaGhoYGRkZGRcaGhoaGhoaGhoMGRkZAgAAAAABGRkZGREaGhoaGhoaGhcZGRkYGhoaGhoaGBkZGRcaGhoaGhoaGhEZGRkZAQAAAAAABxkZGRAaGhoaGhoaGhYXFxgaGhoaGhoaGhYXFxYaGhoaGhoaGhAZGRkHAAAAAAAAAhkZGRkPGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaDxkZGRkCAAAAAAAAAAkZGRkTGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaExkZGQkAAAAAAAAAAAgZGRkZFBoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoUGRkZGQgAAAAAAAAAAAAEGRkZGREaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhEZGRkZBAAAAAAAAAAAAAAKGRkZGRUPGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaDxUZGRkZCgAAAAAAAAAAAAAACxkZGRkVERoaGhoaGhoaGhoaGhoaGhoaGhoaGhoRFRkZGRkLAAAAAAAAAAAAAAAAAAMZGRkZGRQaGhoaGhoaGhoaGhoaGhoaGhoaGhQZGRkZGQMAAAAAAAAAAAAAAAAAAAASGRkZGRkTDxoaGhoaGhoaGhoaGhoaGhoPExkZGRkZEgAAAAAAAAAAAAAAAAAAAAAAAxkZGRkZGRARGhoaGhoaGhoaGhoaERAZGRkZGRkDAAAAAAAAAAAAAAAAAAAAAAAAAAsZGRkZGRkZDA0ODxoaGhoPDg0MGRkZGRkZGQsAAAAAAAAAAAAAAAAAAAAAAAAAAAAKBBkZGRkZGRkZGRkZGRkZGRkZGRkZGRkECgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgJGRkZGRkZGRkZGRkZGRkZGRkZCQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgcZGRkZGRkZGRkZGRkZGQcCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAgMEBQYZGQYFBAMCAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP//gAH//wAA//4AAH//AAD/+AAAH/8AAP/gAAAH/wAA/8AAAAP/AAD/gAAAAf8AAP8AAAAA/wAA/gAAAAB/AAD8AAAAAD8AAPgAAAAAHwAA+AAAAAAfAADwAAAAAA8AAPAAAAAADwAA4AAAAAAHAADgAAAAAAcAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADgAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAAAA8AAPgAAAAAHwAA+AAAAAAfAAD8AAAAAD8AAP4AAAAAfwAA/wAAAAD/AAD/gAAAAf8AAP/AAAAD/wAA/+AAAAf/AAD/+AAAH/8AAP/+AAB//wAA//+AAf//AAD///////8AAP///////wAA`};async function $(e){return Ft[e]}function It(){let e=document.querySelector(`link[rel~='icon']`);if(e)return e;let t=document.createElement(`link`);return t.rel=`icon`,document.head.append(t),t}function Lt(e){if(document.visibilityState===`visible`)return;let t=async()=>{e===0?new Notification(`Execution completed`,{body:`Your notebook run completed successfully.`,icon:await $(`success`)}):new Notification(`Execution failed`,{body:`Your notebook run encountered ${e} error(s).`,icon:await $(`error`)})};!(`Notification`in window)||Notification.permission===`denied`||(Notification.permission===`granted`?t():Notification.permission==="default"&&Notification.requestPermission().then(e=>{e===`granted`&&t()}))}var Rt=e=>{let t=(0,Z.c)(11),{isRunning:n}=e,r=c(),i,a;t[0]!==r||t[1]!==n?(i=()=>{let e=It();!n&&e.href.includes(`favicon`)||(async()=>{let t;if(t=n?`running`:r.length===0?`success`:`error`,e.href=await $(t),!document.hasFocus())return;let i=setTimeout(async()=>{e.href=await $(`idle`)},3e3);return()=>clearTimeout(i)})()},a=[n,r],t[0]=r,t[1]=n,t[2]=i,t[3]=a):(i=t[2],a=t[3]),(0,Q.useEffect)(i,a);let o=G(n)??n,s,l;t[4]!==r||t[5]!==n||t[6]!==o?(s=()=>{o&&!n&&Lt(r.length)},l=[r,o,n],t[4]=r,t[5]=n,t[6]=o,t[7]=s,t[8]=l):(s=t[7],l=t[8]),(0,Q.useEffect)(s,l);let u;return t[9]===n?u=t[10]:(u=async e=>{if(!n){let e=It();e.href=await $(`idle`)}},t[9]=n,t[10]=u),Oe(window,`focus`,u),null};function zt(){let{cellIds:e,cellRuntime:t}=i.get(v),n=e.inOrderIds.find(e=>t[e]?.status===`running`);n&&dt(n,`focus`)}var Bt=e=>{let t=(0,Z.c)(18),{connection:n,isRunning:i,onReconnect:a}=e,{mode:o}=r(D),s=n.state===k.CLOSED&&(o===`read`||n.code!==O.KERNEL_STARTUP_ERROR),c=n.state===k.OPEN,l=s&&n.code===O.KERNEL_DISCONNECTED,u;t[0]===s?u=t[1]:(u=s&&(0,X.jsx)(Wt,{}),t[0]=s,t[1]=u);let d=o===`read`?`fixed`:`absolute`,f;t[2]===d?f=t[3]:(f=N(`z-50 top-4 left-4`,d),t[2]=d,t[3]=f);let p;t[4]!==c||t[5]!==i?(p=c&&i&&(0,X.jsx)(Ut,{}),t[4]=c,t[5]=i,t[6]=p):p=t[6];let m;t[7]!==l||t[8]!==s||t[9]!==a?(m=s&&(0,X.jsx)(Ht,{onReconnect:l?a:void 0}),t[7]=l,t[8]=s,t[9]=a,t[10]=m):m=t[10];let h;t[11]!==f||t[12]!==p||t[13]!==m?(h=(0,X.jsxs)(`div`,{className:f,children:[p,m]}),t[11]=f,t[12]=p,t[13]=m,t[14]=h):h=t[14];let g;return t[15]!==u||t[16]!==h?(g=(0,X.jsxs)(X.Fragment,{children:[u,h]}),t[15]=u,t[16]=h,t[17]=g):g=t[17],g},Vt=`print:hidden pointer-events-auto hover:cursor-pointer`,Ht=e=>{let t=(0,Z.c)(12),{onReconnect:n}=e,r=!n,i=r?`App disconnected`:`App disconnected — click to reconnect`,a=r?0:-1,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=N(Vt,`bg-transparent border-0 p-0`),t[0]=o):o=t[0];let s=r?`App disconnected`:`Reconnect to app`,c;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,X.jsx)(bt,{className:`w-[25px] h-[25px] text-(--red-11)`}),t[1]=c):c=t[1];let l;t[2]!==r||t[3]!==n||t[4]!==s?(l=(0,X.jsx)(`button`,{type:`button`,className:o,"aria-label":s,"data-testid":`disconnected-indicator`,onClick:n,disabled:r,children:c}),t[2]=r,t[3]=n,t[4]=s,t[5]=l):l=t[5];let u;t[6]!==a||t[7]!==l?(u=(0,X.jsx)(`span`,{tabIndex:a,children:l}),t[6]=a,t[7]=l,t[8]=u):u=t[8];let d;return t[9]!==i||t[10]!==u?(d=(0,X.jsx)(H,{content:i,children:u}),t[9]=i,t[10]=u,t[11]=d):d=t[11],d},Ut=()=>{let e=(0,Z.c)(6),t=r(_),n=t?`Scratchpad is running`:`Jump to running cell`,i=t?void 0:zt,a;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,X.jsx)(vt,{className:`running-app-icon`,size:30,strokeWidth:1}),e[0]=a):a=e[0];let o;e[1]===i?o=e[2]:(o=(0,X.jsx)(`div`,{className:Vt,"data-testid":`loading-indicator`,onClick:i,children:a}),e[1]=i,e[2]=o);let s;return e[3]!==o||e[4]!==n?(s=(0,X.jsx)(H,{content:n,side:`right`,children:o}),e[3]=o,e[4]=n,e[5]=s):s=e[5],s},Wt=()=>{let e=(0,Z.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`noise`}),(0,X.jsx)(`div`,{className:`disconnected-gradient`})]}),e[0]=t):t=e[0],t},Gt=Ve,Kt=z,qt=F(Ue),Jt=Q.forwardRef((e,t)=>{let n=(0,Z.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=N(`fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,X.jsx)(B,{className:a,...i,ref:t}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});Jt.displayName=B.displayName;var Yt=M(`fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500`,{variants:{side:{top:`inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top`,bottom:`inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom`,left:`inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm`,right:`inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm`}},defaultVariants:{side:`right`}}),Xt=Q.forwardRef((e,t)=>{let n=(0,Z.c)(15),r,i,a,o;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4]):({side:o,className:i,children:r,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o);let s=o===void 0?`right`:o,c;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,X.jsx)(Jt,{}),n[5]=c):c=n[5];let l;n[6]!==i||n[7]!==s?(l=N(Yt({side:s}),i),n[6]=i,n[7]=s,n[8]=l):l=n[8];let u;n[9]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,X.jsxs)(He,{className:`absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary`,children:[(0,X.jsx)(lt,{className:`h-4 w-4`}),(0,X.jsx)(`span`,{className:`sr-only`,children:`Close`})]}),n[9]=u):u=n[9];let d;return n[10]!==r||n[11]!==a||n[12]!==t||n[13]!==l?(d=(0,X.jsx)(qt,{children:(0,X.jsxs)(Be,{children:[c,(0,X.jsxs)(R,{ref:t,className:l,...a,children:[r,u]})]})}),n[10]=r,n[11]=a,n[12]=t,n[13]=l,n[14]=d):d=n[14],d});Xt.displayName=R.displayName;var Zt=Q.forwardRef((e,t)=>{let n=(0,Z.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=N(`text-lg font-semibold text-foreground`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,X.jsx)(L,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});Zt.displayName=L.displayName;var Qt=Q.forwardRef((e,t)=>{let n=(0,Z.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=N(`text-sm text-muted-foreground`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,X.jsx)(I,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});Qt.displayName=I.displayName;var $t=(0,Q.memo)(()=>{let e=(0,Z.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,X.jsx)(V,{name:Ge.SIDEBAR}),e[0]=t):t=e[0],t});$t.displayName=`SidebarSlot`;var en=e=>{let t=(0,Z.c)(6),{openWidth:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,X.jsx)(Kt,{className:`lg:hidden`,asChild:!0,children:(0,X.jsx)(U,{variant:`ghost`,className:`bg-background`,children:(0,X.jsx)(yt,{className:`w-5 h-5`})})}),t[0]=r):r=t[0];let i;t[1]===n?i=t[2]:(i={maxWidth:n},t[1]=n,t[2]=i);let a;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,X.jsx)($t,{}),t[3]=a):a=t[3];let o;return t[4]===i?o=t[5]:(o=(0,X.jsxs)(Gt,{children:[r,(0,X.jsx)(Xt,{className:`w-full px-3 h-full flex flex-col overflow-y-auto`,style:i,side:`left`,children:a})]}),t[4]=i,t[5]=o),o},tn=e=>{let t=(0,Z.c)(7),{isOpen:n,toggle:r}=e,i=n?`rotate-0`:`rotate-180`,a;t[0]===i?a=t[1]:(a=N(`h-5 w-5 transition-transform ease-in-out duration-700`,i),t[0]=i,t[1]=a);let o;t[2]===a?o=t[3]:(o=(0,X.jsx)(Ke,{className:a}),t[2]=a,t[3]=o);let s;return t[4]!==o||t[5]!==r?(s=(0,X.jsx)(`div`,{className:`invisible lg:visible absolute top-[12px] right-[16px] z-20`,children:(0,X.jsx)(U,{onClick:r,className:`w-10 h-8`,variant:`ghost`,size:`icon`,children:o})}),t[4]=o,t[5]=r,t[6]=s):s=t[6],s},nn=e=>{let t=(0,Z.c)(11),{isOpen:n,toggle:r,width:i}=e,a=n?i:De,o;t[0]===a?o=t[1]:(o={width:a},t[0]=a,t[1]=o);let s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=N(`app-sidebar auto-collapse-nav`,`top-0 left-0 z-20 h-full hidden lg:block relative transition-[width] ease-in-out duration-300`),t[2]=s):s=t[2];let c;t[3]!==n||t[4]!==r?(c=(0,X.jsx)(tn,{isOpen:n,toggle:r}),t[3]=n,t[4]=r,t[5]=c):c=t[5];let l;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,X.jsx)(`div`,{className:`relative h-full flex flex-col px-3 pb-16 pt-14 overflow-y-auto shadow-sm border-l`,children:(0,X.jsx)($t,{})}),t[6]=l):l=t[6];let u;return t[7]!==n||t[8]!==o||t[9]!==c?(u=(0,X.jsxs)(`aside`,{"data-expanded":n,style:o,className:s,children:[c,l]}),t[7]=n,t[8]=o,t[9]=c,t[10]=u):u=t[10],u},rn=e=>{let n=(0,Z.c)(15),{children:r}=e,[i,a]=t(Te),{isOpen:o,width:s}=i;if(We(Ge.SIDEBAR).length===0)return r;let c;n[0]===s?c=n[1]:(c=Ce(s),n[0]=s,n[1]=c);let l=c,u;n[2]!==a||n[3]!==o?(u=()=>a({type:`toggle`,isOpen:!o}),n[2]=a,n[3]=o,n[4]=u):u=n[4];let d;n[5]!==o||n[6]!==l||n[7]!==u?(d=(0,X.jsx)(nn,{isOpen:o,width:l,toggle:u}),n[5]=o,n[6]=l,n[7]=u,n[8]=d):d=n[8];let f;n[9]===l?f=n[10]:(f=(0,X.jsx)(`div`,{className:`absolute top-3 left-4 flex items-center z-50`,children:(0,X.jsx)(en,{openWidth:l})}),n[9]=l,n[10]=f);let p;return n[11]!==r||n[12]!==d||n[13]!==f?(p=(0,X.jsxs)(`div`,{className:`inset-0 absolute flex`,children:[d,f,r]}),n[11]=r,n[12]=d,n[13]=f,n[14]=p):p=n[14],p},an=e=>{let t=(0,Z.c)(19),{width:n,connection:r,isRunning:i,children:a,onReconnect:o}=e,s=r.state,c;t[0]===i?c=t[1]:(c=(0,X.jsx)(Rt,{isRunning:i}),t[0]=i,t[1]=c);let l;t[2]!==r||t[3]!==i||t[4]!==o?(l=(0,X.jsx)(Bt,{connection:r,isRunning:i,onReconnect:o}),t[2]=r,t[3]=i,t[4]=o,t[5]=l):l=t[5];let u=r.state===k.CLOSED&&r.code!==O.KERNEL_STARTUP_ERROR&&`disconnected`,d=n===`full`&&`config-width-full`,f=n===`columns`?`overflow-x-auto`:`overflow-x-auto sm:overflow-x-hidden`,p;t[6]!==u||t[7]!==d||t[8]!==f?(p=N(`mathjax_ignore`,u,`bg-background w-full h-full text-textColor`,`flex flex-col overflow-y-auto`,d,f,`print:height-fit`),t[6]=u,t[7]=d,t[8]=f,t[9]=p):p=t[9];let m;t[10]!==a||t[11]!==s||t[12]!==p||t[13]!==n?(m=(0,X.jsx)(jt,{children:(0,X.jsx)(rn,{children:(0,X.jsx)(`div`,{id:`App`,"data-config-width":n,"data-connection-state":s,className:p,children:a})})}),t[10]=a,t[11]=s,t[12]=p,t[13]=n,t[14]=m):m=t[14];let h;return t[15]!==c||t[16]!==l||t[17]!==m?(h=(0,X.jsxs)(X.Fragment,{children:[c,l,m]}),t[15]=c,t[16]=l,t[17]=m,t[18]=h):h=t[18],h},on=(0,Q.memo)(e=>{let t=(0,Z.c)(9),{appConfig:n,mode:i,children:a}=e,{selectedLayout:o}=Qe();if(!r(Ae)&&(i===`edit`||i===`present`&&o===`vertical`))return a;let s=i===`read`,c;t[0]!==o||t[1]!==s?(c=$e({selectedLayout:o,isReading:s,searchParams:new URLSearchParams(window.location.search)}),t[0]=o,t[1]=s,t[2]=c):c=t[2];let l=c,u;t[3]===l?u=t[4]:(u=K.find(e=>e.type===l),t[3]=l,t[4]=u);let d=u;if(!d)return a;let f;return t[5]!==n||t[6]!==i||t[7]!==d?(f=(0,X.jsx)(sn,{appConfig:n,mode:i,plugin:d}),t[5]=n,t[6]=i,t[7]=d,t[8]=f):f=t[8],f});on.displayName=`CellsRenderer`;var sn=e=>{let t=(0,Z.c)(12),{appConfig:n,mode:r,plugin:i}=e,a=Qe(),o=h(),{setCurrentLayoutData:s}=Ze(),c,l;t[0]!==a||t[1]!==o||t[2]!==i?(c=fe(o),l=J({state:a,plugin:i,cells:c}),t[0]=a,t[1]=o,t[2]=i,t[3]=c,t[4]=l):(c=t[3],l=t[4]);let u=l,d=i.Component,f;return t[5]!==d||t[6]!==n||t[7]!==c||t[8]!==u||t[9]!==r||t[10]!==s?(f=(0,X.jsx)(d,{appConfig:n,mode:r,cells:c,layout:u,setLayout:s}),t[5]=d,t[6]=n,t[7]=c,t[8]=u,t[9]=r,t[10]=s,t[11]=f):f=t[11],f},cn=class e{hasStarted=!1;static get INSTANCE(){let t=`_marimo_private_RuntimeState`;return window[t]||(window[t]=new e(S)),window[t]}_sendComponentValues;uiElementRegistry;constructor(e){this.uiElementRegistry=e}get sendComponentValues(){if(!this._sendComponentValues)throw Error(`sendComponentValues is not set`);return this._sendComponentValues}start(e){if(this.hasStarted){C.warn(`RuntimeState already started`);return}this._sendComponentValues=e,document.addEventListener(ut.TYPE,this.handleReadyEvent),this.hasStarted=!0}stop(){if(!this.hasStarted){C.warn(`RuntimeState already stopped`);return}document.removeEventListener(ut.TYPE,this.handleReadyEvent),this.hasStarted=!1}handleReadyEvent=e=>{let t=e.detail.objectId;if(!this.uiElementRegistry.has(t))return;let n=this.uiElementRegistry.lookupValue(t);n!==void 0&&this.sendComponentValues({objectIds:[t],values:[n]}).catch(e=>{C.warn(e)})}},ln=`MARIMO_TRANSPORT_EXHAUSTED`,un=class{inner;closeWrappers=new WeakMap;constructor(e){this.inner=new gt(e,void 0,{maxRetries:10,debug:!1,startClosed:!0,connectionTimeout:1e4})}get readyState(){return this.inner.readyState}reconnect(e,t){this.inner.reconnect(e,t)}close(){this.inner.close()}send(e){this.inner.send(e)}addEventListener(e,t){if(e===`close`){let e=t;if(this.closeWrappers.has(e))return;let n=t=>{this.inner.retryCount>=10?e(new CloseEvent(`close`,{code:t.code,reason:ln,wasClean:t.wasClean})):e(t)};this.closeWrappers.set(e,n),this.inner.addEventListener(`close`,n);return}this.inner.addEventListener(e,t)}removeEventListener(e,t){if(e===`close`){let e=t,n=this.closeWrappers.get(e);n&&(this.closeWrappers.delete(e),this.inner.removeEventListener(`close`,n));return}this.inner.removeEventListener(e,t)}},dn=1e4,fn=1e3,pn=1e4,mn=1.3,hn=1006,gn=class{subscriptions=new x;urlProvider;headersProvider;abortController=null;retryTimer=null;retryCount=0;userClosed=!1;state=WebSocket.CLOSED;constructor(e,t=()=>({})){this.urlProvider=e,this.headersProvider=t}get readyState(){return this.state}reconnect(e,t){this.userClosed=!1,this.retryCount=0,this.clearRetryTimer(),this.abortController?.abort(),this.connect()}close(){this.userClosed=!0,this.clearRetryTimer(),this.state=WebSocket.CLOSED,this.abortController?.abort(),this.abortController=null}send(e){C.warn(`SseTransport does not support send(); dropping message`)}addEventListener(e,t){this.subscriptions.addSubscription(e,t)}removeEventListener(e,t){this.subscriptions.removeSubscription(e,t)}connect(){this.state=WebSocket.CONNECTING,this.run()}async run(){let e=new AbortController;this.abortController=e;let t=setTimeout(()=>e.abort(),dn),n=null;try{let r=await fetch(this.urlProvider(),{headers:{...this.headersProvider(),Accept:`text/event-stream`},signal:e.signal});if(clearTimeout(t),!r.ok||r.body===null)throw Error(`Unexpected SSE response: ${r.status}`);this.state=WebSocket.OPEN,this.subscriptions.notify(`open`,new Event(`open`)),n=await this.readEvents(r.body)}catch(n){if(clearTimeout(t),this.isSuperseded(e))return;C.warn(`SSE connection failed`,n),this.subscriptions.notify(`error`,new Event(`error`))}if(this.isSuperseded(e))return;e.abort(),this.state=WebSocket.CLOSED,this.retryCount+=1;let r=this.retryCount>=10;this.subscriptions.notify(`close`,new CloseEvent(`close`,{code:n?.code??hn,reason:r?ln:n?.reason??``,wasClean:n!==null})),!(r||this.isSuperseded(e))&&this.scheduleRetry()}isSuperseded(e){return this.userClosed||this.abortController!==e}scheduleRetry(){this.clearRetryTimer(),this.state=WebSocket.CONNECTING;let e=Math.min(fn*mn**this.retryCount,pn);this.retryTimer=setTimeout(()=>{this.retryTimer=null,this.connect()},e)}clearRetryTimer(){this.retryTimer!==null&&(clearTimeout(this.retryTimer),this.retryTimer=null)}async readEvents(e){let t=e.getReader(),n=new TextDecoder,r=``,i=null,a=[],o=()=>{if(a.length===0)return i=null,null;let e=a.join(`
2
- `),t=i;return i=null,a=[],t===`close`?_n(e):(this.retryCount=0,this.subscriptions.notify(`message`,new MessageEvent(`message`,{data:e})),null)};for(;;){let{done:e,value:s}=await t.read();if(e)return null;r+=n.decode(s,{stream:!0});let c=0,l=r.indexOf(`
3
- `,c);for(;l!==-1;){let e=r.slice(c,l);if(c=l+1,l=r.indexOf(`
4
- `,c),e.endsWith(`\r`)&&(e=e.slice(0,-1)),e===``){let e=o();if(e!==null)return e;continue}if(e.startsWith(`:`))continue;let t=e.indexOf(`:`),n=t===-1?e:e.slice(0,t),s=t===-1?``:e.slice(t+1);s.startsWith(` `)&&(s=s.slice(1)),n===`data`?a.push(s):n===`event`&&(i=s)}c>0&&(r=r.slice(c))}}};function _n(e){try{let t=JSON.parse(e);return{code:typeof t.code==`number`?t.code:1e3,reason:typeof t.reason==`string`?t.reason:``}}catch{return C.warn(`Failed to parse SSE close event`,e),{code:1e3,reason:``}}}function vn(e){return e.static?be.empty():Me()?Se():e.transportType===`sse`?new gn(e.url,e.headers):new un(e.url)}function yn(e){let{onOpen:t,onMessage:n,onClose:r,onError:i,waitToConnect:a}=e,[o]=(0,Q.useState)(()=>{let a=vn(e);return a.addEventListener(`open`,t),a.addEventListener(`close`,r),a.addEventListener(`error`,i),a.addEventListener(`message`,n),a});return(0,Q.useEffect)(()=>(o.readyState===WebSocket.CLOSED&&a().then(()=>o.reconnect()).catch(e=>{C.error(`Healthy connection never made`,e),o.close()}),()=>{C.warn(`useConnectionTransport is unmounting. This likely means there is a bug.`),o.close(),o.removeEventListener(`open`,t),o.removeEventListener(`close`,r),o.removeEventListener(`error`,i),o.removeEventListener(`message`,n)}),[o]),o}function bn(e){let{codes:t,names:n,configs:r,cell_ids:i,last_executed_code:a,last_execution_time:o}=e,s=a||{},c=o||{};return t.map((e,t)=>{let a=i[t],o=s[a];return ae({id:a,code:e,edited:o?o!==e:!1,name:n[t],lastCodeRun:s[a]??null,lastExecutionTime:c[a]??null,config:r[t]})})}function xn(e,t,n){let{layout:r}=e,i=Y(r,t);return r&&r.type===i.selectedLayout&&n({layoutView:i.selectedLayout,data:i.layoutData[i.selectedLayout]}),i}function Sn(){let e=[],t=[];return S.entries.forEach((n,r)=>{e.push(r),t.push(n.value)}),{objectIds:e,values:t}}function Cn(e,t){let{existingCells:n,autoInstantiate:r,setCells:i,setLayoutData:a,setAppConfig:o,setCapabilities:s,setKernelState:c,onError:l}=t,{resumed:u,ui_values:d,app_config:f,capabilities:p,auto_instantiated:m}=e,h=n&&n.length>0,g=h&&!u?n:bn(e);i(g,xn(e,g,a));let ee=ge.safeParse(f);if(ee.success?o(ee.data):C.error(`Failed to parse app config`,ee.error),s(p),m)return;if(u){for(let[e,t]of ke.entries(d||{})){let n=e;S.set(n,t)}return}let{objectIds:te,values:ne}=Sn(),re=h?Object.fromEntries(n.map(e=>[e.id,e.code])):void 0;rt().sendInstantiate({objectIds:te,values:ne,autoRun:r,codes:re}).then(()=>{c({isInstantiated:!0,error:null})}).catch(e=>{c({isInstantiated:!1,error:e}),l(Error(`Failed to instantiate`,{cause:e}))})}function wn(e){let t=e.cell_id;S.removeElementsByCell(t),q.INSTANCE.removeForCellId(t)}function Tn(e,t){t(e),q.INSTANCE.track(e)}var En={append:e=>{let t=new URL(window.location.href);t.searchParams.append(e.key,e.value),window.history.pushState({},``,`${t.pathname}${t.search}`)},set:e=>{let t=new URL(window.location.href);Array.isArray(e.value)?(t.searchParams.delete(e.key),e.value.forEach(n=>t.searchParams.append(e.key,n))):t.searchParams.set(e.key,e.value),window.history.pushState({},``,`${t.pathname}${t.search}`)},delete:e=>{let t=new URL(window.location.href);e.value==null?t.searchParams.delete(e.key):t.searchParams.delete(e.key,e.value),window.history.pushState({},``,`${t.pathname}${t.search}`)},clear:()=>{let e=new URL(window.location.href);e.search=``,window.history.pushState({},``,`${e.pathname}${e.search}`)}};function Dn(e){switch(e.reason){case ln:return{kind:`gave-up`,status:{state:k.CLOSED,code:O.KERNEL_DISCONNECTED,reason:`kernel not found`}};case`MARIMO_NO_FILE_KEY`:case`MARIMO_NO_SESSION_ID`:case`MARIMO_NO_SESSION`:case`MARIMO_SHUTDOWN`:return{kind:`terminal`,status:{state:k.CLOSED,code:O.KERNEL_DISCONNECTED,reason:`kernel not found`},closeTransport:!0};case`MARIMO_UNAUTHORIZED`:return{kind:`terminal`,status:{state:k.CLOSED,code:O.KERNEL_DISCONNECTED,reason:`not authorized`},closeTransport:!0};case`MARIMO_KIOSK_NOT_ALLOWED`:return{kind:`terminal`,status:{state:k.CLOSED,code:O.KERNEL_DISCONNECTED,reason:`kiosk mode is not available for this session`},closeTransport:!0};case`MARIMO_KERNEL_STARTUP_ERROR`:return{kind:`terminal`,status:{state:k.CLOSED,code:O.KERNEL_STARTUP_ERROR,reason:`Failed to start kernel sandbox`},closeTransport:!0};default:e.reason&&nt(e.reason)}return{kind:`retry`,status:{state:k.CONNECTING}}}function On(){return Object.values(de().cellData).filter(e=>e.id!==oe)}function kn(e){let n=(0,Z.c)(53),i=(0,Q.useRef)(!0),{autoInstantiate:o,sessionId:c,setCells:h}=e,{showBoundary:ae}=ze(),{handleCellMessage:oe}=u(),_;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(_={skipMiddleware:!0},n[0]=_):_=n[0];let v=u(_),y;n[1]===v?y=n[2]:(y=e=>{s(e.changes,v,Pn)},n[1]=v,n[2]=y);let fe=y,{addCellNotification:b}=_t(),ge=a(Le),x=a(Re),be=ve(),{setVariables:Se,setMetadata:Ce}=ue(),{addColumnPreview:we}=ce(),{addDatasets:Te,filterDatasetsFromVariables:De}=ce(),{addDataSourceConnection:Oe,filterDataSourcesFromVariables:ke}=g(),{setLayoutData:w}=Ze(),[T,E]=t(Ne),D=a(Ie),{addBanner:A}=pt(),{addMissingPackageAlert:j,updateEnvironment:M,setEnvironment:N,addStartupLog:P}=mt(),F=a(Ae),Be=a(je),I=a(et),L=a(m),R=Fe(),z=r(_e),Ve=a(ft),B=a(ht),{setNamespaces:He,filterFromVariables:Ue}=se(),V;n[3]!==A||n[4]!==b||n[5]!==we||n[6]!==Oe||n[7]!==Te||n[8]!==j||n[9]!==P||n[10]!==o||n[11]!==ke||n[12]!==De||n[13]!==Ue||n[14]!==oe||n[15]!==fe||n[16]!==be||n[17]!==I||n[18]!==Ve||n[19]!==L||n[20]!==h||n[21]!==E||n[22]!==N||n[23]!==x||n[24]!==B||n[25]!==ge||n[26]!==F||n[27]!==w||n[28]!==Ce||n[29]!==Be||n[30]!==He||n[31]!==Se||n[32]!==ae||n[33]!==M||n[34]!==D?(V=e=>{let t=re(e.data);switch(t.data.op){case`reload`:st();return;case`attachments`:I(t.data.attachments);return;case`startup-progress`:{let{phase:e}=t.data;D(t.data),E(t=>t.state===k.OPEN||t.state===k.CONNECTING&&t.phase===e?t:{state:k.CONNECTING,phase:e});return}case`kernel-ready`:{B(null),E({state:k.OPEN}),x(!!(t.data.resumed||t.data.auto_instantiated));let e=On();Cn(t.data,{autoInstantiate:o,setCells:h,setLayoutData:w,setAppConfig:be,setCapabilities:L,setKernelState:ge,onError:ae,existingCells:e}),t.data.resumed||(I([]),ie()),F(t.data.kiosk),Be(t.data.stable_session_id??null),pe(null),me();return}case`completed-run`:x(!0);return;case`execution`:return;case`interrupted`:return;case`kernel-startup-error`:B(t.data.error);return;case`send-ui-element-message`:{let e=t.data.ui_element;if(e){let n=qe(t.data);S.broadcastMessage(e,t.data.message,n)}return}case`model-lifecycle`:ye(Ee,t.data);return;case`remove-ui-elements`:wn(t.data);return;case`completion-result`:ne.resolve(t.data.completion_id,t.data);return;case`function-call-result`:xe.resolve(t.data.function_call_id,t.data);return;case`cell-op`:{Tn(t.data,oe);let e=de().cellData[t.data.cell_id];if(!e)return;b({cellNotification:t.data,code:e.code});return}case`variables`:{let e=t.data.variables.map(Nn);Se(t.data.variables.map(Mn)),De(e),ke(e),Ue(e);return}case`variable-values`:Ce(t.data.variables.map(jn));return;case`alert`:tt({title:t.data.title,description:at({html:t.data.description}),variant:t.data.variant});return;case`banner`:A(t.data);return;case`missing-package-alert`:j({...t.data,kind:`missing`});return;case`environment-operation`:t.data.source===`kernel`&&t.data.status.kind!==`running`&&ot(),M(t.data);return;case`environment-state`:N(t.data),t.data.source===`kernel`&&ot();return;case`startup-logs`:P({content:t.data.content,status:t.data.status});return;case`query-params-append`:En.append(t.data);return;case`query-params-set`:En.set(t.data);return;case`query-params-delete`:En.delete(t.data);return;case`query-params-clear`:En.clear();return;case`datasets`:Te(t.data);return;case`data-column-preview`:we(t.data);return;case`sql-table-preview`:te.resolve(t.data.request_id,t.data);return;case`sql-table-list-preview`:he.resolve(t.data.request_id,t.data);return;case`sql-schema-list-preview`:p.resolve(t.data.request_id,t.data);return;case`validate-sql-result`:ee.resolve(t.data.request_id,t.data);return;case`data-source-discovery-result`:le.resolve(t.data.request_id,t.data);return;case`secret-keys-result`:Ye.resolve(t.data.request_id,t.data);return;case`cache-info`:Ve(t.data);return;case`cache-cleared`:return;case`data-source-connections`:Oe({connections:t.data.connections.map(An)});return;case`storage-namespaces`:He(t.data);return;case`storage-entries`:d.resolve(t.data.request_id,t.data);return;case`storage-download-ready`:f.resolve(t.data.request_id,t.data);return;case`reconnected`:B(null),E({state:k.OPEN});return;case`focus-cell`:l(t.data.cell_id);return;case`active-line`:pe(t.data.line==null?null:{cellId:t.data.cell_id,line:t.data.line});return;case`notebook-document-transaction`:fe(t.data.transaction);return;case`consumer-capabilities`:F(!t.data.consumer_capabilities.edit);return;default:nt(t.data)}},n[3]=A,n[4]=b,n[5]=we,n[6]=Oe,n[7]=Te,n[8]=j,n[9]=P,n[10]=o,n[11]=ke,n[12]=De,n[13]=Ue,n[14]=oe,n[15]=fe,n[16]=be,n[17]=I,n[18]=Ve,n[19]=L,n[20]=h,n[21]=E,n[22]=N,n[23]=x,n[24]=B,n[25]=ge,n[26]=F,n[27]=w,n[28]=Ce,n[29]=Be,n[30]=He,n[31]=Se,n[32]=ae,n[33]=M,n[34]=D,n[35]=V):V=n[35];let We=V,Ge=(e,t)=>{i.current&&(i.current=!1,J.reconnect(e,t))},Ke=async()=>{if(J.readyState!==WebSocket.OPEN&&J.readyState!==WebSocket.CONNECTING){if(i.current=!0,B(null),E({state:k.CONNECTING}),!await R.reconcileFromHealth()){i.current=!1,E({state:k.CLOSED,code:O.KERNEL_DISCONNECTED,reason:`kernel not found`});return}J.reconnect()}},H;n[36]===Symbol.for(`react.memo_cache_sentinel`)?(H=Pe(),n[36]=H):H=n[36];let U;n[37]!==R||n[38]!==c||n[39]!==z?(U=()=>z===`sse`?R.getSseURL(c).toString():R.getWsURL(c).toString(),n[37]=R,n[38]=c,n[39]=z,n[40]=U):U=n[40];let W;n[41]===R?W=n[42]:(W=()=>R.headers(),n[41]=R,n[42]=W);let G;n[43]!==I||n[44]!==D?(G=async()=>{D(null),I([]),i.current=!0},n[43]=I,n[44]=D,n[45]=G):G=n[45];let K;n[46]===R?K=n[47]:(K=async()=>{Pe()||Me()||R.isSameOrigin||await R.waitForHealthy()},n[46]=R,n[47]=K);let q;n[48]===We?q=n[49]:(q=e=>{try{We(e)}catch(t){let n=t;C.error(`Failed to handle message`,e.data,n),tt({title:`Failed to handle message`,description:ct(n),variant:`danger`})}},n[48]=We,n[49]=q);let J=yn({static:H,transportType:z,url:U,headers:W,onOpen:G,waitToConnect:K,onMessage:q,onClose:e=>{C.warn(`WebSocket closed`,e.code,e.reason),I([]);let t=Dn(e);if(E(e=>{let n=t.status;return n.state===k.CLOSED&&n.code===O.KERNEL_STARTUP_ERROR&&(e.state===k.CONNECTING||e.state===k.CLOSED)?{...n,phase:e.phase}:n.state===k.CONNECTING&&(e.state===k.OPEN||e.state===k.CONNECTING&&e.phase===`reconnecting`)?{...n,phase:`reconnecting`}:n}),t.kind===`terminal`&&t.closeTransport){J.close();return}t.kind===`retry`&&Ge(e.code,e.reason)},onError:e=>{C.warn(`WebSocket error`,e),I([]),E({state:k.CLOSED,code:O.KERNEL_DISCONNECTED,reason:`kernel not found`}),Ge()}}),Y;return n[50]!==T||n[51]!==Ke?(Y={connection:T,reconnect:Ke},n[50]=T,n[51]=Ke,n[52]=Y):Y=n[52],Y}function An(e){return{...e,name:e.name}}function jn(e){return{name:e.name,dataType:e.datatype,value:e.value}}function Mn(e){return{name:e.name,declaredBy:e.declared_by,usedBy:e.used_by}}function Nn(e){return e.name}function Pn(){return de().cellIds.inOrderIds}var Fn=e=>{let t=(0,Z.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,X.jsx)(`div`,{"data-testid":`chrome-wrapper`,className:`flex flex-col flex-1 overflow-hidden absolute inset-0 print:relative`,children:n}),t[0]=n,t[1]=r),r};export{an as a,yt as c,on as i,kn as n,St as o,cn as r,xt as s,Fn as t};
@@ -1 +0,0 @@
1
- import{a as e}from"./defaultLocale-CNPGWpMu.js";function t(e,t){return e==null||t==null?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function n(e,t){return e==null||t==null?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function r(e){let r,a,o;e.length===2?(r=e===t||e===n?e:i,a=e,o=e):(r=t,a=(n,r)=>t(e(n),r),o=(t,n)=>e(t)-n);function s(e,t,n=0,i=e.length){if(n<i){if(r(t,t)!==0)return i;do{let r=n+i>>>1;a(e[r],t)<0?n=r+1:i=r}while(n<i)}return n}function c(e,t,n=0,i=e.length){if(n<i){if(r(t,t)!==0)return i;do{let r=n+i>>>1;a(e[r],t)<=0?n=r+1:i=r}while(n<i)}return n}function l(e,t,n=0,r=e.length){let i=s(e,t,n,r-1);return i>n&&o(e[i-1],t)>-o(e[i],t)?i-1:i}return{left:s,center:l,right:c}}function i(){return 0}var a=Math.sqrt(50),o=Math.sqrt(10),s=Math.sqrt(2);function c(e,t,n){let r=(t-e)/Math.max(0,n),i=Math.floor(Math.log10(r)),l=r/10**i,u=l>=a?10:l>=o?5:l>=s?2:1,d,f,p;return i<0?(p=10**-i/u,d=Math.round(e*p),f=Math.round(t*p),d/p<e&&++d,f/p>t&&--f,p=-p):(p=10**i*u,d=Math.round(e/p),f=Math.round(t/p),d*p<e&&++d,f*p>t&&--f),f<d&&.5<=n&&n<2?c(e,t,n*2):[d,f,p]}function l(e,t,n){if(t=+t,e=+e,n=+n,!(n>0))return[];if(e===t)return[e];let r=t<e,[i,a,o]=r?c(t,e,n):c(e,t,n);if(!(a>=i))return[];let s=a-i+1,l=Array(s);if(r){if(o<0)for(let e=0;e<s;++e)l[e]=(a-e)/-o;else for(let e=0;e<s;++e)l[e]=(a-e)*o}else if(o<0)for(let e=0;e<s;++e)l[e]=(i+e)/-o;else for(let e=0;e<s;++e)l[e]=(i+e)*o;return l}function u(e,t,n){return t=+t,e=+e,n=+n,c(e,t,n)[2]}function d(e,t,n){t=+t,e=+e,n=+n;let r=t<e,i=r?u(t,e,n):u(e,t,n);return(r?-1:1)*(i<0?1/-i:i)}function f(t){return Math.max(0,-e(Math.abs(t)))}function p(t,n){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(e(n)/3)))*3-e(Math.abs(t)))}function m(t,n){return t=Math.abs(t),n=Math.abs(n)-t,Math.max(0,e(n)-e(t))+1}export{d as a,t as c,u as i,p as n,l as o,f as r,r as s,m as t};
@@ -1 +0,0 @@
1
- import{X as e,Z as t}from"./cells-rA_jsZCj.js";import{t as n}from"./strings-B2vv-ENv.js";function r(r){return r.mimetype.startsWith(`application/vnd.marimo`)||r.mimetype===`text/html`?t(n.asString(r.data)):e(n.asString(r.data))}export{r as t};