@marimo-team/frontend 0.25.3-dev10 → 0.25.3-dev100
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.
- package/dist/assets/CellStatus-fK4n2NPc.js +1 -0
- package/dist/assets/{ConnectedDataExplorerComponent-t8fH_TNc.js → ConnectedDataExplorerComponent-Dft8R6l5.js} +1 -1
- package/dist/assets/{ErrorBoundary-B4n9EnHB.js → ErrorBoundary-CAEGdoFW.js} +2 -2
- package/dist/assets/JsonOutput-CyAKmZDD.js +11 -0
- package/dist/assets/{LazyAnyLanguageCodeMirror-CKcCbG2G.js → LazyAnyLanguageCodeMirror-BPYE76jR.js} +2 -2
- package/dist/assets/MarimoErrorOutput-CgZvP0p0.js +10 -0
- package/dist/assets/{RenderHTML-9bMgbYmo.js → RenderHTML-DQvxDDNS.js} +1 -1
- package/dist/assets/RunButton-BBDnDL6G.js +1 -0
- package/dist/assets/__vite-browser-external-8vDMR0Kk.js +1 -0
- package/dist/assets/__vite-browser-external-mKcnhO20.js +1 -0
- package/dist/assets/{add-cell-with-ai-f_MnLCwI.js → add-cell-with-ai-Clg5FELx.js} +7 -7
- package/dist/assets/{add-connection-dialog-CoE_PhuD.js → add-connection-dialog-BqdWmD-7.js} +2 -2
- package/dist/assets/{agent-panel-BWZz24jK.js → agent-panel-5RxG5Y82.js} +3 -3
- package/dist/assets/ai-model-dropdown-Bvl1ktQq.js +13 -0
- package/dist/assets/{alert-dialog-BaPGzeOK.js → alert-dialog-C-sWmKva.js} +1 -1
- package/dist/assets/any-language-editor-DUMe1UCk.js +1 -0
- package/dist/assets/{app-config-button-BhU0ulYs.js → app-config-button-0QTeQ2Mv.js} +1 -1
- package/dist/assets/arrays-0R2reF2y.js +1 -0
- package/dist/assets/{blob-iOBwGaP9.js → blob-5VcB8K_t.js} +1 -1
- package/dist/assets/{button-COI-NGrx.js → button-D8gVKwe-.js} +1 -1
- package/dist/assets/{cache-panel-DTY1dqvi.js → cache-panel-BV-c7ed0.js} +1 -1
- package/dist/assets/{capabilities-BJvf-MD4.js → capabilities-Pq1YNPlK.js} +1 -1
- package/dist/assets/cell-editor-Byw5y-oI.js +42 -0
- package/dist/assets/cell-link-C5yYyzuF.js +1 -0
- package/dist/assets/{cells-rA_jsZCj.js → cells-D_11MjVB.js} +60 -60
- package/dist/assets/{chat-display-BmEPmhDP.js → chat-display-BCR_ySiV.js} +1 -1
- package/dist/assets/chat-panel-RPRvBsaU.js +4 -0
- package/dist/assets/chat-ui-CGviVaRA.js +4 -0
- package/dist/assets/{circle-DXf-VWZG.js → circle-B6D_6D8w.js} +1 -1
- package/dist/assets/code-visibility-DYDagVy7.js +1 -0
- package/dist/assets/coerce-DWjFeXOY.js +1 -0
- package/dist/assets/column-preview-xe533-Cn.js +1 -0
- package/dist/assets/command-palette-BB9bWdWp.js +1 -0
- package/dist/assets/{common-lisZ0l6a.js → common-CaeItbcI.js} +1 -1
- package/dist/assets/components-CBE8cOLK.js +1 -0
- package/dist/assets/{components-CP_UoFtT.js → components-DCo7mAWO.js} +1 -1
- package/dist/assets/{components-Dvd1GnD6.js → components-G6frbw0c.js} +1 -1
- package/dist/assets/config-CD1IuZFJ.js +1 -0
- package/dist/assets/{config-DJLAC21v.js → config-DMz7oN0r.js} +1 -1
- package/dist/assets/config-DpY86_Yq.js +1 -0
- package/dist/assets/{copy-D8O_CYCG.js → copy-KlhazlhB.js} +1 -1
- package/dist/assets/{copy-icon-BIiRXh_3.js → copy-icon-8-a5vovc.js} +1 -1
- package/dist/assets/{createReducer-DgRODTW6.js → createReducer-CaI_Oa0v.js} +1 -1
- package/dist/assets/{datasource-Dr1xNKUn.js → datasource-deuXnlU-.js} +1 -1
- package/dist/assets/{dates-CfmdTL6B.js → dates-CQMwFko2.js} +1 -1
- package/dist/assets/{dependency-graph-panel-B0uP-_id.js → dependency-graph-panel-CIykLnJe.js} +2 -2
- package/dist/assets/{dist-iaThVDkA.js → dist-jlhMTKo_.js} +1 -1
- package/dist/assets/{documentation-panel-DVl_ebWy.js → documentation-panel-2PQ8kQLa.js} +1 -1
- package/dist/assets/{download-Bx55LMki.js → download-dK52bLxZ.js} +1 -1
- package/dist/assets/{dropdown-menu-C1rnl-0o.js → dropdown-menu-DS6umAnH.js} +1 -1
- package/dist/assets/edit-page-DrElzw10.js +9 -0
- package/dist/assets/{error-banner-Cd69vvyX.js → error-banner-B5kzVf_0.js} +1 -1
- package/dist/assets/{error-entries-DOWpdGvI.js → error-entries-3GVk2KjS.js} +1 -1
- package/dist/assets/{error-panel-DpbNKSLs.js → error-panel-CzDRGPeC.js} +1 -1
- package/dist/assets/{errors-DCrsa1nH.js → errors-CNsgAw6m.js} +1 -1
- package/dist/assets/{es-Cqst59WX.js → es-N9SHpmG7.js} +1 -1
- package/dist/assets/{feedback-button-B99ThNJW.js → feedback-button-C5NgWpFg.js} +2 -2
- package/dist/assets/feedback-button-CONwLFpw.js +1 -0
- package/dist/assets/file-explorer-panel-B50xDnTZ.js +1 -0
- package/dist/assets/{file-name-input-ChnBsDE_.js → file-name-input-DqwMSgGU.js} +1 -1
- package/dist/assets/{floating-outline-MYqQW4Vp.js → floating-outline-ChmAuvxz.js} +1 -1
- package/dist/assets/{formats-yZ06h1Pl.js → formats-zylfwejq.js} +1 -1
- package/dist/assets/{formatting-BqrP-n49.js → formatting-uom1es4b.js} +1 -1
- package/dist/assets/{fullscreen-B9tHcfpV.js → fullscreen-BWTs8pYZ.js} +1 -1
- package/dist/assets/{gallery-page-DSL0J4md.js → gallery-page-CiL8aMS1.js} +1 -1
- package/dist/assets/{ganttDiagram-EL5Y4UJY-2n7Ig5Jm.js → ganttDiagram-EL5Y4UJY-CYqkCfFG.js} +1 -1
- package/dist/assets/{glide-data-editor-B1MWlKeM.js → glide-data-editor-CqRclBkp.js} +2 -2
- package/dist/assets/{glide-utils-CIrAxdjv.js → glide-utils-HFqhvWHI.js} +2 -2
- package/dist/assets/home-page-BgZVl4dP.js +1 -0
- package/dist/assets/{hooks-BIogTGCr.js → hooks-DM5n7Osw.js} +1 -1
- package/dist/assets/{html-to-image-DK9Zl1lU.js → html-to-image-D_0rd3_B.js} +1 -1
- package/dist/assets/index-BnhSnwvB.css +2 -0
- package/dist/assets/index-EG2n8Oht.js +30 -0
- package/dist/assets/{input-BoBxR50a.js → input-DmHMEZGh.js} +1 -1
- package/dist/assets/kiosk-mode-DFS6HopF.js +1 -0
- package/dist/assets/layout-BpP8nTjb.js +9 -0
- package/dist/assets/linear-Bma8J3iM.js +1 -0
- package/dist/assets/links-DX2w97N9.js +1 -0
- package/dist/assets/{logs-panel-y0XnfulJ.js → logs-panel-B5eVAZtH.js} +1 -1
- package/dist/assets/{markdown-renderer-Q5AhbRU3.js → markdown-renderer-BWUzqkJM.js} +1 -1
- package/dist/assets/{menu-items-BrwnTgyK.js → menu-items-BgUyNUpu.js} +1 -1
- package/dist/assets/{mermaid-a3xYymTy.js → mermaid-BKXlWk4F.js} +2 -2
- package/dist/assets/{name-cell-input-BNOnF6-0.js → name-cell-input-DXW68gRW.js} +1 -1
- package/dist/assets/numbers-CsZVw3Dc.js +1 -0
- package/dist/assets/{objects-snlMn4yk.js → objects-rLPlQ3X_.js} +1 -1
- package/dist/assets/{once-Haz_uxEL.js → once-6KNTRW0u.js} +1 -1
- package/dist/assets/{outline-panel-Be7stWwv.js → outline-panel-DPxJhJ_A.js} +1 -1
- package/dist/assets/{package-data-dv4FBHxR.js → package-data-CKPmBDtg.js} +1 -1
- package/dist/assets/packages-panel-gBE2FWQr.js +1 -0
- package/dist/assets/{panel-accordion-state-GeMEdCPw.js → panel-accordion-state-CCF5Gxnc.js} +1 -1
- package/dist/assets/panels-Dr6qMCvU.js +105 -0
- package/dist/assets/precisionRound-BxlUs8G4.js +1 -0
- package/dist/assets/process-output-Cw9IDcKQ.js +1 -0
- package/dist/assets/{quadrantDiagram-AXDQQJYC-yBhCDI7E.js → quadrantDiagram-AXDQQJYC-D9KH5Zge.js} +1 -1
- package/dist/assets/react-vega-BTNeboR2.js +189 -0
- package/dist/assets/{readonly-code-display-YULOXf4h.js → readonly-code-display-DYcZQ28T.js} +1 -1
- package/dist/assets/{readonly-python-code-CadgXgRu.js → readonly-python-code-RFuQP50v.js} +1 -1
- package/dist/assets/{renderShortcut-BkVJQ_Zh.js → renderShortcut-rUwGqKgC.js} +1 -1
- package/dist/assets/{requests-lt0JK8Jt.js → requests-BIFR-h4M.js} +1 -1
- package/dist/assets/requests-DuLJN9Tf.js +1 -0
- package/dist/assets/{reveal-component-BVAR7ayZ.js → reveal-component-yRrDmCQz.js} +37 -37
- package/dist/assets/run-page-B69M4-zE.js +1 -0
- package/dist/assets/{runs-BLp5jezv.js → runs-C49hleBy.js} +1 -1
- package/dist/assets/{runtime-details-state-DuChzsA6.js → runtime-details-state-pobtu6TO.js} +1 -1
- package/dist/assets/{save-worker-BbUSwZRG.js → save-worker-pCkSHhuz.js} +1 -1
- package/dist/assets/{schemas-Dv42wLFq.js → schemas-ChRqMOTL.js} +1 -1
- package/dist/assets/scratchpad-panel-H44_pvb_.js +1 -0
- package/dist/assets/{scroll-to-bottom-button-1FyowpWV.js → scroll-to-bottom-button-CIkON2WJ.js} +1 -1
- package/dist/assets/{secrets-panel-Bctbtkrp.js → secrets-panel-bcfEKxRx.js} +1 -1
- package/dist/assets/{select-DTBn5eTb.js → select-3CVGlYrC.js} +1 -1
- package/dist/assets/{session-DqoWmb7X.js → session-CMLIzZKw.js} +1 -1
- package/dist/assets/session-panel-Bnd1iXkO.js +1 -0
- package/dist/assets/{snippets-panel-CQ1dn3lA.js → snippets-panel-DKApxKx9.js} +1 -1
- package/dist/assets/{spec-BfSBcO5B.js → spec-uCpVvaAR.js} +1 -1
- package/dist/assets/{state-uwRvJLb8.js → state-3mcyTS9q.js} +1 -1
- package/dist/assets/state-B_MCKzBL.js +1 -0
- package/dist/assets/state-Bl9BiY_s.js +3 -0
- package/dist/assets/{state-C3oDoyFe.js → state-C5WAeuTu.js} +1 -1
- package/dist/assets/{state-DxQnC_1I.js → state-Cv2JW3l9.js} +1 -1
- package/dist/assets/{state-Bfh_2SLl.js → state-Dv059B3A.js} +1 -1
- package/dist/assets/{strings-B2vv-ENv.js → strings-C25fhMR_.js} +1 -1
- package/dist/assets/{swiper-component-a07domrZ.js → swiper-component-CRGRy5_O.js} +1 -1
- package/dist/assets/{switch-CTaiAjrz.js → switch-DYjBfpNJ.js} +1 -1
- package/dist/assets/{tabs-BuQlZFbt.js → tabs-CY8E4r9U.js} +1 -1
- package/dist/assets/{terminal-Ck_vK-34.js → terminal-Ca-kubKb.js} +1 -1
- package/dist/assets/{time-MgToa8VM.js → time-DswSXBDk.js} +1 -1
- package/dist/assets/{toast-BGzLGnvw.js → toast-Gzxi-le_.js} +1 -1
- package/dist/assets/tooltip-Brya4Ghn.js +61 -0
- package/dist/assets/{tooltip-C9TuY18o.js → tooltip-CkGm8X7m.js} +1 -1
- package/dist/assets/tracing-Clwy4SlW.js +1 -0
- package/dist/assets/tracing-panel-BwjLG_aC.js +2 -0
- package/dist/assets/{tree-actions-DAd80MbP.js → tree-actions-BZNTQ12N.js} +1 -1
- package/dist/assets/{use-restore-focus-BxEGwIbk.js → use-restore-focus-DdS7Tl0F.js} +1 -1
- package/dist/assets/{useAddCell-DGstJK0S.js → useAddCell-Cjuqk2YR.js} +1 -1
- package/dist/assets/useAsyncData-qvoPYHtx.js +1 -0
- package/dist/assets/useBoolean-Dd2nWXFJ.js +1 -0
- package/dist/assets/useCellActionButton-MoWLvuGe.js +1 -0
- package/dist/assets/useDebounce-DwTQ_1Pu.js +1 -0
- package/dist/assets/{useDeepCompareMemoize-DFIVN9dn.js → useDeepCompareMemoize-B2DVK2De.js} +1 -1
- package/dist/assets/useDelayElapsed-BlsDT4TV.js +1 -0
- package/dist/assets/{useDeleteCell-DFBGlSQk.js → useDeleteCell-BC-MW7d1.js} +1 -1
- package/dist/assets/{useDependencyPanelTab-DydxsE5d.js → useDependencyPanelTab-CZU7i-B3.js} +1 -1
- package/dist/assets/{useEvent-Dfcbgjhg.js → useEvent-BDjgaBtz.js} +1 -1
- package/dist/assets/{useEventListener-D9cftcHj.js → useEventListener-CjDeLqFC.js} +1 -1
- package/dist/assets/{useIframeCapabilities-CwTkczVN.js → useIframeCapabilities-Czr9e4uG.js} +1 -1
- package/dist/assets/{useInstallPackage-iX1eufdl.js → useInstallPackage-wcDq9hYT.js} +1 -1
- package/dist/assets/{useInterval--x3s1VpI.js → useInterval-DJdQmXnq.js} +1 -1
- package/dist/assets/useNotebookActions-wFxVdRXQ.js +1 -0
- package/dist/assets/{useRunCells-BFjFX3hz.js → useRunCells-ByaWxoIt.js} +1 -1
- package/dist/assets/{useSplitCell-Tqv5pPtL.js → useSplitCell-YJIystwv.js} +1 -1
- package/dist/assets/useStateForKey-CGMJQT8x.js +1 -0
- package/dist/assets/{useTheme-COhSHkCj.js → useTheme-BAA27lh7.js} +1 -1
- package/dist/assets/{utils-CaQYvazl.js → utils-DfElfBpz.js} +1 -1
- package/dist/assets/vega-component-BeyxAJad.js +1 -0
- package/dist/assets/{vega-embed-container-DJPNkHPb.js → vega-embed-container-DtArSJz1.js} +1 -1
- package/dist/assets/vega-loader.browser-Bu25TKax.js +6 -0
- package/dist/assets/{worker-DTQ7oH2A.js → worker-bSCjCvwz.js} +1 -1
- package/dist/assets/{write-secret-modal-DzKAInL2.js → write-secret-modal-BEx-EUlh.js} +1 -1
- package/dist/assets/{xychartDiagram-S5SC5T6Z-KbGzG6-u.js → xychartDiagram-S5SC5T6Z-CeRnBS5e.js} +1 -1
- package/dist/index.html +80 -78
- package/package.json +7 -7
- package/src/__tests__/host-imports.test.ts +1 -0
- package/src/components/app-config/ai-config.tsx +7 -2
- package/src/components/chat/__tests__/message-queue.test.tsx +17 -0
- package/src/components/chat/acp/__tests__/state.test.ts +2 -2
- package/src/components/chat/acp/blocks.tsx +2 -2
- package/src/components/chat/chat-components.tsx +2 -0
- package/src/components/chat/chat-panel.tsx +9 -8
- package/src/components/chat/chat-utils.ts +4 -8
- package/src/components/data-table/__tests__/column-explorer.test.tsx +27 -1
- package/src/components/data-table/__tests__/columns.test.tsx +105 -0
- package/src/components/data-table/__tests__/context-menu-interaction.test.tsx +130 -0
- package/src/components/data-table/__tests__/date-popover.test.tsx +72 -0
- package/src/components/data-table/__tests__/export-actions.test.tsx +105 -0
- package/src/components/data-table/__tests__/search-highlight.test.tsx +109 -0
- package/src/components/data-table/__tests__/url-detector.test.tsx +74 -0
- package/src/components/data-table/cell-selection/feature.ts +2 -2
- package/src/components/data-table/cell-selection/types.ts +2 -2
- package/src/components/data-table/charts/__tests__/chart-panel.test.tsx +74 -1
- package/src/components/data-table/charts/__tests__/storage.test.ts +4 -1
- package/src/components/data-table/charts/charts.tsx +35 -25
- package/src/components/data-table/charts/storage.ts +16 -5
- package/src/components/data-table/column-explorer-panel/column-explorer.tsx +1 -1
- package/src/components/data-table/column-summary/column-summary.tsx +2 -4
- package/src/components/data-table/column-visibility-dropdown.tsx +8 -13
- package/src/components/data-table/columns.tsx +45 -46
- package/src/components/data-table/context-menu.tsx +36 -20
- package/src/components/data-table/data-table.tsx +7 -1
- package/src/components/data-table/date-popover.tsx +6 -4
- package/src/components/data-table/export-actions.tsx +76 -48
- package/src/components/data-table/row-viewer-panel/row-viewer.tsx +2 -2
- package/src/components/data-table/search-highlight.tsx +79 -0
- package/src/components/data-table/types.ts +1 -0
- package/src/components/data-table/url-detector.tsx +49 -9
- package/src/components/datasources/__tests__/column-actions.test.tsx +97 -0
- package/src/components/datasources/__tests__/column-preview.test.tsx +63 -2
- package/src/components/datasources/__tests__/table-list.test.tsx +118 -0
- package/src/components/datasources/column-preview.tsx +8 -2
- package/src/components/datasources/datasources.tsx +47 -35
- package/src/components/debugger/debugger-code.tsx +5 -0
- package/src/components/dependency-graph/panels.tsx +2 -1
- package/src/components/editor/SortableCell.tsx +1 -3
- package/src/components/editor/__tests__/dynamic-favicon.test.tsx +111 -18
- package/src/components/editor/actions/__tests__/pair-with-agent-modal.test.tsx +24 -0
- package/src/components/editor/actions/pair-with-agent-modal.tsx +18 -15
- package/src/components/editor/ai/add-cell-with-ai.tsx +3 -3
- package/src/components/editor/ai/ai-completion-editor.tsx +1 -0
- package/src/components/editor/alerts/startup-logs-alert.tsx +1 -0
- package/src/components/editor/cell/CreateCellButton.tsx +8 -10
- package/src/components/editor/cell/DeleteButton.tsx +1 -0
- package/src/components/editor/cell/__tests__/useShouldShowInterrupt.test.ts +39 -0
- package/src/components/editor/cell/code/__tests__/language-toggle.test.tsx +54 -0
- package/src/components/editor/cell/code/cell-editor.tsx +1 -1
- package/src/components/editor/cell/code/language-toggle.tsx +8 -7
- package/src/components/editor/cell/useShouldShowInterrupt.ts +2 -12
- package/src/components/editor/chrome/panels/__tests__/packages-panel.test.tsx +30 -1
- package/src/components/editor/chrome/panels/cache-panel.tsx +1 -0
- package/src/components/editor/chrome/panels/packages-panel.tsx +4 -7
- package/src/components/editor/chrome/wrapper/__tests__/attachment-status.test.tsx +12 -18
- package/src/components/editor/chrome/wrapper/__tests__/pending-ai-cells.test.tsx +58 -1
- package/src/components/editor/chrome/wrapper/footer-items/runtime-settings.tsx +1 -7
- package/src/components/editor/chrome/wrapper/pending-ai-cells.tsx +12 -2
- package/src/components/editor/chrome/wrapper/storage.ts +1 -1
- package/src/components/editor/connections/components.tsx +1 -1
- package/src/components/editor/controls/__tests__/command-palette.test.tsx +53 -0
- package/src/components/editor/controls/command-palette.tsx +22 -10
- package/src/components/editor/dynamic-favicon.tsx +21 -40
- package/src/components/editor/errors/__tests__/send-error-report-button.test.tsx +12 -23
- package/src/components/editor/file-tree/__tests__/file-explorer-interactions.test.tsx +6 -0
- package/src/components/editor/file-tree/__tests__/use-file-search.test.tsx +91 -0
- package/src/components/editor/file-tree/file-explorer.tsx +10 -5
- package/src/components/editor/file-tree/file-viewer.tsx +4 -2
- package/src/components/editor/file-tree/use-file-search.ts +35 -21
- package/src/components/editor/notebook-banner.tsx +1 -0
- package/src/components/editor/output/MarimoTracebackOutput.tsx +2 -2
- package/src/components/editor/output/ansi-reduce.ts +6 -0
- package/src/components/editor/output/console/ConsoleOutput.tsx +19 -25
- package/src/components/editor/package-alert.tsx +6 -4
- package/src/components/editor/renderers/vertical-layout/sidebar/toggle.tsx +7 -1
- package/src/components/home/components.tsx +17 -31
- package/src/components/icons/__tests__/large-spinner.test.tsx +39 -0
- package/src/components/icons/large-spinner.tsx +3 -14
- package/src/components/icons/spinner.tsx +1 -1
- package/src/components/mcp/mcp-status-indicator.tsx +1 -1
- package/src/components/pages/__tests__/home-page.test.tsx +116 -0
- package/src/components/pages/home-page.tsx +164 -91
- package/src/components/scratchpad/scratchpad.tsx +2 -2
- package/src/components/slides/reveal-component.tsx +4 -2
- package/src/components/slides/slide-cell-view.tsx +1 -1
- package/src/components/slides/slide-form.tsx +1 -0
- package/src/components/tracing/tracing.tsx +2 -2
- package/src/components/ui/alert-dialog.tsx +1 -1
- package/src/core/ai/context/providers/datasource.ts +6 -2
- package/src/core/attachments/state.ts +5 -8
- package/src/core/cells/__tests__/__snapshots__/cells.test.ts.snap +4 -0
- package/src/core/cells/__tests__/cell.test.ts +39 -0
- package/src/core/cells/__tests__/cells.test.ts +3 -1
- package/src/core/cells/__tests__/collapseConsoleOutputs.test.ts +54 -0
- package/src/core/cells/__tests__/notebook-outline.test.ts +113 -0
- package/src/core/cells/cell.ts +14 -3
- package/src/core/cells/cells.ts +3 -1
- package/src/core/cells/pending-delete-service.ts +2 -6
- package/src/core/cells/session.ts +1 -1
- package/src/core/cells/types.ts +10 -1
- package/src/core/codemirror/__tests__/setup.test.ts +1 -1
- package/src/core/codemirror/keymaps/vim.ts +2 -6
- package/src/core/codemirror/language/languages/markdown.ts +1 -1
- package/src/core/codemirror/language/languages/python.ts +3 -3
- package/src/core/codemirror/language/panel/panel.tsx +1 -0
- package/src/core/datasets/__tests__/data-source-discovery.test.ts +4 -4
- package/src/core/datasets/data-source-discovery.ts +4 -6
- package/src/core/document/__tests__/draft.test.ts +322 -0
- package/src/core/document/__tests__/fixtures.ts +92 -0
- package/src/core/document/__tests__/model.test.ts +483 -0
- package/src/core/document/__tests__/state.test.ts +446 -0
- package/src/core/document/__tests__/submission.test.ts +346 -0
- package/src/core/document/draft.ts +472 -0
- package/src/core/document/index.ts +10 -0
- package/src/core/document/model.ts +53 -0
- package/src/core/document/state.ts +401 -0
- package/src/core/document/sync.ts +359 -0
- package/src/core/edit-app.tsx +2 -2
- package/src/core/host/AGENTS.md +12 -2
- package/src/core/host/__tests__/attachments.test.ts +56 -0
- package/src/core/host/__tests__/document.test.ts +126 -0
- package/src/core/host/__tests__/fixtures.ts +41 -0
- package/src/core/host/__tests__/notebook-client.test.ts +570 -0
- package/src/core/host/connection.ts +42 -0
- package/src/core/host/notebook-client.ts +297 -0
- package/src/core/host/resources/attachments.ts +22 -0
- package/src/core/host/resources/document.ts +101 -0
- package/src/core/hotkeys/actions.ts +2 -4
- package/src/core/islands/__tests__/bootstrap.test.ts +0 -26
- package/src/core/islands/bootstrap.ts +0 -1
- package/src/core/kernel/__tests__/RuntimeState.test.ts +1 -1
- package/src/core/network/connection.ts +4 -2
- package/src/core/network/useConnectionNotice.ts +8 -2
- package/src/core/run-app.tsx +2 -2
- package/src/core/runtime/__tests__/createWsUrl.test.ts +77 -7
- package/src/core/runtime/__tests__/runtime.test.ts +18 -17
- package/src/core/runtime/runtime.ts +26 -30
- package/src/core/state/__tests__/jotai.test.tsx +108 -0
- package/src/core/state/jotai.ts +1 -1
- package/src/core/static/files.ts +2 -0
- package/src/core/wasm/bridge.ts +2 -10
- package/src/core/wasm/store.ts +3 -3
- package/src/core/wasm/worker/bootstrap.ts +1 -1
- package/src/core/wasm/worker/getMarimoWheel.ts +1 -1
- package/src/core/websocket/__tests__/{useMarimoKernelConnection.test.ts → connection-state.test.ts} +15 -29
- package/src/core/websocket/__tests__/useNotebookClient.hook.test.tsx +223 -0
- package/src/core/websocket/__tests__/useNotebookSession.hook.test.tsx +606 -0
- package/src/core/websocket/connection-state.ts +60 -0
- package/src/core/websocket/state.ts +7 -0
- package/src/core/websocket/transports/__tests__/notebook.test.ts +502 -0
- package/src/core/websocket/transports/notebook.ts +213 -0
- package/src/core/websocket/types.ts +9 -39
- package/src/core/websocket/useNotebookClient.ts +89 -0
- package/src/core/websocket/{useMarimoKernelConnection.tsx → useNotebookSession.tsx} +53 -233
- package/src/css/globals.css +5 -0
- package/src/hooks/__tests__/useAsyncData.test.tsx +148 -0
- package/src/hooks/__tests__/useDebounce.test.tsx +51 -0
- package/src/hooks/__tests__/useDeepCompareMemoize.test.tsx +39 -0
- package/src/hooks/__tests__/useDelayElapsed.test.tsx +28 -0
- package/src/hooks/__tests__/useInternalStateWithSync.test.tsx +20 -0
- package/src/hooks/__tests__/useScript.test.tsx +77 -0
- package/src/hooks/__tests__/useStateForKey.test.tsx +257 -0
- package/src/hooks/useAsyncData.ts +3 -3
- package/src/hooks/useDataSourceDiscovery.ts +6 -4
- package/src/hooks/useDebounce.ts +5 -8
- package/src/hooks/useDeepCompareMemoize.ts +1 -1
- package/src/hooks/useDelayElapsed.ts +14 -10
- package/src/hooks/useElapsedTime.ts +3 -3
- package/src/hooks/useInputHistory.ts +4 -7
- package/src/hooks/useInternalStateWithSync.ts +6 -6
- package/src/hooks/useResizeObserver.ts +4 -7
- package/src/hooks/useScript.ts +67 -70
- package/src/hooks/useStateForKey.ts +93 -0
- package/src/plugins/core/registerReactComponent.tsx +1 -1
- package/src/plugins/impl/CodeEditorPlugin.tsx +1 -1
- package/src/plugins/impl/DataTablePlugin.tsx +14 -15
- package/src/plugins/impl/DropdownPlugin.tsx +2 -6
- package/src/plugins/impl/FileBrowserPlugin.tsx +4 -16
- package/src/plugins/impl/FormPlugin.tsx +1 -1
- package/src/plugins/impl/RangeSliderPlugin.tsx +0 -1
- package/src/plugins/impl/RefreshPlugin.tsx +1 -0
- package/src/plugins/impl/SliderPlugin.tsx +6 -8
- package/src/plugins/impl/__tests__/DataTablePlugin.test.tsx +117 -1
- package/src/plugins/impl/__tests__/FileBrowserPlugin.test.tsx +45 -0
- package/src/plugins/impl/__tests__/SliderPlugin.test.tsx +24 -3
- package/src/plugins/impl/anywidget/__tests__/registry.test.ts +2 -0
- package/src/plugins/impl/anywidget/__tests__/widget-binding.test.ts +241 -2
- package/src/plugins/impl/anywidget/runtime.ts +21 -9
- package/src/plugins/impl/anywidget/widget-binding.ts +160 -82
- package/src/plugins/impl/chat/__tests__/chat-prompts.test.tsx +93 -0
- package/src/plugins/impl/chat/chat-ui.tsx +12 -10
- package/src/plugins/impl/code/any-language-editor.tsx +2 -2
- package/src/plugins/impl/data-editor/glide-data-editor.tsx +8 -5
- package/src/plugins/impl/data-editor/glide-utils.ts +3 -1
- package/src/plugins/impl/data-explorer/ConnectedDataExplorerComponent.tsx +1 -1
- package/src/plugins/impl/data-explorer/state/reducer.ts +1 -1
- package/src/plugins/impl/data-frames/DataFramePlugin.tsx +0 -1
- package/src/plugins/impl/mpl-interactive/MplInteractivePlugin.tsx +5 -3
- package/src/plugins/impl/panel/PanelPlugin.tsx +16 -17
- package/src/plugins/impl/panel/__tests__/utils.test.ts +39 -1
- package/src/plugins/impl/panel/utils.ts +17 -0
- package/src/plugins/impl/vega/make-selectable.ts +4 -7
- package/src/plugins/layout/RoutesPlugin.tsx +1 -1
- package/src/stories/__tests__/editor-story.test.tsx +33 -0
- package/src/stories/button.stories.tsx +1 -0
- package/src/stories/editor.stories.tsx +24 -17
- package/src/stories/form-wrapper.stories.tsx +2 -2
- package/src/stories/select.stories.tsx +2 -2
- package/src/stories/switchable-multi-select.stories.tsx +1 -1
- package/src/utils/__tests__/arrays.test.ts +35 -0
- package/src/utils/__tests__/batch-requests.test.ts +3 -3
- package/src/utils/__tests__/numbers.test.ts +48 -1
- package/src/utils/__tests__/objects.test.ts +21 -0
- package/src/utils/arrays.ts +10 -0
- package/src/utils/blob.ts +1 -1
- package/src/utils/numbers.ts +28 -17
- package/src/utils/objects.ts +3 -7
- package/src/utils/once.ts +19 -19
- package/src/utils/zod-utils.ts +1 -3
- package/dist/assets/CellStatus-nZpuDkm7.js +0 -1
- package/dist/assets/JsonOutput-BxB0NL8w.js +0 -11
- package/dist/assets/MarimoErrorOutput-BTy4MOzX.js +0 -10
- package/dist/assets/RunButton-CFQUNN5c.js +0 -1
- package/dist/assets/__vite-browser-external-CYO_P3S8.js +0 -1
- package/dist/assets/__vite-browser-external-FeDVGZU8.js +0 -1
- package/dist/assets/ai-model-dropdown-zm-2fXzf.js +0 -13
- package/dist/assets/any-language-editor-BLCAD3yx.js +0 -1
- package/dist/assets/arrays-BqUx5USx.js +0 -1
- package/dist/assets/cell-editor-CAj1UKxx.js +0 -21
- package/dist/assets/cell-link-1CynTVGQ.js +0 -1
- package/dist/assets/chat-panel-Ce2Xh7dM.js +0 -4
- package/dist/assets/chat-ui-DTy98rP3.js +0 -4
- package/dist/assets/circle-play-CYIb0qT6.js +0 -1
- package/dist/assets/code-visibility-B-_GvwR5.js +0 -1
- package/dist/assets/coerce-CpE6kUdX.js +0 -1
- package/dist/assets/column-preview-DU6dT80y.js +0 -1
- package/dist/assets/command-palette-BMqFKXVr.js +0 -1
- package/dist/assets/components-CXfO-F47.js +0 -1
- package/dist/assets/config-DX8Y2WbJ.js +0 -1
- package/dist/assets/config-VPSq73n8.js +0 -1
- package/dist/assets/edit-page-DlfCLUaq.js +0 -9
- package/dist/assets/feedback-button-DlqZkJwz.js +0 -1
- package/dist/assets/file-explorer-panel-Bo9eN3rW.js +0 -1
- package/dist/assets/home-page-KrhQ55Vg.js +0 -4
- package/dist/assets/index-6b4mf8Ai.css +0 -2
- package/dist/assets/index-B3fcrmuf.js +0 -30
- package/dist/assets/kiosk-mode-BZECfg9k.js +0 -1
- package/dist/assets/layout-DOpdUwym.js +0 -9
- package/dist/assets/linear-0eij_aAG.js +0 -1
- package/dist/assets/link-NuFVR7G9.js +0 -1
- package/dist/assets/links-DkkL9DVa.js +0 -1
- package/dist/assets/numbers-Mk3-CcoU.js +0 -1
- package/dist/assets/packages-panel-ClxOAEGy.js +0 -1
- package/dist/assets/panels-DfCmzLtT.js +0 -4
- package/dist/assets/precisionRound-Bq_nmf5u.js +0 -1
- package/dist/assets/process-output-DNFKMODr.js +0 -1
- package/dist/assets/react-vega-C3rYGtP6.js +0 -189
- package/dist/assets/requests-CgSY1X4a.js +0 -1
- package/dist/assets/run-page-Cxu1yV8Q.js +0 -1
- package/dist/assets/scratchpad-panel-By-ybhjg.js +0 -1
- package/dist/assets/session-panel-BmW6PH4z.js +0 -1
- package/dist/assets/state-BAJYRhmO.js +0 -1
- package/dist/assets/state-z3dlofZB.js +0 -3
- package/dist/assets/tooltip-mT3CGest.js +0 -61
- package/dist/assets/tracing-BARlJ_Dk.js +0 -1
- package/dist/assets/tracing-panel-dgnr2fIN.js +0 -2
- package/dist/assets/useAsyncData-C7aJJz0Y.js +0 -1
- package/dist/assets/useBoolean-BDD6_xQQ.js +0 -1
- package/dist/assets/useCellActionButton-DY9RlJTb.js +0 -1
- package/dist/assets/useDebounce-B_ccBZTp.js +0 -1
- package/dist/assets/useNotebookActions-DfvB7RD_.js +0 -1
- package/dist/assets/vega-component-CnadTgoE.js +0 -1
- package/dist/assets/vega-loader.browser-CLRkNgm7.js +0 -6
- package/dist/assets/ws-BXWY541V.js +0 -22
- package/src/core/host/__tests__/protocol.test.ts +0 -214
- package/src/core/host/protocol.ts +0 -1943
- package/src/core/state/__tests__/jotai.test.ts +0 -25
- package/src/core/websocket/__tests__/useMarimoKernelConnection.hook.test.tsx +0 -789
- package/src/core/websocket/__tests__/useWebSocket.test.ts +0 -49
- package/src/core/websocket/transports/__tests__/basic.test.ts +0 -275
- package/src/core/websocket/transports/__tests__/sse.test.ts +0 -338
- package/src/core/websocket/transports/__tests__/transport.test.ts +0 -308
- package/src/core/websocket/transports/__tests__/ws.test.ts +0 -125
- package/src/core/websocket/transports/basic.ts +0 -102
- package/src/core/websocket/transports/sse.ts +0 -308
- package/src/core/websocket/transports/transport.ts +0 -61
- package/src/core/websocket/transports/ws.ts +0 -98
- package/src/core/websocket/useWebSocket.tsx +0 -88
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{c as t,f as n,l as r,u as i}from"./useEvent-BDjgaBtz.js";import{t as a}from"./react-DVplv7_D.js";import{D as o,E as s,Hr as c,Jr as l,Ka as u,Kr as d,Mt as f,Xr as p,Zr as m,_ as h,ai as g,an as _,co as v,er as y,h as b,in as x,oo as ee,qa as S,qr as te,ra as C,ro as w,t as ne,xo as T,yt as re}from"./cells-D_11MjVB.js";import{C as E,N as D,v as O}from"./schemas-ChRqMOTL.js";import{t as k}from"./compiler-runtime-BrajqUja.js";import{C as A,n as j}from"./config-DpY86_Yq.js";import{g as M}from"./useEventListener-CjDeLqFC.js";import{t as N}from"./objects-rLPlQ3X_.js";import{n as P,r as F}from"./utils-B4K466FK.js";import{_ as I,g as L,h as R,m as ie,s as z,v as B}from"./session-CMLIzZKw.js";import{M as V,O as H}from"./config-CD1IuZFJ.js";import{t as U}from"./cn-ldLVeaqm.js";import{t as ae}from"./jsx-runtime-B74pBk57.js";import{Ft as oe,It as se,Q as ce}from"./JsonOutput-CyAKmZDD.js";import{a as le,c as ue,i as de,n as fe,r as pe,s as me,t as W}from"./select-3CVGlYrC.js";import{a as he,c as ge,d as G,o as _e,t as ve}from"./download-dK52bLxZ.js";import{t as ye}from"./switch-DYjBfpNJ.js";import{i as be,n as xe,r as Se,t as Ce}from"./tabs-CY8E4r9U.js";import{n as we,t as K}from"./button-D8gVKwe-.js";import{t as q}from"./createLucideIcon-DfJ2oMlA.js";import{a as Te,i as Ee,n as De,r as Oe,t as ke}from"./paths-bkIFVj8h.js";import{F as Ae,I as je,L as Me,c as Ne,t as Pe}from"./layout-BpP8nTjb.js";import{E as Fe,h as Ie,n as Le,r as Re}from"./ai-model-dropdown-Bvl1ktQq.js";import{t as ze}from"./check-BQNapYaf.js";import{o as Be,r as Ve}from"./useCellActionButton-MoWLvuGe.js";import{s as He}from"./tree-actions-BZNTQ12N.js";import{f as Ue,n as We}from"./markdown-renderer-BWUzqkJM.js";import{t as Ge}from"./code-BEiQP4pS.js";import{t as Ke}from"./eye-off-CxVozGAC.js";import{t as qe}from"./external-link-UrX9KO36.js";import{t as Je}from"./file-BPBVl9pl.js";import{t as Ye}from"./globe-UdPdIbF7.js";import{n as Xe,r as Ze,t as Qe}from"./youtube-CbJhsgLy.js";import{n as $e}from"./components-DCo7mAWO.js";import{t as et}from"./house-CpsMWsLL.js";import{t as tt}from"./image-wZvTj8WY.js";import{b as nt}from"./write-secret-modal-BEx-EUlh.js";import{t as rt}from"./spinner-DyNE-o8o.js";import{c as it,l as at,u as ot}from"./readonly-python-code-RFuQP50v.js";import{Qt as st,Xt as ct,Yt as lt,Zt as ut,tn as dt}from"./input-DmHMEZGh.js";import{t as ft}from"./settings-BpdQZRgT.js";import{t as pt}from"./square-BPmgQFnh.js";import{n as mt}from"./copy-KlhazlhB.js";import{t as ht}from"./use-toast-Wu434mLr.js";import{t as gt}from"./copy-icon-8-a5vovc.js";import{i as _t,r as vt,t as yt}from"./strings-C25fhMR_.js";import{r as J}from"./requests-BIFR-h4M.js";import{t as bt}from"./shell-Fj8a65ii.js";import{n as xt}from"./useAsyncData-qvoPYHtx.js";import{r as St}from"./useRunCells-ByaWxoIt.js";import{s as Ct}from"./useInstallPackage-wcDq9hYT.js";import{t as wt}from"./share-BZW3tzEX.js";import{n as Tt,r as Et}from"./markdown-export-DzhB1FrN.js";import{n as Dt,t as Ot}from"./alert-DTaqCu_d.js";import{a as kt}from"./cell-link-C5yYyzuF.js";import{t as At}from"./icons-CiZ_8zS-.js";import{n as jt}from"./feedback-button-C5NgWpFg.js";import{i as Mt,n as Nt,r as Pt}from"./add-connection-dialog-BqdWmD-7.js";import{t as Ft}from"./github-DQZhN3La.js";import{n as It}from"./marimo-icons-CqliHyTr.js";import{t as Lt}from"./links-DX2w97N9.js";import{r as Rt,t as zt}from"./hooks-DM5n7Osw.js";var Bt=q(`circle-chevron-down`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m16 10-4 4-4-4`,key:`894hmk`}]]),Vt=q(`circle-chevron-right`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m10 8 4 4-4 4`,key:`1wy4r4`}]]),Ht=q(`cloud-download`,[[`path`,{d:`M12 13v8l-4-4`,key:`1f5nwf`}],[`path`,{d:`m12 21 4-4`,key:`1lfcce`}],[`path`,{d:`M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284`,key:`ui1hmy`}]]),Ut=q(`command`,[[`path`,{d:`M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3`,key:`11bfej`}]]),Wt=q(`diamond-plus`,[[`path`,{d:`M12 8v8`,key:`napkw2`}],[`path`,{d:`M2.7 10.3a2.41 2.41 0 0 0 0 3.41l7.59 7.59a2.41 2.41 0 0 0 3.41 0l7.59-7.59a2.41 2.41 0 0 0 0-3.41L13.7 2.71a2.41 2.41 0 0 0-3.41 0z`,key:`1ey20j`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}]]),Gt=q(`fast-forward`,[[`path`,{d:`M12 6a2 2 0 0 1 3.414-1.414l6 6a2 2 0 0 1 0 2.828l-6 6A2 2 0 0 1 12 18z`,key:`b19h5q`}],[`path`,{d:`M2 6a2 2 0 0 1 3.414-1.414l6 6a2 2 0 0 1 0 2.828l-6 6A2 2 0 0 1 2 18z`,key:`h7h5ge`}]]),Kt=q(`files`,[[`path`,{d:`M15 2h-4a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V8`,key:`14sh0y`}],[`path`,{d:`M16.706 2.706A2.4 2.4 0 0 0 15 2v5a1 1 0 0 0 1 1h5a2.4 2.4 0 0 0-.706-1.706z`,key:`1970lx`}],[`path`,{d:`M5 7a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 1.732-1`,key:`l4dndm`}]]),qt=q(`list`,[[`path`,{d:`M3 5h.01`,key:`18ugdj`}],[`path`,{d:`M3 12h.01`,key:`nlz23k`}],[`path`,{d:`M3 19h.01`,key:`noohij`}],[`path`,{d:`M8 5h13`,key:`1pao27`}],[`path`,{d:`M8 12h13`,key:`1za7za`}],[`path`,{d:`M8 19h13`,key:`m83p4d`}]]),Jt=q(`message-circle-question-mark`,[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Yt=q(`notebook`,[[`path`,{d:`M2 6h4`,key:`aawbzj`}],[`path`,{d:`M2 10h4`,key:`l0bgd4`}],[`path`,{d:`M2 14h4`,key:`1gsvsf`}],[`path`,{d:`M2 18h4`,key:`1bu2t1`}],[`rect`,{width:`16`,height:`20`,x:`4`,y:`2`,rx:`2`,key:`1nb95v`}],[`path`,{d:`M16 2v20`,key:`rotuqe`}]]),Xt=q(`panel-left`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),Zt=q(`presentation`,[[`path`,{d:`M2 3h20`,key:`91anmk`}],[`path`,{d:`M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3`,key:`2k9sn8`}],[`path`,{d:`m7 21 5-5 5 5`,key:`bip4we`}]]),Qt=q(`share-2`,[[`circle`,{cx:`18`,cy:`5`,r:`3`,key:`gq8acd`}],[`circle`,{cx:`6`,cy:`12`,r:`3`,key:`w7nqdw`}],[`circle`,{cx:`18`,cy:`19`,r:`3`,key:`1xt0gg`}],[`line`,{x1:`8.59`,x2:`15.42`,y1:`13.51`,y2:`17.49`,key:`47mynk`}],[`line`,{x1:`15.41`,x2:`8.59`,y1:`6.51`,y2:`10.49`,key:`1n3mei`}]]),$t=q(`square-power`,[[`path`,{d:`M12 7v4`,key:`xawao1`}],[`path`,{d:`M7.998 9.003a5 5 0 1 0 8-.005`,key:`1pek45`}],[`rect`,{x:`3`,y:`3`,width:`18`,height:`18`,rx:`2`,key:`h1oib`}]]),en=q(`undo-2`,[[`path`,{d:`M9 14 4 9l5-5`,key:`102s5s`}],[`path`,{d:`M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11`,key:`f3b9sd`}]]),Y=e(a(),1),X=k();async function tn(e,t){let n=new Blob([t],{type:`text/html`});if(n.size>104857600)throw Error(`File is too large. Maximum size is 100 MB.`);let r=await fetch(`${F.molab}/api/artifacts/pending`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({fileName:e,fileSize:n.size})});if(!r.ok){let e=await r.json().catch(()=>null);throw Error(e?.error??(r.status===429?`Too many uploads, try again later`:`Failed to prepare the upload`))}let{presignedUrl:i,claimUrl:a}=await r.json();if(!(await fetch(i,{method:`PUT`,body:n})).ok)throw Error(`Failed to upload the notebook export`);return a}var Z=ae(),nn=e=>{let t=(0,X.c)(33),{onClose:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r={kind:`idle`},t[0]=r):r=t[0];let[i,a]=(0,Y.useState)(r),{exportAsHTML:o}=J(),s;t[1]===o?s=t[2]:(s=async()=>{a({kind:`publishing`});try{let{contents:e,filename:t}=await o({download:!1,includeCode:!0,files:Ne.INSTANCE.filenames(),layout:await Pe(),assetUrl:`https://cdn.jsdelivr.net/npm/@marimo-team/frontend@{version}/dist`}),n=await tn(t,e);window.open(n,`_blank`,`noopener,noreferrer`),a({kind:`staged`,claimUrl:n})}catch(e){let t=e;a({kind:`failed`,message:t instanceof Error?t.message:`Something went wrong`})}},t[1]=o,t[2]=s);let c=s;if(i.kind===`staged`){let e;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsxs)(st,{children:[(0,Z.jsx)(dt,{children:`Finish publishing`}),(0,Z.jsx)(ct,{children:`If the confirmation page didn't open in a new tab, open it below.`})]}),t[3]=e):e=t[3];let r;t[4]===n?r=t[5]:(r=(0,Z.jsx)(K,{"data-testid":`done-share-static-notebook-button`,variant:`secondary`,onClick:n,children:`Done`}),t[4]=n,t[5]=r);let a;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Z.jsx)(qe,{size:14,strokeWidth:1.5,className:`mr-2`}),t[6]=a):a=t[6];let o;t[7]===i.claimUrl?o=t[8]:(o=(0,Z.jsx)(K,{asChild:!0,variant:`default`,children:(0,Z.jsxs)(`a`,{"data-testid":`open-claim-page-link`,href:i.claimUrl,target:`_blank`,rel:`noopener noreferrer`,children:[a,`Open confirmation page`]})}),t[7]=i.claimUrl,t[8]=o);let s;return t[9]!==r||t[10]!==o?(s=(0,Z.jsxs)(lt,{className:`sm:max-w-[480px]`,children:[e,(0,Z.jsxs)(ut,{children:[r,o]})]}),t[9]=r,t[10]=o,t[11]=s):s=t[11],s}let l=i.kind===`publishing`,u;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,Z.jsx)(dt,{children:`Publish HTML to web`}),t[12]=u):u=t[12];let d;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,Z.jsxs)(st,{children:[u,(0,Z.jsxs)(ct,{children:[`Publish a static snapshot of this notebook to`,` `,(0,Z.jsx)(`a`,{href:F.molab,target:`_blank`,rel:`noopener noreferrer`,className:`underline`,children:`molab`}),`. Snapshots can be viewed by anyone on the internet.`]})]}),t[13]=d):d=t[13];let f;t[14]!==i.kind||t[15]!==i.message?(f=i.kind===`failed`&&(0,Z.jsxs)(`p`,{role:`alert`,className:`text-sm text-destructive`,"data-testid":`share-static-notebook-error`,children:[`Publish failed: `,i.message]}),t[14]=i.kind,t[15]=i.message,t[16]=f):f=t[16];let p;t[17]!==l||t[18]!==n?(p=(0,Z.jsx)(K,{"data-testid":`cancel-share-static-notebook-button`,variant:`secondary`,onClick:n,disabled:l,children:`Cancel`}),t[17]=l,t[18]=n,t[19]=p):p=t[19];let m;t[20]!==l||t[21]!==i.kind?(m=l?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(rt,{className:`mr-2`,size:`small`}),`Snapshotting notebook ...`]}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(qe,{size:14,strokeWidth:1.5,className:`mr-2`}),i.kind===`failed`?`Try again`:`Publish`]}),t[20]=l,t[21]=i.kind,t[22]=m):m=t[22];let h;t[23]!==c||t[24]!==l||t[25]!==m?(h=(0,Z.jsx)(K,{"data-testid":`share-static-notebook-button`,variant:`default`,disabled:l,onClick:c,children:m}),t[23]=c,t[24]=l,t[25]=m,t[26]=h):h=t[26];let g;t[27]!==p||t[28]!==h?(g=(0,Z.jsxs)(ut,{children:[p,h]}),t[27]=p,t[28]=h,t[29]=g):g=t[29];let _;return t[30]!==f||t[31]!==g?(_=(0,Z.jsxs)(lt,{className:`sm:max-w-[480px]`,children:[d,f,g]}),t[30]=f,t[31]=g,t[32]=_):_=t[32],_};function rn(){let e=document.getElementsByClassName(P.outputArea);for(let t of e){let e=t.getBoundingClientRect();if(e.bottom>0&&e.top<window.innerHeight){let e=T.findElement(t);if(!e){M.warn(`Could not find HTMLCellId for visible output area`,t);continue}return{cellId:T.parse(e.id)}}}return M.warn(`No visible output area found for scroll anchor`),null}function an(e){if(!e){M.warn(`No scroll anchor provided to restore scroll position`);return}let t=document.getElementById(T.create(e.cellId));if(!t){M.warn(`Could not find cell element to restore scroll position`,e.cellId);return}if(!t.querySelector(`.${P.outputArea}`)){M.warn(`Could not find output area to restore scroll position`,e.cellId);return}t.scrollIntoView({block:`start`,behavior:`auto`})}function on(){let e=(0,X.c)(2),t=i(B),n;return e[0]===t?n=e[1]:(n=()=>{let e=rn();t(t=>({mode:L(t.mode),cellAnchor:e?.cellId??null})),requestAnimationFrame(()=>{requestAnimationFrame(()=>{an(e)})})},e[0]=t,e[1]=n),n}var sn=n(!1),cn=()=>{let e=(0,X.c)(7),{selectedLayout:t}=at(),{setLayoutView:n}=it();if(V()&&!g(`wasm_layouts`))return null;let r;e[0]===n?r=e[1]:(r=e=>n(e),e[0]=n,e[1]=r);let i;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,Z.jsx)(me,{className:`min-w-[110px] border-border bg-background`,"data-testid":`layout-select`,children:(0,Z.jsx)(ue,{placeholder:`Select a view`})}),e[2]=i):i=e[2];let a;e[3]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Z.jsx)(fe,{children:(0,Z.jsxs)(pe,{children:[(0,Z.jsx)(le,{children:`View as`}),ot.map(fn)]})}),e[3]=a):a=e[3];let o;return e[4]!==t||e[5]!==r?(o=(0,Z.jsxs)(W,{"data-testid":`layout-select`,value:t,onValueChange:r,children:[i,a]}),e[4]=t,e[5]=r,e[6]=o):o=e[6],o};function ln(e){let t=un(e);return(0,Z.jsx)(t,{className:`h-4 w-4`})}function un(e){switch(e){case`vertical`:return qt;case`grid`:return Ze;case`slides`:return Zt;default:return _t(e),pt}}function dn(e){return yt.startCase(e)}function fn(e){return(0,Z.jsx)(de,{value:e,children:(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5 leading-5`,children:[ln(e),(0,Z.jsx)(`span`,{children:dn(e)})]})},e)}var pn=[`html`,`markdown`,`ipynb`,`pdf`,`script`,`png`],mn=[`pymdown`,`qmd`,`mystmd`,`mdx`],hn=[`topological`,`top-down`],gn=[`document`,`slides`],_n=[`source`,`flat`];function vn(e){return typeof e==`string`&&pn.some(t=>t===e)}var Q={html:{includeCode:!0},markdown:{flavor:null},ipynb:{sortMode:`topological`,includeOutputs:!1},pdf:{preset:`document`,includeInputs:!0,includeOutputs:!0,webpdf:!0},script:{type:`source`}};function $(e,t){return e.default(t).catch(t)}function yn(e){return D(e).optional().catch(void 0)}var bn=D({html:yn({includeCode:$(E(),Q.html.includeCode)}),markdown:yn({flavor:$(O(mn).nullable(),Q.markdown.flavor)}),ipynb:yn({sortMode:$(O(hn),Q.ipynb.sortMode),includeOutputs:$(E(),Q.ipynb.includeOutputs)}),pdf:yn({preset:$(O(gn),Q.pdf.preset),includeInputs:$(E(),Q.pdf.includeInputs),includeOutputs:$(E(),Q.pdf.includeOutputs),webpdf:$(E(),Q.pdf.webpdf)}),script:yn({type:$(O(_n),Q.script.type)})}).catch({});function xn(e,t){let n={...e},r=r=>{n[r]={...e[r],...t[r]}};for(let e of Object.keys(t))r(e);return n}function Sn(e){return xn(Q,bn.parse(e))}var Cn=m({toSerializable:e=>e,fromSerializable:Sn}),wn=H(`marimo:export:options:v1`,Q,Cn,{getOnInit:!0}),Tn=H(`marimo:export:last-format:v1`,`html`,m({toSerializable:e=>e,fromSerializable:e=>vn(e)?e:`html`}),{getOnInit:!0}),En={html:{requiresNamedNotebookOnServer:!0,requiresServerRuntime:!1,checksServerAvailability:!1},markdown:{requiresNamedNotebookOnServer:!0,requiresServerRuntime:!1,checksServerAvailability:!1},ipynb:{requiresNamedNotebookOnServer:!0,requiresServerRuntime:!0,checksServerAvailability:!0},pdf:{requiresNamedNotebookOnServer:!0,requiresServerRuntime:!0,checksServerAvailability:!0},script:{requiresNamedNotebookOnServer:!1,requiresServerRuntime:!1,checksServerAvailability:!1},png:{requiresNamedNotebookOnServer:!1,requiresServerRuntime:!1,checksServerAvailability:!1}};function Dn(e,t){return e===`wasm`&&t===`pdf`}function On({format:e,options:t,runtime:n,filename:r,availability:i}){let a=e===`script`&&t.script.type===`source`?{...En.script,requiresNamedNotebookOnServer:!0}:En[e],o=Dn(n,e);if(n===`wasm`&&a.requiresServerRuntime)return{available:o,reason:{type:`wasm-runtime`}};if(n===`server`&&a.requiresNamedNotebookOnServer&&!r)return{available:!1,reason:{type:`notebook-must-be-named`}};if(n===`wasm`||!a.checksServerAvailability)return{available:!0};if(i.status===`pending`)return{available:!1,reason:{type:`checking-requirements`}};if(i.status===`error`||!i.data)return{available:!0,availabilityCheckFailed:!0};let s=i.data.formats.find(t=>t.format===e);return s?s.dependenciesAvailable?{available:!0}:s.missingPackages.length>0?{available:!1,reason:{type:`missing-packages`,packages:s.missingPackages}}:s.missingSetup.length>0?{available:!1,reason:{type:`missing-setup`,requirements:s.missingSetup}}:{available:!0,availabilityCheckFailed:!0}:{available:!0,availabilityCheckFailed:!0}}function kn(e,t){return e.map(e=>({value:e,...t[e]}))}var An=kn([`automatic`,...mn],{automatic:{label:`Automatic`,description:`Chooses a format from the notebook filename. Defaults to Markdown (.md).`},pymdown:{label:`Markdown (.md)`,description:`Creates a .md file with Python code blocks.`},qmd:{label:`Quarto (.qmd)`,description:`Creates a .qmd file for Quarto.`},mystmd:{label:`MyST (.myst.md)`,description:`Creates a .myst.md file for MyST.`},mdx:{label:`MDX (.mdx)`,description:`Creates a .mdx file for MDX.`}}),jn=kn(hn,{"top-down":{label:`Top to bottom`,description:`Keeps cells in the same order as this notebook.`},topological:{label:`Dependency order`,description:`Reorders cells so each cell appears after the cells it depends on.`}}),Mn=kn(gn,{document:{label:`Document`,description:`Creates pages for reading or printing.`},slides:{label:`Slides`,description:`Creates presentation slides from the notebook.`}}),Nn=kn([`browser`,`latex`],{browser:{label:`Browser`,description:`Uses browser rendering to preserve the notebook's visual output.`},latex:{label:`LaTeX first`,description:`Uses Pandoc and TeX when available, then falls back to browser rendering.`}}),Pn=kn(_n,{source:{label:`Notebook source`,description:`Downloads the saved notebook source for continued editing in marimo.`},flat:{label:`Flat script`,description:`Reorders cells so the Python script runs from top to bottom.`}}),Fn={html:{label:`HTML`,actionLabel:`Export HTML`,description:`Save the current notebook as an HTML page.`,Icon:Ye,Options:In},markdown:{label:`Markdown`,actionLabel:`Export Markdown`,description:`Save code and text in a Markdown-based file. Cell outputs are not included.`,Icon:Oe,Options:Ln},ipynb:{label:`Jupyter`,actionLabel:`Export Jupyter notebook`,description:`Open the notebook in Jupyter and other compatible tools.`,Icon:Yt,Options:Rn},pdf:{label:`PDF`,actionLabel:`Export PDF`,description:`Save the notebook as a PDF for printing or sharing.`,Icon:Je,Options:zn},script:{label:`Python`,actionLabel:`Export flat script`,description:`Save the notebook as a Python file.`,Icon:Ge,Options:Bn},png:{label:`PNG`,actionLabel:`Export PNG`,description:`Capture the current app view as an image.`,Icon:tt,Options:Vn}};function In(e){let t=(0,X.c)(7),{options:n,updateOptions:r,disabled:i}=e,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a={checked:`Includes code cells in the webpage.`,unchecked:`Leaves code cells out of the webpage.`},t[0]=a):a=t[0];let o;t[1]===r?o=t[2]:(o=e=>r(`html`,{includeCode:e}),t[1]=r,t[2]=o);let s;return t[3]!==i||t[4]!==n.html.includeCode||t[5]!==o?(s=(0,Z.jsx)(Hn,{children:(0,Z.jsx)(Un,{label:`Include code`,descriptions:a,checked:n.html.includeCode,disabled:i,onCheckedChange:o})}),t[3]=i,t[4]=n.html.includeCode,t[5]=o,t[6]=s):s=t[6],s}function Ln(e){let t=(0,X.c)(6),{options:n,updateOptions:r,disabled:i}=e,a=n.markdown.flavor??`automatic`,o;t[0]===r?o=t[1]:(o=e=>r(`markdown`,{flavor:e===`automatic`?null:e}),t[0]=r,t[1]=o);let s;return t[2]!==i||t[3]!==a||t[4]!==o?(s=(0,Z.jsx)(Hn,{children:(0,Z.jsx)(Kn,{label:`Format`,value:a,disabled:i,onValueChange:o,options:An})}),t[2]=i,t[3]=a,t[4]=o,t[5]=s):s=t[5],s}function Rn(e){let t=(0,X.c)(16),{options:n,updateOptions:r,disabled:i}=e,a;t[0]===r?a=t[1]:(a=e=>r(`ipynb`,{sortMode:e}),t[0]=r,t[1]=a);let o;t[2]!==i||t[3]!==n.ipynb.sortMode||t[4]!==a?(o=(0,Z.jsx)(Wn,{label:`Cell order`,value:n.ipynb.sortMode,disabled:i,onValueChange:a,options:jn}),t[2]=i,t[3]=n.ipynb.sortMode,t[4]=a,t[5]=o):o=t[5];let s;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(s={checked:`Keeps the outputs currently shown in the notebook.`,unchecked:`Leaves cell outputs out of the Jupyter notebook.`},t[6]=s):s=t[6];let c;t[7]===r?c=t[8]:(c=e=>r(`ipynb`,{includeOutputs:e}),t[7]=r,t[8]=c);let l;t[9]!==i||t[10]!==n.ipynb.includeOutputs||t[11]!==c?(l=(0,Z.jsx)(Un,{label:`Include outputs`,descriptions:s,checked:n.ipynb.includeOutputs,disabled:i,onCheckedChange:c}),t[9]=i,t[10]=n.ipynb.includeOutputs,t[11]=c,t[12]=l):l=t[12];let u;return t[13]!==o||t[14]!==l?(u=(0,Z.jsxs)(Hn,{children:[o,l]}),t[13]=o,t[14]=l,t[15]=u):u=t[15],u}function zn(e){let t=(0,X.c)(30),{options:n,updateOptions:r,disabled:i}=e,a;t[0]===r?a=t[1]:(a=e=>r(`pdf`,{preset:e}),t[0]=r,t[1]=a);let o;t[2]!==i||t[3]!==n.pdf.preset||t[4]!==a?(o=(0,Z.jsx)(Wn,{label:`Layout`,value:n.pdf.preset,disabled:i,onValueChange:a,options:Mn}),t[2]=i,t[3]=n.pdf.preset,t[4]=a,t[5]=o):o=t[5];let s;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(s={checked:`Includes code cells in the PDF.`,unchecked:`Leaves code cells out of the PDF.`},t[6]=s):s=t[6];let c;t[7]===r?c=t[8]:(c=e=>r(`pdf`,{includeInputs:e}),t[7]=r,t[8]=c);let l;t[9]!==i||t[10]!==n.pdf.includeInputs||t[11]!==c?(l=(0,Z.jsx)(Un,{label:`Include code`,descriptions:s,checked:n.pdf.includeInputs,disabled:i,onCheckedChange:c}),t[9]=i,t[10]=n.pdf.includeInputs,t[11]=c,t[12]=l):l=t[12];let u;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(u={checked:`Keeps the outputs currently shown in the notebook.`,unchecked:`Leaves cell outputs out of the PDF.`},t[13]=u):u=t[13];let d;t[14]===r?d=t[15]:(d=e=>r(`pdf`,{includeOutputs:e}),t[14]=r,t[15]=d);let f;t[16]!==i||t[17]!==n.pdf.includeOutputs||t[18]!==d?(f=(0,Z.jsx)(Un,{label:`Include outputs`,descriptions:u,checked:n.pdf.includeOutputs,disabled:i,onCheckedChange:d}),t[16]=i,t[17]=n.pdf.includeOutputs,t[18]=d,t[19]=f):f=t[19];let p;t[20]!==i||t[21]!==n.pdf.preset||t[22]!==n.pdf.webpdf||t[23]!==r?(p=n.pdf.preset===`document`?(0,Z.jsx)(Wn,{label:`Method`,value:n.pdf.webpdf?`browser`:`latex`,disabled:i,onValueChange:e=>r(`pdf`,{webpdf:e===`browser`}),options:Nn}):null,t[20]=i,t[21]=n.pdf.preset,t[22]=n.pdf.webpdf,t[23]=r,t[24]=p):p=t[24];let m;return t[25]!==o||t[26]!==l||t[27]!==f||t[28]!==p?(m=(0,Z.jsxs)(Hn,{children:[o,l,f,p]}),t[25]=o,t[26]=l,t[27]=f,t[28]=p,t[29]=m):m=t[29],m}function Bn(e){let t=(0,X.c)(6),{options:n,updateOptions:r,disabled:i}=e,a;t[0]===r?a=t[1]:(a=e=>r(`script`,{type:e}),t[0]=r,t[1]=a);let o;return t[2]!==i||t[3]!==n.script.type||t[4]!==a?(o=(0,Z.jsx)(Hn,{children:(0,Z.jsx)(Wn,{label:`Format`,value:n.script.type,disabled:i,onValueChange:a,options:Pn})}),t[2]=i,t[3]=n.script.type,t[4]=a,t[5]=o):o=t[5],o}function Vn(){return null}function Hn(e){let t=(0,X.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,Z.jsx)(`div`,{className:`divide-y rounded-md border`,children:n}),t[0]=n,t[1]=r),r}function Un(e){let t=(0,X.c)(26),{label:n,descriptions:r,descriptionOverride:i,checked:a,disabled:o,onCheckedChange:s}=e,c=(0,Y.useId)(),l=`${c}-description`,u=i??(a?r.checked:r.unchecked),d;t[0]===i?d=t[1]:(d=i?[i]:[],t[0]=i,t[1]=d);let f;t[2]!==r.checked||t[3]!==r.unchecked||t[4]!==d?(f=[r.checked,r.unchecked,...d],t[2]=r.checked,t[3]=r.unchecked,t[4]=d,t[5]=f):f=t[5];let p=f,m;t[6]!==c||t[7]!==n?(m=(0,Z.jsx)(`label`,{htmlFor:c,className:`text-sm font-medium leading-5`,children:n}),t[6]=c,t[7]=n,t[8]=m):m=t[8];let h;t[9]!==u||t[10]!==l||t[11]!==p?(h=(0,Z.jsx)(Yn,{id:l,description:u,possibleDescriptions:p}),t[9]=u,t[10]=l,t[11]=p,t[12]=h):h=t[12];let g;t[13]!==m||t[14]!==h?(g=(0,Z.jsxs)(`div`,{className:`min-w-0`,children:[m,h]}),t[13]=m,t[14]=h,t[15]=g):g=t[15];let _;t[16]!==a||t[17]!==l||t[18]!==o||t[19]!==c||t[20]!==n||t[21]!==s?(_=(0,Z.jsx)(ye,{id:c,size:`sm`,checked:a,disabled:o,onCheckedChange:s,"aria-label":n,"aria-describedby":l}),t[16]=a,t[17]=l,t[18]=o,t[19]=c,t[20]=n,t[21]=s,t[22]=_):_=t[22];let v;return t[23]!==g||t[24]!==_?(v=(0,Z.jsxs)(`div`,{className:`flex min-h-14 items-center justify-between gap-4 px-3 py-2`,children:[g,_]}),t[23]=g,t[24]=_,t[25]=v):v=t[25],v}function Wn(e){let t=(0,X.c)(31),{label:n,value:r,disabled:i,onValueChange:a,options:o}=e,s=(0,Y.useId)(),c=`${s}-description`,l;t[0]!==o||t[1]!==r?(l=o.find(e=>e.value===r)?.description,t[0]=o,t[1]=r,t[2]=l):l=t[2];let u=l,d;t[3]===n?d=t[4]:(d=(0,Z.jsx)(`div`,{className:`text-sm font-medium leading-5`,children:n}),t[3]=n,t[4]=d);let f=u??``,p;t[5]===o?p=t[6]:(p=o.map(Gn),t[5]=o,t[6]=p);let m;t[7]!==c||t[8]!==f||t[9]!==p?(m=(0,Z.jsx)(Yn,{id:c,description:f,possibleDescriptions:p}),t[7]=c,t[8]=f,t[9]=p,t[10]=m):m=t[10];let h;t[11]!==d||t[12]!==m?(h=(0,Z.jsxs)(`div`,{className:`min-w-0`,children:[d,m]}),t[11]=d,t[12]=m,t[13]=h):h=t[13];let g;t[14]===a?g=t[15]:(g=e=>a(e),t[14]=a,t[15]=g);let v;if(t[16]!==s||t[17]!==o){let e;t[19]===s?e=t[20]:(e=(e,t)=>{let n=`${s}-${t}`;return(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(_,{id:n,value:e.value}),(0,Z.jsx)(`label`,{htmlFor:n,className:`text-sm`,children:e.label})]},e.value)},t[19]=s,t[20]=e),v=o.map(e),t[16]=s,t[17]=o,t[18]=v}else v=t[18];let y;t[21]!==c||t[22]!==i||t[23]!==n||t[24]!==g||t[25]!==v||t[26]!==r?(y=(0,Z.jsx)(x,{value:r,onValueChange:g,className:`flex shrink-0 flex-wrap gap-x-5 gap-y-2 sm:justify-end`,"aria-label":n,"aria-describedby":c,disabled:i,children:v}),t[21]=c,t[22]=i,t[23]=n,t[24]=g,t[25]=v,t[26]=r,t[27]=y):y=t[27];let b;return t[28]!==h||t[29]!==y?(b=(0,Z.jsxs)(`div`,{className:`flex min-h-14 flex-col items-stretch gap-2 px-3 py-2 sm:flex-row sm:items-center sm:justify-between sm:gap-4`,children:[h,y]}),t[28]=h,t[29]=y,t[30]=b):b=t[30],b}function Gn(e){return e.description}function Kn(e){let t=(0,X.c)(34),{label:n,value:r,disabled:i,onValueChange:a,options:o}=e,s=(0,Y.useId)(),c=`${s}-description`,l;t[0]!==o||t[1]!==r?(l=o.find(e=>e.value===r)?.description,t[0]=o,t[1]=r,t[2]=l):l=t[2];let u=l,d;t[3]!==s||t[4]!==n?(d=(0,Z.jsx)(`label`,{htmlFor:s,className:`text-sm font-medium leading-5`,children:n}),t[3]=s,t[4]=n,t[5]=d):d=t[5];let f=u??``,p;t[6]===o?p=t[7]:(p=o.map(Jn),t[6]=o,t[7]=p);let m;t[8]!==c||t[9]!==f||t[10]!==p?(m=(0,Z.jsx)(Yn,{id:c,description:f,possibleDescriptions:p}),t[8]=c,t[9]=f,t[10]=p,t[11]=m):m=t[11];let h;t[12]!==d||t[13]!==m?(h=(0,Z.jsxs)(`div`,{className:`min-w-0`,children:[d,m]}),t[12]=d,t[13]=m,t[14]=h):h=t[14];let g;t[15]===a?g=t[16]:(g=e=>a(e),t[15]=a,t[16]=g);let _;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,Z.jsx)(ue,{}),t[17]=_):_=t[17];let v;t[18]!==c||t[19]!==s?(v=(0,Z.jsx)(me,{id:s,"aria-describedby":c,className:`h-8 w-full shrink-0 sm:w-44`,children:_}),t[18]=c,t[19]=s,t[20]=v):v=t[20];let y;t[21]===o?y=t[22]:(y=o.map(qn),t[21]=o,t[22]=y);let b;t[23]===y?b=t[24]:(b=(0,Z.jsx)(fe,{children:y}),t[23]=y,t[24]=b);let x;t[25]!==i||t[26]!==b||t[27]!==g||t[28]!==v||t[29]!==r?(x=(0,Z.jsxs)(W,{value:r,disabled:i,onValueChange:g,children:[v,b]}),t[25]=i,t[26]=b,t[27]=g,t[28]=v,t[29]=r,t[30]=x):x=t[30];let ee;return t[31]!==x||t[32]!==h?(ee=(0,Z.jsxs)(`div`,{className:`flex min-h-14 flex-col items-stretch gap-2 px-3 py-2 sm:flex-row sm:items-center sm:justify-between sm:gap-4`,children:[h,x]}),t[31]=x,t[32]=h,t[33]=ee):ee=t[33],ee}function qn(e){return(0,Z.jsx)(de,{value:e.value,children:e.label},e.value)}function Jn(e){return e.description}function Yn(e){let t=(0,X.c)(15),{id:n,description:r,possibleDescriptions:i}=e,a;t[0]===i?a=t[1]:(a=new Set(i),t[0]=i,t[1]=a);let o;t[2]===a?o=t[3]:(o=[...a],t[2]=a,t[3]=o);let s;t[4]!==r||t[5]!==o?(s=o.filter(e=>e!==r),t[4]=r,t[5]=o,t[6]=s):s=t[6];let c=s,l;t[7]!==r||t[8]!==n?(l=(0,Z.jsx)(`p`,{id:n,"aria-live":`polite`,className:`col-start-1 row-start-1`,children:r}),t[7]=r,t[8]=n,t[9]=l):l=t[9];let u;t[10]===c?u=t[11]:(u=c.map(Xn),t[10]=c,t[11]=u);let d;return t[12]!==l||t[13]!==u?(d=(0,Z.jsxs)(`div`,{className:`mt-0.5 grid text-xs leading-4 text-muted-foreground`,children:[l,u]}),t[12]=l,t[13]=u,t[14]=d):d=t[14],d}function Xn(e){return(0,Z.jsx)(`p`,{"aria-hidden":!0,className:`invisible col-start-1 row-start-1`,children:e},e)}var Zn={"playwright-chromium":{description:`PDF export requires Playwright Chromium.`}};function Qn(e){let t=(0,X.c)(10),{status:n}=e;if(n.available&&!n.availabilityCheckFailed)return null;if(n.reason?.type===`checking-requirements`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsxs)(`span`,{className:`ml-auto flex shrink-0`,children:[(0,Z.jsx)(rt,{size:`small`,className:`size-3`}),(0,Z.jsx)(`span`,{className:`sr-only`,children:`Checking requirements`})]}),t[0]=e):e=t[0],e}let r=n.availabilityCheckFailed?`Requirements unknown`:`Unavailable`,i=n.availabilityCheckFailed?`text-muted-foreground`:`text-(--yellow-11)`,a;t[1]===i?a=t[2]:(a=U(`size-3`,i),t[1]=i,t[2]=a);let o;t[3]===a?o=t[4]:(o=(0,Z.jsx)(v,{className:a}),t[3]=a,t[4]=o);let s;t[5]===r?s=t[6]:(s=(0,Z.jsx)(`span`,{className:`sr-only`,children:r}),t[5]=r,t[6]=s);let c;return t[7]!==o||t[8]!==s?(c=(0,Z.jsxs)(`span`,{className:`ml-auto flex shrink-0`,children:[o,s]}),t[7]=o,t[8]=s,t[9]=c):c=t[9],c}function $n(e){let t=(0,X.c)(7),{format:n,formatLabel:r,status:i,onInstall:a,isInstalling:o}=e,s=o!==void 0&&o;if(i.availabilityCheckFailed){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(`div`,{className:`mb-2.5`,children:(0,Z.jsx)(er,{children:`Couldn't check whether this export is available. You can still try it.`})}),t[0]=e):e=t[0],e}if(!i.reason)return null;let c;return t[1]!==n||t[2]!==r||t[3]!==s||t[4]!==a||t[5]!==i.reason?(c=(0,Z.jsx)(`div`,{className:`mb-2.5`,children:(0,Z.jsx)(tr,{format:n,formatLabel:r,reason:i.reason,onInstall:a,isInstalling:s})}),t[1]=n,t[2]=r,t[3]=s,t[4]=a,t[5]=i.reason,t[6]=c):c=t[6],c}function er(e){let t=(0,X.c)(9),{children:n,onInstall:r,isInstalling:i}=e,a=i!==void 0&&i,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Z.jsx)(v,{className:`size-4 shrink-0`}),t[0]=o):o=t[0];let s;t[1]===n?s=t[2]:(s=(0,Z.jsx)(`span`,{className:`min-w-0 flex-1`,children:n}),t[1]=n,t[2]=s);let c;t[3]!==a||t[4]!==r?(c=r?(0,Z.jsxs)(K,{type:`button`,variant:`outline`,size:`xs`,className:`shrink-0 border-input bg-background text-foreground hover:border-input hover:bg-muted hover:text-foreground`,disabled:a,"aria-busy":a,onClick:r,children:[a?(0,Z.jsx)(rt,{size:`small`,className:`mr-1.5 size-3.5`}):(0,Z.jsx)(Ht,{className:`mr-1.5 size-3.5`}),`Install`]}):null,t[3]=a,t[4]=r,t[5]=c):c=t[5];let l;return t[6]!==s||t[7]!==c?(l=(0,Z.jsxs)(Ot,{variant:`warning`,className:`flex items-center gap-2.5 px-3 py-2 text-(--yellow-12) has-[svg]:pl-3 [&>svg]:static [&>svg+div]:translate-y-0`,children:[o,(0,Z.jsxs)(Dt,{className:`flex min-w-0 flex-1 items-center gap-3 text-sm leading-5`,children:[s,c]})]}),t[6]=s,t[7]=c,t[8]=l):l=t[8],l}function tr(e){let t=(0,X.c)(22),{format:n,formatLabel:r,reason:i,onInstall:a,isInstalling:o}=e;switch(i.type){case`checking-requirements`:{let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(rt,{className:`size-4 shrink-0`,size:`small`}),t[0]=e):e=t[0];let n;return t[1]===r?n=t[2]:(n=(0,Z.jsxs)(Ot,{role:`status`,variant:`info`,className:`flex items-center gap-2.5 p-3 has-[svg]:pl-3 [&>svg]:static [&>svg+div]:translate-y-0`,children:[e,(0,Z.jsxs)(Dt,{className:`min-w-0 flex-1 text-sm leading-5`,children:[`Checking `,r,` requirements…`]})]}),t[1]=r,t[2]=n),n}case`notebook-must-be-named`:{let e;return t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(er,{children:`Name and save this notebook before exporting.`}),t[3]=e):e=t[3],e}case`missing-packages`:{let e;t[4]===i.packages?e=t[5]:(e=i.packages.join(`, `),t[4]=i.packages,t[5]=e);let n;t[6]===e?n=t[7]:(n=(0,Z.jsx)(`code`,{className:`break-words font-mono`,children:e}),t[6]=e,t[7]=n);let s;return t[8]!==r||t[9]!==o||t[10]!==a||t[11]!==n?(s=(0,Z.jsxs)(er,{onInstall:a,isInstalling:o,children:[r,` export requires`,` `,n,`.`]}),t[8]=r,t[9]=o,t[10]=a,t[11]=n,t[12]=s):s=t[12],s}case`missing-setup`:{let e;t[13]!==a||t[14]!==i.requirements?(e=a?i.requirements.map(rr).join(` `):(0,Z.jsx)(`span`,{className:`block min-w-0`,children:i.requirements.map(nr)}),t[13]=a,t[14]=i.requirements,t[15]=e):e=t[15];let n;return t[16]!==o||t[17]!==a||t[18]!==e?(n=(0,Z.jsx)(er,{onInstall:a,isInstalling:o,children:e}),t[16]=o,t[17]=a,t[18]=e,t[19]=n):n=t[19],n}case`wasm-runtime`:{let e=n===`pdf`?`Use your browser's print dialog to save the current app view as a PDF.`:`Open this notebook in a local marimo session to use this export.`,r;return t[20]===e?r=t[21]:(r=(0,Z.jsx)(er,{children:e}),t[20]=e,t[21]=r),r}default:vt(i)}}function nr(e){let t=Zn[e.name];return(0,Z.jsxs)(`span`,{className:`block`,children:[t.description,(0,Z.jsx)(`code`,{className:`mt-1 block break-all font-mono`,children:e.command})]},e.name)}function rr(e){return Zn[e.name].description}function ir(e){return e.endsWith(`.myst.md`)?`mystmd`:e.endsWith(`.qmd`)?`qmd`:e.endsWith(`.mdx`)?`mdx`:`pymdown`}function ar(e,t){let n=t??ir(e),r=Tt[n],i=Et.find(t=>e.endsWith(t)),a=G.withoutExtension(e);i&&(a=e.slice(0,-i.length));let o=`${a}.${r}`;return o===e?`${e.slice(0,-(r.length+1))}.export.${r}`:o}function or(e){return Object.entries(e).flatMap(([e,t])=>t===null?[]:t===!0?[`--${e}`]:t===!1?[`--no-${e}`]:[`--${e}=${t}`])}function sr(e){return e.preset===`document`?e.webpdf:null}var cr={html:{subcommand:`html`,flags:({html:e})=>({"include-code":e.includeCode}),outputFilename:e=>G.toHTML(e)},markdown:{subcommand:`md`,flags:({markdown:e})=>({flavor:e.flavor}),outputFilename:(e,{markdown:t})=>ar(e,t.flavor)},ipynb:{subcommand:`ipynb`,flags:({ipynb:e})=>({sort:e.sortMode,"include-outputs":e.includeOutputs}),outputFilename:e=>G.toIPYNB(e)},pdf:{subcommand:`pdf`,flags:({pdf:e})=>({as:e.preset,"include-inputs":e.includeInputs,"include-outputs":e.includeOutputs,webpdf:sr(e)}),outputFilename:e=>G.toPDF(e)},script:{subcommand:`script`,flags:()=>({}),outputFilename:e=>`${G.withoutExtension(e)}.script.py`}};function lr({format:e,filename:t,options:n}){if(e===`png`||e===`script`&&n.script.type===`source`||!t)return null;let r=cr[e];return[`marimo`,`export`,r.subcommand,bt(t),...or(r.flags(n)),`-o`,bt(r.outputFilename(t,n))].join(` `)}async function ur(e){let{exportOptions:t,captureOutputs:n,downloadPDF:r}=e;t.includeOutputs&&await n(),await r(t)}async function dr({format:e,options:t,requests:n,sourceFilename:r,htmlFiles:i,getLayout:a,captureOutputs:o,capturePNG:s,downloadFile:c}){switch(e){case`html`:c(await n.exportAsHTML({download:!1,files:i,includeCode:t.html.includeCode,layout:await a()}));return;case`markdown`:c(await n.exportAsMarkdown({download:!1,flavor:t.markdown.flavor}));return;case`ipynb`:t.ipynb.includeOutputs&&await o(),c(await n.exportAsIPYNB({download:!1,sortMode:t.ipynb.sortMode,includeOutputs:t.ipynb.includeOutputs}));return;case`pdf`:await ur({exportOptions:t.pdf,captureOutputs:o,downloadPDF:async e=>{c(await n.exportAsPDF(e))}});return;case`script`:if(t.script.type===`source`){c({contents:(await n.readCode()).contents,filename:r,mediaType:`text/plain`});return}c(await n.exportAsScript({download:!1}));return;case`png`:await s();return;default:vt(e)}}var fr={source:{actionLabel:`Export notebook source`,progressLabel:`notebook source`},flat:{actionLabel:`Export flat script`,progressLabel:`flat script`}};function pr(e,t){if(e===`wasm`)return{status:`success`,data:null};switch(t.status){case`pending`:case`loading`:return{status:`pending`};case`error`:return{status:`error`};case`success`:return{status:`success`,data:t.data}}}function mr(e,t){return e===`server`&&t?De.basename(t):G.toPY(document.title)}function hr({usesBrowserPrint:e,hasCommand:t,format:n,isNotebookSource:r}){return e?`Uses the browser's print settings for page size and filename.`:t?`Uses the current session state. The copied command exports the saved notebook.`:n!==`png`&&!r?`Save the notebook to copy an equivalent shell command.`:null}function gr(e){let n=kt(),[r,i]=t(wn),[a,o]=t(Tn),[s,c]=(0,Y.useState)(e??a),l=V()?`wasm`:`server`,u=J(),d=I(),[f,p]=(0,Y.useState)(!1),m=xt(async()=>l===`wasm`?null:u.getExportAvailability(),[l,u]),h=pr(l,m),g=e=>On({format:e,options:r,runtime:l,filename:n,availability:h}),_=g(s),v=d&&(_.reason?.type===`missing-packages`||_.reason?.type===`missing-setup`),y=pn.map(e=>({format:e,status:g(e)})),b=Dn(l,s),x=Fn[s],ee=s===`script`&&r.script.type===`source`,{actionLabel:S,progressLabel:te}=s===`script`?fr[r.script.type]:{actionLabel:x.actionLabel,progressLabel:x.label},C=b?null:lr({format:s,filename:n,options:r}),w=hr({usesBrowserPrint:b,hasCommand:!!C,format:s,isNotebookSource:ee});return(0,Y.useEffect)(()=>{e&&o(e)},[e,o]),{formats:y,options:r,selected:{format:s,status:_,usesBrowserPrint:b,actionLabel:S,command:C,footerDescription:w},exportRequest:{format:s,options:r,sourceFilename:mr(l,n),available:_.available,usesBrowserPrint:b,progressLabel:te},selectFormat:e=>{vn(e)&&(c(e),o(e))},updateOptions:(e,t)=>{i(n=>{let r={...n};return r[e]={...n[e],...t},r})},canInstall:v,isInstalling:f,installRequirements:async()=>{if(!(!v||f||s===`png`)){p(!0);try{let e=await u.installExportRequirements({format:s});m.setData(e)}catch{}finally{p(!1)}}}}}async function _r(e){let t=document.getElementById(`App`);if(!t){let e=`The current app view could not be captured.`;throw ht({title:`Failed to download as PNG`,description:e,variant:`danger`}),Error(e)}let n=e?.style.visibility,r=e?.classList.contains(`print:hidden`);if(!await _e({element:t,filename:document.title,prepare:()=>{let t=ve();return e&&(e.classList.add(`print:hidden`),e.style.visibility=`hidden`),()=>{t(),e&&(r||e.classList.remove(`print:hidden`),e.style.visibility=n??``)}}}))throw Error(`Failed to capture the current app view.`)}function vr(e){e(),requestAnimationFrame(()=>{setTimeout(()=>{window.print()},0)})}function yr({format:e,options:t,sourceFilename:n,available:r,usesBrowserPrint:i,progressLabel:a,onClose:o}){let s=J(),c=Rt(),[l,u]=(0,Y.useState)(!1),d=(0,Y.useRef)(null),f=(0,Y.useRef)(!0);(0,Y.useEffect)(()=>(f.current=!0,()=>{f.current=!1}),[]);let p=async e=>{await zt({takeScreenshots:()=>c({progress:e}),updateCellOutputs:s.updateCellOutputs})},m=async()=>{await R(()=>_r(d.current?.parentElement??null))};return{dialogRef:d,isExporting:l,submit:async()=>{if(!(!r||l)){if(i){vr(o);return}u(!0);try{await ge(`Exporting ${a}…`,async r=>{await dr({format:e,options:t,requests:s,sourceFilename:n,htmlFiles:Ne.INSTANCE.filenames(),getLayout:Pe,captureOutputs:()=>p(r),capturePNG:m,downloadFile:he})}),f.current&&o()}catch(e){M.error(`Export failed`,e)}finally{f.current&&u(!1)}}}}}function br(e){let t=(0,X.c)(15),{initialFormat:n,onClose:r}=e,i=gr(n),a,o,s;t[0]===i?(a=t[1],o=t[2],s=t[3]):({exportRequest:a,selectFormat:o,...s}=i,t[0]=i,t[1]=a,t[2]=o,t[3]=s);let c;t[4]!==a||t[5]!==r?(c={...a,onClose:r},t[4]=a,t[5]=r,t[6]=c):c=t[6];let l=yr(c),u;t[7]!==l||t[8]!==o||t[9]!==s?(u=e=>{!l.isExporting&&!s.isInstalling&&o(e)},t[7]=l,t[8]=o,t[9]=s,t[10]=u):u=t[10];let d;return t[11]!==l||t[12]!==s||t[13]!==u?(d={...s,...l,selectFormat:u},t[11]=l,t[12]=s,t[13]=u,t[14]=d):d=t[14],d}var xr=`(min-width: 640px)`,Sr=e=>{let t=(0,X.c)(75),{initialFormat:n,onClose:r,returnFocusRef:i}=e,a;t[0]!==n||t[1]!==r?(a={initialFormat:n,onClose:r},t[0]=n,t[1]=r,t[2]=a):a=t[2];let{dialogRef:o,isExporting:s,isInstalling:c,canInstall:l,formats:u,options:d,selected:f,selectFormat:p,updateOptions:m,installRequirements:h,submit:g}=br(a),_=s||c,v=ce(xr),{format:y,status:b,usesBrowserPrint:x,actionLabel:ee,command:S,footerDescription:te}=f,C=Fn[y],w=C.Options,ne;t[3]===i?ne=t[4]:(ne=i?{onCloseAutoFocus:e=>{e.preventDefault(),i.current?.focus()}}:{},t[3]=i,t[4]=ne);let T=ne,re;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(re=(0,Z.jsxs)(st,{className:`border-b px-5 py-4 pr-12`,children:[(0,Z.jsx)(dt,{children:`Export notebook`}),(0,Z.jsx)(ct,{children:`Choose a format and adjust its options.`})]}),t[5]=re):re=t[5];let E=v?`vertical`:`horizontal`,D;if(t[6]!==u||t[7]!==_){let e;t[9]===_?e=t[10]:(e=e=>{let{format:t,status:n}=e,r=Fn[t];return(0,Z.jsxs)(be,{value:t,disabled:_,className:`min-w-0 justify-start gap-2 px-2.5 py-2 text-xs data-[state=active]:shadow-xs sm:w-full sm:text-sm`,"data-testid":`export-format-${t}`,children:[(0,Z.jsx)(r.Icon,{className:`size-3.5 shrink-0`,strokeWidth:1.5}),(0,Z.jsx)(`span`,{className:`truncate`,children:r.label}),(0,Z.jsx)(Qn,{status:n})]},t)},t[9]=_,t[10]=e),D=u.map(e),t[6]=u,t[7]=_,t[8]=D}else D=t[8];let O;t[11]===D?O=t[12]:(O=(0,Z.jsx)(Se,{"aria-label":`Export format`,className:`grid max-h-none shrink-0 grid-cols-2 items-stretch justify-start gap-1 overflow-auto rounded-none border-b bg-muted/20 p-2 min-[360px]:grid-cols-3 sm:flex sm:h-full sm:flex-col sm:border-b-0 sm:border-r`,children:D}),t[11]=D,t[12]=O);let k;if(t[13]!==w||t[14]!==l||t[15]!==C.description||t[16]!==C.label||t[17]!==y||t[18]!==u||t[19]!==h||t[20]!==_||t[21]!==c||t[22]!==d||t[23]!==b||t[24]!==m||t[25]!==x){let e;t[27]!==w||t[28]!==l||t[29]!==C.description||t[30]!==C.label||t[31]!==y||t[32]!==h||t[33]!==_||t[34]!==c||t[35]!==d||t[36]!==b||t[37]!==m||t[38]!==x?(e=e=>{let{format:t}=e;return(0,Z.jsxs)(xe,{value:t,className:`mt-0 min-h-0 min-w-0 overflow-y-auto px-4 py-3`,children:[(0,Z.jsxs)(`div`,{className:`mb-3`,children:[(0,Z.jsx)(`h3`,{className:`text-base font-semibold`,children:C.label}),(0,Z.jsx)(`p`,{className:`mt-0.5 text-sm text-muted-foreground`,children:C.description})]}),(0,Z.jsx)($n,{format:y,formatLabel:C.label,status:b,onInstall:l?h:void 0,isInstalling:c}),x?null:(0,Z.jsx)(w,{options:d,updateOptions:m,disabled:_})]},t)},t[27]=w,t[28]=l,t[29]=C.description,t[30]=C.label,t[31]=y,t[32]=h,t[33]=_,t[34]=c,t[35]=d,t[36]=b,t[37]=m,t[38]=x,t[39]=e):e=t[39],k=u.map(e),t[13]=w,t[14]=l,t[15]=C.description,t[16]=C.label,t[17]=y,t[18]=u,t[19]=h,t[20]=_,t[21]=c,t[22]=d,t[23]=b,t[24]=m,t[25]=x,t[26]=k}else k=t[26];let A;t[40]!==y||t[41]!==p||t[42]!==E||t[43]!==O||t[44]!==k?(A=(0,Z.jsxs)(Ce,{value:y,onValueChange:p,orientation:E,className:`flex min-h-0 min-w-0 flex-col overflow-hidden sm:grid sm:grid-cols-[168px_minmax(0,1fr)]`,children:[O,k]}),t[40]=y,t[41]=p,t[42]=E,t[43]=O,t[44]=k,t[45]=A):A=t[45];let j;t[46]===S?j=t[47]:(j=S?(0,Z.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 rounded-md border bg-background px-2.5 py-2 font-mono text-xs`,children:[(0,Z.jsx)(`span`,{className:`select-none text-muted-foreground`,"aria-hidden":!0,children:`$`}),(0,Z.jsx)(`code`,{className:`min-w-0 flex-1 overflow-x-auto whitespace-nowrap`,"data-testid":`export-cli-command`,"aria-label":`Equivalent POSIX shell command`,children:S}),(0,Z.jsx)(gt,{value:S,className:`size-3.5`,buttonClassName:U(we({variant:`ghost`,size:`icon`}),`shrink-0`),tooltip:`Copy POSIX shell command`,ariaLabel:`Copy POSIX shell command`,toastTitle:`Command copied`})]}):null,t[46]=S,t[47]=j);let M=S&&`mt-3`,N;t[48]===M?N=t[49]:(N=U(`flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between`,M),t[48]=M,t[49]=N);let P;t[50]===te?P=t[51]:(P=te?(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:te}):null,t[50]=te,t[51]=P);let F=!b.available||_,I=!te&&`sm:ml-auto`,L;t[52]===I?L=t[53]:(L=U(`border-(--blue-11) bg-(--blue-11) hover:border-(--blue-12) hover:bg-(--blue-12) sm:min-w-36 dark:border-(--blue-7) dark:bg-(--blue-5) dark:text-(--blue-12) dark:hover:border-(--blue-8) dark:hover:bg-(--blue-6)`,I),t[52]=I,t[53]=L);let R;t[54]===s?R=t[55]:(R=s&&(0,Z.jsx)(rt,{size:`small`,className:`mr-2`,"aria-hidden":!0}),t[54]=s,t[55]=R);let ie=x?`Print to PDF`:ee,z;t[56]!==s||t[57]!==g||t[58]!==F||t[59]!==L||t[60]!==R||t[61]!==ie?(z=(0,Z.jsxs)(K,{type:`button`,disabled:F,"aria-busy":s,onClick:g,className:L,"data-testid":`export-submit`,children:[R,ie]}),t[56]=s,t[57]=g,t[58]=F,t[59]=L,t[60]=R,t[61]=ie,t[62]=z):z=t[62];let B;t[63]!==N||t[64]!==P||t[65]!==z?(B=(0,Z.jsxs)(`div`,{className:N,children:[P,z]}),t[63]=N,t[64]=P,t[65]=z,t[66]=B):B=t[66];let V;t[67]!==B||t[68]!==j?(V=(0,Z.jsxs)(`footer`,{className:`min-w-0 border-t bg-muted/20 px-4 py-3`,children:[j,B]}),t[67]=B,t[68]=j,t[69]=V):V=t[69];let H;return t[70]!==o||t[71]!==T||t[72]!==V||t[73]!==A?(H=(0,Z.jsxs)(lt,{ref:o,className:`grid h-dvh max-h-[760px] min-w-0 w-[calc(100vw-2rem)] grid-rows-[auto_minmax(0,1fr)_auto] gap-0 overflow-hidden p-0 sm:top-[5vh] sm:h-[90vh] sm:max-h-[640px] sm:max-w-3xl`,"data-testid":`export-dialog`,...T,children:[re,A,V]}),t[70]=o,t[71]=T,t[72]=V,t[73]=A,t[74]=H):H=t[74],H};function Cr(e){let t=(0,X.c)(5),{openPrompt:n,closeModal:r}=nt(),{sendCopy:i}=J(),a;return t[0]!==r||t[1]!==n||t[2]!==i||t[3]!==e?(a=()=>{if(!e)return null;let t=ke.guessDeliminator(e),a=De.basename(e);n({title:`Copy notebook`,description:`Enter a new filename for the notebook copy.`,defaultValue:`_${a}`,confirmText:`Copy notebook`,spellCheck:!1,onConfirm:n=>{let a=t.join(De.dirname(e),n);i({source:e,destination:a}).then(()=>{r(),ht({title:`Notebook copied`,description:`A copy of the notebook has been created.`}),Lt(a)})}})},t[0]=r,t[1]=n,t[2]=i,t[3]=e,t[4]=a):a=t[4],a}var wr=new y,Tr=e=>wr.isSupported(e)?`markdown`:`code`,Er=()=>{let e=(0,X.c)(3),{updateCellConfig:t}=o(),{saveCellConfig:n}=J(),r;return e[0]!==n||e[1]!==t?(r=async(e,r)=>{let i=b(),a={};for(let t of i.cellIds.inOrderIds){let n=i.cellData[t];n!==void 0&&n.config.hide_code!==e&&Tr(n.code)===r&&(a[t]={hide_code:e})}let o=N.entries(a);if(o.length!==0){await n({configs:a});for(let[e,n]of o)t({cellId:e,config:n})}},e[0]=n,e[1]=t,e[2]=r):r=e[2],r};function Dr(e,t){let n={};for(let r of e.cellIds.inOrderIds){let i=e.cellData[r];i!==void 0&&(i.config.expand_output??!1)!==t&&(We(e.cellRuntime[r]?.output)||(n[r]={expand_output:t}))}return n}var Or=()=>{let e=(0,X.c)(3),{updateCellConfig:t}=o(),{saveCellConfig:n}=J(),r;return e[0]!==n||e[1]!==t?(r=async e=>{let r=Dr(b(),e),i=N.entries(r);if(i.length!==0){await n({configs:r});for(let[e,n]of i)t({cellId:e,config:n})}},e[0]=n,e[1]=t,e[2]=r):r=e[2],r},kr=e=>{e?.preventDefault(),e?.stopPropagation()};function Ar(e){let n=(0,X.c)(44),a;n[0]===e?a=n[1]:(a=e===void 0?{}:e,n[0]=e,n[1]=a);let{exportDialogReturnFocusRef:m}=a,g=kt(),{openModal:_,closeModal:v}=nt(),{toggleApplication:y}=d(),{selectedPanel:x}=te(),[T]=t(B),E=r(ie),D=Er(),O=Or(),[k]=A(),M=r(c),P=r(j),{updateCellConfig:I,undoDeleteCell:L,clearAllCellOutputs:R,addSetupCellIfDoesntExist:z,collapseAllCells:H,expandAllCells:U}=o(),ae=Ct(),ce=St(),le=Cr(g),ue=i(sn),de=i(Le),{handleClick:fe}=Re(),pe=i(Fe),me=i(wn),{readCode:W,saveCellConfig:he}=J(),ge=re(`database`),G=re(`storage`),_e=f(),ve=r(h),ye=r(ne),be=r(s),{selectedLayout:xe}=at(),{setLayoutView:Se}=it(),Ce=on(),we=k.sharing?.html??!0,K=k.sharing?.wasm??!0,q=k.sharing?.molab??!0,De=xe===`slides`,ke;if(n[2]!==_e||n[3]!==z||n[4]!==P||n[5]!==ye||n[6]!==M||n[7]!==R||n[8]!==v||n[9]!==H||n[10]!==le||n[11]!==ge||n[12]!==G||n[13]!==U||n[14]!==m||n[15]!==g||n[16]!==ve||n[17]!==De||n[18]!==E||n[19]!==_||n[20]!==fe||n[21]!==W||n[22]!==ae||n[23]!==ce||n[24]!==he||n[25]!==xe||n[26]!==x||n[27]!==D||n[28]!==ue||n[29]!==me||n[30]!==pe||n[31]!==Se||n[32]!==O||n[33]!==de||n[34]!==we||n[35]!==q||n[36]!==K||n[37]!==y||n[38]!==Ce||n[39]!==L||n[40]!==be||n[41]!==I||n[42]!==T.mode){let e=[`db`,`sql`,...Mt],t=[`bucket`,`object storage`,...Pt],r=Gr,i=(e,t)=>{t&&me(e=>xn(e,t)),_((0,Z.jsx)(Sr,{initialFormat:e,onClose:v,returnFocusRef:m}))};ke=[{icon:(0,Z.jsx)(oe,{size:14,strokeWidth:1.5}),label:`Export…`,additionalKeywords:[`download`,`html`,`markdown`,`ipynb`,`pdf`,`script`,`png`],handle:()=>i()},{icon:(0,Z.jsx)(oe,{size:14,strokeWidth:1.5}),label:`Download`,redundant:!0,handle:kr,dropdown:[{icon:(0,Z.jsx)(Me,{size:14,strokeWidth:1.5}),label:`Download as HTML`,handle:()=>i(`html`,{html:{includeCode:!0}})},{icon:(0,Z.jsx)(Me,{size:14,strokeWidth:1.5}),label:`Download as HTML (exclude code)`,handle:()=>i(`html`,{html:{includeCode:!1}})},{icon:(0,Z.jsx)(At,{strokeWidth:1.5,style:{width:14,height:14}}),label:`Download as Markdown`,handle:()=>i(`markdown`)},{icon:(0,Z.jsx)(Yt,{size:14,strokeWidth:1.5}),label:`Download as ipynb`,handle:()=>i(`ipynb`)},{icon:(0,Z.jsx)(Ge,{size:14,strokeWidth:1.5}),label:`Download notebook source`,handle:()=>i(`script`,{script:{type:`source`}})},{icon:(0,Z.jsx)(Ge,{size:14,strokeWidth:1.5}),label:`Download flat script`,handle:()=>i(`script`,{script:{type:`flat`}})},{divider:!0,icon:(0,Z.jsx)(tt,{size:14,strokeWidth:1.5}),label:`Download as PNG`,handle:()=>i(`png`)},De?{divider:!0,icon:(0,Z.jsx)(Je,{size:14,strokeWidth:1.5}),label:`Download as PDF`,handle:kr,dropdown:[{icon:(0,Z.jsx)(Je,{size:14,strokeWidth:1.5}),label:`Document Layout`,handle:()=>i(`pdf`,{pdf:{preset:`document`}})},{icon:(0,Z.jsx)(Je,{size:14,strokeWidth:1.5}),label:`Slides Layout`,hidden:V(),rightElement:(0,Z.jsx)(`span`,{className:`ml-3 shrink-0 rounded-full border border-emerald-200 bg-emerald-50 px-2 py-0.5 text-[10px] font-semibold uppercase tracking-wide text-emerald-700`,children:`Recommended`}),handle:()=>i(`pdf`,{pdf:{preset:`slides`}})}]}:{divider:!0,icon:(0,Z.jsx)(Je,{size:14,strokeWidth:1.5}),label:`Download as PDF`,handle:()=>i(`pdf`,{pdf:{preset:`document`}})}]},{icon:(0,Z.jsx)(S,{size:14,strokeWidth:1.5}),label:`Connect your agent`,hidden:V(),handle:async()=>{_((0,Z.jsx)(Ie,{onClose:v}))},additionalKeywords:[`connect`]},{icon:(0,Z.jsx)(Qt,{size:14,strokeWidth:1.5}),label:`Share`,handle:kr,hidden:!we&&!K&&!q,dropdown:[{icon:(0,Z.jsx)(Ye,{size:14,strokeWidth:1.5}),label:`Publish HTML to web`,hidden:!we,handle:async()=>{_((0,Z.jsx)(nn,{onClose:v}))}},{icon:(0,Z.jsx)(Be,{size:14,strokeWidth:1.5}),label:`Create WebAssembly link`,hidden:!K,handle:async()=>{let e=await W(),t=wt({code:e.contents});await mt(t),ht({title:`Copied`,description:`Link copied to clipboard.`})}},{icon:(0,Z.jsx)(It,{size:14,strokeWidth:1.5}),label:`Create molab notebook`,hidden:!q,handle:async()=>{let e=await W(),t=wt({code:e.contents,baseUrl:`${F.molab}/new`});window.open(t,`_blank`)}}]},{icon:(0,Z.jsx)(Xt,{size:14,strokeWidth:1.5}),label:`Helper panel`,redundant:!0,handle:kr,dropdown:l.flatMap(e=>{let t=e.type===`ai`&&!P;if(p({panel:e,capabilities:M,aiEnabled:P})&&!t)return[];let{type:n,Icon:i,additionalKeywords:a}=e;return{label:yt.startCase(n),rightElement:r(x===n),icon:(0,Z.jsx)(i,{size:14,strokeWidth:1.5}),handle:()=>{if(t){fe(`ai`,`ai-features`);return}y(n)},additionalKeywords:a}})},{icon:(0,Z.jsx)(Zt,{size:14,strokeWidth:1.5}),label:`Present as`,handle:kr,dropdown:[{icon:T.mode===`present`?(0,Z.jsx)(u,{size:14,strokeWidth:1.5}):(0,Z.jsx)(Ae,{size:14,strokeWidth:1.5}),label:`Toggle app view`,hotkey:`global.hideCode`,handle:()=>{Ce()}},...ot.map((e,t)=>{let n=un(e);return{divider:t===0,label:dn(e),icon:(0,Z.jsx)(n,{size:14,strokeWidth:1.5}),rightElement:(0,Z.jsx)(`div`,{className:`w-8 flex justify-end`,children:xe===e&&(0,Z.jsx)(ze,{size:14})}),handle:()=>{Se(e),T.mode===`edit`&&Ce()}}})]},{icon:(0,Z.jsx)(Kt,{size:14,strokeWidth:1.5}),label:`Duplicate notebook`,hidden:!g||V(),handle:le},{icon:(0,Z.jsx)(se,{size:14,strokeWidth:1.5}),label:`Copy code to clipboard`,hidden:!g,handle:async()=>{let e=await W();await mt(e.contents),ht({title:`Copied`,description:`Code copied to clipboard.`})}},{icon:(0,Z.jsx)(Ve,{size:14,strokeWidth:1.5}),label:`Enable all cells`,hidden:!ve||E,handle:async()=>{let e=b(),t=C(e),n=N.fromEntries(t.map(Wr));await he({configs:n});for(let e of t)I({cellId:e,config:{disabled:!1}})}},{divider:!0,icon:(0,Z.jsx)(Wt,{size:14,strokeWidth:1.5}),label:`Add setup cell`,handle:()=>{z({})}},{icon:(0,Z.jsx)(Ee,{size:14,strokeWidth:1.5}),label:`Add database connection`,additionalKeywords:e,handle:()=>{_((0,Z.jsx)(Nt,{onClose:v}))},dropdown:ge.length===0?void 0:[...ge.map(e=>({icon:(0,Z.jsx)(S,{size:14,strokeWidth:1.5}),label:`Add ${e.displayName}`,description:`Detected in your environment`,handle:()=>_e(e)})),{divider:!0,icon:(0,Z.jsx)(Ee,{size:14,strokeWidth:1.5}),label:`Browse all connections`,additionalKeywords:e,handle:()=>{_((0,Z.jsx)(Nt,{onClose:v}))}}]},{icon:(0,Z.jsx)($e,{size:14,strokeWidth:1.5}),label:`Add remote storage`,additionalKeywords:t,handle:()=>{_((0,Z.jsx)(Nt,{defaultTab:`storage`,onClose:v}))},dropdown:G.length===0?void 0:[...G.map(e=>({icon:(0,Z.jsx)(S,{size:14,strokeWidth:1.5}),label:`Add ${e.displayName}`,description:`Detected in your environment`,handle:()=>_e(e)})),{divider:!0,icon:(0,Z.jsx)($e,{size:14,strokeWidth:1.5}),label:`Browse all connections`,additionalKeywords:t,handle:()=>{_((0,Z.jsx)(Nt,{defaultTab:`storage`,onClose:v}))}}]},{icon:(0,Z.jsx)(en,{size:14,strokeWidth:1.5}),label:be,hidden:!ye||E,handle:()=>{L()}},{icon:(0,Z.jsx)($t,{size:14,strokeWidth:1.5}),label:`Restart kernel`,variant:`danger`,handle:ae,additionalKeywords:[`reset`,`reload`,`restart`]},{icon:(0,Z.jsx)(Gt,{size:14,strokeWidth:1.5}),label:`Re-run all cells`,redundant:!0,hotkey:`global.runAll`,handle:async()=>{ce()}},{icon:(0,Z.jsx)(ee,{size:14,strokeWidth:1.5}),label:`Clear all outputs`,redundant:!0,handle:()=>{R()}},{icon:(0,Z.jsx)(w,{size:14,strokeWidth:1.5}),label:`Show all code`,hotkey:`global.showAllCode`,handle:()=>D(!1,`code`),redundant:!0},{icon:(0,Z.jsx)(Ke,{size:14,strokeWidth:1.5}),label:`Hide all code`,hotkey:`global.hideAllCode`,handle:()=>D(!0,`code`),redundant:!0},{icon:(0,Z.jsx)(w,{size:14,strokeWidth:1.5}),label:`Show all markdown code`,hotkey:`global.showAllMarkdownCode`,handle:()=>D(!1,`markdown`),redundant:!0},{icon:(0,Z.jsx)(Ke,{size:14,strokeWidth:1.5}),label:`Hide all markdown code`,hotkey:`global.hideAllMarkdownCode`,handle:()=>D(!0,`markdown`),redundant:!0},{icon:(0,Z.jsx)(Ue,{size:14,strokeWidth:1.5}),label:`Expand all outputs`,hotkey:`global.expandAllOutputs`,hidden:T.mode!==`edit`,handle:()=>O(!0),redundant:!0},{icon:(0,Z.jsx)(He,{size:14,strokeWidth:1.5}),label:`Clamp all outputs`,hotkey:`global.clampAllOutputs`,hidden:T.mode!==`edit`,handle:()=>O(!1),redundant:!0},{icon:(0,Z.jsx)(Vt,{size:14,strokeWidth:1.5}),label:`Collapse all sections`,hotkey:`global.collapseAllSections`,handle:H,redundant:!0},{icon:(0,Z.jsx)(Bt,{size:14,strokeWidth:1.5}),label:`Expand all sections`,hotkey:`global.expandAllSections`,handle:U,redundant:!0},{divider:!0,icon:(0,Z.jsx)(Ut,{size:14,strokeWidth:1.5}),label:`Command palette`,hotkey:`global.commandPalette`,handle:()=>ue(Ur)},{icon:(0,Z.jsx)(je,{size:14,strokeWidth:1.5}),label:`Keyboard shortcuts`,hotkey:`global.showHelp`,handle:()=>pe(Hr)},{icon:(0,Z.jsx)(ft,{size:14,strokeWidth:1.5}),label:`User settings`,handle:()=>de(Vr),redundant:!0,additionalKeywords:[`preferences`,`options`,`configuration`]},{icon:(0,Z.jsx)(Jt,{size:14,strokeWidth:1.5}),label:`Report an issue`,additionalKeywords:[`feedback`,`bug`,`issue`,`report`,`diagnostics`],handle:()=>_((0,Z.jsx)(jt,{onClose:v}))},{icon:(0,Z.jsx)(qe,{size:14,strokeWidth:1.5}),label:`Resources`,handle:kr,dropdown:[{icon:(0,Z.jsx)(Te,{size:14,strokeWidth:1.5}),label:`Documentation`,handle:Br},{icon:(0,Z.jsx)(Ft,{className:`h-3.5 w-3.5`}),label:`GitHub`,handle:zr},{icon:(0,Z.jsx)(Xe,{size:14,strokeWidth:1.5}),label:`Discord Community`,handle:Rr},{icon:(0,Z.jsx)(Qe,{className:`h-3.5 w-3.5`}),label:`YouTube`,handle:Lr},{icon:(0,Z.jsx)(Oe,{size:14,strokeWidth:1.5}),label:`Changelog`,handle:Ir}]},{divider:!0,icon:(0,Z.jsx)(et,{size:14,strokeWidth:1.5}),label:`Open home`,hidden:!location.search.includes(`file`),handle:Fr},{icon:(0,Z.jsx)(It,{size:14,strokeWidth:1.5}),label:`New notebook`,hidden:!location.search.includes(`file`),handle:Pr}].filter(Nr).map(jr),n[2]=_e,n[3]=z,n[4]=P,n[5]=ye,n[6]=M,n[7]=R,n[8]=v,n[9]=H,n[10]=le,n[11]=ge,n[12]=G,n[13]=U,n[14]=m,n[15]=g,n[16]=ve,n[17]=De,n[18]=E,n[19]=_,n[20]=fe,n[21]=W,n[22]=ae,n[23]=ce,n[24]=he,n[25]=xe,n[26]=x,n[27]=D,n[28]=ue,n[29]=me,n[30]=pe,n[31]=Se,n[32]=O,n[33]=de,n[34]=we,n[35]=q,n[36]=K,n[37]=y,n[38]=Ce,n[39]=L,n[40]=be,n[41]=I,n[42]=T.mode,n[43]=ke}else ke=n[43];return ke}function jr(e){return e.dropdown?{...e,dropdown:e.dropdown.filter(Mr)}:e}function Mr(e){return!e.hidden}function Nr(e){return!e.hidden}function Pr(){let e=z();window.open(e,`_blank`)}function Fr(){let e=document.baseURI.split(`?`)[0];window.open(e,`_blank`,`noopener`)}function Ir(){window.open(F.releasesPage,`_blank`)}function Lr(){window.open(F.youtube,`_blank`)}function Rr(){window.open(F.discordLink,`_blank`)}function zr(){window.open(F.githubPage,`_blank`)}function Br(){window.open(F.docsPage,`_blank`)}function Vr(e){return!e}function Hr(e){return!e}function Ur(e){return!e}function Wr(e){return[e,{disabled:!1}]}function Gr(e){return(0,Z.jsx)(`div`,{className:`w-8 flex justify-end`,children:e&&(0,Z.jsx)(ze,{size:14})})}export{sn as a,Jt as c,Ht as d,cn as i,Wt as l,Or as n,on as o,Er as r,en as s,Ar as t,Ut as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as e,t,u as n}from"./useEvent-
|
|
1
|
+
import{f as e,t,u as n}from"./useEvent-BDjgaBtz.js";import{D as r,da as i,dt as a,h as o,ia as s,ri as c}from"./cells-D_11MjVB.js";import{t as l}from"./compiler-runtime-BrajqUja.js";import{g as u}from"./useEventListener-CjDeLqFC.js";import{o as d}from"./dist-qhAY4L2r.js";import{r as f}from"./requests-BIFR-h4M.js";var p=l(),m=e(!1);function h(){let e=(0,p.c)(2),n=v(),r;return e[0]===n?r=e[1]:(r=()=>n(i(o())),e[0]=n,e[1]=r),t(r)}function g(e){let n=(0,p.c)(3),r=v(),i;return n[0]!==e||n[1]!==r?(i=()=>{e!==void 0&&r([e])},n[0]=e,n[1]=r,n[2]=i):i=n[2],t(i)}function _(){let e=(0,p.c)(2),n=v(),r;return e[0]===n?r=e[1]:(r=()=>n(s(o())),e[0]=n,e[1]=r),t(r)}function v(){let e=(0,p.c)(4),{prepareForRun:i}=r(),{sendRun:a}=f(),s=n(m),c;return e[0]!==i||e[1]!==a||e[2]!==s?(c=async e=>{if(e.length===0)return;let t=o();return s(!0),y({cellIds:e,sendRun:a,prepareForRun:i,notebook:t})},e[0]=i,e[1]=a,e[2]=s,e[3]=c):c=e[3],t(c)}async function y({cellIds:e,sendRun:t,prepareForRun:n,notebook:r}){if(e.length===0)return;let{cellHandles:i,cellData:o}=r,s=[];for(let t of e){let e=i[t]?.current?.editorView,r;e?(c(e)!==`markdown`&&d(e),r=a(e)):r=o[t]?.code||``,s.push(r),n({cellId:t})}await t({cellIds:e,codes:s}).catch(e=>{u.error(e)})}export{v as a,g as i,y as n,h as o,_ as r,m as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./useEvent-
|
|
1
|
+
import{t as e}from"./useEvent-BDjgaBtz.js";import{D as t,dt as n,f as r}from"./cells-D_11MjVB.js";import{t as i}from"./compiler-runtime-BrajqUja.js";import{t as a}from"./jsx-runtime-B74pBk57.js";import{r as o}from"./useDeleteCell-BC-MW7d1.js";import{t as s}from"./use-toast-Wu434mLr.js";var c=i(),l=a();function u(){let i=(0,c.c)(3),{splitCell:a,undoSplitCell:u}=t(),d;return i[0]!==a||i[1]!==u?(d=e=>{let t=r(e.cellId);if(!t)return;let i=n(t);a(e);let{dismiss:c}=s({title:`Cell split`,action:(0,l.jsx)(o,{"data-testid":`undo-split-button`,size:`sm`,variant:`outline`,onClick:()=>{u({...e,snapshot:i}),d()},children:`Undo`})}),d=c},i[0]=a,i[1]=u,i[2]=d):d=i[2],e(d)}export{u as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{t}from"./react-DVplv7_D.js";import{t as n}from"./compiler-runtime-BrajqUja.js";var r=n(),i=e(t(),1);function a(e,t){if(t.type===`reset`)return t.state;if(!Object.is(e.key,t.key))return e;let n=typeof t.update==`function`?t.update(e.value):t.update;return Object.is(e.value,n)?e:{key:t.key,value:n}}function o(e,t){let n=(0,r.c)(11),o;n[0]===t?o=n[1]:(o=e=>({key:e,value:t()}),n[0]=t,n[1]=o);let[s,c]=(0,i.useReducer)(a,e,o),l;n[2]!==t||n[3]!==e||n[4]!==s?(l=Object.is(s.key,e)?s:{key:e,value:t()},n[2]=t,n[3]=e,n[4]=s,n[5]=l):l=n[5];let u=l;u!==s&&c({type:`reset`,state:u});let d;n[6]===e?d=n[7]:(d=t=>{c({type:`update`,key:e,update:t})},n[6]=e,n[7]=d);let f=d,p;return n[8]!==u.value||n[9]!==f?(p=[u.value,f],n[8]=u.value,n[9]=f,n[10]=p):p=n[10],p}export{o as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as e,l as t,r as n}from"./useEvent-
|
|
1
|
+
import{f as e,l as t,r as n}from"./useEvent-BDjgaBtz.js";import{t as r}from"./compiler-runtime-BrajqUja.js";import{x as i}from"./config-DpY86_Yq.js";import{i as a,t as o}from"./utils-B4K466FK.js";var s=r(),c=[`light`,`dark`,`system`];function l(){if(typeof window>`u`)return;let e=new URLSearchParams(window.location.search).get(a.theme);return c.includes(e)?e:void 0}var u=e(e=>{if(o()){if(document.body.classList.contains(`dark-mode`)||document.body.classList.contains(`dark`)||document.body.dataset.theme===`dark`||document.body.dataset.mode===`dark`||p()===`dark`)return`dark`;let e=window.getComputedStyle(document.body),t=e.getPropertyValue(`color-scheme`).trim();if(t)return t.includes(`dark`)?`dark`:`light`;let n=e.getPropertyValue(`background-color`).match(/\d+/g);if(n){let[e,t,r]=n.map(Number);return(e*299+t*587+r*114)/1e3<128?`dark`:`light`}return`light`}return l()??e(i).display.theme}),d=e(!1);function f(){if(typeof window>`u`||!window.matchMedia)return;let e=window.matchMedia(`(prefers-color-scheme: dark)`);n.set(d,e.matches),e.addEventListener(`change`,e=>{n.set(d,e.matches)})}f();function p(){switch(document.body.dataset.vscodeThemeKind){case`vscode-dark`:return`dark`;case`vscode-high-contrast`:return`dark`;case`vscode-light`:return`light`}}var m=e(p());function h(){let e=new MutationObserver(()=>{let e=p();n.set(m,e)});return e.observe(document.body,{attributes:!0,attributeFilter:[`data-vscode-theme-kind`]}),()=>e.disconnect()}h();var g=e(e=>{let t=e(u),n=e(m);if(n!==void 0)return n;let r=e(d);return t===`system`?r?`dark`:`light`:t});function _(){let e=(0,s.c)(3),r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r={store:n},e[0]=r):r=e[0];let i=t(g,r),a;return e[1]===i?a=e[2]:(a={theme:i},e[1]=i,e[2]=a),a}export{g as n,_ as r,c as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./objects-
|
|
1
|
+
import{t as e}from"./objects-rLPlQ3X_.js";function t(e){if(typeof e==`object`&&e){if(`width`in e)return e.width;if(`spec`in e)return t(e.spec)}}function n(t,{parseDates:n=!1}={}){return!t||Object.keys(t).length===0?`auto`:e.mapValues(t,e=>e===`geometry`?`string`:e===`date`?n?`date`:`string`:e===`time`?`string`:e===`datetime`?`date`:e)}export{n,t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{t}from"./useEvent-BDjgaBtz.js";import{t as n}from"./react-DVplv7_D.js";import{t as r}from"./compiler-runtime-BrajqUja.js";import{t as i}from"./debounce-aFmHgJZY.js";import{f as a,g as o}from"./useEventListener-CjDeLqFC.js";import{t as s}from"./objects-rLPlQ3X_.js";import{n as c}from"./config-CD1IuZFJ.js";import{t as l}from"./cn-ldLVeaqm.js";import{t as u}from"./jsx-runtime-B74pBk57.js";import{t as d}from"./tooltip-CkGm8X7m.js";import{r as f}from"./button-D8gVKwe-.js";import{s as ee}from"./toDate-DOj9Q6uC.js";import{t as p,u as m}from"./arrays-0R2reF2y.js";import{r as te}from"./useTheme-BAA27lh7.js";import{n as h}from"./useAsyncData-qvoPYHtx.js";import{t as ne}from"./isValid-q_Ad80ug.js";import{r as g,t as re}from"./tooltip-Brya4Ghn.js";import{n as ie}from"./vega-loader.browser-Bu25TKax.js";import{t as ae}from"./react-vega-BTNeboR2.js";import{r as oe,t as se}from"./alert-DTaqCu_d.js";import{n as _}from"./error-banner-B5kzVf_0.js";import{t as ce}from"./utils-DfElfBpz.js";import{t as le}from"./formats-zylfwejq.js";import{t as ue}from"./useDeepCompareMemoize-B2DVK2De.js";import{t as de}from"./semaphore-BjoL5P0h.js";import{t as fe}from"./use-vega-container-remeasure-BpmHehNK.js";var pe=e(n(),1),me=r();function he(e){return e.data&&`url`in e.data&&(e.data.url=c(e.data.url).href),e}var v={arc:`arc`,area:`area`,bar:`bar`,image:`image`,line:`line`,point:`point`,rect:`rect`,rule:`rule`,text:`text`,tick:`tick`,trail:`trail`,circle:`circle`,square:`square`,geoshape:`geoshape`},y=new Set([`boxplot`,`errorband`,`errorbar`]),b={getMarkType(e){let t=typeof e==`string`?e:e.type;if(y.has(t))throw Error(`Not supported`);return t},isInteractive(e){let t=typeof e==`string`?e:e.type;return!y.has(t)},makeClickable(e){let t=typeof e==`string`?e:e.type;return t in v?typeof e==`string`?{type:e,cursor:`pointer`,tooltip:!0}:{...e,type:t,cursor:`pointer`,tooltip:!0}:e},getOpacity(e){return typeof e==`string`?null:`opacity`in e&&typeof e.opacity==`number`?e.opacity:null}},x={point(e){return e==null?`select_point`:`select_point_${e}`},interval(e){return e==null?`select_interval`:`select_interval_${e}`},legendSelection(e){return`legend_selection_${e}`},binColoring(e){return e==null?`bin_coloring`:`bin_coloring_${e}`},HIGHLIGHT:`highlight`,PAN_ZOOM:`pan_zoom`,hasPoint(e){return e.some(e=>e.startsWith(`select_point`))},hasInterval(e){return e.some(e=>e.startsWith(`select_interval`))},hasLegend(e){return e.some(e=>e.startsWith(`legend_selection`))},hasPanZoom(e){return e.some(e=>e.startsWith(`pan_zoom`))},isBinColoring(e){return e.startsWith(`bin_coloring`)}};function S(){return a()?`metaKey`:`ctrlKey`}var C={highlight(){return{name:x.HIGHLIGHT,select:{type:`point`,on:`mouseover`}}},interval(e,t){let n=S();return{name:x.interval(t),select:{type:`interval`,encodings:w(e),mark:{fill:`#669EFF`,fillOpacity:.07,stroke:`#669EFF`,strokeOpacity:.4},on:`[mousedown[!event.${n}], mouseup] > mousemove[!event.${n}]`,translate:`[mousedown[!event.${n}], mouseup] > mousemove[!event.${n}]`}}},point(e,t){return{name:x.point(t),select:{type:`point`,encodings:w(e),on:`click[!event.${S()}]`}}},binColoring(e){return{name:x.binColoring(e),select:{type:`point`,on:`click[!event.${S()}]`}}},legend(e){return{name:x.legendSelection(e),select:{type:`point`,fields:[e]},bind:`legend`}},panZoom(){let e=S();return{name:x.PAN_ZOOM,bind:`scales`,select:{type:`interval`,on:`[mousedown[event.${e}], window:mouseup] > window:mousemove!`,translate:`[mousedown[event.${e}], window:mouseup] > window:mousemove!`,zoom:`wheel![event.${e}]`}}}};function w(e){switch(b.getMarkType(e.mark)){case v.image:case v.trail:return;case v.area:case v.arc:return[`color`];case v.bar:{let t=E(e);return t===`horizontal`?[`y`]:t===`vertical`?[`x`]:void 0}case v.circle:case v.geoshape:case v.line:case v.point:case v.rect:case v.rule:case v.square:case v.text:case v.tick:return[`x`,`y`]}}function T(e){if(`params`in e&&e.params&&e.params.length>0){let t=e.params.filter(e=>e!=null&&`select`in e&&e.select!==void 0).map(e=>e.name);return m(t)}return`layer`in e?m(e.layer.flatMap(T)):`vconcat`in e?m(e.vconcat.flatMap(T)):`hconcat`in e?m(e.hconcat.flatMap(T)):[]}function E(e){if(!e||!(`mark`in e))return;let t=e.encoding?.x,n=e.encoding?.y;if(t&&`type`in t&&t.type===`nominal`)return`vertical`;if(n&&`type`in n&&n.type===`nominal`||t&&`aggregate`in t)return`horizontal`;if(n&&`aggregate`in n)return`vertical`}function D(e){if(!e.encoding)return[];let t=[];for(let n of Object.values(e.encoding))n&&typeof n==`object`&&`bin`in n&&n.bin&&`field`in n&&typeof n.field==`string`&&t.push(n.field);return t}function O(e){if(!e||!(`encoding`in e))return[];let{encoding:t}=e;return t?Object.entries(t).flatMap(e=>{let[t,n]=e;return!n||!k.has(t)?[]:`field`in n&&typeof n.field==`string`?[n.field]:`condition`in n&&n.condition&&typeof n.condition==`object`&&`field`in n.condition&&n.condition.field&&typeof n.condition.field==`string`?[n.condition.field]:[]}):[]}var k=new Set([`color`,`fill`,`fillOpacity`,`opacity`,`shape`,`size`]);function A(e,t,n,r){let i=n.filter(e=>x.isBinColoring(e)),a={and:(i.length>0?i:n).map(e=>({param:e}))};switch(e){case`opacity`:{let e=b.getOpacity(r)||1;return{...t,opacity:{condition:{test:a,value:e},value:e/5}}}default:return t}}function j(e){if(!(`select`in e)||!e.select)return JSON.stringify(e);let t=e.select;if(typeof t==`string`)return JSON.stringify({type:t,bind:e.bind});let n={type:t.type,encodings:`encodings`in t&&t.encodings?[...t.encodings].toSorted():void 0,fields:`fields`in t&&t.fields?[...t.fields].toSorted():void 0,bind:e.bind};return JSON.stringify(n)}function M(e){let t=N(e);if(t.length===0)return e;let n=P(t);return n.length===0?e:{...I(F(e,new Set(n.map(e=>e.name))),n.map(e=>e.name)),params:[...e.params||[],...n]}}function N(e){let t=[];if(`vconcat`in e&&Array.isArray(e.vconcat))for(let n of e.vconcat)t.push(...N(n));else if(`hconcat`in e&&Array.isArray(e.hconcat))for(let n of e.hconcat)t.push(...N(n));else if(`layer`in e)return[];else`mark`in e&&`params`in e&&e.params&&e.params.length>0&&t.push({params:e.params});return t}function P(e){if(e.length===0)return[];let t=new Map,n=e.length;for(let{params:n}of e){let e=new Set;for(let r of n){let n=j(r);e.has(n)||(e.add(n),t.has(n)||t.set(n,{count:0,param:r}),t.get(n).count++)}}let r=[];for(let[,{count:e,param:i}]of t)e===n&&r.push(i);return r}function F(e,t){if(`vconcat`in e&&Array.isArray(e.vconcat))return{...e,vconcat:e.vconcat.map(e=>F(e,t))};if(`hconcat`in e&&Array.isArray(e.hconcat))return{...e,hconcat:e.hconcat.map(e=>F(e,t))};if(`mark`in e&&`params`in e&&e.params){let n=e.params,r=[];for(let e of n){if(!e||typeof e!=`object`||!(`name`in e)){r.push(e);continue}t.has(e.name)||r.push(e)}if(r.length===0){let{params:t,...n}=e;return n}return{...e,params:r}}return e}function I(e,t){return`vconcat`in e&&Array.isArray(e.vconcat)?{...e,vconcat:e.vconcat.map(e=>I(e,t))}:`hconcat`in e&&Array.isArray(e.hconcat)?{...e,hconcat:e.hconcat.map(e=>I(e,t))}:`layer`in e?e:`mark`in e&&b.isInteractive(e.mark)?{...e,mark:b.makeClickable(e.mark),encoding:A(`opacity`,e.encoding||{},t,e.mark)}:e}function ge(e,t){let{chartSelection:n=!0,fieldSelection:r=!0}=t;if(!n&&!r)return e;e.params?.some(e=>e.bind===`legend`)&&(r=!1);let i=e.params?.some(e=>!e.bind);i&&(n=!1);let a=`vconcat`in e||`hconcat`in e;if(i&&a)return e;if(`vconcat`in e){let t=e.vconcat.map(e=>`mark`in e?ge(e,{chartSelection:n,fieldSelection:r}):e);return M({...e,vconcat:t})}if(`hconcat`in e){let t=e.hconcat.map(e=>`mark`in e?ge(e,{chartSelection:n,fieldSelection:r}):e);return M({...e,hconcat:t})}if(`layer`in e){let t=e.params&&e.params.length>0,i=r!==!1&&!t,a=[];if(i){let t=e.layer.flatMap(e=>`mark`in e?O(e):[]);a=[...new Set(t)],Array.isArray(r)&&(a=p.intersection(a,r))}let o=e.layer.map((e,t)=>{if(!(`mark`in e))return e;let r=e;if(t===0&&a.length>0){let e=a.map(e=>C.legend(e));r={...r,params:[...r.params||[],...e]}}return r=R(r,n,t),r=B(r),t===0&&(r=z(r)),r});return{...e,layer:o}}if(!(`mark`in e)||!b.isInteractive(e.mark))return e;let o=e;return o=L(o,r),o=R(o,n,void 0),o=B(o),o=z(o),o}function L(e,t){if(t===!1)return e;let n=O(e);Array.isArray(t)&&(n=p.intersection(n,t));let r=n.map(e=>C.legend(e)),i=[...e.params||[],...r];return{...e,params:i}}function R(e,t,n){if(t===!1)return e;let r;try{r=b.getMarkType(e.mark)}catch{return e}if(r===`geoshape`)return e;let i=D(e),a=t===!0?i.length>0?[`point`]:V(r):[t];if(!a||a.length===0)return e;let o=a.map(t=>t===`interval`?C.interval(e,n):C.point(e,n)),s=[...e.params||[],...o];return i.length>0&&a.includes(`point`)&&s.push(C.binColoring(n)),{...e,params:s}}function z(e){let t;try{t=b.getMarkType(e.mark)}catch{}if(t===`geoshape`)return e;let n=e.params||[];return n.some(e=>e.bind===`scales`)?e:{...e,params:[...n,C.panZoom()]}}function B(e){let t=`encoding`in e?e.encoding:void 0,n=e.params||[],r=n.map(e=>e.name);return n.length===0||!b.isInteractive(e.mark)?e:{...e,mark:b.makeClickable(e.mark),encoding:A(`opacity`,t||{},r,e.mark)}}function V(e){switch(e){case`arc`:case`area`:return[`point`];case`text`:case`bar`:return[`point`,`interval`];case`line`:return;default:return[`point`,`interval`]}}var H=5;async function U(e){if(!e)return e;let t=`datasets`in e?{...e.datasets}:{},n=new de(H),r=async e=>{if(!e)return e;if(`layer`in e){let t=await Promise.all(e.layer.map(r));e={...e,layer:t}}if(`hconcat`in e){let t=await Promise.all(e.hconcat.map(r));e={...e,hconcat:t}}if(`vconcat`in e){let t=await Promise.all(e.vconcat.map(r));e={...e,vconcat:t}}if(`spec`in e&&(e={...e,spec:await r(e.spec)}),!e.data||!(`url`in e.data))return e;let i;try{i=c(e.data.url)}catch{return e}let a=e.data.format,o=await n.run(()=>g(i.href,a));return t[i.pathname]=o,{...e,data:{name:i.pathname}}},i=await r(e);return Object.keys(t).length===0?i:{...i,datasets:t}}var W=u();ie(`arrow`,le);var G=e=>{let t=(0,me.c)(12),{value:n,setValue:r,chartSelection:i,fieldSelection:a,spec:o,embedOptions:s}=e,c,l;t[0]===o?(c=t[1],l=t[2]):(c=async()=>U(o),l=[o],t[0]=o,t[1]=c,t[2]=l);let{data:u,error:d}=h(c,l);if(d){let e;return t[3]===d?e=t[4]:(e=(0,W.jsx)(_,{error:d}),t[3]=d,t[4]=e),e}if(!u)return null;let f;return t[5]!==i||t[6]!==s||t[7]!==a||t[8]!==u||t[9]!==r||t[10]!==n?(f=(0,W.jsx)(K,{value:n,setValue:r,chartSelection:i,fieldSelection:a,spec:u,embedOptions:s}),t[5]=i,t[6]=s,t[7]=a,t[8]=u,t[9]=r,t[10]=n,t[11]=f):f=t[11],f},K=e=>{let n=(0,me.c)(50),{value:r,setValue:c,chartSelection:u,fieldSelection:p,spec:m,embedOptions:h}=e,{theme:ne}=te(),g=(0,pe.useRef)(null),ie=(0,pe.useRef)(void 0),[_,le]=(0,pe.useState)(),de;bb0:{if(h&&`actions`in h){de=h.actions;break bb0}let e;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(e={source:!1,compiled:!1},n[0]=e):e=n[0],de=e}let v=de,y=ue(m),b;n[1]!==u||n[2]!==p||n[3]!==y?(b=ge(he(y),{chartSelection:u,fieldSelection:p}),n[1]=u,n[2]=p,n[3]=y,n[4]=b):b=n[4];let S=b,C;n[5]===S?C=n[6]:(C=T(S),n[5]=S,n[6]=C);let w=C,E;n[7]!==c||n[8]!==r?(E=e=>{c({...r,...e})},n[7]=c,n[8]=r,n[9]=E):E=n[9];let D=t(E),O;n[10]===D?O=n[11]:(O=i((e,t)=>{o.debug(`[Vega signal]`,e,t);let n=s.mapValues(t,ve);n=s.mapValues(n,_e),D({[e]:n})},100),n[10]=D,n[11]=O);let k=O,A=ue(w),j;if(n[12]!==k||n[13]!==A){let e;n[15]===k?e=n[16]:(e=(e,t)=>(x.PAN_ZOOM===t||x.isBinColoring(t)||e.push({signalName:t,handler:(e,t)=>k(e,t)}),e),n[15]=k,n[16]=e),j=A.reduce(e,[]),n[12]=k,n[13]=A,n[14]=j}else j=n[14];let M=j,N;n[17]===S?N=n[18]:(N=e=>{o.error(e),o.debug(S),le(e)},n[17]=S,n[18]=N);let P=t(N),F;n[19]===Symbol.for(`react.memo_cache_sentinel`)?(F=e=>{o.debug(`[Vega view] created`,e),ie.current=e,le(void 0)},n[19]=F):F=n[19];let I=t(F),L;n[20]===w?L=n[21]:(L=()=>{let e=[];if(x.hasPoint(w)&&e.push([`Point selection`,`click to select a point; hold shift for multi-select`]),x.hasInterval(w)&&e.push([`Interval selection`,`click and drag to select an interval`]),x.hasLegend(w)&&e.push([`Legend selection`,`click to select a legend item; hold shift for multi-select`]),x.hasPanZoom(w)){let t=a()?`⌘`:`ctrl`;e.push([`Pan`,`hold the ${t} key and drag`],[`Zoom`,`hold the ${t} key and scroll`])}return e.length===0?null:(0,W.jsx)(d,{delayDuration:300,side:`left`,content:(0,W.jsx)(`div`,{className:`text-xs flex flex-col`,children:e.map(ye)}),children:(0,W.jsx)(ee,{className:`absolute bottom-1 right-0 m-2 h-4 w-4 cursor-help text-muted-foreground hover:text-foreground`})})},n[20]=w,n[21]=L);let R=L,z=ne===`dark`?`dark`:void 0,B;n[22]!==v||n[23]!==z?(B={theme:z,actions:v,mode:`vega-lite`,tooltip:re.call,renderer:`canvas`},n[22]=v,n[23]=z,n[24]=B):B=n[24];let V;n[25]!==P||n[26]!==I||n[27]!==S||n[28]!==B?(V={ref:g,spec:S,options:B,onError:P,onEmbed:I},n[25]=P,n[26]=I,n[27]=S,n[28]=B,n[29]=V):V=n[29];let H=ae(V),U;n[30]===S?U=n[31]:(U=ce(S),n[30]=S,n[31]=U);let G=U;fe(g,G===`container`);let K,q;n[32]!==H||n[33]!==M?(K=()=>(M.forEach(e=>{let{signalName:t,handler:n}=e;try{H?.view.addSignalListener(t,n)}catch(e){let t=e;o.error(t)}}),()=>{M.forEach(e=>{let{signalName:t,handler:n}=e;try{H?.view.removeSignalListener(t,n)}catch(e){let t=e;o.error(t)}})}),q=[H,M],n[32]=H,n[33]=M,n[34]=K,n[35]=q):(K=n[34],q=n[35]),(0,pe.useEffect)(K,q);let J;n[36]===_?J=n[37]:(J=_&&(0,W.jsxs)(se,{variant:`destructive`,children:[(0,W.jsx)(oe,{children:_.message}),(0,W.jsx)(`div`,{className:`text-md`,children:_.stack})]}),n[36]=_,n[37]=J);let Y,X;n[38]===Symbol.for(`react.memo_cache_sentinel`)?(Y=l(`relative`),X=f.stopPropagation(),n[38]=Y,n[39]=X):(Y=n[38],X=n[39]);let Z;n[40]===G?Z=n[41]:(Z=(0,W.jsx)(`div`,{ref:g,"data-container-width":G}),n[40]=G,n[41]=Z);let Q;n[42]===R?Q=n[43]:(Q=R(),n[42]=R,n[43]=Q);let $;n[44]!==Z||n[45]!==Q?($=(0,W.jsxs)(`div`,{className:Y,onPointerDown:X,children:[Z,Q]}),n[44]=Z,n[45]=Q,n[46]=$):$=n[46];let be;return n[47]!==J||n[48]!==$?(be=(0,W.jsxs)(W.Fragment,{children:[J,$]}),n[47]=J,n[48]=$,n[49]=be):be=n[49],be};function _e(e){return e instanceof Set?[...e]:e}function ve(e){return Array.isArray(e)?e.map(e=>e instanceof Date&&ne(e)?new Date(e).getTime():e):e}function ye(e,t){return(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`span`,{className:`font-bold tracking-wide`,children:[e[0],`:`]}),` `,e[1]]},t)}export{G as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{t}from"./react-DVplv7_D.js";import{t as n}from"./compiler-runtime-BrajqUja.js";import{t as r}from"./jsx-runtime-B74pBk57.js";import{n as i}from"./react-vega-
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{t}from"./react-DVplv7_D.js";import{t as n}from"./compiler-runtime-BrajqUja.js";import{t as r}from"./jsx-runtime-B74pBk57.js";import{n as i}from"./react-vega-BTNeboR2.js";import{t as a}from"./utils-DfElfBpz.js";import{t as o}from"./use-vega-container-remeasure-BpmHehNK.js";var s=n(),c=e(t(),1),l=r();function u(e){let t=(0,s.c)(4),n=(0,c.useRef)(null),r;t[0]===e.spec?r=t[1]:(r=a(e.spec),t[0]=e.spec,t[1]=r),o(n,r===`container`);let u;return t[2]===e?u=t[3]:(u=(0,l.jsx)(i,{ref:n,...e}),t[2]=e,t[3]=u),u}export{u as VegaEmbedContainer};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{a as e,n as t,r as n,t as r}from"./precisionRound-BxlUs8G4.js";import{i,n as a,r as o,t as s}from"./defaultLocale-CNPGWpMu.js";import{C as c,E as l,P as u,S as d,T as f,_ as p,a as ee,c as te,d as m,i as ne,l as re,n as ie,o as ae,p as oe,r as se,s as ce,t as le,v as ue,w as de,x as h,y as g}from"./defaultLocale-D5bOh7g6.js";function _(e,t,n){return Object.assign(e,{fields:t||[],fname:n})}function fe(e){return e==null?null:e.fname}function pe(e){return e==null?null:e.fields}function me(e){return e.length===1?he(e[0]):ge(e)}var he=e=>function(t){return t[e]},ge=e=>{let t=e.length;return function(n){for(let r=0;r<t;++r)n=n[e[r]];return n}};function v(e){throw Error(e)}function _e(e){let t=[],n=e.length,r=null,i=0,a=``,o,s,c;e+=``;function l(){t.push(a+e.substring(o,s)),a=``,o=s+1}for(o=s=0;s<n;++s)if(c=e[s],c===`\\`)a+=e.substring(o,s++),o=s;else if(c===r)l(),r=null,i=-1;else if(r)continue;else o===i&&c===`"`||o===i&&c===`'`?(o=s+1,r=c):c===`.`&&!i?s>o?l():o=s+1:c===`[`?(s>o&&l(),i=o=s+1):c===`]`&&(i||v(`Access path missing open bracket: `+e),i>0&&l(),i=0,o=s+1);return i&&v(`Access path missing closing bracket: `+e),r&&v(`Access path missing closing quote: `+e),s>o&&(s++,l()),t}function y(e,t,n){let r=_e(e),i=r.length===1?r[0]:e;return _((n&&n.get||me)(r),[i],t||i)}var ve=y(`id`),ye=_(e=>e,[],`identity`),be=_(()=>0,[],`zero`),xe=_(()=>1,[],`one`),Se=_(()=>!0,[],`true`),Ce=_(()=>!1,[],`false`),we=new Set([...Object.getOwnPropertyNames(Object.prototype).filter(e=>typeof Object.prototype[e]==`function`),`__proto__`,`then`]),b=Array.isArray;function x(e){return e===Object(e)}var Te=e=>e!==`__proto__`&&e!==`constructor`&&e!==`prototype`;function Ee(...e){return e.reduce((e,t)=>{for(let n in t)if(n===`signals`)e.signals=Oe(e.signals,t.signals);else{let r=n===`legend`?{layout:1}:n===`style`||null;De(e,n,t[n],r)}return e},{})}function De(e,t,n,r){if(!Te(t))return;let i=e,a,o;if(x(n)&&!b(n)){let e=n;for(a in o=x(i[t])?i[t]:i[t]={},e)r&&(r===!0||r[a])?De(o,a,e[a]):Te(a)&&(o[a]=e[a])}else i[t]=n}function Oe(e,t){if(e==null)return t;if(t==null)return e;let n={},r=[];function i(e){n[e.name]||(n[e.name]=1,r.push(e))}return t.forEach(i),e.forEach(i),r}function ke(e){return e==null||e===``?null:+e}function S(e){return e==null?[]:b(e)?e:[e]}function C(e){return typeof e==`function`}var Ae=`descending`;function je(e,t,n){let r=n||{},i=S(t)||[],a=[],o=[],s={},c=r.comparator||Ne;return S(e).forEach((e,t)=>{if(e==null)return;a.push(i[t]===Ae?-1:1);let n=C(e)?e:y(e,void 0,r);o.push(n),(pe(n)||[]).forEach(e=>s[e]=1)}),o.length===0?null:_(c(o,a),Object.keys(s))}var Me=(e,t)=>{let n=e,r=t;return(n<r||n==null)&&r!=null?-1:(n>r||r==null)&&n!=null?1:(r=r instanceof Date?+r:r,(n=n instanceof Date?+n:n)!==n&&r===r?-1:+(r!==r&&n===n))},Ne=(e,t)=>e.length===1?Pe(e[0],t[0]):Fe(e,t,e.length),Pe=(e,t)=>function(n,r){return Me(e(n),e(r))*t},Fe=(e,t,n)=>(t.push(0),function(r,i){let a,o=0,s=-1;for(;o===0&&++s<n;)a=e[s],o=Me(a(r),a(i));return o*t[s]});function w(e,...t){for(let n of t)for(let t in n)e[t]=n[t];return e}function T(e,t){return Object.hasOwn(e,t)}function Ie(e){return Object.prototype.toString.call(e)===`[object Date]`}function Le(e){return e!=null&&C(e[Symbol.iterator])}function Re(e){return typeof e==`number`}function E(e){return typeof e==`string`}function ze(e,t,n){let r=e?t?S(e).map(e=>e.replace(/\\(.)/g,`$1`)):S(e):void 0,i=r?.length,a=n&&n.get||me,o=e=>a(t?[e]:_e(e)),s;if(!i||!r)s=function(){return``};else if(i===1){let e=o(r[0]);s=function(t){return``+e(t)}}else{let e=r.map(o);s=function(t){let n=``+e[0](t),r=0;for(;++r<i;)n+=`|`+e[r](t);return n}}return _(s,r,`key`)}function D(e){return b(e)?`[${e.map(e=>e===null?`null`:D(e))}]`:x(e)||E(e)?JSON.stringify(e).replaceAll(`\u2028`,`\\u2028`).replaceAll(`\u2029`,`\\u2029`):e}function Be(e){return e==null||e===``?null:!e||e===`false`||e===`0`?!1:!!e}var Ve=e=>Re(e)||Ie(e)?e:Date.parse(e);function He(e,t){return t||=Ve,e==null||e===``?null:t(e)}function Ue(e){return e==null||e===``?null:e+``}var We={},Ge={},Ke=34,O=10,k=13;function qe(e){return Function(`d`,`return {`+e.map(function(e,t){return JSON.stringify(e)+`: d[`+t+`] || ""`}).join(`,`)+`}`)}function Je(e,t){var n=qe(e);return function(r,i){return t(n(r),i,e)}}function Ye(e){var t=Object.create(null),n=[];return e.forEach(function(e){for(var r in e)r in t||n.push(t[r]=r)}),n}function A(e,t){var n=e+``,r=n.length;return r<t?Array(t-r+1).join(0)+n:n}function Xe(e){return e<0?`-`+A(-e,6):e>9999?`+`+A(e,6):A(e,4)}function Ze(e){var t=e.getUTCHours(),n=e.getUTCMinutes(),r=e.getUTCSeconds(),i=e.getUTCMilliseconds();return isNaN(e)?`Invalid Date`:Xe(e.getUTCFullYear(),4)+`-`+A(e.getUTCMonth()+1,2)+`-`+A(e.getUTCDate(),2)+(i?`T`+A(t,2)+`:`+A(n,2)+`:`+A(r,2)+`.`+A(i,3)+`Z`:r?`T`+A(t,2)+`:`+A(n,2)+`:`+A(r,2)+`Z`:n||t?`T`+A(t,2)+`:`+A(n,2)+`Z`:``)}function Qe(e){var t=RegExp(`["`+e+`
|
|
2
|
+
\r]`),n=e.charCodeAt(0);function r(e,t){var n,r,a=i(e,function(e,i){if(n)return n(e,i-1);r=e,n=t?Je(e,t):qe(e)});return a.columns=r||[],a}function i(e,t){var r=[],i=e.length,a=0,o=0,s,c=i<=0,l=!1;e.charCodeAt(i-1)===O&&--i,e.charCodeAt(i-1)===k&&--i;function u(){if(c)return Ge;if(l)return l=!1,We;var t,r=a,o;if(e.charCodeAt(r)===Ke){for(;a++<i&&e.charCodeAt(a)!==Ke||e.charCodeAt(++a)===Ke;);return(t=a)>=i?c=!0:(o=e.charCodeAt(a++))===O?l=!0:o===k&&(l=!0,e.charCodeAt(a)===O&&++a),e.slice(r+1,t-1).replace(/""/g,`"`)}for(;a<i;){if((o=e.charCodeAt(t=a++))===O)l=!0;else if(o===k)l=!0,e.charCodeAt(a)===O&&++a;else if(o!==n)continue;return e.slice(r,t)}return c=!0,e.slice(r,i)}for(;(s=u())!==Ge;){for(var d=[];s!==We&&s!==Ge;)d.push(s),s=u();t&&(d=t(d,o++))==null||r.push(d)}return r}function a(t,n){return t.map(function(t){return n.map(function(e){return u(t[e])}).join(e)})}function o(t,n){return n??=Ye(t),[n.map(u).join(e)].concat(a(t,n)).join(`
|
|
3
|
+
`)}function s(e,t){return t??=Ye(e),a(e,t).join(`
|
|
4
|
+
`)}function c(e){return e.map(l).join(`
|
|
5
|
+
`)}function l(t){return t.map(u).join(e)}function u(e){return e==null?``:e instanceof Date?Ze(e):t.test(e+=``)?`"`+e.replace(/"/g,`""`)+`"`:e}return{parse:r,parseRows:i,format:o,formatBody:s,formatRows:c,formatRow:l,formatValue:u}}function $e(e){return e}function et(e){if(e==null)return $e;var t,n,r=e.scale[0],i=e.scale[1],a=e.translate[0],o=e.translate[1];return function(e,s){s||(t=n=0);var c=2,l=e.length,u=Array(l);for(u[0]=(t+=e[0])*r+a,u[1]=(n+=e[1])*i+o;c<l;)u[c]=e[c],++c;return u}}function tt(e,t){for(var n,r=e.length,i=r-t;i<--r;)n=e[i],e[i++]=e[r],e[r]=n}function nt(e,t){return typeof t==`string`&&(t=e.objects[t]),t.type===`GeometryCollection`?{type:`FeatureCollection`,features:t.geometries.map(function(t){return rt(e,t)})}:rt(e,t)}function rt(e,t){var n=t.id,r=t.bbox,i=t.properties==null?{}:t.properties,a=it(e,t);return n==null&&r==null?{type:`Feature`,properties:i,geometry:a}:r==null?{type:`Feature`,id:n,properties:i,geometry:a}:{type:`Feature`,id:n,bbox:r,properties:i,geometry:a}}function it(e,t){var n=et(e.transform),r=e.arcs;function i(e,t){t.length&&t.pop();for(var i=r[e<0?~e:e],a=0,o=i.length;a<o;++a)t.push(n(i[a],a));e<0&&tt(t,o)}function a(e){return n(e)}function o(e){for(var t=[],n=0,r=e.length;n<r;++n)i(e[n],t);return t.length<2&&t.push(t[0]),t}function s(e){for(var t=o(e);t.length<4;)t.push(t[0]);return t}function c(e){return e.map(s)}function l(e){var t=e.type,n;switch(t){case`GeometryCollection`:return{type:t,geometries:e.geometries.map(l)};case`Point`:n=a(e.coordinates);break;case`MultiPoint`:n=e.coordinates.map(a);break;case`LineString`:n=o(e.arcs);break;case`MultiLineString`:n=e.arcs.map(o);break;case`Polygon`:n=c(e.arcs);break;case`MultiPolygon`:n=e.arcs.map(c);break;default:return null}return{type:t,coordinates:n}}return l(t)}function at(e,t){var n={},r={},i={},a=[],o=-1;t.forEach(function(n,r){var i=e.arcs[n<0?~n:n],a;i.length<3&&!i[1][0]&&!i[1][1]&&(a=t[++o],t[o]=n,t[r]=a)}),t.forEach(function(e){var t=s(e),n=t[0],a=t[1],o,c;if(o=i[n]){if(delete i[o.end],o.push(e),o.end=a,c=r[a]){delete r[c.start];var l=c===o?o:o.concat(c);r[l.start=o.start]=i[l.end=c.end]=l}else r[o.start]=i[o.end]=o}else if(o=r[a]){if(delete r[o.start],o.unshift(e),o.start=n,c=i[n]){delete i[c.end];var u=c===o?o:c.concat(o);r[u.start=c.start]=i[u.end=o.end]=u}else r[o.start]=i[o.end]=o}else o=[e],r[o.start=n]=i[o.end=a]=o});function s(t){var n=e.arcs[t<0?~t:t],r=n[0],i;return e.transform?(i=[0,0],n.forEach(function(e){i[0]+=e[0],i[1]+=e[1]})):i=n[n.length-1],t<0?[i,r]:[r,i]}function c(e,t){for(var r in e){var i=e[r];delete t[i.start],delete i.start,delete i.end,i.forEach(function(e){n[e<0?~e:e]=1}),a.push(i)}}return c(i,r),c(r,i),t.forEach(function(e){n[e<0?~e:e]||a.push([e])}),a}function ot(e){return it(e,st.apply(this,arguments))}function st(e,t,n){var r,i,a;if(arguments.length>1)r=ct(e,t,n);else for(i=0,r=Array(a=e.arcs.length);i<a;++i)r[i]=i;return{type:`MultiLineString`,arcs:at(e,r)}}function ct(e,t,n){var r=[],i=[],a;function o(e){var t=e<0?~e:e;(i[t]||(i[t]=[])).push({i:e,g:a})}function s(e){e.forEach(o)}function c(e){e.forEach(s)}function l(e){e.forEach(c)}function u(e){switch(a=e,e.type){case`GeometryCollection`:e.geometries.forEach(u);break;case`LineString`:s(e.arcs);break;case`MultiLineString`:case`Polygon`:c(e.arcs);break;case`MultiPolygon`:l(e.arcs)}}return u(t),i.forEach(n==null?function(e){r.push(e[0].i)}:function(e){n(e[0].g,e[e.length-1].g)&&r.push(e[0].i)}),r}var j=`year`,M=`quarter`,N=`month`,P=`week`,F=`isoweek`,I=`date`,L=`dayofyear`,R=`hours`,z=`minutes`,B=`seconds`,V=`milliseconds`,lt=[j,M,N,P,F,I,`day`,L,R,z,B,V].reduce((e,t,n)=>(e[t]=1+n,e),{});function ut(e){let t=S(e).slice(),n={};return t.length||v(`Missing time unit.`),t.forEach(e=>{T(lt,e)?n[e]=1:v(`Invalid time unit: ${e}.`)}),((n.week||n.isoweek||n.day?1:0)+(n.quarter||n.month||n.date?1:0)+ +!!n.dayofyear>1||n.week&&n.isoweek)&&v(`Incompatible time units: ${e}`),t.sort((e,t)=>lt[e]-lt[t]),t}var dt={[j]:`%Y `,[M]:`Q%q `,[N]:`%b `,[I]:`%d `,[P]:`W%U `,[F]:`W%V `,day:`%a `,[L]:`%j `,[R]:`%H:00`,[z]:`00:%M`,[B]:`:%S`,[V]:`.%L`,[`${j}-${F}`]:`%G W%V `,[`${j}-${N}`]:`%Y-%m `,[`${j}-${N}-${I}`]:`%Y-%m-%d `,[`${R}-${z}`]:`%H:%M`};function ft(e,t){let n=w({},dt,t),r=ut(e),i=r.length,a=``,o=0,s,c;for(o=0;o<i;)for(s=r.length;s>o;--s)if(c=r.slice(o,s).join(`-`),n[c]!=null){a+=n[c],o=s;break}return a.trim()}var H=new Date;function pt(e){return H.setFullYear(e),H.setMonth(0),H.setDate(1),H.setHours(0,0,0,0),H}function mt(e){return _t(new Date(e))}function ht(e){return vt(new Date(e))}function gt(e){return bt(new Date(e))}function _t(e){return g.count(pt(e.getFullYear())-1,e)}function vt(e){return oe.count(pt(e.getFullYear())-1,e)}function yt(e){return g.offset(m.floor(e),3).getFullYear()}function bt(e){return 1+m.count(xt(yt(e)),e)}function xt(e){return m.floor(g.offset(pt(e),3))}function St(e){return Tt(new Date(e))}function Ct(e){return Et(new Date(e))}function wt(e){return Ot(new Date(e))}function Tt(e){let t=Date.UTC(e.getUTCFullYear(),0,1);return h.count(t-1,e)}function Et(e){let t=Date.UTC(e.getUTCFullYear(),0,1);return ue.count(t-1,e)}function Dt(e){return h.offset(p.floor(e),3).getUTCFullYear()}function Ot(e){return 1+p.count(kt(Dt(e)),e)}function kt(e){return p.floor(h.offset(Date.UTC(e,0,1),3))}P+``,j+F,F+``,P+``,j+F,F+``;var At={[j]:ae,[M]:te.every(3),[N]:te,[P]:oe,[F]:m,[I]:g,day:g,[L]:g,[R]:d,[z]:de,[B]:l,[V]:u},jt={[j]:ce,[M]:re.every(3),[N]:re,[P]:ue,[F]:p,[I]:h,day:h,[L]:h,[R]:c,[z]:f,[B]:l,[V]:u};function U(e){return At[e]}function W(e){return jt[e]}function Mt(e,t,n){return e?e.offset(t,n):void 0}function Nt(e,t,n){return Mt(U(e),t,n)}function Pt(e,t,n){return Mt(W(e),t,n)}function Ft(e,t,n,r){return e?e.range(t,n,r):void 0}function It(e,t,n,r){return Ft(U(e),t,n,r)}function Lt(e,t,n,r){return Ft(W(e),t,n,r)}var G=1e3,K=G*60,q=K*60,Rt=q*24;Rt*7;var zt=Rt*30;Rt*365,[j,N,I,R,z,B,V].slice(0,-1).slice(0,-1).slice(0,-1).slice(0,-1),5*G,15*G,30*G,5*K,15*K,30*K,3*q,6*q,12*q,3*zt;function J(e){let t={};return n=>t[n]||(t[n]=e(n))}function Bt(e,t){return n=>{let r=e(n),i=r.indexOf(t);if(i<0)return r;let a=Vt(r,i),o=a<r.length?r.slice(a):``;for(;--a>i;)if(r[a]!==`0`){++a;break}return r.slice(0,a)+o}}function Vt(e,t){let n=e.lastIndexOf(`e`),r;if(n>0)return n;for(n=e.length;--n>t;)if(r=e.charCodeAt(n),r>=48&&r<=57)return n+1}function Ht(a){let o=J(a.format),s=a.formatPrefix;return{format:o,formatPrefix:s,formatFloat(e){let t=i(e||`,`);if(t.precision==null){switch(t.precision=12,t.type){case`%`:t.precision-=2;break;case`e`:--t.precision}return Bt(o(t),o(`.1f`)(1)[1])}return o(t)},formatSpan(a,c,l,u){u=i(u??`,f`);let d=e(a,c,l),f=Math.max(Math.abs(a),Math.abs(c)),p;if(u.precision==null)switch(u.type){case`s`:return isNaN(p=t(d,f))||(u.precision=p),s(u,f);case``:case`e`:case`g`:case`p`:case`r`:isNaN(p=r(d,f))||(u.precision=p-(u.type===`e`));break;case`f`:case`%`:isNaN(p=n(d))||(u.precision=p-(u.type===`%`)*2)}return o(u)}}}var Ut;Wt();function Wt(){return Ut=Ht({format:s,formatPrefix:a})}function Gt(e){return Ht(o(e))}function Y(e){return arguments.length?Ut=Gt(e):Ut}function Kt(e,t,n){n||={},x(n)||v(`Invalid time multi-format specifier: ${n}`);let r=t(B),i=t(z),a=t(R),o=t(I),s=t(P),c=t(N),l=t(M),u=t(j),d=e(n.milliseconds||`.%L`),f=e(n.seconds||`:%S`),p=e(n.minutes||`%I:%M`),ee=e(n.hours||`%I %p`),te=e(n.date||n.day||`%a %d`),m=e(n.week||`%b %d`),ne=e(n.month||`%B`),re=e(n.quarter||`%B`),ie=e(n.year||`%Y`);return e=>(r(e)<e?d:i(e)<e?f:a(e)<e?p:o(e)<e?ee:c(e)<e?s(e)<e?te:m:u(e)<e?l(e)<e?ne:re:ie)(e)}function qt(e){let t=J(e.format),n=J(e.utcFormat);return{timeFormat:e=>E(e)?t(e):Kt(t,U,e),utcFormat:e=>E(e)?n(e):Kt(n,W,e),timeParse:J(e.parse),utcParse:J(e.utcParse)}}var Jt;Yt();function Yt(){return Jt=qt({format:le,parse:ie,utcFormat:se,utcParse:ne})}function Xt(e){return qt(ee(e))}function X(e){return arguments.length?Jt=Xt(e):Jt}var Zt=(e,t)=>w({},e,t);function Qt(e,t){return Zt(e?Gt(e):Y(),t?Xt(t):X())}function $t(e,t){let n=arguments.length;return n&&n!==2&&v(`defaultLocale expects either zero or two arguments.`),n?Zt(Y(e),X(t)):Zt(Y(),X())}function en(){return Wt(),Yt(),$t()}var tn=/^(data:|([A-Za-z]+:)?\/\/)/,nn=/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp|file|data):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i,rn=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g,an=`file://`;function on(e){return t=>({options:t||{},sanitize:cn,load:sn,fileAccess:!1,file:ln(e),http:dn})}async function sn(e,t){let n=await this.sanitize(e,t),r=n.href;return n.localFile?this.file(r):this.http(r,t?.http)}async function cn(e,t){t=w({},this.options,t);let n=this.fileAccess,r={href:null},i,a,o,s=nn.test(e.replace(rn,``));(e==null||typeof e!=`string`||!s)&&v(`Sanitize failure, invalid URI: `+D(e));let c=tn.test(e);return(o=t.baseURL)&&!c&&(!e.startsWith(`/`)&&!o.endsWith(`/`)&&(e=`/`+e),e=o+e),a=(i=e.startsWith(an))||t.mode===`file`||t.mode!==`http`&&!c&&n,i?e=e.slice(7):e.startsWith(`//`)&&(t.defaultProtocol===`file`?(e=e.slice(2),a=!0):e=(t.defaultProtocol||`http`)+`:`+e),Object.defineProperty(r,"localFile",{value:!!a}),r.href=e,t.target&&(r.target=t.target+``),t.rel&&(r.rel=t.rel+``),t.context===`image`&&t.crossOrigin&&(r.crossOrigin=t.crossOrigin+``),r}function ln(e){return e?t=>new Promise((n,r)=>{e.readFile(t,(e,t)=>{e?r(e):n(t)})}):un}async function un(){v(`No file system access.`)}async function dn(e,t){let n=w({},this.options.http,t),r=t&&t.response,i=await fetch(e,n);return i.ok?C(i[r])?i[r]():i.text():v(i.status+``+i.statusText)}var fn=e=>e!=null&&e===e,pn=e=>e===`true`||e===`false`||e===!0||e===!1,mn=e=>!Number.isNaN(Date.parse(e)),hn=e=>!Number.isNaN(+e)&&!(e instanceof Date),gn=e=>hn(e)&&Number.isInteger(+e),Z={boolean:Be,integer:ke,number:ke,date:He,string:Ue,unknown:ye},Q=[pn,gn,hn,mn],_n=[`boolean`,`integer`,`number`,`date`];function vn(e,t){if(!e||!e.length)return`unknown`;let n=e.length,r=Q.length,i=Q.map((e,t)=>t+1);for(let a=0,o=0,s,c;a<n;++a)for(c=t?e[a][t]:e[a],s=0;s<r;++s)if(i[s]&&fn(c)&&!Q[s](c)&&(i[s]=0,++o,o===Q.length))return`string`;return _n[i.reduce((e,t)=>e===0?t:e,0)-1]}function yn(e,t){return t.reduce((t,n)=>(t[n]=vn(e,n),t),{})}function bn(e){let t=function(t,n){let r={delimiter:e};return xn(t,n?w(n,r):r)};return t.responseType=`text`,t}function xn(e,t){return t.header&&(e=t.header.map(D).join(t.delimiter)+`
|
|
6
|
+
`+e),Qe(t.delimiter).parse(e+``)}xn.responseType=`text`;function Sn(e){return typeof Buffer==`function`&&C(Buffer.isBuffer)?Buffer.isBuffer(e):!1}function Cn(e,t){let n=t&&t.property?y(t.property):ye;return x(e)&&!Sn(e)?wn(n(e),t):n(JSON.parse(e))}Cn.responseType=`json`;function wn(e,t){return!b(e)&&Le(e)&&(e=[...e]),t&&t.copy?JSON.parse(JSON.stringify(e)):e}var Tn={interior:(e,t)=>e!==t,exterior:(e,t)=>e===t};function En(e,t){let n,r,i,a;return e=Cn(e,t),t&&t.feature?(n=nt,i=t.feature):t&&t.mesh?(n=ot,i=t.mesh,a=Tn[t.filter]):v(`Missing TopoJSON feature or mesh parameter.`),r=(r=e.objects[i])?n(e,r,a):v(`Invalid TopoJSON object: `+i),r&&r.features||[r]}En.responseType=`json`;var $={dsv:xn,csv:bn(`,`),tsv:bn(` `),json:Cn,topojson:En};function Dn(e,t){return arguments.length>1?($[e]=t,this):T($,e)?$[e]:null}function On(e){let t=Dn(e);return t&&t.responseType||`text`}function kn(e,t,n,r){t||={};let i=Dn(t.type||`json`);return i||v(`Unknown data format type: `+t.type),e=i(e,t),t.parse&&An(e,t.parse,n,r),T(e,`columns`)&&delete e.columns,e}function An(e,t,n,r){if(!e.length)return;let i=X();n||=i.timeParse,r||=i.utcParse;let a=e.columns||Object.keys(e[0]),o,s,c,l,u,d;t===`auto`&&(t=yn(e,a)),a=Object.keys(t);let f=a.map(e=>{let i=t[e],a,o;if(i&&(i.startsWith(`date:`)||i.startsWith(`utc:`)))return a=i.split(/:(.+)?/,2),o=a[1],(o[0]===`'`&&o[o.length-1]===`'`||o[0]===`"`&&o[o.length-1]===`"`)&&(o=o.slice(1,-1)),(a[0]===`utc`?r:n)(o);if(!Z[i])throw Error(`Illegal format pattern: `+e+`:`+i);return Z[i]});for(c=0,u=e.length,d=a.length;c<u;++c)for(o=e[c],l=0;l<d;++l)s=a[l],o[s]=f[l](o[s])}var jn=on(null);export{be as $,D as A,C as B,St as C,Ue as D,ht as E,Ie as F,x as G,ke as H,T as I,Ce as J,b as K,w as L,E as M,Re as N,He as O,Le as P,Se as Q,Me as R,Lt as S,Ct as T,Ee as U,S as V,De as W,ye as X,ve as Y,xe as Z,Nt as _,jn as a,fe as at,W as b,Z as c,Y as d,y as et,en as f,U as g,gt as h,yn as i,pe as it,ze as j,Be as k,$t as l,mt as m,Dn as n,v as nt,kn as o,X as p,we as q,vn as r,_ as rt,On as s,$ as t,_e as tt,Qt as u,It as v,wt as w,Pt as x,ft as y,je as z};
|
|
@@ -54,7 +54,7 @@ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=
|
|
|
54
54
|
|
|
55
55
|
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}r.count>1&&e.reused===`ref`&&a(n)}e.external&&(e.sharedDefsExtractedFor=e.external)}function Sa(e){let t=e.anyOf;if(!Array.isArray(t)||t.length===0||e.type!==void 0)return;let n=[];for(let e of t){if(!e||typeof e!=`object`)return;Sa(e);let t=Object.keys(e);if(t.length!==1||t[0]!==`type`)return;let r=e.type;for(let e of Array.isArray(r)?r:[r]){if(typeof e!=`string`)return;n.includes(e)||n.push(e)}}delete e.anyOf,e.type=n.length===1?n[0]:n}const Ca=new Set([`type`,`properties`,`required`,`additionalProperties`]),wa=[`oneOf`,`anyOf`];function Ta(e){let t=e.additionalProperties;return t===void 0||t===!1||typeof t!=`object`||!t?null:Object.keys(t).length?t:null}function Ea(e){let t=[];for(let n of e){if(typeof n!=`object`||n.type!==`object`)return null;for(let e in n)if(!Ca.has(e))return null;t.push(n)}let n={},r=new Set;for(let e of t){for(let r in e.properties){if(Object.prototype.hasOwnProperty.call(n,r))continue;let e=[];for(let n of t){let t=n.properties?.[r]??Ta(n);t!=null&&(e.some(e=>JSON.stringify(e)===JSON.stringify(t))||e.push(t))}v(n,r,e.length===1?e[0]:Ea(e)??{allOf:e})}for(let t of e.required??[])r.add(t)}let i={type:`object`,properties:n};if(r.size&&(i.required=[...r]),t.every(e=>e.additionalProperties===!1))i.additionalProperties=!1;else{let e=[];for(let n of t){let t=Ta(n);t&&!e.some(e=>JSON.stringify(e)===JSON.stringify(t))&&e.push(t)}e.length===1?i.additionalProperties=e[0]:e.length>1&&(i.additionalProperties={allOf:e})}return i}function Da(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let t of Ca)if(t in e)return;let n=t.filter(e=>wa.some(t=>Array.isArray(e[t]))),r=null;if(!n.length)r=Ea(t);else{let e=n[0],i=wa.find(t=>Array.isArray(e[t]));if(Object.keys(e).length!==1)return;let a=t.filter(t=>t!==e),o=e[i].map(e=>Ea([...a,e]));if(o.some(e=>!e))return;r={[i]:o}}r&&(delete e.allOf,_a(e,r))}function Oa(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):_a(i,s),_a(i,a),t._zod.parent===o)for(let e in i)e!==`$ref`&&e!==`allOf`&&(e in a||delete i[e]);if(s.$ref&&n.def)for(let e in i)e!==`$ref`&&e!==`allOf`&&e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e!==`$ref`&&e!==`allOf`&&e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};if(!e.external||e.sharedEmitDoneFor!==e.external){for(let t of[...e.seen.entries()].reverse())r(t[0]);if(e.target!==`openapi-3.0`)for(let t of e.seen.entries())Sa(t[1].def??t[1].schema);for(let t of e.deferred)t();if(e.intersections.length){let t=new Map;for(let n of e.seen.values())for(let e of[n.schema,n.def]){let n=e?.allOf;if(!Array.isArray(n))continue;let r=t.get(n);r?r.push(e):t.set(n,[e])}for(let n of e.intersections)for(let e of t.get(n)??[])Da(e)}}let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}_a(i,n.defId?n.schema:n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;a!==void 0&&i.id===a&&delete i.id;let o=e.external?.defs??{};if(!e.external||e.sharedEmitDoneFor!==e.external)for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,v(o,e.defId,e.def))}e.external&&(e.sharedEmitDoneFor=e.external),e.external||Object.keys(o).length>0&&(e.target===`draft-2020-12`?i.$defs=o:i.definitions=o);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,"~standard",{value:{...t[`~standard`],jsonSchema:{input:Aa(t,`input`,e.processors),output:Aa(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function I(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return I(r.element,n);if(r.type===`set`)return I(r.valueType,n);if(r.type===`lazy`)return I(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type==="default"||r.type===`prefault`||r.type===`catch`)return I(r.innerType,n);if(r.type===`intersection`)return I(r.left,n)||I(r.right,n);if(r.type===`record`||r.type===`map`)return I(r.keyType,n)||I(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:I(r.in,n)||I(r.out,n);if(r.type===`object`){for(let e in r.shape)if(I(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(I(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(I(e,n))return!0;return!!(r.rest&&I(r.rest,n))}return!1}const ka=(e,t={})=>n=>{let r=va({...n,processors:t});return F(e,r),xa(r,e),Oa(r,e)},Aa=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=va({...i??{},target:a,io:t,processors:n});return F(e,o),xa(o,e),Oa(o,e)},L=(e,t,n)=>{(e[t]===void 0||n>e[t])&&(e[t]=n)},R=(e,t,n)=>{(e[t]===void 0||n<e[t])&&(e[t]=n)},ja=(e,t)=>{L(e,`minimum`,t),R(e,`maximum`,t)},Ma=(e,t)=>{e.multipleOf??=[],e.multipleOf.includes(t)||e.multipleOf.push(t)},Na=(e,t)=>{e.patterns??=new Set,e.patterns.add(t)},Pa=(e,t)=>{e.mime=e.mime?e.mime.filter(e=>t.includes(e)):[...t]},Fa=(e,t)=>{e.format=t,t.includes(`int`)&&(e.isInt=!0)},Ia=(e,t)=>L(e,`minimum`,t.minimum),La=(e,t)=>R(e,`maximum`,t.maximum),Ra=e=>(t,n)=>{Fa(t,n.format);let[r,i]=e[n.format];L(t,`minimum`,r),R(t,`maximum`,i)},za={greater_than:(e,t)=>L(e,t.inclusive?`minimum`:`exclusiveMinimum`,t.value),less_than:(e,t)=>R(e,t.inclusive?`maximum`:`exclusiveMaximum`,t.value),multiple_of:(e,t)=>Ma(e,t.value),number_format:Ra(Pe),bigint_format:Ra(Fe),min_length:Ia,max_length:La,length_equals:(e,t)=>ja(e,t.length),min_size:Ia,max_size:La,size_equals:(e,t)=>ja(e,t.size),string_format:(e,t)=>{Fa(e,t.format),t.pattern&&Na(e,t.pattern),(t.format===`base64`||t.format===`base64url`)&&(e.contentEncoding=t.format),(t.local||t.precision===-1)&&(e.laxFormat=!0)},mime_type:(e,t)=>Pa(e,t.mime)};function Ba(e){let t={},n=e._zod.def,r=e._zod.traits.has(`$ZodCheck`)?[e,...n.checks??[]]:n.checks??[];for(let e of r)za[e._zod.def.check]?.(t,e._zod.def);let i=e._zod.bag;i.minimum!==void 0&&L(t,`minimum`,i.minimum),i.exclusiveMinimum!==void 0&&L(t,`exclusiveMinimum`,i.exclusiveMinimum),i.maximum!==void 0&&R(t,`maximum`,i.maximum),i.exclusiveMaximum!==void 0&&R(t,`exclusiveMaximum`,i.exclusiveMaximum),i.multipleOf!==void 0&&Ma(t,i.multipleOf),i.format!==void 0&&(t.format??=i.format,i.format.includes(`int`)&&(t.isInt=!0)),i.mime&&Pa(t,i.mime);for(let e of i.patterns??[])Na(t,e);return t}const Va={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},Ha=new Map([[mr,sn],[gr,cn]]),Ua=e=>Ha.get(e)??e,Wa=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l,laxFormat:u}=Ba(e);if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=Va[s]??s,i.format===``&&delete i.format,(s===`time`||u)&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c].map(Ua);e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},Ga=(e,t,n,r)=>{n.not={}},Ka=(e,t,n,r)=>{let i=e._zod.def,a=fe(i.entries);if(a.length===0){n.not={};return}a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},qa=(e,t,n,r)=>{ya(e,t,n,r,`Custom types cannot be represented in JSON Schema`)},Ja=(e,t,n,r)=>{ya(e,t,n,r,`Transforms cannot be represented in JSON Schema`)},Ya=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=Ba(e);typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=F(a.element,t,{...r,path:[...r.path,`items`]})};function Xa(e){let t=e._zod.def;return t.type===`pipe`&&t.in._zod.traits.has(`$ZodTransform`)?Xa(t.out):t.type===`catch`?Xa(t.innerType):e._zod.optin}const Za=(e,t,n,r)=>{let i=n,a=e._zod.def,o=a.shape;if(Object.getOwnPropertySymbols(o).length&&ya(e,t,i,r,`Symbol keys cannot be represented in JSON Schema`))return;i.type=`object`,i.properties={};for(let e in o)v(i.properties,e,F(o[e],t,{...r,path:[...r.path,`properties`,e]}));let s=[];for(let e of Object.keys(o)){let n=a.shape[e];(t.io===`input`?Xa(n)===void 0:n._zod.optout===void 0)&&s.push(e)}s.length>0&&(i.required=s),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=F(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},Qa=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>F(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},$a=(e,t,n,r)=>{let i=e._zod.def,a=F(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=F(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1,c=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]];n.allOf=c,t.intersections.push(c)},eo=(e,t,n,r)=>{let i=e._zod.def,a=F(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},to=(e,t,n,r)=>{let i=e._zod.def;F(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},no=Symbol();function ro(e,t,n,r,i){let a=!1,o=JSON.stringify(e,(e,t)=>typeof t==`bigint`?(a=!0,null):t);return a?(ya(t,n,r,i,`BigInt defaults cannot be represented in JSON Schema`),no):JSON.parse(o)}const io=(e,t,n,r)=>{let i=e._zod.def;F(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o=ro(i.defaultValue,e,t,n,r);o!==no&&(n.default=o)},ao=(e,t,n,r)=>{let i=e._zod.def;F(i.innerType,t,r);let a=t.seen.get(e);if(a.ref=i.innerType,t.io!==`input`)return;let o=ro(i.defaultValue,e,t,n,r);o!==no&&(n._prefault=o)},oo=(e,t,n,r)=>{let i=e._zod.def;F(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{ya(e,t,n,r,`Dynamic catch values are not supported in JSON Schema`);return}n.default=o},so=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has(`$ZodTransform`),o=t.io===`input`?a?i.out:i.in:i.out;F(o,t,r);let s=t.seen.get(e);s.ref=o},co=(e,t,n,r)=>{let i=e._zod.def;F(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},lo=(e,t,n,r)=>{let i=e._zod.def;F(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},uo=new WeakSet([Object.prototype,Error.prototype]);function fo(e,t,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,get(){let e=n(this);return Object.defineProperty(this,t,{value:e,configurable:!0,writable:!0}),e},set(e){Object.defineProperty(this,t,{value:e,configurable:!0,writable:!0})}})}const z=O(`ZodError`,(e,t)=>{xt.init(e,t),e.name=`ZodError`;let n=Object.getPrototypeOf(e);uo.has(n)||(uo.add(n),fo(n,`format`,e=>t=>wt(e,t)),fo(n,`flatten`,e=>t=>Ct(e,t)),fo(n,`addIssue`,e=>t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,me,2)}),fo(n,`addIssues`,e=>t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,me,2)}),Object.defineProperty(n,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}}))},void 0,{Parent:Error}),po=Et(z),mo=Dt(z),ho=Ot(z),go=At(z),_o=It(z),vo=Lt(z),yo=Rt(z),bo=zt(z),xo=Bt(z),So=Vt(z),Co=Ht(z),wo=Ut(z);function To(){A.localeError||j(_i())}function Eo(){A.memoizer||j({memoizer:mi()})}const B=O(`ZodType`,(e,t)=>(To(),N.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(x(t,{checks:[...t.checks??[],...e.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return S(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(Ps(e,t))},superRefine(e,t){return this.check(Fs(e,t))},overwrite(e){return this.check(sa(e))},optional(){return gs(this)},exactOptional(){return vs(this)},nullable(){return bs(this)},nullish(){return gs(bs(this))},nonoptional(e){return Es(this,e)},array(){return is(this)},or(e){return cs([this,e])},and(e){return us(this,e)},transform(e){return As(this,ms(e))},default(e){return Ss(this,e)},prefault(e){return ws(this,e)},catch(e){return Os(this,e)},pipe(e){return As(this,e)},readonly(){return Ms(this)},describe(e){let t=this.clone();return xi.add(t,{description:e}),t},meta(...e){if(e.length===0)return xi.get(this);let t=this.clone();return xi.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e,...t){return t.length===0?e(this):e(this,...t)},get"~standard"(){return tt(this,`~standard`,{...In(this),jsonSchema:{input:Aa(this,`input`),output:Aa(this,`output`)}})},set"~standard"(e){E(this,`~standard`,e)},parse:function e(t,n){return po(this,t,n,{callee:e})},parseAsync:async function e(t,n){return await mo(this,t,n,{callee:e})},safeParse(e,t){return ho(this,e,t)},async safeParseAsync(e,t){return go(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){E(this,`spa`,e)},validate(e,t){return Nt(this,e,t)},validateAsync(e,t){return Ft(this,e,t)},encode:function e(t,n){return _o(this,t,n,{callee:e})},decode:function e(t,n){return vo(this,t,n,{callee:e})},encodeAsync:async function e(t,n){return await yo(this,t,n,{callee:e})},decodeAsync:async function e(t,n){return await bo(this,t,n,{callee:e})},safeEncode(e,t){return xo(this,e,t)},safeDecode(e,t){return So(this,e,t)},async safeEncodeAsync(e,t){return Co(this,e,t)},async safeDecodeAsync(e,t){return wo(this,e,t)},toJSONSchema(e){return ka(this,{})(e)},get description(){return xi.get(this)?.description},get _def(){return this._zod.def}}),Do=O(`_ZodString`,(e,t)=>{Ln.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Wa(e,t,n,r)},nt({format:e=>Ba(e).format??null,minLength:e=>Ba(e).minimum??null,maxLength:e=>Ba(e).maximum??null},{regex(...e){return this.check(ta(...e))},includes(...e){return this.check(ia(...e))},startsWith(...e){return this.check(aa(...e))},endsWith(...e){return this.check(oa(...e))},min(...e){return this.check($i(...e))},max(...e){return this.check(Qi(...e))},length(...e){return this.check(ea(...e))},nonempty(...e){return this.check($i(1,...e))},lowercase(e){return this.check(na(e))},uppercase(e){return this.check(ra(e))},trim(){return this.check(la())},normalize(...e){return this.check(ca(...e))},toLowerCase(){return this.check(ua())},toUpperCase(){return this.check(da())},slugify(){return this.check(fa())}})),Oo=O(`ZodString`,(e,t)=>{Ln.init(e,t),Do.init(e,t)},{email(e){return this.check(wi(Po,e))},url(e){return this.check(Ai(Lo,e))},jwt(e){return this.check(Gi(Qo,e))},emoji(e){return this.check(ji(Ro,e))},guid(e){return this.check(Ti(Fo,e))},uuid(e){return this.check(Ei(Io,e))},uuidv4(e){return this.check(Di(Io,e))},uuidv6(e){return this.check(Oi(Io,e))},uuidv7(e){return this.check(ki(Io,e))},nanoid(e){return this.check(Mi(zo,e))},cuid(e){return this.check(Ni(Bo,e))},cuid2(e){return this.check(Pi(Vo,e))},ulid(e){return this.check(Fi(Ho,e))},base64(e){return this.check(Hi(Yo,e))},base64url(e){return this.check(Ui(Xo,e))},xid(e){return this.check(Ii(Uo,e))},ksuid(e){return this.check(Li(Wo,e))},ipv4(e){return this.check(Ri(Go,e))},ipv6(e){return this.check(zi(Ko,e))},cidrv4(e){return this.check(Bi(qo,e))},cidrv6(e){return this.check(Vi(Jo,e))},e164(e){return this.check(Wi(Zo,e))},datetime(e){return this.check(Ki(Ao,e))},date(e){return this.check(qi(jo,e))},time(e){return this.check(Ji(Mo,e))},duration(e){return this.check(Yi(No,e))}});function ko(e){return Ci(Oo,e)}const V=O(`ZodStringFormat`,(e,t)=>{P.init(e,t),Do.init(e,t)}),Ao=O(`ZodISODateTime`,(e,t)=>{nr.init(e,t),V.init(e,t)}),jo=O(`ZodISODate`,(e,t)=>{rr.init(e,t),V.init(e,t)}),Mo=O(`ZodISOTime`,(e,t)=>{ir.init(e,t),V.init(e,t)}),No=O(`ZodISODuration`,(e,t)=>{ar.init(e,t),V.init(e,t)}),Po=O(`ZodEmail`,(e,t)=>{Bn.init(e,t),V.init(e,t)}),Fo=O(`ZodGUID`,(e,t)=>{Rn.init(e,t),V.init(e,t)}),Io=O(`ZodUUID`,(e,t)=>{zn.init(e,t),V.init(e,t)}),Lo=O(`ZodURL`,(e,t)=>{Jn.init(e,t),V.init(e,t)}),Ro=O(`ZodEmoji`,(e,t)=>{Yn.init(e,t),V.init(e,t)}),zo=O(`ZodNanoID`,(e,t)=>{Xn.init(e,t),V.init(e,t)}),Bo=O(`ZodCUID`,(e,t)=>{Zn.init(e,t),V.init(e,t)}),Vo=O(`ZodCUID2`,(e,t)=>{Qn.init(e,t),V.init(e,t)}),Ho=O(`ZodULID`,(e,t)=>{$n.init(e,t),V.init(e,t)}),Uo=O(`ZodXID`,(e,t)=>{er.init(e,t),V.init(e,t)}),Wo=O(`ZodKSUID`,(e,t)=>{tr.init(e,t),V.init(e,t)}),Go=O(`ZodIPv4`,(e,t)=>{or.init(e,t),V.init(e,t)}),Ko=O(`ZodIPv6`,(e,t)=>{lr.init(e,t),V.init(e,t)}),qo=O(`ZodCIDRv4`,(e,t)=>{ur.init(e,t),V.init(e,t)}),Jo=O(`ZodCIDRv6`,(e,t)=>{fr.init(e,t),V.init(e,t)}),Yo=O(`ZodBase64`,(e,t)=>{hr.init(e,t),V.init(e,t)}),Xo=O(`ZodBase64URL`,(e,t)=>{vr.init(e,t),V.init(e,t)}),Zo=O(`ZodE164`,(e,t)=>{yr.init(e,t),V.init(e,t)}),Qo=O(`ZodJWT`,(e,t)=>{xr.init(e,t),V.init(e,t)}),$o=O(`ZodUnknown`,(e,t)=>{Sr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function es(){return Xi($o)}const ts=O(`ZodNever`,(e,t)=>{Cr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ga(e,t,n,r)});function ns(e){return Zi(ts,e)}const rs=O(`ZodArray`,(e,t)=>{Eo(),Tr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ya(e,t,n,r),e.element=t.element},{min(e,t){return this.check($i(e,t))},nonempty(e){return this.check($i(1,e))},max(e,t){return this.check(Qi(e,t))},length(e,t){return this.check(ea(e,t))},unwrap(){return this.element}});function is(e,t){return pa(rs,e,t)}const as=O(`ZodObject`,(e,t)=>{Eo(),jr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Za(e,t,n,r),ct(e,`shape`,e=>e._zod.def.shape,!1)},{keyof(){return fs(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(x(this._zod.def,{catchall:e}))},passthrough(){return this.clone(x(this._zod.def,{catchall:es()}))},loose(){return this.clone(x(this._zod.def,{catchall:es()}))},strict(){return this.clone(x(this._zod.def,{catchall:ns()}))},strip(){return this.clone(x(this._zod.def,{catchall:void 0}))},extend(e){return ze(this,e)},safeExtend(e){return Ve(this,e)},merge(e){return He(this,e)},pick(e){return Ie(this,e)},omit(e){return Re(this,e)},partial(...e){return Ue(hs,this,e[0])},exactPartial(...e){return Ue(_s,this,e[0],`exactPartial`)},required(...e){return We(Ts,this,e[0])}});function os(e,t){let n={type:`object`,shape:e??{},...C(t)};return new as(n)}const ss=O(`ZodUnion`,(e,t)=>{Nr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Qa(e,t,n,r),e.options=t.options});function cs(e,t){return new ss({type:`union`,options:e,...C(t)})}const ls=O(`ZodIntersection`,(e,t)=>{Pr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>$a(e,t,n,r)});function us(e,t){return new ls({type:`intersection`,left:e,right:t})}const ds=O(`ZodEnum`,(e,t)=>{Lr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ka(e,t,n,r),e.enum=t.entries,e.options=[...e._zod.values];let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new ds({...t,checks:[],...C(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new ds({...t,checks:[],...C(r),entries:i})}});function fs(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e;return new ds({type:`enum`,entries:n,...C(t)})}const ps=O(`ZodTransform`,(e,t)=>{Eo(),Rr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ja(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new mt(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push($e(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,`input`in t||(t.input=n.value),t.inst??=e,n.issues.push($e(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function ms(e){return new ps({type:`transform`,transform:e})}const hs=O(`ZodOptional`,(e,t)=>{Br.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>lo(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function gs(e){return new hs({type:`optional`,innerType:e})}const _s=O(`ZodExactOptional`,(e,t)=>{Vr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>lo(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function vs(e){return new _s({type:`optional`,innerType:e})}const ys=O(`ZodNullable`,(e,t)=>{Hr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>eo(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function bs(e){return new ys({type:`nullable`,innerType:e})}const xs=O(`ZodDefault`,(e,t)=>{Ur.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>io(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Ss(e,t){return new xs({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():ke(t)}})}const Cs=O(`ZodPrefault`,(e,t)=>{Gr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ao(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function ws(e,t){return new Cs({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():ke(t)}})}const Ts=O(`ZodNonOptional`,(e,t)=>{Kr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>to(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Es(e,t){return new Ts({type:`nonoptional`,innerType:e,...C(t)})}const Ds=O(`ZodCatch`,(e,t)=>{Yr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>oo(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Os(e,t){return new Ds({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:lt(t)})}const ks=O(`ZodPipe`,(e,t)=>{Xr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>so(e,t,n,r),e.in=t.in,e.out=t.out});function As(e,t){return new ks({type:`pipe`,in:e,out:t})}const js=O(`ZodReadonly`,(e,t)=>{Qr.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>co(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Ms(e){return new js({type:`readonly`,innerType:e})}const Ns=O(`ZodCustom`,(e,t)=>{ei.init(e,t),B.init(e,t),e._zod.processJSONSchema=(t,n,r)=>qa(e,t,n,r)});function Ps(e,t={}){return ma(Ns,e,t)}function Fs(e,t){return ha(e,t)}const Is=os({detail:ko()}),Ls=os({error:ko()});function Rs(e){if(!e)return`Unknown error`;if(e instanceof Error){let t=Is.safeParse(e.cause);return t.success?t.data.detail:zs(e.message)}if(typeof e==`object`){let t=Is.safeParse(e);if(t.success)return t.data.detail;let n=Ls.safeParse(e);if(n.success)return n.data.error}try{return JSON.stringify(e)}catch{return String(e)}}function zs(e){let t=Bs(e);if(!t)return e;let n=Is.safeParse(t);if(n.success)return n.data.detail;let r=Ls.safeParse(t);return r.success?r.data.error:e}function Bs(e){try{return JSON.parse(e)}catch{return e}}function Vs(e){return e.FS}const Hs=`notebook.py`,Us=`/marimo`,H={NOTEBOOK_FILENAME:Hs,HOME_DIR:Us,createHomeDir:e=>{let t=Vs(e);try{t.mkdirTree(Us)}catch{}t.chdir(Us)},mountFS:e=>{globalThis.origin!==`null`&&Vs(e).mount(e.FS.filesystems.IDBFS,{root:`.`},Us)},populateFilesToMemory:async e=>{await Ws(e,!0)},persistFilesToRemote:async e=>{await Ws(e,!1)},readNotebook:e=>{let t=Vs(e),n=`${Us}/${Hs}`;return le(t.readFile(n))},initNotebookCode:e=>{let{pyodide:t,filename:n,code:r}=e,i=Vs(t),a=e=>{try{return le(i.readFile(e))}catch{return null}};if(n&&n!==Hs){let e=a(n);if(e)return{code:e,filename:n}}return i.writeFile(Hs,r),{code:r,filename:Hs}}};function Ws(e,t){return new Promise((n,r)=>{Vs(e).syncfs(t,e=>{if(e instanceof Error){r(e);return}n()})})}var Gs=Object.defineProperty,U=(e,t)=>Gs(e,`name`,{value:t,configurable:!0}),Ks=(e=>typeof l<`u`?l:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof l<`u`?l:e)[t]}):e)(function(e){if(typeof l<`u`)return l.apply(this,arguments);throw Error(`Dynamic require of "`+e+`" is not supported`)}),qs=(()=>{for(var e=new Uint8Array(128),t=0;t<64;t++)e[t<26?t+65:t<52?t+71:t<62?t-4:t*4-205]=t;return t=>{for(var n=t.length,r=new Uint8Array((n-(t[n-1]==`=`)-(t[n-2]==`=`))*3/4|0),i=0,a=0;i<n;){var o=e[t.charCodeAt(i++)],s=e[t.charCodeAt(i++)],c=e[t.charCodeAt(i++)],l=e[t.charCodeAt(i++)];r[a++]=o<<2|s>>4,r[a++]=s<<4|c>>2,r[a++]=c<<6|l}return r}})();function Js(e){return!isNaN(parseFloat(e))&&isFinite(e)}U(Js,`_isNumber`);function W(e){return e.charAt(0).toUpperCase()+e.substring(1)}U(W,`_capitalize`);function Ys(e){return function(){return this[e]}}U(Ys,`_getter`);var G=[`isConstructor`,`isEval`,`isNative`,`isToplevel`],Xs=[`columnNumber`,`lineNumber`],Zs=[`fileName`,`functionName`,`source`],Qs=G.concat(Xs,Zs,[`args`],[`evalOrigin`]);function K(e){if(e)for(var t=0;t<Qs.length;t++)e[Qs[t]]!==void 0&&this[`set`+W(Qs[t])](e[Qs[t]])}for(U(K,`StackFrame`),K.prototype={getArgs:U(function(){return this.args},`getArgs`),setArgs:U(function(e){if(Object.prototype.toString.call(e)!==`[object Array]`)throw TypeError(`Args must be an Array`);this.args=e},`setArgs`),getEvalOrigin:U(function(){return this.evalOrigin},`getEvalOrigin`),setEvalOrigin:U(function(e){if(e instanceof K)this.evalOrigin=e;else if(e instanceof Object)this.evalOrigin=new K(e);else throw TypeError(`Eval Origin must be an Object or StackFrame`)},`setEvalOrigin`),toString:U(function(){var e=this.getFileName()||``,t=this.getLineNumber()||``,n=this.getColumnNumber()||``,r=this.getFunctionName()||``;return this.getIsEval()?e?`[eval] (`+e+`:`+t+`:`+n+`)`:`[eval]:`+t+`:`+n:r?r+` (`+e+`:`+t+`:`+n+`)`:e+`:`+t+`:`+n},`toString`)},K.fromString=U(function(e){var t=e.indexOf(`(`),n=e.lastIndexOf(`)`),r=e.substring(0,t),i=e.substring(t+1,n).split(`,`),a=e.substring(n+1);if(a.indexOf(`@`)===0)var o=/@(.+?)(?::(\d+))?(?::(\d+))?$/.exec(a,``),s=o[1],c=o[2],l=o[3];return new K({functionName:r,args:i||void 0,fileName:s,lineNumber:c||void 0,columnNumber:l||void 0})},`StackFrame$$fromString`),q=0;q<G.length;q++)K.prototype[`get`+W(G[q])]=Ys(G[q]),K.prototype[`set`+W(G[q])]=function(e){return function(t){this[e]=!!t}}(G[q]);var q;for(J=0;J<Xs.length;J++)K.prototype[`get`+W(Xs[J])]=Ys(Xs[J]),K.prototype[`set`+W(Xs[J])]=function(e){return function(t){if(!Js(t))throw TypeError(e+` must be a Number`);this[e]=Number(t)}}(Xs[J]);var J;for(Y=0;Y<Zs.length;Y++)K.prototype[`get`+W(Zs[Y])]=Ys(Zs[Y]),K.prototype[`set`+W(Zs[Y])]=function(e){return function(t){this[e]=String(t)}}(Zs[Y]);var Y,$s=K;function ec(){var e=/^\s*at .*(\S+:\d+|\(native\))/m,t=/^(eval@)?(\[native code])?$/;return{parse:U(function(t){if(t.stack&&t.stack.match(e))return this.parseV8OrIE(t);if(t.stack)return this.parseFFOrSafari(t);throw Error(`Cannot parse given Error object`)},`ErrorStackParser$$parse`),extractLocation:U(function(e){if(e.indexOf(`:`)===-1)return[e];var t=/(.+?)(?::(\d+))?(?::(\d+))?$/.exec(e.replace(/[()]/g,``));return[t[1],t[2]||void 0,t[3]||void 0]},`ErrorStackParser$$extractLocation`),parseV8OrIE:U(function(t){return t.stack.split(`
|
|
56
56
|
`).filter(function(t){return!!t.match(e)},this).map(function(e){e.indexOf(`(eval `)>-1&&(e=e.replace(/eval code/g,`eval`).replace(/(\(eval at [^()]*)|(,.*$)/g,``));var t=e.replace(/^\s+/,``).replace(/\(eval code/g,`(`).replace(/^.*?\s+/,``),n=t.match(/ (\(.+\)$)/);t=n?t.replace(n[0],``):t;var r=this.extractLocation(n?n[1]:t);return new $s({functionName:n&&t||void 0,fileName:[`eval`,`<anonymous>`].indexOf(r[0])>-1?void 0:r[0],lineNumber:r[1],columnNumber:r[2],source:e})},this)},`ErrorStackParser$$parseV8OrIE`),parseFFOrSafari:U(function(e){return e.stack.split(`
|
|
57
|
-
`).filter(function(e){return!e.match(t)},this).map(function(e){if(e.indexOf(` > eval`)>-1&&(e=e.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,`:$1`)),e.indexOf(`@`)===-1&&e.indexOf(`:`)===-1)return new $s({functionName:e});var t=/((.*".+"[^@]*)?[^@]*)(?:@)/,n=e.match(t),r=n&&n[1]?n[1]:void 0,i=this.extractLocation(e.replace(t,``));return new $s({functionName:r,fileName:i[0],lineNumber:i[1],columnNumber:i[2],source:e})},this)},`ErrorStackParser$$parseFFOrSafari`)}}U(ec,`ErrorStackParser`);var tc=new ec;function nc(){return typeof API<`u`&&API!==globalThis.API?API.runtimeEnv:rc({IN_BUN:typeof Bun<`u`,IN_DENO:typeof Deno<`u`,IN_NODE:typeof process==`object`&&typeof process.versions==`object`&&typeof process.versions.node==`string`&&!process.browser,IN_SAFARI:typeof navigator==`object`&&typeof navigator.userAgent==`string`&&navigator.userAgent.indexOf(`Chrome`)===-1&&navigator.userAgent.indexOf(`Safari`)>-1,IN_SHELL:typeof read==`function`&&typeof load==`function`,IN_WORKERD:typeof navigator==`object`&&navigator.userAgent?.includes(`Cloudflare-Workers`)})}U(nc,`getGlobalRuntimeEnv`);var X=nc();function rc(e){let t=e.IN_NODE&&typeof module<`u`&&module.exports&&typeof Ks==`function`&&typeof __dirname==`string`,n=e.IN_NODE&&!t,r=!e.IN_NODE&&!e.IN_DENO&&!e.IN_BUN,i=r&&typeof window<`u`&&typeof window.document<`u`&&typeof document.createElement==`function`&&`sessionStorage`in window&&typeof globalThis.importScripts!=`function`,a=r&&typeof globalThis.WorkerGlobalScope<`u`&&typeof globalThis.self<`u`&&globalThis.self instanceof globalThis.WorkerGlobalScope;if(a&&ic())throw Error(`Classic web workers are not supported`);let o={...e,IN_BROWSER:r,IN_BROWSER_MAIN_THREAD:i,IN_BROWSER_WEB_WORKER:a,IN_NODE_COMMONJS:t,IN_NODE_ESM:n};if(!(o.IN_BROWSER_MAIN_THREAD||o.IN_BROWSER_WEB_WORKER||o.IN_NODE||o.IN_SHELL||o.IN_WORKERD))throw Error(`Cannot determine runtime environment: ${JSON.stringify(o)}`);return o}U(rc,`calculateDerivedFlags`);function ic(){try{return globalThis.importScripts(`data:text/javascript,`),!0}catch{return!1}}U(ic,`isClassicWorker`);var ac,oc,sc,cc;async function lc(){if(!X.IN_NODE||(ac=(await import(`./__vite-browser-external-FeDVGZU8.js`).then(e=>c(e.default,1))).default,sc=await import(`./__vite-browser-external-FeDVGZU8.js`).then(e=>c(e.default,1)),cc=await import(`./__vite-browser-external-FeDVGZU8.js`).then(e=>c(e.default,1)),(await import(`./__vite-browser-external-FeDVGZU8.js`).then(e=>c(e.default,1))).default,oc=await import(`./__vite-browser-external-FeDVGZU8.js`).then(e=>c(e.default,1)),pc=oc.sep,typeof Ks<`u`))return;let e={fs:sc,crypto:await import(`./__vite-browser-external-FeDVGZU8.js`).then(e=>c(e.default,1)),ws:await import(`./__vite-browser-external-FeDVGZU8.js`).then(e=>c(e.default,1)),child_process:await import(`./__vite-browser-external-FeDVGZU8.js`).then(e=>c(e.default,1))};globalThis.require=function(t){return e[t]}}U(lc,`initNodeModules`);function uc(e,t){return oc.resolve(t||`.`,e)}U(uc,`node_resolvePath`);function dc(e,t){return t===void 0&&(t=location),new URL(e,t).toString()}U(dc,`browser_resolvePath`);var fc=X.IN_NODE?uc:X.IN_SHELL?U(e=>e,`resolvePath`):dc,pc;X.IN_NODE||(pc=`/`);function mc(e,t){return e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?{response:fetch(e)}:{binary:cc.readFile(e).then(e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength))}}U(mc,`node_getBinaryResponse`);function hc(e,t){if(e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`))throw Error(`Shell cannot fetch urls`);return{binary:Promise.resolve(new Uint8Array(readbuffer(e)))}}U(hc,`shell_getBinaryResponse`);function gc(e,t){let n=new URL(e,location);return{response:fetch(n,t?{integrity:t}:{})}}U(gc,`browser_getBinaryResponse`);var _c=X.IN_NODE?mc:X.IN_SHELL?hc:gc;async function vc(e,t){let{response:n,binary:r}=_c(e,t);if(r)return r;let i=await n;if(!i.ok)throw Error(`Failed to load '${e}': request failed.`);return new Uint8Array(await i.arrayBuffer())}U(vc,`loadBinaryFile`);var yc=X.IN_NODE?bc:U(async e=>await import(e),`loadScript`);async function bc(e){return e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?await import(e):await import(ac.pathToFileURL(e).href)}U(bc,`nodeLoadScript`);async function xc(e){if(X.IN_NODE){await lc();let t=await cc.readFile(e,{encoding:`utf8`});return JSON.parse(t)}if(X.IN_SHELL){let t=read(e);return JSON.parse(t)}return await(await fetch(e)).json()}U(xc,`loadLockFile`);async function Sc(){if(X.IN_NODE_COMMONJS)return __dirname;let e;try{throw Error()}catch(t){e=t}let t=tc.parse(e)[0].fileName;if(X.IN_NODE&&!t.startsWith(`file://`)&&(t=`file://${t}`),X.IN_NODE_ESM){let e=await import(`./__vite-browser-external-FeDVGZU8.js`).then(e=>c(e.default,1));return(await import(`./__vite-browser-external-FeDVGZU8.js`).then(e=>c(e.default,1))).fileURLToPath(e.dirname(t))}let n=t.lastIndexOf(pc);if(n===-1)throw Error(`Could not extract indexURL path from pyodide module location. Please pass the indexURL explicitly to loadPyodide.`);return t.slice(0,n)}U(Sc,`calculateDirname`);function Cc(e){return e.substring(0,e.lastIndexOf(`/`)+1)||globalThis.location?.toString()||`.`}U(Cc,`calculateInstallBaseUrl`);function wc(e){let t=e.FS,n=e.FS.filesystems.MEMFS,r=e.PATH,i={DIR_MODE:16895,FILE_MODE:33279,mount:U(function(e){if(!e.opts.fileSystemHandle)throw Error(`opts.fileSystemHandle is required`);return n.mount.apply(null,arguments)},`mount`),syncfs:U(async(e,t,n)=>{try{let r=i.getLocalSet(e),a=await i.getRemoteSet(e),o=t?a:r,s=t?r:a;await i.reconcile(e,o,s),n(null)}catch(e){n(e)}},`syncfs`),getLocalSet:U(e=>{let n=Object.create(null);function i(e){return e!==`.`&&e!==`..`}U(i,`isRealDir`);function a(e){return t=>r.join2(e,t)}U(a,`toAbsolute`);let o=t.readdir(e.mountpoint).filter(i).map(a(e.mountpoint));for(;o.length;){let e=o.pop(),r=t.stat(e);t.isDir(r.mode)&&o.push.apply(o,t.readdir(e).filter(i).map(a(e))),n[e]={timestamp:r.mtime,mode:r.mode}}return{type:`local`,entries:n}},`getLocalSet`),getRemoteSet:U(async e=>{let t=Object.create(null),n=await Tc(e.opts.fileSystemHandle);for(let[a,o]of n)a!==`.`&&(t[r.join2(e.mountpoint,a)]={timestamp:o.kind===`file`?new Date((await o.getFile()).lastModified):new Date,mode:o.kind===`file`?i.FILE_MODE:i.DIR_MODE});return{type:`remote`,entries:t,handles:n}},`getRemoteSet`),loadLocalEntry:U(e=>{let r=t.lookupPath(e,{}).node,i=t.stat(e);if(t.isDir(i.mode))return{timestamp:i.mtime,mode:i.mode};if(t.isFile(i.mode))return r.contents=n.getFileDataAsTypedArray(r),{timestamp:i.mtime,mode:i.mode,contents:r.contents};throw Error(`node type not supported`)},`loadLocalEntry`),storeLocalEntry:U((e,n)=>{if(t.isDir(n.mode))t.mkdirTree(e,n.mode);else if(t.isFile(n.mode))t.writeFile(e,n.contents,{canOwn:!0});else throw Error(`node type not supported`);t.chmod(e,n.mode),t.utime(e,n.timestamp,n.timestamp)},`storeLocalEntry`),removeLocalEntry:U(e=>{var n=t.stat(e);t.isDir(n.mode)?t.rmdir(e):t.isFile(n.mode)&&t.unlink(e)},`removeLocalEntry`),loadRemoteEntry:U(async e=>{if(e.kind===`file`){let t=await e.getFile();return{contents:new Uint8Array(await t.arrayBuffer()),mode:i.FILE_MODE,timestamp:new Date(t.lastModified)}}if(e.kind===`directory`)return{mode:i.DIR_MODE,timestamp:new Date};throw Error(`unknown kind: `+e.kind)},`loadRemoteEntry`),storeRemoteEntry:U(async(e,n,i)=>{let a=e.get(r.dirname(n)),o=t.isFile(i.mode)?await a.getFileHandle(r.basename(n),{create:!0}):await a.getDirectoryHandle(r.basename(n),{create:!0});if(o.kind===`file`){let e=await o.createWritable();await e.write(i.contents),await e.close()}e.set(n,o)},`storeRemoteEntry`),removeRemoteEntry:U(async(e,t)=>{await e.get(r.dirname(t)).removeEntry(r.basename(t)),e.delete(t)},`removeRemoteEntry`),reconcile:U(async(e,n,a)=>{let o=0,s=[];Object.keys(n.entries).forEach(function(e){let r=n.entries[e],i=a.entries[e];(!i||t.isFile(r.mode)&&r.timestamp.getTime()>i.timestamp.getTime())&&(s.push(e),o++)}),s.sort();let c=[];if(Object.keys(a.entries).forEach(function(e){n.entries[e]||(c.push(e),o++)}),c.sort().reverse(),!o)return;let l=n.type===`remote`?n.handles:a.handles;for(let t of s){let n=r.normalize(t.replace(e.mountpoint,`/`)).substring(1);if(a.type===`local`){let e=l.get(n),r=await i.loadRemoteEntry(e);i.storeLocalEntry(t,r)}else{let e=i.loadLocalEntry(t);await i.storeRemoteEntry(l,n,e)}}for(let t of c)if(a.type===`local`)i.removeLocalEntry(t);else{let n=r.normalize(t.replace(e.mountpoint,`/`)).substring(1);await i.removeRemoteEntry(l,n)}},`reconcile`)};e.FS.filesystems.NATIVEFS_ASYNC=i}U(wc,`initializeNativeFS`);var Tc=U(async e=>{let t=[];async function n(e){for await(let r of e.values())t.push(r),r.kind===`directory`&&await n(r)}U(n,`collect`),await n(e);let r=new Map;r.set(`.`,e);for(let n of t){let t=(await e.resolve(n)).join(`/`);r.set(t,n)}return r},`getFsHandles`),Ec=qs(`AGFzbQEAAAABDANfAGAAAW9gAW8BfwMDAgECBygCE0pzdl9HZXRFcnJvcl9pbXBvcnQAAA5Kc3ZFcnJvcl9DaGVjawABChMCBwD7AQD7GwsJACAA+xr7FAAL`),Dc=async function(){if(!(globalThis.navigator&&(/iPad|iPhone|iPod/.test(navigator.userAgent)||navigator.platform===`MacIntel`&&typeof navigator.maxTouchPoints<`u`&&navigator.maxTouchPoints>1)))try{let e=await WebAssembly.compile(Ec);return await WebAssembly.instantiate(e)}catch(e){if(e instanceof WebAssembly.CompileError)return;throw e}}();async function Oc(){let e=await Dc;if(e)return e.exports;let t=Symbol(`error marker`);return{Jsv_GetError_import:U(()=>t,`Jsv_GetError_import`),JsvError_Check:U(e=>e===t,`JsvError_Check`)}}U(Oc,`getJsvErrorImport`);function kc(e){let t={config:e,runtimeEnv:X},n={noImageDecoding:!0,noAudioDecoding:!0,noWasmDecoding:!1,preRun:Fc(e),print:e.stdout,printErr:e.stderr,onExit(e){n.exitCode=e},thisProgram:e._sysExecutable,arguments:e.args,API:t,locateFile:U(t=>e.indexURL+t,`locateFile`),instantiateWasm:Ic(e.indexURL)};return n}U(kc,`createSettings`);function Ac(e){return function(t){try{t.FS.mkdirTree(e)}catch(t){console.error(`Error occurred while making a home directory '${e}':`),console.error(t),console.error(`Using '/' for a home directory instead`),e=`/`}t.FS.chdir(e)}}U(Ac,`createHomeDirectory`);function jc(e){return function(t){Object.assign(t.ENV,e)}}U(jc,`setEnvironment`);function Mc(e){return e?[async t=>{t.addRunDependency(`fsInitHook`);try{await e(t.FS,{sitePackages:t.API.sitePackages})}finally{t.removeRunDependency(`fsInitHook`)}}]:[]}U(Mc,`callFsInitHook`);function Nc(e){let t=e.HEAPU32[e._Py_Version>>>2];return[t>>>24&255,t>>>16&255,t>>>8&255]}U(Nc,`computeVersionTuple`);function Pc(e){let t=vc(e);return async e=>{e.API.pyVersionTuple=Nc(e);let[n,r]=e.API.pyVersionTuple;e.FS.mkdirTree(`/lib`),e.API.sitePackages=`/lib/python${n}.${r}/site-packages`,e.FS.mkdirTree(e.API.sitePackages),e.addRunDependency(`install-stdlib`);try{let i=await t;e.FS.writeFile(`/lib/python${n}${r}.zip`,i)}catch(e){console.error(`Error occurred while installing the standard library:`),console.error(e)}finally{e.removeRunDependency(`install-stdlib`)}}}U(Pc,`installStdlib`);function Fc(e){let t;return t=e.stdLibURL==null?e.indexURL+`python_stdlib.zip`:e.stdLibURL,[Pc(t),Ac(e.env.HOME),jc(e.env),wc,...Mc(e.fsInit)]}U(Fc,`getFileSystemInitializationFuncs`);function Ic(e){if(typeof WasmOffsetConverter<`u`)return;let{binary:t,response:n}=_c(e+`pyodide.asm.wasm`),r=Oc();return function(e,i){return async function(){let{Jsv_GetError_import:a,JsvError_Check:o}=await r;e.env.Jsv_GetError_import=a,e.env.JsvError_Check=o;try{let r;r=n?await WebAssembly.instantiateStreaming(n,e):await WebAssembly.instantiate(await t,e);let{instance:a,module:o}=r;i(a,o)}catch(e){console.warn(`wasm instantiation failed!`),console.warn(e)}}(),{}}}U(Ic,`getInstantiateWasmFunc`);var Lc=`314.0.0`;function Rc(e){return e===void 0||e.endsWith(`/`)?e:e+`/`}U(Rc,`withTrailingSlash`);var zc=Lc;async function Bc(e={}){if(await lc(),e.lockFileContents&&e.lockFileURL)throw Error(`Can't pass both lockFileContents and lockFileURL`);let t=e.indexURL||await Sc();if(t=Rc(fc(t)),e.packageBaseUrl=Rc(e.packageBaseUrl),e.cdnUrl=Rc(e.packageBaseUrl??`https://cdn.jsdelivr.net/pyodide/v314.0.0/full/`),!e.lockFileContents){let n=e.lockFileURL??t+`pyodide-lock.json`;e.lockFileContents=xc(n),e.packageBaseUrl??=Cc(n)}e.indexURL=t,e.packageCacheDir&&=Rc(fc(e.packageCacheDir));let n={jsglobals:globalThis,stdin:globalThis.prompt?()=>globalThis.prompt():void 0,args:[],env:{},packages:[],packageCacheDir:e.packageBaseUrl,enableRunUntilComplete:!0,checkAPIVersion:!0,BUILD_ID:`2ff9f3fe6c88624a7e283d5651688da7f6169834ab51663b07be67c0bd43e53e`},r=Object.assign(n,e);return r.env.HOME??=`/home/pyodide`,r.env.PYTHONINSPECT??=`1`,r}U(Bc,`initializeConfiguration`);function Vc(e){let t=kc(e),n=t.API;return n.lockFilePromise=Promise.resolve(e.lockFileContents),t}U(Vc,`createEmscriptenSettings`);async function Hc(e){return e.createPyodideModule?e.createPyodideModule:(await yc(`${e.indexURL}pyodide.asm.mjs`)).default}U(Hc,`loadWasmScript`);async function Uc(e,t){if(!e._loadSnapshot)return;let n=await e._loadSnapshot,r=ArrayBuffer.isView(n)?n:new Uint8Array(n);return t.noInitialRun=!0,t.INITIAL_MEMORY=r.length,r}U(Uc,`prepareSnapshot`);async function Wc(e,t){let n=await e(t);if(t.exitCode!==void 0)throw new n.ExitStatus(t.exitCode);return n}U(Wc,`instantiatePyodideModule`);function Gc(e,t){let n=e.API;if(t.pyproxyToStringRepr&&n.setPyProxyToStringMethod(!0),t.convertNullToNone&&n.setCompatNullToNone(!0),t.toJsLiteralMap&&n.setCompatToJsLiteralMap(!0),n.version!==`314.0.0`&&t.checkAPIVersion)throw Error(`Pyodide version does not match: '${zc}' <==> '${n.version}'. If you updated the Pyodide version, make sure you also updated the 'indexURL' parameter passed to loadPyodide.`);e.locateFile=e=>{throw e.endsWith(`.so`)?Error(`Failed to find dynamic library "${e}"`):Error(`Unexpected call to locateFile("${e}")`)}}U(Gc,`configureAPI`);function Kc(e,t,n){let r=e.API,i;return t&&(i=r.restoreSnapshot(t)),r.finalizeBootstrap(i,n._snapshotDeserializer)}U(Kc,`bootstrapPyodide`);async function qc(e,t){let n=e._api;return n.sys.path.insert(0,``),n._pyodide.set_excepthook(),await n.packageIndexReady,n.initializeStreams(t.stdin,t.stdout,t.stderr),e}U(qc,`finalizeSetup`);async function Jc(e={}){let t=await Bc(e),n=Vc(t),r=await Hc(t),i=await Uc(t,n),a=await Wc(r,n);return Gc(a,t),await qc(Kc(a,i,t),t)}U(Jc,`loadPyodide`);function Yc(e){return`marimo-base`}const Z=new class{spans=[];startSpan(e,t={}){let n={name:e,startTime:Date.now(),attributes:t,end:(e=`ok`)=>this.endSpan(n,e)};return this.spans.push(n),n}endSpan(e,t=`ok`){e.endTime=Date.now(),e.status=t}getSpans(){return this.spans}wrap(e,t,n={}){let r=this.startSpan(t||e.name,n);try{let t=e();return this.endSpan(r),t}catch(e){throw this.endSpan(r,`error`),e}}wrapAsync(e,t,n={}){return(async(...r)=>{let i=this.startSpan(t||e.name,n);try{let t=await e(...r);return this.endSpan(i),t}catch(e){throw this.endSpan(i,`error`),e}})}logSpans(){}};globalThis.t=Z;const Xc=/(^|\n)\s*(?:import\s+[^\n#]*\bduckdb\b|from\s+duckdb\b|[^\n#]*\bduckdb\s*\.)/;function Zc(e,t){return e.includes(`mo.sql`)||Xc.test(e)||t?.has(`duckdb`)===!0}function Qc(e){return e.trim().split(/[[<>=!~;@\s]/)[0]}var $c=class{pyodide=null;packageLoadQueue=Promise.resolve();sessionGeneration=0;activeSessionStops=new Set;get requirePyodide(){return g(this.pyodide,`Pyodide not loaded`),this.pyodide}async bootstrap(e){return await this.loadPyodideAndPackages(e)}async loadPyodideAndPackages(e){if(!Jc)throw Error(`loadPyodide is not defined`);let t=Z.startSpan(`loadPyodide`);try{let n=e.pyodideIndexUrl??`https://cdn.jsdelivr.net/pyodide/${e.pyodideVersion}/full/`,r=await Jc({packages:[`micropip`,`msgspec`,Yc(e.version),`Markdown`,`pymdown-extensions`,`narwhals`,`packaging`],_makeSnapshot:!1,lockFileURL:e.pyodideLockfileUrl??`https://wasm.marimo.app/pyodide-lock.json?v=${e.version}&pyodide=${e.pyodideVersion}`,indexURL:n,packageBaseUrl:n,convertNullToNone:!0});if(e.pypiIndexUrl){let t=r.pyimport(`micropip`);try{t.set_index_urls(e.pypiIndexUrl)}finally{t.destroy()}}return this.pyodide=r,t.end(`ok`),r}catch(e){throw _.error(`Failed to load Pyodide`,e),e}}async mountFilesystem(e){let t=Z.startSpan(`mountFilesystem`);return H.createHomeDir(this.requirePyodide),H.mountFS(this.requirePyodide),await H.populateFilesToMemory(this.requirePyodide),t.end(`ok`),H.initNotebookCode({pyodide:this.requirePyodide,code:e.code,filename:e.filename})}async startSession(e){let t=this.sessionGeneration,{code:n,filename:r,onMessage:i,queryParameters:a,userConfig:o}=e;self.messenger={callback:i},self.query_params=a,self.user_config=o;let s=Z.startSpan(`startSession.runPython`),c=r||H.NOTEBOOK_FILENAME,l=this.requirePyodide.runPython(`
|
|
57
|
+
`).filter(function(e){return!e.match(t)},this).map(function(e){if(e.indexOf(` > eval`)>-1&&(e=e.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,`:$1`)),e.indexOf(`@`)===-1&&e.indexOf(`:`)===-1)return new $s({functionName:e});var t=/((.*".+"[^@]*)?[^@]*)(?:@)/,n=e.match(t),r=n&&n[1]?n[1]:void 0,i=this.extractLocation(e.replace(t,``));return new $s({functionName:r,fileName:i[0],lineNumber:i[1],columnNumber:i[2],source:e})},this)},`ErrorStackParser$$parseFFOrSafari`)}}U(ec,`ErrorStackParser`);var tc=new ec;function nc(){return typeof API<`u`&&API!==globalThis.API?API.runtimeEnv:rc({IN_BUN:typeof Bun<`u`,IN_DENO:typeof Deno<`u`,IN_NODE:typeof process==`object`&&typeof process.versions==`object`&&typeof process.versions.node==`string`&&!process.browser,IN_SAFARI:typeof navigator==`object`&&typeof navigator.userAgent==`string`&&navigator.userAgent.indexOf(`Chrome`)===-1&&navigator.userAgent.indexOf(`Safari`)>-1,IN_SHELL:typeof read==`function`&&typeof load==`function`,IN_WORKERD:typeof navigator==`object`&&navigator.userAgent?.includes(`Cloudflare-Workers`)})}U(nc,`getGlobalRuntimeEnv`);var X=nc();function rc(e){let t=e.IN_NODE&&typeof module<`u`&&module.exports&&typeof Ks==`function`&&typeof __dirname==`string`,n=e.IN_NODE&&!t,r=!e.IN_NODE&&!e.IN_DENO&&!e.IN_BUN,i=r&&typeof window<`u`&&typeof window.document<`u`&&typeof document.createElement==`function`&&`sessionStorage`in window&&typeof globalThis.importScripts!=`function`,a=r&&typeof globalThis.WorkerGlobalScope<`u`&&typeof globalThis.self<`u`&&globalThis.self instanceof globalThis.WorkerGlobalScope;if(a&&ic())throw Error(`Classic web workers are not supported`);let o={...e,IN_BROWSER:r,IN_BROWSER_MAIN_THREAD:i,IN_BROWSER_WEB_WORKER:a,IN_NODE_COMMONJS:t,IN_NODE_ESM:n};if(!(o.IN_BROWSER_MAIN_THREAD||o.IN_BROWSER_WEB_WORKER||o.IN_NODE||o.IN_SHELL||o.IN_WORKERD))throw Error(`Cannot determine runtime environment: ${JSON.stringify(o)}`);return o}U(rc,`calculateDerivedFlags`);function ic(){try{return globalThis.importScripts(`data:text/javascript,`),!0}catch{return!1}}U(ic,`isClassicWorker`);var ac,oc,sc,cc;async function lc(){if(!X.IN_NODE||(ac=(await import(`./__vite-browser-external-mKcnhO20.js`).then(e=>c(e.default,1))).default,sc=await import(`./__vite-browser-external-mKcnhO20.js`).then(e=>c(e.default,1)),cc=await import(`./__vite-browser-external-mKcnhO20.js`).then(e=>c(e.default,1)),(await import(`./__vite-browser-external-mKcnhO20.js`).then(e=>c(e.default,1))).default,oc=await import(`./__vite-browser-external-mKcnhO20.js`).then(e=>c(e.default,1)),pc=oc.sep,typeof Ks<`u`))return;let e={fs:sc,crypto:await import(`./__vite-browser-external-mKcnhO20.js`).then(e=>c(e.default,1)),ws:await import(`./__vite-browser-external-mKcnhO20.js`).then(e=>c(e.default,1)),child_process:await import(`./__vite-browser-external-mKcnhO20.js`).then(e=>c(e.default,1))};globalThis.require=function(t){return e[t]}}U(lc,`initNodeModules`);function uc(e,t){return oc.resolve(t||`.`,e)}U(uc,`node_resolvePath`);function dc(e,t){return t===void 0&&(t=location),new URL(e,t).toString()}U(dc,`browser_resolvePath`);var fc=X.IN_NODE?uc:X.IN_SHELL?U(e=>e,`resolvePath`):dc,pc;X.IN_NODE||(pc=`/`);function mc(e,t){return e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?{response:fetch(e)}:{binary:cc.readFile(e).then(e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength))}}U(mc,`node_getBinaryResponse`);function hc(e,t){if(e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`))throw Error(`Shell cannot fetch urls`);return{binary:Promise.resolve(new Uint8Array(readbuffer(e)))}}U(hc,`shell_getBinaryResponse`);function gc(e,t){let n=new URL(e,location);return{response:fetch(n,t?{integrity:t}:{})}}U(gc,`browser_getBinaryResponse`);var _c=X.IN_NODE?mc:X.IN_SHELL?hc:gc;async function vc(e,t){let{response:n,binary:r}=_c(e,t);if(r)return r;let i=await n;if(!i.ok)throw Error(`Failed to load '${e}': request failed.`);return new Uint8Array(await i.arrayBuffer())}U(vc,`loadBinaryFile`);var yc=X.IN_NODE?bc:U(async e=>await import(e),`loadScript`);async function bc(e){return e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?await import(e):await import(ac.pathToFileURL(e).href)}U(bc,`nodeLoadScript`);async function xc(e){if(X.IN_NODE){await lc();let t=await cc.readFile(e,{encoding:`utf8`});return JSON.parse(t)}if(X.IN_SHELL){let t=read(e);return JSON.parse(t)}return await(await fetch(e)).json()}U(xc,`loadLockFile`);async function Sc(){if(X.IN_NODE_COMMONJS)return __dirname;let e;try{throw Error()}catch(t){e=t}let t=tc.parse(e)[0].fileName;if(X.IN_NODE&&!t.startsWith(`file://`)&&(t=`file://${t}`),X.IN_NODE_ESM){let e=await import(`./__vite-browser-external-mKcnhO20.js`).then(e=>c(e.default,1));return(await import(`./__vite-browser-external-mKcnhO20.js`).then(e=>c(e.default,1))).fileURLToPath(e.dirname(t))}let n=t.lastIndexOf(pc);if(n===-1)throw Error(`Could not extract indexURL path from pyodide module location. Please pass the indexURL explicitly to loadPyodide.`);return t.slice(0,n)}U(Sc,`calculateDirname`);function Cc(e){return e.substring(0,e.lastIndexOf(`/`)+1)||globalThis.location?.toString()||`.`}U(Cc,`calculateInstallBaseUrl`);function wc(e){let t=e.FS,n=e.FS.filesystems.MEMFS,r=e.PATH,i={DIR_MODE:16895,FILE_MODE:33279,mount:U(function(e){if(!e.opts.fileSystemHandle)throw Error(`opts.fileSystemHandle is required`);return n.mount.apply(null,arguments)},`mount`),syncfs:U(async(e,t,n)=>{try{let r=i.getLocalSet(e),a=await i.getRemoteSet(e),o=t?a:r,s=t?r:a;await i.reconcile(e,o,s),n(null)}catch(e){n(e)}},`syncfs`),getLocalSet:U(e=>{let n=Object.create(null);function i(e){return e!==`.`&&e!==`..`}U(i,`isRealDir`);function a(e){return t=>r.join2(e,t)}U(a,`toAbsolute`);let o=t.readdir(e.mountpoint).filter(i).map(a(e.mountpoint));for(;o.length;){let e=o.pop(),r=t.stat(e);t.isDir(r.mode)&&o.push.apply(o,t.readdir(e).filter(i).map(a(e))),n[e]={timestamp:r.mtime,mode:r.mode}}return{type:`local`,entries:n}},`getLocalSet`),getRemoteSet:U(async e=>{let t=Object.create(null),n=await Tc(e.opts.fileSystemHandle);for(let[a,o]of n)a!==`.`&&(t[r.join2(e.mountpoint,a)]={timestamp:o.kind===`file`?new Date((await o.getFile()).lastModified):new Date,mode:o.kind===`file`?i.FILE_MODE:i.DIR_MODE});return{type:`remote`,entries:t,handles:n}},`getRemoteSet`),loadLocalEntry:U(e=>{let r=t.lookupPath(e,{}).node,i=t.stat(e);if(t.isDir(i.mode))return{timestamp:i.mtime,mode:i.mode};if(t.isFile(i.mode))return r.contents=n.getFileDataAsTypedArray(r),{timestamp:i.mtime,mode:i.mode,contents:r.contents};throw Error(`node type not supported`)},`loadLocalEntry`),storeLocalEntry:U((e,n)=>{if(t.isDir(n.mode))t.mkdirTree(e,n.mode);else if(t.isFile(n.mode))t.writeFile(e,n.contents,{canOwn:!0});else throw Error(`node type not supported`);t.chmod(e,n.mode),t.utime(e,n.timestamp,n.timestamp)},`storeLocalEntry`),removeLocalEntry:U(e=>{var n=t.stat(e);t.isDir(n.mode)?t.rmdir(e):t.isFile(n.mode)&&t.unlink(e)},`removeLocalEntry`),loadRemoteEntry:U(async e=>{if(e.kind===`file`){let t=await e.getFile();return{contents:new Uint8Array(await t.arrayBuffer()),mode:i.FILE_MODE,timestamp:new Date(t.lastModified)}}if(e.kind===`directory`)return{mode:i.DIR_MODE,timestamp:new Date};throw Error(`unknown kind: `+e.kind)},`loadRemoteEntry`),storeRemoteEntry:U(async(e,n,i)=>{let a=e.get(r.dirname(n)),o=t.isFile(i.mode)?await a.getFileHandle(r.basename(n),{create:!0}):await a.getDirectoryHandle(r.basename(n),{create:!0});if(o.kind===`file`){let e=await o.createWritable();await e.write(i.contents),await e.close()}e.set(n,o)},`storeRemoteEntry`),removeRemoteEntry:U(async(e,t)=>{await e.get(r.dirname(t)).removeEntry(r.basename(t)),e.delete(t)},`removeRemoteEntry`),reconcile:U(async(e,n,a)=>{let o=0,s=[];Object.keys(n.entries).forEach(function(e){let r=n.entries[e],i=a.entries[e];(!i||t.isFile(r.mode)&&r.timestamp.getTime()>i.timestamp.getTime())&&(s.push(e),o++)}),s.sort();let c=[];if(Object.keys(a.entries).forEach(function(e){n.entries[e]||(c.push(e),o++)}),c.sort().reverse(),!o)return;let l=n.type===`remote`?n.handles:a.handles;for(let t of s){let n=r.normalize(t.replace(e.mountpoint,`/`)).substring(1);if(a.type===`local`){let e=l.get(n),r=await i.loadRemoteEntry(e);i.storeLocalEntry(t,r)}else{let e=i.loadLocalEntry(t);await i.storeRemoteEntry(l,n,e)}}for(let t of c)if(a.type===`local`)i.removeLocalEntry(t);else{let n=r.normalize(t.replace(e.mountpoint,`/`)).substring(1);await i.removeRemoteEntry(l,n)}},`reconcile`)};e.FS.filesystems.NATIVEFS_ASYNC=i}U(wc,`initializeNativeFS`);var Tc=U(async e=>{let t=[];async function n(e){for await(let r of e.values())t.push(r),r.kind===`directory`&&await n(r)}U(n,`collect`),await n(e);let r=new Map;r.set(`.`,e);for(let n of t){let t=(await e.resolve(n)).join(`/`);r.set(t,n)}return r},`getFsHandles`),Ec=qs(`AGFzbQEAAAABDANfAGAAAW9gAW8BfwMDAgECBygCE0pzdl9HZXRFcnJvcl9pbXBvcnQAAA5Kc3ZFcnJvcl9DaGVjawABChMCBwD7AQD7GwsJACAA+xr7FAAL`),Dc=async function(){if(!(globalThis.navigator&&(/iPad|iPhone|iPod/.test(navigator.userAgent)||navigator.platform===`MacIntel`&&typeof navigator.maxTouchPoints<`u`&&navigator.maxTouchPoints>1)))try{let e=await WebAssembly.compile(Ec);return await WebAssembly.instantiate(e)}catch(e){if(e instanceof WebAssembly.CompileError)return;throw e}}();async function Oc(){let e=await Dc;if(e)return e.exports;let t=Symbol(`error marker`);return{Jsv_GetError_import:U(()=>t,`Jsv_GetError_import`),JsvError_Check:U(e=>e===t,`JsvError_Check`)}}U(Oc,`getJsvErrorImport`);function kc(e){let t={config:e,runtimeEnv:X},n={noImageDecoding:!0,noAudioDecoding:!0,noWasmDecoding:!1,preRun:Fc(e),print:e.stdout,printErr:e.stderr,onExit(e){n.exitCode=e},thisProgram:e._sysExecutable,arguments:e.args,API:t,locateFile:U(t=>e.indexURL+t,`locateFile`),instantiateWasm:Ic(e.indexURL)};return n}U(kc,`createSettings`);function Ac(e){return function(t){try{t.FS.mkdirTree(e)}catch(t){console.error(`Error occurred while making a home directory '${e}':`),console.error(t),console.error(`Using '/' for a home directory instead`),e=`/`}t.FS.chdir(e)}}U(Ac,`createHomeDirectory`);function jc(e){return function(t){Object.assign(t.ENV,e)}}U(jc,`setEnvironment`);function Mc(e){return e?[async t=>{t.addRunDependency(`fsInitHook`);try{await e(t.FS,{sitePackages:t.API.sitePackages})}finally{t.removeRunDependency(`fsInitHook`)}}]:[]}U(Mc,`callFsInitHook`);function Nc(e){let t=e.HEAPU32[e._Py_Version>>>2];return[t>>>24&255,t>>>16&255,t>>>8&255]}U(Nc,`computeVersionTuple`);function Pc(e){let t=vc(e);return async e=>{e.API.pyVersionTuple=Nc(e);let[n,r]=e.API.pyVersionTuple;e.FS.mkdirTree(`/lib`),e.API.sitePackages=`/lib/python${n}.${r}/site-packages`,e.FS.mkdirTree(e.API.sitePackages),e.addRunDependency(`install-stdlib`);try{let i=await t;e.FS.writeFile(`/lib/python${n}${r}.zip`,i)}catch(e){console.error(`Error occurred while installing the standard library:`),console.error(e)}finally{e.removeRunDependency(`install-stdlib`)}}}U(Pc,`installStdlib`);function Fc(e){let t;return t=e.stdLibURL==null?e.indexURL+`python_stdlib.zip`:e.stdLibURL,[Pc(t),Ac(e.env.HOME),jc(e.env),wc,...Mc(e.fsInit)]}U(Fc,`getFileSystemInitializationFuncs`);function Ic(e){if(typeof WasmOffsetConverter<`u`)return;let{binary:t,response:n}=_c(e+`pyodide.asm.wasm`),r=Oc();return function(e,i){return async function(){let{Jsv_GetError_import:a,JsvError_Check:o}=await r;e.env.Jsv_GetError_import=a,e.env.JsvError_Check=o;try{let r;r=n?await WebAssembly.instantiateStreaming(n,e):await WebAssembly.instantiate(await t,e);let{instance:a,module:o}=r;i(a,o)}catch(e){console.warn(`wasm instantiation failed!`),console.warn(e)}}(),{}}}U(Ic,`getInstantiateWasmFunc`);var Lc=`314.0.0`;function Rc(e){return e===void 0||e.endsWith(`/`)?e:e+`/`}U(Rc,`withTrailingSlash`);var zc=Lc;async function Bc(e={}){if(await lc(),e.lockFileContents&&e.lockFileURL)throw Error(`Can't pass both lockFileContents and lockFileURL`);let t=e.indexURL||await Sc();if(t=Rc(fc(t)),e.packageBaseUrl=Rc(e.packageBaseUrl),e.cdnUrl=Rc(e.packageBaseUrl??`https://cdn.jsdelivr.net/pyodide/v314.0.0/full/`),!e.lockFileContents){let n=e.lockFileURL??t+`pyodide-lock.json`;e.lockFileContents=xc(n),e.packageBaseUrl??=Cc(n)}e.indexURL=t,e.packageCacheDir&&=Rc(fc(e.packageCacheDir));let n={jsglobals:globalThis,stdin:globalThis.prompt?()=>globalThis.prompt():void 0,args:[],env:{},packages:[],packageCacheDir:e.packageBaseUrl,enableRunUntilComplete:!0,checkAPIVersion:!0,BUILD_ID:`2ff9f3fe6c88624a7e283d5651688da7f6169834ab51663b07be67c0bd43e53e`},r=Object.assign(n,e);return r.env.HOME??=`/home/pyodide`,r.env.PYTHONINSPECT??=`1`,r}U(Bc,`initializeConfiguration`);function Vc(e){let t=kc(e),n=t.API;return n.lockFilePromise=Promise.resolve(e.lockFileContents),t}U(Vc,`createEmscriptenSettings`);async function Hc(e){return e.createPyodideModule?e.createPyodideModule:(await yc(`${e.indexURL}pyodide.asm.mjs`)).default}U(Hc,`loadWasmScript`);async function Uc(e,t){if(!e._loadSnapshot)return;let n=await e._loadSnapshot,r=ArrayBuffer.isView(n)?n:new Uint8Array(n);return t.noInitialRun=!0,t.INITIAL_MEMORY=r.length,r}U(Uc,`prepareSnapshot`);async function Wc(e,t){let n=await e(t);if(t.exitCode!==void 0)throw new n.ExitStatus(t.exitCode);return n}U(Wc,`instantiatePyodideModule`);function Gc(e,t){let n=e.API;if(t.pyproxyToStringRepr&&n.setPyProxyToStringMethod(!0),t.convertNullToNone&&n.setCompatNullToNone(!0),t.toJsLiteralMap&&n.setCompatToJsLiteralMap(!0),n.version!==`314.0.0`&&t.checkAPIVersion)throw Error(`Pyodide version does not match: '${zc}' <==> '${n.version}'. If you updated the Pyodide version, make sure you also updated the 'indexURL' parameter passed to loadPyodide.`);e.locateFile=e=>{throw e.endsWith(`.so`)?Error(`Failed to find dynamic library "${e}"`):Error(`Unexpected call to locateFile("${e}")`)}}U(Gc,`configureAPI`);function Kc(e,t,n){let r=e.API,i;return t&&(i=r.restoreSnapshot(t)),r.finalizeBootstrap(i,n._snapshotDeserializer)}U(Kc,`bootstrapPyodide`);async function qc(e,t){let n=e._api;return n.sys.path.insert(0,``),n._pyodide.set_excepthook(),await n.packageIndexReady,n.initializeStreams(t.stdin,t.stdout,t.stderr),e}U(qc,`finalizeSetup`);async function Jc(e={}){let t=await Bc(e),n=Vc(t),r=await Hc(t),i=await Uc(t,n),a=await Wc(r,n);return Gc(a,t),await qc(Kc(a,i,t),t)}U(Jc,`loadPyodide`);function Yc(){return`marimo-base`}const Z=new class{spans=[];startSpan(e,t={}){let n={name:e,startTime:Date.now(),attributes:t,end:(e=`ok`)=>this.endSpan(n,e)};return this.spans.push(n),n}endSpan(e,t=`ok`){e.endTime=Date.now(),e.status=t}getSpans(){return this.spans}wrap(e,t,n={}){let r=this.startSpan(t||e.name,n);try{let t=e();return this.endSpan(r),t}catch(e){throw this.endSpan(r,`error`),e}}wrapAsync(e,t,n={}){return(async(...r)=>{let i=this.startSpan(t||e.name,n);try{let t=await e(...r);return this.endSpan(i),t}catch(e){throw this.endSpan(i,`error`),e}})}logSpans(){}};globalThis.t=Z;const Xc=/(^|\n)\s*(?:import\s+[^\n#]*\bduckdb\b|from\s+duckdb\b|[^\n#]*\bduckdb\s*\.)/;function Zc(e,t){return e.includes(`mo.sql`)||Xc.test(e)||t?.has(`duckdb`)===!0}function Qc(e){return e.trim().split(/[[<>=!~;@\s]/)[0]}var $c=class{pyodide=null;packageLoadQueue=Promise.resolve();sessionGeneration=0;activeSessionStops=new Set;get requirePyodide(){return g(this.pyodide,`Pyodide not loaded`),this.pyodide}async bootstrap(e){return await this.loadPyodideAndPackages(e)}async loadPyodideAndPackages(e){if(!Jc)throw Error(`loadPyodide is not defined`);let t=Z.startSpan(`loadPyodide`);try{let n=e.pyodideIndexUrl??`https://cdn.jsdelivr.net/pyodide/${e.pyodideVersion}/full/`,r=await Jc({packages:[`micropip`,`msgspec`,Yc(),`Markdown`,`pymdown-extensions`,`narwhals`,`packaging`],_makeSnapshot:!1,lockFileURL:e.pyodideLockfileUrl??`https://wasm.marimo.app/pyodide-lock.json?v=${e.version}&pyodide=${e.pyodideVersion}`,indexURL:n,packageBaseUrl:n,convertNullToNone:!0});if(e.pypiIndexUrl){let t=r.pyimport(`micropip`);try{t.set_index_urls(e.pypiIndexUrl)}finally{t.destroy()}}return this.pyodide=r,t.end(`ok`),r}catch(e){throw _.error(`Failed to load Pyodide`,e),e}}async mountFilesystem(e){let t=Z.startSpan(`mountFilesystem`);return H.createHomeDir(this.requirePyodide),H.mountFS(this.requirePyodide),await H.populateFilesToMemory(this.requirePyodide),t.end(`ok`),H.initNotebookCode({pyodide:this.requirePyodide,code:e.code,filename:e.filename})}async startSession(e){let t=this.sessionGeneration,{code:n,filename:r,onMessage:i,queryParameters:a,userConfig:o}=e;self.messenger={callback:i},self.query_params=a,self.user_config=o;let s=Z.startSpan(`startSession.runPython`),c=r||H.NOTEBOOK_FILENAME,l=this.requirePyodide.runPython(`
|
|
58
58
|
print("[py] Starting marimo...")
|
|
59
59
|
import asyncio
|
|
60
60
|
import gc
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{t}from"./react-DVplv7_D.js";import{t as n}from"./compiler-runtime-BrajqUja.js";import{n as r,t as i}from"./cn-ldLVeaqm.js";import{t as a}from"./jsx-runtime-B74pBk57.js";import{x as o}from"./fullscreen-
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{t}from"./react-DVplv7_D.js";import{t as n}from"./compiler-runtime-BrajqUja.js";import{n as r,t as i}from"./cn-ldLVeaqm.js";import{t as a}from"./jsx-runtime-B74pBk57.js";import{x as o}from"./fullscreen-BWTs8pYZ.js";import{a as s,c,i as l,l as u,n as d,r as f,s as p,t as m}from"./alert-dialog-C-sWmKva.js";import{c as h,d as g,i as _,n as ee,s as te,t as ne,u as v}from"./select-3CVGlYrC.js";import{r as y,t as b}from"./button-D8gVKwe-.js";import{t as x}from"./createLucideIcon-DfJ2oMlA.js";import{C as S,Jt as C,Lt as w,N as T,Qt as re,Xt as ie,Yt as ae,Zt as oe,r as E,tn as se,u as D,x as O}from"./input-DmHMEZGh.js";import{t as k}from"./use-toast-Wu434mLr.js";import{r as ce,t as A}from"./requests-BIFR-h4M.js";import{t as j}from"./Deferred-CrTnjj37.js";import{t as M}from"./uuid-k9DpjH68.js";import{n as N}from"./useDebounce-DwTQ_1Pu.js";var P=x(`key`,[[`path`,{d:`m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4`,key:`g0fldk`}],[`path`,{d:`m21 2-9.6 9.6`,key:`1j0ho8`}],[`circle`,{cx:`7.5`,cy:`15.5`,r:`5.5`,key:`yqb3hr`}]]),F=e(t(),1),I=n(),L=a(),R={create(){return M()}},z=class{requests=new Map;operation;makeRequest;opts;constructor(e,t,n={}){this.operation=e,this.makeRequest=t,this.opts=n}async request(e){if(this.opts.resolveExistingRequests){let e=this.opts.resolveExistingRequests();for(let t of this.requests.values())t.resolve(e);this.requests.clear()}let t=R.create(),n=new j;return this.requests.set(t,n),await this.makeRequest(t,e).catch(e=>{n.reject(e),this.requests.delete(t)}),n.promise}resolve(e,t){let n=this.requests.get(e);n!==void 0&&(n.resolve(t),this.requests.delete(e))}reject(e,t){let n=this.requests.get(e);n!==void 0&&(n.reject(t),this.requests.delete(e))}},B=F.forwardRef((e,t)=>{let n=(0,I.c)(16),r,a,o;n[0]===e?(r=n[1],a=n[2],o=n[3]):({className:a,bottomAdornment:r,...o}=e,n[0]=e,n[1]=r,n[2]=a,n[3]=o);let s;n[4]===a?s=n[5]:(s=i(`shadow-xs-solid hover:shadow-sm-solid disabled:shadow-xs-solid focus-visible:shadow-md-solid`,`flex w-full mb-1 rounded-sm border border-input bg-background px-3 py-2 text-sm font-code ring-offset-background placeholder:text-muted-foreground focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring focus-visible:border-accent disabled:cursor-not-allowed disabled:opacity-50 min-h-6`,a),n[4]=a,n[5]=s);let c;n[6]===Symbol.for(`react.memo_cache_sentinel`)?(c=y.stopPropagation(),n[6]=c):c=n[6];let l;n[7]!==o||n[8]!==t||n[9]!==s?(l=(0,L.jsx)(`textarea`,{className:s,onClick:c,ref:t,...o}),n[7]=o,n[8]=t,n[9]=s,n[10]=l):l=n[10];let u;n[11]===r?u=n[12]:(u=r&&(0,L.jsx)(`div`,{className:`absolute right-0 bottom-1 flex items-center pr-[6px] pointer-events-none text-muted-foreground h-6`,children:r}),n[11]=r,n[12]=u);let d;return n[13]!==l||n[14]!==u?(d=(0,L.jsxs)(`div`,{className:`relative`,children:[l,u]}),n[13]=l,n[14]=u,n[15]=d):d=n[15],d});B.displayName=`Textarea`;var V=F.forwardRef((e,t)=>{let n=(0,I.c)(16),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,onValueChange:i,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]!==i||n[5]!==a.delay||n[6]!==a.value?(o={initialValue:a.value,delay:a.delay,onChange:i},n[4]=i,n[5]=a.delay,n[6]=a.value,n[7]=o):o=n[7];let{value:s,onChange:c}=N(o),l;n[8]===c?l=n[9]:(l=e=>c(e.target.value),n[8]=c,n[9]=l);let u;return n[10]!==r||n[11]!==a||n[12]!==t||n[13]!==l||n[14]!==s?(u=(0,L.jsx)(B,{ref:t,className:r,...a,onChange:l,value:s}),n[10]=r,n[11]=a,n[12]=t,n[13]=l,n[14]=s,n[15]=u):u=n[15],u});V.displayName=`DebouncedTextarea`;var H=F.forwardRef((e,t)=>{let n=(0,I.c)(23),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,onValueChange:i,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let[s,c]=F.useState(a.value),l;n[4]!==s||n[5]!==i||n[6]!==a.value?(l={prop:a.value,defaultProp:s,onChange:i},n[4]=s,n[5]=i,n[6]=a.value,n[7]=l):l=n[7];let[u,d]=o(l),f,p;n[8]===u?(f=n[9],p=n[10]):(f=()=>{c(u||``)},p=[u],n[8]=u,n[9]=f,n[10]=p),F.useEffect(f,p);let m;n[11]===Symbol.for(`react.memo_cache_sentinel`)?(m=e=>c(e.target.value),n[11]=m):m=n[11];let h,g;n[12]!==s||n[13]!==d?(h=()=>d(s),g=e=>{e.ctrlKey&&e.key===`Enter`&&(e.preventDefault(),d(s))},n[12]=s,n[13]=d,n[14]=h,n[15]=g):(h=n[14],g=n[15]);let _;return n[16]!==r||n[17]!==s||n[18]!==a||n[19]!==t||n[20]!==h||n[21]!==g?(_=(0,L.jsx)(B,{ref:t,className:r,...a,value:s,onChange:m,onBlur:h,onKeyDown:g}),n[16]=r,n[17]=s,n[18]=a,n[19]=t,n[20]=h,n[21]=g,n[22]=_):_=n[22],_});H.displayName=`OnBlurredTextarea`;var U=F.createContext({modal:null,setModal:()=>{}}),W=e=>{let t=(0,I.c)(6),[n,r]=F.useState(null),i;t[0]===n?i=t[1]:(i={modal:n,setModal:r},t[0]=n,t[1]=i);let a;return t[2]!==n||t[3]!==e.children||t[4]!==i?(a=(0,L.jsxs)(U,{value:i,children:[n,e.children]}),t[2]=n,t[3]=e.children,t[4]=i,t[5]=a):a=t[5],a};function G(){let e=F.use(U);if(e===void 0)throw Error(`useModal must be used within a ModalProvider`);let t=()=>{e.setModal(null)};return{openModal:n=>{e.setModal((0,L.jsx)(C,{open:!0,onOpenChange:e=>{e||t()},children:n}))},openAlert:n=>{e.setModal((0,L.jsx)(m,{open:!0,onOpenChange:e=>{e||t()},children:(0,L.jsxs)(l,{children:[n,(0,L.jsx)(p,{children:(0,L.jsx)(d,{autoFocus:!0,onClick:t,children:`Ok`})})]})}))},openPrompt:n=>{e.setModal((0,L.jsx)(m,{open:!0,onOpenChange:e=>{e||t()},children:(0,L.jsx)(l,{children:(0,L.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),n.onConfirm(e.currentTarget.prompt.value),t()},children:[(0,L.jsxs)(c,{children:[(0,L.jsx)(u,{children:n.title}),(0,L.jsx)(s,{children:n.description}),(0,L.jsx)(E,{spellCheck:n.spellCheck,defaultValue:n.defaultValue,className:`my-4 h-8`,name:`prompt`,required:!0,autoFocus:!0,autoComplete:`off`})]}),(0,L.jsxs)(p,{children:[(0,L.jsx)(f,{onClick:t,children:`Cancel`}),(0,L.jsx)(b,{type:`submit`,children:n.confirmText??`Ok`})]})]})})}))},openConfirm:n=>{e.setModal((0,L.jsx)(m,{open:!0,onOpenChange:e=>{e||t()},children:(0,L.jsxs)(l,{children:[(0,L.jsxs)(c,{children:[(0,L.jsx)(u,{className:n.variant===`destructive`?`text-destructive`:``,children:n.title}),(0,L.jsx)(s,{children:n.description})]}),(0,L.jsxs)(p,{children:[(0,L.jsx)(f,{onClick:t,children:`Cancel`}),n.confirmAction]})]})}))},closeModal:t}}var K=new z(`secrets-result`,async(e,t)=>{await A().listSecretKeys({requestId:e,...t})}),le=r([`text-sm font-medium leading-none`,`data-disabled:cursor-not-allowed data-disabled:opacity-70`,`group-data-invalid:text-destructive`]),ue=e=>{let t=(0,I.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let a;t[3]===n?a=t[4]:(a=i(le(),n),t[3]=n,t[4]=a);let o;return t[5]!==r||t[6]!==a?(o=(0,L.jsx)(T,{className:a,...r}),t[5]=r,t[6]=a,t[7]=o):o=t[7],o},q=e=>{let t=(0,I.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let a;t[3]===n?a=t[4]:(a=i(`text-sm text-muted-foreground`,n),t[3]=n,t[4]=a);let o;return t[5]!==r||t[6]!==a?(o=(0,L.jsx)(S,{className:a,...r,slot:`description`}),t[5]=r,t[6]=a,t[7]=o):o=t[7],o},de=e=>{let t=(0,I.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let a;t[3]===n?a=t[4]:(a=i(`text-sm font-medium text-destructive`,n),t[3]=n,t[4]=a);let o;return t[5]!==r||t[6]!==a?(o=(0,L.jsx)(O,{className:a,...r}),t[5]=r,t[6]=a,t[7]=o):o=t[7],o},J=r(``,{variants:{variant:{default:[`relative flex w-full items-center overflow-hidden rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background`,v(),`data-focus-within:outline-hidden data-focus-within:ring-2 data-focus-within:ring-ring data-focus-within:ring-offset-2`,`data-disabled:opacity-50`],ghost:``}},defaultVariants:{variant:`default`}}),fe=e=>{let t=(0,I.c)(12),n,r,a;t[0]===e?(n=t[1],r=t[2],a=t[3]):({className:n,variant:a,...r}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=a);let o;t[4]===a?o=t[5]:(o=e=>i(J({variant:a}),e),t[4]=a,t[5]=o);let s;t[6]!==n||t[7]!==o?(s=w(n,o),t[6]=n,t[7]=o,t[8]=s):s=t[8];let c;return t[9]!==r||t[10]!==s?(c=(0,L.jsx)(D,{className:s,...r}),t[9]=r,t[10]=s,t[11]=c):c=t[11],c},Y=e=>{let t=(0,I.c)(3),{href:n,children:r}=e,i;return t[0]!==r||t[1]!==n?(i=(0,L.jsx)(`a`,{href:n,target:`_blank`,rel:`noreferrer`,className:`text-link hover:underline`,children:r}),t[0]=r,t[1]=n,t[2]=i):i=t[2],i},X=`path:`;function Z(e){return typeof e==`string`&&e.startsWith(X)}function pe(e){return`${X}${e}`}function me(e){return e.slice(5)}var Q=`env:`;function he(e){return e}function ge(e){return typeof e==`string`&&e.startsWith(Q)}function _e(e){return`${Q}${e}`}function ve(e){return e.replace(Q,``)}function ye(e,t){return Z(e)?{kind:`path`,path:me(e)}:{kind:`json`,expr:ge(e)?`json.loads(${t(e)})`:`json.loads(r"""${e}""")`}}function be(e){let t=e.trimStart();return t.startsWith(`{`)||t.startsWith(`[`)}function $(e){let t=e.trim();if(!t)return``;try{return JSON.stringify(JSON.parse(t))}catch{return e.replaceAll(/\r?\n/g,``)}}function xe(e){return e.replaceAll(`\\`,`\\\\`).replaceAll(`"`,`\\"`).replaceAll(`
|
|
2
2
|
`,`\\n`).replaceAll(`\r`,`\\r`).replaceAll(` `,`\\t`)}function Se(e){return e.toSorted((e,t)=>e.provider===`env`?1:t.provider===`env`?-1:0)}var Ce=e=>{let t=(0,I.c)(47),{providerNames:n,onClose:r,onSuccess:i,initialValue:a,multiline:o}=e,s=a===void 0?``:a,c=o!==void 0&&o,{writeSecret:l}=ce(),[u,d]=F.useState(``),f;t[0]!==s||t[1]!==c?(f=()=>c?$(s):s,t[0]=s,t[1]=c,t[2]=f):f=t[2];let[p,m]=F.useState(f),[_,v]=F.useState(n[0]),y;t[3]!==u||t[4]!==_||t[5]!==c||t[6]!==i||t[7]!==p||t[8]!==l?(y=async e=>{if(e.preventDefault(),!_){k({title:`Error`,description:`No location selected for the secret.`,variant:`danger`});return}let t=c?$(p):p;if(!u||!t||!_){k({title:`Error`,description:`Please fill in all fields.`,variant:`danger`});return}try{await l({key:u,value:t,provider:`dotenv`,name:_}),k({title:`Secret created`,description:`The secret has been created successfully.`}),i(u)}catch{k({title:`Error`,description:`Failed to create secret. Please try again.`,variant:`danger`})}},t[3]=u,t[4]=_,t[5]=c,t[6]=i,t[7]=p,t[8]=l,t[9]=y):y=t[9];let x=y,S;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,L.jsxs)(re,{children:[(0,L.jsx)(se,{children:`Add Secret`}),(0,L.jsx)(ie,{children:`Add a new secret to your environment variables.`})]}),t[10]=S):S=t[10];let C;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,L.jsx)(g,{htmlFor:`key`,children:`Key`}),t[11]=C):C=t[11];let w;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(w=e=>{d(we(e.target.value))},t[12]=w):w=t[12];let T;t[13]===u?T=t[14]:(T=(0,L.jsxs)(`div`,{className:`grid gap-2`,children:[C,(0,L.jsx)(E,{id:`key`,value:u,onChange:w,placeholder:`MY_SECRET_KEY`,required:!0})]}),t[13]=u,t[14]=T);let D;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,L.jsx)(g,{htmlFor:`value`,children:`Value`}),t[15]=D):D=t[15];let O;t[16]!==c||t[17]!==p?(O=c?(0,L.jsx)(B,{id:`value`,value:p,onChange:e=>m($(e.target.value)),required:!0,className:`my-0 font-code text-xs break-all`,rows:8,autoFocus:!0,autoComplete:`off`}):(0,L.jsx)(E,{id:`value`,type:`password`,value:p,onChange:e=>m(e.target.value),required:!0,autoComplete:`off`}),t[16]=c,t[17]=p,t[18]=O):O=t[18];let A;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(A=Te()&&(0,L.jsx)(q,{children:`Note: You are sending this key over http.`}),t[19]=A):A=t[19];let j;t[20]===O?j=t[21]:(j=(0,L.jsxs)(`div`,{className:`grid gap-2`,children:[D,O,A]}),t[20]=O,t[21]=j);let M;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(M=(0,L.jsx)(g,{htmlFor:`location`,children:`Location`}),t[22]=M):M=t[22];let N;t[23]===n.length?N=t[24]:(N=n.length===0&&(0,L.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No dotenv locations configured.`}),t[23]=n.length,t[24]=N);let P;t[25]!==_||t[26]!==n?(P=n.length>0&&(0,L.jsxs)(ne,{value:_,onValueChange:e=>v(e),children:[(0,L.jsx)(te,{children:(0,L.jsx)(h,{placeholder:`Select a provider`})}),(0,L.jsx)(ee,{children:n.map(Ee)})]}),t[25]=_,t[26]=n,t[27]=P):P=t[27];let R;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,L.jsxs)(q,{children:[`You can configure the location by setting the`,` `,(0,L.jsx)(Y,{href:`https://links.marimo.app/dotenv`,children:`dotenv configuration`}),`.`]}),t[28]=R):R=t[28];let z;t[29]!==N||t[30]!==P?(z=(0,L.jsxs)(`div`,{className:`grid gap-2`,children:[M,N,P,R]}),t[29]=N,t[30]=P,t[31]=z):z=t[31];let V;t[32]!==j||t[33]!==z||t[34]!==T?(V=(0,L.jsxs)(`div`,{className:`grid gap-4 py-4`,children:[T,j,z]}),t[32]=j,t[33]=z,t[34]=T,t[35]=V):V=t[35];let H;t[36]===r?H=t[37]:(H=(0,L.jsx)(b,{type:`button`,variant:`outline`,onClick:r,children:`Cancel`}),t[36]=r,t[37]=H);let U=!u||!p||!_,W;t[38]===U?W=t[39]:(W=(0,L.jsx)(b,{type:`submit`,disabled:U,children:`Add Secret`}),t[38]=U,t[39]=W);let G;t[40]!==H||t[41]!==W?(G=(0,L.jsxs)(oe,{children:[H,W]}),t[40]=H,t[41]=W,t[42]=G):G=t[42];let K;return t[43]!==x||t[44]!==V||t[45]!==G?(K=(0,L.jsx)(ae,{children:(0,L.jsxs)(`form`,{onSubmit:x,children:[S,V,G]})}),t[43]=x,t[44]=V,t[45]=G,t[46]=K):K=t[46],K};function we(e){return e.replaceAll(/\W/g,`_`)}function Te(){return window.location.href.startsWith(`http://`)}function Ee(e){return(0,L.jsx)(_,{value:e,children:e},e)}export{B as C,H as S,P as T,J as _,ye as a,G as b,_e as c,pe as d,me as f,ue as g,fe as h,be as i,ve as l,de as m,Se as n,he as o,Y as p,xe as r,ge as s,Ce as t,Z as u,K as v,z as w,V as x,W as y};
|
package/dist/assets/{xychartDiagram-S5SC5T6Z-KbGzG6-u.js → xychartDiagram-S5SC5T6Z-CeRnBS5e.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{t as e}from"./linear-
|
|
1
|
+
import{t as e}from"./linear-Bma8J3iM.js";import{n as t}from"./ordinal-BdBDtYTt.js";import{t as n}from"./range-EplFIxc7.js";import{t as r}from"./line-io_go0HI.js";import{i}from"./chunk-75Z2AOVW-DlSlUzCU.js";import{n as a}from"./init-ZlXS9mIS.js";import{n as o}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{t as s}from"./src-Cyu5G-Tr.js";import{D as c,H as l,K as u,U as d,a as f,b as p,c as m,f as h,v as g,w as _,y as v,z as y}from"./chunk-DU6HZSFF-BxQd02hX.js";import{t as b}from"./chunk-CLGD4ZFX-CvGMvSe-.js";import"./chunk-PWAF6VOD-Dy1Fp4eJ.js";import{t as x}from"./chunk-GMAD6QVW-B1Ai6qbk.js";function S(){var e=t().unknown(void 0),r=e.domain,i=e.range,o=0,s=1,c,l,u=!1,d=0,f=0,p=.5;delete e.unknown;function m(){var e=r().length,t=s<o,a=t?s:o,m=t?o:s;c=(m-a)/Math.max(1,e-d+f*2),u&&(c=Math.floor(c)),a+=(m-a-c*(e-d))*p,l=c*(1-d),u&&(a=Math.round(a),l=Math.round(l));var h=n(e).map(function(e){return a+c*e});return i(t?h.reverse():h)}return e.domain=function(e){return arguments.length?(r(e),m()):r()},e.range=function(e){return arguments.length?([o,s]=e,o=+o,s=+s,m()):[o,s]},e.rangeRound=function(e){return[o,s]=e,o=+o,s=+s,u=!0,m()},e.bandwidth=function(){return l},e.step=function(){return c},e.round=function(e){return arguments.length?(u=!!e,m()):u},e.padding=function(e){return arguments.length?(d=Math.min(1,f=+e),m()):d},e.paddingInner=function(e){return arguments.length?(d=Math.min(1,e),m()):d},e.paddingOuter=function(e){return arguments.length?(f=+e,m()):f},e.align=function(e){return arguments.length?(p=Math.max(0,Math.min(1,e)),m()):p},e.copy=function(){return S(r(),[o,s]).round(u).paddingInner(d).paddingOuter(f).align(p)},a.apply(m(),arguments)}var C=(function(){var e=o(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),t=[1,10,12,14,16,18,19,21,23],n=[2,6],r=[1,3],i=[1,5],a=[1,6],s=[1,7],c=[1,5,10,12,14,16,18,19,21,23,36,37,38],l=[1,25],u=[1,26],d=[1,28],f=[1,29],p=[1,30],m=[1,31],h=[1,32],g=[1,33],_=[1,34],v=[1,35],y=[1,36],b=[1,37],x=[1,43],S=[1,42],C=[1,47],w=[1,50],T=[1,10,12,14,16,18,19,21,23,36,37,38],E=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38],D=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38,42,43,44,45,46,47,48,49,50,51],O=[1,65],k=[26,28],A={trace:o(function(){},`trace`),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,dataPoints:25,SQUARE_BRACES_END:26,dataPoint:27,COMMA:28,NUMBER_WITH_DECIMAL:29,STR:30,xAxisData:31,bandData:32,ARROW_DELIMITER:33,commaSeparatedTexts:34,yAxisData:35,NEWLINE:36,SEMI:37,EOF:38,alphaNum:39,MD_STR:40,alphaNumToken:41,AMP:42,NUM:43,ALPHA:44,PLUS:45,EQUALS:46,MULT:47,DOT:48,BRKT:49,MINUS:50,UNDERSCORE:51,$accept:0,$end:1},terminals_:{2:`error`,5:`XYCHART`,8:`CHART_ORIENTATION`,10:`title`,12:`X_AXIS`,14:`Y_AXIS`,16:`LINE`,18:`BAR`,19:`acc_title`,20:`acc_title_value`,21:`acc_descr`,22:`acc_descr_value`,23:`acc_descr_multiline_value`,24:`SQUARE_BRACES_START`,26:`SQUARE_BRACES_END`,28:`COMMA`,29:`NUMBER_WITH_DECIMAL`,30:`STR`,33:`ARROW_DELIMITER`,36:`NEWLINE`,37:`SEMI`,38:`EOF`,40:`MD_STR`,42:`AMP`,43:`NUM`,44:`ALPHA`,45:`PLUS`,46:`EQUALS`,47:`MULT`,48:`DOT`,49:`BRKT`,50:`MINUS`,51:`UNDERSCORE`},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[27,2],[27,1],[13,1],[13,2],[13,1],[31,1],[31,3],[32,3],[34,3],[34,1],[15,1],[15,2],[15,1],[35,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[39,1],[39,2],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1]],performAction:o(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 5:r.setOrientation(a[s]);break;case 9:r.setDiagramTitle(a[s].text.trim());break;case 12:r.setLineData({text:``,type:`text`},a[s]);break;case 13:r.setLineData(a[s-1],a[s]);break;case 14:r.setBarData({text:``,type:`text`},a[s]);break;case 15:r.setBarData(a[s-1],a[s]);break;case 16:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 17:case 18:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 19:this.$=a[s-1];break;case 20:case 30:this.$=[a[s-2],...a[s]];break;case 21:case 31:this.$=[a[s]];break;case 22:this.$={value:Number(a[s-1]),label:a[s]};break;case 23:this.$={value:Number(a[s]),label:``};break;case 24:r.setXAxisTitle(a[s]);break;case 25:r.setXAxisTitle(a[s-1]);break;case 26:r.setXAxisTitle({type:`text`,text:``});break;case 27:r.setXAxisBand(a[s]);break;case 28:r.setXAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 29:this.$=a[s-1];break;case 32:r.setYAxisTitle(a[s]);break;case 33:r.setYAxisTitle(a[s-1]);break;case 34:r.setYAxisTitle({type:`text`,text:``});break;case 35:r.setYAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 39:this.$={text:a[s],type:`text`};break;case 40:this.$={text:a[s],type:`text`};break;case 41:this.$={text:a[s],type:`markdown`};break;case 42:this.$=a[s];break;case 43:this.$=a[s-1]+``+a[s]}},`anonymous`),table:[e(t,n,{3:1,4:2,7:4,5:r,36:i,37:a,38:s}),{1:[3]},e(t,n,{4:2,7:4,3:8,5:r,36:i,37:a,38:s}),e(t,n,{4:2,7:4,6:9,3:10,5:r,8:[1,11],36:i,37:a,38:s}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},e(c,[2,36]),e(c,[2,37]),e(c,[2,38]),{1:[2,1]},e(t,n,{4:2,7:4,3:21,5:r,36:i,37:a,38:s}),{1:[2,3]},e(c,[2,5]),e(t,[2,7],{4:22,36:i,37:a,38:s}),{11:23,30:l,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:39,13:38,24:x,29:S,30:l,31:40,32:41,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:45,15:44,29:C,30:l,35:46,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:49,17:48,24:w,30:l,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{11:52,17:51,24:w,30:l,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},{20:[1,53]},{22:[1,54]},e(T,[2,18]),{1:[2,2]},e(T,[2,8]),e(T,[2,9]),e(E,[2,39],{41:55,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b}),e(E,[2,40]),e(E,[2,41]),e(D,[2,42]),e(D,[2,44]),e(D,[2,45]),e(D,[2,46]),e(D,[2,47]),e(D,[2,48]),e(D,[2,49]),e(D,[2,50]),e(D,[2,51]),e(D,[2,52]),e(D,[2,53]),e(T,[2,10]),e(T,[2,24],{32:41,31:56,24:x,29:S}),e(T,[2,26]),e(T,[2,27]),{33:[1,57]},{11:59,30:l,34:58,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},e(T,[2,11]),e(T,[2,32],{35:60,29:C}),e(T,[2,34]),{33:[1,61]},e(T,[2,12]),{17:62,24:w},{25:63,27:64,29:O},e(T,[2,14]),{17:66,24:w},e(T,[2,16]),e(T,[2,17]),e(D,[2,43]),e(T,[2,25]),{29:[1,67]},{26:[1,68]},{26:[2,31],28:[1,69]},e(T,[2,33]),{29:[1,70]},e(T,[2,13]),{26:[1,71]},{26:[2,21],28:[1,72]},e(k,[2,23],{30:[1,73]}),e(T,[2,15]),e(T,[2,28]),e(T,[2,29]),{11:59,30:l,34:74,39:24,40:u,41:27,42:d,43:f,44:p,45:m,46:h,47:g,48:_,49:v,50:y,51:b},e(T,[2,35]),e(T,[2,19]),{25:75,27:64,29:O},e(k,[2,22]),{26:[2,30]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],74:[2,30],75:[2,20]},parseError:o(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:o(function(e){var t=this,n=[0],r=[],i=[null],a=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=a.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(e,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;a.push(v);var y=h.options&&h.options.ranges;this.parseError=typeof g.yy.parseError==`function`?g.yy.parseError:Object.getPrototypeOf(this).parseError;function b(e){n.length-=2*e,i.length-=e,a.length-=e}o(b,`popStack`);function x(){var e=r.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(r=e,e=r.pop()),e=t.symbols_[e]||e),e}o(x,`lex`);for(var S,C,w,T,E,D={},O,k,A,j;;){if(w=n[n.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
|
|
2
2
|
`+h.showPosition()+`
|
|
3
3
|
Expecting `+j.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on line `+(l+1)+`: Unexpected `+(S==p?`end of input`:`'`+(this.terminals_[S]||S)+`'`),this.parseError(M,{text:h.match,token:this.terminals_[S]||S,line:h.yylineno,loc:v,expected:j})}if(T[0]instanceof Array&&T.length>1)throw Error(`Parse Error: multiple actions possible at state: `+w+`, token: `+S);switch(T[0]){case 1:n.push(S),i.push(h.yytext),a.push(h.yylloc),n.push(T[1]),S=null,C?(S=C,C=null):(u=h.yyleng,c=h.yytext,l=h.yylineno,v=h.yylloc,d>0&&d--);break;case 2:if(k=this.productions_[T[1]][1],D.$=i[i.length-k],D._$={first_line:a[a.length-(k||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(k||1)].first_column,last_column:a[a.length-1].last_column},y&&(D._$.range=[a[a.length-(k||1)].range[0],a[a.length-1].range[1]]),E=this.performAction.apply(D,[c,u,l,g.yy,T[1],i,a].concat(m)),E!==void 0)return E;k&&(n=n.slice(0,-1*k*2),i=i.slice(0,-1*k),a=a.slice(0,-1*k)),n.push(this.productions_[T[1]][0]),i.push(D.$),a.push(D._$),A=s[n[n.length-2]][n[n.length-1]],n.push(A);break;case 3:return!0}}return!0},`parse`)};A.lexer=(function(){return{EOF:1,parseError:o(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:o(function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match=``,this.conditionStack=[`INITIAL`],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},`setInput`),input:o(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},`input`),unput:o(function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},`unput`),more:o(function(){return this._more=!0,this},`more`),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError(`Lexical error on line `+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
4
|
`+this.showPosition(),{text:``,token:null,line:this.yylineno});return this},`reject`),less:o(function(e){this.unput(this.match.slice(e))},`less`),pastInput:o(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?`...`:``)+e.substr(-20).replace(/\n/g,``)},`pastInput`),upcomingInput:o(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?`...`:``)).replace(/\n/g,``)},`upcomingInput`),showPosition:o(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
|