decocms 4.513.6 → 4.513.8
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/client/assets/{ActiveShapeUtils-BD1rvm75.js → ActiveShapeUtils-uKFYSg4Y.js} +1 -1
- package/dist/client/assets/{AlertCircle-DGyqrcs1.js → AlertCircle-Q16nTVAa.js} +1 -1
- package/dist/client/assets/{AreaChart-DXZzRQIg.js → AreaChart-k5WqYBKX.js} +1 -1
- package/dist/client/assets/{ArrowLeft-eYPah7GY.js → ArrowLeft-C_dTX_8N.js} +1 -1
- package/dist/client/assets/{ArrowUp-D5AH9Pcx.js → ArrowUp--4P0C-xl.js} +1 -1
- package/dist/client/assets/{BarChart-CIrIL-8i.js → BarChart-VS3Ye-qY.js} +1 -1
- package/dist/client/assets/{Building02-DYC0suyK.js → Building02-Gub-pr-8.js} +1 -1
- package/dist/client/assets/{CartesianChart-DI2rF1vs.js → CartesianChart-BvH4QiKh.js} +1 -1
- package/dist/client/assets/{CategoricalChart-C37JtV-R.js → CategoricalChart-CTrV8dYV.js} +1 -1
- package/dist/client/assets/{CheckCircle-CqYnJPRs.js → CheckCircle-CQxu_pm9.js} +1 -1
- package/dist/client/assets/{ChevronSelectorVertical-DdGE8kvW.js → ChevronSelectorVertical-GBLm8Zpl.js} +1 -1
- package/dist/client/assets/{ChevronUp-COqs90Hs.js → ChevronUp-DK-Gvyk8.js} +1 -1
- package/dist/client/assets/{Copy01-CgH6S_M4.js → Copy01-EWitDFCf.js} +1 -1
- package/dist/client/assets/{CreditCard01-D9MXYjlv.js → CreditCard01-wx_z4Iiz.js} +1 -1
- package/dist/client/assets/{DotsVertical-Cb3iOarq.js → DotsVertical-DIT5hu2b.js} +1 -1
- package/dist/client/assets/{ErrorBarContext-Bm6BBMsf.js → ErrorBarContext-C56oRnGq.js} +1 -1
- package/dist/client/assets/{Globe04-CzPjgHLa.js → Globe04-B45_cBRN.js} +1 -1
- package/dist/client/assets/{Image01-DRhv7dXw.js → Image01-BfGAREA7.js} +1 -1
- package/dist/client/assets/{Key01-BDIGM7UK.js → Key01-BV7tzZs6.js} +1 -1
- package/dist/client/assets/{Link01-D-kjAU9F.js → Link01-9civFIb9.js} +1 -1
- package/dist/client/assets/{LinkBroken01-XQhOMQAy.js → LinkBroken01-DmmKNgpp.js} +1 -1
- package/dist/client/assets/{Monitor01-BVPal7YC.js → Monitor01-BoSs_8gg.js} +1 -1
- package/dist/client/assets/{Play-d8pW2_Wo.js → Play-CleWZLOG.js} +1 -1
- package/dist/client/assets/{Plus-BqeqBPMZ.js → Plus-DQf-jm_3.js} +1 -1
- package/dist/client/assets/{ReferenceLine-BR8YoYbZ.js → ReferenceLine-DtJF7ODu.js} +1 -1
- package/dist/client/assets/{SearchMd-pSkC4ygW.js → SearchMd-D0zp0uee.js} +1 -1
- package/dist/client/assets/{Sector-Dq8AGG4_.js → Sector-CWBWrJZQ.js} +1 -1
- package/dist/client/assets/{ShoppingBag01-DZQO7QtG.js → ShoppingBag01-B7gta_qY.js} +1 -1
- package/dist/client/assets/{Sun-BCgybCT7.js → Sun-BfjJa3ru.js} +1 -1
- package/dist/client/assets/{SwitchHorizontal01-CeUNJpHb.js → SwitchHorizontal01-BJyDDPw9.js} +1 -1
- package/dist/client/assets/{Tool01-BgkFSAcX.js → Tool01-Bp-TbrXi.js} +1 -1
- package/dist/client/assets/{Trash01-DeYkLyg0.js → Trash01-Dlk_Sh-H.js} +1 -1
- package/dist/client/assets/{Upload01-zDvi7WnN.js → Upload01-DlF9Jqso.js} +1 -1
- package/dist/client/assets/{User01-DBX94Vod.js → User01-BcekHhAV.js} +1 -1
- package/dist/client/assets/{UserSquare-4I8cSrJU.js → UserSquare-cdWcOBLL.js} +1 -1
- package/dist/client/assets/{Users01-BNiwpGyg.js → Users01-BIP-PxGt.js} +1 -1
- package/dist/client/assets/{XClose-DFp85o1X.js → XClose-L_GNViCD.js} +1 -1
- package/dist/client/assets/{ZoomOut-Clz13c-y.js → ZoomOut-B3s5275g.js} +1 -1
- package/dist/client/assets/{access-gate-hn6vo27o.js → access-gate-CsHtyNGi.js} +1 -1
- package/dist/client/assets/{add-connection-dialog-B8d5rNLA.js → add-connection-dialog-DwDvS8Uw.js} +1 -1
- package/dist/client/assets/{agent-analytics-oR-UJrdu.js → agent-analytics-bhSR3DTp.js} +1 -1
- package/dist/client/assets/agent-app-D3AENVQT.js +1 -0
- package/dist/client/assets/{agent-assets-BAJSaOwb.js → agent-assets-BwCvdqkQ.js} +1 -1
- package/dist/client/assets/{agent-automation-BFa_aFcv.js → agent-automation-BB_6G_CX.js} +1 -1
- package/dist/client/assets/{agent-automations-BqpWj5js.js → agent-automations-1AEGAcHU.js} +1 -1
- package/dist/client/assets/{agent-connect-sources-DLbP8QgT.js → agent-connect-sources-Dh_ELrva.js} +1 -1
- package/dist/client/assets/agent-deck-Cd8T_xPW.js +1 -0
- package/dist/client/assets/{agent-e2e-CZm4tSr4.js → agent-e2e-Bz8yllNo.js} +1 -1
- package/dist/client/assets/{agent-experiments-B-6D2jQi.js → agent-experiments-BmvDtQNl.js} +1 -1
- package/dist/client/assets/agent-file-BoVEwoJD.js +1 -0
- package/dist/client/assets/{agent-hosting-CdENGPus.js → agent-hosting-DtDQtjNQ.js} +1 -1
- package/dist/client/assets/{agent-icon-DtUVrwO-.js → agent-icon-D6wS7rd0.js} +1 -1
- package/dist/client/assets/agent-library-BeoJetpR.js +1 -0
- package/dist/client/assets/agent-library-file-DCYJT22p.js +1 -0
- package/dist/client/assets/{agent-monitor-Bs7IFe5F.js → agent-monitor-DduGwwal.js} +1 -1
- package/dist/client/assets/{agent-overview-BM6-btAT.js → agent-overview-Bj_gDP1X.js} +1 -1
- package/dist/client/assets/{agent-releases-Cg_1lF6D.js → agent-releases-CAjd1_1N.js} +1 -1
- package/dist/client/assets/agent-settings-CnK9fsFs.js +1 -0
- package/dist/client/assets/{agent-site-editor-Duykn_pL.js → agent-site-editor-DMCFUFgp.js} +1 -1
- package/dist/client/assets/agent-site-editor-code-C20F9ay-.js +2 -0
- package/dist/client/assets/agent-site-editor-content-ChnnFjhK.js +1 -0
- package/dist/client/assets/agent-site-editor-preview-BxDD-Aar.js +1 -0
- package/dist/client/assets/agent-view-3YMZSj3x.js +1 -0
- package/dist/client/assets/{agent-view-guard-hqisp_aZ.js → agent-view-guard-AH_0N8JG.js} +1 -1
- package/dist/client/assets/{agents-list-Be9D6Efa.js → agents-list-ZmW8mXyl.js} +1 -1
- package/dist/client/assets/{ai-providers-Bcx4_XEI.js → ai-providers-CJqDCuAR.js} +1 -1
- package/dist/client/assets/{alert-DV4VVYX_.js → alert-PPdejvI2.js} +1 -1
- package/dist/client/assets/{alert-dialog-C884MJiU.js → alert-dialog-ygFmYcOa.js} +1 -1
- package/dist/client/assets/{analytics-sections-BRVAxDPl.js → analytics-sections-CveDF2n6.js} +1 -1
- package/dist/client/assets/api-keys-BRV_KE0D.js +1 -0
- package/dist/client/assets/{api-keys-77z_zTHe.js → api-keys-CbBz_rxa.js} +1 -1
- package/dist/client/assets/{app-editor-D1Yz0-KZ.js → app-editor-Cio5Pq66.js} +1 -1
- package/dist/client/assets/{asset-utils-Bgywf85e.js → asset-utils-Duz2qYol.js} +1 -1
- package/dist/client/assets/{auth-BWk8-zOv.js → auth-BVkTFTOt.js} +1 -1
- package/dist/client/assets/{auth-catchall-Ba5IqUJT.js → auth-catchall-lx3pSppE.js} +1 -1
- package/dist/client/assets/{auth-entry-DtA-KX4U.js → auth-entry-Dz_b1brR.js} +1 -1
- package/dist/client/assets/{auth-split-layout-DlRuMXq_.js → auth-split-layout-CFlGWfV0.js} +1 -1
- package/dist/client/assets/{authenticate-and-persist-oauth-IsdfY2Pl.js → authenticate-and-persist-oauth-POYqGagt.js} +1 -1
- package/dist/client/assets/{automation-list-row-BLQDRByW.js → automation-list-row-C69hu-tr.js} +1 -1
- package/dist/client/assets/{automation-runs-CfNYuBTf.js → automation-runs-CefmsDTb.js} +1 -1
- package/dist/client/assets/{automations-ClBeWsXG.js → automations-C6R9dV-_.js} +1 -1
- package/dist/client/assets/{autosend-00EmkCtt.js → autosend-CL2OZPvg.js} +1 -1
- package/dist/client/assets/{avatar-DKDZgWFa.js → avatar-LfY3dprD.js} +1 -1
- package/dist/client/assets/{badge-Bmk8ti5E.js → badge-CyDHDRPg.js} +1 -1
- package/dist/client/assets/{block-document-DM_YLluw.js → block-document-Di6OpT4O.js} +1 -1
- package/dist/client/assets/{blocks-preview-workspace-context-DbDIw_fH.js → blocks-preview-workspace-context-DcqAhd0P.js} +1 -1
- package/dist/client/assets/{blocks-tab-states-CbP4bRnZ.js → blocks-tab-states-BjRnBrj4.js} +3 -3
- package/dist/client/assets/{blog-schema-CUk-sbP9.js → blog-schema-C2heOfy2.js} +1 -1
- package/dist/client/assets/{board-analytics-QLChF2Fg.js → board-analytics-fCGfPXJ7.js} +1 -1
- package/dist/client/assets/{buckets-CNsJAB6o.js → buckets-j1BXX0Sb.js} +1 -1
- package/dist/client/assets/{build-improve-prompt-doc-DJN4jxYS.js → build-improve-prompt-doc-BJrt-jCW.js} +1 -1
- package/dist/client/assets/{calendar-GjUu2S3w.js → calendar-sxNtZ9wG.js} +1 -1
- package/dist/client/assets/{capability-load-error-BVmBezr5.js → capability-load-error-CB4I7CRT.js} +1 -1
- package/dist/client/assets/{category-editor-BbN07orU.js → category-editor-D_K2FWTB.js} +1 -1
- package/dist/client/assets/{chart-Batu-asC.js → chart-NRF3lK-V.js} +1 -1
- package/dist/client/assets/{chat-context-0V74JN43.js → chat-context-Dv2E4fnf.js} +1 -1
- package/dist/client/assets/{chat-draft-b20iPSzq.js → chat-draft-X1dGJc2x.js} +1 -1
- package/dist/client/assets/{checkbox-FJR9GBSz.js → checkbox-CaUezNgL.js} +1 -1
- package/dist/client/assets/{choose-editor-B4AQNoUW.js → choose-editor-CDMfdVL-.js} +1 -1
- package/dist/client/assets/{cli-auth-success-B7oLHBHH.js → cli-auth-success-aITDjw-8.js} +1 -1
- package/dist/client/assets/{client-icons-Db2DsGLl.js → client-icons-DRk6JWY6.js} +1 -1
- package/dist/client/assets/cms-settings-editor-C_3APl39.js +1 -0
- package/dist/client/assets/{collapsible-BaAUa-uq.js → collapsible-DHXUZre4.js} +1 -1
- package/dist/client/assets/{collection-detail-BpTqwPQh.js → collection-detail-BXabjop0.js} +1 -1
- package/dist/client/assets/{collection-display-button-qOjw_9dn.js → collection-display-button-Cdfgosxf.js} +1 -1
- package/dist/client/assets/{collection-search-BvClByDx.js → collection-search-Dcze6ySb.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-DRrT-L4P.js → collection-table-wrapper-CWGTaBjx.js} +1 -1
- package/dist/client/assets/{collection-tabs-yyL7thvn.js → collection-tabs-yg6VVFu9.js} +1 -1
- package/dist/client/assets/{column-rules-oi7XUNCk.js → column-rules-C_Hndp-C.js} +1 -1
- package/dist/client/assets/{combobox-DMjnN_aL.js → combobox-B5xPQiKP.js} +1 -1
- package/dist/client/assets/{coming-soon-page-B0mfPnqP.js → coming-soon-page-DsS1SnMg.js} +1 -1
- package/dist/client/assets/{command-HQXCvIc1.js → command-KXg0ZuU-.js} +1 -1
- package/dist/client/assets/{companion-mcps-section-BE_rdnSM.js → companion-mcps-section-Da_S5Z-R.js} +1 -1
- package/dist/client/assets/{config-BPYy0PCN.js → config-UdFHLZs6.js} +1 -1
- package/dist/client/assets/{connect-DOJcei6R.js → connect-CsG4Vqc-.js} +1 -1
- package/dist/client/assets/{connect-layout-Cf6GuLdj.js → connect-layout-DE_So4kH.js} +1 -1
- package/dist/client/assets/{connection-BpKydrrq.js → connection-CEK3iDim.js} +1 -1
- package/dist/client/assets/{connection-card-IwdFS34P.js → connection-card-Zhg6xn7V.js} +1 -1
- package/dist/client/assets/{connection-detail-C2DKmrpZ.js → connection-detail-lT3XwVgT.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-BvKR417-.js → connection-form-helpers-DAFP702a.js} +1 -1
- package/dist/client/assets/{connections-BXBz-7gT.js → connections-Chwm450B.js} +1 -1
- package/dist/client/assets/{content-tab-D9fcn3Hp.js → content-tab-DYpKep2J.js} +3 -3
- package/dist/client/assets/{context-C-E2WXON.js → context-Bfj5rpO_.js} +1 -1
- package/dist/client/assets/{context-menu-TYrOMe5c.js → context-menu-BFA8rRfY.js} +1 -1
- package/dist/client/assets/{context-shell-On92TM5F.js → context-shell-CUCiFtf6.js} +3 -3
- package/dist/client/assets/{core.esm-CpQIzrUC.js → core.esm-BO316fgf.js} +1 -1
- package/dist/client/assets/{create-organization-dialog-DgF1IFc_.js → create-organization-dialog-Cb6YY9K7.js} +1 -1
- package/dist/client/assets/{daily-pulse-BOC5UzEe.js → daily-pulse-C0-1QTxZ.js} +1 -1
- package/dist/client/assets/{discover-BlLiIBf4.js → discover-BqgmKYIf.js} +1 -1
- package/dist/client/assets/{domain-settings-BDcWjcTo.js → domain-settings-B_QSN-on.js} +1 -1
- package/dist/client/assets/{drawer-DDevbGRy.js → drawer-DL0G-oy-.js} +1 -1
- package/dist/client/assets/{editor-DlDOOY_4.js → editor-B62-XQRE.js} +1 -1
- package/dist/client/assets/{editor-classes-BA-XOPn9.js → editor-classes-BAKuqcj0.js} +1 -1
- package/dist/client/assets/{empty-state-D0xYsV2u.js → empty-state-JTI0oLk7.js} +1 -1
- package/dist/client/assets/{empty-state-t0TjoYVp.js → empty-state-lzzC-d42.js} +1 -1
- package/dist/client/assets/{extract-connection-data-dh3iYmVg.js → extract-connection-data-BlmKelwb.js} +1 -1
- package/dist/client/assets/{feature-gate-BqkgE7TM.js → feature-gate-DQ2MNs-B.js} +1 -1
- package/dist/client/assets/{feature-paywall-BeChu0JL.js → feature-paywall-BSXK-EmV.js} +1 -1
- package/dist/client/assets/{file-explorer-DbsjbKj4.js → file-explorer-CcePNy3q.js} +1 -1
- package/dist/client/assets/{file-preview-BPilYeri.js → file-preview-DFkUyLsr.js} +1 -1
- package/dist/client/assets/{file-share-button-tFfE-sDm.js → file-share-button-CQ2Uf2PU.js} +1 -1
- package/dist/client/assets/{file-type-icon-CqiTsqkN.js → file-type-icon-HF5UcaS2.js} +1 -1
- package/dist/client/assets/flat-project-B3HLdqxT.js +1 -0
- package/dist/client/assets/{folder-icon-CqdHG3Ev.js → folder-icon-DaIPH_Nm.js} +1 -1
- package/dist/client/assets/{form-C2a6JNu4.js → form-DNjk4sZI.js} +1 -1
- package/dist/client/assets/{general-B_qz-x25.js → general-D2dbnN_J.js} +1 -1
- package/dist/client/assets/{home-Ctm57HqD.js → home-CvMudobI.js} +1 -1
- package/dist/client/assets/{hosted-publish-feedback-CtVznVdZ.js → hosted-publish-feedback-DtU7FOId.js} +1 -1
- package/dist/client/assets/{icon-button-C9jD2Hx3.js → icon-button-WP5IJTs8.js} +1 -1
- package/dist/client/assets/{index-F1Fq1aIw.js → index-B9qNCJbx.js} +1 -1
- package/dist/client/assets/{index-CEuerbGa.js → index-BaQyqQF-.js} +1 -1
- package/dist/client/assets/{index-DH5YV3Rc.js → index-BdR6LNyh.js} +1 -1
- package/dist/client/assets/{index-B6SVRi7N.js → index-C13QaLdF.js} +1 -1
- package/dist/client/assets/{index-BjKnuEDd.js → index-CVLOGr5B.js} +1 -1
- package/dist/client/assets/{index-DKA5Ly4T.js → index-ChfkzyhC.js} +3 -3
- package/dist/client/assets/{index-C5H0Wt50.js → index-D6gxSs-5.js} +1 -1
- package/dist/client/assets/{index-6Ue7sPGM.js → index-DAYXa7zL.js} +1 -1
- package/dist/client/assets/{index-BDybMsIS.js → index-DCOsLpC6.js} +1 -1
- package/dist/client/assets/{index-8f_vFFVa.js → index-DEQvnIsm.js} +6 -6
- package/dist/client/assets/{index-CYl6IUJL.js → index-DZLfyA8t.js} +1 -1
- package/dist/client/assets/{index-DZi1rH7e.js → index-DtysKpnb.js} +1 -1
- package/dist/client/assets/{index-D4devard.js → index-JvhyBpMR.js} +1 -1
- package/dist/client/assets/{index-CZ5aoytF.js → index-a-46Uqqs.js} +1 -1
- package/dist/client/assets/{index-CvDeki2h.js → index-mh7U_AKI.js} +1 -1
- package/dist/client/assets/{index-redirect-DJJ4lwhG.js → index-redirect-dS_ROPu1.js} +1 -1
- package/dist/client/assets/{index-CaC0mBls.js → index-wkvFsHpn.js} +1 -1
- package/dist/client/assets/{infiniteQueryObserver-DUxIIdhP.js → infiniteQueryObserver-BnP8vr6V.js} +1 -1
- package/dist/client/assets/{infra-billing-kH_OZb0R.js → infra-billing-BeLfFWAD.js} +1 -1
- package/dist/client/assets/{input-BhCR1Dvt.js → input-Brhdhig1.js} +7 -7
- package/dist/client/assets/{input-CTTf6mSe.js → input-Bu2Qzwzh.js} +1 -1
- package/dist/client/assets/{integration-icon-CjUkpUFA.js → integration-icon-Bysyldtc.js} +1 -1
- package/dist/client/assets/{jira-icon-BV6Nhy1J.js → jira-icon-DJANnyLA.js} +1 -1
- package/dist/client/assets/{label-DTdw4ToM.js → label-Cf2Qy475.js} +1 -1
- package/dist/client/assets/{layout-CRHpNA-L.js → layout-CQ47j80U.js} +1 -1
- package/dist/client/assets/{legacy-agents-deep-WWlJLiCC.js → legacy-agents-deep-BdSVZFZL.js} +1 -1
- package/dist/client/assets/{legacy-main-redirect-xsE3RuJ6.js → legacy-main-redirect-BaYQkGoI.js} +1 -1
- package/dist/client/assets/library-DTps1LzJ.js +1 -0
- package/dist/client/assets/{library-tab-BHuSO7Qk.js → library-tab-C2aU1qmT.js} +1 -1
- package/dist/client/assets/{login-B1XLhTh8.js → login-BCT_8F_z.js} +1 -1
- package/dist/client/assets/{markdown-gIWrkm71.js → markdown-DgDY2QmE.js} +1 -1
- package/dist/client/assets/{mcp-app-renderer-Cx5_Cgu7.js → mcp-app-renderer-pDbHkuXF.js} +1 -1
- package/dist/client/assets/{mcp-oauth-DJLJ4jjk.js → mcp-oauth-C_-ZUSLH.js} +1 -1
- package/dist/client/assets/{mcp-oauth-BCVDfjxS.js → mcp-oauth-aX1L4mRw.js} +1 -1
- package/dist/client/assets/{members-IeYYyp52.js → members-DNkbLBWU.js} +1 -1
- package/dist/client/assets/{memory-8PEu9ts-.js → memory-CWT1ZdIC.js} +1 -1
- package/dist/client/assets/{mini-report-page-zQ3aWwnQ.js → mini-report-page-aWQFmVFz.js} +1 -1
- package/dist/client/assets/{mock-board-BCunCtVN.js → mock-board-DWNU2n2-.js} +1 -1
- package/dist/client/assets/{monaco-editor-DKn4Wqed.js → monaco-editor-DDuHJmyY.js} +1 -1
- package/dist/client/assets/monitoring-Cvbt9Za_.js +1 -0
- package/dist/client/assets/{monitoring-stats-row-3Jmtoo1S.js → monitoring-stats-row-DyiPtUKv.js} +1 -1
- package/dist/client/assets/{multi-select-CGJa6-FA.js → multi-select-CfDYfsZ-.js} +1 -1
- package/dist/client/assets/{mustache-4NqYiukY.js → mustache-DrIjKpei.js} +1 -1
- package/dist/client/assets/{new-project-dialog-7fKdzYQ0.js → new-project-dialog-DKeFr4C7.js} +1 -1
- package/dist/client/assets/{oauth-callback-Ux7KLfo6.js → oauth-callback-B1G7saOE.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-BHpLfzCW.js → oauth-callback-ai-provider-mNgeHhki.js} +1 -1
- package/dist/client/assets/{onboarding-Bxi7_FIG.js → onboarding-kCa3Jkpy.js} +1 -1
- package/dist/client/assets/{openai-conversation-_BlnoTN9.js → openai-conversation-CLgg2Qod.js} +1 -1
- package/dist/client/assets/{optimistic-project-sidebar-views-Bq6xThGH.js → optimistic-project-sidebar-views-BaDUYmKF.js} +1 -1
- package/dist/client/assets/{order-monitor-day-B-gorx4b.js → order-monitor-day-C_yvKTz5.js} +1 -1
- package/dist/client/assets/{organization-choice-u2ufM7LR.js → organization-choice-BpI-_S8p.js} +1 -1
- package/dist/client/assets/{orgs-Q_88vgEa.js → orgs-BEJlYBbK.js} +1 -1
- package/dist/client/assets/{page-seo-form-CUUspMT0.js → page-seo-form-N1KKSZaU.js} +1 -1
- package/dist/client/assets/{pair-Da1JuUQW.js → pair-ByV0vAAs.js} +1 -1
- package/dist/client/assets/plan-BtuC_TCe.js +1 -0
- package/dist/client/assets/{plan-ladder--KlfKV0O.js → plan-ladder-CFysCUYy.js} +1 -1
- package/dist/client/assets/{popover-DkjgCDyk.js → popover-CjfUWaC0.js} +1 -1
- package/dist/client/assets/{post-calendar-CzWgDY6o.js → post-calendar-Bk6dx49G.js} +1 -1
- package/dist/client/assets/{post-editor-uOMVUWIp.js → post-editor-BUlsS3rc.js} +1 -1
- package/dist/client/assets/{preview-content-D6DnhkDr.js → preview-content-UW33EMCo.js} +1 -1
- package/dist/client/assets/{preview-dialog-Cz0QjPnU.js → preview-dialog-DWW9xaMT.js} +1 -1
- package/dist/client/assets/{preview-panel-D860QFoB.js → preview-panel-C2ZH3x01.js} +1 -1
- package/dist/client/assets/{preview-tab-BqXweaop.js → preview-tab-DsWFy6nY.js} +3 -3
- package/dist/client/assets/{product-picker-dialog-BzRtZ0Xh.js → product-picker-dialog-ERcYwJUp.js} +1 -1
- package/dist/client/assets/{profile-CaSyUNvq.js → profile-BxA_I2_7.js} +1 -1
- package/dist/client/assets/{project-app-view-DSjmraQa.js → project-app-view-D-3K5nUJ.js} +1 -1
- package/dist/client/assets/{project-apps-BNzfntH4.js → project-apps-D50B5nYg.js} +1 -1
- package/dist/client/assets/{project-feed-sOra10wH.js → project-feed-zQus1O7R.js} +1 -1
- package/dist/client/assets/{project-icon-DDLQLFHN.js → project-icon-ChTT5o1a.js} +1 -1
- package/dist/client/assets/project-reports-B3JoeeH6.js +1 -0
- package/dist/client/assets/project-tasks-UglBCJxC.js +1 -0
- package/dist/client/assets/{projects-DSQkMTlh.js → projects-CKCvSpxg.js} +1 -1
- package/dist/client/assets/{projects-empty-state-CgcVDMN1.js → projects-empty-state-SWDBQkN4.js} +1 -1
- package/dist/client/assets/{prompts-LsFvKrUX.js → prompts-oa8BoX1i.js} +1 -1
- package/dist/client/assets/record-editor-C4fMBCCz.js +1 -0
- package/dist/client/assets/{redirect-editor-js4vnIyF.js → redirect-editor-vQorNOA7.js} +1 -1
- package/dist/client/assets/reports-BTilnVW5.js +1 -0
- package/dist/client/assets/{reports-YZ_jyIpk.js → reports-BsyMPz_z.js} +1 -1
- package/dist/client/assets/{reports-onboarding-CD-oYnDP.js → reports-onboarding-PNNHl11L.js} +1 -1
- package/dist/client/assets/{reports-tab-BQ5w_NLe.js → reports-tab-DA_8UL9O.js} +2 -2
- package/dist/client/assets/repositories-BNK48Uq5.js +1 -0
- package/dist/client/assets/{repositories-AUaQi6Lg.js → repositories-BpTNBXai.js} +1 -1
- package/dist/client/assets/{repository-binding-DbCSIQ25.js → repository-binding-DpSh0bkT.js} +1 -1
- package/dist/client/assets/{repository-import-picker-BNXAK2-d.js → repository-import-picker-CmGbASze.js} +1 -1
- package/dist/client/assets/{repository-picker-DdXZfSFi.js → repository-picker-C86kcY-U.js} +1 -1
- package/dist/client/assets/{require-capability-KC9Pz6jZ.js → require-capability-D4dR1lZc.js} +1 -1
- package/dist/client/assets/{required-auth-layout-yR_GLYbd.js → required-auth-layout-RW5dOh2c.js} +1 -1
- package/dist/client/assets/{reset-password-BdTHHMoh.js → reset-password-lP2OGZgV.js} +1 -1
- package/dist/client/assets/{resizable-CZG2RiqM.js → resizable-DueLEUEm.js} +1 -1
- package/dist/client/assets/{resolve-tab-icon-CjkK_zYj.js → resolve-tab-icon-B66mDW53.js} +1 -1
- package/dist/client/assets/{review-settings-DqAJTW90.js → review-settings-JhWFefH3.js} +1 -1
- package/dist/client/assets/{roles-sjKQ_yFr.js → roles-CT2aKtzc.js} +1 -1
- package/dist/client/assets/{route-BFrqyY7M.js → route-C6Ybfjjx.js} +1 -1
- package/dist/client/assets/route-CQTsC5_0.js +1 -0
- package/dist/client/assets/{route-02oV_rQq.js → route-K-xr6t6Y.js} +1 -1
- package/dist/client/assets/{sandbox-lifecycle-context-DR_2NQXy.js → sandbox-lifecycle-context-BIf8-4ZY.js} +1 -1
- package/dist/client/assets/{schema-DqvEKlh8.js → schema-Bcb37BRV.js} +1 -1
- package/dist/client/assets/{schema-B0rKeG_L.js → schema-BzqS-kNt.js} +1 -1
- package/dist/client/assets/{scroll-area-CxMQI3lN.js → scroll-area-CIRLWlOA.js} +1 -1
- package/dist/client/assets/{search-input-CUDMkzW3.js → search-input-Br9i_Ft5.js} +1 -1
- package/dist/client/assets/{search-toggle-DQNLDkeN.js → search-toggle-Dj92h38-.js} +1 -1
- package/dist/client/assets/{secret-ciphertext-Cwn7ogUH.js → secret-ciphertext-6VBjcV3b.js} +1 -1
- package/dist/client/assets/{secret-picker-DB8u6Egh.js → secret-picker-NhuvO0ke.js} +1 -1
- package/dist/client/assets/{secrets-5Kc02H3G.js → secrets-D4GRsD5W.js} +1 -1
- package/dist/client/assets/{sections-DrN4NbyG.js → sections-DzoS45qS.js} +1 -1
- package/dist/client/assets/{sections-editor-DNUBhdzI.js → sections-editor-C_iMM594.js} +1 -1
- package/dist/client/assets/{select-CD39mfCB.js → select-ChqJI0MI.js} +1 -1
- package/dist/client/assets/{select-model-nIvZx6mv.js → select-model-CzvrFpf6.js} +1 -1
- package/dist/client/assets/{seo-editor-DJq3zWnQ.js → seo-editor-DUiWy8Gm.js} +1 -1
- package/dist/client/assets/{separator-G8XO4ZVv.js → separator-5oK4b-Mi.js} +1 -1
- package/dist/client/assets/settings-tab-C1pr-l9r.js +1 -0
- package/dist/client/assets/{sheet-EnE9wqRk.js → sheet-CzJFx6b-.js} +1 -1
- package/dist/client/assets/{shell-layout-BPP608jE.js → shell-layout-DKGS0yWx.js} +1 -1
- package/dist/client/assets/site-editor-Bl1xnqtg.js +1 -0
- package/dist/client/assets/{site-editor-toast-D3wQqSbx.js → site-editor-toast-CmNIWnCw.js} +1 -1
- package/dist/client/assets/{skills-CiOFCiY2.js → skills-DEb_PUzK.js} +1 -1
- package/dist/client/assets/{slider-CUo-tkVk.js → slider-BBmtNfbs.js} +1 -1
- package/dist/client/assets/{sortable.esm-CVfxAykx.js → sortable.esm-BuCSUlOk.js} +1 -1
- package/dist/client/assets/{sso-D5Sp0hWe.js → sso-DX8PZk1N.js} +1 -1
- package/dist/client/assets/{suggestion-DoQ2WmJO.js → suggestion-DRP05M3-.js} +1 -1
- package/dist/client/assets/{switch-CnVsSUQF.js → switch-CJc_fIEE.js} +1 -1
- package/dist/client/assets/{symbol-DoarKbx_.js → symbol-C1zrmwNF.js} +1 -1
- package/dist/client/assets/{synced-repos-Cg3chrWr.js → synced-repos-GT8waIWj.js} +1 -1
- package/dist/client/assets/{tab-icon-glyph-Bo6d63je.js → tab-icon-glyph-D6mZxF_9.js} +1 -1
- package/dist/client/assets/{table-BRoMxHYw.js → table-CltsOK_0.js} +1 -1
- package/dist/client/assets/{tabs-DRVG225q.js → tabs-D0oiuUhC.js} +1 -1
- package/dist/client/assets/{task-assignee-avatar-CQcT6saR.js → task-assignee-avatar-BfUNDI59.js} +1 -1
- package/dist/client/assets/{task-board-CYLfSrEW.js → task-board-DUTGhEiC.js} +1 -1
- package/dist/client/assets/{task-route-vO53W0Ko.js → task-route-BpmTIbg4.js} +1 -1
- package/dist/client/assets/{task-status-F4H3Ga9G.js → task-status-C72thlpO.js} +1 -1
- package/dist/client/assets/taskboard-analytics-DG4Zz1H_.js +1 -0
- package/dist/client/assets/{tasks-Bt9wXPlt.js → tasks-Cf4EZXG5.js} +1 -1
- package/dist/client/assets/tasks-D-91kNhg.js +1 -0
- package/dist/client/assets/{textarea-CKgIiSeB.js → textarea-CWgoXXnV.js} +1 -1
- package/dist/client/assets/{thread-analytics-or-g-yCI.js → thread-analytics-BjWUFe-q.js} +1 -1
- package/dist/client/assets/{thread-intent-pizqUsAw.js → thread-intent-8kpZLcDE.js} +1 -1
- package/dist/client/assets/{thread-route-RN7dQnhv.js → thread-route-B_SMytnm.js} +1 -1
- package/dist/client/assets/{thread-route-qt3bqNNd.js → thread-route-DTbE-Col.js} +1 -1
- package/dist/client/assets/{thread-sheet-body-CNNUBoOL.js → thread-sheet-body-OnJZloqZ.js} +1 -1
- package/dist/client/assets/{time-range-picker-Do6bf1fb.js → time-range-picker-BJ8aJbM7.js} +1 -1
- package/dist/client/assets/{toggle-group-BflgkGO4.js → toggle-group-BWQRN38D.js} +1 -1
- package/dist/client/assets/{tool-namespace-C8V5CWK9.js → tool-namespace-CTeV292R.js} +1 -1
- package/dist/client/assets/{toolbar-icon-button-BKf8C7rk.js → toolbar-icon-button-BypH-a8F.js} +1 -1
- package/dist/client/assets/{tooltip-UP0IE2Tr.js → tooltip-B6NbTX5P.js} +1 -1
- package/dist/client/assets/{tooltipContext-Cp5fQVar.js → tooltipContext-DNlXAkZZ.js} +1 -1
- package/dist/client/assets/{track-B3_MOgCa.js → track-B0UUbkCz.js} +1 -1
- package/dist/client/assets/{types-ODqpEiLj.js → types-m1Dsi5sG.js} +1 -1
- package/dist/client/assets/{url-slug-D457Gzas.js → url-slug-CYvqbzge.js} +1 -1
- package/dist/client/assets/{usage-stats-BJ2G_LxU.js → usage-stats-BH4bqLoE.js} +1 -1
- package/dist/client/assets/{use-ai-providers-CNozmlYS.js → use-ai-providers-W2Q5vYCk.js} +1 -1
- package/dist/client/assets/{use-automations-SYapFBvC.js → use-automations-Q-O37R-p.js} +1 -1
- package/dist/client/assets/{use-autosave-7cTC6S23.js → use-autosave-BWJWTtk0.js} +1 -1
- package/dist/client/assets/{use-chat-layout-state-CS60364s.js → use-chat-layout-state-C-XHZ0Dd.js} +1 -1
- package/dist/client/assets/{use-clock-tick-Bn5JCPrV.js → use-clock-tick-xpCK7CUB.js} +1 -1
- package/dist/client/assets/{use-connect-companion-Bpzill-_.js → use-connect-companion-DJ8vj1p7.js} +1 -1
- package/dist/client/assets/{use-connection-Dbx4XQH4.js → use-connection-Cqf7M1G6.js} +1 -1
- package/dist/client/assets/{use-content-sync-CXWC9odL.js → use-content-sync-D6XyiV7H.js} +1 -1
- package/dist/client/assets/{use-copy-BcbcC4Wz.js → use-copy-Dkgb0DtI.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-XIxu-PVm.js → use-create-virtual-mcp-BZx-8s-I.js} +1 -1
- package/dist/client/assets/{use-date-fns-locale-BPuP1KRV.js → use-date-fns-locale-B1aPt2Gv.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-DJFJgv7S.js → use-debounced-autosave-Qji0VG0D.js} +1 -1
- package/dist/client/assets/{use-debounced-value-BcnQYbv8.js → use-debounced-value-vhgvmVq4.js} +1 -1
- package/dist/client/assets/{use-deco-credits-sH8JcXii.js → use-deco-credits-k0aTLB-T.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-DnweVhcO.js → use-decopilot-events-Czwn8ZVj.js} +1 -1
- package/dist/client/assets/{use-delete-connection-DkV3GtTv.js → use-delete-connection-DbRA1FXb.js} +1 -1
- package/dist/client/assets/{use-deployment-admin-CeuCnmzX.js → use-deployment-admin-BrGfiqwj.js} +1 -1
- package/dist/client/assets/{use-ensure-project-folder-DCSsD6mp.js → use-ensure-project-folder-BvOs3JKp.js} +1 -1
- package/dist/client/assets/{use-fast-preview-draft-url-Bm81iT9U.js → use-fast-preview-draft-url-oDwhtnfP.js} +1 -1
- package/dist/client/assets/{use-file-configs-DBaPVWpT.js → use-file-configs-BIHMmAjW.js} +1 -1
- package/dist/client/assets/{use-inbox-feed-BpXgn0oj.js → use-inbox-feed-SkFacTLx.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-C3Owd_r6.js → use-infinite-scroll-B9sczgXI.js} +1 -1
- package/dist/client/assets/{use-join-requests-mMEcdIqR.js → use-join-requests-DALj-BO-.js} +1 -1
- package/dist/client/assets/{use-main-panel-tabs-BPcXXbeG.js → use-main-panel-tabs-Cv3Ydqwx.js} +1 -1
- package/dist/client/assets/{use-main-schema-v8-DQ3Tp7hb.js → use-main-schema-v8-Jzc_7tOC.js} +1 -1
- package/dist/client/assets/{use-mcp-auth-status-HN52RbO4.js → use-mcp-auth-status-BKawZyTw.js} +1 -1
- package/dist/client/assets/{use-mcp-client-GXi3d-TN.js → use-mcp-client-CAdgJ_QT.js} +1 -1
- package/dist/client/assets/{use-mcp-prompts-DYr_PMFD.js → use-mcp-prompts-D1rnFTSb.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-1_L9lL6N.js → use-mcp-tools-CPGj7A6a.js} +1 -1
- package/dist/client/assets/{use-members-C4hziWH9.js → use-members-D-L919KG.js} +1 -1
- package/dist/client/assets/{use-mobile-7XbQJiX0.js → use-mobile-CSFJ-mhK.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-Bh1luKWv.js → use-navigate-to-agent-B-QlLf3R.js} +1 -1
- package/dist/client/assets/{use-open-billing-url-CbfiZ6nK.js → use-open-billing-url-DWsw6Alp.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-CXEz66O9.js → use-org-auth-client-Co_fa5Pp.js} +1 -1
- package/dist/client/assets/{use-org-fs-BdAqd8Rv.js → use-org-fs-CAwgni1d.js} +1 -1
- package/dist/client/assets/{use-org-repo-syncs-uQXeH0Jz.js → use-org-repo-syncs-Cxt6puu1.js} +1 -1
- package/dist/client/assets/{use-org-sso-CAhUTOPh.js → use-org-sso-BhMczCH6.js} +1 -1
- package/dist/client/assets/{use-organization-roles-BuYemyb5.js → use-organization-roles-DZJHfOlV.js} +1 -1
- package/dist/client/assets/{use-organization-settings-Toq_f_Mz.js → use-organization-settings-BtOReG0H.js} +1 -1
- package/dist/client/assets/{use-panel-navigate-CLNhl3ki.js → use-panel-navigate-BwwjvhNB.js} +1 -1
- package/dist/client/assets/{use-project-native-view-presence-B7KEsCj_.js → use-project-native-view-presence-D4pR1T7b.js} +1 -1
- package/dist/client/assets/{use-project-scope-IOK1T5p5.js → use-project-scope-Dn4doId4.js} +1 -1
- package/dist/client/assets/{use-recent-apps-DyohzVX8.js → use-recent-apps-B_BFFpi_.js} +1 -1
- package/dist/client/assets/{use-releases-yUP6RI_5.js → use-releases-DoIKvYCz.js} +1 -1
- package/dist/client/assets/{use-reports-diagnostic-Dx09lDp9.js → use-reports-diagnostic-COAemppC.js} +1 -1
- package/dist/client/assets/{use-secrets-CwVJb7xf.js → use-secrets-CA-kSu-4.js} +1 -1
- package/dist/client/assets/{use-section-preview-base-C21P5QN6.js → use-section-preview-base-DAksxTnD.js} +1 -1
- package/dist/client/assets/{use-sidebar-collapsed-CA2jDAa-.js → use-sidebar-collapsed-Dv10z2iu.js} +1 -1
- package/dist/client/assets/{use-tags-B6X9pJd5.js → use-tags-CUZ9CIka.js} +1 -1
- package/dist/client/assets/{use-task-board-analytics-RsYdGMIC.js → use-task-board-analytics-34pQYq8w.js} +1 -1
- package/dist/client/assets/{use-task-board-events-DphBWYih.js → use-task-board-events-CmYlpSMI.js} +1 -1
- package/dist/client/assets/{use-task-board-item-prs-wBGqnWKt.js → use-task-board-item-prs-Cu4afbvW.js} +1 -1
- package/dist/client/assets/{use-task-metadata-BKurahZz.js → use-task-metadata-C0A64pXU.js} +1 -1
- package/dist/client/assets/{use-thread-analytics-DCrr7FKS.js → use-thread-analytics-DXbq3gl0.js} +1 -1
- package/dist/client/assets/{use-thread-outputs-CIGWCWtQ.js → use-thread-outputs-BUN4R0HD.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-Bo5dbMM_.js +1 -0
- package/dist/client/assets/{useQueries-CSpn2OpV.js → useQueries-DNx9dZks.js} +1 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-CcFcpWuM.js +1 -0
- package/dist/client/assets/{users-CEoww2_1.js → users-DWxowv8y.js} +1 -1
- package/dist/client/assets/{utils-2rl9BEeu.js → utils-D-52h1Lf.js} +1 -1
- package/dist/client/assets/{variant-calendar-D-cEXz9T.js → variant-calendar-BQESjgmt.js} +1 -1
- package/dist/client/assets/{variant-draft-pointer-yGSVhJlH.js → variant-draft-pointer-BY7yWri4.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-UGzYIEFg.js → view-mode-toggle-Bgum-rnB.js} +1 -1
- package/dist/client/assets/{virtual-mcp-DJrUra0R.js → virtual-mcp-CPoLjKOt.js} +1 -1
- package/dist/client/assets/{watch-sse-pool-BF6OquCU.js → watch-sse-pool-C7xRCtu5.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/server/server.js +1 -1
- package/package.json +1 -1
- package/dist/client/assets/agent-app-BpE-oLAW.js +0 -1
- package/dist/client/assets/agent-deck-BLI_AFXm.js +0 -1
- package/dist/client/assets/agent-file-Cdh_qco_.js +0 -1
- package/dist/client/assets/agent-library--bem7YGi.js +0 -1
- package/dist/client/assets/agent-library-file-CkXwnu9_.js +0 -1
- package/dist/client/assets/agent-settings-Dd_ntOEj.js +0 -1
- package/dist/client/assets/agent-site-editor-code-CNBje50_.js +0 -2
- package/dist/client/assets/agent-site-editor-content-ClbNQtwa.js +0 -1
- package/dist/client/assets/agent-site-editor-preview-DwLqOSDR.js +0 -1
- package/dist/client/assets/agent-view-AVtmtnDB.js +0 -1
- package/dist/client/assets/api-keys-Bl6Bc96G.js +0 -1
- package/dist/client/assets/cms-settings-editor-bH28Cwco.js +0 -1
- package/dist/client/assets/flat-project-B8clA1X9.js +0 -1
- package/dist/client/assets/library-DKPNWFrQ.js +0 -1
- package/dist/client/assets/monitoring-COl6Otnm.js +0 -1
- package/dist/client/assets/plan-DTu4f1lM.js +0 -1
- package/dist/client/assets/project-reports-BRXQTs8U.js +0 -1
- package/dist/client/assets/project-tasks-C1jXBWPU.js +0 -1
- package/dist/client/assets/record-editor-DNnWgGZk.js +0 -1
- package/dist/client/assets/reports-BRc7lcn2.js +0 -1
- package/dist/client/assets/repositories-BeYoVJCK.js +0 -1
- package/dist/client/assets/route-BQjTTZG2.js +0 -1
- package/dist/client/assets/settings-tab-CjHjlnds.js +0 -1
- package/dist/client/assets/site-editor-CDy9Dqbl.js +0 -1
- package/dist/client/assets/taskboard-analytics-B2r791B3.js +0 -1
- package/dist/client/assets/tasks-DOI54OO2.js +0 -1
- package/dist/client/assets/useInfiniteQuery-Z2Fpq8_2.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-BK8FDRCQ.js +0 -1
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/openai-conversation-
|
|
2
|
-
import{b0 as ze,c as R,b as K,r as P,l as $,j as n,aX as at,aF as re,bW as Lt,aG as oe,bV as Oe,B as W,aE as Cs,aD as Ns,cZ as Is,bU as Ts,F as Se,b9 as _s,dX as we,dY as gt,an as Ms,e as Ds,I as Rs,t as Le,y as te,a2 as Ce,d as lt,af as Vt,v as Es,aM as Ps,s as Us,q as Ls,D as Fs,dU as zs,a3 as Os,K as $s,m as Bs,X as Ks,T as qs,V as Qs,U as ye,at as xt,ar as vt,as as bt,h as Ys,aT as Ws,aS as Gs,av as Hs,cY as Js,d1 as je,aY as Zs,d3 as Xs,aZ as At,b2 as en,a as tn,au as sn,aw as nn,aL as nt,ad as Ft,b_ as on,aR as rn}from"./index-8f_vFFVa.js";import{i as zt,c as an,d as ln,e as Ot,P as Vn,f as cn,S as dn}from"./usage-stats-BJ2G_LxU.js";import{s as $t}from"./XClose-DFp85o1X.js";import{I as un}from"./icon-button-C9jD2Hx3.js";import{F as pn}from"./file-type-icon-CqiTsqkN.js";import{u as Ge,b as $e,m as fn,c as He,d as Je,j as hn,n as mn,o as gn,q as xn,v as vn,x as bn,y as An,z as yn,f as jn,s as kn,e as wn}from"./chat-context-0V74JN43.js";import{b as Sn}from"./location-BjlyegC2.js";import{d as Cn,K as Nn,b as In}from"./shell-layout-BPP608jE.js";import{a as Bt}from"./repository-binding-DbCSIQ25.js";import{A as Tn,w as _n}from"./autosend-00EmkCtt.js";import{s as Mn,r as yt,i as Dn,c as Rn,w as En,H as Pn}from"./chat-draft-b20iPSzq.js";import{r as Un,d as Ln,f as Fn,h as zn,t as On,z as $n,n as Bn,c as Kn}from"./thread-intent-pizqUsAw.js";import{i as Kt}from"./LinkBroken01-XQhOMQAy.js";import{i as qt}from"./ArrowUp-D5AH9Pcx.js";import{n as Qt}from"./ShoppingBag01-DZQO7QtG.js";import{t as Ze,aL as Yt,a8 as Wt,aM as ot,f as ct,aB as qn,E as Qn,aN as Yn,u as Gt,aO as Ht,a1 as Wn,aP as Gn}from"./agent-icon-DtUVrwO-.js";import{a as Jt}from"./Image01-DRhv7dXw.js";import{h as Hn}from"./UserSquare-4I8cSrJU.js";import{i as Jn}from"./Upload01-zDvi7WnN.js";import{i as Zn}from"./AlertCircle-DGyqrcs1.js";import{a as Xn}from"./Copy01-CgH6S_M4.js";import{a as rt,b as dt,d as ut,f as pt,F as Zt}from"./form-C2a6JNu4.js";import{c as eo,S as to,b as so,a as no,d as oo}from"./select-CD39mfCB.js";import{t as Xt}from"./ChevronUp-COqs90Hs.js";import{T as Xe,a as et,c as tt}from"./tooltip-UP0IE2Tr.js";import{i as ro}from"./ArrowLeft-eYPah7GY.js";import{c as io,b as ao}from"./tabs-DRVG225q.js";import{e as Be,f as lo,c as Vo,g as co}from"./use-decopilot-events-DnweVhcO.js";import{u as uo}from"./use-deco-credits-sH8JcXii.js";import{T as jt,a as po}from"./toggle-group-BflgkGO4.js";import{a as fo,d as ho,g as kt,s as mo}from"./tool-namespace-C8V5CWK9.js";import{t as go}from"./utils-CVEq3hMx.js";import{u as xo}from"./use-open-billing-url-CbfiZ6nK.js";import{M as vo,a as bo,m as ft,g as Ao,b as yo}from"./index-CYl6IUJL.js";import{a as es,b as ts,P as ss}from"./popover-DkjgCDyk.js";import{c as jo,b as ko,a as wo,D as So}from"./drawer-DDevbGRy.js";import{u as ns}from"./use-mobile-7XbQJiX0.js";import{t as Co}from"./Tool01-BgkFSAcX.js";import{d as No,a as Io}from"./use-organization-settings-Toq_f_Mz.js";import{u as os,c as To,d as _o}from"./use-ai-providers-CNozmlYS.js";import{p as rs,u as Mo,T as Do,a as Ro,U as Eo}from"./input-CTTf6mSe.js";import{a as Po}from"./use-mcp-client-GXi3d-TN.js";import{l as Uo,g as Lo}from"./use-mcp-prompts-DYr_PMFD.js";import{i as Fo}from"./Link01-D-kjAU9F.js";import{s as wt}from"./Plus-BqeqBPMZ.js";import"./suggestion-DoQ2WmJO.js";import{p as zo,q as Oo}from"./question-004-sINsf4GQ.js";import{A as $o}from"./avatar-DKDZgWFa.js";import{u as Bo}from"./use-members-C4hziWH9.js";import{F as St}from"./feature-paywall-BeChu0JL.js";import{A as Ko}from"./add-connection-dialog-B8d5rNLA.js";import{u as qo}from"./use-task-board-events-DphBWYih.js";import{r as Qo}from"./use-chat-layout-state-CS60364s.js";const Yo=ze("Headphones",[["path",{d:"M3 14h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-7a9 9 0 0 1 18 0v7a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3",key:"1xhozi"}]]);const Wo=ze("MessageSquare",[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}]]);const Go=ze("MicOff",[["line",{x1:"2",x2:"22",y1:"2",y2:"22",key:"a6p6uj"}],["path",{d:"M18.89 13.23A7.12 7.12 0 0 0 19 12v-2",key:"80xlxr"}],["path",{d:"M5 10v2a7 7 0 0 0 12 5",key:"p2k8kg"}],["path",{d:"M15 9.34V5a3 3 0 0 0-5.68-1.33",key:"1gzdoj"}],["path",{d:"M9 9v3a3 3 0 0 0 5.12 2.12",key:"r2i35w"}],["line",{x1:"12",x2:"12",y1:"19",y2:"22",key:"x3vr5v"}]]);const Ho=ze("Mic",[["path",{d:"M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z",key:"131961"}],["path",{d:"M19 10v2a7 7 0 0 1-14 0v-2",key:"1vc78b"}],["line",{x1:"12",x2:"12",y1:"19",y2:"22",key:"x3vr5v"}]]);const Jo=ze("Square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);function Zo(t){const e=R.c(14),s=Bt(t),o=Ge(),r=s?.metadata,i=o?.activeTask,a=i?.metadata?.runtime;let l;e[0]!==a?(l=zn(a),e[0]=a,e[1]=l):l=e[1];const c=l,d=!!i&&!i.partial,u=i?.metadata;let V;e[2]!==r||e[3]!==u?(V=Un(u,r),e[2]=r,e[3]=u,e[4]=V):V=e[4];const p=!!c||d&&!!s;let f;e[5]!==r?(f=Ln(r),e[5]=r,e[6]=f):f=e[6];let h;e[7]!==r?(h=Fn(r),e[7]=r,e[8]=h):h=e[8];let m;return e[9]!==V||e[10]!==p||e[11]!==f||e[12]!==h?(m={runtime:V,resolved:p,projectDefault:f,previewServerUrl:h},e[9]=V,e[10]=p,e[11]=f,e[12]=h,e[13]=m):m=e[13],m}const st="cubic-bezier(0.645, 0.045, 0.355, 1)",Vl=44,Xo={default:"",error:"isolate after:content-[''] after:absolute after:inset-0 after:rounded-xl after:bg-destructive/5 after:pointer-events-none after:-z-10",warning:"isolate after:content-[''] after:absolute after:inset-0 after:rounded-xl after:bg-warning/5 after:pointer-events-none after:-z-10"},er={default:"border-border",error:"border-destructive/30",warning:"border-warning/30"},tr={default:"text-muted-foreground",error:"text-destructive",warning:"text-warning"};function pe(t){const e=R.c(69),{icon:s,label:o,count:r,title:i,footerLeft:a,footerRight:l,children:c,defaultExpanded:d,variant:u,onClose:V}=t,p=u===void 0?"default":u,f=K(),[h,m]=P.useState(d),[g,x]=P.useState(!1);let v;e[0]!==V?(v=()=>{x(!0),V?.()},e[0]=V,e[1]=v):v=e[1];const b=v;if(g)return null;const j=er[p],A=Xo[p];let y;e[2]!==j||e[3]!==A?(y=$("relative flex flex-col rounded-xl bg-background border shadow-md","w-[calc(100%-16px)] max-w-[640px] mx-auto mb-2",j,A),e[2]=j,e[3]=A,e[4]=y):y=e[4];let k;e[5]===Symbol.for("react.memo_cache_sentinel")?(k=()=>m(sr),e[5]=k):k=e[5];const w=h&&"rounded-b-none",S=!h&&"rounded-b-xl";let C;e[6]!==w||e[7]!==S?(C=$("flex items-center gap-2 w-full px-3 py-2 text-sm text-left","hover:bg-accent/50 transition-colors rounded-t-xl",w,S),e[6]=w,e[7]=S,e[8]=C):C=e[8];const N=tr[p];let I;e[9]!==N?(I=$("shrink-0",N),e[9]=N,e[10]=I):I=e[10];let _;e[11]!==s||e[12]!==I?(_=n.jsx("span",{className:I,children:s}),e[11]=s,e[12]=I,e[13]=_):_=e[13];let E;e[14]!==o?(E=n.jsx("span",{className:"flex-1 min-w-0 truncate",children:o}),e[14]=o,e[15]=E):E=e[15];let U;e[16]!==r?(U=r?n.jsx("span",{className:"text-xs text-muted-foreground shrink-0",children:r}):null,e[16]=r,e[17]=U):U=e[17];const D=h?"rotate(180deg)":"rotate(0deg)";let T;e[18]!==D?(T=n.jsx("span",{"aria-hidden":"true",className:"text-muted-foreground shrink-0 flex items-center justify-center",children:n.jsx(Xt,{size:16,style:{transform:D,transition:`transform 180ms ${st}`}})}),e[18]=D,e[19]=T):T=e[19];let O;e[20]!==f?(O=f("chat.collapsibleHighlight.closeLabel"),e[20]=f,e[21]=O):O=e[21];let F;e[22]!==f?(F=f("chat.collapsibleHighlight.closeTitle"),e[22]=f,e[23]=F):F=e[23];let Q,z;e[24]!==b?(Q=ce=>{ce.stopPropagation(),b()},z=ce=>{(ce.key==="Enter"||ce.key===" ")&&(ce.preventDefault(),ce.stopPropagation(),b())},e[24]=b,e[25]=Q,e[26]=z):(Q=e[25],z=e[26]);let Y;e[27]===Symbol.for("react.memo_cache_sentinel")?(Y=n.jsx(at,{size:16}),e[27]=Y):Y=e[27];let L;e[28]!==O||e[29]!==F||e[30]!==Q||e[31]!==z?(L=n.jsx("span",{role:"button",tabIndex:0,"data-testid":"collapsible-highlight-close","aria-label":O,title:F,onClick:Q,onKeyDown:z,className:"text-muted-foreground hover:text-foreground transition-colors shrink-0 flex items-center justify-center -mr-1 ml-1 p-1 rounded-md hover:bg-accent",children:Y}),e[28]=O,e[29]=F,e[30]=Q,e[31]=z,e[32]=L):L=e[32];let H;e[33]!==h||e[34]!==_||e[35]!==E||e[36]!==U||e[37]!==T||e[38]!==L||e[39]!==C?(H=n.jsxs("button",{type:"button","data-testid":"collapsible-highlight-chip","aria-expanded":h,onClick:k,className:C,children:[_,E,U,T,L]}),e[33]=h,e[34]=_,e[35]=E,e[36]=U,e[37]=T,e[38]=L,e[39]=C,e[40]=H):H=e[40];const X=h?"1fr":"0fr";let Z;e[41]!==X?(Z={display:"grid",gridTemplateRows:X,transition:`grid-template-rows 180ms ${st}`},e[41]=X,e[42]=Z):Z=e[42];let ie;e[43]===Symbol.for("react.memo_cache_sentinel")?(ie={overflow:"hidden",minHeight:0},e[43]=ie):ie=e[43];const M=h?1:0;let B;e[44]!==M?(B={opacity:M,transition:`opacity 120ms ${st}`,maxHeight:"60vh"},e[44]=M,e[45]=B):B=e[45];let J;e[46]!==i?(J=i?n.jsx("div",{className:"flex items-start gap-2 px-4 pt-4 pb-5 border-t border-dashed border-border/60",children:n.jsx("p",{className:"flex-1 text-base font-medium text-foreground min-w-0",children:i})}):n.jsx("div",{className:"border-t border-dashed border-border/60"}),e[46]=i,e[47]=J):J=e[47];let se;e[48]!==c||e[49]!==i?(se=c?n.jsx("div",{className:$("pb-4",!i&&"pt-4"),children:c}):null,e[48]=c,e[49]=i,e[50]=se):se=e[50];let ee;e[51]!==J||e[52]!==se?(ee=n.jsxs("div",{className:"flex-1 min-h-0 overflow-y-auto",children:[J,se]}),e[51]=J,e[52]=se,e[53]=ee):ee=e[53];let le;e[54]!==a||e[55]!==l?(le=a||l?n.jsx("div",{className:"shrink-0 border-t border-border px-3 py-3 pb-6",children:n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsx("div",{children:a}),n.jsx("div",{className:"flex items-center gap-2",children:l})]})}):null,e[54]=a,e[55]=l,e[56]=le):le=e[56];let G;e[57]!==B||e[58]!==ee||e[59]!==le?(G=n.jsx("div",{style:ie,children:n.jsxs("div",{className:"flex flex-col",style:B,children:[ee,le]})}),e[57]=B,e[58]=ee,e[59]=le,e[60]=G):G=e[60];let ae;e[61]!==Z||e[62]!==G?(ae=n.jsx("div",{"data-testid":"collapsible-highlight-body",style:Z,children:G}),e[61]=Z,e[62]=G,e[63]=ae):ae=e[63];let Ve;return e[64]!==H||e[65]!==ae||e[66]!==y||e[67]!==p?(Ve=n.jsxs("div",{"data-testid":"collapsible-highlight","data-variant":p,className:y,children:[H,ae]}),e[64]=H,e[65]=ae,e[66]=y,e[67]=p,e[68]=Ve):Ve=e[68],Ve}function sr(t){return!t}const nr=re({content:oe().min(1).describe("Imperative form, e.g. 'Implement the login flow'"),status:Oe(["pending","in_progress","completed"]),activeForm:oe().min(1).describe("Present-continuous form shown in the UI while the todo is in progress, e.g. 'Implementing the login flow'")}),is=re({todos:Lt(nr)}),or="Plan and track multi-step work. Call with the FULL todo list every time — this replaces the prior list. Call at the start of every multi-step request. Skip only for true one-shots (a single tool call or a direct answer). Mark exactly one todo `in_progress` at a time. Flip a todo to `in_progress` before starting it and to `completed` the moment it finishes — do not batch completions. Your prior tool-call inputs are your current state — read your last call to see where you are.";On({description:or,inputSchema:$n(is),execute:async({todos:t})=>({ok:!0,count:t.length})});const rr="tool-todo_write",ir=new Set(["input-available","output-available"]);function ar(t){for(let e=t.length-1;e>=0;e--){const s=t[e];if(s.role!=="assistant")continue;const o=s.parts;if(Array.isArray(o))for(let r=o.length-1;r>=0;r--){const i=o[r];if(i.type!==rr||typeof i.state!="string"||!ir.has(i.state))continue;const a=is.safeParse(i.input);if(a.success)return a.data.todos}}return[]}function as(t){const e=[];for(const s of t)if("state"in s&&s.state==="approval-requested"&&"approval"in s&&s.approval?.id&&"toolCallId"in s&&s.toolCallId){const o="toolName"in s&&typeof s.toolName=="string"?s.toolName:s.type.startsWith("tool-")?s.type.replace("tool-",""):"Tool";e.push({approvalId:s.approval.id,toolCallId:s.toolCallId,toolName:o,friendlyName:go(fo(o)),input:s.input})}return e}function ls(t){return t.at(-1)}function Vs(t){const e=[];for(const s of t)s.type==="tool-propose_plan"&&s.state==="input-available"&&e.push({toolCallId:s.toolCallId,plan:s.input.plan,state:s.state});return e}function lr(t){return t?t.message.startsWith("[CREDITS]"):!1}const Vr={isCreditExhausted:!1,planRefusal:null,subscriptionErrorKind:null,hasTodos:!1,showError:!1,showWarning:!1,hasApprovals:!1,hasPlans:!1,isWaitingForUserInput:!1,hasTaskSuggestion:!1,todos:[]};function cr(t){const{messages:e,error:s,finishReason:o,isStreaming:r,isWaitingForApprovals:i}=t;if(!r&&s&&lr(s))return{...Vr,isCreditExhausted:!0};const a=e.at(-1),l=a?.role==="assistant"?a.parts:[],c=l,u=!!c.filter(y=>y.type==="tool-user_ask").filter(y=>y.state!=="output-available").length,V=c.some(zt),p=Vs(l),f=as(c),h=ar(e),m=r?null:Mn(s),g=r?null:Bn(s),x=!r&&!!s&&!m&&!g,v=f.length>0||r&&i,b=p.length>0,A=!r&&!!o&&o!=="stop"&&!(o==="tool-calls"&&(u||v||b||V))&&!x;return{isCreditExhausted:!1,planRefusal:g,subscriptionErrorKind:m,hasTodos:h.length>0,showError:x,showWarning:A,hasApprovals:v,hasPlans:b,isWaitingForUserInput:u,hasTaskSuggestion:V,todos:h}}function cs(){const t=R.c(6),{messages:e,error:s,finishReason:o,isStreaming:r,isWaitingForApprovals:i}=$e(),a=s??null,l=o??null;let c;return t[0]!==r||t[1]!==i||t[2]!==e||t[3]!==a||t[4]!==l?(c=cr({messages:e,error:a,finishReason:l,isStreaming:r,isWaitingForApprovals:i}),t[0]=r,t[1]=i,t[2]=e,t[3]=a,t[4]=l,t[5]=c):c=t[5],c}function cl(){const t=cs(),e=Be("credits");return t.isCreditExhausted?e?0:1:Number(t.hasTodos)+Number(t.showError)+ +!!t.subscriptionErrorKind+ +!!t.planRefusal+Number(t.showWarning)+Number(t.hasApprovals)+Number(t.hasPlans)+Number(t.isWaitingForUserInput)+Number(t.hasTaskSuggestion)}const Ct="start-task",dr=`Turn the report below into a running task. The user pressed "Start task", which authorizes delegation.
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/openai-conversation-CLgg2Qod.js","assets/index-DEQvnIsm.js","assets/index-pFm7t22i.css","assets/usage-stats-BH4bqLoE.js","assets/tool-namespace-CTeV292R.js","assets/form-DNjk4sZI.js","assets/label-Cf2Qy475.js","assets/utils-CVEq3hMx.js","assets/markdown-DgDY2QmE.js","assets/use-copy-Dkgb0DtI.js","assets/Copy01-EWitDFCf.js","assets/ZoomOut-B3s5275g.js","assets/location-BjlyegC2.js","assets/use-mobile-CSFJ-mhK.js","assets/use-panel-navigate-BwwjvhNB.js","assets/thread-route-DTbE-Col.js","assets/use-project-scope-Dn4doId4.js","assets/repository-binding-DpSh0bkT.js","assets/use-mcp-client-CAdgJ_QT.js","assets/auth-BVkTFTOt.js","assets/tooltip-B6NbTX5P.js","assets/index-BaQyqQF-.js","assets/agent-icon-D6wS7rd0.js","assets/AlertCircle-Q16nTVAa.js","assets/Tool01-Bp-TbrXi.js","assets/ArrowUp--4P0C-xl.js","assets/ArrowLeft-C_dTX_8N.js","assets/LinkBroken01-DmmKNgpp.js","assets/ShoppingBag01-B7gta_qY.js","assets/Building02-Gub-pr-8.js","assets/CheckCircle-CQxu_pm9.js","assets/ChevronUp-DK-Gvyk8.js","assets/ChevronSelectorVertical-GBLm8Zpl.js","assets/UserSquare-cdWcOBLL.js","assets/CreditCard01-wx_z4Iiz.js","assets/DotsVertical-DIT5hu2b.js","assets/Image01-BfGAREA7.js","assets/Globe04-B45_cBRN.js","assets/SwitchHorizontal01-BJyDDPw9.js","assets/Key01-BV7tzZs6.js","assets/Link01-9civFIb9.js","assets/Monitor01-BoSs_8gg.js","assets/Sun-BfjJa3ru.js","assets/Play-CleWZLOG.js","assets/Plus-DQf-jm_3.js","assets/SearchMd-D0zp0uee.js","assets/Trash01-Dlk_Sh-H.js","assets/Upload01-DlF9Jqso.js","assets/User01-BcekHhAV.js","assets/Users01-BIP-PxGt.js","assets/XClose-L_GNViCD.js","assets/format-time-Cq80KKvY.js","assets/differenceInSeconds-C3x8sHUj.js","assets/use-decopilot-events-Czwn8ZVj.js","assets/thread-intent-8kpZLcDE.js","assets/delay-CnY5UFtP.js","assets/backoff-CrEUbyZT.js","assets/watch-sse-pool-C7xRCtu5.js","assets/task-board-DUTGhEiC.js","assets/schema-BzqS-kNt.js","assets/slugify-CEUa2lfQ.js","assets/chat-context-Dv2E4fnf.js","assets/autosend-CL2OZPvg.js","assets/use-ai-providers-W2Q5vYCk.js","assets/use-organization-settings-BtOReG0H.js","assets/icon-button-WP5IJTs8.js","assets/file-type-icon-HF5UcaS2.js","assets/shell-layout-DKGS0yWx.js","assets/avatar-LfY3dprD.js","assets/use-clock-tick-xpCK7CUB.js","assets/command-KXg0ZuU-.js","assets/index-B9qNCJbx.js","assets/integration-icon-Bysyldtc.js","assets/project-icon-ChTT5o1a.js","assets/new-project-dialog-DKeFr4C7.js","assets/repository-import-picker-CmGbASze.js","assets/use-navigate-to-agent-B-QlLf3R.js","assets/repository-picker-C86kcY-U.js","assets/useInfiniteQuery-Bo5dbMM_.js","assets/infiniteQueryObserver-BnP8vr6V.js","assets/collection-search-Dcze6ySb.js","assets/use-debounced-value-vhgvmVq4.js","assets/required-auth-layout-RW5dOh2c.js","assets/use-org-sso-BhMczCH6.js","assets/shell-layout-CE2Eihra.css","assets/chat-draft-X1dGJc2x.js","assets/select-ChqJI0MI.js","assets/index-BdQq_4o_.js","assets/tabs-D0oiuUhC.js","assets/use-deco-credits-k0aTLB-T.js","assets/toggle-group-BWQRN38D.js","assets/use-open-billing-url-DWsw6Alp.js","assets/index-DZLfyA8t.js","assets/checkbox-CaUezNgL.js","assets/ai-providers-logos-DD3qZ33J.js","assets/popover-CjfUWaC0.js","assets/drawer-DL0G-oy-.js","assets/input-Bu2Qzwzh.js","assets/suggestion-DRP05M3-.js","assets/use-mcp-prompts-D1rnFTSb.js","assets/use-org-fs-CAwgni1d.js","assets/question-004-sINsf4GQ.js","assets/use-members-D-L919KG.js","assets/use-org-auth-client-Co_fa5Pp.js","assets/feature-paywall-BSXK-EmV.js","assets/plan-ladder-CFysCUYy.js","assets/add-connection-dialog-DwDvS8Uw.js","assets/extract-connection-data-BlmKelwb.js","assets/metadata-D72DunRR.js","assets/connection-CEK3iDim.js","assets/url-slug-CYvqbzge.js","assets/connection-card-Zhg6xn7V.js","assets/connection-slug-CITJ0kGN.js","assets/textarea-CWgoXXnV.js","assets/use-connection-Cqf7M1G6.js","assets/schema-Bcb37BRV.js","assets/connection-form-helpers-DAFP702a.js","assets/authenticate-and-persist-oauth-POYqGagt.js","assets/mcp-oauth-C_-ZUSLH.js","assets/mcp-oauth-aX1L4mRw.js","assets/collection-tabs-yg6VVFu9.js","assets/badge-CyDHDRPg.js","assets/use-infinite-scroll-B9sczgXI.js","assets/useSuspenseInfiniteQuery-CcFcpWuM.js","assets/use-task-board-events-CmYlpSMI.js","assets/use-chat-layout-state-C-XHZ0Dd.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{b0 as ze,c as R,b as K,r as P,l as $,j as n,aX as at,aF as re,bW as Lt,aG as oe,bV as Oe,B as W,aE as Cs,aD as Ns,cZ as Is,bU as Ts,F as Se,b9 as _s,dX as we,dY as gt,an as Ms,e as Ds,I as Rs,t as Le,y as te,a2 as Ce,d as lt,af as Vt,v as Es,aM as Ps,s as Us,q as Ls,D as Fs,dU as zs,a3 as Os,K as $s,m as Bs,X as Ks,T as qs,V as Qs,U as ye,at as xt,ar as vt,as as bt,h as Ys,aT as Ws,aS as Gs,av as Hs,cY as Js,d1 as je,aY as Zs,d3 as Xs,aZ as At,b2 as en,a as tn,au as sn,aw as nn,aL as nt,b_ as on,aR as rn,ad as Ft}from"./index-DEQvnIsm.js";import{i as zt,c as an,d as ln,e as Ot,P as Vn,f as cn,S as dn}from"./usage-stats-BH4bqLoE.js";import{s as $t}from"./XClose-L_GNViCD.js";import{I as un}from"./icon-button-WP5IJTs8.js";import{F as pn}from"./file-type-icon-HF5UcaS2.js";import{u as We,b as $e,m as fn,c as Ge,d as He,j as hn,n as mn,o as gn,q as xn,v as vn,x as bn,y as An,z as yn,f as jn,s as kn,e as wn}from"./chat-context-Dv2E4fnf.js";import{b as Sn}from"./location-BjlyegC2.js";import{d as Cn,K as Nn,b as In}from"./shell-layout-DKGS0yWx.js";import{a as Bt}from"./repository-binding-DpSh0bkT.js";import{A as Tn,w as _n}from"./autosend-CL2OZPvg.js";import{r as Mn,d as Dn,f as Rn,h as En,t as Pn,z as Un,n as Ln,c as Fn,w as zn,j as On}from"./thread-intent-8kpZLcDE.js";import{s as $n,r as yt,i as Bn,c as Kn,w as qn,H as Qn}from"./chat-draft-X1dGJc2x.js";import{i as Kt}from"./LinkBroken01-DmmKNgpp.js";import{i as qt}from"./ArrowUp--4P0C-xl.js";import{n as Qt}from"./ShoppingBag01-B7gta_qY.js";import{t as Je,aL as Yt,a8 as Wt,aM as ot,f as ct,aB as Yn,E as Wn,aN as Gn,u as Gt,aO as Ht,a1 as Hn,aP as Jn}from"./agent-icon-D6wS7rd0.js";import{a as Jt}from"./Image01-BfGAREA7.js";import{h as Zn}from"./UserSquare-cdWcOBLL.js";import{i as Xn}from"./Upload01-DlF9Jqso.js";import{i as eo}from"./AlertCircle-Q16nTVAa.js";import{a as to}from"./Copy01-EWitDFCf.js";import{a as rt,b as dt,d as ut,f as pt,F as Zt}from"./form-DNjk4sZI.js";import{c as so,S as no,b as oo,a as ro,d as io}from"./select-ChqJI0MI.js";import{t as Xt}from"./ChevronUp-DK-Gvyk8.js";import{T as Ze,a as Xe,c as et}from"./tooltip-B6NbTX5P.js";import{i as ao}from"./ArrowLeft-C_dTX_8N.js";import{c as lo,b as Vo}from"./tabs-D0oiuUhC.js";import{e as Be,f as co,c as uo,g as po}from"./use-decopilot-events-Czwn8ZVj.js";import{u as fo}from"./use-deco-credits-k0aTLB-T.js";import{T as jt,a as ho}from"./toggle-group-BWQRN38D.js";import{a as mo,d as go,g as kt,s as xo}from"./tool-namespace-CTeV292R.js";import{t as vo}from"./utils-CVEq3hMx.js";import{u as bo}from"./use-open-billing-url-DWsw6Alp.js";import{M as Ao,a as yo,m as ft,g as jo,b as ko}from"./index-DZLfyA8t.js";import{a as es,b as ts,P as ss}from"./popover-CjfUWaC0.js";import{c as wo,b as So,a as Co,D as No}from"./drawer-DL0G-oy-.js";import{u as ns}from"./use-mobile-CSFJ-mhK.js";import{t as Io}from"./Tool01-Bp-TbrXi.js";import{d as To,a as _o}from"./use-organization-settings-BtOReG0H.js";import{u as os,c as Mo,d as Do}from"./use-ai-providers-W2Q5vYCk.js";import{p as rs,u as Ro,T as Eo,a as Po,U as Uo}from"./input-Bu2Qzwzh.js";import{a as Lo}from"./use-mcp-client-CAdgJ_QT.js";import{l as Fo,g as zo}from"./use-mcp-prompts-D1rnFTSb.js";import{i as Oo}from"./Link01-9civFIb9.js";import{s as wt}from"./Plus-DQf-jm_3.js";import"./suggestion-DRP05M3-.js";import{p as $o,q as Bo}from"./question-004-sINsf4GQ.js";import{A as Ko}from"./avatar-LfY3dprD.js";import{u as qo}from"./use-members-D-L919KG.js";import{F as St}from"./feature-paywall-BSXK-EmV.js";import{A as Qo}from"./add-connection-dialog-DwDvS8Uw.js";import{u as Yo}from"./use-task-board-events-CmYlpSMI.js";import{r as Wo}from"./use-chat-layout-state-C-XHZ0Dd.js";const Go=ze("Headphones",[["path",{d:"M3 14h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-7a9 9 0 0 1 18 0v7a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3",key:"1xhozi"}]]);const Ho=ze("MessageSquare",[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}]]);const Jo=ze("MicOff",[["line",{x1:"2",x2:"22",y1:"2",y2:"22",key:"a6p6uj"}],["path",{d:"M18.89 13.23A7.12 7.12 0 0 0 19 12v-2",key:"80xlxr"}],["path",{d:"M5 10v2a7 7 0 0 0 12 5",key:"p2k8kg"}],["path",{d:"M15 9.34V5a3 3 0 0 0-5.68-1.33",key:"1gzdoj"}],["path",{d:"M9 9v3a3 3 0 0 0 5.12 2.12",key:"r2i35w"}],["line",{x1:"12",x2:"12",y1:"19",y2:"22",key:"x3vr5v"}]]);const Zo=ze("Mic",[["path",{d:"M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z",key:"131961"}],["path",{d:"M19 10v2a7 7 0 0 1-14 0v-2",key:"1vc78b"}],["line",{x1:"12",x2:"12",y1:"19",y2:"22",key:"x3vr5v"}]]);const Xo=ze("Square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);function er(t){const e=R.c(14),s=Bt(t),o=We(),r=s?.metadata,i=o?.activeTask,a=i?.metadata?.runtime;let l;e[0]!==a?(l=En(a),e[0]=a,e[1]=l):l=e[1];const c=l,d=!!i&&!i.partial,u=i?.metadata;let V;e[2]!==r||e[3]!==u?(V=Mn(u,r),e[2]=r,e[3]=u,e[4]=V):V=e[4];const p=!!c||d&&!!s;let f;e[5]!==r?(f=Dn(r),e[5]=r,e[6]=f):f=e[6];let h;e[7]!==r?(h=Rn(r),e[7]=r,e[8]=h):h=e[8];let m;return e[9]!==V||e[10]!==p||e[11]!==f||e[12]!==h?(m={runtime:V,resolved:p,projectDefault:f,previewServerUrl:h},e[9]=V,e[10]=p,e[11]=f,e[12]=h,e[13]=m):m=e[13],m}const tt="cubic-bezier(0.645, 0.045, 0.355, 1)",dl=44,tr={default:"",error:"isolate after:content-[''] after:absolute after:inset-0 after:rounded-xl after:bg-destructive/5 after:pointer-events-none after:-z-10",warning:"isolate after:content-[''] after:absolute after:inset-0 after:rounded-xl after:bg-warning/5 after:pointer-events-none after:-z-10"},sr={default:"border-border",error:"border-destructive/30",warning:"border-warning/30"},nr={default:"text-muted-foreground",error:"text-destructive",warning:"text-warning"};function pe(t){const e=R.c(69),{icon:s,label:o,count:r,title:i,footerLeft:a,footerRight:l,children:c,defaultExpanded:d,variant:u,onClose:V}=t,p=u===void 0?"default":u,f=K(),[h,m]=P.useState(d),[g,x]=P.useState(!1);let v;e[0]!==V?(v=()=>{x(!0),V?.()},e[0]=V,e[1]=v):v=e[1];const b=v;if(g)return null;const j=sr[p],A=tr[p];let y;e[2]!==j||e[3]!==A?(y=$("relative flex flex-col rounded-xl bg-background border shadow-md","w-[calc(100%-16px)] max-w-[640px] mx-auto mb-2",j,A),e[2]=j,e[3]=A,e[4]=y):y=e[4];let k;e[5]===Symbol.for("react.memo_cache_sentinel")?(k=()=>m(or),e[5]=k):k=e[5];const w=h&&"rounded-b-none",S=!h&&"rounded-b-xl";let C;e[6]!==w||e[7]!==S?(C=$("flex items-center gap-2 w-full px-3 py-2 text-sm text-left","hover:bg-accent/50 transition-colors rounded-t-xl",w,S),e[6]=w,e[7]=S,e[8]=C):C=e[8];const N=nr[p];let I;e[9]!==N?(I=$("shrink-0",N),e[9]=N,e[10]=I):I=e[10];let _;e[11]!==s||e[12]!==I?(_=n.jsx("span",{className:I,children:s}),e[11]=s,e[12]=I,e[13]=_):_=e[13];let E;e[14]!==o?(E=n.jsx("span",{className:"flex-1 min-w-0 truncate",children:o}),e[14]=o,e[15]=E):E=e[15];let U;e[16]!==r?(U=r?n.jsx("span",{className:"text-xs text-muted-foreground shrink-0",children:r}):null,e[16]=r,e[17]=U):U=e[17];const D=h?"rotate(180deg)":"rotate(0deg)";let T;e[18]!==D?(T=n.jsx("span",{"aria-hidden":"true",className:"text-muted-foreground shrink-0 flex items-center justify-center",children:n.jsx(Xt,{size:16,style:{transform:D,transition:`transform 180ms ${tt}`}})}),e[18]=D,e[19]=T):T=e[19];let O;e[20]!==f?(O=f("chat.collapsibleHighlight.closeLabel"),e[20]=f,e[21]=O):O=e[21];let F;e[22]!==f?(F=f("chat.collapsibleHighlight.closeTitle"),e[22]=f,e[23]=F):F=e[23];let Q,z;e[24]!==b?(Q=ce=>{ce.stopPropagation(),b()},z=ce=>{(ce.key==="Enter"||ce.key===" ")&&(ce.preventDefault(),ce.stopPropagation(),b())},e[24]=b,e[25]=Q,e[26]=z):(Q=e[25],z=e[26]);let Y;e[27]===Symbol.for("react.memo_cache_sentinel")?(Y=n.jsx(at,{size:16}),e[27]=Y):Y=e[27];let L;e[28]!==O||e[29]!==F||e[30]!==Q||e[31]!==z?(L=n.jsx("span",{role:"button",tabIndex:0,"data-testid":"collapsible-highlight-close","aria-label":O,title:F,onClick:Q,onKeyDown:z,className:"text-muted-foreground hover:text-foreground transition-colors shrink-0 flex items-center justify-center -mr-1 ml-1 p-1 rounded-md hover:bg-accent",children:Y}),e[28]=O,e[29]=F,e[30]=Q,e[31]=z,e[32]=L):L=e[32];let H;e[33]!==h||e[34]!==_||e[35]!==E||e[36]!==U||e[37]!==T||e[38]!==L||e[39]!==C?(H=n.jsxs("button",{type:"button","data-testid":"collapsible-highlight-chip","aria-expanded":h,onClick:k,className:C,children:[_,E,U,T,L]}),e[33]=h,e[34]=_,e[35]=E,e[36]=U,e[37]=T,e[38]=L,e[39]=C,e[40]=H):H=e[40];const X=h?"1fr":"0fr";let Z;e[41]!==X?(Z={display:"grid",gridTemplateRows:X,transition:`grid-template-rows 180ms ${tt}`},e[41]=X,e[42]=Z):Z=e[42];let ie;e[43]===Symbol.for("react.memo_cache_sentinel")?(ie={overflow:"hidden",minHeight:0},e[43]=ie):ie=e[43];const M=h?1:0;let B;e[44]!==M?(B={opacity:M,transition:`opacity 120ms ${tt}`,maxHeight:"60vh"},e[44]=M,e[45]=B):B=e[45];let J;e[46]!==i?(J=i?n.jsx("div",{className:"flex items-start gap-2 px-4 pt-4 pb-5 border-t border-dashed border-border/60",children:n.jsx("p",{className:"flex-1 text-base font-medium text-foreground min-w-0",children:i})}):n.jsx("div",{className:"border-t border-dashed border-border/60"}),e[46]=i,e[47]=J):J=e[47];let se;e[48]!==c||e[49]!==i?(se=c?n.jsx("div",{className:$("pb-4",!i&&"pt-4"),children:c}):null,e[48]=c,e[49]=i,e[50]=se):se=e[50];let ee;e[51]!==J||e[52]!==se?(ee=n.jsxs("div",{className:"flex-1 min-h-0 overflow-y-auto",children:[J,se]}),e[51]=J,e[52]=se,e[53]=ee):ee=e[53];let le;e[54]!==a||e[55]!==l?(le=a||l?n.jsx("div",{className:"shrink-0 border-t border-border px-3 py-3 pb-6",children:n.jsxs("div",{className:"flex items-center justify-between",children:[n.jsx("div",{children:a}),n.jsx("div",{className:"flex items-center gap-2",children:l})]})}):null,e[54]=a,e[55]=l,e[56]=le):le=e[56];let G;e[57]!==B||e[58]!==ee||e[59]!==le?(G=n.jsx("div",{style:ie,children:n.jsxs("div",{className:"flex flex-col",style:B,children:[ee,le]})}),e[57]=B,e[58]=ee,e[59]=le,e[60]=G):G=e[60];let ae;e[61]!==Z||e[62]!==G?(ae=n.jsx("div",{"data-testid":"collapsible-highlight-body",style:Z,children:G}),e[61]=Z,e[62]=G,e[63]=ae):ae=e[63];let Ve;return e[64]!==H||e[65]!==ae||e[66]!==y||e[67]!==p?(Ve=n.jsxs("div",{"data-testid":"collapsible-highlight","data-variant":p,className:y,children:[H,ae]}),e[64]=H,e[65]=ae,e[66]=y,e[67]=p,e[68]=Ve):Ve=e[68],Ve}function or(t){return!t}const rr=re({content:oe().min(1).describe("Imperative form, e.g. 'Implement the login flow'"),status:Oe(["pending","in_progress","completed"]),activeForm:oe().min(1).describe("Present-continuous form shown in the UI while the todo is in progress, e.g. 'Implementing the login flow'")}),is=re({todos:Lt(rr)}),ir="Plan and track multi-step work. Call with the FULL todo list every time — this replaces the prior list. Call at the start of every multi-step request. Skip only for true one-shots (a single tool call or a direct answer). Mark exactly one todo `in_progress` at a time. Flip a todo to `in_progress` before starting it and to `completed` the moment it finishes — do not batch completions. Your prior tool-call inputs are your current state — read your last call to see where you are.";Pn({description:ir,inputSchema:Un(is),execute:async({todos:t})=>({ok:!0,count:t.length})});const ar="tool-todo_write",lr=new Set(["input-available","output-available"]);function Vr(t){for(let e=t.length-1;e>=0;e--){const s=t[e];if(s.role!=="assistant")continue;const o=s.parts;if(Array.isArray(o))for(let r=o.length-1;r>=0;r--){const i=o[r];if(i.type!==ar||typeof i.state!="string"||!lr.has(i.state))continue;const a=is.safeParse(i.input);if(a.success)return a.data.todos}}return[]}function as(t){const e=[];for(const s of t)if("state"in s&&s.state==="approval-requested"&&"approval"in s&&s.approval?.id&&"toolCallId"in s&&s.toolCallId){const o="toolName"in s&&typeof s.toolName=="string"?s.toolName:s.type.startsWith("tool-")?s.type.replace("tool-",""):"Tool";e.push({approvalId:s.approval.id,toolCallId:s.toolCallId,toolName:o,friendlyName:vo(mo(o)),input:s.input})}return e}function ls(t){return t.at(-1)}function Vs(t){const e=[];for(const s of t)s.type==="tool-propose_plan"&&s.state==="input-available"&&e.push({toolCallId:s.toolCallId,plan:s.input.plan,state:s.state});return e}function cr(t){return t?t.message.startsWith("[CREDITS]"):!1}const dr={isCreditExhausted:!1,planRefusal:null,subscriptionErrorKind:null,hasTodos:!1,showError:!1,showWarning:!1,hasApprovals:!1,hasPlans:!1,isWaitingForUserInput:!1,hasTaskSuggestion:!1,todos:[]};function ur(t){const{messages:e,error:s,finishReason:o,isStreaming:r,isWaitingForApprovals:i}=t;if(!r&&s&&cr(s))return{...dr,isCreditExhausted:!0};const a=e.at(-1),l=a?.role==="assistant"?a.parts:[],c=l,u=!!c.filter(y=>y.type==="tool-user_ask").filter(y=>y.state!=="output-available").length,V=c.some(zt),p=Vs(l),f=as(c),h=Vr(e),m=r?null:$n(s),g=r?null:Ln(s),x=!r&&!!s&&!m&&!g,v=f.length>0||r&&i,b=p.length>0,A=!r&&!!o&&o!=="stop"&&!(o==="tool-calls"&&(u||v||b||V))&&!x;return{isCreditExhausted:!1,planRefusal:g,subscriptionErrorKind:m,hasTodos:h.length>0,showError:x,showWarning:A,hasApprovals:v,hasPlans:b,isWaitingForUserInput:u,hasTaskSuggestion:V,todos:h}}function cs(){const t=R.c(6),{messages:e,error:s,finishReason:o,isStreaming:r,isWaitingForApprovals:i}=$e(),a=s??null,l=o??null;let c;return t[0]!==r||t[1]!==i||t[2]!==e||t[3]!==a||t[4]!==l?(c=ur({messages:e,error:a,finishReason:l,isStreaming:r,isWaitingForApprovals:i}),t[0]=r,t[1]=i,t[2]=e,t[3]=a,t[4]=l,t[5]=c):c=t[5],c}function ul(){const t=cs(),e=Be("credits");return t.isCreditExhausted?e?0:1:Number(t.hasTodos)+Number(t.showError)+ +!!t.subscriptionErrorKind+ +!!t.planRefusal+Number(t.showWarning)+Number(t.hasApprovals)+Number(t.hasPlans)+Number(t.isWaitingForUserInput)+Number(t.hasTaskSuggestion)}const Ct="start-task",pr=`Turn the report below into a running task. The user pressed "Start task", which authorizes delegation.
|
|
3
3
|
|
|
4
4
|
1. Read the report and any attached screenshots. Carry the reporter's own words into the task description, plus the URL of any attachment.
|
|
5
5
|
2. Call TASK_BOARD_ITEM_LIST. Its \`repos\` are this organization's repositories — the only valid values for a task's repo, so pick the one the report is about and never invent a name.
|
|
6
6
|
3. Call TASK_BOARD_ITEM_CREATE with a concise title, the full description, the chosen repo as owner/name, assigneeId "super-agent", and onDuplicate "return_existing". That assignment is what queues the work; the duplicate option makes the tool hand back an existing task when one already covers this report instead of opening a second one.
|
|
7
7
|
4. Reply with the task key the tool returned (e.g. DECO-144) and one line on what you filed. If the output says \`deduplicated: true\`, say the report was already tracked by that task and quote its \`duplicateReason\`. Never invent a URL. Do NOT implement the fix here; the task's own run does that, and the reporter gets an email when its PR is ready for review.
|
|
8
8
|
|
|
9
|
-
The report follows.`;function ur(t){return{...t,content:[{type:"paragraph",content:[an({id:Ct,name:Ct,char:"/",kind:"prompt",metadata:[{role:"user",content:{type:"text",text:dr}}]})]},...t.content??[]]}}function pr(){const t=R.c(24),e=K(),s=fn();if(!s)return null;let o,r,i,a;t[0]!==s.path||t[1]!==e?(o=Sn(s.path),a="flex px-3 pt-3",r="surface-inset flex h-7 min-w-0 items-center gap-1.5 rounded-full pr-0.5 pl-2.5 text-xs text-foreground",i=e("chat.input.openFileContext",{name:o}),t[0]=s.path,t[1]=e,t[2]=o,t[3]=r,t[4]=i,t[5]=a):(o=t[2],r=t[3],i=t[4],a=t[5]);let l,c;t[6]!==o?(l=n.jsx(pn,{filename:o,className:"h-4 w-3 shrink-0"}),c=n.jsx("span",{className:"truncate",children:o}),t[6]=o,t[7]=l,t[8]=c):(l=t[7],c=t[8]);let d;t[9]!==e?(d=e("chat.input.openFileDismiss"),t[9]=e,t[10]=d):d=t[10];let u;t[11]===Symbol.for("react.memo_cache_sentinel")?(u=n.jsx($t,{size:12}),t[11]=u):u=t[11];let V;t[12]!==s.dismiss||t[13]!==d?(V=n.jsx(un,{label:d,size:"icon-sm",onClick:s.dismiss,children:u}),t[12]=s.dismiss,t[13]=d,t[14]=V):V=t[14];let p;t[15]!==r||t[16]!==i||t[17]!==l||t[18]!==c||t[19]!==V?(p=n.jsxs("span",{className:r,title:i,children:[l,c,V]}),t[15]=r,t[16]=i,t[17]=l,t[18]=c,t[19]=V,t[20]=p):p=t[20];let f;return t[21]!==a||t[22]!==p?(f=n.jsx("div",{className:a,children:p}),t[21]=a,t[22]=p,t[23]=f):f=t[23],f}function fr(t){return{autosend:Tn,sidepanel:!0,...t?{mainpanel:!1}:{}}}function hr(t){const e=R.c(30),{current:s,total:o,onPrev:r,onNext:i}=t,a=K();if(o<=1)return null;const l=s===0,c=s===0?"opacity-30 cursor-not-allowed":"hover:text-foreground cursor-pointer";let d;e[0]!==c?(d=$("p-0.5 transition-colors rounded-lg",c),e[0]=c,e[1]=d):d=e[1];let u;e[2]!==a?(u=a("chat.pagination.previousLabel"),e[2]=a,e[3]=u):u=e[3];let V;e[4]===Symbol.for("react.memo_cache_sentinel")?(V=n.jsx(ro,{size:14}),e[4]=V):V=e[4];let p;e[5]!==r||e[6]!==l||e[7]!==d||e[8]!==u?(p=n.jsx("button",{type:"button",onClick:r,disabled:l,className:d,"aria-label":u,children:V}),e[5]=r,e[6]=l,e[7]=d,e[8]=u,e[9]=p):p=e[9];const f=s+1;let h;e[10]!==a||e[11]!==f||e[12]!==o?(h=a("chat.pagination.counter",{current:f,total:o}),e[10]=a,e[11]=f,e[12]=o,e[13]=h):h=e[13];let m;e[14]!==h?(m=n.jsx("span",{className:"tabular-nums text-xs",children:h}),e[14]=h,e[15]=m):m=e[15];const g=s===o-1,x=s===o-1?"opacity-30 cursor-not-allowed":"hover:text-foreground cursor-pointer";let v;e[16]!==x?(v=$("p-0.5 transition-colors rounded-lg",x),e[16]=x,e[17]=v):v=e[17];let b;e[18]!==a?(b=a("chat.pagination.nextLabel"),e[18]=a,e[19]=b):b=e[19];let j;e[20]===Symbol.for("react.memo_cache_sentinel")?(j=n.jsx(Kt,{size:14}),e[20]=j):j=e[20];let A;e[21]!==i||e[22]!==g||e[23]!==v||e[24]!==b?(A=n.jsx("button",{type:"button",onClick:i,disabled:g,className:v,"aria-label":b,children:j}),e[21]=i,e[22]=g,e[23]=v,e[24]=b,e[25]=A):A=e[25];let y;return e[26]!==A||e[27]!==p||e[28]!==m?(y=n.jsxs("div",{className:"flex items-center gap-1 text-sm text-muted-foreground",children:[p,m,A]}),e[26]=A,e[27]=p,e[28]=m,e[29]=y):y=e[29],y}function ds(t){const e=R.c(8),{currentIndex:s,total:o,onPrev:r,onNext:i,extraLeft:a}=t;let l;e[0]!==s||e[1]!==i||e[2]!==r||e[3]!==o?(l=n.jsx(hr,{current:s,total:o,onPrev:r,onNext:i}),e[0]=s,e[1]=i,e[2]=r,e[3]=o,e[4]=l):l=e[4];let c;return e[5]!==a||e[6]!==l?(c=n.jsxs("div",{className:"flex items-center gap-2",children:[l,a]}),e[5]=a,e[6]=l,e[7]=c):c=e[7],c}function mr(t){const e=R.c(17),{isStreaming:s,isAllAnswered:o,isCurrentAnswered:r,onAdvanceOrSubmit:i,submitLabel:a,nextLabel:l}=t,u=o?a===void 0?"Submit":a:l===void 0?"Next":l,V=o?s:!r,p=V?o?"Waiting for the assistant to finish…":"Answer this item to continue":null;let f;e[0]!==V||e[1]!==i?(f=()=>{V||i()},e[0]=V,e[1]=i,e[2]=f):f=e[2];const h=V&&"opacity-50 cursor-not-allowed";let m;e[3]!==h?(m=$("h-7 px-2.5 text-xs",h),e[3]=h,e[4]=m):m=e[4];let g;e[5]!==V||e[6]!==u||e[7]!==f||e[8]!==m?(g=n.jsx(W,{type:"button",size:"sm","aria-disabled":V,onClick:f,className:m,children:u}),e[5]=V,e[6]=u,e[7]=f,e[8]=m,e[9]=g):g=e[9];const x=g;if(!p)return x;let v;e[10]!==x?(v=n.jsx(Xe,{asChild:!0,children:x}),e[10]=x,e[11]=v):v=e[11];let b;e[12]!==p?(b=n.jsx(et,{children:p}),e[12]=p,e[13]=b):b=e[13];let j;return e[14]!==v||e[15]!==b?(j=n.jsxs(tt,{children:[v,b]}),e[14]=v,e[15]=b,e[16]=j):j=e[16],j}function us(t,e,s){return t.findIndex(o=>e(o)===s)}function Nt(t,e,s,o){return t.length===0?!1:t.every(r=>o(s[e(r)]))}function It(t,e,s,o,r){if(t.length===0)return null;const i=us(t,e,r);for(let a=1;a<=t.length;a++){const l=t[(i+a)%t.length];if(!l)continue;const c=e(l);if(c!==r&&!o(s[c]))return c}return null}function gr(t){return!t.isStreaming&&t.allAnswered}function ps(t){const{parts:e,partKey:s,schema:o,defaultValues:r,isStreaming:i,hasAnswer:a,onSubmit:l}=t,c=e[0]?s(e[0]):"",[d,u]=P.useState(c),[V,p]=P.useState(!1),f=Cs({resolver:Ns(o),defaultValues:r}),h=f.watch(),m=us(e,s,d),g=m>=0?e[m]:void 0,x=a(h[d]),v=Nt(e,s,h,a),b=gr({isStreaming:i,allAnswered:v}),j=()=>{if(m>0){const N=e[m-1];N&&u(s(N))}},A=()=>{if(m>=0&&m<e.length-1){const N=e[m+1];N&&u(s(N))}},y=()=>{const N=f.getValues(),I=It(e,s,N,a,d);I&&u(I)},k=()=>{f.handleSubmit(N=>{const I=N;for(const _ of e)l(_,I[s(_)])})()},w=P.useRef(k);w.current=k;const S=()=>{b&&(p(!1),w.current())},C=()=>{const N=f.getValues();if(Nt(e,s,N,a)){if(i){p(!0);return}p(!1),w.current()}else{const I=It(e,s,N,a,d);I&&u(I)}};return P.useEffect(()=>{if(V&&!i){if(!v){p(!1);return}p(!1),w.current()}},[V,i,v]),{form:f,activeKey:d,setActiveKey:u,currentIndex:m,currentPart:g,isCurrentAnswered:x,isAllAnswered:v,canSubmit:b,goPrev:j,goNext:A,advanceToNextUnanswered:y,submit:S,submitOrAdvance:C}}const fs="chat.approval.defaultDenyReason";function hs(t){const e=R.c(36),{onYolo:s}=t,o=K(),[r,i]=Se();let a,l,c,d,u,V,p,f,h;if(e[0]!==s||e[1]!==r||e[2]!==i||e[3]!==o){const j=we.find(k=>k.value===r.toolApprovalLevel)??we[0];let A;e[13]!==s||e[14]!==r||e[15]!==i?(A=k=>{const w=k,S=r.toolApprovalLevel??"readonly";i({...r,toolApprovalLevel:w}),w==="auto"&&s(S)},e[13]=s,e[14]=r,e[15]=i,e[16]=A):A=e[16];const y=A;c=to,f=r.toolApprovalLevel,h=y,l=so,u="xs",V="text-xs text-muted-foreground border-border/60 bg-transparent hover:bg-accent/60 h-7 gap-1",p=xr,a=no,d=o(j.shortKey),e[0]=s,e[1]=r,e[2]=i,e[3]=o,e[4]=a,e[5]=l,e[6]=c,e[7]=d,e[8]=u,e[9]=V,e[10]=p,e[11]=f,e[12]=h}else a=e[4],l=e[5],c=e[6],d=e[7],u=e[8],V=e[9],p=e[10],f=e[11],h=e[12];let m;e[17]!==a||e[18]!==d?(m=n.jsx(a,{children:d}),e[17]=a,e[18]=d,e[19]=m):m=e[19];let g;e[20]!==l||e[21]!==u||e[22]!==V||e[23]!==p||e[24]!==m?(g=n.jsx(l,{size:u,className:V,onClick:p,children:m}),e[20]=l,e[21]=u,e[22]=V,e[23]=p,e[24]=m,e[25]=g):g=e[25];let x;e[26]!==o?(x=we.map(j=>n.jsx(eo,{value:j.value,children:o(j.labelKey)},j.value)),e[26]=o,e[27]=x):x=e[27];let v;e[28]!==x?(v=n.jsx(oo,{children:x}),e[28]=x,e[29]=v):v=e[29];let b;return e[30]!==c||e[31]!==v||e[32]!==f||e[33]!==h||e[34]!==g?(b=n.jsxs(c,{value:f,onValueChange:h,children:[g,v]}),e[30]=c,e[31]=v,e[32]=f,e[33]=h,e[34]=g,e[35]=b):b=e[35],b}function xr(t){return t.stopPropagation()}function ms(t){const e=R.c(8),{input:s}=t,o=K();if(s==null){let a;e[0]!==o?(a=o("chat.approval.noInput"),e[0]=o,e[1]=a):a=e[1];let l;return e[2]!==a?(l=n.jsx("div",{className:"px-4 text-xs text-muted-foreground",children:a}),e[2]=a,e[3]=l):l=e[3],l}let r;try{let a;e[4]!==s?(a=JSON.stringify(s,null,2),e[4]=s,e[5]=a):a=e[5],r=a}catch{r=String(s)}let i;return e[6]!==r?(i=n.jsx("div",{className:"px-4",children:n.jsx("pre",{className:"text-xs font-mono text-muted-foreground/70 whitespace-pre-wrap wrap-break-word max-h-32 overflow-y-auto rounded-md bg-muted/30 px-3 py-2",children:r})}),e[6]=r,e[7]=i):i=e[7],i}function vr(t){const e=R.c(38),{approval:s,onRespond:o}=t,r=K(),[i]=Se(),a=i.toolApprovalLevel??"readonly";let l;e[0]!==s.approvalId||e[1]!==a||e[2]!==o||e[3]!==r?(l=()=>o(s.approvalId,!1,r(fs),a),e[0]=s.approvalId,e[1]=a,e[2]=o,e[3]=r,e[4]=l):l=e[4];const c=l;let d;e[5]!==s.approvalId||e[6]!==a||e[7]!==o?(d=()=>o(s.approvalId,!0,void 0,a),e[5]=s.approvalId,e[6]=a,e[7]=o,e[8]=d):d=e[8];const u=d;let V;e[9]!==s.approvalId||e[10]!==o?(V=S=>o(s.approvalId,!0,void 0,S),e[9]=s.approvalId,e[10]=o,e[11]=V):V=e[11];const p=V;let f;e[12]!==p?(f=n.jsx("div",{className:"flex items-center gap-2",children:n.jsx(hs,{onYolo:p})}),e[12]=p,e[13]=f):f=e[13];const h=f;let m;e[14]!==r?(m=r("chat.approval.denyButton"),e[14]=r,e[15]=m):m=e[15];let g;e[16]!==c||e[17]!==m?(g=n.jsx(W,{type:"button",variant:"ghost",size:"sm",className:"h-7 px-2.5 text-xs text-muted-foreground [@media(hover:hover)]:hover:text-foreground active:scale-[0.97] transition-transform",onClick:c,children:m}),e[16]=c,e[17]=m,e[18]=g):g=e[18];let x;e[19]!==r?(x=r("chat.approval.acceptButton"),e[19]=r,e[20]=x):x=e[20];let v;e[21]!==u||e[22]!==x?(v=n.jsx(W,{type:"button",size:"sm",className:"h-7 px-2.5 text-xs active:scale-[0.97] transition-transform",onClick:u,children:x}),e[21]=u,e[22]=x,e[23]=v):v=e[23];let b;e[24]!==g||e[25]!==v?(b=n.jsxs(n.Fragment,{children:[g,v]}),e[24]=g,e[25]=v,e[26]=b):b=e[26];const j=b;let A;e[27]===Symbol.for("react.memo_cache_sentinel")?(A=n.jsx(Ze,{size:14}),e[27]=A):A=e[27];let y;e[28]!==r?(y=r("chat.approval.needsApproval"),e[28]=r,e[29]=y):y=e[29];let k;e[30]!==s.input?(k=n.jsx(ms,{input:s.input}),e[30]=s.input,e[31]=k):k=e[31];let w;return e[32]!==s.friendlyName||e[33]!==h||e[34]!==j||e[35]!==y||e[36]!==k?(w=n.jsx(pe,{icon:A,label:y,title:s.friendlyName,defaultExpanded:!0,footerLeft:h,footerRight:j,children:k}),e[32]=s.friendlyName,e[33]=h,e[34]=j,e[35]=y,e[36]=k,e[37]=w):w=e[37],w}const br=Is(oe(),re({approved:Ts().optional(),levelOverride:Oe(["auto","readonly"]).optional()}));function Ar(t){const e=R.c(46),{approvals:s,isStreaming:o,onRespond:r}=t,i=K(),[a]=Se(),l=a.toolApprovalLevel??"readonly";let c;e[0]!==s?(c=Object.fromEntries(s.map(kr)),e[0]=s,e[1]=c):c=e[1];const d=c;let u;e[2]!==l||e[3]!==r||e[4]!==i?(u=(I,_)=>{const E=_;typeof E?.approved=="boolean"&&r(I.approvalId,E.approved,E.approved===!1?i(fs):void 0,E.levelOverride??l)},e[2]=l,e[3]=r,e[4]=i,e[5]=u):u=e[5];let V;e[6]!==s||e[7]!==d||e[8]!==o||e[9]!==u?(V={parts:s,partKey:jr,schema:br,defaultValues:d,isStreaming:o,hasAnswer:yr,onSubmit:u},e[6]=s,e[7]=d,e[8]=o,e[9]=u,e[10]=V):V=e[10];const p=ps(V);let f;e[11]!==s||e[12]!==p?(f=I=>{p.form.reset(Object.fromEntries(s.map(_=>[_.approvalId,{approved:!0,levelOverride:I}]))),p.submitOrAdvance()},e[11]=s,e[12]=p,e[13]=f):f=e[13];const h=f,m=p.currentPart,g=p.form;let x;e[14]!==p?(x=I=>{I.preventDefault(),p.submit()},e[14]=p,e[15]=x):x=e[15];let v;e[16]===Symbol.for("react.memo_cache_sentinel")?(v=n.jsx(Ze,{size:14}),e[16]=v):v=e[16];let b;e[17]!==s.length||e[18]!==i?(b=i("chat.approval.batchedLabel",{count:s.length}),e[17]=s.length,e[18]=i,e[19]=b):b=e[19];const j=m?.friendlyName??"";let A;e[20]!==h?(A=n.jsx(hs,{onYolo:h}),e[20]=h,e[21]=A):A=e[21];let y;e[22]!==s.length||e[23]!==p.currentIndex||e[24]!==p.goNext||e[25]!==p.goPrev||e[26]!==A?(y=n.jsx(ds,{currentIndex:p.currentIndex,total:s.length,onPrev:p.goPrev,onNext:p.goNext,extraLeft:A}),e[22]=s.length,e[23]=p.currentIndex,e[24]=p.goNext,e[25]=p.goPrev,e[26]=A,e[27]=y):y=e[27];let k;e[28]!==m||e[29]!==p.form.control||e[30]!==p.submitOrAdvance?(k=m?n.jsx(wr,{approvalId:m.approvalId,control:p.form.control,onChange:p.submitOrAdvance}):null,e[28]=m,e[29]=p.form.control,e[30]=p.submitOrAdvance,e[31]=k):k=e[31];let w;e[32]!==m?(w=m?n.jsx(ms,{input:m.input}):null,e[32]=m,e[33]=w):w=e[33];let S;e[34]!==y||e[35]!==k||e[36]!==w||e[37]!==b||e[38]!==j?(S=n.jsx(pe,{icon:v,label:b,title:j,defaultExpanded:!0,footerLeft:y,footerRight:k,children:w}),e[34]=y,e[35]=k,e[36]=w,e[37]=b,e[38]=j,e[39]=S):S=e[39];let C;e[40]!==S||e[41]!==x?(C=n.jsx("form",{onSubmit:x,children:S}),e[40]=S,e[41]=x,e[42]=C):C=e[42];let N;return e[43]!==p.form||e[44]!==C?(N=n.jsx(rt,{...g,children:C}),e[43]=p.form,e[44]=C,e[45]=N):N=e[45],N}function yr(t){return typeof t?.approved=="boolean"}function jr(t){return t.approvalId}function kr(t){return[t.approvalId,{approved:void 0}]}function wr(t){const e=R.c(7),{approvalId:s,control:o,onChange:r}=t,i=K(),a=`${s}.approved`;let l;e[0]!==r||e[1]!==i?(l=d=>{const{field:u}=d,V=u.value===!0,p=u.value===!1;return n.jsxs(n.Fragment,{children:[n.jsx(W,{type:"button",variant:p?"secondary":"ghost",size:"sm",className:"h-7 px-2.5 text-xs",onClick:()=>{u.onChange(!1),r()},"aria-pressed":p,children:i("chat.approval.denyButton")}),n.jsx(W,{type:"button",variant:V?"default":"outline",size:"sm",className:"h-7 px-2.5 text-xs",onClick:()=>{u.onChange(!0),r()},"aria-pressed":V,children:i("chat.approval.acceptButton")})]})},e[0]=r,e[1]=i,e[2]=l):l=e[2];let c;return e[3]!==o||e[4]!==a||e[5]!==l?(c=n.jsx(_s,{control:o,name:a,render:l}),e[3]=o,e[4]=a,e[5]=l,e[6]=c):c=e[6],c}function Sr(){const t=R.c(5),e=K();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=n.jsx(Ze,{className:"size-5 text-muted-foreground shimmer"}),t[0]=s):s=t[0];let o;t[1]!==e?(o=e("chat.approval.preparingRequest"),t[1]=e,t[2]=o):o=t[2];let r;return t[3]!==o?(r=n.jsxs("div",{className:"flex items-center gap-2 p-4 border border-dashed rounded-lg bg-accent/50 w-[calc(100%-16px)] max-w-[640px] mx-auto mb-2",children:[s,n.jsx("span",{className:"text-sm text-muted-foreground shimmer",children:o})]}),t[3]=o,t[4]=r):r=t[4],r}function Cr(t){const e=R.c(8),{approvals:s,isStreaming:o,onRespond:r}=t;if(o&&s.length===0){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsx(Sr,{}),e[0]=a):a=e[0],a}if(s.length===0)return null;if(s.length===1){const a=s[0];if(!a)return null;let l;return e[1]!==r||e[2]!==a?(l=n.jsx(vr,{approval:a,onRespond:r}),e[1]=r,e[2]=a,e[3]=l):l=e[3],l}let i;return e[4]!==s||e[5]!==o||e[6]!==r?(i=n.jsx(Ar,{approvals:s,isStreaming:o,onRespond:r}),e[4]=s,e[5]=o,e[6]=r,e[7]=i):i=e[7],i}function Nr(t){const e=R.c(28),{plan:s,onApprove:o,onDismiss:r}=t,i=K();let a;e[0]!==o||e[1]!==s.plan?(a=()=>{o(s.plan)},e[0]=o,e[1]=s.plan,e[2]=a):a=e[2];const l=a;let c;e[3]!==i?(c=i("chat.proposePlan.keepIterating"),e[3]=i,e[4]=c):c=e[4];let d;e[5]!==r||e[6]!==c?(d=n.jsx(W,{type:"button",variant:"ghost",size:"sm",className:"h-7 px-2.5 text-xs text-muted-foreground [@media(hover:hover)]:hover:text-foreground active:scale-[0.97] transition-transform",onClick:r,children:c}),e[5]=r,e[6]=c,e[7]=d):d=e[7];let u;e[8]!==i?(u=i("chat.proposePlan.letsGo"),e[8]=i,e[9]=u):u=e[9];let V;e[10]!==l||e[11]!==u?(V=n.jsx(W,{type:"button",size:"sm",className:"h-7 px-2.5 text-xs bg-special hover:bg-special/90 text-special-foreground active:scale-[0.97] transition-transform",onClick:l,children:u}),e[10]=l,e[11]=u,e[12]=V):V=e[12];let p;e[13]!==d||e[14]!==V?(p=n.jsxs(n.Fragment,{children:[d,V]}),e[13]=d,e[14]=V,e[15]=p):p=e[15];const f=p;let h;e[16]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx(Yt,{size:14}),e[16]=h):h=e[16];let m;e[17]!==i?(m=i("chat.proposePlan.planReady"),e[17]=i,e[18]=m):m=e[18];let g;e[19]!==i?(g=i("chat.proposePlan.implementationPlan"),e[19]=i,e[20]=g):g=e[20];let x;e[21]!==s.plan?(x=n.jsx("div",{className:"px-4 max-h-64 overflow-y-auto",children:n.jsx("div",{className:"prose prose-sm max-w-none text-sm",children:n.jsx(ln,{id:"plan-preview",part:{type:"text",text:s.plan}})})}),e[21]=s.plan,e[22]=x):x=e[22];let v;return e[23]!==f||e[24]!==x||e[25]!==m||e[26]!==g?(v=n.jsx(pe,{icon:h,label:m,title:g,defaultExpanded:!0,footerRight:f,children:x}),e[23]=f,e[24]=x,e[25]=m,e[26]=g,e[27]=v):v=e[27],v}function Ir(t){const e=R.c(6),{plans:s,onApprove:o,onDismiss:r}=t;let i;e[0]!==s?(i=ls(s),e[0]=s,e[1]=i):i=e[1];const a=i;if(!a)return null;let l;return e[2]!==a||e[3]!==o||e[4]!==r?(l=n.jsx(Nr,{plan:a,onApprove:o,onDismiss:r}),e[2]=a,e[3]=o,e[4]=r,e[5]=l):l=e[5],l}function gs(t){return t?"response"in t?t.response:t.option??t.draft:""}const Tt=re({response:oe().min(1,"Response is required")}),Tr=re({option:oe().nullable(),draft:oe()}).refine(t=>(t.option??t.draft).length>0,{message:"Please select or enter an option"}),_r=re({response:Oe(["yes","no"])});function Mr(t){switch(t.type){case"text":return Tt;case"choice":return Tr;case"confirm":return _r;default:return Tt}}function Dr(t){const e={};for(const s of t)e[s.toolCallId]=Mr(s.input);return re(e)}function Rr(t){const e=R.c(7),{control:s,name:o,placeholder:r}=t,i=K();let a;e[0]!==r||e[1]!==i?(a=c=>{const{field:d}=c,u=d.value??"";return n.jsxs(dt,{children:[n.jsx(ut,{children:n.jsx("div",{className:"px-2",children:n.jsxs("div",{className:"flex items-center gap-3 px-2 py-3 rounded-lg bg-accent/50",children:[n.jsx("span",{className:"flex items-center justify-center size-6 rounded-md bg-muted shrink-0",children:n.jsx(Wt,{size:16,className:"text-muted-foreground"})}),n.jsx("input",{...d,value:u,type:"text",placeholder:r||i("chat.userAskQuestion.typeResponse"),autoFocus:!0,"aria-label":i("chat.userAskQuestion.textResponseInputAriaLabel"),className:"flex-1 text-sm bg-transparent outline-none placeholder:text-foreground/25 text-foreground min-w-0"})]})})}),n.jsx(pt,{})]})},e[0]=r,e[1]=i,e[2]=a):a=e[2];let l;return e[3]!==s||e[4]!==o||e[5]!==a?(l=n.jsx(Zt,{control:s,name:o,render:a}),e[3]=s,e[4]=o,e[5]=a,e[6]=l):l=e[6],l}function xs(t,e){const s=R.c(4);let o,r;s[0]!==t||s[1]!==e?(o=()=>{const i=a=>{if(Cn(a.target)||a.metaKey||a.ctrlKey||a.altKey)return;const l=Number.parseInt(a.key,10);l>=1&&l<=t&&(a.preventDefault(),e(l-1))};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},r=[t,e],s[0]=t,s[1]=e,s[2]=o,s[3]=r):(o=s[2],r=s[3]),P.useEffect(o,r)}function Er(t){const e=R.c(51),{control:s,name:o,options:r}=t,i=K(),a=`${o}.option`;let l;e[0]!==s||e[1]!==a?(l={control:s,name:a,defaultValue:null},e[0]=s,e[1]=a,e[2]=l):l=e[2];const{field:c}=gt(l),d=`${o}.draft`;let u;e[3]!==s||e[4]!==d?(u={control:s,name:d,defaultValue:""},e[3]=s,e[4]=d,e[5]=u):u=e[5];const{field:V}=gt(u),p=c.value,f=V.value??"";let h;if(e[6]!==c||e[7]!==r?(h=D=>{const T=r[D];T!=null&&c.onChange(T)},e[6]=c,e[7]=r,e[8]=h):h=e[8],xs(r.length,h),r.length===0)return null;const m=p===null;let g;e[9]!==i?(g=i("chat.userAskQuestion.choiceOptionsAriaLabel"),e[9]=i,e[10]=g):g=e[10];let x;if(e[11]!==c||e[12]!==p||e[13]!==r||e[14]!==i){let D;e[16]!==c||e[17]!==p||e[18]!==i?(D=(T,O)=>{const F=p===T;return n.jsxs("button",{type:"button",onClick:()=>c.onChange(T),className:$("flex items-start gap-3 px-2 py-3 rounded-lg text-left transition-colors w-full",F&&"bg-accent/50",!F&&"hover:bg-accent/30"),"aria-label":i("chat.userAskQuestion.selectOption",{option:T}),children:[n.jsx("span",{className:$("flex items-center justify-center size-6 rounded-md text-sm shrink-0 mt-0.5",F?"bg-chart-1 text-white":"bg-muted text-foreground"),children:O+1}),n.jsx("span",{className:"text-sm text-foreground min-w-0 break-words",children:T})]},`${O}-${T}`)},e[16]=c,e[17]=p,e[18]=i,e[19]=D):D=e[19],x=r.map(D),e[11]=c,e[12]=p,e[13]=r,e[14]=i,e[15]=x}else x=e[15];const v=m&&"bg-accent/50",b=!m&&"hover:bg-accent/30";let j;e[20]!==v||e[21]!==b?(j=$("flex items-center gap-3 px-2 py-3 rounded-lg transition-colors w-full cursor-text",v,b),e[20]=v,e[21]=b,e[22]=j):j=e[22];let A;e[23]===Symbol.for("react.memo_cache_sentinel")?(A=n.jsx("span",{className:"flex items-center justify-center size-6 rounded-md bg-muted shrink-0",children:n.jsx(Wt,{size:16,className:"text-muted-foreground"})}),e[23]=A):A=e[23];const y=m?f:"";let k;e[24]!==V||e[25]!==c||e[26]!==p?(k=D=>{V.onChange(D.target.value),p!==null&&c.onChange(null)},e[24]=V,e[25]=c,e[26]=p,e[27]=k):k=e[27];let w;e[28]!==c||e[29]!==p?(w=()=>{p!==null&&c.onChange(null)},e[28]=c,e[29]=p,e[30]=w):w=e[30];let S;e[31]!==i?(S=i("chat.userAskQuestion.somethingElsePlaceholder"),e[31]=i,e[32]=S):S=e[32];let C;e[33]!==i?(C=i("chat.userAskQuestion.customChoiceInputAriaLabel"),e[33]=i,e[34]=C):C=e[34];let N;e[35]!==y||e[36]!==k||e[37]!==w||e[38]!==S||e[39]!==C?(N=n.jsx("input",{type:"text",value:y,onChange:k,onFocus:w,placeholder:S,"aria-label":C,className:"flex-1 text-sm bg-transparent outline-none placeholder:text-foreground/25 text-foreground min-w-0"}),e[35]=y,e[36]=k,e[37]=w,e[38]=S,e[39]=C,e[40]=N):N=e[40];let I;e[41]!==j||e[42]!==N?(I=n.jsxs("label",{className:j,children:[A,N]}),e[41]=j,e[42]=N,e[43]=I):I=e[43];let _;e[44]!==I||e[45]!==g||e[46]!==x?(_=n.jsx(ut,{children:n.jsxs("div",{className:"flex flex-col px-2",role:"group","aria-label":g,children:[x,I]})}),e[44]=I,e[45]=g,e[46]=x,e[47]=_):_=e[47];let E;e[48]===Symbol.for("react.memo_cache_sentinel")?(E=n.jsx(pt,{}),e[48]=E):E=e[48];let U;return e[49]!==_?(U=n.jsxs(dt,{children:[_,E]}),e[49]=_,e[50]=U):U=e[50],U}function Pr(t){const e=R.c(8),{control:s,name:o}=t,r=K();let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=["yes","no"],e[0]=i):i=e[0];const a=i,l=P.useRef(null);let c;e[1]===Symbol.for("react.memo_cache_sentinel")?(c=V=>{l.current?.onChange(a[V]??"")},e[1]=c):c=e[1],xs(a.length,c);let d;e[2]!==r?(d=V=>{const{field:p}=V;return l.current=p,n.jsxs(dt,{children:[n.jsx(ut,{children:n.jsx("div",{className:"flex gap-2 px-2",role:"group","aria-label":r("chat.userAskQuestion.confirmationOptionsAriaLabel"),children:a.map(f=>{const h=p.value===f;return n.jsxs("button",{type:"button",onClick:()=>p.onChange(f),className:$("flex items-center gap-3 px-4 py-3 rounded-lg text-left transition-colors flex-1",h&&"bg-accent/50",!h&&"hover:bg-accent/30"),"aria-label":r("chat.userAskQuestion.confirmValue",{value:r(`chat.userAskQuestion.confirm${f==="yes"?"Yes":"No"}`)}),children:[n.jsx("span",{className:$("flex items-center justify-center size-6 rounded-md text-sm shrink-0",h?"bg-chart-1 text-white":"bg-muted text-foreground"),children:f==="yes"?1:2}),n.jsx("span",{className:"text-sm text-foreground capitalize",children:r(`chat.userAskQuestion.confirm${f==="yes"?"Yes":"No"}`)})]},f)})})}),n.jsx(pt,{})]})},e[2]=r,e[3]=d):d=e[3];let u;return e[4]!==s||e[5]!==o||e[6]!==d?(u=n.jsx(Zt,{control:s,name:o,render:d}),e[4]=s,e[5]=o,e[6]=d,e[7]=u):u=e[7],u}function _t(t){const e=R.c(13),{input:s,control:o,toolCallId:r}=t;switch(s.type){case"text":{const i=`${r}.response`;let a;return e[0]!==o||e[1]!==s.default||e[2]!==i?(a=n.jsx(Rr,{control:o,name:i,placeholder:s.default}),e[0]=o,e[1]=s.default,e[2]=i,e[3]=a):a=e[3],a}case"choice":{let i;e[4]!==s.options?(i=s.options?.filter(Boolean)??[],e[4]=s.options,e[5]=i):i=e[5];const a=i;let l;return e[6]!==o||e[7]!==a||e[8]!==r?(l=n.jsx(Er,{control:o,name:r,options:a}),e[6]=o,e[7]=a,e[8]=r,e[9]=l):l=e[9],l}case"confirm":{const i=`${r}.response`;let a;return e[10]!==o||e[11]!==i?(a=n.jsx(Pr,{control:o,name:i}),e[10]=o,e[11]=i,e[12]=a):a=e[12],a}default:return null}}function Ur(t){const e=R.c(91),{parts:s,isStreaming:o,onSubmit:r}=t;let i;e[0]!==s?(i=Dr(s.map(Or)),e[0]=s,e[1]=i):i=e[1];const a=i;let l;e[2]!==s?(l=Object.fromEntries(s.map(zr)),e[2]=s,e[3]=l):l=e[3];const c=l;let d;e[4]!==r?(d=(z,Y)=>{const L=gs(Y);L&&r(z,L)},e[4]=r,e[5]=d):d=e[5];let u;e[6]!==c||e[7]!==o||e[8]!==s||e[9]!==a||e[10]!==d?(u={parts:s,partKey:Fr,schema:a,defaultValues:c,isStreaming:o,hasAnswer:Lr,onSubmit:d},e[6]=c,e[7]=o,e[8]=s,e[9]=a,e[10]=d,e[11]=u):u=e[11];const V=ps(u),p=V.currentPart,f=K();let h;e[12]!==p||e[13]!==V||e[14]!==f?(h=()=>{const z=p;if(!z)return;const Y=f("chat.userAskQuestion.skipMessage"),L=z.toolCallId;z.input?.type==="choice"?(V.form.setValue(`${L}.option`,null),V.form.setValue(`${L}.draft`,Y)):V.form.setValue(`${L}.response`,Y),V.advanceToNextUnanswered()},e[12]=p,e[13]=V,e[14]=f,e[15]=h):h=e[15];const m=h;let g;e[16]!==V.currentIndex||e[17]!==V.goNext||e[18]!==V.goPrev||e[19]!==s.length?(g=n.jsx(ds,{currentIndex:V.currentIndex,total:s.length,onPrev:V.goPrev,onNext:V.goNext}),e[16]=V.currentIndex,e[17]=V.goNext,e[18]=V.goPrev,e[19]=s.length,e[20]=g):g=e[20];const x=g;let v;e[21]!==f?(v=f("chat.userAskQuestion.skip"),e[21]=f,e[22]=v):v=e[22];let b;e[23]!==m||e[24]!==v?(b=n.jsx(W,{type:"button",variant:"outline",size:"sm",onClick:m,className:"h-7",children:v}),e[23]=m,e[24]=v,e[25]=b):b=e[25];let j;e[26]!==V.isAllAnswered||e[27]!==V.isCurrentAnswered||e[28]!==V.submitOrAdvance||e[29]!==o?(j=n.jsx(mr,{isStreaming:o,isAllAnswered:V.isAllAnswered,isCurrentAnswered:V.isCurrentAnswered,onAdvanceOrSubmit:V.submitOrAdvance}),e[26]=V.isAllAnswered,e[27]=V.isCurrentAnswered,e[28]=V.submitOrAdvance,e[29]=o,e[30]=j):j=e[30];let A;e[31]!==b||e[32]!==j?(A=n.jsxs(n.Fragment,{children:[b,j]}),e[31]=b,e[32]=j,e[33]=A):A=e[33];const y=A;if(s.length===1){const z=s[0];if(!z?.input)return null;const Y=V.form;let L;e[34]!==V?(L=ee=>{ee.preventDefault(),V.submit()},e[34]=V,e[35]=L):L=e[35];let H;e[36]===Symbol.for("react.memo_cache_sentinel")?(H=n.jsx(ot,{size:14}),e[36]=H):H=e[36];let X;e[37]!==f?(X=f("chat.userAskQuestion.questionPending"),e[37]=f,e[38]=X):X=e[38];let Z;e[39]!==z.input?.prompt||e[40]!==f?(Z=z.input?.prompt??f("chat.userAskQuestion.question"),e[39]=z.input?.prompt,e[40]=f,e[41]=Z):Z=e[41];const ie=z.input;let M;e[42]!==V.form.control||e[43]!==z.toolCallId||e[44]!==ie?(M=n.jsx(_t,{input:ie,control:V.form.control,toolCallId:z.toolCallId}),e[42]=V.form.control,e[43]=z.toolCallId,e[44]=ie,e[45]=M):M=e[45];let B;e[46]!==y||e[47]!==X||e[48]!==Z||e[49]!==M?(B=n.jsx(pe,{icon:H,label:X,title:Z,defaultExpanded:!0,footerRight:y,children:M}),e[46]=y,e[47]=X,e[48]=Z,e[49]=M,e[50]=B):B=e[50];let J;e[51]!==L||e[52]!==B?(J=n.jsx("form",{onSubmit:L,autoComplete:"off",children:B}),e[51]=L,e[52]=B,e[53]=J):J=e[53];let se;return e[54]!==V.form||e[55]!==J?(se=n.jsx(rt,{...Y,children:J}),e[54]=V.form,e[55]=J,e[56]=se):se=e[56],se}const k=V.form;let w;e[57]!==V?(w=z=>{z.preventDefault(),V.submit()},e[57]=V,e[58]=w):w=e[58];let S;e[59]===Symbol.for("react.memo_cache_sentinel")?(S=n.jsx(ot,{size:14}),e[59]=S):S=e[59];let C;e[60]!==f?(C=f("chat.userAskQuestion.questionPending"),e[60]=f,e[61]=C):C=e[61];const N=V.currentIndex+1;let I;e[62]!==s.length||e[63]!==f||e[64]!==N?(I=f("chat.userAskQuestion.questionCount",{current:N,total:s.length}),e[62]=s.length,e[63]=f,e[64]=N,e[65]=I):I=e[65];let _;e[66]!==p?.input?.prompt||e[67]!==f?(_=p?.input?.prompt??f("chat.userAskQuestion.question"),e[66]=p?.input?.prompt,e[67]=f,e[68]=_):_=e[68];const E=V.activeKey,U=V.setActiveKey;let D;if(e[69]!==V.form||e[70]!==s){let z;e[72]!==V.form?(z=Y=>n.jsx(io,{value:Y.toolCallId,className:"mt-0",children:n.jsx(_t,{input:Y.input,control:V.form.control,toolCallId:Y.toolCallId})},Y.toolCallId),e[72]=V.form,e[73]=z):z=e[73],D=s.map(z),e[69]=V.form,e[70]=s,e[71]=D}else D=e[71];let T;e[74]!==V.activeKey||e[75]!==V.setActiveKey||e[76]!==D?(T=n.jsx(ao,{value:E,onValueChange:U,children:D}),e[74]=V.activeKey,e[75]=V.setActiveKey,e[76]=D,e[77]=T):T=e[77];let O;e[78]!==x||e[79]!==y||e[80]!==C||e[81]!==I||e[82]!==_||e[83]!==T?(O=n.jsx(pe,{icon:S,label:C,count:I,title:_,defaultExpanded:!0,footerLeft:x,footerRight:y,children:T}),e[78]=x,e[79]=y,e[80]=C,e[81]=I,e[82]=_,e[83]=T,e[84]=O):O=e[84];let F;e[85]!==w||e[86]!==O?(F=n.jsx("form",{onSubmit:w,autoComplete:"off",children:O}),e[85]=w,e[86]=O,e[87]=F):F=e[87];let Q;return e[88]!==V.form||e[89]!==F?(Q=n.jsx(rt,{...k,children:F}),e[88]=V.form,e[89]=F,e[90]=Q):Q=e[90],Q}function Lr(t){return!!gs(t)}function Fr(t){return t.toolCallId}function zr(t){return t.input?.type==="choice"?[t.toolCallId,{option:null,draft:""}]:[t.toolCallId,{response:""}]}function Or(t){return{toolCallId:t.toolCallId,input:t.input}}function $r(){const t=R.c(5),e=K();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=n.jsx(ot,{className:"size-5 text-muted-foreground shimmer"}),t[0]=s):s=t[0];let o;t[1]!==e?(o=e("chat.userAskQuestion.preparingQuestion"),t[1]=e,t[2]=o):o=t[2];let r;return t[3]!==o?(r=n.jsxs("div",{className:"flex items-center gap-2 p-4 border border-dashed rounded-lg bg-accent/50 w-[calc(100%-16px)] max-w-[640px] mx-auto mb-2",children:[s,n.jsx("span",{className:"text-sm text-muted-foreground shimmer",children:o})]}),t[3]=o,t[4]=r):r=t[4],r}function vs(t){const e=R.c(7),{userAskParts:s,isStreaming:o,onSubmit:r}=t;let i;e[0]!==s?(i=s.filter(Br),e[0]=s,e[1]=i):i=e[1];const a=i;if(a.length===0){if(o){let c;return e[2]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsx($r,{}),e[2]=c):c=e[2],c}return null}let l;return e[3]!==o||e[4]!==r||e[5]!==a?(l=n.jsx(Ur,{parts:a,isStreaming:o,onSubmit:r}),e[3]=o,e[4]=r,e[5]=a,e[6]=l):l=e[6],l}function Br(t){return t.state==="input-available"}function Kr(t){const e=R.c(33),{parts:s,isStreaming:o,onRespond:r}=t,i=K();let a;e[0]!==s?(a=s.at(-1),e[0]=s,e[1]=a):a=e[1];const l=a,c=l?.input;if(!l||!c?.title)return null;let d;e[2]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsx(Yt,{size:14}),e[2]=d):d=e[2];let u;e[3]!==i?(u=i("chat.suggestTask.label"),e[3]=i,e[4]=u):u=e[4];const V=c.title;let p;e[5]!==r||e[6]!==l?(p=()=>r(l,!1),e[5]=r,e[6]=l,e[7]=p):p=e[7];let f;e[8]!==i?(f=i("chat.suggestTask.notNow"),e[8]=i,e[9]=f):f=e[9];let h;e[10]!==o||e[11]!==p||e[12]!==f?(h=n.jsx(W,{type:"button",size:"sm",variant:"outline",className:"h-7",disabled:o,onClick:p,children:f}),e[10]=o,e[11]=p,e[12]=f,e[13]=h):h=e[13];let m;e[14]!==r||e[15]!==l?(m=()=>r(l,!0),e[14]=r,e[15]=l,e[16]=m):m=e[16];let g;e[17]!==i?(g=i("chat.suggestTask.create"),e[17]=i,e[18]=g):g=e[18];let x;e[19]!==o||e[20]!==m||e[21]!==g?(x=n.jsx(W,{type:"button",size:"sm",className:"h-7",disabled:o,onClick:m,children:g}),e[19]=o,e[20]=m,e[21]=g,e[22]=x):x=e[22];let v;e[23]!==x||e[24]!==h?(v=n.jsxs(n.Fragment,{children:[h,x]}),e[23]=x,e[24]=h,e[25]=v):v=e[25];let b;e[26]!==c.summary?(b=c.summary?n.jsx("p",{className:"px-4 pb-1 text-sm leading-snug text-muted-foreground whitespace-pre-wrap",children:c.summary}):null,e[26]=c.summary,e[27]=b):b=e[27];let j;return e[28]!==c.title||e[29]!==v||e[30]!==b||e[31]!==u?(j=n.jsx(pe,{icon:d,label:u,title:V,defaultExpanded:!0,footerRight:v,children:b}),e[28]=c.title,e[29]=v,e[30]=b,e[31]=u,e[32]=j):j=e[32],j}function qr(t){const e=t.filter(i=>i.status==="in_progress"),s=t.filter(i=>i.status==="completed").length,o=t.length;if(o>0&&s===o)return{icon:"completed",activity:"All done",progress:`${o}/${o}`};const[r]=e;return r&&e.length===1?{icon:"in_progress",activity:r.activeForm,progress:`${s}/${o} done`}:e.length>1?{icon:"in_progress",activity:`${e.length} in progress`,progress:`${s}/${o} done`}:s>0?{icon:"pending",activity:`${o-s} pending`,progress:`${s}/${o} done`}:{icon:"pending",activity:`${o} todos`,progress:"not started"}}function Qr(t){const e=R.c(13),{todos:s}=t;if(s.length===0)return null;let o;e[0]!==s?(o=qr(s),e[0]=s,e[1]=o):o=e[1];const r=o;let i;e[2]!==r.icon?(i=n.jsx(Hr,{status:r.icon}),e[2]=r.icon,e[3]=i):i=e[3];const a=r.activity,l=r.progress;let c;e[4]!==s?(c=s.map(Yr),e[4]=s,e[5]=c):c=e[5];let d;e[6]!==c?(d=n.jsx("ul",{"data-testid":"todos-list",className:"flex flex-col px-2 max-h-[40vh] overflow-y-auto",children:c}),e[6]=c,e[7]=d):d=e[7];let u;return e[8]!==r.activity||e[9]!==r.progress||e[10]!==i||e[11]!==d?(u=n.jsx(pe,{icon:i,label:a,count:l,defaultExpanded:!1,children:d}),e[8]=r.activity,e[9]=r.progress,e[10]=i,e[11]=d,e[12]=u):u=e[12],u}function Yr(t,e){return n.jsx(Wr,{todo:t},e)}function Wr(t){const e=R.c(14),{todo:s}=t,o=s.status==="completed",i=s.status==="in_progress"?s.activeForm:s.content;let a;e[0]!==s.status?(a=n.jsx(Gr,{status:s.status}),e[0]=s.status,e[1]=a):a=e[1];const l=o&&"text-muted-foreground";let c;e[2]!==l?(c=$("relative text-sm leading-snug pt-px select-none",l),e[2]=l,e[3]=c):c=e[3];const d=o?"100%":"0%",u=o?"width 300ms ease 200ms":"width 150ms ease";let V;e[4]!==d||e[5]!==u?(V=n.jsx("span",{"aria-hidden":"true",style:{position:"absolute",left:0,top:"50%",height:"1px",background:"currentColor",width:d,transition:u}}),e[4]=d,e[5]=u,e[6]=V):V=e[6];let p;e[7]!==i||e[8]!==c||e[9]!==V?(p=n.jsxs("span",{className:c,children:[i,V]}),e[7]=i,e[8]=c,e[9]=V,e[10]=p):p=e[10];let f;return e[11]!==a||e[12]!==p?(f=n.jsxs("li",{className:"flex items-start gap-2.5 px-2 py-1.5 rounded-lg hover:bg-accent/50 transition-colors",children:[a,p]}),e[11]=a,e[12]=p,e[13]=f):f=e[13],f}function Gr(t){const e=R.c(4),{status:s}=t,o=s==="completed"?"true":void 0,r=s==="in_progress"?"true":void 0;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=n.jsx("svg",{viewBox:"0 0 21 21",children:n.jsx("path",{d:"M5,10.75 L8.5,14.25 L19.4,2.3 C18.8333333,1.43333333 18.0333333,1 17,1 L4,1 C2.35,1 1,2.35 1,4 L1,17 C1,18.65 2.35,20 4,20 L17,20 C18.65,20 20,18.65 20,17 L20,7.99769186"})}),e[0]=i):i=e[0];let a;return e[1]!==o||e[2]!==r?(a=n.jsx("div",{className:"todo-cb mt-0.5","data-checked":o,"data-progress":r,"aria-hidden":"true",children:i}),e[1]=o,e[2]=r,e[3]=a):a=e[3],a}function Hr(t){const e=R.c(13),{status:s}=t,o=K();if(s==="completed"){let a;e[0]!==o?(a=o("chat.todoStatus.completed"),e[0]=o,e[1]=a):a=e[1];let l;e[2]===Symbol.for("react.memo_cache_sentinel")?(l=n.jsx("svg",{viewBox:"0 0 10 8",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",className:"w-2 h-2 text-primary-foreground",style:{strokeWidth:2},children:n.jsx("path",{d:"M1 4l2.5 2.5L9 1"})}),e[2]=l):l=e[2];let c;return e[3]!==a?(c=n.jsx("span",{"aria-label":a,className:"inline-flex items-center justify-center w-3.5 h-3.5 rounded-sm bg-primary",children:l}),e[3]=a,e[4]=c):c=e[4],c}if(s==="in_progress"){let a;e[5]!==o?(a=o("chat.todoStatus.inProgress"),e[5]=o,e[6]=a):a=e[6];let l;return e[7]!==a?(l=n.jsx("span",{"aria-label":a,className:"inline-block w-2 h-2 rounded-full bg-primary animate-pulse shrink-0"}),e[7]=a,e[8]=l):l=e[8],l}let r;e[9]!==o?(r=o("chat.todoStatus.pending"),e[9]=o,e[10]=r):r=e[10];let i;return e[11]!==r?(i=n.jsx("span",{"aria-label":r,className:"inline-block w-3.5 h-3.5 rounded-sm border-[1.5px] border-muted-foreground/50 shrink-0"}),e[11]=r,e[12]=i):i=e[12],i}const Jr={usd:[{dollars:10,labelKey:"credits.topUp.starter"},{dollars:20,labelKey:"credits.topUp.popular"},{dollars:100,labelKey:"credits.topUp.bestValue"}],brl:[{dollars:50,labelKey:"credits.topUp.starter"},{dollars:100,labelKey:"credits.topUp.popular"},{dollars:500,labelKey:"credits.topUp.bestValue"}]},Zr={"credits.topUp.starter":"starter","credits.topUp.popular":"popular","credits.topUp.bestValue":"best_value"};function Xr(t){const e=R.c(46),{source:s,onDone:o}=t,r=K(),i=Ms(),[a]=Se(),[l,c]=P.useState(a.language==="pt-BR"?"brl":"usd"),[d,u]=P.useState(""),[V,p]=P.useState(!1),f=l==="brl"?"R$":"$";let h;e[0]!==l||e[1]!==i?(h=async T=>{const{url:O}=await i.call("AI_PROVIDER_TOPUP_URL",{providerId:"deco",amountCents:T,currency:l});return O},e[0]=l,e[1]=i,e[2]=h):h=e[2];let m;e[3]!==o?(m=T=>{T&&window.open(T,"_blank","noopener,noreferrer"),o?.()},e[3]=o,e[4]=m):m=e[4];let g;e[5]!==r?(g=T=>{Le.error(r("credits.topUp.failed",{message:T.message}))},e[5]=r,e[6]=g):g=e[6];let x;e[7]!==h||e[8]!==m||e[9]!==g?(x={mutationFn:h,onSuccess:m,onError:g},e[7]=h,e[8]=m,e[9]=g,e[10]=x):x=e[10];const{mutate:v,isPending:b}=Ds(x);let j;e[11]!==l||e[12]!==s||e[13]!==v?(j=(T,O)=>{te("credits_topup_clicked",{amount_cents:T,currency:l,tier_label:O,source:s}),v(T)},e[11]=l,e[12]=s,e[13]=v,e[14]=j):j=e[14];const A=j,y=parseFloat(d),k=!isNaN(y)&&y>=1;let w,S,C;e[15]===Symbol.for("react.memo_cache_sentinel")?(w=T=>{T&&c(T)},S=n.jsx(jt,{value:"usd",className:"h-8 px-3 text-xs",children:"USD"}),C=n.jsx(jt,{value:"brl",className:"h-8 px-3 text-xs",children:"BRL"}),e[15]=w,e[16]=S,e[17]=C):(w=e[15],S=e[16],C=e[17]);let N;e[18]!==l?(N=n.jsx("div",{className:"mb-4",children:n.jsxs(po,{type:"single",variant:"outline",size:"sm",value:l,onValueChange:w,children:[S,C]})}),e[18]=l,e[19]=N):N=e[19];const I=Jr[l];let _;if(e[20]!==A||e[21]!==f||e[22]!==b||e[23]!==r||e[24]!==I){let T;e[26]!==A||e[27]!==f||e[28]!==b||e[29]!==r?(T=O=>{const{dollars:F,labelKey:Q}=O;return n.jsxs("button",{type:"button",disabled:b,onClick:()=>A(F*100,Zr[Q]??"preset"),className:$("relative flex flex-col items-center gap-1 py-5 rounded-xl border transition-all duration-150 cursor-pointer","disabled:opacity-50 disabled:cursor-wait","border-border hover:border-foreground/20 hover:bg-muted/30"),children:[n.jsxs("span",{className:"text-2xl font-semibold tabular-nums text-foreground",children:[f,F]}),n.jsx("span",{className:"text-xs text-muted-foreground",children:r(Q)})]},F)},e[26]=A,e[27]=f,e[28]=b,e[29]=r,e[30]=T):T=e[30],_=I.map(T),e[20]=A,e[21]=f,e[22]=b,e[23]=r,e[24]=I,e[25]=_}else _=e[25];let E;e[31]!==_?(E=n.jsx("div",{className:"grid grid-cols-3 gap-2.5",children:_}),e[31]=_,e[32]=E):E=e[32];let U;e[33]!==A||e[34]!==f||e[35]!==d||e[36]!==y||e[37]!==k||e[38]!==b||e[39]!==V||e[40]!==r?(U=V?n.jsxs("div",{className:"flex gap-2 mt-3",children:[n.jsxs("div",{className:"relative flex-1",children:[n.jsx("span",{className:"absolute left-3 top-1/2 -translate-y-1/2 text-sm text-muted-foreground select-none",children:f}),n.jsx(Rs,{type:"number",min:"1",step:"1",placeholder:r("credits.topUp.customPlaceholder"),value:d,onChange:T=>u(T.target.value),className:"h-10 text-sm pl-7",autoFocus:!0})]}),n.jsx(W,{className:"h-10",disabled:!k||b,onClick:()=>A(Math.round(y*100),"custom"),children:r(b?"credits.topUp.opening":"credits.topUp.add")})]}):n.jsx("button",{type:"button",className:"w-full mt-3 text-xs text-muted-foreground hover:text-foreground transition-colors py-1",onClick:()=>p(!0),children:r("credits.topUp.enterCustom")}),e[33]=A,e[34]=f,e[35]=d,e[36]=y,e[37]=k,e[38]=b,e[39]=V,e[40]=r,e[41]=U):U=e[41];let D;return e[42]!==E||e[43]!==U||e[44]!==N?(D=n.jsxs("div",{children:[N,E,U]}),e[42]=E,e[43]=U,e[44]=N,e[45]=D):D=e[45],D}const ei=["chat.creditsExhaustedBanner.benefit1","chat.creditsExhaustedBanner.benefit2","chat.creditsExhaustedBanner.benefit3"];function ti(t){const e=R.c(47),{onDismiss:s}=t,{org:o}=Ce(),r=lt(),{decoKeyId:i}=uo(),a=K(),l=Be("credits");let c,d;if(e[0]!==o.id?(c=()=>{te("credits_exhausted_shown",{organization_id:o.id})},d=[o.id],e[0]=o.id,e[1]=c,e[2]=d):(c=e[1],d=e[2]),P.useEffect(c,d),!l)return null;let u;e[3]!==s?(u=I=>!I&&s?.(),e[3]=s,e[4]=u):u=e[4];let V;e[5]===Symbol.for("react.memo_cache_sentinel")?(V=["radial-gradient(ellipse 40% 200% at -5% 100%, rgba(165,149,255,0.5) 0%, transparent 100%)","radial-gradient(ellipse 40% 200% at 105% -10%, rgba(208,236,26,0.45) 0%, transparent 100%)"],e[5]=V):V=e[5];let p;e[6]===Symbol.for("react.memo_cache_sentinel")?(p=n.jsx("div",{className:"absolute inset-x-0 top-0 h-36 pointer-events-none",style:{backgroundImage:V.join(", "),maskImage:"linear-gradient(to bottom, black 0%, transparent 100%)",WebkitMaskImage:"linear-gradient(to bottom, black 0%, transparent 100%)"}}),e[6]=p):p=e[6];let f;e[7]===Symbol.for("react.memo_cache_sentinel")?(f=n.jsx("img",{src:"/logos/deco%20logo.svg",alt:"Deco AI Gateway",className:"size-9 rounded-lg object-contain dark:bg-white dark:p-0.5"}),e[7]=f):f=e[7];let h;e[8]!==a?(h=a("chat.creditsExhaustedBanner.title"),e[8]=a,e[9]=h):h=e[9];let m;e[10]!==h?(m=n.jsx(Es,{className:"text-xl font-semibold tracking-tight",children:h}),e[10]=h,e[11]=m):m=e[11];let g;e[12]!==a?(g=a("chat.creditsExhaustedBanner.description"),e[12]=a,e[13]=g):g=e[13];let x;e[14]!==g?(x=n.jsx(Ps,{className:"mt-1.5 text-sm leading-relaxed",children:g}),e[14]=g,e[15]=x):x=e[15];let v;e[16]!==x||e[17]!==m?(v=n.jsxs("div",{className:"relative px-8 pt-8 pb-2 overflow-hidden",children:[p,n.jsxs(Us,{className:"relative gap-4",children:[f,n.jsxs("div",{children:[m,x]})]})]}),e[16]=x,e[17]=m,e[18]=v):v=e[18];let b;e[19]!==i||e[20]!==s||e[21]!==a?(b=i&&n.jsxs("div",{className:"px-8 pt-5 pb-6",children:[n.jsx("div",{className:"rounded-xl border border-border p-5",children:n.jsx(Xr,{source:"exhausted_banner",onDone:s})}),n.jsx("div",{className:"mt-5 rounded-xl bg-muted/25 border border-border/50 p-4 space-y-3",children:ei.map(I=>n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx("div",{className:"flex items-center justify-center size-5 rounded-full bg-success/15 shrink-0",children:n.jsx(Vt,{size:12,className:"text-success"})}),n.jsx("span",{className:"text-sm text-foreground/80",children:a(I)})]},I))})]}),e[19]=i,e[20]=s,e[21]=a,e[22]=b):b=e[22];let j;e[23]!==a?(j=a("chat.creditsExhaustedBanner.dismiss"),e[23]=a,e[24]=j):j=e[24];let A;e[25]!==s||e[26]!==j?(A=n.jsx(W,{variant:"ghost",size:"sm",onClick:s,children:j}),e[25]=s,e[26]=j,e[27]=A):A=e[27];let y;e[28]!==r||e[29]!==s||e[30]!==o.slug?(y=()=>{r({to:"/$org/settings/ai-providers",params:{org:o.slug}}),s?.()},e[28]=r,e[29]=s,e[30]=o.slug,e[31]=y):y=e[31];let k;e[32]!==a?(k=a("chat.creditsExhaustedBanner.manageProviders"),e[32]=a,e[33]=k):k=e[33];let w;e[34]!==y||e[35]!==k?(w=n.jsx("button",{type:"button",className:"text-xs text-muted-foreground hover:text-foreground transition-colors",onClick:y,children:k}),e[34]=y,e[35]=k,e[36]=w):w=e[36];let S;e[37]!==A||e[38]!==w?(S=n.jsxs("div",{className:"px-8 py-4 border-t border-border bg-muted/30 flex items-center justify-between",children:[A,w]}),e[37]=A,e[38]=w,e[39]=S):S=e[39];let C;e[40]!==v||e[41]!==b||e[42]!==S?(C=n.jsxs(Ls,{className:"sm:max-w-[520px] gap-0 p-0 overflow-hidden",onOpenAutoFocus:si,children:[v,b,S]}),e[40]=v,e[41]=b,e[42]=S,e[43]=C):C=e[43];let N;return e[44]!==C||e[45]!==u?(N=n.jsx(Fs,{open:!0,onOpenChange:u,children:C}),e[44]=C,e[45]=u,e[46]=N):N=e[46],N}function si(t){return t.preventDefault()}const ni={trial_exhausted:{label:"chat.subscriptionLimit.trialLabel",title:"chat.subscriptionLimit.trialTitle"},monthly_exhausted:{label:"chat.subscriptionLimit.monthlyLabel",title:"chat.subscriptionLimit.monthlyTitle"},runs_exhausted:{label:"chat.subscriptionLimit.runsLabel",title:"chat.subscriptionLimit.runsTitle"}};function oi(t){const e=R.c(16),{kind:s,onDismiss:o,onSubscribe:r}=t,i=K(),{label:a,title:l}=ni[s];let c;e[0]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsx(ct,{size:14}),e[0]=c):c=e[0];let d;e[1]!==a||e[2]!==i?(d=i(a),e[1]=a,e[2]=i,e[3]=d):d=e[3];let u;e[4]!==i||e[5]!==l?(u=i(l),e[4]=i,e[5]=l,e[6]=u):u=e[6];let V;e[7]!==s||e[8]!==r||e[9]!==i?(V=s==="trial_exhausted"?n.jsx(W,{size:"sm",onClick:r,className:"h-7 text-xs",children:i("chat.subscriptionLimit.subscribeButton")}):void 0,e[7]=s,e[8]=r,e[9]=i,e[10]=V):V=e[10];let p;return e[11]!==o||e[12]!==d||e[13]!==u||e[14]!==V?(p=n.jsx(pe,{icon:c,label:d,title:u,defaultExpanded:!0,variant:"warning",onClose:o,footerRight:V}),e[11]=o,e[12]=d,e[13]=u,e[14]=V,e[15]=p):p=e[15],p}const ri={ai_budget_exhausted:{label:"chat.planRefused.budgetLabel",title:"chat.planRefused.budgetTitle"},feature_not_in_plan:{label:"chat.planRefused.featureLabel",title:"chat.planRefused.featureTitle"}};function Mt(t){const e=R.c(21),{kind:s,onDismiss:o}=t,r=K(),i=lt(),{org:a}=Ce(),{label:l,title:c}=ri[s];let d;e[0]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsx(ct,{size:14}),e[0]=d):d=e[0];let u;e[1]!==l||e[2]!==r?(u=r(l),e[1]=l,e[2]=r,e[3]=u):u=e[3];let V;e[4]!==r||e[5]!==c?(V=r(c),e[4]=r,e[5]=c,e[6]=V):V=e[6];let p;e[7]!==i||e[8]!==o||e[9]!==a.slug?(p=()=>{i({to:"/$org/settings/ai-providers",params:{org:a.slug}}),o()},e[7]=i,e[8]=o,e[9]=a.slug,e[10]=p):p=e[10];let f;e[11]!==r?(f=r("chat.planRefused.seePlans"),e[11]=r,e[12]=f):f=e[12];let h;e[13]!==p||e[14]!==f?(h=n.jsx(W,{size:"sm",className:"h-7 text-xs",onClick:p,children:f}),e[13]=p,e[14]=f,e[15]=h):h=e[15];let m;return e[16]!==o||e[17]!==u||e[18]!==V||e[19]!==h?(m=n.jsx(pe,{icon:d,label:u,title:V,defaultExpanded:!0,variant:"warning",onClose:o,footerRight:h}),e[16]=o,e[17]=u,e[18]=V,e[19]=h,e[20]=m):m=e[20],m}function bs(t){const e=ii(t);if(e!==null){const d=bs(e);return{summary:d.summary,rawDetails:d.rawDetails??t}}const s=t.trim(),o=s.startsWith("<")&&/<[a-z][\s\S]*>/i.test(s),r=/cloudflare|cf-[a-z-]+|error[\s_-]?code[\s_-]?5\d\d/i.test(s),i=/failed to fetch|networkerror|load failed|offline/i.test(s),a=/timeout|timed out|aborted|deadline/i.test(s),l=s.length>240,c=/sandbox failed to start(?::\s*(.+))?/is.exec(s);if(c){const d=c[1]?.trim().replace(/\.$/,"");return{summary:d?`Your sandbox didn't finish starting up (${d}). Try again.`:"Your sandbox didn't finish starting up. Try again.",rawDetails:t}}return r||o&&l?{summary:"Our servers are having a moment. Try sending again in a few seconds.",rawDetails:t}:i?{summary:"Lost connection. Check your network and try again.",rawDetails:t}:a?{summary:"That took longer than expected. Try again.",rawDetails:t}:o||l?{summary:"Something unexpected came back from the server. Try again.",rawDetails:t}:{summary:t,rawDetails:null}}function ii(t){const e=t.trim();if(!e.startsWith("{"))return null;let s;try{s=JSON.parse(e)}catch{return null}if(!s||typeof s!="object")return null;const{error:o,message:r}=s,i=typeof o=="string"?o:r;return typeof i=="string"&&i.trim()&&!i.trim().startsWith("{")?i:null}const ai={length:"chat.highlight.warningDescriptionLength","content-filter":"chat.highlight.warningDescriptionContentFilter","tool-calls":"chat.highlight.warningDescriptionToolCalls"};function We(t){const e=R.c(29),s=K(),{variant:o,onDismiss:r}=t,i=o==="error";let a;e[0]!==i||e[1]!==s?(a=s(i?"chat.highlight.errorOccurred":"chat.highlight.responseIncomplete"),e[0]=i,e[1]=s,e[2]=a):a=e[2];const l=a,c=i?Zn:Os;let d;e[3]!==t.error||e[4]!==t.finishReason||e[5]!==t.variant||e[6]!==s?(d=t.variant==="error"?t.error.message:(()=>{const v=ai[t.finishReason];return v?s(v):s("chat.highlight.responseStoppedUnexpectedly",{reason:t.finishReason})})(),e[3]=t.error,e[4]=t.finishReason,e[5]=t.variant,e[6]=s,e[7]=d):d=e[7];const u=d;let V;e[8]!==i||e[9]!==u?(V=i?bs(u):{summary:u,rawDetails:null},e[8]=i,e[9]=u,e[10]=V):V=e[10];const{summary:p,rawDetails:f}=V;let h;e[11]!==c?(h=n.jsx(c,{size:14}),e[11]=c,e[12]=h):h=e[12];let m;e[13]!==i||e[14]!==t.onContinue||e[15]!==t.onFixInChat||e[16]!==s?(m=i?n.jsx(W,{size:"sm",variant:"outline",onClick:t.onFixInChat,className:"h-7 text-xs",children:s("chat.highlight.fixInChat")}):n.jsx(W,{size:"sm",variant:"outline",onClick:t.onContinue,className:"h-7 text-xs",children:s("chat.highlight.continue")}),e[13]=i,e[14]=t.onContinue,e[15]=t.onFixInChat,e[16]=s,e[17]=m):m=e[17];let g;e[18]!==f||e[19]!==s?(g=f?n.jsxs("details",{className:"group mx-4",children:[n.jsxs("summary",{className:"flex cursor-pointer list-none items-center gap-1.5 text-xs text-muted-foreground transition-colors hover:text-foreground [&::-webkit-details-marker]:hidden",children:[n.jsx("svg",{"aria-hidden":"true",className:"size-3 transition-transform group-open:rotate-90",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:n.jsx("path",{d:"m4.5 3 3 3-3 3"})}),n.jsx("span",{className:"group-open:hidden",children:s("chat.highlight.showTechnicalDetails")}),n.jsx("span",{className:"hidden group-open:inline",children:s("chat.highlight.hideTechnicalDetails")})]}),n.jsxs("div",{className:"relative mt-2",children:[n.jsx("button",{type:"button",onClick:()=>{navigator.clipboard.writeText(f).then(()=>Le.success(s("chat.highlight.copiedToClipboard"))).catch(()=>Le.error(s("chat.highlight.couldNotCopy")))},"aria-label":s("chat.highlight.copyErrorDetails"),title:s("chat.highlight.copy"),className:"absolute right-1.5 top-1.5 z-10 flex h-6 w-6 items-center justify-center rounded-lg bg-background/80 text-muted-foreground backdrop-blur-sm transition-colors hover:bg-background hover:text-foreground",children:n.jsx(Xn,{className:"size-3.5"})}),n.jsx("pre",{className:"max-h-40 overflow-auto rounded-md border border-border/60 bg-background px-3 py-2 pr-8 font-mono text-xs text-foreground/80 whitespace-pre-wrap break-all",children:f})]})]}):null,e[18]=f,e[19]=s,e[20]=g):g=e[20];let x;return e[21]!==l||e[22]!==r||e[23]!==p||e[24]!==h||e[25]!==m||e[26]!==g||e[27]!==o?(x=n.jsx(pe,{icon:h,label:l,title:p,defaultExpanded:!0,variant:o,onClose:r,footerRight:m,children:g}),e[21]=l,e[22]=r,e[23]=p,e[24]=h,e[25]=m,e[26]=g,e[27]=o,e[28]=x):x=e[28],x}function Ke(t){const e=R.c(78);let s;e[0]!==t?(s=t===void 0?{}:t,e[0]=t,e[1]=s):s=e[1];const{inline:o,voiceMode:r}=s,i=o===void 0?!1:o,a=r===void 0?!1:r,l=K(),{error:c,clearError:d,finishReason:u,clearFinishReason:V,messages:p,isStreaming:f,submit:h,sendMessage:m}=$e(),[g,x]=Se(),{virtualMcpId:v,createTaskWithMessage:b}=He(),{chatMode:j,setChatMode:A,simpleModeTier:y}=Je(),k=Be("credits"),{mutate:w}=xo("ORGANIZATION_BILLING_CHECKOUT_START","taskBoard.subscriptionPaywall.checkoutError");let S;e[2]!==w?(S=()=>w(),e[2]=w,e[3]=S):S=e[3];const C=S;let N;e[4]!==j||e[5]!==y||e[6]!==v||e[7]!==a?(N=ne=>({...a?{voiceMode:!0}:{},tier:y,mode:j,toolApprovalLevel:ne,agent:v?{id:v}:void 0}),e[4]=j,e[5]=y,e[6]=v,e[7]=a,e[8]=N):N=e[8];const I=N;let _;e[9]!==g.toolApprovalLevel?(_=g.toolApprovalLevel??zs(),e[9]=g.toolApprovalLevel,e[10]=_):_=e[10];const E=_,U=p.at(-1),D=U?.role==="assistant"?U.parts:[],T=D.filter(di),O=D.filter(zt),F=Vs(D),Q=as(D);let z;e[11]!==c||e[12]!==m||e[13]!==l?(z=()=>{if(c){const ge={type:"doc",content:[{type:"paragraph",content:[{type:"text",text:l("chat.highlight.fixInChatMessage",{error:c.message})}]}]};m(ge)}},e[11]=c,e[12]=m,e[13]=l,e[14]=z):z=e[14];const Y=z;let L;e[15]!==m||e[16]!==l?(L=()=>{const ne={type:"doc",content:[{type:"paragraph",content:[{type:"text",text:l("chat.highlight.pleaseContinue")}]}]};m(ne)},e[15]=m,e[16]=l,e[17]=L):L=e[17];const H=L;let X;e[18]!==I||e[19]!==E||e[20]!==h?(X=(ne,ge)=>{h({kind:"toolOutput",toolCallId:ne.toolCallId,output:{response:ge}},I(E))},e[18]=I,e[19]=E,e[20]=h,e[21]=X):X=e[21];const Z=X;let ie;e[22]!==I||e[23]!==E||e[24]!==h?(ie=(ne,ge)=>{h({kind:"toolOutput",toolCallId:ne.toolCallId,output:{accepted:ge}},I(E))},e[22]=I,e[23]=E,e[24]=h,e[25]=ie):ie=e[25];const M=ie;let B;e[26]!==b||e[27]!==g||e[28]!==A||e[29]!==x||e[30]!==l||e[31]!==v?(B=ne=>{A("default"),x({...g,toolApprovalLevel:"auto"}),b({virtualMcpId:v,message:{parts:[{type:"text",text:l("chat.highlight.implementPlanMessage",{plan:ne})}]}})},e[26]=b,e[27]=g,e[28]=A,e[29]=x,e[30]=l,e[31]=v,e[32]=B):B=e[32];const J=B,se=ci;let ee;e[33]!==I||e[34]!==h?(ee=(ne,ge,xe,Ee)=>{h({kind:"approval",approvalId:ne,approved:ge,...xe?{reason:xe}:{}},I(Ee))},e[33]=I,e[34]=h,e[35]=ee):ee=e[35];const le=ee,G=cs();if(G.isCreditExhausted){let ne;return e[36]!==k||e[37]!==d||e[38]!==i?(ne=k?n.jsx(ti,{onDismiss:d}):n.jsx("div",{className:$(!i&&"absolute bottom-full left-0 right-0"),children:n.jsx(Mt,{kind:"ai_budget_exhausted",onDismiss:d})}),e[36]=k,e[37]=d,e[38]=i,e[39]=ne):ne=e[39],ne}const{showError:ae,showWarning:Ve,hasApprovals:ce}=G,Ne=T.map(Vi).join("|"),_e=ls(F)?.toolCallId??"",qe=Q.map(li).join("|"),ue=!i&&"absolute bottom-full left-0 right-0";let fe;e[40]!==ue?(fe=$(ue),e[40]=ue,e[41]=fe):fe=e[41];let be;e[42]!==G.todos?(be=n.jsx(Qr,{todos:G.todos}),e[42]=G.todos,e[43]=be):be=e[43];let de;e[44]!==d||e[45]!==G.subscriptionErrorKind||e[46]!==C?(de=G.subscriptionErrorKind&&n.jsx(oi,{kind:G.subscriptionErrorKind,onDismiss:d,onSubscribe:C}),e[44]=d,e[45]=G.subscriptionErrorKind,e[46]=C,e[47]=de):de=e[47];let Ae;e[48]!==d||e[49]!==G.planRefusal?(Ae=G.planRefusal&&n.jsx(Mt,{kind:G.planRefusal,onDismiss:d}),e[48]=d,e[49]=G.planRefusal,e[50]=Ae):Ae=e[50];let ke;e[51]!==d||e[52]!==c||e[53]!==Y||e[54]!==ae?(ke=ae&&n.jsx(We,{variant:"error",error:c,onDismiss:d,onFixInChat:Y}),e[51]=d,e[52]=c,e[53]=Y,e[54]=ae,e[55]=ke):ke=e[55];let he;e[56]!==V||e[57]!==u||e[58]!==H||e[59]!==Ve?(he=Ve&&n.jsx(We,{variant:"warning",finishReason:u,onDismiss:V,onContinue:H}),e[56]=V,e[57]=u,e[58]=H,e[59]=Ve,e[60]=he):he=e[60];const Me=ce&&n.jsx(Cr,{approvals:Q,isStreaming:f,onRespond:le},qe),De=G.hasPlans&&n.jsx(Ir,{plans:F,isStreaming:f,onApprove:J,onDismiss:se},_e),Re=G.hasTaskSuggestion&&n.jsx(Kr,{parts:O,isStreaming:f,onRespond:M},O.at(-1)?.toolCallId??"");let me;e[61]!==G.isWaitingForUserInput||e[62]!==Z||e[63]!==f||e[64]!==Ne||e[65]!==T?(me=G.isWaitingForUserInput&&n.jsx(vs,{userAskParts:T,isStreaming:f,onSubmit:Z},Ne),e[61]=G.isWaitingForUserInput,e[62]=Z,e[63]=f,e[64]=Ne,e[65]=T,e[66]=me):me=e[66];let Ie;return e[67]!==fe||e[68]!==be||e[69]!==de||e[70]!==Ae||e[71]!==ke||e[72]!==he||e[73]!==Me||e[74]!==De||e[75]!==Re||e[76]!==me?(Ie=n.jsxs("div",{className:fe,children:[be,de,Ae,ke,he,Me,De,Re,me]}),e[67]=fe,e[68]=be,e[69]=de,e[70]=Ae,e[71]=ke,e[72]=he,e[73]=Me,e[74]=De,e[75]=Re,e[76]=me,e[77]=Ie):Ie=e[77],Ie}function li(t){return t.approvalId}function Vi(t){return t.toolCallId}function ci(){document.querySelector("[data-chat-input]")?.focus()}function di(t){return t.type==="tool-user_ask"}Ke.Error=function(e){return n.jsx(We,{variant:"error",error:e.error,onDismiss:e.onDismiss,onFixInChat:e.onFixInChat})};Ke.Warning=function(e){return n.jsx(We,{variant:"warning",finishReason:e.finishReason,onDismiss:e.onDismiss,onContinue:e.onContinue})};Ke.UserAskQuestion=vs;function As(t){const e=R.c(20),{taskId:s}=t,o=K(),r=hn(s),i=mn(r),a=gn(),{stop:l,removeLocalMessage:c}=$e();if(i.length===0)return null;let d;e[0]!==o?(d=o("chat.queueTray.sendNow"),e[0]=o,e[1]=d):d=e[1];let u;e[2]!==l?(u=()=>{l()},e[2]=l,e[3]=u):u=e[3];let V;e[4]===Symbol.for("react.memo_cache_sentinel")?(V=n.jsx(qt,{size:14}),e[4]=V):V=e[4];let p;e[5]!==d||e[6]!==u?(p=n.jsx(Xe,{asChild:!0,children:n.jsx(W,{type:"button",variant:"ghost",size:"icon-sm","aria-label":d,onClick:u,children:V})}),e[5]=d,e[6]=u,e[7]=p):p=e[7];let f;e[8]!==o?(f=o("chat.queueTray.sendNow"),e[8]=o,e[9]=f):f=e[9];let h;e[10]!==f?(h=n.jsx(et,{side:"top",children:n.jsx("p",{className:"text-xs",children:f})}),e[10]=f,e[11]=h):h=e[11];let m;e[12]!==p||e[13]!==h?(m=n.jsxs(tt,{delayDuration:400,children:[p,h]}),e[12]=p,e[13]=h,e[14]=m):m=e[14];let g;return e[15]!==a||e[16]!==c||e[17]!==o||e[18]!==s?(g=(x,v)=>n.jsxs("div",{className:"group/queuerow flex items-center gap-2 px-3 py-1.5",children:[n.jsx("span",{className:"flex size-[18px] shrink-0 items-center justify-center rounded-full bg-muted text-[10px] font-semibold text-muted-foreground dark:bg-background",children:v+1}),n.jsx("span",{className:"min-w-0 flex-1 truncate text-sm text-foreground",children:x.text}),n.jsx("div",{className:"flex shrink-0 items-center gap-1 opacity-0 transition-opacity focus-within:opacity-100 group-hover/queuerow:opacity-100",children:n.jsx(W,{type:"button",variant:"ghost",size:"icon-sm",title:o("chat.queueTray.removeFromQueue"),"aria-label":o("chat.queueTray.removeFromQueue"),onClick:()=>{a.cancel(s,x.messageId).then(b=>{b&&(xn(s,x.messageId),c(x.messageId))})},children:n.jsx($t,{className:"size-3.5"})})})]},x.messageId),e[15]=a,e[16]=c,e[17]=o,e[18]=s,e[19]=g):g=e[19],n.jsxs("div",{className:"mb-1 overflow-hidden rounded-2xl border border-border bg-card dark:bg-muted",children:[n.jsxs("div",{className:"flex items-center justify-between gap-2 border-b border-border py-1.5 pr-2 pl-3 text-xs text-muted-foreground",children:[n.jsx("span",{children:o(i.length===1?"chat.queueTray.queuedMessage":"chat.queueTray.queuedMessages",{count:i.length})}),m]}),i.map(g)]})}function ui(t){return["openai-compatible","openrouter","deco"].includes(t)}function pi(t,e){return ui(t)&&fi(e)!==null}function fi(t){const e=t.replace(/^openai\//,"");return/^(gpt-\d|o[134](?:-|$))/.test(e)?e:null}const hi={anthropic:/^claude-/,openrouter:/^anthropic\/claude-/,deco:/^anthropic\/claude-/};function mi(t,e){return hi[t]?.test(e)??!1}function gi(t){return To(t)&&mi(t.providerId,t.modelId)}function xi(t,e){return t?{modelId:t.modelId,title:t.title??t.modelId,keyId:t.keyId,providerId:e,description:null,logo:null,capabilities:[],limits:null,costs:null}:null}const vi={fast:"chat.tierTrigger.tierFast",smart:"chat.tierTrigger.tierSmart",thinking:"chat.tierTrigger.tierThinking"};function bi(t){const e=R.c(32),{tier:s,orgSlot:o,userSlot:r,autoSlot:i,filterModels:a,onPick:l,onReset:c,onClose:d}=t,u=K(),V=os(),p=new Set(V.map(Ai)),f=vn([r,o,i],p),h=f?.keyId??null,[m,g]=P.useState(h??V[0]?.id??null),x=V.some(F=>F.id===m)?m:h??V[0]?.id??null,v=x?V.find(F=>F.id===x):null,b="flex h-[70vh] max-h-[460px] w-full flex-col",j=vi[s];let A;e[0]!==u||e[1]!==j?(A=u(j),e[0]=u,e[1]=j,e[2]=A):A=e[2];let y;e[3]!==A?(y=n.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:A}),e[3]=A,e[4]=y):y=e[4];let k;e[5]!==c||e[6]!==u||e[7]!==r?(k=r&&n.jsx("button",{type:"button",onClick:c,className:"text-xs text-muted-foreground hover:text-foreground px-2 py-1 rounded-lg hover:bg-accent cursor-pointer",children:u("chat.modelPreferences.reset")}),e[5]=c,e[6]=u,e[7]=r,e[8]=k):k=e[8];let w;e[9]!==y||e[10]!==k?(w=n.jsxs("div",{className:"flex items-center justify-between px-3 h-8 shrink-0",children:[y,k]}),e[9]=y,e[10]=k,e[11]=w):w=e[11];const S="flex-1 min-h-0",C=P.Suspense;let N;e[12]===Symbol.for("react.memo_cache_sentinel")?(N=n.jsx(bo,{}),e[12]=N):N=e[12];const I=vo,_=!0,E=xi(h?f:null,v?.providerId??"deco");let U;e[13]!==x||e[14]!==l||e[15]!==g?(U=F=>{const Q=F.keyId??x??"";g(Q),l({keyId:Q,modelId:F.modelId,title:F.title})},e[13]=x,e[14]=l,e[15]=g,e[16]=U):U=e[16];let D;e[17]!==I||e[18]!==x||e[19]!==a||e[20]!==d||e[21]!==g||e[22]!==E||e[23]!==U?(D=n.jsx(I,{compact:_,filterModels:a,onClose:d,credentialId:x,onCredentialChange:g,selectedModel:E,onModelChange:U}),e[17]=I,e[18]=x,e[19]=a,e[20]=d,e[21]=g,e[22]=E,e[23]=U,e[24]=D):D=e[24];let T;e[25]!==C||e[26]!==D||e[27]!==N?(T=n.jsx("div",{className:S,children:n.jsx(C,{fallback:N,children:D})}),e[25]=C,e[26]=D,e[27]=N,e[28]=T):T=e[28];let O;return e[29]!==T||e[30]!==w?(O=n.jsxs("div",{className:b,children:[w,T]}),e[29]=T,e[30]=w,e[31]=O):O=e[31],O}function Ai(t){return t.id}const yi=["fast","smart","thinking"];function ys(t){return{fast:t("chat.tierTrigger.tierFast"),smart:t("chat.tierTrigger.tierSmart"),thinking:t("chat.tierTrigger.tierThinking")}}const Dt={fast:"chat.agentModels.quickerResponses",smart:"chat.agentModels.balancedQuality",thinking:"chat.agentModels.deeperReasoning"};function ji(t){const e=R.c(28),{tier:s,pillIcon:o,groups:r}=t,i=K();let a;e[0]!==i?(a=ys(i),e[0]=i,e[1]=a):a=e[1];const l=a,[c,d]=P.useState(!1);let u;e[2]===Symbol.for("react.memo_cache_sentinel")?(u=w=>{w.onSelect(),d(!1)},e[2]=u):u=e[2];const V=u,p=l[s];let f;e[3]===Symbol.for("react.memo_cache_sentinel")?(f=$("text-muted-foreground hover:text-foreground transition-[gap] duration-200 shrink min-w-0","gap-0 @[320px]/chat-bottom:gap-1.5"),e[3]=f):f=e[3];let h;e[4]===Symbol.for("react.memo_cache_sentinel")?(h=$("min-w-0 truncate transition-[max-width,opacity] duration-200 ease-out max-w-0 opacity-0","@[320px]/chat-bottom:max-w-24 @[320px]/chat-bottom:opacity-100"),e[4]=h):h=e[4];const m=l[s];let g;e[5]!==m?(g=n.jsx("span",{className:h,children:m}),e[5]=m,e[6]=g):g=e[6];let x;e[7]===Symbol.for("react.memo_cache_sentinel")?(x=n.jsx(Xt,{size:12,className:"opacity-60 hidden @[320px]/chat-bottom:inline-block"}),e[7]=x):x=e[7];let v;e[8]!==o||e[9]!==p||e[10]!==g?(v=n.jsx(Xe,{asChild:!0,children:n.jsx("span",{className:"inline-flex min-w-0 shrink",children:n.jsx(es,{asChild:!0,children:n.jsxs(W,{type:"button",variant:"ghost",size:"default","aria-label":p,className:f,children:[o,g,x]})})})}),e[8]=o,e[9]=p,e[10]=g,e[11]=v):v=e[11];let b;e[12]!==p?(b=n.jsx(et,{children:p}),e[12]=p,e[13]=b):b=e[13];let j;e[14]!==v||e[15]!==b?(j=n.jsxs(tt,{children:[v,b]}),e[14]=v,e[15]=b,e[16]=j):j=e[16];let A;if(e[17]!==r||e[18]!==i){let w;e[20]!==i?(w=S=>n.jsx("div",{className:"flex flex-col",children:S.rows.map(C=>n.jsxs("div",{className:"group/tier-row relative flex items-stretch rounded-lg hover:bg-muted",children:[n.jsxs("button",{type:"button",role:"menuitem","aria-label":C.title,onClick:()=>V(C),className:$("flex flex-1 min-w-0 items-start gap-2 px-2 py-1.5 text-left",C.modelOverride&&"pr-7 [@media(hover:hover)]:pr-2"),children:[C.icon&&n.jsx("span",{className:"shrink-0 text-muted-foreground mt-0.5",children:C.icon}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsx("div",{className:"text-sm",children:C.title}),C.subtitle&&n.jsx("div",{className:"text-xs text-muted-foreground",children:C.subtitle})]}),C.active&&n.jsx("span",{title:i("chat.tierTrigger.selected"),children:n.jsx(Vt,{size:14,className:"text-foreground mt-0.5"})})]}),C.modelOverride&&n.jsx(wi,{label:C.title,render:C.modelOverride})]},C.key))},S.key),e[20]=i,e[21]=w):w=e[21],A=r.map(w),e[17]=r,e[18]=i,e[19]=A}else A=e[19];let y;e[22]!==A?(y=n.jsx(ts,{align:"end",className:"p-1 w-64",onOpenAutoFocus:ki,children:n.jsx("div",{role:"menu",className:"flex flex-col",children:A})}),e[22]=A,e[23]=y):y=e[23];let k;return e[24]!==c||e[25]!==j||e[26]!==y?(k=n.jsxs(ss,{open:c,onOpenChange:d,children:[j,y]}),e[24]=c,e[25]=j,e[26]=y,e[27]=k):k=e[27],k}function ki(t){return t.preventDefault()}function wi(t){const e=R.c(38),{label:s,render:o}=t,r=K(),i=ns(),[a,l]=P.useState(!1);let c;e[0]===Symbol.for("react.memo_cache_sentinel")?(c=()=>l(!1),e[0]=c):c=e[0];const d=c;let u;e[1]!==s||e[2]!==r?(u=r("chat.modelPreferences.customizeModel",{tier:s}),e[1]=s,e[2]=r,e[3]=u):u=e[3];const V=a&&"opacity-100";let p;e[4]!==V?(p=$("absolute right-1 top-1/2 -translate-y-1/2 flex items-center justify-center","size-6 rounded-lg bg-background border border-border/60 shadow-sm","text-muted-foreground hover:text-foreground","opacity-100 [@media(hover:hover)]:opacity-0","[@media(hover:hover)]:group-hover/tier-row:opacity-100","[@media(hover:hover)]:group-focus-within/tier-row:opacity-100",V),e[4]=V,e[5]=p):p=e[5];let f;e[6]===Symbol.for("react.memo_cache_sentinel")?(f=n.jsx(Qn,{size:14}),e[6]=f):f=e[6];let h;e[7]!==u||e[8]!==p?(h=n.jsx("button",{type:"button","aria-label":u,className:p,children:f}),e[7]=u,e[8]=p,e[9]=h):h=e[9];const m=h;if(i){let j;e[10]!==m?(j=n.jsx(jo,{asChild:!0,children:m}),e[10]=m,e[11]=j):j=e[11];let A;e[12]!==s||e[13]!==r?(A=r("chat.modelPreferences.customizeModel",{tier:s}),e[12]=s,e[13]=r,e[14]=A):A=e[14];let y;e[15]!==A?(y=n.jsx(ko,{className:"sr-only",children:A}),e[15]=A,e[16]=y):y=e[16];let k;e[17]!==a||e[18]!==o?(k=a&&o(d),e[17]=a,e[18]=o,e[19]=k):k=e[19];let w;e[20]!==k||e[21]!==y?(w=n.jsxs(wo,{className:"p-0 flex flex-col max-h-[95vh]",children:[y,k]}),e[20]=k,e[21]=y,e[22]=w):w=e[22];let S;return e[23]!==a||e[24]!==w||e[25]!==j?(S=n.jsxs(So,{open:a,onOpenChange:l,children:[j,w]}),e[23]=a,e[24]=w,e[25]=j,e[26]=S):S=e[26],S}let g;e[27]!==m?(g=n.jsx(es,{asChild:!0,children:m}),e[27]=m,e[28]=g):g=e[28];let x;e[29]!==a||e[30]!==o?(x=a&&o(d),e[29]=a,e[30]=o,e[31]=x):x=e[31];let v;e[32]!==x?(v=n.jsx(ts,{side:"right",align:"start",collisionPadding:12,className:"w-[min(22rem,calc(100vw-2rem))] p-0 overflow-hidden",children:x}),e[32]=x,e[33]=v):v=e[33];let b;return e[34]!==a||e[35]!==g||e[36]!==v?(b=n.jsxs(ss,{open:a,onOpenChange:l,children:[g,v]}),e[34]=a,e[35]=g,e[36]=v,e[37]=b):b=e[37],b}function Rt(t){return t==="fast"?n.jsx(ct,{size:16}):t==="thinking"?n.jsx(qn,{size:16}):n.jsx(Co,{size:16})}function Si(t){const e=R.c(13),s=yn();let o;e[0]!==t||e[1]!==s.tiers?(o=d=>{const u=s.tiers[d];return u?u.title??u.modelId:t.chat[d]?.title},e[0]=t,e[1]=s.tiers,e[2]=o):o=e[2];const r=o;let i;e[3]!==r?(i=r("fast"),e[3]=r,e[4]=i):i=e[4];let a;e[5]!==r?(a=r("smart"),e[5]=r,e[6]=a):a=e[6];let l;e[7]!==r?(l=r("thinking"),e[7]=r,e[8]=l):l=e[8];let c;return e[9]!==i||e[10]!==a||e[11]!==l?(c={fast:i,smart:a,thinking:l},e[9]=i,e[10]=a,e[11]=l,e[12]=c):c=e[12],c}function Ci(){const t=R.c(25),e=K(),{simpleModeTier:s,setSimpleModeTier:o}=Je(),r=No(),i=os(),a=_o(i),l=Si(a),{data:c,error:d}=bn();let u;t[0]!==c?(u=c===void 0?{tiers:{}}:c,t[0]=c,t[1]=u):u=t[1];const V=u,p=An(),f=Ge()?.lockedHarness,h=f==="claude-code",m=Be("model_choice"),g=lo(),x=Vo();if(!g||!m)return null;let v,b;if(t[2]!==a||t[3]!==x||t[4]!==h||t[5]!==f||t[6]!==r||t[7]!==o||t[8]!==e||t[9]!==s||t[10]!==l||t[11]!==p||t[12]!==V||t[13]!==d){const w=ys(e);v="decopilot",b=yi.map(S=>{const C=l[S],N=V.tiers[S];return{key:`decopilot-${S}`,icon:Rt(S),title:w[S],subtitle:x?C??e(Dt[S]):e(Dt[S]),active:s===S,onSelect:()=>o(S),modelOverride:x?I=>n.jsxs(n.Fragment,{children:[d&&n.jsx("div",{className:"text-xs text-destructive p-3 pb-0",children:e("chat.modelPreferences.loadFailed")}),n.jsx(bi,{tier:S,orgSlot:r.tiers[S],userSlot:N,autoSlot:a.chat[S],filterModels:f==="codex"?Ni:h?gi:void 0,onClose:I,onPick:_=>p.mutate({tier:S,slot:_}),onReset:()=>p.mutate({tier:S,slot:null})},`${S}:${N?.keyId??"org"}:${N?.modelId??""}`)]}):void 0}}),t[2]=a,t[3]=x,t[4]=h,t[5]=f,t[6]=r,t[7]=o,t[8]=e,t[9]=s,t[10]=l,t[11]=p,t[12]=V,t[13]=d,t[14]=v,t[15]=b}else v=t[14],b=t[15];let j;t[16]!==v||t[17]!==b?(j=[{key:v,rows:b}],t[16]=v,t[17]=b,t[18]=j):j=t[18];const A=j;let y;t[19]!==s?(y=Rt(s),t[19]=s,t[20]=y):y=t[20];let k;return t[21]!==A||t[22]!==y||t[23]!==s?(k=n.jsx(ji,{tier:s,pillIcon:y,groups:A}),t[21]=A,t[22]=y,t[23]=s,t[24]=k):k=t[24],k}function Ni(t){return pi(t.providerId,t.modelId)}function js(t){const e=R.c(3),[s]=Se();let o;return e[0]!==s.enableSounds||e[1]!==t?(o=()=>{s.enableSounds&&zo(t.dataUri).catch(i=>{console.warn(`[sound] ${t.name} playback failed:`,i)})},e[0]=s.enableSounds,e[1]=t,e[2]=o):o=e[2],o}const Ii={name:"switch-005",dataUri:"data:audio/mpeg;base64,SUQzBAAAAAAAIlRTU0VAAAAOAAADTGF2ZjYyLjMuMTAwAAAAAAAAAAAAAAD/+1DAAAAAAAAAAAAAAAAAAAAAAABJbmZvAAAADwAAABkAABU4ABMTEx0dHR0nJycnMTExMTs7OztERERETk5OTlhYWFhiYmJibGxsbHZ2dnZ/f39/iYmJiZOTk5OdnZ2dp6enp7GxsbG7u7u7xMTExM7Ozs7Y2NjY4uLi4uzs7Oz29vb2/////wAAAABMYXZjNjIuMTEAAAAAAAAAAAAAAAAkBVYAAAAAAAAVOPCP8KUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//tQxAAACEwDXvQRAAG8Ii93HtACUCAABAKCJwfaCEHwfeoEAQdEAYygIHBOCAIAgCAJh9QIOg+D5/ygPh/wfB8DuKAgCHyn9QPh/5SCDv+CEHAQdxOD4B27c39tbckkqYbBAYAN9bNJLB+aXAf5wQAKdzxfbmrVIRQ4xNx3HwnoDmLhfMhgJiiw/HREXNCHqjvHEPEG8QjBYlxQNepJAT0kC8ip6JzSWj1TasoG+iyycbf2Uil1ovf1f/oUtR1qP+s1WSBFKoAAU02BDjMhuP/7UsQEgws8bRpd8YABJYPeBf9wCGXTGxBYcw5AJFMFMAmQQAhGAxgLBgHIAMYAAALhgAchipbe/91aU1VV4zcZj1Vf1XgYCIMBNrsBAIGs9/Ue4i/xFPeqCqwViI9/UeLf///rOngdA3OPHFjmOBv+EQnGahgaZxVplmkAH5JadDTQlNCEuGNiWYbCCONWdUJg6HXNazFdu1T+VgaEpOP70exv7f2/4b/yH//2/4cqCX/zWRUrIw+IPNMNlDnjAXQas/I4AzmYifA0tMSCgQDF//tSxBCDSzzi3k/sQwEyCtjJ/rBZAk+Uqj1YhA5YMCAAMwgOUchTkK7OR7LbMl0W1H6SvzG0Q2ZzfKUhnmTobv9DNhS1v7P8h//8Gv8gTRt1jReZ7YEjmMQg9hhwwMycHooasFmZyjcZGBKJD+IwbMCQQLoi+IQXCcIoydKoilI2MWFS5uJdDEu2taRrYI2ZSqKY50pJLv2NfjUAAuQAMfqVQ/T3PDQgMJMeEZ45hJzY6MNoFMxqTj1zNGQKJjAxEsSCBgQJBSIL0mcKYQJfVAn/+1LEGwLKlEKrD3MiYcuMkVa/wABB8Vh6M1q1epbvXwWBURhkyEhWZ/////////////9gjZ/Wt4w+4MNMCpE4TBYQl4w1IHvMDdA2zBngBMwc8COMDhCpDAfgOAAgrBgNYU+YC0FBGAkAMpgWoSCYAGESGBGAKBgXgJOdiOJmMCmNwCYNDJhYRPykRCJhTBnEUzlsjv4UNLj/z97n3Mv/7z1nZqyitYAZIqErIwMwJAqEw0GAAMFptJMaqFwB8CQIWlhuhuDAwNjfuwrQFAYXCf/7UsQVAA+9PTP42gYRdiIu9zBwAPbFUCi0DAhgNcS+7cDwVgM05A9bUDeuQMyE/u3CygVISgZhpIau/9PhdQG2C9DpxZZJmn/dn/Psmt0EFm////l84ThUTopE4VD/9JkubOGasTvN30C20G21qgUCkVCoUCgPMywrPCGly27V5q5t24vl/8jSlSAPCxzNseNCw3oh3NGBu4BZJ5hv7DRSfR/+eWG7nA8IKh2Olv5iz3q5m3//Joxo3JqNyYkSuGt/k6D4DeoBOHmHdl0dkZYA//tSxAUAC4B1Z/2DADEcA17Z/uhI4Yoik/TrZo+ww7UtmpW4LDWu2IacoJKJJeTSM+ZmAYBEiU+ZnnAwCn1VVVV6JUJQVnioKhrgqdKgqGpUFeCp0sDR3ztQNREDRUFioKuxKCpYGQBlRIBk+aLwb8KblGQVDdphPYTUdBOGbVpAaTF6ZdjEV0iRUZRCYkA4oUQDx5zqDugtXvza/7fuNNvfZ+j9v+T/2f//J/4cAAOTpE5K4zksR9MfIB+TDcQTI4gNs1XKAzEFUrGkxABYEBb/+1LEEYNKrEjgT/TCwYYVmUX+mHoKgWhKU5Eiw9SFIRmppw+3fYo4siPhUFeexM8KgIO6wVuPDDy01qeRaVbw357//y3+o8M0pBNlNLCGBzGKwyYw2IIFOE1WNTjRM6x8MlA1AxDhUHTAkEiyKpnbWrLcaOBotBUKbk1pypcWDAIK00AhKLGkUco6q9VWvM53mcaq3tVa8zjTM/tX//EDP//////////XAAmrwAAPoKwcw0ShDCZD/BQlhzinxQdorsOuXTEIC01ZkJyu4k/qPP/7UsQUAEjkrrkvZaPBIRXUoe5QObfMhYKX9RVgTPqCSCaSCaSC0XVdV1f/////6IAlguuAJSiDRNloNBsZg+0+Ts8MMCn81WUTRAlIi+GHECD0y8AWDIqswYsxGOSKVV7MqOni8tkVOip0fZX/////9HrMCbAz2EHGS4GKAAiRAAAYAcDdKd4G6Z/nwYgJ0ZAIgZyC8aPAs/iPBhwMpWDQNARltNS5Y61v//9i8Yl4SkFkIGTkAc0UBrIYLPA4MYBEy+YLMRuY4nhTC3hZA68H//tSxCoAyQC6mY6CkWDJBIsBz/QUrgNmahSzcrYw0/HhfnMAZBojDsgTFkDR5MDkG/DZEbk2FCmowqdqv2TYABiJwqqYjaQRGZ1URZ1DhSsdiHX/GBu0QpzIBNSaLqZ0ARkwFARxMrpt/Eh47mbQAhhU6sisFUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+1LESoHHJCRaj/dmYAIAQAAQAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7UsSLg8AAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+1LEoYPAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7UsShg8AAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+1LEoYPAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV",duration:.609,format:"mp3",license:"CC0",author:"Kenney"},Ti=Nn.togglePlanMode.keys.map(t=>t==="Shift"?"⇧":t).join(""),_i=[{src:"/connections/gmail.png",name:"Gmail"},{src:"/connections/perplexity.png",name:"Perplexity"},{src:"/connections/github.png",name:"GitHub"}];function Mi(){const t=R.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=n.jsx("div",{className:"flex items-center -space-x-1.5",children:_i.map(Di)}),t[0]=e):e=t[0],e}function Di(t){return n.jsx("img",{src:t.src,alt:t.name,className:"size-5 rounded-sm ring-1 ring-border object-cover bg-white"},t.name)}function Ri({disabled:t,onOpenConnections:e,virtualMcpId:s,selectedModel:o,isStreaming:r,onUnsupportedFile:i}){const a=K(),[l,c]=P.useState(!1),d=js(Ii),{org:u}=Ce(),{editor:V}=Ot(),p=P.useRef(null),f=ft(o),h=()=>{!f||r||(c(!1),p.current?.click())},m=async M=>{const B=M.target.files;if(!B||B.length===0||!V)return;const J=Array.from(B);try{let se=V.state.selection.from;for(const ee of J)await rs(V,o??null,ee,se,i,a),se=V.state.selection.to}finally{p.current&&(p.current.value="")}},g=Po({connectionId:s,orgId:u.id,orgSlug:u.slug}),x=$s.virtualMcpPrompts(s,u.id),{data:v,isLoading:b}=Bs({queryKey:x,queryFn:()=>Uo(g),staleTime:6e4,enabled:l&&!!g}),j=v?.prompts??[],[A,y]=P.useState(null),{chatMode:k,setChatMode:w}=Je(),[S,C]=Se(),N=Ge()?.lockedHarness!=="claude-code",I=we.find(M=>M.value===S.toolApprovalLevel)??we[0],_=a(I.shortKey),E=M=>{const B=we.find(J=>J.value===M);if(B){if(B.value===S.toolApprovalLevel){c(!1);return}d(),te("chat_approval_level_changed",{from_level:S.toolApprovalLevel,to_level:B.value,source:"tools_popover"}),C({...S,toolApprovalLevel:B.value}),c(!1)}},U=k==="plan",D=()=>{d();const M=U?"default":"plan";te("chat_mode_changed",{from_mode:k,to_mode:M,source:"tools_popover"}),w(M),c(!1)},T=()=>{e(),c(!1)},O=async(M,B)=>{if(!V||!g)return;const J=kt(M._meta),se={from:V.state.selection.from,to:V.state.selection.to};try{const ee=await Lo(g,M.name,B);cn(V,se,{id:M.name,name:mo(M.name,J),metadata:ee.messages,char:"/",kind:"prompt",args:B})}catch{Le.error(a("chat.toolsPopover.failedLoadPrompt"))}},F=async M=>{c(!1);const B=!!(M.arguments&&M.arguments.length>0);if(te("chat_prompt_inserted",{prompt_name:M.name,with_arguments:B}),B){y(M);return}await O(M)},Q=async M=>{A&&(await O(A,M),y(null))},z=()=>{d();const M=k==="gen-image"?"default":"gen-image";te("chat_mode_changed",{from_mode:k,to_mode:M,source:"tools_popover"}),w(M),c(!1)},Y=()=>{d();const M=k==="web-search"?"default":"web-search";te("chat_mode_changed",{from_mode:k,to_mode:M,source:"tools_popover"}),w(M),c(!1)},L=()=>{d();const M=k==="deep-research"?"default":"deep-research";te("chat_mode_changed",{from_mode:k,to_mode:M,source:"tools_popover"}),w(M),c(!1)},H=k==="gen-image",X=k==="web-search",Z=k==="deep-research",ie=n.jsx("input",{ref:p,type:"file",multiple:!0,accept:Ao(o??null),className:"hidden",onChange:m,disabled:r});return n.jsxs(n.Fragment,{children:[ie,n.jsxs(Ks,{open:l,onOpenChange:M=>{M&&!l&&te("chat_tools_popover_opened",{chat_mode:k}),c(M)},children:[n.jsx(qs,{asChild:!0,children:n.jsxs(W,{type:"button",variant:"ghost",size:"default",disabled:t,title:a("chat.toolsPopover.tools"),"aria-label":a("chat.toolsPopover.tools"),className:$("text-muted-foreground hover:text-foreground transition-[gap] duration-200 shrink min-w-0","gap-0 @[320px]/chat-bottom:gap-1.5"),children:[n.jsx(Yn,{size:14}),n.jsx("span",{className:$("min-w-0 truncate transition-[max-width,opacity] duration-200 ease-out max-w-0 opacity-0","@[320px]/chat-bottom:max-w-24 @[320px]/chat-bottom:opacity-100"),children:a("chat.toolsPopover.tools")})]})}),n.jsxs(Qs,{align:"start",className:"w-56 p-1.5 space-y-1",children:[f?n.jsxs(ye,{onClick:h,disabled:r,children:[n.jsx(wt,{size:16}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.addFile")})]}):n.jsxs(tt,{children:[n.jsx(Xe,{asChild:!0,children:n.jsxs(ye,{"aria-disabled":"true",className:"opacity-50 cursor-not-allowed",onSelect:M=>M.preventDefault(),children:[n.jsx(wt,{size:16}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.addFile")})]})}),n.jsx(et,{side:"right",children:a("chat.toolsPopover.modelNoFileSupport")})]}),n.jsxs(ye,{onClick:D,className:$(U&&"text-special"),children:[n.jsx(Qt,{size:16,className:$(U&&"text-special")}),n.jsx("span",{className:"flex-1 whitespace-nowrap",children:a("chat.toolsPopover.planMode")}),n.jsx("span",{className:$("text-xs text-muted-foreground",U&&"text-special font-medium"),children:Ti})]}),n.jsxs(ye,{onClick:z,className:$(H&&"text-special"),children:[n.jsx(Jt,{size:16,className:$(H&&"text-special")}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.createImage")}),H&&n.jsx("span",{className:"text-xs text-special font-medium",children:a("chat.toolsPopover.on")})]}),n.jsxs(ye,{onClick:Y,className:$(X&&"text-special"),children:[n.jsx(Gt,{size:16,className:$(X&&"text-special")}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.webSearch")}),X&&n.jsx("span",{className:"text-xs text-special font-medium",children:a("chat.toolsPopover.on")})]}),n.jsxs(ye,{onClick:L,className:$(Z&&"text-special"),children:[n.jsx(Ht,{size:16,className:$(Z&&"text-special")}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.deepResearch")}),Z&&n.jsx("span",{className:"text-xs text-special font-medium",children:a("chat.toolsPopover.on")})]}),n.jsxs(xt,{children:[n.jsxs(vt,{className:"gap-2",children:[n.jsx("span",{className:"flex size-4 items-center justify-center text-base font-medium text-muted-foreground",children:"/"}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.prompts")})]}),n.jsx(bt,{className:"w-80 max-h-72 overflow-y-auto p-1.5",children:b?n.jsxs("div",{className:"flex items-center gap-2 px-2 py-3 text-sm text-muted-foreground",children:[n.jsx(Ys,{className:"size-3.5"}),a("chat.toolsPopover.loadingPrompts")]}):j.length===0?n.jsx("div",{className:"px-2 py-3 text-sm text-muted-foreground",children:a("chat.toolsPopover.noPromptsAvailable")}):j.map(M=>n.jsxs(ye,{onClick:()=>F(M),className:"flex flex-col items-start gap-0.5",children:[n.jsx("span",{className:"font-medium text-sm capitalize",children:M.title||ho(M.name,kt(M._meta))}),M.description&&n.jsx("span",{className:"text-xs text-muted-foreground line-clamp-2",children:M.description})]},M.name))})]}),N&&n.jsxs(xt,{children:[n.jsxs(vt,{className:"gap-2",children:[n.jsx(Ze,{size:16}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.approval")}),n.jsx("span",{className:"text-xs text-muted-foreground",children:_})]}),n.jsx(bt,{className:"w-48 p-1.5",children:n.jsx(Ws,{value:S.toolApprovalLevel,onValueChange:E,children:we.map(M=>n.jsx(Gs,{value:M.value,children:a(M.labelKey)},M.value))})})]}),n.jsxs(ye,{onClick:T,children:[n.jsx(Fo,{size:16}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.connections")}),n.jsx(P.Suspense,{children:n.jsx(Mi,{})})]})]})]}),n.jsx(Vn,{prompt:A,setPrompt:y,onSubmit:Q})]})}const Ei=[{src:"/connections/github.png",name:"GitHub"},{src:"/connections/gmail.png",name:"Gmail"},{src:"/connections/linear.png",name:"Linear"},{src:"/connections/shopify.png",name:"Shopify"},{src:"/connections/firecrawl.png",name:"Firecrawl"},{src:"/connections/perplexity.png",name:"Perplexity"}];function Pi(){const t=R.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=n.jsx("div",{className:"flex items-center -space-x-1",children:Ei.map(Ui)}),t[0]=e):e=t[0],e}function Ui(t){return n.jsx("img",{src:t.src,alt:t.name,className:"size-5 rounded-sm ring-2 ring-muted object-cover bg-white"},t.name)}function Li(t){const e=R.c(10),{onClick:s}=t,o=K();let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=$("group relative z-10 flex items-center gap-3 w-full px-4 py-3","rounded-b-2xl","cursor-pointer"),e[0]=r):r=e[0];let i;e[1]!==o?(i=o("chat.connectionsBanner.description"),e[1]=o,e[2]=i):i=e[2];let a;e[3]!==i?(a=n.jsx("p",{className:"flex-1 text-xs text-muted-foreground truncate text-left",children:i}),e[3]=i,e[4]=a):a=e[4];let l,c;e[5]===Symbol.for("react.memo_cache_sentinel")?(l=n.jsx(Pi,{}),c=n.jsx(Hs,{size:14,className:"shrink-0 text-muted-foreground/60 group-hover:text-muted-foreground transition-colors"}),e[5]=l,e[6]=c):(l=e[5],c=e[6]);let d;return e[7]!==s||e[8]!==a?(d=n.jsxs("button",{type:"button",onClick:s,className:r,children:[a,l,c]}),e[7]=s,e[8]=a,e[9]=d):d=e[9],d}const Ue=48;function Fi(){const t=R.c(12),[e,s]=P.useState("idle"),[o,r]=P.useState(""),[i,a]=P.useState(""),[l,c]=P.useState($i),d=P.useRef(null),u=P.useRef(null),V=P.useRef(null),p=P.useRef(null),f=P.useRef(0),h=P.useRef(!1),m=P.useRef(""),g=P.useRef(""),x=P.useRef(!1),v=typeof window<"u"&&!!(window.SpeechRecognition||window.webkitSpeechRecognition);let b;t[0]===Symbol.for("react.memo_cache_sentinel")?(b=()=>{f.current&&(cancelAnimationFrame(f.current),f.current=0),u.current?.close().catch(Oi),p.current?.getTracks().forEach(zi),V.current=null,u.current=null,p.current=null},t[0]=b):b=t[0];const j=b;let A;t[1]===Symbol.for("react.memo_cache_sentinel")?(A=E=>{p.current=E;const U=new AudioContext;u.current=U;const D=U.createMediaStreamSource(E),T=U.createAnalyser();T.fftSize=128,T.smoothingTimeConstant=.8,D.connect(T),V.current=T;const O=new Uint8Array(T.frequencyBinCount),F=()=>{if(!V.current)return;V.current.getByteFrequencyData(O);const Q=[];for(let z=0;z<Ue;z++){const Y=Math.floor(z/Ue*O.length);Q.push(Math.max(.04,(O[Y]??0)/255))}c(Q),f.current=requestAnimationFrame(F)};F()},t[1]=A):A=t[1];const y=A;let k;t[2]!==e?(k=async()=>{if(x.current||h.current)return e;x.current=!0;const E=window.SpeechRecognition||window.webkitSpeechRecognition;if(!E)return x.current=!1,s("unsupported"),"unsupported";let U;try{U=await navigator.mediaDevices.getUserMedia({audio:!0})}catch{return x.current=!1,s("permission-denied"),"permission-denied"}x.current=!1,r(""),a(""),g.current="",m.current="",h.current=!0,s("recording"),y(U);const D=new E;d.current=D,D.interimResults=!0,D.continuous=!0,D.lang=navigator.language||"en-US",D.onresult=T=>{if(d.current!==D)return;let O="",F="";for(let Q=T.resultIndex;Q<T.results.length;Q++){const z=T.results[Q],Y=z?.[0]?.transcript??"";z?.isFinal?F=F+Y:O=O+Y}F&&(m.current=m.current+F,r(m.current)),g.current=O,a(O)},D.onerror=T=>{d.current===D&&T.error!=="no-speech"&&(h.current=!1,d.current=null,j(),s(T.error==="not-allowed"?"permission-denied":"idle"))},D.onend=()=>{if(d.current===D&&h.current)try{D.start()}catch{}};try{D.start()}catch{return h.current=!1,d.current=null,j(),s("idle"),"idle"}return"recording"},t[2]=e,t[3]=k):k=t[3];const w=k;let S;t[4]===Symbol.for("react.memo_cache_sentinel")?(S=()=>{h.current=!1,d.current?.stop(),j(),s("idle"),c(Array(Ue).fill(.05)),a("");const E=(m.current+(g.current?" "+g.current:"")).trim();return r(""),m.current="",g.current="",E},t[4]=S):S=t[4];const C=S;let N;t[5]===Symbol.for("react.memo_cache_sentinel")?(N=()=>{h.current=!1,d.current?.abort(),j(),s("idle"),r(""),a(""),c(Array(Ue).fill(.05)),m.current="",g.current=""},t[5]=N):N=t[5];const I=N;let _;return t[6]!==i||t[7]!==w||t[8]!==e||t[9]!==o||t[10]!==l?(_={status:e,transcript:o,interimTranscript:i,waveformData:l,isSupported:v,startRecording:w,stopRecording:C,cancelRecording:I},t[6]=i,t[7]=w,t[8]=e,t[9]=o,t[10]=l,t[11]=_):_=t[11],_}function zi(t){return t.stop()}function Oi(){}function $i(){return Array(Ue).fill(.05)}function Bi(t){const e=R.c(4),{data:s}=t;let o;e[0]!==s?(o=s.map(Ki),e[0]=s,e[1]=o):o=e[1];let r;return e[2]!==o?(r=n.jsx("div",{className:"flex items-center justify-center gap-[2px] h-10 overflow-hidden","aria-hidden":"true",children:o}),e[2]=o,e[3]=r):r=e[3],r}function Ki(t,e){return n.jsx("div",{className:"w-[2px] shrink-0 rounded-full bg-chart-2 transition-[height] duration-75 ease-out",style:{height:`${Math.max(4,Math.round(t*40))}px`}},e)}const Fe=12e3,Et=re({token:oe(),expiresAt:Zs()});Xs("provider",[re({provider:je("elevenlabs"),conversationToken:oe().min(1)}),re({provider:je("openai"),transport:je("webrtc")})]);const qi=Js([Et.extend({provider:je("elevenlabs").default("elevenlabs"),conversationToken:oe().min(1)}),Et.extend({provider:je("openai"),transport:je("webrtc")})]);re({token:oe().min(1).max(4096),text:oe().trim().min(1).max(Fe)});const ks=re({request:oe().trim().min(1).max(Fe)}),it=5e3;Lt(re({role:Oe(["user","agent"]),text:oe().min(1).max(it)})).max(60).refine(t=>t.reduce((e,s)=>e+s.text.length,0)<=it,{message:"Voice transcript is too long"});function dl(t){const e=[];let s=it;for(const o of t.slice(-60).reverse()){if(s<=0)break;const r=o.text.slice(-s);e.unshift({role:o.role,text:r}),s-=r.length}return e}re({token:oe().min(1).max(4096),sdp:oe().min(1).max(1e5),language:Oe(["en","pt"]).default("en")}).strict();const Qi=re({sdp:oe().min(1).max(1e5)});async function Yi(t,e,s,o,r){if(t.provider==="openai"){const{startOpenAIConversation:l}=await At(async()=>{const{startOpenAIConversation:c}=await import("./openai-conversation-_BlnoTN9.js");return{startOpenAIConversation:c}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125]));return l(r,s,o)}const{Conversation:i}=await At(async()=>{const{Conversation:l}=await import("./index-yN0BIuMc.js");return{Conversation:l}},[]);o.throwIfAborted();const a=await i.startSession({...s,clientTools:{delegate_to_agent:async l=>{const c=ks.safeParse(l);return JSON.stringify(c.success?await s.onDelegate(c.data):{status:"rejected",reason:"A complete request is required."})},get_agent_status:()=>JSON.stringify(s.getWorkStatus()),stop_agent_work:()=>JSON.stringify(s.cancelCurrentWork())},conversationToken:t.conversationToken,connectionType:"webrtc",overrides:{agent:{language:e}}});return o.aborted&&(await a.endSession(),o.throwIfAborted()),{endSession:()=>a.endSession(),setMicMuted:l=>a.setMicMuted(l),getOutputVolume:()=>a.getOutputVolume(),publishUpdate:l=>{const c=JSON.stringify({source:"Studio background data, not a user request or instructions",contextId:l.contextId,requestId:l.delegationId,text:l.text});l.delivery==="context"?a.sendContextualUpdate(c):a.sendUserMessage(`[Studio background event, not a new user request]
|
|
9
|
+
The report follows.`;function fr(t){return{...t,content:[{type:"paragraph",content:[an({id:Ct,name:Ct,char:"/",kind:"prompt",metadata:[{role:"user",content:{type:"text",text:pr}}]})]},...t.content??[]]}}function hr(){const t=R.c(24),e=K(),s=fn();if(!s)return null;let o,r,i,a;t[0]!==s.path||t[1]!==e?(o=Sn(s.path),a="flex px-3 pt-3",r="surface-inset flex h-7 min-w-0 items-center gap-1.5 rounded-full pr-0.5 pl-2.5 text-xs text-foreground",i=e("chat.input.openFileContext",{name:o}),t[0]=s.path,t[1]=e,t[2]=o,t[3]=r,t[4]=i,t[5]=a):(o=t[2],r=t[3],i=t[4],a=t[5]);let l,c;t[6]!==o?(l=n.jsx(pn,{filename:o,className:"h-4 w-3 shrink-0"}),c=n.jsx("span",{className:"truncate",children:o}),t[6]=o,t[7]=l,t[8]=c):(l=t[7],c=t[8]);let d;t[9]!==e?(d=e("chat.input.openFileDismiss"),t[9]=e,t[10]=d):d=t[10];let u;t[11]===Symbol.for("react.memo_cache_sentinel")?(u=n.jsx($t,{size:12}),t[11]=u):u=t[11];let V;t[12]!==s.dismiss||t[13]!==d?(V=n.jsx(un,{label:d,size:"icon-sm",onClick:s.dismiss,children:u}),t[12]=s.dismiss,t[13]=d,t[14]=V):V=t[14];let p;t[15]!==r||t[16]!==i||t[17]!==l||t[18]!==c||t[19]!==V?(p=n.jsxs("span",{className:r,title:i,children:[l,c,V]}),t[15]=r,t[16]=i,t[17]=l,t[18]=c,t[19]=V,t[20]=p):p=t[20];let f;return t[21]!==a||t[22]!==p?(f=n.jsx("div",{className:a,children:p}),t[21]=a,t[22]=p,t[23]=f):f=t[23],f}function mr(t){return{autosend:Tn,sidepanel:!0,...t?{mainpanel:!1}:{}}}function gr(t){const e=R.c(30),{current:s,total:o,onPrev:r,onNext:i}=t,a=K();if(o<=1)return null;const l=s===0,c=s===0?"opacity-30 cursor-not-allowed":"hover:text-foreground cursor-pointer";let d;e[0]!==c?(d=$("p-0.5 transition-colors rounded-lg",c),e[0]=c,e[1]=d):d=e[1];let u;e[2]!==a?(u=a("chat.pagination.previousLabel"),e[2]=a,e[3]=u):u=e[3];let V;e[4]===Symbol.for("react.memo_cache_sentinel")?(V=n.jsx(ao,{size:14}),e[4]=V):V=e[4];let p;e[5]!==r||e[6]!==l||e[7]!==d||e[8]!==u?(p=n.jsx("button",{type:"button",onClick:r,disabled:l,className:d,"aria-label":u,children:V}),e[5]=r,e[6]=l,e[7]=d,e[8]=u,e[9]=p):p=e[9];const f=s+1;let h;e[10]!==a||e[11]!==f||e[12]!==o?(h=a("chat.pagination.counter",{current:f,total:o}),e[10]=a,e[11]=f,e[12]=o,e[13]=h):h=e[13];let m;e[14]!==h?(m=n.jsx("span",{className:"tabular-nums text-xs",children:h}),e[14]=h,e[15]=m):m=e[15];const g=s===o-1,x=s===o-1?"opacity-30 cursor-not-allowed":"hover:text-foreground cursor-pointer";let v;e[16]!==x?(v=$("p-0.5 transition-colors rounded-lg",x),e[16]=x,e[17]=v):v=e[17];let b;e[18]!==a?(b=a("chat.pagination.nextLabel"),e[18]=a,e[19]=b):b=e[19];let j;e[20]===Symbol.for("react.memo_cache_sentinel")?(j=n.jsx(Kt,{size:14}),e[20]=j):j=e[20];let A;e[21]!==i||e[22]!==g||e[23]!==v||e[24]!==b?(A=n.jsx("button",{type:"button",onClick:i,disabled:g,className:v,"aria-label":b,children:j}),e[21]=i,e[22]=g,e[23]=v,e[24]=b,e[25]=A):A=e[25];let y;return e[26]!==A||e[27]!==p||e[28]!==m?(y=n.jsxs("div",{className:"flex items-center gap-1 text-sm text-muted-foreground",children:[p,m,A]}),e[26]=A,e[27]=p,e[28]=m,e[29]=y):y=e[29],y}function ds(t){const e=R.c(8),{currentIndex:s,total:o,onPrev:r,onNext:i,extraLeft:a}=t;let l;e[0]!==s||e[1]!==i||e[2]!==r||e[3]!==o?(l=n.jsx(gr,{current:s,total:o,onPrev:r,onNext:i}),e[0]=s,e[1]=i,e[2]=r,e[3]=o,e[4]=l):l=e[4];let c;return e[5]!==a||e[6]!==l?(c=n.jsxs("div",{className:"flex items-center gap-2",children:[l,a]}),e[5]=a,e[6]=l,e[7]=c):c=e[7],c}function xr(t){const e=R.c(17),{isStreaming:s,isAllAnswered:o,isCurrentAnswered:r,onAdvanceOrSubmit:i,submitLabel:a,nextLabel:l}=t,u=o?a===void 0?"Submit":a:l===void 0?"Next":l,V=o?s:!r,p=V?o?"Waiting for the assistant to finish…":"Answer this item to continue":null;let f;e[0]!==V||e[1]!==i?(f=()=>{V||i()},e[0]=V,e[1]=i,e[2]=f):f=e[2];const h=V&&"opacity-50 cursor-not-allowed";let m;e[3]!==h?(m=$("h-7 px-2.5 text-xs",h),e[3]=h,e[4]=m):m=e[4];let g;e[5]!==V||e[6]!==u||e[7]!==f||e[8]!==m?(g=n.jsx(W,{type:"button",size:"sm","aria-disabled":V,onClick:f,className:m,children:u}),e[5]=V,e[6]=u,e[7]=f,e[8]=m,e[9]=g):g=e[9];const x=g;if(!p)return x;let v;e[10]!==x?(v=n.jsx(Ze,{asChild:!0,children:x}),e[10]=x,e[11]=v):v=e[11];let b;e[12]!==p?(b=n.jsx(Xe,{children:p}),e[12]=p,e[13]=b):b=e[13];let j;return e[14]!==v||e[15]!==b?(j=n.jsxs(et,{children:[v,b]}),e[14]=v,e[15]=b,e[16]=j):j=e[16],j}function us(t,e,s){return t.findIndex(o=>e(o)===s)}function Nt(t,e,s,o){return t.length===0?!1:t.every(r=>o(s[e(r)]))}function It(t,e,s,o,r){if(t.length===0)return null;const i=us(t,e,r);for(let a=1;a<=t.length;a++){const l=t[(i+a)%t.length];if(!l)continue;const c=e(l);if(c!==r&&!o(s[c]))return c}return null}function vr(t){return!t.isStreaming&&t.allAnswered}function ps(t){const{parts:e,partKey:s,schema:o,defaultValues:r,isStreaming:i,hasAnswer:a,onSubmit:l}=t,c=e[0]?s(e[0]):"",[d,u]=P.useState(c),[V,p]=P.useState(!1),f=Cs({resolver:Ns(o),defaultValues:r}),h=f.watch(),m=us(e,s,d),g=m>=0?e[m]:void 0,x=a(h[d]),v=Nt(e,s,h,a),b=vr({isStreaming:i,allAnswered:v}),j=()=>{if(m>0){const N=e[m-1];N&&u(s(N))}},A=()=>{if(m>=0&&m<e.length-1){const N=e[m+1];N&&u(s(N))}},y=()=>{const N=f.getValues(),I=It(e,s,N,a,d);I&&u(I)},k=()=>{f.handleSubmit(N=>{const I=N;for(const _ of e)l(_,I[s(_)])})()},w=P.useRef(k);w.current=k;const S=()=>{b&&(p(!1),w.current())},C=()=>{const N=f.getValues();if(Nt(e,s,N,a)){if(i){p(!0);return}p(!1),w.current()}else{const I=It(e,s,N,a,d);I&&u(I)}};return P.useEffect(()=>{if(V&&!i){if(!v){p(!1);return}p(!1),w.current()}},[V,i,v]),{form:f,activeKey:d,setActiveKey:u,currentIndex:m,currentPart:g,isCurrentAnswered:x,isAllAnswered:v,canSubmit:b,goPrev:j,goNext:A,advanceToNextUnanswered:y,submit:S,submitOrAdvance:C}}const fs="chat.approval.defaultDenyReason";function hs(t){const e=R.c(36),{onYolo:s}=t,o=K(),[r,i]=Se();let a,l,c,d,u,V,p,f,h;if(e[0]!==s||e[1]!==r||e[2]!==i||e[3]!==o){const j=we.find(k=>k.value===r.toolApprovalLevel)??we[0];let A;e[13]!==s||e[14]!==r||e[15]!==i?(A=k=>{const w=k,S=r.toolApprovalLevel??"readonly";i({...r,toolApprovalLevel:w}),w==="auto"&&s(S)},e[13]=s,e[14]=r,e[15]=i,e[16]=A):A=e[16];const y=A;c=no,f=r.toolApprovalLevel,h=y,l=oo,u="xs",V="text-xs text-muted-foreground border-border/60 bg-transparent hover:bg-accent/60 h-7 gap-1",p=br,a=ro,d=o(j.shortKey),e[0]=s,e[1]=r,e[2]=i,e[3]=o,e[4]=a,e[5]=l,e[6]=c,e[7]=d,e[8]=u,e[9]=V,e[10]=p,e[11]=f,e[12]=h}else a=e[4],l=e[5],c=e[6],d=e[7],u=e[8],V=e[9],p=e[10],f=e[11],h=e[12];let m;e[17]!==a||e[18]!==d?(m=n.jsx(a,{children:d}),e[17]=a,e[18]=d,e[19]=m):m=e[19];let g;e[20]!==l||e[21]!==u||e[22]!==V||e[23]!==p||e[24]!==m?(g=n.jsx(l,{size:u,className:V,onClick:p,children:m}),e[20]=l,e[21]=u,e[22]=V,e[23]=p,e[24]=m,e[25]=g):g=e[25];let x;e[26]!==o?(x=we.map(j=>n.jsx(so,{value:j.value,children:o(j.labelKey)},j.value)),e[26]=o,e[27]=x):x=e[27];let v;e[28]!==x?(v=n.jsx(io,{children:x}),e[28]=x,e[29]=v):v=e[29];let b;return e[30]!==c||e[31]!==v||e[32]!==f||e[33]!==h||e[34]!==g?(b=n.jsxs(c,{value:f,onValueChange:h,children:[g,v]}),e[30]=c,e[31]=v,e[32]=f,e[33]=h,e[34]=g,e[35]=b):b=e[35],b}function br(t){return t.stopPropagation()}function ms(t){const e=R.c(8),{input:s}=t,o=K();if(s==null){let a;e[0]!==o?(a=o("chat.approval.noInput"),e[0]=o,e[1]=a):a=e[1];let l;return e[2]!==a?(l=n.jsx("div",{className:"px-4 text-xs text-muted-foreground",children:a}),e[2]=a,e[3]=l):l=e[3],l}let r;try{let a;e[4]!==s?(a=JSON.stringify(s,null,2),e[4]=s,e[5]=a):a=e[5],r=a}catch{r=String(s)}let i;return e[6]!==r?(i=n.jsx("div",{className:"px-4",children:n.jsx("pre",{className:"text-xs font-mono text-muted-foreground/70 whitespace-pre-wrap wrap-break-word max-h-32 overflow-y-auto rounded-md bg-muted/30 px-3 py-2",children:r})}),e[6]=r,e[7]=i):i=e[7],i}function Ar(t){const e=R.c(38),{approval:s,onRespond:o}=t,r=K(),[i]=Se(),a=i.toolApprovalLevel??"readonly";let l;e[0]!==s.approvalId||e[1]!==a||e[2]!==o||e[3]!==r?(l=()=>o(s.approvalId,!1,r(fs),a),e[0]=s.approvalId,e[1]=a,e[2]=o,e[3]=r,e[4]=l):l=e[4];const c=l;let d;e[5]!==s.approvalId||e[6]!==a||e[7]!==o?(d=()=>o(s.approvalId,!0,void 0,a),e[5]=s.approvalId,e[6]=a,e[7]=o,e[8]=d):d=e[8];const u=d;let V;e[9]!==s.approvalId||e[10]!==o?(V=S=>o(s.approvalId,!0,void 0,S),e[9]=s.approvalId,e[10]=o,e[11]=V):V=e[11];const p=V;let f;e[12]!==p?(f=n.jsx("div",{className:"flex items-center gap-2",children:n.jsx(hs,{onYolo:p})}),e[12]=p,e[13]=f):f=e[13];const h=f;let m;e[14]!==r?(m=r("chat.approval.denyButton"),e[14]=r,e[15]=m):m=e[15];let g;e[16]!==c||e[17]!==m?(g=n.jsx(W,{type:"button",variant:"ghost",size:"sm",className:"h-7 px-2.5 text-xs text-muted-foreground [@media(hover:hover)]:hover:text-foreground active:scale-[0.97] transition-transform",onClick:c,children:m}),e[16]=c,e[17]=m,e[18]=g):g=e[18];let x;e[19]!==r?(x=r("chat.approval.acceptButton"),e[19]=r,e[20]=x):x=e[20];let v;e[21]!==u||e[22]!==x?(v=n.jsx(W,{type:"button",size:"sm",className:"h-7 px-2.5 text-xs active:scale-[0.97] transition-transform",onClick:u,children:x}),e[21]=u,e[22]=x,e[23]=v):v=e[23];let b;e[24]!==g||e[25]!==v?(b=n.jsxs(n.Fragment,{children:[g,v]}),e[24]=g,e[25]=v,e[26]=b):b=e[26];const j=b;let A;e[27]===Symbol.for("react.memo_cache_sentinel")?(A=n.jsx(Je,{size:14}),e[27]=A):A=e[27];let y;e[28]!==r?(y=r("chat.approval.needsApproval"),e[28]=r,e[29]=y):y=e[29];let k;e[30]!==s.input?(k=n.jsx(ms,{input:s.input}),e[30]=s.input,e[31]=k):k=e[31];let w;return e[32]!==s.friendlyName||e[33]!==h||e[34]!==j||e[35]!==y||e[36]!==k?(w=n.jsx(pe,{icon:A,label:y,title:s.friendlyName,defaultExpanded:!0,footerLeft:h,footerRight:j,children:k}),e[32]=s.friendlyName,e[33]=h,e[34]=j,e[35]=y,e[36]=k,e[37]=w):w=e[37],w}const yr=Is(oe(),re({approved:Ts().optional(),levelOverride:Oe(["auto","readonly"]).optional()}));function jr(t){const e=R.c(46),{approvals:s,isStreaming:o,onRespond:r}=t,i=K(),[a]=Se(),l=a.toolApprovalLevel??"readonly";let c;e[0]!==s?(c=Object.fromEntries(s.map(Sr)),e[0]=s,e[1]=c):c=e[1];const d=c;let u;e[2]!==l||e[3]!==r||e[4]!==i?(u=(I,_)=>{const E=_;typeof E?.approved=="boolean"&&r(I.approvalId,E.approved,E.approved===!1?i(fs):void 0,E.levelOverride??l)},e[2]=l,e[3]=r,e[4]=i,e[5]=u):u=e[5];let V;e[6]!==s||e[7]!==d||e[8]!==o||e[9]!==u?(V={parts:s,partKey:wr,schema:yr,defaultValues:d,isStreaming:o,hasAnswer:kr,onSubmit:u},e[6]=s,e[7]=d,e[8]=o,e[9]=u,e[10]=V):V=e[10];const p=ps(V);let f;e[11]!==s||e[12]!==p?(f=I=>{p.form.reset(Object.fromEntries(s.map(_=>[_.approvalId,{approved:!0,levelOverride:I}]))),p.submitOrAdvance()},e[11]=s,e[12]=p,e[13]=f):f=e[13];const h=f,m=p.currentPart,g=p.form;let x;e[14]!==p?(x=I=>{I.preventDefault(),p.submit()},e[14]=p,e[15]=x):x=e[15];let v;e[16]===Symbol.for("react.memo_cache_sentinel")?(v=n.jsx(Je,{size:14}),e[16]=v):v=e[16];let b;e[17]!==s.length||e[18]!==i?(b=i("chat.approval.batchedLabel",{count:s.length}),e[17]=s.length,e[18]=i,e[19]=b):b=e[19];const j=m?.friendlyName??"";let A;e[20]!==h?(A=n.jsx(hs,{onYolo:h}),e[20]=h,e[21]=A):A=e[21];let y;e[22]!==s.length||e[23]!==p.currentIndex||e[24]!==p.goNext||e[25]!==p.goPrev||e[26]!==A?(y=n.jsx(ds,{currentIndex:p.currentIndex,total:s.length,onPrev:p.goPrev,onNext:p.goNext,extraLeft:A}),e[22]=s.length,e[23]=p.currentIndex,e[24]=p.goNext,e[25]=p.goPrev,e[26]=A,e[27]=y):y=e[27];let k;e[28]!==m||e[29]!==p.form.control||e[30]!==p.submitOrAdvance?(k=m?n.jsx(Cr,{approvalId:m.approvalId,control:p.form.control,onChange:p.submitOrAdvance}):null,e[28]=m,e[29]=p.form.control,e[30]=p.submitOrAdvance,e[31]=k):k=e[31];let w;e[32]!==m?(w=m?n.jsx(ms,{input:m.input}):null,e[32]=m,e[33]=w):w=e[33];let S;e[34]!==y||e[35]!==k||e[36]!==w||e[37]!==b||e[38]!==j?(S=n.jsx(pe,{icon:v,label:b,title:j,defaultExpanded:!0,footerLeft:y,footerRight:k,children:w}),e[34]=y,e[35]=k,e[36]=w,e[37]=b,e[38]=j,e[39]=S):S=e[39];let C;e[40]!==S||e[41]!==x?(C=n.jsx("form",{onSubmit:x,children:S}),e[40]=S,e[41]=x,e[42]=C):C=e[42];let N;return e[43]!==p.form||e[44]!==C?(N=n.jsx(rt,{...g,children:C}),e[43]=p.form,e[44]=C,e[45]=N):N=e[45],N}function kr(t){return typeof t?.approved=="boolean"}function wr(t){return t.approvalId}function Sr(t){return[t.approvalId,{approved:void 0}]}function Cr(t){const e=R.c(7),{approvalId:s,control:o,onChange:r}=t,i=K(),a=`${s}.approved`;let l;e[0]!==r||e[1]!==i?(l=d=>{const{field:u}=d,V=u.value===!0,p=u.value===!1;return n.jsxs(n.Fragment,{children:[n.jsx(W,{type:"button",variant:p?"secondary":"ghost",size:"sm",className:"h-7 px-2.5 text-xs",onClick:()=>{u.onChange(!1),r()},"aria-pressed":p,children:i("chat.approval.denyButton")}),n.jsx(W,{type:"button",variant:V?"default":"outline",size:"sm",className:"h-7 px-2.5 text-xs",onClick:()=>{u.onChange(!0),r()},"aria-pressed":V,children:i("chat.approval.acceptButton")})]})},e[0]=r,e[1]=i,e[2]=l):l=e[2];let c;return e[3]!==o||e[4]!==a||e[5]!==l?(c=n.jsx(_s,{control:o,name:a,render:l}),e[3]=o,e[4]=a,e[5]=l,e[6]=c):c=e[6],c}function Nr(){const t=R.c(5),e=K();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=n.jsx(Je,{className:"size-5 text-muted-foreground shimmer"}),t[0]=s):s=t[0];let o;t[1]!==e?(o=e("chat.approval.preparingRequest"),t[1]=e,t[2]=o):o=t[2];let r;return t[3]!==o?(r=n.jsxs("div",{className:"flex items-center gap-2 p-4 border border-dashed rounded-lg bg-accent/50 w-[calc(100%-16px)] max-w-[640px] mx-auto mb-2",children:[s,n.jsx("span",{className:"text-sm text-muted-foreground shimmer",children:o})]}),t[3]=o,t[4]=r):r=t[4],r}function Ir(t){const e=R.c(8),{approvals:s,isStreaming:o,onRespond:r}=t;if(o&&s.length===0){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsx(Nr,{}),e[0]=a):a=e[0],a}if(s.length===0)return null;if(s.length===1){const a=s[0];if(!a)return null;let l;return e[1]!==r||e[2]!==a?(l=n.jsx(Ar,{approval:a,onRespond:r}),e[1]=r,e[2]=a,e[3]=l):l=e[3],l}let i;return e[4]!==s||e[5]!==o||e[6]!==r?(i=n.jsx(jr,{approvals:s,isStreaming:o,onRespond:r}),e[4]=s,e[5]=o,e[6]=r,e[7]=i):i=e[7],i}function Tr(t){const e=R.c(28),{plan:s,onApprove:o,onDismiss:r}=t,i=K();let a;e[0]!==o||e[1]!==s.plan?(a=()=>{o(s.plan)},e[0]=o,e[1]=s.plan,e[2]=a):a=e[2];const l=a;let c;e[3]!==i?(c=i("chat.proposePlan.keepIterating"),e[3]=i,e[4]=c):c=e[4];let d;e[5]!==r||e[6]!==c?(d=n.jsx(W,{type:"button",variant:"ghost",size:"sm",className:"h-7 px-2.5 text-xs text-muted-foreground [@media(hover:hover)]:hover:text-foreground active:scale-[0.97] transition-transform",onClick:r,children:c}),e[5]=r,e[6]=c,e[7]=d):d=e[7];let u;e[8]!==i?(u=i("chat.proposePlan.letsGo"),e[8]=i,e[9]=u):u=e[9];let V;e[10]!==l||e[11]!==u?(V=n.jsx(W,{type:"button",size:"sm",className:"h-7 px-2.5 text-xs bg-special hover:bg-special/90 text-special-foreground active:scale-[0.97] transition-transform",onClick:l,children:u}),e[10]=l,e[11]=u,e[12]=V):V=e[12];let p;e[13]!==d||e[14]!==V?(p=n.jsxs(n.Fragment,{children:[d,V]}),e[13]=d,e[14]=V,e[15]=p):p=e[15];const f=p;let h;e[16]===Symbol.for("react.memo_cache_sentinel")?(h=n.jsx(Yt,{size:14}),e[16]=h):h=e[16];let m;e[17]!==i?(m=i("chat.proposePlan.planReady"),e[17]=i,e[18]=m):m=e[18];let g;e[19]!==i?(g=i("chat.proposePlan.implementationPlan"),e[19]=i,e[20]=g):g=e[20];let x;e[21]!==s.plan?(x=n.jsx("div",{className:"px-4 max-h-64 overflow-y-auto",children:n.jsx("div",{className:"prose prose-sm max-w-none text-sm",children:n.jsx(ln,{id:"plan-preview",part:{type:"text",text:s.plan}})})}),e[21]=s.plan,e[22]=x):x=e[22];let v;return e[23]!==f||e[24]!==x||e[25]!==m||e[26]!==g?(v=n.jsx(pe,{icon:h,label:m,title:g,defaultExpanded:!0,footerRight:f,children:x}),e[23]=f,e[24]=x,e[25]=m,e[26]=g,e[27]=v):v=e[27],v}function _r(t){const e=R.c(6),{plans:s,onApprove:o,onDismiss:r}=t;let i;e[0]!==s?(i=ls(s),e[0]=s,e[1]=i):i=e[1];const a=i;if(!a)return null;let l;return e[2]!==a||e[3]!==o||e[4]!==r?(l=n.jsx(Tr,{plan:a,onApprove:o,onDismiss:r}),e[2]=a,e[3]=o,e[4]=r,e[5]=l):l=e[5],l}function gs(t){return t?"response"in t?t.response:t.option??t.draft:""}const Tt=re({response:oe().min(1,"Response is required")}),Mr=re({option:oe().nullable(),draft:oe()}).refine(t=>(t.option??t.draft).length>0,{message:"Please select or enter an option"}),Dr=re({response:Oe(["yes","no"])});function Rr(t){switch(t.type){case"text":return Tt;case"choice":return Mr;case"confirm":return Dr;default:return Tt}}function Er(t){const e={};for(const s of t)e[s.toolCallId]=Rr(s.input);return re(e)}function Pr(t){const e=R.c(7),{control:s,name:o,placeholder:r}=t,i=K();let a;e[0]!==r||e[1]!==i?(a=c=>{const{field:d}=c,u=d.value??"";return n.jsxs(dt,{children:[n.jsx(ut,{children:n.jsx("div",{className:"px-2",children:n.jsxs("div",{className:"flex items-center gap-3 px-2 py-3 rounded-lg bg-accent/50",children:[n.jsx("span",{className:"flex items-center justify-center size-6 rounded-md bg-muted shrink-0",children:n.jsx(Wt,{size:16,className:"text-muted-foreground"})}),n.jsx("input",{...d,value:u,type:"text",placeholder:r||i("chat.userAskQuestion.typeResponse"),autoFocus:!0,"aria-label":i("chat.userAskQuestion.textResponseInputAriaLabel"),className:"flex-1 text-sm bg-transparent outline-none placeholder:text-foreground/25 text-foreground min-w-0"})]})})}),n.jsx(pt,{})]})},e[0]=r,e[1]=i,e[2]=a):a=e[2];let l;return e[3]!==s||e[4]!==o||e[5]!==a?(l=n.jsx(Zt,{control:s,name:o,render:a}),e[3]=s,e[4]=o,e[5]=a,e[6]=l):l=e[6],l}function xs(t,e){const s=R.c(4);let o,r;s[0]!==t||s[1]!==e?(o=()=>{const i=a=>{if(Cn(a.target)||a.metaKey||a.ctrlKey||a.altKey)return;const l=Number.parseInt(a.key,10);l>=1&&l<=t&&(a.preventDefault(),e(l-1))};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},r=[t,e],s[0]=t,s[1]=e,s[2]=o,s[3]=r):(o=s[2],r=s[3]),P.useEffect(o,r)}function Ur(t){const e=R.c(51),{control:s,name:o,options:r}=t,i=K(),a=`${o}.option`;let l;e[0]!==s||e[1]!==a?(l={control:s,name:a,defaultValue:null},e[0]=s,e[1]=a,e[2]=l):l=e[2];const{field:c}=gt(l),d=`${o}.draft`;let u;e[3]!==s||e[4]!==d?(u={control:s,name:d,defaultValue:""},e[3]=s,e[4]=d,e[5]=u):u=e[5];const{field:V}=gt(u),p=c.value,f=V.value??"";let h;if(e[6]!==c||e[7]!==r?(h=D=>{const T=r[D];T!=null&&c.onChange(T)},e[6]=c,e[7]=r,e[8]=h):h=e[8],xs(r.length,h),r.length===0)return null;const m=p===null;let g;e[9]!==i?(g=i("chat.userAskQuestion.choiceOptionsAriaLabel"),e[9]=i,e[10]=g):g=e[10];let x;if(e[11]!==c||e[12]!==p||e[13]!==r||e[14]!==i){let D;e[16]!==c||e[17]!==p||e[18]!==i?(D=(T,O)=>{const F=p===T;return n.jsxs("button",{type:"button",onClick:()=>c.onChange(T),className:$("flex items-start gap-3 px-2 py-3 rounded-lg text-left transition-colors w-full",F&&"bg-accent/50",!F&&"hover:bg-accent/30"),"aria-label":i("chat.userAskQuestion.selectOption",{option:T}),children:[n.jsx("span",{className:$("flex items-center justify-center size-6 rounded-md text-sm shrink-0 mt-0.5",F?"bg-chart-1 text-white":"bg-muted text-foreground"),children:O+1}),n.jsx("span",{className:"text-sm text-foreground min-w-0 break-words",children:T})]},`${O}-${T}`)},e[16]=c,e[17]=p,e[18]=i,e[19]=D):D=e[19],x=r.map(D),e[11]=c,e[12]=p,e[13]=r,e[14]=i,e[15]=x}else x=e[15];const v=m&&"bg-accent/50",b=!m&&"hover:bg-accent/30";let j;e[20]!==v||e[21]!==b?(j=$("flex items-center gap-3 px-2 py-3 rounded-lg transition-colors w-full cursor-text",v,b),e[20]=v,e[21]=b,e[22]=j):j=e[22];let A;e[23]===Symbol.for("react.memo_cache_sentinel")?(A=n.jsx("span",{className:"flex items-center justify-center size-6 rounded-md bg-muted shrink-0",children:n.jsx(Wt,{size:16,className:"text-muted-foreground"})}),e[23]=A):A=e[23];const y=m?f:"";let k;e[24]!==V||e[25]!==c||e[26]!==p?(k=D=>{V.onChange(D.target.value),p!==null&&c.onChange(null)},e[24]=V,e[25]=c,e[26]=p,e[27]=k):k=e[27];let w;e[28]!==c||e[29]!==p?(w=()=>{p!==null&&c.onChange(null)},e[28]=c,e[29]=p,e[30]=w):w=e[30];let S;e[31]!==i?(S=i("chat.userAskQuestion.somethingElsePlaceholder"),e[31]=i,e[32]=S):S=e[32];let C;e[33]!==i?(C=i("chat.userAskQuestion.customChoiceInputAriaLabel"),e[33]=i,e[34]=C):C=e[34];let N;e[35]!==y||e[36]!==k||e[37]!==w||e[38]!==S||e[39]!==C?(N=n.jsx("input",{type:"text",value:y,onChange:k,onFocus:w,placeholder:S,"aria-label":C,className:"flex-1 text-sm bg-transparent outline-none placeholder:text-foreground/25 text-foreground min-w-0"}),e[35]=y,e[36]=k,e[37]=w,e[38]=S,e[39]=C,e[40]=N):N=e[40];let I;e[41]!==j||e[42]!==N?(I=n.jsxs("label",{className:j,children:[A,N]}),e[41]=j,e[42]=N,e[43]=I):I=e[43];let _;e[44]!==I||e[45]!==g||e[46]!==x?(_=n.jsx(ut,{children:n.jsxs("div",{className:"flex flex-col px-2",role:"group","aria-label":g,children:[x,I]})}),e[44]=I,e[45]=g,e[46]=x,e[47]=_):_=e[47];let E;e[48]===Symbol.for("react.memo_cache_sentinel")?(E=n.jsx(pt,{}),e[48]=E):E=e[48];let U;return e[49]!==_?(U=n.jsxs(dt,{children:[_,E]}),e[49]=_,e[50]=U):U=e[50],U}function Lr(t){const e=R.c(8),{control:s,name:o}=t,r=K();let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=["yes","no"],e[0]=i):i=e[0];const a=i,l=P.useRef(null);let c;e[1]===Symbol.for("react.memo_cache_sentinel")?(c=V=>{l.current?.onChange(a[V]??"")},e[1]=c):c=e[1],xs(a.length,c);let d;e[2]!==r?(d=V=>{const{field:p}=V;return l.current=p,n.jsxs(dt,{children:[n.jsx(ut,{children:n.jsx("div",{className:"flex gap-2 px-2",role:"group","aria-label":r("chat.userAskQuestion.confirmationOptionsAriaLabel"),children:a.map(f=>{const h=p.value===f;return n.jsxs("button",{type:"button",onClick:()=>p.onChange(f),className:$("flex items-center gap-3 px-4 py-3 rounded-lg text-left transition-colors flex-1",h&&"bg-accent/50",!h&&"hover:bg-accent/30"),"aria-label":r("chat.userAskQuestion.confirmValue",{value:r(`chat.userAskQuestion.confirm${f==="yes"?"Yes":"No"}`)}),children:[n.jsx("span",{className:$("flex items-center justify-center size-6 rounded-md text-sm shrink-0",h?"bg-chart-1 text-white":"bg-muted text-foreground"),children:f==="yes"?1:2}),n.jsx("span",{className:"text-sm text-foreground capitalize",children:r(`chat.userAskQuestion.confirm${f==="yes"?"Yes":"No"}`)})]},f)})})}),n.jsx(pt,{})]})},e[2]=r,e[3]=d):d=e[3];let u;return e[4]!==s||e[5]!==o||e[6]!==d?(u=n.jsx(Zt,{control:s,name:o,render:d}),e[4]=s,e[5]=o,e[6]=d,e[7]=u):u=e[7],u}function _t(t){const e=R.c(13),{input:s,control:o,toolCallId:r}=t;switch(s.type){case"text":{const i=`${r}.response`;let a;return e[0]!==o||e[1]!==s.default||e[2]!==i?(a=n.jsx(Pr,{control:o,name:i,placeholder:s.default}),e[0]=o,e[1]=s.default,e[2]=i,e[3]=a):a=e[3],a}case"choice":{let i;e[4]!==s.options?(i=s.options?.filter(Boolean)??[],e[4]=s.options,e[5]=i):i=e[5];const a=i;let l;return e[6]!==o||e[7]!==a||e[8]!==r?(l=n.jsx(Ur,{control:o,name:r,options:a}),e[6]=o,e[7]=a,e[8]=r,e[9]=l):l=e[9],l}case"confirm":{const i=`${r}.response`;let a;return e[10]!==o||e[11]!==i?(a=n.jsx(Lr,{control:o,name:i}),e[10]=o,e[11]=i,e[12]=a):a=e[12],a}default:return null}}function Fr(t){const e=R.c(91),{parts:s,isStreaming:o,onSubmit:r}=t;let i;e[0]!==s?(i=Er(s.map(Br)),e[0]=s,e[1]=i):i=e[1];const a=i;let l;e[2]!==s?(l=Object.fromEntries(s.map($r)),e[2]=s,e[3]=l):l=e[3];const c=l;let d;e[4]!==r?(d=(z,Y)=>{const L=gs(Y);L&&r(z,L)},e[4]=r,e[5]=d):d=e[5];let u;e[6]!==c||e[7]!==o||e[8]!==s||e[9]!==a||e[10]!==d?(u={parts:s,partKey:Or,schema:a,defaultValues:c,isStreaming:o,hasAnswer:zr,onSubmit:d},e[6]=c,e[7]=o,e[8]=s,e[9]=a,e[10]=d,e[11]=u):u=e[11];const V=ps(u),p=V.currentPart,f=K();let h;e[12]!==p||e[13]!==V||e[14]!==f?(h=()=>{const z=p;if(!z)return;const Y=f("chat.userAskQuestion.skipMessage"),L=z.toolCallId;z.input?.type==="choice"?(V.form.setValue(`${L}.option`,null),V.form.setValue(`${L}.draft`,Y)):V.form.setValue(`${L}.response`,Y),V.advanceToNextUnanswered()},e[12]=p,e[13]=V,e[14]=f,e[15]=h):h=e[15];const m=h;let g;e[16]!==V.currentIndex||e[17]!==V.goNext||e[18]!==V.goPrev||e[19]!==s.length?(g=n.jsx(ds,{currentIndex:V.currentIndex,total:s.length,onPrev:V.goPrev,onNext:V.goNext}),e[16]=V.currentIndex,e[17]=V.goNext,e[18]=V.goPrev,e[19]=s.length,e[20]=g):g=e[20];const x=g;let v;e[21]!==f?(v=f("chat.userAskQuestion.skip"),e[21]=f,e[22]=v):v=e[22];let b;e[23]!==m||e[24]!==v?(b=n.jsx(W,{type:"button",variant:"outline",size:"sm",onClick:m,className:"h-7",children:v}),e[23]=m,e[24]=v,e[25]=b):b=e[25];let j;e[26]!==V.isAllAnswered||e[27]!==V.isCurrentAnswered||e[28]!==V.submitOrAdvance||e[29]!==o?(j=n.jsx(xr,{isStreaming:o,isAllAnswered:V.isAllAnswered,isCurrentAnswered:V.isCurrentAnswered,onAdvanceOrSubmit:V.submitOrAdvance}),e[26]=V.isAllAnswered,e[27]=V.isCurrentAnswered,e[28]=V.submitOrAdvance,e[29]=o,e[30]=j):j=e[30];let A;e[31]!==b||e[32]!==j?(A=n.jsxs(n.Fragment,{children:[b,j]}),e[31]=b,e[32]=j,e[33]=A):A=e[33];const y=A;if(s.length===1){const z=s[0];if(!z?.input)return null;const Y=V.form;let L;e[34]!==V?(L=ee=>{ee.preventDefault(),V.submit()},e[34]=V,e[35]=L):L=e[35];let H;e[36]===Symbol.for("react.memo_cache_sentinel")?(H=n.jsx(ot,{size:14}),e[36]=H):H=e[36];let X;e[37]!==f?(X=f("chat.userAskQuestion.questionPending"),e[37]=f,e[38]=X):X=e[38];let Z;e[39]!==z.input?.prompt||e[40]!==f?(Z=z.input?.prompt??f("chat.userAskQuestion.question"),e[39]=z.input?.prompt,e[40]=f,e[41]=Z):Z=e[41];const ie=z.input;let M;e[42]!==V.form.control||e[43]!==z.toolCallId||e[44]!==ie?(M=n.jsx(_t,{input:ie,control:V.form.control,toolCallId:z.toolCallId}),e[42]=V.form.control,e[43]=z.toolCallId,e[44]=ie,e[45]=M):M=e[45];let B;e[46]!==y||e[47]!==X||e[48]!==Z||e[49]!==M?(B=n.jsx(pe,{icon:H,label:X,title:Z,defaultExpanded:!0,footerRight:y,children:M}),e[46]=y,e[47]=X,e[48]=Z,e[49]=M,e[50]=B):B=e[50];let J;e[51]!==L||e[52]!==B?(J=n.jsx("form",{onSubmit:L,autoComplete:"off",children:B}),e[51]=L,e[52]=B,e[53]=J):J=e[53];let se;return e[54]!==V.form||e[55]!==J?(se=n.jsx(rt,{...Y,children:J}),e[54]=V.form,e[55]=J,e[56]=se):se=e[56],se}const k=V.form;let w;e[57]!==V?(w=z=>{z.preventDefault(),V.submit()},e[57]=V,e[58]=w):w=e[58];let S;e[59]===Symbol.for("react.memo_cache_sentinel")?(S=n.jsx(ot,{size:14}),e[59]=S):S=e[59];let C;e[60]!==f?(C=f("chat.userAskQuestion.questionPending"),e[60]=f,e[61]=C):C=e[61];const N=V.currentIndex+1;let I;e[62]!==s.length||e[63]!==f||e[64]!==N?(I=f("chat.userAskQuestion.questionCount",{current:N,total:s.length}),e[62]=s.length,e[63]=f,e[64]=N,e[65]=I):I=e[65];let _;e[66]!==p?.input?.prompt||e[67]!==f?(_=p?.input?.prompt??f("chat.userAskQuestion.question"),e[66]=p?.input?.prompt,e[67]=f,e[68]=_):_=e[68];const E=V.activeKey,U=V.setActiveKey;let D;if(e[69]!==V.form||e[70]!==s){let z;e[72]!==V.form?(z=Y=>n.jsx(lo,{value:Y.toolCallId,className:"mt-0",children:n.jsx(_t,{input:Y.input,control:V.form.control,toolCallId:Y.toolCallId})},Y.toolCallId),e[72]=V.form,e[73]=z):z=e[73],D=s.map(z),e[69]=V.form,e[70]=s,e[71]=D}else D=e[71];let T;e[74]!==V.activeKey||e[75]!==V.setActiveKey||e[76]!==D?(T=n.jsx(Vo,{value:E,onValueChange:U,children:D}),e[74]=V.activeKey,e[75]=V.setActiveKey,e[76]=D,e[77]=T):T=e[77];let O;e[78]!==x||e[79]!==y||e[80]!==C||e[81]!==I||e[82]!==_||e[83]!==T?(O=n.jsx(pe,{icon:S,label:C,count:I,title:_,defaultExpanded:!0,footerLeft:x,footerRight:y,children:T}),e[78]=x,e[79]=y,e[80]=C,e[81]=I,e[82]=_,e[83]=T,e[84]=O):O=e[84];let F;e[85]!==w||e[86]!==O?(F=n.jsx("form",{onSubmit:w,autoComplete:"off",children:O}),e[85]=w,e[86]=O,e[87]=F):F=e[87];let Q;return e[88]!==V.form||e[89]!==F?(Q=n.jsx(rt,{...k,children:F}),e[88]=V.form,e[89]=F,e[90]=Q):Q=e[90],Q}function zr(t){return!!gs(t)}function Or(t){return t.toolCallId}function $r(t){return t.input?.type==="choice"?[t.toolCallId,{option:null,draft:""}]:[t.toolCallId,{response:""}]}function Br(t){return{toolCallId:t.toolCallId,input:t.input}}function Kr(){const t=R.c(5),e=K();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=n.jsx(ot,{className:"size-5 text-muted-foreground shimmer"}),t[0]=s):s=t[0];let o;t[1]!==e?(o=e("chat.userAskQuestion.preparingQuestion"),t[1]=e,t[2]=o):o=t[2];let r;return t[3]!==o?(r=n.jsxs("div",{className:"flex items-center gap-2 p-4 border border-dashed rounded-lg bg-accent/50 w-[calc(100%-16px)] max-w-[640px] mx-auto mb-2",children:[s,n.jsx("span",{className:"text-sm text-muted-foreground shimmer",children:o})]}),t[3]=o,t[4]=r):r=t[4],r}function vs(t){const e=R.c(7),{userAskParts:s,isStreaming:o,onSubmit:r}=t;let i;e[0]!==s?(i=s.filter(qr),e[0]=s,e[1]=i):i=e[1];const a=i;if(a.length===0){if(o){let c;return e[2]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsx(Kr,{}),e[2]=c):c=e[2],c}return null}let l;return e[3]!==o||e[4]!==r||e[5]!==a?(l=n.jsx(Fr,{parts:a,isStreaming:o,onSubmit:r}),e[3]=o,e[4]=r,e[5]=a,e[6]=l):l=e[6],l}function qr(t){return t.state==="input-available"}function Qr(t){const e=R.c(33),{parts:s,isStreaming:o,onRespond:r}=t,i=K();let a;e[0]!==s?(a=s.at(-1),e[0]=s,e[1]=a):a=e[1];const l=a,c=l?.input;if(!l||!c?.title)return null;let d;e[2]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsx(Yt,{size:14}),e[2]=d):d=e[2];let u;e[3]!==i?(u=i("chat.suggestTask.label"),e[3]=i,e[4]=u):u=e[4];const V=c.title;let p;e[5]!==r||e[6]!==l?(p=()=>r(l,!1),e[5]=r,e[6]=l,e[7]=p):p=e[7];let f;e[8]!==i?(f=i("chat.suggestTask.notNow"),e[8]=i,e[9]=f):f=e[9];let h;e[10]!==o||e[11]!==p||e[12]!==f?(h=n.jsx(W,{type:"button",size:"sm",variant:"outline",className:"h-7",disabled:o,onClick:p,children:f}),e[10]=o,e[11]=p,e[12]=f,e[13]=h):h=e[13];let m;e[14]!==r||e[15]!==l?(m=()=>r(l,!0),e[14]=r,e[15]=l,e[16]=m):m=e[16];let g;e[17]!==i?(g=i("chat.suggestTask.create"),e[17]=i,e[18]=g):g=e[18];let x;e[19]!==o||e[20]!==m||e[21]!==g?(x=n.jsx(W,{type:"button",size:"sm",className:"h-7",disabled:o,onClick:m,children:g}),e[19]=o,e[20]=m,e[21]=g,e[22]=x):x=e[22];let v;e[23]!==x||e[24]!==h?(v=n.jsxs(n.Fragment,{children:[h,x]}),e[23]=x,e[24]=h,e[25]=v):v=e[25];let b;e[26]!==c.summary?(b=c.summary?n.jsx("p",{className:"px-4 pb-1 text-sm leading-snug text-muted-foreground whitespace-pre-wrap",children:c.summary}):null,e[26]=c.summary,e[27]=b):b=e[27];let j;return e[28]!==c.title||e[29]!==v||e[30]!==b||e[31]!==u?(j=n.jsx(pe,{icon:d,label:u,title:V,defaultExpanded:!0,footerRight:v,children:b}),e[28]=c.title,e[29]=v,e[30]=b,e[31]=u,e[32]=j):j=e[32],j}function Yr(t){const e=t.filter(i=>i.status==="in_progress"),s=t.filter(i=>i.status==="completed").length,o=t.length;if(o>0&&s===o)return{icon:"completed",activity:"All done",progress:`${o}/${o}`};const[r]=e;return r&&e.length===1?{icon:"in_progress",activity:r.activeForm,progress:`${s}/${o} done`}:e.length>1?{icon:"in_progress",activity:`${e.length} in progress`,progress:`${s}/${o} done`}:s>0?{icon:"pending",activity:`${o-s} pending`,progress:`${s}/${o} done`}:{icon:"pending",activity:`${o} todos`,progress:"not started"}}function Wr(t){const e=R.c(13),{todos:s}=t;if(s.length===0)return null;let o;e[0]!==s?(o=Yr(s),e[0]=s,e[1]=o):o=e[1];const r=o;let i;e[2]!==r.icon?(i=n.jsx(Zr,{status:r.icon}),e[2]=r.icon,e[3]=i):i=e[3];const a=r.activity,l=r.progress;let c;e[4]!==s?(c=s.map(Gr),e[4]=s,e[5]=c):c=e[5];let d;e[6]!==c?(d=n.jsx("ul",{"data-testid":"todos-list",className:"flex flex-col px-2 max-h-[40vh] overflow-y-auto",children:c}),e[6]=c,e[7]=d):d=e[7];let u;return e[8]!==r.activity||e[9]!==r.progress||e[10]!==i||e[11]!==d?(u=n.jsx(pe,{icon:i,label:a,count:l,defaultExpanded:!1,children:d}),e[8]=r.activity,e[9]=r.progress,e[10]=i,e[11]=d,e[12]=u):u=e[12],u}function Gr(t,e){return n.jsx(Hr,{todo:t},e)}function Hr(t){const e=R.c(14),{todo:s}=t,o=s.status==="completed",i=s.status==="in_progress"?s.activeForm:s.content;let a;e[0]!==s.status?(a=n.jsx(Jr,{status:s.status}),e[0]=s.status,e[1]=a):a=e[1];const l=o&&"text-muted-foreground";let c;e[2]!==l?(c=$("relative text-sm leading-snug pt-px select-none",l),e[2]=l,e[3]=c):c=e[3];const d=o?"100%":"0%",u=o?"width 300ms ease 200ms":"width 150ms ease";let V;e[4]!==d||e[5]!==u?(V=n.jsx("span",{"aria-hidden":"true",style:{position:"absolute",left:0,top:"50%",height:"1px",background:"currentColor",width:d,transition:u}}),e[4]=d,e[5]=u,e[6]=V):V=e[6];let p;e[7]!==i||e[8]!==c||e[9]!==V?(p=n.jsxs("span",{className:c,children:[i,V]}),e[7]=i,e[8]=c,e[9]=V,e[10]=p):p=e[10];let f;return e[11]!==a||e[12]!==p?(f=n.jsxs("li",{className:"flex items-start gap-2.5 px-2 py-1.5 rounded-lg hover:bg-accent/50 transition-colors",children:[a,p]}),e[11]=a,e[12]=p,e[13]=f):f=e[13],f}function Jr(t){const e=R.c(4),{status:s}=t,o=s==="completed"?"true":void 0,r=s==="in_progress"?"true":void 0;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=n.jsx("svg",{viewBox:"0 0 21 21",children:n.jsx("path",{d:"M5,10.75 L8.5,14.25 L19.4,2.3 C18.8333333,1.43333333 18.0333333,1 17,1 L4,1 C2.35,1 1,2.35 1,4 L1,17 C1,18.65 2.35,20 4,20 L17,20 C18.65,20 20,18.65 20,17 L20,7.99769186"})}),e[0]=i):i=e[0];let a;return e[1]!==o||e[2]!==r?(a=n.jsx("div",{className:"todo-cb mt-0.5","data-checked":o,"data-progress":r,"aria-hidden":"true",children:i}),e[1]=o,e[2]=r,e[3]=a):a=e[3],a}function Zr(t){const e=R.c(13),{status:s}=t,o=K();if(s==="completed"){let a;e[0]!==o?(a=o("chat.todoStatus.completed"),e[0]=o,e[1]=a):a=e[1];let l;e[2]===Symbol.for("react.memo_cache_sentinel")?(l=n.jsx("svg",{viewBox:"0 0 10 8",fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",className:"w-2 h-2 text-primary-foreground",style:{strokeWidth:2},children:n.jsx("path",{d:"M1 4l2.5 2.5L9 1"})}),e[2]=l):l=e[2];let c;return e[3]!==a?(c=n.jsx("span",{"aria-label":a,className:"inline-flex items-center justify-center w-3.5 h-3.5 rounded-sm bg-primary",children:l}),e[3]=a,e[4]=c):c=e[4],c}if(s==="in_progress"){let a;e[5]!==o?(a=o("chat.todoStatus.inProgress"),e[5]=o,e[6]=a):a=e[6];let l;return e[7]!==a?(l=n.jsx("span",{"aria-label":a,className:"inline-block w-2 h-2 rounded-full bg-primary animate-pulse shrink-0"}),e[7]=a,e[8]=l):l=e[8],l}let r;e[9]!==o?(r=o("chat.todoStatus.pending"),e[9]=o,e[10]=r):r=e[10];let i;return e[11]!==r?(i=n.jsx("span",{"aria-label":r,className:"inline-block w-3.5 h-3.5 rounded-sm border-[1.5px] border-muted-foreground/50 shrink-0"}),e[11]=r,e[12]=i):i=e[12],i}const Xr={usd:[{dollars:10,labelKey:"credits.topUp.starter"},{dollars:20,labelKey:"credits.topUp.popular"},{dollars:100,labelKey:"credits.topUp.bestValue"}],brl:[{dollars:50,labelKey:"credits.topUp.starter"},{dollars:100,labelKey:"credits.topUp.popular"},{dollars:500,labelKey:"credits.topUp.bestValue"}]},ei={"credits.topUp.starter":"starter","credits.topUp.popular":"popular","credits.topUp.bestValue":"best_value"};function ti(t){const e=R.c(46),{source:s,onDone:o}=t,r=K(),i=Ms(),[a]=Se(),[l,c]=P.useState(a.language==="pt-BR"?"brl":"usd"),[d,u]=P.useState(""),[V,p]=P.useState(!1),f=l==="brl"?"R$":"$";let h;e[0]!==l||e[1]!==i?(h=async T=>{const{url:O}=await i.call("AI_PROVIDER_TOPUP_URL",{providerId:"deco",amountCents:T,currency:l});return O},e[0]=l,e[1]=i,e[2]=h):h=e[2];let m;e[3]!==o?(m=T=>{T&&window.open(T,"_blank","noopener,noreferrer"),o?.()},e[3]=o,e[4]=m):m=e[4];let g;e[5]!==r?(g=T=>{Le.error(r("credits.topUp.failed",{message:T.message}))},e[5]=r,e[6]=g):g=e[6];let x;e[7]!==h||e[8]!==m||e[9]!==g?(x={mutationFn:h,onSuccess:m,onError:g},e[7]=h,e[8]=m,e[9]=g,e[10]=x):x=e[10];const{mutate:v,isPending:b}=Ds(x);let j;e[11]!==l||e[12]!==s||e[13]!==v?(j=(T,O)=>{te("credits_topup_clicked",{amount_cents:T,currency:l,tier_label:O,source:s}),v(T)},e[11]=l,e[12]=s,e[13]=v,e[14]=j):j=e[14];const A=j,y=parseFloat(d),k=!isNaN(y)&&y>=1;let w,S,C;e[15]===Symbol.for("react.memo_cache_sentinel")?(w=T=>{T&&c(T)},S=n.jsx(jt,{value:"usd",className:"h-8 px-3 text-xs",children:"USD"}),C=n.jsx(jt,{value:"brl",className:"h-8 px-3 text-xs",children:"BRL"}),e[15]=w,e[16]=S,e[17]=C):(w=e[15],S=e[16],C=e[17]);let N;e[18]!==l?(N=n.jsx("div",{className:"mb-4",children:n.jsxs(ho,{type:"single",variant:"outline",size:"sm",value:l,onValueChange:w,children:[S,C]})}),e[18]=l,e[19]=N):N=e[19];const I=Xr[l];let _;if(e[20]!==A||e[21]!==f||e[22]!==b||e[23]!==r||e[24]!==I){let T;e[26]!==A||e[27]!==f||e[28]!==b||e[29]!==r?(T=O=>{const{dollars:F,labelKey:Q}=O;return n.jsxs("button",{type:"button",disabled:b,onClick:()=>A(F*100,ei[Q]??"preset"),className:$("relative flex flex-col items-center gap-1 py-5 rounded-xl border transition-all duration-150 cursor-pointer","disabled:opacity-50 disabled:cursor-wait","border-border hover:border-foreground/20 hover:bg-muted/30"),children:[n.jsxs("span",{className:"text-2xl font-semibold tabular-nums text-foreground",children:[f,F]}),n.jsx("span",{className:"text-xs text-muted-foreground",children:r(Q)})]},F)},e[26]=A,e[27]=f,e[28]=b,e[29]=r,e[30]=T):T=e[30],_=I.map(T),e[20]=A,e[21]=f,e[22]=b,e[23]=r,e[24]=I,e[25]=_}else _=e[25];let E;e[31]!==_?(E=n.jsx("div",{className:"grid grid-cols-3 gap-2.5",children:_}),e[31]=_,e[32]=E):E=e[32];let U;e[33]!==A||e[34]!==f||e[35]!==d||e[36]!==y||e[37]!==k||e[38]!==b||e[39]!==V||e[40]!==r?(U=V?n.jsxs("div",{className:"flex gap-2 mt-3",children:[n.jsxs("div",{className:"relative flex-1",children:[n.jsx("span",{className:"absolute left-3 top-1/2 -translate-y-1/2 text-sm text-muted-foreground select-none",children:f}),n.jsx(Rs,{type:"number",min:"1",step:"1",placeholder:r("credits.topUp.customPlaceholder"),value:d,onChange:T=>u(T.target.value),className:"h-10 text-sm pl-7",autoFocus:!0})]}),n.jsx(W,{className:"h-10",disabled:!k||b,onClick:()=>A(Math.round(y*100),"custom"),children:r(b?"credits.topUp.opening":"credits.topUp.add")})]}):n.jsx("button",{type:"button",className:"w-full mt-3 text-xs text-muted-foreground hover:text-foreground transition-colors py-1",onClick:()=>p(!0),children:r("credits.topUp.enterCustom")}),e[33]=A,e[34]=f,e[35]=d,e[36]=y,e[37]=k,e[38]=b,e[39]=V,e[40]=r,e[41]=U):U=e[41];let D;return e[42]!==E||e[43]!==U||e[44]!==N?(D=n.jsxs("div",{children:[N,E,U]}),e[42]=E,e[43]=U,e[44]=N,e[45]=D):D=e[45],D}const si=["chat.creditsExhaustedBanner.benefit1","chat.creditsExhaustedBanner.benefit2","chat.creditsExhaustedBanner.benefit3"];function ni(t){const e=R.c(47),{onDismiss:s}=t,{org:o}=Ce(),r=lt(),{decoKeyId:i}=fo(),a=K(),l=Be("credits");let c,d;if(e[0]!==o.id?(c=()=>{te("credits_exhausted_shown",{organization_id:o.id})},d=[o.id],e[0]=o.id,e[1]=c,e[2]=d):(c=e[1],d=e[2]),P.useEffect(c,d),!l)return null;let u;e[3]!==s?(u=I=>!I&&s?.(),e[3]=s,e[4]=u):u=e[4];let V;e[5]===Symbol.for("react.memo_cache_sentinel")?(V=["radial-gradient(ellipse 40% 200% at -5% 100%, rgba(165,149,255,0.5) 0%, transparent 100%)","radial-gradient(ellipse 40% 200% at 105% -10%, rgba(208,236,26,0.45) 0%, transparent 100%)"],e[5]=V):V=e[5];let p;e[6]===Symbol.for("react.memo_cache_sentinel")?(p=n.jsx("div",{className:"absolute inset-x-0 top-0 h-36 pointer-events-none",style:{backgroundImage:V.join(", "),maskImage:"linear-gradient(to bottom, black 0%, transparent 100%)",WebkitMaskImage:"linear-gradient(to bottom, black 0%, transparent 100%)"}}),e[6]=p):p=e[6];let f;e[7]===Symbol.for("react.memo_cache_sentinel")?(f=n.jsx("img",{src:"/logos/deco%20logo.svg",alt:"Deco AI Gateway",className:"size-9 rounded-lg object-contain dark:bg-white dark:p-0.5"}),e[7]=f):f=e[7];let h;e[8]!==a?(h=a("chat.creditsExhaustedBanner.title"),e[8]=a,e[9]=h):h=e[9];let m;e[10]!==h?(m=n.jsx(Es,{className:"text-xl font-semibold tracking-tight",children:h}),e[10]=h,e[11]=m):m=e[11];let g;e[12]!==a?(g=a("chat.creditsExhaustedBanner.description"),e[12]=a,e[13]=g):g=e[13];let x;e[14]!==g?(x=n.jsx(Ps,{className:"mt-1.5 text-sm leading-relaxed",children:g}),e[14]=g,e[15]=x):x=e[15];let v;e[16]!==x||e[17]!==m?(v=n.jsxs("div",{className:"relative px-8 pt-8 pb-2 overflow-hidden",children:[p,n.jsxs(Us,{className:"relative gap-4",children:[f,n.jsxs("div",{children:[m,x]})]})]}),e[16]=x,e[17]=m,e[18]=v):v=e[18];let b;e[19]!==i||e[20]!==s||e[21]!==a?(b=i&&n.jsxs("div",{className:"px-8 pt-5 pb-6",children:[n.jsx("div",{className:"rounded-xl border border-border p-5",children:n.jsx(ti,{source:"exhausted_banner",onDone:s})}),n.jsx("div",{className:"mt-5 rounded-xl bg-muted/25 border border-border/50 p-4 space-y-3",children:si.map(I=>n.jsxs("div",{className:"flex items-center gap-3",children:[n.jsx("div",{className:"flex items-center justify-center size-5 rounded-full bg-success/15 shrink-0",children:n.jsx(Vt,{size:12,className:"text-success"})}),n.jsx("span",{className:"text-sm text-foreground/80",children:a(I)})]},I))})]}),e[19]=i,e[20]=s,e[21]=a,e[22]=b):b=e[22];let j;e[23]!==a?(j=a("chat.creditsExhaustedBanner.dismiss"),e[23]=a,e[24]=j):j=e[24];let A;e[25]!==s||e[26]!==j?(A=n.jsx(W,{variant:"ghost",size:"sm",onClick:s,children:j}),e[25]=s,e[26]=j,e[27]=A):A=e[27];let y;e[28]!==r||e[29]!==s||e[30]!==o.slug?(y=()=>{r({to:"/$org/settings/ai-providers",params:{org:o.slug}}),s?.()},e[28]=r,e[29]=s,e[30]=o.slug,e[31]=y):y=e[31];let k;e[32]!==a?(k=a("chat.creditsExhaustedBanner.manageProviders"),e[32]=a,e[33]=k):k=e[33];let w;e[34]!==y||e[35]!==k?(w=n.jsx("button",{type:"button",className:"text-xs text-muted-foreground hover:text-foreground transition-colors",onClick:y,children:k}),e[34]=y,e[35]=k,e[36]=w):w=e[36];let S;e[37]!==A||e[38]!==w?(S=n.jsxs("div",{className:"px-8 py-4 border-t border-border bg-muted/30 flex items-center justify-between",children:[A,w]}),e[37]=A,e[38]=w,e[39]=S):S=e[39];let C;e[40]!==v||e[41]!==b||e[42]!==S?(C=n.jsxs(Ls,{className:"sm:max-w-[520px] gap-0 p-0 overflow-hidden",onOpenAutoFocus:oi,children:[v,b,S]}),e[40]=v,e[41]=b,e[42]=S,e[43]=C):C=e[43];let N;return e[44]!==C||e[45]!==u?(N=n.jsx(Fs,{open:!0,onOpenChange:u,children:C}),e[44]=C,e[45]=u,e[46]=N):N=e[46],N}function oi(t){return t.preventDefault()}const ri={trial_exhausted:{label:"chat.subscriptionLimit.trialLabel",title:"chat.subscriptionLimit.trialTitle"},monthly_exhausted:{label:"chat.subscriptionLimit.monthlyLabel",title:"chat.subscriptionLimit.monthlyTitle"},runs_exhausted:{label:"chat.subscriptionLimit.runsLabel",title:"chat.subscriptionLimit.runsTitle"}};function ii(t){const e=R.c(16),{kind:s,onDismiss:o,onSubscribe:r}=t,i=K(),{label:a,title:l}=ri[s];let c;e[0]===Symbol.for("react.memo_cache_sentinel")?(c=n.jsx(ct,{size:14}),e[0]=c):c=e[0];let d;e[1]!==a||e[2]!==i?(d=i(a),e[1]=a,e[2]=i,e[3]=d):d=e[3];let u;e[4]!==i||e[5]!==l?(u=i(l),e[4]=i,e[5]=l,e[6]=u):u=e[6];let V;e[7]!==s||e[8]!==r||e[9]!==i?(V=s==="trial_exhausted"?n.jsx(W,{size:"sm",onClick:r,className:"h-7 text-xs",children:i("chat.subscriptionLimit.subscribeButton")}):void 0,e[7]=s,e[8]=r,e[9]=i,e[10]=V):V=e[10];let p;return e[11]!==o||e[12]!==d||e[13]!==u||e[14]!==V?(p=n.jsx(pe,{icon:c,label:d,title:u,defaultExpanded:!0,variant:"warning",onClose:o,footerRight:V}),e[11]=o,e[12]=d,e[13]=u,e[14]=V,e[15]=p):p=e[15],p}const ai={ai_budget_exhausted:{label:"chat.planRefused.budgetLabel",title:"chat.planRefused.budgetTitle"},feature_not_in_plan:{label:"chat.planRefused.featureLabel",title:"chat.planRefused.featureTitle"}};function Mt(t){const e=R.c(21),{kind:s,onDismiss:o}=t,r=K(),i=lt(),{org:a}=Ce(),{label:l,title:c}=ai[s];let d;e[0]===Symbol.for("react.memo_cache_sentinel")?(d=n.jsx(ct,{size:14}),e[0]=d):d=e[0];let u;e[1]!==l||e[2]!==r?(u=r(l),e[1]=l,e[2]=r,e[3]=u):u=e[3];let V;e[4]!==r||e[5]!==c?(V=r(c),e[4]=r,e[5]=c,e[6]=V):V=e[6];let p;e[7]!==i||e[8]!==o||e[9]!==a.slug?(p=()=>{i({to:"/$org/settings/ai-providers",params:{org:a.slug}}),o()},e[7]=i,e[8]=o,e[9]=a.slug,e[10]=p):p=e[10];let f;e[11]!==r?(f=r("chat.planRefused.seePlans"),e[11]=r,e[12]=f):f=e[12];let h;e[13]!==p||e[14]!==f?(h=n.jsx(W,{size:"sm",className:"h-7 text-xs",onClick:p,children:f}),e[13]=p,e[14]=f,e[15]=h):h=e[15];let m;return e[16]!==o||e[17]!==u||e[18]!==V||e[19]!==h?(m=n.jsx(pe,{icon:d,label:u,title:V,defaultExpanded:!0,variant:"warning",onClose:o,footerRight:h}),e[16]=o,e[17]=u,e[18]=V,e[19]=h,e[20]=m):m=e[20],m}function bs(t){const e=li(t);if(e!==null){const d=bs(e);return{summary:d.summary,rawDetails:d.rawDetails??t}}const s=t.trim(),o=s.startsWith("<")&&/<[a-z][\s\S]*>/i.test(s),r=/cloudflare|cf-[a-z-]+|error[\s_-]?code[\s_-]?5\d\d/i.test(s),i=/failed to fetch|networkerror|load failed|offline/i.test(s),a=/timeout|timed out|aborted|deadline/i.test(s),l=s.length>240,c=/sandbox failed to start(?::\s*(.+))?/is.exec(s);if(c){const d=c[1]?.trim().replace(/\.$/,"");return{summary:d?`Your sandbox didn't finish starting up (${d}). Try again.`:"Your sandbox didn't finish starting up. Try again.",rawDetails:t}}return r||o&&l?{summary:"Our servers are having a moment. Try sending again in a few seconds.",rawDetails:t}:i?{summary:"Lost connection. Check your network and try again.",rawDetails:t}:a?{summary:"That took longer than expected. Try again.",rawDetails:t}:o||l?{summary:"Something unexpected came back from the server. Try again.",rawDetails:t}:{summary:t,rawDetails:null}}function li(t){const e=t.trim();if(!e.startsWith("{"))return null;let s;try{s=JSON.parse(e)}catch{return null}if(!s||typeof s!="object")return null;const{error:o,message:r}=s,i=typeof o=="string"?o:r;return typeof i=="string"&&i.trim()&&!i.trim().startsWith("{")?i:null}const Vi={length:"chat.highlight.warningDescriptionLength","content-filter":"chat.highlight.warningDescriptionContentFilter","tool-calls":"chat.highlight.warningDescriptionToolCalls"};function Ye(t){const e=R.c(29),s=K(),{variant:o,onDismiss:r}=t,i=o==="error";let a;e[0]!==i||e[1]!==s?(a=s(i?"chat.highlight.errorOccurred":"chat.highlight.responseIncomplete"),e[0]=i,e[1]=s,e[2]=a):a=e[2];const l=a,c=i?eo:Os;let d;e[3]!==t.error||e[4]!==t.finishReason||e[5]!==t.variant||e[6]!==s?(d=t.variant==="error"?t.error.message:(()=>{const v=Vi[t.finishReason];return v?s(v):s("chat.highlight.responseStoppedUnexpectedly",{reason:t.finishReason})})(),e[3]=t.error,e[4]=t.finishReason,e[5]=t.variant,e[6]=s,e[7]=d):d=e[7];const u=d;let V;e[8]!==i||e[9]!==u?(V=i?bs(u):{summary:u,rawDetails:null},e[8]=i,e[9]=u,e[10]=V):V=e[10];const{summary:p,rawDetails:f}=V;let h;e[11]!==c?(h=n.jsx(c,{size:14}),e[11]=c,e[12]=h):h=e[12];let m;e[13]!==i||e[14]!==t.onContinue||e[15]!==t.onFixInChat||e[16]!==s?(m=i?n.jsx(W,{size:"sm",variant:"outline",onClick:t.onFixInChat,className:"h-7 text-xs",children:s("chat.highlight.fixInChat")}):n.jsx(W,{size:"sm",variant:"outline",onClick:t.onContinue,className:"h-7 text-xs",children:s("chat.highlight.continue")}),e[13]=i,e[14]=t.onContinue,e[15]=t.onFixInChat,e[16]=s,e[17]=m):m=e[17];let g;e[18]!==f||e[19]!==s?(g=f?n.jsxs("details",{className:"group mx-4",children:[n.jsxs("summary",{className:"flex cursor-pointer list-none items-center gap-1.5 text-xs text-muted-foreground transition-colors hover:text-foreground [&::-webkit-details-marker]:hidden",children:[n.jsx("svg",{"aria-hidden":"true",className:"size-3 transition-transform group-open:rotate-90",viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:n.jsx("path",{d:"m4.5 3 3 3-3 3"})}),n.jsx("span",{className:"group-open:hidden",children:s("chat.highlight.showTechnicalDetails")}),n.jsx("span",{className:"hidden group-open:inline",children:s("chat.highlight.hideTechnicalDetails")})]}),n.jsxs("div",{className:"relative mt-2",children:[n.jsx("button",{type:"button",onClick:()=>{navigator.clipboard.writeText(f).then(()=>Le.success(s("chat.highlight.copiedToClipboard"))).catch(()=>Le.error(s("chat.highlight.couldNotCopy")))},"aria-label":s("chat.highlight.copyErrorDetails"),title:s("chat.highlight.copy"),className:"absolute right-1.5 top-1.5 z-10 flex h-6 w-6 items-center justify-center rounded-lg bg-background/80 text-muted-foreground backdrop-blur-sm transition-colors hover:bg-background hover:text-foreground",children:n.jsx(to,{className:"size-3.5"})}),n.jsx("pre",{className:"max-h-40 overflow-auto rounded-md border border-border/60 bg-background px-3 py-2 pr-8 font-mono text-xs text-foreground/80 whitespace-pre-wrap break-all",children:f})]})]}):null,e[18]=f,e[19]=s,e[20]=g):g=e[20];let x;return e[21]!==l||e[22]!==r||e[23]!==p||e[24]!==h||e[25]!==m||e[26]!==g||e[27]!==o?(x=n.jsx(pe,{icon:h,label:l,title:p,defaultExpanded:!0,variant:o,onClose:r,footerRight:m,children:g}),e[21]=l,e[22]=r,e[23]=p,e[24]=h,e[25]=m,e[26]=g,e[27]=o,e[28]=x):x=e[28],x}function Ke(t){const e=R.c(78);let s;e[0]!==t?(s=t===void 0?{}:t,e[0]=t,e[1]=s):s=e[1];const{inline:o,voiceMode:r}=s,i=o===void 0?!1:o,a=r===void 0?!1:r,l=K(),{error:c,clearError:d,finishReason:u,clearFinishReason:V,messages:p,isStreaming:f,submit:h,sendMessage:m}=$e(),[g,x]=Se(),{virtualMcpId:v,createTaskWithMessage:b}=Ge(),{chatMode:j,setChatMode:A,simpleModeTier:y}=He(),k=Be("credits"),{mutate:w}=bo("ORGANIZATION_BILLING_CHECKOUT_START","taskBoard.subscriptionPaywall.checkoutError");let S;e[2]!==w?(S=()=>w(),e[2]=w,e[3]=S):S=e[3];const C=S;let N;e[4]!==j||e[5]!==y||e[6]!==v||e[7]!==a?(N=ne=>({...a?{voiceMode:!0}:{},tier:y,mode:j,toolApprovalLevel:ne,agent:v?{id:v}:void 0}),e[4]=j,e[5]=y,e[6]=v,e[7]=a,e[8]=N):N=e[8];const I=N;let _;e[9]!==g.toolApprovalLevel?(_=g.toolApprovalLevel??zs(),e[9]=g.toolApprovalLevel,e[10]=_):_=e[10];const E=_,U=p.at(-1),D=U?.role==="assistant"?U.parts:[],T=D.filter(pi),O=D.filter(zt),F=Vs(D),Q=as(D);let z;e[11]!==c||e[12]!==m||e[13]!==l?(z=()=>{if(c){const ge={type:"doc",content:[{type:"paragraph",content:[{type:"text",text:l("chat.highlight.fixInChatMessage",{error:c.message})}]}]};m(ge)}},e[11]=c,e[12]=m,e[13]=l,e[14]=z):z=e[14];const Y=z;let L;e[15]!==m||e[16]!==l?(L=()=>{const ne={type:"doc",content:[{type:"paragraph",content:[{type:"text",text:l("chat.highlight.pleaseContinue")}]}]};m(ne)},e[15]=m,e[16]=l,e[17]=L):L=e[17];const H=L;let X;e[18]!==I||e[19]!==E||e[20]!==h?(X=(ne,ge)=>{h({kind:"toolOutput",toolCallId:ne.toolCallId,output:{response:ge}},I(E))},e[18]=I,e[19]=E,e[20]=h,e[21]=X):X=e[21];const Z=X;let ie;e[22]!==I||e[23]!==E||e[24]!==h?(ie=(ne,ge)=>{h({kind:"toolOutput",toolCallId:ne.toolCallId,output:{accepted:ge}},I(E))},e[22]=I,e[23]=E,e[24]=h,e[25]=ie):ie=e[25];const M=ie;let B;e[26]!==b||e[27]!==g||e[28]!==A||e[29]!==x||e[30]!==l||e[31]!==v?(B=ne=>{A("default"),x({...g,toolApprovalLevel:"auto"}),b({virtualMcpId:v,message:{parts:[{type:"text",text:l("chat.highlight.implementPlanMessage",{plan:ne})}]}})},e[26]=b,e[27]=g,e[28]=A,e[29]=x,e[30]=l,e[31]=v,e[32]=B):B=e[32];const J=B,se=ui;let ee;e[33]!==I||e[34]!==h?(ee=(ne,ge,xe,Ee)=>{h({kind:"approval",approvalId:ne,approved:ge,...xe?{reason:xe}:{}},I(Ee))},e[33]=I,e[34]=h,e[35]=ee):ee=e[35];const le=ee,G=cs();if(G.isCreditExhausted){let ne;return e[36]!==k||e[37]!==d||e[38]!==i?(ne=k?n.jsx(ni,{onDismiss:d}):n.jsx("div",{className:$(!i&&"absolute bottom-full left-0 right-0"),children:n.jsx(Mt,{kind:"ai_budget_exhausted",onDismiss:d})}),e[36]=k,e[37]=d,e[38]=i,e[39]=ne):ne=e[39],ne}const{showError:ae,showWarning:Ve,hasApprovals:ce}=G,Ne=T.map(di).join("|"),_e=ls(F)?.toolCallId??"",qe=Q.map(ci).join("|"),ue=!i&&"absolute bottom-full left-0 right-0";let fe;e[40]!==ue?(fe=$(ue),e[40]=ue,e[41]=fe):fe=e[41];let be;e[42]!==G.todos?(be=n.jsx(Wr,{todos:G.todos}),e[42]=G.todos,e[43]=be):be=e[43];let de;e[44]!==d||e[45]!==G.subscriptionErrorKind||e[46]!==C?(de=G.subscriptionErrorKind&&n.jsx(ii,{kind:G.subscriptionErrorKind,onDismiss:d,onSubscribe:C}),e[44]=d,e[45]=G.subscriptionErrorKind,e[46]=C,e[47]=de):de=e[47];let Ae;e[48]!==d||e[49]!==G.planRefusal?(Ae=G.planRefusal&&n.jsx(Mt,{kind:G.planRefusal,onDismiss:d}),e[48]=d,e[49]=G.planRefusal,e[50]=Ae):Ae=e[50];let ke;e[51]!==d||e[52]!==c||e[53]!==Y||e[54]!==ae?(ke=ae&&n.jsx(Ye,{variant:"error",error:c,onDismiss:d,onFixInChat:Y}),e[51]=d,e[52]=c,e[53]=Y,e[54]=ae,e[55]=ke):ke=e[55];let he;e[56]!==V||e[57]!==u||e[58]!==H||e[59]!==Ve?(he=Ve&&n.jsx(Ye,{variant:"warning",finishReason:u,onDismiss:V,onContinue:H}),e[56]=V,e[57]=u,e[58]=H,e[59]=Ve,e[60]=he):he=e[60];const Me=ce&&n.jsx(Ir,{approvals:Q,isStreaming:f,onRespond:le},qe),De=G.hasPlans&&n.jsx(_r,{plans:F,isStreaming:f,onApprove:J,onDismiss:se},_e),Re=G.hasTaskSuggestion&&n.jsx(Qr,{parts:O,isStreaming:f,onRespond:M},O.at(-1)?.toolCallId??"");let me;e[61]!==G.isWaitingForUserInput||e[62]!==Z||e[63]!==f||e[64]!==Ne||e[65]!==T?(me=G.isWaitingForUserInput&&n.jsx(vs,{userAskParts:T,isStreaming:f,onSubmit:Z},Ne),e[61]=G.isWaitingForUserInput,e[62]=Z,e[63]=f,e[64]=Ne,e[65]=T,e[66]=me):me=e[66];let Ie;return e[67]!==fe||e[68]!==be||e[69]!==de||e[70]!==Ae||e[71]!==ke||e[72]!==he||e[73]!==Me||e[74]!==De||e[75]!==Re||e[76]!==me?(Ie=n.jsxs("div",{className:fe,children:[be,de,Ae,ke,he,Me,De,Re,me]}),e[67]=fe,e[68]=be,e[69]=de,e[70]=Ae,e[71]=ke,e[72]=he,e[73]=Me,e[74]=De,e[75]=Re,e[76]=me,e[77]=Ie):Ie=e[77],Ie}function ci(t){return t.approvalId}function di(t){return t.toolCallId}function ui(){document.querySelector("[data-chat-input]")?.focus()}function pi(t){return t.type==="tool-user_ask"}Ke.Error=function(e){return n.jsx(Ye,{variant:"error",error:e.error,onDismiss:e.onDismiss,onFixInChat:e.onFixInChat})};Ke.Warning=function(e){return n.jsx(Ye,{variant:"warning",finishReason:e.finishReason,onDismiss:e.onDismiss,onContinue:e.onContinue})};Ke.UserAskQuestion=vs;function As(t){const e=R.c(20),{taskId:s}=t,o=K(),r=hn(s),i=mn(r),a=gn(),{stop:l,removeLocalMessage:c}=$e();if(i.length===0)return null;let d;e[0]!==o?(d=o("chat.queueTray.sendNow"),e[0]=o,e[1]=d):d=e[1];let u;e[2]!==l?(u=()=>{l()},e[2]=l,e[3]=u):u=e[3];let V;e[4]===Symbol.for("react.memo_cache_sentinel")?(V=n.jsx(qt,{size:14}),e[4]=V):V=e[4];let p;e[5]!==d||e[6]!==u?(p=n.jsx(Ze,{asChild:!0,children:n.jsx(W,{type:"button",variant:"ghost",size:"icon-sm","aria-label":d,onClick:u,children:V})}),e[5]=d,e[6]=u,e[7]=p):p=e[7];let f;e[8]!==o?(f=o("chat.queueTray.sendNow"),e[8]=o,e[9]=f):f=e[9];let h;e[10]!==f?(h=n.jsx(Xe,{side:"top",children:n.jsx("p",{className:"text-xs",children:f})}),e[10]=f,e[11]=h):h=e[11];let m;e[12]!==p||e[13]!==h?(m=n.jsxs(et,{delayDuration:400,children:[p,h]}),e[12]=p,e[13]=h,e[14]=m):m=e[14];let g;return e[15]!==a||e[16]!==c||e[17]!==o||e[18]!==s?(g=(x,v)=>n.jsxs("div",{className:"group/queuerow flex items-center gap-2 px-3 py-1.5",children:[n.jsx("span",{className:"flex size-[18px] shrink-0 items-center justify-center rounded-full bg-muted text-[10px] font-semibold text-muted-foreground dark:bg-background",children:v+1}),n.jsx("span",{className:"min-w-0 flex-1 truncate text-sm text-foreground",children:x.text}),n.jsx("div",{className:"flex shrink-0 items-center gap-1 opacity-0 transition-opacity focus-within:opacity-100 group-hover/queuerow:opacity-100",children:n.jsx(W,{type:"button",variant:"ghost",size:"icon-sm",title:o("chat.queueTray.removeFromQueue"),"aria-label":o("chat.queueTray.removeFromQueue"),onClick:()=>{a.cancel(s,x.messageId).then(b=>{b&&(xn(s,x.messageId),c(x.messageId))})},children:n.jsx($t,{className:"size-3.5"})})})]},x.messageId),e[15]=a,e[16]=c,e[17]=o,e[18]=s,e[19]=g):g=e[19],n.jsxs("div",{className:"mb-1 overflow-hidden rounded-2xl border border-border bg-card dark:bg-muted",children:[n.jsxs("div",{className:"flex items-center justify-between gap-2 border-b border-border py-1.5 pr-2 pl-3 text-xs text-muted-foreground",children:[n.jsx("span",{children:o(i.length===1?"chat.queueTray.queuedMessage":"chat.queueTray.queuedMessages",{count:i.length})}),m]}),i.map(g)]})}function fi(t){return["openai-compatible","openrouter","deco"].includes(t)}function hi(t,e){return fi(t)&&mi(e)!==null}function mi(t){const e=t.replace(/^openai\//,"");return/^(gpt-\d|o[134](?:-|$))/.test(e)?e:null}const gi={anthropic:/^claude-/,openrouter:/^anthropic\/claude-/,deco:/^anthropic\/claude-/};function xi(t,e){return gi[t]?.test(e)??!1}function vi(t){return Mo(t)&&xi(t.providerId,t.modelId)}function bi(t,e){return t?{modelId:t.modelId,title:t.title??t.modelId,keyId:t.keyId,providerId:e,description:null,logo:null,capabilities:[],limits:null,costs:null}:null}const Ai={fast:"chat.tierTrigger.tierFast",smart:"chat.tierTrigger.tierSmart",thinking:"chat.tierTrigger.tierThinking"};function yi(t){const e=R.c(32),{tier:s,orgSlot:o,userSlot:r,autoSlot:i,filterModels:a,onPick:l,onReset:c,onClose:d}=t,u=K(),V=os(),p=new Set(V.map(ji)),f=vn([r,o,i],p),h=f?.keyId??null,[m,g]=P.useState(h??V[0]?.id??null),x=V.some(F=>F.id===m)?m:h??V[0]?.id??null,v=x?V.find(F=>F.id===x):null,b="flex h-[70vh] max-h-[460px] w-full flex-col",j=Ai[s];let A;e[0]!==u||e[1]!==j?(A=u(j),e[0]=u,e[1]=j,e[2]=A):A=e[2];let y;e[3]!==A?(y=n.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:A}),e[3]=A,e[4]=y):y=e[4];let k;e[5]!==c||e[6]!==u||e[7]!==r?(k=r&&n.jsx("button",{type:"button",onClick:c,className:"text-xs text-muted-foreground hover:text-foreground px-2 py-1 rounded-lg hover:bg-accent cursor-pointer",children:u("chat.modelPreferences.reset")}),e[5]=c,e[6]=u,e[7]=r,e[8]=k):k=e[8];let w;e[9]!==y||e[10]!==k?(w=n.jsxs("div",{className:"flex items-center justify-between px-3 h-8 shrink-0",children:[y,k]}),e[9]=y,e[10]=k,e[11]=w):w=e[11];const S="flex-1 min-h-0",C=P.Suspense;let N;e[12]===Symbol.for("react.memo_cache_sentinel")?(N=n.jsx(yo,{}),e[12]=N):N=e[12];const I=Ao,_=!0,E=bi(h?f:null,v?.providerId??"deco");let U;e[13]!==x||e[14]!==l||e[15]!==g?(U=F=>{const Q=F.keyId??x??"";g(Q),l({keyId:Q,modelId:F.modelId,title:F.title})},e[13]=x,e[14]=l,e[15]=g,e[16]=U):U=e[16];let D;e[17]!==I||e[18]!==x||e[19]!==a||e[20]!==d||e[21]!==g||e[22]!==E||e[23]!==U?(D=n.jsx(I,{compact:_,filterModels:a,onClose:d,credentialId:x,onCredentialChange:g,selectedModel:E,onModelChange:U}),e[17]=I,e[18]=x,e[19]=a,e[20]=d,e[21]=g,e[22]=E,e[23]=U,e[24]=D):D=e[24];let T;e[25]!==C||e[26]!==D||e[27]!==N?(T=n.jsx("div",{className:S,children:n.jsx(C,{fallback:N,children:D})}),e[25]=C,e[26]=D,e[27]=N,e[28]=T):T=e[28];let O;return e[29]!==T||e[30]!==w?(O=n.jsxs("div",{className:b,children:[w,T]}),e[29]=T,e[30]=w,e[31]=O):O=e[31],O}function ji(t){return t.id}const ki=["fast","smart","thinking"];function ys(t){return{fast:t("chat.tierTrigger.tierFast"),smart:t("chat.tierTrigger.tierSmart"),thinking:t("chat.tierTrigger.tierThinking")}}const Dt={fast:"chat.agentModels.quickerResponses",smart:"chat.agentModels.balancedQuality",thinking:"chat.agentModels.deeperReasoning"};function wi(t){const e=R.c(28),{tier:s,pillIcon:o,groups:r}=t,i=K();let a;e[0]!==i?(a=ys(i),e[0]=i,e[1]=a):a=e[1];const l=a,[c,d]=P.useState(!1);let u;e[2]===Symbol.for("react.memo_cache_sentinel")?(u=w=>{w.onSelect(),d(!1)},e[2]=u):u=e[2];const V=u,p=l[s];let f;e[3]===Symbol.for("react.memo_cache_sentinel")?(f=$("text-muted-foreground hover:text-foreground transition-[gap] duration-200 shrink min-w-0","gap-0 @[320px]/chat-bottom:gap-1.5"),e[3]=f):f=e[3];let h;e[4]===Symbol.for("react.memo_cache_sentinel")?(h=$("min-w-0 truncate transition-[max-width,opacity] duration-200 ease-out max-w-0 opacity-0","@[320px]/chat-bottom:max-w-24 @[320px]/chat-bottom:opacity-100"),e[4]=h):h=e[4];const m=l[s];let g;e[5]!==m?(g=n.jsx("span",{className:h,children:m}),e[5]=m,e[6]=g):g=e[6];let x;e[7]===Symbol.for("react.memo_cache_sentinel")?(x=n.jsx(Xt,{size:12,className:"opacity-60 hidden @[320px]/chat-bottom:inline-block"}),e[7]=x):x=e[7];let v;e[8]!==o||e[9]!==p||e[10]!==g?(v=n.jsx(Ze,{asChild:!0,children:n.jsx("span",{className:"inline-flex min-w-0 shrink",children:n.jsx(es,{asChild:!0,children:n.jsxs(W,{type:"button",variant:"ghost",size:"default","aria-label":p,className:f,children:[o,g,x]})})})}),e[8]=o,e[9]=p,e[10]=g,e[11]=v):v=e[11];let b;e[12]!==p?(b=n.jsx(Xe,{children:p}),e[12]=p,e[13]=b):b=e[13];let j;e[14]!==v||e[15]!==b?(j=n.jsxs(et,{children:[v,b]}),e[14]=v,e[15]=b,e[16]=j):j=e[16];let A;if(e[17]!==r||e[18]!==i){let w;e[20]!==i?(w=S=>n.jsx("div",{className:"flex flex-col",children:S.rows.map(C=>n.jsxs("div",{className:"group/tier-row relative flex items-stretch rounded-lg hover:bg-muted",children:[n.jsxs("button",{type:"button",role:"menuitem","aria-label":C.title,onClick:()=>V(C),className:$("flex flex-1 min-w-0 items-start gap-2 px-2 py-1.5 text-left",C.modelOverride&&"pr-7 [@media(hover:hover)]:pr-2"),children:[C.icon&&n.jsx("span",{className:"shrink-0 text-muted-foreground mt-0.5",children:C.icon}),n.jsxs("div",{className:"flex-1 min-w-0",children:[n.jsx("div",{className:"text-sm",children:C.title}),C.subtitle&&n.jsx("div",{className:"text-xs text-muted-foreground",children:C.subtitle})]}),C.active&&n.jsx("span",{title:i("chat.tierTrigger.selected"),children:n.jsx(Vt,{size:14,className:"text-foreground mt-0.5"})})]}),C.modelOverride&&n.jsx(Ci,{label:C.title,render:C.modelOverride})]},C.key))},S.key),e[20]=i,e[21]=w):w=e[21],A=r.map(w),e[17]=r,e[18]=i,e[19]=A}else A=e[19];let y;e[22]!==A?(y=n.jsx(ts,{align:"end",className:"p-1 w-64",onOpenAutoFocus:Si,children:n.jsx("div",{role:"menu",className:"flex flex-col",children:A})}),e[22]=A,e[23]=y):y=e[23];let k;return e[24]!==c||e[25]!==j||e[26]!==y?(k=n.jsxs(ss,{open:c,onOpenChange:d,children:[j,y]}),e[24]=c,e[25]=j,e[26]=y,e[27]=k):k=e[27],k}function Si(t){return t.preventDefault()}function Ci(t){const e=R.c(38),{label:s,render:o}=t,r=K(),i=ns(),[a,l]=P.useState(!1);let c;e[0]===Symbol.for("react.memo_cache_sentinel")?(c=()=>l(!1),e[0]=c):c=e[0];const d=c;let u;e[1]!==s||e[2]!==r?(u=r("chat.modelPreferences.customizeModel",{tier:s}),e[1]=s,e[2]=r,e[3]=u):u=e[3];const V=a&&"opacity-100";let p;e[4]!==V?(p=$("absolute right-1 top-1/2 -translate-y-1/2 flex items-center justify-center","size-6 rounded-lg bg-background border border-border/60 shadow-sm","text-muted-foreground hover:text-foreground","opacity-100 [@media(hover:hover)]:opacity-0","[@media(hover:hover)]:group-hover/tier-row:opacity-100","[@media(hover:hover)]:group-focus-within/tier-row:opacity-100",V),e[4]=V,e[5]=p):p=e[5];let f;e[6]===Symbol.for("react.memo_cache_sentinel")?(f=n.jsx(Wn,{size:14}),e[6]=f):f=e[6];let h;e[7]!==u||e[8]!==p?(h=n.jsx("button",{type:"button","aria-label":u,className:p,children:f}),e[7]=u,e[8]=p,e[9]=h):h=e[9];const m=h;if(i){let j;e[10]!==m?(j=n.jsx(wo,{asChild:!0,children:m}),e[10]=m,e[11]=j):j=e[11];let A;e[12]!==s||e[13]!==r?(A=r("chat.modelPreferences.customizeModel",{tier:s}),e[12]=s,e[13]=r,e[14]=A):A=e[14];let y;e[15]!==A?(y=n.jsx(So,{className:"sr-only",children:A}),e[15]=A,e[16]=y):y=e[16];let k;e[17]!==a||e[18]!==o?(k=a&&o(d),e[17]=a,e[18]=o,e[19]=k):k=e[19];let w;e[20]!==k||e[21]!==y?(w=n.jsxs(Co,{className:"p-0 flex flex-col max-h-[95vh]",children:[y,k]}),e[20]=k,e[21]=y,e[22]=w):w=e[22];let S;return e[23]!==a||e[24]!==w||e[25]!==j?(S=n.jsxs(No,{open:a,onOpenChange:l,children:[j,w]}),e[23]=a,e[24]=w,e[25]=j,e[26]=S):S=e[26],S}let g;e[27]!==m?(g=n.jsx(es,{asChild:!0,children:m}),e[27]=m,e[28]=g):g=e[28];let x;e[29]!==a||e[30]!==o?(x=a&&o(d),e[29]=a,e[30]=o,e[31]=x):x=e[31];let v;e[32]!==x?(v=n.jsx(ts,{side:"right",align:"start",collisionPadding:12,className:"w-[min(22rem,calc(100vw-2rem))] p-0 overflow-hidden",children:x}),e[32]=x,e[33]=v):v=e[33];let b;return e[34]!==a||e[35]!==g||e[36]!==v?(b=n.jsxs(ss,{open:a,onOpenChange:l,children:[g,v]}),e[34]=a,e[35]=g,e[36]=v,e[37]=b):b=e[37],b}function Rt(t){return t==="fast"?n.jsx(ct,{size:16}):t==="thinking"?n.jsx(Yn,{size:16}):n.jsx(Io,{size:16})}function Ni(t){const e=R.c(13),s=yn();let o;e[0]!==t||e[1]!==s.tiers?(o=d=>{const u=s.tiers[d];return u?u.title??u.modelId:t.chat[d]?.title},e[0]=t,e[1]=s.tiers,e[2]=o):o=e[2];const r=o;let i;e[3]!==r?(i=r("fast"),e[3]=r,e[4]=i):i=e[4];let a;e[5]!==r?(a=r("smart"),e[5]=r,e[6]=a):a=e[6];let l;e[7]!==r?(l=r("thinking"),e[7]=r,e[8]=l):l=e[8];let c;return e[9]!==i||e[10]!==a||e[11]!==l?(c={fast:i,smart:a,thinking:l},e[9]=i,e[10]=a,e[11]=l,e[12]=c):c=e[12],c}function Ii(){const t=R.c(25),e=K(),{simpleModeTier:s,setSimpleModeTier:o}=He(),r=To(),i=os(),a=Do(i),l=Ni(a),{data:c,error:d}=bn();let u;t[0]!==c?(u=c===void 0?{tiers:{}}:c,t[0]=c,t[1]=u):u=t[1];const V=u,p=An(),f=We()?.lockedHarness,h=f==="claude-code",m=Be("model_choice"),g=co(),x=uo();if(!g||!m)return null;let v,b;if(t[2]!==a||t[3]!==x||t[4]!==h||t[5]!==f||t[6]!==r||t[7]!==o||t[8]!==e||t[9]!==s||t[10]!==l||t[11]!==p||t[12]!==V||t[13]!==d){const w=ys(e);v="decopilot",b=ki.map(S=>{const C=l[S],N=V.tiers[S];return{key:`decopilot-${S}`,icon:Rt(S),title:w[S],subtitle:x?C??e(Dt[S]):e(Dt[S]),active:s===S,onSelect:()=>o(S),modelOverride:x?I=>n.jsxs(n.Fragment,{children:[d&&n.jsx("div",{className:"text-xs text-destructive p-3 pb-0",children:e("chat.modelPreferences.loadFailed")}),n.jsx(yi,{tier:S,orgSlot:r.tiers[S],userSlot:N,autoSlot:a.chat[S],filterModels:f==="codex"?Ti:h?vi:void 0,onClose:I,onPick:_=>p.mutate({tier:S,slot:_}),onReset:()=>p.mutate({tier:S,slot:null})},`${S}:${N?.keyId??"org"}:${N?.modelId??""}`)]}):void 0}}),t[2]=a,t[3]=x,t[4]=h,t[5]=f,t[6]=r,t[7]=o,t[8]=e,t[9]=s,t[10]=l,t[11]=p,t[12]=V,t[13]=d,t[14]=v,t[15]=b}else v=t[14],b=t[15];let j;t[16]!==v||t[17]!==b?(j=[{key:v,rows:b}],t[16]=v,t[17]=b,t[18]=j):j=t[18];const A=j;let y;t[19]!==s?(y=Rt(s),t[19]=s,t[20]=y):y=t[20];let k;return t[21]!==A||t[22]!==y||t[23]!==s?(k=n.jsx(wi,{tier:s,pillIcon:y,groups:A}),t[21]=A,t[22]=y,t[23]=s,t[24]=k):k=t[24],k}function Ti(t){return hi(t.providerId,t.modelId)}function js(t){const e=R.c(3),[s]=Se();let o;return e[0]!==s.enableSounds||e[1]!==t?(o=()=>{s.enableSounds&&$o(t.dataUri).catch(i=>{console.warn(`[sound] ${t.name} playback failed:`,i)})},e[0]=s.enableSounds,e[1]=t,e[2]=o):o=e[2],o}const _i={name:"switch-005",dataUri:"data:audio/mpeg;base64,SUQzBAAAAAAAIlRTU0VAAAAOAAADTGF2ZjYyLjMuMTAwAAAAAAAAAAAAAAD/+1DAAAAAAAAAAAAAAAAAAAAAAABJbmZvAAAADwAAABkAABU4ABMTEx0dHR0nJycnMTExMTs7OztERERETk5OTlhYWFhiYmJibGxsbHZ2dnZ/f39/iYmJiZOTk5OdnZ2dp6enp7GxsbG7u7u7xMTExM7Ozs7Y2NjY4uLi4uzs7Oz29vb2/////wAAAABMYXZjNjIuMTEAAAAAAAAAAAAAAAAkBVYAAAAAAAAVOPCP8KUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//tQxAAACEwDXvQRAAG8Ii93HtACUCAABAKCJwfaCEHwfeoEAQdEAYygIHBOCAIAgCAJh9QIOg+D5/ygPh/wfB8DuKAgCHyn9QPh/5SCDv+CEHAQdxOD4B27c39tbckkqYbBAYAN9bNJLB+aXAf5wQAKdzxfbmrVIRQ4xNx3HwnoDmLhfMhgJiiw/HREXNCHqjvHEPEG8QjBYlxQNepJAT0kC8ip6JzSWj1TasoG+iyycbf2Uil1ovf1f/oUtR1qP+s1WSBFKoAAU02BDjMhuP/7UsQEgws8bRpd8YABJYPeBf9wCGXTGxBYcw5AJFMFMAmQQAhGAxgLBgHIAMYAAALhgAchipbe/91aU1VV4zcZj1Vf1XgYCIMBNrsBAIGs9/Ue4i/xFPeqCqwViI9/UeLf///rOngdA3OPHFjmOBv+EQnGahgaZxVplmkAH5JadDTQlNCEuGNiWYbCCONWdUJg6HXNazFdu1T+VgaEpOP70exv7f2/4b/yH//2/4cqCX/zWRUrIw+IPNMNlDnjAXQas/I4AzmYifA0tMSCgQDF//tSxBCDSzzi3k/sQwEyCtjJ/rBZAk+Uqj1YhA5YMCAAMwgOUchTkK7OR7LbMl0W1H6SvzG0Q2ZzfKUhnmTobv9DNhS1v7P8h//8Gv8gTRt1jReZ7YEjmMQg9hhwwMycHooasFmZyjcZGBKJD+IwbMCQQLoi+IQXCcIoydKoilI2MWFS5uJdDEu2taRrYI2ZSqKY50pJLv2NfjUAAuQAMfqVQ/T3PDQgMJMeEZ45hJzY6MNoFMxqTj1zNGQKJjAxEsSCBgQJBSIL0mcKYQJfVAn/+1LEGwLKlEKrD3MiYcuMkVa/wABB8Vh6M1q1epbvXwWBURhkyEhWZ/////////////9gjZ/Wt4w+4MNMCpE4TBYQl4w1IHvMDdA2zBngBMwc8COMDhCpDAfgOAAgrBgNYU+YC0FBGAkAMpgWoSCYAGESGBGAKBgXgJOdiOJmMCmNwCYNDJhYRPykRCJhTBnEUzlsjv4UNLj/z97n3Mv/7z1nZqyitYAZIqErIwMwJAqEw0GAAMFptJMaqFwB8CQIWlhuhuDAwNjfuwrQFAYXCf/7UsQVAA+9PTP42gYRdiIu9zBwAPbFUCi0DAhgNcS+7cDwVgM05A9bUDeuQMyE/u3CygVISgZhpIau/9PhdQG2C9DpxZZJmn/dn/Psmt0EFm////l84ThUTopE4VD/9JkubOGasTvN30C20G21qgUCkVCoUCgPMywrPCGly27V5q5t24vl/8jSlSAPCxzNseNCw3oh3NGBu4BZJ5hv7DRSfR/+eWG7nA8IKh2Olv5iz3q5m3//Joxo3JqNyYkSuGt/k6D4DeoBOHmHdl0dkZYA//tSxAUAC4B1Z/2DADEcA17Z/uhI4Yoik/TrZo+ww7UtmpW4LDWu2IacoJKJJeTSM+ZmAYBEiU+ZnnAwCn1VVVV6JUJQVnioKhrgqdKgqGpUFeCp0sDR3ztQNREDRUFioKuxKCpYGQBlRIBk+aLwb8KblGQVDdphPYTUdBOGbVpAaTF6ZdjEV0iRUZRCYkA4oUQDx5zqDugtXvza/7fuNNvfZ+j9v+T/2f//J/4cAAOTpE5K4zksR9MfIB+TDcQTI4gNs1XKAzEFUrGkxABYEBb/+1LEEYNKrEjgT/TCwYYVmUX+mHoKgWhKU5Eiw9SFIRmppw+3fYo4siPhUFeexM8KgIO6wVuPDDy01qeRaVbw357//y3+o8M0pBNlNLCGBzGKwyYw2IIFOE1WNTjRM6x8MlA1AxDhUHTAkEiyKpnbWrLcaOBotBUKbk1pypcWDAIK00AhKLGkUco6q9VWvM53mcaq3tVa8zjTM/tX//EDP//////////XAAmrwAAPoKwcw0ShDCZD/BQlhzinxQdorsOuXTEIC01ZkJyu4k/qPP/7UsQUAEjkrrkvZaPBIRXUoe5QObfMhYKX9RVgTPqCSCaSCaSC0XVdV1f/////6IAlguuAJSiDRNloNBsZg+0+Ts8MMCn81WUTRAlIi+GHECD0y8AWDIqswYsxGOSKVV7MqOni8tkVOip0fZX/////9HrMCbAz2EHGS4GKAAiRAAAYAcDdKd4G6Z/nwYgJ0ZAIgZyC8aPAs/iPBhwMpWDQNARltNS5Y61v//9i8Yl4SkFkIGTkAc0UBrIYLPA4MYBEy+YLMRuY4nhTC3hZA68H//tSxCoAyQC6mY6CkWDJBIsBz/QUrgNmahSzcrYw0/HhfnMAZBojDsgTFkDR5MDkG/DZEbk2FCmowqdqv2TYABiJwqqYjaQRGZ1URZ1DhSsdiHX/GBu0QpzIBNSaLqZ0ARkwFARxMrpt/Eh47mbQAhhU6sisFUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+1LESoHHJCRaj/dmYAIAQAAQAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7UsSLg8AAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+1LEoYPAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7UsShg8AAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+1LEoYPAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tSxKGDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV",duration:.609,format:"mp3",license:"CC0",author:"Kenney"},Mi=Nn.togglePlanMode.keys.map(t=>t==="Shift"?"⇧":t).join(""),Di=[{src:"/connections/gmail.png",name:"Gmail"},{src:"/connections/perplexity.png",name:"Perplexity"},{src:"/connections/github.png",name:"GitHub"}];function Ri(){const t=R.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=n.jsx("div",{className:"flex items-center -space-x-1.5",children:Di.map(Ei)}),t[0]=e):e=t[0],e}function Ei(t){return n.jsx("img",{src:t.src,alt:t.name,className:"size-5 rounded-sm ring-1 ring-border object-cover bg-white"},t.name)}function Pi({disabled:t,onOpenConnections:e,virtualMcpId:s,selectedModel:o,isStreaming:r,onUnsupportedFile:i}){const a=K(),[l,c]=P.useState(!1),d=js(_i),{org:u}=Ce(),{editor:V}=Ot(),p=P.useRef(null),f=ft(o),h=()=>{!f||r||(c(!1),p.current?.click())},m=async M=>{const B=M.target.files;if(!B||B.length===0||!V)return;const J=Array.from(B);try{let se=V.state.selection.from;for(const ee of J)await rs(V,o??null,ee,se,i,a),se=V.state.selection.to}finally{p.current&&(p.current.value="")}},g=Lo({connectionId:s,orgId:u.id,orgSlug:u.slug}),x=$s.virtualMcpPrompts(s,u.id),{data:v,isLoading:b}=Bs({queryKey:x,queryFn:()=>Fo(g),staleTime:6e4,enabled:l&&!!g}),j=v?.prompts??[],[A,y]=P.useState(null),{chatMode:k,setChatMode:w}=He(),[S,C]=Se(),N=We()?.lockedHarness!=="claude-code",I=we.find(M=>M.value===S.toolApprovalLevel)??we[0],_=a(I.shortKey),E=M=>{const B=we.find(J=>J.value===M);if(B){if(B.value===S.toolApprovalLevel){c(!1);return}d(),te("chat_approval_level_changed",{from_level:S.toolApprovalLevel,to_level:B.value,source:"tools_popover"}),C({...S,toolApprovalLevel:B.value}),c(!1)}},U=k==="plan",D=()=>{d();const M=U?"default":"plan";te("chat_mode_changed",{from_mode:k,to_mode:M,source:"tools_popover"}),w(M),c(!1)},T=()=>{e(),c(!1)},O=async(M,B)=>{if(!V||!g)return;const J=kt(M._meta),se={from:V.state.selection.from,to:V.state.selection.to};try{const ee=await zo(g,M.name,B);cn(V,se,{id:M.name,name:xo(M.name,J),metadata:ee.messages,char:"/",kind:"prompt",args:B})}catch{Le.error(a("chat.toolsPopover.failedLoadPrompt"))}},F=async M=>{c(!1);const B=!!(M.arguments&&M.arguments.length>0);if(te("chat_prompt_inserted",{prompt_name:M.name,with_arguments:B}),B){y(M);return}await O(M)},Q=async M=>{A&&(await O(A,M),y(null))},z=()=>{d();const M=k==="gen-image"?"default":"gen-image";te("chat_mode_changed",{from_mode:k,to_mode:M,source:"tools_popover"}),w(M),c(!1)},Y=()=>{d();const M=k==="web-search"?"default":"web-search";te("chat_mode_changed",{from_mode:k,to_mode:M,source:"tools_popover"}),w(M),c(!1)},L=()=>{d();const M=k==="deep-research"?"default":"deep-research";te("chat_mode_changed",{from_mode:k,to_mode:M,source:"tools_popover"}),w(M),c(!1)},H=k==="gen-image",X=k==="web-search",Z=k==="deep-research",ie=n.jsx("input",{ref:p,type:"file",multiple:!0,accept:jo(o??null),className:"hidden",onChange:m,disabled:r});return n.jsxs(n.Fragment,{children:[ie,n.jsxs(Ks,{open:l,onOpenChange:M=>{M&&!l&&te("chat_tools_popover_opened",{chat_mode:k}),c(M)},children:[n.jsx(qs,{asChild:!0,children:n.jsxs(W,{type:"button",variant:"ghost",size:"default",disabled:t,title:a("chat.toolsPopover.tools"),"aria-label":a("chat.toolsPopover.tools"),className:$("text-muted-foreground hover:text-foreground transition-[gap] duration-200 shrink min-w-0","gap-0 @[320px]/chat-bottom:gap-1.5"),children:[n.jsx(Gn,{size:14}),n.jsx("span",{className:$("min-w-0 truncate transition-[max-width,opacity] duration-200 ease-out max-w-0 opacity-0","@[320px]/chat-bottom:max-w-24 @[320px]/chat-bottom:opacity-100"),children:a("chat.toolsPopover.tools")})]})}),n.jsxs(Qs,{align:"start",className:"w-56 p-1.5 space-y-1",children:[f?n.jsxs(ye,{onClick:h,disabled:r,children:[n.jsx(wt,{size:16}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.addFile")})]}):n.jsxs(et,{children:[n.jsx(Ze,{asChild:!0,children:n.jsxs(ye,{"aria-disabled":"true",className:"opacity-50 cursor-not-allowed",onSelect:M=>M.preventDefault(),children:[n.jsx(wt,{size:16}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.addFile")})]})}),n.jsx(Xe,{side:"right",children:a("chat.toolsPopover.modelNoFileSupport")})]}),n.jsxs(ye,{onClick:D,className:$(U&&"text-special"),children:[n.jsx(Qt,{size:16,className:$(U&&"text-special")}),n.jsx("span",{className:"flex-1 whitespace-nowrap",children:a("chat.toolsPopover.planMode")}),n.jsx("span",{className:$("text-xs text-muted-foreground",U&&"text-special font-medium"),children:Mi})]}),n.jsxs(ye,{onClick:z,className:$(H&&"text-special"),children:[n.jsx(Jt,{size:16,className:$(H&&"text-special")}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.createImage")}),H&&n.jsx("span",{className:"text-xs text-special font-medium",children:a("chat.toolsPopover.on")})]}),n.jsxs(ye,{onClick:Y,className:$(X&&"text-special"),children:[n.jsx(Gt,{size:16,className:$(X&&"text-special")}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.webSearch")}),X&&n.jsx("span",{className:"text-xs text-special font-medium",children:a("chat.toolsPopover.on")})]}),n.jsxs(ye,{onClick:L,className:$(Z&&"text-special"),children:[n.jsx(Ht,{size:16,className:$(Z&&"text-special")}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.deepResearch")}),Z&&n.jsx("span",{className:"text-xs text-special font-medium",children:a("chat.toolsPopover.on")})]}),n.jsxs(xt,{children:[n.jsxs(vt,{className:"gap-2",children:[n.jsx("span",{className:"flex size-4 items-center justify-center text-base font-medium text-muted-foreground",children:"/"}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.prompts")})]}),n.jsx(bt,{className:"w-80 max-h-72 overflow-y-auto p-1.5",children:b?n.jsxs("div",{className:"flex items-center gap-2 px-2 py-3 text-sm text-muted-foreground",children:[n.jsx(Ys,{className:"size-3.5"}),a("chat.toolsPopover.loadingPrompts")]}):j.length===0?n.jsx("div",{className:"px-2 py-3 text-sm text-muted-foreground",children:a("chat.toolsPopover.noPromptsAvailable")}):j.map(M=>n.jsxs(ye,{onClick:()=>F(M),className:"flex flex-col items-start gap-0.5",children:[n.jsx("span",{className:"font-medium text-sm capitalize",children:M.title||go(M.name,kt(M._meta))}),M.description&&n.jsx("span",{className:"text-xs text-muted-foreground line-clamp-2",children:M.description})]},M.name))})]}),N&&n.jsxs(xt,{children:[n.jsxs(vt,{className:"gap-2",children:[n.jsx(Je,{size:16}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.approval")}),n.jsx("span",{className:"text-xs text-muted-foreground",children:_})]}),n.jsx(bt,{className:"w-48 p-1.5",children:n.jsx(Ws,{value:S.toolApprovalLevel,onValueChange:E,children:we.map(M=>n.jsx(Gs,{value:M.value,children:a(M.labelKey)},M.value))})})]}),n.jsxs(ye,{onClick:T,children:[n.jsx(Oo,{size:16}),n.jsx("span",{className:"flex-1",children:a("chat.toolsPopover.connections")}),n.jsx(P.Suspense,{children:n.jsx(Ri,{})})]})]})]}),n.jsx(Vn,{prompt:A,setPrompt:y,onSubmit:Q})]})}const Ui=[{src:"/connections/github.png",name:"GitHub"},{src:"/connections/gmail.png",name:"Gmail"},{src:"/connections/linear.png",name:"Linear"},{src:"/connections/shopify.png",name:"Shopify"},{src:"/connections/firecrawl.png",name:"Firecrawl"},{src:"/connections/perplexity.png",name:"Perplexity"}];function Li(){const t=R.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=n.jsx("div",{className:"flex items-center -space-x-1",children:Ui.map(Fi)}),t[0]=e):e=t[0],e}function Fi(t){return n.jsx("img",{src:t.src,alt:t.name,className:"size-5 rounded-sm ring-2 ring-muted object-cover bg-white"},t.name)}function zi(t){const e=R.c(10),{onClick:s}=t,o=K();let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=$("group relative z-10 flex items-center gap-3 w-full px-4 py-3","rounded-b-2xl","cursor-pointer"),e[0]=r):r=e[0];let i;e[1]!==o?(i=o("chat.connectionsBanner.description"),e[1]=o,e[2]=i):i=e[2];let a;e[3]!==i?(a=n.jsx("p",{className:"flex-1 text-xs text-muted-foreground truncate text-left",children:i}),e[3]=i,e[4]=a):a=e[4];let l,c;e[5]===Symbol.for("react.memo_cache_sentinel")?(l=n.jsx(Li,{}),c=n.jsx(Hs,{size:14,className:"shrink-0 text-muted-foreground/60 group-hover:text-muted-foreground transition-colors"}),e[5]=l,e[6]=c):(l=e[5],c=e[6]);let d;return e[7]!==s||e[8]!==a?(d=n.jsxs("button",{type:"button",onClick:s,className:r,children:[a,l,c]}),e[7]=s,e[8]=a,e[9]=d):d=e[9],d}const Ue=48;function Oi(){const t=R.c(12),[e,s]=P.useState("idle"),[o,r]=P.useState(""),[i,a]=P.useState(""),[l,c]=P.useState(Ki),d=P.useRef(null),u=P.useRef(null),V=P.useRef(null),p=P.useRef(null),f=P.useRef(0),h=P.useRef(!1),m=P.useRef(""),g=P.useRef(""),x=P.useRef(!1),v=typeof window<"u"&&!!(window.SpeechRecognition||window.webkitSpeechRecognition);let b;t[0]===Symbol.for("react.memo_cache_sentinel")?(b=()=>{f.current&&(cancelAnimationFrame(f.current),f.current=0),u.current?.close().catch(Bi),p.current?.getTracks().forEach($i),V.current=null,u.current=null,p.current=null},t[0]=b):b=t[0];const j=b;let A;t[1]===Symbol.for("react.memo_cache_sentinel")?(A=E=>{p.current=E;const U=new AudioContext;u.current=U;const D=U.createMediaStreamSource(E),T=U.createAnalyser();T.fftSize=128,T.smoothingTimeConstant=.8,D.connect(T),V.current=T;const O=new Uint8Array(T.frequencyBinCount),F=()=>{if(!V.current)return;V.current.getByteFrequencyData(O);const Q=[];for(let z=0;z<Ue;z++){const Y=Math.floor(z/Ue*O.length);Q.push(Math.max(.04,(O[Y]??0)/255))}c(Q),f.current=requestAnimationFrame(F)};F()},t[1]=A):A=t[1];const y=A;let k;t[2]!==e?(k=async()=>{if(x.current||h.current)return e;x.current=!0;const E=window.SpeechRecognition||window.webkitSpeechRecognition;if(!E)return x.current=!1,s("unsupported"),"unsupported";let U;try{U=await navigator.mediaDevices.getUserMedia({audio:!0})}catch{return x.current=!1,s("permission-denied"),"permission-denied"}x.current=!1,r(""),a(""),g.current="",m.current="",h.current=!0,s("recording"),y(U);const D=new E;d.current=D,D.interimResults=!0,D.continuous=!0,D.lang=navigator.language||"en-US",D.onresult=T=>{if(d.current!==D)return;let O="",F="";for(let Q=T.resultIndex;Q<T.results.length;Q++){const z=T.results[Q],Y=z?.[0]?.transcript??"";z?.isFinal?F=F+Y:O=O+Y}F&&(m.current=m.current+F,r(m.current)),g.current=O,a(O)},D.onerror=T=>{d.current===D&&T.error!=="no-speech"&&(h.current=!1,d.current=null,j(),s(T.error==="not-allowed"?"permission-denied":"idle"))},D.onend=()=>{if(d.current===D&&h.current)try{D.start()}catch{}};try{D.start()}catch{return h.current=!1,d.current=null,j(),s("idle"),"idle"}return"recording"},t[2]=e,t[3]=k):k=t[3];const w=k;let S;t[4]===Symbol.for("react.memo_cache_sentinel")?(S=()=>{h.current=!1,d.current?.stop(),j(),s("idle"),c(Array(Ue).fill(.05)),a("");const E=(m.current+(g.current?" "+g.current:"")).trim();return r(""),m.current="",g.current="",E},t[4]=S):S=t[4];const C=S;let N;t[5]===Symbol.for("react.memo_cache_sentinel")?(N=()=>{h.current=!1,d.current?.abort(),j(),s("idle"),r(""),a(""),c(Array(Ue).fill(.05)),m.current="",g.current=""},t[5]=N):N=t[5];const I=N;let _;return t[6]!==i||t[7]!==w||t[8]!==e||t[9]!==o||t[10]!==l?(_={status:e,transcript:o,interimTranscript:i,waveformData:l,isSupported:v,startRecording:w,stopRecording:C,cancelRecording:I},t[6]=i,t[7]=w,t[8]=e,t[9]=o,t[10]=l,t[11]=_):_=t[11],_}function $i(t){return t.stop()}function Bi(){}function Ki(){return Array(Ue).fill(.05)}function qi(t){const e=R.c(4),{data:s}=t;let o;e[0]!==s?(o=s.map(Qi),e[0]=s,e[1]=o):o=e[1];let r;return e[2]!==o?(r=n.jsx("div",{className:"flex items-center justify-center gap-[2px] h-10 overflow-hidden","aria-hidden":"true",children:o}),e[2]=o,e[3]=r):r=e[3],r}function Qi(t,e){return n.jsx("div",{className:"w-[2px] shrink-0 rounded-full bg-chart-2 transition-[height] duration-75 ease-out",style:{height:`${Math.max(4,Math.round(t*40))}px`}},e)}const Fe=12e3,Et=re({token:oe(),expiresAt:Zs()});Xs("provider",[re({provider:je("elevenlabs"),conversationToken:oe().min(1)}),re({provider:je("openai"),transport:je("webrtc")})]);const Yi=Js([Et.extend({provider:je("elevenlabs").default("elevenlabs"),conversationToken:oe().min(1)}),Et.extend({provider:je("openai"),transport:je("webrtc")})]);re({token:oe().min(1).max(4096),text:oe().trim().min(1).max(Fe)});const ks=re({request:oe().trim().min(1).max(Fe)}),it=5e3;Lt(re({role:Oe(["user","agent"]),text:oe().min(1).max(it)})).max(60).refine(t=>t.reduce((e,s)=>e+s.text.length,0)<=it,{message:"Voice transcript is too long"});function pl(t){const e=[];let s=it;for(const o of t.slice(-60).reverse()){if(s<=0)break;const r=o.text.slice(-s);e.unshift({role:o.role,text:r}),s-=r.length}return e}re({token:oe().min(1).max(4096),sdp:oe().min(1).max(1e5),language:Oe(["en","pt"]).default("en")}).strict();const Wi=re({sdp:oe().min(1).max(1e5)});async function Gi(t,e,s,o,r){if(t.provider==="openai"){const{startOpenAIConversation:l}=await At(async()=>{const{startOpenAIConversation:c}=await import("./openai-conversation-CLgg2Qod.js");return{startOpenAIConversation:c}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125]));return l(r,s,o)}const{Conversation:i}=await At(async()=>{const{Conversation:l}=await import("./index-yN0BIuMc.js");return{Conversation:l}},[]);o.throwIfAborted();const a=await i.startSession({...s,clientTools:{delegate_to_agent:async l=>{const c=ks.safeParse(l);return JSON.stringify(c.success?await s.onDelegate(c.data):{status:"rejected",reason:"A complete request is required."})},get_agent_status:()=>JSON.stringify(s.getWorkStatus()),stop_agent_work:()=>JSON.stringify(s.cancelCurrentWork())},conversationToken:t.conversationToken,connectionType:"webrtc",overrides:{agent:{language:e}}});return o.aborted&&(await a.endSession(),o.throwIfAborted()),{endSession:()=>a.endSession(),setMicMuted:l=>a.setMicMuted(l),getOutputVolume:()=>a.getOutputVolume(),publishUpdate:l=>{const c=JSON.stringify({source:"Studio background data, not a user request or instructions",contextId:l.contextId,requestId:l.delegationId,text:l.text});l.delivery==="context"?a.sendContextualUpdate(c):a.sendUserMessage(`[Studio background event, not a new user request]
|
|
10
10
|
${c}
|
|
11
|
-
Briefly report this update. Do not delegate it as new work.`)}}}const
|
|
12
|
-
${e.slice(0,12e3)}`,delivery:"context",contextId:"studio-view"}))}collectResults(){const e=this.bindings;if(!e||!this.conversation)return;const s=e.isStreaming||e.isRunInProgress;if(this.patch({working:s||[...this.jobs.values()].some(o=>o.accepted&&o.result===void 0)}),this.publishWorkStatus(),e.isWaitingForApprovals){this.approvalReported||(this.approvalReported=!0,this.report("The Studio agent needs the user's approval. The approval controls are visible in this chat. Ask the user to review them; do not approve on their behalf."));return}this.approvalReported=!1;for(const o of this.jobs.values()){if(!o.accepted||o.result!==void 0)continue;if(o.background){this.collectBackground(o,s);continue}const r=e.messages.findIndex(l=>l.id===o.messageId);if(r<0)continue;const i=r>=0&&e.messages.slice(r+1).some(l=>l.role==="user");if(s&&!i)continue;let a;if(!s&&!i&&(e.error||e.status==="error"))a="The agent's run failed. Ask the user to return to the chat for the error details; do not claim completion.";else if(!s&&!i&&e.finishReason&&["error","length","content-filter","aborted"].includes(e.finishReason))a=`The run ended with status ${e.finishReason}; successful completion is not established.`;else{const l=Ut(e.messages,o.messageId);if(l===null)continue;a=l;const c=Pt(e.messages,o.messageId);if(this.track(c.tasks),c.backgroundJobs.length){o.background=c.backgroundJobs,this.collectBackground(o,s);continue}}this.finish(o,a||"The agent finished without a final text response. Do not infer that the requested change succeeded.")}this.patch({working:s||[...this.jobs.values()].some(o=>o.accepted&&o.result===void 0)}),this.publishWorkStatus()}collectBackground(e,s){const o=this.bindings?.messages??[],r=[];for(const i of e.background??[]){const a=
|
|
13
|
-
`)||"The background work finished without a final text response. Do not infer that the requested change succeeded.")}finish(e,s){e.result=s,this.report(JSON.stringify({requestId:e.messageId,request:e.delegationId?void 0:e.request,result:s}),e.delegationId)}track(e){for(const s of e)this.tasks.has(s.id)||this.tasks.set(s.id,this.boardUpdates.get(s.id)??s)}publishWorkStatus(){const e=JSON.stringify(this.status());e!==this.lastWorkStatus&&(this.lastWorkStatus=e,this.conversation?.publishUpdate({delivery:"context",contextId:"studio-work",text:e}))}taskUpdated=e=>{const s={id:e.id,title:e.title,status:e.status};this.boardUpdates.delete(e.id),this.boardUpdates.set(e.id,s);for(const r of this.boardUpdates.keys()){if(this.boardUpdates.size<=200)break;this.boardUpdates.delete(r)}const o=this.tasks.get(e.id);!o||!this.conversation||o.status===e.status||(this.tasks.set(e.id,s),this.report(JSON.stringify({task:e.title,status:e.status})),this.publishWorkStatus())};taskDeleted=e=>{const s=this.tasks.get(e);!s||!this.conversation||(this.tasks.delete(e),this.report(JSON.stringify({task:s.title,status:"deleted"})),this.publishWorkStatus())};report(e,s){const o={text:e,delegationId:s,delivery:"context"};this.conversation?.publishUpdate(o),this.announcements.push({...o,delivery:"announce"})}flushAnnouncements(){if(!(!this.conversation||!this.announcements.length||this.userSpeaking||this.state.phase!=="listening"||Date.now()-this.lastActivity<1800)){this.lastActivity=Date.now();for(const e of this.announcements.splice(0))this.conversation.publishUpdate(e)}}delegate=async e=>{if(this.utterance===0&&!e.delegationId)return{status:"rejected",reason:"Wait for a spoken user request before delegating work."};const s=ks.safeParse(e);if(!s.success)return{status:"rejected",reason:"A complete, non-empty request is required."};if(this.jobs.size>=40)return{status:"rejected",reason:"This voice session has reached its request limit. Continue in the text chat."};const o=s.data.request,r=[...this.jobs.values()].find(c=>e.delegationId?c.delegationId===e.delegationId:c.utterance===this.utterance||c.request===o&&c.result===void 0);if(r)return{status:r.result!==void 0?"finished":r.accepted?"accepted":"submitting",requestId:r.messageId,result:r.result?.slice(0,2e3),note:"This utterance already has a work request; do not submit it again."};const i=this.generation,a={messageId:crypto.randomUUID(),utterance:this.utterance,request:o,accepted:!1,delegationId:e.delegationId};this.jobs.set(a.messageId,a);const l=this.dispatchQueue.then(async()=>i!==this.generation||!this.conversation?!1:this.bindings?.sendVoiceMessage?.(a.messageId,o,e.transcript)??!1);this.dispatchQueue=l.catch(()=>{});try{const c=await l;return i!==this.generation?{status:"disconnected"}:c?(a.accepted=!0,this.collectResults(),{status:"accepted",requestId:a.messageId,note:"Work is running or queued in Studio. Keep conversing. A background event will supply its actual result."}):(this.jobs.delete(a.messageId),{status:"rejected",reason:"Studio did not accept the request. No work has been confirmed."})}catch{return this.jobs.delete(a.messageId),{status:"rejected",reason:"Studio could not accept the request. Do not claim it started."}}};async start(){if(this.state.phase!=="idle"&&this.state.phase!=="error")return;this.stop();const e=++this.generation,s=new AbortController;this.startupAbort=s;const o=()=>e===this.generation;this.patch({phase:"connecting",error:null,muted:!1});try{if(await this.cleanup,!o())return;const r=fetch(this.url,{method:"POST",credentials:"include",headers:{"Content-Type":"application/json"},body:JSON.stringify({mode:"conversation",language:this.language}),signal:AbortSignal.timeout(5e4)}).then(async d=>{if(!d.ok)throw new Error("Voice unavailable");return
|
|
11
|
+
Briefly report this update. Do not delegate it as new work.`)}}}const Hi=re({background:je(!0),status:je("started"),jobId:oe().min(1)}),Ji=re({item:re({id:oe().min(1),title:oe(),status:oe()})}),Zi=t=>`${t}:react-msg`;function ws(t,e){const s=t.findIndex(r=>r.id===e&&r.role==="user");if(s<0)return null;const o=[];for(const r of t.slice(s+1))if(!r.metadata?.subtaskJobId){if(r.role==="user")break;r.role==="assistant"&&o.push(r)}return o}function Pt(t,e){const s=[],o=[];for(const r of ws(t,e)??[])for(const i of r.parts){if(!("state"in i)||i.state!=="output-available"||!("output"in i))continue;const a=i.type;if(a==="tool-subtask"){const l=Hi.safeParse(i.output);l.success&&s.push(l.data.jobId)}else if(a==="tool-TASK_BOARD_ITEM_CREATE"){const l=Ji.safeParse(i.output);l.success&&o.push(l.data.item)}}return{backgroundJobs:s,tasks:o}}function Ut(t,e){const s=ws(t,e);if(!s)return null;const o=s.at(-1);if(!o||o.parts.some(l=>"state"in l&&["approval-requested","input-streaming","input-available"].includes(String(l.state))))return null;const r=o.parts.findLast(l=>l.type==="text"||l.type==="dynamic-tool"||l.type.startsWith("tool-"));if(r?.type!=="text")return"";if(r.state==="streaming")return null;const i=r.text.replace(/```[\s\S]*?```/g,"").replace(/!\[[^\]]*\]\([^)]*\)/g,"").replace(/\[([^\]]+)\]\([^)]*\)/g,"$1").replace(/^\s{0,3}(?:#{1,6}\s+|[-*+]\s+|\d+\.\s+)/gm,"").replace(/[*_`]/g,"").trim();if(!i)return"";if(i.length<=Fe)return i;const a=i.slice(0,Fe-1);return`${a.slice(0,a.lastIndexOf(" "))}…`}class Xi{constructor(e,s){this.url=e,this.language=s}url;language;state={phase:"idle",muted:!1,working:!1,error:null};listeners=new Set;generation=0;conversation;startupAbort;userSpeaking=!1;token;timer;expires;bindings;jobs=new Map;announcements=[];lastActivity=0;approvalReported=!1;cleanup=Promise.resolve();dispatchQueue=Promise.resolve();lastContext="";lastWorkStatus="";utterance=0;seenUserEvents=new Set;tasks=new Map;boardUpdates=new Map;subscribe=e=>(this.listeners.add(e),()=>{this.listeners.delete(e)});getSnapshot=()=>this.state;outputVolume=()=>this.conversation?.getOutputVolume()??0;patch(e){if(!Object.entries(e).every(([s,o])=>this.state[s]===o)){this.state={...this.state,...e};for(const s of this.listeners)s()}}updateBindings(e,s){if(this.bindings=e,!s&&this.state.phase!=="idle"){this.stop();return}this.conversation&&(this.updateContext(),this.collectResults())}requestStatus(e){return e.result!==void 0?"finished":e.accepted?e.background?"running_in_background":this.bindings?.messages.some(s=>s.id===e.messageId)?"running":"queued":"submitting"}status(){const e=this.bindings;return{status:e?.isWaitingForApprovals?"approval_required":e?.error||e?.status==="error"?"failed":e?.isStreaming||e?.isRunInProgress?"working":"idle",requests:[...this.jobs.values()].slice(-6).map(s=>({id:s.messageId,request:s.request.slice(0,200),status:this.requestStatus(s),result:s.result?.slice(0,500)})),tasks:[...this.tasks.values()].slice(-10).map(s=>({title:s.title.slice(0,120),status:s.status}))}}updateContext(){const e=this.bindings?.voiceContext??"";e!==this.lastContext&&(this.lastContext=e,this.conversation?.publishUpdate({text:`Current Studio view, supplied as context only:
|
|
12
|
+
${e.slice(0,12e3)}`,delivery:"context",contextId:"studio-view"}))}collectResults(){const e=this.bindings;if(!e||!this.conversation)return;const s=e.isStreaming||e.isRunInProgress;if(this.patch({working:s||[...this.jobs.values()].some(o=>o.accepted&&o.result===void 0)}),this.publishWorkStatus(),e.isWaitingForApprovals){this.approvalReported||(this.approvalReported=!0,this.report("The Studio agent needs the user's approval. The approval controls are visible in this chat. Ask the user to review them; do not approve on their behalf."));return}this.approvalReported=!1;for(const o of this.jobs.values()){if(!o.accepted||o.result!==void 0)continue;if(o.background){this.collectBackground(o,s);continue}const r=e.messages.findIndex(l=>l.id===o.messageId);if(r<0)continue;const i=r>=0&&e.messages.slice(r+1).some(l=>l.role==="user");if(s&&!i)continue;let a;if(!s&&!i&&(e.error||e.status==="error"))a="The agent's run failed. Ask the user to return to the chat for the error details; do not claim completion.";else if(!s&&!i&&e.finishReason&&["error","length","content-filter","aborted"].includes(e.finishReason))a=`The run ended with status ${e.finishReason}; successful completion is not established.`;else{const l=Ut(e.messages,o.messageId);if(l===null)continue;a=l;const c=Pt(e.messages,o.messageId);if(this.track(c.tasks),c.backgroundJobs.length){o.background=c.backgroundJobs,this.collectBackground(o,s);continue}}this.finish(o,a||"The agent finished without a final text response. Do not infer that the requested change succeeded.")}this.patch({working:s||[...this.jobs.values()].some(o=>o.accepted&&o.result===void 0)}),this.publishWorkStatus()}collectBackground(e,s){const o=this.bindings?.messages??[],r=[];for(const i of e.background??[]){const a=Zi(i),l=o.findIndex(u=>u.id===a);if(l<0)return;const c=o.slice(l+1).some(u=>u.role==="user");if(s&&!c)return;const d=Ut(o,a);if(d===null)return;this.track(Pt(o,a).tasks),r.push(d)}this.finish(e,r.filter(Boolean).join(`
|
|
13
|
+
`)||"The background work finished without a final text response. Do not infer that the requested change succeeded.")}finish(e,s){e.result=s,this.report(JSON.stringify({requestId:e.messageId,request:e.delegationId?void 0:e.request,result:s}),e.delegationId)}track(e){for(const s of e)this.tasks.has(s.id)||this.tasks.set(s.id,this.boardUpdates.get(s.id)??s)}publishWorkStatus(){const e=JSON.stringify(this.status());e!==this.lastWorkStatus&&(this.lastWorkStatus=e,this.conversation?.publishUpdate({delivery:"context",contextId:"studio-work",text:e}))}taskUpdated=e=>{const s={id:e.id,title:e.title,status:e.status};this.boardUpdates.delete(e.id),this.boardUpdates.set(e.id,s);for(const r of this.boardUpdates.keys()){if(this.boardUpdates.size<=200)break;this.boardUpdates.delete(r)}const o=this.tasks.get(e.id);!o||!this.conversation||o.status===e.status||(this.tasks.set(e.id,s),this.report(JSON.stringify({task:e.title,status:e.status})),this.publishWorkStatus())};taskDeleted=e=>{const s=this.tasks.get(e);!s||!this.conversation||(this.tasks.delete(e),this.report(JSON.stringify({task:s.title,status:"deleted"})),this.publishWorkStatus())};report(e,s){const o={text:e,delegationId:s,delivery:"context"};this.conversation?.publishUpdate(o),this.announcements.push({...o,delivery:"announce"})}flushAnnouncements(){if(!(!this.conversation||!this.announcements.length||this.userSpeaking||this.state.phase!=="listening"||Date.now()-this.lastActivity<1800)){this.lastActivity=Date.now();for(const e of this.announcements.splice(0))this.conversation.publishUpdate(e)}}delegate=async e=>{if(this.utterance===0&&!e.delegationId)return{status:"rejected",reason:"Wait for a spoken user request before delegating work."};const s=ks.safeParse(e);if(!s.success)return{status:"rejected",reason:"A complete, non-empty request is required."};if(this.jobs.size>=40)return{status:"rejected",reason:"This voice session has reached its request limit. Continue in the text chat."};const o=s.data.request,r=[...this.jobs.values()].find(c=>e.delegationId?c.delegationId===e.delegationId:c.utterance===this.utterance||c.request===o&&c.result===void 0);if(r)return{status:r.result!==void 0?"finished":r.accepted?"accepted":"submitting",requestId:r.messageId,result:r.result?.slice(0,2e3),note:"This utterance already has a work request; do not submit it again."};const i=this.generation,a={messageId:crypto.randomUUID(),utterance:this.utterance,request:o,accepted:!1,delegationId:e.delegationId};this.jobs.set(a.messageId,a);const l=this.dispatchQueue.then(async()=>i!==this.generation||!this.conversation?!1:this.bindings?.sendVoiceMessage?.(a.messageId,o,e.transcript)??!1);this.dispatchQueue=l.catch(()=>{});try{const c=await l;return i!==this.generation?{status:"disconnected"}:c?(a.accepted=!0,this.collectResults(),{status:"accepted",requestId:a.messageId,note:"Work is running or queued in Studio. Keep conversing. A background event will supply its actual result."}):(this.jobs.delete(a.messageId),{status:"rejected",reason:"Studio did not accept the request. No work has been confirmed."})}catch{return this.jobs.delete(a.messageId),{status:"rejected",reason:"Studio could not accept the request. Do not claim it started."}}};async start(){if(this.state.phase!=="idle"&&this.state.phase!=="error")return;this.stop();const e=++this.generation,s=new AbortController;this.startupAbort=s;const o=()=>e===this.generation;this.patch({phase:"connecting",error:null,muted:!1});try{if(await this.cleanup,!o())return;const r=fetch(this.url,{method:"POST",credentials:"include",headers:{"Content-Type":"application/json"},body:JSON.stringify({mode:"conversation",language:this.language}),signal:AbortSignal.timeout(5e4)}).then(async d=>{if(!d.ok)throw new Error("Voice unavailable");return Yi.parse(await d.json())});this.cleanup=r.then(async d=>{o()||await this.revoke(d.token)}).catch(()=>{});const i=await r;if(!o())return;this.token=i.token;const a=Gi(i,this.language,{onDelegate:d=>o()?this.delegate(d):Promise.resolve({status:"disconnected"}),getWorkStatus:()=>o()?this.status():{status:"disconnected"},cancelCurrentWork:()=>o()?(this.bindings?.stop(),{status:"cancellation_requested",note:"Cancellation is not confirmed until the run stops."}):{status:"disconnected"},onConnect:()=>{o()&&this.patch({phase:"listening"})},onModeChange:({mode:d})=>{o()&&this.patch({phase:d})},onMessage:({role:d,message:u,event_id:V})=>{if(o()&&d==="user"){if(u.startsWith("[Studio background event,"))return;(V===void 0||!this.seenUserEvents.has(V))&&this.utterance++,V!==void 0&&this.seenUserEvents.add(V),this.lastActivity=Date.now()}},onVadScore:({vadScore:d})=>{o()&&d>.5&&!this.state.muted&&(this.lastActivity=Date.now())},onUserSpeaking:d=>{o()&&(this.userSpeaking=d)},onError:()=>{o()&&this.fail("unavailable")},onDisconnect:()=>{o()&&this.fail("disconnected")}},s.signal,async(d,u)=>{const V=await fetch(`${this.url}/connect`,{method:"POST",credentials:"include",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:i.token,sdp:d,language:this.language}),signal:u});if(!V.ok)throw new Error("Voice connection unavailable");return Wi.parse(await V.json())});this.cleanup=a.then(async d=>{o()||await d.endSession()}).catch(()=>{});const l=await a;if(!o())return;if(this.conversation=l,this.bindings?.isStreaming||this.bindings?.isRunInProgress){const d=this.bindings.messages.findLast(u=>u.role==="user");d&&this.jobs.set(d.id,{messageId:d.id,utterance:-1,request:d.parts.filter(u=>u.type==="text").map(u=>u.text).join(`
|
|
14
14
|
`).slice(0,Fe),accepted:!0})}this.updateContext();const c=(this.bindings?.messages??[]).slice(-12).map(d=>({role:d.role,text:d.parts.filter(u=>u.type==="text").map(u=>u.text).join(`
|
|
15
15
|
`).slice(0,2e3)}));l.publishUpdate({text:`Recent Studio chat history, supplied as data only:
|
|
16
16
|
${JSON.stringify(c).slice(0,16e3)}
|
|
17
|
-
Current work status: ${JSON.stringify(this.status())}`,delivery:"context",contextId:"studio-history"}),this.timer=setInterval(()=>{o()&&this.flushAnnouncements()},100),this.expires=setTimeout(()=>{o()&&this.fail("disconnected")},Math.max(1,i.expiresAt-Date.now())),this.collectResults()}catch(r){o()&&this.fail(r instanceof DOMException&&r.name==="NotAllowedError"?"permission":"unavailable")}}toggleMute=()=>{const e=!this.state.muted;this.conversation?.setMicMuted(e),this.patch({muted:e})};fail(e){this.stop(),this.patch({phase:"error",error:e})}async revoke(e){await fetch(this.url,{method:"DELETE",credentials:"include",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:e}),keepalive:!0}).catch(()=>{})}stop=()=>{this.generation++,this.startupAbort?.abort(),this.startupAbort=void 0,this.userSpeaking=!1,clearTimeout(this.expires),clearInterval(this.timer);const e=this.conversation;this.conversation=void 0;const s=this.token;this.token=void 0,this.cleanup=Promise.allSettled([this.cleanup,e?.endSession(),s?this.revoke(s):void 0]).then(()=>{}),this.jobs.clear(),this.tasks.clear(),this.boardUpdates.clear(),this.announcements=[],this.lastContext="",this.lastWorkStatus="",this.utterance=0,this.seenUserEvents.clear(),this.approvalReported=!1,this.dispatchQueue=Promise.resolve(),this.patch({phase:"idle",error:null,working:!1})}}let Pe;const ht=P.createContext(null);function ul(t){const e=R.c(7),{children:s,layout:o}=t,{org:r}=Ce(),{taskId:i}=He(),a=ns();let l;e[0]!==a||e[1]!==o?(l=a?Qo({visibility:o,threadVisibilityExplicit:o.threadVisibilityExplicit})==="chat":o.threadOpen||!o.contentOpen,e[0]=a,e[1]=o,e[2]=l):l=e[2];const c=l,d=`${r.id}:${i??"new"}`;let u;return e[3]!==s||e[4]!==d||e[5]!==c?(u=n.jsx(Zi,{visible:c,children:s},d),e[3]=s,e[4]=d,e[5]=c,e[6]=u):u=e[6],u}function Zi(t){const e=R.c(35),{children:s,visible:o}=t,{org:r}=Ce(),{taskId:i,createTask:a,activeTask:l}=He(),d=Io("voice_mode")&&!l?.metadata?.read_only;let u;e[0]!==r.slug||e[1]!==i?(u=()=>new Ji(`/api/${encodeURIComponent(r.slug)}/threads/${encodeURIComponent(i??"")}/voice/sessions`,en()==="pt-BR"?"pt":"en"),e[0]=r.slug,e[1]=i,e[2]=u):u=e[2];const[V]=P.useState(u);let p,f;e[3]!==d||e[4]!==V||e[5]!==o?(p=()=>{(!d||!o)&&V.stop()},f=[V,d,o],e[3]=d,e[4]=V,e[5]=o,e[6]=p,e[7]=f):(p=e[6],f=e[7]),P.useLayoutEffect(p,f);let h;e[8]!==V?(h=()=>V.getSnapshot().phase!=="idle",e[8]=V,e[9]=h):h=e[9];const m=P.useSyncExternalStore(V.subscribe,h);let g;e[10]!==m||e[11]!==r.slug||e[12]!==V.taskDeleted||e[13]!==V.taskUpdated?(g={orgSlug:r.slug,enabled:m,onUpdate:V.taskUpdated,onDelete:V.taskDeleted},e[10]=m,e[11]=r.slug,e[12]=V.taskDeleted,e[13]=V.taskUpdated,e[14]=g):g=e[14],qo(g);let x;e[15]!==d||e[16]!==r.id||e[17]!==V||e[18]!==i?(x=()=>w=>{if(d&&i&&Pe?.orgId===r.id&&Pe.threadId===i){const C=Pe.expires>Date.now();Pe=void 0,C&&V.start()}const S=()=>V.stop();return window.addEventListener("pagehide",S),()=>{window.removeEventListener("pagehide",S),V.stop()}},e[15]=d,e[16]=r.id,e[17]=V,e[18]=i,e[19]=x):x=e[19];const[v]=P.useState(x);let b;e[20]!==a||e[21]!==d||e[22]!==r.id||e[23]!==V||e[24]!==i?(b=()=>{if(d){if(!i){const w=a();Pe={orgId:r.id,threadId:w,expires:Date.now()+3e4};return}V.start()}},e[20]=a,e[21]=d,e[22]=r.id,e[23]=V,e[24]=i,e[25]=b):b=e[25];const j=b;let A;e[26]!==d||e[27]!==V||e[28]!==j?(A={session:V,enabled:d,start:j},e[26]=d,e[27]=V,e[28]=j,e[29]=A):A=e[29];let y;e[30]!==s?(y=n.jsx("div",{className:"contents",ref:v,children:s}),e[30]=s,e[31]=y):y=e[31];let k;return e[32]!==A||e[33]!==y?(k=n.jsx(ht,{value:A,children:y}),e[32]=A,e[33]=y,e[34]=k):k=e[34],k}function pl(t){const e=R.c(4),{children:s}=t,o=P.useContext(ht),r=$e();let i,a;return e[0]!==o||e[1]!==r?(i=()=>{o?.session.updateBindings(r,o.enabled)},a=[o,r],e[0]=o,e[1]=r,e[2]=i,e[3]=a):(i=e[2],a=e[3]),P.useLayoutEffect(i,a),s}function Ss(){const t=R.c(4),e=P.useContext(ht),s=P.useSyncExternalStore(e?.session.subscribe??Xi,e?.session.getSnapshot??ea),o=s?.phase!==void 0&&s.phase!=="idle";let r;return t[0]!==e||t[1]!==s||t[2]!==o?(r={active:o,context:e,snapshot:s},t[0]=e,t[1]=s,t[2]=o,t[3]=r):r=t[3],r}const Xi=()=>()=>{},ea=()=>null;function ta(){const t=R.c(9),e=K(),{context:s}=Ss();if(!s?.enabled||!navigator.mediaDevices?.getUserMedia)return null;const o=s.start;let r;t[0]!==e?(r=e("chat.voice.start"),t[0]=e,t[1]=r):r=t[1];let i;t[2]!==e?(i=e("chat.voice.start"),t[2]=e,t[3]=i):i=t[3];let a;t[4]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsx(Yo,{size:18}),t[4]=a):a=t[4];let l;return t[5]!==s.start||t[6]!==r||t[7]!==i?(l=n.jsx(W,{type:"button",variant:"ghost",size:"icon",className:"size-8 shrink-0",onClick:o,"aria-label":r,title:i,children:a}),t[5]=s.start,t[6]=r,t[7]=i,t[8]=l):l=t[8],l}function sa({session:t,phase:e,muted:s}){const[o]=P.useState(()=>r=>{if(!r||matchMedia("(prefers-reduced-motion: reduce)").matches)return;let i=0,a=requestAnimationFrame(function l(){const c=Math.min(1,t.outputVolume());i+=(c-i)*(c>i?.55:.12),r.style.setProperty("--voice-level",i.toFixed(3)),a=requestAnimationFrame(l)});return()=>cancelAnimationFrame(a)});return n.jsx("div",{ref:o,className:"studio-voice-orb","data-phase":e,"data-muted":s,"aria-hidden":"true"})}function fl(){const t=R.c(65),e=K(),{taskId:s}=He(),o=$e(),{context:r,snapshot:i,active:a}=Ss();if(!a||!r||!i)return null;const{session:l}=r;let c;t[0]!==i.error||t[1]!==i.muted||t[2]!==i.phase||t[3]!==e?(c=i.error?e(`chat.voice.${i.error}`):i.muted?e("chat.voice.muted"):e(`chat.voice.${i.phase}`),t[0]=i.error,t[1]=i.muted,t[2]=i.phase,t[3]=e,t[4]=c):c=t[4];const d=c;let u;t[5]!==e?(u=e("chat.voice.title"),t[5]=e,t[6]=u):u=t[6];let V;t[7]!==l||t[8]!==i.muted||t[9]!==i.phase?(V=n.jsx(sa,{session:l,phase:i.phase,muted:i.muted}),t[7]=l,t[8]=i.muted,t[9]=i.phase,t[10]=V):V=t[10];let p;t[11]!==d?(p=n.jsx("p",{role:"status",className:"max-w-sm text-center text-sm text-muted-foreground",children:d}),t[11]=d,t[12]=p):p=t[12];let f;t[13]!==i.working||t[14]!==e?(f=i.working&&n.jsx("p",{className:"text-center text-xs text-muted-foreground",children:e("chat.voice.backgroundWork")}),t[13]=i.working,t[14]=e,t[15]=f):f=t[15];let h;t[16]!==r.start||t[17]!==i.phase||t[18]!==e?(h=i.phase==="error"&&n.jsx(W,{variant:"outline",onClick:r.start,children:e("chat.voice.retry")}),t[16]=r.start,t[17]=i.phase,t[18]=e,t[19]=h):h=t[19];let m;t[20]!==V||t[21]!==p||t[22]!==f||t[23]!==h?(m=n.jsxs("div",{className:"flex min-h-0 flex-1 flex-col items-center justify-center gap-7 overflow-y-auto px-6 py-8",children:[V,p,f,h]}),t[20]=V,t[21]=p,t[22]=f,t[23]=h,t[24]=m):m=t[24];let g;t[25]===Symbol.for("react.memo_cache_sentinel")?(g=n.jsx(Ke,{inline:!0,voiceMode:!0}),t[25]=g):g=t[25];let x;t[26]!==s?(x=s&&n.jsx(As,{taskId:s}),t[26]=s,t[27]=x):x=t[27];let v;t[28]!==x?(v=n.jsxs("div",{className:"max-h-[55%] shrink-0 overflow-y-auto px-3",children:[g,x]}),t[28]=x,t[29]=v):v=t[29];const b=i.phase==="connecting"||i.phase==="error",j=i.muted?"chat.voice.unmute":"chat.voice.mute";let A;t[30]!==e||t[31]!==j?(A=e(j),t[30]=e,t[31]=j,t[32]=A):A=t[32];const y=i.muted?"chat.voice.unmute":"chat.voice.mute";let k;t[33]!==e||t[34]!==y?(k=e(y),t[33]=e,t[34]=y,t[35]=k):k=t[35];let w;t[36]!==i.muted?(w=i.muted?n.jsx(Go,{size:18}):n.jsx(Ho,{size:18}),t[36]=i.muted,t[37]=w):w=t[37];let S;t[38]!==l.toggleMute||t[39]!==i.muted||t[40]!==b||t[41]!==A||t[42]!==k||t[43]!==w?(S=n.jsx(W,{variant:"outline",size:"icon",disabled:b,"aria-label":A,title:k,"aria-pressed":i.muted,onClick:l.toggleMute,children:w}),t[38]=l.toggleMute,t[39]=i.muted,t[40]=b,t[41]=A,t[42]=k,t[43]=w,t[44]=S):S=t[44];const C=l.stop;let N;t[45]===Symbol.for("react.memo_cache_sentinel")?(N=n.jsx(Wo,{size:16}),t[45]=N):N=t[45];let I;t[46]!==e?(I=e("chat.voice.backToChat"),t[46]=e,t[47]=I):I=t[47];let _;t[48]!==l.stop||t[49]!==I?(_=n.jsxs(W,{variant:"outline",onClick:C,children:[N,I]}),t[48]=l.stop,t[49]=I,t[50]=_):_=t[50];let E;t[51]!==o.isRunInProgress||t[52]!==o.isStreaming||t[53]!==o.stop||t[54]!==e?(E=(o.isStreaming||o.isRunInProgress)&&n.jsx(W,{variant:"outline",size:"icon","aria-label":e("chat.voice.stopWork"),title:e("chat.voice.stopWork"),onClick:o.stop,children:n.jsx(Jo,{size:16})}),t[51]=o.isRunInProgress,t[52]=o.isStreaming,t[53]=o.stop,t[54]=e,t[55]=E):E=t[55];let U;t[56]!==S||t[57]!==_||t[58]!==E?(U=n.jsxs("div",{className:"flex shrink-0 items-center justify-center gap-3 px-4 py-6",children:[S,_,E]}),t[56]=S,t[57]=_,t[58]=E,t[59]=U):U=t[59];let D;return t[60]!==u||t[61]!==U||t[62]!==m||t[63]!==v?(D=n.jsxs("section",{"aria-label":u,className:"absolute inset-0 flex min-h-0 flex-col bg-background",children:[m,v,U]}),t[60]=u,t[61]=U,t[62]=m,t[63]=v,t[64]=D):D=t[64],D}function na(t){return t.hasDraft?"send":t.isStreaming||t.isRunInProgress?"stop":"disabled"}function Qe(t){const e=R.c(7),{message:s,icon:o}=t;let r;e[0]!==o?(r=o??n.jsx(Ft,{size:14,className:"shrink-0"}),e[0]=o,e[1]=r):r=e[1];const i=s??"";let a;e[2]!==i?(a=n.jsx("span",{className:"text-sm",children:i}),e[2]=i,e[3]=a):a=e[3];let l;return e[4]!==r||e[5]!==a?(l=n.jsxs("div",{className:"flex w-full items-center gap-2 px-3 py-2.5 rounded-xl border border-border bg-muted/40 text-muted-foreground",children:[r,a]}),e[4]=r,e[5]=a,e[6]=l):l=e[6],l}function oa(t,e,s){const o=R.c(7),{editor:r}=Ot(),i=K(),[a,l]=P.useState(!1),c=P.useRef(0);let d,u;return o[0]!==s||o[1]!==r||o[2]!==e||o[3]!==t||o[4]!==i?(d=()=>{const V=m=>{m.dataTransfer?.types.includes("Files")&&(m.preventDefault(),c.current=c.current+1,l(!0))},p=m=>{m.preventDefault(),c.current=Math.max(0,c.current-1),c.current===0&&l(!1)},f=ra,h=m=>{if(c.current=0,l(!1),m.defaultPrevented||(m.preventDefault(),s||!r||!t||!ft(t)))return;const g=m.dataTransfer?.files;if(!g||g.length===0)return;const x=Array.from(g);(async()=>{let v=r.state.selection.from;for(const b of x)await rs(r,t,b,v,e,i),v=r.state.selection.to})()};return window.addEventListener("dragenter",V),window.addEventListener("dragleave",p),window.addEventListener("dragover",f),window.addEventListener("drop",h),()=>{window.removeEventListener("dragenter",V),window.removeEventListener("dragleave",p),window.removeEventListener("dragover",f),window.removeEventListener("drop",h)}},u=[r,t,e,i,s],o[0]=s,o[1]=r,o[2]=e,o[3]=t,o[4]=i,o[5]=d,o[6]=u):(d=o[5],u=o[6]),P.useEffect(d,u),a}function ra(t){t.dataTransfer?.types.includes("Files")&&t.preventDefault()}function ia(t){const e=R.c(14),{selectedModel:s}=t,o=K();let r,i,a;if(e[0]!==s||e[1]!==o){const{parts:d}=yo(s);e[5]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsx(Jn,{size:24}),e[5]=a):a=e[5],r="text-sm font-medium";let u;e[6]!==o?(u=V=>o(V),e[6]=o,e[7]=u):u=e[7],i=o("chat.input.dropFilesHere",{fileTypes:d.map(u).join(", ")}),e[0]=s,e[1]=o,e[2]=r,e[3]=i,e[4]=a}else r=e[2],i=e[3],a=e[4];let l;e[8]!==r||e[9]!==i?(l=n.jsx("span",{className:r,children:i}),e[8]=r,e[9]=i,e[10]=l):l=e[10];let c;return e[11]!==a||e[12]!==l?(c=n.jsxs(n.Fragment,{children:[a,l]}),e[11]=a,e[12]=l,e[13]=c):c=e[13],c}function aa(){const t=R.c(5),e=K();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=n.jsx(Ft,{size:24}),t[0]=s):s=t[0];let o;t[1]!==e?(o=e("chat.input.modelCannotReadAttachments"),t[1]=e,t[2]=o):o=t[2];let r;return t[3]!==o?(r=n.jsxs(n.Fragment,{children:[s,n.jsx("span",{className:"text-sm font-medium",children:o})]}),t[3]=o,t[4]=r):r=t[4],r}function la(t){const e=R.c(11),{selectedModel:s,onUnsupportedFile:o,disabled:r}=t,i=oa(s,o,r);let a;e[0]!==s?(a=ft(s),e[0]=s,e[1]=a):a=e[1];const l=a,c=i?"opacity-100":"opacity-0 pointer-events-none",d=l?"border-primary/40 text-primary/70":"border-destructive/30 text-destructive/70";let u;e[2]!==c||e[3]!==d?(u=$("absolute inset-0 z-20 rounded-xl flex flex-col items-center justify-center gap-2 bg-muted border-2 border-dashed transition-opacity",c,d),e[2]=c,e[3]=d,e[4]=u):u=e[4];let V;e[5]!==s||e[6]!==l?(V=l?n.jsx(ia,{selectedModel:s}):n.jsx(aa,{}),e[5]=s,e[6]=l,e[7]=V):V=e[7];let p;return e[8]!==u||e[9]!==V?(p=n.jsx("div",{className:u,children:V}),e[8]=u,e[9]=V,e[10]=p):p=e[10],p}function Ye(t){const e=R.c(14),{onClick:s,label:o,icon:r,colorClass:i,maxWidthClass:a}=t;let l;e[0]!==i?(l=$("flex items-center gap-1.5 h-8 rounded-lg px-2.5 text-sm font-medium group min-w-0 shrink animate-in fade-in duration-200",i),e[0]=i,e[1]=l):l=e[1];let c;e[2]!==a?(c=$("min-w-0 truncate transition-[max-width,opacity] duration-200 ease-out max-w-0 opacity-0 @[320px]/chat-bottom:opacity-100",a),e[2]=a,e[3]=c):c=e[3];let d;e[4]!==o||e[5]!==c?(d=n.jsx("span",{className:c,children:o}),e[4]=o,e[5]=c,e[6]=d):d=e[6];let u;e[7]===Symbol.for("react.memo_cache_sentinel")?(u=n.jsx(at,{size:14,className:"shrink-0 hidden group-hover:block group-disabled:hidden"}),e[7]=u):u=e[7];let V;return e[8]!==r||e[9]!==o||e[10]!==s||e[11]!==l||e[12]!==d?(V=n.jsxs("button",{type:"button",onClick:s,title:o,"aria-label":o,className:l,children:[r,d,u]}),e[8]=r,e[9]=o,e[10]=s,e[11]=l,e[12]=d,e[13]=V):V=e[13],V}function Va(){const t=R.c(6),e=lt(),{org:s,locator:o}=Ce(),{create:r}=Kn();let i;return t[0]!==r||t[1]!==o||t[2]!==e||t[3]!==s.id||t[4]!==s.slug?(i=async a=>{const{tiptapDoc:l,virtualMcp:c,taskIntake:d}=a,u=d===void 0?!1:d,V=crypto.randomUUID(),p=c?.id??nt(s.id).id;_n(sessionStorage,o,V,{tiptapDoc:u&&l?ur(l):l});try{await r({id:V,virtual_mcp_id:p})}catch{}const f=fr(u);on(e,rn({org:s.slug,agentId:p,superAgentId:nt(s.id).id}),{search:()=>({...f,thread:V}),replace:!1})},t[0]=r,t[1]=o,t[2]=e,t[3]=s.id,t[4]=s.slug,t[5]=i):i=t[5],i}function hl({onOpenContextPanel:t,showConnectionsBanner:e=!1,homeTaskComposer:s=!1,taskHint:o=!0}){const r=K(),i=jn(),a=Ge(),l=i?.messages??[],c=i?.isStreaming??!1,d=i?.isRunInProgress??!1,u=i?.stop??(()=>{}),V=a?.taskId??"",p=V||Pn,f=Va(),{selectedModel:h,selectedVirtualMcp:m,isModelsLoading:g,tiptapDocRef:x,imageModel:v,webSearchModel:b,deepResearchModel:j,chatMode:A,setChatMode:y}=Je(),{data:k}=tn.useSession(),w=k?.user?.id,{org:S,locator:C}=Ce(),[N,I]=sn(nn.homeTaskMode(C),!0),_=s&&N,E=nt(S.id).id,U=Bt(m?.id),D=Zo(U?.id).runtime==="cms",T=js(Oo),[O,F]=P.useState(!1),{unsupportedFile:Q,onUnsupportedFile:z,clearUnsupportedFile:Y}=Mo(),L=Fi(),H=P.useRef(void 0),X=async()=>{H.current=ae;const q=await L.startRecording();te("chat_voice_started",{thread_id:V,outcome:q==="recording"?"started":q==="unsupported"?"unsupported":q==="permission-denied"?"permission_denied":"unknown"})},Z=()=>{te("chat_voice_confirmed",{thread_id:V});const q=L.stopRecording();ue.current?.syncVoiceText(H.current,q),ue.current?.focus()},ie=()=>{te("chat_voice_cancelled",{thread_id:V}),L.cancelRecording(),ue.current?.restoreContent(H.current)};P.useEffect(()=>{if(L.status!=="recording")return;const q=(L.transcript+(L.interimTranscript?" "+L.interimTranscript:"")).trim();ue.current?.syncVoiceText(H.current,q)},[L.transcript,L.interimTranscript,L.status]);const M=a?.activeTask??null,B=M?.created_by,J=!!(w&&B&&B!==w),{data:se}=Bo({enabled:J}),ee=(se?.data?.members??[]).find(q=>q.userId===B),le=ee?.user?.name??ee?.user?.email?.split("@")[0]??null,G=kn(M?.harness_id),[ae,Ve]=P.useState(()=>yt(sessionStorage,C,p)??void 0),ce=q=>{Ve(q),x.current=q,En(sessionStorage,C,p,q,{onQuotaExceeded:({docSizeBytes:ve})=>{te("chat_draft_quota_exceeded",{thread_id:V||null,doc_size_bytes:ve}),console.warn("[chat-draft] sessionStorage quota exceeded; draft not saved")}})},Ne=P.useRef(V);if(Ne.current!==V){Ne.current=V;const q=yt(sessionStorage,C,p)??void 0;Ve(q),x.current=q}const _e=[...l].reverse().find(q=>q.role==="assistant")?.metadata,qe=_e?.modelLimits?.contextWindow??(!_e?.models?.thinking||_e.models.thinking.id===h?.modelId?h?.limits?.contextWindow:void 0),ue=P.useRef(null),fe=P.useRef(!1),be=A==="plan",de=q=>{T(),te("chat_mode_changed",{from_mode:q,to_mode:"default",source:"pill_dismiss"}),y("default")};P.useEffect(()=>{const q=ve=>{In(ve)&&ve.code==="KeyL"&&(ve.preventDefault(),ve.shiftKey&&y(A==="plan"?"default":"plan"),ue.current?.focus())};return document.addEventListener("keydown",q),()=>document.removeEventListener("keydown",q)},[A,y]);const Ae=wn(l),he=[...l].reverse().find(q=>q.role==="assistant"&&q.metadata?.usage)?.metadata?.usage?.contextTokens??0,Me=Be("chat"),De=co(),[Re,me]=P.useState(!1),[Ie,ne]=P.useState(!1),ge=!g&&!Dn(ae),xe=na({hasDraft:ge,isStreaming:c,isRunInProgress:d}),Ee=xe==="send",Te=xe==="stop",mt=q=>{if(q?.preventDefault(),!Me){me(!0);return}if(De){ne(!0);return}if(xe==="send"&&ae){if(te("chat_message_sent",{thread_id:V||null,mode:A,model_id:h?.modelId??null,model_provider:h?.providerId??null,virtual_mcp_id:m?.id??null,submission:q?"button_or_enter":"programmatic"}),i){if(i.isSendInFlight()){Le.info(r("chat.input.stillSendingPreviousMessage"));return}i.sendMessage(ae)}else _&&te("task_report_submitted",{source:"home"}),f({tiptapDoc:ae,virtualMcp:_?null:m,taskIntake:_});Rn(sessionStorage,C,p),ce(void 0)}else xe==="stop"&&(te("chat_message_stopped",{thread_id:V}),u())};if(J)return n.jsx(Qe,{message:le?r("chat.input.readOnlyOthersChatNamed",{name:le}):r("chat.input.readOnlyOthersChat"),icon:le?n.jsx($o,{shape:"circle",size:"2xs",url:ee?.user?.image??void 0,fallback:le.slice(0,2).toUpperCase()}):void 0});if(M?.metadata?.read_only)return n.jsx(Qe,{message:r("chat.input.readOnlyThread")});if(G)return n.jsx(Qe,{message:r("chat.input.codingAgentUnavailable")});if(D){if(!a)return n.jsx(Qe,{message:r("chat.input.fastPreviewUnavailable")});const q=()=>{const ve=a.createTask({runtime:"sandbox"});te("coding_session_started",{thread_id:ve})};return n.jsxs("button",{type:"button",onClick:q,className:"group flex w-full items-center gap-3 rounded-2xl border border-border bg-background/60 px-4 py-3.5 text-left shadow-sm backdrop-blur-sm transition-colors hover:bg-background/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:[n.jsx(Wn,{size:18,className:"shrink-0 text-muted-foreground"}),n.jsxs("span",{className:"flex min-w-0 flex-1 flex-col",children:[n.jsx("span",{className:"text-sm font-medium text-foreground",children:r("chat.fastPreview.startCodingSession")}),n.jsx("span",{className:"text-xs text-muted-foreground",children:r("chat.fastPreview.chatNeedsSession")})]}),n.jsx(Kt,{size:16,className:"shrink-0 text-muted-foreground transition-transform group-hover:translate-x-0.5"})]})}return n.jsxs(n.Fragment,{children:[Re&&n.jsx(St,{feature:"chat",onDismiss:()=>me(!1)}),Ie&&n.jsx(St,{feature:"chat",copy:{title:r("chat.input.allowanceExhaustedTitle")},onDismiss:()=>ne(!1)}),n.jsx("div",{className:"flex flex-col w-full justify-end text-left",children:n.jsxs("div",{className:"relative rounded-2xl w-full flex flex-col",children:[e&&n.jsx("div",{className:"absolute inset-0 rounded-2xl pointer-events-none bg-muted/50"}),i&&a&&n.jsx(Ke,{}),i&&a&&V?n.jsx(As,{taskId:V}):null,n.jsx(Do,{tiptapDoc:ae,setTiptapDoc:ce,disabled:L.status==="recording",enterToSubmit:!0,placeholder:r(_?"chat.input.taskPlaceholder":"chat.input.placeholder"),onSubmit:mt,suggestionOpenRef:fe,children:n.jsxs("form",{onSubmit:mt,className:$("w-full relative rounded-2xl min-h-[110px] md:min-h-[130px] flex flex-col bg-card dark:bg-muted card-shadow overflow-hidden"),children:[n.jsx(la,{selectedModel:h,onUnsupportedFile:z,disabled:L.status==="recording"}),n.jsx(pr,{}),n.jsx("div",{className:"group/input relative flex flex-col gap-2 flex-1",children:n.jsx(Ro,{ref:ue,disabled:L.status==="recording",virtualMcpId:m?.id??E,showFileUploader:!0,selectedModel:h,onUnsupportedFile:z,suggestionOpenRef:fe})}),n.jsx("div",{className:"@container/chat-bottom flex items-center justify-between p-2.5 gap-1",children:L.status==="recording"?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"flex-1"}),n.jsxs("div",{className:"flex items-center gap-1.5 shrink-0",children:[n.jsx(Bi,{data:L.waveformData.slice(0,28)}),n.jsx("button",{type:"button",onClick:ie,className:"flex items-center justify-center size-8 rounded-lg hover:bg-muted text-muted-foreground hover:text-foreground transition-colors","aria-label":r("chat.input.cancelRecording"),children:n.jsx(at,{size:16})}),n.jsx("button",{type:"button",onClick:Z,className:"flex items-center justify-center size-8 rounded-lg bg-foreground text-background hover:opacity-80 transition-opacity","aria-label":r("chat.input.useTranscription"),children:n.jsx(Vt,{size:16})})]})]}):n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"flex items-center gap-1.5 min-w-0",children:[s&&n.jsx(W,{type:"button",size:"sm",variant:N?"secondary":"ghost","aria-pressed":N,onClick:()=>I(!N),className:"h-8",children:r("chat.input.taskMode")}),n.jsx(Ri,{disabled:!1,onOpenConnections:()=>{te("connections_dialog_opened",{source:"tools_popover",mode:"add"}),F(!0)},virtualMcpId:m?.id??E,selectedModel:h,isStreaming:c,onUnsupportedFile:z}),be&&n.jsx(Ye,{onClick:()=>de("plan"),label:r("chat.input.planMode"),icon:n.jsx(Qt,{size:14,className:"shrink-0"}),colorClass:"text-violet-600 dark:text-violet-400 hover:bg-violet-500/10",maxWidthClass:"@[320px]/chat-bottom:max-w-32"}),A==="gen-image"&&v&&n.jsx(Ye,{onClick:()=>de("gen-image"),label:r("chat.input.createImage"),icon:n.jsx(Jt,{size:14,className:"shrink-0"}),colorClass:"text-pink-600 dark:text-pink-400 hover:bg-pink-500/10 disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:bg-transparent",maxWidthClass:"@[320px]/chat-bottom:max-w-[120px]"}),A==="web-search"&&b&&n.jsx(Ye,{onClick:()=>de("web-search"),label:r("chat.input.webSearch"),icon:n.jsx(Gt,{size:14,className:"shrink-0"}),colorClass:"text-blue-600 dark:text-blue-400 hover:bg-blue-500/10 disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:bg-transparent",maxWidthClass:"@[320px]/chat-bottom:max-w-[120px]"}),A==="deep-research"&&j&&n.jsx(Ye,{onClick:()=>de("deep-research"),label:r("chat.input.deepResearch"),icon:n.jsx(Ht,{size:14,className:"shrink-0"}),colorClass:"text-blue-600 dark:text-blue-400 hover:bg-blue-500/10 disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:bg-transparent",maxWidthClass:"@[320px]/chat-bottom:max-w-[120px]"}),qe&&he>0&&n.jsx(dn,{usage:Ae,totalTokens:he,contextWindow:qe,onOpenContextPanel:t})]}),n.jsxs("div",{className:"flex items-center gap-1.5 min-w-0",children:[n.jsx(Ci,{}),n.jsx(ta,{}),L.isSupported&&n.jsx(W,{type:"button",onClick:X,disabled:!1,variant:"ghost",size:"icon",className:$("size-8 transition-colors",L.status==="permission-denied"?"text-destructive hover:text-destructive hover:bg-destructive/10":"text-muted-foreground hover:text-foreground"),title:L.status==="permission-denied"?r("chat.input.microphoneAccessDenied"):r("chat.input.voiceInput"),"aria-label":L.status==="permission-denied"?r("chat.input.microphoneAccessDenied"):r("chat.input.voiceInput"),children:n.jsx(Hn,{size:18})}),n.jsx(W,{type:Te?"button":"submit",onClick:q=>{Te&&(q.preventDefault(),q.stopPropagation(),u())},variant:Ee||Te?"default":"ghost",size:_?"sm":"icon",disabled:!Ee&&!Te,className:$(_?"h-8 px-3 transition-all @max-[479px]/chat-bottom:w-8 @max-[479px]/chat-bottom:px-0":"size-8 transition-all",!Ee&&!Te&&"bg-muted text-muted-foreground hover:bg-muted hover:text-muted-foreground cursor-not-allowed"),title:r(xe==="stop"?c?"chat.input.stopGenerating":"chat.input.cancelRun":_?"chat.input.startTask":"chat.input.sendMessageEnter"),"aria-label":r(xe==="stop"?c?"chat.input.stopGenerating":"chat.input.cancelRun":_?"chat.input.startTask":"chat.input.sendMessage"),children:Te?n.jsx(Gn,{size:20}):n.jsxs(n.Fragment,{children:[_&&n.jsx("span",{className:"hidden @[480px]/chat-bottom:inline",children:r("chat.input.startTask")}),n.jsx(qt,{size:20})]})})]})]})})]})},V),_&&o&&n.jsx("p",{className:"px-3 pt-3 text-left text-xs text-muted-foreground",children:r("chat.input.taskHint")}),e&&n.jsx(Li,{onClick:()=>{te("connections_banner_clicked",{source:"home_chat_input"}),te("connections_dialog_opened",{source:"home_banner",mode:"add"}),F(!0)}})]})}),n.jsx(Ko,{mode:"browse",open:O,onOpenChange:F,defaultTab:"all"}),n.jsx(Eo,{info:Q,onClose:Y})]})}export{pl as C,Vl as H,Xr as T,fl as V,Zo as a,ul as b,hl as c,ti as d,cl as e,Fe as f,dl as g,ui as s,Ss as u};
|
|
17
|
+
Current work status: ${JSON.stringify(this.status())}`,delivery:"context",contextId:"studio-history"}),this.timer=setInterval(()=>{o()&&this.flushAnnouncements()},100),this.expires=setTimeout(()=>{o()&&this.fail("disconnected")},Math.max(1,i.expiresAt-Date.now())),this.collectResults()}catch(r){o()&&this.fail(r instanceof DOMException&&r.name==="NotAllowedError"?"permission":"unavailable")}}toggleMute=()=>{const e=!this.state.muted;this.conversation?.setMicMuted(e),this.patch({muted:e})};fail(e){this.stop(),this.patch({phase:"error",error:e})}async revoke(e){await fetch(this.url,{method:"DELETE",credentials:"include",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:e}),keepalive:!0}).catch(()=>{})}stop=()=>{this.generation++,this.startupAbort?.abort(),this.startupAbort=void 0,this.userSpeaking=!1,clearTimeout(this.expires),clearInterval(this.timer);const e=this.conversation;this.conversation=void 0;const s=this.token;this.token=void 0,this.cleanup=Promise.allSettled([this.cleanup,e?.endSession(),s?this.revoke(s):void 0]).then(()=>{}),this.jobs.clear(),this.tasks.clear(),this.boardUpdates.clear(),this.announcements=[],this.lastContext="",this.lastWorkStatus="",this.utterance=0,this.seenUserEvents.clear(),this.approvalReported=!1,this.dispatchQueue=Promise.resolve(),this.patch({phase:"idle",error:null,working:!1})}}let Pe;const ht=P.createContext(null);function fl(t){const e=R.c(7),{children:s,layout:o}=t,{org:r}=Ce(),{taskId:i}=Ge(),a=ns();let l;e[0]!==a||e[1]!==o?(l=a?Wo({visibility:o,threadVisibilityExplicit:o.threadVisibilityExplicit})==="chat":o.threadOpen||!o.contentOpen,e[0]=a,e[1]=o,e[2]=l):l=e[2];const c=l,d=`${r.id}:${i??"new"}`;let u;return e[3]!==s||e[4]!==d||e[5]!==c?(u=n.jsx(ea,{visible:c,children:s},d),e[3]=s,e[4]=d,e[5]=c,e[6]=u):u=e[6],u}function ea(t){const e=R.c(35),{children:s,visible:o}=t,{org:r}=Ce(),{taskId:i,createTask:a,activeTask:l}=Ge(),d=_o("voice_mode")&&!l?.metadata?.read_only;let u;e[0]!==r.slug||e[1]!==i?(u=()=>new Xi(`/api/${encodeURIComponent(r.slug)}/threads/${encodeURIComponent(i??"")}/voice/sessions`,en()==="pt-BR"?"pt":"en"),e[0]=r.slug,e[1]=i,e[2]=u):u=e[2];const[V]=P.useState(u);let p,f;e[3]!==d||e[4]!==V||e[5]!==o?(p=()=>{(!d||!o)&&V.stop()},f=[V,d,o],e[3]=d,e[4]=V,e[5]=o,e[6]=p,e[7]=f):(p=e[6],f=e[7]),P.useLayoutEffect(p,f);let h;e[8]!==V?(h=()=>V.getSnapshot().phase!=="idle",e[8]=V,e[9]=h):h=e[9];const m=P.useSyncExternalStore(V.subscribe,h);let g;e[10]!==m||e[11]!==r.slug||e[12]!==V.taskDeleted||e[13]!==V.taskUpdated?(g={orgSlug:r.slug,enabled:m,onUpdate:V.taskUpdated,onDelete:V.taskDeleted},e[10]=m,e[11]=r.slug,e[12]=V.taskDeleted,e[13]=V.taskUpdated,e[14]=g):g=e[14],Yo(g);let x;e[15]!==d||e[16]!==r.id||e[17]!==V||e[18]!==i?(x=()=>w=>{if(d&&i&&Pe?.orgId===r.id&&Pe.threadId===i){const C=Pe.expires>Date.now();Pe=void 0,C&&V.start()}const S=()=>V.stop();return window.addEventListener("pagehide",S),()=>{window.removeEventListener("pagehide",S),V.stop()}},e[15]=d,e[16]=r.id,e[17]=V,e[18]=i,e[19]=x):x=e[19];const[v]=P.useState(x);let b;e[20]!==a||e[21]!==d||e[22]!==r.id||e[23]!==V||e[24]!==i?(b=()=>{if(d){if(!i){const w=a();Pe={orgId:r.id,threadId:w,expires:Date.now()+3e4};return}V.start()}},e[20]=a,e[21]=d,e[22]=r.id,e[23]=V,e[24]=i,e[25]=b):b=e[25];const j=b;let A;e[26]!==d||e[27]!==V||e[28]!==j?(A={session:V,enabled:d,start:j},e[26]=d,e[27]=V,e[28]=j,e[29]=A):A=e[29];let y;e[30]!==s?(y=n.jsx("div",{className:"contents",ref:v,children:s}),e[30]=s,e[31]=y):y=e[31];let k;return e[32]!==A||e[33]!==y?(k=n.jsx(ht,{value:A,children:y}),e[32]=A,e[33]=y,e[34]=k):k=e[34],k}function hl(t){const e=R.c(4),{children:s}=t,o=P.useContext(ht),r=$e();let i,a;return e[0]!==o||e[1]!==r?(i=()=>{o?.session.updateBindings(r,o.enabled)},a=[o,r],e[0]=o,e[1]=r,e[2]=i,e[3]=a):(i=e[2],a=e[3]),P.useLayoutEffect(i,a),s}function Ss(){const t=R.c(4),e=P.useContext(ht),s=P.useSyncExternalStore(e?.session.subscribe??ta,e?.session.getSnapshot??sa),o=s?.phase!==void 0&&s.phase!=="idle";let r;return t[0]!==e||t[1]!==s||t[2]!==o?(r={active:o,context:e,snapshot:s},t[0]=e,t[1]=s,t[2]=o,t[3]=r):r=t[3],r}const ta=()=>()=>{},sa=()=>null;function na(){const t=R.c(9),e=K(),{context:s}=Ss();if(!s?.enabled||!navigator.mediaDevices?.getUserMedia)return null;const o=s.start;let r;t[0]!==e?(r=e("chat.voice.start"),t[0]=e,t[1]=r):r=t[1];let i;t[2]!==e?(i=e("chat.voice.start"),t[2]=e,t[3]=i):i=t[3];let a;t[4]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsx(Go,{size:18}),t[4]=a):a=t[4];let l;return t[5]!==s.start||t[6]!==r||t[7]!==i?(l=n.jsx(W,{type:"button",variant:"ghost",size:"icon",className:"size-8 shrink-0",onClick:o,"aria-label":r,title:i,children:a}),t[5]=s.start,t[6]=r,t[7]=i,t[8]=l):l=t[8],l}function oa({session:t,phase:e,muted:s}){const[o]=P.useState(()=>r=>{if(!r||matchMedia("(prefers-reduced-motion: reduce)").matches)return;let i=0,a=requestAnimationFrame(function l(){const c=Math.min(1,t.outputVolume());i+=(c-i)*(c>i?.55:.12),r.style.setProperty("--voice-level",i.toFixed(3)),a=requestAnimationFrame(l)});return()=>cancelAnimationFrame(a)});return n.jsx("div",{ref:o,className:"studio-voice-orb","data-phase":e,"data-muted":s,"aria-hidden":"true"})}function ml(){const t=R.c(65),e=K(),{taskId:s}=Ge(),o=$e(),{context:r,snapshot:i,active:a}=Ss();if(!a||!r||!i)return null;const{session:l}=r;let c;t[0]!==i.error||t[1]!==i.muted||t[2]!==i.phase||t[3]!==e?(c=i.error?e(`chat.voice.${i.error}`):i.muted?e("chat.voice.muted"):e(`chat.voice.${i.phase}`),t[0]=i.error,t[1]=i.muted,t[2]=i.phase,t[3]=e,t[4]=c):c=t[4];const d=c;let u;t[5]!==e?(u=e("chat.voice.title"),t[5]=e,t[6]=u):u=t[6];let V;t[7]!==l||t[8]!==i.muted||t[9]!==i.phase?(V=n.jsx(oa,{session:l,phase:i.phase,muted:i.muted}),t[7]=l,t[8]=i.muted,t[9]=i.phase,t[10]=V):V=t[10];let p;t[11]!==d?(p=n.jsx("p",{role:"status",className:"max-w-sm text-center text-sm text-muted-foreground",children:d}),t[11]=d,t[12]=p):p=t[12];let f;t[13]!==i.working||t[14]!==e?(f=i.working&&n.jsx("p",{className:"text-center text-xs text-muted-foreground",children:e("chat.voice.backgroundWork")}),t[13]=i.working,t[14]=e,t[15]=f):f=t[15];let h;t[16]!==r.start||t[17]!==i.phase||t[18]!==e?(h=i.phase==="error"&&n.jsx(W,{variant:"outline",onClick:r.start,children:e("chat.voice.retry")}),t[16]=r.start,t[17]=i.phase,t[18]=e,t[19]=h):h=t[19];let m;t[20]!==V||t[21]!==p||t[22]!==f||t[23]!==h?(m=n.jsxs("div",{className:"flex min-h-0 flex-1 flex-col items-center justify-center gap-7 overflow-y-auto px-6 py-8",children:[V,p,f,h]}),t[20]=V,t[21]=p,t[22]=f,t[23]=h,t[24]=m):m=t[24];let g;t[25]===Symbol.for("react.memo_cache_sentinel")?(g=n.jsx(Ke,{inline:!0,voiceMode:!0}),t[25]=g):g=t[25];let x;t[26]!==s?(x=s&&n.jsx(As,{taskId:s}),t[26]=s,t[27]=x):x=t[27];let v;t[28]!==x?(v=n.jsxs("div",{className:"max-h-[55%] shrink-0 overflow-y-auto px-3",children:[g,x]}),t[28]=x,t[29]=v):v=t[29];const b=i.phase==="connecting"||i.phase==="error",j=i.muted?"chat.voice.unmute":"chat.voice.mute";let A;t[30]!==e||t[31]!==j?(A=e(j),t[30]=e,t[31]=j,t[32]=A):A=t[32];const y=i.muted?"chat.voice.unmute":"chat.voice.mute";let k;t[33]!==e||t[34]!==y?(k=e(y),t[33]=e,t[34]=y,t[35]=k):k=t[35];let w;t[36]!==i.muted?(w=i.muted?n.jsx(Jo,{size:18}):n.jsx(Zo,{size:18}),t[36]=i.muted,t[37]=w):w=t[37];let S;t[38]!==l.toggleMute||t[39]!==i.muted||t[40]!==b||t[41]!==A||t[42]!==k||t[43]!==w?(S=n.jsx(W,{variant:"outline",size:"icon",disabled:b,"aria-label":A,title:k,"aria-pressed":i.muted,onClick:l.toggleMute,children:w}),t[38]=l.toggleMute,t[39]=i.muted,t[40]=b,t[41]=A,t[42]=k,t[43]=w,t[44]=S):S=t[44];const C=l.stop;let N;t[45]===Symbol.for("react.memo_cache_sentinel")?(N=n.jsx(Ho,{size:16}),t[45]=N):N=t[45];let I;t[46]!==e?(I=e("chat.voice.backToChat"),t[46]=e,t[47]=I):I=t[47];let _;t[48]!==l.stop||t[49]!==I?(_=n.jsxs(W,{variant:"outline",onClick:C,children:[N,I]}),t[48]=l.stop,t[49]=I,t[50]=_):_=t[50];let E;t[51]!==o.isRunInProgress||t[52]!==o.isStreaming||t[53]!==o.stop||t[54]!==e?(E=(o.isStreaming||o.isRunInProgress)&&n.jsx(W,{variant:"outline",size:"icon","aria-label":e("chat.voice.stopWork"),title:e("chat.voice.stopWork"),onClick:o.stop,children:n.jsx(Xo,{size:16})}),t[51]=o.isRunInProgress,t[52]=o.isStreaming,t[53]=o.stop,t[54]=e,t[55]=E):E=t[55];let U;t[56]!==S||t[57]!==_||t[58]!==E?(U=n.jsxs("div",{className:"flex shrink-0 items-center justify-center gap-3 px-4 py-6",children:[S,_,E]}),t[56]=S,t[57]=_,t[58]=E,t[59]=U):U=t[59];let D;return t[60]!==u||t[61]!==U||t[62]!==m||t[63]!==v?(D=n.jsxs("section",{"aria-label":u,className:"absolute inset-0 flex min-h-0 flex-col bg-background",children:[m,v,U]}),t[60]=u,t[61]=U,t[62]=m,t[63]=v,t[64]=D):D=t[64],D}function ra(t){return t.hasDraft?"send":t.isStreaming||t.isRunInProgress?"stop":"disabled"}function st(t){const e=R.c(7),{message:s,icon:o}=t;let r;e[0]!==o?(r=o??n.jsx(Ft,{size:14,className:"shrink-0"}),e[0]=o,e[1]=r):r=e[1];const i=s??"";let a;e[2]!==i?(a=n.jsx("span",{className:"text-sm",children:i}),e[2]=i,e[3]=a):a=e[3];let l;return e[4]!==r||e[5]!==a?(l=n.jsxs("div",{className:"flex w-full items-center gap-2 px-3 py-2.5 rounded-xl border border-border bg-muted/40 text-muted-foreground",children:[r,a]}),e[4]=r,e[5]=a,e[6]=l):l=e[6],l}function ia(t,e,s){const o=R.c(7),{editor:r}=Ot(),i=K(),[a,l]=P.useState(!1),c=P.useRef(0);let d,u;return o[0]!==s||o[1]!==r||o[2]!==e||o[3]!==t||o[4]!==i?(d=()=>{const V=m=>{m.dataTransfer?.types.includes("Files")&&(m.preventDefault(),c.current=c.current+1,l(!0))},p=m=>{m.preventDefault(),c.current=Math.max(0,c.current-1),c.current===0&&l(!1)},f=aa,h=m=>{if(c.current=0,l(!1),m.defaultPrevented||(m.preventDefault(),s||!r||!t||!ft(t)))return;const g=m.dataTransfer?.files;if(!g||g.length===0)return;const x=Array.from(g);(async()=>{let v=r.state.selection.from;for(const b of x)await rs(r,t,b,v,e,i),v=r.state.selection.to})()};return window.addEventListener("dragenter",V),window.addEventListener("dragleave",p),window.addEventListener("dragover",f),window.addEventListener("drop",h),()=>{window.removeEventListener("dragenter",V),window.removeEventListener("dragleave",p),window.removeEventListener("dragover",f),window.removeEventListener("drop",h)}},u=[r,t,e,i,s],o[0]=s,o[1]=r,o[2]=e,o[3]=t,o[4]=i,o[5]=d,o[6]=u):(d=o[5],u=o[6]),P.useEffect(d,u),a}function aa(t){t.dataTransfer?.types.includes("Files")&&t.preventDefault()}function la(t){const e=R.c(14),{selectedModel:s}=t,o=K();let r,i,a;if(e[0]!==s||e[1]!==o){const{parts:d}=ko(s);e[5]===Symbol.for("react.memo_cache_sentinel")?(a=n.jsx(Xn,{size:24}),e[5]=a):a=e[5],r="text-sm font-medium";let u;e[6]!==o?(u=V=>o(V),e[6]=o,e[7]=u):u=e[7],i=o("chat.input.dropFilesHere",{fileTypes:d.map(u).join(", ")}),e[0]=s,e[1]=o,e[2]=r,e[3]=i,e[4]=a}else r=e[2],i=e[3],a=e[4];let l;e[8]!==r||e[9]!==i?(l=n.jsx("span",{className:r,children:i}),e[8]=r,e[9]=i,e[10]=l):l=e[10];let c;return e[11]!==a||e[12]!==l?(c=n.jsxs(n.Fragment,{children:[a,l]}),e[11]=a,e[12]=l,e[13]=c):c=e[13],c}function Va(){const t=R.c(5),e=K();let s;t[0]===Symbol.for("react.memo_cache_sentinel")?(s=n.jsx(Ft,{size:24}),t[0]=s):s=t[0];let o;t[1]!==e?(o=e("chat.input.modelCannotReadAttachments"),t[1]=e,t[2]=o):o=t[2];let r;return t[3]!==o?(r=n.jsxs(n.Fragment,{children:[s,n.jsx("span",{className:"text-sm font-medium",children:o})]}),t[3]=o,t[4]=r):r=t[4],r}function ca(t){const e=R.c(11),{selectedModel:s,onUnsupportedFile:o,disabled:r}=t,i=ia(s,o,r);let a;e[0]!==s?(a=ft(s),e[0]=s,e[1]=a):a=e[1];const l=a,c=i?"opacity-100":"opacity-0 pointer-events-none",d=l?"border-primary/40 text-primary/70":"border-destructive/30 text-destructive/70";let u;e[2]!==c||e[3]!==d?(u=$("absolute inset-0 z-20 rounded-xl flex flex-col items-center justify-center gap-2 bg-muted border-2 border-dashed transition-opacity",c,d),e[2]=c,e[3]=d,e[4]=u):u=e[4];let V;e[5]!==s||e[6]!==l?(V=l?n.jsx(la,{selectedModel:s}):n.jsx(Va,{}),e[5]=s,e[6]=l,e[7]=V):V=e[7];let p;return e[8]!==u||e[9]!==V?(p=n.jsx("div",{className:u,children:V}),e[8]=u,e[9]=V,e[10]=p):p=e[10],p}function Qe(t){const e=R.c(14),{onClick:s,label:o,icon:r,colorClass:i,maxWidthClass:a}=t;let l;e[0]!==i?(l=$("flex items-center gap-1.5 h-8 rounded-lg px-2.5 text-sm font-medium group min-w-0 shrink animate-in fade-in duration-200",i),e[0]=i,e[1]=l):l=e[1];let c;e[2]!==a?(c=$("min-w-0 truncate transition-[max-width,opacity] duration-200 ease-out max-w-0 opacity-0 @[320px]/chat-bottom:opacity-100",a),e[2]=a,e[3]=c):c=e[3];let d;e[4]!==o||e[5]!==c?(d=n.jsx("span",{className:c,children:o}),e[4]=o,e[5]=c,e[6]=d):d=e[6];let u;e[7]===Symbol.for("react.memo_cache_sentinel")?(u=n.jsx(at,{size:14,className:"shrink-0 hidden group-hover:block group-disabled:hidden"}),e[7]=u):u=e[7];let V;return e[8]!==r||e[9]!==o||e[10]!==s||e[11]!==l||e[12]!==d?(V=n.jsxs("button",{type:"button",onClick:s,title:o,"aria-label":o,className:l,children:[r,d,u]}),e[8]=r,e[9]=o,e[10]=s,e[11]=l,e[12]=d,e[13]=V):V=e[13],V}function da(){const t=lt(),{org:e,locator:s}=Ce(),{create:o}=Fn();return async({tiptapDoc:r,virtualMcp:i,taskIntake:a=!1})=>{const l=crypto.randomUUID(),c=i?.id??nt(e.id).id,d=a?void 0:"sandbox";_n(sessionStorage,s,l,{tiptapDoc:a&&r?fr(r):r}),zn(sessionStorage,s,l,{runtime:d});try{await o({id:l,virtual_mcp_id:c,...d?{runtime:d}:{}}),On(sessionStorage,s,l)}catch{}const u=mr(a);on(t,rn({org:e.slug,agentId:c,superAgentId:nt(e.id).id}),{search:()=>({...u,thread:l}),replace:!1})}}function gl({onOpenContextPanel:t,showConnectionsBanner:e=!1,homeTaskComposer:s=!1,taskHint:o=!0}){const r=K(),i=jn(),a=We(),l=i?.messages??[],c=i?.isStreaming??!1,d=i?.isRunInProgress??!1,u=i?.stop??(()=>{}),V=a?.taskId??"",p=V||Qn,f=da(),{selectedModel:h,selectedVirtualMcp:m,isModelsLoading:g,tiptapDocRef:x,imageModel:v,webSearchModel:b,deepResearchModel:j,chatMode:A,setChatMode:y}=He(),{data:k}=tn.useSession(),w=k?.user?.id,{org:S,locator:C}=Ce(),[N,I]=sn(nn.homeTaskMode(C),!0),_=s&&N,E=nt(S.id).id,U=Bt(m?.id),D=er(U?.id).runtime==="cms",T=js(Bo),[O,F]=P.useState(!1),{unsupportedFile:Q,onUnsupportedFile:z,clearUnsupportedFile:Y}=Ro(),L=Oi(),H=P.useRef(void 0),X=async()=>{H.current=ae;const q=await L.startRecording();te("chat_voice_started",{thread_id:V,outcome:q==="recording"?"started":q==="unsupported"?"unsupported":q==="permission-denied"?"permission_denied":"unknown"})},Z=()=>{te("chat_voice_confirmed",{thread_id:V});const q=L.stopRecording();ue.current?.syncVoiceText(H.current,q),ue.current?.focus()},ie=()=>{te("chat_voice_cancelled",{thread_id:V}),L.cancelRecording(),ue.current?.restoreContent(H.current)};P.useEffect(()=>{if(L.status!=="recording")return;const q=(L.transcript+(L.interimTranscript?" "+L.interimTranscript:"")).trim();ue.current?.syncVoiceText(H.current,q)},[L.transcript,L.interimTranscript,L.status]);const M=a?.activeTask??null,B=M?.created_by,J=!!(w&&B&&B!==w),{data:se}=qo({enabled:J}),ee=(se?.data?.members??[]).find(q=>q.userId===B),le=ee?.user?.name??ee?.user?.email?.split("@")[0]??null,G=kn(M?.harness_id),[ae,Ve]=P.useState(()=>yt(sessionStorage,C,p)??void 0),ce=q=>{Ve(q),x.current=q,qn(sessionStorage,C,p,q,{onQuotaExceeded:({docSizeBytes:ve})=>{te("chat_draft_quota_exceeded",{thread_id:V||null,doc_size_bytes:ve}),console.warn("[chat-draft] sessionStorage quota exceeded; draft not saved")}})},Ne=P.useRef(V);if(Ne.current!==V){Ne.current=V;const q=yt(sessionStorage,C,p)??void 0;Ve(q),x.current=q}const _e=[...l].reverse().find(q=>q.role==="assistant")?.metadata,qe=_e?.modelLimits?.contextWindow??(!_e?.models?.thinking||_e.models.thinking.id===h?.modelId?h?.limits?.contextWindow:void 0),ue=P.useRef(null),fe=P.useRef(!1),be=A==="plan",de=q=>{T(),te("chat_mode_changed",{from_mode:q,to_mode:"default",source:"pill_dismiss"}),y("default")};P.useEffect(()=>{const q=ve=>{In(ve)&&ve.code==="KeyL"&&(ve.preventDefault(),ve.shiftKey&&y(A==="plan"?"default":"plan"),ue.current?.focus())};return document.addEventListener("keydown",q),()=>document.removeEventListener("keydown",q)},[A,y]);const Ae=wn(l),he=[...l].reverse().find(q=>q.role==="assistant"&&q.metadata?.usage)?.metadata?.usage?.contextTokens??0,Me=Be("chat"),De=po(),[Re,me]=P.useState(!1),[Ie,ne]=P.useState(!1),ge=!g&&!Bn(ae),xe=ra({hasDraft:ge,isStreaming:c,isRunInProgress:d}),Ee=xe==="send",Te=xe==="stop",mt=q=>{if(q?.preventDefault(),!Me){me(!0);return}if(De){ne(!0);return}if(xe==="send"&&ae){if(te("chat_message_sent",{thread_id:V||null,mode:A,model_id:h?.modelId??null,model_provider:h?.providerId??null,virtual_mcp_id:m?.id??null,submission:q?"button_or_enter":"programmatic"}),i){if(i.isSendInFlight()){Le.info(r("chat.input.stillSendingPreviousMessage"));return}i.sendMessage(ae)}else _&&te("task_report_submitted",{source:"home"}),f({tiptapDoc:ae,virtualMcp:_?null:m,taskIntake:_});Kn(sessionStorage,C,p),ce(void 0)}else xe==="stop"&&(te("chat_message_stopped",{thread_id:V}),u())};if(J)return n.jsx(st,{message:le?r("chat.input.readOnlyOthersChatNamed",{name:le}):r("chat.input.readOnlyOthersChat"),icon:le?n.jsx(Ko,{shape:"circle",size:"2xs",url:ee?.user?.image??void 0,fallback:le.slice(0,2).toUpperCase()}):void 0});if(M?.metadata?.read_only)return n.jsx(st,{message:r("chat.input.readOnlyThread")});if(G)return n.jsx(st,{message:r("chat.input.codingAgentUnavailable")});if(D&&a){const q=()=>{const ve=a.createTask({runtime:"sandbox"});te("coding_session_started",{thread_id:ve})};return n.jsxs("button",{type:"button",onClick:q,className:"group flex w-full items-center gap-3 rounded-2xl border border-border bg-background/60 px-4 py-3.5 text-left shadow-sm backdrop-blur-sm transition-colors hover:bg-background/90 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:[n.jsx(Hn,{size:18,className:"shrink-0 text-muted-foreground"}),n.jsxs("span",{className:"flex min-w-0 flex-1 flex-col",children:[n.jsx("span",{className:"text-sm font-medium text-foreground",children:r("chat.fastPreview.startCodingSession")}),n.jsx("span",{className:"text-xs text-muted-foreground",children:r("chat.fastPreview.chatNeedsSession")})]}),n.jsx(Kt,{size:16,className:"shrink-0 text-muted-foreground transition-transform group-hover:translate-x-0.5"})]})}return n.jsxs(n.Fragment,{children:[Re&&n.jsx(St,{feature:"chat",onDismiss:()=>me(!1)}),Ie&&n.jsx(St,{feature:"chat",copy:{title:r("chat.input.allowanceExhaustedTitle")},onDismiss:()=>ne(!1)}),n.jsx("div",{className:"flex flex-col w-full justify-end text-left",children:n.jsxs("div",{className:"relative rounded-2xl w-full flex flex-col",children:[e&&n.jsx("div",{className:"absolute inset-0 rounded-2xl pointer-events-none bg-muted/50"}),i&&a&&n.jsx(Ke,{}),i&&a&&V?n.jsx(As,{taskId:V}):null,n.jsx(Eo,{tiptapDoc:ae,setTiptapDoc:ce,disabled:L.status==="recording",enterToSubmit:!0,placeholder:r(_?"chat.input.taskPlaceholder":"chat.input.placeholder"),onSubmit:mt,suggestionOpenRef:fe,children:n.jsxs("form",{onSubmit:mt,className:$("w-full relative rounded-2xl min-h-[110px] md:min-h-[130px] flex flex-col bg-card dark:bg-muted card-shadow overflow-hidden"),children:[n.jsx(ca,{selectedModel:h,onUnsupportedFile:z,disabled:L.status==="recording"}),n.jsx(hr,{}),n.jsx("div",{className:"group/input relative flex flex-col gap-2 flex-1",children:n.jsx(Po,{ref:ue,disabled:L.status==="recording",virtualMcpId:m?.id??E,showFileUploader:!0,selectedModel:h,onUnsupportedFile:z,suggestionOpenRef:fe})}),n.jsx("div",{className:"@container/chat-bottom flex items-center justify-between p-2.5 gap-1",children:L.status==="recording"?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"flex-1"}),n.jsxs("div",{className:"flex items-center gap-1.5 shrink-0",children:[n.jsx(qi,{data:L.waveformData.slice(0,28)}),n.jsx("button",{type:"button",onClick:ie,className:"flex items-center justify-center size-8 rounded-lg hover:bg-muted text-muted-foreground hover:text-foreground transition-colors","aria-label":r("chat.input.cancelRecording"),children:n.jsx(at,{size:16})}),n.jsx("button",{type:"button",onClick:Z,className:"flex items-center justify-center size-8 rounded-lg bg-foreground text-background hover:opacity-80 transition-opacity","aria-label":r("chat.input.useTranscription"),children:n.jsx(Vt,{size:16})})]})]}):n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"flex items-center gap-1.5 min-w-0",children:[s&&n.jsx(W,{type:"button",size:"sm",variant:N?"secondary":"ghost","aria-pressed":N,onClick:()=>I(!N),className:"h-8",children:r("chat.input.taskMode")}),n.jsx(Pi,{disabled:!1,onOpenConnections:()=>{te("connections_dialog_opened",{source:"tools_popover",mode:"add"}),F(!0)},virtualMcpId:m?.id??E,selectedModel:h,isStreaming:c,onUnsupportedFile:z}),be&&n.jsx(Qe,{onClick:()=>de("plan"),label:r("chat.input.planMode"),icon:n.jsx(Qt,{size:14,className:"shrink-0"}),colorClass:"text-violet-600 dark:text-violet-400 hover:bg-violet-500/10",maxWidthClass:"@[320px]/chat-bottom:max-w-32"}),A==="gen-image"&&v&&n.jsx(Qe,{onClick:()=>de("gen-image"),label:r("chat.input.createImage"),icon:n.jsx(Jt,{size:14,className:"shrink-0"}),colorClass:"text-pink-600 dark:text-pink-400 hover:bg-pink-500/10 disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:bg-transparent",maxWidthClass:"@[320px]/chat-bottom:max-w-[120px]"}),A==="web-search"&&b&&n.jsx(Qe,{onClick:()=>de("web-search"),label:r("chat.input.webSearch"),icon:n.jsx(Gt,{size:14,className:"shrink-0"}),colorClass:"text-blue-600 dark:text-blue-400 hover:bg-blue-500/10 disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:bg-transparent",maxWidthClass:"@[320px]/chat-bottom:max-w-[120px]"}),A==="deep-research"&&j&&n.jsx(Qe,{onClick:()=>de("deep-research"),label:r("chat.input.deepResearch"),icon:n.jsx(Ht,{size:14,className:"shrink-0"}),colorClass:"text-blue-600 dark:text-blue-400 hover:bg-blue-500/10 disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:bg-transparent",maxWidthClass:"@[320px]/chat-bottom:max-w-[120px]"}),qe&&he>0&&n.jsx(dn,{usage:Ae,totalTokens:he,contextWindow:qe,onOpenContextPanel:t})]}),n.jsxs("div",{className:"flex items-center gap-1.5 min-w-0",children:[n.jsx(Ii,{}),n.jsx(na,{}),L.isSupported&&n.jsx(W,{type:"button",onClick:X,disabled:!1,variant:"ghost",size:"icon",className:$("size-8 transition-colors",L.status==="permission-denied"?"text-destructive hover:text-destructive hover:bg-destructive/10":"text-muted-foreground hover:text-foreground"),title:L.status==="permission-denied"?r("chat.input.microphoneAccessDenied"):r("chat.input.voiceInput"),"aria-label":L.status==="permission-denied"?r("chat.input.microphoneAccessDenied"):r("chat.input.voiceInput"),children:n.jsx(Zn,{size:18})}),n.jsx(W,{type:Te?"button":"submit",onClick:q=>{Te&&(q.preventDefault(),q.stopPropagation(),u())},variant:Ee||Te?"default":"ghost",size:_?"sm":"icon",disabled:!Ee&&!Te,className:$(_?"h-8 px-3 transition-all @max-[479px]/chat-bottom:w-8 @max-[479px]/chat-bottom:px-0":"size-8 transition-all",!Ee&&!Te&&"bg-muted text-muted-foreground hover:bg-muted hover:text-muted-foreground cursor-not-allowed"),title:r(xe==="stop"?c?"chat.input.stopGenerating":"chat.input.cancelRun":_?"chat.input.startTask":"chat.input.sendMessageEnter"),"aria-label":r(xe==="stop"?c?"chat.input.stopGenerating":"chat.input.cancelRun":_?"chat.input.startTask":"chat.input.sendMessage"),children:Te?n.jsx(Jn,{size:20}):n.jsxs(n.Fragment,{children:[_&&n.jsx("span",{className:"hidden @[480px]/chat-bottom:inline",children:r("chat.input.startTask")}),n.jsx(qt,{size:20})]})})]})]})})]})},V),_&&o&&n.jsx("p",{className:"px-3 pt-3 text-left text-xs text-muted-foreground",children:r("chat.input.taskHint")}),e&&n.jsx(zi,{onClick:()=>{te("connections_banner_clicked",{source:"home_chat_input"}),te("connections_dialog_opened",{source:"home_banner",mode:"add"}),F(!0)}})]})}),n.jsx(Qo,{mode:"browse",open:O,onOpenChange:F,defaultTab:"all"}),n.jsx(Uo,{info:Q,onClose:Y})]})}export{hl as C,dl as H,ti as T,ml as V,er as a,fl as b,gl as c,ni as d,ul as e,Fe as f,pl as g,fi as s,Ss as u};
|