@marimo-team/islands 0.25.3-dev29 → 0.25.3-dev291
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/{ConnectedDataExplorerComponent-7EaP9VWb.js → ConnectedDataExplorerComponent-CErm132k.js} +116 -113
- package/dist/{ErrorBoundary-ysC54Xwn.js → ErrorBoundary-Df7sOY5r.js} +76 -82
- package/dist/_baseSet-BfI5FjBM.js +328 -0
- package/dist/{abnfDiagram-VCTEODGH-z_OSynK8.js → abnfDiagram-VCTEODGH-d-Qn2fwb.js} +2 -2
- package/dist/any-language-editor-6k6F12Z3.js +75 -0
- package/dist/{architectureDiagram-5GKGNRK7-Cs8J8BZr.js → architectureDiagram-5GKGNRK7-DxragHYv.js} +1 -1
- package/dist/{arrays-CN1djC4k.js → arrays-DoQ-AILx.js} +15 -27
- package/dist/assertNever-B-YzWzbL.js +507 -0
- package/dist/assets/__vite-browser-external-BKBpimif.js +1 -0
- package/dist/assets/worker-CgoMtD-_.js +113 -0
- package/dist/{blockDiagram-I7D4REHJ-Cg25UrxT.js → blockDiagram-I7D4REHJ-Dkhe6_PP.js} +1 -1
- package/dist/{button-CvjkwdSk.js → button-DZuNnIZO.js} +56 -48
- package/dist/{capabilities-CQ5IjhzL.js → capabilities-D9FskwsK.js} +2 -2
- package/dist/{chat-ui-0udY4hpv.js → chat-ui-CoAmcc-W.js} +2100 -1810
- package/dist/{check-BMKBBrdc.js → check-XFzZeH-y.js} +1 -1
- package/dist/{chunk-IMKFNOWR-aoSFasqF.js → chunk-IMKFNOWR-C0x0feFg.js} +1 -1
- package/dist/{chunk-SHT3W25Y-CMaybO3O.js → chunk-SHT3W25Y-D0ZdASqB.js} +1 -1
- package/dist/{chunk-SVP7TREG-BNBrTAw1.js → chunk-SVP7TREG-BHjL96zx.js} +1 -1
- package/dist/{chunk-TICWLB2K-DXNxvUJn.js → chunk-TICWLB2K-CzcrwGfp.js} +1 -1
- package/dist/{classDiagram-ZZMXUADV-DXdCCDOg.js → classDiagram-ZZMXUADV-BTqFAZTP.js} +2 -2
- package/dist/{classDiagram-v2-VYDZK3BY-DyZqrtLP.js → classDiagram-v2-VYDZK3BY-EPXb0Elt.js} +2 -2
- package/dist/{code-visibility-CZmyRTO8.js → code-visibility-DO6O_8h-.js} +43 -50
- package/dist/{common-CCrzSQnL.js → common-Coz-wkOd.js} +10640 -10053
- package/dist/config-C8MFHQ2E.js +637 -0
- package/dist/{copy-icon-BgUO8jsi.js → copy-icon-CtllOdmg.js} +3 -3
- package/dist/createReducer-DRqwmaTc.js +67 -0
- package/dist/{cynefinDiagram-5FMLGOSQ-DWHuKJs8.js → cynefinDiagram-5FMLGOSQ-CBSD344q.js} +1 -1
- package/dist/{dagre-GXQ25YYZ-DYLu-OCU.js → dagre-GXQ25YYZ-JItjh3Ge.js} +3 -3
- package/dist/{dagre-BGSfXNEb.js → dagre-mqiMAsFY.js} +531 -680
- package/dist/{data-grid-overlay-editor-B141KnZO.js → data-grid-overlay-editor-LbsctrY7.js} +1 -1
- package/dist/{debounce-C3jyATpc.js → debounce-DrhhziJv.js} +2 -2
- package/dist/{diagram-S7CK7UJ4-PwwcUOHP.js → diagram-S7CK7UJ4-CTD9xTVb.js} +1 -1
- package/dist/{diagram-UQ7AKVKN-CvJbL_IM.js → diagram-UQ7AKVKN-DTfnFai8.js} +1 -1
- package/dist/{diagram-VX7I27RA-B5RkqnzN.js → diagram-VX7I27RA-BcSnucV-.js} +1 -1
- package/dist/{diagram-Z3DM3KII-CyijwTR2.js → diagram-Z3DM3KII-C2ATIE8A.js} +1 -1
- package/dist/{dialog-Cc479ZEH.js → dialog-CaYm5imE.js} +32 -32
- package/dist/{dist-Bvs24R_E.js → dist-11T5wq3_.js} +31 -30
- package/dist/{dist-F8Ep36rk.js → dist-17ugwGZc.js} +59 -58
- package/dist/{dist-BMQf5zIS.js → dist-7cRjf--y.js} +123 -122
- package/dist/{dist-diIx5qJW.js → dist-B8pkfkzc.js} +31 -30
- package/dist/{dist-CN_BeG2I.js → dist-B9UoM_wq.js} +58 -57
- package/dist/{dist-CLdpGQVr.js → dist-BGuMTs1i.js} +118 -117
- package/dist/{dist-BK4Oj99o.js → dist-BHW11fni.js} +18 -17
- package/dist/dist-BLY4m1Wi.js +850 -0
- package/dist/{dist-PXYI_yuP.js → dist-BNlcVoxs.js} +24 -23
- package/dist/{dist-D6d86eNJ.js → dist-BQYe5Bju.js} +47 -46
- package/dist/{dist-CkTTIdBe.js → dist-BX1mn8na.js} +337 -337
- package/dist/{dist-DiDibOYr.js → dist-Bh0PTKUW.js} +151 -150
- package/dist/{dist-CSJ0MDRw.js → dist-CKaXK92p.js} +56 -55
- package/dist/{dist-C8fAKSH1.js → dist-CLhwfhpJ.js} +53 -52
- package/dist/{dist-DoE4XJBC.js → dist-CYeqK4Xw.js} +9801 -10649
- package/dist/{dist-BLfKmR-l.js → dist-Cxlp3WH6.js} +16 -15
- package/dist/{dist-D-wwqlzJ.js → dist-DSJPGj42.js} +158 -157
- package/dist/{dist-BorMD-uX.js → dist-DU9ICsWZ.js} +75 -74
- package/dist/{dist-DBtSl3sf.js → dist-DWv0ALBi.js} +47 -46
- package/dist/{dist-OR1OnN-y.js → dist-DiBpWEsB.js} +31 -30
- package/dist/{dist-CrSP_H1M.js → dist-DiLFTlnl.js} +242 -242
- package/dist/{dist-CN8zI-XC.js → dist-X9CsotJl.js} +239 -239
- package/dist/{dist-CSbh1PNP.js → dist-cVDV5IuI.js} +23 -22
- package/dist/{dist-BuaRHxOc.js → dist-fRfaOoq8.js} +44 -43
- package/dist/{dist-Cg7gzw-a.js → dist-gTTI-9Px.js} +78 -77
- package/dist/{dropdown-menu-BuE2b8Yb.js → dropdown-menu-Bb0bFOIk.js} +2904 -1493
- package/dist/{ebnfDiagram-PWID7BFC-DG90ELFp.js → ebnfDiagram-PWID7BFC-B7B9JPxc.js} +2 -2
- package/dist/{erDiagram-RLTQ6QDP-FMo_SpyX.js → erDiagram-RLTQ6QDP-v6hDno1O.js} +1 -1
- package/dist/{error-banner-CFPHFw4h.js → error-banner-CHCdHVFB.js} +87 -87
- package/dist/error-entries-CQl9aZz1.js +2595 -0
- package/dist/{esm-AMFssoNp.js → esm-BDqqT86j.js} +329 -329
- package/dist/{esm-D2gTsXEV.js → esm-BgKjMvWw.js} +530 -529
- package/dist/feedback-button-DQXS8piQ.js +374 -0
- package/dist/{flowDiagram-HODETNUW-DQ4JuadE.js → flowDiagram-HODETNUW-aIFlAtOy.js} +2 -2
- package/dist/{formats-DRHUWwSK.js → formats-PzBQMUnr.js} +6 -6
- package/dist/{glide-data-editor-DLHbRbsj.js → glide-data-editor-CiTOpufo.js} +6630 -2846
- package/dist/{glide-utils-pisbYVjH.js → glide-utils-BSQr4d90.js} +107 -76
- package/dist/{globals-D2g1BHQ0.js → globals-Bmz_qpY8.js} +3 -3
- package/dist/{graphlib-BmY_CCV9.js → graphlib-nlwT3Wvy.js} +177 -220
- package/dist/hasIn-C20JsQ2m.js +28 -0
- package/dist/{error-entries-DgtRTNaG.js → html-to-image-DbxMq9QA.js} +26294 -26451
- package/dist/{infoDiagram-27XIBGKW-CRSDtRrd.js → infoDiagram-27XIBGKW-D6YHLeCP.js} +1 -1
- package/dist/isArrayLikeObject-B-HXCsex.js +626 -0
- package/dist/isEmpty-CdX7MTE1.js +14 -0
- package/dist/{ishikawaDiagram-5VMMS53U-DxLEUldB.js → ishikawaDiagram-5VMMS53U-D1ZvprOX.js} +1 -1
- package/dist/{kanban-definition-UXKFOSKX-BLhvu8o4.js → kanban-definition-UXKFOSKX-Bna_3BMr.js} +1 -1
- package/dist/{loader-BPdQhmlq.js → loader-DZvtzQoD.js} +3 -3
- package/dist/main.js +10276 -8171
- package/dist/{mermaid-Bjm6C1qN.js → mermaid-A36unKXJ.js} +62 -62
- package/dist/{mindmap-definition-YA3MSWOX-g2LwxnYQ.js → mindmap-definition-YA3MSWOX-CyVCs__G.js} +1 -1
- package/dist/{now-jM8-M7IR.js → now-BKZCLE5P.js} +12 -13
- package/dist/{number-overlay-editor-DHqP6YVn.js → number-overlay-editor-CXO_e1Yo.js} +1 -1
- package/dist/{objects-CzUgoMIF.js → objects-DCmMvZtn.js} +1 -3
- package/dist/{once-BtE-wKRL.js → once-NnpX_HnX.js} +1 -1
- package/dist/{pegDiagram-XKGWAZYB-CpMAt3Qs.js → pegDiagram-XKGWAZYB-9hNBD2wZ.js} +2 -2
- package/dist/pencil-DYUlSKxZ.js +10 -0
- package/dist/pick-tCszMUbm.js +35 -0
- package/dist/{pieDiagram-E7YTZNPT-CVTthoZo.js → pieDiagram-E7YTZNPT-8tr-NYo7.js} +1 -1
- package/dist/{process-output-CuIlhYwn.js → process-output-BHsfwmw9.js} +4 -4
- package/dist/{railroadDiagram-O6MQD6OU-ao8cqqFB.js → railroadDiagram-O6MQD6OU-Dzg1dyyp.js} +2 -2
- package/dist/{react-vega-BDpbvBCb.js → react-vega-C4T9Rb_w.js} +1 -1
- package/dist/{requirementDiagram-BXWQKSXE--J8vyfm-.js → requirementDiagram-BXWQKSXE-B7sNqwGG.js} +1 -1
- package/dist/{reveal-component-DYHhtPqq.js → reveal-component-CLRZbwl1.js} +1151 -1128
- package/dist/select-DsoP1qe8.js +1200 -0
- package/dist/{sequenceDiagram-WJ2MYXX4-CiQbn62x.js → sequenceDiagram-WJ2MYXX4-oP9shbaG.js} +1 -1
- package/dist/{spec-D_u2ipzF.js → spec-BZMDxAu7.js} +41 -11
- package/dist/{stateDiagram-D77RDMKH-DVEeGs5b.js → stateDiagram-D77RDMKH-CjCv4ogv.js} +4 -4
- package/dist/{stateDiagram-v2-MP3YSRHH-1OQRe6iA.js → stateDiagram-v2-MP3YSRHH-BW9X162a.js} +2 -2
- package/dist/static-state-D-Q-Ajaa.js +72 -0
- package/dist/style.css +1 -1
- package/dist/{swimlanes-42K2YHIH-CqkGoGqn.js → swimlanes-42K2YHIH-Ckfs9Wrn.js} +1 -1
- package/dist/{swimlanesDiagram-VR7AAH4N-CszjkrKo.js → swimlanesDiagram-VR7AAH4N-DpTNG9YP.js} +2 -2
- package/dist/{swiper-component-DKntyn8p.js → swiper-component-DQbK_ZWm.js} +7 -7
- package/dist/{timeline-definition-24CTP7MA-DLRUNVAx.js → timeline-definition-24CTP7MA-BXaBlV6U.js} +1 -1
- package/dist/toast-BhjIy3Tq.js +491 -0
- package/dist/{tooltip-CtBZ5q8p.js → tooltip-DMMiOn2f.js} +321 -297
- package/dist/use-restore-focus-CosX7-gx.js +7568 -0
- package/dist/{useAsyncData-BneN349z.js → useAsyncData-Ci4AvJff.js} +18 -17
- package/dist/{useDateFormatter-DkajGwwd.js → useDateFormatter-CPlava52.js} +2 -2
- package/dist/{useDeepCompareMemoize-Z_7R8wTt.js → useDeepCompareMemoize-NaaWoFlX.js} +1 -1
- package/dist/useEvent-BRH-aCqi.js +19 -0
- package/dist/{useIframeCapabilities-DBETvvPl.js → useIframeCapabilities-BXhDDoCG.js} +1 -1
- package/dist/useLifecycle-SniivYmC.js +112 -0
- package/dist/{vega-component-1lFfDE_8.js → vega-component-DIxaDQNs.js} +161 -160
- package/dist/{vega-embed-container-BgKnsDbB.js → vega-embed-container--LYZqguO.js} +2 -2
- package/dist/{vega-loader.browser-CpbZAXub.js → vega-loader.browser-B9Pz0EGP.js} +1 -1
- package/dist/{vennDiagram-4TSXK5OY-CypgoBVZ.js → vennDiagram-4TSXK5OY-C-hQ4iNJ.js} +1 -1
- package/dist/{wardleyDiagram-VM6X3IG4-B6xjiQ_g.js → wardleyDiagram-VM6X3IG4-C2MQ_Umv.js} +1 -1
- package/dist/{xychartDiagram-S5SC5T6Z-e0PefDVs.js → xychartDiagram-S5SC5T6Z-BtTTBn7Q.js} +1 -1
- package/package.json +16 -20
- package/src/__mocks__/document.tsx +63 -0
- package/src/__mocks__/executions.ts +197 -0
- package/src/__mocks__/notebook.ts +3 -7
- package/src/__mocks__/partial.ts +26 -0
- package/src/__mocks__/requests.ts +1 -4
- package/src/__tests__/CellStatus.test.tsx +25 -26
- package/src/__tests__/fixtures/pair-config.ts +1 -1
- package/src/__tests__/main.test.tsx +24 -1
- package/src/__tests__/module-entry.test.ts +44 -0
- package/src/__tests__/mount.test.ts +1 -21
- package/src/__tests__/{host-imports.test.ts → replica-imports.test.ts} +12 -11
- package/src/components/ai/__tests__/ai-model-dropdown.test.tsx +63 -0
- package/src/components/ai/ai-model-dropdown.tsx +11 -6
- package/src/components/app-config/__tests__/state.test.tsx +50 -0
- package/src/components/app-config/ai-config.tsx +156 -150
- package/src/components/app-config/app-config-button.tsx +6 -5
- package/src/components/app-config/app-config-form.tsx +5 -9
- package/src/components/app-config/common.tsx +7 -9
- package/src/components/app-config/data-form.tsx +112 -113
- package/src/components/app-config/mcp-config.tsx +30 -53
- package/src/components/app-config/user-config-form.css +91 -0
- package/src/components/app-config/user-config-form.tsx +266 -349
- package/src/components/chat/__tests__/capabilities-popover.test.tsx +0 -1
- package/src/components/chat/__tests__/chat-display.test.tsx +196 -0
- package/src/components/chat/__tests__/chat-markdown.test.tsx +43 -0
- package/src/components/chat/__tests__/chat-utils.test.ts +93 -1
- package/src/components/chat/__tests__/message-queue.test.tsx +17 -0
- package/src/components/chat/__tests__/notebook-access-selector.test.tsx +64 -0
- package/src/components/chat/__tests__/turn-timing.test.ts +84 -0
- package/src/components/chat/__tests__/use-assistant-turn.test.ts +95 -0
- package/src/components/chat/__tests__/user-message.test.tsx +27 -0
- package/src/components/chat/acp/__tests__/agent-panel-initialization.test.tsx +1 -1
- package/src/components/chat/acp/__tests__/agent-panel.test.tsx +22 -17
- package/src/components/chat/acp/__tests__/session-tabs.test.tsx +43 -0
- package/src/components/chat/acp/__tests__/state.test.ts +2 -2
- package/src/components/chat/acp/agent-panel.tsx +6 -3
- package/src/components/chat/acp/blocks.tsx +13 -12
- package/src/components/chat/acp/common.tsx +4 -5
- package/src/components/chat/acp/model-selector.tsx +1 -1
- package/src/components/chat/acp/session-tabs.tsx +8 -3
- package/src/components/chat/agent-activity.tsx +132 -0
- package/src/components/chat/capabilities-popover.tsx +2 -11
- package/src/components/chat/chat-components.tsx +9 -4
- package/src/components/chat/chat-display.tsx +131 -57
- package/src/components/chat/chat-history-popover.tsx +6 -1
- package/src/components/chat/chat-markdown.tsx +15 -0
- package/src/components/chat/chat-panel.tsx +216 -294
- package/src/components/chat/chat-typography.css +108 -0
- package/src/components/chat/chat-utils.ts +24 -35
- package/src/components/chat/notebook-access-selector.stories.tsx +22 -0
- package/src/components/chat/notebook-access-selector.tsx +100 -0
- package/src/components/chat/tool-call/__tests__/tool-labels.test.ts +76 -0
- package/src/components/chat/tool-call/__tests__/tool-step.test.tsx +57 -0
- package/src/components/chat/tool-call/shared.ts +6 -0
- package/src/components/chat/tool-call/tool-call-view.tsx +22 -76
- package/src/components/chat/tool-call/tool-labels.ts +172 -0
- package/src/components/chat/tool-call/tool-result.tsx +1 -1
- package/src/components/chat/tool-call/tool-step.tsx +145 -0
- package/src/components/chat/turn-timing.ts +73 -0
- package/src/components/chat/use-assistant-turn.ts +65 -0
- package/src/components/chat/use-chat-generation.ts +20 -0
- package/src/components/chat/user-message.tsx +145 -0
- package/src/components/data-table/TableBottomBar.tsx +4 -1
- package/src/components/data-table/TableTopBar.tsx +2 -0
- package/src/components/data-table/__tests__/chart-spec-model.test.ts +195 -195
- 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__/data-table.test.tsx +1 -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__/keyboard-selection.test.tsx +188 -0
- package/src/components/data-table/__tests__/pagination.test.tsx +28 -1
- 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__/spec-snapshot.test.ts +20 -20
- package/src/components/data-table/charts/__tests__/spec.test.ts +78 -52
- package/src/components/data-table/charts/__tests__/storage.test.ts +4 -1
- package/src/components/data-table/charts/chart-spec/spec.ts +68 -43
- package/src/components/data-table/charts/charts.tsx +40 -30
- 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-formatting/types.ts +1 -2
- package/src/components/data-table/column-summary/chart-spec-model.tsx +23 -16
- 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 +17 -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/pagination.tsx +44 -33
- package/src/components/data-table/range-focus/atoms.ts +4 -6
- package/src/components/data-table/range-focus/use-cell-range-selection.ts +65 -38
- package/src/components/data-table/range-focus/use-scroll-into-view.ts +21 -2
- package/src/components/data-table/renderers.tsx +16 -7
- package/src/components/data-table/row-viewer-panel/__tests__/row-viewer.test.tsx +24 -1
- package/src/components/data-table/row-viewer-panel/row-viewer.tsx +4 -4
- 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 +96 -5
- package/src/components/datasources/__tests__/datasources-interactions.test.tsx +181 -0
- package/src/components/datasources/__tests__/table-list.test.tsx +118 -0
- package/src/components/datasources/__tests__/utils.test.ts +57 -6
- package/src/components/datasources/column-preview.tsx +17 -12
- package/src/components/datasources/datasources.tsx +56 -43
- package/src/components/datasources/utils.ts +32 -23
- package/src/components/debugger/debugger-code.tsx +5 -0
- package/src/components/dependency-graph/custom-node.tsx +1 -1
- package/src/components/dependency-graph/dependency-graph-tree.tsx +8 -8
- package/src/components/dependency-graph/elements.ts +24 -21
- package/src/components/dependency-graph/minimap-content.tsx +15 -20
- package/src/components/dependency-graph/panels.tsx +4 -2
- package/src/components/dependency-graph/utils/__tests__/layout.test.ts +18 -11
- package/src/components/editor/SortableCell.tsx +1 -3
- package/src/components/editor/__tests__/Output.test.tsx +50 -32
- package/src/{core/attachments/__tests__/toast.test.tsx → components/editor/__tests__/agent-toast.test.tsx} +1 -1
- package/src/components/editor/__tests__/data-attributes.test.tsx +28 -23
- package/src/components/editor/__tests__/dynamic-favicon.test.tsx +111 -18
- package/src/components/editor/__tests__/output-persistence.test.tsx +28 -9
- package/src/components/editor/__tests__/package-alert.test.tsx +22 -1
- package/src/components/editor/actions/__tests__/name-cell-input.test.tsx +69 -0
- package/src/components/editor/actions/__tests__/pair-with-agent-commands.test.ts +21 -40
- package/src/components/editor/actions/__tests__/pair-with-agent-modal.test.tsx +41 -14
- package/src/components/editor/actions/__tests__/pair-with-agent.test.tsx +6 -24
- package/src/components/editor/actions/__tests__/useCellActionButton.test.tsx +131 -0
- package/src/components/editor/actions/name-cell-input.tsx +4 -3
- package/src/components/editor/actions/pair-with-agent-commands.ts +10 -7
- package/src/components/editor/actions/pair-with-agent-modal.tsx +29 -30
- package/src/components/editor/actions/pair-with-agent.tsx +16 -39
- package/src/components/editor/actions/useCellActionButton.tsx +47 -35
- package/src/components/editor/actions/useConfigActions.tsx +3 -4
- package/src/components/editor/actions/useNotebookActions.tsx +25 -29
- package/src/components/editor/actions/useRestartKernel.tsx +1 -1
- package/src/components/editor/actions/useSetCodeVisibility.ts +11 -12
- package/src/components/editor/actions/useSetOutputsExpanded.ts +14 -19
- package/src/components/editor/ai/ai-completion-editor.tsx +2 -1
- package/src/components/editor/ai/completion-handlers.tsx +0 -37
- package/src/components/editor/ai/prompt-input.tsx +189 -0
- package/src/components/editor/alerts/__tests__/connection-notice.test.tsx +1 -1
- package/src/components/editor/alerts/connection-notice.tsx +1 -1
- package/src/components/editor/alerts/startup-logs-alert.tsx +1 -0
- package/src/components/editor/alerts/stdin-blocking-alert.tsx +4 -2
- package/src/components/editor/app-container.tsx +1 -1
- package/src/components/editor/boundary/__tests__/ErrorBoundary.test.tsx +1 -1
- package/src/components/editor/cell/CellStatus.tsx +28 -23
- package/src/components/editor/cell/CreateCellButton.tsx +15 -21
- package/src/components/editor/cell/DeleteButton.tsx +3 -2
- package/src/components/editor/cell/RunButton.tsx +18 -8
- package/src/components/editor/cell/StagedAICell.tsx +52 -137
- package/src/components/editor/cell/StopButton.tsx +2 -2
- package/src/components/editor/cell/__tests__/useRunCells.test.tsx +169 -0
- package/src/components/editor/cell/__tests__/useShouldShowInterrupt.test.ts +39 -0
- package/src/components/editor/cell/cell-actions.tsx +12 -1
- package/src/components/editor/cell/cell-context-menu.tsx +4 -1
- package/src/components/editor/cell/code/__tests__/language-toggle.test.tsx +54 -0
- package/src/components/editor/cell/code/cell-editor.tsx +65 -169
- package/src/components/editor/cell/code/language-toggle.tsx +8 -7
- package/src/components/editor/cell/collapse.tsx +16 -6
- package/src/components/editor/cell/useAddCell.ts +4 -8
- package/src/components/editor/cell/useDeleteCell.tsx +10 -36
- package/src/components/editor/cell/useRunCells.ts +49 -8
- package/src/components/editor/cell/useShouldShowInterrupt.ts +2 -12
- package/src/components/editor/cell/useSplitCell.tsx +10 -6
- package/src/components/editor/chrome/components/__tests__/feedback-button.test.tsx +1 -1
- package/src/components/editor/chrome/components/feedback-button.tsx +2 -8
- package/src/components/editor/chrome/panels/__tests__/packages-panel.test.tsx +31 -2
- package/src/components/editor/chrome/panels/__tests__/runtime-details.test.tsx +1 -1
- package/src/components/editor/chrome/panels/__tests__/sandbox-recovery.test.tsx +1 -1
- package/src/components/editor/chrome/panels/cache-panel.tsx +1 -0
- package/src/components/editor/chrome/panels/dependency-graph-panel.tsx +1 -1
- package/src/components/editor/chrome/panels/logs-panel.tsx +2 -1
- package/src/components/editor/chrome/panels/outline/__tests__/outline-keyboard.test.tsx +84 -0
- package/src/components/editor/chrome/panels/outline/floating-outline.tsx +39 -14
- package/src/components/editor/chrome/panels/outline/useActiveOutline.tsx +3 -2
- package/src/components/editor/chrome/panels/packages-panel.tsx +4 -7
- package/src/components/editor/chrome/panels/panel-header.tsx +13 -0
- package/src/components/editor/chrome/panels/secrets-panel.tsx +1 -0
- package/src/components/editor/chrome/panels/session-panel.tsx +1 -1
- package/src/components/editor/chrome/panels/snippets-panel.tsx +10 -12
- package/src/components/editor/chrome/panels/variable-panel.tsx +1 -5
- package/src/components/editor/chrome/types.ts +1 -1
- package/src/components/editor/chrome/wrapper/__tests__/attachment-status.test.tsx +7 -9
- package/src/components/editor/chrome/wrapper/__tests__/document-sync-status.test.tsx +92 -0
- package/src/components/editor/chrome/wrapper/__tests__/pending-ai-cells.test.tsx +265 -37
- package/src/components/editor/chrome/wrapper/__tests__/useAskAiAboutCell.test.tsx +58 -0
- package/src/components/editor/chrome/wrapper/app-chrome.tsx +91 -74
- package/src/components/editor/chrome/wrapper/footer-items/attachment-status.tsx +4 -4
- package/src/components/editor/chrome/wrapper/footer-items/backend-status.tsx +1 -1
- package/src/components/editor/chrome/wrapper/footer-items/document-sync-status.tsx +54 -0
- package/src/components/editor/chrome/wrapper/footer-items/lsp-status.tsx +1 -1
- package/src/components/editor/chrome/wrapper/footer-items/machine-stats.tsx +1 -1
- package/src/components/editor/chrome/wrapper/footer-items/runtime-settings.tsx +1 -7
- package/src/components/editor/chrome/wrapper/footer.tsx +2 -2
- package/src/components/editor/chrome/wrapper/minimap-state.ts +1 -1
- package/src/components/editor/chrome/wrapper/pending-ai-cells.tsx +143 -72
- package/src/components/editor/chrome/wrapper/pending-ai-changes-badge.tsx +25 -0
- package/src/components/editor/chrome/wrapper/sidebar.tsx +8 -4
- package/src/components/editor/chrome/wrapper/storage.ts +1 -1
- package/src/components/editor/chrome/wrapper/useAskAiAboutCell.ts +36 -0
- package/src/components/editor/columns/__tests__/cell-column.test.tsx +1 -1
- package/src/components/editor/columns/cell-column.tsx +1 -1
- package/src/components/editor/columns/sortable-column.tsx +2 -2
- package/src/components/editor/connections/components.tsx +5 -10
- package/src/components/editor/controls/Controls.tsx +4 -4
- package/src/components/editor/controls/__tests__/command-palette.test.tsx +53 -0
- package/src/components/editor/controls/__tests__/keyboard-shortcuts.test.tsx +61 -0
- package/src/components/editor/controls/__tests__/notebook-menu-dropdown.test.tsx +10 -4
- package/src/components/editor/controls/command-palette.tsx +22 -10
- package/src/components/editor/controls/keyboard-shortcuts.tsx +14 -5
- package/src/components/editor/documentation.css +34 -11
- package/src/components/editor/dynamic-favicon.tsx +21 -40
- package/src/components/editor/errors/__tests__/send-error-report-button.test.tsx +26 -22
- package/src/components/editor/errors/auto-fix.tsx +4 -8
- package/src/components/editor/errors/send-error-report-button.tsx +3 -6
- package/src/components/editor/file-tree/__tests__/file-explorer-interactions.test.tsx +6 -0
- package/src/components/editor/file-tree/__tests__/file-explorer-navigation.test.tsx +47 -0
- package/src/components/editor/file-tree/__tests__/use-file-search.test.tsx +91 -0
- package/src/components/editor/file-tree/file-explorer.tsx +48 -15
- package/src/components/editor/file-tree/file-name-input.tsx +1 -0
- 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/header/__tests__/filename-form.test.tsx +1 -4
- package/src/components/editor/header/__tests__/status.test.tsx +5 -3
- package/src/components/editor/header/app-header.tsx +1 -1
- package/src/components/editor/header/filename-form.tsx +1 -1
- package/src/components/editor/header/status.tsx +44 -22
- package/src/components/editor/links/__tests__/cell-link.test.tsx +148 -0
- package/src/components/editor/links/cell-link-list.tsx +1 -1
- package/src/components/editor/links/cell-link.tsx +21 -11
- package/src/components/editor/navigation/__tests__/clipboard.test.ts +60 -38
- package/src/components/editor/navigation/__tests__/navigation.test.ts +108 -85
- package/src/components/editor/navigation/__tests__/selection.test.ts +43 -21
- package/src/components/editor/navigation/clipboard.ts +17 -14
- package/src/components/editor/navigation/focus-utils.ts +23 -4
- package/src/components/editor/navigation/multi-cell-action-toolbar.tsx +17 -33
- package/src/components/editor/navigation/navigation.ts +74 -72
- package/src/components/editor/navigation/selection.ts +30 -29
- package/src/components/editor/notebook-banner.tsx +1 -0
- package/src/components/editor/notebook-cell.tsx +126 -152
- package/src/components/editor/output/MarimoErrorOutput.tsx +41 -4
- package/src/components/editor/output/MarimoTracebackOutput.tsx +19 -17
- package/src/components/editor/output/Outputs.css +8 -0
- package/src/components/editor/output/VideoOutput.tsx +6 -0
- package/src/components/editor/output/__tests__/VideoOutput.test.tsx +131 -0
- package/src/components/editor/output/__tests__/traceback.test.tsx +27 -1
- package/src/components/editor/output/ansi-reduce.ts +33 -20
- package/src/components/editor/output/console/ConsoleOutput.tsx +19 -25
- package/src/components/editor/output/console/__tests__/ConsoleOutput.test.tsx +125 -69
- package/src/components/editor/package-alert.tsx +14 -7
- package/src/components/editor/renderers/__tests__/add-cell-buttons.test.tsx +18 -0
- package/src/components/editor/renderers/cell-array.tsx +32 -100
- package/src/components/editor/renderers/grid-layout/__tests__/grid-layout.test.tsx +75 -0
- package/src/components/editor/renderers/grid-layout/grid-layout.tsx +28 -22
- package/src/components/editor/renderers/slides-layout/__tests__/plugin.test.ts +0 -4
- package/src/components/editor/renderers/slides-layout/slides-layout.tsx +1 -1
- package/src/components/editor/renderers/vertical-layout/__tests__/useFocusFirstEditor.test.ts +4 -4
- package/src/components/editor/renderers/vertical-layout/sidebar/toggle.tsx +7 -1
- package/src/components/editor/renderers/vertical-layout/useFocusFirstEditor.ts +1 -1
- package/src/components/editor/renderers/vertical-layout/vertical-layout.tsx +19 -37
- package/src/components/editor/stdin-blocking-alert.tsx +4 -2
- 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/markdown/markdown-renderer.tsx +39 -28
- package/src/components/mcp/mcp-status-indicator.tsx +18 -14
- package/src/components/pages/__tests__/home-page.test.tsx +116 -0
- package/src/components/pages/edit-page.tsx +19 -17
- package/src/components/pages/home-page.tsx +164 -91
- package/src/components/scratchpad/scratchpad.test.tsx +89 -0
- package/src/components/scratchpad/scratchpad.tsx +47 -33
- package/src/components/scratchpad/state.ts +7 -0
- package/src/components/slides/__tests__/minimap-actions.test.tsx +22 -29
- package/src/components/slides/__tests__/minimap.test.ts +38 -19
- package/src/components/slides/__tests__/slide-scroll-hint.test.tsx +37 -0
- package/src/components/slides/minimap.tsx +22 -14
- package/src/components/slides/reveal-component.tsx +73 -36
- package/src/components/slides/reveal-slides.css +5 -4
- package/src/components/slides/slide-cell-view.tsx +37 -34
- package/src/components/slides/slide-form.tsx +1 -0
- package/src/components/slides/slide-scroll-hint.tsx +3 -1
- package/src/components/slides/slide.tsx +3 -4
- package/src/components/sort/SortableCellsProvider.tsx +8 -25
- package/src/components/tracing/tracing-keyboard.test.tsx +85 -0
- package/src/components/tracing/tracing.tsx +46 -42
- package/src/components/ui/__tests__/draggable-popover.test.tsx +24 -0
- package/src/components/ui/__tests__/fullscreen.test.tsx +44 -2
- package/src/components/ui/__tests__/range-slider.test.tsx +165 -0
- package/src/components/ui/alert-dialog.tsx +1 -1
- package/src/components/ui/draggable-popover.tsx +24 -2
- package/src/components/ui/fullscreen.tsx +25 -1
- package/src/components/ui/range-slider.tsx +22 -9
- package/src/components/ui/toast.tsx +1 -1
- package/src/core/MarimoApp.tsx +3 -1
- package/src/core/ai/__tests__/staged-cells.test.ts +89 -608
- package/src/core/ai/context/context.ts +2 -0
- package/src/core/ai/context/providers/__tests__/cell-output.test.ts +8 -12
- package/src/core/ai/context/providers/__tests__/cell.test.ts +49 -0
- package/src/core/ai/context/providers/cell-output.ts +2 -2
- package/src/core/ai/context/providers/cell.ts +54 -0
- package/src/core/ai/context/providers/datasource.ts +6 -2
- package/src/core/ai/staged-cells.ts +56 -323
- package/src/core/ai/state.ts +3 -0
- package/src/core/ai/tools/__tests__/edit-notebook-tool.test.ts +40 -88
- package/src/core/ai/tools/__tests__/registry.test.ts +17 -0
- package/src/core/ai/tools/base.ts +18 -15
- package/src/core/ai/tools/edit-notebook-tool.ts +86 -80
- package/src/core/ai/tools/registry.ts +13 -10
- package/src/core/ai/tools/sample-tool.ts +6 -7
- package/src/core/cells/__tests__/__snapshots__/cells.test.ts.snap +4 -527
- package/src/core/cells/__tests__/actions.test.ts +623 -35
- package/src/core/cells/__tests__/add-missing-import.test.ts +7 -8
- package/src/core/cells/__tests__/arrange.test.ts +432 -0
- package/src/core/cells/__tests__/cell.test.ts +148 -150
- package/src/core/cells/__tests__/cells.test.ts +390 -2925
- package/src/core/cells/__tests__/collapseConsoleOutputs.test.ts +54 -0
- package/src/core/cells/__tests__/document.test.ts +158 -0
- package/src/core/cells/__tests__/editor.test.ts +57 -0
- package/src/core/cells/__tests__/flush-document.test.ts +40 -0
- package/src/core/cells/__tests__/harness.ts +106 -0
- package/src/core/cells/__tests__/layout.test.ts +176 -0
- package/src/core/cells/__tests__/logs.test.ts +0 -13
- package/src/core/cells/__tests__/notebook-outline.test.ts +122 -0
- package/src/core/cells/__tests__/outputs.test.tsx +71 -53
- package/src/core/cells/__tests__/pending-delete-service.test.tsx +11 -20
- package/src/core/cells/__tests__/session.test.ts +445 -211
- package/src/core/cells/__tests__/utils.test.ts +135 -337
- package/src/core/cells/actions.ts +677 -6
- package/src/core/cells/add-missing-import.ts +47 -43
- package/src/core/cells/arrange.ts +529 -0
- package/src/core/cells/cell.ts +78 -146
- package/src/core/cells/cells.ts +116 -1457
- package/src/core/cells/columns.ts +38 -0
- package/src/core/cells/document.ts +167 -0
- package/src/core/cells/edit.ts +30 -0
- package/src/core/cells/editor.ts +82 -0
- package/src/core/cells/focus.ts +27 -6
- package/src/core/cells/layout.ts +221 -0
- package/src/core/cells/outputs.ts +12 -28
- package/src/core/cells/pending-delete-service.ts +8 -14
- package/src/core/cells/scrollCellIntoView.ts +6 -0
- package/src/core/cells/session.ts +76 -53
- package/src/core/cells/types.ts +21 -51
- package/src/core/cells/utils.ts +85 -87
- package/src/core/codemirror/__tests__/format.test.ts +0 -34
- package/src/core/codemirror/__tests__/setup.test.ts +61 -29
- package/src/core/codemirror/ai/__tests__/resources.test.ts +117 -0
- package/src/core/codemirror/ai/resources.ts +1 -1
- package/src/core/codemirror/cells/__tests__/extensions.test.ts +2 -6
- package/src/core/codemirror/cells/extensions.ts +18 -30
- package/src/core/codemirror/cells/state.ts +2 -6
- package/src/core/codemirror/cm.ts +5 -1
- package/src/core/codemirror/config/types.ts +1 -1
- package/src/core/codemirror/copilot/__tests__/getCodes.test.ts +6 -7
- package/src/core/codemirror/copilot/getCodes.ts +2 -2
- package/src/core/codemirror/format.ts +6 -23
- package/src/core/codemirror/keymaps/vim.ts +4 -8
- package/src/core/codemirror/language/__tests__/sql.test.ts +22 -20
- package/src/core/codemirror/language/__tests__/utils.test.ts +187 -15
- package/src/core/codemirror/language/cell-code.ts +114 -0
- package/src/core/codemirror/language/extension.ts +52 -35
- package/src/core/codemirror/language/languages/markdown.ts +8 -6
- package/src/core/codemirror/language/languages/python.ts +19 -13
- package/src/core/codemirror/language/languages/sql/sql.ts +16 -24
- package/src/core/codemirror/language/panel/panel.tsx +1 -0
- package/src/core/codemirror/language/types.ts +7 -7
- package/src/core/codemirror/language/utils.ts +9 -39
- package/src/core/codemirror/lsp/__tests__/notebook-lsp.test.ts +1 -2
- package/src/core/codemirror/lsp/notebook-lsp.ts +6 -5
- package/src/core/codemirror/lsp/utils.ts +1 -1
- package/src/core/codemirror/misc/__tests__/paste.test.ts +3 -1
- package/src/core/codemirror/misc/paste.ts +1 -1
- package/src/core/codemirror/placeholder/__tests__/extensions.test.ts +75 -0
- package/src/core/codemirror/placeholder/extensions.ts +80 -19
- package/src/core/codemirror/readonly/__tests__/extension.test.ts +1 -1
- package/src/core/codemirror/readonly/extension.ts +2 -2
- package/src/core/codemirror/utils.ts +1 -0
- package/src/core/config/__tests__/app-config.test.ts +64 -0
- package/src/core/config/__tests__/config-schema.test.ts +56 -6
- package/src/core/config/config-schema.ts +17 -4
- package/src/core/config/config.ts +65 -20
- package/src/core/config/feature-flag.tsx +0 -2
- package/src/core/datasets/__tests__/data-source-discovery.test.ts +5 -5
- package/src/core/datasets/data-source-discovery.ts +4 -6
- package/src/core/documentation/doc-lookup.ts +1 -1
- package/src/core/dom/outline.ts +4 -1
- package/src/core/edit-app.tsx +22 -28
- package/src/core/errors/__tests__/error-entries.test.ts +40 -1
- package/src/core/errors/error-entries.ts +6 -4
- package/src/core/executions/__tests__/atoms.test.ts +98 -0
- package/src/core/executions/__tests__/freshness.test.ts +482 -0
- package/src/core/executions/__tests__/hooks.test.tsx +151 -0
- package/src/core/executions/__tests__/output.test.ts +266 -0
- package/src/core/executions/__tests__/select.test.ts +268 -0
- package/src/core/executions/atoms.ts +263 -0
- package/src/core/executions/freshness.ts +171 -0
- package/src/core/executions/hooks.ts +86 -0
- package/src/core/executions/index.ts +48 -0
- package/src/core/executions/output.ts +242 -0
- package/src/core/executions/select.ts +175 -0
- package/src/core/export/__tests__/hooks.test.ts +0 -5
- package/src/core/export/hooks.ts +1 -1
- package/src/core/export/layout.ts +2 -2
- package/src/core/hotkeys/actions.ts +2 -4
- package/src/core/hotkeys/hotkeys.ts +2 -1
- package/src/core/islands/__tests__/bootstrap.test.ts +69 -17
- package/src/core/islands/__tests__/bridge.test.ts +85 -27
- package/src/core/islands/bootstrap.ts +49 -54
- package/src/core/islands/bridge.ts +84 -25
- package/src/core/islands/components/__tests__/IslandControls.test.tsx +7 -5
- package/src/core/islands/components/__tests__/web-components.test.tsx +63 -0
- package/src/core/islands/components/output-wrapper.tsx +5 -5
- package/src/core/islands/components/web-components.tsx +12 -1
- package/src/core/islands/worker/__tests__/controller.test.ts +62 -4
- package/src/core/islands/worker/controller.ts +4 -10
- package/src/core/islands/worker/worker.tsx +33 -33
- package/src/core/kernel/__tests__/RuntimeState.test.ts +1 -1
- package/src/core/kernel/__tests__/handlers.test.ts +7 -157
- package/src/core/kernel/handlers.ts +13 -79
- package/src/core/kernel/state.ts +0 -15
- package/src/core/lifecycle/render-policy.ts +12 -26
- package/src/core/meta/__tests__/code-visibility.test.tsx +78 -70
- package/src/core/meta/code-visibility.ts +18 -9
- package/src/core/network/__tests__/connection.test.ts +1 -1
- package/src/core/network/__tests__/requests-lazy.test.ts +6 -8
- package/src/core/network/connection-notice.ts +1 -1
- package/src/core/network/connection.ts +1 -1
- package/src/core/network/requests-lazy.ts +5 -8
- package/src/core/network/requests-network.ts +5 -31
- package/src/core/network/requests-static.ts +1 -4
- package/src/core/network/requests-toasting.tsx +1 -4
- package/src/core/network/types.ts +6 -14
- package/src/core/network/useConnectionNotice.ts +8 -2
- package/src/core/notebook/__tests__/operations.test.ts +51 -0
- package/src/core/notebook/attachments.ts +38 -0
- package/src/core/notebook/document/__tests__/codemirror.test.ts +759 -0
- package/src/core/notebook/document/__tests__/draft.test.ts +363 -0
- package/src/core/notebook/document/__tests__/fixtures.ts +92 -0
- package/src/core/notebook/document/__tests__/hooks.test.tsx +391 -0
- package/src/core/notebook/document/__tests__/lifecycle-scenarios.test.ts +61 -0
- package/src/core/notebook/document/__tests__/model.test.ts +247 -0
- package/src/core/notebook/document/__tests__/protocol-fixtures.ts +38 -0
- package/src/core/notebook/document/__tests__/recovery-scenarios.test.ts +230 -0
- package/src/core/notebook/document/__tests__/scenario-fixture.ts +43 -0
- package/src/core/notebook/document/__tests__/scenarios.test.ts +205 -0
- package/src/core/notebook/document/__tests__/state.test.ts +459 -0
- package/src/core/notebook/document/__tests__/submission.test.ts +203 -0
- package/src/core/notebook/document/__tests__/test-host.test.ts +92 -0
- package/src/core/notebook/document/__tests__/test-host.ts +247 -0
- package/src/core/notebook/document/__tests__/test-notebook.ts +149 -0
- package/src/core/notebook/document/__tests__/user.ts +61 -0
- package/src/core/notebook/document/codemirror.ts +216 -0
- package/src/core/notebook/document/draft.ts +502 -0
- package/src/core/notebook/document/hooks.tsx +118 -0
- package/src/core/notebook/document/index.ts +24 -0
- package/src/core/notebook/document/model.ts +102 -0
- package/src/core/notebook/document/select.ts +41 -0
- package/src/core/notebook/document/state.ts +378 -0
- package/src/core/notebook/document/sync.ts +369 -0
- package/src/core/notebook/index.ts +19 -0
- package/src/core/notebook/operations.ts +30 -0
- package/src/core/notebook/replica/AGENTS.md +11 -0
- package/src/core/{host → notebook/replica}/__tests__/attachments.test.ts +9 -10
- package/src/core/{host → notebook/replica}/__tests__/document.test.ts +18 -16
- package/src/core/notebook/replica/__tests__/executions.test.ts +200 -0
- package/src/core/notebook/replica/__tests__/fixtures.ts +79 -0
- package/src/core/notebook/replica/__tests__/replica.test.ts +559 -0
- package/src/core/notebook/replica/__tests__/results.test.ts +193 -0
- package/src/core/notebook/replica/__tests__/runtime.test.ts +78 -0
- package/src/core/notebook/replica/backend.ts +19 -0
- package/src/core/notebook/replica/connection.ts +42 -0
- package/src/core/notebook/replica/index.ts +20 -0
- package/src/core/notebook/replica/replica.ts +336 -0
- package/src/core/{host → notebook/replica}/resources/attachments.ts +6 -3
- package/src/core/{host → notebook/replica}/resources/document.ts +3 -3
- package/src/core/notebook/replica/resources/executions.ts +157 -0
- package/src/core/notebook/replica/resources/results.ts +48 -0
- package/src/core/notebook/replica/resources/runtime.ts +14 -0
- package/src/core/packages/__tests__/useSandboxController.test.tsx +1 -1
- package/src/core/packages/useSandboxController.ts +1 -1
- package/src/core/run-app.tsx +49 -51
- package/src/core/runtime/__tests__/adapter.test.ts +4 -4
- package/src/core/runtime/__tests__/createWsUrl.test.ts +77 -7
- package/src/core/runtime/__tests__/runtime.test.ts +32 -74
- package/src/core/runtime/adapter.ts +5 -5
- package/src/core/runtime/config.ts +2 -2
- package/src/core/runtime/runtime.ts +33 -46
- package/src/core/runtime/types.ts +0 -2
- package/src/core/saving/__tests__/document.test.tsx +123 -0
- package/src/core/saving/__tests__/state.test.ts +111 -0
- package/src/core/saving/__tests__/useAutoSave.test.tsx +67 -0
- package/src/core/saving/document.ts +33 -0
- package/src/core/saving/filename.ts +1 -1
- package/src/core/saving/save-component.tsx +39 -60
- package/src/core/saving/state.ts +38 -39
- package/src/core/saving/useAutoSave.ts +17 -53
- package/src/core/session/__tests__/backend.test.ts +236 -0
- package/src/core/session/__tests__/useNotebookReplica.hook.test.tsx +186 -0
- package/src/core/{websocket → session}/__tests__/useNotebookSession.hook.test.tsx +245 -262
- package/src/core/session/active-notebook.ts +28 -0
- package/src/core/session/backend.ts +123 -0
- package/src/core/session/embedded.ts +7 -0
- package/src/core/{websocket → session}/types.ts +2 -2
- package/src/core/session/useNotebookReplica.ts +74 -0
- package/src/core/{websocket → session}/useNotebookSession.tsx +80 -67
- package/src/core/state/__tests__/jotai.test.tsx +108 -0
- package/src/core/state/jotai.ts +1 -1
- package/src/core/static/__tests__/files.test.ts +38 -10
- package/src/core/static/files.ts +2 -0
- package/src/core/{websocket → transports}/__tests__/connection-state.test.ts +1 -13
- package/src/core/transports/__tests__/server.test.ts +408 -0
- package/src/core/transports/__tests__/static.test.ts +306 -0
- package/src/core/transports/__tests__/wasm.test.ts +166 -0
- package/src/core/{websocket → transports}/connection-state.ts +9 -16
- package/src/core/transports/server.ts +152 -0
- package/src/core/transports/static.ts +166 -0
- package/src/core/transports/wasm.ts +97 -0
- package/src/core/vscode/__tests__/vscode-bindings.test.ts +125 -0
- package/src/core/vscode/vscode-bindings.ts +14 -2
- package/src/core/wasm/__tests__/bridge.test.ts +210 -64
- package/src/core/wasm/__tests__/worker.test.ts +188 -0
- package/src/core/wasm/bridge.ts +120 -73
- package/src/core/wasm/rpc.ts +15 -3
- package/src/core/wasm/store.ts +3 -3
- package/src/core/wasm/worker/bootstrap.ts +55 -51
- package/src/core/wasm/worker/getMarimoWheel.ts +1 -1
- package/src/core/wasm/worker/save-worker.ts +9 -10
- package/src/core/wasm/worker/types.ts +30 -18
- package/src/core/wasm/worker/worker.ts +118 -72
- package/src/css/app/Cell.css +7 -36
- package/src/css/app/codemirror.css +1 -1
- package/src/css/common.css +1 -1
- package/src/css/globals.css +72 -24
- 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 +6 -10
- package/src/hooks/useDeepCompareMemoize.ts +1 -1
- package/src/hooks/useDelayElapsed.ts +14 -10
- package/src/hooks/useElapsedTime.ts +3 -3
- package/src/hooks/useEventListener.ts +1 -2
- 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/mount.tsx +20 -15
- package/src/plugins/__tests__/plugin-object-schemas.test.ts +104 -0
- package/src/plugins/core/RenderHTML.tsx +3 -5
- package/src/plugins/core/__test__/RenderHTML-copy.test.tsx +60 -0
- package/src/plugins/core/registerReactComponent.tsx +5 -14
- package/src/plugins/impl/CodeEditorPlugin.tsx +1 -1
- package/src/plugins/impl/DataEditorPlugin.tsx +34 -13
- package/src/plugins/impl/DataTablePlugin.tsx +69 -37
- 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 +16 -2
- package/src/plugins/impl/RefreshPlugin.tsx +1 -0
- package/src/plugins/impl/SliderPlugin.tsx +6 -8
- package/src/plugins/impl/__tests__/DataEditorPlugin.test.ts +93 -4
- package/src/plugins/impl/__tests__/DataTablePlugin.test.tsx +387 -1
- package/src/plugins/impl/__tests__/FileBrowserPlugin.test.tsx +45 -0
- package/src/plugins/impl/__tests__/RangeSliderPlugin.test.tsx +109 -0
- package/src/plugins/impl/__tests__/SliderPlugin.test.tsx +24 -3
- package/src/plugins/impl/anywidget/__tests__/registry.test.ts +153 -0
- package/src/plugins/impl/anywidget/__tests__/widget-binding.test.ts +241 -2
- package/src/plugins/impl/anywidget/model.ts +3 -1
- package/src/plugins/impl/anywidget/registry.ts +18 -14
- 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 +17 -15
- package/src/plugins/impl/code/any-language-editor.tsx +2 -2
- package/src/plugins/impl/common/error-banner.tsx +5 -3
- package/src/plugins/impl/data-editor/__tests__/column-types.test.ts +42 -0
- package/src/plugins/impl/data-editor/__tests__/editor-state.test.ts +52 -1
- package/src/plugins/impl/data-editor/__tests__/glide-data-editor.test.tsx +120 -4
- package/src/plugins/impl/data-editor/__tests__/glide-utils.test.ts +116 -0
- package/src/plugins/impl/data-editor/column-types.ts +55 -0
- package/src/plugins/impl/data-editor/editor-state.ts +18 -2
- package/src/plugins/impl/data-editor/glide-data-editor.tsx +74 -12
- package/src/plugins/impl/data-editor/glide-utils.ts +39 -38
- package/src/plugins/impl/data-editor/types.ts +5 -0
- package/src/plugins/impl/data-explorer/ConnectedDataExplorerComponent.tsx +1 -1
- package/src/plugins/impl/data-explorer/components/column-summary.tsx +4 -2
- package/src/plugins/impl/data-explorer/state/reducer.ts +1 -1
- package/src/plugins/impl/data-frames/DataFramePlugin.tsx +1 -2
- package/src/plugins/impl/data-frames/__tests__/sidebar.test.tsx +160 -0
- package/src/plugins/impl/data-frames/forms/__tests__/__snapshots__/form.test.tsx.snap +66 -66
- package/src/plugins/impl/data-frames/panel.tsx +44 -16
- 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/plotly/PlotlyPlugin.tsx +2 -5
- package/src/plugins/impl/plotly/selection.ts +25 -19
- package/src/plugins/impl/vega/VegaPlugin.tsx +2 -3
- package/src/plugins/impl/vega/make-selectable.ts +4 -7
- package/src/plugins/layout/DownloadPlugin.tsx +7 -11
- package/src/plugins/layout/RoutesPlugin.tsx +1 -1
- package/src/plugins/layout/__test__/DownloadPlugin.test.tsx +205 -0
- package/src/stories/__tests__/editor-story.test.tsx +33 -0
- package/src/stories/button.stories.tsx +1 -0
- package/src/stories/cell-status.stories.tsx +29 -24
- package/src/stories/cell.stories.tsx +46 -46
- package/src/stories/data-table.stories.tsx +31 -0
- package/src/stories/editor.stories.tsx +24 -17
- package/src/stories/form-wrapper.stories.tsx +2 -2
- package/src/stories/layout/vertical/one-column.stories.tsx +28 -42
- package/src/stories/runtime-story.tsx +23 -17
- package/src/stories/select.stories.tsx +2 -2
- package/src/stories/switchable-multi-select.stories.tsx +1 -1
- package/src/theme/__tests__/islands-theme.test.tsx +276 -0
- package/src/theme/namespace.tsx +4 -3
- package/src/theme/useTheme.ts +71 -41
- package/src/utils/__tests__/arrays.test.ts +35 -0
- package/src/utils/__tests__/batch-requests.test.ts +3 -3
- package/src/utils/__tests__/{createReducer.test.ts → createReducer.test.tsx} +127 -1
- package/src/utils/__tests__/download.test.tsx +183 -23
- package/src/utils/__tests__/numbers.test.ts +105 -1
- package/src/utils/__tests__/objects.test.ts +21 -0
- package/src/utils/arrays.ts +11 -2
- package/src/utils/blob.ts +1 -1
- package/src/utils/createReducer.ts +115 -79
- package/src/utils/download.ts +67 -6
- package/src/utils/maps.ts +0 -3
- package/src/utils/numbers.ts +79 -18
- package/src/utils/objects.ts +4 -9
- package/src/utils/time.ts +10 -0
- package/src/utils/tracer.ts +9 -5
- package/src/utils/zod-utils.ts +1 -3
- package/dist/_baseMerge-BiGRwuqv.js +0 -165
- package/dist/any-language-editor-D4q-IFcM.js +0 -76
- package/dist/assets/__vite-browser-external-BXYkiFsk.js +0 -1
- package/dist/assets/worker-HPY9fbhz.js +0 -114
- package/dist/feedback-button-CykZqHY-.js +0 -379
- package/dist/hasIn-o2Us0uVx.js +0 -132
- package/dist/html-to-image--r0l9wUy.js +0 -3251
- package/dist/isArrayLikeObject-BZl-15ir.js +0 -450
- package/dist/isEmpty-BSZ1LaUo.js +0 -35
- package/dist/isSymbol-kQcfYbNX.js +0 -8
- package/dist/label-DoysmLMW.js +0 -281
- package/dist/pick-CJeoxYOS.js +0 -51
- package/dist/select-DemoKT4G.js +0 -1344
- package/dist/toDate-gyi35XS2.js +0 -1185
- package/dist/toast-PkdZraM8.js +0 -1830
- package/dist/use-restore-focus-CKjfFjLM.js +0 -6369
- package/dist/useLifecycle-Dfq8UD-b.js +0 -169
- package/dist/useTheme-Bu5bBgrh.js +0 -904
- package/src/components/chat/reasoning-accordion.tsx +0 -61
- package/src/components/chat/tool-call/tool-error-card.tsx +0 -81
- package/src/components/chat/tool-call/tool-history-row.tsx +0 -174
- package/src/components/editor/ai/__tests__/staged-cell-submission.test.ts +0 -106
- package/src/components/editor/ai/add-cell-with-ai.tsx +0 -506
- package/src/components/editor/ai/staged-cell-submission.ts +0 -46
- package/src/components/editor/cell/__tests__/StagedAICell.test.tsx +0 -64
- package/src/components/editor/cell/code/__tests__/rtc-editor-config.test.ts +0 -50
- package/src/components/editor/chrome/wrapper/footer-items/rtc-status.tsx +0 -65
- package/src/components/editor/navigation/__tests__/state.test.ts +0 -81
- package/src/components/editor/navigation/state.ts +0 -65
- package/src/components/icons/loading-ellipsis.tsx +0 -46
- package/src/core/ai/tools/__tests__/run-cells-tool.test.ts +0 -656
- package/src/core/ai/tools/run-cells-tool.ts +0 -303
- package/src/core/attachments/state.ts +0 -18
- package/src/core/cells/__tests__/apply-transaction.test.ts +0 -991
- package/src/core/cells/__tests__/document-changes.test.ts +0 -1140
- package/src/core/cells/__tests__/document-roundtrip.test.ts +0 -392
- package/src/core/cells/document-changes.ts +0 -944
- package/src/core/codemirror/rtc/extension.ts +0 -453
- package/src/core/codemirror/rtc/loro/__tests__/sync.test.ts +0 -52
- package/src/core/codemirror/rtc/loro/awareness.ts +0 -531
- package/src/core/codemirror/rtc/loro/colors.ts +0 -38
- package/src/core/codemirror/rtc/loro/sync.ts +0 -168
- package/src/core/host/AGENTS.md +0 -11
- package/src/core/host/__tests__/events.test.ts +0 -46
- package/src/core/host/__tests__/fixtures.ts +0 -39
- package/src/core/host/__tests__/notebook-client.test.ts +0 -433
- package/src/core/host/__tests__/protocol.test.ts +0 -229
- package/src/core/host/__tests__/stream.test.ts +0 -209
- package/src/core/host/connection.ts +0 -81
- package/src/core/host/events.ts +0 -61
- package/src/core/host/notebook-client.ts +0 -290
- package/src/core/host/protocol.ts +0 -1948
- package/src/core/host/resources/resource.ts +0 -47
- package/src/core/host/stream.ts +0 -211
- package/src/core/rtc/state.ts +0 -34
- package/src/core/state/__tests__/jotai.test.ts +0 -25
- package/src/core/wasm/worker/message-buffer.ts +0 -33
- package/src/core/websocket/__tests__/createConnectionTransport.test.ts +0 -49
- package/src/core/websocket/__tests__/useNotebookClient.hook.test.tsx +0 -170
- package/src/core/websocket/state.ts +0 -7
- package/src/core/websocket/transports/__tests__/basic.test.ts +0 -275
- package/src/core/websocket/transports/__tests__/sse.test.ts +0 -335
- 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/create.ts +0 -31
- package/src/core/websocket/transports/sse.ts +0 -308
- package/src/core/websocket/transports/transport.ts +0 -50
- package/src/core/websocket/transports/ws.ts +0 -98
- package/src/core/websocket/useNotebookClient.ts +0 -88
- package/src/utils/__tests__/id-tree.test.ts +0 -2145
- package/src/utils/id-tree.tsx +0 -1134
- /package/src/{core/attachments/toast.ts → components/editor/agent-toast.ts} +0 -0
- /package/src/core/{websocket → session}/connection-utils.ts +0 -0
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,o)=>(o=n==null?{}:e(i(n)),s(r||!n||!n.__esModule||!a.call(n,`default`)?t(o,`default`,{value:n,enumerable:!0}):o,n)),l=(e=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof require<`u`?require:e)[t]}):e)(function(e){if(typeof require<`u`)return require.apply(this,arguments);throw Error('Calling `require` for "'+e+"\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.")});function u(e){return e}function d(e,t){let n=e.map(e=>`"${e}"`).join(`, `);return Error(`This RPC instance cannot ${t} because the transport did not provide one or more of these methods: ${n}`)}function f(e={}){let t={};function n(e){t=e}let r={};function i(e){r.unregisterHandler&&r.unregisterHandler(),r=e,r.registerHandler?.(ie)}let a;function o(e){if(typeof e==`function`){a=e;return}a=(t,n)=>{let r=e[t];if(r)return r(n);let i=e._;if(!i)throw Error(`The requested method has no handler: ${t}`);return i(t,n)}}let{maxRequestTime:s=1e3}=e;e.transport&&i(e.transport),e.requestHandler&&o(e.requestHandler),e._debugHooks&&n(e._debugHooks);let c=0;function l(){return c<=1e10?++c:c=0}let u=new Map,f=new Map;function p(e,...n){let i=n[0];return new Promise((n,a)=>{if(!r.send)throw d([`send`],`make requests`);let o=l(),c={type:`request`,id:o,method:e,params:i};u.set(o,{resolve:n,reject:a}),s!==1/0&&f.set(o,setTimeout(()=>{f.delete(o),a(Error(`RPC request timed out.`))},s)),t.onSend?.(c),r.send(c)})}let m=new Proxy(p,{get:(e,t,n)=>t in e?Reflect.get(e,t,n):e=>p(t,e)}),h=m;function ee(e,...n){let i=n[0];if(!r.send)throw d([`send`],`send messages`);let a={type:`message`,id:e,payload:i};t.onSend?.(a),r.send(a)}let g=new Proxy(ee,{get:(e,t,n)=>t in e?Reflect.get(e,t,n):e=>ee(t,e)}),te=g,_=new Map,ne=new Set;function re(e,t){if(!r.registerHandler)throw d([`registerHandler`],`register message listeners`);if(e===`*`){ne.add(t);return}_.has(e)||_.set(e,new Set),_.get(e)?.add(t)}function v(e,t){if(e===`*`){ne.delete(t);return}_.get(e)?.delete(t),_.get(e)?.size===0&&_.delete(e)}async function ie(e){if(t.onReceive?.(e),!(`type`in e))throw Error(`Message does not contain a type.`);if(e.type===`request`){if(!r.send||!a)throw d([`send`,`requestHandler`],`handle requests`);let{id:n,method:i,params:o}=e,s;try{s={type:`response`,id:n,success:!0,payload:await a(i,o)}}catch(e){if(!(e instanceof Error))throw e;s={type:`response`,id:n,success:!1,error:e.message}}t.onSend?.(s),r.send(s);return}if(e.type===`response`){let t=f.get(e.id);t!=null&&clearTimeout(t);let{resolve:n,reject:r}=u.get(e.id)??{};e.success?n?.(e.payload):r?.(Error(e.error));return}if(e.type===`message`){for(let t of ne)t(e.id,e.payload);let t=_.get(e.id);if(!t)return;for(let n of t)n(e.payload);return}throw Error(`Unexpected RPC message type: ${e.type}`)}return{setTransport:i,setRequestHandler:o,request:m,requestProxy:h,send:g,sendProxy:te,addMessageListener:re,removeMessageListener:v,proxy:{send:te,request:h},_setDebugHooks:n}}function p(e){return f(e)}const m=`[transport-id]`;function h(e,t){let{transportId:n}=t;return n==null?e:{[m]:n,data:e}}function ee(e,t){let{transportId:n,filter:r}=t,i=r?.();if(n!=null&&i!=null)throw Error("Cannot use both `transportId` and `filter` at the same time");let a=e;if(n){if(e[m]!==n)return[!0];a=e.data}return i===!1?[!0]:[!1,a]}function g(e,t={}){let{transportId:n,filter:r,remotePort:i}=t,a=e,o=i??e,s;return{send(e){o.postMessage(h(e,{transportId:n}))},registerHandler(e){s=t=>{let i=t.data,[a,o]=ee(i,{transportId:n,filter:()=>r?.(t)});a||e(o)},a.addEventListener(`message`,s)},unregisterHandler(){s&&a.removeEventListener(`message`,s)}}}function te(e){return g(self,e)}const _=/(^|\n)\s*(?:import\s+[^\n#]*\bduckdb\b|from\s+duckdb\b|[^\n#]*\bduckdb\s*\.)/;function ne(e,t){return e.includes(`mo.sql`)||_.test(e)||t?.has(`duckdb`)===!0}var re=Object.defineProperty,v=(e,t)=>re(e,`name`,{value:t,configurable:!0}),ie=(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`)}),ae=(()=>{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 oe(e){return!isNaN(parseFloat(e))&&isFinite(e)}v(oe,`_isNumber`);function y(e){return e.charAt(0).toUpperCase()+e.substring(1)}v(y,`_capitalize`);function se(e){return function(){return this[e]}}v(se,`_getter`);var ce=[`isConstructor`,`isEval`,`isNative`,`isToplevel`],le=[`columnNumber`,`lineNumber`],ue=[`fileName`,`functionName`,`source`],de=ce.concat(le,ue,[`args`],[`evalOrigin`]);function b(e){if(e)for(var t=0;t<de.length;t++)e[de[t]]!==void 0&&this[`set`+y(de[t])](e[de[t]])}for(v(b,`StackFrame`),b.prototype={getArgs:v(function(){return this.args},`getArgs`),setArgs:v(function(e){if(Object.prototype.toString.call(e)!==`[object Array]`)throw TypeError(`Args must be an Array`);this.args=e},`setArgs`),getEvalOrigin:v(function(){return this.evalOrigin},`getEvalOrigin`),setEvalOrigin:v(function(e){if(e instanceof b)this.evalOrigin=e;else if(e instanceof Object)this.evalOrigin=new b(e);else throw TypeError(`Eval Origin must be an Object or StackFrame`)},`setEvalOrigin`),toString:v(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`)},b.fromString=v(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 b({functionName:r,args:i||void 0,fileName:s,lineNumber:c||void 0,columnNumber:l||void 0})},`StackFrame$$fromString`),x=0;x<ce.length;x++)b.prototype[`get`+y(ce[x])]=se(ce[x]),b.prototype[`set`+y(ce[x])]=function(e){return function(t){this[e]=!!t}}(ce[x]);var x;for(fe=0;fe<le.length;fe++)b.prototype[`get`+y(le[fe])]=se(le[fe]),b.prototype[`set`+y(le[fe])]=function(e){return function(t){if(!oe(t))throw TypeError(e+` must be a Number`);this[e]=Number(t)}}(le[fe]);var fe;for(pe=0;pe<ue.length;pe++)b.prototype[`get`+y(ue[pe])]=se(ue[pe]),b.prototype[`set`+y(ue[pe])]=function(e){return function(t){this[e]=String(t)}}(ue[pe]);var pe,me=b;function he(){var e=/^\s*at .*(\S+:\d+|\(native\))/m,t=/^(eval@)?(\[native code])?$/;return{parse:v(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:v(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:v(function(t){return t.stack.split(`
|
|
2
|
+
`).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 me({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:v(function(e){return e.stack.split(`
|
|
3
|
+
`).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 me({functionName:e});var t=/((.*".+"[^@]*)?[^@]*)(?:@)/,n=e.match(t),r=n&&n[1]?n[1]:void 0,i=this.extractLocation(e.replace(t,``));return new me({functionName:r,fileName:i[0],lineNumber:i[1],columnNumber:i[2],source:e})},this)},`ErrorStackParser$$parseFFOrSafari`)}}v(he,`ErrorStackParser`);var ge=new he;function _e(){return typeof API<`u`&&API!==globalThis.API?API.runtimeEnv:ve({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`)})}v(_e,`getGlobalRuntimeEnv`);var S=_e();function ve(e){let t=e.IN_NODE&&typeof module<`u`&&module.exports&&typeof ie==`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&&ye())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}v(ve,`calculateDerivedFlags`);function ye(){try{return globalThis.importScripts(`data:text/javascript,`),!0}catch{return!1}}v(ye,`isClassicWorker`);var be,xe,Se,Ce;async function we(){if(!S.IN_NODE||(be=(await import(`./__vite-browser-external-BKBpimif.js`).then(e=>c(e.default,1))).default,Se=await import(`./__vite-browser-external-BKBpimif.js`).then(e=>c(e.default,1)),Ce=await import(`./__vite-browser-external-BKBpimif.js`).then(e=>c(e.default,1)),(await import(`./__vite-browser-external-BKBpimif.js`).then(e=>c(e.default,1))).default,xe=await import(`./__vite-browser-external-BKBpimif.js`).then(e=>c(e.default,1)),Oe=xe.sep,typeof ie<`u`))return;let e={fs:Se,crypto:await import(`./__vite-browser-external-BKBpimif.js`).then(e=>c(e.default,1)),ws:await import(`./__vite-browser-external-BKBpimif.js`).then(e=>c(e.default,1)),child_process:await import(`./__vite-browser-external-BKBpimif.js`).then(e=>c(e.default,1))};globalThis.require=function(t){return e[t]}}v(we,`initNodeModules`);function Te(e,t){return xe.resolve(t||`.`,e)}v(Te,`node_resolvePath`);function Ee(e,t){return t===void 0&&(t=location),new URL(e,t).toString()}v(Ee,`browser_resolvePath`);var De=S.IN_NODE?Te:S.IN_SHELL?v(e=>e,`resolvePath`):Ee,Oe;S.IN_NODE||(Oe=`/`);function ke(e,t){return e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?{response:fetch(e)}:{binary:Ce.readFile(e).then(e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength))}}v(ke,`node_getBinaryResponse`);function Ae(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)))}}v(Ae,`shell_getBinaryResponse`);function je(e,t){let n=new URL(e,location);return{response:fetch(n,t?{integrity:t}:{})}}v(je,`browser_getBinaryResponse`);var Me=S.IN_NODE?ke:S.IN_SHELL?Ae:je;async function Ne(e,t){let{response:n,binary:r}=Me(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())}v(Ne,`loadBinaryFile`);var Pe=S.IN_NODE?Fe:v(async e=>await import(e),`loadScript`);async function Fe(e){return e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?await import(e):await import(be.pathToFileURL(e).href)}v(Fe,`nodeLoadScript`);async function Ie(e){if(S.IN_NODE){await we();let t=await Ce.readFile(e,{encoding:`utf8`});return JSON.parse(t)}if(S.IN_SHELL){let t=read(e);return JSON.parse(t)}return await(await fetch(e)).json()}v(Ie,`loadLockFile`);async function Le(){if(S.IN_NODE_COMMONJS)return __dirname;let e;try{throw Error()}catch(t){e=t}let t=ge.parse(e)[0].fileName;if(S.IN_NODE&&!t.startsWith(`file://`)&&(t=`file://${t}`),S.IN_NODE_ESM){let e=await import(`./__vite-browser-external-BKBpimif.js`).then(e=>c(e.default,1));return(await import(`./__vite-browser-external-BKBpimif.js`).then(e=>c(e.default,1))).fileURLToPath(e.dirname(t))}let n=t.lastIndexOf(Oe);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)}v(Le,`calculateDirname`);function Re(e){return e.substring(0,e.lastIndexOf(`/`)+1)||globalThis.location?.toString()||`.`}v(Re,`calculateInstallBaseUrl`);function ze(e){let t=e.FS,n=e.FS.filesystems.MEMFS,r=e.PATH,i={DIR_MODE:16895,FILE_MODE:33279,mount:v(function(e){if(!e.opts.fileSystemHandle)throw Error(`opts.fileSystemHandle is required`);return n.mount.apply(null,arguments)},`mount`),syncfs:v(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:v(e=>{let n=Object.create(null);function i(e){return e!==`.`&&e!==`..`}v(i,`isRealDir`);function a(e){return t=>r.join2(e,t)}v(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:v(async e=>{let t=Object.create(null),n=await Be(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:v(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:v((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:v(e=>{var n=t.stat(e);t.isDir(n.mode)?t.rmdir(e):t.isFile(n.mode)&&t.unlink(e)},`removeLocalEntry`),loadRemoteEntry:v(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:v(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:v(async(e,t)=>{await e.get(r.dirname(t)).removeEntry(r.basename(t)),e.delete(t)},`removeRemoteEntry`),reconcile:v(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}v(ze,`initializeNativeFS`);var Be=v(async e=>{let t=[];async function n(e){for await(let r of e.values())t.push(r),r.kind===`directory`&&await n(r)}v(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`),Ve=ae(`AGFzbQEAAAABDANfAGAAAW9gAW8BfwMDAgECBygCE0pzdl9HZXRFcnJvcl9pbXBvcnQAAA5Kc3ZFcnJvcl9DaGVjawABChMCBwD7AQD7GwsJACAA+xr7FAAL`),He=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(Ve);return await WebAssembly.instantiate(e)}catch(e){if(e instanceof WebAssembly.CompileError)return;throw e}}();async function Ue(){let e=await He;if(e)return e.exports;let t=Symbol(`error marker`);return{Jsv_GetError_import:v(()=>t,`Jsv_GetError_import`),JsvError_Check:v(e=>e===t,`JsvError_Check`)}}v(Ue,`getJsvErrorImport`);function We(e){let t={config:e,runtimeEnv:S},n={noImageDecoding:!0,noAudioDecoding:!0,noWasmDecoding:!1,preRun:Xe(e),print:e.stdout,printErr:e.stderr,onExit(e){n.exitCode=e},thisProgram:e._sysExecutable,arguments:e.args,API:t,locateFile:v(t=>e.indexURL+t,`locateFile`),instantiateWasm:Ze(e.indexURL)};return n}v(We,`createSettings`);function Ge(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)}}v(Ge,`createHomeDirectory`);function Ke(e){return function(t){Object.assign(t.ENV,e)}}v(Ke,`setEnvironment`);function qe(e){return e?[async t=>{t.addRunDependency(`fsInitHook`);try{await e(t.FS,{sitePackages:t.API.sitePackages})}finally{t.removeRunDependency(`fsInitHook`)}}]:[]}v(qe,`callFsInitHook`);function Je(e){let t=e.HEAPU32[e._Py_Version>>>2];return[t>>>24&255,t>>>16&255,t>>>8&255]}v(Je,`computeVersionTuple`);function Ye(e){let t=Ne(e);return async e=>{e.API.pyVersionTuple=Je(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`)}}}v(Ye,`installStdlib`);function Xe(e){let t;return t=e.stdLibURL==null?e.indexURL+`python_stdlib.zip`:e.stdLibURL,[Ye(t),Ge(e.env.HOME),Ke(e.env),ze,...qe(e.fsInit)]}v(Xe,`getFileSystemInitializationFuncs`);function Ze(e){if(typeof WasmOffsetConverter<`u`)return;let{binary:t,response:n}=Me(e+`pyodide.asm.wasm`),r=Ue();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)}}(),{}}}v(Ze,`getInstantiateWasmFunc`);var Qe=`314.0.0`;function $e(e){return e===void 0||e.endsWith(`/`)?e:e+`/`}v($e,`withTrailingSlash`);var et=Qe;async function tt(e={}){if(await we(),e.lockFileContents&&e.lockFileURL)throw Error(`Can't pass both lockFileContents and lockFileURL`);let t=e.indexURL||await Le();if(t=$e(De(t)),e.packageBaseUrl=$e(e.packageBaseUrl),e.cdnUrl=$e(e.packageBaseUrl??`https://cdn.jsdelivr.net/pyodide/v314.0.0/full/`),!e.lockFileContents){let n=e.lockFileURL??t+`pyodide-lock.json`;e.lockFileContents=Ie(n),e.packageBaseUrl??=Re(n)}e.indexURL=t,e.packageCacheDir&&=$e(De(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}v(tt,`initializeConfiguration`);function nt(e){let t=We(e),n=t.API;return n.lockFilePromise=Promise.resolve(e.lockFileContents),t}v(nt,`createEmscriptenSettings`);async function rt(e){return e.createPyodideModule?e.createPyodideModule:(await Pe(`${e.indexURL}pyodide.asm.mjs`)).default}v(rt,`loadWasmScript`);async function it(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}v(it,`prepareSnapshot`);async function at(e,t){let n=await e(t);if(t.exitCode!==void 0)throw new n.ExitStatus(t.exitCode);return n}v(at,`instantiatePyodideModule`);function ot(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: '${et}' <==> '${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}")`)}}v(ot,`configureAPI`);function st(e,t,n){let r=e.API,i;return t&&(i=r.restoreSnapshot(t)),r.finalizeBootstrap(i,n._snapshotDeserializer)}v(st,`bootstrapPyodide`);async function ct(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}v(ct,`finalizeSetup`);async function lt(e={}){let t=await tt(e),n=nt(t),r=await rt(t),i=await it(t,n),a=await at(r,n);return ot(a,t),await ct(st(a,i,t),t)}v(lt,`loadPyodide`);function ut(e){return e.includes(`dev`),`v${et}`}const dt={NOOP:()=>{},ASYNC_NOOP:async()=>{},THROW:()=>{throw Error(`Should not be called`)},asUpdater:e=>typeof e==`function`?e:()=>e,identity:e=>e},ft=(e,t)=>{let n=`[${e}]`;return{debug:(...e)=>console.debug(n,...e),log:(...e)=>t.log(n,...e),warn:(...e)=>t.warn(n,...e),error:(...e)=>t.error(n,...e),trace:(...e)=>t.trace(n,...e),get:n=>ft(`${e}:${n}`,t),disabled:(e=!0)=>e?mt:t}},pt={debug:(...e)=>{console.debug(...e)},log:(...e)=>{console.log(...e)},warn:(...e)=>{console.warn(...e)},error:(...e)=>{console.error(...e)},trace:(...e)=>{console.trace(...e)},get:e=>ft(`marimo:${e}`,pt),disabled:(e=!0)=>e?mt:pt},mt={debug:()=>dt.NOOP,log:()=>dt.NOOP,warn:()=>dt.NOOP,error:()=>dt.NOOP,trace:()=>dt.NOOP,get:()=>mt,disabled:()=>mt};function ht(){return typeof window<`u`&&window.Logger||pt}const C=ht();function gt(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function _t(e,t=`|`){return e.map(e=>Lt(e)).join(t)}function vt(e,t){return typeof t==`bigint`?t.toString():t}var yt=class{constructor(e){this._getter=e,this._value=void 0}get value(){let e=this._getter;return e!==void 0&&(this._value=e(),this._getter=void 0),this._value}};function bt(e){return new yt(e)}function xt(e){return e==null}function St(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function Ct(e,t){let n=e/t,r=Math.round(n),i=4*2**-52*Math.max(Math.abs(n),1);return Math.abs(n-r)<i?0:n-r}function w(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function wt(e){let t=Object.getOwnPropertyDescriptor(e,`shape`);return t?.get?t.get.raw:t?.value}function T(e){return wt(e._zod.def)??e._zod.def.shape}function Tt(e,t,n){Object.defineProperty(e,t,{get(){let e=n();return w(this,t,e),e},enumerable:!0,configurable:!0})}function Et(e,t,n){t in e?w(e,t,n):e[t]=n}function E(e,t,n,r){let i=T(t);for(let a of n){let n=Object.getOwnPropertyDescriptor(i,a);n.enumerable&&(n.get?Tt(e,a,()=>{let e=t._zod.def.shape[a];return r?r(e,a):e}):Et(e,a,r?r(n.value,a):n.value))}}function Dt(e,t){for(let n of Reflect.ownKeys(t)){let r=Object.getOwnPropertyDescriptor(t,n);r.enumerable&&(r.get?Tt(e,n,()=>t[n]):Et(e,n,r.value))}}function D(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function Ot(e){return JSON.stringify(e)}function kt(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}const At=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function jt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}const Mt=bt(()=>{if(I.jitless||typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function Nt(e){if(jt(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return jt(n)!==!1&&Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)!==!1}function Pt(e){return Nt(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}const Ft=new Set([`string`,`number`,`symbol`]);function It(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function O(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function k(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function Lt(e){return typeof e==`bigint`?e.toString()+`n`:typeof e==`string`?`"${e}"`:`${e}`}function Rt(e){return Object.keys(e).filter(t=>e[t]._zod.optin!==void 0&&e[t]._zod.optout===`optional`)}const zt={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Bt={int64:[BigInt(`-9223372036854775808`),BigInt(`9223372036854775807`)],uint64:[BigInt(0),BigInt(`18446744073709551615`)]};function Vt(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);let i={};return E(i,e,Ht(e,t)),O(e,D(n,{shape:i,checks:[]}))}function Ht(e,t){let n=T(e),r=[];for(let e of Reflect.ownKeys(t)){if(!Object.getOwnPropertyDescriptor(n,e)?.enumerable)throw Error(`Unrecognized key: "${String(e)}"`);t[e]&&r.push(e)}return r}function Ut(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);let i=new Set(Ht(e,t)),a={};return E(a,e,Reflect.ownKeys(T(e)).filter(e=>!i.has(e))),O(e,D(n,{shape:a,checks:[]}))}function Wt(e,t){if(!Nt(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=T(e);for(let e of Reflect.ownKeys(t))if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return O(e,D(e._zod.def,{shape:Gt(e,t)}))}function Gt(e,t){let n={};return E(n,e,Reflect.ownKeys(T(e))),Dt(n,t),n}function Kt(e,t){if(!Nt(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return O(e,D(e._zod.def,{shape:Gt(e,t)}))}function qt(e,t){if(!t?._zod?.def)throw Error("Invalid input to merge: expected an object schema. To merge a plain shape, use `.extend()`.");if(e._zod.def.checks?.length)throw Error(`.merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.`);let n={};return E(n,e,Reflect.ownKeys(T(e))),E(n,t,Reflect.ownKeys(T(t))),O(e,D(e._zod.def,{shape:n,get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]}))}function Jt(e,t,n,r=`partial`){let i=t._zod.def.checks;if(i&&i.length>0)throw Error(`.${r}() cannot be used on object schemas containing refinements`);let a=n?new Set(Ht(t,n)):void 0,o={};return E(o,t,Reflect.ownKeys(T(t)),e&&((t,n)=>a&&!a.has(n)?t:new e({type:`optional`,innerType:t}))),O(t,D(t._zod.def,{shape:o,checks:[]}))}function Yt(e,t,n){let r=n?new Set(Ht(t,n)):void 0,i={};return E(i,t,Reflect.ownKeys(T(t)),(t,n)=>r&&!r.has(n)?t:new e({type:`nonoptional`,innerType:t})),O(t,D(t._zod.def,{shape:i}))}function A(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Xt(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function Zt(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function Qt(e){return typeof e==`string`?e:e?.message}function $t(e,t,n){var r;for(let i=t;i<e.length;i++)(r=e[i]).schema??(r.schema=n)}function j(e,t,n){var r;let i=e.inst?._zod?.traits;i?.has(`$ZodType`)&&(i.has(`$ZodCheck`)?(r=e).schema??(r.schema=e.inst):e.schema=e.inst);let a=e.schema===e.inst?void 0:e.schema?._zod.def?.error,o=e.message?e.message:Qt(e.inst?._zod.def?.error?.(e))??Qt(a?.(e))??Qt(t?.error?.(e))??Qt(n.customError?.(e))??Qt(n.localeError?.(e))??`Invalid input`,s={};for(let t of Object.keys(e))t!==`inst`&&t!==`schema`&&t!==`continue`&&t!==`input`&&t!==`__proto__`&&(s[t]=e[t]);return s.path??=[],s.message=o,t?.reportInput&&(s.input=e.input),s}const en=/[\uD800-\uDBFF]/;function tn(e){let t=e.length;if(!en.test(e))return t;let n=t;for(let r=0;r<t-1;r++)(e.charCodeAt(r)&64512)==55296&&(e.charCodeAt(r+1)&64512)==56320&&(n--,r++);return n}function nn(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function rn(e){let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`nan`:`number`;case`object`:{if(e===null)return`null`;if(Array.isArray(e))return`array`;let t=e;if(t&&Object.getPrototypeOf(t)!==Object.prototype&&`constructor`in t&&t.constructor)return t.constructor.name}}return t}function an(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}function on(e,t){for(let n in t){let r=Object.getOwnPropertyDescriptor(t,n);r.get?Object.defineProperty(e,n,{...r,enumerable:!1}):ln(e,n,r.value)}}function M(e,t,n,r=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:r,value:n}),n}function sn(e,t,n){return M(e,t,n,!1)}function cn(e,t){for(let n in e){let r=e[n];Object.defineProperty(t,n,{configurable:!0,enumerable:!0,get(){return M(this,n,r(this))},set(e){M(this,n,e)}})}return t}function ln(e,t,n){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?n:M(this,t,n.bind(this))},set(e){M(this,t,e)}})}function un(e,t){let n=Object.getPrototypeOf(e);return t in n?void 0:n}let dn,fn=!1;const pn={configurable:!0,get(){fn=!0}};function N(e,t,n){let r=Object.getPrototypeOf(e._zod);if(t in r&&dn!==e._zod){dn=void 0;return}dn=e._zod,Object.defineProperty(r,t,{configurable:!0,get(){Object.defineProperty(this,t,pn);let e=fn;fn=!1;try{let r=n(this);return fn?delete this[t]:Object.defineProperty(this,t,{configurable:!0,writable:!0,value:r}),fn||=e,r}catch(n){throw delete this[t],fn||=e,n}},set(e){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:e})}})}function mn(e,t,n,r){let i=un(e,t);i&&Object.defineProperty(i,t,{configurable:!0,get(){let e={configurable:!0,writable:!0,enumerable:r,value:void 0};return Object.defineProperty(this,t,e),e.value=n(this),Object.defineProperty(this,t,e),e.value},set(e){Object.defineProperty(this,t,{configurable:!0,writable:!0,enumerable:r,value:e})}})}function hn(e){let t=()=>e;return t[`~constantCatch`]=!0,t}var gn;const _n={value:void 0,enumerable:!1};let vn=`captureStackTrace`in Error?Error:null;function yn(e){let t=vn;if(t){let n=t.stackTraceLimit;if(typeof n==`number`){try{t.stackTraceLimit=0}catch{return vn=null,new e}try{return new e}finally{t.stackTraceLimit=n}}}return new e}function P(e,t,n,r){let i={};function a(e){this.def=e,this.constr=d,this.traits=new Set}a.prototype=i;let o=n,s=o&&new WeakSet;function c(n,r){if(!n._zod){_n.value=new a(r);try{Object.defineProperty(n,"_zod",_n)}finally{_n.value=void 0}}else if(n._zod.traits.has(e))return;if(n._zod.traits.add(e),t(n,r),s){let e=Object.getPrototypeOf(n),t=n._zod.constr.prototype,r=e;for(;r&&r!==t;)r=Object.getPrototypeOf(r);let i=r??e;s.has(i)||(s.add(i),on(i,o))}let i=d.prototype;for(let e in i)Object.prototype.hasOwnProperty.call(i,e)&&(e in n||(n[e]=i[e].bind(n)))}let l=r?.Parent??Object;class u extends l{}Object.defineProperty(u,"name",{value:e});function d(e){let t=r?.Parent?yn(u):this;c(t,e);let n=t._zod.deferred;if(n){for(let e of n)e();t._zod.deferred=void 0}let i=globalThis.__zod_globalConfig?.postProcessor;return i&&i(t),t}return Object.defineProperty(d,"init",{value:c}),Object.defineProperty(d,Symbol.hasInstance,{value:t=>r?.Parent&&t instanceof r.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(d,"name",{value:e}),d}var F=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},bn=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(gn=globalThis).__zod_globalConfig??(gn.__zod_globalConfig={});const I=globalThis.__zod_globalConfig;function L(e){return e&&Object.assign(I,e),I}function xn(){let e=this._zod;return e.message??=JSON.stringify(e.def,vt,2),e.message}function Sn(e){this._zod.message=e}const Cn={get:xn,set:Sn,enumerable:!0,configurable:!0},wn={value:void 0,enumerable:!1},Tn=new WeakSet([Object.prototype,Error.prototype]),En=(e,t)=>{e.name=`$ZodError`,wn.value=t,Object.defineProperty(e,"issues",wn),wn.value=void 0,Object.defineProperty(e,"message",Cn);let n=Object.getPrototypeOf(e);Tn.has(n)||(Tn.add(n),Object.defineProperty(n,"toString",{configurable:!0,enumerable:!1,get(){let e=()=>this.message;return Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0}),e},set(e){Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0})}}))},Dn=P(`$ZodError`,En);P(`$ZodError`,En,void 0,{Parent:Error});function On(e,t,n){return Object.prototype.hasOwnProperty.call(e,t)||(t===`__proto__`?Object.defineProperty(e,t,{value:n(),writable:!0,enumerable:!0,configurable:!0}):e[t]=n()),e[t]}function kn(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?On(n,i.path[0],()=>[]).push(t(i)):r.push(t(i));return{formErrors:r,fieldErrors:n}}function An(e,t=e=>e.message){let n={_errors:[]},r=(e,i=[])=>{for(let a of e.issues)if(a.code===`invalid_union`&&a.errors.length)a.errors.map(e=>r({issues:e},[...i,...a.path]));else if(a.code===`invalid_key`)r({issues:a.issues},[...i,...a.path]);else if(a.code===`invalid_element`)r({issues:a.issues},[...i,...a.path]);else{let e=[...i,...a.path];if(e.length===0)n._errors.push(t(a));else{let r=n,i=0;for(;i<e.length;){let n=e[i],o=i===e.length-1;if(n===`_errors`){o&&r._errors.push(t(a)),i++;continue}Object.prototype.hasOwnProperty.call(r,n)||Object.defineProperty(r,n,{value:{_errors:[]},enumerable:!0,writable:!0,configurable:!0});let s=r[n];o&&s._errors.push(t(a)),r=s,i++}}}};return r(e),n}function jn(e,t){return{callee:t?.callee??e,Err:t?.Err}}const Mn=e=>{let t=(n,r,i,a)=>{let o=i?{...i,async:!1}:{async:!1},s=n._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new F;if(s.issues.length){let n=new((a?.Err)??e)(s.issues.map(e=>j(e,o,L())));throw At(n,a?.callee??t),n}return s.value};return t},Nn=e=>{let t=async(n,r,i,a)=>{let o=i?{...i,async:!0}:{async:!0},s=n._zod.run({value:r,issues:[]},o);if(s instanceof Promise&&(s=await s),s.issues.length){let n=new((a?.Err)??e)(s.issues.map(e=>j(e,o,L())));throw At(n,a?.callee??t),n}return s.value};return t},Pn=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new F;return a.issues.length?Fn(e,a.issues,i):{success:!0,data:a.value}};function Fn(e,t,n){let r;return{success:!1,get error(){return r||(r=new e(t.map(e=>j(e,n,L()))),t=void 0,n=void 0),r},set error(e){r=e,t=void 0,n=void 0}}}const In=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?Fn(e,a.issues,i):{success:!0,data:a.value}},Ln=Symbol.for(`zod.compile.invalid`),Rn=Symbol.for(`zod.compile.fallback`),zn=((e,t,n)=>{let r=e._zod.bag.validator;if(r!==void 0){if(r(t)!==Ln)return!0;if(r.definite===!0&&n===void 0)return!1}return Bn(e,t,n)});function Bn(e,t,n){let r=n?{...n,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},i=e._zod.bag.fallbackRun,a;if(i?(r[Rn]=!0,a=i({value:t,issues:[]},r)):a=e._zod.run({value:t,issues:[]},r),a instanceof Promise)throw new F;return a.issues.length===0}const Vn=async(e,t,n)=>{let r=n?{...n,async:!0,abortEarly:!0}:{async:!0,abortEarly:!0},i=e._zod.run({value:t,issues:[]},r);return i instanceof Promise&&(i=await i),i.issues.length===0},Hn=e=>{let t=Mn(e),n=(e,r,i,a)=>{let o=i?{...i,direction:`backward`}:{direction:`backward`};return t(e,r,o,jn(n,a))};return n},Un=e=>{let t=Mn(e),n=(e,r,i,a)=>t(e,r,i,jn(n,a));return n},Wn=e=>{let t=Nn(e),n=async(e,r,i,a)=>{let o=i?{...i,direction:`backward`}:{direction:`backward`};return await t(e,r,o,jn(n,a))};return n},Gn=e=>{let t=Nn(e),n=async(e,r,i,a)=>await t(e,r,i,jn(n,a));return n},Kn=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Pn(e)(t,n,i)},qn=e=>(t,n,r)=>Pn(e)(t,n,r),Jn=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return In(e)(t,n,i)},Yn=e=>async(t,n,r)=>In(e)(t,n,r),Xn=/^[cC][0-9a-z]{6,}$/,Zn=/^[0-9a-z]+$/,Qn=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,$n=/^[0-9a-vA-V]{20}$/,er=/^[A-Za-z0-9]{27}$/,tr=/^[a-zA-Z0-9_-]{21}$/;function nr(e){return RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}const rr=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,ir=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,ar=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,or=/^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;function sr(){return RegExp(`^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$`,`u`)}const cr=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,lr=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,ur=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,dr=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,fr=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,pr=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/,mr=/^https?$/,hr=/^\+[1-9]\d{6,14}$/,gr=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`;function _r(e){return RegExp(`^${e}$`)}const vr=_r(gr);function yr(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:e.seconds?`${t}:[0-5]\\d(?:\\.\\d+)?`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function br(e){return RegExp(`^${yr(e)}$`)}function xr(e){let t=[`Z`];e.offset&&t.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let n=`${yr({precision:e.precision,seconds:!0})}(?:${t.join(`|`)})`,r=e.local?`${n}|${yr({precision:e.precision})}`:n;return RegExp(`^${gr}T(?:${r})$`)}const Sr=/^[\s\S]{0,}$/,Cr=/^-?\d+$/,wr=/^-?\d+(?:\.\d+)?$/,Tr=/^(?:true|false)$/i,Er=/^[^A-Z]*$/,Dr=/^[^a-z]*$/,R=P(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Or=e=>{let t=e.value;return!xt(t)&&t.length!==void 0},kr={number:`number`,bigint:`bigint`,object:`date`},Ar=P(`$ZodCheckLessThan`,(e,t)=>{R.init(e,t);let n=kr[typeof t.value];e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:kr[typeof r.value]??n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),jr=P(`$ZodCheckGreaterThan`,(e,t)=>{R.init(e,t);let n=kr[typeof t.value];e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:kr[typeof r.value]??n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Mr=P(`$ZodCheckMultipleOf`,(e,t)=>{R.init(e,t),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?t.value!==BigInt(0)&&n.value%t.value===BigInt(0):Ct(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Nr=P(`$ZodCheckNumberFormat`,(e,t)=>{R.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=zt[t.format];e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),Pr=P(`$ZodCheckMaxLength`,(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=Or),e._zod.check=n=>{let r=n.value,i=r.length;if((typeof r==`string`&&i>t.maximum?tn(r):i)<=t.maximum)return;let a=nn(r);n.issues.push({origin:a,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Fr=P(`$ZodCheckMinLength`,(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=Or),e._zod.check=n=>{let r=n.value,i=r.length;if((typeof r==`string`&&i>=t.minimum&&i<t.minimum*2?tn(r):i)>=t.minimum)return;let a=nn(r);n.issues.push({origin:a,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Ir=P(`$ZodCheckLengthEquals`,(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=Or),e._zod.check=n=>{let r=n.value,i=r.length,a=typeof r==`string`&&i>=t.length&&i<=t.length*2?tn(r):i;if(a===t.length)return;let o=nn(r),s=a>t.length;n.issues.push({origin:o,...s?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Lr=P(`$ZodCheckStringFormat`,(e,t)=>{var n,r;R.init(e,t),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),Rr=P(`$ZodCheckRegex`,(e,t)=>{Lr.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),zr=P(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=Er,Lr.init(e,t)}),Br=P(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=Dr,Lr.init(e,t)}),Vr=P(`$ZodCheckIncludes`,(e,t)=>{R.init(e,t);let n=It(t.includes);t.pattern=new RegExp(typeof t.position==`number`?`^.{${t.position},}${n}`:n),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Hr=P(`$ZodCheckStartsWith`,(e,t)=>{R.init(e,t);let n=RegExp(`^${It(t.prefix)}.*`);t.pattern??=n,e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Ur=P(`$ZodCheckEndsWith`,(e,t)=>{R.init(e,t);let n=RegExp(`.*${It(t.suffix)}$`);t.pattern??=n,e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),Wr=P(`$ZodCheckOverwrite`,(e,t)=>{R.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}});var Gr=class{constructor(e=[],t={}){this.content=[],this.indent=0,this.args=e,this.closed=t}indented(e){this.indent+=1;try{e(this)}finally{--this.indent}}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
|
|
4
|
+
`).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.content??[``];return new e(...Object.keys(this.closed),`return function (${this.args.join(`, `)}) {\n${t.join(`
|
|
5
|
+
`)}\n};`)(...Object.values(this.closed))}};const Kr={major:4,minor:6,patch:5},z=P(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Kr;let r=e._zod.def.checks,i=e._zod.traits.has(`$ZodCheck`)?[e,...r??[]]:r?.length?[...r]:[];for(let t of i)for(let n of t._zod.onattach)n(e);if(i.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(t,n,r)=>{if(t.memo)return t;let i=A(t),a;for(let o of n){if(o._zod.def.when){if(Xt(t)||!o._zod.def.when(t))continue}else if(i)continue;let n=t.issues.length,s=o._zod.check(t);if(s instanceof Promise&&r?.async===!1)throw new F;if(a||s instanceof Promise)a=(a??Promise.resolve()).then(async()=>{await s,t.issues.length!==n&&($t(t.issues,n,e),i||=A(t,n))});else{if(t.issues.length===n)continue;$t(t.issues,n,e),i||=A(t,n)}}return a?a.then(()=>t):t},n=(n,r,a)=>{if(A(n))return n.aborted=!0,n;let o=t(r,i,a);if(o instanceof Promise){if(a.async===!1)throw new F;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(r,a)=>{if(a.skipChecks)return e._zod.parse(r,a);if(a.direction===`backward`){let t=e._zod.parse({value:r.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,r,a)):n(t,r,a)}let o=e._zod.parse(r,a);if(o instanceof Promise){if(a.async===!1)throw new F;return o.then(e=>t(e,i,a))}return t(o,i,a)}}},{get"~standard"(){return sn(this,`~standard`,Yr(this))},set"~standard"(e){M(this,`~standard`,e)}}),qr=(e,t)=>e.issues.length?{issues:e.issues.map(e=>j(e,t,L()))}:{value:e.value};async function Jr(e,t){let n={async:!0};return qr(await e._zod.run({value:t,issues:[]},n),n)}function Yr(e){return{validate:t=>{let n={async:!1};try{let r=e._zod.run({value:t,issues:[]},n);if(!(r instanceof Promise))return qr(r,n)}catch{}return Jr(e,t)},vendor:`zod`,version:1}}const Xr=P(`$ZodString`,(e,t)=>{z.init(e,t),e._zod.pattern=t.pattern??Sr,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),B=P(`$ZodStringFormat`,(e,t)=>{Lr.init(e,t),Xr.init(e,t)}),Zr=P(`$ZodGUID`,(e,t)=>{t.pattern??=ir,B.init(e,t)}),Qr=P(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=ar(e)}else t.pattern??=ar();B.init(e,t)}),$r=P(`$ZodEmail`,(e,t)=>{t.pattern??=or,B.init(e,t)});function ei(e){try{return typeof URL<`u`&&typeof URL.canParse==`function`?URL.canParse(e):(new URL(e),!0)}catch{return!1}}function ti(e,t){return!(`normalize`in t)&&!(`hostname`in t)&&!(`protocol`in t)?ei(e)||2:ni(e,t)}function ni(e,t){if(!t.normalize&&t.protocol?.source===mr.source&&!/^https?:\/\//i.test(e))return 1;try{if(typeof URL<`u`){let t=URL;if(typeof t.parse==`function`)return t.parse(e)??2}return new URL(e)}catch{return 2}}const ri=/[\t\n\r]/g;function ii(e){return e.replace(ri,``)}function ai(e,t){return t.lastIndex=0,t.test(e.hostname)}function oi(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(`:`)?e.protocol.slice(0,-1):e.protocol)}const si=P(`$ZodURL`,(e,t)=>{B.init(e,t),e._zod.check=n=>{try{let r=n.value.trim(),i=ti(r,t);if(i===1){n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid URL format`,input:n.value,inst:e,continue:!t.abort});return}if(i===2){n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort});return}if(i===!0){n.value=ii(r);return}t.hostname&&!ai(i,t.hostname)&&n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort}),t.protocol&&!oi(i,t.protocol)&&n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort}),n.value=t.normalize?i.href:ii(r);return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),ci=P(`$ZodEmoji`,(e,t)=>{t.pattern??=sr(),B.init(e,t)}),li=P(`$ZodNanoID`,(e,t)=>{if(t.length!==void 0&&(!Number.isInteger(t.length)||t.length<1))throw Error(`Invalid nanoid length: ${t.length}`);t.pattern??=t.length===void 0?tr:nr(t.length),B.init(e,t)}),ui=P(`$ZodCUID`,(e,t)=>{t.pattern??=Xn,B.init(e,t)}),di=P(`$ZodCUID2`,(e,t)=>{t.pattern??=Zn,B.init(e,t)}),fi=P(`$ZodULID`,(e,t)=>{t.pattern??=Qn,B.init(e,t)}),pi=P(`$ZodXID`,(e,t)=>{t.pattern??=$n,B.init(e,t)}),mi=P(`$ZodKSUID`,(e,t)=>{t.pattern??=er,B.init(e,t)}),hi=P(`$ZodISODateTime`,(e,t)=>{t.pattern??=xr(t),B.init(e,t)}),gi=P(`$ZodISODate`,(e,t)=>{t.pattern??=vr,B.init(e,t)}),_i=P(`$ZodISOTime`,(e,t)=>{t.pattern??=br(t),B.init(e,t)}),vi=P(`$ZodISODuration`,(e,t)=>{t.pattern??=rr,B.init(e,t)}),yi=P(`$ZodIPv4`,(e,t)=>{t.pattern??=cr,B.init(e,t)}),bi=/^[0-9a-fA-F:.]+$/;function xi(e){return bi.test(e)?ei(`http://[${e}]`):!1}const Si=P(`$ZodIPv6`,(e,t)=>{t.pattern??=lr,B.init(e,t),e._zod.check=n=>{xi(n.value)||n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}),Ci=P(`$ZodCIDRv4`,(e,t)=>{t.pattern??=ur,B.init(e,t)});function wi(e){let t=e.split(`/`);if(t.length!==2)return!1;let[n,r]=t;if(!r)return!1;let i=Number(r);return`${i}`!==r||i<0||i>128?!1:xi(n)}const Ti=P(`$ZodCIDRv6`,(e,t)=>{t.pattern??=dr,B.init(e,t),e._zod.check=n=>{wi(n.value)||n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}});function Ei(e){if(e===``)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}const Di=/^[0-9a-zA-Z+/]*={0,2}$/,Oi=P(`$ZodBase64`,(e,t)=>{t.pattern??=Di,B.init(e,t),e._zod.check=n=>{Ei(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}}),ki=/^[A-Za-z0-9_-]*$/;function Ai(e){if(!ki.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return Ei(t.padEnd(Math.ceil(t.length/4)*4,`=`))}const ji=P(`$ZodBase64URL`,(e,t)=>{t.pattern??=ki,B.init(e,t),e._zod.check=n=>{Ai(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),Mi=P(`$ZodE164`,(e,t)=>{t.pattern??=hr,B.init(e,t)});function Ni(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}const Pi=P(`$ZodJWT`,(e,t)=>{B.init(e,t),e._zod.check=n=>{Ni(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),Fi=P(`$ZodNumber`,(e,t)=>{z.init(e,t),e._zod.pattern=wr,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:String(i):void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),Ii=P(`$ZodNumberFormat`,(e,t)=>{Nr.init(e,t),Fi.init(e,t)}),Li=P(`$ZodBoolean`,(e,t)=>{z.init(e,t),e._zod.pattern=Tr,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),Ri=P(`$ZodUnknown`,(e,t)=>{z.init(e,t),e._zod.parse=e=>e}),zi=P(`$ZodNever`,(e,t)=>{z.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)});function Bi(e,t,n){e.issues.length&&t.issues.push(...Zt(n,e.issues)),t.value[n]=e.value}const Vi=P(`$ZodArray`,(e,t)=>{z.init(e,t);let n=I.memoizer;n?.attach(e),e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({expected:`array`,code:`invalid_type`,input:a,inst:e}),r;r.value=n?n.alloc(e,r,Array(a.length),i):Array(a.length);let o=[],s=i?.abortEarly;for(let e=0;e<a.length;e++){let n=a[e],c=t.element._zod.run({value:n,issues:[]},i);if(c instanceof Promise)o.push(c.then(t=>Bi(t,r,e)));else if(Bi(c,r,e),s&&c.issues.length!==0&&A(c))break}return o.length?Promise.all(o).then(()=>r):r}});function Hi(e,t,n,r,i,a){let o=n in r,s=a===`optional`;if(!(!o&&s&&i===`optional`)){if(e.issues.length){if(i!==void 0&&s&&!o)return;t.issues.push(...Zt(n,e.issues))}if(!o&&i===void 0){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?(o||i===`defaulted`&&!s)&&(t.value[n]=void 0):t.value[n]=e.value}}const Ui=[];function Wi(e){let t=Object.keys(e.shape),n=Object.getOwnPropertySymbols(e.shape),r=n.length?n:Ui,i=r.length?[...t,...r]:t;for(let t of i)if(!e.shape?.[t]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${String(t)}": expected a Zod schema`);let a=Rt(e.shape);return{...e,allKeys:i,symbolKeys:r,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(a)}}function Gi(e,t,n,r,i,a,o){let s=[],c=i.keySet,l=i.catchall._zod,u=l.def.type,d=l.optin,f=l.optout,p=0;for(let i in t){if(o&&n.issues.length!==p){if(A(n,p))break;p=n.issues.length}if(c.has(i))continue;if(i===`__proto__`){u===`never`&&s.push(i);continue}if(u===`never`){s.push(i);continue}let a=l.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>Hi(e,n,i,t,d,f))):Hi(a,n,i,t,d,f)}return s.length&&n.issues.push({code:`unrecognized_keys`,keys:s,input:t,inst:a,continue:!0}),e.length?Promise.all(e).then(()=>n):n}const Ki=P(`$ZodObject`,(e,t)=>{z.init(e,t);let n=Object.getOwnPropertyDescriptor(t,`shape`),r=n?.get?n.get.raw:t.shape??{};if(r){let e=()=>{let n={...r};return Object.defineProperty(t,"shape",{value:n}),e.raw=n,n};e.raw=r,Object.defineProperty(t,"shape",{get:e})}let i=bt(()=>Wi(t));N(e,`propValues`,e=>{let t=e.def.shape,n={};for(let e in t){let r=t[e]._zod;if(r.values){Object.prototype.hasOwnProperty.call(n,e)||w(n,e,new Set);for(let t of r.values)n[e].add(t);r.optin!==void 0&&n[e].add(void 0)}}return n});let a=jt,o=t.catchall,s,c=I.memoizer;c?.attach(e),e._zod.parse=(t,n)=>{s??=i.value;let r=t.value;if(!a(r))return t.issues.push({expected:`object`,code:`invalid_type`,input:r,inst:e}),t;t.value=c?c.alloc(e,t,{},n):{};let l=[],u=s.shape,d=n?.abortEarly,f=t.issues.length;for(let e of s.allKeys){if(d&&t.issues.length!==f){if(A(t,f))break;f=t.issues.length}if(e===`__proto__`)continue;let i=u[e],a=i._zod.optin,o=i._zod.optout,s=i._zod.run({value:r[e],issues:[]},n);s instanceof Promise?l.push(s.then(n=>Hi(n,t,e,r,a,o))):Hi(s,t,e,r,a,o)}return o?Gi(l,r,t,n,i.value,e,d===!0):l.length?Promise.all(l).then(()=>t):t}}),qi=P(`$ZodObjectJIT`,(e,t)=>{Ki.init(e,t);let n=e._zod.parse,r=bt(()=>Wi(t)),i=I.memoizer,a=t=>{let n=r.value,a=n.symbolKeys,o=new Gr([`payload`,`ctx`],{shape:t,inst:e,memo:i,syms:a}),s=e=>`shape[${e}]._zod.run({ value: input[${e}], issues: [] }, ctx)`,c=(e,t)=>`
|
|
6
|
+
let ${e}_ab = false;
|
|
7
|
+
for (let i = 0; i < ${e}.issues.length; i++) {
|
|
8
|
+
const iss = ${e}.issues[i];
|
|
9
|
+
iss.path = iss.path ? [${t}, ...iss.path] : [${t}];
|
|
10
|
+
payload.issues.push(iss);
|
|
11
|
+
if (iss.continue !== true) ${e}_ab = true;
|
|
12
|
+
}
|
|
13
|
+
if (${e}_ab && ctx && ctx.abortEarly) {
|
|
14
|
+
payload.value = newResult;
|
|
15
|
+
return payload;
|
|
16
|
+
}`;o.write(`const input = payload.value;`);let l=Object.create(null),u=0;for(let e of n.allKeys)l[e]=`key_${u++}`;o.write(i?`const newResult = memo.alloc(inst, payload, {}, ctx);`:`const newResult = {};`);for(let e of n.allKeys){if(e===`__proto__`)continue;let n=l[e],r=typeof e==`symbol`?`syms[${a.indexOf(e)}]`:Ot(e),i=`${r} in input`,u=t[e],d=u?._zod?.optin,f=d!==void 0,p=u?._zod?.optout===`optional`;if(o.write(`const ${n} = ${s(r)};`),f&&p){let e=d===`optional`?`${n}_present`:`${n}.value !== undefined || ${n}_present`;o.write(`
|
|
17
|
+
const ${n}_present = ${i};
|
|
18
|
+
if (!${n}.issues.length || ${n}_present) {
|
|
19
|
+
if (${n}.issues.length) {${c(n,r)}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
if (${e}) {
|
|
23
|
+
newResult[${r}] = ${n}.value;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
`)}else f?(o.write(`
|
|
28
|
+
if (${n}.issues.length) {${c(n,r)}
|
|
29
|
+
}
|
|
30
|
+
`),d===`defaulted`?o.write(`newResult[${r}] = ${n}.value;`):o.write(`
|
|
31
|
+
if (${n}.value !== undefined || ${i}) {
|
|
32
|
+
newResult[${r}] = ${n}.value;
|
|
33
|
+
}
|
|
34
|
+
`)):o.write(`
|
|
35
|
+
const ${n}_present = ${i};
|
|
36
|
+
if (${n}.issues.length) {${c(n,r)}
|
|
37
|
+
}
|
|
38
|
+
if (!${n}_present && !${n}.issues.length) {
|
|
39
|
+
payload.issues.push({
|
|
40
|
+
code: "invalid_type",
|
|
41
|
+
expected: "nonoptional",
|
|
42
|
+
input: undefined,
|
|
43
|
+
path: [${r}]
|
|
44
|
+
});
|
|
45
|
+
if (ctx && ctx.abortEarly) {
|
|
46
|
+
payload.value = newResult;
|
|
47
|
+
return payload;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
if (${n}_present) {
|
|
52
|
+
newResult[${r}] = ${n}.value;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
`)}return o.write(`payload.value = newResult;`),o.write(`return payload;`),o.compile()},o,s=jt,c=!I.jitless,l=c&&Mt.value,u=t.catchall,d;e._zod.parse=(i,f)=>{d??=r.value;let p=i.value;return s(p)?c&&l&&f?.async===!1&&f.jitless!==!0?(o||=a(t.shape),i=o(i,f),u?Gi([],p,i,f,d,e,f?.abortEarly===!0):i):n(i,f):(i.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),i)}});function Ji(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!A(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>j(e,r,L())))}),t)}const Yi=P(`$ZodUnion`,(e,t)=>{z.init(e,t),N(e,`optin`,e=>e.def.options.some(e=>e._zod.optin===`defaulted`)?`defaulted`:e.def.options.some(e=>e._zod.optin!==void 0)?`optional`:void 0),N(e,`optout`,e=>e.def.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),N(e,`values`,e=>{if(e.def.options.every(e=>e._zod.values))return new Set(e.def.options.flatMap(e=>Array.from(e._zod.values)))}),N(e,`pattern`,e=>{if(e.def.options.every(e=>e._zod.pattern)){let t=e.def.options.map(e=>e._zod.pattern);return RegExp(`^(${t.map(e=>St(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>Ji(t,r,e,i)):Ji(o,r,e,i)}}),Xi=P(`$ZodIntersection`,(e,t)=>{z.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>Qi(e,t,n)):Qi(e,i,a)}});function Zi(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Nt(e)&&Nt(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};Object.prototype.hasOwnProperty.call(i,`__proto__`)&&delete i.__proto__;for(let n of r){if(n===`__proto__`)continue;let r=Zi(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=Zi(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function Qi(e,t,n){let r=new Map,i,a=new Map,o=(e,t)=>{let n;if(e.code===`unrecognized_keys`&&!e.path?.length)i??=e,n=e.keys;else if(e.code===`invalid_key`&&e.origin===`record`&&e.path?.length===1){let t=String(e.path[0]);a.has(t)||a.set(t,e),n=[t]}else return!1;for(let e of n)r.has(e)||r.set(e,{}),r.get(e)[t]=!0;return!0};for(let n of t.issues)o(n,`l`)||e.issues.push(n);for(let t of n.issues)o(t,`r`)||e.issues.push(t);let s=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(s.length){let t=i?s.filter(e=>i.keys.includes(e)):[];t.length&&e.issues.push({...i,keys:t});for(let n of s)!t.includes(n)&&a.has(n)&&e.issues.push(a.get(n))}let c=Zi(t.value,n.value);if(!c.valid){if(A(e))return e;throw Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`)}return e.value=c.data,e}const $i=P(`$ZodRecord`,(e,t)=>{z.init(e,t);let n=I.memoizer;n?.attach(e),e._zod.parse=(r,i)=>{let a=r.value;if(!Nt(a))return r.issues.push({expected:`record`,code:`invalid_type`,input:a,inst:e}),r;let o=[],s=t.keyType._zod.values;if(s&&!t.partial){r.value=n?n.alloc(e,r,{},i):{};let c=new Set;for(let n of s)if(typeof n==`string`||typeof n==`number`||typeof n==`symbol`){if(c.add(typeof n==`number`?n.toString():n),n===`__proto__`)continue;let s=t.keyType._zod.run({value:n,issues:[]},i);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(s.issues.length){r.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>j(e,i,L())),input:n,path:[n],inst:e});continue}let l=s.value;if(l===`__proto__`)continue;let u=t.valueType._zod.run({value:a[n],issues:[]},i);u instanceof Promise?o.push(u.then(e=>{e.issues.length&&r.issues.push(...Zt(n,e.issues)),r.value[l]=e.value})):(u.issues.length&&r.issues.push(...Zt(n,u.issues)),r.value[l]=u.value)}let l;for(let e in a)if(!c.has(e)){if(t.mode===`loose`){if(e===`__proto__`)continue;r.value[e]=a[e]}else l??=[],l.push(e)}l&&l.length>0&&r.issues.push({code:`unrecognized_keys`,input:a,inst:e,keys:l,continue:!0})}else{r.value=n?n.alloc(e,r,{},i):{};let c;for(let n of Reflect.ownKeys(a)){if(n===`__proto__`||!Object.prototype.propertyIsEnumerable.call(a,n))continue;let l=t.keyType._zod.run({value:n,issues:[]},i);if(l instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof n==`string`&&wr.test(n)&&l.issues.length){let e=t.keyType._zod.run({value:Number(n),issues:[]},i);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(l=e)}if(l.issues.length){t.mode===`loose`?r.value[n]=a[n]:s?(c??=[],c.push(n)):r.issues.push({code:`invalid_key`,origin:`record`,issues:l.issues.map(e=>j(e,i,L())),input:n,path:[n],inst:e});continue}let u=l.value;if(u===`__proto__`)continue;let d=t.valueType._zod.run({value:a[n],issues:[]},i);d instanceof Promise?o.push(d.then(e=>{e.issues.length&&r.issues.push(...Zt(n,e.issues)),r.value[u]=e.value})):(d.issues.length&&r.issues.push(...Zt(n,d.issues)),r.value[u]=d.value)}c&&c.length>0&&r.issues.push({code:`unrecognized_keys`,input:a,inst:e,keys:c,continue:!0})}return o.length?Promise.all(o).then(()=>r):r}}),ea=P(`$ZodEnum`,(e,t)=>{z.init(e,t);let n=gt(t.entries),r=new Set(n);e._zod.values=r,N(e,`pattern`,e=>{let t=gt(e.def.entries).filter(e=>Ft.has(typeof e));return RegExp(t.length?`^(${t.map(e=>It(e.toString())).join(`|`)})$`:`^[^\\s\\S]$`)}),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),ta=P(`$ZodTransform`,(e,t)=>{z.init(e,t),e._zod.optin=`optional`,I.memoizer?.guard(e),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new bn(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new F;return n.value=i,n}});function na(e,t){return e.value=t.issues.length?void 0:t.value,e}const ra=P(`$ZodOptional`,(e,t)=>{z.init(e,t),N(e,`optin`,e=>e.def.innerType._zod.optin===`defaulted`?`defaulted`:`optional`),e._zod.optout=`optional`,N(e,`values`,e=>{let t=e.def.innerType._zod.values;return t?new Set([...t,void 0]):void 0}),N(e,`pattern`,e=>{let t=e.def.innerType._zod.pattern;return t?RegExp(`^(${St(t.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(e.value===void 0){if(t.innerType._zod.optin!==`defaulted`)return e;let r=t.innerType._zod.run({value:e.value,issues:[]},n);return r instanceof Promise?r.then(t=>na(e,t)):na(e,r)}return t.innerType._zod.run(e,n)}}),ia=P(`$ZodExactOptional`,(e,t)=>{ra.init(e,t),N(e,`values`,e=>e.def.innerType._zod.values),N(e,`pattern`,e=>e.def.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),aa=P(`$ZodNullable`,(e,t)=>{z.init(e,t),N(e,`optin`,e=>e.def.innerType._zod.optin),N(e,`optout`,e=>e.def.innerType._zod.optout),N(e,`pattern`,e=>{let t=e.def.innerType._zod.pattern;return t?RegExp(`^(${St(t.source)}|null)$`):void 0}),N(e,`values`,e=>e.def.innerType._zod.values?new Set([...e.def.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),oa=P(`$ZodDefault`,(e,t)=>{z.init(e,t),e._zod.optin=`defaulted`,N(e,`values`,e=>e.def.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>sa(e,t)):sa(r,t)}});function sa(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const ca=P(`$ZodPrefault`,(e,t)=>{z.init(e,t),e._zod.optin=`defaulted`,N(e,`values`,e=>e.def.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),la=P(`$ZodNonOptional`,(e,t)=>{z.init(e,t),N(e,`values`,e=>{let t=e.def.innerType._zod.values;return t?new Set([...t].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>ua(t,e)):ua(i,e)}});function ua(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}function da(e,t,n,r){return t.issues.length?(e.value=n.catchValue({...t,value:e.value,error:{issues:t.issues.map(e=>j(e,r,L()))},input:e.value}),e):(e.value=t.value,t.memo&&(e.memo=!0),e)}const fa=P(`$ZodCatch`,(e,t)=>{z.init(e,t),N(e,`optin`,e=>e.def.innerType._zod.optin===`defaulted`?`defaulted`:`optional`),N(e,`optout`,e=>e.def.innerType._zod.optout),N(e,`values`,e=>e.def.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run({value:e.value,issues:[]},n);return r instanceof Promise?r.then(r=>da(e,r,t,n)):da(e,r,t,n)}}),pa=P(`$ZodPipe`,(e,t)=>{z.init(e,t),N(e,`values`,e=>e.def.in._zod.values),N(e,`optin`,e=>e.def.in._zod.optin),N(e,`optout`,e=>e.def.out._zod.optout),N(e,`propValues`,e=>e.def.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>ma(e,t.in,n)):ma(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>ma(e,t.out,n)):ma(r,t.out,n)}});function ma(e,t,n){return e.issues.some(e=>e.code!==`unrecognized_keys`)?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const ha=P(`$ZodReadonly`,(e,t)=>{z.init(e,t),N(e,`propValues`,e=>e.def.innerType._zod.propValues),N(e,`values`,e=>e.def.innerType._zod.values),N(e,`optin`,e=>e.def.innerType?._zod?.optin),N(e,`optout`,e=>e.def.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(ga):ga(r)}});function ga(e){return e.memo||(e.value=Object.freeze(e.value)),e}const _a=P(`$ZodCustom`,(e,t)=>{R.init(e,t),z.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>va(t,n,r,e));va(i,n,r,e)}});function va(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(an(e))}}var ya=class extends Error{constructor(){super(`Cannot parse a reference cycle that closes through a transform`),this.name=`ZodCyclicError`}};const ba=`~memo`,xa=[];function Sa(e){return typeof e==`object`&&!!e}function Ca(e){return e.map(e=>e.path?{...e,path:e.path.slice()}:{...e})}const wa=new WeakMap;function Ta(e,t,n){let r=wa.get(e);if(r!==void 0)return r?2:0;if(t.has(e))return 2;t.add(e);let i=0,a=e=>{if(i!==2&&e?._zod){let r=Ta(e,t,n);r>i&&(i=r)}},o=(e,r)=>{let i=0;for(let a of Reflect.ownKeys(e)){let o=Object.getOwnPropertyDescriptor(e,a);if(r&&!o.enumerable)continue;let s=o.get?1:o.value?._zod?Ta(o.value,t,n):0;s>i&&(i=s)}return i},s=e=>{e>i&&(i=e)},c=e._zod.def;switch(c.type){case`object`:{let e=wt(c);s(e?o(e,!0):1),a(c.catchall);break}case`array`:a(c.element);break;case`tuple`:for(let e of c.items)a(e);a(c.rest);break;case`record`:case`map`:a(c.keyType),a(c.valueType);break;case`set`:a(c.valueType);break;case`union`:for(let e of c.options)a(e);break;case`intersection`:a(c.left),a(c.right);break;case`optional`:case`nullable`:case`default`:case`prefault`:case`catch`:case`readonly`:case`nonoptional`:case`promise`:case`success`:a(c.innerType);break;case`pipe`:a(c.in),a(c.out);break;case`function`:a(c.input),a(c.output);break;case`lazy`:{let r=c._cachedInner??(n?e._zod.innerType:void 0);s(r?Ta(r,t,!1):1);break}case`template_literal`:case`string`:case`number`:case`int`:case`boolean`:case`bigint`:case`symbol`:case`undefined`:case`null`:case`void`:case`never`:case`any`:case`unknown`:case`date`:case`nan`:case`enum`:case`literal`:case`file`:case`transform`:case`custom`:break;default:for(let e in c){let t=Object.getOwnPropertyDescriptor(c,e);if(!t||t.get)continue;let n=t.value;if(!(!n||typeof n!=`object`)){if(n._zod)a(n);else if(Array.isArray(n))for(let e of n)a(e)}}}return t.delete(e),Ea(e,i)}function Ea(e,t){return t!==1&&wa.set(e,t===2),t}function Da(e,t){let n=e.buckets.get(t);return n||(n=new WeakMap,e.buckets.set(t,n)),n}let Oa;const ka=[],Aa={alloc(e,t,n){let r=Oa;if(!r)return n;Oa=void 0;let i={value:n,issues:null};return r.set(t.value,i),ka.push(i),n},guard(e){var t;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let t=e._zod.parse,n=(e,n)=>{if(n.direction!==`backward`&&Ma(n,e.value))throw new ya;return t(e,n)};e._zod.parse=n,e._zod.run===t&&(e._zod.run=n)})},attach(e){var t;let n,r=!1,i,a;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let t=e._zod.parse,o=(s,c)=>{if(n===void 0){let i=Ta(e,new Set,!1);if(i===0)return e._zod.parse=t,e._zod.run===o&&(e._zod.run=t),t(s,c);i===2||r?n=!0:r=!0}let l=s.value;if(!Sa(l))return t(s,c);let u=c[ba];u||(u={buckets:new WeakMap,backEdges:void 0},c[ba]=u);let d;i===c?d=a:(d=Da(u,e),i=c,a=d);let f=d.get(l);if(f)return s.value=f.value,f.issues?f.issues.length&&s.issues.push(...Ca(f.issues)):(s.memo=!0,u.backEdges??(u.backEdges=new WeakSet),u.backEdges.add(f.value)),s;Oa=d;let p=ka.length,m=t(s,c);Oa=void 0;let h=ka.length>p?ka.pop():void 0;return m instanceof Promise?m.then(e=>(h&&(h.issues=e.issues.length?Ca(e.issues):xa),e)):(h&&(h.issues=m.issues.length?Ca(m.issues):xa),m)};e._zod.parse=o,e._zod.run===t&&(e._zod.run=o)})}};function ja(){return Aa}function Ma(e,t){let n=e[ba]?.backEdges;return n!==void 0&&Sa(t)&&n.has(t)}const Na=()=>{let e={string:{unit:`characters`,verb:`to have`},file:{unit:`bytes`,verb:`to have`},array:{unit:`items`,verb:`to have`},set:{unit:`items`,verb:`to have`},map:{unit:`entries`,verb:`to have`}};function t(t){return e[t]??null}let n={regex:`input`,email:`email address`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO datetime`,date:`ISO date`,time:`ISO time`,duration:`ISO duration`,ipv4:`IPv4 address`,ipv6:`IPv6 address`,mac:`MAC address`,cidrv4:`IPv4 range`,cidrv6:`IPv6 range`,base64:`base64-encoded string`,base64url:`base64url-encoded string`,json_string:`JSON string`,e164:`E.164 number`,currency_code:`currency code`,credit_card:`credit card number`,iban:`IBAN`,jwt:`JWT`,template_literal:`input`},r={nan:`NaN`};function i(e,t){return e===`number`&&typeof t==`number`&&!Number.isFinite(t)?String(t):r[e]??e}return e=>{switch(e.code){case`invalid_type`:return`Invalid input: expected ${i(e.expected)}, received ${i(rn(e.input),e.input)}`;case`invalid_value`:return e.values.length===1?`Invalid input: expected ${Lt(e.values[0])}`:`Invalid option: expected one of ${_t(e.values,`|`)}`;case`too_big`:{let n=e.exact?`exactly `:e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Too big: expected ${e.origin??`value`} to have ${n}${e.maximum.toString()} ${r.unit??`elements`}`:`Too big: expected ${e.origin??`value`} to be ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.exact?`exactly `:e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Too small: expected ${e.origin} to have ${n}${e.minimum.toString()} ${r.unit}`:`Too small: expected ${e.origin} to be ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Invalid string: must start with "${t.prefix}"`:t.format===`ends_with`?`Invalid string: must end with "${t.suffix}"`:t.format===`includes`?`Invalid string: must include "${t.includes}"`:t.format===`regex`?`Invalid string: must match pattern ${t.pattern}`:`Invalid ${n[t.format]??e.format}`}case`not_multiple_of`:return`Invalid number: must be a multiple of ${e.divisor}`;case`unrecognized_keys`:return`Unrecognized key${e.keys.length>1?`s`:``}: ${_t(e.keys,`, `)}`;case`invalid_key`:return`Invalid key in ${e.origin}`;case`invalid_union`:return e.options&&Array.isArray(e.options)&&e.options.length>0?`Invalid discriminator value. Expected ${e.options.map(e=>`'${e}'`).join(` | `)}`:e.inclusive===!1?`Invalid input: more than one option matched`:`Invalid input`;case`invalid_element`:return`Invalid value in ${e.origin}`;default:return`Invalid input`}}};function Pa(){return{localeError:Na()}}var Fa,Ia=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function La(){return new Ia}(Fa=globalThis).__zod_globalRegistry??(Fa.__zod_globalRegistry=La());const Ra=globalThis.__zod_globalRegistry;function za(e){return e.checks&&=[...e.checks],e}function Ba(e,t){return new e(za({type:`string`,...k(t)}))}function Va(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...k(t)})}function Ha(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...k(t)})}function Ua(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...k(t)})}function Wa(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...k(t)})}function Ga(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...k(t)})}function Ka(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...k(t)})}function qa(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...k(t)})}function Ja(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...k(t)})}function Ya(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...k(t)})}function Xa(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...k(t)})}function Za(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...k(t)})}function Qa(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...k(t)})}function $a(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...k(t)})}function eo(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...k(t)})}function to(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...k(t)})}function no(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...k(t)})}function ro(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...k(t)})}function io(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...k(t)})}function ao(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...k(t)})}function oo(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...k(t)})}function so(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...k(t)})}function co(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...k(t)})}function lo(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...k(t)})}function uo(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...k(t)})}function fo(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...k(t)})}function po(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...k(t)})}function mo(e,t){return new e(za({type:`number`,checks:[],...k(t)}))}function ho(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...k(t)})}function go(e,t){return new e({type:`boolean`,...k(t)})}function _o(e){return new e({type:`unknown`})}function vo(e,t){return new e({type:`never`,...k(t)})}function yo(e,t){return new Ar({check:`less_than`,...k(t),value:e,inclusive:!1})}function bo(e,t){return new Ar({check:`less_than`,...k(t),value:e,inclusive:!0})}function xo(e,t){return new jr({check:`greater_than`,...k(t),value:e,inclusive:!1})}function So(e,t){return new jr({check:`greater_than`,...k(t),value:e,inclusive:!0})}function Co(e,t){return new Mr({check:`multiple_of`,...k(t),value:e})}function wo(e,t){return new Pr({check:`max_length`,...k(t),maximum:e})}function To(e,t){return new Fr({check:`min_length`,...k(t),minimum:e})}function Eo(e,t){return new Ir({check:`length_equals`,...k(t),length:e})}function Do(e,t){return new Rr({check:`string_format`,format:`regex`,...k(t),pattern:e})}function Oo(e){return new zr({check:`string_format`,format:`lowercase`,...k(e)})}function ko(e){return new Br({check:`string_format`,format:`uppercase`,...k(e)})}function Ao(e,t){return new Vr({check:`string_format`,format:`includes`,...k(t),includes:e})}function jo(e,t){return new Hr({check:`string_format`,format:`starts_with`,...k(t),prefix:e})}function Mo(e,t){return new Ur({check:`string_format`,format:`ends_with`,...k(t),suffix:e})}function No(e){return new Wr({check:`overwrite`,tx:e})}function Po(e){return No(t=>t.normalize(e))}function Fo(){return No(e=>e.trim())}function Io(){return No(e=>e.toLowerCase())}function Lo(){return No(e=>e.toUpperCase())}function Ro(){return No(e=>kt(e))}function zo(e,t,n){return new e({type:`array`,element:t,...k(n)})}function Bo(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...k(n)})}function Vo(e,t){let n=Ho(t=>(t.addIssue=e=>{if(typeof e==`string`)t.issues.push(an(e,t.value,n._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,`input`in r||(r.input=t.value),r.inst??=n,r.continue??=!n._zod.def.abort,t.issues.push(an(r))}},e(t.value,t)),t);return n}function Ho(e,t){let n=new R({check:`custom`,...k(t)});return n._zod.check=e,n}function Uo(e,...t){for(let n of t)for(let t of Reflect.ownKeys(n))Object.prototype.propertyIsEnumerable.call(n,t)&&w(e,t,n[t]);return e}function Wo(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??Ra,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,sharedDefsExtractedFor:void 0,sharedEmitDoneFor:void 0,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,intersections:[],deferred:[],external:e?.external??void 0}}function Go(e,t,n,r,i){let a=typeof t.unrepresentable==`function`?t.unrepresentable({zodSchema:e,path:r.path,message:i}):t.unrepresentable;if(a===`any`)return!1;if(a===void 0||a===`throw`)throw Error(i);return Object.assign(n,a),!0}function V(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o),t.sharedDefsExtractedFor=void 0,t.sharedEmitDoneFor=void 0;let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,V(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Uo(o.schema,c),t.io===`input`&&H(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&`_prefault`in o.schema&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function Ko(e){return e.replace(/~/g,`~0`).replace(/\//g,`~1`)}function qo(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);if(e.external&&e.sharedDefsExtractedFor===e.external)return;let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${Ko(a)}`}}let i=`#/${r}/`;if(t[1]===n&&!t[1].schema.id)return{ref:`#`};let a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+Ko(a)}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
|
|
56
|
+
|
|
57
|
+
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 Jo(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;Jo(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 Yo=new Set([`type`,`properties`,`required`,`additionalProperties`]),Xo=[`oneOf`,`anyOf`];function Zo(e){let t=e.additionalProperties;return t===void 0||t===!1||typeof t!=`object`||!t?null:Object.keys(t).length?t:null}function Qo(e){let t=[];for(let n of e){if(typeof n!=`object`||n.type!==`object`)return null;for(let e in n)if(!Yo.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]??Zo(n);t!=null&&(e.some(e=>JSON.stringify(e)===JSON.stringify(t))||e.push(t))}w(n,r,e.length===1?e[0]:Qo(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=Zo(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 $o(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let t of Yo)if(t in e)return;let n=t.filter(e=>Xo.some(t=>Array.isArray(e[t]))),r=null;if(!n.length)r=Qo(t);else{let e=n[0],i=Xo.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=>Qo([...a,e]));if(o.some(e=>!e))return;r={[i]:o}}r&&(delete e.allOf,Uo(e,r))}function es(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)):Uo(i,s),Uo(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())Jo(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)??[])$o(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)}Uo(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,w(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:ns(t,`input`,e.processors),output:ns(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function H(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 H(r.element,n);if(r.type===`set`)return H(r.valueType,n);if(r.type===`lazy`)return H(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 H(r.innerType,n);if(r.type===`intersection`)return H(r.left,n)||H(r.right,n);if(r.type===`record`||r.type===`map`)return H(r.keyType,n)||H(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:H(r.in,n)||H(r.out,n);if(r.type===`object`){for(let e in r.shape)if(H(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(H(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(H(e,n))return!0;return!!(r.rest&&H(r.rest,n))}return!1}const ts=(e,t={})=>n=>{let r=Wo({...n,processors:t});return V(e,r),qo(r,e),es(r,e)},ns=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=Wo({...i??{},target:a,io:t,processors:n});return V(e,o),qo(o,e),es(o,e)},rs=(e,t,n)=>{(e[t]===void 0||n>e[t])&&(e[t]=n)},is=(e,t,n)=>{(e[t]===void 0||n<e[t])&&(e[t]=n)},as=(e,t)=>{rs(e,`minimum`,t),is(e,`maximum`,t)},os=(e,t)=>{e.multipleOf??=[],e.multipleOf.includes(t)||e.multipleOf.push(t)},ss=(e,t)=>{e.patterns??=new Set,e.patterns.add(t)},cs=(e,t)=>{e.mime=e.mime?e.mime.filter(e=>t.includes(e)):[...t]},ls=(e,t)=>{e.format=t,t.includes(`int`)&&(e.isInt=!0)},us=(e,t)=>rs(e,`minimum`,t.minimum),ds=(e,t)=>is(e,`maximum`,t.maximum),fs=e=>(t,n)=>{ls(t,n.format);let[r,i]=e[n.format];rs(t,`minimum`,r),is(t,`maximum`,i)},ps={greater_than:(e,t)=>rs(e,t.inclusive?`minimum`:`exclusiveMinimum`,t.value),less_than:(e,t)=>is(e,t.inclusive?`maximum`:`exclusiveMaximum`,t.value),multiple_of:(e,t)=>os(e,t.value),number_format:fs(zt),bigint_format:fs(Bt),min_length:us,max_length:ds,length_equals:(e,t)=>as(e,t.length),min_size:us,max_size:ds,size_equals:(e,t)=>as(e,t.size),string_format:(e,t)=>{ls(e,t.format),t.pattern&&ss(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)=>cs(e,t.mime)};function U(e){let t={},n=e._zod.def,r=e._zod.traits.has(`$ZodCheck`)?[e,...n.checks??[]]:n.checks??[];for(let e of r)ps[e._zod.def.check]?.(t,e._zod.def);let i=e._zod.bag;i.minimum!==void 0&&rs(t,`minimum`,i.minimum),i.exclusiveMinimum!==void 0&&rs(t,`exclusiveMinimum`,i.exclusiveMinimum),i.maximum!==void 0&&is(t,`maximum`,i.maximum),i.exclusiveMaximum!==void 0&&is(t,`exclusiveMaximum`,i.exclusiveMaximum),i.multipleOf!==void 0&&os(t,i.multipleOf),i.format!==void 0&&(t.format??=i.format,i.format.includes(`int`)&&(t.isInt=!0)),i.mime&&cs(t,i.mime);for(let e of i.patterns??[])ss(t,e);return t}const ms={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},hs=new Map([[Di,fr],[ki,pr]]),gs=e=>hs.get(e)??e,_s=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l,laxFormat:u}=U(e);if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=ms[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(gs);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}))])}},vs=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,multipleOf:s,exclusiveMaximum:c,exclusiveMinimum:l,isInt:u}=U(e);i.type=u?`integer`:`number`;let d=typeof l==`number`&&l>=(a??-1/0),f=typeof c==`number`&&c<=(o??1/0),p=t.target===`draft-04`||t.target===`openapi-3.0`;if(d?p?(i.minimum=l,i.exclusiveMinimum=!0):i.exclusiveMinimum=l:typeof a==`number`&&(i.minimum=a),f?p?(i.maximum=c,i.exclusiveMaximum=!0):i.exclusiveMaximum=c:typeof o==`number`&&(i.maximum=o),s){let n=new Set;for(let a of s)Number.isFinite(a)&&a!==0?n.add(Math.abs(a)):Go(e,t,i,r,`A multipleOf divisor of ${a} cannot be represented in JSON Schema`);let[a,...o]=n;a!==void 0&&(i.multipleOf=a),o.length&&(i.allOf=[...i.allOf??[],...o.map(e=>({multipleOf:e}))])}},ys=(e,t,n,r)=>{n.type=`boolean`},bs=(e,t,n,r)=>{n.not={}},xs=(e,t,n,r)=>{let i=e._zod.def,a=gt(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},Ss=(e,t,n,r)=>{Go(e,t,n,r,`Custom types cannot be represented in JSON Schema`)},Cs=(e,t,n,r)=>{Go(e,t,n,r,`Transforms cannot be represented in JSON Schema`)},ws=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=U(e);typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=V(a.element,t,{...r,path:[...r.path,`items`]})};function Ts(e){let t=e._zod.def;return t.type===`pipe`&&t.in._zod.traits.has(`$ZodTransform`)?Ts(t.out):t.type===`catch`?Ts(t.innerType):e._zod.optin}const Es=(e,t,n,r)=>{let i=n,a=e._zod.def,o=a.shape;if(Object.getOwnPropertySymbols(o).length&&Go(e,t,i,r,`Symbol keys cannot be represented in JSON Schema`))return;i.type=`object`,i.properties={};for(let e in o)w(i.properties,e,V(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`?Ts(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=V(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},Ds=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>V(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},Os=(e,t,n,r)=>{let i=e._zod.def,a=V(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=V(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)};function ks(e,t,n){if(t.$ref){if(n.has(t))return t;n.add(t);let r=e.get(t)?.def;if(!r)return t;let i=ks(e,r,n);return i===r?t:i}for(let r of[`anyOf`,`oneOf`]){let i=t[r];if(!Array.isArray(i))continue;let a=i.map(t=>ks(e,t,n));a.some((e,t)=>e!==i[t])&&(t={...t,[r]:a})}let r=Array.isArray(t.type)?t.type:[t.type],i=!r.includes(`string`)&&r.some(e=>e===`number`||e===`integer`),a=t.enum??(t.const===void 0?void 0:[t.const]);if(!i&&!a?.some(e=>typeof e==`number`))return t;let{minimum:o,maximum:s,exclusiveMinimum:c,exclusiveMaximum:l,multipleOf:u,format:d,id:f,...p}=t;return p.enum?p.enum=p.enum.map(e=>typeof e==`number`?String(e):e):typeof p.const==`number`&&(p.const=String(p.const)),i?(p.type=`string`,a||(p.pattern=(r.includes(`number`)?wr:Cr).source),p):p}const As=new WeakMap;function js(e){let t=new Map;for(let n of e.seen.values())n.def&&!t.has(n.schema)&&t.set(n.schema,n);let n=new Map;for(let r of As.get(e)??[]){let i=e.seen.get(r),a=(i?.def??i?.schema)?.propertyNames;if(!a||a===!0||n.has(a))continue;let o=ks(t,a,new Set);o!==a&&n.set(a,o)}if(n.size)for(let t of e.seen.values())for(let e of[t.schema,t.def]){let t=e&&n.get(e.propertyNames);t&&(e.propertyNames=t)}}const Ms=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=U(o).patterns;if(a.mode===`loose`&&s&&s.size>0){let e=V(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)w(i.patternProperties,gs(t).source,e)}else{if(t.target===`draft-07`||t.target===`draft-2020-12`){i.propertyNames=V(a.keyType,t,{...r,path:[...r.path,`propertyNames`]});let n=As.get(t);n||(n=[],As.set(t,n),t.deferred.push(()=>js(t))),n.push(e)}i.additionalProperties=V(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]})}let c=o._zod.values,l=t.io===`input`&&Ts(a.valueType)!==void 0;if(c&&!a.partial&&!l){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e.map(String))}},Ns=(e,t,n,r)=>{let i=e._zod.def,a=V(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`}]},Ps=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Fs=Symbol();function Is(e,t,n,r,i){let a=!1,o=JSON.stringify(e,(e,t)=>typeof t==`bigint`?(a=!0,null):t);return a?(Go(t,n,r,i,`BigInt defaults cannot be represented in JSON Schema`),Fs):JSON.parse(o)}const Ls=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o=Is(i.defaultValue,e,t,n,r);o!==Fs&&(n.default=o)},Rs=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);if(a.ref=i.innerType,t.io!==`input`)return;let o=Is(i.defaultValue,e,t,n,r);o!==Fs&&(n._prefault=o)},zs=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{Go(e,t,n,r,`Dynamic catch values are not supported in JSON Schema`);return}n.default=o},Bs=(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;V(o,t,r);let s=t.seen.get(e);s.ref=o},Vs=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Hs=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Us=new WeakSet([Object.prototype,Error.prototype]);function Ws(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 W=P(`ZodError`,(e,t)=>{Dn.init(e,t),e.name=`ZodError`;let n=Object.getPrototypeOf(e);Us.has(n)||(Us.add(n),Ws(n,`format`,e=>t=>An(e,t)),Ws(n,`flatten`,e=>t=>kn(e,t)),Ws(n,`addIssue`,e=>t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,vt,2)}),Ws(n,`addIssues`,e=>t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,vt,2)}),Object.defineProperty(n,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}}))},void 0,{Parent:Error}),Gs=Mn(W),Ks=Nn(W),qs=Pn(W),Js=In(W),Ys=Hn(W),Xs=Un(W),Zs=Wn(W),Qs=Gn(W),$s=Kn(W),ec=qn(W),tc=Jn(W),nc=Yn(W);function rc(){I.localeError||L(Pa())}function ic(){I.memoizer||L({memoizer:ja()})}const G=P(`ZodType`,(e,t)=>(rc(),z.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(D(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 O(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(gl(e,t))},superRefine(e,t){return this.check(_l(e,t))},overwrite(e){return this.check(No(e))},optional(){return Qc(this)},exactOptional(){return el(this)},nullable(){return nl(this)},nullish(){return Qc(nl(this))},nonoptional(e){return cl(this,e)},array(){return zc(this)},or(e){return Uc([this,e])},and(e){return Gc(this,e)},transform(e){return fl(this,Xc(e))},default(e){return il(this,e)},prefault(e){return ol(this,e)},catch(e){return ul(this,e)},pipe(e){return fl(this,e)},readonly(){return ml(this)},describe(e){let t=this.clone();return Ra.add(t,{description:e}),t},meta(...e){if(e.length===0)return Ra.get(this);let t=this.clone();return Ra.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 sn(this,`~standard`,{...Yr(this),jsonSchema:{input:ns(this,`input`),output:ns(this,`output`)}})},set"~standard"(e){M(this,`~standard`,e)},parse:function e(t,n){return Gs(this,t,n,{callee:e})},parseAsync:async function e(t,n){return await Ks(this,t,n,{callee:e})},safeParse(e,t){return qs(this,e,t)},async safeParseAsync(e,t){return Js(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){M(this,`spa`,e)},validate(e,t){return zn(this,e,t)},validateAsync(e,t){return Vn(this,e,t)},encode:function e(t,n){return Ys(this,t,n,{callee:e})},decode:function e(t,n){return Xs(this,t,n,{callee:e})},encodeAsync:async function e(t,n){return await Zs(this,t,n,{callee:e})},decodeAsync:async function e(t,n){return await Qs(this,t,n,{callee:e})},safeEncode(e,t){return $s(this,e,t)},safeDecode(e,t){return ec(this,e,t)},async safeEncodeAsync(e,t){return tc(this,e,t)},async safeDecodeAsync(e,t){return nc(this,e,t)},toJSONSchema(e){return ts(this,{})(e)},get description(){return Ra.get(this)?.description},get _def(){return this._zod.def}}),ac=P(`_ZodString`,(e,t)=>{Xr.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>_s(e,t,n,r)},cn({format:e=>U(e).format??null,minLength:e=>U(e).minimum??null,maxLength:e=>U(e).maximum??null},{regex(...e){return this.check(Do(...e))},includes(...e){return this.check(Ao(...e))},startsWith(...e){return this.check(jo(...e))},endsWith(...e){return this.check(Mo(...e))},min(...e){return this.check(To(...e))},max(...e){return this.check(wo(...e))},length(...e){return this.check(Eo(...e))},nonempty(...e){return this.check(To(1,...e))},lowercase(e){return this.check(Oo(e))},uppercase(e){return this.check(ko(e))},trim(){return this.check(Fo())},normalize(...e){return this.check(Po(...e))},toLowerCase(){return this.check(Io())},toUpperCase(){return this.check(Lo())},slugify(){return this.check(Ro())}})),oc=P(`ZodString`,(e,t)=>{Xr.init(e,t),ac.init(e,t)},{email(e){return this.check(Va(dc,e))},url(e){return this.check(qa(mc,e))},jwt(e){return this.check(co(kc,e))},emoji(e){return this.check(Ja(hc,e))},guid(e){return this.check(Ha(fc,e))},uuid(e){return this.check(Ua(pc,e))},uuidv4(e){return this.check(Wa(pc,e))},uuidv6(e){return this.check(Ga(pc,e))},uuidv7(e){return this.check(Ka(pc,e))},nanoid(e){return this.check(Ya(gc,e))},cuid(e){return this.check(Xa(_c,e))},cuid2(e){return this.check(Za(vc,e))},ulid(e){return this.check(Qa(yc,e))},base64(e){return this.check(ao(Ec,e))},base64url(e){return this.check(oo(Dc,e))},xid(e){return this.check($a(bc,e))},ksuid(e){return this.check(eo(xc,e))},ipv4(e){return this.check(to(Sc,e))},ipv6(e){return this.check(no(Cc,e))},cidrv4(e){return this.check(ro(wc,e))},cidrv6(e){return this.check(io(Tc,e))},e164(e){return this.check(so(Oc,e))},datetime(e){return this.check(lo(sc,e))},date(e){return this.check(uo(cc,e))},time(e){return this.check(fo(lc,e))},duration(e){return this.check(po(uc,e))}});function K(e){return Ba(oc,e)}const q=P(`ZodStringFormat`,(e,t)=>{B.init(e,t),ac.init(e,t)}),sc=P(`ZodISODateTime`,(e,t)=>{hi.init(e,t),q.init(e,t)}),cc=P(`ZodISODate`,(e,t)=>{gi.init(e,t),q.init(e,t)}),lc=P(`ZodISOTime`,(e,t)=>{_i.init(e,t),q.init(e,t)}),uc=P(`ZodISODuration`,(e,t)=>{vi.init(e,t),q.init(e,t)}),dc=P(`ZodEmail`,(e,t)=>{$r.init(e,t),q.init(e,t)}),fc=P(`ZodGUID`,(e,t)=>{Zr.init(e,t),q.init(e,t)}),pc=P(`ZodUUID`,(e,t)=>{Qr.init(e,t),q.init(e,t)}),mc=P(`ZodURL`,(e,t)=>{si.init(e,t),q.init(e,t)}),hc=P(`ZodEmoji`,(e,t)=>{ci.init(e,t),q.init(e,t)}),gc=P(`ZodNanoID`,(e,t)=>{li.init(e,t),q.init(e,t)}),_c=P(`ZodCUID`,(e,t)=>{ui.init(e,t),q.init(e,t)}),vc=P(`ZodCUID2`,(e,t)=>{di.init(e,t),q.init(e,t)}),yc=P(`ZodULID`,(e,t)=>{fi.init(e,t),q.init(e,t)}),bc=P(`ZodXID`,(e,t)=>{pi.init(e,t),q.init(e,t)}),xc=P(`ZodKSUID`,(e,t)=>{mi.init(e,t),q.init(e,t)}),Sc=P(`ZodIPv4`,(e,t)=>{yi.init(e,t),q.init(e,t)}),Cc=P(`ZodIPv6`,(e,t)=>{Si.init(e,t),q.init(e,t)}),wc=P(`ZodCIDRv4`,(e,t)=>{Ci.init(e,t),q.init(e,t)}),Tc=P(`ZodCIDRv6`,(e,t)=>{Ti.init(e,t),q.init(e,t)}),Ec=P(`ZodBase64`,(e,t)=>{Oi.init(e,t),q.init(e,t)}),Dc=P(`ZodBase64URL`,(e,t)=>{ji.init(e,t),q.init(e,t)}),Oc=P(`ZodE164`,(e,t)=>{Mi.init(e,t),q.init(e,t)}),kc=P(`ZodJWT`,(e,t)=>{Pi.init(e,t),q.init(e,t)}),Ac=P(`ZodNumber`,(e,t)=>{Fi.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>vs(e,t,n,r),e.isFinite=!0},cn({minValue:e=>{let{minimum:t,exclusiveMinimum:n}=U(e);return Math.max(t??-1/0,n??-1/0)},maxValue:e=>{let{maximum:t,exclusiveMaximum:n}=U(e);return Math.min(t??1/0,n??1/0)},isInt:e=>{let{isInt:t,multipleOf:n}=U(e);return!!t||!!n?.some(Number.isSafeInteger)},format:e=>U(e).format??null},{gt(e,t){return this.check(xo(e,t))},gte(e,t){return this.check(So(e,t))},min(e,t){return this.check(So(e,t))},lt(e,t){return this.check(yo(e,t))},lte(e,t){return this.check(bo(e,t))},max(e,t){return this.check(bo(e,t))},int(e){return this.check(Mc(e))},safe(e){return this.check(Mc(e))},positive(e){return this.check(xo(0,e))},nonnegative(e){return this.check(So(0,e))},negative(e){return this.check(yo(0,e))},nonpositive(e){return this.check(bo(0,e))},multipleOf(e,t){return this.check(Co(e,t))},step(e,t){return this.check(Co(e,t))},finite(){return this}}));function J(e){return mo(Ac,e)}const jc=P(`ZodNumberFormat`,(e,t)=>{Ii.init(e,t),Ac.init(e,t)});function Mc(e){return ho(jc,e)}const Nc=P(`ZodBoolean`,(e,t)=>{Li.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ys(e,t,n,r)});function Y(e){return go(Nc,e)}const Pc=P(`ZodUnknown`,(e,t)=>{Ri.init(e,t),G.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Fc(){return _o(Pc)}const Ic=P(`ZodNever`,(e,t)=>{zi.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>bs(e,t,n,r)});function Lc(e){return vo(Ic,e)}const Rc=P(`ZodArray`,(e,t)=>{ic(),Vi.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ws(e,t,n,r),e.element=t.element},{min(e,t){return this.check(To(e,t))},nonempty(e){return this.check(To(1,e))},max(e,t){return this.check(wo(e,t))},length(e,t){return this.check(Eo(e,t))},unwrap(){return this.element}});function zc(e,t){return zo(Rc,e,t)}const Bc=P(`ZodObject`,(e,t)=>{ic(),qi.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Es(e,t,n,r),mn(e,`shape`,e=>e._zod.def.shape,!1)},{keyof(){return Z(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(D(this._zod.def,{catchall:e}))},passthrough(){return this.clone(D(this._zod.def,{catchall:Fc()}))},loose(){return this.clone(D(this._zod.def,{catchall:Fc()}))},strict(){return this.clone(D(this._zod.def,{catchall:Lc()}))},strip(){return this.clone(D(this._zod.def,{catchall:void 0}))},extend(e){return Wt(this,e)},safeExtend(e){return Kt(this,e)},merge(e){return qt(this,e)},pick(e){return Vt(this,e)},omit(e){return Ut(this,e)},partial(...e){return Jt(Zc,this,e[0])},exactPartial(...e){return Jt($c,this,e[0],`exactPartial`)},required(...e){return Yt(sl,this,e[0])}});function Vc(e,t){let n={type:`object`,shape:e??{},...k(t)};return new Bc(n)}function X(e,t){return new Bc({type:`object`,shape:e,catchall:Fc(),...k(t)})}const Hc=P(`ZodUnion`,(e,t)=>{Yi.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ds(e,t,n,r),e.options=t.options});function Uc(e,t){return new Hc({type:`union`,options:e,...k(t)})}const Wc=P(`ZodIntersection`,(e,t)=>{Xi.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Os(e,t,n,r)});function Gc(e,t){return new Wc({type:`intersection`,left:e,right:t})}const Kc=P(`ZodRecord`,(e,t)=>{ic(),$i.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ms(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function qc(e,t,n){return!t||!t._zod?new Kc({type:`record`,keyType:K(),valueType:e,...k(t)}):new Kc({type:`record`,keyType:e,valueType:t,...k(n)})}const Jc=P(`ZodEnum`,(e,t)=>{ea.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>xs(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 Jc({...t,checks:[],...k(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 Jc({...t,checks:[],...k(r),entries:i})}});function Z(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e;return new Jc({type:`enum`,entries:n,...k(t)})}const Yc=P(`ZodTransform`,(e,t)=>{ic(),ta.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Cs(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new bn(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(an(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(an(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function Xc(e){return new Yc({type:`transform`,transform:e})}const Zc=P(`ZodOptional`,(e,t)=>{ra.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Hs(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Qc(e){return new Zc({type:`optional`,innerType:e})}const $c=P(`ZodExactOptional`,(e,t)=>{ia.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Hs(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function el(e){return new $c({type:`optional`,innerType:e})}const tl=P(`ZodNullable`,(e,t)=>{aa.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ns(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function nl(e){return new tl({type:`nullable`,innerType:e})}const rl=P(`ZodDefault`,(e,t)=>{oa.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ls(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function il(e,t){return new rl({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():Pt(t)}})}const al=P(`ZodPrefault`,(e,t)=>{ca.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Rs(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function ol(e,t){return new al({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():Pt(t)}})}const sl=P(`ZodNonOptional`,(e,t)=>{la.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ps(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function cl(e,t){return new sl({type:`nonoptional`,innerType:e,...k(t)})}const ll=P(`ZodCatch`,(e,t)=>{fa.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>zs(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ul(e,t){return new ll({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:hn(t)})}const dl=P(`ZodPipe`,(e,t)=>{pa.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Bs(e,t,n,r),e.in=t.in,e.out=t.out});function fl(e,t){return new dl({type:`pipe`,in:e,out:t})}const pl=P(`ZodReadonly`,(e,t)=>{ha.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Vs(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function ml(e){return new pl({type:`readonly`,innerType:e})}const hl=P(`ZodCustom`,(e,t)=>{_a.init(e,t),G.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ss(e,t,n,r)});function gl(e,t={}){return Bo(hl,e,t)}function _l(e,t){return Vo(e,t)}const vl=Vc({detail:K()}),yl=Vc({error:K()});function bl(e){if(!e)return`Unknown error`;if(e instanceof Error){let t=vl.safeParse(e.cause);return t.success?t.data.detail:xl(e.message)}if(typeof e==`object`){let t=vl.safeParse(e);if(t.success)return t.data.detail;let n=yl.safeParse(e);if(n.success)return n.data.error}try{return JSON.stringify(e)}catch{return String(e)}}function xl(e){let t=Sl(e);if(!t)return e;let n=vl.safeParse(t);if(n.success)return n.data.detail;let r=yl.safeParse(t);return r.success?r.data.error:e}function Sl(e){try{return JSON.parse(e)}catch{return e}}function Cl(e,t){if(!e)throw Error(t)}const wl=[`pip`,`uv`,`rye`,`poetry`,`pixi`],Tl=[`normal`,`compact`,`medium`,`full`,`columns`],El=[`auto`,`native`,`polars`,`lazy-polars`,`pandas`],Dl=[`html`,`markdown`,`ipynb`],Ol=[`off`,`jedi`],kl=[`manual`,`ask`,`agent`,`code_mode`],Q=Vc({api_key:K().optional(),base_url:K().optional(),project:K().optional()}).loose(),Al=Vc({chat_model:K().nullish(),edit_model:K().nullish(),autocomplete_model:K().nullish(),displayed_models:zc(K()).default([]),custom_models:zc(K()).default([])}),jl=X({completion:Vc({activate_on_typing:Y().prefault(!0),signature_hint_on_typing:Y().prefault(!1),auto_close_pairs:Y().prefault(!0),copilot:Uc([Y(),Z([`github`,`codeium`,`custom`])]).prefault(!1).transform(e=>e===!0?`github`:e),codeium_api_key:K().nullish()}).prefault({}),save:X({autosave:Z([`off`,`after_delay`]).prefault(`after_delay`),autosave_delay:J().nonnegative().transform(e=>Math.max(e,1e3)).prefault(1e3),format_on_save:Y().prefault(!1)}).prefault({}),formatting:X({line_length:J().nonnegative().prefault(79).transform(e=>Math.min(e,1e3)),infer_types:Z(Ol).prefault(`off`)}).prefault({}),keymap:X({preset:Z([`default`,`vim`]).prefault(`default`),overrides:qc(K(),K()).prefault({}),destructive_delete:Y().prefault(!0)}).prefault({}),runtime:X({auto_instantiate:Y().prefault(!0),on_cell_change:Z([`lazy`,`autorun`]).prefault(`autorun`),auto_reload:Z([`off`,`lazy`,`autorun`]).prefault(`off`),reactive_tests:Y().prefault(!0),watcher_on_save:Z([`lazy`,`autorun`]).prefault(`lazy`),sql_default_limit:J().int().nullable().optional(),default_sql_output:Z(El).prefault(`auto`),default_auto_download:zc(Z(Dl)).prefault([]),show_tracebacks:Y().prefault(!1)}).prefault({}),display:X({theme:Z([`light`,`dark`,`system`]).prefault(`light`),code_editor_font_size:J().nonnegative().prefault(14),cell_output:Z([`above`,`below`]).prefault(`below`),dataframes:Z([`rich`,`plain`]).prefault(`rich`),default_table_page_size:J().prefault(10),default_table_max_columns:J().prefault(50),default_width:Z(Tl).prefault(`medium`).transform(e=>e===`normal`?`compact`:e),locale:K().nullable().optional(),reference_highlighting:Y().prefault(!0),code_lens:Y().prefault(!0)}).prefault({}),package_management:X({manager:Z(wl).prefault(`pip`)}).prefault({}),ai:X({enabled:Y().prefault(!0),rules:K().prefault(``),max_tokens:J().int().positive().nullable().optional(),mode:Z(kl).transform(e=>e===`manual`?`ask`:e).prefault(`ask`),inline_tooltip:Y().prefault(!1),allow_provider_config:Y().prefault(!0),open_ai:Q.optional(),github:Q.optional(),anthropic:Q.optional(),google:Q.optional(),ollama:Q.optional(),openrouter:Q.optional(),wandb:Q.optional(),opencode_go:Q.optional(),open_ai_compatible:Q.optional(),azure:Q.optional(),bedrock:X({region_name:K().optional(),profile_name:K().optional(),aws_access_key_id:K().optional(),aws_secret_access_key:K().optional()}).optional(),custom_providers:qc(K(),Q).prefault({}),models:Al.prefault({displayed_models:[],custom_models:[]})}).prefault({}),experimental:X({markdown:Y().optional()}).prefault(()=>({})),server:X({skip_update_check:Y().optional(),session_cookie_secure:Y().optional(),session_secret:K().optional(),disable_file_downloads:Y().optional(),transport:Z([`websocket`,`sse`]).optional()}).prefault(()=>({})),diagnostics:X({enabled:Y().optional(),sql_linter:Y().optional()}).prefault(()=>({})),file_browser:X({folders:zc(Vc({path:K(),name:K().optional()})).optional()}).optional().prefault({}),sharing:X({html:Y().optional(),wasm:Y().optional(),molab:Y().optional()}).optional(),mcp:X({presets:zc(Z([`marimo`,`context7`])).optional()}).optional().prefault({})}).partial().prefault(()=>({completion:{},save:{},formatting:{},keymap:{},runtime:{},display:{},diagnostics:{},file_browser:{},experimental:{},server:{},ai:{},package_management:{},mcp:{}})),Ml=K(),Nl=Z(El).prefault(`auto`);Vc({width:Z(Tl).prefault(`compact`).transform(e=>e===`normal`?`compact`:e),app_title:Ml.nullish(),css_file:K().nullish(),html_head_file:K().nullish(),auto_download:zc(Z(Dl)).prefault([]),sql_output:Nl}).prefault(()=>({width:`compact`,auto_download:[],sql_output:`auto`}));function Pl(){return jl.parse({completion:{},save:{},formatting:{},keymap:{},runtime:{},display:{},diagnostics:{},file_browser:{},experimental:{},server:{},ai:{},package_management:{},mcp:{}})}function Fl(e){let t,n=!1;return function(...r){return n||(n=!0,t=e.apply(this,r)),t}}const Il=e=>new TextDecoder().decode(e);function Ll(e){return e.FS}const Rl=`notebook.py`,zl=`/marimo`,$={NOTEBOOK_FILENAME:Rl,HOME_DIR:zl,createHomeDir:e=>{let t=Ll(e);try{t.mkdirTree(zl)}catch{}t.chdir(zl)},mountFS:e=>{globalThis.origin!==`null`&&Ll(e).mount(e.FS.filesystems.IDBFS,{root:`.`},zl)},populateFilesToMemory:async e=>{await Bl(e,!0)},persistFilesToRemote:async e=>{await Bl(e,!1)},readNotebook:e=>{let t=Ll(e),n=`${zl}/${Rl}`;return Il(t.readFile(n))},initNotebookCode:e=>{let{pyodide:t,filename:n,code:r}=e,i=Ll(t),a=e=>{try{return Il(i.readFile(e))}catch{return null}};if(n&&n!==Rl){let e=a(n);if(e)return{code:e,filename:n}}return i.writeFile(Rl,r),{code:r,filename:Rl}}};function Bl(e,t){return new Promise((n,r)=>{Ll(e).syncfs(t,e=>{if(e instanceof Error){r(e);return}n()})})}function Vl(){return`marimo-base`}const Hl=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=Hl;function Ul(e){return e.trim().split(/[[<>=!~;@\s]/)[0]}var Wl=class{pyodide=null;packageLoadQueue=Promise.resolve();sessionGeneration=0;sessions=new Set;get requirePyodide(){return Cl(this.pyodide,`Pyodide not loaded`),this.pyodide}async bootstrap(e){return await this.loadPyodideAndPackages(e)}async loadPyodideAndPackages(e){if(!lt)throw Error(`loadPyodide is not defined`);let t=Hl.startSpan(`loadPyodide`);try{let n=e.pyodideIndexUrl??`https://cdn.jsdelivr.net/pyodide/${e.pyodideVersion}/full/`,r=await lt({packages:[`micropip`,`msgspec`,Vl(),`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 C.error(`Failed to load Pyodide`,e),e}}async mountFilesystem(e){let t=Hl.startSpan(`mountFilesystem`);return $.createHomeDir(this.requirePyodide),$.mountFS(this.requirePyodide),await $.populateFilesToMemory(this.requirePyodide),t.end(`ok`),$.initNotebookCode({pyodide:this.requirePyodide,code:e.code,filename:e.filename})}async prepareSession(e){let t=this.sessionGeneration,{code:n,filename:r,queryParameters:i,userConfig:a}=e;self.query_params=i,self.user_config=a;let o=Hl.startSpan(`prepareSession.runPython`),s=r||$.NOTEBOOK_FILENAME,c=this.requirePyodide.runPython(`
|
|
58
|
+
print("[py] Starting marimo...")
|
|
59
|
+
import asyncio
|
|
60
|
+
import gc
|
|
61
|
+
import js
|
|
62
|
+
from marimo._pyodide.bootstrap import create_session, instantiate
|
|
63
|
+
|
|
64
|
+
assert js.query_params, "query_params is not defined"
|
|
65
|
+
|
|
66
|
+
def create_session_resources():
|
|
67
|
+
session, bridge = create_session(
|
|
68
|
+
filename="${s}",
|
|
69
|
+
query_params=js.query_params.to_py(),
|
|
70
|
+
user_config=js.user_config.to_py(),
|
|
71
|
+
)
|
|
72
|
+
session_task = None
|
|
73
|
+
|
|
74
|
+
def init(auto_instantiate=True):
|
|
75
|
+
nonlocal session_task
|
|
76
|
+
instantiate(session, auto_instantiate)
|
|
77
|
+
session_task = asyncio.create_task(session.start())
|
|
78
|
+
|
|
79
|
+
async def stop():
|
|
80
|
+
nonlocal bridge, session, session_task
|
|
81
|
+
task = session_task
|
|
82
|
+
kernel_task = getattr(session, "kernel_task", None)
|
|
83
|
+
if kernel_task is None:
|
|
84
|
+
if task is not None:
|
|
85
|
+
task.cancel()
|
|
86
|
+
else:
|
|
87
|
+
kernel_task.stop()
|
|
88
|
+
if task is not None:
|
|
89
|
+
await asyncio.gather(task, return_exceptions=True)
|
|
90
|
+
if bridge is not None:
|
|
91
|
+
bridge.close()
|
|
92
|
+
bridge.session = None
|
|
93
|
+
task = None
|
|
94
|
+
kernel_task = None
|
|
95
|
+
session_task = None
|
|
96
|
+
session = None
|
|
97
|
+
bridge = None
|
|
98
|
+
gc.collect()
|
|
99
|
+
|
|
100
|
+
with open("${s}", "r") as f:
|
|
101
|
+
packages = session.find_packages(f.read())
|
|
102
|
+
|
|
103
|
+
return bridge, init, packages, stop
|
|
104
|
+
|
|
105
|
+
create_session_resources()`);o.end();let l,u,d,f;try{[l,u,d,f]=c}finally{c.destroy()}let p;try{p=new Set(d.toJs())}catch(e){throw l.destroy(),u.destroy(),f.destroy(),e}finally{d.destroy()}let m=!1,h,ee=Fl(()=>u.destroy()),g=()=>m||t!==this.sessionGeneration,te=this.packageLoadQueue.then(()=>{if(!g())return this.loadNotebookDeps(n,p)});this.packageLoadQueue=te.catch(()=>void 0);let _={bridge:l,start:Fl(async()=>{try{if(g())return;await te,g()||u(a.runtime.auto_instantiate)}catch(e){if(!g())throw e}finally{ee()}}),stop:()=>(m=!0,ee(),h??=(async()=>{await f(),f.destroy(),l.destroy(),this.sessions.delete(_)})().catch(e=>{throw h=void 0,e}),h)};return this.sessions.add(_),_}async stopSession(){this.sessionGeneration+=1;let e=[...this.sessions],t=!1,n;for(let r of e)try{await r.stop()}catch(e){t||(t=!0,n=e)}if(t)throw n}async loadNotebookDeps(e,t){let n=this.requirePyodide;ne(e,t)&&(e=`import pandas\n${e}`,e=`import duckdb\n${e}`,e=`import sqlglot\n${e}`,e.includes(`polars`)&&(e=`import pyarrow\n${e}`)),e=`import docutils\n${e}`,e=`import pygments\n${e}`,e=`import jedi\n${e}`,e=`import pyodide_http\n${e}`;let r=[...t],i=Hl.startSpan(`pyodide.loadPackage`);await n.loadPackagesFromImports(e,{errorCallback:C.error,messageCallback:C.log}),i.end(),i=Hl.startSpan(`micropip.install`);let a=r.filter(e=>!n.loadedPackages[Ul(e)]);if(a.length>0){let e=a.map(e=>[Ul(e),e]);await n.runPythonAsync(`
|
|
106
|
+
import micropip
|
|
107
|
+
import sys
|
|
108
|
+
# Filter out builtins
|
|
109
|
+
missing = [req for name, req in ${JSON.stringify(e)} if name not in sys.modules]
|
|
110
|
+
if len(missing) > 0:
|
|
111
|
+
print("Loading from micropip:", missing)
|
|
112
|
+
await micropip.install(missing)
|
|
113
|
+
`).catch(e=>{C.error(`Failed to load packages from micropip`,e)})}i.end()}},Gl=class extends Wl{async bootstrap(e){return await super.bootstrap(e)}async mountFilesystem(e){let{code:t,filename:n}=e;try{return $.createHomeDir(this.requirePyodide),$.initNotebookCode({pyodide:this.requirePyodide,code:t,filename:n})}catch(e){C.error(e)}return{code:t,filename:n}}async prepareSession(e){return super.prepareSession({queryParameters:{},code:e.code,filename:e.filename,userConfig:Pl()})}};async function Kl(){let e=ru(),t=ut(e);try{self.controller=new Gl,self.pyodide=await self.controller.bootstrap({version:e,pyodideVersion:t})}catch(e){C.error(`Error bootstrapping`,e),nu.send.initializedError({error:bl(e)})}}const ql=Kl();let Jl,Yl=Promise.resolve();async function Xl(e,t){await ql;try{Cl(self.controller,`Controller not loaded`),t&&await Zl();let n=await self.controller.mountFilesystem({code:e.code,filename:`app-${e.appId}.py`}),r=await self.controller.prepareSession(n);try{await Ql(r.bridge,e.sessionGeneration)}catch(e){throw await r.stop(),e}r.start().catch(e=>{nu.send.initializedError({error:bl(e)})}),Jl||={appId:e.appId,bridge:r.bridge,sessionGeneration:e.sessionGeneration},nu.send.initialized({})}catch(e){throw nu.send.initializedError({error:bl(e)}),e}}async function Zl(){await self.controller.stopSession(),Jl=void 0}async function Ql(e,t){let n=e.notebook;try{await n.subscribe(`island-${t}`,null,e=>{nu.send.notebookEvent({event:e,sessionGeneration:t})})}finally{n.destroy()}}function $l(e){let t=Yl.then(e);return Yl=t.then(()=>void 0,()=>void 0),t}const eu=u({startSession:async e=>{await $l(()=>Xl(e,!1))},replaceSession:async e=>{await $l(()=>Xl(e,!0))},stopSession:async e=>{await $l(async()=>{Jl?.appId===e.appId&&Jl?.sessionGeneration===e.sessionGeneration&&(Cl(self.controller,`Controller not loaded`),await Zl())})},loadPackages:async e=>{await ql,await $l(async()=>{tu(e);let{code:t}=e;ne(t)&&(t=`import pandas\n${t}`,t=`import duckdb\n${t}`,t=`import sqlglot\n${t}`,t.includes(`polars`)&&(t=`import pyarrow\n${t}`)),await self.pyodide.loadPackagesFromImports(t,{messageCallback:C.log,errorCallback:C.error})})},bridge:async e=>{await ql;let{functionName:t,payload:n}=e;return $l(async()=>{let r=tu(e),i=n==null?null:typeof n==`string`?n:JSON.stringify(n),a=i==null?await r[t]():await r[t](i);return typeof a==`string`?JSON.parse(a):a})}});function tu(e){let t=Jl;if(!t||e.appId!==t.appId||e.sessionGeneration!==t.sessionGeneration)throw Error(`The marimo app session is no longer active.`);return t.bridge}const nu=p({transport:te({transportId:`marimo-transport`}),requestHandler:eu});nu.send(`ready`,{});function ru(){return self.name}export{o as t};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as e } from "./graphlib-
|
|
1
|
+
import { t as e } from "./graphlib-nlwT3Wvy.js";
|
|
2
2
|
import { A as t, B as n, C as r, D as i, E as a, F as o, G as s, H as c, I as l, L as u, M as d, N as f, O as p, P as m, R as h, T as g, U as _, V as ee, W as te, b as v, j as y, k as b, l as x, v as S, w as C, z as w } from "./chunk-75Z2AOVW-D7gxIs2Q.js";
|
|
3
3
|
import { n as T, t as E } from "./src-CA_m4ONl.js";
|
|
4
4
|
import { n as D } from "./chunk-Y2CYZVJY-DKKS1VyV.js";
|
|
@@ -3,7 +3,7 @@ import { t } from "./react-sHtZdjeP.js";
|
|
|
3
3
|
import { t as n } from "./compiler-runtime-CldRdSsv.js";
|
|
4
4
|
import { t as r } from "./clsx-CoeGtWvn.js";
|
|
5
5
|
import { t as i } from "./jsx-runtime-3BD1kT0s.js";
|
|
6
|
-
import { t as a } from "./objects-
|
|
6
|
+
import { t as a } from "./objects-DCmMvZtn.js";
|
|
7
7
|
//#region src/utils/functions.ts
|
|
8
8
|
var o = {
|
|
9
9
|
NOOP: () => {},
|
|
@@ -1335,7 +1335,7 @@ function Y(...e) {
|
|
|
1335
1335
|
}
|
|
1336
1336
|
K(Y, "useComposedRefs");
|
|
1337
1337
|
//#endregion
|
|
1338
|
-
//#region ../node_modules/.pnpm/@radix-ui+react-slot@1.
|
|
1338
|
+
//#region ../node_modules/.pnpm/@radix-ui+react-slot@1.5.0_@types+react@19.3.0_react@19.3.0/node_modules/@radix-ui/react-slot/dist/index.mjs
|
|
1339
1339
|
var Se = Object.defineProperty, X = (e, t) => Se(e, "name", {
|
|
1340
1340
|
value: t,
|
|
1341
1341
|
configurable: !0
|
|
@@ -1344,16 +1344,17 @@ var Se = Object.defineProperty, X = (e, t) => Se(e, "name", {
|
|
|
1344
1344
|
function Ce(e) {
|
|
1345
1345
|
let t = p.forwardRef((t, n) => {
|
|
1346
1346
|
let { children: r, ...i } = t, a = null, o = !1, s = [];
|
|
1347
|
-
|
|
1347
|
+
r = Pe(r), p.Children.forEach(r, (e) => {
|
|
1348
1348
|
if (Ae(e)) {
|
|
1349
1349
|
o = !0;
|
|
1350
1350
|
let t = e, n = "child" in t.props ? t.props.child : t.props.children;
|
|
1351
|
-
Me(n) && typeof Z == "function"
|
|
1351
|
+
for (; Me(n) && typeof Z == "function";) n = Z(n._payload);
|
|
1352
|
+
a = De(t, n), s.push(a?.props?.children);
|
|
1352
1353
|
} else s.push(e);
|
|
1353
1354
|
}), a ? a = p.cloneElement(a, void 0, s) : !o && p.Children.count(r) === 1 && p.isValidElement(r) && (a = r);
|
|
1354
1355
|
let c = a ? ke(a) : void 0, l = Y(n, c);
|
|
1355
1356
|
if (!a) {
|
|
1356
|
-
if (r || r === 0) throw Error(o ?
|
|
1357
|
+
if (r || r === 0) throw Error(o ? Le(e) : Ie(e));
|
|
1357
1358
|
return r;
|
|
1358
1359
|
}
|
|
1359
1360
|
let u = Oe(i, a.props ?? {});
|
|
@@ -1369,13 +1370,7 @@ function Ee(e) {
|
|
|
1369
1370
|
return t.displayName = `${e}.Slottable`, t.__radixId = Te, t;
|
|
1370
1371
|
}
|
|
1371
1372
|
X(Ee, "createSlottable");
|
|
1372
|
-
var De = /* @__PURE__ */ X((e, t) =>
|
|
1373
|
-
if ("child" in e.props) {
|
|
1374
|
-
let t = e.props.child;
|
|
1375
|
-
return p.isValidElement(t) ? p.cloneElement(t, void 0, e.props.children(t.props.children)) : null;
|
|
1376
|
-
}
|
|
1377
|
-
return p.isValidElement(t) ? t : null;
|
|
1378
|
-
}, "getSlottableElementFromSlottable");
|
|
1373
|
+
var De = /* @__PURE__ */ X((e, t) => "child" in e.props ? p.isValidElement(t) ? p.cloneElement(t, void 0, e.props.children(t.props.children)) : null : p.isValidElement(t) ? t : null, "getSlottableElementFromSlottable");
|
|
1379
1374
|
function Oe(e, t) {
|
|
1380
1375
|
let n = { ...t };
|
|
1381
1376
|
for (let r in t) {
|
|
@@ -1386,7 +1381,7 @@ function Oe(e, t) {
|
|
|
1386
1381
|
} : i && (n[r] = i) : r === "style" ? n[r] = {
|
|
1387
1382
|
...i,
|
|
1388
1383
|
...a
|
|
1389
|
-
} : r === "className"
|
|
1384
|
+
} : r === "className" ? n[r] = [i, a].filter(Boolean).join(" ") : r === "aria-describedby" && (n[r] = Fe(a, i));
|
|
1390
1385
|
}
|
|
1391
1386
|
return {
|
|
1392
1387
|
...e,
|
|
@@ -1412,31 +1407,19 @@ function Ne(e) {
|
|
|
1412
1407
|
return typeof e == "object" && !!e && "then" in e;
|
|
1413
1408
|
}
|
|
1414
1409
|
X(Ne, "isPromiseLike");
|
|
1415
|
-
|
|
1416
|
-
|
|
1417
|
-
|
|
1418
|
-
|
|
1419
|
-
return typeof e == "object" && !!e && !("addEventListener" in e) && "current" in e;
|
|
1410
|
+
function Pe(e) {
|
|
1411
|
+
let t = e;
|
|
1412
|
+
for (; Me(t) && typeof Z == "function";) t = Z(t._payload);
|
|
1413
|
+
return t;
|
|
1420
1414
|
}
|
|
1421
|
-
|
|
1422
|
-
|
|
1423
|
-
|
|
1424
|
-
|
|
1425
|
-
|
|
1426
|
-
let c, l;
|
|
1427
|
-
i[3] !== r || i[4] !== e || i[5] !== t ? (c = () => {
|
|
1428
|
-
let n = Ie(e) ? e.current : e;
|
|
1429
|
-
if (!n) return;
|
|
1430
|
-
let i = (e) => a.current(e);
|
|
1431
|
-
return n.addEventListener(t, i, r), () => {
|
|
1432
|
-
n.removeEventListener(t, i, r);
|
|
1433
|
-
};
|
|
1434
|
-
}, l = [
|
|
1435
|
-
t,
|
|
1436
|
-
e,
|
|
1437
|
-
r
|
|
1438
|
-
], i[3] = r, i[4] = e, i[5] = t, i[6] = c, i[7] = l) : (c = i[6], l = i[7]), (0, p.useEffect)(c, l);
|
|
1415
|
+
X(Pe, "useUnwrappedLazy");
|
|
1416
|
+
function Fe(...e) {
|
|
1417
|
+
let t = /* @__PURE__ */ new Set();
|
|
1418
|
+
for (let n of e) if (typeof n == "string") for (let e of String(n).trim().split(/\s+/)) e && t.add(e);
|
|
1419
|
+
return t.size > 0 ? Array.from(t).join(" ") : void 0;
|
|
1439
1420
|
}
|
|
1421
|
+
X(Fe, "concatAriaDescribedby");
|
|
1422
|
+
var Ie = /* @__PURE__ */ X((e) => `${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`, "createSlotError"), Le = /* @__PURE__ */ X((e) => `${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`, "createSlottableError"), Z = p.use;
|
|
1440
1423
|
//#endregion
|
|
1441
1424
|
//#region src/core/hotkeys/shortcuts.ts
|
|
1442
1425
|
function Re() {
|
|
@@ -1663,7 +1646,8 @@ var Q = Symbol("NOT_SET"), We = {
|
|
|
1663
1646
|
key: "Mod-h"
|
|
1664
1647
|
},
|
|
1665
1648
|
"cell.aiCompletion": {
|
|
1666
|
-
name: "
|
|
1649
|
+
name: "Refactor cell",
|
|
1650
|
+
additionalKeywords: ["AI", "AI completion"],
|
|
1667
1651
|
group: "Editing",
|
|
1668
1652
|
key: "Mod-Shift-e"
|
|
1669
1653
|
},
|
|
@@ -1984,19 +1968,43 @@ function Je(e) {
|
|
|
1984
1968
|
return n.length > 1 && !qe.test(n) && (t[t.length - 1] = n.charAt(0).toUpperCase() + n.slice(1)), t.join("-");
|
|
1985
1969
|
}
|
|
1986
1970
|
//#endregion
|
|
1971
|
+
//#region src/hooks/useEventListener.ts
|
|
1972
|
+
function Ye(e) {
|
|
1973
|
+
return typeof e == "object" && !!e && !("addEventListener" in e) && "current" in e;
|
|
1974
|
+
}
|
|
1975
|
+
function Xe(e, t, n, r) {
|
|
1976
|
+
let i = (0, m.c)(8), a = (0, p.useRef)(n), o, s;
|
|
1977
|
+
i[0] === n ? (o = i[1], s = i[2]) : (o = () => {
|
|
1978
|
+
a.current = n;
|
|
1979
|
+
}, s = [n], i[0] = n, i[1] = o, i[2] = s), (0, p.useEffect)(o, s);
|
|
1980
|
+
let c, l;
|
|
1981
|
+
i[3] !== r || i[4] !== e || i[5] !== t ? (c = () => {
|
|
1982
|
+
let n = Ye(e) ? e.current : e;
|
|
1983
|
+
if (!n) return;
|
|
1984
|
+
let i = (e) => a.current(e);
|
|
1985
|
+
return n.addEventListener(t, i, r), () => {
|
|
1986
|
+
n.removeEventListener(t, i, r);
|
|
1987
|
+
};
|
|
1988
|
+
}, l = [
|
|
1989
|
+
t,
|
|
1990
|
+
e,
|
|
1991
|
+
r
|
|
1992
|
+
], i[3] = r, i[4] = e, i[5] = t, i[6] = c, i[7] = l) : (c = i[6], l = i[7]), (0, p.useEffect)(c, l);
|
|
1993
|
+
}
|
|
1994
|
+
//#endregion
|
|
1987
1995
|
//#region ../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.mjs
|
|
1988
|
-
var
|
|
1989
|
-
if (t?.variants == null) return
|
|
1996
|
+
var Ze = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Qe = r, $e = (e, t) => (n) => {
|
|
1997
|
+
if (t?.variants == null) return Qe(e, n?.class, n?.className);
|
|
1990
1998
|
let { variants: r, defaultVariants: i } = t, a = Object.keys(r).map((e) => {
|
|
1991
1999
|
let t = n?.[e], a = i?.[e];
|
|
1992
2000
|
if (t === null) return null;
|
|
1993
|
-
let o =
|
|
2001
|
+
let o = Ze(t) || Ze(a);
|
|
1994
2002
|
return r[e][o];
|
|
1995
2003
|
}), o = n && Object.entries(n).reduce((e, t) => {
|
|
1996
2004
|
let [n, r] = t;
|
|
1997
2005
|
return r === void 0 || (e[n] = r), e;
|
|
1998
2006
|
}, {});
|
|
1999
|
-
return
|
|
2007
|
+
return Qe(e, a, t?.compoundVariants?.reduce((e, t) => {
|
|
2000
2008
|
let { class: n, className: r, ...a } = t;
|
|
2001
2009
|
return Object.entries(a).every((e) => {
|
|
2002
2010
|
let [t, n] = e;
|
|
@@ -2013,7 +2021,7 @@ var Ye = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Xe = r, Ze =
|
|
|
2013
2021
|
r
|
|
2014
2022
|
] : e;
|
|
2015
2023
|
}, []), n?.class, n?.className);
|
|
2016
|
-
},
|
|
2024
|
+
}, et = i(), $ = "active:shadow-none", tt = $e(W("disabled:opacity-50 disabled:pointer-events-none", "inline-flex items-center justify-center rounded-md text-sm font-medium focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-2 ring-offset-background", "forced-color-adjust-none forced-colors:border-[ButtonText] forced-colors:bg-[ButtonFace] forced-colors:text-[ButtonText] forced-colors:hover:bg-[Highlight] forced-colors:hover:text-[HighlightText] forced-colors:disabled:border-[GrayText] forced-colors:disabled:text-[GrayText]"), {
|
|
2017
2025
|
variants: {
|
|
2018
2026
|
variant: {
|
|
2019
2027
|
default: W("bg-primary text-primary-foreground hover:bg-primary/90 shadow-xs border border-primary", $),
|
|
@@ -2042,7 +2050,7 @@ var Ye = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Xe = r, Ze =
|
|
|
2042
2050
|
variant: "default",
|
|
2043
2051
|
size: "sm"
|
|
2044
2052
|
}
|
|
2045
|
-
}),
|
|
2053
|
+
}), nt = p.forwardRef((e, t) => {
|
|
2046
2054
|
let n = (0, m.c)(19), r, i, a, o, s, c;
|
|
2047
2055
|
n[0] === e ? (r = n[1], i = n[2], a = n[3], o = n[4], s = n[5], c = n[6]) : ({className: r, variant: c, size: o, asChild: s, keyboardShortcut: i, ...a} = e, n[0] = e, n[1] = r, n[2] = i, n[3] = a, n[4] = o, n[5] = s, n[6] = c);
|
|
2048
2056
|
let l = s !== void 0 && s, u = p.useRef(null), d;
|
|
@@ -2050,21 +2058,21 @@ var Ye = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, Xe = r, Ze =
|
|
|
2050
2058
|
let f;
|
|
2051
2059
|
n[8] === i ? f = n[9] : (f = (e) => {
|
|
2052
2060
|
!i || e.defaultPrevented || G.shouldIgnoreKeyboardEvent(e) || He(i)(e) && (e.preventDefault(), e.stopPropagation(), u?.current && !u.current.disabled && u.current.click());
|
|
2053
|
-
}, n[8] = i, n[9] = f),
|
|
2061
|
+
}, n[8] = i, n[9] = f), Xe(document, "keydown", f);
|
|
2054
2062
|
let h = l ? we : "button", g;
|
|
2055
|
-
n[10] !== r || n[11] !== a.disabled || n[12] !== o || n[13] !== c ? (g = W(
|
|
2063
|
+
n[10] !== r || n[11] !== a.disabled || n[12] !== o || n[13] !== c ? (g = W(tt({
|
|
2056
2064
|
variant: c,
|
|
2057
2065
|
size: o,
|
|
2058
2066
|
className: r,
|
|
2059
2067
|
disabled: a.disabled
|
|
2060
2068
|
}), r), n[10] = r, n[11] = a.disabled, n[12] = o, n[13] = c, n[14] = g) : g = n[14];
|
|
2061
2069
|
let _;
|
|
2062
|
-
return n[15] !== h || n[16] !== a || n[17] !== g ? (_ = /* @__PURE__ */ (0,
|
|
2070
|
+
return n[15] !== h || n[16] !== a || n[17] !== g ? (_ = /* @__PURE__ */ (0, et.jsx)(h, {
|
|
2063
2071
|
className: g,
|
|
2064
2072
|
ref: u,
|
|
2065
2073
|
...a
|
|
2066
2074
|
}), n[15] = h, n[16] = a, n[17] = g, n[18] = _) : _ = n[18], _;
|
|
2067
2075
|
});
|
|
2068
|
-
|
|
2076
|
+
nt.displayName = "Button";
|
|
2069
2077
|
//#endregion
|
|
2070
|
-
export { o as _,
|
|
2078
|
+
export { o as _, Q as a, Ue as c, Ee as d, J as f, f as g, W as h, Xe as i, we as l, G as m, tt as n, Ke as o, Y as p, $e as r, Re as s, nt as t, Ce as u, s as v };
|