@marimo-team/frontend 0.21.2-dev5 → 0.21.2-dev52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{CellStatus-CDSBsjjF.js → CellStatus-DX8MnBMk.js} +1 -1
- package/dist/assets/{ConnectedDataExplorerComponent-Buaffg3u.js → ConnectedDataExplorerComponent-7yXYooWG.js} +1 -1
- package/dist/assets/{DeferredRequestRegistry-O6RDJKs0.js → DeferredRequestRegistry-B8jPCuU1.js} +1 -1
- package/dist/assets/{ImperativeModal-qEtcJ95s.js → ImperativeModal-C3CD5-Aq.js} +1 -1
- package/dist/assets/JsonOutput-DqjAyzM8.js +46 -0
- package/dist/assets/{LazyAnyLanguageCodeMirror-m8w66E4s.js → LazyAnyLanguageCodeMirror-CcCHIX38.js} +2 -2
- package/dist/assets/{MarimoErrorOutput-az74f3Mp.js → MarimoErrorOutput-Dat_S09q.js} +5 -5
- package/dist/assets/RenderHTML-C7XM39M2.js +1 -0
- package/dist/assets/{add-cell-with-ai-DUn4LN4W.js → add-cell-with-ai-y2xroEGf.js} +9 -9
- package/dist/assets/{add-connection-dialog-CBz0AUVX.js → add-connection-dialog-QDBOmil3.js} +23 -23
- package/dist/assets/{agent-panel-u83dsDsM.js → agent-panel-DziFrEjJ.js} +6 -6
- package/dist/assets/ai-model-dropdown-CiJpv5wN.js +5 -0
- package/dist/assets/{alert-dialog-9WfvUF7e.js → alert-dialog-ebk_-wsU.js} +1 -1
- package/dist/assets/{any-language-editor-DwQMnAM3.js → any-language-editor-DZYnKlJB.js} +1 -1
- package/dist/assets/{app-config-button-rDu-lCIB.js → app-config-button-CpAv9Tiu.js} +1 -1
- package/dist/assets/{architectureDiagram-VXUJARFQ-DfMHHFZ3.js → architectureDiagram-VXUJARFQ-DKmk99ac.js} +1 -1
- package/dist/assets/{azure-BTXHztTw.js → azure-Dw5gKmUz.js} +1 -1
- package/dist/assets/{blockDiagram-VD42YOAC-CuEDwbg7.js → blockDiagram-VD42YOAC-TpAhP5OQ.js} +1 -1
- package/dist/assets/{c4Diagram-YG6GDRKO-CD9uz7WG.js → c4Diagram-YG6GDRKO-Dg8hCyKf.js} +1 -1
- package/dist/assets/{cache-panel-qIxnndwr.js → cache-panel-D0OsHk_D.js} +1 -1
- package/dist/assets/cell-editor-RbAVpSFb.js +22 -0
- package/dist/assets/{cell-link-Q_UEP94Z.js → cell-link-CNgO3c-T.js} +1 -1
- package/dist/assets/{cells-fq1RMGX_.js → cells-39RE4UzS.js} +77 -76
- package/dist/assets/channel-D1wPYhc9.js +1 -0
- package/dist/assets/{chat-display-D_Fuuy6r.js → chat-display-BPUVrlA6.js} +1 -1
- package/dist/assets/{chat-panel-BO-JoQSp.js → chat-panel-esz5TfF-.js} +2 -2
- package/dist/assets/{chunk-5FQGJX7Z-CM1a_K7I.js → chunk-5FQGJX7Z-sGWxL7Ey.js} +3 -3
- package/dist/assets/{chunk-ABZYJK2D-D_Wumzom.js → chunk-ABZYJK2D-DXJ7hnjx.js} +1 -1
- package/dist/assets/{chunk-ATLVNIR6-BZ0lTgIn.js → chunk-ATLVNIR6-CTEqcLEc.js} +1 -1
- package/dist/assets/{chunk-B4BG7PRW-Dw1S6osV.js → chunk-B4BG7PRW-CkAIqtPf.js} +1 -1
- package/dist/assets/{chunk-DI55MBZ5-Q63FTCPP.js → chunk-DI55MBZ5-C4F9vu8o.js} +1 -1
- package/dist/assets/{chunk-EXTU4WIE-CfkJ_R7W.js → chunk-EXTU4WIE-BT0Py-4P.js} +1 -1
- package/dist/assets/{chunk-JA3XYJ7Z-B41fGeoj.js → chunk-JA3XYJ7Z-CGd7jja_.js} +1 -1
- package/dist/assets/{chunk-JZLCHNYA-D43EJxQw.js → chunk-JZLCHNYA-CqY-RYTj.js} +1 -1
- package/dist/assets/{chunk-N4CR4FBY-DCtw0-ni.js → chunk-N4CR4FBY-aUDjVzN7.js} +2 -2
- package/dist/assets/{chunk-QN33PNHL-CLA2rsaS.js → chunk-QN33PNHL-DHnCb5-U.js} +1 -1
- package/dist/assets/{chunk-QXUST7PY-De1DpbnL.js → chunk-QXUST7PY-CRO5kYCE.js} +1 -1
- package/dist/assets/{chunk-S3R3BYOJ-qrwvlUdq.js → chunk-S3R3BYOJ-CSHQgcuP.js} +1 -1
- package/dist/assets/{chunk-TZMSLE5B-C4KcThb0.js → chunk-TZMSLE5B-CE7o9asH.js} +1 -1
- package/dist/assets/classDiagram-2ON5EDUG-BDIQSKYv.js +1 -0
- package/dist/assets/classDiagram-v2-WZHVMYZB-Cdh4cVOB.js +1 -0
- package/dist/assets/{code-block-37QAKDTI-D4FF4cnN.js → code-block-37QAKDTI-DMpe1jNG.js} +1 -1
- package/dist/assets/{column-preview-WsubyItX.js → column-preview-BUKHsglA.js} +1 -1
- package/dist/assets/{command-rfxSsiHU.js → command-DmzEbs6L.js} +1 -1
- package/dist/assets/{command-palette-Bez4BqJF.js → command-palette-BX5gNpUr.js} +1 -1
- package/dist/assets/{common-BYwO983A.js → common-B4yshY-H.js} +1 -1
- package/dist/assets/{components-Ozq0825a.js → components-DCqJqyys.js} +1 -1
- package/dist/assets/{components-Bpgzv_5_.js → components-oKCjx6cN.js} +1 -1
- package/dist/assets/{config-3Aq84phF.js → config-DqxNMQDN.js} +1 -1
- package/dist/assets/{context-CIAP2NOh.js → context-CRmPPhx9.js} +1 -1
- package/dist/assets/{context-aware-panel-CfsfBlhO.js → context-aware-panel-DC0Te9Hj.js} +2 -2
- package/dist/assets/copy-KjcPgPw9.js +1 -0
- package/dist/assets/{copy-icon-BgmMM9Zg.js → copy-icon-P0kzz1Pr.js} +1 -1
- package/dist/assets/{dagre-6UL2VRFP-BhMnPhuU.js → dagre-6UL2VRFP-XqoNLMQ3.js} +1 -1
- package/dist/assets/{data-grid-overlay-editor-kbv73SQ7.js → data-grid-overlay-editor-Cus1-BFN.js} +1 -1
- package/dist/assets/{datasource-F9sJtuof.js → datasource-DKHG39NV.js} +2 -2
- package/dist/assets/{dates-CHaNfieI.js → dates-CTqMeMGY.js} +1 -1
- package/dist/assets/{dependency-graph-panel-AOBcX2tP.js → dependency-graph-panel-7GKT3dyD.js} +4 -4
- package/dist/assets/{diagram-PSM6KHXK-Cr2t4zul.js → diagram-PSM6KHXK-BuzKNNcN.js} +1 -1
- package/dist/assets/{diagram-QEK2KX5R-DLU_hSO4.js → diagram-QEK2KX5R-A5LBQS11.js} +1 -1
- package/dist/assets/{diagram-S2PKOQOG-C7EkNAO3.js → diagram-S2PKOQOG-dkJE8SA0.js} +1 -1
- package/dist/assets/{dialog-CVN1lcMF.js → dialog-1_jIyAb_.js} +1 -1
- package/dist/assets/{dist-DJBpXGro.js → dist-6P6vjf93.js} +1 -1
- package/dist/assets/dist-BWGxTsTP.js +1 -0
- package/dist/assets/{dist-CblX3KGI.js → dist-B_buFm3B.js} +1 -1
- package/dist/assets/{dist-CXLJUPFl.js → dist-BatEf-0f.js} +1 -1
- package/dist/assets/dist-C3AnARPE.js +1 -0
- package/dist/assets/{dist-BNC_tnlW.js → dist-C6ohaMKU.js} +1 -1
- package/dist/assets/{dist-BoDHthoc.js → dist-CO9Pg2Rc.js} +1 -1
- package/dist/assets/{dist-By6zhkxZ.js → dist-CSV6H5w_.js} +1 -1
- package/dist/assets/{dist-6FIAeDIu.js → dist-CYs1oP7g.js} +1 -1
- package/dist/assets/{dist-DbK_4_qo.js → dist-DD9ZJMK5.js} +1 -1
- package/dist/assets/{dist-DlTbNRBn.js → dist-DReDpc2z.js} +1 -1
- package/dist/assets/dist-DSlq5ZeQ.js +1 -0
- package/dist/assets/{dist-DrceDAhM.js → dist-DXyIIB32.js} +1 -1
- package/dist/assets/{dist-CcGcwrUD.js → dist-DkaderFA.js} +1 -1
- package/dist/assets/{dist-BiZQlfhr.js → dist-Dq3BlK4R.js} +1 -1
- package/dist/assets/{dist-ClzRAVN-.js → dist-Dxov2ltb.js} +1 -1
- package/dist/assets/{dist-BXXPfIam.js → dist-EtGG9C1A.js} +1 -1
- package/dist/assets/{dist-C3MmXcLA.js → dist-NjId5Gdz.js} +1 -1
- package/dist/assets/dist-ZM59OWYL.js +1 -0
- package/dist/assets/dist-_TwZ4tIe.js +1 -0
- package/dist/assets/dist-f9b2H4q_.js +1 -0
- package/dist/assets/{dist-mxGLXOFm.js → dist-feWVQ4dq.js} +1 -1
- package/dist/assets/{documentation-panel-D28MpqbI.js → documentation-panel-D5d_BbHV.js} +1 -1
- package/dist/assets/{download-B9_ToVd4.js → download-B1vXaivj.js} +4 -4
- package/dist/assets/{dropdown-menu-DdPu5Kfu.js → dropdown-menu-BehqiLFL.js} +1 -1
- package/dist/assets/{edit-page-otS-QvnC.js → edit-page-B5cAZdO7.js} +7 -7
- package/dist/assets/{en-US-BO8E69bZ.js → en-US-f8tajDx1.js} +1 -1
- package/dist/assets/{erDiagram-Q2GNP2WA-DqlEo_Us.js → erDiagram-Q2GNP2WA-CgH6udOW.js} +1 -1
- package/dist/assets/{error-banner-BRG6IPhC.js → error-banner-J5F3weEj.js} +1 -1
- package/dist/assets/{error-panel-RRoj_iOR.js → error-panel-DnhKJ5Ou.js} +1 -1
- package/dist/assets/{es-CzkousWe.js → es-DYI7U61K.js} +1 -1
- package/dist/assets/{esm-CBkHtTOV.js → esm-BC1J92im.js} +1 -1
- package/dist/assets/{esm-DhTsVMLM.js → esm-DKLLCu3N.js} +1 -1
- package/dist/assets/{field-B1jGbQlH.js → field-B08lvxnl.js} +1 -1
- package/dist/assets/file-explorer-panel-BUk69TND.js +26 -0
- package/dist/assets/{file-icons-CWLHDa1J.js → file-icons-3DTS8ZM7.js} +1 -1
- package/dist/assets/{floating-outline-BvQKiC0F.js → floating-outline-DmugATcB.js} +1 -1
- package/dist/assets/{flowDiagram-NV44I4VS-CQlIJ12H.js → flowDiagram-NV44I4VS-D85BL4rA.js} +1 -1
- package/dist/assets/{focus-DYwTiH9-.js → focus-DlJH7sfh.js} +1 -1
- package/dist/assets/{form-CrQYrsUC.js → form-760_EqmF.js} +2 -2
- package/dist/assets/{formats-rhOJovGE.js → formats-wYuh1bqp.js} +1 -1
- package/dist/assets/{formatting-B4ZCH3ol.js → formatting-CraOPe94.js} +1 -1
- package/dist/assets/{gallery-page-eRea0yic.js → gallery-page--paiPvYX.js} +1 -1
- package/dist/assets/{ganttDiagram-JELNMOA3-B3EGIuZL.js → ganttDiagram-JELNMOA3-DzCOXWlF.js} +1 -1
- package/dist/assets/{gitGraphDiagram-V2S2FVAM-h5SlguJK.js → gitGraphDiagram-V2S2FVAM-BUHURX6t.js} +1 -1
- package/dist/assets/{glide-data-editor-xt5xNZeV.js → glide-data-editor-DYdoQTO5.js} +4 -4
- package/dist/assets/{globals-BsV5fVR-.js → globals-7M5DRsIb.js} +1 -1
- package/dist/assets/home-page-CxQ1e98h.js +4 -0
- package/dist/assets/{hooks-CHx5dUUq.js → hooks-C3jEff2O.js} +1 -1
- package/dist/assets/html-to-image-DTFXm6_Z.js +2 -0
- package/dist/assets/{index-GjXovVsl.css → index-BmoocKR0.css} +1 -1
- package/dist/assets/index-DNchElHl.js +38 -0
- package/dist/assets/{infoDiagram-HS3SLOUP-pzpClObZ.js → infoDiagram-HS3SLOUP-GG5r0Y5G.js} +1 -1
- package/dist/assets/{input-CUwqpKjd.js → input-CN1ZeRYm.js} +1 -1
- package/dist/assets/{isValid-BGe7pJXT.js → isValid-DY4Mgbr7.js} +1 -1
- package/dist/assets/{journeyDiagram-XKPGCS4Q-BrdRi92v.js → journeyDiagram-XKPGCS4Q-B1dvnV4D.js} +1 -1
- package/dist/assets/{kanban-definition-3W4ZIXB7-B6WqgFqh.js → kanban-definition-3W4ZIXB7-CefbrXQv.js} +1 -1
- package/dist/assets/{kiosk-mode-DNjEnIWb.js → kiosk-mode-CyTnrzwK.js} +1 -1
- package/dist/assets/{layout-CwFtCyW8.js → layout-3b3tzmbb.js} +3 -3
- package/dist/assets/{linear-BP9rwmWK.js → linear-BDnrHGYO.js} +1 -1
- package/dist/assets/{links-CIQwYQ48.js → links-CptYD1FP.js} +1 -1
- package/dist/assets/{logs-panel-BU1tNEVc.js → logs-panel-C4k_2IHW.js} +1 -1
- package/dist/assets/{markdown-renderer-MR9df58W.js → markdown-renderer-DSy5IuAx.js} +1 -1
- package/dist/assets/{menu-items-UxKrm8hS.js → menu-items-BpHXKv51.js} +1 -1
- package/dist/assets/mermaid-4DMBBIKO-g7AL4SLJ.js +1 -0
- package/dist/assets/{mermaid-Djr3jUAB.js → mermaid-C43VbdrM.js} +3 -3
- package/dist/assets/{mermaid-parser.core-DR82IMb2.js → mermaid-parser.core-CdM8D_p_.js} +1 -1
- package/dist/assets/{mindmap-definition-VGOIOE7T-DAmJpbPM.js → mindmap-definition-VGOIOE7T-CcV7D-wF.js} +1 -1
- package/dist/assets/{mode-AcL8c6qH.js → mode-D-iRbN9x.js} +1 -1
- package/dist/assets/{multi-map-Pp1P2DOX.js → multi-map-C8RbwBrw.js} +1 -1
- package/dist/assets/{name-cell-input-DVFEv_aO.js → name-cell-input-Dyb0ZO4X.js} +1 -1
- package/dist/assets/{number-overlay-editor-D__AflXQ.js → number-overlay-editor-BBJO1mf8.js} +1 -1
- package/dist/assets/{outline-panel-CP0oIuiU.js → outline-panel-D7CJwO8u.js} +1 -1
- package/dist/assets/{packages-panel-CzRELimG.js → packages-panel-Bp1SYjgc.js} +1 -1
- package/dist/assets/{panels-wTweRyIv.js → panels-D0aw6jdc.js} +1 -1
- package/dist/assets/{pieDiagram-ADFJNKIX-DbGIFRoq.js → pieDiagram-ADFJNKIX-C1fBf15W.js} +1 -1
- package/dist/assets/{popover-BPGG2gPG.js → popover-Bvoif-Mg.js} +1 -1
- package/dist/assets/{precisionRound-BOmLQIKI.js → precisionRound-CCOoIlcP.js} +1 -1
- package/dist/assets/{process-output-CTVsT--B.js → process-output-BxPWHcIi.js} +1 -1
- package/dist/assets/{quadrantDiagram-AYHSOK5B-CLAtyple.js → quadrantDiagram-AYHSOK5B-RVooN-fX.js} +1 -1
- package/dist/assets/{react-vega-BZav_-2n.js → react-vega-BKRQSy0g.js} +1 -1
- package/dist/assets/react-vega-DXESF7qN.js +1 -0
- package/dist/assets/{readonly-python-code-DH-1xZGq.js → readonly-python-code-D95oshJa.js} +1 -1
- package/dist/assets/{renderShortcut-CnD1Dah5.js → renderShortcut-BYvKm38e.js} +1 -1
- package/dist/assets/{request-registry-B-7cIM_I.js → request-registry-XB2EzJHm.js} +1 -1
- package/dist/assets/{requirementDiagram-UZGBJVZJ-DDDTB1LD.js → requirementDiagram-UZGBJVZJ-DtqOYJpH.js} +1 -1
- package/dist/assets/{run-page-FCvGnICa.js → run-page-B7CASued.js} +1 -1
- package/dist/assets/{sankeyDiagram-TZEHDZUN-DAWPOfBw.js → sankeyDiagram-TZEHDZUN-DmcooLA8.js} +1 -1
- package/dist/assets/{scratchpad-panel-k9lrm-rC.js → scratchpad-panel-BIVRgYOU.js} +1 -1
- package/dist/assets/{secrets-panel-B1Z-6dmz.js → secrets-panel-C24hZEiO.js} +1 -1
- package/dist/assets/{select-CxT2Geqr.js → select-Cnd3vm9n.js} +1 -1
- package/dist/assets/{sequenceDiagram-WL72ISMW-D_qAidD2.js → sequenceDiagram-WL72ISMW-S2qeLb7J.js} +1 -1
- package/dist/assets/{session-panel-WhN0qilM.js → session-panel-CNabBHQm.js} +1 -1
- package/dist/assets/{share-BdH_5I58.js → share-NjpZ54PJ.js} +1 -1
- package/dist/assets/{snippets-panel-BCDHUuku.js → snippets-panel-D1JAeJj1.js} +1 -1
- package/dist/assets/{spec-DbmSqx09.js → spec-DnVBmJUh.js} +1 -1
- package/dist/assets/{state-Ce7CVShi.js → state-BagvlaEz.js} +1 -1
- package/dist/assets/{state-3V5UxC3B.js → state-Cz_wrzCz.js} +1 -1
- package/dist/assets/{state-CBmCYWFH.js → state-DMQXxemS.js} +1 -1
- package/dist/assets/{stateDiagram-FKZM4ZOC-C7qgDrGA.js → stateDiagram-FKZM4ZOC-uuQ60pIl.js} +1 -1
- package/dist/assets/stateDiagram-v2-4FDKWEC3-D-GWhQTG.js +1 -0
- package/dist/assets/stex-CruVQx-P.js +1 -0
- package/dist/assets/{switch-CVKxYu_0.js → switch-Bwpd2AFq.js} +1 -1
- package/dist/assets/{terminal-Cr7wbEjz.js → terminal-Gl8Fi44y.js} +1 -1
- package/dist/assets/{time-D2GKc0U6.js → time-Bw8f15NM.js} +1 -1
- package/dist/assets/{timeline-definition-IT6M3QCI-hd6uJKGs.js → timeline-definition-IT6M3QCI-TKWeDnSQ.js} +1 -1
- package/dist/assets/{toggle-RCwU-rnE.js → toggle-C_gNjXg8.js} +1 -1
- package/dist/assets/{tooltip-D9723Brr.js → tooltip-CR_izE8Q.js} +1 -1
- package/dist/assets/tracing-DwAC7DWN.js +1 -0
- package/dist/assets/tracing-panel-D1iNgclL.js +2 -0
- package/dist/assets/{tree-Ch2-GuhG.js → tree-WVrWjdwv.js} +3 -3
- package/dist/assets/{useAddCell-YC7rpcmD.js → useAddCell-D6Q7JziZ.js} +1 -1
- package/dist/assets/{useBoolean-m1e6E3Ao.js → useBoolean-CrltYVhE.js} +1 -1
- package/dist/assets/{useCellActionButton-GUb2fXU8.js → useCellActionButton-B2G9OaX9.js} +1 -1
- package/dist/assets/{useDateFormatter-CpE7XQLs.js → useDateFormatter-DOoVZUts.js} +1 -1
- package/dist/assets/{useDeleteCell-DRUDRiy0.js → useDeleteCell-d8veThW7.js} +1 -1
- package/dist/assets/{useDependencyPanelTab-nFVMlEx0.js → useDependencyPanelTab-B3iIj3MO.js} +1 -1
- package/dist/assets/{useInstallPackage-C9V-on2J.js → useInstallPackage-CQEr5429.js} +1 -1
- package/dist/assets/{useNotebookActions-ChLHy-0O.js → useNotebookActions-SAEOWcBo.js} +1 -1
- package/dist/assets/{useNumberFormatter-DbDKSvEd.js → useNumberFormatter-BXZcbTzH.js} +1 -1
- package/dist/assets/{usePress-BHGkpw8X.js → usePress-alQ5Crny.js} +1 -1
- package/dist/assets/{useRunCells-5m6jCnyo.js → useRunCells-Dhl8ZTGh.js} +1 -1
- package/dist/assets/{useSplitCell-DGD9smMq.js → useSplitCell-BSnFazbH.js} +1 -1
- package/dist/assets/{utils-CdjCA1J8.js → utils-C24l2A1T.js} +1 -1
- package/dist/assets/{vega-component-CRbeDmeM.js → vega-component-9Pf4pVZL.js} +1 -1
- package/dist/assets/{vega-loader.browser-CZV6_g2i.js → vega-loader.browser-BJ9oKrvH.js} +1 -1
- package/dist/assets/{write-secret-modal-BCvuRAFb.js → write-secret-modal-BFCsWMoW.js} +1 -1
- package/dist/assets/{xychartDiagram-PRI3JC2R-CXlUBSbQ.js → xychartDiagram-PRI3JC2R-CIp-yeSa.js} +1 -1
- package/dist/index.html +125 -125
- package/package.json +1 -1
- package/src/__mocks__/notebook.ts +9 -9
- package/src/__tests__/branded.ts +20 -0
- package/src/components/app-config/user-config-form.tsx +5 -4
- package/src/components/data-table/__tests__/utils.test.ts +138 -1
- package/src/components/data-table/charts/__tests__/storage.test.ts +7 -7
- package/src/components/data-table/context-menu.tsx +9 -5
- package/src/components/data-table/data-table.tsx +3 -0
- package/src/components/data-table/range-focus/__tests__/atoms.test.ts +8 -2
- package/src/components/data-table/range-focus/__tests__/test-utils.ts +2 -0
- package/src/components/data-table/range-focus/__tests__/utils.test.ts +82 -8
- package/src/components/data-table/range-focus/atoms.ts +2 -2
- package/src/components/data-table/range-focus/utils.ts +50 -12
- package/src/components/data-table/types.ts +7 -0
- package/src/components/data-table/utils.ts +87 -0
- package/src/components/editor/__tests__/data-attributes.test.tsx +8 -8
- package/src/components/editor/ai/__tests__/completion-utils.test.ts +15 -15
- package/src/components/editor/navigation/__tests__/clipboard.test.ts +2 -2
- package/src/components/editor/navigation/__tests__/selection.test.ts +7 -6
- package/src/components/editor/navigation/__tests__/state.test.ts +8 -7
- package/src/components/editor/output/MarimoErrorOutput.tsx +7 -7
- package/src/components/editor/output/__tests__/traceback.test.tsx +4 -4
- package/src/components/editor/output/console/__tests__/ConsoleOutput.test.tsx +4 -4
- package/src/components/editor/renderers/vertical-layout/useFocusFirstEditor.ts +8 -1
- package/src/components/storage/storage-file-viewer.tsx +35 -1
- package/src/components/storage/storage-inspector.tsx +9 -4
- package/src/components/storage/storage-snippets.ts +3 -3
- package/src/components/tracing/tracing.tsx +3 -1
- package/src/components/ui/range-slider.tsx +108 -1
- package/src/core/ai/__tests__/staged-cells.test.ts +9 -8
- package/src/core/ai/context/providers/__tests__/cell-output.test.ts +31 -31
- package/src/core/ai/context/providers/__tests__/datasource.test.ts +3 -3
- package/src/core/ai/context/providers/__tests__/tables.test.ts +3 -2
- package/src/core/ai/context/providers/__tests__/variable.test.ts +84 -63
- package/src/core/ai/tools/__tests__/edit-notebook-tool.test.ts +10 -9
- package/src/core/ai/tools/__tests__/run-cells-tool.test.ts +6 -6
- package/src/core/ai/tools/edit-notebook-tool.ts +3 -3
- package/src/core/cells/__tests__/add-missing-import.test.ts +3 -3
- package/src/core/cells/__tests__/cells.test.ts +192 -135
- package/src/core/cells/__tests__/focus.test.ts +5 -4
- package/src/core/cells/__tests__/logs.test.ts +13 -12
- package/src/core/cells/__tests__/pending-delete-service.test.tsx +3 -3
- package/src/core/cells/__tests__/runs.test.ts +22 -21
- package/src/core/cells/__tests__/scrollCellIntoView.test.ts +8 -7
- package/src/core/cells/__tests__/session.test.ts +23 -22
- package/src/core/cells/cells.ts +1 -1
- package/src/core/cells/ids.ts +5 -5
- package/src/core/cells/logs.ts +2 -2
- package/src/core/cells/runs.ts +6 -8
- package/src/core/codemirror/__tests__/format.test.ts +34 -36
- package/src/core/codemirror/__tests__/setup.test.ts +2 -2
- package/src/core/codemirror/cells/__tests__/extensions.test.ts +114 -0
- package/src/core/codemirror/cells/__tests__/traceback-decorations.test.ts +33 -32
- package/src/core/codemirror/cells/extensions.ts +66 -23
- package/src/core/codemirror/completion/__tests__/keymap.test.ts +15 -35
- package/src/core/codemirror/completion/keymap.ts +14 -4
- package/src/core/codemirror/copilot/__tests__/getCodes.test.ts +12 -13
- package/src/core/codemirror/language/__tests__/utils.test.ts +3 -3
- package/src/core/codemirror/language/embedded/__tests__/embedded-python.test.ts +7 -8
- package/src/core/codemirror/language/languages/python.ts +4 -0
- package/src/core/codemirror/lsp/__tests__/notebook-lsp.test.ts +4 -3
- package/src/core/codemirror/lsp/notebook-lsp.ts +28 -2
- package/src/core/codemirror/reactive-references/__tests__/analyzer.test.ts +7 -6
- package/src/core/codemirror/reactive-references/analyzer.ts +2 -2
- package/src/core/codemirror/rtc/loro/__tests__/sync.test.ts +52 -0
- package/src/core/codemirror/rtc/loro/sync.ts +1 -0
- package/src/core/datasets/__tests__/data-source.test.ts +5 -6
- package/src/core/datasets/state.ts +1 -1
- package/src/core/errors/__tests__/errors.test.ts +2 -1
- package/src/core/export/__tests__/hooks.test.ts +37 -36
- package/src/core/islands/main.ts +2 -7
- package/src/core/kernel/__tests__/handlers.test.ts +5 -4
- package/src/core/kernel/handlers.ts +7 -4
- package/src/core/network/DeferredRequestRegistry.ts +2 -2
- package/src/core/network/__tests__/CachingRequestRegistry.test.ts +9 -10
- package/src/core/network/__tests__/DeferredRequestRegistry.test.ts +4 -6
- package/src/core/static/__tests__/virtual-file-tracker.test.ts +8 -8
- package/src/core/static/virtual-file-tracker.ts +1 -1
- package/src/core/storage/__tests__/state.test.ts +31 -21
- package/src/core/storage/state.ts +1 -1
- package/src/core/variables/__tests__/state.test.ts +6 -6
- package/src/core/variables/types.ts +2 -2
- package/src/core/wasm/__tests__/state.test.ts +8 -8
- package/src/core/websocket/useMarimoKernelConnection.tsx +12 -15
- package/src/css/md-tooltip.css +4 -39
- package/src/css/md.css +7 -0
- package/src/plugins/core/RenderHTML.tsx +17 -0
- package/src/plugins/core/__test__/RenderHTML.test.ts +45 -0
- package/src/plugins/core/sanitize-html.ts +25 -18
- package/src/plugins/impl/DataTablePlugin.tsx +23 -2
- package/src/plugins/impl/SliderPlugin.tsx +1 -3
- package/src/plugins/impl/__tests__/SliderPlugin.test.tsx +120 -0
- package/src/plugins/impl/anywidget/model.ts +1 -2
- package/src/stories/cell.stories.tsx +8 -8
- package/src/stories/layout/vertical/one-column.stories.tsx +9 -8
- package/src/stories/log-viewer.stories.tsx +8 -8
- package/src/stories/variables.stories.tsx +2 -2
- package/src/utils/__tests__/download.test.tsx +21 -20
- package/src/utils/copy.ts +18 -5
- package/src/utils/download.ts +4 -3
- package/src/utils/html-to-image.ts +6 -0
- package/src/utils/json/base64.ts +3 -3
- package/src/utils/traceback.ts +5 -3
- package/dist/assets/JsonOutput-DKXKGKvX.js +0 -46
- package/dist/assets/RenderHTML-DJ8khuob.js +0 -1
- package/dist/assets/ai-model-dropdown-DPTa_EpU.js +0 -5
- package/dist/assets/cell-editor-DX7IcqNr.js +0 -23
- package/dist/assets/channel-CkT8Qdo2.js +0 -1
- package/dist/assets/classDiagram-2ON5EDUG-BhMT_rTz.js +0 -1
- package/dist/assets/classDiagram-v2-WZHVMYZB-D-F4WEyb.js +0 -1
- package/dist/assets/copy-YwM0Pd7v.js +0 -1
- package/dist/assets/dist-BTqMkf4j.js +0 -1
- package/dist/assets/dist-DHw9sXeN.js +0 -1
- package/dist/assets/dist-Du0qZeXz.js +0 -1
- package/dist/assets/dist-a0FfbvMD.js +0 -1
- package/dist/assets/dist-cfkfP0ni.js +0 -1
- package/dist/assets/dist-pzQ9JG-p.js +0 -1
- package/dist/assets/file-explorer-panel-CB8vF5ob.js +0 -26
- package/dist/assets/home-page-itW0tRmv.js +0 -4
- package/dist/assets/html-to-image-BnSc-Wa0.js +0 -2
- package/dist/assets/index-0n92c_W7.js +0 -38
- package/dist/assets/mermaid-4DMBBIKO-PoHnhmy8.js +0 -1
- package/dist/assets/react-vega-Da-Ps9UW.js +0 -1
- package/dist/assets/stateDiagram-v2-4FDKWEC3-CEqeIlM0.js +0 -1
- package/dist/assets/stex-BBWVYm-R.js +0 -1
- package/dist/assets/tracing-DUVd0jtl.js +0 -1
- package/dist/assets/tracing-panel-CuTxPn_x.js +0 -2
- /package/dist/assets/{Combination-Cs9nbinQ.js → Combination-CSPK4t6z.js} +0 -0
- /package/dist/assets/{Deferred-BMfCOLaw.js → Deferred-CfyqLOPG.js} +0 -0
- /package/dist/assets/{SSRProvider-DC7ElCZZ.js → SSRProvider-CwqN9FWV.js} +0 -0
- /package/dist/assets/{badge-hTpPIsMT.js → badge-DImLVznf.js} +0 -0
- /package/dist/assets/{blob-CObhN-9g.js → blob-DgooIGjS.js} +0 -0
- /package/dist/assets/{bot-message-square-CK6eoGWy.js → bot-message-square-Dw41U6lL.js} +0 -0
- /package/dist/assets/{chart-no-axes-column-DV8gdCvH.js → chart-no-axes-column-a9XtWmzk.js} +0 -0
- /package/dist/assets/{check-BE0hEwVo.js → check-DZA_bRpw.js} +0 -0
- /package/dist/assets/{chevron-right-D0GQBpTb.js → chevron-right-CvVxySQk.js} +0 -0
- /package/dist/assets/{circle-check-gLIOLu8x.js → circle-check-CbaVeozR.js} +0 -0
- /package/dist/assets/{circle-play-DYGULlKZ.js → circle-play-DYn5nR6N.js} +0 -0
- /package/dist/assets/{circle-plus-CGG-gArM.js → circle-plus-nCze0-py.js} +0 -0
- /package/dist/assets/{clipboard-paste-DoYSN8Sv.js → clipboard-paste-EHXeKq9D.js} +0 -0
- /package/dist/assets/{code-xml-DwHPF_nL.js → code-xml-BlrJCgNZ.js} +0 -0
- /package/dist/assets/{copy-CkudG0Ej.js → copy-D6N1-xc1.js} +0 -0
- /package/dist/assets/{database-zap-DTWCDKdn.js → database-zap-BIGMFOfP.js} +0 -0
- /package/dist/assets/{defaultLocale-DK1MWd7f.js → defaultLocale-CGfP-Ye3.js} +0 -0
- /package/dist/assets/{defaultLocale-OkOxlkkM.js → defaultLocale-CuYNS33t.js} +0 -0
- /package/dist/assets/{dist-8UD0A5sU.js → dist-BF9S272t.js} +0 -0
- /package/dist/assets/{dist-apDpadc4.js → dist-Bk1itfBD.js} +0 -0
- /package/dist/assets/{dist-CQqv2gQL.js → dist-Dm11d0_A.js} +0 -0
- /package/dist/assets/{download-DBW9RXtT.js → download-nLboiTtW.js} +0 -0
- /package/dist/assets/{ellipsis-0_zJdF6H.js → ellipsis-d7eaKIFn.js} +0 -0
- /package/dist/assets/{ellipsis-vertical-CAB7tdza.js → ellipsis-vertical-DBQ5kWTo.js} +0 -0
- /package/dist/assets/{emotion-is-prop-valid.esm-D1keIaYa.js → emotion-is-prop-valid.esm-D7FeWASw.js} +0 -0
- /package/dist/assets/{errors-Bfogio62.js → errors-0IrrdfSG.js} +0 -0
- /package/dist/assets/{extends-DRbCSry7.js → extends-aq1t6BkR.js} +0 -0
- /package/dist/assets/{eye-off-vwi9L975.js → eye-off-CF3GmvXV.js} +0 -0
- /package/dist/assets/{file-DzHkbIdO.js → file-C-yMeaec.js} +0 -0
- /package/dist/assets/{file-headphone-B5q2Ow55.js → file-headphone-CPAP8asn.js} +0 -0
- /package/dist/assets/{file-plus-corner-lLQw9OnR.js → file-plus-corner-ks__N1mr.js} +0 -0
- /package/dist/assets/{github-BVtI-3F1.js → github-CRD4USKm.js} +0 -0
- /package/dist/assets/{image-DXfkah9d.js → image-CfyJzBP9.js} +0 -0
- /package/dist/assets/{link-Cf10mh3t.js → link-_dbp0XNB.js} +0 -0
- /package/dist/assets/{maps-OKerBHH8.js → maps-DQsjfyTy.js} +0 -0
- /package/dist/assets/{numbers-CYnquDho.js → numbers-Cno6K0UF.js} +0 -0
- /package/dist/assets/{objectWithoutPropertiesLoose-DP4vAkvg.js → objectWithoutPropertiesLoose-Dxmp_Bd_.js} +0 -0
- /package/dist/assets/{ordinal-BjO5SoTk.js → ordinal-CMAUv8ku.js} +0 -0
- /package/dist/assets/{paths-D2lG83Oh.js → paths-BVwhPRFT.js} +0 -0
- /package/dist/assets/{play-DKSqmedg.js → play-Bu_0ogGD.js} +0 -0
- /package/dist/assets/{plus-dVmh0yTy.js → plus-DJ99CUbx.js} +0 -0
- /package/dist/assets/{preload-helper-BW0IMuFq.js → preload-helper-y72bE5iF.js} +0 -0
- /package/dist/assets/{prop-types-RrUi-pOT.js → prop-types-DRf51_gT.js} +0 -0
- /package/dist/assets/{purify.es-BBn8CPhf.js → purify.es-Cf8RQecB.js} +0 -0
- /package/dist/assets/{range-DNqFcYmr.js → range-ClqUI25v.js} +0 -0
- /package/dist/assets/{refresh-ccw-DLpfIr8v.js → refresh-ccw-DQ6SJ8UC.js} +0 -0
- /package/dist/assets/{refresh-cw-CHAHPgkx.js → refresh-cw-Dg9tCj4k.js} +0 -0
- /package/dist/assets/{rotate-ccw-hLlF_82X.js → rotate-ccw-BCkZViUZ.js} +0 -0
- /package/dist/assets/{save-8fSvKYJT.js → save-CUdcv5qm.js} +0 -0
- /package/dist/assets/{session-BrEm7qNv.js → session-CByuQ-M-.js} +0 -0
- /package/dist/assets/{settings-CzQUw9rV.js → settings-B7nhfCat.js} +0 -0
- /package/dist/assets/{spinner-C5JoisA7.js → spinner-pCogyRyo.js} +0 -0
- /package/dist/assets/{square-CxAsQQ77.js → square-KVNDGpgy.js} +0 -0
- /package/dist/assets/{square-function-B006EYFX.js → square-function-BMNCw7Qb.js} +0 -0
- /package/dist/assets/{stex-0ac7Aukl.js → stex-C6JeW1YI.js} +0 -0
- /package/dist/assets/{table-BCnp9gKC.js → table-Od8PbuV-.js} +0 -0
- /package/dist/assets/{toDate-BqKH-Jd9.js → toDate-Cfp9W_O9.js} +0 -0
- /package/dist/assets/{trash-2-CAoNMkjq.js → trash-2-Bc_J7TQO.js} +0 -0
- /package/dist/assets/{trash-BZMAQneW.js → trash-Cxd189Vw.js} +0 -0
- /package/dist/assets/{triangle-alert-qZo1ox6x.js → triangle-alert-CzLrbLGN.js} +0 -0
- /package/dist/assets/{types-C1RN112u.js → types-CLOMZuqU.js} +0 -0
- /package/dist/assets/{use-toast-Hc8CXlvz.js → use-toast-BtZldTi5.js} +0 -0
- /package/dist/assets/{useDebounce-B0dx2Gp0.js → useDebounce-DwTO_rGp.js} +0 -0
- /package/dist/assets/{useTheme-BYXBU1of.js → useTheme-KDW4sktg.js} +0 -0
- /package/dist/assets/{uuid-ClFZlR7U.js → uuid-BukULOeS.js} +0 -0
- /package/dist/assets/{workflow-BmeqNuSH.js → workflow-BqHyyStM.js} +0 -0
- /package/dist/assets/{x-BI1M8X_v.js → x-CdLP7-v3.js} +0 -0
- /package/dist/assets/{youtube-DE-Ej6FR.js → youtube-CfU-SnDw.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{et as r,tt as e}from"./chunk-ABZYJK2D-DXJ7hnjx.js";var o=(t,a)=>e.lang.round(r.parse(t)[a]);export{o as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as
|
|
1
|
+
import{s as P}from"./chunk-LvLJmgfZ.js";import{t as U}from"./react-Bj1aDYRI.js";import{Jn as $,er as G}from"./cells-39RE4UzS.js";import{C as J,P as K,R as A,T as Q}from"./zod-H_cgTO0M.js";import{t as E}from"./compiler-runtime-B3qBwwSJ.js";import{n as X}from"./assertNever-DWSyoPEi.js";import{t as L}from"./isEmpty-CfmnKtgL.js";import{dt as Y}from"./ai-model-dropdown-CiJpv5wN.js";import{m as W}from"./useEventListener-Dy81QR4n.js";import{t as Z}from"./jsx-runtime-icT_Ltz2.js";import{t as C}from"./cn-BoaCR37F.js";import{u as ee}from"./add-cell-with-ai-y2xroEGf.js";import{t as te}from"./bot-message-square-Dw41U6lL.js";import{t as D}from"./markdown-renderer-DSy5IuAx.js";import{n as se}from"./spinner-pCogyRyo.js";import{c as ae}from"./datasource-DKHG39NV.js";import{t as re}from"./RenderHTML-C7XM39M2.js";import{a as I,i as V,n as B,r as H}from"./multi-map-C8RbwBrw.js";var le=E(),ne=P(U(),1),t=P(Z(),1);const oe=n=>{let e=(0,le.c)(13),{reasoning:a,index:l,isStreaming:s}=n,r=l===void 0?0:l,m=s===void 0?!1:s,o=m?"reasoning":void 0,x;e[0]===Symbol.for("react.memo_cache_sentinel")?(x=(0,t.jsx)(te,{className:"h-3 w-3"}),e[0]=x):x=e[0];let p=m?"Thinking":"View reasoning",c;e[1]!==a.length||e[2]!==p?(c=(0,t.jsx)(I,{className:"text-xs text-muted-foreground hover:bg-muted/50 px-2 py-1 h-auto rounded-sm [&[data-state=open]>svg]:rotate-180",children:(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[x,p," (",a.length," ","chars)"]})}),e[1]=a.length,e[2]=p,e[3]=c):c=e[3];let i;e[4]===a?i=e[5]:(i=(0,t.jsx)(H,{className:"pb-2 px-2",children:(0,t.jsx)("div",{className:"bg-muted/30 border border-muted/50 rounded-md p-3 italic text-muted-foreground/90 relative",children:(0,t.jsx)("div",{className:"pr-6",children:(0,t.jsx)(D,{content:a})})})}),e[4]=a,e[5]=i);let d;e[6]!==c||e[7]!==i?(d=(0,t.jsxs)(V,{value:"reasoning",className:"border-0",children:[c,i]}),e[6]=c,e[7]=i,e[8]=d):d=e[8];let u;return e[9]!==r||e[10]!==o||e[11]!==d?(u=(0,t.jsx)(B,{type:"single",collapsible:!0,className:"w-full mb-2",value:o,children:d},r),e[9]=r,e[10]=o,e[11]=d,e[12]=u):u=e[12],u};var T=E(),ie=K({status:A().default("success"),auth_required:Q().default(!1),action_url:J(),next_steps:J(),meta:J(),message:A().nullish()}).passthrough(),de=n=>{let e=(0,T.c)(12),{data:a}=n,l;if(e[0]!==a){let{status:s,auth_required:r,action_url:m,meta:o,next_steps:x,message:p,...c}=a,i;e[2]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)("h3",{className:"text-xs font-semibold text-muted-foreground",children:"Tool Result"}),e[2]=i):i=e[2];let d;e[3]===s?d=e[4]:(d=(0,t.jsx)("span",{className:"text-xs px-2 py-0.5 bg-[var(--grass-2)] text-[var(--grass-11)] rounded-full font-medium capitalize",children:s}),e[3]=s,e[4]=d);let u;e[5]===r?u=e[6]:(u=r&&(0,t.jsx)("span",{className:"text-xs px-2 py-0.5 bg-[var(--amber-2)] text-[var(--amber-11)] rounded-full",children:"Auth Required"}),e[5]=r,e[6]=u);let h;e[7]!==d||e[8]!==u?(h=(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[i,(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[d,u]})]}),e[7]=d,e[8]=u,e[9]=h):h=e[9];let f;e[10]===p?f=e[11]:(f=p&&(0,t.jsxs)("div",{className:"flex items-start gap-2",children:[(0,t.jsx)($,{className:"h-3 w-3 text-[var(--blue-11)] mt-0.5 flex-shrink-0"}),(0,t.jsx)("div",{className:"text-xs text-foreground",children:p})]}),e[10]=p,e[11]=f),l=(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[h,f,c&&(0,t.jsx)("div",{className:"space-y-3",children:Object.entries(c).map(xe)})]}),e[0]=a,e[1]=l}else l=e[1];return l},ce=n=>{let e=(0,T.c)(8),{result:a}=n,l;e[0]===a?l=e[1]:(l=ie.safeParse(a),e[0]=a,e[1]=l);let s=l;if(s.success){let o;return e[2]===s.data?o=e[3]:(o=(0,t.jsx)(de,{data:s.data}),e[2]=s.data,e[3]=o),o}let r;e[4]===a?r=e[5]:(r=typeof a=="string"?a:JSON.stringify(a,null,2),e[4]=a,e[5]=r);let m;return e[6]===r?m=e[7]:(m=(0,t.jsx)("div",{className:"text-xs font-medium text-muted-foreground mb-1 max-h-64 overflow-y-auto scrollbar-thin",children:r}),e[6]=r,e[7]=m),m},me=n=>{let e=(0,T.c)(9),{input:a}=n;if(!(a&&a!==null))return null;let l;e[0]===a?l=e[1]:(l=L(a),e[0]=a,e[1]=l);let s=l,r=typeof a=="object"&&Object.keys(a).length>0,m;e[2]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)("h3",{className:"text-xs font-semibold text-muted-foreground",children:"Tool Request"}),e[2]=m):m=e[2];let o;e[3]!==a||e[4]!==s||e[5]!==r?(o=s?"{}":r?JSON.stringify(a,null,2):String(a),e[3]=a,e[4]=s,e[5]=r,e[6]=o):o=e[6];let x;return e[7]===o?x=e[8]:(x=(0,t.jsxs)("div",{className:"space-y-2",children:[m,(0,t.jsx)("pre",{className:"bg-[var(--slate-2)] p-2 text-muted-foreground border border-[var(--slate-4)] rounded text-xs overflow-auto scrollbar-thin max-h-64",children:o})]}),e[7]=o,e[8]=x),x};const M=n=>{let e=(0,T.c)(38),{toolName:a,result:l,error:s,index:r,state:m,className:o,input:x}=n,p=r===void 0?0:r,c=m==="output-available"&&(l||s),i=s?"error":c?"success":"loading",d;e[0]===i?d=e[1]:(d=()=>{switch(i){case"loading":return(0,t.jsx)(se,{className:"h-3 w-3 animate-spin"});case"error":return(0,t.jsx)(G,{className:"h-3 w-3 text-[var(--red-11)]"});case"success":return(0,t.jsx)(Y,{className:"h-3 w-3 text-[var(--grass-11)]"});default:return(0,t.jsx)(ae,{className:"h-3 w-3"})}},e[0]=i,e[1]=d);let u=d,h;e[2]!==s||e[3]!==c||e[4]!==i?(h=()=>i==="loading"?"Running":s?"Failed":c?"Done":"Tool call",e[2]=s,e[3]=c,e[4]=i,e[5]=h):h=e[5];let f=h,F=`tool-${p}`,g;e[6]===o?g=e[7]:(g=C("w-full",o),e[6]=o,e[7]=g);let k=i==="error"&&"text-[var(--red-11)]/80",q=i==="success"&&"text-[var(--grass-11)]/80",j;e[8]!==k||e[9]!==q?(j=C("h-6 text-xs border-border shadow-none! ring-0! bg-muted/60 hover:bg-muted py-0 px-2 gap-1 rounded-sm [&[data-state=open]>svg]:rotate-180 hover:no-underline",k,q),e[8]=k,e[9]=q,e[10]=j):j=e[10];let v;e[11]===u?v=e[12]:(v=u(),e[11]=u,e[12]=v);let z=f(),b;e[13]===a?b=e[14]:(b=ue(a),e[13]=a,e[14]=b);let N;e[15]===b?N=e[16]:(N=(0,t.jsx)("code",{className:"font-mono text-xs",children:b}),e[15]=b,e[16]=N);let y;e[17]!==z||e[18]!==N||e[19]!==v?(y=(0,t.jsxs)("span",{className:"flex items-center gap-1",children:[v,z,":",N]}),e[17]=z,e[18]=N,e[19]=v,e[20]=y):y=e[20];let w;e[21]!==y||e[22]!==j?(w=(0,t.jsx)(I,{className:j,children:y}),e[21]=y,e[22]=j,e[23]=w):w=e[23];let _;e[24]!==s||e[25]!==c||e[26]!==x||e[27]!==l?(_=c&&(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)(me,{input:x}),l!=null&&(0,t.jsx)(ce,{result:l}),s&&(0,t.jsxs)("div",{className:"bg-[var(--red-2)] border border-[var(--red-6)] rounded-lg p-3",children:[(0,t.jsxs)("div",{className:"text-xs font-semibold text-[var(--red-11)] mb-2 flex items-center gap-2",children:[(0,t.jsx)("div",{className:"w-1.5 h-1.5 bg-[var(--red-9)] rounded-full"}),"Error"]}),(0,t.jsx)("div",{className:"text-sm text-[var(--red-11)] leading-relaxed",children:s})]})]}),e[24]=s,e[25]=c,e[26]=x,e[27]=l,e[28]=_):_=e[28];let S;e[29]===_?S=e[30]:(S=(0,t.jsx)(H,{className:"py-2 px-2",children:_}),e[29]=_,e[30]=S);let R;e[31]!==w||e[32]!==S?(R=(0,t.jsxs)(V,{value:"tool-call",className:"border-0",children:[w,S]}),e[31]=w,e[32]=S,e[33]=R):R=e[33];let O;return e[34]!==R||e[35]!==F||e[36]!==g?(O=(0,t.jsx)(B,{type:"single",collapsible:!0,className:g,children:R},F),e[34]=R,e[35]=F,e[36]=g,e[37]=O):O=e[37],O};function ue(n){return n.replace("tool-","")}function xe(n){let[e,a]=n;return L(a)?null:(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsxs)("div",{className:"text-xs font-medium text-muted-foreground capitalize flex items-center gap-2",children:[(0,t.jsx)("div",{className:"w-1.5 h-1.5 bg-[var(--blue-9)] rounded-full"}),e]}),(0,t.jsx)("pre",{className:"bg-[var(--slate-2)] p-2 text-muted-foreground border border-[var(--slate-4)] rounded text-xs overflow-auto scrollbar-thin max-h-64",children:JSON.stringify(a,null,2)})]},e)}const pe=({message:n,isStreamingReasoning:e,isLast:a})=>{return(0,t.jsx)(t.Fragment,{children:n.parts.map((s,r)=>l(s,r))});function l(s,r){if(he(s))return(0,t.jsx)(M,{index:r,toolName:s.type,result:s.output,className:"my-2",state:s.state,input:s.input},r);if(fe(s))return W.debug("Found data part",s),null;switch(s.type){case"text":return s.text.includes("<marimo-")?(0,t.jsx)(ne.Fragment,{children:re({html:s.text})},r):(0,t.jsx)(D,{content:s.text},r);case"reasoning":return(0,t.jsx)(oe,{reasoning:s.text,index:r,isStreaming:e&&a&&r===(n.parts.length||0)-1},r);case"file":return(0,t.jsx)(ee,{attachment:s},r);case"dynamic-tool":return(0,t.jsx)(M,{toolName:s.toolName,result:s.output,state:s.state,input:s.input},r);case"source-document":case"source-url":case"step-start":return W.debug("Found non-renderable part",s),null;default:return X(s),null}}};function he(n){return n.type.startsWith("tool-")}function fe(n){return n.type.startsWith("data-")}export{pe as t};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{s as Ke}from"./chunk-LvLJmgfZ.js";import{d as kt,f as Lt,l as It,n as ue,u as Ue}from"./useEvent-O0nX5vok.js";import{t as Pt}from"./react-Bj1aDYRI.js";import{E as Dt,Zn as zt}from"./cells-fq1RMGX_.js";import"./react-dom-CSu739Rf.js";import{t as Ze}from"./compiler-runtime-B3qBwwSJ.js";import{T as Mt,o as Ft,r as Qe,t as Ht,w as Wt}from"./ai-model-dropdown-DPTa_EpU.js";import{m as _e,r as le}from"./useEventListener-Dy81QR4n.js";import{n as et,r as Ot}from"./utils-tNbLd14P.js";import{o as Ut}from"./config-3Aq84phF.js";import{t as Yt}from"./jsx-runtime-icT_Ltz2.js";import{t as oe}from"./button-Ej3vmCIF.js";import{t as ae}from"./cn-BoaCR37F.js";import"./dist-B_cxg-E4.js";import"./cjs-BU2qXMKx.js";import"./main-DrBRErTM.js";import"./useNonce-BtW-rR_1.js";import{r as Xt}from"./requests-Bgjtqo_1.js";import{t as tt}from"./createLucideIcon-Cm-Z7dYr.js";import{C as Vt,N as Bt,O as qt,T as $t,_ as Gt,b as Jt,c as Kt,d as Zt,f as Qt,g as er,h as rt,j as tr,l as rr,m as lr,n as lt,p as or,s as ot,u as ar,v as nr,y as sr}from"./add-cell-with-ai-DUn4LN4W.js";import{t as at}from"./bot-message-square-CK6eoGWy.js";import{f as ir}from"./markdown-renderer-MR9df58W.js";import{n as cr}from"./spinner-C5JoisA7.js";import{t as dr}from"./plus-dVmh0yTy.js";import{dt as ur,r as pr}from"./input-CUwqpKjd.js";import{t as mr}from"./settings-CzQUw9rV.js";import{r as nt,t as hr}from"./state-3V5UxC3B.js";import"./dist-BNC_tnlW.js";import"./dist-CXLJUPFl.js";import"./dist-CQqv2gQL.js";import"./dist-8UD0A5sU.js";import"./dist-apDpadc4.js";import"./session-BrEm7qNv.js";import{C as fr,E as xr,_ as pe,g as X,w as V,x as Ae}from"./Combination-Cs9nbinQ.js";import{a as vr,i as gr,n as wr,p as br,r as yr,s as jr,t as Sr}from"./select-CxT2Geqr.js";import{i as st,t as Ye}from"./tooltip-D9723Brr.js";import{u as Cr}from"./menu-items-UxKrm8hS.js";import"./purify.es-BBn8CPhf.js";import{i as Nr}from"./dates-CHaNfieI.js";import{t as Rr}from"./context-CIAP2NOh.js";import{i as Tr,r as _r,t as Ar}from"./popover-BPGG2gPG.js";import{t as Er}from"./copy-icon-BgmMM9Zg.js";import{n as kr}from"./error-banner-BRG6IPhC.js";import"./chunk-5FQGJX7Z-CM1a_K7I.js";import"./katex-rvFxOCU-.js";import"./html-to-image-BnSc-Wa0.js";import{t as Lr}from"./chat-display-D_Fuuy6r.js";import"./esm-CBkHtTOV.js";import{t as Xe}from"./empty-state-B_US46Us.js";var Ir=tt("hat-glasses",[["path",{d:"M14 18a2 2 0 0 0-4 0",key:"1v8fkw"}],["path",{d:"m19 11-2.11-6.657a2 2 0 0 0-2.752-1.148l-1.276.61A2 2 0 0 1 12 4H8.5a2 2 0 0 0-1.925 1.456L5 11",key:"1fkr7p"}],["path",{d:"M2 11h20",key:"3eubbj"}],["circle",{cx:"17",cy:"18",r:"3",key:"82mm0e"}],["circle",{cx:"7",cy:"18",r:"3",key:"lvkj7j"}]]),Pr=tt("notebook-text",[["path",{d:"M2 6h4",key:"aawbzj"}],["path",{d:"M2 10h4",key:"l0bgd4"}],["path",{d:"M2 14h4",key:"1gsvsf"}],["path",{d:"M2 18h4",key:"1bu2t1"}],["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",key:"1nb95v"}],["path",{d:"M9.5 8h5",key:"11mslq"}],["path",{d:"M9.5 12H16",key:"ktog6x"}],["path",{d:"M9.5 16H14",key:"p1seyn"}]]),it=Ze(),p=Ke(Pt(),1);const Dr=({chatState:e,chatId:t,messages:r})=>{if(!t)return _e.warn("No active chat"),e;let n=e.chats.get(t);if(!n)return _e.warn("No active chat"),e;let l=new Map(e.chats),a=Date.now();return l.set(n.id,{...n,messages:r,updatedAt:a}),{...e,chats:l}};var o=Ke(Yt(),1);function zr(e,t){return p.useReducer((r,n)=>t[r][n]??r,e)}var Ve="ScrollArea",[ct,po]=xr(Ve),[Mr,M]=ct(Ve),dt=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,type:n="hover",dir:l,scrollHideDelay:a=600,...s}=e,[i,c]=p.useState(null),[u,d]=p.useState(null),[m,h]=p.useState(null),[f,v]=p.useState(null),[S,A]=p.useState(null),[w,N]=p.useState(0),[R,y]=p.useState(0),[j,C]=p.useState(!1),[E,I]=p.useState(!1),g=le(t,k=>c(k)),_=Cr(l);return(0,o.jsx)(Mr,{scope:r,type:n,dir:_,scrollHideDelay:a,scrollArea:i,viewport:u,onViewportChange:d,content:m,onContentChange:h,scrollbarX:f,onScrollbarXChange:v,scrollbarXEnabled:j,onScrollbarXEnabledChange:C,scrollbarY:S,onScrollbarYChange:A,scrollbarYEnabled:E,onScrollbarYEnabledChange:I,onCornerWidthChange:N,onCornerHeightChange:y,children:(0,o.jsx)(pe.div,{dir:_,...s,ref:g,style:{position:"relative","--radix-scroll-area-corner-width":w+"px","--radix-scroll-area-corner-height":R+"px",...e.style}})})});dt.displayName=Ve;var ut="ScrollAreaViewport",pt=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,children:n,nonce:l,...a}=e,s=M(ut,r),i=le(t,p.useRef(null),s.onViewportChange);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:l}),(0,o.jsx)(pe.div,{"data-radix-scroll-area-viewport":"",...a,ref:i,style:{overflowX:s.scrollbarXEnabled?"scroll":"hidden",overflowY:s.scrollbarYEnabled?"scroll":"hidden",...e.style},children:(0,o.jsx)("div",{ref:s.onContentChange,style:{minWidth:"100%",display:"table"},children:n})})]})});pt.displayName=ut;var O="ScrollAreaScrollbar",Be=p.forwardRef((e,t)=>{let{forceMount:r,...n}=e,l=M(O,e.__scopeScrollArea),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:s}=l,i=e.orientation==="horizontal";return p.useEffect(()=>(i?a(!0):s(!0),()=>{i?a(!1):s(!1)}),[i,a,s]),l.type==="hover"?(0,o.jsx)(Fr,{...n,ref:t,forceMount:r}):l.type==="scroll"?(0,o.jsx)(Hr,{...n,ref:t,forceMount:r}):l.type==="auto"?(0,o.jsx)(mt,{...n,ref:t,forceMount:r}):l.type==="always"?(0,o.jsx)(qe,{...n,ref:t}):null});Be.displayName=O;var Fr=p.forwardRef((e,t)=>{let{forceMount:r,...n}=e,l=M(O,e.__scopeScrollArea),[a,s]=p.useState(!1);return p.useEffect(()=>{let i=l.scrollArea,c=0;if(i){let u=()=>{window.clearTimeout(c),s(!0)},d=()=>{c=window.setTimeout(()=>s(!1),l.scrollHideDelay)};return i.addEventListener("pointerenter",u),i.addEventListener("pointerleave",d),()=>{window.clearTimeout(c),i.removeEventListener("pointerenter",u),i.removeEventListener("pointerleave",d)}}},[l.scrollArea,l.scrollHideDelay]),(0,o.jsx)(Ae,{present:r||a,children:(0,o.jsx)(mt,{"data-state":a?"visible":"hidden",...n,ref:t})})}),Hr=p.forwardRef((e,t)=>{let{forceMount:r,...n}=e,l=M(O,e.__scopeScrollArea),a=e.orientation==="horizontal",s=Ie(()=>c("SCROLL_END"),100),[i,c]=zr("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return p.useEffect(()=>{if(i==="idle"){let u=window.setTimeout(()=>c("HIDE"),l.scrollHideDelay);return()=>window.clearTimeout(u)}},[i,l.scrollHideDelay,c]),p.useEffect(()=>{let u=l.viewport,d=a?"scrollLeft":"scrollTop";if(u){let m=u[d],h=()=>{let f=u[d];m!==f&&(c("SCROLL"),s()),m=f};return u.addEventListener("scroll",h),()=>u.removeEventListener("scroll",h)}},[l.viewport,a,c,s]),(0,o.jsx)(Ae,{present:r||i!=="hidden",children:(0,o.jsx)(qe,{"data-state":i==="hidden"?"hidden":"visible",...n,ref:t,onPointerEnter:V(e.onPointerEnter,()=>c("POINTER_ENTER")),onPointerLeave:V(e.onPointerLeave,()=>c("POINTER_LEAVE"))})})}),mt=p.forwardRef((e,t)=>{let r=M(O,e.__scopeScrollArea),{forceMount:n,...l}=e,[a,s]=p.useState(!1),i=e.orientation==="horizontal",c=Ie(()=>{if(r.viewport){let u=r.viewport.offsetWidth<r.viewport.scrollWidth,d=r.viewport.offsetHeight<r.viewport.scrollHeight;s(i?u:d)}},10);return ne(r.viewport,c),ne(r.content,c),(0,o.jsx)(Ae,{present:n||a,children:(0,o.jsx)(qe,{"data-state":a?"visible":"hidden",...l,ref:t})})}),qe=p.forwardRef((e,t)=>{let{orientation:r="vertical",...n}=e,l=M(O,e.__scopeScrollArea),a=p.useRef(null),s=p.useRef(0),[i,c]=p.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=gt(i.viewport,i.content),d={...n,sizes:i,onSizesChange:c,hasThumb:u>0&&u<1,onThumbChange:h=>a.current=h,onThumbPointerUp:()=>s.current=0,onThumbPointerDown:h=>s.current=h};function m(h,f){return Vr(h,s.current,i,f)}return r==="horizontal"?(0,o.jsx)(Wr,{...d,ref:t,onThumbPositionChange:()=>{if(l.viewport&&a.current){let h=l.viewport.scrollLeft,f=wt(h,i,l.dir);a.current.style.transform=`translate3d(${f}px, 0, 0)`}},onWheelScroll:h=>{l.viewport&&(l.viewport.scrollLeft=h)},onDragScroll:h=>{l.viewport&&(l.viewport.scrollLeft=m(h,l.dir))}}):r==="vertical"?(0,o.jsx)(Or,{...d,ref:t,onThumbPositionChange:()=>{if(l.viewport&&a.current){let h=l.viewport.scrollTop,f=wt(h,i);a.current.style.transform=`translate3d(0, ${f}px, 0)`}},onWheelScroll:h=>{l.viewport&&(l.viewport.scrollTop=h)},onDragScroll:h=>{l.viewport&&(l.viewport.scrollTop=m(h))}}):null}),Wr=p.forwardRef((e,t)=>{let{sizes:r,onSizesChange:n,...l}=e,a=M(O,e.__scopeScrollArea),[s,i]=p.useState(),c=p.useRef(null),u=le(t,c,a.onScrollbarXChange);return p.useEffect(()=>{c.current&&i(getComputedStyle(c.current))},[c]),(0,o.jsx)(ft,{"data-orientation":"horizontal",...l,ref:u,sizes:r,style:{bottom:0,left:a.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:a.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":Le(r)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.x),onDragScroll:d=>e.onDragScroll(d.x),onWheelScroll:(d,m)=>{if(a.viewport){let h=a.viewport.scrollLeft+d.deltaX;e.onWheelScroll(h),yt(h,m)&&d.preventDefault()}},onResize:()=>{c.current&&a.viewport&&s&&n({content:a.viewport.scrollWidth,viewport:a.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:ke(s.paddingLeft),paddingEnd:ke(s.paddingRight)}})}})}),Or=p.forwardRef((e,t)=>{let{sizes:r,onSizesChange:n,...l}=e,a=M(O,e.__scopeScrollArea),[s,i]=p.useState(),c=p.useRef(null),u=le(t,c,a.onScrollbarYChange);return p.useEffect(()=>{c.current&&i(getComputedStyle(c.current))},[c]),(0,o.jsx)(ft,{"data-orientation":"vertical",...l,ref:u,sizes:r,style:{top:0,right:a.dir==="ltr"?0:void 0,left:a.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":Le(r)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.y),onDragScroll:d=>e.onDragScroll(d.y),onWheelScroll:(d,m)=>{if(a.viewport){let h=a.viewport.scrollTop+d.deltaY;e.onWheelScroll(h),yt(h,m)&&d.preventDefault()}},onResize:()=>{c.current&&a.viewport&&s&&n({content:a.viewport.scrollHeight,viewport:a.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:ke(s.paddingTop),paddingEnd:ke(s.paddingBottom)}})}})}),[Ur,ht]=ct(O),ft=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,sizes:n,hasThumb:l,onThumbChange:a,onThumbPointerUp:s,onThumbPointerDown:i,onThumbPositionChange:c,onDragScroll:u,onWheelScroll:d,onResize:m,...h}=e,f=M(O,r),[v,S]=p.useState(null),A=le(t,g=>S(g)),w=p.useRef(null),N=p.useRef(""),R=f.viewport,y=n.content-n.viewport,j=X(d),C=X(c),E=Ie(m,10);function I(g){w.current&&u({x:g.clientX-w.current.left,y:g.clientY-w.current.top})}return p.useEffect(()=>{let g=_=>{let k=_.target;v!=null&&v.contains(k)&&j(_,y)};return document.addEventListener("wheel",g,{passive:!1}),()=>document.removeEventListener("wheel",g,{passive:!1})},[R,v,y,j]),p.useEffect(C,[n,C]),ne(v,E),ne(f.content,E),(0,o.jsx)(Ur,{scope:r,scrollbar:v,hasThumb:l,onThumbChange:X(a),onThumbPointerUp:X(s),onThumbPositionChange:C,onThumbPointerDown:X(i),children:(0,o.jsx)(pe.div,{...h,ref:A,style:{position:"absolute",...h.style},onPointerDown:V(e.onPointerDown,g=>{g.button===0&&(g.target.setPointerCapture(g.pointerId),w.current=v.getBoundingClientRect(),N.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",f.viewport&&(f.viewport.style.scrollBehavior="auto"),I(g))}),onPointerMove:V(e.onPointerMove,I),onPointerUp:V(e.onPointerUp,g=>{let _=g.target;_.hasPointerCapture(g.pointerId)&&_.releasePointerCapture(g.pointerId),document.body.style.webkitUserSelect=N.current,f.viewport&&(f.viewport.style.scrollBehavior=""),w.current=null})})})}),Ee="ScrollAreaThumb",xt=p.forwardRef((e,t)=>{let{forceMount:r,...n}=e,l=ht(Ee,e.__scopeScrollArea);return(0,o.jsx)(Ae,{present:r||l.hasThumb,children:(0,o.jsx)(Yr,{ref:t,...n})})}),Yr=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,style:n,...l}=e,a=M(Ee,r),s=ht(Ee,r),{onThumbPositionChange:i}=s,c=le(t,m=>s.onThumbChange(m)),u=p.useRef(void 0),d=Ie(()=>{u.current&&(u.current=(u.current(),void 0))},100);return p.useEffect(()=>{let m=a.viewport;if(m){let h=()=>{d(),u.current||(u.current=Br(m,i),i())};return i(),m.addEventListener("scroll",h),()=>m.removeEventListener("scroll",h)}},[a.viewport,d,i]),(0,o.jsx)(pe.div,{"data-state":s.hasThumb?"visible":"hidden",...l,ref:c,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...n},onPointerDownCapture:V(e.onPointerDownCapture,m=>{let h=m.target.getBoundingClientRect(),f=m.clientX-h.left,v=m.clientY-h.top;s.onThumbPointerDown({x:f,y:v})}),onPointerUp:V(e.onPointerUp,s.onThumbPointerUp)})});xt.displayName=Ee;var $e="ScrollAreaCorner",vt=p.forwardRef((e,t)=>{let r=M($e,e.__scopeScrollArea),n=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&n?(0,o.jsx)(Xr,{...e,ref:t}):null});vt.displayName=$e;var Xr=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,...n}=e,l=M($e,r),[a,s]=p.useState(0),[i,c]=p.useState(0),u=!!(a&&i);return ne(l.scrollbarX,()=>{var m;let d=((m=l.scrollbarX)==null?void 0:m.offsetHeight)||0;l.onCornerHeightChange(d),c(d)}),ne(l.scrollbarY,()=>{var m;let d=((m=l.scrollbarY)==null?void 0:m.offsetWidth)||0;l.onCornerWidthChange(d),s(d)}),u?(0,o.jsx)(pe.div,{...n,ref:t,style:{width:a,height:i,position:"absolute",right:l.dir==="ltr"?0:void 0,left:l.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function ke(e){return e?parseInt(e,10):0}function gt(e,t){let r=e/t;return isNaN(r)?0:r}function Le(e){let t=gt(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,n=(e.scrollbar.size-r)*t;return Math.max(n,18)}function Vr(e,t,r,n="ltr"){let l=Le(r),a=l/2,s=t||a,i=l-s,c=r.scrollbar.paddingStart+s,u=r.scrollbar.size-r.scrollbar.paddingEnd-i,d=r.content-r.viewport,m=n==="ltr"?[0,d]:[d*-1,0];return bt([c,u],m)(e)}function wt(e,t,r="ltr"){let n=Le(t),l=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-l,s=t.content-t.viewport,i=a-n,c=br(e,r==="ltr"?[0,s]:[s*-1,0]);return bt([0,s],[0,i])(c)}function bt(e,t){return r=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let n=(t[1]-t[0])/(e[1]-e[0]);return t[0]+n*(r-e[0])}}function yt(e,t){return e>0&&e<t}var Br=(e,t=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return(function l(){let a={left:e.scrollLeft,top:e.scrollTop},s=r.left!==a.left,i=r.top!==a.top;(s||i)&&t(),r=a,n=window.requestAnimationFrame(l)})(),()=>window.cancelAnimationFrame(n)};function Ie(e,t){let r=X(e),n=p.useRef(0);return p.useEffect(()=>()=>window.clearTimeout(n.current),[]),p.useCallback(()=>{window.clearTimeout(n.current),n.current=window.setTimeout(r,t)},[r,t])}function ne(e,t){let r=X(t);fr(()=>{let n=0;if(e){let l=new ResizeObserver(()=>{cancelAnimationFrame(n),n=window.requestAnimationFrame(r)});return l.observe(e),()=>{window.cancelAnimationFrame(n),l.unobserve(e)}}},[e,r])}var jt=dt,qr=pt,$r=vt,St=p.forwardRef((e,t)=>{let r=(0,it.c)(15),n,l,a;r[0]===e?(n=r[1],l=r[2],a=r[3]):({className:l,children:n,...a}=e,r[0]=e,r[1]=n,r[2]=l,r[3]=a);let s;r[4]===l?s=r[5]:(s=ae("relative overflow-hidden",l),r[4]=l,r[5]=s);let i;r[6]===n?i=r[7]:(i=(0,o.jsx)(qr,{className:"h-full w-full rounded-[inherit]",children:n}),r[6]=n,r[7]=i);let c,u;r[8]===Symbol.for("react.memo_cache_sentinel")?(c=(0,o.jsx)(Ct,{}),u=(0,o.jsx)($r,{}),r[8]=c,r[9]=u):(c=r[8],u=r[9]);let d;return r[10]!==a||r[11]!==t||r[12]!==s||r[13]!==i?(d=(0,o.jsxs)(jt,{ref:t,className:s,...a,children:[i,c,u]}),r[10]=a,r[11]=t,r[12]=s,r[13]=i,r[14]=d):d=r[14],d});St.displayName=jt.displayName;var Ct=p.forwardRef((e,t)=>{let r=(0,it.c)(14),n,l,a;r[0]===e?(n=r[1],l=r[2],a=r[3]):({className:n,orientation:a,...l}=e,r[0]=e,r[1]=n,r[2]=l,r[3]=a);let s=a===void 0?"vertical":a,i=s==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-px",c=s==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-px",u;r[4]!==n||r[5]!==i||r[6]!==c?(u=ae("flex touch-none select-none transition-colors",i,c,n),r[4]=n,r[5]=i,r[6]=c,r[7]=u):u=r[7];let d;r[8]===Symbol.for("react.memo_cache_sentinel")?(d=(0,o.jsx)(xt,{className:"relative flex-1 rounded-full bg-border"}),r[8]=d):d=r[8];let m;return r[9]!==s||r[10]!==l||r[11]!==t||r[12]!==u?(m=(0,o.jsx)(Be,{ref:t,orientation:s,className:u,...l,children:d}),r[9]=s,r[10]=l,r[11]=t,r[12]=u,r[13]=m):m=r[13],m});Ct.displayName=Be.displayName;var Gr=[{label:"Today",days:0},{label:"Yesterday",days:1},{label:"2d ago",days:2},{label:"3d ago",days:3},{label:"This week",days:7},{label:"This month",days:30}];const Jr=e=>{let t=Date.now(),r=Gr.map(a=>({...a,chats:[]})),n={label:"Older",days:1/0,chats:[]},l=a=>{switch(a){case 0:return r[0];case 1:return r[1];case 2:return r[2];case 3:return r[3];default:return a>=4&&a<=7?r[4]:a>=8&&a<=30?r[5]:n}};for(let a of e)l(Math.floor((t-a.updatedAt)/864e5)).chats.push(a);return[...r,n].filter(a=>a.chats.length>0)},Kr=({activeChatId:e,setActiveChat:t})=>{let r=Ue(nt),{locale:n}=Rr(),[l,a]=(0,p.useState)(""),s=(0,p.useMemo)(()=>[...r.chats.values()].sort((u,d)=>d.updatedAt-u.updatedAt),[r.chats]),i=(0,p.useMemo)(()=>l.trim()?s.filter(u=>u.title.toLowerCase().includes(l.toLowerCase())):s,[s,l]),c=(0,p.useMemo)(()=>Jr(i),[i]);return(0,o.jsxs)(Ar,{children:[(0,o.jsx)(Ye,{content:"Previous chats",children:(0,o.jsx)(Tr,{asChild:!0,children:(0,o.jsx)(oe,{variant:"text",size:"icon",children:(0,o.jsx)(zt,{className:"h-4 w-4"})})})}),(0,o.jsxs)(_r,{className:"w-[480px] p-0",align:"start",side:"right",children:[(0,o.jsx)("div",{className:"pt-3 px-3 w-full",children:(0,o.jsx)(pr,{placeholder:"Search chat history...",value:l,onChange:u=>a(u.target.value),className:"text-xs"})}),(0,o.jsx)(St,{className:"h-[450px] p-2",children:(0,o.jsxs)("div",{className:"space-y-3",children:[s.length===0&&(0,o.jsx)(Xe,{title:"No chats yet",description:"Start a new chat to get started",icon:(0,o.jsx)(at,{})}),i.length===0&&l&&s.length>0&&(0,o.jsx)(Xe,{title:"No chats found",description:`No chats match "${l}"`,icon:(0,o.jsx)(ur,{})}),c.map((u,d)=>(0,o.jsxs)("div",{className:"space-y-2",children:[(0,o.jsx)("div",{className:"text-xs px-1 text-muted-foreground/60",children:u.label}),(0,o.jsx)("div",{children:u.chats.map(m=>(0,o.jsxs)("button",{className:ae("w-full p-1 rounded-md cursor-pointer text-left flex items-center justify-between",m.id===e&&"bg-accent",m.id!==e&&"hover:bg-muted/20"),onClick:()=>{t(m.id)},type:"button",children:[(0,o.jsx)("div",{className:"flex-1 min-w-0",children:(0,o.jsx)("div",{className:"text-sm truncate",children:m.title})}),(0,o.jsx)("div",{className:"text-xs text-muted-foreground/60 ml-2 flex-shrink-0",children:Nr(m.updatedAt,n)})]},m.id))}),d!==c.length-1&&(0,o.jsx)("hr",{})]},u.label))]})})]})]})};var se=Ze(),Nt="manual",Zr=e=>{let t=(0,se.c)(18),{onNewChat:r,activeChatId:n,setActiveChat:l}=e,{handleClick:a}=Qe(),s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,o.jsx)(dr,{className:"h-4 w-4"}),t[0]=s):s=t[0];let i;t[1]===r?i=t[2]:(i=(0,o.jsx)(Ye,{content:"New chat",children:(0,o.jsx)(oe,{variant:"text",size:"icon",onClick:r,children:s})}),t[1]=r,t[2]=i);let c;t[3]===Symbol.for("react.memo_cache_sentinel")?(c=(0,o.jsx)(Ft,{}),t[3]=c):c=t[3];let u;t[4]===a?u=t[5]:(u=()=>a("ai"),t[4]=a,t[5]=u);let d;t[6]===Symbol.for("react.memo_cache_sentinel")?(d=(0,o.jsx)(mr,{className:"h-4 w-4"}),t[6]=d):d=t[6];let m;t[7]===u?m=t[8]:(m=(0,o.jsx)(Ye,{content:"AI Settings",children:(0,o.jsx)(oe,{variant:"text",size:"xs",className:"hover:bg-foreground/10 py-2",onClick:u,children:d})}),t[7]=u,t[8]=m);let h;t[9]!==n||t[10]!==l?(h=(0,o.jsx)(Kr,{activeChatId:n,setActiveChat:l}),t[9]=n,t[10]=l,t[11]=h):h=t[11];let f;t[12]!==m||t[13]!==h?(f=(0,o.jsxs)("div",{className:"flex items-center gap-2",children:[c,m,h]}),t[12]=m,t[13]=h,t[14]=f):f=t[14];let v;return t[15]!==i||t[16]!==f?(v=(0,o.jsxs)("div",{className:"flex border-b px-2 py-1 justify-between shrink-0 items-center",children:[i,f]}),t[15]=i,t[16]=f,t[17]=v):v=t[17],v},Rt=(0,p.memo)(e=>{let t=(0,se.c)(15),{message:r,index:n,onEdit:l,isStreamingReasoning:a,isLast:s}=e,i;t[0]!==n||t[1]!==l?(i=S=>{var N,R,y;let A=(R=(N=S.parts)==null?void 0:N.filter(rl))==null?void 0:R.map(ll).join(`
|
|
1
|
+
import{s as Ke}from"./chunk-LvLJmgfZ.js";import{d as kt,f as Lt,l as It,n as ue,u as Ue}from"./useEvent-O0nX5vok.js";import{t as Pt}from"./react-Bj1aDYRI.js";import{$n as Dt,E as zt}from"./cells-39RE4UzS.js";import"./react-dom-CSu739Rf.js";import{t as Qe}from"./compiler-runtime-B3qBwwSJ.js";import{T as Mt,o as Ft,r as Ze,t as Ht,w as Wt}from"./ai-model-dropdown-CiJpv5wN.js";import{m as _e,r as le}from"./useEventListener-Dy81QR4n.js";import{n as et,r as Ot}from"./utils-tNbLd14P.js";import{o as Ut}from"./config-DqxNMQDN.js";import{t as Yt}from"./jsx-runtime-icT_Ltz2.js";import{t as oe}from"./button-Ej3vmCIF.js";import{t as ae}from"./cn-BoaCR37F.js";import"./dist-B_cxg-E4.js";import"./cjs-BU2qXMKx.js";import"./main-DrBRErTM.js";import"./useNonce-BtW-rR_1.js";import{r as Xt}from"./requests-Bgjtqo_1.js";import{t as tt}from"./createLucideIcon-Cm-Z7dYr.js";import{C as Vt,N as Bt,O as qt,T as $t,_ as Gt,b as Jt,c as Kt,d as Qt,f as Zt,g as er,h as rt,j as tr,l as rr,m as lr,n as lt,p as or,s as ot,u as ar,v as nr,y as sr}from"./add-cell-with-ai-y2xroEGf.js";import{t as at}from"./bot-message-square-Dw41U6lL.js";import{f as ir}from"./markdown-renderer-DSy5IuAx.js";import{n as cr}from"./spinner-pCogyRyo.js";import{t as dr}from"./plus-DJ99CUbx.js";import{dt as ur,r as pr}from"./input-CN1ZeRYm.js";import{t as mr}from"./settings-B7nhfCat.js";import{r as nt,t as hr}from"./state-Cz_wrzCz.js";import"./dist-C6ohaMKU.js";import"./dist-BatEf-0f.js";import"./dist-Dm11d0_A.js";import"./dist-BF9S272t.js";import"./dist-Bk1itfBD.js";import"./session-CByuQ-M-.js";import{C as fr,E as xr,_ as pe,g as X,w as V,x as Ae}from"./Combination-CSPK4t6z.js";import{a as vr,i as gr,n as wr,p as br,r as yr,s as jr,t as Sr}from"./select-Cnd3vm9n.js";import{i as st,t as Ye}from"./tooltip-CR_izE8Q.js";import{u as Cr}from"./menu-items-BpHXKv51.js";import"./purify.es-Cf8RQecB.js";import{i as Nr}from"./dates-CTqMeMGY.js";import{t as Rr}from"./context-CRmPPhx9.js";import{i as Tr,r as _r,t as Ar}from"./popover-Bvoif-Mg.js";import{t as Er}from"./copy-icon-P0kzz1Pr.js";import{n as kr}from"./error-banner-J5F3weEj.js";import"./chunk-5FQGJX7Z-sGWxL7Ey.js";import"./katex-rvFxOCU-.js";import"./html-to-image-DTFXm6_Z.js";import{t as Lr}from"./chat-display-BPUVrlA6.js";import"./esm-BC1J92im.js";import{t as Xe}from"./empty-state-B_US46Us.js";var Ir=tt("hat-glasses",[["path",{d:"M14 18a2 2 0 0 0-4 0",key:"1v8fkw"}],["path",{d:"m19 11-2.11-6.657a2 2 0 0 0-2.752-1.148l-1.276.61A2 2 0 0 1 12 4H8.5a2 2 0 0 0-1.925 1.456L5 11",key:"1fkr7p"}],["path",{d:"M2 11h20",key:"3eubbj"}],["circle",{cx:"17",cy:"18",r:"3",key:"82mm0e"}],["circle",{cx:"7",cy:"18",r:"3",key:"lvkj7j"}]]),Pr=tt("notebook-text",[["path",{d:"M2 6h4",key:"aawbzj"}],["path",{d:"M2 10h4",key:"l0bgd4"}],["path",{d:"M2 14h4",key:"1gsvsf"}],["path",{d:"M2 18h4",key:"1bu2t1"}],["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",key:"1nb95v"}],["path",{d:"M9.5 8h5",key:"11mslq"}],["path",{d:"M9.5 12H16",key:"ktog6x"}],["path",{d:"M9.5 16H14",key:"p1seyn"}]]),it=Qe(),p=Ke(Pt(),1);const Dr=({chatState:e,chatId:t,messages:r})=>{if(!t)return _e.warn("No active chat"),e;let n=e.chats.get(t);if(!n)return _e.warn("No active chat"),e;let l=new Map(e.chats),a=Date.now();return l.set(n.id,{...n,messages:r,updatedAt:a}),{...e,chats:l}};var o=Ke(Yt(),1);function zr(e,t){return p.useReducer((r,n)=>t[r][n]??r,e)}var Ve="ScrollArea",[ct,po]=xr(Ve),[Mr,M]=ct(Ve),dt=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,type:n="hover",dir:l,scrollHideDelay:a=600,...s}=e,[i,c]=p.useState(null),[u,d]=p.useState(null),[m,h]=p.useState(null),[f,v]=p.useState(null),[S,A]=p.useState(null),[w,N]=p.useState(0),[R,y]=p.useState(0),[j,C]=p.useState(!1),[E,I]=p.useState(!1),g=le(t,k=>c(k)),_=Cr(l);return(0,o.jsx)(Mr,{scope:r,type:n,dir:_,scrollHideDelay:a,scrollArea:i,viewport:u,onViewportChange:d,content:m,onContentChange:h,scrollbarX:f,onScrollbarXChange:v,scrollbarXEnabled:j,onScrollbarXEnabledChange:C,scrollbarY:S,onScrollbarYChange:A,scrollbarYEnabled:E,onScrollbarYEnabledChange:I,onCornerWidthChange:N,onCornerHeightChange:y,children:(0,o.jsx)(pe.div,{dir:_,...s,ref:g,style:{position:"relative","--radix-scroll-area-corner-width":w+"px","--radix-scroll-area-corner-height":R+"px",...e.style}})})});dt.displayName=Ve;var ut="ScrollAreaViewport",pt=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,children:n,nonce:l,...a}=e,s=M(ut,r),i=le(t,p.useRef(null),s.onViewportChange);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:l}),(0,o.jsx)(pe.div,{"data-radix-scroll-area-viewport":"",...a,ref:i,style:{overflowX:s.scrollbarXEnabled?"scroll":"hidden",overflowY:s.scrollbarYEnabled?"scroll":"hidden",...e.style},children:(0,o.jsx)("div",{ref:s.onContentChange,style:{minWidth:"100%",display:"table"},children:n})})]})});pt.displayName=ut;var O="ScrollAreaScrollbar",Be=p.forwardRef((e,t)=>{let{forceMount:r,...n}=e,l=M(O,e.__scopeScrollArea),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:s}=l,i=e.orientation==="horizontal";return p.useEffect(()=>(i?a(!0):s(!0),()=>{i?a(!1):s(!1)}),[i,a,s]),l.type==="hover"?(0,o.jsx)(Fr,{...n,ref:t,forceMount:r}):l.type==="scroll"?(0,o.jsx)(Hr,{...n,ref:t,forceMount:r}):l.type==="auto"?(0,o.jsx)(mt,{...n,ref:t,forceMount:r}):l.type==="always"?(0,o.jsx)(qe,{...n,ref:t}):null});Be.displayName=O;var Fr=p.forwardRef((e,t)=>{let{forceMount:r,...n}=e,l=M(O,e.__scopeScrollArea),[a,s]=p.useState(!1);return p.useEffect(()=>{let i=l.scrollArea,c=0;if(i){let u=()=>{window.clearTimeout(c),s(!0)},d=()=>{c=window.setTimeout(()=>s(!1),l.scrollHideDelay)};return i.addEventListener("pointerenter",u),i.addEventListener("pointerleave",d),()=>{window.clearTimeout(c),i.removeEventListener("pointerenter",u),i.removeEventListener("pointerleave",d)}}},[l.scrollArea,l.scrollHideDelay]),(0,o.jsx)(Ae,{present:r||a,children:(0,o.jsx)(mt,{"data-state":a?"visible":"hidden",...n,ref:t})})}),Hr=p.forwardRef((e,t)=>{let{forceMount:r,...n}=e,l=M(O,e.__scopeScrollArea),a=e.orientation==="horizontal",s=Ie(()=>c("SCROLL_END"),100),[i,c]=zr("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return p.useEffect(()=>{if(i==="idle"){let u=window.setTimeout(()=>c("HIDE"),l.scrollHideDelay);return()=>window.clearTimeout(u)}},[i,l.scrollHideDelay,c]),p.useEffect(()=>{let u=l.viewport,d=a?"scrollLeft":"scrollTop";if(u){let m=u[d],h=()=>{let f=u[d];m!==f&&(c("SCROLL"),s()),m=f};return u.addEventListener("scroll",h),()=>u.removeEventListener("scroll",h)}},[l.viewport,a,c,s]),(0,o.jsx)(Ae,{present:r||i!=="hidden",children:(0,o.jsx)(qe,{"data-state":i==="hidden"?"hidden":"visible",...n,ref:t,onPointerEnter:V(e.onPointerEnter,()=>c("POINTER_ENTER")),onPointerLeave:V(e.onPointerLeave,()=>c("POINTER_LEAVE"))})})}),mt=p.forwardRef((e,t)=>{let r=M(O,e.__scopeScrollArea),{forceMount:n,...l}=e,[a,s]=p.useState(!1),i=e.orientation==="horizontal",c=Ie(()=>{if(r.viewport){let u=r.viewport.offsetWidth<r.viewport.scrollWidth,d=r.viewport.offsetHeight<r.viewport.scrollHeight;s(i?u:d)}},10);return ne(r.viewport,c),ne(r.content,c),(0,o.jsx)(Ae,{present:n||a,children:(0,o.jsx)(qe,{"data-state":a?"visible":"hidden",...l,ref:t})})}),qe=p.forwardRef((e,t)=>{let{orientation:r="vertical",...n}=e,l=M(O,e.__scopeScrollArea),a=p.useRef(null),s=p.useRef(0),[i,c]=p.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),u=gt(i.viewport,i.content),d={...n,sizes:i,onSizesChange:c,hasThumb:u>0&&u<1,onThumbChange:h=>a.current=h,onThumbPointerUp:()=>s.current=0,onThumbPointerDown:h=>s.current=h};function m(h,f){return Vr(h,s.current,i,f)}return r==="horizontal"?(0,o.jsx)(Wr,{...d,ref:t,onThumbPositionChange:()=>{if(l.viewport&&a.current){let h=l.viewport.scrollLeft,f=wt(h,i,l.dir);a.current.style.transform=`translate3d(${f}px, 0, 0)`}},onWheelScroll:h=>{l.viewport&&(l.viewport.scrollLeft=h)},onDragScroll:h=>{l.viewport&&(l.viewport.scrollLeft=m(h,l.dir))}}):r==="vertical"?(0,o.jsx)(Or,{...d,ref:t,onThumbPositionChange:()=>{if(l.viewport&&a.current){let h=l.viewport.scrollTop,f=wt(h,i);a.current.style.transform=`translate3d(0, ${f}px, 0)`}},onWheelScroll:h=>{l.viewport&&(l.viewport.scrollTop=h)},onDragScroll:h=>{l.viewport&&(l.viewport.scrollTop=m(h))}}):null}),Wr=p.forwardRef((e,t)=>{let{sizes:r,onSizesChange:n,...l}=e,a=M(O,e.__scopeScrollArea),[s,i]=p.useState(),c=p.useRef(null),u=le(t,c,a.onScrollbarXChange);return p.useEffect(()=>{c.current&&i(getComputedStyle(c.current))},[c]),(0,o.jsx)(ft,{"data-orientation":"horizontal",...l,ref:u,sizes:r,style:{bottom:0,left:a.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:a.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":Le(r)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.x),onDragScroll:d=>e.onDragScroll(d.x),onWheelScroll:(d,m)=>{if(a.viewport){let h=a.viewport.scrollLeft+d.deltaX;e.onWheelScroll(h),yt(h,m)&&d.preventDefault()}},onResize:()=>{c.current&&a.viewport&&s&&n({content:a.viewport.scrollWidth,viewport:a.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:ke(s.paddingLeft),paddingEnd:ke(s.paddingRight)}})}})}),Or=p.forwardRef((e,t)=>{let{sizes:r,onSizesChange:n,...l}=e,a=M(O,e.__scopeScrollArea),[s,i]=p.useState(),c=p.useRef(null),u=le(t,c,a.onScrollbarYChange);return p.useEffect(()=>{c.current&&i(getComputedStyle(c.current))},[c]),(0,o.jsx)(ft,{"data-orientation":"vertical",...l,ref:u,sizes:r,style:{top:0,right:a.dir==="ltr"?0:void 0,left:a.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":Le(r)+"px",...e.style},onThumbPointerDown:d=>e.onThumbPointerDown(d.y),onDragScroll:d=>e.onDragScroll(d.y),onWheelScroll:(d,m)=>{if(a.viewport){let h=a.viewport.scrollTop+d.deltaY;e.onWheelScroll(h),yt(h,m)&&d.preventDefault()}},onResize:()=>{c.current&&a.viewport&&s&&n({content:a.viewport.scrollHeight,viewport:a.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:ke(s.paddingTop),paddingEnd:ke(s.paddingBottom)}})}})}),[Ur,ht]=ct(O),ft=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,sizes:n,hasThumb:l,onThumbChange:a,onThumbPointerUp:s,onThumbPointerDown:i,onThumbPositionChange:c,onDragScroll:u,onWheelScroll:d,onResize:m,...h}=e,f=M(O,r),[v,S]=p.useState(null),A=le(t,g=>S(g)),w=p.useRef(null),N=p.useRef(""),R=f.viewport,y=n.content-n.viewport,j=X(d),C=X(c),E=Ie(m,10);function I(g){w.current&&u({x:g.clientX-w.current.left,y:g.clientY-w.current.top})}return p.useEffect(()=>{let g=_=>{let k=_.target;v!=null&&v.contains(k)&&j(_,y)};return document.addEventListener("wheel",g,{passive:!1}),()=>document.removeEventListener("wheel",g,{passive:!1})},[R,v,y,j]),p.useEffect(C,[n,C]),ne(v,E),ne(f.content,E),(0,o.jsx)(Ur,{scope:r,scrollbar:v,hasThumb:l,onThumbChange:X(a),onThumbPointerUp:X(s),onThumbPositionChange:C,onThumbPointerDown:X(i),children:(0,o.jsx)(pe.div,{...h,ref:A,style:{position:"absolute",...h.style},onPointerDown:V(e.onPointerDown,g=>{g.button===0&&(g.target.setPointerCapture(g.pointerId),w.current=v.getBoundingClientRect(),N.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",f.viewport&&(f.viewport.style.scrollBehavior="auto"),I(g))}),onPointerMove:V(e.onPointerMove,I),onPointerUp:V(e.onPointerUp,g=>{let _=g.target;_.hasPointerCapture(g.pointerId)&&_.releasePointerCapture(g.pointerId),document.body.style.webkitUserSelect=N.current,f.viewport&&(f.viewport.style.scrollBehavior=""),w.current=null})})})}),Ee="ScrollAreaThumb",xt=p.forwardRef((e,t)=>{let{forceMount:r,...n}=e,l=ht(Ee,e.__scopeScrollArea);return(0,o.jsx)(Ae,{present:r||l.hasThumb,children:(0,o.jsx)(Yr,{ref:t,...n})})}),Yr=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,style:n,...l}=e,a=M(Ee,r),s=ht(Ee,r),{onThumbPositionChange:i}=s,c=le(t,m=>s.onThumbChange(m)),u=p.useRef(void 0),d=Ie(()=>{u.current&&(u.current=(u.current(),void 0))},100);return p.useEffect(()=>{let m=a.viewport;if(m){let h=()=>{d(),u.current||(u.current=Br(m,i),i())};return i(),m.addEventListener("scroll",h),()=>m.removeEventListener("scroll",h)}},[a.viewport,d,i]),(0,o.jsx)(pe.div,{"data-state":s.hasThumb?"visible":"hidden",...l,ref:c,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...n},onPointerDownCapture:V(e.onPointerDownCapture,m=>{let h=m.target.getBoundingClientRect(),f=m.clientX-h.left,v=m.clientY-h.top;s.onThumbPointerDown({x:f,y:v})}),onPointerUp:V(e.onPointerUp,s.onThumbPointerUp)})});xt.displayName=Ee;var $e="ScrollAreaCorner",vt=p.forwardRef((e,t)=>{let r=M($e,e.__scopeScrollArea),n=!!(r.scrollbarX&&r.scrollbarY);return r.type!=="scroll"&&n?(0,o.jsx)(Xr,{...e,ref:t}):null});vt.displayName=$e;var Xr=p.forwardRef((e,t)=>{let{__scopeScrollArea:r,...n}=e,l=M($e,r),[a,s]=p.useState(0),[i,c]=p.useState(0),u=!!(a&&i);return ne(l.scrollbarX,()=>{var m;let d=((m=l.scrollbarX)==null?void 0:m.offsetHeight)||0;l.onCornerHeightChange(d),c(d)}),ne(l.scrollbarY,()=>{var m;let d=((m=l.scrollbarY)==null?void 0:m.offsetWidth)||0;l.onCornerWidthChange(d),s(d)}),u?(0,o.jsx)(pe.div,{...n,ref:t,style:{width:a,height:i,position:"absolute",right:l.dir==="ltr"?0:void 0,left:l.dir==="rtl"?0:void 0,bottom:0,...e.style}}):null});function ke(e){return e?parseInt(e,10):0}function gt(e,t){let r=e/t;return isNaN(r)?0:r}function Le(e){let t=gt(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,n=(e.scrollbar.size-r)*t;return Math.max(n,18)}function Vr(e,t,r,n="ltr"){let l=Le(r),a=l/2,s=t||a,i=l-s,c=r.scrollbar.paddingStart+s,u=r.scrollbar.size-r.scrollbar.paddingEnd-i,d=r.content-r.viewport,m=n==="ltr"?[0,d]:[d*-1,0];return bt([c,u],m)(e)}function wt(e,t,r="ltr"){let n=Le(t),l=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-l,s=t.content-t.viewport,i=a-n,c=br(e,r==="ltr"?[0,s]:[s*-1,0]);return bt([0,s],[0,i])(c)}function bt(e,t){return r=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let n=(t[1]-t[0])/(e[1]-e[0]);return t[0]+n*(r-e[0])}}function yt(e,t){return e>0&&e<t}var Br=(e,t=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return(function l(){let a={left:e.scrollLeft,top:e.scrollTop},s=r.left!==a.left,i=r.top!==a.top;(s||i)&&t(),r=a,n=window.requestAnimationFrame(l)})(),()=>window.cancelAnimationFrame(n)};function Ie(e,t){let r=X(e),n=p.useRef(0);return p.useEffect(()=>()=>window.clearTimeout(n.current),[]),p.useCallback(()=>{window.clearTimeout(n.current),n.current=window.setTimeout(r,t)},[r,t])}function ne(e,t){let r=X(t);fr(()=>{let n=0;if(e){let l=new ResizeObserver(()=>{cancelAnimationFrame(n),n=window.requestAnimationFrame(r)});return l.observe(e),()=>{window.cancelAnimationFrame(n),l.unobserve(e)}}},[e,r])}var jt=dt,qr=pt,$r=vt,St=p.forwardRef((e,t)=>{let r=(0,it.c)(15),n,l,a;r[0]===e?(n=r[1],l=r[2],a=r[3]):({className:l,children:n,...a}=e,r[0]=e,r[1]=n,r[2]=l,r[3]=a);let s;r[4]===l?s=r[5]:(s=ae("relative overflow-hidden",l),r[4]=l,r[5]=s);let i;r[6]===n?i=r[7]:(i=(0,o.jsx)(qr,{className:"h-full w-full rounded-[inherit]",children:n}),r[6]=n,r[7]=i);let c,u;r[8]===Symbol.for("react.memo_cache_sentinel")?(c=(0,o.jsx)(Ct,{}),u=(0,o.jsx)($r,{}),r[8]=c,r[9]=u):(c=r[8],u=r[9]);let d;return r[10]!==a||r[11]!==t||r[12]!==s||r[13]!==i?(d=(0,o.jsxs)(jt,{ref:t,className:s,...a,children:[i,c,u]}),r[10]=a,r[11]=t,r[12]=s,r[13]=i,r[14]=d):d=r[14],d});St.displayName=jt.displayName;var Ct=p.forwardRef((e,t)=>{let r=(0,it.c)(14),n,l,a;r[0]===e?(n=r[1],l=r[2],a=r[3]):({className:n,orientation:a,...l}=e,r[0]=e,r[1]=n,r[2]=l,r[3]=a);let s=a===void 0?"vertical":a,i=s==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-px",c=s==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-px",u;r[4]!==n||r[5]!==i||r[6]!==c?(u=ae("flex touch-none select-none transition-colors",i,c,n),r[4]=n,r[5]=i,r[6]=c,r[7]=u):u=r[7];let d;r[8]===Symbol.for("react.memo_cache_sentinel")?(d=(0,o.jsx)(xt,{className:"relative flex-1 rounded-full bg-border"}),r[8]=d):d=r[8];let m;return r[9]!==s||r[10]!==l||r[11]!==t||r[12]!==u?(m=(0,o.jsx)(Be,{ref:t,orientation:s,className:u,...l,children:d}),r[9]=s,r[10]=l,r[11]=t,r[12]=u,r[13]=m):m=r[13],m});Ct.displayName=Be.displayName;var Gr=[{label:"Today",days:0},{label:"Yesterday",days:1},{label:"2d ago",days:2},{label:"3d ago",days:3},{label:"This week",days:7},{label:"This month",days:30}];const Jr=e=>{let t=Date.now(),r=Gr.map(a=>({...a,chats:[]})),n={label:"Older",days:1/0,chats:[]},l=a=>{switch(a){case 0:return r[0];case 1:return r[1];case 2:return r[2];case 3:return r[3];default:return a>=4&&a<=7?r[4]:a>=8&&a<=30?r[5]:n}};for(let a of e)l(Math.floor((t-a.updatedAt)/864e5)).chats.push(a);return[...r,n].filter(a=>a.chats.length>0)},Kr=({activeChatId:e,setActiveChat:t})=>{let r=Ue(nt),{locale:n}=Rr(),[l,a]=(0,p.useState)(""),s=(0,p.useMemo)(()=>[...r.chats.values()].sort((u,d)=>d.updatedAt-u.updatedAt),[r.chats]),i=(0,p.useMemo)(()=>l.trim()?s.filter(u=>u.title.toLowerCase().includes(l.toLowerCase())):s,[s,l]),c=(0,p.useMemo)(()=>Jr(i),[i]);return(0,o.jsxs)(Ar,{children:[(0,o.jsx)(Ye,{content:"Previous chats",children:(0,o.jsx)(Tr,{asChild:!0,children:(0,o.jsx)(oe,{variant:"text",size:"icon",children:(0,o.jsx)(Dt,{className:"h-4 w-4"})})})}),(0,o.jsxs)(_r,{className:"w-[480px] p-0",align:"start",side:"right",children:[(0,o.jsx)("div",{className:"pt-3 px-3 w-full",children:(0,o.jsx)(pr,{placeholder:"Search chat history...",value:l,onChange:u=>a(u.target.value),className:"text-xs"})}),(0,o.jsx)(St,{className:"h-[450px] p-2",children:(0,o.jsxs)("div",{className:"space-y-3",children:[s.length===0&&(0,o.jsx)(Xe,{title:"No chats yet",description:"Start a new chat to get started",icon:(0,o.jsx)(at,{})}),i.length===0&&l&&s.length>0&&(0,o.jsx)(Xe,{title:"No chats found",description:`No chats match "${l}"`,icon:(0,o.jsx)(ur,{})}),c.map((u,d)=>(0,o.jsxs)("div",{className:"space-y-2",children:[(0,o.jsx)("div",{className:"text-xs px-1 text-muted-foreground/60",children:u.label}),(0,o.jsx)("div",{children:u.chats.map(m=>(0,o.jsxs)("button",{className:ae("w-full p-1 rounded-md cursor-pointer text-left flex items-center justify-between",m.id===e&&"bg-accent",m.id!==e&&"hover:bg-muted/20"),onClick:()=>{t(m.id)},type:"button",children:[(0,o.jsx)("div",{className:"flex-1 min-w-0",children:(0,o.jsx)("div",{className:"text-sm truncate",children:m.title})}),(0,o.jsx)("div",{className:"text-xs text-muted-foreground/60 ml-2 flex-shrink-0",children:Nr(m.updatedAt,n)})]},m.id))}),d!==c.length-1&&(0,o.jsx)("hr",{})]},u.label))]})})]})]})};var se=Qe(),Nt="manual",Qr=e=>{let t=(0,se.c)(18),{onNewChat:r,activeChatId:n,setActiveChat:l}=e,{handleClick:a}=Ze(),s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,o.jsx)(dr,{className:"h-4 w-4"}),t[0]=s):s=t[0];let i;t[1]===r?i=t[2]:(i=(0,o.jsx)(Ye,{content:"New chat",children:(0,o.jsx)(oe,{variant:"text",size:"icon",onClick:r,children:s})}),t[1]=r,t[2]=i);let c;t[3]===Symbol.for("react.memo_cache_sentinel")?(c=(0,o.jsx)(Ft,{}),t[3]=c):c=t[3];let u;t[4]===a?u=t[5]:(u=()=>a("ai"),t[4]=a,t[5]=u);let d;t[6]===Symbol.for("react.memo_cache_sentinel")?(d=(0,o.jsx)(mr,{className:"h-4 w-4"}),t[6]=d):d=t[6];let m;t[7]===u?m=t[8]:(m=(0,o.jsx)(Ye,{content:"AI Settings",children:(0,o.jsx)(oe,{variant:"text",size:"xs",className:"hover:bg-foreground/10 py-2",onClick:u,children:d})}),t[7]=u,t[8]=m);let h;t[9]!==n||t[10]!==l?(h=(0,o.jsx)(Kr,{activeChatId:n,setActiveChat:l}),t[9]=n,t[10]=l,t[11]=h):h=t[11];let f;t[12]!==m||t[13]!==h?(f=(0,o.jsxs)("div",{className:"flex items-center gap-2",children:[c,m,h]}),t[12]=m,t[13]=h,t[14]=f):f=t[14];let v;return t[15]!==i||t[16]!==f?(v=(0,o.jsxs)("div",{className:"flex border-b px-2 py-1 justify-between shrink-0 items-center",children:[i,f]}),t[15]=i,t[16]=f,t[17]=v):v=t[17],v},Rt=(0,p.memo)(e=>{let t=(0,se.c)(15),{message:r,index:n,onEdit:l,isStreamingReasoning:a,isLast:s}=e,i;t[0]!==n||t[1]!==l?(i=S=>{var N,R,y;let A=(R=(N=S.parts)==null?void 0:N.filter(rl))==null?void 0:R.map(ll).join(`
|
|
2
2
|
`),w=(y=S.parts)==null?void 0:y.filter(ol);return(0,o.jsxs)("div",{className:"w-[95%] bg-background border p-1 rounded-sm",children:[w==null?void 0:w.map(al),(0,o.jsx)(lt,{value:A,placeholder:"Type your message...",onChange:nl,onSubmit:(j,C)=>{C.trim()&&l(n,C)},onClose:sl},S.id)]})},t[0]=n,t[1]=l,t[2]=i):i=t[2];let c=i,u;t[3]!==s||t[4]!==a?(u=S=>(0,o.jsxs)("div",{className:"w-[95%] wrap-break-word",children:[(0,o.jsx)("div",{className:"absolute right-1 top-1 opacity-0 group-hover:opacity-100 transition-opacity",children:(0,o.jsx)(Er,{className:"h-3 w-3",value:S.parts.filter(il).map(cl).join(`
|
|
3
|
-
`)||""})}),Lr({message:S,isStreamingReasoning:a,isLast:s})]}),t[3]=s,t[4]=a,t[5]=u):u=t[5];let d=u,m=r.role==="user"?"justify-end":"justify-start",h;t[6]===m?h=t[7]:(h=ae("flex group relative",m),t[6]=m,t[7]=h);let f;t[8]!==r||t[9]!==d||t[10]!==c?(f=r.role==="user"?c(r):d(r),t[8]=r,t[9]=d,t[10]=c,t[11]=f):f=t[11];let v;return t[12]!==h||t[13]!==f?(v=(0,o.jsx)("div",{className:h,children:f}),t[12]=h,t[13]=f,t[14]=v):v=t[14],v});Rt.displayName="ChatMessage";var Tt=(0,p.memo)(e=>{var D,U;let t=(0,se.c)(39),{isEmpty:r,onSendClick:n,isLoading:l,onStop:a,fileInputRef:s,onAddFiles:i,onAddContext:c}=e,u=Ue(et),d=(u==null?void 0:u.mode)||Nt,m=((D=u==null?void 0:u.models)==null?void 0:D.chat_model)||"openai/gpt-4o",h=Wt.parse(m).providerId,{saveModeChange:f}=Mt(),v;t[0]===Symbol.for("react.memo_cache_sentinel")?(v=[{value:"manual",label:"Manual",subtitle:"Pure chat, no tool usage",Icon:ir},{value:"ask",label:"Ask",subtitle:"Use AI with access to read-only tools like documentation search",Icon:Pr},{value:"agent",label:"Agent (beta)",subtitle:"Use AI with access to read and write tools",Icon:Ir}],t[0]=v):v=t[0];let S=v,A=or.has(h),w=(U=S.find(me=>me.value===d))==null?void 0:U.Icon,N;t[1]===w?N=t[2]:(N=w&&(0,o.jsx)(w,{className:"h-3 w-3"}),t[1]=w,t[2]=N);let R;t[3]===d?R=t[4]:(R=(0,o.jsx)("span",{className:"capitalize",children:d}),t[3]=d,t[4]=R);let y;t[5]!==N||t[6]!==R?(y=(0,o.jsxs)(jr,{className:"h-6 text-xs border-border shadow-none! ring-0! bg-muted hover:bg-muted/30 py-0 px-2 gap-1.5",children:[N,R]}),t[5]=N,t[6]=R,t[7]=y):y=t[7];let j;t[8]===Symbol.for("react.memo_cache_sentinel")?(j=(0,o.jsx)(vr,{className:"text-xs uppercase tracking-wider text-muted-foreground/70 font-medium",children:"AI Mode"}),t[8]=j):j=t[8];let C;t[9]===S?C=t[10]:(C=(0,o.jsx)(wr,{children:(0,o.jsxs)(yr,{children:[j,S.map(dl)]})}),t[9]=S,t[10]=C);let E;t[11]!==d||t[12]!==f||t[13]!==y||t[14]!==C?(E=(0,o.jsxs)(Sr,{value:d,onValueChange:f,children:[y,C]}),t[11]=d,t[12]=f,t[13]=y,t[14]=C,t[15]=E):E=t[15];let I;t[16]===Symbol.for("react.memo_cache_sentinel")?(I=(0,o.jsx)(Ht,{placeholder:"Model",triggerClassName:"h-6 text-xs shadow-none! ring-0! bg-muted hover:bg-muted/30 rounded-sm",iconSize:"small",showAddCustomModelDocs:!0,forRole:"chat"}),t[16]=I):I=t[16];let g;t[17]===E?g=t[18]:(g=(0,o.jsxs)("div",{className:"flex items-center gap-2",children:[E,I]}),t[17]=E,t[18]=g);let _;t[19]!==l||t[20]!==c?(_=(0,o.jsx)(Kt,{handleAddContext:c,isLoading:l}),t[19]=l,t[20]=c,t[21]=_):_=t[21];let k;t[22]!==s||t[23]!==A||t[24]!==l||t[25]!==i?(k=A&&(0,o.jsx)(rr,{fileInputRef:s,isLoading:l,onAddFiles:i}),t[22]=s,t[23]=A,t[24]=l,t[25]=i,t[26]=k):k=t[26];let F;t[27]!==r||t[28]!==l||t[29]!==n||t[30]!==a?(F=(0,o.jsx)(Qt,{isLoading:l,onStop:a,onSendClick:n,isEmpty:r}),t[27]=r,t[28]=l,t[29]=n,t[30]=a,t[31]=F):F=t[31];let H;t[32]!==_||t[33]!==k||t[34]!==F?(H=(0,o.jsxs)("div",{className:"flex flex-row",children:[_,k,F]}),t[32]=_,t[33]=k,t[34]=F,t[35]=H):H=t[35];let T;return t[36]!==H||t[37]!==g?(T=(0,o.jsx)(st,{children:(0,o.jsxs)("div",{className:"px-3 py-2 border-t border-border/20 flex flex-row flex-wrap items-center justify-between gap-1",children:[g,H]})}),t[36]=H,t[37]=g,t[38]=T):T=t[38],T});Tt.displayName="ChatInputFooter";var Ge=(0,p.memo)(e=>{let t=(0,se.c)(29),{placeholder:r,input:n,inputClassName:l,setInput:a,onSubmit:s,inputRef:i,isLoading:c,onStop:u,fileInputRef:d,onAddFiles:m,onClose:h}=e,f;t[0]!==n||t[1]!==s?(f=()=>{n.trim()&&s(void 0,n)},t[0]=n,t[1]=s,t[2]=f):f=t[2];let v=ue(f),S;t[3]===l?S=t[4]:(S=ae("px-2 py-3 flex-1",l),t[3]=l,t[4]=S);let A=r||"Type your message...",w;t[5]!==n||t[6]!==i||t[7]!==m||t[8]!==h||t[9]!==s||t[10]!==a||t[11]!==A?(w=(0,o.jsx)(lt,{inputRef:i,value:n,onChange:a,onSubmit:s,onClose:h,onAddFiles:m,placeholder:A}),t[5]=n,t[6]=i,t[7]=m,t[8]=h,t[9]=s,t[10]=a,t[11]=A,t[12]=w):w=t[12];let N;t[13]!==S||t[14]!==w?(N=(0,o.jsx)("div",{className:S,children:w}),t[13]=S,t[14]=w,t[15]=N):N=t[15];let R=!n.trim(),y;t[16]===i?y=t[17]:(y=()=>qt(i),t[16]=i,t[17]=y);let j;t[18]!==d||t[19]!==v||t[20]!==c||t[21]!==m||t[22]!==u||t[23]!==R||t[24]!==y?(j=(0,o.jsx)(Tt,{isEmpty:R,onAddContext:y,onSendClick:v,isLoading:c,onStop:u,fileInputRef:d,onAddFiles:m}),t[18]=d,t[19]=v,t[20]=c,t[21]=m,t[22]=u,t[23]=R,t[24]=y,t[25]=j):j=t[25];let C;return t[26]!==N||t[27]!==j?(C=(0,o.jsxs)("div",{className:"relative shrink-0 min-h-[80px] flex flex-col border-t",children:[N,j]}),t[26]=N,t[27]=j,t[28]=C):C=t[28],C});Ge.displayName="ChatInput";var Qr=()=>{let e=(0,se.c)(6),t=Ue(Ot),{handleClick:r}=Qe();if(!t){let l;e[0]===r?l=e[1]:(l=(0,o.jsx)(oe,{variant:"outline",size:"sm",onClick:()=>r("ai","ai-providers"),children:"Edit AI settings"}),e[0]=r,e[1]=l);let a;e[2]===Symbol.for("react.memo_cache_sentinel")?(a=(0,o.jsx)(at,{}),e[2]=a):a=e[2];let s;return e[3]===l?s=e[4]:(s=(0,o.jsx)(Xe,{title:"Chat with AI",description:"No AI provider configured or Chat model not selected",action:l,icon:a}),e[3]=l,e[4]=s),s}let n;return e[5]===Symbol.for("react.memo_cache_sentinel")?(n=(0,o.jsx)(el,{}),e[5]=n):n=e[5],n},el=()=>{let e=(0,se.c)(95),t=kt(nt),[r,n]=It(hr),[l,a]=(0,p.useState)(""),[s,i]=(0,p.useState)(""),{files:c,addFiles:u,clearFiles:d,removeFile:m}=Jt(),h=(0,p.useRef)(null),f=(0,p.useRef)(null),v=(0,p.useRef)(null),S=(0,p.useRef)(null),A=(0,p.useRef)(null),w=Ut(),{invokeAiTool:N,sendRun:R}=Xt(),y=r==null?void 0:r.id,j=Lt(),{addStagedCell:C}=$t(),{createNewCell:E,prepareForRun:I}=Dt(),g;e[0]!==C||e[1]!==E||e[2]!==I||e[3]!==R||e[4]!==j?(g={addStagedCell:C,createNewCell:E,prepareForRun:I,sendRun:R,store:j},e[0]=C,e[1]=E,e[2]=I,e[3]=R,e[4]=j,e[5]=g):g=e[5];let _=g,k;e[6]===(r==null?void 0:r.messages)?k=e[7]:(k=(r==null?void 0:r.messages)||[],e[6]=r==null?void 0:r.messages,e[7]=k);let F;if(e[8]!==w||e[9]!==j){let x;e[11]===j?x=e[12]:(x=async b=>{var re;let L=await lr(b.messages),W=((re=j.get(et))==null?void 0:re.mode)||Nt;return{body:{tools:Vt.getToolSchemas(W),...b,...L}}},e[11]=j,e[12]=x),F=new Bt({api:w.getAiURL("chat").toString(),headers:w.headers(),prepareSendMessagesRequest:x}),e[8]=w,e[9]=j,e[10]=F}else F=e[10];let H;e[13]===t?H=e[14]:(H=x=>{let{messages:b}=x;t(L=>Dr({chatState:L,chatId:L.activeChatId,messages:b}))},e[13]=t,e[14]=H);let{messages:T,sendMessage:D,error:U,status:me,regenerate:Pe,stop:Y,addToolOutput:_t,id:De}=tr({id:y,sendAutomaticallyWhen:ul,messages:k,transport:F,onFinish:H,onToolCall:async x=>{let{toolCall:b}=x;if(b.dynamic){_e.debug("Skipping dynamic tool call",b);return}await Gt({invokeAiTool:N,addToolOutput:At,toolCall:{toolName:b.toolName,toolCallId:b.toolCallId,input:b.input},toolContext:_})},onError:pl}),At=_t,P=me==="submitted"||me==="streaming",he;e[15]!==P||e[16]!==T?(he=P&&T.length>0&&sr(T),e[15]=P,e[16]=T,e[17]=he):he=e[17];let ie=he,fe;e[18]===Symbol.for("react.memo_cache_sentinel")?(fe=()=>{requestAnimationFrame(()=>{if(v.current){let x=v.current;x.scrollTop=x.scrollHeight}})},e[18]=fe):fe=e[18];let xe;e[19]===y?xe=e[20]:(xe=[y],e[19]=y,e[20]=xe),(0,p.useEffect)(fe,xe);let ve;e[21]!==De||e[22]!==d||e[23]!==D||e[24]!==t?(ve=async(x,b)=>{let L=Date.now(),W={id:De,title:er(x),messages:[],createdAt:L,updatedAt:L};t(de=>{let Je=new Map(de.chats);return Je.set(W.id,W),{...de,chats:Je,activeChatId:W.id}});let re=b&&b.length>0?await rt(b):void 0;D({role:"user",parts:[{type:"text",text:x},...re??[]]}),d(),a("")},e[21]=De,e[22]=d,e[23]=D,e[24]=t,e[25]=ve):ve=e[25];let ze=ve,ge;e[26]!==d||e[27]!==n?(ge=()=>{n(null),a(""),i(""),d()},e[26]=d,e[27]=n,e[28]=ge):ge=e[28];let Me=ue(ge),we;e[29]!==T||e[30]!==D?(we=(x,b)=>{var de;let L=T[x],W=(de=L.parts)==null?void 0:de.filter(ml),re=L.id;D({messageId:re,role:"user",parts:[{type:"text",text:b},...W]})},e[29]=T,e[30]=D,e[31]=we):we=e[31];let ce=ue(we),be;e[32]!==d||e[33]!==c||e[34]!==D?(be=async(x,b)=>{var W;if(!b.trim())return;(W=f.current)!=null&&W.view&&ot(f.current.view);let L=c?await rt(c):void 0;x==null||x.preventDefault(),D({text:b,files:L}),a(""),d()},e[32]=d,e[33]=c,e[34]=D,e[35]=be):be=e[35];let Fe=ue(be),ye;e[36]===Pe?ye=e[37]:(ye=()=>{Pe()},e[36]=Pe,e[37]=ye);let He=ye,je;e[38]!==ze||e[39]!==c||e[40]!==s?(je=()=>{var x;s.trim()&&((x=h.current)!=null&&x.view&&ot(h.current.view),ze(s.trim(),c))},e[38]=ze,e[39]=c,e[40]=s,e[41]=je):je=e[41];let We=ue(je),Se;e[42]===Symbol.for("react.memo_cache_sentinel")?(Se=()=>{var x,b;return(b=(x=h.current)==null?void 0:x.editor)==null?void 0:b.blur()},e[42]=Se):Se=e[42];let Et=Se,z=T.length===0,Ce;e[43]!==u||e[44]!==Fe||e[45]!==We||e[46]!==l||e[47]!==P||e[48]!==z||e[49]!==s||e[50]!==Y?(Ce=z?(0,o.jsx)(Ge,{placeholder:"Ask anything, @ to include context about tables or dataframes",input:s,inputRef:h,inputClassName:"px-1 py-0",setInput:i,onSubmit:We,isLoading:P,onStop:Y,fileInputRef:S,onAddFiles:u,onClose:Et},"new-thread-input"):(0,o.jsx)(Ge,{input:l,setInput:a,onSubmit:Fe,inputRef:f,isLoading:P,onStop:Y,onClose:()=>{var x,b;return(b=(x=f.current)==null?void 0:x.editor)==null?void 0:b.blur()},fileInputRef:S,onAddFiles:u}),e[43]=u,e[44]=Fe,e[45]=We,e[46]=l,e[47]=P,e[48]=z,e[49]=s,e[50]=Y,e[51]=Ce):Ce=e[51];let B=Ce,Ne;e[52]!==c||e[53]!==z||e[54]!==m?(Ne=c&&c.length>0&&(0,o.jsx)("div",{className:ae("flex flex-row gap-1 flex-wrap p-1",z&&"py-2 px-1"),children:c==null?void 0:c.map(x=>(0,o.jsx)(Zt,{file:x,onRemove:()=>m(x)},x.name))}),e[52]=c,e[53]=z,e[54]=m,e[55]=Ne):Ne=e[55];let q=Ne,Oe=r==null?void 0:r.id,$;e[56]!==Me||e[57]!==n||e[58]!==Oe?($=(0,o.jsx)(st,{children:(0,o.jsx)(Zr,{onNewChat:Me,activeChatId:Oe,setActiveChat:n})}),e[56]=Me,e[57]=n,e[58]=Oe,e[59]=$):$=e[59];let G;e[60]!==B||e[61]!==q||e[62]!==z?(G=z&&(0,o.jsxs)("div",{className:"rounded-md border bg-background",children:[q,B]}),e[60]=B,e[61]=q,e[62]=z,e[63]=G):G=e[63];let J;if(e[64]!==ce||e[65]!==ie||e[66]!==T){let x;e[68]!==ce||e[69]!==ie||e[70]!==T.length?(x=(b,L)=>(0,o.jsx)(Rt,{message:b,index:L,onEdit:ce,isStreamingReasoning:ie,isLast:L===T.length-1},b.id),e[68]=ce,e[69]=ie,e[70]=T.length,e[71]=x):x=e[71],J=T.map(x),e[64]=ce,e[65]=ie,e[66]=T,e[67]=J}else J=e[67];let K;e[72]===P?K=e[73]:(K=P&&(0,o.jsx)("div",{className:"flex justify-center py-4",children:(0,o.jsx)(cr,{className:"h-4 w-4 animate-spin"})}),e[72]=P,e[73]=K);let Z;e[74]!==U||e[75]!==He?(Z=U&&(0,o.jsxs)("div",{className:"flex items-center justify-center space-x-2 mb-4",children:[(0,o.jsx)(kr,{error:U||Error("Unknown error")}),(0,o.jsx)(oe,{variant:"outline",size:"sm",onClick:He,children:"Retry"})]}),e[74]=U,e[75]=He,e[76]=Z):Z=e[76];let Re;e[77]===Symbol.for("react.memo_cache_sentinel")?(Re=(0,o.jsx)("div",{ref:A}),e[77]=Re):Re=e[77];let Q;e[78]!==G||e[79]!==J||e[80]!==K||e[81]!==Z?(Q=(0,o.jsxs)("div",{className:"flex-1 px-3 bg-(--slate-1) gap-4 py-3 flex flex-col overflow-y-auto",ref:v,children:[G,J,K,Z,Re]}),e[78]=G,e[79]=J,e[80]=K,e[81]=Z,e[82]=Q):Q=e[82];let ee;e[83]!==P||e[84]!==Y?(ee=P&&(0,o.jsx)("div",{className:"w-full flex justify-center items-center z-20 border-t",children:(0,o.jsx)(oe,{variant:"linkDestructive",size:"sm",onClick:Y,children:"Stop"})}),e[83]=P,e[84]=Y,e[85]=ee):ee=e[85];let te;e[86]!==B||e[87]!==q||e[88]!==z?(te=!z&&(0,o.jsxs)(o.Fragment,{children:[q,B]}),e[86]=B,e[87]=q,e[88]=z,e[89]=te):te=e[89];let Te;return e[90]!==$||e[91]!==Q||e[92]!==ee||e[93]!==te?(Te=(0,o.jsxs)("div",{className:"flex flex-col h-[calc(100%-53px)]",children:[$,Q,ee,te]}),e[90]=$,e[91]=Q,e[92]=ee,e[93]=te,e[94]=Te):Te=e[94],Te},tl=Qr;function rl(e){return e.type==="text"}function ll(e){return e.text}function ol(e){return e.type==="file"}function al(e,t){return(0,o.jsx)(ar,{attachment:e},t)}function nl(){}function sl(){}function il(e){return e.type==="text"}function cl(e){return e.text}function dl(e){return(0,o.jsx)(gr,{value:e.value,className:"text-xs py-1",children:(0,o.jsxs)("div",{className:"flex items-start gap-2.5",children:[(0,o.jsx)("span",{className:"mt-1 text-muted-foreground",children:(0,o.jsx)(e.Icon,{className:"h-3 w-3"})}),(0,o.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,o.jsx)("span",{className:"font-semibold",children:e.label}),(0,o.jsx)("span",{className:"text-muted-foreground",children:e.subtitle})]})]})},e.value)}function ul(e){let{messages:t}=e;return nr(t)}function pl(e){_e.error("An error occurred:",e)}function ml(e){return e.type==="file"}export{tl as default};
|
|
3
|
+
`)||""})}),Lr({message:S,isStreamingReasoning:a,isLast:s})]}),t[3]=s,t[4]=a,t[5]=u):u=t[5];let d=u,m=r.role==="user"?"justify-end":"justify-start",h;t[6]===m?h=t[7]:(h=ae("flex group relative",m),t[6]=m,t[7]=h);let f;t[8]!==r||t[9]!==d||t[10]!==c?(f=r.role==="user"?c(r):d(r),t[8]=r,t[9]=d,t[10]=c,t[11]=f):f=t[11];let v;return t[12]!==h||t[13]!==f?(v=(0,o.jsx)("div",{className:h,children:f}),t[12]=h,t[13]=f,t[14]=v):v=t[14],v});Rt.displayName="ChatMessage";var Tt=(0,p.memo)(e=>{var D,U;let t=(0,se.c)(39),{isEmpty:r,onSendClick:n,isLoading:l,onStop:a,fileInputRef:s,onAddFiles:i,onAddContext:c}=e,u=Ue(et),d=(u==null?void 0:u.mode)||Nt,m=((D=u==null?void 0:u.models)==null?void 0:D.chat_model)||"openai/gpt-4o",h=Wt.parse(m).providerId,{saveModeChange:f}=Mt(),v;t[0]===Symbol.for("react.memo_cache_sentinel")?(v=[{value:"manual",label:"Manual",subtitle:"Pure chat, no tool usage",Icon:ir},{value:"ask",label:"Ask",subtitle:"Use AI with access to read-only tools like documentation search",Icon:Pr},{value:"agent",label:"Agent (beta)",subtitle:"Use AI with access to read and write tools",Icon:Ir}],t[0]=v):v=t[0];let S=v,A=or.has(h),w=(U=S.find(me=>me.value===d))==null?void 0:U.Icon,N;t[1]===w?N=t[2]:(N=w&&(0,o.jsx)(w,{className:"h-3 w-3"}),t[1]=w,t[2]=N);let R;t[3]===d?R=t[4]:(R=(0,o.jsx)("span",{className:"capitalize",children:d}),t[3]=d,t[4]=R);let y;t[5]!==N||t[6]!==R?(y=(0,o.jsxs)(jr,{className:"h-6 text-xs border-border shadow-none! ring-0! bg-muted hover:bg-muted/30 py-0 px-2 gap-1.5",children:[N,R]}),t[5]=N,t[6]=R,t[7]=y):y=t[7];let j;t[8]===Symbol.for("react.memo_cache_sentinel")?(j=(0,o.jsx)(vr,{className:"text-xs uppercase tracking-wider text-muted-foreground/70 font-medium",children:"AI Mode"}),t[8]=j):j=t[8];let C;t[9]===S?C=t[10]:(C=(0,o.jsx)(wr,{children:(0,o.jsxs)(yr,{children:[j,S.map(dl)]})}),t[9]=S,t[10]=C);let E;t[11]!==d||t[12]!==f||t[13]!==y||t[14]!==C?(E=(0,o.jsxs)(Sr,{value:d,onValueChange:f,children:[y,C]}),t[11]=d,t[12]=f,t[13]=y,t[14]=C,t[15]=E):E=t[15];let I;t[16]===Symbol.for("react.memo_cache_sentinel")?(I=(0,o.jsx)(Ht,{placeholder:"Model",triggerClassName:"h-6 text-xs shadow-none! ring-0! bg-muted hover:bg-muted/30 rounded-sm",iconSize:"small",showAddCustomModelDocs:!0,forRole:"chat"}),t[16]=I):I=t[16];let g;t[17]===E?g=t[18]:(g=(0,o.jsxs)("div",{className:"flex items-center gap-2",children:[E,I]}),t[17]=E,t[18]=g);let _;t[19]!==l||t[20]!==c?(_=(0,o.jsx)(Kt,{handleAddContext:c,isLoading:l}),t[19]=l,t[20]=c,t[21]=_):_=t[21];let k;t[22]!==s||t[23]!==A||t[24]!==l||t[25]!==i?(k=A&&(0,o.jsx)(rr,{fileInputRef:s,isLoading:l,onAddFiles:i}),t[22]=s,t[23]=A,t[24]=l,t[25]=i,t[26]=k):k=t[26];let F;t[27]!==r||t[28]!==l||t[29]!==n||t[30]!==a?(F=(0,o.jsx)(Zt,{isLoading:l,onStop:a,onSendClick:n,isEmpty:r}),t[27]=r,t[28]=l,t[29]=n,t[30]=a,t[31]=F):F=t[31];let H;t[32]!==_||t[33]!==k||t[34]!==F?(H=(0,o.jsxs)("div",{className:"flex flex-row",children:[_,k,F]}),t[32]=_,t[33]=k,t[34]=F,t[35]=H):H=t[35];let T;return t[36]!==H||t[37]!==g?(T=(0,o.jsx)(st,{children:(0,o.jsxs)("div",{className:"px-3 py-2 border-t border-border/20 flex flex-row flex-wrap items-center justify-between gap-1",children:[g,H]})}),t[36]=H,t[37]=g,t[38]=T):T=t[38],T});Tt.displayName="ChatInputFooter";var Ge=(0,p.memo)(e=>{let t=(0,se.c)(29),{placeholder:r,input:n,inputClassName:l,setInput:a,onSubmit:s,inputRef:i,isLoading:c,onStop:u,fileInputRef:d,onAddFiles:m,onClose:h}=e,f;t[0]!==n||t[1]!==s?(f=()=>{n.trim()&&s(void 0,n)},t[0]=n,t[1]=s,t[2]=f):f=t[2];let v=ue(f),S;t[3]===l?S=t[4]:(S=ae("px-2 py-3 flex-1",l),t[3]=l,t[4]=S);let A=r||"Type your message...",w;t[5]!==n||t[6]!==i||t[7]!==m||t[8]!==h||t[9]!==s||t[10]!==a||t[11]!==A?(w=(0,o.jsx)(lt,{inputRef:i,value:n,onChange:a,onSubmit:s,onClose:h,onAddFiles:m,placeholder:A}),t[5]=n,t[6]=i,t[7]=m,t[8]=h,t[9]=s,t[10]=a,t[11]=A,t[12]=w):w=t[12];let N;t[13]!==S||t[14]!==w?(N=(0,o.jsx)("div",{className:S,children:w}),t[13]=S,t[14]=w,t[15]=N):N=t[15];let R=!n.trim(),y;t[16]===i?y=t[17]:(y=()=>qt(i),t[16]=i,t[17]=y);let j;t[18]!==d||t[19]!==v||t[20]!==c||t[21]!==m||t[22]!==u||t[23]!==R||t[24]!==y?(j=(0,o.jsx)(Tt,{isEmpty:R,onAddContext:y,onSendClick:v,isLoading:c,onStop:u,fileInputRef:d,onAddFiles:m}),t[18]=d,t[19]=v,t[20]=c,t[21]=m,t[22]=u,t[23]=R,t[24]=y,t[25]=j):j=t[25];let C;return t[26]!==N||t[27]!==j?(C=(0,o.jsxs)("div",{className:"relative shrink-0 min-h-[80px] flex flex-col border-t",children:[N,j]}),t[26]=N,t[27]=j,t[28]=C):C=t[28],C});Ge.displayName="ChatInput";var Zr=()=>{let e=(0,se.c)(6),t=Ue(Ot),{handleClick:r}=Ze();if(!t){let l;e[0]===r?l=e[1]:(l=(0,o.jsx)(oe,{variant:"outline",size:"sm",onClick:()=>r("ai","ai-providers"),children:"Edit AI settings"}),e[0]=r,e[1]=l);let a;e[2]===Symbol.for("react.memo_cache_sentinel")?(a=(0,o.jsx)(at,{}),e[2]=a):a=e[2];let s;return e[3]===l?s=e[4]:(s=(0,o.jsx)(Xe,{title:"Chat with AI",description:"No AI provider configured or Chat model not selected",action:l,icon:a}),e[3]=l,e[4]=s),s}let n;return e[5]===Symbol.for("react.memo_cache_sentinel")?(n=(0,o.jsx)(el,{}),e[5]=n):n=e[5],n},el=()=>{let e=(0,se.c)(95),t=kt(nt),[r,n]=It(hr),[l,a]=(0,p.useState)(""),[s,i]=(0,p.useState)(""),{files:c,addFiles:u,clearFiles:d,removeFile:m}=Jt(),h=(0,p.useRef)(null),f=(0,p.useRef)(null),v=(0,p.useRef)(null),S=(0,p.useRef)(null),A=(0,p.useRef)(null),w=Ut(),{invokeAiTool:N,sendRun:R}=Xt(),y=r==null?void 0:r.id,j=Lt(),{addStagedCell:C}=$t(),{createNewCell:E,prepareForRun:I}=zt(),g;e[0]!==C||e[1]!==E||e[2]!==I||e[3]!==R||e[4]!==j?(g={addStagedCell:C,createNewCell:E,prepareForRun:I,sendRun:R,store:j},e[0]=C,e[1]=E,e[2]=I,e[3]=R,e[4]=j,e[5]=g):g=e[5];let _=g,k;e[6]===(r==null?void 0:r.messages)?k=e[7]:(k=(r==null?void 0:r.messages)||[],e[6]=r==null?void 0:r.messages,e[7]=k);let F;if(e[8]!==w||e[9]!==j){let x;e[11]===j?x=e[12]:(x=async b=>{var re;let L=await lr(b.messages),W=((re=j.get(et))==null?void 0:re.mode)||Nt;return{body:{tools:Vt.getToolSchemas(W),...b,...L}}},e[11]=j,e[12]=x),F=new Bt({api:w.getAiURL("chat").toString(),headers:w.headers(),prepareSendMessagesRequest:x}),e[8]=w,e[9]=j,e[10]=F}else F=e[10];let H;e[13]===t?H=e[14]:(H=x=>{let{messages:b}=x;t(L=>Dr({chatState:L,chatId:L.activeChatId,messages:b}))},e[13]=t,e[14]=H);let{messages:T,sendMessage:D,error:U,status:me,regenerate:Pe,stop:Y,addToolOutput:_t,id:De}=tr({id:y,sendAutomaticallyWhen:ul,messages:k,transport:F,onFinish:H,onToolCall:async x=>{let{toolCall:b}=x;if(b.dynamic){_e.debug("Skipping dynamic tool call",b);return}await Gt({invokeAiTool:N,addToolOutput:At,toolCall:{toolName:b.toolName,toolCallId:b.toolCallId,input:b.input},toolContext:_})},onError:pl}),At=_t,P=me==="submitted"||me==="streaming",he;e[15]!==P||e[16]!==T?(he=P&&T.length>0&&sr(T),e[15]=P,e[16]=T,e[17]=he):he=e[17];let ie=he,fe;e[18]===Symbol.for("react.memo_cache_sentinel")?(fe=()=>{requestAnimationFrame(()=>{if(v.current){let x=v.current;x.scrollTop=x.scrollHeight}})},e[18]=fe):fe=e[18];let xe;e[19]===y?xe=e[20]:(xe=[y],e[19]=y,e[20]=xe),(0,p.useEffect)(fe,xe);let ve;e[21]!==De||e[22]!==d||e[23]!==D||e[24]!==t?(ve=async(x,b)=>{let L=Date.now(),W={id:De,title:er(x),messages:[],createdAt:L,updatedAt:L};t(de=>{let Je=new Map(de.chats);return Je.set(W.id,W),{...de,chats:Je,activeChatId:W.id}});let re=b&&b.length>0?await rt(b):void 0;D({role:"user",parts:[{type:"text",text:x},...re??[]]}),d(),a("")},e[21]=De,e[22]=d,e[23]=D,e[24]=t,e[25]=ve):ve=e[25];let ze=ve,ge;e[26]!==d||e[27]!==n?(ge=()=>{n(null),a(""),i(""),d()},e[26]=d,e[27]=n,e[28]=ge):ge=e[28];let Me=ue(ge),we;e[29]!==T||e[30]!==D?(we=(x,b)=>{var de;let L=T[x],W=(de=L.parts)==null?void 0:de.filter(ml),re=L.id;D({messageId:re,role:"user",parts:[{type:"text",text:b},...W]})},e[29]=T,e[30]=D,e[31]=we):we=e[31];let ce=ue(we),be;e[32]!==d||e[33]!==c||e[34]!==D?(be=async(x,b)=>{var W;if(!b.trim())return;(W=f.current)!=null&&W.view&&ot(f.current.view);let L=c?await rt(c):void 0;x==null||x.preventDefault(),D({text:b,files:L}),a(""),d()},e[32]=d,e[33]=c,e[34]=D,e[35]=be):be=e[35];let Fe=ue(be),ye;e[36]===Pe?ye=e[37]:(ye=()=>{Pe()},e[36]=Pe,e[37]=ye);let He=ye,je;e[38]!==ze||e[39]!==c||e[40]!==s?(je=()=>{var x;s.trim()&&((x=h.current)!=null&&x.view&&ot(h.current.view),ze(s.trim(),c))},e[38]=ze,e[39]=c,e[40]=s,e[41]=je):je=e[41];let We=ue(je),Se;e[42]===Symbol.for("react.memo_cache_sentinel")?(Se=()=>{var x,b;return(b=(x=h.current)==null?void 0:x.editor)==null?void 0:b.blur()},e[42]=Se):Se=e[42];let Et=Se,z=T.length===0,Ce;e[43]!==u||e[44]!==Fe||e[45]!==We||e[46]!==l||e[47]!==P||e[48]!==z||e[49]!==s||e[50]!==Y?(Ce=z?(0,o.jsx)(Ge,{placeholder:"Ask anything, @ to include context about tables or dataframes",input:s,inputRef:h,inputClassName:"px-1 py-0",setInput:i,onSubmit:We,isLoading:P,onStop:Y,fileInputRef:S,onAddFiles:u,onClose:Et},"new-thread-input"):(0,o.jsx)(Ge,{input:l,setInput:a,onSubmit:Fe,inputRef:f,isLoading:P,onStop:Y,onClose:()=>{var x,b;return(b=(x=f.current)==null?void 0:x.editor)==null?void 0:b.blur()},fileInputRef:S,onAddFiles:u}),e[43]=u,e[44]=Fe,e[45]=We,e[46]=l,e[47]=P,e[48]=z,e[49]=s,e[50]=Y,e[51]=Ce):Ce=e[51];let B=Ce,Ne;e[52]!==c||e[53]!==z||e[54]!==m?(Ne=c&&c.length>0&&(0,o.jsx)("div",{className:ae("flex flex-row gap-1 flex-wrap p-1",z&&"py-2 px-1"),children:c==null?void 0:c.map(x=>(0,o.jsx)(Qt,{file:x,onRemove:()=>m(x)},x.name))}),e[52]=c,e[53]=z,e[54]=m,e[55]=Ne):Ne=e[55];let q=Ne,Oe=r==null?void 0:r.id,$;e[56]!==Me||e[57]!==n||e[58]!==Oe?($=(0,o.jsx)(st,{children:(0,o.jsx)(Qr,{onNewChat:Me,activeChatId:Oe,setActiveChat:n})}),e[56]=Me,e[57]=n,e[58]=Oe,e[59]=$):$=e[59];let G;e[60]!==B||e[61]!==q||e[62]!==z?(G=z&&(0,o.jsxs)("div",{className:"rounded-md border bg-background",children:[q,B]}),e[60]=B,e[61]=q,e[62]=z,e[63]=G):G=e[63];let J;if(e[64]!==ce||e[65]!==ie||e[66]!==T){let x;e[68]!==ce||e[69]!==ie||e[70]!==T.length?(x=(b,L)=>(0,o.jsx)(Rt,{message:b,index:L,onEdit:ce,isStreamingReasoning:ie,isLast:L===T.length-1},b.id),e[68]=ce,e[69]=ie,e[70]=T.length,e[71]=x):x=e[71],J=T.map(x),e[64]=ce,e[65]=ie,e[66]=T,e[67]=J}else J=e[67];let K;e[72]===P?K=e[73]:(K=P&&(0,o.jsx)("div",{className:"flex justify-center py-4",children:(0,o.jsx)(cr,{className:"h-4 w-4 animate-spin"})}),e[72]=P,e[73]=K);let Q;e[74]!==U||e[75]!==He?(Q=U&&(0,o.jsxs)("div",{className:"flex items-center justify-center space-x-2 mb-4",children:[(0,o.jsx)(kr,{error:U||Error("Unknown error")}),(0,o.jsx)(oe,{variant:"outline",size:"sm",onClick:He,children:"Retry"})]}),e[74]=U,e[75]=He,e[76]=Q):Q=e[76];let Re;e[77]===Symbol.for("react.memo_cache_sentinel")?(Re=(0,o.jsx)("div",{ref:A}),e[77]=Re):Re=e[77];let Z;e[78]!==G||e[79]!==J||e[80]!==K||e[81]!==Q?(Z=(0,o.jsxs)("div",{className:"flex-1 px-3 bg-(--slate-1) gap-4 py-3 flex flex-col overflow-y-auto",ref:v,children:[G,J,K,Q,Re]}),e[78]=G,e[79]=J,e[80]=K,e[81]=Q,e[82]=Z):Z=e[82];let ee;e[83]!==P||e[84]!==Y?(ee=P&&(0,o.jsx)("div",{className:"w-full flex justify-center items-center z-20 border-t",children:(0,o.jsx)(oe,{variant:"linkDestructive",size:"sm",onClick:Y,children:"Stop"})}),e[83]=P,e[84]=Y,e[85]=ee):ee=e[85];let te;e[86]!==B||e[87]!==q||e[88]!==z?(te=!z&&(0,o.jsxs)(o.Fragment,{children:[q,B]}),e[86]=B,e[87]=q,e[88]=z,e[89]=te):te=e[89];let Te;return e[90]!==$||e[91]!==Z||e[92]!==ee||e[93]!==te?(Te=(0,o.jsxs)("div",{className:"flex flex-col h-[calc(100%-53px)]",children:[$,Z,ee,te]}),e[90]=$,e[91]=Z,e[92]=ee,e[93]=te,e[94]=Te):Te=e[94],Te},tl=Zr;function rl(e){return e.type==="text"}function ll(e){return e.text}function ol(e){return e.type==="file"}function al(e,t){return(0,o.jsx)(ar,{attachment:e},t)}function nl(){}function sl(){}function il(e){return e.type==="text"}function cl(e){return e.text}function dl(e){return(0,o.jsx)(gr,{value:e.value,className:"text-xs py-1",children:(0,o.jsxs)("div",{className:"flex items-start gap-2.5",children:[(0,o.jsx)("span",{className:"mt-1 text-muted-foreground",children:(0,o.jsx)(e.Icon,{className:"h-3 w-3"})}),(0,o.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,o.jsx)("span",{className:"font-semibold",children:e.label}),(0,o.jsx)("span",{className:"text-muted-foreground",children:e.subtitle})]})]})},e.value)}function ul(e){let{messages:t}=e;return nr(t)}function pl(e){_e.error("An error occurred:",e)}function ml(e){return e.type==="file"}export{tl as default};
|